about summary refs log tree commit diff
path: root/src/libsyntax_ext
diff options
context:
space:
mode:
authorAustin Bonander <austin.bonander@gmail.com>2018-03-15 23:20:56 -0700
committerAustin Bonander <austin.bonander@gmail.com>2018-04-02 01:56:12 -0700
commit7c0124dd357650acb9b7115a408712ea281d8d22 (patch)
tree496bfd1527c0c074eb6a7b0d9e1b5c0dfe338f5b /src/libsyntax_ext
parent517f24025a04e09936a6d07dc5298ca2b9371329 (diff)
downloadrust-7c0124dd357650acb9b7115a408712ea281d8d22.tar.gz
rust-7c0124dd357650acb9b7115a408712ea281d8d22.zip
Expand attribute macros on statements and expressions.
Retains the `stmt_expr_attributes` feature requirement for attributes on expressions.

closes #41475
cc #38356
Diffstat (limited to 'src/libsyntax_ext')
-rw-r--r--src/libsyntax_ext/deriving/custom.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libsyntax_ext/deriving/custom.rs b/src/libsyntax_ext/deriving/custom.rs
index 22e78e9b426..80557078d54 100644
--- a/src/libsyntax_ext/deriving/custom.rs
+++ b/src/libsyntax_ext/deriving/custom.rs
@@ -54,7 +54,9 @@ impl MultiItemModifier for ProcMacroDerive {
         let item = match item {
             Annotatable::Item(item) => item,
             Annotatable::ImplItem(_) |
-            Annotatable::TraitItem(_) => {
+            Annotatable::TraitItem(_) |
+            Annotatable::Stmt(_) |
+            Annotatable::Expr(_) => {
                 ecx.span_err(span, "proc-macro derives may only be \
                                     applied to struct/enum items");
                 return Vec::new()