Branch: refs/heads/main
Revision: d24461d
Author: dlongnecke-cray
Log Message:
Merge pull request #18044 from dlongnecke-cray/next-add-import
next: Add support for parsing import statements
This is for compiler/next
.
This PR adds support for parsing import statements. It represents
them with a new uAST
node called Import
. An import statement
contains one or more visibility clauses of type VisibilityClause
.
Rename UseClause
to VisibilityClause
and use it to represent the
contents of both use and import statements.
Add a new LimitationKind
to VisibilityClause
that is called
BRACES
. This represents the unqualified lists that can occur
for symbols in import statements.
Add a test for parsing import statements.
Reviewed by @mppf, @lydia-duncan. Thanks!
TESTING:
- [x] Can build
chpl
- [x] All
compiler/next
tests pass - [x] All hellos in
test/release/examples
pass
Signed-off-by: David Longnecker dlongnecke-cray@users.noreply.github.com
Modified Files:
A compiler/next/include/chpl/uast/Import.h
A compiler/next/include/chpl/uast/VisibilityClause.h
A compiler/next/lib/uast/Import.cpp
A compiler/next/lib/uast/VisibilityClause.cpp
A compiler/next/test/parsing/testParseImport.cpp
R compiler/next/include/chpl/uast/UseClause.h
R compiler/next/lib/uast/UseClause.cpp
M compiler/next/include/chpl/uast/ASTClassesList.h
M compiler/next/include/chpl/uast/Use.h
M compiler/next/include/chpl/uast/all-uast.h
M compiler/next/lib/parsing/ParserContext.h
M compiler/next/lib/parsing/ParserContextImpl.h
M compiler/next/lib/parsing/bison-chpl-lib.cpp
M compiler/next/lib/parsing/chpl.ypp
M compiler/next/lib/resolution/scope-queries.cpp
M compiler/next/lib/uast/CMakeLists.txt
M compiler/next/lib/uast/Makefile.include
M compiler/next/lib/uast/Use.cpp
M compiler/next/test/parsing/CMakeLists.txt
M compiler/next/test/parsing/testParseUse.cpp
M compiler/passes/convert-uast.cpp
Compare: https://github.com/chapel-lang/chapel/compare/7f4ab70f4f00...d24461d6a796