[Chapel Merge] --explain-call to report multiple best candidates

Branch: refs/heads/main
Revision: 83ca8ab57566a0afb524573b847825e116d8830f
Author: vasslitvinov
Link: --explain-call to report multiple best candidates by vasslitvinov · Pull Request #25070 · chapel-lang/chapel · GitHub
Log Message:
--explain-call to report multiple best candidates (#25070)

This PR makes --explain-call option show ALL "best" candidates being
considered in the case of return intent overloads. This may be useful
when the user is expecting one overload to be invoked and does not
realize that another overload is also being considered
because of return intent overload.

r: @mppf

Compare: Comparing bab2356c54144aa5f121ff7fb0a0a5ace5c637d5...59f8b1efd20345283c9f8d238d25004a955f80d5 · chapel-lang/chapel · GitHub

M compiler/resolution/functionResolution.cpp
A test/functions/ferguson/ref-pair/explain-call.chpl
A test/functions/ferguson/ref-pair/explain-call.compopts
A test/functions/ferguson/ref-pair/explain-call.good