[pypy-svn] r72516 - in pypy/trunk/pypy/module/cpyext: . include
xoraxax at codespeak.net
xoraxax at codespeak.net
Mon Mar 22 00:58:57 CET 2010
Author: xoraxax
Date: Mon Mar 22 00:58:55 2010
New Revision: 72516
Modified:
pypy/trunk/pypy/module/cpyext/api.py
pypy/trunk/pypy/module/cpyext/boolobject.py
pypy/trunk/pypy/module/cpyext/dictobject.py
pypy/trunk/pypy/module/cpyext/include/Python.h
pypy/trunk/pypy/module/cpyext/modsupport.py
pypy/trunk/pypy/module/cpyext/pythonrun.py
pypy/trunk/pypy/module/cpyext/tupleobject.py
pypy/trunk/pypy/module/cpyext/typeobject.py
Log:
Remove the long int hack! Use INT_real everywhere.
Modified: pypy/trunk/pypy/module/cpyext/api.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/api.py (original)
+++ pypy/trunk/pypy/module/cpyext/api.py Mon Mar 22 00:58:55 2010
@@ -185,7 +185,6 @@
prologue = """\
#define const /* cheat */
#include <Python.h>
- #define long int /* cheat */
"""
if rename:
pypy_rename = []
@@ -304,12 +303,14 @@
return
if restype is PyObject:
return lltype.nullptr(PyObject.TO)
- if restype in (lltype.Signed, rffi.INT):
- return -1
+ if restype in (lltype.Signed, rffi.INT_real):
+ return rffi.cast(rffi.INT_real, -1)
assert False, "Unknown return type"
if callable.api_func.restype is PyObject:
retval = make_ref(space, retval, borrowed=callable.api_func.borrowed)
+ if callable.api_func.restype is rffi.INT_real:
+ retval = rffi.cast(rffi.INT_real, retval)
return retval
return wrapper
Modified: pypy/trunk/pypy/module/cpyext/boolobject.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/boolobject.py (original)
+++ pypy/trunk/pypy/module/cpyext/boolobject.py Mon Mar 22 00:58:55 2010
@@ -1,7 +1,7 @@
from pypy.rpython.lltypesystem import rffi, lltype
from pypy.module.cpyext.api import cpython_api, PyObject, general_check
- at cpython_api([PyObject], rffi.INT)
+ at cpython_api([PyObject], rffi.INT_real)
def PyBool_Check(space, w_obj):
w_type = space.w_bool
return general_check(space, w_obj, w_type)
Modified: pypy/trunk/pypy/module/cpyext/dictobject.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/dictobject.py (original)
+++ pypy/trunk/pypy/module/cpyext/dictobject.py Mon Mar 22 00:58:55 2010
@@ -6,14 +6,14 @@
def PyDict_New(space):
return space.newdict()
- at cpython_api([PyObject], rffi.INT)
+ at cpython_api([PyObject], rffi.INT_real)
def PyDict_Check(space, w_obj):
w_type = space.w_dict
w_obj_type = space.type(w_obj)
return space.is_w(w_obj_type, w_type) or space.is_true(space.issubtype(w_obj_type, w_type))
- at cpython_api([PyObject, rffi.CCHARP, PyObject], rffi.INT)
+ at cpython_api([PyObject, rffi.CCHARP, PyObject], rffi.INT_real)
def PyDict_SetItemString(space, w_dict, key_ptr, w_obj):
if PyDict_Check(space, w_dict):
key = rffi.charp2str(key_ptr)
Modified: pypy/trunk/pypy/module/cpyext/include/Python.h
==============================================================================
--- pypy/trunk/pypy/module/cpyext/include/Python.h (original)
+++ pypy/trunk/pypy/module/cpyext/include/Python.h Mon Mar 22 00:58:55 2010
@@ -17,7 +17,6 @@
/* move somewhere else */
extern PyObject *Py_None;
-#define long int /* XXX: same hack as in api.py */
#include <stdio.h>
Modified: pypy/trunk/pypy/module/cpyext/modsupport.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/modsupport.py (original)
+++ pypy/trunk/pypy/module/cpyext/modsupport.py Mon Mar 22 00:58:55 2010
@@ -11,7 +11,7 @@
'PyMethodDef',
[('ml_name', rffi.CCHARP),
('ml_meth', PyCFunction),
- ('ml_flags', rffi.INT),
+ ('ml_flags', rffi.INT_real),
])
def PyImport_AddModule(space, name):
@@ -66,7 +66,7 @@
return dict_w
- at cpython_api([PyObject], rffi.INT)
+ at cpython_api([PyObject], rffi.INT_real)
def PyModule_Check(space, w_obj):
w_type = space.gettypeobject(Module.typedef)
return general_check(space, w_obj, w_type)
Modified: pypy/trunk/pypy/module/cpyext/pythonrun.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/pythonrun.py (original)
+++ pypy/trunk/pypy/module/cpyext/pythonrun.py Mon Mar 22 00:58:55 2010
@@ -1,6 +1,6 @@
from pypy.rpython.lltypesystem import rffi, lltype
from pypy.module.cpyext.api import cpython_api
- at cpython_api([], rffi.INT)
+ at cpython_api([], rffi.INT_real)
def Py_IsInitialized(space):
return 1
Modified: pypy/trunk/pypy/module/cpyext/tupleobject.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/tupleobject.py (original)
+++ pypy/trunk/pypy/module/cpyext/tupleobject.py Mon Mar 22 00:58:55 2010
@@ -7,7 +7,7 @@
def PyTuple_New(space, size):
return space.newtuple([space.w_None] * size)
- at cpython_api([PyObject, Py_ssize_t, PyObject], rffi.INT)
+ at cpython_api([PyObject, Py_ssize_t, PyObject], rffi.INT_real)
def PyTuple_SetItem(space, w_t, pos, w_obj):
assert isinstance(w_t, W_TupleObject)
w_t.wrappeditems[pos] = w_obj
Modified: pypy/trunk/pypy/module/cpyext/typeobject.py
==============================================================================
--- pypy/trunk/pypy/module/cpyext/typeobject.py (original)
+++ pypy/trunk/pypy/module/cpyext/typeobject.py Mon Mar 22 00:58:55 2010
@@ -27,41 +27,41 @@
freefunc = P(FT([rffi.VOIDP], Void))
destructor = P(FT([PyO], Void))
-printfunc = P(FT([PyO, rffi.VOIDP, rffi.INT], rffi.INT))
+printfunc = P(FT([PyO, rffi.VOIDP, rffi.INT_real], rffi.INT))
getattrfunc = P(FT([PyO, rffi.CCHARP], PyO))
getattrofunc = P(FT([PyO, PyO], PyO))
-setattrfunc = P(FT([PyO, rffi.CCHARP, PyO], rffi.INT))
-setattrofunc = P(FT([PyO, PyO, PyO], rffi.INT))
-cmpfunc = P(FT([PyO, PyO], rffi.INT))
+setattrfunc = P(FT([PyO, rffi.CCHARP, PyO], rffi.INT_real))
+setattrofunc = P(FT([PyO, PyO, PyO], rffi.INT_real))
+cmpfunc = P(FT([PyO, PyO], rffi.INT_real))
reprfunc = P(FT([PyO], PyO))
hashfunc = P(FT([PyO], lltype.Signed))
-richcmpfunc = P(FT([PyO, PyO, rffi.INT], PyO))
+richcmpfunc = P(FT([PyO, PyO, rffi.INT_real], PyO))
getiterfunc = P(FT([PyO], PyO))
iternextfunc = P(FT([PyO], PyO))
descrgetfunc = P(FT([PyO, PyO, PyO], PyO))
-descrsetfunc = P(FT([PyO, PyO, PyO], rffi.INT))
-initproc = P(FT([PyO, PyO, PyO], rffi.INT))
+descrsetfunc = P(FT([PyO, PyO, PyO], rffi.INT_real))
+initproc = P(FT([PyO, PyO, PyO], rffi.INT_real))
newfunc = P(FT([PyTypeObjectPtr, PyO, PyO], PyO))
allocfunc = P(FT([PyTypeObjectPtr, Py_ssize_t], PyO))
unaryfunc = P(FT([PyO], PyO))
binaryfunc = P(FT([PyO, PyO], PyO))
ternaryfunc = P(FT([PyO, PyO, PyO], PyO))
-inquiry = P(FT([PyO], rffi.INT))
+inquiry = P(FT([PyO], rffi.INT_real))
lenfunc = P(FT([PyO], Py_ssize_t))
-coercion = P(FT([PyOPtr, PyOPtr], rffi.INT))
-intargfunc = P(FT([PyO, rffi.INT], PyO))
-intintargfunc = P(FT([PyO, rffi.INT, rffi.INT], PyO))
+coercion = P(FT([PyOPtr, PyOPtr], rffi.INT_real))
+intargfunc = P(FT([PyO, rffi.INT_real], PyO))
+intintargfunc = P(FT([PyO, rffi.INT_real, rffi.INT], PyO))
ssizeargfunc = P(FT([PyO, Py_ssize_t], PyO))
ssizessizeargfunc = P(FT([PyO, Py_ssize_t, Py_ssize_t], PyO))
-intobjargproc = P(FT([PyO, rffi.INT, PyO], rffi.INT))
-intintobjargproc = P(FT([PyO, rffi.INT, rffi.INT, PyO], rffi.INT))
-ssizeobjargproc = P(FT([PyO, Py_ssize_t, PyO], rffi.INT))
-ssizessizeobjargproc = P(FT([PyO, Py_ssize_t, Py_ssize_t, PyO], rffi.INT))
-objobjargproc = P(FT([PyO, PyO, PyO], rffi.INT))
-
-objobjproc = P(FT([PyO, PyO], rffi.INT))
-visitproc = P(FT([PyO, rffi.VOIDP], rffi.INT))
-traverseproc = P(FT([PyO, visitproc, rffi.VOIDP], rffi.INT))
+intobjargproc = P(FT([PyO, rffi.INT_real, PyO], rffi.INT))
+intintobjargproc = P(FT([PyO, rffi.INT_real, rffi.INT, PyO], rffi.INT))
+ssizeobjargproc = P(FT([PyO, Py_ssize_t, PyO], rffi.INT_real))
+ssizessizeobjargproc = P(FT([PyO, Py_ssize_t, Py_ssize_t, PyO], rffi.INT_real))
+objobjargproc = P(FT([PyO, PyO, PyO], rffi.INT_real))
+
+objobjproc = P(FT([PyO, PyO], rffi.INT_real))
+visitproc = P(FT([PyO, rffi.VOIDP], rffi.INT_real))
+traverseproc = P(FT([PyO, visitproc, rffi.VOIDP], rffi.INT_real))
PyTypeObjectFields = []
PyTypeObjectFields.extend(PyVarObjectFields)
@@ -172,7 +172,7 @@
return w_type
- at cpython_api([PyTypeObjectPtr], rffi.INT)
+ at cpython_api([PyTypeObjectPtr], rffi.INT_real)
def PyPyType_Register(space, pto):
state = space.fromcache(State)
ptr = ctypes.addressof(pto._obj._storage)
More information about the Pypy-commit
mailing list