// { dg-do compile { target c++20 } } template concept same_as = __is_same_as(T, U); template concept character = same_as; struct T { constexpr T(same_as auto const x) : val(0) { } constexpr T(character auto const x) : val(1) { } int val; }; void test() { static_assert(T(0).val == 0); static_assert(T('a').val == 1); }