PRECC eXtended is an infinite-lookahead higher-order compiler-compiler for languages with context-dependent grammars. The generated code is ANSI C and ANSI C++; the code will compile and run natively under either C or C++. Specification scripts are extended BNF, with both inherited and synthetic attributes allowed. Scripts can be compiled in separate modules and linked later. The technology is essentially LL(oo).
| Tags | Software Development Compilers |
|---|---|
| Licenses | LGPL |
Recent releases


Changes: The code has been updated to be compatible with the new GCC 4.2 C compiler, which is increasingly strict about casting functions.


Changes: The compiler compiler's internal sequent production has been improved to allow trailing \x and be more comprehensible to the maintainer.


Changes: A "debian" subdirectory has been added in order to allow the building of deb packages from the source archive.


Changes: Production rule prototypes are allowed to be declared as needed inline in a grammar script ("@foo(x,y)") instead of generating all the necessary prototypes in a separate output file. Data constructor/deconstructor notation was introduced for use in making and consuming complicated data structures inside grammar rules ("+{foo}\x ... -{bar(x)}").


Changes: A problem with anchor after cut ("! ^") in a grammar specification was fixed.