This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2012年08月31日 05:01 by scoder, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Messages (2) | |||
|---|---|---|---|
| msg169500 - (view) | Author: Stefan Behnel (scoder) * (Python committer) | Date: 2012年08月31日 05:01 | |
Formatting support for "lld"/"llu" was added (I think) in issue 7228, but the definition of PY_FORMAT_SIZE_T wasn't adapted. We are getting test output failures in Cython on Win64 when formatting error messages using the "Id" format, as defined by pyport.h: """ #ifndef PY_FORMAT_SIZE_T # if SIZEOF_SIZE_T == SIZEOF_INT && !defined(__APPLE__) # define PY_FORMAT_SIZE_T "" # elif SIZEOF_SIZE_T == SIZEOF_LONG # define PY_FORMAT_SIZE_T "l" # elif defined(MS_WINDOWS) # define PY_FORMAT_SIZE_T "I" # else # error "This platform's pyconfig.h needs to define PY_FORMAT_SIZE_T" # endif #endif """ The "%Id" format is not being resolved in the error messages and shows up in the output instead. NumPy uses "lld" when available, starting with Py2.7: https://github.com/numpy/numpy/blob/master/numpy/core/include/numpy/npy_common.h#L66 Shouldn't PY_FORMAT_SIZE_T become "ll" on Win64 directly? |
|||
| msg169501 - (view) | Author: Stefan Behnel (scoder) * (Python committer) | Date: 2012年08月31日 05:49 | |
I just saw that we were misusing PY_FORMAT_SIZE_T according to the documentation (reading that sometimes helps...). It is not supposed to be used with the Python formatting functions, only with low-level functions. Closing, sorry for the noise. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:35 | admin | set | github: 60031 |
| 2012年08月31日 05:49:57 | scoder | set | status: open -> closed resolution: not a bug messages: + msg169501 |
| 2012年08月31日 05:01:20 | scoder | create | |