|
|
|
|
|
by munificent
1113 days ago
|
|
> because earlier compiler stages might introduce errors and propagate errors they neglect to check. Static analyzers for IDEs need to handle erroneous code in later phases (for example, being able to partially type check code that contains syntax errors). But, in general, I haven't seen a lot of compiler code that redundantly performs the same validation that was already done in earlier phases. The last thing you want to do when dealing with optimization and code generation is also re-implement your language's type checker. |
|