[issue43767] Compiler arning about 'Yield' macro redefinition on Windows

STINNER Victor report at bugs.python.org
Wed Apr 7 14:35:27 EDT 2021


STINNER Victor <vstinner at python.org> added the comment:

Fixing this super annoying Yield warning was one of my motivation for moving Python-ast.h to the internal C API (pycore_ast.h) :-D I disliked that Python-ast.h defined tons of symbols without "Py" (or "_Py") prefix:

commit 94faa0724f8cbae6867c491c8e465e35f4fdbfbb
Author: Victor Stinner <vstinner at python.org>
Date:   Tue Mar 23 20:47:40 2021 +0100

    bpo-43244: Remove ast.h, asdl.h, Python-ast.h headers (GH-24933)
    
    These functions were undocumented and excluded from the limited C
    API.
    
    Most names defined by these header files were not prefixed by "Py"
    and so could create names conflicts. For example, Python-ast.h
    defined a "Yield" macro which was conflict with the "Yield" name used
    by the Windows <winbase.h> header.
    
    Use the Python ast module instead.
    
    * Move Include/asdl.h to Include/internal/pycore_asdl.h.
    * Move Include/Python-ast.h to Include/internal/pycore_ast.h.
    * Remove ast.h header file.
    * pycore_symtable.h no longer includes Python-ast.h.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue43767>
_______________________________________


More information about the Python-bugs-list mailing list