I've been working on writing a c11 compiler, to x86_64/x64 assembly, currently just finished implementing function pointers and global variables. I still need to implement arrays/struct/string literals/optimisation, so a lot to do, but it is good enough to allocate memory and print hello world. It would be nice if I could make the compiler output binary files, not assembly source, but that seems like it would be a lot more todo.
Implementing the type syntax was I think the hardest part so far, given c’s weird type syntax.
https://github.com/OrangeBacon/mcc