summaryrefslogtreecommitdiffstats
path: root/tests/ui/error-codes/E0017.stderr
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /tests/ui/error-codes/E0017.stderr
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/error-codes/E0017.stderr')
-rw-r--r--tests/ui/error-codes/E0017.stderr72
1 files changed, 72 insertions, 0 deletions
diff --git a/tests/ui/error-codes/E0017.stderr b/tests/ui/error-codes/E0017.stderr
new file mode 100644
index 000000000..6e48f9582
--- /dev/null
+++ b/tests/ui/error-codes/E0017.stderr
@@ -0,0 +1,72 @@
+warning: taking a mutable reference to a `const` item
+ --> $DIR/E0017.rs:5:30
+ |
+LL | const CR: &'static mut i32 = &mut C;
+ | ^^^^^^
+ |
+ = note: each usage of a `const` item creates a new temporary
+ = note: the mutable reference will refer to this temporary, not the original `const` item
+note: `const` item defined here
+ --> $DIR/E0017.rs:2:1
+ |
+LL | const C: i32 = 2;
+ | ^^^^^^^^^^^^
+ = note: `#[warn(const_item_mutation)]` on by default
+
+error[E0764]: mutable references are not allowed in the final value of constants
+ --> $DIR/E0017.rs:5:30
+ |
+LL | const CR: &'static mut i32 = &mut C;
+ | ^^^^^^
+
+error[E0658]: mutation through a reference is not allowed in statics
+ --> $DIR/E0017.rs:7:39
+ |
+LL | static STATIC_REF: &'static mut i32 = &mut X;
+ | ^^^^^^
+ |
+ = note: see issue #57349 <https://github.com/rust-lang/rust/issues/57349> for more information
+ = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable
+
+error[E0764]: mutable references are not allowed in the final value of statics
+ --> $DIR/E0017.rs:7:39
+ |
+LL | static STATIC_REF: &'static mut i32 = &mut X;
+ | ^^^^^^
+
+error[E0596]: cannot borrow immutable static item `X` as mutable
+ --> $DIR/E0017.rs:7:39
+ |
+LL | static STATIC_REF: &'static mut i32 = &mut X;
+ | ^^^^^^ cannot borrow as mutable
+
+warning: taking a mutable reference to a `const` item
+ --> $DIR/E0017.rs:11:38
+ |
+LL | static CONST_REF: &'static mut i32 = &mut C;
+ | ^^^^^^
+ |
+ = note: each usage of a `const` item creates a new temporary
+ = note: the mutable reference will refer to this temporary, not the original `const` item
+note: `const` item defined here
+ --> $DIR/E0017.rs:2:1
+ |
+LL | const C: i32 = 2;
+ | ^^^^^^^^^^^^
+
+error[E0764]: mutable references are not allowed in the final value of statics
+ --> $DIR/E0017.rs:11:38
+ |
+LL | static CONST_REF: &'static mut i32 = &mut C;
+ | ^^^^^^
+
+error[E0764]: mutable references are not allowed in the final value of statics
+ --> $DIR/E0017.rs:13:52
+ |
+LL | static STATIC_MUT_REF: &'static mut i32 = unsafe { &mut M };
+ | ^^^^^^
+
+error: aborting due to 6 previous errors; 2 warnings emitted
+
+Some errors have detailed explanations: E0596, E0658, E0764.
+For more information about an error, try `rustc --explain E0596`.