From 4aeb9d305ac76cbe719f8a4294b397385bc85b67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johel=20Ernesto=20Guerrero=20Pe=C3=B1a?= Date: Sat, 5 Sep 2020 22:53:19 -0400 Subject: [PATCH] test: what we mean a concept can fail for whatever requirement, and maybe the "main" one actually works (== in this case) --- test/unit_test/static/quantity_point_test.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/test/unit_test/static/quantity_point_test.cpp b/test/unit_test/static/quantity_point_test.cpp index c03ba222..48267bfc 100644 --- a/test/unit_test/static/quantity_point_test.cpp +++ b/test/unit_test/static/quantity_point_test.cpp @@ -226,12 +226,16 @@ static_assert(quantity_point_cast(quantity_point(1.23q_m)).relative().count // time -#if COMP_MSVC || COMP_GCC >= 10 -static_assert(!std::equality_comparable_with, - quantity_point>); // different dimensions -#endif static_assert(quantity_point{1q_h} == quantity_point{3600q_s}); +template +constexpr bool no_crossdimensional_equality = !requires +{ + quantity_point(1q_s) == quantity_point(length(1)); +}; + +static_assert(no_crossdimensional_equality); + // length static_assert(quantity_point(1q_km) == quantity_point(1000q_m));