PyBaseExceptionObject has no member named ‘args’

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

PyBaseExceptionObject has no member named ‘args’

PyPy mailing list
Found this trying to compile pycairo, is it worth opening a bug about? (I realise there is CairoCFFI, but they don't have feature parity - OTOH, CFFI probably is the way to go eventually).


$ python setup.py install
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/cairo
copying cairo/__init__.py -> build/lib.linux-x86_64-2.7/cairo
running build_ext
building 'cairo._cairo' extension
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/cairo
cc -pthread -DNDEBUG -O2 -fPIC -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/home/stu/.virtualenvs/pypy-nightly/include -c cairo/device.c -o build/temp.linux-x86_64-2.7/cairo/device.o -fno-strict-aliasing
cc -pthread -DNDEBUG -O2 -fPIC -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/home/stu/.virtualenvs/pypy-nightly/include -c cairo/bufferproxy.c -o build/temp.linux-x86_64-2.7/cairo/bufferproxy.o -fno-strict-aliasing
cc -pthread -DNDEBUG -O2 -fPIC -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/home/stu/.virtualenvs/pypy-nightly/include -c cairo/error.c -o build/temp.linux-x86_64-2.7/cairo/error.o -fno-strict-aliasing
In file included from /home/stu/.virtualenvs/pypy-nightly/include/Python.h:81:0,
                 from cairo/error.c:32:
cairo/error.c: In function ‘error_init’:
cairo/error.c:111:35: error: ‘PyBaseExceptionObject {aka struct <anonymous>}’ has no member named ‘args’
     if(PyTuple_GET_SIZE(self->base.args) >= 2) {
                                   ^
/home/stu/.virtualenvs/pypy-nightly/include/object.h:61:39: note: in definition of macro ‘Py_SIZE’
#define Py_SIZE(ob)  (((PyVarObject*)(ob))->ob_size)
                                       ^~
cairo/error.c:111:8: note: in expansion of macro ‘PyTuple_GET_SIZE’
     if(PyTuple_GET_SIZE(self->base.args) >= 2) {
        ^~~~~~~~~~~~~~~~
In file included from /home/stu/.virtualenvs/pypy-nightly/include/Python.h:108:0,
                 from cairo/error.c:32:
cairo/error.c:112:49: error: ‘PyBaseExceptionObject {aka struct <anonymous>}’ has no member named ‘args’
         status_obj = PyTuple_GET_ITEM(self->base.args, 1);
                                                 ^
/home/stu/.virtualenvs/pypy-nightly/include/tupleobject.h:23:53: note: in definition of macro ‘PyTuple_GET_ITEM’
#define PyTuple_GET_ITEM(op, i) (((PyTupleObject *)(op))->ob_item[i])
                                                     ^~
In file included from /home/stu/.virtualenvs/pypy-nightly/include/Python.h:81:0,
                 from cairo/error.c:32:
cairo/error.c: In function ‘error_str’:
cairo/error.c:152:36: error: ‘PyBaseExceptionObject {aka struct <anonymous>}’ has no member named ‘args’
     if (PyTuple_GET_SIZE(self->base.args) >= 1) {
                                    ^
/home/stu/.virtualenvs/pypy-nightly/include/object.h:61:39: note: in definition of macro ‘Py_SIZE’
#define Py_SIZE(ob)  (((PyVarObject*)(ob))->ob_size)
                                       ^~
cairo/error.c:152:9: note: in expansion of macro ‘PyTuple_GET_SIZE’
     if (PyTuple_GET_SIZE(self->base.args) >= 1) {
         ^~~~~~~~~~~~~~~~
In file included from /home/stu/.virtualenvs/pypy-nightly/include/Python.h:108:0,
                 from cairo/error.c:32:
cairo/error.c:153:56: error: ‘PyBaseExceptionObject {aka struct <anonymous>}’ has no member named ‘args’
         return PyObject_Str(PyTuple_GET_ITEM(self->base.args, 0));
                                                        ^
/home/stu/.virtualenvs/pypy-nightly/include/tupleobject.h:23:53: note: in definition of macro ‘PyTuple_GET_ITEM’
#define PyTuple_GET_ITEM(op, i) (((PyTupleObject *)(op))->ob_item[i])
                                                     ^~
error: command 'cc' failed with exit status 1

_______________________________________________
pypy-dev mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/pypy-dev
Reply | Threaded
Open this post in threaded view
|

Re: PyBaseExceptionObject has no member named ‘args’

Maciej Fijalkowski
Hi Stuart.

PyCairo should not abuse the API by directly accessing members of
structures, this is not supported on pypy

Cheers,
fijal

On Tue, Aug 15, 2017 at 12:57 AM, Stuart Axon via pypy-dev
<[hidden email]> wrote:

> Found this trying to compile pycairo, is it worth opening a bug about? (I
> realise there is CairoCFFI, but they don't have feature parity - OTOH, CFFI
> probably is the way to go eventually).
>
>
> $ python setup.py install
> running install
> running build
> running build_py
> creating build
> creating build/lib.linux-x86_64-2.7
> creating build/lib.linux-x86_64-2.7/cairo
> copying cairo/__init__.py -> build/lib.linux-x86_64-2.7/cairo
> running build_ext
> building 'cairo._cairo' extension
> creating build/temp.linux-x86_64-2.7
> creating build/temp.linux-x86_64-2.7/cairo
> cc -pthread -DNDEBUG -O2 -fPIC -I/usr/include/cairo -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1
> -I/usr/include/freetype2 -I/usr/include/libpng16
> -I/home/stu/.virtualenvs/pypy-nightly/include -c cairo/device.c -o
> build/temp.linux-x86_64-2.7/cairo/device.o -fno-strict-aliasing
> cc -pthread -DNDEBUG -O2 -fPIC -I/usr/include/cairo -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1
> -I/usr/include/freetype2 -I/usr/include/libpng16
> -I/home/stu/.virtualenvs/pypy-nightly/include -c cairo/bufferproxy.c -o
> build/temp.linux-x86_64-2.7/cairo/bufferproxy.o -fno-strict-aliasing
> cc -pthread -DNDEBUG -O2 -fPIC -I/usr/include/cairo -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1
> -I/usr/include/freetype2 -I/usr/include/libpng16
> -I/home/stu/.virtualenvs/pypy-nightly/include -c cairo/error.c -o
> build/temp.linux-x86_64-2.7/cairo/error.o -fno-strict-aliasing
> In file included from
> /home/stu/.virtualenvs/pypy-nightly/include/Python.h:81:0,
>                  from cairo/error.c:32:
> cairo/error.c: In function ‘error_init’:
> cairo/error.c:111:35: error: ‘PyBaseExceptionObject {aka struct
> <anonymous>}’ has no member named ‘args’
>      if(PyTuple_GET_SIZE(self->base.args) >= 2) {
>                                    ^
> /home/stu/.virtualenvs/pypy-nightly/include/object.h:61:39: note: in
> definition of macro ‘Py_SIZE’
> #define Py_SIZE(ob)  (((PyVarObject*)(ob))->ob_size)
>                                        ^~
> cairo/error.c:111:8: note: in expansion of macro ‘PyTuple_GET_SIZE’
>      if(PyTuple_GET_SIZE(self->base.args) >= 2) {
>         ^~~~~~~~~~~~~~~~
> In file included from
> /home/stu/.virtualenvs/pypy-nightly/include/Python.h:108:0,
>                  from cairo/error.c:32:
> cairo/error.c:112:49: error: ‘PyBaseExceptionObject {aka struct
> <anonymous>}’ has no member named ‘args’
>          status_obj = PyTuple_GET_ITEM(self->base.args, 1);
>                                                  ^
> /home/stu/.virtualenvs/pypy-nightly/include/tupleobject.h:23:53: note: in
> definition of macro ‘PyTuple_GET_ITEM’
> #define PyTuple_GET_ITEM(op, i) (((PyTupleObject *)(op))->ob_item[i])
>                                                      ^~
> In file included from
> /home/stu/.virtualenvs/pypy-nightly/include/Python.h:81:0,
>                  from cairo/error.c:32:
> cairo/error.c: In function ‘error_str’:
> cairo/error.c:152:36: error: ‘PyBaseExceptionObject {aka struct
> <anonymous>}’ has no member named ‘args’
>      if (PyTuple_GET_SIZE(self->base.args) >= 1) {
>                                     ^
> /home/stu/.virtualenvs/pypy-nightly/include/object.h:61:39: note: in
> definition of macro ‘Py_SIZE’
> #define Py_SIZE(ob)  (((PyVarObject*)(ob))->ob_size)
>                                        ^~
> cairo/error.c:152:9: note: in expansion of macro ‘PyTuple_GET_SIZE’
>      if (PyTuple_GET_SIZE(self->base.args) >= 1) {
>          ^~~~~~~~~~~~~~~~
> In file included from
> /home/stu/.virtualenvs/pypy-nightly/include/Python.h:108:0,
>                  from cairo/error.c:32:
> cairo/error.c:153:56: error: ‘PyBaseExceptionObject {aka struct
> <anonymous>}’ has no member named ‘args’
>          return PyObject_Str(PyTuple_GET_ITEM(self->base.args, 0));
>                                                         ^
> /home/stu/.virtualenvs/pypy-nightly/include/tupleobject.h:23:53: note: in
> definition of macro ‘PyTuple_GET_ITEM’
> #define PyTuple_GET_ITEM(op, i) (((PyTupleObject *)(op))->ob_item[i])
>                                                      ^~
> error: command 'cc' failed with exit status 1
>
> _______________________________________________
> pypy-dev mailing list
> [hidden email]
> https://mail.python.org/mailman/listinfo/pypy-dev
>
_______________________________________________
pypy-dev mailing list
[hidden email]
https://mail.python.org/mailman/listinfo/pypy-dev