// PR c++/98611 // { dg-do compile { target c++20 } } template concept IsSame = __is_same(T, U); template class _Class> concept IsInstantiationOf = requires(T object) { { _Class{object} } -> IsSame; }; template struct Degrees {}; static_assert(IsInstantiationOf, Degrees>); template struct NotDegrees {}; static_assert(!IsInstantiationOf, NotDegrees>);