aboutsummaryrefslogtreecommitdiffstats
path: root/host
diff options
context:
space:
mode:
Diffstat (limited to 'host')
-rw-r--r--host/include/uhd/types/time_spec.hpp4
-rw-r--r--host/lib/types/time_spec.cpp19
2 files changed, 10 insertions, 13 deletions
diff --git a/host/include/uhd/types/time_spec.hpp b/host/include/uhd/types/time_spec.hpp
index a8173d471..32810c6e9 100644
--- a/host/include/uhd/types/time_spec.hpp
+++ b/host/include/uhd/types/time_spec.hpp
@@ -98,8 +98,8 @@ namespace uhd{
//! Implement addable interface
time_spec_t &operator+=(const time_spec_t &);
time_spec_t &operator+=(double &);
- time_spec_t &operator+(double &);
- time_spec_t &operator+(const time_spec_t &);
+ time_spec_t operator+(double &);
+ time_spec_t operator+(const time_spec_t &);
//! Implement subtractable interface
time_spec_t &operator-=(const time_spec_t &);
diff --git a/host/lib/types/time_spec.cpp b/host/lib/types/time_spec.cpp
index 124b08ac9..907e97d1a 100644
--- a/host/lib/types/time_spec.cpp
+++ b/host/lib/types/time_spec.cpp
@@ -91,21 +91,18 @@ time_spec_t &time_spec_t::operator+=(double &rhs){
return *this;
}
-time_spec_t &time_spec_t::operator+(double &rhs){
+time_spec_t time_spec_t::operator+(double &rhs){
double full_secs = std::trunc(rhs);
- time_spec_init(
- this->get_full_secs() + full_secs,
- this->get_frac_secs() + rhs - full_secs
- );
- return *this;
+ time_spec_t toRet(this->get_full_secs() + full_secs,
+ this->get_frac_secs() + rhs - full_secs);
+ return toRet;
}
-time_spec_t &time_spec_t::operator+(const time_spec_t &rhs){
- time_spec_init(
+time_spec_t time_spec_t::operator+(const time_spec_t &rhs){
+ time_spec_t toRet(
this->get_full_secs() + rhs.get_full_secs(),
- this->get_frac_secs() + rhs.get_frac_secs()
- );
- return *this;
+ this->get_frac_secs() + rhs.get_frac_secs());
+ return toRet;
}
time_spec_t &time_spec_t::operator-=(const time_spec_t &rhs){