http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45942
--- Comment #11 from Michiel <MichieldeB at aim dot com> 2010-10-08 16:09:33 UTC --- C++ is designed to give an error message which is syntactically correct, but semantically incorrect. I thought that the template prechecker (preprocessor or whatever, do not correct me this time) counted template arguments in friend declarations, but now it seems it does not, sorry.