gcc/
[official-gcc.git] / gcc / fortran / lang.opt
blob61f77b4fc5f586084c4d02b1c97c797ef5bd9d7e
1 ; Options for the Fortran 95 front end.
2 ; Copyright (C) 2003-2013 Free Software Foundation, Inc.
4 ; This file is part of GCC.
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
8 ; Software Foundation; either version 3, or (at your option) any later
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
17 ; along with GCC; see the file COPYING3.  If not see
18 ; <http://www.gnu.org/licenses/>.
20 ; See the GCC internals manual for a description of this file's format.
22 ; Please try to keep this file in ASCII collating order.
24 Language
25 Fortran
27 -all-warnings
28 Fortran Alias(Wall)
30 -assert
31 Fortran Separate Alias(A)
33 -assert=
34 Fortran Joined Alias(A)
36 -comments
37 Fortran Alias(C)
39 -comments-in-macros
40 Fortran Alias(CC)
42 -define-macro
43 Fortran Separate Alias(D)
45 -define-macro=
46 Fortran Joined Alias(D)
48 -dependencies
49 Fortran Alias(M)
51 -dump
52 Fortran Separate Alias(d)
54 -dump=
55 Fortran Joined Alias(d)
57 -include-barrier
58 Fortran Alias(I, -)
60 -include-directory
61 Fortran Separate Alias(I)
63 -include-directory=
64 Fortran Joined Alias(I)
66 -include-directory-after
67 Fortran Separate Alias(idirafter)
69 -include-directory-after=
70 Fortran Joined Alias(idirafter)
72 -include-prefix
73 Fortran Separate Alias(iprefix)
75 -include-prefix=
76 Fortran JoinedOrMissing Alias(iprefix)
78 -no-line-commands
79 Fortran Alias(P)
81 -no-standard-includes
82 Fortran Alias(nostdinc)
84 -output
85 Fortran Separate Alias(o)
87 -output=
88 Fortran Joined Alias(o)
90 -preprocess
91 Fortran Undocumented Alias(E)
93 -print-missing-file-dependencies
94 Fortran Alias(MG)
96 -trace-includes
97 Fortran Alias(H)
99 -undefine-macro
100 Fortran Separate Alias(U)
102 -undefine-macro=
103 Fortran Joined Alias(U)
105 -user-dependencies
106 Fortran Alias(MM)
108 -verbose
109 Fortran Alias(v)
111 -write-dependencies
112 Fortran NoDriverArg Separate Alias(MD)
114 -write-user-dependencies
115 Fortran NoDriverArg Separate Alias(MMD)
118 Fortran Joined Separate
119 ; Documented in C
122 Fortran
123 ; Documented in C
126 Fortran
127 ; Documented in C
130 Fortran Joined Separate
131 ; Documented in C
134 Fortran Undocumented
137 Fortran
138 ; Documented in C
141 Fortran Joined Separate
142 ; Documented in C
145 Fortran Joined Separate
146 -J<directory>   Put MODULE files in 'directory'
149 Fortran
150 ; Documented in C
153 Fortran Separate NoDriverArg
154 ; Documented in C
157 Fortran Joined Separate
158 ; Documented in C
161 Fortran
162 ; Documented in C
165 Fortran
166 ; Documented in C
169 Fortran Separate NoDriverArg
170 ; Documented in C
173 Fortran
174 ; Documented in C
177 Fortran Joined Separate
178 ; Documented in C
181 Fortran Joined Separate
182 ; Documented in C
185 Fortran
186 ; Documented in C
189 Fortran Joined Separate
190 ; Documented in C
192 Wall
193 Fortran
194 ; Documented in C
196 Waliasing
197 Fortran Warning
198 Warn about possible aliasing of dummy arguments
200 Walign-commons
201 Fortran Warning
202 Warn about alignment of COMMON blocks
204 Wampersand
205 Fortran Warning
206 Warn about missing ampersand in continued character constants
208 Warray-temporaries
209 Fortran Warning
210 Warn about creation of array temporaries
212 Wc-binding-type
213 Fortran Warning
214 Warn if the type of a variable might be not interoperable with C
216 Wcharacter-truncation
217 Fortran Warning
218 Warn about truncated character expressions
220 Wcompare-reals
221 Fortran Warning
222 Warn about equality comparisons involving REAL or COMPLEX expressions
224 Wconversion
225 Fortran Warning
226 ; Documented in C
228 Wconversion-extra
229 Fortran Warning
230 Warn about most implicit conversions
232 Wextra
233 Fortran Warning
234 Print extra (possibly unwanted) warnings
236 Wfunction-elimination
237 Fortran Warning
238 Warn about function call elimination
240 Wimplicit-interface
241 Fortran Warning
242 Warn about calls with implicit interface
244 Wimplicit-procedure
245 Fortran Warning
246 Warn about called procedures not explicitly declared
248 Wline-truncation
249 Fortran Warning
250 Warn about truncated source lines
252 Wintrinsics-std
253 Fortran Warning
254 Warn on intrinsics not part of the selected standard
256 Wreal-q-constant
257 Fortran Warning
258 Warn about real-literal-constants with 'q' exponent-letter
260 Wrealloc-lhs
261 Fortran Warning
262 Warn when a left-hand-side array variable is reallocated
264 Wrealloc-lhs-all
265 Fortran Warning
266 Warn when a left-hand-side variable is reallocated
268 Wtarget-lifetime
269 Fortran Warning
270 Warn if the pointer in a pointer assignment might outlive its target
272 Wreturn-type
273 Fortran Warning
274 ; Documented in C
276 Wsurprising
277 Fortran Warning
278 Warn about \"suspicious\" constructs
280 Wtabs
281 Fortran Warning
282 Permit nonconforming uses of the tab character
284 Wunderflow
285 Fortran Warning
286 Warn about underflow of numerical constant expressions
288 Wintrinsic-shadow
289 Fortran Warning
290 Warn if a user-procedure has the same name as an intrinsic
292 Wunused-dummy-argument
293 Fortran Warning
294 Warn about unused dummy arguments.
297 Fortran Negative(nocpp)
298 Enable preprocessing
300 cpp=
301 Fortran Joined Negative(nocpp) Undocumented NoDWARFRecord
302 ; Internal option generated by specs from -cpp.
304 nocpp
305 Fortran Negative(cpp)
306 Disable preprocessing
309 Fortran Joined
310 ; Documented in common.opt
312 faggressive-function-elimination
313 Fortran
314 Eliminate multiple function invokations also for impure functions
316 falign-commons
317 Fortran
318 Enable alignment of COMMON blocks
320 fall-intrinsics
321 Fortran RejectNegative
322 All intrinsics procedures are available regardless of selected standard
324 fallow-leading-underscore
325 Fortran Undocumented
326 ; For internal use only: allow the first character of symbol names to be an underscore
328 fautomatic
329 Fortran
330 Do not treat local variables and COMMON blocks as if they were named in SAVE statements
332 fbackslash
333 Fortran
334 Specify that backslash in string introduces an escape character
336 fbacktrace
337 Fortran
338 Produce a backtrace when a runtime error is encountered
340 fblas-matmul-limit=
341 Fortran RejectNegative Joined UInteger
342 -fblas-matmul-limit=<n> Size of the smallest matrix for which matmul will use BLAS
344 fcheck-array-temporaries
345 Fortran
346 Produce a warning at runtime if a array temporary has been created for a procedure argument
348 fconvert=big-endian
349 Fortran RejectNegative
350 Use big-endian format for unformatted files
352 fconvert=little-endian
353 Fortran RejectNegative
354 Use little-endian format for unformatted files
356 fconvert=native
357 Fortran RejectNegative
358 Use native format for unformatted files
360 fconvert=swap
361 Fortran RejectNegative
362 Swap endianness for unformatted files
364 fcray-pointer
365 Fortran
366 Use the Cray Pointer extension
368 fd-lines-as-code
369 Fortran RejectNegative
370 Ignore 'D' in column one in fixed form
372 fd-lines-as-comments
373 Fortran RejectNegative
374 Treat lines with 'D' in column one as comments
376 fdefault-double-8
377 Fortran
378 Set the default double precision kind to an 8 byte wide type
380 fdefault-integer-8
381 Fortran
382 Set the default integer kind to an 8 byte wide type
384 fdefault-real-8
385 Fortran
386 Set the default real kind to an 8 byte wide type
388 fdollar-ok
389 Fortran
390 Allow dollar signs in entity names
392 fdump-core
393 Fortran Ignore
394 Does nothing. Preserved for backward compatibility.
396 fdump-fortran-original
397 Fortran
398 Display the code tree after parsing
400 fdump-fortran-optimized
401 Fortran
402 Display the code tree after front end optimization
404 fdump-parse-tree
405 Fortran
406 Display the code tree after parsing; deprecated option
408 fexternal-blas
409 Fortran
410 Specify that an external BLAS library should be used for matmul calls on large-size arrays
412 ff2c
413 Fortran
414 Use f2c calling convention
416 ffixed-form
417 Fortran RejectNegative
418 Assume that the source file is fixed form
420 finteger-4-integer-8
421 Fortran RejectNegative
422 Interpret any INTEGER(4) as an INTEGER(8)
424 fintrinsic-modules-path
425 Fortran RejectNegative Separate
426 Specify where to find the compiled intrinsic modules
428 fintrinsic-modules-path=
429 Fortran RejectNegative Joined
430 Specify where to find the compiled intrinsic modules
432 ffixed-line-length-none
433 Fortran RejectNegative
434 Allow arbitrary character line width in fixed mode
436 ffixed-line-length-
437 Fortran RejectNegative Joined UInteger
438 -ffixed-line-length-<n> Use n as character line width in fixed mode
440 ffpe-trap=
441 Fortran RejectNegative JoinedOrMissing
442 -ffpe-trap=[...]        Stop on following floating point exceptions
444 ffpe-summary=
445 Fortran RejectNegative JoinedOrMissing
446 -ffpe-summary=[...]     Print summary of floating point exceptions
448 ffree-form
449 Fortran RejectNegative
450 Assume that the source file is free form
452 ffree-line-length-none
453 Fortran RejectNegative
454 Allow arbitrary character line width in free mode
456 ffree-line-length-
457 Fortran RejectNegative Joined UInteger
458 -ffree-line-length-<n>  Use n as character line width in free mode
460 ffrontend-optimize
461 Fortran
462 Enable front end optimization
464 fimplicit-none
465 Fortran
466 Specify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements
468 finit-character=
469 Fortran RejectNegative Joined UInteger
470 -finit-character=<n>    Initialize local character variables to ASCII value n
472 finit-integer=
473 Fortran RejectNegative Joined
474 -finit-integer=<n>      Initialize local integer variables to n
476 finit-local-zero
477 Fortran
478 Initialize local variables to zero (from g77)
480 finit-logical=
481 Fortran RejectNegative Joined
482 -finit-logical=<true|false>     Initialize local logical variables
484 finit-real=
485 Fortran RejectNegative Joined
486 -finit-real=<zero|nan|inf|-inf> Initialize local real variables
488 fmax-array-constructor=
489 Fortran RejectNegative Joined UInteger
490 -fmax-array-constructor=<n>     Maximum number of objects in an array constructor
492 fmax-identifier-length=
493 Fortran RejectNegative Joined UInteger
494 -fmax-identifier-length=<n>     Maximum identifier length
496 fmax-subrecord-length=
497 Fortran RejectNegative Joined UInteger
498 -fmax-subrecord-length=<n>      Maximum length for subrecords
500 fmax-stack-var-size=
501 Fortran RejectNegative Joined UInteger
502 -fmax-stack-var-size=<n>        Size in bytes of the largest array that will be put on the stack
504 fstack-arrays
505 Fortran
506 Put all local arrays on stack.
508 fmodule-private
509 Fortran
510 Set default accessibility of module entities to PRIVATE.
512 fopenmp
513 Fortran
514 ; Documented in C
516 fpack-derived
517 Fortran
518 Try to lay out derived types as compactly as possible
520 fpreprocessed
521 Fortran
522 ; Documented in C
524 fprotect-parens
525 Fortran
526 Protect parentheses in expressions
528 frange-check
529 Fortran
530 Enable range checking during compilation
532 freal-4-real-8
533 Fortran RejectNegative
534 Interpret any REAL(4) as a REAL(8)
536 freal-4-real-10
537 Fortran RejectNegative
538 Interpret any REAL(4) as a REAL(10)
540 freal-4-real-16
541 Fortran RejectNegative
542 Interpret any REAL(4) as a REAL(16)
544 freal-8-real-4
545 Fortran RejectNegative
546 Interpret any REAL(8) as a REAL(4)
548 freal-8-real-10
549 Fortran RejectNegative
550 Interpret any REAL(8) as a REAL(10)
552 freal-8-real-16
553 Fortran RejectNegative
554 Interpret any REAL(8) as a REAL(16)
556 frealloc-lhs
557 Fortran
558 Reallocate the LHS in assignments
560 frecord-marker=4
561 Fortran RejectNegative
562 Use a 4-byte record marker for unformatted files
564 frecord-marker=8
565 Fortran RejectNegative
566 Use an 8-byte record marker for unformatted files
568 frecursive
569 Fortran
570 Allocate local variables on the stack to allow indirect recursion
572 frepack-arrays
573 Fortran
574 Copy array sections into a contiguous block on procedure entry
576 fcoarray=
577 Fortran RejectNegative JoinedOrMissing
578 -fcoarray=[...] Specify which coarray parallelization should be used
580 fcheck=
581 Fortran RejectNegative JoinedOrMissing
582 -fcheck=[...]   Specify which runtime checks are to be performed
584 fsecond-underscore
585 Fortran
586 Append a second underscore if the name already contains an underscore
588 fshort-enums
589 Fortran Var(flag_short_enums)
590 ; Documented in C
592 fsign-zero
593 Fortran
594 Apply negative sign to zero values
596 funderscoring
597 Fortran
598 Append underscores to externally visible names
600 fwhole-file
601 Fortran Ignore
602 Does nothing.  Preserved for backward compatibility.
604 fworking-directory
605 Fortran
606 ; Documented in C
608 idirafter
609 Fortran Joined Separate
610 ; Documented in C
612 imultilib
613 Fortran Joined Separate
614 ; Documented in C
616 iprefix
617 Fortran Joined Separate
618 ; Documented in C
620 iquote
621 Fortran Joined Separate
622 ; Documented in C
624 isysroot
625 Fortran Joined Separate
626 ; Documented in C
628 isystem
629 Fortran Joined Separate
630 ; Documented in C
632 nostdinc
633 Fortran
634 ; Documented in C
637 Fortran Joined Separate
638 ; Documented in common.opt
640 static-libgfortran
641 Fortran
642 Statically link the GNU Fortran helper library (libgfortran)
644 std=f2003
645 Fortran
646 Conform to the ISO Fortran 2003 standard
648 std=f2008
649 Fortran
650 Conform to the ISO Fortran 2008 standard
652 std=f2008ts
653 Fortran
654 Conform to the ISO Fortran 2008 standard including TS 29113
656 std=f95
657 Fortran
658 Conform to the ISO Fortran 95 standard
660 std=gnu
661 Fortran
662 Conform to nothing in particular
664 std=legacy
665 Fortran
666 Accept extensions to support legacy code
668 undef
669 Fortran
670 ; Documented in C
673 Fortran
674 ; Documented in C
676 ; This comment is to ensure we retain the blank line above.