[Bug libstdc++/104098] [11/12 Regression] bits/stl_iterator.h fails to compile for __cplusplus > 201703L and with __cpp_concepts undefined

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jan 18 15:33:17 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104098

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |redi at gcc dot gnu.org

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
I think we should just change it to check __cpp_lib_concepts, which is only
true for C++20 anyway:

-#if __cplusplus <= 201703L
+#if ! __cpp_lib_concepts


That is the right condition for using __clamp_iter_cat, iter_value_t,
iter_difference_t and iter_reference_t.


More information about the Gcc-bugs mailing list