Re: machine-level exception r3490
- Posted by jimcbrown (admin) Oct 10, 2010
- 1106 views
I see two problems exposed by this.
Firstly, we crash with a machine-level exception instead of correctly reporting the type-check failure.
Second, the reason for the type check failures is that we get a negative address returned. The types themselves were defined correctly, but something in the conversion of values in the backend is not working correctly.
g3ve4AaAerFu said...
I got this result when running the attached code with r3490 on both XP and debian 5. include/std/memory.e:66 in type machine_addr() A machine-level exception occurred during execution of this statement ... called from d:/eu40/include\std\machine.e:78 in function allocate() ... called from d:/eu40/include\std\io.e:450 --> See ex.err
#!/usr/local/bin/eui -batch include std/datetime.e puts(1, "Content-Type: text/plain; charset=ISO-8859-1\n\n") puts(1, format(now(), "%Y-%m-%d %H:%M:%S LOCAL\n")) puts(1, format(now_gmt(), "%Y-%m-%d %H:%M:%S GMT\n"))