https://gcc.gnu.org/g:cd8e0ea7273425931a0843f4355ad61e177e1bf2
commit r15-3140-gcd8e0ea7273425931a0843f4355ad61e177e1bf2 Author: Jonathan Wakely <jwak...@redhat.com> Date: Fri Aug 23 21:54:21 2024 +0100 libstdc++: Improve Doxygen docs for std::allocator_traits specializations The main fix here is to use @header so that the docs show the correct header file instead of an internal header like alloc_traits.h. libstdc++-v3/ChangeLog: * include/bits/alloc_traits.h: Improve doxygen docs for allocator_traits specializations. * include/bits/memory_resource.h: Likewise. Diff: --- libstdc++-v3/include/bits/alloc_traits.h | 16 ++++++++++++++-- libstdc++-v3/include/bits/memory_resource.h | 9 +++++++-- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/libstdc++-v3/include/bits/alloc_traits.h b/libstdc++-v3/include/bits/alloc_traits.h index c2acc2ab2070..c64f4757d5da 100644 --- a/libstdc++-v3/include/bits/alloc_traits.h +++ b/libstdc++-v3/include/bits/alloc_traits.h @@ -549,7 +549,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #pragma GCC diagnostic pop #if _GLIBCXX_HOSTED - /// Partial specialization for std::allocator. + /** + * @brief Partial specialization for `std::allocator` + * @headerfile memory + * @ingroup allocators + * @since C++11 + * @see std::allocator_traits + */ template<typename _Tp> struct allocator_traits<allocator<_Tp>> { @@ -720,7 +726,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return __rhs; } }; - /// Explicit specialization for std::allocator<void>. + /** + * @brief Explicit specialization for `std::allocator<void>` + * @headerfile memory + * @ingroup allocators + * @since C++11 + * @see std::allocator_traits + */ template<> struct allocator_traits<allocator<void>> { diff --git a/libstdc++-v3/include/bits/memory_resource.h b/libstdc++-v3/include/bits/memory_resource.h index 5f50b296df7b..db515fb30ef9 100644 --- a/libstdc++-v3/include/bits/memory_resource.h +++ b/libstdc++-v3/include/bits/memory_resource.h @@ -52,7 +52,7 @@ namespace std _GLIBCXX_VISIBILITY(default) _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace pmr { - /// Class memory_resource + /// Class `memory_resource` /** * @ingroup pmr * @headerfile memory_resource @@ -385,7 +385,12 @@ namespace pmr template<typename _Alloc> struct allocator_traits; - /// Partial specialization for std::pmr::polymorphic_allocator + /// Partial specialization for `std::pmr::polymorphic_allocator` + /** + * @ingroup pmr + * @headerfile memory_resource + * @since C++17 + */ template<typename _Tp> struct allocator_traits<pmr::polymorphic_allocator<_Tp>> {