cpp/concepts/default initializable

The concept checks whether variables of type  can be
 * value-initialized ( is well-formed);
 * direct-list-initialized from an empty initializer list ( is well-formed); and
 * default-initialized ( is well-formed).

Access checking is performed as if in a context unrelated to T. Only the validity of the immediate context of the variable initialization is considered.