summaryrefslogtreecommitdiffstats
path: root/tests/ui/statics/uninhabited-static.stderr
blob: 35fdcae6a598a8e65e339dca7338cbdc6e0458a1 (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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
error: static of uninhabited type
  --> $DIR/uninhabited-static.rs:6:5
   |
LL |     static VOID: Void;
   |     ^^^^^^^^^^^^^^^^^
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #74840 <https://github.com/rust-lang/rust/issues/74840>
   = note: uninhabited statics cannot be initialized, and any access would be an immediate error
note: the lint level is defined here
  --> $DIR/uninhabited-static.rs:2:9
   |
LL | #![deny(uninhabited_static)]
   |         ^^^^^^^^^^^^^^^^^^

error: static of uninhabited type
  --> $DIR/uninhabited-static.rs:8:5
   |
LL |     static NEVER: !;
   |     ^^^^^^^^^^^^^^^
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #74840 <https://github.com/rust-lang/rust/issues/74840>
   = note: uninhabited statics cannot be initialized, and any access would be an immediate error

error: static of uninhabited type
  --> $DIR/uninhabited-static.rs:12:1
   |
LL | static VOID2: Void = unsafe { std::mem::transmute(()) };
   | ^^^^^^^^^^^^^^^^^^
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #74840 <https://github.com/rust-lang/rust/issues/74840>
   = note: uninhabited statics cannot be initialized, and any access would be an immediate error

error: static of uninhabited type
  --> $DIR/uninhabited-static.rs:16:1
   |
LL | static NEVER2: Void = unsafe { std::mem::transmute(()) };
   | ^^^^^^^^^^^^^^^^^^^
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #74840 <https://github.com/rust-lang/rust/issues/74840>
   = note: uninhabited statics cannot be initialized, and any access would be an immediate error

error[E0080]: could not evaluate static initializer
  --> $DIR/uninhabited-static.rs:12:31
   |
LL | static VOID2: Void = unsafe { std::mem::transmute(()) };
   |                               ^^^^^^^^^^^^^^^^^^^^^^^ constructing invalid value: encountered a value of uninhabited type Void

warning: the type `Void` does not permit zero-initialization
  --> $DIR/uninhabited-static.rs:12:31
   |
LL | static VOID2: Void = unsafe { std::mem::transmute(()) };
   |                               ^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed
   |
note: enums with no inhabited variants have no valid value
  --> $DIR/uninhabited-static.rs:4:1
   |
LL | enum Void {}
   | ^^^^^^^^^
   = note: `#[warn(invalid_value)]` on by default

error[E0080]: could not evaluate static initializer
  --> $DIR/uninhabited-static.rs:16:32
   |
LL | static NEVER2: Void = unsafe { std::mem::transmute(()) };
   |                                ^^^^^^^^^^^^^^^^^^^^^^^ constructing invalid value: encountered a value of uninhabited type Void

warning: the type `Void` does not permit zero-initialization
  --> $DIR/uninhabited-static.rs:16:32
   |
LL | static NEVER2: Void = unsafe { std::mem::transmute(()) };
   |                                ^^^^^^^^^^^^^^^^^^^^^^^ this code causes undefined behavior when executed
   |
note: enums with no inhabited variants have no valid value
  --> $DIR/uninhabited-static.rs:4:1
   |
LL | enum Void {}
   | ^^^^^^^^^

error: aborting due to 6 previous errors; 2 warnings emitted

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