diff --git a/src/librustc/middle/trans/common.rs b/src/librustc/middle/trans/common.rs index 743e85e458e..9f81aa00193 100644 --- a/src/librustc/middle/trans/common.rs +++ b/src/librustc/middle/trans/common.rs @@ -307,8 +307,8 @@ impl FunctionContext { } pub fn warn_not_to_commit(ccx: &mut CrateContext, msg: &str) { - if !ccx.do_not_commit_warning_issued { - ccx.do_not_commit_warning_issued = true; + if !ccx.do_not_commit_warning_issued.get() { + ccx.do_not_commit_warning_issued.set(true); ccx.sess.warn(msg.to_str() + " -- do not commit like this!"); } } diff --git a/src/librustc/middle/trans/context.rs b/src/librustc/middle/trans/context.rs index 9857ff37b94..7d0eb736195 100644 --- a/src/librustc/middle/trans/context.rs +++ b/src/librustc/middle/trans/context.rs @@ -112,7 +112,7 @@ pub struct CrateContext { // is not emitted by LLVM's GC pass when no functions use GC. uses_gc: bool, dbg_cx: Option, - do_not_commit_warning_issued: bool + do_not_commit_warning_issued: Cell, } impl CrateContext { @@ -232,7 +232,7 @@ impl CrateContext { crate_map_name: crate_map_name, uses_gc: false, dbg_cx: dbg_cx, - do_not_commit_warning_issued: false + do_not_commit_warning_issued: Cell::new(false), } } }