This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()


------- Additional Comments From ovidr at users dot sourceforge dot net  2005-06-08 21:14 -------
Since this bug seems a bit lost, I've been trying some things on my own without
success.

Can someone please explain:

If "referent" is just a RawData pointer to some Object, how are its previous
finalizers supposed to be found?  How to append them along with the new
finalizer in the correct order (order matters?) to
GC_REGISTER_FINALIZER_NO_ORDER (GC_register_finalizer_inner(obj, fn, cd, ofn,
ocd, mp)) which seems to be what is used in natObject.cc? 

The comments in this bug seem to suggest that there is some similar code
somewhere that I could lift and hook into natReference.create, but all the code
in natObject and String.intern finalization looks very different to my
novice-gcj eyes since they don't seem to be working with some foreign object,
nor with finalizers that aren't already locally stored in a struct.  

Secondly, is there any way to craft a testcase for this to know if it has been
fixed?  I don't fully understand why (based on comment #6) this would ever cause
a crash, and waiting many days for the crash of my apps is a very tedious process.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]