https://gcc.gnu.org/g:210f884e000cb0ef033287313294c41e9ac18866

commit r16-8417-g210f884e000cb0ef033287313294c41e9ac18866
Author: Jonathan Wakely <[email protected]>
Date:   Wed Apr 1 10:41:29 2026 +0100

    libstdc++: Tweak Doxygen config file to include C++26 components
    
    This updates the __cplusplus value used by Doxygen, so that C++26
    components are included in the generated docs. It also suppresses
    documentation for some macros that are implementation details or just
    uninteresting for users.
    
    libstdc++-v3/ChangeLog:
    
            * doc/doxygen/user.cfg.in (INPUT): Add <debugging> header.
            (EXCLUDE_SYMBOLS): Exclude include guards and other internal
            macros from generated documentation.
            (PREDEFINED): Update __cplusplus to C++26 value. Remove
            unnecessary spaces in macro expansions. Add missing
            _GLIBCXX_ABI_TAG_CXX11 macro.
    
    Reviewed-by: Tomasz KamiƄski <[email protected]>

Diff:
---
 libstdc++-v3/doc/doxygen/user.cfg.in | 175 +++++++++++++++++++++++++++--------
 1 file changed, 137 insertions(+), 38 deletions(-)

diff --git a/libstdc++-v3/doc/doxygen/user.cfg.in 
b/libstdc++-v3/doc/doxygen/user.cfg.in
index bdcb19c56faa..fc82debd1b4b 100644
--- a/libstdc++-v3/doc/doxygen/user.cfg.in
+++ b/libstdc++-v3/doc/doxygen/user.cfg.in
@@ -1043,6 +1043,7 @@ INPUT                  = 
@srcdir@/doc/doxygen/doxygroups.cc \
                          include/concepts \
                          include/condition_variable \
                          include/deque \
+                         include/debugging \
                          include/expected \
                          include/filesystem \
                          include/flat_map \
@@ -1332,8 +1333,104 @@ EXCLUDE_PATTERNS       = stamp-* \
 
 # Note that the wildcards are matched against the file with absolute path, so 
to
 # exclude all test directories use the pattern */test/*
+# We exclude header guard macros, and all __glibcxx_want_feature_test_macro,
+# and a few other macros that we don't want documented.
+EXCLUDE_SYMBOLS        = \
+                        _GLIBCXX_GET_ENCODING_DATA \
+                        _GLIBCXX_CONSTEXPR_BAD_*_ACCESS \
+                        _GLIBCXX_GET_ENCODING_DATA \
+                        __glibcxx_want_* \
+                        _*_H \
+                        _*_TCC \
+                        __EXCEPTION__ \
+                        _COMPARE \
+                        _NEW \
+                        _TYPEINFO \
+                        _GLIBCXX_ALGORITHM \
+                        _GLIBCXX_ANY \
+                        _GLIBCXX_ARRAY \
+                        _GLIBCXX_ATOMIC \
+                        _GLIBCXX_BARRIER \
+                        _GLIBCXX_BIT \
+                        _GLIBCXX_BITSET \
+                        _GLIBCXX_CHARCONV \
+                        _GLIBCXX_CHRONO \
+                        _GLIBCXX_CODECVT \
+                        _GLIBCXX_COMPLEX \
+                        _GLIBCXX_CONCEPTS \
+                        _GLIBCXX_CONDITION_VARIABLE \
+                        _GLIBCXX_CONTRACTS \
+                        _GLIBCXX_COROUTINE \
+                        _GLIBCXX_DEBUGGING \
+                        _GLIBCXX_DEQUE \
+                        _GLIBCXX_EXECUTION \
+                        _GLIBCXX_EXPECTED \
+                        _GLIBCXX_FILESYSTEM \
+                        _GLIBCXX_FLAT_MAP \
+                        _GLIBCXX_FLAT_SET \
+                        _GLIBCXX_FORMAT \
+                        _GLIBCXX_FORWARD_LIST \
+                        _GLIBCXX_FSTREAM \
+                        _GLIBCXX_FUNCTIONAL \
+                        _GLIBCXX_FUTURE \
+                        _GLIBCXX_GENERATOR \
+                        _GLIBCXX_INPLACE_VECTOR \
+                        _GLIBCXX_IOMANIP \
+                        _GLIBCXX_IOS \
+                        _GLIBCXX_IOSFWD \
+                        _GLIBCXX_IOSTREAM \
+                        _GLIBCXX_ISTREAM \
+                        _GLIBCXX_ITERATOR \
+                        _GLIBCXX_LATCH \
+                        _GLIBCXX_NUMERIC_LIMITS \
+                        _GLIBCXX_LIST \
+                        _GLIBCXX_MAP \
+                        _GLIBCXX_MDSPAN \
+                        _GLIBCXX_MEMORY \
+                        _GLIBCXX_MEMORY_RESOURCE \
+                        _GLIBCXX_META \
+                        _GLIBCXX_MUTEX \
+                        _GLIBCXX_NUMBERS \
+                        _GLIBCXX_NUMERIC \
+                        _GLIBCXX_OPTIONAL \
+                        _GLIBCXX_OSTREAM \
+                        _GLIBCXX_PRINT \
+                        _GLIBCXX_QUEUE \
+                        _GLIBCXX_RANDOM \
+                        _GLIBCXX_RANGES \
+                        _GLIBCXX_RATIO \
+                        _GLIBCXX_REGEX \
+                        _SCOPED_ALLOCATOR \
+                        _GLIBCXX_SEMAPHORE \
+                        _GLIBCXX_SET \
+                        _GLIBCXX_SHARED_MUTEX \
+                        _GLIBCXX_SIMD \
+                        _GLIBCXX_SRCLOC \
+                        _GLIBCXX_SPAN \
+                        _GLIBCXX_SPANSTREAM \
+                        _GLIBCXX_SSTREAM \
+                        _GLIBCXX_STACK \
+                        _GLIBCXX_STACKTRACE \
+                        _GLIBCXX_STDEXCEPT \
+                        _GLIBCXX_STDFLOAT \
+                        _GLIBCXX_STOP_TOKEN \
+                        _GLIBXX_STREAMBUF \
+                        _GLIBCXX_STRING_VIEW \
+                        _GLIBCXX_SYNCSTREAM \
+                        _GLIBCXX_SYSTEM_ERROR \
+                        _GLIBCXX_TEXT_ENCODING \
+                        _GLIBCXX_THREAD \
+                        _GLIBCXX_TUPLE \
+                        _GLIBCXX_TYPE_TRAITS \
+                        _GLIBCXX_TYPEINDEX \
+                        _GLIBCXX_UNORDERED_MAP \
+                        _GLIBCXX_UNORDERED_SET \
+                        _GLIBCXX_UTILITY \
+                        _GLIBCXX_VALARRAY \
+                        _GLIBCXX_VARIANT \
+                        _GLIBCXX_VECTOR \
+                        _GLIBCXX_VERSION_INCLUDED \
 
