From: Yuki OKUSHI Date: Sun, 24 Mar 2019 18:19:48 +0000 (+0900) Subject: Return correct values X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=f0de8e82b868f7f4484b6e3e42543791c8b24b7f;p=rust.git Return correct values --- diff --git a/src/librustc_mir/const_eval.rs b/src/librustc_mir/const_eval.rs index 964f7215088..1542cdf1e3e 100644 --- a/src/librustc_mir/const_eval.rs +++ b/src/librustc_mir/const_eval.rs @@ -645,15 +645,17 @@ pub fn const_eval_raw_provider<'a, 'tcx>( // an error must be reported. let reported_err = tcx.sess.track_errors(|| { err.report_as_error(ecx.tcx, - "could not evaluate static initializer"); + "could not evaluate static initializer") }); match reported_err { - Ok(v) => tcx.sess.delay_span_bug(err.span, + Ok(v) => { + tcx.sess.delay_span_bug(err.span, &format!("static eval failure did not emit an error: {:#?}", - v)), - Err(err) => err, + v)); + v + }, + Err(ErrorReported) => ErrorHandled::Reported, } - reported_err } else if def_id.is_local() { // constant defined in this crate, we can figure out a lint level! match tcx.describe_def(def_id) {