Skip to content

Commit

Permalink
Remove verbose ifdef marker
Browse files Browse the repository at this point in the history
  • Loading branch information
fangerer committed Apr 20, 2022
1 parent 8ce1877 commit 4b161ad
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions Cython/Utility/TypeConversion.c
Original file line number Diff line number Diff line change
Expand Up @@ -118,9 +118,9 @@ static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);

#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else /* CYTHON_ASSUME_SAFE_MACROS */
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif /* CYTHON_ASSUME_SAFE_MACROS */
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))

#if PY_MAJOR_VERSION >= 3
Expand Down

3 comments on commit 4b161ad

@mattip
Copy link

@mattip mattip commented on 4b161ad May 1, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(long diff and comment removed) I was comparing to the wrong branch

@mattip
Copy link

@mattip mattip commented on 4b161ad May 2, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am seeing test failures when running cpp tests $ python runtests.py hpy --no-c --no-cleanup against HPy 0.0.4.dev216+gf941e8f. There are many repitions of

error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:6083:12: note: in expansion of macro ‘HPyTuple_Pack’
 6083 |     args = HPyTuple_Pack(ctx, 1, cleanup_func);

and definitions of unused functions.

$ python runtests.py hpy --no-c --no-cleanup
Python 3.8.10 (default, Mar 15 2022, 12:22:08) 
[GCC 9.4.0]

Running tests against Cython 3.0.0a9 4b161ad6c1565baa487fda035c677afd74d011bb
Using Cython language level 2.
Test dependency found: 'numpy' version 1.22.3
Test dependency not found: 'pythran'
Test dependency found: 'setuptools.sandbox' version 44.0.0
Test dependency found: 'asyncio' version 3.8.10
Test dependency found: 'pstats' version 3.8.10
Test dependency found: 'posix' version 3.8.10
Test dependency found: 'array' version 3.8.10
Test dependency found: 'Cython.Coverage' version 3.0.0a9
Test dependency found: 'Cython.Coverage' version 3.0.0a9
Test dependency not found: 'IPython.testing.globalipapp'
Test dependency not found: 'jedi_BROKEN_AND_DISABLED'
Test dependency found: 'test.support' version 3.8.10
Test dependency found: 'hpy.devel' version ?.?
Backends: cpp


=== C/C++ compiler output: =========
Compiler output for module hpy_basic:
In file included from /tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy.h:154,
                 from hpy_basic.cpp:18:
hpy_basic.cpp: In function ‘int __Pyx_InitCachedConstants(HPyContext*)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:555:34: note: in expansion of macro ‘HPyTuple_Pack’
  555 | #define __PYX_API_CALL(fun, ...) fun(__pyx_hpy_ctx, __VA_ARGS__)
      |                                  ^~~
hpy_basic.cpp:2730:15: note: in expansion of macro ‘__PYX_API_CALL’
 2730 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_t_1, __pyx_t_2); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 6, __pyx_L1_error)
      |               ^~~~~~~~~~~~~~
hpy_basic.cpp:2730:30: note: in expansion of macro ‘__PYX_TUPLE_PACK’
 2730 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_t_1, __pyx_t_2); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 6, __pyx_L1_error)
      |                              ^~~~~~~~~~~~~~~~
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:555:34: note: in expansion of macro ‘HPyTuple_Pack’
  555 | #define __PYX_API_CALL(fun, ...) fun(__pyx_hpy_ctx, __VA_ARGS__)
      |                                  ^~~
hpy_basic.cpp:2825:15: note: in expansion of macro ‘__PYX_API_CALL’
 2825 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_22, __pyx_int_33); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 21, __pyx_L1_error)
      |               ^~~~~~~~~~~~~~
hpy_basic.cpp:2825:30: note: in expansion of macro ‘__PYX_TUPLE_PACK’
 2825 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_22, __pyx_int_33); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 21, __pyx_L1_error)
      |                              ^~~~~~~~~~~~~~~~
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:555:34: note: in expansion of macro ‘HPyTuple_Pack’
  555 | #define __PYX_API_CALL(fun, ...) fun(__pyx_hpy_ctx, __VA_ARGS__)
      |                                  ^~~
hpy_basic.cpp:2838:15: note: in expansion of macro ‘__PYX_API_CALL’
 2838 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_44, __pyx_int_55); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 22, __pyx_L1_error)
      |               ^~~~~~~~~~~~~~
