Skip to content

Fails with current Python 3.8 builds: error: too few arguments to function ‘PyCode_New’ #2938

@mgedmin

Description

@mgedmin

I built CPython 3.8 from current git master for test purposes, and I've noticed that Cython does not work with it. Steps to reproduce:

  • get a python 3.8 (the version I used was 3.8.0a3+ (heads/master:d537ab0ff9, Apr 30 2019, 16:44:28)),
  • virtulalenv -p python3.8 /tmp/py38
  • /tmp/py38/bin/pip install cython

This fails with

    running build_ext
    building 'Cython.Plex.Scanners' extension
    creating build/temp.linux-x86_64-3.8
    creating build/temp.linux-x86_64-3.8/tmp
    creating build/temp.linux-x86_64-3.8/tmp/pip-install-vy4o1bl9
    creating build/temp.linux-x86_64-3.8/tmp/pip-install-vy4o1bl9/cython
    creating build/temp.linux-x86_64-3.8/tmp/pip-install-vy4o1bl9/cython/Cython
    creating build/temp.linux-x86_64-3.8/tmp/pip-install-vy4o1bl9/cython/Cython/Plex
    gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/home/mg/opt/python38/include/python3.8 -c /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c -o build/temp.linux-x86_64-3.8/tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.o
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c: In function ‘__Pyx_InitCachedConstants’:
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7233:89: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
                                                                                             ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:37: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                         ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7233:252: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
                                                                                                                                                                                                                                                                ^~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:72: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                            ^~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7233:257: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
                                                                                                                                                                                                                                                                     ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:79: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                                   ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:11: error: too few arguments to function ‘PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
               ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7233:33: note: in expansion of macro ‘__Pyx_PyCode_New’
       __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
                                     ^~~~~~~~~~~~~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: declared here
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7245:89: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
                                                                                             ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:37: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                         ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7245:256: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
                                                                                                                                                                                                                                                                    ^~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:72: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                            ^~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7245:261: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
                                                                                                                                                                                                                                                                         ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:79: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                                   ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:11: error: too few arguments to function ‘PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
               ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7245:33: note: in expansion of macro ‘__Pyx_PyCode_New’
       __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
                                     ^~~~~~~~~~~~~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: declared here
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7257:90: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
                                                                                              ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:37: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                         ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7257:261: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
                                                                                                                                                                                                                                                                         ^~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:72: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                            ^~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7257:266: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
                                                                                                                                                                                                                                                                              ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:79: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                                   ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:11: error: too few arguments to function ‘PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
               ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7257:34: note: in expansion of macro ‘__Pyx_PyCode_New’
       __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
                                      ^~~~~~~~~~~~~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: declared here
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7269:90: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
                                                                                              ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:37: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                         ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7269:253: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
                                                                                                                                                                                                                                                                 ^~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:72: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                            ^~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7269:258: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
                                                                                                                                                                                                                                                                      ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:79: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                                   ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:11: error: too few arguments to function ‘PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
               ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:7269:34: note: in expansion of macro ‘__Pyx_PyCode_New’
       __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
                                      ^~~~~~~~~~~~~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: declared here
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c: In function ‘__Pyx_CreateCodeObjectForTraceback’:
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:10031:9: warning: passing argument 6 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
             __pyx_empty_bytes, /*PyObject *code,*/
             ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:37: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                         ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:10039:9: warning: passing argument 14 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
             py_line,
             ^~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:72: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                            ^~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:10040:9: warning: passing argument 15 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
             __pyx_empty_bytes  /*PyObject *lnotab*/
             ^~~~~~~~~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:79: note: in definition of macro ‘__Pyx_PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
                                                                                   ^~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:329:11: error: too few arguments to function ‘PyCode_New’
               PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
               ^~~~~~~~~~
    /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:10025:15: note: in expansion of macro ‘__Pyx_PyCode_New’
         py_code = __Pyx_PyCode_New(
                   ^~~~~~~~~~~~~~~~
    In file included from /home/mg/opt/python38/include/python3.8/compile.h:5,
                     from /home/mg/opt/python38/include/python3.8/Python.h:137,
                     from /tmp/pip-install-vy4o1bl9/cython/Cython/Plex/Scanners.c:19:
    /home/mg/opt/python38/include/python3.8/code.h:105:28: note: declared here
     PyAPI_FUNC(PyCodeObject *) PyCode_New(
                                ^~~~~~~~~~
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command "/tmp/py38/bin/python3.8 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-vy4o1bl9/cython/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-xiot_hb9/install-record.txt --single-version-externally-managed --compile --install-headers /tmp/py38/include/site/python3.8/cython" failed with error code 1 in /tmp/pip-install-vy4o1bl9/cython/

I'm on Ubuntu 19.04.

(FWIW /tmp/py38/bin/pip install lxml fails the build with a similar PyCode_New-related error, using, I assume, my system Cython package, which is 0.29.2-2build1. I had not noticed similar problems with 3.8.0a3 itself, but there've been almost 300 new commits since then.)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions