|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer|
/Za, /Ze (Disable Language Extensions)
/Za flags language constructs not compatible with either ANSI C++ or ANSI C as errors. /Ze enables Microsoft extensions.
The Visual C++ compiler offers a number of features beyond those specified in either the ANSI C or ANSI C++ standards. These features are known collectively as Microsoft extensions to C and C++. These extensions are available when the /Ze option, the default, is specified and are not available when the s option is specified. Seefor more information.
Disable language extensions if you plan to port your program to other environments. The compiler treats extended keywords as simple identifiers, disables the other Microsoft extensions, and automatically defines the __STDC__ predefined macro for C programs.
Other compiler options used with s can how the compiler ensures ANSI conformance. For example, s andmay result in unexpected behavior.
See /Zc for ways to get standard behavior with s.
/Ze is deprecated in Visual C++ 2005; it is the default. For more information, see.
For more information about conformance issues with Visual C++, see.
To set this compiler option in the Visual Studio development environment
Open the project's Property Pages dialog box. For details, see.
Click the C/C++ folder.
Click the Language property page.
Modify the Disable Language Extensions property.
To set this compiler option programmatically