diff options
63 files changed, 512 insertions, 563 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c6b52a8..85efeab 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,78 @@ +2008-03-25 Benjamin Kosnik <bkoz@redhat.com> + + * scripts/run_doxygen: Remove html_output_dir. Downgrade to + Doxygen 1.5.1. + * doc/doxygen/style.css: Delete. + * doc/doxygen/user.cfg.in: Regenerate with Doxygen 1.5.1. + (INPUT): Update. + (PREDEFINED): Update. + (HTML_OUTPUT): Remove html_output_dir, use html. + (HTML_STYLESHEET): Remove style.css. + * doc/doxygen/tables.html: Remove style.css use. + * doc/doxygen/mainpage.html: Nested lists for Namespaces and Classes. + * doc/doxygen/doxygroups.cc: Namespace edits. + * doc/doxygen/Intro.3: Correct typo. + + * doc/xml/api.xml: Add gcc-4.3 links. + * doc/html/api.html: Regenerate. + + * include/debug/debug.h: Document namepaces here. + * include/parallel/base.h: Same. + * include/ext/typelist.h: Same. + * include/ext/pb_ds/tag_and_trait.hpp: Same. + + * include/tr1_impl/random: Adjust line break. + * include/tr1_impl/unordered_map: Correct and or add markup. + * include/tr1_impl/boost_shared_ptr.h: Correct and or add markup. + * include/tr1_impl/functional_hash.h: Same. + * include/tr1_impl/cmath: Same. + * include/tr1_impl/functional: Same. + * include/tr1_impl/unordered_set: Same. + * include/tr1_impl/complex: Same. + * include/tr1_impl/type_traits: Same. + * include/tr1_impl/regex: Same. + * include/tr1_impl/array: Same. + * include/std/tuple: Same. + * include/std/date_time: Same. + * include/std/system_error: Same. + * include/std/type_traits: Same. + * include/ext/enc_filebuf.h: Same. + * include/ext/throw_allocator.h: Same. + * include/ext/pool_allocator.h: Same. + * include/ext/bitmap_allocator.h: Same. + * include/ext/concurrence.h: Same. + * include/ext/codecvt_specializations.h: Same. + * include/ext/stdio_sync_filebuf.h: Same. + * include/ext/array_allocator.h: Same. + * include/ext/mt_allocator.h: Same. + * include/bits/locale_classes.h: Same. + * include/bits/locale_facets.h: Same. + * include/bits/codecvt.h: Same. + * include/bits/char_traits.h: Same. + * include/bits/allocator.h: Same. + * include/bits/locale_facets_nonio.h: Same. + * include/tr1/poly_laguerre.tcc: Same. + * include/tr1/riemann_zeta.tcc: Same. + * include/tr1/beta_function.tcc: Same. + * include/tr1/tuple: Same. + * include/tr1/exp_integral.tcc: Same. + * include/tr1/gamma.tcc: Same. + * include/tr1/hypergeometric.tcc: Same. + * include/tr1/modified_bessel_func.tcc: Same. + * include/tr1/legendre_function.tcc: Same. + * include/tr1/type_traits: Same. + * include/tr1/special_function_util.h: Same. + * include/tr1/bessel_function.tcc: Same. + * include/tr1/cmath: Same. + * include/tr1/poly_hermite.tcc: Same. + * include/tr1/ell_integral.tcc: Same. + * config/abi/compatibility.h: Adjust file name. + + * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust + line numbers. + * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same. + * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same. + 2008-03-23 Paolo Carlini <pcarlini@suse.de> * doc/xml/faq.xml: Fix various links. diff --git a/libstdc++-v3/config/abi/compatibility.h b/libstdc++-v3/config/abi/compatibility.h index 7b52850..9975074 100644 --- a/libstdc++-v3/config/abi/compatibility.h +++ b/libstdc++-v3/config/abi/compatibility.h @@ -28,7 +28,7 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. -/** @file compatibility.h +/** @file bits/compatibility.h * This is an internal header file, included by other library sources. * You should not attempt to use it directly. */ diff --git a/libstdc++-v3/doc/doxygen/Intro.3 b/libstdc++-v3/doc/doxygen/Intro.3 index cb3ff2e..35fdb13 100644 --- a/libstdc++-v3/doc/doxygen/Intro.3 +++ b/libstdc++-v3/doc/doxygen/Intro.3 @@ -1,5 +1,5 @@ .\" t -.\" This man page is released under the FDL as part of libstdc++. +.\" This man page is released under the GPL as part of libstdc++. .TH C++Intro 3 "20 May 2004" "GNU libstdc++" "Standard C++ Library" .SH NAME C++Intro \- Introduction to the GNU libstdc++ man pages diff --git a/libstdc++-v3/doc/doxygen/doxygroups.cc b/libstdc++-v3/doc/doxygen/doxygroups.cc index 68d142f..f051a7e 100644 --- a/libstdc++-v3/doc/doxygen/doxygroups.cc +++ b/libstdc++-v3/doc/doxygen/doxygroups.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2005, 2008 Free Software Foundation, Inc. See license.html for license. This just provides documentation for stuff that doesn't need to be in the @@ -17,36 +17,34 @@ // // // // // // // // // // // // // // // // // // // // // // // // /** @namespace std - * @brief Everything defined by the ISO C++ Standard is within - * namespace <a class="el" href="namespacestd.html">std</a>. + * @brief ISO C++ entities toplevel namespace is std. */ /** @namespace std::__detail - * @brief Implementation details not part of the namespace <a class="el" - * href="namespacestd.html">std</a> interface. + * @brief Implementation details not part of the namespace std interface. */ /** @namespace std::tr1 - * @brief Everything defined by the ISO C++ TR1 is within namespace std::tr1. + * @brief ISO C++ TR1 entities toplevel namespace is std::tr1. */ /** @namespace std::tr1::__detail * @brief Implementation details not part of the namespace std::tr1 interface. */ +/** @namespace std::regex_constants + * @brief ISO C++ 0x entities sub namespace for regex. +*/ +/** @namespace std::placeholders + * @brief ISO C++ 0x entities sub namespace for functional. +*/ /** @namespace __gnu_cxx * @brief GNU extensions for public use. */ /** @namespace __gnu_cxx::__detail - * @brief Implementation details not part of the namespace __gnu_cxx + * @brief Implementation details not part of the namespace __gnu_cxx * interface. */ -/** @namespace __gnu_cxx::typelist - * @brief GNU typelist extensions for public compile-time use. -*/ /** @namespace __gnu_internal * @brief GNU implemenation details, not for public use or * export. Used only when anonymous namespaces cannot be substituted. */ -/** @namespace __gnu_debug - * @brief GNU debug classes for public use. -*/ // // // // // // // // // // // // // // // // // // // // // // // // /** @addtogroup SGIextensions STL extensions from SGI Because libstdc++ based its implementation of the STL subsections of diff --git a/libstdc++-v3/doc/doxygen/mainpage.html b/libstdc++-v3/doc/doxygen/mainpage.html index b723695..aa650ba 100644 --- a/libstdc++-v3/doc/doxygen/mainpage.html +++ b/libstdc++-v3/doc/doxygen/mainpage.html @@ -2,7 +2,6 @@ <html> <head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>libstdc++ Source: Main Index</title> -<link href="style.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#ffffff"> @@ -39,14 +38,25 @@ <p>Here are entry points to all the pages generated by Doxygen: <ul> - <li><a href="modules.html">Modules</a> - <li><a href="namespaces.html">Namespace List</a> - <li><a href="hierarchy.html">Class List</a> - <li><a href="annotated.html">Class Annotated List</a> - <li><a href="classes.html">Class Alphabetical Index</a> - <li><a href="globals_func.html">Function Alphabetical List</a> - <li><a href="files.html">Source File List</a> - <li><a href="todo.html">TODO List</a> (This is incomplete... how ironic.) + <li><a href="modules.html">Modules</a></li> + + <li>Namespaces + <ul> + <li><a href="namespaces.html">List</a></li> + <li><a href="namespacemembers.html">Members</a></li> + </ul> + </li> + + <li>Classes + <ul> + <li><a href="classes.html">List</a></li> + <li><a href="hierarchy.html">Hierarchy</a></li> + <li><a href="functions.html">Members</a></li> + </ul> + </li> + + <li><a href="files.html">Source Files</a></li> + <li><a href="todo.html">TODO List</a></li> </ul> </p> diff --git a/libstdc++-v3/doc/doxygen/style.css b/libstdc++-v3/doc/doxygen/style.css deleted file mode 100644 index c49c37c..0000000 --- a/libstdc++-v3/doc/doxygen/style.css +++ /dev/null @@ -1,74 +0,0 @@ -BODY { - background: white; - font-size: small; -} -H1 { text-align: center; font-size: large } -H2 { text-align: left; font-size: medium; } -H3 { text-align: left; font-size: small; } -CODE { font-size: small; } -CAPTION { font-weight: normal } -A.qindex {} -A.qindexRef {} -A.el { text-decoration: none; font-size: small; font-weight: normal } -A.elRef { text-decoration: none; font-size: small; font-weight: normal } -A.code { text-decoration: none; font-weight: normal; color: #4444ee } -A.codeRef { font-weight: normal; color: #4444ee } -A:hover { text-decoration: none; background-color: #f2f2ff } -DL.el { margin-left: -1cm } -DIV.fragment { width: 100%; border: none; background-color: #eeeeee } -DIV.ah { - background-color: black; - font-weight: normal; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px -} -DIV.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: normal -} -DIV.groupText { margin-left: 16px; font-style: italic; font-size: small } -TD.md { background-color: #f2f2ff; font-size: small; } -TD.mdname1 { background-color: #f2f2ff; font-size: small; color: #602020; } -TD.mdname { - background-color: #f2f2ff; - font-weight: normal; - font-size: small; - color: #602020; - width: 600px -} -TD.indexkey { - background-color: #eeeeff; - font-weight: normal; - font-size: small; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px -} -TD.indexvalue { - background-color: #eeeeff; - font-style: italic; - font-size: small; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px -} -span.keyword { color: #008000 } -span.keywordtype { color: #604020 } -span.keywordflow { color: #e08000 } -span.comment { color: #800000 } -span.preprocessor { color: #806020 } -span.stringliteral { color: #002080 } -span.charliteral { color: #008080 } diff --git a/libstdc++-v3/doc/doxygen/tables.html b/libstdc++-v3/doc/doxygen/tables.html index 74ac3e2..def011e 100644 --- a/libstdc++-v3/doc/doxygen/tables.html +++ b/libstdc++-v3/doc/doxygen/tables.html @@ -2,7 +2,6 @@ <html> <head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Tables</title> -<link href="style.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#ffffff"> diff --git a/libstdc++-v3/doc/doxygen/user.cfg.in b/libstdc++-v3/doc/doxygen/user.cfg.in index 8895eab..059d95d 100644 --- a/libstdc++-v3/doc/doxygen/user.cfg.in +++ b/libstdc++-v3/doc/doxygen/user.cfg.in @@ -1,4 +1,4 @@ -# Doxyfile 1.5.4 +# Doxyfile 1.5.1 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project @@ -14,15 +14,6 @@ # Project related configuration options #--------------------------------------------------------------------------- -# This tag specifies the encoding used for all characters in the -# config file that follow. The default is UTF-8 which is also the -# encoding used for all text before the first occurrence of this -# tag. Doxygen uses libiconv (or the iconv built into libc) for the -# transcoding. See http://www.gnu.org/software/libiconv for the list -# of possible encodings. - -DOXYFILE_ENCODING = UTF-8 - # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. @@ -62,6 +53,16 @@ CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English +# This tag can be used to specify the encoding used in the generated output. +# The encoding is not always determined by the language that is chosen, +# but also whether or not the output is meant for Windows or non-Windows users. +# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES +# forces the Windows encoding (this is the default for the Windows binary), +# whereas setting the tag to NO uses a Unix-style encoding (the default for +# all platforms other than Windows). + +USE_WINDOWS_ENCODING = NO + # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will # include brief member descriptions after the members that are listed in # the file and class documentation (similar to JavaDoc). @@ -69,11 +70,10 @@ OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = NO -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will -# prepend the brief description of a member or function before the -# detailed description. Note: if both HIDE_UNDOC_MEMBERS and -# BRIEF_MEMBER_DESC are set to NO, the brief descriptions will be -# completely suppressed. +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. REPEAT_BRIEF = YES @@ -135,19 +135,11 @@ SHORT_NAMES = YES # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen # will interpret the first line (until the first dot) of a JavaDoc-style # comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like regular Qt-style comments -# (thus requiring an explicit @brief command for a brief description.) +# comments will behave just like the Qt-style comments (thus requiring an +# explicit @brief command for a brief description. JAVADOC_AUTOBRIEF = NO -# If the QT_AUTOBRIEF tag is set to YES then Doxygen will -# interpret the first line (until the first dot) of a Qt-style -# comment as the brief description. If set to NO, the comments -# will behave just like regular Qt-style comments (thus requiring -# an explicit \brief command for a brief description.) - -QT_AUTOBRIEF = NO - # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen # treat a multi-line C++ special comment block (i.e. a block of //! or /// # comments) as a brief description. This used to be the default behaviour. @@ -213,18 +205,6 @@ OPTIMIZE_OUTPUT_JAVA = NO BUILTIN_STL_SUPPORT = NO -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip -# sources only. Doxygen will parse them like normal C++ but will -# assume all classes use public instead of private inheritance when no -# explicit protection keyword is present. - -SIP_SUPPORT = NO - # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC # tag is set to YES, then doxygen will reuse the documentation of the first # member in the group (if any) for the other members of the group. By default @@ -240,16 +220,6 @@ DISTRIBUTE_GROUP_DOC = YES SUBGROUPING = YES -# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct (or union) is -# documented as struct with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically -# be useful for C code where the coding convention is that all structs are -# typedef'ed and only the typedef is referenced never the struct's name. - -TYPEDEF_HIDES_STRUCT = NO - #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- @@ -284,14 +254,6 @@ EXTRACT_LOCAL_CLASSES = YES EXTRACT_LOCAL_METHODS = YES -# If this flag is set to YES, the members of anonymous namespaces will -# be extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the -# base name of the file that contains the anonymous namespace. By -# default anonymous namespace are hidden. - -EXTRACT_ANON_NSPACES = NO - # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all # undocumented members of documented classes, files or namespaces. # If set to NO (the default) these members will be included in the @@ -422,20 +384,19 @@ MAX_INITIALIZER_LINES = 0 SHOW_USED_FILES = YES -# If the sources in your project are distributed over multiple -# directories then setting the SHOW_DIRECTORIES tag to YES will show -# the directory hierarchy in the documentation. The default is NO. +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. SHOW_DIRECTORIES = YES -# The FILE_VERSION_FILTER tag can be used to specify a program or -# script that doxygen should invoke to get the current version for -# each file (typically from the version control system). Doxygen will -# invoke the program by executing (via popen()) the command <command> -# <input-file>, where <command> is the value of the -# FILE_VERSION_FILTER tag, and <input-file> is the name of an input -# file provided by doxygen. Whatever the program writes to standard -# output is used as the file version. See the manual for examples. +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from the +# version control system). Doxygen will invoke the program by executing (via +# popen()) the command <command> <input-file>, where <command> is the value of +# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. FILE_VERSION_FILTER = @@ -494,53 +455,20 @@ WARN_LOGFILE = # configuration options related to the input files #--------------------------------------------------------------------------- -# The INPUT tag can be used to specify the files and/or directories -# that contain documented source files. You may enter file names like -# "myfile.cpp" or directories like "/usr/src/myproject". Separate the -# files or directories with spaces. +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. -INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ - @srcdir@/include/precompiled/stdc++.h \ - @srcdir@/include/precompiled/stdtr1c++.h \ - @srcdir@/include/precompiled/extc++.h \ - @srcdir@/libsupc++/cxxabi.h \ +INPUT = @srcdir@/libsupc++/cxxabi.h \ + @srcdir@/libsupc++/cxxabi-forced.h \ @srcdir@/libsupc++/exception \ @srcdir@/libsupc++/new \ @srcdir@/libsupc++/typeinfo \ - include/@host_alias@/bits \ - include/bits \ - include/debug \ - include/parallel \ - include/ext \ - include/tr1 \ - include/tr1_impl \ include/algorithm \ include/array \ include/bitset \ - include/cassert \ - include/ccomplex \ - include/cctype \ - include/cerrno \ - include/cfenv \ - include/cfloat \ - include/cinttypes \ - include/ciso646 \ - include/climits \ - include/clocale \ - include/cmath \ - include/csetjmp \ - include/csignal \ - include/cstdarg \ - include/cstdbool \ - include/cstddef \ - include/cstdint \ - include/cstdio \ - include/cstdlib \ - include/cstring \ - include/ctgmath \ - include/ctime \ - include/cwchar \ - include/cwctype \ + include/date_time \ include/deque \ include/fstream \ include/functional \ @@ -574,14 +502,41 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ include/utility \ include/valarray \ include/vector \ + include/cassert \ + include/ccomplex \ + include/cctype \ + include/cerrno \ + include/cfenv \ + include/cfloat \ + include/cinttypes \ + include/ciso646 \ + include/climits \ + include/clocale \ + include/cmath \ + include/csetjmp \ + include/csignal \ + include/cstdarg \ + include/cstdbool \ + include/cstddef \ + include/cstdint \ + include/cstdio \ + include/cstdlib \ + include/cstring \ + include/ctgmath \ + include/ctime \ + include/cwchar \ + include/cwctype \ include/backward/hash_map \ include/backward/hash_set \ + include/backward/strstream \ include/debug/bitset \ include/debug/deque \ include/debug/list \ include/debug/map \ include/debug/set \ include/debug/string \ + include/debug/unordered_map \ + include/debug/unordered_set \ include/debug/vector \ include/ext/algorithm \ include/ext/functional \ @@ -591,8 +546,6 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ include/ext/rb_tree \ include/ext/rope \ include/ext/slist \ - include/ext/pb_ds \ - include/ext/pb_ds/detail \ include/parallel/algorithm \ include/parallel/numeric \ include/tr1/array \ @@ -614,7 +567,6 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ include/tr1/cwchar \ include/tr1/cwctype \ include/tr1/functional \ - include/tr1/hashtable.h \ include/tr1/memory \ include/tr1/random \ include/tr1/regex \ @@ -622,7 +574,6 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ include/tr1/type_traits \ include/tr1/unordered_map \ include/tr1/unordered_set \ - include/tr1_impl/utility \ include/tr1_impl/array \ include/tr1_impl/cctype \ include/tr1_impl/cfenv \ @@ -638,27 +589,28 @@ INPUT = @srcdir@/doc/doxygen/doxygroups.cc \ include/tr1_impl/hashtable \ include/tr1_impl/random \ include/tr1_impl/regex \ - include/tr1_impl/tuple \ include/tr1_impl/type_traits \ include/tr1_impl/unordered_map \ include/tr1_impl/unordered_set \ - include/tr1_impl/utility - -# This tag can be used to specify the character encoding of the source -# files that doxygen parses. Internally doxygen uses the UTF-8 -# encoding, which is also the default input encoding. Doxygen uses -# libiconv (or the iconv built into libc) for the transcoding. See -# http://www.gnu.org/software/libiconv for the list of possible -# encodings. - -INPUT_ENCODING = UTF-8 + include/tr1_impl/utility \ + include/@host_alias@/bits \ + include/backward \ + include/bits \ + include/debug \ + include/parallel \ + include/tr1 \ + include/tr1_impl \ + include/ext \ + include/ext/pb_ds \ + include/ext/pb_ds/detail \ + @srcdir@/doc/doxygen/doxygroups.cc # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left # blank the following patterns are tested: # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx -# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py FILE_PATTERNS = *.h \ *.hpp \ @@ -694,14 +646,6 @@ EXCLUDE_PATTERNS = stamp-* \ *extc++.h* \ */.svn/* -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol -# names (namespaces, classes, functions, etc.) that should be excluded -# from the output. The symbol name can be a fully qualified name, a -# word, or if the wildcard * is used, a substring. Examples: -# ANamespace, AClass, AClass::ANamespace, ANamespace::*Test - -EXCLUDE_SYMBOLS = - # The EXAMPLE_PATH tag can be used to specify one or more files or # directories that contain example code fragments that are included (see # the \include command). @@ -757,13 +701,10 @@ FILTER_SOURCE_FILES = NO # configuration options related to source browsing #--------------------------------------------------------------------------- -# If the SOURCE_BROWSER tag is set to YES then a list of source files -# will be generated. Documented entities will be cross-referenced with -# these sources. Note: To get rid of all source code in the generated -# output, make sure also VERBATIM_HEADERS is set to NO. If you have -# enabled CALL_GRAPH or CALLER_GRAPH then you must also enable this -# option. If you don't then doxygen will produce a warning and turn it -# on anyway +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. SOURCE_BROWSER = YES @@ -847,7 +788,7 @@ GENERATE_HTML = @do_html@ # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `html' will be used as the default path. -HTML_OUTPUT = @html_output_dir@ +HTML_OUTPUT = html # The HTML_FILE_EXTENSION tag can be used to specify the file extension for # each generated HTML page (for example: .htm,.php,.asp). If it is left blank @@ -874,7 +815,7 @@ HTML_FOOTER = # the style sheet file to the HTML output directory, so don't put your own # stylesheet in the HTML output directory as well, or it will be erased! -HTML_STYLESHEET = @srcdir@/doc/doxygen/style.css +HTML_STYLESHEET = # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to @@ -889,14 +830,6 @@ HTML_ALIGN_MEMBERS = NO GENERATE_HTMLHELP = NO -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. For this to work a browser that supports -# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox -# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). - -HTML_DYNAMIC_SECTIONS = NO - # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can # be used to specify the file name of the resulting .chm file. You # can add a path in front of the file if the result should not be @@ -1120,7 +1053,6 @@ XML_OUTPUT = xml # which can be used by a validating XML parser to check the # syntax of the XML files. -#XML_SCHEMA = XML_SCHEMA = # The XML_DTD tag can be used to specify an XML DTD, @@ -1128,7 +1060,6 @@ XML_SCHEMA = # syntax of the XML files. XML_DTD = -#XML_DTD = http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd # If the XML_PROGRAMLISTING tag is set to YES Doxygen will # dump the program listings (including syntax highlighting @@ -1232,13 +1163,18 @@ INCLUDE_FILE_PATTERNS = # instead of the = operator. PREDEFINED = __GTHREADS \ + "_GLIBCXX_STD_P= " \ + "_GLIBCXX_STD_D= " \ _GLIBCXX_STD=std \ - _GLIBCXX_TR1=tr1 \ + "_GLIBCXX_TR1= " \ + "_GLIBCXX_BEGIN_NAMESPACE_TR1= " \ + "_GLIBCXX_END_NAMESPACE_TR1= " \ "_GLIBCXX_BEGIN_NAMESPACE(name)=namespace name { " \ "_GLIBCXX_BEGIN_NESTED_NAMESPACE(name, unused)=namespace name { " \ _GLIBCXX_END_NAMESPACE=} \ _GLIBCXX_END_NESTED_NAMESPACE=} \ "_GLIBCXX_TEMPLATE_ARGS=... " \ + _GLIBCXX_INCLUDE_AS_CXX0X \ _GLIBCXX_DEPRECATED \ _GLIBCXX_USE_WCHAR_T \ _GLIBCXX_USE_LONG_LONG \ @@ -1248,11 +1184,10 @@ PREDEFINED = __GTHREADS \ __glibcxx_class_requires3=// \ __glibcxx_class_requires4=// -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES -# then this tag can be used to specify a list of macro names that -# should be expanded. The macro definition that is found in the -# sources will be used. Use the PREDEFINED tag if you want to use a -# different macro definition. +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. EXPAND_AS_DEFINED = @@ -1320,14 +1255,6 @@ PERL_PATH = /usr/bin/perl CLASS_DIAGRAMS = YES -# You can define message sequence charts within doxygen comments using the \msc -# command. Doxygen will then run the mscgen tool (see http://www.mcternan.me.uk/mscgen/) to -# produce the chart and insert it in the documentation. The MSCGEN_PATH tag allows you to -# specify the directory where the mscgen tool resides. If left empty the tool is assumed to -# be found in the default search path. - -MSCGEN_PATH = - # If set to YES, the inheritance and collaboration graphs will hide # inheritance and usage relations if the target is undocumented # or is not a class. @@ -1385,21 +1312,19 @@ INCLUDE_GRAPH = NO INCLUDED_BY_GRAPH = NO -# If the CALL_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES -# then doxygen will generate a call dependency graph for every global -# function or class method. Note that enabling this option will -# significantly increase the time of a run. So in most cases it will -# be better to enable call graphs for selected functions only using -# the \callgraph command. +# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will +# generate a call dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable call graphs for selected +# functions only using the \callgraph command. CALL_GRAPH = NO -# If the CALLER_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES -# then doxygen will generate a caller dependency graph for every -# global function or class method. Note that enabling this option -# will significantly increase the time of a run. So in most cases it -# will be better to enable caller graphs for selected functions only -# using the \callergraph command. +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will +# generate a caller dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable caller graphs for selected +# functions only using the \callergraph command. CALLER_GRAPH = NO @@ -1432,24 +1357,31 @@ DOT_PATH = DOTFILE_DIRS = -# The MAX_DOT_GRAPH_MAX_NODES tag can be used to set the maximum -# number of nodes that will be shown in the graph. If the number of -# nodes in a graph becomes larger than this value, doxygen will -# truncate the graph, which is visualized by representing a node as a -# red box. Note that doxygen if the number of direct children of the -# root node in a graph is already larger than MAX_DOT_GRAPH_NOTES then -# the graph will not be shown at all. Also note that the size of a -# graph can be further restricted by MAX_DOT_GRAPH_DEPTH. +# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_WIDTH = 1024 + +# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. -DOT_GRAPH_MAX_NODES = 50 +MAX_DOT_GRAPH_HEIGHT = 1024 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the # graphs generated by dot. A depth value of 3 means that only nodes reachable # from the root by following a path via at most 3 edges will be shown. Nodes # that lay further from the root node will be omitted. Note that setting this # option to 1 or 2 may greatly reduce the computation time needed for large -# code bases. Also note that the size of a graph can be further restricted by -# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. +# code bases. Also note that a graph may be further truncated if the graph's +# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH +# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), +# the graph is not depth-constrained. MAX_DOT_GRAPH_DEPTH = 0 diff --git a/libstdc++-v3/doc/html/api.html b/libstdc++-v3/doc/html/api.html index dd895fc..6724b72 100644 --- a/libstdc++-v3/doc/html/api.html +++ b/libstdc++-v3/doc/html/api.html @@ -5,7 +5,7 @@ <a class="ulink" href="http://www.fsf.org/" target="_top">FSF </a> - </p></div><div><div class="legalnotice"><a id="id375791"></a><p> + </p></div><div><div class="legalnotice"><a id="id478877"></a><p> <a class="ulink" href="17_intro/license.html" target="_top">License </a> </p></div></div></div><hr /></div><p> @@ -29,6 +29,9 @@ viewed online: <a class="ulink" href="libstdc++-html-USERS-4.2/index.html" target="_top">for the 4.2 release </a> </p></li><li><p> + <a class="ulink" href="libstdc++-html-USERS-4.3/index.html" target="_top">for the 4.3 release + </a> + </p></li><li><p> <a class="ulink" href="latest-doxygen/index.html" target="_top">"the latest collection" </a> (For the main development tree; see the date on the first page.) diff --git a/libstdc++-v3/doc/xml/api.xml b/libstdc++-v3/doc/xml/api.xml index 506f631..f7ecb7d 100644 --- a/libstdc++-v3/doc/xml/api.xml +++ b/libstdc++-v3/doc/xml/api.xml @@ -63,6 +63,12 @@ viewed online: </listitem> <listitem> <para> + <ulink url="libstdc++-html-USERS-4.3/index.html">for the 4.3 release + </ulink> + </para> + </listitem> + <listitem> + <para> <ulink url="latest-doxygen/index.html">"the latest collection" </ulink> (For the main development tree; see the date on the first page.) diff --git a/libstdc++-v3/include/bits/allocator.h b/libstdc++-v3/include/bits/allocator.h index 8a0d0ee..a90f7b4 100644 --- a/libstdc++-v3/include/bits/allocator.h +++ b/libstdc++-v3/include/bits/allocator.h @@ -1,6 +1,6 @@ // Allocators -*- C++ -*- -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -77,7 +77,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) * @brief The "standard" allocator, as per [20.4]. * * Further details: - * http://gcc.gnu.org/onlinedocs/libstdc++/20_util/allocator.html + * http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch11.html */ template<typename _Tp> class allocator: public __glibcxx_base_allocator<_Tp> diff --git a/libstdc++-v3/include/bits/char_traits.h b/libstdc++-v3/include/bits/char_traits.h index d01db93..ae0f6cf 100644 --- a/libstdc++-v3/include/bits/char_traits.h +++ b/libstdc++-v3/include/bits/char_traits.h @@ -231,7 +231,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) { }; - /// @brief 21.1.3.1 char_traits specializations + /// 21.1.3.1 char_traits specializations template<> struct char_traits<char> { @@ -301,7 +301,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) #ifdef _GLIBCXX_USE_WCHAR_T - /// @brief 21.1.3.2 char_traits specializations + /// 21.1.3.2 char_traits specializations template<> struct char_traits<wchar_t> { diff --git a/libstdc++-v3/include/bits/codecvt.h b/libstdc++-v3/include/bits/codecvt.h index 8d18249..9d6655a 100644 --- a/libstdc++-v3/include/bits/codecvt.h +++ b/libstdc++-v3/include/bits/codecvt.h @@ -1,6 +1,6 @@ // Locale support (codecvt) -*- C++ -*- -// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 +// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -46,7 +46,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) - /// @brief Empty base class for codecvt facet [22.2.1.5]. + /// Empty base class for codecvt facet [22.2.1.5]. class codecvt_base { public: @@ -330,7 +330,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) template<typename _InternT, typename _ExternT, typename _StateT> locale::id codecvt<_InternT, _ExternT, _StateT>::id; - /// @brief class codecvt<char, char, mbstate_t> specialization. + /// class codecvt<char, char, mbstate_t> specialization. template<> class codecvt<char, char, mbstate_t> : public __codecvt_abstract_base<char, char, mbstate_t> @@ -388,7 +388,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) }; #ifdef _GLIBCXX_USE_WCHAR_T - /// @brief class codecvt<wchar_t, char, mbstate_t> specialization. + /// class codecvt<wchar_t, char, mbstate_t> specialization. template<> class codecvt<wchar_t, char, mbstate_t> : public __codecvt_abstract_base<wchar_t, char, mbstate_t> @@ -448,7 +448,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) }; #endif //_GLIBCXX_USE_WCHAR_T - /// @brief class codecvt_byname [22.2.1.6]. + /// class codecvt_byname [22.2.1.6]. template<typename _InternT, typename _ExternT, typename _StateT> class codecvt_byname : public codecvt<_InternT, _ExternT, _StateT> { diff --git a/libstdc++-v3/include/bits/locale_classes.h b/libstdc++-v3/include/bits/locale_classes.h index 10ca19a..cab5812 100644 --- a/libstdc++-v3/include/bits/locale_classes.h +++ b/libstdc++-v3/include/bits/locale_classes.h @@ -780,7 +780,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) collate<wchar_t>::_M_transform(wchar_t*, const wchar_t*, size_t) const; #endif - /// @brief class collate_byname [22.2.4.2]. + /// class collate_byname [22.2.4.2]. template<typename _CharT> class collate_byname : public collate<_CharT> { diff --git a/libstdc++-v3/include/bits/locale_facets.h b/libstdc++-v3/include/bits/locale_facets.h index c60f04d..cb9c021 100644 --- a/libstdc++-v3/include/bits/locale_facets.h +++ b/libstdc++-v3/include/bits/locale_facets.h @@ -1511,7 +1511,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) use_facet<ctype<wchar_t> >(const locale& __loc); #endif //_GLIBCXX_USE_WCHAR_T - /// @brief class ctype_byname [22.2.1.2]. + /// class ctype_byname [22.2.1.2]. template<typename _CharT> class ctype_byname : public ctype<_CharT> { @@ -1912,7 +1912,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc); #endif - /// @brief class numpunct_byname [22.2.3.2]. + /// class numpunct_byname [22.2.3.2]. template<typename _CharT> class numpunct_byname : public numpunct<_CharT> { diff --git a/libstdc++-v3/include/bits/locale_facets_nonio.h b/libstdc++-v3/include/bits/locale_facets_nonio.h index 31c90e3..f2da433 100644 --- a/libstdc++-v3/include/bits/locale_facets_nonio.h +++ b/libstdc++-v3/include/bits/locale_facets_nonio.h @@ -674,7 +674,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) template<typename _CharT, typename _InIter> locale::id time_get<_CharT, _InIter>::id; - /// @brief class time_get_byname [22.2.5.2]. + /// class time_get_byname [22.2.5.2]. template<typename _CharT, typename _InIter> class time_get_byname : public time_get<_CharT, _InIter> { @@ -798,7 +798,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) template<typename _CharT, typename _OutIter> locale::id time_put<_CharT, _OutIter>::id; - /// @brief class time_put_byname [22.2.5.4]. + /// class time_put_byname [22.2.5.4]. template<typename _CharT, typename _OutIter> class time_put_byname : public time_put<_CharT, _OutIter> { @@ -1306,7 +1306,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) const char*); #endif - /// @brief class moneypunct_byname [22.2.6.4]. + /// class moneypunct_byname [22.2.6.4]. template<typename _CharT, bool _Intl> class moneypunct_byname : public moneypunct<_CharT, _Intl> { @@ -1887,7 +1887,7 @@ _GLIBCXX_END_LDBL_NAMESPACE messages<wchar_t>::do_get(catalog, int, int, const wstring&) const; #endif - /// @brief class messages_byname [22.2.7.2]. + /// class messages_byname [22.2.7.2]. template<typename _CharT> class messages_byname : public messages<_CharT> { diff --git a/libstdc++-v3/include/debug/debug.h b/libstdc++-v3/include/debug/debug.h index 97d6824..0f64488 100644 --- a/libstdc++-v3/include/debug/debug.h +++ b/libstdc++-v3/include/debug/debug.h @@ -44,11 +44,19 @@ */ // Debug mode namespaces. + +/** + * @namespace std::__debug + * @brief GNU debug code, replaces standard behavior with debug behavior. + */ namespace std { namespace __debug { } } +/** @namespace __gnu_debug + * @brief GNU debug classes for public use. +*/ namespace __gnu_debug { using namespace std::__debug; diff --git a/libstdc++-v3/include/ext/array_allocator.h b/libstdc++-v3/include/ext/array_allocator.h index d5f7092..a2e28f9 100644 --- a/libstdc++-v3/include/ext/array_allocator.h +++ b/libstdc++-v3/include/ext/array_allocator.h @@ -45,7 +45,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) using std::size_t; using std::ptrdiff_t; - /// @brief Base class. + /// Base class. template<typename _Tp> class array_allocator_base { diff --git a/libstdc++-v3/include/ext/bitmap_allocator.h b/libstdc++-v3/include/ext/bitmap_allocator.h index 2736a46..5e553b0 100644 --- a/libstdc++-v3/include/ext/bitmap_allocator.h +++ b/libstdc++-v3/include/ext/bitmap_allocator.h @@ -706,6 +706,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) }; }; + /// Primary template template<typename _Tp> class bitmap_allocator : private free_list { diff --git a/libstdc++-v3/include/ext/codecvt_specializations.h b/libstdc++-v3/include/ext/codecvt_specializations.h index 42e3c0f..e46d967 100644 --- a/libstdc++-v3/include/ext/codecvt_specializations.h +++ b/libstdc++-v3/include/ext/codecvt_specializations.h @@ -47,7 +47,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) - /// @brief Extension to use iconv for dealing with character encodings. + /// Extension to use iconv for dealing with character encodings. // This includes conversions and comparisons between various character // sets. This object encapsulates data that may need to be shared between // char_traits, codecvt and ctype. @@ -206,7 +206,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) } }; - /// @brief encoding_char_traits. + /// encoding_char_traits // Custom traits type with encoding_state for the state type, and the // associated fpos<encoding_state> for the position type, all other // bits equivalent to the required char_traits instantiations. @@ -224,7 +224,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) using __gnu_cxx::encoding_state; - /// @brief codecvt<InternT, _ExternT, encoding_state> specialization. + /// codecvt<InternT, _ExternT, encoding_state> specialization. // This partial specialization takes advantage of iconv to provide // code conversions between a large number of character encodings. template<typename _InternT, typename _ExternT> diff --git a/libstdc++-v3/include/ext/concurrence.h b/libstdc++-v3/include/ext/concurrence.h index 765b93d..b9e43d6 100644 --- a/libstdc++-v3/include/ext/concurrence.h +++ b/libstdc++-v3/include/ext/concurrence.h @@ -240,7 +240,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) { return &_M_mutex; } }; - /// @brief Scoped lock idiom. + /// Scoped lock idiom. // Acquire the mutex here with a constructor call, then release with // the destructor call in accordance with RAII style. class __scoped_lock diff --git a/libstdc++-v3/include/ext/enc_filebuf.h b/libstdc++-v3/include/ext/enc_filebuf.h index bba78e0..e04072b 100644 --- a/libstdc++-v3/include/ext/enc_filebuf.h +++ b/libstdc++-v3/include/ext/enc_filebuf.h @@ -40,7 +40,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) - /// @brief class enc_filebuf. + /// class enc_filebuf. template<typename _CharT> class enc_filebuf : public std::basic_filebuf<_CharT, encoding_char_traits<_CharT> > diff --git a/libstdc++-v3/include/ext/mt_allocator.h b/libstdc++-v3/include/ext/mt_allocator.h index 84aed82..08aa311 100644 --- a/libstdc++-v3/include/ext/mt_allocator.h +++ b/libstdc++-v3/include/ext/mt_allocator.h @@ -47,7 +47,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) typedef void (*__destroy_handler)(void*); - /// @brief Base class for pool object. + /// Base class for pool object. struct __pool_base { // Using short int as type for the binmap implies we are never @@ -455,7 +455,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) }; #endif - /// @brief Policy for shared __pool objects. + /// Policy for shared __pool objects. template<template <bool> class _PoolTp, bool _Thread> struct __common_pool_policy : public __common_pool_base<_PoolTp, _Thread> { @@ -550,7 +550,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) }; #endif - /// @brief Policy for individual __pool objects. + /// Policy for individual __pool objects. template<typename _Tp, template <bool> class _PoolTp, bool _Thread> struct __per_type_pool_policy : public __per_type_pool_base<_Tp, _PoolTp, _Thread> @@ -565,7 +565,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) }; - /// @brief Base class for _Tp dependent member functions. + /// Base class for _Tp dependent member functions. template<typename _Tp> class __mt_alloc_base { @@ -621,7 +621,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) * the "global" list). * * Further details: - * http://gcc.gnu.org/onlinedocs/libstdc++/ext/mt_allocator.html + * http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt12ch32.html */ template<typename _Tp, typename _Poolp = __common_pool_policy<__pool, __thread_default> > diff --git a/libstdc++-v3/include/ext/pb_ds/tag_and_trait.hpp b/libstdc++-v3/include/ext/pb_ds/tag_and_trait.hpp index 09475a2..bb39d17 100644 --- a/libstdc++-v3/include/ext/pb_ds/tag_and_trait.hpp +++ b/libstdc++-v3/include/ext/pb_ds/tag_and_trait.hpp @@ -52,9 +52,8 @@ /** * @namespace __gnu_pbds - * @brief GNU extension policy-based data structures for public use. + * @brief GNU extensions for policy-based data structures for public use. */ - namespace __gnu_pbds { // A trivial iterator tag. Signifies that the iterators has none of diff --git a/libstdc++-v3/include/ext/pool_allocator.h b/libstdc++-v3/include/ext/pool_allocator.h index e2e38a0..c4d2ef2 100644 --- a/libstdc++-v3/include/ext/pool_allocator.h +++ b/libstdc++-v3/include/ext/pool_allocator.h @@ -119,7 +119,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) }; - /// @brief class __pool_alloc. + /// class __pool_alloc. template<typename _Tp> class __pool_alloc : private __pool_alloc_base { diff --git a/libstdc++-v3/include/ext/stdio_sync_filebuf.h b/libstdc++-v3/include/ext/stdio_sync_filebuf.h index a1d2b38..6cb555a 100644 --- a/libstdc++-v3/include/ext/stdio_sync_filebuf.h +++ b/libstdc++-v3/include/ext/stdio_sync_filebuf.h @@ -47,7 +47,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) - /// @brief class stdio_sync_filebuf. + /// class stdio_sync_filebuf. template<typename _CharT, typename _Traits = std::char_traits<_CharT> > class stdio_sync_filebuf : public std::basic_streambuf<_CharT, _Traits> { diff --git a/libstdc++-v3/include/ext/throw_allocator.h b/libstdc++-v3/include/ext/throw_allocator.h index 04204cb..a5aa725 100644 --- a/libstdc++-v3/include/ext/throw_allocator.h +++ b/libstdc++-v3/include/ext/throw_allocator.h @@ -80,6 +80,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) std::tr1::mt19937 _M_generator; }; + /// Thown by throw_allocator. struct forced_exception_error : public std::exception { }; @@ -94,6 +95,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) #endif } + /// Base class. class throw_allocator_base { public: @@ -184,7 +186,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) static size_t _S_label; }; - + /// Allocator class with logging and exception control. template<typename T> class throw_allocator : public throw_allocator_base { @@ -309,7 +311,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) twister_rand_gen throw_allocator_base::_S_g; - throw_allocator_base::map_type + throw_allocator_base::map_type throw_allocator_base::_S_map; double throw_allocator_base::_S_throw_prob; diff --git a/libstdc++-v3/include/ext/typelist.h b/libstdc++-v3/include/ext/typelist.h index 1c99783..b7cd954 100644 --- a/libstdc++-v3/include/ext/typelist.h +++ b/libstdc++-v3/include/ext/typelist.h @@ -50,6 +50,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) +/** @namespace __gnu_cxx::typelist + * @brief GNU typelist extensions for public compile-time use. +*/ namespace typelist { struct null_type { }; diff --git a/libstdc++-v3/include/parallel/base.h b/libstdc++-v3/include/parallel/base.h index 2060d81..b713ee7 100644 --- a/libstdc++-v3/include/parallel/base.h +++ b/libstdc++-v3/include/parallel/base.h @@ -47,6 +47,11 @@ // Parallel mode namespaces. + +/** + * @namespace std::__parallel + * @brief GNU parallel code, replaces standard behavior with parallel behavior. + */ namespace std { namespace __parallel { } @@ -54,7 +59,7 @@ namespace std /** * @namespace __gnu_parallel - * @brief GNU parallel classes for public use. + * @brief GNU parallel code for public use. */ namespace __gnu_parallel { diff --git a/libstdc++-v3/include/std/date_time b/libstdc++-v3/include/std/date_time index 792a140..b956a9b 100644 --- a/libstdc++-v3/include/std/date_time +++ b/libstdc++-v3/include/std/date_time @@ -45,7 +45,8 @@ namespace std { // duration types - + + /// nanoseconds class nanoseconds { public: @@ -90,7 +91,7 @@ namespace std class minutes; class hours; - // timepoint type + /// timepoint type class system_time { public: diff --git a/libstdc++-v3/include/std/system_error b/libstdc++-v3/include/std/system_error index c2a1d01..c8973d1 100644 --- a/libstdc++-v3/include/std/system_error +++ b/libstdc++-v3/include/std/system_error @@ -53,6 +53,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) extern const error_category& system_category; + /// error_category struct error_category { error_category() { } @@ -78,6 +79,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) operator=(const error_category&); }; + /// error_code struct error_code { error_code() throw() @@ -133,6 +135,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std) const error_category* _M_cat; }; + /// Thrown to indicate error code of underlying system. class system_error : public std::runtime_error { private: diff --git a/libstdc++-v3/include/std/tuple b/libstdc++-v3/include/std/tuple index 78f69de..3dda530 100644 --- a/libstdc++-v3/include/std/tuple +++ b/libstdc++-v3/include/std/tuple @@ -205,6 +205,7 @@ namespace std } }; + /// tuple template<typename... _Elements> class tuple : public _Tuple_impl<0, _Elements...> { @@ -275,9 +276,11 @@ namespace std } }; - template<> class tuple<> { }; - // 2-element tuple, with construction and assignment from a pair. + template<> + class tuple<> { }; + + /// tuple (2-element), with construction and assignment from a pair. template<typename _T1, typename _T2> class tuple<_T1, _T2> : public _Tuple_impl<0, _T1, _T2> { @@ -393,7 +396,7 @@ namespace std template<typename _Tp> struct tuple_size; - /// @brief class tuple_size + /// class tuple_size template<typename... _Elements> struct tuple_size<tuple<_Elements...> > { diff --git a/libstdc++-v3/include/std/type_traits b/libstdc++-v3/include/std/type_traits index 38c92ab..1f9a2d9 100644 --- a/libstdc++-v3/include/std/type_traits +++ b/libstdc++-v3/include/std/type_traits @@ -1,6 +1,6 @@ // <type_traits> -*- C++ -*- -// Copyright (C) 2007 Free Software Foundation, Inc. +// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -63,6 +63,8 @@ namespace std { // Primary classification traits. + + /// is_lvalue_reference template<typename> struct is_lvalue_reference : public false_type { }; @@ -71,6 +73,7 @@ namespace std struct is_lvalue_reference<_Tp&> : public true_type { }; + /// is_rvalue_reference template<typename> struct is_rvalue_reference : public false_type { }; @@ -80,6 +83,8 @@ namespace std : public true_type { }; // Secondary classification traits. + + /// is_reference template<typename _Tp> struct is_reference : public integral_constant<bool, (is_lvalue_reference<_Tp>::value @@ -87,6 +92,8 @@ namespace std { }; // Reference transformations. + + /// remove_reference template<typename _Tp> struct remove_reference { typedef _Tp type; }; @@ -113,6 +120,7 @@ namespace std struct __add_lvalue_reference_helper<_Tp, false, true> { typedef typename remove_reference<_Tp>::type& type; }; + /// add_lvalue_reference template<typename _Tp> struct add_lvalue_reference : public __add_lvalue_reference_helper<_Tp> @@ -127,12 +135,14 @@ namespace std struct __add_rvalue_reference_helper<_Tp, true> { typedef _Tp&& type; }; + /// add_rvalue_reference template<typename _Tp> struct add_rvalue_reference : public __add_rvalue_reference_helper<_Tp> { }; // Scalar properties and transformations. + template<typename _Tp, bool = is_integral<_Tp>::value, bool = is_floating_point<_Tp>::value> @@ -148,11 +158,13 @@ namespace std : public integral_constant<bool, _Tp(-1) < _Tp(0)> { }; + /// is_signed template<typename _Tp> struct is_signed : public integral_constant<bool, __is_signed_helper<_Tp>::value> { }; + /// is_unsigned template<typename _Tp> struct is_unsigned : public integral_constant<bool, (is_arithmetic<_Tp>::value @@ -160,46 +172,56 @@ namespace std { }; // Member introspection. + + /// is_pod template<typename _Tp> struct is_pod : public integral_constant<bool, __is_pod(_Tp)> { }; + /// has_trivial_default_constructor template<typename _Tp> struct has_trivial_default_constructor : public integral_constant<bool, __has_trivial_constructor(_Tp)> { }; + /// has_trivial_copy_constructor template<typename _Tp> struct has_trivial_copy_constructor : public integral_constant<bool, __has_trivial_copy(_Tp)> { }; + /// has_trivial_assign template<typename _Tp> struct has_trivial_assign : public integral_constant<bool, __has_trivial_assign(_Tp)> { }; + /// has_trivial_destructor template<typename _Tp> struct has_trivial_destructor : public integral_constant<bool, __has_trivial_destructor(_Tp)> { }; + /// has_nothrow_default_destructor template<typename _Tp> struct has_nothrow_default_constructor : public integral_constant<bool, __has_nothrow_constructor(_Tp)> { }; + /// has_nothrow_copy_destructor template<typename _Tp> struct has_nothrow_copy_constructor : public integral_constant<bool, __has_nothrow_copy(_Tp)> { }; + /// has_nothrow_assign template<typename _Tp> struct has_nothrow_assign : public integral_constant<bool, __has_nothrow_assign(_Tp)> { }; + /// is_base_of template<typename _Base, typename _Derived> struct is_base_of : public integral_constant<bool, __is_base_of(_Base, _Derived)> @@ -232,7 +254,7 @@ namespace std template<typename _From, typename _To, bool = (is_void<_From>::value || is_void<_To>::value || is_function<_To>::value || is_array<_To>::value - // This special case is here only to avoid warnings. + // This special case is here only to avoid warnings. || (is_floating_point<typename remove_reference<_From>::type>::value && __is_int_or_cref<_To>::__value))> @@ -252,6 +274,7 @@ namespace std // XXX FIXME // The C++0x specifications are different, see N2255. + /// is_convertible template<typename _From, typename _To> struct is_convertible : public integral_constant<bool, @@ -268,6 +291,16 @@ namespace std }; }; + /** + * @brief Alignment type. + * + * The value of _Align is a default-alignment which shall be the + * most stringent alignment requirement for any C++ object type + * whose size is no greater than _Len (3.9). The member typedef + * type shall be a POD type suitable for use as uninitialized + * storage for any object whose size is at most _Len and whose + * alignment is a divisor of _Align. + */ template<std::size_t _Len, std::size_t _Align = __alignof__(typename __aligned_storage_msa<_Len>::__type)> struct aligned_storage @@ -281,21 +314,25 @@ namespace std // Define a nested type if some predicate holds. + /// Primary template. template<bool, typename _Tp = void> struct enable_if { }; + /// Partial specialization for true. template<typename _Tp> struct enable_if<true, _Tp> { typedef _Tp type; }; - // Like a conditional expression, but for types. If true, first, if - // false, second. + // A conditional expression, but for types. + // If true, first, if false, second. + /// Primary template. template<bool _Cond, typename _Iftrue, typename _Iffalse> struct conditional { typedef _Iftrue type; }; + /// Partial specialization for false. template<typename _Iftrue, typename _Iffalse> struct conditional<false, _Iftrue, _Iffalse> { typedef _Iffalse type; }; @@ -321,6 +358,7 @@ namespace std struct __decay_selector<_Up, false, true> { typedef typename add_pointer<_Up>::type __type; }; + /// decay template<typename _Tp> struct decay { @@ -428,9 +466,9 @@ namespace std typedef typename conditional<__b1, __smallest, __cond_type>::type __type; }; - // Primary class template. // Given an integral/enum type, return the corresponding unsigned // integer type. + /// Primary template. template<typename _Tp> struct make_unsigned { typedef typename __make_unsigned_selector<_Tp>::__type type; }; @@ -503,9 +541,9 @@ namespace std typedef typename conditional<__b1, __smallest, __cond_type>::type __type; }; - // Primary class template. // Given an integral/enum type, return the corresponding signed // integer type. + /// Primary template. template<typename _Tp> struct make_signed { typedef typename __make_signed_selector<_Tp>::__type type; }; diff --git a/libstdc++-v3/include/tr1/bessel_function.tcc b/libstdc++-v3/include/tr1/bessel_function.tcc index 19c9860..bf61a6f 100644 --- a/libstdc++-v3/include/tr1/bessel_function.tcc +++ b/libstdc++-v3/include/tr1/bessel_function.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -61,14 +61,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -633,9 +626,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/beta_function.tcc b/libstdc++-v3/include/tr1/beta_function.tcc index 537947e..8c0b1b5 100644 --- a/libstdc++-v3/include/tr1/beta_function.tcc +++ b/libstdc++-v3/include/tr1/beta_function.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -59,14 +59,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -203,9 +196,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/cmath b/libstdc++-v3/include/tr1/cmath index 81a3bfe..63e6a2e 100644 --- a/libstdc++-v3/include/tr1/cmath +++ b/libstdc++-v3/include/tr1/cmath @@ -1,6 +1,6 @@ // TR1 cmath -*- C++ -*- -// Copyright (C) 2006, 2007 Free Software Foundation, Inc. +// Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -56,15 +56,10 @@ # undef _GLIBCXX_INCLUDE_AS_TR1 #endif -/** - * @defgroup tr1_math_spec_func Mathematical Special Functions - * A collection of advanced mathematical special functions. - * @{ - */ #include <bits/stl_algobase.h> #include <limits> - #include <tr1/type_traits> + #include <tr1/gamma.tcc> #include <tr1/bessel_function.tcc> #include <tr1/beta_function.tcc> @@ -77,12 +72,16 @@ #include <tr1/poly_laguerre.tcc> #include <tr1/riemann_zeta.tcc> -// namespace std::tr1 namespace std { namespace tr1 { - // 5.2.1.1 Associated Laguerre polynomials. + /** + * @addtogroup tr1_math_spec_func Mathematical Special Functions + * A collection of advanced mathematical special functions. + * @{ + */ + inline float assoc_laguerref(unsigned int __n, unsigned int __m, float __x) { return __detail::__assoc_laguerre<float>(__n, __m, __x); } @@ -93,6 +92,7 @@ namespace tr1 return __detail::__assoc_laguerre<long double>(__n, __m, __x); } + /// 5.2.1.1 Associated Laguerre polynomials. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type assoc_laguerre(unsigned int __n, unsigned int __m, _Tp __x) @@ -101,7 +101,6 @@ namespace tr1 return __detail::__assoc_laguerre<__type>(__n, __m, __x); } - // 5.2.1.2 Associated Legendre functions. inline float assoc_legendref(unsigned int __l, unsigned int __m, float __x) { return __detail::__assoc_legendre_p<float>(__l, __m, __x); } @@ -110,6 +109,7 @@ namespace tr1 assoc_legendrel(unsigned int __l, unsigned int __m, long double __x) { return __detail::__assoc_legendre_p<long double>(__l, __m, __x); } + /// 5.2.1.2 Associated Legendre functions. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type assoc_legendre(unsigned int __l, unsigned int __m, _Tp __x) @@ -118,7 +118,6 @@ namespace tr1 return __detail::__assoc_legendre_p<__type>(__l, __m, __x); } - // 5.2.1.3 Beta functions. inline float betaf(float __x, float __y) { return __detail::__beta<float>(__x, __y); } @@ -127,6 +126,7 @@ namespace tr1 betal(long double __x, long double __y) { return __detail::__beta<long double>(__x, __y); } + /// 5.2.1.3 Beta functions. template<typename _Tpx, typename _Tpy> inline typename __gnu_cxx::__promote_2<_Tpx, _Tpy>::__type beta(_Tpx __x, _Tpy __y) @@ -135,7 +135,6 @@ namespace tr1 return __detail::__beta<__type>(__x, __y); } - // 5.2.1.4 Complete elliptic integrals of the first kind. inline float comp_ellint_1f(float __k) { return __detail::__comp_ellint_1<float>(__k); } @@ -144,6 +143,7 @@ namespace tr1 comp_ellint_1l(long double __k) { return __detail::__comp_ellint_1<long double>(__k); } + /// 5.2.1.4 Complete elliptic integrals of the first kind. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type comp_ellint_1(_Tp __k) @@ -152,7 +152,6 @@ namespace tr1 return __detail::__comp_ellint_1<__type>(__k); } - // 5.2.1.5 Complete elliptic integrals of the second kind. inline float comp_ellint_2f(float __k) { return __detail::__comp_ellint_2<float>(__k); } @@ -161,6 +160,7 @@ namespace tr1 comp_ellint_2l(long double __k) { return __detail::__comp_ellint_2<long double>(__k); } + /// 5.2.1.5 Complete elliptic integrals of the second kind. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type comp_ellint_2(_Tp __k) @@ -169,7 +169,6 @@ namespace tr1 return __detail::__comp_ellint_2<__type>(__k); } - // 5.2.1.6 Complete elliptic integrals of the third kind. inline float comp_ellint_3f(float __k, float __nu) { return __detail::__comp_ellint_3<float>(__k, __nu); } @@ -178,6 +177,7 @@ namespace tr1 comp_ellint_3l(long double __k, long double __nu) { return __detail::__comp_ellint_3<long double>(__k, __nu); } + /// 5.2.1.6 Complete elliptic integrals of the third kind. template<typename _Tp, typename _Tpn> inline typename __gnu_cxx::__promote_2<_Tp, _Tpn>::__type comp_ellint_3(_Tp __k, _Tpn __nu) @@ -186,7 +186,6 @@ namespace tr1 return __detail::__comp_ellint_3<__type>(__k, __nu); } - // 5.2.1.7 Confluent hypergeometric functions. inline float conf_hypergf(float __a, float __c, float __x) { return __detail::__conf_hyperg<float>(__a, __c, __x); } @@ -195,6 +194,7 @@ namespace tr1 conf_hypergl(long double __a, long double __c, long double __x) { return __detail::__conf_hyperg<long double>(__a, __c, __x); } + /// 5.2.1.7 Confluent hypergeometric functions. template<typename _Tpa, typename _Tpc, typename _Tp> inline typename __gnu_cxx::__promote_3<_Tpa, _Tpc, _Tp>::__type conf_hyperg(_Tpa __a, _Tpc __c, _Tp __x) @@ -203,7 +203,6 @@ namespace tr1 return __detail::__conf_hyperg<__type>(__a, __c, __x); } - // 5.2.1.8 Regular modified cylindrical Bessel functions. inline float cyl_bessel_if(float __nu, float __x) { return __detail::__cyl_bessel_i<float>(__nu, __x); } @@ -212,6 +211,7 @@ namespace tr1 cyl_bessel_il(long double __nu, long double __x) { return __detail::__cyl_bessel_i<long double>(__nu, __x); } + /// 5.2.1.8 Regular modified cylindrical Bessel functions. template<typename _Tpnu, typename _Tp> inline typename __gnu_cxx::__promote_2<_Tpnu, _Tp>::__type cyl_bessel_i(_Tpnu __nu, _Tp __x) @@ -220,7 +220,6 @@ namespace tr1 return __detail::__cyl_bessel_i<__type>(__nu, __x); } - // 5.2.1.9 Cylindrical Bessel functions (of the first kind). inline float cyl_bessel_jf(float __nu, float __x) { return __detail::__cyl_bessel_j<float>(__nu, __x); } @@ -229,6 +228,7 @@ namespace tr1 cyl_bessel_jl(long double __nu, long double __x) { return __detail::__cyl_bessel_j<long double>(__nu, __x); } + /// 5.2.1.9 Cylindrical Bessel functions (of the first kind). template<typename _Tpnu, typename _Tp> inline typename __gnu_cxx::__promote_2<_Tpnu, _Tp>::__type cyl_bessel_j(_Tpnu __nu, _Tp __x) @@ -237,7 +237,6 @@ namespace tr1 return __detail::__cyl_bessel_j<__type>(__nu, __x); } - // 5.2.1.10 Irregular modified cylindrical Bessel functions. inline float cyl_bessel_kf(float __nu, float __x) { return __detail::__cyl_bessel_k<float>(__nu, __x); } @@ -246,6 +245,7 @@ namespace tr1 cyl_bessel_kl(long double __nu, long double __x) { return __detail::__cyl_bessel_k<long double>(__nu, __x); } + /// 5.2.1.10 Irregular modified cylindrical Bessel functions. template<typename _Tpnu, typename _Tp> inline typename __gnu_cxx::__promote_2<_Tpnu, _Tp>::__type cyl_bessel_k(_Tpnu __nu, _Tp __x) @@ -254,7 +254,6 @@ namespace tr1 return __detail::__cyl_bessel_k<__type>(__nu, __x); } - // 5.2.1.11 Cylindrical Neumann functions. inline float cyl_neumannf(float __nu, float __x) { return __detail::__cyl_neumann_n<float>(__nu, __x); } @@ -263,6 +262,7 @@ namespace tr1 cyl_neumannl(long double __nu, long double __x) { return __detail::__cyl_neumann_n<long double>(__nu, __x); } + /// 5.2.1.11 Cylindrical Neumann functions. template<typename _Tpnu, typename _Tp> inline typename __gnu_cxx::__promote_2<_Tpnu, _Tp>::__type cyl_neumann(_Tpnu __nu, _Tp __x) @@ -271,7 +271,6 @@ namespace tr1 return __detail::__cyl_neumann_n<__type>(__nu, __x); } - // 5.2.1.12 Incomplete elliptic integrals of the first kind. inline float ellint_1f(float __k, float __phi) { return __detail::__ellint_1<float>(__k, __phi); } @@ -280,6 +279,7 @@ namespace tr1 ellint_1l(long double __k, long double __phi) { return __detail::__ellint_1<long double>(__k, __phi); } + /// 5.2.1.12 Incomplete elliptic integrals of the first kind. template<typename _Tp, typename _Tpp> inline typename __gnu_cxx::__promote_2<_Tp, _Tpp>::__type ellint_1(_Tp __k, _Tpp __phi) @@ -288,7 +288,6 @@ namespace tr1 return __detail::__ellint_1<__type>(__k, __phi); } - // 5.2.1.13 Incomplete elliptic integrals of the second kind. inline float ellint_2f(float __k, float __phi) { return __detail::__ellint_2<float>(__k, __phi); } @@ -297,6 +296,7 @@ namespace tr1 ellint_2l(long double __k, long double __phi) { return __detail::__ellint_2<long double>(__k, __phi); } + /// 5.2.1.13 Incomplete elliptic integrals of the second kind. template<typename _Tp, typename _Tpp> inline typename __gnu_cxx::__promote_2<_Tp, _Tpp>::__type ellint_2(_Tp __k, _Tpp __phi) @@ -305,7 +305,6 @@ namespace tr1 return __detail::__ellint_2<__type>(__k, __phi); } - // 5.2.1.14 Incomplete elliptic integrals of the third kind. inline float ellint_3f(float __k, float __nu, float __phi) { return __detail::__ellint_3<float>(__k, __nu, __phi); } @@ -314,6 +313,7 @@ namespace tr1 ellint_3l(long double __k, long double __nu, long double __phi) { return __detail::__ellint_3<long double>(__k, __nu, __phi); } + /// 5.2.1.14 Incomplete elliptic integrals of the third kind. template<typename _Tp, typename _Tpn, typename _Tpp> inline typename __gnu_cxx::__promote_3<_Tp, _Tpn, _Tpp>::__type ellint_3(_Tp __k, _Tpn __nu, _Tpp __phi) @@ -322,7 +322,6 @@ namespace tr1 return __detail::__ellint_3<__type>(__k, __nu, __phi); } - // 5.2.1.15 Exponential integrals. inline float expintf(float __x) { return __detail::__expint<float>(__x); } @@ -331,6 +330,7 @@ namespace tr1 expintl(long double __x) { return __detail::__expint<long double>(__x); } + /// 5.2.1.15 Exponential integrals. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type expint(_Tp __x) @@ -339,7 +339,6 @@ namespace tr1 return __detail::__expint<__type>(__x); } - // 5.2.1.16 Hermite polynomials. inline float hermitef(unsigned int __n, float __x) { return __detail::__poly_hermite<float>(__n, __x); } @@ -348,6 +347,7 @@ namespace tr1 hermitel(unsigned int __n, long double __x) { return __detail::__poly_hermite<long double>(__n, __x); } + /// 5.2.1.16 Hermite polynomials. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type hermite(unsigned int __n, _Tp __x) @@ -356,7 +356,6 @@ namespace tr1 return __detail::__poly_hermite<__type>(__n, __x); } - // 5.2.1.17 Hypergeometric functions. inline float hypergf(float __a, float __b, float __c, float __x) { return __detail::__hyperg<float>(__a, __b, __c, __x); } @@ -365,6 +364,7 @@ namespace tr1 hypergl(long double __a, long double __b, long double __c, long double __x) { return __detail::__hyperg<long double>(__a, __b, __c, __x); } + /// 5.2.1.17 Hypergeometric functions. template<typename _Tpa, typename _Tpb, typename _Tpc, typename _Tp> inline typename __gnu_cxx::__promote_4<_Tpa, _Tpb, _Tpc, _Tp>::__type hyperg(_Tpa __a, _Tpb __b, _Tpc __c, _Tp __x) @@ -373,7 +373,6 @@ namespace tr1 return __detail::__hyperg<__type>(__a, __b, __c, __x); } - // 5.2.1.18 Laguerre polynomials. inline float laguerref(unsigned int __n, float __x) { return __detail::__laguerre<float>(__n, __x); } @@ -382,6 +381,7 @@ namespace tr1 laguerrel(unsigned int __n, long double __x) { return __detail::__laguerre<long double>(__n, __x); } + /// 5.2.1.18 Laguerre polynomials. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type laguerre(unsigned int __n, _Tp __x) @@ -390,7 +390,6 @@ namespace tr1 return __detail::__laguerre<__type>(__n, __x); } - // 5.2.1.19 Legendre polynomials. inline float legendref(unsigned int __n, float __x) { return __detail::__poly_legendre_p<float>(__n, __x); } @@ -399,6 +398,7 @@ namespace tr1 legendrel(unsigned int __n, long double __x) { return __detail::__poly_legendre_p<long double>(__n, __x); } + /// 5.2.1.19 Legendre polynomials. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type legendre(unsigned int __n, _Tp __x) @@ -407,7 +407,6 @@ namespace tr1 return __detail::__poly_legendre_p<__type>(__n, __x); } - // 5.2.1.20 Riemann zeta function. inline float riemann_zetaf(float __x) { return __detail::__riemann_zeta<float>(__x); } @@ -416,6 +415,7 @@ namespace tr1 riemann_zetal(long double __x) { return __detail::__riemann_zeta<long double>(__x); } + /// 5.2.1.20 Riemann zeta function. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type riemann_zeta(_Tp __x) @@ -424,7 +424,6 @@ namespace tr1 return __detail::__riemann_zeta<__type>(__x); } - // 5.2.1.21 Spherical Bessel functions. inline float sph_besself(unsigned int __n, float __x) { return __detail::__sph_bessel<float>(__n, __x); } @@ -433,6 +432,7 @@ namespace tr1 sph_bessell(unsigned int __n, long double __x) { return __detail::__sph_bessel<long double>(__n, __x); } + /// 5.2.1.21 Spherical Bessel functions. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type sph_bessel(unsigned int __n, _Tp __x) @@ -441,7 +441,6 @@ namespace tr1 return __detail::__sph_bessel<__type>(__n, __x); } - // 5.2.1.22 Spherical associated Legendre functions. inline float sph_legendref(unsigned int __l, unsigned int __m, float __theta) { return __detail::__sph_legendre<float>(__l, __m, __theta); } @@ -450,6 +449,7 @@ namespace tr1 sph_legendrel(unsigned int __l, unsigned int __m, long double __theta) { return __detail::__sph_legendre<long double>(__l, __m, __theta); } + /// 5.2.1.22 Spherical associated Legendre functions. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type sph_legendre(unsigned int __l, unsigned int __m, _Tp __theta) @@ -458,7 +458,6 @@ namespace tr1 return __detail::__sph_legendre<__type>(__l, __m, __theta); } - // 5.2.1.23 Spherical Neumann functions. inline float sph_neumannf(unsigned int __n, float __x) { return __detail::__sph_neumann<float>(__n, __x); } @@ -467,6 +466,7 @@ namespace tr1 sph_neumannl(unsigned int __n, long double __x) { return __detail::__sph_neumann<long double>(__n, __x); } + /// 5.2.1.23 Spherical Neumann functions. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type sph_neumann(unsigned int __n, _Tp __x) @@ -475,7 +475,7 @@ namespace tr1 return __detail::__sph_neumann<__type>(__n, __x); } - /* @} */ // group tr1_math_spec_func + /* @} */ // tr1_math_spec_func } } diff --git a/libstdc++-v3/include/tr1/ell_integral.tcc b/libstdc++-v3/include/tr1/ell_integral.tcc index 7eaab6f..404cc27 100644 --- a/libstdc++-v3/include/tr1/ell_integral.tcc +++ b/libstdc++-v3/include/tr1/ell_integral.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -55,14 +55,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -753,9 +746,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/exp_integral.tcc b/libstdc++-v3/include/tr1/exp_integral.tcc index 58c62f2..5dff27c 100644 --- a/libstdc++-v3/include/tr1/exp_integral.tcc +++ b/libstdc++-v3/include/tr1/exp_integral.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -60,14 +60,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -530,9 +523,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/gamma.tcc b/libstdc++-v3/include/tr1/gamma.tcc index 06a88d9..892dacd 100644 --- a/libstdc++-v3/include/tr1/gamma.tcc +++ b/libstdc++-v3/include/tr1/gamma.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -58,15 +58,7 @@ namespace std { namespace tr1 { - - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -477,9 +469,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/hypergeometric.tcc b/libstdc++-v3/include/tr1/hypergeometric.tcc index 29c388f..5e6902f 100644 --- a/libstdc++-v3/include/tr1/hypergeometric.tcc +++ b/libstdc++-v3/include/tr1/hypergeometric.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -54,14 +54,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -780,9 +773,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/legendre_function.tcc b/libstdc++-v3/include/tr1/legendre_function.tcc index da49a3a..8c3f877 100644 --- a/libstdc++-v3/include/tr1/legendre_function.tcc +++ b/libstdc++-v3/include/tr1/legendre_function.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -59,14 +59,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -161,7 +154,8 @@ namespace tr1 _Tp __p_mm = _Tp(1); if (__m > 0) { - // Two square roots seem more accurate more of the time than just one. + // Two square roots seem more accurate more of the time + // than just one. _Tp __root = std::sqrt(_Tp(1) - __x) * std::sqrt(_Tp(1) + __x); _Tp __fact = _Tp(1); for (unsigned int __i = 1; __i <= __m; ++__i) @@ -310,9 +304,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/modified_bessel_func.tcc b/libstdc++-v3/include/tr1/modified_bessel_func.tcc index 912f99f..98aab8d 100644 --- a/libstdc++-v3/include/tr1/modified_bessel_func.tcc +++ b/libstdc++-v3/include/tr1/modified_bessel_func.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -61,14 +61,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -442,9 +435,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/poly_hermite.tcc b/libstdc++-v3/include/tr1/poly_hermite.tcc index 2d8ccfe..9851e80 100644 --- a/libstdc++-v3/include/tr1/poly_hermite.tcc +++ b/libstdc++-v3/include/tr1/poly_hermite.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -52,14 +52,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -130,9 +123,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/poly_laguerre.tcc b/libstdc++-v3/include/tr1/poly_laguerre.tcc index 4164d90..24cdd18 100644 --- a/libstdc++-v3/include/tr1/poly_laguerre.tcc +++ b/libstdc++-v3/include/tr1/poly_laguerre.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -54,14 +54,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -335,9 +328,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/riemann_zeta.tcc b/libstdc++-v3/include/tr1/riemann_zeta.tcc index 40277c0..62512f8 100644 --- a/libstdc++-v3/include/tr1/riemann_zeta.tcc +++ b/libstdc++-v3/include/tr1/riemann_zeta.tcc @@ -1,6 +1,6 @@ // Special functions -*- C++ -*- -// Copyright (C) 2006-2007 +// Copyright (C) 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -57,14 +57,7 @@ namespace tr1 // [5.2] Special functions - /** - * @ingroup tr1_math_spec_func - * @{ - */ - - // // Implementation-space details. - // namespace __detail { @@ -441,9 +434,6 @@ namespace tr1 } } // namespace std::tr1::__detail - - /* @} */ // group tr1_math_spec_func - } } diff --git a/libstdc++-v3/include/tr1/special_function_util.h b/libstdc++-v3/include/tr1/special_function_util.h index 2f33c39..a07a193 100644 --- a/libstdc++-v3/include/tr1/special_function_util.h +++ b/libstdc++-v3/include/tr1/special_function_util.h @@ -42,7 +42,6 @@ #ifndef _GLIBCXX_TR1_SPECIAL_FUNCTION_UTIL_H #define _GLIBCXX_TR1_SPECIAL_FUNCTION_UTIL_H 1 -// namespace std::tr1 namespace std { namespace tr1 @@ -51,21 +50,17 @@ namespace tr1 namespace __detail { - /// - /// @brief A class to encapsulate type dependent floating point - /// constants. Not everything will be able to be expressed - /// as type logic. - /// - template <typename _Tp> + /// A class to encapsulate type dependent floating point + /// constants. Not everything will be able to be expressed as + /// type logic. + template<typename _Tp> struct __floating_point_constant { static const _Tp __value; }; - /// - /// @brief A structure for numeric constants. - /// + /// A structure for numeric constants. template<typename _Tp> struct __numeric_constants { @@ -111,15 +106,13 @@ namespace tr1 }; - /// - /// @brief This is a wrapper for the isnan function. - /// Otherwise, for NaN, all comparisons result in false. - /// If/when we build a std::isnan out of intrinsics, this - /// will disappear completely in favor of std::isnan. - /// #if _GLIBCXX_USE_C99_MATH && !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC - template <typename _Tp> + /// This is a wrapper for the isnan function. Otherwise, for NaN, + /// all comparisons result in false. If/when we build a std::isnan + /// out of intrinsics, this will disappear completely in favor of + /// std::isnan. + template<typename _Tp> inline bool __isnan(const _Tp __x) { return std::isnan(__x); @@ -127,19 +120,19 @@ namespace tr1 #else - template <typename _Tp> + template<typename _Tp> inline bool __isnan(const _Tp __x) { return __builtin_isnan(__x); } - template <> + template<> inline bool __isnan<float>(const float __x) { return __builtin_isnanf(__x); } - template <> + template<> inline bool __isnan<long double>(const long double __x) { return __builtin_isnanl(__x); diff --git a/libstdc++-v3/include/tr1/tuple b/libstdc++-v3/include/tr1/tuple index e4185e2..09ee501 100644 --- a/libstdc++-v3/include/tr1/tuple +++ b/libstdc++-v3/include/tr1/tuple @@ -246,7 +246,7 @@ namespace tr1 template<typename _Tp> struct tuple_size; - /// @brief class tuple_size + /// class tuple_size template<typename... _Elements> struct tuple_size<tuple<_Elements...> > { diff --git a/libstdc++-v3/include/tr1/type_traits b/libstdc++-v3/include/tr1/type_traits index 4533ee5..734eec6 100644 --- a/libstdc++-v3/include/tr1/type_traits +++ b/libstdc++-v3/include/tr1/type_traits @@ -183,7 +183,7 @@ namespace tr1 template<typename _From, typename _To, bool = (is_void<_From>::value || is_void<_To>::value || is_function<_To>::value || is_array<_To>::value - // This special case is here only to avoid warnings. + // This special case is here only to avoid warnings. || (is_floating_point<typename remove_reference<_From>::type>::value && __is_int_or_cref<_To>::__value))> @@ -206,7 +206,7 @@ namespace tr1 __is_convertible_helper<_From, _To>::__value> { }; - /// @brief reference modifications [4.7.2]. + // reference modifications [4.7.2]. template<typename _Tp> struct remove_reference { typedef _Tp type; }; @@ -230,7 +230,7 @@ namespace tr1 : public __add_reference_helper<_Tp> { }; - /// @brief other transformations [4.8]. + // other transformations [4.8]. template<std::size_t _Len, std::size_t _Align> struct aligned_storage { diff --git a/libstdc++-v3/include/tr1_impl/array b/libstdc++-v3/include/tr1_impl/array index 7a13ba8..437670f 100644 --- a/libstdc++-v3/include/tr1_impl/array +++ b/libstdc++-v3/include/tr1_impl/array @@ -36,7 +36,7 @@ namespace std { _GLIBCXX_BEGIN_NAMESPACE_TR1 - /// @brief struct array. + /// array. /// NB: Requires complete type _Tp. template<typename _Tp, std::size_t _Nm> struct array @@ -216,8 +216,14 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { std::swap_ranges(__one.begin(), __one.end(), __two.begin()); } // Tuple interface to class template array [6.2.2.5]. - template<typename _Tp> class tuple_size; - template<int _Int, typename _Tp> class tuple_element; + + /// tuple_size + template<typename _Tp> + class tuple_size; + + /// tuple_element + template<int _Int, typename _Tp> + class tuple_element; template<typename _Tp, std::size_t _Nm> struct tuple_size<array<_Tp, _Nm> > diff --git a/libstdc++-v3/include/tr1_impl/boost_shared_ptr.h b/libstdc++-v3/include/tr1_impl/boost_shared_ptr.h index 53f8c0f..a3fd80e8 100644 --- a/libstdc++-v3/include/tr1_impl/boost_shared_ptr.h +++ b/libstdc++-v3/include/tr1_impl/boost_shared_ptr.h @@ -195,7 +195,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 #endif /** - * @class shared_ptr <tr1/memory> + * @class __shared_ptr * * A smart pointer with reference-counted copy semantics. * The object pointed to is deleted when the last shared_ptr pointing to @@ -230,7 +230,8 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 } // - // Requirements: _Deleter's copy constructor and destructor must not throw + // Requirements: _Deleter's copy constructor and destructor must + // not throw // // __shared_ptr will release __p by calling __d(__p) // @@ -252,8 +253,9 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 #ifdef _GLIBCXX_INCLUDE_AS_CXX0X // - // Requirements: _Deleter's copy constructor and destructor must not throw - // _Alloc's copy constructor and destructor must not throw. + // Requirements: _Deleter's copy constructor and destructor must + // not throw _Alloc's copy constructor and destructor must not + // throw. // // __shared_ptr will release __p by calling __d(__p) // @@ -811,7 +813,8 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 }; - // The actual TR1 shared_ptr, with forwarding constructors and + /// shared_ptr + // The actual shared_ptr, with forwarding constructors and // assignment operators. template<typename _Tp> class shared_ptr @@ -965,7 +968,8 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 } - // The actual TR1 weak_ptr, with forwarding constructors and + /// weak_ptr + // The actual weak_ptr, with forwarding constructors and // assignment operators. template<typename _Tp> class weak_ptr @@ -1021,7 +1025,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 } }; - + /// enable_shared_from_this template<typename _Tp> class enable_shared_from_this { diff --git a/libstdc++-v3/include/tr1_impl/cmath b/libstdc++-v3/include/tr1_impl/cmath index 3bbbda2..afb05e2 100644 --- a/libstdc++-v3/include/tr1_impl/cmath +++ b/libstdc++-v3/include/tr1_impl/cmath @@ -298,8 +298,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 #if _GLIBCXX_USE_C99_MATH #if !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC - /// @brief Function template definitions [8.16.3]. - // + /// Function template definitions [8.16.3]. using std::signbit; using std::fpclassify; @@ -320,8 +319,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 #if _GLIBCXX_USE_C99_MATH_TR1 - /// @brief Additional overloads [8.16.4]. - // + /// Additional overloads [8.16.4]. using std::acos; inline float diff --git a/libstdc++-v3/include/tr1_impl/complex b/libstdc++-v3/include/tr1_impl/complex index 5c25cae..e7d433e 100644 --- a/libstdc++-v3/include/tr1_impl/complex +++ b/libstdc++-v3/include/tr1_impl/complex @@ -51,7 +51,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 template<typename _Tp> std::complex<_Tp> fabs(const std::complex<_Tp>&); #endif - /// @brief acos(__z) [8.1.2]. + /// acos(__z) [8.1.2]. // Effects: Behaves the same as C99 function cacos, defined // in subclause 7.3.5.1. template<typename _Tp> @@ -87,7 +87,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return __complex_acos(__z); } #endif - /// @brief asin(__z) [8.1.3]. + /// asin(__z) [8.1.3]. // Effects: Behaves the same as C99 function casin, defined // in subclause 7.3.5.2. template<typename _Tp> @@ -123,7 +123,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return __complex_asin(__z); } #endif - /// @brief atan(__z) [8.1.4]. + /// atan(__z) [8.1.4]. // Effects: Behaves the same as C99 function catan, defined // in subclause 7.3.5.3. template<typename _Tp> @@ -167,7 +167,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return __complex_atan(__z); } #endif - /// @brief acosh(__z) [8.1.5]. + /// acosh(__z) [8.1.5]. // Effects: Behaves the same as C99 function cacosh, defined // in subclause 7.3.6.1. template<typename _Tp> @@ -206,7 +206,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return __complex_acosh(__z); } #endif - /// @brief asinh(__z) [8.1.6]. + /// asinh(__z) [8.1.6]. // Effects: Behaves the same as C99 function casin, defined // in subclause 7.3.6.2. template<typename _Tp> @@ -245,7 +245,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return __complex_asinh(__z); } #endif - /// @brief atanh(__z) [8.1.7]. + /// atanh(__z) [8.1.7]. // Effects: Behaves the same as C99 function catanh, defined // in subclause 7.3.6.3. template<typename _Tp> @@ -289,7 +289,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return __complex_atanh(__z); } #endif - /// @brief fabs(__z) [8.1.8]. + /// fabs(__z) [8.1.8]. // Effects: Behaves the same as C99 function cabs, defined // in subclause 7.3.8.1. template<typename _Tp> @@ -306,8 +306,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 || (defined(_GLIBCXX_INCLUDE_AS_TR1) \ && !defined(__GXX_EXPERIMENTAL_CXX0X__))) - /// @brief Additional overloads [8.1.9]. - // + /// Additional overloads [8.1.9]. template<typename _Tp> inline typename __gnu_cxx::__promote<_Tp>::__type arg(_Tp __x) diff --git a/libstdc++-v3/include/tr1_impl/functional b/libstdc++-v3/include/tr1_impl/functional index 2a522ed..b819374 100644 --- a/libstdc++-v3/include/tr1_impl/functional +++ b/libstdc++-v3/include/tr1_impl/functional @@ -426,6 +426,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 : binary_function<const volatile _T1*, _T2, _Res> { }; + /// reference_wrapper template<typename _Tp> class reference_wrapper : public _Reference_wrapper_base<typename remove_cv<_Tp>::type> @@ -1336,6 +1337,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 template<typename _Result, typename _Signature> const bool is_bind_expression<_Bind_result<_Result, _Signature> >::value; + /// bind template<typename _Functor, typename... _ArgTypes> inline _Bind<typename _Maybe_wrap_member_pointer<_Functor>::type(_ArgTypes...)> @@ -1751,6 +1753,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 } }; + /// class function template<typename _Res, typename... _ArgTypes> class function<_Res(_ArgTypes...)> : public _Maybe_unary_or_binary_function<_Res, _ArgTypes...>, diff --git a/libstdc++-v3/include/tr1_impl/functional_hash.h b/libstdc++-v3/include/tr1_impl/functional_hash.h index 0dfff38..0611f70 100644 --- a/libstdc++-v3/include/tr1_impl/functional_hash.h +++ b/libstdc++-v3/include/tr1_impl/functional_hash.h @@ -1,6 +1,6 @@ // TR1 functional -*- C++ -*- -// Copyright (C) 2007 Free Software Foundation, Inc. +// Copyright (C) 2007, 2008 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -36,7 +36,7 @@ namespace std { _GLIBCXX_BEGIN_NAMESPACE_TR1 - // Class template hash. + /// Class template hash. // Declaration of default hash functor std::tr1::hash. The types for // which std::tr1::hash<T> is well-defined is in clause 6.3.3. of the PDTR. template<typename _Tp> @@ -46,7 +46,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 operator()(_Tp __val) const; }; - // Partial specializations for pointer types. + /// Partial specializations for pointer types. template<typename _Tp> struct hash<_Tp*> : public std::unary_function<_Tp*, size_t> { @@ -55,7 +55,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { return reinterpret_cast<size_t>(__p); } }; - // Explicit specializations for integer types. + /// Explicit specializations for integer types. #define _TR1_hashtable_define_trivial_hash(_Tp) \ template<> \ inline size_t \ @@ -81,7 +81,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 // Fowler / Noll / Vo (FNV) Hash (type FNV-1a) // (Used by the next specializations of std::tr1::hash.) - // Dummy generic implementation (for sizeof(size_t) != 4, 8). + /// Dummy generic implementation (for sizeof(size_t) != 4, 8). template<size_t = sizeof(size_t)> struct _Fnv_hash { @@ -128,7 +128,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 } }; - // Explicit specializations for floating point types. + /// Explicit specializations for float. template<> inline size_t hash<float>::operator()(float __val) const @@ -142,6 +142,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 return __result; }; + /// Explicit specializations for double. template<> inline size_t hash<double>::operator()(double __val) const @@ -155,11 +156,12 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 return __result; }; + /// Explicit specializations for long double. template<> size_t hash<long double>::operator()(long double __val) const; - // Explicit specialization of member operator for types that are not builtin. + /// Explicit specialization of member operator for non-builtin types. template<> size_t hash<string>::operator()(string) const; diff --git a/libstdc++-v3/include/tr1_impl/random b/libstdc++-v3/include/tr1_impl/random index c10ee57..b45368d 100644 --- a/libstdc++-v3/include/tr1_impl/random +++ b/libstdc++-v3/include/tr1_impl/random @@ -149,8 +149,8 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 } // namespace __detail /** - * Produces random numbers on a given distribution function using a non-uniform - * random number generation engine. + * Produces random numbers on a given distribution function using a + * non-uniform random number generation engine. * * @todo the engine_value_type needs to be studied more carefully. */ diff --git a/libstdc++-v3/include/tr1_impl/regex b/libstdc++-v3/include/tr1_impl/regex index bf4c309..f99e006 100644 --- a/libstdc++-v3/include/tr1_impl/regex +++ b/libstdc++-v3/include/tr1_impl/regex @@ -241,7 +241,7 @@ namespace regex_constants static const match_flag_type format_first_only = 1 << _S_first_only; - // [7.5.3] implementation-defined error type + /// [7.5.3] implementation-defined error type enum error_type { _S_error_collate, @@ -308,7 +308,7 @@ namespace regex_constants // [7.8] Class regex_error /** - * Defines the type of objects thrown as exceptions to report errors from the + * Defines the exception objects thrown report errors from the * regular expression library. */ class regex_error diff --git a/libstdc++-v3/include/tr1_impl/type_traits b/libstdc++-v3/include/tr1_impl/type_traits index 9298aae..4cf97df 100644 --- a/libstdc++-v3/include/tr1_impl/type_traits +++ b/libstdc++-v3/include/tr1_impl/type_traits @@ -67,7 +67,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 _DEFINE_SPEC_##_Order##_HELPER(_Trait<_Type volatile>, _Value) \ _DEFINE_SPEC_##_Order##_HELPER(_Trait<_Type const volatile>, _Value) - /// @brief helper classes [4.3]. + /// helper classes [4.3]. template<typename _Tp, _Tp __v> struct integral_constant { @@ -75,18 +75,23 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 typedef _Tp value_type; typedef integral_constant<_Tp, __v> type; }; + + /// typedef for true_type typedef integral_constant<bool, true> true_type; + + /// typedef for true_type typedef integral_constant<bool, false> false_type; template<typename _Tp, _Tp __v> const _Tp integral_constant<_Tp, __v>::value; - /// @brief primary type categories [4.5.1]. + /// primary type categories [4.5.1]. template<typename> struct is_void : public false_type { }; _DEFINE_SPEC(0, is_void, void, true) + /// is_integral template<typename> struct is_integral : public false_type { }; @@ -106,6 +111,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 _DEFINE_SPEC(0, is_integral, long long, true) _DEFINE_SPEC(0, is_integral, unsigned long long, true) + /// is_floating_point template<typename> struct is_floating_point : public false_type { }; @@ -113,6 +119,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 _DEFINE_SPEC(0, is_floating_point, double, true) _DEFINE_SPEC(0, is_floating_point, long double, true) + /// is_array template<typename> struct is_array : public false_type { }; @@ -125,39 +132,47 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct is_array<_Tp[]> : public true_type { }; + /// is_pointer template<typename> struct is_pointer : public false_type { }; _DEFINE_SPEC(1, is_pointer, _Tp*, true) + /// is_reference template<typename _Tp> struct is_reference; + /// is_function template<typename _Tp> struct is_function; + /// is_member_object_pointer template<typename> struct is_member_object_pointer : public false_type { }; _DEFINE_SPEC(2, is_member_object_pointer, _Tp _Cp::*, !is_function<_Tp>::value) + /// is_member_function_pointer template<typename> struct is_member_function_pointer : public false_type { }; _DEFINE_SPEC(2, is_member_function_pointer, _Tp _Cp::*, is_function<_Tp>::value) + /// is_enum template<typename _Tp> struct is_enum : public integral_constant<bool, __is_enum(_Tp)> { }; + /// is_union template<typename _Tp> struct is_union : public integral_constant<bool, __is_union(_Tp)> { }; + /// is_class template<typename _Tp> struct is_class : public integral_constant<bool, __is_class(_Tp)> @@ -177,9 +192,11 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 static const bool __value = sizeof(__test<_Tp>(0)) == 1; }; + /// is_abstract template<typename _Tp> struct is_abstract; + /// is_function template<typename _Tp> struct is_function : public integral_constant<bool, !(__in_array<_Tp>::__value @@ -188,19 +205,21 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 || is_void<_Tp>::value)> { }; - /// @brief composite type traits [4.5.2]. + /// composite type traits [4.5.2]. template<typename _Tp> struct is_arithmetic : public integral_constant<bool, (is_integral<_Tp>::value || is_floating_point<_Tp>::value)> { }; + /// is_fundamental template<typename _Tp> struct is_fundamental : public integral_constant<bool, (is_arithmetic<_Tp>::value || is_void<_Tp>::value)> { }; + /// is_object template<typename _Tp> struct is_object : public integral_constant<bool, !(is_function<_Tp>::value @@ -208,9 +227,11 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 || is_void<_Tp>::value)> { }; + /// is_member_pointer template<typename _Tp> struct is_member_pointer; + /// is_scalal template<typename _Tp> struct is_scalar : public integral_constant<bool, (is_arithmetic<_Tp>::value @@ -219,10 +240,12 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 || is_member_pointer<_Tp>::value)> { }; + /// is_compound template<typename _Tp> struct is_compound : public integral_constant<bool, !is_fundamental<_Tp>::value> { }; + /// is_member_pointer template<typename _Tp> struct is_member_pointer : public integral_constant<bool, @@ -230,15 +253,17 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 || is_member_function_pointer<_Tp>::value)> { }; - /// @brief type properties [4.5.3]. + /// type properties [4.5.3]. template<typename> struct is_const : public false_type { }; + /// is_const template<typename _Tp> struct is_const<_Tp const> : public true_type { }; + /// is_volatile template<typename> struct is_volatile : public false_type { }; @@ -247,30 +272,36 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct is_volatile<_Tp volatile> : public true_type { }; + /// is_empty template<typename _Tp> struct is_empty : public integral_constant<bool, __is_empty(_Tp)> { }; + /// is_polymorphic template<typename _Tp> struct is_polymorphic : public integral_constant<bool, __is_polymorphic(_Tp)> { }; + /// is_abstract template<typename _Tp> struct is_abstract : public integral_constant<bool, __is_abstract(_Tp)> { }; + /// has_virtual_destructor template<typename _Tp> struct has_virtual_destructor : public integral_constant<bool, __has_virtual_destructor(_Tp)> { }; + /// alignment_of template<typename _Tp> struct alignment_of : public integral_constant<std::size_t, __alignof__(_Tp)> { }; + /// rank template<typename> struct rank : public integral_constant<std::size_t, 0> { }; @@ -283,6 +314,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct rank<_Tp[]> : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { }; + /// extent template<typename, unsigned _Uint = 0> struct extent : public integral_constant<std::size_t, 0> { }; @@ -301,7 +333,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 _Uint - 1>::value> { }; - /// @brief relationships between types [4.6]. + /// relationships between types [4.6]. template<typename, typename> struct is_same : public false_type { }; @@ -310,7 +342,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct is_same<_Tp, _Tp> : public true_type { }; - /// @brief const-volatile modifications [4.7.1]. + /// const-volatile modifications [4.7.1]. template<typename _Tp> struct remove_const { typedef _Tp type; }; @@ -319,6 +351,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct remove_const<_Tp const> { typedef _Tp type; }; + /// remove_volatile template<typename _Tp> struct remove_volatile { typedef _Tp type; }; @@ -327,6 +360,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct remove_volatile<_Tp volatile> { typedef _Tp type; }; + /// remove_cv template<typename _Tp> struct remove_cv { @@ -334,14 +368,17 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 remove_const<typename remove_volatile<_Tp>::type>::type type; }; + /// add_const template<typename _Tp> struct add_const { typedef _Tp const type; }; + /// add_volatile template<typename _Tp> struct add_volatile { typedef _Tp volatile type; }; + /// add_cv template<typename _Tp> struct add_cv { @@ -349,7 +386,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 add_const<typename add_volatile<_Tp>::type>::type type; }; - /// @brief array modifications [4.7.3]. + /// array modifications [4.7.3]. template<typename _Tp> struct remove_extent { typedef _Tp type; }; @@ -362,6 +399,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct remove_extent<_Tp[]> { typedef _Tp type; }; + /// remove_all_extents template<typename _Tp> struct remove_all_extents { typedef _Tp type; }; @@ -374,19 +412,22 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 struct remove_all_extents<_Tp[]> { typedef typename remove_all_extents<_Tp>::type type; }; - /// @brief pointer modifications [4.7.4]. + /// pointer modifications [4.7.4]. #undef _DEFINE_SPEC_BODY #define _DEFINE_SPEC_BODY(_Value) \ { typedef _Tp type; }; + /// remove_pointer template<typename _Tp> struct remove_pointer { typedef _Tp type; }; _DEFINE_SPEC(1, remove_pointer, _Tp*, false) + /// remove_reference template<typename _Tp> struct remove_reference; + /// add_pointer template<typename _Tp> struct add_pointer { typedef typename remove_reference<_Tp>::type* type; }; diff --git a/libstdc++-v3/include/tr1_impl/unordered_map b/libstdc++-v3/include/tr1_impl/unordered_map index 5ecd5c0..bb69479 100644 --- a/libstdc++-v3/include/tr1_impl/unordered_map +++ b/libstdc++-v3/include/tr1_impl/unordered_map @@ -168,6 +168,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { __x.swap(__y); } + /// class unordered_map template<class _Key, class _Tp, class _Hash = hash<_Key>, class _Pred = std::equal_to<_Key>, @@ -215,6 +216,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 #endif }; + /// class unordered_multimap template<class _Key, class _Tp, class _Hash = hash<_Key>, class _Pred = std::equal_to<_Key>, diff --git a/libstdc++-v3/include/tr1_impl/unordered_set b/libstdc++-v3/include/tr1_impl/unordered_set index bdc1575..80b1ec5 100644 --- a/libstdc++-v3/include/tr1_impl/unordered_set +++ b/libstdc++-v3/include/tr1_impl/unordered_set @@ -150,10 +150,8 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 template<class _Value, class _Hash, class _Pred, class _Alloc, bool __cache_hash_code> inline void - swap (__unordered_set<_Value, _Hash, _Pred, - _Alloc, __cache_hash_code>& __x, - __unordered_set<_Value, _Hash, _Pred, - _Alloc, __cache_hash_code>& __y) + swap(__unordered_set<_Value, _Hash, _Pred, _Alloc, __cache_hash_code>& __x, + __unordered_set<_Value, _Hash, _Pred, _Alloc, __cache_hash_code>& __y) { __x.swap(__y); } template<class _Value, class _Hash, class _Pred, class _Alloc, @@ -166,6 +164,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 { __x.swap(__y); } + /// class unordered_set template<class _Value, class _Hash = hash<_Value>, class _Pred = std::equal_to<_Value>, @@ -213,6 +212,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1 #endif }; + /// class unordered_multiset template<class _Value, class _Hash = hash<_Value>, class _Pred = std::equal_to<_Value>, diff --git a/libstdc++-v3/scripts/run_doxygen b/libstdc++-v3/scripts/run_doxygen index 48e40ba..dcaea51 100644 --- a/libstdc++-v3/scripts/run_doxygen +++ b/libstdc++-v3/scripts/run_doxygen @@ -10,7 +10,7 @@ # We can check now that the version of doxygen is >= this variable. -DOXYVER=1.5.4 +DOXYVER=1.5.1 find_doxygen() { local -r v_required=`echo $DOXYVER | \ @@ -156,7 +156,6 @@ fi -e "s=@srcdir@=${srcdir}=g" \ -e "s=@builddir@=${builddir}=g" \ -e "s=@host_alias@=${host_alias}=g" \ - -e "s=@html_output_dir@=html=" \ -e "s=@enabled_sections@=${enabled_sections}=" \ -e "s=@do_html@=${do_html}=" \ -e "s=@do_man@=${do_man}=" \ diff --git a/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc b/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc index 2609c43..5a8ec64 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/error_category/cons/copy_neg.cc @@ -50,7 +50,7 @@ int main() return 0; } -// { dg-error "is private" "" { target *-*-* } 75 } +// { dg-error "is private" "" { target *-*-* } 76 } // { dg-error "within this context" "" { target *-*-* } 29 } // { dg-error "first required here" "" { target *-*-* } 48 } // { dg-excess-errors "copy constructor" } diff --git a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc index ff912c2..dc33931 100644 --- a/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc +++ b/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc @@ -49,8 +49,8 @@ void test01() // { dg-error "instantiated from here" "" { target *-*-* } 41 } // { dg-error "instantiated from here" "" { target *-*-* } 43 } -// { dg-error "invalid use of incomplete type" "" { target *-*-* } 511 } -// { dg-error "declaration of" "" { target *-*-* } 477 } +// { dg-error "invalid use of incomplete type" "" { target *-*-* } 549 } +// { dg-error "declaration of" "" { target *-*-* } 515 } // { dg-excess-errors "At global scope" } // { dg-excess-errors "In instantiation of" } diff --git a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc index 5b2b3dc..0b02e33 100644 --- a/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc +++ b/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc @@ -49,8 +49,8 @@ void test01() // { dg-error "instantiated from here" "" { target *-*-* } 41 } // { dg-error "instantiated from here" "" { target *-*-* } 43 } -// { dg-error "invalid use of incomplete type" "" { target *-*-* } 436 } -// { dg-error "declaration of" "" { target *-*-* } 402 } +// { dg-error "invalid use of incomplete type" "" { target *-*-* } 474 } +// { dg-error "declaration of" "" { target *-*-* } 440 } // { dg-excess-errors "At global scope" } // { dg-excess-errors "In instantiation of" } |