Skip to content

Commit 94c1920

Browse files
committed
Stabilise inline_const
1 parent e936289 commit 94c1920

File tree

16 files changed

+11
-68
lines changed

16 files changed

+11
-68
lines changed

compiler/rustc_ast_passes/src/feature_gate.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -556,7 +556,6 @@ pub fn check_crate(krate: &ast::Crate, sess: &Session, features: &Features) {
556556
half_open_range_patterns_in_slices,
557557
"half-open range patterns in slices are unstable"
558558
);
559-
gate_all!(inline_const, "inline-const is experimental");
560559
gate_all!(inline_const_pat, "inline-const in pattern position is experimental");
561560
gate_all!(associated_const_equality, "associated const equality is incomplete");
562561
gate_all!(yeet_expr, "`do yeet` expression is experimental");

compiler/rustc_feature/src/accepted.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,8 @@ declare_features! (
211211
(accepted, inclusive_range_syntax, "1.26.0", Some(28237)),
212212
/// Allows inferring outlives requirements (RFC 2093).
213213
(accepted, infer_outlives_requirements, "1.30.0", Some(44493)),
214+
/// Allow anonymous constants from an inline `const` block
215+
(accepted, inline_const, "CURRENT_RUSTC_VERSION", Some(76001)),
214216
/// Allows irrefutable patterns in `if let` and `while let` statements (RFC 2086).
215217
(accepted, irrefutable_let_patterns, "1.33.0", Some(44495)),
216218
/// Allows `#[instruction_set(_)]` attribute.

compiler/rustc_feature/src/unstable.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -501,8 +501,6 @@ declare_features! (
501501
(unstable, impl_trait_in_fn_trait_return, "1.64.0", Some(99697)),
502502
/// Allows associated types in inherent impls.
503503
(incomplete, inherent_associated_types, "1.52.0", Some(8995)),
504-
/// Allow anonymous constants from an inline `const` block
505-
(unstable, inline_const, "1.49.0", Some(76001)),
506504
/// Allow anonymous constants from an inline `const` block in pattern position
507505
(unstable, inline_const_pat, "1.58.0", Some(76001)),
508506
/// Allows using `pointer` and `reference` in intra-doc links

compiler/rustc_middle/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
#![feature(coroutines)]
3838
#![feature(stmt_expr_attributes)]
3939
#![feature(if_let_guard)]
40-
#![feature(inline_const)]
40+
#![cfg_attr(bootstrap, feature(inline_const))]
4141
#![feature(iter_from_coroutine)]
4242
#![feature(negative_impls)]
4343
#![feature(never_type)]

compiler/rustc_mir_transform/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#![feature(cow_is_borrowed)]
55
#![feature(decl_macro)]
66
#![feature(impl_trait_in_assoc_type)]
7-
#![feature(inline_const)]
7+
#![cfg_attr(bootstrap, feature(inline_const))]
88
#![feature(is_sorted)]
99
#![feature(let_chains)]
1010
#![feature(map_try_insert)]

compiler/rustc_parse/src/parser/mod.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1252,8 +1252,6 @@ impl<'a> Parser<'a> {
12521252
fn parse_const_block(&mut self, span: Span, pat: bool) -> PResult<'a, P<Expr>> {
12531253
if pat {
12541254
self.psess.gated_spans.gate(sym::inline_const_pat, span);
1255-
} else {
1256-
self.psess.gated_spans.gate(sym::inline_const, span);
12571255
}
12581256
self.eat_keyword(kw::Const);
12591257
let (attrs, blk) = self.parse_inner_attrs_and_block()?;

compiler/rustc_serialize/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#![cfg_attr(bootstrap, feature(associated_type_bounds))]
1212
#![feature(const_option)]
1313
#![feature(core_intrinsics)]
14-
#![feature(inline_const)]
14+
#![cfg_attr(bootstrap, feature(inline_const))]
1515
#![feature(min_specialization)]
1616
#![feature(never_type)]
1717
#![feature(ptr_sub_ptr)]

library/alloc/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,6 @@
128128
#![feature(fn_traits)]
129129
#![feature(hasher_prefixfree_extras)]
130130
#![feature(hint_assert_unchecked)]
131-
#![feature(inline_const)]
132131
#![feature(inplace_iteration)]
133132
#![feature(iter_advance_by)]
134133
#![feature(iter_next_chunk)]
@@ -169,6 +168,7 @@
169168
// Language features:
170169
// tidy-alphabetical-start
171170
#![cfg_attr(bootstrap, feature(associated_type_bounds))]
171+
#![cfg_attr(bootstrap, feature(inline_const))]
172172
#![cfg_attr(not(bootstrap), rustc_preserve_ub_checks)]
173173
#![cfg_attr(not(test), feature(coroutine_trait))]
174174
#![cfg_attr(test, feature(panic_update_hook))]

library/core/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@
201201
//
202202
// Language features:
203203
// tidy-alphabetical-start
204+
#![cfg_attr(bootstrap, feature(inline_const))]
204205
#![feature(abi_unadjusted)]
205206
#![feature(adt_const_params)]
206207
#![feature(allow_internal_unsafe)]
@@ -231,7 +232,6 @@
231232
#![feature(fundamental)]
232233
#![feature(generic_arg_infer)]
233234
#![feature(if_let_guard)]
234-
#![feature(inline_const)]
235235
#![feature(intra_doc_pointers)]
236236
#![feature(intrinsics)]
237237
#![feature(lang_items)]

library/core/src/sync/atomic.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -511,7 +511,7 @@ impl AtomicBool {
511511
/// # Examples
512512
///
513513
/// ```
514-
/// #![feature(atomic_from_mut, inline_const)]
514+
/// #![feature(atomic_from_mut)]
515515
/// use std::sync::atomic::{AtomicBool, Ordering};
516516
///
517517
/// let mut some_bools = [const { AtomicBool::new(false) }; 10];
@@ -1313,7 +1313,7 @@ impl<T> AtomicPtr<T> {
13131313
/// # Examples
13141314
///
13151315
/// ```
1316-
/// #![feature(atomic_from_mut, inline_const)]
1316+
/// #![feature(atomic_from_mut)]
13171317
/// use std::ptr::null_mut;
13181318
/// use std::sync::atomic::{AtomicPtr, Ordering};
13191319
///
@@ -2303,7 +2303,7 @@ macro_rules! atomic_int {
23032303
/// # Examples
23042304
///
23052305
/// ```
2306-
/// #![feature(atomic_from_mut, inline_const)]
2306+
/// #![feature(atomic_from_mut)]
23072307
#[doc = concat!($extra_feature, "use std::sync::atomic::{", stringify!($atomic_type), ", Ordering};")]
23082308
///
23092309
#[doc = concat!("let mut some_ints = [const { ", stringify!($atomic_type), "::new(0) }; 10];")]

library/core/tests/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
#![feature(hasher_prefixfree_extras)]
4747
#![feature(hashmap_internals)]
4848
#![feature(try_find)]
49-
#![feature(inline_const)]
49+
#![cfg_attr(bootstrap, feature(inline_const))]
5050
#![feature(is_sorted)]
5151
#![feature(layout_for_ptr)]
5252
#![feature(pattern)]

library/portable-simd/crates/core_simd/src/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
convert_float_to_int,
88
core_intrinsics,
99
decl_macro,
10-
inline_const,
1110
intra_doc_pointers,
1211
repr_simd,
1312
simd_ffi,

src/doc/unstable-book/src/language-features/inline-const-pat.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22

33
The tracking issue for this feature is: [#76001]
44

5-
See also [`inline_const`](inline-const.md)
6-
75
------
86

97
This feature allows you to use inline constant expressions in pattern position:

src/doc/unstable-book/src/language-features/inline-const.md

Lines changed: 0 additions & 32 deletions
This file was deleted.

tests/ui/feature-gates/feature-gate-inline_const.rs

Lines changed: 0 additions & 6 deletions
This file was deleted.

tests/ui/feature-gates/feature-gate-inline_const.stderr

Lines changed: 0 additions & 13 deletions
This file was deleted.

0 commit comments

Comments
 (0)