Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#13

AW: Delphi und FPC compiler problem

  Alt 15. Aug 2022, 15:02
Für mich schaut das nicht wirklich nach einem Bug aus, sondern ist vermutlich "As Designed".
Ein Bug ist es ja dennoch.
Man macht ja extra ein IF/IFDEF drumrum, damit der Teil darin nicht beachtet wird, wenn man schon weiß, dass es das nicht gibt.

Wenn der Compiler/Parser nun dennoch da rein sieht, dann ist es sein Problem.

Wenn er es sich dennoch ansehen will/muß, und er von einem vorherrigen IF/IFDEF bereits weiß, dass der Teil garnicht benutzt wird, dann sollte er zumindestens die "Prüfbedingungung" bis zum abschließenden } ignorieren.



Ich vermute es geht darauf hinaus, seitdem Delphi IFEND und ENDIF als "gleich" betrachtet, bzw. krankhaft zwanghaft versucht ALLES auf Eines umzubiegen,
und seitdem auch die Dinge drinen parsen muß, um das "richtige" Ende zu finden.

Früher war es einfach, alles vom IFDEF bis zum "nächsten" ENDIF oder ELSE und IF/IFEND wurde ignoriert.
Ging ja ursprünglich auch nicht anders, weil damals die "alten" Compiler $IF noch garnicht kannten.
Delphi-Quellcode:
{$IFDEF ConditionalDefines}
  {$IF ...}

  {$IFEND}
{$ENDIF}
$2B or not $2B

Geändert von himitsu (15. Aug 2022 um 15:10 Uhr)
  Mit Zitat antworten Zitat