about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2012-05-22 10:54:12 -0700
committerPatrick Walton <pcwalton@mimiga.net>2012-07-02 18:30:12 -0700
commitf093d374edb89aedc940468d3d789dd95cec6347 (patch)
tree8d9197ba35866b536c4a5ed8178f69387e4a69af /src/libsyntax
parent0b1edb7f0e25cae2a1f519af17bfc76682af0e14 (diff)
downloadrust-f093d374edb89aedc940468d3d789dd95cec6347.tar.gz
rust-f093d374edb89aedc940468d3d789dd95cec6347.zip
rustc: Implement a new resolve pass behind a compile flag
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/ast_util.rs7
-rw-r--r--src/libsyntax/codemap.rs3
-rw-r--r--src/libsyntax/parse.rs4
-rw-r--r--src/libsyntax/parse/classify.rs3
-rw-r--r--src/libsyntax/parse/parser.rs9
-rw-r--r--src/libsyntax/print/pprust.rs2
6 files changed, 21 insertions, 7 deletions
diff --git a/src/libsyntax/ast_util.rs b/src/libsyntax/ast_util.rs
index 0115ffb0331..c6fb9349ad5 100644
--- a/src/libsyntax/ast_util.rs
+++ b/src/libsyntax/ast_util.rs
@@ -572,6 +572,13 @@ fn walk_pat(pat: @pat, it: fn(@pat)) {
     }
 }
 
+fn view_path_id(p: @view_path) -> node_id {
+    alt p.node {
+      view_path_simple(_, _, id) | view_path_glob(_, id) |
+      view_path_list(_, _, id) { id }
+    }
+}
+
 // Local Variables:
 // mode: rust
 // fill-column: 78;
diff --git a/src/libsyntax/codemap.rs b/src/libsyntax/codemap.rs
index 4c30016fdc8..3daf9106b06 100644
--- a/src/libsyntax/codemap.rs
+++ b/src/libsyntax/codemap.rs
@@ -4,6 +4,9 @@ export filename;
 export filemap;
 export span;
 export file_substr;
+export fss_none;
+export fss_internal;
+export fss_external;
 export codemap;
 export expn_info;
 export expn_info_;
diff --git a/src/libsyntax/parse.rs b/src/libsyntax/parse.rs
index bf9a7dd2ace..7ddc763fac9 100644
--- a/src/libsyntax/parse.rs
+++ b/src/libsyntax/parse.rs
@@ -18,8 +18,8 @@ import common::parser_common;
 import ast::node_id;
 import util::interner;
 // FIXME (#1935): resolve badness
-import lexer::*;//{string_reader_as_reader, tt_reader_as_reader,
-               //reader, string_reader, tt_reader};
+import lexer::{string_reader_as_reader, tt_reader_as_reader, reader,
+               string_reader, tt_reader};
 import diagnostic::{span_handler, mk_span_handler, mk_handler, emitter};
 
 type parse_sess = @{
diff --git a/src/libsyntax/parse/classify.rs b/src/libsyntax/parse/classify.rs
index a3d55df320b..9b36b77407e 100644
--- a/src/libsyntax/parse/classify.rs
+++ b/src/libsyntax/parse/classify.rs
@@ -1,7 +1,8 @@
 /*
   Predicates on exprs and stmts that the pretty-printer and parser use
  */
-import ast_util::*;
+
+import ast_util::operator_prec;
 
 fn expr_requires_semi_to_be_stmt(e: @ast::expr) -> bool {
     alt e.node {
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 0492ab27346..d1f19c3d47e 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -5,18 +5,21 @@ import token::{can_begin_expr, is_ident, is_plain_ident};
 import codemap::{span,fss_none};
 import util::interner;
 import ast_util::{spanned, respan, mk_sp, ident_to_path, operator_prec};
-import ast::*;
 import lexer::reader;
 import prec::{as_prec, token_to_binop};
 import attr::parser_attr;
 import common::{seq_sep_trailing_disallowed, seq_sep_trailing_allowed,
-                seq_sep_none, token_to_str};
-import common::*;//{parser_common};
+                seq_sep_none, token_to_str, parser_common};
 import dvec::{dvec, extensions};
 import vec::{push};
+import ast::*;
 
 export file_type;
 export parser;
+export parse_expr;
+export parse_pat;
+export CRATE_FILE;
+export SOURCE_FILE;
 
 // FIXME (#1893): #ast expects to find this here but it's actually
 // defined in `parse` Fixing this will be easier when we have export
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index 2680fa1a981..5f2aada9fc6 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -1,4 +1,3 @@
-import parse::classify::*;
 import parse::comments;
 import parse::lexer;
 import codemap::codemap;
@@ -8,6 +7,7 @@ import pp::{break_offset, word, printer,
 import diagnostic;
 import ast_util::operator_prec;
 import dvec::{dvec, extensions};
+import parse::classify::*;
 
 // The ps is stored here to prevent recursive type.
 enum ann_node {