Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
822 |
Review |
20.1.1 [utility.arg.requirements] |
Object with explicit copy constructor no longer CopyConstructible |
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 |
635 |
Open |
20.1.2 [allocator.requirements] |
domain of allocator::address |
Yes |
|
910 |
New |
20.2.8 [concept.copymove] |
Effects of MoveAssignable |
Yes |
|
916 |
New |
20.3.3 [pairs] |
Redundant move-assignment operator of pair should be removed |
Yes |
|
885 |
Open |
20.3.3 [pairs] |
pair assignment |
No |
|
853 |
Review |
20.3.6 [template.bitset] |
to_string needs updating with zero and one |
Yes |
|
907 |
New |
20.3.6.2 [bitset.members] |
Bitset's immutable element retrieval is inconsistently defined |
Yes |
|
921 |
New |
20.4.1 [ratio.ratio] |
Rational Arithmetic should use template aliases |
Yes |
|
948 |
New |
20.4.2 [ratio.arithmetic] |
ratio arithmetic tweak |
Yes |
|
801 |
Open |
20.5 [tuple] |
tuple and pair trivial members |
No |
|
917 |
New |
20.5.2.2 [tuple.cnstr] |
Redundant move-assignment operator of tuple should be removed |
No |
|
886 |
Open |
20.5.2.2 [tuple.cnstr] |
tuple construction |
No |
|
928 |
New |
20.5.2.6 [tuple.rel] |
Wrong concepts used for tuple's comparison operators |
Yes |
|
918 |
New |
20.5.2.7 [tuple.swap] |
Swap for tuple needs to be conceptualized |
Yes |
|
719 |
Open |
20.6 [meta] |
std::is_literal type traits should be provided |
Yes |
|
931 |
New |
20.6.4.3 [meta.unary.prop] |
type trait extent<T, I> |
Yes |
|
747 |
Open |
20.6.4.3 [meta.unary.prop] |
We have 3 separate type traits to identify classes supporting no-throw operations |
No |
|
975 |
New |
20.6.5 [meta.rel] |
is_convertible cannot be instantiated for non-convertible types |
Yes |
|
750 |
Open |
20.6.5 [meta.rel] |
The current definition for is_convertible requires that the type be
implicitly convertible, so explicit constructors are ignored. |
No |
|
904 |
New |
20.7.4 [func.ret] |
result_of argument types |
Yes |
|
688 |
Open |
20.7.5.1 [refwrap.const] |
reference_wrapper, cref unsafe, allow binding to rvalues |
Yes |
|
939 |
New |
20.7.6 [identity.operation] |
Problem with std::identity and reference-to-temporaries |
No |
|
816 |
Open |
20.7.12.1.3 [func.bind.bind] |
Should bind()'s returned functor have a nofail copy ctor when bind() is nofail? |
No |
|
817 |
Open |
20.7.12.1.3 [func.bind.bind] |
bind needs to be moved |
No |
|
922 |
New |
20.7.12.1.4 [func.bind.place] |
[func.bind.place] Number of placeholders |
Yes |
|
920 |
New |
20.7.15 [func.memfn] |
Ref-qualification support in the library |
No |
|
644 |
Open |
20.7.16.2 [func.wrap.func] |
Possible typos in 'function' description |
Yes |
|
815 |
Open |
20.7.16.2.4 [func.wrap.func.inv] |
std::function and reference_closure do not use perfect forwarding |
No |
|
978 |
New |
20.7.17 [unord.hash] |
Hashing smart pointers |
No |
|
927 |
New |
20.8.2.2 [allocator.concepts] |
Dereferenceable should be HasDereference |
Yes |
|
970 |
New |
20.8.11.1 [object.addressof] |
addressof overload unneeded |
Yes |
|
582 |
Open |
20.8.11.2 [uninitialized.copy] |
specialized algorithms and volatile storage |
Yes |
|
854 |
Review |
20.8.12.1.1 [unique.ptr.dltr.dflt] |
default_delete converting constructor underspecified |
Yes |
|
938 |
New |
20.8.12.1.2 [unique.ptr.dltr.dflt1] |
default_delete<T[]>::operator() should only accept T* |
Yes |
|
834 |
Open |
20.8.12.2 [unique.ptr.single] |
Unique_ptr::pointer requirements underspecified |
Yes |
|
932 |
New |
20.8.12.2.1 [unique.ptr.single.ctor] |
unique_ptr(pointer p) for pointer deleter types |
Yes |
|
950 |
New |
20.8.12.2.1 [unique.ptr.single.ctor] |
unique_ptr converting ctor shouldn't accept array form |
Yes |
|
933 |
New |
20.8.12.2.5 [unique.ptr.single.modifiers] |
Unique_ptr defect |
No |
|
896 |
Open |
20.8.13.2 [util.smartptr.shared] |
Library thread safety issue |
Yes |
|
925 |
New |
20.8.13.2.1 [util.smartptr.shared.const] |
shared_ptr's explicit conversion from unique_ptr |
Yes |
|
827 |
Open |
20.8.13.2.1 [util.smartptr.shared.const] |
constexpr shared_ptr::shared_ptr()? |
No |
|
881 |
Open |
20.8.13.2.1 [util.smartptr.shared.const] |
shared_ptr conversion issue |
Yes |
|
899 |
New |
20.8.13.2.2 [util.smartptr.shared.dest] |
Adjusting shared_ptr for nullptr_t |
Yes |
|
884 |
Open |
20.8.13.2.4 [util.smartptr.shared.mod] |
shared_ptr swap |
No |
|
711 |
Open |
20.8.13.2.5 [util.smartptr.shared.obs] |
Contradiction in empty shared_ptr |
Yes |
|
949 |
New |
20.8.13.4 [util.smartptr.ownerless] |
owner_less |
Yes |
|
953 |
New |
20.9.1 [time.clock.req] |
Various threading bugs #3 |
No |
|
954 |
New |
20.9.1 [time.clock.req] |
Various threading bugs #4 |
No |
|
955 |
New |
20.9.1 [time.clock.req] |
Various threading bugs #5 |
No |
|
956 |
New |
20.9.1 [time.clock.req] |
Various threading bugs #6 |
No |
|
951 |
New |
20.9.2.1 [time.traits.is_fp] |
Various threading bugs #1 |
No |
|
934 |
New |
20.9.3 [time.duration] |
duration is missing operator% |
Yes |
|
974 |
New |
20.9.3.1 [time.duration.cons] |
duration<double> should not implicitly convert to duration<int> |
Yes |
|
947 |
New |
20.9.3.5 [time.duration.nonmember] |
duration arithmetic: contradictory requirements |
No |
|
946 |
New |
20.9.3.7 [time.duration.cast] |
duration_cast improperly specified |
No |
|
952 |
New |
20.9.3.7 [time.duration.cast] |
Various threading bugs #2 |
No |
|
935 |
New |
20.9.5 [time.clock] |
clock error handling needs to be specified |
Yes |
|
945 |
New |
20.9.5.1 [time.clock.system] |
system_clock::rep not specified |
No |
|
957 |
New |
20.9.5.1 [time.clock.system] |
Various threading bugs #7 |
No |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
708 |
Open |
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 |
Open |
22.1.3.2.2 [conversions.string] |
wstring_convert inconsistensies |
No |
|
503 |
Open |
22.2 [locale.categories] |
more on locales |
No |
|
585 |
Open |
22.2 [locale.categories] |
facet error reporting |
Yes |
|
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 |
|
382 |
Open |
22.2.1.4 [locale.codecvt] |
codecvt do_in/out 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 |
Open |
22.2.2.2.2 [facet.num.put.virtuals] |
precision of hexfloat |
No |
|
667 |
Open |
22.2.6.1.2 [locale.money.get.virtuals] |
money_get's widened minus sign |
No |
|
668 |
Open |
22.2.6.1.2 [locale.money.get.virtuals] |
money_get's empty minus sign |
No |
|
669 |
Open |
22.2.6.1.2 [locale.money.get.virtuals] |
Equivalent postive and negative signs in money_get |
No |
|
836 |
Open |
22.2.6.1.2 [locale.money.get.virtuals] |
effects of money_base::space and
money_base::none on money_get
|
Yes |
670 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
492 |
Open |
23 [containers] |
Invalid iterator arithmetic expressions |
Yes |
|
774 |
Open |
23 [containers] |
Member swap undefined for most containers |
Yes |
|
868 |
Open |
23 [containers] |
default construction and value-initialization |
Yes |
|
883 |
Open |
23 [containers] |
swap circular definition |
No |
|
632 |
Open |
23.1 [container.requirements] |
Time complexity of size() for std::set |
No |
|
760 |
Open |
23.1 [container.requirements] |
The emplace issue |
Yes |
|
861 |
Open |
23.1 [container.requirements] |
Incomplete specification of EqualityComparable for std::forward_list |
Yes |
|
982 |
New |
23.1.4 [associative.reqmts] |
Wrong complexity for initializer_list assignment in Table 85 |
Yes |
|
981 |
New |
23.1.5 [unord.req] |
Unordered container requirements should add initializer_list support |
Yes |
|
869 |
Review |
23.1.5 [unord.req] |
Bucket (local) iterators and iterating past end |
Yes |
|
930 |
New |
23.2.1 [array] |
Access to std::array data as built-in array type |
Yes |
|
588 |
Open |
23.2.1 [array] |
requirements on zero sized tr1::arrays and other details |
No |
|
617 |
Open |
23.2.1 [array] |
std::array is a sequence that doesn't satisfy the sequence requirements? |
No |
|
851 |
Open |
23.2.1 [array] |
simplified array construction |
Yes |
|
878 |
Review |
23.2.3 [forwardlist] |
forward_list preconditions |
Yes |
|
897 |
New |
23.2.3.4 [forwardlist.modifiers] |
Forward_list issues... Part 2 |
Yes |
|
898 |
New |
23.2.3.5 [forwardlist.ops] |
Small contradiction in n2723 to forward to committee |
No |
|
919 |
New |
23.2.3.5 [forwardlist.ops] |
(forward_)list specialized remove algorithms are over constrained |
Yes |
|
976 |
New |
23.2.5.3.1 [stack.defn] |
Class template std::stack should be movable |
Yes |
|
96 |
Open |
23.2.6 [vector] |
Vector<bool> is not a container |
Yes |
|
751 |
Open |
23.2.7 [vector.bool] |
change pass-by-reference members of vector<bool> to pass-by-value? |
No |
|
814 |
Open |
23.2.7 [vector.bool] |
vector<bool>::swap(reference, reference) not defined |
No |
|
839 |
Open |
23.3 [associative] |
Maps and sets missing splice operation |
No |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
423 |
Open |
27 [input.output] |
effects of negative streamsize in iostreams |
Yes |
|
418 |
Open |
27.4.2.1.6 [ios::Init] |
exceptions thrown during iostream cleanup |
No |
|
573 |
Open |
27.4.3 [fpos] |
C++0x file positioning should handle modern file sizes |
No |
|
835 |
New |
27.4.4.2 [basic.ios.members] |
tying two streams together (correction to DR 581) |
Yes |
|
837 |
New |
27.4.4.2 [basic.ios.members] |
basic_ios::copyfmt() overly loosely specified
|
Yes |
|
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 |
Open |
27.5.2.4.5 [streambuf.virt.put] |
xsputn inefficient |
Yes |
|
309 |
Open |
27.6 [iostream.format] |
Does sentry catch exceptions? |
No |
|
911 |
New |
27.6.1 [input.streams] |
I/O streams and move/swap semantic |
Yes |
|
419 |
Open |
27.6.1.1.3 [istream::sentry] |
istream extractors not setting failbit if eofbit is already set |
Yes |
|
696 |
New |
27.6.1.2.2 [istream.formatted.arithmetic] |
istream::operator>>(int&) broken |
No |
|
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 |
|
810 |
New |
27.6.4 [ext.manip] |
Missing traits dependencies in operational semantics of extended manipulators |
Yes |
|
128 |
Open |
27.7 [string.streams] |
Need open_mode() function for file stream, string streams, file buffers, and string buffers |
Yes |
|
564 |
Open |
27.7.1.4 [stringbuf.virtuals] |
stringbuf seekpos underspecified |
Yes |
|
863 |
New |
27.8.1 [fstreams] |
What is the state of a stream after close() succeeds |
No |
|
900 |
New |
27.8.1.8 [ifstream.assign] |
stream move-assignment |
No |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
889 |
Open |
30.2.1.1 [thread.thread.id] |
thread::id comparisons |
No |
|
891 |
New |
30.2.1.2 [thread.thread.constr] |
std::thread, std::call_once issue |
No |
|
929 |
New |
30.2.1.2 [thread.thread.constr] |
Thread constructor |
Yes |
|
967 |
New |
30.2.1.2 [thread.thread.constr] |
Various threading bugs #17 |
No |
|
963 |
New |
30.2.1.5 [thread.thread.member] |
Various threading bugs #13 |
No |
|
888 |
Review |
30.2.2 [thread.thread.this] |
this_thread::yield too strong |
Yes |
|
936 |
New |
30.3.1 [thread.mutex.requirements] |
Mutex type overspecified |
No |
|
960 |
New |
30.3.1 [thread.mutex.requirements] |
Various threading bugs #10 |
No |
|
961 |
New |
30.3.1 [thread.mutex.requirements] |
Various threading bugs #11 |
No |
|
968 |
New |
30.3.1 [thread.mutex.requirements] |
Various threading bugs #18 |
No |
|
980 |
New |
30.3.1 [thread.mutex.requirements] |
mutex lock() missing error conditions |
Yes |
|
893 |
New |
30.3.1.1 [thread.mutex.class] |
std::mutex issue |
No |
|
905 |
New |
30.3.1.1 [thread.mutex.class] |
Mutex specification questions |
No |
|
828 |
Review |
30.3.1.1 [thread.mutex.class] |
Static initialization for std::mutex? |
Yes |
|
962 |
New |
30.3.3.2.2 [thread.lock.unique.locking] |
Various threading bugs #12 |
No |
|
859 |
Open |
30.4 [thread.condition] |
Monotonic Clock is Conditionally Supported? |
Yes |
|
958 |
New |
30.4.1 [thread.condition.condvar] |
Various threading bugs #8 |
No |
|
959 |
New |
30.4.1 [thread.condition.condvar] |
Various threading bugs #9 |
No |
|
965 |
New |
30.4.1 [thread.condition.condvar] |
Various threading bugs #15 |
No |
|
966 |
New |
30.4.1 [thread.condition.condvar] |
Various threading bugs #16 |
No |
|
857 |
Open |
30.4.1 [thread.condition.condvar] |
condition_variable::time_wait return bool error prone |
No |
|
887 |
Open |
30.4.1 [thread.condition.condvar] |
issue with condition::wait_... |
No |
|
964 |
New |
30.4.2 [thread.condition.condvarany] |
Various threading bugs #14 |
No |
|