From 5c6cd1b26b1ce0cebda2512dd2f9c44ab8022d0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johel=20Ernesto=20Guerrero=20Pe=C3=B1a?= Date: Sat, 2 Jan 2021 01:08:47 -0400 Subject: [PATCH] fix: parameter constness in constraints --- src/include/units/quantity.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/include/units/quantity.h b/src/include/units/quantity.h index 6a7e4f63..142cf80b 100644 --- a/src/include/units/quantity.h +++ b/src/include/units/quantity.h @@ -204,14 +204,14 @@ public: } constexpr quantity& operator*=(const rep& rhs) - requires requires(rep a, rep b) { { a *= b } -> std::same_as; } + requires requires(rep a, const rep b) { { a *= b } -> std::same_as; } { value_ *= rhs; return *this; } constexpr quantity& operator/=(const rep& rhs) - requires requires(rep a, rep b) { { a /= b } -> std::same_as; } + requires requires(rep a, const rep b) { { a /= b } -> std::same_as; } { value_ /= rhs; return *this; @@ -219,7 +219,7 @@ public: constexpr quantity& operator%=(const rep& rhs) requires (!floating_point_) && - requires(rep a, rep b) { { a %= b } -> std::same_as; } + requires(rep a, const rep b) { { a %= b } -> std::same_as; } { value_ %= rhs; return *this; @@ -249,7 +249,7 @@ public: template requires (!Quantity) && - invoke_result_convertible_to_, rep, Value> + invoke_result_convertible_to_, rep, const Value&> [[nodiscard]] friend constexpr Quantity auto operator*(const quantity& q, const Value& v) { using ret = quantity, rep, Value>>; @@ -258,7 +258,7 @@ public: template requires (!Quantity) && - invoke_result_convertible_to_, Value, rep> + invoke_result_convertible_to_, const Value&, rep> [[nodiscard]] friend constexpr Quantity auto operator*(const Value& v, const quantity& q) { using ret = quantity, Value, rep>>; @@ -267,7 +267,7 @@ public: template requires (!Quantity) && - invoke_result_convertible_to_, rep, Value> + invoke_result_convertible_to_, rep, const Value&> [[nodiscard]] friend constexpr Quantity auto operator/(const quantity& q, const Value& v) { // Expects(v != zero().count()); @@ -277,7 +277,7 @@ public: template requires (!Quantity) && - invoke_result_convertible_to_, Value, rep> + invoke_result_convertible_to_, const Value&, rep> [[nodiscard]] friend constexpr Quantity auto operator/(const Value& v, const quantity& q) { // Expects(q.count() != zero().count()); @@ -289,7 +289,7 @@ public: template requires (!Quantity) && (!floating_point_) && (!floating_point_) && - invoke_result_convertible_to_, rep, Value> + invoke_result_convertible_to_, rep, const Value&> [[nodiscard]] friend constexpr Quantity auto operator%(const quantity& q, const Value& v) { using ret = quantity, rep, Value>>;