https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93774
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by David Malcolm <dmalc...@gcc.gnu.org>: https://gcc.gnu.org/g:a674c7b8b8028c5d7e52dd38783e8e2b02034b63 commit r10-6694-ga674c7b8b8028c5d7e52dd38783e8e2b02034b63 Author: David Malcolm <dmalc...@redhat.com> Date: Mon Feb 17 09:18:39 2020 -0500 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.