Интерактивная система просмотра системных руководств (man-ов)
mcpp (1) >> mcpp (1) ( Linux man: Команды и прикладные программы пользовательского уровня )
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.
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 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.6.4 (2007/05) 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.
Index
NAME
SYNOPSIS
DESCRIPTION
OPTIONS
PRAGMA
VERSION
SEE ALSO