1 /* bad.def -- Public #include File (module.h template V1.0)
2 Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
3 Contributed by James Craig Burley.
5 This file is part of GNU Fortran.
7 GNU Fortran is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
12 GNU Fortran is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GNU Fortran; see the file COPYING. If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
28 #define INFORM FFEBAD_severityINFORMATIONAL
29 #define TRIVIAL FFEBAD_severityTRIVIAL
30 #define WARN FFEBAD_severityWARNING
31 #define PECULIAR FFEBAD_severityPECULIAR
32 #define FATAL FFEBAD_severityFATAL
33 #define WEIRD FFEBAD_severityWEIRD
34 #define SEVERE FFEBAD_severitySEVERE
35 #define DISASTER FFEBAD_severityDISASTER
37 FFEBAD_MSG (FFEBAD_MISSING_FIRST_BINARY_OPERAND, FATAL,
38 "Missing first operand for binary operator at %0")
39 FFEBAD_MSG (FFEBAD_NULL_CHAR_CONST, WARN,
40 "Zero-length character constant at %0")
41 FFEBAD_MSG (FFEBAD_INVALID_TOKEN_IN_EXPRESSION, FATAL,
42 "Invalid token at %0 in expression or subexpression at %1")
43 FFEBAD_MSG (FFEBAD_MISSING_OPERAND_FOR_OPERATOR, FATAL,
44 "Missing operand for operator at %1 at end of expression at %0")
45 FFEBAD_MSG (FFEBAD_LABEL_ALREADY_DEFINED, FATAL,
46 "Label %A already defined at %1 when redefined at %0")
47 FFEBAD_MSG (FFEBAD_UNRECOGNIZED_CHARACTER, FATAL,
48 "Unrecognized character at %0 [info -f g77 M LEX]")
49 FFEBAD_MSG (FFEBAD_LABEL_WITHOUT_STMT, WARN,
50 "Label definition %A at %0 on empty statement (as of %1)")
51 FFEBAD_MSG (FFEBAD_EXTRA_LABEL_DEF, FATAL,
52 LONG("Extra label definition %A at %0 -- perhaps previous label definition %B at %1 should have CONTINUE statement?")
53 SHORT("Extra label definition %A at %0 following label definition %B at %1"))
54 FFEBAD_MSG (FFEBAD_FIRST_CHAR_INVALID, FATAL,
55 "Invalid first character at %0 [info -f g77 M LEX]")
56 FFEBAD_MSG (FFEBAD_LINE_TOO_LONG, FATAL,
57 "Line too long as of %0 [info -f g77 M LEX]")
58 FFEBAD_MSG (FFEBAD_LABEL_FIELD_NOT_NUMERIC, FATAL,
59 "Non-numeric character at %0 in label field [info -f g77 M LEX]")
60 FFEBAD_MSG (FFEBAD_LABEL_NUMBER_INVALID, FATAL,
61 "Label number at %0 not in range 1-99999")
62 FFEBAD_MSG (FFEBAD_NON_ANSI_COMMENT, WARN,
63 "At %0, '!' and '/*' are not valid comment delimiters")
64 FFEBAD_MSG (FFEBAD_NON_ANSI_CONTINUATION_COLUMN, WARN,
65 "Continuation indicator at %0 must appear in column 6 [info -f g77 M LEX]")
66 FFEBAD_MSG (FFEBAD_LABEL_ON_CONTINUATION, FATAL,
67 "Label at %0 invalid with continuation line indicator at %1 [info -f g77 M LEX]")
68 FFEBAD_MSG (FFEBAD_INVALID_CONTINUATION, FATAL,
69 LONG("Continuation indicator at %0 invalid on first non-comment line of file or following END or INCLUDE [info -f g77 M LEX]")
70 SHORT("Continuation indicator at %0 invalid here [info -f g77 M LEX]"))
71 FFEBAD_MSG (FFEBAD_NO_CLOSING_APOSTROPHE, FATAL,
72 "Character constant at %0 has no closing apostrophe at %1")
73 FFEBAD_MSG (FFEBAD_NOT_ENOUGH_HOLLERITH_CHARS, FATAL,
74 "Hollerith constant at %0 specified %A more characters than are present as of %1")
75 FFEBAD_MSG (FFEBAD_MISSING_CLOSE_PAREN, FATAL,
76 "Missing close parenthese at %0 needed to match open parenthese at %1")
77 FFEBAD_MSG (FFEBAD_INTEGER_TOO_LARGE, FATAL,
78 "Integer at %0 too large")
79 FFEBAD_MSG (FFEBAD_BAD_MAGICAL, WARN,
80 LONG("Integer at %0 too large except as negative number (preceded by unary minus sign)")
81 SHORT("Non-negative integer at %0 too large"))
82 FFEBAD_MSG (FFEBAD_BAD_MAGICAL_PRECEDENCE, WARN,
83 LONG("Integer at %0 too large; even though preceded by unary minus sign at %1, subsequent operator at %2 has precedence over unary minus -- enclose unary minus sign and integer in parentheses to force precedence")
84 SHORT("Integer at %0 too large (%2 has precedence over %1)"))
85 FFEBAD_MSG (FFEBAD_BAD_MAGICAL_BINARY, WARN,
86 LONG("Integer at %0 too large; even though preceded by minus sign at %1, because minus sign is a binary, not unary, operator -- insert plus sign before minus sign to change it to a unary minus sign")
87 SHORT("Integer at %0 too large (needs unary, not binary, minus at %1)"))
88 FFEBAD_MSG (FFEBAD_BAD_MAGICAL_PRECEDENCE_BINARY, WARN,
89 LONG("Integer at %0 too large; even though preceded by minus sign at %1, subsequent operator at %2 has precedence over minus, and that minus sign should be a unary minus rather than a binary minus -- insert plus sign before minus sign to change it to a unary minus sign, and enclose unary minus sign and integer in parentheses to force precedence")
90 SHORT("Integer at %0 too large (%2 has precedence over %1, which needs to be unary, not binary, minus)"))
91 FFEBAD_MSG (FFEBAD_IGNORING_PERIOD, FATAL,
92 "Period at %0 not followed by digits for floating-point number or by `NOT.', `TRUE.', or `FALSE.'")
93 FFEBAD_MSG (FFEBAD_INSERTING_PERIOD, FATAL,
94 "Missing close-period between `.%A' at %0 and %1")
95 FFEBAD_MSG (FFEBAD_INVALID_EXPONENT, FATAL,
96 "Invalid exponent at %0 for real constant at %1; nondigit `%A' in exponent field")
97 FFEBAD_MSG (FFEBAD_MISSING_EXPONENT_VALUE, FATAL,
98 "Missing value at %1 for real-number exponent at %0")
99 FFEBAD_MSG (FFEBAD_MISSING_BINARY_OPERATOR, FATAL,
100 "Expected binary operator between expressions at %0 and at %1")
101 FFEBAD_MSG (FFEBAD_INVALID_DOTDOT, FATAL,
102 LONG("Period at %0 not followed by valid keyword forming a valid binary operator; `.%A.' is not a valid binary operator")
103 SHORT("`.%A.' at %0 not a binary operator"))
104 FFEBAD_MSG (FFEBAD_QUOTE_MISSES_DIGITS, FATAL,
105 LONG("Double-quote at %0 not followed by a string of valid octal digits at %1")
106 SHORT("Invalid octal constant at %0"))
107 FFEBAD_MSG (FFEBAD_INVALID_BINARY_DIGIT, FATAL,
108 LONG("Invalid binary digit(s) found in string of digits at %0")
109 SHORT("Invalid binary constant at %0"))
110 FFEBAD_MSG (FFEBAD_INVALID_HEX_DIGIT, FATAL,
111 LONG("Invalid hexadecimal digit(s) found in string of digits at %0")
112 SHORT("Invalid hexadecimal constant at %0"))
113 FFEBAD_MSG (FFEBAD_INVALID_OCTAL_DIGIT, FATAL,
114 LONG("Invalid octal digit(s) found in string of digits at %0")
115 SHORT("Invalid octal constant at %0"))
116 FFEBAD_MSG (FFEBAD_INVALID_RADIX_SPECIFIER, FATAL,
117 LONG("Invalid radix specifier `%A' at %0 for typeless constant at %1")
118 SHORT("Invalid typeless constant at %1"))
119 FFEBAD_MSG (FFEBAD_INVALID_TYPELESS_BINARY_DIGIT, FATAL,
120 LONG("Invalid binary digit(s) found in string of digits at %0")
121 SHORT("Invalid binary constant at %0"))
122 FFEBAD_MSG (FFEBAD_INVALID_TYPELESS_OCTAL_DIGIT, FATAL,
123 LONG("Invalid octal digit(s) found in string of digits at %0")
124 SHORT("Invalid octal constant at %0"))
125 FFEBAD_MSG (FFEBAD_INVALID_TYPELESS_HEX_DIGIT, FATAL,
126 LONG("Invalid hexadecimal digit(s) found in string of digits at %0")
127 SHORT("Invalid hexadecimal constant at %0"))
128 FFEBAD_MSG (FFEBAD_INVALID_COMPLEX_PART, FATAL,
129 LONG("%A part of complex constant at %0 must be a real or integer constant -- otherwise use CMPLX() or COMPLEX() in place of ()")
130 SHORT("%A part of complex constant at %0 not a real or integer constant"))
131 FFEBAD_MSG (FFEBAD_INVALID_PERCENT, FATAL,
132 LONG("Invalid keyword `%%%A' at %0 in this context")
133 SHORT("Invalid keyword `%%%A' at %0"))
134 FFEBAD_MSG (FFEBAD_NULL_EXPRESSION, FATAL,
135 LONG("Null expression between %0 and %1 invalid in this context")
136 SHORT("Invalid null expression between %0 and %1"))
137 FFEBAD_MSG (FFEBAD_CONCAT_ARGS_TYPE, FATAL,
138 LONG("Concatenation operator at %0 must operate on two subexpressions of character type, but neither subexpression at %1 or %2 is of character type")
139 SHORT("Invalid operands at %1 and %2 for concatenation operator at %0"))
140 FFEBAD_MSG (FFEBAD_CONCAT_ARG_TYPE, FATAL,
141 LONG("Concatenation operator at %0 must operate on two subexpressions of character type, but the subexpression at %1 is not of character type")
142 SHORT("Invalid operand at %1 for concatenation operator at %0"))
143 FFEBAD_MSG (FFEBAD_CONCAT_ARG_KIND, FATAL,
144 LONG("Concatenation operator at %0 must operate on two scalar (not array) subexpressions, two function invocations returning character scalars, or a combination of both -- but the subexpression at %1 is %A")
145 SHORT("Invalid operand (is %A) at %1 for concatenation operator at %0"))
146 FFEBAD_MSG (FFEBAD_MATH_ARGS_TYPE, FATAL,
147 LONG("Arithmetic operator at %0 must operate on two subexpressions of arithmetic type, but neither subexpression at %1 or %2 is of arithmetic type")
148 SHORT("Invalid operands at %1 and %2 for arithmetic operator at %0"))
149 FFEBAD_MSG (FFEBAD_MATH_ARG_TYPE, FATAL,
150 LONG("Arithmetic operator at %0 must operate on two subexpressions of arithmetic type, but the subexpression at %1 is not of arithmetic type")
151 SHORT("Invalid operand at %1 for arithmetic operator at %0"))
152 FFEBAD_MSG (FFEBAD_MATH_ARG_KIND, FATAL,
153 LONG("Arithmetic operator at %0 must operate on two scalar (not array) subexpressions, two function invocations returning arithmetic scalars, or a combination of both -- but the subexpression at %1 is %A")
154 SHORT("Invalid operand (is %A) at %1 for arithmetic operator at %0"))
155 FFEBAD_MSG (FFEBAD_NO_CLOSING_QUOTE, FATAL,
156 LONG("Character constant at %0 has no closing quote at %1 [info -f g77 M LEX]")
157 SHORT("Unterminated character constant at %0 [info -f g77 M LEX]"))
158 FFEBAD_MSG (FFEBAD_BAD_CHAR_CONTINUE, FATAL,
159 LONG("Continuation line at %0 must have initial `&' since it continues a character context [info -f g77 M LEX]")
160 SHORT("Missing initial `&' on continuation line at %0 [info -f g77 M LEX]"))
161 FFEBAD_MSG (FFEBAD_BAD_LEXTOK_CONTINUE, FATAL,
162 LONG("Continuation line at %0 must have initial `&' since it continues a split lexical token [info -f g77 M LEX]")
163 SHORT("Missing initial `&' on continuation line at %0 [info -f g77 M LEX]"))
164 FFEBAD_MSG (FFEBAD_BAD_FREE_CONTINUE, FATAL,
165 LONG("Continuation line at %0 invalid because it consists only of a single `&' as the only nonblank character")
166 SHORT("Invalid continuation line at %0"))
167 FFEBAD_MSG (FFEBAD_STMT_BEGINS_BAD, FATAL,
168 LONG("Statement at %0 begins with invalid token [info -f g77 M LEX]")
169 SHORT("Invalid statement at %0 [info -f g77 M LEX]"))
170 FFEBAD_MSG (FFEBAD_SEMICOLON, FATAL,
171 "Semicolon at %0 is an invalid token")
172 FFEBAD_MSG (FFEBAD_UNREC_STMT, FATAL,
173 LONG("Unrecognized statement name at %0 and invalid form for assignment or statement-function definition at %1")
174 SHORT("Invalid statement at %0"))
175 FFEBAD_MSG (FFEBAD_INVALID_STMT_FORM, FATAL,
176 LONG("Invalid form for %A statement at %0")
177 SHORT("Invalid %A statement at %0"))
178 FFEBAD_MSG (FFEBAD_INVALID_HOLL_IN_STMT, FATAL,
179 LONG("Invalid use of hollerith constant in statement at %0 -- enclose the constant in parentheses (for example, change BACKSPACE 2HAB to BACKSPACE (2HAB))")
180 SHORT("Enclose hollerith constant in statement at %0 in parentheses"))
181 FFEBAD_MSG (FFEBAD_FORMAT_EXTRA_COMMA, FATAL,
182 "Extraneous comma in FORMAT statement at %0")
183 FFEBAD_MSG (FFEBAD_FORMAT_MISSING_COMMA, WARN,
184 "Missing comma in FORMAT statement at %0")
185 FFEBAD_MSG (FFEBAD_FORMAT_SPURIOUS_SIGN, FATAL,
186 "Spurious sign in FORMAT statement at %0")
187 FFEBAD_MSG (FFEBAD_FORMAT_SPURIOUS_NUMBER, FATAL,
188 "Spurious number in FORMAT statement at %0")
189 FFEBAD_MSG (FFEBAD_FORMAT_TEXT_IN_NUMBER, FATAL,
190 "Spurious text trailing number in FORMAT statement at %0")
191 FFEBAD_MSG (FFEBAD_FORMAT_P_NOCOMMA, FATAL,
192 LONG("nP control edit descriptor not followed by comma but followed by edit descriptor at %0 other than D, E, EN, F, or G")
193 SHORT("Invalid edit descriptor at %0 following nP control edit descriptor"))
194 FFEBAD_MSG (FFEBAD_FORMAT_BAD_SPEC, FATAL,
195 "Unrecognized FORMAT specifier at %0")
196 FFEBAD_MSG (FFEBAD_FORMAT_BAD_I_SPEC, FATAL,
197 LONG("Invalid I specifier in FORMAT statement at %0 -- correct form: [r]Iw.[m]")
198 SHORT("Invalid I specifier in FORMAT statement at %0"))
199 FFEBAD_MSG (FFEBAD_FORMAT_BAD_B_SPEC, FATAL,
200 LONG("Invalid B specifier in FORMAT statement at %0 -- correct form: [r]Bw.[m]")
201 SHORT("Invalid B specifier in FORMAT statement at %0"))
202 FFEBAD_MSG (FFEBAD_FORMAT_BAD_O_SPEC, FATAL,
203 LONG("Invalid O specifier in FORMAT statement at %0 -- correct form: [r]Ow.[m]")
204 SHORT("Invalid O specifier in FORMAT statement at %0"))
205 FFEBAD_MSG (FFEBAD_FORMAT_BAD_Z_SPEC, FATAL,
206 LONG("Invalid Z specifier in FORMAT statement at %0 -- correct form: [r]Zw.[m]")
207 SHORT("Invalid Z specifier in FORMAT statement at %0"))
208 FFEBAD_MSG (FFEBAD_FORMAT_BAD_F_SPEC, FATAL,
209 LONG("Invalid F specifier in FORMAT statement at %0 -- correct form: [r]Fw.d")
210 SHORT("Invalid F specifier in FORMAT statement at %0"))
211 FFEBAD_MSG (FFEBAD_FORMAT_BAD_E_SPEC, FATAL,
212 LONG("Invalid E specifier in FORMAT statement at %0 -- correct form: [r]Ew.d[Ee]")
213 SHORT("Invalid E specifier in FORMAT statement at %0"))
214 FFEBAD_MSG (FFEBAD_FORMAT_BAD_EN_SPEC, FATAL,
215 LONG("Invalid EN specifier in FORMAT statement at %0 -- correct form: [r]ENw.d[Ee]")
216 SHORT("Invalid EN specifier in FORMAT statement at %0"))
217 FFEBAD_MSG (FFEBAD_FORMAT_BAD_G_SPEC, FATAL,
218 LONG("Invalid G specifier in FORMAT statement at %0 -- correct form: [r]Gw.d[Ee]")
219 SHORT("Invalid G specifier in FORMAT statement at %0"))
220 FFEBAD_MSG (FFEBAD_FORMAT_BAD_L_SPEC, FATAL,
221 LONG("Invalid L specifier in FORMAT statement at %0 -- correct form: [r]Lw")
222 SHORT("Invalid L specifier in FORMAT statement at %0"))
223 FFEBAD_MSG (FFEBAD_FORMAT_BAD_A_SPEC, FATAL,
224 LONG("Invalid A specifier in FORMAT statement at %0 -- correct form: [r]A[w]")
225 SHORT("Invalid A specifier in FORMAT statement at %0"))
226 FFEBAD_MSG (FFEBAD_FORMAT_BAD_D_SPEC, FATAL,
227 LONG("Invalid D specifier in FORMAT statement at %0 -- correct form: [r]Dw.d")
228 SHORT("Invalid D specifier in FORMAT statement at %0"))
229 FFEBAD_MSG (FFEBAD_FORMAT_BAD_Q_SPEC, FATAL,
230 LONG("Invalid Q specifier in FORMAT statement at %0 -- correct form: Q")
231 SHORT("Invalid Q specifier in FORMAT statement at %0"))
232 FFEBAD_MSG (FFEBAD_FORMAT_BAD_DOLLAR_SPEC, FATAL,
233 LONG("Invalid $ specifier in FORMAT statement at %0 -- correct form: $")
234 SHORT("Invalid $ specifier in FORMAT statement at %0"))
235 FFEBAD_MSG (FFEBAD_FORMAT_BAD_P_SPEC, FATAL,
236 LONG("Invalid P specifier in FORMAT statement at %0 -- correct form: kP")
237 SHORT("Invalid P specifier in FORMAT statement at %0"))
238 FFEBAD_MSG (FFEBAD_FORMAT_BAD_T_SPEC, FATAL,
239 LONG("Invalid T specifier in FORMAT statement at %0 -- correct form: Tn")
240 SHORT("Invalid T specifier in FORMAT statement at %0"))
241 FFEBAD_MSG (FFEBAD_FORMAT_BAD_TL_SPEC, FATAL,
242 LONG("Invalid TL specifier in FORMAT statement at %0 -- correct form: TLn")
243 SHORT("Invalid TL specifier in FORMAT statement at %0"))
244 FFEBAD_MSG (FFEBAD_FORMAT_BAD_TR_SPEC, FATAL,
245 LONG("Invalid TR specifier in FORMAT statement at %0 -- correct form: TRn")
246 SHORT("Invalid TR specifier in FORMAT statement at %0"))
247 FFEBAD_MSG (FFEBAD_FORMAT_BAD_X_SPEC, FATAL,
248 LONG("Invalid X specifier in FORMAT statement at %0 -- correct form: nX")
249 SHORT("Invalid X specifier in FORMAT statement at %0"))
250 FFEBAD_MSG (FFEBAD_FORMAT_BAD_S_SPEC, FATAL,
251 LONG("Invalid S specifier in FORMAT statement at %0 -- correct form: S")
252 SHORT("Invalid S specifier in FORMAT statement at %0"))
253 FFEBAD_MSG (FFEBAD_FORMAT_BAD_SP_SPEC, FATAL,
254 LONG("Invalid SP specifier in FORMAT statement at %0 -- correct form: SP")
255 SHORT("Invalid SP specifier in FORMAT statement at %0"))
256 FFEBAD_MSG (FFEBAD_FORMAT_BAD_SS_SPEC, FATAL,
257 LONG("Invalid SS specifier in FORMAT statement at %0 -- correct form: SS")
258 SHORT("Invalid SS specifier in FORMAT statement at %0"))
259 FFEBAD_MSG (FFEBAD_FORMAT_BAD_BN_SPEC, FATAL,
260 LONG("Invalid BN specifier in FORMAT statement at %0 -- correct form: BN")
261 SHORT("Invalid BN specifier in FORMAT statement at %0"))
262 FFEBAD_MSG (FFEBAD_FORMAT_BAD_BZ_SPEC, FATAL,
263 LONG("Invalid BZ specifier in FORMAT statement at %0 -- correct form: BZ")
264 SHORT("Invalid BZ specifier in FORMAT statement at %0"))
265 FFEBAD_MSG (FFEBAD_FORMAT_BAD_COLON_SPEC, FATAL,
266 LONG("Invalid : specifier in FORMAT statement at %0 -- correct form: :")
267 SHORT("Invalid : specifier in FORMAT statement at %0"))
268 FFEBAD_MSG (FFEBAD_FORMAT_BAD_H_SPEC, FATAL,
269 LONG("Invalid H specifier in FORMAT statement at %0 -- correct form: nHcharacters !where n is an unsigned decimal constant, and characters !contains exactly n characters (including spaces)")
270 SHORT("Invalid H specifier in FORMAT statement at %0"))
271 FFEBAD_MSG (FFEBAD_FORMAT_MISSING_PAREN, FATAL,
272 "Missing close-parenthese(s) in FORMAT statement at %0")
273 FFEBAD_MSG (FFEBAD_FORMAT_MISSING_DOT, FATAL,
274 "Missing number following period in FORMAT statement at %0")
275 FFEBAD_MSG (FFEBAD_FORMAT_MISSING_EXP, FATAL,
276 "Missing number following `E' in FORMAT statement at %0")
277 FFEBAD_MSG (FFEBAD_FORMAT_EXPR_TOKEN, FATAL,
278 LONG("Invalid token with FORMAT run-time expression at %0 -- use the traditional operators .LT., .LE., .GT., .GE., .EQ., and .NE. in place of the newer tokens <, <=, >, >=, ==, and !=, because > ends an expression within a FORMAT statement")
279 SHORT("Invalid token with FORMAT run-time expression at %0"))
280 FFEBAD_MSG (FFEBAD_TRAILING_COMMA, WARN,
281 "Spurious trailing comma preceding terminator at %0")
282 FFEBAD_MSG (FFEBAD_INTERFACE_ASSIGNMENT, WARN,
283 "At %0, specify OPERATOR instead of ASSIGNMENT for INTERFACE statement not specifying the assignment operator (=)")
284 FFEBAD_MSG (FFEBAD_INTERFACE_OPERATOR, WARN,
285 "At %0, specify ASSIGNMENT instead of OPERATOR for INTERFACE statement specifying the assignment operator (=)")
286 FFEBAD_MSG (FFEBAD_INTERFACE_NONLETTER, FATAL,
287 LONG("Defined operator at %0 contains a nonletter -- must contain only letters A-Z (or a-z)")
288 SHORT("Nonletter in defined operator at %0"))
289 FFEBAD_MSG (FFEBAD_INVALID_TYPEDECL_ATTR, FATAL,
290 LONG("Invalid type-declaration attribute at %0 -- must be one of: DIMENSION(array-spec), EXTERNAL, INTRINSIC, PARAMETER, or SAVE")
291 SHORT("Invalid type-declaration attribute at %0"))
292 FFEBAD_MSG (FFEBAD_INVALID_TYPEDECL_INIT, FATAL,
293 "Cannot specify =initialization-expr at %0 unless `::' appears before list of objects")
294 FFEBAD_MSG (FFEBAD_LABEL_USE_DEF, FATAL,
295 "Reference to label at %1 inconsistent with its definition at %0")
296 FFEBAD_MSG (FFEBAD_LABEL_USE_USE, FATAL,
297 "Reference to label at %1 inconsistent with earlier reference at %0")
298 FFEBAD_MSG (FFEBAD_LABEL_DEF_DO, FATAL,
299 "DO-statement reference to label at %1 follows its definition at %0")
300 FFEBAD_MSG (FFEBAD_LABEL_BLOCK, WARN,
301 "Reference to label at %1 is outside block containing definition at %0")
302 FFEBAD_MSG (FFEBAD_LABEL_DO_BLOCK_DO, FATAL,
303 "DO-statement references to label at %0 and %2 separated by unterminated block starting at %1")
304 FFEBAD_MSG (FFEBAD_LABEL_DO_BLOCK_END, FATAL,
305 "DO-statement reference to label at %0 and label definition at %2 separated by unterminated block starting at %1")
306 FFEBAD_MSG (FFEBAD_INVALID_LABEL_DEF, FATAL,
307 "Label definition at %0 invalid on this kind of statement")
308 FFEBAD_MSG (FFEBAD_ORDER_1, FATAL,
309 "Statement at %0 invalid in this context")
310 FFEBAD_MSG (FFEBAD_ORDER_2, FATAL,
311 "Statement at %0 invalid in context established by statement at %1")
312 FFEBAD_MSG (FFEBAD_CONSTRUCT_NAMED, FATAL,
313 "Statement at %0 must specify construct name specified at %1")
314 FFEBAD_MSG (FFEBAD_CONSTRUCT_NOT_NAMED, FATAL,
315 "Construct name at %0 superfluous, no construct name specified at %1")
316 FFEBAD_MSG (FFEBAD_CONSTRUCT_WRONG_NAME, FATAL,
317 "Construct name at %0 not the same as construct name at %1")
318 FFEBAD_MSG (FFEBAD_CONSTRUCT_NO_DO_NAME, FATAL,
319 "Construct name at %0 does not match construct name for any containing DO constructs")
320 FFEBAD_MSG (FFEBAD_DO_HAD_LABEL, FATAL,
321 "Label definition missing at %0 for DO construct specifying label at %1")
322 FFEBAD_MSG (FFEBAD_AFTER_ELSE, FATAL,
323 "Statement at %0 follows ELSE block for IF construct at %1")
324 FFEBAD_MSG (FFEBAD_FORMAT_NO_LABEL_DEF, FATAL,
325 "No label definition for FORMAT statement at %0")
326 FFEBAD_MSG (FFEBAD_SECOND_ELSE_WHERE, FATAL,
327 "Second occurrence of ELSE WHERE at %0 within WHERE at %1")
328 FFEBAD_MSG (FFEBAD_END_WO, WARN,
329 "END statement at %0 missing `%A' keyword required for internal or module procedure(s) bounded by %1")
330 FFEBAD_MSG (FFEBAD_INVALID_MODULE_PROCEDURE, FATAL,
331 "MODULE PROCEDURE statement at %0 disallowed because INTERFACE at %1 specifies no generic name, operator, or assignment")
332 FFEBAD_MSG (FFEBAD_BLOCKDATA_NOT_NAMED, FATAL,
333 "BLOCK DATA name at %0 superfluous, no name specified at %1")
334 FFEBAD_MSG (FFEBAD_PROGRAM_NOT_NAMED, FATAL,
335 "Program name at %0 superfluous, no PROGRAM statement specified at %1")
336 FFEBAD_MSG (FFEBAD_UNIT_WRONG_NAME, FATAL,
337 "Program unit name at %0 not the same as name at %1")
338 FFEBAD_MSG (FFEBAD_TYPE_WRONG_NAME, FATAL,
339 "Type name at %0 not the same as name at %1")
340 FFEBAD_MSG (FFEBAD_EOF_BEFORE_BLOCK_END, FATAL,
341 "End of source file before end of block started at %0")
342 FFEBAD_MSG (FFEBAD_UNDEF_LABEL, FATAL,
343 "Undefined label, first referenced at %0")
344 FFEBAD_MSG (FFEBAD_CONFLICTING_SAVES, WARN,
345 "SAVE statement or attribute at %1 cannot be specified along with SAVE statement or attribute at %0")
346 FFEBAD_MSG (FFEBAD_CONFLICTING_ACCESSES, FATAL,
347 "PUBLIC or PRIVATE statement at %1 cannot be specified along with PUBLIC or PRIVATE statement at %0")
348 FFEBAD_MSG (FFEBAD_RETURN_IN_MAIN, WARN,
349 "RETURN statement at %0 invalid within a main program unit")
350 FFEBAD_MSG (FFEBAD_ALTRETURN_IN_PROGRAM, FATAL,
351 "Alternate return specifier at %0 invalid within a main program unit")
352 FFEBAD_MSG (FFEBAD_ALTRETURN_IN_FUNCTION, FATAL,
353 "Alternate return specifier at %0 invalid within a function")
354 FFEBAD_MSG (FFEBAD_DERIVTYP_ACCESS, FATAL,
355 "Access specifier or PRIVATE statement at %0 invalid for derived-type definition within other than the specification part of a module")
356 FFEBAD_MSG (FFEBAD_DERIVTYP_ACCESS_FIRST, FATAL,
357 "Access specifier at %0 must immediately follow derived-type statement at %1 with no intervening statements")
358 FFEBAD_MSG (FFEBAD_DERIVTYP_NO_COMPONENTS, FATAL,
359 "No components specified as of %0 for derived-type definition beginning at %1")
360 FFEBAD_MSG (FFEBAD_STRUCT_NO_COMPONENTS, FATAL,
361 "No components specified as of %0 for structure definition beginning at %1")
362 FFEBAD_MSG (FFEBAD_STRUCT_MISSING_NAME, FATAL,
363 "Missing structure name for outer structure definition at %0")
364 FFEBAD_MSG (FFEBAD_STRUCT_IGNORING_FIELD, FATAL,
365 "Field names at %0 for outer structure definition -- specify them in a subsequent RECORD statement instead")
366 FFEBAD_MSG (FFEBAD_STRUCT_MISSING_FIELD, FATAL,
367 "Missing field name(s) for structure definition at %0 within structure definition at %1")
368 FFEBAD_MSG (FFEBAD_MAP_NO_COMPONENTS, FATAL,
369 "No components specified as of %0 for map beginning at %1")
370 FFEBAD_MSG (FFEBAD_UNION_NO_TWO_MAPS, FATAL,
371 "Zero or one maps specified as of %0 for union beginning at %1 -- at least two are required")
372 FFEBAD_MSG (FFEBAD_MISSING_SPECIFIER, FATAL,
373 "Missing %A specifier in statement at %0")
374 FFEBAD_MSG (FFEBAD_NAMELIST_ITEMS, FATAL,
375 "Items in I/O list starting at %0 invalid for namelist-directed I/O")
376 FFEBAD_MSG (FFEBAD_CONFLICTING_SPECS, FATAL,
377 "Conflicting I/O control specifications at %0 and %1")
378 FFEBAD_MSG (FFEBAD_NO_UNIT_SPEC, FATAL,
379 "No UNIT= specifier in I/O control list at %0")
380 FFEBAD_MSG (FFEBAD_MISSING_ADVANCE_SPEC, FATAL,
381 "Specification at %0 requires ADVANCE=`NO' specification in same I/O control list")
382 FFEBAD_MSG (FFEBAD_MISSING_FORMAT_SPEC, FATAL,
383 "Specification at %0 requires explicit FMT= specification in same I/O control list")
384 FFEBAD_MSG (FFEBAD_SPEC_VALUE, FATAL,
385 LONG("Unrecognized value for character constant at %0 -- expecting %A")
386 SHORT("Unrecognized value for character constant at %0"))
387 FFEBAD_MSG (FFEBAD_CASE_SECOND_DEFAULT, FATAL,
388 "Second occurrence of CASE DEFAULT at %0 within SELECT CASE at %1")
389 FFEBAD_MSG (FFEBAD_CASE_DUPLICATE, FATAL,
390 "Duplicate or overlapping case values/ranges at %0 and %1")
391 FFEBAD_MSG (FFEBAD_CASE_TYPE_DISAGREE, FATAL,
392 "Type and/or kind-type parameter disagreement between CASE value or value within range at %0 and SELECT CASE at %1")
393 FFEBAD_MSG (FFEBAD_CASE_LOGICAL_RANGE, FATAL,
394 "Range specification at %0 invalid for CASE statement within logical-type SELECT CASE statement")
395 FFEBAD_MSG (FFEBAD_CASE_BAD_RANGE, FATAL,
396 LONG("Range specification at %0 invalid -- at least one expression must be specified, or use CASE DEFAULT")
397 SHORT("Range specification at %0 invalid"))
398 FFEBAD_MSG (FFEBAD_CASE_RANGE_USELESS, INFORM,
399 LONG("Range specification at %0 useless; first expression greater than second expression in range, so range can never be matched by any selection expression")
400 SHORT("Useless range at %0"))
401 FFEBAD_MSG (FFEBAD_F90, FATAL,
402 "Fortran 90 feature at %0 unsupported")
403 FFEBAD_MSG (FFEBAD_KINDTYPE, FATAL,
404 LONG("Invalid kind at %0 for type at %1 -- unsupported or not permitted")
405 SHORT("Invalid kind at %0 for type at %1"))
406 FFEBAD_MSG (FFEBAD_BAD_IMPLICIT, FATAL,
407 LONG("Cannot establish implicit type for initial letter `%A' at %0 -- already explicitly established or used to set implicit type of some name, or backwards order of letters in letter range")
408 SHORT("Cannot establish implicit type for initial letter `%A' at %0"))
409 FFEBAD_MSG (FFEBAD_SYMERR, FATAL,
410 "Invalid declaration of or reference to symbol `%A' at %0 [initially seen at %1]")
411 FFEBAD_MSG (FFEBAD_LABEL_WRONG_PLACE, FATAL,
412 LONG("Label definition %A (at %0) invalid -- must be in columns 1-5")
413 SHORT("Invalid label definition %A (at %0)"))
414 FFEBAD_MSG (FFEBAD_NULL_ELEMENT, FATAL,
415 "Null element at %0 for array reference at %1")
416 FFEBAD_MSG (FFEBAD_TOO_FEW_ELEMENTS, FATAL,
417 "Too few elements (%A missing) as of %0 for array reference at %1")
418 FFEBAD_MSG (FFEBAD_TOO_MANY_ELEMENTS, FATAL,
419 "Too many elements as of %0 for array reference at %1")
420 FFEBAD_MSG (FFEBAD_MISSING_COLON_IN_SUBSTR, FATAL,
421 "Missing colon as of %0 in substring reference for %1")
422 FFEBAD_MSG (FFEBAD_BAD_SUBSTR, FATAL,
423 "Invalid use at %0 of substring operator on %1")
424 FFEBAD_MSG (FFEBAD_RANGE_SUBSTR, WARN,
425 "Substring begin/end point at %0 out of defined range")
426 FFEBAD_MSG (FFEBAD_RANGE_ARRAY, WARN,
427 "Array element value at %0 out of defined range")
428 FFEBAD_MSG (FFEBAD_EXPR_WRONG, FATAL,
429 "Expression at %0 has incorrect data type or rank for its context")
430 FFEBAD_MSG (FFEBAD_DIV_BY_ZERO, WARN,
431 "Division by 0 (zero) at %0 (IEEE not yet supported)")
432 FFEBAD_MSG (FFEBAD_DO_STEP_ZERO, FATAL,
433 "%A step count known to be 0 (zero) at %0")
434 FFEBAD_MSG (FFEBAD_DO_END_OVERFLOW, WARN,
435 "%A end value plus step count known to overflow at %0")
436 FFEBAD_MSG (FFEBAD_DO_IMP_OVERFLOW, WARN,
437 "%A begin, end, and step-count values known to result in implementation-dependent behavior due to overflow(s) in intermediate calculations at %0")
438 FFEBAD_MSG (FFEBAD_DO_NULL, WARN,
439 "%A begin, end, and step-count values known to result in no iterations at %0")
440 FFEBAD_MSG (FFEBAD_BAD_TYPES, FATAL,
441 "Type disagreement between expressions at %0 and %1")
442 FFEBAD_MSG (FFEBAD_FORMAT_EXPR_SPEC, FATAL,
443 LONG("Run-time expression at %0 in FORMAT statement that does not follow the first executable statement in the program unit -- move the statement")
444 SHORT("FORMAT at %0 with run-time expression must follow first executable statement"))
445 FFEBAD_MSG (FFEBAD_BAD_IMPDO, FATAL,
446 LONG("Unexpected token at %0 in implied-DO construct at %1 -- form of implied-DO is `(item-list,do-var=start,end[,incr])'")
447 SHORT("Unexpected token at %0 in implied-DO construct at %1"))
448 FFEBAD_MSG (FFEBAD_BAD_IMPDCL, FATAL,
449 "No specification for implied-DO iterator `%A' at %0")
450 FFEBAD_MSG (FFEBAD_IMPDO_PAREN, WARN,
451 "Gratuitous parentheses surround implied-DO construct at %0")
452 FFEBAD_MSG (FFEBAD_ZERO_SIZE, FATAL,
453 "Zero-size specification invalid at %0")
454 FFEBAD_MSG (FFEBAD_ZERO_ARRAY, FATAL,
455 "Zero-size array at %0")
456 FFEBAD_MSG (FFEBAD_BAD_COMPLEX, FATAL,
457 "Target machine does not support complex entity of kind specified at %0")
458 FFEBAD_MSG (FFEBAD_BAD_DBLCMPLX, FATAL,
459 "Target machine does not support DOUBLE COMPLEX, specified at %0")
460 FFEBAD_MSG (FFEBAD_BAD_POWER, WARN,
461 "Attempt to raise constant zero to a power at %0")
462 FFEBAD_MSG (FFEBAD_BOOL_ARGS_TYPE, FATAL,
463 LONG("Boolean/logical operator at %0 must operate on two subexpressions of logical type, but neither subexpression at %1 or %2 is of logical type")
464 SHORT("Invalid operands at %1 and %2 for boolean operator at %0"))
465 FFEBAD_MSG (FFEBAD_BOOL_ARG_TYPE, FATAL,
466 LONG("Boolean/logical operator at %0 must operate on two subexpressions of logical type, but the subexpression at %1 is not of logical type")
467 SHORT("Invalid operand at %1 for boolean operator at %0"))
468 FFEBAD_MSG (FFEBAD_BOOL_ARG_KIND, FATAL,
469 LONG("Boolean/logical operator at %0 must operate on two scalar (not array) subexpressions, two function invocations returning logical scalars, or a combination of both -- but the subexpression at %1 is %A")
470 SHORT("Invalid operand (is %A) at %1 for boolean operator at %0"))
471 FFEBAD_MSG (FFEBAD_NOT_ARG_TYPE, FATAL,
472 LONG(".NOT. operator at %0 must operate on subexpression of logical type, but the subexpression at %1 is not of logical type")
473 SHORT("Invalid operand at %1 for .NOT. operator at %0"))
474 FFEBAD_MSG (FFEBAD_NOT_ARG_KIND, FATAL,
475 LONG(".NOT. operator at %0 must operate on scalar subexpressions -- but the subexpression at %1 is %A")
476 SHORT("Invalid operand (is %A) at %1 for .NOT. operator at %0"))
477 FFEBAD_MSG (FFEBAD_EQOP_ARGS_TYPE, FATAL,
478 LONG("Equality operator at %0 must operate on two subexpressions of arithmetic or character type, but neither subexpression at %1 or %2 is of arithmetic or character type")
479 SHORT("Invalid operands at %1 and %2 for equality operator at %0"))
480 FFEBAD_MSG (FFEBAD_EQOP_ARG_TYPE, FATAL,
481 LONG("Equality operator at %0 must operate on two subexpressions of arithmetic or character type, but the subexpression at %1 is not of arithmetic or character type")
482 SHORT("Invalid operand at %1 for equality operator at %0"))
483 FFEBAD_MSG (FFEBAD_EQOP_ARG_KIND, FATAL,
484 LONG("Equality operator at %0 must operate on two scalar (not array) subexpressions, two function invocations returning arithmetic or character scalars, or a combination of both -- but the subexpression at %1 is %A")
485 SHORT("Invalid operand (is %A) at %1 for equality operator at %0"))
486 FFEBAD_MSG (FFEBAD_RELOP_ARGS_TYPE, FATAL,
487 LONG("Relational operator at %0 must operate on two subexpressions of integer, real, or character type, but neither subexpression at %1 or %2 is of integer, real, or character type")
488 SHORT("Invalid operands at %1 and %2 for relational operator at %0"))
489 FFEBAD_MSG (FFEBAD_RELOP_ARG_TYPE, FATAL,
490 LONG("Relational operator at %0 must operate on two subexpressions of integer, real, or character type, but the subexpression at %1 is not of integer, real, or character type")
491 SHORT("Invalid operand at %1 for relational operator at %0"))
492 FFEBAD_MSG (FFEBAD_RELOP_ARG_KIND, FATAL,
493 LONG("Relational operator at %0 must operate on two scalar (not array) subexpressions, two function invocations returning integer, real, or character scalars, or a combination of both -- but the subexpression at %1 is %A")
494 SHORT("Invalid operand (is %A) at %1 for relational operator at %0"))
495 FFEBAD_MSG (FFEBAD_INTRINSIC_REF, FATAL,
496 LONG("Reference to intrinsic `%A' at %0 invalid -- one or more arguments have incorrect type")
497 SHORT("Invalid reference to intrinsic `%A' at %0"))
498 FFEBAD_MSG (FFEBAD_INTRINSIC_TOOFEW, FATAL,
499 LONG("Too few arguments passed to intrinsic `%A' at %0")
500 SHORT("Too few arguments for intrinsic `%A' at %0"))
501 FFEBAD_MSG (FFEBAD_INTRINSIC_TOOMANY, FATAL,
502 LONG("Too many arguments passed to intrinsic `%A' at %0")
503 SHORT("Too many arguments for intrinsic `%A' at %0"))
504 FFEBAD_MSG (FFEBAD_INTRINSIC_DISABLED, FATAL,
505 LONG("Reference to disabled intrinsic `%A' at %0")
506 SHORT("Disabled intrinsic `%A' at %0"))
507 FFEBAD_MSG (FFEBAD_INTRINSIC_IS_SUBR, FATAL,
508 LONG("Reference to intrinsic subroutine `%A' as if it were a function at %0")
509 SHORT("Function reference to intrinsic subroutine `%A' at %0"))
510 FFEBAD_MSG (FFEBAD_INTRINSIC_IS_FUNC, FATAL,
511 LONG("Reference to intrinsic function `%A' as if it were a subroutine at %0")
512 SHORT("Subroutine reference to intrinsic function `%A' at %0"))
513 FFEBAD_MSG (FFEBAD_INTRINSIC_UNIMPL, FATAL,
514 LONG("Reference to unimplemented intrinsic `%A' at %0 -- use EXTERNAL to reference user-written procedure with this name")
515 SHORT("Unimplemented intrinsic `%A' at %0"))
516 FFEBAD_MSG (FFEBAD_INTRINSIC_UNIMPLW, WARN,
517 LONG("Reference to unimplemented intrinsic `%A' at %0 (assumed EXTERNAL)")
518 SHORT("Unimplemented intrinsic `%A' at %0 (assumed EXTERNAL)"))
519 FFEBAD_MSG (FFEBAD_INTRINSIC_AMBIG, FATAL,
520 "Reference to generic intrinsic `%A' at %0 could be to form %B or %C")
521 FFEBAD_MSG (FFEBAD_INTRINSIC_CMPAMBIG, FATAL,
522 "Ambiguous use of intrinsic `%A' at %0 [info -f g77 M CMPAMBIG]")
523 FFEBAD_MSG (FFEBAD_INTRINSIC_EXPIMP, WARN,
524 "Intrinsic `%A' referenced %Bly at %0, %Cly at %1 [info -f g77 M EXPIMP]")
525 FFEBAD_MSG (FFEBAD_INTRINSIC_GLOBAL, WARN,
526 "Same name `%A' used for %B at %0 and %C at %1 [info -f g77 M INTGLOB]")
527 FFEBAD_MSG (FFEBAD_INTRINSIC_TYPE, WARN,
528 "Explicit type declaration for intrinsic `%A' disagrees with invocation at %0")
529 FFEBAD_MSG (FFEBAD_OPEN_INCLUDE, FATAL,
530 "Unable to open INCLUDE file `%A' at %0")
531 FFEBAD_MSG (FFEBAD_DOITER, FATAL,
532 LONG("Attempt to modify variable `%A' at %0 while it serves as DO-loop iterator at %1")
533 SHORT("Modification of DO-loop iterator `%A' at %0"))
534 FFEBAD_MSG (FFEBAD_DOITER_IMPDO, FATAL,
535 LONG("Attempt to modify variable `%A' via item #%B in list at %0 while it serves as implied-DO iterator at %1")
536 SHORT("Modification of DO-loop iterator `%A' at %0"))
537 FFEBAD_MSG (FFEBAD_TOO_MANY_DIMS, FATAL,
538 LONG("Array has too many dimensions, as of dimension specifier at %0")
539 SHORT("Too many dimensions at %0"))
540 FFEBAD_MSG (FFEBAD_NULL_ARGUMENT, FATAL,
541 "Null argument at %0 for statement function reference at %1")
542 FFEBAD_MSG (FFEBAD_NULL_ARGUMENT_W, WARN,
543 "Null argument at %0 for procedure invocation at %1")
544 FFEBAD_MSG (FFEBAD_TOO_FEW_ARGUMENTS, FATAL,
545 "%A too few arguments (starting with dummy argument `%B') as of %0 for statement function reference at %1")
546 FFEBAD_MSG (FFEBAD_TOO_MANY_ARGUMENTS, FATAL,
547 "%A too many arguments as of %0 for statement function reference at %1")
548 FFEBAD_MSG (FFEBAD_ARRAY_AS_SFARG, FATAL,
549 "Array supplied at %1 for dummy argument `%A' in statement function reference at %0")
550 FFEBAD_MSG (FFEBAD_FORMAT_UNSUPPORTED, FATAL,
551 "Unsupported FORMAT specifier at %0")
552 FFEBAD_MSG (FFEBAD_FORMAT_VARIABLE, FATAL,
553 "Variable-expression FORMAT specifier at %0 -- unsupported")
554 FFEBAD_MSG (FFEBAD_OPEN_UNSUPPORTED, FATAL,
555 LONG("Unsupported OPEN control item at %0 -- ACTION=, ASSOCIATEVARIABLE=, BLOCKSIZE=, BUFFERCOUNT=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, DISPOSE=, EXTENDSIZE=, INITIALSIZE=, KEY=, MAXREC=, NOSPANBLOCKS, ORGANIZATION=, PAD=, POSITION=, READONLY=, RECORDTYPE=, SHARED=, and USEROPEN= are not supported")
556 SHORT("Unsupported OPEN control item at %0"))
557 FFEBAD_MSG (FFEBAD_INQUIRE_UNSUPPORTED, FATAL,
558 LONG("Unsupported INQUIRE control item at %0 -- ACTION=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, KEYED=, ORGANIZATION=, PAD=, POSITION=, READ=, READWRITE=, RECORDTYPE=, and WRITE= are not supported")
559 SHORT("Unsupported INQUIRE control item at %0"))
560 FFEBAD_MSG (FFEBAD_READ_UNSUPPORTED, FATAL,
561 LONG("Unsupported READ control item at %0 -- ADVANCE=, EOR=, KEYEQ=, KEYGE=, KEYGT=, KEYID=, NULLS=, and SIZE= are not supported")
562 SHORT("Unsupported READ control item at %0"))
563 FFEBAD_MSG (FFEBAD_WRITE_UNSUPPORTED, FATAL,
564 LONG("Unsupported WRITE control item at %0 -- ADVANCE= and EOR= are not supported")
565 SHORT("Unsupported WRITE control item at %0"))
566 FFEBAD_MSG (FFEBAD_VXT_UNSUPPORTED, FATAL,
567 "Unsupported VXT statement at %0")
568 FFEBAD_MSG (FFEBAD_DATA_REINIT, FATAL,
569 "Attempt to specify second initial value for `%A' at %0")
570 FFEBAD_MSG (FFEBAD_DATA_TOOFEW, FATAL,
571 "Too few initial values in list of initializers for `%A' at %0")
572 FFEBAD_MSG (FFEBAD_DATA_TOOMANY, FATAL,
573 "Too many initial values in list of initializers starting at %0")
574 FFEBAD_MSG (FFEBAD_DATA_RANGE, FATAL,
575 "Array or substring specification for `%A' out of range in statement at %0")
576 FFEBAD_MSG (FFEBAD_DATA_SUBSCRIPT, FATAL,
577 "Array subscript #%B out of range for initialization of `%A' in statement at %0")
578 FFEBAD_MSG (FFEBAD_DATA_ZERO, FATAL,
579 "Implied do-loop step count of 0 (zero) for iteration variable `%A' in statement at %0")
580 FFEBAD_MSG (FFEBAD_DATA_EMPTY, FATAL,
581 "Implied do-loop iteration count of 0 (zero) for iteration variable `%A' in statement at %0")
582 FFEBAD_MSG (FFEBAD_DATA_EVAL, FATAL,
583 "Not an integer constant expression in implied do-loop in statement at %0")
584 FFEBAD_MSG (FFEBAD_DATA_MULTIPLE, FATAL,
585 "Attempt to specify second initial value for element of `%A' at %0")
586 FFEBAD_MSG (FFEBAD_EQUIV_COMMON, FATAL,
587 "Attempt to EQUIVALENCE common areas `%A' and `%B' at %0")
588 FFEBAD_MSG (FFEBAD_EQUIV_ALIGN, FATAL,
589 "Can't place `%A' as directed by EQUIVALENCE due to alignment restrictions")
590 FFEBAD_MSG (FFEBAD_EQUIV_MISMATCH, FATAL,
591 "Mismatched EQUIVALENCE requirements for placement of `%A' at both %C and %D bytes offset from `%B'")
592 FFEBAD_MSG (FFEBAD_EQUIV_RANGE, FATAL,
593 "Array or substring specification for `%A' out of range in EQUIVALENCE statement")
594 FFEBAD_MSG (FFEBAD_EQUIV_SUBSTR, FATAL,
595 "Substring of non-CHARACTER entity `%A' in EQUIVALENCE statement")
596 FFEBAD_MSG (FFEBAD_EQUIV_ARRAY, FATAL,
597 "Array reference to scalar variable `%A' in EQUIVALENCE statement")
598 FFEBAD_MSG (FFEBAD_EQUIV_SUBSCRIPT, WARN,
599 "Array subscript #%B out of range for EQUIVALENCE of `%A'")
600 FFEBAD_MSG (FFEBAD_COMMON_PAD, WARN,
601 LONG("Padding of %A %D required before `%B' in common block `%C' at %0 -- consider reordering members, largest-type-size first")
602 SHORT("Padding of %A %D required before `%B' in common block `%C' at %0"))
603 FFEBAD_MSG (FFEBAD_COMMON_NEG, FATAL,
604 "Attempt to extend COMMON area beyond its starting point via EQUIVALENCE of `%A'")
605 FFEBAD_MSG (FFEBAD_EQUIV_FEW, FATAL,
606 "Too few elements in reference to array `%A' in EQUIVALENCE statement")
607 FFEBAD_MSG (FFEBAD_EQUIV_MANY, FATAL,
608 "Too many elements in reference to array `%A' in EQUIVALENCE statement")
609 FFEBAD_MSG (FFEBAD_MIXED_TYPES, WARN,
610 "Mixed CHARACTER and non-CHARACTER types via COMMON/EQUIVALENCE -- for example, `%A' and `%B'")
611 FFEBAD_MSG (FFEBAD_IMPLICIT_ADJLEN, FATAL,
612 LONG("Invalid length specification at %0 for IMPLICIT statement -- must be integer constant expression")
613 SHORT("Invalid length specification at %0"))
614 FFEBAD_MSG (FFEBAD_ENTRY_CONFLICTS, FATAL,
615 LONG("Type of ENTRY point at %0 to function conflicts with type(s) of previous entrypoint(s) -- must all be identical-length CHARACTER or none be CHARACTER type")
616 SHORT("Type of ENTRY point at %0 to function conflicts with type(s) of previous entrypoint(s)"))
617 FFEBAD_MSG (FFEBAD_RETURN_VALUE_UNSET, WARN,
618 "Return value `%A' for FUNCTION at %0 not referenced in subprogram")
619 FFEBAD_MSG (FFEBAD_COMMON_ALREADY_INIT, FATAL,
620 LONG("Common block `%A' initialized at %0 already initialized at %1 -- only one program unit may specify initial values for a particular common block")
621 SHORT("Common block `%A' initialized at %0 already initialized at %1"))
622 FFEBAD_MSG (FFEBAD_COMMON_INIT_PAD, WARN,
623 LONG("Initial padding for common block `%A' is %B %C at %0 -- consider reordering members, largest-type-size first")
624 SHORT("Initial padding for common block `%A' is %B %C at %0"))
625 FFEBAD_MSG (FFEBAD_COMMON_DIFF_PAD, FATAL,
626 LONG("Initial padding for common block `%A' is %B %D at %0 but %C %E at %1 -- consider reordering members, largest-type-size first")
627 SHORT("Initial padding for common block `%A' is %B %D at %0 but %C %E at %1"))
628 FFEBAD_MSG (FFEBAD_COMMON_DIFF_SAVE, WARN,
629 "Common block `%A' is SAVEd, explicitly or implicitly, at %0 but not SAVEd at %1")
630 FFEBAD_MSG (FFEBAD_COMMON_DIFF_SIZE, WARN,
631 "Common block `%A' is %B %D in length at %0 but %C %E at %1")
632 FFEBAD_MSG (FFEBAD_COMMON_ENLARGED, FATAL,
633 LONG("Common block `%A' is initialized to %B %D long at %0 but enlarged to %C %E at %1 -- use consistent definitions or reorder program units in source file")
634 SHORT("Common block `%A' is initialized to %B %D long at %0 but enlarged to %C %E at %1"))
635 FFEBAD_MSG (FFEBAD_COMMON_BLANK_INIT, WARN,
636 "Blank common initialized at %0")
637 FFEBAD_MSG (FFEBAD_NEED_INTRINSIC, WARN,
638 "Intrinsic `%A' is passed as actual argument at %0 but not explicitly declared INTRINSIC")
639 FFEBAD_MSG (FFEBAD_NEED_EXTERNAL, WARN,
640 "External procedure `%A' is passed as actual argument at %0 but not explicitly declared EXTERNAL")
641 FFEBAD_MSG (FFEBAD_SYMBOL_UPPER_CASE, WARN,
642 "Character `%A' (for example) is upper-case in symbol name at %0")
643 FFEBAD_MSG (FFEBAD_SYMBOL_LOWER_CASE, WARN,
644 "Character `%A' (for example) is lower-case in symbol name at %0")
645 FFEBAD_MSG (FFEBAD_SYMBOL_NOLOWER_INITCAP, WARN,
646 "Character `%A' not followed at some point by lower-case character in symbol name at %0")
647 FFEBAD_MSG (FFEBAD_SYMBOL_LOWER_INITCAP, WARN,
648 "Initial character `%A' is lower-case in symbol name at %0")
649 FFEBAD_MSG (FFEBAD_DO_REAL, WARN,
650 LONG("DO-variable `%A' is type REAL or DOUBLE PRECISION at %0 -- unexpected behavior likely")
651 SHORT("DO-variable `%A' is type REAL or DOUBLE PRECISION at %0"))
652 FFEBAD_MSG (FFEBAD_NAMELIST_CASE, WARN,
653 "NAMELIST not adequately supported by run-time library for source files with case preserved")
654 FFEBAD_MSG (FFEBAD_NESTED_PERCENT, WARN,
655 "Nested %% construct (%%VAL, %%REF, or %%DESCR) at %0")
656 FFEBAD_MSG (FFEBAD_ACTUALARG, WARN,
657 LONG("Invalid actual argument at %0 -- replace hollerith constants with %%REF('string') and typeless constants with INTEGER constant equivalents, or use -fugly-args or -fugly")
658 SHORT("Invalid actual argument at %0"))
659 FFEBAD_MSG (FFEBAD_QUAD_UNSUPPORTED, FATAL,
660 LONG("Quadruple-precision floating-point unsupported -- treating constant at %0 as double-precision")
661 SHORT("Quadruple-precision floating-point unsupported"))
662 FFEBAD_MSG (FFEBAD_TOO_BIG_INIT, WARN,
663 LONG("Initialization of large (%B-unit) aggregate area `%A' at %0 currently very slow and takes lots of memory during g77 compile -- to be improved in 0.6")
664 SHORT("This could take a while (initializing `%A' at %0)..."))
665 FFEBAD_MSG (FFEBAD_BLOCKDATA_STMT, FATAL,
666 "Statement at %0 invalid in BLOCK DATA program unit at %1")
667 FFEBAD_MSG (FFEBAD_TRUNCATING_CHARACTER, FATAL,
668 "Truncating characters on right side of character constant at %0")
669 FFEBAD_MSG (FFEBAD_TRUNCATING_HOLLERITH, FATAL,
670 "Truncating characters on right side of hollerith constant at %0")
671 FFEBAD_MSG (FFEBAD_TRUNCATING_NUMERIC, FATAL,
672 "Truncating non-zero data on left side of numeric constant at %0")
673 FFEBAD_MSG (FFEBAD_TRUNCATING_TYPELESS, FATAL,
674 "Truncating non-zero data on left side of typeless constant at %0")
675 FFEBAD_MSG (FFEBAD_TYPELESS_OVERFLOW, FATAL,
676 "Typeless constant at %0 too large")
677 FFEBAD_MSG (FFEBAD_AMPERSAND, WARN,
678 "First-column ampersand continuation at %0")
679 FFEBAD_MSG (FFEBAD_FILEWIDE_ALREADY_SEEN, FATAL,
680 "Global name `%A' defined at %0 already defined at %1 [info -f g77 M GLOBALS]")
681 FFEBAD_MSG (FFEBAD_FILEWIDE_ALREADY_SEEN_W, WARN,
682 "Global name `%A' defined at %0 already defined at %1 [info -f g77 M GLOBALS]")
683 FFEBAD_MSG (FFEBAD_FILEWIDE_DISAGREEMENT, FATAL,
684 "Global name `%A' is %B at %0 but is %C at %1 [info -f g77 M GLOBALS]")
685 FFEBAD_MSG (FFEBAD_FILEWIDE_DISAGREEMENT_W, WARN,
686 "Global name `%A' is %B at %0 but is %C at %1 [info -f g77 M GLOBALS]")
687 FFEBAD_MSG (FFEBAD_FILEWIDE_TYPE_MISMATCH, FATAL,
688 "Global name `%A' at %0 has different type at %1 [info -f g77 M GLOBALS]")
689 FFEBAD_MSG (FFEBAD_FILEWIDE_TYPE_MISMATCH_W, WARN,
690 "Global name `%A' at %0 has different type at %1 [info -f g77 M GLOBALS]")
691 FFEBAD_MSG (FFEBAD_FILEWIDE_NARGS, FATAL,
692 "Too %B arguments passed to `%A' at %0 versus definition at %1 [info -f g77 M GLOBALS]")
693 FFEBAD_MSG (FFEBAD_FILEWIDE_NARGS_W, WARN,
694 "Too %B arguments for `%A' at %0 versus invocation at %1 [info -f g77 M GLOBALS]")
695 FFEBAD_MSG (FFEBAD_FILEWIDE_ARG, FATAL,
696 "Argument #%B of `%A' is %C at %0 but is %D at %1 [info -f g77 M GLOBALS]")
697 FFEBAD_MSG (FFEBAD_FILEWIDE_ARG_W, WARN,
698 "Argument #%B of `%A' is %C at %0 but is %D at %1 [info -f g77 M GLOBALS]")
699 FFEBAD_MSG (FFEBAD_ARRAY_LARGE, FATAL,
700 "Array `%A' at %0 is too large to handle")
701 FFEBAD_MSG (FFEBAD_SFUNC_UNUSED, WARN,
702 "Statement function `%A' defined at %0 is not used")
703 FFEBAD_MSG (FFEBAD_INTRINSIC_Y2KBAD, WARN,
704 "Intrinsic `%A', invoked at %0, known to be non-Y2K-compliant [info -f g77 M Y2KBAD]")
705 FFEBAD_MSG (FFEBAD_NOCANDO, DISASTER,
706 "Internal compiler error -- cannot perform operation")