|
|
1 | (8) |
|
|
1 | (1) |
|
1.2 Fortran's early history |
|
|
2 | (1) |
|
1.3 The drive for the Fortran 90 standard |
|
|
3 | (1) |
|
|
4 | (1) |
|
|
4 | (1) |
|
1.6 Extensions to Fortran 95 |
|
|
5 | (1) |
|
|
6 | (1) |
|
|
7 | (1) |
|
|
7 | (2) |
|
|
9 | (24) |
|
|
9 | (1) |
|
2.2 Fortran character set |
|
|
9 | (1) |
|
|
10 | (1) |
|
|
11 | (2) |
|
|
13 | (1) |
|
2.6 Literal constants of intrinsic type |
|
|
14 | (6) |
|
2.6.1 Integer literal constants |
|
|
14 | (1) |
|
2.6.2 Real literal constants |
|
|
15 | (2) |
|
2.6.3 Complex literal constants |
|
|
17 | (1) |
|
2.6.4 Character literal constants |
|
|
17 | (2) |
|
2.6.5 Logical literal constants |
|
|
19 | (1) |
|
|
20 | (1) |
|
2.8 Scalar variables of intrinsic type |
|
|
20 | (1) |
|
|
21 | (2) |
|
2.10 Arrays of intrinsic type |
|
|
23 | (3) |
|
2.11 Character substrings |
|
|
26 | (1) |
|
2.12 Objects and subobjects |
|
|
27 | (1) |
|
|
27 | (2) |
|
|
29 | (4) |
|
3 Expressions and assignments |
|
|
33 | (22) |
|
|
33 | (1) |
|
3.2 Scalar numeric expressions |
|
|
34 | (3) |
|
3.3 Defined and undefined variables |
|
|
37 | (1) |
|
3.4 Scalar numeric assignment |
|
|
38 | (1) |
|
3.5 Scalar relational operators |
|
|
38 | (1) |
|
3.6 Scalar logical expressions and assignments |
|
|
39 | (2) |
|
3.7 Scalar character expressions and assignments |
|
|
41 | (1) |
|
3.8 Structure constructors and scalar defined operators |
|
|
42 | (3) |
|
3.9 Scalar defined assignments |
|
|
45 | (1) |
|
|
46 | (2) |
|
|
48 | (1) |
|
3.12 Pointers in expressions and assignments |
|
|
48 | (3) |
|
3.13 The nullify statement |
|
|
51 | (1) |
|
|
51 | (4) |
|
|
55 | (12) |
|
|
55 | (1) |
|
4.2 The if construct and statement |
|
|
55 | (2) |
|
|
57 | (2) |
|
|
59 | (3) |
|
|
62 | (1) |
|
|
63 | (4) |
|
5 Program units and procedures |
|
|
67 | (32) |
|
|
67 | (1) |
|
|
68 | (1) |
|
|
69 | (1) |
|
|
69 | (1) |
|
|
70 | (3) |
|
|
73 | (1) |
|
5.7 Arguments of procedures |
|
|
73 | (4) |
|
|
75 | (1) |
|
5.7.2 Restrictions on actual arguments |
|
|
76 | (1) |
|
5.7.3 Arguments with the target attribute |
|
|
76 | (1) |
|
|
77 | (1) |
|
|
77 | (1) |
|
|
78 | (2) |
|
5.10.1 Prohibited side-effects |
|
|
80 | (1) |
|
5.11 Explicit and implicit interfaces |
|
|
80 | (2) |
|
5.12 Procedures as arguments |
|
|
82 | (1) |
|
5.13 Keyword and optional arguments |
|
|
83 | (2) |
|
|
85 | (1) |
|
|
85 | (3) |
|
|
88 | (1) |
|
|
89 | (1) |
|
5.18 Overloading and generic interfaces |
|
|
90 | (3) |
|
5.19 Assumed character length |
|
|
93 | (2) |
|
5.20 The subroutine and function statements |
|
|
95 | (1) |
|
|
96 | (3) |
|
|
99 | (34) |
|
|
99 | (1) |
|
|
99 | (1) |
|
|
100 | (1) |
|
|
100 | (2) |
|
|
102 | (8) |
|
6.5.1 The allocatable attribute |
|
|
102 | (1) |
|
6.5.2 The allocate statement |
|
|
103 | (1) |
|
6.5.3 The deallocate statement |
|
|
104 | (1) |
|
6.5.4 Allocatable dummy arguments |
|
|
105 | (1) |
|
6.5.5 Allocatable functions |
|
|
105 | (1) |
|
6.5.6 Allocatable components |
|
|
106 | (3) |
|
6.5.7 Allocatable arrays vs. pointers |
|
|
109 | (1) |
|
6.6 Elemental operations and assignments |
|
|
110 | (1) |
|
6.7 Array-valued functions |
|
|
110 | (1) |
|
6.8 The where statement and construct |
|
|
111 | (3) |
|
6.9 The forall statement and construct |
|
|
114 | (3) |
|
|
117 | (1) |
|
6.11 Elemental procedures |
|
|
118 | (1) |
|
|
119 | (1) |
|
|
120 | (3) |
|
|
123 | (1) |
|
|
124 | (1) |
|
|
125 | (1) |
|
|
126 | (1) |
|
|
127 | (6) |
|
7 Specification statements |
|
|
133 | (28) |
|
|
133 | (1) |
|
|
133 | (1) |
|
7.3 Declaring entities of differing shapes |
|
|
134 | (1) |
|
7.4 Named constants and constant expressions |
|
|
134 | (3) |
|
7.5 Initial values for variables |
|
|
137 | (5) |
|
7.5.1 Initialization in type declaration statements |
|
|
137 | (1) |
|
|
138 | (2) |
|
7.5.3 Pointer initialization and the function null |
|
|
140 | (1) |
|
7.5.4 Default initialization of components |
|
|
141 | (1) |
|
7.6 The public and private attributes |
|
|
142 | (2) |
|
7.7 The pointer, target, and allocatable statements |
|
|
144 | (1) |
|
7.8 The intent and optional statements |
|
|
144 | (1) |
|
|
145 | (1) |
|
|
146 | (3) |
|
7.11 Derived-type definitions |
|
|
149 | (1) |
|
7.12 The type declaration statement |
|
|
150 | (2) |
|
7.13 Type and type parameter specification |
|
|
152 | (1) |
|
7.14 Specification expressions |
|
|
153 | (2) |
|
7.14.1 Specification functions |
|
|
153 | (2) |
|
7.15 The namelist statement |
|
|
155 | (1) |
|
|
156 | (5) |
|
|
161 | (24) |
|
|
161 | (1) |
|
|
161 | (1) |
|
8.1.2 Categories of intrinsic procedures |
|
|
162 | (1) |
|
8.1.3 The intrinsic statement |
|
|
162 | (1) |
|
|
162 | (1) |
|
8.2 Inquiry functions for any type |
|
|
162 | (1) |
|
8.3 Elemental numeric functions |
|
|
163 | (2) |
|
8.3.1 Elemental functions that may convert |
|
|
163 | (1) |
|
8.3.2 Elemental functions that do not convert |
|
|
164 | (1) |
|
8.4 Elemental mathematical functions |
|
|
165 | (1) |
|
8.5 Elemental character and logical functions |
|
|
166 | (2) |
|
8.5.1 Character-integer conversions |
|
|
166 | (1) |
|
8.5.2 Lexical comparison functions |
|
|
167 | (1) |
|
8.5.3 String-handling elemental functions |
|
|
167 | (1) |
|
|
168 | (1) |
|
8.6 Non-elemental string-handling functions |
|
|
168 | (1) |
|
8.6.1 String-handling inquiry function |
|
|
168 | (1) |
|
8.6.2 String-handling transformational functions |
|
|
168 | (1) |
|
8.7 Numeric inquiry and manipulation functions |
|
|
168 | (3) |
|
8.7.1 Models for integer and real data |
|
|
168 | (1) |
|
8.7.2 Numeric inquiry functions |
|
|
169 | (1) |
|
8.7.3 Elemental functions to manipulate reals |
|
|
170 | (1) |
|
8.7.4 Transformational functions for kind values |
|
|
171 | (1) |
|
8.8 Bit manipulation procedures |
|
|
171 | (2) |
|
|
172 | (1) |
|
8.8.2 Elemental functions |
|
|
172 | (1) |
|
8.8.3 Elemental subroutine |
|
|
173 | (1) |
|
|
173 | (1) |
|
8.10 Vector and matrix multiplication functions |
|
|
174 | (1) |
|
8.11 Transformational functions that reduce arrays |
|
|
175 | (1) |
|
8.11.1 Single argument case |
|
|
175 | (1) |
|
8.11.2 Optional argument dim |
|
|
175 | (1) |
|
8.11.3 Optional argument mask |
|
|
176 | (1) |
|
8.12 Array inquiry functions |
|
|
176 | (1) |
|
|
176 | (1) |
|
8.12.2 Bounds, shape, and size |
|
|
176 | (1) |
|
8.13 Array construction and manipulation functions |
|
|
177 | (2) |
|
8.13.1 The merge elemental function |
|
|
177 | (1) |
|
8.13.2 Packing and unpacking arrays |
|
|
177 | (1) |
|
8.13.3 Reshaping an array |
|
|
177 | (1) |
|
8.13.4 Transformational function for replication |
|
|
178 | (1) |
|
8.13.5 Array shifting functions |
|
|
178 | (1) |
|
|
179 | (1) |
|
8.14 Transformational functions for geometric location |
|
|
179 | (1) |
|
8.15 Transformational function for pointer disassociation |
|
|
179 | (1) |
|
8.16 Non-elemental intrinsic subroutines |
|
|
180 | (2) |
|
|
180 | (1) |
|
|
181 | (1) |
|
|
181 | (1) |
|
|
182 | (3) |
|
|
185 | (28) |
|
|
185 | (1) |
|
|
185 | (1) |
|
|
186 | (2) |
|
|
188 | (2) |
|
|
190 | (1) |
|
|
191 | (2) |
|
|
193 | (1) |
|
|
194 | (1) |
|
|
195 | (2) |
|
|
197 | (1) |
|
|
198 | (2) |
|
|
200 | (8) |
|
|
200 | (1) |
|
9.12.2 Data edit descriptors |
|
|
201 | (4) |
|
9.12.3 Character string edit descriptor |
|
|
205 | (1) |
|
9.12.4 Control edit descriptors |
|
|
205 | (3) |
|
|
208 | (1) |
|
|
209 | (1) |
|
9.15 Execution of a data transfer statement |
|
|
210 | (1) |
|
|
211 | (2) |
|
10 Operations on external files |
|
|
213 | (10) |
|
|
213 | (1) |
|
10.2 Positioning statements for sequential files |
|
|
214 | (2) |
|
10.2.1 The backspace statement |
|
|
214 | (1) |
|
10.2.2 The rewind statement |
|
|
214 | (1) |
|
10.2.3 The endfile statement |
|
|
215 | (1) |
|
10.2.4 Data transfer statements |
|
|
215 | (1) |
|
|
216 | (2) |
|
|
218 | (1) |
|
10.5 The inquire statement |
|
|
219 | (3) |
|
|
222 | (1) |
|
11 Floating-point exception handling |
|
|
223 | (20) |
|
|
223 | (1) |
|
|
224 | (1) |
|
11.3 Access to the features |
|
|
225 | (2) |
|
|
227 | (1) |
|
|
228 | (1) |
|
|
228 | (1) |
|
11.7 The underflow mode (Fortran 2003 only) |
|
|
229 | (1) |
|
11.8 The module ieee_exceptions |
|
|
229 | (3) |
|
|
229 | (1) |
|
11.8.2 Inquiry functions for IEEE exceptions |
|
|
230 | (1) |
|
11.8.3 Subroutines for the flags and halting modes |
|
|
230 | (1) |
|
11.8.4 Subroutines for the whole of the floating-point status |
|
|
231 | (1) |
|
11.9 The module ieee_arithmetic |
|
|
232 | (5) |
|
|
232 | (1) |
|
11.9.2 Inquiry functions for IEEE arithmetic |
|
|
232 | (2) |
|
11.9.3 Elemental functions |
|
|
234 | (1) |
|
11.9.4 Non-elemental subroutines |
|
|
235 | (1) |
|
11.9.5 Transformational function for kind value |
|
|
236 | (1) |
|
|
237 | (6) |
|
|
237 | (1) |
|
11.10.2 Calling alternative procedures |
|
|
237 | (1) |
|
11.10.3 Calling alternative in-line code |
|
|
238 | (1) |
|
11.10.4 Reliable hypotenuse function |
|
|
238 | (1) |
|
11.10.5 Access to IEEE arithmetic values |
|
|
239 | (4) |
|
12 Interoperability with C |
|
|
243 | (12) |
|
|
243 | (1) |
|
12.2 Interoperability of intrinsic types |
|
|
243 | (2) |
|
12.3 Interoperability with C pointer types |
|
|
245 | (1) |
|
12.4 Interoperability of derived types |
|
|
246 | (1) |
|
12.5 Interoperability of variables |
|
|
247 | (1) |
|
|
248 | (1) |
|
12.7 Interoperability of procedures |
|
|
249 | (1) |
|
12.8 Interoperability of global data |
|
|
250 | (1) |
|
12.9 Invoking a C function from Fortran |
|
|
251 | (1) |
|
12.10 Invoking Fortran from C |
|
|
252 | (1) |
|
|
253 | (2) |
|
13 Type parameters and procedure pointers |
|
|
255 | (10) |
|
|
255 | (1) |
|
13.2 Deferred type parameters |
|
|
255 | (1) |
|
13.3 Type parameter enquiry |
|
|
256 | (1) |
|
13.4 Parameterized derived types |
|
|
256 | (3) |
|
13.4.1 Defining a parameterized derived type |
|
|
256 | (2) |
|
13.4.2 Assumed and deferred type parameters |
|
|
258 | (1) |
|
13.4.3 Default type parameter values |
|
|
258 | (1) |
|
13.4.4 Derived type parameter enquiry |
|
|
259 | (1) |
|
|
259 | (2) |
|
|
261 | (4) |
|
13.6.1 Procedure pointer variables |
|
|
261 | (1) |
|
13.6.2 Procedure pointer components |
|
|
261 | (1) |
|
13.6.3 The pass attribute |
|
|
262 | (3) |
|
14 Object-oriented programming |
|
|
265 | (24) |
|
|
265 | (1) |
|
|
265 | (2) |
|
14.2.1 Type extension and type parameters |
|
|
267 | (1) |
|
14.3 Polymorphic entities |
|
|
267 | (4) |
|
14.3.1 Establishing the dynamic type |
|
|
268 | (1) |
|
14.3.2 Limitations on the use of a polymorphic variable |
|
|
269 | (1) |
|
14.3.3 Polymorphic arrays and scalars |
|
|
269 | (1) |
|
14.3.4 Unlimited polymorphic entities |
|
|
269 | (1) |
|
14.3.5 Polymorphic entities and generic resolution |
|
|
270 | (1) |
|
14.4 The associate construct |
|
|
271 | (1) |
|
14.5 The select type construct |
|
|
272 | (2) |
|
14.6 Type-bound procedures |
|
|
274 | (6) |
|
14.6.1 Specific type-bound procedures |
|
|
274 | (3) |
|
14.6.2 Generic type-bound procedures |
|
|
277 | (2) |
|
14.6.3 Type extension and type-bound procedures |
|
|
279 | (1) |
|
14.7 Deferred bindings and abstract types |
|
|
280 | (1) |
|
|
281 | (3) |
|
14.8.1 Type extension and final subroutines |
|
|
284 | (1) |
|
14.9 Procedure encapsulation example |
|
|
284 | (2) |
|
14.10 Type inquiry functions |
|
|
286 | (3) |
|
15 Establishing and moving data |
|
|
289 | (12) |
|
|
289 | (1) |
|
15.2 Mixed component accessibility |
|
|
289 | (1) |
|
15.3 Structure constructors |
|
|
289 | (2) |
|
15.4 The allocate statement |
|
|
291 | (2) |
|
15.4.1 Typed allocation and deferred type parameters |
|
|
291 | (1) |
|
15.4.2 Polymorphic variables and typed allocation |
|
|
292 | (1) |
|
15.4.3 Sourced allocation |
|
|
292 | (1) |
|
15.5 Allocatable entities |
|
|
293 | (3) |
|
15.5.1 Allocatable scalars |
|
|
294 | (1) |
|
15.5.2 Assignment to an allocatable array |
|
|
294 | (1) |
|
15.5.3 Transferring an allocation |
|
|
295 | (1) |
|
|
296 | (1) |
|
15.7 More control of access from a module |
|
|
296 | (1) |
|
15.8 Renaming operators on the use statement |
|
|
297 | (1) |
|
15.9 Array constructor syntax |
|
|
297 | (1) |
|
15.10 Specification and constant expressions |
|
|
298 | (3) |
|
16 Miscellaneous enhancements |
|
|
301 | (16) |
|
|
301 | (1) |
|
|
301 | (1) |
|
16.3 The volatile attribute |
|
|
301 | (3) |
|
16.3.1 Volatile semantics |
|
|
302 | (1) |
|
|
303 | (1) |
|
16.3.3 Volatile arguments |
|
|
304 | (1) |
|
16.4 The import statement |
|
|
304 | (2) |
|
|
306 | (1) |
|
16.6 Access to the computing environment |
|
|
307 | (1) |
|
16.6.1 Environment variables |
|
|
307 | (1) |
|
16.6.2 Information about the program invocation |
|
|
308 | (1) |
|
16.7 Support for internationalization |
|
|
308 | (4) |
|
|
309 | (1) |
|
16.7.2 ASCII character set |
|
|
309 | (1) |
|
16.7.3 ISO 10646 character set |
|
|
310 | (1) |
|
|
310 | (1) |
|
16.7.5 Decimal comma for input/output |
|
|
311 | (1) |
|
16.8 Lengths of names and statements |
|
|
312 | (1) |
|
16.9 Binary, octal, and hexadecimal constants |
|
|
312 | (1) |
|
16.10 Other changes to intrinsic procedures |
|
|
313 | (1) |
|
16.11 Error message retrieval |
|
|
314 | (1) |
|
16.12 Enhanced complex constants |
|
|
314 | (1) |
|
16.13 Interface block extensions |
|
|
314 | (1) |
|
16.14 Public entities of private type |
|
|
315 | (2) |
|
17 Input/output enhancements |
|
|
317 | (12) |
|
|
317 | (1) |
|
17.2 Non-default derived-type input/output |
|
|
317 | (3) |
|
17.3 Asynchronous input/output |
|
|
320 | (2) |
|
17.4 The asynchronous attribute |
|
|
322 | (1) |
|
17.5 Input and output of IEEE exceptional values |
|
|
323 | (1) |
|
17.6 Stream access input/output |
|
|
323 | (1) |
|
17.7 Recursive input/output |
|
|
324 | (1) |
|
|
324 | (1) |
|
17.9 Comma after a P edit descriptor |
|
|
324 | (1) |
|
17.10 The iomsg= specifier |
|
|
325 | (1) |
|
17.11 The round= specifier |
|
|
325 | (1) |
|
17.12 The sign= specifier |
|
|
325 | (1) |
|
17.13 Kind type parameters of integer and logical specifiers |
|
|
325 | (1) |
|
17.14 More specifiers in read and write statements |
|
|
326 | (1) |
|
17.15 Intrinsic functions for I/O status testing |
|
|
326 | (1) |
|
17.16 Some inquire statement enhancements |
|
|
326 | (1) |
|
17.17 Namelist enhancements |
|
|
327 | (2) |
|
18 Enhanced module facilities |
|
|
329 | (4) |
|
|
329 | (1) |
|
|
330 | (2) |
|
18.2.1 Separate module procedures |
|
|
330 | (1) |
|
18.2.2 Submodules of submodules |
|
|
331 | (1) |
|
18.2.3 Submodule entities |
|
|
331 | (1) |
|
18.2.4 Submodules and use association |
|
|
332 | (1) |
|
18.3 The advantages of submodules |
|
|
332 | (1) |
|
|
333 | (20) |
|
|
333 | (1) |
|
|
334 | (1) |
|
19.3 The properties of coarrays |
|
|
335 | (1) |
|
|
336 | (1) |
|
19.5 The sync all statement |
|
|
337 | (1) |
|
19.6 Coarrays in procedures |
|
|
338 | (2) |
|
19.7 Allocatable coarrays |
|
|
340 | (1) |
|
19.8 Coarrays with allocatable or pointer components |
|
|
341 | (1) |
|
|
341 | (1) |
|
19.8.2 Procedure pointer components |
|
|
342 | (1) |
|
|
342 | (1) |
|
19.10 References to polymorphic subobjects |
|
|
343 | (1) |
|
19.11 Volatile and asynchronous attributes |
|
|
343 | (1) |
|
|
343 | (1) |
|
|
343 | (5) |
|
19.13.1 Execution segments |
|
|
343 | (1) |
|
19.13.2 The sync images statement |
|
|
344 | (1) |
|
19.13.3 The lock and unlock statements |
|
|
345 | (2) |
|
19.13.4 Critical sections |
|
|
347 | (1) |
|
19.13.5 The sync memory statement and atomic subroutines |
|
|
347 | (1) |
|
19.13.6 The stat= and errmsg= specifiers in synchronization statements |
|
|
348 | (1) |
|
19.13.7 The image control statements |
|
|
348 | (1) |
|
19.14 Program termination |
|
|
348 | (1) |
|
|
349 | (2) |
|
19.16 Intrinsic procedures |
|
|
351 | (2) |
|
19.16.1 Inquiry functions |
|
|
351 | (1) |
|
19.16.2 Transformational functions |
|
|
351 | (2) |
|
20 Other Fortran 2008 enhancements |
|
|
353 | (40) |
|
20.1 Trivial syntactic conveniences |
|
|
353 | (3) |
|
20.1.1 Implied-shape arrays |
|
|
353 | (1) |
|
20.1.2 Implied-do loops in data statements |
|
|
353 | (1) |
|
20.1.3 Type-bound procedures |
|
|
354 | (1) |
|
20.1.4 Structure constructors |
|
|
354 | (1) |
|
|
355 | (1) |
|
20.1.6 The stop statement |
|
|
355 | (1) |
|
20.1.7 Exit from nearly any construct |
|
|
355 | (1) |
|
|
356 | (1) |
|
20.2.1 64-bit integer support |
|
|
356 | (1) |
|
20.2.2 Maximum array rank |
|
|
356 | (1) |
|
|
356 | (3) |
|
20.3.1 Allocatable components of recursive type |
|
|
356 | (2) |
|
20.3.2 Initial pointer association |
|
|
358 | (1) |
|
20.4 Performance-oriented features |
|
|
359 | (6) |
|
20.4.1 The do concurrent construct |
|
|
359 | (2) |
|
20.4.2 The contiguous attribute |
|
|
361 | (3) |
|
20.4.3 Simply contiguous array designators |
|
|
364 | (1) |
|
20.5 Computational expressiveness |
|
|
365 | (7) |
|
20.5.1 Accessing parts of complex variables |
|
|
365 | (1) |
|
20.5.2 Pointer functions denoting variables |
|
|
366 | (1) |
|
20.5.3 The block construct |
|
|
366 | (2) |
|
20.5.4 Impure elemental procedures |
|
|
368 | (2) |
|
20.5.5 Internal procedures as actual arguments |
|
|
370 | (1) |
|
20.5.6 Specifying the kind of a forall index variable |
|
|
370 | (1) |
|
20.5.7 Generic resolution |
|
|
371 | (1) |
|
20.6 Data usage and computation |
|
|
372 | (2) |
|
20.6.1 Enhancements to the allocate statement |
|
|
372 | (1) |
|
20.6.2 Automatic reallocation |
|
|
373 | (1) |
|
20.6.3 Elemental subprogram restrictions |
|
|
373 | (1) |
|
|
374 | (2) |
|
20.7.1 Recursive input/output |
|
|
374 | (1) |
|
20.7.2 The newunit= specifier |
|
|
374 | (1) |
|
20.7.3 Writing comma-separated values |
|
|
375 | (1) |
|
20.8 Intrinsic procedures |
|
|
376 | (1) |
|
20.9 Mathemetical intrinsic functions |
|
|
376 | (2) |
|
20.9.1 Changes to trigonometric functions |
|
|
376 | (1) |
|
20.9.2 New hyperbolic trigonometic functions |
|
|
376 | (1) |
|
20.9.3 New special mathematical functions |
|
|
377 | (1) |
|
|
378 | (1) |
|
|
378 | (4) |
|
20.10.1 Bitwise (unsigned) comparison |
|
|
378 | (1) |
|
20.10.2 Double-width shifting |
|
|
379 | (1) |
|
20.10.3 Bitwise reductions |
|
|
379 | (1) |
|
|
380 | (1) |
|
20.10.5 Producing bitmasks |
|
|
380 | (1) |
|
|
381 | (1) |
|
20.10.7 Additional shift operations |
|
|
381 | (1) |
|
20.11 Miscellaneous intrinsic procedures |
|
|
382 | (3) |
|
20.11.1 Procedures supporting coarrays |
|
|
382 | (1) |
|
20.11.2 Executing another program |
|
|
382 | (1) |
|
20.11.3 Character comparison |
|
|
383 | (1) |
|
|
383 | (1) |
|
|
383 | (1) |
|
20.11.6 Decimal arithmetic support |
|
|
384 | (1) |
|
20.11.7 Size of an object in memory |
|
|
384 | (1) |
|
20.12 Additions to the iso_fortran_env module |
|
|
385 | (2) |
|
20.12.1 Compilation information |
|
|
385 | (1) |
|
20.12.2 Names for common kinds |
|
|
385 | (1) |
|
|
386 | (1) |
|
20.12.4 Coarray support facilities |
|
|
386 | (1) |
|
20.13 Changes to other standard intrinsic modules |
|
|
387 | (1) |
|
20.13.1 The iso_c_binding module |
|
|
387 | (1) |
|
20.13.2 The ieee_arithmetic module |
|
|
387 | (1) |
|
20.14 Programs and procedures |
|
|
388 | (5) |
|
20.14.1 Saved module entities |
|
|
388 | (1) |
|
20.14.2 Automatic pointer targetting |
|
|
388 | (1) |
|
20.14.3 Denoting absent arguments |
|
|
389 | (4) |
|
|
393 | (6) |
|
|
399 | (20) |
|
|
399 | (1) |
|
|
399 | (6) |
|
|
399 | (1) |
|
B.2.2 The equivalence statement |
|
|
400 | (2) |
|
|
402 | (2) |
|
B.2.4 The block data program unit |
|
|
404 | (1) |
|
B.2.5 Coarrays and storage association |
|
|
405 | (1) |
|
B.3 Shape and character length disagreement |
|
|
405 | (2) |
|
|
407 | (1) |
|
B.5 Other forms of loop control |
|
|
407 | (1) |
|
B.5.1 The labelled do construct |
|
|
407 | (1) |
|
|
408 | (1) |
|
B.6 Double precision real |
|
|
408 | (1) |
|
B.7 The dimension, codimension, and parameter statements |
|
|
409 | (1) |
|
B.8 Specific names of intrinsic procedures |
|
|
410 | (2) |
|
B.9 Non-default mapping for implicit typing |
|
|
412 | (1) |
|
B.10 Fortran 2008 deprecated features |
|
|
413 | (6) |
|
B.10.1 The sync memory statement and atomic subroutines |
|
|
413 | (3) |
|
B.10.2 Components of type c_ptr or c_funptr |
|
|
416 | (1) |
|
|
416 | (1) |
|
B.10.4 Redundant contains statement |
|
|
417 | (1) |
|
|
417 | (1) |
|
B.10.6 Referencing atan2 by the name atan |
|
|
418 | (1) |
|
|
419 | (10) |
|
C.1 Obsolescent in Fortran 95 |
|
|
419 | (5) |
|
|
419 | (1) |
|
|
420 | (1) |
|
C.1.3 Character length specification character |
|
|
420 | (1) |
|
C.1.4 Data statements among executables |
|
|
420 | (1) |
|
C.1.5 Statement functions |
|
|
421 | (1) |
|
C.1.6 Assumed character length of function results |
|
|
422 | (1) |
|
C.1.7 Arithmetic if statement |
|
|
422 | (1) |
|
C.1.8 Shared do-loop termination |
|
|
423 | (1) |
|
|
423 | (1) |
|
C.2 Feature obsolescent in Fortran 2008: Entry statement |
|
|
424 | (2) |
|
C.3 Feature deleted in Fortran 2003: Carriage control |
|
|
426 | (1) |
|
C.4 Features deleted in Fortran 95 |
|
|
427 | (2) |
|
D Avoiding compilation cascades |
|
|
429 | (4) |
|
E Object-oriented list example |
|
|
433 | (8) |
|
|
441 | (12) |
|
|
453 | (22) |
Index |
|
475 | |