C++ PATCHes for conditional operator issues
Jason Merrill
jason@redhat.com
Fri May 9 18:12:00 GMT 2014
While I was working on reference binding diagnostics, I noticed a latent
bug with conversion10.C that I tracked down to a problem with the fix
for c++/22434: we don't want to do a bad conversion early if we will
find a better one later through overload resolution. So the first patch
fixes that PR better. And after that I decided to see if there were any
other ?: issues to be fixed.
The next patch fixes a couple of complaints about the diagnostic we give
when we can't figure out how to handle different types; if the problem
is ambiguous conversions, we should say that. And if the problem is
unrelated types, we should say that instead of talking about overload
resolution.
The third patch fixes an issue that isn't specific to conditional
operators, but was reported in that context; stabilize_expr was
inappropriately turning a prvalue into an lvalue, causing wrong overload
resolution.
The last patch implements DR 587, which allows glvalues of the same type
and value category but with different cv-qualifiers to produce a glvalue
result.
Tested x86_64-pc-linux-gnu, applying to trunk.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 22434.patch
Type: text/x-patch
Size: 2447 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140509/65ffe347/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 32019.patch
Type: text/x-patch
Size: 3874 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140509/65ffe347/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 58714.patch
Type: text/x-patch
Size: 1436 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140509/65ffe347/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dr587.patch
Type: text/x-patch
Size: 4153 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140509/65ffe347/attachment-0003.bin>
More information about the Gcc-patches
mailing list