2014-11-20 Robert Dewar <dewar@adacore.com>
[official-gcc.git] / gcc / fortran / lang.opt
blobd6fe60308b0b532db095e233dce612957a72dd03
1 ; Options for the Fortran 95 front end.
2 ; Copyright (C) 2003-2014 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 Wdate-time
217 Fortran
218 ; Documented in C
220 Wcharacter-truncation
221 Fortran Warning
222 Warn about truncated character expressions
224 Wcompare-reals
225 Fortran Warning
226 Warn about equality comparisons involving REAL or COMPLEX expressions
228 Wconversion
229 Fortran Warning
230 ; Documented in C
232 Wconversion-extra
233 Fortran Warning
234 Warn about most implicit conversions
236 Wextra
237 Fortran Warning
238 Print extra (possibly unwanted) warnings
240 Wfunction-elimination
241 Fortran Warning
242 Warn about function call elimination
244 Wimplicit-interface
245 Fortran Warning
246 Warn about calls with implicit interface
248 Wimplicit-procedure
249 Fortran Warning
250 Warn about called procedures not explicitly declared
252 Wline-truncation
253 Fortran Warning
254 Warn about truncated source lines
256 Wintrinsics-std
257 Fortran Warning
258 Warn on intrinsics not part of the selected standard
260 Wmissing-include-dirs
261 Fortran
262 ; Documented in C/C++
264 Wuse-without-only
265 Fortran Var(warn_use_without_only) Warning
266 Warn about USE statements that have no ONLY qualifier
268 Wopenmp-simd
269 Fortran
270 ; Documented in C
272 Wreal-q-constant
273 Fortran Warning
274 Warn about real-literal-constants with 'q' exponent-letter
276 Wrealloc-lhs
277 Fortran Warning
278 Warn when a left-hand-side array variable is reallocated
280 Wrealloc-lhs-all
281 Fortran Warning
282 Warn when a left-hand-side variable is reallocated
284 Wtarget-lifetime
285 Fortran Warning
286 Warn if the pointer in a pointer assignment might outlive its target
288 Wreturn-type
289 Fortran Warning
290 ; Documented in C
292 Wsurprising
293 Fortran Warning
294 Warn about \"suspicious\" constructs
296 Wtabs
297 Fortran Warning
298 Permit nonconforming uses of the tab character
300 Wunderflow
301 Fortran Warning
302 Warn about underflow of numerical constant expressions
304 Wintrinsic-shadow
305 Fortran Warning
306 Warn if a user-procedure has the same name as an intrinsic
308 Wunused-dummy-argument
309 Fortran Warning
310 Warn about unused dummy arguments.
312 Wzerotrip
313 Fortran Warning
314 Warn about zero-trip DO loops
317 Fortran Negative(nocpp)
318 Enable preprocessing
320 cpp=
321 Fortran Joined Negative(nocpp) Undocumented NoDWARFRecord
322 ; Internal option generated by specs from -cpp.
324 nocpp
325 Fortran Negative(cpp)
326 Disable preprocessing
329 Fortran Joined
330 ; Documented in common.opt
332 faggressive-function-elimination
333 Fortran
334 Eliminate multiple function invokations also for impure functions
336 falign-commons
337 Fortran
338 Enable alignment of COMMON blocks
340 fall-intrinsics
341 Fortran RejectNegative
342 All intrinsics procedures are available regardless of selected standard
344 fallow-leading-underscore
345 Fortran Undocumented
346 ; For internal use only: allow the first character of symbol names to be an underscore
348 fautomatic
349 Fortran
350 Do not treat local variables and COMMON blocks as if they were named in SAVE statements
352 fbackslash
353 Fortran
354 Specify that backslash in string introduces an escape character
356 fbacktrace
357 Fortran
358 Produce a backtrace when a runtime error is encountered
360 fblas-matmul-limit=
361 Fortran RejectNegative Joined UInteger
362 -fblas-matmul-limit=<n> Size of the smallest matrix for which matmul will use BLAS
364 fcheck-array-temporaries
365 Fortran
366 Produce a warning at runtime if a array temporary has been created for a procedure argument
368 fconvert=big-endian
369 Fortran RejectNegative
370 Use big-endian format for unformatted files
372 fconvert=little-endian
373 Fortran RejectNegative
374 Use little-endian format for unformatted files
376 fconvert=native
377 Fortran RejectNegative
378 Use native format for unformatted files
380 fconvert=swap
381 Fortran RejectNegative
382 Swap endianness for unformatted files
384 fcray-pointer
385 Fortran
386 Use the Cray Pointer extension
388 fd-lines-as-code
389 Fortran RejectNegative
390 Ignore 'D' in column one in fixed form
392 fd-lines-as-comments
393 Fortran RejectNegative
394 Treat lines with 'D' in column one as comments
396 fdefault-double-8
397 Fortran
398 Set the default double precision kind to an 8 byte wide type
400 fdefault-integer-8
401 Fortran
402 Set the default integer kind to an 8 byte wide type
404 fdefault-real-8
405 Fortran
406 Set the default real kind to an 8 byte wide type
408 fdollar-ok
409 Fortran
410 Allow dollar signs in entity names
412 fdump-core
413 Fortran Ignore
414 Does nothing. Preserved for backward compatibility.
416 fdump-fortran-original
417 Fortran
418 Display the code tree after parsing
420 fdump-fortran-optimized
421 Fortran
422 Display the code tree after front end optimization
424 fdump-parse-tree
425 Fortran
426 Display the code tree after parsing; deprecated option
428 fexternal-blas
429 Fortran
430 Specify that an external BLAS library should be used for matmul calls on large-size arrays
432 ff2c
433 Fortran
434 Use f2c calling convention
436 ffixed-form
437 Fortran RejectNegative
438 Assume that the source file is fixed form
440 finteger-4-integer-8
441 Fortran RejectNegative
442 Interpret any INTEGER(4) as an INTEGER(8)
444 fintrinsic-modules-path
445 Fortran RejectNegative Separate
446 Specify where to find the compiled intrinsic modules
448 fintrinsic-modules-path=
449 Fortran RejectNegative Joined
450 Specify where to find the compiled intrinsic modules
452 ffixed-line-length-none
453 Fortran RejectNegative
454 Allow arbitrary character line width in fixed mode
456 ffixed-line-length-
457 Fortran RejectNegative Joined UInteger
458 -ffixed-line-length-<n> Use n as character line width in fixed mode
460 ffpe-trap=
461 Fortran RejectNegative JoinedOrMissing
462 -ffpe-trap=[...]        Stop on following floating point exceptions
464 ffpe-summary=
465 Fortran RejectNegative JoinedOrMissing
466 -ffpe-summary=[...]     Print summary of floating point exceptions
468 ffree-form
469 Fortran RejectNegative
470 Assume that the source file is free form
472 ffree-line-length-none
473 Fortran RejectNegative
474 Allow arbitrary character line width in free mode
476 ffree-line-length-
477 Fortran RejectNegative Joined UInteger
478 -ffree-line-length-<n>  Use n as character line width in free mode
480 ffrontend-optimize
481 Fortran
482 Enable front end optimization
484 fimplicit-none
485 Fortran
486 Specify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements
488 finit-character=
489 Fortran RejectNegative Joined UInteger
490 -finit-character=<n>    Initialize local character variables to ASCII value n
492 finit-integer=
493 Fortran RejectNegative Joined
494 -finit-integer=<n>      Initialize local integer variables to n
496 finit-local-zero
497 Fortran
498 Initialize local variables to zero (from g77)
500 finit-logical=
501 Fortran RejectNegative Joined
502 -finit-logical=<true|false>     Initialize local logical variables
504 finit-real=
505 Fortran RejectNegative Joined
506 -finit-real=<zero|nan|inf|-inf> Initialize local real variables
508 fmax-array-constructor=
509 Fortran RejectNegative Joined UInteger
510 -fmax-array-constructor=<n>     Maximum number of objects in an array constructor
512 fmax-identifier-length=
513 Fortran RejectNegative Joined UInteger
514 -fmax-identifier-length=<n>     Maximum identifier length
516 fmax-subrecord-length=
517 Fortran RejectNegative Joined UInteger
518 -fmax-subrecord-length=<n>      Maximum length for subrecords
520 fmax-stack-var-size=
521 Fortran RejectNegative Joined UInteger
522 -fmax-stack-var-size=<n>        Size in bytes of the largest array that will be put on the stack
524 fstack-arrays
525 Fortran
526 Put all local arrays on stack.
528 fmodule-private
529 Fortran
530 Set default accessibility of module entities to PRIVATE.
532 fopenmp
533 Fortran
534 ; Documented in C
536 fopenmp-simd
537 Fortran
538 ; Documented in C
540 fpack-derived
541 Fortran
542 Try to lay out derived types as compactly as possible
544 fpreprocessed
545 Fortran
546 ; Documented in C
548 fprotect-parens
549 Fortran
550 Protect parentheses in expressions
552 frange-check
553 Fortran
554 Enable range checking during compilation
556 freal-4-real-8
557 Fortran RejectNegative
558 Interpret any REAL(4) as a REAL(8)
560 freal-4-real-10
561 Fortran RejectNegative
562 Interpret any REAL(4) as a REAL(10)
564 freal-4-real-16
565 Fortran RejectNegative
566 Interpret any REAL(4) as a REAL(16)
568 freal-8-real-4
569 Fortran RejectNegative
570 Interpret any REAL(8) as a REAL(4)
572 freal-8-real-10
573 Fortran RejectNegative
574 Interpret any REAL(8) as a REAL(10)
576 freal-8-real-16
577 Fortran RejectNegative
578 Interpret any REAL(8) as a REAL(16)
580 frealloc-lhs
581 Fortran
582 Reallocate the LHS in assignments
584 frecord-marker=4
585 Fortran RejectNegative
586 Use a 4-byte record marker for unformatted files
588 frecord-marker=8
589 Fortran RejectNegative
590 Use an 8-byte record marker for unformatted files
592 frecursive
593 Fortran
594 Allocate local variables on the stack to allow indirect recursion
596 frepack-arrays
597 Fortran
598 Copy array sections into a contiguous block on procedure entry
600 fcoarray=
601 Fortran RejectNegative JoinedOrMissing
602 -fcoarray=[...] Specify which coarray parallelization should be used
604 fcheck=
605 Fortran RejectNegative JoinedOrMissing
606 -fcheck=[...]   Specify which runtime checks are to be performed
608 fsecond-underscore
609 Fortran
610 Append a second underscore if the name already contains an underscore
612 fshort-enums
613 Fortran Var(flag_short_enums)
614 ; Documented in C
616 fsign-zero
617 Fortran
618 Apply negative sign to zero values
620 funderscoring
621 Fortran
622 Append underscores to externally visible names
624 fwhole-file
625 Fortran Ignore
626 Does nothing.  Preserved for backward compatibility.
628 fworking-directory
629 Fortran
630 ; Documented in C
632 idirafter
633 Fortran Joined Separate
634 ; Documented in C
636 imultilib
637 Fortran Joined Separate
638 ; Documented in C
640 iprefix
641 Fortran Joined Separate
642 ; Documented in C
644 iquote
645 Fortran Joined Separate
646 ; Documented in C
648 isysroot
649 Fortran Joined Separate
650 ; Documented in C
652 isystem
653 Fortran Joined Separate
654 ; Documented in C
656 nostdinc
657 Fortran
658 ; Documented in C
661 Fortran Joined Separate
662 ; Documented in common.opt
664 static-libgfortran
665 Fortran
666 Statically link the GNU Fortran helper library (libgfortran)
668 std=f2003
669 Fortran
670 Conform to the ISO Fortran 2003 standard
672 std=f2008
673 Fortran
674 Conform to the ISO Fortran 2008 standard
676 std=f2008ts
677 Fortran
678 Conform to the ISO Fortran 2008 standard including TS 29113
680 std=f95
681 Fortran
682 Conform to the ISO Fortran 95 standard
684 std=gnu
685 Fortran
686 Conform to nothing in particular
688 std=legacy
689 Fortran
690 Accept extensions to support legacy code
692 undef
693 Fortran
694 ; Documented in C
697 Fortran
698 ; Documented in C
700 ; This comment is to ensure we retain the blank line above.