]> git.lizzy.rs Git - rust.git/blobdiff - src/libsyntax/parse/parser/expr.rs
pre-expansion gate label_break_value
[rust.git] / src / libsyntax / parse / parser / expr.rs
index 273f5a5ffa36125f33a28e820813dfec72887b90..395f3a3a4dfe1e323c2521fcf52c236c86fdce71 100644 (file)
@@ -423,7 +423,7 @@ fn parse_prefix_expr(
                 self.struct_span_err(span_of_tilde, "`~` cannot be used as a unary operator")
                     .span_suggestion_short(
                         span_of_tilde,
-                        "use `!` to perform bitwise negation",
+                        "use `!` to perform bitwise not",
                         "!".to_owned(),
                         Applicability::MachineApplicable
                     )
@@ -1260,6 +1260,10 @@ pub(super) fn parse_block_expr(
         blk_mode: BlockCheckMode,
         outer_attrs: ThinVec<Attribute>,
     ) -> PResult<'a, P<Expr>> {
+        if let Some(label) = opt_label {
+            self.sess.gated_spans.label_break_value.borrow_mut().push(label.ident.span);
+        }
+
         self.expect(&token::OpenDelim(token::Brace))?;
 
         let mut attrs = outer_attrs;
@@ -1646,7 +1650,9 @@ fn parse_try_block(
             error.emit();
             Err(error)
         } else {
-            Ok(self.mk_expr(span_lo.to(body.span), ExprKind::TryBlock(body), attrs))
+            let span = span_lo.to(body.span);
+            self.sess.gated_spans.try_blocks.borrow_mut().push(span);
+            Ok(self.mk_expr(span, ExprKind::TryBlock(body), attrs))
         }
     }