Merged trunk at revision 161680 into branch.
[official-gcc.git] / gcc / testsuite / g++.dg / ext / attr-alias-1.C
blob1427267e5173954bf8410aeef5d21edc4aba09c4
1 /* { dg-do run }  */
2 /* { dg-require-alias "" } */
4 #include <typeinfo>
6 struct Klass
8   int implementation () const;
9   int magic () const;
12 int Klass::implementation (void) const
14   return 0;
17 int Klass::magic () const
18   __attribute__ ((alias ("_ZNK5Klass14implementationEv")));
20 int __attribute__ ((noinline))
21   Foo (Klass const *ptr)
23   if (ptr->magic () != 0)
24     return 1;
26   if (typeid (*ptr) != typeid (Klass))
27     return 2;
29   return 0;
32 int main ()
34   Klass obj;
35   
36   return Foo (&obj);