[PATCH] Backport of 25 fortran patches
Steve Kargl
sgk@troutmask.apl.washington.edu
Wed Sep 28 19:25:00 GMT 2016
The attached patch and ChangeLog entries are for the
backporting of 25 patches from trunk to the 6-branch.
The bugzilla PR's contained in the patch are
fortran/41922 fortran/60774 fortran/61318 fortran/68566 fortran/69514
fortran/69867 fortran/69962 fortran/70006 fortran/71067 fortran/71730
fortran/71799 fortran/71859 fortran/71862 fortran/77260 fortran/77351
fortran/77372 fortran/77380 fortran/77391 fortran/77420 fortran/77429
fortran/77460 fortran/77506 fortran/77507 fortran/77612 fortran/77694
The patch has been bootstrapped and regression tested on
x86_64-*-freebsd. Ok to commit?
--
Steve
-------------- next part --------------
2016-09-28 Steven G. Kargl <kargl@gcc.gnu.org>
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.
-------------- next part --------------
2016-09-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/77507
* ieee/ieee_arithmetic.F90 (IEEE_VALUE_4,IEEE_VALUE_8,IEEE_VALULE_10,
IEEE_VALUE_16): Use correct keyword.
-------------- next part --------------
2016-09-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/41922
* gfortran.dg/equiv_constraint_5.f90: Adjust the error message.
* gfortran.dg/equiv_constraint_7.f90: Ditto.
* gfortran.dg/pr41922.f90: New test.
PR fortran/60774
* gfortran.dg/empty_label.f: Adjust test for new error message.
* gfortran.dg/empty_label.f90: Ditto.
* gfortran.dg/empty_label_typedecl.f90: Ditto.
* gfortran.dg/label_3.f90: Deleted (redundant with empty_label.f90).
* gfortran.dg/warnings_are_errors_1.f90: Remove invalid statement label.
PR fortran/61318
* gfortran.dg/pr61318.f90: New test.
PR fortran/68566
* gfortran.dg/pr68566.f90: new test.
PR fortran/69514
* gfortran.dg/pr69514_1.f90: New test.
* gfortran.dg/pr69514_2.f90: New test.
PR fortran/69867
* gfortran.dg/pr69867.f90: New test.
PR fortran/69962
* gfortran.dg/pr69962.f90: New test.
PR fortran/70006
* gfortran.dg/pr70006.f90: New test.
PR fortran/71067
* gfortran.dg/pr71067_1.f90: New test.
* gfortran.dg/pr71067_2.f90: Ditto.
PR fortran/71730
* gfortran.dg/pr71730.f90: New test.
* gfortran.dg/bounds_check_strlen_2.f90: Fix invalid code.
* gfortran.dg/array_constructor_27.f03: Update dg-error message.
* gfortran.dg/array_constructor_26.f03: Ditto.
PR fortran/71799
* gfortran.dg/pr71799.f90: New test.
PR fortran/71859
* gfortran.dg/pr71859.f90: New test.
* gfortran.dg/intrinsic_numeric_arg.f: Update error message.
* gfortran.dg/coarray_collectives_1.f90: Ditto.
PR fortran/71862
* gfortran.dg/pr71862.f90: New test.
PR fortran/77260
* gfortran.dg/pr77260_1.f90: New test.
* gfortran.dg/pr77260_2.f90: Ditto.
PR fortran/77351
* gfortran.dg/pr77351.f90: New test.
PR fortran/77372
gfortran.dg/pr77372.f90: New test.
PR fortran/77380
* gfortran.dg/pr77380.f90: New test.
PR fortran/77391
* gfortran.dg/pr77391.f90: New test.
PR fortran/77420
* gfortran.dg/pr77420_1.f90: New test.
* gfortran.dg/pr77420_2.f90: Ditto.
* gfortran.dg/pr77420_3.f90: New test. Requires ...
* gfortran.dg/pr77420_4.f90: this file.
PR fortran/77429
* gfortran.dg/pr77429.f90: New test.
PR fortran/77460
* gfortran.dg/pr77460.f90: New test.
PR fortran/77506
* gfortran.dg/pr77506.f90: New test.
PR fortran/77507
* gfortran.dg/ieee/pr77507.f90: New test.
PR fortran/77612
* gfortran.dg/pr77612.f90: New test.
PR fortran/77694
* gfortran.dg/pr77694.f90: New test.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: zz.diff
Type: text/x-diff
Size: 47485 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20160928/0d6330de/attachment.bin>
More information about the Gcc-patches
mailing list