in src/pmc/os.pmc after retrieving the information of a file with stat or lstat
all the fields are stored in an array of integers. However, the element st_rdev
is a long int (linux and solaris at least). Then the statements like
VTABLE_set_integer_keyed_int(interp, array, 6,
info.st_rdev);
refering to st_rdev are wrong and they need to be modified, I suppouse that we
need to wait to the implementation of bigint (am I right?).
Follows part of the output of t/pmc/os.t that fails on Solaris10:
not ok 6 - Test OS.stat
# Failed test (t/pmc/os.t at line 175)
# got: '47775747
# 41869
# 33188
# 1
# 1000
# 1
# Segmentation Fault - core dumped
# '
# expected: '47775747
# 41869
# 33188
# 1
# 1000
# 1
# 4294967295
# 4
# 1175628720
# 1175628720
# 1175628720
# 512
# 1
# '
# './parrot "/WGpool/ruben/parrot/t/pmc/os_6.pir"' failed with exit code 139
ok 7 - Test OS.readdir
ok 8 - Test OS.rename
not ok 9 - Test OS.lstat
# Failed test (t/pmc/os.t at line 272)
# got: '47775747
# 41869
# 33188
# 1
# 1000
# 1
# -1
# 4
# 1175628720
# 1175628720
# 1175628720
# 512
# 1
# '
# expected: '47775747
# 41869
# 33188
# 1
# 1000
# 1
# 4294967295
# 4
# 1175628720
# 1175628720
# 1175628720
# 512
# 1
# '