Suppress type error message involving a function type whose result is ty_err

In general it would be good to suppress any messages involving types that
have ty_err as a sub-component, but this works for now.
This commit is contained in:
Tim Chevalier 2013-01-07 16:12:39 -08:00
parent c662a9aad7
commit e45312e5a0

View file

@ -741,6 +741,14 @@ impl infer_ctxt {
// Don't report an error if actual type is ty_err.
match ty::get(actual_ty).sty {
ty::ty_err => return,
// Should really not report an error if the type
// has ty_err anywhere as a component, but that's
// annoying since we haven't written a visitor for
// ty::t yet
ty::ty_fn(fty) => match ty::get(fty.sig.output).sty {
ty::ty_err => return,
_ => ()
},
_ => ()
}
let error_str = err.map_default(~"", |t_err|