]> git.proxmox.com Git - rustc.git/blob - tests/ui/generics/generic-derived-type.rs
New upstream version 1.68.2+dfsg1
[rustc.git] / tests / ui / generics / generic-derived-type.rs
1 // run-pass
2 fn g<X>(x: X) -> X { return x; }
3
4 #[derive(Clone)]
5 struct Pair<T> {
6 a: T,
7 b: T
8 }
9
10 fn f<T:Clone>(t: T) -> Pair<T> {
11 let x: Pair<T> = Pair {a: t.clone(), b: t};
12 return g::<Pair<T>>(x);
13 }
14
15 pub fn main() {
16 let b = f::<isize>(10);
17 println!("{}" ,b.a);
18 println!("{}", b.b);
19 assert_eq!(b.a, 10);
20 assert_eq!(b.b, 10);
21 }