]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/fortran/ChangeLog
re PR fortran/32732 ([Bind C] Character scalars are passed as arrays)
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
CommitLineData
e032c2a1
CR
12007-08-06 Christopher D. Rickett <crickett@lanl.gov>
2
3 PR fortran/32732
4 * trans-expr.c (gfc_conv_scalar_char_value): Convert the tree and
5 actual arg expressions for scalar characters passed by-value to
6 bind(c) routines.
7 (gfc_conv_function_call): Call gfc_conv_scalar_char_value.
8 * trans.h: Add prototype for gfc_conv_scalar_char_value.
9 * trans-decl.c (generate_local_decl): Convert by-value character
10 dummy args of bind(c) procedures using
11 gfc_conv_scalar_char_value.
12
19c222f8
FXC
132007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
14
15 PR fortran/30947
16 * iresolve.c (gfc_resolve_alarm_sub): Suffix the subroutine name
17 with the kind of the STATUS argument.
18
a3e3233a
FXC
192007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
20
52f6c31a 21 PR fortran/30948
a3e3233a
FXC
22 * intrinsic.c (add_functions): Fix name of argument to CHDIR.
23
fe569d8f
FXC
242007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
25
26 PR fortran/30933
27 * iresolve.c (gfc_resolve_exit): Convert argument to default
28 integer kind.
29
3dbf6538
DF
302007-08-06 Daniel Franke <franke.daniel@gmail.com>
31
32 * resolve.c (derived_pointer): Removed, replaced callers by access
33 to appropiate attribute bit.
34 (derived_inaccessable): Shortcut recursion depth.
35 (resolve_fl_namelist): Fixed checks for private components in namelists.
36
2263c775
FXC
372007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
38
39 PR fortran/29828
40 * trans.h (gfor_fndecl_string_minmax): New prototype.
41 * trans-decl.c (gfor_fndecl_string_minmax): New variable.
42 (gfc_build_intrinsic_function_decls): Create gfor_fndecl_string_minmax.
43 * check.c (gfc_check_min_max): Allow for character arguments.
44 * trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): New function.
45 (gfc_conv_intrinsic_function): Add special case for MIN and MAX
46 intrinsics with character arguments.
47 * simplify.c (simplify_min_max): Add simplification for character
48 arguments.
49
adeb22c4
FXC
502007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
51
52 PR fortran/31612
53 * invoke.texi: Adjust documentation for option -fsyntax-only.
54
3d97b1af
FXC
552007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
56 Tobias Burnus <burnus@gcc.gnu.org>
57
58 PR fortran/32979
59 * intrinsic.h (gfc_check_isnan): Add prototype.
60 * gfortran.h (gfc_isym_id): Add GFC_ISYM_ISNAN.
61 * intrinsic.c (add_functions): Add ISNAN intrinsic.
62 * check.c (gfc_check_isnan): New function.
63 * trans-intrinsic.c (gfc_conv_intrinsic_isnan): New function.
64 (gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_isnan
65 to translate ISNAN.
66 * intrinsic.texi: Document ISNAN.
67
aa84a9a5
PT
682007-08-04 Paul Thomas <pault@gcc.gnu.org>
69
70 PR fortran/31214
cbef3aa2
PT
71 * symbol.c (get_unique_symtree): Moved from module.c.
72 * module.c (get_unique_symtree): Moved to symbol.c.
73 * decl.c (get_proc_name): Transfer the typespec from the local
74 symbol to the module symbol, in the case that an entry is also
75 a module procedure. Ensure the local symbol is cleaned up by
76 pointing to it with a unique symtree.
aa84a9a5 77
cbef3aa2 78 * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL.
aa84a9a5 79
26ef8a2c
SK
802008-08-04 Steven G. Kargl <kargl@gcc.gnu.org>
81
82 PR fortran/32969
83 * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to
84 expected KIND.
85 (gfc_resolve_scale): Ditto.
86 (gfc_resolve_set_exponent): Ditto.
87 (gfc_resolve_spacing): Ditto.
88
89 PR fortran/32968
90 * trans-intrinsic.c (gfc_conv_intrinsic_si_kind,
91 gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the
92 expected KIND, and fold the result to the expected KIND.
93
94f548c2
FXC
942007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
95
96 PR fortran/31202
97 * f95-lang.c (gfc_init_builtin_functions): Defin builtins for
98 lround{f,,l} and llround{f,,l}.
99 * trans-intrinsic.c (build_fix_expr): Generate calls to the
100 {l,}round{f,,l} functions.
101
870c06b9
TK
1022007-08-01 Thomas Koenig <tkoenig@gcc.gnu.org>
103
104 PR libfortran/32954
105 * intrinsic.c (resolve_mask_arg): New function.
106 (gfc_resolve_maxloc): Use resolve_mask_arg for mask resolution.
107 (gfc_resolve_maxval): Likewise.
108 (gfc_resolve_minloc): Likewise.
109 (gfc_resolve_minval): Likewise.
110 (gfc_resolve_pack): Likewise.
111 (gfc_resolve_product): Likewise.
112 (gfc_resolve_sum): Likewise.
113 (gfc_resolve_unpack): Likewise.
114
b8a0d3cf
TB
1152007-08-01 Tobias Burnus <burnus@net-b.de>
116
117 PR fortran/32936
118 * match.c (gfc_match_allocate): Better check that STAT is
119 a variable.
120
121 * check.c (gfc_check_allocated): Reorder checks to improve
122 error message.
123
d234d788
NC
1242007-08-01 Nick Clifton <nickc@redhat.com>
125
126 * arith.c: Change copyright header to refer to version 3 of the
127 GNU General Public License and to point readers at the COPYING3
128 file and the FSF's license web page.
129 * openmp.c, interface.c, intrinsic.c, trans-array.c, trans-expr.c,
130 symbol.c, iso-fortran-env.def, intrinsic.h, decl.c, trans-array.h,
131 matchexp.c, dump-parse-tree.c, trans-common.c, array.c,
132 Make-lang.in, trans-openmp.c, gfortran.h, error.c,
133 iso-c-binding.def, lang.opt, data.c, trans-const.c, trans-stmt.c,
134 expr.c, trans-const.h, trans-stmt.h, module.c, trans.c, scanner.c,
135 trans-types.c, trans.h, gfortranspec.c, trans-types.h,
136 lang-specs.h, io.c, bbt.c, resolve.c, f95-lang.c, st.c,
137 iresolve.c, match.c, trans-decl.c, trans-io.c, target-memory.c,
138 match.h, target-memory.h, parse.c, arith.h, check.c, dependency.c,
139 parse.h, types.def, convert.c, dependency.h, primary.c,
140 trans-intrinsic.c, options.c, misc.c, simplify.c: Likewise.
141
d92693b4
DF
1422007-08-01 Daniel Franke <franke.daniel@gmail.com>
143
144 * trans-decl.c (generate_local_decl): Emit warning on unused parameter
145 on "-Wall -Wextra" or "-Wunused-parameter" but not on "-Wall", changed
146 messages that start with lower case to upper case.
147 * invoke.texi (-Wparameter-unused): Document differences between gcc
148 and gfortran regarding this option.
149
d05360a6
DF
1502007-08-01 Daniel Franke <franke.daniel@gmail.com>
151
152 PR fortran/32945
153 * expr.c (check_specification_function): Skip check if no symtree
154 is available.
155
08ee9e85
PT
1562007-08-01 Paul Thomas <pault@gcc.gnu.org>
157
158 PR fortran/31609
159 * resolve.c (resolve_entries): Entries declared to be module
160 procedures must point to the function namespace.
161
7d520b9b
FXC
1622007-07-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
163
164 PR fortran/32938
165 * trans-stmt.c (gfc_trans_return): Convert to correct type.
166
14b1261a
SK
1672007-07-31 Steven G. Kargl <kargl@gcc.gnu.org>
168
169 PR fortran/32942
8db6f545 170 * trans-intrinsic.c (gfc_conv_intrinsic_exponent): Convert to correct
14b1261a
SK
171 type.
172
0483c79f
JD
1732007-07-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
174
175 * invoke.texi: Document -fsign-zero flag.
176
6a56381b
PT
1772007-07-29 Paul Thomas <pault@gcc.gnu.org>
178
179 PR fortran/31211
180 * trans-expr.c (gfc_conv_expr_reference): Add block for case of
181 scalar pointer functions so that NULL result is correctly
182 handled.
183
184 PR fortran/32682
8db6f545 185 * trans-array.c (gfc_trans_array_constructor): On detecting a
6a56381b
PT
186 multi-dimensional parameter array, set the loop limits.
187
c317bc40
DF
1882007-07-29 Daniel Franke <franke.daniel@gmail.com>
189
190 PR fortran/32906
191 * resolve.c (resolve_fl_parameter): Check for constant shape arrays,
192 adjusted error message.
193
5a2197e9
DF
1942007-07-29 Daniel Franke <franke.daniel@gmail.com>
195
196 * invoke.texi: Removed -w from option summary.
197
4cb3c8fc
DF
1982007-07-29 Daniel Franke <franke.daniel@gmail.com>
199
200 PR fortran/32879
201 * intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document algorithm
202 used for random number generator.
203
1207ac67
KH
2042007-07-28 Kazu Hirata <kazu@codesourcery.com>
205
206 * gfortran.h, interface.c, resolve.c, symbol.c: Fix comment
207 typos.
208 * intrinsic.texi, invoke.texi: Fix typos.
209
6d023ec5
JD
2102007-07-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
211
212 PR fortran/31609
213 * resolve.c (generic_sym): Check for a same symbol and if so, return to
214 avoid infinite recursion.
215
5cca320d
DF
2162007-07-28 Daniel Franke <franke.daniel@gmail.com>
217
218 PR fortran/31818
219 PR fortran/32876
220 PR fortran/32905
f86b898d
DF
221 * gfortran.h (symbol_attribute): Added bits for pointer_comp,
222 private_comp.
223 * parse.c (parse_derived): Set pointer_comp/private_comp bits if
224 the derived type ultimately contains pointer components or private
225 components.
5cca320d
DF
226 * module.c (ab_attribute): New values AB_POINTER_COMP, AB_PRIVATE_COMP.
227 (attr_bits): Added names for new ab_attributes.
228 (mio_symbol_attribute): Save/restore new attribute bits in modules.
f86b898d
DF
229 * match.c (gfc_match_namelist): Removed check for namelist objects
230 of assumed shape.
231 * resolve.c (resolve_fl_namelist): Added check for pointer or
232 private components in nested types. Added check for namelist objects
233 of assumed shape.
5cca320d 234
b8247b13
PT
2352007-07-28 Paul Thomas <pault@gcc.gnu.org>
236
237 PR fortran/32880
238 * trans-expr.c (gfc_trans_scalar_assign): Revert to fixed order
239 for lse and rse pre expressions, for derived types with
240 allocatable components. Instead, assign the lhs to a temporary
241 and deallocate after the assignment.
242
dd52ecb0
JB
2432007-07-28 Janne Blomqvist <jb@gcc.gnu.org>
244
245 PR fortran/32909
246 * trans-stmt.c (gfc_trans_character_select): Replace occurrences
247 of gfc_c_int_type_node with integer_type_node.
248 * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
249 (gfc_build_builtin_function_decls): Likewise.
250 (gfc_generate_function_code): Likewise.
251 * trans-io.c (gfc_build_io_library_fndecls): Likewise.
252
4e27018f
JB
2532007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
254
255 * trans-decl.c (gfc_build_builtin_function_decls): Use existing
256 gfc_array_index_type rather than creating another typenode for
257 gfc_index_integer_kind.
258
6520ecac
JB
2592007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
260
261 * trans-io.c (gfc_build_io_library_fndecls): Change to use
262 gfc_array_index_type for array descriptor triplets instead of
263 gfc_int4_type_node.
264
b8475dd6
SK
2652007-07-26 Steven G. Kargl <kargl@gcc.gnu.org>
266
267 PR fortran/32899
268 * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
269
4958f4ee
JD
2702007-07-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
271 Daniel Franke <franke.daniel@gmail.com>
272
273 PR fortran/32760
274 * primary.c (match_variable): Do not call gfc_add_flavor if symbol has
275 attribute of ACCESS_PUBLIC or ACCESS_PRIVATE already marked.
276
2b8327ce
FXC
2772007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
278
279 PR fortran/32035
280 * trans-stmt.c (gfc_trans_character_select): Replace the
281 mechanism with labels by a SWITCH_EXPR.
282 * trans-decl.c (gfc_build_builtin_function_decls): Change
283 return type for select_string.
284
55ed891f
PT
2852007-07-27 Paul Thomas <pault@gcc.gnu.org>
286
287 PR fortran/32903
288 * trans-decl.c (gfc_trans_deferred_vars): Set intent(out)
289 derived types as referenced, if they have the the default
290 initializer set.
291
741ac903
KG
2922007-07-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
293
294 * gfortran.h (generate_isocbinding_symbol): Constify.
295 * symbol.c (gen_special_c_interop_ptr, gen_cptr_param,
296 generate_isocbinding_symbol): Likewise.
297
55ed891f 2982007-07-24 Paul Thomas <pault@gcc.gnu.org>
08113c73
PT
299
300 PR fortran/31205
301 PR fortran/32842
302 * trans-expr.c (gfc_conv_function_call): Remove the default
303 initialization of intent(out) derived types.
304 * symbol.c (gfc_lval_expr_from_sym): New function.
305 * matchexp.c (gfc_get_parentheses): Return argument, if it is
306 character and posseses a ref.
307 * gfortran.h : Add prototype for gfc_lval_expr_from_sym.
308 * resolve.c (has_default_initializer): Move higher up in file.
309 (resolve_code): On detecting an interface assignment, check
310 if the rhs and the lhs are the same symbol. If this is so,
311 enclose the rhs in parenetheses to generate a temporary and
312 prevent any possible aliasing.
313 (apply_default_init): Remove code making the lval and call
314 gfc_lval_expr_from_sym instead.
315 (resolve_operator): Give a parentheses expression a type-
316 spec if it has no type.
317 * trans-decl.c (gfc_trans_deferred_vars): Apply the a default
318 initializer, if any, to an intent(out) derived type, using
319 gfc_lval_expr_from_sym and gfc_trans_assignment. Check if
320 the dummy is present.
321
fd8e2796
DF
3222007-07-24 Daniel Franke <franke.daniel@gmail.com>
323
324 PR fortran/32867
325 * expr.c (check_init_expr): Simplify matched functions.
326
3f2286f2
DF
3272007-07-24 Daniel Franke <franke.daniel@gmail.com>
328
329 PR fortran/32778
330 * intrinsic.c (add_sym): Do not exclude any symbols, even if not part
331 of the selected standard.
332 (make generic): Likewise.
333 (make alias): Likewise, set standard the alias belongs to.
334 (add_subroutines): Call make_noreturn unconditionally.
335 (check_intrinsic_standard): Change return value to try.
336 (gfc_intrinsic_func_interface): Check return value of above function.
337 (gfc_intrinsic_sub_interface): Likewise.
338
18fe404f
TK
3392007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
340
341 PR fortran/30814
bdcfceb4
TB
342 * trans-decl.c (generate_function_code): Add argument
343 for flag_bounds_check to the array for set_options.
344 * invoke.texi (-fbounds-check): Document new libarary run-time
345 behaviour.
18fe404f 346
5ab0eadf
DF
3472007-07-23 Daniel Franke <franke.daniel@gmail.com>
348
349 PR fortran/25104
350 PR fortran/31639
351 * expr.c (check_transformational): Reject valid transformational
352 intrinsics to avoid ICE.
353 (check_inquiry): Report error for assumed character lengths for
354 all supported standards.
355 (check_init_expr): Whitespace fix.
356
d8fa96e0
CR
3572007-07-23 Christopher D. Rickett <crickett@lanl.gov>
358
359 PR fortran/32797
360 PR fortran/32800
361 * decl.c (verify_bind_c_sym): Use the result symbol for functions
362 with a result clause. Warn if implicitly typed. Verify the type
363 and rank of the SHAPE argument, if given.
364 * resolve.c (gfc_iso_c_sub_interface): Use gfc_procedure_use to
365 check the actual args against the formal, sorting them if
366 necessary.
367 * symbol.c (gen_shape_param): Initialize type of SHAPE param to
368 BT_VOID.
369
8b16d231
CR
3702007-07-23 Christopher D. Rickett <crickett@lanl.gov>
371
372 PR fortran/32732
373 * trans-decl.c (generate_local_decl): Convert the TREE_TYPE for by
374 value character dummy args of BIND(C) procedures.
375 * trans-expr.c (gfc_conv_variable): Do not build address
376 expression for BT_CHARACTER dummy args.
377
089db47d
CR
3782007-07-23 Christopher D. Rickett <crickett@lanl.gov>
379 Tobias Burnus <burnus@net-b.de>
380
381 PR fortran/32600
382 * trans-expr.c (gfc_conv_function_call): Handle c_funloc.
383 * trans-types.c: Add pfunc_type_node.
384 (gfc_init_types,gfc_typenode_for_spec): Use it.
385 * resolve.c (gfc_iso_c_func_interface): Fix whitespace and
386 improve error message.
387
eec14ce5
DF
3882007-07-22 Daniel Franke <franke.daniel@gmail.com>
389
390 PR fortran/32710
391 * parse.c (gfc_fixup_sibling_symbols): No replacement of symbols if
392 the current is a namelist.
393
26677eb8
DF
3942007-07-22 Daniel Franke <franke.daniel@gmail.com>
395
396 PR fortran/29962
397 PR fortran/31253
398 PR fortran/31265
399 PR fortran/31639
400 * gfortran.h (gfc_intrinsic_sym): Changed members elemental, pure,
401 generic, specific, actual_ok, noreturn into bits of a bitfield,
402 added bits for inquiry, transformational, conversion.
403 * check.c (non_init_transformational): Removed, removed all callers.
404 * intrinsic.c (enum class): New.
405 (add_sym*): Replaced argument elemetal by enum class. Changed all
406 callers.
407 (add_functions): Assign appropriate classes to intrinsic functions.
408 (add_subroutines): Assign appropriate classes to intrinsic subroutines.
409 (add_conv): Set conversion attribute.
410 (gfc_init_expr_extensions): Removed, removed all callers.
411 (gfc_intrinsic_func_interface): Reimplemented check for non-standard
412 initializatione expressions.
413 * expr.c (check_specification_function): New.
414 (gfc_is_constant_expr): Added check for specification functions.
415 (check_init_expr_arguments): New.
416 (check_inquiry): Changed return value to MATCH, added checks for
417 inquiry functions defined by F2003.
418 (check_transformational): New.
419 (check_null): New.
420 (check_elemental): New.
421 (check_conversion): New.
422 (check_init_expr): Call new check functions, add more specific error
423 messages.
424
6ad5cf72
CR
4252007-07-21 Christopher D. Rickett <crickett@lanl.gov>
426
427 PR fortran/32627
428 * resolve.c (set_name_and_label): Set kind number for character
429 version of c_f_pointer.
430 (gfc_iso_c_sub_interface): Set the kind of the SHAPE formal arg to
431 that of the actual SHAPE arg.
432 * symbol.c (gen_shape_param): Initialize kind for SHAPE arg.
433
21a77227
CR
4342007-07-21 Christopher D. Rickett <crickett@lanl.gov>
435
436 PR fortran/32801
437 * symbol.c (generate_isocbinding_symbol): Remove unnecessary
438 conditional.
439
440 PR fortran/32804
441 * resolve.c (gfc_iso_c_func_interface): Reject assumed-shape and
442 deferred-shape arrays as args to C_LOC. Fix bug in testing
443 character args to C_LOC.
444
ffd82975
LM
4452007-07-21 Lee Millward <lee.millward@gmail.com>
446
447 PR fortran/32823
448 * trans-intrinsic.c (gfc_conv_intrinsic_int): Evaluate all
449 arguments passed, not just the first one. Adjust code to
450 refer to "args[0]" instead of "arg" as a result.
451
972345f2
CR
4522007-07-19 Christopher D. Rickett <crickett@lanl.gov>
453
454 PR fortran/32600
455 * trans-expr.c (gfc_conv_function_call): Inline C_LOC.
456
c00a2e6b
CR
4572007-07-18 Christopher D. Rickett <crickett@lanl.gov>
458
459 PR fortran/32801
460 * symbol.c (generate_isocbinding_symbol): Fix bug where
461 ISOCBINDING_FUNPTR was generated for C_LOC instead of the needed
462 ISOCBINDING_PTR.
463
4665abc4
JW
4642007-07-17 Janus Weil <jaydub66@gmail.com>
465
466 PR fortran/32535
467 * resolve.c (resolve_fl_namelist): Check for namelist private
468 components in contained subprograms.
469
28114dad
PT
4702007-07-17 Paul Thomas <pault@gcc.gnu.org>
471
472 PR fortran/31320
473 PR fortran/32665
474 * trans-expr.c (gfc_trans_subcomponent_assign): Ensure that
475 renormalization unity base is done independently of existing
476 lbound value.
477 (gfc_trans_scalar_assign): If rhs is not a variable, put
478 lse->pre after rse->pre to ensure that de-allocation of lhs
479 occurs after evaluation of rhs.
480
55637e51
LM
4812007-07-16 Lee Millward <lee.millward@gmail.com>
482
483 PR fortran/32222
484 PR fortran/32238
485 PR fortran/32242
486 * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
487 to operate on a stack allocated array for the intrinsic arguments
488 instead of creating a TREE_LIST. Add two new parameters for the
489 array and the number of elements. Update all callers to allocate
490 an array of the correct length to pass in. Update comment.
491 (gfc_intrinsic_argument_list_length): New function.
492 (gfc_conv_intrinsic_conversion): Call it.
493 (gfc_conv_intrinsic_mnimax): Likewise.
494 (gfc_conv_intrinsic_merge): Likewise.
495 (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
496 constructors.
497 (gfc_conv_intrinsic_cmplx): Likewise.
498 (gfc_conv_intrinsic_ctime): Likewise.
499 (gfc_covn_intrinsic_fdate): Likewise.
500 (gfc_conv_intrinsic_ttynam): Likewise.
501 (gfc_conv_intrinsic_ishftc): Likewise.
502 (gfc_conv_intrinsic_index): Likewise.
503 (gfc_conv_intrinsic_scan): Likewise.
504 (gfc_conv_intrinsic_verify): Likewise.
505 (gfc_conv_intrinsic_trim): Likewise.
506 (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
507 (gfc_conv_intrinsic_exponent): Likewise.
508 (gfc_conv_intrinsic_bound): Likewise.
509 (gfc_conv_intrinsic_abs): Likewise.
510 (gfc_conv_intrinsic_mod): Likewise.
511 (gfc_conv_intrinsic_sign): Likewise.
512 (gfc_conv_intrinsic_len): Likewise.
513 (gfc_conv_intrinsic_adjust): Likewise.
514 (gfc_conv_intrinsic_si_kind): Likewise.
515
75ef384e
JB
5162007-07-16 Janne Blomqvist <jb@gcc.gnu.org>
517
518 PR fortran/32748
519 * trans-decl.c (gfc_build_builtin_function_decls): Remove
520 DECL_IS_MALLOC attribute from internal_realloc, thus reverting
521 part of my 2007-07-03 patch.
522
68d2e027
JD
5232007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
524 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
525
526 PR fortran/32611
527 * gfortran.h (gfc_option_t): Add flag_sign_zero field.
528 * lang.opt (-fsign-zero): New option.
529 * trans.h: Rename gfor_fndecl_set_std into gfor_fndecl_set_options.
530 * trans-decl.c (gfc_build_builtin_function_decls): Build the function
531 declaration to pass an array containing the options to be used by the
532 runtime library. (gfc_generate_function_code): Build an array that
533 contains option values to be passed to the runtime library and the call
534 to the function.
535 * options.c (gfc_init_options): Initialize the flag_sign_zero field.
536 (gfc_handle_option): Handle the -fsign-zero option.
537
a90552d5
FXC
5382007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
539
540 PR fortran/32036
541 * trans-array.c (gfc_conv_array_ref): Only evaluate index once.
542
37058415
FXC
5432007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
544
545 PR fortran/32357
546 * iresolve.c (gfc_resolve_mvbits): Convert FROMPOS, LEN and TOPOS
547 to C int.
548
3b3620db
TK
5492007-07-14 Thomas Koenig <tkoenig@gcc.gnu.org>
550
551 PR libfortran/32731
552 * iresolve.c(gfc_resolve_pack): A scalar mask has
553 to be kind=4, an array mask with kind<4 is converted
554 to gfc_default_logical_kind automatically.
555 (gfc_resolve_unpack): Convert mask to gfc_default_lotical_kind
556 if it has a kind<4.
557
dec9e22d
DF
5582007-07-14 Paul Thomas <pault@gcc.gnu.org>
559
560 PR fortran/32724
561 * parse.c (parse_spec): Emit error on unexpected statement
562 function.
563
a2bef74c
DF
5642007-07-13 Daniel Franke <franke.daniel@gmail.com>
565
566 * invoke.texi: Unified upper- and lower-case in menus.
567 (-w, -W): Removed, documented by gcc.
568 * intrinsic.texi: Unified Class-section entries, added
569 subroutine/function warning where appropiate.
570
f8faa85e
DF
5712007-07-12 Daniel Franke <franke.daniel@gmail.com>
572
573 PR fortran/31639
574 * decl.c (gfc_match_suffix): Removed surplus general error that hides
575 a more specific message.
576 * resolve.c (resolve_fl_variable): Reject illegal initializiers only
577 if not already done.
578 (resolve_fl_procedure): Added check for initializers of functions.
579
70263321
DF
5802007-07-12 Daniel Franke <franke.daniel@gmail.com>
581
582 PR fortran/32704
583 * invoke.texi (-static-libgfortran): Document new option.
584
5fb70d2e
PT
5852007-07-12 Paul Thomas <pault@gcc.gnu.org>
586
587 PR fortran/32634
588 PR fortran/32727
589 * module.c (write_generic): Restore patch of 2007-07-10 and use
590 symbol name if there are no use names.
591
aa5e22f0
CR
5922007-07-12 Christopher D. Rickett <crickett@lanl.gov>
593
594 PR fortran/32599
595 * decl.c (verify_c_interop_param): Require character string dummy
596 args to BIND(C) procedures to have length 1.
597 * resolve.c (resolve_fl_procedure): Modify parameter checking for
598 BIND(C) procedures.
599
600 PR fortran/32601
601 * resolve.c (gfc_iso_c_func_interface): Verify that a valid
602 expression is given as an argument to C_LOC and C_ASSOCIATED.
603 * trans-io.c (transfer_expr): Add argument for code block. Add
604 standards check to determine if an error message should be
605 reported for printing C_PTR or C_FUNPTR.
606 (transfer_array_component): Update arguments to transfer_expr.
607 (gfc_trans_transfer): Ditto.
608
609 * symbol.c (gen_cptr_param): Fix whitespace.
610
e1c82219
JJ
6112007-07-12 Jakub Jelinek <jakub@redhat.com>
612
613 PR fortran/32550
614 * trans.h (GFC_POINTER_TYPE_P): Define.
615 * trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
616 * trans-openmp.c (gfc_omp_privatize_by_reference): Return false
617 if GFC_POINTER_TYPE_P is set on the type.
618
553b66ad
RG
6192007-07-12 Richard Guenther <rguenther@suse.de>
620
621 * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert
622 arguments to gfc_charlen_type_node.
623 * trans-io.c (gfc_convert_array_to_string): Convert type
624 size to gfc_array_index_type.
625
56b6a5fe
DF
6262007-07-12 Daniel Franke <franke.daniel@gmail.com>
627
628 PR fortran/32634
629 PR fortran/32727
630 * module.c: Reverted Paul's patch from 2007-07-10.
631
cbb2b813
RG
6322007-07-11 Richard Guenther <rguenther@suse.de>
633
634 * trans-array.c (gfc_conv_array_parameter): Use correct
635 types for comparison.
636 * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
637 correct types for POINTER_PLUS_EXPR.
638 * trans-stmt.c (gfc_trans_forall_loop): Use correct type
639 for integer one constant.
640
e7c8ff56
PT
6412007-07-10 Paul Thomas <pault@gcc.gnu.org>
642
643 PR fortran/32157
644 * resolve.c (is_external_proc): New function. Adds test that
645 the symbol is not an intrinsic procedure.
646 * (resolve_function, resolve_call): Replace logical statements
647 with call to is_external_proc.
648
649 PR fortran/32689
650 * simplify.c (gfc_simplify_transfer): If mold has rank, the
651 result is an array.
652
653 PR fortran/32634
654 * module.c (write_generic): Write the local name of the
655 interface.
656
01306727
FXC
6572007-07-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
658
659 PR fortran/29459
660 * trans-array.c (gfc_trans_array_constructor): Mark offset field
661 with TREE_NO_WARNING.
662 * trans-decl.c (gfc_build_qualified_array): Mark lbound, ubound,
663 stride and size variables with TREE_NO_WARNING.
664
e1cc194c
SK
6652007-07-09 Steven G. Kargl <kargl@gcc.gnu.org>
666
667 * trans-decl.c (set_tree_decl_type_code): Remove function.
668 (generate_local_decl): Remove reference to set_tree_decl_type_code.
669
33c0c5e9
DF
6702007-07-09 Daniel Franke <franke.daniel@gmail.com>
671
672 PR fortran/31129
673 * trans-decl.c (generate_local_decl) Emit a warning if an unused
674 parameter is found.
675
090b4ea8
DF
6762007-07-08 Daniel Franke <franke.daniel@gmail.com>
677
678 PR fortran/29876
679 * module.c (gfc_match_use): Do not set an non-existant
680 intrinsic operator if a user-defined operator is found.
681
534fd534
DF
6822007-07-08 Daniel Franke <franke.daniel@gmail.com>
683
684 PR fortran/24784
685 PR fortran/28004
686 * trans-decl.c (generate_local_decl): Adjusted warning on unused
687 dummy arguments, tell middle-end not to emit additional warnings.
688
3bed9dd0
DF
6892007-07-08 Daniel Franke <franke.daniel@gmail.com>
690