aboutsummaryrefslogtreecommitdiff
path: root/README.rst
blob: 62df5d9bd8f62c74911bbb497c7d4148121c158b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
CBIC: C Implemented Bare and Ingenuous Compiler
=================================================

Build Requirements
------------------
- flex >= 2.5.37
- bison >= 2.4.3
- gcc >= 4.7.3

Features
---------
- Complex declaration support (``int (*a)[10]``, ``int (*f)()``, ``int (*g(int ***e[10]))()``, etc.)
- Complex cast support (``(int (*)())addr``, ``(int (*)[10])addr``, etc.)
- ``typedef`` support (together with complex decl)
- Forward declaration
- Real Single Static Assignment (with dominator frontier, renaming, interval
  building and registor allocation algorithm)
- Sophisticated semantic checking
- Small memory footprint
- Sophisticated error reporting
- User-friendly AST printing