Hello all, I'm tracking down a segfault in io_freerealloc, but my unfamiliarity with the iovm, and the superabundance of damn preprocessor macros are making it difficult.
To reproduce (on linux):
$ pwd
<path to io>/libs/iovm/tests/correctness
$ io
Io 20090105
Io> doFile("UnicodeTest.io")
*** glibc detected *** io: realloc(): invalid next size: 0x0821ad90
======= Backtrace: =========
/lib/libc.so.6[0xb7d9640e]
/lib/libc.so.6[0xb7d98b5c]
/lib/libc.so.6(realloc+0x182)[0xb7d995f7]
/usr/local/lib/libiovmall.so(io_freerealloc+0x20)[0xb7e60450]
/usr/local/lib/libiovmall.so(UArray_setSize_+0x49)[0xb7ea1049]
/usr/local/lib/libiovmall.so(UArray_at_putLong_+0x6d)[0xb7ea137d]
...
Note that 'io run.io UnicodeTest.io' works fine, as does 'io UnicodeTest.io'. It seems to occur only when UnicodeTest.io is invoked from the REPL.
This is also reproducable on Windows. Guidance appreciated.
Simon.