On Friday 10 Sep 2004 03:19, nobu.nokada / softhome.net wrote: > > syscall assumes all arguments to system calls should be > unsigned long. This works fine on platforms int and long are > same, but is int on x86_64 32bits? Sizeof short: 2 Sizeof int: 4 Sizeof long: 8 Sizeof long long: 8 So sizeof(int) != sizeof(long). I guess you need to change unsigned long to unsigned int. in the code. I'll make the change to the ruby source and test it...