The private PyCode and PyOptimizer APIs use "unnamed structs/unions" which are not allowed in ISO C99: see https://github.com/python/cpython/issues/120293. I propose to move private PyCode and PyOptimizer APIs to the internal C API. 6 PyUnstable optimizer functions are moved to the internal C API: * PyUnstable_Replace_Executor() * PyUnstable_SetOptimizer() * PyUnstable_GetOptimizer() * PyUnstable_GetExecutor() * PyUnstable_Optimizer_NewCounter() * PyUnstable_Optimizer_NewUOpOptimizer() <!-- gh-linked-prs --> ### Linked PRs * gh-120643 * gh-121043 * gh-121644 * gh-121729 <!-- /gh-linked-prs -->