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 |
1.3 | 449 | NAD |
Consistency in use of hyphen with names of "non" entities
|
1.3.10 | 357 | open |
Definition of signature should include name
|
1.9 | 129 | open |
Stability of uninitialized auto variables
|
2.1 | 362 | WP |
Order of initialization in instantiation units
|
2.2 | 173 | TC1 |
Constraints on execution character set
|
2.4 | 369 | open |
Are new/delete identifiers or preprocessing-op-or-punc?
|
2.12 | 189 | drafting |
Definition of operator and punctuator
|
2.13.4 | 411 | open |
Use of universal-character-name in character versus string literals
|
3 | 309 | open |
Linkage of entities whose names are not simply identifiers, in introduction
|
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.3.1 | 433 | WP |
Do elaborated type specifiers in templates inject into enclosing namespace 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.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.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 | drafting |
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.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.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 | open |
Non-member function templates in member access expressions
|
3.4.5 | 156 | drafting |
Name lookup for conversion functions
|
3.4.5 | 305 | drafting |
Name lookup in destructor call
|
3.4.5 | 381 | ready |
Incorrect example of base class member lookup
|
3.4.5 | 414 | drafting |
Multiple types found on destructor lookup
|
3.4.6 | 373 | open |
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 | ready |
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 | ready |
Unnamed types in entities with linkage
|
3.5 | 426 | drafting |
Identically-named variables, one internally and one externally linked, allowed?
|
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 | review |
Ordering of static reference initialization
|
3.6.2 | 465 | open |
May constructors of global objects call exit()?
|
3.6.3 | 28 | open |
'exit', 'signal' and static object destruction
|
3.7 | 365 | open |
Storage duration and temporaries
|
3.7.3.2 | 220 | extension |
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 | drafting |
delete and user-written deallocation functions
|
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.9 | 43 | TC1 |
Copying base classes (PODs) using memcpy
|
3.9 | 290 | open |
Should memcpy be allowed into a POD with a const member?
|
3.9 | 350 | review |
signed char underlying representation for objects
|
3.9.1 | 146 | open |
Floating-point zero
|
3.9.1 | 251 | open |
How many signed integer types are there?
|
3.10 | 158 | WP |
Aliasing and qualification conversions
|
4.1 | 240 | open |
Uninitialized values and undefined behavior
|
4.4 | 330 | open |
Qualification conversions and pointers to arrays of pointers
|
4.5 | 303 | NAD |
Integral promotions on bit-fields
|
4.10 | 149 | TC1 |
Accessibility and ambiguity
|
4.10 | 456 | NAD |
Is initialized const int or const bool variable a null pointer constant?
|
4.11 | 170 | drafting |
Pointer-to-member conversions
|
5 | 71 | NAD |
Incorrect cross reference
|
5 | 222 | drafting |
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 | NAD |
Expressions with invalid results and ill-formedness
|
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.2.2 | 113 | WP |
Visibility of called function
|
5.2.2 | 118 | open |
Calls via pointers to virtual member functions
|
5.2.4 | 466 | open |
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.8 | 282 | open |
Namespace for extended_type_info
|
5.2.9 | 53 | TC1 |
Lvalue-to-rvalue conversion before certain static_casts
|
5.2.9 | 54 | ready |
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 | extension |
Can static_cast drop exception specifications?
|
5.2.9 | 427 | ready |
static_cast ambiguity: conversion versus cast to derived
|
5.2.9 | 439 | review |
Guarantees on casting pointer back to cv-qualified version of original type
|
5.2.10 | 195 | drafting |
Converting between function and object pointers
|
5.2.10 | 463 | open |
reinterpret_cast<T*>(0)
|
5.3 | 342 | open |
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.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 | extension |
Overflow in size calculations
|
5.3.4 | 267 | open |
Alignment requirement for new-expressions
|
5.3.4 | 292 | open |
Deallocation on exception in new before arguments evaluated
|
5.3.4 | 299 | open |
Conversion on array bound expression in new
|
5.3.4 | 313 | open |
Class with single conversion function to integral as array size in new
|
5.3.4 | 429 | ready |
Matching deallocation function chosen based on syntax or signature?
|
5.3.5 | 196 | open |
Arguments to deallocation functions
|
5.3.5 | 265 | open |
Destructors, exceptions, and deallocation
|
5.3.5 | 288 | open |
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 | review |
Incorrect use of null pointer constant in description of delete operator
|
5.4 | 242 | open |
Interpretation of old-style casts
|
5.7 | 55 | NAD |
Adding/subtracting pointer and enumeration value
|
5.7 | 179 | TC1 |
Function pointers and subtraction
|
5.10 | 73 | TC1 |
Pointer equality
|
5.16 | 446 | drafting |
Does an lvalue-to-rvalue conversion on the "?" operator produce a temporary?
|
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 | open |
Explicit temporaries and integral constant expressions
|
5.19 | 339 | open |
Overload resolution in operand of sizeof in constant expression
|
5.19 | 366 | WP |
String literal allowed in integral constant expression?
|
5.19 | 367 | drafting |
throw operator allowed in constant expression?
|
5.19 | 457 | drafting |
Wording nit on use of const variables in constant expressions
|
6.4 | 227 | TC1 |
How many scopes in an if statement?
|
6.6 | 276 | drafting |
Order of destruction of parameters and temporaries
|
6.6 | 378 | open |
Wording that says temporaries are declared
|
6.7 | 467 | open |
Jump past initialization of local static variable
|
7 | 157 | open |
Omitted typedef declarator
|
7 | 435 | review |
Change "declararation or definition" to "declaration"
|
7.1.1 | 69 | TC1 |
Storage class specifiers on template declarations
|
7.1.1 | 154 | NAD |
Anonymous unions in unnamed namespaces
|
7.1.2 | 281 | WP |
inline specifier in friend declarations
|
7.1.2 | 317 | open |
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 | drafting |
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.3 | 56 | TC1 |
Redeclaring typedefs within classes
|
7.1.3 | 407 | open |
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.5.1 | 76 | TC1 |
Are const volatile variables considered "constant expressions"?
|
7.1.5.2 | 283 | WP |
Template type-parameters are not syntactically type-names
|
7.1.5.3 | 68 | TC1 |
Grammar does not allow "friend class A<int>;"
|
7.1.5.3 | 144 | open |
Position of friend specifier
|
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.3 | 171 | TC1 |
Global namespace scope
|
7.3.1 | 311 | NAD |
Using qualified name to reopen nested namespace
|
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.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 | drafting |
Can a using-declaration name a namespace?
|
7.3.4 | 103 | TC1 |
Is it extended-namespace-definition or extension-namespace-definition ?
|
7.4 | 461 | open |
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 | extension |
Linkage of operator functions
|
7.5 | 168 | extension |
C linkage for static member functions
|
7.5 | 341 | drafting |
extern "C" namespace member function versus global variable
|
7.5 | 358 | NAD |
Namespaces and extern "C"
|
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.2 | 453 | review |
References may only bind to "valid" objects
|
8.3.4 | 112 | WP |
Array types and cv-qualifiers
|
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.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 | TC1 |
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 | open |
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.1 | 163 | TC1 |
Description of subaggregate initializer
|
8.5.1 | 430 | open |
Ordering of expression evaluation in initializer list
|
8.5.3 | 233 | drafting |
References vs pointers in UDC overload resolution
|
8.5.3 | 291 | review |
Overload resolution needed when binding reference to class rvalue
|
8.5.3 | 391 | drafting |
Require direct binding of short-lived references to rvalues
|
8.5.3 | 434 | drafting |
Unclear suppression of standard conversions while binding reference to lvalue
|
8.5.3 | 450 | drafting |
Binding a reference to const to a cv-qualified array rvalue
|
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 | open |
Use of "structure" without definition
|
9 | 355 | open |
Global-scope :: in elaborated-type-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 | drafting |
Definition of "empty class"
|
9.1 | 417 | ready |
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 | review |
Is type of class allowed in member function exception specification?
|
9.3.2 | 452 | open |
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 | drafting |
When is definition of static data member required?
|
9.5 | 57 | open |
Empty unions
|
9.5 | 359 | extension |
Type definition in anonymous union
|
9.6 | 58 | open |
Signedness of bit fields of enum type
|
9.6 | 436 | ready |
Problem in example in 9.6 paragraph 4
|
9.7 | 347 | open |
Use of derived class name in defining base class nested class
|
9.8 | 198 | WP |
Definition of "use" in local and nested classes
|
10.2 | 39 | review |
Conflicting ambiguity rules
|
10.2 | 306 | review |
Ambiguity by class name injection
|
10.2 | 380 | open |
Definition of "ambiguous base class" missing
|
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.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.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.5 | 19 | NAD |
Clarify protected member access
|
11.5 | 161 | TC1 |
Access to protected nested type
|
11.5 | 385 | ready |
How does protected member check of 11.5 interact with using-declarations?
|
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.2 | 86 | drafting |
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 | open |
Order of destruction of temporaries
|
12.2 | 201 | WP |
Order of destruction of temporaries in initializers
|
12.2 | 320 | open |
Question on copy constructor elision example
|
12.2 | 392 | WP |
Use of full expression lvalue before temporary destruction
|
12.2 | 443 | drafting |
Wording nit in description of lifetime of temporaries
|
12.2 | 462 | open |
Lifetime of temporaries bound to comma expressions
|
12.2 | 464 | open |
Wording nit on lifetime of temporaries to which references are bound
|
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.5 | 255 | open |
Placement deallocation functions and lookup ambiguity
|
12.6.1 | 363 | NAD |
Initialization of class from self
|
12.6.2 | 235 | TC1 |
Assignment vs initialization
|
12.6.2 | 257 | open |
Abstract base constructors and virtual base initialization
|
12.7 | 307 | NAD |
Initialization of a virtual base class subobject
|
12.8 | 6 | extension |
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 | open |
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
|
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 | ready |
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.4 | 59 | TC1 |
Clarification of overloading and UDC to reference type
|
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.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 | drafting |
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
|
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.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 | drafting |
Template parameters are not allowed in nested-name-specifiers
|
14.1 | 226 | WP |
Default template arguments for function templates
|
14.1 | 401 | drafting |
When is access for template parameter default arguments checked?
|
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 | drafting |
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 | open |
Allow ::template outside of templates
|
14.3 | 246 | WP |
Jumps in function-try-block handlers
|
14.3 | 372 | drafting |
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 | open |
Null as nontype template argument
|
14.3.3 | 150 | extension |
Template template parameters and default arguments
|
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.3 | 47 | NAD |
Template friend issues
|
14.5.3 | 329 | WP |
Evaluation of friends of templates
|
14.5.3 | 410 | ready |
Paragraph missed in changes for issue 166
|
14.5.4 | 229 | open |
Partial specialization of function templates
|
14.5.4 | 286 | WP |
Incorrect example in partial specialization
|
14.5.5.1 | 116 | TC1 |
Equivalent and functionally-equivalent function templates
|
14.5.5.1 | 310 | open |
Can function templates differing only in parameter cv-qualifiers be overloaded?
|
14.5.5.2 | 23 | open |
Some questions regarding partial ordering of function templates
|
14.5.5.2 | 200 | dup |
Partial ordering and explicit arguments
|
14.5.5.2 | 214 | WP |
Partial ordering of function templates is underspecified
|
14.5.5.2 | 402 | open |
More on partial ordering of function templates
|
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 | drafting |
Allow typename outside of templates
|
14.6 | 409 | ready |
Obsolete paragraph missed by changes for issue 224
|
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.2 | 213 | TC1 |
Lookup in dependent base classes
|
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.2 | 334 | open |
Is a comma-expression dependent if its first operand is?
|
14.6.2.3 | 447 | open |
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 | drafting |
Issues with two-stage lookup of dependent names
|
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.2 | 46 | NAD |
Explicit instantiation of member templates
|
14.7.2 | 237 | open |
Explicit instantiation and base class members
|
14.7.2 | 293 | open |
Syntax of explicit instantiation/specialization too permissive
|
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 | open |
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.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.1 | 99 | NAD |
Partial ordering, references and cv-qualifiers
|
14.8.2.1 | 352 | WP |
Nondeduced contexts
|
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.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.3 | 415 | drafting |
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.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.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.5.1 | 219 | open |
Cannot defend against destructors that throw exceptions
|
15.5.3 | 37 | NAD |
When is uncaught_exception() true?
|
16 | 394 | ready |
identifier-list is never defined
|
16.2 | 370 | drafting |
Can #include <...> form be used other than for standard C++ headers?
|
16.3.4 | 268 | open |
Macro name suppression in rescanned replacement text
|
18.4.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
|
unknown | 106 | WP |
Creating references to references during template deduction/instantiation
|