C++ named requirements: SequenceContainer

A SequenceContainer is a Container that stores objects of the same type in a linear arrangement.

# Defect reports

DRApplied toBehavior as publishedCorrect behavior
LWG 139C++98the optional operations were not required tobe implemented for the designated containersrequired with amortized time
LWG 149C++98v.insert(p, t) returned Iter whilev.insert(p, n, t) and v.insert(p, n, t) returned voidthey all return Iter
LWG 151C++98q1 was required to be dereferenceable[1]it can be non-dereferenceable
LWG 355C++98calling v.back() or v.pop_back() wouldexecute –v.end(), which is dangerous[2]decrements a copyof v.end() instead
LWG 589C++98the elements that i and j refer tomight not be convertible to C::value_typethey are implicitlyconvertible to C::value_type
LWG 2194C++11std::queue, std::priority_queue andstd::stack were also SequenceContainers[3]they are not SequenceContainers
LWG 2231C++11the complexity requirement of v.clear()was mistakenly omitted in C++11complexity reaffirmed as linear
LWG 3927C++98operator[] had no implicit requirementadded the implicit requirement