On Fri, 15 May 2026 at 18:22, Tomasz Kaminski <[email protected]> wrote:
>
> Changed locally to:
> libstdc++: Include range_access.h from <optional> and <stacktrace>

Thanks!


>
> This implements resolutions for LWG4131 and LWG3625 (also part of 4.8. section
> of the P3016R6). As for any other issues LWG issue changes are applied as DR
> for the oldest applicable standards:
> * <optional> (LWG4131): C++26, since optional range support
> * <stacktrace> (LWG3625): C++23, since introduction
>
>
> On Fri, May 15, 2026 at 7:05 PM Tomasz Kaminski <[email protected]> wrote:
>>
>>
>>
>> On Fri, May 15, 2026 at 6:55 PM Jonathan Wakely <[email protected]> wrote:
>>>
>>> Oh, the subject line says "and <valarray>" but that isn't covered by the 
>>> patch.
>>
>> Thanks; I will fix that. Planned to have `valarray` here but decided to 
>> separate it.
>>>
>>>
>>> On Fri, 15 May 2026 at 16:10, Tomasz Kamiński <[email protected]> wrote:
>>> >
>>> > As the range accessor all already conditionally noexcept, this implements
>>> > LWG4131 and LWG3625 (also part 4.8. section of the P3016R6). As for any
>>> > LWG issue resolutions, changes are applied as DR for oldest applicable
>>> > standards:
>>> > * <optional> (LWG4131): C++26, since optional range support
>>> > * <stacktrace> (LWG3625): C++23, since introduction
>>> >
>>> > libstdc++-v3/ChangeLog:
>>> >
>>> >         * include/std/optional [__cpp_lib_optional_range_support]:
>>> >         Replace <bits/stl_iterator.h> include with <bits/range_access.h>.
>>> >         * include/std/stacktrace: Likewise.
>>> > ---
>>> >  libstdc++-v3/include/std/optional   | 2 +-
>>> >  libstdc++-v3/include/std/stacktrace | 2 +-
>>> >  2 files changed, 2 insertions(+), 2 deletions(-)
>>> >
>>> > diff --git a/libstdc++-v3/include/std/optional 
>>> > b/libstdc++-v3/include/std/optional
>>> > index e3c6ea20988..8d6d049e8cc 100644
>>> > --- a/libstdc++-v3/include/std/optional
>>> > +++ b/libstdc++-v3/include/std/optional
>>> > @@ -62,7 +62,7 @@
>>> >  #ifdef __cpp_lib_optional_range_support // C++ >= 26
>>> >  # include <bits/formatfwd.h>
>>> >  # include <bits/ranges_base.h>
>>> > -# include <bits/stl_iterator.h>
>>> > +# include <bits/range_access.h>
>>> >  #endif
>>> >
>>> >  namespace std _GLIBCXX_VISIBILITY(default)
>>> > diff --git a/libstdc++-v3/include/std/stacktrace 
>>> > b/libstdc++-v3/include/std/stacktrace
>>> > index 587a163e976..79941d93b88 100644
>>> > --- a/libstdc++-v3/include/std/stacktrace
>>> > +++ b/libstdc++-v3/include/std/stacktrace
>>> > @@ -45,9 +45,9 @@
>>> >  #include <bits/memory_resource.h>
>>> >  #include <bits/stl_algobase.h>
>>> >  #include <bits/stl_algo.h>
>>> > -#include <bits/stl_iterator.h>
>>> >  #include <bits/stl_uninitialized.h>
>>> >  #include <bits/stl_tempbuf.h> // __get_temporary_buffer
>>> > +#include <bits/range_access.h>
>>> >  #include <ext/numeric_traits.h>
>>> >
>>> >  namespace std _GLIBCXX_VISIBILITY(default)
>>> > --
>>> > 2.54.0
>>> >
>>>

Reply via email to