As the name suggests, a C Compiler written in Rust. What else would you write a C compiler in. Much nicer an experience than writing a Rust compiler in C, that's for sure.
The goal is for it to compile C programs, the more the better. No guarantees whatsoever will be provided. The end goal is for it to be a complete C compiler with hand-crafted codegen for x86 and aarch64, alongside LLVM support.
- Labeled statements & goto
- Increment & decrement operators
- Compound assignment (+=, -=, *=, /=, %=)
- Bitwise operators (&, |, ^, <<, >>)
- Functions
- Loops
- Compound statements
- If statements
- Basic statements (return & null)
- Conditional ternary expression
- Variables
- Logical binary operators (&&, ||, ==, !=, <=, >=, <, >)
- Arithmetic binary operators (+, -, *, /, %)
- Logical 'not' unary operator
- Unary operators (complement & negation)