r274550 - in /trunk/gcc: cp/ChangeLog cp/tree.c...
jason@gcc.gnu.org
jason@gcc.gnu.org
Thu Aug 15 21:55:00 GMT 2019
Author: jason
Date: Thu Aug 15 21:55:19 2019
New Revision: 274550
URL: https://gcc.gnu.org/viewcvs?rev=274550&root=gcc&view=rev
Log:
PR c++/90393 - ICE with thow in ?:
My previous patch for 64372 was incomplete: it only stopped making the
non-throw argument into an rvalue, lvalue_kind still considered the ?:
expression to be an rvalue, leaving us worse than before.
PR c++/64372, DR 1560 - Gratuitous lvalue-to-rvalue conversion in ?:
* tree.c (lvalue_kind): Handle throw in one arm.
* typeck.c (rationalize_conditional_expr): Likewise.
(cp_build_modify_expr): Likewise.
Added:
trunk/gcc/testsuite/g++.dg/expr/cond15.C
trunk/gcc/testsuite/g++.dg/expr/cond16.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/tree.c
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/g++.dg/abi/mangle53.C
trunk/gcc/testsuite/g++.old-deja/g++.eh/cond1.C
trunk/gcc/testsuite/g++.old-deja/g++.other/cond5.C
More information about the Gcc-cvs
mailing list