// { dg-do assemble } struct test_box { void print(void); }; void test (test_box *); // { dg-error "" } illegal code class test_square { friend void test (test_box *); // { dg-error "" } does not match } // { dg-error "after class definition" } template void test(BOX *the_box) {x // { dg-error "not declared in this scope" } the_box->print(); } template void test<> (test_box *);