-EXCLUDE_SYMBOLS        =
 
 # The EXAMPLE_PATH tag can be used to specify one or more files or directories
 # that contain example code fragments that are included (see the \include
@@ -2720,40 +2817,40 @@ INCLUDE_FILE_PATTERNS  =
 # recursively expanded use the := operator instead of the = operator.
 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
 
-PREDEFINED             = __cplusplus=202002L \
+PREDEFINED             = __cplusplus=202603L \
                          __GTHREADS \
                          _GLIBCXX_HAS_GTHREADS \
                          _GTHREAD_USE_MUTEX_TIMEDLOCK \
                          _GLIBCXX_HAVE_TLS \
                          _GLIBCXX_INCLUDE_AS_CXX11 \
-                         "_GLIBCXX_PURE= " \
-                         "_GLIBCXX_CONST= " \
+                         "_GLIBCXX_PURE=" \
+                         "_GLIBCXX_CONST=" \
                          "_GLIBCXX_NODISCARD=[[nodiscard]]" \
-                         "_GLIBCXX_NORETURN= " \
-                         "_GLIBCXX_NOEXCEPT_PARM= " \
-                         "_GLIBCXX_NOEXCEPT_QUAL= " \
-                         "_GLIBCXX_STD_C= " \
-                         "_GLIBCXX_STD_A= " \
-                         "_GLIBCXX_TXN_SAFE_DYN= " \
-                         "_GLIBCXX_VISIBILITY(V)= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE_VERSION= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE_ALGO= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE_CONTAINER= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE_CXX11= " \
-                         "_GLIBCXX_BEGIN_NAMESPACE_LDBL= " \
-                         "_GLIBCXX_END_NAMESPACE_VERSION= " \
-                         "_GLIBCXX_END_NAMESPACE_ALGO= " \
-                         "_GLIBCXX_END_NAMESPACE_CONTAINER= " \
-                         "_GLIBCXX_END_NAMESPACE_CXX11= " \
-                         "_GLIBCXX_END_NAMESPACE_LDBL= " \
-                        "_GLIBCXX_BEGIN_INLINE_ABI_NAMESPACE(X)= " \
-                        "_GLIBCXX_END_INLINE_ABI_NAMESPACE(X)= " \
-                         "_GLIBCXX_TEMPLATE_ARGS=...  " \
-                         "_GLIBCXX_DEPRECATED= " \
-                         "_GLIBCXX_DEPRECATED_SUGGEST(E)= " \
+                         "_GLIBCXX_NORETURN=" \
+                         "_GLIBCXX_NOEXCEPT_PARM=" \
+                         "_GLIBCXX_NOEXCEPT_QUAL=" \
+                         "_GLIBCXX_STD_C=" \
+                         "_GLIBCXX_STD_A=" \
+                         "_GLIBCXX_TXN_SAFE_DYN=" \
+                         "_GLIBCXX_VISIBILITY(V)=" \
+                         "_GLIBCXX_BEGIN_NAMESPACE_VERSION=" \
+                         "_GLIBCXX_BEGIN_NAMESPACE_ALGO=" \
+                         "_GLIBCXX_BEGIN_NAMESPACE_CONTAINER=" \
+                         "_GLIBCXX_BEGIN_NAMESPACE_CXX11=" \
+                         "_GLIBCXX_BEGIN_NAMESPACE_LDBL=" \
+                         "_GLIBCXX_END_NAMESPACE_VERSION=" \
+                         "_GLIBCXX_END_NAMESPACE_ALGO=" \
+                         "_GLIBCXX_END_NAMESPACE_CONTAINER=" \
+                         "_GLIBCXX_END_NAMESPACE_CXX11=" \
+                         "_GLIBCXX_END_NAMESPACE_LDBL=" \
+                        "_GLIBCXX_BEGIN_INLINE_ABI_NAMESPACE(X)=" \
+                        "_GLIBCXX_END_INLINE_ABI_NAMESPACE(X)=" \
+                         "_GLIBCXX_TEMPLATE_ARGS=... " \
+                         "_GLIBCXX_DEPRECATED=" \
+                         "_GLIBCXX_DEPRECATED_SUGGEST(E)=" \
                          _GLIBCXX_CONSTEXPR=constexpr \
                          _GLIBCXX_USE_CONSTEXPR=constexpr \
