Prevention is Better Than the Cure: Compiler Run-Time Error Checking