[pypy-commit] pypy errno-again: more fixes
arigo
noreply at buildbot.pypy.org
Thu Jan 15 15:49:22 CET 2015
Author: Armin Rigo <arigo at tunes.org>
Branch: errno-again
Changeset: r75349:27b29172fa0a
Date: 2015-01-15 15:48 +0100
http://bitbucket.org/pypy/pypy/changeset/27b29172fa0a/
Log: more fixes
diff --git a/pypy/module/cpyext/pystrtod.py b/pypy/module/cpyext/pystrtod.py
--- a/pypy/module/cpyext/pystrtod.py
+++ b/pypy/module/cpyext/pystrtod.py
@@ -53,8 +53,8 @@
raise OperationError(
space.w_ValueError,
space.wrap('invalid input at position %s' % endpos))
- errno = rffi.cast(lltype.Signed, rposix._get_errno())
- if errno == errno.ERANGE:
+ err = rffi.cast(lltype.Signed, rposix._get_errno())
+ if err == errno.ERANGE:
rposix._set_errno(rffi.cast(rffi.INT, 0))
if w_overflow_exception is None:
if result > 0:
diff --git a/pypy/module/fcntl/interp_fcntl.py b/pypy/module/fcntl/interp_fcntl.py
--- a/pypy/module/fcntl/interp_fcntl.py
+++ b/pypy/module/fcntl/interp_fcntl.py
@@ -55,8 +55,10 @@
constants[name] = value
locals().update(constants)
-def external(name, args, result):
- return rffi.llexternal(name, args, result, compilation_info=CConfig._compilation_info_)
+def external(name, args, result, **kwds):
+ return rffi.llexternal(name, args, result,
+ compilation_info=CConfig._compilation_info_,
+ **kwds)
_flock = lltype.Ptr(cConfig.flock)
fcntl_int = external('fcntl', [rffi.INT, rffi.INT, rffi.INT], rffi.INT,
diff --git a/pypy/module/time/interp_time.py b/pypy/module/time/interp_time.py
--- a/pypy/module/time/interp_time.py
+++ b/pypy/module/time/interp_time.py
@@ -142,7 +142,7 @@
setattr(cConfig, k, v)
cConfig.tm.__name__ = "_tm"
-def external(name, args, result, eci=CConfig._compilation_info_):
+def external(name, args, result, eci=CConfig._compilation_info_, **kwds):
if _WIN and rffi.sizeof(rffi.TIME_T) == 8:
# Recent Microsoft compilers use 64bit time_t and
# the corresponding functions are named differently
@@ -152,7 +152,8 @@
return rffi.llexternal(name, args, result,
compilation_info=eci,
calling_conv=calling_conv,
- releasegil=False)
+ releasegil=False,
+ **kwds)
if _POSIX:
cConfig.timeval.__name__ = "_timeval"
diff --git a/rpython/rlib/rposix.py b/rpython/rlib/rposix.py
--- a/rpython/rlib/rposix.py
+++ b/rpython/rlib/rposix.py
@@ -107,19 +107,19 @@
rthread.tlfield_rpy_errno.setraw(rffi.cast(INT, errno))
+ at specialize.call_location()
def _errno_before(save_err):
if save_err & rffi.RFFI_READSAVED_ERRNO:
from rpython.rlib import rthread
_set_errno(rthread.tlfield_rpy_errno.getraw())
elif save_err & rffi.RFFI_ZERO_ERRNO_BEFORE:
_set_errno(rffi.cast(rffi.INT, 0))
-_errno_before._always_inline_ = True
+ at specialize.call_location()
def _errno_after(save_err):
if save_err & rffi.RFFI_SAVE_ERRNO:
from rpython.rlib import rthread
rthread.tlfield_rpy_errno.setraw(_get_errno())
-_errno_after._always_inline_ = True
if os.name == 'nt':
More information about the pypy-commit
mailing list