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