From 66b9ade341360a201c5ba37a9a2d6b6c1597a44b Mon Sep 17 00:00:00 2001 From: Jeffrey Seyfried Date: Wed, 1 Jun 2016 01:27:12 +0000 Subject: Strip `#[test]` nodes during `cfg` processing on non-test builds. --- src/libsyntax/ext/expand.rs | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/libsyntax/ext') 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, } } -- cgit 1.4.1-3-g733a5