Printing the offending string shows that the first few words are the following consistently:
0x65206465 0x70656378 0x6e6f6974
If you decode this as utf8, you get:
"ed exception"
Meaning: printing "unhandled exception" to the error port is corrupting the next memory locations which may contain a string (producing the error) or some other pointer value (producing a segfault).
So, the bug might be in "ikarus.io.ss".
I tried commenting out the bytevector-u8-set! in the UNSAFE module in ikarus.io.ss to see what happens, and indeed, using the safe bytevector-u8-set! does signal an error (but that makes the errors recursive, so, it does not help debugging). At least I narrowed it down to there for now and will look into it later.
I think this is IO related actually.
Printing the offending string shows that the first few words are the following consistently:
0x65206465 0x70656378 0x6e6f6974
If you decode this as utf8, you get:
"ed exception"
Meaning: printing "unhandled exception" to the error port is corrupting the next memory locations which may contain a string (producing the error) or some other pointer value (producing a segfault).
So, the bug might be in "ikarus.io.ss".
I tried commenting out the bytevector-u8-set! in the UNSAFE module in ikarus.io.ss to see what happens, and indeed, using the safe bytevector-u8-set! does signal an error (but that makes the errors recursive, so, it does not help debugging). At least I narrowed it down to there for now and will look into it later.
Aziz,,,