{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

A predicate answer cancel an assertion with the

Info iconThis preview shows pages 69–71. Sign up to view the full content.

View Full Document Right Arrow Icon
-A - predicate = answer Cancel an assertion with the predicate predicate and answer answer . -dCHARS CHARS is a sequence of one or more of the following characters, and must not be preceded by a space. Other characters are interpreted by the compiler proper, or reserved for future versions of GCC, and so are silently ignored. If you specify characters whose behavior conflicts, the result is undefined. M Instead of the normal output, generate a list of ‘ #define ’ directives for all the macros defined during the execution of the preprocessor, including predefined macros. This gives you a way of finding out what is predefined in your version of the preprocessor. Assuming you have no file ‘ foo.h ’, the command touch foo.h; cpp -dM foo.h will show all the predefined macros. If you use ‘ -dM ’ without the ‘ -E ’ option, ‘ -dM ’ is interpreted as a synonym for ‘ -fdump-rtl-mach ’. See Section “Debugging Options” in gcc . D Like ‘ M ’ except in two respects: it does not include the predefined macros, and it outputs both the ‘ #define ’ directives and the result of preprocessing. Both kinds of output go to the standard output file. N Like ‘ D ’, but emit only the macro names, not their expansions. I Output ‘ #include ’ directives in addition to the result of prepro- cessing. U Like ‘ D ’ except that only macros that are expanded, or whose de- finedness is tested in preprocessor directives, are output; the output is delayed until the use or test of the macro; and ‘ #undef ’ directives are also output for macros tested but undefined at the time. -P Inhibit generation of linemarkers in the output from the preprocessor. This might be useful when running the preprocessor on something that is not C code, and will be sent to a program which might be confused by the linemarkers. See Chapter 9 [Preprocessor Output], page 47 . -C Do not discard comments. All comments are passed through to the output file, except for comments in processed directives, which are deleted along with the directive. You should be prepared for side effects when using ‘ -C ’; it causes the prepro- cessor to treat comments as tokens in their own right. For example, comments
Background image of page 69

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Chapter 13: Environment Variables 66 appearing at the start of what would be a directive line have the effect of turn- ing that line into an ordinary source line, since the first token on the line is no longer a ‘ # ’. -CC Do not discard comments, including during macro expansion. This is like ‘ -C ’, except that comments contained within macros are also passed through to the output file where the macro is expanded. In addition to the side-effects of the ‘ -C ’ option, the ‘ -CC ’ option causes all C ++ -style comments inside a macro to be converted to C-style comments. This is to prevent later use of that macro from inadvertently commenting out the remainder of the source line.
Background image of page 70
Image of page 71
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}