When I compile with Electric Fence (linux Athlon XP) I get a floating point exception on startup.
The stack trace:
#0 0x0811f2e2 in add_pmc_ext (interpreter=0x400a3cc0, pmc=0x405a7018) at src/headers.c:185
185 PObj_is_PMC_EXT_SET(pmc);
(gdb) back
#0 0x0811f2e2 in add_pmc_ext (interpreter=0x400a3cc0, pmc=0x405a7018) at src/headers.c:185
#1 0x080be248 in pmc_new_ext (interpreter=0x400a3cc0, pmc=0x405a7018, base_type=32)
at src/pmc.c:100
#2 0x080be301 in pmc_new_noinit (interpreter=0x400a3cc0, base_type=32) at src/pmc.c:130
#3 0x080be0fc in pmc_new (interpreter=0x400a3cc0, base_type=32) at src/pmc.c:50
#4 0x0817b1bf in Parrot_ParrotIO_class_init (interp=0x400a3cc0, entry=26) at parrotio.c:329
#5 0x0816fd13 in Parrot_initialize_core_pmcs (interp=0x400a3cc0) at src/core_pmcs.c:83
#6 0x08142208 in init_world (interpreter=0x400a3cc0) at src/global_setup.c:41
#7 0x080efc7e in Parrot_init (interpreter=0x400a3cc0) at src/embed.c:38
#8 0x080724bd in make_interpreter (flags=NO_FLAGS) at src/interpreter.c:829
#9 0x080efc48 in Parrot_new () at src/embed.c:23
#10 0x08070ab3 in main (argc=2, argv=0xbfffdb24) at imcc/main.c:403
#11 0x42017499 in __libc_start_main () from /lib/i686/libc.so.6
When I recompile with ARENA_DOD_FLAGS = 0 (include/parrot/pobj.h) I no longer get the exception.
Something funny is going on but I'm too swamped chasing an IMCC bug to do anything about it. Hopefully someone else has cycles.
-Melvin