Tells the compiler to conform to a specific language standard.
IDE Equivalent
Windows: Language > Enable C++0x Support
Linux: Language > ANSI Conformance
Mac OS X: Language > C ANSI Conformance
Architectures
IA-32, IntelĀ® 64, IA-64 architectures
Syntax
Linux and Mac OS X:
|
-std=val
|
Arguments
val
|
Possible values are:
c89
|
Conforms to the ISO/IEC 9899:1990 International Standard.
|
c99
|
Conforms to The ISO/IEC 9899:1999 International Standard.
|
gnu89
|
Conforms to ISO C90 plus GNU* extensions.
|
gnu++98
|
Conforms to the 1998 ISO C++ standard plus GNU extensions.
|
c++0x
|
Enable support for the following C++0x features:
-
Empty macro arguments
-
Variadic macros
-
Type long long
-
Trailing comma in enum definition
-
Concatenation of mixed-width string literals
-
Extended friend declarations
-
Use of ">>" to close two template argument lists
-
Relaxed rules for use of "typename"
-
Relaxed rules for disambiguation using the "template" keyword
-
Copy constructor does not need to be callable on direct reference
-
Binding to class rvalue
-
"extern template" to suppress instantiation of an entity
-
"auto" type specifier
-
decltype operator
-
static_assert
-
compliant __func__
-
lambda expressions
|
|
Default
-std=gnu89 (default for C)
|
Conforms to ISO C90 plus GNU extensions.
|
-std=gnu++98 (default for C++)
|
Conforms to the 1998 ISO C++ standard plus GNU* extensions.
|
/Qstd=c89
|
Conforms to the ISO/IEC 9899:1990 International Standard.
|
Description
Tells the compiler to conform to a specific language standard.