-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Enable CTAD for blocked_rangeNd since C++17 #1524
base: master
Are you sure you want to change the base?
Conversation
I have tried to test the implementation locally and found that it enables the CTAD only for copy/move constructors of |
@kboyarinov, I know that. The idea of my PR is to enable CTAD in principle, because it doesn't completely work with aliases prior C++20. I didn't write the deduction guides (which is just a "substory" of CTAD) intentionally. It's a different story and I propose to solve it differently. As far as I can tell, your PR doesn't enable everything that necessary (at least in my mind). |
OK, no problem. In that case the patch looks fine for me, except for copyright years that should be actualized. |
Thanks. And as you can guess, copyright issue is a 10 seconds fix ;) |
Description
Enable CTAD for blocked_rangeNd since C++17 by making the implementation through the inheritance rather than through alias template.
Type of change
Tests
Documentation
Breaks backward compatibility
Technically, the change breaks backward compatibility but this is a preview functionality, where breaking change is acceptable
Notify the following users
@pavelkumbrasev, @vossmjp, @akukanov, @isaevil, @aleksei-fedotov, @kboyarinov
Other information
Of course, this PR should take into account the changes made in #1449. I cloned 1449 and checked my modifications there. Didn't find any broken tests (I might miss something, though).
Please provide feedback on my PR if anybody sees any issues with proposed changes