diff options
Diffstat (limited to 'gcc/fortran/ChangeLog')
-rw-r--r-- | gcc/fortran/ChangeLog | 319 |
1 files changed, 319 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 92ef2037e6..335ca6b956 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,322 @@ +2016-08-22 Release Manager + + * GCC 6.2.0 released. + +2016-08-16 Thomas Koenig <tkoenig@gcc.gnu.org> + + Backport from trunk + * frontend-passes.c (create_var): Set ts.deferred for + deferred-length character variables. + * dump-parse-tree.c (show_typespec): Also dump + is_c_interop, is_iso_c and deferred flags. + +2016-08-15 Jakub Jelinek <jakub@redhat.com> + + PR debug/71906 + * trans-decl.c (gfc_get_symbol_decl): Call gfc_finish_var_decl + for decl's character length before gfc_finish_var_decl on the + decl itself. + +2016-08-11 Andre Vehreschild <vehre@gcc.gnu.org> + + Backport from trunk: + PR fortran/71936 + * trans-array.c (gfc_array_allocate): When SOURCE= is a function + stick with the ref of the object to allocate. + +2016-08-11 Andre Vehreschild <vehre@gcc.gnu.org> + + Backport from trunk + PR fortran/72698 + * trans-stmt.c (gfc_trans_allocate): Prevent generating code for + copy of zero sized string and with it an ICE. + +2016-08-08 Andre Vehreschild <vehre@gcc.gnu.org> + + Backport from trunk: + PR fortran/70524 + * trans-array.c (gfc_trans_dummy_array_bias): Ensure that the + location information is correctly set. + * trans-decl.c (gfc_trans_deferred_vars): Set the locus of the + current construct early. + +2016-08-07 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/71795 + Backport from trunk + * frontend-passes.c (combine_array_constructor): Don't + do anything if the expression is inside an array iterator. + +2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org> + Thomas Koenig <tkoenig@gcc.gnu.org> + + Backported from trunk: + PR fortran/71883 + * frontend-passes.c (gfc_run_passes): Bail out if there are any + errors. + * error.c (gfc_internal_error): If there are any errors in the + buffer, exit with EXIT_FAILURE. + +2016-07-22 Andre Vehreschild <vehre@gcc.gnu.org> + + Backported from trunk: + PR fortran/71807 + * trans-expr.c (gfc_trans_subcomponent_assign): Special casing + when allocatable component is set to null() in initializer. + +2016-07-22 Andre Vehreschild <vehre@gcc.gnu.org> + + Backport from trunk: + PR fortran/70842 + * simplify.c (gfc_simplify_len): Only for unlimited polymorphic + types replace the expression's _data ref with a _len ref. + +2016-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + Backport from trunk: + PR fortran/71764 + * trans-expr.c (gfc_trans_structure_assign): Remove assert. + +2016-07-13 Andre Vehreschild <vehre@gcc.gnu.org> + + Backport from trunk: + PR fortran/71623 + * trans-stmt.c (gfc_trans_allocate): Add code of pre block of typespec + in allocate to parent block. + +2016-07-09 Thomas Koenig <tkoenig@gcc.gnu.org> + + Backport from trunk: + PR fortran/71783 + * frontend-passes.c (create_var): Always allocate a charlen + for character variables. + +2016-07-08 Cesar Philippidis <cesar@codesourcery.com> + + Backport from trunk: + 2016-07-08 Cesar Philippidis <cesar@codesourcery.com> + + * parse.c (matcha): Define. + (decode_oacc_directive): Add spec_only local var and set it. Use + matcha to parse acc directives except for routine and declare. Return + ST_GET_FCN_CHARACTERISTICS if a non-declarative directive could be + matched. + +2016-07-02 Jakub Jelinek <jakub@redhat.com> + + Backported from mainline + 2016-07-01 Jakub Jelinek <jakub@redhat.com> + + PR fortran/71687 + * f95-lang.c (struct binding_level): Add reversed field. + (clear_binding_level): Adjust initializer. + (getdecls): If reversed is clear, set it and nreverse the names + chain before returning it. + (poplevel): Use getdecls. + * trans-decl.c (gfc_generate_function_code, gfc_process_block_locals): + Use nreverse to pushdecl decls in the declaration order. + + PR fortran/71717 + * trans-openmp.c (gfc_omp_privatize_by_reference): Return false + for GFC_DECL_ASSOCIATE_VAR_P with POINTER_TYPE. + + 2016-06-30 Jakub Jelinek <jakub@redhat.com> + + PR fortran/71704 + * parse.c (matchs, matcho): Move right before decode_omp_directive. + If spec_only, only gfc_match the keyword and if successful, goto + do_spec_only. + (matchds, matchdo): Define. + (decode_omp_directive): Add spec_only local var and set it. + Use matchds or matchdo macros instead of matchs or matcho + for declare target, declare simd, declare reduction and threadprivate + directives. Return ST_GET_FCN_CHARACTERISTICS if a non-declarative + directive could be matched. + (next_statement): For ST_GET_FCN_CHARACTERISTICS restore + gfc_current_locus from old_locus even if there is no label. + + PR fortran/71705 + * trans-openmp.c (gfc_trans_omp_clauses): Set TREE_ADDRESSABLE on + decls in to/from clauses. + +2016-06-29 Cesar Philippidis <cesar@codesourcery.com> + + Back port from trunk + 2016-06-29 Cesar Philippidis <cesar@codesourcery.com> + + * openmp.c (match_oacc_clause_gang): Rename to ... + (match_oacc_clause_gwv): this. Add support for OpenACC worker and + vector clauses. + (gfc_match_omp_clauses): Use match_oacc_clause_gwv for + OMP_CLAUSE_{GANG,WORKER,VECTOR}. Propagate any MATCH_ERRORs for + invalid OMP_CLAUSE_{ASYNC,WAIT,GANG,WORKER,VECTOR} clauses. + (gfc_match_oacc_wait): Propagate MATCH_ERROR for invalid + oacc_expr_lists. Adjust the first and needs_space arguments to + gfc_match_omp_clauses. + +2016-06-27 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/70673 + * frontend-passes.c (realloc_string_callback): Add a call to + gfc_dep_compare_expr. + +2016-06-12 Dominique d'Humieres <dominiq@lps.ens.fr> + + PR fortran/60751 + * io.c (gfc_resolve_dt): Replace GFC_STD_GNU with GFC_STD_LEGACY. + +2016-06-10 Thomas Schwinge <thomas@codesourcery.com> + + PR c/71381 + Backport from trunk r237290: + * openmp.c (gfc_match_oacc_cache): Add comment. + +2016-06-05 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/69659 + * trans-array.c (gfc_trans_dummy_array_bias): For class arrays use + the address of the _data component to reference the arrays data + component. + +2016-06-01 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/71156 + * decl.c (copy_prefix): Add checks that the module procedure + declaration prefixes are compliant with the interface. Invert + order of existing elemental and pure checks. + * resolve.c (resolve_fl_procedure): Invert order of elemental + and pure errors. + +2016-06-01 Jakub Jelinek <jakub@redhat.com> + + * parse.c (case_decl): Move ST_OMP_* to ... + (case_omp_decl): ... here, new macro. + (verify_st_order): For case_omp_decl, complain about + p->state >= ORDER_EXEC, but don't change p->state otherwise. + +2016-05-26 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + Backport from trunk. + PR fortran/66461 + * scanner.c (gfc_next_char_literal): Clear end_flag when adjusting + current locus back to old_locus. + +2016-05-20 Jakub Jelinek <jakub@redhat.com> + + PR fortran/71204 + * frontend-passes.c (realloc_string_callback): Clear inserted_block + and changed_statement before calling create_var. + +2016-05-15 Harald Anlauf <anlauf@gmx.de> + + PR fortran/69603 + * interface.c (compare_parameter): Check for non-NULL pointer. + +2016-05-14 Fritz Reese <fritzoreese@gmail.com> + + Backport from trunk: r236242 + * gfortran.texi: Update example of DEC UNION extension. + + Backport from trunk: r236241 + PR fortran/71047 + * expr.c (gfc_default_initializer): Avoid extra component refs in + constructors for derived types and classes. + + Backport from trunk: r235999 + PR fortran/56226 + * module.c (dt_upper_string): Rename to gfc_dt_upper_string + (dt_lower_string): Likewise. + * gfortran.h: Make new gfc_dt_upper/lower_string global. + * class.c: Use gfc_dt_upper_string. + * decl.c: Likewise. + * symbol.c: Likewise. + * resolve.c (resolve_component): New function. + (resolve_fl_derived0): Move component loop code to resolve_component. + * parse.c (check_component): New function. + (parse_derived): Move loop code to check_component. + * lang.opt, invoke.texi, options.c : New option -fdec-structure. + * libgfortran.h (bt): New basic type BT_UNION. + * gfortran.h (gfc_option): New option -fdec-structure. + (gfc_get_union_type, gfc_compare_union_types): New prototypes. + (gfc_bt_struct, gfc_fl_struct, case_bt_struct, case_fl_struct): New + macros. + (gfc_find_component): Change prototype. + * match.h (gfc_match_member_sep, gfc_match_map, gfc_match_union, + gfc_match_structure_decl): New prototypes. + * parse.h (gfc_comp_struct): New macro. + * symbol.c (gfc_find_component): Search for components in nested unions + * class.c (insert_component_ref, gfc_add_component_ref, add_proc_comp, + copy_vtab_proc_comps): Update calls to gfc_find_component. + * primary.c (gfc_convert_to_structure_constructor): Likewise. + * symbol.c (gfc_add_component): Likewise. + * resolve.c (resolve_typebound_function, resolve_typebound_subroutine, + resolve_typebound_procedure, resolve_component, resolve_fl_derived): + Likewise. + * expr.c (get_union_init, component_init): New functions. + * decl.c (match_clist_expr, match_record_decl, get_struct_decl, + gfc_match_map, gfc_match_union, gfc_match_structure_decl): Likewise. + * interface.c (compare_components, gfc_compare_union_types): Likewise. + * match.c (gfc_match_member_sep): Likewise. + * parse.c (check_component, parse_union, parse_struct_map): Likewise. + * resolve.c (resolve_fl_struct): Likewise. + * symbol.c (find_union_component): Likewise. + * trans-types.c (gfc_get_union_type): Likewise. + * parse.c (parse_derived): Use new functions. + * interface.c (gfc_compare_derived_types, gfc_compare_types): Likewise. + * expr.c (gfc_default_initializer): Likewise. + * gfortran.texi: Support for DEC structures, unions, and maps. + * gfortran.h (gfc_statement, sym_flavor): Likewise. + * check.c (gfc_check_kill_sub): Likewise. + * expr.c (gfc_copy_expr, simplify_const_ref, + gfc_has_default_initializer): Likewise. + * decl.c (build_sym, match_data_constant, add_init_expr_to_sym, + match_pointer_init, build_struct, variable_decl, + gfc_match_decl_type_spec, gfc_mach_data-decl, gfc_match_entry, + gfc_match_end, gfc_match_derived_decl): Likewise. + * interface.c (check_interface0, check_interface1, + gfc_search_interface): Likewise. + * misc.c (gfc_basic_typename, gfc_typename): Likewise. + * module.c (add_true_name, build_tnt, bt_types, mio_typespec, + fix_mio_expr, load_needed, mio_symbol, read_module, write_symbol, + gfc_get_module_backend_decl): Likewise. + * parse.h (gfc_compile_state): Likewise. + * parse.c (decode_specification_statement, decode_statement, + gfc_ascii_statement, verify_st_order, parse_spec): Likewise. + * primary.c (gfc_match_varspec, gfc_match_structure_constructor, + gfc_match_rvalue, match_variable): Likewise. + * resolve.c (find_arglists, resolve_structure_cons, + is_illegal_recursion, resolve_generic_f, get_declared_from_expr, + resolve_typebound_subroutine, resolve_allocate_expr, + nonscalar_typebound_assign, generate_component_assignments, + resolve_fl_variable_derived, check_defined_assignments, + resolve_component, resolve_symbol, resolve_equivalence_derived): + Likewise. + * symbol.c (flavors, check_conflict, gfc_add_flavor, gfc_use_derived, + gfc_restore_last_undo_checkpoint, gfc_type_compatible, + gfc_find_dt_in_generic): Likewise. + * trans-decl.c (gfc_get_module_backend_decl, create_function_arglist, + gfc_create_module_variable, check_constant_initializer): Likewise. + * trans-expr.c (gfc_conv_component_ref, gfc_conv_initializer, + gfc_trans_alloc_subarray_assign, gfc_trans_subcomponent_assign, + gfc_conv_structure, gfc_trans_scalar_assign, copyable_array_p): + Likewise. + * trans-io.c (transfer_namelist_element, transfer_expr, + gfc_trans_transfer): Likewise. + * trans-stmt.c (gfc_trans_deallocate): Likewise. + * trans-types.c (gfc_typenode_for_spec, gfc_copy_dt_decls_ifequal, + gfc_get_derived_type): Likewise. + +2016-05-11 Jakub Jelinek <jakub@redhat.com> + + PR fortran/70855 + * frontend-passes.c (inline_matmul_assign): Disable in !$omp workshare. + +2016-04-29 Cesar Philippidis <cesar@codesourcery.com> + + PR middle-end/70626 + * trans-openmp.c (gfc_trans_oacc_combined_directive): Duplicate + the reduction clause in both parallel and loop directives. + 2016-04-27 Release Manager * GCC 6.1.0 released. |