Rollup merge of #132366 - compiler-errors:do-not-const-check, r=fee1-dead
Do not enforce `~const` constness effects in typeck if `rustc_do_not_const_check` Fixes a slight inconsistency between HIR and MIR enforcement of `~const` :D r? `@rust-lang/project-const-traits`
This commit is contained in:
commit
39086e4290
@ -851,6 +851,11 @@ pub(super) fn enforce_context_effects(
|
||||
return;
|
||||
}
|
||||
|
||||
// If we have `rustc_do_not_const_check`, do not check `~const` bounds.
|
||||
if self.tcx.has_attr(self.body_id, sym::rustc_do_not_const_check) {
|
||||
return;
|
||||
}
|
||||
|
||||
let host = match self.tcx.hir().body_const_context(self.body_id) {
|
||||
Some(hir::ConstContext::Const { .. } | hir::ConstContext::Static(_)) => {
|
||||
ty::BoundConstness::Const
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
#![feature(const_trait_impl, rustc_attrs)]
|
||||
#![feature(const_trait_impl, rustc_attrs, effects)]
|
||||
//~^ WARN the feature `effects` is incomplete
|
||||
|
||||
#[const_trait]
|
||||
trait IntoIter {
|
||||
|
11
tests/ui/traits/const-traits/do-not-const-check.stderr
Normal file
11
tests/ui/traits/const-traits/do-not-const-check.stderr
Normal file
@ -0,0 +1,11 @@
|
||||
warning: the feature `effects` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/do-not-const-check.rs:2:43
|
||||
|
|
||||
LL | #![feature(const_trait_impl, rustc_attrs, effects)]
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: see issue #102090 <https://github.com/rust-lang/rust/issues/102090> for more information
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
Loading…
Reference in New Issue
Block a user