LLVM-basierte Object Pascal-Compiler

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Object Pascal-Toolkette


Der neueste Zweig von Object Pascal-Compilern, auch als "nächste Generation" bezeichnet, beruht auf einer von Grund auf neuen Implementierung eines Compiler-Frontends, das an LLVM als dem Compiler-Backend gebunden ist.

LLVM-basierte Object Pascal-Compiler sind DCCIOSARM (32-Bit-iOS), DCCIOSARM64 (64-Bit-iOS) und DCCAARM (Android).

Neue Sprachfunktionen in LLVM-basierten Object Pascal-Compilern

Durch die LLVM-basierten Object Pascal-Compiler wurden in die Object Pascal-Sprache wichtige neue Funktionen eingeführt.

Die wichtigsten Sprachunterschiede zwischen den LLVM-basierten Object Pascal-Compilern und den anderen Object Pascal-Compilern sind folgende:

  • Die automatische Referenzzählung (ARC) für Klassen wird von den LLVM-basierten Object Pascal-Compilern unterstützt.
    Hinweis: Alle Object Pascal-Compiler (auf LLVM basierend oder nicht) unterstützen ARC für Interfaces und dynamische Arrays.
  • Strings sind 0-basiert (anstatt 1-basiert) und werden wahrscheinlich in LLVM-basierten Object Pascal-Compilern unveränderlich (konstant).
  • Die folgenden String-Typen werden von den LLVM-basierten Object Pascal-Compilern NICHT unterstützt (aber sie unterstützen UnicodeString, den Standard-String-Typ):
    • WideString
    • AnsiString und ShortString
    • AnsiChar
    • PAnsiChar und PWideChar
    • OpenString
  • Zeiger werden von den LLVM-basierten Object Pascal-Compilern NICHT unterstützt.

Weitere Informationen über das Schreiben von Code für LLVM-basierte Object Pascal-Compiler finden Sie unter Migrieren von Object Pascal-Code zu mobilen Anwendungen vom Desktop aus.

Themen

Siehe auch