about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2018-09-09 21:00:55 +0000
committerbors <bors@rust-lang.org>2018-09-09 21:00:55 +0000
commit2d4e34ca8bb1369f7e0eea4cb50e6faa0827a6e5 (patch)
tree9e250b17aba2c7174bea5e7d7fb1a598da7e0ff2 /src/libsyntax
parentf50b7758f4dc85dc1c5e38258adaa94213ac6ed1 (diff)
parent2dce3779bbc0353ff9fb544774417a851027fcab (diff)
downloadrust-2d4e34ca8bb1369f7e0eea4cb50e6faa0827a6e5.tar.gz
rust-2d4e34ca8bb1369f7e0eea4cb50e6faa0827a6e5.zip
Auto merge of #53778 - petrochenkov:shadrelax2, r=nikomatsakis
resolve: Relax shadowing restrictions on macro-expanded macros

Previously any macro-expanded macros weren't allowed to shadow macros from outer scopes.
Now only "more macro-expanded" macros cannot shadow "less macro-expanded" macros.
See comments to `fn may_appear_after` and added tests for more details and examples.

The functional changes are a21f6f588fc28c97533130ae44a6957b579ab58c and 46dd365ce9ca0a6b8653849b80267763c542842a, other commits are refactorings.
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/feature_gate.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libsyntax/feature_gate.rs b/src/libsyntax/feature_gate.rs
index 9a9fb055292..e912482cf58 100644
--- a/src/libsyntax/feature_gate.rs
+++ b/src/libsyntax/feature_gate.rs
@@ -966,6 +966,10 @@ pub const BUILTIN_ATTRIBUTES: &'static [(&'static str, AttributeType, AttributeG
                                      "the `#[rustc_test_marker]` attribute \
                                       is used internally to track tests",
                                      cfg_fn!(rustc_attrs))),
+    ("rustc_transparent_macro", Whitelisted, Gated(Stability::Unstable,
+                                                   "rustc_attrs",
+                                                   "used internally for testing macro hygiene",
+                                                    cfg_fn!(rustc_attrs))),
 
     // RFC #2094
     ("nll", Whitelisted, Gated(Stability::Unstable,