CIL 1.5.0 is available from
The major change of this release in the introduction of a Question variant in
the Cil.exp type, to represent expressions such as 1 == 2 ? 3 : 4. It is
enabled by the flag --useLogicalOperators. By default, legacy code should
therefore compile and run without trouble against CIL 1.5.0, except for a few
"non-exhaustive pattern matching" warnings on Cil.exp variables. Thanks to
Elnatan Reisner for this feature.
This release also adds support for new GCC attributes and builtins, and fixes a
number of issues thanks to many bug reports and patches.
For more information about CIL, please see:
June 14, 2012: Released version 1.5.0.
Incompatible change: introduce a Question variant for the Cil.exp type
(thanks to Elnatan Reisner). Enabled by the flag --useLogicalOperators.
Add support for new GCC attributes and builtins (thanks to Ben Liblit).
Remove trivial gotos and associated labels in useless variables elimination.
Preserve const in function parameters.
Handle array initialization of arbitrary length.
Allow single character output file names in Cilly (#3499163).
Mitigate stack-overflow issues for large case-range in switch statements (#3480417).
Explicit casting for return value of va_arg (#3463364).
Avoid spurious warnings in loadBinaryFile (thanks to Jesse Draper).
Add -WX flag to CFLAGS when using the MSVC compiler (thanks to Jim Grundy).
Fix name collisions in global scope (#3532283, thanks to Ed Schwartz).
Fix types in switch statements (#3481303, thanks to Boris Yakobowski).
Minor build improvements (MacOS portability).
Get latest updates about Open Source Projects, Conferences and News.