summaryrefslogtreecommitdiffstats
path: root/tests/ui/missing
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:20:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:20:29 +0000
commit631cd5845e8de329d0e227aaa707d7ea228b8f8f (patch)
treea1b87c8f8cad01cf18f7c5f57a08f102771ed303 /tests/ui/missing
parentAdding debian version 1.69.0+dfsg1-1. (diff)
downloadrustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.tar.xz
rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.zip
Merging upstream version 1.70.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/missing')
-rw-r--r--tests/ui/missing/missing-items/missing-const-parameter.rs24
-rw-r--r--tests/ui/missing/missing-items/missing-const-parameter.stderr64
2 files changed, 88 insertions, 0 deletions
diff --git a/tests/ui/missing/missing-items/missing-const-parameter.rs b/tests/ui/missing/missing-items/missing-const-parameter.rs
new file mode 100644
index 000000000..a3af88f26
--- /dev/null
+++ b/tests/ui/missing/missing-items/missing-const-parameter.rs
@@ -0,0 +1,24 @@
+struct Struct<const N: usize>;
+
+impl Struct<{ N }> {}
+//~^ ERROR cannot find value `N` in this scope
+//~| HELP you might be missing a const parameter
+
+fn func0(_: Struct<{ N }>) {}
+//~^ ERROR cannot find value `N` in this scope
+//~| HELP you might be missing a const parameter
+
+fn func1(_: [u8; N]) {}
+//~^ ERROR cannot find value `N` in this scope
+//~| HELP you might be missing a const parameter
+
+fn func2<T>(_: [T; N]) {}
+//~^ ERROR cannot find value `N` in this scope
+//~| HELP you might be missing a const parameter
+
+struct Image<const R: usize>([[u32; C]; R]);
+//~^ ERROR cannot find value `C` in this scope
+//~| HELP a const parameter with a similar name exists
+//~| HELP you might be missing a const parameter
+
+fn main() {}
diff --git a/tests/ui/missing/missing-items/missing-const-parameter.stderr b/tests/ui/missing/missing-items/missing-const-parameter.stderr
new file mode 100644
index 000000000..d9fea1306
--- /dev/null
+++ b/tests/ui/missing/missing-items/missing-const-parameter.stderr
@@ -0,0 +1,64 @@
+error[E0425]: cannot find value `N` in this scope
+ --> $DIR/missing-const-parameter.rs:3:15
+ |
+LL | impl Struct<{ N }> {}
+ | ^ not found in this scope
+ |
+help: you might be missing a const parameter
+ |
+LL | impl<const N: /* Type */> Struct<{ N }> {}
+ | +++++++++++++++++++++
+
+error[E0425]: cannot find value `N` in this scope
+ --> $DIR/missing-const-parameter.rs:7:22
+ |
+LL | fn func0(_: Struct<{ N }>) {}
+ | ^ not found in this scope
+ |
+help: you might be missing a const parameter
+ |
+LL | fn func0<const N: /* Type */>(_: Struct<{ N }>) {}
+ | +++++++++++++++++++++
+
+error[E0425]: cannot find value `N` in this scope
+ --> $DIR/missing-const-parameter.rs:11:18
+ |
+LL | fn func1(_: [u8; N]) {}
+ | ^ not found in this scope
+ |
+help: you might be missing a const parameter
+ |
+LL | fn func1<const N: /* Type */>(_: [u8; N]) {}
+ | +++++++++++++++++++++
+
+error[E0425]: cannot find value `N` in this scope
+ --> $DIR/missing-const-parameter.rs:15:20
+ |
+LL | fn func2<T>(_: [T; N]) {}
+ | ^ not found in this scope
+ |
+help: you might be missing a const parameter
+ |
+LL | fn func2<T, const N: /* Type */>(_: [T; N]) {}
+ | +++++++++++++++++++++
+
+error[E0425]: cannot find value `C` in this scope
+ --> $DIR/missing-const-parameter.rs:19:37
+ |
+LL | struct Image<const R: usize>([[u32; C]; R]);
+ | - ^
+ | |
+ | similarly named const parameter `R` defined here
+ |
+help: a const parameter with a similar name exists
+ |
+LL | struct Image<const R: usize>([[u32; R]; R]);
+ | ~
+help: you might be missing a const parameter
+ |
+LL | struct Image<const R: usize, const C: /* Type */>([[u32; C]; R]);
+ | +++++++++++++++++++++
+
+error: aborting due to 5 previous errors
+
+For more information about this error, try `rustc --explain E0425`.