development/libraries

ocaml-cil - CIL - Infrastructure for C Program Analysis and Transformation

Website: http://cil.sourceforge.net/
License: BSD
Vendor: Fedora Project
Description:
CIL (C Intermediate Language) is a high-level representation along
with a set of tools that permit easy analysis and source-to-source
transformation of C programs.

CIL is both lower-level than abstract-syntax trees, by clarifying
ambiguous constructs and removing redundant ones, and also
higher-level than typical intermediate languages designed for
compilation, by maintaining types and a close relationship with the
source program. The main advantage of CIL is that it compiles all
valid C programs into a few core constructs with a very clean
semantics. Also CIL has a syntax-directed type system that makes it
easy to analyze and manipulate C programs. Furthermore, the CIL
front-end is able to process not only ANSI-C programs but also those
using Microsoft C or GNU C extensions. If you do not use CIL and want
instead to use just a C parser and analyze programs expressed as
abstract-syntax trees then your analysis will have to handle a lot of
ugly corners of the language (let alone the fact that parsing C itself
is not a trivial task).

In essence, CIL is a highly-structured, "clean" subset of C. CIL
features a reduced number of syntactic and conceptual forms. For
example, all looping constructs are reduced to a single form, all
function bodies are given explicit return statements, syntactic sugar
like "->" is eliminated and function arguments with array types become
pointers.

Packages

ocaml-cil-1.3.6-11.fc11.src [1.3 MiB] Changelog by Fedora Release Engineering (2009-02-25):
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

Listing created by Repoview-0.6.3-1.fc11