struct S { friend void f(); }; void g() { f(); }
このコードがエラーになったらびっくりしませんか?