-
-
Notifications
You must be signed in to change notification settings - Fork 10.9k
BLD,API: (distutils) Force strict floating point error model on clang #19049
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
Conversation
This also affects all users of numpy distutils
I'm going to ping @rgommers here. |
We'll only be testing it on macOS I believe. So it depends, if it's a simple flag that may be enough. |
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.
This way of inserting the flag seems fine to me. I agree it feels hacky, but there's also no "one obvious place" where all the compiler flag modifications go - doing it in CCompiler_customize
should be fairly robust.
Perhaps @r-devulap can check. I'd be more comfortable if the other workarounds hadn't been removed, we want to be sure this works first. |
Adding the |
Yeah, reverting those changes was too optimistic. Removed it. |
Thanks Sebastian. |
This seems to break scipy build on windows Pinging @mckib2 as maybe he can recognize something relevant |
Strange, the new flag addition should not even take place. The problem seems to be |
My bad, everything was scrambled because I still worked with Sorry for the noise. |
@ilayn Is this still a problem or did switching to |
All good after fixing the branches and commits |
@rgommers, I just noticed on another PR this build log: https://dev.azure.com/numpy/27346c6a-2774-4eac-bf85-e068127c0ccc/_apis/build/builds/18280/logs/57 Which does not include |
Argh, this is why I'm working so hard on a new build system - so we can stop trying to debug the current one. Guess I didn't read the PR description - review made sense, but no one actually tested it. |
Maybe I did test, can't remember. The code path does get hit, but only once in the "test compile" stage and once when compiling numpy extensions (in the
Maybe we end up not winning the monkey patching race or something. This seems like a good moment to share this picture: |
I don't have time to look at it more right now. There's no real design, it's just trial and error. We should find a place where the change doesn't get overwritten by something else. |
Sure, I only noticed this because |
I am not quite sure this is the right way to do it, it feels hackish... but distutils tends to I guess.
I tried removing some of the hacks that were probably in place just because of the missing compile time flag, so hopefully this will work out.Do we test clang properly in CI? Otherwise we will have to double check before merging (I would have to set up clang first).Closes gh-18005