]> git.ipfire.org Git - thirdparty/gcc.git/commit
middle-end/114299 - missing error recovery from gimplify failure
authorRichard Biener <rguenther@suse.de>
Mon, 11 Mar 2024 08:35:07 +0000 (09:35 +0100)
committerRichard Biener <rguenther@suse.de>
Mon, 11 Mar 2024 10:22:26 +0000 (11:22 +0100)
commit119f5ae0455f02568159eafa9008a555605e7d71
tree938142b0f1e1ab8cb8b862b3a57e1836b047fb0b
parentdbe5ccda4dbbd064c703cd3ab2a58ea40f08dd1a
middle-end/114299 - missing error recovery from gimplify failure

When internal_get_tmp_var fails to gimplify the value the temporary
SSA name is supposed to be initialized with we can leak SSA names
with a NULL SSA_NAME_DEF_STMT into the IL.  That's bad, so recover
from this by instead returning a decl in that case.

PR middle-end/114299
* gimplify.cc (internal_get_tmp_var): When gimplification
of VAL failed, return a decl.

* gcc.target/i386/pr114299.c: New testcase.
gcc/gimplify.cc
gcc/testsuite/gcc.target/i386/pr114299.c [new file with mode: 0644]