C++ - error: expected `,' or `...' before '||' token

Hallo,

beim Kompilieren eines Programms, welches bisher mit einem gcc 2.95.x erstellt wurde, kommt es beim Einsatz eines gcc 3.x zu folgenden Fehlern:

Code:
In file included from src/file2.h:27,
                 from src/file1.cpp:8:
src/file3.h:908: error: expected `,' or `...' before '||' token
src/file3.h:1043: error: expected `,' or `...' before '||' token
src/file3.h:1062: error: expected `,' or `...' before '||' token
src/file3.h:1081: error: expected `,' or `...' before '||' token

Und davon jeweils noch einige Zeilen mehr ...

Das für mich (und andere) unverständliche ist, dass es || nicht in den jeweils angegebenen Zeilen gibt, ja, manchmal sogar nicht in der gesamten Datei. Von daher ist mir das Problem unverständlich. Aber vielleicht kann es jemand erklären?

Z.

PS: hab es bereits mit gcc 3.3.2, 3.3.4 und 3.4.1 auf unterschiedlichen Rechnern probiert.
 
Zeig doch mal die betroffenen Codezeilen. Soviel ich weis gibts da etliche inkompatibilitäten zwischen 2er und 3er gcc Versionen. Schau mal hier
 
Ich fürchte aus rechtlichen Gründen kann ich nicht beliebig große Codeschnippsel kopieren, auch bin ich nicht so fit in C++ wie die Programmierer bei uns. Bin "nur" für die Wartung zuständig und schaue mich eher nebenbei nach möglichen Updates um. Die Zeile 908 vom obigen Fehlertext sieht so aus:

Code:
bool              _makethis( gruppe *or, artikel *el, FILE *output, char *varname, int wuid );

Innerhalb dieser Datei gibt es nicht ein einziges Mal || - gleiches gilt für andere Dateien in denen dieser Fehler auftritt.

Ich sehe gerade nur 2 Möglichkeiten:

- gcc 2.96 auf dem neuen System parallel zum neueren gcc installieren (geht, hab das bei mir gerade probiert)
- den kompletten Code überarbeiten um ihn gcc 3.x-kompatibel zu machen (würde nicht ich machen und enorm viel Zeit kosten, die wir gerade nicht haben - außerdem müsste man die Ursache für obigen Fehler kennen ... )
 
@lagalopex

Danke für den Hinweis. War kurz vor deinem Beitrag auch schon drauf gestoßen. Inzwischen werden von den ursprünglichen Fehlern nur noch 50% ausgegeben. Der Rest sollte auch noch möglich sein. Danke für die Hilfe.
 
Zurück
Oben