This page is a snapshot from the LWG issues list, see theLibrary Active Issues List for more information and the meaning ofC++11 status.
std
for implementationsSection: 16.4.2.2[contents]Status:C++11Submitter: Howard HinnantOpened: 2009-03-15Last modified: 2016-01-28
Priority:Not Prioritized
View all otherissues in [contents].
View all issues withC++11 status.
Discussion:
Addresses UK 168 [CD1]
We should make it clear (either by note or normatively) that namespacestd
may contain inline namespaces, and that entities specified to bedefined in std may in fact be defined in one of these inline namespaces.(If we're going to use them for versioning, eg when TR2 comes along,we're going to need that.)
Replace "namespace std or namespaces nested within namespace std" with"namespace std or namespaces nested within namespace std or inlinenamespaces nested directly or indirectly within namespace std"
[Summit:]
adopt UK words (some have reservations whether it is correct)
[2009-05-09 Alisdair improves the wording.]
[Batavia (2009-05):]
Bill believes there is strictly speaking no need to say thatbecause no portable test can detect the difference.However he agrees that it doesn't hurt to say this.
Move to Tentatively Ready.
Proposed resolution:
Change 16.4.2.2[contents] p2:
All library entities except macros,
operator new
andoperator delete
are defined within the namespacestd
ornamespaces nested within namespacestd
.It is unspecified whether names declared in a specific namespaceare declared directly in that namespace, or in an inline namespace insidethat namespace. [Footnote: This gives implementers freedom to supportmultiple configurations of the library.]