[Chapel Merge] dyno: Fix a few more bugs in the parser/converter

Branch: refs/heads/main
Revision: 7988e8d
Author: dlongnecke-cray
Link: dyno: Fix a few more bugs in the parser/converter by dlongnecke-cray · Pull Request #19787 · chapel-lang/chapel · GitHub
Log Message:

Merge pull request #19787 from dlongnecke-cray/dyno-last-parser-bugs

dyno: Fix a few more bugs in the parser/converter (#19787)

This is a small patch which fixes a few bugs in the parser and
converter for the new frontend.

Stop sanitizing the contents of As nodes in the node constructor.

Add support for parsing skyline array types and adjust the converter
to perform some special lowering for them.

Add another error message for import limitation lists that contain
renamings.

Do not enter a scope in the parser when a syntax error has occurred
before the body of a function. This fixes a segfault. Ideally we
would use the Bison error directive instead.

[Summary: #Successes = 13577 | #Failures = 30 | #Futures = 0]

TESTING

  • [x] ALL on linux64 when COMM=none

Reviewed by @arezaii. Thanks!

Signed-off-by: David Longnecker dlongnecke-cray@users.noreply.github.com

Modified Files:
M compiler/dyno/include/chpl/uast/As.h

M compiler/dyno/lib/parsing/ParserContextImpl.h
M compiler/dyno/lib/parsing/bison-chpl-lib.cpp
M compiler/dyno/lib/parsing/chpl.ypp
M compiler/dyno/lib/parsing/flex-chpl-lib.cpp
M compiler/dyno/lib/parsing/flex-chpl-lib.h
M compiler/passes/convert-uast.cpp

Compare: https://github.com/chapel-lang/chapel/compare/9b113b4f451c...7988e8d021b7