The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

/langversion (Conformant Syntax) (C# Compiler Options) 

Causes the compiler to only accept syntax that is included in the ISO/IEC 23270:2003 C# language specification.



If option is ISO-1 the compiler will give an error for any syntax that is not in the ISO/IEC 23270:2003 C# language specification. If option is default the compiler will accept all valid language syntax. /langversion:default is the default.

Version 1.0 of the C# specification represents the functionality available with /langversion:ISO-1. contains all specifications as Microsoft Word files.

Metadata referenced by your C# application is not subject to /langversion compiler option.

Each version of the C# compiler contains extensions to the language specification, so /langversion does not give you the equivalent functionality of a previous version of the compiler.

Regardless of which /langversion setting you use, you will use the current version of the common language runtime to create your .exe or .dll.

One exception is friend assemblies and /moduleassemblyname (Specify Friend Assembly for Module) (C# Compiler Option), which work under /langversion:ISO-1.

To set this compiler option in the Visual Studio development environment

  1. Open the project's Properties page. For details, see How to: Set Project Properties (C#, J#).

  2. Click the Build property page.

  3. Click the Advanced button.

  4. Modify the Language Version property.

For information on how to set this compiler option programmatically, see LanguageVersion.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft