diff --git a/libcxx/include/chrono b/libcxx/include/chrono --- a/libcxx/include/chrono +++ b/libcxx/include/chrono @@ -148,11 +148,6 @@ namespace chrono { - -template struct is_clock; // C++20 -template inline constexpr bool is_clock_v = is_clock::value; // C++20 - - // duration arithmetic template constexpr @@ -281,18 +276,6 @@ using sys_seconds = sys_time; // C++20 using sys_days = sys_time; // C++20 -class utc_clock; // C++20 - -template - using utc_time = time_point; // C++20 -using utc_seconds = utc_time; // C++20 - -class tai_clock; // C++20 - -template - using tai_time = time_point; // C++20 -using tai_seconds = tai_time; // C++20 - class file_clock; // C++20 template @@ -319,12 +302,6 @@ using local_seconds = local_time; using local_days = local_time; -// 25.7.9, time_point conversions template // C++20 -struct clock_time_conversion; - -template - auto clock_cast(const time_point& t); - // 25.8.2, class last_spec // C++20 struct last_spec; @@ -639,39 +616,12 @@ constexpr precision to_duration() const noexcept; }; -template - basic_ostream& - operator<<(basic_ostream& os, hh_mm_ss const& hms); - // 26.10, 12/24 hour functions constexpr bool is_am(hours const& h) noexcept; constexpr bool is_pm(hours const& h) noexcept; constexpr hours make12(const hours& h) noexcept; constexpr hours make24(const hours& h, bool is_pm) noexcept; - -// 25.10.2, time zone database // C++20 -struct tzdb; -class tzdb_list; - -// 25.10.2.3, time zone database access // C++20 -const tzdb& get_tzdb(); -tzdb_list& get_tzdb_list(); -const time_zone* locate_zone(string_view tz_name); -const time_zone* current_zone(); - -// 25.10.2.4, remote time zone database support // C++20 -const tzdb& reload_tzdb(); -string remote_version(); - -// 25.10.3, exception classes // C++20 -class nonexistent_local_time; -class ambiguous_local_time; - -// 25.10.4, information classes // C++20 -struct sys_info; -struct local_info; - // 25.10.5, class time_zone // C++20 enum class choose {earliest, latest}; class time_zone; @@ -682,101 +632,6 @@ bool operator<=(const time_zone& x, const time_zone& y) noexcept; bool operator>=(const time_zone& x, const time_zone& y) noexcept; -// 25.10.6, class template zoned_traits // C++20 -template struct zoned_traits; - -// 25.10.7, class template zoned_time // C++20 -template class zoned_time; -using zoned_seconds = zoned_time; - -template - bool operator==(const zoned_time& x, - const zoned_time& y); -template - bool operator!=(const zoned_time& x, - const zoned_time& y); - -// 25.10.8, leap second support // C++20 -class leap; - -bool operator==(const leap& x, const leap& y); -bool operator!=(const leap& x, const leap& y); -bool operator< (const leap& x, const leap& y); -bool operator> (const leap& x, const leap& y); -bool operator<=(const leap& x, const leap& y); -bool operator>=(const leap& x, const leap& y); -template - bool operator==(const leap& x, const sys_time& y); -template - bool operator==(const sys_time& x, const leap& y); -template - bool operator!=(const leap& x, const sys_time& y); -template - bool operator!=(const sys_time& x, const leap& y); -template - bool operator< (const leap& x, const sys_time& y); -template - bool operator< (const sys_time& x, const leap& y); -template - bool operator> (const leap& x, const sys_time& y); -template - bool operator> (const sys_time& x, const leap& y); -template - bool operator<=(const leap& x, const sys_time& y); -template - bool operator<=(const sys_time& x, const leap& y); -template - bool operator>=(const leap& x, const sys_time& y); -template - bool operator>=(const sys_time& x, const leap& y); - -// 25.10.9, class link // C++20 -class link; -bool operator==(const link& x, const link& y); -bool operator!=(const link& x, const link& y); -bool operator< (const link& x, const link& y); -bool operator> (const link& x, const link& y); -bool operator<=(const link& x, const link& y); -bool operator>=(const link& x, const link& y); - -// 25.11, formatting // C++20 -template - basic_string - format(const charT* fmt, const Streamable& s); - -template - basic_string - format(const locale& loc, const charT* fmt, const Streamable& s); - -template - basic_string - format(const basic_string& fmt, const Streamable& s); - -template - basic_string - format(const locale& loc, const basic_string& fmt, - const Streamable& s); - -// 25.12, parsing // C++20 -template -unspecified - parse(const basic_string& format, Parsable& tp); - -template -unspecified - parse(const basic_string& format, Parsable& tp, - basic_string& abbrev); - -template -unspecified - parse(const basic_string& format, Parsable& tp, - minutes& offset); - -template -unspecified - parse(const basic_string& format, Parsable& tp, - basic_string& abbrev, minutes& offset); - // calendrical constants inline constexpr last_spec last{}; // C++20 inline constexpr chrono::weekday Sunday{0}; // C++20