about summary refs log tree commit diff
path: root/src/librustc_mir/transform
diff options
context:
space:
mode:
authorMark-Simulacrum <mark.simulacrum@gmail.com>2016-11-13 19:42:15 -0700
committerMark-Simulacrum <mark.simulacrum@gmail.com>2016-11-28 06:37:08 -0700
commit64e97d9b33ac7a38ec9f0ae1575771cdad4afac0 (patch)
tree5553e369ac533cba86775a2e24e0358ed316e33a /src/librustc_mir/transform
parent607af7218b31ed00c8f613deedf8f4f7ae59cd13 (diff)
downloadrust-64e97d9b33ac7a38ec9f0ae1575771cdad4afac0.tar.gz
rust-64e97d9b33ac7a38ec9f0ae1575771cdad4afac0.zip
Remove BuiltinBound and BuiltinBounds.
Diffstat (limited to 'src/librustc_mir/transform')
-rw-r--r--src/librustc_mir/transform/qualify_consts.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/librustc_mir/transform/qualify_consts.rs b/src/librustc_mir/transform/qualify_consts.rs
index 4ff2beb3fdb..9cd92cf1fdc 100644
--- a/src/librustc_mir/transform/qualify_consts.rs
+++ b/src/librustc_mir/transform/qualify_consts.rs
@@ -29,6 +29,7 @@ use rustc::mir::traversal::ReversePostorder;
 use rustc::mir::transform::{Pass, MirPass, MirSource};
 use rustc::mir::visit::{LvalueContext, Visitor};
 use rustc::util::nodemap::DefIdMap;
+use rustc::middle::lang_items;
 use syntax::abi::Abi;
 use syntax::feature_gate::UnstableFeatures;
 use syntax_pos::Span;
@@ -1046,7 +1047,11 @@ impl<'tcx> MirPass<'tcx> for QualifyAndPromoteConstants {
             tcx.infer_ctxt(None, None, Reveal::NotSpecializable).enter(|infcx| {
                 let cause = traits::ObligationCause::new(mir.span, id, traits::SharedStatic);
                 let mut fulfillment_cx = traits::FulfillmentContext::new();
-                fulfillment_cx.register_builtin_bound(&infcx, ty, ty::BoundSync, cause);
+                fulfillment_cx.register_bound(&infcx, ty,
+                                              tcx.lang_items
+                                                .require(lang_items::SyncTraitLangItem)
+                                                .unwrap_or_else(|msg| tcx.sess.fatal(&msg[..])),
+                                              cause);
                 if let Err(err) = fulfillment_cx.select_all_or_error(&infcx) {
                     infcx.report_fulfillment_errors(&err);
                 }