1 // { dg-do assemble } 2 // { dg-options "-Wreturn-type" } 3 // GROUPS passed old-abort 4 #include <iostream> 5 6 class A { 7 public: 8 friend A f(A &a);// { dg-message "old declaration" } 9 }; 10 f(A & a)11A &f(A &a) {// { dg-error "new declaration" } 12 std::cout << "Blah\n"; 13 } // { dg-warning "no return statement" } 14