[pypy-commit] pypy default: checking in win64 ll_os.py which is not worse than before: test_utimes fails
ctismer
noreply at buildbot.pypy.org
Sat Mar 17 02:08:38 CET 2012
Author: Christian Tismer <tismer at stackless.com>
Branch:
Changeset: r53744:48737ef043ba
Date: 2012-03-16 18:08 -0700
http://bitbucket.org/pypy/pypy/changeset/48737ef043ba/
Log: checking in win64 ll_os.py which is not worse than before:
test_utimes fails
diff --git a/pypy/rpython/module/ll_os.py b/pypy/rpython/module/ll_os.py
--- a/pypy/rpython/module/ll_os.py
+++ b/pypy/rpython/module/ll_os.py
@@ -237,7 +237,7 @@
def extdef_for_os_function_returning_int(self, name, **kwds):
c_func = self.llexternal(name, [], rffi.INT, **kwds)
def c_func_llimpl():
- res = rffi.cast(rffi.LONG, c_func())
+ res = rffi.cast(rffi.SIGNED, c_func())
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
return res
@@ -249,7 +249,7 @@
def extdef_for_os_function_accepting_int(self, name, **kwds):
c_func = self.llexternal(name, [rffi.INT], rffi.INT, **kwds)
def c_func_llimpl(arg):
- res = rffi.cast(rffi.LONG, c_func(arg))
+ res = rffi.cast(rffi.SIGNED, c_func(arg))
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
@@ -261,7 +261,7 @@
def extdef_for_os_function_accepting_2int(self, name, **kwds):
c_func = self.llexternal(name, [rffi.INT, rffi.INT], rffi.INT, **kwds)
def c_func_llimpl(arg, arg2):
- res = rffi.cast(rffi.LONG, c_func(arg, arg2))
+ res = rffi.cast(rffi.SIGNED, c_func(arg, arg2))
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
@@ -273,7 +273,7 @@
def extdef_for_os_function_accepting_0int(self, name, **kwds):
c_func = self.llexternal(name, [], rffi.INT, **kwds)
def c_func_llimpl():
- res = rffi.cast(rffi.LONG, c_func())
+ res = rffi.cast(rffi.SIGNED, c_func())
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
@@ -285,7 +285,7 @@
def extdef_for_os_function_int_to_int(self, name, **kwds):
c_func = self.llexternal(name, [rffi.INT], rffi.INT, **kwds)
def c_func_llimpl(arg):
- res = rffi.cast(rffi.LONG, c_func(arg))
+ res = rffi.cast(rffi.SIGNED, c_func(arg))
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
return res
@@ -438,9 +438,13 @@
UTIMBUFP = lltype.Ptr(self.UTIMBUF)
os_utime = self.llexternal('utime', [rffi.CCHARP, UTIMBUFP], rffi.INT)
+ if not _WIN32:
+ includes = ['sys/time.h']
+ else:
+ includes = ['time.h']
class CConfig:
_compilation_info_ = ExternalCompilationInfo(
- includes=['sys/time.h']
+ includes=includes
)
HAVE_UTIMES = platform.Has('utimes')
config = platform.configure(CConfig)
@@ -450,9 +454,14 @@
if config['HAVE_UTIMES']:
class CConfig:
- _compilation_info_ = ExternalCompilationInfo(
- includes = ['sys/time.h']
- )
+ if not _WIN32:
+ _compilation_info_ = ExternalCompilationInfo(
+ includes = includes
+ )
+ else:
+ _compilation_info_ = ExternalCompilationInfo(
+ includes = ['time.h']
+ )
TIMEVAL = platform.Struct('struct timeval', [('tv_sec', rffi.LONG),
('tv_usec', rffi.LONG)])
config = platform.configure(CConfig)
@@ -557,10 +566,10 @@
# The fields of a FILETIME structure are the hi and lo parts
# of a 64-bit value expressed in 100 nanosecond units
# (of course).
- result = (pkernel.c_dwHighDateTime*429.4967296 +
- pkernel.c_dwLowDateTime*1E-7,
- puser.c_dwHighDateTime*429.4967296 +
- puser.c_dwLowDateTime*1E-7,
+ result = (rffi.cast(lltype.Signed, pkernel.c_dwHighDateTime) * 429.4967296 +
+ rffi.cast(lltype.Signed, pkernel.c_dwLowDateTime) * 1E-7,
+ rffi.cast(lltype.Signed, puser.c_dwHighDateTime) * 429.4967296 +
+ rffi.cast(lltype.Signed, puser.c_dwLowDateTime) * 1E-7,
0, 0, 0)
lltype.free(puser, flavor='raw')
lltype.free(pkernel, flavor='raw')
@@ -755,7 +764,7 @@
if self.GETPGRP_HAVE_ARG:
c_func = self.llexternal(name, [rffi.INT], rffi.INT)
def c_func_llimpl():
- res = rffi.cast(rffi.LONG, c_func(0))
+ res = rffi.cast(rffi.SIGNED, c_func(0))
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
return res
@@ -773,7 +782,7 @@
if self.SETPGRP_HAVE_ARG:
c_func = self.llexternal(name, [rffi.INT, rffi.INT], rffi.INT)
def c_func_llimpl():
- res = rffi.cast(rffi.LONG, c_func(0, 0))
+ res = rffi.cast(rffi.SIGNED, c_func(0, 0))
if res == -1:
raise OSError(rposix.get_errno(), "%s failed" % name)
@@ -818,7 +827,7 @@
[traits.CCHARP, rffi.INT, rffi.MODE_T],
rffi.INT)
def os_open_llimpl(path, flags, mode):
- result = rffi.cast(rffi.LONG, os_open(path, flags, mode))
+ result = rffi.cast(lltype.Signed, os_open(path, flags, mode))
if result == -1:
raise OSError(rposix.get_errno(), "os_open failed")
return result
@@ -1009,7 +1018,7 @@
os_fsync = self.llexternal('_commit', [rffi.INT], rffi.INT)
def fsync_llimpl(fd):
- res = rffi.cast(rffi.LONG, os_fsync(rffi.cast(rffi.INT, fd)))
+ res = rffi.cast(rffi.SIGNED, os_fsync(rffi.cast(rffi.INT, fd)))
if res < 0:
raise OSError(rposix.get_errno(), "fsync failed")
return extdef([int], s_None,
@@ -1021,7 +1030,7 @@
os_fdatasync = self.llexternal('fdatasync', [rffi.INT], rffi.INT)
def fdatasync_llimpl(fd):
- res = rffi.cast(rffi.LONG, os_fdatasync(rffi.cast(rffi.INT, fd)))
+ res = rffi.cast(rffi.SIGNED, os_fdatasync(rffi.cast(rffi.INT, fd)))
if res < 0:
raise OSError(rposix.get_errno(), "fdatasync failed")
return extdef([int], s_None,
@@ -1033,7 +1042,7 @@
os_fchdir = self.llexternal('fchdir', [rffi.INT], rffi.INT)
def fchdir_llimpl(fd):
- res = rffi.cast(rffi.LONG, os_fchdir(rffi.cast(rffi.INT, fd)))
+ res = rffi.cast(rffi.SIGNED, os_fchdir(rffi.cast(rffi.INT, fd)))
if res < 0:
raise OSError(rposix.get_errno(), "fchdir failed")
return extdef([int], s_None,
@@ -1312,7 +1321,9 @@
result = os__cwait(status_p, pid, options)
# shift the status left a byte so this is more
# like the POSIX waitpid
- status_p[0] <<= 8
+ tmp = rffi.cast(rffi.SIGNED, status_p[0])
+ tmp <<= 8
+ status_p[0] = rffi.cast(rffi.INT, tmp)
return result
else:
# Posix
@@ -1343,7 +1354,7 @@
os_isatty = self.llexternal(underscore_on_windows+'isatty', [rffi.INT], rffi.INT)
def isatty_llimpl(fd):
- res = rffi.cast(rffi.LONG, os_isatty(rffi.cast(rffi.INT, fd)))
+ res = rffi.cast(lltype.Signed, os_isatty(rffi.cast(rffi.INT, fd)))
return res != 0
return extdef([int], bool, llimpl=isatty_llimpl,
More information about the pypy-commit
mailing list