cpp/types/is assignable

@1@ If the expression is well-formed in unevaluated context, provides the member constant  equal to. Otherwise, is. Access checks are performed as if from a context unrelated to either type. @2@ Same as, but the evaluation of the assignment expression will not call any operation that is not trivial. For the purposes of this check, a call to std is considered trivial and not considered an odr-use of std. @3@ Same as, but the evaluation of the assignment expression will not call any operation that is not noexcept.