aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2019-05-02 16:46:29 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2019-05-02 16:46:29 +0100
commit1ababc8bd59bcca3bac8c08d367bf0e91c7e11ab (patch)
treed539c852a72adce490ecd471a7d78b5f231b8b55
parentcaace30081bdd0843f77fa57e336a42e40978b49 (diff)
downloadgcc-1ababc8bd59bcca3bac8c08d367bf0e91c7e11ab.zip
gcc-1ababc8bd59bcca3bac8c08d367bf0e91c7e11ab.tar.gz
gcc-1ababc8bd59bcca3bac8c08d367bf0e91c7e11ab.tar.bz2
Improve docs for Library Fundamentals TS
* doc/doxygen/doxygroups.cc: Move description of experimental group here. * include/experimental/algorithm: Add to libfund-ts doc group. * include/experimental/any: Likewise. Do not document implementation details. * include/experimental/array: Add to libfund-ts doc group. * include/experimental/bits/lfts_config.h: Define libfund-ts doc group for Library Fundamentals. * include/experimental/chrono: Add to libfund-ts doc group. * include/experimental/deque: Likewise. * include/experimental/forward_list: Likewise. * include/experimental/functional: Likewise. * include/experimental/iterator: Likewise. * include/experimental/list: Likewise. * include/experimental/map: Likewise. * include/experimental/memory: Likewise. * include/experimental/memory_resource: Likewise. Improve docs. details. * include/experimental/numeric: Add to libfund-ts doc group. * include/experimental/optional: Likewise. * include/experimental/propagate_const: Likewise. * include/experimental/random: Likewise. * include/experimental/ratio: Likewise. * include/experimental/regex: Likewise. * include/experimental/set: Likewise. * include/experimental/source_location: Likewise. * include/experimental/string: Likewise. * include/experimental/string_view: Likewise. * include/experimental/system_error: Likewise. * include/experimental/tuple: Likewise. * include/experimental/type_traits: Likewise. * include/experimental/unordered_map: Likewise. * include/experimental/unordered_set: Likewise. * include/experimental/utility: Likewise. * include/experimental/vector: Likewise. * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error. * testsuite/experimental/array/neg.cc: Adjust dg-error. * testsuite/experimental/propagate_const/assignment/move_neg.cc: Likewise. * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise. * testsuite/experimental/propagate_const/requirements2.cc: Likewise. * testsuite/experimental/propagate_const/requirements3.cc: Likewise. * testsuite/experimental/propagate_const/requirements4.cc: Likewise. * testsuite/experimental/propagate_const/requirements5.cc: Likewise. From-SVN: r270809
-rw-r--r--libstdc++-v3/ChangeLog45
-rw-r--r--libstdc++-v3/doc/doxygen/doxygroups.cc12
-rw-r--r--libstdc++-v3/include/experimental/algorithm1
-rw-r--r--libstdc++-v3/include/experimental/any7
-rw-r--r--libstdc++-v3/include/experimental/array5
-rw-r--r--libstdc++-v3/include/experimental/bits/lfts_config.h11
-rw-r--r--libstdc++-v3/include/experimental/chrono1
-rw-r--r--libstdc++-v3/include/experimental/deque1
-rw-r--r--libstdc++-v3/include/experimental/forward_list1
-rw-r--r--libstdc++-v3/include/experimental/functional1
-rw-r--r--libstdc++-v3/include/experimental/iterator1
-rw-r--r--libstdc++-v3/include/experimental/list1
-rw-r--r--libstdc++-v3/include/experimental/map1
-rw-r--r--libstdc++-v3/include/experimental/memory1
-rw-r--r--libstdc++-v3/include/experimental/memory_resource9
-rw-r--r--libstdc++-v3/include/experimental/numeric1
-rw-r--r--libstdc++-v3/include/experimental/optional15
-rw-r--r--libstdc++-v3/include/experimental/propagate_const5
-rw-r--r--libstdc++-v3/include/experimental/random1
-rw-r--r--libstdc++-v3/include/experimental/ratio1
-rw-r--r--libstdc++-v3/include/experimental/regex1
-rw-r--r--libstdc++-v3/include/experimental/set1
-rw-r--r--libstdc++-v3/include/experimental/source_location1
-rw-r--r--libstdc++-v3/include/experimental/string1
-rw-r--r--libstdc++-v3/include/experimental/string_view3
-rw-r--r--libstdc++-v3/include/experimental/system_error1
-rw-r--r--libstdc++-v3/include/experimental/tuple1
-rw-r--r--libstdc++-v3/include/experimental/type_traits1
-rw-r--r--libstdc++-v3/include/experimental/unordered_map1
-rw-r--r--libstdc++-v3/include/experimental/unordered_set1
-rw-r--r--libstdc++-v3/include/experimental/utility1
-rw-r--r--libstdc++-v3/include/experimental/vector1
-rw-r--r--libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc3
-rw-r--r--libstdc++-v3/testsuite/experimental/array/neg.cc2
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc3
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/cons/move_neg.cc6
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc9
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/requirements3.cc4
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/requirements4.cc8
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/requirements5.cc4
40 files changed, 134 insertions, 40 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index b22563d..f5f6e74 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,50 @@
2019-05-02 Jonathan Wakely <jwakely@redhat.com>
+ * doc/doxygen/doxygroups.cc: Move description of experimental group
+ here.
+ * include/experimental/algorithm: Add to libfund-ts doc group.
+ * include/experimental/any: Likewise. Do not document implementation
+ details.
+ * include/experimental/array: Add to libfund-ts doc group.
+ * include/experimental/bits/lfts_config.h: Define libfund-ts doc group
+ for Library Fundamentals.
+ * include/experimental/chrono: Add to libfund-ts doc group.
+ * include/experimental/deque: Likewise.
+ * include/experimental/forward_list: Likewise.
+ * include/experimental/functional: Likewise.
+ * include/experimental/iterator: Likewise.
+ * include/experimental/list: Likewise.
+ * include/experimental/map: Likewise.
+ * include/experimental/memory: Likewise.
+ * include/experimental/memory_resource: Likewise. Improve docs.
+ details.
+ * include/experimental/numeric: Add to libfund-ts doc group.
+ * include/experimental/optional: Likewise.
+ * include/experimental/propagate_const: Likewise.
+ * include/experimental/random: Likewise.
+ * include/experimental/ratio: Likewise.
+ * include/experimental/regex: Likewise.
+ * include/experimental/set: Likewise.
+ * include/experimental/source_location: Likewise.
+ * include/experimental/string: Likewise.
+ * include/experimental/string_view: Likewise.
+ * include/experimental/system_error: Likewise.
+ * include/experimental/tuple: Likewise.
+ * include/experimental/type_traits: Likewise.
+ * include/experimental/unordered_map: Likewise.
+ * include/experimental/unordered_set: Likewise.
+ * include/experimental/utility: Likewise.
+ * include/experimental/vector: Likewise.
+ * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
+ * testsuite/experimental/array/neg.cc: Adjust dg-error.
+ * testsuite/experimental/propagate_const/assignment/move_neg.cc:
+ Likewise.
+ * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
+ * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
+ * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
+ * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
+ * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
+
* include/experimental/bits/fs_dir.h: Fix Doxygen markup.
* include/experimental/bits/fs_fwd.h: Improve docs.
* include/experimental/bits/fs_ops.h: fix Doxygen markup.
diff --git a/libstdc++-v3/doc/doxygen/doxygroups.cc b/libstdc++-v3/doc/doxygen/doxygroups.cc
index 6822eac..630e022 100644
--- a/libstdc++-v3/doc/doxygen/doxygroups.cc
+++ b/libstdc++-v3/doc/doxygen/doxygroups.cc
@@ -160,3 +160,15 @@ summarized in <a href="tables.html">tables</a>. */
* Components for concurrent operations, including threads, mutexes,
* and condition variables.
*/
+
+/**
+ * @defgroup experimental Technical Specifications
+ *
+ * Components specified by various Technical Specifications.
+ *
+ * As indicated by the std::experimental namespace and the header paths,
+ * the contents of these Technical Specifications are experimental and not
+ * part of the C++ standard. As such the interfaces and implementations may
+ * change in the future, and there is <STRONG> no guarantee of compatibility
+ * between different GCC releases </STRONG> for these features.
+ */
diff --git a/libstdc++-v3/include/experimental/algorithm b/libstdc++-v3/include/experimental/algorithm
index de62c73..8ba212c 100644
--- a/libstdc++-v3/include/experimental/algorithm
+++ b/libstdc++-v3/include/experimental/algorithm
@@ -24,6 +24,7 @@
/** @file experimental/algorithm
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_ALGORITHM
diff --git a/libstdc++-v3/include/experimental/any b/libstdc++-v3/include/experimental/any
index ed7a115..a6e0fc6 100644
--- a/libstdc++-v3/include/experimental/any
+++ b/libstdc++-v3/include/experimental/any
@@ -24,6 +24,7 @@
/** @file experimental/any
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_ANY
@@ -49,7 +50,7 @@ inline namespace fundamentals_v1
{
/**
* @defgroup any Type-safe container of any type
- * @ingroup experimental
+ * @ingroup libfund-ts
*
* A type-safe container for single values of value types, as
* described in n3804 "Any Library Proposal (Revision 3)".
@@ -69,6 +70,7 @@ inline namespace fundamentals_v1
virtual const char* what() const noexcept { return "bad any_cast"; }
};
+ /// @cond undocumented
[[gnu::noreturn]] inline void __throw_bad_any_cast()
{
#if __cpp_exceptions
@@ -77,6 +79,7 @@ inline namespace fundamentals_v1
__builtin_abort();
#endif
}
+ /// @endcond
/**
* @brief A type-safe container of any type.
@@ -410,6 +413,7 @@ inline namespace fundamentals_v1
}
// @}
+ /// @cond undocumented
template<typename _Tp>
void* __any_caster(const any* __any)
{
@@ -422,6 +426,7 @@ inline namespace fundamentals_v1
__any->_M_manager(any::_Op_access, __any, &__arg);
return __arg._M_obj;
}
+ /// @endcond
/**
* @brief Access the contained object.
diff --git a/libstdc++-v3/include/experimental/array b/libstdc++-v3/include/experimental/array
index 3fece23..5a35fd4 100644
--- a/libstdc++-v3/include/experimental/array
+++ b/libstdc++-v3/include/experimental/array
@@ -24,6 +24,7 @@
/** @file experimental/array
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_ARRAY
@@ -47,7 +48,7 @@ inline namespace fundamentals_v2
#define __cpp_lib_experimental_make_array 201505
/**
* @defgroup make_array Array creation functions
- * @ingroup experimental
+ * @ingroup libfund-ts
*
* Array creation functions as described in N4529,
* Working Draft, C++ Extensions for Library Fundamentals, Version 2
@@ -78,6 +79,7 @@ template<typename... _Types>
"any of the arguments is a reference_wrapper");
};
+/// Create a std::array from a variable-length list of arguments.
template <typename _Dest = void, typename... _Types>
constexpr
array<typename __make_array_elem<_Dest, _Types...>::type, sizeof...(_Types)>
@@ -93,6 +95,7 @@ template <typename _Tp, size_t _Nm, size_t... _Idx>
return {{__a[_Idx]...}};
}
+/// Create a std::array from an array.
template <typename _Tp, size_t _Nm>
constexpr array<remove_cv_t<_Tp>, _Nm>
to_array(_Tp (&__a)[_Nm])
diff --git a/libstdc++-v3/include/experimental/bits/lfts_config.h b/libstdc++-v3/include/experimental/bits/lfts_config.h
index cf0cd1d..8fc6705 100644
--- a/libstdc++-v3/include/experimental/bits/lfts_config.h
+++ b/libstdc++-v3/include/experimental/bits/lfts_config.h
@@ -30,6 +30,17 @@
#if __cplusplus >= 201402L
#include <bits/c++config.h>
+ /** @defgroup libfund-ts Library Fundamentals TS
+ * @ingroup experimental
+ *
+ * Components defined by the _C++ Extensions for Library Fundamentals_
+ * Technical Specification, versions 1 and 2.
+ *
+ * ISO/IEC TS 19568:2015 C++ Extensions for Library Fundamentals
+ *
+ * ISO/IEC TS 19568:2017 C++ Extensions for Library Fundamentals, Version 2
+ */
+
#if _GLIBCXX_INLINE_VERSION
namespace std _GLIBCXX_VISIBILITY(default)
{
diff --git a/libstdc++-v3/include/experimental/chrono b/libstdc++-v3/include/experimental/chrono
index 90fb39f..0e41321 100644
--- a/libstdc++-v3/include/experimental/chrono
+++ b/libstdc++-v3/include/experimental/chrono
@@ -24,6 +24,7 @@
/** @file experimental/chrono
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/deque b/libstdc++-v3/include/experimental/deque
index 2298674..3a2be39 100644
--- a/libstdc++-v3/include/experimental/deque
+++ b/libstdc++-v3/include/experimental/deque
@@ -24,6 +24,7 @@
/** @file experimental/deque
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_DEQUE
diff --git a/libstdc++-v3/include/experimental/forward_list b/libstdc++-v3/include/experimental/forward_list
index f6ffbf0..3cee24d 100644
--- a/libstdc++-v3/include/experimental/forward_list
+++ b/libstdc++-v3/include/experimental/forward_list
@@ -24,6 +24,7 @@
/** @file experimental/forward_list
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_FORWARD_LIST
diff --git a/libstdc++-v3/include/experimental/functional b/libstdc++-v3/include/experimental/functional
index 90f2652..28a5708 100644
--- a/libstdc++-v3/include/experimental/functional
+++ b/libstdc++-v3/include/experimental/functional
@@ -24,6 +24,7 @@
/** @file experimental/functional
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_FUNCTIONAL
diff --git a/libstdc++-v3/include/experimental/iterator b/libstdc++-v3/include/experimental/iterator
index f2e10b2..ff36795 100644
--- a/libstdc++-v3/include/experimental/iterator
+++ b/libstdc++-v3/include/experimental/iterator
@@ -24,6 +24,7 @@
/** @file experimental/iterator
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/list b/libstdc++-v3/include/experimental/list
index 2b7a331..ae92699 100644
--- a/libstdc++-v3/include/experimental/list
+++ b/libstdc++-v3/include/experimental/list
@@ -24,6 +24,7 @@
/** @file experimental/list
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_LIST
diff --git a/libstdc++-v3/include/experimental/map b/libstdc++-v3/include/experimental/map
index 58bf93a..82bc493 100644
--- a/libstdc++-v3/include/experimental/map
+++ b/libstdc++-v3/include/experimental/map
@@ -24,6 +24,7 @@
/** @file experimental/map
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_MAP
diff --git a/libstdc++-v3/include/experimental/memory b/libstdc++-v3/include/experimental/memory
index b8faeb2..a59394b 100644
--- a/libstdc++-v3/include/experimental/memory
+++ b/libstdc++-v3/include/experimental/memory
@@ -24,6 +24,7 @@
/** @file experimental/memory
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/memory_resource b/libstdc++-v3/include/experimental/memory_resource
index e9fece5..a0b3063 100644
--- a/libstdc++-v3/include/experimental/memory_resource
+++ b/libstdc++-v3/include/experimental/memory_resource
@@ -24,6 +24,7 @@
/** @file experimental/memory_resource
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_MEMORY_RESOURCE
@@ -37,12 +38,14 @@
#include <ext/new_allocator.h>
#include <debug/assertions.h>
+/// @cond
namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp> class malloc_allocator;
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace __gnu_cxx
+/// @endcond
namespace std {
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -259,6 +262,7 @@ namespace pmr {
{ return !(__a == __b); }
+ /// @cond undocumented
class __resource_adaptor_common
{
template<typename, typename> friend class __resource_adaptor_imp;
@@ -372,6 +376,7 @@ namespace pmr {
: std::alignment_of<std::max_align_t>::type { };
#endif
};
+ /// @endcond
// 8.7.1 __resource_adaptor_imp
template<typename _Alloc, typename _Resource>
@@ -501,6 +506,7 @@ namespace pmr {
// The default memory resource
+ /// @cond undocumented
inline std::atomic<memory_resource*>&
__get_default_resource()
{
@@ -509,11 +515,14 @@ namespace pmr {
static type* __r = new(__buf) type(new_delete_resource());
return *__r;
}
+ /// @endcond
+ /// Get the current default resource.
inline memory_resource*
get_default_resource() noexcept
{ return __get_default_resource().load(); }
+ /// Change the default resource and return the previous one.
inline memory_resource*
set_default_resource(memory_resource* __r) noexcept
{
diff --git a/libstdc++-v3/include/experimental/numeric b/libstdc++-v3/include/experimental/numeric
index e5123a9..aa5ba7f 100644
--- a/libstdc++-v3/include/experimental/numeric
+++ b/libstdc++-v3/include/experimental/numeric
@@ -24,6 +24,7 @@
/** @file experimental/numeric
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/optional b/libstdc++-v3/include/experimental/optional
index f465eca..9a0112d 100644
--- a/libstdc++-v3/include/experimental/optional
+++ b/libstdc++-v3/include/experimental/optional
@@ -24,23 +24,12 @@
/** @file experimental/optional
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_OPTIONAL
#define _GLIBCXX_EXPERIMENTAL_OPTIONAL 1
-/**
- * @defgroup experimental Experimental
- *
- * Components specified by various Technical Specifications.
- *
- * As indicated by the std::experimental namespace and the header paths,
- * the contents of these Technical Specifications are experimental and not
- * part of the C++ standard. As such the interfaces and implementations may
- * change in the future, and there is <STRONG> no guarantee of compatibility
- * between different GCC releases </STRONG> for these features.
- */
-
#if __cplusplus >= 201402L
#include <utility>
@@ -63,7 +52,7 @@ inline namespace fundamentals_v1
{
/**
* @defgroup optional Optional values
- * @ingroup experimental
+ * @ingroup libfund-ts
*
* Class template for optional values and surrounding facilities, as
* described in n3793 "A proposal to add a utility class to represent
diff --git a/libstdc++-v3/include/experimental/propagate_const b/libstdc++-v3/include/experimental/propagate_const
index a28bed7..dcdfca4 100644
--- a/libstdc++-v3/include/experimental/propagate_const
+++ b/libstdc++-v3/include/experimental/propagate_const
@@ -24,6 +24,7 @@
/** @file experimental/propagate_const
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_PROPAGATE_CONST
@@ -49,7 +50,7 @@ inline namespace fundamentals_v2
{
/**
* @defgroup propagate_const Const-propagating wrapper
- * @ingroup experimental
+ * @ingroup libfund-ts
*
* A const-propagating wrapper that propagates const to pointer-like members,
* as described in n4388 "A Proposal to Add a Const-Propagating Wrapper
@@ -58,7 +59,7 @@ inline namespace fundamentals_v2
* @{
*/
-/// Const-propagating wrapper.
+ /// Const-propagating wrapper.
template <typename _Tp>
class propagate_const
{
diff --git a/libstdc++-v3/include/experimental/random b/libstdc++-v3/include/experimental/random
index 7176c80..2d4b83d 100644
--- a/libstdc++-v3/include/experimental/random
+++ b/libstdc++-v3/include/experimental/random
@@ -24,6 +24,7 @@
/** @file experimental/random
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_RANDOM
diff --git a/libstdc++-v3/include/experimental/ratio b/libstdc++-v3/include/experimental/ratio
index 6129d1e..3e12af5 100644
--- a/libstdc++-v3/include/experimental/ratio
+++ b/libstdc++-v3/include/experimental/ratio
@@ -24,6 +24,7 @@
/** @file experimental/ratio
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/regex b/libstdc++-v3/include/experimental/regex
index 6d0ee9a..71f0ab9 100644
--- a/libstdc++-v3/include/experimental/regex
+++ b/libstdc++-v3/include/experimental/regex
@@ -24,6 +24,7 @@
/** @file experimental/regex
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_REGEX
diff --git a/libstdc++-v3/include/experimental/set b/libstdc++-v3/include/experimental/set
index 145ca27..e55922e 100644
--- a/libstdc++-v3/include/experimental/set
+++ b/libstdc++-v3/include/experimental/set
@@ -24,6 +24,7 @@
/** @file experimental/set
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_SET
diff --git a/libstdc++-v3/include/experimental/source_location b/libstdc++-v3/include/experimental/source_location
index 9fa3c4b..801a1c9 100644
--- a/libstdc++-v3/include/experimental/source_location
+++ b/libstdc++-v3/include/experimental/source_location
@@ -24,6 +24,7 @@
/** @file experimental/source_location
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_SRCLOC
diff --git a/libstdc++-v3/include/experimental/string b/libstdc++-v3/include/experimental/string
index 65bf2b8..838af85 100644
--- a/libstdc++-v3/include/experimental/string
+++ b/libstdc++-v3/include/experimental/string
@@ -24,6 +24,7 @@
/** @file experimental/string
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_STRING
diff --git a/libstdc++-v3/include/experimental/string_view b/libstdc++-v3/include/experimental/string_view
index 9e810de..9449869 100644
--- a/libstdc++-v3/include/experimental/string_view
+++ b/libstdc++-v3/include/experimental/string_view
@@ -24,6 +24,7 @@
/** @file experimental/string_view
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
@@ -57,7 +58,7 @@ inline namespace fundamentals_v1
*
* @ingroup strings
* @ingroup sequences
- * @ingroup experimental
+ * @ingroup libfund-ts
*
* @tparam _CharT Type of character
* @tparam _Traits Traits for character type, defaults to
diff --git a/libstdc++-v3/include/experimental/system_error b/libstdc++-v3/include/experimental/system_error
index 73640a4..ac91c9a 100644
--- a/libstdc++-v3/include/experimental/system_error
+++ b/libstdc++-v3/include/experimental/system_error
@@ -24,6 +24,7 @@
/** @file experimental/system_error
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/tuple b/libstdc++-v3/include/experimental/tuple
index be42b58..8a56fbc 100644
--- a/libstdc++-v3/include/experimental/tuple
+++ b/libstdc++-v3/include/experimental/tuple
@@ -24,6 +24,7 @@
/** @file experimental/tuple
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_TUPLE
diff --git a/libstdc++-v3/include/experimental/type_traits b/libstdc++-v3/include/experimental/type_traits
index ab1ba92..09743c5 100644
--- a/libstdc++-v3/include/experimental/type_traits
+++ b/libstdc++-v3/include/experimental/type_traits
@@ -24,6 +24,7 @@
/** @file experimental/type_traits
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
//
diff --git a/libstdc++-v3/include/experimental/unordered_map b/libstdc++-v3/include/experimental/unordered_map
index 74a360c..7807959 100644
--- a/libstdc++-v3/include/experimental/unordered_map
+++ b/libstdc++-v3/include/experimental/unordered_map
@@ -24,6 +24,7 @@
/** @file experimental/unordered_map
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_UNORDERED_MAP
diff --git a/libstdc++-v3/include/experimental/unordered_set b/libstdc++-v3/include/experimental/unordered_set
index a84cf6a..53e6d24 100644
--- a/libstdc++-v3/include/experimental/unordered_set
+++ b/libstdc++-v3/include/experimental/unordered_set
@@ -24,6 +24,7 @@
/** @file experimental/unordered_set
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_UNORDERED_SET
diff --git a/libstdc++-v3/include/experimental/utility b/libstdc++-v3/include/experimental/utility
index fff7bdb..635bffa 100644
--- a/libstdc++-v3/include/experimental/utility
+++ b/libstdc++-v3/include/experimental/utility
@@ -24,6 +24,7 @@
/** @file experimental/utility
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_UTILITY
diff --git a/libstdc++-v3/include/experimental/vector b/libstdc++-v3/include/experimental/vector
index 965b903..df107d5 100644
--- a/libstdc++-v3/include/experimental/vector
+++ b/libstdc++-v3/include/experimental/vector
@@ -24,6 +24,7 @@
/** @file experimental/vector
* This is a TS C++ Library header.
+ * @ingroup libfund-ts
*/
#ifndef _GLIBCXX_EXPERIMENTAL_VECTOR
diff --git a/libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc b/libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc
index 145e0be..8498c74 100644
--- a/libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc
+++ b/libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc
@@ -25,5 +25,6 @@ void test01()
using std::experimental::any_cast;
const any y(1);
- any_cast<int&>(y); // { dg-error "qualifiers" "" { target { *-*-* } } 357 }
+ any_cast<int&>(y); // { dg-error "here" }
+ // { dg-error "discards qualifiers" "" { target { *-*-* } } 0 }
}
diff --git a/libstdc++-v3/testsuite/experimental/array/neg.cc b/libstdc++-v3/testsuite/experimental/array/neg.cc
index 75190d7..a602dc8 100644
--- a/libstdc++-v3/testsuite/experimental/array/neg.cc
+++ b/libstdc++-v3/testsuite/experimental/array/neg.cc
@@ -24,5 +24,5 @@ int main()
{
int dummy;
auto bad = std::experimental::make_array(std::ref(dummy));
- // { dg-error "explicit target type" "" { target *-*-* } 76 }
+ // { dg-error "explicit target type" "" { target *-*-* } 0 }
}
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc b/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc
index 3deef6b..84e8baa 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc
@@ -25,8 +25,6 @@
using std::experimental::propagate_const;
using std::unique_ptr;
-// { dg-error "no type" "" { target *-*-* } 160 }
-
int main()
{
propagate_const<unique_ptr<const int>> test5;
@@ -35,3 +33,4 @@ int main()
propagate_const<unique_ptr<const int>> test6;
test6 = dummy2; // { dg-error "no match" }
}
+// { dg-prune-output "no type" }
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/cons/move_neg.cc b/libstdc++-v3/testsuite/experimental/propagate_const/cons/move_neg.cc
index e384fe9..d4bd4dd 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/cons/move_neg.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/cons/move_neg.cc
@@ -25,11 +25,6 @@
using std::experimental::propagate_const;
using std::unique_ptr;
-// { dg-error "no type" "" { target *-*-* } 118 }
-// { dg-error "no type" "" { target *-*-* } 125 }
-// { dg-error "no type" "" { target *-*-* } 134 }
-// { dg-error "no type" "" { target *-*-* } 143 }
-
int main()
{
const int dummy{42};
@@ -39,3 +34,4 @@ int main()
propagate_const<unique_ptr<const int>> test4 = &dummy; // { dg-error "conversion" }
propagate_const<unique_ptr<const int>> test5 = std::move(test1); // { dg-error "conversion" }
}
+// { dg-prune-output "no type" }
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc b/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc
index 29b63ea..11d6bfd 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc
@@ -21,9 +21,8 @@
using std::experimental::propagate_const;
-// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 107 }
-// { dg-error "not a pointer-to-object type" "" { target *-*-* } 66 }
-// { dg-error "forming pointer to reference type" "" { target *-*-* } 187 }
-// { dg-error "forming pointer to reference type" "" { target *-*-* } 213 }
-
propagate_const<void*> test1;
+
+// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 0 }
+// { dg-prune-output "forming pointer to reference type" }
+// { dg-prune-output "not a pointer-to-object type" }
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/requirements3.cc b/libstdc++-v3/testsuite/experimental/propagate_const/requirements3.cc
index 59d5f07..88753bf 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/requirements3.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/requirements3.cc
@@ -21,6 +21,6 @@
using std::experimental::propagate_const;
-// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 107 }
-
propagate_const<void (*)()> test1;
+
+// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 0 }
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/requirements4.cc b/libstdc++-v3/testsuite/experimental/propagate_const/requirements4.cc
index a55999f..8477025 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/requirements4.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/requirements4.cc
@@ -21,8 +21,8 @@
using std::experimental::propagate_const;
-// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 107 }
-// { dg-error "invalid type" "" { target *-*-* } 66 }
-// { dg-error "uninitialized reference member" "" { target *-*-* } 112 }
-
propagate_const<int&> test1; // { dg-error "use of deleted function" }
+
+// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 0 }
+// { dg-prune-output "invalid type" }
+// { dg-prune-output "uninitialized reference member" }
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/requirements5.cc b/libstdc++-v3/testsuite/experimental/propagate_const/requirements5.cc
index 60b3373..85a7c7b 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/requirements5.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/requirements5.cc
@@ -21,6 +21,6 @@
using std::experimental::propagate_const;
-// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 107 }
-
propagate_const<int[1]> test1;
+
+// { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 0 }