xref: /dflybsd-src/contrib/gcc-8.0/gcc/fortran/lang.opt (revision 38fd149817dfbff97799f62fcb70be98c4e32523)
1*38fd1498Szrj; Options for the Fortran front end.
2*38fd1498Szrj; Copyright (C) 2003-2018 Free Software Foundation, Inc.
3*38fd1498Szrj;
4*38fd1498Szrj; This file is part of GCC.
5*38fd1498Szrj;
6*38fd1498Szrj; GCC is free software; you can redistribute it and/or modify it under
7*38fd1498Szrj; the terms of the GNU General Public License as published by the Free
8*38fd1498Szrj; Software Foundation; either version 3, or (at your option) any later
9*38fd1498Szrj; version.
10*38fd1498Szrj;
11*38fd1498Szrj; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12*38fd1498Szrj; WARRANTY; without even the implied warranty of MERCHANTABILITY or
13*38fd1498Szrj; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14*38fd1498Szrj; for more details.
15*38fd1498Szrj;
16*38fd1498Szrj; You should have received a copy of the GNU General Public License
17*38fd1498Szrj; along with GCC; see the file COPYING3.  If not see
18*38fd1498Szrj; <http://www.gnu.org/licenses/>.
19*38fd1498Szrj
20*38fd1498Szrj; See the GCC internals manual for a description of this file's format.
21*38fd1498Szrj
22*38fd1498Szrj; Please try to keep this file in ASCII collating order.
23*38fd1498Szrj
24*38fd1498SzrjLanguage
25*38fd1498SzrjFortran
26*38fd1498Szrj
27*38fd1498Szrj-all-warnings
28*38fd1498SzrjFortran Alias(Wall)
29*38fd1498Szrj
30*38fd1498Szrj-assert
31*38fd1498SzrjFortran Separate Alias(A)
32*38fd1498Szrj
33*38fd1498Szrj-assert=
34*38fd1498SzrjFortran Joined Alias(A)
35*38fd1498Szrj
36*38fd1498Szrj-comments
37*38fd1498SzrjFortran Alias(C)
38*38fd1498Szrj
39*38fd1498Szrj-comments-in-macros
40*38fd1498SzrjFortran Alias(CC)
41*38fd1498Szrj
42*38fd1498Szrj-define-macro
43*38fd1498SzrjFortran Separate Alias(D)
44*38fd1498Szrj
45*38fd1498Szrj-define-macro=
46*38fd1498SzrjFortran Joined Alias(D)
47*38fd1498Szrj
48*38fd1498Szrj-dependencies
49*38fd1498SzrjFortran Alias(M)
50*38fd1498Szrj
51*38fd1498Szrj-dump
52*38fd1498SzrjFortran Separate Alias(d)
53*38fd1498Szrj
54*38fd1498Szrj-dump=
55*38fd1498SzrjFortran Joined Alias(d)
56*38fd1498Szrj
57*38fd1498Szrj-include-barrier
58*38fd1498SzrjFortran Alias(I, -)
59*38fd1498Szrj
60*38fd1498Szrj-include-directory
61*38fd1498SzrjFortran Separate Alias(I)
62*38fd1498Szrj
63*38fd1498Szrj-include-directory=
64*38fd1498SzrjFortran Joined Alias(I)
65*38fd1498Szrj
66*38fd1498Szrj-include-directory-after
67*38fd1498SzrjFortran Separate Alias(idirafter)
68*38fd1498Szrj
69*38fd1498Szrj-include-directory-after=
70*38fd1498SzrjFortran Joined Alias(idirafter)
71*38fd1498Szrj
72*38fd1498Szrj-include-prefix
73*38fd1498SzrjFortran Separate Alias(iprefix)
74*38fd1498Szrj
75*38fd1498Szrj-include-prefix=
76*38fd1498SzrjFortran JoinedOrMissing Alias(iprefix)
77*38fd1498Szrj
78*38fd1498Szrj-no-line-commands
79*38fd1498SzrjFortran Alias(P)
80*38fd1498Szrj
81*38fd1498Szrj-no-standard-includes
82*38fd1498SzrjFortran Alias(nostdinc)
83*38fd1498Szrj
84*38fd1498Szrj-output
85*38fd1498SzrjFortran Separate Alias(o)
86*38fd1498Szrj
87*38fd1498Szrj-output=
88*38fd1498SzrjFortran Joined Alias(o)
89*38fd1498Szrj
90*38fd1498Szrj-preprocess
91*38fd1498SzrjFortran Undocumented Alias(E)
92*38fd1498Szrj
93*38fd1498Szrj-print-missing-file-dependencies
94*38fd1498SzrjFortran Alias(MG)
95*38fd1498Szrj
96*38fd1498Szrj-trace-includes
97*38fd1498SzrjFortran Alias(H)
98*38fd1498Szrj
99*38fd1498Szrj-undefine-macro
100*38fd1498SzrjFortran Separate Alias(U)
101*38fd1498Szrj
102*38fd1498Szrj-undefine-macro=
103*38fd1498SzrjFortran Joined Alias(U)
104*38fd1498Szrj
105*38fd1498Szrj-user-dependencies
106*38fd1498SzrjFortran Alias(MM)
107*38fd1498Szrj
108*38fd1498Szrj-verbose
109*38fd1498SzrjFortran Alias(v)
110*38fd1498Szrj
111*38fd1498Szrj-write-dependencies
112*38fd1498SzrjFortran NoDriverArg Separate Alias(MD)
113*38fd1498Szrj
114*38fd1498Szrj-write-user-dependencies
115*38fd1498SzrjFortran NoDriverArg Separate Alias(MMD)
116*38fd1498Szrj
117*38fd1498SzrjA
118*38fd1498SzrjFortran Joined Separate
119*38fd1498Szrj; Documented in C
120*38fd1498Szrj
121*38fd1498SzrjC
122*38fd1498SzrjFortran
123*38fd1498Szrj; Documented in C
124*38fd1498Szrj
125*38fd1498SzrjCC
126*38fd1498SzrjFortran
127*38fd1498Szrj; Documented in C
128*38fd1498Szrj
129*38fd1498SzrjD
130*38fd1498SzrjFortran Joined Separate
131*38fd1498Szrj; Documented in C
132*38fd1498Szrj
133*38fd1498SzrjE
134*38fd1498SzrjFortran Undocumented
135*38fd1498Szrj
136*38fd1498SzrjH
137*38fd1498SzrjFortran
138*38fd1498Szrj; Documented in C
139*38fd1498Szrj
140*38fd1498SzrjI
141*38fd1498SzrjFortran Joined Separate
142*38fd1498Szrj; Documented in C
143*38fd1498Szrj
144*38fd1498SzrjJ
145*38fd1498SzrjFortran Joined Separate
146*38fd1498Szrj-J<directory>	Put MODULE files in 'directory'.
147*38fd1498Szrj
148*38fd1498SzrjM
149*38fd1498SzrjFortran
150*38fd1498Szrj; Documented in C
151*38fd1498Szrj
152*38fd1498SzrjMD
153*38fd1498SzrjFortran Separate NoDriverArg
154*38fd1498Szrj; Documented in C
155*38fd1498Szrj
156*38fd1498SzrjMF
157*38fd1498SzrjFortran Joined Separate
158*38fd1498Szrj; Documented in C
159*38fd1498Szrj
160*38fd1498SzrjMG
161*38fd1498SzrjFortran
162*38fd1498Szrj; Documented in C
163*38fd1498Szrj
164*38fd1498SzrjMM
165*38fd1498SzrjFortran
166*38fd1498Szrj; Documented in C
167*38fd1498Szrj
168*38fd1498SzrjMMD
169*38fd1498SzrjFortran Separate NoDriverArg
170*38fd1498Szrj; Documented in C
171*38fd1498Szrj
172*38fd1498SzrjMP
173*38fd1498SzrjFortran
174*38fd1498Szrj; Documented in C
175*38fd1498Szrj
176*38fd1498SzrjMT
177*38fd1498SzrjFortran Joined Separate
178*38fd1498Szrj; Documented in C
179*38fd1498Szrj
180*38fd1498SzrjMQ
181*38fd1498SzrjFortran Joined Separate
182*38fd1498Szrj; Documented in C
183*38fd1498Szrj
184*38fd1498SzrjP
185*38fd1498SzrjFortran
186*38fd1498Szrj; Documented in C
187*38fd1498Szrj
188*38fd1498SzrjU
189*38fd1498SzrjFortran Joined Separate
190*38fd1498Szrj; Documented in C
191*38fd1498Szrj
192*38fd1498SzrjWall
193*38fd1498SzrjFortran
194*38fd1498Szrj; Documented in C
195*38fd1498Szrj
196*38fd1498SzrjWaliasing
197*38fd1498SzrjFortran Warning Var(warn_aliasing) LangEnabledBy(Fortran,Wall)
198*38fd1498SzrjWarn about possible aliasing of dummy arguments.
199*38fd1498Szrj
200*38fd1498SzrjWalign-commons
201*38fd1498SzrjFortran Warning Var(warn_align_commons) Init(1)
202*38fd1498SzrjWarn about alignment of COMMON blocks.
203*38fd1498Szrj
204*38fd1498SzrjWampersand
205*38fd1498SzrjFortran Warning Var(warn_ampersand) LangEnabledBy(Fortran,Wall || Wpedantic)
206*38fd1498SzrjWarn about missing ampersand in continued character constants.
207*38fd1498Szrj
208*38fd1498SzrjWarray-temporaries
209*38fd1498SzrjFortran Warning Var(warn_array_temporaries)
210*38fd1498SzrjWarn about creation of array temporaries.
211*38fd1498Szrj
212*38fd1498SzrjWargument-mismatch
213*38fd1498SzrjFortran Warning Var(warn_argument_mismatch) Init(1)
214*38fd1498SzrjWarn about type and rank mismatches between arguments and parameters.
215*38fd1498Szrj
216*38fd1498SzrjWc-binding-type
217*38fd1498SzrjFortran Var(warn_c_binding_type) Warning LangEnabledBy(Fortran,Wall)
218*38fd1498SzrjWarn if the type of a variable might be not interoperable with C.
219*38fd1498Szrj
220*38fd1498SzrjWdate-time
221*38fd1498SzrjFortran
222*38fd1498Szrj; Documented in C
223*38fd1498Szrj
224*38fd1498SzrjWcharacter-truncation
225*38fd1498SzrjFortran Var(warn_character_truncation) Warning LangEnabledBy(Fortran,Wall)
226*38fd1498SzrjWarn about truncated character expressions.
227*38fd1498Szrj
228*38fd1498SzrjWcompare-reals
229*38fd1498SzrjFortran Warning Var(warn_compare_reals) LangEnabledBy(Fortran,Wextra)
230*38fd1498SzrjWarn about equality comparisons involving REAL or COMPLEX expressions.
231*38fd1498Szrj
232*38fd1498SzrjWconversion
233*38fd1498SzrjFortran Var(warn_conversion) Warning LangEnabledBy(Fortran,Wall)
234*38fd1498Szrj; Documented in C
235*38fd1498Szrj
236*38fd1498SzrjWconversion-extra
237*38fd1498SzrjFortran Var(warn_conversion_extra) Warning
238*38fd1498SzrjWarn about most implicit conversions.
239*38fd1498Szrj
240*38fd1498SzrjWdo-subscript
241*38fd1498SzrjFortran Var(warn_do_subscript) Warning LangEnabledBy(Fortran,Wextra)
242*38fd1498SzrjWarn about possibly incorrect subscripts in do loops.
243*38fd1498Szrj
244*38fd1498SzrjWextra
245*38fd1498SzrjFortran Warning
246*38fd1498Szrj; Documented in common
247*38fd1498Szrj
248*38fd1498SzrjWfrontend-loop-interchange
249*38fd1498SzrjFortran Var(flag_warn_frontend_loop_interchange)
250*38fd1498SzrjWarn if loops have been interchanged.
251*38fd1498Szrj
252*38fd1498SzrjWfunction-elimination
253*38fd1498SzrjFortran Warning Var(warn_function_elimination)
254*38fd1498SzrjWarn about function call elimination.
255*38fd1498Szrj
256*38fd1498SzrjWimplicit-interface
257*38fd1498SzrjFortran Warning Var(warn_implicit_interface)
258*38fd1498SzrjWarn about calls with implicit interface.
259*38fd1498Szrj
260*38fd1498SzrjWimplicit-procedure
261*38fd1498SzrjFortran Warning Var(warn_implicit_procedure)
262*38fd1498SzrjWarn about called procedures not explicitly declared.
263*38fd1498Szrj
264*38fd1498SzrjWinteger-division
265*38fd1498SzrjFortran Warning Var(warn_integer_division) LangEnabledBy(Fortran,Wall)
266*38fd1498SzrjWarn about constant integer divisions with truncated results.
267*38fd1498Szrj
268*38fd1498SzrjWline-truncation
269*38fd1498SzrjFortran Warning Var(warn_line_truncation) LangEnabledBy(Fortran,Wall) Init(-1)
270*38fd1498SzrjWarn about truncated source lines.
271*38fd1498Szrj
272*38fd1498SzrjWintrinsics-std
273*38fd1498SzrjFortran Var(warn_intrinsics_std) Warning LangEnabledBy(Fortran,Wall)
274*38fd1498SzrjWarn on intrinsics not part of the selected standard.
275*38fd1498Szrj
276*38fd1498SzrjWmaybe-uninitialized
277*38fd1498SzrjFortran LangEnabledBy(Fortran,Wall)
278*38fd1498Szrj; Documented in common.opt
279*38fd1498Szrj
280*38fd1498SzrjWmissing-include-dirs
281*38fd1498SzrjFortran
282*38fd1498Szrj; Documented in C/C++
283*38fd1498Szrj
284*38fd1498SzrjWuse-without-only
285*38fd1498SzrjFortran Var(warn_use_without_only) Warning
286*38fd1498SzrjWarn about USE statements that have no ONLY qualifier.
287*38fd1498Szrj
288*38fd1498SzrjWopenmp-simd
289*38fd1498SzrjFortran
290*38fd1498Szrj; Documented in C
291*38fd1498Szrj
292*38fd1498SzrjWpedantic
293*38fd1498SzrjFortran
294*38fd1498Szrj; Documented in common.opt
295*38fd1498Szrj
296*38fd1498SzrjWreal-q-constant
297*38fd1498SzrjFortran Warning Var(warn_real_q_constant) LangEnabledBy(Fortran,Wall)
298*38fd1498SzrjWarn about real-literal-constants with 'q' exponent-letter.
299*38fd1498Szrj
300*38fd1498SzrjWrealloc-lhs
301*38fd1498SzrjFortran Warning Var(warn_realloc_lhs) LangEnabledBy(Fortran,Wrealloc-lhs-all)
302*38fd1498SzrjWarn when a left-hand-side array variable is reallocated.
303*38fd1498Szrj
304*38fd1498SzrjWrealloc-lhs-all
305*38fd1498SzrjFortran Warning Var(warn_realloc_lhs_all)
306*38fd1498SzrjWarn when a left-hand-side variable is reallocated.
307*38fd1498Szrj
308*38fd1498SzrjWtarget-lifetime
309*38fd1498SzrjFortran Warning Var(warn_target_lifetime) LangEnabledBy(Fortran,Wall)
310*38fd1498SzrjWarn if the pointer in a pointer assignment might outlive its target.
311*38fd1498Szrj
312*38fd1498SzrjWreturn-type
313*38fd1498SzrjFortran Warning LangEnabledBy(Fortran,Wall)
314*38fd1498Szrj; Documented in C
315*38fd1498Szrj
316*38fd1498SzrjWsurprising
317*38fd1498SzrjFortran Warning Var(warn_surprising) LangEnabledBy(Fortran,Wall)
318*38fd1498SzrjWarn about \"suspicious\" constructs.
319*38fd1498Szrj
320*38fd1498SzrjWtabs
321*38fd1498SzrjFortran Warning Var(warn_tabs) LangEnabledBy(Fortran,Wall || Wpedantic)
322*38fd1498SzrjPermit nonconforming uses of the tab character.
323*38fd1498Szrj
324*38fd1498SzrjWundefined-do-loop
325*38fd1498SzrjFortran Warning Var(warn_undefined_do_loop) LangEnabledBy(Fortran,Wall)
326*38fd1498SzrjWarn about an invalid DO loop.
327*38fd1498Szrj
328*38fd1498SzrjWunderflow
329*38fd1498SzrjFortran Warning Var(warn_underflow) Init(1)
330*38fd1498SzrjWarn about underflow of numerical constant expressions.
331*38fd1498Szrj
332*38fd1498SzrjWuninitialized
333*38fd1498SzrjFortran LangEnabledBy(Fortran,Wall)
334*38fd1498Szrj; Documented in common.opt
335*38fd1498Szrj
336*38fd1498SzrjWintrinsic-shadow
337*38fd1498SzrjFortran Warning Var(warn_intrinsic_shadow) LangEnabledBy(Fortran,Wall)
338*38fd1498SzrjWarn if a user-procedure has the same name as an intrinsic.
339*38fd1498Szrj
340*38fd1498SzrjWunused
341*38fd1498SzrjLangEnabledBy(Fortran,Wall)
342*38fd1498Szrj; Documented in common.opt
343*38fd1498Szrj
344*38fd1498SzrjWunused-dummy-argument
345*38fd1498SzrjFortran Warning Var(warn_unused_dummy_argument) LangEnabledBy(Fortran,Wall)
346*38fd1498SzrjWarn about unused dummy arguments.
347*38fd1498Szrj
348*38fd1498SzrjWzerotrip
349*38fd1498SzrjFortran Warning Var(warn_zerotrip) LangEnabledBy(Fortran,Wall)
350*38fd1498SzrjWarn about zero-trip DO loops.
351*38fd1498Szrj
352*38fd1498Szrjcpp
353*38fd1498SzrjFortran Negative(nocpp)
354*38fd1498SzrjEnable preprocessing.
355*38fd1498Szrj
356*38fd1498Szrjcpp=
357*38fd1498SzrjFortran Joined Negative(nocpp) Undocumented NoDWARFRecord
358*38fd1498Szrj; Internal option generated by specs from -cpp.
359*38fd1498Szrj
360*38fd1498Szrjnocpp
361*38fd1498SzrjFortran Negative(cpp)
362*38fd1498SzrjDisable preprocessing.
363*38fd1498Szrj
364*38fd1498Szrjd
365*38fd1498SzrjFortran Joined
366*38fd1498Szrj; Documented in common.opt
367*38fd1498Szrj
368*38fd1498Szrjfaggressive-function-elimination
369*38fd1498SzrjFortran Var(flag_aggressive_function_elimination)
370*38fd1498SzrjEliminate multiple function invocations also for impure functions.
371*38fd1498Szrj
372*38fd1498Szrjfalign-commons
373*38fd1498SzrjFortran Var(flag_align_commons) Init(1)
374*38fd1498SzrjEnable alignment of COMMON blocks.
375*38fd1498Szrj
376*38fd1498Szrjfall-intrinsics
377*38fd1498SzrjFortran RejectNegative Var(flag_all_intrinsics)
378*38fd1498SzrjAll intrinsics procedures are available regardless of selected standard.
379*38fd1498Szrj
380*38fd1498Szrjfallow-leading-underscore
381*38fd1498SzrjFortran Undocumented Var(flag_allow_leading_underscore)
382*38fd1498Szrj; For internal use only: allow the first character of symbol names to be an underscore
383*38fd1498Szrj
384*38fd1498Szrjfautomatic
385*38fd1498SzrjFortran Var(flag_automatic) Init(1)
386*38fd1498SzrjDo not treat local variables and COMMON blocks as if they were named in SAVE statements.
387*38fd1498Szrj
388*38fd1498Szrjfbackslash
389*38fd1498SzrjFortran Var(flag_backslash)
390*38fd1498SzrjSpecify that backslash in string introduces an escape character.
391*38fd1498Szrj
392*38fd1498Szrjfbacktrace
393*38fd1498SzrjFortran Var(flag_backtrace) Init(1)
394*38fd1498SzrjProduce a backtrace when a runtime error is encountered.
395*38fd1498Szrj
396*38fd1498Szrjfblas-matmul-limit=
397*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_blas_matmul_limit) Init(30)
398*38fd1498Szrj-fblas-matmul-limit=<n>	Size of the smallest matrix for which matmul will use BLAS.
399*38fd1498Szrj
400*38fd1498Szrjfcheck-array-temporaries
401*38fd1498SzrjFortran
402*38fd1498SzrjProduce a warning at runtime if a array temporary has been created for a procedure argument.
403*38fd1498Szrj
404*38fd1498Szrjfconvert=
405*38fd1498SzrjFortran RejectNegative Joined Enum(gfc_convert) Var(flag_convert) Init(GFC_FLAG_CONVERT_NATIVE)
406*38fd1498Szrj-fconvert=<big-endian|little-endian|native|swap> The endianness used for unformatted files.
407*38fd1498Szrj
408*38fd1498SzrjEnum
409*38fd1498SzrjName(gfc_convert) Type(enum gfc_convert) UnknownError(Unrecognized option to endianness value: %qs)
410*38fd1498Szrj
411*38fd1498SzrjEnumValue
412*38fd1498SzrjEnum(gfc_convert) String(big-endian) Value(GFC_FLAG_CONVERT_BIG)
413*38fd1498Szrj
414*38fd1498SzrjEnumValue
415*38fd1498SzrjEnum(gfc_convert) String(little-endian) Value(GFC_FLAG_CONVERT_LITTLE)
416*38fd1498Szrj
417*38fd1498SzrjEnumValue
418*38fd1498SzrjEnum(gfc_convert) String(native) Value(GFC_FLAG_CONVERT_NATIVE)
419*38fd1498Szrj
420*38fd1498SzrjEnumValue
421*38fd1498SzrjEnum(gfc_convert) String(swap) Value(GFC_FLAG_CONVERT_SWAP)
422*38fd1498Szrj
423*38fd1498Szrjfcray-pointer
424*38fd1498SzrjFortran Var(flag_cray_pointer)
425*38fd1498SzrjUse the Cray Pointer extension.
426*38fd1498Szrj
427*38fd1498Szrjfc-prototypes
428*38fd1498SzrjFortran Var(flag_c_prototypes)
429*38fd1498SzrjGenerate C prototypes from BIND(C) declarations.
430*38fd1498Szrj
431*38fd1498Szrjfd-lines-as-code
432*38fd1498SzrjFortran RejectNegative
433*38fd1498SzrjIgnore 'D' in column one in fixed form.
434*38fd1498Szrj
435*38fd1498Szrjfd-lines-as-comments
436*38fd1498SzrjFortran RejectNegative
437*38fd1498SzrjTreat lines with 'D' in column one as comments.
438*38fd1498Szrj
439*38fd1498Szrjfdec
440*38fd1498SzrjFortran Var(flag_dec)
441*38fd1498SzrjEnable all DEC language extensions.
442*38fd1498Szrj
443*38fd1498Szrjfdec-intrinsic-ints
444*38fd1498SzrjFortran Var(flag_dec_intrinsic_ints)
445*38fd1498SzrjEnable kind-specific variants of integer intrinsic functions.
446*38fd1498Szrj
447*38fd1498Szrjfdec-math
448*38fd1498SzrjFortran Var(flag_dec_math)
449*38fd1498SzrjEnable legacy math intrinsics for compatibility.
450*38fd1498Szrj
451*38fd1498Szrjfdec-structure
452*38fd1498SzrjFortran Var(flag_dec_structure)
453*38fd1498SzrjEnable support for DEC STRUCTURE/RECORD.
454*38fd1498Szrj
455*38fd1498Szrjfdec-static
456*38fd1498SzrjFortran Var(flag_dec_static)
457*38fd1498SzrjEnable DEC-style STATIC and AUTOMATIC attributes.
458*38fd1498Szrj
459*38fd1498Szrjfdefault-double-8
460*38fd1498SzrjFortran Var(flag_default_double)
461*38fd1498SzrjSet the default double precision kind to an 8 byte wide type.
462*38fd1498Szrj
463*38fd1498Szrjfdefault-integer-8
464*38fd1498SzrjFortran Var(flag_default_integer)
465*38fd1498SzrjSet the default integer kind to an 8 byte wide type.
466*38fd1498Szrj
467*38fd1498Szrjfdefault-real-8
468*38fd1498SzrjFortran Var(flag_default_real_8)
469*38fd1498SzrjSet the default real kind to an 8 byte wide type.
470*38fd1498Szrj
471*38fd1498Szrjfdefault-real-10
472*38fd1498SzrjFortran Var(flag_default_real_10)
473*38fd1498SzrjSet the default real kind to an 10 byte wide type.
474*38fd1498Szrj
475*38fd1498Szrjfdefault-real-16
476*38fd1498SzrjFortran Var(flag_default_real_16)
477*38fd1498SzrjSet the default real kind to an 16 byte wide type.
478*38fd1498Szrj
479*38fd1498Szrjfdollar-ok
480*38fd1498SzrjFortran Var(flag_dollar_ok)
481*38fd1498SzrjAllow dollar signs in entity names.
482*38fd1498Szrj
483*38fd1498Szrjfdump-core
484*38fd1498SzrjFortran Ignore
485*38fd1498SzrjDoes nothing. Preserved for backward compatibility.
486*38fd1498Szrj
487*38fd1498Szrjfdump-fortran-original
488*38fd1498SzrjFortran Var(flag_dump_fortran_original)
489*38fd1498SzrjDisplay the code tree after parsing.
490*38fd1498Szrj
491*38fd1498Szrjfdump-fortran-optimized
492*38fd1498SzrjFortran Var(flag_dump_fortran_optimized)
493*38fd1498SzrjDisplay the code tree after front end optimization.
494*38fd1498Szrj
495*38fd1498Szrjfdump-parse-tree
496*38fd1498SzrjFortran Alias(fdump-fortran-original)
497*38fd1498SzrjDisplay the code tree after parsing; deprecated option.
498*38fd1498Szrj
499*38fd1498Szrjfexternal-blas
500*38fd1498SzrjFortran Var(flag_external_blas)
501*38fd1498SzrjSpecify that an external BLAS library should be used for matmul calls on large-size arrays.
502*38fd1498Szrj
503*38fd1498Szrjff2c
504*38fd1498SzrjFortran Var(flag_f2c)
505*38fd1498SzrjUse f2c calling convention.
506*38fd1498Szrj
507*38fd1498Szrjffixed-form
508*38fd1498SzrjFortran RejectNegative
509*38fd1498SzrjAssume that the source file is fixed form.
510*38fd1498Szrj
511*38fd1498Szrjftest-forall-temp
512*38fd1498SzrjFortran Var(flag_test_forall_temp) Init(0)
513*38fd1498SzrjForce creation of temporary to test infrequently-executed forall code.
514*38fd1498Szrj
515*38fd1498Szrjfinteger-4-integer-8
516*38fd1498SzrjFortran RejectNegative Var(flag_integer4_kind,8)
517*38fd1498SzrjInterpret any INTEGER(4) as an INTEGER(8).
518*38fd1498Szrj
519*38fd1498Szrjfintrinsic-modules-path
520*38fd1498SzrjFortran RejectNegative Separate
521*38fd1498SzrjSpecify where to find the compiled intrinsic modules.
522*38fd1498Szrj
523*38fd1498Szrjfintrinsic-modules-path=
524*38fd1498SzrjFortran RejectNegative Joined
525*38fd1498SzrjSpecify where to find the compiled intrinsic modules.
526*38fd1498Szrj
527*38fd1498Szrjffixed-line-length-none
528*38fd1498SzrjFortran RejectNegative Var(flag_fixed_line_length,0)
529*38fd1498SzrjAllow arbitrary character line width in fixed mode.
530*38fd1498Szrj
531*38fd1498Szrjffixed-line-length-
532*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_fixed_line_length) Init(72)
533*38fd1498Szrj-ffixed-line-length-<n>	Use n as character line width in fixed mode.
534*38fd1498Szrj
535*38fd1498Szrjffpe-trap=
536*38fd1498SzrjFortran RejectNegative JoinedOrMissing
537*38fd1498Szrj-ffpe-trap=[...]	Stop on following floating point exceptions.
538*38fd1498Szrj
539*38fd1498Szrjffpe-summary=
540*38fd1498SzrjFortran RejectNegative JoinedOrMissing
541*38fd1498Szrj-ffpe-summary=[...]	Print summary of floating point exceptions.
542*38fd1498Szrj
543*38fd1498Szrjffree-form
544*38fd1498SzrjFortran RejectNegative
545*38fd1498SzrjAssume that the source file is free form.
546*38fd1498Szrj
547*38fd1498Szrjffree-line-length-none
548*38fd1498SzrjFortran RejectNegative Var(flag_free_line_length,0)
549*38fd1498SzrjAllow arbitrary character line width in free mode.
550*38fd1498Szrj
551*38fd1498Szrjffree-line-length-
552*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_free_line_length) Init(132)
553*38fd1498Szrj-ffree-line-length-<n>	Use n as character line width in free mode.
554*38fd1498Szrj
555*38fd1498Szrjffrontend-loop-interchange
556*38fd1498SzrjFortran Var(flag_frontend_loop_interchange) Init(-1)
557*38fd1498SzrjTry to interchange loops if profitable.
558*38fd1498Szrj
559*38fd1498Szrjffrontend-optimize
560*38fd1498SzrjFortran Var(flag_frontend_optimize) Init(-1)
561*38fd1498SzrjEnable front end optimization.
562*38fd1498Szrj
563*38fd1498Szrjfimplicit-none
564*38fd1498SzrjFortran Var(flag_implicit_none)
565*38fd1498SzrjSpecify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements.
566*38fd1498Szrj
567*38fd1498Szrjfinit-character=
568*38fd1498SzrjFortran RejectNegative Joined UInteger
569*38fd1498Szrj-finit-character=<n>	Initialize local character variables to ASCII value n.
570*38fd1498Szrj
571*38fd1498Szrjfinit-derived
572*38fd1498SzrjFortran Var(flag_init_derived)
573*38fd1498SzrjInitialize components of derived type variables according to other init flags.
574*38fd1498Szrj
575*38fd1498Szrjfinit-integer=
576*38fd1498SzrjFortran RejectNegative Joined
577*38fd1498Szrj-finit-integer=<n>	Initialize local integer variables to n.
578*38fd1498Szrj
579*38fd1498Szrjfinit-local-zero
580*38fd1498SzrjFortran
581*38fd1498SzrjInitialize local variables to zero (from g77).
582*38fd1498Szrj
583*38fd1498Szrjfinit-logical=
584*38fd1498SzrjFortran RejectNegative Joined
585*38fd1498Szrj-finit-logical=<true|false>	Initialize local logical variables.
586*38fd1498Szrj
587*38fd1498Szrjfinit-real=
588*38fd1498SzrjFortran RejectNegative ToLower Joined Enum(gfc_init_local_real) Var(flag_init_real) Init(GFC_INIT_REAL_OFF)
589*38fd1498Szrj-finit-real=<zero|snan|nan|inf|-inf>	Initialize local real variables.
590*38fd1498Szrj
591*38fd1498SzrjEnum
592*38fd1498SzrjName(gfc_init_local_real) Type(enum gfc_init_local_real) UnknownError(Unrecognized option to floating-point init value: %qs)
593*38fd1498Szrj
594*38fd1498SzrjEnumValue
595*38fd1498SzrjEnum(gfc_init_local_real) String(zero) Value(GFC_INIT_REAL_ZERO)
596*38fd1498Szrj
597*38fd1498SzrjEnumValue
598*38fd1498SzrjEnum(gfc_init_local_real) String(snan) Value(GFC_INIT_REAL_SNAN)
599*38fd1498Szrj
600*38fd1498SzrjEnumValue
601*38fd1498SzrjEnum(gfc_init_local_real) String(nan) Value(GFC_INIT_REAL_NAN)
602*38fd1498Szrj
603*38fd1498SzrjEnumValue
604*38fd1498SzrjEnum(gfc_init_local_real) String(inf) Value(GFC_INIT_REAL_INF)
605*38fd1498Szrj
606*38fd1498SzrjEnumValue
607*38fd1498SzrjEnum(gfc_init_local_real) String(-inf) Value(GFC_INIT_REAL_NEG_INF)
608*38fd1498Szrj
609*38fd1498Szrjfinline-matmul-limit=
610*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_inline_matmul_limit) Init(-1)
611*38fd1498Szrj-finline-matmul-limit=<n>	Specify the size of the largest matrix for which matmul will be inlined.
612*38fd1498Szrj
613*38fd1498Szrjfmax-array-constructor=
614*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_max_array_constructor) Init(65535)
615*38fd1498Szrj-fmax-array-constructor=<n>	Maximum number of objects in an array constructor.
616*38fd1498Szrj
617*38fd1498Szrjfmax-identifier-length=
618*38fd1498SzrjFortran RejectNegative Joined UInteger
619*38fd1498Szrj-fmax-identifier-length=<n>	Maximum identifier length.
620*38fd1498Szrj
621*38fd1498Szrjfmax-subrecord-length=
622*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_max_subrecord_length)
623*38fd1498Szrj-fmax-subrecord-length=<n>	Maximum length for subrecords.
624*38fd1498Szrj
625*38fd1498Szrjfmax-stack-var-size=
626*38fd1498SzrjFortran RejectNegative Joined UInteger Var(flag_max_stack_var_size) Init(-2)
627*38fd1498Szrj-fmax-stack-var-size=<n>	Size in bytes of the largest array that will be put on the stack.
628*38fd1498Szrj
629*38fd1498Szrjfstack-arrays
630*38fd1498SzrjFortran Var(flag_stack_arrays) Init(-1)
631*38fd1498SzrjPut all local arrays on stack.
632*38fd1498Szrj
633*38fd1498Szrjfmodule-private
634*38fd1498SzrjFortran Var(flag_module_private)
635*38fd1498SzrjSet default accessibility of module entities to PRIVATE.
636*38fd1498Szrj
637*38fd1498Szrjfopenacc
638*38fd1498SzrjFortran LTO
639*38fd1498Szrj; Documented in C
640*38fd1498Szrj
641*38fd1498Szrjfopenacc-dim=
642*38fd1498SzrjFortran LTO Joined Var(flag_openacc_dims)
643*38fd1498Szrj; Documented in C
644*38fd1498Szrj
645*38fd1498Szrjfopenmp
646*38fd1498SzrjFortran LTO
647*38fd1498Szrj; Documented in C
648*38fd1498Szrj
649*38fd1498Szrjfopenmp-simd
650*38fd1498SzrjFortran
651*38fd1498Szrj; Documented in C
652*38fd1498Szrj
653*38fd1498Szrjfpack-derived
654*38fd1498SzrjFortran Var(flag_pack_derived)
655*38fd1498SzrjTry to lay out derived types as compactly as possible.
656*38fd1498Szrj
657*38fd1498Szrjfpreprocessed
658*38fd1498SzrjFortran
659*38fd1498Szrj; Documented in C
660*38fd1498Szrj
661*38fd1498Szrjfprotect-parens
662*38fd1498SzrjFortran Var(flag_protect_parens) Init(-1)
663*38fd1498SzrjProtect parentheses in expressions.
664*38fd1498Szrj
665*38fd1498Szrjfrange-check
666*38fd1498SzrjFortran Var(flag_range_check) Init(1)
667*38fd1498SzrjEnable range checking during compilation.
668*38fd1498Szrj
669*38fd1498Szrjfreal-4-real-8
670*38fd1498SzrjFortran RejectNegative Var(flag_real4_kind,8)
671*38fd1498SzrjInterpret any REAL(4) as a REAL(8).
672*38fd1498Szrj
673*38fd1498Szrjfreal-4-real-10
674*38fd1498SzrjFortran RejectNegative Var(flag_real4_kind,10)
675*38fd1498SzrjInterpret any REAL(4) as a REAL(10).
676*38fd1498Szrj
677*38fd1498Szrjfreal-4-real-16
678*38fd1498SzrjFortran RejectNegative Var(flag_real4_kind,16)
679*38fd1498SzrjInterpret any REAL(4) as a REAL(16).
680*38fd1498Szrj
681*38fd1498Szrjfreal-8-real-4
682*38fd1498SzrjFortran RejectNegative Var(flag_real8_kind,4)
683*38fd1498SzrjInterpret any REAL(8) as a REAL(4).
684*38fd1498Szrj
685*38fd1498Szrjfreal-8-real-10
686*38fd1498SzrjFortran RejectNegative Var(flag_real8_kind,10)
687*38fd1498SzrjInterpret any REAL(8) as a REAL(10).
688*38fd1498Szrj
689*38fd1498Szrjfreal-8-real-16
690*38fd1498SzrjFortran RejectNegative Var(flag_real8_kind,16)
691*38fd1498SzrjInterpret any REAL(8) as a REAL(16).
692*38fd1498Szrj
693*38fd1498Szrjfrealloc-lhs
694*38fd1498SzrjFortran Var(flag_realloc_lhs) Init(-1)
695*38fd1498SzrjReallocate the LHS in assignments.
696*38fd1498Szrj
697*38fd1498Szrjfrecord-marker=4
698*38fd1498SzrjFortran RejectNegative Var(flag_record_marker,4)
699*38fd1498SzrjUse a 4-byte record marker for unformatted files.
700*38fd1498Szrj
701*38fd1498Szrjfrecord-marker=8
702*38fd1498SzrjFortran RejectNegative Var(flag_record_marker,8)
703*38fd1498SzrjUse an 8-byte record marker for unformatted files.
704*38fd1498Szrj
705*38fd1498Szrjfrecursive
706*38fd1498SzrjFortran Var(flag_recursive)
707*38fd1498SzrjAllocate local variables on the stack to allow indirect recursion.
708*38fd1498Szrj
709*38fd1498Szrjfrepack-arrays
710*38fd1498SzrjFortran Var(flag_repack_arrays)
711*38fd1498SzrjCopy array sections into a contiguous block on procedure entry.
712*38fd1498Szrj
713*38fd1498Szrjfcoarray=
714*38fd1498SzrjFortran RejectNegative Joined Enum(gfc_fcoarray) Var(flag_coarray) Init(GFC_FCOARRAY_NONE)
715*38fd1498Szrj-fcoarray=<none|single|lib>	Specify which coarray parallelization should be used.
716*38fd1498Szrj
717*38fd1498SzrjEnum
718*38fd1498SzrjName(gfc_fcoarray) Type(enum gfc_fcoarray) UnknownError(Unrecognized option: %qs)
719*38fd1498Szrj
720*38fd1498SzrjEnumValue
721*38fd1498SzrjEnum(gfc_fcoarray) String(none) Value(GFC_FCOARRAY_NONE)
722*38fd1498Szrj
723*38fd1498SzrjEnumValue
724*38fd1498SzrjEnum(gfc_fcoarray) String(single) Value(GFC_FCOARRAY_SINGLE)
725*38fd1498Szrj
726*38fd1498SzrjEnumValue
727*38fd1498SzrjEnum(gfc_fcoarray) String(lib) Value(GFC_FCOARRAY_LIB)
728*38fd1498Szrj
729*38fd1498Szrjfcheck=
730*38fd1498SzrjFortran RejectNegative JoinedOrMissing
731*38fd1498Szrj-fcheck=[...]	Specify which runtime checks are to be performed.
732*38fd1498Szrj
733*38fd1498Szrjfsecond-underscore
734*38fd1498SzrjFortran Var(flag_second_underscore) Init(-1)
735*38fd1498SzrjAppend a second underscore if the name already contains an underscore.
736*38fd1498Szrj
737*38fd1498Szrjfshort-enums
738*38fd1498SzrjFortran Var(flag_short_enums)
739*38fd1498Szrj; Documented in C
740*38fd1498Szrj
741*38fd1498Szrjfsign-zero
742*38fd1498SzrjFortran Var(flag_sign_zero) Init(1)
743*38fd1498SzrjApply negative sign to zero values.
744*38fd1498Szrj
745*38fd1498Szrjfunderscoring
746*38fd1498SzrjFortran Var(flag_underscoring) Init(1)
747*38fd1498SzrjAppend underscores to externally visible names.
748*38fd1498Szrj
749*38fd1498Szrjfwhole-file
750*38fd1498SzrjFortran Ignore
751*38fd1498SzrjDoes nothing.  Preserved for backward compatibility.
752*38fd1498Szrj
753*38fd1498Szrjfworking-directory
754*38fd1498SzrjFortran
755*38fd1498Szrj; Documented in C
756*38fd1498Szrj
757*38fd1498Szrjidirafter
758*38fd1498SzrjFortran Joined Separate
759*38fd1498Szrj; Documented in C
760*38fd1498Szrj
761*38fd1498Szrjimultilib
762*38fd1498SzrjFortran Joined Separate
763*38fd1498Szrj; Documented in C
764*38fd1498Szrj
765*38fd1498Szrjiprefix
766*38fd1498SzrjFortran Joined Separate
767*38fd1498Szrj; Documented in C
768*38fd1498Szrj
769*38fd1498Szrjiquote
770*38fd1498SzrjFortran Joined Separate
771*38fd1498Szrj; Documented in C
772*38fd1498Szrj
773*38fd1498Szrjisysroot
774*38fd1498SzrjFortran Joined Separate
775*38fd1498Szrj; Documented in C
776*38fd1498Szrj
777*38fd1498Szrjisystem
778*38fd1498SzrjFortran Joined Separate
779*38fd1498Szrj; Documented in C
780*38fd1498Szrj
781*38fd1498Szrjnostdinc
782*38fd1498SzrjFortran
783*38fd1498Szrj; Documented in C
784*38fd1498Szrj
785*38fd1498Szrjo
786*38fd1498SzrjFortran Joined Separate
787*38fd1498Szrj; Documented in common.opt
788*38fd1498Szrj
789*38fd1498Szrjstatic-libgfortran
790*38fd1498SzrjFortran
791*38fd1498SzrjStatically link the GNU Fortran helper library (libgfortran).
792*38fd1498Szrj
793*38fd1498Szrjstd=f2003
794*38fd1498SzrjFortran
795*38fd1498SzrjConform to the ISO Fortran 2003 standard.
796*38fd1498Szrj
797*38fd1498Szrjstd=f2008
798*38fd1498SzrjFortran
799*38fd1498SzrjConform to the ISO Fortran 2008 standard.
800*38fd1498Szrj
801*38fd1498Szrjstd=f2008ts
802*38fd1498SzrjFortran
803*38fd1498SzrjConform to the ISO Fortran 2008 standard including TS 29113.
804*38fd1498Szrj
805*38fd1498Szrjstd=f2018
806*38fd1498SzrjFortran
807*38fd1498SzrjConform to the ISO Fortran 2018 standard.
808*38fd1498Szrj
809*38fd1498Szrjstd=f95
810*38fd1498SzrjFortran
811*38fd1498SzrjConform to the ISO Fortran 95 standard.
812*38fd1498Szrj
813*38fd1498Szrjstd=gnu
814*38fd1498SzrjFortran
815*38fd1498SzrjConform to nothing in particular.
816*38fd1498Szrj
817*38fd1498Szrjstd=legacy
818*38fd1498SzrjFortran
819*38fd1498SzrjAccept extensions to support legacy code.
820*38fd1498Szrj
821*38fd1498Szrjundef
822*38fd1498SzrjFortran
823*38fd1498Szrj; Documented in C
824*38fd1498Szrj
825*38fd1498Szrjv
826*38fd1498SzrjFortran
827*38fd1498Szrj; Documented in C
828*38fd1498Szrj
829*38fd1498Szrj; This comment is to ensure we retain the blank line above.
830