Debugging a compiler, even a simple one, is amazingly subtle. You can have great test coverage and nasty bugs waltz past your test suite.