From patchwork Tue Jun 13 00:13:40 2023
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Marek Polacek 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
- 109 (here).
36 | -DRWP | +CD6 | using-declarations in multiple-declaration contexts | ? | @@ -792,7 +792,7 @@ | |||||||
110 | -DRWP | +CD6 | Can template functions and classes be declared in the same scope? | ? | @@ -988,7 +988,7 @@ | |||||||
138 | -DRWP | +CD6 | Friend declaration name lookup | ? | @@ -1210,11 +1210,11 @@ | ? | ||||||
170 | -open | +tentatively ready | Pointer-to-member conversions | -- | +? | |||||||
191 | -DRWP | +CD6 | Name lookup does not handle complex nesting | ? | @@ -1810,7 +1810,7 @@ | |||||||
255 | -DRWP | +CD6 | Placement deallocation functions and lookup ambiguity | ? | @@ -1922,7 +1922,7 @@ | |||||||
271 | -DRWP | +CD6 | Explicit instantiation and template argument deduction | ? | @@ -1978,7 +1978,7 @@ | |||||||
279 | -DRWP | +CD6 | Correspondence of "names for linkage purposes" | ? | @@ -2391,7 +2391,7 @@ | |||||||
338 | -DRWP | +CD6 | Enumerator name with linkage used as class name in other translation unit | ? | @@ -2545,7 +2545,7 @@ | |||||||
360 | -DRWP | +CD6 | Using-declaration that reduces access | ? | @@ -2727,7 +2727,7 @@ | |||||||
386 | -DRWP | +CD6 | Friend declaration of name brought in by using-declaration | ? | @@ -2818,7 +2818,7 @@ | |||||||
399 | -DRWP | +CD6 | Destructor lookup redux | ? | PR28985, @@ -2861,7 +2861,7 @@ | |||||||
405 | -DRWP | +CD6 | Unqualified function name lookup | ? | @@ -2903,7 +2903,7 @@ | |||||||
411 | -WP | +CD6 | Use of universal-character-name in character versus string literals | ? | @@ -2952,7 +2952,7 @@ | |||||||
418 | -DRWP | +CD6 | Imperfect wording on error on multiple default arguments on a called function | ? | @@ -3211,9 +3211,9 @@ | |||||||
455 | -open | +NAD | Partial ordering and non-deduced arguments | -- | +N/A | |||||||
536 | -DRWP | +CD6 | Problems in the description of id-expressions | ? | @@ -3904,7 +3904,7 @@ | |||||||
554 | -DRWP | +CD6 | Definition of "declarative region" and "scope" | ? | @@ -3960,14 +3960,14 @@ | |||||||
562 | -DRWP | +CD6 | qualified-ids in non-expression contexts | ? | ||||||||
563 | -DRWP | +CD6 | Linkage specification for objects | ? | PR28389 | @@ -4072,9 +4072,9 @@|||||||
578 | -review | +CD6 | Phase 1 replacement of characters with universal-character-names | -- | +? | |||||||
600 | -DRWP | +CD6 | Does access control apply to members or to names? | ? | @@ -4275,7 +4275,7 @@ | |||||||
607 | -DRWP | +CD6 | Lookup of mem-initializer-ids | ? | @@ -5239,11 +5239,11 @@ | ? | ||||||
745 | -open | +C++23 | Effect of ill-formedness resulting from #error |
- - | +? | |||||||
794 | -extension | +NAD | Base-derived conversion in member type of pointer-to-member conversion | -? | +N/A | |||||||
795 | NAD | Dependency of lambdas on <functional> |
- ? | +N/A | ||||||||
852 | -DRWP | +CD6 | using-declarations and dependent base classes | ? | @@ -6326,7 +6326,7 @@ | |||||||
900 | -extension | +DRWP | Lifetime of temporaries in range-based for |
? | @@ -6423,11 +6423,11 @@ | ? | ||||||
914 | -extension | +open | Value-initialization of array types | -? | +- | |||||||
952 | -DRWP | +CD6 | Insufficient description of "naming class" | ? | @@ -6861,8 +6861,8 @@ | 976 | CD2 | Deduction for const T& conversion operators |
- ? | -PR61663 | +14 | +PR61663, git |
977 | @@ -7078,14 +7078,14 @@1007 | NAD | Protected access and pointers to members | -? | +N/A | |||||||
1008 | -extension | +NAD | Querying the alignment of an object | -? | +N/A | |||||||
1028 | -DRWP | +CD6 | Dependent names in non-defining declarations | ? | @@ -7291,11 +7291,11 @@ | ? | ||||||
1038 | -open | +review | Overload resolution of &x.static_func |
- - | +? | |||||||
1077 | -extension | +NAD | Explicit specializations in non-containing namespaces | -? | +N/A | |||||||
1200 | -DRWP | +CD6 | Lookup rules for template parameters | ? | @@ -8770,7 +8770,7 @@ | |||||||
1249 | -DRWP | +CD6 | Cv-qualification of nested lambda capture | ? | @@ -8791,7 +8791,7 @@ | |||||||
1252 | -DRWP | +CD6 | Overloading member function templates based on dependent return type | ? | @@ -9064,7 +9064,7 @@ | |||||||
1291 | -DRWP | +CD6 | Looking up a conversion-type-id | ? | @@ -9370,11 +9370,11 @@ | N/A | ||||||
1335 | -open | +CD6 | Stringizing, extended characters, and universal-character-names | -- | +? | |||||||
1342 | -DRWP | +CD6 | Order of initialization with multiple declarators | - | @@ -9496,11 +9496,11 @@ | ? | ||||||
1353 | -drafting | +tentatively ready | Array and variant members and deleted special member functions | -- | +? | |||||||
? | ||||||||||||
1360 | -drafting | +CD6 | constexpr defaulted default constructors |
- - | +? | |||||||
? | PR60402 | |||||||||||
1396 | -open | +DRWP | Deferred instantiation and checking of non-static data member initializers | -- | +? | |||||||
1403 | -review | +CD6 | Universal-character-names in comments | -- | +? | |||||||
? | ||||||||||||
1432 | -open | +C++17 | Newly-ambiguous variadic template expansions | -- | +? | |||||||
1433 | -extension | +NAD | trailing-return-type and point of declaration | -? | +N/A | PR51501 | ||||||
1436 | -drafting | +open | Interaction of constant expression changes with preprocessor expressions | - | @@ -10269,11 +10269,11 @@ | ? | ||||||
1463 | -extension | +drafting | extern "C" alias templates |
- ? | +- | |||||||
1478 | -DRWP | +CD6 | template keyword for dependent template template arguments |
? | @@ -10530,7 +10530,7 @@ | |||||||
1500 | -DRWP | +CD6 | Name lookup of dependent conversion function | ? | @@ -10915,9 +10915,9 @@ | |||||||
1555 | -extension | +NAD | Language linkage and function type compatibility | -? | +N/A | |||||||
10 | PR92032 | |||||||||||
1602 | -open | +review | Linkage of specialization vs linkage of template arguments | -- | +? | |||||||
1616 | -DRWP | +CD6 | Disambiguation parsing and template parameters | ? | @@ -11532,9 +11532,9 @@ | |||||||
1643 | -extension | +NAD | Default arguments for template parameter packs | -? | +N/A | |||||||
1656 | -WP | +CD6 | Encoding of numerically-escaped characters | ? | @@ -12008,7 +12008,7 @@ | |||||||
1711 | -WP | +CD6 | Missing specification of variable template partial specializations | ? | @@ -12099,7 +12099,7 @@ | |||||||
1724 | -DRWP | +CD6 | Unclear rules for deduction failure | ? | @@ -12113,7 +12113,7 @@ | |||||||
1726 | -DRWP | +CD6 | Declarator operators and conversion function | No | PR79318 | @@ -12134,7 +12134,7 @@|||||||
1729 | -DRWP | +CD6 | Matching declarations and definitions of variable templates | ? | @@ -12162,7 +12162,7 @@ | |||||||
1733 | -DRWP | +CD6 | Return type and value for operator= with ref-qualifier |
? | @@ -12428,7 +12428,7 @@ | |||||||
1771 | -DRWP | +CD6 | Restricted lookup in nested-name-specifier | ? | @@ -12552,18 +12552,18 @@ | ? | ||||||
1789 | -review | +open | Array reference vs array decay in overload resolution | -? | +- | |||||||
1790 | -extension | +open | Ellipsis following function parameter pack | -? | +- | |||||||
1818 | -DRWP | +CD6 | Visibility and inherited language linkage | ? | @@ -12771,21 +12771,21 @@ | |||||||
1820 | -DRWP | +CD6 | Qualified typedef names | ? | ||||||||
1821 | -DRWP | +CD6 | Qualified redeclarations in a class member-specification | ? | ||||||||
1822 | -DRWP | +CD6 | Lookup of parameter names in lambda-expressions | ? | @@ -12827,14 +12827,14 @@ | |||||||
1828 | -DRWP | +CD6 | nested-name-specifier ambiguity | ? | ||||||||
1829 | -DRWP | +CD6 | Dependent unnamed types | ? | @@ -12876,7 +12876,7 @@ | |||||||
1835 | -DRWP | +CD6 | Dependent member lookup before < |
? | PR88434 | @@ -12890,7 +12890,7 @@|||||||
1837 | -DRWP | +CD6 | Use of this in friend and local class declarations |
? | @@ -12904,7 +12904,7 @@ | |||||||
1839 | -DRWP | +CD6 | Lookup of block-scope extern declarations |
? | PR86181 | @@ -12918,7 +12918,7 @@|||||||
1841 | -DRWP | +CD6 | < following template injected-class-name |
? | @@ -12972,11 +12972,11 @@ | ? | ||||||
1849 | -drafting | +CD6 | Variable templates and the ODR | -- | +? | |||||||
1864 | -extension | +NAD | List-initialization of array objects | -? | +N/A | |||||||
1871 | -extension | +NAD | Non-identifier characters in ud-suffix | -? | +N/A | |||||||
1876 | -extension | +NAD | Preventing explicit specialization | -? | +N/A | |||||||
1884 | -DRWP | +CD6 | Unclear requirements for same-named external-linkage entities | ? | @@ -13289,7 +13289,7 @@ | |||||||
1894 | -DRWP | +CD6 | typedef-names and using-declarations | ? | @@ -13303,7 +13303,7 @@ | |||||||
1896 | -DRWP | +CD6 | Repeated alias templates | ? | @@ -13317,7 +13317,7 @@ | |||||||
1898 | -DRWP | +CD6 | Use of "equivalent" in overload resolution | ? | @@ -13331,7 +13331,7 @@ | |||||||
1900 | -DRWP | +CD6 | Do friend declarations count as "previous declarations"? |
? | @@ -13380,14 +13380,14 @@ | |||||||
1907 | -DRWP | +CD6 | using-declarations and default arguments | ? | ||||||||
1908 | -DRWP | +CD6 | Dual destructor lookup and template-ids | ? | @@ -13434,11 +13434,11 @@ | 11 | ||||||
1915 | -extension | +open | Potentially-invoked destructors in non-throwing constructors | -? | +- | |||||||
1921 | NAD | constexpr constructors and point of initialization of const variables |
- ? | +N/A | +||||||||
1923 | -extension | +NAD | Lvalues of type void |
- ? | +N/A | |||||||
1933 | NAD | Implementation limit for initializer-list elements | -? | +N/A | ||||||||
1934 | -extension | +NAD | Relaxing exception-specification compatibility requirements | -? | +N/A | |||||||
1935 | -review | +CD5 | Reuse of placement arguments in deallocation | - | ||||||||
1936 | -DRWP | +CD6 | Dependent qualified-ids | ? | @@ -13730,9 +13731,9 @@ | |||||||
1957 | -extension | +NAD | decltype(auto) with direct-list-initialization |
- ? | +N/A | |||||||
? | ||||||||||||
1962 | -extension | +open | Type of __func__ |
- ? | +- | |||||||
1969 | -DRWP | +CD6 | Missing exclusion of ~S as an ordinary function name |
- | @@ -13835,16 +13836,16 @@ | |||||||
1972 | -WP | +CD6 | Identifier character restrictions in non-identifiers | - | ||||||||
1973 | -open | +tentatively ready | Which parameter-declaration-clause in a lambda-expression? | -- | +? | |||||||
2007 | -DRWP | +CD6 | Argument-dependent lookup for operator= |
? | @@ -14094,7 +14095,7 @@ | |||||||
2009 | -DRWP | +CD6 | Unclear specification of class scope | ? | @@ -14407,11 +14408,11 @@ | ? | ||||||
2054 | -open | +review | Missing description of class SFINAE | -- | +? | |||||||
2058 | -DRWP | +CD6 | More errors from internal-linkage namespaces | ? | @@ -14465,7 +14466,7 @@ | |||||||
2062 | -DRWP | +CD6 | Class template redeclaration requirements | ? | @@ -14486,7 +14487,7 @@ | |||||||
2065 | -DRWP | +CD6 | Current instantiation of a partial specialization | ? | @@ -14521,7 +14522,7 @@ | |||||||
2070 | -DRWP | +CD6 | using-declaration with dependent nested-name-specifier | ? | @@ -14533,11 +14534,11 @@ | ? | ||||||
2072 | -open | +DR | Default argument instantiation for member functions of templates | -- | +? | |||||||
2111 | -extension | +NAD | Array temporaries in reference binding | -? | +N/A | |||||||
2119 | NAD | Disambiguation of multi-level covariant return type | -? | +N/A | ||||||||
2121 | -WP | +CD6 | More flexible lambda syntax | ? | @@ -14906,9 +14907,9 @@ | |||||||
2125 | -extension | +NAD | Copy elision and comma operator | -? | +N/A | |||||||
2132 | -extension | +NAD | Deprecated default generated copy constructors | -? | +N/A | |||||||
2165 | -DRWP | +CD6 | Namespaces, declarative regions, and translation units | ? | @@ -15325,11 +15326,11 @@ | ? | ||||||
2185 | -open | +CD6 | Cv-qualified numeric types | -- | +? | |||||||
? | ||||||||||||
2194 | -review | +drafting | Impossible case in list initialization | -? | +- | |||||||
2197 | -review | +C++17 | Overload resolution and deleted special member functions | ? | @@ -15425,7 +15426,7 @@ | |||||||
2199 | -DRWP | +CD6 | Typedefs and tags | ? | @@ -15523,7 +15524,7 @@ | |||||||
2213 | -DRWP | +CD6 | Forward declaration of partial specializations | ? | @@ -15579,7 +15580,7 @@ | |||||||
2221 | -review | +CD6 | Copying volatile objects | ? | @@ -15626,11 +15627,11 @@ | ? | ||||||
2228 | -review | +open | Ambiguity resolution for cast to function type | -? | +- | |||||||
? | ||||||||||||
2242 | -drafting | +DRWP | ODR violation with constant initialization possibly omitted | -- | +? | |||||||
2270 | -extension | +NAD | Non-inline functions and explicit instantiation declarations | -? | +N/A | |||||||
? | ||||||||||||
2296 | -extension | +open | Are default argument instantiation failures in the "immediate context"? | -? | +- | |||||||
2312 | -DRWP | +CD6 | Structured bindings and mutable |
? | @@ -16349,7 +16350,7 @@ | |||||||
2331 | -DRWP | +CD6 | Redundancy in description of class scope | ? | @@ -16363,7 +16364,7 @@ | |||||||
2333 | -WP | +CD6 | Escape sequences in UTF-8 character literals | ? | @@ -16447,7 +16448,7 @@ | |||||||
2345 | -review | +CD5 | Jumping across initializers in init-statements and conditions | Yes | @@ -16517,7 +16518,7 @@ | |||||||
2355 | -DR | +CD6 | Deducing noexcept-specifiers | 12 | PR92434 | @@ -16564,11 +16565,11 @@- | ||||||
2362 | -extension | +open | __func__ should be constexpr |
- ? | +- | |||||||
2369 | -DRWP | +CD6 | Ordering between constraints and substitution | 11 | ||||||||
2370 | -DRWP | +CD6 | friend declarations of namespace-scope functions |
? | @@ -16736,8 +16737,8 @@ | 2386 | CD5 | tuple_size requirements for structured binding | -? | -+ | No | +PR110216 |
2387 | @@ -16753,11 +16754,11 @@Yes | contracts removed | ||||||||||
2389 | -open | +CD6 | Agreement of deduced and explicitly-specified variable types | -- | +? | |||||||
? | ||||||||||||
2392 | -open | +DRWP | new-expression size check and constant evaluation | -- | +? | |||||||
2393 | NAD | Pseudo-destructors and object lifetime | -? | +N/A | ||||||||
2395 | -open | +drafting | Parameters following a pack expansion | - | ||||||||
2396 | -DRWP | +CD6 | Lookup of names in complex conversion-type-ids | ? | ||||||||
2397 | -DRWP | +CD6 | auto specifier for pointers and references to arrays |
12 | PR100975 | |||||||
2398 | -open | +drafting | Template template parameter matching and deduction | - | @@ -16839,21 +16840,21 @@ | |||||||
2401 | -open | +drafting | Array decay vs prohibition of subobject non-type arguments | - | ||||||||
2402 | -WP | +CD6 | When is the restriction to a single c-char in a Unicode literal enforced? | ? | ||||||||
2403 | -open | +drafting | Temporary materialization and base/member initialization | - | git | @@ -16867,7 +16868,7 @@|||||||
2405 | -DR | +CD6 | Additional type-dependent expressions | ? | @@ -16881,16 +16882,16 @@ | |||||||
2407 | -review | +DRWP | Missing entry in Annex C for defaulted comparison operators | ? | ||||||||
2408 | -open | +NAD | Temporaries and previously-initialized elements in aggregate initialization | -- | +N/A | |||||||
2410 | -review | +DRWP | Implicit calls of immediate functions | ? | @@ -16914,16 +16915,16 @@ | ? | ||||||
2412 | -open | +review | SFINAE vs undeduced placeholder type | -- | +? | |||||||
2413 | -DRWP | +CD6 | typename in conversion-function-ids |
10 | @@ -17026,11 +17027,11 @@ | ? | ||||||
2428 | -open | +DRWP | Deprecating a concept | -- | +? | |||||||
Yes | ||||||||||||
2440 | -open | +DRWP | Allocation in core constant expressions | -- | +? | |||||||
? | ||||||||||||
2443 | -drafting | +DRWP | Meaningless template exports | -- | +? | |||||||
2448 | -DRWP | +CD6 | Cv-qualification of arithmetic types and deprecation of volatile | ? | @@ -17189,14 +17190,14 @@ | |||||||
2451 | -review | +DRWP | promise.unhandled_exception() and final suspend point |
? | ||||||||
2452 | -DRWP | +CD6 | Flowing off the end of a coroutine | ? | @@ -17217,7 +17218,7 @@ | |||||||
2455 | -WP | +CD6 | Concatenation of string literals vs translation phases 5 and 6 | ? | @@ -17231,14 +17232,14 @@ | |||||||
2457 | -DRWP | +CD6 | Unexpanded parameter packs don't make a function type dependent | ? | ||||||||
2458 | -DRWP | +CD6 | Value category of expressions denoting non-static member functions | ? | @@ -17252,14 +17253,14 @@ | |||||||
2460 | -DRWP | +CD6 | C language linkage and constrained non-template friends | ? | ||||||||
2461 | -DRWP | +CD6 | Diagnosing non-bool type constraints |
Yes | @@ -17278,30 +17279,30 @@ | - | ||||||
2464 | -open | +CD6 | Constexpr launder and unions | -- | +? | |||||||
2465 | -DRWP | +CD6 | Coroutine parameters passed to a promise constructor | ? | ||||||||
2466 | -DRWP | +CD6 | co_await should be a single evaluation |
? | ||||||||
2467 | -open | +drafting | CTAD for alias templates and the deducible check | - | @@ -17322,7 +17323,7 @@ | |||||||
2470 | -DRWP | +CD6 | Multiple array objects providing storage for one object | ? | @@ -17350,42 +17351,42 @@ | |||||||
2474 | -DRWP | +CD6 | Cv-qualification and deletion | ? | ||||||||
2475 | -open | +DR | Object declarations of type cv void |
- - | +? | |||||||
2476 | -drafting | +tentatively ready | placeholder-type-specifiers and function declarators | -- | +? | |||||||
2477 | -DRWP | +CD6 | Defaulted vs deleted copy constructors/assignment operators | ? | ||||||||
2478 | -open | +DR | Properties of explicit specializations of implicitly-instantiated class templates | -- | +? | |||||||
2479 | -DRWP | +CD6 | Missing specifications for consteval and constinit |
Yes | @@ -17399,42 +17400,42 @@ | |||||||
2481 | -DRWP | +CD6 | Cv-qualification of temporary to which a reference is bound | Yes | PR100976 | |||||||
2482 | -WP | +CD6 | bit_cast and indeterminate values |
? | ||||||||
2483 | -open | +DR | Language linkage of static member functions | -- | +? | |||||||
2484 | -DRWP | +CD6 | char8_t and char16_t in integral promotions |
? | ||||||||
2485 | -open | +tentatively ready | Bit-fields in integral promotions | -- | +? | |||||||
2486 | -DRWP | +CD6 | Call to noexcept function via noexcept(false) pointer/lvalue |
? | @@ -17453,32 +17454,32 @@ | - | ||||||
2489 | -open | +DR | Storage provided by array of char |
- - | +? | |||||||
2490 | -DRWP | +CD6 | Restrictions on destruction in constant expressions | ? | ||||||||
2491 | -DRWP | +CD6 | Export of typedef after its first declaration | ? | ||||||||
2492 | -drafting | +review | Comparing user-defined conversion sequences in list-initialization | -- | +? | |||||||
2494 | -DRWP | +CD6 | Multiple definitions of non-odr-used entities | ? | ||||||||
2495 | -review | +open | Glvalue result of a function call | -? | +- | |||||||
2496 | -DRWP | +CD6 | ref-qualifiers and virtual overriding | ? | @@ -17525,7 +17526,7 @@ | |||||||
2499 | -DRWP | +CD6 | Inconsistency in definition of pointer-interconvertibility | ? | @@ -17539,14 +17540,14 @@ | |||||||
2501 | -open | +drafting | Explicit instantiation and trailing requires-clauses | - | ||||||||
2502 | -WP | +CD6 | Unintended declaration conflicts in nested statement scopes | ? | @@ -17558,11 +17559,11 @@ | - | ||||||
2504 | -open | +review | Inheriting constructors from virtual base classes | -- | +? | |||||||
2506 | -DRWP | +CD6 | Structured bindings and array cv-qualifiers | ? | ||||||||
2507 | -accepted | +CD6 | Default arguments for operator[] |
13 | ||||||||
2508 | -review | +DRWP | Restrictions on uses of template parameter names | ? | ||||||||
2509 | -DRWP | +CD6 | decl-specifier-seq in lambda-specifiers | ? | ||||||||
2510 | -open | +NAD | noexcept-specifier of friend function vs class completeness | -- | +N/A | |||||||
2511 | -DRWP | +CD6 | cv-qualified bit-fields | ? | @@ -17628,11 +17629,11 @@ | - | ||||||
2514 | -open | +review | Modifying const subobjects | -- | +? | |||||||
- | ||||||||||||
2516 | -open | +DR | Locus of enum-specifier or opaque-enum-declaration | -- | +? | |||||||
2517 | -open | +DR | Useless restriction on use of parameter in constraint-expression | -- | +? | |||||||
2518 | -open | +DR | Conformance requirements and #error/#warning |
- - | +? | |||||||
2519 | -open | +tentatively ready | Object representation of a bit-field | -- | +? | |||||||
2520 | -open | +DR | Template signature and default template arguments | -- | +? | |||||||
2521 | -open | +DR | User-defined literals and reserved identifiers | -- | +? | |||||||
- | ||||||||||||
2523 | -open | +DR | Undefined behavior via omitted destructor call in constant expressions | -- | +? | |||||||
2524 | -open | +NAD | Distinguishing user-defined conversion sequences by ref-qualifier | -- | +N/A | |||||||
2525 | -open | +drafting | Incorrect definition of implicit conversion sequence | - | ||||||||
2526 | -open | +DR | Relational comparison of void* pointers |
- - | +? | |||||||
2527 | -open | +NAD | Non-class potentially-overlapping objects | -- | +N/A | |||||||
2528 | -open | +DR | Three-way comparison and the usual arithmetic conversions | -- | +? | |||||||
2529 | -open | +DR | Constant destruction of constexpr references | -- | +? | |||||||
2530 | -open | +DR | Multiple definitions of enumerators | -- | +? | |||||||
2531 | -open | +review | Static data members redeclared as constexpr | -- | +? | |||||||
2533 | -open | +drafting | Storage duration of implicitly created objects | - | ||||||||
2534 | -DR | +CD6 | Value category of pseudo-destructor expression | ? | ||||||||
2535 | -DR | +CD6 | Type punning in class member access | ? | @@ -17791,28 +17792,28 @@ | |||||||
2537 | -open | +drafting | Overbroad grammar for parameter-declaration | - | ||||||||
2538 | -open | +DRWP | Can standard attributes be syntactically ignored? | -- | +? | |||||||
2539 | -open | +DR | Three-way comparison requiring strong ordering for floating-point types | -- | +? | |||||||
2540 | -DR | +CD6 | Unspecified interpretation of numeric-escape-sequence | ? | @@ -17826,16 +17827,16 @@ | |||||||
2542 | -open | +drafting | Is a closure type a structural type? | - | ||||||||
2543 | -open | +DR | constinit and optimized dynamic initialization |
- - | +? | |||||||
- | ||||||||||||
2558 | -open | +DR | Uninitialized subobjects as a result of an immediate invocation | -- | +? | |||||||
2569 | -review | +CD6 | Use of decltype(capture) in a lambda's parameter-declaration-clause |
? | @@ -18029,7 +18030,7 @@ | |||||||
2571 | -DR | +CD6 | Evaluation order for subscripting | ? | @@ -18106,14 +18107,14 @@ | |||||||
2582 | -DR | +CD6 | Differing member lookup from nested classes | ? | ||||||||
2583 | -review | +DRWP | Common initial sequence should consider over-alignment | ? | @@ -18127,14 +18128,14 @@ | |||||||
2585 | -DR | +CD6 | Name lookup for coroutine allocation | ? | ||||||||
2586 | -accepted | +CD6 | Explicit object parameter for assignment and comparison | ? | @@ -18160,11 +18161,11 @@ | - | PR10411 | |||||
2590 | -open | +DRWP | Underlying type should determine size and alignment requirements of an enum | -- | +? | |||||||
2594 | -DR | +CD6 | Disallowing a global function template main |
Yes | @@ -18204,91 +18205,91 @@ | |||||||
2596 | -open | +drafting | Instantiation of constrained non-template friends | - | ||||||||
2597 | -DR | +CD6 | Replaceable allocation and deallocation functions in the global module | ? | ||||||||
2598 | -open | +DRWP | Unions should not require a non-static data member of literal type | -- | +? | |||||||
2599 | -open | +DRWP | What does initializing a parameter include? | -- | +? | |||||||
2600 | -open | +review | Type dependency of placeholder types | -- | +? | |||||||
2601 | -open | +DRWP | Tracking of created and destroyed subobjects | -- | +? | |||||||
2602 | -open | +DR | consteval defaulted functions | -- | +? | dup of CWG2559? | ||||||
2603 | -open | +DRWP | Holistic functional equivalence for function templates | -- | +? | |||||||
2604 | -open | +DRWP | Attributes for an explicit specialization | -- | +? | |||||||
2605 | -open | +DRWP | Implicit-lifetime aggregates | -- | +? | |||||||
2606 | -DR | +CD6 | static_cast from "pointer to void" does not handle similar types |
? | ||||||||
2607 | -open | +drafting | Visibility of enumerator names | - | ||||||||
2608 | -DR | +CD6 | Omitting an empty template argument list | ? | @@ -18300,11 +18301,727 @@ | - | ||||||
2610 | +DRWP | +Indirect private base classes in aggregates | +? | ++ | ||||||||
2611 | +DRWP | +Missing parentheses in expansion of fold-expression could cause syntactic reinterpretation | +? | ++ | ||||||||
2612 | +DRWP | +Incorrect comment in example | +? | ++ | ||||||||
2613 | +DRWP | +Incomplete definition of resumer | +? | ++ | ||||||||
2614 | +DRWP | +Unspecified results for class member access | +? | ++ | ||||||||
2615 | +WP | +Missing __has_cpp_attribute(assume) |
+ ? | ++ | ||||||||
2616 | +DRWP | +Imprecise restrictions on break and continue |
+ ? | ++ | ||||||||
2617 | +open | +Default template arguments for template members of non-template classes | +- | ++ | ||||||||
2618 | +DRWP | +Substitution during deduction should exclude exception specifications | +? | ++ | ||||||||
2619 | +DRWP | +Kind of initialization for a designated-initializer-list | +? | ++ | ||||||||
2620 | +DRWP | +Nonsensical disambiguation rule | +? | ++ | ||||||||
2621 | +DRWP | +Kind of lookup for using enum declarations |
+ ? | ++ | ||||||||
2622 | +DRWP | +Compounding types from function and pointer-to-member types | +? | ++ | ||||||||
2623 | +drafting | +Invoking destroying operator delete for constructor failure |
+ - | ++ | ||||||||
2624 | +DRWP | +Array delete expression with no array cookie | +? | ++ | ||||||||
2625 | +DRWP | +Deletion of pointer to out-of-lifetime object | +? | ++ | ||||||||
2626 | +DRWP | +Rephrase ones' complement using base-2 representation | +? | ++ | ||||||||
2627 | +DRWP | +Bit-fields and narrowing conversions | +? | ++ | ||||||||
2628 | +open | +Implicit deduction guides should propagate constraints | +- | ++ | ||||||||
2629 | +DRWP | +Variables of floating-point type as switch conditions |
+ ? | ++ | ||||||||
2630 | +DRWP | +Syntactic specification of class completeness | +? | ++ | ||||||||
2631 | +DRWP | +Immediate function evaluations in default arguments | +? | ++ | ||||||||
2632 | +open | +'user-declared' is not defined | +- | ++ | ||||||||
2633 | +open | +typeid of constexpr-unknown dynamic type | +- | ++ | ||||||||
2634 | +open | +Avoid circularity in specification of scope for friend class declarations | +- | ++ | ||||||||
2635 | +DRWP | +Constrained structured bindings | +? | ++ | ||||||||
2636 | +DRWP | +Update Annex E based on Unicode 15.0 UAX #31 | +? | ++ | ||||||||
2637 | +open | +Injected-class-name as a simple-template-id | +- | ++ | ||||||||
2638 | +open | +Improve the example for initializing by initializer list | +- | ++ | ||||||||
2639 | +WP | +new-lines after phase 1 | +? | ++ | ||||||||
2640 | +WP | +Allow more characters in an n-char sequence | +? | ++ | ||||||||
2641 | +DRWP | +Redundant specification of value category of literals | +? | ++ | ||||||||
2642 | +DR | +Inconsistent use of T and C | +? | ++ | ||||||||
2643 | +DRWP | +Completing a pointer to array of unknown bound | +? | ++ | ||||||||
2644 | +DRWP | +Incorrect comment in example | +? | ++ | ||||||||
2645 | +DRWP | +Unused term "default argument promotions" | +? | ++ | ||||||||
2646 | +DRWP | +Defaulted special member functions | +? | ++ | ||||||||
2647 | +DRWP | +Fix for "needed for constant evaluation" | +? | ++ | ||||||||
2648 | +DRWP | +Correspondence of surrogate call function and conversion function | +? | ++ | ||||||||
2649 | +DRWP | +Incorrect note about implicit conversion sequence | +? | ++ | ||||||||
2650 | +DRWP | +Incorrect example for ill-formed non-type template arguments | +? | ++ | ||||||||
2651 | +DRWP | +Conversion function templates and "noexcept" | +? | ++ | ||||||||
2652 | +WP | +Overbroad definition of __STDCPP_BFLOAT16_T__ |
+ ? | ++ | ||||||||
2653 | +WP | +Can an explicit object parameter have a default argument? | +? | ++ | ||||||||
2654 | +DRWP | +Un-deprecation of compound volatile assignments | +? | ++ | ||||||||
2655 | +open | +Instantiation of default arguments in lambda-expressions | +- | ++ | ||||||||
2656 | +open | +Converting consteval lambda to function pointer in non-immediate context | +- | ++ | ||||||||
2657 | +open | +Cv-qualification adjustment when binding reference to temporary | +- | ++ | ||||||||
2658 | +DR | +Trivial copying of unions in core constant expressions | +? | ++ | ||||||||
2659 | +accepted | +Missing feature-test macro for lifetime extension in range-for loop | +? | ++ | ||||||||
2660 | +open | +Confusing term "this parameter" | +- | ++ | ||||||||
2661 | +open | +Missing disambiguation rule for pure-specifier vs. brace-or-equal-initializer | +- | ++ | ||||||||
2662 | +DR | +Example for member access control vs. overload resolution | +? | ++ | ||||||||
2663 | +tentatively ready | +Example for member redeclarations with using-declarations | +? | ++ | ||||||||
2664 | +DR | +Deduction failure in CTAD for alias templates | +? | ++ | ||||||||
2665 | +NAD | +Replacing a subobject with a complete object | +N/A | ++ | ||||||||
2666 | +open | +Lifetime extension through static_cast |
+ - | ++ | ||||||||
2667 | +DR | +Named module imports do not import macros | +? | ++ | ||||||||
2668 | +open | +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 | +open | +Lambda body SFINAE is still required, contrary to intent and note | +- | ++ | ||||||||
2673 | +DR | +User-declared spaceship vs. built-in operators | +? | ++ | ||||||||
2674 | +accepted | +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 | +DR | +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 | +DR | +Deducing member array type from string literal | +? | ++ | ||||||||
2682 | +DR | +Templated function vs. function template | +? | ++ | ||||||||
2683 | +ready | +Default arguments for member functions of templated nested classes | +? | ++ | ||||||||
2684 | +open | +thread_local dynamic initialization | +- | ++ | ||||||||
2685 | +DR | +Aggregate CTAD, string, and brace elision | +? | ++ | ||||||||
2686 | +open | +Pack expansion into a non-pack parameter of a concept | +- | ++ | ||||||||
2687 | +review | +Calling an explicit object member function via an address-of-overload-set | +? | ++ | ||||||||
2688 | +open | +Calling explicit object member functions | +- | ++ | ||||||||
2689 | +open | +Are cv-qualified std::nullptr_t fundamental types? |
+ - | ++ | ||||||||
2690 | +DR | +Semantics of defaulted move assignment operator for unions | +? | ++ | ||||||||
2691 | +accepted | +hexadecimal-escape-sequence is too greedy | +? | ++ | ||||||||
2692 | +accepted | +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 | +DR | +Semantic ignorability of attributes | +? | ++ | ||||||||
2696 | +open | +Relational comparisons of pointers to void |
+ - | ++ | ||||||||
2697 | +open | +Deduction guides using abbreviated function syntax | +- | ++ | ||||||||
2698 | +review | +Using extended integer types with z suffix |
+ ? | ++ | ||||||||
2699 | +ready | +Inconsistency of throw-expression specification | +? | ++ | ||||||||
2700 | +review | +#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 | +open | +Deduction guides cannot have a trailing requires-clause | +- | ++ | ||||||||
2708 | +open | +Parenthesized initialization of arrays | +- | ++ | ||||||||
2709 | +open | +Parenthesized initialization of reference-to-aggregate | +- | ++ | ||||||||
2710 | +open | +Loops in constant expressions | +- | ++ |
This page is currently maintained by polacek@redhat.com.
Last update: -Tue Nov 8 05:29:51 PM EST 2022 +Mon Jun 12 06:43:39 PM EDT 2023