Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Fallunterscheidung FPC oder Delphi


Delete - Mo 17.04.17 10:50
Titel: Fallunterscheidung FPC oder Delphi
- Nachträglich durch die Entwickler-Ecke gelöscht -


jaenicke - Mo 17.04.17 12:13

Du musst vermutlich {$ENDIF} statt {$IFEND} benutzen.


Delete - Mo 17.04.17 17:31

- Nachträglich durch die Entwickler-Ecke gelöscht -


jaenicke - Di 18.04.17 06:10

In der Dokumentation steht das auch. Leider ist Free Pascal an der Stelle nicht kompatibel mit Delphi:
http://www.freepascal.org/docs-html/prog/progsu14.html#x21-200001.2.14
http://docwiki.embarcadero.com/RADStudio/Tokyo/de/ELSEIF_(Delphi)


Delete - Di 18.04.17 06:22

- Nachträglich durch die Entwickler-Ecke gelöscht -


Martok - So 30.04.17 13:02

Im Mode ObjFPC darfst du IFDEF/ENDIF und IF/ELSEIF/IFEND nicht mischen. In Lazarus siehst du das im Gegensatz zu Delphi sogar: der Highlighter umrahmt dir die IFs, die zusammengehören.

Die einfachste Lösung dürfte es sein, für alles IF zu nehmen:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
{$IF defined(FPC) }
  // Lazarus ... Unit nutzen
{$ELSEIF DELPHI6_UP}
  // Delphi ... > D5 Unit nutzen
{$ELSE}
  // Delphi ... <= D5 Unit nutzen
{$IFEND}


Delete - So 30.04.17 13:17

- Nachträglich durch die Entwickler-Ecke gelöscht -