Skip to content

Includes/internal/pycore_code.h uses static_assert() but does not inlcude pymacro.h #123747

Closed
@dnicolodi

Description

@dnicolodi

Bug report

Bug description:

Includes/internal/pycore_code.h uses static_assert() but does not inlcude pymacro.h, should it?

AFAIU pymacro.h makes sure that static_assert() is correctly defined for all supported compilers and platforms. Not including it in Includes/internal/pycore_code.h implicitly relies on pymacro.h being included before or via transitive includes.

I've found this while investigating a Cython extension module build failure. Cython includes the private header and thus requires static_macro() to be defined.

CPython versions tested on:

3.13, CPython main branch

Operating systems tested on:

No response

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions