summary refs log tree commit diff
path: root/src/libsyntax/ext
diff options
context:
space:
mode:
authorJeffrey Seyfried <jeffrey.seyfried@gmail.com>2016-06-01 01:27:12 +0000
committerJeffrey Seyfried <jeffrey.seyfried@gmail.com>2016-06-11 03:13:44 +0000
commit66b9ade341360a201c5ba37a9a2d6b6c1597a44b (patch)
tree5d6bde398410e183c477459b0be1222da8890f9b /src/libsyntax/ext
parent0554abac637800415bb1b30d8656898552a55ea0 (diff)
downloadrust-66b9ade341360a201c5ba37a9a2d6b6c1597a44b.tar.gz
rust-66b9ade341360a201c5ba37a9a2d6b6c1597a44b.zip
Strip `#[test]` nodes during `cfg` processing on non-test builds.
Diffstat (limited to 'src/libsyntax/ext')
-rw-r--r--src/libsyntax/ext/expand.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs
index 15d192b59b8..31971842d63 100644
--- a/src/libsyntax/ext/expand.rs
+++ b/src/libsyntax/ext/expand.rs
@@ -1001,6 +1001,7 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
 
     fn strip_unconfigured(&mut self) -> StripUnconfigured {
         StripUnconfigured::new(&self.cx.cfg,
+                               self.cx.ecfg.should_test,
                                &self.cx.parse_sess.span_diagnostic,
                                self.cx.feature_gated_cfgs)
     }
@@ -1106,6 +1107,7 @@ pub struct ExpansionConfig<'feat> {
     pub features: Option<&'feat Features>,
     pub recursion_limit: usize,
     pub trace_mac: bool,
+    pub should_test: bool, // If false, strip `#[test]` nodes
 }
 
 macro_rules! feature_tests {
@@ -1128,6 +1130,7 @@ impl<'feat> ExpansionConfig<'feat> {
             features: None,
             recursion_limit: 64,
             trace_mac: false,
+            should_test: false,
         }
     }