Issue |
Status |
Section |
Title |
Proposed Resolution |
Priority |
Duplicates |
3105 |
New |
16 [library] |
T1 is convertible to T2 |
No |
3 |
|
2949 |
New |
16 [library] |
Unclear complexity requirements: space vs. time |
No |
4 |
|
2392 |
New |
16.3.17 [defns.ntcts] |
"character type" is used but not defined |
No |
3 |
|
2136 |
Open |
16.4.1 [structure] |
Postconditions vs. exceptions |
No |
3 |
|
3193 |
New |
16.4.1.4 [structure.specifications] |
Mandates: and Expects: elements are not defined for types |
Yes |
3 |
|
3168 |
Open |
16.4.1.4 [structure.specifications] |
Expects: element should be specified in one place |
Yes |
2 |
|
2292 |
Tentatively Resolved |
16.4.1.4 [structure.specifications] |
Find a better phrasing for "shall not participate in overload resolution" |
No |
3 |
|
3092 |
Open |
16.4.2.2.4 [bitmask.types] |
Unclear semantics of enum class bitmask types |
Yes |
2 |
|
2818 |
New |
16.5.1.1 [contents] |
"::std::" everywhere rule needs tweaking |
No |
2 |
|
2146 |
Open |
16.5.3.1 [utility.arg.requirements] |
Are reference types Copy/Move-Constructible/Assignable or Destructible? |
No |
2 |
|
2152 |
LEWG |
16.5.3.2 [swappable.requirements] |
Instances of standard container types are not swappable |
Yes |
3 |
|
2114 |
Open |
16.5.3.3 [nullablepointer.requirements] |
Incorrect "contextually convertible to bool" requirements |
Yes |
3 |
|
3157 |
New |
16.5.3.5 [allocator.requirements] |
Allocator destroy and fancy pointer operations must be non-throwing |
Yes |
3 |
|
3044 |
New |
16.5.3.5 [allocator.requirements] |
Strange specification of max_size() for an allocator |
Yes |
3 |
|
2461 |
New |
16.5.3.5 [allocator.requirements] |
Interaction between allocators and container exception safety guarantees |
No |
3 |
|
3177 |
New |
16.5.4.2.1 [namespace.std] |
Limit permission to specialize variable templates to program-defined types |
Yes |
3 |
|
3142 |
New |
16.5.4.8 [res.on.functions] |
std::foo<incomplete> should be ill-formed NDR |
Yes |
3 |
|
2695 |
New |
16.5.5.5 [member.functions] |
"As if" unclear in [member.functions] |
No |
3 |
|
2414 |
Open |
16.5.5.8 [reentrancy] |
Member function reentrancy should be implementation-defined |
Yes |
3 |
|
2839 |
Open |
16.5.5.15 [lib.types.movedfrom] |
Self-move-assignment of library types, again |
Yes |
2 |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Priority |
Duplicates |
3217 |
New |
17.3.1 [support.limits.general] |
<memory> and <execution> should define __cpp_lib_parallel_algorithm |
Yes |
|
|
2248 |
New |
17.3.4 [numeric.limits] |
numeric_limits::is_iec559 misnamed |
No |
4 |
|
2730 |
Open |
17.3.4 [numeric.limits] |
numeric_limits primary template definition |
No |
3 |
|
2820 |
Open |
17.4 [cstdint] |
Clarify <cstdint> macros |
Yes |
3 |
|
3084 |
New |
17.5 [support.start.term] |
Termination in C++ is unclear |
No |
3 |
|
2815 |
New |
17.5 [support.start.term] |
quick_exit can deadlock |
Yes |
3 |
|
3086 |
New |
17.6.2.1 [new.delete.single] |
Possible problem in §[new.delete.single] |
Yes |
3 |
|
2737 |
New |
17.6.2.1 [new.delete.single] |
Consider relaxing object size restrictions for single-object allocation functions |
No |
3 |
|
2303 |
New |
17.6.2.3 [new.delete.placement] |
Explicit instantiation of std::vector<UserType> broken? |
No |
3 |
|
2508 |
New |
17.6.2.4 [new.delete.dataraces] |
§[new.delete.dataraces] wording needs to be updated |
No |
3 |
|
2860 |
Open |
17.6.4 [ptr.launder] |
launder and base class subobjects |
Yes |
2 |
|
2859 |
Open |
17.6.4 [ptr.launder] |
Definition of reachable in [ptr.launder] misses pointer arithmetic from pointer-interconvertible object |
Yes |
2 |
|
2398 |
Open |
17.7.2 [type.info] |
type_info's destructor shouldn't be required to be virtual |
Yes |
3 |
|
3139 |
New |
17.8.2 [support.contract.cviol] |
contract_violation's special member functions |
No |
1 |
|
3138 |
LEWG |
17.8.2 [support.contract.cviol] |
There is no such thing as assertion-level |
No |
2 |
|
2088 |
Open |
17.9.4 [exception.terminate] |
std::terminate problem |
No |
3 |
|
2453 |
New |
17.10 [support.initlist] |
§[iterator.range] and now [iterator.container] aren't available via <initializer_list> |
No |
3 |
|
2493 |
New |
17.10 [support.initlist] |
initializer_list supports incomplete classes |
No |
4 |
|
2432 |
EWG |
17.10 [support.initlist] |
initializer_list assignability |
Yes |
2 |
|
2155 |
Tentatively Resolved |
17.13 [support.runtime] |
Macro __bool_true_false_are_defined should be removed |
No |
4 |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Priority |
Duplicates |
2153 |
LEWG |
20.2.2 [utility.swap] |
Narrowing of the non-member swap contract |
Yes |
2 |
|
2599 |
New |
20.2.6 [declval] |
Library incomplete type permission phrase is unclear |
No |
3 |
|
2289 |
Open |
20.4.2 [pairs.pair] |
constexpr guarantees of defaulted functions still insufficient |
Yes |
3 |
|
2766 |
New |
20.4.3 [pairs.spec] |
Swapping non-swappable types |
Yes |
3 |
|
3166 |
New |
20.4.4 [pair.astuple] |
No such descriptive element as Value: |
No |
3 |
|
3211 |
New |
20.5.3.1 [tuple.cnstr] |
std::tuple<> should be trivially constructible |
Yes |
|
|
2528 |
New |
20.5.3.1 [tuple.cnstr] |
Order of std::tuple construction unspecified |
No |
3 |
|
3155 |
Open |
20.5.3.1 [tuple.cnstr] |
tuple<any, any>{allocator_arg_t, an_allocator} |
Yes |
3 |
|
3121 |
Open |
20.5.3.1 [tuple.cnstr] |
tuple constructor constraints for UTypes&&... overloads |
Yes |
2 |
|
2933 |
New |
20.5.3.4 [tuple.creation] |
PR for LWG 2773 could be clearer |
Yes |
3 |
|
2472 |
New |
20.5.3.8 [tuple.rel] |
Heterogeneous comparisons in the standard library can result in ambiguities |
No |
3 |
|
532 |
LEWG |
20.5.3.8 [tuple.rel] |
Tuple comparison |
Yes |
|
348 |
3196 |
Tentatively Ready |
20.6.3 [optional.optional] |
std::optional<T> is ill-formed is T is an array |
Yes |
0 |
|
2746 |
New |
20.6.3 [optional.optional] |
Inconsistency between requirements for emplace between optional and variant |
No |
3 |
|
2990 |
Open |
20.6.3 [optional.optional] |
optional::value_type is not always a value type |
Yes |
3 |
|
2825 |
LEWG |
20.6.3 [optional.optional] |
LWG 2756 breaks class template argument deduction for optional |
No |
2 |
|
2811 |
New |
20.6.3.1 [optional.ctor] |
"Selected constructor" wording is incorrect for optional/variant/any |
No |
3 |
|
2829 |
Open |
20.6.3.5 [optional.observe] |
LWG 2740 leaves behind vacuous words |
No |
2 |
|
2881 |
New |
20.7.3 [variant.variant] |
Adopt section III of P0308R0 |
No |
3 |
|
3215 |
New |
20.7.3.1 [variant.ctor] |
variant default constructor has vague constexpr requirements |
Yes |
|
|
2833 |
Open |
20.7.3.1 [variant.ctor] |
Library needs to specify what it means when it declares a function constexpr |
Yes |
2 |
|
2991 |
LEWG |
20.7.3.1 [variant.ctor] |
variant copy constructor missing noexcept(see below) |
Yes |
|
|
3069 |
New |
20.7.3.3 [variant.assign] |
Move assigning variant's subobject corrupts data |
Yes |
3 |
|
3052 |
LEWG |
20.7.7 [variant.visit] |
visit is underconstrained |
Yes |
2 |
|
2348 |
Open |
20.9.2 [template.bitset] |
charT('1') is not the wide equivalent of '1' |
Yes |
3 |
|
3199 |
Tentatively Ready |
20.9.4 [bitset.operators] |
istream >> bitset<0> fails |
Yes |
|
|
2421 |
New |
20.10.6 [ptr.align] |
Non-specification of handling zero size in std::align [ptr.align] |
No |
3 |
|
3185 |
Tentatively Ready |
20.10.8.2 [allocator.uses.construction] |
Uses-allocator construction functions missing constexpr and noexcept |
Yes |
0 |
|
3192 |
New |
20.10.8.2 [allocator.uses.construction] |
§[allocator.uses.construction] functions misbehave for const types |
Yes |
3 |
|
3170 |
New |
20.10.10 [default.allocator] |
is_always_equal added to std::allocator makes the standard library treat
derived types as always equal |
Yes |
2 |
|
3190 |
New |
20.10.10.1 [allocator.members] |
std::allocator::allocate sometimes returns too little storage |
Yes |
3 |
|
2089 |
EWG |
20.10.10.1 [allocator.members] |
std::allocator::construct should use uniform initialization |
Yes |
2 |
|
3156 |
New |
20.10.11 [specialized.algorithms] |
ForwardIterator should only mean forward iterator |
Yes |
3 |
|
3063 |
New |
20.10.11 [specialized.algorithms] |
Parallel algorithms in <memory> are underspecified |
No |
3 |
|
3064 |
New |
20.10.11 [specialized.algorithms] |
How do uninitialized memory algorithms obtain pointer without undefined behavior? |
No |
3 |
|
3159 |
New |
20.11.1.2 [unique.ptr.single] |
§[unique.ptr.single] requirements on deleter may be too strict |
No |
3 |
|
2262 |
Open |
20.11.1.2 [unique.ptr.single] |
Requirement for unique_ptr<T>::get_deleter()(p) to be able to destroy the unique_ptr |
Yes |
3 |
|
2762 |
Open |
20.11.1.2.4 [unique.ptr.single.observers] |
unique_ptr operator*() should be noexcept |
Yes |
3 |
|
3018 |
New |
20.11.3 [util.smartptr.shared] |
shared_ptr of function type |
Yes |
3 |
|
2594 |
New |
20.11.3 [util.smartptr.shared] |
Contradicting definition of empty shared_ptr on shared_ptr(nullptr, d) |
Yes |
3 |
|
2906 |
New |
20.11.3.1 [util.smartptr.shared.const] |
There is no ability to supply an allocator for the control block when constructing a shared_ptr from a
unique_ptr |
No |
3 |
|
2751 |
New |
20.11.3.2 [util.smartptr.shared.dest] |
shared_ptr deleter not specified to observe expired weak_ptr instances |
No |
4 |
|
3210 |
New |
20.11.3.6 [util.smartptr.shared.create] |
allocate_shared is inconsistent about removing const from the pointer
passed to allocator construct and destroy |
Yes |
3 |
|
3216 |
New |
20.11.3.6 [util.smartptr.shared.create] |
Rebinding the allocator before calling construct/destroy in allocate_shared |
Yes |
|
|
3195 |
New |
20.11.4.1 [util.smartptr.weak.const] |
What is the stored pointer value of an empty weak_ptr? |
Yes |
2 |
|
3036 |
Open |
20.12.3 [mem.poly.allocator.class] |
polymorphic_allocator::destroy is extraneous |
Yes |
3 |
|
2848 |
New |
20.12.5.2 [mem.res.pool.options] |
Pass-through threshold for pool allocator |
No |
3 |
|
3143 |
New |
20.12.6 [mem.res.monotonic.buffer] |
monotonic_buffer_resource growth policy is unclear |
No |
2 |
|
3120 |
Open |
20.12.6.2 [mem.res.monotonic.buffer.mem] |
Unclear behavior of monotonic_buffer_resource::release() |
Yes |
2 |
|
3202 |
Tentatively Ready |
20.14.1 [functional.syn] |
P0318R1 was supposed to be revised |
Yes |
0 |
|
2894 |
Open |
20.14.4 [func.invoke] |
The function template std::apply() is required to be constexpr, but std::invoke() isn't |
Yes |
3 |
|
2690 |
LEWG |
20.14.4 [func.invoke] |
invoke<R> |
Yes |
|
|
3046 |
New |
20.14.5 [refwrap] |
Do not require reference_wrapper to support non-referenceable function types |
Yes |
3 |
|
3146 |
New |
20.14.5.5 [refwrap.helpers] |
Excessive unwrapping in std::ref/cref |
Yes |
3 |
|
2491 |
New |
20.14.7 [comparisons] |
std::less<T*> in constant expression |
Yes |
3 |
|
2547 |
New |
20.14.7 [comparisons] |
Container requirements (and other library text) should say "strict total order", not just "total order" |
No |
3 |
|
2957 |
New |
20.14.14.3 [func.bind.bind] |
bind's specification doesn't apply the cv-qualification of the call wrapper to the callable object |
Yes |
3 |
|
3023 |
New |
20.14.15 [func.memfn] |
Clarify unspecified call wrappers |
No |
3 |
|
2774 |
New |
20.14.16.2.1 [func.wrap.func.con] |
std::function construction vs assignment |
No |
3 |
|
2813 |
EWG |
20.14.16.2.1 [func.wrap.func.con] |
std::function should not return dangling references |
Yes |
2 |
|
1025 |
LEWG |
20.14.18 [unord.hash] |
The library should provide more specializations for std::hash |
No |
|
|
2290 |
Open |
20.15 [meta] |
Top-level "SFINAE"-based constraints should get a separate definition in Clause 17 |
Yes |
3 |
|
2452 |
Core |
20.15 [meta] |
is_constructible, etc. and default arguments |
No |
3 |
|
2845 |
New |
20.15.1 [meta.rqmts] |
enable_if, result_of, common_type and aligned_storage do not meet the definition
of TransformationTrait |
No |
3 |
|
2939 |
New |
20.15.2 [meta.type.synop] |
Some type-completeness constraints of traits are overspecified |
No |
2 |
|
3099 |
New |
20.15.2 [meta.type.synop] |
is_assignable<Incomplete&, Incomplete&> |
Yes |
|
|
2922 |
LEWG |
20.15.2 [meta.type.synop] |
The *_constant<> templates do not make use of template<auto> |
No |
|
|
2496 |
New |
20.15.4.3 [meta.unary.prop] |
Certain hard-to-avoid errors not in the immediate context are not allowed to be triggered by
the evaluation of type traits |
No |
3 |
|
2827 |
New |
20.15.4.3 [meta.unary.prop] |
is_trivially_constructible and non-trivial destructors |
No |
3 |
|
2116 |
Open |
20.15.4.3 [meta.unary.prop] |
is_nothrow_constructible and destructors |
No |
3 |
|
2077 |
Open |
20.15.4.3 [meta.unary.prop] |
Further incomplete constraints for type traits |
No |
3 |
|
2358 |
Open |
20.15.4.3 [meta.unary.prop] |
Apparently-bogus definition of is_empty type trait |
Yes |
3 |
|
3174 |
New |
20.15.6 [meta.rel] |
Precondition on is_convertible is too strong |
Yes |
3 |
|
3205 |
New |
20.15.7.6 [meta.trans.other] |
decay_t in the new common_type fallback should be remove_cvref_t |
Yes |
3 |
|
3152 |
New |
20.15.7.6 [meta.trans.other] |
common_type and common_reference have flaws in common |
Yes |
3 |
|
3081 |
Open |
20.19.3 [charconv.from.chars] |
Floating point from_chars API does not distinguish between overflow and underflow |
Yes |
2 |
|
3082 |
Open |
20.19.3 [charconv.from.chars] |
from_chars specification regarding floating point rounding is inconsistent |
Yes |
2 |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Priority |
Duplicates |
2307 |
LEWG |
22 [containers] |
Should the Standard Library use explicit only when necessary? |
No |
2 |
|
2884 |
LEWG |
22 [containers] |
Relational operators for containers should sfinae; if the underlying type is not comparable, neither should the container be |
No |
|
|
2885 |
LEWG |
22 [containers] |
The relational operators of optional and variant completely reflect the semantics of the element
types — this is inconsistent with other types in the library |
No |
|
|
3059 |
New |
22.2 [container.requirements] |
Wrong requirements for map-like associative container assignment? |
No |
3 |
|
3028 |
New |
22.2.1 [container.requirements.general] |
Container requirements tables should distinguish const and non-const variables |
Yes |
3 |
|
2269 |
New |
22.2.1 [container.requirements.general] |
Container iterators and argument-dependent lookup |
No |
4 |
|
1521 |
Open |
22.2.1 [container.requirements.general] |
Requirements on internal pointer representations in containers |
Yes |
3 |
|
2321 |
Open |
22.2.1 [container.requirements.general] |
Moving containers should (usually) be required to preserve iterators |
Yes |
3 |
|
2705 |
New |
22.2.3 [sequence.reqmts] |
Questionable precondition on Sequence containers a.assign(n, t) |
Yes |
3 |
|
2206 |
Open |
22.2.3 [sequence.reqmts] |
Inaccuracy in initializer_list constructor requirements |
Yes |
3 |
|
2743 |
New |
22.2.4.1 [container.node.overview] |
p0083r3 node_handle private members missing "exposition only" comment |
Yes |
3 |
|
2362 |
New |
22.2.6 [associative.reqmts] |
unique, associative emplace() should not move/copy the mapped_type constructor
arguments when no insertion happens |
No |
3 |
|
2844 |
New |
22.2.6 [associative.reqmts] |
Stability of a_uniq.insert(i, j) |
No |
3 |
|
2227 |
Open |
22.2.6 [associative.reqmts] |
Stateful comparison objects in associative containers |
No |
3 |
|
2215 |
Open |
22.2.6 [associative.reqmts] |
(unordered) associative container functors should be CopyConstructible |
Yes |
3 |
|
3176 |
New |
22.2.7 [unord.req] |
Underspecified behavior of unordered containers when Container::key_equal differs from Pred |
No |
2 |
|
1175 |
Open |
22.2.7 [unord.req] |
unordered complexity |
Yes |
3 |
|
2198 |
Open |
22.2.7 [unord.req] |
max_load_factor(z) makes no strong guarantees, but bans useful behavior |
Yes |
3 |
|
2189 |
Open |
22.2.7.1 [unord.req.except] |
Throwing swap breaks unordered containers' state |
No |
3 |
|
2335 |
New |
22.3.7 [array] |
array<array<int, 3>, 4> should be layout-compatible with int[4][3] |
No |
3 |
|
3219 |
New |
22.3.7.1 [array.overview] |
std::array overview container requirements are incorrect |
Yes |
|
|
2823 |
Open |
22.3.7.1 [array.overview] |
std::array initialization is still not permissive enough |
Yes |
3 |
|
2157 |
Open |
22.3.7.5 [array.zero] |
How does std::array<T,0> initialization work when T is not default-constructible? |
Yes |
3 |
|
3088 |
New |
22.3.9.6 [forwardlist.ops] |
forward_list::merge behavior unclear when passed *this |
Yes |
3 |
|
2997 |
New |
22.3.10.5 [list.ops] |
LWG 491 and the specification of {forward_,}list::unique |
Yes |
3 |
|
2158 |
Open |
22.3.11.3 [vector.capacity] |
Conditional copy/move in std::vector |
Yes |
3 |
|
1422 |
Open |
22.3.12 [vector.bool] |
vector<bool> iterators are not random access |
No |
3 |
|
2713 |
New |
22.5 [unord] |
More missing allocator-extended constructors for unordered containers |
Yes |
3 |
|
3189 |
New |
22.6.5 [priority.queue] |
Missing requirement for std::priority_queue |
No |
3 |
|
3161 |
Open |
22.6.6 [stack] |
Container adapters mandate use of emplace_back but don't require it |
Yes |
|
|
3203 |
New |
22.7.3.1 [span.overview] |
span element access invalidation |
Yes |
2 |
|
3198 |
Tentatively Ready |
22.7.3.2 [span.cons] |
Bad constraint on std::span::span() |
Yes |
|
|
3103 |
Open |
22.7.3.3 [span.sub] |
Errors in taking subview of span should be ill-formed where possible |
Yes |
3 |
|
3212 |
New |
22.7.3.8 [span.tuple] |
tuple_element_t<1, const span<int, 42>> is const int |
Yes |
|
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Priority |
Duplicates |
1213 |
Open |
23.3 [iterator.requirements] |
Meaning of valid and singular iterator underspecified |
No |
4 |
|
3110 |
New |
23.3.1 [iterator.requirements.general] |
Contiguous Iterators should always be Random-Access |
Yes |
3 |
|
2375 |
New |
23.3.1 [iterator.requirements.general] |
Is [iterator.requirements.general]/9 too broadly applied? |
No |
3 |
|
3183 |
Tentatively Ready |
23.3.4.8 [iterator.concept.sizedsentinel] |
Normative permission to specialize Ranges variable templates |
Yes |
0 |
|
2962 |
Open |
23.3.5.2 [input.iterators] |
Iterators of Containers of move-only types do not model InputIterator |
Yes |
2 |
|
484 |
Open |
23.3.5.2 [input.iterators] |
Convertible to T |
No |
2 |
|
2035 |
Open |
23.3.5.3 [output.iterators] |
Output iterator requirements are broken |
Yes |
3 |
|
2038 |
Open |
23.3.5.3 [output.iterators] |
Missing definition for incrementable iterator |
No |
3 |
|
3197 |
New |
23.4.2 [iterator.operations] |
std::prev should not require BidirectionalIterator |
Yes |
3 |
|
2931 |
Open |
23.4.2 [iterator.operations] |
Missed optimization opportunity with single-argument std::next |
No |
3 |
|
2858 |
New |
23.5.1 [reverse.iterators] |
LWG 2472: actually an incompatibility with C++03 |
Yes |
4 |
|
2595 |
New |
23.5.1.1 [reverse.iterator] |
reverse_iterator::operator[]'s return type revisited |
Yes |
3 |
|
3188 |
New |
23.6.3 [istreambuf.iterator] |
istreambuf_iterator::pointer should not be unspecified |
Yes |
3 |
|
3107 |
New |
23.6.3 [istreambuf.iterator] |
istreambuf_iterator has public exposition-only member |
Yes |
4 |
|
2366 |
New |
23.6.3 [istreambuf.iterator] |
istreambuf_iterator end-of-stream equality |
No |
3 |
|
3108 |
New |
23.6.3.1 [istreambuf.iterator.proxy] |
istreambuf_iterator::proxy::operator* should be const |
Yes |
3 |
|
3208 |
Tentatively Ready |
23.7 [iterator.range] |
Boolean's expression requirements are ordered inconsistently |
Yes |
0 |
|
3207 |
Tentatively NAD |
23.7 [iterator.range] |
N in ssize(const T (&)[N]) should be size_t |
Yes |
|
|
2457 |
New |
23.7 [iterator.range] |
std::begin() and std::end() do not support multi-dimensional arrays correctly |
No |
3 |
|
Issue |
Status |
Section |
Title |
Proposed Resolution |
Priority |
Duplicates |
423 |
Open |
29 [input.output] |
Effects of negative streamsize in iostreams |
Yes |
3 |
|
2675 |
New |
29.5.3.6 [ios.base.callback] |
register_callback can fail |
No |
3 |
|
3118 |
New |
29.5.4.2 [fpos.operations] |
fpos equality comparison unspecified |
No |
4 |
|
2808 |
Tentatively Resolved |
29.5.4.2 [fpos.operations] |
Requirements for fpos and stateT |
No |
4 |
|
2832 |
Tentatively Resolved |
29.5.4.2 [fpos.operations] |
§[fpos.operations] strange requirement for P(i) |
No |
3 |
|
2214 |
Open |
29.5.5.2 [basic.ios.cons] |
Clarify basic_ios::init call restrictions |
Yes |
4 |
|
2504 |
New |
29.6.3 [streambuf] |
basic_streambuf is not an abstract class |
No |
3 |
|
2349 |
Open |
29.7.4.2.1 [istream.formatted.reqmts] |
Clarify input/output function rethrow behavior |
Yes |
3 |
|
2498 |
New |
29.7.4.5 [istream.rvalue] |
operator>>(basic_istream&&, T&&) returns basic_istream&, but should probably return
basic_istream&& |
No |
3 |
|
2342 |
New |
29.7.5.1 [ostream] |
User conversion to wchar_t const* or to wchar_t not invoked for operator<< |
Yes |
4 |
|
2497 |
New |
29.7.5.1.3 [ostream.sentry] |
Use of uncaught_exception() |
Yes |
3 |
|
1203 |
Open |
29.7.5.5 [ostream.rvalue] |
More useful rvalue stream insertion |
Yes |
2 |
|
2984 |
New |
29.7.7 [ext.manip] |
put_money(99) is unnecessarily undefined |
Yes |
3 |
|
3006 |
New |
29.8.2.1 [stringbuf.cons] |
Constructing a basic_stringbuf from a string — where does the allocator come from? |
No |
3 |
|
3097 |
New |
29.8.2.4 [stringbuf.virtuals] |
basic_stringbuf seekoff effects trigger undefined behavior and have contradictory returns |
No |
3 |
|
2286 |
Open |
29.8.2.4 [stringbuf.virtuals] |
stringbuf::underflow() underspecified |
Yes |
4 |
|
3098 |
New |
29.11.7.4.9 [fs.path.decompose] |
Misleading example for filesystem::path::filename() |
Yes |
3 |
|
3070 |
New |
29.11.7.4.11 [fs.path.gen] |
path::lexically_relative causes surprising results if a filename can also be a
root-name |
Yes |
2 |
|
2947 |
New |
29.11.9.1 [fs.enum.path.format] |
Clarify several filesystem terms |
No |
3 |
|
3078 |
New |
29.11.11 [fs.class.directory.entry] |
directory_entry, directory_iterator and recursive_directory_iterator perform needless path copies |
No |
3 |
|
3171 |
Open |
29.11.11 [fs.class.directory.entry] |
LWG 2989 breaks directory_entry stream insertion |
Yes |
2 |
|
2708 |
Open |
29.11.13.1 [fs.rec.dir.itr.members] |
recursive_directory_iterator::recursion_pending() is incorrectly specified |
Yes |
2 |
|
3057 |
Open |
29.11.14.3 [fs.op.copy] |
Correct copy_options handling |
Yes |
2 |
|
3056 |
New |
29.11.14.4 [fs.op.copy.file] |
copy_file() copies which attributes? |
Yes |
3 |
|