hpy_basic.cpp:2838:30: note: in expansion of macro ‘__PYX_TUPLE_PACK’
 2838 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_44, __pyx_int_55); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 22, __pyx_L1_error)
      |                              ^~~~~~~~~~~~~~~~
hpy_basic.cpp: In function ‘HPy init_hpy_basic_impl(HPyContext*)’:
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3221:162: note:   from here
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                                                  ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3217:164: note:   from here
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                                                    ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3211:57: note:   from here
 3211 |   if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                         ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3198:111: note:   from here
 3198 |   if (__PYX_API_CALL(__Pyx_PyObject_SetAttrString, __pyx_t_1, "__builtins__", __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
      |                                                                                                               ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3191:140: note:   from here
 3191 |   __pyx_t_3 = __PYX_API_CALL(__Pyx_PyImport_AddModule, (char *) "cython_runtime"); if (unlikely(__PYX_IS_NULL(__pyx_t_3))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                            ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3185:140: note:   from here
 3185 |   __pyx_t_2 = __PYX_API_CALL(__Pyx_PyImport_AddModule, __Pyx_BUILTIN_MODULE_NAME); if (unlikely(__PYX_IS_NULL(__pyx_t_2))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                            ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3177:122: note:   from here
 3177 |   __pyx_t_2 = __PYX_API_CALL(__Pyx_PyModule_GetDict, __pyx_t_1); if (unlikely(__PYX_IS_NULL(__pyx_t_2))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                          ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3172:59: note:   from here
 3172 |   if (unlikely(__PYX_IS_NULL(__pyx_t_1))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                           ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
In file included from /tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy.h:154,
                 from hpy_basic.cpp:18:
hpy_basic.cpp: In function ‘int _HPy_IsSubclass(HPyContext*, HPy, HPy)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:3789:14: note: in expansion of macro ‘HPyTuple_Pack’
 3789 |     h_args = HPyTuple_Pack(ctx, 2, derived, cls);
      |              ^~~~~~~~~~~~~
hpy_basic.cpp: In function ‘void __Pyx_Raise(HPyContext*, HPy, HPy, HPy, HPy)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:5953:24: note: in expansion of macro ‘HPyTuple_Pack’
 5953 |                 args = HPyTuple_Pack(ctx, 1, value);
      |                        ^~~~~~~~~~~~~
hpy_basic.cpp: In function ‘int __Pyx_RegisterCleanup(HPyContext*, HPy)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:6072:16: note: in expansion of macro ‘HPyTuple_Pack’
 6072 |     new_args = HPyTuple_Pack(ctx, 1, module);
      |                ^~~~~~~~~~~~~
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:6083:12: note: in expansion of macro ‘HPyTuple_Pack’
 6083 |     args = HPyTuple_Pack(ctx, 1, cleanup_func);
      |            ^~~~~~~~~~~~~
hpy_basic.cpp: At global scope:
hpy_basic.cpp:1722:18: warning: ‘PyObject* __Pyx_CyFunction_Init(__pyx_CyFunctionObject*, PyMethodDef*, int, PyObject*, PyObject*, PyObject*, PyObject*, PyObject*)’ declared ‘static’ but never defined [-Wunused-function]
 1722 | static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml,
      |                  ^~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1727:27: warning: ‘void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject*, PyObject*)’ declared ‘static’ but never defined [-Wunused-function]
 1727 | static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj);
      |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1728:28: warning: ‘void* __Pyx_CyFunction_InitDefaults(HPy, size_t, int)’ declared ‘static’ but never defined [-Wunused-function]
 1728 | static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(__PYX_OBJECT_CTYPE m,
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1737:12: warning: ‘int __pyx_CyFunction_init(PyObject*)’ declared ‘static’ but never defined [-Wunused-function]
 1737 | static int __pyx_CyFunction_init(PyObject *module);
      |            ^~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:6242:13: warning: ‘void __pyx_insert_code_object(int, PyCodeObject*)’ defined but not used [-Wunused-function]
 6242 | static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
      |             ^~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:6228:22: warning: ‘PyCodeObject* __pyx_find_code_object(int)’ defined but not used [-Wunused-function]
 6228 | static PyCodeObject *__pyx_find_code_object(int code_line) {
      |                      ^~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:5558:12: warning: ‘HPy __Pyx_CyFunction_New(HPyContext*, HPyDef*, int, HPy, HPy, HPy, HPy, HPy)’ defined but not used [-Wunused-function]
 5558 | static HPy __Pyx_CyFunction_New(HPyContext *ctx, HPyDef *ml, int flags, HPy qualname,
      |            ^~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:4541:22: warning: ‘PyTypeObject* __Pyx_FetchCommonType(PyTypeObject*)’ defined but not used [-Wunused-function]
 4541 | static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) {
      |                      ^~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:4298:13: warning: ‘void __Pyx_RaiseDoubleKeywordsError(HPyContext*, const char*, HPy)’ defined but not used [-Wunused-function]
 4298 | static void __Pyx_RaiseDoubleKeywordsError(__PYX_CONTEXT_DECL
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:2614:20: warning: ‘__pyx_methods’ defined but not used [-Wunused-variable]
 2614 | static PyMethodDef __pyx_methods[] = {
      |                    ^~~~~~~~~~~~~
hpy_basic.cpp:1717:22: warning: ‘__pyx_CyFunctionType’ defined but not used [-Wunused-variable]
 1717 | static PyTypeObject *__pyx_CyFunctionType = 0;
      |                      ^~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1338:21: warning: ‘__pyx_cfilenm’ defined but not used [-Wunused-variable]
 1338 | static const char * __pyx_cfilenm = __FILE__;
      |                     ^~~~~~~~~~~~~
====================================
======================================================================
ERROR: runTest (__main__.CythonRunTestCase)
compiling (cpp/cy2) and running hpy_basic
----------------------------------------------------------------------
Traceback (most recent call last):
  File "runtests.py", line 1476, in run
    ext_so_path = self.runCompileTest()
  File "runtests.py", line 1118, in runCompileTest
    return self.compile(
  File "runtests.py", line 1410, in compile
    so_path = self.run_distutils(test_directory, module, workdir, incdir)
  File "runtests.py", line 1330, in run_distutils
    raise CompileError(u"%s\nCompiler output:\n%s" % (error, prepare_captured(stderr)))
distutils.errors.CompileError: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Compiler output:
In file included from /tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy.h:154,
                 from hpy_basic.cpp:18:
hpy_basic.cpp: In function ‘int __Pyx_InitCachedConstants(HPyContext*)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:555:34: note: in expansion of macro ‘HPyTuple_Pack’
  555 | #define __PYX_API_CALL(fun, ...) fun(__pyx_hpy_ctx, __VA_ARGS__)
      |                                  ^~~
hpy_basic.cpp:2730:15: note: in expansion of macro ‘__PYX_API_CALL’
 2730 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_t_1, __pyx_t_2); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 6, __pyx_L1_error)
      |               ^~~~~~~~~~~~~~
hpy_basic.cpp:2730:30: note: in expansion of macro ‘__PYX_TUPLE_PACK’
 2730 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_t_1, __pyx_t_2); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 6, __pyx_L1_error)
      |                              ^~~~~~~~~~~~~~~~
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:555:34: note: in expansion of macro ‘HPyTuple_Pack’
  555 | #define __PYX_API_CALL(fun, ...) fun(__pyx_hpy_ctx, __VA_ARGS__)
      |                                  ^~~
hpy_basic.cpp:2825:15: note: in expansion of macro ‘__PYX_API_CALL’
 2825 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_22, __pyx_int_33); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 21, __pyx_L1_error)
      |               ^~~~~~~~~~~~~~
hpy_basic.cpp:2825:30: note: in expansion of macro ‘__PYX_TUPLE_PACK’
 2825 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_22, __pyx_int_33); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 21, __pyx_L1_error)
      |                              ^~~~~~~~~~~~~~~~
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:555:34: note: in expansion of macro ‘HPyTuple_Pack’
  555 | #define __PYX_API_CALL(fun, ...) fun(__pyx_hpy_ctx, __VA_ARGS__)
      |                                  ^~~
hpy_basic.cpp:2838:15: note: in expansion of macro ‘__PYX_API_CALL’
 2838 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_44, __pyx_int_55); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 22, __pyx_L1_error)
      |               ^~~~~~~~~~~~~~
