bpo-43693: Silence some compiler warnings. (gh-26588)
The plan is to eventually make PyCodeObject opaque in the public C-API, with the full struct moved to Include/internal/pycore_code.h. _PyLocalsPlusKinds and _PyLocalsPlusKind started off there but were needed on PyCodeObject, hence the duplication. This led to warnings with some compilers. (Apparently it does not trigger a warning on my install of GCC.) This change eliminates the superfluous typedef. https://bugs.python.org/issue43693
This commit is contained in:
parent
631f9938b1
commit
165c884154
@ -26,7 +26,6 @@ typedef uint16_t _Py_CODEUNIT;
|
|||||||
typedef struct _PyOpcache _PyOpcache;
|
typedef struct _PyOpcache _PyOpcache;
|
||||||
|
|
||||||
|
|
||||||
// These are duplicated from pycore_code.h.
|
|
||||||
typedef unsigned char _PyLocalsPlusKind;
|
typedef unsigned char _PyLocalsPlusKind;
|
||||||
typedef _PyLocalsPlusKind *_PyLocalsPlusKinds;
|
typedef _PyLocalsPlusKind *_PyLocalsPlusKinds;
|
||||||
|
|
||||||
|
@ -167,8 +167,8 @@ extern Py_ssize_t _Py_QuickenedCount;
|
|||||||
* "free" kind is mutually exclusive with both.
|
* "free" kind is mutually exclusive with both.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// We would use an enum if C let us specify the storage type.
|
// For now _PyLocalsPlusKind and _PyLocalsPlusKinds are defined
|
||||||
typedef unsigned char _PyLocalsPlusKind;
|
// in Include/cpython/code.h.
|
||||||
/* Note that these all fit within _PyLocalsPlusKind, as do combinations. */
|
/* Note that these all fit within _PyLocalsPlusKind, as do combinations. */
|
||||||
// Later, we will use the smaller numbers to differentiate the different
|
// Later, we will use the smaller numbers to differentiate the different
|
||||||
// kinds of locals (e.g. pos-only arg, varkwargs, local-only).
|
// kinds of locals (e.g. pos-only arg, varkwargs, local-only).
|
||||||
@ -176,8 +176,6 @@ typedef unsigned char _PyLocalsPlusKind;
|
|||||||
#define CO_FAST_CELL 0x40
|
#define CO_FAST_CELL 0x40
|
||||||
#define CO_FAST_FREE 0x80
|
#define CO_FAST_FREE 0x80
|
||||||
|
|
||||||
typedef _PyLocalsPlusKind *_PyLocalsPlusKinds;
|
|
||||||
|
|
||||||
static inline int
|
static inline int
|
||||||
_PyCode_InitLocalsPlusKinds(int num, _PyLocalsPlusKinds *pkinds)
|
_PyCode_InitLocalsPlusKinds(int num, _PyLocalsPlusKinds *pkinds)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user