1 // run-pass
2 // only-x86
3 
4 trait A {
test1(i: i32)5     extern "fastcall" fn test1(i: i32);
test2(i: i32)6     extern "C" fn test2(i: i32);
7 }
8 
9 struct S;
10 impl S {
test3(i: i32)11     extern "stdcall" fn test3(i: i32) {
12         assert_eq!(i, 3);
13     }
14 }
15 
16 impl A for S {
test1(i: i32)17     extern "fastcall" fn test1(i: i32) {
18         assert_eq!(i, 1);
19     }
test2(i: i32)20     extern "C" fn test2(i: i32) {
21         assert_eq!(i, 2);
22     }
23 }
24 
main()25 fn main() {
26     <S as A>::test1(1);
27     <S as A>::test2(2);
28     S::test3(3);
29 }
30