speedcat/todo_list.md
Slendi e4289d577a Make the compiler work on macOS
Signed-off-by: Slendi <slendi@socopon.com>
2024-03-10 01:16:25 +02:00

1.8 KiB

TODO list (epic)

  • Create a TODO list
  • Custom Functions (not external)
    • Add support for function definitions in the type checker
    • Add support for function definitions in the LLVM emitter
  • Structures
    • Add support for packed in the parser
    • Add support for definitions in the type checker
    • Add support for definitions in the LLVM emitter
    • Add support for member accesses in the type checker
    • Add support for member accesses in the LLVM emitter
  • Unions
    • Add support for unions in the type checker
    • Add support for unions in the LLVM emitter
    • Add support for member accesses in the type checker
    • Add support for member accesses in the LLVM emitter
  • Enums
    • Add support for enums in the type checker
    • Add support for enums in the LLVM emitter
    • Add support for member accesses in the type checker
    • Add support for member accesses in the LLVM emitter
  • Modules
    • Add support for modules in the type checker
      • Modify functions, structures, unions and enums to have names mangling
    • Add support for modules in the LLVM emitter
      • Modify functions, structures, unions and enums to have names mangling
  • Typed Unions
    • Add support for unions in the parser
    • Add support for unions in the type checker
    • Add support for unions in the LLVM emitter
    • Add support for member accesses in the type checker
    • Add support for member accesses in the LLVM emitter
  • Create a self-sustained compiler
    • Add a glue code to the compiler to compile itself (basically interface to libc)
    • Create an assembler for x86_64
    • Create a custom backend