@@ -39,8 +39,8 @@ use self::lexical_region_resolve::LexicalRegionResolutions;
39
39
use self :: outlives:: env:: OutlivesEnvironment ;
40
40
use self :: region_constraints:: { GenericKind , RegionConstraintData , VarInfos , VerifyBound } ;
41
41
use self :: region_constraints:: { RegionConstraintCollector , RegionSnapshot } ;
42
- use self :: type_variable:: TypeVariableOrigin ;
43
- use self :: unify_key:: { ToType , ConstVariableOrigin } ;
42
+ use self :: type_variable:: { TypeVariableOrigin , TypeVariableOriginKind } ;
43
+ use self :: unify_key:: { ToType , ConstVariableOrigin , ConstVariableOriginKind } ;
44
44
45
45
pub mod at;
46
46
pub mod canonical;
@@ -1109,13 +1109,19 @@ impl<'a, 'gcx, 'tcx> InferCtxt<'a, 'gcx, 'tcx> {
1109
1109
let ty_var_id = self . type_variables . borrow_mut ( ) . new_var (
1110
1110
self . universe ( ) ,
1111
1111
false ,
1112
- TypeVariableOrigin :: TypeParameterDefinition ( span, param. name ) ,
1112
+ TypeVariableOrigin {
1113
+ kind : TypeVariableOriginKind :: TypeParameterDefinition ( param. name ) ,
1114
+ span,
1115
+ } ,
1113
1116
) ;
1114
1117
1115
1118
self . tcx . mk_ty_var ( ty_var_id) . into ( )
1116
1119
}
1117
1120
GenericParamDefKind :: Const { .. } => {
1118
- let origin = ConstVariableOrigin :: ConstParameterDefinition ( span, param. name ) ;
1121
+ let origin = ConstVariableOrigin {
1122
+ kind : ConstVariableOriginKind :: ConstParameterDefinition ( param. name ) ,
1123
+ span,
1124
+ } ;
1119
1125
let const_var_id =
1120
1126
self . const_unification_table
1121
1127
. borrow_mut ( )
@@ -1411,8 +1417,16 @@ impl<'a, 'gcx, 'tcx> InferCtxt<'a, 'gcx, 'tcx> {
1411
1417
T : TypeFoldable < ' tcx >
1412
1418
{
1413
1419
let fld_r = |br| self . next_region_var ( LateBoundRegion ( span, br, lbrct) ) ;
1414
- let fld_t = |_| self . next_ty_var ( TypeVariableOrigin :: MiscVariable ( span) ) ;
1415
- let fld_c = |_, ty| self . next_const_var ( ty, ConstVariableOrigin :: MiscVariable ( span) ) ;
1420
+ let fld_t = |_| {
1421
+ self . next_ty_var ( TypeVariableOrigin {
1422
+ kind : TypeVariableOriginKind :: MiscVariable ,
1423
+ span,
1424
+ } )
1425
+ } ;
1426
+ let fld_c = |_, ty| self . next_const_var ( ty, ConstVariableOrigin {
1427
+ kind : ConstVariableOriginKind :: MiscVariable ,
1428
+ span,
1429
+ } ) ;
1416
1430
self . tcx . replace_bound_vars ( value, fld_r, fld_t, fld_c)
1417
1431
}
1418
1432
0 commit comments