From 4833ce8673957a0a3a057bfa637298cee54ca7dd Mon Sep 17 00:00:00 2001 From: Boxy Date: Mon, 21 Nov 2022 04:32:07 +0000 Subject: [PATCH] fmt --- compiler/rustc_middle/src/ty/abstract_const.rs | 2 +- compiler/rustc_middle/src/ty/relate.rs | 4 ++-- compiler/rustc_privacy/src/lib.rs | 5 +++-- .../rustc_trait_selection/src/traits/const_evaluatable.rs | 2 +- src/test/ui/const-generics/issues/issue-83249.rs | 2 +- 5 files changed, 8 insertions(+), 7 deletions(-) diff --git a/compiler/rustc_middle/src/ty/abstract_const.rs b/compiler/rustc_middle/src/ty/abstract_const.rs index 7c1029e6604..e297a01e90e 100644 --- a/compiler/rustc_middle/src/ty/abstract_const.rs +++ b/compiler/rustc_middle/src/ty/abstract_const.rs @@ -35,7 +35,7 @@ TrivialTypeTraversalAndLiftImpls! { pub type BoundAbstractConst<'tcx> = Result>>, ErrorGuaranteed>; impl<'tcx> TyCtxt<'tcx> { - /// Returns a const with substs applied by + /// Returns a const without substs applied fn bound_abstract_const(self, uv: ty::WithOptConstParam) -> BoundAbstractConst<'tcx> { let ac = if let Some((did, param_did)) = uv.as_const_arg() { self.thir_abstract_const_of_const_arg((did, param_did)) diff --git a/compiler/rustc_middle/src/ty/relate.rs b/compiler/rustc_middle/src/ty/relate.rs index 84eeb81f1db..decd99de3c4 100644 --- a/compiler/rustc_middle/src/ty/relate.rs +++ b/compiler/rustc_middle/src/ty/relate.rs @@ -647,7 +647,7 @@ pub fn super_relate_consts<'tcx, R: TypeRelation<'tcx>>( (ty::ConstKind::Placeholder(p1), ty::ConstKind::Placeholder(p2)) => p1 == p2, (ty::ConstKind::Value(a_val), ty::ConstKind::Value(b_val)) => a_val == b_val, - (ty::ConstKind::Unevaluated(_au), ty::ConstKind::Unevaluated(_bu)) + (ty::ConstKind::Unevaluated(_), ty::ConstKind::Unevaluated(_)) if tcx.features().generic_const_exprs => { if let (Ok(Some(a)), Ok(Some(b))) = ( @@ -681,7 +681,7 @@ pub fn super_relate_consts<'tcx, R: TypeRelation<'tcx>>( (ty::ConstKind::Expr(ae), ty::ConstKind::Expr(be)) => { let r = relation; - // FIXME(julianknodt): is it possible to relate two consts which are not identical + // FIXME(generic_const_exprs): is it possible to relate two consts which are not identical // exprs? Should we care about that? let expr = match (ae, be) { (Expr::Binop(a_op, al, ar), Expr::Binop(b_op, bl, br)) diff --git a/compiler/rustc_privacy/src/lib.rs b/compiler/rustc_privacy/src/lib.rs index f8e99006923..eebff421b81 100644 --- a/compiler/rustc_privacy/src/lib.rs +++ b/compiler/rustc_privacy/src/lib.rs @@ -286,8 +286,9 @@ where fn visit_const(&mut self, c: Const<'tcx>) -> ControlFlow { self.visit_ty(c.ty())?; let tcx = self.def_id_visitor.tcx(); - if let ty::ConstKind::Unevaluated(uv) = c.kind() && - let Ok(Some(ct)) = tcx.expand_unevaluated_abstract_const(uv.def, uv.substs) { + if let ty::ConstKind::Unevaluated(uv) = c.kind() + && let Ok(Some(ct)) = tcx.expand_unevaluated_abstract_const(uv.def, uv.substs) + { ct.super_visit_with(self)?; } ControlFlow::CONTINUE diff --git a/compiler/rustc_trait_selection/src/traits/const_evaluatable.rs b/compiler/rustc_trait_selection/src/traits/const_evaluatable.rs index 5df1f85ec41..d72e5c7a11c 100644 --- a/compiler/rustc_trait_selection/src/traits/const_evaluatable.rs +++ b/compiler/rustc_trait_selection/src/traits/const_evaluatable.rs @@ -78,7 +78,7 @@ pub fn is_const_evaluatable<'tcx>( // compilation with a useful error. Err(_) if tcx.sess.is_nightly_build() && let Ok(Some(ac)) = tcx.expand_abstract_consts(ct) - && let ty::ConstKind::Expr(_) = ac.kind() => + && let ty::ConstKind::Expr(_) = ac.kind() => { tcx.sess .struct_span_fatal( diff --git a/src/test/ui/const-generics/issues/issue-83249.rs b/src/test/ui/const-generics/issues/issue-83249.rs index a16b28253b5..65148c55ee5 100644 --- a/src/test/ui/const-generics/issues/issue-83249.rs +++ b/src/test/ui/const-generics/issues/issue-83249.rs @@ -15,7 +15,7 @@ fn foo(_: [u8; T::N]) -> T { pub fn bar() { let _: u8 = foo([0; 1]); - + let _ = foo([0; 1]); //~^ ERROR type annotations needed }