about summary refs log tree commit diff
path: root/tests/ui/issues/issue-5192.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/issues/issue-5192.rs')
-rw-r--r--tests/ui/issues/issue-5192.rs39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/ui/issues/issue-5192.rs b/tests/ui/issues/issue-5192.rs
new file mode 100644
index 00000000000..e2f835c1997
--- /dev/null
+++ b/tests/ui/issues/issue-5192.rs
@@ -0,0 +1,39 @@
+// run-pass
+#![allow(dead_code)]
+// pretty-expanded FIXME #23616
+
+pub trait EventLoop {
+    fn dummy(&self) { }
+}
+
+pub struct UvEventLoop {
+    uvio: isize
+}
+
+impl UvEventLoop {
+    pub fn new() -> UvEventLoop {
+        UvEventLoop {
+            uvio: 0
+        }
+    }
+}
+
+impl EventLoop for UvEventLoop {
+}
+
+pub struct Scheduler {
+    event_loop: Box<dyn EventLoop+'static>,
+}
+
+impl Scheduler {
+
+    pub fn new(event_loop: Box<dyn EventLoop+'static>) -> Scheduler {
+        Scheduler {
+            event_loop: event_loop,
+        }
+    }
+}
+
+pub fn main() {
+    let _sched = Scheduler::new(Box::new(UvEventLoop::new()) as Box<dyn EventLoop>);
+}