Note: This page is currently WIP
Core issues meta bug.This table tracks the implementation status of C++ defect reports in GCC. It is based on C++ Standard Core Language Issue Table of Contents, Revision 114 (here).
| DR # | Status | Title | GCC status | Notes |
|---|---|---|---|---|
| 1 | TC1 | What if two using-declarations refer to the same function but the declarations introduce different default-arguments? | ? | |
| 2 | drafting | How can dependent names be used in member declarations that appear outside of the class template definition? | - | |
| 3 | NAD | The template compilation model rules render some explicit specialization declarations not visible during instantiation | ? | |
| 4 | CD1 | Does extern "C" affect the linkage of function names with internal linkage? | ? | |
| 5 | CD1 | CV-qualifiers and type conversions | ? | |
| 6 | NAD | Should the optimization that allows a class object to alias another object also allow the case of a parameter in an inline function to alias its argument? | N/A | |
| 7 | NAD | Can a class with a private virtual base class be derived from? | No | |
| 8 | CD1 | Access to template arguments used in a function return type and in the nested name specifier | Dup of 45 | |
| 9 | CD1 | Clarification of access to base class members | ? | |
| 10 | CD1 | Can a nested class access its own class name as a qualified name if it is a private member of the enclosing class? | Dup of 45 | |
| 11 | CD1 | How do the keywords typename/template interact with using-declarations? | ? | |
| 12 | dup | Default arguments on different declarations for the same function and the Koenig lookup | ? | |
| 13 | NAD | extern "C" for Parameters of Function Templates | ? | |
| 14 | NAD | extern "C" functions and declarations in different namespaces | ? | |
| 15 | dup | Default arguments for parameters of function templates | ? | |
| 16 | CD1 | Access to members of indirect private base classes | ? | |
| 17 | NAD | Footnote 99 should discuss the naming class when describing members that can be accessed from friends | ? | |
| 18 | NAD | f(TYPE) where TYPE is void should be allowed | ? | |
| 19 | NAD | Clarify protected member access | ? | |
| 20 | TC1 | Some clarifications needed for 12.8 para 15 | ? | |
| 21 | TC1 | Can a default argument for a template parameter appear in a friend declaration? | ? | |
| 22 | TC1 | Template parameter with a default argument that refers to itself | ? | |
| 23 | NAD | Some questions regarding partial ordering of function templates | ? | |
| 24 | TC1 | Errors in examples in 14.7.3 | N/A | |
| 25 | TC1 | Exception specifications and pointers to members | ? | |
| 26 | NAD | Copy constructors and default arguments | ? | |
| 27 | NAD | Overload ambiguities for builtin ?: prototypes | ? | |
| 28 | CD1 | 'exit', 'signal' and static object destruction | N/A (Library DR) | |
| 29 | CD1 | Linkage of locally declared functions | ? | |
| 30 | TC1 | Valid uses of "::template" |
? | |
| 31 | NAD | Looking up new/delete | ? | |
| 32 | TC1 | Clarification of explicit instantiation of non-exported templates | ? | |
| 33 | TC1 | Argument dependent lookup and overloaded functions | ? | |
| 34 | NAD | Argument dependent lookup and points of instantiation | ? | |
| 35 | TC1 | Definition of default-initialization | ? | |
| 36 | CD6 | using-declarations in multiple-declaration contexts | No | PR116160 |
| 37 | NAD | When is uncaught_exception() true? | ? | |
| 38 | TC1 | Explicit template arguments and operator functions | ? | |
| 39 | CD1 | Conflicting ambiguity rules | ? | PR13590 |
| 40 | TC1 | Syntax of declarator-id | ? | |
| 41 | TC1 | Clarification of lookup of names after declarator-id | ? | |
| 42 | NAD | Redefining names from base classes | ? | |
| 43 | TC1 | Copying base classes (PODs) using memcpy | ? | |
| 44 | CD1 | Member specializations | ? | |
| 45 | CD1 | Access to nested classes | Yes | |
| 46 | NAD | Explicit instantiation of member templates | ? | |
| 47 | NAD | Template friend issues | ? | |
| 48 | TC1 | Definitions of unused static members | ? | |
| 49 | TC1 | Restriction on non-type, non-value template arguments | ? | |
| 50 | NAD | Converting pointer to incomplete type to same type | ? | |
| 51 | TC1 | Overloading and user-defined conversions | ? | |
| 52 | TC1 | Non-static members, member selection and access checking | ? | |
| 53 | TC1 | Lvalue-to-rvalue conversion before certain static_casts | ? | |
| 54 | CD1 | Static_cast from private base to derived class | ? | |
| 55 | NAD | Adding/subtracting pointer and enumeration value | ? | |
| 56 | TC1 | Redeclaring typedefs within classes | Yes | |
| 57 | open | Empty unions | - | |
| 58 | CD1 | Signedness of bit fields of enum type | ? | |
| 59 | TC1 | Clarification of overloading and UDC to reference type | ? | |
| 60 | CD1 | Reference binding and valid conversion sequences | ? | |
| 61 | NAD | Address of static member function "&p->f" |
? | |
| 62 | CD1 | Unnamed members of classes used as type parameters | ? | |
| 63 | CD1 | Class instantiation from pointer conversion to void*, null and self | ? | |
| 64 | TC1 | Partial ordering to disambiguate explicit specialization | ? | |
| 65 | TC1 | Typo in default argument example | N/A | |
| 66 | NAD | Visibility of default args vs overloads added after using-declaration | ? | |
| 67 | TC1 | Evaluation of left side of object-expression | ? | |
| 68 | TC1 | Grammar does not allow "friend class A<int>;" | ? | |
| 69 | TC1 | Storage class specifiers on template declarations | ? | |
| 70 | CD1 | Is an array bound a nondeduced context? | ? | |
| 71 | NAD | Incorrect cross reference | N/A | |
| 72 | dup | Linkage and storage class specifiers for templates | ? | |
| 73 | TC1 | Pointer equality | ? | |
| 74 | TC1 | Enumeration value in direct-new-declarator | ? | |
| 75 | TC1 | In-class initialized members must be const | ? | |
| 76 | TC1 | Are const volatile variables considered "constant expressions"? | ? | |
| 77 | CD1 | The definition of friend does not allow nested classes to be friends | ? | |
| 78 | CD1 | Section 8.5 paragraph 9 should state it only applies to non-static objects | ? | |
| 79 | dup | Alignment and placement new | ? | |
| 80 | TC1 | Class members with same name as class | ? | |
| 81 | NAD | Null pointers and C compatibility | ? | |
| 82 | dup | Definition of "using" a constant expression | ? | |
| 83 | TC1 | Overloading and deprecated conversion of string literal | ? | |
| 84 | TC1 | Overloading and conversion loophole used by auto_ptr |
? | |
| 85 | TC1 | Redeclaration of member class | ? | |
| 86 | CD1 | Lifetime of temporaries in query expressions | ? | |
| 87 | CD1 | Exception specifications on function parameters | ? | |
| 88 | NAD | Specialization of member constant templates | ? | |
| 89 | TC1 | Object lifetime does not account for reference rebinding | ? | |
| 90 | TC1 | Should the enclosing class be an "associated class" too? | ? | |
| 91 | NAD | A union's associated types should include the union itself | ? | |
| 92 | CD4 | Should exception-specifications be part of the type system? | ? | |
| 93 | TC1 | Missing word in 3.8 basic.life paragraph 2 | ? | |
| 94 | TC1 | Inconsistencies in the descriptions of constant expressions | ? | |
| 95 | NAD | Elaborated type specifiers referencing names declared in friend decls | ? | |
| 96 | C++11 | Syntactic disambiguation using the template keyword |
No | PR55588 |
| 97 | NAD | Use of bool constants in integral constant expressions | ? | |
| 98 | TC1 | Branching into try block | ? | |
| 99 | NAD | Partial ordering, references and cv-qualifiers | ? | |
| 100 | TC1 | Clarify why string literals are not allowed as template arguments | ? | |
| 101 | TC1 | Redeclaration of extern "C" names via using-declarations | ? | |
| 102 | NAD | Operator lookup rules do not work well with parts of the library | ? | |
| 103 | TC1 | Is it extended-namespace-definition or extension-namespace-definition ? | ? | |
| 104 | NAD | Destroying the exception temp when no handler is found | ? | |
| 105 | TC1 | Meaning of "template function" | ? | |
| 106 | CD1 | Creating references to references during template deduction/instantiation | ? | |
| 107 | NAD | Linkage of operator functions | ? | |
| 108 | TC1 | Are classes nested in templates dependent? | ? | |
| 109 | NAD | Allowing ::template in using-declarations |
? | |
| 110 | CD6 | Can template functions and classes be declared in the same scope? | ? | |
| 111 | NAD | Copy constructors and cv-qualifiers | ? | |
| 112 | CD1 | Array types and cv-qualifiers | ? | |
| 113 | CD1 | Visibility of called function | ? | |
| 114 | NAD | Virtual overriding by template member function specializations | ? | |
| 115 | CD1 | Address of template-id | ? | |
| 116 | TC1 | Equivalent and functionally-equivalent function templates | ? | |
| 117 | NAD | Timing of destruction of temporaries | ? | |
| 118 | CD1 | Calls via pointers to virtual member functions | ? | |
| 119 | CD1 | Object lifetime and aggregate initialization | ? | |
| 120 | TC1 | Nonexistent non-terminal qualified-name | ? | |
| 121 | TC1 | Dependent type names with non-dependent nested-name-specifiers | ? | |
| 122 | CD1 | template-ids as unqualified-ids | ? | |
| 123 | TC1 | Bad cross-reference | ? | |
| 124 | CD1 | Lifetime of temporaries in default initialization of class arrays | 12 | |
| 125 | CD1 | Ambiguity in friend declaration syntax |
? | |
| 126 | TC1 | Exception specifications and const |
? | |
| 127 | TC1 | Ambiguity in description of matching deallocation function | ? | |
| 128 | TC1 | Casting between enum types | ? | |
| 129 | CD3 | Stability of uninitialized auto variables | ? | |
| 130 | NAD | Sequence points and new-expressions | ? | |
| 131 | TC1 | Typo in Lao characters | ? | |
| 132 | NAD | Local types and linkage | ? | |
| 133 | dup | Exception specifications and checking | ? | |
| 134 | TC1 | Template classes and declarator-ids | ? | |
| 135 | TC1 | Class type in in-class member function definitions | ? | |
| 136 | CD1 | Default arguments and friend declarations | ? | |
| 137 | TC1 | static_cast of cv void* |
? | |
| 138 | CD6 | Friend declaration name lookup | ? | |
| 139 | CD1 | Error in friend lookup example |
? | |
| 140 | CD1 | Agreement of parameter declarations | ? | |
| 141 | CD1 | Non-member function templates in member access expressions | ? | |
| 142 | TC1 | Injection-related errors in access example | ? | |
| 143 | CD1 | Friends and Koenig lookup | ? | |
| 144 | open | Position of friend specifier |
- | |
| 145 | TC1 | Deprecation of prefix ++ |
? | |
| 146 | open | Floating-point zero | - | |
| 147 | TC1 | Naming the constructor | ? | |
| 148 | TC1 | POD classes and pointers to members | ? | |
| 149 | TC1 | Accessibility and ambiguity | ? | |
| 150 | C++17 | Template template parameters and default arguments | ? | PR82266 |
| 151 | TC1 | Terminology of zero-initialization | ? | |
| 152 | TC1 | explicit copy constructors |
? | |
| 153 | TC1 | Misleading wording (rank of conversion) | ? | |
| 154 | NAD | Anonymous unions in unnamed namespaces | ? | |
| 155 | dup | Brace initializer for scalar | ? | |
| 156 | NAD | Name lookup for conversion functions | N/A | |
| 157 | open | Omitted typedef declarator | - | |
| 158 | CD1 | Aliasing and qualification conversions | ? | |
| 159 | TC1 | Namespace qualification in declarators | ? | |
| 160 | CD1 | Missing std:: qualification |
? | |
| 161 | TC1 | Access to protected nested type | ? | |
| 162 | CD1 | (&C::f)() with nonstatic members |
? | |
| 163 | TC1 | Description of subaggregate initializer | ? | |
| 164 | TC1 | Overlap between Koenig and normal lookup | ? | |
| 165 | NAD | Definitions of friends and block-scope externs | ? | |
| 166 | TC1 | Friend declarations of template-ids | ? | |
| 167 | NAD | Deprecating static functions | ? | |
| 168 | NAD | C linkage for static member functions | ? | |
| 169 | NAD | template-ids in using-declarations | ? | |
| 170 | DRWP | Pointer-to-member conversions | ? | |
| 171 | TC1 | Global namespace scope | ? | |
| 172 | CD1 | Unsigned int as underlying type of enum | ? | |
| 173 | TC1 | Constraints on execution character set | ? | |
| 174 | NAD | Undeprecating global static | ? | |
| 175 | CD1 | Class name injection and base name access | ? | |
| 176 | TC1 | Name injection and templates | ? | |
| 177 | CD1 | Lvalues vs rvalues in copy-initialization | ? | |
| 178 | TC1 | More on value-initialization | ? | |
| 179 | TC1 | Function pointers and subtraction | ? | |
| 180 | CD1 | typename and elaborated types |
? | |
| 181 | TC1 | Errors in template template-parameter example | ? | |
| 182 | NAD | Access checking on explicit specializations | ? | |
| 183 | TC1 | typename in explicit specializations |
? | |
| 184 | CD1 | Default arguments in template template-parameters | ? | |
| 185 | TC1 | "Named" temporaries and copy elision | ? | |
| 186 | open | Name hiding and template template-parameters | - | |
| 187 | TC1 | Scope of template parameter names | ? | |
| 188 | TC1 | Comma operator and rvalue conversion | Yes | |
| 189 | drafting | Definition of operator and punctuator | - | |
| 190 | TC1 | Layout-compatible POD-struct types | ? | |
| 191 | CD6 | Name lookup does not handle complex nesting | ? | |
| 192 | NAD | Name lookup in parameters | N/A | |
| 193 | TC1 | Order of destruction of local automatics of destructor | ? | |
| 194 | TC1 | Identifying constructors | ? | |
| 195 | CD1 | Converting between function and object pointers | ? | |
| 196 | open | Arguments to deallocation functions | - | |
| 197 | CD1 | Issues with two-stage lookup of dependent names | ? | |
| 198 | CD1 | Definition of "use" in local and nested classes | ? | |
| 199 | CD1 | Order of destruction of temporaries | ? | |
| 200 | dup | Partial ordering and explicit arguments | ? | |
| 201 | CD1 | Order of destruction of temporaries in initializers | 12 | |
| 202 | TC1 | Use of overloaded function name | ? | |
| 203 | NAD | Type of address-of-member expression | ? | |
| 204 | CD1 | Exported class templates | ? | |
| 205 | drafting | Templates and static data members | - | |
| 206 | TC1 | Semantic constraints on non-dependent names | ? | |
| 207 | CD1 | using-declarations and protected access | ? | |
| 208 | CD1 | Rethrowing exceptions in nested handlers | ? | |
| 209 | NAD | Must friend declaration names be accessible? | ? | |
| 210 | TC1 | What is the type matched by an exception handler? | ? | |
| 211 | NAD | Constructors should not be allowed to return normally after an exception | ? | |
| 212 | CD4 | Implicit instantiation is not described clearly enough | ? | |
| 213 | TC1 | Lookup in dependent base classes | ? | |
| 214 | CD1 | Partial ordering of function templates is underspecified | ? | PR49505 |
| 215 | CD1 | Template parameters are not allowed in nested-name-specifiers | ? | |
| 216 | CD1 | Linkage of nameless class-scope enumeration types | ? | |
| 217 | TC1 | Default arguments for non-template member functions of class templates | ? | |
| 218 | CD1 | Specification of Koenig lookup | ? | |
| 219 | NAD | Cannot defend against destructors that throw exceptions | ? | |
| 220 | CD1 | All deallocation functions should be required not to throw | ? | |
| 221 | CD1 | Must compound assignment operators be member functions? | ? | |
| 222 | CD1 | Sequence points and lvalue-returning operators | ? | |
| 223 | CD3 | The meaning of deprecation | ? | |
| 224 | CD1 | Definition of dependent names | ? | |
| 225 | NAD | Koenig lookup and fundamental types | ? | |
| 226 | CD1 | Default template arguments for function templates | Yes | |
| 227 | TC1 | How many scopes in an if statement? |
? | |
| 228 | CD1 | Use of template keyword with non-member templates |
No | PR94161 |
| 229 | NAD | Partial specialization of function templates | ? | |
| 230 | NAD | Calls to pure virtual functions | ? | |
| 231 | NAD | Visibility of names after using-directives | ? | |
| 232 | NAD | Is indirection through a null pointer undefined behavior? | N/A | |
| 233 | review | References vs pointers in UDC overload resolution | No | PR114697 |
| 234 | NAD | Reuse of base class subobjects | ? | |
| 235 | TC1 | Assignment vs initialization | ? | |
| 236 | NAD | Explicit temporaries and integral constant expressions | ? | |
| 237 | CD1 | Explicit instantiation and base class members | ? | |
| 238 | CD4 | Precision and accuracy constraints on floating point | ? | |
| 239 | CD1 | Footnote 116 and Koenig lookup | ? | |
| 240 | CD3 | Uninitialized values and undefined behavior | ? | |
| 241 | TC1 | Error in example in 14.8.1 | ? | |
| 242 | CD4 | Interpretation of old-style casts | ? | |
| 243 | NAD | Weighting of conversion functions in direct-initialization | ? | |
| 244 | CD1 | Destructor lookup | ? | PR12228 |
| 245 | CD1 | Name lookup in elaborated-type-specifiers | ? | |
| 246 | CD1 | Jumps in function-try-block handlers | ? | |
| 247 | NAD | Pointer-to-member casts and function overload resolution | ? | |
| 248 | C++11 | Identifier characters | ? | |
| 249 | TC1 | What is a member function template? | ? | |
| 250 | TC1 | Address of function template specialization with non-deduced template arguments | ? | |
| 251 | open | How many signed integer types are there? | - | |
| 252 | CD1 | Looking up deallocation functions in virtual destructors | ? | |
| 253 | C++17 | Why must empty or fully-initialized const objects be initialized? | No | PR89305, PR60284, PR57820, PR12567 |
| 254 | CD1 | Definitional problems with elaborated-type-specifiers | ? | |
| 255 | CD6 | Placement deallocation functions and lookup ambiguity | ? | |
| 256 | CD1 | Overflow in size calculations | ? | |
| 257 | CD2 | Abstract base constructors and virtual base initialization | ? | PR70163 |
| 258 | CD1 | using-declarations and cv-qualifiers | ? | |
| 259 | CD1 | Restrictions on explicit specialization and instantiation | ? | |
| 260 | open | User-defined conversions and built-in operator= |
- | |
| 261 | CD1 | When is a deallocation function "used?" | ? | |
| 262 | CD1 | Default arguments and ellipsis | ? | |
| 263 | CD1 | Can a constructor be declared a friend? | ? | |
| 264 | open | Unusable template constructors and conversion functions | - | |
| 265 | dup | Destructors, exceptions, and deallocation | ? | |
| 266 | NAD | No grammar sentence symbol | ? | |
| 267 | open | Alignment requirement for new-expressions | - | |
| 268 | open | Macro name suppression in rescanned replacement text | - | |
| 269 | NAD | Order of initialization of multiply-defined static data members | ? | |
| 270 | CD1 | Order of initialization of static data members of class templates | ? | |
| 271 | CD6 | Explicit instantiation and template argument deduction | ? | |
| 272 | CD1 | Explicit destructor invocation and qualified-ids | ? | PR12333 |
| 273 | CD1 | POD classes and operator&() |
? | |
| 274 | CD1 | Cv-qualification and char-alias access to out-of-lifetime objects | ? | |
| 275 | CD1 | Explicit instantiation/specialization and using-directives | ? | |
| 276 | CD1 | Order of destruction of parameters and temporaries | ? | |
| 277 | CD1 | Zero-initialization of pointers | ? | |
| 278 | NAD | External linkage and nameless entities | N/A | |
| 279 | CD6 | Correspondence of "names for linkage purposes" | ? | |
| 280 | CD1 | Access and surrogate call functions | ? | |
| 281 | CD1 | inline specifier in friend declarations |
No | PR93625 |
| 282 | open | Namespace for extended_type_info |
- | |
| 283 | CD1 | Template type-parameters are not syntactically type-names | ? | |
| 284 | CD1 | qualified-ids in class declarations | ? | |
| 285 | NAD | Identifying a function template being specialized | ? | |
| 286 | CD1 | Incorrect example in partial specialization | ? | |
| 287 | drafting | Order dependencies in template instantiation | - | |
| 288 | CD1 | Misuse of "static type" in describing pointers | ? | |
| 289 | CD1 | Incomplete list of contexts requiring a complete type | ? | |
| 290 | NAD | Should memcpy be allowed into a POD with a const member? | ? | |
| 291 | CD1 | Overload resolution needed when binding reference to class rvalue | ? | |
| 292 | CD3 | Deallocation on exception in new before arguments evaluated |
? | |
| 293 | open | Syntax of explicit instantiation/specialization too permissive | - | |
| 294 | NAD | Can static_cast drop exception specifications? |
? | |
| 295 | CD1 | cv-qualifiers on function types | ? | |
| 296 | CD1 | Can conversion functions be static? | Yes | |
| 297 | NAD | Which template does an explicit specialization specialize? | N/A | |
| 298 | CD1 | T::x when T is cv-qualified |
? | |
| 299 | CD1 | Conversion on array bound expression in new |
? | |
| 300 | CD1 | References to functions in template argument deduction | ? | |
| 301 | CD1 | Syntax for template-name | ? | |
| 302 | CD1 | Value-initialization and generation of default constructor | ? | |
| 303 | NAD | Integral promotions on bit-fields | ? | |
| 304 | TC1 | Value-initialization of a reference | ? | |
| 305 | CD1 | Name lookup in destructor call | ? | |
| 306 | CD1 | Ambiguity by class name injection | ? | |
| 307 | NAD | Initialization of a virtual base class subobject | ? | |
| 308 | NAD | Catching exceptions with ambiguous base classes | ? | |
| 309 | CD1 | Linkage of entities whose names are not simply identifiers, in introduction | ? | |
| 310 | open | Can function templates differing only in parameter cv-qualifiers be overloaded? | - | |
| 311 | NAD | Using qualified name to reopen nested namespace | ? | |
| 312 | CD3 | "use" of invalid pointer value not defined | ? | |
| 313 | dup | Class with single conversion function to integral as array size in new |
? | |
| 314 | C++17 | template in base class specifier |
Yes | resolved by CWG 1710 |
| 315 | NAD | Is call of static member function through null pointer undefined? | ? | |
| 316 | NAD | Injected-class-name of template used as template template parameter | ? | |
| 317 | CD1 | Can a function be declared inline after it has been called? | No | PR66995 |
| 318 | CD1 | struct A::A should not name the constructor of A |
? | |
| 319 | CD1 | Use of names without linkage in declaring entities with linkage | ? | |
| 320 | CD1 | Question on copy constructor elision example | ? | |
| 321 | dup | Associated classes and namespaces for argument-dependent lookup | ? | |
| 322 | CD1 | Deduction of reference conversions | ? | |
| 323 | CD1 | Where must export appear? |
? | |
| 324 | CD1 | Can "&" be applied to assignment to bit-field? |
? | |
| 325 | drafting | When are default arguments parsed? | - | PR57 |
| 326 | CD1 | Wording for definition of trivial constructor | ? | |
| 327 | CD1 | Use of "structure" without definition | ? | |
| 328 | CD1 | Missing requirement that class member types be complete | ? | |
| 329 | CD1 | Evaluation of friends of templates | ? | |
| 330 | CD4 | Qualification conversions and pointers to arrays of pointers | 10 | PR88128 |
| 331 | CD1 | Allowed copy constructor signatures | ? | |
| 332 | CD3 | cv-qualified void parameter types |
? | |
| 333 | NAD | Ambiguous use of "declaration" in disambiguation section | ? | |
| 334 | NAD | Is a comma-expression dependent if its first operand is? | ? | |
| 335 | CD1 | Allowing export on template members of nontemplate classes |
? | |
| 336 | CD1 | Explicit specialization examples are still incorrect | ? | |
| 337 | CD1 | Attempt to create array of abstract type should cause deduction to fail | ? | |
| 338 | CD6 | Enumerator name with linkage used as class name in other translation unit | ? | |
| 339 | CD1 | Overload resolution in operand of sizeof in constant expression |
? | |
| 340 | NAD | Unclear wording in disambiguation section | ? | |
| 341 | C++11 | extern "C" namespace member function versus global variable |
? | |
| 342 | CD3 | Terminology: "indirection" versus "dereference" | ? | |
| 343 | C++17 | Make template optional in contexts that require a type |
Yes | resolved by CWG 1710 |
| 344 | CD3 | Naming destructors | ? | |
| 345 | CD1 | Misleading comment on example in templates chapter | ? | |
| 346 | NAD | Typo in 15.4 | N/A | |
| 347 | NAD | Use of derived class name in defining base class nested class | ? | |
| 348 | CD1 | delete and user-written deallocation functions |
? | |
| 349 | CD1 | Template argument deduction for conversion functions and qualification conversions | ? | |
| 350 | open | signed char underlying representation for objects |
- | |
| 351 | CD1 | Sequence point error: unspecified or undefined? | ? | |
| 352 | CD1 | Nondeduced contexts | ? | |
| 353 | CD1 | Is deallocation routine called if destructor throws exception in delete? | ? | |
| 354 | CD1 | Null as nontype template argument | ? | |
| 355 | C++11 | Global-scope :: in nested-name-specifier |
No | PR66892 |
| 356 | NAD | Wording of behavior of generated copy constructor for scalar members | ? | |
| 357 | CD1 | Definition of signature should include name | ? | |
| 358 | NAD | Namespaces and extern "C" | ? | |
| 359 | NAD | Type definition in anonymous union | ? | |
| 360 | CD6 | Using-declaration that reduces access | ? | |
| 361 | open | Forward reference to default argument | - | |
| 362 | CD1 | Order of initialization in instantiation units | ? | |
| 363 | NAD | Initialization of class from self | ? | |
| 364 | CD1 | Calling overloaded function with static in set, with no object | ? | |
| 365 | open | Storage duration and temporaries | - | |
| 366 | CD1 | String literal allowed in integral constant expression? | ? | |
| 367 | CD1 | throw operator allowed in constant expression? |
? | |
| 368 | CD1 | Uses of non-type parameters that should cause deduction to fail | ? | |
| 369 | drafting | Are new/delete identifiers or preprocessing-op-or-punc? |
- | |
| 370 | CD1 | Can #include <...> form be used other than for standard C++ headers? |
? | |
| 371 | open | Interleaving of constructor calls | - | |
| 372 | CD1 | Is access granted by base class specifiers available in following base class specifiers? | ? | |
| 373 | C++11 | Lookup on namespace qualified name in using-directive | ? | |
| 374 | CD2 | Can explicit specialization outside namespace use qualified name? | ? | |
| 375 | dup | Confusing example on lookup with typename |
? | |
| 376 | NAD | Class "definition" versus class "declaration" | ? | |
| 377 | CD1 | Enum whose enumerators will not fit in any integral type | ? | |
| 378 | CD1 | Wording that says temporaries are declared | ? | |
| 379 | CD1 | Change "class declaration" to "class definition" | ? | |
| 380 | open | Definition of "ambiguous base class" missing | - | |
| 381 | CD1 | Incorrect example of base class member lookup | ? | |
| 382 | CD1 | Allow typename outside of templates |
? | |
| 383 | CD1 | Is a class with a declared but not defined destructor a POD? | ? | |
| 384 | NAD | Argument-dependent lookup and operator functions | ? | |
| 385 | CD1 | How does protected member check of 11.5 interact with using-declarations? | ? | |
| 386 | CD6 | Friend declaration of name brought in by using-declaration | ? | |
| 387 | CD1 | Errors in example in 14.6.5 | ? | |
| 388 | CD3 | Catching base*& from a throw of derived* |
? | |
| 389 | CD1 | Unnamed types in entities with linkage | ? | |
| 390 | CD1 | Pure virtual must be defined when implicitly called | ? | |
| 391 | CD1 | Require direct binding of short-lived references to rvalues | ? | |
| 392 | CD1 | Use of full expression lvalue before temporary destruction | ? | |
| 393 | CD4 | Pointer to array of unknown bound in template argument list in parameter | 8 | |
| 394 | CD1 | identifier-list is never defined | ? | |
| 395 | NAD | Conversion operator template syntax | ? | |
| 396 | CD1 | Misleading note regarding use of auto for disambiguation |
? | |
| 397 | CD1 | Same address for string literals from default arguments in inline functions? | ? | PR12056 |
| 398 | CD1 | Ambiguous wording on naming a type in deduction | ? | |
| 399 | CD6 | Destructor lookup redux | ? | PR28985, PR12228 |
| 400 | CD1 | Using-declarations and the "struct hack" | ? | |
| 401 | CD1 | When is access for template parameter default arguments checked? | ? | |
| 402 | open | More on partial ordering of function templates | - | |
| 403 | CD1 | Reference to a type as a template-id | ? | |
| 404 | CD1 | Unclear reference to construction with non-trivial constructor | ? | |
| 405 | CD6 | Unqualified function name lookup | ? | |
| 406 | CD1 | Static data member in class with name for linkage purposes | ? | |
| 407 | C++11 | Named class with associated typedef: two names or one? | ? | PR19538 |
| 408 | CD2 | sizeof applied to unknown-bound array static data member of template | ? | |
| 409 | CD1 | Obsolete paragraph missed by changes for issue 224 | ? | |
| 410 | CD1 | Paragraph missed in changes for issue 166 | ? | |
| 411 | CD6 | Use of universal-character-name in character versus string literals | ? | |
| 412 | NAD | Can a replacement allocation function be inline? | N/A | |
| 413 | CD1 | Definition of "empty class" | ? | |
| 414 | CD1 | Multiple types found on destructor lookup | ? | |
| 415 | CD1 | Template deduction does not cause instantiation | ? | |
| 416 | CD1 | Class must be complete to allow operator lookup? | ? | |
| 417 | CD1 | Using derived-class qualified name in out-of-class nested class definition | ? | |
| 418 | CD6 | Imperfect wording on error on multiple default arguments on a called function | ? | |
| 419 | open | Can cast to virtual base class be done on partially-constructed object? | - | |
| 420 | CD1 | postfixexpression->scalar_type_dtor() inconsistent | ? | |
| 421 | CD1 | Is rvalue.field an rvalue? | Yes | |
| 422 | NAD | Is a typedef redeclaration allowed with a template type that might be the same? | ? | |
| 423 | NAD | Can a conversion be done on the left operand of a compound assignment? | ? | |
| 424 | CD1 | Wording problem with issue 56 resolution on redeclaring typedefs in class scope | ? | |
| 425 | CD1 | Set of candidates for overloaded built-in operator with float operand | ? | |
| 426 | C++17 | Identically-named variables, one internally and one externally linked, allowed? | ? | PR14769 |
| 427 | CD1 | static_cast ambiguity: conversion versus cast to derived |
? | |
| 428 | CD1 | Mention of expression with reference type | ? | |
| 429 | CD1 | Matching deallocation function chosen based on syntax or signature? | ? | |
| 430 | CD1 | Ordering of expression evaluation in initializer list | ? | |
| 431 | C++11 | Defect in wording in 14.2 | ? | |
| 432 | CD1 | Is injected class name visible in base class specifier list? | ? | |
| 433 | CD1 | Do elaborated type specifiers in templates inject into enclosing namespace scope? | ? | |
| 434 | NAD | Unclear suppression of standard conversions while binding reference to lvalue | ? | |
| 435 | NAD | Change "declararation or definition" to "declaration" | ? | |
| 436 | CD1 | Problem in example in 9.6 paragraph 4 | ? | |
| 437 | CD1 | Is type of class allowed in member function exception specification? | ? | |
| 438 | CD2 | Possible flaw in wording for multiple accesses to object between sequence points | ? | |
| 439 | CD1 | Guarantees on casting pointer back to cv-qualified version of original type | ? | |
| 440 | NAD | Allow implicit pointer-to-member conversion on nontype template argument | N/A | |
| 441 | CD1 | Ordering of static reference initialization | ? | |
| 442 | CD1 | Incorrect use of null pointer constant in description of delete operator | ? | |
| 443 | CD1 | Wording nit in description of lifetime of temporaries | ? | |
| 444 | NAD | Overriding and the generated copy assignment operator | ? | |
| 445 | NAD | Wording issue on friend declarations | ? | |
| 446 | CD1 | Does an lvalue-to-rvalue conversion on the "?" operator produce a temporary? | ? | |
| 447 | CD1 | Is offsetof type-dependent? | Yes | |
| 448 | C++11 | Set of template functions in call with dependent explicit argument | ? | |
| 449 | NAD | Consistency in use of hyphen with names of "non" entities | ? | |
| 450 | CD1 | Binding a reference to const to a cv-qualified array rvalue | ? | |
| 451 | CD1 | Expressions with invalid results and ill-formedness | ? | |
| 452 | CD1 | Wording nit on description of this |
? | |
| 453 | DR | References may only bind to "valid" objects | ? | |
| 454 | CD1 | When is a definition of a static data member required? | ? | |
| 455 | NAD | Partial ordering and non-deduced arguments | N/A | |
| 456 | NAD | Is initialized const int or const bool variable a null pointer constant? | ? | |
| 457 | CD1 | Wording nit on use of const variables in constant expressions | ? | |
| 458 | C++11 | Hiding of member template parameters by other members | No | PR96138 |
| 459 | NAD | Hiding of template parameters by base class members | N/A | |
| 460 | CD1 | Can a using-declaration name a namespace? | Yes | |
| 461 | NAD | Make asm conditionally-supported |
N/A | |
| 462 | CD3 | Lifetime of temporaries bound to comma expressions | ? | |
| 463 | CD1 | reinterpret_cast<T*>(0) |
? | |
| 464 | CD1 | Wording nit on lifetime of temporaries to which references are bound | ? | |
| 465 | NAD | May constructors of global objects call exit()? |
? | |
| 466 | CD1 | cv-qualifiers on pseudo-destructor type | ? | |
| 467 | NAD | Jump past initialization of local static variable | ? | |
| 468 | CD1 | Allow ::template outside of templates |
? | |
| 469 | NAD | Const template specializations and reference arguments | ? | |
| 470 | CD1 | Instantiation of members of an explicitly-instantiated class template | ? | |
| 471 | NAD | Conflicting inherited access specifications | ? | |
| 472 | drafting | Casting across protected inheritance | - | |
| 473 | NAD | Block-scope declarations of allocator functions | N/A | |
| 474 | CD1 | Block-scope extern declarations in namespace members |
? | |
| 475 | C++11 | When is std::uncaught_exception() true? (take 2) |
? | |
| 476 | CD5 | Determining the buffer size for placement new | ? | |
| 477 | CD1 | Can virtual appear in a friend declaration? |
Yes | |
| 478 | NAD | May a function parameter be an array of an abstract class type? | ? | |
| 479 | CD1 | Copy elision in exception handling | ? | |
| 480 | CD1 | Is a base of a virtual base also virtual? | ? | |
| 481 | CD2 | Scope of template parameters | ? | |
| 482 | CD3 | Qualified declarators in redeclarations | No | PR64267 |
| 483 | CD3 | Normative requirements on integral ranges | ? | |
| 484 | CD1 | Can a base-specifier name a cv-qualified class type? | ? | |
| 485 | CD1 | What is a "name"? | ? | |
| 486 | CD1 | Invalid return types and template argument deduction | ? | |
| 487 | NAD | Operator overloading in constant expressions | ? | |
| 488 | CD1 | Local types, overload resolution, and template argument deduction | ? | |
| 489 | NAD | Must member function templates be instantiated during overload resolution? | ? | |
| 490 | CD2 | Name lookup in friend declarations | ? | |
| 491 | CD1 | Initializers for empty-class aggregrate members | ? | |
| 492 | CD1 | typeid constness inconsistent with example |
? | |
| 493 | CD2 | Type deduction from a bool context |
? | |
| 494 | CD1 | Problems with the resolution of issue 45 | ? | |
| 495 | CD2 | Overload resolution with template and non-template conversion functions | ? | |
| 496 | CD3 | Is a volatile-qualified type really a POD? | ? | |
| 497 | CD1 | Missing required initialization in example | ? | |
| 498 | open | Storage class specifiers in definitions of class members | - | |
| 499 | CD2 | Throwing an array of unknown size | ? | |
| 500 | CD1 | Access in base-specifiers of friend and nested classes | ? | |
| 501 | NAD | Visibility of friend declarations within the befriending class | ? | |
| 502 | C++11 | Dependency of nested enumerations and enumerators | ? | PR31584 |
| 503 | open | Cv-qualified function types in template argument deduction | - | |
| 504 | NAD | Should use of a variable in its own initializer require a diagnostic? | ? | PR18635 |
| 505 | CD1 | Conditionally-supported behavior for unknown character escapes | ? | |
| 506 | CD1 | Conditionally-supported behavior for non-POD objects passed to ellipsis | ? | |
| 507 | dup | Ambiguity assigning class object to built-in type | ? | |
| 508 | C++11 | Non-constructed value-initialized objects | ? | |
| 509 | CD1 | Dead code in the specification of default initialization | ? | |
| 510 | CD1 | Default initialization of POD classes? | ? | |
| 511 | open | POD-structs with template assignment operators | - | |
| 512 | NAD | Union members with user-declared non-default constructors | ? | |
| 513 | CD1 | Non-class "most-derived" objects | ? | |
| 514 | CD1 | Is the initializer for a namespace member in the scope of the namespace? | ? | |
| 515 | CD1 | Non-dependent references to base class members | ? | |
| 516 | CD1 | Use of signed in bit-field declarations |
? | |
| 517 | CD1 | Partial specialization following explicit instantiation | ? | |
| 518 | CD1 | Trailing comma following enumerator-list | ? | |
| 519 | CD1 | Null pointer preservation in void* conversions |
? | |
| 520 | CD1 | Old-style casts between incomplete class types | ? | |
| 521 | CD1 | Requirements for exceptions thrown by allocation functions | ? | |
| 522 | CD1 | Array-to-pointer decay in template argument deduction | ? | |
| 523 | open | Can a one-past-the-end pointer be invalidated by deleting an adjacent object? | - | |
| 524 | CD1 | Can function-notation calls to operator functions be dependent? | ? | |
| 525 | CD1 | Missing * in example |
? | |
| 526 | CD1 | Confusing aspects in the specification of non-deduced contexts | ? | |
| 527 | CD2 | Problems with linkage of types | ? | |
| 528 | NAD | Why are incomplete class types not allowed with typeid? |
N/A | |
| 529 | drafting | Use of template<> with "explicitly-specialized" class templates |
- | |
| 530 | CD1 | Nontype template arguments in constant expressions | ? | |
| 531 | C++11 | Defining members of explicit specializations | ? | |
| 532 | C++11 | Member/nonmember operator template partial ordering | 14 | |
| 533 | NAD | Special treatment for C-style header names | ? | |
| 534 | CD1 | template-names and operator-function-ids | ? | |
| 535 | CD3 | Copy construction without a copy constructor | ? | PR62227 |
| 536 | CD6 | Problems in the description of id-expressions | ? | |
| 537 | CD1 | Definition of "signature" | ? | |
| 538 | CD1 | Definition and usage | ? | |
| 539 | CD3 | Constraints on type-specifier-seq | ? | |
| 540 | CD1 | Propagation of cv-qualifiers in reference-to-reference collapse | ? | |
| 541 | CD2 | Dependent function types | ? | |
| 542 | CD2 | Value initialization of arrays of POD-structs | ? | |
| 543 | CD1 | Value initialization and default constructors | ? | |
| 544 | NAD | Base class lookup in explicit specialization | ? | |
| 545 | open | User-defined conversions and built-in operator overload resolution | - | |
| 546 | C++11 | Explicit instantiation of class template members | ? | |
| 547 | C++11 | Partial specialization on member function types | ? | |
| 548 | dup | qualified-ids in declarations | ? | |
| 549 | drafting | Non-deducible parameters in partial specializations | - | |
| 550 | dup | Pointer to array of unknown bound in parameter declarations | ? | |
| 551 | CD1 | When is inline permitted in an explicit instantiation? |
? | |
| 552 | NAD | Use of typename in the type in a non-type parameter-declaration |
? | |
| 553 | NAD | Problems with friend allocation and deallocation functions | ? | |
| 554 | CD6 | Definition of "declarative region" and "scope" | ? | |
| 555 | CD5 | Pseudo-destructor name lookup | ? | |
| 556 | CD2 | Conflicting requirements for acceptable aliasing | ? | |
| 557 | CD1 | Does argument-dependent lookup cause template instantiation? | ? | |
| 558 | CD1 | Excluded characters in universal character names | ? | |
| 559 | CD1 | Editing error in issue 382 resolution | ? | |
| 560 | NAD | Use of the typename keyword in return types |
N/A | |
| 561 | CD2 | Internal linkage functions in dependent name lookup | ? | |
| 562 | CD6 | qualified-ids in non-expression contexts | ? | |
| 563 | CD6 | Linkage specification for objects | ? | PR28389 |
| 564 | CD2 | Agreement of language linkage or linkage-specifications? | ? | |
| 565 | CD3 | Conflict rules for using-declarations naming function templates | ? | |
| 566 | NAD | Conversion of negative floating point values to integer type | N/A | |
| 567 | NAD | Can size_t and ptrdiff_t be larger than long? |
? | |
| 568 | CD1 | Definition of POD is too strict | ? | |
| 569 | CD2 | Spurious semicolons at namespace scope should be allowed | No | PR113760 |
| 570 | CD2 | Are references subject to the ODR? | ? | |
| 571 | CD2 | References declared const |
? | |
| 572 | C++11 | Standard conversions for non-built-in types | ? | |
| 573 | C++11 | Conversions between function pointers and void* |
? | |
| 574 | NAD | Definition of "copy assignment operator" | ? | |
| 575 | C++11 | Criteria for deduction failure | ? | |
| 576 | CD2 | Typedefs in function definitions | ? | |
| 577 | CD3 | void in an empty parameter list |
? | |
| 578 | CD6 | Phase 1 replacement of characters with universal-character-names | ? | |
| 579 | open | What is a "nested" > or >>? |
- | |
| 580 | C++11 | Access in template-parameters of member and friend definitions | No | PR56248 |
| 581 | CD5 | Can a templated constructor be explicitly instantiated or specialized? | ? | |
| 582 | CD1 | Template conversion functions | ? | |
| 583 | CD3 | Relational pointer comparisons against the null pointer constant | 11 | |
| 584 | NAD | Unions and aliasing | N/A | |
| 585 | NAD | Friend template template parameters | ? | |
| 586 | NAD | Default template-arguments and template argument deduction | ? | |
| 587 | CD2 | Lvalue operands of a conditional expression differing only in cv-qualification | ? | PR51317 |
| 588 | CD2 | Searching dependent bases of classes local to function templates | ? | |
| 589 | CD2 | Direct binding of class and array rvalues in reference initialization | ? | |
| 590 | C++11 | Nested classes and the "current instantiation" | ? | |
| 591 | CD4 | When a dependent base class is the current instantiation | ? | |
| 592 | CD1 | Exceptions during construction of local static objects | ? | |
| 593 | NAD | Falling off the end of a destructor's function-try-block handler | ? | |
| 594 | CD1 | Coordinating issues 119 and 404 with delegating constructors | ? | |
| 595 | dup | Exception specifications in templates instantiated from class bodies | ? | |
| 596 | NAD | Replacing an exception object | ? | |
| 597 | CD3 | Conversions applied to out-of-lifetime non-POD lvalues | ? | |
| 598 | CD2 | Associated namespaces of overloaded functions and function templates | ? | |
| 599 | CD2 | Deleting a null function pointer | ? | |
| 600 | CD6 | Does access control apply to members or to names? | ? | |
| 601 | CD2 | Type of literals in preprocessing expressions | ? | |
| 602 | C++11 | When is the injected-class-name of a class template a template? | ? | |
| 603 | CD1 | Type equivalence and unsigned overflow | ? | |
| 604 | CD2 | Argument list for overload resolution in copy-initialization | ? | |
| 605 | C++11 | Linkage of explicit specializations | ? | |
| 606 | CD1 | Template argument deduction for rvalue references | ? | |
| 607 | CD6 | Lookup of mem-initializer-ids | ? | |
| 608 | CD2 | Determining the final overrider of a virtual function | ? | |
| 609 | CD4 | What is a "top-level" cv-qualifier? | ? | |
| 610 | NAD | Computing the negative of 0U |
? | |
| 611 | CD2 | Zero-initializing references | ? | |
| 612 | CD2 | Requirements on a conforming implementation | ? | |
| 613 | CD1 | Unevaluated uses of non-static class members | ? | |
| 614 | CD1 | Results of integer / and % |
? | |
| 615 | C++11 | Incorrect description of variables that can be initialized | ? | |
| 616 | CD3 | Definition of "indeterminate value" | 9 | PR67853 |
| 617 | NAD | Lvalue-to-rvalue conversions of uninitialized char objects |
N/A | |
| 618 | CD2 | Casts in preprocessor conditional expressions | ? | |
| 619 | C++11 | Completeness of array types | ? | |
| 620 | CD1 | Declaration order in layout-compatible POD structs | ? | |
| 621 | C++11 | Template argument deduction from function return types | ? | |
| 622 | NAD | Relational comparisons of arbitrary pointers | ? | |
| 623 | CD3 | Use of pointers to deallocated storage | ? | |
| 624 | CD1 | Overflow in calculating size of allocation | ? | |
| 625 | CD2 | Use of auto as a template-argument |
11 | PR97479 |
| 626 | CD2 | Preprocessor string literals | ? | |
| 627 | NAD | Values behaving as types | ? | |
| 628 | CD2 | The values of an enumeration with no enumerator | ? | |
| 629 | CD1 | auto parsing ambiguity |
? | |
| 630 | CD2 | Equality of narrow and wide character values in the basic character set | ? | |
| 631 | CD3 | Jumping into a "then" clause | ? | |
| 632 | CD1 | Brace-enclosed initializer for scalar member of aggregate | ? | |
| 633 | CD2 | Specifications for variables that should also apply to references | ? | |
| 634 | CD1 | Conditionally-supported behavior for non-POD objects passed to ellipsis redux | ? | |
| 635 | NAD | Names of constructors and destructors of templates | ? | |
| 636 | CD4 | Dynamic type of objects and aliasing | ? | |
| 637 | CD1 | Sequencing rules and example disagree | ? | |
| 638 | CD2 | Explicit specialization and friendship | ? | |
| 639 | CD1 | What makes side effects "different" from one another? | ? | |
| 640 | NAD | Accessing destroyed local objects of static storage duration | N/A | |
| 641 | CD2 | Overload resolution and conversion-to-same-type operators | ? | |
| 642 | CD2 | Definition and use of "block scope" and "local scope" | ? | |
| 643 | NAD | Use of decltype in a class member-specification |
? | |
| 644 | CD1 | Should a trivial class type be a literal type? | ? | |
| 645 | CD2 | Are bit-field and non-bit-field members layout compatible? | ? | |
| 646 | NAD | Can a class with a constexpr copy constructor be a literal type? | ? | |
| 647 | CD1 | Non-constexpr instances of constexpr constructor templates | ? | |
| 648 | CD1 | Constant expressions in constexpr initializers | ? | |
| 649 | CD1 | Optionally ill-formed extended alignment requests | ? | |
| 650 | CD2 | Order of destruction for temporaries bound to the returned value of a function | ? | |
| 651 | CD1 | Problems in decltype specification and examples |
? | |
| 652 | CD2 | Compile-time evaluation of floating-point expressions | ? | |
| 653 | CD2 | Copy assignment of unions | ? | |
| 654 | CD1 | Conversions to and from nullptr_t |
? | |
| 655 | C++11 | Initialization not specified for forwarding constructors | ? | |
| 656 | CD2 | Direct binding to the result of a conversion operator | ? | |
| 657 | CD2 | Abstract class parameter in synthesized declaration | ? | |
| 658 | CD2 | Defining reinterpret_cast for pointer types |
? | |
| 659 | CD1 | Alignment of function types | ? | |
| 660 | CD1 | Unnamed scoped enumerations | ? | |
| 661 | CD1 | Semantics of arithmetic comparisons | ? | |
| 662 | NAD | Forming a pointer to a reference type | ? | |
| 663 | CD1 | Valid Cyrillic identifier characters | ? | |
| 664 | CD2 | Direct binding of references to non-class rvalue references | ? | |
| 665 | CD2 | Problems in the specification of dynamic_cast |
? | |
| 666 | CD1 | Dependent qualified-ids without the typename keyword |
? | |
| 667 | CD2 | Trivial special member functions that cannot be implicitly defined | ? | |
| 668 | CD2 | Throwing an exception from the destructor of a local static object | ? | |
| 669 | NAD | Confusing specification of the meaning of decltype |
? | |
| 670 | CD4 | Copy initialization via derived-to-base conversion in the second step | ? | |
| 671 | CD1 | Explicit conversion from a scoped enumeration type to integral type | ? | |
| 672 | CD2 | Sequencing of initialization in new-expressions | ? | |
| 673 | NAD | Injection of names from elaborated-type-specifiers in friend declarations |
? | |
| 674 | C++11 | "matching specialization" for a friend declaration | ? | |
| 675 | CD3 | Signedness of bit-field with typedef or template parameter type | ? | |
| 676 | C++11 | static_assert-declarations and general requirements for declarations | ? | |
| 677 | CD1 | Deleted operator delete and virtual destructors |
? | |
| 678 | C++11 | Language linkage of member function parameter types and the ODR | ? | |
| 679 | CD1 | Equivalence of template-ids and operator function templates | ? | |
| 680 | CD2 | What is a move constructor? | ? | |
| 681 | CD1 | Restrictions on declarators with late-specified return types | ? | |
| 682 | CD5 | Missing description of lookup of template aliases | ? | |
| 683 | CD1 | Requirements for trivial subobject special functions | ? | |
| 684 | CD1 | Constant expressions involving the address of an automatic variable | ? | |
| 685 | CD2 | Integral promotion of enumeration ignores fixed underlying type | Yes | |
| 686 | CD1 | Type declarations/definitions in type-specifier-seqs and type-ids | ? | |
| 687 | NAD | template keyword with unqualified-ids |
? | |
| 688 | CD1 | Constexpr constructors and static initialization | ? | |
| 689 | CD5 | Maximum values of signed and unsigned integers | - | |
| 690 | CD2 | The dynamic type of an rvalue reference | ? | |
| 691 | C++11 | Template parameter packs in class template partial specializations | ? | |
| 692 | C++11 | Partial ordering of variadic class template partial specializations | ? | |
| 693 | CD2 | New string types and deprecated conversion | ? | |
| 694 | C++11 | Zero- and value-initialization of union objects | ? | |
| 695 | CD2 | Compile-time calculation errors in constexpr functions | ? | |
| 696 | C++11 | Use of block-scope constants in local classes | ? | PR79104 |
| 697 | open | Deduction rules apply to more than functions | - | |
| 698 | open | The definition of "sequenced before" is too narrow | - | |
| 699 | CD2 | Must constexpr member functions be defined in the class member-specification? | ? | |
| 700 | C++11 | Constexpr member functions of class templates | ? | |
| 701 | CD2 | When is the array-to-pointer conversion applied? | ? | |
| 702 | CD2 | Preferring conversion to std::initializer_list |
? | |
| 703 | CD2 | Narrowing for literals that cannot be exactly represented | ? | |
| 704 | CD2 | To which postfix-expressions does overload resolution apply? | ? | |
| 705 | CD2 | Suppressing argument-dependent lookup via parentheses | Yes | |
| 706 | NAD | Use of auto with rvalue references |
? | |
| 707 | CD2 | Undefined behavior in integral-to-floating conversions | ? | |
| 708 | open | Partial specialization of member templates of class templates | - | |
| 709 | C++11 | Enumeration names as nested-name-specifiers in deduction failure | ? | |
| 710 | CD2 | Data races during construction | ? | |
| 711 | CD2 | auto with braced-init-list |
? | |
| 712 | CD3 | Are integer constant operands of a conditional-expression "used?" | ? | |
| 713 | CD2 | Unclear note about cv-qualified function types | ? | |
| 714 | CD2 | Static const data members and braced-init-lists | ? | |
| 715 | CD2 | Class member access constant expressions | ? | |
| 716 | CD2 | Specifications that should apply only to non-static union data members | ? | |
| 717 | CD2 | Unintentional restrictions on the use of thread_local |
? | |
| 718 | NAD | Non-class, non-function friend declarations | N/A | |
| 719 | CD2 | Specifications for operator-function-id that should also apply to literal-operator-id | ? | |
| 720 | CD2 | Need examples of lambda-expressions | ? | |
| 721 | CD2 | Where must a variable be initialized to be used in a constant expression? | ? | |
| 722 | CD2 | Can nullptr be passed to an ellipsis? |
? | |
| 723 | concepts | Archetypes in skipped declarations | ? | |
| 724 | concepts | Qualified name lookup in a constrained context | ? | |
| 725 | concepts | When should the requirement for std::Returnable<T>, etc., apply? |
? | |
| 726 | CD2 | Atomic and non-atomic objects in the memory model | ? | |
| 727 | C++17 | In-class explicit specializations | No | PR85282 |
| 728 | NAD | Restrictions on local classes | ? | |
| 729 | CD3 | Qualification conversions and handlers of reference-to-pointer type | ? | |
| 730 | CD2 | Explicit specializations of members of non-template classes | ? | |
| 731 | CD2 | Omitted reference qualification of member function type | ? | |
| 732 | CD2 | Late-specified return types in function definitions | ? | |
| 733 | NAD | Reference qualification of copy assignment operators | ? | |
| 734 | CD2 | Are unique addresses required for namespace-scope variables? | ? | |
| 735 | CD2 | Missing case in specification of safely-derived pointers | ? | |
| 736 | NAD | Is the & ref-qualifier needed? |
? | |
| 737 | CD2 | Uninitialized trailing characters in string initialization | ? | |
| 738 | C++11 | constexpr not permitted by the syntax of constructor declarations |
? | |
| 739 | CD3 | Signedness of plain bit-fields | ? | |
| 740 | CD2 | Incorrect note on data races | ? | |
| 741 | C++11 | "plain" long long bit-fields |
? | |
| 742 | open | Postfix increment/decrement with long bit-field operands | - | |
| 743 | CD2 | Use of decltype in a nested-name-specifier |
? | |
| 744 | CD2 | Matching template arguments with template template parameters with parameter packs | ? | |
| 745 | C++23 | Effect of ill-formedness resulting from #error |
? | |
| 746 | CD2 | Use of auto in new-expressions |
? | |
| 747 | dup | Access of protected base classes | ? | |
| 748 | concepts | Always-complete archetypes | ? | |
| 749 | CD2 | References to function types with a cv-qualifier or ref-qualifier | ? | |
| 750 | CD2 | Implementation constraints on reference-only closure objects | ? | |
| 751 | CD2 | Deriving from closure classes | ? | |
| 752 | CD2 | Name lookup in nested lambda-expressions | ? | |
| 753 | CD2 | Array names in lambda capture sets | ? | |
| 754 | CD2 | Lambda expressions in default arguments of block-scope function declarations | ? | |
| 755 | CD3 | Generalized lambda-captures | ? | |
| 756 | CD2 | Dropping cv-qualification on members of closure objects | ? | |
| 757 | CD2 | Types without linkage in declarations | ? | |
| 758 | C++11 | Missing cases of declarations that are not definitions | ? | |
| 759 | CD2 | Destruction of closure objects | ? | |
| 760 | CD2 | this inside a nested class of a non-static member function |
? | |
| 761 | CD2 | Inferred return type of closure object call operator | ? | |
| 762 | CD2 | Name lookup in the compound-statement of a lambda expression | ? | |
| 763 | CD2 | Is a closure object's operator() inline? |
? | |
| 764 | CD2 | Capturing unused variables in a lambda expression | ? | |
| 765 | CD2 | Local types in inline functions with external linkage | ? | |
| 766 | CD2 | Where may lambda expressions appear? | ? | |
| 767 | CD2 | void and other unnamed lambda-parameters |
? | |
| 768 | CD2 | Ellipsis in a lambda parameter list | ? | |
| 769 | CD2 | Initialization of closure objects | ? | |
| 770 | CD2 | Ambiguity in late-specified return type | ? | |
| 771 | CD2 | Move-construction of reference members of closure objects | ? | |
| 772 | CD2 | capture-default in lambdas in local default arguments | ? | |
| 773 | C++11 | Parentheses in address non-type template arguments | ? | |
| 774 | CD2 | Can a closure class be a POD? | ? | |
| 775 | CD2 | Capturing references to functions | ? | |
| 776 | CD2 | Delegating constructors, destructors, and std::exit |
? | |
| 777 | CD2 | Default arguments and parameter packs | ? | |
| 778 | C++11 | Template parameter packs in non-type template parameters | ? | |
| 779 | CD2 | Rvalue reference members of closure objects? | ? | |
| 780 | concepts | Questions regarding the point of definition of a concept map | ? | |
| 781 | concepts | Missing requirement in constrained function example | ? | |
| 782 | CD2 | Lambda expressions and argument-dependent lookup | ? | |
| 783 | open | Definition of "argument" | - | |
| 784 | C++11 | List of incompatibilities with the previous Standard | ? | |
| 785 | CD2 | "Execution sequence" is inappropriate phraseology | ? | |
| 786 | CD2 | Definition of "thread" | ? | |
| 787 | CD2 | Unnecessary lexical undefined behavior | ? | |
| 788 | CD2 | Relationship between locale and values of the execution character set | ? | |
| 789 | CD2 | Deprecating trigraphs | ? | |
| 790 | CD2 | Concatenation of raw and non-raw string literals | ? | |
| 791 | concepts | Linkage of concept names | ? | |
| 792 | CD2 | Effects of std::quick_exit |
? | |
| 793 | CD2 | Use of class members during destruction | ? | |
| 794 | NAD | Base-derived conversion in member type of pointer-to-member conversion | N/A | |
| 795 | NAD | Dependency of lambdas on <functional> |
N/A | |
| 796 | CD2 | Lifetime of a closure object with members captured by reference | ? | |
| 797 | CD2 | Converting a no-capture lambda to a function type | ? | |
| 798 | C++11 | Overloaded subscript operator described in clause 5 | ? | |
| 799 | CD2 | Can reinterpret_cast be used to cast an operand to its own type? |
? | |
| 800 | NAD | Safely-derived pointers and object pointers converted from function pointers | ? | |
| 801 | CD2 | Casting away constness in a cast to rvalue reference type | ? | |
| 802 | concepts | Problems with restrictions on taking the address of a member of a concept map | ? | |
| 803 | CD2 | sizeof an enumeration type with a fixed underlying type |
? | |
| 804 | CD2 | Deducing the type in new auto(x) |
? | |
| 805 | CD2 | Which exception to throw for overflow in array size calculation | ? | |
| 806 | CD2 | Enumeration types in integral constant expressions | ? | |
| 807 | NAD | typeid expressions in constant expressions |
? | |
| 808 | CD2 | Non-type decl-specifiers versus max-munch | ? | |
| 809 | CD2 | Deprecation of the register keyword |
? | |
| 810 | CD2 | Block-scope thread_local variables should be implicitly static |
? | |
| 811 | CD2 | Unclear implications of const-qualification | ? | |
| 812 | CD2 | Duplicate names in inline namespaces | ? | |
| 813 | open | typename in a using-declaration with a non-dependent name |
- | |
| 814 | CD2 | Attribute to indicate that a function throws nothing | ? | |
| 815 | CD2 | Parameter pack expansion inside attributes | ? | |
| 816 | CD2 | Diagnosing violations of [[final]] |
? | |
| 817 | CD2 | Meaning of [[final]] applied to a class definition |
? | |
| 818 | CD2 | Function parameter packs in non-final positions | ? | |
| 819 | NAD | Access control and deleted implicitly-declared special member functions | ? | |
| 820 | CD2 | Deprecation of export |
? | |
| 821 | concepts | Exported concept map templates? | ? | |
| 822 | NAD | Additional contexts for template aliases | ? | |
| 823 | CD2 | Literal types with constexpr conversions as non-type template arguments | ? | |
| 824 | concepts | Constrained special member functions | ? | |
| 825 | concepts | TriviallyCopyableType concept |
? | |
| 826 | concepts | Accept boolean constant expressions as constraints | ? | |
| 827 | concepts | Use of && as requirement separator |
? | |
| 828 | CD2 | Destruction of exception objects | ? | |
| 829 | NAD | At what point is std::unexpected called? |
? | |
| 830 | CD2 | Deprecating exception specifications | Yes | |
| 831 | CD2 | Limit on recursively nested template instantiations | ? | |
| 832 | CD2 | Value of preprocessing numbers | ? | |
| 833 | CD2 | Explicit conversion of a scoped enumeration value to a floating type | ? | |
| 834 | CD2 | What is an "ordinary string literal"? | ? | |
| 835 | CD2 | Scoped enumerations and the "usual arithmetic conversions" | ? | |
| 836 | NAD | [[noreturn]] applied to function types |
? | |
| 837 | C++11 | Constexpr functions and return braced-init-list |
? | |
| 838 | C++11 | Use of this in a brace-or-equal-initializer |
? | |
| 839 | dup | sizeof with opaque enumerations |
? | |
| 840 | CD2 | Rvalue references as nontype template parameters | ? | |
| 841 | concepts | Ill-formed concept refinement example | ? | |
| 842 | CD2 | Casting to rvalue reference type | ? | |
| 843 | concepts | Unclear interaction of constraints and special member functions | ? | |
| 844 | concepts | Is a constrained member function a template? | ? | |
| 845 | CD2 | What is the "first declaration" of an explicit specialization? | ? | |
| 846 | CD2 | Rvalue references to functions | ? | |
| 847 | CD2 | Error in rvalue reference deduction example | ? | |
| 848 | concepts | Unconstrained template template parameters in constrained contexts | ? | |
| 849 | concepts | Constraints and template template parameters | ? | |
| 850 | CD2 | Restrictions on use of non-static data members | ? | |
| 851 | concepts | Constraints and template aliases | ? | |
| 852 | CD6 | using-declarations and dependent base classes | ? | |
| 853 | CD2 | Support for relaxed pointer safety | ? | |
| 854 | CD2 | Left shift and unsigned extended types | ? | |
| 855 | CD2 | Incorrect comments in braced-init-list assignment example | ? | |
| 856 | concepts | Overlapping concept and requirements scopes | ? | |
| 857 | concepts | Implying requirements from enclosing scopes | ? | |
| 858 | CD2 | Example binding an rvalue reference to an lvalue | ? | |
| 859 | concepts | Incomplete comment in late_check example |
? | |
| 860 | C++11 | Explicit qualification of constexpr member functions | ? | |
| 861 | CD2 | Unintended ambiguity in inline namespace lookup | ? | |
| 862 | CD2 | Undefined behavior with enumerator value overflow | ? | |
| 863 | CD2 | Rvalue reference cast to incomplete type | ? | |
| 864 | C++11 | braced-init-list in the range-based for statement |
? | |
| 865 | CD2 | Initializing a std::initializer_list |
? | |
| 866 | concepts | Concept maps and the range-based for |
? | |
| 867 | concepts | Naming a specialization of a constrained template | ? | |
| 868 | concepts | Specifying a concept map in the name of a specialization | ? | |
| 869 | CD2 | Uninitialized thread_local objects |
? | |
| 870 | concepts | Context of expression when satisfying an associated function requirement | ? | |
| 871 | concepts | Satisfying associated functions with built-in operators | ? | |
| 872 | CD2 | Lexical issues with raw strings | ? | |
| 873 | C++11 | Deducing rvalue references in declarative contexts | ? | |
| 874 | CD2 | Class-scope definitions of enumeration types | ? | |
| 875 | concepts | Associated conversion functions converting to the same type | ? | |
| 876 | CD2 | Type references in rvalue reference deduction specification | ? | |
| 877 | CD2 | Viable functions and binding references to rvalues | ? | |
| 878 | concepts | Effective class types in built-in pointer-to-member operator | ? | |
| 879 | CD2 | Missing built-in comparison operators for pointer types | ? | PR68258 |
| 880 | CD2 | Built-in conditional operator for scoped enumerations | ? | |
| 881 | concepts | Inconsistent requirement for naming template parameters | ? | |
| 882 | CD2 | Defining main as deleted |
15 | PR116169 |
| 883 | CD2 | std::memcpy vs std::memmove |
? | |
| 884 | CD2 | Defining an explicitly-specialized static data member | ? | |
| 885 | NAD | Partial ordering of function templates with unordered parameter pairs | ? | |
| 886 | CD2 | Member initializers and aggregates | ? | |
| 887 | CD2 | Move construction of thrown object | ? | |
| 888 | CD2 | Union member initializers | ? | |
| 889 | concepts | Default implementations of associated functions | ? | |
| 890 | concepts | Missing requirement in example | ? | |
| 891 | CD2 | const_cast to rvalue reference from objectless rvalue |
? | |
| 892 | C++11 | Missing requirements for constexpr constructors | ? | |
| 893 | NAD | Brace syntax for enumerator-definitions | N/A | |
| 894 | concepts | Incorrect example for constrained overload resolution | ? | |
| 895 | concepts | Missing destructor requirements | ? | |
| 896 | CD2 | Rvalue references and rvalue-reference conversion functions | ? | |
| 897 | open | _Pragma and extended string-literals |
- | |
| 898 | C++11 | Declarations in constexpr functions | ? | |
| 899 | CD2 | Explicit conversion functions in direct class initialization | ? | |
| 900 | C++23 | Lifetime of temporaries in range-based for |
No | |
| 901 | drafting | Deleted operator delete |
- | |
| 902 | NAD | In-class initialization of non-constant static data members | ? | |
| 903 | CD3 | Value-dependent integral null pointer constants | ? | PR77712, PR52145 |
| 904 | CD2 | Parameter packs in lambda-captures | ? | |
| 905 | CD2 | Explicit defaulted copy constructors and trivial copyability | ? | |
| 906 | CD2 | Which special member functions can be defaulted? | ? | |
| 907 | concepts | Default types in requirements in auto concepts | ? | |
| 908 | CD2 | Deleted global allocation and deallocation functions | ? | |
| 909 | NAD | Old-style casts with conversion functions | No | PR77465 |
| 910 | CD2 | Move constructors and implicitly-declared copy constructors | ? | |
| 911 | concepts | late_check and concept map templates |
? | |
| 912 | CD3 | Character literals and universal-character-names | ? | |
| 913 | CD2 | Deduction rules for array- and function-type conversion functions | ? | |
| 914 | open | Value-initialization of array types | - | |
| 915 | CD2 | Deleted specializations of member function templates | ? | |
| 916 | concepts | Does a reference type have a destructor? | - | |
| 917 | concepts | Pointer conversions between archetypes | ? | |
| 918 | concepts | Declaration/expression ambiguity in associated function expressions | ? | |
| 919 | CD2 | Contradictions regarding inline namespaces | ? | |
| 920 | CD2 | Interaction of inline namespaces and using-declarations | ? | |
| 921 | CD2 | Unclear specification of inline namespaces | ? | |
| 922 | CD2 | Implicit default constructor definitions and const variant members |
? | |
| 923 | CD2 | Inline explicit specializations | ? | |
| 924 | C++11 | alias-declaration as a class member | ? | |
| 925 | open | Type of character literals in preprocessor expressions | - | |
| 926 | CD2 | Inline unnamed namespaces | ? | |
| 927 | CD2 | Implicitly-deleted default constructors and member initializers | ? | |
| 928 | CD2 | Defaulting a function that would be implicitly defined as deleted | ? | |
| 929 | CD2 | What is a template alias? | ? | |
| 930 | CD2 | alignof with incomplete array type |
? | |
| 931 | CD2 | Confusing reference to the length of a user-defined string literal | ? | |
| 932 | CD2 | UCNs in closing delimiters of raw string literals | ? | |
| 933 | CD2 | 32-bit UCNs with 16-bit wchar_t |
? | |
| 934 | CD2 | List-initialization of references | ? | |
| 935 | CD2 | Missing overloads for character types for user-defined literals | ? | |
| 936 | CD2 | Array initialization with new string literals | ? | |
| 937 | NAD | Restrictions on values of template arguments in user-defined literals | ? | |
| 938 | C++11 | Initializer lists and array new | ? | |
| 939 | CD2 | Explicitly checking virtual function overriding | ? | |
| 940 | CD2 | Global anonymous unions | ? | |
| 941 | C++11 | Explicit specialization of deleted function template | ? | |
| 942 | CD2 | Is this an entity? |
? | |
| 943 | CD5 | Is T() a temporary? |
? | |
| 944 | NAD | reinterpret_cast for all types with the same size and alignment |
? | |
| 945 | C++11 | Use of this in a late-specified return type |
? | |
| 946 | CD2 | Order of destruction of local static objects and calls to std::atexit |
? | |
| 947 | NAD | Deducing type template arguments from default function arguments | ? | |
| 948 | C++11 | constexpr in conditions |
? | |
| 949 | open | Requirements for freestanding implementations | - | |
| 950 | CD2 | Use of decltype as a class-name |
? | |
| 951 | CD2 | Problems with attribute-specifiers | ? | |
| 952 | CD6 | Insufficient description of "naming class" | ? | |
| 953 | CD2 | Rvalue references and function viability | ? | |
| 954 | open | Overload resolution of conversion operator templates with built-in types | - | |
| 955 | CD2 | Can a closure type's operator() be virtual? |
? | |
| 956 | CD2 | Function prototype scope with late-specified return types | ? | |
| 957 | CD2 | Alternative tokens and attribute-tokens | ? | |
| 958 | NAD | Lambdas and decltype |
N/A | |
| 959 | CD2 | Alignment attribute for class and enumeration types | ? | |
| 960 | CD2 | Covariant functions and lvalue/rvalue references | 12 | |
| 961 | CD2 | Overload resolution and conversion of std::nullptr_t to bool |
? | |
| 962 | CD2 | Attributes appertaining to class and enum types | ? | |
| 963 | CD2 | Comparing nullptr with 0 |
? | |
| 964 | C++11 | Incorrect description of when the lvalue-to-rvalue conversion applies | ? | |
| 965 | CD2 | Limiting the applicability of the carries_dependency attribute |
? | |
| 966 | CD2 | Nested types without linkage | ? | |
| 967 | NAD | Exception specification of replacement allocation function | ? | |
| 968 | CD2 | Syntactic ambiguity of the attribute notation | ? | |
| 969 | CD2 | Explicit instantiation declarations of class template specializations | ? | |
| 970 | CD2 | Consistent use of "appertain" and "apply" | ? | |
| 971 | C++11 | Incorrect treatment of exception-declarations | ? | |
| 972 | C++11 | Allowing multiple attribute-specifiers | ? | |
| 973 | CD2 | Function types in exception-specifications | ? | |
| 974 | CD3 | Default arguments for lambdas | ? | |
| 975 | CD3 | Restrictions on return type deduction for lambdas | ? | |
| 976 | CD2 | Deduction for const T& conversion operators |
14 | PR61663, git |
| 977 | CD3 | When is an enumeration type complete? | ? | |
| 978 | CD2 | Incorrect specification for copy initialization | ? | |
| 979 | CD2 | Position of attribute-specifier in declarator syntax | ? | |
| 980 | CD2 | Explicit instantiation of a member of a class template | ? | |
| 981 | C++11 | Constexpr constructor templates and literal types | ? | |
| 982 | NAD | Initialization with an empty initializer list | ? | |
| 983 | CD2 | Ambiguous pointer-to-member constant | ? | |
| 984 | CD2 | "Deduced type" is unclear in auto type deduction |
? | |
| 985 | C++11 | Alternative tokens and user-defined literals | ? | |
| 986 | CD2 | Transitivity of using-directives versus qualified lookup | ? | |
| 987 | CD4 | Which declarations introduce namespace members? | ? | |
| 988 | CD2 | Reference-to-reference collapsing with decltype |
? | |
| 989 | CD2 | Misplaced list-initialization example | ? | |
| 990 | CD2 | Value initialization with multiple initializer-list constructors | ? | |
| 991 | CD2 | Reference parameters of constexpr functions and constructors | ? | |
| 992 | NAD | Inheriting explicitness | ? | |
| 993 | C++11 | Freedom to perform instantiation at the end of the translation unit | ? | |
| 994 | C++11 | braced-init-list as a default argument | ? | |
| 995 | CD2 | Incorrect example for using-declaration and explicit instantiation | ? | |
| 996 | C++11 | Ambiguous partial specializations of member class templates | No | PR46381 |
| 997 | C++11 | Argument-dependent lookup and dependent function template parameter types | ? | |
| 998 | dup | Function parameter transformations and template functions | ? | |
| 999 | CD2 | "Implicit" or "implied" object argument/parameter? | ? | |
| 1000 | CD2 | Mistaking member typedefs for constructors | ? | |
| 1001 | review | Parameter type adjustment in dependent parameter types | ? | PR51851 |
| 1002 | NAD | Pack expansion for function arguments | ? | |
| 1003 | CD3 | Acceptable definitions of main |
? | |
| 1004 | C++11 | Injected-class-names as arguments for template template parameters | ? | |
| 1005 | NAD | Qualified name resolution in member functions of class templates | ? | |
| 1006 | C++11 | std::nullptr_t as a non-type template parameter |
? | |
| 1007 | NAD | Protected access and pointers to members | N/A | |
| 1008 | NAD | Querying the alignment of an object | N/A | |
| 1009 | C++11 | Missing cases in the declarator-id of a function template declaration | ? | |
| 1010 | CD2 | Address of object with dynamic storage duration in constant expression | ? | |
| 1011 | C++11 | Standard conversions that cannot be inverted | ? | |
| 1012 | C++11 | Undeprecating static |
? | |
| 1013 | CD3 | Uninitialized std::nullptr_t objects |
? | |
| 1014 | NAD | Overload resolution between const T& and T&& |
? | |
| 1015 | C++11 | Template arguments and argument-dependent lookup | ? | |
| 1016 | C++11 | Overloadable declarations, function templates, and references | ? | |
| 1017 | C++11 | Member access transformation in unevaluated operands | ? | |
| 1018 | C++11 | Ambiguity between simple-declaration and attribute-declaration | ? | |
| 1019 | dup | Dependent simple-template-ids in base-specifiers and mem-initializers | ? | |
| 1020 | C++11 | Implicitly-defined copy constructors and explicit base class constructors | ? | |
| 1021 | CD4 | Definitions of namespace members | ? | |
| 1022 | C++11 | Can an enumeration variable have values outside the values of the enumeration? | ? | |
| 1023 | dup | thread_local objects as non-type template arguments |
? | |
| 1024 | CD3 | Limits on multicharacter literals | ? | |
| 1025 | C++11 | Use of a reference as a non-type template argument | ? | |
| 1026 | NAD | Cv-qualified non-class rvalues | N/A | |
| 1027 | review | Type consistency and reallocation of scalar types | ? | |
| 1028 | CD6 | Dependent names in non-defining declarations | ? | |
| 1029 | C++11 | Type of a destructor call | ? | |
| 1030 | C++11 | Evaluation order in initializer-lists used in aggregate initialization | ? | PR70796 |
| 1031 | C++11 | Optional elements in attributes | ? | |
| 1032 | C++11 | Empty pack expansions | ? | |
| 1033 | C++11 | Restrictions on alignment attributes | ? | |
| 1034 | C++11 | Attributes for return statements in lambdas |
? | |
| 1035 | C++11 | Omitted and required decl-specifiers | ? | |
| 1036 | C++11 | Alignment attribute in an exception-declaration | ? | |
| 1037 | C++11 | Requirements for operands of delete-expressions and deallocation functions | ? | |
| 1038 | DRWP | Overload resolution of &x.static_func |
? | |
| 1039 | dup | Coordinating C and C++ alignment specifications | ? | |
| 1040 | NAD | Memory model issues | ? | |
| 1041 | dup | alias-declarations as class members | ? | |
| 1042 | C++11 | Attributes in alias-declarations | ? | |
| 1043 | C++11 | Qualified name lookup in the current instantiation | ? | |
| 1044 | C++11 | Point of declaration for an alias-declaration | ? | |
| 1045 | NAD | Requiring explicit instantiation declarations | ? | |
| 1046 | open | What is a "use" of a class specialization? | - | |
| 1047 | C++11 | When is typeid value-dependent? |
? | |
| 1048 | CD3 | auto deduction and lambda return type deduction. |
? | |
| 1049 | open | Copy elision through reference parameters of inline functions | - | |
| 1050 | NAD | Effects of thread support on object lifetime | ? | |
| 1051 | C++11 | Reference members and generated copy constructors | ? | |
| 1052 | dup | const non-static data member and PODness |
? | |
| 1053 | NAD | Terminate vs undefined behavior for noexcept violation | ? | |
| 1054 | C++11 | Lvalue-to-rvalue conversions in expression statements | ? | PR59314 |
| 1055 | C++11 | Permissible uses of void |
? | |
| 1056 | C++11 | Template aliases, member definitions, and the current instantiation | ? | |
| 1057 | C++11 | decltype and the current instantiation |
? | |
| 1058 | NAD | Reference binding of incompatible array types | ? | |
| 1059 | CD3 | Cv-qualified array types (with rvalues) | ? | |
| 1060 | C++11 | Scoped enumerators in integral constant expressions | ? | |
| 1061 | C++11 | Negative array bounds in a new-expression | ? | |
| 1062 | C++11 | Syntax of attribute-specifiers in lambdas | ? | |
| 1063 | C++11 | [[hiding]] with non-attribute declarations |
? | |
| 1064 | C++11 | Defaulted move constructor for a union | ? | |
| 1065 | C++11 | [[hiding]] with [[override]] |
? | |
| 1066 | C++11 | When is a copy/move assignment operator implicitly defined? | ? | |
| 1067 | NAD | [[hiding]], using-declarations, and multiple inheritance |
? | |
| 1068 | C++11 | Template aliases with default arguments and template parameter packs | ? | |
| 1069 | C++11 | Incorrect function type with trailing-return-type | ? | |
| 1070 | C++11 | Missing initializer clauses in aggregate initialization | ? | |
| 1071 | C++11 | Literal class types and trivial default constructors | ? | |
| 1072 | C++11 | Scoped enumerator with the same name as its containing class | ? | |
| 1073 | C++11 | Merging dynamic-exception-specifications and noexcept-specifications | ? | |
| 1074 | C++11 | Value-dependent noexcept-expressions | ? | |
| 1075 | C++11 | Grammar does not allow template alias in type-name | ? | |
| 1076 | CD5 | Value categories and lvalue temporaries | ? | |
| 1077 | NAD | Explicit specializations in non-containing namespaces | N/A | |
| 1078 | NAD | Narrowing and the usual arithmetic conversions | ? | |
| 1079 | C++11 | Overload resolution involving aggregate initialization | ? | |
| 1080 | C++11 | Confusing relationship between templates and copy constructors | ? | |
| 1081 | C++11 | Defaulted destructor and unusable operator delete | ? | |
| 1082 | C++11 | Implicit copy function if subobject has none? | ? | |
| 1083 | C++11 | Passing an object to ellipsis with non-trivial move constructor | ? | |
| 1084 | NAD | Conditions for a deleted move function | ? | |
| 1085 | NAD | Move assignment operators and virtual bases | ? | |
| 1086 | C++11 | const_cast to rvalue reference to function type |
? | |
| 1087 | C++11 | Additional applications of issue 899 | ? | |
| 1088 | C++11 | Dependent non-type template arguments | ? | |
| 1089 | open | Template parameters in member selections | - | |
| 1090 | C++11 | Alignment of subobjects | ? | |
| 1091 | C++11 | Inconsistent use of the term "object expression" | ? | |
| 1092 | drafting | Cycles in overload resolution during instantiation | - | |
| 1093 | CD3 | Value-initializing non-objects | ? | |
| 1094 | C++11 | Converting floating-point values to scoped enumeration types | ? | |
| 1095 | C++11 | List-initialization of references | ? | |
| 1096 | C++11 | Missing requirement for template definitions | ? | |
| 1097 | NAD | Aggregate initialization of function parameters | ? | |
| 1098 | C++11 | Pointer conversions in constant expressions | ? | |
| 1099 | C++11 | Infinite recursion in constexpr functions |
? | |
| 1100 | C++11 | constexpr conversion functions and non-type template arguments |
? | |
| 1101 | C++11 | Non-integral initialized static data members | ? | |
| 1102 | C++11 | Better example of undefined behavior | ? | |
| 1103 | C++11 | Reversion of phase 1 and 2 transformations in raw string literals | ? | |
| 1104 | C++11 | Global-scope template arguments vs the <: digraph |
? | |
| 1105 | C++11 | Issues relating to TR 10176:2003 | ? | |
| 1106 | C++11 | Need more detail in nullptr keyword description |
? | |
| 1107 | C++11 | Overload resolution for user-defined integer literals | ? | |
| 1108 | NAD | User-defined literals have not been implemented | ? | |
| 1109 | C++11 | When is "use" a reference to the ODR meaning? | ? | |
| 1110 | NAD | Incomplete return type should be allowed in decltype operand |
? | |
| 1111 | C++11 | Remove dual-scope lookup of member template names | ? | |
| 1112 | C++11 | constexpr variables should have internal linkage like const |
? | |
| 1113 | C++11 | Linkage of namespace member of unnamed namespace | ? | |
| 1114 | C++11 | Incorrect use of placement new in example |
? | |
| 1115 | C++11 | C-compatible alignment specification | ? | |
| 1116 | CD4 | Aliasing of union members | ? | |
| 1117 | C++11 | Incorrect note about xvalue member access expressions | ? | |
| 1118 | NAD | Implicit lambda capture via explicit copy constructor | ? | |
| 1119 | C++11 | Missing case in description of member access ambiguity | ? | |
| 1120 | C++11 | reinterpret_cast and void* |
? | |
| 1121 | C++11 | Unnecessary ambiguity error in formation of pointer to member | ? | |
| 1122 | C++11 | Circular definition of std::size_t |
? | |
| 1123 | C++11 | Destructors should be noexcept by default |
? | |
| 1124 | NAD | Error in description of value category of pointer-to-member expression | N/A | |
| 1125 | C++11 | Unclear definition of "potential constant expression" | ? | |
| 1126 | C++11 | constexpr functions in const initializers |
? | |
| 1127 | C++11 | Overload resolution in constexpr functions |
? | |
| 1128 | C++11 | attribute-specifiers in decl-specifier-seqs | ? | |
| 1129 | C++11 | Default nothrow for constexpr functions |
? | |
| 1130 | C++11 | Function parameter type adjustments and decltype |
? | |
| 1131 | C++11 | Template aliases in elaborated-type-specifiers | ? | |
| 1132 | NAD | Keyword vs attribute for noreturn |
? | |
| 1133 | C++11 | Keywords vs attributes for control of hiding and overriding | ? | |
| 1134 | C++11 | When is an explicitly-defaulted function defined? | ? | |
| 1135 | C++11 | Explicitly-defaulted non-public special member functions | ? | |
| 1136 | C++11 | Explicitly-defaulted explicit constructors | ? | |
| 1137 | C++11 | Explicitly-defaulted virtual special member functions | ? | |
| 1138 | C++11 | Rvalue-ness check for rvalue reference binding is wrong | ? | |
| 1139 | C++11 | Rvalue reference binding to scalar xvalues | ? | |
| 1140 | C++11 | Incorrect redefinition of POD class | ? | |
| 1141 | NAD | Non-static data member initializers have not been implemented | ? | |
| 1142 | C++11 | friend declaration of member function of containing class |
? | |
| 1143 | NAD | Move semantics for *this have not been implemented |
? | |
| 1144 | C++11 | Remove access declarations | ? | |
| 1145 | C++11 | Defaulting and triviality | ? | |
| 1146 | C++11 | exception-specifications of defaulted functions | ? | |
| 1147 | C++11 | Destructors should be default nothrow |
? | |
| 1148 | C++11 | Copy elision and move construction of function parameters | ? | |
| 1149 | C++11 | Trivial non-public copy operators in subobjects | ? | |
| 1150 | NAD | Inheriting constructors have not been implemented | ? | |
| 1151 | C++11 | Overload resolution with initializer-list and non-list constructors | ? | |
| 1152 | C++11 | Rules for determining existence of implicit conversion sequence | ? | |
| 1153 | C++11 | Type matching in address of overloaded function | ? | |
| 1154 | C++11 | Address of thread_local variable as non-type template argument |
? | |
| 1155 | C++11 | Internal-linkage non-type template arguments | ? | |
| 1156 | C++11 | Partial ordering in a non-call context | ? | |
| 1157 | open | Partial ordering of function templates is still underspecified | - | |
| 1158 | C++11 | Recursive instantiation via alias template | ? | |
| 1159 | C++11 | Class and enumeration definitions in template aliases | ? | |
| 1160 | C++11 | Definitions of template members and the current instantiation | ? | |
| 1161 | C++11 | Dependent nested-name-specifier in a pointer-to-member declarator | ? | |
| 1162 | NAD | Dependent elaborated-type-specifiers in non-deduced contexts | ? | |
| 1163 | NAD | extern template prevents inlining functions not marked inline |
? | |
| 1164 | C++11 | Partial ordering of f(T&) and f(T&&) |
? | |
| 1165 | C++11 | Exceptions when destroying array elements | ? | |
| 1166 | C++11 | exception-declarations that do not declare objects | ? | |
| 1167 | C++11 | function-try-blocks for destructors | ? | |
| 1168 | C++11 | Additional reasons to call std::terminate |
? | |
| 1169 | C++11 | Missing feature macro for strict pointer safety | ? | |
| 1170 | C++11 | Access checking during template argument deduction | 4.8 | |
| 1171 | C++11 | Partial stack unwinding with noexcept violation |
? | |
| 1172 | drafting | "instantiation-dependent" constructs | - | |
| 1173 | C++11 | Unclear specification of effects of signal handling | ? | |
| 1174 | C++11 | When is a pure virtual function "used?" | ? | |
| 1175 | C++11 | Disambiguating user-defined literals | ? | |
| 1176 | C++11 | Definition of release sequence | ? | |
| 1177 | C++11 | Intra-thread dependency-ordered-before | ? | |
| 1178 | C++11 | Deduction failure matching placement new | ? | |
| 1179 | NAD | Cv-qualification of non-type template parameters | ? | |
| 1180 | C++11 | Over-aligned class types | ? | |
| 1181 | C++11 | What is a "built-in type?" | ? | |
| 1182 | C++11 | Incorrect description of pack expansion syntax | ? | |
| 1183 | C++11 | Expansion of parameter packs in declarators | ? | |
| 1184 | C++11 | Argument conversions to nondeduced parameter types | ? | |
| 1185 | C++11 | Misleading description of language linkage and member function types | ? | |
| 1186 | C++11 | Non-dependent constexpr violations in function templates |
? | |
| 1187 | C++11 | Problems in initialization example | ? | |
| 1188 | C++11 | Type punning in constant expressions | Yes | |
| 1189 | C++11 | Address of distinct base class subobjects | ? | |
| 1190 | C++11 | Operations on non-safely-derived pointers | ? | |
| 1191 | C++11 | Deleted subobject destructors and implicitly-defined constructors | ? | |
| 1192 | C++11 | Inadvertent change to ODR and templates | ? | |
| 1193 | C++11 | Use of address-constant pointers in constant expressions | ? | |
| 1194 | C++11 | Constexpr references | ? | |
| 1195 | C++11 | References to non-literal types in constexpr functions | ? | |
| 1196 | C++11 | Definition required for explicit instantiation after explicit specialization? | ? | |
| 1197 | C++11 | Constexpr arrays | ? | |
| 1198 | C++11 | Literal types and copy constructors | ? | |
| 1199 | C++11 | Deleted constexpr functions | ? | |
| 1200 | CD6 | Lookup rules for template parameters | ? | |
| 1201 | C++11 | Are deleted and defaulted functions definitions? | ? | |
| 1202 | C++11 | Calling virtual functions during destruction | ? | |
| 1203 | dup | Misleading note regarding initialized static data members | ? | |
| 1204 | C++11 | Specifiers in a for-range-declaration | ? | |
| 1205 | dup | Lvalue reference binding and function viability | ? | |
| 1206 | C++11 | Defining opaque enumeration members of class templates | No | PR116233 |
| 1207 | C++11 | Type of class member in trailing-return-type | ? | |
| 1208 | C++11 | Explicit noexcept in defaulted definition |
? | |
| 1209 | open | Is a potentially-evaluated expression in a template definition a "use?" | - | |
| 1210 | C++11 | Injection of elaborated-type-specifier in enumeration scope | ? | |
| 1211 | drafting | Misaligned lvalues | - | |
| 1212 | C++11 | Non-function-call xvalues and decltype |
? | |
| 1213 | CD3 | Array subscripting and xvalues | 9 | |
| 1214 | C++11 | Kinds of initializers | ? | |
| 1215 | C++11 | Definition of POD struct | ? | |
| 1216 | C++11 | Exceptions "allowed" by a noexcept-specification | ? | |
| 1217 | NAD | Are deleted functions implicitly noexcept? |
? | |
| 1218 | C++11 | What is the "currently-handled exception" in a multi-threaded program? | ? | |
| 1219 | C++11 | Non-static data member initializers in constant expressions | ? | |
| 1220 | C++11 | Looking up conversion-type-ids | ? | |
| 1221 | open | Partial ordering and reference collapsing | - | |
| 1222 | NAD | Unnecessary restriction on auto array types |
? | |
| 1223 | drafting | Syntactic disambiguation and trailing-return-types | - | |
| 1224 | C++11 | constexpr defaulted copy constructors |
? | |
| 1225 | C++11 | constexpr constructors and virtual bases |
? | |
| 1226 | CD3 | Converting a braced-init-list default argument | ? | |
| 1227 | CD3 | Mixing immediate and non-immediate contexts in deduction failure | 12 | PR96560 |
| 1228 | NAD | Copy-list-initialization and explicit constructors |
Yes | PR113300, PR109159 |
| 1229 | C++11 | Overload resolution with empty braced-init-list argument | ? | |
| 1230 | dup | Confusing description of ambiguity of destructor name | ? | |
| 1231 | C++11 | Variadic templates requiring an empty pack expansion | ? | |
| 1232 | C++11 | Creation of array temporaries using a braced-init-list | ? | |
| 1233 | C++11 | Pack expansions and dependent calls | ? | |
| 1234 | C++11 | abstract-declarator does not permit ... after ptr-operator |
? | |
| 1235 | C++11 | "Unused" ellipsis and default arguments in partial ordering | ? | |
| 1236 | C++11 | Inconsistently-interrelated examples | ? | |
| 1237 | C++11 | Deprecated implicit copy assignment in example | ? | |
| 1238 | C++11 | Overloading ambiguity binding reference to function | ? | |
| 1239 | C++11 | Hexadecimal floating-point literals vs user-defined literals | ? | |
| 1240 | C++11 | constexpr defaulted constructors |
? | |
| 1241 | C++11 | Which members does a destructor destroy? | ? | |
| 1242 | C++11 | Initializing variant class members | ? | |
| 1243 | C++11 | Misleading footnote regarding multiple-declarator declarations | ? | |
| 1244 | C++11 | Equivalence of alias templates and class templates | ? | |
| 1245 | C++11 | Matching declarations involving decltype |
? | |
| 1246 | C++11 | Non-deduced non-final parameter packs | ? | |
| 1247 | CD4 | Restriction on alias name appearing in type-id | ? | |
| 1248 | open | Updating Annex C to C99 | - | |
| 1249 | CD6 | Cv-qualification of nested lambda capture | ? | |
| 1250 | CD3 | Cv-qualification of incomplete virtual function return types | ? | |
| 1251 | CD3 | C compatibility: casting to unqualified void* |
? | |
| 1252 | CD6 | Overloading member function templates based on dependent return type | ? | |
| 1253 | open | Generic non-template members | - | |
| 1254 | NAD | odr-use vs template arguments and constexpr functions | ? | |
| 1255 | drafting | Definition problems with constexpr functions |
- | |
| 1256 | open | Unevaluated operands are not necessarily constant expressions | - | |
| 1257 | open | Instantiation via non-dependent references in uninstantiated templates | - | |
| 1258 | CD5 | "Instantiation context" differs from dependent lookup rules | - | |
| 1259 | NAD | Deleting a POD via a pointer to base | ? | |
| 1260 | CD3 | Incorrect use of term "overloaded" in description of odr-use | ? | |
| 1261 | CD3 | Explicit handling of cv-qualification with non-class prvalues | ? | |
| 1262 | CD3 | Default template arguments and deduction failure | ? | |
| 1263 | NAD | Mismatch between rvalue reference binding and overload resolution | ? | |
| 1264 | CD3 | Use of this in constexpr constructor |
? | |
| 1265 | CD3 | Mixed use of the auto specifier |
Yes | PR67017 |
| 1266 | open | user-defined-integer-literal overflow | - | |
| 1267 | CD3 | Rvalue reference types in exception-specifications | ? | |
| 1268 | CD3 | reinterpret_cast of an xvalue operand |
? | |
| 1269 | CD3 | dynamic_cast of an xvalue operand |
? | |
| 1270 | CD3 | Brace elision in array temporary initialization | ? | |
| 1271 | CD5 | Imprecise wording regarding dependent types | ? | |
| 1272 | NAD | Implicit definition of static data member of const literal type | ? | |
| 1273 | NAD | Accessibility and function signatures | ? | |
| 1274 | CD4 | Common nonterminal for expression and braced-init-list | ? | |
| 1275 | CD3 | Incorrect comment in example of template parameter pack restriction | ? | |
| 1276 | NAD | Reference to stdint.h |
? | |
| 1277 | NAD | Lax definition of intmax_t and uintmax_t |
? | |
| 1278 | drafting | Incorrect treatment of contrived object | - | |
| 1279 | drafting | Additional differences between C++ 2003 and C++ 2011 | - | |
| 1280 | NAD | Object reallocation and reference members | ? | |
| 1281 | NAD | Virtual and dependent base classes | ? | |
| 1282 | CD3 | Underspecified destructor exception-specification | ? | |
| 1283 | drafting | Static data members of classes with typedef name for linkage purposes | - | |
| 1284 | CD4 | Should the lifetime of an array be independent of that of its elements? | ? | |
| 1285 | NAD | Trivial destructors and object lifetime | N/A | |
| 1286 | drafting | Equivalence of alias templates | - | |
| 1287 | C++14 | Direct initialization vs "implicit" conversion in reference binding | ? | |
| 1288 | CD3 | Reference list initialization | No | PR77875 |
| 1289 | NAD | Can an alias template name the current instantiation? | ? | |
| 1290 | CD3 | Lifetime of the underlying array of an initializer_list member |
? | |
| 1291 | CD6 | Looking up a conversion-type-id | ? | |
| 1292 | CD4 | Dependent calls with braced-init-lists containing a pack expansion | ? | |
| 1293 | CD3 | String literals in constant expressions | ? | |
| 1294 | open | Side effects in dynamic/static initialization | - | |
| 1295 | CD3 | Binding a reference to an rvalue bit-field | ? | |
| 1296 | CD3 | Ill-formed template declarations (not just definitions) | ? | |
| 1297 | CD3 | Misplaced function attribute-specifier | ? | |
| 1298 | CD3 | Incorrect example in overload resolution | ? | |
| 1299 | CD5 | "Temporary objects" vs "temporary expressions" | 9 | PR92831 |
| 1300 | dup | T() for array types |
? | |
| 1301 | CD3 | Value initialization of union | ? | |
| 1302 | CD3 | noexcept applied to expression of type void |
? | |
| 1303 | NAD | C language linkage for template with internal linkage | ? | |
| 1304 | drafting | Omitted array bound with string initialization | - | |
| 1305 | CD3 | alignof applied to array of unknown size |
? | |
| 1306 | CD3 | Modifying an object within a const member function |
? | |
| 1307 | C++14 | Overload resolution based on size of array initializer-list | 10 | PR69531 |
| 1308 | CD3 | Completeness of class type within an exception-specification | ? | |
| 1309 | CD4 | Incorrect note regarding lookup of a member of the current instantiation | ? | |
| 1310 | CD3 | What is an "acceptable lookup result?" | ? | |
| 1311 | CD3 | Volatile lvalues in constant expressions | ? | |
| 1312 | CD3 | Simulated reinterpret_cast in constant expressions |
11 | PR99176 |
| 1313 | CD3 | Undefined pointer arithmetic in constant expressions | ? | |
| 1314 | NAD | Pointer arithmetic within standard-layout objects | N/A | |
| 1315 | CD4 | Restrictions on non-type template arguments in partial specializations | 12 | PR77781 |
| 1316 | NAD | constexpr function requirements and class scope |
? | |
| 1317 | NAD | Unnamed scoped enumerations | ? | |
| 1318 | CD3 | Syntactic ambiguities with final |
? | |
| 1319 | NAD | Error in pack expansion example | ? | |
| 1320 | CD3 | Converting scoped enumerations to bool |
? | |
| 1321 | CD3 | Equivalency of dependent calls | 9 | |
| 1322 | drafting | Function parameter type decay in templates | - | PR49051 |
| 1323 | NAD | Nonexistent nonterminal in alignment-specifier grammar | N/A | |
| 1324 | CD3 | Value initialization and defaulted constructors | ? | |
| 1325 | NAD | Omitted declarator in friend declarations |
N/A | |
| 1326 | dup | Deducing an array bound from an initializer-list | ? | |
| 1327 | CD3 | virt-specifier in a defaulted definition | ? | |
| 1328 | CD3 | Conflict in reference binding vs overload resolution | ? | |
| 1329 | CD3 | Recursive deduction substitutions | ? | |
| 1330 | CD3 | Delayed instantiation of noexcept specifiers |
10 | PR86476 |
| 1331 | CD5 | const mismatch with defaulted copy constructor |
9 | |
| 1332 | CD5 | Handling of invalid universal-character-names | ? | |
| 1333 | CD3 | Omission of const in a defaulted copy constructor |
? | PR58074 |
| 1334 | NAD | Layout compatibility and cv-qualification | N/A | |
| 1335 | CD6 | Stringizing, extended characters, and universal-character-names | ? | |
| 1336 | CD3 | Definition of "converting constructor" | ? | |
| 1337 | dup | Partial ordering and non-deduced parameters | ? | |
| 1338 | CD4 | Aliasing and allocation functions | ? | |
| 1339 | NAD | Parenthesized braced-init-list and arrays | ? | |
| 1340 | CD3 | Complete type in member pointer expressions | ? | |
| 1341 | NAD | Bit-field initializers | ? | |
| 1342 | CD6 | Order of initialization with multiple declarators | - | |
| 1343 | C++17 | Sequencing of non-class initialization | ? | |
| 1344 | C++14 | Adding new special member functions to a class via default arguments | No | PR58194 |
| 1345 | CD3 | Initialization of anonymous union class members | ? | |
| 1346 | CD3 | expression-list initializers and the auto specifier |
? | |
| 1347 | CD3 | Consistency of auto in multiple-declarator declarations |
? | |
| 1348 | drafting | Use of auto in a trailing-return-type |
- | |
| 1349 | dup | Consistency of alias template redeclarations | ? | |
| 1350 | CD3 | Incorrect exception specification for inherited constructors | ? | |
| 1351 | CD4 | Problems with implicitly-declared exception-specifications | ? | |
| 1352 | CD3 | Inconsistent class scope and completeness rules | ? | |
| 1353 | DRWP | Array and variant members and deleted special member functions | ? | |
| 1354 | CD3 | Destructor exceptions for temporaries in noexcept expressions | ? | |
| 1355 | CD3 | Aggregates and "user-provided" constructors | ? | |
| 1356 | CD4 | Exception specifications of copy assignment operators with virtual bases | ? | |
| 1357 | CD3 | brace-or-equal-initializers for function and typedef members | ? | |
| 1358 | CD3 | Unintentionally ill-formed constexpr function template instances |
? | |
| 1359 | CD3 | constexpr union constructors |
? | |
| 1360 | CD6 | constexpr defaulted default constructors |
? | |
| 1361 | CD3 | Requirement on brace-or-equal-initializers of literal types | ? | |
| 1362 | CD3 | Complete type required for implicit conversion to T& |
? | |
| 1363 | CD3 | Triviality vs multiple default constructors | No | PR85723 |
| 1364 | CD3 | constexpr function parameters |
? | |
| 1365 | CD3 | Calling undefined constexpr functions |
? | |
| 1366 | CD3 | Deleted constexpr constructors and virtual base classes |
? | |
| 1367 | CD3 | Use of this in a constant expression |
? | |
| 1368 | CD3 | Value initialization and defaulted constructors (part 2) | ? | |
| 1369 | CD3 | Function invocation substitution of this |
? | |
| 1370 | CD3 | identifier-list cannot contain ellipsis | ? | |
| 1371 | NAD | Deduction from T&& in return types |
? | |
| 1372 | CD3 | Cross-references incorrect in conversion function template argument deduction | ? | |
| 1373 | dup | Overload resolution changes matching reference-binding changes | ? | |
| 1374 | CD3 | Qualification conversion vs difference in reference binding | ? | |
| 1375 | CD3 | Reference to anonymous union? | ? | |
| 1376 | C++14 | static_cast of temporary to rvalue reference |
Yes | PR52202 |
| 1377 | dup | Access declarations not mentioned in Annex C | ? | |
| 1378 | CD5 | When is an instantiation required? | ? | |
| 1379 | NAD | Is std::initializer_list an aggregate? |
? | |
| 1380 | CD3 | Type definitions in template-parameter parameter-declarations | ? | |
| 1381 | CD3 | Implicitly-declared special member functions and default nothrow |
? | |
| 1382 | CD3 | Dead code for constructor names | ? | |
| 1383 | CD3 | Clarifying discarded-value expressions | ? | |
| 1384 | NAD | reinterpret_cast in constant expressions |
N/A | |
| 1385 | CD3 | Syntactic forms of conversion functions for surrogate call functions | ? | |
| 1386 | NAD | Explicitly-specified partial argument list with multiple parameter packs | ? | |
| 1387 | CD3 | Missing non-deduced context for decltype |
? | |
| 1388 | CD3 | Missing non-deduced context following a function parameter pack | ? | PR71425 |
| 1389 | NAD | Recursive reference in trailing-return-type | ? | |
| 1390 | drafting | Dependency of alias template specializations | - | PR96957 |
| 1391 | CD4 | Conversions to parameter types with non-deduced template arguments | 6 | PR47765 |
| 1392 | CD3 | Explicit conversion functions for references and non-references | ? | |
| 1393 | C++17 | Pack expansions in using-declarations | ? | |
| 1394 | CD3 | Incomplete types as parameters of deleted functions | ? | |
| 1395 | C++17 | Partial ordering of variadic templates reconsidered | ? | PR60402 |
| 1396 | C++23 | Deferred instantiation and checking of non-static data member initializers | ? | |
| 1397 | CD4 | Class completeness in non-static data member initializers | ? | |
| 1398 | CD3 | Non-type template parameters of type std::nullptr_t |
? | |
| 1399 | CD3 | Deduction with multiple function parameter packs | ? | PR71425 |
| 1400 | NAD | Function pointer equality | N/A | |
| 1401 | CD3 | Similar types and reference compatibility | ? | |
| 1402 | CD3 | Move functions too often deleted | ? | |
| 1403 | CD6 | Universal-character-names in comments | ? | |
| 1404 | drafting | Object reallocation in unions | - | |
| 1405 | CD3 | constexpr and mutable members of literal types |
? | |
| 1406 | CD3 | ref-qualifiers and added parameters of non-static member function templates | ? | |
| 1407 | NAD | Integral to bool conversion in converted constant expressions |
No | |
| 1408 | CD3 | What is "the same aggregate initialization?" | ? | |
| 1409 | CD3 | What is the second standard conversion sequence of a list-initialization sequence? | ? | |
| 1410 | CD3 | Reference overload tiebreakers should apply to rvalue references | ? | |
| 1411 | CD3 | More on global scope :: in nested-name-specifier |
? | |
| 1412 | CD3 | Problems in specifying pointer conversions | ? | |
| 1413 | CD3 | Missing cases of value-dependency | ? | |
| 1414 | drafting | Binding an rvalue reference to a reference-unrelated lvalue | - | |
| 1415 | CD3 | Missing prohibition of block-scope definition of extern object |
? | |
| 1416 | CD3 | Function cv-qualifiers and typeid |
? | |
| 1417 | C++14 | Pointers/references to functions with cv-qualifiers or ref-qualifier | ? | |
| 1418 | CD3 | Type of initializer_list backing array |
? | |
| 1419 | NAD | Evaluation order in aggregate initialization | ? | |
| 1420 | NAD | Abstract final classes | ? | |
| 1421 | NAD | Full expressions and aggregate initialization | ? | |
| 1422 | dup | Type of character literals containing universal-character-names | ? | |
| 1423 | CD3 | Convertibility of nullptr to bool |
5 | |
| 1424 | C++14 | When must sub-object destructors be accessible? | ? | |
| 1425 | CD3 | Base-class subobjects of standard-layout structs | ? | |
| 1426 | CD5 | Allowing additional parameter types in defaulted functions | ? | |
| 1427 | NAD | Default constructor and deleted or inaccessible destructors | ? | |
| 1428 | CD3 | Dynamic const objects | ? | |
| 1429 | NAD | Scope of a member template's template parameter | ? | |
| 1430 | open | Pack expansion into fixed alias template parameter list | - | PR66834, PR60273, PR59498, PR51239 |
| 1431 | CD3 | Exceptions from other than throw-expressions | ? | |
| 1432 | C++17 | Newly-ambiguous variadic template expansions | ? | |
| 1433 | NAD | trailing-return-type and point of declaration | N/A | PR51501 |
| 1434 | NAD | Parenthesized braced-init-list | ? | |
| 1435 | CD3 | template-id as the declarator for a class template constructor | ? | |
| 1436 | open | Interaction of constant expression changes with preprocessor expressions | - | |
| 1437 | CD3 | alignas in alias-declaration |
? | |
| 1438 | CD3 | Non-dereference use of invalid pointers | ? | |
| 1439 | CD3 | Lookup and friend template declarations | ? | |
| 1440 | CD3 | Acceptable decltype-specifiers used as nested-name-specifiers | ? | |
| 1441 | C++14 | Unclear wording for signal handler restrictions | ? | |
| 1442 | CD3 | Argument-dependent lookup in the range-based for |
? | |
| 1443 | NAD | Default arguments and non-static data members | ? | |
| 1444 | drafting | Type adjustments of non-type template parameters | - | |
| 1445 | dup | Argument-dependent lookup of begin and end |
? | |
| 1446 | CD4 | Member function with no ref-qualifier and non-member function with rvalue reference | ? | |
| 1447 | CD3 | static_cast of bit-field lvalue to rvalue reference |
? | |
| 1448 | NAD | Integral values of type bool |
N/A | see CWG 903 |
| 1449 | CD3 | Narrowing conversion of negative value to unsigned type | ? | |
| 1450 | CD3 | INT_MIN % -1 |
? | |
| 1451 | CD4 | Objects with no linkage in non-type template arguments | ? | |
| 1452 | NAD | Value-initialized objects may be constants | N/A | |
| 1453 | CD3 | Volatile members in literal classes? | Yes | |
| 1454 | CD3 | Passing constants through constexpr functions via references |
? | |
| 1455 | CD3 | Lvalue converted constant expressions | ? | |
| 1456 | CD3 | Address constant expression designating the one-past-the-end address | ? | |
| 1457 | CD3 | Undefined behavior in left-shift | ? | |
| 1458 | CD3 | Address of incomplete type vs operator&() |
? | |
| 1459 | open | Reference-binding tiebreakers in overload resolution | - | |
| 1460 | C++14 | What is an empty union? | ? | |
| 1461 | NAD | Narrowing conversions to bit-fields | ? | |
| 1462 | CD3 | Deduction failure vs "ill-formed, no diagnostic required" | ? | |
| 1463 | drafting | extern "C" alias templates |
- | |
| 1464 | CD3 | Negative array bound in a new-expression | ? | |
| 1465 | CD4 | noexcept and std::bad_array_new_length |
? | |
| 1466 | C++14 | Visible sequences of side effects are redundant | ? | |
| 1467 | CD4 | List-initialization of aggregate from same-type object | ? | |
| 1468 | CD5 | typeid, overload resolution, and implicit lambda capture |
? | |
| 1469 | CD5 | Omitted bound in array new-expression | ? | |
| 1470 | NAD | Thread migration | ? | |
| 1471 | CD3 | Nested type of non-dependent base | ? | |
| 1472 | CD3 | odr-use of reference variables | ? | |
| 1473 | CD3 | Syntax of literal-operator-id | ? | |
| 1474 | NAD | User-defined literals and <inttypes.h> format macros |
? | |
| 1475 | CD3 | Errors in [[carries_dependency]] example |
? | |
| 1476 | CD3 | Definition of user-defined type | ? | |
| 1477 | CD3 | Definition of a friend outside its namespace |
? | |
| 1478 | CD6 | template keyword for dependent template template arguments |
? | |
| 1479 | CD3 | Literal operators and default arguments | ? | |
| 1480 | CD3 | Constant initialization via non-constant temporary | ? | |
| 1481 | CD3 | Increment/decrement operators with reference parameters | ? | |
| 1482 | CD3 | Point of declaration of enumeration | ? | |
| 1483 | NAD | Non-dependent static_assert-declarations | ? | |
| 1484 | CD4 | Unused local classes of function templates | ? | |
| 1485 | drafting | Out-of-class definition of member unscoped opaque enumeration | - | PR71662 |
| 1486 | drafting | Base-derived conversion in member pointer deduction | - | |
| 1487 | CD3 | When are inheriting constructors declared? | ? | |
| 1488 | drafting | abstract-pack-declarators in type-ids | - | |
| 1489 | CD3 | Is value-initialization of an array constant initialization? | ? | |
| 1490 | CD4 | List-initialization from a string literal | ? | |
| 1491 | CD3 | Move construction and rvalue reference members | ? | |
| 1492 | CD4 | Exception specifications on template destructors | ? | |
| 1493 | C++14 | Criteria for move-construction | ? | |
| 1494 | CD3 | Temporary initialization for reference binding in list-initialization | ? | |
| 1495 | CD3 | Partial specialization of variadic class template | ? | |
| 1496 | CD4 | Triviality with deleted and missing default constructors | No | PR85723 |
| 1497 | NAD | Aggregate initialization with parenthesized string literal | ? | |
| 1498 | dup | Lifetime of temporaries in range-based for |
? | |
| 1499 | drafting | Missing case for deleted move assignment operator | - | |
| 1500 | CD6 | Name lookup of dependent conversion function | ? | |
| 1501 | NAD | Nested braces in list-initialization | ? | |
| 1502 | CD3 | Value initialization of unions with member initializers | ? | |
| 1503 | CD3 | Exceptions during copy to exception object | ? | |
| 1504 | CD3 | Pointer arithmetic after derived-base conversion | ? | |
| 1505 | dup | Direct binding of reference to temporary in list-initialization | ? | |
| 1506 | CD3 | Value category of initializer_list object |
? | |
| 1507 | CD3 | Value initialization with trivial inaccessible default constructor | ? | |
| 1508 | C++14 | Template initializer-list constructors | ? | |
| 1509 | C++14 | Definition of "non-template function" | ? | |
| 1510 | CD3 | cv-qualified references via decltype |
? | |
| 1511 | CD3 | const volatile variables and the one-definition rule |
? | |
| 1512 | CD3 | Pointer comparison vs qualification conversions | 11 | PR87699 |
| 1513 | drafting | initializer_list deduction failure |
- | |
| 1514 | C++14 | Ambiguity between enumeration definition and zero-length bit-field | ? | |
| 1515 | CD3 | Modulo 2n arithmetic for implicitly-unsigned types | ? | |
| 1516 | CD3 | Definition of "virtual function call" | ? | |
| 1517 | drafting | Unclear/missing description of behavior during construction/destruction | - | |
| 1518 | CD4 | Explicit default constructors and copy-list-initialization | ? | PR54835 |
| 1519 | NAD | Conflicting default and variadic constructors | ? | |
| 1520 | NAD | Alias template specialization vs pack expansion | ? | |
| 1521 | drafting | T{expr} with reference types |
- | PR115085 |
| 1522 | CD3 | Access checking for initializer_list array initialization |
? | |
| 1523 | CD5 | Point of declaration in range-based for |
? | |
| 1524 | drafting | Incompletely-defined class template base | - | |
| 1525 | NAD | Array bound inference in temporary array | No | |
| 1526 | dup | Dependent-class lookup in the current instantiation | ? | |
| 1527 | CD3 | Assignment from braced-init-list | ? | |
| 1528 | CD3 | Repeated cv-qualifiers in declarators | ? | |
| 1529 | drafting | Nomenclature for variable vs reference non-static data member | - | |
| 1530 | drafting | Member access in out-of-lifetime objects | - | |
| 1531 | CD3 | Definition of "access" (verb) | ? | |
| 1532 | CD3 | Explicit instantiation and member templates | ? | |
| 1533 | CD3 | Function pack expansion for member initialization | ? | |
| 1534 | dup | cv-qualification of prvalue of type "array of class" | ? | |
| 1535 | CD3 | typeid in core constant expressions |
? | |
| 1536 | drafting | Overload resolution with temporary from initializer list | - | |
| 1537 | CD3 | Optional compile-time evaluation of constant expressions | ? | |
| 1538 | CD3 | C-style cast in braced-init-list assignment | ? | |
| 1539 | CD3 | Definition of "character type" | ? | |
| 1540 | NAD | Use of address constants in constant expressions | N/A | |
| 1541 | CD3 | cv void return types |
? | |
| 1542 | drafting | Compound assignment of braced-init-list | - | |
| 1543 | CD3 | Implicit conversion sequence for empty initializer list | ? | |
| 1544 | CD3 | Linkage of member of unnamed namespace | ? | |
| 1545 | NAD | friend function templates defined in class templates |
N/A | |
| 1546 | NAD | Errors in function template default arguments | N/A | |
| 1547 | NAD | typename keyword in alias-declarations |
? | |
| 1548 | drafting | Copy/move construction and conversion functions | - | |
| 1549 | open | Overloaded comma operator with void operand |
- | |
| 1550 | CD3 | Parenthesized throw-expression operand of conditional-expression | No | PR86475 |
| 1551 | C++14 | Wording problems in using-declaration specification | ? | |
| 1552 | CD4 | exception-specifications and defaulted special member functions | ? | |
| 1553 | CD3 | sizeof and xvalue bit-fields |
? | |
| 1554 | drafting | Access and alias templates | - | |
| 1555 | NAD | Language linkage and function type compatibility | N/A | |
| 1556 | CD3 | Constructors and explicit conversion functions in direct initialization | ? | |
| 1557 | CD3 | Language linkage of converted lambda function pointer | ? | |
| 1558 | CD4 | Unused arguments in alias template specializations | ? | |
| 1559 | CD3 | String too long in initializer list of new-expression | ? | |
| 1560 | CD3 | Gratuitous lvalue-to-rvalue conversion in conditional-expression with throw-expression operand | 10 | PR64372 |
| 1561 | CD4 | Aggregates with empty base classes | ? | |
| 1562 | C++14 | Non-static data member initializers and union ctor-initializer | ? | |
| 1563 | CD3 | List-initialization and overloaded function disambiguation | ? | |
| 1564 | NAD | Template argument deduction from an initializer list | ? | |
| 1565 | NAD | Copy elision and lifetime of initializer_list underlying array |
? | |
| 1566 | NAD | Should new std::initializer_list<T> be ill-formed? |
? | |
| 1567 | C++14 | Inheriting constructors and copy/move constructors | ? | |
| 1568 | dup | Temporary lifetime extension with intervening cast | ? | |
| 1569 | C++14 | Deducing a function parameter pack before ellipsis | ? | |
| 1570 | C++14 | Address of subobject as non-type template argument | ? | |
| 1571 | CD4 | cv-qualification for indirect reference binding via conversion function | ? | |
| 1572 | CD4 | Incorrect example for rvalue reference binding via conversion function | ? | |
| 1573 | CD4 | Inherited constructor characteristics | ? | |
| 1574 | NAD | Explicitly-defaulted constexpr functions in wrapper templates |
? | |
| 1575 | C++14 | Incorrect definition of "strict pointer safety" | ? | |
| 1576 | C++14 | Discarded-value volatile xvalues | ? | |
| 1577 | NAD | Unnecessary restrictions on partial specializations | ? | |
| 1578 | NAD | Value-initialization of aggregates | ? | |
| 1579 | C++14 | Return by converting move constructor | 5 | |
| 1580 | drafting | Default arguments in explicit instantiations | - | |
| 1581 | CD5 | When are constexpr member functions defined? |
Yes | |
| 1582 | drafting | Template default arguments and deduction failure | - | |
| 1583 | C++14 | Incorrect example of unspecified behavior | ? | |
| 1584 | drafting | Deducing function types from cv-qualified types | - | PR57466, PR56693 |
| 1585 | NAD | Value category of member access of rvalue reference member | N/A | |
| 1586 | NAD | Naming a destructor via decltype |
? | |
| 1587 | C++14 | constexpr initialization and nested anonymous unions |
? | |
| 1588 | CD3 | Deducing cv-qualified auto |
? | |
| 1589 | CD4 | Ambiguous ranking of list-initialization sequences | ? | |
| 1590 | CD4 | Bypassing non-copy/move constructor copying | ? | |
| 1591 | CD4 | Deducing array bound and element type from initializer list | ? | |
| 1592 | C++14 | When do template parameters match? | ? | |
| 1593 | C++14 | "Parameter type" of special member functions | ? | |
| 1594 | drafting | Lazy declaration of special members vs overload errors | - | |
| 1595 | C++14 | Constructors "involved in" subobject initialization | ? | |
| 1596 | CD4 | Non-array objects as array[1] |
? | |
| 1597 | CD3 | Misleading constexpr example |
? | |
| 1598 | C++14 | Criterion for equality of pointers to members | ? | |
| 1599 | CD4 | Lifetime of initializer_list underlying array |
? | |
| 1600 | CD4 | Erroneous reference initialization in example | ? | |
| 1601 | C++14 | Promotion of enumeration with fixed underlying type | 10 | PR92032 |
| 1602 | review | Linkage of specialization vs linkage of template arguments | ? | |
| 1603 | CD4 | Errors resulting from giving unnamed namespaces internal linkage | ? | |
| 1604 | C++14 | Double temporaries in reference initialization | ? | |
| 1605 | CD3 | Misleading parenthetical comment for explicit destructor call | ? | |
| 1606 | NAD | sizeof closure class |
? | |
| 1607 | C++14 | Lambdas in template parameters | ? | |
| 1608 | C++14 | Operator lookup in trailing return type | ? | |
| 1609 | open | Default arguments and function parameter packs | - | |
| 1610 | drafting | Cv-qualification in deduction of reference to array | - | |
| 1611 | C++14 | Deleted default constructor for abstract class | ? | |
| 1612 | C++14 | Implicit lambda capture and anonymous unions | ? | |
| 1613 | C++14 | Constant expressions and lambda capture | ? | |
| 1614 | CD4 | Address of pure virtual function vs odr-use | ? | |
| 1615 | CD4 | Alignment of types, variables, and members | ? | |
| 1616 | CD6 | Disambiguation parsing and template parameters | ? | |
| 1617 | open | alignas and non-defining declarations |
- | |
| 1618 | C++14 | Gratuitously-unsigned underlying enum type | ? | |
| 1619 | open | Definition of current instantiation | - | |
| 1620 | open | User-defined literals and extended integer types | - | |
| 1621 | C++20 | Member initializers in anonymous unions | ? | |
| 1622 | C++17 | Empty aggregate initializer for union | ? | |
| 1623 | drafting | Deleted default union constructor and member initializers | - | |
| 1624 | NAD | Destruction of union members with member initializers | ? | |
| 1625 | open | Adding spaces between tokens in stringizing | - | |
| 1626 | open | constexpr member functions in brace-or-equal-initializers |
- | |
| 1627 | NAD | Agreement of dependent alignas specifiers |
? | |
| 1628 | open | Deallocation function templates | - | |
| 1629 | C++14 | Can a closure class be a literal type? | ? | |
| 1630 | CD4 | Multiple default constructor templates | ? | |
| 1631 | CD4 | Incorrect overload resolution for single-element initializer-list | ? | |
| 1632 | CD5 | Lambda capture in member initializers | ? | |
| 1633 | CD4 | Copy-initialization in member initialization | ? | |
| 1634 | drafting | Temporary storage duration | - | |
| 1635 | drafting | How similar are template default arguments to function default arguments? | - | PR57314 |
| 1636 | CD5 | Bits required for negative enumerator values | ? | |
| 1637 | NAD | Recursion in constexpr template default constructor |
? | |
| 1638 | CD4 | Declaring an explicit specialization of a scoped enumeration | ? | |
| 1639 | CD4 | exception-specifications and pointer/pointer-to-member expressions | ? | |
| 1640 | CD5 | Array of abstract instance of class template | ? | PR17232 |
| 1641 | NAD | Assignment in member initializer | ? | |
| 1642 | DRWP | Missing requirements for prvalue operands | ? | |
| 1643 | NAD | Default arguments for template parameter packs | N/A | |
| 1644 | NAD | Equivalent exception-specifications in function template declarations | N/A | |
| 1645 | CD4 | Identical inheriting constructors via default arguments | ? | |
| 1646 | CD5 | decltype-specifiers, abstract classes, and deduction failure | ? | |
| 1647 | drafting | Type agreement of non-type template arguments in partial specializations | - | PR60679 |
| 1648 | C++14 | thread_local vs block extern declarations |
? | |
| 1649 | C++14 | Error in the syntax of mem-initializer-list | ? | |
| 1650 | NAD | Class prvalues in reference initialization | N/A | |
| 1651 | NAD | Lifetime extension of temporary via reference to subobject | N/A | |
| 1652 | CD4 | Object addresses in constexpr expressions |
? | |
| 1653 | CD4 | Removing deprecated increment of bool |
? | |
| 1654 | dup | Literal types and constexpr defaulted constructors |
Dup of 1360 | |
| 1655 | drafting | Line endings in raw string literals | - | |
| 1656 | CD6 | Encoding of numerically-escaped characters | ? | |
| 1657 | CD4 | Attributes for namespaces and enumerators | 10 | |
| 1658 | C++14 | Deleted default constructor for abstract class via destructor | ? | |
| 1659 | open | Initialization order of thread_local template static data members | - | |
| 1660 | C++14 | member-declaration requirements and unnamed bit-fields | ? | |
| 1661 | NAD | Preservation of infinite loops | ? | |
| 1662 | C++14 | Capturing function parameter packs | ? | |
| 1663 | NAD | Capturing an empty pack expansion | ? | |
| 1664 | C++14 | Argument-dependent lookup of lambdas used in default arguments | ? | |
| 1665 | drafting | Declaration matching in explicit instantiations | - | PR64063 |
| 1666 | C++14 | Address constant expressions | ? | |
| 1667 | NAD | Function exiting via exception called by destructor during unwinding | ? | |
| 1668 | drafting | Parameter type determination still not clear enough | - | |
| 1669 | C++14 | auto return type for main |
Yes | |
| 1670 | drafting | auto as conversion-type-id |
- | |
| 1671 | NAD | Unclear rules for deduction with cv-qualification | ? | |
| 1672 | CD4 | Layout compatibility with multiple empty bases | No | PR91080 |
| 1673 | C++14 | Clarifying overload resolution for the second step of copy-initialization | ? | |
| 1674 | C++14 | Return type deduction for address of function | ? | |
| 1675 | NAD | Size limit for automatic array object | ? | |
| 1676 | drafting | auto return type for allocation and deallocation functions |
- | |
| 1677 | C++17 | Constant initialization via aggregate initialization | ? | |
| 1678 | NAD | Naming the type of an array of runtime bound | N/A | VLAs removed |
| 1679 | NAD | Range-based for and array of runtime bound |
N/A | VLAs removed |
| 1680 | drafting | Including <initializer_list> for range-based for |
- | |
| 1681 | C++14 | init-captures and nested lambdas | ? | |
| 1682 | open | Overly-restrictive rules on function templates as allocation functions | - | |
| 1683 | CD4 | Incorrect example after constexpr changes |
N/A | works as expected |
| 1684 | C++14 | Static constexpr member functions for non-literal classes |
7 | |
| 1685 | NAD | Value category of noexcept expression |
N/A | |
| 1686 | CD4 | Which variables are "explicitly declared const?" |
? | |
| 1687 | C++14 | Conversions of operands of built-in operators | ? | PR81789 |
| 1688 | NAD | Volatile constexpr variables |
Yes | |
| 1689 | C++14 | Syntactic nonterminal for operand of alignas |
? | |
| 1690 | C++14 | Associated namespace for local type | ? | |
| 1691 | C++14 | Argument-dependent lookup and opaque enumerations | ? | |
| 1692 | C++14 | Associated namespaces of doubly-nested classes | ? | |
| 1693 | C++14 | Superfluous semicolons in class definitions | Yes | PR113760 |
| 1694 | CD4 | Restriction on reference to temporary as a constant expression | ? | |
| 1695 | NAD | Lifetime extension via init-capture | ? | |
| 1696 | CD4 | Temporary lifetime and non-static data member initializers | No | PR94904 |
| 1697 | CD4 | Lifetime extension and copy elision | No | |
| 1698 | DRWP | Files ending in \ |
? | |
| 1699 | open | Does befriending a class befriend its friends? | - | |
| 1700 | NAD | Does the special rvalue-reference deduction apply to alias templates? | ? | |
| 1701 | drafting | Array vs sequence in object representation | ? | |
| 1702 | drafting | Rephrasing the definition of "anonymous union" | - | |
| 1703 | NAD | Language linkage of names of functions with internal linkage | ? | |
| 1704 | CD5 | Type checking in explicit instantiation of variable templates | ? | |
| 1705 | CD4 | Unclear specification of "more specialized" | ? | |
| 1706 | drafting | alignas pack expansion syntax |
- | |
| 1707 | C++14 | template in elaborated-type-specifier without nested-name-specifier |
? | |
| 1708 | CD4 | overly-strict requirements for names with C language linkage | ? | |
| 1709 | drafting | Stringizing raw string literals containing newline | - | |
| 1710 | C++17 | Missing template keyword in class-or-decltype |
10 | PR94057 |
| 1711 | CD6 | Missing specification of variable template partial specializations | ? | |
| 1712 | CD4 | constexpr variable template declarations |
? | |
| 1713 | dup | Linkage of variable template specializations | ? | |
| 1714 | NAD | odr-use of this from a local class |
? | |
| 1715 | CD4 | Access and inherited constructor templates | ? | |
| 1716 | C++14 | When are default arguments evaluated? | ? | |
| 1717 | C++14 | Missing specification of type of binary literal | ? | |
| 1718 | drafting | Macro invocation spanning end-of-file | - | |
| 1719 | CD4 | Layout compatibility and cv-qualification revisited | ? | |
| 1720 | NAD | Macro invocation in #include directive |
? | |
| 1721 | review | Diagnosing ODR violations for static data members | ? | |
| 1722 | CD4 | Should lambda to function pointer conversion function be noexcept? |
11 | PR90583 |
| 1723 | drafting | Multicharacter user-defined character literals | - | |
| 1724 | CD6 | Unclear rules for deduction failure | ? | |
| 1725 | NAD | Trailing return type with nested function declarator | ? | |
| 1726 | CD6 | Declarator operators and conversion function | No | PR79318 |
| 1727 | NAD | Type of a specialization of a variable template | ? | |
| 1728 | CD5 | Type of an explicit instantiation of a variable template | ? | |
| 1729 | CD6 | Matching declarations and definitions of variable templates | ? | |
| 1730 | drafting | Can a variable template have an unnamed type? | - | |
| 1731 | NAD | is_trivially_X and definitions of special member functions |
? | |
| 1732 | C++14 | Defining types in conditions and range-based for statements |
? | |
| 1733 | CD6 | Return type and value for operator= with ref-qualifier |
? | |
| 1734 | CD4 | Nontrivial deleted copy functions | No | PR96288 |
| 1735 | drafting | Out-of-range literals in user-defined-literals | - | |
| 1736 | CD4 | Inheriting constructor templates in a local class | ? | |
| 1737 | C++14 | Type dependence of call to a member of the current instantiation | ? | |
| 1738 | C++14 | Explicit instantiation/specialization of inheriting constructor templates | ? | |
| 1739 | C++14 | Conversion of floating point to enumeration | ? | |
| 1740 | C++14 | Disambiguation of noexcept |
? | |
| 1741 | C++14 | odr-use of class object in lvalue-to-rvalue conversion | ? | |
| 1742 | CD5 | using-declarations and scoped enumerators | - | |
| 1743 | NAD | init-captures in nested lambdas | N/A | |
| 1744 | CD4 | Unordered initialization for variable template specializations | ? | |
| 1745 | NAD | thread_local constexpr variable |
Yes | |
| 1746 | C++14 | Are volatile scalar types trivially copyable? | ? | |
| 1747 | C++14 | Constant initialization of reference to function | ? | |
| 1748 | CD4 | Placement new with a null pointer | ? | |
| 1749 | NAD | Confusing definition for constant initializer | ? | |
| 1750 | CD4 | "Argument" vs "parameter" | ? | |
| 1751 | CD4 | Non-trivial operations vs non-trivial initialization | ? | |
| 1752 | CD4 | Right-recursion in mem-initializer-list | ? | |
| 1753 | CD4 | decltype-specifier in nested-name-specifier of destructor | No | PR117450 |
| 1754 | NAD | Declaration of partial specialization of static data member template | ? | |
| 1755 | drafting | Out-of-class partial specializations of member templates | - | |
| 1756 | CD4 | Direct-list-initialization of a non-class object | ? | |
| 1757 | CD4 | Const integral subobjects | ? | |
| 1758 | CD4 | Explicit conversion in copy/move list initialization | ? | |
| 1759 | C++14 | UTF-8 code units in plain char |
? | |
| 1760 | C++14 | Access of member corresponding to init-capture | ? | |
| 1761 | NAD | Runtime check on size of automatic array | ? | |
| 1762 | C++14 | Reserved identifier used in literal-operator-id example | ? | |
| 1763 | open | Length mismatch in template type deduction | - | |
| 1764 | C++14 | Hiding of function from using-declaration by signature | ? | |
| 1765 | C++14 | Overflow of enumeration used as enumerator value | ? | |
| 1766 | CD4 | Values outside the range of the values of an enumeration | ? | |
| 1767 | C++14 | Scoped enumeration in a switch statement |
? | |
| 1768 | NAD | Zero-element array of runtime bound | ? | |
| 1769 | C++14 | Catching a base class of the exception object | ? | |
| 1770 | C++14 | Type matching of non-type template parameters and arguments | ? | |
| 1771 | CD6 | Restricted lookup in nested-name-specifier | ? | |
| 1772 | C++14 | __func__ in a lambda body |
? | |
| 1773 | C++14 | Out-of-lifetime lvalue-to-rvalue conversion | ? | |
| 1774 | CD4 | Discrepancy between subobject destruction and stack unwinding | ? | |
| 1775 | C++14 | Undefined behavior of line splice in raw string literal | ? | |
| 1776 | CD4 | Replacement of class objects containing reference members | ? | |
| 1777 | CD4 | Empty pack expansion in dynamic-exception-specification | ? | |
| 1778 | C++14 | exception-specification in explicitly-defaulted functions | ? | |
| 1779 | CD4 | Type dependency of __func__ |
? | |
| 1780 | CD4 | Explicit instantiation/specialization of generic lambda operator() |
No | PR69309 |
| 1781 | CD5 | Converting from nullptr_t to bool in overload resolution |
? | |
| 1782 | CD4 | Form of initialization for nullptr_t to bool conversion |
? | |
| 1783 | NAD | Why are virtual destructors non-trivial? | ? | |
| 1784 | C++17 | Concurrent execution during static local initialization | ? | |
| 1785 | NAD | Conflicting diagnostic requirements for template definitions | ? | |
| 1786 | C++14 | Effect of merging allocations on memory leakage | ? | |
| 1787 | C++14 | Uninitialized unsigned char values |
? | |
| 1788 | CD4 | Sized deallocation of array of non-class type | ? | |
| 1789 | open | Array reference vs array decay in overload resolution | - | |
| 1790 | open | Ellipsis following function parameter pack | - | |
| 1791 | CD4 | Incorrect restrictions on cv-qualifier-seq and ref-qualifier | ? | |
| 1792 | NAD | Incorrect example of explicit specialization of member enumeration | ? | |
| 1793 | CD4 | thread_local in explicit specializations |
? | |
| 1794 | C++17 | template keyword and alias templates |
Yes | resolved by CWG 1710 |
| 1795 | CD4 | Disambiguating original-namespace-definition and extension-namespace-definition | ? | |
| 1796 | CD4 | Is all-bits-zero for null characters a meaningful requirement? | ? | |
| 1797 | CD4 | Are all bit patterns of unsigned char distinct numbers? |
? | |
| 1798 | NAD | exception-specifications of template arguments | ? | |
| 1799 | CD4 | mutable and non-explicit const qualification |
? | |
| 1800 | CD4 | Pointer to member of nested anonymous union | ? | |
| 1801 | CD4 | Kind of expression referring to member of anonymous union | ? | |
| 1802 | CD4 | char16_t string literals and surrogate pairs |
? | |
| 1803 | CD5 | opaque-enum-declaration as member-declaration | ? | |
| 1804 | CD4 | Partial specialization and friendship | ? | |
| 1805 | CD4 | Conversions of array operands in conditional-expressions | ? | |
| 1806 | CD4 | Virtual bases and move-assignment | ? | |
| 1807 | CD4 | Order of destruction of array elements after an exception | ? | |
| 1808 | drafting | Constructor templates vs default constructors | - | |
| 1809 | CD4 | Narrowing and template argument deduction | ? | |
| 1810 | CD4 | Invalid ud-suffixes | ? | |
| 1811 | CD4 | Lookup of deallocation function in a virtual destructor definition | ? | |
| 1812 | C++17 | Omission of template in a typename-specifier |
Yes | resolved by CWG 1710 |
| 1813 | CD4 | Direct vs indirect bases in standard-layout classes | 10 | PR83374 |
| 1814 | CD4 | Default arguments in lambda-expressions | ? | |
| 1815 | CD4 | Lifetime extension in aggregate initialization | ? | |
| 1816 | CD4 | Unclear specification of bit-field values | ? | |
| 1817 | drafting | Linkage specifications and nested scopes | - | |
| 1818 | CD6 | Visibility and inherited language linkage | ? | |
| 1819 | CD4 | Acceptable scopes for definition of partial specialization | ? | |
| 1820 | CD6 | Qualified typedef names | ? | |
| 1821 | CD6 | Qualified redeclarations in a class member-specification | ? | |
| 1822 | CD6 | Lookup of parameter names in lambda-expressions | ? | |
| 1823 | CD4 | String literal uniqueness in inline functions | ? | |
| 1824 | CD4 | Completeness of return type vs point of instantiation | ? | |
| 1825 | C++17 | Partial ordering between variadic and non-variadic function templates | ? | |
| 1826 | NAD | const floating-point in constant expressions |
N/A | |
| 1827 | drafting | Reference binding with ambiguous conversions | - | |
| 1828 | CD6 | nested-name-specifier ambiguity | ? | |
| 1829 | CD6 | Dependent unnamed types | ? | |
| 1830 | CD4 | Repeated specifiers | ? | |
| 1831 | NAD | Explicitly vs implicitly deleted move constructors | ? | |
| 1832 | CD4 | Casting to incomplete enumeration | ? | |
| 1833 | NAD | friend declarations naming implicitly-declared member functions |
? | |
| 1834 | CD4 | Constant initialization binding a reference to an xvalue | ? | |
| 1835 | CD6 | Dependent member lookup before < |
? | PR88434 |
| 1836 | CD5 | Use of class type being defined in trailing-return-type | ? | |
| 1837 | CD6 | Use of this in friend and local class declarations |
? | |
| 1838 | CD4 | Definition via unqualified-id and using-declaration | ? | |
| 1839 | CD6 | Lookup of block-scope extern declarations |
? | PR86181 |
| 1840 | drafting | Non-deleted explicit specialization of deleted function template | - | |
| 1841 | CD6 | < following template injected-class-name |
? | |
| 1842 | open | Unevaluated operands and "carries a dependency" | ? | |
| 1843 | CD4 | Bit-field in conditional operator with throw operand |
? | |
| 1844 | open | Defining "immediate context" | - | |
| 1845 | drafting | Point of instantiation of a variable template specialization | - | |
| 1846 | CD4 | Declaring explicitly-defaulted implicitly-deleted functions | ? | |
| 1847 | CD4 | Clarifying compatibility during partial ordering | ? | |
| 1848 | CD4 | Parenthesized constructor and destructor declarators | ? | |
| 1849 | CD6 | Variable templates and the ODR | ? | |
| 1850 | CD4 | Differences between definition context and point of instantiation | ? | |
| 1851 | CD4 | decltype(auto) in new-expressions |
? | |
| 1852 | CD4 | Wording issues regarding decltype(auto) |
? | |
| 1853 | dup | Defining "allocated storage" | Dup of 2551 | |
| 1854 | drafting | Disallowing use of implicitly-deleted functions | - | PR86583 |
| 1855 | dup | Out-of-lifetime access to nonstatic data members | ? | |
| 1856 | open | Indirect nested classes of class templates | - | |
| 1857 | CD5 | Additional questions about bits | ? | |
| 1858 | CD4 | Comparing pointers to union members | ? | |
| 1859 | CD5 | UTF-16 in char16_t string literals |
? | |
| 1860 | C++17 | What is a "direct member?" | ? | |
| 1861 | CD4 | Values of a bit-field | ? | |
| 1862 | CD5 | Determining "corresponding members" for friendship | ? | |
| 1863 | CD4 | Requirements on thrown object type to support std::current_exception() |
? | |
| 1864 | NAD | List-initialization of array objects | N/A | |
| 1865 | CD4 | Pointer arithmetic and multi-level qualification conversions | ? | |
| 1866 | CD4 | Initializing variant members with non-trivial destructors | ? | |
| 1867 | NAD | Function/expression ambiguity with qualified parameter name | ? | |
| 1868 | drafting | Meaning of "placeholder type" | - | |
| 1869 | NAD | thread_local vs linkage-specifications |
N/A | test compiles |
| 1870 | CD4 | Contradictory wording about definitions vs explicit specialization/instantiation | ? | |
| 1871 | NAD | Non-identifier characters in ud-suffix | N/A | |
| 1872 | CD4 | Instantiations of constexpr templates that cannot appear in constant expressions |
? | |
| 1873 | CD4 | Protected member access from derived class friends | ? | |
| 1874 | CD4 | Type vs non-type template parameters with class keyword |
? | |
| 1875 | CD4 | Reordering declarations in class scope | ? | |
| 1876 | NAD | Preventing explicit specialization | N/A | |
| 1877 | CD4 | Return type deduction from return with no operand |
? | |
| 1878 | CD4 | operator auto template |
No | PR113523 |
| 1879 | NAD | Inadequate definition of alignment requirement | N/A | |
| 1880 | CD4 | When are parameter objects destroyed? | ? | |
| 1881 | CD4 | Standard-layout classes and unnamed bit-fields | No | PR91079 |
| 1882 | CD4 | Reserved names without library use | ? | |
| 1883 | drafting | Protected access to constructors in mem-initializers | - | |
| 1884 | CD6 | Unclear requirements for same-named external-linkage entities | ? | |
| 1885 | CD4 | Return value of a function is underspecified | ? | |
| 1886 | CD4 | Language linkage for main() |
? | |
| 1887 | CD4 | Problems with :: as nested-name-specifier |
? | |
| 1888 | CD4 | Implicitly-declared default constructors and explicit |
? | |
| 1889 | drafting | Unclear effect of #pragma on conformance |
- | |
| 1890 | drafting | Member type depending on definition of member function | - | |
| 1891 | CD4 | Move constructor/assignment for closure class | ? | |
| 1892 | CD4 | Use of auto in function type |
? | |
| 1893 | CD5 | Function-style cast with braced-init-lists and empty pack expansions | ? | |
| 1894 | CD6 | typedef-names and using-declarations | ? | |
| 1895 | CD4 | Deleted conversions in conditional operator operands | No | PR113791 |
| 1896 | CD6 | Repeated alias templates | ? | |
| 1897 | review | ODR vs alternative tokens | ? | |
| 1898 | CD6 | Use of "equivalent" in overload resolution | ? | |
| 1899 | CD4 | Value-dependent constant expressions | ? | |
| 1900 | CD6 | Do friend declarations count as "previous declarations"? |
? | |
| 1901 | drafting | punctuator referenced but not defined | - | |
| 1902 | CD4 | What makes a conversion "otherwise ill-formed"? | ? | |
| 1903 | CD4 | What declarations are introduced by a non-member using-declaration? | ? | |
| 1904 | NAD | Default template arguments for members of class templates | ? | |
| 1905 | NAD | Dependent types and injected-class-names | ? | |
| 1906 | NAD | Name lookup in member friend declaration |
? | PR84837 |
| 1907 | CD6 | using-declarations and default arguments | ? | |
| 1908 | CD6 | Dual destructor lookup and template-ids | ? | |
| 1909 | CD4 | Member class template with the same name as the class | ? | |
| 1910 | CD5 | "Shall" requirement applied to runtime behavior | ? | |
| 1911 | CD4 | constexpr constructor with non-literal base class |
? | |
| 1912 | CD5 | exception-specification of defaulted function | ? | |
| 1913 | CD5 | decltype((x)) in lambda-expressions |
? | |
| 1914 | extension | Duplicate standard attributes | 11 | |
| 1915 | open | Potentially-invoked destructors in non-throwing constructors | - | |
| 1916 | CD4 | "Same cv-unqualified type" | ? | |
| 1917 | NAD | decltype-qualified enumeration names | N/A | |
| 1918 | CD5 | friend templates with dependent scopes |
? | |
| 1919 | open | Overload resolution for ! with explicit conversion operator |
- | |
| 1920 | CD4 | Qualification mismatch in pseudo-destructor-name | ? | |
| 1921 | NAD | constexpr constructors and point of initialization of const variables |
N/A | |
| 1922 | CD4 | Injected class template names and default arguments | ? | |
| 1923 | NAD | Lvalues of type void |
N/A | |
| 1924 | review | Definition of "literal" and kinds of literals | ? | |
| 1925 | CD4 | Bit-field prvalues | ? | |
| 1926 | CD4 | Potential results of subscript operator | ? | |
| 1927 | dup | Lifetime of temporaries in init-captures | ? | |
| 1928 | NAD | Triviality of deleted special member functions | ? | |
| 1929 | CD4 | template keyword following namespace nested-name-specifier |
? | |
| 1930 | CD4 | init-declarator-list vs member-declarator-list | ? | |
| 1931 | CD5 | Default-constructible and copy-assignable closure types | ? | |
| 1932 | CD4 | Bit-field results of conditional operators | ? | |
| 1933 | NAD | Implementation limit for initializer-list elements | N/A | |
| 1934 | NAD | Relaxing exception-specification compatibility requirements | N/A | |
| 1935 | CD5 | Reuse of placement arguments in deallocation | - | |
| 1936 | CD6 | Dependent qualified-ids | ? | |
| 1937 | CD5 | Incomplete specification of function pointer from lambda | ? | |
| 1938 | CD5 | Should hosted/freestanding be implementation-defined? | ? | |
| 1939 | open | Argument conversions to nondeduced parameter types revisited | - | |
| 1940 | CD4 | static_assert in anonymous unions |
Yes | |
| 1941 | CD4 | SFINAE and inherited constructor default arguments | ? | |
| 1942 | CD4 | Incorrect reference to trailing-return-type | ? | |
| 1943 | CD5 | Unspecified meaning of "bit" | ? | |
| 1944 | open | New C incompatibilities | - | |
| 1945 | CD5 | Friend declarations naming members of class templates in non-templates | ? | |
| 1946 | CD4 | exception-specifications vs pointer dereference | ? | |
| 1947 | NAD | Digit separators following non-octal prefix | ? | |
| 1948 | NAD | exception-specification of replacement global new |
? | |
| 1949 | CD4 | "sequenced after" instead of "sequenced before" | ? | |
| 1950 | NAD | Restructuring description of ranks of conversion sequences | ? | |
| 1951 | CD4 | Cv-qualification and literal types | ? | |
| 1952 | CD4 | Constant expressions and library undefined behavior | ? | |
| 1953 | open | Data races and common initial sequence | - | |
| 1954 | DR | typeid null dereference check in subexpressions |
? | |
| 1955 | CD4 | #elif with invalid controlling expression |
? | |
| 1956 | CD4 | Reuse of storage of automatic variables | ? | |
| 1957 | NAD | decltype(auto) with direct-list-initialization |
N/A | |
| 1958 | CD4 | decltype(auto) with parenthesized initializer |
? | |
| 1959 | CD4 | Inadvertently inherited copy constructor | ? | |
| 1960 | NAD | Visibility of entity named in class-scope using-declaration | ? | |
| 1961 | C++17 | Potentially-concurrent actions within a signal handler | ? | |
| 1962 | open | Type of __func__ |
- | |
| 1963 | CD4 | Implementation-defined identifier characters | ? | |
| 1964 | NAD | opaque-enum-declaration in alias-declaration? | ? | |
| 1965 | drafting | Explicit casts to reference types | - | |
| 1966 | CD4 | Colon following enumeration elaborated-type-specifier | No | PR95093 |
| 1967 | CD4 | Temporary lifetime and move-elision | ? | |
| 1968 | NAD | Address of typeid in constant expressions |
? | |
| 1969 | CD6 | Missing exclusion of ~S as an ordinary function name |
- | |
| 1970 | NAD | Ambiguity resolution for (T())*x |
? | |
| 1971 | CD4 | Unclear disambiguation of destructor and operator~ |
? | |
| 1972 | CD6 | Identifier character restrictions in non-identifiers | - | |
| 1973 | DRWP | Which parameter-declaration-clause in a lambda-expression? | ? | |
| 1974 | NAD | Redundant specification of non-type typename-specifier | N/A | |
| 1975 | CD4 | Permissible declarations for exception-specifications | ? | |
| 1976 | NAD | Ambiguity of namespace-aliases | ? | |
| 1977 | drafting | Contradictory results of failed destructor lookup | - | |
| 1978 | CD4 | Redundant description of explicit constructor use | ? | |
| 1979 | drafting | Alias template specialization in template member definition | - | |
| 1980 | drafting | Equivalent but not functionally-equivalent redeclarations | - | PR87478 |
| 1981 | CD4 | Implicit contextual conversions and explicit |
? | |
| 1982 | NAD | Deduction extending parameter pack | ? | |
| 1983 | CD5 | Inappropriate use of virt-specifier | ? | |
| 1984 | NAD | Lossless narrowing conversions | ? | |
| 1985 | NAD | Unknown bound array member with brace-or-equal-initializer | ? | |
| 1986 | drafting | odr-use and delayed initialization | - | |
| 1987 | NAD | constexpr static data members across translation units |
? | |
| 1988 | CD4 | Ambiguity between dependent and non-dependent bases in implicit member access | ? | |
| 1989 | drafting | Insufficient restrictions on parameters of postfix operators | - | |
| 1990 | CD4 | Ambiguity due to optional decl-specifier-seq | ? | |
| 1991 | CD4 | Inheriting constructors vs default arguments | ? | |
| 1992 | CD4 | new (std::nothrow) int[N] can throw |
? | |
| 1993 | drafting | Use of template<> defining member of explicit specialization |
- | |
| 1994 | dup | Confusing wording regarding multiple template<> prefixes |
? | |
| 1995 | CD4 | exception-specifications and non-type template parameters | ? | |
| 1996 | drafting | Reference list-initialization ignores conversion functions | 14 | PR90390, PR113141 |
| 1997 | drafting | Placement new and previous initialization | - | |
| 1998 | NAD | Additional sources of xvalue expressions | N/A | |
| 1999 | CD4 | Representation of source characters as universal-character-names | ? | |
| 2000 | CD4 | header-name outside #include directive |
? | |
| 2001 | CD4 | non-directive is underspecified | ? | |
| 2002 | open | White space within preprocessing directives | - | |
| 2003 | drafting | Zero-argument macros incorrectly specified | - | |
| 2004 | CD4 | Unions with mutable members in constant expressions | ? | |
| 2005 | NAD | Incorrect constexpr reference initialization requirements |
? | |
| 2006 | CD4 | Cv-qualified void types |
? | |
| 2007 | CD6 | Argument-dependent lookup for operator= |
? | |
| 2008 | CD4 | Default template-arguments underspecified | ? | |
| 2009 | CD6 | Unclear specification of class scope | ? | |
| 2010 | CD4 | exception-specifications and conversion operators | ? | |
| 2011 | C++17 | Unclear effect of reference capture of reference | ? | |
| 2012 | CD4 | Lifetime of references | ? | |
| 2013 | drafting | Pointer subtraction in large array | - | |
| 2014 | NAD | Unneeded deallocation signatures | ? | |
| 2015 | CD4 | odr-use of deleted virtual functions | ? | |
| 2016 | CD4 | Confusing wording in description of conversion function | ? | |
| 2017 | CD4 | Flowing off end is not equivalent to no-expression return | ? | |
| 2018 | dup | Qualification conversion vs reference binding | Dup of 2352 | |
| 2019 | CD4 | Member references omitted from description of storage duration | ? | |
| 2020 | CD5 | Inadequate description of odr-use of implicitly-invoked functions | ? | |
| 2021 | dup | Function template redeclaration via alias template | ? | |
| 2022 | CD4 | Copy elision in constant expressions | ? | |
| 2023 | drafting | Composite reference result type of conditional operator | - | |
| 2024 | CD4 | Dependent types and unexpanded parameter packs | ? | |
| 2025 | dup | Declaration matching via alias templates | ? | |
| 2026 | CD4 | Zero-initialization and constexpr |
? | |
| 2027 | CD4 | Unclear requirements for multiple alignas specifiers |
? | |
| 2028 | drafting | Converting constructors in rvalue reference initialization | - | |
| 2029 | dup | Abstract class return type in decltype operand |
? | |
| 2030 | NAD | Access of injected-class-name with template arguments | ? | |
| 2031 | CD4 | Missing incompatibility for && |
? | |
| 2032 | CD4 | Default template-arguments of variable templates | 11 | PR96218 |
| 2033 | CD4 | Redundant restriction on partial specialization argument | ? | |
| 2034 | NAD | Deprecating uncaught_exception() |
? | |
| 2035 | CD3 | Multi-section example is confusing | ? | |
| 2036 | NAD | Refactoring parameters-and-qualifiers | ? | |
| 2037 | drafting | Alias templates and template declaration matching | - | |
| 2038 | CD4 | Document C++14 incompatibility of new braced deduction rule | ? | |
| 2039 | CD4 | Constant conversions to bool |
? | |
| 2040 | CD4 | trailing-return-type no longer ambiguous | ? | |
| 2041 | CD4 | Namespace for explicit class template specialization | ? | |
| 2042 | drafting | Exceptions and deallocation functions | - | |
| 2043 | drafting | Generalized template arguments and array-to-pointer decay | - | |
| 2044 | CD4 | decltype(auto) and void |
? | |
| 2045 | CD5 | "Identical" template parameter lists | ? | |
| 2046 | C++17 | Incomplete thread specifications | ? | |
| 2047 | CD4 | Coordinating "throws anything" specifications | ? | |
| 2048 | open | C-style casts that cast away constness vs static_cast |
- | |
| 2049 | DRWP | List initializer in non-type template default argument | ? | |
| 2050 | NAD | Consolidate specification of linkage | ? | |
| 2051 | CD5 | Simplifying alias rules | ? | |
| 2052 | CD4 | Template argument deduction vs overloaded operators | ? | |
| 2053 | C++20 | auto in non-generic lambdas |
? | |
| 2054 | DRWP | Missing description of class SFINAE | ? | |
| 2055 | drafting | Explicitly-specified non-deduced parameter packs | - | |
| 2056 | drafting | Member function calls in partially-initialized class objects | - | |
| 2057 | drafting | Template template arguments with default arguments | - | |
| 2058 | CD6 | More errors from internal-linkage namespaces | ? | |
| 2059 | CD5 | Linkage and deduced return types | ? | |
| 2060 | NAD | Deduced return type for explicit specialization | ? | |
| 2061 | CD4 | Inline namespace after simplifications | ? | |
| 2062 | CD6 | Class template redeclaration requirements | ? | |
| 2063 | CD4 | Type/nontype hiding in class scope | Yes | |
| 2064 | CD4 | Conflicting specifications for dependent decltype-specifiers | ? | |
| 2065 | CD6 | Current instantiation of a partial specialization | ? | |
| 2066 | CD4 | Does type-dependent imply value-dependent? | Yes | |
| 2067 | open | Generated variadic templates requiring empty pack | - | |
| 2068 | CD4 | When can/must a defaulted virtual destructor be defined? | ? | |
| 2069 | CD4 | Do destructors have names? | ? | |
| 2070 | CD6 | using-declaration with dependent nested-name-specifier | ? | |
| 2071 | CD4 | typedef with no declarator |
? | |
| 2072 | C++23 | Default argument instantiation for member functions of templates | ? | |
| 2073 | drafting | Allocating memory for exception objects | - | |
| 2074 | drafting | Type-dependence of local class of function template | - | |
| 2075 | CD4 | Passing short initializer lists to array reference parameters | ? | |
| 2076 | CD4 | List-initialization of arguments for constructor parameters | ? | |
| 2077 | drafting | Overload resolution and invalid rvalue-reference initialization | - | |
| 2078 | NAD | Name lookup of mem-initilizer-id | ? | |
| 2079 | CD4 | [[ appearing in a balanced-token-seq |
8 | |
| 2080 | CD5 | Example with empty anonymous union member | ? | |
| 2081 | CD5 | Deduced return type in redeclaration or specialization of function template | ? | |
| 2082 | CD4 | Referring to parameters in unevaluated operands of default arguments | 11 | PR95016 |
| 2083 | CD5 | Incorrect cases of odr-use | ? | |
| 2084 | CD4 | NSDMIs and deleted union default constructors | ? | |
| 2085 | CD4 | Invalid example of adding special member function via default argument | ? | |
| 2086 | drafting | Reference odr-use vs implicit capture | - | |
| 2087 | NAD | Left shift of negative value by zero bits | N/A | |
| 2088 | CD5 | Late tiebreakers in partial ordering | ? | |
| 2089 | drafting | Restricting selection of builtin overloaded operators | - | |
| 2090 | drafting | Dependency via non-dependent base class | - | |
| 2091 | CD4 | Deducing reference non-type template arguments | ? | |
| 2092 | CD5 | Deduction failure and overload resolution | ? | |
| 2093 | CD4 | Qualification conversion for pointer-to-member handler matching | ? | |
| 2094 | C++17 | Trivial copy/move constructor for class with volatile member | 10 | |
| 2095 | CD4 | Capturing rvalue references to functions by copy | ? | |
| 2096 | CD4 | Constraints on literal unions | 10 | |
| 2097 | extension | Lambdas and noreturn attribute |
? | |
| 2098 | CD4 | Is uncaught_exceptions() per-thread? |
? | |
| 2099 | CD4 | Inferring the bound of an array static data member | ? | |
| 2100 | C++17 | Value-dependent address of static data member of class template | ? | |
| 2101 | CD4 | Incorrect description of type- and value-dependence | ? | |
| 2102 | DRWP | Constructor checking in new-expression | ? | |
| 2103 | CD5 | Lvalue-to-rvalue conversion is irrelevant in odr-use of a reference | ? | dup of 2083 |
| 2104 | CD4 | Internal-linkage constexpr references and ODR requirements |
? | |
| 2105 | open | When do the arguments for a parameter pack end? | - | |
| 2106 | CD4 | Unclear restrictions on use of function-type template arguments | ? | |
| 2107 | CD4 | Lifetime of temporaries for default arguments in array copying | ? | |
| 2108 | drafting | Conversions to non-class prvalues in reference initialization | - | |
| 2109 | CD4 | Value dependence underspecified | Yes | |
| 2110 | drafting | Overload resolution for base class conversion and reference/non-reference | - | |
| 2111 | NAD | Array temporaries in reference binding | N/A | |
| 2112 | CD5 | new auto{x} |
? | |
| 2113 | CD4 | Incompete specification of types for declarators | ? | |
| 2114 | CD3 | Missing description of incompatibility from aggregate NSDMIs | ? | |
| 2115 | drafting | Order of implicit destruction vs release of automatic storage | - | |
| 2116 | C++17 | Direct or copy initialization for omitted aggregate initializers | ? | |
| 2117 | drafting | Explicit specializations and constexpr function templates |
- | |
| 2118 | open | Stateful metaprogramming via friend injection | - | |
| 2119 | NAD | Disambiguation of multi-level covariant return type | N/A | |
| 2120 | CD4 | Array as first non-static data member in standard-layout class | No | PR91081 |
| 2121 | CD6 | More flexible lambda syntax | ? | |
| 2122 | CD4 | Glvalues of void type |
? | |
| 2123 | open | Omitted constant initialization of local static variables | - | |
| 2124 | CD4 | Signature of constructor template | ? | |
| 2125 | NAD | Copy elision and comma operator | N/A | |
| 2126 | C++20 | Lifetime-extended temporaries in constant expressions | partial | PR100976, PR101588 |
| 2127 | drafting | Partial specialization and nullptr | - | |
| 2128 | drafting | Imprecise rule for reference member initializer | - | |
| 2129 | CD4 | Non-object prvalues and constant expressions | ? | |
| 2130 | CD4 | Over-aligned types in new-expressions | ? | |
| 2131 | drafting | Ambiguity with opaque-enum-declaration | - | |
| 2132 | NAD | Deprecated default generated copy constructors | N/A | |
| 2133 | CD5 | Converting std::nullptr_t to bool |
? | |
| 2134 | NAD | Objectless references to non-static member functions | ? | |
| 2135 | NAD | mem-initializers for virtual bases of abstract classes | ? | |
| 2136 | NAD | Argument-dependent lookup and initializer lists | ? | |
| 2137 | CD4 | List-initialization from object of same type | ? | |
| 2138 | NAD | Explicit member specialization vs implicit instantiation | ? | |
| 2139 | NAD | Floating-point requirements for integer representation | N/A | |
| 2140 | CD4 | Lvalue-to-rvalue conversion of std::nullptr_t |
? | |
| 2141 | CD4 | Ambiguity in new-expression with elaborated-type-specifier | ? | PR50169 |
| 2142 | NAD | Missing definition of associated classes and namespaces | ? | |
| 2143 | C++17 | Value-dependency via injected-class-name | ? | |
| 2144 | drafting | Function/variable declaration ambiguity | - | |
| 2145 | CD4 | Parenthesized declarator in function definition | ? | |
| 2146 | CD4 | Scalar object vs memory location in definition of "unsequenced" | ? | |
| 2147 | CD4 | Initializer-list arguments and pack deduction | ? | |
| 2148 | drafting | Thread storage duration and order of initialization | - | |
| 2149 | drafting | Brace elision and array length deduction | - | |
| 2150 | CD3 | Initializer list array lifetime | ? | |
| 2151 | CD4 | Exception object is not created | ? | |
| 2152 | NAD | Can an alternative token be used as a ud-suffix? | ? | |
| 2153 | CD4 | pure-specifier in friend declaration | Yes | |
| 2154 | CD4 | Ambiguity of pure-specifier | ? | |
| 2155 | C++17 | Defining classes and enumerations via using-declarations | ? | |
| 2156 | CD4 | Definition of enumeration declared by using-declaration | ? | |
| 2157 | CD4 | Further disambiguation of enumeration elaborated-type-specifier | ? | |
| 2158 | drafting | Polymorphic behavior during destruction | - | |
| 2159 | NAD | Lambda capture and local thread_local variables |
? | |
| 2160 | open | Issues with partial ordering | - | |
| 2161 | NAD | Explicit instantiation declaration and "preceding initialization" | ? | |
| 2162 | CD3 | Capturing this by reference |
? | |
| 2163 | CD4 | Labels in constexpr functions |
? | |
| 2164 | CD5 | Name hiding and using-directives | ? | |
| 2165 | CD6 | Namespaces, declarative regions, and translation units | ? | |
| 2166 | drafting | Unclear meaning of "undefined constexpr function" |
- | |
| 2167 | CD4 | Non-member references with lifetimes within the current evaluation | ? | |
| 2168 | open | Narrowing conversions and +/- infinity | - | |
| 2169 | open | Narrowing conversions and overload resolution | ? | |
| 2170 | CD5 | Unclear definition of odr-use for arrays | ? | dup of 2083 |
| 2171 | CD4 | Triviality of copy constructor with less-qualified parameter | ? | |
| 2172 | drafting | Multiple exceptions with one exception object | - | |
| 2173 | open | Partial specialization with non-deduced contexts | - | |
| 2174 | C++17 | Unclear rules for friend definitions in templates | ? | |
| 2175 | CD4 | Ambiguity with attribute in conversion operator declaration | ? | |
| 2176 | CD4 | Destroying the returned object when a destructor throws | ? | |
| 2177 | CD5 | Placement operator delete and parameter copies |
? | |
| 2178 | NAD | Substitution of dependent template arguments in default template arguments | ? | |
| 2179 | drafting | Required diagnostic for partial specialization after first use | - | |
| 2180 | CD4 | Virtual bases in destructors and defaulted assignment operators | ? | |
| 2181 | drafting | Normative requirements in an informative Annex | - | |
| 2182 | drafting | Pointer arithmetic in array-like containers | - | |
| 2183 | NAD | Problems in description of potential exceptions | ? | |
| 2184 | CD4 | Missing C compatibility entry for decrement of bool |
? | |
| 2185 | CD6 | Cv-qualified numeric types | ? | |
| 2186 | drafting | Unclear point that "preceding initialization" must precede | - | |
| 2187 | drafting | Protected members and access via qualified-id | - | |
| 2188 | open | empty-declaration grammar ambiguity | - | |
| 2189 | open | Surrogate call template | - | PR90848 |
| 2190 | open | Insufficient specification of __has_include |
- | |
| 2191 | C++17 | Incorrect result for noexcept(typeid(v)) |
? | |
| 2192 | open | Constant expressions and order-of-eval undefined behavior | - | |
| 2193 | NAD | numeric_limits<int>::radix and digits |
? | |
| 2194 | drafting | Impossible case in list initialization | - | |
| 2195 | open | Unsolicited reading of trailing volatile members | - | |
| 2196 | C++17 | Zero-initialization with virtual base classes | ? | |
| 2197 | C++17 | Overload resolution and deleted special member functions | ? | |
| 2198 | C++17 | Linkage of enumerators | ? | |
| 2199 | CD6 | Typedefs and tags | ? | |
| 2200 | NAD | Conversions in template argument deduction | ? | |
| 2201 | C++17 | Cv-qualification of array types | ? | |
| 2202 | drafting | When does default argument instantiation occur? | - | |
| 2203 | drafting | Defaulted copy/move constructors and UDCs | - | |
| 2204 | NAD | Naming delegated constructors | ? | |
| 2205 | C++17 | Restrictions on use of alignas |
? | |
| 2206 | C++17 | Composite type of object and function pointers | ? | |
| 2207 | CD5 | Alignment of allocation function return value | ? | |
| 2208 | NAD | static_assert-declaration does not declare a member | ? | |
| 2209 | NAD | Destruction of constructed array elements | ? | |
| 2210 | NAD | Principal/target constructor confusion | ? | |
| 2211 | C++17 | Hiding by lambda captures and parameters | ? | |
| 2212 | CD5 | Typedef changing linkage after use | ? | |
| 2213 | CD6 | Forward declaration of partial specializations | ? | |
| 2214 | C++17 | Missing requirement on representation of integer values | ? | |
| 2215 | C++17 | Redundant description of language linkage in function call | ? | |
| 2216 | NAD | Exception specifications in unevaluated contexts | ? | |
| 2217 | NAD | constexpr constructors for non-literal types |
? | |
| 2218 | C++17 | Ambiguity and namespace aliases | ? | |
| 2219 | drafting | Dynamically-unreachable handlers | - | |
| 2220 | C++17 | Hiding index variable in range-based for |
? | |
| 2221 | CD6 | Copying volatile objects | ? | |
| 2222 | drafting | Additional contexts where instantiation is not required | - | |
| 2223 | drafting | Multiple alignas specifiers |
- | |
| 2224 | C++17 | Member subobjects and base-class casts | ? | |
| 2225 | NAD | reinterpret_cast to same floating-point type |
N/A | |
| 2226 | CD5 | Xvalues vs lvalues in conditional expressions | ? | |
| 2227 | CD5 | Destructor access and default member initializers | ? | |
| 2228 | open | Ambiguity resolution for cast to function type | - | |
| 2229 | CD5 | Volatile unnamed bit-fields | ? | |
| 2230 | NAD | Linkage of extern "C" function in unnamed namespace |
? | |
| 2231 | NAD | Class member access to static data member template | N/A | |
| 2232 | open | thread_local anonymous unions |
- | |
| 2233 | CD5 | Function parameter packs following default arguments | ? | |
| 2234 | CD5 | Missing rules for simple-template-id as class-name | ? | |
| 2235 | CD5 | Partial ordering and non-dependent types | 11 | |
| 2236 | drafting | When is an alias template specialization dependent? | - | |
| 2237 | CD5 | Can a template-id name a constructor? | 11 (C++20 only) | PR94415 |
| 2238 | NAD | Contradictory alignment requirements for allocation | ? | |
| 2239 | NAD | Sized deallocation with a trivial destructor | N/A | |
| 2240 | NAD | this is not odr-used in a constant expression |
N/A | |
| 2241 | CD5 | Overload resolution is not invoked with a single function | ? | |
| 2242 | C++23 | ODR violation with constant initialization possibly omitted | ? | |
| 2243 | drafting | Incorrect use of implicit conversion sequence | - | |
| 2244 | open | Base class access in aggregate initialization | - | PR84884 |
| 2245 | drafting | Point of instantiation of incomplete class template | - | |
| 2246 | drafting | Access of indirect virtual base class constructors | - | |
| 2247 | C++17 | Lambda capture and variable argument list | ? | |
| 2248 | C++17 | Problems with sized delete | ? | |
| 2249 | CD5 | identifiers and id-expressions | ? | |
| 2250 | open | Implicit instantiation, destruction, and TUs | - | |
| 2251 | C++17 | Unreachable enumeration list-initialization | ? | |
| 2252 | DRWP | Enumeration list-initialization from the same type | ? | |
| 2253 | CD5 | Unnamed bit-fields and zero-initialization | ? | |
| 2254 | CD5 | Standard-layout classes and bit-fields | ? | |
| 2255 | CD5 | Instantiated static data member templates | ? | |
| 2256 | CD5 | Lifetime of trivially-destructible objects | No | PR103091 |
| 2257 | CD5 | Lifetime extension of references vs exceptions | ? | |
| 2258 | open | Storage deallocation during period of destruction | - | |
| 2259 | C++17 | Unclear context describing ambiguity | ? | |
| 2260 | CD5 | Explicit specializations of deleted member functions | ? | |
| 2261 | extension | Explicit instantiation of in-class friend definition |
? | |
| 2262 | C++17 | Attributes for asm-definition | 14 | PR110734 |
| 2263 | drafting | Default argument instantiation for friends |
- | |
| 2264 | drafting | Memberwise copying with indeterminate value | - | |
| 2265 | drafting | Delayed pack expansion and member redeclarations | - | |
| 2266 | CD5 | Has dependent type vs is type-dependent | Yes | |
| 2267 | CD5 | Copy-initialization of temporary in reference direct-initialization | Yes | |
| 2268 | C++17 | Unions with mutable members in constant expressions revisited | ? | |
| 2269 | dup | Additional recursive references in aggregate DMIs | ? | |
| 2270 | NAD | Non-inline functions and explicit instantiation declarations | N/A | |
| 2271 | C++17 | Aliasing this |
? | |
| 2272 | C++17 | Implicit initialization of aggregate members of reference type | ? | |
| 2273 | CD5 | Inheriting constructors vs implicit default constructor | ? | |
| 2274 | NAD | Generic lambda capture vs constexpr if | N/A | |
| 2275 | drafting | Type-dependence of function template | - | |
| 2276 | C++17 | Dependent noexcept and function type-dependence |
? | |
| 2277 | CD5 | Ambiguity inheriting constructors with default arguments | ? | |
| 2278 | CD5 | Copy elision in constant expressions reconsidered | ? | |
| 2279 | NAD | Multiple attribute-specifiers in one attribute-list | ? | |
| 2280 | C++20 | Matching a usual deallocation function with placement new | ? | |
| 2281 | drafting | Consistency of aligned operator delete replacement |
- | |
| 2282 | C++20 | Consistency with mismatched aligned/non-over-aligned allocation/deallocation functions | ? | |
| 2283 | drafting | Missing complete type requirements | - | |
| 2284 | open | Sequencing of braced-init-list arguments | - | |
| 2285 | CD5 | Issues with structured bindings | ? | |
| 2286 | NAD | Assignment evaluation order | ? | |
| 2287 | CD5 | Pointer-interconvertibility in non-standard-layout unions | ? | |
| 2288 | NAD | Contradictory optionality in simple-declaration | N/A | |
| 2289 | CD5 | Uniqueness of structured binding names | 11 | PR94553 |
| 2290 | CD5 | Unclear specification for overload resolution and deleted special member functions | ? | |
| 2291 | dup | Implicit conversion sequences in non-call contexts | ? | |
| 2292 | CD5 | simple-template-id is ambiguous between class-name and type-name | ? | |
| 2293 | CD5 | Requirements for simple-template-id used as a class-name | ? | |
| 2294 | CD5 | Dependent auto static data members |
? | |
| 2295 | CD5 | Aggregates with deleted defaulted constructors | ? | |
| 2296 | open | Are default argument instantiation failures in the "immediate context"? | - | |
| 2297 | open | Unclear specification of atomic operations | - | |
| 2298 | open | Actions and expression evaluation | - | |
| 2299 | CD5 | constexpr vararg functions |
? | |
| 2300 | CD5 | Lambdas in multiple definitions | ? | |
| 2301 | open | Value-initialization and constexpr constructor evaluation | - | |
| 2302 | NAD | Address comparison between different member subobjects | ? | |
| 2303 | CD5 | Partial ordering and recursive variadic inheritance | 11 | PR97453 |
| 2304 | NAD | Incomplete type vs overload resolution | ? | |
| 2305 | CD5 | Explicit instantiation of constexpr or inline variable template | ? | |
| 2306 | NAD | Nested friend templates of class templates | N/A | |
| 2307 | CD5 | Unclear definition of "equivalent to a nontype template parameter" | ? | |
| 2308 | NAD | Structured bindings and lambda capture | ? | |
| 2309 | CD5 | Restrictions on nested statements within constexpr functions |
? | |
| 2310 | CD5 | Type completeness and derived-to-base pointer conversions | No | PR94302 |
| 2311 | open | Missed case for guaranteed copy elision | - | |
| 2312 | CD6 | Structured bindings and mutable |
? | |
| 2313 | CD5 | Redeclaration of structured binding reference variables | ? | |
| 2314 | dup | Structured bindings and lambda capture | ? | |
| 2315 | CD5 | What is the "corresponding special member" of a variant member? | ? | |
| 2316 | drafting | Simplifying class conversions in conditional expressions | - | |
| 2317 | CD5 | Self-referential default member initializers | ? | |
| 2318 | CD5 | Nondeduced contexts in deduction from a braced-init-list | ? | |
| 2319 | drafting | Nested brace initialization from same type | - | |
| 2320 | extension | constexpr if and boolean conversions |
? | |
| 2321 | CD5 | Conditional operator and cv-qualified class prvalues | ? | |
| 2322 | CD5 | Substitution failure and lexical order | ? | |
| 2323 | C++20 | Expunge POD | ? | |
| 2324 | drafting | Size of base class subobject | - | |
| 2325 | drafting | std::launder and reuse of character buffers |
- | |
| 2326 | dup | Type deduction with initializer list containing ambiguous functions | ? | |
| 2327 | drafting | Copy elision for direct-initialization with a conversion function | - | |
| 2328 | drafting | Unclear presentation style of template argument deduction rules | - | |
| 2329 | drafting | Virtual base classes and generated assignment operators | - | |
| 2330 | CD5 | Missing references to variable templates | ? | |
| 2331 | CD6 | Redundancy in description of class scope | ? | |
| 2332 | CD5 | template-name as simple-type-name vs injected-class-name | ? | |
| 2333 | CD6 | Escape sequences in UTF-8 character literals | ? | |
| 2334 | open | Creation of objects by typeid |
- | |
| 2335 | drafting | Deduced return types vs member types | - | |
| 2336 | CD5 | Destructor characteristics vs potentially-constructed subobjects | ? | |
| 2337 | open | Incorrect implication of logic ladder for conversion sequence tiebreakers | - | |
| 2338 | CD5 | Undefined behavior converting to short enums with fixed underlying types | ? | |
| 2339 | CD5 | Underspecified template arguments in structured bindings | ? | |
| 2340 | open | Reference collapsing and structured bindings | - | |
| 2341 | CD5 | Structured bindings with static storage duration | ? | |
| 2342 | CD5 | Reference reinterpret_cast and pointer-interconvertibility |
? | |
| 2343 | C++20 | void* non-type template parameters |
? | |
| 2344 | NAD | Redeclaration of names in init-statements | N/A | |
| 2345 | CD5 | Jumping across initializers in init-statements and conditions | Yes | |
| 2346 | CD5 | Local variables in default arguments | ? | |
| 2347 | C++20 | Passing short scoped enumerations to ellipsis | ? | |
| 2348 | NAD | Non-templated constexpr if |
N/A | |
| 2349 | NAD | Class/enumeration names vs conditions | ? | |
| 2350 | NAD | Forwarding references and deduction guides | N/A | |
| 2351 | CD5 | void{} |
12 | PR102820 |
| 2352 | CD5 | Similar types and reference binding | 10 | PR91844 |
| 2353 | CD5 | Potential results of a member access expression for a static data member | ? | |
| 2354 | CD5 | Extended alignment and object representation | ? | |
| 2355 | CD6 | Deducing noexcept-specifiers | 12 | PR92434 |
| 2356 | CD5 | Base class copy and move constructors should not be inherited | ? | PR95849 |
| 2357 | NAD | Lookup in member function declarations | N/A | |
| 2358 | CD5 | Explicit capture of value | ? | |
| 2359 | CD5 | Unintended copy initialization with designated initializers | 14 | PR91319 |
| 2360 | CD5 | [[maybe_unused]] and structured bindings |
? | |
| 2361 | open | Unclear description of longjmp undefined behavior |
- | |
| 2362 | open | __func__ should be constexpr |
- | |
| 2363 | NAD | Opaque enumeration friend declarations | N/A | |
| 2364 | NAD | Constant expressions, aggregate initialization, and modifications | N/A | |
| 2365 | CD5 | Confusing specification for dynamic_cast |
? | |
| 2366 | CD5 | Can default initialization be constant initialization? | ? | |
| 2367 | NAD | Lambdas in default arguments vs the ODR | N/A | |
| 2368 | CD5 | Differences in relational and three-way constant comparisons | ? | |
| 2369 | CD6 | Ordering between constraints and substitution | 11 | |
| 2370 | CD6 | friend declarations of namespace-scope functions |
? | |
| 2371 | CD5 | Use of the English term "attributes" is confusing | ? | |
| 2372 | CD5 | Incorrect matching rules for block-scope extern declarations |
? | |
| 2373 | CD5 | Incorrect handling of static member function templates in partial ordering | ? | |
| 2374 | C++20 | Overly permissive specification of enum direct-list-initialization |
12 | |
| 2375 | NAD | Multiple redeclarations of constexpr static data members |
? | |
| 2376 | CD5 | Class template argument deduction with array declarator | ? | |
| 2377 | NAD | Explicit copy constructor vs function viability | ? | |
| 2378 | C++20 | Inconsistent grammar for reference init-capture of pack | 10 | PR91847 |
| 2379 | CD5 | Missing prohibition against constexpr in friend declaration |
? | |
| 2380 | CD5 | capture-default makes too many references odr-usable | ? | |
| 2381 | CD5 | Composite pointer type of pointers to plain and noexcept member functions | ? | |
| 2382 | CD5 | Array allocation overhead for non-allocating placement new |
? | |
| 2383 | NAD | Variadic member functions of variadic class templates | N/A | |
| 2384 | CD5 | Conversion function templates and qualification conversions | ? | |
| 2385 | CD5 | Lookup for conversion-function-ids | ? | |
| 2386 | CD5 | tuple_size requirements for structured binding | 14 | PR110216 |
| 2387 | CD5 | Linkage of const-qualified variable template | 15 | PR109126 |
| 2388 | NAD | Applicability of contract-attribute-specifiers | Yes | contracts removed |
| 2389 | CD6 | Agreement of deduced and explicitly-specified variable types | No | PR115266 |
| 2390 | CD5 | Is the argument of __has_cpp_attribute macro-expanded? |
? | |
| 2391 | dup | Additional template parameters following pack expansion | ? | |
| 2392 | C++23 | new-expression size check and constant evaluation | ? | |
| 2393 | NAD | Pseudo-destructors and object lifetime | N/A | |
| 2394 | CD5 | Const-default-constructible for members | ? | |
| 2395 | drafting | Parameters following a pack expansion | - | |
| 2396 | CD6 | Lookup of names in complex conversion-type-ids | ? | |
| 2397 | CD6 | auto specifier for pointers and references to arrays |
12 | PR100975 |
| 2398 | drafting | Template template parameter matching and deduction | - | |
| 2399 | CD5 | Unclear referent of "expression" in assignment-expression | ? | |
| 2400 | CD5 | Constexpr virtual functions and temporary objects | ? | |
| 2401 | drafting | Array decay vs prohibition of subobject non-type arguments | - | |
| 2402 | CD6 | When is the restriction to a single c-char in a Unicode literal enforced? | ? | |
| 2403 | drafting | Temporary materialization and base/member initialization | - | git |
| 2404 | CD5 | [[no_unique_address]] and allocation order |
? | |
| 2405 | CD6 | Additional type-dependent expressions | ? | |
| 2406 | CD5 | [[fallthrough]] attribute and iteration statements |
14 | PR107571 |
| 2407 | C++23 | Missing entry in Annex C for defaulted comparison operators | ? | |
| 2408 | NAD | Temporaries and previously-initialized elements in aggregate initialization | N/A | |
| 2409 | drafting | Explicit specializations of constexpr static data members | - | |
| 2410 | C++23 | Implicit calls of immediate functions | ? | |
| 2411 | C++20 | Comparison of pointers to members in template non-type arguments | ? | |
| 2412 | review | SFINAE vs undeduced placeholder type | ? | |
| 2413 | CD6 | typename in conversion-function-ids |
10 | |
| 2414 | C++20 | Unclear results if both member and friend operator<=> are declared |
? | |
| 2415 | NAD | using-declarations vs copy assignment operators | ? | |
| 2416 | C++20 | Explicit specializations vs constexpr and consteval |
? | |
| 2417 | open | Explicit instantiation and exception specifications | - | |
| 2418 | CD5 | Missing cases in definition of "usable in constant expressions" | ? | |
| 2419 | C++20 | Loss of generality treating pointers to objects as one-element arrays | ? | |
| 2420 | dup | Exception specifications in explicit instantiation | - | |
| 2421 | drafting | Explicit instantiation of constrained member functions | - | |
| 2422 | C++20 | Incorrect grammar for deduction-guide | ? | |
| 2423 | NAD | Typedefs, names, and entities | N/A | |
| 2424 | C++20 | constexpr initialization requirements for variant members |
? | |
| 2425 | open | Confusing wording for deduction from a type | - | |
| 2426 | C++20 | Reference to destructor that cannot be invoked | ? | |
| 2427 | C++20 | Deprecation of volatile operands and unevaluated contexts | ? | |
| 2428 | C++23 | Deprecating a concept | 13 | |
| 2429 | C++20 | Initialization of thread_local variables referenced by lambdas |
? | |
| 2430 | C++20 | Completeness of return and parameter types of member functions | ? | |
| 2431 | C++20 | Full-expressions and temporaries bound to references | ? | |
| 2432 | C++20 | Return types for defaulted <=> |
? | |
| 2433 | C++20 | Variable templates in the ODR | ? | |
| 2434 | review | Mandatory copy elision vs non-class objects | ? | |
| 2435 | open | Alias template specializations | - | |
| 2436 | C++20 | Copy semantics of coroutine parameters | ? | |
| 2437 | C++20 | Conversion of std::strong_ordering in a defaulted operator<=> |
? | |
| 2438 | open | Problems in the specification of qualification conversions | - | |
| 2439 | C++20 | Undefined term in definition of "usable in constant expressions" | Yes | |
| 2440 | C++23 | Allocation in core constant expressions | ? | |
| 2441 | C++20 | Inline function parameters | Yes | |
| 2442 | C++20 | Incorrect requirement for default arguments | ? | |
| 2443 | C++23 | Meaningless template exports | ? | |
| 2444 | drafting | Constant expressions in initialization odr-use | - | |
| 2445 | C++20 | Partial ordering with rewritten candidates | ? | |
| 2446 | C++20 | Questionable type-dependency of concept-ids | 12 | |
| 2447 | C++20 | Unintended description of abbreviated function templates | ? | |
| 2448 | CD6 | Cv-qualification of arithmetic types and deprecation of volatile | ? | |
| 2449 | extension | Thunks as an implementation technique for pointers to virtual functions | ? | |
| 2450 | DRWP | braced-init-list as a template-argument | 11 | |
| 2451 | C++23 | promise.unhandled_exception() and final suspend point |
? | |
| 2452 | CD6 | Flowing off the end of a coroutine | ? | |
| 2453 | NAD | Deduced return types and coroutine lambdas | N/A | |
| 2454 | NAD | Tail recursion and coroutine symmetric transfer | N/A | |
| 2455 | CD6 | Concatenation of string literals vs translation phases 5 and 6 | ? | |
| 2456 | open | Viable user-defined conversions in converted constant expressions | - | |
| 2457 | CD6 | Unexpanded parameter packs don't make a function type dependent | ? | |
| 2458 | CD6 | Value category of expressions denoting non-static member functions | ? | |
| 2459 | DRWP | Template parameter initialization | ? | PR113800 |
| 2460 | CD6 | C language linkage and constrained non-template friends | ? | |
| 2461 | CD6 | Diagnosing non-bool type constraints |
Yes | |
| 2462 | drafting | Problems with the omission of the typename keyword |
- | |
| 2463 | open | Trivial copyability and unions with non-trivial members | - | |
| 2464 | CD6 | Constexpr launder and unions | ? | |
| 2465 | CD6 | Coroutine parameters passed to a promise constructor | ? | |
| 2466 | CD6 | co_await should be a single evaluation |
? | |
| 2467 | drafting | CTAD for alias templates and the deducible check | - | |
| 2468 | drafting | Omission of the typename keyword in a member template parameter list |
- | |
| 2469 | drafting | Implicit object creation vs constant expressions | - | |
| 2470 | CD6 | Multiple array objects providing storage for one object | ? | |
| 2471 | drafting | Nested class template argument deduction | - | |
| 2472 | NAD | Value categories in await-expressions | N/A | |
| 2473 | drafting | Parentheses in pseudo-destructor calls | - | |
| 2474 | CD6 | Cv-qualification and deletion | ? | |
| 2475 | C++23 | Object declarations of type cv void |
Yes | |
| 2476 | DR | placeholder-type-specifiers and function declarators | ? | |
| 2477 | CD6 | Defaulted vs deleted copy constructors/assignment operators | ? | |
| 2478 | C++23 | Properties of explicit specializations of implicitly-instantiated class templates | ? | |
| 2479 | CD6 | Missing specifications for consteval and constinit |
Yes | |
| 2480 | drafting | Lookup for enumerators in modules | - | |
| 2481 | CD6 | Cv-qualification of temporary to which a reference is bound | Yes | PR100976 |
| 2482 | CD6 | bit_cast and indeterminate values |
? | |
| 2483 | C++23 | Language linkage of static member functions | ? | |
| 2484 | CD6 | char8_t and char16_t in integral promotions |
? | |
| 2485 | DRWP | Bit-fields in integral promotions | ? | |
| 2486 | CD6 | Call to noexcept function via noexcept(false) pointer/lvalue |
? | |
| 2487 | drafting | Type dependence of function-style cast to incomplete array type | - | |
| 2488 | open | Overloading virtual functions and functions with trailing requires-clauses | - | |
| 2489 | C++23 | Storage provided by array of char |
? | |
| 2490 | CD6 | Restrictions on destruction in constant expressions | ? | |
| 2491 | CD6 | Export of typedef after its first declaration | ? | |
| 2492 | drafting | Comparing user-defined conversion sequences in list-initialization | - | |
| 2493 | dup | auto as a conversion-type-id |
- | Dup of issue 1670 |
| 2494 | CD6 | Multiple definitions of non-odr-used entities | ? | |
| 2495 | open | Glvalue result of a function call | - | |
| 2496 | CD6 | ref-qualifiers and virtual overriding | ? | |
| 2497 | drafting | Points of instantiation for constexpr function templates | - | |
| 2498 | open | Partial specialization failure and the immediate context | - | |
| 2499 | CD6 | Inconsistency in definition of pointer-interconvertibility | ? | |
| 2500 | extension | noexcept(false) functions and noexcept expressions |
? | |
| 2501 | drafting | Explicit instantiation and trailing requires-clauses | - | |
| 2502 | CD6 | Unintended declaration conflicts in nested statement scopes | ? | |
| 2503 | drafting | Unclear relationship among name, qualified name, and unqualified name | - | |
| 2504 | DRWP | Inheriting constructors from virtual base classes | ? | |
| 2505 | drafting | Nested unnamed namespace of inline unnamed namespace | - | |
| 2506 | CD6 | Structured bindings and array cv-qualifiers | ? | |
| 2507 | CD6 | Default arguments for operator[] |
13 | |
| 2508 | C++23 | Restrictions on uses of template parameter names | ? | |
| 2509 | CD6 | decl-specifier-seq in lambda-specifiers | ? | |
| 2510 | NAD | noexcept-specifier of friend function vs class completeness | N/A | |
| 2511 | CD6 | cv-qualified bit-fields | ? | |
| 2512 | NAD | typeid and incomplete class types |
N/A | |
| 2513 | open | Ambiguity with requires-clause and operator-function-id | - | |
| 2514 | open | Modifying const subobjects | - | |
| 2515 | open | Result of a function call | - | |
| 2516 | C++23 | Locus of enum-specifier or opaque-enum-declaration | ? | |
| 2517 | C++23 | Useless restriction on use of parameter in constraint-expression | ? | |
| 2518 | C++23 | Conformance requirements and #error/#warning |
? | |
| 2519 | DRWP | Object representation of a bit-field | ? | |
| 2520 | C++23 | Template signature and default template arguments | ? | |
| 2521 | C++23 | User-defined literals and reserved identifiers | ? | |
| 2522 | open | Removing placemarker tokens and retention of whitespace | - | |
| 2523 | C++23 | Undefined behavior via omitted destructor call in constant expressions | ? | |
| 2524 | NAD | Distinguishing user-defined conversion sequences by ref-qualifier | N/A | |
| 2525 | drafting | Incorrect definition of implicit conversion sequence | - | |
| 2526 | C++23 | Relational comparison of void* pointers |
? | |
| 2527 | NAD | Non-class potentially-overlapping objects | N/A | |
| 2528 | C++23 | Three-way comparison and the usual arithmetic conversions | ? | |
| 2529 | C++23 | Constant destruction of constexpr references | ? | |
| 2530 | C++23 | Multiple definitions of enumerators | ? | |
| 2531 | DRWP | Static data members redeclared as constexpr | ? | |
| 2532 | open | Kind of pointer value returned by new T[0] |
- | |
| 2533 | DR | Storage duration of implicitly created objects | ? | |
| 2534 | CD6 | Value category of pseudo-destructor expression | ? | |
| 2535 | CD6 | Type punning in class member access | ? | |
| 2536 | open | Partially initialized variables during constant initialization | - | |
| 2537 | drafting | Overbroad grammar for parameter-declaration | - | |
| 2538 | C++23 | Can standard attributes be syntactically ignored? | ? | |
| 2539 | C++23 | Three-way comparison requiring strong ordering for floating-point types | ? | |
| 2540 | CD6 | Unspecified interpretation of numeric-escape-sequence | ? | |
| 2541 | open | Linkage specifications, module purview, and module attachment | - | |
| 2542 | DRWP | Is a closure type a structural type? | ? | |
| 2543 | C++23 | constinit and optimized dynamic initialization |
14 | |
| 2544 | open | Address of past-the-end of a potentially-overlapping subobject | - | |
| 2545 | open | Transparently replacing objects in constant expressions | - | |
| 2546 | DR | Defaulted secondary comparison operators defined as deleted | ? | |
| 2547 | DR | Defaulted comparison operator function for non-classes | ? | |
| 2548 | NAD | Array prvalues and additive operators | N/A | |
| 2549 | review | Implicitly moving the operand of a throw-expression in unevaluated contexts | ? | |
| 2550 | DRWP | Type "reference to cv void" outside of a declarator |
Yes | |
| 2551 | review | "Refers to allocated storage" has no meaning | ? | |
| 2552 | DRWP | Constant evaluation of non-defining variable declarations | ? | |
| 2553 | review | Restrictions on explicit object member functions | ? | |
| 2554 | review | Overriding virtual functions, also with explicit object parameters | ? | |
| 2555 | drafting | Ineffective redeclaration prevention for using-declarators | - | |
| 2556 | DRWP | Unusable promise::return_void |
? | |
| 2557 | drafting | Class member access referring to an unrelated class | - | |
| 2558 | C++23 | Uninitialized subobjects as a result of an immediate invocation | ? | |
| 2559 | open | Defaulted consteval functions | - | |
| 2560 | DR | Parameter type determination in a requirement-parameter-list | ? | |
| 2561 | review | Conversion to function pointer for lambda with explicit object parameter | ? | |
| 2562 | open | Exceptions thrown during coroutine startup | - | |
| 2563 | drafting | Initialization of coroutine result object | - | |
| 2564 | drafting | Conversion to function pointer with an explicit object parameter | - | |
| 2565 | open | Invalid types in the parameter-declaration-clause of a requires-expression | - | |
| 2566 | review | Matching deallocation for uncaught exception | ? | |
| 2567 | NAD | Operator lookup ambiguity | N/A | |
| 2568 | DR | Access checking during synthesis of defaulted comparison operator | ? | |
| 2569 | CD6 | Use of decltype(capture) in a lambda's parameter-declaration-clause |
? | |
| 2570 | DRWP | Clarify constexpr for defaulted functions | ? | |
| 2571 | CD6 | Evaluation order for subscripting | ? | |
| 2572 | review | Address of overloaded function with no target | ? | |
| 2573 | DRWP | Undefined behavior when splicing results in a universal-character-name | ? | |
| 2574 | DRWP | Undefined behavior when lexing unmatched quotes | ? | |
| 2575 | open | Undefined behavior when macro-replacing "defined" operator | - | |
| 2576 | open | Undefined behavior with macro-expanded #include directives |
- | |
| 2577 | open | Undefined behavior for preprocessing directives in macro arguments | - | |
| 2578 | open | Undefined behavior when creating an invalid string literal via stringizing | - | |
| 2579 | open | Undefined behavior when token pasting does not create a preprocessing token | - | |
| 2580 | open | Undefined behavior with #line |
- | |
| 2581 | open | Undefined behavior for predefined macros | - | |
| 2582 | CD6 | Differing member lookup from nested classes | ? | |
| 2583 | C++23 | Common initial sequence should consider over-alignment | ? | |
| 2584 | open | Equivalent types in function template declarations | - | |
| 2585 | CD6 | Name lookup for coroutine allocation | ? | |
| 2586 | CD6 | Explicit object parameter for assignment and comparison | 14 | PR102609 |
| 2587 | review | Visible side effects and initial value of an object | ? | |
| 2588 | tentatively ready | friend declarations and module linkage | ? | |
| 2589 | review | Context of access checks during constraint satisfaction checking | No | PR10411 |
| 2590 | C++23 | Underlying type should determine size and alignment requirements of an enum | ? | |
| 2591 | DRWP | Implicit change of active union member for anonymous union in union | ? | |
| 2592 | open | Missing definition for placement allocation/deallocation function | - | |
| 2593 | review | Insufficient base class restriction for pointer-to-member expression | ? | |
| 2594 | CD6 | Disallowing a global function template main |
Yes | |
| 2595 | DRWP | "More constrained" for eligible special member functions | ? | |
| 2596 | drafting | Instantiation of constrained non-template friends | - | |
| 2597 | CD6 | Replaceable allocation and deallocation functions in the global module | ? | |
| 2598 | C++23 | Unions should not require a non-static data member of literal type | ? | |
| 2599 | C++23 | What does initializing a parameter include? | ? | |
| 2600 | DRWP | Type dependency of placeholder types | ? | |
| 2601 | C++23 | Tracking of created and destroyed subobjects | ? | |
| 2602 | C++23 | consteval defaulted functions | ? | dup of CWG2559? |
| 2603 | C++23 | Holistic functional equivalence for function templates | ? | |
| 2604 | C++23 | Attributes for an explicit specialization | ? | |
| 2605 | C++23 | Implicit-lifetime aggregates | ? | |
| 2606 | CD6 | static_cast from "pointer to void" does not handle similar types |
? | |
| 2607 | drafting | Visibility of enumerator names | - | |
| 2608 | CD6 | Omitting an empty template argument list | ? | |
| 2609 | open | Padding in class types | - | |
| 2610 | C++23 | Indirect private base classes in aggregates | ? | |
| 2611 | C++23 | Missing parentheses in expansion of fold-expression could cause syntactic reinterpretation | ? | |
| 2612 | C++23 | Incorrect comment in example | ? | |
| 2613 | C++23 | Incomplete definition of resumer | ? | |
| 2614 | C++23 | Unspecified results for class member access | ? | |
| 2615 | C++23 | Missing __has_cpp_attribute(assume) |
? | |
| 2616 | C++23 | Imprecise restrictions on break and continue |
? | |
| 2617 | review | Default template arguments for template members of non-template classes | ? | |
| 2618 | C++23 | Substitution during deduction should exclude exception specifications | ? | |
| 2619 | C++23 | Kind of initialization for a designated-initializer-list | ? | |
| 2620 | C++23 | Nonsensical disambiguation rule | ? | |
| 2621 | C++23 | Kind of lookup for using enum declarations |
? | |
| 2622 | C++23 | Compounding types from function and pointer-to-member types | ? | |
| 2623 | drafting | Invoking destroying operator delete for constructor failure |
- | |
| 2624 | C++23 | Array delete expression with no array cookie | ? | |
| 2625 | C++23 | Deletion of pointer to out-of-lifetime object | ? | |
| 2626 | C++23 | Rephrase ones' complement using base-2 representation | ? | |
| 2627 | C++23 | Bit-fields and narrowing conversions | 15 | PR94058 |
| 2628 | DRWP | Implicit deduction guides should propagate constraints | ? | |
| 2629 | C++23 | Variables of floating-point type as switch conditions |
? | |
| 2630 | C++23 | Syntactic specification of class completeness | ? | |
| 2631 | C++23 | Immediate function evaluations in default arguments | ? | |
| 2632 | review | 'user-declared' is not defined | ? | |
| 2633 | open | typeid of constexpr-unknown dynamic type | - | |
| 2634 | DR | Avoid circularity in specification of scope for friend class declarations | ? | |
| 2635 | C++23 | Constrained structured bindings | ? | |
| 2636 | C++23 | Update Annex E based on Unicode 15.0 UAX #31 | ? | |
| 2637 | DR | Injected-class-name as a simple-template-id | ? | |
| 2638 | DR | Improve the example for initializing by initializer list | ? | |
| 2639 | C++23 | new-lines after phase 1 | ? | |
| 2640 | C++23 | Allow more characters in an n-char sequence | ? | |
| 2641 | C++23 | Redundant specification of value category of literals | ? | |
| 2642 | C++23 | Inconsistent use of T and C | N/A | |
| 2643 | C++23 | Completing a pointer to array of unknown bound | ? | |
| 2644 | C++23 | Incorrect comment in example | ? | |
| 2645 | C++23 | Unused term "default argument promotions" | ? | |
| 2646 | C++23 | Defaulted special member functions | ? | |
| 2647 | C++23 | Fix for "needed for constant evaluation" | ? | |
| 2648 | C++23 | Correspondence of surrogate call function and conversion function | ? | |
| 2649 | C++23 | Incorrect note about implicit conversion sequence | ? | |
| 2650 | C++23 | Incorrect example for ill-formed non-type template arguments | ? | |
| 2651 | C++23 | Conversion function templates and "noexcept" | ? | |
| 2652 | C++23 | Overbroad definition of __STDCPP_BFLOAT16_T__ |
? | |
| 2653 | C++23 | Can an explicit object parameter have a default argument? | ? | |
| 2654 | C++23 | Un-deprecation of compound volatile assignments | 13 | |
| 2655 | NAD | Instantiation of default arguments in lambda-expressions | ? | |
| 2656 | drafting | Converting consteval lambda to function pointer in non-immediate context | - | |
| 2657 | DR | Cv-qualification adjustment when binding reference to temporary | ? | |
| 2658 | C++23 | Trivial copying of unions in core constant expressions | ? | |
| 2659 | C++23 | Missing feature-test macro for lifetime extension in range-for loop | ? | |
| 2660 | open | Confusing term "this parameter" | - | |
| 2661 | DR | Missing disambiguation rule for pure-specifier vs. brace-or-equal-initializer | ? | |
| 2662 | C++23 | Example for member access control vs. overload resolution | ? | |
| 2663 | DRWP | Example for member redeclarations with using-declarations | No | PR116160 |
| 2664 | C++23 | Deduction failure in CTAD for alias templates | 13 | |
| 2665 | NAD | Replacing a subobject with a complete object | N/A | |
| 2666 | open | Lifetime extension through static_cast |
- | |
| 2667 | C++23 | Named module imports do not import macros | ? | |
| 2668 | DR | co_await in a lambda-expression |
? | |
| 2669 | open | Lifetime extension for aggregate initialization | - | |
| 2670 | open | Programs and translation units | - | |
| 2671 | open | friend named by a template-id | - | |
| 2672 | DRWP | Lambda body SFINAE is still required, contrary to intent and note | ? | |
| 2673 | C++23 | User-declared spaceship vs. built-in operators | ? | |
| 2674 | C++23 | Prohibit explicit object parameters for constructors | ? | |
| 2675 | open | start_lifetime_as, placement-new, and active union members |
- | |
| 2676 | open | Replacing a complete object having base subobjects | - | |
| 2677 | review | Replacing union subobjects | ? | |
| 2678 | C++23 | std::source_location::current is unimplementable |
? | |
| 2679 | open | Implicit conversion sequence with a null pointer constant | - | |
| 2680 | open | Class template argument deduction for aggregates with designated initializers | - | |
| 2681 | C++23 | Deducing member array type from string literal | ? | |
| 2682 | C++23 | Templated function vs. function template | ? | |
| 2683 | DRWP | Default arguments for member functions of templated nested classes | ? | |
| 2684 | open | thread_local dynamic initialization | - | PR108299 |
| 2685 | C++23 | Aggregate CTAD, string, and brace elision | ? | |
| 2686 | open | Pack expansion into a non-pack parameter of a concept | - | |
| 2687 | C++23 | Calling an explicit object member function via an address-of-overload-set | ? | |
| 2688 | open | Calling explicit object member functions | - | |
| 2689 | DR | Are cv-qualified std::nullptr_t fundamental types? |
? | |
| 2690 | C++23 | Semantics of defaulted move assignment operator for unions | ? | |
| 2691 | C++23 | hexadecimal-escape-sequence is too greedy | ? | |
| 2692 | C++23 | Static and explicit object member functions with the same parameter-type-lists | ? | |
| 2693 | open | Escape sequences for the string-literal of #line |
- | |
| 2694 | open | string-literals of the _Pragma operator |
- | |
| 2695 | C++23 | Semantic ignorability of attributes | ? | |
| 2696 | dup | Relational comparisons of pointers to void |
Dup of 2749 | |
| 2697 | DRWP | Deduction guides using abbreviated function syntax | ? | |
| 2698 | DRWP | Using extended integer types with z suffix |
? | |
| 2699 | DRWP | Inconsistency of throw-expression specification | ? | |
| 2700 | DR | #error disallows existing implementation practice |
? | |
| 2701 | open | Default arguments in multiple scopes / inheritance of array bounds in the same scope | - | |
| 2702 | open | Constant destruction of reference members | - | |
| 2703 | review | Three-way comparison requiring strong ordering for floating-point types, take 2 | ? | |
| 2704 | open | Clarify meaning of "bind directly" | - | |
| 2705 | open | Accessing ambiguous subobjects | - | |
| 2706 | open | Repeated structured binding declarations | - | |
| 2707 | DR | Deduction guides cannot have a trailing requires-clause | ? | |
| 2708 | DRWP | Parenthesized initialization of arrays | 10 | |
| 2709 | NAD | Parenthesized initialization of reference-to-aggregate | ? | |
| 2710 | DRWP | Loops in constant expressions | ? | |
| 2711 | DRWP | Source for copy-initializing the exception object | ? | |
| 2712 | DRWP | Simplify restrictions on built-in assignment operator candidates | ? | |
| 2713 | DRWP | Initialization of reference-to-aggregate from designated initializer list | Yes | |
| 2714 | DR | Implicit deduction guides omit properties from the parameter-declaration-clause of a constructor | ? | |
| 2715 | DRWP | "calling function" for parameter initialization may not exist | ? | |
| 2716 | DRWP | Rule about self-or-base conversion is normatively redundant | ? | |
| 2717 | DRWP | Pack expansion for alignment-specifier | ? | |
| 2718 | DRWP | Type completeness for derived-to-base conversions | ? | |
| 2719 | DRWP | Creating objects in misaligned storage | ? | |
| 2720 | DRWP | Template validity rules for templated entities and alias templates | ? | |
| 2721 | DRWP | When exactly is storage reused? | ? | |
| 2722 | DRWP | Temporary materialization conversion for noexcept operator |
? | |
| 2723 | DRWP | Range of representable values for floating-point types | ? | |
| 2724 | DRWP | Clarify rounding for arithmetic right shift | ? | |
| 2725 | DRWP | Overload resolution for non-call of class member access | ? | |
| 2726 | review | Alternative tokens appearing as attribute-tokens | ? | |
| 2727 | open | Importing header units synthesized from source files | - | |
| 2728 | tentatively ready | Evaluation of conversions in a delete-expression | ? | |
| 2729 | DRWP | Meaning of new-type-id | ? | |
| 2730 | open | Comparison templates on enumeration types | - | |
| 2731 | open | List-initialization sequence with a user-defined conversion | - | |
| 2732 | DRWP | Can importable headers react to preprocessor state from point of import? | ? | |
| 2733 | DRWP | Applying [[maybe_unused]] to a label |
? | |
| 2734 | open | Immediate forward-declared function templates | - | |
| 2735 | open | List-initialization and conversions in overload resolution | 13 | |
| 2736 | open | Standard layout class with empty base class also in first member | - | |
| 2737 | review | Temporary lifetime extension for reference init-captures | ? | |
| 2738 | review | "denotes a destructor" is missing specification | ? | |
| 2739 | open | Nested requirement not a constant expression | - | |
| 2740 | open | Too many objects have constexpr-unknown type | - | |
| 2741 | open | Implicit conversion sequence from empty list to array of unknown bound | - | |
| 2742 | drafting | Guaranteed copy elision for brace-initialization from prvalue | - | |
| 2743 | open | Copying non-trivial objects nested within a union | - | |
| 2744 | open | Multiple objects of the same type at the same address | - | |
| 2745 | DR | Dependent odr-use in generic lambdas | ? | |
| 2746 | DR | Checking of default template arguments | ? | |
| 2747 | DRWP | Cannot depend on an already-deleted splice | ? | |
| 2748 | DR | Accessing static data members via null pointer | ? | |
| 2749 | DRWP | Treatment of "pointer to void" for relational comparisons | ? | |
| 2750 | DRWP | construct_at without constructor call | ? | |
| 2751 | NAD | Order of destruction for parameters for operator functions | ? | |
| 2752 | open | Excess-precision floating-point literals | - | |
| 2753 | DRWP | Storage reuse for string literal objects and backing arrays | ? | |
| 2754 | DRWP | Using *this in explicit object member functions that are coroutines | ? | |
| 2755 | DRWP | Incorrect wording applied by P2738R1 | ? | |
| 2756 | review | Completion of initialization by delegating constructor | ? | |
| 2757 | review | Deleting or deallocating storage of an object during its construction | ? | |
| 2758 | DRWP | What is "access and ambiguity control"? | ? | |
| 2759 | DRWP | [[no_unique_address] and common initial sequence | ? | |
| 2760 | DRWP | Defaulted constructor that is an immediate function | ? | |
| 2761 | DRWP | Implicitly invoking the deleted destructor of an anonymous union member | ? | |
| 2762 | DRWP | Type of implicit object parameter | ? | |
| 2763 | DRWP | Ignorability of [[noreturn]] during constant evaluation | No | PR114705 |
| 2764 | DRWP | Use of placeholders affecting name mangling | ? | |
| 2765 | open | Address comparisons between potentially non-unique objects during constant evaluation | - | |
| 2766 | open | Repeated evaluation of a string-literal may yield different objects | - | |
| 2767 | open | Non-defining declarations of anonymous unions | - | |
| 2768 | DRWP | Assignment to enumeration variable with a braced-init-list | ? | |
| 2769 | open | Substitution into template parameters and default template arguments should be interleaved | - | |
| 2770 | open | Trailing requires-clause can refer to function parameters before they are substituted into | - | |
| 2771 | DR | Transformation for unqualified-ids in address operator | ? | |
| 2772 | DRWP | Missing Annex C entry for linkage effects of linkage-specification | ? | |
| 2773 | open | Naming anonymous union members as class members | - | |
| 2774 | open | Value-dependence of requires-expressions | - | |
| 2775 | DR | Unclear argument type for copy of exception object | ? | |
| 2776 | open | Substitution failure and implementation limits | - | |
| 2777 | DR | Type of id-expression denoting a template parameter object | ? | |
| 2778 | review | Trivial destructor does not imply constant destruction | ? | |
| 2779 | open | Restrictions on the ordinary literal encoding | - | |
| 2780 | DRWP | reinterpret_cast to reference to function types |
? | |
| 2781 | open | Unclear recursion in the one-definition rule | - | |
| 2782 | open | Treatment of closure types in the one-definition rule | - | |
| 2783 | DRWP | Handling of deduction guides in global-module-fragment | ? | |
| 2784 | open | Unclear definition of member-designator for offsetof |
- | |
| 2785 | DRWP | Type-dependence of requires-expression | ? | |
| 2786 | open | Comparing pointers to complete objects | - | |
| 2787 | open | Kind of explicit object copy/move assignment function | - | |
| 2788 | open | Correspondence and redeclarations | - | |
| 2789 | DRWP | Overload resolution with implicit and explicit object member functions | No | PR116492 |
| 2790 | open | Aggregate initialization and user-defined conversion sequence | - | |
| 2791 | DRWP | Unclear phrasing about "returning to the caller" | ? | |
| 2792 | DRWP | Clean up specification of noexcept operator |
Yes | |
| 2793 | DRWP | Block-scope declaration conflicting with parameter name | ? | |
| 2794 | open | Uniqueness of lambdas in alias templates | - | |
| 2795 | DRWP | Overlapping empty subobjects with different cv-qualification | ? | |
| 2796 | DRWP | Function pointer conversions for relational operators | ? | |
| 2797 | review | Meaning of "corresponds" for rewritten operator candidates | ? | |
| 2798 | DRWP | Manifestly constant evaluation of the static_assert message |
? | |
| 2799 | drafting | Inheriting default constructors | 14 | |
| 2800 | review | Instantiating constexpr variables for potential constant evaluation | ? | |
| 2801 | DRWP | Reference binding with reference-related types | ? | |
| 2802 | open | Constrained auto and redeclaration with non-abbreviated syntax |
- | |
| 2803 | DR | Overload resolution for reference binding of similar types | ? | |
| 2804 | open | Lookup for determining rewrite targets | - | |
| 2805 | open | Underspecified selection of deallocation function | - | |
| 2806 | DRWP | Make a type-requirement a type-only context | ? | |
| 2807 | DRWP | Destructors declared consteval |
? | |
| 2808 | review | Explicit specialization of defaulted special member function | ? | |
| 2809 | DR | An implicit definition does not redeclare a function | ? | |
| 2810 | DR | Requiring the absence of diagnostics for templates | ? | |
| 2811 | DR | Clarify "use" of main | ? | |
| 2812 | open | Allocation with explicit alignment | - | |
| 2813 | DR | Class member access with prvalues | ? | |
| 2814 | review | Alignment requirement of incomplete class type | ? | |
| 2815 | open | Overload resolution for references/pointers to noexcept functions |
- | |
| 2816 | review | Unclear phrasing "may assume ... eventually" | ? | |
| 2817 | open | sizeof(abstract class) is underspecified | - | |
| 2818 | tentatively ready | Use of predefined reserved identifiers | ? | |
| 2819 | review | Cast from null pointer value in a constant expression | ? | |
| 2820 | DR | Value-initialization and default constructors | ? | |
| 2821 | review | Lifetime, zero-initialization, and dynamic initialization | ? | |
| 2822 | DR | Side-effect-free pointer zap | ? | |
| 2823 | DRWP | Implicit undefined behavior when dereferencing pointers | ? | |
| 2824 | DR | Copy-initialization of arrays | ? | |
| 2825 | DR | Range-based for statement using a braced-init-list | ? | |
| 2826 | drafting | Missing definition of "temporary expression" | - | |
| 2827 | review | Representation of unsigned integral types | ? | |
| 2828 | DR | Ambiguous interpretation of C-style cast | ? | |
| 2829 | open | Redundant case in restricting user-defined conversion sequences | - | |
| 2830 | DR | Top-level cv-qualification should be ignored for list-initialization | ? | |
| 2831 | DR | Non-templated function definitions and requires-clauses | ? | |
| 2832 | open | Invented temporary variables and temporary objects | - | |
| 2833 | review | Evaluation of odr-use | ? | |
| 2834 | review | Partial ordering and explicit object parameters | ? | |
| 2835 | open | Name-independent declarations | - | |
| 2836 | review | Conversion rank of long double and extended floating-point types |
? | |
| 2837 | open | Instantiating and inheriting by-value copy constructors | - | |
| 2838 | open | Declaration conflicts in lambda-expressions | - | |
| 2839 | open | Explicit destruction of base classes | - | |
| 2840 | open | Missing requirements for fundamental alignments | - | |
| 2841 | open | When do const objects start being const? | - | |
| 2842 | open | Preferring an initializer_list over a single value |
- | |
| 2843 | review | Undated reference to Unicode makes C++ a moving target | ? | |
| 2844 | open | Enumerating a finite set of built-in candidates | - | |
| 2845 | DR | Make the closure type of a captureless lambda a structural type | ? | |
| 2846 | DR | Out-of-class definitions of explicit object member functions | ? | |
| 2847 | review | Constrained explicit specializations of function templates at class scope | ? | |
| 2848 | DR | Omitting an empty template argument list for explicit instantiation | ? | |
| 2849 | DR | Parameter objects are not temporary objects | ? | |
| 2850 | DR | Unclear storage duration for function parameter objects | ? | |
| 2851 | DR | Allow floating-point conversions in converted constant expressions | ? | |
| 2852 | open | Complete-class contexts and class-scope lambdas | - | |
| 2853 | DR | Pointer arithmetic with pointer to hypothetical element | ? | |
| 2854 | DR | Storage duration of exception objects | ? | |
| 2855 | DR | Undefined behavior in postfix increment | ? | |
| 2856 | DR | Copy-list-initialization with explicit default constructors | ? | PR113300 |
| 2857 | DR | Argument-dependent lookup with incomplete class types | ? | |
| 2858 | tentatively ready | Declarative nested-name-specifiers and pack-index-specifiers | ? | |
| 2859 | tentatively ready | Value-initialization with multiple default constructors | ? | |
| 2860 | dup | Remove and fix the term "vacuous initialization" | ? | |
| 2861 | review | dynamic_cast on bad pointer value |
? | |
| 2862 | tentatively ready | Unclear boundaries of template declarations | ? | |
| 2863 | review | Unclear synchronization requirements for object lifetime rules | ? | |
| 2864 | review | Narrowing floating-point conversions | ? | |
| 2865 | open | Regression on result of conditional operator | - | |
| 2866 | open | Observing the effects of [[no_unique_address]] |
- | |
| 2867 | open | Order of initialization for structured bindings | - | PR115769 |
| 2868 | open | Self-references in trivially copyable objects as function return values | - | |
| 2869 | open | this in local classes |
- | |
| 2870 | open | Combining absent encoding-prefixes | - | |
| 2871 | tentatively ready | User-declared constructor templates inhibiting default constructors | ? | |
| 2872 | open | Linkage and unclear "can be referred to" | - | |
| 2873 | open | Taking the address of a function involving template argument deduction | - | |
| 2874 | open | Qualified declarations of partial specializations | - | |
| 2875 | open | Missing support for round-tripping nullptr through indirection/address operators | - | |
| 2876 | open | Disambiguation of T x = delete("text") |
- | |
| 2877 | open | Type-only lookup for using-enum-declarator | - | |
| 2878 | open | C-style casts to reference types | - | |
| 2879 | open | Undesired outcomes with const_cast |
- |
This page is currently maintained by polacek@redhat.com.
Last update: Tue Nov 5 12:55:04 PM EST 2024