1 // run-pass 2 // Test that empty type parameter list (<>) is synonymous with 3 // no type parameters at all 4 5 struct S<>; 6 trait T<> {} 7 enum E<> { V } 8 impl<> T<> for S<> {} 9 impl T for E {} foo<>()10fn foo<>() {} bar()11fn bar() {} 12 main()13fn main() { 14 let _ = S; 15 let _ = S::<>; 16 let _ = E::V; 17 let _ = E::<>::V; 18 foo(); 19 foo::<>(); 20 21 // Test that we can supply <> to non generic things 22 bar::<>(); 23 let _: i32<>; 24 } 25