Skip to content

Commit fcc2bad

Browse files
BoxyUwUlcnr
authored andcommitted
rename const_evaluatable_checked to generic_const_exprs
1 parent dbb0fe9 commit fcc2bad

File tree

146 files changed

+178
-213
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

146 files changed

+178
-213
lines changed

compiler/rustc_feature/src/active.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -551,9 +551,6 @@ declare_features! (
551551
/// Allows `if let` guard in match arms.
552552
(active, if_let_guard, "1.47.0", Some(51114), None),
553553

554-
/// Allows non-trivial generic constants which have to be manually propagated upwards.
555-
(incomplete, const_evaluatable_checked, "1.48.0", Some(76560), None),
556-
557554
/// Allows basic arithmetic on floating point types in a `const fn`.
558555
(active, const_fn_floating_point_arithmetic, "1.48.0", Some(57241), None),
559556

@@ -679,6 +676,9 @@ declare_features! (
679676
/// Allows using doc(primitive) without a future-incompat warning
680677
(active, doc_primitive, "1.56.0", Some(88070), None),
681678

679+
/// Allows non-trivial generic constants which have to have wfness manually propagated to callers
680+
(incomplete, generic_const_exprs, "1.56.0", Some(76560), None),
681+
682682
// -------------------------------------------------------------------------
683683
// feature-group-end: actual feature gates
684684
// -------------------------------------------------------------------------

compiler/rustc_feature/src/removed.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,9 +128,13 @@ declare_features! (
128128
Some("Removed in favor of `~const` bound in #![feature(const_trait_impl)]")),
129129
/// Allows `#[no_debug]`.
130130
(removed, no_debug, "1.43.0", Some(29721), None, Some("removed due to lack of demand")),
131+
/// Lazily evaluate constants. This allows constants to depend on type parameters.
132+
(removed, lazy_normalization_consts, "1.46.0", Some(72219), None, Some("superseded by `generic_const_exprs`")),
131133
/// Allows comparing raw pointers during const eval.
132134
(removed, const_compare_raw_pointers, "1.46.0", Some(53020), None,
133135
Some("cannot be allowed in const eval in any meaningful way")),
136+
/// Allows non-trivial generic constants which have to be manually propagated upwards.
137+
(removed, const_evaluatable_checked, "1.48.0", Some(76560), None, Some("renamed to `generic_const_exprs`")),
134138
/// Allows using the `#[link_args]` attribute.
135139
(removed, link_args, "1.53.0", Some(29596), None,
136140
Some("removed in favor of using `-C link-arg=ARG` on command line, \

compiler/rustc_middle/src/ty/relate.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -577,13 +577,13 @@ pub fn super_relate_consts<R: TypeRelation<'tcx>>(
577577
}
578578

579579
(ty::ConstKind::Unevaluated(au), ty::ConstKind::Unevaluated(bu))
580-
if tcx.features().const_evaluatable_checked =>
580+
if tcx.features().generic_const_exprs =>
581581
{
582582
tcx.try_unify_abstract_consts((au.shrink(), bu.shrink()))
583583
}
584584

585585
// While this is slightly incorrect, it shouldn't matter for `min_const_generics`
586-
// and is the better alternative to waiting until `const_evaluatable_checked` can
586+
// and is the better alternative to waiting until `generic_const_exprs` can
587587
// be stabilized.
588588
(ty::ConstKind::Unevaluated(au), ty::ConstKind::Unevaluated(bu))
589589
if au.def == bu.def && au.promoted == bu.promoted =>

compiler/rustc_privacy/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ where
136136
}
137137
ty::PredicateKind::RegionOutlives(..) => ControlFlow::CONTINUE,
138138
ty::PredicateKind::ConstEvaluatable(uv)
139-
if self.def_id_visitor.tcx().features().const_evaluatable_checked =>
139+
if self.def_id_visitor.tcx().features().generic_const_exprs =>
140140
{
141141
let tcx = self.def_id_visitor.tcx();
142142
if let Ok(Some(ct)) = AbstractConst::new(tcx, uv) {
@@ -1809,7 +1809,7 @@ impl SearchInterfaceForPrivateItemsVisitor<'tcx> {
18091809
self.visit(self.tcx.type_of(param.def_id));
18101810
}
18111811
}
1812-
// FIXME(const_evaluatable_checked): May want to look inside const here
1812+
// FIXME(generic_const_exprs): May want to look inside const here
18131813
GenericParamDefKind::Const { .. } => {
18141814
self.visit(self.tcx.type_of(param.def_id));
18151815
}

compiler/rustc_resolve/src/diagnostics.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -506,8 +506,8 @@ impl<'a> Resolver<'a> {
506506

507507
if self.session.is_nightly_build() {
508508
err.help(
509-
"use `#![feature(const_generics)]` and `#![feature(const_evaluatable_checked)]` \
510-
to allow generic const expressions"
509+
"use `#![feature(const_generics)]` and `#![feature(generic_const_exprs)]` \
510+
to allow generic const expressions",
511511
);
512512
}
513513

compiler/rustc_resolve/src/lib.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2734,9 +2734,7 @@ impl<'a> Resolver<'a> {
27342734
ConstantItemRibKind(trivial, _) => {
27352735
let features = self.session.features_untracked();
27362736
// HACK(min_const_generics): We currently only allow `N` or `{ N }`.
2737-
if !(trivial
2738-
|| features.const_generics
2739-
|| features.lazy_normalization_consts)
2737+
if !(trivial || features.const_generics || features.generic_const_exprs)
27402738
{
27412739
// HACK(min_const_generics): If we encounter `Self` in an anonymous constant
27422740
// we can't easily tell if it's generic at this stage, so we instead remember
@@ -2809,9 +2807,7 @@ impl<'a> Resolver<'a> {
28092807
ConstantItemRibKind(trivial, _) => {
28102808
let features = self.session.features_untracked();
28112809
// HACK(min_const_generics): We currently only allow `N` or `{ N }`.
2812-
if !(trivial
2813-
|| features.const_generics
2814-
|| features.lazy_normalization_consts)
2810+
if !(trivial || features.const_generics || features.generic_const_exprs)
28152811
{
28162812
if record_used {
28172813
self.report_error(

compiler/rustc_span/src/symbol.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -662,6 +662,7 @@ symbols! {
662662
generators,
663663
generic_arg_infer,
664664
generic_associated_types,
665+
generic_const_exprs,
665666
generic_param_attrs,
666667
get_context,
667668
global_allocator,

compiler/rustc_trait_selection/src/traits/const_evaluatable.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ pub fn is_const_evaluatable<'cx, 'tcx>(
3434
span: Span,
3535
) -> Result<(), NotConstEvaluatable> {
3636
debug!("is_const_evaluatable({:?})", uv);
37-
if infcx.tcx.features().const_evaluatable_checked {
37+
if infcx.tcx.features().generic_const_exprs {
3838
let tcx = infcx.tcx;
3939
match AbstractConst::new(tcx, uv)? {
4040
// We are looking at a generic abstract constant.
@@ -537,9 +537,9 @@ pub(super) fn mir_abstract_const<'tcx>(
537537
tcx: TyCtxt<'tcx>,
538538
def: ty::WithOptConstParam<LocalDefId>,
539539
) -> Result<Option<&'tcx [mir::abstract_const::Node<'tcx>]>, ErrorReported> {
540-
if tcx.features().const_evaluatable_checked {
540+
if tcx.features().generic_const_exprs {
541541
match tcx.def_kind(def.did) {
542-
// FIXME(const_evaluatable_checked): We currently only do this for anonymous constants,
542+
// FIXME(generic_const_exprs): We currently only do this for anonymous constants,
543543
// meaning that we do not look into associated constants. I(@lcnr) am not yet sure whether
544544
// we want to look into them or treat them as opaque projections.
545545
//
@@ -568,7 +568,7 @@ pub(super) fn try_unify_abstract_consts<'tcx>(
568568
Ok(false)
569569
})()
570570
.unwrap_or_else(|ErrorReported| true)
571-
// FIXME(const_evaluatable_checked): We should instead have this
571+
// FIXME(generic_const_exprs): We should instead have this
572572
// method return the resulting `ty::Const` and return `ConstKind::Error`
573573
// on `ErrorReported`.
574574
}
@@ -656,13 +656,13 @@ pub(super) fn try_unify<'tcx>(
656656
// branch should only be taking when dealing with associated constants, at
657657
// which point directly comparing them seems like the desired behavior.
658658
//
659-
// FIXME(const_evaluatable_checked): This isn't actually the case.
659+
// FIXME(generic_const_exprs): This isn't actually the case.
660660
// We also take this branch for concrete anonymous constants and
661661
// expand generic anonymous constants with concrete substs.
662662
(ty::ConstKind::Unevaluated(a_uv), ty::ConstKind::Unevaluated(b_uv)) => {
663663
a_uv == b_uv
664664
}
665-
// FIXME(const_evaluatable_checked): We may want to either actually try
665+
// FIXME(generic_const_exprs): We may want to either actually try
666666
// to evaluate `a_ct` and `b_ct` if they are are fully concrete or something like
667667
// this, for now we just return false here.
668668
_ => false,

compiler/rustc_trait_selection/src/traits/error_reporting/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -794,7 +794,7 @@ impl<'a, 'tcx> InferCtxtExt<'tcx> for InferCtxt<'a, 'tcx> {
794794
)
795795
}
796796
SelectionError::NotConstEvaluatable(NotConstEvaluatable::MentionsParam) => {
797-
if !self.tcx.features().const_evaluatable_checked {
797+
if !self.tcx.features().generic_const_exprs {
798798
let mut err = self.tcx.sess.struct_span_err(
799799
span,
800800
"constant expression depends on a generic parameter",
@@ -803,7 +803,7 @@ impl<'a, 'tcx> InferCtxtExt<'tcx> for InferCtxt<'a, 'tcx> {
803803
// issue. However, this is currently not actually possible
804804
// (see https://github.com/rust-lang/rust/issues/66962#issuecomment-575907083).
805805
//
806-
// Note that with `feature(const_evaluatable_checked)` this case should not
806+
// Note that with `feature(generic_const_exprs)` this case should not
807807
// be reachable.
808808
err.note("this may fail depending on what value the parameter takes");
809809
err.emit();

compiler/rustc_trait_selection/src/traits/fulfill.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,7 @@ impl<'a, 'b, 'tcx> FulfillProcessor<'a, 'b, 'tcx> {
572572
ty::PredicateKind::ConstEquate(c1, c2) => {
573573
debug!(?c1, ?c2, "equating consts");
574574
let tcx = self.selcx.tcx();
575-
if tcx.features().const_evaluatable_checked {
575+
if tcx.features().generic_const_exprs {
576576
// FIXME: we probably should only try to unify abstract constants
577577
// if the constants depend on generic parameters.
578578
//

compiler/rustc_trait_selection/src/traits/object_safety.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -855,7 +855,7 @@ fn contains_illegal_self_type_reference<'tcx, T: TypeFoldable<'tcx>>(
855855

856856
fn visit_predicate(&mut self, pred: ty::Predicate<'tcx>) -> ControlFlow<Self::BreakTy> {
857857
if let ty::PredicateKind::ConstEvaluatable(ct) = pred.kind().skip_binder() {
858-
// FIXME(const_evaluatable_checked): We should probably deduplicate the logic for
858+
// FIXME(generic_const_exprs): We should probably deduplicate the logic for
859859
// `AbstractConst`s here, it might make sense to change `ConstEvaluatable` to
860860
// take a `ty::Const` instead.
861861
use rustc_middle::mir::abstract_const::Node;

compiler/rustc_trait_selection/src/traits/select/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -619,7 +619,7 @@ impl<'cx, 'tcx> SelectionContext<'cx, 'tcx> {
619619
ty::PredicateKind::ConstEquate(c1, c2) => {
620620
debug!(?c1, ?c2, "evaluate_predicate_recursively: equating consts");
621621

622-
if self.tcx().features().const_evaluatable_checked {
622+
if self.tcx().features().generic_const_exprs {
623623
// FIXME: we probably should only try to unify abstract constants
624624
// if the constants depend on generic parameters.
625625
//

compiler/rustc_typeck/src/collect.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2300,7 +2300,7 @@ fn gather_explicit_predicates_of(tcx: TyCtxt<'_>, def_id: DefId) -> ty::GenericP
23002300
}
23012301
}
23022302

2303-
if tcx.features().const_evaluatable_checked {
2303+
if tcx.features().generic_const_exprs {
23042304
predicates.extend(const_evaluatable_predicates_of(tcx, def_id.expect_local()));
23052305
}
23062306

src/test/incremental/const-generics/hash-tyvid-regression-1.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: cfail
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44
// regression test for #77650
55
fn c<T, const N: std::num::NonZeroUsize>()

src/test/incremental/const-generics/hash-tyvid-regression-2.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: cfail
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44
// regression test for #77650
55
struct C<T, const N: core::num::NonZeroUsize>([T; N.get()])

src/test/incremental/const-generics/hash-tyvid-regression-3.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: cfail
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44
// regression test for #79251
55
struct Node<const D: usize>

src/test/incremental/const-generics/hash-tyvid-regression-4.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: cfail
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44
// regression test for #79251
55
#[derive(Debug)]

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-1.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: cfail
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features, unused_braces)]
44

55
trait Delegates<T> {}

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-2.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: rpass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
struct Z;

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-3.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: rpass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
use std::{convert::TryFrom, num::NonZeroUsize};

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-82034.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: rpass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44
pub trait IsTrue {}
55
pub trait IsFalse {}

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-1.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: rpass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
pub struct Ref<'a, const NUM: usize>(&'a i32);

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-2.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// revisions: cfail
22
#![allow(incomplete_features)]
3-
#![feature(const_generics, const_evaluatable_checked)]
3+
#![feature(const_generics, generic_const_exprs)]
44

55
pub struct Ref<'a>(&'a i32);
66

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-3.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: rpass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
fn test<const SIZE: usize>() {}

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-86953.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: rpass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
struct Foo;

src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-88022.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// revisions: cfail
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features, unused_braces)]
44

55
struct Buffer<T, const S: usize>

src/test/rustdoc/const-generics/const-evaluatable-checked.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#![crate_name = "foo"]
2-
#![feature(const_evaluatable_checked, const_generics)]
2+
#![feature(generic_const_exprs, const_generics)]
33
#![allow(incomplete_features)]
44
// make sure that `ConstEvaluatable` predicates dont cause rustdoc to ICE #77647
55
// @has foo/struct.Ice.html '//pre[@class="rust struct"]' \

src/test/ui/associated-consts/associated-const-type-parameter-arrays.stderr

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ LL | let _array: [u32; <A as Foo>::Y];
55
| ^ cannot perform const operation using `A`
66
|
77
= note: type parameters may not be used in const expressions
8-
= help: use `#![feature(const_generics)]` and `#![feature(const_evaluatable_checked)]` to allow generic const expressions
8+
= help: use `#![feature(const_generics)]` and `#![feature(generic_const_exprs)]` to allow generic const expressions
99

1010
error: aborting due to previous error
1111

src/test/ui/associated-item/associated-item-duplicate-bounds.stderr

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ LL | links: [u32; A::LINKS], // Shouldn't suggest bounds already there.
55
| ^^^^^^^^ cannot perform const operation using `A`
66
|
77
= note: type parameters may not be used in const expressions
8-
= help: use `#![feature(const_generics)]` and `#![feature(const_evaluatable_checked)]` to allow generic const expressions
8+
= help: use `#![feature(const_generics)]` and `#![feature(generic_const_exprs)]` to allow generic const expressions
99

1010
error: aborting due to previous error
1111

src/test/ui/const-generics/array-size-in-generic-struct-param.min.stderr

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ LL | struct ArithArrayLen<const N: usize>([u32; 0 + N]);
55
| ^ cannot perform const operation using `N`
66
|
77
= help: const parameters may only be used as standalone arguments, i.e. `N`
8-
= help: use `#![feature(const_generics)]` and `#![feature(const_evaluatable_checked)]` to allow generic const expressions
8+
= help: use `#![feature(const_generics)]` and `#![feature(generic_const_exprs)]` to allow generic const expressions
99

1010
error: generic parameters may not be used in const operations
1111
--> $DIR/array-size-in-generic-struct-param.rs:19:15
@@ -14,7 +14,7 @@ LL | arr: [u8; CFG.arr_size],
1414
| ^^^ cannot perform const operation using `CFG`
1515
|
1616
= help: const parameters may only be used as standalone arguments, i.e. `CFG`
17-
= help: use `#![feature(const_generics)]` and `#![feature(const_evaluatable_checked)]` to allow generic const expressions
17+
= help: use `#![feature(const_generics)]` and `#![feature(generic_const_exprs)]` to allow generic const expressions
1818

1919
error: `Config` is forbidden as the type of a const generic parameter
2020
--> $DIR/array-size-in-generic-struct-param.rs:17:21

src/test/ui/const-generics/auxiliary/generics_of_parent.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#![feature(const_generics, const_evaluatable_checked)]
1+
#![feature(const_generics, generic_const_exprs)]
22
#![allow(incomplete_features)]
33

44
// library portion of regression test for #87674

src/test/ui/const-generics/auxiliary/generics_of_parent_impl_trait.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#![feature(const_generics, const_evaluatable_checked)]
1+
#![feature(const_generics, generic_const_exprs)]
22
#![allow(incomplete_features)]
33

44
// library portion of testing that `impl Trait<{ expr }>` doesnt

src/test/ui/const-generics/conservative_is_privately_uninhabited_uses_correct_param_env-1.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// run-pass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
// This tests that the `conservative_is_privately_uninhabited` fn doesn't cause

src/test/ui/const-generics/conservative_is_privately_uninhabited_uses_correct_param_env-2.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// run-pass
2-
#![feature(const_generics, const_evaluatable_checked)]
2+
#![feature(const_generics, generic_const_exprs)]
33
#![allow(incomplete_features)]
44

55
// This tests that the `conservative_is_privately_uninhabited` fn doesn't cause

0 commit comments

Comments
 (0)