op_less.fail.cpp revision c52f43e72dfcea03037729649da84c23b3beb04a
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//===----------------------------------------------------------------------===//
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//                     The LLVM Compiler Infrastructure
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This file is distributed under the University of Illinois Open Source
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// License. See LICENSE.TXT for details.
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//===----------------------------------------------------------------------===//
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// <chrono>
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// time_point
139ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// template <class Clock, class Duration1, class Duration2>
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)//   bool
16868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)//   operator< (const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// template <class Clock, class Duration1, class Duration2>
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//   bool
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//   operator> (const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
217dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// template <class Clock, class Duration1, class Duration2>
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//   bool
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//   operator<=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// template <class Clock, class Duration1, class Duration2>
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//   bool
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//   operator>=(const time_point<Clock, Duration1>& lhs, const time_point<Clock, Duration2>& rhs);
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// time_points with different clocks should not compare
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <chrono>
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "../../clock.h"
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int main()
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles){
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    typedef std::chrono::system_clock Clock1;
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    typedef Clock                     Clock2;
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    typedef std::chrono::milliseconds Duration1;
41a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    typedef std::chrono::microseconds Duration2;
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    typedef std::chrono::time_point<Clock1, Duration1> T1;
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    typedef std::chrono::time_point<Clock2, Duration2> T2;
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    T1 t1(Duration1(3));
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    T2 t2(Duration2(3000));
472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    t1 < t2;
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)