| 2013-12-30 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58998 | |
| * resolve.c (resolve_symbol): Check that symbol is not only flavorless | |
| but also untyped. | |
| 2013-12-29 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59612 | |
| * dump-parse-tree.c (show_typespec): Check for charlen. | |
| * invoke.texi: Fix documentation of -fdump-fortran-optimized and | |
| -fdump-parse-tree. | |
| 2013-12-18 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59493 | |
| * gfortran.h (gfc_find_intrinsic_vtab): Removed prototype. | |
| (gfc_find_vtab): New prototype. | |
| * class.c (gfc_find_intrinsic_vtab): Rename to 'find_intrinsic_vtab' and | |
| make static. Minor modifications. | |
| (gfc_find_vtab): New function. | |
| (gfc_class_initializer): Use new function 'gfc_find_vtab'. | |
| * check.c (gfc_check_move_alloc): Ditto. | |
| * expr.c (gfc_check_pointer_assign): Ditto. | |
| * interface.c (compare_actual_formal): Ditto. | |
| * resolve.c (resolve_allocate_expr, resolve_select_type): Ditto. | |
| * trans-expr.c (gfc_conv_intrinsic_to_class, gfc_trans_class_assign): | |
| Ditto. | |
| * trans-intrinsic.c (conv_intrinsic_move_alloc): Ditto. | |
| * trans-stmt.c (gfc_trans_allocate): Ditto. | |
| 2013-12-16 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/54949 | |
| * symbol.c (check_conflict): Forbid abstract procedure pointers. | |
| (gfc_add_abstract): Check for attribute conflicts. | |
| 2013-12-16 Jakub Jelinek <jakub@redhat.com> | |
| PR libgomp/59337 | |
| * openmp.c (resolve_omp_atomic): Adjust error message. | |
| 2013-12-15 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59493 | |
| * class.c (gfc_find_intrinsic_vtab): Handle BT_CLASS. | |
| 2013-12-14 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59502 | |
| * primary.c (gfc_match_varspec): Check for 'class_ok'. | |
| 2013-12-14 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59450 | |
| * module.c (mio_expr): Handle type-bound function expressions. | |
| 2013-12-12 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/59440 | |
| * trans-decl.c (generate_namelist_decl): Ensure debug DIE | |
| is created by setting DECL_IGNORED_P to 0. | |
| 2013-12-11 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58916 | |
| * resolve.c (conformable_arrays): Treat scalar 'e2'. | |
| (resolve_allocate_expr): Check rank also for unlimited-polymorphic | |
| variables. | |
| 2013-12-10 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/35831 | |
| * interface.c (check_dummy_characteristics): Add checks for several | |
| attributes. | |
| 2013-12-10 Janus Weil <janus@gcc.gnu.org> | |
| * gfortran.texi: Add possible kind values (and default) for | |
| DOUBLE PRECISION. | |
| * invoke.texi: Correct documentation of -fdefault-integer-8, | |
| -fdefault-real-8 and -fdefault-double-8. | |
| 2013-12-10 Janus Weil <janus@gcc.gnu.org> | |
| * gfortran.texi: Modify documentation of kind type parameters. | |
| * invoke.texi: Extend documentation of -fdefault-integer-8 and | |
| -fdefault-real-8. | |
| 2013-12-10 Janus Weil <janus@gcc.gnu.org> | |
| * invoke.texi: Add -freal-4-real-16. Rearrange kind promotion options. | |
| 2013-12-08 Tobias Burnus <burnus@net-b.de> | |
| Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58099 | |
| PR fortran/58676 | |
| PR fortran/41724 | |
| * resolve.c (gfc_resolve_intrinsic): Set elemental/pure. | |
| (resolve_fl_procedure): Reject pure dummy procedures/procedure | |
| pointers. | |
| (gfc_explicit_interface_required): Don't require a | |
| match of ELEMENTAL for intrinsics. | |
| 2013-12-07 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59414 | |
| * resolve.c (resolve_specific_f0): Handle CLASS-valued functions. | |
| 2013-12-04 Tobias Burnus <burnus@net-b.de> | |
| PR debug/37132 | |
| * trans-decl.c (generate_namelist_decl, create_module_nml_decl): | |
| New static functions. | |
| (gfc_generate_module_vars, generate_local_vars): Call them. | |
| (gfc_trans_use_stmts): Handle namelists for debug genertion. | |
| 2013-12-01 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/57354 | |
| * trans-array.c (gfc_conv_resolve_dependencies): For other than | |
| SS_SECTION, do a dependency check if the lhs is liable to be | |
| reallocated. | |
| 2013-12-01 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/58410 | |
| * trans-array.c (gfc_alloc_allocatable_for_assignment): Do not | |
| use the array bounds of an unallocated array but set its size | |
| to zero instead. | |
| 2013-12-01 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/34547 | |
| * resolve.c (resolve_transfer): EXPR_NULL is always in an | |
| invalid context in a transfer statement. | |
| 2013-11-28 Sergey Ostanevich <sergos.gnu@gmail.com> | |
| * lang.opt (Wopenmp-simd): New. | |
| 2013-11-25 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59143 | |
| * interface.c (get_expr_storage_size): Handle array-valued type-bound | |
| procedures. | |
| 2013-11-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
| * scanner.c (gfc_open_intrinsic_module): Remove function. | |
| * gfortran.h (gfc_open_intrinsic_module): Remove prototype. | |
| 2013-11-23 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/59228 | |
| * interface.c (compare_parameter): Check for array spec. | |
| 2013-11-22 Andrew MacLeod <amacleod@redhat.com> | |
| * trans.c: Add required include files from gimple.h. | |
| * trans-expr.c: Likewise | |
| * trans-openmp.c: Likewise | |
| 2013-11-22 David Malcolm <dmalcolm@redhat.com> | |
| * trans.c (trans_runtime_error_vararg): Remove use of input_line | |
| macro. | |
| 2013-11-17 Andrew MacLeod <amacleod@redhat.com> | |
| * fortran/trans-intrinsic.c: Include tree-nested.h. | |
| 2013-11-14 Andrew MacLeod <amacleod@redhat.com> | |
| * trans-expr.c: Include only gimplify.h and gimple.h as needed. | |
| * trans-openmp.c: Likewise. | |
| 2013-11-14 Diego Novillo <dnovillo@google.com> | |
| * decl.c: Include stringpool.h. | |
| * iresolve.c: Include stringpool.h. | |
| * match.c: Include stringpool.h. | |
| * module.c: Include stringpool.h. | |
| * target-memory.c: Include stor-layout.h. | |
| * trans-common.c: Include stringpool.h. | |
| Include stor-layout.h. | |
| Include varasm.h. | |
| * trans-const.c: Include stor-layout.h. | |
| * trans-decl.c: Include stringpool.h. | |
| Include stor-layout.h. | |
| Include varasm.h. | |
| Include attribs.h. | |
| * trans-expr.c: Include stringpool.h. | |
| * trans-intrinsic.c: Include stringpool.h. | |
| Include tree-nested.h. | |
| Include stor-layout.h. | |
| * trans-io.c: Include stringpool.h. | |
| Include stor-layout.h. | |
| * trans-openmp.c: Include stringpool.h. | |
| * trans-stmt.c: Include stringpool.h. | |
| * trans-types.c: Include stor-layout.h. | |
| Include stringpool.h. | |
| * trans.c: Include stringpool.h. | |
| 2013-11-12 Andrew MacLeod <amacleod@redhat.com> | |
| * f95-lang.c: Don't include gimple.h. | |
| * trans-array.c: Include gimple-expr.h instead of gimple.h. | |
| * trans.c: Likewise. | |
| * trans-decl.c: Likewise. | |
| * trans-expr.c: Include gimplify.h. | |
| * trans-openmp.c: Likewise. | |
| 2013-11-07 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58471 | |
| * primary.c (gfc_expr_attr): Check for result symbol. | |
| 2013-11-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
| * gfortran.texi: Fix typo. | |
| 2013-11-05 Tobias Burnus <burnus@net-b.de> | |
| * lang.opt (-Wdate-time): New option | |
| * cpp.c (gfc_cpp_option_data): Add warn_date_time. | |
| (gfc_cpp_init_options, gfc_cpp_handle_option, | |
| gfc_cpp_post_options): Handle it and pass on to libcpp. | |
| 2013-11-05 Steven G. Kargl <kargl@gcc.gnu.org> | |
| PR fortran/58989 | |
| * check.c (gfc_check_reshape): ensure that shape is a constant | |
| expression. | |
| 2013-11-05 Tobias Burnus <burnus@net-b.de> | |
| * lang.opt (fopenmp-simd): New option. | |
| * gfortran.h (gfc_option_t): Add gfc_flag_openmp_simd. | |
| * options.c (gfc_handle_option): Handle it. | |
| 2013-11-04 Ian Lance Taylor <iant@google.com> | |
| * f95-lang.c (ATTR_LEAF_LIST): Define. | |
| 2013-11-04 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/58771 | |
| * trans-io.c (transfer_expr): If the backend_decl for a derived | |
| type is missing, build it with gfc_typenode_for_spec. | |
| 2013-11-04 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/57445 | |
| * trans-expr.c (gfc_conv_class_to_class): Remove spurious | |
| assert. | |
| 2013-10-29 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/44350 | |
| * parse.c (parse_spec): Add C1116 constraint | |
| check for BLOCK DATA. | |
| 2013-10-29 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/58793 | |
| * trans-types.c (gfc_typenode_for_spec): Add typenode for | |
| BT_HOLLERITH. Note that the length is incorrect but unusable. | |
| PR fortran/58858 | |
| * target-memory.c (gfc_element_size): Add element sizes for | |
| BT_VOID and BT_ASSUMED, using gfc_typenode_for_spec. | |
| 2013-10-24 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/44646 | |
| * trans-stmt.c (struct forall_info): Add do_concurrent field. | |
| (gfc_trans_forall_1): Set it for do concurrent. | |
| (gfc_trans_forall_loop): Mark those as annot_expr_ivdep_kind. | |
| 2013-10-23 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58793 | |
| * interface.c (compare_parameter): Reject passing TYPE(*) | |
| to CLASS(*). | |
| 2013-10-22 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran 57893 | |
| * class.c : Include target-memory.h. | |
| (gfc_find_intrinsic_vtab) Build a minimal expression so that | |
| gfc_element_size can be used to obtain the storage size, rather | |
| that the kind value. | |
| 2013-10-21 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58803 | |
| * decl.c (match_ppc_decl): Prevent later | |
| double free. | |
| 2013-10-17 Andrew MacLeod <amacleod@redhat.com> | |
| * trans-openmp.c: Include omp-low.h. | |
| 2013-10-16 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58652 | |
| * interface.c (compare_parameter): Accept passing CLASS(*) | |
| to CLASS(*). | |
| 2013-10-16 Tobias Burnus <burnus@net-b.de> | |
| * intrinsic.texi (OpenMP Modules): Update to OpenMPv4. | |
| Document omp_proc_bind_kind. | |
| 2013-10-15 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58652 | |
| * trans-intrinsic.c (conv_intrinsic_move_alloc): Fix handling | |
| of CLASS(*) variables. | |
| 2013-10-14 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58658 | |
| * expr.c (gfc_check_vardef_context): Fix pointer diagnostic | |
| for CLASS(*). | |
| 2013-10-11 Jakub Jelinek <jakub@redhat.com> | |
| * trans-openmp.c (gfc_omp_clause_default_ctor, | |
| gfc_omp_clause_dtor): Return NULL for OMP_CLAUSE_REDUCTION. | |
| * f95-lang.c (ATTR_NULL, DEF_FUNCTION_TYPE_8): Define. | |
| * types.def (DEF_FUNCTION_TYPE_8): Document. | |
| (BT_FN_VOID_OMPFN_PTR_UINT, | |
| BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG, | |
| BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG, | |
| BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT): Remove. | |
| (BT_FN_VOID_OMPFN_PTR_UINT_UINT_UINT, | |
| BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT, | |
| BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT, | |
| BT_FN_BOOL_INT, BT_FN_BOOL_INT_BOOL, BT_FN_VOID_UINT_UINT, | |
| BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR, | |
| BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR, | |
| BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR): New. | |
| 2013-10-10 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58226 | |
| * options.c (gfc_get_option_string): Handle zero arg case. | |
| 2013-10-02 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58593 | |
| * trans-expr.c (gfc_conv_string_tmp): Fix obtaining | |
| the byte size of a single character. | |
| 2013-10-01 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58579 | |
| * trans-expr.c (gfc_conv_string_tmp): Correctly obtain | |
| the byte size of a single character. | |
| 2013-09-27 Janne Blomqvist <jb@gcc.gnu.org> | |
| * intrinsic.texi (DATE_AND_TIME): Fix example. | |
| 2013-09-25 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58436 | |
| * class.c (generate_finalization_wrapper): Handle CLASS(*). | |
| 2013-09-25 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57697 | |
| PR fortran/58469 | |
| * resolve.c (generate_component_assignments): Avoid double free | |
| at runtime and freeing a still-being used expr. | |
| 2013-09-25 Tom Tromey <tromey@redhat.com> | |
| * Make-lang.in (fortran_OBJS): Use fortran/gfortranspec.o. | |
| (gfortranspec.o): Remove. | |
| (CFLAGS-fortran/gfortranspec.o): New variable. | |
| (GFORTRAN_D_OBJS): Update. | |
| ($(F95_PARSER_OBJS), fortran/openmp.o, GFORTRAN_TRANS_DEPS) | |
| (fortran/f95-lang.o, fortran/scanner.o, fortran/convert.o) | |
| (fortran/frontend-passes.o, fortran/trans.o, fortran/trans-decl.o) | |
| (fortran/trans-types, fortran/trans-const.o, fortran/trans-expr.o) | |
| (fortran/trans-stmt.o, fortran/trans-openmp.o, fortran/trans-io.o) | |
| (fortran/trans-array.o, fortran/trans-intrinsic.o) | |
| (fortran/dependency.o, fortran/trans-common.o, fortran/resolve.o) | |
| (fortran/data.o, fortran/options.o, fortran/cpp.o) | |
| (fortran/scanner.o, fortran/module.o): Remove. | |
| 2013-09-25 Tom Tromey <tromey@redhat.com> | |
| * Make-lang.in (gfortranspec.o): Don't use subshell. | |
| 2013-09-23 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58355 | |
| * decl.c (check_extended_derived_type): Prevent segfault, modify error | |
| message. | |
| 2013-09-20 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58099 | |
| * expr.c (gfc_check_pointer_assign): Remove second call to | |
| 'gfc_compare_interfaces' with swapped arguments. | |
| * interface.c (gfc_compare_interfaces): Symmetrize the call to | |
| 'check_result_characteristics' by calling it with swapped arguments. | |
| 2013-09-18 Tobias Burnus <burnus@net-b.de> | |
| * expr.c (gfc_check_assign_symbol): Free lvalue.ref. | |
| 2013-09-18 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/43366 | |
| * primary.c (gfc_variable_attr): Also handle codimension. | |
| * resolve.c (resolve_ordinary_assign): Add invalid-diagnostic for | |
| polymorphic assignment. | |
| 2013-09-16 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/58356 | |
| * class.c (generate_finalization_wrapper): Init proc_tree if | |
| not yet resolved. | |
| 2013-09-16 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57697 | |
| * resolve.c (generate_component_assignments): Correctly handle the | |
| case that the LHS is not allocated. | |
| 2013-09-15 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57697 | |
| * resolve.c (generate_component_assignments): Handle unallocated | |
| LHS with defined assignment of components. | |
| 2013-09-12 Brooks Moses <bmoses@google.com> | |
| PR driver/42955 | |
| * Make-lang.in: Do not install driver binaries in $(target)/bin. | |
| 2013-09-09 Tobias Burnus <burnus@net-b.de> | |
| * invoke.texi (Error and Warning Options): Add hyphen. | |
| 2013-09-02 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/PR56519 | |
| * gfortran.h: Declare gfc_do_concurrent_flag as extern. | |
| * resolve.c: Rename do_concurrent_flag to gfc_do_concurrent_flag | |
| and make non-static. | |
| (resolve_function): Use gfc_do_concurrent_flag instead of | |
| do_concurrent_flag. | |
| (pure_subroutine): Likewise. | |
| (resolve_code): Likewise. | |
| (resolve_types): Likewise. | |
| * intrinsic.c (gfc_intrinsic_sub_interface): Raise error for | |
| non-pure intrinsic subroutines within DO CONCURRENT. | |
| 2013-08-29 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/52243 | |
| * trans-expr.c (is_runtime_conformable): New function. | |
| * gfc_trans_assignment_1: Use it. | |
| 2013-08-26 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/58146 | |
| * array.c (gfc_ref_dimen_size): If possible, use | |
| gfc_dep_difference to calculate array refrence | |
| sizes. Fall back to integer code otherwise. | |
| * dependency.c (discard_nops). Move up. | |
| Also discarde widening integer conversions. | |
| (gfc_dep_compare_expr): Use discard_nops. | |
| 2013-08-23 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/57798 | |
| * trans-array.c (gfc_conv_ss_startstride, set_loop_bounds, | |
| gfc_set_delta): Generate preliminary code before the outermost loop. | |
| 2013-08-23 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/57843 | |
| * interface.c (gfc_extend_assign): Look for type-bound assignment | |
| procedures before non-typebound. | |
| 2013-08-23 Mikael Morin <mikael@gcc.gnu.org> | |
| * trans-array.c (gfc_conv_section_startstride): Move &loop->pre access | |
| to the callers. | |
| (gfc_conv_ss_startstride, gfc_conv_expr_descriptor): Update callers. | |
| 2013-08-22 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58185 | |
| * match.c (copy_ts_from_selector_to_associate): Only build class | |
| container for polymorphic selector. Some cleanup. | |
| 2013-08-20 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/53655 | |
| * trans-decl.c (generate_local_decl): Check if type has any components. | |
| 2013-08-19 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/46271 | |
| * openmp.c (resolve_omp_clauses): Bugfix for procedure pointers. | |
| 2013-08-12 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/56666 | |
| * gfortran.h (gfc_option_t): Add warn_zerotrip. | |
| * invoke.texi (-Wzerotrip): Document option. | |
| * lang.opt (Wzerotrip): Add. | |
| * options.c (gfc_init_options): Initialize warn_zerotrip. | |
| (set_Wall): Add handling of warn_zerotrip. | |
| (gfc_handle_option): Handle OPT_Wzerotrip. | |
| * resolve.c (gfc_resolve_iterator): Honor | |
| gfc_option.warn_zerotrip; update error message to show | |
| how to suppress the warning. | |
| 2013-08-09 Janus Weil <janus@gcc.gnu.org> | |
| * gfortran.h (gfc_get_code): Modified prototype. | |
| * class.c (finalize_component, finalization_scalarizer, | |
| finalization_get_offset, finalizer_insert_packed_call, | |
| generate_finalization_wrapper, gfc_find_derived_vtab, | |
| gfc_find_intrinsic_vtab): Use 'gfc_get_code'. | |
| * io.c (match_io_iterator, match_io_element, terminate_io, get_io_list, | |
| gfc_match_inquire): Call 'gfc_get_code' with argument. | |
| * match.c (match_simple_forall, gfc_match_forall, gfc_match_goto, | |
| gfc_match_nullify, gfc_match_call, match_simple_where, gfc_match_where): | |
| Ditto. | |
| * parse.c (new_level): Ditto. | |
| (add_statement): Use XCNEW. | |
| * resolve.c (resolve_entries, resolve_allocate_expr, | |
| resolve_select_type, build_assignment, build_init_assign): Call | |
| 'gfc_get_code' with argument. | |
| * st.c (gfc_get_code): Add argument 'op'. | |
| * trans-expr.c (gfc_trans_class_array_init_assign): Call 'gfc_get_code' | |
| with argument. | |
| * trans-stmt.c (gfc_trans_allocate): Ditto. | |
| 2013-08-09 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/58058 | |
| * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Free the temporary | |
| string, if necessary. | |
| 2013-08-06 Martin Jambor <mjambor@suse.cz> | |
| PR fortran/57987 | |
| * trans-decl.c (gfc_generate_function_code): Never call | |
| cgraph_finalize_function on nested functions. | |
| 2013-08-06 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/57306 | |
| * class.c (gfc_class_null_initializer): Rename to | |
| 'gfc_class_initializer'. Treat non-NULL init-exprs. | |
| * gfortran.h (gfc_class_null_initializer): Update prototype. | |
| * trans-decl.c (gfc_get_symbol_decl): Treat class variables. | |
| * trans-expr.c (gfc_conv_initializer): Ditto. | |
| (gfc_trans_subcomponent_assign): Renamed gfc_class_null_initializer. | |
| 2013-07-30 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57530 | |
| * symbol.c (gfc_type_compatible): A type is type compatible with | |
| a class if both have the same declared type. | |
| * interface.c (compare_type): Reject CLASS/TYPE even if they | |
| are type compatible. | |
| 2013-07-30 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57530 | |
| * trans-expr.c (gfc_trans_class_assign): Handle CLASS array | |
| functions. | |
| (gfc_trans_pointer_assign): Ditto and support pointer assignment of | |
| a polymorphic var to a nonpolymorphic var. | |
| 2013-07-22 Po Chang <pchang9@cs.wisc.edu> | |
| * match.c (gfc_match_call): Exit loop after setting i. | |
| * resolve.c (resolve_variable): Exit loop after setting seen. | |
| * expr.c (gfc_check_pointer_assign): Exit loop after setting warn. | |
| * trans-array.c (set_loop_bounds): Exit loop after setting | |
| nonoptional_arr. | |
| * trans-io.c (gfc_trans_transfer): Exit loop after setting seen_vector. | |
| 2013-07-28 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/58009 | |
| * expr.c (gfc_check_vardef_context): Check for same values in | |
| vector expression subscripts. | |
| 2013-07-27 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57991 | |
| * interface.c (check_some_aliasing): Also warn for intent OUT/OUT. | |
| 2013-07-27 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/57285 | |
| * check.c (dim_rank_check): Re-enable this check for CLASS arrays. | |
| 2013-07-25 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/57966 | |
| * resolve.c (resolve_typebound_function): Make sure the declared type, | |
| including its type-bound procedures, is resolved before resolving the | |
| actual type-bound call. | |
| 2013-07-25 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/57639 | |
| * interface.c (compare_parameter): Check for class_ok. | |
| * simplify.c (gfc_simplify_same_type_as): Ditto. | |
| 2013-07-23 OndÅ™ej BÃlka <neleai@seznam.cz> | |
| * decl.c: Fix comment typos. | |
| * interface.c: Likewise. | |
| * trans-array.c: Likewise. | |
| * trans.c: Likewise. | |
| 2013-07-22 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57906 | |
| PR fortran/52052 | |
| * class.c (gfc_build_class_symbol): Set coarray_comp. | |
| * trans-array.c (structure_alloc_comps): For coarrays, | |
| directly use the data pointer address. | |
| 2013-07-22 Chang <pchang9@cs.wisc.edu> | |
| * trans-decl.c (gfc_build_dummy_array_decl): Exit loop after | |
| setting PACKED_PARTIAL. | |
| 2013-07-22 Tobias Burnus <burnus@net-b.de> | |
| * trans-array.c (gfc_array_allocate): Correct memory-leak patch. | |
| 2013-07-22 Tobias Burnus <burnus@net-b.de> | |
| * trans-array.c (gfc_array_allocate, | |
| gfc_trans_deferred_array): Plug memory leak. | |
| 2013-07-21 OndÅ™ej BÃlka <neleai@seznam.cz> | |
| * trans-decl.c: Fix comment typos. | |
| * trans-expr.c: Ditto. | |
| 2013-07-21 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/56937 | |
| * dependency.c (gfc_dep_resolver): Treat identical | |
| array subscripts as identical; don't unconditionally | |
| return a dependency if an array subscript is found. | |
| 2013-07-21 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/35862 | |
| * libgfortran.h (GFC_FPE_DOWNWARD, GFC_FPE_TONEAREST, | |
| GFC_FPE_TOWARDZERO, GFC_FPE_UPWARD): New defines. | |
| 2013-07-21 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57894 | |
| * check.c (min_max_args): Add keyword= check. | |
| 2013-07-17 Mikael Morin <mikael@gcc.gnu.org> | |
| Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57895 | |
| * match.c (gfc_match_name): Ensure that the error | |
| message regarding -fdollar-ok gets printed. | |
| (gfc_match_common): Avoid multiple freeing. | |
| 2013-07-16 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57912 | |
| * trans-expr.c (gfc_trans_scalar_assign): Correct if | |
| condition for caf realloc. | |
| 2013-07-15 Tobias Burnus <burnus@net-b.de> | |
| * trans-array.h (gfc_deallocate_alloc_comp_no_caf, | |
| gfc_reassign_alloc_comp_caf): New prototype. | |
| * trans-array.c (enum): Add DEALLOCATE_ALLOC_COMP_NO_CAF | |
| and COPY_ALLOC_COMP_CAF. | |
| (structure_alloc_comps): Handle it. | |
| (gfc_reassign_alloc_comp_caf, | |
| gfc_deallocate_alloc_comp_no_caf): New function. | |
| (gfc_alloc_allocatable_for_assignment): Call it. | |
| * trans-expr.c (gfc_trans_scalar_assign, | |
| gfc_trans_arrayfunc_assign, gfc_trans_assignment_1): Ditto. | |
| * parse.c (parse_derived): Correctly set coarray_comp. | |
| * resolve.c (resolve_symbol): Improve error wording. | |
| 2013-07-15 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/37336 | |
| * trans.c (gfc_add_comp_finalizer_call): New function. | |
| * trans.h (gfc_add_comp_finalizer_call): New prototype. | |
| * trans-array.c (structure_alloc_comps): Call it. | |
| 2013-07-14 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| Tobias Burnus <burnus@gcc.gnu.org> | |
| PR fortran/52669 | |
| * trans-decl.c (gfc_finish_var_decl): Move setting of | |
| PRIVATE for a module variable if the module has a private | |
| default or -fmodule-private is given to... | |
| (gfc_create_module_variable): here. Optionally | |
| warn about private module variable which is not used. | |
| 2013-07-08 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57834 | |
| * check.c (is_c_interoperable): Add special case for c_f_pointer. | |
| (explicit-size, gfc_check_c_f_pointer, gfc_check_c_loc): Update | |
| call. | |
| 2013-07-08 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/50554 | |
| * io.c (match_inquire_element): Add missing do-var check. | |
| 2013-07-08 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57785 | |
| * simplify.c (compute_dot_product): Complex conjugate for | |
| dot_product. | |
| (gfc_simplify_dot_product, gfc_simplify_matmul): Update call. | |
| 2013-07-08 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57469 | |
| * trans-decl.c (generate_local_decl): Don't warn that | |
| a dummy is unused, when it is in a namelist. | |
| 2013-07-01 Dominique d'Humieres <dominiq@lps.ens.fr> | |
| PR fortran/54788 | |
| * array.c (spec_size): handle the case as==NULL. | |
| 2013-06-26 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/29800 | |
| * trans-array.c (gfc_conv_array_ref): Improve out-of-bounds | |
| diagnostic message. | |
| * trans-array.c (gfc_conv_array_ref): Update prototype. | |
| * trans-expr.c (gfc_conv_variable): Update call. | |
| 2013-06-24 Steven G. Kargl <sgk@troutmask.apl.washington.edu> | |
| Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
| Dominique d'Humieres <dominiq@lps.ens.fr> | |
| PR fortran/52413 | |
| * simplify.c (gfc_simplify_fraction): Fix the sign of negative values. | |
| 2013-06-21 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/37336 | |
| * trans-array.c (gfc_trans_deferred_array): Call the | |
| finalizer for nonallocatable local variables. | |
| * trans-decl.c (gfc_get_symbol_decl): Add local | |
| finalizable vars to the deferred list. | |
| (gfc_trans_deferred_vars): Call gfc_trans_deferred_array | |
| for those. | |
| 2013-06-21 Tobias Burnus <burnus@net-b.de> | |
| * trans-array.c (gfc_alloc_allocatable_for_assignment): Allocate | |
| at least one byte. | |
| * trans-expr.c (alloc_scalar_allocatable_for_assignment): Ditto. | |
| 2013-06-20 Tobias Burnus <burnus@net-b.de> | |
| * resolve.c (get_temp_from_expr): Don't set FL_VARIABLE twice. | |
| 2013-06-17 Tobias Burnus <burnus@net-b.de> | |
| * gfortran.h (gfc_option_t): Add fpe_summary. | |
| * gfortran.texi (_gfortran_set_options): Update. | |
| * invoke.texi (-ffpe-summary): Add doc. | |
| * lang.opt (ffpe-summary): Add flag. | |
| * options.c (gfc_init_options, gfc_handle_option): Handle it. | |
| (gfc_handle_fpe_option): Renamed from gfc_handle_fpe_trap_option, | |
| also handle fpe_summary. | |
| * trans-decl.c (create_main_function): Update | |
| _gfortran_set_options call. | |
| 2013-06-15 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/49074 | |
| PR fortran/56136 | |
| * dependency.c (gfc_check_argument_var_dependency): Return 0 in the | |
| array constructor case. | |
| 2013-06-14 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57508 | |
| * resolve.c (get_temp_from_expr): Don't copy function | |
| result attributes to temporary. | |
| 2013-06-14 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57596 | |
| * trans-decl.c (gfc_trans_deferred_vars): Honor OPTIONAL | |
| for nullify and deferred-strings' length variable. | |
| 2013-06-13 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/49074 | |
| * trans-expr.c (gfc_conv_variable): Don't walk the reference chain. | |
| Handle NULL array references. | |
| (gfc_conv_procedure_call): Remove code handling NULL array references. | |
| 2013-06-11 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57535 | |
| * trans-array.c (build_class_array_ref): Fix ICE for | |
| function result variables. | |
| 2013-06-08 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/37336 | |
| * trans-decl.c (init_intent_out_dt): Call finalizer | |
| when appropriate. | |
| 2013-06-08 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57553 | |
| * simplify.c (gfc_simplify_storage_size): Handle literal | |
| strings. | |
| * trans-intrinsic.c (gfc_conv_intrinsic_storage_size): | |
| Add missing fold_convert. | |
| 2013-06-07 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57549 | |
| * array.c (gfc_match_array_constructor): Call | |
| gfc_match_type_spec instead of gfc_match_decl_type_spec. | |
| * match.c (gfc_match_type_spec): Renamed from match_type_spec. | |
| (gfc_match_type_is, gfc_match_allocate): Update call. | |
| * match.h (gfc_match_type_spec): Add prototype. | |
| 2013-06-07 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57556 | |
| * trans.c (gfc_build_final_call): Init block before use. | |
| 2013-06-06 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57542 | |
| * trans.c (gfc_build_final_call): Add se.pre to the block | |
| and modify the assert. | |
| 2013-06-04 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/37336 | |
| * trans.h (gfc_build_final_call): Remove prototype. | |
| (gfc_add_finalizer_call): Add prototype. | |
| * trans-array.c (gfc_trans_dealloc_allocated): Support finalization. | |
| (structure_alloc_comps): Update caller. | |
| (gfc_trans_deferred_array): Call finalizer. | |
| * trans-array.h (gfc_trans_dealloc_allocated): Update prototype. | |
| * trans-decl.c (gfc_trans_deferred_vars): Don't deallocate/finalize | |
| variables of the main program. | |
| * trans-expr.c (gfc_conv_procedure_call): Support finalization. | |
| * trans-openmp.c (gfc_omp_clause_dtor, | |
| gfc_trans_omp_array_reduction): Update calls. | |
| * trans-stmt.c (gfc_trans_deallocate): Avoid double deallocation | |
| of alloc components. | |
| * trans.c (gfc_add_finalizer_call): New function. | |
| (gfc_deallocate_with_status, | |
| gfc_deallocate_scalar_with_status): Call it | |
| (gfc_build_final_call): Fix handling of scalar coarrays, | |
| move up in the file and make static. | |
| 2013-06-01 Janus Weil <janus@gcc.gnu.org> | |
| Mikael Morin <mikael@gcc.gnu.org> | |
| * error.c (get_terminal_width): Only limit the width if we're | |
| outputting to a terminal. Try to determine width via ioctl. | |
| 2013-06-01 Tobias Burnus <burnus@net-b.de> | |
| * decl.c (add_global_entry): Take locus. | |
| (gfc_match_entry): Update call. | |
| (gfc_match_end): Better error location. | |
| * parse.c (parse_block_data, parse_module, add_global_procedure, | |
| add_global_program): Use better locus data. | |
| 2013-05-31 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57456 | |
| * trans-array.c (gfc_array_init_size): Use passed type spec, | |
| when available. | |
| (gfc_array_allocate): Pass typespec on. | |
| * trans-array.h (gfc_array_allocate): Update prototype. | |
| * trans-stmt.c (gfc_trans_allocate): Pass typespec on. | |
| 2013-05-31 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/54190 | |
| PR fortran/57217 | |
| * gfortran.h (gfc_terminal_width): Remove prototype. | |
| * error.c (get_terminal_width): Moved here from misc.c. Renamed. | |
| Try to determine terminal width from environment variable. | |
| * interface.c (compare_type, compare_rank): New functions. Fix assumed | |
| type/rank handling. | |
| (compare_type_rank, check_dummy_characteristics, | |
| check_result_characteristics, gfc_compare_interfaces): Use them. | |
| (symbol_rank): Slightly modified and moved. | |
| * misc.c (gfc_terminal_width): Moved to error.c. | |
| 2013-05-30 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/54189 | |
| * resolve.c (check_assumed_size_reference): Check for e->ref. | |
| 2013-05-30 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57458 | |
| * interface.c (compare_parameter): Update C1239/C1240 constraint | |
| check for assumed-rank/TS29113. | |
| 2013-05-29 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/37336 | |
| * class.c (finalize_component): Fix coarray array refs. | |
| (generate_finalization_wrapper): Only gfc_convert_type_warn | |
| when the kind value is different. | |
| (gfc_find_intrinsic_vtab): _copy's dst is now intent(inout). | |
| (gfc_find_derived_vtab): Ditto. Enable finalization-wrapper | |
| generation. | |
| * module.c (MOD_VERSION): Bump. | |
| (gfc_dump_module, gfc_use_module): Remove empty line in .mod. | |
| * trans-array.c (gfc_conv_descriptor_token): Accept nonrestricted | |
| void pointer. | |
| (gfc_array_allocate, structure_alloc_comps): Don't nullify for | |
| BT_CLASS allocations. | |
| * trans-stmt.c (gfc_trans_allocate): Ditto. | |
| 2013-05-29 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/37336 | |
| * resolve.c (gfc_resolve_finalizers): Remove not implemented error. | |
| 2013-05-28 Tobias Burnus <burnus@net-b.de> | |
| * trans-expr.c (gfc_conv_procedure_call): Deallocate | |
| polymorphic arrays for allocatable intent(out) dummies. | |
| (gfc_reset_vptr): New function, moved from trans-stmt.c | |
| and extended. | |
| * trans-stmt.c (reset_vptr): Remove. | |
| (gfc_trans_deallocate): Update calls. | |
| * trans.h (gfc_reset_vptr): New prototype. | |
| 2013-05-28 Dominique d'Humieres <dominiq@lps.ens.fr> | |
| PR fortran/57435 | |
| * module.c (check_for_ambiguous): Avoid null pointer deref. | |
| 2013-05-28 Janus Weil <janus@gcc.gnu.org> | |
| Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57217 | |
| * interface.c (check_dummy_characteristics): Symmetrize type check. | |
| 2013-05-27 Bud Davis <jmdavis@link.com> | |
| PR fortran/50405 | |
| * resolve.c (resolve_formal_arglist): Detect error when an argument | |
| has the same name as the function. | |
| 2013-05-27 Tobias Burnus <burnus@net-b.de> | |
| * expr.c (gfc_build_intrinsic_call): Make symbol as attr.artificial. | |
| * intrinsic.c (gfc_is_intrinsic): Disable std check for those. | |
| 2013-05-22 Tobias Burnus <burnus@net-b.de> | |
| * resolve.c (get_temp_from_expr): Change mangling to | |
| start always with a _. | |
| 2013-05-22 Tobias Burnus <burnus@net-b.de> | |
| * resolve.c (get_temp_from_expr): Fix temp var mangling. | |
| 2013-05-22 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57364 | |
| * resolve.c (get_temp_from_expr): Commit created sym. | |
| 2013-05-22 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57338 | |
| * intrinsic.c (do_check): Move some checks to ... | |
| (do_ts29113_check): ... this new function. | |
| (check_specific, gfc_intrinsic_sub_interface): Call it. | |
| 2013-05-22 Janne Blomqvist <jb@gcc.gnu.org> | |
| * intrinsic.texi (RANDOM_SEED): Improve example. | |
| 2013-05-21 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57035 | |
| * intrinsic.c (do_check): Add constraint check for | |
| NO_ARG_CHECK, assumed rank and assumed type. | |
| * gfortran.texi (NO_ARG_CHECK): Minor wording change, | |
| allow PRESENT intrinsic. | |
| 2013-05-20 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/48858 | |
| PR fortran/55465 | |
| * decl.c (add_global_entry): Add sym_name. | |
| * parse.c (add_global_procedure): Ditto. | |
| * resolve.c (resolve_bind_c_derived_types): Handle multiple decl for | |
| a procedure. | |
| (resolve_global_procedure): Handle gsym->ns pointing to a module. | |
| * trans-decl.c (gfc_get_extern_function_decl): Ditto. | |
| 2013-05-20 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/48858 | |
| * decl.c (add_global_entry): Use nonbinding name | |
| only for F2003 or if no binding label exists. | |
| (gfc_match_entry): Update calls. | |
| * parse.c (gfc_global_used): Improve error message. | |
| (add_global_procedure): Use nonbinding name | |
| only for F2003 or if no binding label exists. | |
| (gfc_parse_file): Update call. | |
| * resolve.c (resolve_global_procedure): Use binding | |
| name when available. | |
| * trans-decl.c (gfc_get_extern_function_decl): Ditto. | |
| 2013-05-20 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/48858 | |
| * decl.c (gfc_match_bind_c_stmt): Add gfc_notify_std. | |
| * match.c (gfc_match_common): Don't add commons to gsym. | |
| * resolve.c (resolve_common_blocks): Add to gsym and | |
| add checks. | |
| (resolve_bind_c_comms): Remove. | |
| (resolve_types): Remove call to the latter. | |
| * trans-common.c (gfc_common_ns): Remove static var. | |
| (gfc_map_of_all_commons): Add static var. | |
| (build_common_decl): Correctly handle binding label. | |
| 2013-05-16 Jason Merrill <jason@redhat.com> | |
| * Make-lang.in (f951$(exeext)): Use link mutex. | |
| 2013-05-05 Tobias Burnus <burnus@net-b.de> | |
| * resolve.c (conformable_arrays): Avoid segfault | |
| when ar.start[i] == NULL. | |
| 2013-05-05 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57141 | |
| * decl.c (gfc_match_null): Permit use-associated | |
| NULL intrinsic. | |
| 2013-05-04 Tobias Burnus <burnus@net-b.de> | |
| * decl.c (gfc_verify_c_interop_param): Permit allocatable | |
| and pointer with -std=f2008ts. | |
| 2013-05-02 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57142 | |
| * simplify.c (gfc_simplify_size): Renamed from | |
| simplify_size; fix kind=8 handling. | |
| (gfc_simplify_size): New function. | |
| (gfc_simplify_shape): Add range check. | |
| * resolve.c (resolve_function): Fix handling | |
| for ISYM_SIZE. | |
| 2013-05-01 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| * frontend-passes.c (optimize_power): Fix typo | |
| in comment. | |
| 2013-04-30 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/57071 | |
| * frontend-passes.c (optimize_power): Simplify | |
| 1**k to 1. | |
| 2013-04-28 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57114 | |
| * intrinsic.texi (RANK): Correct syntax description and | |
| expected result. | |
| 2013-04-28 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/57093 | |
| * trans-types.c (gfc_get_element_type): Fix handling | |
| of scalar coarrays of type character. | |
| * intrinsic.texi (PACK): Add missing ")". | |
| 2013-04-28 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/57071 | |
| * frontend-passes (optimize_power): New function. | |
| (optimize_op): Use it. | |
| 2013-04-25 Janne Blomqvist <jb@gcc.gnu.org> | |
| PR bootstrap/57028 | |
| * Make-lang.in (f951): Link in ZLIB. | |
| (CFLAGS-fortran/module.o): Add zlib include directory. | |
| 2013-04-22 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/53685 | |
| PR fortran/57022 | |
| * check.c (gfc_calculate_transfer_sizes): Fix for array-valued SOURCE | |
| expressions. | |
| * simplify.c (gfc_simplify_sizeof,gfc_simplify_storage_size): Get rid | |
| of special treatment for EXPR_ARRAY. | |
| * target-memory.h (gfc_element_size): New prototype. | |
| * target-memory.c (size_array): Remove. | |
| (gfc_element_size): New function. | |
| (gfc_target_expr_size): Modified to always return the full size of the | |
| expression. | |
| 2013-04-20 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56907 | |
| * trans-intrinsic.c (conv_isocbinding_function): Don't pack array | |
| passed to C_LOC | |
| 2013-04-19 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/56872 | |
| * frontend-passes.c (copy_walk_reduction_arg): Change argument type | |
| to gfc_constructor. If it has an iterator, wrap the copy of its | |
| expression in an array constructor with that iterator. Don't special | |
| case function expressions. | |
| (callback_reduction): Update caller. Don't return early if there is | |
| an iterator. | |
| 2013-04-18 Tobias Burnus <burnus@net-b.de> | |
| * expr.c (find_array_element): Don't copy expr. | |
| * data.c (create_character_initializer): Free expr. | |
| * frontend-passes.c (combine_array_constructor): Ditto. | |
| * match.c (match_typebound_call, gfc_match_select_type): Ditto. | |
| * resolve.c (resolve_typebound_function): Free gfc_ref. | |
| 2013-04-18 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56994 | |
| * invoke.texi (NEAREST): S argument is not optional. | |
| 2013-04-17 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56814 | |
| * interface.c (check_result_characteristics): Get result from interface | |
| if present. | |
| 2013-04-17 Janne Blomqvist <jb@gcc.gnu.org> | |
| PR fortran/40958 | |
| * scanner.h: New file. | |
| * Make-lang.in: Dependencies on scanner.h. | |
| * scanner.c (gfc_directorylist): Move to scanner.h. | |
| * module.c: Don't include md5.h, include scanner.h and zlib.h. | |
| (MOD_VERSION): Add comment about backwards compatibility. | |
| (module_fp): Change type to gzFile. | |
| (ctx): Remove. | |
| (gzopen_included_file_1): New function. | |
| (gzopen_included_file): New function. | |
| (gzopen_intrinsic_module): New function. | |
| (write_char): Use gzputc. | |
| (read_crc32_from_module_file): New function. | |
| (read_md5_from_module_file): Remove. | |
| (gfc_dump_module): Use gz* functions instead of stdio, check gzip | |
| crc32 instead of md5. | |
| (read_module_to_tmpbuf): Use gz* functions instead of stdio. | |
| (gfc_use_module): Use gz* functions. | |
| 2013-04-16 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/39505 | |
| * decl.c (ext_attr_list): Add EXT_ATTR_NO_ARG_CHECK. | |
| * gfortran.h (ext_attr_id_t): Ditto. | |
| * gfortran.texi (GNU Fortran Compiler Directives): | |
| Document it. | |
| * interface.c (compare_type_rank): Ignore rank for NO_ARG_CHECK. | |
| (compare_parameter): Ditto - and regard as unlimited polymorphic. | |
| * resolve.c (resolve_symbol, resolve_variable): Add same constraint | |
| checks as for TYPE(*); turn dummy to TYPE(*),dimension(*). | |
| (gfc_explicit_interface_required): Require explicit interface | |
| for NO_ARG_CHECK. | |
| 2013-04-16 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56968 | |
| * expr.c (gfc_check_pointer_assign): Handle generic functions returning | |
| procedure pointers. | |
| 2013-04-16 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56969 | |
| * intrinsic.c (gfc_intrinsic_func_interface): Don't set | |
| module name to "(intrinsic)" for intrinsics from intrinsic | |
| modules. | |
| 2013-04-15 Tobias Burnus <burnus@net-b.de> | |
| * intrinsic.texi (SYSTEM_CLOCK): Recommend kind=8. | |
| 2013-04-15 Janne Blomqvist <jb@gcc.gnu.org> | |
| PR fortran/56919 | |
| * intrinsics.texi (SYSTEM_CLOCK): Update documentation. | |
| 2013-04-15 Tobias Burnus <burnus@net-b.de> | |
| * class.c (gfc_find_intrinsic_vtab): Removed unused var. | |
| * dependency.c (check_data_pointer_types): Fix check. | |
| * frontend-passes.c (check_data_pointer_types): Remove | |
| superfluous statement. | |
| * parse.c (decode_omp_directive): Add missing break. | |
| * resolve.c (resolve_typebound_subroutine: Free variable. | |
| * trans-decl.c (create_function_arglist): Correct condition. | |
| 2013-04-14 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/56816 | |
| * match.c (gfc_match_select_type): Add syntax error. Move namespace | |
| allocation and cleanup... | |
| * parse.c (decode_statement): ... here. | |
| 2013-04-13 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/55959 | |
| * expr.c (gfc_simplify_expr): Branch is not unreachable. | |
| 2013-04-12 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56266 | |
| * primary.c (gfc_match_varspec): Turn gcc_assert into MATCH_ERROR. | |
| 2013-04-12 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56929 | |
| * trans-array.c (duplicate_allocatable): Fix handling | |
| of scalar coarrays. | |
| 2013-04-12 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56261 | |
| * gfortran.h (gfc_explicit_interface_required): New prototype. | |
| * expr.c (gfc_check_pointer_assign): Check if an explicit interface is | |
| required in a proc-ptr assignment. | |
| * interface.c (check_result_characteristics): Extra check. | |
| * resolve.c (gfc_explicit_interface_required): New function. | |
| (resolve_global_procedure): Use new function | |
| 'gfc_explicit_interface_required'. Do a full interface check. | |
| 2013-04-12 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56845 | |
| * trans-decl.c (gfc_trans_deferred_vars): Restrict | |
| static CLASS init to SAVE and -fno-automatic. | |
| 2013-04-12 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56845 | |
| * trans-decl.c (gfc_trans_deferred_vars): Set _vptr for | |
| allocatable static BT_CLASS. | |
| * trans-expr.c (gfc_class_set_static_fields): New function. | |
| * trans.h (gfc_class_set_static_fields): New prototype. | |
| 2013-04-11 Janne Blomqvist <jb@gcc.gnu.org> | |
| * gfortran.h: Remove enum gfc_try, replace gfc_try with bool type. | |
| * arith.c: Replace gfc_try with bool type. | |
| * array.c: Likewise. | |
| * check.c: Likewise. | |
| * class.c: Likewise. | |
| * cpp.c: Likewise. | |
| * cpp.h: Likewise. | |
| * data.c: Likewise. | |
| * data.h: Likewise. | |
| * decl.c: Likewise. | |
| * error.c: Likewise. | |
| * expr.c: Likewise. | |
| * f95-lang.c: Likewise. | |
| * interface.c: Likewise. | |
| * intrinsic.c: Likewise. | |
| * intrinsic.h: Likewise. | |
| * io.c: Likewise. | |
| * match.c: Likewise. | |
| * match.h: Likewise. | |
| * module.c: Likewise. | |
| * openmp.c: Likewise. | |
| * parse.c: Likewise. | |
| * parse.h: Likewise. | |
| * primary.c: Likewise. | |
| * resolve.c: Likewise. | |
| * scanner.c: Likewise. | |
| * simplify.c: Likewise. | |
| * symbol.c: Likewise. | |
| * trans-intrinsic.c: Likewise. | |
| * trans-openmp.c: Likewise. | |
| * trans-stmt.c: Likewise. | |
| * trans-types.c: Likewise. | |
| 2013-04-09 Tobias Burnus <burnus@net-b.de> | |
| * gfortran.texi (KIND Type Parameters, | |
| Internal representation of LOGICAL variables): Add crossrefs. | |
| (Intrinsic Types): Mention issues with _Bool interop. | |
| (Naming and argument-passing conventions): New section. | |
| 2013-04-08 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/56782 | |
| * frontend-passes.c (callback_reduction): Don't do | |
| any simplification if there is only a single element | |
| which has an iterator. | |
| 2013-04-07 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56849 | |
| * iresolve.c (gfc_resolve_reshape): Set shape also | |
| with order=. | |
| 2013-04-04 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/40881 | |
| * match.c (gfc_match_return): Remove standard notification. | |
| * primary.c (gfc_match_actual_arglist): Add standard notification. | |
| 2013-04-04 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/50269 | |
| * gcc/fortran/check.c (is_c_interoperable, | |
| gfc_check_c_loc): Correct c_loc array checking | |
| for Fortran 2003 and Fortran 2008. | |
| 2013-04-03 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56284 | |
| PR fortran/40881 | |
| * decl.c (gfc_match_formal_arglist): Warn about alternate-return | |
| arguments. | |
| * interface.c (check_dummy_characteristics): Return if symbols are NULL. | |
| 2013-04-01 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56500 | |
| * symbol.c (gfc_set_default_type): Build class container for | |
| IMPLICIT CLASS. | |
| 2013-03-31 Tobias Burnus <burnus@net-b.de> | |
| * class.c (finalization_scalarizer, finalizer_insert_packed_call, | |
| generate_finalization_wrapper): Avoid segfault with absent SIZE= | |
| argument to TRANSFER and use correct result kind for SIZE. | |
| * intrinsic.c (gfc_isym_id_by_intmod): Also handle ids of | |
| nonmodules. | |
| * trans.c (gfc_build_final_call): Handle coarrays. | |
| 2013-03-30 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| * trans-expr.c (build_memcmp_call): New function. | |
| (gfc_build_compare_string): If the strings | |
| compared have constant and equal lengths and | |
| the strings are kind=1, or, for kind=4 strings, | |
| the test is for (in)equality, use memcmp(). | |
| 2013-03-29 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/35203 | |
| * trans-decl.c (create_function_arglist): Pass hidden argument | |
| for passed-by-value optional+value dummies. | |
| * trans-expr.c (gfc_conv_expr_present, | |
| gfc_conv_procedure_call): Handle those. | |
| 2013-03-28 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/45159 | |
| * gfortran.h (gfc_dep_difference): Add prototype. | |
| * dependency.c (discard_nops): New function. | |
| (gfc_dep_difference): New function. | |
| (check_section_vs_section): Use gfc_dep_difference | |
| to calculate the difference of starting indices. | |
| * trans-expr.c (gfc_conv_substring): Use | |
| gfc_dep_difference to calculate the length of | |
| substrings where possible. | |
| 2013-03-28 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/55806 | |
| * frontend-passes.c (optimize_code): Keep track of | |
| current code to make code insertion possible. | |
| (combine_array_constructor): New function. | |
| (optimize_op): Call it. | |
| 2013-03-27 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56650 | |
| PR fortran/36437 | |
| * check.c (gfc_check_sizeof, gfc_check_c_sizeof, | |
| gfc_check_storage_size): Update checks. | |
| * intrinsic.texi (SIZEOF): Correct class. | |
| * intrinsic.h (gfc_simplify_sizeof, | |
| gfc_simplify_storage_size): New prototypes. | |
| * intrinsic.c (add_functions): Use them. | |
| * simplify.c (gfc_simplify_sizeof, | |
| gfc_simplify_storage_size): New functions. | |
| 2013-03-27 Janne Blomqvist <jb@gcc.gnu.org> | |
| PR fortran/25708 | |
| * module.c (module_locus): Use long for position. | |
| (module_content): New variable. | |
| (module_pos): Likewise. | |
| (prev_character): Remove. | |
| (bad_module): Free data instead of closing mod file. | |
| (set_module_locus): Use module_pos. | |
| (get_module_locus): Likewise. | |
| (module_char): use buffer rather than stdio file. | |
| (module_unget_char): Likewise. | |
| (read_module_to_tmpbuf): New function. | |
| (gfc_use_module): Call read_module_to_tmpbuf. | |
| 2013-03-26 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56649 | |
| * simplify.c (gfc_simplify_merge): Simplify more. | |
| 2013-03-25 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/38536 | |
| PR fortran/38813 | |
| PR fortran/38894 | |
| PR fortran/39288 | |
| PR fortran/40963 | |
| PR fortran/45824 | |
| PR fortran/47023 | |
| PR fortran/47034 | |
| PR fortran/49023 | |
| PR fortran/50269 | |
| PR fortran/50612 | |
| PR fortran/52426 | |
| PR fortran/54263 | |
| PR fortran/55343 | |
| PR fortran/55444 | |
| PR fortran/55574 | |
| PR fortran/56079 | |
| PR fortran/56378 | |
| * check.c (gfc_var_strlen): Properly handle 0-sized string. | |
| (gfc_check_c_sizeof): Use is_c_interoperable, add checks. | |
| (is_c_interoperable, gfc_check_c_associated, gfc_check_c_f_pointer, | |
| gfc_check_c_f_procpointer, gfc_check_c_funloc, gfc_check_c_loc): New | |
| functions. | |
| * expr.c (check_inquiry): Add c_sizeof, compiler_version and | |
| compiler_options. | |
| (gfc_check_pointer_assign): Refine function result check. | |
| gfortran.h (gfc_isym_id): Add GFC_ISYM_C_ASSOCIATED, | |
| GFC_ISYM_C_F_POINTER, GFC_ISYM_C_F_PROCPOINTER, GFC_ISYM_C_FUNLOC, | |
| GFC_ISYM_C_LOC. | |
| (iso_fortran_env_symbol, iso_c_binding_symbol): Handle | |
| NAMED_SUBROUTINE. | |
| (generate_isocbinding_symbol): Update prototype. | |
| (get_iso_c_sym): Remove. | |
| (gfc_isym_id_by_intmod, gfc_isym_id_by_intmod_sym): New prototypes. | |
| * intrinsic.c (gfc_intrinsic_subroutine_by_id): New function. | |
| (gfc_intrinsic_sub_interface): Use it. | |
| (add_functions, add_subroutines): Add missing C-binding intrinsics. | |
| (gfc_intrinsic_func_interface): Add special case for c_loc. | |
| gfc_isym_id_by_intmod, gfc_isym_id_by_intmod_sym): New functions. | |
| (gfc_intrinsic_func_interface, gfc_intrinsic_sub_interface): Use them. | |
| * intrinsic.h (gfc_check_c_associated, gfc_check_c_f_pointer, | |
| gfc_check_c_f_procpointer, gfc_check_c_funloc, gfc_check_c_loc, | |
| gfc_resolve_c_loc, gfc_resolve_c_funloc): New prototypes. | |
| * iresolve.c (gfc_resolve_c_loc, gfc_resolve_c_funloc): New | |
| functions. | |
| * iso-c-binding.def: Split PROCEDURE into NAMED_SUBROUTINE and | |
| NAMED_FUNCTION. | |
| * iso-fortran-env.def: Add NAMED_SUBROUTINE for completeness. | |
| * module.c (create_intrinsic_function): Support subroutines and | |
| derived-type results. | |
| (use_iso_fortran_env_module): Update calls. | |
| (import_iso_c_binding_module): Ditto; update calls to | |
| generate_isocbinding_symbol. | |
| * resolve.c (find_arglists): Skip for intrinsic symbols. | |
| (gfc_resolve_intrinsic): Find intrinsic subs via id. | |
| (is_scalar_expr_ptr, gfc_iso_c_func_interface, | |
| set_name_and_label, gfc_iso_c_sub_interface): Remove. | |
| (resolve_function, resolve_specific_s0): Remove calls to those. | |
| (resolve_structure_cons): Fix handling. | |
| * symbol.c (gen_special_c_interop_ptr): Update c_ptr/c_funptr | |
| generation. | |
| (gen_cptr_param, gen_fptr_param, gen_shape_param, | |
| build_formal_args, get_iso_c_sym): Remove. | |
| (std_for_isocbinding_symbol): Handle NAMED_SUBROUTINE. | |
| (generate_isocbinding_symbol): Support hidden symbols and | |
| using c_ptr/c_funptr symtrees for nullptr defs. | |
| * target-memory.c (gfc_target_encode_expr): Fix handling | |
| of c_ptr/c_funptr. | |
| * trans-expr.c (conv_isocbinding_procedure): Remove. | |
| (gfc_conv_procedure_call): Remove call to it. | |
| (gfc_trans_subcomponent_assign, gfc_conv_expr): Update handling | |
| of c_ptr/c_funptr. | |
| * trans-intrinsic.c (conv_isocbinding_function, | |
| conv_isocbinding_subroutine): New. | |
| (gfc_conv_intrinsic_function, gfc_conv_intrinsic_subroutine): | |
| Call them. | |
| * trans-io.c (transfer_expr): Fix handling of c_ptr/c_funptr. | |
| * trans-types.c (gfc_typenode_for_spec, | |
| gfc_get_derived_type): Ditto. | |
| (gfc_init_c_interop_kinds): Handle NAMED_SUBROUTINE. | |
| 2013-03-18 Tobias Burnus <burnus@net-b.de> | |
| * gfortran.h (gfc_option_t): Remove flag_whole_file. | |
| * invoke.texi (-fno-whole-file): Remove. | |
| * lang.opt (fwhole-file): Change to Ignore. | |
| * options.c (gfc_init_options, gfc_post_options, | |
| gfc_handle_option): Remove !flag_whole_file handling | |
| * parse.c (resolve_all_program_units, translate_all_program_units, | |
| gfc_parse_file): Ditto. | |
| * resolve.c (resolve_global_procedure): Ditto. | |
| * trans-decl.c (gfc_get_symbol_decl, gfc_get_extern_function_decl, | |
| gfc_create_module_variable): Ditto. | |
| * trans-types.c (gfc_get_derived_type): Ditto. | |
| 2013-03-15 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56615 | |
| * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Pack arrays | |
| if they are not simply contiguous. | |
| 2013-03-11 Tobias Burnus <burnus@net-b.de> | |
| * gfortran.texi (STRUCTURE and RECORD): State more clearly how | |
| to convert them into derived types. | |
| 2013-03-10 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/56575 | |
| * expr.c (gfc_default_initializer): Check that a class declared | |
| type has any components. | |
| * resolve.c (resolve_fl_derived0): On failing the test for C437 | |
| set the type to BT_UNKNOWN to prevent repeat error messages. | |
| 2013-03-03 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/56477 | |
| * expr.c (gfc_check_pointer_assign): Avoid NULL pointer dereference. | |
| 2013-03-03 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/54730 | |
| * array.c (gfc_match_array_constructor): Set a checkpoint before | |
| matching a typespec. Drop it on success, restore it otherwise. | |
| 2013-03-03 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/54730 | |
| * gfortran.h (struct gfc_undo_change_set): New field 'previous'. | |
| (gfc_new_undo_checkpoint, gfc_drop_last_undo_checkpoint, | |
| gfc_restore_last_undo_checkpoint): New prototypes. | |
| * symbol.c (default_undo_chgset_var): Update initialization. | |
| (single_undo_checkpoint_p, gfc_new_undo_checkpoint, | |
| free_undo_change_set_data, pop_undo_change_set, | |
| gfc_drop_last_undo_checkpoint, enforce_single_undo_checkpoint): | |
| New functions. | |
| (save_symbol_data): Handle multiple change sets. Make sure old_symbol | |
| field's previous value is not overwritten. Clear gfc_new field. | |
| (restore_old_symbol): Restore previous old_symbol field. | |
| (gfc_restore_last_undo_checkpoint): New function, using body renamed | |
| from gfc_undo_symbols. Restore the previous change set as current one. | |
| (gfc_undo_symbols): New body. | |
| (gfc_commit_symbols, gfc_commit_symbol, gfc_enforce_clean_symbol_state): | |
| Call enforce_single_undo_checkpoint. | |
| (gfc_symbol_done_2): Ditto. Free change set data. | |
| 2013-03-03 Mikael Morin <mikael@gcc.gnu.org> | |
| * symbol.c (restore_old_symbol): Fix thinko. | |
| 2013-03-03 Mikael Morin <mikael@gcc.gnu.org> | |
| * symbol.c (gfc_undo_symbols): Move code... | |
| (restore_old_symbol): ... here as a new function. | |
| 2013-03-03 Mikael Morin <mikael@gcc.gnu.org> | |
| * Make-lang.in (F95_PARSER_OBJS): Add dependency to vec.h. | |
| * gfortran.h: Include vec.h. | |
| (gfc_undo_change_set): New struct. | |
| * symbol.c (tentative_tbp): Remove struct. | |
| (changed_syms, tentative_tbp_list): Remove variables. | |
| (default_undo_chgset_var, latest_undo_chgset): New variables. | |
| (save_symbol_data, gfc_get_sym_tree, gfc_undo_symbols, | |
| gfc_commit_symbols, gfc_commit_symbol, | |
| gfc_enforce_clean_symbol_state, gfc_get_typebound_proc): | |
| Use latest_undo_chgset instead of changed_syms and tentative_tbp_list. | |
| 2013-03-01 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56491 | |
| * iresolve.c (resolve_bound): Use gfc_get_string instead of xstrdup. | |
| * symbol.c (free_components): Free proc-pointer components. | |
| 2013-03-01 Tobias Burnus <burnus@net-b.de> | |
| * trans-decl.c (gfc_trans_deferred_vars): Free expr after use. | |
| * trans-io.c (build_dt): Ditto. | |
| 2013-02-24 Joseph Myers <joseph@codesourcery.com> | |
| * resolve.c (generate_component_assignments): Don't use UTF-8 | |
| ligature in diagnostic. | |
| 2013-02-21 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56385 | |
| * trans-array.c (structure_alloc_comps): Handle procedure-pointer | |
| components with allocatable result. | |
| 2013-02-21 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56416 | |
| * gfortran.texi (Part II: Language Reference, Extensions, | |
| Non-Fortran Main Program): Sort @menu to match actual section order. | |
| * intrinsic.texi (Intrinsic Procedures): Ditto. | |
| (C_F_POINTER, PRECISION): Move to the alphabetically correct place. | |
| 2013-02-15 Tobias Burnus <burnus@net-b.de> | |
| Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/56318 | |
| * simplify.c (gfc_simplify_matmul): Fix result shape | |
| and matmul result. | |
| 2013-02-15 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/53818 | |
| * resolve.c (apply_default_init_local): Don't create an | |
| initializer for a result variable. | |
| 2013-02-14 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/56224 | |
| * gfortran.h (gfc_add_include_path): Add boolean argument | |
| for warn. | |
| * scanner.c (gfc_add_include_path): Pass along warn argument | |
| to add_path_to_list. | |
| * options.c (gfc_post_options): Add true warn argument to | |
| gfc_add_include_path. | |
| (gfc_handle_module_path_options): Likewise. | |
| (gfc_handle_option): Also gfc_add_include_path for intrinsic | |
| modules, without warning. | |
| 2013-02-14 Paul Thomas <pault@gcc.gnu.org> | |
| Tobias Burnus <burnus@net-b.de> | |
| PR testsuite/56138 | |
| * trans-decl.c (gfc_get_symbol_decl): Fix deferred-length | |
| results for functions without extra result variable. | |
| Revert: | |
| 2013-01-30 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56138 | |
| * trans-decl.c (gfc_trans_deferred_vars): Fix deferred-length | |
| results for functions without extra result variable. | |
| 2013-02-12 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/46952 | |
| * resolve.c (resolve_call): Do not check deferred procedures for | |
| recursiveness. | |
| 2013-02-09 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/55362 | |
| * check.c (array_check): It is an error if a procedure is | |
| passed. | |
| 2013-02-08 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/54107 | |
| * trans-types.c (gfc_get_function_type): Change a NULL backend_decl | |
| to error_mark_node on entry. Detect recursive types. Build a variadic | |
| procedure type if the type is recursive. Restore the initial | |
| backend_decl. | |
| 2013-02-07 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/54339 | |
| * gfortran.texi (Standards): Mention TS29113. | |
| (Varying Length Character): Mention deferred-length | |
| strings. | |
| (Fortran 2003 Status): Add unlimited polymorphic. | |
| (TS 29113 Status): Add TYPE(*) and DIMENSION(..). | |
| (C Interop): Update the section about TS29113. | |
| 2013-02-06 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/55789 | |
| * trans-array.c (trans_array_constructor): Remove condition | |
| 'dynamic' = true if the loop ubound is a VAR_DECL. | |
| 2013-02-04 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/56008 | |
| PR fortran/47517 | |
| * trans-array.c (gfc_alloc_allocatable_for_assignment): Save | |
| the lhs descriptor before it is modified for reallocation. Use | |
| it to deallocate allocatable components in the reallocation | |
| block. Nullify allocatable components for newly (re)allocated | |
| arrays. | |
| 2013-02-04 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/54195 | |
| * resolve.c (resolve_typebound_procedures): Recurse through | |
| resolve_symbol. | |
| 2013-02-04 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/54107 | |
| PR fortran/54195 | |
| * gfortran.h (struct gfc_symbol): New field 'resolved'. | |
| * resolve.c (resolve_fl_var_and_proc): Don't skip result symbols. | |
| (resolve_symbol): Skip duplicate calls. Don't check the current | |
| namespace. | |
| 2013-02-02 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/50627 | |
| PR fortran/56054 | |
| * decl.c (gfc_match_end): Remove half-ready namespace | |
| from parent if the end of a block is missing. | |
| * parse.c (parse_module): Do not put namespace into | |
| gsymbol on error. | |
| 2013-01-30 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/56138 | |
| * trans-decl.c (gfc_trans_deferred_vars): Fix deferred-length | |
| results for functions without extra result variable. | |
| 2013-01-29 Janus Weil <janus@gcc.gnu.org> | |
| Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/54107 | |
| * gfortran.h (gfc_component): Delete members 'formal' and 'formal_ns'. | |
| (gfc_copy_formal_args,gfc_copy_formal_args_ppc,gfc_expr_replace_symbols, | |
| gfc_expr_replace_comp): Delete. | |
| (gfc_sym_get_dummy_args): New prototype. | |
| * dependency.c (gfc_check_fncall_dependency): Use | |
| 'gfc_sym_get_dummy_args'. | |
| * expr.c (gfc_is_constant_expr): Ditto. | |
| (replace_symbol,gfc_expr_replace_symbols,replace_comp, | |
| gfc_expr_replace_comp): Deleted. | |
| * frontend-passes.c (doloop_code,do_function): Use | |
| 'gfc_sym_get_dummy_args'. | |
| * interface.c (gfc_check_operator_interface,gfc_compare_interfaces, | |
| gfc_procedure_use,gfc_ppc_use,gfc_arglist_matches_symbol, | |
| gfc_check_typebound_override): Ditto. | |
| * module.c (MOD_VERSION): Bump module version. | |
| (mio_component): Do not read/write 'formal' and 'formal_ns'. | |
| * resolve.c (resolve_procedure_interface,resolve_fl_derived0): Do not | |
| copy formal args, but just keep a pointer to the interface. | |
| (resolve_function,resolve_call,resolve_typebound_generic_call, | |
| resolve_ppc_call,resolve_expr_ppc,generate_component_assignments, | |
| resolve_fl_procedure,gfc_resolve_finalizers,check_generic_tbp_ambiguity, | |
| resolve_typebound_procedure,check_uop_procedure): Use | |
| 'gfc_sym_get_dummy_args'. | |
| * symbol.c (free_components): Do not free 'formal' and 'formal_ns'. | |
| (gfc_copy_formal_args,gfc_copy_formal_args_ppc): Deleted. | |
| (gfc_sym_get_dummy_args): New function. | |
| * trans-array.c (get_array_charlen,gfc_walk_elemental_function_args): | |
| Use 'gfc_sym_get_dummy_args'. | |
| * trans-decl.c (build_function_decl,create_function_arglist, | |
| build_entry_thunks,init_intent_out_dt,gfc_trans_deferred_vars, | |
| add_argument_checking): Ditto. | |
| * trans-expr.c (gfc_map_fcn_formal_to_actual,gfc_conv_procedure_call, | |
| gfc_conv_statement_function): Ditto. | |
| * trans-stmt.c (gfc_conv_elemental_dependencies): Ditto. | |
| * trans-types.c (create_fn_spec,gfc_get_function_type): Ditto. | |
| 2013-01-28 Tobias Burnus <burnus@net-b.de> | |
| Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/53537 | |
| * symbol.c (gfc_find_sym_tree): Don't look for the symbol outside an | |
| interface block. | |
| (gfc_get_ha_symtree): Let gfc_find_sym_tree lookup the parent namespace. | |
| * decl.c (gfc_match_data_decl): Ditto. | |
| (variable_decl): Remove undeclared type error. | |
| (gfc_match_import): Use renamed instead of original name. | |
| 2013-01-27 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/55984 | |
| PR fortran/56047 | |
| * gfortran.h : Add associate_var to symbol_attr. | |
| * resolve.c (resolve_assoc_var): Set associate_var attribute. | |
| If the target class_ok is set, set it for the associate | |
| variable. | |
| * check.c (allocatable_check): Associate variables should not | |
| have the allocatable attribute even if their symbols do. | |
| * class.c (gfc_build_class_symbol): Symbols with associate_var | |
| set will always have a good class container. | |
| 2013-01-23 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/56081 | |
| * resolve.c (resolve_select): Add argument 'select_type', reject | |
| non-scalar expressions. | |
| (resolve_select_type,resolve_code): Pass new argument to | |
| 'resolve_select'. | |
| 2013-01-23 Jakub Jelinek <jakub@redhat.com> | |
| PR fortran/56052 | |
| * trans-decl.c (gfc_get_symbol_decl): Set DECL_ARTIFICIAL | |
| and DECL_IGNORED_P on select_type_temporary and don't set | |
| DECL_BY_REFERENCE. | |
| 2013-01-21 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/55919 | |
| * scanner.c (add_path_to_list): Copy path to temporary and strip | |
| trailing directory separators before calling stat(). | |
| 2013-01-17 Richard Biener <rguenther@suse.de> | |
| * trans-stmt.c (gfc_trans_do): Conditionally compute countm1 | |
| dependent on sign of step, avoids repeated evaluation of | |
| step sign test. Avoid undefined overflow issues by using unsigned | |
| arithmetic. | |
| 2013-01-16 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/55983 | |
| * class.c (find_typebound_proc_uop): Check for f2k_derived instead of | |
| asserting it. | |
| 2013-01-16 Jakub Jelinek <jakub@redhat.com> | |
| Tobias Burnus <burnus@net-b.de> | |
| PR driver/55884 | |
| * lang.opt (fintrinsic-modules-path): Don't accept Joined. | |
| (fintrinsic-modules-path=): New. | |
| * options.c (gfc_handle_option, gfc_get_option_string, | |
| gfc_get_option_string): Handle the latter. | |
| 2013-01-16 Jakub Jelinek <jakub@redhat.com> | |
| PR fortran/52865 | |
| * trans-stmt.c (gfc_trans_do): Put countm1-- before conditional | |
| and use value of countm1 before the decrement in the condition. | |
| 2013-01-15 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/54286 | |
| * expr.c (gfc_check_pointer_assign): Check for presence of | |
| 's2' before using it. | |
| 2013-01-14 Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/55806 | |
| * frontend-passes.c (optimize_reduction): New function, | |
| including prototype. | |
| (callback_reduction): Likewise. | |
| (gfc_run_passes): Also run optimize_reduction. | |
| (copy_walk_reduction_arg): New function. | |
| (dummy_code_callback): New function. | |
| 2013-01-13 Jakub Jelinek <jakub@redhat.com> | |
| PR fortran/55935 | |
| * trans-expr.c (gfc_conv_structure): Call | |
| unshare_expr_without_location on the ctor elements. | |
| 2013-01-13 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/54286 | |
| * expr.c (gfc_check_pointer_assign): Ensure that both lvalue | |
| and rvalue interfaces are presented to gfc_compare_interfaces. | |
| Simplify references to interface names by using the symbols | |
| themselves. Call gfc_compare_interfaces with s1 and s2 inter- | |
| changed to overcome the asymmetry of this function. Do not | |
| repeat the check for the presence of s1 and s2. | |
| 2013-01-12 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/55072 | |
| * trans-array.c (gfc_conv_array_parameter): No packing was done for | |
| full arrays of derived type. | |
| 2013-01-08 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/55868 | |
| * class.c (get_unique_type_string): Change $tar to STAR and | |
| replace sprintf by strcpy where there is no formatting. | |
| * decl.c (gfc_match_decl_type_spec): Change $tar to STAR. | |
| 2013-01-09 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/47203 | |
| * module.c (check_for_ambiguous): Get the current program unit using | |
| gfc_current_ns. | |
| 2013-01-09 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/55758 | |
| * resolve.c (resolve_symbol): Reject non-C_Bool logicals | |
| in BIND(C) procedures with -std=f*. | |
| 2013-01-08 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/55618 | |
| * trans-expr.c (gfc_conv_procedure_call): Dereference scalar | |
| character function arguments to elemental procedures in | |
| scalarization loops. | |
| 2013-01-07 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/55763 | |
| * gfortran.h (gfc_check_assign_symbol): Update prototype. | |
| * decl.c (add_init_expr_to_sym, do_parm): Update call. | |
| * expr.c (gfc_check_assign_symbol): Handle BT_CLASS and | |
| improve error location; support components. | |
| (gfc_check_pointer_assign): Handle component assignments. | |
| * resolve.c (resolve_fl_derived0): Call gfc_check_assign_symbol. | |
| (resolve_values): Update call. | |
| (resolve_structure_cons): Avoid double diagnostic. | |
| 2013-01-07 Tobias Burnus <burnus@net-b.de> | |
| Thomas Koenig <tkoenig@gcc.gnu.org> | |
| PR fortran/55852 | |
| * expr.c (gfc_build_intrinsic_call): Avoid clashes | |
| with user's procedures. | |
| * gfortran.h (gfc_build_intrinsic_call): Update prototype. | |
| * simplify.c (gfc_simplify_size): Update call. | |
| * class.c (finalization_scalarizer, finalization_get_offset, | |
| finalizer_insert_packed_call, generate_finalization_wrapper): | |
| Clean up by using gfc_build_intrinsic_call. | |
| 2013-01-07 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/55763 | |
| * resolve.c (resolve_select_type): Reject intrinsic types for | |
| a non-unlimited-polymorphic selector. | |
| 2013-01-06 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/53876 | |
| PR fortran/54990 | |
| PR fortran/54992 | |
| * trans-array.c (build_array_ref): Check the TYPE_CANONICAL | |
| to see if it is GFC_CLASS_TYPE_P. | |
| * trans-expr.c (gfc_get_vptr_from_expr): The same. | |
| (gfc_conv_class_to_class): If the types are not the same, | |
| cast parmese->expr to the type of ctree. | |
| * trans-types.c (gfc_get_derived_type): GFC_CLASS_TYPE_P of | |
| CLASS components must be set. | |
| 2013-01-06 Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/42769 | |
| PR fortran/45836 | |
| PR fortran/45900 | |
| * module.c (read_module): Don't reuse local symtree if the associated | |
| symbol isn't exactly the one wanted. Don't reuse local symtree if it is | |
| ambiguous. | |
| * resolve.c (resolve_call): Use symtree's name instead of symbol's to | |
| lookup the symtree. | |
| 2013-01-05 Steven G. Kargl <kargl@gcc.gnu.org> | |
| Mikael Morin <mikael@gcc.gnu.org> | |
| PR fortran/55827 | |
| * class.c (gfc_fix_class_refs): Adapt ts initialization for the case | |
| e->symtree == NULL. | |
| * trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it. | |
| 2013-01-05 Tobias Burnus <burnus@net-b.de> | |
| * class.c (finalize_component): Used passed offset expr. | |
| (finalization_get_offset): New static function. | |
| (finalizer_insert_packed_call, generate_finalization_wrapper): Use it | |
| to handle noncontiguous arrays. | |
| 2013-01-04 Tobias Burnus <burnus@net-b.de> | |
| * trans.c (gfc_build_final_call): New function. | |
| * trans.h (gfc_build_final_call, gfc_conv_scalar_to_descriptor): | |
| New function prototypes. | |
| * trans-expr.c (gfc_conv_scalar_to_descriptor): Renamed from | |
| conv_scalar_to_descriptor, removed static attribute. | |
| (gfc_conv_procedure_call): Honor renaming. | |
| 2013-01-04 Tobias Burnus <burnus@net-b.de> | |
| * intrinsic.c (add_functions): New internal intrinsic | |
| function GFC_PREFIX ("stride"). | |
| * gfortran.h (gfc_isym_id): Add GFC_ISYM_STRIDE. | |
| * intrinsic.h (gfc_resolve_stride): New prototypes. | |
| * iresolve.c (gfc_resolve_stride): New function. | |
| * trans-intrinsic.c (conv_intrinsic_stride): New static | |
| function. | |
| (gfc_conv_intrinsic_function): Use it. | |
| 2013-01-04 Tobias Burnus <burnus@net-b.de> | |
| * class.c (gfc_find_intrinsic_vtab): Add _final | |
| component. | |
| * decl.c (gfc_match_null): Remove superfluous | |
| variadic argument to gfc_match. | |
| 2013-01-04 Paul Thomas <pault@gcc.gnu.org> | |
| PR fortran/55172 | |
| * match.c (copy_ts_from_selector_to_associate): Remove call to | |
| gfc_resolve_expr and replace it with explicit setting of the | |
| array reference type. | |
| * resolve.c (resolve_select_type): It is an error if the | |
| selector is coindexed. | |
| 2013-01-04 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/55763 | |
| * decl.c (gfc_match_null): Parse and reject MOLD. | |
| 2013-01-04 Tobias Burnus <burnus@net-b.de> | |
| PR fortran/55854 | |
| PR fortran/55763 | |
| * class.c (gfc_class_null_initializer): Fix finding the vtab. | |
| (gfc_find_intrinsic_vtab): Use BT_VOID for some components. | |
| 2013-01-03 Janus Weil <janus@gcc.gnu.org> | |
| PR fortran/55855 | |
| * expr.c (gfc_check_assign): Use 'gfc_expr_attr' to evaluate attributes | |
| of rvalue. Correct hyphenation in error message. | |
| 2013-01-03 Jakub Jelinek <jakub@redhat.com> | |
| * gfortranspec.c (lang_specific_driver): Update copyright notice | |
| dates. | |
| Copyright (C) 2013 Free Software Foundation, Inc. | |
| Copying and distribution of this file, with or without modification, | |
| are permitted in any medium without royalty provided the copyright | |
| notice and this notice are preserved. |