diff --git a/tz_private.h b/tz_private.h index 77f1ea7..e796e9c 100644 --- a/tz_private.h +++ b/tz_private.h @@ -42,6 +42,12 @@ namespace detail enum class tz {utc, local, standard}; +//forward declare to avoid warnings in gcc 6.2 +class MonthDayTime; +std::istream& operator>>(std::istream& is, MonthDayTime& x); +std::ostream& operator<<(std::ostream& os, const MonthDayTime& x); + + class MonthDayTime { private: @@ -123,6 +129,20 @@ public: // local, it uses the save_ from the chronologically previous Rule, or if // there is none, 0. +//forward declare to avoid warnings in gcc 6.2 +class Rule; +bool operator==(const Rule& x, const Rule& y); +bool operator<(const Rule& x, const Rule& y); +bool operator==(const Rule& x, const date::year& y); +bool operator<(const Rule& x, const date::year& y); +bool operator==(const date::year& x, const Rule& y); +bool operator<(const date::year& x, const Rule& y); +bool operator==(const Rule& x, const std::string& y); +bool operator<(const Rule& x, const std::string& y); +bool operator==(const std::string& x, const Rule& y); +bool operator<(const std::string& x, const Rule& y); +std::ostream& operator<<(std::ostream& os, const Rule& r); + class Rule { private: