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:
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 |
Issue |
Status |
Title |
_N2691_.E |
131 |
TC1 |
Typo in Lao characters
|
_N2691_.E |
248 |
DR |
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
|
1.3 |
357 |
CD1 |
Definition of signature should include name
|
1.3 |
449 |
NAD |
Consistency in use of hyphen with names of "non" entities
|
1.3 |
537 |
CD1 |
Definition of “signature”
|
1.3 |
616 |
open |
Definition of “indeterminate value”
|
1.3 |
690 |
CD2 |
The dynamic type of an rvalue reference
|
1.3 |
783 |
open |
Definition of “argument”
|
1.4 |
949 |
open |
Requirements for freestanding implementations
|
1.5 |
784 |
open |
List of incompatibilities with the previous Standard
|
1.8 |
513 |
CD1 |
Non-class “most-derived” objects
|
1.8 |
1189 |
review |
Address of distinct base class subobjects
|
1.9 |
129 |
open |
Stability of uninitialized auto variables
|
1.9 |
612 |
CD2 |
Requirements on a conforming implementation
|
1.9 |
637 |
CD1 |
Sequencing rules and example disagree
|
1.9 |
639 |
CD1 |
What makes side effects “different” from one another?
|
1.9 |
698 |
open |
The definition of “sequenced before” is too narrow
|
1.9 |
785 |
CD2 |
“Execution sequence” is inappropriate phraseology
|
1.9 |
1102 |
DR |
Better example of undefined behavior
|
1.9 |
1173 |
DR |
Unclear specification of effects of signal handling
|
1.10 |
726 |
CD2 |
Atomic and non-atomic objects in the memory model
|
1.10 |
740 |
CD2 |
Incorrect note on data races
|
1.10 |
786 |
CD2 |
Definition of “thread”
|
1.10 |
1040 |
NAD |
Memory model issues
|
1.10 |
1176 |
review |
Definition of release sequence
|
1.10 |
1177 |
review |
Intra-thread dependency-ordered-before
|
2.2 |
362 |
CD1 |
Order of initialization in instantiation units
|
2.2 |
578 |
open |
Phase 1 replacement of characters with universal-character-names
|
2.2 |
787 |
CD2 |
Unnecessary lexical undefined behavior
|
2.2 |
1103 |
DR |
Reversion of phase 1 and 2 transformations in raw string literals
|
2.3 |
173 |
TC1 |
Constraints on execution character set
|
2.3 |
558 |
CD1 |
Excluded characters in universal character names
|
2.3 |
630 |
CD2 |
Equality of narrow and wide character values in the basic character set
|
2.3 |
788 |
CD2 |
Relationship between locale and values of the execution character set
|
2.4 |
789 |
CD2 |
Deprecating trigraphs
|
2.5 |
369 |
drafting |
Are new/delete identifiers or preprocessing-op-or-punc?
|
2.6 |
985 |
open |
Alternative tokens and user-defined literals
|
2.6 |
1104 |
DR |
Global-scope template arguments vs the <: digraph
|
2.10 |
832 |
CD2 |
Value of preprocessing numbers
|
2.11 |
1105 |
DR |
Issues relating to TR 10176:2003
|
2.13 |
189 |
drafting |
Definition of operator and punctuator
|
2.14.3 |
505 |
CD1 |
Conditionally-supported behavior for unknown character escapes
|
2.14.3 |
912 |
open |
Character literals and universal-character-names
|
2.14.3 |
933 |
CD2 |
32-bit UCNs with 16-bit wchar_t
|
2.14.3 |
1024 |
open |
Limits on multicharacter literals
|
2.14.5 |
411 |
open |
Use of universal-character-name in character versus string literals
|
2.14.5 |
790 |
CD2 |
Concatenation of raw and non-raw string literals
|
2.14.5 |
834 |
CD2 |
What is an “ordinary string literal”?
|
2.14.5 |
872 |
CD2 |
Lexical issues with raw strings
|
2.14.5 |
932 |
CD2 |
UCNs in closing delimiters of raw string literals
|
2.14.7 |
1106 |
DR |
Need more detail in nullptr keyword description
|
2.14.8 |
931 |
CD2 |
Confusing reference to the length of a user-defined string literal
|
2.14.8 |
937 |
NAD |
Restrictions on values of template arguments in user-defined literals
|
2.14.8 |
1107 |
DR |
Overload resolution for user-defined integer literals
|
2.14.8 |
1108 |
open |
User-defined literals have not been implemented
|
2.14.8 |
1175 |
review |
Disambiguating user-defined literals
|
3 |
309 |
CD1 |
Linkage of entities whose names are not simply identifiers, in introduction
|
3 |
485 |
CD1 |
What is a “name”?
|
3 |
633 |
CD2 |
Specifications for variables that should also apply to references
|
3 |
719 |
CD2 |
Specifications for operator-function-id that should also apply to literal-operator-id
|
3 |
942 |
CD2 |
Is this an entity?
|
3.1 |
676 |
WP |
static_assert-declarations and general requirements for declarations
|
3.1 |
758 |
review |
Missing cases of declarations that are not definitions
|
3.1 |
1201 |
review |
Are deleted and defaulted functions definitions?
|
3.2 |
50 |
NAD |
Converting pointer to incomplete type to same type
|
3.2 |
82 |
dup |
Definition of "using" a constant expression
|
3.2 |
261 |
CD1 |
When is a deallocation function "used?"
|
3.2 |
289 |
CD1 |
Incomplete list of contexts requiring a complete type
|
3.2 |
570 |
CD2 |
Are references subject to the ODR?
|
3.2 |
678 |
WP |
Language linkage of member function parameter types and the ODR
|
3.2 |
712 |
review |
Are integer constant operands of a conditional-expression “used?”
|
3.2 |
1109 |
drafting |
When is “use” a reference to the ODR meaning?
|
3.2 |
1110 |
NAD |
Incomplete return type should be allowed in decltype operand
|
3.2 |
1174 |
review |
When is a pure virtual function “used?”
|
3.2 |
1192 |
review |
Inadvertent change to ODR and templates
|
3.2 |
1209 |
open |
Is a potentially-evaluated expression in a template definition a “use?”
|
3.3 |
481 |
CD2 |
Scope of template parameters
|
3.3 |
554 |
review |
Definition of “declarative region” and “scope”
|
3.3.2 |
433 |
CD1 |
Do elaborated type specifiers in templates inject into enclosing namespace scope?
|
3.3.2 |
1044 |
drafting |
Point of declaration for an alias-declaration
|
3.3.2 |
1210 |
drafting |
Injection of elaborated-type-specifier in enumeration scope
|
3.3.3 |
642 |
CD2 |
Definition and use of “block scope” and “local scope”
|
3.3.7 |
42 |
NAD |
Redefining names from base classes
|
3.3.7 |
432 |
CD1 |
Is injected class name visible in base class specifier list?
|
3.4 |
555 |
review |
Pseudo-destructor name lookup
|
3.4.1 |
41 |
TC1 |
Clarification of lookup of names after declarator-id
|
3.4.1 |
139 |
CD1 |
Error in friend lookup example
|
3.4.1 |
191 |
open |
Name lookup does not handle complex nesting
|
3.4.1 |
192 |
open |
Name lookup in parameters
|
3.4.1 |
231 |
NAD |
Visibility of names after using-directives
|
3.4.1 |
405 |
open |
Unqualified function name lookup
|
3.4.1 |
490 |
CD2 |
Name lookup in friend declarations
|
3.4.1 |
514 |
CD1 |
Is the initializer for a namespace member in the scope of the namespace?
|
3.4.1 |
1200 |
open |
Lookup rules for template parameters
|
3.4.2 |
12 |
dup |
Default arguments on different declarations for the same function and the Koenig lookup
|
3.4.2 |
33 |
TC1 |
Argument dependent lookup and overloaded functions
|
3.4.2 |
90 |
TC1 |
Should the enclosing class be an "associated class" too?
|
3.4.2 |
91 |
NAD |
A union's associated types should include the union itself
|
3.4.2 |
143 |
CD1 |
Friends and Koenig lookup
|
3.4.2 |
164 |
TC1 |
Overlap between Koenig and normal lookup
|
3.4.2 |
218 |
CD1 |
Specification of Koenig lookup
|
3.4.2 |
225 |
drafting |
Koenig lookup and fundamental types
|
3.4.2 |
321 |
open |
Associated classes and namespaces for argument-dependent lookup
|
3.4.2 |
384 |
NAD |
Argument-dependent lookup and operator functions
|
3.4.2 |
403 |
CD1 |
Reference to a type as a template-id
|
3.4.2 |
557 |
CD1 |
Does argument-dependent lookup cause template instantiation?
|
3.4.2 |
598 |
CD2 |
Associated namespaces of overloaded functions and function templates
|
3.4.2 |
705 |
CD2 |
Suppressing argument-dependent lookup via parentheses
|
3.4.2 |
997 |
review |
Argument-dependent lookup and dependent function template parameter types
|
3.4.2 |
1015 |
review |
Template arguments and argument-dependent lookup
|
3.4.3 |
724 |
concepts |
Qualified name lookup in a constrained context
|
3.4.3.1 |
298 |
CD1 |
T::x when T is cv-qualified
|
3.4.3.1 |
318 |
CD1 |
struct A::A should not name the constructor of A
|
3.4.3.1 |
562 |
open |
qualified-ids in non-expression contexts
|
3.4.3.1 |
635 |
NAD |
Names of constructors and destructors of templates
|
3.4.3.1 |
1000 |
CD2 |
Mistaking member typedefs for constructors
|
3.4.3.2 |
400 |
CD1 |
Using-declarations and the "struct hack"
|
3.4.3.2 |
861 |
CD2 |
Unintended ambiguity in inline namespace lookup
|
3.4.4 |
85 |
TC1 |
Redeclaration of member class
|
3.4.4 |
245 |
CD1 |
Name lookup in elaborated-type-specifiers
|
3.4.4 |
254 |
CD1 |
Definitional problems with elaborated-type-specifiers
|
3.4.5 |
141 |
CD1 |
Non-member function templates in member access expressions
|
3.4.5 |
156 |
drafting |
Name lookup for conversion functions
|
3.4.5 |
305 |
CD1 |
Name lookup in destructor call
|
3.4.5 |
381 |
CD1 |
Incorrect example of base class member lookup
|
3.4.5 |
414 |
CD1 |
Multiple types found on destructor lookup
|
3.4.5 |
682 |
drafting |
Missing description of lookup of template aliases
|
3.4.5 |
1089 |
drafting |
Template parameters in member selections
|
3.4.5 |
1111 |
ready |
Remove dual-scope lookup of member template names
|
3.4.5 |
1220 |
drafting |
Looking up conversion-type-ids
|
3.4.6 |
373 |
WP |
Lookup on namespace qualified name in using-directive
|
3.5 |
132 |
NAD |
Local types and linkage
|
3.5 |
216 |
CD1 |
Linkage of nameless class-scope enumeration types
|
3.5 |
278 |
open |
External linkage and nameless entities
|
3.5 |
279 |
open |
Correspondence of "names for linkage purposes"
|
3.5 |
319 |
CD1 |
Use of names without linkage in declaring entities with linkage
|
3.5 |
338 |
open |
Enumerator name with linkage used as class name in other translation unit
|
3.5 |
389 |
CD1 |
Unnamed types in entities with linkage
|
3.5 |
426 |
drafting |
Identically-named variables, one internally and one externally linked, allowed?
|
3.5 |
474 |
CD1 |
Block-scope extern declarations in namespace members
|
3.5 |
527 |
CD2 |
Problems with linkage of types
|
3.5 |
571 |
CD2 |
References declared const
|
3.5 |
757 |
CD2 |
Types without linkage in declarations
|
3.5 |
791 |
concepts |
Linkage of concept names
|
3.5 |
966 |
CD2 |
Nested types without linkage
|
3.5 |
1112 |
DR |
constexpr variables should have internal linkage like const
|
3.5 |
1113 |
DR |
Linkage of namespace member of unnamed namespace
|
3.6.1 |
792 |
CD2 |
Effects of std::quick_exit
|
3.6.1 |
882 |
CD2 |
Defining main as deleted
|
3.6.1 |
1003 |
open |
Acceptable definitions of main
|
3.6.2 |
269 |
NAD |
Order of initialization of multiply-defined static data members
of class templates
|
3.6.2 |
270 |
CD1 |
Order of initialization of static data members of class templates
|
3.6.2 |
371 |
open |
Interleaving of constructor calls
|
3.6.2 |
441 |
CD1 |
Ordering of static reference initialization
|
3.6.2 |
465 |
NAD |
May constructors of global objects call exit()?
|
3.6.2 |
688 |
CD1 |
Constexpr constructors and static initialization
|
3.6.2 |
1187 |
ready |
Problems in initialization example
|
3.6.3 |
28 |
CD1 |
'exit', 'signal' and static object destruction
|
3.6.3 |
640 |
open |
Accessing destroyed local objects of static storage duration
|
3.6.3 |
776 |
CD2 |
Delegating constructors, destructors, and std::exit
|
3.6.3 |
946 |
CD2 |
Order of destruction of local static objects and calls to std::atexit
|
3.7 |
365 |
open |
Storage duration and temporaries
|
3.7.4 |
967 |
open |
Exception specification of replacement allocation function
|
3.7.4.1 |
521 |
CD1 |
Requirements for exceptions thrown by allocation functions
|
3.7.4.2 |
220 |
CD1 |
All deallocation functions should be required not to throw
|
3.7.4.2 |
312 |
open |
“use” of invalid pointer value not defined
|
3.7.4.2 |
348 |
CD1 |
delete and user-written deallocation functions
|
3.7.4.2 |
523 |
open |
Can a one-past-the-end pointer be invalidated by deleting an adjacent object?
|
3.7.4.2 |
623 |
extension |
Use of pointers to deallocated storage
|
3.7.4.3 |
735 |
CD2 |
Missing case in specification of safely-derived pointers
|
3.7.4.3 |
853 |
CD2 |
Support for relaxed pointer safety
|
3.7.4.3 |
1190 |
review |
Operations on non-safely-derived pointers
|
3.8 |
89 |
TC1 |
Object lifetime does not account for reference rebinding
|
3.8 |
93 |
TC1 |
Missing word in 3.8 basic.life paragraph 2
|
3.8 |
119 |
CD1 |
Object lifetime and aggregate initialization
|
3.8 |
234 |
NAD |
Reuse of base class subobjects
|
3.8 |
274 |
CD1 |
Cv-qualification and char-alias access to out-of-lifetime objects
|
3.8 |
404 |
CD1 |
Unclear reference to construction with non-trivial constructor
|
3.8 |
419 |
open |
Can cast to virtual base class be done on partially-constructed object?
|
3.8 |
594 |
CD1 |
Coordinating issues 119 and 404 with delegating constructors
|
3.8 |
597 |
review |
Conversions applied to out-of-lifetime non-POD lvalues
|
3.8 |
793 |
CD2 |
Use of class members during destruction
|
3.8 |
1027 |
drafting |
Type consistency and reallocation of scalar types
|
3.8 |
1050 |
NAD |
Effects of thread support on object lifetime
|
3.8 |
1114 |
DR |
Incorrect use of placement new in example
|
3.8 |
1116 |
drafting |
Aliasing of union members
|
3.9 |
43 |
TC1 |
Copying base classes (PODs) using memcpy
|
3.9 |
290 |
NAD |
Should memcpy be allowed into a POD with a const member?
|
3.9 |
350 |
open |
signed char underlying representation for objects
|
3.9 |
496 |
open |
Is a volatile-qualified type really a POD?
|
3.9 |
619 |
WP |
Completeness of array types
|
3.9 |
644 |
CD1 |
Should a trivial class type be a literal type?
|
3.9 |
646 |
NAD |
Can a class with a constexpr copy constructor be a literal type?
|
3.9 |
883 |
CD2 |
std::memcpy vs std::memmove
|
3.9 |
981 |
ready |
Constexpr constructor templates and literal types
|
3.9 |
1071 |
ready |
Literal class types and trivial default constructors
|
3.9 |
1181 |
drafting |
What is a “built-in type?”
|
3.9 |
1198 |
ready |
Literal types and copy constructors
|
3.9 |
1219 |
review |
Non-static data member initializers in constant expressions
|
3.9.1 |
146 |
open |
Floating-point zero
|
3.9.1 |
251 |
open |
How many signed integer types are there?
|
3.9.1 |
483 |
open |
Normative requirements on integral ranges
|
3.9.1 |
627 |
NAD |
Values behaving as types
|
3.9.1 |
689 |
open |
Maximum values of signed and unsigned integers
|
3.9.1 |
1055 |
drafting |
Permissible uses of void
|
3.9.3 |
1059 |
drafting |
Cv-qualified array types (with rvalues)
|
3.10 |
158 |
CD1 |
Aliasing and qualification conversions
|
3.10 |
584 |
NAD |
Unions and aliasing
|
3.10 |
636 |
drafting |
Dynamic type of objects and aliasing
|
3.10 |
846 |
CD2 |
Rvalue references to functions
|
3.10 |
964 |
DR |
Incorrect description of when the lvalue-to-rvalue conversion applies
|
3.10 |
1026 |
NAD |
Cv-qualified non-class rvalues
|
3.10 |
1076 |
open |
Value categories and lvalue temporaries
|
3.11 |
649 |
CD1 |
Optionally ill-formed extended alignment requests
|
3.11 |
1090 |
drafting |
Alignment of subobjects
|
3.11 |
1115 |
open |
C-compatible alignment specification
|
3.11 |
1180 |
review |
Over-aligned class types
|
3.11 |
1211 |
drafting |
Misaligned lvalues
|
4 |
572 |
review |
Standard conversions for non-built-in types
|
4.1 |
240 |
review |
Uninitialized values and undefined behavior
|
4.1 |
617 |
drafting |
Lvalue-to-rvalue conversions of uninitialized char objects
|
4.1 |
1013 |
open |
Uninitialized std::nullptr_t objects
|
4.2 |
693 |
CD2 |
New string types and deprecated conversion
|
4.4 |
330 |
open |
Qualification conversions and pointers to arrays of pointers
|
4.5 |
303 |
NAD |
Integral promotions on bit-fields
|
4.5 |
685 |
CD2 |
Integral promotion of enumeration ignores fixed underlying type
|
4.9 |
566 |
NAD |
Conversion of negative floating point values to integer type
|
4.9 |
707 |
CD2 |
Undefined behavior in integral-to-floating conversions
|
4.10 |
149 |
TC1 |
Accessibility and ambiguity
|
4.10 |
456 |
NAD |
Is initialized const int or const bool variable a null pointer constant?
|
4.10 |
519 |
CD1 |
Null pointer preservation in void* conversions
|
4.10 |
654 |
CD1 |
Conversions to and from nullptr_t
|
4.10 |
917 |
concepts |
Pointer conversions between archetypes
|
4.11 |
170 |
drafting |
Pointer-to-member conversions
|
4.11 |
480 |
CD1 |
Is a base of a virtual base also virtual?
|
4.11 |
794 |
extension |
Base-derived conversion in member type of pointer-to-member conversion
|
5 |
71 |
NAD |
Incorrect cross reference
|
5 |
222 |
CD1 |
Sequence points and lvalue-returning operators
|
5 |
238 |
open |
Precision and accuracy constraints on floating point
|
5 |
351 |
CD1 |
Sequence point error: unspecified or undefined?
|
5 |
438 |
CD2 |
Possible flaw in wording for multiple accesses to object between sequence points
|
5 |
451 |
CD1 |
Expressions with invalid results and ill-formedness
|
5 |
695 |
CD2 |
Compile-time calculation errors in constexpr functions
|
5 |
835 |
CD2 |
Scoped enumerations and the “usual arithmetic conversions”
|
5 |
858 |
CD2 |
Example binding an rvalue reference to an lvalue
|
5 |
1117 |
DR |
Incorrect note about xvalue member access expressions
|
5.1.1 |
122 |
CD1 |
template-ids as unqualified-ids
|
5.1.1 |
123 |
TC1 |
Bad cross-reference
|
5.1.1 |
125 |
CD1 |
Ambiguity in friend declaration syntax
|
5.1.1 |
147 |
TC1 |
Naming the constructor
|
5.1.1 |
536 |
drafting |
Problems in the description of id-expressions
|
5.1.1 |
687 |
extension |
template keyword with unqualified-ids
|
5.1.1 |
743 |
CD2 |
Use of decltype in a nested-name-specifier
|
5.1.1 |
760 |
CD2 |
this inside a nested class of a non-static member function
|
5.1.1 |
850 |
CD2 |
Restrictions on use of non-static data members
|
5.1.1 |
945 |
open |
Use of this in a late-specified return type
|
5.1.2 |
720 |
CD2 |
Need examples of lambda-expressions
|
5.1.2 |
750 |
CD2 |
Implementation constraints on reference-only closure objects
|
5.1.2 |
751 |
CD2 |
Deriving from closure classes
|
5.1.2 |
752 |
CD2 |
Name lookup in nested lambda-expressions
|
5.1.2 |
753 |
CD2 |
Array names in lambda capture sets
|
5.1.2 |
754 |
CD2 |
Lambda expressions in default arguments of block-scope function declarations
|
5.1.2 |
755 |
extension |
Generalized lambda-captures
|
5.1.2 |
756 |
CD2 |
Dropping cv-qualification on members of closure objects
|
5.1.2 |
759 |
CD2 |
Destruction of closure objects
|
5.1.2 |
761 |
CD2 |
Inferred return type of closure object call operator
|
5.1.2 |
762 |
CD2 |
Name lookup in the compound-statement of a lambda expression
|
5.1.2 |
763 |
CD2 |
Is a closure object's operator() inline?
|
5.1.2 |
764 |
CD2 |
Capturing unused variables in a lambda expression
|
5.1.2 |
766 |
CD2 |
Where may lambda expressions appear?
|
5.1.2 |
767 |
CD2 |
void and other unnamed lambda-parameters
|
5.1.2 |
768 |
CD2 |
Ellipsis in a lambda parameter list
|
5.1.2 |
769 |
CD2 |
Initialization of closure objects
|
5.1.2 |
771 |
CD2 |
Move-construction of reference members of closure objects
|
5.1.2 |
772 |
CD2 |
capture-default in lambdas in local default arguments
|
5.1.2 |
774 |
CD2 |
Can a closure class be a POD?
|
5.1.2 |
775 |
CD2 |
Capturing references to functions
|
5.1.2 |
779 |
CD2 |
Rvalue reference members of closure objects?
|
5.1.2 |
782 |
CD2 |
Lambda expressions and argument-dependent lookup
|
5.1.2 |
795 |
NAD |
Dependency of lambdas on <functional>
|
5.1.2 |
796 |
CD2 |
Lifetime of a closure object with members captured by reference
|
5.1.2 |
797 |
CD2 |
Converting a no-capture lambda to a function type
|
5.1.2 |
904 |
CD2 |
Parameter packs in lambda-captures
|
5.1.2 |
955 |
CD2 |
Can a closure type's operator() be virtual?
|
5.1.2 |
958 |
NAD |
Lambdas and decltype
|
5.1.2 |
974 |
open |
Default arguments for lambdas
|
5.1.2 |
975 |
open |
Restrictions on return type deduction for lambdas
|
5.1.2 |
1034 |
DR |
Attributes for return statements in lambdas
|
5.1.2 |
1048 |
extension |
auto deduction and lambda return type deduction.
|
5.1.2 |
1062 |
DR |
Syntax of attribute-specifiers in lambdas
|
5.1.2 |
1118 |
NAD |
Implicit lambda capture via explicit copy constructor
|
5.2 |
863 |
CD2 |
Rvalue reference cast to incomplete type
|
5.2.1 |
798 |
open |
Overloaded subscript operator described in clause 5
|
5.2.1 |
1213 |
open |
Array subscripting and xvalues
|
5.2.2 |
113 |
CD1 |
Visibility of called function
|
5.2.2 |
118 |
CD1 |
Calls via pointers to virtual member functions
|
5.2.2 |
506 |
CD1 |
Conditionally-supported behavior for non-POD objects passed to ellipsis
|
5.2.2 |
634 |
CD1 |
Conditionally-supported behavior for non-POD objects passed to ellipsis redux
|
5.2.2 |
722 |
CD2 |
Can nullptr be passed to an ellipsis?
|
5.2.2 |
1083 |
DR |
Passing an object to ellipsis with non-trivial move constructor
|
5.2.3 |
914 |
extension |
Value-initialization of array types
|
5.2.3 |
943 |
open |
Is T() a temporary?
|
5.2.4 |
466 |
CD1 |
cv-qualifiers on pseudo-destructor type
|
5.2.5 |
52 |
TC1 |
Non-static members, member selection and access checking
|
5.2.5 |
421 |
CD1 |
Is rvalue.field an rvalue?
|
5.2.5 |
731 |
CD2 |
Omitted reference qualification of member function type
|
5.2.5 |
1119 |
DR |
Missing case in description of member access ambiguity
|
5.2.6 |
742 |
open |
Postfix increment/decrement with long bit-field operands
|
5.2.7 |
665 |
CD2 |
Problems in the specification of dynamic_cast
|
5.2.8 |
282 |
open |
Namespace for extended_type_info
|
5.2.8 |
492 |
CD1 |
typeid constness inconsistent with example
|
5.2.8 |
528 |
open |
Why are incomplete class types not allowed with typeid?
|
5.2.9 |
53 |
TC1 |
Lvalue-to-rvalue conversion before certain static_casts
|
5.2.9 |
54 |
CD1 |
Static_cast from private base to derived class
|
5.2.9 |
128 |
TC1 |
Casting between enum types
|
5.2.9 |
137 |
TC1 |
static_cast of cv void*
|
5.2.9 |
294 |
NAD |
Can static_cast drop exception specifications?
|
5.2.9 |
427 |
CD1 |
static_cast ambiguity: conversion versus cast to derived
|
5.2.9 |
439 |
CD1 |
Guarantees on casting pointer back to cv-qualified version of original type
|
5.2.9 |
671 |
CD1 |
Explicit conversion from a scoped enumeration type to integral type
|
5.2.9 |
833 |
CD2 |
Explicit conversion of a scoped enumeration value to a floating type
|
5.2.9 |
1011 |
DR |
Standard conversions that cannot be inverted
|
5.2.9 |
1094 |
ready |
Converting floating-point values to scoped enumeration types
|
5.2.10 |
195 |
CD1 |
Converting between function and object pointers
|
5.2.10 |
463 |
CD1 |
reinterpret_cast<T*>(0)
|
5.2.10 |
573 |
ready |
Conversions between function pointers and void*
|
5.2.10 |
658 |
CD2 |
Defining reinterpret_cast for pointer types
|
5.2.10 |
734 |
CD2 |
Are unique addresses required for namespace-scope variables?
|
5.2.10 |
799 |
CD2 |
Can reinterpret_cast be used to cast an operand to its own type?
|
5.2.10 |
800 |
NAD |
Safely-derived pointers and object pointers converted from function pointers
|
5.2.10 |
842 |
CD2 |
Casting to rvalue reference type
|
5.2.10 |
944 |
open |
reinterpret_cast for all types with the same size and alignment
|
5.2.10 |
1120 |
ready |
reinterpret_cast and void*
|
5.2.11 |
801 |
CD2 |
Casting away constness in a cast to rvalue reference type
|
5.2.11 |
891 |
CD2 |
const_cast to rvalue reference from objectless rvalue
|
5.2.11 |
1086 |
DR |
const_cast to rvalue reference to function type
|
5.3 |
342 |
review |
Terminology: "indirection" versus "dereference"
|
5.3.1 |
203 |
open |
Type of address-of-member expression
|
5.3.1 |
232 |
drafting |
Is indirection through a null pointer undefined behavior?
|
5.3.1 |
324 |
CD1 |
Can "&" be applied to assignment to bit-field?
|
5.3.1 |
610 |
NAD |
Computing the negative of 0U
|
5.3.1 |
802 |
concepts |
Problems with restrictions on taking the address of a member of a concept map
|
5.3.1 |
983 |
CD2 |
Ambiguous pointer-to-member constant
|
5.3.1 |
1121 |
DR |
Unnecessary ambiguity error in formation of pointer to member
|
5.3.3 |
803 |
CD2 |
sizeof an enumeration type with a fixed underlying type
|
5.3.3 |
839 |
dup |
sizeof with opaque enumerations
|
5.3.3 |
1122 |
DR |
Circular definition of std::size_t
|
5.3.4 |
31 |
NAD |
Looking up new/delete
|
5.3.4 |
74 |
TC1 |
Enumeration value in direct-new-declarator
|
5.3.4 |
127 |
TC1 |
Ambiguity in description of matching deallocation function
|
5.3.4 |
130 |
NAD |
Sequence points and new-expressions
|
5.3.4 |
256 |
CD1 |
Overflow in size calculations
|
5.3.4 |
267 |
open |
Alignment requirement for new-expressions
|
5.3.4 |
292 |
review |
Deallocation on exception in new before arguments evaluated
|
5.3.4 |
299 |
CD1 |
Conversion on array bound expression in new
|
5.3.4 |
313 |
dup |
Class with single conversion function to integral as array size in new
|
5.3.4 |
429 |
CD1 |
Matching deallocation function chosen based on syntax or signature?
|
5.3.4 |
473 |
open |
Block-scope declarations of allocator functions
|
5.3.4 |
476 |
open |
Determining the buffer size for placement new
|
5.3.4 |
624 |
CD1 |
Overflow in calculating size of allocation
|
5.3.4 |
672 |
CD2 |
Sequencing of initialization in new-expressions
|
5.3.4 |
804 |
CD2 |
Deducing the type in new auto(x)
|
5.3.4 |
805 |
CD2 |
Which exception to throw for overflow in array size calculation
|
5.3.4 |
901 |
drafting |
Deleted operator delete
|
5.3.4 |
1061 |
DR |
Negative array bounds in a new-expression
|
5.3.5 |
196 |
open |
Arguments to deallocation functions |
5.3.5 |
265 |
dup |
Destructors, exceptions, and deallocation
|
5.3.5 |
288 |
CD1 |
Misuse of "static type" in describing pointers
|
5.3.5 |
353 |
CD1 |
Is deallocation routine called if destructor throws exception in delete?
|
5.3.5 |
442 |
CD1 |
Incorrect use of null pointer constant in description of delete operator
|
5.3.5 |
599 |
CD2 |
Deleting a null function pointer
|
5.3.5 |
1037 |
DR |
Requirements for operands of delete-expressions and deallocation functions
|
5.3.6 |
659 |
CD1 |
Alignment of function types
|
5.3.6 |
930 |
CD2 |
alignof with incomplete array type
|
5.3.6 |
1008 |
extension |
Querying the alignment of an object
|
5.3.7 |
1123 |
DR |
Destructors should be noexcept by default
|
5.4 |
242 |
open |
Interpretation of old-style casts
|
5.4 |
520 |
CD1 |
Old-style casts between incomplete class types
|
5.4 |
909 |
NAD |
Old-style casts with conversion functions
|
5.5 |
497 |
CD1 |
Missing required initialization in example
|
5.5 |
1091 |
drafting |
Inconsistent use of the term “object expression”
|
5.5 |
1124 |
NAD |
Error in description of value category of pointer-to-member expression
|
5.6 |
614 |
CD1 |
Results of integer / and %
|
5.7 |
55 |
NAD |
Adding/subtracting pointer and enumeration value
|
5.7 |
179 |
TC1 |
Function pointers and subtraction
|
5.7 |
567 |
NAD |
Can size_t and ptrdiff_t be larger than long?
|
5.8 |
854 |
CD2 |
Left shift and unsigned extended types
|
5.9 |
583 |
open |
Relational pointer comparisons against the null pointer constant
|
5.9 |
622 |
extension |
Relational comparisons of arbitrary pointers
|
5.9 |
661 |
CD1 |
Semantics of arithmetic comparisons
|
5.9 |
963 |
CD2 |
Comparing nullptr with 0
|
5.10 |
73 |
TC1 |
Pointer equality
|
5.16 |
446 |
CD1 |
Does an lvalue-to-rvalue conversion on the "?" operator produce a temporary?
|
5.16 |
587 |
CD2 |
Lvalue operands of a conditional expression differing only in cv-qualification
|
5.17 |
556 |
CD2 |
Conflicting requirements for acceptable aliasing
|
5.17 |
855 |
CD2 |
Incorrect comments in braced-init-list assignment example
|
5.18 |
188 |
TC1 |
Comma operator and rvalue conversion
|
5.19 |
94 |
TC1 |
Inconsistencies in the descriptions of constant expressions
|
5.19 |
97 |
NAD |
Use of bool constants in integral constant expressions
|
5.19 |
236 |
review |
Explicit temporaries and integral constant expressions
|
5.19 |
339 |
CD1 |
Overload resolution in operand of sizeof in constant expression
|
5.19 |
366 |
CD1 |
String literal allowed in integral constant expression?
|
5.19 |
367 |
CD1 |
throw operator allowed in constant expression?
|
5.19 |
457 |
CD1 |
Wording nit on use of const variables in constant expressions
|
5.19 |
487 |
NAD |
Operator overloading in constant expressions
|
5.19 |
530 |
CD1 |
Nontype template arguments in constant expressions
|
5.19 |
652 |
CD2 |
Compile-time evaluation of floating-point expressions
|
5.19 |
684 |
CD1 |
Constant expressions involving the address of an automatic variable
|
5.19 |
715 |
CD2 |
Class member access constant expressions
|
5.19 |
721 |
CD2 |
Where must a variable be initialized to be used in a constant expression?
|
5.19 |
806 |
CD2 |
Enumeration types in integral constant expressions
|
5.19 |
807 |
NAD |
typeid expressions in constant expressions
|
5.19 |
1010 |
CD2 |
Address of object with dynamic storage duration in constant expression
|
5.19 |
1060 |
drafting |
Scoped enumerators in integral constant expressions
|
5.19 |
1098 |
review |
Pointer conversions in constant expressions
|
5.19 |
1099 |
review |
Infinite recursion in constexpr functions
|
5.19 |
1100 |
drafting |
constexpr conversion functions and non-type template arguments
|
5.19 |
1125 |
DR |
Unclear definition of “potential constant expression”
|
5.19 |
1126 |
DR |
constexpr functions in const initializers
|
5.19 |
1127 |
drafting |
Overload resolution in constexpr functions
|
5.19 |
1188 |
review |
Type punning in constant expressions
|
5.19 |
1193 |
ready |
Use of address-constant pointers in constant expressions
|
5.19 |
1197 |
review |
Constexpr arrays
|
6.2 |
1054 |
review |
Lvalue-to-rvalue conversions in expression statements
|
6.4 |
227 |
TC1 |
How many scopes in an if statement?
|
6.4 |
948 |
WP |
constexpr in conditions
|
6.4.1 |
631 |
open |
Jumping into a “then” clause
|
6.5 |
1204 |
review |
Specifiers in a for-range-declaration
|
6.5.4 |
864 |
WP |
braced-init-list in the range-based for statement
|
6.5.4 |
866 |
concepts |
Concept maps and the range-based for
|
6.6 |
276 |
CD1 |
Order of destruction of parameters and temporaries
|
6.6 |
378 |
CD1 |
Wording that says temporaries are declared
|
6.7 |
467 |
NAD |
Jump past initialization of local static variable
|
6.7 |
723 |
concepts |
Archetypes in skipped declarations
|
6.8 |
1223 |
open |
Syntactic disambiguation and trailing-return-types
|
7 |
157 |
open |
Omitted typedef declarator
|
7 |
435 |
NAD |
Change "declararation or definition" to "declaration"
|
7 |
569 |
CD2 |
Spurious semicolons at namespace scope should be allowed
|
7 |
1018 |
drafting |
Ambiguity between simple-declaration and attribute-declaration
|
7 |
1042 |
drafting |
Attributes in alias-declarations
|
7.1 |
808 |
CD2 |
Non-type decl-specifiers versus max-munch
|
7.1 |
1128 |
DR |
attribute-specifiers in decl-specifier-seqs
|
7.1.1 |
69 |
TC1 |
Storage class specifiers on template declarations
|
7.1.1 |
154 |
NAD |
Anonymous unions in unnamed namespaces
|
7.1.1 |
498 |
open |
Storage class specifiers in definitions of class members
|
7.1.1 |
717 |
CD2 |
Unintentional restrictions on the use of thread_local
|
7.1.1 |
809 |
CD2 |
Deprecation of the register keyword
|
7.1.1 |
810 |
CD2 |
Block-scope thread_local variables should be implicitly static
|
7.1.1 |
940 |
CD2 |
Global anonymous unions
|
7.1.2 |
281 |
CD1 |
inline specifier in friend declarations
|
7.1.2 |
317 |
CD1 |
Can a function be declared inline after it has been called?
|
7.1.2 |
376 |
NAD |
Class "definition" versus class "declaration"
|
7.1.2 |
396 |
CD1 |
Misleading note regarding use of auto for disambiguation
|
7.1.2 |
397 |
CD1 |
Same address for string literals from default arguments in inline functions?
|
7.1.2 |
412 |
NAD |
Can a replacement allocation function be inline?
|
7.1.2 |
477 |
CD1 |
Can virtual appear in a friend declaration?
|
7.1.2 |
765 |
CD2 |
Local types in inline functions with external linkage
|
7.1.3 |
56 |
TC1 |
Redeclaring typedefs within classes
|
7.1.3 |
407 |
drafting |
Named class with associated typedef: two names or one?
|
7.1.3 |
422 |
NAD |
Is a typedef redeclaration allowed with a template type that might be the same?
|
7.1.3 |
424 |
CD1 |
Wording problem with issue 56 resolution on redeclaring typedefs in class scope
|
7.1.3 |
576 |
CD2 |
Typedefs in function definitions
|
7.1.5 |
647 |
CD1 |
Non-constexpr instances of constexpr constructor templates
|
7.1.5 |
648 |
CD1 |
Constant expressions in constexpr initializers
|
7.1.5 |
699 |
CD2 |
Must constexpr member functions be defined in the class member-specification?
|
7.1.5 |
700 |
WP |
Constexpr member functions of class templates
|
7.1.5 |
837 |
drafting |
Constexpr functions and return braced-init-list
|
7.1.5 |
860 |
WP |
Explicit qualification of constexpr member functions
|
7.1.5 |
892 |
WP |
Missing requirements for constexpr constructors
|
7.1.5 |
898 |
extension |
Declarations in constexpr functions
|
7.1.5 |
991 |
CD2 |
Reference parameters of constexpr functions and constructors
|
7.1.5 |
1129 |
DR |
Default nothrow for constexpr functions
|
7.1.5 |
1186 |
review |
Non-dependent constexpr violations in function templates
|
7.1.5 |
1194 |
review |
Constexpr references
|
7.1.5 |
1195 |
review |
References to non-literal types in constexpr functions
|
7.1.5 |
1199 |
drafting |
Deleted constexpr functions
|
7.1.5 |
1225 |
review |
constexpr constructors and virtual bases
|
7.1.6 |
539 |
review |
Constraints on type-specifier-seq
|
7.1.6.1 |
76 |
TC1 |
Are const volatile variables considered "constant expressions"?
|
7.1.6.1 |
609 |
open |
What is a “top-level” cv-qualifier?
|
7.1.6.1 |
811 |
CD2 |
Unclear implications of const-qualification
|
7.1.6.2 |
283 |
CD1 |
Template type-parameters are not syntactically type-names
|
7.1.6.2 |
516 |
CD1 |
Use of signed in bit-field declarations
|
7.1.6.2 |
643 |
NAD |
Use of decltype in a class member-specification
|
7.1.6.2 |
651 |
CD1 |
Problems in decltype specification and examples
|
7.1.6.2 |
669 |
NAD |
Confusing specification of the meaning of decltype
|
7.1.6.2 |
950 |
CD2 |
Use of decltype as a class-name
|
7.1.6.2 |
988 |
CD2 |
Reference-to-reference collapsing with decltype
|
7.1.6.2 |
1075 |
DR |
Grammar does not allow template alias in type-name
|
7.1.6.2 |
1130 |
DR |
Function parameter type adjustments and decltype
|
7.1.6.2 |
1212 |
review |
Non-function-call xvalues and decltype
|
7.1.6.3 |
68 |
TC1 |
Grammar does not allow "friend class A<int>;"
|
7.1.6.3 |
144 |
open |
Position of friend specifier
|
7.1.6.3 |
962 |
CD2 |
Attributes appertaining to class and enum types
|
7.1.6.3 |
1131 |
DR |
Template aliases in elaborated-type-specifiers
|
7.1.6.4 |
625 |
CD2 |
Use of auto as a template-argument
|
7.1.6.4 |
629 |
CD1 |
auto parsing ambiguity
|
7.1.6.4 |
706 |
NAD |
Use of auto with rvalue references
|
7.1.6.4 |
711 |
CD2 |
auto with braced-init-list
|
7.1.6.4 |
746 |
CD2 |
Use of auto in new-expressions
|
7.1.6.4 |
984 |
CD2 |
“Deduced type” is unclear in auto type deduction
|
7.2 |
172 |
CD1 |
Unsigned int as underlying type of enum
|
7.2 |
377 |
CD1 |
Enum whose enumerators will not fit in any integral type
|
7.2 |
518 |
CD1 |
Trailing comma following enumerator-list
|
7.2 |
628 |
CD2 |
The values of an enumeration with no enumerator
|
7.2 |
660 |
CD1 |
Unnamed scoped enumerations
|
7.2 |
862 |
CD2 |
Undefined behavior with enumerator value overflow
|
7.2 |
893 |
NAD |
Brace syntax for enumerator-definitions
|
7.2 |
977 |
open |
When is an enumeration type complete?
|
7.2 |
1022 |
ready |
Can an enumeration variable have values outside the values of the enumeration?
|
7.3 |
171 |
TC1 |
Global namespace scope
|
7.3 |
987 |
open |
Which declarations introduce namespace members?
|
7.3.1 |
311 |
NAD |
Using qualified name to reopen nested namespace
|
7.3.1 |
540 |
CD1 |
Propagation of cv-qualifiers in reference-to-reference collapse
|
7.3.1 |
812 |
CD2 |
Duplicate names in inline namespaces
|
7.3.1 |
919 |
CD2 |
Contradictions regarding inline namespaces
|
7.3.1 |
921 |
CD2 |
Unclear specification of inline namespaces
|
7.3.1.1 |
926 |
CD2 |
Inline unnamed namespaces
|
7.3.1.1 |
1012 |
DR |
Undeprecating static
|
7.3.1.2 |
95 |
NAD |
Elaborated type specifiers referencing names declared in friend decls
|
7.3.1.2 |
138 |
drafting |
Friend declaration name lookup
|
7.3.1.2 |
165 |
NAD |
Definitions of friends and block-scope externs
|
7.3.1.2 |
166 |
TC1 |
Friend declarations of template-ids
|
7.3.1.2 |
553 |
NAD |
Problems with friend allocation and deallocation functions
|
7.3.1.2 |
673 |
NAD |
Injection of names from elaborated-type-specifiers in friend declarations
|
7.3.1.2 |
1021 |
open |
Definitions of namespace members
|
7.3.1.2 |
1077 |
extension |
Explicit specializations in non-containing namespaces
|
7.3.3 |
11 |
CD1 |
How do the keywords typename/template interact with using-declarations?
|
7.3.3 |
36 |
open |
using-declarations in multiple-declaration contexts
|
7.3.3 |
101 |
TC1 |
Redeclaration of extern "C" names via using-declarations
|
7.3.3 |
109 |
NAD |
Allowing ::template in using-declarations
|
7.3.3 |
169 |
NAD |
template-ids in using-declarations
|
7.3.3 |
258 |
CD1 |
using-declarations and cv-qualifiers
|
7.3.3 |
386 |
open |
Friend declaration of name brought in by using-declaration
|
7.3.3 |
460 |
CD1 |
Can a using-declaration name a namespace?
|
7.3.3 |
565 |
open |
Conflict rules for using-declarations naming function templates
|
7.3.3 |
813 |
open |
typename in a using-declaration with a non-dependent name
|
7.3.3 |
852 |
open |
using-declarations and dependent base classes
|
7.3.4 |
103 |
TC1 |
Is it extended-namespace-definition or extension-namespace-definition ?
|
7.3.4 |
986 |
CD2 |
Transitivity of using-directives versus qualified lookup
|
7.4 |
461 |
NAD |
Make asm conditionally-supported
|
7.5 |
4 |
CD1 |
Does extern "C" affect the linkage of function names with internal linkage?
|
7.5 |
13 |
extension |
extern "C" for Parameters of Function Templates
|
7.5 |
14 |
NAD |
extern "C" functions and declarations in different namespaces
|
7.5 |
29 |
CD1 |
Linkage of locally declared functions
|
7.5 |
107 |
NAD |
Linkage of operator functions
|
7.5 |
168 |
NAD |
C linkage for static member functions
|
7.5 |
341 |
DR |
extern "C" namespace member function versus global variable
|
7.5 |
358 |
NAD |
Namespaces and extern "C"
|
7.5 |
563 |
open |
Linkage specification for objects
|
7.5 |
564 |
CD2 |
Agreement of language linkage or linkage-specifications?
|
7.5 |
1185 |
review |
Misleading description of language linkage and member function types
|
7.6 |
814 |
CD2 |
Attribute to indicate that a function throws nothing
|
7.6 |
951 |
CD2 |
Problems with attribute-specifiers
|
7.6 |
970 |
CD2 |
Consistent use of “appertain” and “apply”
|
7.6.1 |
815 |
CD2 |
Parameter pack expansion inside attributes
|
7.6.1 |
957 |
CD2 |
Alternative tokens and attribute-tokens
|
7.6.1 |
968 |
CD2 |
Syntactic ambiguity of the attribute notation
|
7.6.1 |
972 |
DR |
Allowing multiple attribute-specifiers
|
7.6.1 |
1031 |
drafting |
Optional elements in attributes
|
7.6.2 |
959 |
CD2 |
Alignment attribute for class and enumeration types
|
7.6.2 |
1033 |
drafting |
Restrictions on alignment attributes
|
7.6.2 |
1036 |
DR |
Alignment attribute in an exception-declaration
|
7.6.2 |
1039 |
DUP |
Coordinating C and C++ alignment specifications
|
7.6.3 |
836 |
NAD |
[[noreturn]] applied to function types
|
7.6.3 |
1132 |
NAD |
Keyword vs attribute for noreturn
|
7.6.4 |
816 |
CD2 |
Diagnosing violations of [[final]]
|
7.6.4 |
817 |
CD2 |
Meaning of [[final]] applied to a class definition
|
7.6.5 |
1063 |
open |
[[hiding]] with non-attribute declarations
|
7.6.5 |
1065 |
DR |
[[hiding]] with [[override]]
|
7.6.5 |
1067 |
NAD |
[[hiding]], using-declarations, and multiple inheritance
|
7.6.5 |
1133 |
open |
Keywords vs attributes for control of hiding and overriding
|
7.6.6 |
965 |
CD2 |
Limiting the applicability of the carries_dependency attribute
|
8 |
736 |
NAD |
Is the & ref-qualifier needed?
|
8 |
770 |
CD2 |
Ambiguity in late-specified return type
|
8 |
979 |
CD2 |
Position of attribute-specifier in declarator syntax
|
8.1 |
686 |
CD1 |
Type declarations/definitions in type-specifier-seqs and type-ids
|
8.2 |
160 |
CD1 |
Missing std:: qualification
|
8.2 |
333 |
NAD |
Ambiguous use of "declaration" in disambiguation section
|
8.2 |
340 |
NAD |
Unclear wording in disambiguation section |
8.3 |
40 |
TC1 |
Syntax of declarator-id
|
8.3 |
159 |
TC1 |
Namespace qualification in declarators
|
8.3 |
374 |
CD2 |
Can explicit specialization outside namespace use qualified name?
|
8.3 |
482 |
review |
Qualified declarators in redeclarations
|
8.3 |
548 |
dup |
qualified-ids in declarations
|
8.3 |
920 |
CD2 |
Interaction of inline namespaces and using-declarations
|
8.3.2 |
453 |
drafting |
References may only bind to “valid” objects
|
8.3.2 |
504 |
open |
Should use of a reference in its own initializer require a diagnostic?
|
8.3.4 |
112 |
CD1 |
Array types and cv-qualifiers
|
8.3.4 |
478 |
NAD |
May a function parameter be an array of an abstract class type?
|
8.3.4 |
701 |
CD2 |
When is the array-to-pointer conversion applied?
|
8.3.4 |
1222 |
open |
Unnecessary restriction on auto array types
|
8.3.5 |
18 |
NAD |
f(TYPE) where TYPE is void should be allowed
|
8.3.5 |
135 |
TC1 |
Class type in in-class member function definitions
|
8.3.5 |
140 |
CD1 |
Agreement of parameter declarations
|
8.3.5 |
262 |
CD1 |
Default arguments and ellipsis
|
8.3.5 |
295 |
CD1 |
cv-qualifiers on function types
|
8.3.5 |
332 |
open |
cv-qualified void parameter types
|
8.3.5 |
393 |
drafting |
Pointer to array of unknown bound in template argument list in parameter
|
8.3.5 |
547 |
review |
Partial specialization on member function types
|
8.3.5 |
550 |
open |
Pointer to array of unknown bound in parameter declarations
|
8.3.5 |
577 |
open |
void in an empty parameter list
|
8.3.5 |
681 |
CD1 |
Restrictions on declarators with late-specified return types
|
8.3.5 |
713 |
CD2 |
Unclear note about cv-qualified function types
|
8.3.5 |
725 |
concepts |
When should the requirement for std::Returnable<T>, etc., apply?
|
8.3.5 |
818 |
CD2 |
Function parameter packs in non-final positions
|
8.3.5 |
956 |
CD2 |
Function prototype scope with late-specified return types
|
8.3.5 |
994 |
DR |
braced-init-list as a default argument
|
8.3.5 |
998 |
dup |
Function parameter transformations and template functions
|
8.3.5 |
1001 |
NAD |
Parameter type adjustment in dependent parameter types
|
8.3.5 |
1069 |
DR |
Incorrect function type with trailing-return-type
|
8.3.5 |
1183 |
review |
Expansion of parameter packs in declarators
|
8.3.6 |
1 |
TC1 |
What if two using-declarations refer to the same function but the declarations introduce different default-arguments?
|
8.3.6 |
15 |
dup |
Default arguments for parameters of function templates
|
8.3.6 |
65 |
TC1 |
Typo in default argument example
|
8.3.6 |
66 |
NAD |
Visibility of default args vs overloads added after using-declaration
|
8.3.6 |
136 |
CD1 |
Default arguments and friend declarations
|
8.3.6 |
217 |
TC1 |
Default arguments for non-template member functions of class templates
|
8.3.6 |
325 |
open |
When are default arguments parsed?
|
8.3.6 |
361 |
open |
Forward reference to default argument
|
8.3.6 |
777 |
CD2 |
Default arguments and parameter packs
|
8.3.6 |
1226 |
open |
Converting a braced-init-list default argument
|
8.4 |
732 |
CD2 |
Late-specified return types in function definitions
|
8.4 |
845 |
CD2 |
What is the “first declaration” of an explicit specialization?
|
8.4 |
906 |
CD2 |
Which special member functions can be defaulted?
|
8.4 |
908 |
CD2 |
Deleted global allocation and deallocation functions
|
8.4 |
915 |
|
Deleted specializations of member function templates
|
8.4 |
928 |
CD2 |
Defaulting a function that would be implicitly defined as deleted
|
8.4.2 |
1134 |
DR |
When is an explicitly-defaulted function defined?
|
8.4.2 |
1135 |
ready |
Explicitly-defaulted non-public special member functions
|
8.4.2 |
1136 |
ready |
Explicitly-defaulted explicit constructors
|
8.4.2 |
1137 |
ready |
Explicitly-defaulted virtual special member functions
|
8.4.3 |
1217 |
NAD |
Are deleted functions implicitly noexcept?
|
8.5 |
5 |
CD1 |
CV-qualifiers and type conversions
|
8.5 |
35 |
TC1 |
Definition of default-initialization
|
8.5 |
78 |
CD1 |
Section 8.5 paragraph 9 should state it only applies to non-static objects
|
8.5 |
151 |
TC1 |
Terminology of zero-initialization
|
8.5 |
155 |
dup |
Brace initializer for scalar
|
8.5 |
177 |
CD1 |
Lvalues vs rvalues in copy-initialization
|
8.5 |
178 |
TC1 |
More on value-initialization
|
8.5 |
253 |
open |
Why must empty or fully-initialized const objects be initialized?
|
8.5 |
277 |
CD1 |
Zero-initialization of pointers
|
8.5 |
302 |
CD1 |
Value-initialization and generation of default constructor
|
8.5 |
304 |
TC1 |
Value-initialization of a reference
|
8.5 |
508 |
WP |
Non-constructed value-initialized objects
|
8.5 |
509 |
CD1 |
Dead code in the specification of default initialization
|
8.5 |
543 |
CD1 |
Value initialization and default constructors
|
8.5 |
611 |
open |
Zero-initializing references
|
8.5 |
615 |
WP |
Incorrect description of variables that can be initialized
|
8.5 |
670 |
open |
Copy initialization via derived-to-base conversion in the second step
|
8.5 |
694 |
DR |
Zero- and value-initialization of union objects
|
8.5 |
869 |
CD2 |
Uninitialized thread_local objects
|
8.5 |
1093 |
open |
Value-initializing non-objects
|
8.5 |
1214 |
drafting |
Kinds of initializers
|
8.5.1 |
163 |
TC1 |
Description of subaggregate initializer
|
8.5.1 |
430 |
CD1 |
Ordering of expression evaluation in initializer list
|
8.5.1 |
491 |
CD1 |
Initializers for empty-class aggregrate members
|
8.5.1 |
632 |
CD1 |
Brace-enclosed initializer for scalar member of aggregate
|
8.5.1 |
886 |
CD2 |
Member initializers and aggregates
|
8.5.1 |
938 |
drafting |
Initializer lists and array new
|
8.5.1 |
1030 |
drafting |
Evaluation order in initializer-lists used in aggregate initialization
|
8.5.1 |
1070 |
DR |
Missing initializer clauses in aggregate initialization
|
8.5.1 |
1097 |
NAD |
Aggregate initialization of function parameters
|
8.5.2 |
737 |
CD2 |
Uninitialized trailing characters in string initialization
|
8.5.2 |
936 |
CD2 |
Array initialization with new string literals
|
8.5.3 |
233 |
drafting |
References vs pointers in UDC overload resolution
|
8.5.3 |
291 |
CD1 |
Overload resolution needed when binding reference to class rvalue
|
8.5.3 |
391 |
CD1 |
Require direct binding of short-lived references to rvalues
|
8.5.3 |
434 |
NAD |
Unclear suppression of standard conversions while binding reference to lvalue
|
8.5.3 |
450 |
CD1 |
Binding a reference to const to a cv-qualified array rvalue
|
8.5.3 |
589 |
CD2 |
Direct binding of class and array rvalues in reference initialization
|
8.5.3 |
656 |
CD2 |
Direct binding to the result of a conversion operator
|
8.5.3 |
664 |
CD2 |
Direct binding of references to non-class rvalue references
|
8.5.3 |
896 |
CD2 |
Rvalue references and rvalue-reference conversion functions
|
8.5.3 |
1058 |
review |
Reference binding of incompatible array types
|
8.5.3 |
1138 |
DR |
Rvalue-ness check for rvalue reference binding is wrong
|
8.5.3 |
1139 |
DR |
Rvalue reference binding to scalar xvalues
|
8.5.4 |
703 |
CD2 |
Narrowing for literals that cannot be exactly represented
|
8.5.4 |
865 |
CD2 |
Initializing a std::initializer_list
|
8.5.4 |
934 |
CD2 |
List-initialization of references
|
8.5.4 |
982 |
NAD |
Initialization with an empty initializer list
|
8.5.4 |
989 |
CD2 |
Misplaced list-initialization example
|
8.5.4 |
990 |
CD2 |
Value initialization with multiple initializer-list constructors
|
8.5.4 |
1078 |
NAD |
Narrowing and the usual arithmetic conversions
|
8.5.4 |
1095 |
review |
List-initialization of references
|
9 |
148 |
TC1 |
POD classes and pointers to members
|
9 |
175 |
CD1 |
Class name injection and base name access
|
9 |
176 |
TC1 |
Name injection and templates
|
9 |
273 |
CD1 |
POD classes and operator&()
|
9 |
284 |
CD1 |
qualified-ids in class declarations
|
9 |
327 |
CD1 |
Use of "structure" without definition
|
9 |
355 |
drafting |
Global-scope :: in nested-name-specifier
|
9 |
379 |
CD1 |
Change "class declaration" to "class definition"
|
9 |
383 |
CD1 |
Is a class with a declared but not defined destructor a POD?
|
9 |
413 |
CD1 |
Definition of "empty class"
|
9 |
511 |
open |
POD-structs with template assignment operators
|
9 |
538 |
CD1 |
Definition and usage
of structure, POD-struct, POD-union,
and POD class
|
9 |
568 |
CD1 |
Definition of POD is too strict
|
9 |
905 |
CD2 |
Explicit defaulted copy constructors and trivial copyability
|
9 |
1140 |
ready |
Incorrect redefinition of POD class
|
9 |
1215 |
review |
Definition of POD struct
|
9.1 |
417 |
CD1 |
Using derived-class qualified name in out-of-class nested class definition
|
9.2 |
75 |
TC1 |
In-class initialized members must be const
|
9.2 |
80 |
TC1 |
Class members with same name as class
|
9.2 |
190 |
TC1 |
Layout-compatible POD-struct types
|
9.2 |
328 |
CD1 |
Missing requirement that class member types be complete
|
9.2 |
437 |
CD1 |
Is type of class allowed in member function exception specification?
|
9.2 |
613 |
CD1 |
Unevaluated uses of non-static class members
|
9.2 |
620 |
CD1 |
Declaration order in layout-compatible POD structs
|
9.2 |
645 |
CD2 |
Are bit-field and non-bit-field members layout compatible?
|
9.2 |
844 |
concepts |
Is a constrained member function a template?
|
9.2 |
874 |
CD2 |
Class-scope definitions of enumeration types
|
9.2 |
924 |
WP |
alias-declaration as a class member
|
9.2 |
1035 |
drafting |
Omitted and required decl-specifiers
|
9.2 |
1041 |
dup |
alias-declarations as class members
|
9.2 |
1072 |
DR |
Scoped enumerator with the same name as its containing class
|
9.2 |
1141 |
open |
Non-static data member initializers have not been implemented
|
9.3 |
1142 |
DR |
friend declaration of member function of containing class
|
9.3.1 |
1005 |
drafting |
Qualified name resolution in member functions of class templates
|
9.3.1 |
1017 |
drafting |
Member access transformation in unevaluated operands
|
9.3.1 |
1143 |
open |
Move semantics for *this have not been implemented
|
9.3.1 |
1207 |
drafting |
Type of class member in trailing-return-type
|
9.3.1 |
1208 |
ready |
Explicit noexcept in defaulted definition
|
9.3.2 |
452 |
CD1 |
Wording nit on description of this
|
9.4 |
67 |
TC1 |
Evaluation of left side of object-expression
|
9.4.1 |
315 |
NAD |
Is call of static member function through null pointer undefined?
|
9.4.2 |
48 |
TC1 |
Definitions of unused static members
|
9.4.2 |
406 |
CD1 |
Static data member in class with name for linkage purposes
|
9.4.2 |
454 |
CD1 |
When is a definition of a static data member required?
|
9.4.2 |
714 |
CD2 |
Static const data members and braced-init-lists
|
9.4.2 |
902 |
NAD |
In-class initialization of non-constant static data members
|
9.4.2 |
1101 |
review |
Non-integral initialized static data members
|
9.4.2 |
1203 |
DUP |
Misleading note regarding initialized static data members
|
9.5 |
57 |
open |
Empty unions
|
9.5 |
359 |
NAD |
Type definition in anonymous union
|
9.5 |
512 |
review |
Union members with user-declared non-default constructors
|
9.5 |
716 |
CD2 |
Specifications that should apply only to non-static union data members
|
9.6 |
58 |
CD1 |
Signedness of bit fields of enum type
|
9.6 |
436 |
CD1 |
Problem in example in 9.6 paragraph 4
|
9.6 |
675 |
open |
Signedness of bit-field with typedef or template parameter type
|
9.6 |
739 |
open |
Signedness of plain bit-fields
|
9.6 |
741 |
WP |
“plain” long long bit-fields
|
9.7 |
347 |
NAD |
Use of derived class name in defining base class nested class
|
9.8 |
198 |
CD1 |
Definition of "use" in local and nested classes
|
9.8 |
696 |
drafting |
Use of block-scope constants in local classes
|
10 |
484 |
CD1 |
Can a base-specifier name a cv-qualified class type?
|
10 |
1019 |
dup |
Dependent simple-template-ids in base-specifiers and mem-initializers
|
10.2 |
39 |
CD1 |
Conflicting ambiguity rules
|
10.2 |
306 |
CD1 |
Ambiguity by class name injection
|
10.2 |
380 |
open |
Definition of "ambiguous base class" missing
|
10.3 |
608 |
CD2 |
Determining the final overrider of a virtual function
|
10.3 |
939 |
CD2 |
Explicitly checking virtual function overriding
|
10.3 |
960 |
CD2 |
Covariant functions and lvalue/rvalue references
|
10.4 |
230 |
open |
Calls to pure virtual functions
|
10.4 |
390 |
CD1 |
Pure virtual must be defined when implicitly called
|
11 |
8 |
CD1 |
Access to template arguments used in a function return type and in the nested name specifier
|
11 |
494 |
CD1 |
Problems with the resolution of issue 45
|
11 |
580 |
drafting |
Access in template-parameters of member and friend definitions
|
11 |
600 |
open |
Does access control apply to members or to names?
|
11.2 |
7 |
NAD |
Can a class with a private virtual base class be derived from?
|
11.2 |
9 |
CD1 |
Clarification of access to base class members
|
11.2 |
16 |
CD1 |
Access to members of indirect private base classes
|
11.2 |
17 |
NAD |
Footnote 99 should discuss the naming class when describing members that can be accessed from friends
|
11.2 |
142 |
TC1 |
Injection-related errors in access example
|
11.2 |
207 |
CD1 |
using-declarations and protected access
|
11.2 |
360 |
open |
Using-declaration that reduces access
|
11.2 |
471 |
NAD |
Conflicting inherited access specifications
|
11.2 |
747 |
open |
Access of protected base classes
|
11.2 |
952 |
drafting |
Insufficient description of “naming class”
|
11.3 |
1144 |
DR |
Remove access declarations
|
11.4 |
77 |
CD1 |
The definition of friend does not allow nested classes to be friends
|
11.4 |
209 |
NAD |
Must friend declaration names be
accessible? |
11.4 |
445 |
NAD |
Wording issue on friend declarations
|
11.4 |
500 |
CD1 |
Access in base-specifiers of friend and nested classes
|
11.4 |
501 |
NAD |
Visibility of friend declarations within the befriending class
|
11.4 |
585 |
NAD |
Friend template template parameters
|
11.4 |
718 |
open |
Non-class, non-function friend declarations
|
11.5 |
19 |
NAD |
Clarify protected member access
|
11.5 |
161 |
TC1 |
Access to protected nested type
|
11.5 |
385 |
CD1 |
How does protected member check of 11.5 interact with using-declarations?
|
11.5 |
472 |
drafting |
Casting across protected inheritance
|
11.5 |
1007 |
NAD |
Protected access and pointers to members
|
11.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 |
45 |
CD1 |
Access to nested classes
|
12 |
819 |
NAD |
Access control and deleted implicitly-declared special member functions
|
12.1 |
194 |
TC1 |
Identifying constructors
|
12.1 |
263 |
CD1 |
Can a constructor be declared a friend?
|
12.1 |
326 |
CD1 |
Wording for definition of trivial constructor
|
12.1 |
331 |
CD1 |
Allowed copy constructor signatures
|
12.1 |
581 |
open |
Can a templated constructor be explicitly instantiated or specialized?
|
12.1 |
738 |
WP |
constexpr not permitted by the syntax of constructor declarations
|
12.1 |
922 |
CD2 |
Implicit default constructor definitions and const variant members
|
12.1 |
927 |
CD2 |
Implicitly-deleted default constructors and member initializers
|
12.1 |
1145 |
ready |
Defaulting and triviality
|
12.1 |
1191 |
drafting |
Deleted subobject destructors and implicitly-defined constructors
|
12.2 |
86 |
CD1 |
Lifetime of temporaries in query expressions
|
12.2 |
117 |
NAD |
Timing of destruction of temporaries
|
12.2 |
124 |
CD1 |
Lifetime of temporaries in default initialization of class arrays
|
12.2 |
199 |
CD1 |
Order of destruction of temporaries
|
12.2 |
201 |
CD1 |
Order of destruction of temporaries in initializers
|
12.2 |
320 |
CD1 |
Question on copy constructor elision example
|
12.2 |
392 |
CD1 |
Use of full expression lvalue before temporary destruction
|
12.2 |
443 |
CD1 |
Wording nit in description of lifetime of temporaries
|
12.2 |
462 |
review |
Lifetime of temporaries bound to comma expressions
|
12.2 |
464 |
CD1 |
Wording nit on lifetime of temporaries to which references are bound
|
12.2 |
650 |
CD2 |
Order of destruction for temporaries bound to the returned value of a function
|
12.2 |
900 |
NAD |
Lifetime of temporaries in range-based for
|
12.3.1 |
152 |
TC1 |
explicit copy constructors
|
12.3.2 |
296 |
CD1 |
Can conversion functions be static?
|
12.3.2 |
395 |
review |
Conversion operator template syntax
|
12.3.2 |
875 |
concepts |
Associated conversion functions converting to the same type
|
12.4 |
193 |
TC1 |
Order of destruction of local automatics of destructor
|
12.4 |
244 |
CD1 |
Destructor lookup
|
12.4 |
252 |
CD1 |
Looking up deallocation functions in virtual destructors
|
12.4 |
272 |
CD1 |
Explicit destructor invocation and qualified-ids
|
12.4 |
344 |
open |
Naming destructors
|
12.4 |
399 |
drafting |
Destructor lookup redux
|
12.4 |
677 |
CD1 |
Deleted operator delete and virtual destructors
|
12.4 |
1029 |
DR |
Type of a destructor call
|
12.4 |
1081 |
ready |
Defaulted destructor and unusable operator delete
|
12.4 |
1146 |
DR |
exception-specifications of defaulted functions
|
12.4 |
1147 |
DR |
Destructors should be default nothrow
|
12.5 |
255 |
open |
Placement deallocation functions and lookup ambiguity
|
12.6 |
510 |
CD1 |
Default initialization of POD classes?
|
12.6 |
542 |
CD2 |
Value initialization of arrays of POD-structs
|
12.6.1 |
363 |
NAD |
Initialization of class from self
|
12.6.2 |
235 |
TC1 |
Assignment vs initialization
|
12.6.2 |
257 |
CD2 |
Abstract base constructors and virtual base initialization
|
12.6.2 |
607 |
open |
Lookup of mem-initializer-ids
|
12.6.2 |
655 |
WP |
Initialization not specified for forwarding constructors
|
12.6.2 |
838 |
open |
Use of this in a brace-or-equal-initializer
|
12.6.2 |
888 |
CD2 |
Union member initializers
|
12.7 |
307 |
NAD |
Initialization of a virtual base class subobject
|
12.7 |
710 |
CD2 |
Data races during construction
|
12.7 |
1202 |
drafting |
Calling virtual functions during destruction
|
12.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?
|
12.8 |
20 |
TC1 |
Some clarifications needed for 12.8 para 15
|
12.8 |
26 |
NAD |
Copy constructors and default arguments
|
12.8 |
111 |
review |
Copy constructors and cv-qualifiers
|
12.8 |
185 |
TC1 |
"Named" temporaries and copy elision
|
12.8 |
356 |
NAD |
Wording of behavior of generated copy constructor for scalar members
|
12.8 |
444 |
NAD |
Overriding and the generated copy assignment operator
|
12.8 |
535 |
review |
Copy construction without a copy constructor
|
12.8 |
574 |
NAD |
Definition of “copy assignment operator”
|
12.8 |
653 |
CD2 |
Copy assignment of unions
|
12.8 |
667 |
CD2 |
Trivial special member functions that cannot be implicitly defined
|
12.8 |
680 |
CD2 |
What is a move constructor?
|
12.8 |
683 |
CD1 |
Requirements for trivial subobject special functions
|
12.8 |
733 |
NAD |
Reference qualification of copy assignment operators
|
12.8 |
887 |
CD2 |
Move construction of thrown object
|
12.8 |
910 |
CD2 |
Move constructors and implicitly-declared copy constructors
|
12.8 |
992 |
NAD |
Inheriting explicitness
|
12.8 |
1020 |
DR |
Implicitly-defined copy constructors and explicit base class constructors
|
12.8 |
1049 |
open |
Copy elision through reference parameters of inline functions
|
12.8 |
1051 |
DR |
Reference members and generated copy constructors
|
12.8 |
1052 |
DUP |
const non-static data member and PODness
|
12.8 |
1064 |
DR |
Defaulted move constructor for a union
|
12.8 |
1066 |
DR |
When is a copy/move assignment operator implicitly defined?
|
12.8 |
1080 |
ready |
Confusing relationship between templates and copy constructors
|
12.8 |
1082 |
drafting |
Implicit copy function if subobject has none?
|
12.8 |
1084 |
NAD |
Conditions for a deleted move function
|
12.8 |
1085 |
NAD |
Move assignment operators and virtual bases
|
12.8 |
1092 |
open |
Cycles in overload resolution during instantiation
|
12.8 |
1148 |
DR |
Copy elision and move construction of function parameters
|
12.8 |
1149 |
ready |
Trivial non-public copy operators in subobjects
|
12.8 |
1224 |
review |
constexpr defaulted copy constructors
|
12.9 |
1150 |
open |
Inheriting constructors have not been implemented
|
13 |
1016 |
DR |
Overloadable declarations, function templates, and references
|
13.3 |
999 |
CD2 |
“Implicit” or “implied” object argument/parameter?
|
13.3.1.1 |
162 |
CD1 |
(&C::f)() with nonstatic members
|
13.3.1.1 |
704 |
CD2 |
To which postfix-expressions does overload resolution apply?
|
13.3.1.1.1 |
239 |
CD1 |
Footnote 116 and Koenig lookup
|
13.3.1.1.1 |
364 |
CD1 |
Calling overloaded function with static in set, with no object
|
13.3.1.1.2 |
280 |
CD1 |
Access and surrogate call functions
|
13.3.1.2 |
102 |
NAD |
Operator lookup rules do not work well with parts of the library
|
13.3.1.2 |
416 |
CD1 |
Class must be complete to allow operator lookup?
|
13.3.1.2 |
423 |
NAD |
Can a conversion be done on the left operand of a compound assignment?
|
13.3.1.2 |
545 |
open |
User-defined conversions and built-in operator overload resolution
|
13.3.1.3 |
604 |
CD2 |
Argument list for overload resolution in copy-initialization
|
13.3.1.4 |
59 |
TC1 |
Clarification of overloading and UDC to reference type
|
13.3.1.4 |
899 |
CD2 |
Explicit conversion functions in direct class initialization
|
13.3.1.4 |
1087 |
DR |
Additional applications of issue 899
|
13.3.1.7 |
1151 |
ready |
Overload resolution with initializer-list and non-list constructors
|
13.3.2 |
641 |
CD2 |
Overload resolution and conversion-to-same-type operators
|
13.3.2 |
877 |
CD2 |
Viable functions and binding references to rvalues
|
13.3.2 |
1152 |
DR |
Rules for determining existence of implicit conversion sequence
|
13.3.3 |
51 |
TC1 |
Overloading and user-defined conversions
|
13.3.3 |
418 |
open |
Imperfect wording on error on multiple default arguments on a called function
|
13.3.3 |
455 |
open |
Partial ordering and non-deduced arguments
|
13.3.3 |
495 |
CD2 |
Overload resolution with template and non-template conversion functions
|
13.3.3.1 |
84 |
TC1 |
Overloading and conversion loophole used by auto_ptr
|
13.3.3.1 |
978 |
CD2 |
Incorrect specification for copy initialization
|
13.3.3.1.2 |
243 |
NAD |
Weighting of conversion functions in direct-initialization
|
13.3.3.1.4 |
60 |
CD1 |
Reference binding and valid conversion sequences
|
13.3.3.1.4 |
953 |
CD2 |
Rvalue references and function viability
|
13.3.3.1.4 |
1205 |
DUP |
Lvalue reference binding and function viability
|
13.3.3.2 |
83 |
TC1 |
Overloading and deprecated conversion of string literal
|
13.3.3.2 |
153 |
TC1 |
Misleading wording (rank of conversion)
|
13.3.3.2 |
702 |
CD2 |
Preferring conversion to std::initializer_list
|
13.3.3.2 |
961 |
CD2 |
Overload resolution and conversion of std::nullptr_t to bool
|
13.3.3.2 |
1079 |
review |
Overload resolution involving aggregate initialization
|
13.4 |
61 |
NAD |
Address of static member function "&p->f"
|
13.4 |
115 |
CD1 |
Address of template-id
|
13.4 |
202 |
TC1 |
Use of overloaded function name
|
13.4 |
247 |
NAD |
Pointer-to-member casts and function overload resolution
|
13.4 |
250 |
TC1 |
Address of function template specialization with non-deduced template arguments
|
13.4 |
1038 |
open |
Overload resolution of &x.static_func
|
13.4 |
1153 |
DR |
Type matching in address of overloaded function
|
13.5.3 |
221 |
CD1 |
Must compound assignment operators be member functions?
|
13.5.6 |
420 |
CD1 |
postfixexpression->scalar_type_dtor() inconsistent
|
13.5.8 |
935 |
CD2 |
Missing overloads for character types for user-defined literals
|
13.6 |
27 |
NAD |
Overload ambiguities for builtin ?: prototypes
|
13.6 |
260 |
drafting |
User-defined conversions and built-in operator=
|
13.6 |
425 |
CD1 |
Set of candidates for overloaded built-in operator with float operand
|
13.6 |
507 |
dup |
Ambiguity assigning class object to built-in type
|
13.6 |
749 |
CD2 |
References to function types with a cv-qualifier or ref-qualifier
|
13.6 |
878 |
concepts |
Effective class types in built-in pointer-to-member operator
|
13.6 |
879 |
CD2 |
Missing built-in comparison operators for pointer types
|
13.6 |
880 |
CD2 |
Built-in conditional operator for scoped enumerations
|
13.6 |
954 |
open |
Overload resolution of conversion operator templates with built-in types
|
14 |
32 |
TC1 |
Clarification of explicit instantiation of non-exported templates
|
14 |
72 |
dup |
Linkage and storage class specifiers for templates
|
14 |
105 |
TC1 |
Meaning of "template function"
|
14 |
110 |
open |
Can template functions and classes be declared in the same scope?
|
14 |
134 |
TC1 |
Template classes and declarator-ids
|
14 |
204 |
CD1 |
Exported class templates
|
14 |
205 |
drafting |
Templates and static data members
|
14 |
323 |
CD1 |
Where must export appear?
|
14 |
335 |
CD1 |
Allowing export on template members of nontemplate classes
|
14 |
534 |
CD1 |
template-names and operator-function-ids
|
14 |
728 |
extension |
Restrictions on local classes
|
14 |
820 |
CD2 |
Deprecation of export
|
14 |
821 |
concepts |
Exported concept map templates?
|
14 |
822 |
extension |
Additional contexts for template aliases
|
14 |
1009 |
DR |
Missing cases in the declarator-id of a function template declaration
|
14 |
1096 |
drafting |
Missing requirement for template definitions
|
14.1 |
21 |
TC1 |
Can a default argument for a template parameter appear in a friend declaration?
|
14.1 |
49 |
TC1 |
Restriction on non-type, non-value template arguments
|
14.1 |
184 |
CD1 |
Default arguments in template template-parameters
|
14.1 |
187 |
TC1 |
Scope of template parameter names
|
14.1 |
215 |
CD1 |
Template parameters are not allowed in nested-name-specifiers
|
14.1 |
226 |
CD1 |
Default template arguments for function templates
|
14.1 |
401 |
CD1 |
When is access for template parameter default arguments checked?
|
14.1 |
691 |
WP |
Template parameter packs in class template partial specializations
|
14.1 |
778 |
review |
Template parameter packs in non-type template parameters
|
14.1 |
840 |
CD2 |
Rvalue references as nontype template parameters
|
14.1 |
881 |
concepts |
Inconsistent requirement for naming template parameters
|
14.1 |
1006 |
DR |
std::nullptr_t as a non-type template parameter
|
14.1 |
1068 |
drafting |
Template aliases with default arguments and template parameter packs
|
14.1 |
1179 |
NAD |
Cv-qualification of non-type template parameters
|
14.2 |
30 |
TC1 |
Valid uses of "::template"
|
14.2 |
38 |
TC1 |
Explicit template arguments and operator functions
|
14.2 |
96 |
WP |
Syntactic disambiguation using the template keyword
|
14.2 |
228 |
CD1 |
Use of template keyword with non-member templates
|
14.2 |
301 |
CD1 |
Syntax for template-name
|
14.2 |
314 |
drafting |
template in base class specifier
|
14.2 |
343 |
open |
Make template optional in contexts that require a type
|
14.2 |
431 |
WP |
Defect in wording in 14.2
|
14.2 |
468 |
CD1 |
Allow ::template outside of templates
|
14.2 |
552 |
NAD |
Use of typename in the type in a non-type parameter-declaration
|
14.2 |
579 |
open |
What is a “nested” > or >>?
|
14.2 |
867 |
concepts |
Naming a specialization of a constrained template
|
14.2 |
868 |
concepts |
Specifying a concept map in the name of a specialization
|
14.3 |
246 |
CD1 |
Jumps in function-try-block handlers
|
14.3 |
372 |
CD1 |
Is access granted by base class specifiers available in following base class specifiers?
|
14.3 |
440 |
open |
Allow implicit pointer-to-member conversion on nontype template argument
|
14.3.1 |
62 |
CD1 |
Unnamed members of classes used as type parameters
|
14.3.2 |
100 |
TC1 |
Clarify why string literals are not allowed as template arguments
|
14.3.2 |
354 |
CD1 |
Null as nontype template argument
|
14.3.2 |
773 |
WP |
Parentheses in address non-type template arguments
|
14.3.2 |
823 |
CD2 |
Literal types with constexpr conversions as non-type template arguments
|
14.3.2 |
1023 |
DUP |
thread_local objects as non-type template arguments
|
14.3.2 |
1025 |
DR |
Use of a reference as a non-type template argument
|
14.3.2 |
1154 |
DR |
Address of thread_local variable as non-type template argument
|
14.3.2 |
1155 |
DR |
Internal-linkage non-type template arguments
|
14.3.3 |
150 |
open |
Template template parameters and default arguments
|
14.3.3 |
744 |
CD2 |
Matching template arguments with template template parameters with parameter packs
|
14.3.3 |
849 |
concepts |
Constraints and template template parameters
|
14.4 |
603 |
CD1 |
Type equivalence and unsigned overflow
|
14.4 |
679 |
CD1 |
Equivalence of template-ids and operator function templates
|
14.5.1 |
824 |
concepts |
Constrained special member functions
|
14.5.1 |
843 |
concepts |
Unclear interaction of constraints and special member functions
|
14.5.1 |
1206 |
review |
Defining opaque enumeration members of class templates
|
14.5.1.1 |
249 |
TC1 |
What is a member function template?
|
14.5.1.3 |
408 |
CD2 |
sizeof applied to unknown-bound array static data member of template
|
14.5.2 |
114 |
NAD |
Virtual overriding by template member function specializations
|
14.5.2 |
582 |
CD1 |
Template conversion functions
|
14.5.3 |
1002 |
NAD |
Pack expansion for function arguments
|
14.5.3 |
1032 |
drafting |
Empty pack expansions
|
14.5.3 |
1182 |
review |
Incorrect description of pack expansion syntax
|
14.5.4 |
47 |
NAD |
Template friend issues
|
14.5.4 |
329 |
CD1 |
Evaluation of friends of templates
|
14.5.4 |
410 |
CD1 |
Paragraph missed in changes for issue 166
|
14.5.4 |
638 |
CD2 |
Explicit specialization and friendship
|
14.5.4 |
674 |
WP |
“matching specialization” for a friend declaration
|
14.5.5 |
229 |
NAD |
Partial specialization of function templates
|
14.5.5 |
286 |
CD1 |
Incorrect example in partial specialization
|
14.5.5 |
517 |
CD1 |
Partial specialization following explicit instantiation
|
14.5.5 |
708 |
open |
Partial specialization of member templates of class templates
|
14.5.5 |
996 |
drafting |
Ambiguous partial specializations of member class templates
|
14.5.5.1 |
549 |
drafting |
Non-deducible parameters in partial specializations
|
14.5.6.1 |
116 |
TC1 |
Equivalent and functionally-equivalent function templates
|
14.5.6.1 |
310 |
open |
Can function templates differing only in parameter cv-qualifiers be overloaded?
|
14.5.6.2 |
23 |
open |
Some questions regarding partial ordering of function templates
|
14.5.6.2 |
200 |
dup |
Partial ordering and explicit arguments
|
14.5.6.2 |
214 |
CD1 |
Partial ordering of function templates is underspecified
|
14.5.6.2 |
402 |
open |
More on partial ordering of function templates
|
14.5.6.2 |
532 |
WP |
Member/nonmember operator template partial ordering
|
14.5.6.2 |
1156 |
DR |
Partial ordering in a non-call context
|
14.5.6.2 |
1157 |
open |
Partial ordering of function templates is still underspecified
|
14.5.7 |
851 |
concepts |
Constraints and template aliases
|
14.5.7 |
929 |
CD2 |
What is a template alias?
|
14.5.7 |
1056 |
review |
Template aliases, member definitions, and the current instantiation
|
14.5.7 |
1158 |
DR |
Recursive instantiation via alias template
|
14.5.7 |
1159 |
DR |
Class and enumeration definitions in template aliases
|
14.6 |
120 |
TC1 |
Nonexistent non-terminal qualified-name
|
14.6 |
121 |
TC1 |
Dependent type names with non-dependent nested-name-specifiers
|
14.6 |
180 |
CD1 |
typename and elaborated types
|
14.6 |
183 |
TC1 |
typename in explicit specializations
|
14.6 |
345 |
CD1 |
Misleading comment on example in templates chapter
|
14.6 |
375 |
dup |
Confusing example on lookup with typename
|
14.6 |
382 |
CD1 |
Allow typename outside of templates
|
14.6 |
409 |
CD1 |
Obsolete paragraph missed by changes for issue 224
|
14.6 |
559 |
CD1 |
Editing error in issue 382 resolution
|
14.6 |
560 |
drafting |
Use of the typename keyword in return types
|
14.6 |
666 |
CD1 |
Dependent qualified-ids without the typename keyword
|
14.6 |
1161 |
DR |
Dependent nested-name-specifier in a pointer-to-member declarator
|
14.6 |
1162 |
NAD |
Dependent elaborated-type-specifiers in non-deduced contexts
|
14.6.1 |
186 |
open |
Name hiding and template template-parameters
|
14.6.1 |
316 |
NAD |
Injected-class-name of template used as template template parameter
|
14.6.1 |
448 |
WP |
Set of template functions in call with dependent explicit argument
|
14.6.1 |
458 |
WP |
Hiding of member template parameters by other members
|
14.6.1 |
459 |
open |
Hiding of template parameters by base class members
|
14.6.1 |
602 |
review |
When is the injected-class-name of a class template a template?
|
14.6.1 |
1004 |
review |
Injected-class-names as arguments for template template parameters
|
14.6.2 |
213 |
TC1 |
Lookup in dependent base classes
|
14.6.2 |
515 |
CD1 |
Non-dependent references to base class members
|
14.6.2 |
524 |
CD1 |
Can function-notation calls to operator functions be dependent?
|
14.6.2 |
544 |
NAD |
Base class lookup in explicit specialization
|
14.6.2 |
588 |
CD2 |
Searching dependent bases of classes local to function templates
|
14.6.2 |
591 |
open |
When a dependent base class is the current instantiation
|
14.6.2.1 |
108 |
TC1 |
Are classes nested in templates dependent?
|
14.6.2.1 |
224 |
CD1 |
Definition of dependent names
|
14.6.2.1 |
502 |
WP |
Dependency of nested enumerations and enumerators
|
14.6.2.1 |
590 |
open |
Nested classes and the “current instantiation”
|
14.6.2.1 |
1043 |
drafting |
Qualified name lookup in the current instantiation
|
14.6.2.1 |
1057 |
review |
decltype and the current instantiation
|
14.6.2.1 |
1160 |
DR |
Definitions of template members and the current instantiation
|
14.6.2.2 |
334 |
NAD |
Is a comma-expression dependent if its first operand is?
|
14.6.2.2 |
541 |
CD2 |
Dependent function types
|
14.6.2.3 |
447 |
CD1 |
Is offsetof type-dependent?
|
14.6.2.3 |
903 |
open |
Value-dependent integral null pointer constants
|
14.6.2.3 |
1047 |
DR |
When is typeid value-dependent?
|
14.6.2.3 |
1074 |
review |
Value-dependent noexcept-expressions
|
14.6.2.3 |
1088 |
review |
Dependent non-type template arguments
|
14.6.3 |
206 |
TC1 |
Semantic constraints on non-dependent names
|
14.6.4 |
2 |
drafting |
How can dependent names be used in member declarations that appear outside of the class template definition?
|
14.6.4 |
22 |
TC1 |
Template parameter with a default argument that refers to itself
|
14.6.4 |
1028 |
drafting |
Dependent names in non-defining declarations
|
14.6.4.1 |
287 |
drafting |
Order dependencies in template instantiation
|
14.6.4.1 |
993 |
drafting |
Freedom to perform instantiation at the end of the translation unit
|
14.6.4.2 |
197 |
CD1 |
Issues with two-stage lookup of dependent names
|
14.6.4.2 |
561 |
CD2 |
Internal linkage functions in dependent name lookup
|
14.6.5 |
387 |
CD1 |
Errors in example in 14.6.5
|
14.7 |
259 |
CD1 |
Restrictions on explicit specialization and instantiation
|
14.7.1 |
34 |
NAD |
Argument dependent lookup and points of instantiation
|
14.7.1 |
63 |
CD1 |
Class instantiation from pointer conversion to void*, null and self
|
14.7.1 |
212 |
drafting |
Implicit instantiation is not described clearly enough
|
14.7.1 |
489 |
NAD |
Must member function templates be instantiated during overload resolution?
|
14.7.1 |
525 |
CD1 |
Missing * in example
|
14.7.2 |
46 |
NAD |
Explicit instantiation of member templates
|
14.7.2 |
237 |
CD1 |
Explicit instantiation and base class members
|
14.7.2 |
293 |
open |
Syntax of explicit instantiation/specialization too permissive
|
14.7.2 |
470 |
CD1 |
Instantiation of members of an explicitly-instantiated class template
|
14.7.2 |
546 |
WP |
Explicit instantiation of class template members
|
14.7.2 |
551 |
CD1 |
When is inline permitted in an explicit instantiation?
|
14.7.2 |
969 |
CD2 |
Explicit instantiation declarations of class template specializations
|
14.7.2 |
980 |
CD2 |
Explicit instantiation of a member of a class template
|
14.7.2 |
995 |
CD2 |
Incorrect example for using-declaration and explicit instantiation
|
14.7.2 |
1045 |
NAD |
Requiring explicit instantiation declarations
|
14.7.2 |
1046 |
open |
What is a “use” of a class specialization?
|
14.7.2 |
1163 |
NAD |
extern template prevents inlining functions not marked inline
|
14.7.2 |
1196 |
review |
Definition required for explicit instantiation after explicit specialization?
|
14.7.3 |
3 |
NAD |
The template compilation model rules render some explicit specialization declarations not visible during instantiation
|
14.7.3 |
24 |
TC1 |
Errors in examples in 14.7.3
|
14.7.3 |
44 |
CD1 |
Member specializations
|
14.7.3 |
64 |
TC1 |
Partial ordering to disambiguate explicit specialization
|
14.7.3 |
88 |
NAD |
Specialization of member constant templates
|
14.7.3 |
182 |
NAD |
Access checking on explicit specializations
|
14.7.3 |
275 |
CD1 |
Explicit instantiation/specialization and using-directives
|
14.7.3 |
285 |
NAD |
Identifying a function template being specialized
|
14.7.3 |
336 |
CD1 |
Explicit specialization examples are still incorrect
|
14.7.3 |
529 |
drafting |
Use of template<> with “explicitly-specialized” class templates
|
14.7.3 |
531 |
review |
Defining members of explicit specializations
|
14.7.3 |
605 |
WP |
Linkage of explicit specializations
|
14.7.3 |
621 |
WP |
Template argument deduction from function return types
|
14.7.3 |
727 |
extension |
In-class explicit specializations
|
14.7.3 |
730 |
CD2 |
Explicit specializations of members of non-template classes
|
14.7.3 |
884 |
CD2 |
Defining an explicitly-specialized static data member
|
14.7.3 |
923 |
CD2 |
Inline explicit specializations
|
14.7.3 |
941 |
WP |
Explicit specialization of deleted function template
|
14.8.1 |
241 |
TC1 |
Error in example in 14.8.1
|
14.8.1 |
264 |
open |
Unusable template constructors and conversion functions
|
14.8.2 |
271 |
open |
Explicit instantiation and template argument deduction
|
14.8.2 |
297 |
open |
Which template does an explicit specialization specialize?
|
14.8.2 |
337 |
CD1 |
Attempt to create array of abtract type should cause deduction to fail
|
14.8.2 |
368 |
CD1 |
Uses of non-type parameters that should cause deduction to fail
|
14.8.2 |
398 |
CD1 |
Ambiguous wording on naming a type in deduction
|
14.8.2 |
486 |
CD1 |
Invalid return types and template argument deduction
|
14.8.2 |
488 |
CD1 |
Local types, overload resolution, and template argument deduction
|
14.8.2 |
575 |
WP |
Criteria for deduction failure
|
14.8.2 |
657 |
CD2 |
Abstract class parameter in synthesized declaration
|
14.8.2 |
662 |
NAD |
Forming a pointer to a reference type
|
14.8.2 |
697 |
open |
Deduction rules apply to more than functions
|
14.8.2 |
709 |
WP |
Enumeration names as nested-name-specifiers in deduction failure
|
14.8.2 |
1170 |
drafting |
Access checking during template argument deduction
|
14.8.2 |
1172 |
drafting |
“instantiation-dependent” constructs
|
14.8.2.1 |
99 |
NAD |
Partial ordering, references and cv-qualifiers
|
14.8.2.1 |
352 |
CD1 |
Nondeduced contexts
|
14.8.2.1 |
503 |
open |
Cv-qualified function types in template argument deduction
|
14.8.2.1 |
522 |
CD1 |
Array-to-pointer decay in template argument deduction
|
14.8.2.1 |
606 |
CD1 |
Template argument deduction for rvalue references
|
14.8.2.1 |
847 |
CD2 |
Error in rvalue reference deduction example
|
14.8.2.1 |
876 |
CD2 |
Type references in rvalue reference deduction specification
|
14.8.2.1 |
1014 |
NAD |
Overload resolution between const T& and T&&
|
14.8.2.1 |
1164 |
DR |
Partial ordering of f(T&) and f(T&&)
|
14.8.2.1 |
1184 |
drafting |
Argument conversions to nondeduced parameter types
|
14.8.2.3 |
322 |
CD1 |
Deduction of reference conversions
|
14.8.2.3 |
349 |
CD1 |
Template argument deduction for conversion functions and qualification conversions
|
14.8.2.3 |
493 |
CD2 |
Type deduction from a bool context
|
14.8.2.3 |
913 |
CD2 |
Deduction rules for array- and function-type conversion functions
|
14.8.2.3 |
976 |
CD2 |
Deduction for const T& conversion operators
|
14.8.2.4 |
885 |
NAD |
Partial ordering of function templates with unordered parameter pairs
|
14.8.2.4 |
1221 |
open |
Partial ordering and reference collapsing
|
14.8.2.5 |
70 |
CD1 |
Is an array bound a nondeduced context?
|
14.8.2.5 |
181 |
TC1 |
Errors in template template-parameter example
|
14.8.2.5 |
300 |
CD1 |
References to functions in template argument deduction
|
14.8.2.5 |
469 |
NAD |
Const template specializations and reference arguments
|
14.8.2.5 |
526 |
CD1 |
Confusing aspects in the specification of non-deduced contexts
|
14.8.2.5 |
586 |
NAD |
Default template-arguments and template argument deduction
|
14.8.2.5 |
692 |
drafting |
Partial ordering of variadic class template partial specializations
|
14.8.2.5 |
873 |
WP |
Deducing rvalue references in declarative contexts
|
14.8.2.6 |
1178 |
review |
Deduction failure matching placement new
|
14.8.3 |
415 |
CD1 |
Template deduction does not cause instantiation
|
14.8.3 |
947 |
extension |
Deducing type template arguments from default function arguments
|
15 |
98 |
TC1 |
Branching into try block
|
15 |
211 |
NAD |
Constructors should not be allowed to return normally after an exception
|
15.1 |
104 |
NAD |
Destroying the exception temp when no handler is found
|
15.1 |
208 |
CD1 |
Rethrowing exceptions in nested handlers
|
15.1 |
428 |
CD1 |
Mention of expression with reference type
|
15.1 |
479 |
CD1 |
Copy elision in exception handling
|
15.1 |
499 |
CD2 |
Throwing an array of unknown size
|
15.1 |
828 |
CD2 |
Destruction of exception objects
|
15.2 |
592 |
CD1 |
Exceptions during construction of local static objects
|
15.2 |
1165 |
DR |
Exceptions when destroying array elements
|
15.3 |
210 |
TC1 |
What is the type matched by an exception handler?
|
15.3 |
308 |
NAD |
Catching exceptions with ambiguous base classes
|
15.3 |
388 |
review |
Catching base*& from a throw of derived*
|
15.3 |
593 |
NAD |
Falling off the end of a destructor's function-try-block handler
|
15.3 |
729 |
review |
Qualification conversions and handlers of reference-to-pointer type
|
15.3 |
971 |
open |
Incorrect treatment of exception-declarations
|
15.3 |
1166 |
open |
exception-declarations that do not declare objects
|
15.3 |
1218 |
review |
What is the “currently-handled exception” in a multi-threaded program?
|
15.4 |
25 |
TC1 |
Exception specifications and pointers to members
|
15.4 |
87 |
CD1 |
Exception specifications on function parameters
|
15.4 |
92 |
open |
Should exception specifications be part of the type system?
|
15.4 |
126 |
TC1 |
Exception specifications and const
|
15.4 |
133 |
dup |
Exception specifications and checking
|
15.4 |
346 |
NAD |
Typo in 15.4
|
15.4 |
595 |
open |
Exception specifications in templates instantiated from class bodies
|
15.4 |
829 |
NAD |
At what point is std::unexpected called?
|
15.4 |
830 |
CD2 |
Deprecating exception specifications
|
15.4 |
973 |
CD2 |
Function types in exception-specifications
|
15.4 |
1053 |
NAD |
Terminate vs undefined behavior for noexcept violation
|
15.4 |
1073 |
ready |
Merging dynamic-exception-specifications and noexcept-specifications
|
15.4 |
1167 |
ready |
function-try-blocks for destructors
|
15.4 |
1216 |
review |
Exceptions “allowed” by a noexcept-specification
|
15.5.1 |
219 |
open |
Cannot defend against destructors that throw exceptions
|
15.5.1 |
668 |
CD2 |
Throwing an exception from the destructor of a local static object
|
15.5.1 |
1168 |
DR |
Additional reasons to call std::terminate
|
15.5.1 |
1171 |
DR |
Partial stack unwinding with noexcept violation
|
15.5.2 |
596 |
open |
Replacing an exception object
|
15.5.3 |
37 |
NAD |
When is uncaught_exception() true?
|
15.5.3 |
475 |
WP |
When is std::uncaught_exception() true? (take 2)
|
16 |
394 |
CD1 |
identifier-list is never defined
|
16.1 |
601 |
CD2 |
Type of literals in preprocessing expressions
|
16.1 |
618 |
CD2 |
Casts in preprocessor conditional expressions
|
16.1 |
925 |
open |
Type of character literals in preprocessor expressions
|
16.2 |
370 |
CD1 |
Can #include <...> form be used other than for standard C++ headers?
|
16.2 |
533 |
NAD |
Special treatment for C-style header names
|
16.3.2 |
626 |
CD2 |
Preprocessor string literals
|
16.3.4 |
268 |
open |
Macro name suppression in rescanned replacement text
|
16.5 |
745 |
open |
Effect of ill-formedness resulting from #error
|
16.8 |
1169 |
DR |
Missing feature macro for strict pointer safety
|
16.9 |
897 |
open |
_Pragma and extended string-literals
|
18.6.1.3 |
79 |
dup |
Alignment and placement new
|
A |
266 |
NAD |
No grammar sentence symbol
|
B |
831 |
CD2 |
Limit on recursively nested template instantiations
|
C |
81 |
NAD |
Null pointers and C compatability
|
D |
223 |
open |
The meaning of deprecation
|
D.1 |
145 |
TC1 |
Deprecation of prefix ++
|
D.2 |
167 |
NAD |
Deprecating static functions
|
D.2 |
174 |
NAD |
Undeprecating global static
|
unknown |
106 |
CD1 |
Creating references to references during template deduction/instantiation
|