Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
2136 |
Open |
17.5.1 [structure] |
Postconditions vs. exceptions |
No |
|
2012-11-14 |
2225 |
New |
17.6.2.2 [using.headers] |
Unrealistic header inclusion checks required |
Yes |
|
2012-12-25 |
2146 |
New |
17.6.3.1 [utility.arg.requirements] |
Are reference types Copy/Move-Constructible/Assignable or Destructible? |
No |
|
2012-11-14 |
2170 |
Core |
17.6.3.1 [utility.arg.requirements] |
Aggregates cannot be DefaultConstructible |
Yes |
|
2012-11-14 |
2152 |
Open |
17.6.3.2 [swappable.requirements] |
Instances of standard container types are not swappable |
No |
|
2012-11-14 |
2114 |
Open |
17.6.3.3 [nullablepointer.requirements] |
Incorrect "contextually convertible to bool" requirements |
Yes |
|
2012-11-14 |
2162 |
Review |
17.6.3.5 [allocator.requirements] |
allocator_traits::max_size missing noexcept |
Yes |
|
2012-11-14 |
2016 |
Open |
17.6.3.5 [allocator.requirements] |
Allocators must be no-throw swappable |
Yes |
|
2012-11-14 |
2108 |
Open |
17.6.3.5 [allocator.requirements] |
No way to identify allocator types that always compare equal |
Yes |
|
2012-11-14 |
2178 |
Open |
17.6.3.5 [allocator.requirements] |
Allocator requirement changes not mentioned Annex C |
No |
|
2012-11-14 |
2129 |
Open |
17.6.4.2.1 [namespace.std] |
User specializations of std::initializer_list |
No |
|
2012-11-14 |
2139 |
Deferred |
17.6.4.2.1 [namespace.std] |
What is a user-defined type? |
No |
|
2012-11-14 |
2224 |
New |
17.6.4.10 [res.on.objects] |
Ambiguous status of access to non-live objects |
Yes |
|
2012-12-25 |
2112 |
Open |
17.6.5 [conforming] |
User-defined classes that cannot be derived from |
No |
|
2012-11-14 |
2133 |
New |
17.6.5.4 [global.functions] |
Attitude to overloaded comma for iterators |
No |
|
2012-11-14 |
2013 |
Review |
17.6.5.6 [constexpr.functions] |
Do library implementers have the freedom to add constexpr? |
Yes |
|
2012-11-14 |
1526 |
Open |
17.6.5.9 [res.on.data.races] |
C++ should not impose thread safety requirements on C99 library implementations |
Yes |
|
2012-11-14 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
2212 |
New |
20.2 [utility] |
tuple_size for const pair request <tuple> header |
No |
|
2012-11-14 |
2153 |
New |
20.2.2 [utility.swap] |
Narrowing of the non-member swap contract |
No |
|
2012-11-14 |
2051 |
Open |
20.4.2 [tuple.tuple] |
Explicit tuple constructors for more than one parameter |
No |
|
2012-11-14 |
2089 |
Open |
20.6.9.1 [allocator.members] |
std::allocator::construct should use uniform initialization |
Yes |
|
2012-11-14 |
2127 |
Open |
20.6.10 [storage.iterator] |
Move-construction with raw_storage_iterator |
Yes |
|
2012-11-14 |
2072 |
Open |
20.6.11 [temporary.buffer] |
Unclear wording about capacity of temporary buffers |
No |
|
2012-11-14 |
2228 |
New |
20.7.1.2.3 [unique.ptr.single.asgn] |
Missing SFINAE rule in unique_ptr templated assignment |
Yes |
|
2012-12-25 |
2118 |
Open |
20.7.1.3 [unique.ptr.runtime] |
unique_ptr for array does not support cv qualification conversion of actual argument |
Yes |
|
2012-12-25 |
2070 |
Open |
20.7.2.2.6 [util.smartptr.shared.create] |
allocate_shared should use allocator_traits<A>::construct |
Yes |
|
2012-11-14 |
2179 |
New |
20.7.2.4 [util.smartptr.enab] |
enable_shared_from_this and construction from raw pointers |
No |
|
2012-11-14 |
2149 |
Open |
20.8 [function.objects] |
Concerns about 20.8/5 |
Yes |
|
2012-11-14 |
2219 |
New |
20.8.2 [func.require] |
INVOKE-ing a pointer to member with a reference_wrapper as the object expression |
Yes |
|
2012-12-25 |
2233 |
New |
20.8.11.1 [func.wrap.badcall] |
bad_function_call::what() unhelpful |
Yes |
|
2013-01-15 |
2062 |
Open |
20.8.11.2 [func.wrap.func] |
Effect contradictions w/o no-throw guarantee of std::function swaps |
No |
|
2012-11-14 |
2132 |
Review |
20.8.11.2.1 [func.wrap.func.con] |
std::function ambiguity |
Yes |
|
2012-12-25 |
2119 |
Open |
20.8.12 [unord.hash] |
Missing hash specializations for extended integer types |
Yes |
|
2012-11-14 |
2148 |
Open |
20.8.12 [unord.hash] |
Hashing enums should be supported directly by std::hash |
No |
|
2012-11-14 |
2196 |
Review |
20.9.4.3 [meta.unary.prop] |
Specification of is_*[copy/move]_[constructible/assignable] unclear for non-referencable types |
Yes |
|
2012-11-14 |
2197 |
New |
20.9.4.3 [meta.unary.prop] |
Specification of is_[un]signed unclear for non-arithmetic types |
Yes |
|
2012-11-14 |
2077 |
Open |
20.9.4.3 [meta.unary.prop] |
Further incomplete constraints for type traits |
No |
|
2012-11-14 |
2116 |
Open |
20.9.4.3 [meta.unary.prop] |
std::swap noexcept(what?) |
No |
|
2012-11-14 |
2101 |
Open |
20.9.7 [meta.trans] |
Some transformation types can produce impossible types |
Yes |
|
2012-11-14 |
2141 |
New |
20.9.7.6 [meta.trans.other] |
common_type trait produces reference types |
Yes |
|
2012-11-14 |
2094 |
Review |
20.11.5.1 [time.duration.cons] |
duration conversion overflow shouldn't participate in overload resolution |
Yes |
|
2012-11-14 |
2203 |
New |
20.12.4 [allocator.adaptor.members] |
scoped_allocator_adaptor uses wrong argument types for piecewise construction |
Yes |
|
2012-11-14 |
2144 |
New |
20.13 [type.index] |
Missing noexcept specification in type_index |
Yes |
|
2012-11-14 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
2226 |
New |
22.3.3.2.2 [conversions.string] |
wstring_convert methods do not take allocator instance |
No |
|
2012-12-25 |
2174 |
New |
22.3.3.2.2 [conversions.string] |
wstring_convert::converted() should be noexcept |
Yes |
|
2012-11-14 |
2175 |
New |
22.3.3.2.2 [conversions.string] |
wstring_convert and wbuffer_convert validity |
Yes |
|
2012-11-14 |
2176 |
New |
22.3.3.2.2 [conversions.string] |
Special members for wstring_convert and wbuffer_convert |
Yes |
|
2012-11-14 |
1169 |
Open |
22.4.2.1.2 [facet.num.get.virtuals] |
num_get not fully compatible with strto* |
Yes |
|
2012-11-14 |
2117 |
Open |
22.4.2.2.2 [facet.num.put.virtuals] |
ios_base manipulators should have showgrouping/noshowgrouping |
Yes |
|
2012-11-14 |
2229 |
New |
22.5 [locale.stdcvt] |
Standard code conversion facets underspecified |
Yes |
|
2013-01-15 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
2193 |
EWG |
23 [containers] |
Default constructors for standard library containers are explicit |
Yes |
|
2012-11-14 |
2177 |
Tentatively Ready |
23.2.1 [container.requirements.general] |
Requirements on Copy/MoveInsertable |
Yes |
|
2012-11-14 |
2167 |
Tentatively NAD |
23.2.1 [container.requirements.general] |
Copy assignment requirements of Containers |
Yes |
|
2012-11-14 |
2218 |
New |
23.2.1 [container.requirements.general] |
Unclear how containers use allocator_traits::construct() |
Yes |
|
2012-11-29 |
2211 |
New |
23.2.1 [container.requirements.general] |
Replace ambiguous use of "Allocator" in container requirements |
Yes |
|
2012-11-14 |
2200 |
New |
23.2.2 [container.requirements.dataraces] |
Data race avoidance for all containers, not only for sequences |
Yes |
|
2012-11-14 |
2231 |
New |
23.2.3 [sequence.reqmts] |
DR 704 removes complexity guarantee for clear() |
Yes |
|
2013-01-15 |
2206 |
New |
23.2.3 [sequence.reqmts] |
Inaccuracy in initializer_list constructor requirements |
No |
|
2012-11-14 |
2227 |
New |
23.2.4 [associative.reqmts] |
Stateful comparison objects in associative containers |
Yes |
|
2012-12-25 |
2215 |
New |
23.2.4 [associative.reqmts] |
(unordered) associative container functors should be CopyConstructible |
No |
|
2012-11-14 |
2052 |
Open |
23.2.4 [associative.reqmts] |
Mixup between mapped_type and value_type for associative containers |
Yes |
|
2012-11-14 |
2198 |
New |
23.2.5 [unord.req] |
max_load_factor(z) makes no strong guarantees, but bans useful behavior |
No |
|
2012-12-25 |
2156 |
New |
23.2.5 [unord.req] |
Unordered containers' reserve(n) reserves for n-1 elements |
No |
|
2012-11-14 |
2199 |
New |
23.2.5 [unord.req] |
unordered containers are required to have an initial max load factor of 1.0 |
No |
|
2012-11-14 |
1175 |
Open |
23.2.5 [unord.req] |
unordered complexity |
Yes |
|
2012-11-14 |
2189 |
New |
23.2.5.1 [unord.req.except] |
Throwing swap breaks unordered containers' state |
No |
|
2012-11-14 |
2210 |
New |
23.3 [sequences] |
Missing allocator-extended constructor for allocator-aware containers |
Yes |
|
2013-01-15 |
2209 |
New |
23.3 [sequences] |
assign() overspecified for sequence containers |
Yes |
|
2012-11-14 |
2157 |
Open |
23.3.2.8 [array.zero] |
How does std::array<T,0> initialization work when T is not default-constructible? |
Yes |
|
2012-11-14 |
2222 |
New |
23.3.4.6 [forwardlist.ops] |
Inconsistency in description of forward_list::splice_after single-element overload |
Yes |
|
2012-12-25 |
2122 |
Open |
23.3.5.5 [list.ops] |
merge() stability for lists versus forward lists |
Yes |
|
2012-11-14 |
2223 |
New |
23.3.6.3 [vector.capacity] |
shrink_to_fit effect on iterator validity |
Yes |
|
2012-12-25 |
2158 |
New |
23.3.6.3 [vector.capacity] |
Conditional copy/move in std::vector |
No |
|
2012-11-14 |
2160 |
New |
23.3.6.3 [vector.capacity] |
Unintended destruction ordering-specification of resize |
No |
|
2012-11-14 |
2164 |
New |
23.3.6.5 [vector.modifiers] |
What are the semantics of vector.emplace(vector.begin(), vector.back())? |
No |
|
2012-11-14 |
2187 |
Tentatively Ready |
23.3.7 [vector.bool] |
vector<bool> is missing emplace and emplace_back member functions |
Yes |
|
2012-11-14 |
2161 |
New |
23.4 [associative] |
const equivalence of std::map |
No |
|
2012-11-14 |
2059 |
Open |
23.4.4 [map] |
C++0x ambiguity problem with map::erase |
Yes |
|
2012-11-14 |
2076 |
New |
23.4.6.2 [set.cons] |
Bad CopyConstructible requirement in set constructors |
Yes |
|
2012-11-14 |
2230 |
New |
23.5 [unord] |
"see below" for initializer-list constructors of unordered containers |
Yes |
|
2013-01-15 |
2194 |
New |
23.6 [container.adaptors] |
Impossible container requirements for adaptor types |
Yes |
|
2012-11-14 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
1213 |
Deferred |
24.2 [iterator.requirements] |
Meaning of valid and singular iterator underspecified |
Yes |
|
2012-11-14 |
2035 |
Open |
24.2.4 [output.iterators] |
Output iterator requirements are broken |
Yes |
|
2012-11-14 |
2038 |
Open |
24.2.4 [output.iterators] |
Missing definition for incrementable iterator |
No |
|
2012-11-14 |
2128 |
Open |
24.3 [iterator.synopsis] |
Absence of global functions cbegin/cend |
Yes |
|
2012-11-14 |
2208 |
New |
24.5.1 [reverse.iterators] |
std::reverse_iterator should be a literal type |
No |
|
2012-11-14 |
2204 |
New |
24.5.1.3.4 [reverse.iter.op.star] |
reverse_iterator should not require a second copy of the base iterator |
Yes |
|
2012-11-14 |
2188 |
New |
24.5.1.3.5 [reverse.iter.opref] |
Reverse iterator does not fully support targets that overload operator& |
Yes |
|
2012-11-14 |
2106 |
Open |
24.5.3 [move.iterators] |
move_iterator wrapping iterators returning prvalues |
Yes |
|
2013-01-15 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
2181 |
New |
26.5.1.2 [rand.req.seedseq] |
Exceptions from seed sequence operations |
Yes |
|
2012-11-14 |
2182 |
New |
26.5.1.2 [rand.req.seedseq] |
Container::[const_]reference types are misleadingly specified |
Yes |
|
2012-11-14 |
2154 |
New |
26.5.1.3 [rand.req.urng] |
What exactly does compile-time complexity imply? |
No |
|
2012-11-14 |
2180 |
New |
26.5.7.1 [rand.util.seedseq] |
Exceptions from std::seed_seq operations |
Yes |
|
2012-11-14 |
2168 |
New |
26.5.8.2.2 [rand.dist.uni.real] |
Inconsistent specification of uniform_real_distribution constructor |
No |
|
2012-11-14 |
2115 |
Open |
26.6.8 [template.mask.array] |
Undefined behaviour for valarray assignments with mask_array index? |
No |
|
2012-11-14 |
2079 |
New |
26.8 [c.math] |
Required pow() overloads |
No |
|
2012-11-14 |
2192 |
New |
26.8 [c.math] |
Validity and return type of std::abs(0u) is unclear |
Yes |
|
2012-11-14 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
1450 |
Open |
28.5.2 [re.matchflag] |
Contradiction in regex_constants |
Yes |
|
2012-11-14 |
2018 |
Open |
28.7 [re.traits] |
regex_traits::isctype Returns clause is wrong |
Yes |
|
2012-11-14 |
2137 |
Open |
28.8.3 [re.regex.assign] |
Misleadingly constrained post-condition in the presence of exceptions |
Yes |
|
2012-11-14 |
2217 |
New |
28.9.2 [re.submatch.op] |
operator==(sub_match, string) slices on embedded '\0's |
No |
|
2012-11-29 |
2195 |
New |
28.10 [re.results] |
Missing constructors for match_results |
Yes |
|
2012-11-14 |
2183 |
New |
28.10.1 [re.results.const] |
Muddled allocator requirements for match_results constructors |
No |
|
2012-11-14 |
2184 |
New |
28.10.1 [re.results.const] |
Muddled allocator requirements for match_results assignments |
No |
|
2012-11-14 |
2191 |
New |
28.10.1 [re.results.const] |
Incorrect specification of match_results(match_results&&) |
No |
|
2012-11-14 |
2205 |
New |
28.11.2 [re.alg.match] |
Problematic postconditions of regex_match and regex_search |
Yes |
|
2012-11-14 |
2216 |
New |
28.11.4 [re.alg.replace] |
regex_replace(basic_string) allocator handling |
No |
|
2012-11-29 |
2213 |
New |
28.11.4 [re.alg.replace] |
Return value of std::regex_replace |
Yes |
|
2012-11-14 |
2220 |
New |
28.12.2.2 [re.tokiter.comp] |
Under-specification of operator== for regex_token_iterator |
No |
|
2012-12-25 |
2221 |
New |
28.12.2.2 [re.tokiter.comp] |
No formatted output operator for nullptr |
No |
|
2012-12-25 |
Issue |
Status |
Section |
Title |
Proposed Resolution |
Duplicates |
Last modified |
2126 |
Tentatively NAD Editorial |
30.4.1 [thread.mutex.requirements] |
Several specification problems in regard to mutex requirements |
No |
|
2012-11-14 |
2134 |
Tentatively NAD Editorial |
30.4.1.2 [thread.mutex.requirements.mutex] |
Redundant Mutex requirement? |
No |
|
2012-11-14 |
2125 |
Tentatively NAD Editorial |
30.4.1.3 [thread.timedmutex.requirements] |
TimedMutex specification problem |
No |
|
2012-11-14 |
2104 |
New |
30.4.2.2 [thread.lock.unique] |
unique_lock move-assignment should not be noexcept |
Yes |
|
2012-11-14 |
2080 |
Tentatively Ready |
30.4.4 [thread.once] |
Specify when once_flag becomes invalid |
Yes |
|
2012-11-14 |
2140 |
Review |
30.5 [thread.condition] |
Meaning of notify_all_at_thread_exit synchronization requirement? |
Yes |
|
2012-11-14 |
2190 |
Review |
30.5 [thread.condition] |
Condition variable specification |
Yes |
|
2012-11-14 |
2135 |
Open |
30.5.1 [thread.condition.condvar] |
Unclear requirement for exceptions thrown in condition_variable::wait() |
No |
|
2012-11-14 |
2098 |
Review |
30.6.5 [futures.promise] |
Minor Inconsistency between promise::set_value and promise::set_value_at_thread_exit |
Yes |
|
2012-11-14 |
2095 |
New |
30.6.5 [futures.promise] |
promise and packaged_task missing constructors needed for uses-allocator construction |
Yes |
|
2012-11-14 |
2185 |
Review |
30.6.6 [futures.unique_future] |
Missing throws clause for future/shared_future::wait_for/wait_until |
Yes |
|
2012-11-14 |
2078 |
Tentatively NAD Editorial |
30.6.8 [futures.async] |
Throw specification of async() incomplete |
No |
|
2012-11-14 |
2100 |
Review |
30.6.8 [futures.async] |
timed waiting functions cannot timeout if launch::async policy used |
Yes |
|
2012-11-14 |
2120 |
Review |
30.6.8 [futures.async] |
What should async do if neither 'async' nor 'deferred' is set in policy? |
Yes |
|
2012-11-14 |
2202 |
New |
30.6.8 [futures.async] |
Missing allocator support by async |
No |
|
2012-11-14 |
2186 |
Open |
30.6.8 [futures.async] |
Incomplete action on async/launch::deferred |
Yes |
|
2012-11-14 |
2097 |
New |
30.6.9.1 [futures.task.members] |
packaged_task constructors should be constrained |
Yes |
|
2012-11-14 |
2142 |
Open |
30.6.9.1 [futures.task.members] |
packaged_task::operator() synchronization too broad? |
No |
|
2012-11-14 |