user.cfg.in: Add complex, ratio, intializer_list.

2008-07-15  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/doxygen/user.cfg.in: Add complex, ratio,
	intializer_list.
	(PREDEFINED): Add _GLIBCXX_USE_C99_STDINT_TR1.
	* doc/doxygen/doxygroups.cc: Add std::chrono.
	* include/bits/unique_ptr.h (default_delete, unique_ptr): Add markup.
	* libsupc++/initializer_list (initializer_list): Same.
	* include/std/ratio: Same.
	* include/std/chrono: Same.
	* include/std/complex: Disambiguate file markup.

From-SVN: r137868
This commit is contained in:
Benjamin Kosnik 2008-07-16 07:01:23 +00:00 committed by Benjamin Kosnik
parent 28dde96512
commit ad68e9fce0
9 changed files with 100 additions and 61 deletions

View File

@ -1,3 +1,15 @@
2008-07-15 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Add complex, ratio,
intializer_list.
(PREDEFINED): Add _GLIBCXX_USE_C99_STDINT_TR1.
* doc/doxygen/doxygroups.cc: Add std::chrono.
* include/bits/unique_ptr.h (default_delete, unique_ptr): Add markup.
* libsupc++/initializer_list (initializer_list): Same.
* include/std/ratio: Same.
* include/std/chrono: Same.
* include/std/complex: Disambiguate file markup.
2008-07-15 Chris Fairles <chris.fairles@gmail.com>
* include/std/chrono: New, as per N2661.
@ -81,7 +93,7 @@
PR libstdc++/36451
* doc/xml/manual/allocator.xml: Fix links.
* doc/html/*: Regenerate.
2008-07-09 Joseph Myers <joseph@codesourcery.com>
* libsupc++/unwind-cxx.h (__is_gxx_forced_unwind_class,
@ -97,7 +109,7 @@
PR libstdc++/36552
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
null_metadata.hpp: Remove self-include.
2008-07-09 Joseph Myers <joseph@codesourcery.com>
* testsuite/20_util/make_signed/requirements/typedefs-2.cc,

View File

@ -28,12 +28,15 @@
/** @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::chrono
* @brief ISO C++ 0x entities sub namespace for time and date.
*/
/** @namespace std::placeholders
* @brief ISO C++ 0x entities sub namespace for functional.
*/
/** @namespace std::regex_constants
* @brief ISO C++ 0x entities sub namespace for regex.
*/
/** @namespace std::this_thread
* @brief ISO C++ 0x entities sub namespace for thread.
*/

View File

@ -463,12 +463,14 @@ WARN_LOGFILE =
INPUT = @srcdir@/libsupc++/cxxabi.h \
@srcdir@/libsupc++/cxxabi-forced.h \
@srcdir@/libsupc++/exception \
@srcdir@/libsupc++/initializer_list \
@srcdir@/libsupc++/new \
@srcdir@/libsupc++/typeinfo \
include/algorithm \
include/array \
include/bitset \
include/chrono \
include/complex \
include/condition_variable \
include/deque \
include/fstream \
@ -1168,6 +1170,7 @@ INCLUDE_FILE_PATTERNS =
PREDEFINED = __cplusplus \
__GTHREADS \
__GXX_EXPERIMENTAL_CXX0X__ \
"_GLIBCXX_STD_P= " \
"_GLIBCXX_STD_D= " \
_GLIBCXX_STD=std \
@ -1183,16 +1186,18 @@ PREDEFINED = __cplusplus \
_GLIBCXX_DEPRECATED \
_GLIBCXX_USE_WCHAR_T \
_GLIBCXX_USE_LONG_LONG \
_GLIBCXX_USE_C99_STDINT_TR1 \
__glibcxx_function_requires=// \
__glibcxx_class_requires=// \
__glibcxx_class_requires2=// \
__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 =

View File

@ -40,13 +40,14 @@
#endif
#include <bits/c++config.h>
#include <debug/debug.h>
#include <debug/debug.h>1
#include <type_traits>
#include <utility>
#include <tuple>
_GLIBCXX_BEGIN_NAMESPACE(std)
/// Primary template, default_delete.
template<typename _Tp>
struct default_delete
{
@ -66,6 +67,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 740 - omit specialization for array objects with a compile time length
/// Specialization, default_delete.
template<typename _Tp>
struct default_delete<_Tp[]>
{
@ -78,6 +80,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
}
};
/// 20.6.11.2 unique_ptr for single objects.
template <typename _Tp, typename _Tp_Deleter = default_delete<_Tp> >
class unique_ptr
{
@ -224,7 +227,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__tuple_type _M_t;
};
// 20.6.11.3 unique_ptr for array objects with a runtime length
/// 20.6.11.3 unique_ptr for array objects with a runtime length
// [unique.ptr.runtime]
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 740 - omit specialization for array objects with a compile time length

View File

