COHERENT manpages

This page displays the COHERENT manpage for __STDC__ [Mark a conforming translator].

List of available manpages
Index


__STDC__ -- Manifest Constant

Mark a conforming translator

__STDC__ is a preprocessor constant  that is defined by the C preprocessor.
If it is defined to be  equal to one, then it indicates that the translator
conforms to the ANSI standard.

The value  of __STDC__ remains  constant throughout the  entire program, no
matter how many source files it  comprises.  It may not be the subject of a
#define or #undef preprocessing directive.

Example

For an example of using __STDC__ in a program, see __DATE__.

See Also

__DATE__,
__FILE__,
__LINE__,
__TIME__,
manifest constant
ANSI Standard, §6.8.8

Notes

Many users incorrectly attempt to use the construction

    #ifdef __STDC__

instead of the correct form:

    #if __STDC__

These constructions give different results because __STDC__ is defined, but
it is defined to a value  of zero, in keeping with the fact that COHERENT C
does not yet conform to the ANSI standard.

To help users avoid this error, COHERENT does not define __STDC__ at all.