summaryrefslogtreecommitdiffstats
path: root/tests/ui/rfcs/rfc-2008-non-exhaustive/enum.stderr
blob: 4e7f3098ab482d1b9ef942297b49a66c80c32ac9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
error[E0004]: non-exhaustive patterns: type `EmptyNonExhaustiveEnum` is non-empty
  --> $DIR/enum.rs:7:11
   |
LL |     match x {}
   |           ^
   |
note: `EmptyNonExhaustiveEnum` defined here
  --> $DIR/auxiliary/enums.rs:18:1
   |
LL | pub enum EmptyNonExhaustiveEnum {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: the matched value is of type `EmptyNonExhaustiveEnum`, which is marked as non-exhaustive
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match x {
LL +         _ => todo!(),
LL ~     }
   |

error[E0004]: non-exhaustive patterns: `_` not covered
  --> $DIR/enum.rs:16:11
   |
LL |     match enum_unit {
   |           ^^^^^^^^^ pattern `_` not covered
   |
note: `NonExhaustiveEnum` defined here
  --> $DIR/auxiliary/enums.rs:4:1
   |
LL | pub enum NonExhaustiveEnum {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: the matched value is of type `NonExhaustiveEnum`
   = note: `NonExhaustiveEnum` is marked as non-exhaustive, so a wildcard `_` is necessary to match exhaustively
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
   |
LL ~         NonExhaustiveEnum::Struct { .. } => "third",
LL +         _ => todo!()
   |

error[E0004]: non-exhaustive patterns: `_` not covered
  --> $DIR/enum.rs:23:11
   |
LL |     match enum_unit {};
   |           ^^^^^^^^^ pattern `_` not covered
   |
note: `NonExhaustiveEnum` defined here
  --> $DIR/auxiliary/enums.rs:4:1
   |
LL | pub enum NonExhaustiveEnum {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: the matched value is of type `NonExhaustiveEnum`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
   |
LL ~     match enum_unit {
LL +         _ => todo!(),
LL ~     };
   |

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0004`.