-
Notifications
You must be signed in to change notification settings - Fork 28
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
Update to C++20 #87
Comments
Those three don't seem to have been "rangified".
Here's a complete list:
Here is my incomplete patch. The tests are were patched in the dirtiest way possible to make them works again. However, I do get an error I can't make sense of. The gist contains the error too. |
Hi, thanks for the patch.
Regarding changing the result types, I was intending to add these types and making Would it be possible to submit your patch as a Github pull request rather than a diff, to allow a CI run? Different compilers might make it easier to diagnose the strange Thanks again. |
I was going after what's in cppreference, because I still don't know how to navigate eel.is efficiently. That's why I missed things.
Absolutely, just trying to clean some stuff up first. I don't like submitting pull requests that don't compile. |
P1243 is the paper adding extra range algorithms for C++20, thanks @al-mission-2016 for the heads-up. |
For https://gist.github.com/bstaletic/16f1118be9668584d9081ec9c25c5deb |
Oh, bstaletic, go ahead, please. I'm glad the work is going to be done. |
@al-mission-2016 Thanks for the heads up. I incorporated the changes that @tcbrindle asked for in #95, but I still have not written the tests. Here's the branch: https://github.com/bstaletic/NanoRange/tree/new_algos |
@bstaletic Excellent! For the tests, it's probably easiest to adapt CMCSTL2's sample.cpp (just overwrite the existing, outdated |
I've added the tests and submitted the pull request. #96 |
Regarding [algorithms.results], should the change be as minimal as possible (for example, only change |
The second one. Feel free to submit that PR once #96 is merged. |
Now that C++20 has been finalised, NanoRange should aim to match the spec as closely as possible.
Current task list:
forwarding_range
, addborrowed_range
(PR Use borrowed_range instead of forwarding_range #86)boolean
, addboolean_testable
(PR Update core concept definitions to match C++20 specification #89)default_constructible
->default_initializable
(PR Update core concept definitions to match C++20 specification #89)ssize()
(PR Add ssize() #87 #92)sample
,for_each_n
,clamp
) (PR Implement clamp, for_each_n and sample algorithms #96)[[nodiscard]]
around the placeThe text was updated successfully, but these errors were encountered: