Remove ConstVariableOriginKind
This commit is contained in:
parent
34bce07e8e
commit
eb6f856169
10 changed files with 26 additions and 63 deletions
|
@ -21,7 +21,7 @@
|
|||
//!
|
||||
//! [c]: https://rust-lang.github.io/chalk/book/canonical_queries/canonicalization.html
|
||||
|
||||
use crate::infer::{ConstVariableOrigin, ConstVariableOriginKind};
|
||||
use crate::infer::ConstVariableOrigin;
|
||||
use crate::infer::{InferCtxt, RegionVariableOrigin, TypeVariableOrigin};
|
||||
use rustc_index::IndexVec;
|
||||
use rustc_middle::infer::unify_key::EffectVarValue;
|
||||
|
@ -148,7 +148,7 @@ impl<'tcx> InferCtxt<'tcx> {
|
|||
CanonicalVarKind::Const(ui, ty) => self
|
||||
.next_const_var_in_universe(
|
||||
ty,
|
||||
ConstVariableOrigin { kind: ConstVariableOriginKind::MiscVariable, span },
|
||||
ConstVariableOrigin { param_def_id: None, span },
|
||||
universe_map(ui),
|
||||
)
|
||||
.into(),
|
||||
|
|
|
@ -13,9 +13,7 @@ use rustc_hir::def_id::{DefId, LocalDefId};
|
|||
use rustc_hir::intravisit::{self, Visitor};
|
||||
use rustc_hir::{Body, Closure, Expr, ExprKind, FnRetTy, HirId, LetStmt, LocalSource};
|
||||
use rustc_middle::hir::nested_filter;
|
||||
use rustc_middle::infer::unify_key::{
|
||||
ConstVariableOrigin, ConstVariableOriginKind, ConstVariableValue,
|
||||
};
|
||||
use rustc_middle::infer::unify_key::{ConstVariableOrigin, ConstVariableValue};
|
||||
use rustc_middle::ty::adjustment::{Adjust, Adjustment, AutoBorrow};
|
||||
use rustc_middle::ty::print::{FmtPrinter, PrettyPrinter, Print, Printer};
|
||||
use rustc_middle::ty::{
|
||||
|
@ -217,8 +215,8 @@ fn fmt_printer<'a, 'tcx>(infcx: &'a InferCtxt<'tcx>, ns: Namespace) -> FmtPrinte
|
|||
None
|
||||
}
|
||||
ConstVariableValue::Unknown { origin, universe: _ } => {
|
||||
if let ConstVariableOriginKind::ConstParameterDefinition(name, _) = origin.kind {
|
||||
return Some(name);
|
||||
if let Some(def_id) = origin.param_def_id {
|
||||
Some(infcx.tcx.item_name(def_id))
|
||||
} else {
|
||||
None
|
||||
}
|
||||
|
@ -341,11 +339,9 @@ impl<'tcx> InferCtxt<'tcx> {
|
|||
}
|
||||
ConstVariableValue::Unknown { origin, universe: _ } => origin,
|
||||
};
|
||||
if let ConstVariableOriginKind::ConstParameterDefinition(name, def_id) =
|
||||
origin.kind
|
||||
{
|
||||
if let Some(def_id) = origin.param_def_id {
|
||||
return InferenceDiagnosticsData {
|
||||
name: name.to_string(),
|
||||
name: self.tcx.item_name(def_id).to_string(),
|
||||
span: Some(origin.span),
|
||||
kind: UnderspecifiedArgKind::Const { is_parameter: true },
|
||||
parent: InferenceDiagnosticsParentData::for_def_id(self.tcx, def_id),
|
||||
|
@ -555,10 +551,7 @@ impl<'tcx> TypeErrCtxt<'_, 'tcx> {
|
|||
GenericArgKind::Const(arg) => self
|
||||
.next_const_var(
|
||||
arg.ty(),
|
||||
ConstVariableOrigin {
|
||||
span: DUMMY_SP,
|
||||
kind: ConstVariableOriginKind::MiscVariable,
|
||||
},
|
||||
ConstVariableOrigin { span: DUMMY_SP, param_def_id: None },
|
||||
)
|
||||
.into(),
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ use rustc_hir::def_id::{DefId, LocalDefId};
|
|||
use rustc_middle::infer::canonical::{Canonical, CanonicalVarValues};
|
||||
use rustc_middle::infer::unify_key::ConstVariableValue;
|
||||
use rustc_middle::infer::unify_key::EffectVarValue;
|
||||
use rustc_middle::infer::unify_key::{ConstVariableOrigin, ConstVariableOriginKind, ToType};
|
||||
use rustc_middle::infer::unify_key::{ConstVariableOrigin, ToType};
|
||||
use rustc_middle::infer::unify_key::{ConstVidKey, EffectVidKey};
|
||||
use rustc_middle::mir::interpret::{ErrorHandled, EvalToValTreeResult};
|
||||
use rustc_middle::mir::ConstraintCategory;
|
||||
|
@ -1120,13 +1120,7 @@ impl<'tcx> InferCtxt<'tcx> {
|
|||
if is_host_effect {
|
||||
return self.var_for_effect(param);
|
||||
}
|
||||
let origin = ConstVariableOrigin {
|
||||
kind: ConstVariableOriginKind::ConstParameterDefinition(
|
||||
param.name,
|
||||
param.def_id,
|
||||
),
|
||||
span,
|
||||
};
|
||||
let origin = ConstVariableOrigin { param_def_id: Some(param.def_id), span };
|
||||
let const_var_id = self
|
||||
.inner
|
||||
.borrow_mut()
|
||||
|
@ -1417,10 +1411,7 @@ impl<'tcx> InferCtxt<'tcx> {
|
|||
self.infcx
|
||||
.next_const_var(
|
||||
ty,
|
||||
ConstVariableOrigin {
|
||||
kind: ConstVariableOriginKind::MiscVariable,
|
||||
span: self.span,
|
||||
},
|
||||
ConstVariableOrigin { param_def_id: None, span: self.span },
|
||||
)
|
||||
.into()
|
||||
})
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
use rustc_middle::infer::unify_key::{ConstVariableOriginKind, ConstVariableValue, ConstVidKey};
|
||||
use rustc_middle::infer::unify_key::{ConstVariableValue, ConstVidKey};
|
||||
use rustc_middle::ty::fold::{TypeFoldable, TypeFolder, TypeSuperFoldable};
|
||||
use rustc_middle::ty::{self, ConstVid, FloatVid, IntVid, RegionVid, Ty, TyCtxt, TyVid};
|
||||
|
||||
|
@ -33,10 +33,9 @@ fn const_vars_since_snapshot<'tcx>(
|
|||
range.start.vid..range.end.vid,
|
||||
(range.start.index()..range.end.index())
|
||||
.map(|index| match table.probe_value(ConstVid::from_u32(index)) {
|
||||
ConstVariableValue::Known { value: _ } => ConstVariableOrigin {
|
||||
kind: ConstVariableOriginKind::MiscVariable,
|
||||
span: rustc_span::DUMMY_SP,
|
||||
},
|
||||
ConstVariableValue::Known { value: _ } => {
|
||||
ConstVariableOrigin { param_def_id: None, span: rustc_span::DUMMY_SP }
|
||||
}
|
||||
ConstVariableValue::Unknown { origin, universe: _ } => origin,
|
||||
})
|
||||
.collect(),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue