1 The `+` type operator was used in an ambiguous context.
3 Erroneous code example:
9 x: &'a Foo + 'a, // error!
10 y: &'a mut Foo + 'a, // error!
11 z: fn() -> Foo + 'a, // error!
15 In types, the `+` type operator has low precedence, so it is often necessary
22 x: &'a (Foo + 'a), // ok!
23 y: &'a mut (Foo + 'a), // ok!
24 z: fn() -> (Foo + 'a), // ok!
28 More details can be found in [RFC 438].
30 [RFC 438]: https://github.com/rust-lang/rfcs/pull/438