| #### Note: this error code is no longer emitted by the compiler. | |
| In-band lifetimes were mixed with explicit lifetime binders. | |
| Erroneous code example: | |
| ```ignore (feature got removed) | |
| #![feature(in_band_lifetimes)] | |
| fn foo<'a>(x: &'a u32, y: &'b u32) {} // error! | |
| struct Foo<'a> { x: &'a u32 } | |
| impl Foo<'a> { | |
| fn bar<'b>(x: &'a u32, y: &'b u32, z: &'c u32) {} // error! | |
| } | |
| impl<'b> Foo<'a> { // error! | |
| fn baz() {} | |
| } | |
| ``` | |
| In-band lifetimes cannot be mixed with explicit lifetime binders. | |
| For example: | |
| ``` | |
| fn foo<'a, 'b>(x: &'a u32, y: &'b u32) {} // ok! | |
| struct Foo<'a> { x: &'a u32 } | |
| impl<'a> Foo<'a> { | |
| fn bar<'b,'c>(x: &'a u32, y: &'b u32, z: &'c u32) {} // ok! | |
| } | |
| impl<'a> Foo<'a> { // ok! | |
| fn baz() {} | |
| } | |
| ``` |