diff options
| author | Ralf Jung <post@ralfj.de> | 2021-05-05 17:52:29 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-05 17:52:29 +0200 |
| commit | 2cbcfae6548e08fe079ae0b7db0d97ec30e006d8 (patch) | |
| tree | 02063ef4cd6cb4e64d1b16f885ed993abe663fb9 /src/test | |
| parent | 2c7bf41b97e1b2a4ad475dd8fb197ce7f0c5c805 (diff) | |
| parent | 11379f0494b6a8c81b3fb9e0411651bc749aaa06 (diff) | |
| download | rust-2cbcfae6548e08fe079ae0b7db0d97ec30e006d8.tar.gz rust-2cbcfae6548e08fe079ae0b7db0d97ec30e006d8.zip | |
Rollup merge of #84913 - estebank:issue-84831, r=varkor
Do not ICE on invalid const param When encountering a path that can't have generics, do not call `generics_of`. This would happen when writing something like `path::this_is_a_mod<const_val>`. Fix #84831.
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/ui/typeck/issue-84831.rs | 9 | ||||
| -rw-r--r-- | src/test/ui/typeck/issue-84831.stderr | 26 |
2 files changed, 35 insertions, 0 deletions
diff --git a/src/test/ui/typeck/issue-84831.rs b/src/test/ui/typeck/issue-84831.rs new file mode 100644 index 00000000000..c646f710725 --- /dev/null +++ b/src/test/ui/typeck/issue-84831.rs @@ -0,0 +1,9 @@ +fn f() { + std::<0>; //~ ERROR expected value +} +fn j() { + std::<_ as _>; //~ ERROR expected value + //~^ ERROR expected one of `,` or `>`, found keyword `as` +} + +fn main () {} diff --git a/src/test/ui/typeck/issue-84831.stderr b/src/test/ui/typeck/issue-84831.stderr new file mode 100644 index 00000000000..e3cce10a00f --- /dev/null +++ b/src/test/ui/typeck/issue-84831.stderr @@ -0,0 +1,26 @@ +error: expected one of `,` or `>`, found keyword `as` + --> $DIR/issue-84831.rs:5:13 + | +LL | std::<_ as _>; + | ^^ expected one of `,` or `>` + | +help: expressions must be enclosed in braces to be used as const generic arguments + | +LL | std::<{ _ as _ }>; + | ^ ^ + +error[E0423]: expected value, found crate `std` + --> $DIR/issue-84831.rs:2:5 + | +LL | std::<0>; + | ^^^^^^^^ not a value + +error[E0423]: expected value, found crate `std` + --> $DIR/issue-84831.rs:5:5 + | +LL | std::<_ as _>; + | ^^^^^^^^^^^^^ not a value + +error: aborting due to 3 previous errors + +For more information about this error, try `rustc --explain E0423`. |
