mcpp is a C/C++ preprocessor with the following features.

* Implements all of C90, C99 and C++98 specifications.
* Provides a validation suite to test C/C++ preprocessor's conformance
and quality comprehensively. When this validation suite is applied,
mcpp distinguishes itself among many existing preprocessors.
* Has plentiful and on-target diagnostics to check all the
preprocessing problems such as latent bug or lack of portability
in source code.  * Has #pragma directives to output debugging
information.
* Is portable and has been ported to many compiler-systems, including
GCC and Visual C++, on UNIX-like systems and Windows.
* Has various behavior modes.
* Can be built either as a compiler-specific preprocessor to replace
the resident preprocessor of a particular compiler system, or as
a compiler-independent command, or even as a subroutine called from
some other main program.
* Provides comprehensive documents both in Japanese and in English.
* Is an open source software released under BSD-style-license.

Homepage:
https://sourceforge.net/projects/mcpp/files/mcpp/V.2.7.2/
