about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--tests/source/negative-impl.rs7
-rw-r--r--tests/target/negative-impl.rs14
2 files changed, 21 insertions, 0 deletions
diff --git a/tests/source/negative-impl.rs b/tests/source/negative-impl.rs
new file mode 100644
index 00000000000..da242d4f3dc
--- /dev/null
+++ b/tests/source/negative-impl.rs
@@ -0,0 +1,7 @@
+impl ! Display for JoinHandle { }
+
+impl ! Box < JoinHandle > { }
+
+impl ! std :: fmt :: Display for JoinHandle < T : std :: future :: Future + std :: marker :: Send + std :: marker :: Sync > { }
+
+impl ! JoinHandle < T : std :: future :: Future < Output > + std :: marker :: Send + std :: marker :: Sync + 'static > + 'static { }
diff --git a/tests/target/negative-impl.rs b/tests/target/negative-impl.rs
new file mode 100644
index 00000000000..16ce7e26a99
--- /dev/null
+++ b/tests/target/negative-impl.rs
@@ -0,0 +1,14 @@
+impl !Display for JoinHandle {}
+
+impl !Box<JoinHandle> {}
+
+impl !std::fmt::Display
+    for JoinHandle<T: std::future::Future + std::marker::Send + std::marker::Sync>
+{
+}
+
+impl
+    !JoinHandle<T: std::future::Future<Output> + std::marker::Send + std::marker::Sync + 'static>
+        + 'static
+{
+}