#ifdef _GLIBCXX_USE_C99_STDINT_TR1
-_GLIBCXX_BEGIN_NAMESPACE(std)
-
+namespace std _GLIBCXX_VISIBILITY(default)
+{
/**
* @defgroup chrono Time
* @ingroup utilities
*/
namespace chrono
{
+ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+
template<typename _Rep, typename _Period = ratio<1>>
struct duration;
template<typename _Clock, typename _Dur = typename _Clock::duration>
struct time_point;
+
+ _GLIBCXX_END_NAMESPACE_VERSION
}
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
// 20.8.2.3 specialization of common_type (for duration)
template<typename _Rep1, typename _Period1, typename _Rep2, typename _Period2>
struct common_type<chrono::duration<_Rep1, _Period1>,
public:
typedef chrono::time_point<_Clock, __ct> type;
};
+_GLIBCXX_END_NAMESPACE_VERSION
namespace chrono
{
+ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+
// Primary template for duration_cast impl.
template<typename _ToDur, typename _CF, typename _CR,
bool _NumIsOne = false, bool _DenIsOne = false>
template<typename _Rep, typename _Period>
struct duration
{
- typedef _Rep rep;
+ typedef _Rep rep;
typedef _Period period;
static_assert(!__is_duration<_Rep>::value, "rep cannot be a duration");
#elif defined(_GLIBCXX_USE_GETTIMEOFDAY)
typedef chrono::microseconds duration;
#else
- typedef chrono::seconds duration;
+ typedef chrono::seconds duration;
#endif
typedef duration::rep rep;
struct monotonic_clock
{
typedef chrono::nanoseconds duration;
- typedef duration::rep rep;
- typedef duration::period period;
+ typedef duration::rep rep;
+ typedef duration::period period;
typedef chrono::time_point<monotonic_clock, duration> time_point;
static constexpr bool is_monotonic = true;
#endif
typedef system_clock high_resolution_clock;
+
+ _GLIBCXX_END_NAMESPACE_VERSION
} // namespace chrono
// @} group chrono
-_GLIBCXX_END_NAMESPACE
+} // namespace
#endif //_GLIBCXX_USE_C99_STDINT_TR1