18 lines
541 B
Plaintext
18 lines
541 B
Plaintext
# Intermediate code generation
|
|
|
|
- Put symbol table in the reader monad and it to the stack
|
|
or use the state monad for everything.
|
|
- Add errors handling to the monad stack.
|
|
|
|
# ELF generation
|
|
|
|
- Don't ignore relocations where the symbol is not defined in the symbol table.
|
|
Report an error about an undefined symbol.
|
|
- Don't hardcode symbols in symbolEntry.
|
|
|
|
# Name analysis
|
|
|
|
- Format error messages.
|
|
- Name analyzer collects procedure names in the first run. Implement the second run,
|
|
where the analyzer goes into and checks procedures.
|