https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119859
--- Comment #8 from Laurent Rineau <Laurent.Rineau__gcc at normalesup dot org> --- (In reply to Richard Biener from comment #6) > Is the testcase from a real-world application? The test case is a simplified version of a piece of code from CGAL version 6.0.1: https://github.com/CGAL/cgal/blob/v6.0.1/STL_Extension/include/CGAL/iterator.h#L1345 (the code is quite ugly). The `B::f` was originally `CGAL::Dispatch_output_iterator::operator=`. I have a reimplementation of that class template, in a PR, using C++17: https://github.com/CGAL/cgal/pull/8854. It will workaround the issue.