summaryrefslogtreecommitdiffstats
path: root/src/test/rustdoc/const-generics/lazy_normalization_consts/const-equate-pred.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/rustdoc/const-generics/lazy_normalization_consts/const-equate-pred.rs')
-rw-r--r--src/test/rustdoc/const-generics/lazy_normalization_consts/const-equate-pred.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/test/rustdoc/const-generics/lazy_normalization_consts/const-equate-pred.rs b/src/test/rustdoc/const-generics/lazy_normalization_consts/const-equate-pred.rs
new file mode 100644
index 000000000..4eac8e31e
--- /dev/null
+++ b/src/test/rustdoc/const-generics/lazy_normalization_consts/const-equate-pred.rs
@@ -0,0 +1,18 @@
+#![crate_name = "foo"]
+#![feature(generic_const_exprs)]
+#![allow(incomplete_features)]
+
+// Checking if `Send` is implemented for `Hasher` requires us to evaluate a `ConstEquate` predicate,
+// which previously caused an ICE.
+
+pub struct Hasher<T> {
+ cv_stack: T,
+}
+
+unsafe impl<T: Default> Send for Hasher<T> {}
+
+// @has foo/struct.Foo.html
+// @has - '//h3[@class="code-header in-band"]' 'impl Send for Foo'
+pub struct Foo {
+ hasher: Hasher<[u8; 3]>,
+}