From patchwork Sat Dec 10 15:35:44 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Kosnik X-Patchwork-Id: 130532 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id D0C981007D9 for ; Sun, 11 Dec 2011 02:36:39 +1100 (EST) Received: (qmail 17732 invoked by alias); 10 Dec 2011 15:36:31 -0000 Received: (qmail 15414 invoked by uid 22791); 10 Dec 2011 15:36:20 -0000 X-SWARE-Spam-Status: No, hits=-7.1 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 10 Dec 2011 15:35:48 +0000 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pBAFZl7t001108 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 10 Dec 2011 10:35:47 -0500 Received: from shotwell (ovpn-113-139.phx2.redhat.com [10.3.113.139]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id pBAFZi6w006831 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Sat, 10 Dec 2011 10:35:45 -0500 Date: Sat, 10 Dec 2011 07:35:44 -0800 From: Benjamin Kosnik To: libstdc++@gcc.gnu.org, gcc-patches@gcc.gnu.org Subject: [v3] doxygen warnings Message-ID: <20111210073544.522650a6@shotwell> Mime-Version: 1.0 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org This patch just removes/restructures some of the doxygen markup to avoid warnings when generating the documentation. Most of the libstdc++ headers are pretty doxygen clean now. tested x86/linux -benjamin 2011-12-10 Benjamin Kosnik * doc/doxygen/user.cfg.in: Add macros, directories. * include/bits/locale_classes.h: Remove doxygen warnings, fix markup. * include/bits/locale_classes.tcc: Same. * include/bits/shared_ptr.h: Same. * include/bits/stl_algo.h: Same. * include/bits/stl_list.h: Same. * include/bits/stl_numeric.h: Same. * include/debug/safe_base.h: Same. * include/parallel/equally_split.h: Same. * include/std/bitset: Same. * include/std/complex: Same. * include/std/fstream: Same. * include/std/istream: Same. * include/std/ostream: Same. * include/tr2/dynamic_bitset: Same. * scripts/run_doxygen: Remove munging for names that no longer exist. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust line numbers. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same. diff --git a/libstdc++-v3/doc/doxygen/user.cfg.in b/libstdc++-v3/doc/doxygen/user.cfg.in index 9178b0c..adb8c7f 100644 --- a/libstdc++-v3/doc/doxygen/user.cfg.in +++ b/libstdc++-v3/doc/doxygen/user.cfg.in @@ -746,6 +746,7 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ include/tr1/ctime \ include/tr1/cwchar \ include/tr1/cwctype \ + include/tr2/ \ include/tr2/bool_set \ include/tr2/dynamic_bitset \ include/tr2/ratio \ @@ -1647,9 +1648,10 @@ PREDEFINED = __cplusplus \ _GLIBCXX_USE_C99_STDINT_TR1 \ _GLIBCXX_USE_SCHED_YIELD \ _GLIBCXX_USE_NANOSLEEP \ - PB_DS_DATA_TRUE_INDICATOR \ __EXCEPTIONS \ __GXX_RTTI \ + ATOMIC_INT_LOCK_FREE \ + PB_DS_DATA_TRUE_INDICATOR \ __glibcxx_function_requires=// \ __glibcxx_class_requires=// \ __glibcxx_class_requires2=// \ diff --git a/libstdc++-v3/include/bits/locale_classes.h b/libstdc++-v3/include/bits/locale_classes.h index 88bbf69..4beca40 100644 --- a/libstdc++-v3/include/bits/locale_classes.h +++ b/libstdc++-v3/include/bits/locale_classes.h @@ -571,39 +571,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION /** - * @brief Test for the presence of a facet. - * - * has_facet tests the locale argument for the presence of the facet type - * provided as the template parameter. Facets derived from the facet - * parameter will also return true. - * - * @tparam _Facet The facet type to test the presence of. - * @param __loc The locale to test. - * @return true if __loc contains a facet of type _Facet, else false. - */ - template - bool - has_facet(const locale& __loc) throw(); - - /** - * @brief Return a facet. - * - * use_facet looks for and returns a reference to a facet of type Facet - * where Facet is the template parameter. If has_facet(locale) is true, - * there is a suitable facet to return. It throws std::bad_cast if the - * locale doesn't contain a facet of type Facet. - * - * @tparam _Facet The facet type to access. - * @param __loc The locale to use. - * @return Reference to facet of type Facet. - * @throw std::bad_cast if __loc doesn't contain a facet of type _Facet. - */ - template - const _Facet& - use_facet(const locale& __loc); - - - /** * @brief Facet for localized string comparison. * * This facet encapsulates the code to compare strings in a localized diff --git a/libstdc++-v3/include/bits/locale_classes.tcc b/libstdc++-v3/include/bits/locale_classes.tcc index 5b2901a..c796e0e 100644 --- a/libstdc++-v3/include/bits/locale_classes.tcc +++ b/libstdc++-v3/include/bits/locale_classes.tcc @@ -87,7 +87,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION __s2.data(), __s2.data() + __s2.length()) < 0); } - + /** + * @brief Test for the presence of a facet. + * + * has_facet tests the locale argument for the presence of the facet type + * provided as the template parameter. Facets derived from the facet + * parameter will also return true. + * + * @tparam _Facet The facet type to test the presence of. + * @param __loc The locale to test. + * @return true if @p __loc contains a facet of type _Facet, else false. + */ template bool has_facet(const locale& __loc) throw() @@ -102,6 +112,19 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #endif } + /** + * @brief Return a facet. + * + * use_facet looks for and returns a reference to a facet of type Facet + * where Facet is the template parameter. If has_facet(locale) is true, + * there is a suitable facet to return. It throws std::bad_cast if the + * locale doesn't contain a facet of type Facet. + * + * @tparam _Facet The facet type to access. + * @param __loc The locale to use. + * @return Reference to facet of type Facet. + * @throw std::bad_cast if @p __loc doesn't contain a facet of type _Facet. + */ template const _Facet& use_facet(const locale& __loc) diff --git a/libstdc++-v3/include/bits/shared_ptr.h b/libstdc++-v3/include/bits/shared_ptr.h index 33128dd..070d2d1 100644 --- a/libstdc++-v3/include/bits/shared_ptr.h +++ b/libstdc++-v3/include/bits/shared_ptr.h @@ -100,6 +100,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION constexpr shared_ptr() noexcept : __shared_ptr<_Tp>() { } + shared_ptr(const shared_ptr&) noexcept = default; + /** * @brief Construct a %shared_ptr that owns the pointer @a __p. * @param __p A pointer that is convertible to element_type*. @@ -211,7 +213,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __r A %shared_ptr. * @post get() == __r.get() && use_count() == __r.use_count() */ - shared_ptr(const shared_ptr&) noexcept = default; template::value>::type> shared_ptr(const shared_ptr<_Tp1>& __r) noexcept @@ -266,6 +267,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION : __shared_ptr<_Tp>(__p) { } shared_ptr& operator=(const shared_ptr&) noexcept = default; + template shared_ptr& operator=(const shared_ptr<_Tp1>& __r) noexcept diff --git a/libstdc++-v3/include/bits/stl_algo.h b/libstdc++-v3/include/bits/stl_algo.h index 10c7e2d..c517a19 100644 --- a/libstdc++-v3/include/bits/stl_algo.h +++ b/libstdc++-v3/include/bits/stl_algo.h @@ -1664,9 +1664,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @return Nothing. * * Rotates the elements of the range @p [__first,__last) by - * @p(__middle - __first) positions so that the element at @p __middle + * @p (__middle - __first) positions so that the element at @p __middle * is moved to @p __first, the element at @p __middle+1 is moved to - * @ __first+1 and so on for each element in the range + * @p __first+1 and so on for each element in the range * @p [__first,__last). * * This effectively swaps the ranges @p [__first,__middle) and @@ -1705,7 +1705,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * range beginning at @result, rotating the copied elements by * @p (__middle-__first) positions so that the element at @p __middle * is moved to @p __result, the element at @p __middle+1 is moved - * to @__result+1 and so on for each element in the range @p + * to @p __result+1 and so on for each element in the range @p * [__first,__last). * * Performs @@ -1947,9 +1947,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * to the range beginning at @p __result_first, where the number of * elements to be copied, @p N, is the smaller of @p (__last-__first) and * @p (__result_last-__result_first). - * After the sort if @p i and @j are iterators in the range - * @p [__result_first,__result_first+N) such that @i precedes @j then - * @p *j<*i is false. + * After the sort if @e i and @e j are iterators in the range + * @p [__result_first,__result_first+N) such that i precedes j then + * *j<*i is false. * The value returned is @p __result_first+N. */ template @@ -2013,8 +2013,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * to the range beginning at @p result_first, where the number of * elements to be copied, @p N, is the smaller of @p (__last-__first) and * @p (__result_last-__result_first). - * After the sort if @p i and @j are iterators in the range - * @p [__result_first,__result_first+N) such that @i precedes @j then + * After the sort if @e i and @e j are iterators in the range + * @p [__result_first,__result_first+N) such that i precedes j then * @p __comp(*j,*i) is false. * The value returned is @p __result_first+N. */ @@ -2387,7 +2387,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // lower_bound moved to stl_algobase.h /** - * @brief Finds the first position in which @a val could be inserted + * @brief Finds the first position in which @p __val could be inserted * without changing the ordering. * @ingroup binary_search_algorithms * @param __first An iterator. @@ -2395,8 +2395,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __val The search term. * @param __comp A functor to use for comparisons. * @return An iterator pointing to the first element not less - * than @a __val, or end() if every element is less - * than @a __val. + * than @p __val, or end() if every element is less + * than @p __val. * @ingroup binary_search_algorithms * * The comparison function should have the same effects on ordering as @@ -2439,14 +2439,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Finds the last position in which @a val could be inserted + * @brief Finds the last position in which @p __val could be inserted * without changing the ordering. * @ingroup binary_search_algorithms * @param __first An iterator. * @param __last Another iterator. * @param __val The search term. - * @return An iterator pointing to the first element greater than @a __val, - * or end() if no elements are greater than @a __val. + * @return An iterator pointing to the first element greater than @p __val, + * or end() if no elements are greater than @p __val. * @ingroup binary_search_algorithms */ template @@ -2484,15 +2484,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Finds the last position in which @a val could be inserted + * @brief Finds the last position in which @p __val could be inserted * without changing the ordering. * @ingroup binary_search_algorithms * @param __first An iterator. * @param __last Another iterator. * @param __val The search term. * @param __comp A functor to use for comparisons. - * @return An iterator pointing to the first element greater than @a __val, - * or end() if no elements are greater than @a __val. + * @return An iterator pointing to the first element greater than @p __val, + * or end() if no elements are greater than @p __val. * @ingroup binary_search_algorithms * * The comparison function should have the same effects on ordering as @@ -2535,7 +2535,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Finds the largest subrange in which @a val could be inserted + * @brief Finds the largest subrange in which @p __val could be inserted * at any place in it without changing the ordering. * @ingroup binary_search_algorithms * @param __first An iterator. @@ -2597,7 +2597,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Finds the largest subrange in which @a val could be inserted + * @brief Finds the largest subrange in which @p __val could be inserted * at any place in it without changing the ordering. * @param __first An iterator. * @param __last Another iterator. @@ -2668,10 +2668,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __first An iterator. * @param __last Another iterator. * @param __val The search term. - * @return True if @a __val (or its equivalent) is in [@a - * __first,@a __last ]. + * @return True if @p __val (or its equivalent) is in [@p + * __first,@p __last ]. * - * Note that this does not actually return an iterator to @a __val. For + * Note that this does not actually return an iterator to @p __val. For * that, use std::find or a container's specialized find member functions. */ template @@ -2699,9 +2699,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __last Another iterator. * @param __val The search term. * @param __comp A functor to use for comparisons. - * @return True if @a val (or its equivalent) is in [@a first,@a last ]. + * @return True if @p __val (or its equivalent) is in @p [__first,__last]. * - * Note that this does not actually return an iterator to @a val. For + * Note that this does not actually return an iterator to @p __val. For * that, use std::find or a container's specialized find member functions. * * The comparison function should have the same effects on ordering as @@ -3523,7 +3523,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * each element in [__first2,__last2) within [__first1,__last1). * The iterators over each range only move forward, so this is a * linear algorithm. If an element in [__first2,__last2) is not - * found before the search iterator reaches @a __last2, false is + * found before the search iterator reaches @p __last2, false is * returned. */ template @@ -3574,7 +3574,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * using comp to decide. The iterators over each range only move * forward, so this is a linear algorithm. If an element in * [__first2,__last2) is not found before the search iterator - * reaches @a __last2, false is returned. + * reaches @p __last2, false is returned. */ template @@ -3620,13 +3620,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // max_element /** - * @brief Permute range into the next @a dictionary ordering. + * @brief Permute range into the next @e dictionary ordering. * @ingroup sorting_algorithms * @param __first Start of range. * @param __last End of range. * @return False if wrapped to first permutation, true otherwise. * - * Treats all permutations of the range as a set of @a dictionary sorted + * Treats all permutations of the range as a set of @e dictionary sorted * sequences. Permutes the current sequence into the next one of this set. * Returns true if there are more sequences to generate. If the sequence * is the largest of the set, the smallest is generated and false returned. @@ -3674,7 +3674,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Permute range into the next @a dictionary ordering using + * @brief Permute range into the next @e dictionary ordering using * comparison functor. * @ingroup sorting_algorithms * @param __first Start of range. @@ -3683,7 +3683,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @return False if wrapped to first permutation, true otherwise. * * Treats all permutations of the range [__first,__last) as a set of - * @a dictionary sorted sequences ordered by @a comp. Permutes the current + * @e dictionary sorted sequences ordered by @p __comp. Permutes the current * sequence into the next one of this set. Returns true if there are more * sequences to generate. If the sequence is the largest of the set, the * smallest is generated and false returned. @@ -3732,13 +3732,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Permute range into the previous @a dictionary ordering. + * @brief Permute range into the previous @e dictionary ordering. * @ingroup sorting_algorithms * @param __first Start of range. * @param __last End of range. * @return False if wrapped to last permutation, true otherwise. * - * Treats all permutations of the range as a set of @a dictionary sorted + * Treats all permutations of the range as a set of @e dictionary sorted * sequences. Permutes the current sequence into the previous one of this * set. Returns true if there are more sequences to generate. If the * sequence is the smallest of the set, the largest is generated and false @@ -3787,7 +3787,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } /** - * @brief Permute range into the previous @a dictionary ordering using + * @brief Permute range into the previous @e dictionary ordering using * comparison functor. * @ingroup sorting_algorithms * @param __first Start of range. @@ -3796,7 +3796,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @return False if wrapped to last permutation, true otherwise. * * Treats all permutations of the range [__first,__last) as a set of - * @a dictionary sorted sequences ordered by @a comp. Permutes the current + * @e dictionary sorted sequences ordered by @p __comp. Permutes the current * sequence into the previous one of this set. Returns true if there are * more sequences to generate. If the sequence is the smallest of the set, * the largest is generated and false returned. @@ -4032,7 +4032,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @ingroup sorting_algorithms * @param __a A thing of arbitrary type. * @param __b Another thing of arbitrary type. - * @param __comp A @link comparison_functor comparison functor @endlink. + * @param __comp A @link comparison_functors comparison functor @endlink. * @return A pair(__b, __a) if __b is smaller than __a, pair(__a, * __b) otherwise. */ @@ -5258,9 +5258,9 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @p [first,last) and moves them to the range @p [__first,__middle). The * order of the remaining elements in the range @p [__middle,__last) is * undefined. - * After the sort if @p i and @j are iterators in the range - * @p [__first,__middle) such that @i precedes @j and @k is an iterator in - * the range @p [__middle,__last) then @p *j<*i and @p *k<*i are both false. + * After the sort if @e i and @e j are iterators in the range + * @p [__first,__middle) such that i precedes j and @e k is an iterator in + * the range @p [__middle,__last) then *j<*i and *k<*i are both false. */ template inline void @@ -5296,8 +5296,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @p [__first,__last) and moves them to the range @p [__first,__middle). The * order of the remaining elements in the range @p [__middle,__last) is * undefined. - * After the sort if @p i and @j are iterators in the range - * @p [__first,__middle) such that @i precedes @j and @k is an iterator in + * After the sort if @e i and @e j are iterators in the range + * @p [__first,__middle) such that i precedes j and @e k is an iterator in * the range @p [__middle,__last) then @p *__comp(j,*i) and @p __comp(*k,*i) * are both false. */ @@ -5333,11 +5333,10 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * * Rearranges the elements in the range @p [__first,__last) so that @p *__nth * is the same element that would have been in that position had the - * whole sequence been sorted. * whole sequence been sorted. The elements either side of @p *__nth are - * not completely sorted, but for any iterator @i in the range - * @p [__first,__nth) and any iterator @j in the range @p [__nth,__last) it - * holds that @p *j<*i is false. + * not completely sorted, but for any iterator @e i in the range + * @p [__first,__nth) and any iterator @e j in the range @p [__nth,__last) it + * holds that *j < *i is false. */ template inline void @@ -5374,8 +5373,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * Rearranges the elements in the range @p [__first,__last) so that @p *__nth * is the same element that would have been in that position had the * whole sequence been sorted. The elements either side of @p *__nth are - * not completely sorted, but for any iterator @i in the range - * @p [__first,__nth) and any iterator @j in the range @p [__nth,__last) it + * not completely sorted, but for any iterator @e i in the range + * @p [__first,__nth) and any iterator @e j in the range @p [__nth,__last) it * holds that @p __comp(*j,*i) is false. */ template @@ -5410,8 +5409,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @return Nothing. * * Sorts the elements in the range @p [__first,__last) in ascending order, - * such that @p *(i+1)<*i is false for each iterator @p i in the range - * @p [__first,__last-1). + * such that for each iterator @e i in the range @p [__first,__last-1), + * *(i+1)<*i is false. * * The relative ordering of equivalent elements is not preserved, use * @p stable_sort() if this is needed. @@ -5446,7 +5445,7 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @return Nothing. * * Sorts the elements in the range @p [__first,__last) in ascending order, - * such that @p __comp(*(i+1),*i) is false for every iterator @p i in the + * such that @p __comp(*(i+1),*i) is false for every iterator @e i in the * range @p [__first,__last-1). * * The relative ordering of equivalent elements is not preserved, use @@ -5484,10 +5483,10 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @param __last2 Another iterator. * @param __result An iterator pointing to the end of the merged range. * @return An iterator pointing to the first element not less - * than @a val. + * than @e val. * - * Merges the ranges [__first1,__last1) and [__first2,__last2) into - * the sorted range [__result, __result + (__last1-__first1) + + * Merges the ranges @p [__first1,__last1) and @p [__first2,__last2) into + * the sorted range @p [__result, __result + (__last1-__first1) + * (__last2-__first2)). Both input ranges must be sorted, and the * output range must not overlap with either of the input ranges. * The sort is @e stable, that is, for equivalent elements in the @@ -5545,10 +5544,10 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @param __result An iterator pointing to the end of the merged range. * @param __comp A functor to use for comparisons. * @return An iterator pointing to the first element "not less - * than" @a val. + * than" @e val. * - * Merges the ranges [__first1,__last1) and [__first2,__last2) into - * the sorted range [__result, __result + (__last1-__first1) + + * Merges the ranges @p [__first1,__last1) and @p [__first2,__last2) into + * the sorted range @p [__result, __result + (__last1-__first1) + * (__last2-__first2)). Both input ranges must be sorted, and the * output range must not overlap with either of the input ranges. * The sort is @e stable, that is, for equivalent elements in the @@ -5610,8 +5609,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @return Nothing. * * Sorts the elements in the range @p [__first,__last) in ascending order, - * such that @p *(i+1)<*i is false for each iterator @p i in the range - * @p [__first,__last-1). + * such that for each iterator @p i in the range @p [__first,__last-1), + * @p *(i+1)<*i is false. * * The relative ordering of equivalent elements is preserved, so any two * elements @p x and @p y in the range @p [__first,__last) such that @@ -5652,8 +5651,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @return Nothing. * * Sorts the elements in the range @p [__first,__last) in ascending order, - * such that @p __comp(*(i+1),*i) is false for each iterator @p i in the - * range @p [__first,__last-1). + * such that for each iterator @p i in the range @p [__first,__last-1), + * @p __comp(*(i+1),*i) is false. * * The relative ordering of equivalent elements is preserved, so any two * elements @p x and @p y in the range @p [__first,__last) such that @@ -5768,8 +5767,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * This operation iterates over both ranges, copying elements present in * each range in order to the output range. Iterators increment for each * range. When the current element of one range is less than the other - * according to @a __comp, that element is copied and the iterator advanced. - * If an equivalent element according to @a __comp is contained in both + * according to @p __comp, that element is copied and the iterator advanced. + * If an equivalent element according to @p __comp is contained in both * ranges, the element from the first range is copied and both ranges * advance. The output range may not overlap either input range. */ @@ -5892,8 +5891,8 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * This operation iterates over both ranges, copying elements present in * both ranges in order to the output range. Iterators increment for each * range. When the current element of one range is less than the other - * according to @a __comp, that iterator advances. If an element is - * contained in both ranges according to @a __comp, the element from the + * according to @p __comp, that iterator advances. If an element is + * contained in both ranges according to @p __comp, the element from the * first range is copied and both ranges advance. The output range may not * overlap either input range. */ @@ -6009,10 +6008,10 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * This operation iterates over both ranges, copying elements present in * the first range but not the second in order to the output range. * Iterators increment for each range. When the current element of the - * first range is less than the second according to @a comp, that element + * first range is less than the second according to @p __comp, that element * is copied and the iterator advances. If the current element of the * second range is less, no element is copied and the iterator advances. - * If an element is contained in both ranges according to @a comp, no + * If an element is contained in both ranges according to @p __comp, no * elements are copied and both ranges advance. The output range may not * overlap either input range. */ @@ -6135,9 +6134,9 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * This operation iterates over both ranges, copying elements present in * one range but not the other in order to the output range. Iterators * increment for each range. When the current element of one range is less - * than the other according to @a comp, that element is copied and the + * than the other according to @p comp, that element is copied and the * iterator advances. If an element is contained in both ranges according - * to @a comp, no elements are copied and both ranges advance. The output + * to @p __comp, no elements are copied and both ranges advance. The output * range may not overlap either input range. */ template _ForwardIterator diff --git a/libstdc++-v3/include/bits/stl_list.h b/libstdc++-v3/include/bits/stl_list.h index fc1d8f8..e422de8 100644 --- a/libstdc++-v3/include/bits/stl_list.h +++ b/libstdc++-v3/include/bits/stl_list.h @@ -1441,9 +1441,10 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER /** * @brief Merge sorted lists according to comparison function. - * @param __x Sorted list to merge. * @tparam _StrictWeakOrdering Comparison function defining * sort order. + * @param __x Sorted list to merge. + * @param __comp Comparison functor. * * Assumes that both @a __x and this list are sorted according to * StrictWeakOrdering. Merges elements of @a __x into this list diff --git a/libstdc++-v3/include/bits/stl_numeric.h b/libstdc++-v3/include/bits/stl_numeric.h index 0ec746f..085fe93 100644 --- a/libstdc++-v3/include/bits/stl_numeric.h +++ b/libstdc++-v3/include/bits/stl_numeric.h @@ -133,7 +133,7 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @brief Accumulate values in a range with operation. * * Accumulates the values in the range [first,last) using the function - * object @a binary_op. The initial value is @a init. The values are + * object @p __binary_op. The initial value is @p __init. The values are * processed in order. * * @param __first Start of range. @@ -159,7 +159,7 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO /** * @brief Compute inner product of two ranges. * - * Starting with an initial value of @a init, multiplies successive + * Starting with an initial value of @p __init, multiplies successive * elements from the two ranges and adds each product into the accumulated * value using operator+(). The values in the ranges are processed in * order. @@ -188,9 +188,9 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO /** * @brief Compute inner product of two ranges. * - * Starting with an initial value of @a init, applies @a binary_op2 to + * Starting with an initial value of @p __init, applies @p __binary_op2 to * successive elements from the two ranges and accumulates each result into - * the accumulated value using @a binary_op1. The values in the ranges are + * the accumulated value using @p __binary_op1. The values in the ranges are * processed in order. * * @param __first1 Start of range 1. @@ -224,14 +224,14 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * * Accumulates the values in the range [first,last) using operator+(). * As each successive input value is added into the total, that partial sum - * is written to @a result. Therefore, the first value in result is the + * is written to @p __result. Therefore, the first value in result is the * first value of the input, the second value in result is the sum of the * first and second input values, and so on. * * @param __first Start of input range. * @param __last End of input range. - * @param __result Output to write sums to. - * @return Iterator pointing just beyond the values written to result. + * @param __result Output sum. + * @return Iterator pointing just beyond the values written to __result. */ template _OutputIterator @@ -263,14 +263,14 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * * Accumulates the values in the range [first,last) using operator+(). * As each successive input value is added into the total, that partial sum - * is written to @a result. Therefore, the first value in result is the + * is written to @p __result. Therefore, the first value in result is the * first value of the input, the second value in result is the sum of the * first and second input values, and so on. * * @param __first Start of input range. * @param __last End of input range. - * @param __result Output to write sums to. - * @return Iterator pointing just beyond the values written to result. + * @param __result Output sum. + * @return Iterator pointing just beyond the values written to __result. */ template @@ -302,11 +302,11 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @brief Return differences between adjacent values. * * Computes the difference between adjacent values in the range - * [first,last) using operator-() and writes the result to @a result. + * [first,last) using operator-() and writes the result to @p __result. * * @param __first Start of input range. * @param __last End of input range. - * @param __result Output to write sums to. + * @param __result Output sums. * @return Iterator pointing just beyond the values written to result. * * _GLIBCXX_RESOLVE_LIB_DEFECTS @@ -342,12 +342,13 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO * @brief Return differences between adjacent values. * * Computes the difference between adjacent values in the range - * [__first,__last) using the function object @a __binary_op and writes the - * result to @a __result. + * [__first,__last) using the function object @p __binary_op and writes the + * result to @p __result. * * @param __first Start of input range. * @param __last End of input range. - * @param __result Output to write sums to. + * @param __result Output sum. + * @param __binary_op Function object. * @return Iterator pointing just beyond the values written to result. * * _GLIBCXX_RESOLVE_LIB_DEFECTS diff --git a/libstdc++-v3/include/debug/safe_base.h b/libstdc++-v3/include/debug/safe_base.h index 1348004..a1aa536 100644 --- a/libstdc++-v3/include/debug/safe_base.h +++ b/libstdc++-v3/include/debug/safe_base.h @@ -79,7 +79,7 @@ namespace __gnu_debug { } /** Initialize the iterator to reference the sequence pointed to - * by @p__seq. @p __constant is true when we are initializing a + * by @p __seq. @p __constant is true when we are initializing a * constant iterator, and false if it is a mutable iterator. Note * that @p __seq may be NULL, in which case the iterator will be * singular. Otherwise, the iterator will reference @p __seq and diff --git a/libstdc++-v3/include/parallel/equally_split.h b/libstdc++-v3/include/parallel/equally_split.h index a840ae3..31a0fca 100644 --- a/libstdc++-v3/include/parallel/equally_split.h +++ b/libstdc++-v3/include/parallel/equally_split.h @@ -68,6 +68,7 @@ namespace __gnu_parallel * thread number __thread_no+1 (excluded). * @param __n Number of elements * @param __num_threads Number of parts + * @param __thread_no Number of threads * @returns splitting point */ template _DifferenceType diff --git a/libstdc++-v3/include/std/bitset b/libstdc++-v3/include/std/bitset index e07c5e0..792a05a 100644 --- a/libstdc++-v3/include/std/bitset +++ b/libstdc++-v3/include/std/bitset @@ -683,7 +683,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER #endif /** - * @brief The %bitset class represents a @e fixed-size sequence of bits. + * The %bitset class represents a @e fixed-size sequence of bits. * * @ingroup containers * @@ -855,7 +855,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER #endif /** - * @brief Use a subset of a string. + * Use a subset of a string. * @param __s A string of @a 0 and @a 1 characters. * @param __position Index of the first character in @a __s to use; * defaults to zero. @@ -878,7 +878,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER } /** - * @brief Use a subset of a string. + * Use a subset of a string. * @param __s A string of @a 0 and @a 1 characters. * @param __position Index of the first character in @a __s to use. * @param __n The number of characters to copy. @@ -914,7 +914,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER #ifdef __GXX_EXPERIMENTAL_CXX0X__ /** - * @brief Construct from a character %array. + * Construct from a character %array. * @param __str An %array of characters @a zero and @a one. * @param __n The number of characters to use. * @param __zero The character corresponding to the value 0. @@ -944,7 +944,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER // 23.3.5.2 bitset operations: //@{ /** - * @brief Operations on bitsets. + * Operations on bitsets. * @param __rhs A same-sized bitset. * * These should be self-explanatory. @@ -973,7 +973,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER //@{ /** - * @brief Operations on bitsets. + * Operations on bitsets. * @param __position The number of places to shift. * * These should be self-explanatory. diff --git a/libstdc++-v3/include/std/complex b/libstdc++-v3/include/std/complex index 1ab016e..c0e3331 100644 --- a/libstdc++-v3/include/std/complex +++ b/libstdc++-v3/include/std/complex @@ -1035,8 +1035,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION : std::pow(complex<_Tp>(__x), __y); } - // 26.2.3 complex specializations - // complex specialization + /// 26.2.3 complex specializations + /// complex specialization template<> struct complex { @@ -1182,8 +1182,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _ComplexT _M_value; }; - // 26.2.3 complex specializations - // complex specialization + /// 26.2.3 complex specializations + /// complex specialization template<> struct complex { @@ -1330,8 +1330,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _ComplexT _M_value; }; - // 26.2.3 complex specializations - // complex specialization + /// 26.2.3 complex specializations + /// complex specialization template<> struct complex { diff --git a/libstdc++-v3/include/std/fstream b/libstdc++-v3/include/std/fstream index 245404e..65de272 100644 --- a/libstdc++-v3/include/std/fstream +++ b/libstdc++-v3/include/std/fstream @@ -620,7 +620,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __mode Open file in specified mode (see std::ios_base). * * @c ios_base::out|ios_base::trunc is automatically included in - * @a __mode. + * @p __mode. * * Tip: When using std::string to hold the filename, you must use * .c_str() before passing it to this constructor. diff --git a/libstdc++-v3/include/std/istream b/libstdc++-v3/include/std/istream index 19bc42b..57b2113 100644 --- a/libstdc++-v3/include/std/istream +++ b/libstdc++-v3/include/std/istream @@ -44,9 +44,8 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION - // [27.6.1.1] Template class basic_istream /** - * @brief Controlling input. + * @brief Template class basic_istream. * @ingroup io * * This is the base class for all input streams. It provides text @@ -58,19 +57,19 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { public: // Types (inherited from basic_ios (27.4.4)): - typedef _CharT char_type; + typedef _CharT char_type; typedef typename _Traits::int_type int_type; typedef typename _Traits::pos_type pos_type; typedef typename _Traits::off_type off_type; - typedef _Traits traits_type; - + typedef _Traits traits_type; + // Non-standard Types: typedef basic_streambuf<_CharT, _Traits> __streambuf_type; typedef basic_ios<_CharT, _Traits> __ios_type; typedef basic_istream<_CharT, _Traits> __istream_type; - typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> > + typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> > __num_get_type; - typedef ctype<_CharT> __ctype_type; + typedef ctype<_CharT> __ctype_type; protected: // Data Members: @@ -81,7 +80,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION streamsize _M_gcount; public: - // [27.6.1.1.1] constructor/destructor /** * @brief Base constructor. * @@ -99,23 +97,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * * This does very little apart from providing a virtual base dtor. */ - virtual - ~basic_istream() + virtual + ~basic_istream() { _M_gcount = streamsize(0); } - // [27.6.1.1.2] prefix/suffix + /// Safe prefix/suffix operations. class sentry; friend class sentry; - // [27.6.1.2] formatted input - // [27.6.1.2.3] basic_istream::operator>> //@{ /** * @brief Interface for manipulators. * * Manipulators such as @c std::ws and @c std::dec use these - * functions in constructs like - * std::cin >> std::ws. + * functions in constructs like + * std::cin >> std::ws. * For more information, see the iomanip header. */ __istream_type& @@ -124,7 +120,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION __istream_type& operator>>(__ios_type& (*__pf)(__ios_type&)) - { + { __pf(*this); return *this; } @@ -136,10 +132,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return *this; } //@} - - // [27.6.1.2.2] arithmetic extractors + + //@{ /** - * @name Arithmetic Extractors + * @name Extractors * * All the @c operator>> functions (aka formatted input * functions) have some common behavior. Each starts by @@ -156,64 +152,84 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * ios_base::failure to be thrown. The original exception will then * be rethrown. */ + //@{ /** - * @brief Basic arithmetic extractors - * @param __n, __f, __p: A variable of builtin type. + * @brief Integer arithmetic extractors + * @param __n A variable of builtin integral type. * @return @c *this if successful * * These functions use the stream's current locale (specifically, the * @c num_get facet) to parse the input data. */ - __istream_type& + __istream_type& operator>>(bool& __n) { return _M_extract(__n); } - - __istream_type& + + __istream_type& operator>>(short& __n); - - __istream_type& + + __istream_type& operator>>(unsigned short& __n) { return _M_extract(__n); } - __istream_type& + __istream_type& operator>>(int& __n); - - __istream_type& + + __istream_type& operator>>(unsigned int& __n) { return _M_extract(__n); } - __istream_type& + __istream_type& operator>>(long& __n) { return _M_extract(__n); } - - __istream_type& + + __istream_type& operator>>(unsigned long& __n) { return _M_extract(__n); } #ifdef _GLIBCXX_USE_LONG_LONG - __istream_type& + __istream_type& operator>>(long long& __n) { return _M_extract(__n); } - __istream_type& + __istream_type& operator>>(unsigned long long& __n) { return _M_extract(__n); } #endif + //@} - __istream_type& + //@{ + /** + * @brief Floating point arithmetic extractors + * @param __f A variable of builtin floating point type. + * @return @c *this if successful + * + * These functions use the stream's current locale (specifically, the + * @c num_get facet) to parse the input data. + */ + __istream_type& operator>>(float& __f) { return _M_extract(__f); } - __istream_type& + __istream_type& operator>>(double& __f) { return _M_extract(__f); } - __istream_type& + __istream_type& operator>>(long double& __f) { return _M_extract(__f); } + //@} - __istream_type& + /** + * @brief Basic arithmetic extractors + * @param __p A variable of pointer type. + * @return @c *this if successful + * + * These functions use the stream's current locale (specifically, the + * @c num_get facet) to parse the input data. + */ + __istream_type& operator>>(void*& __p) { return _M_extract(__p); } @@ -225,10 +241,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * in that it also constructs a sentry object and has the same error * handling behavior. * - * If @a __sb is NULL, the stream will set failbit in its error state. + * If @p __sb is NULL, the stream will set failbit in its error state. * * Characters are extracted from this stream and inserted into the - * @a sb streambuf until one of the following occurs: + * @p __sb streambuf until one of the following occurs: * * - the input stream reaches end-of-file, * - insertion into the output buffer fails (in this case, the @@ -237,20 +253,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * * If the function inserts no characters, failbit is set. */ - __istream_type& + __istream_type& operator>>(__streambuf_type* __sb); //@} - + // [27.6.1.3] unformatted input /** * @brief Character counting * @return The number of characters extracted by the previous * unformatted input function dispatched for this stream. */ - streamsize - gcount() const + streamsize + gcount() const { return _M_gcount; } - + + //@{ /** * @name Unformatted Input Functions * @@ -271,7 +288,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * ios_base::failure to be thrown. The original exception will then * be rethrown. */ - //@{ + /** * @brief Simple extraction. * @return A character, or eof(). @@ -279,7 +296,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * Tries to extract a character. If none are available, sets failbit * and returns traits::eof(). */ - int_type + int_type get(); /** @@ -293,7 +310,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @note This function is not overloaded on signed char and * unsigned char. */ - __istream_type& + __istream_type& get(char_type& __c); /** @@ -320,7 +337,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @note This function is not overloaded on signed char and * unsigned char. */ - __istream_type& + __istream_type& get(char_type* __s, streamsize __n, char_type __delim); /** @@ -331,7 +348,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * * Returns @c get(__s,__n,widen('\\n')). */ - __istream_type& + __istream_type& get(char_type* __s, streamsize __n) { return this->get(__s, __n, this->widen('\n')); } @@ -393,7 +410,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * In any case, a null character is stored in the next location in * the array. */ - __istream_type& + __istream_type& getline(char_type* __s, streamsize __n, char_type __delim); /** @@ -404,7 +421,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * * Returns @c getline(__s,__n,widen('\\n')). */ - __istream_type& + __istream_type& getline(char_type* __s, streamsize __n) { return this->getline(__s, __n, this->widen('\n')); } @@ -428,13 +445,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * better performing implementation, while still conforming to * the Standard. */ - __istream_type& + __istream_type& ignore(streamsize __n, int_type __delim); - __istream_type& + __istream_type& ignore(streamsize __n); - __istream_type& + __istream_type& ignore(); /** @@ -445,9 +462,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * returns @c traits::eof(). Otherwise reads but does not extract * the next input character. */ - int_type + int_type peek(); - + /** * @brief Extraction without delimiters. * @param __s A character array. @@ -463,7 +480,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @note This function is not overloaded on signed char and * unsigned char. */ - __istream_type& + __istream_type& read(char_type* __s, streamsize __n); /** @@ -482,9 +499,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * The goal is to empty the current buffer, and to not request any * more from the external input sequence controlled by the streambuf. */ - streamsize + streamsize readsome(char_type* __s, streamsize __n); - + /** * @brief Unextracting a single character. * @param __c The character to push back into the input stream. @@ -499,7 +516,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * are extracted, the next call to @c gcount() will return 0, * as required by DR 60. */ - __istream_type& + __istream_type& putback(char_type __c); /** @@ -515,7 +532,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * are extracted, the next call to @c gcount() will return 0, * as required by DR 60. */ - __istream_type& + __istream_type& unget(); /** @@ -533,7 +550,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * extracted, if any, and therefore does not affect the next * call to @c gcount(). */ - int + int sync(); /** @@ -579,7 +596,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * number of characters extracted, if any, and therefore does * not affect the next call to @c gcount(). */ - __istream_type& + __istream_type& seekg(off_type, ios_base::seekdir); //@} @@ -589,29 +606,29 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { this->init(0); } template - __istream_type& - _M_extract(_ValueT& __v); + __istream_type& + _M_extract(_ValueT& __v); }; - // Explicit specialization declarations, defined in src/istream.cc. - template<> - basic_istream& + /// Explicit specialization declarations, defined in src/istream.cc. + template<> + basic_istream& basic_istream:: getline(char_type* __s, streamsize __n, char_type __delim); - + template<> basic_istream& basic_istream:: ignore(streamsize __n); - + template<> basic_istream& basic_istream:: ignore(streamsize __n, int_type __delim); #ifdef _GLIBCXX_USE_WCHAR_T - template<> - basic_istream& + template<> + basic_istream& basic_istream:: getline(char_type* __s, streamsize __n, char_type __delim); @@ -619,7 +636,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION basic_istream& basic_istream:: ignore(streamsize __n); - + template<> basic_istream& basic_istream:: @@ -687,7 +704,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return _M_ok; } }; - // [27.6.1.2.3] character extraction templates //@{ /** * @brief Character extractors @@ -762,9 +778,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return (__in >> reinterpret_cast(__s)); } //@} - // 27.6.1.5 Template class basic_iostream /** - * @brief Merging istream and ostream capabilities. + * @brief Template class basic_iostream * @ingroup io * * This class multiply inherits from the input and output stream classes @@ -772,18 +787,18 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION */ template class basic_iostream - : public basic_istream<_CharT, _Traits>, + : public basic_istream<_CharT, _Traits>, public basic_ostream<_CharT, _Traits> { public: // _GLIBCXX_RESOLVE_LIB_DEFECTS // 271. basic_iostream missing typedefs // Types (inherited): - typedef _CharT char_type; + typedef _CharT char_type; typedef typename _Traits::int_type int_type; typedef typename _Traits::pos_type pos_type; typedef typename _Traits::off_type off_type; - typedef _Traits traits_type; + typedef _Traits traits_type; // Non-standard Types: typedef basic_istream<_CharT, _Traits> __istream_type; @@ -802,7 +817,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Destructor does nothing. */ - virtual + virtual ~basic_iostream() { } protected: @@ -810,7 +825,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION : __istream_type(), __ostream_type() { } }; - // [27.6.1.4] standard basic_istream manipulators /** * @brief Quick and easy way to eat whitespace * @@ -832,7 +846,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * std::basic_istream::sentry inside your definition of operator>>. */ template - basic_istream<_CharT, _Traits>& + basic_istream<_CharT, _Traits>& ws(basic_istream<_CharT, _Traits>& __is); #ifdef __GXX_EXPERIMENTAL_CXX0X__ diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream index f1f948f..498a060 100644 --- a/libstdc++-v3/include/std/ostream +++ b/libstdc++-v3/include/std/ostream @@ -44,9 +44,8 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION - // [27.6.2.1] Template class basic_ostream /** - * @brief Controlling output. + * @brief Template class basic_ostream. * @ingroup io * * This is the base class for all output streams. It provides text @@ -57,22 +56,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION class basic_ostream : virtual public basic_ios<_CharT, _Traits> { public: - // Types (inherited from basic_ios (27.4.4)): - typedef _CharT char_type; + // Types (inherited from basic_ios): + typedef _CharT char_type; typedef typename _Traits::int_type int_type; typedef typename _Traits::pos_type pos_type; typedef typename _Traits::off_type off_type; - typedef _Traits traits_type; - + typedef _Traits traits_type; + // Non-standard Types: typedef basic_streambuf<_CharT, _Traits> __streambuf_type; typedef basic_ios<_CharT, _Traits> __ios_type; typedef basic_ostream<_CharT, _Traits> __ostream_type; - typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> > + typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> > __num_put_type; - typedef ctype<_CharT> __ctype_type; + typedef ctype<_CharT> __ctype_type; - // [27.6.2.2] constructor/destructor /** * @brief Base constructor. * @@ -80,7 +78,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * derived classes' initialization lists, which pass a pointer to * their own stream buffer. */ - explicit + explicit basic_ostream(__streambuf_type* __sb) { this->init(__sb); } @@ -89,15 +87,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * * This does very little apart from providing a virtual base dtor. */ - virtual + virtual ~basic_ostream() { } - // [27.6.2.3] prefix/suffix + /// Safe prefix/suffix operations. class sentry; friend class sentry; - - // [27.6.2.5] formatted output - // [27.6.2.5.3] basic_ostream::operator<< + //@{ /** * @brief Interface for manipulators. @@ -136,9 +132,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } //@} - // [27.6.2.5.2] arithmetic inserters + //@{ /** - * @name Arithmetic Inserters + * @name Inserters * * All the @c operator<< functions (aka formatted output * functions) have some common behavior. Each starts by @@ -154,31 +150,32 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * ios_base::failure to be thrown. The original exception will then * be rethrown. */ + //@{ /** - * @brief Basic arithmetic inserters - * @param __n, __f, __p A variable of builtin type. + * @brief Integer arithmetic inserters + * @param __n A variable of builtin integral type. * @return @c *this if successful * * These functions use the stream's current locale (specifically, the * @c num_get facet) to perform numeric formatting. */ - __ostream_type& + __ostream_type& operator<<(long __n) { return _M_insert(__n); } - - __ostream_type& + + __ostream_type& operator<<(unsigned long __n) - { return _M_insert(__n); } + { return _M_insert(__n); } - __ostream_type& + __ostream_type& operator<<(bool __n) { return _M_insert(__n); } - __ostream_type& + __ostream_type& operator<<(short __n); - __ostream_type& + __ostream_type& operator<<(unsigned short __n) { // _GLIBCXX_RESOLVE_LIB_DEFECTS @@ -186,10 +183,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return _M_insert(static_cast(__n)); } - __ostream_type& + __ostream_type& operator<<(int __n); - __ostream_type& + __ostream_type& operator<<(unsigned int __n) { // _GLIBCXX_RESOLVE_LIB_DEFECTS @@ -198,20 +195,30 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } #ifdef _GLIBCXX_USE_LONG_LONG - __ostream_type& + __ostream_type& operator<<(long long __n) { return _M_insert(__n); } - __ostream_type& + __ostream_type& operator<<(unsigned long long __n) - { return _M_insert(__n); } + { return _M_insert(__n); } #endif + //@} - __ostream_type& + //@{ + /** + * @brief Floating point arithmetic inserters + * @param __f A variable of builtin floating point type. + * @return @c *this if successful + * + * These functions use the stream's current locale (specifically, the + * @c num_get facet) to perform numeric formatting. + */ + __ostream_type& operator<<(double __f) { return _M_insert(__f); } - __ostream_type& + __ostream_type& operator<<(float __f) { // _GLIBCXX_RESOLVE_LIB_DEFECTS @@ -219,11 +226,20 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return _M_insert(static_cast(__f)); } - __ostream_type& + __ostream_type& operator<<(long double __f) { return _M_insert(__f); } + //@} - __ostream_type& + /** + * @brief Pointer arithmetic inserters + * @param __p A variable of pointer type. + * @return @c *this if successful + * + * These functions use the stream's current locale (specifically, the + * @c num_get facet) to perform numeric formatting. + */ + __ostream_type& operator<<(const void* __p) { return _M_insert(__p); } @@ -235,24 +251,24 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * in that it also constructs a sentry object and has the same error * handling behavior. * - * If @a __sb is NULL, the stream will set failbit in its error state. + * If @p __sb is NULL, the stream will set failbit in its error state. * - * Characters are extracted from @a __sb and inserted into @c *this + * Characters are extracted from @p __sb and inserted into @c *this * until one of the following occurs: * * - the input stream reaches end-of-file, * - insertion into the output sequence fails (in this case, the * character that would have been inserted is not extracted), or - * - an exception occurs while getting a character from @a __sb, which + * - an exception occurs while getting a character from @p __sb, which * sets failbit in the error state * * If the function inserts no characters, failbit is set. */ - __ostream_type& + __ostream_type& operator<<(__streambuf_type* __sb); //@} - // [27.6.2.6] unformatted output functions + //@{ /** * @name Unformatted Output Functions * @@ -270,21 +286,25 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * the stream's exceptions mask, the exception will be rethrown * without completing its actions. */ - //@{ + /** * @brief Simple insertion. * @param __c The character to insert. * @return *this * - * Tries to insert @a c. + * Tries to insert @p __c. * * @note This function is not overloaded on signed char and * unsigned char. */ - __ostream_type& + __ostream_type& put(char_type __c); - // Core write functionality, without sentry. + /** + * @brief Core write functionality, without sentry. + * @param __s The array to insert. + * @param __n Maximum number of characters to insert. + */ void _M_write(const char_type* __s, streamsize __n) { @@ -299,17 +319,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * @param __n Maximum number of characters to insert. * @return *this * - * Characters are copied from @a __s and inserted into the stream until + * Characters are copied from @p __s and inserted into the stream until * one of the following happens: * - * - @a __n characters are inserted + * - @p __n characters are inserted * - inserting into the output sequence fails (in this case, badbit * will be set in the stream's error state) * * @note This function is not overloaded on signed char and * unsigned char. */ - __ostream_type& + __ostream_type& write(const char_type* __s, streamsize __n); //@} @@ -322,10 +342,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * Otherwise, calls @c rdbuf()->pubsync(), and if that returns -1, * sets badbit. */ - __ostream_type& + __ostream_type& flush(); - // [27.6.2.4] seek members /** * @brief Getting the current write position. * @return A file position object. @@ -333,7 +352,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * If @c fail() is not false, returns @c pos_type(-1) to indicate * failure. Otherwise returns @c rdbuf()->pubseekoff(0,cur,out). */ - pos_type + pos_type tellp(); /** @@ -344,7 +363,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * If @c fail() is not true, calls @c rdbuf()->pubseekpos(pos). If * that function fails, sets failbit. */ - __ostream_type& + __ostream_type& seekp(pos_type); /** @@ -356,16 +375,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * If @c fail() is not true, calls @c rdbuf()->pubseekoff(off,dir). * If that function fails, sets failbit. */ - __ostream_type& + __ostream_type& seekp(off_type, ios_base::seekdir); - + protected: basic_ostream() { this->init(0); } template - __ostream_type& - _M_insert(_ValueT __v); + __ostream_type& + _M_insert(_ValueT __v); }; /** @@ -381,7 +400,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // Data Members. bool _M_ok; basic_ostream<_CharT, _Traits>& _M_os; - + public: /** * @brief The constructor performs preparatory work. @@ -429,7 +448,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return _M_ok; } }; - // [27.6.2.5.4] character insertion templates //@{ /** * @brief Character inserters @@ -443,7 +461,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * padding (as determined by [22.2.2.2.2]). @c __out.width(0) is then * called. * - * If @a __c is of type @c char and the character type of the stream is not + * If @p __c is of type @c char and the character type of the stream is not * @c char, the character is widened before insertion. */ template @@ -457,7 +475,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return (__out << __out.widen(__c)); } // Specialization - template + template inline basic_ostream& operator<<(basic_ostream& __out, char __c) { return __ostream_insert(__out, &__c, 1); } @@ -467,25 +485,25 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION inline basic_ostream& operator<<(basic_ostream& __out, signed char __c) { return (__out << static_cast(__c)); } - + template inline basic_ostream& operator<<(basic_ostream& __out, unsigned char __c) { return (__out << static_cast(__c)); } //@} - + //@{ /** * @brief String inserters * @param __out An output stream. * @param __s A character string. * @return out - * @pre @a s must be a non-NULL pointer + * @pre @p __s must be a non-NULL pointer * * Behaves like one of the formatted arithmetic inserters described in * std::basic_ostream. After constructing a sentry object with good * status, this function inserts @c traits::length(__s) characters starting - * at @a __s, widened if necessary, followed by any required padding (as + * at @p __s, widened if necessary, followed by any required padding (as * determined by [22.2.2.2.2]). @c __out.width(0) is then called. */ template @@ -529,7 +547,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return (__out << reinterpret_cast(__s)); } //@} - // [27.6.2.7] standard basic_ostream manipulators + // Standard basic_ostream manipulators + /** * @brief Write a newline and flush the stream. * @@ -539,33 +558,33 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION * for more on this subject. */ template - inline basic_ostream<_CharT, _Traits>& + inline basic_ostream<_CharT, _Traits>& endl(basic_ostream<_CharT, _Traits>& __os) { return flush(__os.put(__os.widen('\n'))); } /** * @brief Write a null character into the output sequence. * - * Null character is @c CharT() by definition. For CharT of @c char, - * this correctly writes the ASCII @c NUL character string terminator. + * Null character is @c CharT() by definition. For CharT + * of @c char, this correctly writes the ASCII @c NUL character + * string terminator. */ template - inline basic_ostream<_CharT, _Traits>& + inline basic_ostream<_CharT, _Traits>& ends(basic_ostream<_CharT, _Traits>& __os) { return __os.put(_CharT()); } - + /** * @brief Flushes the output stream. * * This manipulator simply calls the stream's @c flush() member function. */ template - inline basic_ostream<_CharT, _Traits>& + inline basic_ostream<_CharT, _Traits>& flush(basic_ostream<_CharT, _Traits>& __os) { return __os.flush(); } #ifdef __GXX_EXPERIMENTAL_CXX0X__ - // [27.7.2.9] Rvalue stream insertion /** * @brief Generic inserter for rvalue stream * @param __os An input stream. @@ -583,7 +602,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #endif // __GXX_EXPERIMENTAL_CXX0X__ _GLIBCXX_END_NAMESPACE_VERSION -} // namespace +} // namespace std #include diff --git a/libstdc++-v3/include/tr2/dynamic_bitset b/libstdc++-v3/include/tr2/dynamic_bitset index b5c3bf3..4c06b84 100644 --- a/libstdc++-v3/include/tr2/dynamic_bitset +++ b/libstdc++-v3/include/tr2/dynamic_bitset @@ -738,10 +738,10 @@ public: /** * @brief Use a subset of a string. - * @param str A string of '0' and '1' characters. - * @param pos Index of the first character in @a s to use. - * @param n The number of characters to copy. - * @throw std::out_of_range If @a pos is bigger the size of @a s. + * @param __str A string of '0' and '1' characters. + * @param __pos Index of the first character in @p __str to use. + * @param __n The number of characters to copy. + * @throw std::out_of_range If @p __pos is bigger the size of @p __str. * @throw std::invalid_argument If a character appears in the string * which is neither '0' nor '1'. */ @@ -770,7 +770,7 @@ public: /** * @brief Construct from a string. - * @param str A string of '0' and '1' characters. + * @param __str A string of '0' and '1' characters. * @throw std::invalid_argument If a character appears in the string * which is neither '0' nor '1'. */ @@ -907,7 +907,7 @@ public: //@{ /** * @brief Operations on dynamic_bitsets. - * @param rhs A same-sized dynamic_bitset. + * @param __rhs A same-sized dynamic_bitset. * * These should be self-explanatory. */ @@ -950,7 +950,7 @@ public: //@{ /** * @brief Operations on dynamic_bitsets. - * @param position The number of places to shift. + * @param __pos The number of places to shift. * * These should be self-explanatory. */ @@ -995,9 +995,9 @@ public: /** * @brief Sets a given bit to a particular value. - * @param position The index of the bit. - * @param val Either true or false, defaults to true. - * @throw std::out_of_range If @a pos is bigger the size of the %set. + * @param __pos The index of the bit. + * @param __val Either true or false, defaults to true. + * @throw std::out_of_range If @a __pos is bigger the size of the %set. */ dynamic_bitset<_WordT, _Alloc>& set(size_type __pos, bool __val = true) @@ -1019,10 +1019,10 @@ public: /** * @brief Sets a given bit to false. - * @param position The index of the bit. - * @throw std::out_of_range If @a pos is bigger the size of the %set. + * @param __pos The index of the bit. + * @throw std::out_of_range If @a __pos is bigger the size of the %set. * - * Same as writing @c set(pos,false). + * Same as writing @c set(__pos, false). */ dynamic_bitset<_WordT, _Alloc>& reset(size_type __pos) @@ -1045,8 +1045,8 @@ public: /** * @brief Toggles a given bit to its opposite value. - * @param position The index of the bit. - * @throw std::out_of_range If @a pos is bigger the size of the %set. + * @param __pos The index of the bit. + * @throw std::out_of_range If @a __pos is bigger the size of the %set. */ dynamic_bitset<_WordT, _Alloc>& flip(size_type __pos) @@ -1064,7 +1064,7 @@ public: //@{ /** * @brief Array-indexing support. - * @param position Index into the %dynamic_bitset. + * @param __pos Index into the %dynamic_bitset. * @return A bool for a 'const %dynamic_bitset'. For non-const * bitsets, an instance of the reference proxy class. * @note These operators do no range checking and throw no @@ -1167,9 +1167,9 @@ public: /** * @brief Tests the value of a bit. - * @param position The index of a bit. - * @return The value at @a pos. - * @throw std::out_of_range If @a pos is bigger the size of the %set. + * @param __pos The index of a bit. + * @return The value at @a __pos. + * @throw std::out_of_range If @a __pos is bigger the size of the %set. */ bool test(size_type __pos) const @@ -1226,7 +1226,7 @@ public: /** * @brief Finds the index of the next "on" bit after prev. * @return The index of the next bit set, or size() if not found. - * @param prev Where to start searching. + * @param __prev Where to start searching. * @sa find_first */ size_type @@ -1321,8 +1321,8 @@ public: //@{ /** * @brief Global bitwise operations on bitsets. - * @param x A bitset. - * @param y A bitset of the same size as @a x. + * @param __x A bitset. + * @param __y A bitset of the same size as @a __x. * @return A new bitset. * * These should be self-explanatory. diff --git a/libstdc++-v3/scripts/run_doxygen b/libstdc++-v3/scripts/run_doxygen index af2d0fc..45b3f4a 100644 --- a/libstdc++-v3/scripts/run_doxygen +++ b/libstdc++-v3/scripts/run_doxygen @@ -325,14 +325,6 @@ for f in *__profile_*; do newname=`echo $f | sed 's/__profile_/__profile::/'` mv $f $newname done -for f in *__atomic0_*; do - newname=`echo $f | sed 's/__atomic0_/__atomic0::/'` - mv $f $newname -done -for f in *__atomic2_*; do - newname=`echo $f | sed 's/__atomic2_/__atomic2::/'` - mv $f $newname -done # Then, clean up other top-level namespaces. for f in std_tr1_*; do @@ -373,11 +365,6 @@ for f in __cxxabiv1_*; do done # Then piecemeal nested classes -for f in *__future_base_*; do - newname=`echo $f | sed 's/__future_base_/__future_base::/'` - mv $f $newname -done - # Generic removal bits, where there are things in the generated man diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc index 6349ea2..42f28db 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/assign_neg.cc @@ -18,7 +18,7 @@ // . // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1551 } +// { dg-error "no matching" "" { target *-*-* } 1552 } #include diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc index 12f28ff..d4a4464 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc @@ -18,7 +18,7 @@ // . // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1507 } +// { dg-error "no matching" "" { target *-*-* } 1508 } #include diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc index 0599334..fb32ee4 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc @@ -18,7 +18,7 @@ // . // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1507 } +// { dg-error "no matching" "" { target *-*-* } 1508 } #include #include diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc index 22acf3a..d34be99 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/dr438/insert_neg.cc @@ -18,7 +18,7 @@ // . // { dg-do compile } -// { dg-error "no matching" "" { target *-*-* } 1507 } +// { dg-error "no matching" "" { target *-*-* } 1508 } #include