diff options
| author | Christian Poveda <christianpoveda@protonmail.com> | 2019-11-28 12:20:28 -0500 |
|---|---|---|
| committer | Christian Poveda <christianpoveda@protonmail.com> | 2019-12-02 09:46:26 -0500 |
| commit | 416b439ffbdf6840bb3c663fea0246d3ead9a5dc (patch) | |
| tree | f30ef9711349c02c4089a54c422f0dd25a344dfc /src/test/ui/error-codes | |
| parent | dc0117a42c000428914ed3ca42ba1a287f622694 (diff) | |
| download | rust-416b439ffbdf6840bb3c663fea0246d3ead9a5dc.tar.gz rust-416b439ffbdf6840bb3c663fea0246d3ead9a5dc.zip | |
Correct other tests related to const_mut_refs
Diffstat (limited to 'src/test/ui/error-codes')
| -rw-r--r-- | src/test/ui/error-codes/E0017.rs | 8 | ||||
| -rw-r--r-- | src/test/ui/error-codes/E0017.stderr | 24 | ||||
| -rw-r--r-- | src/test/ui/error-codes/E0388.rs | 10 | ||||
| -rw-r--r-- | src/test/ui/error-codes/E0388.stderr | 43 |
4 files changed, 75 insertions, 10 deletions
diff --git a/src/test/ui/error-codes/E0017.rs b/src/test/ui/error-codes/E0017.rs index 3bc518c2c2b..64be41170d0 100644 --- a/src/test/ui/error-codes/E0017.rs +++ b/src/test/ui/error-codes/E0017.rs @@ -2,10 +2,10 @@ static X: i32 = 1; const C: i32 = 2; static mut M: i32 = 3; -const CR: &'static mut i32 = &mut C; //~ ERROR E0017 -static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0017 +const CR: &'static mut i32 = &mut C; //~ ERROR E0658 +static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0658 //~| ERROR E0019 //~| ERROR cannot borrow -static CONST_REF: &'static mut i32 = &mut C; //~ ERROR E0017 -static STATIC_MUT_REF: &'static mut i32 = unsafe { &mut M }; //~ ERROR E0017 +static CONST_REF: &'static mut i32 = &mut C; //~ ERROR E0658 +static STATIC_MUT_REF: &'static mut i32 = unsafe { &mut M }; //~ ERROR E0658 fn main() {} diff --git a/src/test/ui/error-codes/E0017.stderr b/src/test/ui/error-codes/E0017.stderr index 8c8660adceb..9a87195a9d0 100644 --- a/src/test/ui/error-codes/E0017.stderr +++ b/src/test/ui/error-codes/E0017.stderr @@ -1,8 +1,11 @@ -error[E0017]: references in constants may only refer to immutable values +error[E0658]: references in constants may only refer to immutable values --> $DIR/E0017.rs:5:30 | LL | const CR: &'static mut i32 = &mut C; | ^^^^^^ constants require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable error[E0019]: static contains unimplemented expression type --> $DIR/E0017.rs:6:39 @@ -10,11 +13,14 @@ error[E0019]: static contains unimplemented expression type LL | static STATIC_REF: &'static mut i32 = &mut X; | ^^^^^^ -error[E0017]: references in statics may only refer to immutable values +error[E0658]: references in statics may only refer to immutable values --> $DIR/E0017.rs:6:39 | LL | static STATIC_REF: &'static mut i32 = &mut X; | ^^^^^^ statics require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable error[E0596]: cannot borrow immutable static item `X` as mutable --> $DIR/E0017.rs:6:39 @@ -22,19 +28,25 @@ error[E0596]: cannot borrow immutable static item `X` as mutable LL | static STATIC_REF: &'static mut i32 = &mut X; | ^^^^^^ cannot borrow as mutable -error[E0017]: references in statics may only refer to immutable values +error[E0658]: references in statics may only refer to immutable values --> $DIR/E0017.rs:9:38 | LL | static CONST_REF: &'static mut i32 = &mut C; | ^^^^^^ statics require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable -error[E0017]: references in statics may only refer to immutable values +error[E0658]: references in statics may only refer to immutable values --> $DIR/E0017.rs:10:52 | LL | static STATIC_MUT_REF: &'static mut i32 = unsafe { &mut M }; | ^^^^^^ statics require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable error: aborting due to 6 previous errors -Some errors have detailed explanations: E0017, E0019, E0596. -For more information about an error, try `rustc --explain E0017`. +Some errors have detailed explanations: E0019, E0596, E0658. +For more information about an error, try `rustc --explain E0019`. diff --git a/src/test/ui/error-codes/E0388.rs b/src/test/ui/error-codes/E0388.rs new file mode 100644 index 00000000000..5954e3490b0 --- /dev/null +++ b/src/test/ui/error-codes/E0388.rs @@ -0,0 +1,10 @@ +static X: i32 = 1; +const C: i32 = 2; + +const CR: &'static mut i32 = &mut C; //~ ERROR E0658 +static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0658 + //~| ERROR cannot borrow + //~| ERROR E0019 +static CONST_REF: &'static mut i32 = &mut C; //~ ERROR E0658 + +fn main() {} diff --git a/src/test/ui/error-codes/E0388.stderr b/src/test/ui/error-codes/E0388.stderr new file mode 100644 index 00000000000..986307d3f12 --- /dev/null +++ b/src/test/ui/error-codes/E0388.stderr @@ -0,0 +1,43 @@ +error[E0658]: references in constants may only refer to immutable values + --> $DIR/E0388.rs:4:30 + | +LL | const CR: &'static mut i32 = &mut C; + | ^^^^^^ constants require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable + +error[E0019]: static contains unimplemented expression type + --> $DIR/E0388.rs:5:39 + | +LL | static STATIC_REF: &'static mut i32 = &mut X; + | ^^^^^^ + +error[E0658]: references in statics may only refer to immutable values + --> $DIR/E0388.rs:5:39 + | +LL | static STATIC_REF: &'static mut i32 = &mut X; + | ^^^^^^ statics require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable + +error[E0596]: cannot borrow immutable static item `X` as mutable + --> $DIR/E0388.rs:5:39 + | +LL | static STATIC_REF: &'static mut i32 = &mut X; + | ^^^^^^ cannot borrow as mutable + +error[E0658]: references in statics may only refer to immutable values + --> $DIR/E0388.rs:8:38 + | +LL | static CONST_REF: &'static mut i32 = &mut C; + | ^^^^^^ statics require immutable values + | + = note: for more information, see https://github.com/rust-lang/rust/issues/57349 + = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable + +error: aborting due to 5 previous errors + +Some errors have detailed explanations: E0019, E0596, E0658. +For more information about an error, try `rustc --explain E0019`. |
