Reference ISO/IEC IS 14882:2020(E)
This document is the Table of Contents for the Library Active Issues List, Library Defect Reports and Accepted Issues, and Library Closed Issues List.
Revised 2025-10-12
| Issue | Status | Section | Title | Proposed Resolution | Priority | Duplicates |
|---|---|---|---|---|---|---|
| 1 | TC1 | 16.4.3.3 [using.linkage] | C library linkage editing oversight | Yes | ||
| 2 | NAD | 99 [auto.ptr.conv] | Auto_ptr conversions effects incorrect | Yes | ||
| 3 | TC1 | 17.5 [support.start.term] | Atexit registration during atexit() call is not described | Yes | ||
| 4 | NAD | 27.4.3 [basic.string] | basic_string size_type and difference_type should be implementation defined |
Yes | ||
| 5 | TC1 | 27.4.3.7.8 [string.swap] | String::compare specification questionable | Yes | 87 | |
| 6 | NAD | 31.5.3 [fpos] | File position not an offset unimplementable | Yes | ||
| 7 | TC1 | 27 [strings] | String clause minor problems | Yes | ||
| 8 | TC1 | 28.3.3.1.6 [locale.statics] | Locale::global lacks guarantee | Yes | ||
| 9 | TC1 | 17.6.3 [new.delete] | Operator new(0) calls should not yield the same pointer | Yes | ||
| 10 | Dup | 28.3.4.2.6 [locale.codecvt.byname] | Codecvt<>::do unclear | Yes | 19 | |
| 11 | TC1 | 22.9.2 [template.bitset] | Bitset minor problems | Yes | ||
| 12 | NAD | 16.4.4.6 [allocator.requirements] | Way objects hold allocators unclear | Yes | ||
| 13 | TC1 | 31.7.5.3.3 [istream.extractors] | Eos refuses to die | Yes | ||
| 14 | TC1 | 28.3.3.1.4 [locale.members] | Locale::combine should be const | Yes | ||
| 15 | TC1 | 28.3.3.1.4 [locale.members] | Locale::name requirement inconsistent | Yes | ||
| 16 | TC1 | 28.3.4.2.5 [locale.codecvt] | Bad ctype_byname<char> decl | Yes | ||
| 17 | TC1 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Bad bool parsing | Yes | ||
| 18 | TC1 | 28.3.4.3.2.2 [facet.num.get.members] | Get(...bool&) omitted | Yes | ||
| 19 | TC1 | 28.3.4.2.5 [locale.codecvt] | "Noconv" definition too vague | Yes | 10 | |
| 20 | TC1 | 28.3.4.4.1.3 [facet.numpunct.virtuals] | Thousands_sep returns wrong type | Yes | ||
| 21 | TC1 | 28.3.3.1.2.1 [locale.category] | Codecvt_byname<> instantiations | Yes | ||
| 22 | TC1 | 31.10.4.4 [ifstream.members] | Member open vs. flags | Yes | ||
| 23 | CD1 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Num_get overflow result | Yes | ||
| 24 | TC1 | 28.3.4.2.5 [locale.codecvt] | "do_convert" doesn't exist | Yes | 72 | |
| 25 | TC1 | 27.4.4.4 [string.io] | String operator<< uses width() value wrong | Yes | 67 | |
| 26 | TC1 | 31.7.5.2.4 [istream.sentry] | Bad sentry example | Yes | ||
| 27 | TC1 | 27.4.3.7.5 [string.erase] | String::erase(range) yields wrong iterator | Yes | ||
| 28 | TC1 | 28.3.4.2.4.3 [facet.ctype.char.members] | Ctype<char>is ambiguous | Yes | 236 | |
| 29 | TC1 | 31.4.3 [narrow.stream.objects] | Ios_base::init doesn't exist | Yes | ||
| 30 | TC1 | 28.3.3.1.2.1 [locale.category] | Wrong header for LC_* | Yes | ||
| 31 | TC1 | 28.3.3.1 [locale] | Immutable locale values | Yes | 378 | |
| 32 | TC1 | 31.6.3.5.4 [streambuf.virt.pback] | Pbackfail description inconsistent | Yes | ||
| 33 | TC1 | 28.3.4.2.5 [locale.codecvt] | Codecvt<> mentions from_type | Yes | 43 | |
| 34 | TC1 | 28.3.4.3.3.3 [facet.num.put.virtuals] | True/falsename() not in ctype<> | Yes | ||
| 35 | TC1 | 31.5 [iostreams.base] | No manipulator unitbuf in synopsis | Yes | ||
| 36 | TC1 | 31.5.2.6 [ios.base.storage] | Iword & pword storage lifetime omitted | Yes | ||
| 37 | TC1 | 28.3.3.1 [locale] | Leftover "global" reference | Yes | ||
| 38 | TC1 | 28.3.3.2 [locale.global.templates] | Facet definition incomplete | Yes | ||
| 39 | TC1 | 24.6.4.4 [istreambuf.iterator.ops] | istreambuf_iterator<>::operator++(int) definition garbled | Yes | ||
| 40 | TC1 | 99 [facets.examples] | Meaningless normative paragraph in examples | Yes | ||
| 41 | TC1 | 31.5.2 [ios.base] | Ios_base needs clear(), exceptions() | Yes | 157 | |
| 42 | TC1 | 27.4.3 [basic.string] | String ctors specify wrong default allocator | Yes | ||
| 43 | Dup | 28.3.4.2.6 [locale.codecvt.byname] | Locale table correction | Yes | 33 | |
| 44 | CD1 | 31 [input.output] | Iostreams use operator== on int_type values | Yes | ||
| 45 | NAD | 31.8.4 [ostringstream] | Stringstreams read/write pointers initial position unclear | Yes | ||
| 46 | TC1 | 99 [depr.str.strstreams] | Minor Annex D errors | Yes | ||
| 47 | TC1 | 31.5.2.4 [ios.base.locales] | Imbue() and getloc() Returns clauses swapped | Yes | ||
| 48 | TC1 | 31.5.2.2.1 [ios.failure] | Use of non-existent exception constructor | Yes | ||
| 49 | CD1 | 31.5.2.5 [ios.members.static] | Underspecification of ios_base::sync_with_stdio | Yes | ||
| 50 | TC1 | 31.5.2 [ios.base] | Copy constructor and assignment operator of ios_base | Yes | ||
| 51 | TC1 | 23.2 [container.requirements] | Requirement to not invalidate iterators missing | Yes | ||
| 52 | TC1 | 31.5.3.3 [fpos.operations] | Small I/O problems | Yes | ||
| 53 | TC1 | 31.5.4.2 [basic.ios.cons] | Basic_ios destructor unspecified | Yes | ||
| 54 | TC1 | 31.6.3.2 [streambuf.cons] | Basic_streambuf's destructor | Yes | ||
| 55 | TC1 | 31 [input.output] | Invalid stream position is undefined | Yes | ||
| 56 | TC1 | 31.6.3 [streambuf] | Showmanyc's return type | Yes | ||
| 57 | TC1 | 27.2.4.6 [char.traits.specializations.wchar.t] | Mistake in char_traits | Yes | ||
| 58 | NAD | 31.7.5.3.3 [istream.extractors] | Extracting a char from a wide-oriented stream | Yes | ||
| 59 | TC1 | 31.6.3.4.2 [streambuf.get.area] | Ambiguity in specification of gbump | Yes | ||
| 60 | TC1 | 31.7.5.3.1 [istream.formatted.reqmts] | What is a formatted input function? | Yes | 162, 163, 166 | |
| 61 | TC1 | 31.7.5.4 [istream.unformatted] | Ambiguity in iostreams exception policy | Yes | ||
| 62 | TC1 | 31.7.5.4 [istream.unformatted] | Sync's return value |
Yes | ||
| 63 | TC1 | 31.7.6.4 [ostream.unformatted] | Exception-handling policy for unformatted output | Yes | ||
| 64 | TC1 | 31.7.5.3.3 [istream.extractors] | Exception handling in basic_istream::operator>>(basic_streambuf*) |
Yes | ||
| 65 | NAD | 99 [depr.strstreambuf.virtuals] | Underspecification of strstreambuf::seekoff | Yes | ||
| 66 | TC1 | 99 [depr.strstreambuf.virtuals] | Strstreambuf::setbuf | Yes | ||
| 67 | Dup | 27.4.4.4 [string.io] | Setw useless for strings | Yes | 25 | |
| 68 | TC1 | 31.7.5.3.3 [istream.extractors] | Extractors for char* should store null at end | Yes | ||
| 69 | TC1 | 23.3.13 [vector] | Must elements of a vector be contiguous? | Yes | ||
| 70 | TC1 | 17.9 [support.exception] | Uncaught_exception() missing throw() specification | Yes | ||
| 71 | TC1 | 28.3.4.6.2 [locale.time.get] | Do_get_monthname synopsis missing argument | Yes | ||
| 72 | Dup | 28.3.4.2.5 [locale.codecvt] | Do_convert phantom member function | Yes | 24 | |
| 73 | NAD | 31.10 [file.streams] | is_open should be const |
Yes | ||
| 74 | TC1 | 28.3.4.2.5 [locale.codecvt] | Garbled text for codecvt::do_max_length |
Yes | ||
| 75 | TC1 | 28.3.4.2.5 [locale.codecvt] | Contradiction in codecvt::length's argument types |
Yes | ||
| 76 | CD1 | 28.3.4.2.5 [locale.codecvt] | Can a codecvt facet always convert one internal character at a time? |
Yes | ||
| 77 | Dup | 29.6.2.4 [valarray.access] | Valarray operator[] const returning value | Yes | 389 | |
| 78 | TC1 | 31.5.2 [ios.base] | Typo: event_call_back | Yes | ||
| 79 | TC1 | 29.4.2 [complex.syn] | Inconsistent declaration of polar() | Yes | ||
| 80 | TC1 | 29.4.2 [complex.syn] | Global Operators of complex declared twice | Yes | ||
| 81 | NAD | 29.6.5 [template.slice.array] | Wrong declaration of slice operations | Yes | ||
| 82 | NAD | 23.2.7 [associative.reqmts] | Missing constant for set elements | Yes | ||
| 83 | TC1 | 27.4.3 [basic.string] | String::npos vs. string::max_size() | Yes | 89 | |
| 84 | NAD | 27.4.3.6 [string.access] | Ambiguity with string::insert() | Yes | ||
| 85 | NAD | 27 [strings] | String char types | Yes | ||
| 86 | TC1 | 27.4.3.2 [string.require] | String constructors don't describe exceptions | Yes | ||
| 87 | Dup | 27.4.3.7.8 [string.swap] | Error in description of string::compare() | Yes | 5 | |
| 88 | NAD | 27.4.3.7.4 [string.insert] | Inconsistency between string::insert() and string::append() | Yes | ||
| 89 | Dup | 27.4.3.7.4 [string.insert] | Missing throw specification for string::insert() and string::replace() | Yes | 83 | |
| 90 | TC1 | 27.4.4.4 [string.io] | Incorrect description of operator >> for strings | Yes | ||
| 91 | CD1 | 27.4.4.4 [string.io] | Description of operator>> and getline() for string<> might cause endless loop | Yes | ||
| 92 | CD1 | 26 [algorithms] | Incomplete Algorithm Requirements | Yes | ||
| 93 | NAD | 29.6 [numarray] | Incomplete Valarray Subset Definitions | Yes | ||
| 94 | NAD | 16.4.6 [conforming] | May library implementors add template parameters to Standard Library classes? | Yes | ||
| 95 | NAD | 16.4.6.5 [member.functions] | Members added by the implementation | Yes | ||
| 96 | NAD | 23.3.13 [vector] | Vector<bool> is not a container | Yes | ||
| 97 | NAD | 23 [containers] | Insert inconsistent definition | Yes | ||
| 98 | CD1 | 24.3.5.3 [input.iterators] | Input iterator requirements are badly written | Yes | ||
| 99 | NAD | 24.5.1.8 [reverse.iter.cmp] | Reverse_iterator comparisons completely wrong | Yes | ||
| 100 | NAD | 24.5.2 [insert.iterators] | Insert iterators/ostream_iterators overconstrained | Yes | ||
| 101 | NAD Editorial | 23.3.13 [vector] | No way to free storage for vector and deque | Yes | ||
| 102 | Dup | 23.2.7 [associative.reqmts] | Bug in insert range in associative containers | Yes | 264 | |
| 103 | CD1 | 23.2.7 [associative.reqmts] | set::iterator is required to be modifiable, but this allows modification of keys | Yes | ||
| 104 | NAD | 27.4.3.5 [string.capacity] | Description of basic_string::operator[] is unclear | Yes | ||
| 105 | Dup | 31.10 [file.streams] | fstream ctors argument types desired | Yes | 454 | |
| 106 | TC1 | 29.6.5 [template.slice.array] | Numeric library private members are implementation defined | Yes | ||
| 107 | NAD | 29.6.2 [template.valarray] | Valarray constructor is strange | Yes | ||
| 108 | TC1 | 17.7.3 [type.info] | Lifetime of exception::what() return unspecified | Yes | ||
| 109 | CD1 | 99 [depr.lib.binders] | Missing binders for non-const sequence elements | Yes | ||
| 110 | TC1 | 24.6.4 [istreambuf.iterator] | istreambuf_iterator::equal not const | Yes | ||
| 111 | NAD | 24.6.4.4 [istreambuf.iterator.ops] | istreambuf_iterator::equal overspecified, inefficient |
Yes | ||
| 112 | TC1 | 24.6.5.2 [ostreambuf.iter.cons] | Minor typo in ostreambuf_iterator constructor |
Yes | ||
| 113 | NAD | 31.7.5.2 [istream] | Missing/extra iostream sync semantics | Yes | ||
| 114 | TC1 | 17.6.3.4 [new.delete.placement] | Placement forms example in error twice | Yes | 196 | |
| 115 | TC1 | 99 [depr.strstream.cons] | Typo in strstream constructors | Yes | ||
| 116 | Dup | 22.9.2 [template.bitset] | bitset cannot be constructed with a const char* | Yes | 778 | |
| 117 | CD1 | 31.7.6.3.2 [ostream.inserters.arithmetic] | basic_ostream uses nonexistent num_put member functions |
Yes | ||
| 118 | CD1 | 31.7.5.3.2 [istream.formatted.arithmetic] | basic_istream uses nonexistent num_get member functions |
Yes | ||
| 119 | TC1 | 16.4.6.14 [res.on.exception.handling] | Should virtual functions be allowed to strengthen the exception specification? | Yes | ||
| 120 | CD1 | 16.4.5.3 [reserved.names] | Can an implementor add specializations? | Yes | ||
| 121 | NAD | 28.3.3.1.2.1 [locale.category] | Detailed definition for ctype<wchar_t> specialization | Yes | ||
| 122 | TC1 | 31.6.3 [streambuf] | streambuf/wstreambuf description should not say they are specializations | Yes | ||
| 123 | CD1 | 29.6.5.4 [slice.arr.fill] | Should valarray helper arrays fill functions be const? | Yes | ||
| 124 | TC1 | 28.3.4.2.3 [locale.ctype.byname] | ctype_byname<charT>::do_scan_is & do_scan_not return type should be const charT* | Yes | ||
| 125 | TC1 | 29.6.2 [template.valarray] | valarray<T>::operator!() return type is inconsistent | Yes | ||
| 126 | TC1 | 28.3.4.2.2.3 [locale.ctype.virtuals] | typos in Effects clause of ctype::do_narrow() | Yes | ||
| 127 | TC1 | 99 [auto.ptr] | auto_ptr<> conversion issues | Yes | ||
| 128 | NAD | 31.8 [string.streams] | Need open_mode() function for file stream, string streams, file buffers, and string buffers | Yes | ||
| 129 | TC1 | 31.7.5.4 [istream.unformatted] | Need error indication from seekp() and seekg() | Yes | ||
| 130 | CD1 | 23.2.7 [associative.reqmts] | Return type of container::erase(iterator) differs for associative containers | Yes | 451 | |
| 131 | NAD | 23.3.11.5 [list.ops] | list::splice throws nothing | Yes | ||
| 132 | TC1 | 23.3.11.3 [list.capacity] | list::resize description uses random access iterators | Yes | ||
| 133 | TC1 | 23.4.3 [map] | map missing get_allocator() | Yes | ||
| 134 | TC1 | 23.3.13.2 [vector.cons] | vector constructors over specified | Yes | ||
| 135 | NAD | 31.7.5.7.2 [iostream.cons] | basic_iostream doubly initialized | Yes | ||
| 136 | CD1 | 31.7.5.4 [istream.unformatted] | seekp, seekg setting wrong streams? | Yes | ||
| 137 | TC1 | 28.3.3.1 [locale] | Do use_facet and has_facet look in the global locale? | Yes | ||
| 138 | NAD | 28.3.4.2.5 [locale.codecvt] | Class ctype_byname<char> redundant and misleading |
Yes | ||
| 139 | TC1 | 23.2.4 [sequence.reqmts] | Optional sequence operation table description unclear | Yes | ||
| 140 | NAD Editorial | 23.4.3 [map] | map<Key, T>::value_type does not satisfy the assignable requirement | Yes | ||
| 141 | TC1 | 27.4.3.7.4 [string.insert] | basic_string::find_last_of, find_last_not_of say pos instead of xpos | Yes | ||
| 142 | TC1 | 26.8.11 [alg.lex.comparison] | lexicographical_compare complexity wrong | Yes | ||
| 143 | NAD | 17.15 [support.c.headers] | C .h header wording unclear | Yes | ||
| 144 | TC1 | 23.3.5.2 [deque.cons] | Deque constructor complexity wrong | Yes | ||
| 145 | NAD | 31.5.4.2 [basic.ios.cons] | adjustfield lacks default value | Yes | ||
| 146 | TC1 | 29.4.6 [complex.ops] | complex<T> Inserter and Extractor need sentries | Yes | ||
| 147 | TC1 | 16.4.6.4 [global.functions] | Library Intro refers to global functions that aren't global | Yes | ||
| 148 | TC1 | 99 [facets.examples] | Functions in the example facet BoolNames should be const | Yes | ||
| 149 | C++11 | 23.2.4 [sequence.reqmts] | Insert should return iterator to first element inserted | Yes | ||
| 150 | TC1 | 26.6.9 [alg.find.first.of] | Find_first_of says integer instead of iterator | Yes | ||
| 151 | TC1 | 23.2.4 [sequence.reqmts] | Can't currently clear() empty container | Yes | ||
| 152 | TC1 | 28.3.4.2.2.3 [locale.ctype.virtuals] | Typo in scan_is() semantics |
Yes | ||
| 153 | CD1 | 28.3.4.2.4.3 [facet.ctype.char.members] | Typo in narrow() semantics |
Yes | 207 | |
| 154 | TC1 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Missing double specifier for do_get() |
Yes | ||
| 155 | TC1 | 31.4 [iostream.objects] | Typo in naming the class defining the class Init |
Yes | ||
| 156 | TC1 | 31.5.2.4 [ios.base.locales] | Typo in imbue() description |
Yes | ||
| 157 | Dup | 31.5.2.6 [ios.base.storage] | Meaningless error handling for pword() and iword() |
Yes | 41 | |
| 158 | TC1 | 31.6.3.5.2 [streambuf.virt.buffer] | Underspecified semantics for setbuf() |
Yes | ||
| 159 | TC1 | 31.6.3.5.3 [streambuf.virt.get] | Strange use of underflow() |
Yes | ||
| 160 | TC1 | 31.7.5.2 [istream] | Typo: Use of non-existing function exception() |
Yes | ||
| 161 | TC1 | 31.7.5.3.2 [istream.formatted.arithmetic] | Typo: istream_iterator vs. istreambuf_iterator |
Yes | ||
| 162 | Dup | 31.7.5.3.3 [istream.extractors] | Really "formatted input functions"? | Yes | 60 | |
| 163 | Dup | 31.7.5.4 [istream.unformatted] | Return of gcount() after a call to gcount |
Yes | 60 | |
| 164 | TC1 | 28.3.4.6.4.3 [locale.time.put.virtuals] | do_put() has apparently unused fill argument | Yes | ||
| 165 | CD1 | 31.7.6.2 [ostream] | xsputn(), pubsync() never called by basic_ostream members? |
Yes | ||
| 166 | Dup | 31.7.6.3.3 [ostream.inserters] | Really "formatted output functions"? | Yes | 60 | |
| 167 | CD1 | 31.7.6.3.4 [ostream.inserters.character] | Improper use of traits_type::length() |
Yes | ||
| 168 | TC1 | 31.7.6.4 [ostream.unformatted] | Typo: formatted vs. unformatted | Yes | ||
| 169 | TC1 | 31.8.2.5 [stringbuf.virtuals] | Bad efficiency of overflow() mandated |
Yes | ||
| 170 | TC1 | 31.8.5 [stringstream] | Inconsistent definition of traits_type |
Yes | ||
| 171 | CD1 | 31.10.3.5 [filebuf.virtuals] | Strange seekpos() semantics due to joint position |
Yes | ||
| 172 | TC1 | 31.7.5.4 [istream.unformatted] | Inconsistent types for basic_istream::ignore() |
Yes | ||
| 173 | TC1 | 31.10.3.5 [filebuf.virtuals] | Inconsistent types for basic_filebuf::setbuf() |
Yes | ||
| 174 | TC1 | 99 [depr.ios.members] | Typo: OFF_T vs. POS_T |
Yes | ||
| 175 | TC1 | 99 [depr.ios.members] | Ambiguity for basic_streambuf::pubseekpos() and a few other functions. |
Yes | ||
| 176 | TC1 | 99 [depr.ios.members] | exceptions() in ios_base...? |
Yes | ||
| 177 | NAD | 29.4.6 [complex.ops] | Complex operators cannot be explicitly instantiated | Yes | ||
| 178 | NAD | 31.4.3 [narrow.stream.objects] | Should clog and cerr initially be tied to cout? | Yes | ||
| 179 | CD1 | 23.2 [container.requirements] | Comparison of const_iterators to iterators doesn't work | Yes | ||
| 180 | CD1 | 27.4.3 [basic.string] | Container member iterator arguments constness has unintended consequences | Yes | ||
| 181 | TC1 | 22.3 [pairs] | make_pair() unintended behavior | Yes | ||
| 182 | CD1 | 16 [library] | Ambiguous references to size_t | Yes | ||
| 183 | CD1 | 31.7.7 [std.manip] | I/O stream manipulators don't work for wide character streams | Yes | ||
| 184 | CD1 | 17.3.5.3 [numeric.special] | numeric_limits<bool> wording problems | Yes | ||
| 185 | CD1 | 22.10 [function.objects] | Questionable use of term "inline" | Yes | ||
| 186 | CD1 | 22.9.2.3 [bitset.members] | bitset::set() second parameter should be bool | Yes | ||
| 187 | CD1 | 26.7.3 [alg.swap] | iter_swap underspecified | Yes | ||
| 188 | NAD | 29.6.2.7 [valarray.cassign] | valarray helpers missing augmented assignment operators | Yes | ||
| 189 | TC1 | 31.5.2.3 [fmtflags.state] | setprecision() not specified correctly | Yes | ||
| 190 | NAD | 26.8.9 [alg.min.max] | min() and max() functions should be std::binary_functions | Yes | ||
| 191 | NAD | 26.8.4 [alg.binary.search] | Unclear complexity for algorithms such as binary search | Yes | ||
| 192 | NAD | 23.2.7 [associative.reqmts] | a.insert(p,t) is inefficient and overconstrained | Yes | 233 | |
| 193 | TC1 | 26.8.8 [alg.heap.operations] | Heap operations description incorrect | Yes | 216 | |
| 194 | NAD | 31.5.4 [ios] | rdbuf() functions poorly specified | Yes | ||
| 195 | TC1 | 31.7.5.2.4 [istream.sentry] | Should basic_istream::sentry's constructor ever set eofbit? |
Yes | ||
| 196 | Dup | 17.6.3.4 [new.delete.placement] | Placement new example has alignment problems | Yes | 114 | |
| 197 | NAD | 16.4.4.6 [allocator.requirements] | max_size() underspecified | Yes | ||
| 198 | CD1 | 24.3.4 [iterator.concepts] | Validity of pointers and references unspecified after iterator destruction | Yes | ||
| 199 | TC1 | 16.4.4.6 [allocator.requirements] | What does allocate(0) return? |
Yes | ||
| 200 | CD1 | 24.3.5.5 [forward.iterators] | Forward iterator requirements don't allow constant iterators | Yes | ||
| 201 | CD1 | 17.3 [support.limits] | Numeric limits terminology wrong | Yes | ||
| 202 | CD1 | 26.7.9 [alg.unique] | unique() effects unclear when predicate not an equivalence relation | Yes | ||
| 203 | NAD | 31.7.5.2.4 [istream.sentry] | basic_istream::sentry::sentry() is uninstantiable with ctype<user-defined type> | Yes | ||
| 204 | NAD | 24.4.3 [iterator.operations] | distance(first, last) when "last" is before "first" | Yes | ||
| 205 | NAD | 17.3.5.2 [numeric.limits.members] | numeric_limits unclear on how to determine floating point types | Yes | ||
| 206 | CD1 | 17.6.3.2 [new.delete.single] | operator new(size_t, nothrow) may become unlinked to ordinary operator new if ordinary version replaced | Yes | ||
| 207 | Dup | 28.3.4.2.4.3 [facet.ctype.char.members] | ctype<char> members return clause incomplete | Yes | 153 | |
| 208 | TC1 | 24.3.4 [iterator.concepts] | Unnecessary restriction on past-the-end iterators | Yes | ||
| 209 | TC1 | 27.4.3 [basic.string] | basic_string declarations inconsistent | Yes | ||
| 210 | TC1 | 26 [algorithms] | distance first and last confused | Yes | ||
| 211 | TC1 | 27.4.4.4 [string.io] | operator>>(istream&, string&) doesn't set failbit | Yes | ||
| 212 | TC1 | 26.8.9 [alg.min.max] | Empty range behavior unclear for several algorithms | Yes | ||
| 213 | NAD | 29.7 [c.math] | Math function overloads ambiguous | Yes | ||
| 214 | CD1 | 23.4.6 [set] | set::find() missing const overload | Yes | 450 | |
| 215 | NAD | 23.2.7 [associative.reqmts] | Can a map's key_type be const? | Yes | ||
| 216 | Dup | 31.7.7 [std.manip] | setbase manipulator description flawed | Yes | 193 | |
| 217 | TC1 | 99 [facets.examples] | Facets example (Classifying Japanese characters) contains errors | Yes | ||
| 218 | NAD | 26.8 [alg.sorting] | Algorithms do not use binary predicate objects for default comparisons | Yes | ||
| 219 | NAD | 26.6.6 [alg.find] | find algorithm missing version that takes a binary predicate argument |
Yes | ||
| 220 | TC1 | 31.5.2.8 [ios.base.cons] | ~ios_base() usage valid? | Yes | ||
| 221 | CD1 | 28.3.4.3.2.3 [facet.num.get.virtuals] | num_get<>::do_get stage 2 processing broken | Yes | ||
| 222 | TC1 | 16.3.2.4 [structure.specifications] | Are throw clauses necessary if a throw is already implied by the effects clause? | Yes | ||
| 223 | TC1 | 26.7.10 [alg.reverse] | reverse algorithm should use iter_swap rather than swap | Yes | ||
| 224 | TC1 | 23.2.7 [associative.reqmts] | clear() complexity for associative containers refers to undefined N | Yes | ||
| 225 | CD1 | 16.4.6.4 [global.functions] | std:: algorithms use of other unqualified algorithms | Yes | ||
| 226 | CD1 | 16.4.5.3 [reserved.names] | User supplied specializations or overloads of namespace std function templates | Yes | ||
| 227 | TC1 | 26.7.3 [alg.swap] | std::swap() should require CopyConstructible or DefaultConstructible arguments | Yes | ||
| 228 | CD1 | 28.3.4 [locale.categories] | Incorrect specification of "..._byname" facets | Yes | ||
| 229 | CD1 | 16.4.2.2 [contents] | Unqualified references of other library entities | Yes | ||
| 230 | CD1 | 16 [library] | Assignable specified without also specifying CopyConstructible | Yes | ||
| 231 | CD1 | 28.3.4.3.3.3 [facet.num.put.virtuals] | Precision in iostream? | Yes | ||
| 232 | CD1 | 16.4.5.3 [reserved.names] | "depends" poorly defined in 17.4.3.1 | Yes | ||
| 233 | CD1 | 23.2.7 [associative.reqmts] | Insertion hints in associative containers | Yes | 192, 246 | |
| 234 | CD1 | 20.2.10.2 [allocator.members] | Typos in allocator definition | Yes | ||
| 235 | CD1 | 24.5.1.2 [reverse.iterator] | No specification of default ctor for reverse_iterator | Yes | ||
| 236 | Dup | 28.3.4.2.4.3 [facet.ctype.char.members] | ctype<char>::is() member modifies facet | Yes | 28 | |
| 237 | CD1 | 23.3.5.2 [deque.cons] | Undefined expression in complexity specification | Yes | ||
| 238 | CD1 | 31.8.2.2 [stringbuf.cons] | Contradictory results of stringbuf initialization. | Yes | ||
| 239 | CD1 | 26.7.9 [alg.unique] | Complexity of unique() and/or unique_copy incorrect | Yes | ||
| 240 | CD1 | 26.6.10 [alg.adjacent.find] | Complexity of adjacent_find() is meaningless | Yes | ||
| 241 | CD1 | 26.7.9 [alg.unique] | Does unique_copy() require CopyConstructible and Assignable? | Yes | ||
| 242 | CD1 | 26.7.4 [alg.transform] | Side effects of function objects | Yes | ||
| 243 | CD1 | 31.7.5.4 [istream.unformatted] | get and getline when sentry reports failure |
Yes | ||
| 244 | NAD | 26.6.6 [alg.find] | Must find's third argument be CopyConstructible? |
Yes | ||
| 245 | NAD | 24.6.2 [istream.iterator] | Which operations on istream_iterator trigger input operations? |
Yes | ||
| 246 | Dup | 23.2.7 [associative.reqmts] | a.insert(p,t) is incorrectly specified |
Yes | 233 | |
| 247 | CD1 | 23.3.13.5 [vector.modifiers] | vector, deque::insert complexity |
Yes | ||
| 248 | CD1 | 28.3.4.6 [category.time] | time_get fails to set eofbit | Yes | ||
| 249 | NAD | 99 [auto.ptr] | Return Type of auto_ptr::operator= |
Yes | ||
| 250 | CD1 | 23.3.11.5 [list.ops] | splicing invalidates iterators | Yes | ||
| 251 | CD1 | 31.8.2 [stringbuf] | basic_stringbuf missing allocator_type | Yes | ||
| 252 | CD1 | 31.8 [string.streams] | missing casts/C-style casts used in iostreams | Yes | ||
| 253 | CD1 | 29.6.2.2 [valarray.cons] | valarray helper functions are almost entirely useless | Yes | ||
| 254 | CD1 | 19.2 [std.exceptions] | Exception types in clause 19 are constructed from std::string |
Yes | ||
| 255 | NAD | 31.6.3 [streambuf] | Why do basic_streambuf<>::pbump() and gbump() take an int? |
Yes | ||
| 256 | CD1 | 31.5.4.3 [basic.ios.members] | typo in 27.4.4.2, p17: copy_event does not exist | Yes | ||
| 257 | NAD | 99 [depr.base] | STL functional object and iterator inheritance. | Yes | ||
| 258 | CD1 | 16.4.4.6 [allocator.requirements] | Missing allocator requirement | Yes | ||
| 259 | CD1 | 27.4.3.5 [string.capacity] | basic_string::operator[] and const correctness |
Yes | ||
| 260 | CD1 | 24.6.2.3 [istream.iterator.ops] | Inconsistent return type of istream_iterator::operator++(int) |
Yes | ||
| 261 | CD1 | 24.6.2.3 [istream.iterator.ops] | Missing description of istream_iterator::operator!= |
Yes | ||
| 262 | CD1 | 16.3.3.3.3 [bitmask.types] | Bitmask operator ~ specified incorrectly | Yes | ||
| 263 | CD1 | 27.4.3 [basic.string] | Severe restriction on basic_string reference counting |
Yes | ||
| 264 | CD1 | 23.2.7 [associative.reqmts] | Associative container insert(i, j) complexity requirements are not feasible. |
Yes | 102 | |
| 265 | CD1 | 22.3 [pairs] | std::pair::pair() effects overly restrictive | Yes | ||
| 266 | CD1 | 17.9.4 [bad.exception] | bad_exception::~bad_exception() missing Effects clause | Yes | ||
| 267 | NAD | 99 [depr.strstreambuf.virtuals] | interaction of strstreambuf::overflow() and seekoff() | Yes | ||
| 268 | CD1 | 28.3.3.1 [locale] | Typo in locale synopsis | Yes | ||
| 269 | NAD | 17.9 [support.exception] | cstdarg and unnamed parameters | Yes | ||
| 270 | CD1 | 26.8.4 [alg.binary.search] | Binary search requirements overly strict | Yes | 472 | |
| 271 | CD1 | 31.7.5.7 [iostreamclass] | basic_iostream missing typedefs | Yes | ||
| 272 | CD1 | 31.5.4.4 [iostate.flags] | Missing parentheses around subexpression | Yes | 569 | |
| 273 | CD1 | 31 [input.output] | Missing ios_base qualification on members of a dependent class | Yes | ||
| 274 | CD1 | 16.4.4.6 [allocator.requirements] | a missing/impossible allocator requirement | Yes | ||
| 275 | CD1 | 28.3.4.3.2.2 [facet.num.get.members] | Wrong type in num_get::get() overloads | Yes | ||
| 276 | CD1 | 23.2 [container.requirements] | Assignable requirement for container value type overly strict | Yes | ||
| 277 | NAD | 16.4.4.6 [allocator.requirements] | Normative encouragement in allocator requirements unclear | Yes | ||
| 278 | CD1 | 23.3.11.5 [list.ops] | What does iterator validity mean? | Yes | ||
| 279 | NAD | 23.2 [container.requirements] | const and non-const iterators should have equivalent typedefs | Yes | ||
| 280 | CD1 | 24.5.1 [reverse.iterators] | Comparison of reverse_iterator to const reverse_iterator | Yes | ||
| 281 | CD1 | 26.8.9 [alg.min.max] | std::min() and max() requirements overly restrictive | Yes | 486 | |
| 282 | CD1 | 28.3.4.3.3.3 [facet.num.put.virtuals] | What types does numpunct grouping refer to? | Yes | ||
| 283 | CD1 | 26.7.5 [alg.replace] | std::replace() requirement incorrect/insufficient | Yes | 483 | |
| 284 | CD1 | 22.10.8 [comparisons] | unportable example in 20.3.7, p6 | Yes | ||
| 285 | CD1 | 31.10.4.2 [ifstream.cons] | minor editorial errors in fstream ctors | Yes | ||
| 286 | CD1 | 26.13 [alg.c.library] | <cstdlib> requirements missing size_t typedef | Yes | ||
| 287 | NAD | 31.5.2.3 [fmtflags.state] | conflicting ios_base fmtflags | Yes | ||
| 288 | CD1 | 19.4 [errno] | <cerrno> requirements missing macro EILSEQ | Yes | ||
| 289 | NAD | 29.7 [c.math] | <cmath> requirements missing C float and long double versions | Yes | ||
| 290 | NAD | 26.6.5 [alg.foreach] | Requirements to for_each and its function object | Yes | ||
| 291 | CD1 | 26.8.7 [alg.set.operations] | Underspecification of set algorithms | Yes | ||
| 292 | CD1 | 31.5.4.3 [basic.ios.members] | effects of a.copyfmt (a) | Yes | ||
| 293 | NAD | 26.7.4 [alg.transform] | Order of execution in transform algorithm | Yes | ||
| 294 | CD1 | 16.4.5.3.3 [macro.names] | User defined macros and standard headers | Yes | ||
| 295 | CD1 | 29.7 [c.math] | Is abs defined in <cmath>? | Yes | ||
| 296 | C++11 | 22.3 [pairs] | Missing descriptions and requirements of pair operators | Yes | ||
| 297 | CD1 | 22.10.10 [logical.operations] | const_mem_fun_t<>::argument_type should be const T* | Yes | ||
| 298 | CD1 | 17.6.3.3 [new.delete.array] | ::operator delete[] requirement incorrect/insufficient | Yes | ||
| 299 | NAD Editorial | 24.3.5.6 [bidirectional.iterators] | Incorrect return types for iterator dereference | Yes | ||
| 300 | CD1 | 23.3.11.5 [list.ops] | list::merge() specification incomplete | Yes | ||
| 301 | CD1 | 27.4.3.2 [string.require] | basic_string template ctor effects clause omits allocator argument | Yes | ||
| 302 | NAD | 28.3.4.2.6 [locale.codecvt.byname] | Need error indication from codecvt<>::do_length | Yes | ||
| 303 | CD1 | 22.9.4 [bitset.operators] | Bitset input operator underspecified | Yes | ||
| 304 | NAD | 24.3.4 [iterator.concepts] | Must *a return an lvalue when a is an input iterator? |
Yes | ||
| 305 | CD1 | 28.3.4.2.6 [locale.codecvt.byname] | Default behavior of codecvt<wchar_t, char, mbstate_t>::length() | Yes | ||
| 306 | CD1 | 17.2 [support.types] | offsetof macro and non-POD types | Yes | ||
| 307 | CD1 | 23.3.11 [list] | Lack of reference typedefs in container adaptors | Yes | ||
| 308 | CD1 | 31 [input.output] | Table 82 mentions unrelated headers | Yes | ||
| 309 | NAD | 31.7 [iostream.format] | Does sentry catch exceptions? | Yes | ||
| 310 | CD1 | 16.4.2.3 [headers] | Is errno a macro? | Yes | ||
| 311 | CD1 | 31.7.6.2 [ostream] | Incorrect wording in basic_ostream class synopsis | Yes | ||
| 312 | CD1 | 22 [utilities] | Table 27 is missing headers | Yes | ||
| 313 | NAD | 17.9.5.4 [terminate] | set_terminate and set_unexpected question | Yes | ||
| 314 | NAD | 17.9.5.4 [terminate] | Is the stack unwound when terminate() is called? | Yes | ||
| 315 | CD1 | 23.3.11.5 [list.ops] | Bad "range" in list::unique complexity | Yes | ||
| 316 | CD1 | 23.2.7 [associative.reqmts] | Vague text in Table 69 | Yes | ||
| 317 | CD1 | 28.3 [localization] | Instantiation vs. specialization of facets | Yes | ||
| 318 | CD1 | 28.3.4.4.2 [locale.numpunct.byname] | Misleading comment in definition of numpunct_byname | Yes | ||
| 319 | CD1 | 17.6.3.2 [new.delete.single] | Storage allocation wording confuses "Required behavior", "Requires" | Yes | ||
| 320 | CD1 | 23.3.11.2 [list.cons] | list::assign overspecified | Yes | ||
| 321 | CD1 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Typo in num_get | Yes | ||
| 322 | CD1 | 23.2 [container.requirements] | iterator and const_iterator should have the same value type | Yes | ||
| 323 | NAD | 29.7 [c.math] | abs() overloads in different headers |
Yes | ||
| 324 | CD1 | 24.3.5.4 [output.iterators] | Do output iterators have value types? | Yes | ||
| 325 | CD1 | 28.3.4.7.4.3 [locale.moneypunct.virtuals] | Misleading text in moneypunct<>::do_grouping | Yes | ||
| 326 | NAD | 28.3.4.7.5 [locale.moneypunct.byname] | Missing typedef in moneypunct_byname | Yes | ||
| 327 | CD1 | 28.3.3.1.2.1 [locale.category] | Typo in time_get facet in table 52 | Yes | 447 | |
| 328 | CD1 | 28.3.4.7.3.3 [locale.money.put.virtuals] | Bad sprintf format modifier in money_put<>::do_put() | Yes | ||
| 329 | CD1 | 23.3.13.3 [vector.capacity] | vector capacity, reserve and reallocation | Yes | ||
| 330 | NAD | 28.3.3.1 [locale] | Misleading "exposition only" value in class locale definition | Yes | ||
| 331 | CD1 | 31.5.2.2.1 [ios.failure] | bad declaration of destructor for ios_base::failure | Yes | ||
| 332 | NAD | 31.5.3 [fpos] | Consider adding increment and decrement operators to std::fpos< T > | Yes | ||
| 333 | CD1 | 31.7.6.5 [ostream.manip] | does endl imply synchronization with the device? | Yes | ||
| 334 | CD1 | 23.4.3.3 [map.access] | map::operator[] specification forces inefficient implementation | Yes | ||
| 335 | CD1 | 27.2.2 [char.traits.require] | minor issue with char_traits, table 37 | Yes | ||
| 336 | CD1 | 16 [library] | Clause 17 lack of references to deprecated headers | Yes | ||
| 337 | CD1 | 26.7.5 [alg.replace] | replace_copy_if's template parameter should be InputIterator | Yes | ||
| 338 | CD1 | 28.3.4 [locale.categories] | is whitespace allowed between `-' and a digit? | Yes | ||
| 339 | CD1 | 28.3.4.2 [category.ctype] | definition of bitmask type restricted to clause 27 | Yes | ||
| 340 | CD1 | 28.3.3.1.2.1 [locale.category] | interpretation of has_facet<Facet>(loc) |
Yes | ||
| 341 | CD1 | 23.3.13.3 [vector.capacity] | Vector reallocation and swap | Yes | ||
| 342 | NAD | 31.7.5.4 [istream.unformatted] | seek and eofbit | Yes | ||
| 343 | Resolved | 16 [library] | Unspecified library header dependencies | Yes | ||
| 344 | NAD | 28.3.4.3 [category.numeric] | grouping + showbase | Yes | ||
| 345 | CD1 | 27.5 [c.strings] | type tm in <cwchar> | Yes | ||
| 346 | CD1 | 24.3.4 [iterator.concepts] | Some iterator member functions should be const | Yes | ||
| 347 | CD1 | 28.3.3.1.2.1 [locale.category] | locale::category and bitmask requirements | Yes | ||
| 348 | Dup | 22.3 [pairs] | Minor issue with std::pair operator< | Yes | 532 | |
| 349 | CD1 | 24.6.3 [ostream.iterator] | Minor typographical error in ostream_iterator | Yes | ||
| 350 | Dup | 20.2.10.2 [allocator.members] | allocator<>::address | Yes | 634 | |
| 351 | NAD Editorial | 22.10 [function.objects] | unary_negate and binary_negate: struct or class? | Yes | ||
| 352 | CD1 | 27.2.3 [char.traits.typedefs] | missing fpos requirements | Yes | ||
| 353 | Resolved | 22.3 [pairs] | std::pair missing template assignment |
Yes | ||
| 354 | CD1 | 23.2.7 [associative.reqmts] | Associative container lower/upper bound requirements | Yes | ||
| 355 | CD1 | 23.2.4 [sequence.reqmts] | Operational semantics for a.back() | Yes | ||
| 356 | NAD | 28.3.4.2 [category.ctype] | Meaning of ctype_base::mask enumerators | Yes | ||
| 357 | NAD Editorial | 29.7 [c.math] | <cmath> float functions cannot return HUGE_VAL | Yes | ||
| 358 | CD1 | 28.3.4.3.2.3 [facet.num.get.virtuals] | interpreting thousands_sep after a decimal_point |
Yes | ||
| 359 | CD1 | 28.3.4.3.3.2 [facet.num.put.members] | num_put<>::do_put (..., bool) undocumented | Yes | ||
| 360 | CD1 | 28.3.3.1 [locale] | locale mandates inefficient implementation | Yes | ||
| 361 | NAD | 28.3.4.3.3.3 [facet.num.put.virtuals] | num_get<>::do_get (..., void*&) checks grouping | Yes | ||
| 362 | CD1 | 99 [depr.lib.binders] | bind1st/bind2nd type safety | Yes | ||
| 363 | CD1 | 31.5.2.2.1 [ios.failure] | Missing exception specification in 27.4.2.1.1 | Yes | ||
| 364 | CD1 | 31.6.3.5.2 [streambuf.virt.buffer] | Inconsistent wording in 27.5.2.4.2 | Yes | ||
| 365 | CD1 | 31 [input.output] | Lack of const-qualification in clause 27 | Yes | ||
| 366 | NAD | 31 [input.output] | Excessive const-qualification | Yes | ||
| 367 | NAD | 26.7.8 [alg.remove] | remove_copy/remove_copy_if and Input Iterators | Yes | ||
| 368 | NAD Editorial | 27.4.3.7.6 [string.replace] | basic_string::replace has two "Throws" paragraphs | Yes | ||
| 369 | CD1 | 31.4 [iostream.objects] | io stream objects and static ctors | Yes | ||
| 370 | CD1 | 31.7.5.4 [istream.unformatted] | Minor error in basic_istream::get | Yes | ||
| 371 | CD1 | 23.2 [container.requirements] | Stability of multiset and multimap member functions | Yes | ||
| 372 | NAD | 16.4.6.14 [res.on.exception.handling] | Inconsistent description of stdlib exceptions | Yes | ||
| 373 | CD1 | 31.7.5.3.1 [istream.formatted.reqmts] | Are basic_istream and basic_ostream to use (exceptions()&badbit) != 0 ? | Yes | ||
| 374 | NAD | 28.3.4.7.4.2 [locale.moneypunct.members] | moneypunct::frac_digits returns int not unsigned | Yes | ||
| 375 | CD1 | 31.8.2.5 [stringbuf.virtuals] | basic_ios should be ios_base in 27.7.1.3 | Yes | ||
| 376 | CD1 | 31.8.2.5 [stringbuf.virtuals] | basic_streambuf semantics | Yes | ||
| 377 | NAD | 27.4.3.7.4 [string.insert] | basic_string::insert and length_error | Yes | ||
| 378 | Dup | 28.3.3.1 [locale] | locale immutability and locale::operator=() | Yes | 31 | |
| 379 | CD1 | 28.3.4.2.2.3 [locale.ctype.virtuals] | nonsensical ctype::do_widen() requirement | Yes | ||
| 380 | CD1 | 28.3.4.2.6 [locale.codecvt.byname] | typos in codecvt tables 53 and 54 | Yes | ||
| 381 | CD1 | 28.3.4.2.6 [locale.codecvt.byname] | detection of invalid mbstate_t in codecvt | Yes | ||
| 382 | NAD | 28.3.4.2.5 [locale.codecvt] | codecvt do_in/out result | Yes | ||
| 383 | CD1 | 24.3.5.6 [bidirectional.iterators] | Bidirectional iterator assertion typo | Yes | ||
| 384 | CD1 | 26.8.4.4 [equal.range] | equal_range has unimplementable runtime complexity | Yes | ||
| 385 | NAD | 16 [library] | Does call by value imply the CopyConstructible requirement? | Yes | ||
| 386 | CD1 | 24.5.1.6 [reverse.iter.elem] | Reverse iterator's operator[] has impossible return type | Yes | ||
| 387 | CD1 | 29.4 [complex.numbers] | std::complex over-encapsulated |
Yes | ||
| 388 | NAD | 29.4 [complex.numbers] | Use of complex as a key in associative containers |
Yes | ||
| 389 | CD1 | 29.6.2.4 [valarray.access] | Const overload of valarray::operator[] returns by value | Yes | 77 | |
| 390 | NAD Editorial | 16.4.4.2 [utility.arg.requirements] | CopyConstructible requirements too strict | Yes | ||
| 391 | CD1 | 28.3.3.3.2 [conversions.character] | non-member functions specified as const | Yes | ||
| 392 | NAD | 24.3.5.3 [input.iterators] | 'equivalence' for input iterators | Yes | ||
| 393 | NAD Editorial | 28.3.4.2.5.3 [locale.codecvt.virtuals] | do_in/do_out operation on state unclear | Yes | ||
| 394 | NAD | 31.7.6.3.1 [ostream.formatted.reqmts] | behavior of formatted output on failure | Yes | ||
| 395 | CD1 | 29.7 [c.math] | inconsistencies in the definitions of rand() and random_shuffle() | Yes | ||
| 396 | CD1 | 22.9.2.2 [bitset.cons] | what are characters zero and one | Yes | ||
| 397 | NAD Editorial | 31.7.6.2.4 [ostream.sentry] | ostream::sentry dtor throws exceptions |
Yes | ||
| 398 | NAD | 31.7.6.2.4 [ostream.sentry] | effects of end-of-file on unformatted input functions | Yes | ||
| 399 | NAD | 31.7.5.4 [istream.unformatted] | volations of unformatted input function requirements | Yes | ||
| 400 | CD1 | 20.2.10.2 [allocator.members] | redundant type cast in lib.allocator.members | Yes | ||
| 401 | CD1 | 16.4.4.6 [allocator.requirements] | incorrect type casts in table 32 in lib.allocator.requirements | Yes | ||
| 402 | CD1 | 16.4.4.6 [allocator.requirements] | wrong new expression in [some_]allocator::construct | Yes | ||
| 403 | CD1 | 27.4.3.7.8 [string.swap] | basic_string::swap should not throw exceptions | Yes | ||
| 404 | CD1 | 16.4.5.6 [replacement.functions] | May a replacement allocation function be declared inline? | Yes | ||
| 405 | CD1 | 26.13 [alg.c.library] | qsort and POD | Yes | ||
| 406 | CD1 | 23.3.13.5 [vector.modifiers] | vector::insert(s) exception safety | Yes | ||
| 407 | CD1 | 24.3.4 [iterator.concepts] | Can singular iterators be destroyed? | Yes | ||
| 408 | NAD Editorial | 24.3 [iterator.requirements] | Is vector<reverse_iterator<char*> > forbidden? |
Yes | ||
| 409 | CD1 | 31.10.4.4 [ifstream.members] | Closing an fstream should clear error state | Yes | ||
| 410 | CD1 | 23.3.11.2 [list.cons] | Missing semantics for stack and queue comparison operators | Yes | ||
| 411 | CD1 | 26.8.7 [alg.set.operations] | Wrong names of set member functions | Yes | ||
| 412 | CD1 | 31.5.4.4 [iostate.flags] | Typo in 27.4.4.3 | Yes | 429 | |
| 413 | CD1 | 31.7.5.3.3 [istream.extractors] | Proposed resolution to LDR#64 still wrong | Yes | ||
| 414 | CD1 | 23.3.13.5 [vector.modifiers] | Which iterators are invalidated by v.erase()? | Yes | ||
| 415 | CD1 | 31.7.5.5 [istream.manip] | behavior of std::ws | Yes | ||
| 416 | CD1 | 17.3.6 [climits.syn] | definitions of XXX_MIN and XXX_MAX macros in climits | Yes | ||
| 417 | NAD | 28.3.4.2.2.3 [locale.ctype.virtuals] | what does ctype::do_widen() return on failure |
Yes | ||
| 418 | NAD | 31.5.2.2.6 [ios.init] | exceptions thrown during iostream cleanup | Yes | ||
| 419 | C++11 | 31.7.5.2.4 [istream.sentry] | istream extractors not setting failbit if eofbit is already set |
Yes | ||
| 420 | CD1 | 31.10 [file.streams] | is std::FILE a complete type? | Yes | ||
| 421 | NAD | 31.6.3.2 [streambuf.cons] | is basic_streambuf copy-constructible? |
Yes | ||
| 422 | CD1 | 16.4.5.3 [reserved.names] | explicit specializations of member functions of class templates | Yes | ||
| 423 | Open | 31 [input.output] | Effects of negative streamsize in iostreams |
Yes | 3 | |
| 424 | NAD Editorial | 16.3.2.2 [structure.summary] | normative notes | Yes | ||
| 425 | CD1 | 99 [depr.temporary.buffer] | return value of std::get_temporary_buffer | Yes | ||
| 426 | CD1 | 26.6.15 [alg.search] | search_n(), fill_n(), and generate_n() with negative n | Yes | ||
| 427 | C++11 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Stage 2 and rationale of DR 221 | Yes | ||
| 428 | CD1 | 27.4.3.7.5 [string.erase] | string::erase(iterator) validity | Yes | ||
| 429 | Dup | 31.5.4.4 [iostate.flags] | typo in basic_ios::clear(iostate) | Yes | 412 | |
| 430 | C++11 | 29.6.2.5 [valarray.sub] | valarray subset operations |
Yes | ||
| 431 | Resolved | 16.4.4.6 [allocator.requirements] | Swapping containers with unequal allocators | Yes | ||
| 432 | CD1 | 31.8.2.5 [stringbuf.virtuals] | stringbuf::overflow() makes only one write position available | Yes | ||
| 433 | NAD | 99 [unexpected] | Contradiction in specification of unexpected() | Yes | ||
| 434 | CD1 | 22.9.2.3 [bitset.members] | bitset::to_string() hard to use | Yes | ||
| 435 | CD1 | 27.4.4.4 [string.io] | bug in DR 25 | Yes | ||
| 436 | CD1 | 28.3.3.1.2.2 [locale.facet] | are cv-qualified facet types valid facets? | Yes | ||
| 437 | NAD | 31.7.6.3.2 [ostream.inserters.arithmetic] | Formatted output of function pointers is confusing | Yes | ||
| 438 | CD1 | 23.2.4 [sequence.reqmts] | Ambiguity in the "do the right thing" clause | Yes | ||
| 439 | NAD | 28.3.4 [locale.categories] | Should facets be copyable? | Yes | ||
| 440 | NAD | 29.4.8 [complex.transcendentals] | Should std::complex use unqualified transcendentals? | Yes | ||
| 441 | CD1 | 31.5.3 [fpos] | Is fpos::state const? | Yes | ||
| 442 | CD1 | 31.7.6.2.4 [ostream.sentry] | sentry::operator bool() inconsistent signature | Yes | ||
| 443 | CD1 | 31.10.3.4 [filebuf.members] | filebuf::close() inconsistent use of EOF | Yes | ||
| 444 | CD1 | 31.10 [file.streams] | Bad use of casts in fstream | Yes | ||
| 445 | CD1 | 24.3.2.3 [iterator.traits] | iterator_traits::reference unspecified for some iterator categories | Yes | ||
| 446 | NAD Editorial | 24.3 [iterator.requirements] | Iterator equality between different containers | Yes | ||
| 447 | Dup | 28.3.3.1.2.1 [locale.category] | Wrong template argument for time facets | Yes | 327 | |
| 448 | CD1 | 24.3.5.7 [random.access.iterators] | Random Access Iterators over abstract classes | Yes | ||
| 449 | CD1 | 17.2 [support.types] | Library Issue 306 Goes Too Far | Yes | ||
| 450 | Dup | 23.4.6 [set] | set::find is inconsistent with associative container requirements | Yes | 214 | |
| 451 | Dup | 23.2.7 [associative.reqmts] | Associative erase should return an iterator | Yes | 130 | |
| 452 | NAD | 28.3.3.1.4 [locale.members] | locale::combine should be permitted to generate a named locale | Yes | ||
| 453 | CD1 | 31.8.2.5 [stringbuf.virtuals] | basic_stringbuf::seekoff need not always fail for an empty stream | Yes | ||
| 454 | NAD | 31.10.3.4 [filebuf.members] | basic_filebuf::open should accept wchar_t names |
Yes | 105 | |
| 455 | CD1 | 31.4 [iostream.objects] | cerr::tie() and wcerr::tie() are overspecified | Yes | ||
| 456 | CD1 | 16.4.2.3 [headers] | Traditional C header files are overspecified | Yes | ||
| 457 | CD1 | 22.9.2.2 [bitset.cons] | bitset constructor: incorrect number of initialized bits | Yes | ||
| 458 | NAD | 24.3.5.7 [random.access.iterators] | 24.1.5 contains unintended limitation for operator- |
Yes | ||
| 459 | NAD | 28.3.4.3.2.3 [facet.num.get.virtuals] | Requirement for widening in stage 2 is overspecification | Yes | ||
| 460 | CD1 | 31.10 [file.streams] | Default modes missing from basic_fstream member specifications | Yes | ||
| 461 | CD1 | 28.3.4.6.2.3 [locale.time.get.virtuals] | time_get hard or impossible to implement | Yes | ||
| 462 | NAD | 6.10.3.4 [basic.start.term] | Destroying objects with static storage duration | Yes | ||
| 463 | NAD | 99 [auto.ptr] | auto_ptr usability issues |
Yes | ||
| 464 | CD1 | 23.3.13 [vector] | Suggestion for new member functions in standard containers | Yes | ||
| 465 | CD1 | 16.4.2.3 [headers] | Contents of <ciso646> | Yes | ||
| 466 | NAD | 27.4.3.2 [string.require] | basic_string ctor should prevent null pointer error |
Yes | ||
| 467 | CD1 | 27.2.4.2 [char.traits.specializations.char] | char_traits::lt(), compare(), and memcmp() | Yes | ||
| 468 | CD1 | 31.5.4.4 [iostate.flags] | unexpected consequences of ios_base::operator void*() | Yes | ||
| 469 | CD1 | 23.3.13 [vector] | vector<bool> ill-formed relational operators | Yes | ||
| 470 | NAD | 23 [containers] | accessing containers from their elements' special functions | Yes | ||
| 471 | C++11 | 17.9.3 [exception] | result of what() implementation-defined |
Yes | ||
| 472 | Dup | 26.8.4.4 [equal.range] | Missing "Returns" clause in std::equal_range | Yes | 270 | |
| 473 | C++11 | 28.3.4.2.2 [locale.ctype] | underspecified ctype calls |
Yes | ||
| 474 | CD1 | 31.7.6.3.4 [ostream.inserters.character] | confusing Footnote 297 | Yes | ||
| 475 | CD1 | 26.6.5 [alg.foreach] | May the function object passed to for_each modify the elements of the iterated sequence? | Yes | ||
| 476 | NAD | 24.3.5.5 [forward.iterators] | Forward Iterator implied mutability | Yes | ||
| 477 | Dup | 24.3.5.5 [forward.iterators] | Operator-> for const forward iterators | Yes | 478 | |
| 478 | CD1 | 24.3.5.5 [forward.iterators] | Should forward iterator requirements table have a line for r->m? | Yes | 477 | |
| 479 | Dup | 23.2 [container.requirements] | Container requirements and placement new | Yes | 580 | |
| 480 | NAD | 99 [depr.base] | unary_function and binary_function should have protected nonvirtual destructors | Yes | ||
| 481 | NAD | 26.7.9 [alg.unique] | unique's effects on the range [result, last) | Yes | ||
| 482 | Resolved | 22.3 [pairs] | Swapping pairs | Yes | ||
| 483 | Dup | 26.6 [alg.nonmodifying] | Heterogeneous equality and EqualityComparable | Yes | 283 | |
| 484 | Open | 24.3.5.3 [input.iterators] | Convertible to T |
No | 3 | |
| 485 | Resolved | 24.3.5.4 [output.iterators] | output iterator insufficiently constrained | Yes | ||
| 486 | Dup | 26.8.9 [alg.min.max] | min/max CopyConstructible requirement is too strict | Yes | 281 | |
| 487 | NAD | 16.4.4.6 [allocator.requirements] | Allocator::construct is too limiting | Yes | ||
| 488 | CD1 | 26.7.11 [alg.rotate] | rotate throws away useful information | Yes | ||
| 489 | NAD | 26.7.8 [alg.remove] | std::remove / std::remove_if wrongly specified | Yes | ||
| 490 | NAD | 26.7.9 [alg.unique] | std::unique wrongly specified | Yes | ||
| 491 | NAD | 23.3.11.5 [list.ops] | std::list<>::unique incorrectly specified | Yes | ||
| 492 | NAD | 16.3.2.4 [structure.specifications] | Invalid iterator arithmetic expressions | Yes | ||
| 493 | NAD | 24.3.5.3 [input.iterators] | Undefined Expression in Input Iterator Note Title | Yes | ||
| 494 | NAD | 23.2.7 [associative.reqmts] | Wrong runtime complexity for associative container's insert and delete | Yes | ||
| 495 | CD1 | 28.3 [localization] | Clause 22 template parameter requirements | Yes | ||
| 496 | CD1 | 23.3.13 [vector] | Illegal use of "T" in vector<bool> | Yes | ||
| 497 | CD1 | 17.3.5.2 [numeric.limits.members] | meaning of numeric_limits::traps for floating point types | Yes | ||
| 498 | C++11 | 26.8.5 [alg.partitions] | Requirements for partition() and stable_partition() too strong | Yes | ||
| 499 | NAD Editorial | 26.8.2.2 [stable.sort] | Std. doesn't seem to require stable_sort() to be stable! | Yes | ||
| 500 | NAD | 28.3.4.2.6 [locale.codecvt.byname] | do_length cannot be implemented correctly | Yes | ||
| 501 | NAD | 99 [depr.base] | Proposal: strengthen guarantees of lib.comparisons | Yes | ||
| 502 | NAD | 28.3.3.1.2.1 [locale.category] | Proposition: Clarification of the interaction between a facet and an iterator | Yes | ||
| 503 | NAD | 28.3.4 [locale.categories] | more on locales | Yes | ||
| 504 | NAD Editorial | 29.5.3 [rand.req] | Integer types in pseudo-random number engine requirements | Yes | ||
| 505 | CD1 | 29.5.3 [rand.req] | Result_type in random distribution requirements | Yes | ||
| 506 | NAD | 29.5 [rand] | Requirements of Distribution parameter for variate_generator | Yes | ||
| 507 | CD1 | 29.5 [rand] | Missing requirement for variate_generator::operator() | Yes | ||
| 508 | CD1 | 29.5.6 [rand.predef] | Bad parameters for ranlux64_base_01 | Yes | ||
| 509 | NAD | 29.5.9.2 [rand.dist.uni] | Uniform_int template parameters | Yes | ||
| 510 | NAD | 29.5.9.3 [rand.dist.bern] | Input_type for bernoulli_distribution | Yes | ||
| 511 | NAD | 29.5.9 [rand.dist] | Input_type for binomial_distribution | Yes | ||
| 512 | NAD Editorial | 29.5.4 [rand.eng] | Seeding subtract_with_carry_01 from a single unsigned long |
Yes | ||
| 513 | NAD Editorial | 29.5.4 [rand.eng] | Size of state for subtract_with_carry_01 | Yes | ||
| 514 | NAD Editorial | 29.5.4.4 [rand.eng.sub] | Size of state for subtract_with_carry | Yes | ||
| 515 | NAD | 29.5.2 [rand.synopsis] | Random number engine traits | Yes | ||
| 516 | NAD Editorial | 29.5.4 [rand.eng] | Seeding subtract_with_carry_01 using a generator | Yes | ||
| 517 | NAD | 29.5.3 [rand.req] | Should include name in external representation | Yes | ||
| 518 | CD1 | 23.2.8 [unord.req] | Are insert and erase stable for unordered_multiset and unordered_multimap? | Yes | ||
| 519 | CD1 | 23.3.3 [array] | Data() undocumented | Yes | ||
| 520 | CD1 | 22.10.15 [func.bind] | Result_of and pointers to data members | Yes | ||
| 521 | CD1 | 22.10.6 [refwrap] | Garbled requirements for argument_type in reference_wrapper | Yes | ||
| 522 | CD1 | 22.4 [tuple] | Tuple doesn't define swap | Yes | ||
| 523 | Open | 28.6 [re] | regex case-insensitive character ranges are unimplementable as specified | No | 4 | |
| 524 | CD1 | 28.6 [re] | regex named character classes and case-insensitivity don't mix | Yes | ||
| 525 | Resolved | 21.3.6 [meta.unary] | type traits definitions not clear | Yes | ||
| 526 | NAD | 23.2.4 [sequence.reqmts] | Is it undefined if a function in the standard changes in parameters? | Yes | ||
| 527 | CD1 | 22.10.15.4 [func.bind.bind] | tr1::bind has lost its Throws clause |
Yes | ||
| 528 | NAD | 23.5 [unord] | const_iterator iterator issue when they are the same type |
Yes | ||
| 529 | NAD Editorial | 99 [res.on.required] | The standard encourages redundant and confusing preconditions | Yes | ||
| 530 | CD1 | 27.4.3 [basic.string] | Must elements of a string be contiguous? | Yes | ||
| 531 | CD1 | 31.7.5.4 [istream.unformatted] | array forms of unformatted input functions | Yes | ||
| 532 | LEWG | 22.4.9 [tuple.rel] | Tuple comparison | Yes | 348 | |
| 533 | CD1 | 20.3.2.2.11 [util.smartptr.getdeleter] | typo in 2.2.3.10/1 | Yes | ||
| 534 | CD1 | 27.4.3 [basic.string] | Missing basic_string members | Yes | ||
| 535 | CD1 | 27.4.3.7.8 [string.swap] | std::string::swap specification poorly worded | Yes | ||
| 536 | Dup | 23.2 [container.requirements] | Container iterator constructor and explicit convertibility | Yes | 589 | |
| 537 | CD1 | 31.7.5.4 [istream.unformatted] | Typos in the signatures in 27.6.1.3/42-43 and 27.6.2.4 | Yes | ||
| 538 | CD1 | 26.7.9 [alg.unique] | 241 again: Does unique_copy() require CopyConstructible and Assignable? | Yes | ||
| 539 | C++11 | 26.10.7 [partial.sum] | partial_sum and adjacent_difference should mention requirements |
Yes | ||
| 540 | CD1 | 20.3.2.2.6 [util.smartptr.shared.obs] | shared_ptr<void>::operator*() | Yes | ||
| 541 | CD1 | 20.3.2.2 [util.smartptr.shared] | shared_ptr template assignment and void | Yes | ||
| 542 | CD1 | 20.3.2.2.6 [util.smartptr.shared.obs] | shared_ptr observers | Yes | ||
| 543 | CD1 | 29.6.4 [class.slice] | valarray slice default constructor | Yes | ||
| 544 | NAD Editorial | C.8 [diff.library] | minor NULL problems in C.2 | Yes | ||
| 545 | CD1 | 20.3.2.2.11 [util.smartptr.getdeleter] | When is a deleter deleted? | Yes | ||
| 546 | NAD | 5.1.1 [tr1::tr.rand.req] | [tr1] _Longlong and _ULonglong are integer types | Yes | ||
| 547 | NAD | 29.5 [rand] | division should be floating-point, not integer | Yes | ||
| 548 | NAD | 29.5.7 [rand.device] | May random_device block? | Yes | ||
| 549 | NAD Editorial | 29.5.9 [rand.dist] | Undefined variable in binomial_distribution | Yes | ||
| 550 | CD1 | 29.7 [c.math] | What should the return type of pow(float,int) be? |
Yes | ||
| 551 | CD1 | 17.15 [support.c.headers] | <ccomplex> | Yes | ||
| 552 | CD1 | 26.7.13 [alg.random.shuffle] | random_shuffle and its generator | Yes | ||
| 553 | NAD Editorial | 17.4.1 [cstdint.syn] | very minor editorial change intptr_t / uintptr_t |
Yes | ||
| 554 | NAD | 17.3.5.3 [numeric.special] | Problem with lwg DR 184 numeric_limits<bool> | Yes | ||
| 555 | NAD Editorial | 8.21 [tr1::tr.c99.boolh] | [tr1] 8.21/1: typo | Yes | ||
| 556 | C++11 | 26.8 [alg.sorting] | Is Compare a BinaryPredicate? |
Yes | ||
| 557 | NAD Editorial | 17.4.1 [cstdint.syn] | TR1: div(_Longlong, _Longlong) vs div(intmax_t, intmax_t) | Yes | ||
| 558 | NAD Editorial | 24.3.5.3 [input.iterators] | lib.input.iterators Defect | Yes | ||
| 559 | CD1 | 17.3.5 [numeric.limits] | numeric_limits<const T> | Yes | ||
| 560 | NAD | 16.4.4.6 [allocator.requirements] | User-defined allocators without default constructor | Yes | ||
| 561 | CD1 | 24.5.2.4.3 [inserter] | inserter overly generic | Yes | ||
| 562 | CD1 | 31.8 [string.streams] | stringbuf ctor inefficient | Yes | ||
| 563 | CD1 | 31.8.2.5 [stringbuf.virtuals] | stringbuf seeking from end | Yes | ||
| 564 | C++11 | 31.8.2.5 [stringbuf.virtuals] | stringbuf seekpos underspecified |
Yes | ||
| 565 | C++11 | 31.6.3.5.5 [streambuf.virt.put] | xsputn inefficient |
Yes | ||
| 566 | CD1 | 31.7.5.4 [istream.unformatted] | array forms of unformatted input function undefined for zero-element arrays | Yes | ||
| 567 | CD1 | 31.7 [iostream.format] | streambuf inserter and extractor should be unformatted | Yes | ||
| 568 | NAD | 8.16.4 [tr1::tr.c99.cmath.over] | [tr1] log2 overloads missing |
Yes | ||
| 569 | Dup | 31.5.4.4 [iostate.flags] | Postcondition for basic_ios::clear(iostate) incorrectly stated | Yes | 272 | |
| 570 | NAD | 27.2 [char.traits] | Request adding additional explicit specializations of char_traits |
Yes | ||
| 571 | NAD Editorial | 2 [intro.refs] | Update C90 references to C99? | Yes | ||
| 572 | NAD | 29.5 [rand] | Oops, we gave 507 WP status | Yes | ||
| 573 | NAD | 31.5.3 [fpos] | C++0x file positioning should handle modern file sizes | Yes | ||
| 574 | CD1 | 31.4 [iostream.objects] | DR 369 Contradicts Text | Yes | ||
| 575 | CD1 | 20.3.2.2.3 [util.smartptr.shared.dest] | the specification of ~shared_ptr is MT-unfriendly, makes implementation assumptions | Yes | ||
| 576 | CD1 | 26.6.9 [alg.find.first.of] | find_first_of is overconstrained | Yes | ||
| 577 | CD1 | 26.8.4.3 [upper.bound] | upper_bound(first, last, ...) cannot return last | Yes | ||
| 578 | CD1 | 20.2.10.2 [allocator.members] | purpose of hint to allocator::allocate() | Yes | ||
| 579 | NAD | 23.2.8 [unord.req] | erase(iterator) for unordered containers should not return an iterator |
Yes | ||
| 580 | NAD Editorial | 23.2.2 [container.requirements.general] | unused allocator members | Yes | 479 | |
| 581 | CD1 | 31.7.6.4 [ostream.unformatted] | flush() not unformatted function |
Yes | ||
| 582 | NAD | 26.11.5 [uninitialized.copy] | specialized algorithms and volatile storage | Yes | ||
| 583 | NAD | 29.7 [c.math] | div() for unsigned integral types |
Yes | ||
| 584 | NAD | 29.7 [c.math] | missing int pow(int,int) functionality |
Yes | ||
| 585 | NAD | 28.3.4 [locale.categories] | facet error reporting | Yes | ||
| 586 | CD1 | 27.4.4.4 [string.io] | string inserter not a formatted function | Yes | ||
| 587 | NAD Editorial | 99 [depr.istrstream.cons] | iststream ctor missing description | Yes | ||
| 588 | NAD | 23.3.3 [array] | requirements on zero sized tr1::arrays and other details |
Yes | ||
| 589 | CD1 | 23.2 [container.requirements] | Requirements on iterators of member template functions of containers | Yes | 536 | |
| 590 | NAD Editorial | 21 [meta] | Type traits implementation latitude should be removed for C++0x | Yes | ||
| 591 | NAD Editorial | 17.3.5.2 [numeric.limits.members] | Misleading "built-in | Yes | ||
| 592 | NAD Editorial | 31.10.4.4 [ifstream.members] | Incorrect treatment of rdbuf()->close() return type | Yes | ||
| 593 | CD1 | 17.4.1 [cstdint.syn] | __STDC_CONSTANT_MACROS | Yes | ||
| 594 | Resolved | 16.4.4.2 [utility.arg.requirements] | Disadvantages of defining Swappable in terms of CopyConstructible and Assignable |
Yes | ||
| 595 | CD1 | 29.4.7 [complex.value.ops] | TR1/C++0x: fabs(complex<T>) redundant / wrongly specified |
Yes | ||
| 596 | CD1 | 31.10.3.4 [filebuf.members] | 27.8.1.3 Table 112 omits "a+" and "a+b" modes | Yes | ||
| 597 | NAD | 3.2 [dec.tr::trdec.types.types] | [dec.tr] The notion of 'promotion' cannot be emulated by user-defined types. | Yes | ||
| 598 | TRDec | 3.2 [dec.tr::trdec.types.types] | [dec.tr] Conversion to integral should truncate, not round. | Yes | ||
| 599 | TRDec | 3.1 [dec.tr::trdec.types.encodings] | [dec.tr] Say "octets" instead of "bytes." | Yes | ||
| 600 | TRDec | 3.9 [dec.tr::trdec.types.cwchar] | [dec.tr] Wrong parameters for wcstod* functions | Yes | ||
| 601 | TRDec | 3.3 [dec.tr::trdec.types.limits] | [dec.tr] numeric_limits typos | Yes | ||
| 602 | TRDec | 3 [dec.tr::trdec.types] | [dec.tr] "generic floating type" not defined. | Yes | ||
| 603 | TRDec | 3 [dec.tr::trdec.types] | [dec.tr] Trivially simplifying decimal classes. | Yes | ||
| 604 | TRDec | 3 [dec.tr::trdec.types] | [dec.tr] Storing a reference to a facet unsafe. | Yes | ||
| 605 | TRDec | 3.4 [dec.tr::trdec.types.cdecfloat] | [dec.tr] <decfloat.h> doesn't live here anymore. | Yes | ||
| 606 | NAD | 3.2 [dec.tr::trdec.types.types] | [dec.tr] allow narrowing conversions | Yes | ||
| 607 | CD1 | 29.5.8.1 [rand.util.seedseq] | Concern about short seed vectors | Yes | ||
| 608 | CD1 | 29.5.8.1 [rand.util.seedseq] | Unclear seed_seq construction details | Yes | ||
| 609 | CD1 | 29.5.5.3 [rand.adapt.ibits] | missing static const | Yes | ||
| 610 | CD1 | 22.10.17.3.2 [func.wrap.func.con] | Suggested non-normative note for C++0x | Yes | ||
| 611 | CD1 | 16.4.5.8 [res.on.functions] | Standard library templates and incomplete types | Yes | ||
| 612 | CD1 | 17.3.5.2 [numeric.limits.members] | numeric_limits::is_modulo insufficiently defined | Yes | ||
| 613 | CD1 | 17.3.5.3 [numeric.special] | max_digits10 missing from numeric_limits | Yes | ||
| 614 | NAD | 27.4.3 [basic.string] | std::string allocator requirements still inconsistent |
Yes | ||
| 615 | NAD Editorial | 27.5 [c.strings] | Inconsistencies in Section 21.4 | Yes | ||
| 616 | CD1 | 28.3.4.2.3 [locale.ctype.byname] | missing 'typename' in ctype_byname | Yes | ||
| 617 | Open | 23.3.3 [array] | std::array is a sequence that doesn't satisfy the sequence requirements? |
No | 3 | |
| 618 | CD1 | 29.6.2.8 [valarray.members] | valarray::cshift() effects on empty array | Yes | ||
| 619 | CD1 | 17.14 [support.runtime] | Longjmp wording problem | Yes | ||
| 620 | CD1 | 29.6.2.2 [valarray.cons] | valid uses of empty valarrays | Yes | ||
| 621 | CD1 | 29.6 [numarray] | non-const copy assignment operators of helper arrays | Yes | ||
| 622 | CD1 | 31.10.6.4 [fstream.members] | behavior of filebuf dtor and close on error |
Yes | ||
| 623 | CD1 | 31.2.1 [iostream.limits.imbue] | pubimbue forbidden to call imbue |
Yes | ||
| 624 | CD1 | 29.6.2.3 [valarray.assign] | valarray assignment and arrays of unequal length |
Yes | ||
| 625 | Resolved | 16 [library] | Mixed up Effects and Returns clauses | Yes | 895 | |
| 626 | NAD Editorial | 16.3.2.4 [structure.specifications] | new Remark clauses not documented | Yes | ||
| 627 | NAD | 17.6.3.2 [new.delete.single] | Low memory and exceptions | Yes | ||
| 628 | CD1 | 28.6.7 [re.regex] | Inconsistent definition of basic_regex constructor | Yes | ||
| 629 | CD1 | 29.4.6 [complex.ops] | complex<T> insertion and locale dependence |
Yes | ||
| 630 | C++11 | 29.6.2.2 [valarray.cons] | arrays of valarray |
Yes | ||
| 631 | NAD | 26 [algorithms] | conflicting requirements for BinaryPredicate |
Yes | ||
| 632 | NAD | 23.2 [container.requirements] | Time complexity of size() for std::set |
Yes | ||
| 633 | NAD Editorial | 22.10.17.3.6 [func.wrap.func.targ] | Return clause mentions undefined "type()" | Yes | ||
| 634 | CD1 | 20.2.10.2 [allocator.members] | allocator.address() doesn't work for types overloading operator& |
Yes | 350 | |
| 635 | Resolved | 16.4.4.6 [allocator.requirements] | domain of allocator::address |
Yes | ||
| 636 | NAD Editorial | 29.6.2.4 [valarray.access] | 26.5.2.3 valarray::operator[] | Yes | ||
| 637 | NAD Editorial | 29.7 [c.math] | §[c.math]/10 inconsistent return values | Yes | ||
| 638 | CD1 | 23.3.5.4 [deque.modifiers] | deque end invalidation during erase |
Yes | ||
| 639 | NAD | 31.7.5.3.3 [istream.extractors] | Still problems with exceptions during streambuf IO | Yes | ||
| 640 | CD1 | 31.7.6.3.2 [ostream.inserters.arithmetic] | 27.6.2.5.2 does not handle (unsigned) long long |
Yes | ||
| 641 | NAD Editorial | 31.7.8 [ext.manip] | Editorial fix for 27.6.4 (N2134) | Yes | ||
| 642 | NAD Editorial | 31.10.4.4 [ifstream.members] | Invalidated fstream footnotes in N2134 | Yes | ||
| 643 | CD1 | 31.10.3 [filebuf] | Impossible "as if" clauses | Yes | ||
| 644 | NAD | 22.10.17.3 [func.wrap.func] | Possible typos in 'function' description | Yes | ||
| 645 | NAD Editorial | 28.6.9 [re.results] | Missing members in match_results | Yes | ||
| 646 | CD1 | 28.6.9.6 [re.results.form] | const incorrect match_result members | Yes | ||
| 647 | NAD Editorial | 28.6.10.3 [re.alg.search] | Inconsistent regex_search params |
Yes | ||
| 648 | NAD Editorial | 28.6.11.1.2 [re.regiter.cnstr] | regex_iterator c'tor needs clarification/editorial fix | Yes | ||
| 649 | NAD Editorial | 28.6.11.2.2 [re.tokiter.cnstr] | Several typos in regex_token_iterator constructors | Yes | ||
| 650 | CD1 | 28.6.11.2 [re.tokiter] | regex_token_iterator and const correctness | Yes | ||
| 651 | CD1 | 28.6.11.2.2 [re.tokiter.cnstr] | Missing preconditions for regex_token_iterator c'tors | Yes | ||
| 652 | CD1 | 28.6.11.1 [re.regiter] | regex_iterator and const correctness | Yes | ||
| 653 | NAD | 2 [intro.refs] | Library reserved names | Yes | ||
| 654 | CD1 | 29.5.3.4 [rand.req.eng] | Missing IO roundtrip for random number engines | Yes | ||
| 655 | CD1 | 29.5.8.2 [rand.util.canonical] | Signature of generate_canonical not useful | Yes | ||
| 656 | NAD Editorial | 29.5.2 [rand.synopsis] | Typo in subtract_with_carry_engine declaration | Yes | ||
| 657 | NAD | 16.4.3.2 [using.headers] | unclear requirement about header inclusion | Yes | ||
| 658 | Resolved | 22.10 [function.objects] | Two unspecified function comparators in [function.objects] | Yes | ||
| 659 | C++11 | 24.6.4 [istreambuf.iterator] | istreambuf_iterator should have an operator->() |
Yes | ||
| 660 | CD1 | 22.10 [function.objects] | Missing Bitwise Operations | Yes | ||
| 661 | CD1 | 31.7.5.3.2 [istream.formatted.arithmetic] | New 27.6.1.2.2 changes make special extractions useless | Yes | ||
| 662 | NAD | 28.3.4.3.2.3 [facet.num.get.virtuals] | Inconsistent handling of incorrectly-placed thousands separators | Yes | ||
| 663 | NAD | 16.3.2.4 [structure.specifications] | Complexity Requirements | Yes | ||
| 664 | CD1 | 28.3.4.2.5.3 [locale.codecvt.virtuals] | do_unshift for codecvt<char, char, mbstate_t> |
Yes | ||
| 665 | CD1 | 28.3.4.2.5.3 [locale.codecvt.virtuals] | do_unshift return value |
Yes | ||
| 666 | CD1 | 28.3.4.7.4.3 [locale.moneypunct.virtuals] | moneypunct::do_curr_symbol() |
Yes | ||
| 667 | NAD | 28.3.4.7.2.3 [locale.money.get.virtuals] | money_get's widened minus sign |
Yes | ||
| 668 | NAD | 28.3.4.7.2.3 [locale.money.get.virtuals] | money_get's empty minus sign |
Yes | ||
| 669 | NAD | 28.3.4.7.2.3 [locale.money.get.virtuals] | Equivalent postive and negative signs in money_get |
Yes | ||
| 670 | Dup | 28.3.4.7.4 [locale.moneypunct] | money_base::pattern and space |
Yes | 836 | |
| 671 | C++11 | 28.3.4.3.3.3 [facet.num.put.virtuals] | precision of hexfloat |
Yes | ||
| 672 | CD1 | 16.4.4.2 [utility.arg.requirements] | Swappable requirements need updating | Yes | ||
| 673 | CD1 | 20.3.1 [unique.ptr] | unique_ptr update |
Yes | ||
| 674 | CD1 | 20.3.2.2 [util.smartptr.shared] | shared_ptr interface changes for consistency with N1856 |
Yes | ||
| 675 | CD1 | 23.2 [container.requirements] | Move assignment of containers | Yes | ||
| 676 | C++11 | 23.5 [unord] | Moving the unordered containers | Yes | ||
| 677 | CD1 | 29.5.8.1 [rand.util.seedseq] | Weaknesses in seed_seq::randomize [rand.util.seedseq] | Yes | ||
| 678 | CD1 | 29.5.3.4 [rand.req.eng] | Changes for [rand.req.eng] | Yes | ||
| 679 | CD1 | 23.3 [sequences] | resize parameter by value | Yes | ||
| 680 | CD1 | 24.5.4.2 [move.iterator] | move_iterator operator-> return |
Yes | ||
| 681 | CD1 | 28.6.8.3 [re.submatch.op] | Operator functions impossible to compare are defined in [re.submatch.op] | Yes | ||
| 682 | CD1 | 28.6.7.2 [re.regex.construct] | basic_regex ctor takes InputIterator or ForwardIterator? | Yes | ||
| 683 | NAD Editorial | 28.6.11.2 [re.tokiter] | regex_token_iterator summary error | Yes | ||
| 684 | NAD Editorial | 28.6.9 [re.results] | Unclear which members of match_results should be used in comparison | Yes | ||
| 685 | CD1 | 24.5.1.9 [reverse.iter.nonmember] | reverse_iterator/move_iterator difference has invalid signatures | Yes | ||
| 686 | NAD | 20.3.1.3.5 [unique.ptr.single.observers] | unique_ptr and shared_ptr fail to specify non-convertibility to int for unspecified-bool-type |
Yes | ||
| 687 | CD1 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr conversion constructor not constrained | Yes | ||
| 688 | C++11 | 22.10.6.2 [refwrap.const] | reference_wrapper, cref unsafe, allow binding to rvalues | Yes | ||
| 689 | CD1 | 22.10.6.2 [refwrap.const] | reference_wrapper constructor overly constrained | Yes | ||
| 690 | NAD Editorial | 29.7 [c.math] | abs(long long) should return long long | Yes | ||
| 691 | CD1 | 23.5 [unord] | const_local_iterator cbegin, cend missing from TR1 | Yes | ||
| 692 | CD1 | 31.7.8 [ext.manip] | get_money and put_money should be formatted I/O functions |
Yes | ||
| 693 | CD1 | 22.9.2 [template.bitset] | std::bitset::all() missing |
Yes | ||
| 694 | CD1 | 22.9.2 [template.bitset] | std::bitset and long long |
Yes | ||
| 695 | CD1 | 28.3.4.2.4 [facet.ctype.special] | ctype<char>::classic_table() not accessible | Yes | ||
| 696 | C++11 | 31.7.5.3.2 [istream.formatted.arithmetic] | istream::operator>>(int&) broken |
Yes | ||
| 697 | Resolved | 19.5 [syserr] | New <system_error> header leads to name clashes |
Yes | ||
| 698 | CD1 | 19.5.8.1 [syserr.syserr.overview] | system_error needs const char* constructors |
Yes | ||
| 699 | CD1 | 29.5 [rand] | N2111 changes min/max | Yes | ||
| 700 | CD1 | 22.2.4 [forward] | N1856 defines struct identity |
Yes | ||
| 701 | NAD | 5.2.1.1 [tr1::tr.num.sf.Lnm] | [tr1] assoc laguerre poly's | Yes | ||
| 702 | NAD | 5.2.1.2 [tr1::tr.num.sf.Plm] | [tr1] Restriction in associated Legendre functions | Yes | ||
| 703 | CD1 | 23.4.3.3 [map.access] | map::at() need a complexity specification |
Yes | ||
| 704 | C++11 | 23.2 [container.requirements] | MoveAssignable requirement for container value type overly strict |
Yes | ||
| 705 | CD1 | 21.3.9.7 [meta.trans.other] | type-trait decay incompletely specified |
Yes | ||
| 706 | CD1 | 22.3 [pairs] | make_pair() should behave as make_tuple() wrt. reference_wrapper() |
Yes | ||
| 707 | NAD | 17.9.7 [propagation] | null pointer constant for exception_ptr |
Yes | ||
| 708 | NAD | 28.3 [localization] | Locales need to be per thread and updated for POSIX changes | Yes | ||
| 709 | CD1 | 27.2.4 [char.traits.specializations] | char_traits::not_eof has wrong signature |
Yes | ||
| 710 | CD1 | 20.3.2.2 [util.smartptr.shared] | Missing postconditions | Yes | ||
| 711 | C++11 | 20.3.2.2.6 [util.smartptr.shared.obs] | Contradiction in empty shared_ptr |
Yes | ||
| 712 | CD1 | 29.5.8.1 [rand.util.seedseq] | seed_seq::size no longer useful |
Yes | ||
| 713 | CD1 | 26.8.2.1 [sort] | sort() complexity is too lax |
Yes | ||
| 714 | CD1 | 26.6.15 [alg.search] | search_n complexity is too lax |
Yes | ||
| 715 | CD1 | 26.8.9 [alg.min.max] | minmax_element complexity is too lax |
Yes | ||
| 716 | C++11 | 28.6.12 [re.grammar] | Production in [re.grammar] not actually modified | Yes | ||
| 717 | NAD Editorial | 29.6.2.4 [valarray.access] | Incomplete valarray::operator[] specification in [valarray.access] |
Yes | ||
| 718 | NAD Editorial | 27.4.3 [basic.string] | basic_string is not a sequence |
Yes | ||
| 719 | Resolved | 21 [meta] | std::is_literal type traits should be provided |
Yes | 750 | |
| 720 | CD1 | 23.3.3 [array] | Omissions in constexpr usages | Yes | ||
| 721 | NAD | 99 [depr.conversions.string] | wstring_convert inconsistensies |
Yes | ||
| 722 | CD1 | 29.7 [c.math] | Missing [c.math] functions nanf and nanl |
Yes | ||
| 723 | C++11 | 28.6.7 [re.regex] | basic_regex should be moveable |
Yes | ||
| 724 | C++11 | 16.4.4.2 [utility.arg.requirements] | DefaultConstructible is not defined |
Yes | ||
| 725 | NAD Editorial | 23.2.4 [sequence.reqmts] | Optional sequence container requirements column label | Yes | ||
| 726 | NAD | 28.6.10.4 [re.alg.replace] | Missing regex_replace() overloads |
Yes | ||
| 727 | C++11 | 28.6.10.4 [re.alg.replace] | regex_replace() doesn't accept basic_strings with custom traits and allocators |
Yes | ||
| 728 | CD1 | 29.5.4.3 [rand.eng.mers] | Problem in [rand.eng.mers]/6 | Yes | ||
| 729 | NAD | 29.5.3.4 [rand.req.eng] | Problem in [rand.req.eng]/3 | Yes | ||
| 730 | NAD | 29.5.3.5 [rand.req.adapt] | Comment on [rand.req.adapt]/3 e) | Yes | ||
| 731 | NAD | 29.5.8.1 [rand.util.seedseq] | proposal for a customizable seed_seq |
Yes | ||
| 732 | Resolved | 99 [rand.dist.samp.genpdf] | Defect in [rand.dist.samp.genpdf] | Yes | 795 | |
| 733 | NAD | 29.5.3.6 [rand.req.dist] | Comment on [rand.req.dist]/9 | Yes | ||
| 734 | CD1 | 29.5.9.5.3 [rand.dist.norm.chisq] | Unnecessary restriction in [rand.dist.norm.chisq] | Yes | ||
| 735 | NAD | 29.5.9.3.2 [rand.dist.bern.bin] | Unfortunate naming | Yes | ||
| 736 | NAD | 29.5.9.6.1 [rand.dist.samp.discrete] | Comment on [rand.dist.samp.discrete] | Yes | ||
| 737 | NAD | 29.5.9.6.2 [rand.dist.samp.pconst] | Comment on [rand.dist.samp.pconst] | Yes | ||
| 738 | NAD Editorial | 29.5.5.2 [rand.adapt.disc] | Editorial issue in [rand.adapt.disc]/3 | Yes | ||
| 739 | NAD | 29.5.8.2 [rand.util.canonical] | Defect in [rand.util.canonical]/3 | Yes | ||
| 740 | CD1 | 20.3.1 [unique.ptr] | Please remove *_ptr<T[N]> |
Yes | ||
| 741 | NAD | 20.3.2.2.11 [util.smartptr.getdeleter] | Const-incorrect get_deleter function for shared_ptr |
Yes | ||
| 742 | Resolved | 16.4.4.2 [utility.arg.requirements] | Enabling swap for proxy iterators |
Yes | ||
| 743 | CD1 | 20.3.2.2.9 [util.smartptr.shared.spec] | rvalue swap for shared_ptr |
Yes | ||
| 744 | CD1 | 17.9.7 [propagation] | What is the lifetime of an exception pointed to by an exception_ptr? |
Yes | ||
| 745 | NAD | 17.9.7 [propagation] | copy_exception API slices. | Yes | ||
| 746 | CD1 | 17.9.7 [propagation] | current_exception may fail with bad_alloc |
Yes | ||
| 747 | NAD | 21.3.6.4 [meta.unary.prop] | We have 3 separate type traits to identify classes supporting no-throw operations | Yes | ||
| 748 | NAD | 21.3.6.4 [meta.unary.prop] | The is_abstract type trait is defined by reference to 10.4. | Yes | ||
| 749 | CD1 | 21.3.6.4 [meta.unary.prop] | Currently has_nothrow_copy_constructor<T>::value is true if T has 'a' nothrow copy constructor. |
Yes | ||
| 750 | Dup | 21.3.8 [meta.rel] | The current definition for is_convertible requires that the type be
implicitly convertible, so explicit constructors are ignored. |
Yes | 719 | |
| 751 | NAD | 23.3.14 [vector.bool] | change pass-by-reference members of vector<bool> to pass-by-value? |
Yes | ||
| 752 | C++11 | 16.4.4.6 [allocator.requirements] | Allocator complexity requirement | Yes | ||
| 753 | C++11 | 16.4.4.2 [utility.arg.requirements] | Move constructor in draft | Yes | ||
| 754 | NAD Editorial | 26.11.5 [uninitialized.copy] | Ambiguous return clause for std::uninitialized_copy |
Yes | ||
| 755 | CD1 | 23.3.13.3 [vector.capacity] | std::vector and std:string lack explicit shrink-to-fit operations |
Yes | ||
| 756 | Resolved | 23.6 [container.adaptors] | Container adaptors push | Yes | ||
| 757 | NAD Editorial | 23.3.13 [vector] | Typo in the synopsis of vector | Yes | ||
| 758 | C++11 | 20.3.2.2 [util.smartptr.shared] | shared_ptr and nullptr |
Yes | ||
| 759 | CD1 | 23.2 [container.requirements] | A reference is not an object | Yes | ||
| 760 | NAD | 23.2 [container.requirements] | The emplace issue | Yes | 2 | |
| 761 | CD1 | 23.5.3.3 [unord.map.elem] | unordered_map needs an at() member function |
Yes | ||
| 762 | CD1 | 20.3.1 [unique.ptr] | std::unique_ptr requires complete type? |
Yes | ||
| 763 | NAD | 23.2.7 [associative.reqmts] | Renaming emplace() overloads |
Yes | ||
| 764 | NAD | 23.2.8 [unord.req] | equal_range on unordered containers should return a pair of local_iterators |
Yes | ||
| 765 | C++11 | 24.3.4 [iterator.concepts] | More on iterator validity | Yes | ||
| 766 | CD1 | 23.2 [container.requirements] | Inconsistent exception guarantees between ordered and unordered associative containers | Yes | ||
| 767 | Resolved | 23 [containers] | Forwarding and backward compatibility | Yes | ||
| 768 | CD1 | 32.5.8 [atomics.types.generic] | Typos in [atomics]? | Yes | ||
| 769 | CD1 | 22.10.17.3 [func.wrap.func] | std::function should use nullptr_t instead of "unspecified-null-pointer-type" | Yes | ||
| 770 | CD1 | 22.10.17 [func.wrap] | std::function should use rvalue swap | Yes | ||
| 771 | CD1 | 27.4.5 [string.conversions] | Impossible throws clause in [string.conversions] | Yes | ||
| 772 | CD1 | 27.4.5 [string.conversions] | Impossible return clause in [string.conversions] | Yes | ||
| 773 | NAD | 29.5.9.2 [rand.dist.uni] | issues with random | Yes | ||
| 774 | C++11 | 23 [containers] | Member swap undefined for most containers |
Yes | ||
| 775 | CD1 | 22.4.7 [tuple.helper] | Tuple indexing should be unsigned? | Yes | ||
| 776 | CD1 | 23.3.3 [array] | Undescribed assign function of std::array |
Yes | ||
| 777 | CD1 | 32.5.8.2 [atomics.types.operations] | Atomics Library Issue | Yes | ||
| 778 | CD1 | 22.9.2.2 [bitset.cons] | std::bitset does not have any constructor taking a string literal | Yes | 116 | |
| 779 | CD1 | 26.7.8 [alg.remove] | Resolution of #283 incomplete | Yes | ||
| 780 | C++11 | 26.8.6 [alg.merge] | std::merge() specification incorrect/insufficient |
Yes | ||
| 781 | CD1 | 29.4.7 [complex.value.ops] | std::complex should add missing C99 functions |
Yes | ||
| 782 | CD1 | 29.5.8.1 [rand.util.seedseq] | Extended seed_seq constructor is useless |
Yes | ||
| 783 | CD1 | 32.4.3.2 [thread.thread.id] | thread::id reuse |
Yes | ||
| 784 | NAD | 32.6.5.4.4 [thread.lock.unique.mod] | unique_lock::release | Yes | ||
| 785 | NAD | 5.1.4.5 [tr1::tr.rand.eng.disc] | [tr1] Random Number Requirements in TR1 | Yes | ||
| 786 | Resolved | 30 [time] | Thread library timed waits, UTC and monotonic clocks | Yes | ||
| 787 | CD1 | 26.8.4.5 [binary.search] | complexity of binary_search |
Yes | ||
| 788 | C++11 | 24.6.2 [istream.iterator] | Ambiguity in [istream.iterator] | Yes | ||
| 789 | CD1 | 99 [rand.adapt.xor] | xor_combine_engine(result_type) should be explicit |
Yes | ||
| 790 | NAD | 99 [rand.adapt.xor] | xor_combine::seed not specified |
Yes | ||
| 791 | NAD | 29.5.9.6.2 [rand.dist.samp.pconst] | piecewise_constant_distribution::densities has wrong name |
Yes | ||
| 792 | CD1 | 29.5.9.6.2 [rand.dist.samp.pconst] | piecewise_constant_distribution is undefined for a range with just one endpoint |
Yes | ||
| 793 | Resolved | 29.5.9.6.1 [rand.dist.samp.discrete] | discrete_distribution missing constructor |
Yes | ||
| 794 | Resolved | 29.5.9.6.2 [rand.dist.samp.pconst] | piecewise_constant_distribution missing constructor |
Yes | ||
| 795 | Dup | 99 [rand.dist.samp.genpdf] | general_pdf_distribution should be dropped |
Yes | 732 | |
| 796 | NAD | 29.5.6 [rand.predef] | ranlux48_base returns wrong value |
Yes | ||
| 797 | NAD | 29.5.6 [rand.predef] | ranlux48 returns wrong value |
Yes | ||
| 798 | CD1 | 99 [depr.lib.binders] | Refactoring of binders lead to interface breakage | Yes | ||
| 799 | NAD | 29.5.4.3 [rand.eng.mers] | Mersenne twister equality overspecified | Yes | ||
| 800 | Resolved | 29.5.8.1 [rand.util.seedseq] | Issues in 26.4.7.1 [rand.util.seedseq](6) | Yes | ||
| 801 | Resolved | 22.4 [tuple] | tuple and pair trivial members |
Yes | ||
| 802 | NAD | 29.5.6 [rand.predef] | knuth_b returns wrong value |
Yes | ||
| 803 | Resolved | 29.5.8.1 [rand.util.seedseq] | Simplification of seed_seq::seq_seq |
Yes | ||
| 804 | CD1 | 19.5 [syserr] | Some problems with classes error_code/error_condition |
Yes | ||
| 805 | CD1 | 19.5 [syserr] | posix_error::posix_errno concerns |
Yes | ||
| 806 | CD1 | 20.3.1.3.6 [unique.ptr.single.modifiers] | unique_ptr::reset effects incorrect, too permissive |
Yes | ||
| 807 | CD1 | 22.4.4.2 [tuple.cnstr] | tuple construction should not fail unless its element's construction fails |
Yes | ||
| 808 | CD1 | 22.2.4 [forward] | §[forward] incorrect redundant specification | Yes | ||
| 809 | CD1 | 26.7.3 [alg.swap] | std::swap should be overloaded for array types |
Yes | ||
| 810 | C++11 | 31.7.8 [ext.manip] | Missing traits dependencies in operational semantics of extended manipulators | Yes | ||
| 811 | C++11 | 22.3 [pairs] | pair of pointers no longer works with literal 0 |
Yes | ||
| 812 | NAD Editorial | 26.8.2 [alg.sort] | unsolicited multithreading considered harmful? | Yes | ||
| 813 | CD1 | 20.3.2.2 [util.smartptr.shared] | "empty" undefined for shared_ptr |
Yes | ||
| 814 | C++11 | 23.3.14 [vector.bool] | vector<bool>::swap(reference, reference) not defined |
Yes | ||
| 815 | Resolved | 22.10.17.3.5 [func.wrap.func.inv] | std::function and reference_closure do not use perfect forwarding |
Yes | ||
| 816 | Resolved | 22.10.15.4 [func.bind.bind] | Should bind()'s returned functor have a nofail copy ctor when bind() is nofail? |
Yes | ||
| 817 | C++11 | 22.10.15.4 [func.bind.bind] | bind needs to be moved |
Yes | ||
| 818 | CD1 | 32.5.4 [atomics.order] | wording for memory ordering | Yes | ||
| 819 | C++11 | 17.9.8 [except.nested] | rethrow_if_nested | Yes | ||
| 820 | CD1 | 17.9.7 [propagation] | current_exception()'s interaction with throwing copy ctors |
Yes | ||
| 821 | C++11 | 20.3.1.4.5 [unique.ptr.runtime.modifiers] | Minor cleanup : unique_ptr |
Yes | ||
| 822 | NAD | 16.4.4.2 [utility.arg.requirements] | Object with explicit copy constructor no longer CopyConstructible |
Yes | ||
| 823 | Resolved | 22.2.4 [forward] | identity<void> seems broken |
Yes | ||
| 824 | CD1 | 27.4.4.4 [string.io] | rvalue ref issue with basic_string inserter |
Yes | ||
| 825 | Resolved | 19.5.4.1 [syserr.errcode.overview] | Missing rvalues reference stream insert/extract operators? | Yes | ||
| 826 | NAD | 28.3.4.3.3 [locale.nm.put] | Equivalent of %'d, or rather, lack thereof? |
Yes | ||
| 827 | Resolved | 20.3.2.2.2 [util.smartptr.shared.const] | constexpr shared_ptr::shared_ptr()? |
Yes | ||
| 828 | Resolved | 32.6.4.2.2 [thread.mutex.class] | Static initialization for std::mutex? |
Yes | ||
| 829 | CD1 | 17.9.7 [propagation] | current_exception wording unclear about exception type | Yes | ||
| 830 | NAD Editorial | 27.2 [char.traits] | Incomplete list of char_traits specializations | Yes | ||
| 831 | NAD Editorial | 27.2.4 [char.traits.specializations] | wrong type for not_eof() | Yes | ||
| 832 | NAD | 19.5 [syserr] | Applying constexpr to System error support | Yes | ||
| 833 | NAD | 16.4.2.5 [compliance] | Freestanding implementations header list needs review for C++0x | Yes | ||
| 834 | Resolved | 20.3.1.3 [unique.ptr.single] | unique_ptr::pointer requirements underspecified |
Yes | ||
| 835 | C++11 | 31.5.4.3 [basic.ios.members] | Tying two streams together (correction to DR 581) | Yes | ||
| 836 | C++11 | 28.3.4.7.2.3 [locale.money.get.virtuals] |
Effects of money_base::space and
money_base::none on money_get
|
Yes | 670 | |
| 837 | NAD Editorial | 31.5.4.3 [basic.ios.members] |
basic_ios::copyfmt() overly loosely specified
|
Yes | ||
| 838 | C++11 | 24.6.2 [istream.iterator] | Can an end-of-stream iterator become a non-end-of-stream one? | Yes | ||
| 839 | Resolved | 23.4 [associative] | Maps and sets missing splice operation | Yes | ||
| 840 | NAD | 22.3 [pairs] | pair default template argument |
Yes | ||
| 841 | NAD Editorial | 17.4.1 [cstdint.syn] | cstdint.syn inconsistent with C99 | Yes | ||
| 842 | CD1 | 23.2 [container.requirements] | ConstructibleAsElement and bit containers |
Yes | ||
| 843 | CD1 | 99 [func.referenceclosure.cons] | Reference Closure | Yes | ||
| 844 | CD1 | 29.4.10 [cmplx.over] | complex pow return type is ambiguous |
Yes | ||
| 845 | CD1 | 32.5.8 [atomics.types.generic] | atomics cannot support aggregate initialization | Yes | ||
| 846 | CD1 | 32.5.8.2 [atomics.types.operations] | No definition for constructor | Yes | ||
| 847 | C++11 | 27.4.3.2 [string.require] | string exception safety guarantees | Yes | ||
| 848 | CD1 | 22.10.19 [unord.hash] | Missing std::hash specializations for std::bitset/std::vector<bool> |
Yes | ||
| 849 | NAD | 21.3.9.7 [meta.trans.other] | missing type traits to compute root class and derived class of types in a class hierachy | Yes | ||
| 850 | CD1 | 23.3.5.3 [deque.capacity] | Should shrink_to_fit apply to std::deque? |
Yes | ||
| 851 | NAD | 23.3.3 [array] | simplified array construction | Yes | ||
| 852 | CD1 | 23.5 [unord] | unordered containers begin(n) mistakenly const |
Yes | ||
| 853 | C++11 | 22.9.2 [template.bitset] | to_string needs updating with zero and one |
Yes | ||
| 854 | C++11 | 20.3.1.2.2 [unique.ptr.dltr.dflt] | default_delete converting constructor underspecified |
Yes | ||
| 855 | NAD | 23.3.5.3 [deque.capacity] | capacity() and reserve() for deque? | Yes | ||
| 856 | CD1 | 21.3.9.7 [meta.trans.other] | Removal of aligned_union |
Yes | ||
| 857 | C++11 | 32.7.4 [thread.condition.condvar] | condition_variable::time_wait return bool error prone |
Yes | ||
| 858 | CD1 | 99 [util.dynamic.safety] | Wording for Minimal Support for Garbage Collection | Yes | ||
| 859 | C++11 | 32.7 [thread.condition] | Monotonic Clock is Conditionally Supported? | Yes | ||
| 860 | C++11 | 29 [numerics] | Floating-Point State | Yes | ||
| 861 | C++11 | 23.2 [container.requirements] | Incomplete specification of EqualityComparable for std::forward_list |
Yes | ||
| 862 | NAD Editorial | 26.8.7.2 [includes] | Impossible complexity for 'includes' | Yes | ||
| 863 | NAD | 31.10 [file.streams] | What is the state of a stream after close() succeeds | Yes | ||
| 864 | NAD Editorial | 32.5.8.2 [atomics.types.operations] | Defect in atomic wording | Yes | ||
| 865 | C++11 | 26.7.6 [alg.fill] | More algorithms that throw away information | Yes | ||
| 866 | C++11 | 26.11 [specialized.algorithms] | Qualification of placement new-expressions | Yes | ||
| 867 | NAD Editorial | 29.6.2.2 [valarray.cons] | Valarray and value-initialization | Yes | ||
| 868 | C++11 | 23 [containers] | Default construction and value-initialization | Yes | ||
| 869 | C++11 | 23.2.8 [unord.req] | Bucket (local) iterators and iterating past end | Yes | ||
| 870 | C++11 | 23.2.8 [unord.req] | Do unordered containers not support function pointers for predicate/hasher? | Yes | ||
| 871 | C++11 | 26.10.13 [numeric.iota] | Iota's requirements on T are too strong |
Yes | ||
| 872 | C++11 | 24.5.4.6 [move.iter.elem] | move_iterator::operator[] has wrong return type |
Yes | ||
| 873 | NAD Editorial | 6.9.2 [basic.fundamental] | signed integral type and unsigned integral type are not clearly defined | Yes | ||
| 874 | Resolved | 29.5.9.6.1 [rand.dist.samp.discrete] | Missing initializer_list constructor for discrete_distribution |
Yes | ||
| 875 | Resolved | 29.5.9.6.2 [rand.dist.samp.pconst] | Missing initializer_list constructor for piecewise_constant_distribution |
Yes | ||
| 876 | C++11 | 27.4.3 [basic.string] | basic_string access operations should give stronger guarantees |
Yes | ||
| 877 | NAD | 16 [library] | to throw() or to Throw: Nothing. |
Yes | ||
| 878 | C++11 | 23.3.7 [forward.list] | forward_list preconditions |
Yes | ||
| 879 | NAD Editorial | 32.5 [atomics] | Atomic load const qualification | Yes | ||
| 880 | Resolved | 32.5 [atomics] | Missing atomic exchange parameter | Yes | 942 | |
| 881 | C++11 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr conversion issue |
Yes | ||
| 882 | CD1 | 30.5.6 [time.duration.nonmember] | duration non-member arithmetic requirements |
Yes | ||
| 883 | C++11 | 23 [containers] | swap circular definition | Yes | ||
| 884 | Resolved | 20.3.2.2.5 [util.smartptr.shared.mod] | shared_ptr swap |
Yes | ||
| 885 | C++11 | 22.3 [pairs] | pair assignment |
Yes | ||
| 886 | C++11 | 22.4.4.2 [tuple.cnstr] | tuple construction |
Yes | ||
| 887 | NAD | 32.7.4 [thread.condition.condvar] | issue with condition::wait_... | Yes | ||
| 888 | C++11 | 32.4.5 [thread.thread.this] | this_thread::yield too strong |
Yes | ||
| 889 | Resolved | 32.4.3.2 [thread.thread.id] | thread::id comparisons |
Yes | ||
| 890 | C++11 | 19.5.3 [syserr.errcat] | Improving <system_error> initialization |
Yes | ||
| 891 | C++11 | 32.4.3.3 [thread.thread.constr] | std::thread, std::call_once issue |
Yes | ||
| 892 | NAD Editorial | 23.3.7.6 [forward.list.ops] | Forward_list issues... | Yes | ||
| 893 | C++11 | 32.6.4.2.2 [thread.mutex.class] | std::mutex issue |
Yes | 905 | |
| 894 | C++11 | 17.14 [support.runtime] | longjmp and destructors | Yes | ||
| 895 | Dup | 16.3.2.4 [structure.specifications] | "Requires:" on std::string::at et al | Yes | 625 | |
| 896 | C++11 | 20.3.2.2 [util.smartptr.shared] | Library thread safety issue | Yes | ||
| 897 | Resolved | 23.3.7.5 [forward.list.modifiers] | Forward_list issues... Part 2 | Yes | ||
| 898 | C++11 | 23.3.7.6 [forward.list.ops] | Small contradiction in n2723 to forward to committee | Yes | ||
| 899 | C++11 | 20.3.2.2.3 [util.smartptr.shared.dest] | Adjusting shared_ptr for nullptr_t |
Yes | ||
| 900 | C++11 | 31.10.4 [ifstream] | Stream move-assignment | Yes | ||
| 901 | NAD | 24.5.2.4 [insert.iterator] | insert iterators can move from lvalues | Yes | ||
| 902 | NAD Concepts | 17.3.5 [numeric.limits] | Regular is the wrong concept to constrain numeric_limits | Yes | ||
| 903 | NAD | 24.5.2.2 [back.insert.iterator] | back_insert_iterator issue |
Yes | ||
| 904 | C++11 | 99 [func.ret] | result_of argument types |
Yes | ||
| 905 | Dup | 32.6.4.2.2 [thread.mutex.class] | Mutex specification questions | Yes | 893 | |
| 906 | NAD Concepts | 17.11 [support.initlist] | ObjectType is the wrong concept to constrain initializer_list |
Yes | ||
| 907 | C++11 | 22.9.2.3 [bitset.members] | Bitset's immutable element retrieval is inconsistently defined | Yes | ||
| 908 | Resolved | 32.5.8 [atomics.types.generic] | Deleted assignment operators for atomic types must be volatile | Yes | ||
| 909 | C++11 | 28.6.11.2 [re.tokiter] | regex_token_iterator should use initializer_list |
Yes | ||
| 910 | NAD Concepts | 16.4.4.2 [utility.arg.requirements] | Effects of MoveAssignable | Yes | ||
| 911 | C++11 | 31.7.5 [input.streams] | I/O streams and move/swap semantic |
Yes | ||
| 912 | NAD Concepts | 26.7.3 [alg.swap] | Array swap needs to be conceptualized | Yes | ||
| 913 | NAD Concepts | 26.7.5 [alg.replace] | Superfluous requirements for replace algorithms | Yes | ||
| 914 | NAD Concepts | 26.7.9 [alg.unique] | Superfluous requirement for unique | Yes | ||
| 915 | NAD Editorial | 26.8.9 [alg.min.max] | minmax with initializer_list should return
pair of T, not pair of const T& |
Yes | ||
| 916 | NAD | 22.3 [pairs] | Redundant move-assignment operator of pair should be removed |
Yes | ||
| 917 | NAD | 22.4.4.2 [tuple.cnstr] | Redundant move-assignment operator of tuple should be removed |
Yes | ||
| 918 | NAD Concepts | 22.4.4.4 [tuple.swap] | Swap for tuple needs to be conceptualized | Yes | ||
| 919 | NAD | 23.3.7.6 [forward.list.ops] | (forward_)list specialized remove algorithms are over constrained |
Yes | ||
| 920 | C++11 | 22.10.16 [func.memfn] | Ref-qualification support in the library | Yes | 1230 | |
| 921 | C++11 | 21.5.3 [ratio.ratio] | Rational Arithmetic should use template aliases | Yes | ||
| 922 | C++11 | B [implimits] | §[func.bind.place] Number of placeholders | Yes | ||
| 923 | Resolved | 32.5 [atomics] | atomics with floating-point | Yes | ||
| 924 | Resolved | 32.5 [atomics] | structs with internal padding | Yes | ||
| 925 | C++11 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr's explicit conversion from unique_ptr |
Yes | ||
| 926 | NAD Editorial | 32.5.4 [atomics.order] | Sequentially consistent fences, relaxed operations and modification order | Yes | ||
| 927 | NAD Concepts | 99 [allocator.concepts] | Dereferenceable should be HasDereference |
Yes | ||
| 928 | NAD Concepts | 22.4.9 [tuple.rel] | Wrong concepts used for tuple's comparison operators |
Yes | ||
| 929 | C++11 | 32.4.3.3 [thread.thread.constr] | Thread constructor | Yes | ||
| 930 | NAD | 23.3.3 [array] | Access to std::array data as built-in array type | Yes | ||
| 931 | C++11 | 21.3.6.4 [meta.unary.prop] | type trait extent<T, I> |
Yes | ||
| 932 | Resolved | 20.3.1.3.2 [unique.ptr.single.ctor] | unique_ptr(pointer p) for pointer deleter types |
Yes | ||
| 933 | NAD | 20.3.1.3.6 [unique.ptr.single.modifiers] | Unique_ptr defect | Yes | ||
| 934 | C++11 | 30.5 [time.duration] | duration is missing operator% |
Yes | ||
| 935 | NAD | 30.7 [time.clock] | clock error handling needs to be specified | Yes | ||
| 936 | LEWG | 32.6.4 [thread.mutex.requirements] | Mutex type overspecified | No | 961 | |
| 937 | NAD Editorial | 32.5 [atomics] | Atomics for standard typedef types | Yes | ||
| 938 | C++11 | 20.3.1.2.3 [unique.ptr.dltr.dflt1] | default_delete<T[]>::operator() should only accept T* |
Yes | ||
| 939 | C++11 | 22.2.4 [forward] | Problem with std::identity and reference-to-temporaries |
Yes | ||
| 940 | Resolved | 24.4.3 [iterator.operations] | std::distance |
Yes | ||
| 941 | NAD | 16 [library] | Ref-qualifiers for assignment operators | Yes | ||
| 942 | Dup | 32.5 [atomics] | Atomics synopsis typo | Yes | 880 | |
| 943 | C++11 | 99 [atomics.types.address] | ssize_t undefined |
Yes | ||
| 944 | Resolved | 32.5.8 [atomics.types.generic] | atomic<bool> derive from atomic_bool? |
Yes | ||
| 945 | NAD Editorial | 30.7.2 [time.clock.system] | system_clock::rep not specified |
Yes | ||
| 946 | NAD | 30.5.8 [time.duration.cast] | duration_cast improperly specified |
Yes | ||
| 947 | Resolved | 30.5.6 [time.duration.nonmember] | duration arithmetic: contradictory requirements |
Yes | ||
| 948 | C++11 | 21.5.4 [ratio.arithmetic] | ratio arithmetic tweak |
Yes | ||
| 949 | C++11 | 20.3.2.4 [util.smartptr.ownerless] | owner_less |
Yes | ||
| 950 | Resolved | 20.3.1.3.2 [unique.ptr.single.ctor] | unique_ptr converting ctor shouldn't accept array form |
Yes | ||
| 951 | C++11 | 30.4.1 [time.traits.is.fp] | Various threading bugs #1 | Yes | ||
| 952 | NAD Editorial | 30.5.8 [time.duration.cast] | Various threading bugs #2 | Yes | ||
| 953 | Resolved | 30.3 [time.clock.req] | Various threading bugs #3 | Yes | ||
| 954 | C++11 | 30.3 [time.clock.req] | Various threading bugs #4 | Yes | ||
| 955 | NAD | 30.3 [time.clock.req] | Various threading bugs #5 | Yes | ||
| 956 | C++11 | 30.3 [time.clock.req] | Various threading bugs #6 | Yes | ||
| 957 | C++11 | 30.7.2 [time.clock.system] | Various threading bugs #7 | Yes | ||
| 958 | Resolved | 32.7.4 [thread.condition.condvar] | Various threading bugs #8 | Yes | ||
| 959 | NAD | 32.7.4 [thread.condition.condvar] | Various threading bugs #9 | Yes | ||
| 960 | C++11 | 32.6.4 [thread.mutex.requirements] | Various threading bugs #10 | Yes | ||
| 961 | LEWG | 32.6.4 [thread.mutex.requirements] | Various threading bugs #11 | No | 936 | |
| 962 | C++11 | 32.6.5.4.3 [thread.lock.unique.locking] | Various threading bugs #12 | Yes | ||
| 963 | C++11 | 32.4.3.6 [thread.thread.member] | Various threading bugs #13 | Yes | ||
| 964 | Resolved | 32.7.5 [thread.condition.condvarany] | Various threading bugs #14 | Yes | ||
| 965 | C++11 | 32.7.4 [thread.condition.condvar] | Various threading bugs #15 | Yes | ||
| 966 | Resolved | 32.7.4 [thread.condition.condvar] | Various threading bugs #16 | Yes | ||
| 967 | C++11 | 32.4.3.3 [thread.thread.constr] | Various threading bugs #17 | Yes | ||
| 968 | C++11 | 32.6.4 [thread.mutex.requirements] | Various threading bugs #18 | Yes | ||
| 969 | NAD Editorial | 26.6.5 [alg.foreach] | What happened to Library Issue 475? | Yes | ||
| 970 | C++11 | 20.2.11 [specialized.addressof] | addressof overload unneeded |
Yes | ||
| 971 | NAD | 19.5.4.5 [syserr.errcode.nonmembers] | Spurious diagnostic conversion function | Yes | ||
| 972 | NAD Editorial | 16 [library] | The term "Assignable" undefined but still in use | Yes | ||
| 973 | NAD Editorial | 99 [auto.ptr] | auto_ptr characteristics | Yes | ||
| 974 | C++11 | 30.5.2 [time.duration.cons] | duration<double> should not implicitly convert to duration<int> |
Yes | ||
| 975 | C++11 | 21.3.8 [meta.rel] | is_convertible cannot be instantiated for non-convertible types |
Yes | ||
| 976 | Resolved | 23.6.6.2 [stack.defn] | Class template std::stack should be movable |
Yes | ||
| 977 | NAD | 24.5.2 [insert.iterators] | insert iterators inefficient for expensive to move types | Yes | ||
| 978 | C++11 | 22.10.19 [unord.hash] | Hashing smart pointers | Yes | ||
| 979 | NAD Editorial | 24.5.4 [move.iterators] | Bad example | Yes | ||
| 980 | NAD | 32.6.4 [thread.mutex.requirements] | mutex lock() missing error conditions |
Yes | ||
| 981 | C++11 | 23.2.8 [unord.req] | Unordered container requirements should add initializer_list support |
Yes | ||
| 982 | C++11 | 23.2.7 [associative.reqmts] | Wrong complexity for initializer_list assignment in Table 85 | Yes | ||
| 983 | Resolved | 20.3.1.3 [unique.ptr.single] | unique_ptr reference deleters should not be moved from |
Yes | ||
| 984 | C++11 | 31.13 [c.files] | Does <cinttypes> have macro guards? |
Yes | ||
| 985 | Resolved | 23.2.2 [container.requirements.general] | Allowing throwing move | Yes | ||
| 986 | C++11 | 32.6.6 [thread.lock.algorithm] | Generic try_lock contradiction |
Yes | ||
| 987 | C++11 | 22.10.6 [refwrap] | reference_wrapper and function types |
Yes | ||
| 988 | NAD | 99 [concept.comparison] | Reflexivity meaningless? |
Yes | ||
| 989 | NAD Concepts | 16 [library] | late_check and library | Yes | ||
| 990 | C++11 | 99 [time.clock.monotonic] | monotonic_clock::is_monotonic must be true |
Yes | ||
| 991 | C++11 | 99 [depr.conversions.string] | Provide allocator for wstring_convert |
Yes | ||
| 992 | NAD | 16.4.2.2 [contents] | Allow implementations to implement C library in the global namespace | Yes | ||
| 993 | C++11 | 17.5 [support.start.term] | _Exit needs better specification |
Yes | ||
| 994 | C++11 | 17.6.4.3 [new.handler] | quick_exit should terminate well-defined |
Yes | ||
| 995 | NAD | 16.3.2.3 [structure.requirements] | Operational Semantics Unclear | Yes | ||
| 996 | NAD | 16 [library] | Move operation not well specified | Yes | ||
| 997 | C++11 | 16.3.2.4 [structure.specifications] | "Effects: Equivalent to" is underspecified | Yes | ||
| 998 | C++11 | 20.3.1.3.6 [unique.ptr.single.modifiers] | Smart pointer referencing its owner | Yes | ||
| 999 | C++11 | 26.11 [specialized.algorithms] | Taking the address of a function | Yes | ||
| 1000 | NAD Concepts | 26.6.10 [alg.adjacent.find] | adjacent_find is over-constrained | Yes | ||
| 1001 | NAD Concepts | 16 [library] | Pointers, concepts and headers | Yes | ||
| 1002 | NAD | 16.4.2.3 [headers] | Provide bulk include headers | Yes | ||
| 1003 | NAD | 16.4.2.5 [compliance] | Require more useful headers for freestanding implementations | Yes | ||
| 1004 | C++11 | 16.4.5.8 [res.on.functions] | Clarify "throws an exception" | Yes | ||
| 1005 | NAD Concepts | 17.3.5 [numeric.limits] | numeric_limits partial specializations not concept enabled |
Yes | ||
| 1006 | C++11 | 17.6.3 [new.delete] | operator delete in garbage collected implementation |
Yes | ||
| 1007 | NAD Concepts | 17.9.8 [except.nested] | throw_with_nested not concept enabled |
Yes | ||
| 1008 | NAD | 17.9.8 [except.nested] | nested_exception wording unclear |
Yes | ||
| 1009 | NAD | 24.3.5.2 [iterator.iterators] | InputIterator post-increment dangerous |
Yes | ||
| 1010 | NAD Concepts | 24.3.5.7 [random.access.iterators] | operator-= should use default in concept |
Yes | ||
| 1011 | C++11 | 24.4.3 [iterator.operations] | next/prev wrong iterator type |
Yes | ||
| 1012 | C++11 | 24.5.1.4 [reverse.iter.cons] | reverse_iterator default ctor should value initialize |
Yes | ||
| 1013 | NAD Editorial | 26.8.9 [alg.min.max] | Remove IsSameType hold-over constraints |
Yes | ||
| 1014 | C++11 | 28.6.7.2 [re.regex.construct] | basic_regex should be created/assigned from initializer lists |
Yes | ||
| 1015 | NAD Concepts | 99 [concept.transform] | C++ programs - but not users - need to provide support concept_maps |
Yes | ||
| 1016 | NAD Concepts | 99 [concept.comparison] | Provide LessThanComparable and EqualityComparable for FloatingPointType |
Yes | ||
| 1017 | NAD Concepts | 99 [concept.regular] | Floating-point types should not satisfy Regular |
Yes | ||
| 1018 | NAD Concepts | 21 [meta] | Trait specifications should be expressed in terms of concepts | Yes | ||
| 1019 | C++11 | 21.3.4 [meta.help] | Make integral_constant objects useable in integral-constant-expressions |
Yes | ||
| 1020 | NAD | 21.3.9.7 [meta.trans.other] | Restore aligned_union |
Yes | ||
| 1021 | C++11 | 20.3.1.3.4 [unique.ptr.single.asgn] | Allow nullptr_t assignments to unique_ptr |
Yes | ||
| 1022 | NAD Editorial | 99 [util.dynamic.safety] | Pointer-safety API has nothing to do with smart pointers | Yes | ||
| 1023 | NAD Editorial | 22.10.17.3 [func.wrap.func] | Unclear inheritance relation for std::function |
Yes | ||
| 1024 | NAD Concepts | 22.10.17.3 [func.wrap.func] | std::function constructors overly generous |
Yes | ||
| 1025 | NAD Future | 22.10.19 [unord.hash] | The library should provide more specializations for std::hash |
Yes | ||
| 1026 | NAD Concepts | 20.2 [memory] | Smart pointers need to be concept-constrained templates | Yes | ||
| 1027 | NAD Concepts | 20.2.10 [default.allocator] | std::allocator needs to be a concept-constrained template |
Yes | ||
| 1028 | NAD Concepts | 99 [depr.storage.iterator] | raw_storage_iterator needs to be a concept-constrained template |
Yes | ||
| 1029 | NAD Concepts | 26.11 [specialized.algorithms] | Specialized algorithms for memory management need to be concept-constrained templates | Yes | ||
| 1030 | C++11 | 99 [depr.util.smartptr.shared.atomic] | Missing requirements for smart-pointer safety API | Yes | ||
| 1031 | NAD | 20.3.2.2 [util.smartptr.shared] | Need shared_ptr conversion to a unique_ptr |
Yes | ||
| 1032 | NAD Concepts | 30 [time] | Tome utility templates need to be concept-constrained | Yes | ||
| 1033 | C++11 | 32.4.3.6 [thread.thread.member] | thread::join() effects? |
Yes | ||
| 1034 | C++11 | 23.2.2 [container.requirements.general] | Clarify generality of Container Requirement tables | Yes | ||
| 1035 | NAD | 23.2.2 [container.requirements.general] | <array>::swap can invalidate references, pointers, and iterators |
Yes | ||
| 1036 | NAD Concepts | 23.2.4 [sequence.reqmts] | Remove iterator specification that is redundant due to concept constraints | Yes | ||
| 1037 | C++11 | 23.2.4 [sequence.reqmts] | Unclear status of match_results as library container |
Yes | ||
| 1038 | C++11 | 23.2.4 [sequence.reqmts] | Sequence requirement table needs to reference several new containers | Yes | ||
| 1039 | C++11 | 23.2.4 [sequence.reqmts] | Sequence container back function should also support const_iterator |
Yes | ||
| 1040 | C++11 | 23.2.7 [associative.reqmts] | Clarify possible sameness of associative container's iterator and const_iterator |
Yes | ||
| 1041 | Resolved | 23.2.7 [associative.reqmts] | Add associative/unordered container functions that allow to extract elements | Yes | ||
| 1042 | NAD | 23.3 [sequences] | Provide ContiguousStorage concept and apply it to corresponding containers |
Yes | ||
| 1043 | Resolved | 32.5.8.2 [atomics.types.operations] | Clarify that compare_exchange is not a read-modify-write operation |
Yes | ||
| 1044 | C++11 | 32.6 [thread.mutex] | Empty tag types should be constexpr literals |
Yes | ||
| 1045 | C++11 | 32.6.5.4.2 [thread.lock.unique.cons] | Remove unnecessary preconditions from unique_lock constructor |
Yes | ||
| 1046 | Resolved | 32.10 [futures] | Provide simple facility to start asynchronous operations | Yes | ||
| 1047 | Resolved | 32.10.7 [futures.unique.future] | Ensure that future's get() blocks when not ready |
Yes | ||
| 1048 | Resolved | 32.10.7 [futures.unique.future] | Provide empty-state inspection for std::unique_future |
Yes | ||
| 1049 | Resolved | 32.10.6 [futures.promise] | Move assignment of promise inverted |
Yes | ||
| 1050 | Resolved | 32.10.6 [futures.promise] | Clarify postconditions for get_future() |
Yes | ||
| 1051 | NAD | 24.5.1.6 [reverse.iter.elem] | Specify subscript operation return types of reverse_iterator and move_iterator |
Yes | ||
| 1052 | Resolved | 24.5.1.6 [reverse.iter.elem] | reverse_iterator::operator-> should also support smart pointers |
Yes | 2775 | |
| 1053 | NAD | 26 [algorithms] | Unify algorithms with operator and function object variants | Yes | ||
| 1054 | Resolved | 22.2.4 [forward] | forward broken |
Yes | ||
| 1055 | Resolved | 21.3.9.7 [meta.trans.other] | Provide a trait that returns the underlying type of an enumeration type | Yes | ||
| 1056 | NAD | 29.5 [rand] | Must all Engines and Distributions be Streamable? | Yes | ||
| 1057 | NAD Concepts | 29.5 [rand] | RandomNumberEngineAdaptor |
Yes | ||
| 1058 | NAD Editorial | 23.2.4 [sequence.reqmts] | New container issue | Yes | ||
| 1059 | NAD Concepts | 22.10.17.3 [func.wrap.func] | Usage of no longer existing FunctionType concept | Yes | ||
| 1060 | NAD Editorial | 16.3.3.3.4.2 [byte.strings] | Embedded nulls in NTBS | Yes | ||
| 1061 | NAD Editorial | 22.3.4 [pair.astuple] | Bad indexing for tuple access to pair (Editorial?) | Yes | ||
| 1062 | NAD | 24.5.2 [insert.iterators] | Missing insert_iterator for stacks/queues | Yes | ||
| 1063 | NAD Concepts | 99 [iterator.backward] | 03 iterator compatibilty | Yes | ||
| 1064 | NAD | 99 [defns.obj.state] | Term "object state" should not refer to classes | Yes | ||
| 1065 | C++11 | 16.4.2.2 [contents] | Allow inline namespaces within namespace std for implementations |
Yes | ||
| 1066 | C++11 | 17 [support] | Use [[noreturn]] attribute in the library |
Yes | ||
| 1067 | NAD Concepts | 26.10 [numeric.ops] | simplified wording for inner_product | Yes | ||
| 1068 | NAD | 29.5.7 [rand.device] | class random_device should be movable |
Yes | ||
| 1069 | NAD | 29.5.8.1 [rand.util.seedseq] | class seed_seq should support efficient move operations |
Yes | ||
| 1070 | C++11 | 22.10.17.3 [func.wrap.func] | Ambiguous move overloads in function | Yes | ||
| 1071 | C++11 | 22.10.15.2 [func.bind.isbind] | is_bind_expression should derive from integral_constant<bool> |
Yes | ||
| 1072 | NAD Concepts | 22.10.19 [unord.hash] | Is std::hash a constrained template or not? |
Yes | ||
| 1073 | C++11 | 20.2 [memory] | Declaration of allocator_arg should be constexpr |
Yes | ||
| 1074 | NAD Concepts | 99 [allocator.element.concepts] | concept map broken by N2840 | Yes | ||
| 1075 | Resolved | 22 [utilities] | Scoped allocators are too complex | Yes | ||
| 1076 | NAD Concepts | 99 [depr.negators] | unary/binary_negate need constraining and move support | Yes | ||
| 1077 | NAD Editorial | 22.4.4 [tuple.tuple] | Nonesense tuple declarations |
Yes | ||
| 1078 | NAD Concepts | 17.7.7 [type.index] | DE-17: Remove class type_index | Yes | ||
| 1079 | C++11 | 24.3.5.7 [random.access.iterators] | UK-265: RandomAccessIterator's operator- has nonsensical effects clause |
Yes | ||
| 1080 | NAD Concepts | 99 [concept.arithmetic] | Concept ArithmeticLike should provide explicit boolean conversion | Yes | ||
| 1081 | NAD Concepts | 27 [strings] | basic_string needs to be a concept-constrained template |
Yes | ||
| 1082 | NAD Concepts | 28.3 [localization] | codecvt needs to be a concept-constrained template |
Yes | ||
| 1083 | NAD Concepts | 28.3 [localization] | InputIterator and OutputIterator template parameters need to be concept constraints |
Yes | ||
| 1084 | NAD Concepts | 24.3.5.5 [forward.iterators] | Concept ForwardIterator should provide default implementation for post-increment |
Yes | ||
| 1085 | NAD Concepts | 24.3.5.6 [bidirectional.iterators] | BidirectionalIterator concept should provide default implementation for post-decrement |
Yes | ||
| 1086 | NAD Concepts | 24.6 [stream.iterators] | Stream iterators need to be concept-constrained templates | Yes | ||
| 1087 | NAD Concepts | 26.7.5 [alg.replace] | Incorrect OutputIterator concept requirements for replace algorithms |
Yes | ||
| 1088 | Resolved | 32.10.6 [futures.promise] | std::promise should provide non-member swap overload |
Yes | ||
| 1089 | C++11 | 32 [thread] | Unify "Throws: Nothing." specifications | Yes | ||
| 1090 | Resolved | 32.10.10 [futures.task] | Missing description of packaged_task member swap, missing non-member swap |
Yes | ||
| 1091 | NAD | 23.4.4.3 [multimap.modifiers] | Multimap description confusing | Yes | ||
| 1092 | NAD Concepts | 21.3.4 [meta.help] | Class template integral_constant should be a constrained template |
Yes | ||
| 1093 | Resolved | 26.7.13 [alg.random.shuffle] | Multiple definitions for random_shuffle algorithm |
Yes | ||
| 1094 | C++11 | 31.5.4.4 [iostate.flags] | Replace "unspecified-bool-type" by "explicit operator bool() const" in I/O library |
Yes | ||
| 1095 | C++11 | 16.4.5.10 [res.on.objects] | Shared objects and the library wording unclear | Yes | ||
| 1096 | NAD Concepts | 16 [library] | unconstrained rvalue ref parameters | Yes | ||
| 1097 | C++11 | 17.2 [support.types] | #define __STDCPP_THREADS | Yes | ||
| 1098 | C++11 | 99 [util.dynamic.safety] | definition of get_pointer_safety() |
Yes | ||
| 1099 | NAD | 16 [library] | Various issues | Yes | ||
| 1100 | Resolved | 20.3.1.3.2 [unique.ptr.single.ctor] | auto_ptr to unique_ptr conversion |
Yes | ||
| 1101 | NAD Editorial | 26.7.9 [alg.unique] | unique requirements |
Yes | ||
| 1102 | Open | 23.3.13.3 [vector.capacity] | std::vector's reallocation policy still unclear |
Yes | 3 | |
| 1103 | C++11 | 19.5.8.2 [syserr.syserr.members] | system_error constructor postcondition overly strict |
Yes | ||
| 1104 | C++11 | 31.5.4.3 [basic.ios.members] | basic_ios::move should accept lvalues |
Yes | ||
| 1105 | NAD Concepts | 99 [iterator.concepts.range] | Shouldn't Range be an auto concept |
Yes | ||
| 1106 | Resolved | 32.10.8 [futures.shared.future] | Multiple exceptions from connected shared_future::get()? |
Yes | ||
| 1107 | NAD Editorial | 32.10.8 [futures.shared.future] | constructor shared_future(unique_future) by value? |
Yes | ||
| 1108 | C++11 | 32.2.2 [thread.req.exception] | thread.req.exception overly constrains implementations | Yes | ||
| 1109 | NAD Concepts | 26.8.7.2 [includes] | std::includes should require CopyConstructible predicate |
Yes | ||
| 1110 | C++11 | 26.6.5 [alg.foreach] | Is for_each overconstrained? |
Yes | ||
| 1111 | NAD Concepts | 23.4 [associative] | associative containers underconstrained | Yes | ||
| 1112 | NAD | 22.9.2 [template.bitset] | bitsets and new style for loop | Yes | ||
| 1113 | C++11 | 22.9.2 [template.bitset] | bitset::to_string could be simplified |
Yes | ||
| 1114 | C++11 | 21 [meta] | Type traits underspecified | Yes | ||
| 1115 | NAD Editorial | C.8 [diff.library] | va_copy missing from Standard macros table |
Yes | ||
| 1116 | Resolved | 22.4.4 [tuple.tuple] | Literal constructors for tuple | Yes | ||
| 1117 | Resolved | 22.4.4.2 [tuple.cnstr] | tuple copy constructor |
Yes | ||
| 1118 | C++11 | 22.4.7 [tuple.helper] | tuple query APIs do not support cv-qualification |
Yes | ||
| 1119 | NAD | 22.4.7 [tuple.helper] | tuple query APIs do not support references | Yes | ||
| 1120 | NAD | 21 [meta] | New type trait - remove_all |
Yes | ||
| 1121 | NAD | 21.5.4 [ratio.arithmetic] | Support for multiple arguments | Yes | ||
| 1122 | Resolved | 21.5.3 [ratio.ratio] | Ratio values should be constexpr |
Yes | ||
| 1123 | C++11 | 31.5.2.2.6 [ios.init] | No requirement that standard streams be flushed | Yes | ||
| 1124 | NAD Concepts | 99 [concept.transform] | Invalid definition of concept RvalueOf | Yes | ||
| 1125 | NAD | 24.6.3.3 [ostream.iterator.ops] | ostream_iterator does not work with movable types | Yes | ||
| 1126 | C++11 | 24.6.4.4 [istreambuf.iterator.ops] | istreambuff_iterator::equal needs a const & parameter |
Yes | ||
| 1127 | NAD Concepts | 24.3.2.3 [iterator.traits] | rvalue references and iterator traits | Yes | ||
| 1128 | NAD Concepts | 24.2 [iterator.synopsis] | Missing definition of iterator_traits<T*> |
Yes | ||
| 1129 | Resolved | 24.6.2.2 [istream.iterator.cons] | istream(buf)_iterator should support literal sentinel value |
Yes | ||
| 1130 | C++11 | 17.9.7 [propagation] | copy_exception name misleading |
Yes | ||
| 1131 | C++11 | 21.3.6.4 [meta.unary.prop] | C++0x does not need alignment_of |
Yes | ||
| 1132 | NAD | 17.9.8 [except.nested] | JP-30: nested exceptions | Yes | ||
| 1133 | C++11 | 23.3.7.6 [forward.list.ops] | Does N2844 break current specification of list::splice? | Yes | ||
| 1134 | C++11 | 29.7 [c.math] | Redundant specification of <stdint.h>, <fenv.h>, <tgmath.h>,
and maybe <complex.h> |
Yes | ||
| 1135 | Resolved | 17.9.7 [propagation] | exception_ptr should support contextual conversion to bool |
Yes | ||
| 1136 | C++11 | 17.9.8 [except.nested] | Incomplete specification of nested_exception::rethrow_nested() |
Yes | ||
| 1137 | C++11 | 29.4.10 [cmplx.over] | Return type of conj and proj |
Yes | ||
| 1138 | C++11 | 27.4.4.1 [string.op.plus] | Unusual return value for operator+ |
Yes | ||
| 1139 | NAD Concepts | 32 [thread] | Thread support library not concept enabled | Yes | ||
| 1140 | NAD Concepts | 29 [numerics] | Numerics library not concept enabled | Yes | ||
| 1141 | NAD Concepts | 31 [input.output] | Input/Output library not concept enabled | Yes | ||
| 1142 | NAD Concepts | 28.6 [re] | Regular expressions library not concept enabled | Yes | ||
| 1143 | Resolved | 32.5 [atomics] | Atomic operations library not concept enabled | Yes | ||
| 1144 | C++11 | 17.5 [support.start.term] | "thread safe" is undefined | Yes | ||
| 1145 | Resolved | 32.5 [atomics] | Inappropriate headers for atomics | Yes | ||
| 1146 | Resolved | 32.5.5 [atomics.lockfree] | "lockfree" does not say enough | Yes | ||
| 1147 | Resolved | 32.5.8.2 [atomics.types.operations] | Non-volatile atomic functions | Yes | ||
| 1148 | NAD | 31.7 [iostream.format] | Wrong argument type of I/O stream manipulators setprecision()
and setw() |
Yes | ||
| 1149 | NAD Concepts | 99 [rand.concept.urng] | Reformulating NonemptyRange axiom | Yes | ||
| 1150 | Resolved | 31.10.6 [fstream] | wchar_t, char16_t and char32_t filenames | Yes | ||
| 1151 | Resolved | 16 [library] | Behavior of the library in the presence of threads is incompletely specified | Yes | ||
| 1152 | C++11 | 28.3.4.3.3.3 [facet.num.put.virtuals] | Expressions parsed differently than intended | Yes | ||
| 1153 | NAD | 16 [library] | Standard library needs review for constructors to be explicit to avoid treatment as initializer-list constructor | Yes | ||
| 1154 | NAD | 29.4 [complex.numbers] | complex should accept integral types |
Yes | ||
| 1155 | NAD Editorial | C.8 [diff.library] | Reference should be to C99 | Yes | ||
| 1156 | NAD | 16.3.3.3.2 [enumerated.types] | Constraints on bitmask and enumeration types to be tightened | Yes | ||
| 1157 | C++11 | 16.4.5.2.1 [namespace.std] | Local types can now instantiate templates | Yes | ||
| 1158 | C++11 | 32.2.4 [thread.req.timing] | Encouragement to use monotonic clock | Yes | ||
| 1159 | C++11 | 32.6.5.4.3 [thread.lock.unique.locking] | Unclear spec for resource_deadlock_would_occur |
Yes | 1219 | |
| 1160 | Resolved | 32.10.4 [futures.future.error] | future_error public constructor is 'exposition only' |
Yes | ||
| 1161 | Resolved | 32.10.7 [futures.unique.future] | Unnecessary unique_future limitations |
Yes | ||
| 1162 | Resolved | 32.10.8 [futures.shared.future] | shared_future should support an efficient move constructor |
Yes | ||
| 1163 | Resolved | 32.10.8 [futures.shared.future] | shared_future is inconsistent with shared_ptr |
Yes | ||
| 1164 | NAD | 32.10.6 [futures.promise] | promise::swap should pass by rvalue reference |
Yes | ||
| 1165 | Resolved | 32.10.6 [futures.promise] | Unneeded promise move constructor |
Yes | ||
| 1166 | Resolved | 99 [allocator.propagation] | Allocator-specific move/copy break model of move-constructor and move-assignment | Yes | ||
| 1167 | NAD Concepts | 22.3 [pairs] | pair<T,U> doesn't model LessThanComparable in unconstrained code even if
T and U do. |
Yes | ||
| 1168 | NAD Editorial | 22.9.2.3 [bitset.members] | Odd wording for bitset equality operators | Yes | ||
| 1169 | C++17 | 28.3.4.3.2.3 [facet.num.get.virtuals] | num_get not fully compatible with strto* |
Yes | 3 | |
| 1170 | C++11 | 27.1 [strings.general] | String char-like types no longer PODs | Yes | ||
| 1171 | C++11 | 30.5 [time.duration] | duration types should be literal | Yes | ||
| 1172 | Resolved | 99 [allocator.concepts.members] | select_on_container_(copy|move)_construction over-constrained |
Yes | ||
| 1173 | NAD | 16 [library] | "Equivalence" wishy-washiness | Yes | 3 | |
| 1174 | Resolved | 21.3.6.4 [meta.unary.prop] | Type property predicates | Yes | ||
| 1175 | Open | 23.2.8 [unord.req] | unordered complexity |
Yes | 3 | |
| 1176 | NAD | 32.4.3.3 [thread.thread.constr] | Make thread constructor non-variadic |
Yes | ||
| 1177 | C++11 | 30.5 [time.duration] | Improve "diagnostic required" wording | Yes | ||
| 1178 | C++11 | 16.4.6.2 [res.on.headers] | Header dependencies | Yes | ||
| 1179 | NAD Editorial | 16.3.2.4 [structure.specifications] | Probably editorial in [structure.specifications] | Yes | ||
| 1180 | C++11 | 28.6.8.2 [re.submatch.members] | Missing string_type member typedef in class sub_match |
Yes | ||
| 1181 | C++11 | 28.6.8.3 [re.submatch.op] | Invalid sub_match comparison operators |
Yes | ||
| 1182 | C++11 | 22.10.19 [unord.hash] | Unfortunate hash dependencies | Yes | ||
| 1183 | C++11 | 31.5.4.3 [basic.ios.members] | basic_ios::set_rdbuf may break class invariants |
Yes | ||
| 1184 | NAD | 23.3.13 [vector] | Feature request: dynamic bitset | Yes | ||
| 1185 | Resolved | 24.3 [iterator.requirements] | Iterator categories and output iterators | Yes | ||
| 1186 | NAD Concepts | 23.6.6 [stack] | Forward list could model a stack | Yes | ||
| 1187 | C++11 | 21.3.9.7 [meta.trans.other] | std::decay |
Yes | ||
| 1188 | NAD | 23.2.8 [unord.req] | Unordered containers should have a minimum load factor as well as a maximum | Yes | ||
| 1189 | C++11 | 23.2.8 [unord.req] | Awkward interface for changing the number of buckets in an unordered associative container | Yes | ||
| 1190 | NAD | 23.2.8 [unord.req] | Setting the maximum load factor should return the previous value | Yes | ||
| 1191 | C++11 | 22.4.8 [tuple.elem] | tuple get API should respect rvalues |
Yes | ||
| 1192 | C++11 | 27.4.3.4 [string.iterators] | basic_string missing definitions for cbegin / cend / crbegin / crend |
Yes | ||
| 1193 | C++11 | 20.3.1.2 [unique.ptr.dltr] | default_delete cannot be instantiated with incomplete types |
Yes | ||
| 1194 | C++11 | 23.6 [container.adaptors] | Unintended queue constructor |
Yes | ||
| 1195 | C++11 | 16 [library] | "Diagnostic required" wording is insufficient to prevent UB | Yes | ||
| 1196 | Resolved | 23.6.4.2 [priqueue.cons] | move semantics undefined for priority_queue | Yes | ||
| 1197 | C++11 | 23.2.8 [unord.req] | Can unordered containers have bucket_count() == 0? |
Yes | ||
| 1198 | C++11 | 23.6 [container.adaptors] | Container adaptor swap: member or non-member? | Yes | ||
| 1199 | C++11 | 23.6 [container.adaptors] | Missing extended copy constructor in container adaptors | Yes | ||
| 1200 | NAD | 27.2.3 [char.traits.typedefs] | "surprising" char_traits<T>::int_type requirements |
Yes | ||
| 1201 | Resolved | 22.4.5 [tuple.creation] | Do we always want to unwrap ref-wrappers in make_tuple |
Yes | ||
| 1202 | NAD | 21.3.4 [meta.help] | integral_constant needs a spring clean |
Yes | ||
| 1203 | C++20 | 31.7.6.6 [ostream.rvalue] | More useful rvalue stream insertion | Yes | 2 | |
| 1204 | C++11 | 16.4.5.9 [res.on.arguments] | Global permission to move | Yes | ||
| 1205 | C++11 | 26 [algorithms] | Some algorithms could more clearly document their handling of empty ranges | Yes | ||
| 1206 | C++11 | 26.7.2 [alg.move] | Incorrect requires for move_backward and copy_backward |
Yes | ||
| 1207 | C++11 | 23.3.11.5 [list.ops] | Underspecified std::list operations? |
Yes | ||
| 1208 | C++11 | 29.6.2.2 [valarray.cons] | valarray initializer_list constructor has incorrect effects |
Yes | ||
| 1209 | C++11 | 28.6.9.2 [re.results.const] | match_results should be moveable |
Yes | ||
| 1210 | Resolved | 24.3 [iterator.requirements] | Iterator reachability should not require a container | Yes | ||
| 1211 | Resolved | 24.5.4.2 [move.iterator] | Move iterators should be restricted as input iterators | Yes | ||
| 1212 | Resolved | 24.3 [iterator.requirements] | result of post-increment/decrement operator | Yes | ||
| 1213 | Open | 24.3 [iterator.requirements] | Meaning of valid and singular iterator underspecified | No | 4 | |
| 1214 | C++14 | 23.2.7 [associative.reqmts] | Insufficient/inconsistent key immutability requirements for associative containers | Yes | ||
| 1215 | C++11 | 23.3.11.5 [list.ops] | list::merge with unequal allocators |
Yes | ||
| 1216 | C++11 | 17.9.8 [except.nested] | LWG 1066 Incomplete? | Yes | ||
| 1217 | NAD | 29.4 [complex.numbers] | Quaternion support | Yes | ||
| 1218 | C++11 | 32.6.4 [thread.mutex.requirements] | mutex destructor synchronization | Yes | ||
| 1219 | Dup | 32.6.5.4.3 [thread.lock.unique.locking] | unique_lock::lock and resource_deadlock_would_occur | Yes | 1159 | |
| 1220 | C++11 | 32.7 [thread.condition] | What does condition_variable wait on? |
Yes | ||
| 1221 | C++11 | 32.7.4 [thread.condition.condvar] | condition_variable wording |
Yes | ||
| 1222 | C++11 | 32.7 [thread.condition] | condition_variable incorrect effects for exception safety | Yes | ||
| 1223 | NAD | 32.7.5 [thread.condition.condvarany] | condition_variable_any lock matching? | Yes | ||
| 1224 | NAD | 32.7.5 [thread.condition.condvarany] | condition_variable_any support for recursive mutexes? | Yes | ||
| 1225 | Resolved | 99 [func.ret] | C++0x result_of issue |
Yes | ||
| 1226 | Resolved | 32.10.3 [futures.errors] | Incomplete changes of #890 | Yes | ||
| 1227 | C++11 | 22.9.2 [template.bitset] | <bitset> synopsis overspecified |
Yes | ||
| 1228 | NAD | 21.3.6.4 [meta.unary.prop] | User-specialized nothrow type traits | Yes | ||
| 1229 | Resolved | 19.5.4.3 [syserr.errcode.modifiers] | error_code operator= typo |
Yes | ||
| 1230 | Dup | 22.10.16 [func.memfn] | mem_fn and variadic templates |
Yes | 920 | |
| 1231 | C++11 | 20.3.2.3.6 [util.smartptr.weak.obs] | weak_ptr comparisons incompletely resolved |
Yes | ||
| 1232 | NAD Editorial | 16 [library] | Still swap's with rvalue-references |
Yes | ||
| 1233 | NAD Editorial | 20.2 [memory] | Missing unique_ptr signatures in synopsis |
Yes | ||
| 1234 | C++11 | 23.2.4 [sequence.reqmts] | "Do the right thing" and NULL |
Yes | ||
| 1235 | NAD | 29.5.3.6 [rand.req.dist] | Issue with C++0x random number proposal | Yes | ||
| 1236 | NAD | 16 [library] | reserved identifiers in programs not using the library | Yes | ||
| 1237 | C++11 | 19.5 [syserr] | Constrained error_code/error_condition members |
Yes | ||
| 1238 | Open | 26 [algorithms] | Defining algorithms taking iterator for range | No | 3 | |
| 1239 | NAD Editorial | 21.3.6.4 [meta.unary.prop] | Defect report | Yes | ||
| 1240 | C++11 | 22.10.17.3 [func.wrap.func] | Deleted comparison functions of std::function not needed |
Yes | ||
| 1241 | C++11 | 26.7.9 [alg.unique] | unique_copy needs to require EquivalenceRelation |
Yes | ||
| 1242 | NAD | 23 [containers] | Enable SCARY iterators | Yes | ||
| 1243 | NAD | 29.6.2.7 [valarray.cassign] | Missing operator+= (initializer_list<T>) for valarray |
Yes | ||
| 1244 | Resolved | 32.10 [futures] | wait_*() in *future for synchronous functions |
Yes | ||
| 1245 | C++11 | 22.10.19 [unord.hash] | std::hash<string> & co |
Yes | ||
| 1246 | NAD | 23.3.13.3 [vector.capacity] | vector::resize() missing efficiency guarantee |
Yes | ||
| 1247 | C++11 | 99 [auto.ptr] | auto_ptr is overspecified |
Yes | ||
| 1248 | Resolved | 23.5 [unord] | Equality comparison for unordered containers | Yes | ||
| 1249 | C++11 | 31.5.4.2 [basic.ios.cons] | basic_ios default ctor |
Yes | ||
| 1250 | C++11 | 22.9.2 [template.bitset] | <bitset> still overspecified |
Yes | ||
| 1251 | NAD | 31.8.2.2 [stringbuf.cons] | move constructing basic_stringbuf |
Yes | ||
| 1252 | C++11 | 99 [depr.conversions.buffer] | wbuffer_convert::state_type inconsistency |
Yes | ||
| 1253 | C++11 | 23.2.7 [associative.reqmts] | invalidation of iterators and emplace vs. insert inconsistence in assoc. containers |
Yes | ||
| 1254 | C++11 | 23.3.14 [vector.bool] | Misleading sentence in vector<bool>::flip |
Yes | ||
| 1255 | C++11 | 22.2 [utility] | declval should be added to the library |
Yes | ||
| 1256 | C++11 | 20.3.2.3 [util.smartptr.weak] | weak_ptr comparison functions should be removed |
Yes | ||
| 1257 | C++11 | 31.5 [iostreams.base] | Header <ios> still contains a concept_map |
Yes | ||
| 1258 | Resolved | 22.10.17.3.3 [func.wrap.func.mod] | std::function Effects clause impossible to satisfy | Yes | ||
| 1259 | NAD | 23.2.4 [sequence.reqmts] | Should initializer-list constructors move elements? | Yes | ||
| 1260 | Resolved | 21.3.6.4 [meta.unary.prop] | is_constructible<int*,void*> reports true |
Yes | ||
| 1261 | C++11 | 27.4.5 [string.conversions] | Insufficent overloads for to_string / to_wstring |
Yes | ||
| 1262 | C++11 | 20.3.2.2.8 [util.smartptr.shared.cmp] | std::less<std::shared_ptr<T>> is underspecified |
Yes | ||
| 1263 | NAD | 28.6.3 [re.syn] | missing swap overloads for regex |
Yes | ||
| 1264 | C++11 | 16.4.2.5 [compliance] | quick_exit support for freestanding implementations |
Yes | ||
| 1265 | NAD | 17.14 [support.runtime] | longjmp and destructors |
Yes | ||
| 1266 | Resolved | 32.10.8 [futures.shared.future] | shared_future::get and deferred async functions |
Yes | ||
| 1267 | C++11 | 32.7.5 [thread.condition.condvarany] | Incorrect wording for condition_variable_any::wait_for |
Yes | ||
| 1268 | Resolved | 32.6 [thread.mutex] | The Mutex requirements in 30.4.1 and 30.4.2 are wrong | Yes | ||
| 1269 | Resolved | 32.10.5 [futures.state] | Associated state doesn't account for async |
Yes | ||
| 1270 | C++11 | 99 [func.ret] | result_of should be moved to <type_traits> |
Yes | ||
| 1271 | C++11 | 30.5.6 [time.duration.nonmember] | CR undefined in duration operators |
Yes | ||
| 1272 | Resolved | 32.10.6 [futures.promise] | confusing declarations of promise::set_value |
Yes | ||
| 1273 | Resolved | 32.10.7 [futures.unique.future] | future::valid should be callable on an invalid future |
Yes | ||
| 1274 | Resolved | 99 [futures.atomic_future] | atomic_future constructor |
Yes | ||
| 1275 | Resolved | 32.10 [futures] | Creating and setting futures | Yes | ||
| 1276 | C++11 | 23.3.7 [forward.list] | forwardlist missing allocator constructors |
Yes | ||
| 1277 | C++11 | 32.4.3.2 [thread.thread.id] | std::thread::id should be trivially copyable |
Yes | ||
| 1278 | C++11 | 23.3.7.5 [forward.list.modifiers] | Inconsistent return values for forward_list::insert_after |
Yes | ||
| 1279 | C++11 | 99 [depr.base] | forbid [u|bi]nary_function specialization |
Yes | ||
| 1280 | C++11 | 24.6.2.2 [istream.iterator.cons] | Initialization of stream iterators | Yes | ||
| 1281 | Resolved | 21.5.3 [ratio.ratio] | CopyConstruction and Assignment between ratios having the same normalized form | Yes | ||
| 1282 | NAD | 26 [algorithms] | A proposal to add std::split algorithm |
Yes | ||
| 1283 | Resolved | 16.4.4.2 [utility.arg.requirements] | MoveConstructible and MoveAssignable need clarification
of moved-from state |
Yes | ||
| 1284 | C++11 | 23.3.14 [vector.bool] | vector<bool> initializer_list constructor missing an allocator argument |
Yes | ||
| 1285 | C++11 | 20.2.9.3 [allocator.traits.members] | allocator_traits call to new |
Yes | ||
| 1286 | C++11 | 20.2.9.3 [allocator.traits.members] | allocator_traits::select_on_container_copy_construction type-o |
Yes | ||
| 1287 | C++11 | 22.10.17.3.2 [func.wrap.func.con] | std::function requires CopyConstructible target object |
Yes | ||
| 1288 | C++11 | 22.10.17.3.2 [func.wrap.func.con] | std::function assignment from rvalues |
Yes | ||
| 1289 | NAD | 22.2 [utility] | Generic casting requirements for smart pointers | Yes | ||
| 1290 | Resolved | 22.10 [function.objects] | Don't require [u|bi]nary_function inheritance |
Yes | ||
| 1291 | Resolved | 32.10.6 [futures.promise] | Exceptions thrown during promise::set_value |
Yes | ||
| 1292 | C++11 | 22.10.17.3.2 [func.wrap.func.con] | std::function should support all callable types |
Yes | ||
| 1293 | Resolved | 20.3.1.4 [unique.ptr.runtime] | unique_ptr<T[], D> needs to get rid of unspecified-pointer-type |
Yes | ||
| 1294 | C++11 | 22.10.4 [func.require] | Difference between callable wrapper and forwarding call wrapper unclear | Yes | ||
| 1295 | C++11 | 22.10.4 [func.require] | Contradictory call wrapper requirements | Yes | ||
| 1296 | NAD | 23.4.3 [map] | map and multimap value_compare overspecified |
Yes | ||
| 1297 | Resolved | 20.3.1.6 [unique.ptr.special] | unique_ptr's relational operator functions should induce a total order |
Yes | ||
| 1298 | C++11 | 28.3.2 [locale.syn] | Missing specialization of ctype_byname<char> |
Yes | ||
| 1299 | C++11 | 31.7.8 [ext.manip] | Confusing typo in specification for get_time |
Yes | ||
| 1300 | Resolved | 32.10.6 [futures.promise] | Circular definition of promise::swap |
Yes | ||
| 1301 | NAD Editorial | 23.2.4 [sequence.reqmts] | clear() and assignment |
Yes | ||
| 1302 | NAD | 23.2.7 [associative.reqmts] | different emplace semantics for sequence and associated containers |
Yes | ||
| 1303 | C++11 | 20.3.1.3 [unique.ptr.single] | shared_ptr, unique_ptr, and rvalue references v2 |
Yes | ||
| 1304 | Resolved | 32.10.8 [futures.shared.future] | Missing preconditions for shared_future |
Yes | ||
| 1305 | Resolved | 99 [futures.atomic_future] | preconditions for atomic_future |
Yes | ||
| 1306 | C++11 | 23.3.3 [array] | pointer and const_pointer for <array> |
Yes | ||
| 1307 | Resolved | 17.9.7 [propagation] | exception_ptr and allocator pointers don't understand != |
Yes | ||
| 1308 | NAD | 26.8.9 [alg.min.max] | Concerns about initializer_list overloads of min,
max, and minmax |
Yes | ||
| 1309 | C++11 | 16.4.4.2 [utility.arg.requirements] | Missing expressions for Move/CopyConstructible |
Yes | ||
| 1310 | C++11 | 23.3.7.6 [forward.list.ops] | forward_list splice_after from lvalues |
Yes | ||
| 1311 | Resolved | 24.3.5.5 [forward.iterators] | multi-pass property of Forward Iterator underspecified | Yes | ||
| 1312 | C++11 | 23.3.13.4 [vector.data] | vector::data no longer returns a raw pointer |
Yes | ||
| 1313 | NAD | 29.5.8.1 [rand.util.seedseq] | Seed sequence's param function not useful for pure output iterator | Yes | ||
| 1314 | NAD | 17.2 [support.types] | NULL and nullptr |
Yes | ||
| 1315 | NAD Editorial | 32.10.9 [futures.async] | return type of async |
Yes | ||
| 1316 | C++11 | 20.6 [allocator.adaptor] | scoped_allocator_adaptor operator== has no definition |
Yes | ||
| 1317 | NAD | 22.10.19 [unord.hash] | make_hash | Yes | ||
| 1318 | NAD | 20.2.9.2 [allocator.traits.types] | N2982 removes previous allocator capabilities | Yes | 1375 | |
| 1319 | C++11 | 23.2.2 [container.requirements.general] | Containers should require an iterator that is at least a Forward Iterator | Yes | ||
| 1320 | NAD | 24.2 [iterator.synopsis] | Header for iter_swap |
Yes | ||
| 1321 | Resolved | 20.6.4 [allocator.adaptor.members] | scoped_allocator_adaptor construct and destroy don't
use allocator_traits |
Yes | ||
| 1322 | Resolved | 16.4.4.2 [utility.arg.requirements] | Explicit CopyConstructible requirements are insufficient |
Yes | ||
| 1323 | C++11 | 27.4.3.7.6 [string.replace] | basic_string::replace should use const_iterator |
Yes | ||
| 1324 | Resolved | 22.3.2 [pairs.pair] | Still too many implicit conversions for pair and tuple |
Yes | ||
| 1325 | C++11 | 22.9.2.2 [bitset.cons] | bitset |
Yes | ||
| 1326 | Resolved | 22.3.2 [pairs.pair] | Missing/wrong preconditions for pair and tuple functions |
Yes | ||
| 1327 | Resolved | 29.7 [c.math] | templates defined in <cmath> replacing C macros with the same name |
Yes | ||
| 1328 | Resolved | 31.7.5.2.4 [istream.sentry] | istream extractors not setting failbit if eofbit is already set |
Yes | ||
| 1329 | Resolved | 23.2.3 [container.requirements.dataraces] | Data races on vector<bool> |
Yes | ||
| 1330 | NAD | 23.2 [container.requirements] | Move container requirements into requirements tables | Yes | ||
| 1331 | NAD | 16 [library] | incorporate move special member functions into library | Yes | ||
| 1332 | C++11 | 16.4.4.5 [hash.requirements] | Let Hash objects throw! | Yes | ||
| 1333 | C++11 | 22.10.17.3.5 [func.wrap.func.inv] | Missing forwarding during std::function invocation |
Yes | ||
| 1334 | C++11 | 24.5.2.2.2 [back.insert.iter.ops] | Insert iterators are broken for some proxy containers compared to C++03 | Yes | ||
| 1335 | C++11 | 22.4.9 [tuple.rel] | Insufficient requirements for tuple::operator<() |
Yes | ||
| 1337 | C++11 | 28.6.6 [re.traits] | Swapped arguments in regex_traits::isctype |
Yes | ||
| 1338 | C++11 | 26.6.15 [alg.search] | LWG 1205 incorrectly applied | Yes | ||
| 1339 | C++11 | 26.11.7 [uninitialized.fill] | uninitialized_fill_n should return the end of its range |
Yes | ||
| 1340 | C++11 | 23.3.7.5 [forward.list.modifiers] | Why does forward_list::resize take the object to be copied by value? |
Yes | ||
| 1344 | Resolved | 16 [library] | Replace throw() with noexcept |
Yes | 1351 | |
| 1345 | Resolved | 16 [library] | Library classes should have noexcept move operations |
Yes | ||
| 1346 | Resolved | 16 [library] | Apply noexcept where library specification does not permit exceptions |
Yes | 1352 | |
| 1347 | Resolved | 16 [library] | Apply noexcept judiciously throughout the library |
Yes | ||
| 1348 | NAD | 16 [library] | Exception safety of unspecified types | Yes | ||
| 1349 | C++11 | 16 [library] | swap should not throw |
Yes | ||
| 1350 | Dup | 16 [library] | Implicit contructors accidentally made some library types move-only | Yes | 1421 | |
| 1351 | Dup | 16 [library] | Replace dynamic exception specifications with noexcept |
Yes | 1344 | |
| 1352 | Dup | 16 [library] | Apply noexcept where library specification says "Throws: Nothing" |
Yes | 1346 | |
| 1353 | Resolved | 16 [library] | Clarify the state of a moved-from object | Yes | ||
| 1354 | C++11 | 3.16 [defns.deadlock] | The definition of deadlock excludes cases involving a single thread | Yes | ||
| 1355 | Resolved | 99 [defns.move.assign.op] | The definition of move-assignment operator is redundant | Yes | ||
| 1356 | Resolved | 99 [defns.move.ctor] | The definition of move-constructor is redundant | Yes | ||
| 1357 | Resolved | 16.3.3.3.3 [bitmask.types] | Library bitmask types to not satisfy the bimask type requirements | Yes | ||
| 1358 | NAD | 16.4.2.5 [compliance] | Add <chrono> and <ratio> to
freestanding implementations |
Yes | ||
| 1359 | NAD | 16.4.2.5 [compliance] | Add <tuple> and <utility> to freestanding implementations |
Yes | ||
| 1360 | C++11 | 16.4.2.5 [compliance] | Add <atomic> to free-standing implementations |
Yes | ||
| 1361 | NAD | 16.4.3 [using] | Does use of std::size_t in a header imply that typedef name is available to users? |
Yes | ||
| 1362 | C++11 | 16.4.5.9 [res.on.arguments] | Description of binding to rvalue-references should use the new 'xvalue' vocabulary | Yes | ||
| 1363 | C++11 | 17.2 [support.types] | offsetof should be marked noexcept |
Yes | ||
| 1364 | Resolved | 17.9.7 [propagation] | It is not clear how exception_ptr is synchronized |
Yes | ||
| 1365 | Resolved | 17.6.4 [alloc.errors] | Thread-safety of handler functions | Yes | ||
| 1366 | Resolved | 17.6.3.5 [new.delete.dataraces] | New-handler and data races | Yes | ||
| 1367 | C++11 | 99 [exception.unexpected] | Deprecate library support for checking dynamic exception specifications | Yes | ||
| 1368 | C++11 | 99 [depr.uncaught] | Thread safety of std::uncaught_exception() |
Yes | ||
| 1369 | NAD | 17.9.7 [propagation] | rethrow_exception may introduce data races |
Yes | ||
| 1370 | C++11 | 17.9.8 [except.nested] | throw_with_nested should not use perfect forwarding |
Yes | ||
| 1371 | NAD | 19 [diagnostics] | Standard exceptions require stronger no-throw guarantees | Yes | ||
| 1372 | C++11 | 19.5.3.5 [syserr.errcat.objects] | Adopt recommended practice for standard error categories | Yes | ||
| 1373 | NAD | 22.2 [utility] | Customizable traits should have their own headers | Yes | ||
| 1374 | NAD | 16.4.4.2 [utility.arg.requirements] | Clarify moved-from objects are "toxic" | Yes | ||
| 1375 | Dup | 16.4.4.6 [allocator.requirements] | reference_type should not have been removed from the
allocator requirements |
Yes | 1318 | |
| 1376 | NAD | 16.4.4.6 [allocator.requirements] | Allocator interface is not backward compatible | Yes | ||
| 1377 | Resolved | 22.2 [utility] | The revised forward is not compatible with access-control |
Yes | ||
| 1378 | Resolved | 22.3 [pairs] | pair and tuple have too many conversions |
Yes | ||
| 1379 | Resolved | 22.3.2 [pairs.pair] | pair copy-assignment not consistent for references |
Yes | ||
| 1380 | Resolved | 22.3 [pairs] | pair and tuple of references need to better specify move-semantics |
Yes | ||
| 1381 | C++11 | 99 [pair.range] | Replace pair's range support by proper range facility |
Yes | ||
| 1382 | Resolved | 22.3 [pairs] | pair and tuple constructors should forward arguments |
Yes | ||
| 1383 | Resolved | 22.3 [pairs] | Inconsistent defaulted move/copy members in pair and tuple |
Yes | ||
| 1384 | C++11 | 22.4.5 [tuple.creation] | Function pack_arguments is poorly named |
Yes | ||
| 1385 | C++11 | 22.4.5 [tuple.creation] | tuple_cat should be a single variadic signature |
Yes | ||
| 1386 | C++11 | 22.4.5 [tuple.creation] | pack_arguments overly complex |
Yes | ||
| 1387 | C++11 | 99 [tuple.range] | Range support by tuple should be removed |
Yes | ||
| 1388 | C++11 | 21.5.3 [ratio.ratio] | LWG 1281 incorrectly accepted | Yes | ||
| 1389 | Resolved | 21.5.4 [ratio.arithmetic] | Compile-time rational arithmetic and overflow | Yes | ||
| 1390 | Resolved | 21 [meta] | Limit speculative compilation for constructible/convertible traits | Yes | ||
| 1391 | Resolved | 21 [meta] | constructible/convertible traits and access control | Yes | ||
| 1392 | Resolved | 21.3.6 [meta.unary] | result_of should support pointer-to-data-member |
Yes | ||
| 1393 | Resolved | 21.3.6.4 [meta.unary.prop] | Trivial traits imply noexcept |
Yes | ||
| 1394 | Resolved | 21.3.6.4 [meta.unary.prop] | is_constructible reports false positives |
Yes | ||
| 1395 | NAD Editorial | 21.3.8 [meta.rel] | Inconsistent reference links should be unified | Yes | ||
| 1396 | NAD | 28.6.7 [re.regex] | regex should support allocators |
Yes | 1451 | |
| 1397 | Resolved | 22.10 [function.objects] | Deprecate '98 binders | Yes | ||
| 1398 | NAD | 22.10 [function.objects] | Users should be able to specialize functors without depending on whole <functional> header |
Yes | ||
| 1399 | C++11 | 22.10.17.3 [func.wrap.func] | function does not need an explicit default constructor |
Yes | ||
| 1400 | C++11 | 22.10.17.3.2 [func.wrap.func.con] | FCD function does not need an explicit default constructor |
Yes | ||
| 1401 | C++11 | 20.2 [memory] | Provide support for unique_ptr<T> == nullptr |
Yes | ||
| 1402 | C++11 | 20.2 [memory] | nullptr constructors for smart pointers should be constexpr |
Yes | ||
| 1403 | C++11 | 20.2.7 [allocator.tag] | Inconsistent definitions for allocator_arg |
Yes | ||
| 1404 | C++11 | 20.2.3 [pointer.traits] | pointer_traits should have a size_type member |
Yes | ||
| 1405 | Resolved | 20.6 [allocator.adaptor] | Move scoped_allocator_adaptor into separate header |
Yes | ||
| 1406 | NAD | 20.3.2.2 [util.smartptr.shared] | Support hashing smart-pointers based on owner | Yes | ||
| 1407 | Resolved | 20.3.2.2.2 [util.smartptr.shared.const] | Synch shared_ptr constructors taking movable types |
Yes | ||
| 1408 | C++11 | 99 [util.dynamic.safety] | Allow recycling of pointers after undeclare_no_pointers |
Yes | ||
| 1409 | Resolved | 99 [time.clock.monotonic] | Specify whether monotonic_clock is a distinct type or a typedef |
Yes | ||
| 1410 | Resolved | 99 [time.clock.monotonic] | Add a feature-detect macro for monotonic_clock |
Yes | 1411 | |
| 1411 | Dup | 99 [time.clock.monotonic] | Add a compile-time flag to detect monotonic_clock |
Yes | 1410 | |
| 1412 | Resolved | 99 [time.clock.monotonic] | Make monotonic clocks mandatory | Yes | ||
| 1413 | NAD | 30.7.8 [time.clock.hires] | Specify whether high_resolution_clock is a distinct type or a typedef |
Yes | ||
| 1414 | C++11 | 27.2.4.4 [char.traits.specializations.char16.t] | Fixing remaining dead links to POS_T and OFF_T |
Yes | 1444 | |
| 1415 | NAD Editorial | 23.2.2 [container.requirements.general] | Iterator stability bans the short-string optimization | Yes | ||
| 1416 | C++11 | 23.2 [container.requirements] | forward_list::erase_after should not be allowed to throw |
Yes | ||
| 1417 | C++11 | 23.3.3.5 [array.zero] | front/back on a zero-sized array should be undefined |
Yes | ||
| 1418 | C++11 | 23.3.5.3 [deque.capacity] | Effects of resize(size()) on a deque |
Yes | ||
| 1419 | NAD Editorial | 23.3.7 [forward.list] | forward_list::erase_after should return an iterator |
Yes | ||
| 1420 | C++11 | 23.3.11.3 [list.capacity] | Effects of resize(size()) on a list |
Yes | ||
| 1421 | Resolved | 23.6 [container.adaptors] | Accidental move-only library types due to new core language rules | Yes | 1350 | |
| 1422 | Open | 23.3.14 [vector.bool] | vector<bool> iterators are not random access |
No | 3 | |
| 1423 | C++11 | 23.4.3 [map] | map constructor accepting an allocator as single parameter should be explicit |
Yes | ||
| 1424 | C++11 | 23.4.4 [multimap] | multimap constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1425 | C++11 | 23.4.6 [set] | set constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1426 | C++11 | 23.4.7 [multiset] | multiset constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1427 | C++11 | 23.5.3 [unord.map] | unordered_map constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1428 | C++11 | 23.5.4 [unord.multimap] | unordered_multimap constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1429 | C++11 | 23.5.6 [unord.set] | unordered_set constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1430 | C++11 | 23.5.7 [unord.multiset] | unordered_multiset constructor accepting an allocator as a single parameter should be explicit |
Yes | ||
| 1431 | C++11 | 26.6.14 [alg.is.permutation] | is_permutation must be more restrictive |
Yes | ||
| 1432 | C++11 | 26.7.13 [alg.random.shuffle] | random_shuffle signatures are inconsistent |
Yes | 1433 | |
| 1433 | Dup | 26.7.13 [alg.random.shuffle] | random_shuffle and shuffle should have consistent signatures |
Yes | 1432 | |
| 1434 | NAD Editorial | 26.8.9 [alg.min.max] | For min/max functions replace variadic arguments by initializer_list argument |
Yes | ||
| 1435 | C++11 | 29.4.7 [complex.value.ops] | Unclear returns specifications for C99 complex number functions | Yes | ||
| 1436 | C++11 | 29.5.4 [rand.eng] | Random number engine constructor concerns | Yes | ||
| 1437 | C++11 | 29.5.4.3 [rand.eng.mers] | Mersenne twister meaningless for word sizes less than two | Yes | ||
| 1438 | C++11 | 29.5.5.2 [rand.adapt.disc] | No definition for base() |
Yes | ||
| 1439 | C++11 | 29.5.9.6.2 [rand.dist.samp.pconst] | Return from densities() functions? |
Yes | ||
| 1440 | C++11 | 29.5.9.6.3 [rand.dist.samp.plinear] | Incorrect specification for piecewise_linear_distribution |
Yes | ||
| 1441 | C++11 | 29.7 [c.math] | Floating-point test functions are incorrectly specified | Yes | ||
| 1442 | NAD Editorial | 32 [thread] | "happens-before" should be "synchronizes-with" | Yes | 1443 | |
| 1443 | Dup | 32 [thread] | Imposed happens-before edges are not made transitive | Yes | 1442 | |
| 1444 | Dup | 31.5.3.3 [fpos.operations] | OFF_T is not defined |
Yes | 1414 | |
| 1445 | Resolved | 31.7 [iostream.format] | Several iostreams member functions incorrectly specified | Yes | ||
| 1446 | NAD | 31.7 [iostream.format] | Move and swap for I/O streams | Yes | ||
| 1447 | Resolved | 31.7 [iostream.format] | Request to resolve issue LWG 1328 | Yes | ||
| 1448 | C++11 | 31.8.2.4 [stringbuf.members] | Concerns about basic_stringbuf::str(basic_string) postconditions |
Yes | ||
| 1449 | C++11 | 31.8.3 [istringstream] | Incomplete specification of header <cinttypes> |
Yes | ||
| 1450 | C++14 | 28.6.4.3 [re.matchflag] | Contradiction in regex_constants |
Yes | 3 | |
| 1451 | Dup | 28.6.7 [re.regex] | regex should support allocators |
Yes | 1396 | |
| 1452 | NAD | 28.6.9.5 [re.results.acc] | "target sequence" is not defined | Yes | ||
| 1453 | Resolved | 28.6.9.5 [re.results.acc] | Default constructed match_results behavior for certain operations |
Yes | ||
| 1454 | Dup | 32.5 [atomics] | Ensure C compatibility for atomics | Yes | 1455 | |
| 1455 | Resolved | 32.5 [atomics] | C language compatibility for atomics | Yes | 1454 | |
| 1456 | NAD | 32.5 [atomics] | Missing fixed-size atomic_ typedefs |
Yes | ||
| 1457 | Resolved | 32.5.2 [atomics.syn] | Splitting lock-free properties | Yes | ||
| 1458 | Dup | 32.5.4 [atomics.order] | Overlapping evaluations are allowed | Yes | 1459 | |
| 1459 | LEWG | 32.5.4 [atomics.order] | Overlapping evaluations are allowed | No | 1458 | |
| 1460 | Resolved | 32.5.5 [atomics.lockfree] | Missing lock-free property for type bool should be added |
Yes | ||
| 1461 | NAD | 32.5 [atomics] | Rename all ATOMIC_* macros as STD_ATOMIC_* |
Yes | ||
| 1462 | Resolved | 99 [atomics.types.integral] | Ambiguous value assignment to atomic_bool |
Yes | 1463 | |
| 1463 | Dup | 99 [atomics.types.integral] | Inconsistent value assignment for atomic_bool |
Yes | 1462 | |
| 1464 | Resolved | 99 [atomics.types.integral] | Underspecified typedefs for atomic integral types | Yes | ||
| 1465 | Resolved | 99 [atomics.types.address] | Missing arithmetic operators for atomic_address |
Yes | ||
| 1466 | Resolved | 99 [atomics.types.address] | Silent const breakage by compare_exchange_* member functions |
Yes | ||
| 1467 | Resolved | 99 [atomics.types.address] | Deriving atomic<T*> from atomic_address breaks type safety |
Yes | ||
| 1468 | Resolved | 99 [atomics.types.address] | atomic_address::compare_exchange_* member functions should match atomic_compare_exchange_* free functions |
Yes | ||
| 1469 | Resolved | 32.5.8 [atomics.types.generic] | atomic<T*> inheritance from atomic_address breaks type safety |
Yes | ||
| 1470 | Dup | 32.5.8.2 [atomics.types.operations] | "Same-ness" curiosities | Yes | 1474 | |
| 1471 | NAD Editorial | 32.5.8.2 [atomics.types.operations] | Default constructor of atomics needs specification | Yes | ||
| 1472 | NAD Editorial | 32.5.8.2 [atomics.types.operations] | Incorrect semantics of atomic_init |
Yes | ||
| 1473 | NAD | 32.5.8.2 [atomics.types.operations] | Incomplete memory order specifications | Yes | ||
| 1474 | C++11 | 32.5.8.2 [atomics.types.operations] | weak compare-and-exchange confusion | Yes | 1470, 1475, 1476, 1477 | |
| 1475 | Dup | 32.5.8.2 [atomics.types.operations] | weak compare-and-exchange confusion II | Yes | 1474 | |
| 1476 | Dup | 32.5.8.2 [atomics.types.operations] | Meaningless specification of spurious failure | Yes | 1474 | |
| 1477 | Dup | 32.5.8.2 [atomics.types.operations] | weak compare-and-exchange confusion III | Yes | 1474 | |
| 1478 | C++11 | 32.5.8.2 [atomics.types.operations] | Clarify race conditions in atomics initialization | Yes | ||
| 1479 | C++11 | 32.5.11 [atomics.fences] | Fence functions should be extern "C" |
Yes | ||
| 1480 | C++11 | 32.5.11 [atomics.fences] | Atomic fences don't have synchronizes with relation | Yes | ||
| 1481 | Resolved | 32.2 [thread.req] | Missing Lockable requirements | Yes | ||
| 1482 | Resolved | 32.2.4 [thread.req.timing] | Timeout operations are under-specified | Yes | ||
| 1483 | NAD Editorial | 32.4 [thread.threads] | __STDCPP_THREADS spelling |
Yes | ||
| 1484 | LEWG | 32.4.3 [thread.thread.class] | Need a way to join a thread with a timeout | No | ||
| 1485 | NAD | 32.4.3.2 [thread.thread.id] | Unclear thread::id specification |
Yes | ||
| 1486 | NAD | 32.4.5 [thread.thread.this] | Value of this_thread::get_id() underspecified for detached thread |
Yes | ||
| 1487 | C++11 | 32.4.5 [thread.thread.this] | Clock related operations exception specifications conflict | Yes | ||
| 1488 | LEWG | 32.6 [thread.mutex] | Improve interoperability between the C++0x and C1x threads APIs | No | ||
| 1489 | NAD Editorial | 32.6 [thread.mutex] | unlock functions and unlock mutex requirements are inconsistent |
Yes | ||
| 1490 | Resolved | 32.6.4 [thread.mutex.requirements] | Mutex requirements too stringent | Yes | ||
| 1491 | Resolved | 32.6.4 [thread.mutex.requirements] | try_lock does not guarantee forward progress |
Yes | ||
| 1492 | Resolved | 32.6.4 [thread.mutex.requirements] | Mutex requirements should not be bound to threads | Yes | ||
| 1493 | LEWG | 32.6.4 [thread.mutex.requirements] | Add mutex, recursive_mutex, is_locked function |
No | ||
| 1494 | C++11 | 32.6.7.2 [thread.once.callonce] | Term "are serialized" not defined | Yes | ||
| 1495 | NAD Editorial | 32.7 [thread.condition] | Condition variable wait_for return value insufficient |
Yes | ||
| 1496 | NAD Editorial | 32.7.4 [thread.condition.condvar] | condition_variable not implementable |
Yes | ||
| 1497 | C++11 | 32.7 [thread.condition] | lock() postcondition can not be generally achieved |
Yes | ||
| 1498 | Resolved | 32.7 [thread.condition] | Unclear specification for [thread.condition] | Yes | ||
| 1499 | NAD | 32.7 [thread.condition] | Condition variables preclude wakeup optimization | Yes | ||
| 1500 | NAD Editorial | 32.7.5 [thread.condition.condvarany] | Consider removal of native_handle() |
Yes | ||
| 1501 | Resolved | 32.10 [futures] | Specification for managing associated asynchronous state has problems | Yes | ||
| 1502 | Resolved | 32.10.5 [futures.state] | Specification of [futures.state] unclear | Yes | ||
| 1503 | NAD Editorial | 32.10.5 [futures.state] | "associated asynchronous state" must go | Yes | ||
| 1504 | Resolved | 32.10.6 [futures.promise] | Term "are serialized" is not defined | Yes | ||
| 1505 | Resolved | 32.10.6 [futures.promise] | Synchronization between promise::set_value and future::get |
Yes | ||
| 1506 | NAD Editorial | 32.10.6 [futures.promise] | set_exception with a null pointer |
Yes | ||
| 1507 | Resolved | 32.10.6 [futures.promise] | promise::XXX_at_thread_exit functions have no
synchronization requirements |
Yes | ||
| 1508 | Resolved | 32.10.10 [futures.task] | Rename packaged_task::operator bool() |
Yes | ||
| 1509 | NAD Editorial | 99 [futures.atomic_future] | No restriction on calling future::get more than once |
Yes | ||
| 1510 | NAD Editorial | 99 [futures.atomic_future] | Should be undefined behaviour to call atomic_future operations unless valid() |
Yes | ||
| 1511 | NAD Editorial | 99 [futures.atomic_future] | Synchronize the move-constructor for atomic_future |
Yes | ||
| 1512 | NAD Editorial | 32.10.9 [futures.async] | Conflict in specification: block or join? | Yes | ||
| 1513 | Resolved | 32.10 [futures] | 'launch' enum too restrictive | Yes | ||
| 1514 | C++11 | 32.10.10.2 [futures.task.members] | packaged_task constructors need review |
Yes | ||
| 1515 | Resolved | 32.10.10.2 [futures.task.members] | packaged_task::make_ready_at_thread_exit has no synchronization requirements |
Yes | ||
| 1516 | C++11 | 99 [depr.auto.ptr] | No specification for which header contains auto_ptr |
Yes | ||
| 1517 | C++11 | 20.3.1.2.2 [unique.ptr.dltr.dflt] | default_delete's default constructor should be trivial | Yes | ||
| 1518 | C++11 | 32.10 [futures] | Waiting for deferred functions | Yes | ||
| 1519 | C++11 | 23.5.3 [unord.map] | bucketsize() const only for unordered set | Yes | ||
| 1520 | C++11 | 22.10.4 [func.require] | INVOKE on member data pointer with too many arguments |
Yes | ||
| 1521 | Open | 23.2.2 [container.requirements.general] | Requirements on internal pointer representations in containers | Yes | 3 | |
| 1522 | C++11 | 29.4.10 [cmplx.over] | conj specification is now nonsense |
Yes | ||
| 1523 | Resolved | 32.5 [atomics] | noexcept for Clause 29 |
Yes | ||
| 1524 | C++11 | 17.6.3.5 [new.delete.dataraces] | Allocation functions are missing happens-before requirements and guarantees | Yes | ||
| 1525 | C++11 | 23.3.13.3 [vector.capacity] | Effects of resize(size()) on a vector |
Yes | ||
| 1526 | Resolved | 16.4.6.10 [res.on.data.races] | C++ should not impose thread safety requirements on C99 library implementations | Yes | 3 | |
| 2000 | C++11 | 32.10.10.3 [futures.task.nonmembers] | Missing definition of packaged_task specialization of uses_allocator |
Yes | ||
| 2001 | C++11 | 28.6.7.3 [re.regex.assign] | Class template basic_regex uses non existent string_type |
Yes | ||
| 2002 | Resolved | 28.6.9.9 [re.results.nonmember] | Class template match_results does not specify the semantics of operator== |
Yes | ||
| 2003 | C++14 | 27.4.3.2 [string.require] | String exception inconsistency in erase. | Yes | 0 | |
| 2004 | C++11 | 30.5.6 [time.duration.nonmember] | duration::operator* has template parameters in funny order |
Yes | ||
| 2005 | C++14 | 23.4.3.4 [map.modifiers] | unordered_map::insert(T&&) protection should apply to map too |
Yes | ||
| 2006 | NAD | 23.2.8 [unord.req] | emplace broken for associative containers |
Yes | ||
| 2007 | C++11 | 23.4.3.3 [map.access] | Incorrect specification of return value for map<>::at() |
Yes | ||
| 2008 | C++11 | 32.10.10.2 [futures.task.members] | Conflicting Error Conditions for packaged_task::operator() |
Yes | ||
| 2009 | C++14 | 27.4.5 [string.conversions] | Reporting out-of-bound values on numeric string conversions | Yes | ||
| 2010 | C++14 | 22.10.15.2 [func.bind.isbind] | is_* traits for binding operations can't be meaningfully specialized |
Yes | ||
| 2011 | C++14 | 27.4.4.4 [string.io] | Unexpected output required of strings | Yes | ||
| 2012 | Resolved | 23.4 [associative] | Associative maps should insert pair, not tuple |
Yes | ||
| 2013 | C++14 | 16.4.6.7 [constexpr.functions] | Do library implementers have the freedom to add constexpr? |
Yes | ||
| 2014 | C++11 | 16.4.5.3.3 [macro.names] | More restrictions on macro names | Yes | ||
| 2015 | C++14 | 21.3.6 [meta.unary] | Incorrect pre-conditions for some type traits | Yes | ||
| 2016 | C++17 | 16.4.4.6 [allocator.requirements] | Allocators must be no-throw swappable |
Yes | 2 | |
| 2017 | C++11 | 22.10.6 [refwrap] | std::reference_wrapper makes incorrect usage of std::result_of |
Yes | ||
| 2018 | C++14 | 28.6.6 [re.traits] | [CD] regex_traits::isctype Returns clause is wrong |
Yes | ||
| 2019 | C++11 | 28.3.3.3.1 [classification] | isblank not supported by std::locale |
Yes | ||
| 2020 | C++11 | 30.5.6 [time.duration.nonmember] | Time utility arithmetic constexpr functions have invalid effects |
Yes | ||
| 2021 | C++14 | 22.10.15.4 [func.bind.bind] | Further incorrect usages of result_of |
Yes | ||
| 2022 | C++11 | 22.10.6 [refwrap] | reference_wrapper<T>::result_type is underspecified |
Yes | ||
| 2023 | Resolved | 32.6.5.2 [thread.lock.guard] | Incorrect requirements for lock_guard and unique_lock |
Yes | ||
| 2024 | Resolved | 32.5.8 [atomics.types.generic] | Inconsistent implementation requirements for atomic<integral> and atomic<T*> |
Yes | ||
| 2025 | Resolved | 32.10.10.2 [futures.task.members] | Incorrect semantics of move assignment operator of packaged_task |
Yes | ||
| 2026 | NAD | 23.5 [unord] | hash should be std qualified for unordered container |
Yes | ||
| 2027 | C++11 | 32.10.10.2 [futures.task.members] | Initialization of the stored task of a packaged_task |
Yes | ||
| 2028 | C++14 | 28.3.4.8.2 [locale.messages] | messages_base::catalog overspecified |
Yes | ||
| 2029 | C++11 | 28.6.7 [re.regex] | Missing 'noexcept' on basic_regex move-assignment operator |
Yes | ||
| 2030 | C++11 | 32.10.10 [futures.task] | packaged_task::result_type should be removed |
Yes | ||
| 2031 | C++11 | 32.10.7 [futures.unique.future] | std::future<>::share() only applies to rvalues |
Yes | ||
| 2032 | C++11 | 32.10.9 [futures.async] | Incorrect synchronization clause of async function |
Yes | ||
| 2033 | C++14 | 23.3.13.3 [vector.capacity] | Preconditions of reserve, shrink_to_fit, and resize functions |
Yes | ||
| 2034 | Resolved | 32.5.4 [atomics.order] | Initialization of atomics is misspecified so that it doesn't preserve sequential consistency | Yes | ||
| 2035 | Open | 24.3.5.4 [output.iterators] | Output iterator requirements are broken | Yes | 3 | |
| 2036 | NAD | 31.7.5.2 [istream] | istream >> char and eofbit |
Yes | ||
| 2037 | Resolved | 32.5.2 [atomics.syn] | atomic free functions incorrectly specified |
Yes | ||
| 2038 | Open | 24.3.5.4 [output.iterators] | Missing definition for incrementable iterator |
No | 3 | |
| 2039 | C++14 | 26.7.1 [alg.copy] | Issues with std::reverse and std::copy_if |
Yes | ||
| 2040 | Resolved | 21 [meta] | Missing type traits related to is_convertible |
Yes | ||
| 2041 | C++11 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Stage 2 accumulate incompatibilty | Yes | ||
| 2042 | C++11 | 23.3.7.3 [forward.list.iter] | Comparing forward_list::before_begin() to forward_list::end() |
Yes | ||
| 2043 | NAD | 31.13 [c.files] | std{in,out,err} should be usable as field names |
Yes | ||
| 2044 | C++14 | 16.4.6.8 [algorithm.stable] | No definition of "Stable" for copy algorithms | Yes | ||
| 2045 | C++14 | 23.3.7.6 [forward.list.ops] | forward_list::merge and forward_list::splice_after with unequal allocators |
Yes | ||
| 2046 | NAD | 32.10.8 [futures.shared.future] | shared_future(future<R>&&) should be allowed to throw |
Yes | ||
| 2047 | C++14 | 20.3.1.3.4 [unique.ptr.single.asgn] | Incorrect "mixed" move-assignment semantics of unique_ptr |
Yes | ||
| 2048 | C++14 | 22.10 [function.objects] | Unnecessary mem_fn overloads |
Yes | ||
| 2049 | C++14 | 21.3.6.4 [meta.unary.prop] | is_destructible is underspecified |
Yes | ||
| 2050 | C++14 | 23.5 [unord] | Unordered associative containers do not use allocator_traits to define member types |
Yes | ||
| 2051 | Resolved | 22.4.4 [tuple.tuple] | Explicit tuple constructors for more than one parameter |
Yes | 2 | |
| 2052 | Resolved | 23.2.7 [associative.reqmts] | Mixup between mapped_type and value_type for associative containers |
Yes | 2 | |
| 2053 | C++14 | 28.6.4 [re.const] | Errors in regex bitmask types |
Yes | ||
| 2054 | Resolved | 30.6 [time.point] | time_point constructors need to be constexpr |
Yes | ||
| 2055 | Resolved | 26.10 [numeric.ops] | std::move in std::accumulate and other algorithms |
Yes | 3 | |
| 2056 | C++14 | 32.10.1 [futures.overview] | future_errc enums start with value 0 (invalid value for broken_promise) |
Yes | ||
| 2057 | Resolved | 30.6.6 [time.point.nonmember] | time_point + duration semantics should be made constexpr conforming |
Yes | ||
| 2058 | C++14 | 29.6 [numarray] | valarray and begin/end |
Yes | ||
| 2059 | C++17 | 23.4.3 [map] | C++0x ambiguity problem with map::erase |
Yes | 3 | |
| 2060 | NAD Editorial | 20.3.1.4 [unique.ptr.runtime] | unique_ptr<T[]>(nullptr_t) missing noexcept |
Yes | ||
| 2061 | C++14 | 24.2 [iterator.synopsis] | make_move_iterator and arrays |
Yes | ||
| 2062 | C++17 | 22.10.17.3 [func.wrap.func] | Effect contradictions w/o no-throw guarantee of std::function swaps |
Yes | 2 | |
| 2063 | C++17 | 27.4.3 [basic.string] | Contradictory requirements for string move assignment | Yes | 3 | |
| 2064 | C++14 | 27.4.3 [basic.string] | More noexcept issues in basic_string |
Yes | ||
| 2065 | C++14 | 16.4.4.6 [allocator.requirements] | Minimal allocator interface | Yes | ||
| 2066 | Resolved | 23.3.13.3 [vector.capacity] | Missing specification of vector::resize(size_type) |
Yes | ||
| 2067 | C++14 | 32.10.10 [futures.task] | packaged_task should have deleted copy c'tor with const parameter |
Yes | ||
| 2068 | NAD | 22.3.2 [pairs.pair] | std::pair not C++03-compatible with defaulted copy c'tor |
Yes | ||
| 2069 | C++14 | 27.4.3.3 [string.cons] | Inconsistent exception spec for basic_string move constructor |
Yes | ||
| 2070 | Resolved | 20.3.2.2.7 [util.smartptr.shared.create] | allocate_shared should use allocator_traits<A>::construct |
Yes | 2 | |
| 2071 | C++14 | 29.6.2.3 [valarray.assign] | std::valarray move-assignment |
Yes | ||
| 2072 | C++17 | 99 [depr.temporary.buffer] | Unclear wording about capacity of temporary buffers | Yes | 3 | |
| 2073 | NAD | 19.2 [std.exceptions] | Library exceptions that take string arguments | Yes | ||
| 2074 | C++14 | 26.7.10 [alg.reverse] | Off by one error in std::reverse_copy |
Yes | ||
| 2075 | Resolved | 6.10.2 [intro.multithread] | Progress guarantees, lock-free property, and scheduling assumptions | Yes | ||
| 2076 | C++17 | 23.4.6.2 [set.cons] | Bad CopyConstructible requirement in set constructors |
Yes | 3 | |
| 2077 | Open | 21.3.6.4 [meta.unary.prop] | Further incomplete constraints for type traits | No | 3 | |
| 2078 | C++14 | 32.10.9 [futures.async] | Throw specification of async() incomplete |
Yes | ||
| 2079 | NAD | 29.7 [c.math] | Required pow() overloads |
Yes | 3 | |
| 2080 | C++14 | 32.6.7 [thread.once] | Specify when once_flag becomes invalid |
Yes | ||
| 2081 | C++14 | 16.4.4.6 [allocator.requirements] | Allocator requirements should include CopyConstructible |
Yes | ||
| 2082 | NAD | 26 [algorithms] | Misleading complexity requirements in <algorithm> |
Yes | ||
| 2083 | C++14 | 20.3.2.3 [util.smartptr.weak] | const-qualification on weak_ptr::owner_before |
Yes | ||
| 2084 | NAD | 27.4.3 [basic.string] | basic_string use of charT* |
Yes | ||
| 2085 | C++14 | 31.7.5.4 [istream.unformatted] | Wrong description of effect 1 of basic_istream::ignore |
Yes | ||
| 2086 | C++14 | 29.7 [c.math] | Overly generic type support for math functions | Yes | ||
| 2087 | C++14 | 31.5 [iostreams.base] | iostream_category() and noexcept |
Yes | ||
| 2088 | Resolved | 17.9.5 [exception.terminate] | std::terminate problem |
Yes | 3 | |
| 2089 | Resolved | 20.2.10.2 [allocator.members] | std::allocator::construct should use uniform initialization |
Yes | 2 | |
| 2090 | NAD | 32.6.4.2 [thread.mutex.requirements.mutex] | Minor Overconstraint in Mutex Types | Yes | ||
| 2091 | C++14 | 32.6.4.3 [thread.timedmutex.requirements] | Misplaced effect in m.try_lock_for() |
Yes | ||
| 2092 | C++14 | 32.7.5 [thread.condition.condvarany] | Vague Wording for condition_variable_any |
Yes | ||
| 2093 | C++14 | 32.7.4 [thread.condition.condvar] | Throws clause of condition_variable::wait with predicate |
Yes | ||
| 2094 | C++14 | 30.5.2 [time.duration.cons] | duration conversion overflow shouldn't participate in overload resolution |
Yes | ||
| 2095 | Resolved | 32.10.6 [futures.promise] | promise and packaged_task missing constructors needed for uses-allocator construction |
Yes | 4 | |
| 2096 | C++14 | 32.10.7 [futures.unique.future] | Incorrect constraints of future::get in regard to MoveAssignable |
Yes | ||
| 2097 | C++14 | 32.10.10.2 [futures.task.members] | packaged_task constructors should be constrained |
Yes | ||
| 2098 | C++14 | 32.10.6 [futures.promise] | Minor Inconsistency between promise::set_value and promise::set_value_at_thread_exit |
Yes | ||
| 2099 | C++14 | 17.14 [support.runtime] | Unnecessary constraints of va_start() usage |
Yes | ||
| 2100 | C++14 | 32.10.9 [futures.async] | timed waiting functions cannot timeout if launch::async policy used |
Yes | ||
| 2101 | C++17 | 21.3.9 [meta.trans] | Some transformation types can produce impossible types | Yes | 3 | |
| 2102 | C++14 | 32.10.1 [futures.overview] | Why is std::launch an implementation-defined type? |
Yes | ||
| 2103 | C++14 | 20.2.10 [default.allocator] | std::allocator_traits<std::allocator<T>>::propagate_on_container_move_assignment |
Yes | ||
| 2104 | C++14 | 32.6.5.4 [thread.lock.unique] | unique_lock move-assignment should not be noexcept |
Yes | ||
| 2105 | C++14 | 23.2.2 [container.requirements.general] | Inconsistent requirements on const_iterator's value_type |
Yes | ||
| 2106 | C++17 | 24.5.4 [move.iterators] | move_iterator wrapping iterators returning prvalues |
Yes | 3 | |
| 2107 | NAD | 24.3 [iterator.requirements] | Some iterator category should guarantee the lifetime of references | Yes | ||
| 2108 | Resolved | 16.4.4.6 [allocator.requirements] | No way to identify allocator types that always compare equal | Yes | 3 | |
| 2109 | C++14 | 19.5.7 [syserr.hash] | Incorrect requirements for hash specializations |
Yes | ||
| 2110 | C++14 | 26.7.8 [alg.remove] | remove can't swap but note says it might |
Yes | ||
| 2111 | C++17 | 17.9.5.4 [terminate] | Which unexpected/terminate handler is called from the exception handling runtime? |
Yes | 3 | |
| 2112 | C++14 | 16.4.6 [conforming] | User-defined classes that cannot be derived from | Yes | 1 | |
| 2113 | NAD | 16.4.6 [conforming] | Do library implementers have the freedom to add final to non-polymorphic components? |
Yes | ||
| 2114 | Resolved | 16.4.4.4 [nullablepointer.requirements] | Incorrect "contextually convertible to bool" requirements |
Yes | 3 | |
| 2115 | Open | 29.6.8 [template.mask.array] | Undefined behaviour for valarray assignments with mask_array index? |
No | 4 | |
| 2116 | Open | 21.3.6.4 [meta.unary.prop] | is_nothrow_constructible and destructors |
No | 3 | |
| 2117 | Open | 28.3.4.3.3.3 [facet.num.put.virtuals] | ios_base manipulators should have showgrouping/noshowgrouping |
No | 3 | |
| 2118 | Resolved | 20.3.1.4 [unique.ptr.runtime] | [CD] unique_ptr for array does not support cv qualification conversion of actual argument |
Yes | 1 | |
| 2119 | C++17 | 22.10.19 [unord.hash] | Missing hash specializations for extended integer types |
Yes | 3 | |
| 2120 | C++14 | 32.10.9 [futures.async] | What should async do if neither 'async' nor 'deferred' is set in policy? |
Yes | ||
| 2121 | NAD | 31.8.5.2 [stringstream.cons] | app for string streams |
Yes | 3 | |
| 2122 | C++14 | 23.3.11.5 [list.ops] | merge() stability for lists versus forward lists |
Yes | ||
| 2123 | C++14 | 23.3.7.6 [forward.list.ops] | merge() allocator requirements for lists versus forward lists |
Yes | ||
| 2124 | NAD | 29.5.3.2 [rand.req.seedseq] | Seed sequence over-specified | Yes | ||
| 2125 | Pending NAD Editorial | 32.6.4.3 [thread.timedmutex.requirements] | TimedMutex specification problem |
Yes | ||
| 2126 | Pending NAD Editorial | 32.6.4 [thread.mutex.requirements] | Several specification problems in regard to mutex requirements | Yes | ||
| 2127 | C++17 | 99 [depr.storage.iterator] | Move-construction with raw_storage_iterator |
Yes | 3 | |
| 2128 | C++14 | 24.2 [iterator.synopsis] | Absence of global functions cbegin/cend |
Yes | ||
| 2129 | C++17 | 16.4.5.2.1 [namespace.std] | User specializations of std::initializer_list |
Yes | 3 | |
| 2130 | C++14 | 32.5.4 [atomics.order] | Missing ordering constraints | Yes | ||
| 2131 | NAD | 31.7.5.4 [istream.unformatted] | Member function getline taking a string as parameter | Yes | ||
| 2132 | C++14 | 22.10.17.3.2 [func.wrap.func.con] | std::function ambiguity |
Yes | 2 | |
| 2133 | C++17 | 16.4.6.4 [global.functions] | Attitude to overloaded comma for iterators | Yes | 3 | |
| 2134 | Pending NAD Editorial | 32.6.4.2 [thread.mutex.requirements.mutex] | Redundant Mutex requirement? | Yes | ||
| 2135 | C++14 | 32.7.4 [thread.condition.condvar] | Unclear requirement for exceptions thrown in condition_variable::wait() |
Yes | ||
| 2136 | Open | 16.3.2 [structure] | Postconditions vs. exceptions | Yes | 3 | |
| 2137 | Open | 28.6.7.3 [re.regex.assign] | Misleadingly constrained post-condition in the presence of exceptions | Yes | 3 | |
| 2138 | C++14 | 32.5.10 [atomics.flag] | atomic_flag::clear should not accept memory_order_consume |
Yes | ||
| 2139 | C++20 | 16.4.5.2.1 [namespace.std] | What is a user-defined type? | Yes | 4 | |
| 2140 | C++14 | 32.7 [thread.condition] | Meaning of notify_all_at_thread_exit synchronization requirement? |
Yes | ||
| 2141 | C++14 | 21.3.9.7 [meta.trans.other] | common_type trait produces reference types |
Yes | ||
| 2142 | C++14 | 32.10.10.2 [futures.task.members] | packaged_task::operator() synchronization too broad? |
Yes | ||
| 2143 | C++14 | 31.5.2 [ios.base] | ios_base::xalloc should be thread-safe |
Yes | ||
| 2144 | C++14 | 17.7.7 [type.index] | Missing noexcept specification in type_index |
Yes | ||
| 2145 | C++14 | 19.5.3 [syserr.errcat] | error_category default constructor |
Yes | ||
| 2146 | Open | 16.4.4.2 [utility.arg.requirements] | Are reference types CopyConstructible/MoveConstructible/CopyAssignable/MoveAssignable/Destructible? |
No | 3 | |
| 2147 | C++14 | 16.4.4.6 [allocator.requirements] | Unclear hint type in Allocator's allocate function |
Yes | ||
| 2148 | C++14 | 22.10.19 [unord.hash] | Hashing enums should be supported directly by std::hash |
Yes | ||
| 2149 | C++14 | 22.10 [function.objects] | Concerns about 20.8/5 | Yes | ||
| 2150 | C++14 | 26.6.8 [alg.find.end] | Unclear specification of find_end |
Yes | ||
| 2151 | Resolved | 27.4.3.2 [string.require] | basic_string<>::swap semantics ignore allocators |
Yes | 3 | |
| 2152 | LEWG | 16.4.4.3 [swappable.requirements] | Instances of standard container types are not swappable | Yes | 3 | |
| 2153 | LEWG | 22.2.2 [utility.swap] | Narrowing of the non-member swap contract |
No | 2 | |
| 2154 | Resolved | 29.5.3.3 [rand.req.urng] | What exactly does compile-time complexity imply? | Yes | 4 | |
| 2155 | Resolved | 17.14 [support.runtime] | Macro __bool_true_false_are_defined should be removed |
Yes | 4 | |
| 2156 | C++17 | 23.2.8 [unord.req] | Unordered containers' reserve(n) reserves for n-1 elements |
Yes | 3 | |
| 2157 | Open | 23.3.3.5 [array.zero] | How does std::array<T,0> initialization work when T is not default-constructible? |
Yes | 3 | |
| 2158 | Open | 23.3.13.3 [vector.capacity] | Conditional copy/move in std::vector |
Yes | 3 | |
| 2159 | C++14 | 32.5.10 [atomics.flag] | atomic_flag initialization |
Yes | ||
| 2160 | C++17 | 23.3.13.3 [vector.capacity] | Unintended destruction ordering-specification of resize |
Yes | 1 | |
| 2161 | NAD | 23.4 [associative] | const equivalence of std::map |
Yes | 2 | |
| 2162 | C++14 | 16.4.4.6 [allocator.requirements] | allocator_traits::max_size missing noexcept |
Yes | ||
| 2163 | C++14 | 26.8.3 [alg.nth.element] | nth_element requires inconsistent post-conditions |
Yes | ||
| 2164 | C++20 | 23.3.13.5 [vector.modifiers] | What are the semantics of vector.emplace(vector.begin(), vector.back())? |
Yes | 2 | |
| 2165 | Resolved | 32.5.8 [atomics.types.generic] | std::atomic<X> requires X to be nothrow default constructible |
Yes | 4 | |
| 2166 | C++17 | 26.8.8 [alg.heap.operations] | Heap property underspecified? | Yes | 3 | |
| 2167 | NAD | 23.2.2 [container.requirements.general] | Copy assignment requirements of Containers | Yes | ||
| 2168 | C++17 | 29.5.9.2.2 [rand.dist.uni.real] | Inconsistent specification of uniform_real_distribution constructor |
Yes | 3 | |
| 2169 | C++14 | 20.3.1.4.5 [unique.ptr.runtime.modifiers] | Missing reset() requirements in unique_ptr specialization |
Yes | ||
| 2170 | C++17 | 16.4.4.2 [utility.arg.requirements] | Aggregates cannot be DefaultConstructible |
Yes | 2 | |
| 2171 | NAD | 16.4.4.3 [swappable.requirements] | "swappable" undefined for swapping lvalue and rvalue | Yes | ||
| 2172 | C++14 | 99 [depr.util.smartptr.shared.atomic] | Does atomic_compare_exchange_* accept v == nullptr arguments? |
Yes | ||
| 2173 | Open | 26 [algorithms] | The meaning of operator + in the description of the algorithms |
Yes | 4 | |
| 2174 | C++14 | 99 [depr.conversions.string] | wstring_convert::converted() should be noexcept |
Yes | ||
| 2175 | C++14 | 99 [depr.conversions.string] | wstring_convert and wbuffer_convert validity |
Yes | ||
| 2176 | C++14 | 99 [depr.conversions.string] | Special members for wstring_convert and wbuffer_convert |
Yes | ||
| 2177 | C++14 | 23.2.2 [container.requirements.general] | Requirements on Copy/MoveInsertable |
Yes | ||
| 2178 | Pending NAD Editorial | 16.4.4.6 [allocator.requirements] | Allocator requirement changes not mentioned Annex C |
Yes | 3 | |
| 2179 | Resolved | 20.3.2.7 [util.smartptr.enab] | enable_shared_from_this and construction from raw pointers |
Yes | 3 | |
| 2180 | C++14 | 29.5.8.1 [rand.util.seedseq] | Exceptions from std::seed_seq operations |
Yes | ||
| 2181 | C++17 | 29.5.3.2 [rand.req.seedseq] | Exceptions from seed sequence operations | Yes | 3 | |
| 2182 | C++14 | 23.2.2 [container.requirements.general] | Container::[const_]reference types are misleadingly specified |
Yes | 0 | |
| 2183 | C++20 | 28.6.9.2 [re.results.const] | Muddled allocator requirements for match_results constructors |
Yes | 3 | |
| 2184 | C++20 | 28.6.9.2 [re.results.const] | Muddled allocator requirements for match_results assignments |
Yes | 3 | |
| 2185 | C++14 | 32.10.7 [futures.unique.future] | Missing throws clause for future/shared_future::wait_for/wait_until |
Yes | ||
| 2186 | C++14 | 32.10.9 [futures.async] | Incomplete action on async/launch::deferred |
Yes | ||
| 2187 | C++14 | 23.3.14 [vector.bool] | vector<bool> is missing emplace and emplace_back member functions |
Yes | ||
| 2188 | C++14 | 24.5.1.6 [reverse.iter.elem] | Reverse iterator does not fully support targets that overload operator& |
Yes | 1 | |
| 2189 | Open | 23.2.8.2 [unord.req.except] | Throwing swap breaks unordered containers' state |
No | 3 | |
| 2190 | C++14 | 32.7 [thread.condition] | Condition variable specification | Yes | ||
| 2191 | C++23 | 28.6.9.2 [re.results.const] | Incorrect specification of match_results(match_results&&) |
Yes | 4 | |
| 2192 | C++17 | 29.7 [c.math] | Validity and return type of std::abs(0u) is unclear |
Yes | 2 | |
| 2193 | C++14 | 23 [containers] | Default constructors for standard library containers are explicit | Yes | 1 | |
| 2194 | C++14 | 23.6 [container.adaptors] | Impossible container requirements for adaptor types | Yes | ||
| 2195 | C++23 | 28.6.9 [re.results] | Missing constructors for match_results |
Yes | 3 | |
| 2196 | C++14 | 21.3.6.4 [meta.unary.prop] | Specification of is_*[copy/move]_[constructible/assignable] unclear for non-referencable types |
Yes | ||
| 2197 | C++14 | 21.3.6.4 [meta.unary.prop] | Specification of is_[un]signed unclear for non-arithmetic types |
Yes | ||
| 2198 | Open | 23.2.8 [unord.req] | max_load_factor(z) makes no strong guarantees, but bans useful behavior |
Yes | 3 | |
| 2199 | NAD | 23.2.8 [unord.req] | unordered containers are required to have an initial max load factor of 1.0 | Yes | 3 | |
| 2200 | C++14 | 23.2.3 [container.requirements.dataraces] | Data race avoidance for all containers, not only for sequences | Yes | ||
| 2201 | NAD Editorial | C.8 [diff.library] | Missing macro entries from C standard library | Yes | 2 | |
| 2202 | Deferred | 32.10.9 [futures.async] | Missing allocator support by async |
No | 4 | |
| 2203 | C++14 | 20.6.4 [allocator.adaptor.members] | scoped_allocator_adaptor uses wrong argument types for piecewise construction |
Yes | ||
| 2204 | NAD | 24.5.1.6 [reverse.iter.elem] | reverse_iterator should not require a second copy of the base iterator |
Yes | ||
| 2205 | C++14 | 28.6.10.2 [re.alg.match] | Problematic postconditions of regex_match and regex_search |
Yes | 0 | |
| 2206 | Open | 23.2.4 [sequence.reqmts] | Inaccuracy in initializer_list constructor requirements |
Yes | 3 | |
| 2207 | C++14 | 27.4.3.6 [string.access] | basic_string::at should not have a Requires clause |
Yes | ||
| 2208 | Resolved | 24.5.1 [reverse.iterators] | std::reverse_iterator should be a literal type |
Yes | 3 | |
| 2209 | C++14 | 23.3 [sequences] | assign() overspecified for sequence containers |
Yes | ||
| 2210 | C++14 | 23.3 [sequences] | Missing allocator-extended constructor for allocator-aware containers | Yes | ||
| 2211 | C++14 | 23.2.2 [container.requirements.general] | Replace ambiguous use of "Allocator" in container requirements | Yes | ||
| 2212 | C++17 | 22.2 [utility] | tuple_size for const pair request <tuple> header |
Yes | 3 | |
| 2213 | C++14 | 28.6.10.4 [re.alg.replace] | Return value of std::regex_replace |
Yes | 0 | |
| 2214 | Open | 31.5.4.2 [basic.ios.cons] | Clarify basic_ios::init call restrictions |
Yes | 4 | |
| 2215 | Open | 23.2.7 [associative.reqmts] | (unordered) associative container functors should be CopyConstructible |
Yes | 3 | |
| 2216 | New | 28.6.10.4 [re.alg.replace] | regex_replace(basic_string) allocator handling |
No | 3 | |
| 2217 | C++17 | 28.6.8.3 [re.submatch.op] | operator==(sub_match, string) slices on embedded '\0's |
Yes | 2 | |
| 2218 | C++17 | 23.2.2 [container.requirements.general] | Unclear how containers use allocator_traits::construct() |
Yes | 3 | |
| 2219 | C++17 | 22.10.4 [func.require] | INVOKE-ing a pointer to member with a reference_wrapper as the object expression |
Yes | 2 | |
| 2220 | Open | 28.6.11.2.3 [re.tokiter.comp] | Under-specification of operator== for regex_token_iterator |
Yes | 3 | |
| 2221 | C++17 | 31.7.6 [output.streams] | No formatted output operator for nullptr |
Yes | 3 | |
| 2222 | C++14 | 23.3.7.6 [forward.list.ops] | Inconsistency in description of forward_list::splice_after single-element overload |
Yes | ||
| 2223 | C++17 | 23.3.13.3 [vector.capacity] | shrink_to_fit effect on iterator validity |
Yes | 2 | |
| 2224 | C++17 | 16.4.5.10 [res.on.objects] | Ambiguous status of access to non-live objects | Yes | 2 | |
| 2225 | C++14 | 16.4.3.2 [using.headers] | Unrealistic header inclusion checks required | Yes | ||
| 2226 | NAD | 99 [depr.conversions.string] | wstring_convert methods do not take allocator instance |
Yes | ||
| 2227 | Open | 23.2.7 [associative.reqmts] | Stateful comparison objects in associative containers | No | 3 | |
| 2228 | Resolved | 20.3.1.3.4 [unique.ptr.single.asgn] | Missing SFINAE rule in unique_ptr templated assignment |
Yes | 3 | |
| 2229 | C++14 | 99 [depr.locale.stdcvt] | Standard code conversion facets underspecified | Yes | ||
| 2230 | C++17 | 23.5 [unord] | "see below" for initializer-list constructors of unordered containers | Yes | 4 | |
| 2231 | C++14 | 23.2.4 [sequence.reqmts] | DR 704 removes complexity guarantee for clear() |
Yes | ||
| 2232 | Resolved | 27.2.4 [char.traits.specializations] | [CD] The char_traits specializations should declare their length(), compare(), and
find() members constexpr |
Yes | ||
| 2233 | C++17 | 22.10.17.2 [func.wrap.badcall] | bad_function_call::what() unhelpful |
Yes | 3 | |
| 2234 | C++17 | 19.3 [assertions] | assert() should allow usage in constant expressions |
Yes | 2 | |
| 2235 | C++14 | 27.4.3.3 [string.cons] | Undefined behavior without proper requirements on basic_string constructors |
Yes | ||
| 2236 | SG1 | 32.5.2 [atomics.syn] | kill_dependency unconditionally noexcept |
No | ||
| 2237 | New | 27.5 [c.strings] | <cuchar> macros |
No | 4 | |
| 2238 | Open | 27.5 [c.strings] | Problematic iterator-pair constructor of containers | No | 3 | |
| 2239 | C++17 | 26.8.9 [alg.min.max] | min/max/minmax requirements |
Yes | 3 | |
| 2240 | Resolved | 32.7.4 [thread.condition.condvar] | Probable misuse of term "function scope" in [thread.condition] | Yes | ||
| 2241 | Resolved | 17.14 [support.runtime] | <cstdalign> and #define of alignof |
Yes | 2 | |
| 2242 | NAD | 26.7.1 [alg.copy] | [uninitialized_]copy_n() defect |
Yes | 2 | |
| 2243 | C++20 | 31.7.5.4 [istream.unformatted] | istream::putback problem |
Yes | 3 | |
| 2244 | C++17 | 31.7.5.4 [istream.unformatted] | Issue on basic_istream::seekg |
Yes | 3 | |
| 2245 | Resolved | 32.10.10.2 [futures.task.members] | packaged_task::reset() memory allocation |
Yes | 3 | |
| 2246 | C++14 | 20.3.1.3.4 [unique.ptr.single.asgn] | unique_ptr assignment effects w.r.t. deleter |
Yes | ||
| 2247 | C++14 | 21.3.6.2 [meta.unary.cat] | Type traits and std::nullptr_t |
Yes | ||
| 2248 | New | 17.3.5 [numeric.limits] | numeric_limits::is_iec559 misnamed |
No | 4 | |
| 2249 | Resolved | 31.13 [c.files] | [CD] Remove gets from <cstdio> |
Yes | ||
| 2250 | C++17 | 22.9.2.2 [bitset.cons] | Follow-up On Library Issue 2207 | Yes | 3 | |
| 2251 | NAD | 17.2 [support.types] | C++ library should define ssize_t |
Yes | 3 | |
| 2252 | C++14 | 23.3.13.5 [vector.modifiers] | Strong guarantee on vector::push_back() still broken with C++11? |
Yes | ||
| 2253 | NAD Arrays | 99 [arrays.ts::dynarray.overview] | [arrays.ts] dynarray should state which container requirements aren't met |
Yes | 0 | |
| 2254 | NAD Arrays | 99 [arrays.ts::container.requirements.general] | [arrays.ts] Is dynarray an allocator-aware container? |
Yes | 3 | |
| 2255 | NAD Arrays | 99 [arrays.ts::dynarray.cons] | [arrays.ts] dynarray constructor ambiguity |
Yes | 0 | |
| 2256 | NAD | 23.3.13.5 [vector.modifiers] | On vector iterator invalidation |
Yes | 3 | |
| 2257 | C++14 | 23.2.2 [container.requirements.general] | Simplify container requirements with the new algorithms | Yes | ||
| 2258 | C++14 | 23.2.7 [associative.reqmts] | a.erase(q1, q2) unable to directly return q2 |
Yes | 0 | |
| 2259 | C++17 | 16.4.6.5 [member.functions] | Issues in 17.6.5.5 rules for member functions | Yes | 3 | |
| 2260 | C++17 | 16.4.4.6 [allocator.requirements] | Missing requirement for Allocator::pointer |
Yes | 3 | |
| 2261 | C++17 | 23.2 [container.requirements] | Are containers required to use their 'pointer' type internally? |
Yes | 2 | |
| 2262 | Open | 20.3.1.3 [unique.ptr.single] | Requirement for unique_ptr<T>::get_deleter()(p) to be able to destroy the unique_ptr |
Yes | 3 | |
| 2263 | C++14 | 16.4.4.6 [allocator.requirements] | Comparing iterators and allocator pointers with different const-character | Yes | 1 | |
| 2264 | NAD Arrays | 99 [arrays.ts::dynarray] | [arrays.ts] std::dynarray defines its initializer-list constructor in terms of a non-existent constructor |
Yes | 1 | |
| 2265 | Open | 32.5.4 [atomics.order] | 29.3p9 appears to rule out some acceptable executions | No | 4 | |
| 2266 | C++17 | 23.2.4 [sequence.reqmts] | vector and deque have incorrect insert requirements |
Yes | 2 | |
| 2267 | New | 26.8.2.4 [partial.sort.copy] | partial_sort_copy underspecified for ranges of two different types |
No | 3 | |
| 2268 | C++14 | 27.4.3 [basic.string] | Setting a default argument in the declaration of a member function assign of std::basic_string |
Yes | ||
| 2269 | New | 23.2.2 [container.requirements.general] | Container iterators and argument-dependent lookup | No | 4 | |
| 2270 | NAD | 27.4.5 [string.conversions] | Inconsistent to_string overloads |
Yes | ||
| 2271 | C++14 | 28.6.6 [re.traits] | regex_traits::lookup_classname specification unclear |
Yes | ||
| 2272 | C++14 | 31.7.9 [quoted.manip] | quoted should use char_traits::eq for character comparison |
Yes | ||
| 2273 | C++17 | 28.6.10.2 [re.alg.match] | regex_match ambiguity |
Yes | 2 | |
| 2274 | Resolved | 23.4.3.3 [map.access] | Does map::operator[] value-initialize or default-insert a missing element? |
Yes | 3 | |
| 2275 | C++14 | 22.4.5 [tuple.creation] | [CD] Why is forward_as_tuple not constexpr? |
Yes | ||
| 2276 | C++17 | 32.10 [futures] | Missing requirement on std::promise::set_exception |
Yes | ||
| 2277 | NAD Arrays | 99 [arrays.ts::iterator.range] | [arrays.ts] <dynarray> is missing in 24.7/1 |
Yes | 3 | |
| 2278 | C++14 | 30.2 [time.syn] | User-defined literals for Standard Library types | Yes | ||
| 2279 | NAD | 23.3.11.5 [list.ops] | Carefully state effects of list::splice function |
Yes | ||
| 2280 | C++14 | 24.7 [iterator.range] | begin/end for arrays should be constexpr and noexcept |
Yes | ||
| 2281 | NAD Editorial | 16.4.3.3 [using.linkage] | C99 cross-reference typo in [using.linkage] | Yes | ||
| 2282 | Resolved | 5.3.3 [fund.ts::optional.object.assign] | [fund.ts] Incorrect is_assignable constraint in optional::op=(U&&) |
Yes | ||
| 2283 | Resolved | 5.9 [fund.ts::optional.comp_with_t] | [fund.ts] optional declares and then does not define an operator<() |
Yes | ||
| 2284 | C++14 | 20.2.9 [allocator.traits] | Inconsistency in allocator_traits::max_size |
Yes | ||
| 2285 | C++14 | 24.5.1 [reverse.iterators] | make_reverse_iterator |
Yes | ||
| 2286 | Open | 31.8.2.5 [stringbuf.virtuals] | stringbuf::underflow() underspecified |
Yes | 4 | |
| 2287 | Resolved | 5.3.3 [fund.ts::optional.object.assign] | [fund.ts] Incorrect exception safety for optional copy assignment operator |
Yes | ||
| 2288 | C++14 | 32.6.4.4 [thread.sharedmutex.requirements] | Inconsistent requirements for shared mutexes | Yes | ||
| 2289 | Open | 22.3.2 [pairs.pair] | constexpr guarantees of defaulted functions still insufficient |
No | 3 | |
| 2290 | Open | 21 [meta] | Top-level "SFINAE"-based constraints should get a separate definition in Clause 17 | Yes | 3 | |
| 2291 | C++14 | 16.4.4.5 [hash.requirements] | std::hash is vulnerable to collision DoS attack |
Yes | ||
| 2292 | Resolved | 16.3.2.4 [structure.specifications] | Find a better phrasing for "shall not participate in overload resolution" | Yes | 3 | |
| 2293 | C++14 | 28.3.4.3.3.3 [facet.num.put.virtuals] | Wrong facet used by num_put::do_put |
Yes | 0 | |
| 2294 | Resolved | 29.7 [c.math] | <cstdlib> should declare abs(double) |
Yes | 2 | |
| 2295 | C++23 | 28.3.3.1.3 [locale.cons] | Locale name when the provided Facet is a nullptr |
Yes | 3 | |
| 2296 | C++17 | 20.2.11 [specialized.addressof] | std::addressof should be constexpr |
Yes | 3 | |
| 2297 | NAD | 22.2.3 [utility.exchange] | [CD] Missing type requirements for std::exchange |
Yes | ||
| 2298 | C++14 | 21.3.6.4 [meta.unary.prop] | [CD] is_nothrow_constructible is always false because of create<> |
Yes | ||
| 2299 | C++14 | 23.2.7 [associative.reqmts] | [CD] Effects of inaccessible key_compare::is_transparent type are not clear |
Yes | 1 | |
| 2300 | C++14 | 23.4.3 [map] | [CD] Redundant sections for map and multimap members should be removed |
Yes | ||
| 2301 | C++14 | 22.4.5 [tuple.creation] | Why is std::tie not constexpr? |
Yes | 2 | |
| 2302 | Pending NAD | 17.6.3.4 [new.delete.placement] | Passing null pointer to placement new | Yes | 2 | |
| 2303 | New | 17.6.3.4 [new.delete.placement] | Explicit instantiation of std::vector<UserType> broken? |
No | 3 | |
| 2304 | C++14 | 23.2.8 [unord.req] | Complexity of count in unordered associative containers |
Yes | 0 | |
| 2305 | NAD | 5.3.1 [fund.ts::optional.object.ctor] | [fund.ts] optional forwarding construction/assignment |
Yes | 4 | |
| 2306 | C++14 | 28.6.9 [re.results] | match_results::reference should be value_type&, not const value_type& |
Yes | 4 | |
| 2307 | LEWG | 23 [containers] | Should the Standard Library use explicit only when necessary? |
No | 2 | |
| 2308 | C++14 | 23.2.2 [container.requirements.general] | Clarify container destructor requirements w.r.t. std::array |
Yes | 0 | |
| 2309 | C++17 | 32.6.4.2 [thread.mutex.requirements.mutex] | mutex::lock() should not throw device_or_resource_busy |
Yes | 0 | |
| 2310 | C++17 | 23.3.3.1 [array.overview] | Public exposition only member in std::array |
Yes | 4 | |
| 2311 | NAD | 16.4.4.6 [allocator.requirements] | Allocator requirements should be further minimized | Yes | 2 | |
| 2312 | C++17 | 22.4.4.2 [tuple.cnstr] | tuple's constructor constraints need to be phrased more precisely |
Yes | 2 | |
| 2313 | C++14 | 22.4.7 [tuple.helper] | tuple_size should always derive from integral_constant<size_t, N> |
Yes | 2 | |
| 2314 | C++14 | 21.2.1 [intseq.general] | apply() should return decltype(auto) and use decay_t before tuple_size |
Yes | 0 | |
| 2315 | C++14 | 20.3.2.3 [util.smartptr.weak] | weak_ptr should be movable |
Yes | 2 | |
| 2316 | C++14 | 20.3.2.3.6 [util.smartptr.weak.obs] | weak_ptr::lock() should be atomic |
Yes | 0 | |
| 2317 | C++14 | 21.3.7 [meta.unary.prop.query] | The type property queries should be UnaryTypeTraits returning size_t |
Yes | 0 | |
| 2318 | Resolved | 27.4.3 [basic.string] | basic_string's wording has confusing relics from the copy-on-write era |
Yes | 4 | |
| 2319 | NAD | 27.4.3.3 [string.cons] | basic_string's move constructor should not be noexcept |
Yes | 1 | |
| 2320 | C++14 | 23.2.2 [container.requirements.general] | select_on_container_copy_construction() takes allocators, not containers |
Yes | 0 | |
| 2321 | Open | 23.2.2 [container.requirements.general] | Moving containers should (usually) be required to preserve iterators | Yes | 3 | |
| 2322 | C++14 | 23.2.7 [associative.reqmts] | Associative(initializer_list, stuff) constructors are underspecified |
Yes | 0 | |
| 2323 | C++14 | 23.3.13.3 [vector.capacity] | vector::resize(n, t)'s specification should be simplified |
Yes | 0 | |
| 2324 | C++14 | 24.5.2.2.2 [back.insert.iter.ops] | Insert iterator constructors should use addressof() |
Yes | 0 | |
| 2325 | C++17 | 26.8.9 [alg.min.max] | minmax_element()'s behavior differing from max_element()'s should be noted |
Yes | 3 | |
| 2326 | NAD | 29.5.3.1 [rand.req.genl] | uniform_int_distribution<unsigned char> should be permitted |
Yes | 2 | |
| 2327 | NAD | 29.5.3.3 [rand.req.urng] | Non-power-of-two URNGs should be forbidden | Yes | ||
| 2328 | C++17 | 31.7.5.6 [istream.rvalue] | Rvalue stream extraction should use perfect forwarding | Yes | 3 | |
| 2329 | C++14 | 28.6.3 [re.syn] | regex_match()/regex_search() with match_results should forbid temporary strings |
Yes | 2 | |
| 2330 | C++14 | 28.6.4.2 [re.synopt] | regex("meow", regex::icase) is technically forbidden but should be permitted |
Yes | 0 | |
| 2331 | Open | 28.6.4.2 [re.synopt] | regex_constants::collate's effects are inaccurately summarized |
Yes | 3 | |
| 2332 | C++14 | 28.6.11 [re.iter] | regex_iterator/regex_token_iterator should forbid temporary regexes |
Yes | 2 | |
| 2333 | Resolved | 5.11 [fund.ts::optional.hash] | [fund.ts] Hashing disengaged optional<T> objects |
Yes | ||
| 2334 | Resolved | 32.5.8.2 [atomics.types.operations] | atomic's default constructor requires "uninitialized" state even for types with non-trivial default-constructor |
Yes | ||
| 2335 | NAD | 23.3.3 [array] | array<array<int, 3>, 4> should be layout-compatible with int[4][3] |
Yes | 3 | |
| 2336 | C++17 | 21.3.6.4 [meta.unary.prop] | is_trivially_constructible/is_trivially_assignable traits are always false |
Yes | 3 | |
| 2337 | NAD | 20.3.2.2.6 [util.smartptr.shared.obs] | shared_ptr operator*() should not be noexcept |
Yes | 2 | |
| 2338 | Open | 28.6.6 [re.traits] | §[re.traits]/7 expects of locale facets something not guaranteed by [locale.facet]/4 | Yes | 3 | |
| 2339 | C++14 | 26.8.3 [alg.nth.element] | Wording issue in nth_element |
Yes | 0 | |
| 2340 | C++17 | 16.4.5.6 [replacement.functions] | Replacement allocation functions declared as inline | Yes | 2 | |
| 2341 | C++14 | 31.7.6.2.5 [ostream.seeks] | Inconsistency between basic_ostream::seekp(pos) and basic_ostream::seekp(off, dir) |
Yes | 0 | |
| 2342 | New | 31.7.6.2 [ostream] | User conversion to wchar_t const* or to wchar_t not invoked for operator<< |
Yes | 4 | |
| 2343 | Resolved | 28.6.12 [re.grammar] | Is the value of the ECMA-262 RegExp object's multiline property really false? | Yes | 2 | |
| 2344 | C++14 | 31.7.9 [quoted.manip] | quoted()'s interaction with padding is unclear |
Yes | 1 | |
| 2345 | NAD | 21.2.2 [intseq.intseq] | integer_sequence should have a self-typedef ::type |
Yes | 2 | |
| 2346 | C++14 | 21.3.4 [meta.help] | integral_constant's member functions should be marked noexcept |
Yes | 0 | |
| 2347 | NAD | 24.5.1.6 [reverse.iter.elem] | reverse_iterator::operator[] calls const version of current[] |
Yes | 2 | |
| 2348 | Open | 22.9.2 [template.bitset] | charT('1') is not the wide equivalent of '1' |
Yes | 3 | |
| 2349 | Resolved | 31.7.5.3.1 [istream.formatted.reqmts] | Clarify input/output function rethrow behavior | Yes | 3 | |
| 2350 | C++14 | 26.8.9 [alg.min.max] | min, max, and minmax should be constexpr |
Yes | 1 | |
| 2351 | NAD | 29.5.4 [rand.eng] | Does .seed() completely reset state of engine? |
Yes | 2 | |
| 2352 | NAD | 29.5.8.1 [rand.util.seedseq] | Is a default-constructed std::seed_seq intended to produce a predictable .generate()? |
Yes | 2 | |
| 2353 | C++17 | 24.4.3 [iterator.operations] | std::next is over-constrained |
Yes | 4 | |
| 2354 | C++17 | 23.4.3.1 [map.overview] | Unnecessary copying when inserting into maps with braced-init syntax | Yes | 2 | |
| 2355 | NAD | 27.4.7 [basic.string.literals] | "s" UDL suffix should be reserved for a compile-time string library type |
Yes | 1 | |
| 2356 | C++14 | 23.2.8 [unord.req] | Stability of erasure in unordered associative containers | Yes | 2 | |
| 2357 | C++14 | 26.8.5 [alg.partitions] | Remaining "Assignable" requirement |
Yes | 0 | |
| 2358 | Open | 21.3.6.4 [meta.unary.prop] | Apparently-bogus definition of is_empty type trait |
Yes | 3 | |
| 2359 | C++14 | 28.6.4.2 [re.synopt] | How does regex_constants::nosubs affect basic_regex::mark_count()? |
Yes | 0 | |
| 2360 | C++14 | 24.5.1.2 [reverse.iterator] | reverse_iterator::operator*() is unimplementable |
Yes | 1 | |
| 2361 | C++17 | 20.3.1.3 [unique.ptr.single] | Apply 2299 resolution throughout library | Yes | ||
| 2362 | New | 23.2.7 [associative.reqmts] | unique, associative emplace() should not move/copy the mapped_type constructor
arguments when no insertion happens |
No | 3 | |
| 2363 | Resolved | 32.6.4.5.2 [thread.sharedtimedmutex.class] | Defect in 30.4.1.4.1 [thread.sharedtimedmutex.class] | Yes | 2 | |
| 2364 | C++17 | 23.3.5.4 [deque.modifiers] | deque and vector pop_back don't specify iterator invalidation requirements |
Yes | 0 | |
| 2365 | C++17 | 20.3.2.2 [util.smartptr.shared] | Missing noexcept in shared_ptr::shared_ptr(nullptr_t) |
Yes | ||
| 2366 | New | 24.6.4 [istreambuf.iterator] | istreambuf_iterator end-of-stream equality |
Yes | 3 | |
| 2367 | C++17 | 21.3.6.4 [meta.unary.prop] | pair and tuple are not correctly implemented for is_constructible with no args |
Yes | 3 | |
| 2368 | Resolved | 17.6.3 [new.delete] | Replacing global operator new |
Yes | 2 | |
| 2369 | C++17 | 26.8.9 [alg.min.max] | constexpr max(initializer_list) vs max_element |
Yes | 3 | |
| 2370 | Resolved | 22.10.17.3 [func.wrap.func] | Operations involving type-erased allocators should not be noexcept in std::function |
Yes | 3 | |
| 2371 | TS | 3.3.1 [fund.ts::meta.type.synop] | [fund.ts] No template aliases defined for new type traits | Yes | 0 | |
| 2372 | NAD | 27.4.3 [basic.string] | Assignment from int to std::string |
Yes | 4 | |
| 2373 | NAD | 16.4.6 [conforming] | Make new entities and names in namespace std conforming extensions |
Yes | 3 | |
| 2374 | TS | 5.3.5 [fund.ts::optional.object.observe] | [fund.ts] Remarks for optional::to_value are too restrictive |
Yes | 0 | |
| 2375 | Resolved | 24.3.1 [iterator.requirements.general] | Is [iterator.requirements.general]/9 too broadly applied? | Yes | 3 | |
| 2376 | C++17 | 20.3.2.1 [util.smartptr.weak.bad] | bad_weak_ptr::what() overspecified |
Yes | ||
| 2377 | C++17 | 20.2.5 [ptr.align] | std::align requirements overly strict |
Yes | 0 | |
| 2378 | C++17 | 17.6.4.1 [bad.alloc] | Behaviour of standard exception types | Yes | 0 | |
| 2379 | NAD | 32.2.3 [thread.req.native] | Obtaining native handle of the current thread | Yes | ||
| 2380 | C++17 | 16.4.2.3 [headers] | May <cstdlib> provide long ::abs(long) and long long ::abs(long long)? |
Yes | 2 | |
| 2381 | C++23 | 28.3.4.3.2.3 [facet.num.get.virtuals] | Inconsistency in parsing floating point numbers | Yes | 2 | |
| 2382 | Pending NAD | 16.4.6.9 [reentrancy] | Unclear order of container update versus object destruction on removing an object | Yes | 2 | |
| 2383 | Open | 30.5.9 [time.duration.literals] | Overflow cannot be ill-formed for chrono::duration integer literals | No | 3 | |
| 2384 | C++17 | 16.4.4.6 [allocator.requirements] | Allocator's deallocate function needs better specification |
Yes | 3 | |
| 2385 | C++17 | 22.10.17.3 [func.wrap.func] | function::assign allocator argument doesn't make sense |
Yes | 2 | |
| 2386 | NAD | 22.10.17.3.2 [func.wrap.func.con] | function::operator= handles allocators incorrectly |
Yes | 1 | |
| 2387 | C++17 | 22.10.4 [func.require] | More nested types that must be accessible and unambiguous | Yes | ||
| 2388 | NAD | 22.2.3 [utility.exchange] | Handling self-assignment in the proposed library function std::exchange |
Yes | 2 | |
| 2389 | TS | 4.2.1 [fund.ts::func.wrap.func.con] | [fund.ts] function::operator= is over-specified and handles allocators incorrectly |
Yes | 2 | |
| 2390 | TS | 3.3.2 [fund.ts::meta.trans.other] | [fund.ts] Invocation types and rvalues | Yes | ||
| 2391 | Resolved | 27.4.3 [basic.string] | basic_string is missing non-const data() |
Yes | 3 | |
| 2392 | WP | 3.36 [defns.ntcts] | "character type" is used but not defined | Yes | 3 | |
| 2393 | C++17 | 22.10.17.3 [func.wrap.func] | std::function's Callable definition is broken |
Yes | 2 | |
| 2394 | C++17 | 28.3.3.1.4 [locale.members] | locale::name specification unclear — what is implementation-defined? |
Yes | 3 | |
| 2395 | TS | 4.2 [fund.ts::func.wrap.func] | [fund.ts] Preconditions: is defined nowhere | Yes | 2 | |
| 2396 | C++17 | 21.3.9.7 [meta.trans.other] | underlying_type doesn't say what to do for an incomplete enumeration type |
Yes | 0 | |
| 2397 | Resolved | 21.3.9.7 [meta.trans.other] | map<K, V>::emplace and explicit V constructors |
Yes | 1 | |
| 2398 | Open | 17.7.3 [type.info] | type_info's destructor shouldn't be required to be virtual |
Yes | 3 | |
| 2399 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr's constructor from unique_ptr should be constrained |
Yes | 0 | |
| 2400 | C++17 | 20.3.2.2.11 [util.smartptr.getdeleter] | shared_ptr's get_deleter() should use addressof() |
Yes | 0 | |
| 2401 | C++17 | 22.10.17.3 [func.wrap.func] | std::function needs more noexcept |
Yes | 0 | |
| 2402 | NAD | 27.4.3.3 [string.cons] | basic_string(const basic_string& str, size_type pos, size_type n = npos) shouldn't use Allocator() |
Yes | 3 | |
| 2403 | C++17 | 27.4.5 [string.conversions] | stof() should call strtof() and wcstof() |
Yes | 2 | |
| 2404 | C++17 | 99 [mismatch] | mismatch()'s complexity needs to be updated |
Yes | 0 | |
| 2405 | NAD | 26.7.11 [alg.rotate] | rotate()'s return value is incorrect when middle == first |
Yes | ||
| 2406 | C++17 | 29.5.9.3.4 [rand.dist.bern.negbin] | negative_binomial_distribution should reject p == 1 |
Yes | 3 | |
| 2407 | C++17 | 32.10.10.2 [futures.task.members] | packaged_task(allocator_arg_t, const Allocator&, F&&) should neither be constrained nor
explicit |
Yes | ||
| 2408 | C++17 | 21.3.9.7 [meta.trans.other] | SFINAE-friendly common_type/iterator_traits is missing in C++14 |
Yes | ||
| 2409 | TS | 3.3.2 [fund.ts::meta.trans.other] | [fund.ts] SFINAE-friendly common_type/iterator_traits should be removed from the fundamental-ts |
Yes | ||
| 2410 | TS | 8.2.1.1 [fund.ts::memory.smartptr.shared.const] | [fund.ts] shared_ptr<array>'s constructor from unique_ptr should be constrained |
Yes | 0 | |
| 2411 | C++17 | 20.3.2.2 [util.smartptr.shared] | shared_ptr is only contextually convertible to bool |
Yes | 0 | |
| 2412 | C++20 | 32.10.6 [futures.promise] | promise::set_value() and promise::get_future() should not race |
Yes | 3 | |
| 2413 | NAD | 19.3 [assertions] | assert macro is overconstrained |
Yes | 4 | |
| 2414 | Open | 16.4.6.9 [reentrancy] | Member function reentrancy should be implementation-defined | Yes | 3 | |
| 2415 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | Inconsistency between unique_ptr and shared_ptr |
Yes | 2 | |
| 2416 | Resolved | 6.3 [fund.ts::any.class] | [fund.ts] std::experimental::any allocator support is unimplementable |
Yes | ||
| 2417 | NAD | 5.7 [fund.ts.v2::optional.relops] | [fund.ts.v2] std::experimental::optional::operator< and LessThanComparable requirement |
Yes | ||
| 2418 | TS | 3.2.2 [fund.ts::tuple.apply] | [fund.ts] apply does not work with member pointers |
Yes | 0 | |
| 2419 | Resolved | 22.4.4.2 [tuple.cnstr] | Clang's libc++ extension to std::tuple |
Yes | ||
| 2420 | C++17 | 22.10.17.3 [func.wrap.func] | function<void(ArgTypes...)> does not discard the return value of the target object |
Yes | 1 | |
| 2421 | New | 20.2.5 [ptr.align] | Non-specification of handling zero size in std::align [ptr.align] |
No | 3 | |
| 2422 | C++17 | 17.3.5.2 [numeric.limits.members] | std::numeric_limits<T>::is_modulo description: "most machines" errata |
Yes | 2 | |
| 2423 | New | 29.6.5 [template.slice.array] | Missing specification slice_array, gslice_array, mask_array, indirect_array copy constructor |
Yes | 4 | |
| 2424 | Resolved | 32.5.8 [atomics.types.generic] | 29.5 should state that atomic types are not trivially copyable | Yes | 2 | |
| 2425 | C++17 | 17.6.3 [new.delete] | operator delete(void*, size_t) doesn't invalidate pointers sufficiently |
Yes | 0 | |
| 2426 | C++17 | 32.5.8.2 [atomics.types.operations] | Issue about compare_exchange |
Yes | 1 | |
| 2427 | C++17 | 23.3.1 [sequences.general] | Container adaptors as sequence containers, redux | Yes | 0 | |
| 2428 | C++17 | 16.4.3.2 [using.headers] | "External declaration" used without being defined | Yes | 0 | |
| 2429 | NAD | 31.8.4 [ostringstream] | std::basic_ostringstream is missing an allocator-extended constructor |
Yes | ||
| 2430 | NAD | 23.2.7 [associative.reqmts] | Heterogeneous container lookup should be enabled using meta-function instead of nested type | Yes | ||
| 2431 | New | 28.6.2 [re.req] | Missing regular expression traits requirements | No | 3 | |
| 2432 | NAD | 17.11 [support.initlist] | initializer_list assignability |
Yes | 2 | |
| 2433 | C++17 | 26.11 [specialized.algorithms] | uninitialized_copy()/etc. should tolerate overloaded operator& |
Yes | 0 | |
| 2434 | C++17 | 20.3.2.2.6 [util.smartptr.shared.obs] | shared_ptr::use_count() is efficient |
Yes | 0 | |
| 2435 | C++17 | 22.10.6.5 [refwrap.invoke] | reference_wrapper::operator()'s Remark should be deleted |
Yes | 4 | |
| 2436 | C++17 | 23.2.7 [associative.reqmts] | Comparators for associative containers should always be CopyConstructible |
Yes | 2 | |
| 2437 | C++17 | 24.3.5.2 [iterator.iterators] | iterator_traits<OutIt>::reference can and can't be void |
Yes | 3 | |
| 2438 | C++17 | D.17 [depr.iterator] | std::iterator inheritance shouldn't be mandated |
Yes | 3 | |
| 2439 | C++17 | 26.7.9 [alg.unique] | unique_copy() sometimes can't fall back to reading its output |
Yes | 3 | |
| 2440 | C++17 | 29.5.8.1 [rand.util.seedseq] | seed_seq::size() should be noexcept |
Yes | 0 | |
| 2441 | C++17 | 32.5.8 [atomics.types.generic] | Exact-width atomic typedefs should be provided | Yes | 0 | |
| 2442 | C++17 | 32.6.7.2 [thread.once.callonce] | call_once() shouldn't DECAY_COPY() |
Yes | ||
| 2443 | Resolved | 23.3.3 [array] | std::array member functions should be constexpr |
Yes | ||
| 2444 | C++20 | 26.8.8.5 [sort.heap] | Inconsistent complexity for std::sort_heap |
Yes | 3 | |
| 2445 | Resolved | 99 [depr.util.smartptr.shared.atomic] | "Stronger" memory ordering | Yes | ||
| 2446 | NAD | 22.4.1 [tuple.general] | Unspecialized std::tuple_size should be defined |
Yes | ||
| 2447 | C++17 | 16.4.4.6 [allocator.requirements] | Allocators and volatile-qualified value types |
Yes | 4 | |
| 2448 | C++17 | 23.2.2 [container.requirements.general] | Non-normative Container destructor specification | Yes | 0 | |
| 2449 | NAD | 23.3.13.5 [vector.modifiers] | vector::insert invalidates end()? |
Yes | 3 | |
| 2450 | C++17 | 22.10.8 [comparisons] | (greater|less|greater_equal|less_equal)<void> do not yield a total order for pointers |
Yes | 2 | |
| 2451 | TS | 5.3 [fund.ts.v2::optional.object] | [fund.ts.v2] optional<T> should 'forward' T's implicit conversions |
Yes | ||
| 2452 | Core | 21 [meta] | is_constructible, etc. and default arguments |
No | 3 | |
| 2453 | New | 17.11 [support.initlist] | §[iterator.range] and now [iterator.container] aren't available via <initializer_list> |
No | 3 | |
| 2454 | C++17 | 99 [depr.storage.iterator] | Add raw_storage_iterator::base() member |
Yes | 0 | |
| 2455 | C++17 | 16.4.4.6 [allocator.requirements] | Allocator default construction should be allowed to throw | Yes | ||
| 2456 | Resolved | 22.2 [utility] | Incorrect exception specifications for 'swap' throughout library |
Yes | 1 | |
| 2457 | NAD | 24.7 [iterator.range] | std::begin() and std::end() do not support multi-dimensional arrays correctly |
Yes | 3 | |
| 2458 | C++17 | 17.6 [support.dynamic] | N3778 and new library deallocation signatures | Yes | 2 | |
| 2459 | C++17 | 29.4.7 [complex.value.ops] | std::polar should require a non-negative rho |
Yes | 0 | |
| 2460 | C++17 | 21.3.9.7 [meta.trans.other] | LWG issue 2408 and value categories | Yes | 2 | |
| 2461 | New | 16.4.4.6 [allocator.requirements] | Interaction between allocators and container exception safety guarantees | No | 3 | |
| 2462 | C++17 | 31.5.2 [ios.base] | std::ios_base::failure is overspecified |
Yes | 3 | |
| 2463 | TS | 10.3 [fund.ts::alg.random.sample] | [fund.ts] Incorrect complexity for sample() algorithm |
Yes | 0 | |
| 2464 | C++17 | 23.4.3.4 [map.modifiers] | try_emplace and insert_or_assign misspecified |
Yes | 2 | |
| 2465 | Resolved | 21.3.9.7 [meta.trans.other] | SFINAE-friendly common_type is nearly impossible to specialize
correctly and regresses key functionality |
Yes | 2 | |
| 2466 | C++17 | 16.4.4.6 [allocator.requirements] | allocator_traits::max_size() default behavior is incorrect |
Yes | 3 | |
| 2467 | C++17 | 16.4.4.6 [allocator.requirements] | is_always_equal has slightly inconsistent default |
Yes | 0 | |
| 2468 | C++17 | 16.4.5.9 [res.on.arguments] | Self-move-assignment of library types | Yes | 2 | |
| 2469 | C++17 | 23.4.3.3 [map.access] | Wrong specification of Requires clause of operator[] for map and unordered_map |
Yes | 3 | |
| 2470 | C++17 | 16.4.4.6 [allocator.requirements] | Allocator's destroy function should be allowed to fail to instantiate |
Yes | ||
| 2471 | Open | 26.7.1 [alg.copy] | copy_n's number of InputIterator increments unspecified |
No | 3 | |
| 2472 | New | 22.4.9 [tuple.rel] | Heterogeneous comparisons in the standard library can result in ambiguities | No | 3 | |
| 2473 | C++17 | 31.10.3.5 [filebuf.virtuals] | basic_filebuf's relation to C FILE semantics |
Yes | 2 | |
| 2474 | NAD | 29.7 [c.math] | <cmath> functions unfriendly to integral_constant arguments |
Yes | 4 | |
| 2475 | C++17 | 27.4.3.6 [string.access] | Allow overwriting of std::basic_string terminator with charT() to allow
cleaner interoperation with legacy APIs |
Yes | 3 | |
| 2476 | C++17 | 20.6.1 [allocator.adaptor.syn] | scoped_allocator_adaptor is not assignable |
Yes | 0 | |
| 2477 | C++17 | 23.3.5.4 [deque.modifiers] | Inconsistency of wordings in std::vector::erase() and std::deque::erase() |
Yes | 0 | |
| 2478 | New | 99 [depr.conversions.string] | Unclear how wstring_convert uses cvtstate |
No | 4 | |
| 2479 | New | 99 [depr.conversions.buffer] | Unclear how wbuffer_convert uses cvtstate |
No | 4 | |
| 2480 | New | 99 [depr.conversions.buffer] | Error handling of wbuffer_convert unclear |
No | 4 | |
| 2481 | New | 99 [depr.conversions.string] | wstring_convert should be more precise regarding "byte-error string" etc. |
No | 4 | |
| 2482 | C++17 | 27.5 [c.strings] | §[c.strings] Table 73 mentions nonexistent functions | Yes | ||
| 2483 | C++17 | 17.9.8 [except.nested] | throw_with_nested() should use is_final |
Yes | 2 | |
| 2484 | C++17 | 17.9.8 [except.nested] | rethrow_if_nested() is doubly unimplementable |
Yes | 2 | |
| 2485 | C++17 | 22.4.8 [tuple.elem] | get() should be overloaded for const tuple&& |
Yes | 1 | |
| 2486 | C++17 | 22.10.4 [func.require] | mem_fn() should be required to use perfect forwarding |
Yes | 0 | |
| 2487 | C++17 | 22.10.15.4 [func.bind.bind] | bind() should be const-overloaded, not cv-overloaded |
Yes | 2 | |
| 2488 | C++17 | 22.10.15.5 [func.bind.place] | Placeholders should be allowed and encouraged to be constexpr |
Yes | 2 | |
| 2489 | C++17 | 22.10.16 [func.memfn] | mem_fn() should be noexcept |
Yes | 0 | |
| 2490 | New | 28.6 [re] | <regex> needs lots of noexcept |
No | 3 | |
| 2491 | New | 22.10.8 [comparisons] | std::less<T*> in constant expression |
Yes | 3 | |
| 2492 | C++17 | 26.8 [alg.sorting] | Clarify requirements for comp |
Yes | 0 | |
| 2493 | New | 17.11 [support.initlist] | initializer_list supports incomplete classes |
No | 4 | |
| 2494 | TS | 10.2 [fund.ts.v2::iterator.ostream.joiner] | [fund.ts.v2] ostream_joiner needs noexcept |
Yes | 0 | |
| 2495 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | There is no such thing as an Exception Safety element | Yes | 0 | |
| 2496 | New | 21.3.6.4 [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 | |
| 2497 | New | 31.7.6.2.4 [ostream.sentry] | Use of uncaught_exception() |
Yes | 3 | |
| 2498 | Resolved | 31.7.5.6 [istream.rvalue] | operator>>(basic_istream&&, T&&) returns basic_istream&, but should probably return
basic_istream&& |
Yes | 3 | |
| 2499 | Resolved | 31.7.5.3.3 [istream.extractors] | operator>>(basic_istream&, CharT*) makes it hard to avoid buffer overflows |
Yes | 2 | |
| 2500 | TS | 8.2.1.2 [fund.ts.v2::memory.smartptr.shared.obs] | [fund.ts.v2] fundts.memory.smartptr.shared.obs/6 should apply to cv-unqualified void |
Yes | 0 | |
| 2501 | Resolved | 22.10.17.3 [func.wrap.func] | std::function requires POCMA/POCCA |
Yes | 3 | |
| 2502 | Resolved | 22.10.17.3 [func.wrap.func] | std::function does not use allocator::construct |
Yes | 3 | |
| 2503 | C++17 | 28.6.4.2 [re.synopt] | multiline option should be added to syntax_option_type |
Yes | 2 | |
| 2504 | New | 31.6.3 [streambuf] | basic_streambuf is not an abstract class |
No | 3 | |
| 2505 | Resolved | 99 [auto.ptr.conv] | auto_ptr_ref creation requirements underspecified |
Yes | 4 | |
| 2506 | SG1 | 6.10.2 [intro.multithread] | Underspecification of atomics | No | 3 | |
| 2507 | New | 99 [depr.locale.stdcvt] | codecvt_mode should be a bitmask type |
No | 3 | |
| 2508 | New | 17.6.3.5 [new.delete.dataraces] | §[new.delete.dataraces] wording needs to be updated | No | 3 | |
| 2509 | TS | 6.4 [fund.ts.v2::any.nonmembers] | [fund.ts.v2] any_cast doesn't work with rvalue reference targets and cannot move with a value target |
Yes | 2 | |
| 2510 | C++17 | 17.6 [support.dynamic] | Tag types should not be DefaultConstructible |
Yes | 2 | |
| 2511 | Resolved | 20.6.4 [allocator.adaptor.members] | scoped_allocator_adaptor piecewise construction does not require CopyConstructible |
Yes | 3 | |
| 2512 | Open | 28.3.4.6.2.3 [locale.time.get.virtuals] | Y2K bites; what is an "unambiguous year identifier"? | No | 4 | |
| 2513 | New | 27.1 [strings.general] | Missing requirements for basic_string::value_type |
No | 4 | |
| 2514 | C++17 | 21.3.2 [meta.rqmts] | Type traits must not be final |
Yes | 3 | |
| 2515 | TS | 8.12.6 [fund.ts.v2::memory.observer.ptr.special] | [fund.ts.v2] Certain comparison operators of observer_ptr do not match synopsis |
Yes | 0 | |
| 2516 | TS | 8.12.1 [fund.ts.v2::memory.observer.ptr.overview] | [fund.ts.v2] Public "exposition only" members in observer_ptr |
Yes | 2 | |
| 2517 | TS | 3.7.5 [fund.ts.v2::propagate_const.assignment] | [fund.ts.v2] Two propagate_const assignment operators have incorrect return type |
Yes | 0 | |
| 2518 | TS | 3.7.10 [fund.ts.v2::propagate_const.algorithms] | [fund.ts.v2] Non-member swap for propagate_const should call member swap |
Yes | 3 | |
| 2519 | C++17 | 24.3.5.7 [random.access.iterators] | Iterator operator-= has gratuitous undefined behaviour |
Yes | 2 | |
| 2520 | C++17 | 20.3.1.4.2 [unique.ptr.runtime.ctor] | N4089 broke initializing unique_ptr<T[]> from a nullptr |
Yes | 2 | |
| 2521 | TS | 8.2.2.1 [fund.ts.v2::memory.smartptr.weak.const] | [fund.ts.v2] weak_ptr's converting move constructor should be modified as well for array support |
Yes | 2 | |
| 2522 | TS | 8.8 [fund.ts.v2::memory.resource.global] | [fund.ts.v2] Contradiction in set_default_resource specification |
Yes | 2 | |
| 2523 | C++17 | 32.10.6 [futures.promise] | std::promise synopsis shows two set_value_at_thread_exit()'s for no apparent reason |
Yes | 0 | |
| 2524 | Resolved | 29.5.9.4.2 [rand.dist.pois.exp] | generate_canonical can occasionally return 1.0 |
Yes | 2 | |
| 2525 | TS | 4.2 [fund.ts.v2::func.wrap.func] | [fund.ts.v2] get_memory_resource should be const and noexcept |
Yes | 3 | |
| 2526 | TS | 4.2.2 [fund.ts.v2::func.wrap.func.mod] | [fund.ts.v2] Incorrect precondition for experimental::function::swap |
Yes | 0 | |
| 2527 | TS | 4.2.1 [fund.ts.v2::func.wrap.func.con] | [fund.ts.v2] ALLOCATOR_OF for function::operator= has incorrect default |
Yes | 3 | |
| 2528 | New | 22.4.4.2 [tuple.cnstr] | Order of std::tuple construction unspecified |
No | 3 | |
| 2529 | Resolved | 20.3.2.7 [util.smartptr.enab] | Assigning to enable_shared_from_this::__weak_this twice |
Yes | 3 | |
| 2530 | Open | 32.10.5 [futures.state] | Clarify observable side effects of releasing a shared state | No | 3 | |
| 2531 | C++17 | 32.10.7 [futures.unique.future] | future::get should explicitly state that the shared state is released |
Yes | 3 | |
| 2532 | Open | 32.10.6 [futures.promise] | Satisfying a promise at thread exit |
Yes | 3 | |
| 2533 | SG1 | 99 [concurr.ts::futures.unique.future] | [concurr.ts] Constrain threads where future::then can run a continuation |
No | ||
| 2534 | C++17 | 31.7.6.6 [ostream.rvalue] | Constrain rvalue stream operators | Yes | 3 | |
| 2535 | NAD | 27.4.4.4 [string.io] | Inconsistency between ostream::write and ostream::operator<< |
Yes | 2 | |
| 2536 | C++17 | 17.15 [support.c.headers] | What should <complex.h> do? |
Yes | 2 | |
| 2537 | C++17 | 23.6.4.3 [priqueue.cons.alloc] | Constructors for priority_queue taking allocators should call make_heap |
Yes | 0 | |
| 2538 | NAD | 99 [parallel.ts::parallel.alg.general.exec] | [parallel.ts] Requirements on data race behavior of iterators and swap should be clarified | Yes | ||
| 2539 | TS | 3.3.2 [fund.ts.v2::meta.trans.other] | [fund.ts.v2] invocation_trait definition definition doesn't work for surrogate call functions |
Yes | ||
| 2540 | C++17 | 23.2.8 [unord.req] | unordered_multimap::insert hint iterator |
Yes | 3 | |
| 2541 | Resolved | 99 [parallel.ts::parallel.alg.overloads] | [parallel.ts] Headers for ExecutionPolicy algorithm overloads |
Yes | 1 | |
| 2542 | C++17 | 23.2.7 [associative.reqmts] | Missing const requirements for associative containers |
Yes | 1 | |
| 2543 | Resolved | 22.10.19 [unord.hash] | LWG 2148 (hash support for enum types) seems under-specified | Yes | 2 | |
| 2544 | C++17 | 24.6.4.3 [istreambuf.iterator.cons] | istreambuf_iterator(basic_streambuf<charT, traits>* s) effects unclear when s is 0 |
Yes | 3 | |
| 2545 | C++17 | 22.10.15.4 [func.bind.bind] | Simplify wording for bind without explicitly specified return type |
Yes | 3 | |
| 2546 | New | 28.6.12 [re.grammar] | Implementability of locale-sensitive UnicodeEscapeSequence matching | No | 4 | |
| 2547 | New | 22.10.8 [comparisons] | Container requirements (and other library text) should say "strict total order", not just "total order" | No | 3 | |
| 2548 | Resolved | 31.13 [c.files] | Missing vfscanf from <cstdio> |
Yes | 3 | |
| 2549 | C++17 | 22.4.4.2 [tuple.cnstr] | Tuple EXPLICIT constructor templates that take tuple parameters end up taking references
to temporaries and will create dangling references |
Yes | 2 | |
| 2550 | C++17 | 23.2.8 [unord.req] | Wording of unordered container's clear() method complexity |
Yes | 2 | |
| 2551 | TS | 8.2.1.1 [fund.ts.v2::memory.smartptr.shared.const] | [fund.ts.v2] "Exception safety" cleanup in library fundamentals required | Yes | 0 | |
| 2552 | NAD | 23.6.4 [priority.queue] | priority_queue doesn't work with move-only types |
Yes | 3 | |
| 2553 | NAD | 7.3 [fund.ts.v2::string.view.cons] | [fund.ts.v2] basic_string_view substring constructor |
Yes | ||
| 2554 | Resolved | 22.2.2 [utility.swap] | Swapping multidimensional arrays is never noexcept |
Yes | 2 | |
| 2555 | TS | 5.3 [fund.ts.v2::optional.object] | [fund.ts.v2] No handling for over-aligned types in optional |
Yes | 0 | |
| 2556 | C++17 | 32.10.7 [futures.unique.future] | Wide contract for future::share() |
Yes | 3 | |
| 2557 | C++17 | 21.3.10 [meta.logical] | Logical operator traits are broken in the zero-argument case | Yes | 0 | |
| 2558 | TS | 3.3.3 [fund.ts.v2::meta.logical] | [fund.ts.v2] Logical operator traits are broken in the zero-argument case | Yes | 0 | |
| 2559 | C++17 | 19.3 [assertions] | Error in LWG 2234's resolution | Yes | 0 | |
| 2560 | C++17 | 21.3.6.4 [meta.unary.prop] | is_constructible underspecified when applied to a function type |
Yes | 0 | |
| 2561 | Resolved | 5.3.4 [fund.ts.v2::optional.object.swap] | [fund.ts.v2] Incorrect exception specifications for 'swap' in C++ Extensions for Library Fundamentals | Yes | 3 | |
| 2562 | C++17 | 22.10.8 [comparisons] | Consistent total ordering of pointers by comparison functors | Yes | 3 | |
| 2563 | NAD | 16.4.6.5 [member.functions] | LWG 2259 relaxes requirements, perhaps unintentionally | Yes | 2 | |
| 2564 | Resolved | 4.2 [fund.ts.v2::func.wrap.func] | [fund.ts.v2] std::experimental::function constructors taking allocator arguments may throw exceptions |
Yes | 3 | |
| 2565 | C++17 | 22.10.17.3.2 [func.wrap.func.con] | std::function's move constructor should guarantee nothrow for reference_wrappers and function pointers |
Yes | 0 | |
| 2566 | C++17 | 23.6 [container.adaptors] | Requirements on the first template parameter of container adaptors | Yes | 0 | |
| 2567 | C++17 | 21.3.10 [meta.logical] | Specification of logical operator traits uses BaseCharacteristic, which is defined only for UnaryTypeTraits
and BinaryTypeTraits |
Yes | 2 | |
| 2568 | TS | 3.3.3 [fund.ts.v2::meta.logical] | [fund.ts.v2] Specification of logical operator traits uses BaseCharacteristic, which is defined only for
UnaryTypeTraits and BinaryTypeTraits |
Yes | 2 | |
| 2569 | C++17 | 21.3.10 [meta.logical] | conjunction and disjunction requirements are too strict |
Yes | 2 | |
| 2570 | TS | 3.3.3 [fund.ts.v2::meta.logical] | [fund.ts.v2] conjunction and disjunction requirements are too strict |
Yes | 2 | |
| 2571 | C++17 | 23.4.3.4 [map.modifiers] | §[map.modifiers]/2 imposes nonsensical requirement on insert(InputIterator, InputIterator) |
Yes | 0 | |
| 2572 | C++17 | 20.3.2.2.6 [util.smartptr.shared.obs] | The remarks for shared_ptr::operator* should apply to cv-qualified void as well |
Yes | 0 | |
| 2573 | TS | 8.2.1 [fund.ts.v2::memory.smartptr.shared] | [fund.ts.v2] std::hash<std::experimental::shared_ptr<T>> does not work for arrays |
Yes | 0 | |
| 2574 | TS | 4.2.1 [fund.ts.v2::func.wrap.func.con] | [fund.ts.v2] std::experimental::function::operator=(F&&) should be constrained |
Yes | 0 | |
| 2575 | TS | 4.2 [fund.ts.v2::func.wrap.func] | [fund.ts.v2] experimental::function::assign should be removed |
Yes | 0 | |
| 2576 | C++17 | 24.6 [stream.iterators] | istream_iterator and ostream_iterator should use std::addressof |
Yes | 0 | |
| 2577 | C++17 | 32.6.5.4.2 [thread.lock.unique.cons] | {shared,unique}_lock should use std::addressof |
Yes | 0 | |
| 2578 | C++17 | 24.3 [iterator.requirements] | Iterator requirements should reference iterator traits | Yes | 3 | |
| 2579 | C++17 | 27.4.3.7.3 [string.assign] | Inconsistency wrt Allocators in basic_string assignment vs. basic_string::assign |
Yes | 0 | |
| 2580 | NAD | 27.4.3.3 [string.cons] | Who is definitive: operator= or assign? |
Yes | 4 | |
| 2581 | C++17 | 21.3.3 [meta.type.synop] | Specialization of <type_traits> variable templates should be prohibited |
Yes | 0 | |
| 2582 | C++17 | 21 [meta] | §[res.on.functions]/2's prohibition against incomplete types shouldn't apply to type traits | Yes | 0 | |
| 2583 | C++17 | 27.4.3.3 [string.cons] | There is no way to supply an allocator for basic_string(str, pos) |
Yes | 0 | |
| 2584 | C++17 | 28.6.12 [re.grammar] | <regex> ECMAScript IdentityEscape is ambiguous |
Yes | 2 | |
| 2585 | C++17 | 23.3.7.5 [forward.list.modifiers] | forward_list::resize(size_type, const value_type&) effects incorrect |
Yes | 0 | |
| 2586 | C++17 | 20.6.4 [allocator.adaptor.members] | Wrong value category used in scoped_allocator_adaptor::construct() |
Yes | 0 | |
| 2587 | C++17 | 21.3.10 [meta.logical] | "Convertible to bool" requirement in conjunction and disjunction |
Yes | 3 | |
| 2588 | TS | 3.3.3 [fund.ts.v2::meta.logical] | [fund.ts.v2] "Convertible to bool" requirement in conjunction and disjunction |
Yes | 3 | |
| 2589 | C++17 | 28.6.9 [re.results] | match_results can't satisfy the requirements of a container |
Yes | 3 | |
| 2590 | C++17 | 23.3.3.1 [array.overview] | Aggregate initialization for std::array |
Yes | 0 | |
| 2591 | C++17 | 22.10.17.3.6 [func.wrap.func.targ] | std::function's member template target() should not lead to undefined behaviour |
Yes | 3 | |
| 2592 | New | 30.2 [time.syn] | Require that chrono::duration_casts from smaller durations to larger durations do not overflow |
Yes | 4 | |
| 2593 | C++20 | 16.4.4.6 [allocator.requirements] | Moved-from state of Allocators | Yes | 4 | |
| 2594 | New | 20.3.2.2 [util.smartptr.shared] | Contradicting definition of empty shared_ptr on shared_ptr(nullptr, d) |
Yes | 3 | |
| 2595 | New | 24.5.1.2 [reverse.iterator] | reverse_iterator::operator[]'s return type revisited |
Yes | 3 | |
| 2596 | C++17 | 23.3.13.4 [vector.data] | vector::data() should use addressof |
Yes | 0 | |
| 2597 | C++20 | 29.4.8 [complex.transcendentals] | std::log misspecified for complex numbers |
Yes | 3 | |
| 2598 | C++17 | 20.2.11 [specialized.addressof] | addressof works on temporaries |
Yes | 3 | |
| 2599 | New | 22.2.6 [declval] | Library incomplete type permission phrase is unclear | No | 3 | |
| 2600 | NAD | 31.5.2.6 [ios.base.storage] | ios_base must store inaccessible iostate flags |
Yes | ||
| 2601 | TS | 1 [filesys.ts::fs.scope] | [filesys.ts] [PDTS] Make namespaces consistent with Library TS policy | Yes | ||
| 2602 | TS | 2.1 [filesys.ts::fs.conform.9945] | [filesys.ts] [PDTS] Tighten specification when there is no reasonable behavior | Yes | ||
| 2603 | TS | 4.7 [filesys.ts::fs.def.filename] | [filesys.ts] [PDTS] Filename length needs bullet item | Yes | ||
| 2604 | NAD | 4.14 [filesys.ts::fs.def.parent] | [filesys.ts] [PDTS] Need definition of dot and dot-dot | Yes | ||
| 2605 | TS | 8.1 [filesys.ts::path.generic] | [filesys.ts] [PDTS] Parent of root directory unspecified | Yes | ||
| 2606 | TS | 4.15 [filesys.ts::fs.def.path] | [filesys.ts] [PDTS] Path depth is underspecified | Yes | ||
| 2607 | TS | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] Unhelpful comment for struct space_info |
Yes | ||
| 2608 | TS | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] file_time_type underspecified |
Yes | ||
| 2609 | TS | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] Unclear why range-based-for functions return different types | Yes | ||
| 2610 | NAD | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] Apparently inconsistent return types from several functions | Yes | ||
| 2611 | NAD Future | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] Lack of relative() operation function |
Yes | ||
| 2612 | NAD Future | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] uintmax_t too small for large file sizes |
Yes | ||
| 2613 | NAD | 7 [filesys.ts::fs.err.report] | [filesys.ts] [PDTS] Missing actual error conditions thrown | Yes | ||
| 2614 | TS | 8.4.1 [filesys.ts::path.construct] | [filesys.ts] [PDTS] Incorrect postconditions for path copy/move constructor |
Yes | ||
| 2615 | TS | 8.2.2 [filesys.ts::path.type.cvt] | [filesys.ts] [PDTS] Missing behavior for characters with no representation | Yes | ||
| 2616 | TS | 8.4.3 [filesys.ts::path.append] | [filesys.ts] [PDTS] Append behavior underspecified if target is empty | Yes | ||
| 2617 | NAD | 8.4.5 [filesys.ts::path.modifiers] | [filesys.ts] [PDTS] path member swap() unnecessary |
Yes | ||
| 2618 | TS | 8.4.10 [filesys.ts::path.query] | [filesys.ts] [PDTS] is_absolute() return clause confusing |
Yes | ||
| 2619 | TS | 8.6.1 [filesys.ts::path.io] | [filesys.ts] [PDTS] Consider using quoted manipulators | Yes | ||
| 2621 | TS | 12.3 [filesys.ts::directory_entry.obs] | [filesys.ts] [PDTS] directory_entry operator== needs clarification |
Yes | ||
| 2622 | TS | 13.1 [filesys.ts::directory_iterator.members] | [filesys.ts] [PDTS] directory_iterator underspecified |
Yes | ||
| 2623 | NAD | 15 [filesys.ts::fs.op.funcs] | [filesys.ts] [PDTS] Request for create_regular_file() and/or touch() |
Yes | ||
| 2624 | TS | 15.3 [filesys.ts::fs.op.copy] | [filesys.ts] [PDTS] Incorrect effects clause for path copy |
Yes | ||
| 2625 | TS | 15.4 [filesys.ts::fs.op.copy_file] | [filesys.ts] [PDTS] Copying equivalent paths effects not specified | Yes | ||
| 2626 | NAD | 15.13 [filesys.ts::fs.op.equivalent] | [filesys.ts] [PDTS] Equivalence is a volatile property | Yes | ||
| 2627 | TS | 15.14 [filesys.ts::fs.op.file_size] | [filesys.ts] [PDTS] Return value of uintmax_t on error? |
Yes | ||
| 2628 | NAD | 15.25 [filesys.ts::fs.op.last_write_time] | [filesys.ts] [PDTS] Possible last_write_time() postcondition? |
Yes | ||
| 2629 | TS | 15.27 [filesys.ts::fs.op.read_symlink] | [filesys.ts] [PDTS] Unclear semantics of read_symlink on error |
Yes | ||
| 2630 | NAD | 15.28 [filesys.ts::fs.op.remove] | [filesys.ts] [PDTS] remove() must avoid race |
Yes | ||
| 2631 | NAD | 15.30 [filesys.ts::fs.op.rename] | [filesys.ts] [PDTS] POSIX guarantees atomicity for rename() |
Yes | ||
| 2632 | TS | 15.36 [filesys.ts::fs.op.system_complete] | [filesys.ts] [PDTS] system_complete() example needs clarification |
Yes | ||
| 2633 | TS | 15 [filesys.ts::fs.op.funcs] | [filesys.ts] [PDTS] unique_path() is a security vulnerability |
Yes | ||
| 2634 | TS | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts]
[PDTS] enum class directory_options has no summary
|
Yes | ||
| 2635 | TS | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] directory_options::skip_permission_denied is not used |
Yes | ||
| 2636 | TS | 10.2 [filesys.ts::enum.copy_options] | [filesys.ts] [PDTS] copy_options::copy_symlinks is not used |
Yes | ||
| 2637 | TS | 15.2 [filesys.ts::fs.op.canonical] | [filesys.ts] [PDTS] All functions with error_code arguments should be noexcept |
Yes | ||
| 2638 | NAD | 12.3 [filesys.ts::directory_entry.obs] | [filesys.ts] [PDTS] Make certain functions noexcept and drop error_code version |
Yes | ||
| 2639 | NAD Editorial | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] [PDTS] permissions() is missing from synopsis |
Yes | ||
| 2640 | TS | 12 [filesys.ts::class.directory_entry] | [filesys.ts] [PDTS] class directory_entry should retain operator const path&() from V2 |
Yes | ||
| 2641 | TS | 13 [filesys.ts::class.directory_iterator] | [filesys.ts] [PDTS] directory_iterator, recursive_directory_iterator, move construct/assign should be noexcept |
Yes | ||
| 2642 | NAD | 8 [filesys.ts::class.path] | [filesys.ts]
[PDTS] class path should have defaulted constructors/destructor/assignments.
|
Yes | ||
| 2643 | Dup | 8 [filesys.ts::class.path] | [filesys.ts] [PDTS] path::compare(const string&) should be path::compare(const string_type&) |
Yes | ||
| 2644 | TS | 10.2 [filesys.ts::enum.copy_options] | [filesys.ts] [PDTS] enum classes copy_options and perms should be bitmask types |
Yes | ||
| 2645 | TS | 15.7 [filesys.ts::fs.op.create_directory] | [filesys.ts]
[PDTS] create_directory should refer to perms::all instead of Posix
S_IRWXU|S_IRWXG|S_IRWXO
|
Yes | ||
| 2646 | NAD | 8.4.7 [filesys.ts::path.generic.obs] | [filesys.ts] [PDTS] Do we really need generic*? |
Yes | ||
| 2647 | TS | 15.25 [filesys.ts::fs.op.last_write_time] | [filesys.ts] [PDTS] last_write_time() uses ill-formed cast |
Yes | ||
| 2648 | TS | 8.4.6 [filesys.ts::path.native.obs] | [filesys.ts] [PDTS] path::template<class charT>string() conversion rules |
Yes | ||
| 2649 | TS | 8.4.1 [filesys.ts::path.construct] | [filesys.ts] [PDTS] path and directory_entry move ctors should not be noexcept |
Yes | ||
| 2650 | TS | 8 [filesys.ts::class.path] | [filesys.ts] [PDTS] path::compare(const string& s) wrong argument type |
Yes | ||
| 2651 | Dup | 13 [filesys.ts::class.directory_iterator] | [filesys.ts] [PDTS] directory_iterator, recursive_directory_iterator, pointer/reference typedefs wrong |
Yes | ||
| 2652 | TS | 13 [filesys.ts::class.directory_iterator] | [filesys.ts] [PDTS] Better to avoid deriving from std::iterator |
Yes | ||
| 2653 | TS | 12 [filesys.ts::class.directory_entry] | [filesys.ts] [PDTS] directory_entry multithreading concerns |
Yes | ||
| 2654 | NAD Future | 1 [filesys.ts::fs.scope] | [filesys.ts] [PDTS] Concerns with security and testability | Yes | ||
| 2655 | TS | 7 [filesys.ts::fs.err.report] | [filesys.ts] [PDTS] Clarify Error reporting | Yes | ||
| 2656 | TS | 5 [filesys.ts::fs.req] | [filesys.ts] [PDTS] Feature test macro for TS version | Yes | ||
| 2657 | TS | 2.1 [filesys.ts::fs.conform.9945] | [filesys.ts] [PDTS] Inappropriate use of "No diagnostic is required" | Yes | ||
| 2658 | TS | 15.25 [filesys.ts::fs.op.last_write_time] | [filesys.ts] [PDTS] POSIX utime() is obsolescent |
Yes | ||
| 2659 | NAD Editorial | 10 [filesys.ts::fs.enum] | [filesys.ts] [PDTS] Invalid expressions for bitmask types | Yes | ||
| 2660 | TS | 15.1 [filesys.ts::fs.op.absolute] | [filesys.ts] [PDTS] Incorrect Throws specification for absolute() |
Yes | ||
| 2661 | NAD | 6 [filesys.ts::fs.filesystem.synopsis] | [filesys.ts] Surprising equivalent() behavior if neither file exists |
Yes | ||
| 2662 | TS | 5 [filesys.ts::fs.req] | [filesys.ts] Allocator requirements unspecified | Yes | ||
| 2663 | Resolved | 31.12.13.15 [fs.op.file.size] | Enable efficient retrieval of file size from directory_entry |
Yes | 2 | |
| 2664 | C++17 | 31.12.6.5.3 [fs.path.append] | operator/ (and other append) semantics not useful if argument has root |
Yes | 2 | |
| 2665 | Resolved | 31.12.6.5.5 [fs.path.modifiers] | remove_filename() post condition is incorrect |
Yes | 1 | |
| 2666 | NAD Editorial | 31.12 [filesystems] | Bitmask operations should use bitmask terms | Yes | 3 | |
| 2667 | C++17 | 31.12.6.5.9 [fs.path.decompose] | path::root_directory() description is confusing |
Yes | 0 | |
| 2668 | NAD | 31.12.6 [fs.class.path] | path::operator+= is defined, but not operator+ |
Yes | 3 | |
| 2669 | C++17 | 31.12.12.2 [fs.rec.dir.itr.members] | recursive_directory_iterator effects refers to non-existent functions
|
Yes | 0 | |
| 2670 | C++17 | 99 [fs.op.system_complete] | system_complete refers to undefined variable 'base'
|
Yes | 0 | |
| 2671 | C++17 | 31.12.13.4 [fs.op.copy] | Errors in Copy | Yes | 0 | |
| 2672 | C++17 | 31.12.13.20 [fs.op.is.empty] | Should is_empty use error_code in its specification? | Yes | 3 | |
| 2673 | C++17 | 31.12.13.36 [fs.op.status] | status() effects cannot be implemented as specified |
Yes | 0 | |
| 2674 | C++17 | 31.12.6.6 [fs.path.itr] | Bidirectional iterator requirement on path::iterator
is very expensive |
Yes | 2 | |
| 2675 | New | 31.5.2.7 [ios.base.callback] | register_callback can fail |
No | 3 | |
| 2676 | C++17 | 31.10 [file.streams] | Provide filesystem::path overloads for File-based streams |
Yes | 2 | |
| 2677 | Resolved | 31.12.10.4 [fs.dir.entry.obs] | directory_entry::status is not allowed to be cached as a quality-of-implementation issue |
Yes | 2 | |
| 2678 | C++17 | 31.12.8.2 [fs.enum.file.type] | std::filesystem enum classes overspecified |
Yes | 3 | |
| 2679 | C++17 | 16.3.2.4 [structure.specifications] | Inconsistent Use of Effects and Equivalent To | Yes | 3 | |
| 2680 | C++17 | 31.12 [filesystems] | Add "Equivalent to" to filesystem | Yes | 2 | |
| 2681 | C++17 | 31.12.13.4 [fs.op.copy] | filesystem::copy() cannot copy symlinks |
Yes | 2 | |
| 2682 | C++20 | 31.12.13.4 [fs.op.copy] | filesystem::copy() won't create a symlink to a directory |
Yes | 2 | |
| 2683 | C++17 | 31.12.13.4 [fs.op.copy] | filesystem::copy() says "no effects" |
Yes | 3 | |
| 2684 | C++17 | 23.6.4 [priority.queue] | priority_queue lacking comparator typedef | Yes | 0 | |
| 2685 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr deleters must not not throw on move construction |
Yes | 0 | |
| 2686 | C++17 | 19.5.2 [system.error.syn] | Why is std::hash specialized for error_code, but not error_condition? |
Yes | 3 | |
| 2687 | C++17 | 26.10.8 [exclusive.scan] | {inclusive,exclusive}_scan misspecified |
Yes | 1 | |
| 2688 | C++17 | 26.8.10 [alg.clamp] | clamp misses preconditions and has extraneous condition on result |
Yes | 0 | |
| 2689 | C++17 | 26.7.1 [alg.copy] | Parallel versions of std::copy and std::move shouldn't be in order |
Yes | 0 | |
| 2690 | Resolved | 22.10.5 [func.invoke] | invoke<R> |
Yes | ||
| 2691 | New | 28.3.4.7.4 [locale.moneypunct] | money_base::space and do_put: U+0020 versus fill |
Yes | 3 | |
| 2692 | NAD | 16.3.3.3.3 [bitmask.types] | Overspecification of lvalueness of bitmask elements | Yes | 3 | |
| 2693 | Resolved | 29.4 [complex.numbers] | constexpr for various std::complex arithmetic and value operators |
Yes | 3 | |
| 2694 | C++17 | 28.3.3.1.2.2 [locale.facet] | Application of LWG 436 accidentally deleted definition of "facet" | Yes | 3 | |
| 2695 | New | 16.4.6.5 [member.functions] | "As if" unclear in [member.functions] | No | 3 | |
| 2696 | C++17 | 20.3.2.2.7 [util.smartptr.shared.create] | Interaction between make_shared and enable_shared_from_this is underspecified |
Yes | 2 | |
| 2697 | C++23 | 99 [concurr.ts::futures.unique_future] | [concurr.ts] Behavior of future/shared_future unwrapping constructor when given an invalid future |
Yes | 2 | |
| 2698 | C++17 | 23.2.4 [sequence.reqmts] | Effect of assign() on iterators/pointers/references |
Yes | 0 | |
| 2699 | C++17 | 29.2 [numeric.requirements] | Missing restriction in [numeric.requirements] | Yes | 3 | |
| 2700 | NAD | 20.5 [mem.res] | resource_adaptor went missing |
Yes | 1 | |
| 2701 | NAD Editorial | 20.5.2.3 [mem.res.private] | Unclear requirement in [memory.resource.private] | Yes | 3 | |
| 2702 | New | 28.3.4.3.3.3 [facet.num.put.virtuals] | num_put::do_put(..., bool) performs ill-formed do_put call |
No | 3 | |
| 2703 | New | 28.3.4.3.3.3 [facet.num.put.virtuals] | No provision for fill-padding when boolalpha is set |
No | 3 | |
| 2704 | C++17 | 31.12.12.2 [fs.rec.dir.itr.members] | recursive_directory_iterator's members should require '*this is dereferenceable' |
Yes | 1 | |
| 2705 | New | 23.2.4 [sequence.reqmts] | Questionable precondition on Sequence containers a.assign(n, t) |
Yes | 3 | |
| 2706 | C++17 | 31.12.12 [fs.class.rec.dir.itr] | Error reporting for recursive_directory_iterator::pop() is under-specified |
Yes | 0 | |
| 2707 | C++17 | 31.12.6 [fs.class.path] | path construction and assignment should have "string_type&&" overloads |
Yes | 0 | |
| 2708 | Open | 31.12.12.2 [fs.rec.dir.itr.members] | recursive_directory_iterator::recursion_pending() is incorrectly specified |
Yes | 2 | |
| 2709 | C++17 | 17.2 [support.types] | offsetof is unnecessarily imprecise |
Yes | 2 | |
| 2710 | C++17 | 16.3.2.4 [structure.specifications] | "Effects: Equivalent to ..." doesn't count "Synchronization:" as determined semantics | Yes | 0 | |
| 2711 | C++17 | 31.12.6.5.1 [fs.path.construct] | path is convertible from approximately everything under the sun |
Yes | 1 | |
| 2712 | C++17 | 31.12.13.5 [fs.op.copy.file] | copy_file(from, to, ...) has a number of unspecified error conditions |
Yes | 2 | |
| 2713 | New | 23.5 [unord] | More missing allocator-extended constructors for unordered containers | Yes | 3 | |
| 2714 | New | 29.4.6 [complex.ops] | complex stream extraction underspecified |
Yes | 3 | |
| 2715 | Resolved | 32.5.8 [atomics.types.generic] | What is 'aggregate initialization syntax'? | Yes | 3 | |
| 2716 | C++17 | 26.7.12 [alg.random.sample] | Specification of shuffle and sample disallows lvalue URNGs |
Yes | 0 | |
| 2717 | NAD | 20.6.4 [allocator.adaptor.members] | scoped_allocator_adaptor uses forward to do move's job |
Yes | ||
| 2718 | C++17 | 26.3.3 [algorithms.parallel.exec] | Parallelism bug in [algorithms.parallel.exec] p2 | Yes | ||
| 2719 | C++17 | 31.12.13.27 [fs.op.permissions] | permissions function should not be noexcept due to narrow contract |
Yes | 0 | |
| 2720 | C++17 | 31.12.13.27 [fs.op.permissions] | permissions function incorrectly specified for symlinks |
Yes | 2 | |
| 2721 | C++17 | 31.12.13.32 [fs.op.remove.all] | remove_all has incorrect post conditions |
Yes | 3 | |
| 2722 | C++17 | 31.12.13.13 [fs.op.equivalent] | equivalent incorrectly specifies throws clause |
Yes | 3 | |
| 2723 | C++17 | 31.12.11 [fs.class.directory.iterator] | Do directory_iterator and recursive_directory_iterator become the end iterator upon error? |
Yes | 0 | |
| 2724 | C++17 | 20.5.2 [mem.res.class] | The protected virtual member functions of memory_resource should be private |
Yes | 4 | |
| 2725 | C++17 | 31.12.13.14 [fs.op.exists] | filesystem::exists(const path&, error_code&) error reporting |
Yes | 1 | |
| 2726 | C++17 | 31.12.11.2 [fs.dir.itr.members] | [recursive_]directory_iterator::increment(error_code&) is underspecified |
Yes | 0 | |
| 2727 | C++17 | 26.1 [algorithms.general] | Parallel algorithms with constexpr specifier |
Yes | 0 | |
| 2728 | C++17 | 31.12.13.36 [fs.op.status] | status(p).permissions() and symlink_status(p).permissions() are not specified |
Yes | 0 | |
| 2729 | C++17 | 22.3.2 [pairs.pair] | Missing SFINAE on std::pair::operator= |
Yes | 2 | |
| 2730 | Open | 17.3.5 [numeric.limits] | numeric_limits primary template definition |
No | 3 | |
| 2731 | C++23 | 32.6.5.2 [thread.lock.guard] | Existence of lock_guard<MutexTypes...>::mutex_type typedef unclear |
Yes | 3 | |
| 2732 | C++17 | 31.12.6.5.3 [fs.path.append] | Questionable specification of path::operator/= and path::append |
Yes | 2 | |
| 2733 | TS | 13.1.2 [fund.ts.v2::numeric.ops.gcd] | [fund.ts.v2] gcd / lcm and bool |
Yes | 4 | |
| 2734 | Resolved | 31.12.6.5.4 [fs.path.concat] | Questionable specification in [fs.path.concat] | Yes | 2 | |
| 2735 | C++17 | 29.7 [c.math] | std::abs(short), std::abs(signed char) and others should return int instead of
double in order to be compatible with C++98 and C |
Yes | 3 | |
| 2736 | C++17 | 22.5.5 [optional.nullopt] | nullopt_t insufficiently constrained |
Yes | 2 | |
| 2737 | New | 17.6.3.2 [new.delete.single] | Consider relaxing object size restrictions for single-object allocation functions | No | 3 | |
| 2738 | C++17 | 21.3.6.4 [meta.unary.prop] | is_constructible with void types |
Yes | ||
| 2739 | C++17 | 30.6.6 [time.point.nonmember] | Issue with time_point non-member subtraction with an unsigned duration |
Yes | 0 | |
| 2740 | C++17 | 22.5.3.7 [optional.observe] | constexpr optional<T>::operator-> |
Yes | 0 | |
| 2741 | Resolved | 26.8.5 [alg.partitions] | is_partitioned requirements need updating |
Yes | 3 | |
| 2742 | C++17 | 27.4.3.3 [string.cons] | Inconsistent string interface taking string_view |
Yes | 1 | |
| 2743 | C++23 | 23.2.5.1 [container.node.overview] | p0083r3 node_handle private members missing "exposition only" comment |
Yes | 3 | |
| 2744 | C++17 | 22.7.4.2 [any.cons] | any's in_place constructors |
Yes | 0 | |
| 2745 | TS | 5.3 [fund.ts.v2::optional.object] | [fund.ts.v2] Implementability of LWG 2451 | Yes | 0 | |
| 2746 | New | 22.5.3.4 [optional.assign] | Inconsistency between requirements for emplace between optional and variant |
Yes | 3 | |
| 2747 | C++17 | 26.6.5 [alg.foreach] | Possibly redundant std::move in [alg.foreach] |
Yes | 0 | |
| 2748 | C++17 | 22.5.3.5 [optional.swap] | swappable traits for optionals |
Yes | 0 | |
| 2749 | C++17 | 22.6.3.7 [variant.swap] | swappable traits for variants |
Yes | 1 | |
| 2750 | TS | 5.3.1 [fund.ts.v2::optional.object.ctor] | [fund.ts.v2] LWG 2451 conversion constructor constraint | Yes | 0 | |
| 2751 | New | 20.3.2.2.3 [util.smartptr.shared.dest] | shared_ptr deleter not specified to observe expired weak_ptr instances |
No | 4 | |
| 2752 | C++17 | 32.10.9 [futures.async] | "Throws:" clauses of async and packaged_task are unimplementable |
Yes | 3 | |
| 2753 | Resolved | 22.5.3.2 [optional.ctor] | Optional's constructors and assignments need constraints | Yes | 0 | |
| 2754 | Resolved | 22.7.4.2 [any.cons] | The in_place constructors and emplace functions added by P0032R3 don't require CopyConstructible |
Yes | 1 | |
| 2755 | C++17 | 27.3.5 [string.view.io] | §[string.view.io] uses non-existent basic_string_view::to_string function |
Yes | 0 | |
| 2756 | C++17 | 22.5.3 [optional.optional] | C++ WP optional<T> should 'forward' T's implicit conversions |
Yes | 1 | |
| 2757 | Resolved | 27.4.3.7.4 [string.insert] | std::string{}.insert(3, "ABCDE", 0, 1) is ambiguous |
Yes | 1 | |
| 2758 | C++17 | 27.4.3.7.3 [string.assign] | std::string{}.assign("ABCDE", 0, 1) is ambiguous |
Yes | 1 | |
| 2759 | C++17 | 26.10.14 [numeric.ops.gcd] | gcd / lcm and bool for the WP |
Yes | ||
| 2760 | C++17 | 27.4.3.2 [string.require] | non-const basic_string::data should not invalidate iterators |
Yes | ||
| 2761 | NAD | 31.12.10.4 [fs.dir.entry.obs] | directory_entry comparisons are members |
Yes | 2 | |
| 2762 | C++23 | 20.3.1.3.5 [unique.ptr.single.observers] | unique_ptr operator*() should be noexcept |
Yes | 3 | |
| 2763 | Resolved | 21.3.9.7 [meta.trans.other] | common_type_t<void, void> is undefined |
Yes | 2 | |
| 2764 | Dup | 17.4.1 [cstdint.syn] | Are <cstddint> macros optional? |
Yes | 3 | |
| 2765 | C++17 | 31.5.2.2.6 [ios.init] | Did LWG 1123 go too far? | Yes | 0 | |
| 2766 | New | 22.3.3 [pairs.spec] | Swapping non-swappable types | Yes | 3 | |
| 2767 | C++17 | 22.10.13 [func.not.fn] | not_fn call_wrapper can form invalid types |
Yes | 0 | |
| 2768 | C++17 | 22.7.5 [any.nonmembers] | any_cast and move semantics |
Yes | 0 | |
| 2769 | C++17 | 22.7.5 [any.nonmembers] | Redundant const in the return type of any_cast(const any&) |
Yes | 0 | |
| 2770 | C++17 | 22.4.7 [tuple.helper] | tuple_size<const T> specialization is not SFINAE compatible and breaks decomposition declarations |
Yes | 1 | |
| 2771 | C++17 | 27.4.3.8.4 [string.compare] | Broken Effects of some basic_string::compare functions in terms of basic_string_view |
Yes | 1 | |
| 2772 | NAD | 23.2.7 [associative.reqmts] | Inconsistency in the insert(node) interface |
Yes | 2 | |
| 2773 | C++17 | 22.4.1 [tuple.general] | Making std::ignore constexpr |
Yes | 0 | |
| 2774 | C++23 | 22.10.17.3.2 [func.wrap.func.con] | std::function construction vs assignment |
Yes | 3 | |
| 2775 | Dup | 24.5.1.6 [reverse.iter.elem] | reverse_iterator is does not compile for fancy pointers |
Yes | 1052 | |
| 2776 | Resolved | 20.3.2.2.6 [util.smartptr.shared.obs] | shared_ptr unique() and use_count() |
Yes | 2 | |
| 2777 | C++17 | 27.3.3.8 [string.view.ops] | basic_string_view::copy should use char_traits::copy |
Yes | 0 | |
| 2778 | C++17 | 27.3 [string.view] | basic_string_view is missing constexpr |
Yes | 0 | |
| 2779 | C++23 | 16.2.1 [networking.ts::buffer.reqmts.mutablebuffersequence] | [networking.ts] Relax requirements on buffer sequence iterators | Yes | ||
| 2780 | Resolved | 27.3 [string.view] | basic_string_view::copy is missing constexpr |
Yes | 2 | |
| 2781 | C++17 | 22.10.17.3.2 [func.wrap.func.con] | Contradictory requirements for std::function and std::reference_wrapper |
Yes | 0 | |
| 2782 | C++17 | 20.6.3 [allocator.adaptor.cnstr] | scoped_allocator_adaptor constructors must be constrained |
Yes | 0 | |
| 2783 | C++20 | 23.6.3.1 [queue.defn] | stack::emplace() and queue::emplace() should return decltype(auto) |
Yes | 2 | |
| 2784 | C++17 | 17.9.8 [except.nested] | Resolution to LWG 2484 is missing "otherwise, no effects" and is hard to parse | Yes | 0 | |
| 2785 | C++17 | 31.7.9 [quoted.manip] | quoted should work with basic_string_view |
Yes | 0 | |
| 2786 | C++17 | C.4.9 [diff.cpp14.utilities] | Annex C should mention shared_ptr changes for array support |
Yes | 0 | |
| 2787 | C++17 | 31.12.9 [fs.class.file.status] | §[fs.file_status.cons] doesn't match class definition | Yes | 0 | |
| 2788 | C++17 | 27.4.3.7.2 [string.append] | basic_string range mutators unintentionally require a default constructible allocator |
Yes | 2 | |
| 2789 | C++17 | 22.7.4 [any.class] | Equivalence of contained objects | Yes | 0 | |
| 2790 | C++17 | 24.6.4 [istreambuf.iterator] | Missing specification of istreambuf_iterator::operator-> |
Yes | 3 | |
| 2791 | Resolved | 27.3.6 [string.view.hash] | string_view objects and strings should yield the same hash values |
Yes | ||
| 2792 | TS | 13.1.2 [fund.ts.v2::numeric.ops.gcd] | [fund.ts.v2] gcd and lcm should support a wider range of input values |
Yes | ||
| 2793 | C++17 | 24.6.2.2 [istream.iterator.cons] | Awkward conflation of trivial special members of istream_iterator |
Yes | ||
| 2794 | C++17 | 23.2.2 [container.requirements.general] | Missing requirements for allocator pointers | Yes | 0 | |
| 2795 | C++17 | 16.4.6.4 [global.functions] | §[global.functions] provides incorrect example of ADL use | Yes | ||
| 2796 | C++17 | 22.4.1 [tuple.general] | tuple should be a literal type |
Yes | 2 | |
| 2797 | Resolved | 21.3.3 [meta.type.synop] | Trait precondition violations | Yes | 2 | |
| 2798 | Resolved | 31.12.6 [fs.class.path] | Definition of path in terms of a string | Yes | 2 | |
| 2799 | Resolved | 32.10.8 [futures.shared.future] | noexcept-specifications in shared_future |
Yes | 2 | |
| 2800 | Resolved | 22.2.2 [utility.swap] | constexpr swap |
Yes | 3 | |
| 2801 | C++17 | 20.3.1.3.2 [unique.ptr.single.ctor] | Default-constructibility of unique_ptr |
Yes | 2 | |
| 2802 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr constructor requirements for a deleter |
Yes | 2 | |
| 2803 | Resolved | 22.10.19 [unord.hash] | hash for arithmetic, pointer and standard library types should not throw |
Yes | 3 | |
| 2804 | C++17 | 24.6.2.2 [istream.iterator.cons] | Unconditional constexpr default constructor for istream_iterator |
Yes | 0 | |
| 2805 | Resolved | 22.6 [variant] | void and reference type alternatives in variant, variant<> and
index() |
Yes | ||
| 2806 | C++17 | 22.5.6 [optional.bad.access] | Base class of bad_optional_access |
Yes | 1 | |
| 2807 | C++17 | 22.10.5 [func.invoke] | std::invoke should use std::is_nothrow_callable |
Yes | 3 | |
| 2808 | Resolved | 31.5.3.3 [fpos.operations] | Requirements for fpos and stateT |
Yes | 4 | |
| 2809 | Resolved | 22.6.12 [variant.hash] | variant hash requirements |
Yes | ||
| 2810 | Resolved | 20.3.2.2 [util.smartptr.shared] | use_count and unique in shared_ptr |
Yes | ||
| 2811 | New | 22.5.3.2 [optional.ctor] | "Selected constructor" wording is incorrect for optional/variant/any |
Yes | 3 | |
| 2812 | C++17 | 24.7 [iterator.range] | Range access is available with <string_view> |
Yes | 0 | |
| 2813 | Resolved | 22.10.17.3.2 [func.wrap.func.con] | std::function should not return dangling references |
Yes | 2 | |
| 2814 | Resolved | 4.2.1 [fund.ts.v2::func.wrap.func.con] | [fund.ts.v2] to_array should take rvalue reference as well |
Yes | 3 | |
| 2815 | New | 17.5 [support.start.term] | quick_exit can deadlock |
Yes | 3 | |
| 2816 | C++20 | 31.12.13.34 [fs.op.resize.file] | resize_file has impossible postcondition |
Yes | 3 | |
| 2817 | Resolved | 22.10.19 [unord.hash] | std::hash for nullptr_t |
Yes | ||
| 2818 | C++23 | 16.4.2.2 [contents] | "::std::" everywhere rule needs tweaking |
Yes | 2 | |
| 2819 | New | 32.2.5 [thread.req.lockable] | Unspecified Return type: elements | Yes | 3 | |
| 2820 | C++23 | 17.4.1 [cstdint.syn] | Clarify <cstdint> macros |
Yes | 3 | |
| 2821 | Resolved | 17.6.5 [ptr.launder] | std::launder() should be marked as [[nodiscard]] |
Yes | 3 | |
| 2822 | NAD | 27.4.3.3 [string.cons] | Resolution for LWG 2742 introduces ambiguities | Yes | ||
| 2823 | Open | 23.3.3.1 [array.overview] | std::array initialization is still not permissive enough |
Yes | 3 | |
| 2824 | C++17 | 23.3.11.5 [list.ops] | list::sort should say that the order of elements is unspecified if an exception is thrown |
Yes | 0 | |
| 2825 | Resolved | 22.5.3 [optional.optional] | LWG 2756 breaks class template argument deduction for optional |
Yes | 2 | |
| 2826 | C++17 | 27.3.3.4 [string.view.iterators] | string_view iterators use old wording |
Yes | 0 | |
| 2827 | New | 21.3.6.4 [meta.unary.prop] | is_trivially_constructible and non-trivial destructors |
No | 3 | |
| 2828 | NAD Editorial | 21.3.6.4 [meta.unary.prop] | Clarify <cstdalign> (following adoption of P0063r3) |
Yes | ||
| 2829 | Open | 22.5.3.7 [optional.observe] | LWG 2740 leaves behind vacuous words | No | 2 | |
| 2830 | Resolved | 23.2.7 [associative.reqmts] | insert_return_type is only defined for containers with unique keys |
Yes | ||
| 2831 | Resolved | 23.2.8 [unord.req] | Equality can be defined when Hash function objects have different behaviour |
Yes | ||
| 2832 | Resolved | 31.5.3.3 [fpos.operations] | §[fpos.operations] strange requirement for P(i) |
Yes | 3 | |
| 2833 | Open | 22.6.3.2 [variant.ctor] | Library needs to specify what it means when it declares a function constexpr |
Yes | 2 | |
| 2834 | C++17 | 27.4.3.5 [string.capacity] | Resolution LWG 2223 is missing wording about end iterators | Yes | 0 | |
| 2835 | C++17 | 17.15 [support.c.headers] | LWG 2536 seems to misspecify <tgmath.h> |
Yes | 0 | |
| 2836 | Resolved | 27.4.3 [basic.string] | More string operations should be noexcept |
Yes | 2 | |
| 2837 | C++17 | 26.10.14 [numeric.ops.gcd] | gcd and lcm should support a wider range of input values |
Yes | 0 | |
| 2838 | C++17 | D.13 [depr.meta.types] | is_literal_type specification needs a little cleanup |
Yes | 0 | |
| 2839 | C++23 | 16.4.6.17 [lib.types.movedfrom] | Self-move-assignment of library types, again | Yes | 2 | |
| 2840 | Resolved | 31.12.11.2 [fs.dir.itr.members] | directory_iterator::increment is seemingly narrow-contract but marked noexcept |
Yes | 2 | |
| 2841 | Resolved | 27 [strings] | Use of "Equivalent to" in [strings] | Yes | 3 | |
| 2842 | C++17 | 22.5.3.2 [optional.ctor] | in_place_t check for optional::optional(U&&) should decay U |
Yes | 0 | |
| 2843 | C++20 | 20.5.2.3 [mem.res.private] | Unclear behavior of std::pmr::memory_resource::do_allocate() |
Yes | 3 | |
| 2844 | Open | 23.2.7 [associative.reqmts] | Stability of a_uniq.insert(i, j) |
No | 3 | |
| 2845 | New | 21.3.2 [meta.rqmts] | enable_if, result_of, common_type and aligned_storage do not meet the definition
of TransformationTrait |
No | 3 | |
| 2846 | New | 29.4.10 [cmplx.over] | Undefined phrase "effectively cast" | Yes | 3 | |
| 2847 | New | 29.7.1 [cmath.syn] | sin(float) should call sinf(float) |
No | 3 | |
| 2848 | New | 20.5.5.2 [mem.res.pool.options] | Pass-through threshold for pool allocator | No | 3 | |
| 2849 | C++20 | 31.12.13.5 [fs.op.copy.file] | Why does !is_regular_file(from) cause copy_file to report a "file already exists" error? |
Yes | 2 | |
| 2850 | C++17 | 22.10.17.3.2 [func.wrap.func.con] | std::function move constructor does unnecessary work |
Yes | 0 | |
| 2851 | C++20 | 31.12.8.2 [fs.enum.file.type] | std::filesystem enum classes are now underspecified |
Yes | 2 | |
| 2852 | NAD | 27.4.4.2 [string.cmp] | Specifications of operator== for std::basic_strings and std::basic_string_views are
difficult to conform to |
Yes | 2 | |
| 2853 | C++17 | 23.3.13.5 [vector.modifiers] | Possible inconsistency in specification of erase in [vector.modifiers] |
Yes | 0 | |
| 2854 | NAD | 99 [depr.conversions.string] | wstring_convert provides no indication of incomplete input or output |
Yes | 3 | |
| 2855 | C++17 | 17.9.8 [except.nested] | std::throw_with_nested("string_literal") |
Yes | 0 | |
| 2856 | Resolved | 32.10.9 [futures.async] | std::async should be marked as [[nodiscard]] |
Yes | 2 | |
| 2857 | C++17 | 22.5 [optional] | {variant,optional,any}::emplace should return the constructed value |
Yes | 1 | |
| 2858 | New | 24.5.1 [reverse.iterators] | LWG 2472: actually an incompatibility with C++03 | Yes | 4 | |
| 2859 | C++20 | 17.6.5 [ptr.launder] | Definition of reachable in [ptr.launder] misses pointer arithmetic from pointer-interconvertible object | Yes | 2 | |
| 2860 | NAD | 17.6.5 [ptr.launder] | launder and base class subobjects |
Yes | 2 | |
| 2861 | C++17 | 27.4.3.2 [string.require] | basic_string should require that charT match traits::char_type |
Yes | ||
| 2862 | Resolved | 22.5 [optional] | LWG 2756 should be accepted | Yes | ||
| 2863 | Resolved | 99 [func.default.traits] | Undo default_order changes of maps and sets |
Yes | ||
| 2864 | Resolved | 20.3.2.2 [util.smartptr.shared] | Merge shared_ptr changes from Library Fundamentals to C++17 |
Yes | ||
| 2865 | NAD | 16 [library] | Resolve all open Library issues for C++17 | Yes | ||
| 2866 | C++17 | 16.4.6.13 [derivation] | Incorrect derived classes constraints | Yes | ||
| 2867 | Resolved | 16.4.6.14 [res.on.exception.handling] | Bad footnote about explicit exception-specification | Yes | ||
| 2868 | C++17 | 22.7.3 [any.bad.any.cast] | Missing specification of bad_any_cast::what() |
Yes | ||
| 2869 | Resolved | 99 [depr.locale.stdcvt] | Deprecate sub-clause [locale.stdcvt] | Yes | ||
| 2870 | C++20 | 29.4.7 [complex.value.ops] | Default value of parameter theta of polar should be dependent |
Yes | ||
| 2871 | NAD | 21.3.3 [meta.type.synop] | User specializations of type traits should be ill-formed | Yes | ||
| 2872 | C++17 | 3 [intro.defs] | Add definition for direct-non-list-initialization | Yes | ||
| 2873 | C++17 | 20.3.2.2 [util.smartptr.shared] | Add noexcept to several shared_ptr related functions |
Yes | ||
| 2874 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | Constructor shared_ptr::shared_ptr(Y*) should be constrained |
Yes | ||
| 2875 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr::shared_ptr(Y*, D, […]) constructors should be constrained |
Yes | ||
| 2876 | C++17 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr::shared_ptr(const weak_ptr<Y>&) constructor should be constrained |
Yes | ||
| 2877 | Resolved | 20.3.2.2.10 [util.smartptr.shared.cast] | Strengthen meaning of "empty shared_ptr<T>" in dynamic_pointer_cast |
Yes | ||
| 2878 | C++17 | 24.6.2.2 [istream.iterator.cons] | Missing DefaultConstructible requirement for istream_iterator default constructor |
Yes | ||
| 2879 | Resolved | 17.14.4 [csignal.syn] | Removing C dependencies from signal handler wording | Yes | ||
| 2880 | Resolved | 26.3.3 [algorithms.parallel.exec] | Relax complexity specifications for non-sequenced policies | Yes | ||
| 2881 | New | 22.6.3 [variant.variant] | Adopt section III of P0308R0 | No | 3 | |
| 2882 | Resolved | 22.6.3.2 [variant.ctor] | Clarify variant construction |
Yes | ||
| 2883 | LEWG | 27.3 [string.view] | The standard library should provide string_view parameters instead or in addition for functions
defined with char const * or string const & as parameter types. |
No | ||
| 2884 | LEWG | 23 [containers] | Relational operators for containers should sfinae; if the underlying type is not comparable, neither should the container be | No | ||
| 2885 | LEWG | 23 [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 | ||
| 2886 | NAD | 22.7.4.5 [any.observers] | Keep the empty() functions in any |
Yes | ||
| 2887 | Resolved | 32.6.5.2 [thread.lock.guard] | Revert the changes from P0156R0: variadic lock_guard |
Yes | ||
| 2888 | Resolved | 22 [utilities] | Variables of library tag types need to be inline variables | Yes | ||
| 2889 | Resolved | 22 [utilities] | Mark constexpr global variables as inline |
Yes | ||
| 2890 | C++17 | 99 [defns.obj.state] | The definition of 'object state' applies only to class types | Yes | ||
| 2891 | NAD | 16.4.6 [conforming] | Relax library requirements on volatile types |
Yes | ||
| 2892 | NAD | 16.4.6.7 [constexpr.functions] | Relax the prohibition on libraries adding constexpr |
Yes | 1 | |
| 2893 | NAD | 22 [utilities] | Parsing Hexadecimally in P0067R4 | Yes | ||
| 2894 | Resolved | 22.10.5 [func.invoke] | The function template std::apply() is required to be constexpr, but std::invoke() isn't |
Yes | 3 | |
| 2895 | Resolved | 21.3.8 [meta.rel] | Passing function types to result_of and is_callable |
Yes | ||
| 2896 | Dup | 99 [depr.locale.stdcvt] | The contents of <codecvt> are underspecified |
Yes | ||
| 2897 | Resolved | 23.3.3.1 [array.overview] | array::iterator and array::const_iterator should be literal types |
Yes | 2 | |
| 2898 | NAD | 16 [library] | Prefer not to use member typedefs as constructor parameters | Yes | ||
| 2899 | C++20 | 22.4 [tuple] | is_(nothrow_)move_constructible and tuple, optional and unique_ptr |
Yes | 2 | |
| 2900 | C++17 | 22.5.3 [optional.optional] | The copy and move constructors of optional are not constexpr |
Yes | ||
| 2901 | C++17 | 22.6.3 [variant.variant] | Variants cannot properly support allocators | Yes | 0 | |
| 2902 | NAD | 22.6.3 [variant.variant] | variant should only support complete types |
Yes | 0 | |
| 2903 | C++17 | 22.6.3.2 [variant.ctor] | The form of initialization for the emplace-constructors is not specified | Yes | ||
| 2904 | C++17 | 22.6.3.4 [variant.assign] | Make variant move-assignment more exception safe |
Yes | ||
| 2905 | C++17 | 20.3.1.3.2 [unique.ptr.single.ctor] | is_constructible_v<unique_ptr<P, D>, P, D const &> should be false when
D is not copy constructible |
Yes | ||
| 2906 | New | 20.3.2.2.2 [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 | |
| 2907 | NAD | 20.3.2.2.3 [util.smartptr.shared.dest] | Semantics for destroying the deleter and the control-block of a shared_ptr are unclear |
Yes | ||
| 2908 | C++17 | 20.3.2.2.8 [util.smartptr.shared.cmp] | The less-than operator for shared pointers could do more | Yes | ||
| 2909 | NAD | 26.3.6.2 [execpol.type] | User specializations of is_execution_policy should be ill-formed |
Yes | ||
| 2910 | Dup | 21.3.3 [meta.type.synop] | Template deduction and integral_constant |
Yes | ||
| 2911 | C++17 | 21.3.6.4 [meta.unary.prop] | An is_aggregate type trait is needed |
Yes | ||
| 2912 | Resolved | 30.5 [time.duration] | Add a deduction guide for class template duration |
Yes | ||
| 2913 | Resolved | 23 [containers] | Containers need deduction guides | Yes | ||
| 2914 | Resolved | 23.3.2 [array.syn] | std::array does not support class-template deduction from initializers |
Yes | ||
| 2915 | Resolved | 23.6 [container.adaptors] | The three container adapters should each have a deduction guide | Yes | ||
| 2916 | NAD | 24.5.2 [insert.iterators] | Insert iterators should each have an instantiation guide to initialize from a container | Yes | ||
| 2917 | Resolved | 26 [algorithms] | Parallel algorithms cannot easily work with InputIterators |
Yes | ||
| 2918 | Resolved | 26.10.5 [inner.product] | Possible need for extra storage in inner_product |
Yes | ||
| 2919 | Resolved | 26.10.12 [adjacent.difference] | The specification for adjacent_difference has baked-in sequential semantics |
Yes | ||
| 2920 | Resolved | 32.10.8 [futures.shared.future] | Add a deduction guide for creating a shared_future from a future rvalue |
Yes | ||
| 2921 | C++17 | 32.10.10 [futures.task] | packaged_task and type-erased allocators |
Yes | ||
| 2922 | LEWG | 21.3.3 [meta.type.synop] | The *_constant<> templates do not make use of template<auto> |
No | ||
| 2923 | New | 29.7.1 [cmath.syn] | noexcept is inconsistently applied across headers which import components of the C standard library |
No | 4 | |
| 2924 | Resolved | 26.10 [numeric.ops] | An ExecutionPolicy overload for inner_product() seems impractical |
Yes | ||
| 2925 | Resolved | 16 [library] | Template argument deduction is not used in the standard library | Yes | ||
| 2926 | Resolved | 22.10.4 [func.require] | INVOKE(f, t1, t2,... tN) and INVOKE(f, t1, t2,... tN, R) are too similar |
Yes | ||
| 2927 | Resolved | 21.3.3 [meta.type.synop] | Encoding a functor and argument types as a function signature for is_callable and result_of is fragile |
Yes | ||
| 2928 | Resolved | 21.3.3 [meta.type.synop] | is_callable is not a good name |
Yes | ||
| 2929 | Resolved | 27.4.3.7.3 [string.assign] | basic_string misuses "Effects: Equivalent to" |
Yes | 3 | |
| 2930 | NAD | 16.4.6.4 [global.functions] | Are implementations allowed to split non-member functions into several overloads? | Yes | ||
| 2931 | Open | 24.4.3 [iterator.operations] | Missed optimization opportunity with single-argument std::next |
No | 3 | |
| 2932 | C++20 | 26.3.3 [algorithms.parallel.exec] | Constraints on parallel algorithm implementations are underspecified | Yes | ||
| 2933 | Resolved | 22.4.5 [tuple.creation] | PR for LWG 2773 could be clearer | Yes | 3 | |
| 2934 | C++17 | 22.5.9 [optional.comp.with.t] | optional<const T> doesn't compare with T |
Yes | ||
| 2935 | C++20 | 31.12.13.7 [fs.op.create.directories] | What should create_directories do when p already exists but is not a directory? |
Yes | 0 | |
| 2936 | C++20 | 31.12.6.5.8 [fs.path.compare] | Path comparison is defined in terms of the generic format | Yes | 2 | |
| 2937 | C++20 | 31.12.13.13 [fs.op.equivalent] | Is equivalent("existing_thing", "not_existing_thing") an error? |
Yes | 0 | |
| 2938 | Resolved | 27.3.3 [string.view.template] | basic_string_view::const_iterator should be literal types |
Yes | 2 | |
| 2939 | Open | 21.3.3 [meta.type.synop] | Some type-completeness constraints of traits are overspecified | Yes | 2 | |
| 2940 | C++20 | D.13 [depr.meta.types] | result_of specification also needs a little cleanup |
Yes | 3 | |
| 2941 | C++20 | 32.2.4 [thread.req.timing] | §[thread.req.timing] wording should apply to both member and namespace-level functions | Yes | 0 | |
| 2942 | C++20 | 20.3.2.3.6 [util.smartptr.weak.obs] | LWG 2873's resolution missed weak_ptr::owner_before |
Yes | ||
| 2943 | C++20 | 31.10.3.4 [filebuf.members] | Problematic specification of the wide version of basic_filebuf::open |
Yes | 2 | |
| 2944 | C++20 | 20.3.1.3.2 [unique.ptr.single.ctor] | LWG 2905 accidentally removed requirement that construction of the deleter doesn't throw an exception | Yes | 0 | |
| 2945 | C++20 | 22.5.9 [optional.comp.with.t] | Order of template parameters in optional comparisons |
Yes | 2 | |
| 2946 | C++20 | 27.4.3.3 [string.cons] | LWG 2758's resolution missed further corrections | Yes | 2 | |
| 2947 | New | 31.12.8.1 [fs.enum.path.format] | Clarify several filesystem terms | No | 3 | |
| 2948 | C++20 | 20.3.1 [unique.ptr] | unique_ptr does not define operator<< for stream output |
Yes | 0 | |
| 2949 | New | 16 [library] | Unclear complexity requirements: space vs. time | No | 4 | |
| 2950 | C++20 | 17.2.5 [support.types.byteops] | std::byte operations are misspecified |
Yes | 1 | |
| 2951 | Resolved | 24.3.2.3 [iterator.traits] | iterator_traits should SFINAE for void* and function pointers |
Yes | 3 | |
| 2952 | C++20 | 24.3.2.3 [iterator.traits] | iterator_traits should work for pointers to cv T |
Yes | 0 | |
| 2953 | C++20 | 23.3.5.4 [deque.modifiers] | LWG 2853 should apply to deque::erase too |
Yes | 0 | |
| 2954 | C++20 | 16.4.5 [constraints] | Specialization of the convenience variable templates should be prohibited | Yes | ||
| 2955 | Resolved | 22.2 [utility] | to_chars / from_chars depend on std::string |
Yes | ||
| 2956 | C++17 | 31.12.13.3 [fs.op.canonical] | filesystem::canonical() still defined in terms of absolute(p, base) |
Yes | 1 | |
| 2957 | Resolved | 22.10.15.4 [func.bind.bind] | bind's specification doesn't apply the cv-qualification of the call wrapper to the callable object |
Yes | 3 | |
| 2958 | C++20 | 22.3.2 [pairs.pair] | Moves improperly defined as deleted | Yes | 2 | |
| 2959 | New | 27.2.4.4 [char.traits.specializations.char16.t] | char_traits<char16_t>::eof is a valid UTF-16 code unit |
No | 3 | |
| 2960 | C++23 | 6.3 [fund.ts.v3::meta] | [fund.ts.v3] nonesuch is insufficiently useless |
Yes | 2 | |
| 2961 | C++20 | 20.5.4 [mem.res.global] | Bad postcondition for set_default_resource |
Yes | ||
| 2962 | Open | 24.3.5.3 [input.iterators] | Iterators of Containers of move-only types do not model InputIterator |
Yes | 2 | |
| 2963 | New | 26 [algorithms] | Algorithms with underspecified iterator requirements | No | 3 | |
| 2964 | C++20 | 20.3.2.2.10 [util.smartptr.shared.cast] | Apparently redundant requirement for dynamic_pointer_cast |
Yes | 0 | |
| 2965 | C++20 | 31.12.7.2 [fs.filesystem.error.members] | Non-existing path::native_string() in filesystem_error::what() specification |
Yes | 0 | |
| 2966 | C++20 | 31.12.6.5.6 [fs.path.native.obs] | Incomplete resolution of US 74 | Yes | ||
| 2967 | NAD | 26.6.13 [alg.equal] | std::equal on empty ranges |
Yes | ||
| 2968 | Resolved | 27.4.3.5 [string.capacity] | Inconsistencies between basic_string reserve and vector/unordered_map/unordered_set reserve functions |
Yes | 3 | |
| 2969 | C++20 | 20.5.3.3 [mem.poly.allocator.mem] | polymorphic_allocator::construct() shouldn't pass resource() |
Yes | 2 | |
| 2970 | C++20 | 22.6.7 [variant.visit] | Return type of std::visit misspecified |
Yes | 2 | |
| 2971 | NAD | 22.6.3 [variant.variant] | variant should require Destructible types |
Yes | ||
| 2972 | C++20 | 21.3.6.4 [meta.unary.prop] | What is is_trivially_destructible_v<int>? |
Yes | ||
| 2973 | LEWG | 26.8.6 [alg.merge] | inplace_merge exact comparison count complexity prohibits useful real-world optimizations |
Yes | ||
| 2974 | C++20 | 22.3.4 [pair.astuple] | Diagnose out of bounds tuple_element/variant_alternative |
Yes | ||
| 2975 | C++20 | 20.5.3.3 [mem.poly.allocator.mem] | Missing case for pair construction in scoped and polymorphic allocators |
Yes | 3 | |
| 2976 | C++20 | 32.10.10 [futures.task] | Dangling uses_allocator specialization for packaged_task |
Yes | 3 | |
| 2977 | C++20 | 23.2.8 [unord.req] | unordered_meow::merge() has incorrect Throws: clause |
Yes | 0 | |
| 2978 | C++20 | 27.4.6 [basic.string.hash] | Hash support for pmr::string and friends |
Yes | 0 | |
| 2979 | C++20 | 21.3.9.7 [meta.trans.other] | aligned_union should require complete object types |
Yes | 0 | |
| 2980 | C++20 | 99 [depr.util.smartptr.shared.atomic] | Cannot compare_exchange empty pointers |
Yes | ||
| 2981 | C++20 | 22.10.6 [refwrap] | Remove redundant deduction guides from standard library | Yes | 0 | |
| 2982 | C++20 | 23.5.6.1 [unord.set.overview] | Making size_type consistent in associative container deduction guides |
Yes | 2 | |
| 2983 | New | 28.3.4.7.3.3 [locale.money.put.virtuals] | money_put::do_put underspecified |
Yes | 3 | |
| 2984 | New | 31.7.8 [ext.manip] | put_money(99) is unnecessarily undefined |
Yes | 3 | |
| 2985 | LEWG | 26.7.10 [alg.reverse] | std::reverse should be permitted to be vectorized |
Yes | ||
| 2986 | New | 28.6.12 [re.grammar] | Handling of multi-character collating elements by the regex FSM is underspecified |
No | 4 | |
| 2987 | New | 28.6.12 [re.grammar] | Relationship between traits_inst.lookup_collatename and the regex FSM is underspecified with
regards to ClassAtomCollatingElement |
No | 3 | |
| 2988 | C++20 | 32.5.2 [atomics.syn] | Clause 32 cleanup missed one typename |
Yes | 0 | |
| 2989 | C++20 | 31.12.6.7 [fs.path.io] | path's stream insertion operator lets you insert everything under the sun |
Yes | 2 | |
| 2990 | Open | 22.5.3 [optional.optional] | optional::value_type is not always a value type |
Yes | 3 | |
| 2991 | Open | 22.6.3.2 [variant.ctor] | variant copy constructor missing noexcept(see below) |
Yes | ||
| 2992 | NAD | 19.5.3.5 [syserr.errcat.objects] | system_category() and error_code::error_code() should be constexpr |
Yes | ||
| 2993 | C++20 | 22.10.6 [refwrap] | reference_wrapper<T> conversion from T&& |
Yes | 3 | |
| 2994 | WP | 27.2 [char.traits] | Needless UB for basic_string and basic_string_view |
Yes | 3 | |
| 2995 | C++20 | 31.8.2.2 [stringbuf.cons] | basic_stringbuf default constructor forbids it from using SSO capacity |
Yes | 3 | |
| 2996 | C++20 | 20.3.2.2 [util.smartptr.shared] | Missing rvalue overloads for shared_ptr operations |
Yes | ||
| 2997 | C++23 | 23.3.11.5 [list.ops] | LWG 491 and the specification of {forward_,}list::unique |
Yes | 3 | |
| 2998 | C++20 | 23.3.11.5 [list.ops] | Requirements on function objects passed to {forward_,}list-specific algorithms |
Yes | 0 | |
| 2999 | Resolved | 16.3.3.2 [expos.only.entity] | §[thread.decaycopy] issue | Yes | 3 | |
| 3000 | C++20 | 20.5.6.3 [mem.res.monotonic.buffer.mem] | monotonic_memory_resource::do_is_equal uses dynamic_cast unnecessarily |
Yes | 0 | |
| 3001 | C++20 | 20.3.2.3 [util.smartptr.weak] | weak_ptr::element_type needs remove_extent_t |
Yes | 0 | |
| 3002 | C++23 | 18.9.4 [networking.ts::socket.acceptor.ops] | [networking.ts] basic_socket_acceptor::is_open() isn't noexcept |
Yes | 0 | |
| 3003 | Resolved | 32.10.6 [futures.promise] | <future> still has type-erased allocators in promise |
Yes | 2 | |
| 3004 | C++20 | 27.4.3.5 [string.capacity] | §[string.capacity] and §[vector.capacity] should specify time complexity for capacity() |
Yes | 0 | |
| 3005 | C++20 | 20.3.2.2.7 [util.smartptr.shared.create] | Destruction order of arrays by make_shared/allocate_shared only recommended? |
Yes | 0 | |
| 3006 | Resolved | 31.8.2.2 [stringbuf.cons] | Constructing a basic_stringbuf from a string — where does the allocator come from? |
Yes | 3 | |
| 3007 | C++20 | 20.3.2.2.7 [util.smartptr.shared.create] | allocate_shared should rebind allocator to cv-unqualified value_type for construction |
Yes | 0 | |
| 3008 | C++20 | 20.3.2.2.7 [util.smartptr.shared.create] | make_shared (sub)object destruction semantics are not specified |
Yes | 2 | |
| 3009 | C++20 | 24.7 [iterator.range] | Including <string_view> doesn't provide std::size/empty/data |
Yes | 0 | |
| 3010 | C++23 | 13.11.1 [networking.ts::async.uses.executor.trait] | [networking.ts] uses_executor says "if a type T::executor_type exists" |
Yes | 0 | |
| 3011 | Open | 19.3 [assertions] | Requirements for assert(E) inconsistent with C |
No | 2 | |
| 3012 | C++20 | 32.5.8 [atomics.types.generic] | atomic<T> is unimplementable for non-is_trivially_copy_constructible T |
Yes | 2 | |
| 3013 | C++20 | 31.12.11.2 [fs.dir.itr.members] | (recursive_)directory_iterator construction and traversal should not be noexcept |
Yes | 0 | |
| 3014 | C++20 | 31.12.13.5 [fs.op.copy.file] | More noexcept issues with filesystem operations |
Yes | ||
| 3015 | C++20 | 31.12.13.4 [fs.op.copy] | copy_options::unspecified underspecified |
Yes | 3 | |
| 3016 | NAD | 22.5.3 [optional.optional] | optional and over-aligned types |
Yes | 3 | |
| 3017 | C++20 | 23.3.7.6 [forward.list.ops] | list splice functions should use addressof |
Yes | 0 | |
| 3018 | C++20 | 20.3.2.2 [util.smartptr.shared] | shared_ptr of function type |
Yes | 3 | |
| 3019 | New | 19.5.3.4 [syserr.errcat.derived] | Presentation of "program defined classes derived from error_category" [syserr.errcat.derived] unclear and contains mistakes |
No | 3 | |
| 3020 | C++23 | 16.2 [networking.ts::buffer.reqmts] | [networking.ts] Remove spurious nested value_type buffer sequence requirement |
Yes | 0 | |
| 3021 | New | 16.2.2 [networking.ts::buffer.reqmts.constbuffersequence] | [networking.ts] Relax pointer equivalence requirement for ConstBufferSequence |
Yes | 3 | |
| 3022 | Resolved | 21.3.8 [meta.rel] | is_convertible<derived*, base*> may lead to ODR |
Yes | 2 | |
| 3023 | Resolved | 22.10.16 [func.memfn] | Clarify unspecified call wrappers | Yes | 3 | |
| 3024 | C++20 | 22.6.3.2 [variant.ctor] | variant's copies must be deleted instead of disabled via SFINAE |
Yes | ||
| 3025 | C++20 | 23.4.3.1 [map.overview] | Map-like container deduction guides should use pair<Key, T>, not pair<const Key, T> |
Yes | 2 | |
| 3026 | C++20 | 31.12.13.40 [fs.op.weakly.canonical] | filesystem::weakly_canonical still defined in terms of canonical(p, base) |
Yes | 0 | |
| 3027 | New | 16.2.4 [networking.ts::buffer.reqmts.dynamicbuffer] | [networking.ts] DynamicBuffer prepare exception specification |
Yes | 3 | |
| 3028 | C++23 | 23.2.2 [container.requirements.general] | Container requirements tables should distinguish const and non-const variables |
Yes | 3 | |
| 3029 | Open | 26.8.8.3 [pop.heap] | pop_heap over-constrains input |
Yes | 3 | |
| 3030 | C++20 | 32.6.6 [thread.lock.algorithm] | Who shall meet the requirements of try_lock? |
Yes | 0 | |
| 3031 | C++20 | 26.8 [alg.sorting] | Algorithms and predicates with non-const reference arguments | Yes | 2 | |
| 3032 | C++23 | 26.8.8 [alg.heap.operations] | ValueSwappable requirement missing for push_heap and make_heap |
Yes | 3 | |
| 3033 | NAD Editorial | 27.4.3.3 [string.cons] | basic_string move ctor is underspecified |
Yes | ||
| 3034 | C++20 | 21.3.9.7 [meta.trans.other] | P0767R1 breaks previously-standard-layout types | Yes | 0 | |
| 3035 | C++20 | 20.2.10 [default.allocator] | std::allocator's constructors should be constexpr |
Yes | 0 | |
| 3036 | C++23 | 20.5.3 [mem.poly.allocator.class] | polymorphic_allocator::destroy is extraneous |
Yes | 3 | |
| 3037 | C++20 | 20.5.3 [mem.poly.allocator.class] | polymorphic_allocator and incomplete types |
Yes | 2 | |
| 3038 | C++20 | 20.5.3.3 [mem.poly.allocator.mem] | polymorphic_allocator::allocate should not allow integer overflow to create vulnerabilities |
Yes | 2 | |
| 3039 | C++20 | 32.4.3.3 [thread.thread.constr] | Unnecessary decay in thread and packaged_task |
Yes | 0 | |
| 3040 | C++20 | 27.3.3.8 [string.view.ops] | basic_string_view::starts_with Effects are incorrect |
Yes | 0 | |
| 3041 | C++20 | 22.10.6.2 [refwrap.const] | Unnecessary decay in reference_wrapper |
Yes | 0 | |
| 3042 | C++20 | D.13 [depr.meta.types] | is_literal_type_v should be inline |
Yes | 0 | |
| 3043 | C++20 | 31.12.7.2 [fs.filesystem.error.members] | Bogus postcondition for filesystem_error constructor |
Yes | 0 | |
| 3044 | New | 16.4.4.6 [allocator.requirements] | Strange specification of max_size() for an allocator |
Yes | 3 | |
| 3045 | C++20 | 32.5.8.4 [atomics.types.float] | atomic<floating-point> doesn't have value_type or difference_type |
Yes | 0 | |
| 3046 | New | 22.10.6 [refwrap] | Do not require reference_wrapper to support non-referenceable function types |
Yes | 3 | |
| 3047 | New | 32.5.8.3 [atomics.types.int] | atomic compound assignment operators can cause undefined behavior when corresponding
fetch_meow members don't |
Yes | 3 | |
| 3048 | C++20 | 26.10.6 [transform.reduce] | transform_reduce(exec, first1, last1, first2, init) discards execution policy |
Yes | 0 | |
| 3049 | Open | 26.2 [algorithms.requirements] | Missing wording allowing algorithms to use copies of function objects as substitutes for their parameters | Yes | 3 | |
| 3050 | C++20 | 30.5.2 [time.duration.cons] | Conversion specification problem in chrono::duration constructor |
Yes | 3 | |
| 3051 | C++20 | 29.7.1 [cmath.syn] | Floating point classifications were inadvertently changed in P0175 | Yes | 0 | |
| 3052 | Resolved | 22.6.7 [variant.visit] | visit is underconstrained |
Yes | 2 | |
| 3053 | New | 19.5.4.1 [syserr.errcode.overview] | Prohibit error_code construction from rvalues of error_category |
Yes | 3 | |
| 3054 | C++20 | 26.11.5 [uninitialized.copy] | uninitialized_copy appears to not be able to meet its exception-safety guarantee |
Yes | 2 | |
| 3055 | C++20 | 31.12.6.5.4 [fs.path.concat] | path::operator+=(single-character) misspecified |
Yes | 3 | |
| 3056 | New | 31.12.13.5 [fs.op.copy.file] | copy_file() copies which attributes? |
Yes | 3 | |
| 3057 | Open | 31.12.13.4 [fs.op.copy] | Correct copy_options handling |
Yes | 2 | |
| 3058 | C++20 | 26.10.12 [adjacent.difference] | Parallel adjacent_difference shouldn't require creating temporaries |
Yes | 3 | |
| 3059 | New | 23.2 [container.requirements] | Wrong requirements for map-like associative container assignment? | No | 3 | |
| 3060 | New | 26.10.8 [exclusive.scan] | XXX_scan algorithms are specified to work with move-only T, but are
specified to make N copies of T into the destination range |
No | 2 | |
| 3061 | Resolved | 26.8.12 [alg.three.way] | What is the return type of compare_3way? |
Yes | 2 | |
| 3062 | C++20 | 26.3.5 [algorithms.parallel.overloads] | Unnecessary decay_t in is_execution_policy_v should be remove_cvref_t |
Yes | 0 | |
| 3063 | New | 26.11 [specialized.algorithms] | Parallel algorithms in <memory> are underspecified |
No | 3 | |
| 3064 | Resolved | 26.11 [specialized.algorithms] | How do uninitialized memory algorithms obtain pointer without undefined behavior? | Yes | 3 | |
| 3065 | C++20 | 31.12.6.8 [fs.path.nonmember] | LWG 2989 missed that all path's other operators should be hidden friends as well |
Yes | 2 | |
| 3066 | New | 29.7.6 [sf.cmath] | "report a domain error" in [sf.cmath]/1 is underspecified | No | 3 | |
| 3067 | C++20 | 31.12.12.2 [fs.rec.dir.itr.members] | recursive_directory_iterator::pop must invalidate |
Yes | 0 | |
| 3068 | NAD | 27.3.3 [string.view.template] | Forbid assigning an rvalue basic_string to basic_string_view |
Yes | 2 | |
| 3069 | New | 22.6.3.4 [variant.assign] | Move assigning variant's subobject corrupts data |
Yes | 3 | |
| 3070 | C++20 | 31.12.6.5.11 [fs.path.gen] | path::lexically_relative causes surprising results if a filename can also be a
root-name |
Yes | 2 | |
| 3071 | C++23 | 17.9 [networking.ts::buffer.read.until] | [networking.ts] read_until still refers to "input sequence" |
Yes | 0 | |
| 3072 | New | 16.2.4 [networking.ts::buffer.reqmts.dynamicbuffer] | [networking.ts] DynamicBuffer object lifetimes underspecified |
Yes | 3 | |
| 3073 | New | 17 [networking.ts::buffer.stream] | [networking.ts] (async_)read and (async_)write
don't support DynamicBuffer lvalues |
Yes | 3 | |
| 3074 | C++20 | 29.6.3 [valarray.nonmembers] | Non-member functions for valarray should only deduce from the valarray |
Yes | 0 | |
| 3075 | C++20 | 27.4.3 [basic.string] | basic_string needs deduction guides from basic_string_view |
Yes | ||
| 3076 | C++20 | 27.4.3.3 [string.cons] | basic_string CTAD ambiguity |
Yes | ||
| 3077 | C++20 | 23.3.13.5 [vector.modifiers] | (push|emplace)_back should invalidate the end iterator |
Yes | 3 | |
| 3078 | New | 31.12.10 [fs.class.directory.entry] | directory_entry, directory_iterator and recursive_directory_iterator perform needless path copies |
No | 3 | |
| 3079 | C++20 | 31.12.13.8 [fs.op.create.directory] | LWG 2935 forgot to fix the existing_p overloads of create_directory |
Yes | 0 | |
| 3080 | C++20 | 28.2.3 [charconv.from.chars] | Floating point from_chars pattern specification breaks round-tripping |
Yes | 0 | |
| 3081 | Open | 28.2.3 [charconv.from.chars] | Floating point from_chars API does not distinguish between overflow and underflow |
Yes | 2 | |
| 3082 | Open | 28.2.3 [charconv.from.chars] | from_chars specification regarding floating point rounding is inconsistent |
Yes | 2 | |
| 3083 | C++20 | 31.5.2.6 [ios.base.storage] | What should ios::iword(-1) do? |
Yes | 0 | |
| 3084 | New | 17.5 [support.start.term] | Termination in C++ is unclear | No | 3 | |
| 3085 | C++23 | 27.2.2 [char.traits.require] | char_traits::copy precondition too weak |
Yes | 2 | |
| 3086 | New | 17.6.3.2 [new.delete.single] | Possible problem in §[new.delete.single] | Yes | 3 | |
| 3087 | C++20 | 23.3.11.5 [list.ops] | One final &x in §[list.ops] |
Yes | 3 | |
| 3088 | C++23 | 23.3.7.6 [forward.list.ops] | forward_list::merge behavior unclear when passed *this |
Yes | 3 | |
| 3089 | New | 26.7.1 [alg.copy] | copy_n should require non-overlapping ranges |
Yes | 3 | |
| 3090 | New | 30.5.2 [time.duration.cons] | What is §[time.duration.cons]p4's "no overflow is induced in the conversion" intended to mean? | Yes | 3 | |
| 3091 | Resolved | 30.9 [time.hms] | subsecond-precision time_of_day and durations that seconds cannot convert to |
Yes | 2 | |
| 3092 | Open | 16.3.3.3.3 [bitmask.types] | Unclear semantics of enum class bitmask types |
Yes | 3 | |
| 3093 | New | 29.7.2 [c.math.abs] | LWG 2294/2192 missed a std::abs overload |
No | 3 | |
| 3094 | C++20 | 30.5.11 [time.duration.io] | §[time.duration.io]p4 makes surprising claims about encoding | Yes | 0 | |
| 3095 | New | 99 [depr.strstreambuf.virtuals] | strstreambuf refers to nonexistent member of fpos, fpos::offset |
Yes | 4 | |
| 3096 | C++20 | 31.12.6.5.11 [fs.path.gen] | path::lexically_relative is confused by trailing slashes |
Yes | 2 | |
| 3097 | New | 31.8.2.5 [stringbuf.virtuals] | basic_stringbuf seekoff effects trigger undefined behavior and have contradictory returns |
No | 3 | |
| 3098 | New | 31.12.6.5.9 [fs.path.decompose] | Misleading example for filesystem::path::filename() |
Yes | 3 | |
| 3099 | Open | 21.3.3 [meta.type.synop] | is_assignable<Incomplete&, Incomplete&> |
Yes | 2 | |
| 3100 | C++20 | 23.7.2.2.2 [span.cons] | Unnecessary and confusing "empty span" wording |
Yes | 0 | |
| 3101 | C++20 | 23.7.2.2.2 [span.cons] | span's Container constructors need another constraint |
Yes | 1 | |
| 3102 | C++20 | 23.7.2.2.1 [span.overview] | Clarify span iterator and const_iterator behavior |
Yes | 0 | |
| 3103 | C++20 | 23.7.2.2.4 [span.sub] | Errors in taking subview of span should be ill-formed where possible |
Yes | 3 | |
| 3104 | C++20 | 30.5.6 [time.duration.nonmember] | Fixing duration division |
Yes | 0 | |
| 3105 | New | 16 [library] | T1 is convertible to T2 |
No | 3 | |
| 3106 | NAD | 17.6.2 [new.syn] | nothrow should be inline constexpr rather that extern const |
Yes | 2 | |
| 3107 | New | 24.6.4 [istreambuf.iterator] | istreambuf_iterator has public exposition-only member |
Yes | 4 | |
| 3108 | New | 24.6.4.2 [istreambuf.iterator.proxy] | istreambuf_iterator::proxy::operator* should be const |
Yes | 3 | |
| 3109 | New | 99 [depr.strstreambuf] | strstreambuf is copyable |
No | 4 | |
| 3110 | Resolved | 24.3.1 [iterator.requirements.general] | Contiguous Iterators should always be Random-Access | Yes | 3 | |
| 3111 | Resolved | 27.4.3.3 [string.cons] | Too strong precondition on basic_string constructor |
Yes | 2 | |
| 3112 | C++20 | 19.5.8.2 [syserr.syserr.members] | system_error and filesystem_error constructors taking a string may not be able
to meet their postconditions |
Yes | 0 | |
| 3113 | Resolved | 20.5.3.3 [mem.poly.allocator.mem] | polymorphic_allocator::construct() should more closely match scoped_allocator_adaptor::construct() |
Yes | 3 | |
| 3114 | LEWG | 16 [networking.ts::buffer] | [networking.ts] Permit efficient composition when using DynamicBuffer |
Yes | ||
| 3115 | Resolved | 26.8.7.2 [includes] | Unclear description for algorithm includes |
Yes | 3 | |
| 3116 | C++20 | 20.6.4 [allocator.adaptor.members] | OUTERMOST_ALLOC_TRAITS needs remove_reference_t |
Yes | 0 | |
| 3117 | C++23 | 32.10.10 [futures.task] | Missing packaged_task deduction guides |
Yes | 3 | |
| 3118 | C++23 | 31.5.3.3 [fpos.operations] | fpos equality comparison unspecified |
Yes | 4 | |
| 3119 | C++20 | 3.42 [defns.prog.def.spec] | Program-definedness of closure types | Yes | 2 | |
| 3120 | C++23 | 20.5.6.3 [mem.res.monotonic.buffer.mem] | Unclear behavior of monotonic_buffer_resource::release() |
Yes | 2 | |
| 3121 | C++23 | 22.4.4.2 [tuple.cnstr] | tuple constructor constraints for UTypes&&... overloads |
Yes | 2 | |
| 3122 | C++20 | 17.3.1 [support.limits.general] | __cpp_lib_chrono_udls was accidentally dropped |
Yes | 0 | |
| 3123 | C++23 | 30.5 [time.duration] | duration constructor from representation shouldn't be effectively non-throwing |
Yes | 3 | |
| 3124 | New | 13.7.5 [networking.ts::async.exec.ctx.globals] | [networking.ts] Unclear how execution_context is intended to store services |
Yes | 3 | |
| 3125 | Resolved | 30.5.11 [time.duration.io] | duration streaming precondition should be a SFINAE condition |
Yes | 2 | |
| 3126 | New | 28.6.8 [re.submatch] | There's no std::sub_match::compare(string_view) overload |
Yes | 3 | |
| 3127 | C++20 | 31.11.3.1 [syncstream.osyncstream.overview] | basic_osyncstream::rdbuf needs a const_cast |
Yes | 0 | |
| 3128 | C++20 | 99 [depr.strstream.oper] | strstream::rdbuf needs a const_cast |
Yes | 0 | |
| 3129 | C++20 | 28.6.11.2.2 [re.tokiter.cnstr] | regex_token_iterator constructor uses wrong pointer arithmetic |
Yes | 0 | |
| 3130 | C++20 | 31 [input.output] | §[input.output] needs many addressof |
Yes | 0 | |
| 3131 | C++20 | 30.13 [time.parse] | addressof all the things |
Yes | 0 | |
| 3132 | C++20 | 16.4.5.3.3 [macro.names] | Library needs to ban macros named expects or ensures |
Yes | 0 | |
| 3133 | C++20 | 29.2 [numeric.requirements] | Modernizing numeric type requirements | Yes | 0 | |
| 3134 | Resolved | 99 [fund.ts.v3::meta.type.synop] | [fund.ts.v3] LFTSv3 contains extraneous [meta] variable templates that should have been deleted by P09961 | Yes | 0 | |
| 3135 | Resolved | 99 [fund.ts.v3::meta.type.synop] | [fund.ts.v3] LFTSv3 contains two redundant alias templates | Yes | 3 | |
| 3136 | C++23 | 6.1.2.3 [fund.ts.v3::propagate_const.class_type_requirements] | [fund.ts.v3] LFTSv3 awkward wording in propagate_const requirements |
Yes | 3 | |
| 3137 | C++20 | 17.3.1 [support.limits.general] | Header for __cpp_lib_to_chars |
Yes | 0 | |
| 3138 | NAD | 99 [support.contract.cviol] | There is no such thing as assertion-level | Yes | 2 | |
| 3139 | NAD | 99 [support.contract.cviol] | contract_violation's special member functions |
Yes | 1 | |
| 3140 | C++20 | 21.3.9.7 [meta.trans.other] | COMMON_REF is unimplementable as specified |
Yes | 0 | |
| 3141 | C++20 | 18.6 [concepts.object] | CopyConstructible doesn't preserve source values |
Yes | 2 | |
| 3142 | New | 16.4.5.8 [res.on.functions] | std::foo<incomplete> should be ill-formed NDR |
Yes | 3 | |
| 3143 | C++23 | 20.5.6 [mem.res.monotonic.buffer] | monotonic_buffer_resource growth policy is unclear |
Yes | 2 | |
| 3144 | C++20 | 23.7.2.2.1 [span.overview] | span does not have a const_pointer typedef |
Yes | 0 | |
| 3145 | C++20 | 30.7.6 [time.clock.file] | file_clock breaks ABI for C++17 implementations |
Yes | 1 | |
| 3146 | C++23 | 22.10.6.7 [refwrap.helpers] | Excessive unwrapping in std::ref/cref |
Yes | 3 | |
| 3147 | C++20 | 16.4.5.3.3 [macro.names] | Definitions of "likely" and "unlikely" are likely to cause problems | Yes | 0 | |
| 3148 | C++20 | 16.4.2.5 [compliance] | <concepts> should be freestanding |
Yes | 0 | |
| 3149 | C++20 | 18.4.12 [concept.default.init] | DefaultConstructible should require default initialization |
Yes | 2 | |
| 3150 | C++20 | 29.5.3.3 [rand.req.urng] | UniformRandomBitGenerator should validate min and max |
Yes | 3 | |
| 3151 | Resolved | 18.4.4 [concept.convertible] | ConvertibleTo rejects conversions from array and function types |
Yes | 3 | |
| 3152 | C++23 | 21.3.9.7 [meta.trans.other] | common_type and common_reference have flaws in common |
Yes | 3 | |
| 3153 | C++20 | 18.4.6 [concept.common] | Common and common_type have too little in common |
Yes | 0 | |
| 3154 | C++20 | 18.4.6 [concept.common] | Common and CommonReference have a common defect |
Yes | 0 | |
| 3155 | Resolved | 22.4.4.2 [tuple.cnstr] | tuple<any, any>{allocator_arg_t, an_allocator} |
Yes | 3 | |
| 3156 | Resolved | 26.11 [specialized.algorithms] | ForwardIterator should only mean forward iterator |
Yes | 3 | |
| 3157 | New | 16.4.4.6 [allocator.requirements] | Allocator destroy and fancy pointer operations must be non-throwing |
Yes | 3 | |
| 3158 | C++20 | 22.4.4.2 [tuple.cnstr] | tuple(allocator_arg_t, const Alloc&) should be conditionally explicit |
Yes | 3 | |
| 3159 | New | 20.3.1.3 [unique.ptr.single] | §[unique.ptr.single] requirements on deleter may be too strict | No | 3 | |
| 3160 | C++20 | 32.5.7 [atomics.ref.generic] | atomic_ref() = delete; should be deleted |
Yes | 0 | |
| 3161 | Open | 23.6.6 [stack] | Container adapters mandate use of emplace_back but don't require it |
Yes | 3 | |
| 3162 | New | 19.5.8.2 [syserr.syserr.members] | system_error::system_error(error_code ec) not explicit |
Yes | 3 | |
| 3163 | NAD | 16.2 [networking.ts::buffer.reqmts] | [networking.ts] Buffer sequence iterator equivalency | Yes | ||
| 3164 | NAD | 20.3.1.3.2 [unique.ptr.single.ctor] | Unhelpful "shall not participate" constraints for unique_ptr with reference deleter |
Yes | ||
| 3165 | NAD | 27.4.3 [basic.string] | All starts_with() overloads should be called "begins_with" |
Yes | 2 | |
| 3166 | New | 22.3.4 [pair.astuple] | No such descriptive element as Value: | No | 3 | |
| 3167 | Open | 8.2 [fund.ts.v3::memory.observer.ptr] | [fund.ts.v3] Does observer_ptr support function types? |
No | 3 | |
| 3168 | Resolved | 16.3.2.4 [structure.specifications] | Expects: element should be specified in one place | Yes | 2 | |
| 3169 | C++20 | 26.8.13 [alg.permutation.generators] | ranges permutation generators discard useful information |
Yes | 0 | |
| 3170 | C++23 | 20.2.10 [default.allocator] | is_always_equal added to std::allocator makes the standard library treat
derived types as always equal |
Yes | 2 | |
| 3171 | C++23 | 31.12.10 [fs.class.directory.entry] | LWG 2989 breaks directory_entry stream insertion |
Yes | 2 | |
| 3172 | New | 29.7.3 [c.math.hypot3] | 3-arg std::hypot is underspecified compared to the 2-arg overload |
Yes | 3 | |
| 3173 | C++20 | 25.7.6.2 [range.ref.view] | Enable CTAD for ref-view |
Yes | 0 | |
| 3174 | New | 21.3.8 [meta.rel] | Precondition on is_convertible is too strong |
Yes | 3 | |
| 3175 | C++20 | 18.4.9 [concept.swappable] | The CommonReference requirement of concept SwappableWith is not satisfied in the example |
Yes | 1 | |
| 3176 | Resolved | 23.2.8 [unord.req] | Underspecified behavior of unordered containers when Container::key_equal differs from Pred |
Yes | 2 | |
| 3177 | C++23 | 16.4.5.2.1 [namespace.std] | Limit permission to specialize variable templates to program-defined types | Yes | 3 | |
| 3178 | Resolved | 99 [mismatch] | std::mismatch is missing an upper bound |
Yes | 0 | |
| 3179 | C++20 | 25.5.4.2 [range.subrange.ctor] | subrange should always model Range |
Yes | 0 | |
| 3180 | C++20 | 26.4 [algorithm.syn] | Inconsistently named return type for ranges::minmax_element |
Yes | 0 | |
| 3181 | NAD | 25.7.16.3 [range.lazy.split.outer] | split_view::outer_iterator converting constructor is misconstrained |
Yes | ||
| 3182 | C++20 | 18.4.2 [concept.same] | Specification of Same could be clearer |
Yes | 0 | |
| 3183 | C++20 | 24.3.4.8 [iterator.concept.sizedsentinel] | Normative permission to specialize Ranges variable templates | Yes | 0 | |
| 3184 | C++20 | 22.10.14 [func.bind.partial] | Inconsistencies in bind_front wording |
Yes | 0 | |
| 3185 | C++20 | 20.2.8.2 [allocator.uses.construction] | Uses-allocator construction functions missing constexpr and noexcept |
Yes | 0 | |
| 3186 | C++20 | 26.7.8 [alg.remove] | ranges removal, partition, and partial_sort_copy algorithms discard useful information |
Yes | 1 | |
| 3187 | C++20 | 20.2.8.2 [allocator.uses.construction] | P0591R4 reverted DR 2586 fixes to scoped_allocator_adaptor::construct() |
Yes | ||
| 3188 | New | 24.6.4 [istreambuf.iterator] | istreambuf_iterator::pointer should not be unspecified |
Yes | 3 | |
| 3189 | New | 23.6.4 [priority.queue] | Missing requirement for std::priority_queue |
No | 3 | |
| 3190 | C++20 | 20.2.10.2 [allocator.members] | std::allocator::allocate sometimes returns too little storage |
Yes | 3 | |
| 3191 | C++20 | 26.7.13 [alg.random.shuffle] | std::ranges::shuffle synopsis does not match algorithm definition |
Yes | 1 | |
| 3192 | New | 20.2.8.2 [allocator.uses.construction] | §[allocator.uses.construction] functions misbehave for const types |
Yes | 3 | |
| 3193 | New | 16.3.2.4 [structure.specifications] | Mandates: and Expects: elements are not defined for types | Yes | 3 | |
| 3194 | C++20 | 18.4.4 [concept.convertible] | ConvertibleTo prose does not match code |
Yes | 1 | |
| 3195 | C++23 | 20.3.2.3.2 [util.smartptr.weak.const] | What is the stored pointer value of an empty weak_ptr? |
Yes | 2 | |
| 3196 | C++20 | 22.5.3 [optional.optional] | std::optional<T> is ill-formed is T is an array |
Yes | 0 | |
| 3197 | New | 24.4.3 [iterator.operations] | std::prev should not require BidirectionalIterator |
Yes | 3 | |
| 3198 | C++20 | 23.7.2.2.2 [span.cons] | Bad constraint on std::span::span() |
Yes | ||
| 3199 | C++20 | 22.9.4 [bitset.operators] | istream >> bitset<0> fails |
Yes | ||
| 3200 | C++20 | 26.10.16 [numeric.ops.midpoint] | midpoint should not constrain T is complete |
Yes | 2 | |
| 3201 | C++20 | 29.7.4 [c.math.lerp] | lerp should be marked as noexcept |
Yes | 2 | |
| 3202 | C++20 | 22.10.2 [functional.syn] | P0318R1 was supposed to be revised | Yes | 0 | |
| 3203 | WP | 23.7.2.2.1 [span.overview] | span element access invalidation |
Yes | 2 | |
| 3204 | C++23 | 28.6.8 [re.submatch] | sub_match::swap only swaps the base class |
Yes | 3 | |
| 3205 | New | 21.3.9.7 [meta.trans.other] | decay_t in the new common_type fallback should be remove_cvref_t |
Yes | 3 | |
| 3206 | C++20 | 30.8.14.2 [time.cal.ymd.members] | year_month_day conversion to sys_days uses not-existing member function |
Yes | 0 | |
| 3207 | NAD | 24.7 [iterator.range] | N in ssize(const T (&)[N]) should be size_t |
Yes | ||
| 3208 | C++20 | 24.7 [iterator.range] | Boolean's expression requirements are ordered inconsistently |
Yes | 0 | |
| 3209 | C++20 | 30.8.5.2 [time.cal.year.members] | Expression in year::ok() returns clause is ill-formed |
Yes | 0 | |
| 3210 | New | 20.3.2.2.7 [util.smartptr.shared.create] | allocate_shared is inconsistent about removing const from the pointer
passed to allocator construct and destroy |
Yes | 3 | |
| 3211 | C++23 | 22.4.4.2 [tuple.cnstr] | std::tuple<> should be trivially constructible |
Yes | 3 | |
| 3212 | Resolved | 99 [span.tuple] | tuple_element_t<1, const span<int, 42>> is const int |
Yes | 2 | |
| 3213 | Resolved | 26.6.5 [alg.foreach] | for_each_n and copy_n missing requirements for Size |
Yes | 3 | |
| 3214 | New | 28.3.4.3.2.3 [facet.num.get.virtuals] | §[facet.num.get.virtuals] doesn't say what it means for digit grouping to be consistent | No | 4 | |
| 3215 | New | 22.6.3.2 [variant.ctor] | variant default constructor has vague constexpr requirements |
No | 2 | |
| 3216 | WP | 20.3.2.2.7 [util.smartptr.shared.create] | Rebinding the allocator before calling construct/destroy in allocate_shared |
Yes | 3 | |
| 3217 | New | 17.3.1 [support.limits.general] | <memory> and <execution> should define __cpp_lib_parallel_algorithm |
Yes | 3 | |
| 3218 | C++20 | 30.13 [time.parse] | Modifier for %d parse flag does not match POSIX and format specification |
Yes | 0 | |
| 3219 | New | 23.3.3.1 [array.overview] | std::array overview container requirements are incorrect |
Yes | 3 | |
| 3220 | New | 32.5.2 [atomics.syn] | P0558 broke conforming C++14 uses of atomic shared_ptr |
Yes | 3 | |
| 3221 | C++20 | 30.8.13.3 [time.cal.ym.nonmembers] | Result of year_month arithmetic with months is ambiguous |
Yes | 0 | |
| 3222 | C++20 | 26.10.9 [inclusive.scan] | P0574R1 introduced preconditions on non-existent parameters | Yes | 0 | |
| 3223 | Resolved | 29.7.1 [cmath.syn] | lerp should not add the "sufficient additional overloads" |
Yes | 2 | |
| 3224 | C++20 | 30.11.7.2 [time.zone.zonedtime.ctor] | zoned_time constructor from TimeZonePtr does not specify initialization of
tp_ |
Yes | 0 | |
| 3225 | C++20 | 30.11.7.2 [time.zone.zonedtime.ctor] | zoned_time converting constructor shall not be noexcept |
Yes | 0 | |
| 3226 | C++20 | 30.11.7.2 [time.zone.zonedtime.ctor] | zoned_time constructor from string_view should accept
zoned_time<Duration2, TimeZonePtr2> |
Yes | 2 | |
| 3227 | New | 23.2.7 [associative.reqmts] | Ambiguity issue for extract in ordered and unordered associative containers |
Yes | 3 | |
| 3228 | Resolved | 22.6.3.2 [variant.ctor] | Surprising variant construction |
Yes | 2 | |
| 3229 | New | 16.4.6.14 [res.on.exception.handling] | §[res.on.exception.handling]#3 cannot apply to types with implicitly declared destructors | Yes | 3 | |
| 3230 | C++20 | 30.13 [time.parse] | Format specifier %y/%Y is missing locale alternative versions |
Yes | 0 | |
| 3231 | C++20 | 30.8.15.2 [time.cal.ymdlast.members] | year_month_day_last::day specification does not cover !ok() values |
Yes | 0 | |
| 3232 | C++20 | 30.11.7.1 [time.zone.zonedtime.overview] | Inconsistency in zoned_time deduction guides |
Yes | 0 | |
| 3233 | C++20 | 20.3.2.2.2 [util.smartptr.shared.const] | Broken requirements for shared_ptr converting constructors |
Yes | 0 | |
| 3234 | Resolved | 29.7.1 [cmath.syn] | Sufficient Additional Special Math Overloads | Yes | 3 | |
| 3235 | C++20 | 30.13 [time.parse] | parse manipulator without abbreviation is not callable |
Yes | 0 | |
| 3236 | C++23 | 24.3.5.7 [random.access.iterators] | Random access iterator requirements lack limiting relational operators domain to comparing those from the same range | Yes | 3 | |
| 3237 | C++20 | 20.5.3.3 [mem.poly.allocator.mem] | LWG 3038 and 3190 have inconsistent PRs | Yes | 2 | |
| 3238 | C++20 | 22.10.17.3.2 [func.wrap.func.con] | Insufficiently-defined behavior of std::function deduction guides |
Yes | ||
| 3239 | Resolved | 17.12.2.2 [cmp.partialord] | Hidden friends should be specified more narrowly | Yes | ||
| 3240 | New | 16.4.3.2 [using.headers] | Headers declare more than entities | No | 3 | |
| 3241 | C++20 | 30.12 [time.format] | chrono-spec grammar ambiguity in §[time.format] |
Yes | 0 | |
| 3242 | C++20 | 28.5.2.2 [format.string.std] | std::format: missing rules for arg-id in width and precision |
Yes | 1 | |
| 3243 | C++20 | 28.5.2 [format.string] | std::format and negative zeroes |
Yes | 2 | |
| 3244 | C++20 | 31.12.6.4 [fs.path.req] | Constraints for Source in §[fs.path.req] insufficiently constrainty |
Yes | 0 | |
| 3245 | C++20 | 30.13 [time.parse] | Unnecessary restriction on '%p' parse specifier |
Yes | 0 | |
| 3246 | C++20 | 28.5.8.1 [format.arg] | What are the constraints on the template parameter of basic_format_arg? |
Yes | 0 | |
| 3247 | C++20 | 24.3.3.1 [iterator.cust.move] | ranges::iter_move should perform ADL-only lookup of iter_move |
Yes | 2 | |
| 3248 | C++20 | 28.5.2.2 [format.string.std] | std::format #b, #B, #o, #x, and #X
presentation types misformat negative numbers |
Yes | 2 | |
| 3249 | C++23 | 32.5.5 [atomics.lockfree] | There are no 'pointers' in §[atomics.lockfree] | Yes | 4 | |
| 3250 | C++20 | 28.5.2.2 [format.string.std] | std::format: # (alternate form) for NaN and inf |
Yes | 0 | |
| 3251 | C++20 | 28.5.2 [format.string] | Are std::format alignment specifiers applied to string arguments? |
Yes | 2 | |
| 3252 | C++20 | 30.13 [time.parse] | Parse locale's aware modifiers for commands are not consistent with POSIX spec | Yes | 2 | |
| 3253 | C++20 | 31.11.2.1 [syncstream.syncbuf.overview] | basic_syncbuf::basic_syncbuf() should not be explicit |
Yes | 0 | |
| 3254 | C++20 | 32.3.4 [stoptoken] | Strike stop_token's operator!= |
Yes | 0 | |
| 3255 | C++20 | 23.7.2.2.2 [span.cons] | span's array constructor is too strict |
Yes | 2 | |
| 3256 | C++20 | 17.3.1 [support.limits.general] | Feature testing macro for constexpr algorithms |
Yes | 0 | |
| 3257 | C++20 | 17.3.1 [support.limits.general] | Missing feature testing macro update from P0858 | Yes | 0 | |
| 3258 | Resolved | 25.3.2 [range.access.begin] | Range access and initializer_list |
Yes | 3 | |
| 3259 | C++20 | 24.3.1 [iterator.requirements.general] | The definition of constexpr iterators should be adjusted | Yes | 0 | |
| 3260 | C++20 | 30.8 [time.cal] | year_month* arithmetic rejects durations convertible to years |
Yes | 2 | |
| 3261 | New | 28.6.7 [re.regex] | regex components' noexcept annotations appear broken for POCMA or throwing
BidirectionalIterator |
No | 3 | |
| 3262 | C++20 | 30.12 [time.format] | Formatting of negative durations is not specified | Yes | 2 | |
| 3263 | New | 32.5.6 [atomics.wait] | Atomic waiting function calls should only be unblocked once | Yes | 3 | |
| 3264 | C++20 | 25.4.4 [range.sized] | sized_range and ranges::size redundantly use disable_sized_range |
Yes | 1 | |
| 3265 | C++23 | 24.5.4.4 [move.iter.cons] | move_iterator's conversions are more broken after P1207 |
Yes | 2 | |
| 3266 | C++20 | 28.2.1 [charconv.syn] | to_chars(bool) should be deleted |
Yes | 0 | |
| 3267 | New | 16.4.4.6 [allocator.requirements] | Rebound allocators and is_always_equal |
Yes | 4 | |
| 3268 | New | 32.5.4 [atomics.order] | memory_order::memory_order_foo broken in C++20 |
Yes | 4 | |
| 3269 | C++20 | 30.13 [time.parse] | Parse manipulators do not specify the result of the extraction from stream | Yes | 2 | |
| 3270 | C++20 | 30.12 [time.format] | Parsing and formatting %j with durations |
Yes | 2 | |
| 3271 | NAD | 30.13 [time.parse] | Parsing functions should save and restore stream format state | Yes | 3 | |
| 3272 | C++20 | 30.12 [time.format] | %I%p should parse/format duration since midnight |
Yes | 0 | |
| 3273 | C++20 | 30.8.7.2 [time.cal.wdidx.members] | Specify weekday_indexed to range of [0, 7] |
Yes | 0 | |
| 3274 | C++20 | 17.3.1 [support.limits.general] | Missing feature test macro for <span> |
Yes | 0 | |
| 3275 | New | 28.3.4.6.2.3 [locale.time.get.virtuals] | Why does time_get::do_get require a valid pointer when none of the others do? |
Yes | 3 | |
| 3276 | C++20 | 25.7.16.4 [range.lazy.split.outer.value] | Class split_view::outer_iterator::value_type should inherit from view_interface |
Yes | 0 | |
| 3277 | C++20 | 24.3.4.13 [iterator.concept.random.access] | Pre-increment on prvalues is not a requirement of weakly_incrementable |
Yes | 0 | |
| 3278 | Resolved | 25.7.14.2 [range.join.view] | join_view<V>::iterator<true> tries to write through const join_view ptr |
Yes | 2 | |
| 3279 | Resolved | 24.3.4.2 [iterator.concept.readable] | shared_ptr<int>& does not not satisfy readable |
Yes | 1 | |
| 3280 | C++20 | 25.7.8.2 [range.filter.view] | View converting constructors can cause constraint recursion and are unneeded | Yes | 1 | |
| 3281 | C++20 | 25.5.4 [range.subrange] | Conversion from pair-like types to subrange is a silent semantic promotion |
Yes | 1 | |
| 3282 | C++20 | 25.5.4 [range.subrange] | subrange converting constructor should disallow derived to base conversions |
Yes | 1 | |
| 3283 | Resolved | 24.3.2.3 [iterator.traits] | Types satisfying input_iterator but not equality_comparable look like
C++17 output iterators |
Yes | 2 | |
| 3284 | C++20 | 24.3.4.13 [iterator.concept.random.access] | random_access_iterator semantic constraints accidentally promote difference type
using unary negate |
Yes | 0 | |
| 3285 | C++20 | 16.3.3.3.5 [customization.point.object] | The type of a customization point object shall satisfy semiregular |
Yes | 0 | |
| 3286 | C++20 | 25.7.10.2 [range.take.view] | ranges::size is not required to be valid after a call to ranges::begin on an input range |
Yes | 0 | |
| 3287 | New | 24.3.2.3 [iterator.traits] | Exposition-only cpp17-input-iterator concept is needlessly complex |
Yes | 3 | |
| 3288 | New | 32.5.6 [atomics.wait] | atomic<T>::notify_one is unimplementable |
Yes | 2 | |
| 3289 | Resolved | 24.3.2.3 [iterator.traits] | Cannot opt out of C++17 iterator-ness without also opting out of C++20 iterator-ness | Yes | 2 | |
| 3290 | C++20 | 28.5.2.2 [format.string.std] | Are std::format field widths code units, code points, or something else? |
Yes | ||
| 3291 | C++20 | 25.6.4.3 [range.iota.iterator] | iota_view::iterator has the wrong iterator_category |
Yes | 0 | |
| 3292 | C++20 | 25.6.4.2 [range.iota.view] | iota_view is under-constrained |
Yes | ||
| 3293 | C++23 | 24.5.4.9 [move.iter.nonmember] | move_iterator operator+() has incorrect constraints |
Yes | 3 | |
| 3294 | C++20 | 30.11.7.1 [time.zone.zonedtime.overview] | zoned_time deduction guides misinterprets string/char* |
Yes | 0 | |
| 3295 | Resolved | 17.12.2 [cmp.categories] | Comparison category operator== are mis-specified |
Yes | 1 | |
| 3296 | C++20 | 28.6.7 [re.regex] | Inconsistent default argument for basic_regex<>::assign |
Yes | 0 | |
| 3297 | New | 23.2.4 [sequence.reqmts] | Useless sequence container requirement | Yes | 3 | |
| 3298 | NAD | 25.7.11.2 [range.take.while.view] | Range adaptors introduced by P1035 do not require viewable_range |
Yes | ||
| 3299 | C++20 | 24.3.3.1 [iterator.cust.move] | Pointers don't need customized iterator behavior | Yes | 0 | |
| 3300 | C++20 | 24.7 [iterator.range] | Non-array ssize overload is underconstrained |
Yes | 3 | |
| 3301 | C++20 | 25.7.9.3 [range.transform.iterator] | transform_view::iterator has incorrect iterator_category |
Yes | 1 | |
| 3302 | C++20 | 25.2 [ranges.syn] | Range adaptor objects keys and values are unspecified |
Yes | 1 | |
| 3303 | C++20 | 20.2.2 [memory.syn] | Bad "constexpr" marker for destroy/destroy_n |
Yes | 0 | |
| 3304 | C++20 | 20.5.3 [mem.poly.allocator.class] | Allocate functions of std::polymorphic_allocator should require [[nodiscard]] |
Yes | 3 | |
| 3305 | WP | 22.7.5 [any.nonmembers] | any_cast<void> |
Yes | 2 | |
| 3306 | C++23 | 24.4.4.2 [range.iter.op.advance] | ranges::advance violates its preconditions |
Yes | 2 | |
| 3307 | C++20 | 20.2.10 [default.allocator] | std::allocator<void>().allocate(n) |
Yes | 0 | |
| 3308 | New | 23.3.5.4 [deque.modifiers] | vector and deque iterator erase invalidates elements even when no change occurs |
Yes | 3 | |
| 3309 | New | 31.8 [string.streams] | Is <ios> implicitly #included by <sstream>, <fstream> etc.? |
No | 3 | |
| 3310 | C++20 | 20.5.3.3 [mem.poly.allocator.mem] | Replace SIZE_MAX with numeric_limits<size_t>::max() |
Yes | 0 | |
| 3311 | Dup | 27.4.3.3 [string.cons] | basic_string::operator=(charT c) should be constrained |
Yes | ||
| 3312 | Dup | 20.5.3 [mem.poly.allocator.class] | polymorphic_allocator::allocate_object and new_object should be [[nodiscard]] |
Yes | ||
| 3313 | C++20 | 25.7.14.3 [range.join.iterator] | join_view::iterator::operator-- is incorrectly constrained |
Yes | 0 | |
| 3314 | C++20 | 30.5.11 [time.duration.io] | Is stream insertion behavior locale dependent when Period::type is micro? |
Yes | 2 | |
| 3315 | C++20 | 16.4.4.6 [allocator.requirements] | Correct Allocator Default Behavior | Yes | 0 | |
| 3316 | C++20 | 30.7.3.1 [time.clock.utc.overview] | Correctly define epoch for utc_clock / utc_timepoint |
Yes | 0 | |
| 3317 | C++20 | 30.5.11 [time.duration.io] | Incorrect operator<< for floating-point durations |
Yes | 0 | |
| 3318 | C++20 | 30.7.2.1 [time.clock.system.overview] | Clarify whether clocks can represent time before their epoch | Yes | 0 | |
| 3319 | C++20 | 30.11.1 [time.zone.general] | Properly reference specification of IANA time zone database | Yes | 0 | |
| 3320 | C++20 | 23.7.2.2.7 [span.iterators] | span::cbegin/cend methods produce different results than std::[ranges::]cbegin/cend |
Yes | 0 | |
| 3321 | C++20 | 20.2.8.2 [allocator.uses.construction] | uninitialized_construct_using_allocator should use construct_at |
Yes | 0 | |
| 3322 | Resolved | 25.7.14.2 [range.join.view] | Add join_view::base() member function |
Yes | 0 | |
| 3323 | C++20 | 25.7.23.2 [range.elements.view] | has-tuple-element helper concept needs convertible_to |
Yes | 0 | |
| 3324 | C++20 | 17.12.6 [cmp.alg] | Special-case std::strong/weak/partial_order for pointers |
Yes | 0 | |
| 3325 | C++20 | 25.7.9.2 [range.transform.view] | Constrain return type of transformation function for transform_view |
Yes | 0 | |
| 3326 | C++20 | 25.4.5 [range.view] | enable_view has false positives |
Yes | 0 | |
| 3327 | C++20 | 28.5.2.2 [format.string.std] | Format alignment specifiers vs. text direction | Yes | 0 | |
| 3328 | C++20 | D.22.1 [depr.fs.path.factory] | Clarify that std::string is not good for UTF-8 |
Yes | 0 | |
| 3329 | C++20 | 18.5.5 [concept.totallyordered] | totally_ordered_with both directly and indirectly requires common_reference_with |
Yes | 0 | |
| 3330 | C++20 | 17.13.2 [coroutine.syn] | Include <compare> from most library headers |
Yes | 0 | |
| 3331 | C++20 | 18.5.5 [concept.totallyordered] | Define totally_ordered/_with in terms of partially-ordered-with |
Yes | 0 | |
| 3332 | C++20 | 30.12 [time.format] | Issue in §[time.format] | Yes | 0 | |
| 3333 | NAD | 25.3.4 [range.access.cbegin] | ranges::cbegin/ranges::cend, (and maybe ranges::crbegin/ranges::crend) are under-specified to allow rvalue-arrays |
Yes | ||
| 3334 | C++20 | 31.11.3 [syncstream.osyncstream] | basic_osyncstream move assignment and destruction calls basic_syncbuf::emit() twice |
Yes | 3 | |
| 3335 | C++20 | 25.2 [ranges.syn] | Resolve C++20 NB comments US 273 and GB 274 | Yes | 1 | |
| 3336 | Resolved | 28.5.5 [format.functions] | How does std::vformat handle exception thrown by formatters? |
Yes | 2 | |
| 3337 | New | 28.3.4.2.5.3 [locale.codecvt.virtuals] | What is "is initialized" supposed to mean? | No | 3 | |
| 3338 | C++20 | 18.4.12 [concept.default.init] | Rename default_constructible to default_initializable |
Yes | 0 | |
| 3339 | New | 27.4.3 [basic.string] | Move-constructed empty-container capacity | No | 3 | |
| 3340 | C++20 | 28.5.5 [format.functions] | Formatting functions should throw on argument/format string mismatch in §[format.functions] | Yes | ||
| 3341 | New | 28.6.7.2 [re.regex.construct] | basic_regex range constructor: Missing requirements for iterator types |
No | 3 | |
| 3342 | New | 22.3.2 [pairs.pair] | Library wording uses "initializes x with y", which is underspecified |
No | 3 | |
| 3343 | Open | 32.7.3 [thread.condition.nonmember] | Ordering of calls to unlock() and notify_all() in Effects element of notify_all_at_thread_exit() should be reversed |
Yes | 3 | |
| 3344 | New | 24.4.3 [iterator.operations] | advance(i, most-negative) and prev(i, most-negative) |
Yes | 3 | |
| 3345 | Resolved | 18.4.9 [concept.swappable] | Incorrect usages of "models" versus "satisfies" | Yes | 2 | |
| 3346 | C++20 | 22.3.2 [pairs.pair] | pair and tuple copy and move constructor have backwards specification |
Yes | 0 | |
| 3347 | C++20 | 22.3.3 [pairs.spec] | std::pair<T, U> now requires T and U to be less-than-comparable |
Yes | 1 | |
| 3348 | C++20 | 17.3.2 [version.syn] | __cpp_lib_unwrap_ref in wrong header |
Yes | 2 | |
| 3349 | C++20 | 17.3.2 [version.syn] | Missing __cpp_lib_constexpr_complex for P0415R1 |
Yes | 0 | |
| 3350 | C++20 | 26.8.12 [alg.three.way] | Simplify return type of lexicographical_compare_three_way |
Yes | 0 | |
| 3351 | C++20 | 25.2 [ranges.syn] | ranges::enable_safe_range should not be constrained |
Yes | 0 | |
| 3352 | C++20 | 23.2.2 [container.requirements.general] | strong_equality isn't a thing |
Yes | 1 | |
| 3353 | New | 28.3.3.1 [locale] | locale's copy assignment operator should return locale& |
Yes | 3 | |
| 3354 | C++20 | 21.3.6.4 [meta.unary.prop] | has_strong_structural_equality has a meaningless definition |
Yes | 1 | |
| 3355 | C++20 | 26.11.5 [uninitialized.copy] | The memory algorithms should support move-only input iterators introduced by P1207 | Yes | 2 | |
| 3356 | C++20 | 17.3.2 [version.syn] | __cpp_lib_nothrow_convertible should be __cpp_lib_is_nothrow_convertible |
Yes | 0 | |
| 3357 | Open | 99 [fund.ts.v3::rand.util.randint] | [fund.ts.v3] default_random_engine is overspecified for per-thread engine |
Yes | 3 | |
| 3358 | C++20 | 23.7.2.2.2 [span.cons] | §[span.cons] is mistaken that to_address can throw |
Yes | 0 | |
| 3359 | C++20 | 30.11.8 [time.zone.leap] | <chrono> leap second support should allow for negative leap seconds |
Yes | 3 | |
| 3360 | C++20 | 17.12.4 [cmp.concept] | three_way_comparable_with is inconsistent with similar concepts |
Yes | 0 | |
| 3361 | C++23 | 25.4.2 [range.range] | safe_range<SomeRange&> case |
Yes | 3 | |
| 3362 | C++20 | 32.3.5 [stopsource] | Strike stop_source's operator!= |
Yes | 0 | |
| 3363 | C++20 | 25.7.13.2 [range.drop.while.view] | drop_while_view should opt-out of sized_range |
Yes | 1 | |
| 3364 | C++20 | 25.7.11.2 [range.take.while.view] | Initialize data members of ranges and their iterators | Yes | 0 | |
| 3365 | NAD | 25.7.14.3 [range.join.iterator] | Rename ref-is-glvalue to deref-is-ref | Yes | 0 | |
| 3366 | Resolved | 24.3.4.4 [iterator.concept.winc] | Narrowing conversions between integer and integer-class types | Yes | 3 | |
| 3367 | C++20 | 24.3.4.4 [iterator.concept.winc] | Integer-class conversions should not throw | Yes | 0 | |
| 3368 | Resolved | 25.3.10 [range.prim.size] | Exactly when does size return end - begin? |
Yes | 0 | |
| 3369 | C++20 | 23.7.2.2.1 [span.overview] | span's deduction-guide for built-in arrays doesn't work |
Yes | 0 | |
| 3370 | New | 17.4.1 [cstdint.syn] | §[cstdint.syn]p2 and §[headers]p5 are not sufficiently clear | No | 3 | |
| 3371 | C++20 | 28.5.8.1 [format.arg] | visit_format_arg and make_format_args are not hidden friends |
Yes | 0 | |
| 3372 | C++20 | 28.5.5 [format.functions] | vformat_to should not try to deduce Out twice |
Yes | 0 | |
| 3373 | C++20 | 28.2.1 [charconv.syn] | {to,from}_chars_result and format_to_n_result need the
"we really mean what we say" wording |
Yes | 0 | |
| 3374 | C++20 | 20.2.4 [pointer.conversion] | P0653 + P1006 should have made the other std::to_address overload constexpr |
Yes | 0 | |
| 3375 | C++20 | 25.4.6 [range.refinements] | decay in viewable_range should be remove_cvref |
Yes | 0 | |
| 3376 | Resolved | 24.3.4.4 [iterator.concept.winc] | "integer-like class type" is too restrictive | Yes | 3 | |
| 3377 | C++20 | 25.7.23.3 [range.elements.iterator] | elements_view::iterator befriends a specialization of itself |
Yes | 0 | |
| 3378 | New | 22.4.2 [tuple.syn] | tuple_size_v/tuple_element_t should be available when tuple_size/tuple_element are |
Yes | 3 | |
| 3379 | C++20 | 25.2 [ranges.syn] | "safe" in several library names is misleading |
Yes | 1 | |
| 3380 | C++20 | 21.3.9.7 [meta.trans.other] | common_type and comparison categories |
Yes | 0 | |
| 3381 | C++20 | 25.4.6 [range.refinements] | begin and data must agree for contiguous_range |
Yes | 0 | |
| 3382 | C++20 | 22.3.2 [pairs.pair] | NTTP for pair and array |
Yes | 2 | |
| 3383 | C++20 | 30.11.8.3 [time.zone.leap.nonmembers] | §[time.zone.leap.nonmembers] sys_seconds should be replaced with seconds |
Yes | 1 | |
| 3384 | C++20 | 25.7.9.4 [range.transform.sentinel] | transform_view::sentinel has an incorrect operator- |
Yes | 0 | |
| 3385 | C++20 | 24.5.5.1 [common.iterator] | common_iterator is not sufficiently constrained for non-copyable iterators |
Yes | 0 | |
| 3386 | C++20 | 25.7.23 [range.elements] | elements_view needs its own sentinel type |
Yes | 1 | |
| 3387 | C++20 | 25.7.21.2 [range.reverse.view] | §[range.reverse.view] reverse_view<V> unintentionally requires range<const V> |
Yes | 0 | |
| 3388 | C++20 | 25.6.4.3 [range.iota.iterator] | view iterator types have ill-formed <=> operators |
Yes | 0 | |
| 3389 | C++20 | 24.5.7.2 [counted.iter.const] | A move-only iterator still does not have a counted_iterator |
Yes | 0 | |
| 3390 | C++20 | 24.5.4.9 [move.iter.nonmember] | make_move_iterator() cannot be used to construct a move_iterator for a
move-only iterator |
Yes | 0 | |
| 3391 | C++23 | 24.5.4 [move.iterators] | Problems with counted_iterator/move_iterator::base() const & |
Yes | 2 | |
| 3392 | C++23 | 24.4.4.3 [range.iter.op.distance] | ranges::distance() cannot be used on a move-only iterator with a sized sentinel |
Yes | 3 | |
| 3393 | C++20 | 17.3.2 [version.syn] | Missing/incorrect feature test macro for coroutines | Yes | 0 | |
| 3394 | NAD | 25.6.6.3 [range.istream.iterator] | ranges::basic_istream_view::iterator has an empty iterator_traits |
Yes | 2 | |
| 3395 | C++20 | 99 [defns.comparison] | Definition for three-way comparison needs to be updated (US 152) | Yes | 1 | |
| 3396 | C++20 | 17.8.2.2 [support.srcloc.cons] | Clarify point of reference for source_location::current() (DE 169) |
Yes | 2 | |
| 3397 | C++20 | 25.6.6.3 [range.istream.iterator] | ranges::basic_istream_view::iterator should not provide iterator_category |
Yes | 1 | |
| 3398 | C++20 | 25.2 [ranges.syn] | tuple_element_t is also wrong for const subrange |
Yes | 0 | |
| 3399 | NAD | 31.11.2.1 [syncstream.syncbuf.overview] | basic_syncbuf::emit() + Qt's #define emit = Big Bada-Boom |
Yes | ||
| 3400 | New | 21.3.8 [meta.rel] | Does is_nothrow_convertible consider destruction of the destination type? |
No | 3 | |
| 3401 | New | 16.3.2.4 [structure.specifications] | Is "as if by" equivalent to "equivalent to"? | No | 3 | |
| 3402 | New | 29.5.9.3.4 [rand.dist.bern.negbin] | Wording for negative_binomial_distribution is unclear as a consequence of LWG 2406 resolution |
No | 3 | |
| 3403 | C++23 | 25.3.11 [range.prim.ssize] | Domain of ranges::ssize(E) doesn't match ranges::size(E) |
Yes | 2 | |
| 3404 | C++23 | 25.5.4 [range.subrange] | Finish removing subrange's conversions from pair-like |
Yes | 0 | |
| 3405 | C++23 | 25.7.20.2 [range.common.view] | common_view's converting constructor is bad, too |
Yes | 0 | |
| 3406 | C++23 | 25.7.23.2 [range.elements.view] | elements_view::begin() and elements_view::end() have incompatible
constraints |
Yes | 1 | |
| 3407 | C++23 | 25.7.10.1 [range.take.overview] | Some problems with the wording changes of P1739R4 | Yes | 2 | |
| 3408 | Resolved | 24.5.7.1 [counted.iterator] | LWG 3291 reveals deficiencies in counted_iterator |
Yes | 2 | |
| 3409 | New | 32.5.7.2 [atomics.ref.ops] | Too lax description of atomic_ref<T>::required_alignment |
Yes | 3 | |
| 3410 | C++23 | 26.8.12 [alg.three.way] | lexicographical_compare_three_way is overspecified |
Yes | 3 | |
| 3411 | C++23 | 8.3 [fund.ts.v3::memory.resource.syn] | [fund.ts.v3] Contradictory namespace rules in the Library Fundamentals TS | Yes | 3 | |
| 3412 | Resolved | 28.5.2.2 [format.string.std] | §[format.string.std] references to "Unicode encoding" unclear | Yes | 3 | |
| 3413 | C++23 | 6.1.2.8 [fund.ts.v3::propagate_const.modifiers] | [fund.ts.v3] propagate_const's swap's noexcept specification needs to
be constrained and use a trait |
Yes | 0 | |
| 3414 | C++23 | 13.7 [networking.ts::async.exec.ctx] | [networking.ts] service_already_exists has no usable constructors |
Yes | 0 | |
| 3415 | NAD | 24.5.2.2 [back.insert.iterator] | back_insert_iterator fails when a container is also its value type |
Yes | ||
| 3416 | New | 22.7.4 [any.class] | The Throws: specification of std::any does not mention allocation |
No | 3 | |
| 3417 | SG1 | 32.5.8.2 [atomics.types.operations] | Missing volatile atomic deprecations |
Yes | 3 | |
| 3418 | New | 32.5.9 [atomics.nonmembers] | Deprecated free functions in <atomic> |
Yes | 3 | |
| 3419 | C++23 | 26.2 [algorithms.requirements] | §[algorithms.requirements]/15 doesn't reserve as many rights as it intends to | Yes | 0 | |
| 3420 | C++23 | 24.3.2.3 [iterator.traits] | cpp17-iterator should check that the type looks like an iterator first |
Yes | 0 | |
| 3421 | C++23 | 18.5.2 [concept.booleantestable] | Imperfect ADL emulation for boolean-testable |
Yes | 0 | |
| 3422 | C++23 | 29.5.8.1 [rand.util.seedseq] | Issues of seed_seq's constructors |
Yes | 3 | |
| 3423 | New | 22.7.5 [any.nonmembers] | std::any_cast should never return a cv-qualified type |
Yes | 3 | |
| 3424 | New | 22.5.3.7 [optional.observe] | optional::value_or should never return a cv-qualified type |
Yes | 3 | |
| 3425 | C++23 | 32.7.5 [thread.condition.condvarany] | condition_variable_any fails to constrain its Lock parameters |
Yes | 0 | |
| 3426 | C++23 | 20.3.1.6 [unique.ptr.special] | operator<=>(const unique_ptr<T, D>&, nullptr_t) can't get no satisfaction |
Yes | 0 | |
| 3427 | C++23 | 20.3.2.2.8 [util.smartptr.shared.cmp] | operator<=>(const shared_ptr<T>&, nullptr_t) definition ill-formed |
Yes | 0 | |
| 3428 | C++23 | 25.6.3.2 [range.single.view] | single_view's in place constructor should be explicit |
Yes | 0 | |
| 3429 | New | 16.4.5.11 [res.on.requirements] | "models" should subsume like "satisfies" | Yes | 3 | |
| 3430 | C++23 | 31.10.1 [fstream.syn] | std::fstream & co. should be constructible from string_view |
Yes | 3 | |
| 3431 | WP | 23.2.2.4 [container.opt.reqmts] | <=> for containers should require three_way_comparable<T> instead of <=> |
Yes | 2 | |
| 3432 | C++23 | 27.3.4 [string.view.comparison] | Missing requirement for comparison_category |
Yes | 0 | |
| 3433 | C++23 | 25.5.4.3 [range.subrange.access] | subrange::advance(n) has UB when n < 0 |
Yes | 2 | |
| 3434 | C++23 | 31.5.2.8 [ios.base.cons] | ios_base never reclaims memory for iarray and parray |
Yes | ||
| 3435 | C++23 | 24.5.4.4 [move.iter.cons] | three_way_comparable_with<reverse_iterator<int*>, reverse_iterator<const int*>> |
Yes | 2 | |
| 3436 | WP | 26.11.8 [specialized.construct] | std::construct_at should support arrays |
Yes | 2 | |
| 3437 | C++23 | 17.3.2 [version.syn] | __cpp_lib_polymorphic_allocator is in the wrong header |
Yes | 0 | |
| 3438 | New | 23.2.5.1 [container.node.overview] | §[container.node.overview] missing multiset/map cases |
No | 3 | |
| 3439 | New | 24.4.3 [iterator.operations] | "Distance" template parameter is underspecified |
No | 3 | |
| 3440 | NAD | 22.4.4.2 [tuple.cnstr] | Aggregate-paren-init breaks direct-initializing a tuple or optional from {aggregate-member-value} |
Yes | 2 | |
| 3441 | C++23 | 16.4.5.2.1 [namespace.std] | Misleading note about calls to customization points | Yes | 1 | |
| 3442 | Resolved | 16.4.5.2.1 [namespace.std] | Unsatisfiable suggested implementation of customization points | Yes | 1 | |
| 3443 | C++23 | 19.2.1 [networking.ts::socket.iostream.cons] | [networking.ts] net::basic_socket_iostream should use addressof |
Yes | 0 | |
| 3444 | New | 19.1.2 [networking.ts::socket.streambuf.members] | [networking.ts] net::basic_socket_streambuf::connect(Args&&...) effects are wrong |
No | 2 | |
| 3445 | LEWG | 19.2.1 [networking.ts::socket.iostream.cons] | [networking.ts] net::basic_socket_istream::connect should be constrained |
Yes | 3 | |
| 3446 | C++23 | 24.3.2.2 [readable.traits] | indirectly_readable_traits ambiguity for types with both value_type and element_type |
Yes | 2 | |
| 3447 | C++23 | 25.7.10.2 [range.take.view] | Deduction guides for take_view and drop_view have different constraints |
Yes | 0 | |
| 3448 | C++23 | 25.7.9.4 [range.transform.sentinel] | transform_view's sentinel<false> not comparable with iterator<true> |
Yes | 1 | |
| 3449 | C++23 | 25.7.10.3 [range.take.sentinel] | take_view and take_while_view's sentinel<false> not comparable with their const iterator |
Yes | 1 | |
| 3450 | C++23 | 25.7.11.2 [range.take.while.view] | The const overloads of take_while_view::begin/end are underconstrained |
Yes | 0 | |
| 3451 | New | 27.4.3 [basic.string] | Inconsistently explicit deduction guides | Yes | 3 | |
| 3452 | Resolved | 25.4.5 [range.view] | Are views really supposed to have strict 𝒪(1) destruction? |
Yes | 2 | |
| 3453 | C++23 | 24.4.4.2 [range.iter.op.advance] | Generic code cannot call ranges::advance(i, s) |
Yes | 2 | |
| 3454 | Open | 20.2.3 [pointer.traits] | pointer_traits::pointer_to should be constexpr |
Yes | ||
| 3455 | C++23 | 20.3.1.3.4 [unique.ptr.single.asgn] | Incorrect Postconditions on unique_ptr move assignment |
Yes | 0 | |
| 3456 | New | 28.2.3 [charconv.from.chars] | Pattern used by std::from_chars is underspecified |
Yes | 3 | |
| 3457 | New | 27.3.3 [string.view.template] | *this is not invalidated |
Yes | 3 | |
| 3458 | Resolved | 32.10.7 [futures.unique.future] | Is shared_future intended to work with arrays or function types? |
Yes | 0 | |
| 3459 | New | 18.4.4 [concept.convertible] | Why doesn't std::convertible_to have semantic requirement when To is reference-to-function type? |
No | 3 | |
| 3460 | C++23 | 17.13.5.2.4 [coroutine.handle.noop.resumption] | Unimplementable noop_coroutine_handle guarantees |
Yes | 2 | |
| 3461 | C++23 | 18.4.4 [concept.convertible] | convertible_to's description mishandles cv-qualified void |
Yes | 0 | |
| 3462 | C++23 | 28.5.6.1 [formatter.requirements] | §[formatter.requirements]: Formatter requirements forbid use of fc.arg() |
Yes | 3 | |
| 3463 | New | 26.10.11 [transform.inclusive.scan] | Incorrect requirements for transform_inclusive_scan without initial value |
Yes | 3 | |
| 3464 | C++23 | 31.7.5.4 [istream.unformatted] | istream::gcount() can overflow |
Yes | 0 | |
| 3465 | C++23 | 17.12.6 [cmp.alg] | compare_partial_order_fallback requires F < E |
Yes | 0 | |
| 3466 | C++23 | 32.10.6 [futures.promise] | Specify the requirements for promise/future/shared_future consistently |
Yes | 3 | |
| 3467 | C++23 | 24.3.4.4 [iterator.concept.winc] | bool can't be an integer-like type |
Yes | 0 | |
| 3468 | NAD | 23.2.8 [unord.req] | Transparent lookups in unordered containers are inconsistent | Yes | ||
| 3469 | Resolved | 17.13.4.7 [coroutine.handle.promise] | Precondition of coroutine_handle::promise may be insufficient |
Yes | 2 | |
| 3470 | C++23 | 25.5.4 [range.subrange] | convertible-to-non-slicing seems to reject valid case |
Yes | 3 | |
| 3471 | C++23 | 20.5 [mem.res] | polymorphic_allocator::allocate does not satisfy Cpp17Allocator requirements |
Yes | 3 | |
| 3472 | C++23 | 24.5.7 [iterators.counted] | counted_iterator is missing preconditions |
Yes | ||
| 3473 | C++23 | 28.5.8.3 [format.args] | Normative encouragement in non-normative note | Yes | 0 | |
| 3474 | C++23 | 25.7.14 [range.join] | Nesting join_views is broken because of CTAD |
Yes | ||
| 3475 | New | 32.4.3.3 [thread.thread.constr] | std::thread's constructor needs to be able to report general memory allocation failures |
Yes | 3 | |
| 3476 | C++23 | 32.4.3.3 [thread.thread.constr] | thread and jthread constructors require that the parameters be move-constructible
but never move construct the parameters |
Yes | 0 | |
| 3477 | C++23 | 25.7.3 [range.move.wrap] | Simplify constraints for semiregular-box |
Yes | 0 | |
| 3478 | Resolved | 25.7.17 [range.split] | views::split drops trailing empty range |
Yes | 2 | |
| 3479 | Resolved | 25.7.3 [range.move.wrap] | semiregular-box mishandles self-assignment |
Yes | 3 | |
| 3480 | C++23 | 31.12.11 [fs.class.directory.iterator] | directory_iterator and recursive_directory_iterator are not C++20 ranges |
Yes | 3 | |
| 3481 | C++23 | 25.4.6 [range.refinements] | viewable_range mishandles lvalue move-only views |
Yes | 2 | |
| 3482 | C++23 | 25.7.12.2 [range.drop.view] | drop_view's const begin should additionally require sized_range |
Yes | 0 | |
| 3483 | C++23 | 25.7.9.3 [range.transform.iterator] | transform_view::iterator's difference is overconstrained |
Yes | 0 | |
| 3484 | New | 17.15.7 [support.c.headers.other] | Should <stddef.h> declare ::nullptr_t? |
Yes | 3 | |
| 3485 | NAD | 32.5.7 [atomics.ref.generic] | atomic_ref safety should be based on operations that "potentially conflict" rather than lifetime |
Yes | 3 | |
| 3486 | LEWG | 21.3.6.4 [meta.unary.prop] | is_constructible<T[], T...> may be misleading in C++20 |
No | ||
| 3487 | New | 26.10 [numeric.ops] | Missing precondition on input and output aliasing of [numeric.ops] | No | 3 | |
| 3488 | Open | 23.3.3.4 [array.special] | Is array<const int, 0> swappable or not? |
Yes | 3 | |
| 3489 | New | 25.6.6.3 [range.istream.iterator] | Improve istream_view wording |
Yes | 3 | |
| 3490 | C++23 | 25.7.13.2 [range.drop.while.view] | ranges::drop_while_view::begin() is missing a precondition |
Yes | 0 | |
| 3491 | New | 17.12.6 [cmp.alg] | What is a "decayed type"? | No | 3 | |
| 3492 | C++23 | 25.7.23.3 [range.elements.iterator] | Minimal improvements to elements_view::iterator |
Yes | 0 | |
| 3493 | New | 22.10.17.3.2 [func.wrap.func.con] | The constructor of std::function taking an F is missing a constraint |
Yes | 3 | |
| 3494 | C++23 | 25.7.21 [range.reverse] | Allow ranges to be conditionally borrowed | Yes | ||
| 3495 | C++23 | 17.6.5 [ptr.launder] | constexpr launder makes pointers to inactive members of unions usable |
Yes | 3 | |
| 3496 | New | 31.11.2.4 [syncstream.syncbuf.members] | What does "uniquely associated" mean for basic_syncbuf::emit()? |
No | 3 | |
| 3497 | New | 31.11.2.4 [syncstream.syncbuf.members] | Postconditions for basic_syncbuf::emit() |
No | 3 | |
| 3498 | C++23 | 31.11.2.1 [syncstream.syncbuf.overview] | Inconsistent noexcept-specifiers for basic_syncbuf |
Yes | 3 | |
| 3499 | New | 32.2.5.4 [thread.req.lockable.timed] | Timed lockable and mutex requirements are imprecise about duration and time_point |
No | 3 | |
| 3500 | C++23 | 25.7.14.3 [range.join.iterator] | join_view::iterator::operator->() is bogus |
Yes | 0 | |
| 3501 | New | 31.7.6.5 [ostream.manip] | basic_syncbuf-related manipulators refer to some Allocator without defining it |
Yes | 3 | |
| 3502 | C++23 | 25.7.23.3 [range.elements.iterator] | elements_view should not be allowed to return dangling references |
Yes | 2 | |
| 3503 | New | 30.5.8 [time.duration.cast] | chrono::ceil has surprising requirement |
Yes | 3 | |
| 3504 | New | 32.7.4 [thread.condition.condvar] | condition_variable::wait_for is overspecified |
Yes | 3 | |
| 3505 | C++23 | 25.7.16.3 [range.lazy.split.outer] | split_view::outer-iterator::operator++ misspecified |
Yes | 2 | |
| 3506 | C++23 | 23.6.4 [priority.queue] | Missing allocator-extended constructors for priority_queue |
Yes | 3 | |
| 3507 | Open | 19.6.3.4 [stacktrace.entry.query] | P0881R7 ("stacktrace") does not define "actual file name", "actual line number" | No | 2 | |
| 3508 | Resolved | 32.5.7.1 [atomics.ref.generic.general] | atomic_ref<cv T> is not well-specified |
Yes | 2 | |
| 3509 | Resolved | 25.7.2 [range.adaptor.object] | Range adaptor objects are underspecified | Yes | 2 | |
| 3510 | Resolved | 16.3.3.3.5 [customization.point.object] | Customization point objects should be invocable as non-const too |
Yes | 3 | |
| 3511 | New | 16.4.5.9 [res.on.arguments] | Clarify global permission to move | Yes | 3 | |
| 3512 | New | 22.10.19 [unord.hash] | Incorrect exception safety guarantee for unordered containers | No | 3 | |
| 3513 | New | 3.43 [defns.prog.def.type] | Fix definition of program-defined based on its uses | Yes | 3 | |
| 3514 | Resolved | 19.6.2 [stacktrace.syn] | stacktrace should add type alias pmr::stacktrace |
Yes | 3 | |
| 3515 | C++23 | 19.6.2 [stacktrace.syn] | §[stacktrace.basic.nonmem]: operator<< should be less templatized |
Yes | 2 | |
| 3516 | New | 32.4.3.2 [thread.thread.id] | thread::id spaceship may be inconsistent with equality |
Yes | 3 | |
| 3517 | C++23 | 25.7.14.3 [range.join.iterator] | join_view::iterator's iter_swap is underconstrained |
Yes | ||
| 3518 | C++23 | 27.2.2 [char.traits.require] | Exception requirements on char trait operations unclear | Yes | ||
| 3519 | C++23 | 29.5.4 [rand.eng] | Incomplete synopses for <random> classes |
Yes | 3 | |
| 3520 | C++23 | 25.7.9.3 [range.transform.iterator] | iter_move and iter_swap are inconsistent for transform_view::iterator |
Yes | 2 | |
| 3521 | C++23 | 26.13 [alg.c.library] | Overly strict requirements on qsort and bsearch |
Yes | ||
| 3522 | C++23 | 23.6.4 [priority.queue] | Missing requirement on InputIterator template parameter for priority_queue constructors |
Yes | ||
| 3523 | C++23 | 25.6.4.2 [range.iota.view] | iota_view::sentinel is not always iota_view's sentinel |
Yes | ||
| 3524 | Resolved | 25.7 [range.adaptors] | Unimplementable narrowing and evaluation order requirements for range adaptors | Yes | 3 | |
| 3525 | C++23 | 20.2.8.2 [allocator.uses.construction] | uses_allocator_construction_args fails to handle types convertible to pair |
Yes | 3 | |
| 3526 | C++23 | 20.2.8.2 [allocator.uses.construction] | Return types of uses_allocator_construction_args unspecified |
Yes | 3 | |
| 3527 | C++23 | 20.2.8.2 [allocator.uses.construction] | uses_allocator_construction_args handles rvalue pairs of rvalue references incorrectly |
Yes | ||
| 3528 | C++23 | 22.4.6 [tuple.apply] | make_from_tuple can perform (the equivalent of) a C-style cast |
Yes | 3 | |
| 3529 | C++23 | 23.6.4 [priority.queue] | priority_queue(first, last) should construct c with (first, last) |
Yes | ||
| 3530 | C++23 | 22.10.8.8 [comparisons.three.way] | BUILTIN-PTR-MEOW should not opt the type out of syntactic checks |
Yes | ||
| 3531 | New | 23.4.3.1 [map.overview] | LWG 3025 broke previous valid code | Yes | 3 | |
| 3532 | C++23 | 25.7.16.5 [range.lazy.split.inner] | split_view<V, P>::inner-iterator<true>::operator++(int) should depend on Base |
Yes | ||
| 3533 | C++23 | 25.7.8.3 [range.filter.iterator] | Make base() const & consistent across iterator wrappers that supports input_iterators |
Yes | ||
| 3534 | LEWG | 26.8.7.4 [set.intersection] | ranges::set_intersection and ranges::set_difference algorithm requirements are too strict |
Yes | 3 | |
| 3535 | C++23 | 25.7.14.3 [range.join.iterator] | join_view::iterator::iterator_category and ::iterator_concept lie |
Yes | 2 | |
| 3536 | C++23 | 30.5.11 [time.duration.io] | Should chrono::from_stream() assign zero to duration for failure? |
Yes | ||
| 3537 | New | 24.7 [iterator.range] | §[iterator.range] Missing noexcept for std::rbegin/rend for arrays and
initializer_list |
No | 3 | |
| 3538 | New | 16.2 [library.c] | §[library.c] C library functions are not addressable | No | 2 | |
| 3539 | C++23 | 28.5.5 [format.functions] | format_to must not copy models of output_iterator<const charT&> |
Yes | ||
| 3540 | C++23 | 28.5.8.1 [format.arg] | §[format.arg] There should be no const in basic_format_arg(const T* p) |
Yes | ||
| 3541 | C++23 | 24.3.2.2 [readable.traits] | indirectly_readable_traits should be SFINAE-friendly for all types |
Yes | ||
| 3542 | C++23 | 28.5.8.1 [format.arg] | basic_format_arg mis-handles basic_string_view with custom traits |
Yes | ||
| 3543 | C++23 | 24.5.7.1 [counted.iterator] | Definition of when counted_iterators refer to the same sequence isn't quite right |
Yes | ||
| 3544 | C++23 | 28.5.8.2 [format.arg.store] | format-arg-store::args is unintentionally not exposition-only |
Yes | 3 | |
| 3545 | C++23 | 20.2.3 [pointer.traits] | std::pointer_traits should be SFINAE-friendly |
Yes | 2 | |
| 3546 | C++23 | 24.5.5.5 [common.iter.nav] | common_iterator's postfix-proxy is not quite right |
Yes | ||
| 3547 | Resolved | 30.12 [time.format] | Time formatters should not be locale sensitive by default | Yes | 2 | |
| 3548 | C++23 | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr construction from unique_ptr should move (not copy) the deleter |
Yes | ||
| 3549 | C++23 | 25.5.3 [view.interface] | view_interface is overspecified to derive from view_base |
Yes | 2 | |
| 3550 | New | 16.4.5.3 [reserved.names] | Names reserved by C for standard library not reserved by C++ | No | 3 | |
| 3551 | C++23 | 25.5.5 [range.dangling] | borrowed_{iterator,subrange}_t are overspecified |
Yes | ||
| 3552 | C++23 | 20.2.2 [memory.syn] | Parallel specialized memory algorithms should require forward iterators | Yes | ||
| 3553 | C++23 | 25.7.16.4 [range.lazy.split.outer.value] | Useless constraint in split_view::outer-iterator::value_type::begin() |
Yes | ||
| 3554 | C++23 | 30.13 [time.parse] | chrono::parse needs const charT* and basic_string_view<charT> overloads |
Yes | 2 | |
| 3555 | C++23 | 25.7.9.3 [range.transform.iterator] | {transform,elements}_view::iterator::iterator_concept
should consider const-qualification of the underlying range |
Yes | ||
| 3556 | New | 16.3.2.3 [structure.requirements] | Specification of when semantic constraints are imposed by use of concepts is unclear | No | 3 | |
| 3557 | C++23 | 18.4.4 [concept.convertible] | The static_cast expression in convertible_to has the wrong operand |
Yes | ||
| 3558 | NAD Editorial | 25.7.23.4 [range.elements.sentinel] | elements_view::sentinel's first operator- has wrong return type |
Yes | ||
| 3559 | C++23 | 25.4.4 [range.sized] | Semantic requirements of sized_range is circular |
Yes | ||
| 3560 | C++23 | 26.6.13 [alg.equal] | ranges::equal and ranges::is_permutation should short-circuit for sized_ranges |
Yes | ||
| 3561 | C++23 | 29.5.5.2 [rand.adapt.disc] | Issue with internal counter in discard_block_engine |
Yes | ||
| 3562 | NAD | 22.5.5 [optional.nullopt] | Superseding nullopt_t's requirement to not be DefaultConstructible |
Yes | ||
| 3563 | C++23 | 25.7.23.1 [range.elements.overview] | keys_view example is broken |
Yes | 3 | |
| 3564 | C++23 | 25.7.9.3 [range.transform.iterator] | transform_view::iterator<true>::value_type and iterator_category should
use const F& |
Yes | 2 | |
| 3565 | Resolved | 30.12 [time.format] | Handling of encodings in localized formatting of chrono types is underspecified |
Yes | 2 | |
| 3566 | C++23 | 22.5.9 [optional.comp.with.t] | Constraint recursion for operator<=>(optional<T>, U) |
Yes | ||
| 3567 | C++23 | 28.5.6.7 [format.context] | Formatting move-only iterators take two | Yes | ||
| 3568 | C++23 | 25.6.6.2 [range.istream.view] | basic_istream_view needs to initialize value_ |
Yes | ||
| 3569 | C++23 | 25.7.14.3 [range.join.iterator] | join_view fails to support ranges of ranges with non-default_initializable iterators |
Yes | 3 | |
| 3570 | C++23 | 31.11.3.3 [syncstream.osyncstream.members] | basic_osyncstream::emit should be an unformatted output function |
Yes | ||
| 3571 | C++23 | 31.7.6.5 [ostream.manip] | flush_emit should set badbit if the emit call fails |
Yes | ||
| 3572 | C++23 | 25.7.3 [range.move.wrap] | copyable-box should be fully constexpr |
Yes | ||
| 3573 | C++23 | 27.3.3.2 [string.view.cons] | Missing Throws element for basic_string_view(It begin, End end) |
Yes | ||
| 3574 | C++23 | 24.5.5.1 [common.iterator] | common_iterator should be completely constexpr-able |
Yes | 3 | |
| 3575 | Resolved | 24.3.4.4 [iterator.concept.winc] | <=> for integer-class types isn't consistently specified |
Yes | 3 | |
| 3576 | Resolved | 28.5.2.2 [format.string.std] | Clarifying fill character in std::format |
Yes | 2 | |
| 3577 | New | 23.2.7.1 [associative.reqmts.general] | Merging an (unordered) associative container with itself | No | 3 | |
| 3578 | WP | 23.2.7.1 [associative.reqmts.general] | Iterator SCARYness in the context of associative container merging | Yes | 3 | |
| 3579 | NAD | 27.4.3.5 [string.capacity] | Complexity guarantees for resize() and append() functions across the library |
Yes | 3 | |
| 3580 | C++23 | 25.6.4.3 [range.iota.iterator] | iota_view's iterator's binary operator+ should be improved |
Yes | ||
| 3581 | C++23 | 27.3.3.2 [string.view.cons] | The range constructor makes basic_string_view not trivially move constructible |
Yes | ||
| 3582 | New | 32.10.9 [futures.async] | Unclear where std::async exceptions are handled |
Yes | 3 | |
| 3583 | New | 22.4.4.2 [tuple.cnstr] | Clarify if/when short circuiting applies to conditions in Constraints: elements | No | 3 | |
| 3584 | New | 17.12.3 [cmp.common] | Clarify common comparison category conversions | Yes | 3 | |
| 3585 | C++23 | 22.6.3.4 [variant.assign] | Variant converting assignment with immovable alternative | Yes | ||
| 3586 | New | 28.5.2.2 [format.string.std] | Formatting character alignment inconsistencies | Yes | 2 | |
| 3587 | New | 17.12.4 [cmp.concept] | std::three_way_comparable_with<T, U, void> can be satisfied but can't be modeled |
No | 3 | |
| 3588 | NAD | 20.3.1.3.1 [unique.ptr.single.general] | Strike out purposeless UB involving the deleter in members functions of unique_ptr |
Yes | ||
| 3589 | C++23 | 25.5.4 [range.subrange] | The const lvalue reference overload of get for subrange
does not constrain I to be copyable when N == 0 |
Yes | 3 | |
| 3590 | C++23 | 25.7.17.2 [range.split.view] | split_view::base() const & is overconstrained |
Yes | ||
| 3591 | C++23 | 25.7.16.5 [range.lazy.split.inner] | lazy_split_view<input_view>::inner-iterator::base() && invalidates outer iterators |
Yes | ||
| 3592 | C++23 | 25.7.16.2 [range.lazy.split.view] | lazy_split_view needs to check the simpleness of Pattern |
Yes | ||
| 3593 | C++23 | 24.5.4 [move.iterators] | Several iterators' base() const & and lazy_split_view::outer-iterator::value_type::end() missing noexcept |
Yes | ||
| 3594 | C++23 | 20.3.4.3 [inout.ptr.t] | inout_ptr — inconsistent release() in destructor |
Yes | 1 | |
| 3595 | C++23 | 24.5.5.4 [common.iter.access] | Exposition-only classes proxy and postfix-proxy for common_iterator
should be fully constexpr |
Yes | ||
| 3596 | NAD | 26.6.16 [alg.starts.with] | ranges::starts_with and ranges::ends_with are underspecified |
Yes | ||
| 3597 | C++23 | 25.6.4.2 [range.iota.view] | Unsigned integer types don't model advanceable |
Yes | 3 | |
| 3598 | C++23 | 19.5.3.5 [syserr.errcat.objects] | system_category().default_error_condition(0) is underspecified |
Yes | ||
| 3599 | New | 25.7.16.2 [range.lazy.split.view] | The const overload of lazy_split_view::begin should be constrained by const Pattern |
Yes | 3 | |
| 3600 | C++23 | 24.6.2.2 [istream.iterator.cons] | Making istream_iterator copy constructor trivial is an ABI break |
Yes | 3 | |
| 3601 | C++23 | 24.5.5.5 [common.iter.nav] | common_iterator's postfix-proxy needs indirectly_readable |
Yes | ||
| 3602 | New | 24.5.1.4 [reverse.iter.cons] | reverse_iterator's converting assignment is overconstrained |
Yes | 3 | |
| 3603 | New | 28.6.7.2 [re.regex.construct] | Matching of null characters by regular expressions is underspecified | No | 3 | |
| 3604 | New | 28.6.7.2 [re.regex.construct] | What is the effect of an invalid value of type syntax_option_type? |
No | 3 | |
| 3605 | New | 28.6.4.3 [re.matchflag] | regex_constants::match_prev_avail is underspecified |
No | 3 | |
| 3606 | New | 28.6.2 [re.req] | Missing regex_traits::locale_type requirements |
No | 3 | |
| 3607 | C++23 | 24.3.4.14 [iterator.concept.contiguous] | contiguous_iterator should not be allowed to have custom iter_move and iter_swap behavior |
Yes | ||
| 3608 | New | 18.4.4 [concept.convertible] | convertible_to and temporary-bound references |
No | 3 | |
| 3609 | New | 25.6.4.4 [range.iota.sentinel] | std::ranges::iota_view<int, long> has non-subtractable iterator and
sentinel types |
Yes | 3 | |
| 3610 | C++23 | 25.6.4.2 [range.iota.view] | iota_view::size sometimes rejects integer-class types |
Yes | ||
| 3611 | NAD | 32.5.8.2 [atomics.types.operations] | Should compare_exchange be allowed to modify the expected value on success? |
Yes | 2 | |
| 3612 | C++23 | 28.5.2.2 [format.string.std] | Inconsistent pointer alignment in std::format |
Yes | ||
| 3613 | New | 22.5.5 [optional.nullopt] | Specify that nullopt_t is copyable |
Yes | 3 | |
| 3614 | New | 25.6.4.2 [range.iota.view] | iota_view::size and the most negative signed integer values |
Yes | 3 | |
| 3615 | New | 24.3.2.1 [incrementable.traits] | The last specialization of incrementable_traits has wrong operand types |
Yes | 3 | |
| 3616 | C++23 | 31.11.2.6 [syncstream.syncbuf.special] | LWG 3498 seems to miss the non-member swap for basic_syncbuf |
Yes | ||
| 3617 | C++23 | 22.10.17.3.2 [func.wrap.func.con] | function/packaged_task deduction guides and deducing this |
Yes | 2 | |
| 3618 | C++23 | 25.7.9.3 [range.transform.iterator] | Unnecessary iter_move for transform_view::iterator |
Yes | ||
| 3619 | C++23 | 28.5.5 [format.functions] | Specification of vformat_to contains ill-formed formatted_size calls |
Yes | ||
| 3620 | New | 16.3.3.3.4.1 [character.seq.general] | What are execution character sets and execution wide-character sets (after P2314R4)? | No | 3 | |
| 3621 | C++23 | 17.3.2 [version.syn] | Remove feature-test macro __cpp_lib_monadic_optional |
Yes | ||
| 3622 | C++23 | 23.2.8.1 [unord.req.general] | Misspecified transitivity of equivalence in §[unord.req.general] | Yes | 2 | |
| 3623 | New | 24.5.1.1 [reverse.iterators.general] | Uses of std::reverse_iterator with containers should not require manually including <iterator> |
Yes | 3 | |
| 3624 | New | 17.7 [support.rtti] | Inconsistency of <typeinfo>, <initializer_list>, and
<compare> in the standard library |
Yes | 3 | |
| 3625 | Open | 19.6.2 [stacktrace.syn] | Should <stacktrace> provide range access function templates? |
Yes | 3 | |
| 3626 | New | 19.6.4.1 [stacktrace.basic.overview] | Is std::basic_stacktrace required to use contiguous storage? |
Yes | 3 | |
| 3627 | New | 22.5.10 [optional.specalg] | Inconsistent specifications for std::make_optional overloads |
Yes | 3 | |
| 3628 | New | 26.11 [specialized.algorithms] | "Effects: Equivalent to:" and uninitialized memory algorithms | No | 3 | |
| 3629 | C++23 | 19.5 [syserr] | make_error_code and make_error_condition are customization points |
Yes | 2 | |
| 3630 | New | 28.6.7.2 [re.regex.construct] | Inconsistent basic_regex construction and assignment from iterator range |
No | 4 | |
| 3631 | C++23 | 28.5.8.1 [format.arg] | basic_format_arg(T&&) should use remove_cvref_t<T> throughout |
Yes | 3 | |
| 3632 | C++23 | 20.3.1.3.2 [unique.ptr.single.ctor] | unique_ptr "Mandates: This constructor is not selected by class template argument deduction" |
Yes | ||
| 3633 | New | 32.5 [atomics] | Atomics are copy constructible and copy assignable from volatile atomics |
Yes | 3 | |
| 3634 | New | 20.5.4 [mem.res.global] | When are static-duration memory_resource objects destroyed? |
No | 3 | |
| 3635 | NAD | 17.3.2 [version.syn] | Add __cpp_lib_deduction_guides to feature test macros |
Yes | 3 | |
| 3636 | C++23 | 28.5.6.1 [formatter.requirements] | formatter<T>::format should be const-qualified |
Yes | 1 | |
| 3637 | New | 20.5.2 [mem.res.class] | pmr::memory_resource::do_allocate needs clarification |
No | 3 | |
| 3638 | New | 23.3.14 [vector.bool] | vector<bool>::swap(reference, reference) is useless |
Yes | 3 | |
| 3639 | Resolved | 28.5.2.2 [format.string.std] | Handling of fill character width is underspecified in std::format |
Yes | 3 | |
| 3640 | New | 16.4.4 [utility.requirements] | Clarify which exceptions are propagated | Yes | 3 | |
| 3641 | New | 28.5.1 [format.syn] | Add operator== to format_to_n_result |
Yes | 3 | |
| 3642 | New | 22.10.17.4.3 [func.wrap.move.ctor] | move_only_function assignment operators seem to be defined suboptimal |
Yes | 3 | |
| 3643 | C++23 | 24.5.7.5 [counted.iter.nav] | Missing constexpr in std::counted_iterator |
Yes | ||
| 3644 | New | 28.5.2.2 [format.string.std] | std::format does not define "integer presentation type" |
Yes | 2 | |
| 3645 | C++23 | 27.4.3.5 [string.capacity] | resize_and_overwrite is overspecified to call its callback with lvalues |
Yes | 2 | |
| 3646 | C++23 | 25.5.3.1 [view.interface.general] | std::ranges::view_interface::size returns a signed type |
Yes | 3 | |
| 3647 | New | 26.11.2 [special.mem.concepts] | nothrow-input-iterator constraints should not mention copying |
Yes | 3 | |
| 3648 | C++23 | 28.5.2.2 [format.string.std] | format should not print bool with 'c' |
Yes | ||
| 3649 | TS | 4.2 [fund.ts.v3::general.feature.test] | [fund.ts.v3] Reinstate and bump __cpp_lib_experimental_memory_resource feature test macro |
Yes | ||
| 3650 | C++23 | 27.4.3.1 [basic.string.general] | Are std::basic_string's iterator and const_iterator constexpr iterators? |
Yes | ||
| 3651 | New | 28.5 [format] | Unspecified lifetime guarantees for the format string | No | 3 | |
| 3652 | NAD | 17.14.3 [csetjmp.syn] | Can we relax the preconditions of longjmp? |
Yes | ||
| 3653 | New | 17.13.2 [coroutine.syn] | <coroutine> is freestanding, but uses std::hash which is not |
No | 3 | |
| 3654 | C++23 | 28.5.6.7 [format.context] | basic_format_context::arg(size_t) should be noexcept |
Yes | ||
| 3655 | C++23 | 22.10.4 [func.require] | The INVOKE operation and union types |
Yes | 3 | |
| 3656 | C++23 | 22.11.5 [bit.pow.two] | Inconsistent bit operations returning a count | Yes | 3 | |
| 3657 | C++23 | 31.12.6 [fs.class.path] | std::hash<std::filesystem::path> is not enabled |
Yes | ||
| 3658 | New | 31.6.3.3.5 [streambuf.pub.put] | basic_streambuf::sputn is both overspecified and underspecified |
Yes | 3 | |
| 3659 | C++23 | 32.5.10 [atomics.flag] | Consider ATOMIC_FLAG_INIT undeprecation |
Yes | 3 | |
| 3660 | C++23 | 24.5.5.2 [common.iter.types] | iterator_traits<common_iterator>::pointer should conform to §[iterator.traits] |
Yes | ||
| 3661 | C++23 | 32.5.8.7.2 [util.smartptr.atomic.shared] | constinit atomic<shared_ptr<T>> a(nullptr); should work |
Yes | ||
| 3662 | New | 27.4.3.7.2 [string.append] | basic_string::append/assign(NTBS, pos, n) suboptimal |
Yes | 3 | |
| 3663 | New | 27.4.3.3 [string.cons] | basic_string(const T&, const Alloc&) turns moves into copies |
Yes | 3 | |
| 3664 | C++23 | 24.4.4.3 [range.iter.op.distance] | LWG 3392 broke std::ranges::distance(a, a+3) |
Yes | 2 | |
| 3665 | New | 20.2.9.2 [allocator.traits.types] | Is std::allocator_traits<Alloc>::rebind_alloc SFINAE-friendly? |
No | 3 | |
| 3666 | New | 25.7.14 [range.join] | join_view's difference type is too small |
No | 2 | |
| 3667 | NAD | 31.7.6.3 [ostream.formatted] | std::cout << &X::f prints 1 |
Yes | ||
| 3668 | New | 31.12.11.2 [fs.dir.itr.members] | [recursive_]directory_iterator constructors refer to undefined options |
Yes | 3 | |
| 3669 | New | 4.1.2 [intro.abstract] | std::filesystem operations should be observable behaviour |
No | 3 | |
| 3670 | C++23 | 25.6.4.3 [range.iota.iterator] | Cpp17InputIterators don't have integer-class difference types | Yes | ||
| 3671 | C++23 | 32.5.12 [stdatomic.h.syn] | atomic_fetch_xor missing from stdatomic.h |
Yes | ||
| 3672 | C++23 | 24.5.5.4 [common.iter.access] | common_iterator::operator->() should return by value |
Yes | ||
| 3673 | Resolved | 28.3.3.1.3 [locale.cons] | §[locale.cons] Ambiguous argument in Throws for locale+name+category constructor | Yes | 3 | |
| 3674 | New | 28.3.3.1.4 [locale.members] | Removal of requirement for locale names for construction of locales not explained | Yes | 2 | |
| 3675 | New | 31.5.2.6 [ios.base.storage] | std::ios_base::iword/pword might be misspecified |
Yes | 4 | |
| 3676 | Resolved | 28.3.3.1.3 [locale.cons] | Name of locale composed using std::locale::none |
Yes | 3 | |
| 3677 | C++23 | 20.2.8.2 [allocator.uses.construction] | Is a cv-qualified pair specially handled in uses-allocator construction? |
Yes | 2 | |
| 3678 | New | 30.11.5.1 [time.zone.overview] | Constructors of std::chrono::time_zone might be overly unspecified |
Yes | 4 | |
| 3679 | LEWG | 25.6.6 [range.istream] | Is <ranges> sufficient for istream_view? |
No | 3 | |
| 3680 | New | 22.10.17.4.3 [func.wrap.move.ctor] | Constructor of move_only_function with empty ref-qualifier is over-constrained |
Yes | 2 | |
| 3681 | New | 20.5.1 [mem.res.syn] | Further considerations on LWG 3679 | No | 4 | |
| 3682 | New | 16.4.4.6.1 [allocator.requirements.general] | A Cpp17Allocator type can't silently ignore an unsupported alignment | No | 3 | |
| 3683 | C++23 | 20.5.3 [mem.poly.allocator.class] | operator== for polymorphic_allocator cannot deduce template argument in common cases |
Yes | ||
| 3684 | New | 20.2.10.2 [allocator.members] | std::allocator<T>::allocate_at_least in constant evaluation |
Yes | 3 | |
| 3685 | New | 25.7.16.2 [range.lazy.split.view] | In lazy_split_view, CTAD doesn't work when given an input_range input and a tiny-range pattern |
Yes | 3 | |
| 3686 | New | 25.7.16.3 [range.lazy.split.outer] | In lazy_split_view, comparing a default-constructed outer-iterator or
inner-iterator with std::default_sentinel results in null pointer dereference |
Yes | 3 | |
| 3687 | C++23 | 22.8.7.4 [expected.void.assign] | expected<cv void, E> move constructor should move |
Yes | ||
| 3688 | New | 22.8.4 [expected.bad] | Exception specifications of copy/move member functions of std::bad_expected_access |
No | 2 | |
| 3689 | New | 28.3.4.3.2.3 [facet.num.get.virtuals] | num_get overflow determination unclear and incorrect |
No | 3 | |
| 3690 | New | 16.4.2.2 [contents] | std::make_from_tuple etc. should find all tuple-like std::get overloads |
Yes | 3 | |
| 3691 | New | 23.2.7.1 [associative.reqmts.general] | Replacement of keys in associative containers | Yes | 3 | |
| 3692 | C++23 | 25.7.25.3 [range.zip.iterator] | zip_view::iterator's operator<=> is overconstrained |
Yes | ||
| 3693 | New | 29.7 [c.math] | §[c.math] Can any of float/double/long double overloads be fused into template overloads? |
No | 2 | |
| 3694 | New | 27.2.2 [char.traits.require] | Should traits_type::length be customizable? |
No | 4 | |
| 3695 | NAD | 27.1 [strings.general] | The standard-layout property of char-like types serves for nothing | Yes | 4 | |
| 3696 | New | 31.2.2 [stream.types] | "Basic integral types" should not be used | Yes | 3 | |
| 3697 | New | 21.3.6.4 [meta.unary.prop] | Preconditions of reference_constructs_from_temporary/reference_converts_from_temporary seem wrong |
Yes | 3 | |
| 3698 | Resolved | 28.6.11 [re.iter] | regex_iterator and join_view don't work together very well |
Yes | 2 | |
| 3699 | New | 31.12.6.5.11 [fs.path.gen] | lexically_relative on UNC drive paths (\\?\C:\...) results in a default-constructed value |
No | 3 | |
| 3700 | Resolved | 25.7.14.2 [range.join.view] | The const begin of the join_view family does not require InnerRng to be a range |
Yes | 3 | |
| 3701 | C++23 | 28.5.6.4 [format.formatter.spec] | Make formatter<remove_cvref_t<const charT[N]>, charT> requirement explicit |
Yes | ||
| 3702 | C++23 | 25.7.26.3 [range.zip.transform.iterator] | Should zip_transform_view::iterator remove operator<? |
Yes | ||
| 3703 | C++23 | 22.8.7.1 [expected.void.general] | Missing requirements for expected<T, E> requires is_void<T> |
Yes | 2 | |
| 3704 | C++23 | 23.4.6.1 [set.overview] | LWG 2059 added overloads that might be ill-formed for sets | Yes | ||
| 3705 | C++23 | 27.4.6 [basic.string.hash] | Hashability shouldn't depend on basic_string's allocator |
Yes | ||
| 3706 | New | 28.5.6.4 [format.formatter.spec] | How does std::format work with character arrays of unknown bound? |
No | 3 | |
| 3707 | C++23 | 25.7.29.4 [range.chunk.outer.value] | chunk_view::outer-iterator::value_type::size should return unsigned type |
Yes | ||
| 3708 | C++23 | 25.7.11.3 [range.take.while.sentinel] | take_while_view::sentinel's conversion constructor should move |
Yes | ||
| 3709 | C++23 | 22.5.3.1 [optional.optional.general] | LWG-3703 was underly ambitious | Yes | ||
| 3710 | C++23 | 25.7.29.2 [range.chunk.view.input] | The end of chunk_view for input ranges can be const |
Yes | ||
| 3711 | C++23 | 25.7.30.2 [range.slide.view] | Missing preconditions for slide_view constructor |
Yes | ||
| 3712 | C++23 | 25.7.29.2 [range.chunk.view.input] | chunk_view and slide_view should not be default_initializable |
Yes | ||
| 3713 | C++23 | 26.8.1 [alg.sorting.general] | Sorted with respect to comparator (only) | Yes | ||
| 3714 | NAD | 25.7.26.2 [range.zip.transform.view] | Non-single-argument constructors for range adaptors should not be explicit |
Yes | 4 | |
| 3715 | C++23 | 25.5.3.1 [view.interface.general] | view_interface::empty is overconstrained |
Yes | ||
| 3716 | New | 24.3.4.11 [iterator.concept.forward] | §[iterator.concept.forward][forward.iterators] Two different definitions of multi-pass guarantee | No | 3 | |
| 3717 | C++23 | 25.7.20.2 [range.common.view] | common_view::end should improve random_access_range case |
Yes | 3 | |
| 3718 | Resolved | 28.5.8.1 [format.arg] | P2418R2 broke the overload resolution for std::basic_format_arg |
Yes | 2 | |
| 3719 | C++23 | 31.12.11.1 [fs.class.directory.iterator.general] | Directory iterators should be usable with default sentinel | Yes | ||
| 3720 | C++23 | 28.5.2.2 [format.string.std] | Restrict the valid types of arg-id for width and precision in std-format-spec | Yes | 2 | |
| 3721 | C++23 | 28.5.2.2 [format.string.std] | Allow an arg-id with a value of zero for width in std-format-spec | Yes | 3 | |
| 3722 | New | 25.5.7.2 [range.utility.conv.to] | ranges::to reserves the wrong size |
Yes | 4 | |
| 3723 | C++23 | 23.6.4.4 [priqueue.members] | priority_queue::push_range needs to append_range |
Yes | 2 | |
| 3724 | C++23 | 16.3.3.2 [expos.only.entity] | decay-copy should be constrained |
Yes | 3 | |
| 3725 | New | 24.5.1.6 [reverse.iter.elem] | reverse_iterator::operator-> should not use prev for non-pointer iterators |
Yes | 3 | |
| 3726 | NAD | 24.5.1.6 [reverse.iter.elem] | reverse_iterator::operator-> is underconstrained for non-pointer iterators |
Yes | ||
| 3727 | NAD | 24.5.1.6 [reverse.iter.elem] | reverse_iterator/common_iterator's operator-> should not require the underlying iterator's operator-> to be a const member function |
Yes | ||
| 3728 | New | 22.4.9 [tuple.rel] | Can't make neither head nor tail of the description of operator<=>(tuple, tuple) |
Yes | 4 | |
| 3729 | New | 25.2 [ranges.syn] | std::tuple_element_t<std::ranges::subrange<I, S, K>> should remove top-level cv-qualifiers |
Yes | 4 | |
| 3730 | New | 25.7.12.2 [range.drop.view] | std::ranges::drop_view may have different size type from its underlying view |
Yes | 3 | |
| 3731 | New | 25.7.25.2 [range.zip.view] | zip_view and adjacent_view are underconstrained |
Yes | 3 | |
| 3732 | C++23 | 23.2.4 [sequence.reqmts] | prepend_range and append_range can't be amortized constant time |
Yes | ||
| 3733 | C++23 | 25.5.7.2 [range.utility.conv.to] | ranges::to misuses cpp17-input-iterator |
Yes | 2 | |
| 3734 | C++23 | 20.3.4.1 [out.ptr.t] | Inconsistency in inout_ptr and out_ptr for empty case |
Yes | 2 | |
| 3735 | NAD | 25.7.27.1 [range.adjacent.overview] | views::adjacent<0> should be prohibited |
Yes | ||
| 3736 | C++23 | 24.2 [iterator.synopsis] | move_iterator missing disable_sized_sentinel_for specialization |
Yes | ||
| 3737 | C++23 | 25.7.10.3 [range.take.sentinel] | take_view::sentinel should provide operator- |
Yes | 3 | |
| 3738 | C++23 | 25.7.10.2 [range.take.view] | Missing preconditions for take_view constructor |
Yes | ||
| 3739 | NAD | 25.7.29.2 [range.chunk.view.input] | chunk_view::size should preserve the signedness of the size of the underlying range |
Yes | ||
| 3740 | NAD | 25.7.30.2 [range.slide.view] | slide_view::size should preserve the signedness of underlying range's size |
Yes | ||
| 3741 | NAD | 30.5.10 [time.duration.alg] | std::chrono::abs(duration) is ill-formed with non-reduced periods |
Yes | ||
| 3742 | C++23 | 23.2.4 [sequence.reqmts] | deque::prepend_range needs to permute |
Yes | 2 | |
| 3743 | C++23 | 25.5.7.2 [range.utility.conv.to] | ranges::to's reserve may be ill-formed |
Yes | ||
| 3744 | New | 31.12.13.6 [fs.op.copy.symlink] | copy_symlink(junction, new_symlink)'s behavior is unclear |
No | 3 | |
| 3745 | C++23 | 32.5.2 [atomics.syn] | std::atomic_wait and its friends lack noexcept |
Yes | ||
| 3746 | C++23 | 22.5.9 [optional.comp.with.t] | optional's spaceship with U with a type derived from optional
causes infinite constraint meta-recursion |
Yes | ||
| 3747 | C++23 | 26.11.5 [uninitialized.copy] | ranges::uninitialized_copy_n, ranges::uninitialized_move_n, and
ranges::destroy_n should use std::move |
Yes | ||
| 3748 | New | 24.5.5.6 [common.iter.cmp] | common_iterator and counted_iterator' operator- are missing cast to return type |
Yes | 3 | |
| 3749 | WP | 24.5.5 [iterators.common] | common_iterator should handle integer-class difference types |
Yes | 2 | |
| 3750 | C++23 | 17.3.2 [version.syn] | Too many papers bump __cpp_lib_format |
Yes | ||
| 3751 | C++23 | 17.3.2 [version.syn] | Missing feature macro for flat_set |
Yes | ||
| 3752 | NAD | 27.4.3.8.3 [string.substr] | Should string::substr forward the allocator to the newly created string? |
Yes | ||
| 3753 | C++23 | 16.3.3.7 [freestanding.item] | Clarify entity vs. freestanding entity | Yes | 2 | |
| 3754 | C++23 | 22.8.6.1 [expected.object.general] | Class template expected synopsis contains declarations that do not match the detailed description |
Yes | ||
| 3755 | C++23 | 25.7.25.2 [range.zip.view] | tuple-for-each can call user-defined operator, |
Yes | ||
| 3756 | C++23 | 17.14.5 [support.signal] | Is the std::atomic_flag class signal-safe? |
Yes | 3 | |
| 3757 | C++23 | 22.2.4 [forward] | What's the effect of std::forward_like<void>(x)? |
Yes | ||
| 3758 | New | 23.3.13.3 [vector.capacity] | Element-relocating operations of std::vector and std::deque
should conditionally require Cpp17CopyInsertable in their preconditions |
No | 3 | |
| 3759 | C++23 | 26.7.11 [alg.rotate] | ranges::rotate_copy should use std::move |
Yes | ||
| 3760 | C++23 | 25.7.33 [range.cartesian] | cartesian_product_view::iterator's parent_ is never valid |
Yes | ||
| 3761 | C++23 | 25.7.33.3 [range.cartesian.iterator] | cartesian_product_view::iterator::operator- should pass by reference |
Yes | ||
| 3762 | C++23 | 25.8.6 [coro.generator.iterator] | generator::iterator::operator== should pass by reference |
Yes | ||
| 3763 | New | 25.6.5.3 [range.repeat.iterator] | Should range adaptor iterators only provide iterator_category when its
difference_type is not an integer-class type? |
Yes | 3 | |
| 3764 | C++23 | 22.10.6.5 [refwrap.invoke] | reference_wrapper::operator() should propagate noexcept |
Yes | ||
| 3765 | C++23 | 24.2 [iterator.synopsis] | const_sentinel should be constrained |
Yes | ||
| 3766 | C++23 | 25.5.3.1 [view.interface.general] | view_interface::cbegin is underconstrained |
Yes | 2 | |
| 3767 | WP | 28.3.3.1.2.1 [locale.category] | codecvt<charN_t, char8_t, mbstate_t> incorrectly added to locale |
Yes | 3 | |
| 3768 | NAD | 25.2 [ranges.syn] | possibly-const-range is overconstrained |
Yes | ||
| 3769 | C++23 | 24.5.3 [const.iterators] | basic_const_iterator::operator== causes infinite constraint recursion |
Yes | 1 | |
| 3770 | C++23 | 25.2 [ranges.syn] | const_sentinel_t is missing |
Yes | 3 | |
| 3771 | C++23 | 7.2.1 [fund.ts.v3::func.wrap.func.overview] | [fund.ts.v3] remove binders typedefs from function |
Yes | ||
| 3772 | C++23 | 25.6.5.2 [range.repeat.view] | repeat_view's piecewise constructor is missing Postconditions |
Yes | 2 | |
| 3773 | C++23 | 25.7.26.1 [range.zip.transform.overview] | views::zip_transform still requires F to be copy_constructible when empty pack |
Yes | ||
| 3774 | C++23 | 23.6.10 [flat.set.syn] | <flat_set> should include <compare> |
Yes | ||
| 3775 | C++23 | 16.4.4.6.1 [allocator.requirements.general] | Broken dependencies in the Cpp17Allocator requirements | Yes | ||
| 3776 | NAD | 28.5.6.1 [formatter.requirements] | Avoid parsing format-spec if it is not present or empty | Yes | 3 | |
| 3777 | Open | 25.7.33.2 [range.cartesian.view] | Common cartesian_product_view produces an invalid range if the first range is input and one of the ranges is empty |
Yes | 2 | |
| 3778 | C++23 | 23.3.14.1 [vector.bool.pspc] | vector<bool> missing exception specifications |
Yes | ||
| 3779 | NAD | 26.6.18 [alg.fold] | ranges::fold_* can unintentionally const_cast and reinterpret_cast |
Yes | ||
| 3780 | Resolved | 28.5.2.2 [format.string.std] | format's width estimation is too approximate and not forward compatible |
Yes | 3 | |
| 3781 | C++23 | 23.6.1 [container.adaptors.general] | The exposition-only alias templates cont-key-type and cont-mapped-type should be removed |
Yes | ||
| 3782 | C++23 | 17.15.7 [support.c.headers.other] | Should <math.h> declare ::lerp? |
Yes | ||
| 3783 | New | 24.5.5.1 [common.iterator] | views::common may not be a range adaptor object |
Yes | 3 | |
| 3784 | C++23 | 16.4.2.4 [std.modules] | std.compat should not provide ::byte and its friends |
Yes | ||
| 3785 | C++23 | 25.5.7.2 [range.utility.conv.to] | ranges::to is over-constrained on the destination type being a range |
Yes | ||
| 3786 | C++23 | 23.6.8.2 [flat.map.defn] | Flat maps' deduction guide needs to default Allocator to be useful |
Yes | 2 | |
| 3787 | Resolved | 25.5.7.2 [range.utility.conv.to] | ranges::to's template parameter C should not be a reference type |
Yes | 3 | |
| 3788 | C++23 | 32.4.4.2 [thread.jthread.cons] | jthread::operator=(jthread&&) postconditions are unimplementable under self-assignment |
Yes | 3 | |
| 3789 | NAD | 17.6.3.3 [new.delete.array] | Precondition of (not replaced) operator delete[] |
Yes | ||
| 3790 | C++23 | 29.7.1 [cmath.syn] | P1467 accidentally changed nexttoward's signature |
Yes | 1 | |
| 3791 | Resolved | 25.7.14.3 [range.join.iterator] | join_view::iterator::operator-- may be ill-formed |
Yes | 3 | |
| 3792 | C++23 | 17.3.2 [version.syn] | __cpp_lib_constexpr_algorithms should also be defined in <utility> |
Yes | ||
| 3793 | New | 26.6.5 [alg.foreach] | Requirements for some algorithms' Size template parameters are unclear |
No | 3 | |
| 3794 | New | 31.12.6.6 [fs.path.itr] | std::filesystem::path::iterator::reference should be allowed to be std::filesystem::path |
Yes | 3 | |
| 3795 | C++23 | 32.10.7 [futures.unique.future] | Self-move-assignment of std::future and std::shared_future have unimplementable postconditions |
Yes | 3 | |
| 3796 | C++23 | 25.6.5.2 [range.repeat.view] | movable-box as member should use default-initialization instead of copy-initialization |
Yes | ||
| 3797 | New | 25.7.23.2 [range.elements.view] | elements_view insufficiently constrained |
Yes | 2 | |
| 3798 | C++23 | 24.3.2.3 [iterator.traits] | Rvalue reference and iterator_category |
Yes | ||
| 3799 | New | 17.15.7 [support.c.headers.other] | Should <math.h> provide 3-argument ::hypot overloads? |
No | 3 | |
| 3800 | NAD | 28.6.9.1 [re.results.general] | No deduction guide for std::match_results |
Yes | ||
| 3801 | C++23 | 25.7.33.3 [range.cartesian.iterator] | cartesian_product_view::iterator::distance-from ignores the size of last underlying range |
Yes | ||
| 3802 | New | 23.6.8 [flat.map] | flat_foo allocator-extended constructors lack move semantics |
No | 2 | |
| 3803 | C++23 | 23.6.8 [flat.map] | flat_foo constructors taking KeyContainer lack KeyCompare parameter |
Yes | 1 | |
| 3804 | New | 23.6.8 [flat.map] | flat_foo missing some allocator-extended deduction guides |
No | 2 | |
| 3805 | New | 22.10 [function.objects] | Expression evaluating to a call wrapper is a prvalue, not an object | No | 4 | |
| 3806 | NAD | 28.5.6.3 [format.formattable] | Should concept formattable<T, charT> default to char? |
Yes | 2 | |
| 3807 | C++23 | 17.3.2 [version.syn] | The feature test macro for ranges::find_last should be renamed |
Yes | ||
| 3808 | NAD | 17.3.2 [version.syn] | Inconsistent feature test macros for ranges algorithms | Yes | ||
| 3809 | WP | 29.5.4.4 [rand.eng.sub] | Is std::subtract_with_carry_engine<uint16_t> supposed to work? |
Yes | 3 | |
| 3810 | C++23 | 28.5.8.3 [format.args] | CTAD for std::basic_format_args |
Yes | 3 | |
| 3811 | C++23 | 25.7.22.1 [range.as.const.overview] | views::as_const on ref_view<T> should return ref_view<const T> |
Yes | ||
| 3812 | New | 6.1.2.6 [fund.ts.v3::propagate_const.const_observers] | [fund.ts.v3] Incorrect constraint on propagate_const conversion function |
Yes | 3 | |
| 3813 | New | 23.7.2.2.1 [span.overview] | std::span<volatile T, E> is made ill-formed by P2278R4 when T is a normal class type |
Yes | 2 | |
| 3814 | C++23 | 20.2.2 [memory.syn] | Add freestanding items requested by NB comments | Yes | ||
| 3815 | Resolved | 16.3.3.7 [freestanding.item] | Freestanding enumerators specification is lacking | Yes | ||
| 3816 | C++23 | 23.6.8.1 [flat.map.overview] | flat_map and flat_multimap should impose sequence container requirements |
Yes | ||
| 3817 | C++23 | 23.3.7.5 [forward.list.modifiers] | Missing preconditions on forward_list modifiers |
Yes | ||
| 3818 | C++23 | 16.3.3 [conventions] | Exposition-only concepts are not described in library intro | Yes | ||
| 3819 | C++23 | 21.3.6.4 [meta.unary.prop] | reference_meows_from_temporary should not use is_meowible |
Yes | ||
| 3820 | C++23 | 25.7.33.3 [range.cartesian.iterator] | cartesian_product_view::iterator::prev is not quite right |
Yes | ||
| 3821 | C++23 | 20.2.8.2 [allocator.uses.construction] | uses_allocator_construction_args should have overload for pair-like |
Yes | 2 | |
| 3822 | C++23 | 31.12.13.40 [fs.op.weakly.canonical] | Avoiding normalization in filesystem::weakly_canonical |
Yes | ||
| 3823 | C++23 | 21.3.6.4 [meta.unary.prop] | Unnecessary precondition for is_aggregate |
Yes | ||
| 3824 | C++23 | 22.10.15.5 [func.bind.place] | Number of bind placeholders is underspecified |
Yes | ||
| 3825 | C++23 | 28.5.6.6 [format.parse.ctx] | Missing compile-time argument id check in basic_format_parse_context::next_arg_id |
Yes | ||
| 3826 | C++23 | 25.8.5 [coro.generator.promise] | Redundant specification [for overload of yield_value] |
Yes | ||
| 3827 | C++23 | 17.15.4 [stdalign.h.syn] | Deprecate <stdalign.h> and <stdbool.h> macros |
Yes | ||
| 3828 | C++23 | 17.4.1 [cstdint.syn] | Sync intmax_t and uintmax_t with C2x |
Yes | ||
| 3829 | New | 25.7.7.2 [range.as.rvalue.view] | as_rvalue_view::end should improve non-common case |
Yes | 3 | |
| 3830 | New | 25.7.21.2 [range.reverse.view] | reverse_view should not cache when ranges::next has constant time complexity |
Yes | 3 | |
| 3831 | New | 30.12 [time.format] | Two-digit formatting of negative year is ambiguous |
Yes | 3 | |
| 3832 | New | 25.7.23.3 [range.elements.iterator] | Missing change for element_view::iterator in LWG 3798 |
Yes | 3 | |
| 3833 | C++23 | 28.5.6.4 [format.formatter.spec] | Remove specialization template<size_t N> struct formatter<const charT[N], charT> |
Yes | 2 | |
| 3834 | C++23 | 31.13.2 [cinttypes.syn] | Missing constexpr for std::intmax_t math functions in <cinttypes> |
Yes | ||
| 3835 | New | 28.6.1 [re.general] | Requirements for CharT in the regex library |
No | 4 | |
| 3836 | C++23 | 22.8.6.2 [expected.object.cons] | std::expected<bool, E1> conversion constructor expected(const expected<U, G>&)
should take precedence over expected(U&&) with operator bool |
Yes | 1 | |
| 3837 | New | 27.4.4.5 [string.erasure] | std::erase_if overloads for non-associative containers should move (and
not copy) their predicate object |
Yes | 3 | |
| 3838 | New | 24.3.2.1 [incrementable.traits] | The last specialization of incrementable_traits is under-constrained |
Yes | 3 | |
| 3839 | C++23 | 28.5.7.2 [format.range.formatter] | range_formatter's set_separator, set_brackets, and underlying functions should be noexcept |
Yes | ||
| 3840 | Open | D.22.1 [depr.fs.path.factory] | filesystem::u8path should be undeprecated |
Yes | 3 | |
| 3841 | C++23 | 17.3.2 [version.syn] | <version> should not be "all freestanding" |
Yes | ||
| 3842 | C++23 | 30.12 [time.format] | Unclear wording for precision in chrono-format-spec | Yes | ||
| 3843 | C++23 | 22.8.6.6 [expected.object.obs] | std::expected<T,E>::value() & assumes E is copy constructible |
Yes | ||
| 3844 | Open | 30.12 [time.format] | Non-numeric formats for negative durations | Yes | 3 | |
| 3845 | New | 25.5.7.2 [range.utility.conv.to] | ranges::to's from_range_t tag branch has the wrong constraint |
Yes | 4 | |
| 3846 | New | 25.6.4.3 [range.iota.iterator] | iota_view::iterator::operator- is overconstrained |
Yes | 3 | |
| 3847 | C++23 | 25.5.7.2 [range.utility.conv.to] | ranges::to can still return views |
Yes | 2 | |
| 3848 | C++23 | 25.7.27.2 [range.adjacent.view] | adjacent_view, adjacent_transform_view and slide_view missing base accessor |
Yes | ||
| 3849 | C++23 | 25.7.33.3 [range.cartesian.iterator] | cartesian_product_view::iterator's default constructor is overconstrained |
Yes | ||
| 3850 | C++23 | 25.7.22.1 [range.as.const.overview] | views::as_const on empty_view<T> should return empty_view<const T> |
Yes | ||
| 3851 | C++23 | 25.7.29.5 [range.chunk.inner.iter] | chunk_view::inner-iterator missing custom iter_move and iter_swap |
Yes | ||
| 3852 | New | 25.7.15.3 [range.join.with.iterator] | join_with_view::iterator's iter_move and iter_swap should be conditionally noexcept |
Yes | 3 | |
| 3853 | C++23 | 24.5.3 [const.iterators] | basic_const_iterator<volatile int*>::operator-> is ill-formed |
Yes | ||
| 3854 | New | 16.4.6.14 [res.on.exception.handling] | §[res.on.exception.handling]/3 should not be applied to all standard library types | No | 3 | |
| 3855 | New | 25.7.16.2 [range.lazy.split.view] | tiny-range is not quite right |
Yes | 4 | |
| 3856 | New | 30.12 [time.format] | Unclear which conversion specifiers are valid for each chrono type | Yes | 3 | |
| 3857 | C++23 | 27.3.3.2 [string.view.cons] | basic_string_view should allow explicit conversion when only traits vary |
Yes | ||
| 3858 | NAD | 24.5.3.4 [const.iterators.types] | basic_const_iterator is too strict to provide iterator_category |
Yes | ||
| 3859 | Resolved | 24.3.6.4 [projected] | std::projected cannot handle proxy iterator |
Yes | 3 | |
| 3860 | C++23 | 25.2 [ranges.syn] | range_common_reference_t is missing |
Yes | ||
| 3861 | Resolved | 23.7.3.4.7 [mdspan.layout.stride] | mdspan layout_stride::mapping default constructor problem |
Yes | 1 | |
| 3862 | C++23 | 24.2 [iterator.synopsis] | basic_const_iterator's common_type specialization is underconstrained |
Yes | ||
| 3863 | New | 24.5.3.2 [const.iterators.alias] | Is input_iterator guaranteed to have iter_const_reference_t? |
No | 2 | |
| 3864 | New | 25.7.25 [range.zip] | zip over range of reference to an abstract type |
No | 4 | |
| 3865 | C++23 | 22.3.3 [pairs.spec] | Sorting a range of pairs |
Yes | 2 | |
| 3866 | C++23 | 22.8.6.7 [expected.object.monadic] | Bad Mandates for expected::transform_error overloads |
Yes | ||
| 3867 | C++23 | 31.11.3.1 [syncstream.osyncstream.overview] | Should std::basic_osyncstream's move assignment operator be noexcept? |
Yes | ||
| 3868 | LEWG | 26.7.5 [alg.replace] | Constrained algorithms should not require output_iterator |
Yes | 4 | |
| 3869 | C++23 | 19.5.2 [system.error.syn] | Deprecate std::errc constants related to UNIX STREAMS |
Yes | ||
| 3870 | C++23 | 26.11.1 [specialized.algorithms.general] | Remove voidify |
Yes | ||
| 3871 | C++23 | 16.4.2.5 [compliance] | Adjust note about terminate |
Yes | ||
| 3872 | C++23 | 24.5.3 [const.iterators] | basic_const_iterator should have custom iter_move |
Yes | 3 | |
| 3873 | New | 25.7.15.2 [range.join.with.view] | join_with_view's const begin is underconstrained |
No | 3 | |
| 3874 | NAD | 17.3.2 [version.syn] | Rename __cpp_lib_ranges_to_container to __cpp_lib_ranges_to |
Yes | ||
| 3875 | C++23 | 25.6.5 [range.repeat] | std::ranges::repeat_view<T, IntegerClass>::iterator may be ill-formed |
Yes | ||
| 3876 | C++23 | 23.7.3.4 [mdspan.layout] | Default constructor of std::layout_XX::mapping misses precondition |
Yes | ||
| 3877 | C++23 | 22.8.6.7 [expected.object.monadic] | Incorrect constraints on const-qualified monadic overloads for std::expected |
Yes | ||
| 3878 | C++23 | 31.4.2 [iostream.objects.overview] | import std; should guarantee initialization of standard iostreams objects |
Yes | ||
| 3879 | C++23 | 23.6.11.6 [flat.set.erasure] | erase_if for flat_{,multi}set is incorrectly specified |
Yes | ||
| 3880 | C++23 | 25.7.29.7 [range.chunk.fwd.iter] | Clarify operator+= complexity for {chunk,stride}_view::iterator |
Yes | ||
| 3881 | C++23 | 23.6.13 [container.adaptors.format] | Incorrect formatting of container adapters backed by std::string |
Yes | ||
| 3882 | New | 22.4.9 [tuple.rel] | tuple relational operators have confused friendships |
Yes | 3 | |
| 3883 | New | 17.15.7 [support.c.headers.other] | §[support.c.headers.other] Ambiguity in the requirements for includes | Yes | 4 | |
| 3884 | WP | 23.6.8 [flat.map] | flat_foo is missing allocator-extended copy/move constructors |
Yes | ||
| 3885 | WP | 16.4.5.3.2 [zombie.names] | 'op' should be in [zombie.names] |
Yes | ||
| 3886 | WP | 22.5.3.1 [optional.optional.general] | Monad mo' problems | Yes | 3 | |
| 3887 | WP | 17.3.2 [version.syn] | Version macro for allocate_at_least |
Yes | ||
| 3888 | New | 26.11.8 [specialized.construct] | Most ranges uninitialized memory algorithms are underconstrained | Yes | 3 | |
| 3889 | New | 26.11.9 [specialized.destroy] | std::(ranges::)destroy_at should destroy array elements in the decreasing index order |
Yes | 3 | |
| 3890 | New | 24.3.4.4 [iterator.concept.winc] | ABI issue for integer-class types | Yes | 3 | |
| 3891 | New | 22.8.6.1 [expected.object.general] | LWG 3870 breaks std::expected<cv T, E> |
Yes | 2 | |
| 3892 | WP | 28.5.7.2 [format.range.formatter] | Incorrect formatting of nested ranges and tuples | Yes | 2 | |
| 3893 | WP | 32.5.8.7.2 [util.smartptr.atomic.shared] | LWG 3661 broke atomic<shared_ptr<T>> a; a = nullptr; |
Yes | ||
| 3894 | WP | 25.8.5 [coro.generator.promise] | generator::promise_type::yield_value(ranges::elements_of<Rng, Alloc>) should not be noexcept |
Yes | ||
| 3895 | New | 18.3 [concepts.syn] | Various relation concepts are missing default values of the second template parameters | Yes | 3 | |
| 3896 | New | 25.4.6 [range.refinements] | The definition of viewable_range is not quite right |
Yes | 4 | |
| 3897 | WP | 20.3.4.3 [inout.ptr.t] | inout_ptr will not update raw pointer to 0 |
Yes | 2 | |
| 3898 | New | 32.9.3.3 [thread.barrier.class] | Possibly unintended preconditions for completion functions of std::barrier |
Yes | 3 | |
| 3899 | WP | 25.8.5 [coro.generator.promise] | co_yielding elements of an lvalue generator is unnecessarily inefficient |
Yes | 3 | |
| 3900 | WP | 25.8.5 [coro.generator.promise] | The allocator_arg_t overloads of generator::promise_type::operator new
should not be constrained |
Yes | 3 | |
| 3901 | NAD | 20.2.8 [allocator.uses] | Is uses-allocator construction of a cv-qualified object type still well-formed after LWG 3870? | Yes | ||
| 3902 | New | 22.2.6 [declval] | Return type of std::declval<cv void> should be (cv-unqualified) void |
Yes | 4 | |
| 3903 | WP | 23.7.2.2.1 [span.overview] | span destructor is redundantly noexcept |
Yes | ||
| 3904 | WP | 25.7.16.3 [range.lazy.split.outer] | lazy_split_view::outer-iterator's const-converting constructor isn't setting trailing_empty_ |
Yes | ||
| 3905 | WP | 29.3.1 [cfenv.syn] | Type of std::fexcept_t |
Yes | ||
| 3906 | New | 32.5.8.5 [atomics.types.pointer] | "Undefined address" is undefined | No | 3 | |
| 3907 | New | 25.6 [range.factories] | Can iterator types of range adaptors and range factories be SCARY? | No | 3 | |
| 3908 | Tentatively NAD | 25.7.24.3 [range.enumerate.iterator] | enumerate_view::iterator constructor is explicit |
Yes | ||
| 3909 | Tentatively NAD | 99 [ranges.refinements] | Issues about viewable_range |
Yes | ||
| 3910 | New | 31.4.2 [iostream.objects.overview] | The effects of including <iostream> on initialization are not yet precisely specified |
Yes | 4 | |
| 3911 | New | 20.3.1.3.5 [unique.ptr.single.observers] | unique_ptr's operator* is missing a mandate |
Yes | 3 | |
| 3912 | WP | 25.7.24.3 [range.enumerate.iterator] | enumerate_view::iterator::operator- should be noexcept |
Yes | ||
| 3913 | NAD | 25.2 [ranges.syn] | ranges::const_iterator_t<range R> fails to accept arrays of unknown bound |
Yes | 3 | |
| 3914 | WP | 25.2 [ranges.syn] | Inconsistent template-head of ranges::enumerate_view |
Yes | ||
| 3915 | WP | 25.4.2 [range.range] | Redundant paragraph about expression variations | Yes | ||
| 3916 | New | 20.2.10 [default.allocator] | allocator, polymorphic_allocator, and containers should forbid cv-qualified types |
No | 3 | |
| 3917 | New | 20.2.10 [default.allocator] | Validity of allocator<void> and possibly polymorphic_allocator<void> should be clarified |
Yes | 3 | |
| 3918 | WP | 26.11.6 [uninitialized.move] | std::uninitialized_move/_n and guaranteed copy elision |
Yes | 3 | |
| 3919 | WP | 25.7.24 [range.enumerate] | enumerate_view may invoke UB for sized common non-forward underlying ranges |
Yes | 3 | |
| 3920 | New | 16.4.5.3.4 [extern.names] | Bad footnotes claiming external linkage for entities defined as macros | No | 3 | |
| 3921 | New | 30.12 [time.format] | Is std::chrono::duration<std::int64_t, std::ratio<INT64_MAX - 1, INT64_MAX>>{40}
required to be correctly formatted? |
No | 3 | |
| 3922 | New | 17.3.5.1 [numeric.limits.general] | It's unclear whether numeric_limits can be specialized by users |
Yes | 3 | |
| 3923 | New | 17.3.5.1 [numeric.limits.general] | The specification of numeric_limits doesn't clearly distinguish between implementation requirements
and user requirements |
Yes | 3 | |
| 3924 | New | 32.3.1 [thread.stoptoken.intro] | Stop token data race avoidance requirements unclear | Yes | 3 | |
| 3925 | WP | 28.5.6.3 [format.formattable] | Concept formattable's definition is incorrect |
Yes | ||
| 3926 | New | 16.4.5.2.1 [namespace.std] | Which namespace std is the mentioned one? |
Yes | 4 | |
| 3927 | WP | 23.2.4 [sequence.reqmts] | Unclear preconditions for operator[] for sequence containers |
Yes | ||
| 3928 | New | 16.4.5.2.2 [namespace.posix] | Non-top-level namespace posix shouldn't be reserved |
Yes | 3 | |
| 3929 | New | 21.3.6.4 [meta.unary.prop] | Preconditions for type traits should be Mandates | Yes | 3 | |
| 3930 | NAD | 21 [meta] | Simplify type trait wording | Yes | ||
| 3931 | New | 17.3.2 [version.syn] | Too many paper bump __cpp_lib_ranges |
Yes | 3 | |
| 3932 | New | 17.12.6 [cmp.alg] | Expression-equivalence is sometimes unimplementable when passing prvalue expressions to comparison CPOs | No | 3 | |
| 3933 | New | 29.4.3 [complex] | P1467R9 accidentally changed the signatures of certain constructors of std::complex |
Yes | 4 | |
| 3934 | New | 29.4.3 [complex] | std::complex<T>::operator=(const T&) has no specification |
Yes | 3 | |
| 3935 | WP | 29.4.3 [complex] | template<class X> constexpr complex& operator=(const complex<X>&) has no specification |
Yes | ||
| 3936 | NAD | D [depr] | Are implementations allowed to deprecate components not in [depr]? | Yes | ||
| 3937 | New | 31.7.7 [std.manip] | I/O manipulators should be specified in terms of base classes | No | 3 | |
| 3938 | WP | 22.8.6.7 [expected.object.monadic] | Cannot use std::expected monadic ops with move-only error_type |
Yes | ||
| 3939 | New | 28.5.2.2 [format.string.std] | §[format.string.std] char is not formatted as a character when charT is wchar_t |
No | 3 | |
| 3940 | WP | 22.8.7.6 [expected.void.obs] | std::expected<void, E>::value() also needs E to be copy constructible |
Yes | ||
| 3941 | Open | 32.5.4 [atomics.order] | §[atomics.order] inadvertently prohibits widespread implementation techniques | No | 3 | |
| 3942 | New | 27.2.4 [char.traits.specializations] | Inconsistent use of const char_type& in standard specializations of std::char_traits |
Yes | 3 | |
| 3943 | New | 28.5.6.3 [format.formattable] | Clarify lifetime requirements of BasicFormatter and Formatter | Yes | 3 | |
| 3944 | WP | 28.5.6.4 [format.formatter.spec] | Formatters converting sequences of char to sequences of wchar_t |
Yes | 3 | |
| 3945 | New | 17.14.2 [cstdarg.syn] | §[cstdarg.syn] 'Compatible types' are undefined | No | 3 | |
| 3946 | WP | 25.2 [ranges.syn] | The definition of const_iterator_t should be reworked |
Yes | ||
| 3947 | WP | 25.7.28.2 [range.adjacent.transform.view] | Unexpected constraints on adjacent_transform_view::base() |
Yes | ||
| 3948 | WP | 25.2 [ranges.syn] | possibly-const-range and as-const-pointer should be noexcept |
Yes | ||
| 3949 | WP | 32.5.8.1 [atomics.types.generic.general] | std::atomic<bool>'s trivial destructor dropped in C++17 spec wording |
Yes | ||
| 3950 | WP | 27.3.2 [string.view.synop] | std::basic_string_view comparison operators are overspecified |
Yes | ||
| 3951 | WP | 22.8.6.5 [expected.object.swap] | §[expected.object.swap]: Using value() instead of has_value() |
Yes | ||
| 3952 | New | 24.2 [iterator.synopsis] | iter_common_reference_t does not conform to the definition of indirectly_readable |
Yes | 3 | |
| 3953 | WP | 24.5.5.7 [common.iter.cust] | iter_move for common_iterator and counted_iterator should return decltype(auto) |
Yes | ||
| 3954 | New | 17.15.1 [support.c.headers.general] | Feature-test macros in C headers (<stddef.h> etc.) |
No | 3 | |
| 3955 | New | 25.6.5.2 [range.repeat.view] | Add noexcept to several repeat_view[::iterator] member functions |
Yes | 3 | |
| 3956 | WP | 30.13 [time.parse] | chrono::parse uses from_stream as a customization point |
Yes | 3 | |
| 3957 | WP | 23.2.2.5 [container.alloc.reqmts] | §[container.alloc.reqmts] The value category of v should be claimed |
Yes | ||
| 3958 | Tentatively NAD | 25.5.7.2 [range.utility.conv.to] | ranges::to should prioritize the "reserve" branch |
Yes | ||
| 3959 | New | 23.6.8 [flat.map] | Should the comparator of std::flat_map/std::flat_multimap be copied twice in some operations? |
No | ||
| 3960 | New | 30.13 [time.parse] | How does chrono::parse handle duplicated data? |
Yes | 3 | |
| 3961 | New | 30.13 [time.parse] | Does chrono::parse check format strings? |
Yes | 3 | |
| 3962 | New | 30.13 [time.parse] | What is the "decimal precision of the input"? | Yes | 3 | |
| 3963 | New | 23.6.8.2 [flat.map.defn] | Different std::flat_map/std::flat_multimap specializations should be able to share same nested classes |
Yes | 3 | |
| 3964 | New | 29.6.3.3 [valarray.transcend] | std::atan2 and std::pow overloads that take two std::valarray parameters
should require the arguments to have the same length |
Yes | 4 | |
| 3965 | WP | 28.5.6.5 [format.string.escaped] | Incorrect example in [format.string.escaped] p3 for formatting of combining characters | Yes | ||
| 3966 | New | 23.6.8.1 [flat.map.overview] | The value_type and reference members of std::flat_(multi)map::(const_)iterator are unclear |
No | 3 | |
| 3967 | New | 21.3.6.4 [meta.unary.prop] | The specification for std::is_nothrow_* traits may be ambiguous in some cases involving noexcept(false) |
No | ||
| 3968 | New | 22.11.8 [bit.endian] | std::endian::native value should be more specific about object representations |
Yes | 4 | |
| 3969 | New | 26.6.18 [alg.fold] | std::ranges::fold_left_first_with_iter should be more ADL-proof |
Yes | 3 | |
| 3970 | WP | 23.7.3.2 [mdspan.syn] | §[mdspan.syn] Missing definition of full_extent_t and full_extent |
Yes | ||
| 3971 | NAD | 25.7.15.2 [range.join.with.view] | Join ranges of rvalue references with ranges of prvalues | Yes | 3 | |
| 3972 | New | 25.7.15.3 [range.join.with.iterator] | Issues with join_with_view::iterator's iter_swap |
No | 2 | |
| 3973 | WP | 22.8.6.7 [expected.object.monadic] | Monadic operations should be ADL-proof | Yes | ||
| 3974 | WP | 23.7.3.6.3 [mdspan.mdspan.members] | mdspan::operator[] should not copy OtherIndexTypes |
Yes | ||
| 3975 | WP | 28.5.6.7 [format.context] | Specializations of basic_format_context should not be permitted |
Yes | 3 | |
| 3976 | New | 23.2.2.5 [container.alloc.reqmts] | What does it mean for a type to be "allocator aware"? | No | ||
| 3977 | New | 16.3.3.3.3 [bitmask.types] | constexpr and noexcept for operators for bitmask types |
Yes | 3 | |
| 3978 | Resolved | 22.4.5 [tuple.creation] | The "no effect" requirement for std::ignore is unimplementable for volatile bit-fields |
Yes | 4 | |
| 3979 | New | 22.10.13 [func.not.fn] | Should we reject std::bind_front<42>() and its friends? |
Yes | 4 | |
| 3980 | Tentatively NAD | 32.5.4 [atomics.order] | The read exclusive ownership of an atomic read-modify-write operation and whether its read and write are two operations are unclear | Yes | ||
| 3981 | Tentatively NAD | 25.7.2 [range.adaptor.object] | Range adaptor closure object is underspecified for its return type | Yes | ||
| 3982 | Tentatively NAD | 25.4.5 [range.view] | is-derived-from-view-interface should require that T is derived from view_interface<T> |
Yes | ||
| 3983 | New | 25.5.7.3 [range.utility.conv.adaptors] | ranges::to adaptors are underconstrained |
Yes | 3 | |
| 3984 | WP | 25.5.7.2 [range.utility.conv.to] | ranges::to's recursion branch may be ill-formed |
Yes | 3 | |
| 3985 | New | 25.5.7.2 [range.utility.conv.to] | ranges::to should Mandates C not to be view |
Yes | 3 | |
| 3986 | New | 24.5.3 [const.iterators] | basic_const_iterator doesn't work with optional |
No | 3 | |
| 3987 | WP | 24.7 [iterator.range] | Including <flat_foo> doesn't provide std::begin/end |
Yes | ||
| 3988 | Open | 24.5.3 [const.iterators] | Should as_const_view and basic_const_iterator provide base()? |
Yes | 3 | |
| 3989 | New | 27.3 [string.view] | The whole range for an iterator obtained from a std::span or std::basic_string_view is not clear |
No | 3 | |
| 3990 | WP | 22.4.4 [tuple.tuple] | Program-defined specializations of std::tuple and std::variant can't be properly supported |
Yes | ||
| 3991 | New | 22.6.3.4 [variant.assign] | variant's move assignment should not be guaranteed to produce a valueless by exception state |
Yes | 3 | |
| 3992 | New | 31.8.2.4 [stringbuf.members] | basic_stringbuf::str()&& should enforce 𝒪(1) |
Yes | ||
| 3993 | New | 28.5.6.1 [formatter.requirements] | The parse function of a BasicFormatter type needs to be constexpr |
Yes | 3 | |
| 3994 | New | 25.7.2 [range.adaptor.object] | adaptor(args...)(r) is not equivalent to std::bind_back(adaptor, args...)(r) |
No | 4 | |
| 3995 | New | 23.7.3 [views.multidim] | Issue with custom index conversion in <mdspan> |
No | 3 | |
| 3996 | NAD | 24.3.6.4 [projected] | projected<I, identity> should just be I |
Yes | ||
| 3997 | New | 28.5.1 [format.syn] | std::formatter specializations should be consistently restricted to supported character types |
No | 4 | |
| 3998 | New | 28.6.4 [re.const] | Constants in std::regex_constants should be allowed to be enumerators |
No | 3 | |
| 3999 | New | 32.5.4 [atomics.order] | P0439R0 changed the value category of memory order constants | Yes | 4 | |
| 4000 | New | 23.6.8.7 [flat.map.modifiers] | flat_map::insert_range's Effects is not quite right |
Yes | 3 | |
| 4001 | WP | 25.6.4.2 [range.iota.view] | iota_view should provide empty |
Yes | ||
| 4002 | New | 25.6.4.3 [range.iota.iterator] | The definition of iota_view::iterator::iterator_concept should be improved |
Yes | 3 | |
| 4003 | Tentatively NAD | 25.5.3 [view.interface] | view_interface::back is overconstrained |
Yes | ||
| 4004 | SG1 | 32.5.4 [atomics.order] | The load and store operation in §[atomics.order] p1 is ambiguous | No | 3 | |
| 4005 | New | 3.48 [defns.required.behavior] | "Required behavior" too narrowly defined | No | 2 | |
| 4006 | Tentatively NAD | 25.7.29.4 [range.chunk.outer.value] | chunk_view::outer-iterator::value_type should provide empty |
Yes | ||
| 4007 | New | 22.10.4 [func.require] | Mystic prohibition of calling a volatile-qualified perfect forwarding call wrapper |
Yes | 3 | |
| 4008 | New | 25.5.7.2 [range.utility.conv.to] | §[range.utility.conv.to] ranges::to may cause infinite recursion if range_value_t<C>
is a non-move-constructible range |
Yes | 3 | |
| 4009 | New | 25.7.12.2 [range.drop.view] | drop_view::begin const may have 𝒪(n) complexity |
Yes | ||
| 4010 | New | 25.5.4.3 [range.subrange.access] | subrange::advance should be improved |
Yes | 3 | |
| 4011 | WP | 23.7.2.2.6 [span.elem] | "Effects: Equivalent to return" in [span.elem] | Yes | ||
| 4012 | WP | 25.7.20.2 [range.common.view] | common_view::begin/end are missing the simple-view check |
Yes | ||
| 4013 | WP | 25.7.16.4 [range.lazy.split.outer.value] | lazy_split_view::outer-iterator::value_type should not provide default constructor |
Yes | ||
| 4014 | WP | 29.5.4.4 [rand.eng.sub] | LWG 3809 changes behavior of some existing std::subtract_with_carry_engine code |
Yes | 2 | |
| 4015 | Open | 22.5.3.8 [optional.monadic] | LWG 3973 broke const overloads of std::optional monadic operations |
Yes | 1 | |
| 4016 | WP | 25.5.7 [range.utility.conv] | container-insertable checks do not match what container-inserter does |
Yes | ||
| 4017 | New | 25.7.17.3 [range.split.iterator] | Behavior of std::views::split on an empty range |
Yes | 3 | |
| 4018 | New | 25.5.7.2 [range.utility.conv.to] | ranges::to's copy branch is underconstrained |
Yes | 3 | |
| 4019 | SG9 | 25.7.21 [range.reverse] | Reversing an infinite range leads to an infinite loop | No | 3 | |
| 4020 | New | 23.7.3.3.2 [mdspan.extents.expo] | extents::index-cast weirdness |
Yes | ||
| 4021 | New | 23.7.3.6.1 [mdspan.mdspan.overview] | mdspan::is_always_meow() should be noexcept |
Yes | ||
| 4022 | New | 30.12 [time.format] | Ambiguity in the formatting of negative years with format specifier %C |
Yes | ||
| 4023 | WP | 31.6.3.4 [streambuf.protected] | Preconditions of std::basic_streambuf::setg/setp |
Yes | ||
| 4024 | WP | 20.3.2.2.7 [util.smartptr.shared.create] | Underspecified destruction of objects created in std::make_shared_for_overwrite/std::allocate_shared_for_overwrite |
Yes | 2 | |
| 4025 | WP | 22.8.7.4 [expected.void.assign] | Move assignment operator of std::expected<cv void, E> should not be conditionally deleted |
Yes | ||
| 4026 | New | 22.8.6.4 [expected.object.assign] | Assignment operators of std::expected should propagate triviality |
Yes | 2 | |
| 4027 | WP | 25.2 [ranges.syn] | possibly-const-range should prefer returning const R& |
Yes | 2 | |
| 4028 | New | 21.3.8 [meta.rel] | std::is_(nothrow_)convertible should be reworded to avoid dependence on the return statement |
Yes | ||
| 4029 | New | 27.4.3.1 [basic.string.general] | basic_string accidentally fails to meet the reversible container requirements |
Yes | 3 | |
| 4030 | WP | 26.10.17.1 [numeric.sat.func] | Clarify whether arithmetic expressions in [numeric.sat.func] are mathematical or C++ | Yes | ||
| 4031 | WP | 22.8.5 [expected.bad.void] | bad_expected_access<void> member functions should be noexcept |
Yes | ||
| 4032 | New | 20.3.2.2.2 [util.smartptr.shared.const] | Possibly invalid types in the constraints of constructors of std::shared_ptr |
Yes | 4 | |
| 4033 | New | 16.4.5.3.3 [macro.names] | §[macro.names] defining macros after importing the standard library | Yes | 3 | |
| 4034 | New | 26.8.9 [alg.min.max] | Clarify specification of std::min and std::max |
Yes | 4 | |
| 4035 | WP | 25.6.3.2 [range.single.view] | single_view should provide empty |
Yes | ||
| 4036 | WP | D.11 [depr.c.macros] | __alignof_is_defined is only implicitly specified in C++ and not yet deprecated |
Yes | ||
| 4037 | WP | 28.3.4.2.1 [category.ctype.general] | Static data members of ctype_base are not yet required to be usable in constant expressions |
Yes | ||
| 4038 | WP | 28.4.2.5 [text.encoding.aliases] | std::text_encoding::aliases_view should have constexpr iterators |
Yes | ||
| 4039 | New | 31.7.6.3.5 [ostream.formatted.print] | §[ostream.formatted.print]: Inappropriate usage of badbit in definition of
vprint_unicode/vprint_nonunicode |
Yes | ||
| 4040 | New | 22.4.7 [tuple.helper] | Contradictory specification of std::tuple_size |
No | 3 | |
| 4041 | New | 18.4.9 [concept.swappable] | The requirements on literal type in [concept.swappable] should be removed | Yes | 4 | |
| 4042 | Resolved | 31.7.10 [print.fun] | std::print should permit an efficient implementation |
Yes | 3 | |
| 4043 | WP | 28.4.2.2 [text.encoding.general] | "ASCII" is not a registered character encoding |
Yes | ||
| 4044 | WP | 31.7.10 [print.fun] | Confusing requirements for std::print on POSIX platforms |
Yes | 3 | |
| 4045 | WP | 22.4.4.2 [tuple.cnstr] | tuple can create dangling references from tuple-like |
Yes | ||
| 4046 | New | 23.2.7.2 [associative.reqmts.except] | Effects of inserting into or erasing from flat container adaptors when an exception is thrown need to be more permissive | No | 2 | |
| 4047 | New | 16.4.5.2.1 [namespace.std] | Explicitly specifying template arguments for std::swap should not be supported |
No | 4 | |
| 4048 | New | 23.6.11 [flat.set] | Inconsistent preconditions for transparent insertion of std::flat_map/std::flat_set |
Yes | 2 | |
| 4049 | New | 16.4.2 [organization] | C <foo.h> headers not in freestanding |
Yes | 3 | |
| 4050 | New | 25.7.10.1 [range.take.overview] | Should views::iota(0) | views::take(5) be views::iota(0, 5)? |
Yes | ||
| 4051 | New | 17.12.2 [cmp.categories] | A less hacky and more useful way to compare comparison category types | Yes | ||
| 4052 | New | 29.5.9.6.2 [rand.dist.samp.pconst] | Bogus requirements for piecewise_linear_distribution |
Yes | 4 | |
| 4053 | WP | 25.6.5.2 [range.repeat.view] | Unary call to std::views::repeat does not decay the argument |
Yes | ||
| 4054 | WP | 25.6.5.1 [range.repeat.overview] | Repeating a repeat_view should repeat the view |
Yes | ||
| 4055 | New | 24.4.3 [iterator.operations] | §[iterator.operations] std::distance is missing a precondition |
Yes | 4 | |
| 4056 | NAD | 22.2.2 [utility.swap] | The effects of std::swap are under-specified |
Yes | ||
| 4057 | New | 25.8.6 [coro.generator.iterator] | generator::iterator's operator* is not noexcept when it can be |
Yes | 3 | |
| 4058 | New | 20.2.4 [pointer.conversion] | std::to_address() should be SFINAE-friendly |
Yes | ||
| 4059 | New | 25.7.15.3 [range.join.with.iterator] | Leaky abstraction in join_with_view's iterator |
Yes | 3 | |
| 4060 | WP | 23.7.3.7.7 [mdspan.sub.sub] | submdspan preconditions do not forbid creating invalid pointer |
Yes | ||
| 4061 | WP | 28.5.6.7 [format.context] | Should std::basic_format_context be default-constructible/copyable/movable? |
Yes | ||
| 4062 | New | 25.3.13 [range.prim.empty] | ranges::empty has no semantic requirements for forward_ranges |
No | ||
| 4063 | New | 27.2.4.2 [char.traits.specializations.char] | Freestanding std::char_traits<char>::eof depends on non-freestanding EOF |
No | 2 | |
| 4064 | WP | 27.5.1 [cstring.syn] | Clarify that std::launder is not needed when using the result of std::memcpy |
Yes | 3 | |
| 4065 | New | 16.4.4.6.1 [allocator.requirements.general] | Requirements for fancy pointers might be insufficient for self-referential implementation of containers | Yes | 3 | |
| 4066 | New | 25.5.7.2 [range.utility.conv.to] | ranges::to should reserve when sized_sentinel_for is satisfied |
Yes | ||
| 4067 | New | 30.11.7.2 [time.zone.zonedtime.ctor] | Inconsistency and potential infinity meta-recursion in std::chrono::zoned_time's constructors |
Yes | 3 | |
| 4068 | New | 16.4.5.11 [res.on.requirements] | Terminology for objects whose types model a concept | No | ||
| 4069 | Resolved | 32.5.8 [atomics.types.generic] | std::atomic<volatile T> should be ill-formed |
Yes | 2 | |
| 4070 | Open | 31.12.6.9.2 [fs.path.fmtr.funcs] | Transcoding by std::formatter<std::filesystem::path> |
Yes | 2 | |
| 4071 | WP | 22.10.6.6 [refwrap.comparisons] | reference_wrapper comparisons are not SFINAE-friendly |
Yes | ||
| 4072 | WP | 22.5.9 [optional.comp.with.t] | std::optional comparisons: constrain harder |
Yes | 1 | |
| 4073 | New | 25.7.18.2 [range.concat.view] | concat_view::size may overflow |
No | 4 | |
| 4074 | WP | 25.7.15.2 [range.join.with.view] | compatible-joinable-ranges is underconstrained |
Yes | ||
| 4075 | SG1 | 16.4.4 [utility.requirements] | Thread stability requirement on constructors and destructors | No | 3 | |
| 4076 | WP | 17.3.2 [version.syn] | concat_view should be freestanding |
Yes | ||
| 4077 | New | 26.12.2 [alg.rand.generate] | Unclear preconditions of std::ranges::generate_random |
No | 2 | |
| 4078 | New | 28.5.5 [format.functions] | What if arguments alias the output buffer in std::format_to? |
No | 4 | |
| 4079 | WP | 25.7.18.3 [range.concat.iterator] | Missing Preconditions in concat_view::iterator's conversion constructor |
Yes | ||
| 4080 | New | 24.3.2 [iterator.assoc.types] | Presumed value and difference types of an iterator type in ranges and non-ranges algorithms | No | 3 | |
| 4081 | New | 25.7.18.3 [range.concat.iterator] | concat_view::iterator::operator- is overconstrained |
Yes | 3 | |
| 4082 | WP | 25.7.18.1 [range.concat.overview] | views::concat(r) is well-formed when r is an output_range |
Yes | ||
| 4083 | WP | 25.7.7.1 [range.as.rvalue.overview] | views::as_rvalue should reject non-input ranges |
Yes | ||
| 4084 | WP | 28.3.4.3.3.3 [facet.num.put.virtuals] | std::fixed ignores std::uppercase |
Yes | 3 | |
| 4085 | WP | 26.12.2 [alg.rand.generate] | ranges::generate_random's helper lambda should specify the return type |
Yes | 2 | |
| 4086 | NAD | 26.12.2 [alg.rand.generate] | ranges::generate_random_n is missing |
Yes | ||
| 4087 | SG16 | 17.9.3 [exception] | Standard exception messages have unspecified encoding | Yes | 3 | |
| 4088 | WP | 31.7.6.3.5 [ostream.formatted.print] | println ignores the locale imbued in std::ostream |
Yes | ||
| 4089 | New | 25.7.18.3 [range.concat.iterator] | concat_view::iterator's iter_swap is overconstrained |
Yes | 3 | |
| 4090 | Open | 28.5.2.2 [format.string.std] | Underspecified use of locale facets for locale-dependent std::format |
Yes | 3 | |
| 4091 | New | 25.7.18.2 [range.concat.view] | concat_view rejects non-movable references |
Yes | 4 | |
| 4092 | New | 24.5.5.1 [common.iterator] | The monotonic version of common_iterator::operator== is underconstrained |
Yes | 3 | |
| 4093 | New | 26.6.18 [alg.fold] | ranges::fold_left_first_with_iter incorrectly constructs optional<U> |
Yes | 3 | |
| 4094 | New | 26.6.18 [alg.fold] | ranges::fold_meow is overconstrained |
Yes | 3 | |
| 4095 | Tentatively NAD | 26.4 [algorithm.syn] | ranges::fold_meow should explicitly spell out the return type |
Yes | ||
| 4096 | WP | 25.6.4.1 [range.iota.overview] | views::iota(views::iota(0)) should be rejected |
Yes | ||
| 4097 | LEWG | 25.7.21.1 [range.reverse.overview] | views::reverse should be specialized for some view types |
Yes | 3 | |
| 4098 | WP | 25.7.27.1 [range.adjacent.overview] | views::adjacent<0> should reject non-forward ranges |
Yes | ||
| 4099 | New | 25.7.7.1 [range.as.rvalue.overview] | The simple case of views::as_rvalue and views::common are not strictly correct |
Yes | 4 | |
| 4100 | New | 16.4.6.4 [global.functions] | Default arguments and signatures of standard library non-member functions | Yes | 3 | |
| 4101 | New | 31.7.6.3.2 [ostream.inserters.arithmetic] | LWG 117 loses the sign for negative NaN on some architectures | Yes | 3 | |
| 4102 | New | 27.3.3.2 [string.view.cons] | string_view(Iter, Iter) constructor breaks existing code |
No | 2 | |
| 4103 | New | 26.7.9 [alg.unique] | ranges::unique_copy's constraints for the case where result is an
input_iterator are not quite right |
Yes | 3 | |
| 4104 | New | 24.5.3 [const.iterators] | basic_const_iterator<volatile int*> is not a contiguous_iterator |
No | 4 | |
| 4105 | WP | 26.6.17 [alg.ends.with] | ranges::ends_with's Returns misses difference casting |
Yes | ||
| 4106 | WP | 28.5.8.3 [format.args] | basic_format_args should not be default-constructible |
Yes | ||
| 4107 | New | 28.5.7.4 [format.range.fmtmap] | Map formatter may conflict with user-defined specializations of pair/tuple formatters |
Yes | 3 | |
| 4108 | SG9 | 25.7.16.2 [range.lazy.split.view] | lazy_split_view should be sized_range when pattern is empty tiny-range |
Yes | 4 | |
| 4109 | New | 29.5.3.1 [rand.req.genl] | Instantiating templates in §[rand] with int8_t/uint8_t is undefined behavior |
Yes | ||
| 4110 | New | 20.3.2.2.2 [util.smartptr.shared.const] | shared_ptr(nullptr_t, Deleter) is overconstrained, breaking some sensible deleters |
Yes | ||
| 4111 | New | 26.8.4 [alg.binary.search] | LWG 270 and ranges version of binary search algorithms | No | 3 | |
| 4112 | WP | 25.5.2 [range.utility.helpers] | has-arrow should required operator->() to be const-qualified |
Yes | ||
| 4113 | WP | 21.3.6.4 [meta.unary.prop] | Disallow has_unique_object_representations<Incomplete[]> |
Yes | ||
| 4114 | New | 25.7.23.3 [range.elements.iterator] | elements_view::iterator::operator* missing conditional noexcept specification |
Yes | 3 | |
| 4115 | New | 24.5.4.6 [move.iter.elem] | move_iterator::operator* should have conditional noexcept specification |
Yes | 4 | |
| 4116 | New | 25.7.24.3 [range.enumerate.iterator] | enumerate_view::iterator and cartesian_product_view::iterator should not
always provide iterator_category |
Yes | ||
| 4117 | New | 25.8.6 [coro.generator.iterator] | generator::iterator should provide iterator_concept |
Yes | 4 | |
| 4118 | New | 30.12 [time.format] | How should duration formatters format custom rep types? |
Yes | 3 | |
| 4119 | WP | 25.8.5 [coro.generator.promise] | generator::promise_type::yield_value(ranges::elements_of<R, Alloc>)'s nested generator may be ill-formed |
Yes | ||
| 4120 | New | 24.5.4.2 [move.iterator] | move_iterator should provide iterator_category only when it models
forward_iterator |
Yes | 3 | |
| 4121 | New | 25.5.7.1 [range.utility.conv.general] | ranges::to constructs associative containers via c.emplace(c.end(), *it) |
Yes | 2 | |
| 4122 | New | 23.3.16.1 [inplace.vector.overview] | Ill-formed operator<=> can cause hard error when instantiating std::inplace_vector |
Yes | 2 | |
| 4123 | New | 23.3.5.4 [deque.modifiers] | Container effects use "the assignment operator or move assignment operator" | Yes | 3 | |
| 4124 | WP | 30.12 [time.format] | Cannot format zoned_time with resolution coarser than seconds |
Yes | ||
| 4125 | New | 24.5.4.2 [move.iterator] | move_iterator's default constructor should be constrained |
Yes | 3 | |
| 4126 | WP | 17.3.2 [version.syn] | Some feature-test macros for fully freestanding features are not yet marked freestanding | Yes | 2 | |
| 4127 | New | 22.10.18.3 [func.search.bm] | The Standard Library should not use predicates of the form pred(*i) != false |
Yes | 3 | |
| 4128 | New | 16.4.4.6.1 [allocator.requirements.general] | Allocator requirements should not allow rebinding conversions to be explicit | Yes | 3 | |
| 4129 | New | 16.4.6.10 [res.on.data.races] | Possibly incorrect wording for data race avoidance | Yes | ||
| 4130 | Open | 17.6.5 [ptr.launder] | Preconditions for std::launder might be overly strict |
Yes | 3 | |
| 4131 | New | 24.7 [iterator.range] | Including <optional> doesn't provide std::begin/end |
Yes | 3 | |
| 4132 | New | 23.2.7.1 [associative.reqmts.general] | Throws specifications need to include boolean-testable operations |
Yes | 3 | |
| 4133 | New | 33.13.1 [exec.as.awaitable] | awaitable-receiver's members are potentially throwing |
No | 1 | |
| 4134 | WP | 29.5.4.5 [rand.eng.philox] | Issue with Philox algorithm specification | Yes | 1 | |
| 4135 | WP | 23.3.7.7 [forward.list.erasure] | The helper lambda of std::erase for list should specify return type as
bool |
Yes | ||
| 4136 | New | 29.9.3 [linalg.general] | Specify behavior of [linalg] Hermitian algorithms on diagonal with nonzero imaginary part | Yes | ||
| 4137 | Ready | 29.9.14 [linalg.algs.blas2] | Fix Mandates, Preconditions, and Complexity elements of [linalg] algorithms | Yes | ||
| 4138 | New | 21.3.12 [meta.const.eval] | is_within_lifetime should mandate is_object |
Yes | ||
| 4139 | New | 30.11.8 [time.zone.leap] | §[time.zone.leap] recursive constraint in <=> |
No | 3 | |
| 4140 | WP | 22.9.2.1 [template.bitset.general] | Useless default constructors for bit reference types | Yes | ||
| 4141 | WP | 22.5.3.1 [optional.optional.general] | Improve prohibitions on "additional storage" | Yes | ||
| 4142 | WP | 28.5.6.6 [format.parse.ctx] | format_parse_context::check_dynamic_spec should require at least one type |
Yes | ||
| 4143 | New | 33.7.2 [exec.set.value] | execution::set_value/set_error/set_stopped/start should always return void |
Yes | 2 | |
| 4144 | WP | 20.3.1.3.1 [unique.ptr.single.general] | Disallow unique_ptr<T&, D> |
Yes | ||
| 4145 | New | 16.4.6.10 [res.on.data.races] | Unclear how [res.on.data.races] apply to templated functions | No | 3 | |
| 4146 | New | 28.5.6.4 [format.formatter.spec] | §[format.formatter.spec]/3 unconditionally enables nonlocking for container adaptors | Yes | ||
| 4147 | WP | 23.2.4 [sequence.reqmts] | Precondition on inplace_vector::emplace |
Yes | ||
| 4148 | WP | 20.3.1.3.5 [unique.ptr.single.observers] | unique_ptr::operator* should not allow dangling references |
Yes | ||
| 4149 | New | 16.4.5.3.3 [macro.names] | User defined macros without standard headers (294 redux) | Yes | ||
| 4150 | Resolved | 33.12.1.4 [exec.run.loop.members] | The preconditions on run_loop::run() are too strict |
Yes | ||
| 4151 | New | 23.3.16.5 [inplace.vector.modifiers] | Precondition of inplace_vector::swap |
Yes | 2 | |
| 4152 | New | 27.2.2 [char.traits.require] | The primary template of std::char_traits is totally underspecified |
Yes | 4 | |
| 4153 | WP | 29.5.4.5 [rand.eng.philox] | Fix extra "-1" for philox_engine::max() |
Yes | ||
| 4154 | WP | 32.10.10.2 [futures.task.members] | The Mandates for std::packaged_task's constructor from a callable entity should consider decaying |
Yes | 3 | |
| 4155 | New | 16.4.4.4 [nullablepointer.requirements] | Cpp17NullablePointer should require that some expression can be contextually converted to bool | Yes | 3 | |
| 4156 | SG16 | 19.5.3.2 [syserr.errcat.virtuals] | error_category messages have unspecified encoding |
Yes | 3 | |
| 4157 | WP | 17.12.6 [cmp.alg] | The resolution of LWG3465 was damaged by P2167R3 | Yes | ||
| 4158 | New | 32.10.10.2 [futures.task.members] | packaged_task::operator= should abandon its shared state |
Yes | 3 | |
| 4159 | New | 23.2.5 [container.node] | Uses-allocator construction mechanisms should be opted out for node handles | Yes | 3 | |
| 4160 | New | 32.10.10.1 [futures.task.general] | packaged_task should reject rvalue reference return types |
Yes | 3 | |
| 4161 | New | 29.4 [complex.numbers] | Some free functions don't automatically work for program-defined std::complex<NonFloatingPoint> |
No | 3 | |
| 4162 | New | 26.8.3 [alg.nth.element] | Worst time complexity of non-parallel versions of nth_element is underspecified |
Yes | 3 | |
| 4163 | Tentatively NAD | 28.3.4.3.2.3 [facet.num.get.virtuals] | Can the overload of std::num_get::do_get for bool call the overload for long? |
No | ||
| 4164 | WP | 23.3.7.5 [forward.list.modifiers] | Missing guarantees for forward_list modifiers |
Yes | 3 | |
| 4165 | New | 18.4.9 [concept.swappable] | Should swapping a built-in array or std::array with itself result in UB? |
No | 3 | |
| 4166 | New | 25.7.18.2 [range.concat.view] | concat_view::end() should be more constrained in order to support noncopyable iterators |
Yes | ||
| 4167 | New | 26.8.9 [alg.min.max] | Use of "smaller" and "larger" in min,
max, and minmax is unclear |
Yes | 3 | |
| 4168 | New | 20.2.6 [obj.lifetime] | std::start_lifetime_as inadvertently has undefined behavior due to use of std::bit_cast |
Yes | ||
| 4169 | WP | 32.5.8.2 [atomics.types.operations] | std::atomic<T>'s default constructor should be constrained |
Yes | ||
| 4170 | WP | 24.3.4.14 [iterator.concept.contiguous] | contiguous_iterator should require to_address(I{}) |
Yes | ||
| 4171 | New | 24.3.6.3 [indirectcallable.indirectinvocable] | P2609R3 breaks code that uses views::zip and get<T> |
No | ||
| 4172 | WP | 32.6.5.4.2 [thread.lock.unique.cons] | unique_lock self-move-assignment is broken | Yes | ||
| 4173 | New | 23 [containers] | Better term for "references, pointers and iterators to elements" | No | 4 | |
| 4174 | SG1 | 32.5.4 [atomics.order] | How does [atomics.order] p3 apply when then modification is an initialization? | No | 3 | |
| 4175 | WP | 33.5.2 [exec.get.allocator] | get_env() specified in terms of as_const() but this doesn't work with rvalue senders |
Yes | ||
| 4176 | New | 23 [containers] | Refer back to container requirements when extending them | No | 4 | |
| 4177 | SG1 | 32.5.4 [atomics.order] | §[atomics.order] p8 "circularly depend on their own computation" is unclear for loop | No | 4 | |
| 4178 | NAD Editorial | 24.3.1 [iterator.requirements.general] | writable is no longer a term of power | Yes | ||
| 4179 | WP | 26.6.15 [alg.search] | Wrong range in [alg.search] | Yes | ||
| 4180 | New | 23.6.12.5 [flat.multiset.modifiers] | Inconsistent constraints on flat_foo::emplace |
Yes | 3 | |
| 4181 | New | 24.7 [iterator.range] | Some ranges have negative ssize |
No | 3 | |
| 4182 | New | 17.2.3 [support.types.nullptr] | Definition of NULL is too broad |
Yes | 3 | |
| 4183 | New | 25.5.4.1 [range.subrange.general] | subrange should provide data() |
Yes | 4 | |
| 4184 | Tentatively NAD | 25.3 [range.access] | Domain of ranges::cmeow doesn't match ranges::meow |
No | ||
| 4185 | New | 29.9.7 [linalg.helpers] | Ill-formed, no diagnostic required on runtime behavior | No | 3 | |
| 4186 | WP | 28.6.6 [re.traits] | regex_traits::transform_primary mistakenly detects typeid of a function |
Yes | ||
| 4187 | New | 22.9.2 [template.bitset] | bitset::reference should be const-assignable |
Yes | 3 | |
| 4188 | WP | 31.7.6.2.4 [ostream.sentry] | ostream::sentry destructor should handle exceptions |
Yes | ||
| 4189 | WP | 17.3.2 [version.syn] | cache_latest_view should be freestanding |
Yes | ||
| 4190 | New | 33.9.2 [exec.snd.expos] | Specification of completion-signatures-for in [exec.snd.expos]/p39 is recursive | Yes | 2 | |
| 4191 | WP | 29.4.10 [cmplx.over] | P1467 changed the return type of pow(complex<float>, int) |
Yes | ||
| 4192 | New | 31.5.2.8 [ios.base.cons] | §[ios.base.cons] ios_base members may not have indeterminate values after construction |
Yes | 3 | |
| 4193 | New | 30.11.2 [time.zone.db] | §[time.zone.db] the specification uses the undefined term "thread-safe" | No | 3 | |
| 4194 | Tentatively NAD | 32.5.8.5 [atomics.types.pointer] | atomic<void*> should use generic class template |
Yes | ||
| 4195 | New | 22.8.6.4 [expected.object.assign] | expected<int, int> isn't specified to be trivially assignable |
Yes | 2 | |
| 4196 | WP | 26.8.6 [alg.merge] | Complexity of inplace_merge() is incorrect |
Yes | 4 | |
| 4197 | New | 22.6.7 [variant.visit] | Complexity of std::visit with immediate functions |
Yes | 2 | |
| 4198 | WP | 33.9.12.7 [exec.schedule.from] | schedule_from isn't starting the schedule sender if decay-copying results throws |
Yes | 1 | |
| 4199 | New | 33.9.1 [exec.snd.general] | constraints on user customizations of standard sender algorithms are incorrectly specified | No | 1 | |
| 4200 | WP | 33.8.1 [exec.opstate.general] | The operation_state concept can be simplified |
Yes | ||
| 4201 | WP | 33.9.4 [exec.awaitable] | with-await-transform::await_transform should not use a deduced return type |
Yes | ||
| 4202 | WP | 33.9.3 [exec.snd.concepts] | enable-sender should be a variable template |
Yes | 1 | |
| 4203 | WP | 33.9.12.7 [exec.schedule.from] | Constraints on get-state functions are incorrect |
Yes | 1 | |
| 4204 | WP | 33.9.12.10 [exec.let] | specification of as-sndr2(Sig) in [exec.let] is incomplete |
Yes | 1 | |
| 4205 | WP | 33.9.12.10 [exec.let] | let_[*].transform_env is specified in terms of the let_* sender itself instead of its child |
Yes | 1 | |
| 4206 | New | 99 [exec.syn] | Alias template connect_result_t should be constrained with sender_to |
Yes | 1 | |
| 4207 | New | 17.8.2.2 [support.srcloc.cons] | Point of reference for source_location is not specified when used in an default template argument |
Yes | ||
| 4208 | WP | 33.9.10 [exec.connect] | Wording needs to ensure that in connect(sndr, rcvr) that rcvr expression is only evaluated once |
Yes | ||
| 4209 | WP | 33.9.5 [exec.domain.default] | default_domain::transform_env should be returning FWD-ENV(env) |
Yes | ||
| 4210 | New | 25.7.34.3 [range.cache.latest.iterator] | Issue with cache_latest_view::iterator's reference type |
No | 3 | |
| 4211 | New | 30.11.2.1 [time.zone.db.tzdb] | IANA time zone database allows links to refer to links | Yes | ||
| 4212 | New | 29.5.4.5 [rand.eng.philox] | Make the round states in [rand.eng.philox] explicit | Yes | 3 | |
| 4213 | New | 33.9 [exec.snd] | Sender spec depends on unspecified order of evaluation | No | ||
| 4214 | New | 25.7.10.1 [range.take.overview] | Missing Preconditions for take/drop adaptor |
Yes | ||
| 4215 | New | 33.12.1 [exec.run.loop] | run_loop::finish should be noexcept |
Yes | 2 | |
| 4216 | New | 28.3.4.3.3.3 [facet.num.put.virtuals] | num_put::do_put and void pointers |
Yes | 3 | |
| 4217 | WP | 23.7.3.4.2 [mdspan.layout.reqmts] | Clarify mdspan layout mapping requirements for rank == 0 |
Yes | ||
| 4218 | New | 24.5.3.5 [const.iterators.ops] | Constraint recursion in basic_const_iterator's relational operators due to ADL + CWG 2369 |
Yes | 2 | |
| 4219 | New | 23.3.13.6 [vector.erasure] | std::vector::erase[_if] should be based on ranges remove |
Yes | ||
| 4220 | New | 25.7.14.2 [range.join.view] | join_view incorrectly stores inner range |
Yes | ||
| 4221 | New | 28.5.7 [format.range] | Cannot format const-iterable only ranges | No | ||
| 4222 | WP | 22.8.6.2 [expected.object.cons] | expected constructor from a single value missing a constraint |
Yes | ||
| 4223 | New | 23.4.1 [associative.general] | Deduction guides for maps are mishandling tuples and references | Yes | 2 | |
| 4224 | WP | 29.5.4.5 [rand.eng.philox] | Philox engines should be freestanding | Yes | ||
| 4225 | New | 23.3.5.3 [deque.capacity] | What should happen when an exception is thrown on resizing std::deque, std::forward_list, or std::list? |
No | ||
| 4226 | New | 25.7.35 [range.to.input] | to_input_view::iterator cannot be compared to its const sentinel |
Yes | 2 | |
| 4227 | WP | 33.9.12.12 [exec.when.all] | Missing noexcept operator in [exec.when.all] |
Yes | ||
| 4228 | Tentatively NAD | 23.3.14.1 [vector.bool.pspc] | Does vector<bool, Allocator> mandate that Allocator::value_type is bool? |
No | ||
| 4229 | New | 25.5.7.2 [range.utility.conv.to] | std::ranges::to with union return type |
Yes | ||
| 4230 | New | 29.10.8.4 [simd.complex.access] | simd<complex>::real/imag is overconstrained |
Yes | 2 | |
| 4231 | WP | 29.10.3 [simd.syn] | datapar::chunk<N> should use simd-size-type instead of size_t |
Yes | ||
| 4232 | WP | 29.10.4 [simd.traits] | datapar::resize does not resize |
Yes | ||
| 4233 | WP | 23.3.9.6 [hive.erasure] | The helper lambda of std::erase for hive should specify return type as
bool |
Yes | ||
| 4234 | WP | 24.7 [iterator.range] | Including <hive> doesn't provide std::begin/end |
Yes | ||
| 4235 | WP | 25.7.34.2 [range.cache.latest.view] | cache_latest_view and to_input_view miss reserve_hint |
Yes | 2 | |
| 4236 | WP | 25.7.29.4 [range.chunk.outer.value] | chunk_view::outer-iterator::value_type should provide reserve_hint |
Yes | ||
| 4237 | New | 24.5.3.3 [const.iterators.iterator] | The standard library iterator adaptor does not handle iterator_category correctly |
No | 3 | |
| 4238 | New | 29.10.9.4 [simd.mask.unary] | simd_mask<complex<double>>::operator+/-/~ return a disabled simd specialization |
Yes | 1 | |
| 4239 | WP | 23.6.8.7 [flat.map.modifiers] | flat_map's transparent comparator no longer works for string literals |
Yes | ||
| 4240 | New | 28.5.6.3 [format.formattable] | The formattable type is not a formattable type |
Yes | 2 | |
| 4241 | New | 26.6.5 [alg.foreach] | ranges::for_each(_n) should be less constrained |
Yes | ||
| 4242 | WP | 24.4.4.3 [range.iter.op.distance] | ranges::distance does not work with volatile iterators |
Yes | ||
| 4243 | Ready | 23.7.2.3 [span.objectrep] | as_bytes/as_writable_bytes is broken with span<volatile T> |
Yes | 4 | |
| 4244 | New | 32.5.7.2 [atomics.ref.ops] | Whether the spuriously failed comparison applies to compare_exchange_strong is unclear |
No | ||
| 4245 | WP | 24.5.7.1 [counted.iterator] | Operators that interact with counted_iterator and default_sentinel_t should be noexcept |
Yes | ||
| 4246 | Tentatively NAD | 28.5.7.2 [format.range.formatter] | Redundant constraint in range_formatter::format |
Yes | ||
| 4247 | WP | 22.12 [stdbit.h.syn] | Header <stdbit.h> is not yet freestanding |
Yes | ||
| 4248 | New | 33.9.2 [exec.snd.expos] | Late domain-based dispatching of schedule_from and continues_on are flipped |
Yes | 1 | |
| 4249 | New | 25.7.16.3 [range.lazy.split.outer] | The past end issue for lazy_split_view |
Yes | ||
| 4250 | New | 20.4.1.7 [indirect.swap] | swap overloads for indirect and polymorphic only found by ADL |
Yes | ||
| 4251 | New | 99 [indirect.asgn] | Move assignment for indirect unnecessarily requires copy construction |
Yes | 1 | |
| 4252 | New | 16.4.6.13 [derivation] | Are exposition-only classes considered specified for the purpose of final? |
Yes | 3 | |
| 4253 | Tentatively Ready | 24.5.3.3 [const.iterators.iterator] | basic_const_iterator should provide iterator_type |
Yes | ||
| 4254 | New | 25.7.32.3 [range.stride.iterator] | stride_view::iterator should provide operator-> |
Yes | ||
| 4255 | New | 22.10.17.4.3 [func.wrap.move.ctor] | move_only_function constructor should recognize empty copyable_functions |
Yes | ||
| 4256 | New | 22.10.17.6.3 [func.wrap.ref.ctor] | Incorrect constrains for function_ref constructors from nontype_t |
Yes | ||
| 4257 | Tentatively Ready | 30.7.9 [time.clock.local] | Stream insertion for chrono::local_time should be constrained |
Yes | ||
| 4258 | New | 16.4.4.6.1 [allocator.requirements.general] | Size type mismatch in constraints involving Cpp17Allocator | No | ||
| 4259 | New | 27.4.3.8.2 [string.find] | P1148R0 changed the return values of searching functions of std::basic_string on some platforms |
Yes | ||
| 4260 | New | 33.2.1 [exec.queryable.general] | Query objects must be default constructible | Yes | ||
| 4261 | New | 27.4.3.8.2 [string.find] | P1206R7 broke uses of container adaptors with old custom sequence containers | No | ||
| 4262 | New | 26.7.1 [alg.copy] | copy_if, remove_copy, remove_copy_if, unique_copy have too strong preconditions |
Yes | ||
| 4263 | New | 28.5 [format] | What should std::format_to etc. behave when the output is overlong? |
No | ||
| 4264 | New | 22.10.17.1 [func.wrap.general] | Skipping indirection is not allowed for function_ref |
Yes | ||
| 4265 | New | 26.10.16 [numeric.ops.midpoint] | std::midpoint should not accept const bool |
Yes | ||
| 4266 | Tentatively Ready | 23.7.3.4.7 [mdspan.layout.stride] | layout_stride::mapping should treat empty mappings as exhaustive |
Yes | ||
| 4267 | New | 22.4.4.2 [tuple.cnstr] | Uses-allocator construction is meaningless for tuple of references | Yes | ||
| 4268 | New | 22.10.4 [func.require] | function<void()> suppresses nodiscard warnings |
No | ||
| 4269 | New | 26.7.9 [alg.unique] | unique_copy passes arguments to its predicate backwards |
Yes | ||
| 4270 | New | 24.3.6.4 [projected] | Diagnose misuse of std::projected::operator* |
Yes | ||
| 4271 | New | 24.3.1 [iterator.requirements.general] | Caching range views claim amortized amortized 𝒪(1) runtime complexity for algorithms that are in fact 𝒪(n) | Yes | ||
| 4272 | New | 23.7.3.4 [mdspan.layout] | For rank == 0, layout_stride is atypically convertible |
Yes | 2 | |
| 4273 | New | 26.3.6 [execpol] | Standard execution policy types should be conventional tag class types | Yes | ||
| 4274 | Tentatively Ready | 30.9.2 [time.hms.members] | The chrono::hh_mm_ss constructor is ill-formed for unsigned durations |
Yes | ||
| 4275 | New | 23.7.3.2 [mdspan.syn] | std::dynamic_extent should also be defined in <mdspan> |
Yes | ||
| 4276 | Tentatively Ready | 23.3.3.5 [array.zero] | front() and back() are not hardened for zero-length std::arrays |
Yes | ||
| 4277 | New | 26.2 [algorithms.requirements] | §[algorithms.requirements] It is unclear what an algorithm is | Yes | ||
| 4278 | New | 33.9.2 [exec.snd.expos] | Consider changing how get-domain-early(sndr) works |
No | ||
| 4279 | New | 31.12.13.2 [fs.op.absolute] | §[fs.op.absolute] Non-normative encouragement should be Recommended practice | No | ||
| 4280 | Tentatively Ready | 29.10.8.7 [simd.loadstore] | simd::partial_load uses undefined identifier T |
Yes | ||
| 4281 | New | 22.5.3.7 [optional.observe] | Inconsistency between value_or() and error_or() in std::expected |
No | ||
| 4282 | New | 20.2.6 [obj.lifetime] | Imprecise Throws: clause in std::relocate |
Yes | ||
| 4283 | New | 20.2.6 [obj.lifetime] | std::trivially_relocate needs stronger preconditions on "nested" objects with dynamic lifetime |
Yes | ||
| 4284 | New | 28.5.6.4 [format.formatter.spec] | Integer-class types should be formattable | Yes | ||
| 4285 | New | 28.3.4.6.2.2 [locale.time.get.members] | time_get::do_get_date is problematic even after LWG 461 |
No | ||
| 4286 | New | 17.3.2 [version.syn] | Some more feature-test macros for fully freestanding features are not marked freestanding | Yes | ||
| 4287 | New | 28.3.4.2.5.3 [locale.codecvt.virtuals] | §[locale.codecvt.virtuals] do_in and do_out could do with better specification |
Yes | ||
| 4288 | New | 30.7.2.2 [time.clock.system.members] | The Constraints: element in [time.clock.system.members] is probably wrong | Yes | 3 | |
| 4289 | LEWG | 29.5.3.2 [rand.req.seedseq] | Seed sequence is overspecified | Yes | 3 | |
| 4290 | New | 20.2.5 [ptr.align] | Missing Mandates clauses on is_sufficiently_aligned |
Yes | ||
| 4291 | Tentatively Ready | 23.4.3.1 [map.overview] | explicit map(const Allocator&) should be constexpr |
Yes | ||
| 4292 | Tentatively Ready | 23.5.3.1 [unord.map.overview] | Unordered container local iterators should be constexpr iterators | Yes | ||
| 4293 | Tentatively Ready | 23.7.2.2.4 [span.sub] | span::subspan/first/last chooses wrong constructor when T is const-qualified bool | Yes | ||
| 4294 | Tentatively Ready | 22.9.2.2 [bitset.cons] | bitset(const CharT*) constructor needs to be constrained |
Yes | ||
| 4295 | New | 8.2.6 [fund.ts.v3::memory.observer.ptr.special] | [fund.ts.v3] experimental::observer_ptr should have more constexpr |
Yes | 4 | |
| 4296 | New | 16.4.4.5 [hash.requirements] | Clarify that Cpp17Hash does not imply stateless | No | ||
| 4297 | New | 26.4 [algorithm.syn] | Missing permutable constraint for iterator overloads in Parallel Range Algorithms |
Yes | ||
| 4298 | New | 21.4.12 [meta.reflection.extract] | §[meta.reflection.extract] Malformed "F noexcept" type |
Yes | 3 | |
| 4299 | New | 22.5.4.7 [optional.ref.monadic] | Missing Mandates: part in optional<T&>::transform |
Yes | ||
| 4300 | Tentatively Ready | 22.5.4.3 [optional.ref.assign] | Missing Returns: element in optional<T&>::emplace |
Yes | ||
| 4301 | Tentatively Ready | 32.7.4 [thread.condition.condvar] | condition_variable{_any}::wait_{for, until} should take timeout by value |
Yes | ||
| 4302 | New | 29.9.13.8 [linalg.algs.blas1.ssq] | Problematic vector_sum_of_squares wording |
Yes | ||
| 4303 | New | 24.4.4.3 [range.iter.op.distance] | std::decay_t in the specification of ranges::distance is problematic |
Yes | 4 | |
| 4304 | New | 22.5.4.6 [optional.ref.observe] | std::optional<NonReturnable&> is ill-formed due to value_or |
Yes | ||
| 4305 | New | 17.12.7 [compare.type] | Missing user requirements on type_order template |
Yes | ||
| 4306 | New | 16.4.6.5 [member.functions] | Interaction between LWG 2259 and Constraints of member functions | No | 3 | |
| 4307 | New | 25.2 [ranges.syn] | Make good use of sized-random-access-range and bidirectional-common
in <ranges> |
Yes | ||
| 4308 | New | 22.5.4.5 [optional.ref.iterators] | std::optional<T&>::iterator can't be a contiguous iterator for some T |
Yes | 1 | |
| 4309 | New | 32.5.4 [atomics.order] | How are two seq_cst operations ordered in the single total order if these two operations are unsequenced? |
No | ||
| 4310 | New | 32.4.3.3 [thread.thread.constr] | Is "the completion of the invocation of the constructor" considered as an expression? | No | ||
| 4311 | New | 20.5.3.3 [mem.poly.allocator.mem] | Can std::pmr::polymorphic_allocator::construct just call std::uninitialized_construct_using_allocator? |
Yes | ||
| 4312 | New | 20.2.8.2 [allocator.uses.construction] | Const and value category mismatch for allocator_arg_t/allocator_arg in the description
of uses-allocator construction |
Yes | ||
| 4313 | New | 22.4.4.2 [tuple.cnstr] | Uses-allocator construction of pair in tuple's allocator_arg_t constructors |
Yes | ||
| 4314 | New | 23.7.3.4 [mdspan.layout] | Missing move in mdspan layout mapping::operator() |
Yes | ||
| 4315 | Ready | 29.9.13.9 [linalg.algs.blas1.nrm2] | Insufficient specification of vector_two_norm and matrix_frob_norm |
Yes | ||
| 4316 | New | 21.4.13 [meta.reflection.substitute] | {can_}substitute specification is ill-formed |
No | ||
| 4317 | New | 16.4.4.2 [utility.arg.requirements] | The meaning of "resource" in the Cpp17Destructible requirements is undefined | Yes | ||
| 4318 | Tentatively Ready | 23.3.9.6 [hive.erasure] | Have hive::erase_if reevaluate end() to avoid UB |
Yes | ||
| 4319 | New | 22.10.4 [func.require] | Supporting copy-elision in function wrappers | Yes | ||
| 4320 | New | 23.3.9 [hive] | hive operations involving insertion/erasure should have 𝒪(log n) time complexity |
Yes | ||
| 4321 | New | 32.5.8.2 [atomics.types.operations] | How are evaluations occurring within a store and a load operation ordered where the store synchronized with the load | No | ||
| 4322 | New | 20.4 [mem.composite.types] | Problematic Constraints on incomplete types in indirect and polymorphic | Yes | 2 | |
| 4323 | New | 23.3.9.5 [hive.operations] | hive::unique time complexity should incorporate potential block removal complexity |
Yes | ||
| 4324 | New | 20.3.1.3.5 [unique.ptr.single.observers] | unique_ptr<void>::operator* is not SFINAE-friendly |
Yes | ||
| 4325 | New | 20.4.1.8 [indirect.relops] | std::indirect's operator== still does not support incomplete types |
Yes | ||
| 4326 | New | 33.5.1 [exec.fwd.env] | Standard defined queries can't customize forwarding_query_t by inheriting from it |
Yes | ||
| 4327 | New | 33.6 [exec.sched] | Equal schedulers should be required to have same behaviour | No | ||
| 4328 | New | 33.6 [exec.sched] | Remove note in §[exec.sched] regarding waiting for completion of scheduled operations | Yes | ||
| 4329 | New | 33.13.3 [exec.affine.on] | Customising affine_on for other algorithms | No | ||
| 4330 | New | 33.13.3 [exec.affine.on] | affine_on semantics |
No | ||
| 4331 | New | 33.13.3 [exec.affine.on] | affine_on shape may be wrong |
No | ||
| 4332 | New | 33.13.3 [exec.affine.on] | affine_on shouldn't forward the stop token to the scheduling operation |
No | ||
| 4333 | New | 33.13.6.5 [task.promise] | task uses unusual allocator customisation |
No | ||
| 4334 | New | 33.13.6.5 [task.promise] | task<...>::promise_type supports arbitrary allocator_arg position |
No | ||
| 4335 | New | 33.13.6.5 [task.promise] | task shadows the environment's allocator |
No | ||
| 4336 | New | 33.13.5 [exec.task.scheduler] | bulk vs. task_scheduler |
No | ||
| 4337 | New | 33.13.6.5 [task.promise] | co_await change_coroutine_scheduler(s) requires assignable |
Yes | ||
| 4338 | New | 33.13.6.2 [task.class] | sender unaware coroutines should be able to co_await a task |
No | ||
| 4339 | New | 33.13.6 [exec.task] | task's coroutine frame may be released late |
Yes | ||
| 4340 | New | 33.13.6.5 [task.promise] | task::promise_type::unhandled_stopped() should be noexcept |
Yes | ||
| 4341 | New | 33.13.6.2 [task.class] | Missing rvalue reference qualification for task::connect() |
Yes | ||
| 4342 | New | 33.13.5 [exec.task.scheduler] | Missing rvalue reference qualification for task_scheduler::ts-sender::connect() |
Yes | ||
| 4343 | New | 33.13.6.2 [task.class] | Missing default template arguments for task |
Yes | ||
| 4344 | New | 33.13.3 [exec.affine.on] | affine_on has no specification for the default |
Yes | ||
| 4345 | New | 33.13.6.5 [task.promise] | task::promise_type::return_value default template parameter |
Yes | ||
| 4346 | New | 33.13.6.5 [task.promise] | task::promise_type::return_void/value lack a specification |
Yes | ||
| 4347 | New | 33.13.6.5 [task.promise] | task's stop source is always created |
No | ||
| 4348 | New | 33.13.6.2 [task.class] | task doesn't support symmetric transfer |
No | ||
| 4349 | New | 33.13.6.5 [task.promise] | task is not actually started lazily |
Yes | ||
| 4350 | New | 23.6.8 [flat.map] | Should flat adaptors use insert_range when available? |
No | ||
| 4351 | New | 23.7.2.1 [span.syn] | integral-constant-like needs more remove_cvref_t |
Yes | ||
| 4352 | New | 23.6.9.1 [flat.multimap.overview] | "operations on flat_multimap are equivalent to those of flat_map" | No | ||
| 4353 | New | 33 [exec] | Uses of MANDATE-NOTHROW in CPOs should not enclose CPO argument sub-expressions |
No | ||
| 4354 | New | 33.5.8 [exec.get.fwd.progress] | Reconsider weakly_parallel as the default forward_progress_guarantee |
Yes | ||
| 4355 | New | 33.9.10 [exec.connect] | connect-awaitable() should mandate rcvr can receive all completion-signals rather than using constraints |
Yes | ||
| 4356 | New | 33.9.10 [exec.connect] | connect() should use get_allocator(get_env(rcvr)) to allocate the coroutine-state for a
connect-awaitable coroutine |
Yes | ||
| 4357 | New | 33.9.10 [exec.connect] | connect-awaitable should use is_void_v to check for result-type of
co_await expression instead of same_as<void> |
Yes | ||
| 4358 | New | 33.13.1 [exec.as.awaitable] | §[exec.as.awaitable] is using "Preconditions:" when it should probably be described in the constraint | Yes | ||
| 4359 | New | 33.13.1 [exec.as.awaitable] | as_awaitable(expr, p) does not define semantics of call if p is not an lvalue |
Yes | ||
| 4360 | New | 33.13.1 [exec.as.awaitable] | awaitable-sender concept should qualify use of awaitable-receiver type |
Yes | ||
| 4361 | New | 33.13.1 [exec.as.awaitable] | awaitable-receiver::set_value should use Mandates instead of constraints |
Yes | ||
| 4362 | New | 32.3.8 [stoptoken.inplace] | Inconsistent usage of constexpr for inplace_stop_token and inplace_stop_source |
Yes | ||
| 4363 | New | 33.9.6 [exec.snd.transform] | transform_sender comparing types ignoring cv-qualifiers doesn't take into account differences in value category |
Yes | ||
| 4364 | New | 31.7.7 [std.manip] | SFINAE-friendliness on operator<< and operator>> for unspecified I/O manipulators |
No | ||
| 4365 | New | 22.10.18.3 [func.search.bm] | boyer_moore_searcher and boyer_moore_horspool_searcher should be constexpr-friendly |
Yes | ||
| 4366 | New | 22.8.6.8 [expected.object.eq] | Heterogeneous comparison of expected may be ill-formed |
Yes | ||
| 4367 | New | 22.5.4.7 [optional.ref.monadic] | Improve optional<T&>::or_else |
Yes | ||
| 4368 | New | 33.9.5 [exec.domain.default] | Potential dangling reference returned from transform_sender |
Yes | ||
| 4369 | New | 33.9.12.9 [exec.then] | check-types function for upon_error and upon_stopped is wrong |
Yes | ||
| 4370 | New | 22.5.9 [optional.comp.with.t] | Comparison of optional<T> to T may be ill-formed |
Yes | ||
| 4371 | New | 23.6.3.1 [queue.defn] | Container adaptor's empty/size should be noexcept |
Yes | ||
| 4372 | New | 23.7.3.4.8.1 [mdspan.layout.leftpad.overview] | Weaken Mandates: for dynamic padding values in padded layouts | Yes | ||
| 4373 | New | 22.10.17.6.2 [func.wrap.ref.class] | function_ref should provide result_type |
Yes | ||
| 4374 | New | 23.6.8.7 [flat.map.modifiers] | flat_meow range insertion behavior is unclear if in-place merge cannot allocate additional memory |
No | ||
| 4375 | New | 29.10.8.15 [simd.bit] | std::simd::bit_ceil should not be noexcept |
Yes | ||
| 4376 | New | 29.10.9.4 [simd.mask.unary] | ABI tag in return type of [simd.mask.unary] is overconstrained | Yes | ||
| 4377 | New | 32.5.7.2 [atomics.ref.ops] | Misleading note about lock-free property of std::atomic_ref |
Yes | ||
| 4378 | New | 27.4.3.6 [string.access] | Inconsistency between std::basic_string's data() and operator[] specification |
Yes | ||
| 4379 | New | 23.3.9.3 [hive.capacity] | hive::reserve() needs Throws: element adjusted to match block min/max considerations |
Yes | ||
| 4380 | New | 23.3.9.3 [hive.capacity] | hive::reserve() complexity does not reflect potential deallocation of blocks
|
Yes | ||
| 4381 | New | 25.5.7.2 [range.utility.conv.to] | std::ranges::to specification using CTAD not supported by core language
|
Yes | ||
| 4382 | New | 29.10.9.2 [simd.mask.ctor] | The simd::basic_mask(bool) overload needs to be more constrained
|
Yes | ||
| 4383 | New | 21.3.5 [const.wrap.class] | constant_wrapper's pseudo-mutators are underconstrained
|
Yes | ||
| 4384 | New | 23.6.11.2 [flat.set.defn] | flat_set::erase(iterator) is underconstrained
|
Yes | ||
| 4385 | New | 24.7 [iterator.range] | Including <simd> doesn't provide std::begin/end
|
Yes | ||
| 4386 | New | 29.10.8.13 [simd.alg] | std::simd::select(bool c, const T& a, const U& b) is underconstrained
|
Yes | ||
| 4387 | Open | 24.7 [iterator.range] | Including <stacktrace> doesn't provide std::begin/end
|
Yes | ||
| 4388 | New | 17.14.2 [cstdarg.syn] | Align new definition of va_start with C23 |
Yes | ||
| 4389 | New | 25.4.2 [range.range] | ranges::for_each possibly behaves differently from range-based for |
Yes | ||
| 4390 | New | 29.10.7.2 [simd.ctor] | simd::basic_vec(U&&) default template parameter |
Yes | ||
| 4391 | New | 29.10.7.2 [simd.ctor] | Ambiguities of simd::basic_vec constructor |
Yes | ||
| 4392 | New | 29.10.8.7 [simd.loadstore] | simd::unchecked_load misses difference type casting |
Yes | ||
| 4393 | New | 29.10.8.11 [simd.permute.memory] | simd::unchecked_scatter_to is underconstrained |
Yes | ||
| 4394 | New | 29.10.8.7 [simd.loadstore] | simd::unchecked_load(I first, S last) construct span maybe ill-formed |
Yes | ||
| 4395 | New | 33.9.12.3 [exec.write.env] | write_env implementation-detail lambda should have explicit return type |
No | ||
| 4396 | New | 23.2.4 [sequence.reqmts] | Improve inplace_vector(from_range_t, R&& rg) |
Yes | ||
| 4397 | New | 23.7.2.2.2 [span.cons] | Improve span(R&& r) |
Yes | ||
| 4398 | New | 23.6.2 [queue.syn] | enable_nonlocking_formatter_optimization should be disabled for container adaptors |
Yes | ||
| 4399 | New | 28.5.9 [format.tuple] | enable_nonlocking_formatter_optimization for pair and tuple needs remove_cvref_t |
Yes | ||
| 4400 | New | 30.12 [time.format] | enable_nonlocking_formatter_optimization for durations with custom rep |
Yes | ||
| 4401 | New | 25.7.14.2 [range.join.view] | join_view should be sized_range when applied to ranges of simd::vec |
Yes | ||
| 4402 | New | 29.10.9.1 [simd.mask.overview] | List-initialization of iterators in [simd.mask.overview] | Yes | ||
| 4403 | New | 29.10.7.2 [simd.ctor] | simd::basic_vec CTAD misses difference type casting |
Yes | ||
| 4404 | New | 23.7.2.2.3 [span.deduct] | Should span(R&&) CTAD apply P2280? |
Yes | ||
| 4405 | New | 23.7.3.6.2 [mdspan.mdspan.cons] | mdspan constructor should disallow derived to base conversions |
Yes | ||
| 4406 | New | 22.5.3.7 [optional.observe] | optional::value_or return statement is inconsistent with Mandates |
Yes | ||
| 4407 | New | 29.10.7.2 [simd.ctor] | constexpr-wrapper-like needs remove_cvref_t in simd::basic_vec
constructor |
Yes | ||
| 4408 | New | 29.10.7.3 [simd.subscr] | Hardening simd::vec::operator[] |
Yes | ||
| 4409 | New | 29.10 [simd] | Constant expression ranges::size(r) Constraints and Mandates in [simd] |
Yes |