diff options
| author | Guillaume Gomez <guillaume1.gomez@gmail.com> | 2023-06-24 20:26:46 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-24 20:26:46 +0200 |
| commit | 9e0f427e5caf928692738505710c06a03eafb26f (patch) | |
| tree | 50e7a0bbbaf3ee2d06ee77ee6d79e49bc395dada | |
| parent | f0907b2c57bdeed9512bb65772f58c0fb53d3a0a (diff) | |
| parent | 13cc8dd580eea454e7fde2331c60c62eb7c9fe80 (diff) | |
| download | rust-9e0f427e5caf928692738505710c06a03eafb26f.tar.gz rust-9e0f427e5caf928692738505710c06a03eafb26f.zip | |
Rollup merge of #112989 - JohnTitor:issue-109141, r=compiler-errors
Add a regression test for #109141 Closes #109141 r? ``@compiler-errors``
| -rw-r--r-- | tests/ui/const-generics/generic_const_exprs/issue-109141.rs | 13 | ||||
| -rw-r--r-- | tests/ui/const-generics/generic_const_exprs/issue-109141.stderr | 26 |
2 files changed, 39 insertions, 0 deletions
diff --git a/tests/ui/const-generics/generic_const_exprs/issue-109141.rs b/tests/ui/const-generics/generic_const_exprs/issue-109141.rs new file mode 100644 index 00000000000..148c3bda8d2 --- /dev/null +++ b/tests/ui/const-generics/generic_const_exprs/issue-109141.rs @@ -0,0 +1,13 @@ +#![feature(generic_const_exprs)] +#![allow(incomplete_features)] + +impl EntriesBuffer { + fn a(&self) -> impl Iterator { + self.0.iter_mut() //~ ERROR: cannot borrow `*self.0` as mutable, as it is behind a `&` reference + } +} + +struct EntriesBuffer(Box<[[u8; HashesEntryLEN]; 5]>); +//~^ ERROR: cannot find value `HashesEntryLEN` in this scope + +fn main() {} diff --git a/tests/ui/const-generics/generic_const_exprs/issue-109141.stderr b/tests/ui/const-generics/generic_const_exprs/issue-109141.stderr new file mode 100644 index 00000000000..f61edd60e3b --- /dev/null +++ b/tests/ui/const-generics/generic_const_exprs/issue-109141.stderr @@ -0,0 +1,26 @@ +error[E0425]: cannot find value `HashesEntryLEN` in this scope + --> $DIR/issue-109141.rs:10:32 + | +LL | struct EntriesBuffer(Box<[[u8; HashesEntryLEN]; 5]>); + | ^^^^^^^^^^^^^^ not found in this scope + | +help: you might be missing a const parameter + | +LL | struct EntriesBuffer<const HashesEntryLEN: /* Type */>(Box<[[u8; HashesEntryLEN]; 5]>); + | ++++++++++++++++++++++++++++++++++ + +error[E0596]: cannot borrow `*self.0` as mutable, as it is behind a `&` reference + --> $DIR/issue-109141.rs:6:9 + | +LL | self.0.iter_mut() + | ^^^^^^^^^^^^^^^^^ `self` is a `&` reference, so the data it refers to cannot be borrowed as mutable + | +help: consider changing this to be a mutable reference + | +LL | fn a(&mut self) -> impl Iterator { + | ~~~~~~~~~ + +error: aborting due to 2 previous errors + +Some errors have detailed explanations: E0425, E0596. +For more information about an error, try `rustc --explain E0425`. |
