-
Notifications
You must be signed in to change notification settings - Fork 2.2k
ci: windows 2017 C++17 testing #2428
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
25f06ff
to
4d2327a
Compare
@@ -30,15 +30,11 @@ jobs: | |||
arch: x64 | |||
max-cxx-std: 17 | |||
args: "-DPYBIND11_FINDPYTHON=ON" | |||
- runs-on: macos-latest |
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.
Why was this removed?
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 was just to have a macOS FindPython run, but 3.9dev can also do FindPython without making another macOS run.
.github/workflows/ci.yml
Outdated
- runs-on: windows-2016 | ||
python: 3.7 | ||
arch: x86 | ||
max-cxx-std: 14 | ||
max-cxx-std: 17 | ||
args: "-DCMAKE_CXX_FLAGS='//permissive- //DWIN32 //D_WINDOWS //W3 //GR //EHsc'" |
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.
Don't seem to be able to inject a single flag (or flags properly) to MSVC's build...
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.
Must be something with GHA, though. I just tried, and I can perfectly run cmake .. -DPYTHON_EXECUTABLE=C:\Python38\python.exe -DCMAKE_CXX_FLAGS=/permissive-
:-/
Something with thing being escaped?
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.
It is definitely messing with escaping.
f1c1ff4
to
e5b886c
Compare
@YannickJadoul Any idea why I'm getting |
No idea; didn't think we were elevating warnings to errors? But I'm a bit confused on whether and why VS 2017 would have different defaults to VS 2019. |
So, by default, exception handling is utterly borked on MSVC.
https://docs.microsoft.com/en-us/cpp/build/reference/eh-exception-handling-model?view=vs-2019
|
Fair enough. But why do the VS 2019 not have this problem? Oh, maybe it's related to us asking VS 2017 "please follow the standard" with |
I guess that's a possible explanation. |
By the way, why don't we merge #2431 into this PR? |
Let's see what we need to add, then we can combine the branches |
OK! Feel free to steal or redirect my PR in whichever way works best for you :-) |
Found it, setting the flags manually here overrides the default: So it loses |
This would help the situation if added in the future: https://gitlab.kitware.com/cmake/cmake/-/issues/20610 |
I've added the commit to #2431 and will go from there. |
Pulling out the non-annotations changes from #2427