C++ Standard Core Language Issue Index by Section, Revision 56


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 references in this document reflect the section numbering of document PL22.16/08-0981 = WG21 N2588.




Index by Section


Section Issue Status Title
1.3 357 WP Definition of signature should include name
1.3 449 NAD Consistency in use of hyphen with names of "non" entities
1.3 537 WP Definition of “signature”
1.3 616 open Definition of “indeterminate value”
1.3 690 drafting The dynamic type of an rvalue reference
1.8 513 WP Non-class “most-derived” objects
1.9 129 open Stability of uninitialized auto variables
1.9 612 drafting Requirements on a conforming implementation
1.9 637 ready Sequencing rules and example disagree
1.9 639 ready What makes side effects “different” from one another?
2.1 362 WP Order of initialization in instantiation units
2.1 578 open Phase 1 replacement of characters with universal-character-names
2.2 173 TC1 Constraints on execution character set
2.2 558 WP Excluded characters in universal character names
2.2 630 drafting Equality of narrow and wide character values in the basic character set
2.4 369 drafting Are new/delete identifiers or preprocessing-op-or-punc?
2.12 189 drafting Definition of operator and punctuator
2.13.2 505 WP Conditionally-supported behavior for unknown character escapes
2.13.4 411 open Use of universal-character-name in character versus string literals
3 309 review Linkage of entities whose names are not simply identifiers, in introduction
3 485 DR What is a “name”?
3 633 review Specifications for variables that should also apply to references
3.1 676 drafting static_assert-declarations and general requirements for declarations
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 WP When is a deallocation function "used?"
3.2 289 WP Incomplete list of contexts requiring a complete type
3.2 570 review Are references subject to the ODR?
3.2 678 drafting Language linkage of member function parameter types and the ODR
3.3 481 open Scope of template parameters
3.3 554 review Definition of “declarative region” and “scope”
3.3.1 433 WP Do elaborated type specifiers in templates inject into enclosing namespace scope?
3.3.2 642 review Definition and use of “block scope” and “local scope”
3.3.6 42 NAD Redefining names from base classes
3.3.6 432 WP 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 WP 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 drafting Name lookup in friend declarations
3.4.1 514 WP Is the initializer for a namespace member in the scope of the namespace?
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 WP Friends and Koenig lookup
3.4.2 164 TC1 Overlap between Koenig and normal lookup
3.4.2 218 WP 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 WP Reference to a type as a template-id
3.4.2 557 WP Does argument-dependent lookup cause template instantiation?
3.4.2 598 review Associated namespaces of overloaded functions and function templates
3.4.3.1 298 WP T::x when T is cv-qualified
3.4.3.1 318 WP 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.2 400 WP Using-declarations and the "struct hack"
3.4.4 85 TC1 Redeclaration of member class
3.4.4 245 WP Name lookup in elaborated-type-specifiers
3.4.4 254 WP Definitional problems with elaborated-type-specifiers
3.4.5 141 DR Non-member function templates in member access expressions
3.4.5 156 drafting Name lookup for conversion functions
3.4.5 305 WP Name lookup in destructor call
3.4.5 381 WP Incorrect example of base class member lookup
3.4.5 414 WP Multiple types found on destructor lookup
3.4.5 682 drafting Missing description of lookup of template aliases
3.4.6 373 review Lookup on namespace qualified name in using-directive
3.5 132 NAD Local types and linkage
3.5 216 WP 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 WP 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 WP Unnamed types in entities with linkage
3.5 426 drafting Identically-named variables, one internally and one externally linked, allowed?
3.5 474 WP Block-scope extern declarations in namespace members
3.5 527 drafting Problems with linkage of types
3.5 571 review References declared const
3.6.2 269 NAD Order of initialization of multiply-defined static data members of class templates
3.6.2 270 WP Order of initialization of static data members of class templates
3.6.2 371 open Interleaving of constructor calls
3.6.2 441 WP Ordering of static reference initialization
3.6.2 465 NAD May constructors of global objects call exit()?
3.6.2 688 review Constexpr constructors and static initialization
3.6.3 28 DR 'exit', 'signal' and static object destruction
3.6.3 640 open Accessing destroyed local objects of static storage duration
3.7 365 open Storage duration and temporaries
3.7.3.1 521 WP Requirements for exceptions thrown by allocation functions
3.7.3.2 220 review All deallocation functions should be required not to throw
3.7.3.2 312 open “use” of invalid pointer value not defined
3.7.3.2 348 WP delete and user-written deallocation functions
3.7.3.2 523 open Can a one-past-the-end pointer be invalidated by deleting an adjacent object?
3.7.3.2 623 extension Use of pointers to deallocated storage
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 WP Object lifetime and aggregate initialization
3.8 234 NAD Reuse of base class subobjects
3.8 274 WP Cv-qualification and char-alias access to out-of-lifetime objects
3.8 404 WP 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 ready Coordinating issues 119 and 404 with delegating constructors
3.8 597 review Conversions applied to out-of-lifetime non-POD lvalues
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 drafting signed char underlying representation for objects
3.9 496 open Is a volatile-qualified type really a POD?
3.9 619 review Completeness of array types
3.9 644 DR 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.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.10 158 WP Aliasing and qualification conversions
3.10 584 NAD Unions and aliasing
3.10 636 drafting Dynamic type of objects and aliasing
3.11 649 ready Optionally ill-formed extended alignment requests
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.2 693 review 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 drafting Integral promotion of enumeration ignores fixed underlying type
4.9 566 NAD Conversion of negative floating point values to integer type
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 WP Null pointer preservation in void* conversions
4.10 654 DR Conversions to and from nullptr_t
4.11 170 drafting Pointer-to-member conversions
4.11 480 WP Is a base of a virtual base also virtual?
5 71 NAD Incorrect cross reference
5 222 review Sequence points and lvalue-returning operators
5 238 open Precision and accuracy constraints on floating point
5 351 WP Sequence point error: unspecified or undefined?
5 438 open Possible flaw in wording for multiple accesses to object between sequence points
5 451 WP Expressions with invalid results and ill-formedness
5 695 open Compile-time calculation errors in constexpr functions
5.1 122 WP template-ids as unqualified-ids
5.1 123 TC1 Bad cross-reference
5.1 125 WP Ambiguity in friend declaration syntax
5.1 147 TC1 Naming the constructor
5.1 536 drafting Problems in the description of id-expressions
5.1 687 open template keyword with unqualified-ids
5.2.2 113 WP Visibility of called function
5.2.2 118 DR Calls via pointers to virtual member functions
5.2.2 506 WP Conditionally-supported behavior for non-POD objects passed to ellipsis
5.2.2 634 ready Conditionally-supported behavior for non-POD objects passed to ellipsis redux
5.2.4 466 WP cv-qualifiers on pseudo-destructor type
5.2.5 52 TC1 Non-static members, member selection and access checking
5.2.5 421 WP Is rvalue.field an rvalue?
5.2.7 665 review Problems in the specification of dynamic_cast
5.2.8 282 open Namespace for extended_type_info
5.2.8 492 WP 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 WP 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 WP static_cast ambiguity: conversion versus cast to derived
5.2.9 439 WP Guarantees on casting pointer back to cv-qualified version of original type
5.2.9 671 ready Explicit conversion from a scoped enumeration type to integral type
5.2.10 195 WP Converting between function and object pointers
5.2.10 463 WP reinterpret_cast<T*>(0)
5.2.10 573 review Conversions between function pointers and void*
5.2.10 658 review Defining reinterpret_cast for pointer types
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 WP Can "&" be applied to assignment to bit-field?
5.3.1 610 NAD Computing the negative of 0U
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 open 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 WP 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 WP 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 review Overflow in calculating size of allocation
5.3.4 672 review Sequencing of initialization in new-expressions
5.3.5 196 open Arguments to deallocation functions
5.3.5 265 open Destructors, exceptions, and deallocation
5.3.5 288 DR Misuse of "static type" in describing pointers
5.3.5 353 WP Is deallocation routine called if destructor throws exception in delete?
5.3.5 442 WP Incorrect use of null pointer constant in description of delete operator
5.3.5 599 review Deleting a null function pointer
5.3.6 659 ready Alignment of function types
5.4 242 open Interpretation of old-style casts
5.4 520 WP Old-style casts between incomplete class types
5.5 497 WP Missing required initialization in example
5.6 614 open 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.9 583 open Relational pointer comparisons against the null pointer constant
5.9 622 extension Relational comparisons of arbitrary pointers
5.9 661 DR Semantics of arithmetic comparisons
5.10 73 TC1 Pointer equality
5.16 446 WP Does an lvalue-to-rvalue conversion on the "?" operator produce a temporary?
5.16 587 drafting Lvalue operands of a conditional expression differing only in cv-qualification
5.17 556 review Conflicting requirements for acceptable aliasing
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 DR Overload resolution in operand of sizeof in constant expression
5.19 366 WP String literal allowed in integral constant expression?
5.19 367 WP throw operator allowed in constant expression?
5.19 457 WP Wording nit on use of const variables in constant expressions
5.19 487 NAD Operator overloading in constant expressions
5.19 530 WP Nontype template arguments in constant expressions
5.19 652 drafting Compile-time evaluation of floating-point expressions
5.19 684 review Constant expressions involving the address of an automatic variable
6.4 227 TC1 How many scopes in an if statement?
6.4.1 631 open Jumping into a “then” clause
6.6 276 DR Order of destruction of parameters and temporaries
6.6 378 review Wording that says temporaries are declared
6.7 467 NAD Jump past initialization of local static variable
7 157 open Omitted typedef declarator
7 435 NAD Change "declararation or definition" to "declaration"
7 569 review Spurious semicolons at namespace scope should be allowed
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.2 281 WP inline specifier in friend declarations
7.1.2 317 WP 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 WP Misleading note regarding use of auto for disambiguation
7.1.2 397 WP 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 WP Can virtual appear in a friend declaration?
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 WP Wording problem with issue 56 resolution on redeclaring typedefs in class scope
7.1.3 576 review Typedefs in function definitions
7.1.5 647 ready Non-constexpr instances of constexpr constructor templates
7.1.5 648 ready Constant expressions in constexpr initializers
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.2 283 WP Template type-parameters are not syntactically type-names
7.1.6.2 516 WP 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 ready Problems in decltype specification and examples
7.1.6.2 669 NAD Confusing specification of the meaning of 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.4 625 drafting Use of auto as a template-argument
7.1.6.4 629 WP auto parsing ambiguity
7.2 172 WP Unsigned int as underlying type of enum
7.2 377 WP Enum whose enumerators will not fit in any integral type
7.2 518 WP Trailing comma following enumerator-list
7.2 628 review The values of an enumeration with no enumerator
7.2 660 ready Unnamed scoped enumerations
7.3 171 TC1 Global namespace scope
7.3.1 311 NAD Using qualified name to reopen nested namespace
7.3.1 540 WP Propagation of cv-qualifiers in reference-to-reference collapse
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 open Injection of names from elaborated-type-specifiers in friend declarations
7.3.3 11 WP 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 WP using-declarations and cv-qualifiers
7.3.3 386 open Friend declaration of name brought in by using-declaration
7.3.3 460 WP Can a using-declaration name a namespace?
7.3.3 565 open Conflict rules for using-declarations naming function templates
7.3.4 103 TC1 Is it extended-namespace-definition or extension-namespace-definition ?
7.4 461 NAD Make asm conditionally-supported
7.5 4 WP 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 WP 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 review 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 review Agreement of language linkage or linkage-specifications?
8.1 686 ready Type declarations/definitions in type-specifier-seqs and type-ids
8.2 160 WP 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 drafting 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.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 WP Array types and cv-qualifiers
8.3.4 478 NAD May a function parameter be an array of an abstract class type?
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 WP Agreement of parameter declarations
8.3.5 262 WP Default arguments and ellipsis
8.3.5 295 WP 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 review Restrictions on declarators with late-specified return types
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 WP 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.5 5 WP CV-qualifiers and type conversions
8.5 35 TC1 Definition of default-initialization
8.5 78 WP 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 WP 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 WP Zero-initialization of pointers
8.5 302 WP Value-initialization and generation of default constructor
8.5 304 TC1 Value-initialization of a reference
8.5 508 drafting Non-constructed value-initialized objects
8.5 509 open Dead code in the specification of default initialization
8.5 543 review Value initialization and default constructors
8.5 611 open Zero-initializing references
8.5 615 review 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 open Zero- and value-initialization of union objects
8.5.1 163 TC1 Description of subaggregate initializer
8.5.1 430 WP Ordering of expression evaluation in initializer list
8.5.1 491 WP Initializers for empty-class aggregrate members
8.5.1 632 review Brace-enclosed initializer for scalar member of aggregate
8.5.3 233 drafting References vs pointers in UDC overload resolution
8.5.3 291 WP Overload resolution needed when binding reference to class rvalue
8.5.3 391 WP 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 WP Binding a reference to const to a cv-qualified array rvalue
8.5.3 589 drafting Direct binding of class and array rvalues in reference initialization
8.5.3 656 open Direct binding to the result of a conversion operator
8.5.3 664 drafting Direct binding of references to non-class rvalue references
9 148 TC1 POD classes and pointers to members
9 175 WP Class name injection and base name access
9 176 TC1 Name injection and templates
9 273 WP POD classes and operator&()
9 284 WP qualified-ids in class declarations
9 327 WP Use of "structure" without definition
9 355 review Global-scope :: in nested-name-specifier
9 379 WP Change "class declaration" to "class definition"
9 383 WP Is a class with a declared but not defined destructor a POD?
9 413 WP Definition of "empty class"
9 511 open POD-structs with template assignment operators
9 538 WP Definition and usage of structure, POD-struct, POD-union, and POD class
9 568 WP Definition of POD is too strict
9.1 417 WP 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 WP Missing requirement that class member types be complete
9.2 437 WP Is type of class allowed in member function exception specification?
9.2 613 WP Unevaluated uses of non-static class members
9.2 620 WP Declaration order in layout-compatible POD structs
9.2 645 review Are bit-field and non-bit-field members layout compatible?
9.3.2 452 WP 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 WP Static data member in class with name for linkage purposes
9.4.2 454 WP When is a definition of a static data member required?
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.6 58 WP Signedness of bit fields of enum type
9.6 436 WP Problem in example in 9.6 paragraph 4
9.6 675 open Signedness of bit-field with typedef or template parameter type
9.7 347 review Use of derived class name in defining base class nested class
9.8 198 WP Definition of "use" in local and nested classes
9.8 696 open Use of block-scope constants in local classes
10 484 WP Can a base-specifier name a cv-qualified class type?
10.2 39 WP Conflicting ambiguity rules
10.2 306 WP Ambiguity by class name injection
10.2 380 open Definition of "ambiguous base class" missing
10.3 608 review Determining the final overrider of a virtual function
10.4 230 open Calls to pure virtual functions
10.4 390 WP Pure virtual must be defined when implicitly called
11 8 WP Access to template arguments used in a function return type and in the nested name specifier
11 494 WP Problems with the resolution of issue 45
11 580 review 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 WP Clarification of access to base class members
11.2 16 WP 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 WP using-declarations and protected access
11.2 360 open Using-declaration that reduces access
11.2 471 NAD Conflicting inherited access specifications
11.4 77 WP 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 WP Access in base-specifiers of friend and nested classes
11.4 501 NAD Visibility of friend declarations within the befriending class
11.4 585 review Friend template template parameters
11.5 19 NAD Clarify protected member access
11.5 161 TC1 Access to protected nested type
11.5 385 WP How does protected member check of 11.5 interact with using-declarations?
11.5 472 drafting Casting across protected inheritance
11.8 10 WP 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 WP Access to nested classes
12.1 194 TC1 Identifying constructors
12.1 263 WP Can a constructor be declared a friend?
12.1 326 WP Wording for definition of trivial constructor
12.1 331 WP Allowed copy constructor signatures
12.1 581 open Can a templated constructor be explicitly instantiated or specialized?
12.2 86 WP Lifetime of temporaries in query expressions
12.2 117 NAD Timing of destruction of temporaries
12.2 124 WP Lifetime of temporaries in default initialization of class arrays
12.2 199 WP Order of destruction of temporaries
12.2 201 WP Order of destruction of temporaries in initializers
12.2 320 WP Question on copy constructor elision example
12.2 392 WP Use of full expression lvalue before temporary destruction
12.2 443 WP Wording nit in description of lifetime of temporaries
12.2 462 review Lifetime of temporaries bound to comma expressions
12.2 464 WP Wording nit on lifetime of temporaries to which references are bound
12.2 650 review Order of destruction for temporaries bound to the returned value of a function
12.3.1 152 TC1 explicit copy constructors
12.3.2 296 WP Can conversion functions be static?
12.3.2 395 open Conversion operator template syntax
12.4 193 TC1 Order of destruction of local automatics of destructor
12.4 244 WP Destructor lookup
12.4 252 WP Looking up deallocation functions in virtual destructors
12.4 272 WP Explicit destructor invocation and qualified-ids
12.4 344 open Naming destructors
12.4 399 drafting Destructor lookup redux
12.4 677 ready Deleted operator delete and virtual destructors
12.5 255 open Placement deallocation functions and lookup ambiguity
12.6 510 WP Default initialization of POD classes?
12.6 542 review 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 review Abstract base constructors and virtual base initialization
12.6.2 607 open Lookup of mem-initializer-ids
12.6.2 655 review Initialization not specified for forwarding constructors
12.7 307 NAD Initialization of a virtual base class subobject
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 review Definition of “copy assignment operator”
12.8 653 review Copy assignment of unions
12.8 667 review Trivial special member functions that cannot be implicitly defined
12.8 680 drafting What is a move constructor?
12.8 683 open Requirements for trivial subobject special functions
13.3.1.1 162 WP (&C::f)() with nonstatic members
13.3.1.1.1 239 WP Footnote 116 and Koenig lookup
13.3.1.1.1 364 WP Calling overloaded function with static in set, with no object
13.3.1.1.2 280 WP 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 WP 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 drafting Argument list for overload resolution in copy-initialization
13.3.1.4 59 TC1 Clarification of overloading and UDC to reference type
13.3.2 641 review Overload resolution and conversion-to-same-type operators
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 review 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.2 243 NAD Weighting of conversion functions in direct-initialization
13.3.3.1.4 60 WP Reference binding and valid conversion sequences
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.4 61 NAD Address of static member function "&p->f"
13.4 115 WP 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.5.3 221 WP Must compound assignment operators be member functions?
13.5.6 420 WP postfixexpression->scalar_type_dtor() inconsistent
13.6 27 NAD Overload ambiguities for builtin ?: prototypes
13.6 260 drafting User-defined conversions and built-in operator=
13.6 425 WP Set of candidates for overloaded built-in operator with float operand
13.6 507 open Ambiguity assigning class object to built-in type
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 WP Exported class templates
14 205 drafting Templates and static data members
14 323 WP Where must export appear?
14 335 WP Allowing export on template members of nontemplate classes
14 534 WP template-names and operator-function-ids
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 WP Default arguments in template template-parameters
14.1 187 TC1 Scope of template parameter names
14.1 215 WP Template parameters are not allowed in nested-name-specifiers
14.1 226 WP Default template arguments for function templates
14.1 401 WP When is access for template parameter default arguments checked?
14.1 691 drafting Template parameter packs in class template partial specializations
14.2 30 TC1 Valid uses of "::template"
14.2 38 TC1 Explicit template arguments and operator functions
14.2 96 drafting Syntactic disambiguation using the template keyword
14.2 228 WP Use of template keyword with non-member templates
14.2 301 WP 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 drafting Defect in wording in 14.2
14.2 468 WP 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.3 246 WP Jumps in function-try-block handlers
14.3 372 WP 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 WP 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 WP Null as nontype template argument
14.3.3 150 open Template template parameters and default arguments
14.4 603 review Type equivalence and unsigned overflow
14.4 679 ready Equivalence of template-ids and operator function templates
14.5.1.1 249 TC1 What is a member function template?
14.5.1.3 408 drafting 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 WP Template conversion functions
14.5.4 47 NAD Template friend issues
14.5.4 329 WP Evaluation of friends of templates
14.5.4 410 WP Paragraph missed in changes for issue 166
14.5.4 638 open Explicit specialization and friendship
14.5.4 674 drafting “matching specialization” for a friend declaration
14.5.5 229 NAD Partial specialization of function templates
14.5.5 286 WP Incorrect example in partial specialization
14.5.5 517 WP Partial specialization following explicit instantiation
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 WP 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 drafting Member/nonmember operator template partial ordering
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 WP typename and elaborated types
14.6 183 TC1 typename in explicit specializations
14.6 345 WP Misleading comment on example in templates chapter
14.6 375 dup Confusing example on lookup with typename
14.6 382 WP Allow typename outside of templates
14.6 409 WP Obsolete paragraph missed by changes for issue 224
14.6 559 WP Editing error in issue 382 resolution
14.6 560 drafting Use of the typename keyword in return types
14.6 666 DR Dependent qualified-ids without the typename keyword
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 drafting Set of template functions in call with dependent explicit argument
14.6.1 458 drafting 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 open When is the injected-class-name of a class template a template?
14.6.2 213 TC1 Lookup in dependent base classes
14.6.2 515 WP Non-dependent references to base class members
14.6.2 524 WP Can function-notation calls to operator functions be dependent?
14.6.2 544 NAD Base class lookup in explicit specialization
14.6.2 588 review 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 WP Definition of dependent names
14.6.2.1 502 open Dependency of nested enumerations and enumerators
14.6.2.1 590 open Nested classes 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 drafting Dependent function types
14.6.2.3 447 WP Is offsetof type-dependent?
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.1 287 drafting Order dependencies in template instantiation
14.6.4.2 197 WP Issues with two-stage lookup of dependent names
14.6.4.2 561 drafting Internal linkage functions in dependent name lookup
14.6.5 387 WP Errors in example in 14.6.5
14.7 259 WP Restrictions on explicit specialization and instantiation
14.7.1 34 NAD Argument dependent lookup and points of instantiation
14.7.1 63 WP 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 WP Missing * in example
14.7.2 46 NAD Explicit instantiation of member templates
14.7.2 237 WP Explicit instantiation and base class members
14.7.2 293 open Syntax of explicit instantiation/specialization too permissive
14.7.2 470 WP Instantiation of members of an explicitly-instantiated class template
14.7.2 546 drafting Explicit instantiation of class template members
14.7.2 551 WP When is inline permitted in an explicit instantiation?
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 WP 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 WP Explicit instantiation/specialization and using-directives
14.7.3 285 NAD Identifying a function template being specialized
14.7.3 336 WP Explicit specialization examples are still incorrect
14.7.3 529 drafting Use of template<> with “explicitly-specialized” class templates
14.7.3 531 drafting Defining members of explicit specializations
14.7.3 605 drafting Linkage of explicit specializations
14.7.3 621 review Template argument deduction from function return types
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 WP Attempt to create array of abtract type should cause deduction to fail
14.8.2 368 WP Uses of non-type parameters that should cause deduction to fail
14.8.2 398 WP Ambiguous wording on naming a type in deduction
14.8.2 486 WP Invalid return types and template argument deduction
14.8.2 488 DR Local types, overload resolution, and template argument deduction
14.8.2 575 review Criteria for deduction failure
14.8.2 657 DR Abstract class parameter in synthesized declaration
14.8.2 662 NAD Forming a pointer to a reference type
14.8.2.1 99 NAD Partial ordering, references and cv-qualifiers
14.8.2.1 352 WP Nondeduced contexts
14.8.2.1 503 open Cv-qualified function types in template argument deduction
14.8.2.1 522 WP Array-to-pointer decay in template argument deduction
14.8.2.1 606 drafting Template argument deduction for rvalue references
14.8.2.3 322 WP Deduction of reference conversions
14.8.2.3 349 WP Template argument deduction for conversion functions and qualification conversions
14.8.2.3 493 drafting Type deduction from a bool context
14.8.2.5 70 WP Is an array bound a nondeduced context?
14.8.2.5 181 TC1 Errors in template template-parameter example
14.8.2.5 300 WP References to functions in template argument deduction
14.8.2.5 469 open Const template specializations and reference arguments
14.8.2.5 526 WP Confusing aspects in the specification of non-deduced contexts
14.8.2.5 586 drafting Default template-arguments and template argument deduction
14.8.2.5 692 review Partial ordering of variadic class template partial orderings
14.8.3 415 WP Template deduction does not cause instantiation
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 WP Rethrowing exceptions in nested handlers
15.1 428 WP Mention of expression with reference type
15.1 479 WP Copy elision in exception handling
15.1 499 review Throwing an array of unknown size
15.2 592 review Exceptions during construction of local static objects
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 open Catching base*& from a throw of derived*
15.3 593 NAD Falling off the end of a destructor's function-try-block handler
15.4 25 TC1 Exception specifications and pointers to members
15.4 87 WP 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.5.1 219 open Cannot defend against destructors that throw exceptions
15.5.1 668 review Throwing an exception from the destructor of a local static object
15.5.2 596 open Replacing an exception object
15.5.3 37 NAD When is uncaught_exception() true?
15.5.3 475 drafting When is std::uncaught_exception() true? (take 2)
16 394 WP identifier-list is never defined
16.1 601 review Type of literals in preprocessing expressions
16.1 618 drafting Casts in preprocessor conditional expressions
16.2 370 WP Can #include <...> form be used other than for standard C++ headers?
16.2 533 review Special treatment for C-style header names
16.3.2 626 review Preprocessor string literals
16.3.4 268 open Macro name suppression in rescanned replacement text
18.5.1.3 79 dup Alignment and placement new
A 266 NAD No grammar sentence symbol
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
E 131 TC1 Typo in Lao characters
E 248 open Identifier characters
E 663 DR Valid Cyrillic identifier characters
unknown 106 WP Creating references to references during template deduction/instantiation