Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

not really an issue but a place to post test results. #1

Open
iains opened this issue May 8, 2024 · 2 comments
Open

not really an issue but a place to post test results. #1

iains opened this issue May 8, 2024 · 2 comments

Comments

@iains
Copy link
Owner

iains commented May 8, 2024

NOTES:

  • To build Ada you need an Ada-capable bootstrap/host compiler - I'm using a version based on GCC-11.4
  • To build D you need a D-capable bootstrap/host compiler - likewise i am using GCC-11.4
  • To build D on MacOSX 10.5 / Darwin9, you need to use at least ld64-97 (it uses idioms not supported by the Xcode-3.1.4 ld64-85.2.1)

For the first time (recent changes here) this release testing was more than 90% Solar-Powered 👍

--- Arm64

summ-aarch64-darwin22-r14-10255.txt

summ-aarch64-darwin21-r14-10254.txt

--- x86_64

summ-x86_64-darwin23-r14-10254.txt

summ-x86_64-darwin21-r14-10254.txt

summ-x86_64-darwin21-r14-10254-rosetta.txt

summ-x86_64-darwin20-r14-10254.txt

summ-x86_64-darwin19-r14-10254.txt

summ-x86_64-darwin18-r14-10254.txt

summ-x86_64-darwin17-r14-10254.txt

summ-x86_64-darwin16-r14-10254.txt

summ-x86_64-darwin15-r14-10254.txt

summ-x86_64-darwin14-r14-10254.txt

summ-x86_64-darwin13-r14-10254.txt

summ-x86_64-darwin12-r14-10254.txt

summ-x86_64-darwin11-r14-10254.txt

summ-x86_64-darwin10-r14-10254.txt

--- i686

summ-i686-darwin17-r14-10254.txt

summ-i686-darwin9-r14-10254.txt

--- powerpc

summ-powerpc-darwin9-r14-10254.txt

iains pushed a commit that referenced this issue Jul 21, 2024
Here during overload resolution we have two strictly viable ambiguous
candidates #1 and #2, and two non-strictly viable candidates #3 and #4
which we hold on to ever since r14-6522.  These latter candidates have
an empty second arg conversion since the first arg conversion was deemed
bad, and this trips up joust when called on #3 and #4 which assumes all
arg conversions are there.

We can fix this by making joust robust to empty arg conversions, but in
this situation we shouldn't need to compare #3 and #4 at all given that
we have a strictly viable candidate.  To that end, this patch makes
tourney shortcut considering non-strictly viable candidates upon
encountering ambiguity between two strictly viable candidates (taking
advantage of the fact that the candidates list is sorted according to
viability via splice_viable).

	PR c++/115239

gcc/cp/ChangeLog:

	* call.cc (tourney): Don't consider a non-strictly viable
	candidate as the champ if there was ambiguity between two
	strictly viable candidates.

gcc/testsuite/ChangeLog:

	* g++.dg/overload/error7.C: New test.

Reviewed-by: Jason Merrill <jason@redhat.com>
(cherry picked from commit 7fed7e9bbc57d502e141e079a6be2706bdbd4560)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant