## C++ Standard Core Language Issue Index by Section, Revision 107

This document contains a summary listing of all the C++ Core Language issues arranged in the order of the sections of the Standard with which they deal most directly. It is part of a group of related documents that together describe the issues that have been raised regarding the C++ Standard. The other documents in the group are:

- Active Issues List, which contains explanatory material for the entire document group and a list of the issues that have not yet been acted upon by the Committee.
- Defect Reports List, which contains the issues that have been categorized by the Committee as Defect Reports, as well as other issues that have been accepted by the Committee, along with their proposed resolutions.
- Closed Issues List, which contains the issues which the Committee has decided are not defects in the International Standard, including a brief rationale explaining the reason for the decision.
- Table of Contents, which contains a summary listing of all issues in numerical order.
- Index by Status, which contains a summary listing of all issues grouped by status.

For more information, including a description of the meaning of the issue status codes and instructions on reporting new issues, please see the Active Issues List.

Section references in this document reflect the section numbering of document WG21 N4901.

### Index by Section

Section | Issue | Status | Title
_N2691_.E | 131 | TC1 | Typo in Lao characters
_N2691_.E | 248 | C++11 | Identifier characters
_N2691_.E | 663 | CD1 | Valid Cyrillic identifier characters
_N2914_.14.10.1.1 | 889 | concepts | Default implementations of associated functions
_N2914_.14.10.2 | 780 | concepts | Questions regarding the point of definition of a concept map
_N2914_.14.10.2 | 911 | concepts | `late_check` and concept map templates
_N2914_.14.10.2.1 | 870 | concepts | Context of expression when satisfying an associated function requirement
_N2914_.14.10.2.1 | 871 | concepts | Satisfying associated functions with built-in operators
_N2914_.14.10.2.1 | 916 | open | Does a reference type have a destructor?
_N2914_.14.10.2.1 | 918 | concepts | Declaration/expression ambiguity in associated function expressions
_N2914_.14.10.2.2 | 907 | concepts | Default types in requirements in auto concepts
_N2914_.14.10.3.2 | 841 | concepts | Ill-formed concept refinement example
_N2914_.14.10.4 | 825 | concepts | `TriviallyCopyableType` concept
_N2914_.14.11 | 848 | concepts | Unconstrained template template parameters in constrained contexts
_N2914_.14.11.1 | 826 | concepts | Accept boolean constant expressions as constraints
_N2914_.14.11.1 | 827 | concepts | Use of `&&` as requirement separator
_N2914_.14.11.1.1 | 890 | concepts | Missing requirement in example
_N2914_.14.11.1.2 | 857 | concepts | Implying requirements from enclosing scopes
_N2914_.14.11.2 | 781 | concepts | Missing requirement in constrained function example
_N2914_.14.11.2.1 | 748 | concepts | Always-complete archetypes
_N2914_.14.11.2.1 | 895 | concepts | Missing destructor requirements
_N2914_.14.11.4 | 894 | concepts | Incorrect example for constrained overload resolution
_N2960_.3.3.9 | 856 | concepts | Overlapping concept and requirements scopes
_N2960_.6.9 | 859 | concepts | Incomplete comment in `late_check` example
_N3225_.7.6.4 | 816 | CD2 | Diagnosing violations of `[[final]]`
_N3225_.7.6.4 | 817 | CD2 | Meaning of `[[final]]` applied to a class definition
_N3225_.7.6.5 | 1063 | C++11 | `[[hiding]]` with non-attribute declarations
_N3225_.7.6.5 | 1065 | C++11 | `[[hiding]]` with `[[override]]`
_N3225_.7.6.5 | 1067 | NAD | `[[hiding]]`, using-declarations, and multiple inheritance
_N3225_.7.6.5 | 1133 | C++11 | Keywords vs attributes for control of hiding and overriding
_N3225_.11.3 | 1144 | C++11 | Remove access declarations
_N3225_.D.2 | 167 | NAD | Deprecating static functions
_N3225_.D.2 | 174 | NAD | Undeprecating global static
_N4140_.2.4 | 789 | CD2 | Deprecating trigraphs
_N4140_.17.6.4.3.2 | 1882 | CD4 | Reserved names without library use
_N4527_.12.9 | 1150 | NAD | Inheriting constructors have not been implemented
_N4527_.12.9 | 1350 | CD3 | Incorrect exception specification for inherited constructors
_N4527_.12.9 | 1487 | CD3 | When are inheriting constructors declared?
_N4527_.12.9 | 1567 | C++14 | Inheriting constructors and copy/move constructors
_N4527_.12.9 | 1573 | CD4 | Inherited constructor characteristics
_N4527_.12.9 | 1645 | CD4 | Identical inheriting constructors via default arguments
_N4527_.12.9 | 1715 | CD4 | Access and inherited constructor templates
_N4527_.12.9 | 1736 | CD4 | Inheriting constructor templates in a local class
_N4527_.12.9 | 1738 | C++14 | Explicit instantiation/specialization of inheriting constructor templates
_N4527_.12.9 | 1941 | CD4 | SFINAE and inherited constructor default arguments
_N4527_.12.9 | 1959 | CD4 | Inadvertently inherited copy constructor
_N4527_.12.9 | 1991 | CD4 | Inheriting constructors vs default arguments
_N4567_.5.1.1 | 122 | CD1 | template-ids as unqualified-ids
_N4567_.5.1.1 | 123 | TC1 | Bad cross-reference
_N4567_.5.1.1 | 125 | CD1 | Ambiguity in `friend` declaration syntax
_N4567_.5.1.1 | 147 | TC1 | Naming the constructor
_N4567_.5.1.1 | 536 | DRWP | Problems in the description of id-expressions
_N4567_.5.1.1 | 687 | extension | `template` keyword with unqualified-ids
_N4567_.5.1.1 | 743 | CD2 | Use of `decltype` in a nested-name-specifier
_N4567_.5.1.1 | 760 | CD2 | `this` inside a nested class of a non-static member function
_N4567_.5.1.1 | 850 | CD2 | Restrictions on use of non-static data members
_N4567_.5.1.1 | 945 | C++11 | Use of `this` in a late-specified return type
_N4567_.5.1.1 | 1440 | CD3 | Acceptable decltype-specifiers used as nested-name-specifiers
_N4567_.5.1.1 | 1836 | CD5 | Use of class type being defined in trailing-return-type
_N4567_.5.1.1 | 1837 | DRWP | Use of `this` in `friend` and local class declarations
_N4567_.5.1.1 | 1929 | CD4 | `template` keyword following namespace nested-name-specifier
_N4567_.5.1.1 | 2134 | NAD | Objectless references to non-static member functions
_N4606_.15.5.2 | 596 | NAD | Replacing an exception object
_N4750_.15.8 | 6 | open | 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?
_N4750_.15.8 | 20 | TC1 | Some clarifications needed for 12.8 para 15
_N4750_.15.8 | 26 | NAD | Copy constructors and default arguments
_N4750_.15.8 | 111 | NAD | Copy constructors and cv-qualifiers
_N4750_.15.8 | 185 | TC1 | "Named" temporaries and copy elision
_N4750_.15.8 | 356 | NAD | Wording of behavior of generated copy constructor for scalar members
_N4750_.15.8 | 444 | NAD | Overriding and the generated copy assignment operator
_N4750_.15.8 | 535 | CD3 | Copy construction without a copy constructor
_N4750_.15.8 | 574 | NAD | Definition of “copy assignment operator”
_N4750_.15.8 | 653 | CD2 | Copy assignment of unions
_N4750_.15.8 | 667 | CD2 | Trivial special member functions that cannot be implicitly defined
_N4750_.15.8 | 680 | CD2 | What is a move constructor?
_N4750_.15.8 | 683 | CD1 | Requirements for trivial subobject special functions
_N4750_.15.8 | 733 | NAD | Reference qualification of copy assignment operators
_N4750_.15.8 | 887 | CD2 | Move construction of thrown object
_N4750_.15.8 | 910 | CD2 | Move constructors and implicitly-declared copy constructors
_N4750_.15.8 | 992 | NAD | Inheriting explicitness
_N4750_.15.8 | 1020 | C++11 | Implicitly-defined copy constructors and explicit base class constructors
_N4750_.15.8 | 1049 | open | Copy elision through reference parameters of inline functions
_N4750_.15.8 | 1051 | C++11 | Reference members and generated copy constructors
_N4750_.15.8 | 1052 | dup | `const` non-static data member and PODness
_N4750_.15.8 | 1064 | C++11 | Defaulted move constructor for a union
_N4750_.15.8 | 1066 | C++11 | When is a copy/move assignment operator implicitly defined?
_N4750_.15.8 | 1080 | C++11 | Confusing relationship between templates and copy constructors
_N4750_.15.8 | 1082 | C++11 | Implicit copy function if subobject has none?
_N4750_.15.8 | 1084 | NAD | Conditions for a deleted move function
_N4750_.15.8 | 1085 | NAD | Move assignment operators and virtual bases
_N4750_.15.8 | 1092 | drafting | Cycles in overload resolution during instantiation
_N4750_.15.8 | 1148 | C++11 | Copy elision and move construction of function parameters
_N4750_.15.8 | 1149 | C++11 | Trivial non-public copy operators in subobjects
_N4750_.15.8 | 1224 | C++11 | `constexpr` defaulted copy constructors
_N4750_.15.8 | 1344 | C++14 | Adding new special member functions to a class via default arguments
_N4750_.15.8 | 1402 | CD3 | Move functions too often deleted
_N4750_.15.8 | 1491 | CD3 | Move construction and rvalue reference members
_N4750_.15.8 | 1493 | C++14 | Criteria for move-construction
_N4750_.15.8 | 1499 | drafting | Missing case for deleted move assignment operator
_N4750_.15.8 | 1548 | drafting | Copy/move construction and conversion functions
_N4750_.15.8 | 1579 | C++14 | Return by converting move constructor
_N4750_.15.8 | 1590 | CD4 | Bypassing non-copy/move constructor copying
_N4750_.15.8 | 1593 | C++14 | “Parameter type” of special member functions
_N4750_.15.8 | 1594 | drafting | Lazy declaration of special members vs overload errors
_N4750_.15.8 | 1731 | NAD | `is_trivially_`X and definitions of special member functions
_N4750_.15.8 | 1734 | CD4 | Nontrivial deleted copy functions
_N4750_.15.8 | 1806 | CD4 | Virtual bases and move-assignment
_N4750_.15.8 | 1831 | NAD | Explicitly vs implicitly deleted move constructors
_N4750_.15.8 | 1916 | CD4 | “Same cv-unqualified type”
_N4750_.15.8 | 1928 | NAD | Triviality of deleted special member functions
_N4750_.15.8 | 1967 | CD4 | Temporary lifetime and move-elision
_N4750_.15.8 | 2094 | C++17 | Trivial copy/move constructor for class with volatile member
_N4750_.15.8 | 2125 | extension | Copy elision and comma operator
_N4750_.15.8 | 2132 | extension | Deprecated default generated copy constructors
_N4750_.15.8 | 2171 | CD4 | Triviality of copy constructor with less-qualified parameter
_N4750_.15.8 | 2180 | CD4 | Virtual bases in destructors and defaulted assignment operators
_N4750_.15.8 | 2197 | review | Overload resolution and deleted special member functions
_N4750_.15.8 | 2203 | drafting | Defaulted copy/move constructors and UDCs
_N4750_.15.8 | 2264 | drafting | Memberwise copying with indeterminate value
_N4750_.15.8 | 2315 | CD5 | What is the “corresponding special member” of a variant member?
_N4750_.C.1.3 | 1251 | CD3 | C compatibility: casting to unqualified `void*`
_N4750_.C.3.5 | 2114 | CD3 | Missing description of incompatibility from aggregate NSDMIs
_N4778_.7.6.1.4 | 466 | CD1 | cv-qualifiers on pseudo-destructor type
_N4778_.7.6.1.4 | 1920 | CD4 | Qualification mismatch in pseudo-destructor-name
_N4778_.7.6.1.4 | 2393 | NAD | Pseudo-destructors and object lifetime
_N4868_.6.4.1 | 2063 | CD4 | Type/nontype hiding in class scope
_N4868_.6.4.1 | 2165 | DRWP | Namespaces, declarative regions, and translation units
_N4868_.6.4.1 | 2289 | CD5 | Uniqueness of structured binding names
_N4868_.6.4.10 | 2164 | CD5 | Name hiding and using-directives
_N4868_.6.5.6 | 141 | CD1 | Non-member function templates in member access expressions
_N4868_.6.5.6 | 156 | NAD | Name lookup for conversion functions
_N4868_.6.5.6 | 305 | CD1 | Name lookup in destructor call
_N4868_.6.5.6 | 381 | CD1 | Incorrect example of base class member lookup
_N4868_.6.5.6 | 414 | CD1 | Multiple types found on destructor lookup
_N4868_.6.5.6 | 682 | CD5 | Missing description of lookup of template aliases
_N4868_.6.5.6 | 1089 | drafting | Template parameters in member selections
_N4868_.6.5.6 | 1111 | C++11 | Remove dual-scope lookup of member template names
_N4868_.6.5.6 | 1220 | C++11 | Looking up conversion-type-ids
_N4868_.6.5.6 | 1291 | DRWP | Looking up a conversion-type-id
_N4868_.6.5.6 | 1835 | DRWP | Dependent member lookup before `<`
_N4868_.6.5.6 | 1908 | DRWP | Dual destructor lookup and template-ids
_N4868_.9.8.2.3 | 95 | NAD | Elaborated type specifiers referencing names declared in friend decls
_N4868_.9.8.2.3 | 138 | DRWP | Friend declaration name lookup
_N4868_.9.8.2.3 | 165 | NAD | Definitions of friends and block-scope externs
_N4868_.9.8.2.3 | 166 | TC1 | Friend declarations of template-ids
_N4868_.9.8.2.3 | 553 | NAD | Problems with friend allocation and deallocation functions
_N4868_.9.8.2.3 | 673 | NAD | Injection of names from elaborated-type-specifiers in `friend` declarations
_N4868_.9.8.2.3 | 1021 | CD4 | Definitions of namespace members
_N4868_.9.8.2.3 | 1077 | extension | Explicit specializations in non-containing namespaces
_N4868_.9.8.2.3 | 1439 | CD3 | Lookup and friend template declarations
_N4868_.9.8.2.3 | 1477 | CD3 | Definition of a `friend` outside its namespace
_N4868_.9.8.2.3 | 1838 | CD4 | Definition via unqualified-id and using-declaration
_N4868_.9.8.2.3 | 2155 | C++17 | Defining classes and enumerations via using-declarations
_N4868_.11.4.3.2 | 452 | CD1 | Wording nit on description of `this`
_N4868_.11.4.3.2 | 1306 | CD3 | Modifying an object within a `const` member function
_N4868_.12.2 | 1252 | DRWP | Overloading member function templates based on dependent return type
_N4868_.12.3 | 1898 | DRWP | Use of “equivalent” in overload resolution
_N4868_.13.7.6 | 229 | NAD | Partial specialization of function templates
_N4868_.13.7.6 | 286 | CD1 | Incorrect example in partial specialization
_N4868_.13.7.6 | 517 | CD1 | Partial specialization following explicit instantiation
_N4868_.13.7.6 | 708 | open | Partial specialization of member templates of class templates
_N4868_.13.7.6 | 996 | C++11 | Ambiguous partial specializations of member class templates
_N4868_.13.7.6 | 1315 | CD4 | Restrictions on non-type template arguments in partial specializations
_N4868_.13.7.6 | 1495 | CD3 | Partial specialization of variadic class template
_N4868_.13.7.6 | 1577 | NAD | Unnecessary restrictions on partial specializations
_N4868_.13.7.6 | 1647 | drafting | Type agreement of non-type template arguments in partial specializations
_N4868_.13.7.6 | 1711 | WP | Missing specification of variable template partial specializations
_N4868_.13.7.6 | 1754 | NAD | Declaration of partial specialization of static data member template
_N4868_.13.7.6 | 1819 | CD4 | Acceptable scopes for definition of partial specialization
_N4868_.13.7.6 | 2033 | CD4 | Redundant restriction on partial specialization argument
_N4868_.13.7.6 | 2127 | drafting | Partial specialization and nullptr
_N4868_.13.7.6 | 2173 | open | Partial specialization with non-deduced contexts
_N4868_.13.7.6 | 2179 | drafting | Required diagnostic for partial specialization after first use
_N4868_.13.7.6.2 | 549 | drafting | Non-deducible parameters in partial specializations
_N4868_.13.7.6.2 | 2035 | CD3 | Multi-section example is confusing
_N4868_.13.7.6.4 | 1755 | drafting | Out-of-class partial specializations of member templates
_N4868_.13.8.4 | 206 | TC1 | Semantic constraints on non-dependent names
_N4868_.13.8.6 | 387 | CD1 | Errors in example in 14.6.5
_N4868_.13.8.6 | 2118 | open | Stateful metaprogramming via friend injection
_N4885_6.7.5.5.4 | 735 | CD2 | Missing case in specification of safely-derived pointers
_N4885_6.7.5.5.4 | 853 | CD2 | Support for relaxed pointer safety
_N4885_6.7.5.5.4 | 1190 | C++11 | Operations on non-safely-derived pointers
_N4885_6.7.5.5.4 | 1438 | CD3 | Non-dereference use of invalid pointers
_N4885_6.7.5.5.4 | 1575 | C++14 | Incorrect definition of “strict pointer safety”
3.57 | 2124 | CD4 | Signature of constructor template
4.1 | 949 | open | Requirements for freestanding implementations
4.1 | 1938 | CD5 | Should hosted/freestanding be implementation-defined?
4.2 | 784 | C++11 | List of incompatibilities with the previous Standard
5.2 | 362 | CD1 | Order of initialization in instantiation units
5.2 | 578 | open | Phase 1 replacement of characters with universal-character-names
5.2 | 787 | CD2 | Unnecessary lexical undefined behavior
5.2 | 1103 | C++11 | Reversion of phase 1 and 2 transformations in raw string literals
5.2 | 1698 | open | Files ending in `\`
5.2 | 1775 | C++14 | Undefined behavior of line splice in raw string literal
5.2 | 1999 | CD4 | Representation of source characters as universal-character-names
5.2 | 2455 | accepted | Concatenation of string literals vs translation phases 5 and 6
5.3 | 173 | TC1 | Constraints on execution character set
5.3 | 558 | CD1 | Excluded characters in universal character names
5.3 | 630 | CD2 | Equality of narrow and wide character values in the basic character set
5.3 | 788 | CD2 | Relationship between locale and values of the execution character set
5.3 | 1332 | CD5 | Handling of invalid universal-character-names
5.3 | 1796 | CD4 | Is all-bits-zero for null characters a meaningful requirement?
5.4 | 369 | drafting | Are `new`/`delete` identifiers or preprocessing-op-or-punc?
5.4 | 1655 | drafting | Line endings in raw string literals
5.4 | 2000 | CD4 | header-name outside `#include` directive
5.5 | 985 | C++11 | Alternative tokens and user-defined literals
5.5 | 1104 | C++11 | Global-scope template arguments vs the `<:` digraph
5.6 | 1901 | drafting | punctuator referenced but not defined
5.7 | 1403 | open | Universal-character-names in comments
5.9 | 832 | CD2 | Value of preprocessing numbers
5.10 | 1105 | C++11 | Issues relating to TR 10176:2003
5.10 | 1963 | CD4 | Implementation-defined identifier characters
5.10 | 1972 | open | Identifier character restrictions in non-identifiers
5.12 | 189 | drafting | Definition of operator and punctuator
5.13 | 1924 | review | Definition of “literal” and kinds of literals
5.13.2 | 1717 | C++14 | Missing specification of type of binary literal
5.13.2 | 1947 | NAD | Digit separators following non-octal prefix
5.13.3 | 505 | CD1 | Conditionally-supported behavior for unknown character escapes
5.13.3 | 912 | CD3 | Character literals and universal-character-names
5.13.3 | 933 | CD2 | 32-bit UCNs with 16-bit `wchar_t`
5.13.3 | 1024 | CD3 | Limits on multicharacter literals
5.13.3 | 1422 | dup | Type of character literals containing universal-character-names
5.13.3 | 1656 | WP | Encoding of numerically-escaped characters
5.13.3 | 2333 | WP | Escape sequences in UTF-8 character literals
5.13.3 | 2402 | WP | When is the restriction to a single c-char in a Unicode literal enforced?
5.13.5 | 411 | WP | Use of universal-character-name in character versus string literals
5.13.5 | 790 | CD2 | Concatenation of raw and non-raw string literals
5.13.5 | 834 | CD2 | What is an “ordinary string literal”?
5.13.5 | 872 | CD2 | Lexical issues with raw strings
5.13.5 | 932 | CD2 | UCNs in closing delimiters of raw string literals
5.13.5 | 1759 | C++14 | UTF-8 code units in plain `char`
5.13.5 | 1802 | CD4 | `char16_t` string literals and surrogate pairs
5.13.5 | 1859 | CD5 | UTF-16 in `char16_t` string literals
5.13.7 | 1106 | C++11 | Need more detail in `nullptr` keyword description
5.13.8 | 931 | CD2 | Confusing reference to the length of a user-defined string literal
5.13.8 | 937 | NAD | Restrictions on values of template arguments in user-defined literals
5.13.8 | 1107 | C++11 | Overload resolution for user-defined integer literals
5.13.8 | 1108 | NAD | User-defined literals have not been implemented
5.13.8 | 1175 | C++11 | Disambiguating user-defined literals
5.13.8 | 1239 | C++11 | Hexadecimal floating-point literals vs user-defined literals
5.13.8 | 1266 | open | user-defined-integer-literal overflow
5.13.8 | 1474 | NAD | User-defined literals and `<inttypes.h>` format macros
5.13.8 | 1723 | drafting | Multicharacter user-defined character literals
5.13.8 | 1735 | drafting | Out-of-range literals in user-defined-literals
5.13.8 | 1810 | CD4 | Invalid ud-suffixes
5.13.8 | 1871 | extension | Non-identifier characters in ud-suffix
5.13.8 | 2152 | NAD | Can an alternative token be used as a ud-suffix?
6.2 | 676 | C++11 | static_assert-declarations and general requirements for declarations
6.2 | 758 | C++11 | Missing cases of declarations that are not definitions
6.2 | 1201 | C++11 | Are deleted and defaulted functions definitions?
6.2 | 1870 | CD4 | Contradictory wording about definitions vs explicit specialization/instantiation
6.2 | 2371 | CD5 | Use of the English term “attributes” is confusing
6.3 | 50 | NAD | Converting pointer to incomplete type to same type
6.3 | 82 | dup | Definition of "using" a constant expression
6.3 | 261 | CD1 | When is a deallocation function "used?"
6.3 | 289 | CD1 | Incomplete list of contexts requiring a complete type
6.3 | 570 | CD2 | Are references subject to the ODR?
6.3 | 678 | C++11 | Language linkage of member function parameter types and the ODR
6.3 | 712 | CD3 | Are integer constant operands of a conditional-expression “used?”
6.3 | 1109 | C++11 | When is “use” a reference to the ODR meaning?
6.3 | 1110 | NAD | Incomplete return type should be allowed in `decltype` operand
6.3 | 1174 | C++11 | When is a pure virtual function “used?”
6.3 | 1192 | C++11 | Inadvertent change to ODR and templates
6.3 | 1209 | open | Is a potentially-evaluated expression in a template definition a “use?”
6.3 | 1254 | NAD | odr-use vs template arguments and constexpr functions
6.3 | 1260 | CD3 | Incorrect use of term “overloaded” in description of odr-use
6.3 | 1362 | CD3 | Complete type required for implicit conversion to `T&`
6.3 | 1472 | CD3 | odr-use of reference variables
6.3 | 1511 | CD3 | `const volatile` variables and the one-definition rule
6.3 | 1581 | CD5 | When are `constexpr` member functions defined?
6.3 | 1614 | CD4 | Address of pure virtual function vs odr-use
6.3 | 1741 | C++14 | odr-use of class object in lvalue-to-rvalue conversion
6.3 | 1849 | drafting | Variable templates and the ODR
6.3 | 1897 | drafting | ODR vs alternative tokens
6.3 | 1926 | CD4 | Potential results of subscript operator
6.3 | 2020 | CD5 | Inadequate description of odr-use of implicitly-invoked functions
6.3 | 2083 | CD5 | Incorrect cases of odr-use
6.3 | 2085 | CD4 | Invalid example of adding special member function via default argument
6.3 | 2103 | CD5 | Lvalue-to-rvalue conversion is irrelevant in odr-use of a reference
6.3 | 2104 | CD4 | Internal-linkage `constexpr` references and ODR requirements
6.3 | 2170 | CD5 | Unclear definition of odr-use for arrays
6.3 | 2240 | NAD | `this` is not odr-used in a constant expression
6.3 | 2242 | drafting | ODR violation with constant initialization possibly omitted
6.3 | 2300 | CD5 | Lambdas in multiple definitions
6.3 | 2353 | CD5 | Potential results of a member access expression for a static data member
6.3 | 2367 | NAD | Lambdas in default arguments vs the ODR
6.3 | 2380 | CD5 | capture-default makes too many references odr-usable
6.3 | 2433 | C++20 | Variable templates in the ODR
6.3 | 2494 | ready | Multiple definitions of non-odr-used entities
6.4 | 481 | CD2 | Scope of template parameters
6.4 | 554 | DRWP | Definition of “declarative region” and “scope”
6.4.1 | 2488 | open | Overloading virtual functions and functions with trailing requires-clauses
6.4.2 | 433 | CD1 | Do elaborated type specifiers in templates inject into enclosing namespace scope?
6.4.2 | 1044 | C++11 | Point of declaration for an alias-declaration
6.4.2 | 1210 | C++11 | Injection of elaborated-type-specifier in enumeration scope
6.4.2 | 1433 | extension | trailing-return-type and point of declaration
6.4.2 | 1482 | CD3 | Point of declaration of enumeration
6.4.2 | 2516 | open | Locus of enum-specifier or opaque-enum-declaration
6.4.3 | 642 | CD2 | Definition and use of “block scope” and “local scope”
6.4.3 | 2502 | ready | Unintended declaration conflicts in nested statement scopes
6.4.6 | 42 | NAD | Redefining names from base classes
6.4.6 | 432 | CD1 | Is injected class name visible in base class specifier list?
6.4.6 | 1352 | CD3 | Inconsistent class scope and completeness rules
6.4.6 | 1875 | CD4 | Reordering declarations in class scope
6.4.6 | 2009 | DRWP | Unclear specification of class scope
6.4.6 | 2331 | DRWP | Redundancy in description of class scope
6.4.8 | 1429 | NAD | Scope of a member template's template parameter
6.5 | 555 | CD5 | Pseudo-destructor name lookup
6.5 | 2218 | C++17 | Ambiguity and namespace aliases
6.5.1 | 2480 | drafting | Lookup for enumerators in modules
6.5.2 | 39 | CD1 | Conflicting ambiguity rules
6.5.2 | 306 | CD1 | Ambiguity by class name injection
6.5.2 | 380 | open | Definition of "ambiguous base class" missing
6.5.2 | 1764 | C++14 | Hiding of function from using-declaration by signature
6.5.2 | 2078 | NAD | Name lookup of mem-initilizer-id
6.5.3 | 41 | TC1 | Clarification of lookup of names after declarator-id
6.5.3 | 139 | CD1 | Error in `friend` lookup example
6.5.3 | 191 | DRWP | Name lookup does not handle complex nesting
6.5.3 | 192 | NAD | Name lookup in parameters
6.5.3 | 231 | NAD | Visibility of names after using-directives
6.5.3 | 405 | DRWP | Unqualified function name lookup
6.5.3 | 490 | CD2 | Name lookup in friend declarations
6.5.3 | 514 | CD1 | Is the initializer for a namespace member in the scope of the namespace?
6.5.3 | 1200 | DRWP | Lookup rules for template parameters
6.5.3 | 1906 | NAD | Name lookup in member `friend` declaration
6.5.3 | 2357 | NAD | Lookup in member function declarations
6.5.3 | 2370 | DRWP | `friend` declarations of namespace-scope functions
6.5.4 | 12 | dup | Default arguments on different declarations for the same function and the Koenig lookup
6.5.4 | 33 | TC1 | Argument dependent lookup and overloaded functions
6.5.4 | 90 | TC1 | Should the enclosing class be an "associated class" too?
6.5.4 | 91 | NAD | A union's associated types should include the union itself
6.5.4 | 143 | CD1 | Friends and Koenig lookup
6.5.4 | 164 | TC1 | Overlap between Koenig and normal lookup
6.5.4 | 218 | CD1 | Specification of Koenig lookup
6.5.4 | 225 | NAD | Koenig lookup and fundamental types
6.5.4 | 321 | dup | Associated classes and namespaces for argument-dependent lookup
6.5.4 | 384 | NAD | Argument-dependent lookup and operator functions
6.5.4 | 403 | CD1 | Reference to a type as a template-id
6.5.4 | 557 | CD1 | Does argument-dependent lookup cause template instantiation?
6.5.4 | 598 | CD2 | Associated namespaces of overloaded functions and function templates
6.5.4 | 705 | CD2 | Suppressing argument-dependent lookup via parentheses
6.5.4 | 997 | C++11 | Argument-dependent lookup and dependent function template parameter types
6.5.4 | 1015 | C++11 | Template arguments and argument-dependent lookup
6.5.4 | 1690 | C++14 | Associated namespace for local type
6.5.4 | 1691 | C++14 | Argument-dependent lookup and opaque enumerations
6.5.4 | 1692 | C++14 | Associated namespaces of doubly-nested classes
6.5.4 | 2136 | NAD | Argument-dependent lookup and initializer lists
6.5.4 | 2142 | NAD | Missing definition of associated classes and namespaces
6.5.5 | 724 | concepts | Qualified name lookup in a constrained context
6.5.5 | 1753 | CD4 | decltype-specifier in nested-name-specifier of destructor
6.5.5 | 1771 | DRWP | Restricted lookup in nested-name-specifier
6.5.5 | 1828 | DRWP | nested-name-specifier ambiguity
6.5.5.2 | 298 | CD1 | `T::x` when `T` is cv-qualified
6.5.5.2 | 318 | CD1 | `struct A::A` should not name the constructor of `A`
6.5.5.2 | 562 | DRWP | qualified-ids in non-expression contexts
6.5.5.2 | 635 | NAD | Names of constructors and destructors of templates
6.5.5.2 | 1000 | CD2 | Mistaking member typedefs for constructors
6.5.5.2 | 1310 | CD3 | What is an “acceptable lookup result?”
6.5.5.2 | 2070 | DRWP | using-declaration with dependent nested-name-specifier
6.5.5.3 | 400 | CD1 | Using-declarations and the "struct hack"
6.5.5.3 | 861 | CD2 | Unintended ambiguity in inline namespace lookup
6.5.6 | 85 | TC1 | Redeclaration of member class
6.5.6 | 245 | CD1 | Name lookup in elaborated-type-specifiers
6.5.6 | 254 | CD1 | Definitional problems with elaborated-type-specifiers
6.5.7 | 373 | C++11 | Lookup on namespace qualified name in using-directive
6.6 | 132 | NAD | Local types and linkage
6.6 | 216 | CD1 | Linkage of nameless class-scope enumeration types
6.6 | 278 | NAD | External linkage and nameless entities
6.6 | 279 | DRWP | Correspondence of "names for linkage purposes"
6.6 | 319 | CD1 | Use of names without linkage in declaring entities with linkage
6.6 | 338 | DRWP | Enumerator name with linkage used as class name in other translation unit
6.6 | 389 | CD1 | Unnamed types in entities with linkage
6.6 | 426 | C++17 | Identically-named variables, one internally and one externally linked, allowed?
6.6 | 474 | CD1 | Block-scope `extern` declarations in namespace members
6.6 | 527 | CD2 | Problems with linkage of types
6.6 | 571 | CD2 | References declared `const`
6.6 | 757 | CD2 | Types without linkage in declarations
6.6 | 791 | concepts | Linkage of concept names
6.6 | 966 | CD2 | Nested types without linkage
6.6 | 1112 | C++11 | `constexpr` variables should have internal linkage like `const`
6.6 | 1113 | C++11 | Linkage of namespace member of unnamed namespace
6.6 | 1415 | CD3 | Missing prohibition of block-scope definition of `extern` object
6.6 | 1603 | CD4 | Errors resulting from giving unnamed namespaces internal linkage
6.6 | 1686 | CD4 | Which variables are “explicitly declared `const`?”
6.6 | 1839 | DRWP | Lookup of block-scope `extern` declarations
6.6 | 1884 | DRWP | Unclear requirements for same-named external-linkage entities
6.6 | 2058 | DRWP | More errors from internal-linkage namespaces
6.6 | 2198 | C++17 | Linkage of enumerators
6.6 | 2230 | NAD | Linkage of `extern "C"` function in unnamed namespace
6.6 | 2372 | CD5 | Incorrect matching rules for block-scope `extern` declarations
6.6 | 2387 | CD5 | Linkage of const-qualified variable template
6.7.1 | 1953 | open | Data races and common initial sequence
6.7.2 | 513 | CD1 | Non-class “most-derived” objects
6.7.2 | 1189 | C++11 | Address of distinct base class subobjects
6.7.2 | 2151 | CD4 | Exception object is not created
6.7.2 | 2324 | drafting | Size of base class subobject
6.7.2 | 2325 | drafting | `std::launder` and reuse of character buffers
6.7.2 | 2334 | open | Creation of objects by `typeid`
6.7.2 | 2469 | drafting | Implicit object creation vs constant expressions
6.7.2 | 2470 | DRWP | Multiple array objects providing storage for one object
6.7.2 | 2489 | open | Storage provided by array of `char`
6.7.3 | 89 | TC1 | Object lifetime does not account for reference rebinding
6.7.3 | 93 | TC1 | Missing word in 3.8 basic.life paragraph 2
6.7.3 | 119 | CD1 | Object lifetime and aggregate initialization
6.7.3 | 234 | NAD | Reuse of base class subobjects
6.7.3 | 274 | CD1 | Cv-qualification and char-alias access to out-of-lifetime objects
6.7.3 | 404 | CD1 | Unclear reference to construction with non-trivial constructor
6.7.3 | 419 | open | Can cast to virtual base class be done on partially-constructed object?
6.7.3 | 594 | CD1 | Coordinating issues 119 and 404 with delegating constructors
6.7.3 | 597 | CD3 | Conversions applied to out-of-lifetime non-POD lvalues
6.7.3 | 793 | CD2 | Use of class members during destruction
6.7.3 | 1027 | drafting | Type consistency and reallocation of scalar types
6.7.3 | 1050 | NAD | Effects of thread support on object lifetime
6.7.3 | 1114 | C++11 | Incorrect use of placement `new` in example
6.7.3 | 1116 | CD4 | Aliasing of union members
6.7.3 | 1280 | NAD | Object reallocation and reference members
6.7.3 | 1284 | CD4 | Should the lifetime of an array be independent of that of its elements?
6.7.3 | 1285 | NAD | Trivial destructors and object lifetime
6.7.3 | 1530 | drafting | Member access in out-of-lifetime objects
6.7.3 | 1751 | CD4 | Non-trivial operations vs non-trivial initialization
6.7.3 | 1776 | CD4 | Replacement of class objects containing reference members
6.7.3 | 1853 | drafting | Defining “allocated storage”
6.7.3 | 2256 | CD5 | Lifetime of trivially-destructible objects
6.7.3 | 2258 | open | Storage deallocation during period of destruction
6.7.3 | 2514 | open | Modifying const subobjects
6.7.5 | 365 | open | Storage duration and temporaries
6.7.5 | 1634 | drafting | Temporary storage duration
6.7.5 | 2012 | CD4 | Lifetime of references
6.7.5.4 | 1956 | CD4 | Reuse of storage of automatic variables
6.7.5.5 | 967 | NAD | Exception specification of replacement allocation function
6.7.5.5 | 1948 | NAD | exception-specification of replacement global `new`
6.7.5.5.2 | 521 | CD1 | Requirements for exceptions thrown by allocation functions
6.7.5.5.2 | 1338 | CD4 | Aliasing and allocation functions
6.7.5.5.2 | 1676 | drafting | `auto` return type for allocation and deallocation functions
6.7.5.5.2 | 1682 | open | Overly-restrictive rules on function templates as allocation functions
6.7.5.5.2 | 1910 | CD5 | “Shall” requirement applied to runtime behavior
6.7.5.5.2 | 2073 | drafting | Allocating memory for exception objects
6.7.5.5.2 | 2207 | CD5 | Alignment of allocation function return value
6.7.5.5.2 | 2238 | NAD | Contradictory alignment requirements for allocation
6.7.5.5.3 | 220 | CD1 | All deallocation functions should be required not to throw
6.7.5.5.3 | 312 | CD3 | “use” of invalid pointer value not defined
6.7.5.5.3 | 348 | CD1 | `delete` and user-written deallocation functions
6.7.5.5.3 | 523 | open | Can a one-past-the-end pointer be invalidated by deleting an adjacent object?
6.7.5.5.3 | 623 | CD3 | Use of pointers to deallocated storage
6.7.5.5.3 | 2042 | drafting | Exceptions and deallocation functions
6.7.5.6 | 2019 | CD4 | Member references omitted from description of storage duration
6.7.6 | 649 | CD1 | Optionally ill-formed extended alignment requests
6.7.6 | 1090 | C++11 | Alignment of subobjects
6.7.6 | 1115 | C++11 | C-compatible alignment specification
6.7.6 | 1180 | C++11 | Over-aligned class types
6.7.6 | 1211 | drafting | Misaligned lvalues
6.7.6 | 1879 | NAD | Inadequate definition of alignment requirement
6.7.6 | 2354 | CD5 | Extended alignment and object representation
6.7.7 | 86 | CD1 | Lifetime of temporaries in query expressions
6.7.7 | 117 | NAD | Timing of destruction of temporaries
6.7.7 | 124 | CD1 | Lifetime of temporaries in default initialization of class arrays
6.7.7 | 199 | CD1 | Order of destruction of temporaries
6.7.7 | 201 | CD1 | Order of destruction of temporaries in initializers
6.7.7 | 320 | CD1 | Question on copy constructor elision example
6.7.7 | 392 | CD1 | Use of full expression lvalue before temporary destruction
6.7.7 | 443 | CD1 | Wording nit in description of lifetime of temporaries
6.7.7 | 462 | CD3 | Lifetime of temporaries bound to comma expressions
6.7.7 | 464 | CD1 | Wording nit on lifetime of temporaries to which references are bound
6.7.7 | 650 | CD2 | Order of destruction for temporaries bound to the returned value of a function
6.7.7 | 900 | extension | Lifetime of temporaries in range-based `for`
6.7.7 | 1237 | C++11 | Deprecated implicit copy assignment in example
6.7.7 | 1299 | CD5 | “Temporary objects” vs “temporary expressions”
6.7.7 | 1568 | dup | Temporary lifetime extension with intervening cast
6.7.7 | 1651 | NAD | Lifetime extension of temporary via reference to subobject
6.7.7 | 1695 | NAD | Lifetime extension via init-capture
6.7.7 | 1696 | CD4 | Temporary lifetime and non-static data member initializers
6.7.7 | 1697 | CD4 | Lifetime extension and copy elision
6.7.7 | 2107 | CD4 | Lifetime of temporaries for default arguments in array copying
6.7.7 | 2257 | CD5 | Lifetime extension of references vs exceptions
6.7.7 | 2434 | open | Mandatory copy elision vs non-class objects
6.8 | 43 | TC1 | Copying base classes (PODs) using memcpy
6.8 | 290 | NAD | Should memcpy be allowed into a POD with a const member?
6.8 | 350 | open | `signed char` underlying representation for objects
6.8 | 496 | CD3 | Is a volatile-qualified type really a POD?
6.8 | 619 | C++11 | Completeness of array types
6.8 | 644 | CD1 | Should a trivial class type be a literal type?
6.8 | 646 | NAD | Can a class with a constexpr copy constructor be a literal type?
6.8 | 883 | CD2 | `std::memcpy` vs `std::memmove`
6.8 | 981 | C++11 | Constexpr constructor templates and literal types
6.8 | 1071 | C++11 | Literal class types and trivial default constructors
6.8 | 1181 | C++11 | What is a “built-in type?”
6.8 | 1198 | C++11 | Literal types and copy constructors
6.8 | 1219 | C++11 | Non-static data member initializers in constant expressions
6.8 | 1334 | NAD | Layout compatibility and cv-qualification
6.8 | 1361 | CD3 | Requirement on brace-or-equal-initializers of literal types
6.8 | 1405 | CD3 | `constexpr` and mutable members of literal types
6.8 | 1453 | CD3 | Volatile members in literal classes?
6.8 | 1654 | dup | Literal types and `constexpr` defaulted constructors
6.8 | 1701 | drafting | Array vs sequence in object representation
6.8 | 1746 | C++14 | Are volatile scalar types trivially copyable?
6.8 | 1951 | CD4 | Cv-qualification and literal types
6.8 | 2096 | CD4 | Constraints on literal unions
6.8 | 2323 | C++20 | Expunge POD
6.8.2 | 146 | open | Floating-point zero
6.8.2 | 251 | open | How many signed integer types are there?
6.8.2 | 483 | CD3 | Normative requirements on integral ranges
6.8.2 | 627 | NAD | Values behaving as types
6.8.2 | 689 | open | Maximum values of signed and unsigned integers
6.8.2 | 1055 | C++11 | Permissible uses of `void`
6.8.2 | 1276 | NAD | Reference to `stdint.h`
6.8.2 | 1302 | CD3 | `noexcept` applied to expression of type `void`
6.8.2 | 1448 | NAD | Integral values of type `bool`
6.8.2 | 1515 | CD3 | Modulo 2n arithmetic for implicitly-unsigned types
6.8.2 | 1539 | CD3 | Definition of “character type”
6.8.2 | 1797 | CD4 | Are all bit patterns of `unsigned char` distinct numbers?
6.8.2 | 2185 | open | Cv-qualified numeric types
6.8.2 | 2214 | C++17 | Missing requirement on representation of integer values
6.8.2 | 2448 | DRWP | Cv-qualification of arithmetic types and deprecation of volatile
6.8.2 | 2475 | open | Object declarations of type cv `void`
6.8.3 | 2006 | CD4 | Cv-qualified `void` types
6.8.3 | 2287 | CD5 | Pointer-interconvertibility in non-standard-layout unions
6.8.3 | 2499 | ready | Inconsistency in definition of pointer-interconvertibility
6.8.4 | 1059 | CD3 | Cv-qualified array types (with rvalues)
6.8.4 | 1428 | CD3 | Dynamic const objects
6.8.4 | 2201 | C++17 | Cv-qualification of array types
6.9 | 2431 | C++20 | Full-expressions and temporaries bound to references
6.9.1 | 129 | CD3 | Stability of uninitialized auto variables
6.9.1 | 612 | CD2 | Requirements on a conforming implementation
6.9.1 | 637 | CD1 | Sequencing rules and example disagree
6.9.1 | 639 | CD1 | What makes side effects “different” from one another?
6.9.1 | 698 | open | The definition of “sequenced before” is too narrow
6.9.1 | 785 | CD2 | “Execution sequence” is inappropriate phraseology
6.9.1 | 1102 | C++11 | Better example of undefined behavior
6.9.1 | 1173 | C++11 | Unclear specification of effects of signal handling
6.9.1 | 1343 | C++17 | Sequencing of non-class initialization
6.9.1 | 1441 | C++14 | Unclear wording for signal handler restrictions
6.9.1 | 1583 | C++14 | Incorrect example of unspecified behavior
6.9.1 | 1949 | CD4 | “sequenced after” instead of “sequenced before”
6.9.1 | 2146 | CD4 | Scalar object vs memory location in definition of “unsequenced”
6.9.2 | 726 | CD2 | Atomic and non-atomic objects in the memory model
6.9.2 | 740 | CD2 | Incorrect note on data races
6.9.2 | 786 | CD2 | Definition of “thread”
6.9.2 | 1040 | NAD | Memory model issues
6.9.2 | 1176 | C++11 | Definition of release sequence
6.9.2 | 1177 | C++11 | Intra-thread dependency-ordered-before
6.9.2 | 1466 | C++14 | Visible sequences of side effects are redundant
6.9.2 | 1470 | NAD | Thread migration
6.9.2 | 1661 | NAD | Preservation of infinite loops
6.9.2 | 1842 | concurrency | Unevaluated operands and “carries a dependency”
6.9.2 | 1961 | C++17 | Potentially-concurrent actions within a signal handler
6.9.2 | 2046 | C++17 | Incomplete thread specifications
6.9.2.2 | 2297 | open | Unclear specification of atomic operations
6.9.2.2 | 2298 | concurrency | Actions and expression evaluation
6.9.3 | 2026 | CD4 | Zero-initialization and `constexpr`
6.9.3.1 | 792 | CD2 | Effects of `std::quick_exit`
6.9.3.1 | 882 | CD2 | Defining `main` as deleted
6.9.3.1 | 1003 | CD3 | Acceptable definitions of `main`
6.9.3.1 | 1669 | C++14 | `auto` return type for `main`
6.9.3.1 | 1886 | CD4 | Language linkage for `main()`
6.9.3.1 | 2479 | DRWP | Missing specifications for `consteval` and `constinit`
6.9.3.2 | 269 | NAD | Order of initialization of multiply-defined static data members of class templates
6.9.3.2 | 270 | CD1 | Order of initialization of static data members of class templates
6.9.3.2 | 371 | open | Interleaving of constructor calls
6.9.3.2 | 441 | CD1 | Ordering of static reference initialization
6.9.3.2 | 465 | NAD | May constructors of global objects call `exit()`?
6.9.3.2 | 688 | CD1 | Constexpr constructors and static initialization
6.9.3.2 | 1187 | C++11 | Problems in initialization example
6.9.3.2 | 1294 | drafting | Side effects in dynamic/static initialization
6.9.3.2 | 1489 | CD3 | Is value-initialization of an array constant initialization?
6.9.3.2 | 1659 | open | Initialization order of thread_local template static data members
6.9.3.2 | 1677 | C++17 | Constant initialization via aggregate initialization
6.9.3.2 | 1744 | CD4 | Unordered initialization for variable template specializations
6.9.3.2 | 1747 | C++14 | Constant initialization of reference to function
6.9.3.2 | 1749 | NAD | Confusing definition for constant initializer
6.9.3.2 | 1834 | CD4 | Constant initialization binding a reference to an xvalue
6.9.3.2 | 1986 | drafting | odr-use and delayed initialization
6.9.3.2 | 2148 | drafting | Thread storage duration and order of initialization
6.9.3.2 | 2366 | CD5 | Can default initialization be constant initialization?
6.9.3.3 | 28 | CD1 | 'exit', 'signal' and static object destruction
6.9.3.3 | 640 | open | Accessing destroyed local objects of static storage duration
6.9.3.3 | 776 | CD2 | Delegating constructors, destructors, and `std::exit`
6.9.3.3 | 946 | CD2 | Order of destruction of local static objects and calls to `std::atexit`
6.9.3.3 | 2444 | drafting | Constant expressions in initialization odr-use
7.2.1 | 158 | CD1 | Aliasing and qualification conversions
7.2.1 | 584 | NAD | Unions and aliasing
7.2.1 | 636 | CD4 | Dynamic type of objects and aliasing
7.2.1 | 846 | CD2 | Rvalue references to functions
7.2.1 | 964 | C++11 | Incorrect description of when the lvalue-to-rvalue conversion applies
7.2.1 | 1026 | NAD | Cv-qualified non-class rvalues
7.2.1 | 1076 | CD5 | Value categories and lvalue temporaries
7.2.1 | 1534 | dup | cv-qualification of prvalue of type “array of class”
7.2.1 | 1998 | NAD | Additional sources of xvalue expressions
7.2.1 | 2051 | CD5 | Simplifying alias rules
7.2.1 | 2122 | CD4 | Glvalues of `void` type
7.2.2 | 2381 | CD5 | Composite pointer type of pointers to plain and noexcept member functions
7.3 | 572 | C++11 | Standard conversions for non-built-in types
7.3 | 1981 | CD4 | Implicit contextual conversions and `explicit`
7.3.2 | 240 | CD3 | Uninitialized values and undefined behavior
7.3.2 | 617 | NAD | Lvalue-to-rvalue conversions of uninitialized `char` objects
7.3.2 | 1013 | CD3 | Uninitialized `std::nullptr_t` objects
7.3.2 | 1773 | C++14 | Out-of-lifetime lvalue-to-rvalue conversion
7.3.2 | 1787 | C++14 | Uninitialized `unsigned char` values
7.3.2 | 2140 | CD4 | Lvalue-to-rvalue conversion of `std::nullptr_t`
7.3.3 | 693 | CD2 | New string types and deprecated conversion
7.3.6 | 330 | CD4 | Qualification conversions and pointers to arrays of pointers
7.3.6 | 2438 | open | Problems in the specification of qualification conversions
7.3.7 | 303 | NAD | Integral promotions on bit-fields
7.3.7 | 685 | CD2 | Integral promotion of enumeration ignores fixed underlying type
7.3.7 | 1601 | C++14 | Promotion of enumeration with fixed underlying type
7.3.7 | 2484 | DR | `char8_t` and `char16_t` in integral promotions
7.3.7 | 2485 | open | Bit-fields in integral promotions
7.3.9 | 1816 | CD4 | Unclear specification of bit-field values
7.3.11 | 566 | NAD | Conversion of negative floating point values to integer type
7.3.11 | 707 | CD2 | Undefined behavior in integral-to-floating conversions
7.3.11 | 2139 | NAD | Floating-point requirements for integer representation
7.3.12 | 149 | TC1 | Accessibility and ambiguity
7.3.12 | 456 | NAD | Is initialized const int or const bool variable a null pointer constant?
7.3.12 | 519 | CD1 | Null pointer preservation in `void*` conversions
7.3.12 | 654 | CD1 | Conversions to and from `nullptr_t`
7.3.12 | 917 | concepts | Pointer conversions between archetypes
7.3.12 | 2310 | CD5 | Type completeness and derived-to-base pointer conversions
7.3.13 | 170 | drafting | Pointer-to-member conversions
7.3.13 | 480 | CD1 | Is a base of a virtual base also virtual?
7.3.13 | 794 | extension | Base-derived conversion in member type of pointer-to-member conversion
7.3.14 | 1423 | CD3 | Convertibility of `nullptr` to `bool`
7.3.14 | 2133 | CD5 | Converting `std::nullptr_t` to `bool`
7.5.4 | 2503 | drafting | Unclear relationship among name, qualified name, and unqualified name
7.5.4.2 | 2249 | CD5 | identifiers and id-expressions
7.5.4.3 | 2385 | CD5 | Lookup for conversion-function-ids
7.5.4.3 | 2396 | DRWP | Lookup of names in complex conversion-type-ids
7.5.4.4 | 2473 | drafting | Parentheses in pseudo-destructor calls
7.5.5 | 720 | CD2 | Need examples of lambda-expressions
7.5.5 | 750 | CD2 | Implementation constraints on reference-only closure objects
7.5.5 | 751 | CD2 | Deriving from closure classes
7.5.5 | 752 | CD2 | Name lookup in nested lambda-expressions
7.5.5 | 753 | CD2 | Array names in lambda capture sets
7.5.5 | 754 | CD2 | Lambda expressions in default arguments of block-scope function declarations
7.5.5 | 755 | CD3 | Generalized lambda-captures
7.5.5 | 756 | CD2 | Dropping cv-qualification on members of closure objects
7.5.5 | 759 | CD2 | Destruction of closure objects
7.5.5 | 761 | CD2 | Inferred return type of closure object call operator
7.5.5 | 762 | CD2 | Name lookup in the compound-statement of a lambda expression
7.5.5 | 763 | CD2 | Is a closure object's `operator()` inline?
7.5.5 | 764 | CD2 | Capturing unused variables in a lambda expression
7.5.5 | 766 | CD2 | Where may lambda expressions appear?
7.5.5 | 767 | CD2 | `void` and other unnamed lambda-parameters
7.5.5 | 768 | CD2 | Ellipsis in a lambda parameter list
7.5.5 | 769 | CD2 | Initialization of closure objects
7.5.5 | 771 | CD2 | Move-construction of reference members of closure objects
7.5.5 | 772 | CD2 | capture-default in lambdas in local default arguments
7.5.5 | 774 | CD2 | Can a closure class be a POD?
7.5.5 | 775 | CD2 | Capturing references to functions
7.5.5 | 779 | CD2 | Rvalue reference members of closure objects?
7.5.5 | 782 | CD2 | Lambda expressions and argument-dependent lookup
7.5.5 | 795 | NAD | Dependency of lambdas on `<functional>`
7.5.5 | 796 | CD2 | Lifetime of a closure object with members captured by reference
7.5.5 | 797 | CD2 | Converting a no-capture lambda to a function type
7.5.5 | 904 | CD2 | Parameter packs in lambda-captures
7.5.5 | 955 | CD2 | Can a closure type's `operator()` be virtual?
7.5.5 | 958 | NAD | Lambdas and `decltype`
7.5.5 | 974 | CD3 | Default arguments for lambdas
7.5.5 | 975 | CD3 | Restrictions on return type deduction for lambdas
7.5.5 | 1034 | C++11 | Attributes for `return` statements in lambdas
7.5.5 | 1048 | CD3 | `auto` deduction and lambda return type deduction.
7.5.5 | 1062 | C++11 | Syntax of attribute-specifiers in lambdas
7.5.5 | 1118 | NAD | Implicit lambda capture via explicit copy constructor
7.5.5 | 1249 | DR | Cv-qualification of nested lambda capture
7.5.5 | 1468 | CD5 | `typeid`, overload resolution, and implicit lambda capture
7.5.5 | 1557 | CD3 | Language linkage of converted lambda function pointer
7.5.5 | 1607 | C++14 | Lambdas in template parameters
7.5.5 | 1612 | C++14 | Implicit lambda capture and anonymous unions
7.5.5 | 1613 | C++14 | Constant expressions and lambda capture
7.5.5 | 1629 | C++14 | Can a closure class be a literal type?
7.5.5 | 1632 | CD5 | Lambda capture in member initializers
7.5.5 | 1662 | C++14 | Capturing function parameter packs
7.5.5 | 1663 | NAD | Capturing an empty pack expansion
7.5.5 | 1664 | C++14 | Argument-dependent lookup of lambdas used in default arguments
7.5.5 | 1681 | C++14 | init-captures and nested lambdas
7.5.5 | 1722 | CD4 | Should lambda to function pointer conversion function be `noexcept`?
7.5.5 | 1743 | NAD | init-captures in nested lambdas
7.5.5 | 1760 | C++14 | Access of member corresponding to init-capture
7.5.5 | 1772 | C++14 | `__func__` in a lambda body
7.5.5 | 1780 | CD4 | Explicit instantiation/specialization of generic lambda `operator()`
7.5.5 | 1822 | DRWP | Lookup of parameter names in lambda-expressions
7.5.5 | 1891 | CD4 | Move constructor/assignment for closure class
7.5.5 | 1913 | CD5 | `decltype((x))` in lambda-expressions
7.5.5 | 1927 | dup | Lifetime of temporaries in init-captures
7.5.5 | 1931 | extension | Default-constructible and copy-assignable closure types
7.5.5 | 1937 | CD5 | Incomplete specification of function pointer from lambda
7.5.5 | 1942 | CD4 | Incorrect reference to trailing-return-type
7.5.5 | 1973 | drafting | Which parameter-declaration-clause in a lambda-expression?
7.5.5 | 2011 | C++17 | Unclear effect of reference capture of reference
7.5.5 | 2086 | drafting | Reference odr-use vs implicit capture
7.5.5 | 2095 | CD4 | Capturing rvalue references to functions by copy
7.5.5 | 2097 | extension | Lambdas and `noreturn` attribute
7.5.5 | 2121 | WP | More flexible lambda syntax
7.5.5 | 2159 | NAD | Lambda capture and local `thread_local` variables
7.5.5 | 2162 | CD3 | Capturing `this` by reference
7.5.5 | 2211 | C++17 | Hiding by lambda captures and parameters
7.5.5 | 2247 | C++17 | Lambda capture and variable argument list
7.5.5.1 | 2509 | ready | decl-specifier-seq in lambda-specifiers
7.5.5.3 | 2358 | CD5 | Explicit capture of value
7.5.5.3 | 2378 | C++20 | Inconsistent grammar for reference init-capture of pack
7.5.7.5 | 2517 | open | Useless restriction on use of parameter in constraint-expression
7.6.1 | 863 | CD2 | Rvalue reference cast to incomplete type
7.6.1.2 | 798 | C++11 | Overloaded subscript operator described in clause 5
7.6.1.2 | 1213 | CD3 | Array subscripting and xvalues
7.6.1.3 | 113 | CD1 | Visibility of called function
7.6.1.3 | 118 | CD1 | Calls via pointers to virtual member functions
7.6.1.3 | 506 | CD1 | Conditionally-supported behavior for non-POD objects passed to ellipsis
7.6.1.3 | 634 | CD1 | Conditionally-supported behavior for non-POD objects passed to ellipsis redux
7.6.1.3 | 722 | CD2 | Can `nullptr` be passed to an ellipsis?
7.6.1.3 | 1083 | C++11 | Passing an object to ellipsis with non-trivial move constructor
7.6.1.3 | 1516 | CD3 | Definition of “virtual function call”
7.6.1.3 | 1555 | extension | Language linkage and function type compatibility
7.6.1.3 | 1646 | CD5 | decltype-specifiers, abstract classes, and deduction failure
7.6.1.3 | 1880 | CD4 | When are parameter objects destroyed?
7.6.1.3 | 1885 | CD4 | Return value of a function is underspecified
7.6.1.3 | 2029 | dup | Abstract class return type in `decltype` operand
7.6.1.3 | 2176 | CD4 | Destroying the returned object when a destructor throws
7.6.1.3 | 2215 | C++17 | Redundant description of language linkage in function call
7.6.1.3 | 2241 | CD5 | Overload resolution is not invoked with a single function
7.6.1.3 | 2284 | open | Sequencing of braced-init-list arguments
7.6.1.3 | 2347 | C++20 | Passing short scoped enumerations to ellipsis
7.6.1.3 | 2486 | DR | Call to `noexcept` function via `noexcept(false)` pointer/lvalue
7.6.1.3 | 2515 | open | Result of a function call
7.6.1.4 | 914 | extension | Value-initialization of array types
7.6.1.4 | 943 | CD5 | Is `T()` a temporary?
7.6.1.4 | 1300 | dup | `T()` for array types
7.6.1.4 | 1521 | drafting | `T{`expr`}` with reference types
7.6.1.4 | 1525 | NAD | Array bound inference in temporary array
7.6.1.4 | 1893 | CD5 | Function-style cast with braced-init-lists and empty pack expansions
7.6.1.4 | 2283 | drafting | Missing complete type requirements
7.6.1.4 | 2351 | CD5 | `void{}`
7.6.1.5 | 52 | TC1 | Non-static members, member selection and access checking
7.6.1.5 | 421 | CD1 | Is rvalue.field an rvalue?
7.6.1.5 | 731 | CD2 | Omitted reference qualification of member function type
7.6.1.5 | 1119 | C++11 | Missing case in description of member access ambiguity
7.6.1.5 | 1585 | NAD | Value category of member access of rvalue reference member
7.6.1.5 | 2231 | NAD | Class member access to static data member template
7.6.1.5 | 2458 | DRWP | Value category of expressions denoting non-static member functions
7.6.1.6 | 742 | open | Postfix increment/decrement with long bit-field operands
7.6.1.7 | 665 | CD2 | Problems in the specification of `dynamic_cast`
7.6.1.7 | 1269 | CD3 | `dynamic_cast` of an xvalue operand
7.6.1.7 | 1965 | drafting | Explicit casts to reference types
7.6.1.7 | 2365 | CD5 | Confusing specification for `dynamic_cast`
7.6.1.8 | 282 | open | Namespace for `extended_type_info`
7.6.1.8 | 492 | CD1 | `typeid` constness inconsistent with example
7.6.1.8 | 528 | open | Why are incomplete class types not allowed with `typeid`?
7.6.1.8 | 1416 | CD3 | Function cv-qualifiers and `typeid`
7.6.1.8 | 1954 | open | `typeid` null dereference check in subexpressions
7.6.1.8 | 2512 | NAD | `typeid` and incomplete class types
7.6.1.9 | 53 | TC1 | Lvalue-to-rvalue conversion before certain static_casts
7.6.1.9 | 54 | CD1 | Static_cast from private base to derived class
7.6.1.9 | 128 | TC1 | Casting between enum types
7.6.1.9 | 137 | TC1 | `static_cast` of cv `void*`
7.6.1.9 | 294 | NAD | Can `static_cast` drop exception specifications?
7.6.1.9 | 427 | CD1 | `static_cast` ambiguity: conversion versus cast to derived
7.6.1.9 | 439 | CD1 | Guarantees on casting pointer back to cv-qualified version of original type
7.6.1.9 | 671 | CD1 | Explicit conversion from a scoped enumeration type to integral type
7.6.1.9 | 833 | CD2 | Explicit conversion of a scoped enumeration value to a floating type
7.6.1.9 | 1011 | C++11 | Standard conversions that cannot be inverted
7.6.1.9 | 1094 | C++11 | Converting floating-point values to scoped enumeration types
7.6.1.9 | 1320 | CD3 | Converting scoped enumerations to `bool`
7.6.1.9 | 1376 | C++14 | `static_cast` of temporary to rvalue reference
7.6.1.9 | 1412 | CD3 | Problems in specifying pointer conversions
7.6.1.9 | 1447 | CD3 | `static_cast` of bit-field lvalue to rvalue reference
7.6.1.9 | 1739 | C++14 | Conversion of floating point to enumeration
7.6.1.9 | 1832 | CD4 | Casting to incomplete enumeration
7.6.1.9 | 2048 | open | C-style casts that cast away constness vs `static_cast`
7.6.1.9 | 2224 | C++17 | Member subobjects and base-class casts
7.6.1.9 | 2243 | drafting | Incorrect use of implicit conversion sequence
7.6.1.9 | 2338 | CD5 | Undefined behavior converting to short enums with fixed underlying types
7.6.1.9 | 2500 | extension | `noexcept(false)` functions and `noexcept` expressions
7.6.1.10 | 195 | CD1 | Converting between function and object pointers
7.6.1.10 | 463 | CD1 | `reinterpret_cast<T*>(0)`
7.6.1.10 | 573 | C++11 | Conversions between function pointers and `void*`
7.6.1.10 | 658 | CD2 | Defining `reinterpret_cast` for pointer types
7.6.1.10 | 734 | CD2 | Are unique addresses required for namespace-scope variables?
7.6.1.10 | 799 | CD2 | Can `reinterpret_cast` be used to cast an operand to its own type?
7.6.1.10 | 800 | NAD | Safely-derived pointers and object pointers converted from function pointers
7.6.1.10 | 842 | CD2 | Casting to rvalue reference type
7.6.1.10 | 944 | extension | `reinterpret_cast` for all types with the same size and alignment
7.6.1.10 | 1120 | C++11 | `reinterpret_cast` and `void*`
7.6.1.10 | 1268 | CD3 | `reinterpret_cast` of an xvalue operand
7.6.1.10 | 2225 | NAD | `reinterpret_cast` to same floating-point type
7.6.1.10 | 2342 | CD5 | Reference `reinterpret_cast` and pointer-interconvertibility
7.6.1.11 | 801 | CD2 | Casting away constness in a cast to rvalue reference type
7.6.1.11 | 891 | CD2 | `const_cast` to rvalue reference from objectless rvalue
7.6.1.11 | 1086 | C++11 | `const_cast` to rvalue reference to function type
7.6.2 | 342 | CD3 | Terminology: "indirection" versus "dereference"
7.6.2.2 | 203 | NAD | Type of address-of-member expression
7.6.2.2 | 232 | drafting | Is indirection through a null pointer undefined behavior?
7.6.2.2 | 324 | CD1 | Can "`&`" be applied to assignment to bit-field?
7.6.2.2 | 610 | NAD | Computing the negative of `0U`
7.6.2.2 | 802 | concepts | Problems with restrictions on taking the address of a member of a concept map
7.6.2.2 | 983 | CD2 | Ambiguous pointer-to-member constant
7.6.2.2 | 1121 | C++11 | Unnecessary ambiguity error in formation of pointer to member
7.6.2.2 | 1230 | dup | Confusing description of ambiguity of destructor name
7.6.2.2 | 1458 | CD3 | Address of incomplete type vs `operator&()`
7.6.2.2 | 1800 | CD4 | Pointer to member of nested anonymous union
7.6.2.2 | 1923 | extension | Lvalues of type `void`
7.6.2.2 | 1971 | CD4 | Unclear disambiguation of destructor and `operator~`
7.6.2.2 | 2449 | extension | Thunks as an implementation technique for pointers to virtual functions
7.6.2.3 | 1653 | CD4 | Removing deprecated increment of `bool`
7.6.2.4 | 2454 | NAD | Tail recursion and coroutine symmetric transfer
7.6.2.4 | 2466 | DRWP | `co_await` should be a single evaluation
7.6.2.4 | 2472 | NAD | Value categories in await-expressions
7.6.2.5 | 803 | CD2 | `sizeof` an enumeration type with a fixed underlying type
7.6.2.5 | 839 | dup | `sizeof` with opaque enumerations
7.6.2.5 | 1122 | C++11 | Circular definition of `std::size_t`
7.6.2.5 | 1553 | CD3 | `sizeof` and xvalue bit-fields
7.6.2.5 | 1606 | NAD | `sizeof` closure class
7.6.2.5 | 1678 | NAD | Naming the type of an array of runtime bound
7.6.2.6 | 659 | CD1 | Alignment of function types
7.6.2.6 | 930 | CD2 | `alignof` with incomplete array type
7.6.2.6 | 1008 | extension | Querying the alignment of an object
7.6.2.6 | 1305 | CD3 | `alignof` applied to array of unknown size
7.6.2.7 | 1123 | C++11 | Destructors should be `noexcept` by default
7.6.2.7 | 1354 | CD3 | Destructor exceptions for temporaries in noexcept expressions
7.6.2.7 | 1465 | CD4 | `noexcept` and `std::bad_array_new_length`
7.6.2.7 | 1685 | NAD | Value category of `noexcept` expression
7.6.2.8 | 31 | NAD | Looking up new/delete
7.6.2.8 | 74 | TC1 | Enumeration value in direct-new-declarator
7.6.2.8 | 127 | TC1 | Ambiguity in description of matching deallocation function
7.6.2.8 | 130 | NAD | Sequence points and new-expressions
7.6.2.8 | 256 | CD1 | Overflow in size calculations
7.6.2.8 | 267 | open | Alignment requirement for new-expressions
7.6.2.8 | 292 | CD3 | Deallocation on exception in `new` before arguments evaluated
7.6.2.8 | 299 | CD1 | Conversion on array bound expression in `new`
7.6.2.8 | 313 | dup | Class with single conversion function to integral as array size in `new`
7.6.2.8 | 429 | CD1 | Matching deallocation function chosen based on syntax or signature?
7.6.2.8 | 473 | open | Block-scope declarations of allocator functions
7.6.2.8 | 476 | extension | Determining the buffer size for placement new
7.6.2.8 | 624 | CD1 | Overflow in calculating size of allocation
7.6.2.8 | 672 | CD2 | Sequencing of initialization in new-expressions
7.6.2.8 | 804 | CD2 | Deducing the type in `new auto(x)`
7.6.2.8 | 805 | CD2 | Which exception to throw for overflow in array size calculation
7.6.2.8 | 901 | drafting | Deleted `operator delete`
7.6.2.8 | 1061 | C++11 | Negative array bounds in a new-expression
7.6.2.8 | 1464 | CD3 | Negative array bound in a new-expression
7.6.2.8 | 1469 | extension | Omitted bound in array new-expression
7.6.2.8 | 1559 | CD3 | String too long in initializer list of new-expression
7.6.2.8 | 1566 | NAD | Should `new std::initializer_list<T>` be ill-formed?
7.6.2.8 | 1628 | open | Deallocation function templates
7.6.2.8 | 1748 | CD4 | Placement new with a null pointer
7.6.2.8 | 1786 | C++14 | Effect of merging allocations on memory leakage
7.6.2.8 | 1851 | CD4 | `decltype(auto)` in new-expressions
7.6.2.8 | 1935 | drafting | Reuse of placement arguments in deallocation
7.6.2.8 | 1992 | CD4 | `new (std::nothrow) int[N]` can throw
7.6.2.8 | 2102 | drafting | Constructor checking in new-expression
7.6.2.8 | 2112 | CD5 | `new auto{x}`
7.6.2.8 | 2130 | CD4 | Over-aligned types in new-expressions
7.6.2.8 | 2141 | CD4 | Ambiguity in new-expression with elaborated-type-specifier
7.6.2.8 | 2177 | CD5 | Placement `operator delete` and parameter copies
7.6.2.8 | 2280 | C++20 | Matching a usual deallocation function with placement new
7.6.2.8 | 2281 | drafting | Consistency of aligned `operator delete` replacement
7.6.2.8 | 2282 | C++20 | Consistency with mismatched aligned/non-over-aligned allocation/deallocation functions
7.6.2.8 | 2382 | CD5 | Array allocation overhead for non-allocating placement `new`
7.6.2.9 | 196 | open | Arguments to deallocation functions
7.6.2.9 | 265 | dup | Destructors, exceptions, and deallocation
7.6.2.9 | 288 | CD1 | Misuse of "static type" in describing pointers
7.6.2.9 | 353 | CD1 | Is deallocation routine called if destructor throws exception in delete?
7.6.2.9 | 442 | CD1 | Incorrect use of null pointer constant in description of delete operator
7.6.2.9 | 599 | CD2 | Deleting a null function pointer
7.6.2.9 | 1037 | C++11 | Requirements for operands of delete-expressions and deallocation functions
7.6.2.9 | 1259 | NAD | Deleting a POD via a pointer to base
7.6.2.9 | 1788 | CD4 | Sized deallocation of array of non-class type
7.6.2.9 | 2239 | NAD | Sized deallocation with a trivial destructor
7.6.2.9 | 2248 | C++17 | Problems with sized delete
7.6.2.9 | 2474 | DRWP | Cv-qualification and deletion
7.6.3 | 242 | CD4 | Interpretation of old-style casts
7.6.3 | 520 | CD1 | Old-style casts between incomplete class types
7.6.3 | 909 | NAD | Old-style casts with conversion functions
7.6.4 | 497 | CD1 | Missing required initialization in example
7.6.4 | 1091 | C++11 | Inconsistent use of the term “object expression”
7.6.4 | 1124 | NAD | Error in description of value category of pointer-to-member expression
7.6.4 | 1340 | CD3 | Complete type in member pointer expressions
7.6.5 | 614 | CD1 | Results of integer `/` and `%`
7.6.5 | 1450 | CD3 | `INT_MIN % -1`
7.6.6 | 55 | NAD | Adding/subtracting pointer and enumeration value
7.6.6 | 179 | TC1 | Function pointers and subtraction
7.6.6 | 567 | NAD | Can `size_t` and `ptrdiff_t` be larger than `long`?
7.6.6 | 1314 | NAD | Pointer arithmetic within standard-layout objects
7.6.6 | 1504 | CD3 | Pointer arithmetic after derived-base conversion
7.6.6 | 1865 | CD4 | Pointer arithmetic and multi-level qualification conversions
7.6.6 | 2013 | drafting | Pointer subtraction in large array
7.6.6 | 2182 | drafting | Pointer arithmetic in array-like containers
7.6.6 | 2419 | C++20 | Loss of generality treating pointers to objects as one-element arrays
7.6.7 | 854 | CD2 | Left shift and unsigned extended types
7.6.7 | 1457 | CD3 | Undefined behavior in left-shift
7.6.7 | 1857 | CD5 | Additional questions about bits
7.6.7 | 2087 | NAD | Left shift of negative value by zero bits
7.6.9 | 583 | CD3 | Relational pointer comparisons against the null pointer constant
7.6.9 | 622 | NAD | Relational comparisons of arbitrary pointers
7.6.9 | 661 | CD1 | Semantics of arithmetic comparisons
7.6.9 | 963 | CD2 | Comparing `nullptr` with 0
7.6.9 | 1512 | CD3 | Pointer comparison vs qualification conversions
7.6.9 | 1596 | CD4 | Non-array objects as `array[1]`
7.6.10 | 73 | TC1 | Pointer equality
7.6.10 | 1400 | NAD | Function pointer equality
7.6.10 | 1598 | C++14 | Criterion for equality of pointers to members
7.6.10 | 1652 | CD4 | Object addresses in `constexpr` expressions
7.6.10 | 1858 | CD4 | Comparing pointers to union members
7.6.10 | 2302 | NAD | Address comparison between different member subobjects
7.6.16 | 446 | CD1 | Does an lvalue-to-rvalue conversion on the "?" operator produce a temporary?
7.6.16 | 587 | CD2 | Lvalue operands of a conditional expression differing only in cv-qualification
7.6.16 | 1550 | CD3 | Parenthesized throw-expression operand of conditional-expression
7.6.16 | 1560 | CD3 | Gratuitous lvalue-to-rvalue conversion in conditional-expression with throw-expression operand
7.6.16 | 1805 | CD4 | Conversions of array operands in conditional-expressions
7.6.16 | 1843 | CD4 | Bit-field in conditional operator with `throw` operand
7.6.16 | 1895 | CD4 | Deleted conversions in conditional operator operands
7.6.16 | 1932 | CD4 | Bit-field results of conditional operators
7.6.16 | 2023 | drafting | Composite reference result type of conditional operator
7.6.16 | 2226 | CD5 | Xvalues vs lvalues in conditional expressions
7.6.16 | 2316 | drafting | Simplifying class conversions in conditional expressions
7.6.16 | 2321 | CD5 | Conditional operator and cv-qualified class prvalues
7.6.19 | 556 | CD2 | Conflicting requirements for acceptable aliasing
7.6.19 | 855 | CD2 | Incorrect comments in braced-init-list assignment example
7.6.19 | 1527 | CD3 | Assignment from braced-init-list
7.6.19 | 1538 | CD3 | C-style cast in braced-init-list assignment
7.6.19 | 1542 | drafting | Compound assignment of braced-init-list
7.6.19 | 2286 | NAD | Assignment evaluation order
7.6.19 | 2399 | CD5 | Unclear referent of “expression” in assignment-expression
7.6.19 | 2427 | C++20 | Deprecation of volatile operands and unevaluated contexts
7.6.20 | 188 | TC1 | Comma operator and rvalue conversion
7.6.20 | 1925 | CD4 | Bit-field prvalues
7.7 | 94 | TC1 | Inconsistencies in the descriptions of constant expressions
7.7 | 97 | NAD | Use of bool constants in integral constant expressions
7.7 | 236 | NAD | Explicit temporaries and integral constant expressions
7.7 | 339 | CD1 | Overload resolution in operand of `sizeof` in constant expression
7.7 | 366 | CD1 | String literal allowed in integral constant expression?
7.7 | 367 | CD1 | `throw` operator allowed in constant expression?
7.7 | 457 | CD1 | Wording nit on use of const variables in constant expressions
7.7 | 487 | NAD | Operator overloading in constant expressions
7.7 | 530 | CD1 | Nontype template arguments in constant expressions
7.7 | 652 | CD2 | Compile-time evaluation of floating-point expressions
7.7 | 684 | CD1 | Constant expressions involving the address of an automatic variable
7.7 | 715 | CD2 | Class member access constant expressions
7.7 | 721 | CD2 | Where must a variable be initialized to be used in a constant expression?
7.7 | 806 | CD2 | Enumeration types in integral constant expressions
7.7 | 807 | NAD | `typeid` expressions in constant expressions
7.7 | 1010 | CD2 | Address of object with dynamic storage duration in constant expression
7.7 | 1060 | C++11 | Scoped enumerators in integral constant expressions
7.7 | 1098 | C++11 | Pointer conversions in constant expressions
7.7 | 1099 | C++11 | Infinite recursion in `constexpr` functions
7.7 | 1100 | C++11 | `constexpr` conversion functions and non-type template arguments
7.7 | 1125 | C++11 | Unclear definition of “potential constant expression”
7.7 | 1126 | C++11 | `constexpr` functions in `const` initializers
7.7 | 1127 | C++11 | Overload resolution in `constexpr` functions
7.7 | 1188 | C++11 | Type punning in constant expressions
7.7 | 1193 | C++11 | Use of address-constant pointers in constant expressions
7.7 | 1197 | C++11 | Constexpr arrays
7.7 | 1255 | drafting | Definition problems with `constexpr` functions
7.7 | 1256 | open | Unevaluated operands are not necessarily constant expressions
7.7 | 1264 | CD3 | Use of `this` in `constexpr` constructor
7.7 | 1293 | CD3 | String literals in constant expressions
7.7 | 1311 | CD3 | Volatile lvalues in constant expressions
7.7 | 1312 | CD3 | Simulated `reinterpret_cast` in constant expressions
7.7 | 1313 | CD3 | Undefined pointer arithmetic in constant expressions
7.7 | 1364 | CD3 | `constexpr` function parameters
7.7 | 1365 | CD3 | Calling undefined `constexpr` functions
7.7 | 1367 | CD3 | Use of `this` in a constant expression
7.7 | 1384 | NAD | `reinterpret_cast` in constant expressions
7.7 | 1407 | NAD | Integral to `bool` conversion in converted constant expressions
7.7 | 1452 | NAD | Value-initialized objects may be constants
7.7 | 1454 | CD3 | Passing constants through `constexpr` functions via references
7.7 | 1455 | CD3 | Lvalue converted constant expressions
7.7 | 1456 | CD3 | Address constant expression designating the one-past-the-end address
7.7 | 1480 | CD3 | Constant initialization via non-constant temporary
7.7 | 1535 | CD3 | `typeid` in core constant expressions
7.7 | 1537 | CD3 | Optional compile-time evaluation of constant expressions
7.7 | 1540 | NAD | Use of address constants in constant expressions
7.7 | 1626 | drafting | `constexpr` member functions in brace-or-equal-initializers
7.7 | 1683 | CD4 | Incorrect example after `constexpr` changes
7.7 | 1694 | CD4 | Restriction on reference to temporary as a constant expression
7.7 | 1757 | CD4 | Const integral subobjects
7.7 | 1826 | NAD | `const` floating-point in constant expressions
7.7 | 1921 | NAD | `constexpr` constructors and point of initialization of `const` variables
7.7 | 1952 | CD4 | Constant expressions and library undefined behavior
7.7 | 1968 | NAD | Address of `typeid` in constant expressions
7.7 | 2004 | CD4 | Unions with mutable members in constant expressions
7.7 | 2005 | NAD | Incorrect `constexpr` reference initialization requirements
7.7 | 2022 | CD4 | Copy elision in constant expressions
7.7 | 2126 | C++20 | Lifetime-extended temporaries in constant expressions
7.7 | 2129 | CD4 | Non-object prvalues and constant expressions
7.7 | 2166 | drafting | Unclear meaning of “undefined `constexpr` function”
7.7 | 2167 | CD4 | Non-member references with lifetimes within the current evaluation
7.7 | 2186 | drafting | Unclear point that “preceding initialization” must precede
7.7 | 2192 | open | Constant expressions and order-of-eval undefined behavior
7.7 | 2278 | CD5 | Copy elision in constant expressions reconsidered
7.7 | 2301 | open | Value-initialization and constexpr constructor evaluation
7.7 | 2364 | NAD | Constant expressions, aggregate initialization, and modifications
7.7 | 2368 | CD5 | Differences in relational and three-way constant comparisons
7.7 | 2392 | open | new-expression size check and constant evaluation
7.7 | 2400 | CD5 | Constexpr virtual functions and temporary objects
7.7 | 2418 | CD5 | Missing cases in definition of “usable in constant expressions”
7.7 | 2439 | C++20 | Undefined term in definition of “usable in constant expressions”
7.7 | 2440 | open | Allocation in core constant expressions
7.7 | 2456 | open | Viable user-defined conversions in converted constant expressions
7.7 | 2490 | DR | Restrictions on destruction in constant expressions
8.3 | 1054 | C++11 | Lvalue-to-rvalue conversions in expression statements
8.5 | 227 | TC1 | How many scopes in an `if` statement?
8.5 | 948 | C++11 | `constexpr` in conditions
8.5 | 1732 | C++14 | Defining types in conditions and range-based `for` statements
8.5 | 2344 | NAD | Redeclaration of names in init-statements
8.5.2 | 631 | CD3 | Jumping into a “then” clause
8.5.2 | 2274 | NAD | Generic lambda capture vs constexpr if
8.5.2 | 2320 | extension | `constexpr if` and boolean conversions
8.5.2 | 2345 | review | Jumping across initializers in init-statements and conditions
8.5.2 | 2348 | NAD | Non-templated `constexpr if`
8.5.3 | 1767 | C++14 | Scoped enumeration in a `switch` statement
8.6 | 1204 | C++11 | Specifiers in a for-range-declaration
8.6.5 | 864 | C++11 | braced-init-list in the range-based `for` statement
8.6.5 | 866 | concepts | Concept maps and the range-based `for`
8.6.5 | 1274 | CD4 | Common nonterminal for expression and braced-init-list
8.6.5 | 1442 | CD3 | Argument-dependent lookup in the range-based `for`
8.6.5 | 1445 | dup | Argument-dependent lookup of `begin` and `end`
8.6.5 | 1498 | dup | Lifetime of temporaries in range-based `for`
8.6.5 | 1523 | CD5 | Point of declaration in range-based `for`
8.6.5 | 1679 | NAD | Range-based `for` and array of runtime bound
8.6.5 | 1680 | drafting | Including `<initializer_list>` for range-based `for`
8.6.5 | 2220 | C++17 | Hiding index variable in range-based `for`
8.7 | 276 | CD1 | Order of destruction of parameters and temporaries
8.7 | 378 | CD1 | Wording that says temporaries are declared
8.7 | 2115 | drafting | Order of implicit destruction vs release of automatic storage
8.7.4 | 1541 | CD3 | cv `void` return types
8.7.4 | 2017 | CD4 | Flowing off end is not equivalent to no-expression return
8.7.4 | 2495 | review | Glvalue result of a function call
8.7.5 | 2452 | DRWP | Flowing off the end of a coroutine
8.8 | 467 | NAD | Jump past initialization of local static variable
8.8 | 723 | concepts | Archetypes in skipped declarations
8.8 | 1784 | C++17 | Concurrent execution during static local initialization
8.8 | 2123 | open | Omitted constant initialization of local static variables
8.8 | 2429 | C++20 | Initialization of `thread_local` variables referenced by lambdas
8.9 | 1223 | drafting | Syntactic disambiguation and trailing-return-types
8.9 | 1616 | DRWP | Disambiguation parsing and template parameters
9.2 | 808 | CD2 | Non-type decl-specifiers versus max-munch
9.2 | 1128 | C++11 | attribute-specifiers in decl-specifier-seqs
9.2.2 | 69 | TC1 | Storage class specifiers on template declarations
9.2.2 | 154 | NAD | Anonymous unions in unnamed namespaces
9.2.2 | 498 | open | Storage class specifiers in definitions of class members
9.2.2 | 717 | CD2 | Unintentional restrictions on the use of `thread_local`
9.2.2 | 809 | CD2 | Deprecation of the `register` keyword
9.2.2 | 810 | CD2 | Block-scope `thread_local` variables should be implicitly `static`
9.2.2 | 940 | CD2 | Global anonymous unions
9.2.2 | 1544 | CD3 | Linkage of member of unnamed namespace
9.2.2 | 1648 | C++14 | `thread_local` vs block extern declarations
9.2.2 | 1793 | CD4 | `thread_local` in explicit specializations
9.2.2 | 1799 | CD4 | `mutable` and non-explicit const qualification
9.2.2 | 1930 | CD4 | init-declarator-list vs member-declarator-list
9.2.2 | 2050 | NAD | Consolidate specification of linkage
9.2.2 | 2232 | open | `thread_local` anonymous unions
9.2.3 | 281 | CD1 | `inline` specifier in `friend` declarations
9.2.3 | 317 | CD1 | Can a function be declared inline after it has been called?
9.2.3 | 376 | NAD | Class "definition" versus class "declaration"
9.2.3 | 396 | CD1 | Misleading note regarding use of `auto` for disambiguation
9.2.3 | 397 | CD1 | Same address for string literals from default arguments in inline functions?
9.2.3 | 412 | NAD | Can a replacement allocation function be inline?
9.2.3 | 477 | CD1 | Can `virtual` appear in a `friend` declaration?
9.2.3 | 765 | CD2 | Local types in inline functions with external linkage
9.2.3 | 1823 | CD4 | String literal uniqueness in inline functions
9.2.4 | 56 | TC1 | Redeclaring typedefs within classes
9.2.4 | 407 | C++11 | Named class with associated typedef: two names or one?
9.2.4 | 422 | NAD | Is a typedef redeclaration allowed with a template type that might be the same?
9.2.4 | 424 | CD1 | Wording problem with issue 56 resolution on redeclaring typedefs in class scope
9.2.4 | 576 | CD2 | Typedefs in function definitions
9.2.4 | 1247 | CD4 | Restriction on alias name appearing in type-id
9.2.4 | 1437 | CD3 | `alignas` in alias-declaration
9.2.4 | 1820 | DRWP | Qualified typedef names
9.2.4 | 1894 | DRWP | typedef-names and using-declarations
9.2.4 | 1964 | NAD | opaque-enum-declaration in alias-declaration?
9.2.4 | 2071 | CD4 | `typedef` with no declarator
9.2.4 | 2199 | DRWP | Typedefs and tags
9.2.4 | 2212 | open | Typedef changing linkage after use
9.2.6 | 647 | CD1 | Non-constexpr instances of constexpr constructor templates
9.2.6 | 648 | CD1 | Constant expressions in constexpr initializers
9.2.6 | 699 | CD2 | Must constexpr member functions be defined in the class member-specification?
9.2.6 | 700 | C++11 | Constexpr member functions of class templates
9.2.6 | 837 | C++11 | Constexpr functions and `return` braced-init-list
9.2.6 | 860 | C++11 | Explicit qualification of constexpr member functions
9.2.6 | 892 | C++11 | Missing requirements for constexpr constructors
9.2.6 | 898 | C++11 | Declarations in constexpr functions
9.2.6 | 991 | CD2 | Reference parameters of constexpr functions and constructors
9.2.6 | 1129 | C++11 | Default `nothrow` for `constexpr` functions
9.2.6 | 1186 | C++11 | Non-dependent `constexpr` violations in function templates
9.2.6 | 1194 | C++11 | Constexpr references
9.2.6 | 1195 | C++11 | References to non-literal types in constexpr functions
9.2.6 | 1199 | C++11 | Deleted constexpr functions
9.2.6 | 1225 | C++11 | `constexpr` constructors and virtual bases
9.2.6 | 1316 | NAD | `constexpr` function requirements and class scope
9.2.6 | 1358 | CD3 | Unintentionally ill-formed `constexpr` function template instances
9.2.6 | 1359 | CD3 | `constexpr` union constructors
9.2.6 | 1366 | CD3 | Deleted `constexpr` constructors and virtual base classes
9.2.6 | 1369 | CD3 | Function invocation substitution of `this`
9.2.6 | 1587 | C++14 | `constexpr` initialization and nested anonymous unions
9.2.6 | 1595 | C++14 | Constructors “involved in” subobject initialization
9.2.6 | 1597 | CD3 | Misleading `constexpr` example
9.2.6 | 1637 | NAD | Recursion in `constexpr` template default constructor
9.2.6 | 1684 | C++14 | Static `constexpr` member functions for non-literal classes
9.2.6 | 1688 | NAD | Volatile `constexpr` variables
9.2.6 | 1712 | CD4 | `constexpr` variable template declarations
9.2.6 | 1745 | NAD | `thread_local constexpr` variable
9.2.6 | 1872 | CD4 | Instantiations of `constexpr` templates that cannot appear in constant expressions
9.2.6 | 1911 | CD4 | `constexpr` constructor with non-literal base class
9.2.6 | 2117 | drafting | Explicit specializations and `constexpr` function templates
9.2.6 | 2163 | CD4 | Labels in `constexpr` functions
9.2.6 | 2217 | NAD | `constexpr` constructors for non-literal types
9.2.6 | 2268 | C++17 | Unions with mutable members in constant expressions revisited
9.2.6 | 2299 | CD5 | `constexpr` vararg functions
9.2.6 | 2309 | CD5 | Restrictions on nested statements within `constexpr` functions
9.2.6 | 2410 | review | Implicit calls of immediate functions
9.2.6 | 2424 | C++20 | `constexpr` initialization requirements for variant members
9.2.8 | 2441 | C++20 | Inline function parameters
9.2.9 | 539 | CD3 | Constraints on type-specifier-seq
9.2.9.2 | 76 | TC1 | Are const volatile variables considered "constant expressions"?
9.2.9.2 | 609 | CD4 | What is a “top-level” cv-qualifier?
9.2.9.2 | 811 | CD2 | Unclear implications of const-qualification
9.2.9.2 | 2195 | open | Unsolicited reading of trailing volatile members
9.2.9.3 | 283 | CD1 | Template type-parameters are not syntactically type-names
9.2.9.3 | 516 | CD1 | Use of `signed` in bit-field declarations
9.2.9.3 | 643 | NAD | Use of `decltype` in a class member-specification
9.2.9.3 | 651 | CD1 | Problems in `decltype` specification and examples
9.2.9.3 | 669 | NAD | Confusing specification of the meaning of `decltype`
9.2.9.3 | 950 | CD2 | Use of `decltype` as a class-name
9.2.9.3 | 988 | CD2 | Reference-to-reference collapsing with `decltype`
9.2.9.3 | 1075 | C++11 | Grammar does not allow template alias in type-name
9.2.9.3 | 1130 | C++11 | Function parameter type adjustments and `decltype`
9.2.9.3 | 1212 | C++11 | Non-function-call xvalues and `decltype`
9.2.9.3 | 1600 | CD4 | Erroneous reference initialization in example
9.2.9.3 | 1852 | CD4 | Wording issues regarding `decltype(auto)`
9.2.9.3 | 2332 | CD5 | template-name as simple-type-name vs injected-class-name
9.2.9.4 | 68 | TC1 | Grammar does not allow "friend class A<int>;"
9.2.9.4 | 144 | open | Position of `friend` specifier
9.2.9.4 | 962 | CD2 | Attributes appertaining to class and enum types
9.2.9.4 | 1131 | C++11 | Template aliases in elaborated-type-specifiers
9.2.9.4 | 1707 | C++14 | `template` in elaborated-type-specifier without nested-name-specifier
9.2.9.4 | 2157 | CD4 | Further disambiguation of enumeration elaborated-type-specifier
9.2.9.4 | 2213 | DRWP | Forward declaration of partial specializations
9.2.9.6 | 625 | CD2 | Use of `auto` as a template-argument
9.2.9.6 | 629 | CD1 | `auto` parsing ambiguity
9.2.9.6 | 706 | NAD | Use of `auto` with rvalue references
9.2.9.6 | 711 | CD2 | `auto` with braced-init-list
9.2.9.6 | 746 | CD2 | Use of `auto` in new-expressions
9.2.9.6 | 984 | CD2 | “Deduced type” is unclear in `auto` type deduction
9.2.9.6 | 1265 | CD3 | Mixed use of the `auto` specifier
9.2.9.6 | 1346 | CD3 | expression-list initializers and the `auto` specifier
9.2.9.6 | 1347 | CD3 | Consistency of `auto` in multiple-declarator declarations
9.2.9.6 | 1348 | drafting | Use of `auto` in a trailing-return-type
9.2.9.6 | 1564 | NAD | Template argument deduction from an initializer list
9.2.9.6 | 1588 | CD3 | Deducing cv-qualified `auto`
9.2.9.6 | 1670 | drafting | `auto` as conversion-type-id
9.2.9.6 | 1674 | C++14 | Return type deduction for address of function
9.2.9.6 | 1725 | NAD | Trailing return type with nested function declarator
9.2.9.6 | 1868 | drafting | Meaning of “placeholder type”
9.2.9.6 | 1877 | CD4 | Return type deduction from `return` with no operand
9.2.9.6 | 1878 | CD4 | `operator auto` template
9.2.9.6 | 1892 | CD4 | Use of `auto` in function type
9.2.9.6 | 1957 | extension | `decltype(auto)` with direct-list-initialization
9.2.9.6 | 1958 | CD4 | `decltype(auto)` with parenthesized initializer
9.2.9.6 | 2044 | CD4 | `decltype(auto)` and `void`
9.2.9.6 | 2053 | C++20 | `auto` in non-generic lambdas
9.2.9.6 | 2059 | CD5 | Linkage and deduced return types
9.2.9.6 | 2060 | NAD | Deduced return type for explicit specialization
9.2.9.6 | 2081 | CD5 | Deduced return type in redeclaration or specialization of function template
9.2.9.6 | 2389 | open | Agreement of deduced and explicitly-specified variable types
9.2.9.6 | 2412 | open | SFINAE vs undeduced placeholder type
9.2.9.6 | 2447 | C++20 | Unintended description of abbreviated function templates
9.2.9.6.1 | 2453 | NAD | Deduced return types and coroutine lambdas
9.2.9.6.1 | 2476 | drafting | placeholder-type-specifiers and function declarators
9.2.9.6.1 | 2493 | dup | `auto` as a conversion-type-id
9.3 | 736 | NAD | Is the `&` ref-qualifier needed?
9.3 | 770 | CD2 | Ambiguity in late-specified return type
9.3 | 979 | CD2 | Position of attribute-specifier in declarator syntax
9.3 | 1243 | C++11 | Misleading footnote regarding multiple-declarator declarations
9.3 | 1297 | CD3 | Misplaced function attribute-specifier
9.3 | 1342 | drafting | Order of initialization with multiple declarators
9.3 | 1382 | CD3 | Dead code for constructor names
9.3 | 1528 | CD3 | Repeated cv-qualifiers in declarators
9.3 | 2036 | NAD | Refactoring parameters-and-qualifiers
9.3 | 2040 | CD4 | trailing-return-type no longer ambiguous
9.3.2 | 686 | CD1 | Type declarations/definitions in type-specifier-seqs and type-ids
9.3.2 | 1234 | C++11 | abstract-declarator does not permit `...` after ptr-operator
9.3.2 | 1240 | C++11 | `constexpr` defaulted constructors
9.3.2 | 1488 | drafting | abstract-pack-declarators in type-ids
9.3.3 | 160 | CD1 | Missing `std::` qualification
9.3.3 | 333 | NAD | Ambiguous use of "declaration" in disambiguation section
9.3.3 | 340 | NAD | Unclear wording in disambiguation section
9.3.3 | 1867 | NAD | Function/expression ambiguity with qualified parameter name
9.3.3 | 1970 | NAD | Ambiguity resolution for `(T())*x`
9.3.3 | 2175 | CD4 | Ambiguity with attribute in conversion operator declaration
9.3.3 | 2228 | review | Ambiguity resolution for cast to function type
9.3.3 | 2259 | C++17 | Unclear context describing ambiguity
9.3.4 | 40 | TC1 | Syntax of declarator-id
9.3.4 | 159 | TC1 | Namespace qualification in declarators
9.3.4 | 374 | CD2 | Can explicit specialization outside namespace use qualified name?
9.3.4 | 482 | CD3 | Qualified declarators in redeclarations
9.3.4 | 548 | dup | qualified-ids in declarations
9.3.4 | 920 | CD2 | Interaction of inline namespaces and using-declarations
9.3.4 | 1435 | CD3 | template-id as the declarator for a class template constructor
9.3.4 | 1900 | DRWP | Do `friend` declarations count as “previous declarations”?
9.3.4 | 2113 | CD4 | Incompete specification of types for declarators
9.3.4.3 | 453 | drafting | References may only bind to “valid” objects
9.3.4.3 | 504 | open | Should use of a variable in its own initializer require a diagnostic?
9.3.4.3 | 1510 | CD3 | cv-qualified references via `decltype`
9.3.4.5 | 112 | CD1 | Array types and cv-qualifiers
9.3.4.5 | 478 | NAD | May a function parameter be an array of an abstract class type?
9.3.4.5 | 701 | CD2 | When is the array-to-pointer conversion applied?
9.3.4.5 | 1222 | NAD | Unnecessary restriction on `auto` array types
9.3.4.5 | 1640 | CD5 | Array of abstract instance of class template
9.3.4.5 | 1761 | NAD | Runtime check on size of automatic array
9.3.4.5 | 1768 | NAD | Zero-element array of runtime bound
9.3.4.5 | 2099 | CD4 | Inferring the bound of an array static data member
9.3.4.5 | 2397 | DRWP | `auto` specifier for pointers and references to arrays
9.3.4.6 | 18 | NAD | f(TYPE) where TYPE is void should be allowed
9.3.4.6 | 135 | TC1 | Class type in in-class member function definitions
9.3.4.6 | 140 | CD1 | Agreement of parameter declarations
9.3.4.6 | 262 | CD1 | Default arguments and ellipsis
9.3.4.6 | 295 | CD1 | cv-qualifiers on function types
9.3.4.6 | 332 | CD3 | cv-qualified `void` parameter types
9.3.4.6 | 393 | CD4 | Pointer to array of unknown bound in template argument list in parameter
9.3.4.6 | 547 | C++11 | Partial specialization on member function types
9.3.4.6 | 550 | dup | Pointer to array of unknown bound in parameter declarations
9.3.4.6 | 577 | CD3 | `void` in an empty parameter list
9.3.4.6 | 681 | CD1 | Restrictions on declarators with late-specified return types
9.3.4.6 | 713 | CD2 | Unclear note about cv-qualified function types
9.3.4.6 | 725 | concepts | When should the requirement for `std::Returnable<T>`, etc., apply?
9.3.4.6 | 818 | CD2 | Function parameter packs in non-final positions
9.3.4.6 | 956 | CD2 | Function prototype scope with late-specified return types
9.3.4.6 | 994 | C++11 | braced-init-list as a default argument
9.3.4.6 | 998 | dup | Function parameter transformations and template functions
9.3.4.6 | 1001 | drafting | Parameter type adjustment in dependent parameter types
9.3.4.6 | 1069 | C++11 | Incorrect function type with trailing-return-type
9.3.4.6 | 1183 | C++11 | Expansion of parameter packs in declarators
9.3.4.6 | 1380 | CD3 | Type definitions in template-parameter parameter-declarations
9.3.4.6 | 1389 | NAD | Recursive reference in trailing-return-type
9.3.4.6 | 1394 | CD3 | Incomplete types as parameters of deleted functions
9.3.4.6 | 1417 | C++14 | Pointers/references to functions with cv-qualifiers or ref-qualifier
9.3.4.6 | 1668 | drafting | Parameter type determination still not clear enough
9.3.4.6 | 1790 | extension | Ellipsis following function parameter pack
9.3.4.6 | 1824 | CD4 | Completeness of return type vs point of instantiation
9.3.4.7 | 1 | TC1 | What if two using-declarations refer to the same function but the declarations introduce different default-arguments?
9.3.4.7 | 15 | dup | Default arguments for parameters of function templates
9.3.4.7 | 65 | TC1 | Typo in default argument example
9.3.4.7 | 66 | NAD | Visibility of default args vs overloads added after using-declaration
9.3.4.7 | 136 | CD1 | Default arguments and friend declarations
9.3.4.7 | 217 | TC1 | Default arguments for non-template member functions of class templates
9.3.4.7 | 325 | drafting | When are default arguments parsed?
9.3.4.7 | 361 | open | Forward reference to default argument
9.3.4.7 | 777 | CD2 | Default arguments and parameter packs
9.3.4.7 | 1226 | CD3 | Converting a braced-init-list default argument
9.3.4.7 | 1443 | NAD | Default arguments and non-static data members
9.3.4.7 | 1580 | drafting | Default arguments in explicit instantiations
9.3.4.7 | 1609 | open | Default arguments and function parameter packs
9.3.4.7 | 1716 | C++14 | When are default arguments evaluated?
9.3.4.7 | 1814 | CD4 | Default arguments in lambda-expressions
9.3.4.7 | 2082 | CD4 | Referring to parameters in unevaluated operands of default arguments
9.3.4.7 | 2233 | CD5 | Function parameter packs following default arguments
9.3.4.7 | 2346 | CD5 | Local variables in default arguments
9.4 | 5 | CD1 | CV-qualifiers and type conversions
9.4 | 35 | TC1 | Definition of default-initialization
9.4 | 78 | CD1 | Section 8.5 paragraph 9 should state it only applies to non-static objects
9.4 | 151 | TC1 | Terminology of zero-initialization
9.4 | 155 | dup | Brace initializer for scalar
9.4 | 177 | CD1 | Lvalues vs rvalues in copy-initialization
9.4 | 178 | TC1 | More on value-initialization
9.4 | 253 | C++17 | Why must empty or fully-initialized const objects be initialized?
9.4 | 277 | CD1 | Zero-initialization of pointers
9.4 | 302 | CD1 | Value-initialization and generation of default constructor
9.4 | 304 | TC1 | Value-initialization of a reference
9.4 | 508 | C++11 | Non-constructed value-initialized objects
9.4 | 509 | CD1 | Dead code in the specification of default initialization
9.4 | 543 | CD1 | Value initialization and default constructors
9.4 | 611 | CD2 | Zero-initializing references
9.4 | 615 | C++11 | Incorrect description of variables that can be initialized
9.4 | 670 | CD4 | Copy initialization via derived-to-base conversion in the second step
9.4 | 694 | C++11 | Zero- and value-initialization of union objects
9.4 | 869 | CD2 | Uninitialized `thread_local` objects
9.4 | 1093 | CD3 | Value-initializing non-objects
9.4 | 1214 | C++11 | Kinds of initializers
9.4 | 1301 | CD3 | Value initialization of union
9.4 | 1324 | CD3 | Value initialization and defaulted constructors
9.4 | 1339 | NAD | Parenthesized braced-init-list and arrays
9.4 | 1368 | CD3 | Value initialization and defaulted constructors (part 2)
9.4 | 1434 | NAD | Parenthesized braced-init-list
9.4 | 1502 | CD3 | Value initialization of unions with member initializers
9.4 | 1507 | CD3 | Value initialization with trivial inaccessible default constructor
9.4 | 1578 | NAD | Value-initialization of aggregates
9.4 | 1630 | CD4 | Multiple default constructor templates
9.4 | 1633 | CD4 | Copy-initialization in member initialization
9.4 | 1782 | CD4 | Form of initialization for `nullptr_t` to `bool` conversion
9.4 | 1997 | drafting | Placement new and previous initialization
9.4 | 2196 | C++17 | Zero-initialization with virtual base classes
9.4 | 2327 | drafting | Copy elision for direct-initialization with a conversion function
9.4.2 | 163 | TC1 | Description of subaggregate initializer
9.4.2 | 430 | CD1 | Ordering of expression evaluation in initializer list
9.4.2 | 491 | CD1 | Initializers for empty-class aggregrate members
9.4.2 | 632 | CD1 | Brace-enclosed initializer for scalar member of aggregate
9.4.2 | 886 | CD2 | Member initializers and aggregates
9.4.2 | 938 | C++11 | Initializer lists and array new
9.4.2 | 1030 | C++11 | Evaluation order in initializer-lists used in aggregate initialization
9.4.2 | 1070 | C++11 | Missing initializer clauses in aggregate initialization
9.4.2 | 1097 | NAD | Aggregate initialization of function parameters
9.4.2 | 1497 | NAD | Aggregate initialization with parenthesized string literal
9.4.2 | 1561 | extension | Aggregates with empty base classes
9.4.2 | 1622 | C++17 | Empty aggregate initializer for union
9.4.2 | 1815 | CD4 | Lifetime extension in aggregate initialization
9.4.2 | 1985 | NAD | Unknown bound array member with brace-or-equal-initializer
9.4.2 | 2116 | drafting | Direct or copy initialization for omitted aggregate initializers
9.4.2 | 2128 | drafting | Imprecise rule for reference member initializer
9.4.2 | 2149 | drafting | Brace elision and array length deduction
9.4.2 | 2269 | dup | Additional recursive references in aggregate DMIs
9.4.2 | 2272 | C++17 | Implicit initialization of aggregate members of reference type
9.4.2 | 2295 | CD5 | Aggregates with deleted defaulted constructors
9.4.2 | 2359 | CD5 | Unintended copy initialization with designated initializers
9.4.2 | 2408 | open | Temporaries and previously-initialized elements in aggregate initialization
9.4.3 | 737 | CD2 | Uninitialized trailing characters in string initialization
9.4.3 | 936 | CD2 | Array initialization with new string literals
9.4.3 | 1304 | drafting | Omitted array bound with string initialization
9.4.4 | 233 | open | References vs pointers in UDC overload resolution
9.4.4 | 291 | CD1 | Overload resolution needed when binding reference to class rvalue
9.4.4 | 391 | CD1 | Require direct binding of short-lived references to rvalues
9.4.4 | 434 | NAD | Unclear suppression of standard conversions while binding reference to lvalue
9.4.4 | 450 | CD1 | Binding a reference to const to a cv-qualified array rvalue
9.4.4 | 589 | CD2 | Direct binding of class and array rvalues in reference initialization
9.4.4 | 656 | CD2 | Direct binding to the result of a conversion operator
9.4.4 | 664 | CD2 | Direct binding of references to non-class rvalue references
9.4.4 | 896 | CD2 | Rvalue references and rvalue-reference conversion functions
9.4.4 | 1058 | NAD | Reference binding of incompatible array types
9.4.4 | 1138 | C++11 | Rvalue-ness check for rvalue reference binding is wrong
9.4.4 | 1139 | C++11 | Rvalue reference binding to scalar xvalues
9.4.4 | 1236 | C++11 | Inconsistently-interrelated examples
9.4.4 | 1263 | NAD | Mismatch between rvalue reference binding and overload resolution
9.4.4 | 1287 | C++14 | Direct initialization vs “implicit” conversion in reference binding
9.4.4 | 1295 | CD3 | Binding a reference to an rvalue bit-field
9.4.4 | 1328 | CD3 | Conflict in reference binding vs overload resolution
9.4.4 | 1401 | CD3 | Similar types and reference compatibility
9.4.4 | 1414 | drafting | Binding an rvalue reference to a reference-unrelated lvalue
9.4.4 | 1571 | CD4 | cv-qualification for indirect reference binding via conversion function
9.4.4 | 1572 | CD4 | Incorrect example for rvalue reference binding via conversion function
9.4.4 | 1604 | C++14 | Double temporaries in reference initialization
9.4.4 | 1650 | NAD | Class prvalues in reference initialization
9.4.4 | 1827 | drafting | Reference binding with ambiguous conversions
9.4.4 | 2018 | drafting | Qualification conversion vs reference binding
9.4.4 | 2111 | extension | Array temporaries in reference binding
9.4.4 | 2267 | CD5 | Copy-initialization of temporary in reference direct-initialization
9.4.4 | 2352 | CD5 | Similar types and reference binding
9.4.4 | 2481 | DRWP | Cv-qualification of temporary to which a reference is bound
9.4.5 | 703 | CD2 | Narrowing for literals that cannot be exactly represented
9.4.5 | 865 | CD2 | Initializing a `std::initializer_list`
9.4.5 | 934 | CD2 | List-initialization of references
9.4.5 | 982 | NAD | Initialization with an empty initializer list
9.4.5 | 989 | CD2 | Misplaced list-initialization example
9.4.5 | 990 | CD2 | Value initialization with multiple initializer-list constructors
9.4.5 | 1078 | NAD | Narrowing and the usual arithmetic conversions
9.4.5 | 1095 | C++11 | List-initialization of references
9.4.5 | 1232 | C++11 | Creation of array temporaries using a braced-init-list
9.4.5 | 1270 | CD3 | Brace elision in array temporary initialization
9.4.5 | 1288 | CD3 | Reference list initialization
9.4.5 | 1290 | CD3 | Lifetime of the underlying array of an `initializer_list` member
9.4.5 | 1379 | NAD | Is `std::initializer_list` an aggregate?
9.4.5 | 1418 | CD3 | Type of `initializer_list` backing array
9.4.5 | 1419 | NAD | Evaluation order in aggregate initialization
9.4.5 | 1421 | NAD | Full expressions and aggregate initialization
9.4.5 | 1449 | CD3 | Narrowing conversion of negative value to unsigned type
9.4.5 | 1461 | NAD | Narrowing conversions to bit-fields
9.4.5 | 1467 | CD4 | List-initialization of aggregate from same-type object
9.4.5 | 1490 | CD4 | List-initialization from a string literal
9.4.5 | 1494 | CD3 | Temporary initialization for reference binding in list-initialization
9.4.5 | 1501 | NAD | Nested braces in list-initialization
9.4.5 | 1505 | dup | Direct binding of reference to temporary in list-initialization
9.4.5 | 1506 | CD3 | Value category of `initializer_list` object
9.4.5 | 1508 | C++14 | Template initializer-list constructors
9.4.5 | 1518 | CD4 | Explicit default constructors and copy-list-initialization
9.4.5 | 1522 | CD3 | Access checking for `initializer_list` array initialization
9.4.5 | 1565 | NAD | Copy elision and lifetime of `initializer_list` underlying array
9.4.5 | 1599 | CD4 | Lifetime of `initializer_list` underlying array
9.4.5 | 1756 | CD4 | Direct-list-initialization of a non-class object
9.4.5 | 1864 | extension | List-initialization of array objects
9.4.5 | 1984 | NAD | Lossless narrowing conversions
9.4.5 | 1996 | drafting | Reference list-initialization ignores conversion functions
9.4.5 | 2137 | CD4 | List-initialization from object of same type
9.4.5 | 2150 | CD3 | Initializer list array lifetime
9.4.5 | 2168 | open | Narrowing conversions and +/- infinity
9.4.5 | 2251 | C++17 | Unreachable enumeration list-initialization
9.4.5 | 2252 | review | Enumeration list-initialization from the same type
9.4.5 | 2374 | C++20 | Overly permissive specification of `enum` direct-list-initialization
9.5 | 732 | CD2 | Late-specified return types in function definitions
9.5 | 845 | CD2 | What is the “first declaration” of an explicit specialization?
9.5 | 906 | CD2 | Which special member functions can be defaulted?
9.5 | 908 | CD2 | Deleted global allocation and deallocation functions
9.5 | 915 | CD2 | Deleted specializations of member function templates
9.5 | 928 | CD2 | Defaulting a function that would be implicitly defined as deleted
9.5.1 | 1791 | CD4 | Incorrect restrictions on cv-qualifier-seq and ref-qualifier
9.5.1 | 1962 | extension | Type of `__func__`
9.5.1 | 2144 | drafting | Function/variable declaration ambiguity
9.5.1 | 2145 | CD4 | Parenthesized declarator in function definition
9.5.1 | 2362 | extension | `__func__` should be `constexpr`
9.5.2 | 1134 | C++11 | When is an explicitly-defaulted function defined?
9.5.2 | 1135 | C++11 | Explicitly-defaulted non-public special member functions
9.5.2 | 1136 | C++11 | Explicitly-defaulted explicit constructors
9.5.2 | 1137 | C++11 | Explicitly-defaulted virtual special member functions
9.5.2 | 1327 | CD3 | virt-specifier in a defaulted definition
9.5.2 | 1331 | CD5 | `const` mismatch with defaulted copy constructor
9.5.2 | 1333 | CD3 | Omission of `const` in a defaulted copy constructor
9.5.2 | 1355 | CD3 | Aggregates and “user-provided” constructors
9.5.2 | 1426 | CD5 | Allowing additional parameter types in defaulted functions
9.5.2 | 1552 | CD4 | exception-specifications and defaulted special member functions
9.5.2 | 1574 | NAD | Explicitly-defaulted `constexpr` functions in wrapper templates
9.5.2 | 1733 | DR | Return type and value for `operator=` with ref-qualifier
9.5.2 | 1778 | C++14 | exception-specification in explicitly-defaulted functions
9.5.2 | 1846 | CD4 | Declaring explicitly-defaulted implicitly-deleted functions
9.5.2 | 1854 | drafting | Disallowing use of implicitly-deleted functions
9.5.2 | 1912 | extension | exception-specification of defaulted function
9.5.2 | 2221 | review | Copying volatile objects
9.5.3 | 1217 | NAD | Are deleted functions implicitly `noexcept`?
9.5.3 | 2015 | CD4 | odr-use of deleted virtual functions
9.5.4 | 2436 | C++20 | Copy semantics of coroutine parameters
9.5.4 | 2451 | review | promise`.unhandled_exception()` and final suspend point
9.5.4 | 2465 | DRWP | Coroutine parameters passed to a promise constructor
9.6 | 2285 | CD5 | Issues with structured bindings
9.6 | 2308 | NAD | Structured bindings and lambda capture
9.6 | 2312 | DRWP | Structured bindings and `mutable`
9.6 | 2313 | CD5 | Redeclaration of structured binding reference variables
9.6 | 2314 | dup | Structured bindings and lambda capture
9.6 | 2339 | CD5 | Underspecified template arguments in structured bindings
9.6 | 2340 | open | Reference collapsing and structured bindings
9.6 | 2386 | CD5 | tuple_size requirements for structured binding
9.6 | 2506 | ready | Structured bindings and array cv-qualifiers
9.7.1 | 172 | CD1 | Unsigned int as underlying type of enum
9.7.1 | 377 | CD1 | Enum whose enumerators will not fit in any integral type
9.7.1 | 518 | CD1 | Trailing comma following enumerator-list
9.7.1 | 628 | CD2 | The values of an enumeration with no enumerator
9.7.1 | 660 | CD1 | Unnamed scoped enumerations
9.7.1 | 862 | CD2 | Undefined behavior with enumerator value overflow
9.7.1 | 893 | NAD | Brace syntax for enumerator-definitions
9.7.1 | 977 | CD3 | When is an enumeration type complete?
9.7.1 | 1022 | C++11 | Can an enumeration variable have values outside the values of the enumeration?
9.7.1 | 1317 | NAD | Unnamed scoped enumerations
9.7.1 | 1485 | drafting | Out-of-class definition of member unscoped opaque enumeration
9.7.1 | 1618 | C++14 | Gratuitously-unsigned underlying enum type
9.7.1 | 1636 | CD5 | Bits required for negative enumerator values
9.7.1 | 1638 | CD4 | Declaring an explicit specialization of a scoped enumeration
9.7.1 | 1765 | C++14 | Overflow of enumeration used as enumerator value
9.7.1 | 1766 | CD4 | Values outside the range of the values of an enumeration
9.7.1 | 1917 | NAD | decltype-qualified enumeration names
9.7.1 | 1966 | CD4 | Colon following enumeration elaborated-type-specifier
9.7.1 | 2131 | drafting | Ambiguity with opaque-enum-declaration
9.7.1 | 2156 | CD4 | Definition of enumeration declared by using-declaration
9.8 | 171 | TC1 | Global namespace scope
9.8 | 987 | CD4 | Which declarations introduce namespace members?
9.8.2 | 311 | NAD | Using qualified name to reopen nested namespace
9.8.2 | 540 | CD1 | Propagation of cv-qualifiers in reference-to-reference collapse
9.8.2 | 812 | CD2 | Duplicate names in inline namespaces
9.8.2 | 919 | CD2 | Contradictions regarding inline namespaces
9.8.2 | 921 | CD2 | Unclear specification of inline namespaces
9.8.2 | 1657 | CD4 | Attributes for namespaces and enumerators
9.8.2 | 1795 | CD4 | Disambiguating original-namespace-definition and extension-namespace-definition
9.8.2 | 2061 | CD4 | Inline namespace after simplifications
9.8.2.2 | 926 | CD2 | Inline unnamed namespaces
9.8.2.2 | 1012 | C++11 | Undeprecating `static`
9.8.2.2 | 2505 | drafting | Nested unnamed namespace of inline unnamed namespace
9.8.3 | 1976 | NAD | Ambiguity of namespace-aliases
9.8.4 | 103 | TC1 | Is it extended-namespace-definition or extension-namespace-definition ?
9.8.4 | 986 | CD2 | Transitivity of using-directives versus qualified lookup
9.9 | 11 | CD1 | How do the keywords typename/template interact with using-declarations?
9.9 | 36 | DRWP | using-declarations in multiple-declaration contexts
9.9 | 101 | TC1 | Redeclaration of extern "C" names via using-declarations
9.9 | 109 | NAD | Allowing `::template` in using-declarations
9.9 | 169 | NAD | template-ids in using-declarations
9.9 | 258 | CD1 | using-declarations and cv-qualifiers
9.9 | 386 | DRWP | Friend declaration of name brought in by using-declaration
9.9 | 460 | CD1 | Can a using-declaration name a namespace?
9.9 | 565 | CD3 | Conflict rules for using-declarations naming function templates
9.9 | 813 | open | `typename` in a using-declaration with a non-dependent name
9.9 | 852 | DRWP | using-declarations and dependent base classes
9.9 | 1551 | C++14 | Wording problems in using-declaration specification
9.9 | 1742 | open | using-declarations and scoped enumerators
9.9 | 1887 | CD4 | Problems with `::` as nested-name-specifier
9.9 | 1903 | CD4 | What declarations are introduced by a non-member using-declaration?
9.9 | 1907 | DRWP | using-declarations and default arguments
9.9 | 1960 | NAD | Visibility of entity named in class-scope using-declaration
9.10 | 461 | NAD | Make `asm` conditionally-supported
9.10 | 2262 | C++17 | Attributes for asm-definition
9.11 | 4 | CD1 | Does extern "C" affect the linkage of function names with internal linkage?
9.11 | 13 | NAD | extern "C" for Parameters of Function Templates
9.11 | 14 | NAD | extern "C" functions and declarations in different namespaces
9.11 | 29 | CD1 | Linkage of locally declared functions
9.11 | 107 | NAD | Linkage of operator functions
9.11 | 168 | NAD | C linkage for static member functions
9.11 | 341 | C++11 | `extern "C"` namespace member function versus global variable
9.11 | 358 | NAD | Namespaces and extern "C"
9.11 | 563 | DRWP | Linkage specification for objects
9.11 | 564 | CD2 | Agreement of language linkage or linkage-specifications?
9.11 | 1185 | C++11 | Misleading description of language linkage and member function types
9.11 | 1703 | NAD | Language linkage of names of functions with internal linkage
9.11 | 1708 | CD4 | overly-strict requirements for names with C language linkage
9.11 | 1713 | dup | Linkage of variable template specializations
9.11 | 1817 | drafting | Linkage specifications and nested scopes
9.11 | 1818 | DRWP | Visibility and inherited language linkage
9.11 | 1869 | NAD | `thread_local` vs linkage-specifications
9.11 | 2460 | DRWP | C language linkage and constrained non-template friends
9.11 | 2483 | open | Language linkage of static member functions
9.12 | 814 | CD2 | Attribute to indicate that a function throws nothing
9.12 | 951 | CD2 | Problems with attribute-specifiers
9.12 | 970 | CD2 | Consistent use of “appertain” and “apply”
9.12 | 1914 | extension | Duplicate standard attributes
9.12.1 | 815 | CD2 | Parameter pack expansion inside attributes
9.12.1 | 957 | CD2 | Alternative tokens and attribute-tokens
9.12.1 | 968 | CD2 | Syntactic ambiguity of the attribute notation
9.12.1 | 972 | C++11 | Allowing multiple attribute-specifiers
9.12.1 | 1031 | C++11 | Optional elements in attributes
9.12.1 | 1323 | NAD | Nonexistent nonterminal in alignment-specifier grammar
9.12.1 | 1689 | C++14 | Syntactic nonterminal for operand of `alignas`
9.12.1 | 1706 | drafting | `alignas` pack expansion syntax
9.12.1 | 2079 | CD4 | `[[` appearing in a balanced-token-seq
9.12.1 | 2205 | C++17 | Restrictions on use of `alignas`
9.12.1 | 2279 | NAD | Multiple attribute-specifiers in one attribute-list
9.12.1 | 2388 | NAD | Applicability of contract-attribute-specifiers
9.12.2 | 959 | CD2 | Alignment attribute for class and enumeration types
9.12.2 | 1033 | C++11 | Restrictions on alignment attributes
9.12.2 | 1036 | C++11 | Alignment attribute in an exception-declaration
9.12.2 | 1039 | dup | Coordinating C and C++ alignment specifications
9.12.2 | 1615 | CD4 | Alignment of types, variables, and members
9.12.2 | 1617 | open | `alignas` and non-defining declarations
9.12.2 | 1627 | NAD | Agreement of dependent `alignas` specifiers
9.12.2 | 2027 | CD4 | Unclear requirements for multiple `alignas` specifiers
9.12.2 | 2223 | drafting | Multiple `alignas` specifiers
9.12.3 | 965 | CD2 | Limiting the applicability of the `carries_dependency` attribute
9.12.3 | 1475 | CD3 | Errors in `[[carries_dependency]]` example
9.12.5 | 2406 | CD5 | `[[fallthrough]]` attribute and iteration statements
9.12.7 | 2360 | CD5 | `[[maybe_unused]]` and structured bindings
9.12.9 | 836 | NAD | `[[noreturn]]` applied to function types
9.12.9 | 1132 | NAD | Keyword vs attribute for `noreturn`
10.2 | 2443 | drafting | Meaningless template exports
10.2 | 2491 | DR | Export of typedef after its first declaration
11.2 | 2463 | open | Trivial copyability and unions with non-trivial members
11.3 | 417 | CD1 | Using derived-class qualified name in out-of-class nested class definition
11.3 | 1496 | CD4 | Triviality with deleted and missing default constructors
11.4 | 75 | TC1 | In-class initialized members must be const
11.4 | 80 | TC1 | Class members with same name as class
11.4 | 190 | TC1 | Layout-compatible POD-struct types
11.4 | 328 | CD1 | Missing requirement that class member types be complete
11.4 | 437 | CD1 | Is type of class allowed in member function exception specification?
11.4 | 613 | CD1 | Unevaluated uses of non-static class members
11.4 | 620 | CD1 | Declaration order in layout-compatible POD structs
11.4 | 645 | CD2 | Are bit-field and non-bit-field members layout compatible?
11.4 | 844 | concepts | Is a constrained member function a template?
11.4 | 874 | CD2 | Class-scope definitions of enumeration types
11.4 | 924 | C++11 | alias-declaration as a class member
11.4 | 1035 | C++11 | Omitted and required decl-specifiers
11.4 | 1041 | dup | alias-declarations as class members
11.4 | 1072 | C++11 | Scoped enumerator with the same name as its containing class
11.4 | 1141 | NAD | Non-static data member initializers have not been implemented
11.4 | 1308 | CD3 | Completeness of class type within an exception-specification
11.4 | 1341 | NAD | Bit-field initializers
11.4 | 1357 | CD3 | brace-or-equal-initializers for function and typedef members
11.4 | 1397 | CD4 | Class completeness in non-static data member initializers
11.4 | 1425 | CD3 | Base-class subobjects of standard-layout structs
11.4 | 1660 | C++14 | member-declaration requirements and unnamed bit-fields
11.4 | 1672 | CD4 | Layout compatibility with multiple empty bases
11.4 | 1693 | C++14 | Superfluous semicolons in class definitions
11.4 | 1719 | CD4 | Layout compatibility and cv-qualification revisited
11.4 | 1803 | CD5 | opaque-enum-declaration as member-declaration
11.4 | 1821 | DRWP | Qualified redeclarations in a class member-specification
11.4 | 1890 | drafting | Member type depending on definition of member function
11.4 | 1909 | CD4 | Member class template with the same name as the class
11.4 | 1983 | CD5 | Inappropriate use of virt-specifier
11.4 | 2153 | CD4 | pure-specifier in friend declaration
11.4 | 2154 | CD4 | Ambiguity of pure-specifier
11.4 | 2208 | NAD | static_assert-declaration does not declare a member
11.4 | 2254 | CD5 | Standard-layout classes and bit-fields
11.4 | 2404 | CD5 | `[[no_unique_address]]` and allocation order
11.4 | 2430 | C++20 | Completeness of return and parameter types of member functions
11.4.1 | 2510 | open | noexcept-specifier of friend function vs class completeness
11.4.2 | 1142 | C++11 | `friend` declaration of member function of containing class
11.4.3 | 1005 | NAD | Qualified name resolution in member functions of class templates
11.4.3 | 1017 | C++11 | Member access transformation in unevaluated operands
11.4.3 | 1143 | NAD | Move semantics for `*this` have not been implemented
11.4.3 | 1207 | C++11 | Type of class member in trailing-return-type
11.4.3 | 1208 | C++11 | Explicit `noexcept` in defaulted definition
11.4.4 | 819 | NAD | Access control and deleted implicitly-declared special member functions
11.4.5 | 194 | TC1 | Identifying constructors
11.4.5 | 263 | CD1 | Can a constructor be declared a friend?
11.4.5 | 326 | CD1 | Wording for definition of trivial constructor
11.4.5 | 331 | CD1 | Allowed copy constructor signatures
11.4.5 | 738 | C++11 | `constexpr` not permitted by the syntax of constructor declarations
11.4.5 | 922 | CD2 | Implicit default constructor definitions and `const` variant members
11.4.5 | 927 | CD2 | Implicitly-deleted default constructors and member initializers
11.4.5 | 1145 | C++11 | Defaulting and triviality
11.4.5 | 1191 | C++11 | Deleted subobject destructors and implicitly-defined constructors
11.4.5 | 1353 | drafting | Array and variant members and deleted special member functions
11.4.5 | 1360 | drafting | `constexpr` defaulted default constructors
11.4.5 | 1427 | NAD | Default constructor and deleted or inaccessible destructors
11.4.5 | 1611 | C++14 | Deleted default constructor for abstract class
11.4.5 | 1623 | drafting | Deleted default union constructor and member initializers
11.4.5 | 1658 | C++14 | Deleted default constructor for abstract class via destructor
11.4.5 | 1808 | drafting | Constructor templates vs default constructors
11.4.5 | 1888 | CD4 | Implicitly-declared default constructors and `explicit`
11.4.5 | 2084 | CD4 | NSDMIs and deleted union default constructors
11.4.5 | 2237 | CD5 | Can a template-id name a constructor?
11.4.5 | 2271 | C++17 | Aliasing `this`
11.4.5 | 2273 | CD5 | Inheriting constructors vs implicit default constructor
11.4.5.2 | 2394 | CD5 | Const-default-constructible for members
11.4.5.3 | 2477 | DRWP | Defaulted vs deleted copy constructors/assignment operators
11.4.6 | 2329 | drafting | Virtual base classes and generated assignment operators
11.4.6 | 2415 | NAD | using-declarations vs copy assignment operators
11.4.7 | 193 | TC1 | Order of destruction of local automatics of destructor
11.4.7 | 244 | CD1 | Destructor lookup
11.4.7 | 252 | CD1 | Looking up deallocation functions in virtual destructors
11.4.7 | 272 | CD1 | Explicit destructor invocation and qualified-ids
11.4.7 | 344 | CD3 | Naming destructors
11.4.7 | 399 | DRWP | Destructor lookup redux
11.4.7 | 677 | CD1 | Deleted `operator delete` and virtual destructors
11.4.7 | 1029 | C++11 | Type of a destructor call
11.4.7 | 1081 | C++11 | Defaulted destructor and unusable operator delete
11.4.7 | 1146 | C++11 | exception-specifications of defaulted functions
11.4.7 | 1147 | C++11 | Destructors should be default `nothrow`
11.4.7 | 1241 | C++11 | Which members does a destructor destroy?
11.4.7 | 1492 | CD4 | Exception specifications on template destructors
11.4.7 | 1586 | NAD | Naming a destructor via `decltype`
11.4.7 | 1605 | CD3 | Misleading parenthetical comment for explicit destructor call
11.4.7 | 1783 | NAD | Why are virtual destructors non-trivial?
11.4.7 | 1811 | CD4 | Lookup of deallocation function in a virtual destructor definition
11.4.7 | 1848 | CD4 | Parenthesized constructor and destructor declarators
11.4.7 | 1969 | open | Missing exclusion of `~S` as an ordinary function name
11.4.7 | 1977 | drafting | Contradictory results of failed destructor lookup
11.4.7 | 2068 | CD4 | When can/must a defaulted virtual destructor be defined?
11.4.7 | 2069 | CD4 | Do destructors have names?
11.4.7 | 2158 | drafting | Polymorphic behavior during destruction
11.4.8.2 | 152 | TC1 | `explicit` copy constructors
11.4.8.2 | 1336 | CD3 | Definition of “converting constructor”
11.4.8.2 | 1978 | CD4 | Redundant description of explicit constructor use
11.4.8.3 | 296 | CD1 | Can conversion functions be static?
11.4.8.3 | 395 | NAD | Conversion operator template syntax
11.4.8.3 | 875 | concepts | Associated conversion functions converting to the same type
11.4.8.3 | 1726 | ready | Declarator operators and conversion function
11.4.8.3 | 2016 | CD4 | Confusing wording in description of conversion function
11.4.8.3 | 2513 | open | Ambiguity with requires-clause and operator-function-id
11.4.9 | 67 | TC1 | Evaluation of left side of object-expression
11.4.9.2 | 315 | NAD | Is call of static member function through null pointer undefined?
11.4.9.3 | 48 | TC1 | Definitions of unused static members
11.4.9.3 | 406 | CD1 | Static data member in class with name for linkage purposes
11.4.9.3 | 454 | CD1 | When is a definition of a static data member required?
11.4.9.3 | 714 | CD2 | Static const data members and braced-init-lists
11.4.9.3 | 902 | NAD | In-class initialization of non-constant static data members
11.4.9.3 | 1101 | C++11 | Non-integral initialized static data members
11.4.9.3 | 1203 | dup | Misleading note regarding initialized static data members
11.4.9.3 | 1272 | NAD | Implicit definition of static data member of const literal type
11.4.9.3 | 1283 | drafting | Static data members of classes with typedef name for linkage purposes
11.4.9.3 | 1721 | drafting | Diagnosing ODR violations for static data members
11.4.9.3 | 1987 | NAD | `constexpr` static data members across translation units
11.4.9.3 | 2335 | drafting | Deduced return types vs member types
11.4.9.3 | 2375 | NAD | Multiple redeclarations of `constexpr` static data members
11.4.10 | 58 | CD1 | Signedness of bit fields of enum type
11.4.10 | 436 | CD1 | Problem in example in 9.6 paragraph 4
11.4.10 | 675 | CD3 | Signedness of bit-field with typedef or template parameter type
11.4.10 | 739 | CD3 | Signedness of plain bit-fields
11.4.10 | 741 | C++11 | “plain” `long long` bit-fields
11.4.10 | 1514 | C++14 | Ambiguity between enumeration definition and zero-length bit-field
11.4.10 | 1861 | CD4 | Values of a bit-field
11.4.10 | 1943 | CD5 | Unspecified meaning of “bit”
11.4.10 | 2229 | CD5 | Volatile unnamed bit-fields
11.4.10 | 2253 | CD5 | Unnamed bit-fields and zero-initialization
11.4.10 | 2511 | ready | cv-qualified bit-fields
11.4.11 | 347 | NAD | Use of derived class name in defining base class nested class
11.5 | 57 | open | Empty unions
11.5 | 359 | NAD | Type definition in anonymous union
11.5 | 512 | NAD | Union members with user-declared non-default constructors
11.5 | 716 | CD2 | Specifications that should apply only to non-static union data members
11.5 | 1375 | CD3 | Reference to anonymous union?
11.5 | 1404 | drafting | Object reallocation in unions
11.5 | 1460 | C++14 | What is an empty union?
11.5 | 1702 | drafting | Rephrasing the definition of “anonymous union”
11.5 | 1801 | CD4 | Kind of expression referring to member of anonymous union
11.5 | 1860 | C++17 | What is a “direct member?”
11.5 | 1940 | CD4 | `static_assert` in anonymous unions
11.5 | 2080 | CD5 | Example with empty anonymous union member
11.6 | 198 | CD1 | Definition of "use" in local and nested classes
11.6 | 696 | C++11 | Use of block-scope constants in local classes
11.6 | 1714 | NAD | odr-use of `this` from a local class
11.7 | 484 | CD1 | Can a base-specifier name a cv-qualified class type?
11.7 | 1019 | dup | Dependent simple-template-ids in base-specifiers and mem-initializers
11.7 | 1710 | C++17 | Missing `template` keyword in class-or-decltype
11.7.3 | 608 | CD2 | Determining the final overrider of a virtual function
11.7.3 | 939 | CD2 | Explicitly checking virtual function overriding
11.7.3 | 960 | CD2 | Covariant functions and lvalue/rvalue references
11.7.3 | 1250 | CD3 | Cv-qualification of incomplete virtual function return types
11.7.3 | 2119 | NAD | Disambiguation of multi-level covariant return type
11.7.3 | 2496 | DR | ref-qualifiers and virtual overriding
11.7.4 | 230 | NAD | Calls to pure virtual functions
11.7.4 | 390 | CD1 | Pure virtual must be defined when implicitly called
11.7.4 | 1420 | NAD | Abstract final classes
11.8 | 8 | CD1 | Access to template arguments used in a function return type and in the nested name specifier
11.8 | 494 | CD1 | Problems with the resolution of issue 45
11.8 | 580 | C++11 | Access in template-parameters of member and friend definitions
11.8 | 600 | DRWP | Does access control apply to members or to names?
11.8.3 | 7 | NAD | Can a class with a private virtual base class be derived from?
11.8.3 | 9 | CD1 | Clarification of access to base class members
11.8.3 | 16 | CD1 | Access to members of indirect private base classes
11.8.3 | 17 | NAD | Footnote 99 should discuss the naming class when describing members that can be accessed from friends
11.8.3 | 142 | TC1 | Injection-related errors in access example
11.8.3 | 207 | CD1 | using-declarations and protected access
11.8.3 | 360 | DRWP | Using-declaration that reduces access
11.8.3 | 471 | NAD | Conflicting inherited access specifications
11.8.3 | 747 | dup | Access of protected base classes
11.8.3 | 952 | DRWP | Insufficient description of “naming class”
11.8.3 | 1873 | CD4 | Protected member access from derived class friends
11.8.3 | 2030 | NAD | Access of injected-class-name with template arguments
11.8.3 | 2246 | drafting | Access of indirect virtual base class constructors
11.8.4 | 77 | CD1 | The definition of friend does not allow nested classes to be friends
11.8.4 | 209 | NAD | Must friend declaration names be accessible?
11.8.4 | 445 | NAD | Wording issue on friend declarations
11.8.4 | 500 | CD1 | Access in base-specifiers of friend and nested classes
11.8.4 | 501 | NAD | Visibility of friend declarations within the befriending class
11.8.4 | 585 | NAD | Friend template template parameters
11.8.4 | 718 | open | Non-class, non-function friend declarations
11.8.4 | 1699 | extension | Does befriending a class befriend its friends?
11.8.4 | 1833 | NAD | `friend` declarations naming implicitly-declared member functions
11.8.4 | 2363 | NAD | Opaque enumeration friend declarations
11.8.5 | 19 | NAD | Clarify protected member access
11.8.5 | 161 | TC1 | Access to protected nested type
11.8.5 | 385 | CD1 | How does protected member check of 11.5 interact with using-declarations?
11.8.5 | 472 | drafting | Casting across protected inheritance
11.8.5 | 1007 | NAD | Protected access and pointers to members
11.8.5 | 1883 | drafting | Protected access to constructors in mem-initializers
11.8.5 | 2187 | drafting | Protected members and access via qualified-id
11.8.5 | 2244 | open | Base class access in aggregate initialization
11.8.8 | 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?
11.8.8 | 45 | CD1 | Access to nested classes
11.9 | 510 | CD1 | Default initialization of POD classes?
11.9 | 542 | CD2 | Value initialization of arrays of POD-structs
11.9.2 | 363 | NAD | Initialization of class from self
11.9.3 | 235 | TC1 | Assignment vs initialization
11.9.3 | 257 | CD2 | Abstract base constructors and virtual base initialization
11.9.3 | 607 | DRWP | Lookup of mem-initializer-ids
11.9.3 | 655 | C++11 | Initialization not specified for forwarding constructors
11.9.3 | 838 | C++11 | Use of `this` in a brace-or-equal-initializer
11.9.3 | 888 | CD2 | Union member initializers
11.9.3 | 1242 | C++11 | Initializing variant class members
11.9.3 | 1345 | CD3 | Initialization of anonymous union class members
11.9.3 | 1562 | C++14 | Non-static data member initializers and union ctor-initializer
11.9.3 | 1621 | C++20 | Member initializers in anonymous unions
11.9.3 | 1641 | NAD | Assignment in member initializer
11.9.3 | 1649 | C++14 | Error in the syntax of mem-initializer-list
11.9.3 | 1752 | CD4 | Right-recursion in mem-initializer-list
11.9.3 | 1915 | extension | Potentially-invoked destructors in non-throwing constructors
11.9.3 | 2056 | drafting | Member function calls in partially-initialized class objects
11.9.3 | 2135 | NAD | mem-initializers for virtual bases of abstract classes
11.9.3 | 2204 | NAD | Naming delegated constructors
11.9.3 | 2227 | CD5 | Destructor access and default member initializers
11.9.3 | 2317 | CD5 | Self-referential default member initializers
11.9.3 | 2403 | open | Temporary materialization and base/member initialization
11.9.4 | 2504 | open | Inheriting constructors from virtual base classes
11.9.5 | 307 | NAD | Initialization of a virtual base class subobject
11.9.5 | 710 | CD2 | Data races during construction
11.9.5 | 1202 | C++11 | Calling virtual functions during destruction
11.9.5 | 1517 | drafting | Unclear/missing description of behavior during construction/destruction
11.9.5 | 1855 | dup | Out-of-lifetime access to nonstatic data members
11.10.1 | 2414 | C++20 | Unclear results if both member and friend `operator<=>` are declared
11.10.3 | 2432 | C++20 | Return types for defaulted `<=>`
11.10.3 | 2437 | C++20 | Conversion of `std::strong_ordering` in a defaulted `operator<=>`
11.11 | 255 | DRWP | Placement deallocation functions and lookup ambiguity
12.2 | 999 | CD2 | “Implicit” or “implied” object argument/parameter?
12.2.2 | 2290 | CD5 | Unclear specification for overload resolution and deleted special member functions
12.2.2 | 2356 | CD5 | Base class copy and move constructors should not be inherited
12.2.2.2 | 162 | CD1 | (`&C::f)()` with nonstatic members
12.2.2.2 | 704 | CD2 | To which postfix-expressions does overload resolution apply?
12.2.2.2.2 | 239 | CD1 | Footnote 116 and Koenig lookup
12.2.2.2.2 | 364 | CD1 | Calling overloaded function with static in set, with no object
12.2.2.2.2 | 1278 | drafting | Incorrect treatment of contrived object
12.2.2.2.3 | 280 | CD1 | Access and surrogate call functions
12.2.2.2.3 | 2189 | open | Surrogate call template
12.2.2.3 | 102 | NAD | Operator lookup rules do not work well with parts of the library
12.2.2.3 | 416 | CD1 | Class must be complete to allow operator lookup?
12.2.2.3 | 423 | NAD | Can a conversion be done on the left operand of a compound assignment?
12.2.2.3 | 545 | open | User-defined conversions and built-in operator overload resolution
12.2.2.3 | 1385 | CD3 | Syntactic forms of conversion functions for surrogate call functions
12.2.2.3 | 1608 | C++14 | Operator lookup in trailing return type
12.2.2.3 | 1687 | C++14 | Conversions of operands of built-in operators
12.2.2.3 | 1919 | open | Overload resolution for `!` with explicit conversion operator
12.2.2.3 | 2007 | DRWP | Argument-dependent lookup for `operator=`
12.2.2.3 | 2089 | drafting | Restricting selection of builtin overloaded operators
12.2.2.4 | 604 | CD2 | Argument list for overload resolution in copy-initialization
12.2.2.5 | 59 | TC1 | Clarification of overloading and UDC to reference type
12.2.2.5 | 899 | CD2 | Explicit conversion functions in direct class initialization
12.2.2.5 | 1087 | C++11 | Additional applications of issue 899
12.2.2.5 | 1556 | CD3 | Constructors and explicit conversion functions in direct initialization
12.2.2.5 | 1750 | CD4 | “Argument” vs “parameter”
12.2.2.6 | 1781 | CD5 | Converting from `nullptr_t` to `bool` in overload resolution
12.2.2.7 | 1373 | dup | Overload resolution changes matching reference-binding changes
12.2.2.7 | 1392 | CD3 | Explicit conversion functions for references and non-references
12.2.2.7 | 2028 | drafting | Converting constructors in rvalue reference initialization
12.2.2.7 | 2108 | drafting | Conversions to non-class prvalues in reference initialization
12.2.2.8 | 1151 | C++11 | Overload resolution with initializer-list and non-list constructors
12.2.2.8 | 1228 | NAD | Copy-list-initialization and `explicit` constructors
12.2.2.8 | 1229 | C++11 | Overload resolution with empty braced-init-list argument
12.2.2.8 | 1758 | CD4 | Explicit conversion in copy/move list initialization
12.2.2.8 | 2194 | review | Impossible case in list initialization
12.2.2.8 | 2311 | open | Missed case for guaranteed copy elision
12.2.2.9 | 2376 | CD5 | Class template argument deduction with array declarator
12.2.2.9 | 2425 | open | Confusing wording for deduction from a type
12.2.2.9 | 2467 | open | CTAD for alias templates and the deducible check
12.2.2.9 | 2471 | drafting | Nested class template argument deduction
12.2.3 | 641 | CD2 | Overload resolution and conversion-to-same-type operators
12.2.3 | 877 | CD2 | Viable functions and binding references to rvalues
12.2.3 | 1152 | C++11 | Rules for determining existence of implicit conversion sequence
12.2.3 | 2377 | NAD | Explicit copy constructor vs function viability
12.2.3 | 2442 | C++20 | Incorrect requirement for default arguments
12.2.4 | 51 | TC1 | Overloading and user-defined conversions
12.2.4 | 418 | DRWP | Imperfect wording on error on multiple default arguments on a called function
12.2.4 | 455 | drafting | Partial ordering and non-deduced arguments
12.2.4 | 495 | CD2 | Overload resolution with template and non-template conversion functions
12.2.4.2 | 84 | TC1 | Overloading and conversion loophole used by `auto_ptr`
12.2.4.2 | 978 | CD2 | Incorrect specification for copy initialization
12.2.4.2 | 1673 | C++14 | Clarifying overload resolution for the second step of copy-initialization
12.2.4.2 | 1902 | CD4 | What makes a conversion “otherwise ill-formed”?
12.2.4.2 | 2076 | CD4 | List-initialization of arguments for constructor parameters
12.2.4.2 | 2291 | dup | Implicit conversion sequences in non-call contexts
12.2.4.2 | 2304 | NAD | Incomplete type vs overload resolution
12.2.4.2 | 2319 | drafting | Nested brace initialization from same type
12.2.4.2.3 | 243 | NAD | Weighting of conversion functions in direct-initialization
12.2.4.2.5 | 60 | CD1 | Reference binding and valid conversion sequences
12.2.4.2.5 | 953 | CD2 | Rvalue references and function viability
12.2.4.2.5 | 1205 | dup | Lvalue reference binding and function viability
12.2.4.2.5 | 2077 | drafting | Overload resolution and invalid rvalue-reference initialization
12.2.4.2.6 | 1307 | C++14 | Overload resolution based on size of array initializer-list
12.2.4.2.6 | 1409 | CD3 | What is the second standard conversion sequence of a list-initialization sequence?
12.2.4.2.6 | 1536 | drafting | Overload resolution with temporary from initializer list
12.2.4.2.6 | 1543 | CD3 | Implicit conversion sequence for empty initializer list
12.2.4.2.6 | 1631 | CD4 | Incorrect overload resolution for single-element initializer-list
12.2.4.2.6 | 2075 | CD4 | Passing short initializer lists to array reference parameters
12.2.4.2.6 | 2169 | extension | Narrowing conversions and overload resolution
12.2.4.2.6 | 2492 | drafting | Comparing user-defined conversion sequences in list-initialization
12.2.4.3 | 83 | TC1 | Overloading and deprecated conversion of string literal
12.2.4.3 | 153 | TC1 | Misleading wording (rank of conversion)
12.2.4.3 | 702 | CD2 | Preferring conversion to `std::initializer_list`
12.2.4.3 | 961 | CD2 | Overload resolution and conversion of `std::nullptr_t` to `bool`
12.2.4.3 | 1079 | C++11 | Overload resolution involving aggregate initialization
12.2.4.3 | 1238 | C++11 | Overloading ambiguity binding reference to function
12.2.4.3 | 1298 | CD3 | Incorrect example in overload resolution
12.2.4.3 | 1374 | CD3 | Qualification conversion vs difference in reference binding
12.2.4.3 | 1408 | CD3 | What is “the same aggregate initialization?”
12.2.4.3 | 1410 | CD3 | Reference overload tiebreakers should apply to rvalue references
12.2.4.3 | 1459 | open | Reference-binding tiebreakers in overload resolution
12.2.4.3 | 1589 | CD4 | Ambiguous ranking of list-initialization sequences
12.2.4.3 | 1789 | review | Array reference vs array decay in overload resolution
12.2.4.3 | 1950 | NAD | Restructuring description of ranks of conversion sequences
12.2.4.3 | 2110 | drafting | Overload resolution for base class conversion and reference/non-reference
12.2.4.3 | 2277 | CD5 | Ambiguity inheriting constructors with default arguments
12.2.4.3 | 2337 | open | Incorrect implication of logic ladder for conversion sequence tiebreakers
12.3 | 61 | NAD | Address of static member function "`&p->f`"
12.3 | 115 | CD1 | Address of template-id
12.3 | 202 | TC1 | Use of overloaded function name
12.3 | 247 | NAD | Pointer-to-member casts and function overload resolution
12.3 | 250 | TC1 | Address of function template specialization with non-deduced template arguments
12.3 | 1038 | open | Overload resolution of `&x.static_func`
12.3 | 1153 | C++11 | Type matching in address of overloaded function
12.3 | 1563 | CD3 | List-initialization and overloaded function disambiguation
12.4 | 1989 | drafting | Insufficient restrictions on parameters of postfix operators
12.4 | 2052 | CD4 | Template argument deduction vs overloaded operators
12.4.1 | 2507 | review | Default arguments for `operator[]`
12.4.3 | 1549 | open | Overloaded comma operator with `void` operand
12.4.3.2 | 221 | CD1 | Must compound assignment operators be member functions?
12.4.6 | 420 | CD1 | postfixexpression->scalar_type_dtor() inconsistent
12.4.7 | 1481 | CD3 | Increment/decrement operators with reference parameters
12.5 | 27 | NAD | Overload ambiguities for builtin ?: prototypes
12.5 | 260 | open | User-defined conversions and built-in `operator=`
12.5 | 425 | CD1 | Set of candidates for overloaded built-in operator with float operand
12.5 | 507 | dup | Ambiguity assigning class object to built-in type
12.5 | 749 | CD2 | References to function types with a cv-qualifier or ref-qualifier
12.5 | 878 | concepts | Effective class types in built-in pointer-to-member operator
12.5 | 879 | CD2 | Missing built-in comparison operators for pointer types
12.5 | 880 | CD2 | Built-in conditional operator for scoped enumerations
12.5 | 954 | open | Overload resolution of conversion operator templates with built-in types
12.6 | 935 | CD2 | Missing overloads for character types for user-defined literals
12.6 | 1473 | CD3 | Syntax of literal-operator-id
12.6 | 1479 | CD3 | Literal operators and default arguments
12.6 | 1620 | open | User-defined literals and extended integer types
12.6 | 1762 | C++14 | Reserved identifier used in literal-operator-id example
13.2 | 21 | TC1 | Can a default argument for a template parameter appear in a friend declaration?
13.2 | 49 | TC1 | Restriction on non-type, non-value template arguments
13.2 | 184 | CD1 | Default arguments in template template-parameters
13.2 | 187 | TC1 | Scope of template parameter names
13.2 | 215 | CD1 | Template parameters are not allowed in nested-name-specifiers
13.2 | 226 | CD1 | Default template arguments for function templates
13.2 | 401 | CD1 | When is access for template parameter default arguments checked?
13.2 | 691 | C++11 | Template parameter packs in class template partial specializations
13.2 | 778 | C++11 | Template parameter packs in non-type template parameters
13.2 | 840 | CD2 | Rvalue references as nontype template parameters
13.2 | 881 | concepts | Inconsistent requirement for naming template parameters
13.2 | 1006 | C++11 | `std::nullptr_t` as a non-type template parameter
13.2 | 1068 | C++11 | Template aliases with default arguments and template parameter packs
13.2 | 1179 | NAD | Cv-qualification of non-type template parameters
13.2 | 1246 | C++11 | Non-deduced non-final parameter packs
13.2 | 1275 | CD3 | Incorrect comment in example of template parameter pack restriction
13.2 | 1319 | NAD | Error in pack expansion example
13.2 | 1444 | drafting | Type adjustments of non-type template parameters
13.2 | 1635 | drafting | How similar are template default arguments to function default arguments?
13.2 | 1643 | extension | Default arguments for template parameter packs
13.2 | 1874 | CD4 | Type vs non-type template parameters with `class` keyword
13.2 | 1904 | NAD | Default template arguments for members of class templates
13.2 | 2032 | CD4 | Default template-arguments of variable templates
13.2 | 2178 | NAD | Substitution of dependent template arguments in default template arguments
13.2 | 2343 | C++20 | `void*` non-type template parameters
13.2 | 2383 | NAD | Variadic member functions of variadic class templates
13.2 | 2395 | open | Parameters following a pack expansion
13.3 | 30 | TC1 | Valid uses of "`::template`"
13.3 | 38 | TC1 | Explicit template arguments and operator functions
13.3 | 96 | C++11 | Syntactic disambiguation using the `template` keyword
13.3 | 228 | CD1 | Use of `template` keyword with non-member templates
13.3 | 301 | CD1 | Syntax for template-name
13.3 | 314 | C++17 | `template` in base class specifier
13.3 | 343 | C++17 | Make `template` optional in contexts that require a type
13.3 | 431 | C++11 | Defect in wording in 14.2
13.3 | 468 | CD1 | Allow `::template` outside of templates
13.3 | 552 | NAD | Use of `typename` in the type in a non-type parameter-declaration
13.3 | 579 | open | What is a “nested” `>` or `>>`?
13.3 | 867 | concepts | Naming a specialization of a constrained template
13.3 | 868 | concepts | Specifying a concept map in the name of a specialization
13.3 | 1478 | DRWP | `template` keyword for dependent template template arguments
13.3 | 1794 | C++17 | `template` keyword and alias templates
13.3 | 1812 | C++17 | Omission of `template` in a typename-specifier
13.3 | 2292 | CD5 | simple-template-id is ambiguous between class-name and type-name
13.3 | 2450 | drafting | braced-init-list as a template-argument
13.4 | 246 | CD1 | Jumps in function-try-block handlers
13.4 | 372 | CD1 | Is access granted by base class specifiers available in following base class specifiers?
13.4 | 440 | open | Allow implicit pointer-to-member conversion on nontype template argument
13.4 | 2008 | CD4 | Default template-arguments underspecified
13.4 | 2105 | open | When do the arguments for a parameter pack end?
13.4.2 | 62 | CD1 | Unnamed members of classes used as type parameters
13.4.2 | 2106 | CD4 | Unclear restrictions on use of function-type template arguments
13.4.3 | 100 | TC1 | Clarify why string literals are not allowed as template arguments
13.4.3 | 354 | CD1 | Null as nontype template argument
13.4.3 | 773 | C++11 | Parentheses in address non-type template arguments
13.4.3 | 823 | CD2 | Literal types with constexpr conversions as non-type template arguments
13.4.3 | 1023 | dup | `thread_local` objects as non-type template arguments
13.4.3 | 1025 | C++11 | Use of a reference as a non-type template argument
13.4.3 | 1154 | C++11 | Address of `thread_local` variable as non-type template argument
13.4.3 | 1155 | C++11 | Internal-linkage non-type template arguments
13.4.3 | 1398 | CD3 | Non-type template parameters of type `std::nullptr_t`
13.4.3 | 1451 | CD4 | Objects with no linkage in non-type template arguments
13.4.3 | 1570 | C++14 | Address of subobject as non-type template argument
13.4.3 | 1666 | C++14 | Address constant expressions
13.4.3 | 2043 | drafting | Generalized template arguments and array-to-pointer decay
13.4.3 | 2049 | drafting | List initializer in non-type template default argument
13.4.3 | 2401 | open | Array decay vs prohibition of subobject non-type arguments
13.4.3 | 2459 | drafting | Template parameter initialization
13.4.4 | 150 | C++17 | Template template parameters and default arguments
13.4.4 | 744 | CD2 | Matching template arguments with template template parameters with parameter packs
13.4.4 | 849 | concepts | Constraints and template template parameters
13.4.4 | 1592 | C++14 | When do template parameters match?
13.4.4 | 2057 | drafting | Template template arguments with default arguments
13.4.4 | 2398 | open | Template template parameter matching and deduction
13.6 | 603 | CD1 | Type equivalence and unsigned overflow
13.6 | 679 | CD1 | Equivalence of template-ids and operator function templates
13.6 | 1244 | C++11 | Equivalence of alias templates and class templates
13.6 | 2037 | drafting | Alias templates and template declaration matching
13.6 | 2064 | CD4 | Conflicting specifications for dependent decltype-specifiers
13.6 | 2411 | C++20 | Comparison of pointers to members in template non-type arguments
13.7 | 1729 | DRWP | Matching declarations and definitions of variable templates
13.7 | 1730 | drafting | Can a variable template have an unnamed type?
13.7.2 | 824 | concepts | Constrained special member functions
13.7.2 | 843 | concepts | Unclear interaction of constraints and special member functions
13.7.2 | 1206 | C++11 | Defining opaque enumeration members of class templates
13.7.2 | 2062 | DRWP | Class template redeclaration requirements
13.7.2.2 | 249 | TC1 | What is a member function template?
13.7.2.2 | 1245 | C++11 | Matching declarations involving `decltype`
13.7.2.3 | 2422 | C++20 | Incorrect grammar for deduction-guide
13.7.2.5 | 408 | CD2 | sizeof applied to unknown-bound array static data member of template
13.7.3 | 114 | NAD | Virtual overriding by template member function specializations
13.7.3 | 582 | CD1 | Template conversion functions
13.7.4 | 1002 | NAD | Pack expansion for function arguments
13.7.4 | 1032 | C++11 | Empty pack expansions
13.7.4 | 1182 | C++11 | Incorrect description of pack expansion syntax
13.7.4 | 1231 | C++11 | Variadic templates requiring an empty pack expansion
13.7.4 | 1393 | extension | Pack expansions in using-declarations
13.7.4 | 1432 | drafting | Newly-ambiguous variadic template expansions
13.7.4 | 1519 | NAD | Conflicting default and variadic constructors
13.7.4 | 1533 | CD3 | Function pack expansion for member initialization
13.7.4 | 2391 | dup | Additional template parameters following pack expansion
13.7.5 | 47 | NAD | Template friend issues
13.7.5 | 329 | CD1 | Evaluation of friends of templates
13.7.5 | 410 | CD1 | Paragraph missed in changes for issue 166
13.7.5 | 638 | CD2 | Explicit specialization and friendship
13.7.5 | 674 | C++11 | “matching specialization” for a friend declaration
13.7.5 | 1545 | NAD | `friend` function templates defined in class templates
13.7.5 | 1804 | CD4 | Partial specialization and friendship
13.7.5 | 1862 | CD5 | Determining “corresponding members” for friendship
13.7.5 | 1918 | open | `friend` templates with dependent scopes
13.7.5 | 1945 | open | Friend declarations naming members of class templates in non-templates
13.7.5 | 2174 | C++17 | Unclear rules for friend definitions in templates
13.7.5 | 2261 | extension | Explicit instantiation of in-class `friend` definition
13.7.5 | 2306 | NAD | Nested friend templates of class templates
13.7.5 | 2379 | CD5 | Missing prohibition against `constexpr` in `friend` declaration
13.7.7.2 | 116 | TC1 | Equivalent and functionally-equivalent function templates
13.7.7.2 | 310 | open | Can function templates differing only in parameter cv-qualifiers be overloaded?
13.7.7.2 | 1321 | CD3 | Equivalency of dependent calls
13.7.7.2 | 1644 | NAD | Equivalent exception-specifications in function template declarations
13.7.7.2 | 2021 | dup | Function template redeclaration via alias template
13.7.7.2 | 2025 | dup | Declaration matching via alias templates
13.7.7.2 | 2045 | CD5 | “Identical” template parameter lists
13.7.7.3 | 23 | NAD | Some questions regarding partial ordering of function templates
13.7.7.3 | 200 | dup | Partial ordering and explicit arguments
13.7.7.3 | 214 | CD1 | Partial ordering of function templates is underspecified
13.7.7.3 | 402 | open | More on partial ordering of function templates
13.7.7.3 | 532 | C++11 | Member/nonmember operator template partial ordering
13.7.7.3 | 1156 | C++11 | Partial ordering in a non-call context
13.7.7.3 | 1157 | open | Partial ordering of function templates is still underspecified
13.7.7.3 | 1235 | C++11 | “Unused” ellipsis and default arguments in partial ordering
13.7.7.3 | 1406 | CD3 | ref-qualifiers and added parameters of non-static member function templates
13.7.7.3 | 1446 | CD4 | Member function with no ref-qualifier and non-member function with rvalue reference
13.7.7.3 | 2160 | open | Issues with partial ordering
13.7.7.3 | 2373 | CD5 | Incorrect handling of static member function templates in partial ordering
13.7.7.3 | 2445 | C++20 | Partial ordering with rewritten candidates
13.7.8 | 851 | concepts | Constraints and template aliases
13.7.8 | 929 | CD2 | What is a template alias?
13.7.8 | 1056 | C++11 | Template aliases, member definitions, and the current instantiation
13.7.8 | 1158 | C++11 | Recursive instantiation via alias template
13.7.8 | 1159 | C++11 | Class and enumeration definitions in template aliases
13.7.8 | 1286 | drafting | Equivalence of alias templates
13.7.8 | 1349 | dup | Consistency of alias template redeclarations
13.7.8 | 1430 | drafting | Pack expansion into fixed alias template parameter list
13.7.8 | 1520 | NAD | Alias template specialization vs pack expansion
13.7.8 | 1554 | drafting | Access and alias templates
13.7.8 | 1558 | CD4 | Unused arguments in alias template specializations
13.7.8 | 1896 | DRWP | Repeated alias templates
13.7.8 | 1979 | drafting | Alias template specialization in template member definition
13.7.8 | 1980 | drafting | Equivalent but not functionally-equivalent redeclarations
13.7.8 | 2236 | drafting | When is an alias template specialization dependent?
13.8 | 120 | TC1 | Nonexistent non-terminal qualified-name
13.8 | 121 | TC1 | Dependent type names with non-dependent nested-name-specifiers
13.8 | 180 | CD1 | `typename` and elaborated types
13.8 | 183 | TC1 | `typename` in explicit specializations
13.8 | 345 | CD1 | Misleading comment on example in templates chapter
13.8 | 375 | dup | Confusing example on lookup with `typename`
13.8 | 382 | CD1 | Allow `typename` outside of templates
13.8 | 409 | CD1 | Obsolete paragraph missed by changes for issue 224
13.8 | 559 | CD1 | Editing error in issue 382 resolution
13.8 | 560 | NAD | Use of the `typename` keyword in return types
13.8 | 666 | CD1 | Dependent qualified-ids without the `typename` keyword
13.8 | 1161 | C++11 | Dependent nested-name-specifier in a pointer-to-member declarator
13.8 | 1162 | NAD | Dependent elaborated-type-specifiers in non-deduced contexts
13.8 | 1257 | open | Instantiation via non-dependent references in uninstantiated templates
13.8 | 1271 | CD5 | Imprecise wording regarding dependent types
13.8 | 1296 | CD3 | Ill-formed template declarations (not just definitions)
13.8 | 1483 | NAD | Non-dependent static_assert-declarations
13.8 | 1547 | NAD | `typename` keyword in alias-declarations
13.8 | 1785 | NAD | Conflicting diagnostic requirements for template definitions
13.8 | 1850 | CD4 | Differences between definition context and point of instantiation
13.8 | 1974 | NAD | Redundant specification of non-type typename-specifier
13.8 | 2067 | open | Generated variadic templates requiring empty pack
13.8 | 2413 | DRWP | `typename` in conversion-function-ids
13.8 | 2461 | DRWP | Diagnosing non-`bool` type constraints
13.8.1 | 2462 | drafting | Problems with the omission of the `typename` keyword
13.8.1 | 2468 | drafting | Omission of the `typename` keyword in a member template parameter list
13.8.2 | 186 | open | Name hiding and template template-parameters
13.8.2 | 316 | NAD | Injected-class-name of template used as template template parameter
13.8.2 | 448 | C++11 | Set of template functions in call with dependent explicit argument
13.8.2 | 458 | C++11 | Hiding of member template parameters by other members
13.8.2 | 459 | open | Hiding of template parameters by base class members
13.8.2 | 602 | C++11 | When is the injected-class-name of a class template a template?
13.8.2 | 1004 | C++11 | Injected-class-names as arguments for template template parameters
13.8.2 | 1841 | DRWP | `<` following template injected-class-name
13.8.2 | 1922 | CD4 | Injected class template names and default arguments
13.8.2 | 2508 | review | Restrictions on uses of template parameter names
13.8.3 | 213 | TC1 | Lookup in dependent base classes
13.8.3 | 515 | CD1 | Non-dependent references to base class members
13.8.3 | 524 | CD1 | Can function-notation calls to operator functions be dependent?
13.8.3 | 544 | NAD | Base class lookup in explicit specialization
13.8.3 | 588 | CD2 | Searching dependent bases of classes local to function templates
13.8.3 | 591 | CD4 | When a dependent base class is the current instantiation
13.8.3 | 1233 | C++11 | Pack expansions and dependent calls
13.8.3 | 1292 | CD4 | Dependent calls with braced-init-lists containing a pack expansion
13.8.3 | 1526 | dup | Dependent-class lookup in the current instantiation
13.8.3 | 1936 | DRWP | Dependent qualified-ids
13.8.3 | 2101 | CD4 | Incorrect description of type- and value-dependence
13.8.3.2 | 108 | TC1 | Are classes nested in templates dependent?
13.8.3.2 | 224 | CD1 | Definition of dependent names
13.8.3.2 | 502 | C++11 | Dependency of nested enumerations and enumerators
13.8.3.2 | 590 | C++11 | Nested classes and the “current instantiation”
13.8.3.2 | 1043 | C++11 | Qualified name lookup in the current instantiation
13.8.3.2 | 1057 | C++11 | `decltype` and the current instantiation
13.8.3.2 | 1160 | C++11 | Definitions of template members and the current instantiation
13.8.3.2 | 1281 | NAD | Virtual and dependent base classes
13.8.3.2 | 1289 | NAD | Can an alias template name the current instantiation?
13.8.3.2 | 1309 | CD4 | Incorrect note regarding lookup of a member of the current instantiation
13.8.3.2 | 1390 | drafting | Dependency of alias template specializations
13.8.3.2 | 1471 | CD3 | Nested type of non-dependent base
13.8.3.2 | 1524 | drafting | Incompletely-defined class template base
13.8.3.2 | 1619 | open | Definition of current instantiation
13.8.3.2 | 1737 | C++14 | Type dependence of call to a member of the current instantiation
13.8.3.2 | 1829 | DRWP | Dependent unnamed types
13.8.3.2 | 1905 | NAD | Dependent types and injected-class-names
13.8.3.2 | 1988 | CD4 | Ambiguity between dependent and non-dependent bases in implicit member access
13.8.3.2 | 2024 | CD4 | Dependent types and unexpanded parameter packs
13.8.3.2 | 2065 | DRWP | Current instantiation of a partial specialization
13.8.3.2 | 2074 | drafting | Type-dependence of local class of function template
13.8.3.2 | 2143 | C++17 | Value-dependency via injected-class-name
13.8.3.2 | 2266 | CD5 | Has dependent type vs is type-dependent
13.8.3.2 | 2307 | CD5 | Unclear definition of “equivalent to a nontype template parameter”
13.8.3.2 | 2457 | DRWP | Unexpanded parameter packs don't make a function type dependent
13.8.3.3 | 334 | NAD | Is a comma-expression dependent if its first operand is?
13.8.3.3 | 541 | CD2 | Dependent function types
13.8.3.3 | 1779 | CD4 | Type dependency of `__func__`
13.8.3.3 | 2275 | drafting | Type-dependence of function template
13.8.3.3 | 2294 | CD5 | Dependent `auto` static data members
13.8.3.3 | 2405 | drafting | Additional type-dependent expressions
13.8.3.3 | 2446 | C++20 | Questionable type-dependency of concept-ids
13.8.3.3 | 2487 | drafting | Type dependence of function-style cast to incomplete array type
13.8.3.4 | 447 | CD1 | Is offsetof type-dependent?
13.8.3.4 | 903 | CD3 | Value-dependent integral null pointer constants
13.8.3.4 | 1047 | C++11 | When is `typeid` value-dependent?
13.8.3.4 | 1074 | C++11 | Value-dependent noexcept-expressions
13.8.3.4 | 1088 | C++11 | Dependent non-type template arguments
13.8.3.4 | 1413 | CD3 | Missing cases of value-dependency
13.8.3.4 | 1899 | CD4 | Value-dependent constant expressions
13.8.3.4 | 2066 | CD4 | Does type-dependent imply value-dependent?
13.8.3.4 | 2100 | C++17 | Value-dependent address of static data member of class template
13.8.3.4 | 2109 | CD4 | Value dependence underspecified
13.8.3.4 | 2276 | C++17 | Dependent `noexcept` and function type-dependence
13.8.3.5 | 2090 | drafting | Dependency via non-dependent base class
13.8.4 | 2 | drafting | How can dependent names be used in member declarations that appear outside of the class template definition?
13.8.4 | 22 | TC1 | Template parameter with a default argument that refers to itself
13.8.4 | 1028 | DRWP | Dependent names in non-defining declarations
13.8.4.1 | 287 | drafting | Order dependencies in template instantiation
13.8.4.1 | 993 | C++11 | Freedom to perform instantiation at the end of the translation unit
13.8.4.1 | 1258 | drafting | “Instantiation context” differs from dependent lookup rules
13.8.4.1 | 1845 | drafting | Point of instantiation of a variable template specialization
13.8.4.1 | 2245 | drafting | Point of instantiation of incomplete class template
13.8.4.1 | 2250 | open | Implicit instantiation, destruction, and TUs
13.8.4.1 | 2497 | drafting | Points of instantiation for constexpr function templates
13.8.4.2 | 197 | CD1 | Issues with two-stage lookup of dependent names
13.8.4.2 | 561 | CD2 | Internal linkage functions in dependent name lookup
13.8.4.2 | 1500 | DRWP | Name lookup of dependent conversion function
13.9 | 259 | CD1 | Restrictions on explicit specialization and instantiation
13.9 | 1253 | drafting | Generic non-template members
13.9 | 2255 | CD5 | Instantiated static data member templates
13.9 | 2330 | CD5 | Missing references to variable templates
13.9 | 2435 | open | Alias template specializations
13.9.2 | 34 | NAD | Argument dependent lookup and points of instantiation
13.9.2 | 63 | CD1 | Class instantiation from pointer conversion to void*, null and self
13.9.2 | 212 | CD4 | Implicit instantiation is not described clearly enough
13.9.2 | 489 | NAD | Must member function templates be instantiated during overload resolution?
13.9.2 | 525 | CD1 | Missing `*` in example
13.9.2 | 1378 | open | When is an instantiation required?
13.9.2 | 1396 | drafting | Deferred instantiation and checking of non-static data member initializers
13.9.2 | 1484 | CD4 | Unused local classes of function templates
13.9.2 | 1602 | open | Linkage of specialization vs linkage of template arguments
13.9.2 | 1856 | open | Indirect nested classes of class templates
13.9.2 | 2072 | drafting | Default argument instantiation for member functions of templates
13.9.2 | 2202 | drafting | When does default argument instantiation occur?
13.9.2 | 2222 | drafting | Additional contexts where instantiation is not required
13.9.2 | 2263 | drafting | Default argument instantiation for `friend`s
13.9.2 | 2265 | drafting | Delayed pack expansion and member redeclarations
13.9.3 | 46 | NAD | Explicit instantiation of member templates
13.9.3 | 237 | CD1 | Explicit instantiation and base class members
13.9.3 | 293 | open | Syntax of explicit instantiation/specialization too permissive
13.9.3 | 470 | CD1 | Instantiation of members of an explicitly-instantiated class template
13.9.3 | 546 | C++11 | Explicit instantiation of class template members
13.9.3 | 551 | CD1 | When is `inline` permitted in an explicit instantiation?
13.9.3 | 969 | CD2 | Explicit instantiation declarations of class template specializations
13.9.3 | 980 | CD2 | Explicit instantiation of a member of a class template
13.9.3 | 995 | CD2 | Incorrect example for using-declaration and explicit instantiation
13.9.3 | 1045 | NAD | Requiring explicit instantiation declarations
13.9.3 | 1046 | open | What is a “use” of a class specialization?
13.9.3 | 1163 | NAD | `extern template` prevents inlining functions not marked `inline`
13.9.3 | 1196 | C++11 | Definition required for explicit instantiation after explicit specialization?
13.9.3 | 1532 | CD3 | Explicit instantiation and member templates
13.9.3 | 1665 | drafting | Declaration matching in explicit instantiations
13.9.3 | 1704 | CD5 | Type checking in explicit instantiation of variable templates
13.9.3 | 1728 | CD5 | Type of an explicit instantiation of a variable template
13.9.3 | 2161 | NAD | Explicit instantiation declaration and “preceding initialization”
13.9.3 | 2270 | extension | Non-inline functions and explicit instantiation declarations
13.9.3 | 2305 | CD5 | Explicit instantiation of constexpr or inline variable template
13.9.3 | 2421 | drafting | Explicit instantiation of constrained member functions
13.9.3 | 2501 | open | Explicit instantiation and trailing requires-clauses
13.9.4 | 3 | NAD | The template compilation model rules render some explicit specialization declarations not visible during instantiation
13.9.4 | 24 | TC1 | Errors in examples in 14.7.3
13.9.4 | 44 | CD1 | Member specializations
13.9.4 | 64 | TC1 | Partial ordering to disambiguate explicit specialization
13.9.4 | 88 | NAD | Specialization of member constant templates
13.9.4 | 182 | NAD | Access checking on explicit specializations
13.9.4 | 275 | CD1 | Explicit instantiation/specialization and using-directives
13.9.4 | 285 | NAD | Identifying a function template being specialized
13.9.4 | 336 | CD1 | Explicit specialization examples are still incorrect
13.9.4 | 529 | drafting | Use of `template<>` with “explicitly-specialized” class templates
13.9.4 | 531 | C++11 | Defining members of explicit specializations
13.9.4 | 605 | C++11 | Linkage of explicit specializations
13.9.4 | 621 | C++11 | Template argument deduction from function return types
13.9.4 | 727 | C++17 | In-class explicit specializations
13.9.4 | 730 | CD2 | Explicit specializations of members of non-template classes
13.9.4 | 884 | CD2 | Defining an explicitly-specialized static data member
13.9.4 | 923 | CD2 | Inline explicit specializations
13.9.4 | 941 | C++11 | Explicit specialization of deleted function template
13.9.4 | 1727 | NAD | Type of a specialization of a variable template
13.9.4 | 1792 | NAD | Incorrect example of explicit specialization of member enumeration
13.9.4 | 1840 | drafting | Non-deleted explicit specialization of deleted function template
13.9.4 | 1876 | extension | Preventing explicit specialization
13.9.4 | 1993 | drafting | Use of `template<>` defining member of explicit specialization
13.9.4 | 1994 | dup | Confusing wording regarding multiple `template<>` prefixes
13.9.4 | 2041 | CD4 | Namespace for explicit class template specialization
13.9.4 | 2138 | NAD | Explicit member specialization vs implicit instantiation
13.9.4 | 2260 | CD5 | Explicit specializations of deleted member functions
13.9.4 | 2409 | drafting | Explicit specializations of constexpr static data members
13.9.4 | 2416 | C++20 | Explicit specializations vs `constexpr` and `consteval`
13.9.4 | 2478 | open | Properties of explicit specializations of implicitly-instantiated class templates
13.10.2 | 241 | TC1 | Error in example in 14.8.1
13.10.2 | 264 | open | Unusable template constructors and conversion functions
13.10.2 | 581 | CD5 | Can a templated constructor be explicitly instantiated or specialized?
13.10.2 | 1386 | NAD | Explicitly-specified partial argument list with multiple parameter packs
13.10.2 | 1391 | CD4 | Conversions to parameter types with non-deduced template arguments
13.10.2 | 1982 | NAD | Deduction extending parameter pack
13.10.2 | 2055 | drafting | Explicitly-specified non-deduced parameter packs
13.10.2 | 2200 | NAD | Conversions in template argument deduction
13.10.3 | 271 | DRWP | Explicit instantiation and template argument deduction
13.10.3 | 297 | NAD | Which template does an explicit specialization specialize?
13.10.3 | 337 | CD1 | Attempt to create array of abtract type should cause deduction to fail
13.10.3 | 368 | CD1 | Uses of non-type parameters that should cause deduction to fail
13.10.3 | 398 | CD1 | Ambiguous wording on naming a type in deduction
13.10.3 | 486 | CD1 | Invalid return types and template argument deduction
13.10.3 | 488 | CD1 | Local types, overload resolution, and template argument deduction
13.10.3 | 575 | C++11 | Criteria for deduction failure
13.10.3 | 657 | CD2 | Abstract class parameter in synthesized declaration
13.10.3 | 662 | NAD | Forming a pointer to a reference type
13.10.3 | 697 | open | Deduction rules apply to more than functions
13.10.3 | 709 | C++11 | Enumeration names as nested-name-specifiers in deduction failure
13.10.3 | 1170 | C++11 | Access checking during template argument deduction
13.10.3 | 1172 | drafting | “instantiation-dependent” constructs
13.10.3 | 1227 | CD3 | Mixing immediate and non-immediate contexts in deduction failure
13.10.3 | 1262 | CD3 | Default template arguments and deduction failure
13.10.3 | 1273 | NAD | Accessibility and function signatures
13.10.3 | 1322 | drafting | Function parameter type decay in templates
13.10.3 | 1330 | CD3 | Delayed instantiation of `noexcept` specifiers
13.10.3 | 1462 | CD3 | Deduction failure vs “ill-formed, no diagnostic required”
13.10.3 | 1546 | NAD | Errors in function template default arguments
13.10.3 | 1582 | drafting | Template default arguments and deduction failure
13.10.3 | 1724 | DR | Unclear rules for deduction failure
13.10.3 | 1809 | CD4 | Narrowing and template argument deduction
13.10.3 | 1844 | drafting | Defining “immediate context”
13.10.3 | 2054 | open | Missing description of class SFINAE
13.10.3 | 2296 | extension | Are default argument instantiation failures in the “immediate context”?
13.10.3 | 2322 | CD5 | Substitution failure and lexical order
13.10.3 | 2369 | DRWP | Ordering between constraints and substitution
13.10.3.1 | 2498 | open | Partial specialization failure and the immediate context
13.10.3.2 | 99 | NAD | Partial ordering, references and cv-qualifiers
13.10.3.2 | 352 | CD1 | Nondeduced contexts
13.10.3.2 | 503 | open | Cv-qualified function types in template argument deduction
13.10.3.2 | 522 | CD1 | Array-to-pointer decay in template argument deduction
13.10.3.2 | 606 | CD1 | Template argument deduction for rvalue references
13.10.3.2 | 847 | CD2 | Error in rvalue reference deduction example
13.10.3.2 | 876 | CD2 | Type references in rvalue reference deduction specification
13.10.3.2 | 1014 | NAD | Overload resolution between `const T&` and `T&&`
13.10.3.2 | 1164 | C++11 | Partial ordering of `f(T&)` and `f(T&&)`
13.10.3.2 | 1184 | C++11 | Argument conversions to nondeduced parameter types
13.10.3.2 | 1326 | extension | Deducing an array bound from an initializer-list
13.10.3.2 | 1388 | CD3 | Missing non-deduced context following a function parameter pack
13.10.3.2 | 1399 | CD3 | Deduction with multiple function parameter packs
13.10.3.2 | 1513 | drafting | `initializer_list` deduction failure
13.10.3.2 | 1584 | drafting | Deducing function types from cv-qualified types
13.10.3.2 | 1591 | CD4 | Deducing array bound and element type from initializer list
13.10.3.2 | 1671 | NAD | Unclear rules for deduction with cv-qualification
13.10.3.2 | 1700 | NAD | Does the special rvalue-reference deduction apply to alias templates?
13.10.3.2 | 1939 | drafting | Argument conversions to nondeduced parameter types revisited
13.10.3.2 | 2147 | CD4 | Initializer-list arguments and pack deduction
13.10.3.2 | 2303 | CD5 | Partial ordering and recursive variadic inheritance
13.10.3.2 | 2326 | dup | Type deduction with initializer list containing ambiguous functions
13.10.3.3 | 1486 | drafting | Base-derived conversion in member pointer deduction
13.10.3.4 | 322 | CD1 | Deduction of reference conversions
13.10.3.4 | 349 | CD1 | Template argument deduction for conversion functions and qualification conversions
13.10.3.4 | 493 | CD2 | Type deduction from a `bool` context
13.10.3.4 | 913 | CD2 | Deduction rules for array- and function-type conversion functions
13.10.3.4 | 976 | CD2 | Deduction for `const T&` conversion operators
13.10.3.4 | 1372 | CD3 | Cross-references incorrect in conversion function template argument deduction
13.10.3.4 | 2384 | CD5 | Conversion function templates and qualification conversions
13.10.3.5 | 885 | NAD | Partial ordering of function templates with unordered parameter pairs
13.10.3.5 | 1221 | open | Partial ordering and reference collapsing
13.10.3.5 | 1337 | dup | Partial ordering and non-deduced parameters
13.10.3.5 | 1610 | drafting | Cv-qualification in deduction of reference to array
13.10.3.5 | 1705 | CD4 | Unclear specification of “more specialized”
13.10.3.5 | 1825 | C++17 | Partial ordering between variadic and non-variadic function templates
13.10.3.5 | 2088 | CD5 | Late tiebreakers in partial ordering
13.10.3.5 | 2235 | CD5 | Partial ordering and non-dependent types
13.10.3.5 | 2350 | NAD | Forwarding references and deduction guides
13.10.3.6 | 70 | CD1 | Is an array bound a nondeduced context?
13.10.3.6 | 181 | TC1 | Errors in template template-parameter example
13.10.3.6 | 300 | CD1 | References to functions in template argument deduction
13.10.3.6 | 469 | NAD | Const template specializations and reference arguments
13.10.3.6 | 526 | CD1 | Confusing aspects in the specification of non-deduced contexts
13.10.3.6 | 586 | NAD | Default template-arguments and template argument deduction
13.10.3.6 | 692 | C++11 | Partial ordering of variadic class template partial specializations
13.10.3.6 | 873 | C++11 | Deducing rvalue references in declarative contexts
13.10.3.6 | 1371 | NAD | Deduction from `T&&` in return types
13.10.3.6 | 1387 | CD3 | Missing non-deduced context for `decltype`
13.10.3.6 | 1395 | C++17 | Partial ordering of variadic templates reconsidered
13.10.3.6 | 1569 | C++14 | Deducing a function parameter pack before ellipsis
13.10.3.6 | 1763 | open | Length mismatch in template type deduction
13.10.3.6 | 1770 | C++14 | Type matching of non-type template parameters and arguments
13.10.3.6 | 1847 | CD4 | Clarifying compatibility during partial ordering
13.10.3.6 | 2091 | CD4 | Deducing reference non-type template arguments
13.10.3.6 | 2318 | CD5 | Nondeduced contexts in deduction from a braced-init-list
13.10.3.6 | 2328 | drafting | Unclear presentation style of template argument deduction rules
13.10.3.6 | 2355 | extension | Deducing noexcept-specifiers
13.10.3.7 | 1178 | C++11 | Deduction failure matching placement new
13.10.4 | 415 | CD1 | Template deduction does not cause instantiation
13.10.4 | 947 | NAD | Deducing type template arguments from default function arguments
13.10.4 | 2092 | CD5 | Deduction failure and overload resolution
14.2 | 104 | NAD | Destroying the exception temp when no handler is found
14.2 | 208 | CD1 | Rethrowing exceptions in nested handlers
14.2 | 428 | CD1 | Mention of expression with reference type
14.2 | 479 | CD1 | Copy elision in exception handling
14.2 | 499 | CD2 | Throwing an array of unknown size
14.2 | 828 | CD2 | Destruction of exception objects
14.2 | 1503 | CD3 | Exceptions during copy to exception object
14.2 | 1667 | NAD | Function exiting via exception called by destructor during unwinding
14.2 | 1863 | CD4 | Requirements on thrown object type to support `std::current_exception()`
14.3 | 592 | CD1 | Exceptions during construction of local static objects
14.3 | 1165 | C++11 | Exceptions when destroying array elements
14.3 | 1424 | C++14 | When must sub-object destructors be accessible?
14.3 | 1624 | NAD | Destruction of union members with member initializers
14.3 | 1774 | CD4 | Discrepancy between subobject destruction and stack unwinding
14.3 | 1807 | CD4 | Order of destruction of array elements after an exception
14.3 | 1866 | CD4 | Initializing variant members with non-trivial destructors
14.3 | 2209 | NAD | Destruction of constructed array elements
14.3 | 2210 | NAD | Principal/target constructor confusion
14.3 | 2426 | C++20 | Reference to destructor that cannot be invoked
14.4 | 210 | TC1 | What is the type matched by an exception handler?
14.4 | 308 | NAD | Catching exceptions with ambiguous base classes
14.4 | 388 | CD3 | Catching base`*&` from a throw of derived`*`
14.4 | 593 | NAD | Falling off the end of a destructor's function-try-block handler
14.4 | 729 | CD3 | Qualification conversions and handlers of reference-to-pointer type
14.4 | 971 | C++11 | Incorrect treatment of exception-declarations
14.4 | 1166 | C++11 | exception-declarations that do not declare objects
14.4 | 1218 | C++11 | What is the “currently-handled exception” in a multi-threaded program?
14.4 | 1769 | C++14 | Catching a base class of the exception object
14.4 | 2093 | CD4 | Qualification conversion for pointer-to-member handler matching
14.4 | 2172 | drafting | Multiple exceptions with one exception object
14.4 | 2219 | drafting | Dynamically-unreachable handlers
14.5 | 25 | TC1 | Exception specifications and pointers to members
14.5 | 87 | CD1 | Exception specifications on function parameters
14.5 | 92 | CD4 | Should exception-specifications be part of the type system?
14.5 | 126 | TC1 | Exception specifications and `const`
14.5 | 133 | dup | Exception specifications and checking
14.5 | 346 | NAD | Typo in 15.4
14.5 | 595 | dup | Exception specifications in templates instantiated from class bodies
14.5 | 829 | NAD | At what point is `std::unexpected` called?
14.5 | 830 | CD2 | Deprecating exception specifications
14.5 | 973 | CD2 | Function types in exception-specifications
14.5 | 1053 | NAD | Terminate vs undefined behavior for noexcept violation
14.5 | 1073 | C++11 | Merging dynamic-exception-specifications and noexcept-specifications
14.5 | 1167 | C++11 | function-try-blocks for destructors
14.5 | 1216 | C++11 | Exceptions “allowed” by a noexcept-specification
14.5 | 1267 | CD3 | Rvalue reference types in exception-specifications
14.5 | 1282 | CD3 | Underspecified destructor exception-specification
14.5 | 1351 | CD4 | Problems with implicitly-declared exception-specifications
14.5 | 1356 | CD4 | Exception specifications of copy assignment operators with virtual bases
14.5 | 1381 | CD3 | Implicitly-declared special member functions and default `nothrow`
14.5 | 1639 | CD4 | exception-specifications and pointer/pointer-to-member expressions
14.5 | 1740 | C++14 | Disambiguation of `noexcept`
14.5 | 1777 | CD4 | Empty pack expansion in dynamic-exception-specification
14.5 | 1798 | NAD | exception-specifications of template arguments
14.5 | 1934 | extension | Relaxing exception-specification compatibility requirements
14.5 | 1946 | CD4 | exception-specifications vs pointer dereference
14.5 | 1975 | CD4 | Permissible declarations for exception-specifications
14.5 | 1995 | CD4 | exception-specifications and non-type template parameters
14.5 | 2010 | CD4 | exception-specifications and conversion operators
14.5 | 2039 | CD4 | Constant conversions to `bool`
14.5 | 2047 | CD4 | Coordinating “throws anything” specifications
14.5 | 2183 | NAD | Problems in description of potential exceptions
14.5 | 2191 | C++17 | Incorrect result for `noexcept(typeid(v))`
14.5 | 2216 | NAD | Exception specifications in unevaluated contexts
14.5 | 2336 | CD5 | Destructor characteristics vs potentially-constructed subobjects
14.5 | 2417 | open | Explicit instantiation and exception specifications
14.5 | 2420 | open | Exception specifications in explicit instantiation
14.6.2 | 219 | NAD | Cannot defend against destructors that throw exceptions
14.6.2 | 668 | CD2 | Throwing an exception from the destructor of a local static object
14.6.2 | 1168 | C++11 | Additional reasons to call `std::terminate`
14.6.2 | 1171 | C++11 | Partial stack unwinding with `noexcept` violation
14.6.3 | 37 | NAD | When is uncaught_exception() true?
14.6.3 | 475 | C++11 | When is `std::uncaught_exception()` true? (take 2)
14.6.3 | 2034 | NAD | Deprecating `uncaught_exception()`
14.6.3 | 2098 | CD4 | Is `uncaught_exceptions()` per-thread?
15.2 | 601 | CD2 | Type of literals in preprocessing expressions
15.2 | 618 | CD2 | Casts in preprocessor conditional expressions
15.2 | 925 | open | Type of character literals in preprocessor expressions
15.2 | 1436 | drafting | Interaction of constant expression changes with preprocessor expressions
15.2 | 1955 | CD4 | `#elif` with invalid controlling expression
15.2 | 2190 | open | Insufficient specification of `__has_include`
15.2 | 2390 | CD5 | Is the argument of `__has_cpp_attribute` macro-expanded?
15.3 | 370 | CD1 | Can `#include <...>` form be used other than for standard C++ headers?
15.3 | 533 | NAD | Special treatment for C-style header names
15.3 | 1720 | NAD | Macro invocation in `#include` directive
15.6 | 1370 | CD3 | identifier-list cannot contain ellipsis
15.6 | 1718 | drafting | Macro invocation spanning end-of-file
15.6 | 2003 | drafting | Zero-argument macros incorrectly specified
15.6.3 | 626 | CD2 | Preprocessor string literals
15.6.3 | 1335 | drafting | Stringizing, extended characters, and universal-character-names
15.6.3 | 1625 | open | Adding spaces between tokens in stringizing
15.6.3 | 1709 | drafting | Stringizing raw string literals containing newline
15.6.5 | 268 | open | Macro name suppression in rescanned replacement text
15.8 | 745 | open | Effect of ill-formedness resulting from `#error`
15.9 | 1889 | drafting | Unclear effect of `#pragma` on conformance
15.11 | 1169 | C++11 | Missing feature macro for strict pointer safety
15.12 | 897 | open | `_Pragma` and extended string-literals
17.3.5.2 | 2193 | NAD | `numeric_limits<int>::radix` and `digits`
17.4.2 | 1277 | NAD | Lax definition of `intmax_t` and `uintmax_t`
17.6.3.3 | 2014 | NAD | Unneeded deallocation signatures
17.6.3.4 | 79 | dup | Alignment and placement new
17.6.5 | 2464 | open | Constexpr launder and unions
17.13.3 | 2361 | open | Unclear description of `longjmp` undefined behavior
26.5.3 | 2482 | accepted | `bit_cast` and indeterminate values
Annex A | 266 | NAD | No grammar sentence symbol
Annex B | 831 | CD2 | Limit on recursively nested template instantiations
Annex B | 1329 | CD3 | Recursive deduction substitutions
Annex B | 1675 | NAD | Size limit for automatic array object
Annex B | 1933 | NAD | Implementation limit for initializer-list elements
Annex B | 2181 | drafting | Normative requirements in an informative Annex
Annex C | 81 | NAD | Null pointers and C compatibility
Annex C | 1944 | open | New C incompatibilities
Annex C | 2407 | review | Missing entry in Annex C for defaulted comparison operators
Annex D | 223 | CD3 | The meaning of deprecation
C.3 | 2038 | CD4 | Document C++14 incompatibility of new braced deduction rule
C.5 | 1279 | drafting | Additional differences between C++ 2003 and C++ 2011
C.5 | 1377 | dup | Access declarations not mentioned in Annex C
C.5.3 | 2031 | CD4 | Missing incompatibility for `&&`
C.6 | 1248 | open | Updating Annex C to C99
C.6.4 | 2184 | CD4 | Missing C compatibility entry for decrement of `bool`
Clause 11 | 148 | TC1 | POD classes and pointers to members
Clause 11 | 175 | CD1 | Class name injection and base name access
Clause 11 | 176 | TC1 | Name injection and templates
Clause 11 | 273 | CD1 | POD classes and `operator&()`
Clause 11 | 284 | CD1 | qualified-ids in class declarations
Clause 11 | 327 | CD1 | Use of "structure" without definition
Clause 11 | 355 | C++11 | Global-scope `::` in nested-name-specifier
Clause 11 | 379 | CD1 | Change "class declaration" to "class definition"
Clause 11 | 383 | CD1 | Is a class with a declared but not defined destructor a POD?
Clause 11 | 413 | CD1 | Definition of "empty class"
Clause 11 | 511 | open | POD-structs with template assignment operators
Clause 11 | 538 | CD1 | Definition and usage of structure, POD-struct, POD-union, and POD class
Clause 11 | 568 | CD1 | Definition of POD is too strict
Clause 11 | 905 | CD2 | Explicit defaulted copy constructors and trivial copyability
Clause 11 | 1140 | C++11 | Incorrect redefinition of POD class
Clause 11 | 1215 | C++11 | Definition of POD struct
Clause 11 | 1318 | CD3 | Syntactic ambiguities with `final`
Clause 11 | 1363 | CD3 | Triviality vs multiple default constructors
Clause 11 | 1411 | CD3 | More on global scope `::` in nested-name-specifier
Clause 11 | 1813 | CD4 | Direct vs indirect bases in standard-layout classes
Clause 11 | 1881 | CD4 | Standard-layout classes and unnamed bit-fields
Clause 11 | 2120 | CD4 | Array as first non-static data member in standard-layout class
Clause 11 | 2234 | CD5 | Missing rules for simple-template-id as class-name
Clause 11 | 2293 | CD5 | Requirements for simple-template-id used as a class-name
Clause 12 | 1016 | C++11 | Overloadable declarations, function templates, and references
Clause 13 | 32 | TC1 | Clarification of explicit instantiation of non-exported templates
Clause 13 | 72 | dup | Linkage and storage class specifiers for templates
Clause 13 | 105 | TC1 | Meaning of "template function"
Clause 13 | 110 | DRWP | Can template functions and classes be declared in the same scope?
Clause 13 | 134 | TC1 | Template classes and declarator-ids
Clause 13 | 204 | CD1 | Exported class templates
Clause 13 | 205 | drafting | Templates and static data members
Clause 13 | 323 | CD1 | Where must `export` appear?
Clause 13 | 335 | CD1 | Allowing `export` on template members of nontemplate classes
Clause 13 | 534 | CD1 | template-names and operator-function-ids
Clause 13 | 728 | extension | Restrictions on local classes
Clause 13 | 820 | CD2 | Deprecation of `export`
Clause 13 | 821 | concepts | Exported concept map templates?
Clause 13 | 822 | NAD | Additional contexts for template aliases
Clause 13 | 1009 | C++11 | Missing cases in the declarator-id of a function template declaration
Clause 13 | 1096 | C++11 | Missing requirement for template definitions
Clause 13 | 1303 | NAD | C language linkage for template with internal linkage
Clause 13 | 1463 | extension | `extern "C"` alias templates
Clause 13 | 2428 | open | Deprecating a concept
Clause 14 | 98 | TC1 | Branching into try block
Clause 14 | 211 | NAD | Constructors should not be allowed to return normally after an exception
Clause 14 | 1431 | CD3 | Exceptions from other than throw-expressions
Clause 15 | 394 | CD1 | identifier-list is never defined
Clause 15 | 2001 | CD4 | non-directive is underspecified
Clause 15 | 2002 | open | White space within preprocessing directives
Clause 3 | 357 | CD1 | Definition of signature should include name
Clause 3 | 449 | NAD | Consistency in use of hyphen with names of "non" entities
Clause 3 | 537 | CD1 | Definition of “signature”
Clause 3 | 616 | CD3 | Definition of “indeterminate value”
Clause 3 | 690 | CD2 | The dynamic type of an rvalue reference
Clause 3 | 783 | open | Definition of “argument”
Clause 3 | 1476 | CD3 | Definition of user-defined type
Clause 3 | 1509 | C++14 | Definition of “non-template function”
Clause 3 | 1531 | CD3 | Definition of “access” (verb)
Clause 6 | 309 | CD1 | Linkage of entities whose names are not simply identifiers, in introduction
Clause 6 | 485 | CD1 | What is a “name”?
Clause 6 | 633 | CD2 | Specifications for variables that should also apply to references
Clause 6 | 719 | CD2 | Specifications for operator-function-id that should also apply to literal-operator-id
Clause 6 | 942 | CD2 | Is `this` an entity?
Clause 6 | 1529 | drafting | Nomenclature for variable vs reference non-static data member
Clause 6 | 2423 | NAD | Typedefs, names, and entities
Clause 7 | 71 | NAD | Incorrect cross reference
Clause 7 | 222 | CD1 | Sequence points and lvalue-returning operators
Clause 7 | 238 | CD4 | Precision and accuracy constraints on floating point
Clause 7 | 351 | CD1 | Sequence point error: unspecified or undefined?
Clause 7 | 438 | CD2 | Possible flaw in wording for multiple accesses to object between sequence points
Clause 7 | 451 | CD1 | Expressions with invalid results and ill-formedness
Clause 7 | 695 | CD2 | Compile-time calculation errors in constexpr functions
Clause 7 | 835 | CD2 | Scoped enumerations and the “usual arithmetic conversions”
Clause 7 | 858 | CD2 | Example binding an rvalue reference to an lvalue
Clause 7 | 1117 | C++11 | Incorrect note about xvalue member access expressions
Clause 7 | 1261 | CD3 | Explicit handling of cv-qualification with non-class prvalues
Clause 7 | 1383 | CD3 | Clarifying discarded-value expressions
Clause 7 | 1576 | C++14 | Discarded-value volatile xvalues
Clause 7 | 1642 | open | Missing requirements for prvalue operands
Clause 7 | 2206 | C++17 | Composite type of object and function pointers
Clause 8 | 2349 | NAD | Class/enumeration names vs conditions
Clause 9 | 157 | open | Omitted typedef declarator
Clause 9 | 435 | NAD | Change "declararation or definition" to "declaration"
Clause 9 | 569 | CD2 | Spurious semicolons at namespace scope should be allowed
Clause 9 | 1018 | C++11 | Ambiguity between simple-declaration and attribute-declaration
Clause 9 | 1042 | C++11 | Attributes in alias-declarations
Clause 9 | 1325 | NAD | Omitted declarator in `friend` declarations
Clause 9 | 1830 | CD4 | Repeated specifiers
Clause 9 | 1990 | CD4 | Ambiguity due to optional decl-specifier-seq
Clause 9 | 2188 | open | empty-declaration ambiguity
Clause 9 | 2288 | NAD | Contradictory optionality in simple-declaration
Clause 9 | 2341 | extension | Structured bindings with static storage duration
D.8 | 145 | TC1 | Deprecation of prefix `++`
unknown | 106 | CD1 | Creating references to references during template deduction/instantiation