Symbol (Name) Management
Compiler keeps track of names
- scope, lifetime, locally/externally defined
- disambiguates e.g.
x in main() vs x in fun()
- resolves symbols to specific locations (data/stack/registers)
- external symbols may remain unresolved until linking
- however, need to have a type for each external symbol
|