From: David Malcolm Date: Fri, 22 Jul 2022 23:50:37 +0000 (-0400) Subject: analyzer: fix ICE in binding_cluster ctor [PR106401] X-Git-Tag: basepoints/gcc-14~5401 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0fb35a45a28c674d5d420528f7dec629e42b4850;p=thirdparty%2Fgcc.git analyzer: fix ICE in binding_cluster ctor [PR106401] gcc/analyzer/ChangeLog: PR analyzer/106401 * store.cc (binding_cluster::binding_cluster): Remove overzealous assertion; we're checking for tracked_p in store::get_or_create_cluster. gcc/testsuite/ChangeLog: PR analyzer/106401 * gcc.dg/analyzer/memcpy-2.c: New test. Signed-off-by: David Malcolm --- diff --git a/gcc/analyzer/store.cc b/gcc/analyzer/store.cc index e3dabf300df..0b3fb370d1e 100644 --- a/gcc/analyzer/store.cc +++ b/gcc/analyzer/store.cc @@ -1107,7 +1107,6 @@ binding_cluster::binding_cluster (const region *base_region) : m_base_region (base_region), m_map (), m_escaped (false), m_touched (false) { - gcc_assert (base_region->tracked_p ()); } /* binding_cluster's copy ctor. */ diff --git a/gcc/testsuite/gcc.dg/analyzer/memcpy-2.c b/gcc/testsuite/gcc.dg/analyzer/memcpy-2.c new file mode 100644 index 00000000000..88ec84cb640 --- /dev/null +++ b/gcc/testsuite/gcc.dg/analyzer/memcpy-2.c @@ -0,0 +1,8 @@ +/* { dg-additional-options "-Wno-stringop-overflow" } */ + +void +main (int c, void *v) +{ + static char a[] = ""; + __builtin_memcpy (v, a, -1); +}