GNU Info

Info Node: (cpp-295.info)Other Directives

(cpp-295.info)Other Directives


Next: Output Prev: Combining Sources Up: Top
Enter node , (file) or (file)node

Miscellaneous Preprocessing Directives
======================================

   This section describes three additional preprocessing directives.
They are not very useful, but are mentioned for completeness.

   The "null directive" consists of a `#' followed by a Newline, with
only whitespace (including comments) in between.  A null directive is
understood as a preprocessing directive but has no effect on the
preprocessor output.  The primary significance of the existence of the
null directive is that an input line consisting of just a `#' will
produce no output, rather than a line of output containing just a `#'.
Supposedly some old C programs contain such lines.

   The ANSI standard specifies that the effect of the `#pragma'
directive is implementation-defined.  In the GNU C preprocessor,
`#pragma' directives are not used, except for `#pragma once' (Note:
Once-Only.).  However, they are left in the preprocessor output, so
they are available to the compilation pass.

   The `#ident' directive is supported for compatibility with certain
other systems.  It is followed by a line of text.  On some systems, the
text is copied into a special place in the object file; on most systems,
the text is ignored and this directive has no effect.  Typically
`#ident' is only used in header files supplied with those systems where
it is meaningful.


automatically generated by info2www version 1.2.2.9