3 #![feature(impl_trait_in_bindings)]
4 //~^ WARN the feature `impl_trait_in_bindings` is incomplete and may cause the compiler to crash
8 const FOO: impl Debug + Clone + PartialEq<i32> = 42;
10 static BAR: impl Debug + Clone + PartialEq<i32> = 42;
12 fn a<T: Clone>(x: T) {
13 let y: impl Clone = x;
17 fn b<T: Clone>(x: T) {
19 let y: impl Clone = x;
27 let y: impl Clone = x;
32 impl<T: Clone> Foo<T> for i32 {
34 let y: impl Clone = x;
40 let foo: impl Debug + Clone + PartialEq<i32> = 42;
42 assert_eq!(FOO.clone(), 42);
43 assert_eq!(BAR.clone(), 42);
44 assert_eq!(foo.clone(), 42);