diff options
author | David Malcolm <dmalcolm@redhat.com> | 2020-08-15 15:34:21 -0400 |
---|---|---|
committer | David Malcolm <dmalcolm@redhat.com> | 2020-08-17 14:45:00 -0400 |
commit | 35c5f8fb432c8e68af68ab48c8d3107e7839775e (patch) | |
tree | b1da377e692ddf911a2e70a51153f32383ead30d /gcc/go | |
parent | 9e026191547225ca02c1eda91f898271fced3bbf (diff) | |
download | gcc-35c5f8fb432c8e68af68ab48c8d3107e7839775e.zip gcc-35c5f8fb432c8e68af68ab48c8d3107e7839775e.tar.gz gcc-35c5f8fb432c8e68af68ab48c8d3107e7839775e.tar.bz2 |
analyzer: handle &STRING_CST in constant pool initializers [PR96642]
In r11-2708-g2867118ddda9b56d991c16022f7d3d634ed08313 I added support to
the analyzer for initialization from var_decls in the global constant
pool. However, that commit didn't support initialization from
ADDR_EXPR of a STRING_CST leading to an ICE seen in data-model-1.c and
pr94639.c on arm and powerpc64 at least, and as PR analyzer/96642 on
x86_64 at least.
This patch adds support for such initializers, fixing the ICE.
gcc/analyzer/ChangeLog:
PR analyzer/96642
* store.cc (get_svalue_for_ctor_val): New.
(binding_map::apply_ctor_to_region): Call it.
gcc/testsuite/ChangeLog:
PR analyzer/96642
* gcc.dg/analyzer/pr96642.c: New test.
Diffstat (limited to 'gcc/go')
0 files changed, 0 insertions, 0 deletions