https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66021
--- Comment #1 from Nuno Lopes <nunoplopes at sapo dot pt> --- Sorry, a bit more information the problem: On function void reduce_args_tactic::imp::populate_decl2args_proc::operator()(app * n), when compiled with -O0 no call to memory::deallocate(void* p) is made, while with -O2 memory::deallocate is called with p == 0, which cannot happen (since it's called through dealloc_svect, which bails out if the pointer is null). Apologies for not being able to reduce the test case; I don't have much experience with the gcc internals.