 | Ignore Duplicate #include - Ignores
a #include directive if attempting to include a file already included. |
 | Allow macros to be Re#defined - Suppresses the warning or error normally given when two #define directives provide different values for the same preprocessor symbol. |
 | Allow Wrong #directives inside #if 0 - During preprocessing, lines inside of a false #if, #elif, #ifdef, or #ifndef are ignored. |
 | No Warning for Incorrect #pragma - Suppresses warnings for errors in #pragma that are recognized by the compiler or are incorrect. |
 | Allow #pragma asm and #pragma inline - Allows the use of #pragma asm, #pragma endasm, and #pragma inline in C source files. |
 | No output for #ident or #pragma ident - Prevents the compiler from emitting an ident directive in the assembly language output or placing the same information in the .comment section when generating COFF or ELF object files directly. |
 | Allow // style comments in C - Allows C++ style comments in C source code. |
 | Concat 2 Symbols Separated by Comment - Allows /* */ as concatenation in K & R C. |
 | Allow GNU Syntax Extensions - Supports GNU extensions, such as #import, zero size arrays, compound statements as part of expressions, inline functions, and the __inline__keyword. |
 | Japanese Automotive C - Enables a set of extensions to ANSI C used by Japanese automobile manufacturers. |
 | Allow extern to be Initialized - Allows variables declared with the extern storage class to accept initial values. |
 | Disallow Old Fashioned Syntax - Does not recognize outdated syntax for initializing variables, such as int i 5; and for assignment operators like =+, =-, =*. |
 | Allocate Small Enums as char or short - Allocates enumerated types to the smallest storage possible. |
 | Truncate External Symbols - Truncate all symbol names to eight characters for compatibility with older compilers and linkers. |