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