man mcpp_std (Commandes) - Matsui CPP, an alternative C preprocessor

NAME

mcpp - Matsui CPP, an alternative C preprocessor

SYNOPSIS

mcpp [options] [<infile> [<outfile>]]

DESCRIPTION

Mcpp is a C/C++ preprocessor with the highest conformance which implements C90, C99 and C++98. Mcpp has plentiful diagnostics and many #pragmas. It is useful to check portability of your program, and also useful to debug complicated macro. This is a man-page for mcpp ported to GCC.

OPTIONS

mcpp expects two file names as arguments, <infile> and <outfile>. If not specified, <infile> defaults to standard input and <outfile> defaults to standard output.

It takes the following options.

-+
Process C++ source.
-2
Enable digraphs.
-3
Enable trigraphs. (Cannot use with -@post option).
-@poststd, -@post
'post-Standard' mode of preprocessing.
-@compat
Expand recursive macro more than Standard. (Cannot use with -@post option).
-b
Output #line lines in C source style.
-C
Output also comments.
-D <macro>[=<value>]
Define <macro> as <value> (default:1).
-D <macro(args)>[=<replace>]
Define <macro(args)> as <replace>.
-digraphs
Enable digraphs.
-e <encoding>
Change the default multi-byte character encoding to one of: euc_jp, gb2312, ksc5601, big5, sjis, iso2022_jp, utf8.
-finput-charset=<encoding>
Same as -e <encoding>. (Do not insert spaces around '=').
-h <n>
Re-define the pre-defined macro __STDC_HOSTED__ as <n>.
-I <directory>
Add <directory> to the #include search list.
-I-
Unset system or site specific include directories.
-include <file>
Include the <file> prior to the main input file.
-j
Do not output the source line in diagnostics.
-lang-asm
Same as -x assembler-with-cpp.
-lang-c89
Same as -S1.
-lang-c++
Same as -+.
-M, -MM, -MD, -MMD, -MP, -MQ target, -MT target, -MF file Output source file dependency line for makefile.
-N Don't predefine any non-standard macros.
-nostdinc Unset system or site specific include directories.
-o <file> Output to <file>.
-P Don't output #line lines.
-pedantic, -pedantic-errors Same as -W7.
-Q Output diagnostics to "mcpp.err" (default:stderr).
-S <n> Redefine __STDC__ to <n>, undefine old style macros.
-std=<STANDARD> Specify the standard to which the code should conform. <STANDARD> may be one of: c90, c99, iso9899:1990, iso14882, etc.

iso9899:<n>, iso14882:<n> : Same as -V <n> (long in decimals).
-trigraphs Enable trigraphs.
-U <macro> Undefine <macro>.
-undef Same as -N.
-V <n> Redefine __STDC_VERSION__ or __cplusplus to <n>.

C with -V199901L specifies C99 mode.

C++ with -V199901L specifies C99 compatible mode.
-v Show version of mcpp.
-W <level> Set warning level to <level> (OR of {0,1,2,4,8,16}, default:1).
-w Same as -W0.
-x assembler-with-cpp Process "assembler" source.
-x c++ Same as -+.
-z Don't output the included file, only defining macros.

PRAGMA

Mcpp has the following #pragma directives.

#pragma once

#pragma __setlocale

#pragma MCPP put_defines

#pragma MCPP debug <args> <args> should be one or more of: token expand path if expression memory getc

#pragma MCPP end_debug <args> <args> are the same with 'debug'. No argument specifies all arguments.

#pragma MCPP push_macro

#pragma MCPP pop_macro

#pragma MCPP preprocess

#pragma MCPP preprocessed

#pragma MCPP warning

VERSION

MCPP V.2.5 (2005/03) STANDARD mode for GNU C

SEE ALSO

The full documentation for mcpp are maintained as text files. Please see /usr/share/doc/mcpp/*.

CETTE PAGE DOCUMENTE AUSSI :