Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Compiler Error Datei codegen.cpp Zeile 4135 Kategorie: Pro-Bot128 (von PeterS - 13.04.2011 19:49)
Als Antwort auf Re: Compiler Error Datei codegen.cpp Zeile 4135 von Jo - 13.04.2011 13:41

> > > > > Hallo,
> > > > > wenn ich unten aufgeführten Code compile, bekomme ich folgende Fehlermeldung:
> > > > >
> > > > > Ã?bersetze Projekt Test_2
> > > > > C-Control Pro Compiler (C) 2011  Conrad Electronic
> > > > > Durchlaufe Pass 1
> > > > > Durchlaufe Pass 2
> > > > > Interner Compiler Fehler Argument zu klein für DROP, in Datei codegen.cpp  Zeile:4135
> > > > > ein Fehler - Kompilation abgebrochen.
> > > > > Schreibe Symboldaten - 8971 bytes..
> > > > >
> > > > > ////////////////////////   file: test_2.cc
> > > > >
> > > > > #define ABS(N) ( ( (N) < 0 ) ? -(N) : (N) )
> > > > >
> > > > > void main(void)
> > > > > {
> > > > >   int a, b, x, y;
> > > > >
> > > > >   a =  22;
> > > > >   b = -33;
> > > > >
> > > > >   x = ABS(a);
> > > > >   y = ABS(b);
> > > > >
> > > > > //  if ( x <= y)                           // so geht's
> > > > >   if ( ABS(a) <= ABS(b) )            // so geht's nicht
> > > > >   {
> > > > >     Msg_WriteText("mmmmmmmmmmmmm");
> > > > >     Msg_WriteChar(13);
> > > > >   }
> > > > > }
> > > > >
> > > > >    Gruss
> > > > >   Hans
> > > >
> > > > Ja, das scheint ein kleiner glitch zu sein. Der Compiler bekommt ein Problem mit den
> > > > Klammerebenen. Die folgende Definition scheint zu funktionieren:
> > > >
> > > > #define ABS(N)  ((N) < 0 ) ? -(N) : (N)
> > > >
> > > > Ich werde das mit der nächsten Version (ca. Juli) beheben.
> > > >
> > > > Gruss Peter
> > >
> > > Hallo Peter,
> > > in der Hilfe von 2.13.0.15 steht: "....Allerdings sind nur die hier beschriebenen Funktionen,
> > > auch im Zusammenspiel mit dem C-Control Pro Compiler, ausführlich getestet.
> > > Ein Benutzen der hier undokumentierten Funktionen geschieht auf eigene Gefahr!..."
> > >
> > > Die "? :" - Konstrukte sind nicht beschrieben also nicht Bestandteil, deine Antwort verstehe
> > > ich aber so, dass diese doch unterstützt werden. Was ist richtig? Gibt es weitere Precompiler
> > > Konstrukte die unterstützt werden?
> > > Viele Grü�e
> > > Jo
> > >
> > >
> > "? :" ist kein Precompiler sondern ein Compiler Feature, da es zur Laufzeit evaluiert wird.
> >
> > Gruss Peter
> >
> Hallo Peter
> Danke für die schnelle Antwort,
> da hat das #define mich wohl geblendet und alles C-Wissen verdrängt.
> Ich habe in der Hilfe gesucht, aber nichts zu ?: gefunden ???

Unter Kontrollstrukturen -> bedingte Bewertung

> Viele Grü�e
> Jo


    Antwort schreiben


Antworten: