Skip to content

Commit

Permalink
Unmark the feature gate as incomplete
Browse files Browse the repository at this point in the history
  • Loading branch information
Nadrieril committed Feb 7, 2024
1 parent 51ada89 commit b9a1b41
Show file tree
Hide file tree
Showing 5 changed files with 165 additions and 175 deletions.
2 changes: 1 addition & 1 deletion compiler/rustc_feature/src/unstable.rs
Original file line number Diff line number Diff line change
Expand Up @@ -514,7 +514,7 @@ declare_features! (
(unstable, marker_trait_attr, "1.30.0", Some(29864)),
/// Allows exhaustive pattern matching on types that contain uninhabited types in cases that are
/// unambiguously sound.
(incomplete, min_exhaustive_patterns, "CURRENT_RUSTC_VERSION", Some(119612)),
(unstable, min_exhaustive_patterns, "CURRENT_RUSTC_VERSION", Some(119612)),
/// A minimal, sound subset of specialization intended to be used by the
/// standard library until the soundness issues with specialization
/// are fixed.
Expand Down
100 changes: 50 additions & 50 deletions tests/ui/pattern/usefulness/empty-types.exhaustive_patterns.stderr
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
error: unreachable pattern
--> $DIR/empty-types.rs:50:9
--> $DIR/empty-types.rs:49:9
|
LL | _ => {}
| ^
|
note: the lint level is defined here
--> $DIR/empty-types.rs:16:9
--> $DIR/empty-types.rs:15:9
|
LL | #![deny(unreachable_patterns)]
| ^^^^^^^^^^^^^^^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:53:9
--> $DIR/empty-types.rs:52:9
|
LL | _x => {}
| ^^

error[E0004]: non-exhaustive patterns: type `&!` is non-empty
--> $DIR/empty-types.rs:57:11
--> $DIR/empty-types.rs:56:11
|
LL | match ref_never {}
| ^^^^^^^^^
Expand All @@ -32,31 +32,31 @@ LL + }
|

error: unreachable pattern
--> $DIR/empty-types.rs:72:9
--> $DIR/empty-types.rs:71:9
|
LL | (_, _) => {}
| ^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:79:9
--> $DIR/empty-types.rs:78:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:82:9
--> $DIR/empty-types.rs:81:9
|
LL | (_, _) => {}
| ^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:86:9
--> $DIR/empty-types.rs:85:9
|
LL | _ => {}
| ^

error[E0004]: non-exhaustive patterns: `Ok(_)` not covered
--> $DIR/empty-types.rs:90:11
--> $DIR/empty-types.rs:89:11
|
LL | match res_u32_never {}
| ^^^^^^^^^^^^^ pattern `Ok(_)` not covered
Expand All @@ -75,19 +75,19 @@ LL + }
|

error: unreachable pattern
--> $DIR/empty-types.rs:98:9
--> $DIR/empty-types.rs:97:9
|
LL | Err(_) => {}
| ^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:103:9
--> $DIR/empty-types.rs:102:9
|
LL | Err(_) => {}
| ^^^^^^

error[E0004]: non-exhaustive patterns: `Ok(1_u32..=u32::MAX)` not covered
--> $DIR/empty-types.rs:100:11
--> $DIR/empty-types.rs:99:11
|
LL | match res_u32_never {
| ^^^^^^^^^^^^^ pattern `Ok(1_u32..=u32::MAX)` not covered
Expand All @@ -105,7 +105,7 @@ LL ~ Ok(1_u32..=u32::MAX) => todo!()
|

error[E0005]: refutable pattern in local binding
--> $DIR/empty-types.rs:107:9
--> $DIR/empty-types.rs:106:9
|
LL | let Ok(_x) = res_u32_never.as_ref();
| ^^^^^^ pattern `Err(_)` not covered
Expand All @@ -119,121 +119,121 @@ LL | let Ok(_x) = res_u32_never.as_ref() else { todo!() };
| ++++++++++++++++

error: unreachable pattern
--> $DIR/empty-types.rs:118:9
--> $DIR/empty-types.rs:117:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:122:9
--> $DIR/empty-types.rs:121:9
|
LL | Ok(_) => {}
| ^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:125:9
--> $DIR/empty-types.rs:124:9
|
LL | Ok(_) => {}
| ^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:126:9
--> $DIR/empty-types.rs:125:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:129:9
--> $DIR/empty-types.rs:128:9
|
LL | Ok(_) => {}
| ^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:130:9
--> $DIR/empty-types.rs:129:9
|
LL | Err(_) => {}
| ^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:139:13
--> $DIR/empty-types.rs:138:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:142:13
--> $DIR/empty-types.rs:141:13
|
LL | _ if false => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:151:13
--> $DIR/empty-types.rs:150:13
|
LL | Some(_) => {}
| ^^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:155:13
--> $DIR/empty-types.rs:154:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:207:13
--> $DIR/empty-types.rs:206:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:212:13
--> $DIR/empty-types.rs:211:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:217:13
--> $DIR/empty-types.rs:216:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:222:13
--> $DIR/empty-types.rs:221:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:228:13
--> $DIR/empty-types.rs:227:13
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:287:9
--> $DIR/empty-types.rs:286:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:290:9
--> $DIR/empty-types.rs:289:9
|
LL | (_, _) => {}
| ^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:293:9
--> $DIR/empty-types.rs:292:9
|
LL | Ok(_) => {}
| ^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:294:9
--> $DIR/empty-types.rs:293:9
|
LL | Err(_) => {}
| ^^^^^^

error[E0004]: non-exhaustive patterns: type `&[!]` is non-empty
--> $DIR/empty-types.rs:326:11
--> $DIR/empty-types.rs:325:11
|
LL | match slice_never {}
| ^^^^^^^^^^^
Expand All @@ -247,7 +247,7 @@ LL + }
|

error[E0004]: non-exhaustive patterns: `&[]` not covered
--> $DIR/empty-types.rs:337:11
--> $DIR/empty-types.rs:336:11
|
LL | match slice_never {
| ^^^^^^^^^^^ pattern `&[]` not covered
Expand All @@ -260,7 +260,7 @@ LL + &[] => todo!()
|

error[E0004]: non-exhaustive patterns: `&[]` not covered
--> $DIR/empty-types.rs:350:11
--> $DIR/empty-types.rs:349:11
|
LL | match slice_never {
| ^^^^^^^^^^^ pattern `&[]` not covered
Expand All @@ -274,7 +274,7 @@ LL + &[] => todo!()
|

error[E0004]: non-exhaustive patterns: type `[!]` is non-empty
--> $DIR/empty-types.rs:356:11
--> $DIR/empty-types.rs:355:11
|
LL | match *slice_never {}
| ^^^^^^^^^^^^
Expand All @@ -288,25 +288,25 @@ LL + }
|

error: unreachable pattern
--> $DIR/empty-types.rs:366:9
--> $DIR/empty-types.rs:365:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:369:9
--> $DIR/empty-types.rs:368:9
|
LL | [_, _, _] => {}
| ^^^^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:372:9
--> $DIR/empty-types.rs:371:9
|
LL | [_, ..] => {}
| ^^^^^^^

error[E0004]: non-exhaustive patterns: type `[!; 0]` is non-empty
--> $DIR/empty-types.rs:386:11
--> $DIR/empty-types.rs:385:11
|
LL | match array_0_never {}
| ^^^^^^^^^^^^^
Expand All @@ -320,13 +320,13 @@ LL + }
|

error: unreachable pattern
--> $DIR/empty-types.rs:393:9
--> $DIR/empty-types.rs:392:9
|
LL | _ => {}
| ^

error[E0004]: non-exhaustive patterns: `[]` not covered
--> $DIR/empty-types.rs:395:11
--> $DIR/empty-types.rs:394:11
|
LL | match array_0_never {
| ^^^^^^^^^^^^^ pattern `[]` not covered
Expand All @@ -340,49 +340,49 @@ LL + [] => todo!()
|

error: unreachable pattern
--> $DIR/empty-types.rs:414:9
--> $DIR/empty-types.rs:413:9
|
LL | Some(_) => {}
| ^^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:419:9
--> $DIR/empty-types.rs:418:9
|
LL | Some(_a) => {}
| ^^^^^^^^

error: unreachable pattern
--> $DIR/empty-types.rs:424:9
--> $DIR/empty-types.rs:423:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:429:9
--> $DIR/empty-types.rs:428:9
|
LL | _a => {}
| ^^

error: unreachable pattern
--> $DIR/empty-types.rs:601:9
--> $DIR/empty-types.rs:600:9
|
LL | _ => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:604:9
--> $DIR/empty-types.rs:603:9
|
LL | _x => {}
| ^^

error: unreachable pattern
--> $DIR/empty-types.rs:607:9
--> $DIR/empty-types.rs:606:9
|
LL | _ if false => {}
| ^

error: unreachable pattern
--> $DIR/empty-types.rs:610:9
--> $DIR/empty-types.rs:609:9
|
LL | _x if false => {}
| ^^
Expand Down
Loading

0 comments on commit b9a1b41

Please sign in to comment.