Is providing a private constructor for initializer_list conforming?
问题 This draft standard shows the synopsis for initializer_list . It has no private constructor. But two standard library implementations I have looked at, libstdc++ and libc++, both provide private constructors: // The compiler can call a private constructor. constexpr initializer_list(const_iterator __a, size_type __l) : _M_array(__a), _M_len(__l) { } _LIBCPP_ALWAYS_INLINE _LIBCPP_CONSTEXPR_AFTER_CXX11 initializer_list(const _Ep* __b, size_t __s) _NOEXCEPT : __begin_(__b), __size_(__s) {} I