Language element control

The options in this category allow you to specify the characteristics of the source code. You can also use these options to enforce or relax language restrictions, and enable or disable language extensions.

Table 1. Language element control options
Option name Equivalent pragma name Description
-qaltivec None

Enables compiler support for vector data types and operators.

-qasm None

Controls the interpretation of and subsequent generation of code for assembler language extensions.

-qcpluscmt (C only) None.

Enables recognition of C++-style comments in C source files.

-D None.

Defines a macro as in a #define preprocessor directive.

-qdfp None.

Enables compiler support for decimal floating-point types and literals.

-qdigraph #pragma options digraph

Enables recognition of digraph key combinations or keywords to represent characters not found on some keyboards.

-qdollar #pragma options dollar

Allows the dollar-sign ($) symbol to be used in the names of identifiers.

-qignprag #pragma options ignprag

Instructs the compiler to ignore certain pragma statements.

-qkeyword None.

Controls whether the specified name is treated as a keyword or as an identifier whenever it appears in your program source.

-qlanglvl C only #pragma options langlvl, #pragma langlvl

Determines whether source code and compiler options should be checked for conformance to a specific language standard, or subset or superset of a standard.

-qlonglong #pragma options long long

Allows IBM long long integer types in your program.

-qmacpstr #pragma options macpstr

Converts Pascal string literals (prefixed by the \p escape sequence) into null-terminated strings in which the first byte contains the length of the string.

-qmbcs, -qdbcs #pragma options mbcs, #pragma options dbcs

Enables support for multibyte character sets (MBCS) and Unicode characters in your source code.

-qstaticinline (C++ only) None.

Controls whether inline functions are treated as having static or extern linkage.

-qtabsize None.

Sets the default tab length, for the purposes of reporting the column number in error messages.

-qtrigraph None.

Enables the recognition of trigraph key combinations to represent characters not found on some keyboards.

-U None.

Undefines a macro defined by the compiler or by the -D compiler option.

-qutf None.

Enables recognition of UTF literal syntax.