1 // Unit test for the "user substitutions" that are annotated on each
7 fn method<U>(&self, arg: T, arg2: U) { }
10 impl<T, U> Bazoom<U> for T {
17 a.method(b, &c); // OK
20 fn annot_underscore() {
24 a.method::<_>(b, &c); // OK
27 fn annot_reference_any_lifetime() {
31 a.method::<&u32>(b, &c); // OK
34 fn annot_reference_static_lifetime() {
38 a.method::<&'static u32>(b, &c); //~ ERROR
41 fn annot_reference_named_lifetime<'a>(_d: &'a u32) {
45 a.method::<&'a u32>(b, &c); //~ ERROR
48 fn annot_reference_named_lifetime_ok<'a>(c: &'a u32) {
51 a.method::<&'a u32>(b, c);
54 fn annot_reference_named_lifetime_in_closure<'a>(_: &'a u32) {
59 a.method::<&'a u32>(b, &c); //~ ERROR
63 fn annot_reference_named_lifetime_in_closure_ok<'a>(c: &'a u32) {
67 a.method::<&'a u32>(b, c);