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)11 A &f(A &a) {// { dg-error "new declaration" }
12   std::cout << "Blah\n";
13 } // { dg-warning "no return statement" }
14