File tree Expand file tree Collapse file tree 3 files changed +35
-1
lines changed
compiler/rustc_errors/src Expand file tree Collapse file tree 3 files changed +35
-1
lines changed Original file line number Diff line number Diff line change @@ -622,10 +622,13 @@ impl Diagnostic {
622622 pub fn multipart_suggestion_with_style (
623623 & mut self ,
624624 msg : impl Into < SubdiagnosticMessage > ,
625- suggestion : Vec < ( Span , String ) > ,
625+ mut suggestion : Vec < ( Span , String ) > ,
626626 applicability : Applicability ,
627627 style : SuggestionStyle ,
628628 ) -> & mut Self {
629+ suggestion. sort ( ) ;
630+ suggestion. dedup ( ) ;
631+
629632 let mut parts = suggestion
630633 . into_iter ( )
631634 . map ( |( span, snippet) | SubstitutionPart { snippet, span } )
Original file line number Diff line number Diff line change 1+ macro_rules! foo {
2+ ( $ty: ty) => {
3+ fn foo( _: $ty, _: $ty) { }
4+ }
5+ }
6+
7+ foo ! ( _) ;
8+ //~^ ERROR the placeholder `_` is not allowed within types on item signatures for functions
9+
10+ fn main ( ) { }
Original file line number Diff line number Diff line change 1+ error[E0121]: the placeholder `_` is not allowed within types on item signatures for functions
2+ --> $DIR/issue-118048.rs:7:6
3+ |
4+ LL | foo!(_);
5+ | ^
6+ | |
7+ | not allowed in type signatures
8+ | not allowed in type signatures
9+ |
10+ help: use type parameters instead
11+ |
12+ LL ~ fn foo<T>(_: $ty, _: $ty) {}
13+ LL | }
14+ LL | }
15+ LL |
16+ LL ~ foo!(T);
17+ |
18+
19+ error: aborting due to 1 previous error
20+
21+ For more information about this error, try `rustc --explain E0121`.
You can’t perform that action at this time.
0 commit comments