Hi,
[EMAIL PROTECTED], le Sun 07 Jan 2007 21:41:46 -0700, a écrit :
> > /bin/sh: line 1: 31492 Bus error LD_LIBRARY_PATH=../bin:
> > NEKOPATH=../boot:../bin ../bin/neko nekoml -v neko/Main.nml nekoml/Main.nml
The attached patch fixes the build both on sparc and ia64 architectures,
i.e. works fine with align-requiriging, big-endian and 64bits
architectures, so should be fine for others.
Samuel
--- neko-1.5.2-orig/vm/main.c 2006-11-22 16:07:11.000000000 +0100
+++ neko-1.5.2/vm/main.c 2007-01-08 22:31:27.000000000 +0100
@@ -147,10 +147,11 @@
#endif
static int execute( neko_vm *vm, char **argv, int argc ) {
- unsigned int data_pos = *(unsigned int*)(data+10);
+ unsigned int data_pos;
char *exe = executable_path();
value mload;
int ret;
+ memcpy(&data_pos, (data+10), sizeof(data_pos));
if( neko_is_big_endian() )
data_pos = (data_pos >> 24) | ((data_pos >> 8) & 0xFF00) |
((data_pos << 8) & 0xFF0000) | (data_pos << 24);
if( data_pos == 0 ) {