LLVM ベースの Delphi コンパイラ

提供: RAD Studio
移動先: 案内検索

Delphi ツールチェーン への移動


"次世代コンパイラ" とも呼ばれる、Delphi コンパイラの最新の分派は、コンパイラ フロントエンドのゼロからの実装をベースにしており、コンパイラ バックエンドとしての LLVM に関連付けられています。

LLVM ベース Delphi コンパイラは、DCCIOSARM(32 ビット iOS)、DCCIOSARM64(64 ビット iOS)、DCCAARM(Android)、DCCLINUX64(Linux)

メモ: DCCLINUX64 は、0 始まりの文字列 (NEXTGEN) の変わりに、デフォルトで 1 始まりの文字列を使用します。これは DCC64 との互換性を確実なものとするためです。これは、{$ZEROBASEDSTRINGS ON/OFF} で変更することができます。

LLVM ベースの Delphi コンパイラの新しい言語機能

LLVM ベースの Delphi コンパイラには、Delphi 言語の重要な新機能がいくつか導入されています。

LLVM ベースの Delphi コンパイラとその他の Delphi コンパイラの言語面での主要な違いは次のとおりです。

  • LLVM ベースの Delphi コンパイラでは、クラスの自動参照カウント(ARC)をサポートしています。
    メモ: すべての Delphi コンパイラ(LLVM ベースおよび非 LLVM ベース)では、インターフェイスと動的配列の ARC をサポートしています。
  • LLVM ベースの Delphi コンパイラでは、文字列はインデックスが(1 ではなく)0 から始まるほか、不変(一定)です。
  • LLVM ベースの Delphi コンパイラでは、次の文字列型はサポートされていません(デフォルトの文字列型である UnicodeString はサポートされています)。
    • WideString
    • AnsiString および ShortString
    • AnsiChar
    • PAnsiChar および PWideChar
    • OpenString
  • LLVM ベースの Delphi コンパイラでは、ポインタの使用はサポートされていません。

LLVM ベースの Delphi コンパイラに対応するコードの作成の詳細については、「デスクトップ アプリケーションからモバイル アプリケーションへの Delphi コードの移行」を参照してください。

関連トピック

関連項目