X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=compiler%2Frustc_parse%2Fsrc%2Flib.rs;h=0becdf24c532be6ab438641ba27847f884004688;hb=dd33766e4a9a918058c3447d42491e874e21f7cc;hp=dedb9850b5a19f75a160250f5ea4615585511abe;hpb=04b72b469781b811655b0d5eb7d4c3c53fe1241d;p=rust.git diff --git a/compiler/rustc_parse/src/lib.rs b/compiler/rustc_parse/src/lib.rs index dedb9850b5a..0becdf24c53 100644 --- a/compiler/rustc_parse/src/lib.rs +++ b/compiler/rustc_parse/src/lib.rs @@ -364,6 +364,12 @@ fn semantic_tree(tree: &TokenTree) -> bool { | token::CloseDelim(DelimToken::NoDelim) // The pretty printer collapses many semicolons into one. | token::Semi + // We don't preserve leading `|` tokens in patterns, so + // we ignore them entirely + | token::BinOp(token::BinOpToken::Or) + // We don't preserve trailing '+' tokens in trait bounds, + // so we ignore them entirely + | token::BinOp(token::BinOpToken::Plus) // The pretty printer can turn `$crate` into `::crate_name` | token::ModSep = token.kind { return false;