optimizer repair related to use-before-defined

Don't optimize away a use-before-definition in an early compiler
pass. (More specifically, adjust the meaning of a flag within an
optimization helper function so that it works for decisions before the
letrec-fixing pass.)
adjust errortrace to record potential use-before-definition sites

Formerly, reference to a local variable could never raise an
exception.