-
Notifications
You must be signed in to change notification settings - Fork 226
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
I506 cstdfloat complex std #507
Conversation
So far so good on this issue. The fix is anticipated to be relatively straightforward. ...But @mborland the actual float128 tests I'd like to exercise on GHA are not (or seem like they're not) running on GHA. I did significantly reduce the YAML script to just a few cases and compilers, but I would have thought the default Ubuntu setup has libquadmath. Do you see anything I missed in YAML? |
I need to check, but I suspect the tests are being run with -std=c++XX rather than -std=gnu++XX. We need GNU extensions on for __float128. |
@ckormanyos The config shows libquadmath is provided by the base Ubuntu install. Is there another dependency for these tests? |
@jzmaddock None of the tests in the Actions YAML file use gnu++XX. Do some need to get added in for additional variety? |
I was thinking we should probably add a drone CI config to back up GHA, we could make that all gnu++ by way of variety? |
It would probably be wise to split the load depending on how fast drone returns results. I do appreciate that GHA knocks out the current test battery in under two hours. My run testing architectures on Travis is still pending from last week... |
Drone takes a little longer to pull down the images and get started, but the actual runs are very fast, multiprecision is cycling both drone and GHA in an hour or two. Travis is currently dead to us: the boostorg account has been suspended for using up too many cycles, it might start up again at some point or not. I've also just disabled a bunch of libraries that have moved to drone in Travis, I fear might have accidentally killed your PR in the process :( |
Sounds like it would be worthwhile to use as backup or continue expanding the tests to include gnu standards on.
I can just turn that PR into a remove travis PR then; at that rate it wouldn't offer any useful results anyway. One of the Kernel devs has this repo for testing the kernel on qemu. It may be worthwhile forking it and making it work for testing boost. There does not seem to be any particularly good CI options for testing non x86_64 architectures. |
Yes. Agree with the entire dialog. I will comply in these and the Multiprecision PR(s). At first keep all compilers active, and make a judicious selection at a later point when the load-splitting becomes more clear how to do it... |
Let me see what I can rustle up. |
@jzmaddock The drone docs shows support for at least Linux and BSD on ARM. I can't imagine we need to do much i386 testing. |
Drone is open source and entirely self-hosted, the CppAllience who are providing the service only has x64 clients set up. But yes Drone itself can handle almost any platform and architecture if there's someone to provide the client machines. |
I can look into something like that. Cross compiling is straightforward. Execution on a runner in a simulator is expected to be slow. As for the original topic in this PR, using the compiler flag The original point should be fixed in the header. But I find unrelated potential issues. |
@ckormanyos : Please be aware that the drone CI is still cycling it's first run and is showing up some new failures (mostly Jamfile errors spotted so far), I'll get to those later when the whole run has completed. |
Understood. Let's see how it goes. The changes in this particular branch here are limited in scope. So uless some major problems arise in drone, I'll simply keep this branch synchronized with drone's progress and we can handle the merge of the PR as we deem fit after that all stabilizes. |
Reformulate the change request of issue #506
|
One other suggestion - we should scatter some BOOST_CXX14_CONSTEXPR declarations in front of the [member]-functions that are constexpr in C++20. |
Right, as does C++14 I would also like to see if there is a way to eliminate the dependency on |
I will be picking up work on this issue again. In the intermediate time, a lot of progress was made on CI, and the migrations to C++11 in Math and Multiprecision. So I'll also be reviewing the top-level requirements of this issue and simlutaneously attempting to ensure that the direction of progress is consistent with the new stands of Math and Multiprecision. |
This PR leaves |
This PR addresses #506 via creation of corrected code and new test cases intended to test the corrected behavior.
For initial testing purpoese, the YAML code has been reduced and should not yet be merged in this form