@ -166,6 +166,7 @@ namespace std
{ return numeric_limits<_Rep>::min(); }
};
/// duration
template<typename _Rep, typename _Period>
struct duration
{
@ -430,61 +431,61 @@ namespace std
typedef duration<int, ratio< 60>> minutes;
typedef duration<int, ratio<3600>> hours;
/// time_point
template<typename _Clock, typename _Duration>
struct time_point
{
typedef _Clock clock;
typedef _Duration duration;
typedef typename duration::rep rep;
typedef typename duration::period period;
time_point()
: __d(duration::zero())
{ }
explicit time_point(const duration& __dur)
: __d(duration::zero() + __dur)
{ }
// conversions
template<typename _Duration2>
time_point(const time_point<clock, _Duration2>& __t)
: __d(__t.time_since_epoch())
{ }
// observer
duration
time_since_epoch() const
{ return __d; }
// arithmetic
time_point&
operator+=(const duration& __dur)
struct time_point
{
__d += __dur;
return *this;
}
typedef _Clock clock;
typedef _Duration duration;
typedef typename duration::rep rep;
typedef typename duration::period period;
time_point&
operator-=(const duration& __dur)
{
__d -= __dur;
return *this;
}
time_point() : __d(duration::zero())
{ }
// special values
// TODO: These should be constexprs.
static const time_point
min()
{ return time_point(duration::min()); }
explicit time_point(const duration& __dur)
: __d(duration::zero() + __dur)
{ }
static const time_point
max()
{ return time_point(duration::max()); }
// conversions
template<typename _Duration2>
time_point(const time_point<clock, _Duration2>& __t)
: __d(__t.time_since_epoch())
{ }
private:
duration __d;
};
// observer
duration
time_since_epoch() const
{ return __d; }
// arithmetic
time_point&
operator+=(const duration& __dur)
{
__d += __dur;
return *this;
}
time_point&
operator-=(const duration& __dur)
{
__d -= __dur;
return *this;
}
// special values
// TODO: These should be constexprs.
static const time_point
min()
{ return time_point(duration::min()); }
static const time_point
max()
{ return time_point(duration::max()); }
private:
duration __d;
};
template<typename _ToDuration, typename _Clock, typename _Duration>
inline time_point<_Clock, _ToDuration>
@ -565,6 +566,7 @@ namespace std
const time_point<_Clock, _Duration2>& __rhs)
{ return !(__lhs < __rhs); }
/// system_clock
struct system_clock
{
#if defined(_GLIBCXX_USE_CLOCK_MONOTONIC) || \

View File

@ -29,7 +29,7 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file complex
/** @file include/complex
* This is a Standard C++ Library header.
*/

View File

@ -120,7 +120,6 @@ namespace std
#endif
}
void
lock()
{

View File

@ -165,6 +165,7 @@ namespace std
template<intmax_t _Num, intmax_t _Den>
const intmax_t ratio<_Num, _Den>::den;
/// ratio_add
template<typename _R1, typename _R2>
struct ratio_add
{
@ -180,6 +181,7 @@ namespace std
__safe_multiply<_R1::den, (_R2::den / __gcd)>::value> type;
};
/// ratio_subtract
template<typename _R1, typename _R2>
struct ratio_subtract
{
@ -188,6 +190,7 @@ namespace std
ratio<-_R2::num, _R2::den>>::type type;
};
/// ratio_multiply
template<typename _R1, typename _R2>
struct ratio_multiply
{
@ -205,6 +208,7 @@ namespace std
(_R2::den / __gcd1)>::value> type;
};
/// ratio_divide
template<typename _R1, typename _R2>
struct ratio_divide
{
@ -215,11 +219,13 @@ namespace std
ratio<_R2::den, _R2::num>>::type type;
};
/// ratio_equal
template<typename _R1, typename _R2>
struct ratio_equal
: integral_constant<bool, _R1::num == _R2::num && _R1::den == _R2::den>
{ };
/// ratio_not_equal
template<typename _R1, typename _R2>
struct ratio_not_equal
: integral_constant<bool, !ratio_equal<_R1, _R2>::value>
@ -243,21 +249,25 @@ namespace std
__ratio_less_simple_impl<_R1, _R2>>::type
{ };
/// ratio_less
template<typename _R1, typename _R2>
struct ratio_less
: __ratio_less_impl<_R1, _R2>::type
{ };
/// ratio_less_equal
template<typename _R1, typename _R2>
struct ratio_less_equal
: integral_constant<bool, !ratio_less<_R2, _R1>::value>
{ };
/// ratio_greater
template<typename _R1, typename _R2>
struct ratio_greater
: integral_constant<bool, ratio_less<_R2, _R1>::value>
{ };
/// ratio_greater_equal
template<typename _R1, typename _R2>
struct ratio_greater_equal
: integral_constant<bool, !ratio_less<_R1, _R2>::value>

View File

@ -28,6 +28,10 @@
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
/** @file initializer_list
* This is a Standard C++ Library header.
*/
#ifndef __CXX_INITIALIZER_LIST
#define __CXX_INITIALIZER_LIST
@ -39,6 +43,7 @@
namespace std
{
/// initializer_list
template<class _E>
class initializer_list
{