// all freestandingnamespace std {template<class E>class initializer_list {public:using value_type = E;
using reference =const E&;
using const_reference =const E&;
using size_type = size_t;
using iterator =const E*;
using const_iterator =const E*;
constexpr initializer_list()noexcept;
constexpr size_t size()constnoexcept; // number of elementsconstexprconst E* begin()constnoexcept; // first elementconstexprconst E* end()constnoexcept; // one past the last element};
// [support.initlist.range], initializer list range accesstemplate<class E>constexprconst E* begin(initializer_list<E> il)noexcept;
template<class E>constexprconst E* end(initializer_list<E> il)noexcept;
}