cparser 0.9.14 (2012-11-21)
---------------------------
* Adapt to libfirm-1.21.0
* Improved error recovery
* Improved firm graph generation (faster/smaller graphs)
* Implement U,u and u8 strings
* Preliminary preprocessor (we still use system cpp by default, as some macro
expansion corner cases are still buggy and prevent us from compiling glibc
headers)
* More gcc extensions: binary constants, __leaf__ attribute
cparser 0.9.13 (2011-12-07)
---------------------------
* Adapt to libfirm-1.20.0
* Implement --help
* More work on preprocessor (still not finished though)
* Refactoring work so others can reuse input, optimization order logic
* Columns in source positions (but external preprocessor doesn't preserve all spaces)
* Improvements to gnu builtins/attributes
* Bugfixes (we did alot of csmith testing)
cparser 0.9.12 (2011-03-15)
---------------------------
* Adapt to libfirm-1.19.0
* Introduce -mtarget (and -mtriple for llvm compatibility) for conventient
cross-compilation
* Fix big-endian struct layouting
* Bugfixes
cparser 0.9.11 (2009-05-16)
---------------------------
* add missing NEWS entries
* fix crash when known C library functions had the wrong number of arguments
cparser 0.9.10 (2009-04-15)
---------------------------
* bugfixes
* adapt to libfirm-1.18.0
variables become commons and don't get noticed, but on platforms
without commons or with commons disabled, this results in a multiply
defined symbol.
Should fix MacOS build.
Changes in 0.9.9:
* bugfixes
* extend and improve support for attributes
* adapat to latest libfirm
Changes in 0.9.8:
* several bugfixes
* add/correct semantic checks
* improve error recovery
* support more GCC extensions
* add/improve/correct warnings
* lots of bugfixes
* add/correct semantic checks
* more/improved warnings
* internal cleanups (introduce entity_t types)
* support more GCC extensions
* improved error recovery
* support more switches for GCC compatibility
* support for libc builtins
* add a manpage
Cparser is a recursive descent C99 parser written in C99. It contains
a lexer, a parser, and the appropriate constructs; it does AST and
semantic analysis. It is currently used as a frontend to the
libFirm intermediate representation. However, it can be used
independently, and also is able to bootstrap itself. Currently, cparser
uses an external preprocessor.