summaryrefslogtreecommitdiffstats
path: root/tests/ui/associated-consts
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
commitdc0db358abe19481e475e10c32149b53370f1a1c (patch)
treeab8ce99c4b255ce46f99ef402c27916055b899ee /tests/ui/associated-consts
parentReleasing progress-linux version 1.71.1+dfsg1-2~progress7.99u1. (diff)
downloadrustc-dc0db358abe19481e475e10c32149b53370f1a1c.tar.xz
rustc-dc0db358abe19481e475e10c32149b53370f1a1c.zip
Merging upstream version 1.72.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.rs10
-rw-r--r--tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.stderr9
-rw-r--r--tests/ui/associated-consts/issue-110933.rs20
3 files changed, 39 insertions, 0 deletions
diff --git a/tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.rs b/tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.rs
new file mode 100644
index 000000000..40896c32e
--- /dev/null
+++ b/tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.rs
@@ -0,0 +1,10 @@
+trait Trait {
+ const ASSOC: i32;
+}
+
+impl Trait for () {
+ const ASSOC: &dyn Fn(_) = 1i32;
+ //~^ ERROR the placeholder `_` is not allowed within types on item signatures for associated constants
+}
+
+fn main() {}
diff --git a/tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.stderr b/tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.stderr
new file mode 100644
index 000000000..993a08fab
--- /dev/null
+++ b/tests/ui/associated-consts/infer-placeholder-in-non-suggestable-pos.stderr
@@ -0,0 +1,9 @@
+error[E0121]: the placeholder `_` is not allowed within types on item signatures for associated constants
+ --> $DIR/infer-placeholder-in-non-suggestable-pos.rs:6:26
+ |
+LL | const ASSOC: &dyn Fn(_) = 1i32;
+ | ^ not allowed in type signatures
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0121`.
diff --git a/tests/ui/associated-consts/issue-110933.rs b/tests/ui/associated-consts/issue-110933.rs
new file mode 100644
index 000000000..aa4882ae5
--- /dev/null
+++ b/tests/ui/associated-consts/issue-110933.rs
@@ -0,0 +1,20 @@
+// check-pass
+
+#![feature(associated_const_equality)]
+
+pub trait Trait {
+ const ASSOC: usize;
+}
+
+pub fn foo<
+ T: Trait<
+ ASSOC = {
+ let a = 10_usize;
+ let b: &'_ usize = &a;
+ *b
+ },
+ >,
+>() {
+}
+
+fn main() {}