From Jason Turner

[namespace.udir]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpm_rs5l_y/{from.md → to.md} +10 -5
tmp/tmpm_rs5l_y/{from.md → to.md} RENAMED
@@ -1,28 +1,33 @@
1
  ### Using namespace directive <a id="namespace.udir">[[namespace.udir]]</a>
2
 
3
  ``` bnf
4
  using-directive:
5
  attribute-specifier-seqₒₚₜ using namespace nested-name-specifierₒₚₜ namespace-name ';'
 
6
  ```
7
 
 
 
 
 
8
  A *using-directive* shall not appear in class scope, but may appear in
9
  namespace scope or in block scope.
10
 
11
  [*Note 1*: When looking up a *namespace-name* in a *using-directive*,
12
  only namespace names are considered, see 
13
  [[basic.lookup.udir]]. — *end note*]
14
 
15
  The optional *attribute-specifier-seq* appertains to the
16
  *using-directive*.
17
 
18
- [*Note 2*: A *using-directive* makes the names in the nominated
19
  namespace usable in the scope in which the *using-directive* appears
20
  after the *using-directive* [[basic.lookup.unqual]], [[namespace.qual]].
21
  During unqualified name lookup, the names appear as if they were
22
  declared in the nearest enclosing namespace which contains both the
23
- *using-directive* and the nominated namespace. — *end note*]
24
 
25
  [*Note 3*: A *using-directive* does not introduce any
26
  names. — *end note*]
27
 
28
  [*Example 1*:
@@ -56,13 +61,13 @@ void f4() {
56
  ```
57
 
58
  — *end example*]
59
 
60
  [*Note 4*: A *using-directive* is transitive: if a scope contains a
61
- *using-directive* that nominates a namespace that itself contains
62
- *using-directive*s, the namespaces nominated by those *using-directive*s
63
- are also eligible to be considered. — *end note*]
64
 
65
  [*Example 2*:
66
 
67
  ``` cpp
68
  namespace M {
 
1
  ### Using namespace directive <a id="namespace.udir">[[namespace.udir]]</a>
2
 
3
  ``` bnf
4
  using-directive:
5
  attribute-specifier-seqₒₚₜ using namespace nested-name-specifierₒₚₜ namespace-name ';'
6
+ attribute-specifier-seqₒₚₜ using namespace splice-specifier ';'
7
  ```
8
 
9
+ The *splice-specifier* (if any) shall designate a namespace that is not
10
+ the global namespace. The *nested-name-specifier*, *namespace-name*, and
11
+ *splice-specifier* shall not be dependent.
12
+
13
  A *using-directive* shall not appear in class scope, but may appear in
14
  namespace scope or in block scope.
15
 
16
  [*Note 1*: When looking up a *namespace-name* in a *using-directive*,
17
  only namespace names are considered, see 
18
  [[basic.lookup.udir]]. — *end note*]
19
 
20
  The optional *attribute-specifier-seq* appertains to the
21
  *using-directive*.
22
 
23
+ [*Note 2*: A *using-directive* makes the names in the designated
24
  namespace usable in the scope in which the *using-directive* appears
25
  after the *using-directive* [[basic.lookup.unqual]], [[namespace.qual]].
26
  During unqualified name lookup, the names appear as if they were
27
  declared in the nearest enclosing namespace which contains both the
28
+ *using-directive* and the designated namespace. — *end note*]
29
 
30
  [*Note 3*: A *using-directive* does not introduce any
31
  names. — *end note*]
32
 
33
  [*Example 1*:
 
61
  ```
62
 
63
  — *end example*]
64
 
65
  [*Note 4*: A *using-directive* is transitive: if a scope contains a
66
+ *using-directive* that designates a namespace that itself contains
67
+ *using-directive*s, the namespaces designated by those
68
+ *using-directive*s are also eligible to be considered. — *end note*]
69
 
70
  [*Example 2*:
71
 
72
  ``` cpp
73
  namespace M {