Oliver Kellogg wrote: > On Fri, 2009-08-14 at 10:41 +0100, Andrew Haley wrote: >>> I am stuck here, i.e. I don't know how to find the code >>> that is >>> at fault. >>> Is there some way to trace a pointer entered in >>> G.free_object_list >>> back to its origin in the code? >> The usual way to find this is to use a gdb watchpoint. Find what object is >> being freed, put a breakpoing on ggc_alloc_stat at the point the object is >> created, and then put a watchpoint on the word that is being corrupted. >> >> Andrew. > > Thanks. > I tried as follows:
That's not gonna work. Put a breakpoint at the end of ggc_alloc_stat. It'll have to be a conditional breakpoint on the address of the node that's being corrupted. When the object is created, add the watchpoint. Andrew.