// Build don't link: // GROUPS passed error-reporting template class badoo { }; template class doowop { }; struct A { int a; ~A () { a = 0; } operator int () { return a; } }; extern "C" int atoi (char *); int (*fee)(char *) = atoi; int (**bar)(char *) = &fee; char *s = "4"; char **sp = &s; char ***spp = &sp; int foo (int a = (**bar) (s)) { return doowop::bar; // ERROR - not a member } // ERROR - non-void int foo2 (int (*a)(int) = &foo) { undef4 (1); // ERROR - implicit declaration return 1; } class X{ class Y{}; }; typedef int const * bart (); typedef bart const * const * bar2; bar2 baz (X::Y y) { X::Y f; bar2 wa [5]; wa[0] = baz(f); undef2 (1); // ERROR - implicit declaration } // ERROR - non-void int ninny () { struct A { static int ninny2 () { return badoo<'\001'>::foo; } // ERROR - not a member }; return A::ninny2(); } int darg (char X::*p) { undef3 (1); // ERROR - implicit declaration } // ERROR - non-void