Emit end label in while and for loops
Add do-while statement
Add For statement
Remove unneeded code from compound()
Add while statements
Allow nedted compound statements
Add stmtexp()
Add break, continue and switch parameters to context
Add \? escape sequence
Remove the Inst type
Check that void function can return a value
Add character constants
Remove columnum variable
Add STRING constants
Add hexadecimal, octal, negative and unsigned constants
Forbid modify a void expression
Allow conversions to void
Separate char and signed/unsigned char
Fix compare()
Fix content()
Fix typeconv()
Eval expression before casting it
Remove unused macro definition in expr.c
Evaluate expressions in compare()
Eval parameter of integeruop
Evaluate expressions in integerop
Eval expressions in arithmetic
Fix increment()
Remove use of BTYPE in array()
Rewrite unary()
Fix pointer conversions in convert()
Check integer operands in modulo operator
Avoid operations like i += p
Use a pointer function in assign()
Unify symbol and constant code
Allow comparision between 0 and pointers
Add symbol flag in Symbol
Rewrite arithmetic() using new fields of Node
Avoid initial assignment in typeconv()
Use better names in init_expr()
Simplify bitlogic()
Fix typeconv
Simplify typeconv() and promote() using rank
promote integer types in convert()
Convert some expressions to new Node fields
Add unqualified type op to Node
Fix indent error
Add checkof equal type in typeconv()
Change name of ISNODELOG to ISNODECMP
Add function iszero()
Convert expressions of ternary operator
Convert expressions of ternary operator
Split assign into two functions
Change id of long double
Emit constants in lower case hexadecimal
Change name of the executable
Add comments about types in modulo
emit functions only when they are defined
Set unbuffered io
Fix emit of division operator
Add a print element to inline expressions
Add out of function expressions
Simplify the Makefile
Replace type macros by enum constants
Remove IMAGINARY macro
Remove POINTER and PTYPE() macros
Remove RECORD and RTYPE() macros
Remove unused macro ARRAY_SIZE()
Remove ARITH and ATYPE() macros
Remove isaddr()
Remove isrecord()
Remove isarith()
Integrate union into Symbol struct
Remove unused field in Symbol struct
Update format of functions
Add return statement
First version of emitdcl()
Add more comments about missed features
Allow cast between different type of pointers
Add void pointers
Promote expressions in ternary operator
Unify intcont() and floatconv()
Fix declaration of long variables
Add integer conversions
Copy end of string in xstrdup
Implement promote()
Add comments about features not implemented
Implement comma operator
Fix substraction
Evaluate logical and relational operators before assigning
Add evaluation of logical 'and' and logical 'or'
Remove machine.h file
Check against zero in ternary code
Remove stupid double check in unary()
Simplify check of a Symbol Node
Check if variable is register type before taken address