From patchwork Tue Aug 16 15:34:28 2022
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
- 106 (here).
170 | -drafting | +open | Pointer-to-member conversions | - | @@ -3211,7 +3211,7 @@ | ||
455 | -drafting | +open | Partial ordering and non-deduced arguments | - | @@ -3358,7 +3358,7 @@ | ||
476 | -extension | +CD5 | Determining the buffer size for placement new | ? | @@ -4070,9 +4070,9 @@ | ? | |
578 | -open | +review | Phase 1 replacement of characters with universal-character-names | - | @@ -4835,7 +4835,7 @@ | ||
687 | -extension | +NAD | template keyword with unqualified-ids |
? | @@ -4847,9 +4847,9 @@ | ? | |
689 | -open | +CD5 | Maximum values of signed and unsigned integers | - | @@ -5122,7 +5122,7 @@ | ||
728 | -extension | +NAD | Restrictions on local classes | ? | @@ -6437,9 +6437,9 @@ | ? | |
916 | -open | +concepts | Does a reference type have a destructor? | - | @@ -6635,7 +6635,7 @@ | ||
944 | -extension | +NAD | reinterpret_cast for all types with the same size and alignment |
? | @@ -8798,7 +8798,7 @@ | ||
1253 | -drafting | +open | Generic non-template members | - | @@ -8812,7 +8812,7 @@ | ||
1255 | -drafting | +open | Definition problems with constexpr functions |
- | @@ -8831,9 +8831,9 @@ | - | |
1258 | -drafting | +CD5 | "Instantiation context" differs from dependent lookup rules | - | @@ -9085,7 +9085,7 @@ | ||
1294 | -drafting | +open | Side effects in dynamic/static initialization | - | @@ -9309,7 +9309,7 @@ | ||
1326 | -extension | +dup | Deducing an array bound from an initializer-list | ? | @@ -9372,7 +9372,7 @@ | ||
1335 | -drafting | +open | Stringizing, extended characters, and universal-character-names | - | @@ -9419,9 +9419,9 @@ | ? | |
1342 | -drafting | +DRWP | Order of initialization with multiple declarators | - | @@ -9778,7 +9778,7 @@ | ||
1393 | -extension | +C++17 | Pack expansions in using-declarations | ? | @@ -9799,7 +9799,7 @@ | ||
1396 | -drafting | +open | Deferred instantiation and checking of non-static data member initializers | - | @@ -9846,9 +9846,9 @@ | ? | |
1403 | -open | +review | Universal-character-names in comments | - | @@ -10037,7 +10037,7 @@ | ||
1430 | -drafting | +open | Pack expansion into fixed alias template parameter list | - | PR66834, @@ -10054,7 +10054,7 @@ | ||
1432 | -drafting | +open | Newly-ambiguous variadic template expansions | - | @@ -10313,7 +10313,7 @@ | ||
1469 | -extension | +CD5 | Omitted bound in array new-expression | ? | @@ -10957,7 +10957,7 @@ | ||
1561 | -extension | +CD4 | Aggregates with empty base classes | ? | @@ -11413,7 +11413,7 @@ | ||
1626 | -drafting | +open | constexpr member functions in brace-or-equal-initializers |
- | @@ -12113,7 +12113,7 @@ | ||
1726 | -DR | +DRWP | Declarator operators and conversion function | No | PR79318 | @@ -12223,9 +12223,9 @@? | |
1742 | -open | +CD5 | using-declarations and scoped enumerators | - | @@ -12923,9 +12923,9 @@ | ? | |
1842 | -concurrency | +open | Unevaluated operands and "carries a dependency" | ? | @@ -12939,7 +12939,7 @@ | ||
1844 | -drafting | +open | Defining "immediate context" | - | @@ -13415,7 +13415,7 @@ | ||
1912 | -extension | +CD5 | exception-specification of defaulted function | ? | @@ -13548,7 +13548,7 @@ | ||
1931 | -extension | +CD5 | Default-constructible and copy-assignable closure types | ? | @@ -13574,9 +13574,9 @@ | ? | |
1935 | -drafting | +review | Reuse of placement arguments in deallocation | - | @@ -13604,7 +13604,7 @@ | ||
1939 | -drafting | +open | Argument conversions to nondeduced parameter types revisited | - | @@ -13812,9 +13812,9 @@ | ? | |
1969 | -open | +DRWP | Missing exclusion of ~S as an ordinary function name |
- | @@ -13833,16 +13833,16 @@ | ? | |
1972 | -open | +WP | Identifier character restrictions in non-identifiers | - | |||
1973 | -drafting | +open | Which parameter-declaration-clause in a lambda-expression? | - | @@ -14535,7 +14535,7 @@ | ||
2072 | -drafting | +open | Default argument instantiation for member functions of templates | - | @@ -14841,11 +14841,11 @@ | - | |
2116 | -drafting | +C++17 | Direct or copy initialization for omitted aggregate initializers | -- | +? | ||
- | |||||||
2169 | -extension | +open | Narrowing conversions and overload resolution | ? | @@ -15349,7 +15349,7 @@ | ||
2188 | open | -empty-declaration ambiguity | +empty-declaration grammar ambiguity | - | ? | - | |
2212 | -open | +CD5 | Typedef changing linkage after use | -- | +? | ||
- | |||||||
2298 | -concurrency | +open | Actions and expression evaluation | -? | +- | ||
2341 | -extension | +CD5 | Structured bindings with static storage duration | ? | @@ -16515,11 +16515,11 @@ | ? | |
2355 | -extension | +DR | Deducing noexcept-specifiers | -- | +12 | PR92434 | |
? | |||||||
2405 | -drafting | +DR | Additional type-dependent expressions | -- | +? | ||
? | |||||||
2420 | -open | +dup | Exception specifications in explicit instantiation | - | @@ -17490,7 +17490,7 @@ | ||
2494 | -DR | +DRWP | Multiple definitions of non-odr-used entities | ? | @@ -17523,9 +17523,9 @@ | - | |
2499 | -DR | +DRWP | Inconsistency in definition of pointer-interconvertibility | ? | @@ -17546,7 +17546,7 @@ | ||
2502 | -accepted | +WP | Unintended declaration conflicts in nested statement scopes | ? | @@ -17574,14 +17574,14 @@ | ||
2506 | -DR | +DRWP | Structured bindings and array cv-qualifiers | ? | |||
2507 | -review | +accepted | Default arguments for operator[] |
? | @@ -17595,7 +17595,7 @@ | ||
2509 | -DR | +DRWP | decl-specifier-seq in lambda-specifiers | ? | @@ -17609,7 +17609,7 @@ | ||
2511 | -DR | +DRWP | cv-qualified bit-fields | ? | @@ -17747,11 +17747,564 @@ | - | |
2531 | +open | +Static data members redeclared as constexpr | +- | ++ | |||
2532 | +open | +Kind of pointer value returned by new T[0] |
+ - | ++ | |||
2533 | +open | +Storage duration of implicitly created objects | +- | ++ | |||
2534 | +DR | +Value category of pseudo-destructor expression | +? | ++ | |||
2535 | +DR | +Type punning in class member access | +? | ++ | |||
2536 | +open | +Partially initialized variables during constant initialization | +- | ++ | |||
2537 | +open | +Overbroad grammar for parameter-declaration | +- | ++ | |||
2538 | +open | +Can standard attributes be syntactically ignored? | +- | ++ | |||
2539 | +open | +Three-way comparison requiring strong ordering for floating-point types | +- | ++ | |||
2540 | +DR | +Unspecified interpretation of numeric-escape-sequence | +? | ++ | |||
2541 | +open | +Linkage specifications, module purview, and module attachment | +- | ++ | |||
2542 | +open | +Is a closure type a structural type? | +- | ++ | |||
2543 | +open | +constinit and optimized dynamic initialization |
+ - | ++ | |||
2544 | +open | +Address of past-the-end of a potentially-overlapping subobject | +- | ++ | |||
2545 | +open | +Transparently replacing objects in constant expressions | +- | ++ | |||
2546 | +open | +Defaulted secondary comparison operators defined as deleted | +- | ++ | |||
2547 | +open | +Defaulted comparison operator function for non-classes | +- | ++ | |||
2548 | +open | +Array prvalues and additive operators | +- | ++ | |||
2549 | +open | +Implicitly moving the operand of a throw-expression in unevaluated contexts | +- | ++ | |||
2550 | +open | +Type "reference to cv void " outside of a declarator |
+ - | ++ | |||
2551 | +open | +"Refers to allocated storage" has no meaning | +- | ++ | |||
2552 | +open | +Constant evaluation of non-defining variable declarations | +- | ++ | |||
2553 | +open | +Restrictions on explicit object member functions | +- | ++ | |||
2554 | +open | +Overriding virtual functions, also with explicit object parameters | +- | ++ | |||
2555 | +open | +Ineffective redeclaration prevention for using-declarators | +- | ++ | |||
2556 | +open | +Unusable promise::return_void |
+ - | ++ | |||
2557 | +drafting | +Class member access referring to an unrelated class | +- | ++ | |||
2558 | +open | +Uninitialized subobjects as a result of an immediate invocation | +- | ++ | |||
2559 | +open | +Defaulted consteval functions | +- | ++ | |||
2560 | +open | +Parameter type determination in a requirement-parameter-list | +- | ++ | |||
2561 | +open | +Conversion to function pointer for lambda with explicit object parameter | +- | ++ | |||
2562 | +open | +Exceptions thrown during coroutine startup | +- | ++ | |||
2563 | +open | +Initialization of coroutine result object | +- | ++ | |||
2564 | +open | +Conversion to function pointer with an explicit object parameter | +- | ++ | |||
2565 | +open | +Invalid types in the parameter-declaration-clause of a requires-expression | +- | ++ | |||
2566 | +open | +Matching deallocation for uncaught exception | +- | ++ | |||
2567 | +open | +Operator lookup ambiguity | +- | ++ | |||
2568 | +open | +Access checking during synthesis of defaulted comparison operator | +- | ++ | |||
2569 | +review | +Use of decltype(capture) in a lambda's parameter-declaration-clause |
+ ? | ++ | |||
2570 | +open | +Clarify constexpr for defaulted functions | +- | ++ | |||
2571 | +DR | +Evaluation order for subscripting | +? | ++ | |||
2572 | +open | +Address of overloaded function with no target | +- | ++ | |||
2573 | +open | +Undefined behavior when splicing results in a universal-character-name | +- | ++ | |||
2574 | +open | +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 | +DR | +Differing member lookup from nested classes | +? | ++ | |||
2583 | +review | +Common initial sequence should consider over-alignment | +? | ++ | |||
2584 | +open | +Equivalent types in function template declarations | +- | ++ | |||
2585 | +DR | +Name lookup for coroutine allocation | +? | ++ | |||
2586 | +accepted | +Explicit object parameter for assignment and comparison | +? | ++ | |||
2587 | +open | +Visible side effects and initial value of an object | +- | ++ | |||
2588 | +drafting | +friend declarations and module linkage | +- | ++ | |||
2589 | +open | +Context of access checks during constraint satisfaction checking | +- | +PR10411 | +|||
2590 | +open | +Underlying type should determine size and alignment requirements of an enum | +- | ++ | |||
2591 | +open | +Implicit change of active union member for anonymous union in union | +- | ++ | |||
2592 | +open | +Missing definition for placement allocation/deallocation function | +- | ++ | |||
2593 | +open | +Insufficient base class restriction for pointer-to-member expression | +- | ++ | |||
2594 | +DR | +Disallowing a global function template main |
+ Yes | ++ | |||
2595 | +open | +"More constrained" for eligible special member functions | +- | ++ | |||
2596 | +open | +Instantiation of constrained non-template friends | +- | ++ | |||
2597 | +DR | +Replaceable allocation and deallocation functions in the global module | +? | ++ | |||
2598 | +open | +Unions should not require a non-static data member of literal type | +- | ++ | |||
2599 | +open | +What does initializing a parameter include? | +- | ++ | |||
2600 | +open | +Type dependency of placeholder types | +- | ++ | |||
2601 | +open | +Tracking of created and destroyed subobjects | +- | ++ | |||
2602 | +open | +consteval defaulted functions | +- | +dup of CWG2559? | +|||
2603 | +open | +Holistic functional equivalence for function templates | +- | ++ | |||
2604 | +open | +Attributes for an explicit specialization | +- | ++ | |||
2605 | +open | +Implicit-lifetime aggregates | +- | ++ | |||
2606 | +DR | +static_cast from "pointer to void" does not handle similar types |
+ ? | ++ | |||
2607 | +open | +Visibility of enumerator names | +- | ++ | |||
2608 | +DR | +Omitting an empty template argument list | +? | ++ | |||
2609 | +open | +Padding in class types | +- | ++ |
This page is currently maintained by polacek@redhat.com.
Last update: -Thu Apr 21 06:10:47 PM EDT 2022 +Tue Aug 16 11:26:21 AM EDT 2022