Long (and tiring) story short:
I have an extension that is 40 lines* in total, the C code and Ruby
code that exercise it. It core dumps, while I repeatedly call a method
that just returns Qtrue.
All it really does is:
rb_iv_set(self, “@v”, 100);
in initialize. If I change that 100 to 99, it doesn’t core dump.
Change it back to 100, it core dumps within a few seconds.
Further, the while loop that executes it looks like this:
If I take out the print statement, it keeps on running. Put back the
print statement, and it core dumps.
This is a self-compiled 1.8.4 on Ubuntu i386. A friend confirms that
the same thing happens to him on Gentoo with 1.8.4.
I am attaching the code, hopefully its going to come through.
- It was around 600, and use to core dump every 8 hours or so.
Snipping it down to these 40 lines was pure blind luck, and many 8
hour turnaround iterations.