| 2017-10-10 Release Manager |
| |
| * GCC 5.5.0 released. |
| |
| 2017-09-02 Janus Weil <janus@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/81770 |
| * expr.c (gfc_check_pointer_assign): Improve the check whether pointer |
| may outlive pointer target. |
| |
| 2017-06-09 Janus Weil <janus@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/70601 |
| * trans-expr.c (gfc_conv_procedure_call): Fix detection of allocatable |
| function results. |
| |
| 2017-05-30 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from mainline |
| 2016-12-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/78866 |
| * openmp.c (resolve_omp_clauses): Diagnose assumed size arrays in |
| OpenMP map, to and from clauses. |
| * trans-openmp.c: Include diagnostic-core.h, temporarily redefining |
| GCC_DIAG_STYLE to __gcc_tdiag__. |
| (gfc_omp_finish_clause): Diagnose implicitly mapped assumed size |
| arrays. |
| |
| 2016-09-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/77666 |
| * trans-openmp.c (gfc_omp_private_outer_ref): Return true even for |
| references to allocatable arrays. |
| |
| 2016-09-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/77500 |
| * trans-openmp.c (gfc_trans_omp_atomic): For atomic write or |
| swap, don't try to look through GFC_ISYM_CONVERSION. In other cases, |
| check that value.function.isym is non-NULL before dereferencing it. |
| |
| 2017-05-10 Richard Biener <rguenther@suse.de> |
| |
| Backport from mainline |
| 2017-03-06 Richard Biener <rguenther@suse.de> |
| |
| PR fortran/79894 |
| * trans.c (gfc_add_modify_loc): Weaken assert. |
| |
| 2017-05-01 Janus Weil <janus@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/80392 |
| * trans-types.c (gfc_get_derived_type): Prevent an infinite loop when |
| building a derived type that includes a procedure pointer component |
| with a polymorphic result. |
| |
| 2017-04-21 Janus Weil <janus@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/80361 |
| * class.c (generate_finalization_wrapper): Give the finalization wrapper |
| the recursive attribute. |
| |
| 2017-04-14 Dominique d'Humieres <dominiq@lps.ens.fr> |
| |
| Backport from trunk |
| 2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/59910 |
| PR fortran/80388 |
| * primary.c (gfc_match_structure_constructor): Reduce a structure |
| constructor in a DATA statement. |
| |
| 2017-02-07 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| * trans-types.c (gfc_get_int_kind_from_width_isofortranen): Choose |
| REAL type with the widest precision if two (or more) have the same |
| storage size. |
| |
| 2016-12-22 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/78239 |
| * decl.c (char_len_param_value): Also check for -fimplicit-none |
| when determining if implicit none is in force. |
| |
| 2016-12-04 Janus Weil <janus@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/78443 |
| * class.c (add_proc_comp): Add a vtype component for non-overridable |
| procedures that are overriding. |
| |
| 2016-12-01 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/78279 |
| * dependency.c (identical_array_ref): Convert gcc_assert to conditional |
| and gfc_internal_error. |
| |
| 2016-11-24 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/78500 |
| * expr.c (gfc_check_vardef_contextm): Fix NULL pointer dereference. |
| * interface.c (matching_typebound_op): Ditto. |
| |
| 2016-11-23 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/78297 |
| * trans-common.c (finish_equivalences): Do not dereference a NULL pointer. |
| |
| 2016-11-23 Janus Weil <janus@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/66227 |
| * simplify.c (gfc_simplify_extends_type_of): Fix missed optimization. |
| Prevent over-simplification. Fix a comment. Add a comment. |
| |
| 2016-11-20 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/69741 |
| * resolve.c (gfc_resolve_forall): Check for nonscalar index variables. |
| |
| 2016-11-06 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/69544 |
| PR fortran/78178 |
| * match.c (match_simple_where): Fill in locus for assigment |
| in simple WHERE statement. |
| (gfc_match_where): Likewise. |
| |
| 2016-11-01 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/71902 |
| * frontend-passes.c (realloc_string_callback): Also check for the |
| lhs being deferred. Name temporary variable "realloc_string". |
| |
| 2016-10-24 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/78021 |
| * gfc_compare_functions: Strings with different lengths in |
| argument lists compare unequal. |
| |
| 2016-10-24 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/71895 |
| * interface.c (gfc_compare_derived_types): Convert gcc_assert() |
| to a gfc_internal_error() to prevent an ICE. |
| |
| 2016-10-24 Paul Thomas <pault@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/61420 |
| PR fortran/78013 |
| * resolve.c (resolve_variable): Obtain the typespec for a |
| variable expression, when the variable is a function result |
| that is a procedure pointer. |
| |
| 2016-10-17 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/77978 |
| * match.c (gfc_match_stopcode): Fix error reporting for several |
| deficiencies in matching stop-codes. |
| |
| 2016-10-05 Steven G. Kargl <kargls@gcc.gnu.org> |
| |
| PR fortran/58991 |
| PR fortran/58992 |
| * resolve.c (resolve_assoc_var): Fix CHARACTER type-spec for a |
| selector in ASSOCIATE. |
| (resolve_fl_variable): Skip checks for an ASSOCIATE variable. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/77391 |
| * resolve.c (deferred_requirements): New function to check F2008:C402. |
| (resolve_fl_variable,resolve_fl_parameter): Use it. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/77380 |
| * dependency.c (gfc_check_dependency): Do not assert with |
| -fcoarray=lib. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/61318 |
| * interface.c (compare_parameter): Use better locus for error message. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/71859 |
| * check.c(numeric_check): Prevent ICE. Issue error for invalid |
| subroutine as an actual argument when numeric argument is expected. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport of trunk |
| |
| PR fortran/69867 |
| * decl.c (build_struct): Ensure that pointers point to something. |
| |
| PR fortran/69962 |
| * decl.c (gfc_set_constant_character_len): if expr is not |
| constant issue an error instead of an ICE. |
| |
| 2016-09-30 Steven g. Kargl <kargl@gcc.gnu.org> |
| |
| Backport of trunk |
| |
| PR fortran/77351 |
| * frontend-passes.c (remove_trim,combine_array_constructor): Check for |
| NULL pointer. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/68566 |
| * check.c (gfc_check_reshape): Check for constant expression. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/71799 |
| * resolve.c(gfc_resolve_iterator): Failure of type conversion need |
| not ICE. |
| |
| 2016-09-30 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/70006 |
| * io.c (gfc_resolve_dt): Use correct locus. |
| * resolve.c (resolve_branch): Ditto. |
| |
| 2016-09-29 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| |
| PR fortran/77420 |
| * trans-common.c: Handle array elements in equivalence when |
| the lower and upper bounds of array spec are NULL. |
| |
| PR fortran/77460 |
| * simplify.c (simplify_transformation_to_scalar): On error, result |
| may be NULL, simply return. |
| |
| 2016-09-29 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/77506 |
| * array.c (gfc_match_array_constructor): CHARACTER(len=*) cannot |
| appear in an array constructor. |
| |
| PR fortran/77507 |
| * intrinsic.c (add_functions): Use correct keyword. |
| |
| 2016-09-29 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/71067 |
| * decl.c (match_data_constant): On error, set 'result' to NULL. |
| |
| PR fortran/77260 |
| * gcc/fortran/trans-decl.c (generate_local_decl): Suppress warning |
| for unused variable if symbol is entry point. |
| |
| 2016-09-29 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/69514 |
| * array.c (gfc_match_array_constructor): If type-spec is present, |
| walk the array constructor performing possible conversions for |
| numeric types. |
| |
| 2016-09-28 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| backport from trunk |
| PR fortran/71730 |
| * decl.c (char_len_param_value): Check return value of |
| gfc_reduce_init_expr(). |
| |
| PR fortran/77612 |
| * decl.c (char_len_param_value): Check parent namespace for |
| seen_implicit_none. |
| |
| 2016-09-28 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| backport from trunk |
| PR fortran/77694 |
| * frontend-passes.c (optimize_binop_array_assignment): Check pointer |
| for NULL. |
| |
| 2016-08-13 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/68147 |
| * frontend-passes.c (realloc_string_callback): Don't set |
| walk_subtrees. |
| |
| 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-09 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/71795 |
| * frontend-passes.c (combine_array_constructor): Don't |
| do anything if the expression is inside an array iterator. |
| |
| 2016-08-09 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/69742 |
| * frontend-passes.c (cfe-expr_0): Don't register functions |
| from within an ASSOCIATE statement. |
| |
| 2016-08-08 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport from trunk |
| PR fortran/60526 |
| * decl.c (build_sym): If the name has already been defined as a |
| type, it has a symtree with an upper case letter at the beginning. |
| If such a symtree exists, issue an error and exit. Don't do |
| this if there is no corresponding upper case letter. |
| |
| 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-07-29 Steven G. Kargl <kargl@gcc.gnu.org> |
| Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| Backport 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> |
| |
| Backport 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-11 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-07 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from mainline |
| 2016-07-01 Jakub Jelinek <jakub@redhat.com> |
| |
| 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-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-03 Release Manager |
| |
| * GCC 5.4.0 released. |
| |
| 2016-06-02 Paul Thomas <pault@gcc.gnu.org> |
| |
| Backport from trunk. |
| PR fortran/70350 |
| * trans-expr.c (gfc_trans_assignment_1): Exclude initialization |
| assignments from check on assignment of scalars to unassigned |
| arrays and correct wrong code within the corresponding block. |
| |
| 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-04-04 Andre Vehreschild <vehre@gmx.de> |
| |
| PR fortran/66911 |
| * trans-stmt.c (gfc_trans_allocate): Get the deferred length of an |
| expression by converting the expression when the length is not set |
| in the symbol's ts. |
| |
| 2016-04-04 Andre Vehreschild <vehre@gcc.gnu.org> |
| |
| PR fortran/65795 |
| * trans-array.c (gfc_array_allocate): When the array is a coarray, |
| do not nullyfing its allocatable components in array_allocate, because |
| the nullify missed the array ref and nullifies the wrong component. |
| Cosmetics. |
| |
| 2016-03-28 Andre Vehreschild <vehre@gcc.gnu.org> |
| |
| PR fortran/70397 |
| * trans-expr.c (gfc_class_len_or_zero_get): Add function to return a |
| constant zero tree, when the class to get the _len component from is |
| not unlimited polymorphic. |
| (gfc_copy_class_to_class): Use the new function. |
| * trans.h: Added interface of new function gfc_class_len_or_zero_get. |
| |
| 2016-03-28 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> |
| |
| Backport from trunk. |
| * trans-decl.c (gfc_build_builtin_function_decls): |
| caf_stop_numeric and caf_stop_str definition. |
| * trans-stmt.c (gfc_trans_stop): invoke external functions |
| for stop and stop_str when coarrays are used. |
| * trans.h: extern for new functions. |
| |
| 2016-03-09 Paul Thomas <pault@gcc.gnu.org> |
| |
| Backport from trunk. |
| PR fortran/69423 |
| * trans-decl.c (create_function_arglist): Deferred character |
| length functions, with and without declared results, address |
| the passed reference type as '.result' and the local string |
| length as '..result'. |
| (gfc_null_and_pass_deferred_len): Helper function to null and |
| return deferred string lengths, as needed. |
| (gfc_trans_deferred_vars): Call it, thereby reducing repeated |
| code, add call for deferred arrays and reroute pointer function |
| results. Avoid using 'tmp' for anything other that a temporary |
| tree by introducing 'type_of_array' for the arrayspec type. |
| |
| 2016-03-09 Paul Thomas <pault@gcc.gnu.org> |
| |
| Backport from trunk. |
| PR fortran/64324 |
| * resolve.c (check_uop_procedure): Prevent deferred length |
| characters from being trapped by assumed length error. |
| |
| Backport from trunk. |
| PR fortran/49630 |
| PR fortran/54070 |
| PR fortran/60593 |
| PR fortran/60795 |
| PR fortran/61147 |
| PR fortran/64324 |
| * trans-array.c (gfc_conv_scalarized_array_ref): Pass decl for |
| function as well as variable expressions. |
| (gfc_array_init_size): Add 'expr' as an argument. Use this to |
| correctly set the descriptor dtype for deferred characters. |
| (gfc_array_allocate): Add 'expr' to the call to |
| 'gfc_array_init_size'. |
| * trans.c (gfc_build_array_ref): Expand logic for setting span |
| to include indirect references to character lengths. |
| * trans-decl.c (gfc_get_symbol_decl): Ensure that deferred |
| result char lengths that are PARM_DECLs are indirectly |
| referenced both for directly passed and by reference. |
| (create_function_arglist): If the length type is a pointer type |
| then store the length as the 'passed_length' and make the char |
| length an indirect reference to it. |
| (gfc_trans_deferred_vars): If a character length has escaped |
| being set as an indirect reference, return it via the 'passed |
| length'. |
| * trans-expr.c (gfc_conv_procedure_call): The length of |
| deferred character length results is set TREE_STATIC and set to |
| zero. |
| (gfc_trans_assignment_1): Do not fix the rse string_length if |
| it is a variable, a parameter or an indirect reference. Add the |
| code to trap assignment of scalars to unallocated arrays. |
| * trans-stmt.c (gfc_trans_allocate): Remove 'def_str_len' and |
| all references to it. Instead, replicate the code to obtain a |
| explicitly defined string length and provide a value before |
| array allocation so that the dtype is correctly set. |
| trans-types.c (gfc_get_character_type): If the character length |
| is a pointer, use the indirect reference. |
| |
| 2016-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
| |
| Backported from mainline |
| PR fortran/61156 |
| * scanner.c (add_path_to_list): If include path is not a directory, |
| issue a fatal error. |
| |
| 2016-02-27 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> |
| |
| Backported from mainline |
| * trans.c (gfc_allocate_allocatable): size conversion |
| from byte to number of elements for event variables. |
| * trans-types.c (gfc_get_derived_type): event variables |
| represented as a pointer (like lock variable). |
| |
| 2016-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
| |
| Backported from mainline |
| PR fortran/65996 |
| * error.c (gfc_error): Save the state of abort_on_error and set |
| it to false for buffered errors to allow normal processing. |
| Restore the state before leaving. |
| |
| 2016-02-12 Tobias Burnus <burnus@net-b.de> |
| Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> |
| |
| Backported from mainline |
| 2015-12-02 Tobias Burnus <burnus@net-b.de> |
| Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> |
| |
| * check.c (gfc_check_event_query): New function. |
| * dump-parse-tree.c (show_code_node): Handle EXEC_EVENT_POST, |
| EXEC_EVENT_WAIT. |
| * expr.c (gfc_check_vardef_context): New check for event variables |
| definition. |
| * gfortran.h (gfc_statement): Add ST_EVENT_POST, ST_EVENT_WAIT. |
| (gfc_isym_id): GFC_ISYM_EVENT_QUERY. |
| (struct symbol_attribute): New field. |
| (gfc_exec_op): Add EXEC_EVENT_POST and EXEC_EVENT_WAIT. |
| * gfortran.texi: Document about new events functions and minor |
| changes. |
| * interface.c (compare_parameter): New check. |
| (gfc_procedure_use): New check for explicit procedure interface. |
| (add_subroutines): Add event_query. |
| * intrinsic.h (gfc_check_event_query,gfc_resolve_event_query): |
| New prototypes. |
| * iresolve.c (gfc_resolve_event_query): New function. |
| * iso-fortran-env.def (event_type): New type. |
| * match.c (event_statement,gfc_match_event_post,gfc_match_event_wait): |
| New functions. |
| (gfc_match_name): New event post and event wait. |
| * match.h (gfc_match_event_post,gfc_match_event_wait): |
| New prototypes. |
| * module.c (ab_attribute): Add AB_EVENT_COMP. |
| (attr_bits): Likewise. |
| (mio_symbol_attribute): Handle event_comp attribute. |
| * parse.c (decode_statement): Add ST_EVENT_POST, ST_EVENT_WAIT. |
| (next_statement): Add ST_EVENT_POST, ST_EVENT_WAIT. |
| (gfc_ascii_statement): Add ST_EVENT_POST, ST_EVENT_WAIT. |
| (parse_derived): Check for event_type components. |
| * resolve.c (resolve_allocate_expr): Check for event variable def. |
| (resolve_lock_unlock): Renamed to resolve_lock_unlock_event. It |
| includes logic for locks and events. |
| (gfc_resolve_code): Call it. |
| (gfc_resolve_symbol): New check for event variable to be a corray. |
| * st.c (gfc_free_statement): Handle new EXEC_EVENT_POST and |
| EXEC_EVENT_WAIT. |
| * trans-decl.c (gfor_fndecl_caf_event_post,gfor_fndecl_caf_event_wait, |
| gfor_fndecl_caf_event_query): New global variables. |
| (generate_coarray_sym_init): Checking for event_type. |
| (gfc_conv_procedure_call): Check for C bind attribute. |
| * trans-intrinsic.c (conv_intrinsic_event_query): New function. |
| (conv_intrinsic_move_alloc): Call it. |
| * trans-stmt.c (gfc_trans_lock_unlock): Passing address |
| of actual argument. |
| (gfc_trans_sync): Likewise. |
| (gfc_trans_event_post_wait): New function. |
| * trans-stmt.h (gfc_trans_event_post_wait): New prototype. |
| * trans-types.c (gfc_get_derived_type): Integer_kind as event_type. |
| * trans.c (gfc_allocate_using_lib): New argument and logic for events. |
| (gfc_allocate_allocatable): Passing new argument. |
| (trans_code): Handle EXEC_EVENT_POST, EXEC_EVENT_WAIT. |
| * trans.h (gfc_coarray_type): New elements. |
| (gfor_fndecl_caf_event_post,gfor_fndecl_caf_event_wait, |
| gfor_fndecl_caf_event_query): Declare them. |
| |
| 2016-02-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from mainline |
| 2016-01-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/69128 |
| * trans.h (OMPWS_SCALARIZER_BODY): Define. |
| (OMPWS_NOWAIT): Renumber. |
| * trans-stmt.c (gfc_trans_where_3): Only set OMPWS_SCALARIZER_WS |
| if OMPWS_SCALARIZER_BODY is not set already, and set also |
| OMPWS_SCALARIZER_BODY until the final loop creation. |
| * trans-expr.c (gfc_trans_assignment_1): Likewise. |
| * trans-openmp.c (gfc_trans_omp_workshare): Also clear |
| OMPWS_SCALARIZER_BODY. |
| * trans-array.c (gfc_trans_scalarized_loop_end): Don't create |
| OMP_FOR if OMPWS_SCALARIZER_BODY is set. |
| |
| 2016-02-03 Andre Vehreschild <vehre@gcc.gnu.org> |
| |
| PR fortran/67451 |
| PR fortran/69418 |
| * trans-expr.c (gfc_copy_class_to_class): For coarrays just the |
| pointer is passed. Take it as is without trying to deref the |
| _data component. |
| * trans-stmt.c (gfc_trans_allocate): Take care of coarrays as |
| argument to source=-expression. |
| |
| 2016-01-30 Bud Davis <jmdavis@link.com> |
| Mikael Morin <mikael@gcc.gnu.org> |
| |
| Backport from trunk. |
| PR fortran/59746 |
| * symbol.c (gfc_restore_last_undo_checkpoint): Delete |
| a common block symbol if it was put in the list. |
| |
| 2016-01-28 Janus Weil <janus@gcc.gnu.org> |
| |
| PR fortran/69484 |
| * invoke.texi: Fix documentation of -Wall with respect to -Wtabs. |
| |
| 2016-01-28 Andre Vehreschild <vehre@gcc.gnu.org> |
| |
| PR fortran/62536 |
| * decl.c: Prevent setting gfc_current_ns to NULL when block statement's |
| nesting is incomplete. There is already an error conditon, so having |
| gfc_current_ns pointing to an eventually wrong namespace does not matter |
| that much. |
| |
| 2016-01-27 Andre Vehreschild <vehre@gcc.gnu.org> |
| |
| PR fortran/p69268 |
| * trans-stmt.c (gfc_trans_allocate): Make sure the source= |
| expression is evaluated once only. Use gfc_trans_assignment () |
| instead of explicitly calling gfc_trans_string_copy () to |
| reduce the code complexity in trans_allocate. |
| |
| 2016-01-25 Dominique d'Humieres <dominiq@lps.ens.fr> |
| |
| PR fortran/68283 |
| * primary.c (gfc_variable_attr): revert revision r221955, |
| call gfc_internal_error only if there is no error. |
| |
| 2016-01-17 Mikael Morin <mikael@gcc.gnu.org> |
| Dominique d'Humieres <dominiq@lps.ens.fr> |
| |
| Backport from trunk. |
| PR fortran/61831 |
| * trans-array.c (gfc_conv_array_parameter): Guard allocatable |
| component deallocation code generation with descriptorless |
| calling convention flag. |
| * trans-expr.c (gfc_conv_expr_reference): Remove allocatable |
| component deallocation code generation from revision 212329. |
| (expr_may_alias_variables): New function. |
| (gfc_conv_procedure_call): New boolean elemental_proc to factor |
| check for procedure elemental-ness. Rename boolean f to nodesc_arg |
| and declare it in the outer scope. Use expr_may_alias_variables, |
| elemental_proc and nodesc_arg to decide whether generate allocatable |
| component deallocation code. |
| (gfc_trans_subarray_assign): Set deep copy flag. |
| |
| 2016-01-17 Paul Thomas <pault@gcc.gnu.org> |
| |
| Backport from trunk. |
| PR fortran/66082 |
| * trans-array.c (gfc_conv_array_parameter): Ensure that all |
| non-variable arrays with allocatable components have the |
| components deallocated after the procedure call. |
| |
| 2016-01-10 Paul Thomas <pault@gcc.gnu.org> |
| |
| Update copyright years in updated files. |
| |
| PR fortran/50221 |
| PR fortran/68216 |
| PR fortran/63932 |
| PR fortran/66408 |
| * trans_array.c (gfc_conv_scalarized_array_ref): Pass the |
| symbol decl for deferred character length array references. |
| * trans-stmt.c (gfc_trans_allocate): Keep the string lengths |
| to update deferred length character string lengths. |
| * trans-types.c (gfc_get_dtype_rank_type); Use the string |
| length of deferred character types for the dtype size. |
| * trans.c (gfc_build_array_ref): For references to deferred |
| character arrays, use the domain max value, if it is a variable |
| to set the 'span' and use pointer arithmetic for acces to the |
| element. |
| (trans_code): Set gfc_current_locus for diagnostic purposes. |
| |
| PR fortran/67674 |
| * trans-expr.c (gfc_conv_procedure_call): Do not fix deferred |
| string lengths of components. |
| |
| PR fortran/49954 |
| * resolve.c (deferred_op_assign): New function. |
| (gfc_resolve_code): Call it. |
| * trans-array.c (concat_str_length): New function. |
| (gfc_alloc_allocatable_for_assignment): Jump directly to alloc/ |
| realloc blocks for deferred character length arrays because the |
| string length might change, even if the shape is the same. Call |
| concat_str_length to obtain the string length for concatenation |
| since it is needed to compute the lhs string length. |
| Set the descriptor dtype appropriately for the new string |
| length. |
| * trans-expr.c (gfc_trans_assignment_1): Fix the rse string |
| length for all characters, other than deferred types. For |
| concatenation operators, push the rse.pre block to the inner |
| most loop so that the temporary pointer and the assignments |
| are properly placed. |
| |
| PR fortran/67779 |
| * trans_array.c (gfc_conv_scalarized_array_ref): Add missing |
| se->use_offset from condition for calculation of 'base'. |
| |
| ^L |
| Copyright (C) 2015 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. |