[Chapel Merge] next: Add, parse, and convert Select and When stat

Branch: refs/heads/main
Revision: bfcab0e
Author: dlongnecke-cray
Log Message:

Merge pull request #18254 from dlongnecke-cray/next-add-select

next: Add, parse, and convert Select and When statements

This is for compiler/next.

Add uAST nodes for Select and When. Parse and convert them.
Add a test.

This PR does not rebuild the compiler/next parser.

Reviewed by @lydia-duncan. Thanks!

TESTING:

  • [x] Can build chpl
  • [x] All compiler/next tests pass
  • [x] Hellos in release/examples with --compiler-library-parser

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

Modified Files:
A compiler/next/include/chpl/uast/Select.h

A compiler/next/include/chpl/uast/When.h
A compiler/next/lib/uast/Select.cpp
A compiler/next/lib/uast/When.cpp
A compiler/next/test/parsing/testParseSelect.cpp
M compiler/next/include/chpl/uast/ASTClassesList.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/chpl.ypp
M compiler/next/lib/uast/CMakeLists.txt
M compiler/next/lib/uast/Makefile.include
M compiler/next/test/parsing/CMakeLists.txt
M compiler/passes/convert-uast.cpp

Compare: https://github.com/chapel-lang/chapel/compare/17fc34286763...bfcab0ec277a