| 2019-02-17 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/89077 |
| * decl.c (gfc_set_constant_character_len): Clear original string |
| representation after padding has been performed to target length. |
| |
| 2019-02-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/88074 |
| * simplify.c (simplify_transformation_to_array): Run post_op |
| immediately after processing corresponding row, rather than at the |
| end. |
| (norm2_scale): New variable. |
| (add_squared): Rename to ... |
| (norm2_add_squared): ... this. Scale down operand and/or result |
| if needed. |
| (do_sqrt): Rename to ... |
| (norm2_do_sqrt): ... this. Handle the result == e case. Scale up |
| result and clear norm2_scale. |
| (gfc_simplify_norm2): Clear norm2_scale. Change add_squared to |
| norm2_add_squared and &do_sqrt to norm2_do_sqrt. Scale up result |
| and clear norm2_scale again. |
| |
| 2019-02-17 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/71066 |
| * trans-decl.c (generate_coarray_sym_init): For an array |
| constructor in a DATA statement of a coarray variable, set the |
| rank to 1 to avoid confusion later on. If the constructor |
| contains only one value, use that for initiailizig. |
| |
| 2019-02-14 Janne Blomqvist <jb@gcc.gnu.org> |
| |
| PR fortran/81552 |
| * gfortran.h (gfc_option_t): Make flag_init_integer_value a long. |
| * options.c (gfc_handle_option): Use strtol instead of atoi. |
| * invoke.texi: Document -finit-integer behavior in more detail. |
| |
| 2019-02-14 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/88248 |
| * symbol.c: Move check for labeled DO statement from |
| gfc_define_st_label to gfc_reference_st_label. |
| |
| 2019-02-14 Cesar Philippidis <cesar@codesourcery.com> |
| |
| PR fortran/72715 |
| * openmp.c (resolve_oacc_nested_loops): Error on do concurrent |
| loops. |
| |
| 2019-02-13 Martin Liska <mliska@suse.cz> |
| |
| PR fortran/88649 |
| * resolve.c (resolve_operator): Initialize 't' right |
| after function entry. Skip switch (e->value.op.op) |
| for -fdec operands that become function calls. |
| |
| 2019-02-10 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/71723 |
| * expr.c (gfc_check_assign): Add argument is_init_expr. If we are |
| looking at an init expression, issue error if the target is not a |
| TARGET and we are not looking at a procedure pointer. |
| * gfortran.h (gfc_check_assign): Add optional argument |
| is_init_expr. |
| |
| 2019-02-09 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/89077 |
| * resolve.c (gfc_resolve_substring_charlen): Check substring |
| length for constantness prior to general calculation of length. |
| |
| 2019-02-09 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/89200 |
| * trans-array.c (gfc_trans_create_temp_array): Set the 'span' |
| field for derived types. |
| |
| 2019-02-04 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/89077 |
| * decl.c (add_init_expr_to_sym): Copy length of string initializer |
| to declared symbol. |
| |
| 2019-02-04 Martin Liska <mliska@suse.cz> |
| |
| PR fortran/89185 |
| * resolve.c (resolve_ref): Remove breakout variable as |
| we need to prevent prev = &(*prev)->next to happen |
| with *prev == NULL. |
| |
| 2019-02-04 Martin Liska <mliska@suse.cz> |
| |
| PR fortran/88912 |
| * scanner.c (load_file): Report error for -fpre-include |
| file and do not ICE. |
| |
| 2019-02-02 Dominique d'Humieres <dominiq@gcc.gnu.org> |
| |
| PR fortran/81344 |
| * invoke.texi: Document the behavior of repeated -ffpe-trap |
| and -ffpe-summary. |
| |
| 2019-02-02 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/88298 |
| * arith.c (gfc_int2int): Do not warn if src->do_not_warn is set. |
| * gfortran.h (gfc_expr): Add flag do_not_warn. |
| * intrinsic.c (gfc_convert_type_warn): Set expr->do_not_warn if |
| no warning is desired. |
| |
| 2019-02-02 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/88393 |
| * trans-expr.c (gfc_conv_procedure_call): For derived entities, |
| passed in parentheses to class formals, invert the order of |
| copying allocatable components to taking the _data of the |
| class expression. |
| |
| 2019-02-02 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/88980 |
| * trans-array.c (gfc_array_init_size): Add element_size to the |
| arguments. |
| (gfc_array_allocate): Remove the recalculation of the size of |
| the element and use element_size from the call to the above. |
| Unconditionally set the span field of the descriptor. |
| |
| 2019-02-02 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/88685 |
| * expr.c (is_subref_array): Move the check for class pointer |
| dummy arrays to after the reference check. If we haven't seen |
| an array reference other than an element and a component is not |
| class or derived, return false. |
| |
| 2019-02-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/83246 |
| PR fortran/89084 |
| * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs |
| if sym->ns->construct_entities rather than if |
| sym->ns->parent->code->op == EXEC_BLOCK. |
| |
| 2019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/88669 |
| * resolve.c (resolve_component): If the reference is a BT_CLASS, |
| copy the contiguous attribute from the reference and use the |
| correct attributes. |
| |
| 2019-01-30 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
| |
| PR fortran/52564 |
| * io.c (match_io): Add check for comma after '*' without subsequent |
| IO list. |
| |
| 2019-01-30 Dominique d'Humieres <dominiq@gcc.gnu.org> |
| |
| PR fortran/52884 |
| * invoke.texi: Document the promotion of double precision |
| constants. |
| |
| 2019-01-29 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/57048 |
| * interface.c (gfc_compare_types): If a derived type and an |
| integer both have a derived type, and they are identical, |
| this is a C binding type and compares equal. |
| |
| 2019-01-26 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/57553 |
| * expr.c (check_inquiry): Add list of inquiry functions allowed in |
| constant expressions for F2008+. |
| |
| 2019-01-25 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/85780 |
| * decl.c (gfc_match_subroutine): Check for conflict between BIND(C) |
| and alternative return. |
| |
| 2019-01-24 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/88929 |
| * trans-array.c (gfc_conv_descriptor_elem_len): New function. |
| * trans-array.h : Add prototype for above. |
| * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of |
| assumed rank arrays being flagged by rank = -1 in expressions. |
| Intent in arrays need a pointer to a copy of the data to be |
| assigned to the descriptor passed for conversion. This should |
| then be freed, together with the CFI descriptor on return from |
| the C call. |
| |
| 2019-01-22 Harald Anlauf <anlauf@gmx.de> |
| |
| PR fortran/88579 |
| * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer |
| and (- 2**e) ** integer. |
| |
| 2019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org> |
| |
| PR fortran/37835 |
| * resolve.c (resolve_types): Add !flag_automatic. |
| * symbol.c (gfc_add_save): Silence warnings. |
| |
| 2019-01-19 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/77960 |
| * io.c (match_io_element): input-item cannot be an external function. |
| |
| 2018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org> |
| Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/56789 |
| * trans-expr.c (gfc_conv_procedure_call): Call |
| gfc_conv_subref_array_arg if the formal arg is contiguous |
| and the actual arg may not be. |
| |
| 2019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/88871 |
| * resolve.c (resolve_ref): Fix logic for removal of |
| reference. |
| |
| 2019-01-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/88902 |
| * trans-decl.c (gfc_get_symbol_decl): Don't add length to function |
| or parent function if it has been added there already. |
| |
| 2019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/43136 |
| * resolve.c (resolve_array_ref): Add equal_length argument; set it |
| if the length of the substring equals that of the orignal |
| variable. |
| (resolve_ref): Remove the substring if it is equal in length to |
| the original variable, unless it is an EXPR_SUBSTRING). |
| |
| 2019-01-15 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/81849 |
| * resolve.c (resolve_symbol): Host associated varaibles can appear |
| in the specification statement of a RESULT array. |
| |
| 2019-01-15 Paul Thomas <pault@gcc.gnu.org> |
| |
| * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs |
| that are indirect references; ie. dummy arguments. |
| |
| 2019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org> |
| |
| PR fortran/88803 |
| * gfortran.texi: Replace @xref with @ref and adjust the sentence. |
| |
| 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/57992 |
| * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack |
| functions with contiguous results. |
| |
| 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/59345 |
| * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not |
| pack/unpack results of functions which return an explicit-shaped |
| or allocatable array. |
| |
| 2019-01-12 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/61765 |
| * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif |
| structure into independent if's with a return to simplify logic. |
| Avoid a check for ENTRY name with bind(c). |
| |
| 2019-01-12 Paul Thomas <pault@gcc.gnu.org> |
| |
| * gfortran.texi: Add description in sections on TS 29113 and |
| further interoperability with C. |
| * trans-array.c (gfc_conv_descriptor_attribute): New function. |
| (gfc_get_dataptr_offset): Remove static function attribute. |
| * trans-array.h: Add prototypes for above functions. |
| * trans-decl.c: Add declarations for the library functions |
| cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc. |
| * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function. |
| (gfc_conv_procedure_call): Call it for scalar and array actual |
| arguments, when the formal arguments are bind_c with assumed |
| shape or assumed rank. |
| * trans.h: External declarations for gfor_fndecl_cfi_to_gfc |
| and gfor_fndecl_gfc_to_cfi. |
| |
| 2019-01-11 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/35031 |
| * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby |
| mis-indentation. |
| |
| 2019-01-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/85956 |
| PR lto/88733 |
| * trans-openmp.c: Include attribs.h. |
| (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle |
| VAR_DECL max bound with "omp dummy var" attribute like NULL or |
| error_mark_node - recompute number of elts independently. |
| |
| 2019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/59345 |
| * trans-array.c (gfc_conv_parameter_array): Temporary |
| arrays generated for expressions do not need to be repacked. |
| |
| 2019-01-10 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/86322 |
| * decl.c (top_var_list): Set locus of expr. |
| (gfc_match_data): Detect pointer on non-rightmost part-refs. |
| |
| 2019-01-09 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| PR fortran/88376 |
| * resolve.c (is_illegal_recursion): Remove an assert(). |
| |
| 2019-01-09 Sandra Loosemore <sandra@codesourcery.com> |
| |
| PR other/16615 |
| * expr.c: Change "can not" to "cannot". |
| |
| 2019-01-09 Sandra Loosemore <sandra@codesourcery.com> |
| |
| PR other/16615 |
| * class.c: Mechanically replace "can not" with "cannot". |
| * decl.c: Likewise. |
| * expr.c: Likewise. |
| * gfc-internals.texi: Likewise. |
| * intrinsic.texi: Likewise. |
| * invoke.texi: Likewise. |
| * io.c: Likewise. |
| * match.c: Likewise. |
| * parse.c: Likewise. |
| * primary.c: Likewise. |
| * resolve.c: Likewise. |
| * symbol.c: Likewise. |
| * trans-array.c: Likewise. |
| * trans-decl.c: Likewise. |
| * trans-intrinsic.c: Likewise. |
| * trans-stmt.c: Likewise. |
| |
| 2019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/68426 |
| * simplify.c (gfc_simplify_spread): Also simplify if the |
| type of source is an EXPR_STRUCTURE. |
| |
| 2019-01-08 Janus Weil <janus@gcc.gnu.org> |
| |
| PR fortran/88047 |
| * class.c (gfc_find_vtab): For polymorphic typespecs, the components of |
| the class container may not be available (in case of invalid code). |
| |
| 2019-01-08 Richard Biener <rguenther@suse.de> |
| |
| PR fortran/88611 |
| * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_* |
| directly build the expected GENERIC tree. |
| |
| 2019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org> |
| Harald Anlauf <anlauf@gmx.de> |
| Tobias Burnus <burnus@gcc.gnu.org> |
| |
| PR fortran/45424 |
| * check.c (gfc_check_is_contiguous): New function. |
| * expr.c (gfc_is_not_contiguous): New function. |
| * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS. |
| Add prototype for gfc_is_not_contiguous. |
| * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS. |
| (add_function): Add is_contiguous. |
| * intrinsic.h: Add prototypes for gfc_check_is_contiguous, |
| gfc_simplify_is_contiguous and gfc_resolve_is_contiguous. |
| * intrinsic.texi: Add IS_CONTIGUOUS. |
| * iresolve.c (gfc_resolve_is_contiguous): New function. |
| * simplify.c (gfc_simplify_is_contiguous): New function. |
| * trans-decl.c (gfor_fncecl_is_contiguous0): New variable. |
| (gfc_build_intrinsic_function_decl): Add it. |
| * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New |
| function. |
| (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS. |
| |
| 2019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/88658 |
| * gfortran.h: Add macro gfc_real_4_kind |
| * simplify.c (simplify_min_max): Special case for the types of |
| AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of |
| their arguments. |
| |
| 2019-01-05 Janus Weil <janus@gcc.gnu.org> |
| |
| PR fortran/88009 |
| * class.c (gfc_find_derived_vtab): Mark the _final component as |
| artificial. |
| (find_intrinsic_vtab): Ditto. Also add an extra check to avoid |
| dereferencing a null pointer and adjust indentation. |
| * resolve.c (resolve_fl_variable): Add extra check to avoid |
| dereferencing a null pointer. Move variable declarations to local scope. |
| (resolve_fl_procedure): Add extra check to avoid dereferencing a null |
| pointer. |
| * symbol.c (check_conflict): Suppress errors for artificial symbols. |
| |
| 2019-01-01 Steven G. Kargl <kargl@gcc.gnu.org> |
| |
| * parse.c (decode_statement): Suppress "Unclassifiable statement" |
| error if previous error messages were emittes. |
| |
| 2019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org> |
| |
| PR fortran/82743 |
| * primary.c (gfc_convert_to_structure_constructor): If a character |
| in a constructor is too long, add a warning with |
| -Wcharacter-truncation. |
| |
| 2019-01-01 Jakub Jelinek <jakub@redhat.com> |
| |
| Update copyright years. |
| |
| * gfortranspec.c (lang_specific_driver): Update copyright notice |
| dates. |
| * gfc-internals.texi: Bump @copying's copyright year. |
| * gfortran.texi: Ditto. |
| * intrinsic.texi: Ditto. |
| * invoke.texi: Ditto. |
| |
| Copyright (C) 2019 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. |