https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124553
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Hmm. The following does not help. Maybe I'm misunderstanding sth.
diff --git a/gcc/vec.h b/gcc/vec.h
index 0d4cffd0c3a..948c6d1fcb3 100644
--- a/gcc/vec.h
+++ b/gcc/vec.h
@@ -290,7 +290,7 @@ struct va_heap
CXX_MEM_STAT_INFO);
template<typename T>
- static void release (vec<T, va_heap, vl_embed> *&);
+ static void release (vec<T, va_heap, vl_embed> *& CXX_MEM_STAT_INFO);
};
@@ -311,7 +311,7 @@ va_heap::reserve (vec<T, va_heap, vl_embed> *&v, unsigned
reserve, bool exact
if (GATHER_STATISTICS && v)
v->m_vecpfx.release_overhead (v, elt_size * v->allocated (),
- v->allocated (), false);
+ v->allocated (), false PASS_MEM_STAT);
size_t size = vec<T, va_heap, vl_embed>::embedded_size (alloc);
unsigned nelem = v ? v->length () : 0;
@@ -332,7 +332,7 @@ va_heap::reserve (vec<T, va_heap, vl_embed> *&v, unsigned
reserve, bool exact
template<typename T>
void
-va_heap::release (vec<T, va_heap, vl_embed> *&v)
+va_heap::release (vec<T, va_heap, vl_embed> *&v MEM_STAT_DECL)
{
size_t elt_size = sizeof (T);
if (v == NULL)
@@ -343,7 +343,7 @@ va_heap::release (vec<T, va_heap, vl_embed> *&v)
if (GATHER_STATISTICS)
v->m_vecpfx.release_overhead (v, elt_size * v->allocated (),
- v->allocated (), true);
+ v->allocated (), true PASS_MEM_STAT);
::free (v);
v = NULL;
}