C Compiler

The Project

My Project is a C Compiler for ANSI C. It is incomplete at the moment because it doesn't completely translate to assembly, however it does translate to LLVM. It performs syntax and semantic analysis competently and makes valid LLVM for the majority of C Code.

Advanced

Team Comments

I chose to make this project because...

I wanted to make this project as I thought it would be interesting and it really tested my skills in C++ and my understand of C. It also developed my skills as a computer scientist as I learnt the concepts for my Computer Science Teachers degree work box which covers in depth about compilers

What I found difficult and how I worked it out

It was difficult trying to test out all of the edges cases, and checking that everything worked generally. This mostly just took a lot of time. Along with working out exactly how to do parsing etc.

Next time, I would...

Would finish it and make it do assembly which is my plan at the moment. I would also probably completely rewrite it to make it faster and more effective. As there are a couple of ways to make it incorrectly produce error codes or where it produces error codes on valid code.

About the team

  • United Kingdom

Team members

  • Tom