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