diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 897f199f25eb..adaa5670e809 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -3433,9 +3433,9 @@ impl<'a> Parser<'a> { pats.push(self.parse_pat()?); if self.token == token::OrOr { - self.span_err_help(self.span, - "unexpected token `||` after pattern", - "did you mean to use `|` to specify multiple patterns?"); + let mut err = self.struct_span_err(self.span, "unexpected token `||` after pattern"); + err.span_suggestion(self.span, "use a single `|` to specify multiple patterns", "|".to_owned()); + err.emit(); self.bump(); } else if self.check(&token::BinOp(token::Or)) { self.bump(); diff --git a/src/test/ui/did_you_mean/multiple-pattern-typo.stderr b/src/test/ui/did_you_mean/multiple-pattern-typo.stderr index 940ff6828b15..a35aa6f3d1c9 100644 --- a/src/test/ui/did_you_mean/multiple-pattern-typo.stderr +++ b/src/test/ui/did_you_mean/multiple-pattern-typo.stderr @@ -2,9 +2,7 @@ error: unexpected token `||` after pattern --> $DIR/multiple-pattern-typo.rs:14:15 | 14 | 1 | 2 || 3 => (), //~ ERROR unexpected token `||` after pattern - | ^^ - | - = help: did you mean to use `|` to specify multiple patterns? + | ^^ help: use a single `|` to specify multiple patterns: `|` error: aborting due to previous error