This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/33107] [4.3 regression] segfault in garbage collector
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 Sep 2007 14:03:31 -0000
- Subject: [Bug tree-optimization/33107] [4.3 regression] segfault in garbage collector
- References: <bug-33107-3760@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from jakub at gcc dot gnu dot org 2007-09-05 14:03 -------
Given the backtrace I believe it is the same issue, particularly that
__builtin___strcpy_chk call was folded into __builtin_strcpy, set_rhs
copied over the annotations from the former to the latter CALL_EXPR, but
cgraph_edge still contained a pointer to the old CALL_EXPR. When clearing
up annotations, delete_tree_cfg_annotations would ggc_free the annotation
from latter CALL_EXPR and later on during ggc_collect when marking the
cgraph_edge's call_stmt GC crashed, because we were trying to mark something
that has been already ggc_freed.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33107