Header <concepts> implementation status Reference Implementation : Cannot implement with language itself. Need compiler support. Used C++ N STL : Partially implemented with C++ N : Fully implemented with C++ N : Not yet implemented C++ 20 Features Implemented in Concepts Core language concepts same_as derived_from convertible_to common_reference_with common_with integral signed_integral unsigned_integral floating_point assignable_from swappable swappable_with destructible constructible_from default_initializable move_constructible copy_constructible Comparison concepts equality_comparable equality_comparable_with totally_ordered totally_ordered_with Object concepts movable copyable semiregular regular Callable concepts invocable regular_invocable predicate relation equivalence_relation strict_weak_order Customization point objects ranges::swap