[Chapel Merge] Fix bug causing us to improperly resolve other con

Branch: refs/heads/master
Revision: 5b682cf
Author: lydia-duncan
Log Message:

Merge pull request #17404 from lydia-duncan/fixAssignMethodClassError

Fix bug causing us to improperly resolve other conversions for operator methods
[reviewed by @mppf]

resolveAlsoConversions was expecting dtMethodToken to be the only potential
additional argument but when dtMethodToken is present, there's also a "this"
argument that should be skipped as well. Because we were grabbing the wrong
"toType", we thought the function was generic and would skip analyzing it

In the case of the test that showed this issue, this meant failing to generate
an error message about overloading assignment for classes when other error
messages were triggered due to standalone overloads. However, we would
eventually generate those error messages (just at a later pass)

Fix resolveAlsoConversions to skip both the methodToken and the this argument
instead of just the method token argument.

Updated the relevant test to ensure that all the error messages happen at the same

Passed a full paratest with futures

Modified Files:
M compiler/resolution/resolveFunction.cpp

M test/classes/assignments/noAssignClass.chpl
M test/classes/assignments/noAssignClass.good

Compare: https://github.com/chapel-lang/chapel/compare/865cc300c3b4...5b682cf80248