1 2016-01-15 Paul Thomas <pault@gcc.gnu.org>
4 * resolve.c (check_uop_procedure): Prevent deferred length
5 characters from being trapped by assumed length error.
13 * trans-array.c (gfc_conv_scalarized_array_ref): Pass decl for
14 function as well as variable expressions.
15 (gfc_array_init_size): Add 'expr' as an argument. Use this to
16 correctly set the descriptor dtype for deferred characters.
17 (gfc_array_allocate): Add 'expr' to the call to
18 'gfc_array_init_size'.
19 * trans.c (gfc_build_array_ref): Expand logic for setting span
20 to include indirect references to character lengths.
21 * trans-decl.c (gfc_get_symbol_decl): Ensure that deferred
22 result char lengths that are PARM_DECLs are indirectly
23 referenced both for directly passed and by reference.
24 (create_function_arglist): If the length type is a pointer type
25 then store the length as the 'passed_length' and make the char
26 length an indirect reference to it.
27 (gfc_trans_deferred_vars): If a character length has escaped
28 being set as an indirect reference, return it via the 'passed
30 * trans-expr.c (gfc_conv_procedure_call): The length of
31 deferred character length results is set TREE_STATIC and set to
33 (gfc_trans_assignment_1): Do not fix the rse string_length if
34 it is a variable, a parameter or an indirect reference. Add the
35 code to trap assignment of scalars to unallocated arrays.
36 * trans-stmt.c (gfc_trans_allocate): Remove 'def_str_len' and
37 all references to it. Instead, replicate the code to obtain a
38 explicitly defined string length and provide a value before
39 array allocation so that the dtype is correctly set.
40 trans-types.c (gfc_get_character_type): If the character length
41 is a pointer, use the indirect reference.
43 2016-01-10 Thomas Koenig <tkoenig@gcc.gnu.org>
46 * frontend-passes.c (in_where): New variable.
47 (inline_matmul_assign): Don't try this if we are within
49 (gfc_code_walker): Keep track of in_where.
51 2016-01-10 Paul Thomas <pault@gcc.gnu.org>
54 * trans_array.c (gfc_conv_scalarized_array_ref): Add missing
55 se->use_offset from condition for calculation of 'base'.
57 2016-01-08 Jakub Jelinek <jakub@redhat.com>
60 * trans.h (OMPWS_SCALARIZER_BODY): Define.
61 (OMPWS_NOWAIT): Renumber.
62 * trans-stmt.c (gfc_trans_where_3): Only set OMPWS_SCALARIZER_WS
63 if OMPWS_SCALARIZER_BODY is not set already, and set also
64 OMPWS_SCALARIZER_BODY until the final loop creation.
65 * trans-expr.c (gfc_trans_assignment_1): Likewise.
66 * trans-openmp.c (gfc_trans_omp_workshare): Also clear
67 OMPWS_SCALARIZER_BODY.
68 * trans-array.c (gfc_trans_scalarized_loop_end): Don't create
69 OMP_FOR if OMPWS_SCALARIZER_BODY is set.
71 2016-01-04 Jakub Jelinek <jakub@redhat.com>
73 Update copyright years.
75 * gfortranspec.c (lang_specific_driver): Update copyright notice
77 * gfc-internals.texi: Bump @copying's copyright year.
78 * gfortran.texi: Ditto.
79 * intrinsic.texi: Ditto.
82 2016-01-01 Paul Thomas <pault@gcc.gnu.org>
85 * trans-array.c (evaluate_bound): If deferred, test that 'desc'
86 is an array descriptor before using gfc_conv_descriptor_xxx.
88 Copyright (C) 2016 Free Software Foundation, Inc.
90 Copying and distribution of this file, with or without modification,
91 are permitted in any medium without royalty provided the copyright
92 notice and this notice are preserved.