Skip to content

Commit 2a84e31

Browse files
committed
stabilize const_ascii_ctype_on_intrinsics
1 parent 056d925 commit 2a84e31

File tree

4 files changed

+40
-23
lines changed

4 files changed

+40
-23
lines changed

src/libcore/char/methods.rs

+20-10
Original file line numberDiff line numberDiff line change
@@ -1225,7 +1225,8 @@ impl char {
12251225
/// assert!(!esc.is_ascii_alphabetic());
12261226
/// ```
12271227
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1228-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1228+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1229+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
12291230
#[inline]
12301231
pub const fn is_ascii_alphabetic(&self) -> bool {
12311232
match *self {
@@ -1261,7 +1262,8 @@ impl char {
12611262
/// assert!(!esc.is_ascii_uppercase());
12621263
/// ```
12631264
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1264-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1265+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1266+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
12651267
#[inline]
12661268
pub const fn is_ascii_uppercase(&self) -> bool {
12671269
match *self {
@@ -1297,7 +1299,8 @@ impl char {
12971299
/// assert!(!esc.is_ascii_lowercase());
12981300
/// ```
12991301
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1300-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1302+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1303+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
13011304
#[inline]
13021305
pub const fn is_ascii_lowercase(&self) -> bool {
13031306
match *self {
@@ -1336,7 +1339,8 @@ impl char {
13361339
/// assert!(!esc.is_ascii_alphanumeric());
13371340
/// ```
13381341
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1339-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1342+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1343+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
13401344
#[inline]
13411345
pub const fn is_ascii_alphanumeric(&self) -> bool {
13421346
match *self {
@@ -1372,7 +1376,8 @@ impl char {
13721376
/// assert!(!esc.is_ascii_digit());
13731377
/// ```
13741378
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1375-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1379+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1380+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
13761381
#[inline]
13771382
pub const fn is_ascii_digit(&self) -> bool {
13781383
match *self {
@@ -1411,7 +1416,8 @@ impl char {
14111416
/// assert!(!esc.is_ascii_hexdigit());
14121417
/// ```
14131418
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1414-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1419+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1420+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
14151421
#[inline]
14161422
pub const fn is_ascii_hexdigit(&self) -> bool {
14171423
match *self {
@@ -1451,7 +1457,8 @@ impl char {
14511457
/// assert!(!esc.is_ascii_punctuation());
14521458
/// ```
14531459
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1454-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1460+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1461+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
14551462
#[inline]
14561463
pub const fn is_ascii_punctuation(&self) -> bool {
14571464
match *self {
@@ -1487,7 +1494,8 @@ impl char {
14871494
/// assert!(!esc.is_ascii_graphic());
14881495
/// ```
14891496
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1490-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1497+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1498+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
14911499
#[inline]
14921500
pub const fn is_ascii_graphic(&self) -> bool {
14931501
match *self {
@@ -1540,7 +1548,8 @@ impl char {
15401548
/// assert!(!esc.is_ascii_whitespace());
15411549
/// ```
15421550
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1543-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1551+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1552+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
15441553
#[inline]
15451554
pub const fn is_ascii_whitespace(&self) -> bool {
15461555
match *self {
@@ -1578,7 +1587,8 @@ impl char {
15781587
/// assert!(esc.is_ascii_control());
15791588
/// ```
15801589
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
1581-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
1590+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
1591+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
15821592
#[inline]
15831593
pub const fn is_ascii_control(&self) -> bool {
15841594
match *self {

src/libcore/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@
7070
#![feature(bound_cloned)]
7171
#![feature(cfg_target_has_atomic)]
7272
#![feature(concat_idents)]
73-
#![feature(const_ascii_ctype_on_intrinsics)]
7473
#![feature(const_alloc_layout)]
7574
#![feature(const_discriminant)]
7675
#![cfg_attr(bootstrap, feature(const_if_match))]

src/libcore/num/mod.rs

+20-10
Original file line numberDiff line numberDiff line change
@@ -4671,7 +4671,8 @@ impl u8 {
46714671
/// assert!(!esc.is_ascii_alphabetic());
46724672
/// ```
46734673
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4674-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4674+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4675+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
46754676
#[inline]
46764677
pub const fn is_ascii_alphabetic(&self) -> bool {
46774678
matches!(*self, b'A'..=b'Z' | b'a'..=b'z')
@@ -4704,7 +4705,8 @@ impl u8 {
47044705
/// assert!(!esc.is_ascii_uppercase());
47054706
/// ```
47064707
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4707-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4708+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4709+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
47084710
#[inline]
47094711
pub const fn is_ascii_uppercase(&self) -> bool {
47104712
matches!(*self, b'A'..=b'Z')
@@ -4737,7 +4739,8 @@ impl u8 {
47374739
/// assert!(!esc.is_ascii_lowercase());
47384740
/// ```
47394741
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4740-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4742+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4743+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
47414744
#[inline]
47424745
pub const fn is_ascii_lowercase(&self) -> bool {
47434746
matches!(*self, b'a'..=b'z')
@@ -4773,7 +4776,8 @@ impl u8 {
47734776
/// assert!(!esc.is_ascii_alphanumeric());
47744777
/// ```
47754778
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4776-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4779+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4780+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
47774781
#[inline]
47784782
pub const fn is_ascii_alphanumeric(&self) -> bool {
47794783
matches!(*self, b'0'..=b'9' | b'A'..=b'Z' | b'a'..=b'z')
@@ -4806,7 +4810,8 @@ impl u8 {
48064810
/// assert!(!esc.is_ascii_digit());
48074811
/// ```
48084812
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4809-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4813+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4814+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
48104815
#[inline]
48114816
pub const fn is_ascii_digit(&self) -> bool {
48124817
matches!(*self, b'0'..=b'9')
@@ -4842,7 +4847,8 @@ impl u8 {
48424847
/// assert!(!esc.is_ascii_hexdigit());
48434848
/// ```
48444849
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4845-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4850+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4851+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
48464852
#[inline]
48474853
pub const fn is_ascii_hexdigit(&self) -> bool {
48484854
matches!(*self, b'0'..=b'9' | b'A'..=b'F' | b'a'..=b'f')
@@ -4879,7 +4885,8 @@ impl u8 {
48794885
/// assert!(!esc.is_ascii_punctuation());
48804886
/// ```
48814887
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4882-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4888+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4889+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
48834890
#[inline]
48844891
pub const fn is_ascii_punctuation(&self) -> bool {
48854892
matches!(*self, b'!'..=b'/' | b':'..=b'@' | b'['..=b'`' | b'{'..=b'~')
@@ -4912,7 +4919,8 @@ impl u8 {
49124919
/// assert!(!esc.is_ascii_graphic());
49134920
/// ```
49144921
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4915-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4922+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4923+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
49164924
#[inline]
49174925
pub const fn is_ascii_graphic(&self) -> bool {
49184926
matches!(*self, b'!'..=b'~')
@@ -4962,7 +4970,8 @@ impl u8 {
49624970
/// assert!(!esc.is_ascii_whitespace());
49634971
/// ```
49644972
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
4965-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
4973+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
4974+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
49664975
#[inline]
49674976
pub const fn is_ascii_whitespace(&self) -> bool {
49684977
matches!(*self, b'\t' | b'\n' | b'\x0C' | b'\r' | b' ')
@@ -4997,7 +5006,8 @@ impl u8 {
49975006
/// assert!(esc.is_ascii_control());
49985007
/// ```
49995008
#[stable(feature = "ascii_ctype_on_intrinsics", since = "1.24.0")]
5000-
#[rustc_const_unstable(feature = "const_ascii_ctype_on_intrinsics", issue = "68983")]
5009+
#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.46.0")]
5010+
#[cfg_attr(bootstrap, allow_internal_unstable(const_if_match))]
50015011
#[inline]
50025012
pub const fn is_ascii_control(&self) -> bool {
50035013
matches!(*self, b'\0'..=b'\x1F' | b'\x7F')

src/test/ui/consts/ascii_ctype.rs

-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// run-pass
22

3-
#![feature(const_ascii_ctype_on_intrinsics)]
4-
53
macro_rules! suite {
64
( $( $fn:ident => [$a:ident, $A:ident, $nine:ident, $dot:ident, $space:ident]; )* ) => {
75
$(

0 commit comments

Comments
 (0)