Branch: refs/heads/master
Revision: 4565ae7
Author: lydia-duncan
Log Message:
Merge pull request #17422 from lydia-duncan/fixAnotherPromotionBug
Fix another promotion bug with types that happen to define operator methods
[reviewed by @mppf]
We were accidentally failing to add non-promoted arguments to promotion wrappers
when inside a method on a type that happened to define its own operator overload
for the called operator as a method. This was because for_vector will not
iterate over a vector that starts with a NULL entry, and we used for_vector when
determining the arguments for the promotion wrapper.
Adds a simplified version of the original case that failed as a test. Both this and
the original case work with this change.
Passed a full paratest with futures
Modified Files:
A test/functions/operatorOverloads/operatorMethods/notAllPromoted.chpl
A test/functions/operatorOverloads/operatorMethods/notAllPromoted.good
M compiler/resolution/wrappers.cpp
Compare: https://github.com/chapel-lang/chapel/compare/0964902b2ad6...4565ae7a92f6