Branch: refs/heads/main
Revision: 2130cf5
Author: mppf
Link: dyno: function disambiguation by mppf · Pull Request #19206 · chapel-lang/chapel · GitHub
Log Message:
Merge pull request #19206 from mppf/next-disambiguation
dyno: function disambiguation
This PR adds a port of the function disambiguation logic to the new
compiler rework effort, including some new tests. None of these changes
impact the production compiler at this point. The new code is primarily
porting the old logic and rules to work with uAST and the dyno type
system.
Reviewed by @vasslitvinov - thanks!
- [x] full local testing
Future Work:
-
This implementation inherits the complexity of the language and the old
implementation. The following issue asks if we can simplify the
language in this area:- #19195
-
This implementation uses a different approach for isMoreVisible than
the production compiler and this issue discusses the specifics of the
language design in that area:-
#19167
Modified Files:
A compiler/next/include/chpl/resolution/disambiguation.h
A compiler/next/include/chpl/resolution/intents.h
A compiler/next/include/chpl/util/bitmap.h
A compiler/next/lib/resolution/disambiguation.cpp
A compiler/next/lib/resolution/intents.cpp
A compiler/next/lib/util/bitmap.cpp
A compiler/next/test/resolution/testDisambiguation.cpp
M compiler/next/include/chpl/parsing/parsing-queries.h
M compiler/next/include/chpl/queries/all-global-strings.h
M compiler/next/include/chpl/queries/global-strings.h
M compiler/next/include/chpl/resolution/can-pass.h
M compiler/next/include/chpl/resolution/resolution-queries.h
M compiler/next/include/chpl/resolution/resolution-types.h
M compiler/next/include/chpl/resolution/scope-types.h
M compiler/next/include/chpl/types/BoolType.h
M compiler/next/include/chpl/types/ComplexType.h
M compiler/next/include/chpl/types/ImagType.h
M compiler/next/include/chpl/types/IntType.h
M compiler/next/include/chpl/types/PrimitiveType.h
M compiler/next/include/chpl/types/RealType.h
M compiler/next/include/chpl/types/UintType.h
M compiler/next/include/chpl/uast/Function.h
M compiler/next/lib/parsing/parsing-queries.cpp
M compiler/next/lib/resolution/CMakeLists.txt
M compiler/next/lib/resolution/Makefile.include
M compiler/next/lib/resolution/resolution-queries.cpp
M compiler/next/lib/resolution/resolution-types.cpp
M compiler/next/lib/types/ComplexType.cpp
M compiler/next/lib/types/ImagType.cpp
M compiler/next/lib/types/IntType.cpp
M compiler/next/lib/types/RealType.cpp
M compiler/next/lib/types/UintType.cpp
M compiler/next/lib/util/CMakeLists.txt
M compiler/next/lib/util/Makefile.include
M compiler/next/test/resolution/CMakeLists.txt
M compiler/next/test/resolution/testInteractive.cpp
M compiler/next/test/resolution/testPoi.cpp
M compiler/resolution/functionResolution.cpp
M doc/rst/meta/compiler-internals-doxygen/base.rstCompare: Comparing 0297d8174803...2130cf548730 · chapel-lang/chapel · GitHub
-