mirror of
https://github.com/LIV2/bebbo-gcc.git
synced 2025-12-06 00:23:32 +00:00
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@265524 138bc75d-0d04-0410-961f-82ee72b054a4
1705 lines
54 KiB
Plaintext
1705 lines
54 KiB
Plaintext
2018-10-26 Release Manager
|
||
|
||
* GCC 6.5.0 released.
|
||
|
||
2018-09-07 Janus Weil <janus@gcc.gnu.org>
|
||
|
||
Backported from trunk
|
||
PR fortran/86116
|
||
* interface.c (compare_type): Remove a CLASS/TYPE check.
|
||
(compare_type_characteristics): New function that behaves like the old
|
||
'compare_type'.
|
||
(gfc_check_dummy_characteristics, gfc_check_result_characteristics):
|
||
Call 'compare_type_characteristics' instead of 'compare_type'.
|
||
|
||
2018-07-03 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/82969
|
||
PR fortran/86242
|
||
* trans-array.c (structure_alloc_comps): Do not explicitly copy
|
||
procedure pointer components.
|
||
|
||
2018-06-25 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from mainline
|
||
2018-04-10 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/85313
|
||
* openmp.c (resolve_omp_do): Remove bogus if (j < i) break;.
|
||
(resolve_oacc_nested_loops): Likewise. Formatting fix.
|
||
|
||
2017-11-24 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/81304
|
||
* trans-openmp.c (gfc_trans_omp_array_reduction_or_udr): Set
|
||
attr.implicit_type in intrinsic_sym to avoid undesirable warning.
|
||
|
||
2017-11-23 Dirk Broemmel <d.broemmel@fz-juelich.de>
|
||
Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/81841
|
||
* parse.c (parse_spec): Allow ST_OMP_THREADPRIVATE inside of
|
||
BLOCK DATA.
|
||
|
||
2018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85138
|
||
PR fortran/85996
|
||
PR fortran/86051
|
||
* decl.c (gfc_match_char_spec): Use private namespace in attempt to
|
||
reduce a charlen to a constant.
|
||
|
||
2018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85895
|
||
Backport from trunk
|
||
* resolve.c (resolve_sync): Resolve expression before checking for
|
||
an error.
|
||
|
||
2018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85780
|
||
Backport from trunk
|
||
* resolve.c (resolve_fl_procedure): Avoid NULL dereference.
|
||
|
||
2018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85779
|
||
Backport from trunk
|
||
* decl.c (gfc_match_derived_decl): Fix NULL pointer dereference.
|
||
|
||
2018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85543
|
||
Backport from trunk
|
||
* resolve.c (update_current_proc_array_outer_dependency): Avoid NULL
|
||
pointer dereference.
|
||
|
||
2018-05-16 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/83149
|
||
Backport from trunk
|
||
* trans-decl.c (gfc_finish_var_decl): Test sym->ns->proc_name
|
||
before accessing its components.
|
||
* trans-types.c (gfc_sym_type): If a character result has null
|
||
backend_decl, try the procedure symbol.
|
||
|
||
2018-16-05 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/83898
|
||
Backport from trunk
|
||
* trans-stmt.c (trans_associate_var): Do not set cst_array_ctor
|
||
for characters.
|
||
|
||
2018-05-13 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/68846
|
||
PR fortran/70864
|
||
Backport from trunk
|
||
* resolve.c (get_temp_from_expr): The temporary must not have
|
||
dummy or intent attributes.
|
||
|
||
2018-05-12 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85542
|
||
Backport from trunk
|
||
* expr.c (check_inquiry): Avoid NULL pointer dereference.
|
||
|
||
2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/70870
|
||
Backport from trunk
|
||
* data.c (gfc_assign_data_value): Check that a data object does
|
||
not also have default initialization.
|
||
|
||
2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85521
|
||
Backport from trunk
|
||
* array.c (gfc_resolve_character_array_constructor): Substrings
|
||
with upper bound smaller than lower bound are zero length strings.
|
||
|
||
2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85687
|
||
Backport from trunk
|
||
* check.c (gfc_check_rank): Check that the argument is a data object.
|
||
|
||
2018-05-06 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/85507
|
||
Backport from trunk.
|
||
* dependency.c (gfc_dep_resolver): Revert looking at coarray dimension
|
||
introduced by r259385.
|
||
* trans-intrinsic.c (conv_caf_send): Always report a dependency for
|
||
same variables in coarray assignments.
|
||
|
||
2018-04-28 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/81773
|
||
PR fortran/83606
|
||
Backport from trunk.
|
||
* dependency.c (gfc_dep_resolver): Coarray indexes are to be ignored
|
||
during dependency computation. They define no data dependency.
|
||
* trans-array.c (conv_array_index_offset): The stride can not be set
|
||
here, prevent fail.
|
||
* trans-intrinsic.c (conv_caf_send): Add creation of temporary array
|
||
for caf_get's result and copying to the array with vectorial
|
||
indexing.
|
||
|
||
2018-04-24 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/85520
|
||
* decl.c (gfc_match_char_spec): Check for negative length and set to 0.
|
||
|
||
2018-03-28 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/85084
|
||
Backport from trunk.
|
||
* frontend-passes.c (gfc_run_passes): Do not run front-end
|
||
optimizations if a previous error occurred.
|
||
|
||
2018-03-20 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
ChangeLog entry for r258698
|
||
PR fortran/85001
|
||
* interface.c (symbol_rank): Remove bogus null pointer check that
|
||
crept in when translating a ternary operator into an if-else
|
||
constructor.
|
||
|
||
2018-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/84931
|
||
Backport from trunk
|
||
* simplify.c (gfc_convert_constant): Correctly handle iterators
|
||
for type conversion.
|
||
|
||
2018-03-19 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/65453
|
||
* decl.c (get_proc_name): Catch clash between a procedure statement
|
||
and a contained subprogram
|
||
|
||
2018-03-12 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/83939
|
||
* resolve.c (resolve_fl_procedure): Enforce F2018:C15100.
|
||
|
||
2018-03-10 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/84734
|
||
* arith.c (check_result, eval_intrinsic): If result overflows, pass
|
||
the expression up the chain instead of a NULL pointer.
|
||
|
||
2018-03-08 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/64124
|
||
PR fortran/70409
|
||
* decl.c (gfc_match_char_spec): Try to reduce a charlen to a constant.
|
||
|
||
2018-03-06 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/56667
|
||
* primary.c (match_sym_complex_part): Give the matcher for an implied
|
||
do-loop a chance to run.
|
||
|
||
2018-03-03 Harald Anlauf <anlauf@gmx.de>
|
||
|
||
PR fortran/71085
|
||
* trans-expr.c (gfc_apply_interface_mapping_to_expr): Do not
|
||
dereference NULL pointer.
|
||
|
||
2018-03-03 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk.
|
||
PR fortran/78990
|
||
* expr.c (gfc_is_class_array_function): Renamed from
|
||
'gfc_is_alloc_class_array_function' and modified to return true
|
||
for pointers as well as allocatable results.
|
||
* gfortran.h : Change of name for prototype of above function.
|
||
* trans-array.c (gfc_add_loop_ss_code): Force finalization of
|
||
class array results.
|
||
(build_class_array_ref): Change assertion into a condition.
|
||
(build_class_array_ref): Set the se class_vptr for class array
|
||
function results.
|
||
(gfc_walk_function_expr): Reference gfc_is_class_array_function
|
||
as above.
|
||
* trans-decl.c (get_proc_result): Move it up before
|
||
gfc_trans_deferred_vars.
|
||
(gfc_trans_deferred_vars): Nullify explicit return class arrays
|
||
on entry.
|
||
* trans-expr.c (gfc_conv_class_to_class): Allow conversion of
|
||
class array functions that have an se class_vptr and use it
|
||
for the result vptr.
|
||
(gfc_conv_subref_array_arg): Rename reference to the above
|
||
function.
|
||
(gfc_conv_procedure_call): Ditto. Add the se pre block to the
|
||
loop pre block before the function is evaluated. Do not
|
||
finalize class pointer results.
|
||
(arrayfunc_assign_needs_temporary, gfc_trans_assignment_1) More
|
||
renamed references.
|
||
* trans-intrinsic.c (gfc_conv_intrinsic_size): Ditto.
|
||
|
||
2018-02-25 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/83633
|
||
* decl.c (variable_decl): Check that an explicit-shape-array with
|
||
nonconstant bounds is allowed.
|
||
|
||
2018-02-24 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/30792
|
||
* decl.c (gfc_match_data): Check for invalid substring in
|
||
data-implied-do
|
||
|
||
2018-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/84506
|
||
* trans-io.c (set_parameter_value_inquire): Adjust range check of
|
||
negative unit values for kind=8 units to the kind=4 negative limit.
|
||
|
||
2018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/84511
|
||
* trans-io.c (transfer_expr): Deal with C_LOC in transfer statement.
|
||
|
||
2018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/84346
|
||
* interface.c (compare_actual_formal): Issue error if keyword is
|
||
used in a statement function.
|
||
|
||
2018-02-13 Alastair McKinstry <alastair.mckinstry@sceal.ie>
|
||
Janne Blomqvist <jb@gcc.gnu.org>
|
||
|
||
* module.c (dump_module): Use lbasename to ensure that module
|
||
files are reproducible.
|
||
|
||
2018-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/68560
|
||
* gfortran.dg/shape_9.f90: New test.
|
||
|
||
2018-02-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
||
|
||
PR fortran/35299
|
||
ChangeLog for r257566
|
||
* resolve.c (resolve_formal_arglist): Update error message.
|
||
|
||
2018-02-12 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/54223
|
||
PR fortran/84276
|
||
* interface.c (compare_actual_formal): Add in_statement_function
|
||
bool parameter. Skip check of INTENT attribute for statement
|
||
functions. Arguments to a statement function cannot be optional,
|
||
issue error for missing argument.
|
||
(gfc_procedure_use, gfc_ppc_use, gfc_arglist_matches_symbol): Use
|
||
in_statement_function.
|
||
|
||
2018-02-07 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/82994
|
||
* match.c (gfc_match_deallocate): Check for NULL pointer.
|
||
|
||
2018-02-07 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/82049
|
||
* match.c (gfc_match_type_spec): If the charlen is non-NULL, then
|
||
try to resolve it. While here return early if possible.
|
||
|
||
2018-01-20 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/83900
|
||
* simplify.c (gfc_simplify_matmul): Set return type correctly.
|
||
|
||
2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/83900
|
||
* simplify.c (gfc_simplify_matmul): Delete bogus assertion.
|
||
|
||
2018-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
Backport of r250734 from mainline
|
||
PR fortran/80768
|
||
* check.c (gfc_check_num_images): Fix typo.
|
||
|
||
2018-01-17 Harald Anlauf <anlauf@gmx.de>
|
||
|
||
Back from mainline
|
||
PR fortran/83874
|
||
* decl.c (add_init_expr_to_sym): Do not dereference NULL pointer.
|
||
|
||
2018-01-13 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
Backport from mainline
|
||
PR fortran/78814
|
||
* interface.c (symbol_rank): Check for NULL pointer.
|
||
|
||
2018-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/82367
|
||
* resolve.c (resolve_allocate_expr): Check for NULL pointer.
|
||
|
||
2018-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/83093
|
||
* resolve.c (resolve_charlen): Check the type of cl->length
|
||
after resolution.
|
||
|
||
2018-01-10 Steven G. Kargl <kargl@kgcc.gnu.org>
|
||
|
||
Backport r254555 from trunk
|
||
PR Fortran/82841
|
||
* simplify.c(gfc_simplify_transfer): Do not dereference a NULL pointer.
|
||
Unwrap a short line.
|
||
|
||
2018-01-04 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR Fortran/83679
|
||
* simplify.c (gfc_simplify_cshift): Restore early return for zero-sized
|
||
array. Update Copyright year while here.
|
||
|
||
2018-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
Backport from 7-branch
|
||
PR fortran/83650
|
||
* simplify.c (gfc_simplify_cshift): Correct contition for
|
||
negative shifts.
|
||
|
||
2017-11-13 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/82934
|
||
* trans-stmt.c (gfc_trans_allocate): Remove the gcc_assert on
|
||
null string length for assumed length typespec and set
|
||
expr3_esize to NULL_TREE;
|
||
|
||
2017-11-13 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/78619
|
||
* check.c (same_type_check): Introduce a new argument 'assoc'
|
||
with default value false. If this is true, use the symbol type
|
||
spec of BT_PROCEDURE expressions.
|
||
(gfc_check_associated): Set 'assoc' true in the call to
|
||
'same_type_check'.
|
||
|
||
2017-11-06 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backported from trunk
|
||
PR fortran/78641
|
||
* resolve.c (resolve_ordinary_assign): Do not add the _data
|
||
component for class valued array constructors being assigned
|
||
to derived type arrays.
|
||
* trans-array.c (gfc_trans_array_ctor_element): Take the _data
|
||
of class valued elements for assignment to derived type arrays.
|
||
|
||
2017-11-06 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backported from trunk
|
||
PR fortran/69739
|
||
* trans-expr.c (gfc_map_intrinsic_function): Return false for
|
||
bounds without the DIM argument instead of ICEing.
|
||
|
||
2017-11-01 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/82796
|
||
* resolve.c (resolve_equivalence): An entity in a common block within
|
||
a module cannot appear in an equivalence statement if the entity is
|
||
with a pure procedure.
|
||
|
||
2017-11-03 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from 7-branch
|
||
PR fortran/81735
|
||
* trans-decl.c (gfc_trans_deferred_vars): Correct case where
|
||
'tmp' can be used unititialized.
|
||
|
||
2017-11-01 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/78293
|
||
* trans-expr.c (gfc_conv_procedure_call): Prepend deallocation
|
||
of alloctable components to post, rather than adding to
|
||
se->post.
|
||
* trans-stmt.c (gfc_trans_allocate): Move deallocation of expr3
|
||
allocatable components so that all expr3s are visited.
|
||
|
||
2017-11-01 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/80554
|
||
* decl.c (build_sym): In a submodule allow overriding of host
|
||
associated symbols from the ancestor module with a new
|
||
declaration.
|
||
|
||
2017-11-01 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/80554
|
||
* gfortran.dg/submodule_29.f08: New test.
|
||
|
||
2017-10-20 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/79795
|
||
* resolve.c (resovle_symbol): Change gcc_assert to
|
||
sensible error message.
|
||
|
||
2017-10-19 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/79402
|
||
* resolve.c (fixup_unique_dummy): New function.
|
||
(gfc_resolve_expr): Call it for dummy variables with a unique
|
||
symtree name.
|
||
|
||
2017-10-19 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/81048
|
||
* resolve.c (resolve_symbol): Ensure that derived type array
|
||
results get default initialization.
|
||
|
||
2017-10-06 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
* expr.c (gfc_get_full_arrayspec_from_expr): If there is
|
||
no symtree, set array spec to NULL.
|
||
|
||
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-07-04 Release Manager
|
||
|
||
* GCC 6.4.0 released.
|
||
|
||
2017-06-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from mainline
|
||
2017-06-02 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/80918
|
||
* openmp.c (resolve_omp_clauses): Fix a typo.
|
||
|
||
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-03 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/65542
|
||
Backport from trunk
|
||
* intrinsic.c (gfc_intrinsic_func_interface): Return an error
|
||
for -std=f95 for disallowed transformational functions in
|
||
initialization expressions.
|
||
|
||
2017-06-02 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/80904
|
||
Backport from trunk
|
||
* frontend-passes.c (matmul_lhs_realloc): Correct
|
||
allocation size for case A1B2.
|
||
|
||
2017-05-15 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/80752
|
||
* expr.c (gfc_generate_initializer): If type conversion fails,
|
||
check for error and return NULL.
|
||
|
||
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-01 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/71838
|
||
* symbol.c (check_conflict): A dummy procedure in a submodule,
|
||
module procedure is not an error.
|
||
(gfc_add_flavor): Ditto.
|
||
|
||
2017-04-01 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/79676
|
||
* module.c (mio_symbol_attribute): Remove reset of the flag
|
||
'no_module_procedures'.
|
||
(check_for_module_procedures): New function. Move declaration
|
||
of 'no_module_procedures' to above it.
|
||
(gfc_dump_module): Traverse namespace calling new function.
|
||
|
||
2017-03-26 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/79434
|
||
* parse.c (check_component, parse_union): Whitespace.
|
||
(set_syms_host_assoc): For a derived type, check if the module
|
||
in which it was declared is one of the submodule ancestors. If
|
||
it is, make the components public. Otherwise, reset attribute
|
||
'host_assoc' and set 'use-assoc' so that encapsulation is
|
||
preserved.
|
||
|
||
2017-03-14 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-02-25 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/78474
|
||
* module.c (gfc_match_submodule): If there is more than one
|
||
colon, it is a syntax error.
|
||
|
||
PR fortran/78331
|
||
* module.c (gfc_use_module): If an smod file does not exist it
|
||
is either because the module does not have a module procedure
|
||
interface or there is an error in the module.
|
||
|
||
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.
|
||
|
||
2017-01-29 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
Backported from trunk
|
||
2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/70697
|
||
* resolve.c (resolve_lock_unlock_event): Resolve the expression for
|
||
event's until_count.
|
||
|
||
2017-01-29 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/70696
|
||
* trans-expr.c (gfc_get_tree_for_caf_expr): Ensure the backend_decl
|
||
is valid before accessing it. Remove unnecessary assert.
|
||
* trans-decl.c (gfc_build_qualified_array): Add static tokens to the
|
||
parent function's scope only, when the decl-context is not the
|
||
translation unit.
|
||
|
||
2017-01-17 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-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-21 Release Manager
|
||
|
||
* GCC 6.3.0 released.
|
||
|
||
2016-12-09 Janus Weil <janus@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/78593
|
||
* primary.c (gfc_match_varspec): Check if sym is non-null to avoid ICE.
|
||
|
||
2016-12-07 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from mainline
|
||
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-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-22 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/58001
|
||
* io.c (next_char_not_space): Update handling of a 'tab' in a FORMAT.
|
||
(format_lex): Adjust invocations of next_char_not_space().
|
||
|
||
2016-11-20 Harald Anlauf <anlauf@gmx.de>
|
||
|
||
PR fortran/69741
|
||
* resolve.c (gfc_resolve_forall): Check for nonscalar index variables.
|
||
|
||
2016-11-07 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/78221
|
||
* arith.c (gfc_complex2real): Change gfc_warning_now to
|
||
gfc_warning.
|
||
|
||
2016-11-02 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-10-31 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-30 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/67219
|
||
* arith.c (gfc_int2real): Change gfc_warning_now
|
||
to gfc_warning.
|
||
* primary.c (match_complex_constant): If there
|
||
is no comma, throw away any warning which might have
|
||
been issued by gfc_int2real.
|
||
|
||
2016-10-28 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/71891
|
||
* symbol.c (gfc_type_compatible): Fix typo.
|
||
|
||
2016-10-26 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/78092
|
||
* trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Fix reference to an
|
||
array element of type CLASS.
|
||
|
||
2016-10-26 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/78108
|
||
* resolve.c (resolve_typebound_intrinsic_op): For submodules
|
||
suppress the error and return if the same procedure symbol
|
||
is added more than once to the interface.
|
||
|
||
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-23 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/77763
|
||
* parse.c (parse_spec): Allow STRUCTURE in BLOCK DATA. Sort
|
||
case labels.
|
||
|
||
2016-10-23 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-23 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-23 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
Backported from trunk
|
||
PR fortran/72832
|
||
* trans-expr.c (gfc_copy_class_to_class): Add generation of
|
||
runtime array bounds check.
|
||
* trans-intrinsic.c (gfc_conv_intrinsic_size): Add a crutch to
|
||
get the descriptor of a function returning a class object.
|
||
* trans-stmt.c (gfc_trans_allocate): Use the array spec on the
|
||
array to allocate instead of the array spec from source=.
|
||
|
||
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-16 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/77915
|
||
* frontend-passes.c (inline_matmul_assign): Return early if
|
||
inside a FORALL statement.
|
||
|
||
2016-10-11 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/77942
|
||
* simplify.c (gfc_simplify_cshift): Check for zero.
|
||
|
||
2016-10-07 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/77406
|
||
* interface.c (gfc_compare_interfaces): Fix detection of ambiguous
|
||
interface involving alternate return.
|
||
(check_interface1): Improve error message and loci.
|
||
|
||
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-28 Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/41922
|
||
* target-memory.c (expr_to_char): Pass in locus and use it in error
|
||
messages.
|
||
(gfc_merge_initializers): Ditto.
|
||
* target-memory.h: Update prototype for gfc_merge_initializers ().
|
||
* trans-common.c (get_init_field): Use the correct locus.
|
||
|
||
PR fortran/60774
|
||
* parse.c (next_free,next_fixed): Issue error for statement label
|
||
without a statement.
|
||
|
||
PR fortran/61318
|
||
* interface.c (compare_parameter): Use better locus for error message.
|
||
|
||
PR fortran/68566
|
||
* check.c (gfc_check_reshape): Check for constant expression.
|
||
|
||
PR fortran/69514
|
||
* array.c (gfc_match_array_constructor): If type-spec is present,
|
||
walk the array constructor performing possible conversions for
|
||
numeric types.
|
||
|
||
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.
|
||
|
||
PR fortran/70006
|
||
* io.c (gfc_resolve_dt): Use correct locus.
|
||
* resolve.c (resolve_branch): Ditto.
|
||
|
||
PR fortran/71067
|
||
* decl.c (match_data_constant): On error, set 'result' to NULL.
|
||
|
||
PR fortran/71730
|
||
* decl.c (char_len_param_value): Check return value of
|
||
gfc_reduce_init_expr().
|
||
|
||
PR fortran/71799
|
||
* resolve.c(gfc_resolve_iterator): Failure of type conversion need
|
||
not ICE.
|
||
|
||
PR fortran/71859
|
||
* check.c(numeric_check): Prevent ICE. Issue error for invalid
|
||
subroutine as an actual argument when numeric argument is expected.
|
||
|
||
PR fortran/71862
|
||
* class.c: Remove assert. Iterate over component only if non-null.
|
||
|
||
PR fortran/77260
|
||
* gcc/fortran/trans-decl.c (generate_local_decl): Suppress warning
|
||
for unused variable if symbol is entry point.
|
||
|
||
PR fortran/77351
|
||
* frontend-passes.c (remove_trim,combine_array_constructor): Check for
|
||
NULL pointer.
|
||
|
||
PR fortran/77372
|
||
simplify.c (simplify_ieee_selected_real_kind): Check for NULL pointers.
|
||
|
||
PR fortran/77380
|
||
* dependency.c (gfc_check_dependency): Do not assert with
|
||
-fcoarray=lib.
|
||
|
||
PR fortran/77391
|
||
* resolve.c (deferred_requirements): New function to check F2008:C402.
|
||
(resolve_fl_variable,resolve_fl_parameter): Use it.
|
||
|
||
PR fortran/77420
|
||
* trans-common.c: Handle array elements in equivalence when
|
||
the lower and upper bounds of array spec are NULL.
|
||
|
||
PR fortran/77429
|
||
* dependency.c (gfc_check_dependency): Convert gcc_assert() to
|
||
a conditional and possible call to gfc_internal_error().
|
||
|
||
PR fortran/77460
|
||
* simplify.c (simplify_transformation_to_scalar): On error, result
|
||
may be NULL, simply return.
|
||
|
||
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.
|
||
|
||
PR fortran/77612
|
||
* decl.c (char_len_param_value): Check parent namespace for
|
||
seen_implicit_none.
|
||
|
||
PR fortran/77694
|
||
* frontend-passes.c (optimize_binop_array_assignment): Check pointer
|
||
for NULL.
|
||
|
||
2016-09-16 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from mainline
|
||
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.
|
||
|
||
2016-09-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
Backported from mainline
|
||
2016-08-31 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/77352
|
||
* trans-openmp.c (gfc_trans_omp_parallel_workshare): Always add a
|
||
BIND_EXPR with BLOCK around what gfc_trans_omp_workshare returns.
|
||
|
||
PR fortran/77374
|
||
* parse.c (parse_omp_oacc_atomic): Copy over cp->ext.omp_atomic
|
||
to cp->block->ext.omp_atomic.
|
||
* resolve.c (gfc_resolve_blocks): Assert block with one or two
|
||
EXEC_ASSIGNs for EXEC_*_ATOMIC.
|
||
* openmp.c (resolve_omp_atomic): Don't assert one or two
|
||
EXEC_ASSIGNs, instead return quietly for EXEC_NOPs and otherwise
|
||
error unexpected statements.
|
||
|
||
2016-08-19 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR fortran/71014
|
||
* resolve.c (gfc_resolve): For ns->construct_entities don't save, clear
|
||
and restore omp state around the resolving.
|
||
|
||
PR fortran/69281
|
||
* trans-openmp.c (gfc_trans_omp_parallel, gfc_trans_omp_task,
|
||
gfc_trans_omp_target): Wrap gfc_trans_omp_code result in an extra
|
||
BIND_EXPR with its own forced BLOCK.
|
||
|
||
2016-08-24 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
Backport from trunk
|
||
PR fortran/77358
|
||
* resolve.c (resolve_fl_procedure): Use the correct gfc_charlen
|
||
for deferred character length module procedures.
|
||
|
||
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.
|
||
|
||
2016-04-13 Dominique d'Humieres <dominiq@lps.ens.fr>
|
||
|
||
PR fortran/67039
|
||
* intrinsic.texi: Correct the documentation of pseudorandom
|
||
number intrinsics.
|
||
|
||
2016-04-13 Dominique d'Humieres <dominiq@lps.ens.fr>
|
||
|
||
PR fortran/58000
|
||
* gfortran.texi: Document OPEN( ... NAME=) as not implemented
|
||
in GNU Fortran
|
||
|
||
2016-04-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
PR fortran/68566
|
||
* array.c (match_array_element_spec): Add check for non-integer.
|
||
* simplify.c (gfc_simplify_reshape): If source shape is NULL return.
|
||
|
||
2016-04-06 Patrick Palka <ppalka@gcc.gnu.org>
|
||
|
||
PR c/70436
|
||
* openmp.c (gfc_find_omp_udr): Add explicit braces to resolve a
|
||
future -Wparentheses warning.
|
||
|
||
2016-04-04 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/67538
|
||
* resolve.c (resolve_allocate_expr): Emit error message when no
|
||
array spec and no array valued source= expression is given in an
|
||
F2008 allocate() for an array to allocate.
|
||
|
||
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-29 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>
|
||
|
||
* 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-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
PR fortran/69043
|
||
* scanner.c (load_file): Update to use S_ISREG macro.
|
||
|
||
2016-03-17 Thomas Schwinge <thomas@codesourcery.com>
|
||
|
||
* gfortran.h (enum gfc_omp_map_op): Rename OMP_MAP_FORCE_DEALLOC
|
||
to OMP_MAP_DELETE. Adjust all users.
|
||
|
||
2016-03-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
Jim MacArthur <jim.macarthur@codethink.co.uk>
|
||
|
||
PR fortran/69043
|
||
* scanner.c (load_file): Check that included file is regular.
|
||
|
||
2016-03-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
Harold Anlauf <anlauf@gmx.de>
|
||
|
||
PR fortran/69520
|
||
* invoke.texi: Explain use of the 'no-' construct within the
|
||
-fcheck= option.
|
||
* options.c (gfc_handle_runtime_check_option): Enable use of
|
||
'no-' prefix for the various options with -fcheck= to allow
|
||
negating previously enabled check options.
|
||
|
||
2016-03-12 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/70031
|
||
* decl.c (gfc_match_prefix): Treat the 'module' prefix in the
|
||
same way as the others, rather than fixing it to come last.
|
||
(gfc_match_function_decl, gfc_match_subroutine): After errors
|
||
in 'copy_prefix', emit them immediately in the case of module
|
||
procedures to prevent a later ICE.
|
||
|
||
PR fortran/69524
|
||
* decl.c (gfc_match_submod_proc): Permit 'module procedure'
|
||
declarations within the contains section of modules as well as
|
||
submodules.
|
||
* resolve.c (resolve_fl_procedure): Likewise.
|
||
*trans-decl.c (build_function_decl): Change the gcc_assert to
|
||
allow all forms of module procedure declarations within module
|
||
contains sections.
|
||
|
||
2016-02-28 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/68147
|
||
PR fortran/47674
|
||
* frontend-passes.c (realloc_string_callback): Don't set
|
||
walk_subtrees.
|
||
|
||
2016-02-28 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
* dump-parse-tree.c (show_code_node): Print association
|
||
list of a block if present. Handle EXEC_END_BLOCK.
|
||
|
||
2016-02-28 Harald Anlauf <anlauf@gmx.de>
|
||
Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
PR fortran/56007
|
||
* match.c (gfc_match_iterator): Add diagnostic for array variable
|
||
as do loop index.
|
||
|
||
2016-02-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
Steven G. Kargl <kargl@gcc.gnu.org>
|
||
|
||
PR fortran/69910
|
||
* io.c (gfc_match_open): Check that open status is an expression
|
||
constant before comparing string to 'scratch' with NEWUNIT.
|
||
|
||
2016-02-27 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
|
||
|
||
* 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>
|
||
|
||
PR fortran/61156
|
||
* scanner.c (add_path_to_list): If include path is not a directory,
|
||
issue a fatal error.
|
||
|
||
2016-02-23 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/67451
|
||
* trans-array.c (gfc_array_allocate): Take the attributes from the
|
||
expression to allocate and not from the source=-expression.
|
||
|
||
2016-02-20 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
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.
|
||
|
||
2015-02-16 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/69742
|
||
* frontend-passes.c (cfe-expr_0): Don't register functions
|
||
from within an ASSOCIATE statement.
|
||
|
||
2016-02-14 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
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-02-14 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/60526
|
||
PR bootstrap/69816
|
||
* decl.c (build_sym): Reverted previous patch.
|
||
|
||
2016-02-14 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/60526
|
||
* decl.c (build_sym): If the name has already been defined as a
|
||
type, issue error and return false.
|
||
|
||
2016-02-12 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
PR other/69554
|
||
* error.c (gfc_diagnostic_start_span): New function.
|
||
(gfc_diagnostics_init): Initialize global_dc's start_span.
|
||
|
||
2016-02-11 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/69296
|
||
* gfortran.h: Added flag to gfc_association_list indicating that
|
||
the rank of an associate variable has been guessed only.
|
||
* parse.c (parse_associate): Set the guess flag mentioned above
|
||
when guessing the rank of an expression.
|
||
* resolve.c (resolve_assoc_var): When the rank has been guessed,
|
||
make sure, that the guess was correct else overwrite with the actual
|
||
rank.
|
||
* trans-stmt.c (trans_associate_var): For subref_array_pointers in
|
||
class objects, take the span from the _data component.
|
||
|
||
2016-02-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
PR fortran/50555
|
||
* primary.c (match_actual_arg): If symbol has attribute flavor of
|
||
namelist, generate an error. (gfc_match_rvalue): Likewise return
|
||
MATCH_ERROR.
|
||
* resolve.c (resolve_symbol): Scan arument list of procedures and
|
||
generate an error if a namelist is found.
|
||
|
||
2016-02-05 Mikael Morin <mikael@gcc.gnu.org>
|
||
|
||
PR fortran/66089
|
||
* trans-expr.c (expr_is_variable, gfc_expr_is_variable): Rename
|
||
the former to the latter and make it non-static. Update callers.
|
||
* gfortran.h (gfc_expr_is_variable): New declaration.
|
||
(struct gfc_ss_info): Add field needs_temporary.
|
||
* trans-array.c (gfc_scalar_elemental_arg_saved_as_argument):
|
||
Tighten the condition on aggregate expressions with a check
|
||
that the expression is a variable and doesn't need a temporary.
|
||
(gfc_conv_resolve_dependency): Add intermediary reference variable.
|
||
Set the needs_temporary field.
|
||
|
||
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-02-02 Nathan Sidwell <nathan@codesourcery.com>
|
||
|
||
* lang.opt (fopenacc-dim=): New option.
|
||
|
||
2016-01-31 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/67564
|
||
* trans-expr.c (gfc_conv_procedure_call): For the vtable copy
|
||
subroutines, add a string length argument, when the actual
|
||
argument is an unlimited polymorphic class object.
|
||
|
||
2016-01-30 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/69566
|
||
* trans-expr.c (gfc_conv_procedure_call): Correct expression
|
||
for 'ulim_copy', which was missing a test for 'comp'.
|
||
|
||
2016-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
|
||
|
||
PR fortran/62536
|
||
* decl.c (gfc_match_end): Only unnest and remove BLOCK namespaces
|
||
when the END encountered does not match a BLOCK's end.
|
||
|
||
2016-01-27 Janus Weil <janus@gcc.gnu.org>
|
||
|
||
PR fortran/69484
|
||
* invoke.texi: Fix documentation of -Wall with respect to -Wtabs.
|
||
|
||
2016-01-27 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/69422
|
||
* trans-expr.c (is_scalar_reallocatable_lhs): Remove the check
|
||
for allocatable components, whilst checking if the symbol is a
|
||
derived or class entity..
|
||
|
||
2016-01-26 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/69385
|
||
* 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-01-26 David Malcolm <dmalcolm@redhat.com>
|
||
|
||
PR other/69006
|
||
* error.c (gfc_diagnostic_starter): Delete use of pp_newline.
|
||
|
||
2016-01-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
PR fortran/69397
|
||
PR fortran/68442
|
||
* interface.c (gfc_arglist_matches_symbol): Replace assert with
|
||
a return false if not a procedure.
|
||
* resolve.c (resolve_generic_f): Test if we are resolving an
|
||
initialization expression and adjust error message accordingly.
|
||
|
||
2016-01-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/66094
|
||
* frontend-passes.c (matmul_lhs_realloc): Add
|
||
forgotten break statement.
|
||
|
||
2016-01-24 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-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/66094
|
||
* frontend-passes.c (enum matrix_case): Add case A2B2T for
|
||
MATMUL(A,TRANSPoSE(B)) where A and B are rank 2.
|
||
(inline_limit_check): Also add A2B2T.
|
||
(matmul_lhs_realloc): Handle A2B2T.
|
||
(check_conjg_variable): Rename to
|
||
(check_conjg_transpose_variable): and also count TRANSPOSE.
|
||
(inline_matmul_assign): Handle A2B2T.
|
||
|
||
2016-01-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||
|
||
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-01-19 Martin Jambor <mjambor@suse.cz>
|
||
|
||
* types.def (BT_FN_VOID_UINT_PTR_INT_PTR): New.
|
||
(BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): Removed.
|
||
(BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR): New.
|
||
|
||
2016-01-15 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/64324
|
||
* resolve.c (check_uop_procedure): Prevent deferred length
|
||
characters from being trapped by assumed length error.
|
||
|
||
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-01-10 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||
|
||
PR fortran/69154
|
||
* frontend-passes.c (in_where): New variable.
|
||
(inline_matmul_assign): Don't try this if we are within
|
||
a WHERE statement.
|
||
(gfc_code_walker): Keep track of in_where.
|
||
|
||
2016-01-10 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/67779
|
||
* trans_array.c (gfc_conv_scalarized_array_ref): Add missing
|
||
se->use_offset from condition for calculation of 'base'.
|
||
|
||
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-01-04 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.
|
||
|
||
2016-01-01 Paul Thomas <pault@gcc.gnu.org>
|
||
|
||
PR fortran/68864
|
||
* trans-array.c (evaluate_bound): If deferred, test that 'desc'
|
||
is an array descriptor before using gfc_conv_descriptor_xxx.
|
||
|
||
Copyright (C) 2016 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.
|