-
-
Notifications
You must be signed in to change notification settings - Fork 30.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
always_inline
makes build fail with -Og
and --without-pydebug
#121266
Comments
Would you mind to elaborate? The ABI is now the same between release and debug build since Python 3.8. |
Back when I've tried debugging an assertion failure and enabled |
compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callback used by do_lookup(). When enabling assertions, it's not possible to inline these functions.
compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callback used by do_lookup(). When enabling assertions, it's not possible to inline these functions.
compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callbacks used by do_lookup(). When enabling assertions, it's not possible to inline these functions.
I proposed PR gh-121493 to remove Py_ALWAYS_INLINE. I'm not sure if my PR is correct. |
compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callbacks used by do_lookup(). When enabling assertions, it's not possible to inline these functions.
compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callbacks used by do_lookup(). When enabling assertions, it's not possible to inline these functions.
…nGH-121581) (cherry picked from commit 51da3df) Co-authored-by: Victor Stinner <[email protected]>
If there are problems with Or maybe just for symmetry those should't use |
OTOH, if those Since there is the convenient pyperformance infrastructure let's measure? |
…1493) compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callbacks used by do_lookup(). When enabling assertions, it's not possible to inline these functions. (cherry picked from commit c5a6b9a) Co-authored-by: Victor Stinner <[email protected]>
…#122095) gh-121266: Remove Py_ALWAYS_INLINE in dictobject.c (GH-121493) compare_unicode_generic(), compare_unicode_unicode() and compare_generic() are callbacks used by do_lookup(). When enabling assertions, it's not possible to inline these functions. (cherry picked from commit c5a6b9a) Co-authored-by: Victor Stinner <[email protected]>
The issue should now be fixed in 3.13 and main branches. Thanks for the report @mgorny. |
Thanks a lot! |
Bug report
Bug description:
We're trying to build CPython to debug a crash in third-party extension. To do that, I've set
CFLAGS="-Og -g"
and passed--with-assertions
. However, we're not using--with-pydebug
since that has had side effects that broke multiple third-party packages in the past. Unfortunately, in this configuration CPython fails to build due to use ofalways_inline
:CPython versions tested on:
3.13, CPython main branch
Operating systems tested on:
Linux
Linked PRs
The text was updated successfully, but these errors were encountered: