diff --git a/src/core/include/mp-units/quantity_spec.h b/src/core/include/mp-units/quantity_spec.h index fb32cc99..d3029c92 100644 --- a/src/core/include/mp-units/quantity_spec.h +++ b/src/core/include/mp-units/quantity_spec.h @@ -109,7 +109,8 @@ struct quantity_spec_interface { template [[nodiscard]] constexpr Quantity auto operator()(this Self self, Q&& q) const - requires Quantity> && (explicitly_convertible(std::remove_cvref_t::quantity_spec, self)) + requires Quantity> && + (explicitly_convertible(std::remove_reference_t::quantity_spec, self)) { return make_quantity::unit>{}>(std::forward(q).number()); } @@ -121,7 +122,8 @@ struct quantity_spec_interface { } template - requires Quantity> && (explicitly_convertible(std::remove_cvref_t::quantity_spec, Self{})) + requires Quantity> && + (explicitly_convertible(std::remove_reference_t::quantity_spec, Self{})) [[nodiscard]] constexpr Quantity auto operator()(Q&& q) const { return make_quantity::unit>{}>(std::forward(q).number()); @@ -296,7 +298,8 @@ struct quantity_spec : std::remove_const_t { } template - requires Quantity> && (explicitly_convertible(std::remove_cvref_t::quantity_spec, Self{})) + requires Quantity> && + (explicitly_convertible(std::remove_reference_t::quantity_spec, Self{})) [[nodiscard]] constexpr Quantity auto operator()(Q&& q) const { return make_quantity::unit>{}>(std::forward(q).number());