report_mismatch
did not actually report anymore
This commit is contained in:
parent
e3021eb245
commit
e4622e0608
5 changed files with 15 additions and 11 deletions
|
@ -154,7 +154,7 @@ impl<'tcx> RegionInferenceContext<'tcx> {
|
|||
if prev.ty != ty {
|
||||
let guar = ty.error_reported().err().unwrap_or_else(|| {
|
||||
let (Ok(e) | Err(e)) = prev
|
||||
.report_mismatch(
|
||||
.build_mismatch_error(
|
||||
&OpaqueHiddenType { ty, span: concrete_type.span },
|
||||
opaque_type_key.def_id,
|
||||
infcx.tcx,
|
||||
|
|
|
@ -478,7 +478,7 @@ fn sanity_check_found_hidden_type<'tcx>(
|
|||
} else {
|
||||
let span = tcx.def_span(key.def_id);
|
||||
let other = ty::OpaqueHiddenType { ty: hidden_ty, span };
|
||||
Err(ty.report_mismatch(&other, key.def_id, tcx)?.emit())
|
||||
Err(ty.build_mismatch_error(&other, key.def_id, tcx)?.emit())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -59,7 +59,7 @@ pub(super) fn find_opaque_ty_constraints_for_impl_trait_in_assoc_type(
|
|||
if !hidden.ty.references_error() {
|
||||
for concrete_type in locator.typeck_types {
|
||||
if concrete_type.ty != tcx.erase_regions(hidden.ty) {
|
||||
if let Ok(d) = hidden.report_mismatch(&concrete_type, def_id, tcx) {
|
||||
if let Ok(d) = hidden.build_mismatch_error(&concrete_type, def_id, tcx) {
|
||||
d.emit();
|
||||
}
|
||||
}
|
||||
|
@ -135,7 +135,7 @@ pub(super) fn find_opaque_ty_constraints_for_tait(tcx: TyCtxt<'_>, def_id: Local
|
|||
if !hidden.ty.references_error() {
|
||||
for concrete_type in locator.typeck_types {
|
||||
if concrete_type.ty != tcx.erase_regions(hidden.ty) {
|
||||
if let Ok(d) = hidden.report_mismatch(&concrete_type, def_id, tcx) {
|
||||
if let Ok(d) = hidden.build_mismatch_error(&concrete_type, def_id, tcx) {
|
||||
d.emit();
|
||||
}
|
||||
}
|
||||
|
@ -289,7 +289,7 @@ impl TaitConstraintLocator<'_> {
|
|||
if let Some(prev) = &mut self.found {
|
||||
if concrete_type.ty != prev.ty {
|
||||
let (Ok(guar) | Err(guar)) = prev
|
||||
.report_mismatch(&concrete_type, self.def_id, self.tcx)
|
||||
.build_mismatch_error(&concrete_type, self.def_id, self.tcx)
|
||||
.map(|d| d.emit());
|
||||
prev.ty = Ty::new_error(self.tcx, guar);
|
||||
}
|
||||
|
@ -364,7 +364,7 @@ pub(super) fn find_opaque_ty_constraints_for_rpit<'tcx>(
|
|||
);
|
||||
if let Some(prev) = &mut hir_opaque_ty {
|
||||
if concrete_type.ty != prev.ty {
|
||||
if let Ok(d) = prev.report_mismatch(&concrete_type, def_id, tcx) {
|
||||
if let Ok(d) = prev.build_mismatch_error(&concrete_type, def_id, tcx) {
|
||||
d.stash(
|
||||
tcx.def_span(opaque_type_key.def_id),
|
||||
StashKey::OpaqueHiddenTypeMismatch,
|
||||
|
@ -441,7 +441,9 @@ impl RpitConstraintChecker<'_> {
|
|||
debug!(?concrete_type, "found constraint");
|
||||
|
||||
if concrete_type.ty != self.found.ty {
|
||||
if let Ok(d) = self.found.report_mismatch(&concrete_type, self.def_id, self.tcx) {
|
||||
if let Ok(d) =
|
||||
self.found.build_mismatch_error(&concrete_type, self.def_id, self.tcx)
|
||||
{
|
||||
d.emit();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -589,9 +589,11 @@ impl<'cx, 'tcx> WritebackCx<'cx, 'tcx> {
|
|||
&& last_opaque_ty.ty != hidden_type.ty
|
||||
{
|
||||
assert!(!self.fcx.next_trait_solver());
|
||||
if let Ok(d) =
|
||||
hidden_type.report_mismatch(&last_opaque_ty, opaque_type_key.def_id, self.tcx())
|
||||
{
|
||||
if let Ok(d) = hidden_type.build_mismatch_error(
|
||||
&last_opaque_ty,
|
||||
opaque_type_key.def_id,
|
||||
self.tcx(),
|
||||
) {
|
||||
d.stash(
|
||||
self.tcx().def_span(opaque_type_key.def_id),
|
||||
StashKey::OpaqueHiddenTypeMismatch,
|
||||
|
|
|
@ -840,7 +840,7 @@ pub struct OpaqueHiddenType<'tcx> {
|
|||
}
|
||||
|
||||
impl<'tcx> OpaqueHiddenType<'tcx> {
|
||||
pub fn report_mismatch(
|
||||
pub fn build_mismatch_error(
|
||||
&self,
|
||||
other: &Self,
|
||||
opaque_def_id: LocalDefId,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue