error: extra qualification ... on member ...

Das Problem

Folgende Fehlermeldung spuckte mein GCC 4.1 heute aus:

<file.h>: error: extra qualification '<Namespace::Class>::' on member '<Memberfunction>'
Da ich bei google hierauf zunächst keine Lösung fand was mir diese Fehlermeldung zu sagen h#tte, trage ich sie hier in meine Sammlung unverständlicher GCC-Fehlermeldung ein.

Der Fehler

Der Fehler ist verleichsweise einfach:
Die Deklaration der Memberfunction innerhalb der Class enthält einen Namensraum. Dies kann zum Beispiel geschehen, wenn man die Funktionskopf nach der Definition im .cpp-File in die Klassendeklaration kopiert wird und man dabei eben vergisst den Namensraum der Klasse zu entfernen. Das haben ältere GCC-Versionen geschluckt, aber nun wird er - zu Recht - pingelig.

Also folgendes:

class Klasse
{
void Klasse::Funktion( void );
}

einfach wie folgt korrigieren:

class Klasse
{
void Funktion( void );
}