aboutsummaryrefslogtreecommitdiff
path: root/gcc/analyzer/ChangeLog
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2020-02-17 09:18:39 -0500
committerDavid Malcolm <dmalcolm@redhat.com>2020-02-18 08:12:06 -0500
commita674c7b8b8028c5d7e52dd38783e8e2b02034b63 (patch)
treec5aaa4e81dd37da06b6b6a74c77efa2ea63b502e /gcc/analyzer/ChangeLog
parent68f9c41d54a7839e90d10e1400c8726c8ccde88d (diff)
analyzer: fix ICE on pointer arithmetic with incomplete types [PR 93774]
PR analyzer/93774 reports an ICE in gfortran with -fanalyzer within region_model::convert_byte_offset_to_array_index on a pointer of incomplete type ("character(kind=1)[0:][1:0] * restrict"). This patch bulletproofs the routine against incomplete types, fixing the ICE. gcc/analyzer/ChangeLog: PR analyzer/93774 * region-model.cc (region_model::convert_byte_offset_to_array_index): Use int_size_in_bytes before calling size_in_bytes, to gracefully fail on incomplete types. gcc/testsuite/ChangeLog: PR analyzer/93774 * gfortran.dg/analyzer/deferred_character_25.f90: New test, based on gfortran.dg/deferred_character_25.f90.
Diffstat (limited to 'gcc/analyzer/ChangeLog')
-rw-r--r--gcc/analyzer/ChangeLog8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index f9fd80c1cf5..9e57209a742 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,11 @@
+2020-02-18 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/93774
+ * region-model.cc
+ (region_model::convert_byte_offset_to_array_index): Use
+ int_size_in_bytes before calling size_in_bytes, to gracefully fail
+ on incomplete types.
+
2020-02-17 David Malcolm <dmalcolm@redhat.com>
PR analyzer/93775