2 // GROUPS passed error-reporting
3 // Special g++ Options: -Wreturn-type
5 // DR 295 allows qualification via typedef
12 template <int (*F) (int)>
21 operator int () { return a; }
24 extern "C" int atoi (char *);
26 int (*fee)(char *) = atoi;
27 int (**bar)(char *) = &fee;
33 int foo (int a = (**bar) (s))
35 return doowop<foo>::bar; // ERROR - not a member
38 int foo2 (int (*a)(int) = &foo)
40 undef4 (1); // ERROR - implicit declaration
45 class Y{}; // ERROR - private
48 typedef int const * bart ();
49 //The following is DR295 dependant
50 typedef bart const * const * bar2; // ERROR - constifying qualifiers
51 typedef bart volatile * const * bar2v; // ERROR - qualifiers
54 { // ERROR - in this context
55 X::Y f; // ERROR - in this context
58 undef2 (1); // ERROR - implicit declaration
65 static int ninny2 () { return badoo<'\001'>::foo; } // ERROR - not a member
73 undef3 (1); // ERROR - implicit declaration