The C preprocessor defines the following macro names:

__DATE__

The date of translation of the program unit in the form `"Mmm dd yy"`.

__FILE__

The name of the current source file. __FILE__ expands to a string constant.

__LINE__

The line number of the current source line in the current source file. __LINE__ expands to an integer constant.

__STDC__

The integer constant 1 as CrossWorks C conforms to the ISO/IEC 9899 standard. The integer constant 0 denotes that the implementation does not conform to the relevant standard.

__STDC_HOSTED__

The integer constant 0 as CrossWorks C is not a hosted implementation. The integer constant 1 denotes that the implementation is a hosted implementation.

__STDC_VERSION__

The integer constant `199409L` as CrossWorks C conforms to ISO/IEC 9899:1990 with the changes required by ISO/IEC 9899/AMD1:1995. For standard C compilers conforming to ISO/IEC 9899:1999, this constant is `199901L`.

__TIME__

The time of translation of the program unit. This expands to a string constant of the form `"hh:mm:ss"`.

The following macro names are not defined by CrossWorks C as the implementation is still in the process of being upgraded to the 1999 standard.

__STDC_IEC_599__
__STDC_IEC_599_COMPLEX__
__STDC_ISO_10646__