-                         "_GLIBCXX_THROW(E)= " \
+                         "_GLIBCXX_THROW(E)=" \
                          _GLIBCXX_NOEXCEPT=noexcept \
                          "_GLIBCXX_NOEXCEPT_IF(C)=noexcept(/*conditional*/)" \
                          _GLIBCXX_NOTHROW=noexcept \
@@ -2780,29 +2877,30 @@ PREDEFINED             = __cplusplus=202002L \
                          ATOMIC_INT_LOCK_FREE=2 \
                          PB_DS_DATA_TRUE_INDICATOR \
                          PB_DS_STATIC_ASSERT=// \
-                         "_GLIBCXX_BEGIN_NAMESPACE_ALGO= " \
-                         "_GLIBCXX_END_NAMESPACE_ALGO= " \
+                         "_GLIBCXX_BEGIN_NAMESPACE_ALGO=" \
+                         "_GLIBCXX_END_NAMESPACE_ALGO=" \
                          __glibcxx_function_requires=// \
                          __glibcxx_class_requires=// \
                          __glibcxx_class_requires2=// \
                          __glibcxx_class_requires3=// \
                          __glibcxx_class_requires4=// \
-                         "__attribute__(X)= " \
+                         "__attribute__(X)=" \
                          _GLIBCXX14_CONSTEXPR=constexpr \
                          _GLIBCXX17_CONSTEXPR=constexpr \
                          _GLIBCXX20_CONSTEXPR=constexpr \
                          _GLIBCXX23_CONSTEXPR=constexpr \
-                         "_GLIBCXX11_DEPRECATED= " \
-                         "_GLIBCXX11_DEPRECATED_SUGGEST(E)= " \
-                         "_GLIBCXX17_DEPRECATED= " \
-                         "_GLIBCXX17_DEPRECATED_SUGGEST(E)= " \
-                         "_GLIBCXX20_DEPRECATED= " \
-                         "_GLIBCXX20_DEPRECATED_SUGGEST(E)= " \
-                         "_GLIBCXX23_DEPRECATED= " \
-                         "_GLIBCXX23_DEPRECATED_SUGGEST(E)= " \
+                         "_GLIBCXX11_DEPRECATED=" \
+                         "_GLIBCXX11_DEPRECATED_SUGGEST(E)=" \
+                         "_GLIBCXX17_DEPRECATED=" \
+                         "_GLIBCXX17_DEPRECATED_SUGGEST(E)=" \
+                         "_GLIBCXX20_DEPRECATED=" \
+                         "_GLIBCXX20_DEPRECATED_SUGGEST(E)=" \
+                         "_GLIBCXX23_DEPRECATED=" \
+                         "_GLIBCXX23_DEPRECATED_SUGGEST(E)=" \
                          _GLIBCXX17_INLINE=inline \
                          _GLIBCXX_CHRONO_INT64_T=int64_t \
                          _GLIBCXX_DEFAULT_ABI_TAG \
+                        _GLIBCXX_ABI_TAG_CXX11 \
                          _GLIBCXX_USE_DEPRECATED \
                          _GLIBCXX_HOSTED \
                          "__has_builtin(x)=1" \
@@ -2815,6 +2913,7 @@ PREDEFINED             = __cplusplus=202002L \
                         "_GLIBCXX_DOXYGEN_ONLY(X)=X " \
                         __exception_ptr=__unspecified__ \
 
+
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
 # tag can be used to specify a list of macro names that should be expanded. The
 # macro definition that is found in the sources will be used. Use the 
PREDEFINED

Reply via email to