C++ Standard Library Issues List (Revision 15)

Index by Section

Reference ISO/IEC IS 14882:1998(E)

This document is the Index by Section for the Library Active Issues List, Library Defect Reports, and Library Closed Issues List.

Also see:

Index by Section

Section Issue Title Status
17 182 Ambiguous references to size_t Review
17 230 Assignable specified without also specifying CopyConstructible New
17.3.1.3 222 Are throw clauses necessary if a throw is already implied by the effects clause? Ready
17.3.2.1.2 262 Bitmask operator ~ specified incorrectly New
17.4.1.1 229 Unqualified references of other library entities New
17.4.2.2 1 C library linkage editing oversight DR
17.4.3.1 120 Can an implementor add specializations? Review
17.4.3.1 226 User supplied specializations or overloads of namespace std function templates Open
17.4.3.1 232 "depends" poorly defined in 17.4.3.1 New
17.4.4 94 May library implementors add template parameters to Standard Library classes? Open
17.4.4.3 147 Library Intro refers to global functions that aren't global Ready
17.4.4.3 225 std:: algorithms use of other unqualified algorithms Open
17.4.4.4 95 Members added by the implementation NAD
17.4.4.8 119 Should virtual functions be allowed to strengthen the exception specification? DR
18.2.1 201 Numeric limits terminology wrong Ready
18.2.1.2 205 numeric_limits unclear on how to determine floating point types NAD
18.2.1.5 184 numeric_limits<bool> wording problems Review
18.3 3 Atexit registration during atexit() call is not described Ready
18.4.1 9 Operator new(0) calls should not yield the same pointer Ready
18.4.1.1 206 operator new(size_t, nothrow) may become unlinked to ordinary operator new if ordinary version replaced NAD
18.4.1.3 114 Placement forms example in error twice Ready
18.4.1.3 196 Placement new example has alignment problems NAD
18.6 70 Uncaught_exception() missing throw() specification DR
18.6.1 108 Lifetime of exception::what() return unspecified Ready
19.1 254 Exception types in clause 19 are constructed from std::string New
20.1.5 12 Way objects hold allocators unclear NAD
20.1.5 197 max_size() underspecified Review
20.1.5 199 What does allocate(0) return? Ready
20.1.5 258 Missing allocator requirement New
20.2.2 181 make_pair() unintended behavior Review
20.3 185 Questionable use of term "inline" Review
20.3.1 257 STL functional object and iterator inheritance. New
20.3.6 109 Missing binders for non-const sequence elements Open
20.4.1.1 234 Typos in allocator definition New
20.4.5 127 auto_ptr<> conversion issues Ready
20.4.5 249 Return Type of auto_ptr::operator= New
20.4.5.3 2 Auto_ptr conversions effects incorrect DR
21 7 String clause minor problems DR
21 85 String char types NAD
21.1.3.2 57 Mistake in char_traits DR
21.1.4 259 basic_string::operator[] and const correctness New
21.3 4 Basic_string size_type and difference_type should be implementation defined DR
21.3 42 String ctors specify wrong default allocator DR
21.3 83 String::npos vs. string::max_size() DR
21.3 209 basic_string declarations inconsistent Ready
21.3 263 Severe restriction on basic_string reference counting New
21.3.1 86 String constructors don't describe exceptions Ready
21.3.4 104 Description of basic_string::operator[] is unclear NAD
21.3.5 84 Ambiguity with string::insert() NAD
21.3.5.4 88 Inconsistency between string::insert() and string::append() NAD
21.3.5.4 89 Missing throw specification for string::insert() and string::replace() Dup
21.3.5.5 27 String::erase(range) yields wrong iterator DR
21.3.6.4 141 basic_string::find_last_of, find_last_not_of say pos instead of xpos DR
21.3.6.8 5 String::compare specification questionable DR
21.3.6.8 87 Error in description of string::compare() Dup
21.3.7.9 25 String operator<< uses width() value wrong DR
21.3.7.9 67 Setw useless for strings Dup
21.3.7.9 90 Incorrect description of operator >> for strings DR
21.3.7.9 91 Description of operator>> and getline() for string<> might cause endless loop Open
21.3.7.9 211 operator>>(istream&, string&) doesn't set failbit Ready
22.1.1 31 Immutable locale values Ready
22.1.1 37 Leftover "global" reference DR
22.1.1 137 Do use_facet and has_facet look in the global locale? Ready
22.1.1.1.1 21 Codecvt_byname<> instantiations DR
22.1.1.1.1 30 Wrong header for LC_* DR
22.1.1.1.1 121 Detailed definition for ctype<wchar_t> specialization missing NAD
22.1.1.3 14 Locale::combine should be const DR
22.1.1.3 15 Locale::name requirement inconsistent DR
22.1.1.5 8 Locale::global lacks guarantee Ready
22.1.2 38 Facet definition incomplete DR
22.2 228 Incorrect specification of "..._byname" facets New
22.2.1.1.2 126 typos in Effects clause of ctype::do_narrow() DR
22.2.1.1.2 152 Typo in scan_is() semantics DR
22.2.1.2 124 ctype_byname<charT>::do_scan_is & do_scan_not return type should be const charT* DR
22.2.1.3.2 28 Ctype<char>is ambiguous DR
22.2.1.3.2 153 Typo in narrow() semantics Review
22.2.1.3.2 207 ctype<char> members return clause incomplete Open
22.2.1.4 16 Bad ctype_byname<char> decl DR
22.2.1.4 138 Class ctype_byname<char> redundant and misleading NAD
22.2.1.5 72 Do_convert phantom member function Dup
22.2.1.5 75 Contradiction in codecvt::length's argument types DR
22.2.1.5 76 Can a codecvt facet always convert one internal character at a time? Open
22.2.1.5.2 10 Codecvt<>::do unclear Dup
22.2.1.5.2 19 "Noconv" definition too vague Ready
22.2.1.5.2 24 "do_convert" doesn't exist DR
22.2.1.5.2 33 Codecvt<> mentions from_type DR
22.2.1.5.2 43 Locale table correction Dup
22.2.1.5.2 74 Garbled text for codecvt::do_max_length DR
22.2.2.1.1 18 Get(...bool&) omitted DR
22.2.2.1.2 17 Bad bool parsing DR
22.2.2.1.2 23 Num_get overflow result DR
22.2.2.1.2 154 Missing double specifier for do_get() DR
22.2.2.1.2 221 num_get<>::do_get stage 2 processing broken Review
22.2.2.2.2 34 True/falsename() not in ctype<> DR
22.2.2.2.2 231 Precision in iostream? New
22.2.3.1.2 20 Thousands_sep returns wrong type DR
22.2.5 248 time_get fails to set eofbit New
22.2.5.1 71 Do_get_monthname synopsis missing argument DR
22.2.5.3.2 164 do_put() has apparently unused fill argument Ready
22.2.8 40 Meaningless normative paragraph in examples DR
22.2.8 148 Functions in the example facet BoolNames should be const DR
22.2.8 217 Facets example (Classifying Japanese characters) contains errors Ready
23 97 Insert inconsistent definition NAD
23 180 Container member iterator arguments constness has unintended consequences NAD
23.1 51 Requirement to not invalidate iterators missing DR
23.1 179 Comparison of const_iterators to iterators doesn't work Review
23.1.1 139 Optional sequence operation table description unclear DR
23.1.1 149 Insert should return iterator to first element inserted NAD
23.1.1 151 Can't currently clear() empty container DR
23.1.2 82 Missing constant for set elements NAD
23.1.2 102 Bug in insert range in associative containers Open
23.1.2 103 set::iterator is required to be modifiable, but this allows modification of keys Review
23.1.2 130 Return type of container::erase(iterator) differs for associative containers NAD
23.1.2 192 a.insert(p,t) is inefficient and overconstrained NAD
23.1.2 215 Can a map's key_type be const? NAD
23.1.2 224 clear() complexity for associative containers refers to undefined N Ready
23.1.2 233 Insertion hints in associative containers New
23.1.2 246 a.insert(p,t) is incorrectly specified New
23.1.2 264 Associative container insert(i, j) complexity requirements are not feasible. New
23.2.1.1 144 Deque constructor complexity wrong Ready
23.2.2.1 237 Undefined expression in complexity specification New
23.2.2.2 132 list::resize description uses random access iterators DR
23.2.2.4 131 list::splice throws nothing NAD
23.2.2.4 250 splicing invalidates iterators New
23.2.4 69 Must elements of a vector be contiguous? DR
23.2.4 101 No way to free storage for vector and deque NAD
23.2.4.1 134 vector constructors over specified Ready
23.2.5 96 Vector<bool> is not a container Open
23.3.1 133 map missing get_allocator() DR
23.3.1 140 map<Key, T>::value_type does not satisfy the assignable requirement NAD
23.3.3 214 set::find() missing const overload Review
23.3.4.4 247 vector, deque::insert complexity New
23.3.5 11 Bitset minor problems DR
23.3.5 116 bitset cannot be constructed with a const char* NAD
23.3.5.2 186 bitset::set() second parameter should be bool Review
24.1 198 Validity of pointers and references unspecified after iterator destruction Open
24.1 208 Unnecessary restriction on past-the-end iterators Ready
24.1.1 98 Input iterator requirements are badly written Open
24.1.3 200 Forward iterator requirements don't allow constant iterators Open
24.2.1.3.2 236 ctype<char>::is() member modifies facet New
24.3.4 204 distance(first, last) when "last" is before "first" NAD
24.4.1.1 235 No specification of default ctor for reverse_iterator New
24.4.1.3.13 99 Reverse_iterator comparisons completely wrong NAD
24.4.2 100 Insert iterators/ostream_iterators overconstrained NAD
24.5.1 245 Which operations on istream_iterator triger input operations? New
24.5.1.2 260 Inconsistent return type of istream_iterator::operator++(int) New
24.5.1.2 261 Missing description of istream_iterator::operator!= New
24.5.3 110 istreambuf_iterator::equal not const DR
24.5.3.4 39 istreambuf_iterator<>::operator++(int) definition garbled DR
24.5.3.5 111 istreambuf_iterator::equal overspecified, inefficient Open
24.5.4.1 112 Minor typo in ostreambuf_iterator constructor Ready
25 92 Incomplete Algorithm Requirements Open
25 210 distance first and last confused Ready
25.1.2 219 find algorithm missing version that takes a binary predicate argument NAD
25.1.2 244 Must find's third argument be CopyConstructible? New
25.1.4 150 Find_first_of says integer instead of iterator DR
25.1.5 240 Complexity of adjacent_find() is meaningless New
25.2.2 187 iter_swap underspecified DR
25.2.2 227 std::swap() should require CopyConstructible or DefaultConstructible arguments Ready
25.2.3 242 Side effects of function objects New
25.2.8 202 unique() effects unclear when predicate not an equivalence relation Open
25.2.8 239 Complexitiy of unique() and/or unique_copy incorrect New
25.2.8 241 Does unique_copy() require CopyConstructible and Assignable? New
25.2.9 223 reverse algorithm should use iter_swap rather than swap Ready
25.3 218 Algorithms do not use binary predicate objects for default comparisons NAD
25.3.3 191 Unclear complexity for algorithms such as binary search NAD
25.3.6 193 Heap operations description incorrect DR
25.3.7 190 min() and max() functions should be std::binary_functions NAD
25.3.7 212 Empty range behavior unclear for several algorithms Ready
25.3.8 142 lexicographical_compare complexity wrong Ready
26.2.1 79 Inconsistent declaration of polar() DR
26.2.1 80 Global Operators of complex declared twice DR
26.2.6 146 complex<T> Inserter and Extractor need sentries Ready
26.2.6 177 Complex operators cannot be explicitly instantiated NAD
26.3 93 Incomplete Valarray Subset Definitions NAD
26.3.2 107 Valarray constructor is strange NAD
26.3.2 125 valarray<T>::operator!() return type is inconsistent DR
26.3.2.1 253 valarray helper functions are almost entirely useless New
26.3.2.3 77 Valarray operator[] const returning value NAD
26.3.2.6 188 valarray helpers missing augmented assignment operators NAD
26.3.5 81 Wrong declaration of slice operations NAD
26.3.5 106 Numeric library private members are implementation defined DR
26.3.5.4 123 Should valarray helper arrays fill functions be const? Open
26.5 213 Math function overloads ambiguous NAD
27 44 Iostreams use operator== on int_type values Open
27 55 Invalid stream position is undefined DR
27.3 155 Typo in naming the class defining the class Init DR
27.3.1 29 Ios_base::init doesn't exist DR
27.3.1 178 Should clog and cerr initially be tied to cout? NAD
27.4 35 No manipulator unitbuf in synopsis DR
27.4.2 41 Ios_base needs clear(), exceptions() DR
27.4.2 50 Copy constructor and assignment operator of ios_base DR
27.4.2 78 Typo: event_call_back DR
27.4.2.1.1 48 Use of non-existent exception constructor DR
27.4.2.2 189 setprecision() not specified correctly DR
27.4.2.3 47 Imbue() and getloc() Returns clauses swapped DR
27.4.2.3 156 Typo in imbue() description DR
27.4.2.4 49 Underspecification of ios_base::sync_with_stdio Open
27.4.2.5 36 Iword & pword storage lifetime omitted DR
27.4.2.5 157 Meaningless error handling for pword() and iword() Dup
27.4.2.7 220 ~ios_base() usage valid? Ready
27.4.3 6 File position not an offset unimplementable NAD
27.4.3.2 52 Small I/O problems DR
27.4.4 194 rdbuf() functions poorly specified NAD
27.4.4.1 53 Basic_ios destructor unspecified DR
27.4.4.1 145 adjustfield lacks default value  NAD
27.4.4.2 256 typo in 27.4.4.2, p17: copy_event does not exist New
27.5.2 56 Showmanyc's return type DR
27.5.2 122 streambuf/wstreambuf description should not say they are specializations Ready
27.5.2 255 Why do basic_streambuf<>::pbump() and gbump() take an int? New
27.5.2.1 54 Basic_streambuf's destructor DR
27.5.2.3.1 59 Ambiguity in specification of gbump DR
27.5.2.4.2 158 Underspecified semantics for setbuf() DR
27.5.2.4.3 159 Strange use of underflow() Ready
27.5.2.4.4 32 Pbackfail description inconsistent DR
27.6.1.1 113 Missing/extra iostream sync semantics NAD
27.6.1.1 160 Typo: Use of non-existing function exception() DR
27.6.1.1.2 26 Bad sentry example Ready
27.6.1.1.2 195 Should basic_istream::sentry's constructor ever set eofbit? DR
27.6.1.1.2 203 basic_istream::sentry::sentry() is uninstantiable with ctype<user-defined type> NAD
27.6.1.2.1 60 What is a formatted input function? DR
27.6.1.2.2 118 basic_istream uses nonexistent num_get member functions Review
27.6.1.2.2 161 Typo: istream_iterator vs. istreambuf_iterator DR
27.6.1.2.3 13 Eos refuses to die DR
27.6.1.2.3 58 Extracting a char from a wide-oriented stream NAD
27.6.1.2.3 64 Exception handling in basic_istream::operator>>(basic_streambuf*) DR
27.6.1.2.3 68 Extractors for char* should store null at end DR
27.6.1.2.3 162 Really "formatted input functions"? Dup
27.6.1.3 61 Ambiguity in iostreams exception policy Ready
27.6.1.3 62 Sync's return value DR
27.6.1.3 129 Need error indication from seekp() and seekg() Ready
27.6.1.3 136 seekp, seekg setting wrong streams? Review
27.6.1.3 163 Return of gcount() after a call to gcount Dup
27.6.1.3 172 Inconsistent types for basic_istream::ignore() DR
27.6.1.3 243 get and getline when sentry reports failure New
27.6.1.5.1 135 basic_iostream doubly initialized NAD
27.6.2.1 165 xsputn(), pubsync() never called by basic_ostream members? Review
27.6.2.5.2 117 basic_ostream uses nonexistent num_put member functions Open
27.6.2.5.3 166 Really "formatted output functions"? Dup
27.6.2.5.4 167 Improper use of traits_type::length() Review
27.6.2.6 63 Exception-handling policy for unformatted output Ready
27.6.2.6 168 Typo: formatted vs. unformatted DR
27.6.3 183 I/O stream manipulators don't work for wide character streams Review
27.6.3 216 setbase manipulator description flawed Review
27.7 128 Need open_mode() function for file stream, string streams, file buffers, and string  buffers NAD
27.7 252 missing casts/C-style casts used in iostreams New
27.7.1 251 basic_stringbuf missing allocator_type New
27.7.1.1 238 Contradictory results of stringbuf initialization. New
27.7.1.3 169 Bad efficiency of overflow() mandated DR
27.7.3 45 Stringstreams read/write pointers initial position unclear NAD
27.7.4 170 Inconsistent definition of traits_type Ready
27.8 105 fstream ctors argument types desired NAD
27.8.1 73 is_open should be const NAD
27.8.1.4 171 Strange seekpos() semantics due to joint position Review
27.8.1.4 173 Inconsistent types for basic_filebuf::setbuf() DR
27.8.1.7 22 Member open vs. flags DR
D.5 143 C .h header wording unclear NAD
D.6 174 Typo: OFF_T vs. POS_T DR
D.6 175 Ambiguity for basic_streambuf::pubseekpos() and a few other functions. DR
D.6 176 exceptions() in ios_base...? DR
D.7 46 Minor Annex D errors DR
D.7.1.3 65 Underspecification of strstreambuf::seekoff NAD
D.7.1.3 66 Strstreambuf::setbuf DR
D.7.4.1 115 Typo in strstream constructors Ready

----- End of document -----