]> git.lizzy.rs Git - rust.git/blob - tests/ui/issues/issue-3794.rs
Rollup merge of #106752 - sulami:master, r=estebank
[rust.git] / tests / ui / issues / issue-3794.rs
1 // run-pass
2 #![allow(dead_code)]
3
4 trait T {
5     fn print(&self);
6 }
7
8 #[derive(Debug)]
9 struct S {
10     s: isize,
11 }
12
13 impl T for S {
14     fn print(&self) {
15         println!("{:?}", self);
16     }
17 }
18
19 fn print_t(t: &dyn T) {
20     t.print();
21 }
22
23 fn print_s(s: &S) {
24     s.print();
25 }
26
27 pub fn main() {
28     let s: Box<S> = Box::new(S { s: 5 });
29     print_s(&*s);
30     let t: Box<dyn T> = s as Box<dyn T>;
31     print_t(&*t);
32 }