summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorEduard-Mihai Burtescu <edy.burt@gmail.com>2019-10-31 18:20:02 +0200
committerEduard-Mihai Burtescu <edy.burt@gmail.com>2019-10-31 19:08:10 +0200
commit20bfff66a95811c31990a774ee522f096d955b44 (patch)
tree3a8be585fe28eef6be469591997c402d6417e644 /src/libsyntax
parent4c947a26f2a804fefb1d74110057efd8564033f1 (diff)
downloadrust-20bfff66a95811c31990a774ee522f096d955b44.tar.gz
rust-20bfff66a95811c31990a774ee522f096d955b44.zip
Revert "pre-expansion gate box_syntax"
This reverts commit e4ed8865786a787a7b0c045f7674569b6be0e9bc.
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/feature_gate/check.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libsyntax/feature_gate/check.rs b/src/libsyntax/feature_gate/check.rs
index 0f07bf10d65..d924cb608f8 100644
--- a/src/libsyntax/feature_gate/check.rs
+++ b/src/libsyntax/feature_gate/check.rs
@@ -153,6 +153,9 @@ fn leveled_feature_err<'a, S: Into<MultiSpan>>(
 
 }
 
+const EXPLAIN_BOX_SYNTAX: &str =
+    "box expression syntax is experimental; you can call `Box::new` instead";
+
 pub const EXPLAIN_STMT_ATTR_SYNTAX: &str =
     "attributes on expressions are experimental";
 
@@ -504,6 +507,9 @@ impl<'a> Visitor<'a> for PostExpansionVisitor<'a> {
 
     fn visit_expr(&mut self, e: &'a ast::Expr) {
         match e.kind {
+            ast::ExprKind::Box(_) => {
+                gate_feature_post!(&self, box_syntax, e.span, EXPLAIN_BOX_SYNTAX);
+            }
             ast::ExprKind::Type(..) => {
                 // To avoid noise about type ascription in common syntax errors, only emit if it
                 // is the *only* error.