deleted float operator overloads and added unary operator- to Time
diff --git a/aos/common/control_loop/ControlLoop.cc b/aos/common/control_loop/ControlLoop.cc
index f5253d4..ea62d85 100644
--- a/aos/common/control_loop/ControlLoop.cc
+++ b/aos/common/control_loop/ControlLoop.cc
@@ -4,8 +4,8 @@
namespace control_loops {
time::Time NextLoopTime(time::Time start) {
- return (start / kLoopFrequency.ToNSec()) *
- kLoopFrequency.ToNSec() +
+ return (start / static_cast<int32_t>(kLoopFrequency.ToNSec())) *
+ static_cast<int32_t>(kLoopFrequency.ToNSec()) +
kLoopFrequency;
}
diff --git a/aos/common/control_loop/Timing.cpp b/aos/common/control_loop/Timing.cpp
index 3a58036..8f42623 100644
--- a/aos/common/control_loop/Timing.cpp
+++ b/aos/common/control_loop/Timing.cpp
@@ -11,8 +11,8 @@
void PhasedLoopXMS(int ms, int offset) {
// TODO(brians): Tests!
const Time frequency = Time::InMS(ms);
- SleepUntil((Time::Now() / frequency.ToNSec()) *
- frequency.ToNSec() +
+ SleepUntil((Time::Now() / static_cast<int32_t>(frequency.ToNSec())) *
+ static_cast<int32_t>(frequency.ToNSec()) +
frequency + Time::InUS(offset));
}