summaryrefslogtreecommitdiffstats
path: root/src/test/ui/kindck/kindck-send-object2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/kindck/kindck-send-object2.rs')
-rw-r--r--src/test/ui/kindck/kindck-send-object2.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/kindck/kindck-send-object2.rs b/src/test/ui/kindck/kindck-send-object2.rs
new file mode 100644
index 000000000..b797588e4
--- /dev/null
+++ b/src/test/ui/kindck/kindck-send-object2.rs
@@ -0,0 +1,24 @@
+// Continue kindck-send-object1.rs.
+
+fn assert_send<T:Send>() { }
+trait Dummy { }
+
+fn test50() {
+ assert_send::<&'static dyn Dummy>();
+ //~^ ERROR `(dyn Dummy + 'static)` cannot be shared between threads safely [E0277]
+}
+
+fn test53() {
+ assert_send::<Box<dyn Dummy>>();
+ //~^ ERROR `dyn Dummy` cannot be sent between threads safely
+}
+
+// ...unless they are properly bounded
+fn test60() {
+ assert_send::<&'static (dyn Dummy + Sync)>();
+}
+fn test61() {
+ assert_send::<Box<dyn Dummy + Send>>();
+}
+
+fn main() { }