-
Notifications
You must be signed in to change notification settings - Fork 1.5k
C++17 implementation of Dispatch_(or_drop)?_output_iterator #8854
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
base: master
Are you sure you want to change the base?
C++17 implementation of Dispatch_(or_drop)?_output_iterator #8854
Conversation
This is a new implementation of `Dispatch_output_iterator` and `Dispatch_or_drop_output_iterator`, using: - derivation from template parameter pack (C++11), - with a using-declaration based on a pack (C++17). And `*_or_drop*` is implemented using an enable-if trick with a boolean template parameter. That new implementation loops around the issue with gcc-15, and fixes issue CGAL#8827. See: - the CGAL CGAL#8827, - and the upstream gcc bug entry https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119859
This PR seems fine, now: the Github CI tests pass. @sloriot let us know what you think of the new C++17 implementation of |
Does not replace #8854 that is a better implementation but currently not fully compatible with older compilers. Also loops around the issue with gcc-15, and fixes issue #8827. See: - the CGAL #8827, - and the upstream gcc bug entry https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119859
Old compiler or not, there was indeed something wrong in the implementation. Fixed now. |
Summary of Changes
This is a new implementation of
Dispatch_output_iterator
andDispatch_or_drop_output_iterator
, using:And
*_or_drop*
is implemented using an enable-if trick with a boolean template parameter.That new implementation loops around the issue with gcc-15, and fixes issue #8827.
See:
Release Management