libstdc++: Only define std::span::at for C++26 [PR115335]
In r14-5689-g1fa85dcf656e2f I added std::span::at and made the correct changes to the __cpp_lib_span macro (with tests for the correct value in C++20/23/26). But I didn't make the declaration of std::span::at actually depend on the macro, so it was defined for C++20 and C++23, not only for C++26. This fixes that oversight. libstdc++-v3/ChangeLog: PR libstdc++/115335 * include/std/span (span::at): Guard with feature test macro. (cherry picked from commit 2197814011eec75022aa8550f10621409b69d4a1)
This commit is contained in:
parent
a88e13bd7e
commit
c6e6258ea4
1 changed files with 2 additions and 0 deletions
|
@ -287,6 +287,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
return *(this->_M_ptr + __idx);
|
||||
}
|
||||
|
||||
#if __cpp_lib_span >= 202311L // >= C++26
|
||||
[[nodiscard]]
|
||||
constexpr reference
|
||||
at(size_type __idx) const
|
||||
|
@ -296,6 +297,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
"of size %zu"), __idx, this->size());
|
||||
return *(this->_M_ptr + __idx);
|
||||
}
|
||||
#endif
|
||||
|
||||
[[nodiscard]]
|
||||
constexpr pointer
|
||||
|
|
Loading…
Add table
Reference in a new issue