LLVM-basierte Delphi-Compiler
Nach oben zu Delphi-Toolkette
Der neueste Zweig von Delphi-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 Delphi-Compiler sind DCCIOSARM (32-Bit-iOS), DCCIOSARM64 (64-Bit-iOS), DCCAARM (Android) und DCCLINUX64 (Linux).
- Hinweis: DCCLINUX64 verwendet standardmäßig auf eins basierte anstatt nullbasierte Strings (NEXTGEN), um die Kompatibilität mit DCC64 sicherzustellen. Mit
{$ZEROBASEDSTRINGS ON/OFF}
können Sie dies ändern.
Neue Sprachfunktionen in LLVM-basierten Delphi-Compilern
Durch die LLVM-basierten Delphi-Compiler wurden in die Delphi-Sprache wichtige neue Funktionen eingeführt.
Die wichtigsten Sprachunterschiede zwischen den LLVM-basierten Delphi-Compilern und den anderen Delphi-Compilern sind folgende:
- Die automatische Referenzzählung (ARC) für Klassen wird von den LLVM-basierten Delphi-Compilern unterstützt.
- Hinweis: Alle Delphi-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 Delphi-Compilern unveränderlich (konstant).
- Die folgenden String-Typen werden von den LLVM-basierten Delphi-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 Delphi-Compilern NICHT unterstützt.
Weitere Informationen über das Schreiben von Code für LLVM-basierte Delphi-Compiler finden Sie unter Migrieren von Delphi-Code zu mobilen Anwendungen vom Desktop aus.