1 // run-pass
2 #![allow(dead_code)]
3 // Check that we do not report ambiguities when equivalent predicates
4 // (modulo bound lifetime names) appears in the environment
5 // twice. Issue #21965.
6 
7 // pretty-expanded FIXME #23616
8 
foo<T>(t: T) -> i32 where T : for<'a> Fn(&'a u8) -> i32, T : for<'b> Fn(&'b u8) -> i32,9 fn foo<T>(t: T) -> i32
10     where T : for<'a> Fn(&'a u8) -> i32,
11           T : for<'b> Fn(&'b u8) -> i32,
12 {
13     t(&3)
14 }
15 
main()16 fn main() {
17 }
18