mode: reset mode on entry to fn body.

This is an interim fix to address the "Beware!" unsoundness.  I have a
more comprehensive rewrite of mode.rs in the pipeline.

r=pcwalton
This commit is contained in:
Niko Matsakis 2013-01-10 06:29:26 -08:00
parent eaa256509e
commit 737e115646
17 changed files with 69 additions and 41 deletions

View file

@ -37,7 +37,7 @@ impl<T, U> Condition<T, U> {
fn raise(t: T) -> U {
let msg = fmt!("Unhandled condition: %s: %?", self.name, t);
self.raise_default(t, || fail msg)
self.raise_default(t, || fail copy msg)
}
fn raise_default(t: T, default: &fn() -> U) -> U {