hpy_basic.cpp:2838:30: note: in expansion of macro ‘__PYX_TUPLE_PACK’
 2838 |   __pyx_t_4 = __PYX_API_CALL(__PYX_TUPLE_PACK, 2, __pyx_int_44, __pyx_int_55); if (unlikely(__PYX_IS_NULL(__pyx_t_4))) __PYX_ERR(0, 22, __pyx_L1_error)
      |                              ^~~~~~~~~~~~~~~~
hpy_basic.cpp: In function ‘HPy init_hpy_basic_impl(HPyContext*)’:
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3221:162: note:   from here
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                                                  ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3217:164: note:   from here
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                                                    ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3211:57: note:   from here
 3211 |   if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                         ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3198:111: note:   from here
 3198 |   if (__PYX_API_CALL(__Pyx_PyObject_SetAttrString, __pyx_t_1, "__builtins__", __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
      |                                                                                                               ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3191:140: note:   from here
 3191 |   __pyx_t_3 = __PYX_API_CALL(__Pyx_PyImport_AddModule, (char *) "cython_runtime"); if (unlikely(__PYX_IS_NULL(__pyx_t_3))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                            ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3185:140: note:   from here
 3185 |   __pyx_t_2 = __PYX_API_CALL(__Pyx_PyImport_AddModule, __Pyx_BUILTIN_MODULE_NAME); if (unlikely(__PYX_IS_NULL(__pyx_t_2))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                                            ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3177:122: note:   from here
 3177 |   __pyx_t_2 = __PYX_API_CALL(__Pyx_PyModule_GetDict, __pyx_t_1); if (unlikely(__PYX_IS_NULL(__pyx_t_2))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                                                                                          ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
hpy_basic.cpp:3583:3: error: jump to label ‘__pyx_L1_error’
 3583 |   __pyx_L1_error:;
      |   ^~~~~~~~~~~~~~
hpy_basic.cpp:3172:59: note:   from here
 3172 |   if (unlikely(__PYX_IS_NULL(__pyx_t_1))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                                                           ^~~~~~~~~~~~~~
hpy_basic.cpp:1093:48: note: in definition of macro ‘__PYX_ERR’
 1093 |     { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
      |                                                ^~~~~~~~
hpy_basic.cpp:3225:22: note:   crosses initialization of ‘HPy __cyt_empty_unicode’
 3225 |   __PYX_OBJECT_CTYPE __cyt_empty_unicode = __PYX_API_CALL(__Pyx_API_PyUnicode_FromString, ""); if (unlikely(__PYX_IS_NULL(__cyt_empty_unicode))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:3221:22: note:   crosses initialization of ‘HPy __cyt_empty_bytes’
 3221 |   __PYX_OBJECT_CTYPE __cyt_empty_bytes = __PYX_API_CALL(__Pyx_PyBytes_FromStringAndSize, "", 0); if (unlikely(__PYX_IS_NULL(__cyt_empty_bytes))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3217:22: note:   crosses initialization of ‘HPy __cyt_empty_tuple’
 3217 |   __PYX_OBJECT_CTYPE __cyt_empty_tuple = __PYX_API_CALL(__PYX_TUPLE_BUILDER_BUILD, tuple_builder); if (unlikely(__PYX_IS_NULL(__cyt_empty_tuple))) __PYX_ERR(0, 1, __pyx_L1_error)
      |                      ^~~~~~~~~~~~~~~~~
hpy_basic.cpp:3216:29: note:   crosses initialization of ‘HPyTupleBuilder tuple_builder’
 3216 |   __PYX_TUPLE_BUILDER_CTYPE tuple_builder = __PYX_API_CALL(__PYX_TUPLE_BUILDER_NEW, 0);
      |                             ^~~~~~~~~~~~~
In file included from /tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy.h:154,
                 from hpy_basic.cpp:18:
hpy_basic.cpp: In function ‘int _HPy_IsSubclass(HPyContext*, HPy, HPy)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:3789:14: note: in expansion of macro ‘HPyTuple_Pack’
 3789 |     h_args = HPyTuple_Pack(ctx, 2, derived, cls);
      |              ^~~~~~~~~~~~~
hpy_basic.cpp: In function ‘void __Pyx_Raise(HPyContext*, HPy, HPy, HPy, HPy)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:5953:24: note: in expansion of macro ‘HPyTuple_Pack’
 5953 |                 args = HPyTuple_Pack(ctx, 1, value);
      |                        ^~~~~~~~~~~~~
hpy_basic.cpp: In function ‘int __Pyx_RegisterCleanup(HPyContext*, HPy)’:
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:6072:16: note: in expansion of macro ‘HPyTuple_Pack’
 6072 |     new_args = HPyTuple_Pack(ctx, 1, module);
      |                ^~~~~~~~~~~~~
/tmp/py3.8/lib/python3.8/site-packages/hpy/devel/include/hpy/macros.h:25:68: error: taking address of temporary array
   25 | #define HPyTuple_Pack(ctx, n, ...) (HPyTuple_FromArray(ctx, (HPy[]){ __VA_ARGS__ }, n))
      |                                                                    ^~~~~~~~~~~~~~~
hpy_basic.cpp:6083:12: note: in expansion of macro ‘HPyTuple_Pack’
 6083 |     args = HPyTuple_Pack(ctx, 1, cleanup_func);
      |            ^~~~~~~~~~~~~
hpy_basic.cpp: At global scope:
hpy_basic.cpp:1722:18: warning: ‘PyObject* __Pyx_CyFunction_Init(__pyx_CyFunctionObject*, PyMethodDef*, int, PyObject*, PyObject*, PyObject*, PyObject*, PyObject*)’ declared ‘static’ but never defined [-Wunused-function]
 1722 | static PyObject *__Pyx_CyFunction_Init(__pyx_CyFunctionObject* op, PyMethodDef *ml,
      |                  ^~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1727:27: warning: ‘void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject*, PyObject*)’ declared ‘static’ but never defined [-Wunused-function]
 1727 | static CYTHON_INLINE void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject* f, PyObject* classobj);
      |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1728:28: warning: ‘void* __Pyx_CyFunction_InitDefaults(HPy, size_t, int)’ declared ‘static’ but never defined [-Wunused-function]
 1728 | static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(__PYX_OBJECT_CTYPE m,
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1737:12: warning: ‘int __pyx_CyFunction_init(PyObject*)’ declared ‘static’ but never defined [-Wunused-function]
 1737 | static int __pyx_CyFunction_init(PyObject *module);
      |            ^~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:6242:13: warning: ‘void __pyx_insert_code_object(int, PyCodeObject*)’ defined but not used [-Wunused-function]
 6242 | static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
      |             ^~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:6228:22: warning: ‘PyCodeObject* __pyx_find_code_object(int)’ defined but not used [-Wunused-function]
 6228 | static PyCodeObject *__pyx_find_code_object(int code_line) {
      |                      ^~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:5558:12: warning: ‘HPy __Pyx_CyFunction_New(HPyContext*, HPyDef*, int, HPy, HPy, HPy, HPy, HPy)’ defined but not used [-Wunused-function]
 5558 | static HPy __Pyx_CyFunction_New(HPyContext *ctx, HPyDef *ml, int flags, HPy qualname,
      |            ^~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:4541:22: warning: ‘PyTypeObject* __Pyx_FetchCommonType(PyTypeObject*)’ defined but not used [-Wunused-function]
 4541 | static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) {
      |                      ^~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:4298:13: warning: ‘void __Pyx_RaiseDoubleKeywordsError(HPyContext*, const char*, HPy)’ defined but not used [-Wunused-function]
 4298 | static void __Pyx_RaiseDoubleKeywordsError(__PYX_CONTEXT_DECL
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:2614:20: warning: ‘__pyx_methods’ defined but not used [-Wunused-variable]
 2614 | static PyMethodDef __pyx_methods[] = {
      |                    ^~~~~~~~~~~~~
hpy_basic.cpp:1717:22: warning: ‘__pyx_CyFunctionType’ defined but not used [-Wunused-variable]
 1717 | static PyTypeObject *__pyx_CyFunctionType = 0;
      |                      ^~~~~~~~~~~~~~~~~~~~
hpy_basic.cpp:1338:21: warning: ‘__pyx_cfilenm’ defined but not used [-Wunused-variable]
 1338 | static const char * __pyx_cfilenm = __FILE__;
      |                     ^~~~~~~~~~~~~

----------------------------------------------------------------------
Ran 4 tests in 0.463s

FAILED (errors=1)
Times:
cython      :     0.33 sec  (   1,  0.329 / run) - slowest: 'cpp:hpy_basic' (0.33s)
pyrun       :     0.00 sec  (   1,  0.001 / run) - slowest: 'py:hpy_basic' (0.00s)
pyimport    :     0.00 sec  (   1,  0.000 / run) - slowest: 'py:hpy_basic' (0.00s)
ALL DONE

@fangerer
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @mattip, sorry for the late answer. I get so many notification emails that I didn't realize this one is actually important.

Yes, I know that problem. It seems that we can still not compile with C++. I usually ran tests like this:

python3 runtest.py --no-cpp --no-refnanny --no-cleanup

I didn't dig into the C++ issue so far. Feel free to investigate if you have time.

Please sign in to comment.