From 78ee80ac8cd369c4772387a374b5f3ce7302c9a5 Mon Sep 17 00:00:00 2001 From: pme Date: Thu, 27 Sep 2001 22:44:24 +0000 Subject: [PATCH] 2001-09-27 Phil Edwards * include/std/*: Add Doxygen hooks. * docs/doxygen/Intro.3: New file, general intro to the man pages. * docs/doxygen/mainpage.doxy: Formatting tweaks. List our own links rather than using a generated index. * docs/doxygen/user.cfg.in: Disable the index, enable man pages. * docs/doxygen/run_doxygen: Massage the generated man pages, using... * docs/doxygen/stdheader.cc: ...this new file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45850 138bc75d-0d04-0410-961f-82ee72b054a4 --- libstdc++-v3/ChangeLog | 10 +++ libstdc++-v3/docs/doxygen/Intro.3 | 24 ++++++ libstdc++-v3/docs/doxygen/mainpage.doxy | 93 +++++++++++--------- libstdc++-v3/docs/doxygen/run_doxygen | 56 +++++++++--- libstdc++-v3/docs/doxygen/stdheader.cc | 146 ++++++++++++++++++++++++++++++++ libstdc++-v3/docs/doxygen/user.cfg.in | 9 +- libstdc++-v3/include/std/algorithm | 5 ++ libstdc++-v3/include/std/bitset | 5 ++ libstdc++-v3/include/std/cassert | 9 ++ libstdc++-v3/include/std/cctype | 9 ++ libstdc++-v3/include/std/cerrno | 9 ++ libstdc++-v3/include/std/cfloat | 9 ++ libstdc++-v3/include/std/ciso646 | 10 +++ libstdc++-v3/include/std/climits | 9 ++ libstdc++-v3/include/std/clocale | 9 ++ libstdc++-v3/include/std/cmath | 9 ++ libstdc++-v3/include/std/complex | 5 ++ libstdc++-v3/include/std/csetjmp | 9 ++ libstdc++-v3/include/std/csignal | 9 ++ libstdc++-v3/include/std/cstdarg | 9 ++ libstdc++-v3/include/std/cstddef | 9 ++ libstdc++-v3/include/std/cstdio | 9 ++ libstdc++-v3/include/std/cstdlib | 9 ++ libstdc++-v3/include/std/cstring | 9 ++ libstdc++-v3/include/std/ctime | 9 ++ libstdc++-v3/include/std/cwchar | 9 ++ libstdc++-v3/include/std/cwctype | 9 ++ libstdc++-v3/include/std/deque | 5 ++ libstdc++-v3/include/std/fstream | 5 ++ libstdc++-v3/include/std/functional | 5 ++ libstdc++-v3/include/std/iomanip | 5 ++ libstdc++-v3/include/std/ios | 5 ++ libstdc++-v3/include/std/iosfwd | 5 ++ libstdc++-v3/include/std/iostream | 5 ++ libstdc++-v3/include/std/istream | 5 ++ libstdc++-v3/include/std/iterator | 5 ++ libstdc++-v3/include/std/limits | 5 ++ libstdc++-v3/include/std/list | 5 ++ libstdc++-v3/include/std/locale | 5 ++ libstdc++-v3/include/std/map | 5 ++ libstdc++-v3/include/std/memory | 5 ++ libstdc++-v3/include/std/numeric | 5 ++ libstdc++-v3/include/std/ostream | 5 ++ libstdc++-v3/include/std/queue | 5 ++ libstdc++-v3/include/std/set | 5 ++ libstdc++-v3/include/std/sstream | 5 ++ libstdc++-v3/include/std/stack | 5 ++ libstdc++-v3/include/std/stdexcept | 5 ++ libstdc++-v3/include/std/streambuf | 5 ++ libstdc++-v3/include/std/string | 5 ++ libstdc++-v3/include/std/utility | 5 ++ libstdc++-v3/include/std/valarray | 5 ++ libstdc++-v3/include/std/vector | 5 ++ 53 files changed, 592 insertions(+), 54 deletions(-) create mode 100644 libstdc++-v3/docs/doxygen/Intro.3 create mode 100644 libstdc++-v3/docs/doxygen/stdheader.cc diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 5fc8051..5c4de1b 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,13 @@ +2001-09-27 Phil Edwards + + * include/std/*: Add Doxygen hooks. + * docs/doxygen/Intro.3: New file, general intro to the man pages. + * docs/doxygen/mainpage.doxy: Formatting tweaks. List our own links + rather than using a generated index. + * docs/doxygen/user.cfg.in: Disable the index, enable man pages. + * docs/doxygen/run_doxygen: Massage the generated man pages, using... + * docs/doxygen/stdheader.cc: ...this new file. + 2001-09-26 Stan Shebs * include/Makefile.am: Remove RCS Id strings. diff --git a/libstdc++-v3/docs/doxygen/Intro.3 b/libstdc++-v3/docs/doxygen/Intro.3 new file mode 100644 index 0000000..5df718b --- /dev/null +++ b/libstdc++-v3/docs/doxygen/Intro.3 @@ -0,0 +1,24 @@ +.\" This man page is released under the FDL as part of libstdc++-v3. +.TH Intro 3 "27 September 2001" "GNU libstdc++-v3" "Standard C++ Library" +.SH NAME +Intro \- Introduction to the GNU libstdc++-v3 man pages +.SH DESCRIPTION + +This should mention the man pages generated for modules. + +.SH FILES + +Lots. Wish I knew enough *roff syntax to list them nicely. + +.SH CONFORMING TO +Almost conforming to +.BI "International Standard ISO/IEC 14882:1998(E), " "Programming Languages --- C++" +(aka the C++ standard), in addition to corrections proposed by the Library +Working Group, +.SM JTC1/SC22/WG21. +.SH SEE ALSO +.UR +http://gcc.gnu.org/libstdc++/ +.UE +for the Frequently Asked Questions, online documentation, and more. + diff --git a/libstdc++-v3/docs/doxygen/mainpage.doxy b/libstdc++-v3/docs/doxygen/mainpage.doxy index a05692b..f1fa54d 100644 --- a/libstdc++-v3/docs/doxygen/mainpage.doxy +++ b/libstdc++-v3/docs/doxygen/mainpage.doxy @@ -1,62 +1,75 @@ /*! \mainpage -

documentation overview

+

Documentation Overview

-

-There are two types of documentation for libstdc++-v3. One is the distribution documentation, which can be read -here. +

There are two types of documentation for libstdc++-v3. One is the + distribution documentation, which can be read online at + http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html + or offline from docs/html/documentation.html in the library source + directory.

-

-The other is the source documentation, of which this is the first page. +

The other type is the source documentation, of which this is the first page. + Here are quick links to the pages which we seem to use the most; a full + index is at the bottom: + +

-

generating this file

-

-This page is automatically generated. The Makefile rule make -doxygen in the libstdc++-v3 build directory generates these pages -using a tool called, appropriately enough, doxygen. To learn more -about doxygen, take a look at the -doxygen webpage . +

Generating this file

+

This page is automatically generated. The Makefile rule make + doxygen in the libstdc++-v3 build directory generates these pages + using a tool called, appropriately enough, Doxygen. To learn more about + Doxygen, take a look at the Doxygen + webpage.

-

-The libstdc++-v3 configuration files needed to generate doxygen output -are located: -

docs/doxygen/user.cfg.in

-

docs/doxygen/maint.cfg.in

+

The libstdc++-v3 configuration files needed to generate doxygen output + are located: +

  • docs/doxygen/user.cfg.in +
  • docs/doxygen/maint.cfg.in +

libstdc++-v3 doxygen style guide

-

-In general, libstdc++-v3 files should be formatted according to the -GNU C++ Coding Standard rules found in the file In general, libstdc++-v3 files should be formatted according to the + GNU C++ Coding Standard rules found in the file C++STYLE. -Before any doxygen-specific formatting tweaks are made, please try to -make sure that the initial formatting is sound. + Before any doxygen-specific formatting tweaks are made, please try to + make sure that the initial formatting is sound.

-

-The formatting guidelines for using libstdc++-v3 with doxygen are -still incomplete. There seems to be a marginal preference for the use -of Java-Doc style formatting, with the idea that the single-line style -(triple-slash) is the least intrusive mechanism for getting -libstdc++-v3 documented and cross-referenced while at the same time -minimizing disruption to the current formatting. +

The formatting guidelines for using libstdc++-v3 with doxygen are still + incomplete. There seems to be a marginal preference for the use of + Java-Doc style formatting, with the idea that the single-line style + (triple-slash) is the least intrusive mechanism for getting libstdc++-v3 + documented and cross-referenced while at the same time minimizing + disruption to the current formatting. Full documentation of functions + (parameter types, return values, etc) will require the slash-splat-splat + "extended C" commenting style.

-

-For the time being, please see include/bits/char_traits.h -which is the test bed for a finished doxygen style guide. +

Full page index

+

Here are entry points to all the pages generated by Doxygen: +

*/ - - - - - - - diff --git a/libstdc++-v3/docs/doxygen/run_doxygen b/libstdc++-v3/docs/doxygen/run_doxygen index 6bd83f0..d515dfd 100644 --- a/libstdc++-v3/docs/doxygen/run_doxygen +++ b/libstdc++-v3/docs/doxygen/run_doxygen @@ -1,6 +1,6 @@ #!/bin/sh -# Runs doxygen. Possibly will massage the output files. +# Runs doxygen and massages the output files. # # Synopsis: run_doxygen --mode=[user|maint] v3srcdir v3builddir # @@ -69,14 +69,6 @@ parse_options() { mode=$arg ;; --mode | --help | -h) print_usage ;; - --version | -v) - # Aw, that's so cuuuute... don't ask, I needed it. - blank= - Id=is - echo You expect this dinky script to track a version? Okay, here - echo it $Id: run_doxygen,v 1.6 2001/07/11 19:35:47 pme Exp $blank - exit 0 - ;; *) # this turned out to be a mess, maybe change to --srcdir=, etc if test $srcdir = unset; then @@ -129,12 +121,56 @@ chmod u+w $outdir echo :: Finished, exit code was $? ) -# mess with output files here? +# Mess with the man pages. We don't need documentation of the internal +# headers, since the man pages for those contain nothing useful anyhow. The +# man pages for doxygen modules need to be renamed (or deleted). And the +# generated #include lines need to be changed from the internal names to the +# standard ones (e.g., "#include " -> "#include "). +# +# File names with embedded spaces (EVIL!) need to be....? renamed or removed? +cd $outdir/man/man3 && { +echo :: Fixing up the man pages... + +# requires GNU tools +find . -name "* *" -print0 | xargs -0 rm +rm *.h.3 + +# can leave SGIextensions.3 alone, it's an okay name +mv s20_3_1_base.3 Intro_functors.3 +mv s20_3_2_arithmetic.3 Arithmetic_functors.3 +mv s20_3_3_comparisons.3 Comparison_functors.3 +mv s20_3_4_logical.3 Logical_functors.3 +mv s20_3_5_negators.3 Negation_functors.3 +mv s20_3_6_binder.3 Binder_functors.3 +mv s20_3_7_adaptors.3 Func_ptr_functors.3 +mv s20_3_8_memadaptors.3 Member_ptr_functors.3 + +# Standardize the displayed header names. If anyone who knows perl cares +# enough to rewrite all this, feel free. This only gets run once a century, +# and I'm off getting coffee then anyhow, so I didn't care enough to make +# this super-fast. +g++ ${srcdir}/docs/doxygen/stdheader.cc -o ./stdheader +problematic=`egrep -l '#include <.*_.*>' [a-z]*.3` +for f in $problematic; do + # this is also slow, but safe and easy to debug + oldh=`sed -n '/#include .*/\1/p' $f` + newh=`echo $oldh | ./stdheader` + sed "s=${oldh}=${newh}=" $f > TEMP + mv TEMP $f +done +rm stdheader + +cp ${srcdir}/docs/doxygen/Intro.3 . +} + +# all done echo :: echo :: Doxygen output begins with echo :: ${outdir}/html_${mode}/index.html echo :: +echo :: Man pages in ${outdir}/man +echo :: exit 0 diff --git a/libstdc++-v3/docs/doxygen/stdheader.cc b/libstdc++-v3/docs/doxygen/stdheader.cc new file mode 100644 index 0000000..d705d01 --- /dev/null +++ b/libstdc++-v3/docs/doxygen/stdheader.cc @@ -0,0 +1,146 @@ +// This is a slow larval-stage kludge to help massage the generated man +// pages. It's used like this: +const char* const usage = +"\nTakes on stdin, whitespace-separated words of the form\n" +"\n" +" [bits/]stl_foo.h\n" +" [bits/]std_foo.h\n" +"\n" +"and writes on stdout the nearest matching standard header name.\n" +"\n" +"Takes no command-line arguments.\n" +"\n"; + +#include +#include +#include + +typedef std::map Map; + +Map headers; + +void init_map() +{ + // Enter the glamourous world of data entry!! Maintain these! + headers["algo.h"] = "algorithm"; + headers["algobase.h"] = "algorithm"; + headers["algorithm.h"] = "algorithm"; + headers["alloc.h"] = "memory"; + headers["basic_ios.h"] = "ios"; + headers["basic_ios.tcc"] = "ios"; + headers["basic_string.h"] = "string"; + headers["basic_string.tcc"] = "string"; + headers["bitset.h"] = "bitset"; + headers["bvector.h"] = "vector"; + //headers["char_traits.h"] uhhhhhh + headers["complex.h"] = "complex"; + //headers["construct.h"] stl_construct.h entirely internal + headers["deque.h"] = "deque"; + headers["fstream.h"] = "fstream"; + headers["fstream.tcc"] = "fstream"; + headers["function.h"] = "functional"; + headers["functional.h"] = "functional"; + headers["heap.h"] = "algorithm"; + headers["iomanip.h"] = "iomanip"; + headers["ios.h"] = "ios"; + headers["iosfwd.h"] = "iosfwd"; + headers["iostream.h"] = "iostream"; + headers["istream.h"] = "istream"; + headers["istream.tcc"] = "istream"; + headers["iterator.h"] = "iterator"; + headers["iterator_base_funcs.h"] = "iterator"; + headers["iterator_base_types.h"] = "iterator"; + headers["limits.h"] = "limits"; + headers["list.h"] = "list"; + headers["locale.h"] = "locale"; + headers["locale_facets.h"] = "locale"; + headers["locale_facets.tcc"] = "locale"; + headers["map.h"] = "map"; + headers["memory.h"] = "memory"; + headers["multimap.h"] = "map"; + headers["multiset.h"] = "set"; + headers["numeric.h"] = "numeric"; + headers["ostream.h"] = "ostream"; + headers["ostream.tcc"] = "ostream"; + headers["pair.h"] = "utility"; + //headers["pthread_alloc.h"] who knows + headers["queue.h"] = "queue"; + headers["raw_storage_iter.h"] = "memory"; + headers["relops.h"] = "utility"; + headers["set.h"] = "set"; + headers["sstream.h"] = "sstream"; + headers["sstream.tcc"] = "sstream"; + headers["stack.h"] = "stack"; + headers["stdexcept.h"] = "stdexcept"; + headers["streambuf.h"] = "streambuf"; + headers["streambuf.tcc"] = "streambuf"; + headers["string.h"] = "string"; + headers["tempbuf.h"] = "memory"; + //headers["threads.h"] who knows + headers["tree.h"] = "backward/tree.h"; + headers["uninitialized.h"] = "memory"; + headers["utility.h"] = "utility"; + headers["valarray.h"] = "valarray"; + headers["valarray_array.h"] = "valarray"; + headers["valarray_array.tcc"] = "valarray"; + headers["valarray_meta.h"] = "valarray"; + headers["vector.h"] = "vector"; + + // C wrappers -- probably was an easier way to do these, but oh well + headers["cassert.h"] = "cassert"; + headers["cctype.h"] = "cctype"; + headers["cerrno.h"] = "cerrno"; + headers["cfloat.h"] = "cfloat"; + headers["climits.h"] = "climits"; + headers["clocale.h"] = "clocale"; + headers["cmath.h"] = "cmath"; + headers["csetjmp.h"] = "csetjmp"; + headers["csignal.h"] = "csignal"; + headers["cstdarg.h"] = "cstdarg"; + headers["cstddef.h"] = "cstddef"; + headers["cstdio.h"] = "cstdio"; + headers["cstdlib.h"] = "cstdlib"; + headers["cstring.h"] = "cstring"; + headers["ctime.h"] = "ctime"; + headers["cwchar.h"] = "cwchar"; + headers["cwctype.h"] = "cwctype"; +} + + +void do_word (std::string const& longheader) +{ + std::string::size_type start = 0; + + if (longheader.substr(start,5) == "bits/") start += 5; + if ((longheader.substr(start,4) == "stl_") || + (longheader.substr(start,4) == "std_")) + { + start += 4; + } + + // come on, gdb, find `p' already... + const char* p = longheader.substr(start).c_str(); + Map::iterator word = headers.find(p); + if (word != headers.end()) + std::cout << word->second << '\n'; + else std::cout << "MAYBE_AN_ERROR_MESSAGE_HERE\n"; +} + + +int main (int argc, char**) +{ + if (argc > 1) + { + std::cerr << usage; + exit(0); + } + + init_map(); + + std::string w; + while (std::cin >> w) + do_word (w); +} + +// vim:ts=4:et: + diff --git a/libstdc++-v3/docs/doxygen/user.cfg.in b/libstdc++-v3/docs/doxygen/user.cfg.in index 97c0ca4..a78cd5c 100644 --- a/libstdc++-v3/docs/doxygen/user.cfg.in +++ b/libstdc++-v3/docs/doxygen/user.cfg.in @@ -344,13 +344,14 @@ RECURSIVE = YES # subdirectory from a directory tree whose root is specified with the INPUT tag. EXCLUDE = include/c \ - include/c_shadow + include/c_shadow \ + docs/doxygen/stdheader.cc # If the value of the INPUT tag contains directories, you can use the # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude # certain files from those directories. -EXCLUDE_PATTERNS = +EXCLUDE_PATTERNS = CVS # The EXAMPLE_PATH tag can be used to specify one or more files or # directories that contain example code fragments that are included (see @@ -477,7 +478,7 @@ TOC_EXPAND = NO # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. -DISABLE_INDEX = NO +DISABLE_INDEX = YES # This tag can be used to set the number of enum values (range [1..20]) # that doxygen will group on one line in the generated HTML documentation. @@ -601,7 +602,7 @@ RTF_STYLESHEET_FILE = # If the GENERATE_MAN tag is set to YES (the default) Doxygen will # generate man pages -GENERATE_MAN = NO +GENERATE_MAN = YES # The MAN_OUTPUT tag is used to specify where the man pages will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be diff --git a/libstdc++-v3/include/std/algorithm b/libstdc++-v3/include/std/algorithm index 06a553f..33ed872 100644 --- a/libstdc++-v3/include/std/algorithm +++ b/libstdc++-v3/include/std/algorithm @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file algorithm + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_ALGORITHM #include #endif diff --git a/libstdc++-v3/include/std/bitset b/libstdc++-v3/include/std/bitset index 9ce6c79..830ee7c 100644 --- a/libstdc++-v3/include/std/bitset +++ b/libstdc++-v3/include/std/bitset @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file bitset + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_BITSET #include #endif diff --git a/libstdc++-v3/include/std/cassert b/libstdc++-v3/include/std/cassert index fe0b8b5..5cb1e01 100644 --- a/libstdc++-v3/include/std/cassert +++ b/libstdc++-v3/include/std/cassert @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cassert + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c assert.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + // This one should not have include guards. #include diff --git a/libstdc++-v3/include/std/cctype b/libstdc++-v3/include/std/cctype index 868e4be..b5bf928 100644 --- a/libstdc++-v3/include/std/cctype +++ b/libstdc++-v3/include/std/cctype @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cctype + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c ctype.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CCTYPE #include #endif diff --git a/libstdc++-v3/include/std/cerrno b/libstdc++-v3/include/std/cerrno index b7bfe3a..0c17749 100644 --- a/libstdc++-v3/include/std/cerrno +++ b/libstdc++-v3/include/std/cerrno @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cerrno + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c errno.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CERRNO #include #endif diff --git a/libstdc++-v3/include/std/cfloat b/libstdc++-v3/include/std/cfloat index d91824d..fa5756d 100644 --- a/libstdc++-v3/include/std/cfloat +++ b/libstdc++-v3/include/std/cfloat @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cfloat + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c float.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CFLOAT #include #endif diff --git a/libstdc++-v3/include/std/ciso646 b/libstdc++-v3/include/std/ciso646 index f5dd444..c9f49fb 100644 --- a/libstdc++-v3/include/std/ciso646 +++ b/libstdc++-v3/include/std/ciso646 @@ -26,3 +26,13 @@ // the GNU General Public License. This exception does not however // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. + +/** @file ciso646 + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c iso646.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + diff --git a/libstdc++-v3/include/std/climits b/libstdc++-v3/include/std/climits index afadc64..345ad61 100644 --- a/libstdc++-v3/include/std/climits +++ b/libstdc++-v3/include/std/climits @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file climits + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c limits.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CLIMITS #include #endif diff --git a/libstdc++-v3/include/std/clocale b/libstdc++-v3/include/std/clocale index 8a62dfa..3775010 100644 --- a/libstdc++-v3/include/std/clocale +++ b/libstdc++-v3/include/std/clocale @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file clocale + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c locale.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CLOCALE #include #endif diff --git a/libstdc++-v3/include/std/cmath b/libstdc++-v3/include/std/cmath index 95da649..d565307 100644 --- a/libstdc++-v3/include/std/cmath +++ b/libstdc++-v3/include/std/cmath @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cmath + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c math.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CMATH #include #endif diff --git a/libstdc++-v3/include/std/complex b/libstdc++-v3/include/std/complex index dfc144f..6b7abcf 100644 --- a/libstdc++-v3/include/std/complex +++ b/libstdc++-v3/include/std/complex @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file complex + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_COMPLEX #include #endif diff --git a/libstdc++-v3/include/std/csetjmp b/libstdc++-v3/include/std/csetjmp index ce6fb32..daf11b3 100644 --- a/libstdc++-v3/include/std/csetjmp +++ b/libstdc++-v3/include/std/csetjmp @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file csetjmp + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c setjmp.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSETJMP #include #endif diff --git a/libstdc++-v3/include/std/csignal b/libstdc++-v3/include/std/csignal index b3da42a..3790ff5 100644 --- a/libstdc++-v3/include/std/csignal +++ b/libstdc++-v3/include/std/csignal @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file csignal + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c signal.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSIGNAL #include #endif diff --git a/libstdc++-v3/include/std/cstdarg b/libstdc++-v3/include/std/cstdarg index 36032b2..8dfe625 100644 --- a/libstdc++-v3/include/std/cstdarg +++ b/libstdc++-v3/include/std/cstdarg @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cstdarg + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c stdarg.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSTDARG #include #endif diff --git a/libstdc++-v3/include/std/cstddef b/libstdc++-v3/include/std/cstddef index 086bb72..4b3d1f5 100644 --- a/libstdc++-v3/include/std/cstddef +++ b/libstdc++-v3/include/std/cstddef @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cstddef + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c stddef.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSTDDEF #include #endif diff --git a/libstdc++-v3/include/std/cstdio b/libstdc++-v3/include/std/cstdio index 4d8aced..b546585 100644 --- a/libstdc++-v3/include/std/cstdio +++ b/libstdc++-v3/include/std/cstdio @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cstdio + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c stdio.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSTDIO #include #endif diff --git a/libstdc++-v3/include/std/cstdlib b/libstdc++-v3/include/std/cstdlib index 7796c6b..2feeb53 100644 --- a/libstdc++-v3/include/std/cstdlib +++ b/libstdc++-v3/include/std/cstdlib @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cstdlib + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c stdlib.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSTDLIB #include #endif diff --git a/libstdc++-v3/include/std/cstring b/libstdc++-v3/include/std/cstring index 8d30ba8..5652803 100644 --- a/libstdc++-v3/include/std/cstring +++ b/libstdc++-v3/include/std/cstring @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cstring + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c string.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CSTRING #include #endif diff --git a/libstdc++-v3/include/std/ctime b/libstdc++-v3/include/std/ctime index b19136e..e1d6bc9 100644 --- a/libstdc++-v3/include/std/ctime +++ b/libstdc++-v3/include/std/ctime @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file ctime + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c time.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CTIME #include #endif diff --git a/libstdc++-v3/include/std/cwchar b/libstdc++-v3/include/std/cwchar index 311b2e9..aa928d7 100644 --- a/libstdc++-v3/include/std/cwchar +++ b/libstdc++-v3/include/std/cwchar @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cwchar + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c wchar.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CWCHAR #include #endif diff --git a/libstdc++-v3/include/std/cwctype b/libstdc++-v3/include/std/cwctype index 4cf2e7d..b0de79e 100644 --- a/libstdc++-v3/include/std/cwctype +++ b/libstdc++-v3/include/std/cwctype @@ -27,6 +27,15 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file cwctype + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + * + * This is the C++ version of the Standard C Library header @c wctype.h, + * and its contents are (mostly) the same as that header, but are all + * contained in the namespace @c std. + */ + #ifndef _CPP_CWCTYPE #include #endif diff --git a/libstdc++-v3/include/std/deque b/libstdc++-v3/include/std/deque index c8ee81e..222d7ca 100644 --- a/libstdc++-v3/include/std/deque +++ b/libstdc++-v3/include/std/deque @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file deque + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_DEQUE #include #endif diff --git a/libstdc++-v3/include/std/fstream b/libstdc++-v3/include/std/fstream index 1a68f5a..9d6fcfc 100644 --- a/libstdc++-v3/include/std/fstream +++ b/libstdc++-v3/include/std/fstream @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file fstream + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_FSTREAM #include #endif diff --git a/libstdc++-v3/include/std/functional b/libstdc++-v3/include/std/functional index ea48352..10c5525 100644 --- a/libstdc++-v3/include/std/functional +++ b/libstdc++-v3/include/std/functional @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file functional + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_FUNCTIONAL #include #endif diff --git a/libstdc++-v3/include/std/iomanip b/libstdc++-v3/include/std/iomanip index 2aa00fa..5659918 100644 --- a/libstdc++-v3/include/std/iomanip +++ b/libstdc++-v3/include/std/iomanip @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file iomanip + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_IOMANIP #include #endif diff --git a/libstdc++-v3/include/std/ios b/libstdc++-v3/include/std/ios index ff398de..a017dd8 100644 --- a/libstdc++-v3/include/std/ios +++ b/libstdc++-v3/include/std/ios @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file ios + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_IOS #include #endif diff --git a/libstdc++-v3/include/std/iosfwd b/libstdc++-v3/include/std/iosfwd index 3756982..e48516a 100644 --- a/libstdc++-v3/include/std/iosfwd +++ b/libstdc++-v3/include/std/iosfwd @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file iosfwd + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_IOSFWD #include #endif diff --git a/libstdc++-v3/include/std/iostream b/libstdc++-v3/include/std/iostream index a85fd08..a8098c6 100644 --- a/libstdc++-v3/include/std/iostream +++ b/libstdc++-v3/include/std/iostream @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file iostream + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_IOSTREAM #include #endif diff --git a/libstdc++-v3/include/std/istream b/libstdc++-v3/include/std/istream index 9c6bc55..c383506 100644 --- a/libstdc++-v3/include/std/istream +++ b/libstdc++-v3/include/std/istream @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file istream + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_ISTREAM #include #endif diff --git a/libstdc++-v3/include/std/iterator b/libstdc++-v3/include/std/iterator index 2560439..6e42f56 100644 --- a/libstdc++-v3/include/std/iterator +++ b/libstdc++-v3/include/std/iterator @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file iterator + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_ITERATOR #include #endif diff --git a/libstdc++-v3/include/std/limits b/libstdc++-v3/include/std/limits index 8a52c9c..ea55c7f 100644 --- a/libstdc++-v3/include/std/limits +++ b/libstdc++-v3/include/std/limits @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file limits + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_LIMITS #include #endif diff --git a/libstdc++-v3/include/std/list b/libstdc++-v3/include/std/list index a32e18d..51490ee 100644 --- a/libstdc++-v3/include/std/list +++ b/libstdc++-v3/include/std/list @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file list + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_LIST #include #endif diff --git a/libstdc++-v3/include/std/locale b/libstdc++-v3/include/std/locale index 56c416d..5a1d622 100644 --- a/libstdc++-v3/include/std/locale +++ b/libstdc++-v3/include/std/locale @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file locale + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_LOCALE #include #endif diff --git a/libstdc++-v3/include/std/map b/libstdc++-v3/include/std/map index 06c638d..3d10673 100644 --- a/libstdc++-v3/include/std/map +++ b/libstdc++-v3/include/std/map @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file map + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_MAP #include #endif diff --git a/libstdc++-v3/include/std/memory b/libstdc++-v3/include/std/memory index ca98df6..a52f492 100644 --- a/libstdc++-v3/include/std/memory +++ b/libstdc++-v3/include/std/memory @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file memory + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_MEMORY #include #endif diff --git a/libstdc++-v3/include/std/numeric b/libstdc++-v3/include/std/numeric index 32ba67d..0d2aea0 100644 --- a/libstdc++-v3/include/std/numeric +++ b/libstdc++-v3/include/std/numeric @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file numeric + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_NUMERIC #include #endif diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream index 4564be7..eb4fd68 100644 --- a/libstdc++-v3/include/std/ostream +++ b/libstdc++-v3/include/std/ostream @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file ostream + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_OSTREAM #include #endif diff --git a/libstdc++-v3/include/std/queue b/libstdc++-v3/include/std/queue index c4464bf..b3d9cdb 100644 --- a/libstdc++-v3/include/std/queue +++ b/libstdc++-v3/include/std/queue @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file queue + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_QUEUE #include #endif diff --git a/libstdc++-v3/include/std/set b/libstdc++-v3/include/std/set index 62d6718..414b04c 100644 --- a/libstdc++-v3/include/std/set +++ b/libstdc++-v3/include/std/set @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file set + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_SET #include #endif diff --git a/libstdc++-v3/include/std/sstream b/libstdc++-v3/include/std/sstream index 1a393ed..2a53e36 100644 --- a/libstdc++-v3/include/std/sstream +++ b/libstdc++-v3/include/std/sstream @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file sstream + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_SSTREAM #include #endif diff --git a/libstdc++-v3/include/std/stack b/libstdc++-v3/include/std/stack index 793a003..e901f84 100644 --- a/libstdc++-v3/include/std/stack +++ b/libstdc++-v3/include/std/stack @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file stack + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_STACK #include #endif diff --git a/libstdc++-v3/include/std/stdexcept b/libstdc++-v3/include/std/stdexcept index d9e93f2..03e89e8 100644 --- a/libstdc++-v3/include/std/stdexcept +++ b/libstdc++-v3/include/std/stdexcept @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file stdexcept + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_STDEXCEPT #include #endif diff --git a/libstdc++-v3/include/std/streambuf b/libstdc++-v3/include/std/streambuf index ec6c7b5..c0f4dd7 100644 --- a/libstdc++-v3/include/std/streambuf +++ b/libstdc++-v3/include/std/streambuf @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file streambuf + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_STREAMBUF #include #endif diff --git a/libstdc++-v3/include/std/string b/libstdc++-v3/include/std/string index a766cdd..0229afd 100644 --- a/libstdc++-v3/include/std/string +++ b/libstdc++-v3/include/std/string @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file string + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_STRING #include #endif diff --git a/libstdc++-v3/include/std/utility b/libstdc++-v3/include/std/utility index 787e799..28822fa 100644 --- a/libstdc++-v3/include/std/utility +++ b/libstdc++-v3/include/std/utility @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file utility + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_UTILITY #include #endif diff --git a/libstdc++-v3/include/std/valarray b/libstdc++-v3/include/std/valarray index cb13d82..e20b7b8 100644 --- a/libstdc++-v3/include/std/valarray +++ b/libstdc++-v3/include/std/valarray @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file valarray + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_VALARRAY #include #endif diff --git a/libstdc++-v3/include/std/vector b/libstdc++-v3/include/std/vector index ce2f51e..8fa361d 100644 --- a/libstdc++-v3/include/std/vector +++ b/libstdc++-v3/include/std/vector @@ -27,6 +27,11 @@ // invalidate any other reasons why the executable file might be covered by // the GNU General Public License. +/** @file vector + * This is a Standard C++ Library file. You should @c #include this file + * in your programs, rather than any of the "st[dl]_*.h" implementation files. + */ + #ifndef _CPP_VECTOR #include #endif -- 2.7.4