// { dg-do run } // GROUPS passed groff /* This should compile properly with the new overloading scheme. */ extern "C" int printf (const char *, ...); extern "C" void exit (int); int win = 0; class symbol { public: symbol(const char *p, int how = 0) {} symbol() {} }; class dictionary { public: void lookup(symbol s, void *v=0) { win = 1; } void lookup(const char *) {} }; int main() { char buf[2048]; dictionary exceptions; unsigned char *tem = new unsigned char[19 + 1]; exceptions.lookup (symbol (buf), tem); printf (win ? "PASS\n" : "FAIL\n"); exit (! win); }