summaryrefslogtreecommitdiffstats
path: root/tests/ui/chalkify/impl_wf.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/chalkify/impl_wf.rs')
-rw-r--r--tests/ui/chalkify/impl_wf.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/ui/chalkify/impl_wf.rs b/tests/ui/chalkify/impl_wf.rs
new file mode 100644
index 000000000..c8dfd4c3a
--- /dev/null
+++ b/tests/ui/chalkify/impl_wf.rs
@@ -0,0 +1,26 @@
+// compile-flags: -Z trait-solver=chalk
+
+trait Foo: Sized { }
+
+trait Bar {
+ type Item: Foo;
+}
+
+impl Foo for i32 { }
+
+impl Foo for str { }
+//~^ ERROR the size for values of type `str` cannot be known at compilation time
+
+
+// Implicit `T: Sized` bound.
+impl<T> Foo for Option<T> { }
+
+trait Baz<U: ?Sized> where U: Foo { }
+
+impl Baz<i32> for i32 { }
+
+impl Baz<f32> for f32 { }
+//~^ ERROR the trait bound `f32: Foo` is not satisfied
+
+fn main() {
+}