zturner added a comment.

I'm still getting a lot of crashes after this, but this will at least fix the 
compiler errors.  I will try to look at the crashes on Monday.


================
Comment at: source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp:354-355
@@ -358,5 +353,4 @@
 {
-    // Calculate absolute timeout value
-    TimeValue timeout = TimeValue::Now();
-    timeout.OffsetWithMicroSeconds(timeout_usec);
+    std::chrono::time_point<std::chrono::system_clock, 
std::chrono::microseconds> until =
+        std::chrono::system_clock::now() + 
std::chrono::microseconds(timeout_usec);
 
----------------
Need to use `auto` here, otherwise there's a compiler error.

================
Comment at: 
source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp:844
@@ -845,1 +843,3 @@
+                        if (m_async_packet_predicate.WaitForValueEqualTo(
+                                false, until - 
std::chrono::system_clock::now(), &timed_out))
                         {
----------------
this needs to use `std::chrono::duration_cast<std::chrono::microseconds>(until 
- std::chrono::system_clock::now())`.  Maybe raise this into a temporary 
variable (also make sure to use auto on the result just in case).

================
Comment at: 
source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp:860
@@ -859,2 +859,3 @@
                         // Make sure we wait until the continue packet has 
been sent again...
-                        if (m_private_is_running.WaitForValueEqualTo (true, 
&timeout_time, &timed_out))
+                        if (m_private_is_running.WaitForValueEqualTo(true, 
until - std::chrono::system_clock::now(),
+                                                                     
&timed_out))
----------------
`duration_cast` again.

================
Comment at: source/Target/Process.cpp:5547
@@ +5546,3 @@
+                    log->Printf("Process::RunThreadPlan(): about to wait - now 
is %llu - endpoint is %llu",
+                                
std::chrono::time_point<std::chrono::system_clock, std::chrono::microseconds>(
+                                    std::chrono::system_clock::now())
----------------
Delete the cast here.  Just use `std::chrono::system_clock::now()`.

================
Comment at: source/Target/Process.cpp:5551
@@ +5550,3 @@
+                                    .count(),
+                                
std::chrono::time_point<std::chrono::system_clock, 
std::chrono::microseconds>(timeout)
+                                    .time_since_epoch()
----------------
Change to `timeout.time_since_epoch()`


Repository:
  rL LLVM

http://reviews.llvm.org/D20436



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to