1 // run-pass 2 // Test that param substitutions from the correct environment are 3 // used when codegenning unboxed closure calls. 4 5 // pretty-expanded FIXME #23616 6 inside<F: Fn()>(c: F)7pub fn inside<F: Fn()>(c: F) { 8 c(); 9 } 10 11 // Use different number of type parameters and closure type to trigger 12 // an obvious ICE when param environments are mixed up outside<A,B>()13pub fn outside<A,B>() { 14 inside(|| {}); 15 } 16 main()17fn main() { 18 outside::<(),()>(); 19 } 20