[Bug c++/84961] [7/8 Regression] ICE error: SSA_NAME_DEF_STMT is wrong
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Mar 21 20:20:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84961
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Wed Mar 21 20:19:33 2018
New Revision: 258741
URL: https://gcc.gnu.org/viewcvs?rev=258741&root=gcc&view=rev
Log:
PR c++/84961
* cp-tree.h (genericize_compound_lvalue): Declare.
* typeck.c (genericize_compound_lvalue): New function.
(unary_complex_lvalue, cp_build_modify_expr): Use it.
* semantics.c (finish_asm_stmt): Replace MODIFY_EXPR, PREINCREMENT_EXPR
and PREDECREMENT_EXPR in output and "m" constrained input operands with
COMPOUND_EXPR. Call cxx_mark_addressable on the rightmost
COMPOUND_EXPR operand.
* c-c++-common/pr43690.c: Don't expect errors on "m" (--x) and
"m" (++x) in C++.
* g++.dg/torture/pr84961-1.C: New test.
* g++.dg/torture/pr84961-2.C: New test.
Added:
trunk/gcc/testsuite/g++.dg/torture/pr84961-1.C
trunk/gcc/testsuite/g++.dg/torture/pr84961-2.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/semantics.c
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/c-c++-common/pr43690.c
More information about the Gcc-bugs
mailing list