]> git.proxmox.com Git - rustc.git/blame - src/test/run-pass/traits/trait-inheritance-static2.rs
New upstream version 1.37.0+dfsg1
[rustc.git] / src / test / run-pass / traits / trait-inheritance-static2.rs
CommitLineData
b7449926 1// run-pass
9346a6ac 2pub trait MyEq {}
c34b1796 3
9346a6ac 4pub trait MyNum {
041b39d2 5 fn from_int(_: isize) -> Self;
223e47cc
LB
6}
7
8pub trait NumExt: MyEq + MyNum { }
9
c34b1796 10struct S { v: isize }
223e47cc
LB
11
12impl MyEq for S { }
13
14impl MyNum for S {
c34b1796 15 fn from_int(i: isize) -> S {
223e47cc
LB
16 S {
17 v: i
18 }
19 }
20}
21
22impl NumExt for S { }
23
24fn greater_than_one<T:NumExt>() -> T { MyNum::from_int(1) }
25
26pub fn main() {
27 let v: S = greater_than_one();
970d7e83 28 assert_eq!(v.v, 1);
223e47cc 29}