Share via


/langversion (準拠構文) (C# コンパイラ オプション)

更新 : 2007 年 11 月

コンパイラが、ISO/IEC 23270:2003 C# の言語仕様に含まれている構文のみを受け入れるようにします。

/langversion:option

引数

  • option
    option が ISO-1 の場合、コンパイラは ISO/IEC 23270:2003 C# の言語仕様に含まれていない構文に対してエラーを生成します。

    option が ISO-2 の場合、コンパイラは ISO/IEC 23270:2006 C# の言語仕様に含まれていない構文に対してエラーを生成します。

    option が default の場合、コンパイラは有効なすべての構文を受け入れます。既定値は /langversion:default です。

解説

C# 仕様のバージョン 1.0 は、/langversion:ISO-1 で利用できる機能を表しています。Visual Studio Developer Center には、すべての仕様が Microsoft Word ファイルとして登録されています。ISO/IEC 23270:2006 の仕様は、http://standards.iso.org/ittf/PubliclyAvailableStandards/c042926_ISO_IEC_23270_2006(E).zip で入手できます。

C# アプリケーションによって参照されるメタデータは、/langversion コンパイラ オプションの影響を受けません。

C# コンパイラの各バージョンには言語仕様の拡張機能が含まれているため、/langversion は、コンパイラの以前のバージョンと同等の機能を提供しません。

どの /langversion 設定を使用する場合でも、.exe や .dll を作成するには、共通言語ランタイムの現在のバージョンを使用します。ただし、/langversion:ISO-1 に従って動作するフレンド アセンブリと /moduleassemblyname (モジュールに対するフレンド アセンブリの指定) (C# コンパイラ オプション) は例外です。

Visual Studio 開発環境でこのコンパイラ オプションを設定するには

  1. プロジェクトの [プロパティ] ページを開きます。詳細については、「方法 : ビルドのプロパティを設定する (C#)」を参照してください。

  2. [ビルド] プロパティ ページをクリックします。

  3. [詳細] をクリックします。

  4. [言語バージョン] プロパティを変更します。

このコンパイラ オプションをプログラムで設定する方法については、「LanguageVersion」を参照してください。

参照

その他の技術情報

C# コンパイラ オプション

プロジェクト プロパティ (Visual Studio)