Why check for -fdefer-type-errors in metaTyVarUpdateOK?
metaTyVarUpdateOK changes its behavior depending on the presence of
-fdefer-type-errors in an obscure case around heterogeneous equalities; see the code in
preCheck that deals with
badCoercionHoleCo. This is undocumented (in the code), and neither Simon nor I can figure out why it's done.
Task: figure this out, and either document or remove this behavior.