diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2022-10-14 00:45:19 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-14 00:45:19 +0200 |
| commit | cf675656cb07cb349c074041d3176c8a749b29e1 (patch) | |
| tree | 0c34895f375438cdadb76cebcb2023fccd5fcab0 /src/test/ui | |
| parent | ea709c28c39fbc0ebcf4a9f77e6317c0c52ec771 (diff) | |
| parent | 4a25a49edfcca0392a9731df351f1a1229a6e662 (diff) | |
Rollup merge of #103016 - nbdd0121:enum, r=pnkfelix
Ensure enum cast moves Fix #102389 r? ``@pnkfelix``
Diffstat (limited to 'src/test/ui')
| -rw-r--r-- | src/test/ui/mir/issue-102389.rs | 8 | ||||
| -rw-r--r-- | src/test/ui/mir/issue-102389.stderr | 9 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/test/ui/mir/issue-102389.rs b/src/test/ui/mir/issue-102389.rs new file mode 100644 index 00000000000..8b27d5e5574 --- /dev/null +++ b/src/test/ui/mir/issue-102389.rs @@ -0,0 +1,8 @@ +enum Enum { A, B, C } + +fn func(inbounds: &Enum, array: &[i16; 3]) -> i16 { + array[*inbounds as usize] + //~^ ERROR [E0507] +} + +fn main() {} diff --git a/src/test/ui/mir/issue-102389.stderr b/src/test/ui/mir/issue-102389.stderr new file mode 100644 index 00000000000..925dc258a4c --- /dev/null +++ b/src/test/ui/mir/issue-102389.stderr @@ -0,0 +1,9 @@ +error[E0507]: cannot move out of `*inbounds` which is behind a shared reference + --> $DIR/issue-102389.rs:4:11 + | +LL | array[*inbounds as usize] + | ^^^^^^^^^ move occurs because `*inbounds` has type `Enum`, which does not implement the `Copy` trait + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0507`. |
