Defer other kinds of errors until runtime, not just type errors
In #5624 (closed) we added -fdefer-type-errors to turn type errors into warnings. We can do this for other kinds of errors too, notably out-of-scope errors, and there are plenty more errors that can be deferred by replacing the erroneous subexpression by a call to error. See also #1341 (closed)
Edited by Simon Peyton Jones