3 <node number="1" name="Scope"/>
4 <node number="2" name="Conformance"/>
5 <node number="3" name="References"/>
6 <node number="4" name="Definitions"/>
7 <node number="5" name="Notational conventions"/>
8 <node number="6" name="Acronyms and abbreviations"/>
9 <node number="7" name="General description"/>
10 <node number="8" name="Language Overview">
11 <node number="8.1" name="Getting started"/>
12 <node number="8.2" name="Types">
13 <node number="8.2.1" name="Predefined types"/>
14 <node number="8.2.2" name="Conversions"/>
15 <node number="8.2.3" name="Array types"/>
16 <node number="8.2.4" name="Type system unification"/>
18 <node number="8.3" name="Variables and parameters"/>
19 <node number="8.4" name="Automatic memory management"/>
20 <node number="8.5" name="Expressions"/>
21 <node number="8.6" name="Statements"/>
22 <node number="8.7" name="Classes">
23 <node number="8.7.1" name="Constants"/>
24 <node number="8.7.2" name="Fields"/>
25 <node number="8.7.3" name="Methods"/>
26 <node number="8.7.4" name="Properties"/>
27 <node number="8.7.5" name="Events"/>
28 <node number="8.7.6" name="Operators"/>
29 <node number="8.7.7" name="Indexers"/>
30 <node number="8.7.8" name="Instance constructors"/>
31 <node number="8.7.9" name="Destructors"/>
32 <node number="8.7.10" name="Static constructors"/>
33 <node number="8.7.11" name="Inheritance"/>
35 <node number="8.8" name="Structs"/>
36 <node number="8.9" name="Interfaces"/>
37 <node number="8.10" name="Delegates"/>
38 <node number="8.11" name="Enums"/>
39 <node number="8.12" name="Namespaces and assemblies"/>
40 <node number="8.13" name="Versioning"/>
41 <node number="8.14" name="Attributes"/>
43 <node number="9" name="Lexical structure">
44 <node number="9.1" name="Programs"/>
45 <node number="9.2" name="Grammars">
46 <node number="9.2.1" name="Lexical grammar"/>
47 <node number="9.2.2" name="Syntactic grammar"/>
49 <node number="9.3" name="Lexical analysis">
50 <node number="9.3.1" name="Line terminators"/>
51 <node number="9.3.2" name="Comments"/>
52 <node number="9.3.3" name="White space"/>
54 <node number="9.4" name="Tokens">
55 <node number="9.4.1" name="Unicode escape sequences"/>
56 <node number="9.4.2" name="Identifiers"/>
57 <node number="9.4.3" name="Keywords"/>
58 <node number="9.4.4" name="Literals">
59 <node number="9.4.4.1" name="Boolean literals"/>
60 <node number="9.4.4.2" name="Integer literals"/>
61 <node number="9.4.4.3" name="Real literals"/>
62 <node number="9.4.4.4" name="Character literals"/>
63 <node number="9.4.4.5" name="String literals"/>
64 <node number="9.4.4.6" name="The null literal"/>
66 <node number="9.4.5" name="Operators and punctuators"/>
68 <node number="9.5" name="Pre-processing directives">
69 <node number="9.5.1" name="Conditional compilation symbols"/>
70 <node number="9.5.2" name="Pre-processing expressions"/>
71 <node number="9.5.3" name="Declaration directives"/>
72 <node number="9.5.4" name="Conditional compilation directives"/>
73 <node number="9.5.5" name="Diagnostic directives"/>
74 <node number="9.5.6" name="Region control"/>
75 <node number="9.5.7" name="Line directives"/>
78 <node number="10" name="Basic concepts">
79 <node number="10.1" name="Application startup"/>
80 <node number="10.2" name="Application termination"/>
81 <node number="10.3" name="Declarations"/>
82 <node number="10.4" name="Members">
83 <node number="10.4.1" name="Namespace members"/>
84 <node number="10.4.2" name="Struct members"/>
85 <node number="10.4.3" name="Enumeration members"/>
86 <node number="10.4.4" name="Class members"/>
87 <node number="10.4.5" name="Interface members"/>
88 <node number="10.4.6" name="Array members"/>
89 <node number="10.4.7" name="Delegate members"/>
91 <node number="10.5" name="Member access">
92 <node number="10.5.1" name="Declared accessibility"/>
93 <node number="10.5.2" name="Accessibility domains"/>
94 <node number="10.5.3" name="Protected access for instance members"/>
95 <node number="10.5.4" name="Accessibility constraints"/>
97 <node number="10.6" name="Signatures and overloading"/>
98 <node number="10.7" name="Scopes">
99 <node number="10.7.1" name="Name hiding">
100 <node number="10.7.1.1" name="Hiding through nesting"/>
101 <node number="10.7.1.2" name="Hiding through inheritance"/>
104 <node number="10.8" name="Namespace and type names">
105 <node number="10.8.1" name="Fully qualified names"/>
107 <node number="10.9" name="Automatic memory management"/>
108 <node number="10.10" name="Execution order"/>
110 <node number="11" name="Types">
111 <node number="11.1" name="Value types">
112 <node number="11.1.1" name="Default constructors"/>
113 <node number="11.1.2" name="Struct types"/>
114 <node number="11.1.3" name="Simple types"/>
115 <node number="11.1.4" name="Integral types"/>
116 <node number="11.1.5" name="Floating point types"/>
117 <node number="11.1.6" name="The decimal type"/>
118 <node number="11.1.7" name="The bool type"/>
119 <node number="11.1.8" name="Enumeration types"/>
121 <node number="11.2" name="Reference types">
122 <node number="11.2.1" name="Class types"/>
123 <node number="11.2.2" name="The object type"/>
124 <node number="11.2.3" name="The string type"/>
125 <node number="11.2.4" name="Interface types"/>
126 <node number="11.2.5" name="Array types"/>
127 <node number="11.2.6" name="Delegate types"/>
129 <node number="11.3" name="Boxing and unboxing">
130 <node number="11.3.1" name="Boxing conversions"/>
131 <node number="11.3.2" name="Unboxing conversions"/>
134 <node number="12" name="Variables">
135 <node number="12.1" name="Variable categories">
136 <node number="12.1.1" name="Static variables"/>
137 <node number="12.1.2" name="Instance variables">
138 <node number="12.1.2.1" name="Instance variables in classes"/>
139 <node number="12.1.2.2" name="Instance variables in structs"/>
141 <node number="12.1.3" name="Array elements"/>
142 <node number="12.1.4" name="Value parameters"/>
143 <node number="12.1.5" name="Reference parameters"/>
144 <node number="12.1.6" name="Output parameters"/>
145 <node number="12.1.7" name="Local variables"/>
147 <node number="12.2" name="Default values"/>
148 <node number="12.3" name="Definite assignment">
149 <node number="12.3.1" name="Initially assigned variables"/>
150 <node number="12.3.2" name="Initially unassigned variables"/>
151 <node number="12.3.3" name="Precise rules for determining definite assignment">
152 <node number="12.3.3.1" name="General rules for statements"/>
153 <node number="12.3.3.2" name="Block statements, checked, and unchecked statements"/>
154 <node number="12.3.3.3" name="Expression statements"/>
155 <node number="12.3.3.4" name="Declaration statements"/>
156 <node number="12.3.3.5" name="If statements"/>
157 <node number="12.3.3.6" name="Switch statements"/>
158 <node number="12.3.3.7" name="While statements"/>
159 <node number="12.3.3.8" name="Do statements"/>
160 <node number="12.3.3.9" name="For statements"/>
161 <node number="12.3.3.10" name="Break, continue, and goto statements"/>
162 <node number="12.3.3.11" name="Throw statements"/>
163 <node number="12.3.3.12" name="Return statements"/>
164 <node number="12.3.3.13" name="Try-catch statements"/>
165 <node number="12.3.3.14" name="Try-finally statements"/>
166 <node number="12.3.3.15" name="Try-catch-finally statements"/>
167 <node number="12.3.3.16" name="Foreach statements"/>
168 <node number="12.3.3.17" name="Using statements"/>
169 <node number="12.3.3.18" name="Lock statements"/>
170 <node number="12.3.3.19" name="General rules for simple expressions"/>
171 <node number="12.3.3.20" name="General rules for expressions with embedded expressions"/>
172 <node number="12.3.3.21" name="Invocation expressions and object creation expressions"/>
173 <node number="12.3.3.22" name="Simple assignment expressions"/>
174 <node number="12.3.3.23" name="&& expressions"/>
175 <node number="12.3.3.24" name="|| expressions"/>
176 <node number="12.3.3.25" name="! expressions"/>
177 <node number="12.3.3.26" name="?: expressions"/>
180 <node number="12.4" name="Variable references"/>
181 <node number="12.5" name="Atomicity of variable references"/>
183 <node number="13" name="Conversions">
184 <node number="13.1" name="Implicit conversions">
185 <node number="13.1.1" name="Identity conversion"/>
186 <node number="13.1.2" name="Implicit numeric conversions"/>
187 <node number="13.1.3" name="Implicit enumeration conversions"/>
188 <node number="13.1.4" name="Implicit reference conversions"/>
189 <node number="13.1.5" name="Boxing conversions"/>
190 <node number="13.1.6" name="Implicit constant expression conversions"/>
191 <node number="13.1.7" name="User-defined implicit conversions"/>
193 <node number="13.2" name="Explicit conversions">
194 <node number="13.2.1" name="Explicit numeric conversions"/>
195 <node number="13.2.2" name="Explicit enumeration conversions"/>
196 <node number="13.2.3" name="Explicit reference conversions"/>
197 <node number="13.2.4" name="Unboxing conversions"/>
198 <node number="13.2.5" name="User-defined explicit conversions"/>
200 <node number="13.3" name="Standard conversions">
201 <node number="13.3.1" name="Standard implicit conversions"/>
202 <node number="13.3.2" name="Standard explicit conversions"/>
204 <node number="13.4" name="User-defined conversions">
205 <node number="13.4.1" name="Permitted user-defined conversions"/>
206 <node number="13.4.2" name="Evaluation of user-defined conversions"/>
207 <node number="13.4.3" name="User-defined implicit conversions"/>
208 <node number="13.4.4" name="User-defined explicit conversions"/>
211 <node number="14" name="Expressions">
212 <node number="14.1" name="Expression classifications">
213 <node number="14.1.1" name="Values of expressions"/>
215 <node number="14.2" name="Operators">
216 <node number="14.2.1" name="Operator precedence and associativity"/>
217 <node number="14.2.2" name="Operator overloading"/>
218 <node number="14.2.3" name="Unary operator overload resolution"/>
219 <node number="14.2.4" name="Binary operator overload resolution"/>
220 <node number="14.2.5" name="Candidate user-defined operators"/>
221 <node number="14.2.6" name="Numeric promotions">
222 <node number="14.2.6.1" name="Unary numeric promotions"/>
223 <node number="14.2.6.2" name="Binary numeric promotions"/>
226 <node number="14.3" name="Member lookup">
227 <node number="14.3.1" name="Base types"/>
229 <node number="14.4" name="Function members">
230 <node number="14.4.1" name="Argument lists"/>
231 <node number="14.4.2" name="Overload resolution">
232 <node number="14.4.2.1" name="Applicable function member"/>
233 <node number="14.4.2.2" name="Better function member"/>
234 <node number="14.4.2.3" name="Better conversion"/>
236 <node number="14.4.3" name="Function member invocation">
237 <node number="14.4.3.1" name="Invocations on boxed instances"/>
240 <node number="14.5" name="Primary expressions">
241 <node number="14.5.1" name="Literals"/>
242 <node number="14.5.2" name="Simple names">
243 <node number="14.5.2.1" name="Invariant meaning in blocks"/>
245 <node number="14.5.3" name="Parenthesized expressions"/>
246 <node number="14.5.4" name="Member access">
247 <node number="14.5.4.1" name="Identical simple names and type names"/>
249 <node number="14.5.5" name="Invocation expressions">
250 <node number="14.5.5.1" name="Method invocations"/>
251 <node number="14.5.5.2" name="Delegate invocations"/>
253 <node number="14.5.6" name="Element access">
254 <node number="14.5.6.1" name="Array access"/>
255 <node number="14.5.6.2" name="Indexer access"/>
257 <node number="14.5.7" name="This access"/>
258 <node number="14.5.8" name="Base access"/>
259 <node number="14.5.9" name="Postfix increment and decrement operators"/>
260 <node number="14.5.10" name="The new operator">
261 <node number="14.5.10.1" name="Object creation expressions"/>
262 <node number="14.5.10.2" name="Array creation expressions"/>
263 <node number="14.5.10.3" name="Delegate creation expressions"/>
265 <node number="14.5.11" name="The typeof operator"/>
266 <node number="14.5.12" name="The checked and unchecked operators"/>
268 <node number="14.6" name="Unary expressions">
269 <node number="14.6.1" name="Unary plus operator"/>
270 <node number="14.6.2" name="Unary minus operator"/>
271 <node number="14.6.3" name="Logical negation operator"/>
272 <node number="14.6.4" name="Bitwise complement operator"/>
273 <node number="14.6.5" name="Prefix increment and decrement operators"/>
274 <node number="14.6.6" name="Cast expressions"/>
276 <node number="14.7" name="Arithmetic operators">
277 <node number="14.7.1" name="Multiplication operator"/>
278 <node number="14.7.2" name="Division operator"/>
279 <node number="14.7.3" name="Remainder operator"/>
280 <node number="14.7.4" name="Addition operator"/>
281 <node number="14.7.5" name="Subtraction operator"/>
283 <node number="14.8" name="Shift operators"/>
284 <node number="14.9" name="Relational and type-testing operators">
285 <node number="14.9.1" name="Integer comparison operators"/>
286 <node number="14.9.2" name="Floating-point comparison operators"/>
287 <node number="14.9.3" name="Decimal comparison operators"/>
288 <node number="14.9.4" name="Boolean equality operators"/>
289 <node number="14.9.5" name="Enumeration comparison operators"/>
290 <node number="14.9.6" name="Reference type equality operators"/>
291 <node number="14.9.7" name="String equality operators"/>
292 <node number="14.9.8" name="Delegate equality operators"/>
293 <node number="14.9.9" name="The is operator"/>
294 <node number="14.9.10" name="The as operator"/>
296 <node number="14.10" name="Logical operators">
297 <node number="14.10.1" name="Integer logical operators"/>
298 <node number="14.10.2" name="Enumeration logical operators"/>
299 <node number="14.10.3" name="Boolean logical operators"/>
301 <node number="14.11" name="Conditional logical operators">
302 <node number="14.11.1" name="Boolean conditional logical operators"/>
303 <node number="14.11.2" name="User-defined conditional logical operators"/>
305 <node number="14.12" name="Conditional operator"/>
306 <node number="14.13" name="Assignment operators">
307 <node number="14.13.1" name="Simple assignment"/>
308 <node number="14.13.2" name="Compound assignment"/>
309 <node number="14.13.3" name="Event assignment"/>
311 <node number="14.14" name="Expression"/>
312 <node number="14.15" name="Constant expressions"/>
313 <node number="14.16" name="Boolean expressions"/>
315 <node number="15" name="Statements">
316 <node number="15.1" name="End points and reachability"/>
317 <node number="15.2" name="Blocks">
318 <node number="15.2.1" name="Statement lists"/>
320 <node number="15.3" name="The empty statement"/>
321 <node number="15.4" name="Labeled statements"/>
322 <node number="15.5" name="Declaration statements">
323 <node number="15.5.1" name="Local variable declarations"/>
324 <node number="15.5.2" name="Local constant declarations"/>
326 <node number="15.6" name="Expression statements"/>
327 <node number="15.7" name="Selection statements">
328 <node number="15.7.1" name="The if statement"/>
329 <node number="15.7.2" name="The switch statement"/>
331 <node number="15.8" name="Iteration statements">
332 <node number="15.8.1" name="The while statement"/>
333 <node number="15.8.2" name="The do statement"/>
334 <node number="15.8.3" name="The for statement"/>
335 <node number="15.8.4" name="The foreach statement"/>
337 <node number="15.9" name="Jump statements">
338 <node number="15.9.1" name="The break statement"/>
339 <node number="15.9.2" name="The continue statement"/>
340 <node number="15.9.3" name="The goto statement"/>
341 <node number="15.9.4" name="The return statement"/>
342 <node number="15.9.5" name="The throw statement"/>
344 <node number="15.10" name="The try statement"/>
345 <node number="15.11" name="The checked and unchecked statements"/>
346 <node number="15.12" name="The lock statement"/>
347 <node number="15.13" name="The using statement"/>
349 <node number="16" name="Namespaces">
350 <node number="16.1" name="Compilation units"/>
351 <node number="16.2" name="Namespace declarations"/>
352 <node number="16.3" name="Using directives">
353 <node number="16.3.1" name="Using alias directives"/>
354 <node number="16.3.2" name="Using namespace directives"/>
356 <node number="16.4" name="Namespace members"/>
357 <node number="16.5" name="Type declarations"/>
359 <node number="17" name="Classes">
360 <node number="17.1" name="Class declarations">
361 <node number="17.1.1" name="Class modifiers">
362 <node number="17.1.1.1" name="Abstract classes"/>
363 <node number="17.1.1.2" name="Sealed classes"/>
365 <node number="17.1.2" name="Class base specification">
366 <node number="17.1.2.1" name="Base classes"/>
367 <node number="17.1.2.2" name="Interface implementations"/>
369 <node number="17.1.3" name="Class body"/>
371 <node number="17.2" name="Class members">
372 <node number="17.2.1" name="Inheritance"/>
373 <node number="17.2.2" name="The new modifier"/>
374 <node number="17.2.3" name="Access modifiers"/>
375 <node number="17.2.4" name="Constituent types"/>
376 <node number="17.2.5" name="Static and instance members"/>
377 <node number="17.2.6" name="Nested types">
378 <node number="17.2.6.1" name="Fully qualified name"/>
379 <node number="17.2.6.2" name="Declared accessibility"/>
380 <node number="17.2.6.3" name="Hiding"/>
381 <node number="17.2.6.4" name="this access"/>
382 <node number="17.2.6.5" name="Access to private and protected members of the containing type"/>
384 <node number="17.2.7" name="Reserved member names">
385 <node number="17.2.7.1" name="Member Names Reserved for Properties"/>
386 <node number="17.2.7.2" name="Member Names Reserved for Events"/>
387 <node number="17.2.7.3" name="Member Names Reserved for Indexers"/>
388 <node number="17.2.7.4" name="Member Names Reserved for Destructors"/>
391 <node number="17.3" name="Constants"/>
392 <node number="17.4" name="Fields">
393 <node number="17.4.1" name="Static and instance fields"/>
394 <node number="17.4.2" name="Readonly fields">
395 <node number="17.4.2.1" name="Using static readonly fields for constants"/>
396 <node number="17.4.2.2" name="Versioning of constants and static readonly fields"/>
398 <node number="17.4.3" name="Volatile fields"/>
399 <node number="17.4.4" name="Field initialization"/>
400 <node number="17.4.5" name="Variable initializers">
401 <node number="17.4.5.1" name="Static field initialization"/>
402 <node number="17.4.5.2" name="Instance field initialization"/>
405 <node number="17.5" name="Methods">
406 <node number="17.5.1" name="Method parameters">
407 <node number="17.5.1.1" name="Value parameters"/>
408 <node number="17.5.1.2" name="Reference parameters"/>
409 <node number="17.5.1.3" name="Output parameters"/>
410 <node number="17.5.1.4" name="Parameter arrays"/>
412 <node number="17.5.2" name="Static and instance methods"/>
413 <node number="17.5.3" name="Virtual methods"/>
414 <node number="17.5.4" name="Override methods"/>
415 <node number="17.5.5" name="Sealed methods"/>
416 <node number="17.5.6" name="Abstract methods"/>
417 <node number="17.5.7" name="External methods"/>
418 <node number="17.5.8" name="Method body"/>
419 <node number="17.5.9" name="Method overloading"/>
421 <node number="17.6" name="Properties">
422 <node number="17.6.1" name="Static and instance properties"/>
423 <node number="17.6.2" name="Accessors"/>
424 <node number="17.6.3" name="Virtual, sealed, override, and abstract accessors"/>
426 <node number="17.7" name="Events">
427 <node number="17.7.1" name="Field-like events"/>
428 <node number="17.7.2" name="Event accessors"/>
429 <node number="17.7.3" name="Static and instance events"/>
430 <node number="17.7.4" name="Virtual, sealed, override, and abstract accessors"/>
432 <node number="17.8" name="Indexers">
433 <node number="17.8.1" name="Indexer overloading"/>
435 <node number="17.9" name="Operators">
436 <node number="17.9.1" name="Unary operators"/>
437 <node number="17.9.2" name="Binary operators"/>
438 <node number="17.9.3" name="Conversion operators"/>
440 <node number="17.10" name="Instance constructors">
441 <node number="17.10.1" name="Constructor initializers"/>
442 <node number="17.10.2" name="Instance variable initializers"/>
443 <node number="17.10.3" name="Constructor execution"/>
444 <node number="17.10.4" name="Default constructors"/>
445 <node number="17.10.5" name="Private constructors"/>
446 <node number="17.10.6" name="Optional instance constructor parameters"/>
448 <node number="17.11" name="Static constructors"/>
449 <node number="17.12" name="Destructors"/>
451 <node number="18" name="Structs">
452 <node number="18.1" name="Struct declarations">
453 <node number="18.1.1" name="Struct modifiers"/>
454 <node number="18.1.2" name="Struct interfaces"/>
455 <node number="18.1.3" name="Struct body"/>
457 <node number="18.2" name="Struct members"/>
458 <node number="18.3" name="Class and struct differences">
459 <node number="18.3.1" name="Value semantics"/>
460 <node number="18.3.2" name="Inheritance"/>
461 <node number="18.3.3" name="Assignment"/>
462 <node number="18.3.4" name="Default values"/>
463 <node number="18.3.5" name="Boxing and unboxing"/>
464 <node number="18.3.6" name="Meaning of this"/>
465 <node number="18.3.7" name="Field initializers"/>
466 <node number="18.3.8" name="Constructors"/>
467 <node number="18.3.9" name="Destructors"/>
469 <node number="18.4" name="Struct examples">
470 <node number="18.4.1" name="Database integer type"/>
471 <node number="18.4.2" name="Database boolean type"/>
474 <node number="19" name="Arrays">
475 <node number="19.1" name="Array types">
476 <node number="19.1.1" name="The System.Array type"/>
478 <node number="19.2" name="Array creation"/>
479 <node number="19.3" name="Array element access"/>
480 <node number="19.4" name="Array members"/>
481 <node number="19.5" name="Array covariance"/>
482 <node number="19.6" name="Array initializers"/>
484 <node number="20" name="Interfaces">
485 <node number="20.1" name="Interface declarations">
486 <node number="20.1.1" name="Interface modifiers"/>
487 <node number="20.1.2" name="Base interfaces"/>
488 <node number="20.1.3" name="Interface body"/>
490 <node number="20.2" name="Interface members">
491 <node number="20.2.1" name="Interface methods"/>
492 <node number="20.2.2" name="Interface properties"/>
493 <node number="20.2.3" name="Interface events"/>
494 <node number="20.2.4" name="Interface indexers"/>
495 <node number="20.2.5" name="Interface member access"/>
497 <node number="20.3" name="Fully qualified interface member names"/>
498 <node number="20.4" name="Interface implementations">
499 <node number="20.4.1" name="Explicit interface member implementations"/>
500 <node number="20.4.2" name="Interface mapping"/>
501 <node number="20.4.3" name="Interface implementation inheritance"/>
502 <node number="20.4.4" name="Interface re-implementation"/>
503 <node number="20.4.5" name="Abstract classes and interfaces"/>
506 <node number="21" name="Enums">
507 <node number="21.1" name="Enum declarations"/>
508 <node number="21.2" name="Enum modifiers"/>
509 <node number="21.3" name="Enum members"/>
510 <node number="21.4" name="Enum values and operations"/>
512 <node number="22" name="Delegates">
513 <node number="22.1" name="Delegate declarations"/>
514 <node number="22.2" name="Delegate instantiation"/>
515 <node number="22.3" name="Delegate invocation"/>
517 <node number="23" name="Exceptions">
518 <node number="23.1" name="Causes of exceptions"/>
519 <node number="23.2" name="The System.Exception class"/>
520 <node number="23.3" name="How exceptions are handled"/>
521 <node number="23.4" name="Common Exception Classes"/>
523 <node number="24" name="Attributes">
524 <node number="24.1" name="Attribute classes">
525 <node number="24.1.1" name="Attribute usage"/>
526 <node number="24.1.2" name="Positional and named parameters"/>
527 <node number="24.1.3" name="Attribute parameter types"/>
529 <node number="24.2" name="Attribute specification"/>
530 <node number="24.3" name="Attribute instances">
531 <node number="24.3.1" name="Compilation of an attribute"/>
532 <node number="24.3.2" name="Run-time retrieval of an attribute instance"/>
534 <node number="24.4" name="Reserved attributes">
535 <node number="24.4.1" name="The AttributeUsage attribute"/>
536 <node number="24.4.2" name="The Conditional attribute"/>
537 <node number="24.4.3" name="The Obsolete attribute"/>
540 <node number="25" name="Unsafe code">
541 <node number="25.1" name="Unsafe contexts"/>
542 <node number="25.2" name="Pointer types"/>
543 <node number="25.3" name="Fixed and moveable variables"/>
544 <node number="25.4" name="Pointer conversions"/>
545 <node number="25.5" name="Pointers in expressions">
546 <node number="25.5.1" name="Pointer indirection"/>
547 <node number="25.5.2" name="Pointer member access"/>
548 <node number="25.5.3" name="Pointer element access"/>
549 <node number="25.5.4" name="The address-of operator"/>
550 <node number="25.5.5" name="Pointer increment and decrement"/>
551 <node number="25.5.6" name="Pointer arithmetic"/>
552 <node number="25.5.7" name="Pointer comparison"/>
553 <node number="25.5.8" name="The sizeof operator"/>
555 <node number="25.6" name="The fixed statement"/>
556 <node number="25.7" name="Stack allocation"/>
557 <node number="25.8" name="Dynamic memory allocation"/>