]> git.lizzy.rs Git - rust.git/blobdiff - src/librustc/infer/combine.rs
Replace ConstVariableTable with UnificationTable
[rust.git] / src / librustc / infer / combine.rs
index 670c44bef3dbf89c51b40a317b1e41613292ba77..7ee762d94ae6c8b6b20caddf5ddba7819e6eba86 100644 (file)
@@ -28,7 +28,7 @@
 use super::lub::Lub;
 use super::sub::Sub;
 use super::type_variable::TypeVariableValue;
-use super::const_variable::ConstVariableValue;
+use super::unify_key::{ConstVarValue, ConstVariableValue, ConstVariableOrigin};
 
 use crate::hir::def_id::DefId;
 use crate::mir::interpret::ConstValue;
@@ -40,7 +40,7 @@
 use crate::traits::{Obligation, PredicateObligations};
 
 use syntax::ast;
-use syntax_pos::Span;
+use syntax_pos::{Span, DUMMY_SP};
 
 #[derive(Clone)]
 pub struct CombineFields<'infcx, 'gcx: 'infcx+'tcx, 'tcx: 'infcx> {
@@ -166,7 +166,10 @@ pub fn unify_const_variable(
     ) -> RelateResult<'tcx, &'tcx LazyConst<'tcx>> {
         self.const_unification_table
             .borrow_mut()
-            .unify_var_value(vid, ConstVariableValue::Known { value })
+            .unify_var_value(vid, ConstVarValue {
+                origin: ConstVariableOrigin::ConstInference(DUMMY_SP),
+                val: ConstVariableValue::Known { value },
+            })
             .map_err(|e| const_unification_error(vid_is_expected, e))?;
         Ok(value)
     }
@@ -590,7 +593,7 @@ fn consts(
                 ..
             }) => {
                 let mut variable_table = self.infcx.const_unification_table.borrow_mut();
-                match variable_table.probe(*vid).known() {
+                match variable_table.probe_value(*vid).val.known() {
                     Some(u) => {
                         self.relate(&u, &u)
                     }