]> git.lizzy.rs Git - rust.git/commitdiff
review feedback: common-subexpression-elim across functions in pushpop_safe impl.
authorFelix S. Klock II <pnkfelix@pnkfx.org>
Thu, 23 Jul 2015 14:22:05 +0000 (16:22 +0200)
committerFelix S. Klock II <pnkfelix@pnkfx.org>
Thu, 23 Jul 2015 21:39:28 +0000 (23:39 +0200)
src/libsyntax/ext/pushpop_safe.rs

index fee445cd31af3ff2934967137c037a653f87eda4..a67d550d3cd213d193e26f708a5a69c12a164304 100644 (file)
@@ -48,24 +48,24 @@ enum PushPop { Push, Pop }
 
 pub fn expand_push_unsafe<'cx>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree])
                                -> Box<base::MacResult+'cx> {
-    feature_gate::check_for_pushpop_syntax(
-        cx.ecfg.features, &cx.parse_sess.span_diagnostic, sp);
     expand_pushpop_unsafe(cx, sp, tts, PushPop::Push)
 }
 
 pub fn expand_pop_unsafe<'cx>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree])
                                -> Box<base::MacResult+'cx> {
-    feature_gate::check_for_pushpop_syntax(
-        cx.ecfg.features, &cx.parse_sess.span_diagnostic, sp);
     expand_pushpop_unsafe(cx, sp, tts, PushPop::Pop)
 }
 
 fn expand_pushpop_unsafe<'cx>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree],
                                   pp: PushPop) -> Box<base::MacResult+'cx> {
+    feature_gate::check_for_pushpop_syntax(
+        cx.ecfg.features, &cx.parse_sess.span_diagnostic, sp);
+
     let mut exprs = match get_exprs_from_tts(cx, sp, tts) {
         Some(exprs) => exprs.into_iter(),
         None => return DummyResult::expr(sp),
     };
+
     let expr = match (exprs.next(), exprs.next()) {
         (Some(expr), None) => expr,
         _ => {