Provided by: mcpp_2.7.2-3ubuntu1_amd64
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 of compiler-independent-build.
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. Commonly used options: -@MODE Specify preprocessing mode. MODE should be one of these 4: -@std Standard conforming mode. (default) -@poststd, -@post special 'post-Standard' mode. -@kr K&R 1st mode. -@oldprep, -@old "old_preprocessor" mode (i.e. "Reiser model" cpp). -C Output also comments. -D <macro>[=<value>] Define <macro> as <value> (default:1). -D <macro(args)>[=<replace>] Define <macro(args)> as <replace>. -e <encoding> Change the default multi-byte character encoding to one of: euc_jp, gb2312, ksc5601, big5, sjis, iso2022_jp, utf8. -I <directory> Add <directory> to the #include search list. -I- Unset system or site specific include directories. -j Do not output the source line in diagnostics. -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. -o <file> Output to <file>. -P Don't output #line lines. -Q Output diagnostics to "mcpp.err" (default:stderr). -U <macro> Undefine <macro>. -v Show version of mcpp. -W <level> Set warning level to <level> (OR of {0,1,2,4,8,16}, default:1). -z Don't output the included file, only defining macros. Options available with -@std (default) or -@poststd options: -+ Process C++ source. -2 Enable digraphs. -h <n> Re-define the pre-defined macro __STDC_HOSTED__ as <n>. -S <n> Redefine __STDC__ to <n>, undefine old style macros. -V <n> Redefine __STDC_VERSION__ or __cplusplus to <n>. C with -V199901L specifies C99 mode. C++ with -V199901L specifies C99 compatible mode. Options available with only -@std (default) option: -@compat Expand recursive macro more than Standard. -3 Enable trigraphs. -K Embed macro annotations into comments. Options available with -@std (default), -@kr or -@oldprep options: -a Process "assembler" source.
PRAGMA
mcpp has the following #pragma directives. #pragma once Read the header file only once even if multiply #included. #pragma __setlocale( "encoding") Specify the multibyte character encoding to "encoding". See -e option for the encodings. #pragma MCPP put_defines Putout all the macro definitions currently valid. #pragma MCPP debug <args> Start to putout debugging informations. <args> should be one or more of: token expand macro_call path if expression memory getc #pragma MCPP end_debug <args> Stop to putout debugging informations. <args> are the same with 'debug'. No argument specifies all arguments. #pragma MCPP push_macro( "MACRO") Save the macro definition to the stack. #pragma MCPP pop_macro( "MACRO") Retrieve the macro definition from the stack. #pragma MCPP preprocess "Pre-preprocess" the following header files for mcpp. #pragma MCPP warning any message Putout warning "any message".
VERSION
MCPP V.2.7 (2008/03) compiler-independent-build
SEE ALSO
Do 'man mcpp-gcc' for mcpp of GCC-specific-build. The full documentation for mcpp are maintained as html files. Please see mcpp-manual.html.