The project is structured to cover the following requirements:
- Null Checks in C: A Static Analysis + dynamic checks to disallow null pointer dereference
- Conservative Garbage Collection for C: Implementing a conservative garbage collector for C.
- Type and Spatial Safety in SafeC: Implementing spatial and type safety checks for C programs using LLVM.