ucpp is a C preprocessor. It is designed to be quick and light, but still fully compliant to the ISO standard 9899:1999, also known as C99. ucpp can be compiled as a stand-alone program or linked to some other code; in the latter case, ucpp will output tokens, one at a time, on demand, as an integrated lexer. ucpp operates in two modes: in lexer mode, ucpp is linked to some other code and outputs a stream of tokens where each call to the lex() function will yield one token; in non-lexer mode, ucpp preprocesses text and outputs the resulting text to a file descriptor. If linked to some other code, the cpp() function must be called repeatedly, otherwise ucpp is a stand-alone binary.
|Tags||Lexer Macro Preprocessor|
|Operating Systems||Unix Linux Mac OS X Windows DOS Solaris|
Release Notes: A problem was fixed in which included files missing a "terminating carriage return character" would interrupt preprocessing in sample.c/LEXER mode.
Release Notes: An issue was fixed in which "\r\n" carriage return characters were counted twice. Included files missing a "carriage return character" will no longer interrupt preprocessing. The problem where STD_MACROS and STD_ASSERTS were undefined when trying to build ucpp -DSTAND_ALONE was fixed. ucpp and libucpp are built with "make", by default.