diff options
author | David Malcolm <dmalcolm@redhat.com> | 2024-04-10 16:43:30 -0400 |
---|---|---|
committer | David Malcolm <dmalcolm@redhat.com> | 2024-04-10 16:43:30 -0400 |
commit | 4a94551d7eaaf7a75c5195fc0bf4af94185a04c7 (patch) | |
tree | c717cac5e8d2d4c3a022d1390ffd2b48fdcb379b /libgcc | |
parent | 107b0e63be023c11017aa53625a6557950df4d99 (diff) | |
download | gcc-4a94551d7eaaf7a75c5195fc0bf4af94185a04c7.zip gcc-4a94551d7eaaf7a75c5195fc0bf4af94185a04c7.tar.gz gcc-4a94551d7eaaf7a75c5195fc0bf4af94185a04c7.tar.bz2 |
analyzer: fix ICE on negative values for size_t [PR114472]
I made several attempts to fix this properly, but for now apply
a band-aid to at least prevent crashing on such cases.
gcc/analyzer/ChangeLog:
PR analyzer/114472
* access-diagram.cc (bit_size_expr::maybe_get_formatted_str):
Reject attempts to print sizes that are too large.
* region.cc (region_offset::calc_symbolic_bit_offset): Use a
typeless svalue for the bit offset.
* store.cc (bit_range::intersects_p): Replace assertion with
test.
(bit_range::exceeds_p): Likewise.
(bit_range::falls_short_of_p): Likewise.
gcc/testsuite/ChangeLog:
* c-c++-common/analyzer/out-of-bounds-pr114472.c: New test.
Signed-off-by: David Malcolm <dmalcolm@redhat.com>
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions