Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
672 |
New |
20.1.1 [utility.arg.requirements] |
Swappable requirements need updating |
Yes |
|
635 |
New |
20.1.2 [allocator.requirements] |
domain of allocator::address |
Yes |
|
258 |
Open |
20.1.2 [allocator.requirements] |
Missing allocator requirement |
Yes |
|
401 |
Open |
20.1.2 [allocator.requirements] |
incorrect type casts in table 32 in lib.allocator.requirements |
Yes |
|
431 |
Open |
20.1.2 [allocator.requirements] |
Swapping containers with unequal allocators |
No |
|
580 |
Open |
20.1.2 [allocator.requirements] |
unused allocator members |
Yes |
479 |
700 |
New |
20.2.2 [forward] |
N1856 defines struct identity |
Yes |
|
706 |
New |
20.2.3 [pairs] |
make_pair() should behave as make_tuple() wrt. reference_wrapper() |
Yes |
|
522 |
Open |
20.3 [tuple] |
Tuple doesn't define swap |
No |
|
719 |
New |
20.4 [meta] |
std::is_literal type traits should be provided |
Yes |
|
705 |
New |
20.4.7 [meta.trans.other] |
type-trait decay incompletely specified |
Yes |
|
660 |
Ready |
20.5 [function.objects] |
Missing Bitwise Operations |
Yes |
|
688 |
New |
20.5.5.1 [refwrap.const] |
reference_wrapper, cref unsafe, allow binding to rvalues |
Yes |
|
689 |
New |
20.5.5.1 [refwrap.const] |
reference_wrapper constructor overly constrained |
Yes |
|
527 |
Open |
20.5.10.1.3 [func.bind.bind] |
tr1::bind has lost its Throws clause |
Yes |
|
634 |
New |
20.6.1.1 [allocator.members] |
allocator.address() doesn't work for types overloading operator& |
Yes |
350 |
582 |
Open |
20.6.4.1 [uninitialized.copy] |
specialized algorithms and volatile storage |
Yes |
|
673 |
New |
20.6.5 [unique.ptr] |
unique_ptr update |
Yes |
|
686 |
New |
20.6.5.2.4 [unique.ptr.single.observers] |
Unique_ptr and shared_ptr fail to specify non-convertibility to int for unspecified-bool-type |
Yes |
|
674 |
New |
20.6.6.2 [util.smartptr.shared] |
shared_ptr interface changes for consistency with N1856 |
Yes |
|
710 |
New |
20.6.6.2 [util.smartptr.shared] |
Missing postconditions |
Yes |
|
687 |
New |
20.6.6.2.1 [util.smartptr.shared.const] |
shared_ptr conversion constructor not constrained |
Yes |
|
711 |
New |
20.6.6.2.5 [util.smartptr.shared.obs] |
Contradiction in empty shared_ptr |
Yes |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
708 |
New |
22 [localization] |
Locales need to be per thread and updated for POSIX changes |
No |
|
502 |
Open |
22.1.1.1.1 [locale.category] |
Proposition: Clarification of the interaction between a facet and an iterator |
Yes |
|
721 |
New |
22.1.3.2.2 [conversions.string] |
wstring_convert inconsistensies |
No |
|
585 |
New |
22.2 [locale.categories] |
facet error reporting |
Yes |
|
503 |
Open |
22.2 [locale.categories] |
more on locales |
No |
|
473 |
Open |
22.2.1.1 [locale.ctype] |
underspecified ctype calls |
No |
|
417 |
Open |
22.2.1.1.2 [locale.ctype.virtuals] |
what does ctype::do_widen() return on failure |
No |
|
695 |
New |
22.2.1.3 [facet.ctype.special] |
ctype<char>::classic_table() not accessible |
Yes |
|
382 |
Open |
22.2.1.4 [locale.codecvt] |
codecvt do_in/out result |
No |
|
393 |
New |
22.2.1.4.2 [locale.codecvt.virtuals] |
do_in/do_out operation on state unclear |
Yes |
|
664 |
New |
22.2.1.4.2 [locale.codecvt.virtuals] |
do_unshift for codecvt<char, char, mbstate_t> |
No |
|
665 |
New |
22.2.1.4.2 [locale.codecvt.virtuals] |
do_unshift return value |
No |
|
23 |
Open |
22.2.2.1.2 [facet.num.get.virtuals] |
Num_get overflow result |
No |
|
427 |
Open |
22.2.2.1.2 [facet.num.get.virtuals] |
stage 2 and rationale of DR 221 |
No |
|
459 |
Open |
22.2.2.1.2 [facet.num.get.virtuals] |
Requirement for widening in stage 2 is overspecification |
Yes |
|
671 |
New |
22.2.2.2.2 [facet.num.put.virtuals] |
precision of hexfloat |
No |
|
667 |
New |
22.2.6.1.2 [locale.money.get.virtuals] |
money_get's widened minus sign |
No |
|
668 |
New |
22.2.6.1.2 [locale.money.get.virtuals] |
money_get's empty minus sign |
No |
|
669 |
New |
22.2.6.1.2 [locale.money.get.virtuals] |
Equivalent postive and negative signs in money_get |
No |
|
670 |
New |
22.2.6.3 [locale.moneypunct] |
money_base::pattern and space |
No |
|
666 |
New |
22.2.6.3.2 [locale.moneypunct.virtuals] |
moneypunct::do_curr_symbol() |
No |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
492 |
Open |
23 [containers] |
Invalid iterator arithmetic expressions |
Yes |
|
632 |
New |
23.1 [container.requirements] |
Time complexity of size() for std::set |
No |
|
675 |
New |
23.1 [container.requirements] |
Move assignment of containers |
Yes |
|
704 |
New |
23.1 [container.requirements] |
MoveAssignable requirement for container value type overly strict |
No |
|
579 |
Open |
23.1.3 [unord.req] |
erase(iterator) for unordered containers should not return an iterator |
Yes |
|
518 |
Review |
23.1.3 [unord.req] |
Are insert and erase stable for unordered_multiset and unordered_multimap? |
Yes |
|
679 |
New |
23.2 [sequences] |
resize parameter by value |
Yes |
|
588 |
New |
23.2.1 [array] |
requirements on zero sized tr1::arrays and other details |
No |
|
617 |
New |
23.2.1 [array] |
std::array is a sequence that doesn't satisfy the sequence requirements? |
No |
|
720 |
New |
23.2.1 [array] |
Omissions in constexpr usages |
Yes |
|
638 |
New |
23.2.2.3 [deque.modifiers] |
deque end invalidation during erase |
No |
|
96 |
Open |
23.2.5 [vector] |
Vector<bool> is not a container |
Yes |
|
703 |
New |
23.3.1.2 [map.access] |
map::at() need a complexity specification |
Yes |
|
693 |
New |
23.3.5 [template.bitset] |
std::bitset::all() missing |
Yes |
|
694 |
New |
23.3.5 [template.bitset] |
std::bitset and long long |
Yes |
|
396 |
Open |
23.3.5.1 [bitset.cons] |
what are characters zero and one |
Yes |
|
676 |
New |
23.4 [unord] |
Moving the unordered containers |
Yes |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
408 |
Open |
24.1 [iterator.requirements] |
Is vector<reverse_iterator<char*> > forbidden? |
No |
|
446 |
Open |
24.1 [iterator.requirements] |
Iterator equality between different containers |
No |
|
484 |
Open |
24.1.1 [input.iterators] |
Convertible to T |
No |
|
485 |
Open |
24.1.2 [output.iterators] |
output iterator insufficently constrained |
No |
|
299 |
Open |
24.1.4 [bidirectional.iterators] |
Incorrect return types for iterator dereference |
Yes |
|
458 |
Open |
24.1.5 [random.access.iterators] |
24.1.5 contains unintented limitation for operator- |
Yes |
|
685 |
New |
24.4.1.3.19 [reverse.iter.opdiff] |
reverse_iterator/move_iterator difference has invalid signatures |
No |
|
561 |
New |
24.4.2.6.5 [inserter] |
inserter overly generic |
Yes |
|
680 |
Open |
24.4.3.1 [move.iterator] |
move_iterator operator-> return |
Yes |
|
659 |
New |
24.5.3 [istreambuf.iterator] |
istreambuf_iterator should have an operator->() |
Yes |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
631 |
Open |
25 [algorithms] |
conflicting requirements for BinaryPredicate |
Yes |
|
290 |
Open |
25.1.1 [alg.foreach] |
Requirements to for_each and its function object |
No |
|
714 |
New |
25.1.9 [alg.search] |
search_n complexity is too lax |
Yes |
|
488 |
Ready |
25.2.11 [alg.rotate] |
rotate throws away useful information |
Yes |
|
552 |
New |
25.2.12 [alg.random.shuffle] |
random_shuffle and its generator |
No |
|
498 |
Open |
25.2.13 [alg.partitions] |
Requirements for partition() and stable_partition() too strong |
Yes |
|
556 |
Open |
25.3 [alg.sorting] |
is Compare a BinaryPredicate? |
Yes |
|
713 |
New |
25.3.1.1 [sort] |
sort() complexity is too lax |
Yes |
|
577 |
Ready |
25.3.3.2 [upper.bound] |
upper_bound(first, last, ...) cannot return last |
Yes |
|
715 |
New |
25.3.7 [alg.min.max] |
minmax_element complexity is too lax |
Yes |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
595 |
New |
26.3 [complex.numbers] |
TR1/C++0x: fabs(complex<T>) redundant / wrongly specified |
Yes |
|
387 |
Open |
26.3 [complex.numbers] |
std::complex over-encapsulated |
Yes |
|
629 |
New |
26.3.6 [complex.ops] |
complex insertion and locale dependence |
No |
|
699 |
New |
26.4 [rand] |
N2111 changes min/max |
No |
|
654 |
New |
26.4.1.3 [rand.req.eng] |
Missing IO roundtrip for random number engines |
Yes |
|
678 |
New |
26.4.1.3 [rand.req.eng] |
Changes for [rand.req.eng] |
Yes |
|
548 |
Open |
26.4.6 [rand.device] |
May random_device block? |
No |
|
607 |
New |
26.4.7.1 [rand.util.seedseq] |
Concern about short seed vectors |
Yes |
|
608 |
New |
26.4.7.1 [rand.util.seedseq] |
Unclear seed_seq construction details |
Yes |
|
677 |
New |
26.4.7.1 [rand.util.seedseq] |
Weaknesses in seed_seq::randomize [rand.util.seedseq] |
Yes |
|
712 |
New |
26.4.7.1 [rand.util.seedseq] |
seed_seq::size no longer useful |
Yes |
|
655 |
New |
26.4.7.2 [rand.util.canonical] |
Signature of generate_canonical not useful |
Yes |
|
621 |
New |
26.5 [numarray] |
non-const copy assignment operators of helper arrays |
Yes |
|
620 |
New |
26.5.2.1 [valarray.cons] |
valid uses of empty valarrays |
Yes |
|
630 |
New |
26.5.2.1 [valarray.cons] |
arrays of valarray |
Yes |
|
624 |
New |
26.5.2.2 [valarray.assign] |
valarray assignment and arrays of unequal length |
Yes |
|
717 |
New |
26.5.2.3 [valarray.access] |
Incomplete valarray::operator[] specification in [valarray.access] |
Yes |
|
430 |
Open |
26.5.2.4 [valarray.sub] |
valarray subset operations |
No |
|
618 |
New |
26.5.2.7 [valarray.members] |
valarray::cshift() effects on empty array |
Yes |
|
539 |
Open |
26.6.3 [partial.sum] |
partial_sum and adjacent_difference should mention requirements |
No |
|
550 |
New |
26.7 [c.math] |
What should the return type of pow(float,int) be? |
No |
|
722 |
New |
26.7 [c.math] |
Missing [c.math] functions nanf and nanl |
Yes |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
423 |
Open |
27 [input.output] |
effects of negative streamsize in iostreams |
Yes |
|
623 |
New |
27.1.1 [iostream.limits.imbue] |
pubimbue forbidden to call imbue |
Yes |
|
574 |
New |
27.3 [iostream.objects] |
DR 369 Contradicts Text |
No |
|
418 |
Open |
27.4.2.1.6 [ios::Init] |
exceptions thrown during iostream cleanup |
No |
|
573 |
New |
27.4.3 [fpos] |
C++0x file positioning should handle modern file sizes |
No |
|
255 |
Open |
27.5.2 [streambuf] |
Why do basic_streambuf<>::pbump() and gbump() take an int? |
Yes |
|
421 |
Open |
27.5.2.1 [streambuf.cons] |
is basic_streambuf copy-constructible? |
Yes |
|
565 |
New |
27.5.2.4.5 [streambuf.virt.put] |
xsputn inefficient |
Yes |
|
567 |
New |
27.6 [iostream.format] |
streambuf inserter and extractor should be unformatted |
Yes |
|
309 |
Open |
27.6 [iostream.format] |
Does sentry catch exceptions? |
No |
|
419 |
Open |
27.6.1.1.3 [istream::sentry] |
istream extractors not setting failbit if eofbit is already set |
Yes |
|
661 |
New |
27.6.1.2.2 [istream.formatted.arithmetic] |
New 27.6.1.2.2 changes make special extractions useless |
Yes |
|
696 |
New |
27.6.1.2.2 [istream.formatted.arithmetic] |
istream::operator>>(int&) broken |
No |
|
639 |
New |
27.6.1.2.3 [istream::extractors] |
Still problems with exceptions during streambuf IO |
Yes |
|
342 |
Open |
27.6.1.3 [istream.unformatted] |
seek and eofbit |
Yes |
|
397 |
Open |
27.6.2.4 [ostream::sentry] |
ostream::sentry dtor throws exceptions |
No |
|
398 |
Open |
27.6.2.4 [ostream::sentry] |
effects of end-of-file on unformatted input functions |
No |
|
394 |
Open |
27.6.2.6.1 [ostream.formatted.reqmts] |
behavior of formatted output on failure |
No |
|
581 |
New |
27.6.2.7 [ostream.unformatted] |
flush() not unformatted function |
Yes |
|
692 |
New |
27.6.4 [ext.manip] |
get_money and put_money should be formatted I/O functions |
Yes |
|
562 |
New |
27.7 [string.streams] |
stringbuf ctor inefficient |
Yes |
|
563 |
New |
27.7.1.4 [stringbuf.virtuals] |
stringbuf seeking from end |
Yes |
|
564 |
New |
27.7.1.4 [stringbuf.virtuals] |
stringbuf seekpos underspecified |
Yes |
|
596 |
New |
27.8.1.4 [filebuf.members] |
27.8.1.3 Table 112 omits "a+" and "a+b" modes |
No |
|
454 |
Open |
27.8.1.4 [filebuf.members] |
basic_filebuf::open should accept wchar_t names |
Yes |
|
592 |
New |
27.8.1.9 [ifstream.members] |
Incorrect treatment of rdbuf()->close() return type |
Yes |
|
622 |
New |
27.8.1.17 [fstream.members] |
behavior of filebuf dtor and close on error |
Yes |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
523 |
Open |
28 [re] |
regex case-insensitive character ranges are unimplementable as specified |
No |
|
524 |
Open |
28 [re] |
regex named character classes and case-insensitivity don't mix |
No |
|
723 |
New |
28.8 [re.regex] |
basic_regex should be moveable |
Yes |
|
682 |
New |
28.8.2 [re.regex.construct] |
basic_regex ctor takes InputIterator or ForwardIterator? |
No |
|
681 |
New |
28.9.2 [re.submatch.op] |
Operator functions impossible to compare are defined in [re.submatch.op] |
No |
|
645 |
New |
28.10 [re.results] |
Missing members in match_results |
No |
|
684 |
New |
28.10 [re.results] |
Unclear which members of match_results should be used in comparison |
No |
|
652 |
New |
28.12.1 [re.regiter] |
regex_iterator and const correctness |
Yes |
|
650 |
New |
28.12.2 [re.tokiter] |
regex_token_iterator and const correctness |
Yes |
|
651 |
New |
28.12.2.1 [re.tokiter.cnstr] |
Missing preconditions for regex_token_iterator c'tors |
Yes |
|
716 |
New |
28.13 [re.grammar] |
Production in [re.grammar] not actually modified |
Yes |
|