]>
Commit | Line | Data |
---|---|---|
7114edca PT |
1 | 2006-11-09 Paul Thomas <pault@gcc.gnu.org> |
2 | ||
3 | PR fortran/29699 | |
4 | * trans-array.c (structure_alloc_comps): Detect pointers to | |
5 | arrays and use indirect reference to declaration. | |
6 | * resolve.c (resolve_fl_variable): Tidy up condition. | |
7 | (resolve_symbol): The same and only add initialization code if | |
8 | the symbol is referenced. | |
9 | * trans-decl.c (gfc_trans_deferred_vars): Call gfc_trans_ | |
10 | deferred_array before gfc_trans_auto_array_allocation. | |
11 | ||
12 | PR fortran/21730 | |
13 | * symbol.c (check_done): Remove. | |
14 | (gfc_add_attribute): Remove reference to check_done and remove | |
15 | the argument attr_intent. | |
16 | (gfc_add_allocatable, gfc_add_dimension, gfc_add_external, | |
17 | gfc_add_intrinsic, gfc_add_optional, gfc_add_pointer, | |
18 | gfc_add_cray_pointer, gfc_add_cray_pointee, gfc_add_result, | |
19 | gfc_add_target, gfc_add_in_common, gfc_add_elemental, | |
20 | gfc_add_pure, gfc_add_recursive, gfc_add_procedure, | |
21 | gfc_add_type): Remove references to check_done. | |
22 | * decl.c (attr_decl1): Eliminate third argument in call to | |
23 | gfc_add_attribute. | |
24 | * gfortran.h : Change prototype for gfc_add_attribute. | |
25 | ||
592600ce BM |
26 | 2006-11-08 Brooks Moses <brooks.moses@codesourcery.com> |
27 | ||
28 | * invoke.texi: Added documentation for -fmax-errors option. | |
29 | ||
3f139fcf BM |
30 | 2006-11-08 Brooks Moses <brooks.moses@codesourcery.com> |
31 | ||
32 | * lang.opt: Add -fmax-errors= option. | |
33 | * gfortran.h (gfc_option_t): Add max_errors element. | |
34 | * options.c (gfc_init_options): Set max_errors default value | |
35 | to 25. | |
36 | (gfc_handle_options): Assign -fmax_errors value to | |
37 | gfc_option.max_errors. | |
38 | * error.c (gfc_increment_error_count): New function, which | |
39 | also checks whether the error count exceeds max_errors. | |
40 | (gfc_warning): Use it. | |
41 | (gfc_warning_now): Use it. | |
42 | (gfc_notify_std): Use it. | |
43 | (gfc_error): Use it. | |
44 | (gfc_error_now): Use it. | |
45 | (gfc_error_check): Use it. | |
46 | ||
350ff03f BM |
47 | 2006-11-08 Brooks Moses <brooks.moses@codesourcery.com> |
48 | ||
49 | * lang.opt: Remove non-working -qkind= option. | |
50 | * gfortran.h (gfc_option_t): Remove q_kind member. | |
51 | * options.c (gfc_init_options): Remove q_kind initialization. | |
52 | (gfc_handle_option): Remove -qkind= option handling. | |
53 | * primary.c: (match_real_constant): Remove 'Q' exponent. | |
54 | ||
08d7f64e TB |
55 | 2006-11-08 Tobias Burnus <burnus@net-b.de> |
56 | ||
57 | * gfortran.texi: Add volatile and internal-file | |
58 | namelist to Fortran 2003 status. | |
59 | * intrinsic.texi: Correct CHMOD entry. | |
60 | ||
61 | 2006-11-07 Paul Thomas <pault@gcc.gnu.org> | |
8f81c3c6 PT |
62 | |
63 | PR fortran/29539 | |
64 | PR fortran/29634 | |
65 | * decl.c (variable_decl): Add test for presence of proc_name. | |
66 | * error.c (gfc_error_flag_test): New function. | |
67 | * gfortran.h : Prototype for gfc_error_flag_test. | |
68 | ||
775e6c3a TB |
69 | 2006-11-07 Tobias Burnus <burnus@net-b.de> |
70 | ||
71 | PR fortran/29601 | |
72 | * symbol.c (check_conflict, gfc_add_volatile): Add volatile support. | |
73 | * decl.c (match_attr_spec, gfc_match_volatile): Add volatile support. | |
74 | * gfortran.h (symbol_attribute): Add volatile_ to struct. | |
75 | * resolve.c (was_declared): Add volatile support. | |
76 | * trans-decl.c (gfc_finish_var_decl): Add volatile support. | |
77 | * match.h: Declare gfc_match_volatile. | |
78 | * parse.c (decode_statement): Recognize volatile. | |
79 | * modules.c (ab_attribute, attr_bits, mio_symbol_attribute): | |
80 | Add volatile support. | |
81 | * dump-parse-tree.c (gfc_show_attr): Add volatile support. | |
82 | ||
aa4183d8 TB |
83 | 2006-11-06 Tobias Burnus <burnus@net-b.de> |
84 | ||
85 | * decl.c (match_attr_spec, gfc_match_enum): Unify gfc_notify_std | |
86 | message for GFC_STD_F2003. | |
87 | * array.c (gfc_match_array_constructor): Unify gfc_notify_std | |
88 | message for GFC_STD_F2003. | |
89 | * io.c (check_io_constraints): Unify gfc_notify_std message for | |
90 | GFC_STD_F2003. | |
91 | * resolve.c (resolve_actual_arglist): Unify gfc_notify_std message | |
92 | for GFC_STD_F2003. | |
93 | ||
61e390b1 | 94 | 2006-11-06 Brooks Moses <brooks.moses@codesourcery.com> |
a1758c52 BM |
95 | |
96 | * intrinsic.texi: Added documentation for FTELL, GETLOG, and | |
97 | HOSTNM intrinsics. | |
98 | ||
abe601c7 EE |
99 | 2006-11-06 Erik Edelmann <eedelman@gcc.gnu.org> |
100 | ||
101 | PR fortran/29630 | |
102 | PR fortran/29679 | |
103 | * expr.c (find_array_section): Support vector subscripts. Don't | |
104 | add sizes for dimen_type == DIMEN_ELEMENT to the shape array. | |
105 | ||
f4d4085c BF |
106 | 2006-11-05 Bernhard Fischer <aldot@gcc.gnu.org> |
107 | ||
108 | PR fortran/21061 | |
109 | * error.c (gfc_warning): If warnings_are_errors then treat | |
110 | warnings as errors with respect to the exit code. | |
111 | (gfc_notify_std): Ditto. | |
112 | (gfc_warning_now): Ditto. | |
113 | ||
58b6e047 PT |
114 | 2006-11-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu,org> |
115 | Paul Thomas <pault@gcc.gnu.org> | |
116 | ||
117 | PR fortran/24518 | |
118 | * trans-intrinsic.c (gfc_conv_intrinsic_mod): Use built_in fmod | |
119 | for both MOD and MODULO, if it is available. | |
120 | ||
121 | PR fortran/29565 | |
122 | * trans-expr.c (gfc_conv_aliased_arg): For an INTENT(OUT), save | |
123 | the declarations from the unused loops by merging the block | |
124 | scope for each; this ensures that the temporary is declared. | |
125 | ||
cb60c134 BM |
126 | 2006-11-04 Brooks Moses <brooks.moses@codesourcery.com> |
127 | ||
128 | * error.c (show_locus): Add trailing colon in error messages. | |
129 | (error_print): Avoid leading space in error lines. | |
130 | ||
d6910bb5 FXC |
131 | 2006-11-04 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
132 | ||
133 | PR fortran/29713 | |
134 | * expr.c (gfc_simplify_expr): Correct memory allocation. | |
135 | ||
5d7de335 BM |
136 | 2006-11-02 Brooks Moses <brooks.moses@codesourcery.com> |
137 | ||
138 | * error.c (show_locus): Remove "In file" from error messages. | |
139 | ||
5880f14f GK |
140 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
141 | ||
142 | * trans-decl.c (gfc_generate_constructors): Update for removal | |
143 | of get_file_function_name. | |
144 | ||
41433497 BF |
145 | 2006-11-01 Bernhard Fischer <aldot@gcc.gnu.org> |
146 | ||
147 | PR fortran/29537 | |
148 | * trans-common.c (gfc_trans_common): If the blank common is | |
149 | in a procedure or program without a name then proc_name is null, so | |
150 | use the locus of the common. | |
151 | (gfc_sym_mangled_common_id): Fix whitespace. | |
152 | * match.c (gfc_match_common): Emit warning about blank common in | |
153 | block data. | |
154 | ||
5d32fe7f FXC |
155 | 2006-10-31 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
156 | ||
157 | PR fortran/29067 | |
158 | * decl.c (gfc_set_constant_character_len): NULL-terminate the | |
159 | character constant string. | |
160 | * data.c (create_character_intializer): Likewise. | |
161 | * expr.c (gfc_simplify_expr): NULL-terminate the substring | |
162 | character constant. | |
163 | * primary.c (match_hollerith_constant): NULL-terminate the | |
164 | character constant string. | |
165 | ||
dd5797cc PT |
166 | 2006-10-31 Paul Thomas <pault@gcc.gnu.org> |
167 | ||
168 | PR fortran/29387 | |
169 | * trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have | |
170 | a specific case for EXPR_VARIABLE and, in default, build an ss | |
171 | to call gfc_conv_expr_descriptor for array expressions.. | |
172 | ||
173 | PR fortran/29490 | |
174 | * trans-expr.c (gfc_set_interface_mapping_bounds): In the case | |
175 | that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor | |
176 | values for it and GFC_TYPE_ARRAY_UBOUND. | |
177 | ||
178 | PR fortran/29641 | |
179 | * trans-types.c (gfc_get_derived_type): If the derived type | |
180 | namespace has neither a parent nor a proc_name, set NULL for | |
181 | the search namespace. | |
182 | ||
9aceacac TB |
183 | 2006-10-30 Tobias Burnus <burnus@net-b.de> |
184 | ||
185 | PR fortran/29452 | |
186 | * io.c (check_io_constraints): Fix keyword string comparison. | |
187 | ||
0e697399 AP |
188 | 2006-10-30 Andrew Pinski <pinskia@gmail.com> |
189 | ||
190 | PR fortran/29410 | |
191 | * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): | |
192 | Change over to create VIEW_CONVERT_EXPR instead of using an | |
193 | ADDR_EXPR, a cast and then an indirect reference | |
194 | ||
0f8bc3e1 FXC |
195 | 2006-10-29 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
196 | ||
197 | * trans-intrinsic.c (gfc_conv_intrinsic_loc): Make LOC return a | |
198 | signed integer node. | |
199 | ||
2c693a24 JD |
200 | 2006-10-29 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
201 | ||
202 | PR fortran/17741 | |
203 | * decl.c (get_proc_name): Bump current namespace refs count. | |
204 | ||
a7a53ca5 JJ |
205 | 2006-10-29 Jakub Jelinek <jakub@redhat.com> |
206 | ||
207 | PR fortran/29629 | |
208 | * trans-openmp.c (gfc_trans_omp_array_reduction): Set attr.flavor | |
209 | of init_val_sym and outer_sym to FL_VARIABLE. | |
210 | ||
37efe9e9 KH |
211 | 2006-10-29 Kazu Hirata <kazu@codesourcery.com> |
212 | ||
213 | * intrinsic.texi: Fix a typo. | |
214 | ||
b814a64e | 215 | 2006-10-27 Steven G. Kargl <kargl@gcc.gnu.org> |
37efe9e9 | 216 | |
b814a64e SK |
217 | * gfortran.h: Remove GFC_MPFR_TOO_OLD. |
218 | * arith.c (arctangent2): Remove function | |
219 | (gfc_check_real_range): Remove subnormal kludge. | |
220 | * arith.h: Remove arctangent2 prototype. | |
221 | * simplify.c: (gfc_simplify_atan2): Remove use of arctangent2. | |
222 | (gfc_simplify_exponent, gfc_simplify_log, gfc_simplify_nearest, | |
223 | gfc_simplify_rrspacing, gfc_simplify_spacing): Remove mpfr kludges. | |
224 | ||
f1827a8c TB |
225 | 2006-10-28 Tobias Burnus <burnus@net-b.de> |
226 | ||
227 | PR fortran/28224 | |
228 | * io.c (check_io_constraints): Allow namelists | |
229 | for internal files for Fortran 2003. | |
230 | ||
a9f6f1f2 JD |
231 | 2006-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
232 | ||
233 | PR fortran/27954 | |
234 | * decl.c (gfc_free_data_all): New function to free all data structures | |
235 | after errors in DATA statements and declarations. | |
236 | (top_var_list): Use new function.(top_val_list): Use new function. | |
237 | (gfc_match_data_decl): Use new function. | |
238 | * misc.c (gfc_typename): Fixed incorrect function name in error text. | |
239 | ||
b9703d98 EE |
240 | 2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org> |
241 | ||
242 | PR fortran/29393 | |
243 | * expr.c (simplify_parameter_variable): Keep rank of original | |
244 | expression. | |
245 | ||
c79efc4d RÁE |
246 | 2006-10-23 Rafael Avila de Espindola <rafael.espindola@gmail.com> |
247 | ||
248 | * Make-lang.in (f951$(exeext)): Depend on and link with attribs.o. | |
249 | * trans.h (builtin_function): Rename to gfc_builtin_function. | |
250 | Change the signature. | |
251 | * 95-lang.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as | |
252 | gfc_builtin_function. | |
253 | (builtin_function): Rename to gfc_builtin_function. Move common | |
254 | code to builtin_function. | |
255 | (gfc_define_builtin): Replace calls to builtin_function with | |
256 | gfc_define_builtin. | |
257 | ||
5a0aad31 FXC |
258 | 2006-10-22 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
259 | ||
260 | PR fortran/26025 | |
261 | * lang.opt: Add -fexternal-blas and -fblas-matmul-limit options. | |
262 | * options.c (gfc_init_options): Initialize new flags. | |
263 | (gfc_handle_option): Handle new flags. | |
264 | * gfortran.h (gfc_option): Add flag_external_blas and | |
265 | blas_matmul_limit flags. | |
266 | * trans-expr.c (gfc_conv_function_call): Use new argument | |
267 | append_args, appending it at the end of the argument list | |
268 | built for a function call. | |
269 | * trans-stmt.c (gfc_trans_call): Use NULL_TREE for the new | |
270 | append_args argument to gfc_trans_call. | |
271 | * trans.h (gfc_conv_function_call): Update prototype. | |
272 | * trans-decl.c (gfc_build_intrinsic_function_decls): Add | |
273 | prototypes for BLAS ?gemm routines. | |
274 | * trans-intrinsic.c (gfc_conv_intrinsic_funcall): Generate the | |
275 | extra arguments given to the library matmul function, and give | |
276 | them to gfc_conv_function_call. | |
277 | * invoke.texi: Add documentation for -fexternal-blas and | |
278 | -fblas-matmul-limit. | |
279 | ||
70ec446f KG |
280 | 2006-10-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
281 | ||
282 | * Make-lang.in (F95_LIBS): Delete. | |
283 | * f951$(exeext): Use $(LIBS) instead of $(F95_LIBS). | |
284 | * config-lang.in (need_gmp): Delete. | |
285 | ||
27ea0360 BM |
286 | 2006-10-19 Brooks Moses <bmoses@stanford.edu> |
287 | ||
288 | * invoke.texi: Fixed "denormal" typo. | |
289 | ||
6b591ec0 PT |
290 | 2006-10-19 Paul Thomas <pault@gcc.gnu.org> |
291 | ||
292 | PR fortran/29216 | |
293 | PR fortran/29314 | |
294 | * gfortran.h : Add EXEC_INIT_ASSIGN. | |
295 | * dump-parse-tree.c (gfc_show_code_node): The same. | |
296 | * trans-openmp.c (gfc_trans_omp_array_reduction): Set new | |
297 | argument for gfc_trans_assignment to false. | |
298 | * trans-stmt.c (gfc_trans_forall_1): The same. | |
299 | * trans-expr.c (gfc_conv_function_call, gfc_trans_assign, | |
300 | gfc_trans_arrayfunc_assign, gfc_trans_assignment): The | |
301 | same. In the latter function, use the new flag to stop | |
302 | the checking of the lhs for deallocation. | |
303 | (gfc_trans_init_assign): New function. | |
304 | * trans-stmt.h : Add prototype for gfc_trans_init_assign. | |
305 | * trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN. | |
306 | * trans.h : Add new boolean argument to the prototype of | |
307 | gfc_trans_assignment. | |
308 | * resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by | |
309 | EXEC_INIT_ASSIGN. | |
310 | (resolve_code): EXEC_INIT_ASSIGN does not need resolution. | |
311 | (apply_default_init): New function. | |
312 | (resolve_symbol): Call it for derived types that become | |
313 | defined but which do not already have an initialization | |
314 | expression.. | |
315 | * st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN. | |
316 | ||
02712c16 TB |
317 | 2006-10-16 Tobias Burnus <burnus@net-b.de> |
318 | ||
319 | * primary.c: Revert 'significand'-to-'significant' comment change. | |
320 | * invoke.texi (Warning Options): Minor cleanup for | |
321 | -Wimplicit-interface. | |
322 | ||
5b440a1c PT |
323 | 2006-10-17 Paul Thomas <pault@gcc.gnu.org> |
324 | ||
325 | PR fortran/20541 | |
326 | * trans-array.c (gfc_trans_array_bounds): Test for and set | |
327 | negative stride of a non-constant bound array to zero. | |
328 | ||
329 | PR fortran/29392 | |
330 | * data.c (create_character_intializer): Copy and simplify | |
331 | the expressions for the start and end of a sub-string | |
332 | reference. | |
333 | ||
0573fa42 KK |
334 | 2006-10-16 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
335 | ||
336 | * io.c (gfc_match_close): Ensure that status is terminated by | |
337 | a NULL element. | |
338 | ||
9aceacac | 339 | 2006-10-16 Tobias Burnus <burnus@net-b.de> |
fa951694 TB |
340 | |
341 | * trans-stmt.c: Fix a typo | |
342 | * invoke.texi: Fix typos | |
343 | * resolve.c: Fix a comment typo | |
344 | * trans-decl.c: Fix a comment typo | |
345 | * primary.c: Fix a comment typo | |
346 | ||
ff2c6bbb SK |
347 | 2006-10-15 Steven G. Kargl <kargl@gcc.gnu.org> |
348 | ||
349 | PR fortran/29403 | |
350 | * io.c (match_io): Check for a default-char-expr for PRINT format. | |
351 | ||
2e5758e8 BF |
352 | 2006-10-15 Bernhard Fischer <aldot@gcc.gnu.org> |
353 | ||
354 | PR fortran/24767 | |
355 | * lang.opt (Wunused-labels): Remove. | |
356 | * options.c: Remove references to gfc_option.warn_unused_labels. | |
357 | * gfortran.h: Remove variable warn_unused_labels. | |
358 | * resolve.c (warn_unused_fortran_label) : Use warn_unused_label | |
359 | instead of gfc_option.warn_unused_labels. | |
360 | * invoke.texi: Remove documentation of -Wunused-labels. | |
361 | ||
26d29061 TB |
362 | 2006-10-14 Tobias Burnus <burnus@net-b.de> |
363 | ||
364 | * gfortran.texi: Add link to GFortran apps | |
365 | * intrinsic.texi: Updated documentation of ACCESS and CHMOD | |
366 | ||
1526c4b5 JD |
367 | 2006-10-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
368 | ||
369 | PR fortran/19261 | |
370 | * scanner.c (load_line): Add checks for illegal use of '&' and issue | |
371 | warnings. Issue errors with -pedantic. | |
372 | ||
467f18f3 PT |
373 | 2006-10-14 Paul Thomas <pault@gcc.gnu.org> |
374 | ||
375 | PR fortran/29371 | |
376 | * trans-expr.c (gfc_trans_pointer_assignment): Add the expression | |
377 | for the assignment of null to the data field to se->pre, rather | |
378 | than block. | |
379 | ||
b2a43373 KH |
380 | 2006-10-14 Kazu Hirata <kazu@codesourcery.com> |
381 | ||
382 | * intrinsic.texi: Fix typos. | |
383 | * trans-array.c: Fix a comment typo. | |
384 | ||
cdfd6b4b BM |
385 | 2006-10-13 Brooks Moses <bmoses@stanford.edu> |
386 | ||
387 | * intrinsic.texi (STAT): Reverted a format in example code to | |
388 | octal; noted this in accompanying string. | |
389 | ||
982186b1 PT |
390 | 2006-10-13 Paul Thomas <pault@gcc.gnu.org> |
391 | ||
392 | PR fortran/29373 | |
393 | * decl.c (get_proc_name, gfc_match_function_decl): Add | |
394 | attr.implicit_type to conditions that throw error for | |
395 | existing explicit interface and that allow new type- | |
396 | spec to be applied. | |
397 | ||
398 | PR fortran/29407 | |
399 | * resolve.c (resolve_fl_namelist): Do not check for | |
400 | namelist/procedure conflict, if the symbol corresponds | |
401 | to a good local variable declaration. | |
402 | ||
403 | PR fortran/27701 | |
404 | * decl.c (get_proc_name): Replace the detection of a declared | |
405 | procedure by the presence of a formal argument list by the | |
406 | attributes of the symbol and the presence of an explicit | |
407 | interface. | |
408 | ||
409 | PR fortran/29232 | |
410 | * resolve.c (resolve_fl_variable): See if the host association | |
411 | of a derived type is blocked by the presence of another type I | |
412 | object in the current namespace. | |
413 | ||
414 | PR fortran/29364 | |
415 | * resolve.c (resolve_fl_derived): Check for the presence of | |
416 | the derived type for a derived type component. | |
417 | ||
418 | PR fortran/24398 | |
419 | * module.c (gfc_use_module): Check that the first words in a | |
420 | module file are 'GFORTRAN module'. | |
421 | ||
422 | PR fortran/29422 | |
423 | * resolve.c (resolve_transfer): Test functions for suitability | |
424 | for IO, as well as variables. | |
425 | ||
426 | PR fortran/29428 | |
427 | * trans-expr.c (gfc_trans_scalar_assign): Remove nullify of | |
428 | rhs expression. | |
429 | ||
ac677cc8 FXC |
430 | 2006-10-13 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
431 | ||
432 | PR fortran/29391 | |
433 | * trans-intrinsic.c (gfc_conv_intrinsic_bound): Generate correct | |
434 | code for LBOUND and UBOUND intrinsics. | |
435 | ||
16dbbd99 FXC |
436 | 2006-10-13 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
437 | ||
438 | PR fortran/21435 | |
439 | * io.c (compare_to_allowed_values): New function. | |
440 | (gfc_match_open): Add checks for constant values of specifiers. | |
441 | (gfc_match_close): Add checks for constant values of the STATUS | |
442 | specifier. | |
443 | ||
68060084 BM |
444 | 2006-10-12 Brooks Moses <bmoses@stanford.edu> |
445 | ||
446 | * intrinsic.texi (STAT): Fixed a format typo in sample code. | |
447 | ||
25f32574 BM |
448 | 2006-10-12 Brooks Moses <bmoses@stanford.edu> |
449 | ||
450 | * intrinsic.texi (STAT): Shortened lines in sample code. | |
451 | ||
c4632147 TS |
452 | 2006-10-11 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> |
453 | ||
454 | * gfortran.h (gfc_show_actual_arglist, gfc_show_array_ref, | |
455 | gfc_show_array_spec, gfc_show_attr, gfc_show_code, | |
456 | gfc_show_components, gfc_show_constructor, gfc_show_equiv, | |
457 | gfc_show_expr, gfc_show_namelist, gfc_show_ref, gfc_show_symbol, | |
458 | gfc_show_typespec): Add prototypes. | |
459 | * dump-parse-tree.c (gfc_show_actual_arglist, gfc_show_array_ref, | |
460 | gfc_show_array_spec, gfc_show_attr, gfc_show_code, | |
461 | gfc_show_components, gfc_show_constructor, gfc_show_equiv, | |
462 | gfc_show_expr, gfc_show_namelist, gfc_show_ref, gfc_show_symbol, | |
463 | gfc_show_typespec): Remove 'static' from declaration. | |
464 | ||
8556236b BM |
465 | 2006-10-10 Brooks Moses <bmoses@stanford.edu> |
466 | ||
467 | * invoke.texi, gfortran.texi: Corrected erronous dashes. | |
468 | ||
b5422ad7 BM |
469 | 2006-10-10 Brooks Moses <bmoses@stanford.edu> |
470 | ||
471 | * Make-lang.in: Added "fortran.pdf", "gfortran.pdf" target | |
472 | support. | |
473 | ||
21825fd6 DF |
474 | 2006-10-10 Daniel Franke <franke.daniel@gmail.com> |
475 | ||
476 | * intrinsic.texi: added documentation for FSTAT, GETARG,GET_COMMAND, | |
477 | GET_COMMAND_ARGUMENT, GETENV, GET_ENVIRONMENT_VARIABLE, IAND, IARGC, | |
478 | LSTAT and STAT, removed the reference to PR19292 from ACCESS, CHMOD, | |
479 | GMTIME, LSHIFT, LTIME, RSHIFT. | |
480 | ||
be6c4709 | 481 | 2006-10-10 Brooks Moses <bmoses@stanford.edu> |
175ff229 | 482 | |
be6c4709 | 483 | * gfortran.texi (Standards): Update to current status. |
12923cd1 BM |
484 | |
485 | 2006-10-09 Brooks Moses <bmoses@stanford.edu> | |
486 | ||
487 | * Make-lang.in: Added intrinsic.texi to GFORTRAN_TEXI | |
2e582661 BM |
488 | dependences. |
489 | ||
3d614c74 BM |
490 | 2006-10-09 Brooks Moses <bmoses@stanford.edu> |
491 | ||
be6c4709 | 492 | * intrinsic.texi (MOVE_ALLOC): changed "Options" to "Standards". |
3d614c74 | 493 | |
cc6d3bde SK |
494 | 2006-10-09 Steven G. Kargl <kargl@gcc.gnu.org> |
495 | ||
496 | * gfortran.h: Define GFC_MPFR_TOO_OLD via mpfr version info. | |
497 | * arith.c (arctangent, gfc_check_real_range): Use it. | |
498 | * simplify.c (gfc_simplify_atan2, gfc_simplify_exponent, | |
499 | gfc_simplify_log, gfc_simplify_nearest): Use it. | |
500 | ||
501 | PR fortran/15441 | |
502 | PR fortran/29312 | |
503 | * iresolve.c (gfc_resolve_rrspacing): Give rrspacing library | |
504 | routine hidden precision argument. | |
505 | (gfc_resolve_spacing): Give spacing library routine hidden | |
506 | precision, emin - 1, and tiny(x) arguments. | |
507 | * simplify.c (gfc_simplify_nearest): Remove explicit subnormalization. | |
508 | (gfc_simplify_rrspacing): Implement formula from Fortran 95 standard. | |
509 | (gfc_simplify_spacing): Implement formula from Fortran 2003 standard. | |
510 | * trans-intrinsic.c (gfc_intrinsic_map_t) Declare rrspacing and | |
511 | spacing via LIBF_FUNCTION | |
512 | (prepare_arg_info, call_builtin_clz, gfc_conv_intrinsic_spacing, | |
513 | gfc_conv_intrinsic_rrspacing): Remove functions. | |
514 | (gfc_conv_intrinsic_function): Remove calls to | |
515 | gfc_conv_intrinsic_spacing and gfc_conv_intrinsic_rrspacing. | |
516 | * f95-lang.c (gfc_init_builtin_functions): Remove __builtin_clz, | |
517 | __builtin_clzl and __builtin_clzll | |
518 | ||
a98d4769 RH |
519 | 2006-10-09 Richard Henderson <rth@redhat.com> |
520 | ||
521 | Revert emutls patch. | |
522 | ||
8d2c2905 FXC |
523 | 2006-10-09 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
524 | ||
525 | * intrinsic.c (add_sym_0s, add_sym_1s, add_sym_2s, add_sym_3s, | |
526 | add_sym_4s, add_sym_5s, add_functions): Use macro ACTUAL_NO, | |
527 | ACTUAL_YES, NOT_ELEMENTAL and ELEMENTAL instead of constants | |
528 | 0 and 1 as second and third arguments to add_sym* functions. | |
529 | ||
5046aff5 PT |
530 | 2006-10-08 Erik Edelmann <edelmann@gcc.gnu.org> |
531 | Paul Thomas <pault@gcc.gnu.org> | |
532 | ||
533 | PR fortran/20541 | |
534 | * interface.c (gfc_compare_derived_types): Add comparison of | |
535 | the allocatable field. | |
536 | * intrinsic.c (add_subroutines): Add MOVE_ALLOC. | |
537 | * trans-expr.c (gfc_conv_aliased_arg, gfc_trans_subarray_assign, | |
538 | gfc_trans_subcomponent_assign, gfc_conv_string_parameter, | |
539 | gfc_trans_scalar_assign): Add extra arguments l_is_temp | |
540 | and r_is_var to references to latter function. | |
541 | (gfc_conv_function_call): Add enum for types of argument and | |
542 | an associated variable parm_kind. Deallocate components of | |
543 | INTENT(OUT) and non-variable arrays. | |
544 | (gfc_trans_subcomponent_assign): Add block to assign arrays | |
545 | to allocatable components. | |
546 | (gfc_trans_scalar_assign): Add block to handle assignments of | |
547 | derived types with allocatable components, using the above new | |
548 | arguments to control allocation/deallocation of memory and the | |
549 | copying of allocated arrays. | |
550 | * trans-array.c (gfc_array_allocate): Remove old identification | |
551 | of pointer and replace with that of an allocatable array. Add | |
552 | nullify of structures with allocatable components. | |
553 | (gfc_conv_array_initializer): Treat EXPR_NULL. | |
554 | (gfc_conv_array_parameter): Deallocate allocatable components | |
555 | of non-variable structures. | |
556 | (gfc_trans_dealloc_allocated): Use second argument of library | |
557 | deallocate to inhibit, without error, freeing NULL pointers. | |
558 | (get_full_array_size): New function to return the size of a | |
559 | full array. | |
560 | (gfc_duplicate_allocatable): New function to allocate and copy | |
561 | allocated data. | |
562 | (structure_alloc_comps): New recursive function to deallocate, | |
563 | nullify or copy allocatable components. | |
564 | (gfc_nullify_alloc_comp, gfc_deallocate_alloc_comp, | |
565 | gfc_copy_alloc_comp): New interface functions to call previous. | |
566 | (gfc_trans_deferred_array): Add the code to nullify allocatable | |
567 | components, when entering scope, and to deallocate them on | |
568 | leaving. Do not call gfc_trans_static_array_pointer and return | |
569 | for structures with allocatable components and default | |
570 | initializers. | |
571 | * symbol.c (gfc_set_component_attr): Set allocatable field. | |
572 | (gfc_get_component_attr): Set the allocatable attribute. | |
573 | * intrinsic.h : Prototype for gfc_check_move_alloc. | |
574 | * decl.c (build_struct): Apply TR15581 constraints for | |
575 | allocatable components. | |
576 | (variable_decl): Default initializer is always NULL for | |
577 | allocatable components. | |
578 | (match_attr_spec): Allow, or not, allocatable components, | |
579 | according to the standard in force. | |
580 | * trans-array.h : Prototypes for gfc_nullify_alloc_comp, | |
581 | gfc_deallocate_alloc_comp, gfc_copy_alloc_comp and | |
582 | gfc_duplicate_allocatable. | |
583 | * gfortran.texi : Add mention of TR15581 extensions. | |
584 | * gfortran.h : Add attribute alloc_comp, add | |
585 | gfc_components field allocatable and add the prototype | |
586 | for gfc_expr_to_initialize. | |
587 | * trans-stmt.c (generate_loop_for_temp_to_lhs, | |
588 | generate_loop_for_rhs_to_temp, gfc_trans_where_assign, | |
589 | gfc_trans_where_3): Add extra arguments to calls to | |
590 | gfc_trans_scalar_assign and set appropriately. | |
591 | (gfc_trans_allocate): Nullify allocatable components. | |
592 | (gfc_trans_deallocate): Deallocate to ultimate allocatable | |
593 | components but stop at ultimate pointer components. | |
594 | * module.c (mio_symbol_attribute, mio_symbol_attribute, | |
595 | mio_component): Add module support for allocatable | |
596 | components. | |
597 | * trans-types.c (gfc_get_derived_type): Treat allocatable | |
598 | components. | |
599 | * trans.h : Add two boolean arguments to | |
600 | gfc_trans_scalar_assign. | |
601 | * resolve.c (resolve_structure_cons): Check conformance of | |
602 | constructor element and the component. | |
603 | (resolve_allocate_expr): Add expression to nullify the | |
604 | constructor expression for allocatable components. | |
605 | (resolve_transfer): Inhibit I/O of derived types with | |
606 | allocatable components. | |
607 | (resolve_fl_derived): Skip check of bounds of allocatable | |
608 | components. | |
609 | * trans-decl.c (gfc_get_symbol_decl): Add derived types | |
610 | with allocatable components to deferred variable. | |
611 | (gfc_trans_deferred_vars): Make calls for derived types | |
612 | with allocatable components to gfc_trans_deferred_array. | |
613 | (gfc_generate_function_code): Nullify allocatable | |
614 | component function result on entry. | |
615 | * parse.c (parse_derived): Set symbol attr.allocatable if | |
616 | allocatable components are present. | |
617 | * check.c (gfc_check_allocated): Enforce attr.allocatable | |
618 | for intrinsic arguments. | |
619 | (gfc_check_move_alloc): Check arguments of move_alloc. | |
620 | * primary.c (gfc_variable_attr): Set allocatable attribute. | |
621 | * intrinsic.texi : Add index entry and section for | |
622 | for move_alloc. | |
623 | ||
624 | 2006-10-08 Paul Thomas <pault@gcc.gnu.org> | |
625 | ||
626 | PR fortran/29115 | |
627 | * resolve.c (resolve_structure_cons): It is an error if the | |
628 | pointer component elements of a derived type constructor are | |
629 | not pointer or target. | |
630 | ||
631 | ||
632 | PR fortran/29211 | |
633 | * trans-stmt.c (generate_loop_for_temp_to_lhs, | |
634 | generate_loop_for_rhs_to_temp): Provide a string length for | |
635 | the temporary by copying that of the other side of the scalar | |
636 | assignment. | |
637 | ||
bec93d79 TB |
638 | 2006-10-08 Tobias Burnus <burnus@net-b.de> |
639 | ||
640 | PR fortran/28585 | |
641 | * intrinsic.c (add_functions): Add new_line Fortran 2003 intrinsic. | |
642 | * intrinsic.h: Add gfc_simplify_new_line and gfc_check_new_line | |
643 | prototypes. | |
644 | * check.c (gfc_check_new_line): New function. | |
645 | * simplify.c (gfc_simplify_new_line): New function. | |
646 | * intrinsic.texi: Document new_line intrinsic. | |
647 | ||
0e7e7e6e FXC |
648 | 2006-10-07 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
649 | ||
650 | PR fortran/16580 | |
651 | PR fortran/29288 | |
652 | * gcc/fortran/intrinsic.c (add_sym): Define the actual_ok when a | |
653 | gfc_intrinsic_sym structure is filled. | |
654 | (gfc_intrinsic_actual_ok): New function. | |
655 | (add_sym_0s, add_sym_1s, add_sym_2s, add_sym_3s, add_sym_4s, | |
656 | add_sym_5s): Intrinsic subroutines are not allowed as actual | |
657 | arguments, so we remove argument actual_ok. | |
658 | (add_functions): Correct the values for actual_ok of all intrinsics. | |
32a126b2 | 659 | Add comments for gfc_check_access_func and gfc_resolve_index_func. |
0e7e7e6e FXC |
660 | (add_subroutines): Remove the actual_ok argument, which was never used. |
661 | * gcc/fortran/intrinsic.h (gfc_intrinsic_actual_ok): New prototype. | |
662 | * gcc/fortran/gfortran.h (gfc_resolve_index_func): New prototype. | |
663 | * gcc/fortran/resolve.c (resolve_actual_arglist): Check whether | |
664 | an intrinsic used as an argument list is allowed there. | |
665 | * gcc/fortran/iresolve.c (gfc_resolve_index_func): New function. | |
666 | (gfc_resolve_len): Change intrinsic function name to agree with | |
667 | libgfortran. | |
668 | * gcc/fortran/trans-decl.c (gfc_get_extern_function_decl): Add | |
669 | new case, because some specific intrinsics take 3 arguments. | |
670 | * gcc/fortran/intrinsic.texi: DIMAG is a GNU extension. | |
671 | ||
0d3abf6f JJ |
672 | 2006-10-06 Jakub Jelinek <jakub@redhat.com> |
673 | ||
9eccb94d JJ |
674 | PR fortran/28415 |
675 | * trans-decl.c (gfc_finish_var_decl): With -fno-automatic, don't | |
676 | make artificial variables or pointer to variable automatic array | |
677 | TREE_STATIC. | |
678 | ||
0d3abf6f JJ |
679 | * scanner.c (skip_free_comments): Return bool instead of void. |
680 | (gfc_next_char_literal): Don't return ' ' if & is missing after | |
681 | !$omp or !$. Use skip_{free,fixed}_comments directly instead | |
682 | of gfc_skip_comments. | |
683 | ||
cf822c04 BM |
684 | 2006-10-04 Brooks Moses <bmoses@stanford.edu> |
685 | ||
686 | * gfortran.texi: (Current Status): update and rewrite to reflect | |
687 | actual status more accurately. | |
688 | ||
7fc15ba5 BM |
689 | 2006-10-04 Brooks Moses <bmoses@stanford.edu> |
690 | ||
691 | * gfortran.texi: Consistently refer to the compiler as "GNU | |
692 | Fortran". | |
693 | * intrinsic.texi: Ditto. | |
694 | * invoke.texi: Ditto. | |
695 | ||
e701a32a RH |
696 | 2006-10-04 Richard Henderson <rth@redhat.com> |
697 | Jakub Jelinek <jakub@redhat.com> | |
698 | ||
699 | * f95-lang.c (gfc_init_builtin_functions): Add __emutls_get_address | |
700 | and __emutls_register_common. | |
701 | * openmp.c (gfc_match_omp_threadprivate): Don't error if !have_tls. | |
702 | * trans-common.c (build_common_decl): Don't check have_tls. | |
703 | * trans-decl.c (gfc_finish_var_decl): Likewise. | |
704 | * types.def (BT_WORD, BT_FN_PTR_PTR): New. | |
705 | (BT_FN_VOID_PTR_WORD_WORD_PTR): New. | |
706 | ||
25e8cb2e PT |
707 | 2006-10-04 Paul Thomas <pault@gcc.gnu.org> |
708 | ||
709 | PR fortran/29343 | |
710 | * resolve.c (resolve_allocate_expr): Exclude derived types from | |
711 | search for dependences between allocated variables and the | |
712 | specification expressions for other allocations in the same | |
713 | statement. | |
714 | ||
404d8401 PT |
715 | 2006-10-04 Paul Thomas <pault@gcc.gnu.org> |
716 | ||
717 | PR fortran/29098 | |
718 | * resolve.c (resolve_structure_cons): Do not return FAILURE if | |
719 | component expression is NULL. | |
720 | ||
77726571 PT |
721 | 2006-10-03 Paul Thomas <pault@gcc.gnu.org> |
722 | ||
723 | PR fortran/20779 | |
724 | PR fortran/20891 | |
725 | * resolve.c (find_sym_in_expr): New function that returns true | |
726 | if a symbol is found in an expression. | |
727 | (resolve_allocate_expr): Check whether the STAT variable is | |
728 | itself allocated in the same statement. Use the call above to | |
729 | check whether any of the allocated arrays are used in array | |
730 | specifications in the same statement. | |
731 | ||
77b558e2 SK |
732 | 2006-10-03 Steven G. Kargl <kargl@gcc.gnu.org> |
733 | ||
734 | * arith.c (gfc_check_real_range): Use correct exponent range for | |
735 | subnormal numbers. | |
736 | ||
5be38273 PT |
737 | 2006-10-03 Paul Thomas <pault@gcc.gnu.org> |
738 | ||
739 | PR fortran/29284 | |
740 | PR fortran/29321 | |
741 | PR fortran/29322 | |
742 | * trans-expr.c (gfc_conv_function_call): Check the expression | |
743 | and the formal symbol are present when testing the actual | |
744 | argument. | |
745 | ||
746 | PR fortran/25091 | |
747 | PR fortran/25092 | |
748 | * resolve.c (resolve_entries): It is an error if the entries | |
749 | of an array-valued function do not have the same shape. | |
750 | ||
c55cebda FXC |
751 | 2006-10-03 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
752 | ||
753 | PR middle-end/27478 | |
754 | * trans-decl.c (gfc_get_fake_result_decl): Mark var as | |
755 | TREE_ADDRESSABLE. | |
756 | ||
5a06474c JD |
757 | 2006-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
758 | ||
c55cebda FXC |
759 | PR fortran/19262 |
760 | * gfortran.h (gfc_option_t): Add max_continue_fixed and | |
761 | max_continue_free. | |
762 | * options.c (gfc_init_options): Initialize fixed form and free form | |
763 | consecutive continuation line limits. | |
764 | * scanner.c (gfc_scanner_init_1): Initialize continue_line | |
765 | and continue_count. (gfc_next_char_literal): Count the number of | |
766 | continuation lines in the current statement and warn if limit | |
767 | is exceeded. | |
5a06474c JD |
768 | |
769 | 2006-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org> | |
770 | ||
c55cebda FXC |
771 | PR fortran/19260 |
772 | * scanner.c (gfc_next_char_literal): Add check for missing '&' | |
773 | and warn if in_string, otherwise return ' '. | |
5a06474c | 774 | |
e227ac57 FXC |
775 | 2006-10-02 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
776 | ||
777 | PR fortran/29210 | |
778 | * primary.c (match_sym_complex_part): Named constants as real or | |
779 | imaginary part of complex a named constant are only allowed in | |
780 | Fortran 2003. | |
781 | ||
3397327c BM |
782 | 2006-10-01 Brooks Moses <bmoses@stanford.edu> |
783 | ||
784 | * gfortran.texi: Corrected references to MALLOC intrinsic. | |
785 | * invoke.texi: Minor cleanup and clarification to the Dialect | |
786 | Options section. | |
787 | ||
da1e2517 BM |
788 | 2006-09-30 Brooks Moses <bmoses@stanford.edu> |
789 | ||
790 | * invoke.texi: Add mention of BOZ constants and integer | |
791 | overflow to -fno-range-check. | |
792 | * gfortran.texi: Add mention of -fno-range-check to | |
793 | section on BOZ contants. | |
794 | ||
05c1e3a7 BF |
795 | 2006-09-30 Bernhard Fischer <aldot@gcc.gnu.org> |
796 | ||
797 | * resolve.c: Fix commentary typo. Fix whitespace. | |
798 | ||
a40e443f SK |
799 | 2006-09-28 Steven G. Kargl <kargl@gcc.gnu.org> |
800 | ||
801 | fortran/29147 | |
802 | * arith.c (gfc_check_integer_range): Disable range checking via | |
803 | -fno-range-check. | |
804 | ||
48c7b142 SK |
805 | 2006-09-28 Steven G. Kargl <kargl@gcc.gnu.org> |
806 | ||
807 | * arith.c: Change conditional test for inclusion of arctangent(). | |
808 | (gfc_check_real_range): Change conditional test for use of | |
809 | mpfr_subnormalize. | |
810 | * simplify.c (gfc_simplify_atan2): Fix conditional for use of | |
811 | mpfr_atan2() instead of arctangent(). | |
812 | (gfc_simplify_exponent): Fix conditional for use of mpfr_get_exp(). | |
813 | (gfc_simplify_log): Fix conditional for use of mpfr_atan2() instead | |
814 | of arctangent(). | |
815 | (gfc_simplify_nearest): Fix conditional for use of mpfr_nextafter(). | |
816 | ||
e48d66a9 SK |
817 | 2006-09-27 Steven G. Kargl <kargl@gcc.gnu.org> |
818 | ||
819 | * arith.c: Conditionally include arctangent2(). | |
820 | (gfc_check_real_range): Use mpfr_subnormalize in preference to local | |
821 | hack. | |
822 | * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl): Append | |
823 | l for long double functions. | |
824 | * simplify.c: Wrap Copyright to new line. | |
825 | (gfc_simplify_atan2): Use mpfr_atan2 in preference to arctangent2(). | |
e701a32a | 826 | (gfc_simplify_log): Ditto. |
e48d66a9 SK |
827 | |
828 | ||
829 | PR fortran/28276 | |
830 | * simplify.c (gfc_simplify_exponent): Use mpfr_get_exp in | |
831 | preference to broken local hack. | |
832 | ||
833 | PR fortran/27021 | |
834 | * simplify.c (gfc_simplify_nearest): Use mpfr_nexttoward and | |
835 | mpfr_subnormalize to handle numbers near zero in preference to broken | |
836 | local hack. | |
837 | ||
9b9e4cd6 JJ |
838 | 2006-09-26 Jakub Jelinek <jakub@redhat.com> |
839 | ||
840 | PR fortran/29097 | |
841 | * scanner.c (include_line): Handle conditional include. | |
842 | ||
582df53e | 843 | 2006-09-25 Tobias Schluter <tobias.schlueter@physik.uni-muenchen.de> |
fc29d5c4 TS |
844 | |
845 | PR fortran/21203 | |
846 | * error.c (show_loci): No need to risk an ICE to output a | |
847 | slightly nicer error message. | |
848 | ||
dc6c7714 PT |
849 | 2006-09-19 Paul Thomas <pault@gcc.gnu.org> |
850 | Steven Bosscher <steven@gcc.gnu.org> | |
851 | ||
852 | PR fortran/29101 | |
853 | * trans-stmt.c (gfc_trans_character_select): Store the label | |
854 | from select_string and then clean up any temporaries from the | |
855 | conversion of the select expression, before branching to the | |
856 | selected case. | |
857 | ||
fd2aa7ad PT |
858 | 2006-09-18 Paul Thomas <pault@gcc.gnu.org> |
859 | ||
860 | PR fortran/28526 | |
861 | * primary.c (match_variable): If the compiler is in a module | |
862 | specification block, an interface block or a contains section, | |
863 | reset host_flag to force the changed symbols mechanism. | |
864 | ||
865 | PR fortran/29101 | |
866 | * trans-stmt.c (gfc_trans_character_select): Add the post block | |
867 | for the expression to the main block, after the call to | |
868 | select_string and the last label. | |
869 | ||
80f2bb6e PT |
870 | 2006-09-18 Paul Thomas <pault@gcc.gnu.org> |
871 | ||
872 | PR fortran/29060 | |
873 | * iresolve.c (resolve_spread): Build shape for result if the | |
874 | source shape is available and dim and ncopies are constants. | |
875 | ||
876 |