1 2014-02-01 Paul Thomas <pault@gcc.gnu.org>
4 * trans-stmt.c (gfc_trans_allocate): Before the pointer
5 assignment to transfer the source _vptr to a class allocate
6 expression, the final class reference should be exposed. The
7 tail that includes the _data and array references is stored.
8 This reduced expression is transferred to 'lhs' and the _vptr
9 added. Then the tail is restored to the allocate expression.
11 2014-01-26 Mikael Morin <mikael@gcc.gnu.org>
15 (fp2, find_pointer2): Remove.
16 (mio_component_ref): Don't forcedfully set the containing derived type
17 symbol for loading. Remove unused argument.
18 (mio_ref): Update caller
19 (skip_list): New argument nest_level. Initialize level with the new
21 (read_module): Add forced pointer components association for derived
24 2014-01-19 Paul Thomas <pault@gcc.gnu.org>
26 Backport from mainline
27 2013-12-01 Paul Thomas <pault@gcc.gnu.org>
30 * trans-array.c (gfc_alloc_allocatable_for_assignment): Do not
31 use the array bounds of an unallocated array but set its size
34 2014-01-19 Paul Thomas <pault@gcc.gnu.org>
36 Backport from mainline
37 2013-12-01 Paul Thomas <pault@gcc.gnu.org>
40 * resolve.c (resolve_transfer): EXPR_NULL is always in an
41 invalid context in a transfer statement.
43 2014-01-11 Janus Weil <janus@gcc.gnu.org>
45 Backport from mainline
46 2013-12-29 Janus Weil <janus@gcc.gnu.org>
50 * dump-parse-tree.c (show_typespec): Check for charlen.
51 * invoke.texi: Fix documentation of -fdump-fortran-optimized and
54 2014-01-04 Janus Weil <janus@gcc.gnu.org>
56 Backport from mainline
57 2014-01-02 Janus Weil <janus@gcc.gnu.org>
60 * resolve.c (resolve_typebound_procedures): No need to create the vtab
63 2013-12-31 Janus Weil <janus@gcc.gnu.org>
65 Backport from mainline
66 2013-12-30 Janus Weil <janus@gcc.gnu.org>
69 * resolve.c (resolve_symbol): Check that symbol is not only flavorless
72 2013-12-18 Janus Weil <janus@gcc.gnu.org>
74 Backport from mainline
75 2013-12-15 Janus Weil <janus@gcc.gnu.org>
78 * class.c (gfc_find_intrinsic_vtab): Handle BT_CLASS.
80 2013-11-30 Paul Thomas <pault@gcc.gnu.org>
82 Backport from mainline
83 2013-11-04 Paul Thomas <pault@gcc.gnu.org>
86 * trans-expr.c (gfc_conv_class_to_class): Remove spurious
89 2013-11-17 Janus Weil <janus@gcc.gnu.org>
91 Backport from mainline
92 2013-11-07 Janus Weil <janus@gcc.gnu.org>
95 * primary.c (gfc_expr_attr): Check for result symbol.
97 2013-11-16 Janus Weil <janus@gcc.gnu.org>
99 Backport from mainline
100 2013-09-20 Janus Weil <janus@gcc.gnu.org>
103 * expr.c (gfc_check_pointer_assign): Remove second call to
104 'gfc_compare_interfaces' with swapped arguments.
105 * interface.c (gfc_compare_interfaces): Symmetrize the call to
106 'check_result_characteristics' by calling it with swapped arguments.
108 2013-11-16 Paul Thomas <pault@gcc.gnu.org>
111 * trans-io.c (transfer_expr): If the backend_decl for a derived
112 type is missing, build it with gfc_typenode_for_spec.
114 2013-11-05 Steven G. Kargl <kargl@gcc.gnu.org>
117 * check.c (gfc_check_reshape): ensure that shape is a constant
120 2013-11-02 Janus Weil <janus@gcc.gnu.org>
122 Backport from mainline
123 2013-09-23 Janus Weil <janus@gcc.gnu.org>
126 * decl.c (check_extended_derived_type): Prevent segfault, modify error
129 2013-10-16 Release Manager
131 * GCC 4.8.2 released.
133 2013-10-04 Tobias Burnus <burnus@net-b.de>
135 Backport from mainline
136 2013-09-25 Tobias Burnus <burnus@net-b.de>
140 * resolve.c (generate_component_assignments): Avoid double free
141 at runtime and freeing a still-being used expr.
143 2013-08-24 Mikael Morin <mikael@gcc.gnu.org>
146 * trans-array.c (gfc_conv_ss_startstride, set_loop_bounds,
147 gfc_set_delta): Generate preliminary code before the outermost loop.
149 2013-08-24 Mikael Morin <mikael@gcc.gnu.org>
151 * trans-array.c (gfc_conv_section_startstride): Move &loop->pre access
153 (gfc_conv_ss_startstride, gfc_conv_expr_descriptor): Update callers.
155 2013-08-24 Janus Weil <janus@gcc.gnu.org>
158 2013-08-22 Janus Weil <janus@gcc.gnu.org>
161 * match.c (copy_ts_from_selector_to_associate): Only build class
162 container for polymorphic selector. Some cleanup.
164 2013-08-11 Janus Weil <janus@gcc.gnu.org>
167 2013-08-09 Janus Weil <janus@gcc.gnu.org>
170 * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Free the temporary
171 string, if necessary.
173 2013-07-28 Tobias Burnus <burnus@net-b.de>
175 Backport from mainline
176 2013-05-28 Dominique d'Humieres <dominiq@lps.ens.fr>
179 * module.c (check_for_ambiguous): Avoid null pointer deref.
181 2013-07-08 Tobias Burnus <burnus@net-b.de>
184 * simplify.c (compute_dot_product): Complex conjugate for
186 (gfc_simplify_dot_product, gfc_simplify_matmul): Update call.
188 2013-06-11 Tobias Burnus <burnus@net-b.de>
191 * resolve.c (get_temp_from_expr): Don't copy function
192 result attributes to temporary.
194 2013-06-04 Tobias Burnus <burnus@net-b.de>
196 Backport from mainline
197 2013-05-22 Tobias Burnus <burnus@net-b.de>
200 * resolve.c (get_temp_from_expr): Commit created sym.
202 2013-05-31 Janus Weil <janus@gcc.gnu.org>
203 Tobias Burnus <burnus@net-b.de>
206 * interface.c (check_dummy_characteristics): Symmetrize type check.
208 2013-05-31 Release Manager
210 * GCC 4.8.1 released.
212 2013-05-22 Janne Blomqvist <jb@gcc.gnu.org>
214 * intrinsic.texi (RANDOM_SEED): Improve example.
216 2013-05-07 Tobias Burnus <burnus@net-b.de>
218 Backport from mainline
219 2013-05-02 Tobias Burnus <burnus@net-b.de>
222 * simplify.c (gfc_simplify_size): Renamed from
223 simplify_size; fix kind=8 handling.
224 (gfc_simplify_size): New function.
225 (gfc_simplify_shape): Add range check.
226 * resolve.c (resolve_function): Fix handling
229 2013-04-26 Janus Weil <janus@gcc.gnu.org>
231 Backports from trunk:
234 * interface.c (check_result_characteristics): Get result from interface
238 * expr.c (gfc_check_pointer_assign): Handle generic functions returning
243 * check.c (gfc_calculate_transfer_sizes): Fix for array-valued SOURCE
245 * target-memory.h (gfc_element_size): New prototype.
246 * target-memory.c (size_array): Remove.
247 (gfc_element_size): New function.
248 (gfc_target_expr_size): Modified to always return the full size of the
251 2013-04-22 Thomas Koenig <tkoenig@gcc.gnu.org>
252 Mikael Morin <mikael@gcc.gnu.org>
255 * frontend-passes.c (copy_walk_reduction_arg): Change argument type
256 to gfc_constructor. If it has an iterator, wrap the copy of its
257 expression in an array constructor with that iterator. Don't special
258 case function expressions.
259 (callback_reduction): Update caller. Don't return early if there is
262 2013-04-18 Mikael Morin <mikael@gcc.gnu.org>
265 * match.c (gfc_match_select_type): Add syntax error. Move namespace
266 allocation and cleanup...
267 * parse.c (decode_statement): ... here.
269 2013-04-18 Tobias Burnus <burnus@net-b.de>
272 * invoke.texi (NEAREST): S argument is not optional.
274 2013-04-08 Thomas Koenig <tkoenig@gcc.gnu.org>
278 * frontend-passes.c (callback_reduction): Dont't do
279 any simplification if there is only a single element
280 which has an iterator.
282 2013-03-22 Release Manager
284 * GCC 4.8.0 released.
286 2013-03-15 Tobias Burnus <burnus@net-b.de>
289 * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Pack arrays
290 if they are not simply contiguous.
292 2013-03-11 Tobias Burnus <burnus@net-b.de>
294 * gfortran.texi (STRUCTURE and RECORD): State more clearly how
295 to convert them into derived types.
297 2013-03-10 Paul Thomas <pault@gcc.gnu.org>
300 * expr.c (gfc_default_initializer): Check that a class declared
301 type has any components.
302 * resolve.c (resolve_fl_derived0): On failing the test for C437
303 set the type to BT_UNKNOWN to prevent repeat error messages.
305 2013-03-03 Mikael Morin <mikael@gcc.gnu.org>
308 * expr.c (gfc_check_pointer_assign): Avoid NULL pointer dereference.
310 2013-03-03 Mikael Morin <mikael@gcc.gnu.org>
313 * array.c (gfc_match_array_constructor): Set a checkpoint before
314 matching a typespec. Drop it on success, restore it otherwise.
316 2013-03-03 Mikael Morin <mikael@gcc.gnu.org>
319 * gfortran.h (struct gfc_undo_change_set): New field 'previous'.
320 (gfc_new_undo_checkpoint, gfc_drop_last_undo_checkpoint,
321 gfc_restore_last_undo_checkpoint): New prototypes.
322 * symbol.c (default_undo_chgset_var): Update initialization.
323 (single_undo_checkpoint_p, gfc_new_undo_checkpoint,
324 free_undo_change_set_data, pop_undo_change_set,
325 gfc_drop_last_undo_checkpoint, enforce_single_undo_checkpoint):
327 (save_symbol_data): Handle multiple change sets. Make sure old_symbol
328 field's previous value is not overwritten. Clear gfc_new field.
329 (restore_old_symbol): Restore previous old_symbol field.
330 (gfc_restore_last_undo_checkpoint): New function, using body renamed
331 from gfc_undo_symbols. Restore the previous change set as current one.
332 (gfc_undo_symbols): New body.
333 (gfc_commit_symbols, gfc_commit_symbol, gfc_enforce_clean_symbol_state):
334 Call enforce_single_undo_checkpoint.
335 (gfc_symbol_done_2): Ditto. Free change set data.
337 2013-03-03 Mikael Morin <mikael@gcc.gnu.org>
339 * symbol.c (restore_old_symbol): Fix thinko.
341 2013-03-03 Mikael Morin <mikael@gcc.gnu.org>
343 * symbol.c (gfc_undo_symbols): Move code...
344 (restore_old_symbol): ... here as a new function.
346 2013-03-03 Mikael Morin <mikael@gcc.gnu.org>
348 * Make-lang.in (F95_PARSER_OBJS): Add dependency to vec.h.
349 * gfortran.h: Include vec.h.
350 (gfc_undo_change_set): New struct.
351 * symbol.c (tentative_tbp): Remove struct.
352 (changed_syms, tentative_tbp_list): Remove variables.
353 (default_undo_chgset_var, latest_undo_chgset): New variables.
354 (save_symbol_data, gfc_get_sym_tree, gfc_undo_symbols,
355 gfc_commit_symbols, gfc_commit_symbol,
356 gfc_enforce_clean_symbol_state, gfc_get_typebound_proc):
357 Use latest_undo_chgset instead of changed_syms and tentative_tbp_list.
359 2013-03-01 Tobias Burnus <burnus@net-b.de>
362 * iresolve.c (resolve_bound): Use gfc_get_string instead of xstrdup.
363 * symbol.c (free_components): Free proc-pointer components.
365 2013-03-01 Tobias Burnus <burnus@net-b.de>
367 * trans-decl.c (gfc_trans_deferred_vars): Free expr after use.
368 * trans-io.c (build_dt): Ditto.
370 2013-02-24 Joseph Myers <joseph@codesourcery.com>
372 * resolve.c (generate_component_assignments): Don't use UTF-8
373 ligature in diagnostic.
375 2013-02-21 Janus Weil <janus@gcc.gnu.org>
378 * trans-array.c (structure_alloc_comps): Handle procedure-pointer
379 components with allocatable result.
381 2012-02-21 Tobias Burnus <burnus@net-b.de>
384 * gfortran.texi (Part II: Language Reference, Extensions,
385 Non-Fortran Main Program): Sort @menu to match actual section order.
386 * intrinsic.texi (Intrinsic Procedures): Ditto.
387 (C_F_POINTER, PRECISION): Move to the alphabetically correct place.
389 2013-02-15 Tobias Burnus <burnus@net-b.de>
390 Mikael Morin <mikael@gcc.gnu.org>
393 * simplify.c (gfc_simplify_matmul): Fix result shape
396 2013-02-15 Tobias Burnus <burnus@net-b.de>
399 * resolve.c (apply_default_init_local): Don't create an
400 initializer for a result variable.
402 2013-02-14 Thomas Koenig <tkoenig@gcc.gnu.org>
405 * gfortran.h (gfc_add_include_path): Add boolean argument
407 * scanner.c (gfc_add_include_path): Pass along warn argument
409 * options.c (gfc_post_options): Add true warn argument to
410 gfc_add_include_path.
411 (gfc_handle_module_path_options): Likewise.
412 (gfc_handle_option): Also gfc_add_include_path for intrinsic
413 modules, without warning.
415 2013-02-14 Paul Thomas <pault@gcc.gnu.org>
416 Tobias Burnus <burnus@net-b.de>
419 * trans-decl.c (gfc_get_symbol_decl): Fix deferred-length
420 results for functions without extra result variable.
423 2013-01-30 Tobias Burnus <burnus@net-b.de>
426 * trans-decl.c (gfc_trans_deferred_vars): Fix deferred-length
427 results for functions without extra result variable.
429 2013-02-12 Janus Weil <janus@gcc.gnu.org>
432 * resolve.c (resolve_call): Do not check deferred procedures for
435 2013-02-09 Paul Thomas <pault@gcc.gnu.org>
438 * check.c (array_check): It is an error if a procedure is
441 2013-02-08 Mikael Morin <mikael@gcc.gnu.org>
444 * trans-types.c (gfc_get_function_type): Change a NULL backend_decl
445 to error_mark_node on entry. Detect recursive types. Build a variadic
446 procedure type if the type is recursive. Restore the initial
449 2013-02-07 Tobias Burnus <burnus@net-b.de>
452 * gfortran.texi (Standards): Mention TS29113.
453 (Varying Length Character): Mention deferred-length
455 (Fortran 2003 Status): Add unlimited polymorphic.
456 (TS 29113 Status): Add TYPE(*) and DIMENSION(..).
457 (C Interop): Update the section about TS29113.
459 2013-02-06 Paul Thomas <pault@gcc.gnu.org>
462 * trans-array.c (trans_array_constructor): Remove condition
463 'dynamic' = true if the loop ubound is a VAR_DECL.
465 2013-02-04 Paul Thomas <pault@gcc.gnu.org>
469 * trans-array.c (gfc_alloc_allocatable_for_assignment): Save
470 the lhs descriptor before it is modified for reallocation. Use
471 it to deallocate allocatable components in the reallocation
472 block. Nullify allocatable components for newly (re)allocated
475 2013-02-04 Mikael Morin <mikael@gcc.gnu.org>
478 * resolve.c (resolve_typebound_procedures): Recurse through
481 2013-02-04 Mikael Morin <mikael@gcc.gnu.org>
485 * gfortran.h (struct gfc_symbol): New field 'resolved'.
486 * resolve.c (resolve_fl_var_and_proc): Don't skip result symbols.
487 (resolve_symbol): Skip duplicate calls. Don't check the current
490 2013-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
494 * decl.c (gfc_match_end): Remove half-ready namespace
495 from parent if the end of a block is missing.
496 * parse.c (parse_module): Do not put namespace into
499 2013-01-30 Tobias Burnus <burnus@net-b.de>
502 * trans-decl.c (gfc_trans_deferred_vars): Fix deferred-length
503 results for functions without extra result variable.
505 2013-01-29 Janus Weil <janus@gcc.gnu.org>
506 Mikael Morin <mikael@gcc.gnu.org>
509 * gfortran.h (gfc_component): Delete members 'formal' and 'formal_ns'.
510 (gfc_copy_formal_args,gfc_copy_formal_args_ppc,gfc_expr_replace_symbols,
511 gfc_expr_replace_comp): Delete.
512 (gfc_sym_get_dummy_args): New prototype.
513 * dependency.c (gfc_check_fncall_dependency): Use
514 'gfc_sym_get_dummy_args'.
515 * expr.c (gfc_is_constant_expr): Ditto.
516 (replace_symbol,gfc_expr_replace_symbols,replace_comp,
517 gfc_expr_replace_comp): Deleted.
518 * frontend-passes.c (doloop_code,do_function): Use
519 'gfc_sym_get_dummy_args'.
520 * interface.c (gfc_check_operator_interface,gfc_compare_interfaces,
521 gfc_procedure_use,gfc_ppc_use,gfc_arglist_matches_symbol,
522 gfc_check_typebound_override): Ditto.
523 * module.c (MOD_VERSION): Bump module version.
524 (mio_component): Do not read/write 'formal' and 'formal_ns'.
525 * resolve.c (resolve_procedure_interface,resolve_fl_derived0): Do not
526 copy formal args, but just keep a pointer to the interface.
527 (resolve_function,resolve_call,resolve_typebound_generic_call,
528 resolve_ppc_call,resolve_expr_ppc,generate_component_assignments,
529 resolve_fl_procedure,gfc_resolve_finalizers,check_generic_tbp_ambiguity,
530 resolve_typebound_procedure,check_uop_procedure): Use
531 'gfc_sym_get_dummy_args'.
532 * symbol.c (free_components): Do not free 'formal' and 'formal_ns'.
533 (gfc_copy_formal_args,gfc_copy_formal_args_ppc): Deleted.
534 (gfc_sym_get_dummy_args): New function.
535 * trans-array.c (get_array_charlen,gfc_walk_elemental_function_args):
536 Use 'gfc_sym_get_dummy_args'.
537 * trans-decl.c (build_function_decl,create_function_arglist,
538 build_entry_thunks,init_intent_out_dt,gfc_trans_deferred_vars,
539 add_argument_checking): Ditto.
540 * trans-expr.c (gfc_map_fcn_formal_to_actual,gfc_conv_procedure_call,
541 gfc_conv_statement_function): Ditto.
542 * trans-stmt.c (gfc_conv_elemental_dependencies): Ditto.
543 * trans-types.c (create_fn_spec,gfc_get_function_type): Ditto.
545 2013-01-28 Tobias Burnus <burnus@net-b.de>
546 Mikael Morin <mikael@gcc.gnu.org>
549 * symbol.c (gfc_find_sym_tree): Don't look for the symbol outside an
551 (gfc_get_ha_symtree): Let gfc_find_sym_tree lookup the parent namespace.
552 * decl.c (gfc_match_data_decl): Ditto.
553 (variable_decl): Remove undeclared type error.
554 (gfc_match_import): Use renamed instead of original name.
556 2013-01-27 Paul Thomas <pault@gcc.gnu.org>
560 * gfortran.h : Add associate_var to symbol_attr.
561 * resolve.c (resolve_assoc_var): Set associate_var attribute.
562 If the target class_ok is set, set it for the associate
564 * check.c (allocatable_check): Associate variables should not
565 have the allocatable attribute even if their symbols do.
566 * class.c (gfc_build_class_symbol): Symbols with associate_var
567 set will always have a good class container.
569 2013-01-23 Janus Weil <janus@gcc.gnu.org>
572 * resolve.c (resolve_select): Add argument 'select_type', reject
573 non-scalar expressions.
574 (resolve_select_type,resolve_code): Pass new argument to
577 2013-01-23 Jakub Jelinek <jakub@redhat.com>
580 * trans-decl.c (gfc_get_symbol_decl): Set DECL_ARTIFICIAL
581 and DECL_IGNORED_P on select_type_temporary and don't set
584 2013-01-21 Thomas Koenig <tkoenig@gcc.gnu.org>
587 * scanner.c (add_path_to_list): Copy path to temporary and strip
588 trailing directory separators before calling stat().
590 2013-01-17 Richard Biener <rguenther@suse.de>
592 * trans-stmt.c (gfc_trans_do): Conditionally compute countm1
593 dependent on sign of step, avoids repeated evaluation of
594 step sign test. Avoid undefined overflow issues by using unsigned
597 2013-01-16 Janus Weil <janus@gcc.gnu.org>
600 * class.c (find_typebound_proc_uop): Check for f2k_derived instead of
603 2013-01-16 Jakub Jelinek <jakub@redhat.com>
604 Tobias Burnus <burnus@net-b.de>
607 * lang.opt (fintrinsic-modules-path): Don't accept Joined.
608 (fintrinsic-modules-path=): New.
609 * options.c (gfc_handle_option, gfc_get_option_string,
610 gfc_get_option_string): Handle the latter.
612 2013-01-16 Jakub Jelinek <jakub@redhat.com>
615 * trans-stmt.c (gfc_trans_do): Put countm1-- before conditional
616 and use value of countm1 before the decrement in the condition.
618 2013-01-15 Paul Thomas <pault@gcc.gnu.org>
621 * expr.c (gfc_check_pointer_assign): Check for presence of
622 's2' before using it.
624 2013-01-14 Thomas Koenig <tkoenig@gcc.gnu.org>
627 * frontend-passes.c (optimize_reduction): New function,
629 (callback_reduction): Likewise.
630 (gfc_run_passes): Also run optimize_reduction.
631 (copy_walk_reduction_arg): New function.
632 (dummy_code_callback): New function.
634 2013-01-13 Jakub Jelinek <jakub@redhat.com>
637 * trans-expr.c (gfc_conv_structure): Call
638 unshare_expr_without_location on the ctor elements.
640 2013-01-13 Paul Thomas <pault@gcc.gnu.org>
643 * expr.c (gfc_check_pointer_assign): Ensure that both lvalue
644 and rvalue interfaces are presented to gfc_compare_interfaces.
645 Simplify references to interface names by using the symbols
646 themselves. Call gfc_compare_interfaces with s1 and s2 inter-
647 changed to overcome the asymmetry of this function. Do not
648 repeat the check for the presence of s1 and s2.
650 2013-01-12 Janus Weil <janus@gcc.gnu.org>
653 * trans-array.c (gfc_conv_array_parameter): No packing was done for
654 full arrays of derived type.
656 2013-01-08 Paul Thomas <pault@gcc.gnu.org>
659 * class.c (get_unique_type_string): Change $tar to STAR and
660 replace sprintf by strcpy where there is no formatting.
661 * decl.c (gfc_match_decl_type_spec): Change $tar to STAR.
663 2013-01-09 Mikael Morin <mikael@gcc.gnu.org>
666 * module.c (check_for_ambiguous): Get the current program unit using
669 2013-01-09 Tobias Burnus <burnus@net-b.de>
672 * resolve.c (resolve_symbol): Reject non-C_Bool logicals
673 in BIND(C) procedures with -std=f*.
675 2013-01-08 Paul Thomas <pault@gcc.gnu.org>
678 * trans-expr.c (gfc_conv_procedure_call): Dereference scalar
679 character function arguments to elemental procedures in
682 2013-01-07 Tobias Burnus <burnus@net-b.de>
685 * gfortran.h (gfc_check_assign_symbol): Update prototype.
686 * decl.c (add_init_expr_to_sym, do_parm): Update call.
687 * expr.c (gfc_check_assign_symbol): Handle BT_CLASS and
688 improve error location; support components.
689 (gfc_check_pointer_assign): Handle component assignments.
690 * resolve.c (resolve_fl_derived0): Call gfc_check_assign_symbol.
691 (resolve_values): Update call.
692 (resolve_structure_cons): Avoid double diagnostic.
694 2013-01-07 Tobias Burnus <burnus@net-b.de>
695 Thomas Koenig <tkoenig@gcc.gnu.org>
698 * expr.c (gfc_build_intrinsic_call): Avoid clashes
699 with user's procedures.
700 * gfortran.h (gfc_build_intrinsic_call): Update prototype.
701 * simplify.c (gfc_simplify_size): Update call.
702 * class.c (finalization_scalarizer, finalization_get_offset,
703 finalizer_insert_packed_call, generate_finalization_wrapper):
704 Clean up by using gfc_build_intrinsic_call.
706 2013-01-07 Tobias Burnus <burnus@net-b.de>
709 * resolve.c (resolve_select_type): Reject intrinsic types for
710 a non-unlimited-polymorphic selector.
712 2013-01-06 Paul Thomas <pault@gcc.gnu.org>
717 * trans-array.c (build_array_ref): Check the TYPE_CANONICAL
718 to see if it is GFC_CLASS_TYPE_P.
719 * trans-expr.c (gfc_get_vptr_from_expr): The same.
720 (gfc_conv_class_to_class): If the types are not the same,
721 cast parmese->expr to the type of ctree.
722 * trans-types.c (gfc_get_derived_type): GFC_CLASS_TYPE_P of
723 CLASS components must be set.
725 2013-01-06 Mikael Morin <mikael@gcc.gnu.org>
730 * module.c (read_module): Don't reuse local symtree if the associated
731 symbol isn't exactly the one wanted. Don't reuse local symtree if it is
733 * resolve.c (resolve_call): Use symtree's name instead of symbol's to
736 2013-01-05 Steven G. Kargl <kargl@gcc.gnu.org>
737 Mikael Morin <mikael@gcc.gnu.org>
740 * class.c (gfc_fix_class_refs): Adapt ts initialization for the case
742 * trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it.
744 2013-01-05 Tobias Burnus <burnus@net-b.de>
746 * class.c (finalize_component): Used passed offset expr.
747 (finalization_get_offset): New static function.
748 (finalizer_insert_packed_call, generate_finalization_wrapper): Use it
749 to handle noncontiguous arrays.
751 2013-01-04 Tobias Burnus <burnus@net-b.de>
753 * trans.c (gfc_build_final_call): New function.
754 * trans.h (gfc_build_final_call, gfc_conv_scalar_to_descriptor):
755 New function prototypes.
756 * trans-expr.c (gfc_conv_scalar_to_descriptor): Renamed from
757 conv_scalar_to_descriptor, removed static attribute.
758 (gfc_conv_procedure_call): Honor renaming.
760 2013-01-04 Tobias Burnus <burnus@net-b.de>
762 * intrinsic.c (add_functions): New internal intrinsic
763 function GFC_PREFIX ("stride").
764 * gfortran.h (gfc_isym_id): Add GFC_ISYM_STRIDE.
765 * intrinsic.h (gfc_resolve_stride): New prototypes.
766 * iresolve.c (gfc_resolve_stride): New function.
767 * trans-intrinsic.c (conv_intrinsic_stride): New static
769 (gfc_conv_intrinsic_function): Use it.
771 2013-01-04 Tobias Burnus <burnus@net-b.de>
773 * class.c (gfc_find_intrinsic_vtab): Add _final
775 * decl.c (gfc_match_null): Remove superfluous
776 variadic argument to gfc_match.
778 2013-01-04 Paul Thomas <pault@gcc.gnu.org>
781 * match.c (copy_ts_from_selector_to_associate): Remove call to
782 gfc_resolve_expr and replace it with explicit setting of the
783 array reference type.
784 * resolve.c (resolve_select_type): It is an error if the
785 selector is coindexed.
787 2013-01-04 Tobias Burnus <burnus@net-b.de>
790 * decl.c (gfc_match_null): Parse and reject MOLD.
792 2013-01-04 Tobias Burnus <burnus@net-b.de>
796 * class.c (gfc_class_null_initializer): Fix finding the vtab.
797 (gfc_find_intrinsic_vtab): Use BT_VOID for some components.
799 2013-01-03 Janus Weil <janus@gcc.gnu.org>
802 * expr.c (gfc_check_assign): Use 'gfc_expr_attr' to evaluate attributes
803 of rvalue. Correct hyphenation in error message.
805 2013-01-03 Jakub Jelinek <jakub@redhat.com>
807 * gfortranspec.c (lang_specific_driver): Update copyright notice
810 Copyright (C) 2013 Free Software Foundation, Inc.
812 Copying and distribution of this file, with or without modification,
813 are permitted in any medium without royalty provided the copyright
814 notice and this notice are preserved.