Author: Ronan Lamy <ronan.l...@gmail.com> Branch: rffi-parser Changeset: r89139:539abd4173a3 Date: 2016-12-18 13:34 +0000 http://bitbucket.org/pypy/pypy/changeset/539abd4173a3/
Log: Export the type itself in ParsedSource().definitions, we never want lltype.Typedef objects diff --git a/pypy/module/cpyext/api.py b/pypy/module/cpyext/api.py --- a/pypy/module/cpyext/api.py +++ b/pypy/module/cpyext/api.py @@ -911,7 +911,7 @@ """) h.configure_types() -Py_ssize_t = h.definitions['Py_ssize_t'].OF +Py_ssize_t = h.definitions['Py_ssize_t'] Py_ssize_tP = rffi.CArrayPtr(Py_ssize_t) size_t = rffi.ULONG ADDR = lltype.Signed @@ -919,18 +919,18 @@ # Note: as a special case, "PyObject" is the pointer type in RPython, # corresponding to "PyObject *" in C. We do that only for PyObject. # For example, "PyTypeObject" is the struct type even in RPython. -PyTypeObject = h.definitions['PyTypeObject'].OF +PyTypeObject = h.definitions['PyTypeObject'] PyTypeObjectPtr = lltype.Ptr(PyTypeObject) -PyObjectStruct = h.definitions['PyObject'].OF +PyObjectStruct = h.definitions['PyObject'] PyObject = lltype.Ptr(PyObjectStruct) PyObjectFields = (("ob_refcnt", lltype.Signed), ("ob_pypy_link", lltype.Signed), ("ob_type", PyTypeObjectPtr)) PyVarObjectFields = PyObjectFields + (("ob_size", Py_ssize_t), ) -PyVarObjectStruct = h.definitions['PyVarObject'].OF +PyVarObjectStruct = h.definitions['PyVarObject'] PyVarObject = lltype.Ptr(PyVarObjectStruct) -Py_buffer = h.definitions['Py_buffer'].OF +Py_buffer = h.definitions['Py_buffer'] Py_bufferP = lltype.Ptr(Py_buffer) getbufferproc = h.definitions['getbufferproc'] releasebufferproc = h.definitions['releasebufferproc'] diff --git a/pypy/module/cpyext/cparser.py b/pypy/module/cpyext/cparser.py --- a/pypy/module/cpyext/cparser.py +++ b/pypy/module/cpyext/cparser.py @@ -690,7 +690,7 @@ if isinstance(tp, DelayedStruct): self.realize_struct(tp, name) tp = self.structs[obj] = tp.TYPE - self.definitions[name] = lltype.Typedef(tp, name) + self.definitions[name] = tp def add_macro(self, name, value): assert name not in self.macros diff --git a/pypy/module/cpyext/typeobjectdefs.py b/pypy/module/cpyext/typeobjectdefs.py --- a/pypy/module/cpyext/typeobjectdefs.py +++ b/pypy/module/cpyext/typeobjectdefs.py @@ -1,62 +1,62 @@ from pypy.module.cpyext.api import h -freefunc = h.definitions['freefunc'].OF -destructor = h.definitions['destructor'].OF -printfunc = h.definitions['printfunc'].OF -getattrfunc = h.definitions['getattrfunc'].OF -getattrofunc = h.definitions['getattrofunc'].OF -setattrfunc = h.definitions['setattrfunc'].OF -setattrofunc = h.definitions['setattrofunc'].OF -cmpfunc = h.definitions['cmpfunc'].OF -reprfunc = h.definitions['reprfunc'].OF -hashfunc = h.definitions['hashfunc'].OF -richcmpfunc = h.definitions['richcmpfunc'].OF -getiterfunc = h.definitions['getiterfunc'].OF -iternextfunc = h.definitions['iternextfunc'].OF -descrgetfunc = h.definitions['descrgetfunc'].OF -descrsetfunc = h.definitions['descrsetfunc'].OF -initproc = h.definitions['initproc'].OF -newfunc = h.definitions['newfunc'].OF -allocfunc = h.definitions['allocfunc'].OF +freefunc = h.definitions['freefunc'] +destructor = h.definitions['destructor'] +printfunc = h.definitions['printfunc'] +getattrfunc = h.definitions['getattrfunc'] +getattrofunc = h.definitions['getattrofunc'] +setattrfunc = h.definitions['setattrfunc'] +setattrofunc = h.definitions['setattrofunc'] +cmpfunc = h.definitions['cmpfunc'] +reprfunc = h.definitions['reprfunc'] +hashfunc = h.definitions['hashfunc'] +richcmpfunc = h.definitions['richcmpfunc'] +getiterfunc = h.definitions['getiterfunc'] +iternextfunc = h.definitions['iternextfunc'] +descrgetfunc = h.definitions['descrgetfunc'] +descrsetfunc = h.definitions['descrsetfunc'] +initproc = h.definitions['initproc'] +newfunc = h.definitions['newfunc'] +allocfunc = h.definitions['allocfunc'] -unaryfunc = h.definitions['unaryfunc'].OF -binaryfunc = h.definitions['binaryfunc'].OF -ternaryfunc = h.definitions['ternaryfunc'].OF -inquiry = h.definitions['inquiry'].OF -lenfunc = h.definitions['lenfunc'].OF -coercion = h.definitions['coercion'].OF -intargfunc = h.definitions['intargfunc'].OF -intintargfunc = h.definitions['intintargfunc'].OF -ssizeargfunc = h.definitions['ssizeargfunc'].OF -ssizessizeargfunc = h.definitions['ssizessizeargfunc'].OF -intobjargproc = h.definitions['intobjargproc'].OF -intintobjargproc = h.definitions['intintobjargproc'].OF -ssizeobjargproc = h.definitions['ssizeobjargproc'].OF -ssizessizeobjargproc = h.definitions['ssizessizeobjargproc'].OF -objobjargproc = h.definitions['objobjargproc'].OF +unaryfunc = h.definitions['unaryfunc'] +binaryfunc = h.definitions['binaryfunc'] +ternaryfunc = h.definitions['ternaryfunc'] +inquiry = h.definitions['inquiry'] +lenfunc = h.definitions['lenfunc'] +coercion = h.definitions['coercion'] +intargfunc = h.definitions['intargfunc'] +intintargfunc = h.definitions['intintargfunc'] +ssizeargfunc = h.definitions['ssizeargfunc'] +ssizessizeargfunc = h.definitions['ssizessizeargfunc'] +intobjargproc = h.definitions['intobjargproc'] +intintobjargproc = h.definitions['intintobjargproc'] +ssizeobjargproc = h.definitions['ssizeobjargproc'] +ssizessizeobjargproc = h.definitions['ssizessizeobjargproc'] +objobjargproc = h.definitions['objobjargproc'] -objobjproc = h.definitions['objobjproc'].OF -visitproc = h.definitions['visitproc'].OF -traverseproc = h.definitions['traverseproc'].OF +objobjproc = h.definitions['objobjproc'] +visitproc = h.definitions['visitproc'] +traverseproc = h.definitions['traverseproc'] -getter = h.definitions['getter'].OF -setter = h.definitions['setter'].OF +getter = h.definitions['getter'] +setter = h.definitions['setter'] #wrapperfunc = h.definitions['wrapperfunc'] #wrapperfunc_kwds = h.definitions['wrapperfunc_kwds'] -readbufferproc = h.definitions['readbufferproc'].OF -writebufferproc = h.definitions['writebufferproc'].OF -segcountproc = h.definitions['segcountproc'].OF -charbufferproc = h.definitions['charbufferproc'].OF -getbufferproc = h.definitions['getbufferproc'].OF -releasebufferproc = h.definitions['releasebufferproc'].OF +readbufferproc = h.definitions['readbufferproc'] +writebufferproc = h.definitions['writebufferproc'] +segcountproc = h.definitions['segcountproc'] +charbufferproc = h.definitions['charbufferproc'] +getbufferproc = h.definitions['getbufferproc'] +releasebufferproc = h.definitions['releasebufferproc'] -PyGetSetDef = h.definitions['PyGetSetDef'].OF -PyNumberMethods = h.definitions['PyNumberMethods'].OF -PySequenceMethods = h.definitions['PySequenceMethods'].OF -PyMappingMethods = h.definitions['PyMappingMethods'].OF -PyBufferProcs = h.definitions['PyBufferProcs'].OF -PyMemberDef = h.definitions['PyMemberDef'].OF +PyGetSetDef = h.definitions['PyGetSetDef'] +PyNumberMethods = h.definitions['PyNumberMethods'] +PySequenceMethods = h.definitions['PySequenceMethods'] +PyMappingMethods = h.definitions['PyMappingMethods'] +PyBufferProcs = h.definitions['PyBufferProcs'] +PyMemberDef = h.definitions['PyMemberDef'] _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit