summary refs log tree commit diff
path: root/src/comp/front/parser.rs
diff options
context:
space:
mode:
authorJosh Matthews <josh@joshmatthews.net>2011-06-08 03:59:34 -0400
committerJosh Matthews <josh@joshmatthews.net>2011-06-08 03:59:34 -0400
commitb5c73605ead0dc27eb09e5f5860326b2cf2c5cd1 (patch)
tree931ac195a7d135b9438966f6ee038d67d6895d08 /src/comp/front/parser.rs
parenta0788442019daa6509ebc3b0d7dac0ad1d4b424f (diff)
parent0857d22c046c90c3e6ee3adebcee360b2d298341 (diff)
downloadrust-b5c73605ead0dc27eb09e5f5860326b2cf2c5cd1.tar.gz
rust-b5c73605ead0dc27eb09e5f5860326b2cf2c5cd1.zip
Merge remote branch 'graydon/master'
Diffstat (limited to 'src/comp/front/parser.rs')
-rw-r--r--src/comp/front/parser.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/comp/front/parser.rs b/src/comp/front/parser.rs
index 62ba7325f99..b84a740a917 100644
--- a/src/comp/front/parser.rs
+++ b/src/comp/front/parser.rs
@@ -2362,10 +2362,14 @@ fn parse_crate_directive(&parser p) -> ast::crate_directive
         expect(p, token::SEMI);
         ret spanned(lo, hi, ast::cdir_auth(n, a));
     } else if (eat_word(p, "meta")) {
+        auto mv = ast::local_meta;
+        if (eat_word(p, "export")) {
+            mv = ast::export_meta;
+        }
         auto mis = parse_meta(p);
         auto hi = p.get_hi_pos();
         expect(p, token::SEMI);
-        ret spanned(lo, hi, ast::cdir_meta(mis));
+        ret spanned(lo, hi, ast::cdir_meta(mv, mis));
     } else if (eat_word(p, "mod")) {
         auto id = parse_ident(p);
         auto file_opt = none[filename];