Mercurial > hg > CbC > CbC_gcc
annotate gcc/doc/gfortran.1 @ 47:3bfb6c00c1e0
update it from 4.4.2 to 4.4.3.
author | kent <kent@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 07 Feb 2010 17:44:34 +0900 |
parents | 58ad6c70ea60 |
children |
rev | line source |
---|---|
0 | 1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.07) |
2 .\" | |
3 .\" Standard preamble: | |
4 .\" ======================================================================== | |
5 .de Sh \" Subsection heading | |
6 .br | |
7 .if t .Sp | |
8 .ne 5 | |
9 .PP | |
10 \fB\\$1\fR | |
11 .PP | |
12 .. | |
13 .de Sp \" Vertical space (when we can't use .PP) | |
14 .if t .sp .5v | |
15 .if n .sp | |
16 .. | |
17 .de Vb \" Begin verbatim text | |
18 .ft CW | |
19 .nf | |
20 .ne \\$1 | |
21 .. | |
22 .de Ve \" End verbatim text | |
23 .ft R | |
24 .fi | |
25 .. | |
26 .\" Set up some character translations and predefined strings. \*(-- will | |
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left | |
28 .\" double quote, and \*(R" will give a right double quote. \*(C+ will | |
29 .\" give a nicer C++. Capital omega is used to do unbreakable dashes and | |
30 .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, | |
31 .\" nothing in troff, for use with C<>. | |
32 .tr \(*W- | |
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' | |
34 .ie n \{\ | |
35 . ds -- \(*W- | |
36 . ds PI pi | |
37 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch | |
38 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch | |
39 . ds L" "" | |
40 . ds R" "" | |
41 . ds C` "" | |
42 . ds C' "" | |
43 'br\} | |
44 .el\{\ | |
45 . ds -- \|\(em\| | |
46 . ds PI \(*p | |
47 . ds L" `` | |
48 . ds R" '' | |
49 'br\} | |
50 .\" | |
51 .\" Escape single quotes in literal strings from groff's Unicode transform. | |
52 .ie \n(.g .ds Aq \(aq | |
53 .el .ds Aq ' | |
54 .\" | |
55 .\" If the F register is turned on, we'll generate index entries on stderr for | |
56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index | |
57 .\" entries marked with X<> in POD. Of course, you'll have to process the | |
58 .\" output yourself in some meaningful fashion. | |
59 .ie \nF \{\ | |
60 . de IX | |
61 . tm Index:\\$1\t\\n%\t"\\$2" | |
62 .. | |
63 . nr % 0 | |
64 . rr F | |
65 .\} | |
66 .el \{\ | |
67 . de IX | |
68 .. | |
69 .\} | |
70 .\" | |
71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). | |
72 .\" Fear. Run. Save yourself. No user-serviceable parts. | |
73 . \" fudge factors for nroff and troff | |
74 .if n \{\ | |
75 . ds #H 0 | |
76 . ds #V .8m | |
77 . ds #F .3m | |
78 . ds #[ \f1 | |
79 . ds #] \fP | |
80 .\} | |
81 .if t \{\ | |
82 . ds #H ((1u-(\\\\n(.fu%2u))*.13m) | |
83 . ds #V .6m | |
84 . ds #F 0 | |
85 . ds #[ \& | |
86 . ds #] \& | |
87 .\} | |
88 . \" simple accents for nroff and troff | |
89 .if n \{\ | |
90 . ds ' \& | |
91 . ds ` \& | |
92 . ds ^ \& | |
93 . ds , \& | |
94 . ds ~ ~ | |
95 . ds / | |
96 .\} | |
97 .if t \{\ | |
98 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" | |
99 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' | |
100 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' | |
101 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' | |
102 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' | |
103 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' | |
104 .\} | |
105 . \" troff and (daisy-wheel) nroff accents | |
106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' | |
107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H' | |
108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] | |
109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' | |
110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' | |
111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] | |
112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] | |
113 .ds ae a\h'-(\w'a'u*4/10)'e | |
114 .ds Ae A\h'-(\w'A'u*4/10)'E | |
115 . \" corrections for vroff | |
116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' | |
117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' | |
118 . \" for low resolution devices (crt and lpr) | |
119 .if \n(.H>23 .if \n(.V>19 \ | |
120 \{\ | |
121 . ds : e | |
122 . ds 8 ss | |
123 . ds o a | |
124 . ds d- d\h'-1'\(ga | |
125 . ds D- D\h'-1'\(hy | |
126 . ds th \o'bp' | |
127 . ds Th \o'LP' | |
128 . ds ae ae | |
129 . ds Ae AE | |
130 .\} | |
131 .rm #[ #] #H #V #F C | |
132 .\" ======================================================================== | |
133 .\" | |
134 .IX Title "GFORTRAN 1" | |
47
3bfb6c00c1e0
update it from 4.4.2 to 4.4.3.
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
19
diff
changeset
|
135 .TH GFORTRAN 1 "2010-01-21" "gcc-4.4.3" "GNU" |
0 | 136 .\" For nroff, turn off justification. Always turn off hyphenation; it makes |
137 .\" way too many mistakes in technical documents. | |
138 .if n .ad l | |
139 .nh | |
140 .SH "NAME" | |
141 gfortran \- GNU Fortran compiler | |
142 .SH "SYNOPSIS" | |
143 .IX Header "SYNOPSIS" | |
144 gfortran [\fB\-c\fR|\fB\-S\fR|\fB\-E\fR] | |
145 [\fB\-g\fR] [\fB\-pg\fR] [\fB\-O\fR\fIlevel\fR] | |
146 [\fB\-W\fR\fIwarn\fR...] [\fB\-pedantic\fR] | |
147 [\fB\-I\fR\fIdir\fR...] [\fB\-L\fR\fIdir\fR...] | |
148 [\fB\-D\fR\fImacro\fR[=\fIdefn\fR]...] [\fB\-U\fR\fImacro\fR] | |
149 [\fB\-f\fR\fIoption\fR...] | |
150 [\fB\-m\fR\fImachine-option\fR...] | |
151 [\fB\-o\fR \fIoutfile\fR] \fIinfile\fR... | |
152 .PP | |
153 Only the most useful options are listed here; see below for the | |
154 remainder. | |
155 .SH "DESCRIPTION" | |
156 .IX Header "DESCRIPTION" | |
157 The \fBgfortran\fR command supports all the options supported by the | |
158 \&\fBgcc\fR command. Only options specific to \s-1GNU\s0 Fortran are documented here. | |
159 .PP | |
160 All \s-1GCC\s0 and \s-1GNU\s0 Fortran options | |
161 are accepted both by \fBgfortran\fR and by \fBgcc\fR | |
162 (as well as any other drivers built at the same time, | |
163 such as \fBg++\fR), | |
164 since adding \s-1GNU\s0 Fortran to the \s-1GCC\s0 distribution | |
165 enables acceptance of \s-1GNU\s0 Fortran options | |
166 by all of the relevant drivers. | |
167 .PP | |
168 In some cases, options have positive and negative forms; | |
169 the negative form of \fB\-ffoo\fR would be \fB\-fno\-foo\fR. | |
170 This manual documents only one of these two forms, whichever | |
171 one is not the default. | |
172 .SH "OPTIONS" | |
173 .IX Header "OPTIONS" | |
174 Here is a summary of all the options specific to \s-1GNU\s0 Fortran, grouped | |
175 by type. Explanations are in the following sections. | |
176 .IP "\fIFortran Language Options\fR" 4 | |
177 .IX Item "Fortran Language Options" | |
178 \&\fB\-fall\-intrinsics \-ffree\-form \-fno\-fixed\-form | |
179 \&\-fdollar\-ok \-fimplicit\-none \-fmax\-identifier\-length | |
180 \&\-std=\fR\fIstd\fR \fB\-fd\-lines\-as\-code \-fd\-lines\-as\-comments | |
181 \&\-ffixed\-line\-length\-\fR\fIn\fR \fB\-ffixed\-line\-length\-none | |
182 \&\-ffree\-line\-length\-\fR\fIn\fR \fB\-ffree\-line\-length\-none | |
183 \&\-fdefault\-double\-8 \-fdefault\-integer\-8 \-fdefault\-real\-8 | |
184 \&\-fcray\-pointer \-fopenmp \-fno\-range\-check \-fbackslash \-fmodule\-private\fR | |
185 .IP "\fIPreprocessing Options\fR" 4 | |
186 .IX Item "Preprocessing Options" | |
187 \&\fB\-cpp \-dD \-dI \-dM \-dN \-dU \-fworking\-directory | |
188 \&\-imultilib\fR \fIdir\fR \fB\-iprefix\fR \fIfile\fR \fB\-isysroot\fR \fIdir\fR | |
189 \&\fB\-iquote \-isystem\fR \fIdir\fR \fB\-nocpp \-nostdinc \-undef | |
190 \&\-A\fR\fIquestion\fR\fB=\fR\fIanswer\fR \fB\-A\-\fR\fIquestion\fR[\fB=\fR\fIanswer\fR] | |
191 \&\fB\-C \-CC \-D\fR\fImacro\fR[\fB=\fR\fIdefn\fR] \fB\-U\fR\fImacro\fR \fB\-H \-P\fR | |
192 .IP "\fIError and Warning Options\fR" 4 | |
193 .IX Item "Error and Warning Options" | |
194 \&\fB\-fmax\-errors=\fR\fIn\fR | |
195 \&\fB\-fsyntax\-only \-pedantic \-pedantic\-errors | |
196 \&\-Wall \-Waliasing \-Wampersand \-Warray\-bounds \-Wcharacter\-truncation | |
197 \&\-Wconversion \-Wimplicit\-interface \-Wline\-truncation \-Wintrinsics\-std | |
198 \&\-Wsurprising \-Wno\-tabs \-Wunderflow \-Wunused\-parameter \-Wintrinsics\-shadow | |
199 \&\-Wno\-align\-commons\fR | |
200 .IP "\fIDebugging Options\fR" 4 | |
201 .IX Item "Debugging Options" | |
202 \&\fB\-fdump\-parse\-tree \-ffpe\-trap=\fR\fIlist\fR | |
203 \&\fB\-fdump\-core \-fbacktrace\fR | |
204 .IP "\fIDirectory Options\fR" 4 | |
205 .IX Item "Directory Options" | |
206 \&\fB\-I\fR\fIdir\fR \fB\-J\fR\fIdir\fR \fB\-M\fR\fIdir\fR | |
207 \&\fB\-fintrinsic\-modules\-path\fR \fIdir\fR | |
208 .IP "\fILink Options\fR" 4 | |
209 .IX Item "Link Options" | |
210 \&\fB\-static\-libgfortran\fR | |
211 .IP "\fIRuntime Options\fR" 4 | |
212 .IX Item "Runtime Options" | |
213 \&\fB\-fconvert=\fR\fIconversion\fR \fB\-fno\-range\-check | |
214 \&\-frecord\-marker=\fR\fIlength\fR \fB\-fmax\-subrecord\-length=\fR\fIlength\fR | |
215 \&\fB\-fsign\-zero\fR | |
216 .IP "\fICode Generation Options\fR" 4 | |
217 .IX Item "Code Generation Options" | |
218 \&\fB\-fno\-automatic \-ff2c \-fno\-underscoring | |
219 \&\-fsecond\-underscore | |
220 \&\-fbounds\-check \-fcheck\-array\-temporaries \-fmax\-array\-constructor =\fR\fIn\fR | |
221 \&\fB\-fmax\-stack\-var\-size=\fR\fIn\fR | |
222 \&\fB\-fpack\-derived \-frepack\-arrays \-fshort\-enums \-fexternal\-blas | |
223 \&\-fblas\-matmul\-limit=\fR\fIn\fR \fB\-frecursive \-finit\-local\-zero | |
224 \&\-finit\-integer=\fR\fIn\fR \fB\-finit\-real=\fR\fI<zero|inf|\-inf|nan>\fR | |
225 \&\fB\-finit\-logical=\fR\fI<true|false>\fR \fB\-finit\-character=\fR\fIn\fR \fB\-fno\-align\-commons\fR | |
226 .Sh "Options controlling Fortran dialect" | |
227 .IX Subsection "Options controlling Fortran dialect" | |
228 The following options control the details of the Fortran dialect | |
229 accepted by the compiler: | |
230 .IP "\fB\-ffree\-form\fR" 4 | |
231 .IX Item "-ffree-form" | |
232 .PD 0 | |
233 .IP "\fB\-ffixed\-form\fR" 4 | |
234 .IX Item "-ffixed-form" | |
235 .PD | |
236 Specify the layout used by the source file. The free form layout | |
237 was introduced in Fortran 90. Fixed form was traditionally used in | |
238 older Fortran programs. When neither option is specified, the source | |
239 form is determined by the file extension. | |
240 .IP "\fB\-fall\-intrinsics\fR" 4 | |
241 .IX Item "-fall-intrinsics" | |
242 This option causes all intrinsic procedures (including the GNU-specific | |
243 extensions) to be accepted. This can be useful with \fB\-std=f95\fR to | |
244 force standard-compliance but get access to the full range of intrinsics | |
245 available with \fBgfortran\fR. As a consequence, \fB\-Wintrinsics\-std\fR | |
246 will be ignored and no user-defined procedure with the same name as any | |
247 intrinsic will be called except when it is explicitly declared \f(CW\*(C`EXTERNAL\*(C'\fR. | |
248 .IP "\fB\-fd\-lines\-as\-code\fR" 4 | |
249 .IX Item "-fd-lines-as-code" | |
250 .PD 0 | |
251 .IP "\fB\-fd\-lines\-as\-comments\fR" 4 | |
252 .IX Item "-fd-lines-as-comments" | |
253 .PD | |
254 Enable special treatment for lines beginning with \f(CW\*(C`d\*(C'\fR or \f(CW\*(C`D\*(C'\fR | |
255 in fixed form sources. If the \fB\-fd\-lines\-as\-code\fR option is | |
256 given they are treated as if the first column contained a blank. If the | |
257 \&\fB\-fd\-lines\-as\-comments\fR option is given, they are treated as | |
258 comment lines. | |
259 .IP "\fB\-fdefault\-double\-8\fR" 4 | |
260 .IX Item "-fdefault-double-8" | |
261 Set the \f(CW\*(C`DOUBLE PRECISION\*(C'\fR type to an 8 byte wide type. If | |
262 \&\fB\-fdefault\-real\-8\fR is given, \f(CW\*(C`DOUBLE PRECISION\*(C'\fR would | |
263 instead be promoted to 16 bytes if possible, and \fB\-fdefault\-double\-8\fR | |
264 can be used to prevent this. The kind of real constants like \f(CW\*(C`1.d0\*(C'\fR will | |
265 not be changed by \fB\-fdefault\-real\-8\fR though, so also | |
266 \&\fB\-fdefault\-double\-8\fR does not affect it. | |
267 .IP "\fB\-fdefault\-integer\-8\fR" 4 | |
268 .IX Item "-fdefault-integer-8" | |
269 Set the default integer and logical types to an 8 byte wide type. | |
270 Do nothing if this is already the default. This option also affects | |
271 the kind of integer constants like \f(CW42\fR. | |
272 .IP "\fB\-fdefault\-real\-8\fR" 4 | |
273 .IX Item "-fdefault-real-8" | |
274 Set the default real type to an 8 byte wide type. | |
275 Do nothing if this is already the default. This option also affects | |
276 the kind of non-double real constants like \f(CW1.0\fR, and does promote | |
277 the default width of \f(CW\*(C`DOUBLE PRECISION\*(C'\fR to 16 bytes if possible, unless | |
278 \&\f(CW\*(C`\-fdefault\-double\-8\*(C'\fR is given, too. | |
279 .IP "\fB\-fdollar\-ok\fR" 4 | |
280 .IX Item "-fdollar-ok" | |
281 Allow \fB$\fR as a valid character in a symbol name. | |
282 .IP "\fB\-fbackslash\fR" 4 | |
283 .IX Item "-fbackslash" | |
284 Change the interpretation of backslashes in string literals from a single | |
285 backslash character to \*(L"C\-style\*(R" escape characters. The following | |
286 combinations are expanded \f(CW\*(C`\ea\*(C'\fR, \f(CW\*(C`\eb\*(C'\fR, \f(CW\*(C`\ef\*(C'\fR, \f(CW\*(C`\en\*(C'\fR, | |
287 \&\f(CW\*(C`\er\*(C'\fR, \f(CW\*(C`\et\*(C'\fR, \f(CW\*(C`\ev\*(C'\fR, \f(CW\*(C`\e\e\*(C'\fR, and \f(CW\*(C`\e0\*(C'\fR to the \s-1ASCII\s0 | |
288 characters alert, backspace, form feed, newline, carriage return, | |
289 horizontal tab, vertical tab, backslash, and \s-1NUL\s0, respectively. | |
290 Additionally, \f(CW\*(C`\ex\*(C'\fR\fInn\fR, \f(CW\*(C`\eu\*(C'\fR\fInnnn\fR and | |
291 \&\f(CW\*(C`\eU\*(C'\fR\fInnnnnnnn\fR (where each \fIn\fR is a hexadecimal digit) are | |
292 translated into the Unicode characters corresponding to the specified code | |
293 points. All other combinations of a character preceded by \e are | |
294 unexpanded. | |
295 .IP "\fB\-fmodule\-private\fR" 4 | |
296 .IX Item "-fmodule-private" | |
297 Set the default accessibility of module entities to \f(CW\*(C`PRIVATE\*(C'\fR. | |
298 Use-associated entities will not be accessible unless they are explicitly | |
299 declared as \f(CW\*(C`PUBLIC\*(C'\fR. | |
300 .IP "\fB\-ffixed\-line\-length\-\fR\fIn\fR" 4 | |
301 .IX Item "-ffixed-line-length-n" | |
302 Set column after which characters are ignored in typical fixed-form | |
303 lines in the source file, and through which spaces are assumed (as | |
304 if padded to that length) after the ends of short fixed-form lines. | |
305 .Sp | |
306 Popular values for \fIn\fR include 72 (the | |
307 standard and the default), 80 (card image), and 132 (corresponding | |
308 to \*(L"extended-source\*(R" options in some popular compilers). | |
309 \&\fIn\fR may also be \fBnone\fR, meaning that the entire line is meaningful | |
310 and that continued character constants never have implicit spaces appended | |
311 to them to fill out the line. | |
312 \&\fB\-ffixed\-line\-length\-0\fR means the same thing as | |
313 \&\fB\-ffixed\-line\-length\-none\fR. | |
314 .IP "\fB\-ffree\-line\-length\-\fR\fIn\fR" 4 | |
315 .IX Item "-ffree-line-length-n" | |
316 Set column after which characters are ignored in typical free-form | |
317 lines in the source file. The default value is 132. | |
318 \&\fIn\fR may be \fBnone\fR, meaning that the entire line is meaningful. | |
319 \&\fB\-ffree\-line\-length\-0\fR means the same thing as | |
320 \&\fB\-ffree\-line\-length\-none\fR. | |
321 .IP "\fB\-fmax\-identifier\-length=\fR\fIn\fR" 4 | |
322 .IX Item "-fmax-identifier-length=n" | |
323 Specify the maximum allowed identifier length. Typical values are | |
324 31 (Fortran 95) and 63 (Fortran 2003 and Fortran 2008). | |
325 .IP "\fB\-fimplicit\-none\fR" 4 | |
326 .IX Item "-fimplicit-none" | |
327 Specify that no implicit typing is allowed, unless overridden by explicit | |
328 \&\f(CW\*(C`IMPLICIT\*(C'\fR statements. This is the equivalent of adding | |
329 \&\f(CW\*(C`implicit none\*(C'\fR to the start of every procedure. | |
330 .IP "\fB\-fcray\-pointer\fR" 4 | |
331 .IX Item "-fcray-pointer" | |
332 Enable the Cray pointer extension, which provides C\-like pointer | |
333 functionality. | |
334 .IP "\fB\-fopenmp\fR" 4 | |
335 .IX Item "-fopenmp" | |
336 Enable the OpenMP extensions. This includes OpenMP \f(CW\*(C`!$omp\*(C'\fR directives | |
337 in free form | |
338 and \f(CW\*(C`c$omp\*(C'\fR, \f(CW*$omp\fR and \f(CW\*(C`!$omp\*(C'\fR directives in fixed form, | |
339 \&\f(CW\*(C`!$\*(C'\fR conditional compilation sentinels in free form | |
340 and \f(CW\*(C`c$\*(C'\fR, \f(CW\*(C`*$\*(C'\fR and \f(CW\*(C`!$\*(C'\fR sentinels in fixed form, | |
341 and when linking arranges for the OpenMP runtime library to be linked | |
342 in. The option \fB\-fopenmp\fR implies \fB\-frecursive\fR. | |
343 .IP "\fB\-fno\-range\-check\fR" 4 | |
344 .IX Item "-fno-range-check" | |
345 Disable range checking on results of simplification of constant | |
346 expressions during compilation. For example, \s-1GNU\s0 Fortran will give | |
347 an error at compile time when simplifying \f(CW\*(C`a = 1. / 0\*(C'\fR. | |
348 With this option, no error will be given and \f(CW\*(C`a\*(C'\fR will be assigned | |
349 the value \f(CW\*(C`+Infinity\*(C'\fR. If an expression evaluates to a value | |
350 outside of the relevant range of [\f(CW\*(C`\-HUGE()\*(C'\fR:\f(CW\*(C`HUGE()\*(C'\fR], | |
351 then the expression will be replaced by \f(CW\*(C`\-Inf\*(C'\fR or \f(CW\*(C`+Inf\*(C'\fR | |
352 as appropriate. | |
353 Similarly, \f(CW\*(C`DATA i/Z\*(AqFFFFFFFF\*(Aq/\*(C'\fR will result in an integer overflow | |
354 on most systems, but with \fB\-fno\-range\-check\fR the value will | |
355 \&\*(L"wrap around\*(R" and \f(CW\*(C`i\*(C'\fR will be initialized to \-1 instead. | |
356 .IP "\fB\-std=\fR\fIstd\fR" 4 | |
357 .IX Item "-std=std" | |
358 Specify the standard to which the program is expected to conform, which | |
359 may be one of \fBf95\fR, \fBf2003\fR, \fBf2008\fR, \fBgnu\fR, or | |
360 \&\fBlegacy\fR. The default value for \fIstd\fR is \fBgnu\fR, which | |
361 specifies a superset of the Fortran 95 standard that includes all of the | |
362 extensions supported by \s-1GNU\s0 Fortran, although warnings will be given for | |
363 obsolete extensions not recommended for use in new code. The | |
364 \&\fBlegacy\fR value is equivalent but without the warnings for obsolete | |
365 extensions, and may be useful for old non-standard programs. The | |
366 \&\fBf95\fR, \fBf2003\fR and \fBf2008\fR values specify strict | |
367 conformance to the Fortran 95, Fortran 2003 and Fortran 2008 standards, | |
368 respectively; errors are given for all extensions beyond the relevant | |
369 language standard, and warnings are given for the Fortran 77 features | |
370 that are permitted but obsolescent in later standards. | |
371 .Sh "Enable and customize preprocessing" | |
372 .IX Subsection "Enable and customize preprocessing" | |
373 Preprocessor related options. See section | |
374 \&\fBPreprocessing and conditional compilation\fR for more detailed | |
375 information on preprocessing in \fBgfortran\fR. | |
376 .IP "\fB\-cpp\fR" 4 | |
377 .IX Item "-cpp" | |
378 .PD 0 | |
379 .IP "\fB\-nocpp\fR" 4 | |
380 .IX Item "-nocpp" | |
381 .PD | |
382 Enable preprocessing. The preprocessor is automatically invoked if | |
383 the file extension is \fI.fpp\fR, \fI.FPP\fR, \fI.F\fR, \fI.FOR\fR, | |
384 \&\fI.FTN\fR, \fI.F90\fR, \fI.F95\fR, \fI.F03\fR or \fI.F08\fR. Use | |
385 this option to manually enable preprocessing of any kind of Fortran file. | |
386 .Sp | |
387 To disable preprocessing of files with any of the above listed extensions, | |
388 use the negative form: \fB\-nocpp\fR. | |
389 .Sp | |
390 The preprocessor is run in traditional mode, be aware that any | |
391 restrictions of the file-format, e.g. fixed-form line width, | |
392 apply for preprocessed output as well. | |
393 .IP "\fB\-dM\fR" 4 | |
394 .IX Item "-dM" | |
395 Instead of the normal output, generate a list of \f(CW\*(Aq#define\*(Aq\fR | |
396 directives for all the macros defined during the execution of the | |
397 preprocessor, including predefined macros. This gives you a way | |
398 of finding out what is predefined in your version of the preprocessor. | |
399 Assuming you have no file \fIfoo.f90\fR, the command | |
400 .Sp | |
401 .Vb 1 | |
402 \& touch foo.f90; gfortran \-cpp \-dM foo.f90 | |
403 .Ve | |
404 .Sp | |
405 will show all the predefined macros. | |
406 .IP "\fB\-dD\fR" 4 | |
407 .IX Item "-dD" | |
408 Like \fB\-dM\fR except in two respects: it does not include the | |
409 predefined macros, and it outputs both the \f(CW\*(C`#define\*(C'\fR directives | |
410 and the result of preprocessing. Both kinds of output go to the | |
411 standard output file. | |
412 .IP "\fB\-dN\fR" 4 | |
413 .IX Item "-dN" | |
414 Like \fB\-dD\fR, but emit only the macro names, not their expansions. | |
415 .IP "\fB\-dU\fR" 4 | |
416 .IX Item "-dU" | |
417 Like \fBdD\fR except that only macros that are expanded, or whose | |
418 definedness is tested in preprocessor directives, are output; the | |
419 output is delayed until the use or test of the macro; and \f(CW\*(Aq#undef\*(Aq\fR | |
420 directives are also output for macros tested but undefined at the time. | |
421 .IP "\fB\-dI\fR" 4 | |
422 .IX Item "-dI" | |
423 Output \f(CW\*(Aq#include\*(Aq\fR directives in addition to the result | |
424 of preprocessing. | |
425 .IP "\fB\-fworking\-directory\fR" 4 | |
426 .IX Item "-fworking-directory" | |
427 Enable generation of linemarkers in the preprocessor output that will | |
428 let the compiler know the current working directory at the time of | |
429 preprocessing. When this option is enabled, the preprocessor will emit, | |
430 after the initial linemarker, a second linemarker with the current | |
431 working directory followed by two slashes. \s-1GCC\s0 will use this directory, | |
432 when it's present in the preprocessed input, as the directory emitted | |
433 as the current working directory in some debugging information formats. | |
434 This option is implicitly enabled if debugging information is enabled, | |
435 but this can be inhibited with the negated form | |
436 \&\fB\-fno\-working\-directory\fR. If the \fB\-P\fR flag is present | |
437 in the command line, this option has no effect, since no \f(CW\*(C`#line\*(C'\fR | |
438 directives are emitted whatsoever. | |
439 .IP "\fB\-idirafter\fR \fIdir\fR" 4 | |
440 .IX Item "-idirafter dir" | |
441 Search \fIdir\fR for include files, but do it after all directories | |
442 specified with \fB\-I\fR and the standard system directories have | |
443 been exhausted. \fIdir\fR is treated as a system include directory. | |
444 If dir begins with \f(CW\*(C`=\*(C'\fR, then the \f(CW\*(C`=\*(C'\fR will be replaced by | |
445 the sysroot prefix; see \fB\-\-sysroot\fR and \fB\-isysroot\fR. | |
446 .IP "\fB\-imultilib\fR \fIdir\fR" 4 | |
447 .IX Item "-imultilib dir" | |
448 Use \fIdir\fR as a subdirectory of the directory containing target-specific | |
449 \&\*(C+ headers. | |
450 .IP "\fB\-iprefix\fR \fIprefix\fR" 4 | |
451 .IX Item "-iprefix prefix" | |
452 Specify \fIprefix\fR as the prefix for subsequent \fB\-iwithprefix\fR | |
453 options. If the \fIprefix\fR represents a directory, you should include | |
454 the final \f(CW\*(Aq/\*(Aq\fR. | |
455 .IP "\fB\-isysroot\fR \fIdir\fR" 4 | |
456 .IX Item "-isysroot dir" | |
457 This option is like the \fB\-\-sysroot\fR option, but applies only to | |
458 header files. See the \fB\-\-sysroot\fR option for more information. | |
459 .IP "\fB\-iquote\fR \fIdir\fR" 4 | |
460 .IX Item "-iquote dir" | |
461 Search \fIdir\fR only for header files requested with \f(CW\*(C`#include "file"\*(C'\fR; | |
462 they are not searched for \f(CW\*(C`#include <file>\*(C'\fR, before all directories | |
463 specified by \fB\-I\fR and before the standard system directories. If | |
464 \&\fIdir\fR begins with \f(CW\*(C`=\*(C'\fR, then the \f(CW\*(C`=\*(C'\fR will be replaced by the | |
465 sysroot prefix; see \fB\-\-sysroot\fR and \fB\-isysroot\fR. | |
466 .IP "\fB\-isystem\fR \fIdir\fR" 4 | |
467 .IX Item "-isystem dir" | |
468 Search \fIdir\fR for header files, after all directories specified by | |
469 \&\fB\-I\fR but before the standard system directories. Mark it as a | |
470 system directory, so that it gets the same special treatment as is | |
471 applied to the standard system directories. If \fIdir\fR begins with | |
472 \&\f(CW\*(C`=\*(C'\fR, then the \f(CW\*(C`=\*(C'\fR will be replaced by the sysroot prefix; | |
473 see \fB\-\-sysroot\fR and \fB\-isysroot\fR. | |
474 .IP "\fB\-nostdinc\fR" 4 | |
475 .IX Item "-nostdinc" | |
476 Do not search the standard system directories for header files. Only | |
477 the directories you have specified with \fB\-I\fR options (and the | |
478 directory of the current file, if appropriate) are searched. | |
479 .IP "\fB\-undef\fR" 4 | |
480 .IX Item "-undef" | |
481 Do not predefine any system-specific or GCC-specific macros. | |
482 The standard predefined macros remain defined. | |
483 .IP "\fB\-A\fR\fIpredicate\fR\fB=\fR\fIanswer\fR" 4 | |
484 .IX Item "-Apredicate=answer" | |
485 Make an assertion with the predicate \fIpredicate\fR and answer \fIanswer\fR. | |
486 This form is preferred to the older form \-A predicate(answer), which is still | |
487 supported, because it does not use shell special characters. | |
488 .IP "\fB\-A\-\fR\fIpredicate\fR\fB=\fR\fIanswer\fR" 4 | |
489 .IX Item "-A-predicate=answer" | |
490 Cancel an assertion with the predicate \fIpredicate\fR and answer \fIanswer\fR. | |
491 .IP "\fB\-C\fR" 4 | |
492 .IX Item "-C" | |
493 Do not discard comments. All comments are passed through to the output | |
494 file, except for comments in processed directives, which are deleted | |
495 along with the directive. | |
496 .Sp | |
497 You should be prepared for side effects when using \fB\-C\fR; it causes | |
498 the preprocessor to treat comments as tokens in their own right. For example, | |
499 comments appearing at the start of what would be a directive line have the | |
500 effect of turning that line into an ordinary source line, since the first | |
501 token on the line is no longer a \f(CW\*(Aq#\*(Aq\fR. | |
502 .Sp | |
503 Warning: this currently handles C\-Style comments only. The preprocessor | |
504 does not yet recognize Fortran-style comments. | |
505 .IP "\fB\-CC\fR" 4 | |
506 .IX Item "-CC" | |
507 Do not discard comments, including during macro expansion. This is like | |
508 \&\fB\-C\fR, except that comments contained within macros are also passed | |
509 through to the output file where the macro is expanded. | |
510 .Sp | |
511 In addition to the side-effects of the \fB\-C\fR option, the \fB\-CC\fR | |
512 option causes all \*(C+\-style comments inside a macro to be converted to C\-style | |
513 comments. This is to prevent later use of that macro from inadvertently | |
514 commenting out the remainder of the source line. The \fB\-CC\fR option | |
515 is generally used to support lint comments. | |
516 .Sp | |
517 Warning: this currently handles C\- and \*(C+\-Style comments only. The | |
518 preprocessor does not yet recognize Fortran-style comments. | |
519 .IP "\fB\-D\fR\fIname\fR" 4 | |
520 .IX Item "-Dname" | |
521 Predefine name as a macro, with definition \f(CW1\fR. | |
522 .IP "\fB\-D\fR\fIname\fR\fB=\fR\fIdefinition\fR" 4 | |
523 .IX Item "-Dname=definition" | |
524 The contents of \fIdefinition\fR are tokenized and processed as if they | |
525 appeared during translation phase three in a \f(CW\*(Aq#define\*(Aq\fR directive. | |
526 In particular, the definition will be truncated by embedded newline | |
527 characters. | |
528 .Sp | |
529 If you are invoking the preprocessor from a shell or shell-like program | |
530 you may need to use the shell's quoting syntax to protect characters such | |
531 as spaces that have a meaning in the shell syntax. | |
532 .Sp | |
533 If you wish to define a function-like macro on the command line, write | |
534 its argument list with surrounding parentheses before the equals sign | |
535 (if any). Parentheses are meaningful to most shells, so you will need | |
536 to quote the option. With sh and csh, \f(CW\*(C`\-D\*(Aqname(args...)=definition\*(Aq\*(C'\fR | |
537 works. | |
538 .Sp | |
539 \&\fB\-D\fR and \fB\-U\fR options are processed in the order they are | |
540 given on the command line. All \-imacros file and \-include file options | |
541 are processed after all \-D and \-U options. | |
542 .IP "\fB\-H\fR" 4 | |
543 .IX Item "-H" | |
544 Print the name of each header file used, in addition to other normal | |
545 activities. Each name is indented to show how deep in the \f(CW\*(Aq#include\*(Aq\fR | |
546 stack it is. | |
547 .IP "\fB\-P\fR" 4 | |
548 .IX Item "-P" | |
549 Inhibit generation of linemarkers in the output from the preprocessor. | |
550 This might be useful when running the preprocessor on something that | |
551 is not C code, and will be sent to a program which might be confused | |
552 by the linemarkers. | |
553 .IP "\fB\-U\fR\fIname\fR" 4 | |
554 .IX Item "-Uname" | |
555 Cancel any previous definition of \fIname\fR, either built in or provided | |
556 with a \fB\-D\fR option. | |
557 .Sh "Options to request or suppress errors and warnings" | |
558 .IX Subsection "Options to request or suppress errors and warnings" | |
559 Errors are diagnostic messages that report that the \s-1GNU\s0 Fortran compiler | |
560 cannot compile the relevant piece of source code. The compiler will | |
561 continue to process the program in an attempt to report further errors | |
562 to aid in debugging, but will not produce any compiled output. | |
563 .PP | |
564 Warnings are diagnostic messages that report constructions which | |
565 are not inherently erroneous but which are risky or suggest there is | |
566 likely to be a bug in the program. Unless \fB\-Werror\fR is specified, | |
567 they do not prevent compilation of the program. | |
568 .PP | |
569 You can request many specific warnings with options beginning \fB\-W\fR, | |
570 for example \fB\-Wimplicit\fR to request warnings on implicit | |
571 declarations. Each of these specific warning options also has a | |
572 negative form beginning \fB\-Wno\-\fR to turn off warnings; | |
573 for example, \fB\-Wno\-implicit\fR. This manual lists only one of the | |
574 two forms, whichever is not the default. | |
575 .PP | |
576 These options control the amount and kinds of errors and warnings produced | |
577 by \s-1GNU\s0 Fortran: | |
578 .IP "\fB\-fmax\-errors=\fR\fIn\fR" 4 | |
579 .IX Item "-fmax-errors=n" | |
580 Limits the maximum number of error messages to \fIn\fR, at which point | |
581 \&\s-1GNU\s0 Fortran bails out rather than attempting to continue processing the | |
582 source code. If \fIn\fR is 0, there is no limit on the number of error | |
583 messages produced. | |
584 .IP "\fB\-fsyntax\-only\fR" 4 | |
585 .IX Item "-fsyntax-only" | |
586 Check the code for syntax errors, but don't actually compile it. This | |
587 will generate module files for each module present in the code, but no | |
588 other output file. | |
589 .IP "\fB\-pedantic\fR" 4 | |
590 .IX Item "-pedantic" | |
591 Issue warnings for uses of extensions to Fortran 95. | |
592 \&\fB\-pedantic\fR also applies to C\-language constructs where they | |
593 occur in \s-1GNU\s0 Fortran source files, such as use of \fB\ee\fR in a | |
594 character constant within a directive like \f(CW\*(C`#include\*(C'\fR. | |
595 .Sp | |
596 Valid Fortran 95 programs should compile properly with or without | |
597 this option. | |
598 However, without this option, certain \s-1GNU\s0 extensions and traditional | |
599 Fortran features are supported as well. | |
600 With this option, many of them are rejected. | |
601 .Sp | |
602 Some users try to use \fB\-pedantic\fR to check programs for conformance. | |
603 They soon find that it does not do quite what they want\-\-\-it finds some | |
604 nonstandard practices, but not all. | |
605 However, improvements to \s-1GNU\s0 Fortran in this area are welcome. | |
606 .Sp | |
607 This should be used in conjunction with \fB\-std=f95\fR, | |
608 \&\fB\-std=f2003\fR or \fB\-std=f2008\fR. | |
609 .IP "\fB\-pedantic\-errors\fR" 4 | |
610 .IX Item "-pedantic-errors" | |
611 Like \fB\-pedantic\fR, except that errors are produced rather than | |
612 warnings. | |
613 .IP "\fB\-Wall\fR" 4 | |
614 .IX Item "-Wall" | |
615 Enables commonly used warning options pertaining to usage that | |
616 we recommend avoiding and that we believe are easy to avoid. | |
617 This currently includes \fB\-Waliasing\fR, | |
618 \&\fB\-Wampersand\fR, \fB\-Wsurprising\fR, \fB\-Wintrinsics\-std\fR, | |
619 \&\fB\-Wno\-tabs\fR, \fB\-Wintrinsic\-shadow\fR and \fB\-Wline\-truncation\fR. | |
620 .IP "\fB\-Waliasing\fR" 4 | |
621 .IX Item "-Waliasing" | |
622 Warn about possible aliasing of dummy arguments. Specifically, it warns | |
623 if the same actual argument is associated with a dummy argument with | |
624 \&\f(CW\*(C`INTENT(IN)\*(C'\fR and a dummy argument with \f(CW\*(C`INTENT(OUT)\*(C'\fR in a call | |
625 with an explicit interface. | |
626 .Sp | |
627 The following example will trigger the warning. | |
628 .Sp | |
629 .Vb 7 | |
630 \& interface | |
631 \& subroutine bar(a,b) | |
632 \& integer, intent(in) :: a | |
633 \& integer, intent(out) :: b | |
634 \& end subroutine | |
635 \& end interface | |
636 \& integer :: a | |
637 \& | |
638 \& call bar(a,a) | |
639 .Ve | |
640 .IP "\fB\-Wampersand\fR" 4 | |
641 .IX Item "-Wampersand" | |
642 Warn about missing ampersand in continued character constants. The warning is | |
643 given with \fB\-Wampersand\fR, \fB\-pedantic\fR, \fB\-std=f95\fR, | |
644 \&\fB\-std=f2003\fR and \fB\-std=f2008\fR. Note: With no ampersand | |
645 given in a continued character constant, \s-1GNU\s0 Fortran assumes continuation | |
646 at the first non-comment, non-whitespace character after the ampersand | |
647 that initiated the continuation. | |
648 .IP "\fB\-Warray\-temporaries\fR" 4 | |
649 .IX Item "-Warray-temporaries" | |
650 Warn about array temporaries generated by the compiler. The information | |
651 generated by this warning is sometimes useful in optimization, in order to | |
652 avoid such temporaries. | |
653 .IP "\fB\-Wcharacter\-truncation\fR" 4 | |
654 .IX Item "-Wcharacter-truncation" | |
655 Warn when a character assignment will truncate the assigned string. | |
656 .IP "\fB\-Wline\-truncation\fR" 4 | |
657 .IX Item "-Wline-truncation" | |
658 Warn when a source code line will be truncated. | |
659 .IP "\fB\-Wconversion\fR" 4 | |
660 .IX Item "-Wconversion" | |
661 Warn about implicit conversions between different types. | |
662 .IP "\fB\-Wimplicit\-interface\fR" 4 | |
663 .IX Item "-Wimplicit-interface" | |
664 Warn if a procedure is called without an explicit interface. | |
665 Note this only checks that an explicit interface is present. It does not | |
666 check that the declared interfaces are consistent across program units. | |
667 .IP "\fB\-Wintrinsics\-std\fR" 4 | |
668 .IX Item "-Wintrinsics-std" | |
669 Warn if \fBgfortran\fR finds a procedure named like an intrinsic not | |
670 available in the currently selected standard (with \fB\-std\fR) and treats | |
671 it as \f(CW\*(C`EXTERNAL\*(C'\fR procedure because of this. \fB\-fall\-intrinsics\fR can | |
672 be used to never trigger this behaviour and always link to the intrinsic | |
673 regardless of the selected standard. | |
674 .IP "\fB\-Wsurprising\fR" 4 | |
675 .IX Item "-Wsurprising" | |
676 Produce a warning when \*(L"suspicious\*(R" code constructs are encountered. | |
677 While technically legal these usually indicate that an error has been made. | |
678 .Sp | |
679 This currently produces a warning under the following circumstances: | |
680 .RS 4 | |
681 .IP "\(bu" 4 | |
682 An \s-1INTEGER\s0 \s-1SELECT\s0 construct has a \s-1CASE\s0 that can never be matched as its | |
683 lower value is greater than its upper value. | |
684 .IP "\(bu" 4 | |
685 A \s-1LOGICAL\s0 \s-1SELECT\s0 construct has three \s-1CASE\s0 statements. | |
686 .IP "\(bu" 4 | |
687 A \s-1TRANSFER\s0 specifies a source that is shorter than the destination. | |
688 .IP "\(bu" 4 | |
689 The type of a function result is declared more than once with the same type. If | |
690 \&\fB\-pedantic\fR or standard-conforming mode is enabled, this is an error. | |
691 .RE | |
692 .RS 4 | |
693 .RE | |
694 .IP "\fB\-Wtabs\fR" 4 | |
695 .IX Item "-Wtabs" | |
696 By default, tabs are accepted as whitespace, but tabs are not members | |
697 of the Fortran Character Set. For continuation lines, a tab followed | |
698 by a digit between 1 and 9 is supported. \fB\-Wno\-tabs\fR will cause | |
699 a warning to be issued if a tab is encountered. Note, \fB\-Wno\-tabs\fR | |
700 is active for \fB\-pedantic\fR, \fB\-std=f95\fR, \fB\-std=f2003\fR, | |
701 \&\fB\-std=f2008\fR and \fB\-Wall\fR. | |
702 .IP "\fB\-Wunderflow\fR" 4 | |
703 .IX Item "-Wunderflow" | |
704 Produce a warning when numerical constant expressions are | |
705 encountered, which yield an \s-1UNDERFLOW\s0 during compilation. | |
706 .IP "\fB\-Wintrinsic\-shadow\fR" 4 | |
707 .IX Item "-Wintrinsic-shadow" | |
708 Warn if a user-defined procedure or module procedure has the same name as an | |
709 intrinsic; in this case, an explicit interface or \f(CW\*(C`EXTERNAL\*(C'\fR or | |
710 \&\f(CW\*(C`INTRINSIC\*(C'\fR declaration might be needed to get calls later resolved to | |
711 the desired intrinsic/procedure. | |
712 .IP "\fB\-Wunused\-parameter\fR" 4 | |
713 .IX Item "-Wunused-parameter" | |
714 Contrary to \fBgcc\fR's meaning of \fB\-Wunused\-parameter\fR, | |
715 \&\fBgfortran\fR's implementation of this option does not warn | |
716 about unused dummy arguments, but about unused \f(CW\*(C`PARAMETER\*(C'\fR values. | |
717 \&\fB\-Wunused\-parameter\fR is not included in \fB\-Wall\fR but is | |
718 implied by \fB\-Wall \-Wextra\fR. | |
719 .IP "\fB\-Walign\-commons\fR" 4 | |
720 .IX Item "-Walign-commons" | |
721 By default, \fBgfortran\fR warns about any occasion of variables being | |
722 padded for proper alignment inside a \s-1COMMON\s0 block. This warning can be turned | |
723 off via \fB\-Wno\-align\-commons\fR. See also \fB\-falign\-commons\fR. | |
724 .IP "\fB\-Werror\fR" 4 | |
725 .IX Item "-Werror" | |
726 Turns all warnings into errors. | |
727 .PP | |
728 Some of these have no effect when compiling programs written in Fortran. | |
729 .Sh "Options for debugging your program or \s-1GNU\s0 Fortran" | |
730 .IX Subsection "Options for debugging your program or GNU Fortran" | |
731 \&\s-1GNU\s0 Fortran has various special options that are used for debugging | |
732 either your program or the \s-1GNU\s0 Fortran compiler. | |
733 .IP "\fB\-fdump\-parse\-tree\fR" 4 | |
734 .IX Item "-fdump-parse-tree" | |
735 Output the internal parse tree before starting code generation. Only | |
736 really useful for debugging the \s-1GNU\s0 Fortran compiler itself. | |
737 .IP "\fB\-ffpe\-trap=\fR\fIlist\fR" 4 | |
738 .IX Item "-ffpe-trap=list" | |
739 Specify a list of \s-1IEEE\s0 exceptions when a Floating Point Exception | |
740 (\s-1FPE\s0) should be raised. On most systems, this will result in a \s-1SIGFPE\s0 | |
741 signal being sent and the program being interrupted, producing a core | |
742 file useful for debugging. \fIlist\fR is a (possibly empty) comma-separated | |
743 list of the following \s-1IEEE\s0 exceptions: \fBinvalid\fR (invalid floating | |
744 point operation, such as \f(CW\*(C`SQRT(\-1.0)\*(C'\fR), \fBzero\fR (division by | |
745 zero), \fBoverflow\fR (overflow in a floating point operation), | |
746 \&\fBunderflow\fR (underflow in a floating point operation), | |
747 \&\fBprecision\fR (loss of precision during operation) and \fBdenormal\fR | |
748 (operation produced a denormal value). | |
749 .Sp | |
750 Some of the routines in the Fortran runtime library, like | |
751 \&\fB\s-1CPU_TIME\s0\fR, are likely to trigger floating point exceptions when | |
752 \&\f(CW\*(C`ffpe\-trap=precision\*(C'\fR is used. For this reason, the use of | |
753 \&\f(CW\*(C`ffpe\-trap=precision\*(C'\fR is not recommended. | |
754 .IP "\fB\-fbacktrace\fR" 4 | |
755 .IX Item "-fbacktrace" | |
756 Specify that, when a runtime error is encountered or a deadly signal is | |
757 emitted (segmentation fault, illegal instruction, bus error or | |
758 floating-point exception), the Fortran runtime | |
759 library should output a backtrace of the error. This option | |
760 only has influence for compilation of the Fortran main program. | |
761 .IP "\fB\-fdump\-core\fR" 4 | |
762 .IX Item "-fdump-core" | |
763 Request that a core-dump file is written to disk when a runtime error | |
764 is encountered on systems that support core dumps. This option is | |
765 only effective for the compilation of the Fortran main program. | |
766 .Sh "Options for directory search" | |
767 .IX Subsection "Options for directory search" | |
768 These options affect how \s-1GNU\s0 Fortran searches | |
769 for files specified by the \f(CW\*(C`INCLUDE\*(C'\fR directive and where it searches | |
770 for previously compiled modules. | |
771 .PP | |
772 It also affects the search paths used by \fBcpp\fR when used to preprocess | |
773 Fortran source. | |
774 .IP "\fB\-I\fR\fIdir\fR" 4 | |
775 .IX Item "-Idir" | |
776 These affect interpretation of the \f(CW\*(C`INCLUDE\*(C'\fR directive | |
777 (as well as of the \f(CW\*(C`#include\*(C'\fR directive of the \fBcpp\fR | |
778 preprocessor). | |
779 .Sp | |
780 Also note that the general behavior of \fB\-I\fR and | |
781 \&\f(CW\*(C`INCLUDE\*(C'\fR is pretty much the same as of \fB\-I\fR with | |
782 \&\f(CW\*(C`#include\*(C'\fR in the \fBcpp\fR preprocessor, with regard to | |
783 looking for \fIheader.gcc\fR files and other such things. | |
784 .Sp | |
785 This path is also used to search for \fI.mod\fR files when previously | |
786 compiled modules are required by a \f(CW\*(C`USE\*(C'\fR statement. | |
787 .IP "\fB\-J\fR\fIdir\fR" 4 | |
788 .IX Item "-Jdir" | |
789 .PD 0 | |
790 .IP "\fB\-M\fR\fIdir\fR" 4 | |
791 .IX Item "-Mdir" | |
792 .PD | |
793 This option specifies where to put \fI.mod\fR files for compiled modules. | |
794 It is also added to the list of directories to searched by an \f(CW\*(C`USE\*(C'\fR | |
795 statement. | |
796 .Sp | |
797 The default is the current directory. | |
798 .Sp | |
799 \&\fB\-M\fR is deprecated to avoid conflicts with existing \s-1GCC\s0 options. | |
800 .IP "\fB\-fintrinsic\-modules\-path\fR \fIdir\fR" 4 | |
801 .IX Item "-fintrinsic-modules-path dir" | |
802 This option specifies the location of pre-compiled intrinsic modules, if | |
803 they are not in the default location expected by the compiler. | |
804 .Sh "Influencing the linking step" | |
805 .IX Subsection "Influencing the linking step" | |
806 These options come into play when the compiler links object files into an | |
807 executable output file. They are meaningless if the compiler is not doing | |
808 a link step. | |
809 .IP "\fB\-static\-libgfortran\fR" 4 | |
810 .IX Item "-static-libgfortran" | |
811 On systems that provide \fIlibgfortran\fR as a shared and a static | |
812 library, this option forces the use of the static version. If no | |
813 shared version of \fIlibgfortran\fR was built when the compiler was | |
814 configured, this option has no effect. | |
815 .Sh "Influencing runtime behavior" | |
816 .IX Subsection "Influencing runtime behavior" | |
817 These options affect the runtime behavior of programs compiled with \s-1GNU\s0 Fortran. | |
818 .IP "\fB\-fconvert=\fR\fIconversion\fR" 4 | |
819 .IX Item "-fconvert=conversion" | |
820 Specify the representation of data for unformatted files. Valid | |
821 values for conversion are: \fBnative\fR, the default; \fBswap\fR, | |
822 swap between big\- and little-endian; \fBbig-endian\fR, use big-endian | |
823 representation for unformatted files; \fBlittle-endian\fR, use little-endian | |
824 representation for unformatted files. | |
825 .Sp | |
826 \&\fIThis option has an effect only when used in the main program. | |
827 The \f(CI\*(C`CONVERT\*(C'\fI specifier and the \s-1GFORTRAN_CONVERT_UNIT\s0 environment | |
828 variable override the default specified by \f(BI\-fconvert\fI.\fR | |
829 .IP "\fB\-fno\-range\-check\fR" 4 | |
830 .IX Item "-fno-range-check" | |
831 Disable range checking of input values during integer \f(CW\*(C`READ\*(C'\fR operations. | |
832 For example, \s-1GNU\s0 Fortran will give an error if an input value is | |
833 outside of the relevant range of [\f(CW\*(C`\-HUGE()\*(C'\fR:\f(CW\*(C`HUGE()\*(C'\fR]. In other words, | |
834 with \f(CW\*(C`INTEGER (kind=4) :: i\*(C'\fR , attempting to read \-2147483648 will | |
835 give an error unless \fB\-fno\-range\-check\fR is given. | |
836 .IP "\fB\-frecord\-marker=\fR\fIlength\fR" 4 | |
837 .IX Item "-frecord-marker=length" | |
838 Specify the length of record markers for unformatted files. | |
839 Valid values for \fIlength\fR are 4 and 8. Default is 4. | |
840 \&\fIThis is different from previous versions of\fR \fBgfortran\fR, | |
841 which specified a default record marker length of 8 on most | |
842 systems. If you want to read or write files compatible | |
843 with earlier versions of \fBgfortran\fR, use \fB\-frecord\-marker=8\fR. | |
844 .IP "\fB\-fmax\-subrecord\-length=\fR\fIlength\fR" 4 | |
845 .IX Item "-fmax-subrecord-length=length" | |
846 Specify the maximum length for a subrecord. The maximum permitted | |
847 value for length is 2147483639, which is also the default. Only | |
848 really useful for use by the gfortran testsuite. | |
849 .IP "\fB\-fsign\-zero\fR" 4 | |
850 .IX Item "-fsign-zero" | |
851 When writing zero values, show the negative sign if the sign bit is set. | |
852 \&\f(CW\*(C`fno\-sign\-zero\*(C'\fR does not print the negative sign of zero values for | |
853 compatibility with F77. Default behavior is to show the negative sign. | |
854 .Sh "Options for code generation conventions" | |
855 .IX Subsection "Options for code generation conventions" | |
856 These machine-independent options control the interface conventions | |
857 used in code generation. | |
858 .PP | |
859 Most of them have both positive and negative forms; the negative form | |
860 of \fB\-ffoo\fR would be \fB\-fno\-foo\fR. In the table below, only | |
861 one of the forms is listed\-\-\-the one which is not the default. You | |
862 can figure out the other form by either removing \fBno\-\fR or adding | |
863 it. | |
864 .IP "\fB\-fno\-automatic\fR" 4 | |
865 .IX Item "-fno-automatic" | |
866 Treat each program unit (except those marked as \s-1RECURSIVE\s0) as if the | |
867 \&\f(CW\*(C`SAVE\*(C'\fR statement were specified for every local variable and array | |
868 referenced in it. Does not affect common blocks. (Some Fortran compilers | |
869 provide this option under the name \fB\-static\fR or \fB\-save\fR.) | |
870 The default, which is \fB\-fautomatic\fR, uses the stack for local | |
871 variables smaller than the value given by \fB\-fmax\-stack\-var\-size\fR. | |
872 Use the option \fB\-frecursive\fR to use no static memory. | |
873 .IP "\fB\-ff2c\fR" 4 | |
874 .IX Item "-ff2c" | |
875 Generate code designed to be compatible with code generated | |
876 by \fBg77\fR and \fBf2c\fR. | |
877 .Sp | |
878 The calling conventions used by \fBg77\fR (originally implemented | |
879 in \fBf2c\fR) require functions that return type | |
880 default \f(CW\*(C`REAL\*(C'\fR to actually return the C type \f(CW\*(C`double\*(C'\fR, and | |
881 functions that return type \f(CW\*(C`COMPLEX\*(C'\fR to return the values via an | |
882 extra argument in the calling sequence that points to where to | |
883 store the return value. Under the default \s-1GNU\s0 calling conventions, such | |
884 functions simply return their results as they would in \s-1GNU\s0 | |
885 C\-\-\-default \f(CW\*(C`REAL\*(C'\fR functions return the C type \f(CW\*(C`float\*(C'\fR, and | |
886 \&\f(CW\*(C`COMPLEX\*(C'\fR functions return the \s-1GNU\s0 C type \f(CW\*(C`complex\*(C'\fR. | |
887 Additionally, this option implies the \fB\-fsecond\-underscore\fR | |
888 option, unless \fB\-fno\-second\-underscore\fR is explicitly requested. | |
889 .Sp | |
890 This does not affect the generation of code that interfaces with | |
891 the \fBlibgfortran\fR library. | |
892 .Sp | |
893 \&\fICaution:\fR It is not a good idea to mix Fortran code compiled with | |
894 \&\fB\-ff2c\fR with code compiled with the default \fB\-fno\-f2c\fR | |
895 calling conventions as, calling \f(CW\*(C`COMPLEX\*(C'\fR or default \f(CW\*(C`REAL\*(C'\fR | |
896 functions between program parts which were compiled with different | |
897 calling conventions will break at execution time. | |
898 .Sp | |
899 \&\fICaution:\fR This will break code which passes intrinsic functions | |
900 of type default \f(CW\*(C`REAL\*(C'\fR or \f(CW\*(C`COMPLEX\*(C'\fR as actual arguments, as | |
901 the library implementations use the \fB\-fno\-f2c\fR calling conventions. | |
902 .IP "\fB\-fno\-underscoring\fR" 4 | |
903 .IX Item "-fno-underscoring" | |
904 Do not transform names of entities specified in the Fortran | |
905 source file by appending underscores to them. | |
906 .Sp | |
907 With \fB\-funderscoring\fR in effect, \s-1GNU\s0 Fortran appends one | |
908 underscore to external names with no underscores. This is done to ensure | |
909 compatibility with code produced by many \s-1UNIX\s0 Fortran compilers. | |
910 .Sp | |
911 \&\fICaution\fR: The default behavior of \s-1GNU\s0 Fortran is | |
912 incompatible with \fBf2c\fR and \fBg77\fR, please use the | |
913 \&\fB\-ff2c\fR option if you want object files compiled with | |
914 \&\s-1GNU\s0 Fortran to be compatible with object code created with these | |
915 tools. | |
916 .Sp | |
917 Use of \fB\-fno\-underscoring\fR is not recommended unless you are | |
918 experimenting with issues such as integration of \s-1GNU\s0 Fortran into | |
919 existing system environments (vis\-@`{a}\-vis existing libraries, tools, | |
920 and so on). | |
921 .Sp | |
922 For example, with \fB\-funderscoring\fR, and assuming other defaults like | |
923 \&\fB\-fcase\-lower\fR and that \f(CW\*(C`j()\*(C'\fR and \f(CW\*(C`max_count()\*(C'\fR are | |
924 external functions while \f(CW\*(C`my_var\*(C'\fR and \f(CW\*(C`lvar\*(C'\fR are local variables, | |
925 a statement like | |
926 .Sp | |
927 .Vb 1 | |
928 \& I = J() + MAX_COUNT (MY_VAR, LVAR) | |
929 .Ve | |
930 .Sp | |
931 is implemented as something akin to: | |
932 .Sp | |
933 .Vb 1 | |
934 \& i = j_() + max_count_\|_(&my_var_\|_, &lvar); | |
935 .Ve | |
936 .Sp | |
937 With \fB\-fno\-underscoring\fR, the same statement is implemented as: | |
938 .Sp | |
939 .Vb 1 | |
940 \& i = j() + max_count(&my_var, &lvar); | |
941 .Ve | |
942 .Sp | |
943 Use of \fB\-fno\-underscoring\fR allows direct specification of | |
944 user-defined names while debugging and when interfacing \s-1GNU\s0 Fortran | |
945 code with other languages. | |
946 .Sp | |
947 Note that just because the names match does \fInot\fR mean that the | |
948 interface implemented by \s-1GNU\s0 Fortran for an external name matches the | |
949 interface implemented by some other language for that same name. | |
950 That is, getting code produced by \s-1GNU\s0 Fortran to link to code produced | |
951 by some other compiler using this or any other method can be only a | |
952 small part of the overall solution\-\-\-getting the code generated by | |
953 both compilers to agree on issues other than naming can require | |
954 significant effort, and, unlike naming disagreements, linkers normally | |
955 cannot detect disagreements in these other areas. | |
956 .Sp | |
957 Also, note that with \fB\-fno\-underscoring\fR, the lack of appended | |
958 underscores introduces the very real possibility that a user-defined | |
959 external name will conflict with a name in a system library, which | |
960 could make finding unresolved-reference bugs quite difficult in some | |
961 cases\-\-\-they might occur at program run time, and show up only as | |
962 buggy behavior at run time. | |
963 .Sp | |
964 In future versions of \s-1GNU\s0 Fortran we hope to improve naming and linking | |
965 issues so that debugging always involves using the names as they appear | |
966 in the source, even if the names as seen by the linker are mangled to | |
967 prevent accidental linking between procedures with incompatible | |
968 interfaces. | |
969 .IP "\fB\-fsecond\-underscore\fR" 4 | |
970 .IX Item "-fsecond-underscore" | |
971 By default, \s-1GNU\s0 Fortran appends an underscore to external | |
972 names. If this option is used \s-1GNU\s0 Fortran appends two | |
973 underscores to names with underscores and one underscore to external names | |
974 with no underscores. \s-1GNU\s0 Fortran also appends two underscores to | |
975 internal names with underscores to avoid naming collisions with external | |
976 names. | |
977 .Sp | |
978 This option has no effect if \fB\-fno\-underscoring\fR is | |
979 in effect. It is implied by the \fB\-ff2c\fR option. | |
980 .Sp | |
981 Otherwise, with this option, an external name such as \f(CW\*(C`MAX_COUNT\*(C'\fR | |
982 is implemented as a reference to the link-time external symbol | |
983 \&\f(CW\*(C`max_count_\|_\*(C'\fR, instead of \f(CW\*(C`max_count_\*(C'\fR. This is required | |
984 for compatibility with \fBg77\fR and \fBf2c\fR, and is implied | |
985 by use of the \fB\-ff2c\fR option. | |
986 .IP "\fB\-fbounds\-check\fR" 4 | |
987 .IX Item "-fbounds-check" | |
988 Enable generation of run-time checks for array subscripts | |
989 and against the declared minimum and maximum values. It also | |
990 checks array indices for assumed and deferred | |
991 shape arrays against the actual allocated bounds and ensures that all string | |
992 lengths are equal for character array constructors without an explicit | |
993 typespec. | |
994 .Sp | |
995 Some checks require that \fB\-fbounds\-check\fR is set for | |
996 the compilation of the main program. | |
997 .Sp | |
998 Note: In the future this may also include other forms of checking, e.g., | |
999 checking substring references. | |
1000 .IP "\fBfcheck-array-temporaries\fR" 4 | |
1001 .IX Item "fcheck-array-temporaries" | |
1002 Warns at run time when for passing an actual argument a temporary array | |
1003 had to be generated. The information generated by this warning is | |
1004 sometimes useful in optimization, in order to avoid such temporaries. | |
1005 .Sp | |
1006 Note: The warning is only printed once per location. | |
1007 .IP "\fB\-fmax\-array\-constructor=\fR\fIn\fR" 4 | |
1008 .IX Item "-fmax-array-constructor=n" | |
1009 This option can be used to increase the upper limit permitted in | |
1010 array constructors. The code below requires this option to expand | |
1011 the array at compile time. | |
1012 .Sp | |
1013 .Vb 7 | |
1014 \& C<program test> | |
1015 \& C<implicit none> | |
1016 \& C<integer j> | |
1017 \& C<integer, parameter :: n = 100000> | |
1018 \& C<integer, parameter :: i(n) = (/ (2*j, j = 1, n) /)> | |
1019 \& C<print \*(Aq(10(I0,1X))\*(Aq, i> | |
1020 \& C<end program test> | |
1021 .Ve | |
1022 .Sp | |
1023 \&\fICaution: This option can lead to long compile times and excessively | |
1024 large object files.\fR | |
1025 .Sp | |
1026 The default value for \fIn\fR is 65535. | |
1027 .IP "\fB\-fmax\-stack\-var\-size=\fR\fIn\fR" 4 | |
1028 .IX Item "-fmax-stack-var-size=n" | |
1029 This option specifies the size in bytes of the largest array that will be put | |
1030 on the stack; if the size is exceeded static memory is used (except in | |
1031 procedures marked as \s-1RECURSIVE\s0). Use the option \fB\-frecursive\fR to | |
1032 allow for recursive procedures which do not have a \s-1RECURSIVE\s0 attribute or | |
1033 for parallel programs. Use \fB\-fno\-automatic\fR to never use the stack. | |
1034 .Sp | |
1035 This option currently only affects local arrays declared with constant | |
1036 bounds, and may not apply to all character variables. | |
1037 Future versions of \s-1GNU\s0 Fortran may improve this behavior. | |
1038 .Sp | |
1039 The default value for \fIn\fR is 32768. | |
1040 .IP "\fB\-fpack\-derived\fR" 4 | |
1041 .IX Item "-fpack-derived" | |
1042 This option tells \s-1GNU\s0 Fortran to pack derived type members as closely as | |
1043 possible. Code compiled with this option is likely to be incompatible | |
1044 with code compiled without this option, and may execute slower. | |
1045 .IP "\fB\-frepack\-arrays\fR" 4 | |
1046 .IX Item "-frepack-arrays" | |
1047 In some circumstances \s-1GNU\s0 Fortran may pass assumed shape array | |
1048 sections via a descriptor describing a noncontiguous area of memory. | |
1049 This option adds code to the function prologue to repack the data into | |
1050 a contiguous block at runtime. | |
1051 .Sp | |
1052 This should result in faster accesses to the array. However it can introduce | |
1053 significant overhead to the function call, especially when the passed data | |
1054 is noncontiguous. | |
1055 .IP "\fB\-fshort\-enums\fR" 4 | |
1056 .IX Item "-fshort-enums" | |
1057 This option is provided for interoperability with C code that was | |
1058 compiled with the \fB\-fshort\-enums\fR option. It will make | |
1059 \&\s-1GNU\s0 Fortran choose the smallest \f(CW\*(C`INTEGER\*(C'\fR kind a given | |
1060 enumerator set will fit in, and give all its enumerators this kind. | |
1061 .IP "\fB\-fexternal\-blas\fR" 4 | |
1062 .IX Item "-fexternal-blas" | |
1063 This option will make \fBgfortran\fR generate calls to \s-1BLAS\s0 functions | |
1064 for some matrix operations like \f(CW\*(C`MATMUL\*(C'\fR, instead of using our own | |
1065 algorithms, if the size of the matrices involved is larger than a given | |
1066 limit (see \fB\-fblas\-matmul\-limit\fR). This may be profitable if an | |
1067 optimized vendor \s-1BLAS\s0 library is available. The \s-1BLAS\s0 library will have | |
1068 to be specified at link time. | |
1069 .IP "\fB\-fblas\-matmul\-limit=\fR\fIn\fR" 4 | |
1070 .IX Item "-fblas-matmul-limit=n" | |
1071 Only significant when \fB\-fexternal\-blas\fR is in effect. | |
1072 Matrix multiplication of matrices with size larger than (or equal to) \fIn\fR | |
1073 will be performed by calls to \s-1BLAS\s0 functions, while others will be | |
1074 handled by \fBgfortran\fR internal algorithms. If the matrices | |
1075 involved are not square, the size comparison is performed using the | |
1076 geometric mean of the dimensions of the argument and result matrices. | |
1077 .Sp | |
1078 The default value for \fIn\fR is 30. | |
1079 .IP "\fB\-frecursive\fR" 4 | |
1080 .IX Item "-frecursive" | |
1081 Allow indirect recursion by forcing all local arrays to be allocated | |
1082 on the stack. This flag cannot be used together with | |
1083 \&\fB\-fmax\-stack\-var\-size=\fR or \fB\-fno\-automatic\fR. | |
1084 .IP "\fB\-finit\-local\-zero\fR" 4 | |
1085 .IX Item "-finit-local-zero" | |
1086 .PD 0 | |
1087 .IP "\fB\-finit\-integer=\fR\fIn\fR" 4 | |
1088 .IX Item "-finit-integer=n" | |
1089 .IP "\fB\-finit\-real=\fR\fI<zero|inf|\-inf|nan>\fR\fB \fR" 4 | |
1090 .IX Item "-finit-real=<zero|inf|-inf|nan> " | |
1091 .IP "\fB\-finit\-logical=\fR\fI<true|false>\fR" 4 | |
1092 .IX Item "-finit-logical=<true|false>" | |
1093 .IP "\fB\-finit\-character=\fR\fIn\fR" 4 | |
1094 .IX Item "-finit-character=n" | |
1095 .PD | |
1096 The \fB\-finit\-local\-zero\fR option instructs the compiler to | |
1097 initialize local \f(CW\*(C`INTEGER\*(C'\fR, \f(CW\*(C`REAL\*(C'\fR, and \f(CW\*(C`COMPLEX\*(C'\fR | |
1098 variables to zero, \f(CW\*(C`LOGICAL\*(C'\fR variables to false, and | |
1099 \&\f(CW\*(C`CHARACTER\*(C'\fR variables to a string of null bytes. Finer-grained | |
1100 initialization options are provided by the | |
1101 \&\fB\-finit\-integer=\fR\fIn\fR, | |
1102 \&\fB\-finit\-real=\fR\fI<zero|inf|\-inf|nan>\fR (which also initializes | |
1103 the real and imaginary parts of local \f(CW\*(C`COMPLEX\*(C'\fR variables), | |
1104 \&\fB\-finit\-logical=\fR\fI<true|false>\fR, and | |
1105 \&\fB\-finit\-character=\fR\fIn\fR (where \fIn\fR is an \s-1ASCII\s0 character | |
1106 value) options. These options do not initialize components of derived | |
1107 type variables, nor do they initialize variables that appear in an | |
1108 \&\f(CW\*(C`EQUIVALENCE\*(C'\fR statement. (This limitation may be removed in | |
1109 future releases). | |
1110 .Sp | |
1111 Note that the \fB\-finit\-real=nan\fR option initializes \f(CW\*(C`REAL\*(C'\fR | |
1112 and \f(CW\*(C`COMPLEX\*(C'\fR variables with a quiet NaN. | |
1113 .IP "\fB\-falign\-commons\fR" 4 | |
1114 .IX Item "-falign-commons" | |
1115 By default, \fBgfortran\fR enforces proper alignment of all variables in a | |
1116 \&\s-1COMMON\s0 block by padding them as needed. On certain platforms this is mandatory, | |
1117 on others it increases performance. If a \s-1COMMON\s0 block is not declared with | |
1118 consistent data types everywhere, this padding can cause trouble, and | |
1119 \&\fB\-fno\-align\-commons\fR can be used to disable automatic alignment. The | |
1120 same form of this option should be used for all files that share a \s-1COMMON\s0 block. | |
1121 To avoid potential alignment issues in \s-1COMMON\s0 blocks, it is recommended to order | |
1122 objects from largests to smallest. | |
1123 .SH "ENVIRONMENT" | |
1124 .IX Header "ENVIRONMENT" | |
1125 The \fBgfortran\fR compiler currently does not make use of any environment | |
1126 variables to control its operation above and beyond those | |
1127 that affect the operation of \fBgcc\fR. | |
1128 .SH "BUGS" | |
1129 .IX Header "BUGS" | |
1130 For instructions on reporting bugs, see | |
1131 <\fBhttp://gcc.gnu.org/bugs.html\fR>. | |
1132 .SH "SEE ALSO" | |
1133 .IX Header "SEE ALSO" | |
1134 \&\fIgpl\fR\|(7), \fIgfdl\fR\|(7), \fIfsf\-funding\fR\|(7), | |
1135 \&\fIcpp\fR\|(1), \fIgcov\fR\|(1), \fIgcc\fR\|(1), \fIas\fR\|(1), \fIld\fR\|(1), \fIgdb\fR\|(1), \fIadb\fR\|(1), \fIdbx\fR\|(1), \fIsdb\fR\|(1) | |
1136 and the Info entries for \fIgcc\fR, \fIcpp\fR, \fIgfortran\fR, \fIas\fR, | |
1137 \&\fIld\fR, \fIbinutils\fR and \fIgdb\fR. | |
1138 .SH "AUTHOR" | |
1139 .IX Header "AUTHOR" | |
1140 See the Info entry for \fBgfortran\fR for contributors to \s-1GCC\s0 and | |
1141 \&\s-1GNU\s0 Fortran. | |
1142 .SH "COPYRIGHT" | |
1143 .IX Header "COPYRIGHT" | |
1144 Copyright (c) 2004, 2005, 2006, 2007, 2008 | |
1145 Free Software Foundation, Inc. | |
1146 .PP | |
1147 Permission is granted to copy, distribute and/or modify this document | |
1148 under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.2 or | |
1149 any later version published by the Free Software Foundation; with the | |
1150 Invariant Sections being \*(L"Funding Free Software\*(R", the Front-Cover | |
1151 Texts being (a) (see below), and with the Back-Cover Texts being (b) | |
1152 (see below). A copy of the license is included in the \fIgfdl\fR\|(7) man page. | |
1153 .PP | |
1154 (a) The \s-1FSF\s0's Front-Cover Text is: | |
1155 .PP | |
1156 .Vb 1 | |
1157 \& A GNU Manual | |
1158 .Ve | |
1159 .PP | |
1160 (b) The \s-1FSF\s0's Back-Cover Text is: | |
1161 .PP | |
1162 .Vb 3 | |
1163 \& You have freedom to copy and modify this GNU Manual, like GNU | |
1164 \& software. Copies published by the Free Software Foundation raise | |
1165 \& funds for GNU development. | |
1166 .Ve |