From Jason Turner

[dcl.attr.nouniqueaddr]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp42ytx63p/{from.md → to.md} +40 -30
tmp/tmp42ytx63p/{from.md → to.md} RENAMED
@@ -1,10 +1,9 @@
1
  ### No unique address attribute <a id="dcl.attr.nouniqueaddr">[[dcl.attr.nouniqueaddr]]</a>
2
 
3
  The *attribute-token* `no_unique_address` specifies that a non-static
4
- data member is a potentially-overlapping subobject [[intro.object]]. It
5
- shall appear at most once in each *attribute-list* and no
6
  *attribute-argument-clause* shall be present. The attribute may
7
  appertain to a non-static data member other than a bit-field.
8
 
9
  [*Note 1*: The non-static data member can share the address of another
10
  non-static data member or that of a base class, and any padding that
@@ -40,22 +39,19 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
40
  [basic.fundamental]: basic.md#basic.fundamental
41
  [basic.life]: basic.md#basic.life
42
  [basic.link]: basic.md#basic.link
43
  [basic.lookup]: basic.md#basic.lookup
44
  [basic.lookup.argdep]: basic.md#basic.lookup.argdep
45
- [basic.lookup.classref]: basic.md#basic.lookup.classref
46
  [basic.lookup.elab]: basic.md#basic.lookup.elab
 
47
  [basic.lookup.qual]: basic.md#basic.lookup.qual
48
  [basic.lookup.udir]: basic.md#basic.lookup.udir
49
  [basic.lookup.unqual]: basic.md#basic.lookup.unqual
50
  [basic.namespace]: #basic.namespace
51
- [basic.scope]: basic.md#basic.scope
52
- [basic.scope.block]: basic.md#basic.scope.block
53
- [basic.scope.declarative]: basic.md#basic.scope.declarative
54
  [basic.scope.namespace]: basic.md#basic.scope.namespace
55
- [basic.scope.param]: basic.md#basic.scope.param
56
- [basic.scope.pdecl]: basic.md#basic.scope.pdecl
57
  [basic.start]: basic.md#basic.start
58
  [basic.start.dynamic]: basic.md#basic.start.dynamic
59
  [basic.start.static]: basic.md#basic.start.static
60
  [basic.stc]: basic.md#basic.stc
61
  [basic.stc.auto]: basic.md#basic.stc.auto
@@ -63,17 +59,15 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
63
  [basic.stc.dynamic.allocation]: basic.md#basic.stc.dynamic.allocation
64
  [basic.stc.dynamic.deallocation]: basic.md#basic.stc.dynamic.deallocation
65
  [basic.stc.static]: basic.md#basic.stc.static
66
  [basic.stc.thread]: basic.md#basic.stc.thread
67
  [basic.type.qualifier]: basic.md#basic.type.qualifier
68
- [basic.types]: basic.md#basic.types
69
  [class]: class.md#class
70
  [class.access]: class.md#class.access
 
71
  [class.base.init]: class.md#class.base.init
72
  [class.bit]: class.md#class.bit
73
- [class.compare.default]: class.md#class.compare.default
74
- [class.conv]: class.md#class.conv
75
  [class.conv.ctor]: class.md#class.conv.ctor
76
  [class.conv.fct]: class.md#class.conv.fct
77
  [class.copy.assign]: class.md#class.copy.assign
78
  [class.copy.ctor]: class.md#class.copy.ctor
79
  [class.copy.elision]: class.md#class.copy.elision
@@ -83,11 +77,12 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
83
  [class.expl.init]: class.md#class.expl.init
84
  [class.friend]: class.md#class.friend
85
  [class.inhctor.init]: class.md#class.inhctor.init
86
  [class.init]: class.md#class.init
87
  [class.mem]: class.md#class.mem
88
- [class.member.lookup]: class.md#class.member.lookup
 
89
  [class.mfct]: class.md#class.mfct
90
  [class.mi]: class.md#class.mi
91
  [class.name]: class.md#class.name
92
  [class.pre]: class.md#class.pre
93
  [class.qual]: basic.md#class.qual
@@ -98,10 +93,12 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
98
  [class.union.anon]: class.md#class.union.anon
99
  [class.virtual]: class.md#class.virtual
100
  [conv]: expr.md#conv
101
  [conv.array]: expr.md#conv.array
102
  [conv.func]: expr.md#conv.func
 
 
103
  [conv.lval]: expr.md#conv.lval
104
  [conv.prom]: expr.md#conv.prom
105
  [conv.ptr]: expr.md#conv.ptr
106
  [conv.qual]: expr.md#conv.qual
107
  [conv.rval]: expr.md#conv.rval
@@ -110,10 +107,11 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
110
  [dcl.align]: #dcl.align
111
  [dcl.ambig.res]: #dcl.ambig.res
112
  [dcl.array]: #dcl.array
113
  [dcl.asm]: #dcl.asm
114
  [dcl.attr]: #dcl.attr
 
115
  [dcl.attr.depend]: #dcl.attr.depend
116
  [dcl.attr.deprecated]: #dcl.attr.deprecated
117
  [dcl.attr.fallthrough]: #dcl.attr.fallthrough
118
  [dcl.attr.grammar]: #dcl.attr.grammar
119
  [dcl.attr.likelihood]: #dcl.attr.likelihood
@@ -123,10 +121,11 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
123
  [dcl.attr.unused]: #dcl.attr.unused
124
  [dcl.constexpr]: #dcl.constexpr
125
  [dcl.constinit]: #dcl.constinit
126
  [dcl.dcl]: #dcl.dcl
127
  [dcl.decl]: #dcl.decl
 
128
  [dcl.enum]: #dcl.enum
129
  [dcl.fct]: #dcl.fct
130
  [dcl.fct.def]: #dcl.fct.def
131
  [dcl.fct.def.coroutine]: #dcl.fct.def.coroutine
132
  [dcl.fct.def.default]: #dcl.fct.def.default
@@ -135,80 +134,92 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
135
  [dcl.fct.default]: #dcl.fct.default
136
  [dcl.fct.spec]: #dcl.fct.spec
137
  [dcl.friend]: #dcl.friend
138
  [dcl.init]: #dcl.init
139
  [dcl.init.aggr]: #dcl.init.aggr
 
140
  [dcl.init.list]: #dcl.init.list
141
  [dcl.init.ref]: #dcl.init.ref
142
  [dcl.init.string]: #dcl.init.string
143
  [dcl.inline]: #dcl.inline
144
  [dcl.link]: #dcl.link
145
  [dcl.meaning]: #dcl.meaning
 
146
  [dcl.mptr]: #dcl.mptr
147
  [dcl.name]: #dcl.name
148
  [dcl.pre]: #dcl.pre
149
  [dcl.ptr]: #dcl.ptr
150
  [dcl.ref]: #dcl.ref
151
  [dcl.spec]: #dcl.spec
152
  [dcl.spec.auto]: #dcl.spec.auto
 
 
153
  [dcl.stc]: #dcl.stc
154
  [dcl.struct.bind]: #dcl.struct.bind
155
  [dcl.type]: #dcl.type
156
  [dcl.type.auto.deduct]: #dcl.type.auto.deduct
157
  [dcl.type.class.deduct]: #dcl.type.class.deduct
158
  [dcl.type.cv]: #dcl.type.cv
159
  [dcl.type.decltype]: #dcl.type.decltype
160
  [dcl.type.elab]: #dcl.type.elab
 
161
  [dcl.type.simple]: #dcl.type.simple
162
  [dcl.typedef]: #dcl.typedef
163
  [depr.volatile.type]: future.md#depr.volatile.type
164
  [enum]: #enum
165
  [enum.udecl]: #enum.udecl
166
  [except.ctor]: except.md#except.ctor
167
  [except.handle]: except.md#except.handle
 
168
  [except.spec]: except.md#except.spec
169
  [except.throw]: except.md#except.throw
170
  [expr.alignof]: expr.md#expr.alignof
171
  [expr.ass]: expr.md#expr.ass
172
  [expr.await]: expr.md#expr.await
173
  [expr.call]: expr.md#expr.call
174
  [expr.cast]: expr.md#expr.cast
 
175
  [expr.const]: expr.md#expr.const
176
  [expr.const.cast]: expr.md#expr.const.cast
177
  [expr.mptr.oper]: expr.md#expr.mptr.oper
178
  [expr.new]: expr.md#expr.new
179
  [expr.post.incr]: expr.md#expr.post.incr
180
  [expr.pre.incr]: expr.md#expr.pre.incr
 
181
  [expr.prim.lambda]: expr.md#expr.prim.lambda
182
  [expr.prim.this]: expr.md#expr.prim.this
183
  [expr.prop]: expr.md#expr.prop
184
  [expr.ref]: expr.md#expr.ref
185
  [expr.static.cast]: expr.md#expr.static.cast
186
  [expr.sub]: expr.md#expr.sub
187
  [expr.type.conv]: expr.md#expr.type.conv
188
  [expr.unary]: expr.md#expr.unary
189
  [expr.unary.op]: expr.md#expr.unary.op
190
  [expr.yield]: expr.md#expr.yield
 
 
191
  [intro.compliance]: intro.md#intro.compliance
192
  [intro.execution]: basic.md#intro.execution
193
  [intro.multithread]: basic.md#intro.multithread
194
  [intro.object]: basic.md#intro.object
195
- [lex.charset]: lex.md#lex.charset
196
  [lex.digraph]: lex.md#lex.digraph
197
  [lex.key]: lex.md#lex.key
198
  [lex.name]: lex.md#lex.name
199
  [lex.string]: lex.md#lex.string
200
  [module.interface]: module.md#module.interface
 
 
201
  [namespace.alias]: #namespace.alias
202
  [namespace.def]: #namespace.def
203
- [namespace.memdef]: #namespace.memdef
204
  [namespace.qual]: basic.md#namespace.qual
205
  [namespace.udecl]: #namespace.udecl
206
  [namespace.udir]: #namespace.udir
207
  [namespace.unnamed]: #namespace.unnamed
208
  [over]: over.md#over
209
  [over.binary]: over.md#over.binary
 
210
  [over.match]: over.md#over.match
211
  [over.match.best]: over.md#over.match.best
212
  [over.match.class.deduct]: over.md#over.match.class.deduct
213
  [over.match.conv]: over.md#over.match.conv
214
  [over.match.copy]: over.md#over.match.copy
@@ -218,42 +229,44 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
218
  [over.match.ref]: over.md#over.match.ref
219
  [over.match.viable]: over.md#over.match.viable
220
  [over.oper]: over.md#over.oper
221
  [over.sub]: over.md#over.sub
222
  [special]: class.md#special
 
223
  [stmt.ambig]: stmt.md#stmt.ambig
224
  [stmt.dcl]: stmt.md#stmt.dcl
225
  [stmt.expr]: stmt.md#stmt.expr
226
  [stmt.if]: stmt.md#stmt.if
227
  [stmt.iter]: stmt.md#stmt.iter
228
- [stmt.label]: stmt.md#stmt.label
229
- [stmt.pre]: stmt.md#stmt.pre
230
  [stmt.return]: stmt.md#stmt.return
231
  [stmt.return.coroutine]: stmt.md#stmt.return.coroutine
232
  [stmt.select]: stmt.md#stmt.select
233
  [stmt.stmt]: stmt.md#stmt.stmt
234
  [stmt.switch]: stmt.md#stmt.switch
235
  [support.runtime]: support.md#support.runtime
236
  [temp.arg.type]: temp.md#temp.arg.type
237
- [temp.class.spec]: temp.md#temp.class.spec
238
  [temp.deduct]: temp.md#temp.deduct
239
  [temp.deduct.call]: temp.md#temp.deduct.call
 
240
  [temp.deduct.guide]: temp.md#temp.deduct.guide
241
- [temp.dep]: temp.md#temp.dep
242
  [temp.expl.spec]: temp.md#temp.expl.spec
243
  [temp.explicit]: temp.md#temp.explicit
244
  [temp.fct]: temp.md#temp.fct
245
  [temp.inst]: temp.md#temp.inst
246
  [temp.local]: temp.md#temp.local
247
- [temp.mem]: temp.md#temp.mem
248
  [temp.names]: temp.md#temp.names
249
- [temp.over.link]: temp.md#temp.over.link
250
  [temp.param]: temp.md#temp.param
251
  [temp.pre]: temp.md#temp.pre
252
  [temp.res]: temp.md#temp.res
253
- [temp.spec]: temp.md#temp.spec
254
  [temp.variadic]: temp.md#temp.variadic
 
 
 
 
255
 
256
  [^1]: There is no special provision for a *decl-specifier-seq* that
257
  lacks a *type-specifier* or that has a *type-specifier* that only
258
  specifies *cv-qualifier*s. The “implicit int” rule of C is no longer
259
  supported.
@@ -281,25 +294,22 @@ Here, `hasher`, `pred`, and `alloc` could have the same address as
281
  reference type.
282
 
283
  [^8]: Implementations are permitted to provide additional predefined
284
  variables with names that are reserved to the implementation
285
  [[lex.name]]. If a predefined variable is not odr-used
286
- [[basic.def.odr]], its string value need not be present in the
287
  program image.
288
 
289
  [^9]: This set of values is used to define promotion and conversion
290
  semantics for the enumeration type. It does not preclude an
291
  expression of enumeration type from having a value that falls
292
  outside this range.
293
 
294
- [^10]: this implies that the name of the class or function is
295
- unqualified.
296
-
297
- [^11]: During name lookup in a class hierarchy, some ambiguities may be
298
  resolved by considering whether one member hides the other along
299
- some paths [[class.member.lookup]]. There is no such disambiguation
300
- when considering the set of names found as a result of following
301
- *using-directive*s.
302
 
303
- [^12]: A *using-declaration* with more than one *using-declarator* is
304
  equivalent to a corresponding sequence of *using-declaration*s with
305
  one *using-declarator* each.
 
1
  ### No unique address attribute <a id="dcl.attr.nouniqueaddr">[[dcl.attr.nouniqueaddr]]</a>
2
 
3
  The *attribute-token* `no_unique_address` specifies that a non-static
4
+ data member is a potentially-overlapping subobject [[intro.object]]. No
 
5
  *attribute-argument-clause* shall be present. The attribute may
6
  appertain to a non-static data member other than a bit-field.
7
 
8
  [*Note 1*: The non-static data member can share the address of another
9
  non-static data member or that of a base class, and any padding that
 
39
  [basic.fundamental]: basic.md#basic.fundamental
40
  [basic.life]: basic.md#basic.life
41
  [basic.link]: basic.md#basic.link
42
  [basic.lookup]: basic.md#basic.lookup
43
  [basic.lookup.argdep]: basic.md#basic.lookup.argdep
 
44
  [basic.lookup.elab]: basic.md#basic.lookup.elab
45
+ [basic.lookup.general]: basic.md#basic.lookup.general
46
  [basic.lookup.qual]: basic.md#basic.lookup.qual
47
  [basic.lookup.udir]: basic.md#basic.lookup.udir
48
  [basic.lookup.unqual]: basic.md#basic.lookup.unqual
49
  [basic.namespace]: #basic.namespace
50
+ [basic.namespace.general]: #basic.namespace.general
 
 
51
  [basic.scope.namespace]: basic.md#basic.scope.namespace
52
+ [basic.scope.scope]: basic.md#basic.scope.scope
 
53
  [basic.start]: basic.md#basic.start
54
  [basic.start.dynamic]: basic.md#basic.start.dynamic
55
  [basic.start.static]: basic.md#basic.start.static
56
  [basic.stc]: basic.md#basic.stc
57
  [basic.stc.auto]: basic.md#basic.stc.auto
 
59
  [basic.stc.dynamic.allocation]: basic.md#basic.stc.dynamic.allocation
60
  [basic.stc.dynamic.deallocation]: basic.md#basic.stc.dynamic.deallocation
61
  [basic.stc.static]: basic.md#basic.stc.static
62
  [basic.stc.thread]: basic.md#basic.stc.thread
63
  [basic.type.qualifier]: basic.md#basic.type.qualifier
 
64
  [class]: class.md#class
65
  [class.access]: class.md#class.access
66
+ [class.access.base]: class.md#class.access.base
67
  [class.base.init]: class.md#class.base.init
68
  [class.bit]: class.md#class.bit
 
 
69
  [class.conv.ctor]: class.md#class.conv.ctor
70
  [class.conv.fct]: class.md#class.conv.fct
71
  [class.copy.assign]: class.md#class.copy.assign
72
  [class.copy.ctor]: class.md#class.copy.ctor
73
  [class.copy.elision]: class.md#class.copy.elision
 
77
  [class.expl.init]: class.md#class.expl.init
78
  [class.friend]: class.md#class.friend
79
  [class.inhctor.init]: class.md#class.inhctor.init
80
  [class.init]: class.md#class.init
81
  [class.mem]: class.md#class.mem
82
+ [class.mem.general]: class.md#class.mem.general
83
+ [class.member.lookup]: basic.md#class.member.lookup
84
  [class.mfct]: class.md#class.mfct
85
  [class.mi]: class.md#class.mi
86
  [class.name]: class.md#class.name
87
  [class.pre]: class.md#class.pre
88
  [class.qual]: basic.md#class.qual
 
93
  [class.union.anon]: class.md#class.union.anon
94
  [class.virtual]: class.md#class.virtual
95
  [conv]: expr.md#conv
96
  [conv.array]: expr.md#conv.array
97
  [conv.func]: expr.md#conv.func
98
+ [conv.general]: expr.md#conv.general
99
+ [conv.integral]: expr.md#conv.integral
100
  [conv.lval]: expr.md#conv.lval
101
  [conv.prom]: expr.md#conv.prom
102
  [conv.ptr]: expr.md#conv.ptr
103
  [conv.qual]: expr.md#conv.qual
104
  [conv.rval]: expr.md#conv.rval
 
107
  [dcl.align]: #dcl.align
108
  [dcl.ambig.res]: #dcl.ambig.res
109
  [dcl.array]: #dcl.array
110
  [dcl.asm]: #dcl.asm
111
  [dcl.attr]: #dcl.attr
112
+ [dcl.attr.assume]: #dcl.attr.assume
113
  [dcl.attr.depend]: #dcl.attr.depend
114
  [dcl.attr.deprecated]: #dcl.attr.deprecated
115
  [dcl.attr.fallthrough]: #dcl.attr.fallthrough
116
  [dcl.attr.grammar]: #dcl.attr.grammar
117
  [dcl.attr.likelihood]: #dcl.attr.likelihood
 
121
  [dcl.attr.unused]: #dcl.attr.unused
122
  [dcl.constexpr]: #dcl.constexpr
123
  [dcl.constinit]: #dcl.constinit
124
  [dcl.dcl]: #dcl.dcl
125
  [dcl.decl]: #dcl.decl
126
+ [dcl.decl.general]: #dcl.decl.general
127
  [dcl.enum]: #dcl.enum
128
  [dcl.fct]: #dcl.fct
129
  [dcl.fct.def]: #dcl.fct.def
130
  [dcl.fct.def.coroutine]: #dcl.fct.def.coroutine
131
  [dcl.fct.def.default]: #dcl.fct.def.default
 
134
  [dcl.fct.default]: #dcl.fct.default
135
  [dcl.fct.spec]: #dcl.fct.spec
136
  [dcl.friend]: #dcl.friend
137
  [dcl.init]: #dcl.init
138
  [dcl.init.aggr]: #dcl.init.aggr
139
+ [dcl.init.general]: #dcl.init.general
140
  [dcl.init.list]: #dcl.init.list
141
  [dcl.init.ref]: #dcl.init.ref
142
  [dcl.init.string]: #dcl.init.string
143
  [dcl.inline]: #dcl.inline
144
  [dcl.link]: #dcl.link
145
  [dcl.meaning]: #dcl.meaning
146
+ [dcl.meaning.general]: #dcl.meaning.general
147
  [dcl.mptr]: #dcl.mptr
148
  [dcl.name]: #dcl.name
149
  [dcl.pre]: #dcl.pre
150
  [dcl.ptr]: #dcl.ptr
151
  [dcl.ref]: #dcl.ref
152
  [dcl.spec]: #dcl.spec
153
  [dcl.spec.auto]: #dcl.spec.auto
154
+ [dcl.spec.auto.general]: #dcl.spec.auto.general
155
+ [dcl.spec.general]: #dcl.spec.general
156
  [dcl.stc]: #dcl.stc
157
  [dcl.struct.bind]: #dcl.struct.bind
158
  [dcl.type]: #dcl.type
159
  [dcl.type.auto.deduct]: #dcl.type.auto.deduct
160
  [dcl.type.class.deduct]: #dcl.type.class.deduct
161
  [dcl.type.cv]: #dcl.type.cv
162
  [dcl.type.decltype]: #dcl.type.decltype
163
  [dcl.type.elab]: #dcl.type.elab
164
+ [dcl.type.general]: #dcl.type.general
165
  [dcl.type.simple]: #dcl.type.simple
166
  [dcl.typedef]: #dcl.typedef
167
  [depr.volatile.type]: future.md#depr.volatile.type
168
  [enum]: #enum
169
  [enum.udecl]: #enum.udecl
170
  [except.ctor]: except.md#except.ctor
171
  [except.handle]: except.md#except.handle
172
+ [except.pre]: except.md#except.pre
173
  [except.spec]: except.md#except.spec
174
  [except.throw]: except.md#except.throw
175
  [expr.alignof]: expr.md#expr.alignof
176
  [expr.ass]: expr.md#expr.ass
177
  [expr.await]: expr.md#expr.await
178
  [expr.call]: expr.md#expr.call
179
  [expr.cast]: expr.md#expr.cast
180
+ [expr.comma]: expr.md#expr.comma
181
  [expr.const]: expr.md#expr.const
182
  [expr.const.cast]: expr.md#expr.const.cast
183
  [expr.mptr.oper]: expr.md#expr.mptr.oper
184
  [expr.new]: expr.md#expr.new
185
  [expr.post.incr]: expr.md#expr.post.incr
186
  [expr.pre.incr]: expr.md#expr.pre.incr
187
+ [expr.prim.id.unqual]: expr.md#expr.prim.id.unqual
188
  [expr.prim.lambda]: expr.md#expr.prim.lambda
189
  [expr.prim.this]: expr.md#expr.prim.this
190
  [expr.prop]: expr.md#expr.prop
191
  [expr.ref]: expr.md#expr.ref
192
  [expr.static.cast]: expr.md#expr.static.cast
193
  [expr.sub]: expr.md#expr.sub
194
  [expr.type.conv]: expr.md#expr.type.conv
195
  [expr.unary]: expr.md#expr.unary
196
  [expr.unary.op]: expr.md#expr.unary.op
197
  [expr.yield]: expr.md#expr.yield
198
+ [initializer.list.syn]: support.md#initializer.list.syn
199
+ [intro.abstract]: intro.md#intro.abstract
200
  [intro.compliance]: intro.md#intro.compliance
201
  [intro.execution]: basic.md#intro.execution
202
  [intro.multithread]: basic.md#intro.multithread
203
  [intro.object]: basic.md#intro.object
 
204
  [lex.digraph]: lex.md#lex.digraph
205
  [lex.key]: lex.md#lex.key
206
  [lex.name]: lex.md#lex.name
207
  [lex.string]: lex.md#lex.string
208
  [module.interface]: module.md#module.interface
209
+ [module.reach]: module.md#module.reach
210
+ [module.unit]: module.md#module.unit
211
  [namespace.alias]: #namespace.alias
212
  [namespace.def]: #namespace.def
213
+ [namespace.def.general]: #namespace.def.general
214
  [namespace.qual]: basic.md#namespace.qual
215
  [namespace.udecl]: #namespace.udecl
216
  [namespace.udir]: #namespace.udir
217
  [namespace.unnamed]: #namespace.unnamed
218
  [over]: over.md#over
219
  [over.binary]: over.md#over.binary
220
+ [over.literal]: over.md#over.literal
221
  [over.match]: over.md#over.match
222
  [over.match.best]: over.md#over.match.best
223
  [over.match.class.deduct]: over.md#over.match.class.deduct
224
  [over.match.conv]: over.md#over.match.conv
225
  [over.match.copy]: over.md#over.match.copy
 
229
  [over.match.ref]: over.md#over.match.ref
230
  [over.match.viable]: over.md#over.match.viable
231
  [over.oper]: over.md#over.oper
232
  [over.sub]: over.md#over.sub
233
  [special]: class.md#special
234
+ [std.modules]: library.md#std.modules
235
  [stmt.ambig]: stmt.md#stmt.ambig
236
  [stmt.dcl]: stmt.md#stmt.dcl
237
  [stmt.expr]: stmt.md#stmt.expr
238
  [stmt.if]: stmt.md#stmt.if
239
  [stmt.iter]: stmt.md#stmt.iter
 
 
240
  [stmt.return]: stmt.md#stmt.return
241
  [stmt.return.coroutine]: stmt.md#stmt.return.coroutine
242
  [stmt.select]: stmt.md#stmt.select
243
  [stmt.stmt]: stmt.md#stmt.stmt
244
  [stmt.switch]: stmt.md#stmt.switch
245
  [support.runtime]: support.md#support.runtime
246
  [temp.arg.type]: temp.md#temp.arg.type
247
+ [temp.decls]: temp.md#temp.decls
248
  [temp.deduct]: temp.md#temp.deduct
249
  [temp.deduct.call]: temp.md#temp.deduct.call
250
+ [temp.deduct.decl]: temp.md#temp.deduct.decl
251
  [temp.deduct.guide]: temp.md#temp.deduct.guide
252
+ [temp.dep.type]: temp.md#temp.dep.type
253
  [temp.expl.spec]: temp.md#temp.expl.spec
254
  [temp.explicit]: temp.md#temp.explicit
255
  [temp.fct]: temp.md#temp.fct
256
  [temp.inst]: temp.md#temp.inst
257
  [temp.local]: temp.md#temp.local
 
258
  [temp.names]: temp.md#temp.names
 
259
  [temp.param]: temp.md#temp.param
260
  [temp.pre]: temp.md#temp.pre
261
  [temp.res]: temp.md#temp.res
262
+ [temp.spec.partial]: temp.md#temp.spec.partial
263
  [temp.variadic]: temp.md#temp.variadic
264
+ [term.odr.use]: basic.md#term.odr.use
265
+ [term.padding.bits]: basic.md#term.padding.bits
266
+ [term.scalar.type]: basic.md#term.scalar.type
267
+ [term.unevaluated.operand]: expr.md#term.unevaluated.operand
268
 
269
  [^1]: There is no special provision for a *decl-specifier-seq* that
270
  lacks a *type-specifier* or that has a *type-specifier* that only
271
  specifies *cv-qualifier*s. The “implicit int” rule of C is no longer
272
  supported.
 
294
  reference type.
295
 
296
  [^8]: Implementations are permitted to provide additional predefined
297
  variables with names that are reserved to the implementation
298
  [[lex.name]]. If a predefined variable is not odr-used
299
+ [[term.odr.use]], its string value need not be present in the
300
  program image.
301
 
302
  [^9]: This set of values is used to define promotion and conversion
303
  semantics for the enumeration type. It does not preclude an
304
  expression of enumeration type from having a value that falls
305
  outside this range.
306
 
307
+ [^10]: During name lookup in a class hierarchy, some ambiguities can be
 
 
 
308
  resolved by considering whether one member hides the other along
309
+ some paths [[class.member.lookup]]. There is no such
310
+ disambiguation when considering the set of names found as a result
311
+ of following \*using-directive\*s.
312
 
313
+ [^11]: A *using-declaration* with more than one *using-declarator* is
314
  equivalent to a corresponding sequence of *using-declaration*s with
315
  one *using-declarator* each.