Skip to content
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-36106: resolve sinpi name clash with libm (IEEE-754 violation) #12027

Merged
merged 3 commits into from
Feb 26, 2019

Conversation

dimpase
Copy link
Contributor

@dimpase dimpase commented Feb 25, 2019

the standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worken on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4)

https://bugs.python.org/issue36106

@the-knights-who-say-ni
Copy link

Hello, and thanks for your contribution!

I'm a bot set up to make sure that the project can legally accept your contribution by verifying you have signed the PSF contributor agreement (CLA).

Our records indicate we have not received your CLA. For legal reasons we need you to sign this before we can look at your contribution. Please follow the steps outlined in the CPython devguide to rectify this issue.

If you have recently signed the CLA, please wait at least one business day
before our records are updated.

You can check yourself to see if the CLA has been received.

Thanks again for your contribution, we look forward to reviewing it!

@dimpase
Copy link
Contributor Author

dimpase commented Feb 25, 2019

See https://bugs.python.org/issue36106 for the bug report.

dimpase and others added 2 commits February 25, 2019 14:30
the standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worken on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4)
@dimpase dimpase changed the title resolve sinpi name clash with libm (IEEE-754 violation) bpo-36106: resolve sinpi name clash with libm (IEEE-754 violation) Feb 25, 2019
Copy link
Contributor

@eamanu eamanu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, sign the CLA please.

@eamanu
Copy link
Contributor

eamanu commented Feb 25, 2019

I put a comment on bpo.

@dimpase
Copy link
Contributor Author

dimpase commented Feb 25, 2019

Hi, sign the CLA please.

I have done it, just takes a while to get through...

@bedevere-bot
Copy link

A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated.

Once you have made the requested changes, please leave a comment on this pull request containing the phrase I have made the requested changes; please review again. I will then notify any core developers who have left a review that you're ready for them to take another look at this pull request.

@serhiy-storchaka serhiy-storchaka added type-bug An unexpected behavior, bug, or error needs backport to 3.7 labels Feb 25, 2019
Co-Authored-By: dimpase <dimpase@gmail.com>
@dimpase
Copy link
Contributor Author

dimpase commented Feb 25, 2019

A backport to 2.7 would be great, too.

@miss-islington
Copy link
Contributor

Thanks @dimpase for the PR, and @serhiy-storchaka for merging it 🌮🎉.. I'm working now to backport this PR to: 2.7, 3.7.
🐍🍒⛏🤖

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 26, 2019
…ythonGH-12027)

The standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worken on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4).
(cherry picked from commit f57cd82)

Co-authored-by: Dima Pasechnik <dimpase@gmail.com>
@bedevere-bot
Copy link

GH-12046 is a backport of this pull request to the 3.7 branch.

@miss-islington
Copy link
Contributor

Sorry, @dimpase and @serhiy-storchaka, I could not cleanly backport this to 2.7 due to a conflict.
Please backport using cherry_picker on command line.
cherry_picker f57cd8288dbe6aba99c057f37ad6d58f8db75350 2.7

@serhiy-storchaka
Copy link
Member

Signing the CLA is not necessary for trivial changes.

@serhiy-storchaka
Copy link
Member

Thank you for your contribution @dimpase!

Unfortunately, our bot failed to backport this change to 2.7 automatically. Do you mind to backport it manually, if this is needed?

miss-islington added a commit that referenced this pull request Feb 26, 2019
…H-12027)

The standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worken on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4).
(cherry picked from commit f57cd82)

Co-authored-by: Dima Pasechnik <dimpase@gmail.com>
@koobs
Copy link

koobs commented Feb 26, 2019

For reference, we (FreeBSD) are tracking this downstream

@dimpase
Copy link
Contributor Author

dimpase commented Feb 26, 2019

Unfortunately, our bot failed to backport this change to 2.7 automatically.

OK, sure. The problem is in unrelated to this patch changes to the file in question, which confuse cherry_picker. Working on it.

@dimpase
Copy link
Contributor Author

dimpase commented Feb 26, 2019

Signing the CLA is not necessary for trivial changes.

according to https://check-python-cla.herokuapp.com/ I've signed the CLA - it's probably not automatically updated...

dimpase added a commit to dimpase/cpython that referenced this pull request Feb 26, 2019
the standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worked on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4)

https://bugs.python.org/issue36106

this is a backport of python#12027 to
2.7 branch.
@bedevere-bot
Copy link

GH-12050 is a backport of this pull request to the 2.7 branch.

serhiy-storchaka pushed a commit that referenced this pull request Feb 26, 2019
…on). (GH-12027) (GH-12050)

The standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worked on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4).
@serhiy-storchaka serhiy-storchaka removed their assignment Mar 21, 2019
vstinner added a commit to vstinner/cpython that referenced this pull request Dec 19, 2024
bpo-36106: Resolve sinpi name clash with libm (IEEE-754 violation). (pythonGH-12027)

The standard math library (libm) may follow IEEE-754 recommendation to
include an implementation of sinPi(), i.e. sinPi(x):=sin(pi*x).
And this triggers a name clash, found by FreeBSD developer
Steve Kargl, who worken on putting sinpi into libm used on FreeBSD
(it has to be named "sinpi", not "sinPi", cf. e.g.
https://en.cppreference.com/w/c/experimental/fpext4).

(cherry picked from commit f57cd82)

Co-authored-by: Victor Stinner <vstinner@python.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type-bug An unexpected behavior, bug, or error
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants