| //@ run-rustfix |
| |
| #![allow(warnings)] |
| |
| // This test checks that the following error is emitted and the suggestion works: |
| // |
| // ``` |
| // let _ = vec![1, 2, 3].into_iter().collect::<<<Vec<usize>>(); |
| // ^^ help: remove extra angle brackets |
| // ``` |
| |
| trait Foo { |
| type Output; |
| } |
| |
| fn foo<T: Foo>() { |
| // More complex cases with more than one correct leading `<` character: |
| |
| bar::<<T as Foo>::Output>(); |
| //~^ ERROR unmatched angle bracket |
| |
| bar::<<T as Foo>::Output>(); |
| //~^ ERROR unmatched angle bracket |
| |
| bar::<<T as Foo>::Output>(); |
| //~^ ERROR unmatched angle bracket |
| |
| bar::<<T as Foo>::Output>(); |
| } |
| |
| fn bar<T>() {} |
| |
| fn main() { |
| let _ = vec![1, 2, 3].into_iter().collect::<Vec<usize>>(); |
| //~^ ERROR unmatched angle bracket |
| |
| let _ = vec![1, 2, 3].into_iter().collect::<Vec<usize>>(); |
| //~^ ERROR unmatched angle bracket |
| |
| let _ = vec![1, 2, 3].into_iter().collect::<Vec<usize>>(); |
| //~^ ERROR unmatched angle bracket |
| |
| let _ = vec![1, 2, 3].into_iter().collect::<Vec<usize>>(); |
| //~^ ERROR unmatched angle bracket |
| |
| let _ = vec![1, 2, 3].into_iter().collect::<Vec<usize>>(); |
| } |