diff options
author | Nina Ranns <dinka.ranns@gmail.com> | 2024-07-04 17:08:58 +0100 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2024-07-10 11:17:33 -0400 |
commit | c829042849da4e82668db8c845ef0847264c8687 (patch) | |
tree | 4977281161511b5aef66909103b8c1150ff4ba52 /gcc/c/c-decl.cc | |
parent | 8326956159053b215b5cfe6cd41bfceff413491e (diff) | |
download | gcc-c829042849da4e82668db8c845ef0847264c8687.zip gcc-c829042849da4e82668db8c845ef0847264c8687.tar.gz gcc-c829042849da4e82668db8c845ef0847264c8687.tar.bz2 |
c++, contracts: Fix ICE in create_tmp_var [PR113968]
During contract parsing, in grok_contract(), we proceed even if the
condition contains errors. This results in contracts with embedded errors
which eventually confuse gimplify. Checks for errors have been added in
grok_contract() to exit early if an error is encountered.
PR c++/113968
gcc/cp/ChangeLog:
* contracts.cc (grok_contract): Check for error_mark_node early
exit.
gcc/testsuite/ChangeLog:
* g++.dg/contracts/pr113968.C: New test.
Signed-off-by: Nina Ranns <dinka.ranns@gmail.com>
Diffstat (limited to 'gcc/c/c-decl.cc')
0 files changed, 0 insertions, 0 deletions