]>
Commit | Line | Data |
---|---|---|
8179b067 | 1 | ; Options for the Fortran front end. |
a945c346 | 2 | ; Copyright (C) 2003-2024 Free Software Foundation, Inc. |
6de9cd9a DN |
3 | ; |
4 | ; This file is part of GCC. | |
5 | ; | |
6 | ; GCC is free software; you can redistribute it and/or modify it under | |
7 | ; the terms of the GNU General Public License as published by the Free | |
d234d788 | 8 | ; Software Foundation; either version 3, or (at your option) any later |
6de9cd9a DN |
9 | ; version. |
10 | ; | |
11 | ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY | |
12 | ; WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
13 | ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
14 | ; for more details. | |
15 | ; | |
16 | ; You should have received a copy of the GNU General Public License | |
d234d788 NC |
17 | ; along with GCC; see the file COPYING3. If not see |
18 | ; <http://www.gnu.org/licenses/>. | |
6de9cd9a | 19 | |
0b026622 | 20 | ; See the GCC internals manual for a description of this file's format. |
6de9cd9a DN |
21 | |
22 | ; Please try to keep this file in ASCII collating order. | |
23 | ||
24 | Language | |
7f26dfa3 | 25 | Fortran |
6de9cd9a | 26 | |
e200444e JM |
27 | -all-warnings |
28 | Fortran Alias(Wall) | |
29 | ||
30 | -assert | |
31 | Fortran Separate Alias(A) | |
32 | ||
33 | -assert= | |
34 | Fortran Joined Alias(A) | |
35 | ||
36 | -comments | |
37 | Fortran Alias(C) | |
38 | ||
39 | -comments-in-macros | |
40 | Fortran Alias(CC) | |
41 | ||
42 | -define-macro | |
43 | Fortran Separate Alias(D) | |
44 | ||
45 | -define-macro= | |
46 | Fortran Joined Alias(D) | |
47 | ||
48 | -dependencies | |
49 | Fortran Alias(M) | |
50 | ||
51 | -dump | |
52 | Fortran Separate Alias(d) | |
53 | ||
54 | -dump= | |
55 | Fortran Joined Alias(d) | |
56 | ||
57 | -include-barrier | |
58 | Fortran Alias(I, -) | |
59 | ||
60 | -include-directory | |
61 | Fortran Separate Alias(I) | |
62 | ||
63 | -include-directory= | |
64 | Fortran Joined Alias(I) | |
65 | ||
66 | -include-directory-after | |
67 | Fortran Separate Alias(idirafter) | |
68 | ||
69 | -include-directory-after= | |
70 | Fortran Joined Alias(idirafter) | |
71 | ||
72 | -include-prefix | |
73 | Fortran Separate Alias(iprefix) | |
74 | ||
75 | -include-prefix= | |
76 | Fortran JoinedOrMissing Alias(iprefix) | |
77 | ||
78 | -no-line-commands | |
79 | Fortran Alias(P) | |
80 | ||
81 | -no-standard-includes | |
82 | Fortran Alias(nostdinc) | |
83 | ||
84 | -output | |
85 | Fortran Separate Alias(o) | |
86 | ||
87 | -output= | |
88 | Fortran Joined Alias(o) | |
89 | ||
90 | -preprocess | |
91 | Fortran Undocumented Alias(E) | |
92 | ||
93 | -print-missing-file-dependencies | |
94 | Fortran Alias(MG) | |
95 | ||
96 | -trace-includes | |
97 | Fortran Alias(H) | |
98 | ||
99 | -undefine-macro | |
100 | Fortran Separate Alias(U) | |
101 | ||
102 | -undefine-macro= | |
103 | Fortran Joined Alias(U) | |
104 | ||
105 | -user-dependencies | |
106 | Fortran Alias(MM) | |
107 | ||
108 | -verbose | |
109 | Fortran Alias(v) | |
110 | ||
111 | -write-dependencies | |
112 | Fortran NoDriverArg Separate Alias(MD) | |
113 | ||
114 | -write-user-dependencies | |
115 | Fortran NoDriverArg Separate Alias(MMD) | |
116 | ||
670637ee DF |
117 | A |
118 | Fortran Joined Separate | |
119 | ; Documented in C | |
120 | ||
121 | C | |
122 | Fortran | |
123 | ; Documented in C | |
124 | ||
125 | CC | |
126 | Fortran | |
127 | ; Documented in C | |
128 | ||
129 | D | |
130 | Fortran Joined Separate | |
131 | ; Documented in C | |
132 | ||
133 | E | |
134 | Fortran Undocumented | |
135 | ||
136 | H | |
137 | Fortran | |
138 | ; Documented in C | |
139 | ||
6de9cd9a | 140 | I |
3d39d415 | 141 | Fortran Joined Separate |
9a0f3e86 | 142 | ; Documented in C |
6de9cd9a DN |
143 | |
144 | J | |
3d39d415 | 145 | Fortran Joined Separate |
a7b2e184 | 146 | -J<directory> Put MODULE files in 'directory'. |
6de9cd9a | 147 | |
d8ddea40 DF |
148 | M |
149 | Fortran | |
150 | ; Documented in C | |
151 | ||
c878765b | 152 | MD |
ca865c2b | 153 | Fortran Separate NoDriverArg |
d8ddea40 DF |
154 | ; Documented in C |
155 | ||
156 | MF | |
157 | Fortran Joined Separate | |
158 | ; Documented in C | |
159 | ||
160 | MG | |
161 | Fortran | |
162 | ; Documented in C | |
163 | ||
164 | MM | |
165 | Fortran | |
166 | ; Documented in C | |
167 | ||
c878765b | 168 | MMD |
ca865c2b | 169 | Fortran Separate NoDriverArg |
d8ddea40 DF |
170 | ; Documented in C |
171 | ||
172 | MP | |
173 | Fortran | |
174 | ; Documented in C | |
175 | ||
176 | MT | |
177 | Fortran Joined Separate | |
178 | ; Documented in C | |
179 | ||
180 | MQ | |
181 | Fortran Joined Separate | |
182 | ; Documented in C | |
183 | ||
670637ee DF |
184 | P |
185 | Fortran | |
186 | ; Documented in C | |
187 | ||
188 | U | |
189 | Fortran Joined Separate | |
190 | ; Documented in C | |
191 | ||
6de9cd9a | 192 | Wall |
4428e682 | 193 | Fortran |
6de9cd9a DN |
194 | ; Documented in C |
195 | ||
196 | Waliasing | |
73e42eef | 197 | Fortran Warning Var(warn_aliasing) LangEnabledBy(Fortran,Wall) |
a7b2e184 | 198 | Warn about possible aliasing of dummy arguments. |
6de9cd9a | 199 | |
f613cea7 | 200 | Walign-commons |
73e42eef | 201 | Fortran Warning Var(warn_align_commons) Init(1) |
a7b2e184 | 202 | Warn about alignment of COMMON blocks. |
f613cea7 | 203 | |
3fbab549 | 204 | Wampersand |
73e42eef | 205 | Fortran Warning Var(warn_ampersand) LangEnabledBy(Fortran,Wall || Wpedantic) |
a7b2e184 | 206 | Warn about missing ampersand in continued character constants. |
3fbab549 | 207 | |
bdfd2ff0 | 208 | Warray-temporaries |
73e42eef | 209 | Fortran Warning Var(warn_array_temporaries) |
a7b2e184 | 210 | Warn about creation of array temporaries. |
bdfd2ff0 | 211 | |
3df19fa0 | 212 | Wargument-mismatch |
e0b9e5f9 TK |
213 | Fortran WarnRemoved |
214 | Does nothing. Preserved for backward compatibility. | |
3df19fa0 | 215 | |
0e193637 | 216 | Wc-binding-type |
4daa149b | 217 | Fortran Var(warn_c_binding_type) Warning LangEnabledBy(Fortran,Wall) |
a7b2e184 | 218 | Warn if the type of a variable might be not interoperable with C. |
0e193637 | 219 | |
e8ff5196 TB |
220 | Wdate-time |
221 | Fortran | |
222 | ; Documented in C | |
223 | ||
0b30ba3b | 224 | Wcharacter-truncation |
a96c39ea | 225 | Fortran Var(warn_character_truncation) Warning LangEnabledBy(Fortran,Wall) |
a7b2e184 | 226 | Warn about truncated character expressions. |
0b30ba3b | 227 | |
cf21551e | 228 | Wcompare-reals |
73e42eef | 229 | Fortran Warning Var(warn_compare_reals) LangEnabledBy(Fortran,Wextra) |
a7b2e184 | 230 | Warn about equality comparisons involving REAL or COMPLEX expressions. |
cf21551e | 231 | |
6de9cd9a | 232 | Wconversion |
4daa149b | 233 | Fortran Var(warn_conversion) Warning LangEnabledBy(Fortran,Wall) |
9a0f3e86 | 234 | ; Documented in C |
6de9cd9a | 235 | |
daf8c6f0 | 236 | Wconversion-extra |
4daa149b | 237 | Fortran Var(warn_conversion_extra) Warning |
a7b2e184 | 238 | Warn about most implicit conversions. |
daf8c6f0 | 239 | |
15e23330 TK |
240 | Wdo-subscript |
241 | Fortran Var(warn_do_subscript) Warning LangEnabledBy(Fortran,Wextra) | |
04620f22 | 242 | Warn about possibly incorrect subscripts in do loops. |
15e23330 | 243 | |
72ac1c07 TK |
244 | Wextra |
245 | Fortran Warning | |
73e42eef | 246 | ; Documented in common |
72ac1c07 | 247 | |
d88412fc TK |
248 | Wfrontend-loop-interchange |
249 | Fortran Var(flag_warn_frontend_loop_interchange) | |
250 | Warn if loops have been interchanged. | |
251 | ||
51a30b32 | 252 | Wfunction-elimination |
6457b1f0 | 253 | Fortran Warning Var(warn_function_elimination) LangEnabledBy(Fortran,Wextra) |
a7b2e184 | 254 | Warn about function call elimination. |
51a30b32 | 255 | |
6de9cd9a | 256 | Wimplicit-interface |
73e42eef | 257 | Fortran Warning Var(warn_implicit_interface) |
a7b2e184 | 258 | Warn about calls with implicit interface. |
6de9cd9a | 259 | |
ca071303 | 260 | Wimplicit-procedure |
73e42eef | 261 | Fortran Warning Var(warn_implicit_procedure) |
a7b2e184 | 262 | Warn about called procedures not explicitly declared. |
ca071303 | 263 | |
c219aeb7 TK |
264 | Winteger-division |
265 | Fortran Warning Var(warn_integer_division) LangEnabledBy(Fortran,Wall) | |
a7b2e184 | 266 | Warn about constant integer divisions with truncated results. |
c219aeb7 | 267 | |
6de9cd9a | 268 | Wline-truncation |
aecfd035 | 269 | Fortran Warning Var(warn_line_truncation) LangEnabledBy(Fortran,Wall) Init(-1) |
a7b2e184 | 270 | Warn about truncated source lines. |
6de9cd9a | 271 | |
c3005b0f | 272 | Wintrinsics-std |
4daa149b | 273 | Fortran Var(warn_intrinsics_std) Warning LangEnabledBy(Fortran,Wall) |
a7b2e184 | 274 | Warn on intrinsics not part of the selected standard. |
b7892582 | 275 | |
73e42eef TB |
276 | Wmaybe-uninitialized |
277 | Fortran LangEnabledBy(Fortran,Wall) | |
278 | ; Documented in common.opt | |
279 | ||
7c02f68b MLI |
280 | Wmissing-include-dirs |
281 | Fortran | |
282 | ; Documented in C/C++ | |
283 | ||
7e114fad | 284 | Wuse-without-only |
3aa34c1d | 285 | Fortran Var(warn_use_without_only) Warning |
a7b2e184 | 286 | Warn about USE statements that have no ONLY qualifier. |
7e114fad | 287 | |
22cff118 TS |
288 | Wopenacc-parallelism |
289 | Fortran | |
290 | ; Documented in C | |
291 | ||
449b6b81 TB |
292 | Wopenmp |
293 | Fortran | |
294 | ; Documented in C | |
295 | ||
8b5e1202 SO |
296 | Wopenmp-simd |
297 | Fortran | |
298 | ; Documented in C | |
299 | ||
91c4891a ME |
300 | Woverwrite-recursive |
301 | Fortran Warning Var(warn_overwrite_recursive) Init(1) | |
302 | Warn that -fno-automatic may break recursion. | |
303 | ||
16db2a6a TB |
304 | Wpedantic |
305 | Fortran | |
306 | ; Documented in common.opt | |
307 | ||
5a17346a | 308 | Wreal-q-constant |
73e42eef | 309 | Fortran Warning Var(warn_real_q_constant) LangEnabledBy(Fortran,Wall) |
a7b2e184 | 310 | Warn about real-literal-constants with 'q' exponent-letter. |
5a17346a | 311 | |
f1fb11f1 | 312 | Wrealloc-lhs |
73e42eef | 313 | Fortran Warning Var(warn_realloc_lhs) LangEnabledBy(Fortran,Wrealloc-lhs-all) |
a7b2e184 | 314 | Warn when a left-hand-side array variable is reallocated. |
f1fb11f1 TB |
315 | |
316 | Wrealloc-lhs-all | |
73e42eef | 317 | Fortran Warning Var(warn_realloc_lhs_all) |
a7b2e184 | 318 | Warn when a left-hand-side variable is reallocated. |
f1fb11f1 | 319 | |
f657024b | 320 | Wtarget-lifetime |
73e42eef | 321 | Fortran Warning Var(warn_target_lifetime) LangEnabledBy(Fortran,Wall) |
a7b2e184 | 322 | Warn if the pointer in a pointer assignment might outlive its target. |
f657024b | 323 | |
766d0c8c | 324 | Wreturn-type |
73e42eef | 325 | Fortran Warning LangEnabledBy(Fortran,Wall) |
766d0c8c DF |
326 | ; Documented in C |
327 | ||
6de9cd9a | 328 | Wsurprising |
73e42eef | 329 | Fortran Warning Var(warn_surprising) LangEnabledBy(Fortran,Wall) |
a7b2e184 | 330 | Warn about \"suspicious\" constructs. |
6de9cd9a | 331 | |
840bd9f7 | 332 | Wtabs |
27e51192 | 333 | Fortran Warning Var(warn_tabs) LangEnabledBy(Fortran,Wall || Wpedantic) |
a7b2e184 | 334 | Permit nonconforming uses of the tab character. |
840bd9f7 | 335 | |
1c122092 ML |
336 | Wundefined-do-loop |
337 | Fortran Warning Var(warn_undefined_do_loop) LangEnabledBy(Fortran,Wall) | |
338 | Warn about an invalid DO loop. | |
339 | ||
2d8b59df | 340 | Wunderflow |
73e42eef | 341 | Fortran Warning Var(warn_underflow) Init(1) |
a7b2e184 | 342 | Warn about underflow of numerical constant expressions. |
2d8b59df | 343 | |
73e42eef TB |
344 | Wuninitialized |
345 | Fortran LangEnabledBy(Fortran,Wall) | |
346 | ; Documented in common.opt | |
347 | ||
c3005b0f | 348 | Wintrinsic-shadow |
73e42eef | 349 | Fortran Warning Var(warn_intrinsic_shadow) LangEnabledBy(Fortran,Wall) |
a7b2e184 | 350 | Warn if a user-procedure has the same name as an intrinsic. |
c3005b0f | 351 | |
73e42eef TB |
352 | Wunused |
353 | LangEnabledBy(Fortran,Wall) | |
354 | ; Documented in common.opt | |
355 | ||
4ed44ccc | 356 | Wunused-dummy-argument |
73e42eef | 357 | Fortran Warning Var(warn_unused_dummy_argument) LangEnabledBy(Fortran,Wall) |
4ed44ccc DF |
358 | Warn about unused dummy arguments. |
359 | ||
0e533e50 | 360 | Wzerotrip |
73e42eef | 361 | Fortran Warning Var(warn_zerotrip) LangEnabledBy(Fortran,Wall) |
a7b2e184 | 362 | Warn about zero-trip DO loops. |
0e533e50 | 363 | |
670637ee | 364 | cpp |
6cfcf3ed | 365 | Fortran Negative(nocpp) |
a7b2e184 | 366 | Enable preprocessing. |
670637ee | 367 | |
6cfcf3ed | 368 | cpp= |
77ee7190 | 369 | Fortran Joined Negative(nocpp) Undocumented NoDWARFRecord |
6cfcf3ed JM |
370 | ; Internal option generated by specs from -cpp. |
371 | ||
670637ee DF |
372 | nocpp |
373 | Fortran Negative(cpp) | |
a7b2e184 | 374 | Disable preprocessing. |
670637ee DF |
375 | |
376 | d | |
377 | Fortran Joined | |
9a0f3e86 | 378 | ; Documented in common.opt |
670637ee | 379 | |
7a56096c TK |
380 | fallow-argument-mismatch |
381 | Fortran Var(flag_allow_argument_mismatch) LangEnabledBy(Fortran,std=legacy) | |
382 | Accept argument mismatches in procedure calls. | |
383 | ||
2757d5ec | 384 | faggressive-function-elimination |
c61819ff | 385 | Fortran Var(flag_aggressive_function_elimination) |
bd2c6270 | 386 | Eliminate multiple function invocations also for impure functions. |
2757d5ec | 387 | |
f613cea7 | 388 | falign-commons |
c61819ff | 389 | Fortran Var(flag_align_commons) Init(1) |
a7b2e184 | 390 | Enable alignment of COMMON blocks. |
f613cea7 | 391 | |
a23eec13 | 392 | fall-intrinsics |
c61819ff | 393 | Fortran RejectNegative Var(flag_all_intrinsics) |
a7b2e184 | 394 | All intrinsics procedures are available regardless of selected standard. |
a23eec13 | 395 | |
8dc63166 SK |
396 | fallow-invalid-boz |
397 | Fortran RejectNegative Var(flag_allow_invalid_boz) | |
c35a3046 | 398 | Allow a BOZ literal constant to appear in an invalid context and with X instead of Z. |
8dc63166 | 399 | |
e6472bce | 400 | fallow-leading-underscore |
c61819ff | 401 | Fortran Undocumented Var(flag_allow_leading_underscore) |
e6472bce FXC |
402 | ; For internal use only: allow the first character of symbol names to be an underscore |
403 | ||
ee5426a4 | 404 | fautomatic |
c61819ff | 405 | Fortran Var(flag_automatic) Init(1) |
a7b2e184 | 406 | Do not treat local variables and COMMON blocks as if they were named in SAVE statements. |
ee5426a4 | 407 | |
e0bcf78c | 408 | fbackslash |
c61819ff | 409 | Fortran Var(flag_backslash) |
a7b2e184 | 410 | Specify that backslash in string introduces an escape character. |
e0bcf78c | 411 | |
868d75db | 412 | fbacktrace |
c61819ff | 413 | Fortran Var(flag_backtrace) Init(1) |
a7b2e184 | 414 | Produce a backtrace when a runtime error is encountered. |
868d75db | 415 | |
5a0aad31 | 416 | fblas-matmul-limit= |
c61819ff | 417 | Fortran RejectNegative Joined UInteger Var(flag_blas_matmul_limit) Init(30) |
a7b2e184 | 418 | -fblas-matmul-limit=<n> Size of the smallest matrix for which matmul will use BLAS. |
5a0aad31 | 419 | |
e79f6e61 JJ |
420 | fbuilding-libgfortran |
421 | Fortran Undocumented Var(flag_building_libgfortran) | |
422 | ||
f1bfba3a TB |
423 | fbuiltin- |
424 | Fortran Joined | |
425 | ; Documented in C | |
426 | ||
0d52899f TB |
427 | fcheck-array-temporaries |
428 | Fortran | |
a7b2e184 | 429 | Produce a warning at runtime if a array temporary has been created for a procedure argument. |
0d52899f | 430 | |
f19626cf | 431 | fconvert= |
9acd5a01 JJ |
432 | Fortran RejectNegative Joined Enum(gfc_convert) EnumSet Var(flag_convert) Init(GFC_FLAG_CONVERT_NATIVE) |
433 | -fconvert=<big-endian|little-endian|native|swap|r16_ieee|r16_ibm> The endianness used for unformatted files. | |
3ae9eb27 | 434 | |
f19626cf | 435 | Enum |
bd2c6270 | 436 | Name(gfc_convert) Type(enum gfc_convert) UnknownError(Unrecognized option to endianness value: %qs) |
3ae9eb27 | 437 | |
f19626cf | 438 | EnumValue |
9acd5a01 | 439 | Enum(gfc_convert) String(big-endian) Value(GFC_FLAG_CONVERT_BIG) Set(1) |
10612ddf | 440 | |
f19626cf | 441 | EnumValue |
9acd5a01 | 442 | Enum(gfc_convert) String(little-endian) Value(GFC_FLAG_CONVERT_LITTLE) Set(1) |
f19626cf TB |
443 | |
444 | EnumValue | |
9acd5a01 | 445 | Enum(gfc_convert) String(native) Value(GFC_FLAG_CONVERT_NATIVE) Set(1) |
f19626cf TB |
446 | |
447 | EnumValue | |
9acd5a01 JJ |
448 | Enum(gfc_convert) String(swap) Value(GFC_FLAG_CONVERT_SWAP) Set(1) |
449 | ||
450 | EnumValue | |
451 | Enum(gfc_convert) String(r16_ieee) Value(GFC_FLAG_CONVERT_R16_IEEE) Set(2) | |
452 | ||
453 | EnumValue | |
454 | Enum(gfc_convert) String(r16_ibm) Value(GFC_FLAG_CONVERT_R16_IBM) Set(2) | |
10612ddf BM |
455 | |
456 | fcray-pointer | |
c61819ff | 457 | Fortran Var(flag_cray_pointer) |
a7b2e184 | 458 | Use the Cray Pointer extension. |
6de9cd9a | 459 | |
e655a6cc TK |
460 | fc-prototypes |
461 | Fortran Var(flag_c_prototypes) | |
462 | Generate C prototypes from BIND(C) declarations. | |
463 | ||
6328ce1f TK |
464 | fc-prototypes-external |
465 | Fortran Var(flag_c_prototypes_external) | |
466 | Generate C prototypes from non-BIND(C) external procedure definitions. | |
467 | ||
e0bcf78c | 468 | fd-lines-as-code |
7f26dfa3 | 469 | Fortran RejectNegative |
a7b2e184 | 470 | Ignore 'D' in column one in fixed form. |
e0bcf78c TS |
471 | |
472 | fd-lines-as-comments | |
7f26dfa3 | 473 | Fortran RejectNegative |
a7b2e184 | 474 | Treat lines with 'D' in column one as comments. |
e0bcf78c | 475 | |
662de36b TK |
476 | fdebug-aux-vars |
477 | Fortran Var(flag_debug_aux_vars) | |
478 | Issue debug information for compiler-generated auxiliary variables. | |
479 | ||
f6288c24 | 480 | fdec |
f6d17ecd | 481 | Fortran Var(flag_dec) |
f6288c24 FR |
482 | Enable all DEC language extensions. |
483 | ||
17f62b7e JM |
484 | fdec-blank-format-item |
485 | Fortran Var(flag_dec_blank_format_item) | |
486 | Enable the use of blank format items in format strings. | |
487 | ||
2afeb1ca ME |
488 | fdec-char-conversions |
489 | Fortran Var(flag_dec_char_conversions) | |
490 | Enable the use of character literals in assignments and data statements | |
491 | for non-character variables. | |
492 | ||
7c74e813 JJ |
493 | fdec-include |
494 | Fortran Var(flag_dec_include) | |
495 | Enable legacy parsing of INCLUDE as statement. | |
496 | ||
88a8126a JB |
497 | fdec-format-defaults |
498 | Fortran Var(flag_dec_format_defaults) | |
499 | Enable default widths for i, f and g format specifiers. | |
500 | ||
c98583e9 FR |
501 | fdec-intrinsic-ints |
502 | Fortran Var(flag_dec_intrinsic_ints) | |
503 | Enable kind-specific variants of integer intrinsic functions. | |
504 | ||
8e8c2744 FR |
505 | fdec-math |
506 | Fortran Var(flag_dec_math) | |
507 | Enable legacy math intrinsics for compatibility. | |
508 | ||
f6288c24 | 509 | fdec-structure |
f6d17ecd | 510 | Fortran Var(flag_dec_structure) |
f6288c24 FR |
511 | Enable support for DEC STRUCTURE/RECORD. |
512 | ||
34d567d1 FR |
513 | fdec-static |
514 | Fortran Var(flag_dec_static) | |
515 | Enable DEC-style STATIC and AUTOMATIC attributes. | |
516 | ||
10612ddf | 517 | fdefault-double-8 |
203c7ebf | 518 | Fortran Var(flag_default_double) |
a7b2e184 | 519 | Set the default double precision kind to an 8 byte wide type. |
10612ddf BM |
520 | |
521 | fdefault-integer-8 | |
203c7ebf | 522 | Fortran Var(flag_default_integer) |
a7b2e184 | 523 | Set the default integer kind to an 8 byte wide type. |
10612ddf BM |
524 | |
525 | fdefault-real-8 | |
d16d81b5 | 526 | Fortran Var(flag_default_real_8) |
a7b2e184 | 527 | Set the default real kind to an 8 byte wide type. |
10612ddf | 528 | |
d16d81b5 JW |
529 | fdefault-real-10 |
530 | Fortran Var(flag_default_real_10) | |
531 | Set the default real kind to an 10 byte wide type. | |
532 | ||
533 | fdefault-real-16 | |
534 | Fortran Var(flag_default_real_16) | |
535 | Set the default real kind to an 16 byte wide type. | |
536 | ||
6de9cd9a | 537 | fdollar-ok |
c61819ff | 538 | Fortran Var(flag_dollar_ok) |
a7b2e184 | 539 | Allow dollar signs in entity names. |
6de9cd9a | 540 | |
ade2e403 TB |
541 | fdump-core |
542 | Fortran Ignore | |
543 | Does nothing. Preserved for backward compatibility. | |
544 | ||
1607a827 | 545 | fdump-fortran-original |
c61819ff | 546 | Fortran Var(flag_dump_fortran_original) |
a7b2e184 | 547 | Display the code tree after parsing. |
6de9cd9a | 548 | |
1607a827 | 549 | fdump-fortran-optimized |
c61819ff | 550 | Fortran Var(flag_dump_fortran_optimized) |
a7b2e184 | 551 | Display the code tree after front end optimization. |
1607a827 | 552 | |
5c6aa9a8 TK |
553 | fdump-fortran-global |
554 | Fortran Var(flag_dump_fortran_global) | |
555 | Display the global symbol table after parsing. | |
556 | ||
1607a827 | 557 | fdump-parse-tree |
c61819ff | 558 | Fortran Alias(fdump-fortran-original) |
a7b2e184 | 559 | Display the code tree after parsing; deprecated option. |
1607a827 | 560 | |
10612ddf | 561 | fexternal-blas |
c61819ff | 562 | Fortran Var(flag_external_blas) |
a7b2e184 | 563 | Specify that an external BLAS library should be used for matmul calls on large-size arrays. |
10612ddf | 564 | |
973ff4c0 | 565 | ff2c |
c61819ff | 566 | Fortran Var(flag_f2c) |
a7b2e184 | 567 | Use f2c calling convention. |
973ff4c0 | 568 | |
6de9cd9a | 569 | ffixed-form |
1005cc9c | 570 | Fortran RejectNegative |
a7b2e184 | 571 | Assume that the source file is fixed form. |
6de9cd9a | 572 | |
7bd5dad2 LK |
573 | ftest-forall-temp |
574 | Fortran Var(flag_test_forall_temp) Init(0) | |
02a7f8dc | 575 | Force creation of temporary to test infrequently-executed forall code. |
7bd5dad2 | 576 | |
f4347334 | 577 | finteger-4-integer-8 |
203c7ebf | 578 | Fortran RejectNegative Var(flag_integer4_kind,8) |
a7b2e184 | 579 | Interpret any INTEGER(4) as an INTEGER(8). |
f4347334 | 580 | |
31198773 | 581 | fintrinsic-modules-path |
f34dea03 | 582 | Fortran RejectNegative Separate |
a7b2e184 | 583 | Specify where to find the compiled intrinsic modules. |
f34dea03 JJ |
584 | |
585 | fintrinsic-modules-path= | |
586 | Fortran RejectNegative Joined | |
a7b2e184 | 587 | Specify where to find the compiled intrinsic modules. |
31198773 | 588 | |
f56c5d5d | 589 | ffixed-line-length-none |
203c7ebf | 590 | Fortran RejectNegative Var(flag_fixed_line_length,0) |
a7b2e184 | 591 | Allow arbitrary character line width in fixed mode. |
6de9cd9a | 592 | |
f56c5d5d | 593 | ffixed-line-length- |
203c7ebf | 594 | Fortran RejectNegative Joined UInteger Var(flag_fixed_line_length) Init(72) |
a7b2e184 | 595 | -ffixed-line-length-<n> Use n as character line width in fixed mode. |
6de9cd9a | 596 | |
f03d260a JJ |
597 | fpad-source |
598 | Fortran Var(flag_pad_source) Init(1) | |
599 | Pad shorter fixed form lines to line width with spaces. | |
600 | ||
10612ddf BM |
601 | ffpe-trap= |
602 | Fortran RejectNegative JoinedOrMissing | |
a7b2e184 | 603 | -ffpe-trap=[...] Stop on following floating point exceptions. |
10612ddf | 604 | |
fa86f4f9 TB |
605 | ffpe-summary= |
606 | Fortran RejectNegative JoinedOrMissing | |
a7b2e184 | 607 | -ffpe-summary=[...] Print summary of floating point exceptions. |
fa86f4f9 | 608 | |
10612ddf BM |
609 | ffree-form |
610 | Fortran RejectNegative | |
a7b2e184 | 611 | Assume that the source file is free form. |
10612ddf | 612 | |
16ab8e74 | 613 | ffree-line-length-none |
203c7ebf | 614 | Fortran RejectNegative Var(flag_free_line_length,0) |
a7b2e184 | 615 | Allow arbitrary character line width in free mode. |
16ab8e74 BF |
616 | |
617 | ffree-line-length- | |
203c7ebf | 618 | Fortran RejectNegative Joined UInteger Var(flag_free_line_length) Init(132) |
a7b2e184 | 619 | -ffree-line-length-<n> Use n as character line width in free mode. |
16ab8e74 | 620 | |
d88412fc TK |
621 | ffrontend-loop-interchange |
622 | Fortran Var(flag_frontend_loop_interchange) Init(-1) | |
623 | Try to interchange loops if profitable. | |
624 | ||
51a30b32 | 625 | ffrontend-optimize |
203c7ebf | 626 | Fortran Var(flag_frontend_optimize) Init(-1) |
a7b2e184 | 627 | Enable front end optimization. |
51a30b32 | 628 | |
10612ddf | 629 | fimplicit-none |
c61819ff | 630 | Fortran Var(flag_implicit_none) |
a7b2e184 | 631 | Specify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements. |
10612ddf | 632 | |
51b09ce3 AL |
633 | finit-character= |
634 | Fortran RejectNegative Joined UInteger | |
a7b2e184 | 635 | -finit-character=<n> Initialize local character variables to ASCII value n. |
51b09ce3 | 636 | |
7fc61626 FR |
637 | finit-derived |
638 | Fortran Var(flag_init_derived) | |
639 | Initialize components of derived type variables according to other init flags. | |
640 | ||
51b09ce3 AL |
641 | finit-integer= |
642 | Fortran RejectNegative Joined | |
a7b2e184 | 643 | -finit-integer=<n> Initialize local integer variables to n. |
51b09ce3 AL |
644 | |
645 | finit-local-zero | |
646 | Fortran | |
a7b2e184 | 647 | Initialize local variables to zero (from g77). |
51b09ce3 AL |
648 | |
649 | finit-logical= | |
650 | Fortran RejectNegative Joined | |
a7b2e184 | 651 | -finit-logical=<true|false> Initialize local logical variables. |
51b09ce3 AL |
652 | |
653 | finit-real= | |
f19626cf | 654 | Fortran RejectNegative ToLower Joined Enum(gfc_init_local_real) Var(flag_init_real) Init(GFC_INIT_REAL_OFF) |
a7b2e184 | 655 | -finit-real=<zero|snan|nan|inf|-inf> Initialize local real variables. |
f19626cf TB |
656 | |
657 | Enum | |
658 | Name(gfc_init_local_real) Type(enum gfc_init_local_real) UnknownError(Unrecognized option to floating-point init value: %qs) | |
659 | ||
660 | EnumValue | |
661 | Enum(gfc_init_local_real) String(zero) Value(GFC_INIT_REAL_ZERO) | |
662 | ||
663 | EnumValue | |
664 | Enum(gfc_init_local_real) String(snan) Value(GFC_INIT_REAL_SNAN) | |
665 | ||
666 | EnumValue | |
667 | Enum(gfc_init_local_real) String(nan) Value(GFC_INIT_REAL_NAN) | |
668 | ||
669 | EnumValue | |
670 | Enum(gfc_init_local_real) String(inf) Value(GFC_INIT_REAL_INF) | |
671 | ||
672 | EnumValue | |
673 | Enum(gfc_init_local_real) String(-inf) Value(GFC_INIT_REAL_NEG_INF) | |
51b09ce3 | 674 | |
95d27703 TK |
675 | finline-arg-packing |
676 | Fortran Var(flag_inline_arg_packing) Init(-1) | |
907343e8 | 677 | -finline-arg-packing Perform argument packing inline. |
95d27703 | 678 | |
f1abbf69 TK |
679 | finline-matmul-limit= |
680 | Fortran RejectNegative Joined UInteger Var(flag_inline_matmul_limit) Init(-1) | |
a7b2e184 | 681 | -finline-matmul-limit=<n> Specify the size of the largest matrix for which matmul will be inlined. |
f1abbf69 | 682 | |
63346ddb | 683 | fmax-array-constructor= |
c61819ff | 684 | Fortran RejectNegative Joined UInteger Var(flag_max_array_constructor) Init(65535) |
a7b2e184 | 685 | -fmax-array-constructor=<n> Maximum number of objects in an array constructor. |
63346ddb | 686 | |
6de9cd9a | 687 | fmax-identifier-length= |
7f26dfa3 | 688 | Fortran RejectNegative Joined UInteger |
a7b2e184 | 689 | -fmax-identifier-length=<n> Maximum identifier length. |
6de9cd9a | 690 | |
07b3bbf2 | 691 | fmax-subrecord-length= |
203c7ebf | 692 | Fortran RejectNegative Joined UInteger Var(flag_max_subrecord_length) |
a7b2e184 | 693 | -fmax-subrecord-length=<n> Maximum length for subrecords. |
07b3bbf2 | 694 | |
6de9cd9a | 695 | fmax-stack-var-size= |
203c7ebf | 696 | Fortran RejectNegative Joined UInteger Var(flag_max_stack_var_size) Init(-2) |
a7b2e184 | 697 | -fmax-stack-var-size=<n> Size in bytes of the largest array that will be put on the stack. |
6de9cd9a | 698 | |
c76f8d52 | 699 | fstack-arrays |
203c7ebf | 700 | Fortran Var(flag_stack_arrays) Init(-1) |
c76f8d52 MM |
701 | Put all local arrays on stack. |
702 | ||
654b6073 | 703 | fmodule-private |
c61819ff | 704 | Fortran Var(flag_module_private) |
654b6073 FXC |
705 | Set default accessibility of module entities to PRIVATE. |
706 | ||
41dbbb37 | 707 | fopenacc |
a0c88d06 | 708 | Fortran LTO |
41dbbb37 TS |
709 | ; Documented in C |
710 | ||
b6adbb9f NS |
711 | fopenacc-dim= |
712 | Fortran LTO Joined Var(flag_openacc_dims) | |
713 | ; Documented in C | |
714 | ||
10612ddf | 715 | fopenmp |
1506ae0e | 716 | Fortran LTO |
9a0f3e86 | 717 | ; Documented in C |
54554825 | 718 | |
6d7f7e0a TB |
719 | fopenmp-simd |
720 | Fortran | |
721 | ; Documented in C | |
722 | ||
d4b6d147 TB |
723 | fopenmp-allocators |
724 | Fortran Var(flag_openmp_allocators) | |
725 | Handle OpenMP allocators for allocatables and pointers. | |
726 | ||
6de9cd9a | 727 | fpack-derived |
c61819ff | 728 | Fortran Var(flag_pack_derived) |
a7b2e184 | 729 | Try to lay out derived types as compactly as possible. |
6de9cd9a | 730 | |
10612ddf BM |
731 | fpreprocessed |
732 | Fortran | |
9a0f3e86 | 733 | ; Documented in C |
10612ddf | 734 | |
72bd130e | 735 | fprotect-parens |
203c7ebf | 736 | Fortran Var(flag_protect_parens) Init(-1) |
a7b2e184 | 737 | Protect parentheses in expressions. |
72bd130e | 738 | |
facf0354 ML |
739 | fpre-include= |
740 | Fortran RejectNegative Joined Var(flag_pre_include) Undocumented | |
741 | Path to header file that should be pre-included before each compilation unit. | |
742 | ||
10612ddf | 743 | frange-check |
c61819ff | 744 | Fortran Var(flag_range_check) Init(1) |
a7b2e184 | 745 | Enable range checking during compilation. |
10612ddf | 746 | |
f4347334 | 747 | freal-4-real-8 |
203c7ebf | 748 | Fortran RejectNegative Var(flag_real4_kind,8) |
a7b2e184 | 749 | Interpret any REAL(4) as a REAL(8). |
f4347334 ZG |
750 | |
751 | freal-4-real-10 | |
203c7ebf | 752 | Fortran RejectNegative Var(flag_real4_kind,10) |
a7b2e184 | 753 | Interpret any REAL(4) as a REAL(10). |
f4347334 ZG |
754 | |
755 | freal-4-real-16 | |
203c7ebf | 756 | Fortran RejectNegative Var(flag_real4_kind,16) |
a7b2e184 | 757 | Interpret any REAL(4) as a REAL(16). |
f4347334 ZG |
758 | |
759 | freal-8-real-4 | |
203c7ebf | 760 | Fortran RejectNegative Var(flag_real8_kind,4) |
a7b2e184 | 761 | Interpret any REAL(8) as a REAL(4). |
f4347334 ZG |
762 | |
763 | freal-8-real-10 | |
203c7ebf | 764 | Fortran RejectNegative Var(flag_real8_kind,10) |
a7b2e184 | 765 | Interpret any REAL(8) as a REAL(10). |
f4347334 ZG |
766 | |
767 | freal-8-real-16 | |
203c7ebf | 768 | Fortran RejectNegative Var(flag_real8_kind,16) |
a7b2e184 | 769 | Interpret any REAL(8) as a REAL(16). |
f4347334 | 770 | |
597553ab | 771 | frealloc-lhs |
203c7ebf | 772 | Fortran Var(flag_realloc_lhs) Init(-1) |
a7b2e184 | 773 | Reallocate the LHS in assignments. |
597553ab | 774 | |
10612ddf | 775 | frecord-marker=4 |
203c7ebf | 776 | Fortran RejectNegative Var(flag_record_marker,4) |
a7b2e184 | 777 | Use a 4-byte record marker for unformatted files. |
10612ddf BM |
778 | |
779 | frecord-marker=8 | |
203c7ebf | 780 | Fortran RejectNegative Var(flag_record_marker,8) |
a7b2e184 | 781 | Use an 8-byte record marker for unformatted files. |
10612ddf | 782 | |
1e7de83b | 783 | frecursive |
c61819ff | 784 | Fortran Var(flag_recursive) |
a7b2e184 | 785 | Allocate local variables on the stack to allow indirect recursion. |
1e7de83b | 786 | |
6de9cd9a | 787 | frepack-arrays |
c61819ff | 788 | Fortran Var(flag_repack_arrays) |
a7b2e184 | 789 | Copy array sections into a contiguous block on procedure entry. |
6de9cd9a | 790 | |
f4d1d50a | 791 | fcoarray= |
f19626cf | 792 | Fortran RejectNegative Joined Enum(gfc_fcoarray) Var(flag_coarray) Init(GFC_FCOARRAY_NONE) |
a7b2e184 | 793 | -fcoarray=<none|single|lib> Specify which coarray parallelization should be used. |
f19626cf TB |
794 | |
795 | Enum | |
796 | Name(gfc_fcoarray) Type(enum gfc_fcoarray) UnknownError(Unrecognized option: %qs) | |
797 | ||
798 | EnumValue | |
799 | Enum(gfc_fcoarray) String(none) Value(GFC_FCOARRAY_NONE) | |
800 | ||
801 | EnumValue | |
802 | Enum(gfc_fcoarray) String(single) Value(GFC_FCOARRAY_SINGLE) | |
803 | ||
804 | EnumValue | |
805 | Enum(gfc_fcoarray) String(lib) Value(GFC_FCOARRAY_LIB) | |
f4d1d50a | 806 | |
d3d3011f FXC |
807 | fcheck= |
808 | Fortran RejectNegative JoinedOrMissing | |
a7b2e184 | 809 | -fcheck=[...] Specify which runtime checks are to be performed. |
d3d3011f | 810 | |
10612ddf | 811 | fsecond-underscore |
203c7ebf | 812 | Fortran Var(flag_second_underscore) Init(-1) |
a7b2e184 | 813 | Append a second underscore if the name already contains an underscore. |
2d7c7df6 | 814 | |
10612ddf | 815 | fshort-enums |
f0036cca | 816 | Fortran Var(flag_short_enums) |
cab129d1 | 817 | ; Documented in C |
944b8b35 | 818 | |
68d2e027 | 819 | fsign-zero |
c61819ff | 820 | Fortran Var(flag_sign_zero) Init(1) |
a7b2e184 | 821 | Apply negative sign to zero values. |
68d2e027 | 822 | |
ffeebc4f | 823 | ftail-call-workaround |
d4ecfa56 | 824 | Fortran Alias(ftail-call-workaround=,1,0) |
ffeebc4f JJ |
825 | |
826 | ftail-call-workaround= | |
827 | Fortran RejectNegative Joined UInteger IntegerRange(0, 2) Var(flag_tail_call_workaround) Init(1) | |
02fac244 | 828 | Disallow tail call optimization when a calling routine may have omitted character lengths. |
ffeebc4f | 829 | |
10612ddf | 830 | funderscoring |
c61819ff | 831 | Fortran Var(flag_underscoring) Init(1) |
a7b2e184 | 832 | Append underscores to externally visible names. |
6de9cd9a | 833 | |
71a7778c | 834 | fwhole-file |
9fa52231 TB |
835 | Fortran Ignore |
836 | Does nothing. Preserved for backward compatibility. | |
71a7778c | 837 | |
670637ee DF |
838 | fworking-directory |
839 | Fortran | |
840 | ; Documented in C | |
841 | ||
c3280643 DF |
842 | idirafter |
843 | Fortran Joined Separate | |
844 | ; Documented in C | |
845 | ||
670637ee DF |
846 | imultilib |
847 | Fortran Joined Separate | |
848 | ; Documented in C | |
849 | ||
850 | iprefix | |
851 | Fortran Joined Separate | |
852 | ; Documented in C | |
853 | ||
854 | iquote | |
855 | Fortran Joined Separate | |
856 | ; Documented in C | |
857 | ||
858 | isysroot | |
859 | Fortran Joined Separate | |
860 | ; Documented in C | |
861 | ||
862 | isystem | |
863 | Fortran Joined Separate | |
864 | ; Documented in C | |
865 | ||
866 | nostdinc | |
867 | Fortran | |
868 | ; Documented in C | |
869 | ||
870 | o | |
871 | Fortran Joined Separate | |
872 | ; Documented in common.opt | |
873 | ||
86db887a | 874 | static-libgfortran |
dd899c7d | 875 | Driver |
a7b2e184 | 876 | Statically link the GNU Fortran helper library (libgfortran). |
86db887a | 877 | |
745be54b | 878 | static-libquadmath |
dd899c7d | 879 | Driver |
745be54b JJ |
880 | Statically link the GCC Quad-Precision Math Library (libquadmath). |
881 | ||
6de9cd9a | 882 | std=f2003 |
7f26dfa3 | 883 | Fortran |
a7b2e184 | 884 | Conform to the ISO Fortran 2003 standard. |
6de9cd9a | 885 | |
f489fba1 FXC |
886 | std=f2008 |
887 | Fortran | |
a7b2e184 | 888 | Conform to the ISO Fortran 2008 standard. |
f489fba1 | 889 | |
4650947d | 890 | std=f2008ts |
2e8d9212 | 891 | Fortran |
a7b2e184 | 892 | Conform to the ISO Fortran 2008 standard including TS 29113. |
2e8d9212 | 893 | |
8179b067 JB |
894 | std=f2018 |
895 | Fortran | |
896 | Conform to the ISO Fortran 2018 standard. | |
897 | ||
b9eba3ba TB |
898 | std=f2023 |
899 | Fortran | |
900 | Conform to the ISO Fortran 2023 standard. | |
901 | ||
10612ddf BM |
902 | std=f95 |
903 | Fortran | |
a7b2e184 | 904 | Conform to the ISO Fortran 95 standard. |
10612ddf | 905 | |
6de9cd9a | 906 | std=gnu |
7f26dfa3 | 907 | Fortran |
a7b2e184 | 908 | Conform to nothing in particular. |
6de9cd9a | 909 | |
c0309c74 | 910 | std=legacy |
7f26dfa3 | 911 | Fortran |
a7b2e184 | 912 | Accept extensions to support legacy code. |
c0309c74 | 913 | |
670637ee DF |
914 | undef |
915 | Fortran | |
916 | ; Documented in C | |
917 | ||
918 | v | |
919 | Fortran | |
920 | ; Documented in C | |
921 | ||
6de9cd9a | 922 | ; This comment is to ensure we retain the blank line above. |