diff --git a/src/core/include/mp-units/framework/representation_concepts.h b/src/core/include/mp-units/framework/representation_concepts.h index 3ab804dc..ff99bd96 100644 --- a/src/core/include/mp-units/framework/representation_concepts.h +++ b/src/core/include/mp-units/framework/representation_concepts.h @@ -82,11 +82,16 @@ concept ScalableWith = requires(const T v, const S s) { }; template -concept Scalar = (!disable_scalar) && requires(const T a, const T b) { - { -a } -> std::common_with; - { a + b } -> std::common_with; - { a - b } -> std::common_with; -} && ScalableWith && WeaklyRegular; +concept Scalar = (!disable_scalar) && + requires(const T a, const T b) { + { -a } -> std::common_with; + { a + b } -> std::common_with; + { a - b } -> std::common_with; + } && ScalableWith +#if MP_UNITS_COMP_GCC != 12 + && WeaklyRegular +#endif + ; namespace real_impl {