diff --git a/src/bin/miri.rs b/src/bin/miri.rs index c2255d706339..d8d7cfe0702e 100644 --- a/src/bin/miri.rs +++ b/src/bin/miri.rs @@ -154,6 +154,14 @@ fn init_late_loggers() { rustc_driver::init_rustc_env_logger(); } } + + // If MIRI_BACKTRACE is set and RUST_CTFE_BACKTRACE is not, set RUST_CTFE_BACKTRACE. + // Do this late, so we really only apply this to miri's errors. + if let Ok(var) = env::var("MIRI_BACKTRACE") { + if env::var("RUST_CTFE_BACKTRACE") == Err(env::VarError::NotPresent) { + env::set_var("RUST_CTFE_BACKTRACE", &var); + } + } } fn find_sysroot() -> String { diff --git a/src/lib.rs b/src/lib.rs index 7643f93fdc2c..bb6c9e3ca503 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -15,7 +15,6 @@ extern crate rustc_target; use std::collections::HashMap; use std::borrow::Cow; -use std::env; use rustc::ty::{self, TyCtxt, query::TyCtxtAt}; use rustc::ty::layout::{TyLayout, LayoutOf, Size, Align}; @@ -184,14 +183,6 @@ pub fn eval_main<'a, 'tcx: 'a>( ) { let mut ecx = create_ecx(tcx, main_id, validate).expect("Couldn't create ecx"); - // If MIRI_BACKTRACE is set and RUST_CTFE_BACKTRACE is not, set RUST_CTFE_BACKTRACE. - // Do this late, so we really only apply this to miri's errors. - if let Ok(var) = env::var("MIRI_BACKTRACE") { - if env::var("RUST_CTFE_BACKTRACE") == Err(env::VarError::NotPresent) { - env::set_var("RUST_CTFE_BACKTRACE", &var); - } - } - // Run! The main execution. let res: EvalResult = (|| { ecx.run()?;