# Language Options

This section contains descriptions for compiler options that pertain to language compatibility, conformity, etc.

Parent topic: Compiler Option Details

- ansi
  Enables language compatibility with the gcc option ansi.
- check
  Checks for certain conditions at run time.
- early-template-check
  Lets you semantically check template function template prototypes before instantiation.
- fblocks
  Determines whether Apple* blocks are enabled or disabled.
- ffriend-injection
  Causes the compiler to inject friend functions into the enclosing namespace.
- fno-gnu-keywords
  Tells the compiler to not recognize typeof as a keyword.
- fno-implicit-inline-templates
  Tells the compiler to not emit code for implicit instantiations of inline templates.
- fno-implicit-templates
  Tells the compiler to not emit code for non-inline templates that are instantiated implicitly.
- fno-operator-names
  Disables support for the operator names specified in the standard.
- fno-rtti
  Disables support for run-time type information (RTTI).
- fnon-lvalue-assign
  Determines whether casts and conditional expressions can be used as lvalues.
- fpermissive
  Tells the compiler to allow for non-conformant code.
- fshort-enums
  Tells the compiler to allocate as many bytes as needed for enumerated types.
- fsyntax-only
  Tells the compiler to check only for correct syntax.
- ftemplate-depth, Qtemplate-depth
  Control the depth in which recursive templates are expanded.
- funsigned-bitfields
  Determines whether the default bitfield type is changed to unsigned.
- funsigned-char
  Change default char type to unsigned.
- GZ
  Initializes all local variables. This is a deprecated option. The replacement option is /RTC1.
- H (Windows*)
  Causes the compiler to limit the length of external symbol names. This is a deprecated option. There is no replacement option.
- help-pragma, Qhelp-pragma
  Displays all supported pragmas.
- intel-extensions, Qintel-extensions
  Enables or disables all Intel® C and Intel® C++ language extensions.
- J
  Sets the default character type to unsigned.
- restrict, Qrestrict
  Determines whether pointer disambiguation is enabled with the restrict qualifier.
- std, Qstd
  Tells the compiler to conform to a specific language standard.
- strict-ansi
  Tells the compiler to implement strict ANSI conformance dialect.
- vd
  Enables or suppresses hidden vtordisp members in C++ objects.
- vmb
  Selects the smallest representation that the compiler uses for pointers to members.
- vmg
  Selects the general representation that the compiler uses for pointers to members.
- vmm
  Enables pointers to class members with single or multiple inheritance.
- vms
  Enables pointers to members of single-inheritance classes.
- x (type option)
  All source files found subsequent to -x type will be recognized as a particular type.
- Za
  Disables Microsoft* Visual C++* compiler language extensions.
- Zc
  Lets you specify ANSI C standard conformance for certain language features.
- Ze
  Enables Microsoft* Visual C++* compiler language extensions. This is a deprecated option. There is no replacement option.
- Zg
  Tells the compiler to generate function prototypes. This is a deprecated option. There is no replacement option.
- Zp
  Specifies alignment for structures on byte boundaries.
- Zs
  Tells the compiler to check only for correct syntax.