summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@ucc.asn.au>2018-02-24 11:44:47 +0800
committerJohn Hodge <tpg@ucc.asn.au>2018-02-24 11:44:47 +0800
commit293badaed75dfff438ea5d15b1087c78ced8dbec (patch)
treeef9742e4025e097b3595b5ec34d86d6d19d5c388
parentd2d9aed16249b61e956e5b896f1bdba40f7e7aa9 (diff)
downloadmrust-293badaed75dfff438ea5d15b1087c78ced8dbec.tar.gz
Parse - Handle `use *;`, fixes #60
-rw-r--r--disabled_tests_run-pass.txt1
-rw-r--r--src/parse/root.cpp3
2 files changed, 3 insertions, 1 deletions
diff --git a/disabled_tests_run-pass.txt b/disabled_tests_run-pass.txt
index 51b9fbaa..b1401cb3 100644
--- a/disabled_tests_run-pass.txt
+++ b/disabled_tests_run-pass.txt
@@ -35,7 +35,6 @@ lex-bare-cr-nondoc-comment # Don't treat \r as a new line
# PARSE
align-struct # repr(align(2)) - Need to support integers in attributes
catch-expr # MISSING: `do catch {}` syntax
-import-glob-crate # MISSING: Glob at top-level (`use *;`)
issue-37733 # for<'a> in types
issue-39089 # for<'a> in optional traits
loop-break-value # TODO: Handle loop labels in expression position.
diff --git a/src/parse/root.cpp b/src/parse/root.cpp
index da61f4aa..8fa72fb3 100644
--- a/src/parse/root.cpp
+++ b/src/parse/root.cpp
@@ -1354,6 +1354,9 @@ void Parse_Use(TokenStream& lex, ::std::function<void(AST::UseStmt, ::std::strin
Parse_Use_Set(lex, span_start, path, fcn);
GET_CHECK_TOK(tok, lex, TOK_BRACE_CLOSE);
return;
+ case TOK_STAR:
+ Parse_Use_Wildcard( lex.end_span(span_start), mv$(path), fcn );
+ return;
case TOK_INTERPOLATED_PATH:
path = mv$(tok.frag_path());
break;