-
-
Notifications
You must be signed in to change notification settings - Fork 31.5k
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
bpo-45548: Remove _math.c workarounds for pre-C99 libm #29179
Conversation
I created an alternative approach but just inlining into |
Agreed. Looks fine to me. I somewhat prefer @brettcannon's approach (it feels odd to be including a |
A bit off-topic (and probably fodder for a separate PR), but it looks as though we ought to be able to get rid of most of the functionality in |
Looking more closely, I think we can assume that all of |
The :mod:`math` and :mod:`cmath` implementation now require a C99 compatible ``libm`` and no longer ship with workarounds for missing acosh, asinh, expm1, and log1p functions. The changeset also removes ``_math.c`` and moves the last remaining workaround into ``_math.h``. This simplifies static builds with ``Modules/Setup`` and resolves symbol conflicts. Co-authored-by: Mark Dickinson <mdickinson@enthought.com> Co-authored-by: Brett Cannon <brett@python.org> Signed-off-by: Christian Heimes <christian@python.org>
@mdickinson I implemented your suggestion, moved the log1p workaround into (Sorry for the squashed commit. I made an error while rewriting the commit message) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mostly LGTM; two nitpicks and one question.
Misc/NEWS.d/next/Build/2021-10-24-21-49-49.bpo-45548.UWx0UC.rst
Outdated
Show resolved
Hide resolved
Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
The :mod:
math
and :mod:cmath
implementation now require a C99 compatiblelibm
and no longer ship with workarounds for missing acosh, asinh,expm1, and log1p functions.
The changeset also removes
_math.c
and moves the last remainingworkaround into
_math.h
. This simplifies static builds withModules/Setup
and resolves symbol conflicts.Co-authored-by: Mark Dickinson mdickinson@enthought.com
Co-authored-by: Brett Cannon brett@python.org
Signed-off-by: Christian Heimes christian@python.org
https://bugs.python.org/issue45548
Automerge-Triggered-By: GH:tiran