about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-02-11 02:11:41 -0800
committerbors <bors@rust-lang.org>2014-02-11 02:11:41 -0800
commit1dc6359a0abd414ed2414da2cfd3751f364a59bf (patch)
treec51e0f20864f19d07d42e0dc18303020dc4314e9 /src/libsyntax
parent86e6a5cf7beb567ff908ea35748392bd0bb01b58 (diff)
parentccd1cda10eaa570e67d8daccfcb3e0e3b651da2d (diff)
downloadrust-1dc6359a0abd414ed2414da2cfd3751f364a59bf.tar.gz
rust-1dc6359a0abd414ed2414da2cfd3751f364a59bf.zip
auto merge of #12175 : sfackler/rust/phase-use-ignored, r=alexcrichton
It could throw an error but I think it's best to not since `#[phase(..)]` syntax in other places would be silently ignored.

Closes #11806
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/ext/expand.rs21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs
index cfad88e2482..69611829c7c 100644
--- a/src/libsyntax/ext/expand.rs
+++ b/src/libsyntax/ext/expand.rs
@@ -394,15 +394,20 @@ pub fn expand_item_mac(it: @ast::Item, fld: &mut MacroExpander)
 pub fn expand_view_item(vi: &ast::ViewItem,
                         fld: &mut MacroExpander)
                         -> ast::ViewItem {
-    let should_load = vi.attrs.iter().any(|attr| {
-        attr.name().get() == "phase" &&
-            attr.meta_item_list().map_or(false, |phases| {
-                attr::contains_name(phases, "syntax")
-            })
-    });
+    match vi.node {
+        ast::ViewItemExternMod(..) => {
+            let should_load = vi.attrs.iter().any(|attr| {
+                attr.name().get() == "phase" &&
+                    attr.meta_item_list().map_or(false, |phases| {
+                        attr::contains_name(phases, "syntax")
+                    })
+            });
 
-    if should_load {
-        load_extern_macros(vi, fld);
+            if should_load {
+                load_extern_macros(vi, fld);
+            }
+        }
+        ast::ViewItemUse(_) => {}
     }
 
     noop_fold_view_item(vi, fld)