]> gcc.gnu.org Git - gcc.git/blame - gcc/fortran/ChangeLog
* dwarf2out.c (dwarf2out_var_location): Do not pass NULL to fprintf.
[gcc.git] / gcc / fortran / ChangeLog
CommitLineData
85c2c761
JB
12018-01-10 Janne Blomqvist <jb@gcc.gnu.org>
2
e10e60cb
JB
3 PR fortran/83740
4 * trans-array.c (gfc_trans_array_ctor_element): Fix formatting.
5
62018-01-10 Janne Blomqvist <jb@gcc.gnu.org>
7
8 PR fortran/83740
85c2c761
JB
9 * trans-array.c (gfc_trans_array_ctor_element): Convert RHS to the
10 LHS type when assigning.
11
d4319ef8
SK
122018-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
13
14 PR fortran/83742
15 * expr.c (gfc_is_simply_contiguous): Check for NULL pointer.
16
8799df67
SK
172018-01-08 Steven G. Kargl <kargl@gcc.gnu.org>
18
19 * match.c (gfc_match_allocate): Check for NULL pointer.
20
a4f759de
SK
212018-01-08 Steven G. Kargl <kargl@gcc.gnu.org>
22
23 * expr.c (gfc_check_pointer_assign): Fix typo in comment.
24
0b627b58
PT
252018-01-08 Paul Thomas <pault@gcc.gnu.org>
26
27 PR fortran/83611
28 * decl.c (gfc_get_pdt_instance): If parameterized arrays have
29 an initializer, convert the kind parameters and add to the
30 component if the instance.
31 * trans-array.c (structure_alloc_comps): Add 'is_pdt_type' and
32 use it with case COPY_ALLOC_COMP. Call 'duplicate_allocatable'
33 for parameterized arrays. Clean up typos in comments. Convert
34 parameterized array initializers and copy into the array.
35 * trans-expr.c (gfc_trans_scalar_assign): Do a deep copy for
36 parameterized types.
37 *trans-stmt.c (trans_associate_var): Deallocate associate vars
38 as necessary, when they are PDT function results for example.
39
40 PR fortran/83731
41 * trans-array.c (structure_alloc_comps): Only compare len parms
42 when they are declared explicitly.
43
ee2d3987
JB
442018-01-06 Janne Blomqvist <jb@gcc.gnu.org>
45
46 PR fortran/50892
47 * trans-expr.c (gfc_trans_pointer_assignment): fold_convert rhs to
48 lhs type.
49
f622221a
JB
502018-01-05 Janne Blomqvist <jb@gcc.gnu.org>
51
52 PR fortran/78534
53 PR fortran/66310
54 * array.c (got_charlen): Use gfc_charlen_int_kind.
55 * class.c (gfc_find_derived_vtab): Use gfc_size_kind instead of
56 hardcoded kind.
57 (find_intrinsic_vtab): Likewise.
58 * decl.c (match_char_length): Use gfc_charlen_int_kind.
59 (add_init_expr_to_sym): Use gfc_charlen_t and gfc_charlen_int_kind.
60 (gfc_match_implicit): Use gfc_charlen_int_kind.
61 * dump-parse-tree.c (show_char_const): Use gfc_charlen_t and size_t.
62 (show_expr): Use HOST_WIDE_INT_PRINT_DEC.
63 * expr.c (gfc_get_character_expr): Length parameter of type
64 gfc_charlen_t.
65 (gfc_get_int_expr): Value argument of type HOST_WIDE_INT.
66 (gfc_extract_hwi): New function.
67 (simplify_const_ref): Make string_len of type gfc_charlen_t.
68 (gfc_simplify_expr): Use HOST_WIDE_INT for substring refs.
69 * frontend-passes.c (optimize_trim): Use gfc_charlen_int_kind.
70 * gfortran.h (gfc_mpz_get_hwi): New prototype.
71 (gfc_mpz_set_hwi): Likewise.
72 (gfc_charlen_t): New typedef.
73 (gfc_expr): Use gfc_charlen_t for character lengths.
74 (gfc_size_kind): New extern variable.
75 (gfc_extract_hwi): New prototype.
76 (gfc_get_character_expr): Use gfc_charlen_t for character length.
77 (gfc_get_int_expr): Use HOST_WIDE_INT type for value argument.
78 * gfortran.texi: Update description of hidden string length argument.
79 * iresolve.c (check_charlen_present): Use gfc_charlen_int_kind.
80 (gfc_resolve_char_achar): Likewise.
81 (gfc_resolve_repeat): Pass string length directly without
82 temporary, use gfc_charlen_int_kind.
83 (gfc_resolve_transfer): Use gfc_charlen_int_kind.
84 * match.c (select_intrinsic_set_tmp): Use HOST_WIDE_INT for charlen.
85 * misc.c (gfc_mpz_get_hwi): New function.
86 (gfc_mpz_set_hwi): New function.
87 * module.c (atom_int): Change type from int to HOST_WIDE_INT.
88 (parse_integer): Don't complain about large integers.
89 (write_atom): Use HOST_WIDE_INT for integers.
90 (mio_integer): Handle integer type mismatch.
91 (mio_hwi): New function.
92 (mio_intrinsic_op): Use HOST_WIDE_INT.
93 (mio_array_ref): Likewise.
94 (mio_expr): Likewise.
95 * primary.c (match_substring): Use gfc_charlen_int_kind.
96 * resolve.c (resolve_substring_charlen): Use gfc_charlen_int_kind.
97 (resolve_character_operator): Likewise.
98 (resolve_assoc_var): Likewise.
99 (resolve_select_type): Use HOST_WIDE_INT for charlen, use snprintf.
100 (resolve_charlen): Use mpz_sgn to determine sign.
101 * simplify.c (gfc_simplify_repeat): Use HOST_WIDE_INT/gfc_charlen_t
102 instead of long.
103 * symbol.c (generate_isocbinding_symbol): Use gfc_charlen_int_kind.
104 * target-memory.c (size_character): Length argument of type
105 gfc_charlen_t.
106 (gfc_encode_character): Likewise.
107 (gfc_interpret_character): Use gfc_charlen_t.
108 * target-memory.h (gfc_encode_character): Modify prototype.
109 * trans-array.c (gfc_trans_array_ctor_element): Use existing type.
110 (get_array_ctor_var_strlen): Use gfc_conv_mpz_to_tree_type.
111 (trans_array_constructor): Use existing type.
112 (get_array_charlen): Likewise.
113 * trans-const.c (gfc_conv_mpz_to_tree_type): New function.
114 * trans-const.h (gfc_conv_mpz_to_tree_type): New prototype.
115 * trans-decl.c (gfc_trans_deferred_vars): Use existing type.
116 (add_argument_checking): Likewise.
117 * trans-expr.c (gfc_class_len_or_zero_get): Build const of type
118 gfc_charlen_type_node.
119 (gfc_conv_intrinsic_to_class): Use gfc_charlen_int_kind instead of
120 4, fold_convert to correct type.
121 (gfc_conv_class_to_class): Build const of type size_type_node for
122 size.
123 (gfc_copy_class_to_class): Likewise.
124 (gfc_conv_string_length): Use same type in expression.
125 (gfc_conv_substring): Likewise, use HOST_WIDE_INT for charlen.
126 (gfc_conv_string_tmp): Make sure len is of the right type.
127 (gfc_conv_concat_op): Use same type in expression.
128 (gfc_conv_procedure_call): Likewise.
129 (fill_with_spaces): Comment out memset() block due to spurious
130 -Wstringop-overflow warnings.
131 (gfc_trans_string_copy): Use gfc_charlen_type_node.
132 (alloc_scalar_allocatable_for_subcomponent_assignment):
133 fold_convert to right type.
134 (gfc_trans_subcomponent_assign): Likewise.
135 (trans_class_vptr_len_assignment): Build const of correct type.
136 (gfc_trans_pointer_assignment): Likewise.
137 (alloc_scalar_allocatable_for_assignment): fold_convert to right
138 type in expr.
139 (trans_class_assignment): Build const of correct type.
140 * trans-intrinsic.c (gfc_conv_associated): Likewise.
141 (gfc_conv_intrinsic_repeat): Do calculation in sizetype.
142 * trans-io.c (gfc_build_io_library_fndecls): Use
143 gfc_charlen_type_node for character lengths.
144 (set_string): Convert to right type in assignment.
145 * trans-stmt.c (gfc_trans_label_assign): Build const of
146 gfc_charlen_type_node.
147 (trans_associate_var): Likewise.
148 (gfc_trans_character_select): Likewise.
149 (gfc_trans_allocate): Likewise, don't typecast strlen result.
150 (gfc_trans_deallocate): Don't typecast strlen result.
151 * trans-types.c (gfc_size_kind): New variable.
152 (gfc_init_types): Determine gfc_charlen_int_kind and gfc_size_kind
153 from size_type_node.
154 * trans-types.h: Fix comment.
155
fbd35ba1
TK
1562018-01-04 Thomas Koenig <tkoenig@gcc.gnu.org>
157
158 PR fortran/83683
159 PR fortran/45689
160 * check.c (gfc_check_eoshift): Check for string length and
161 for conformance of boundary.
162 * intrinsic.c (add_functions): Add gfc_simplify_eoshift.
163 * intrinsic.h: Add prototype for gfc_simplify_eoshift.
164 * simplify.c (gfc_simplify_eoshift): New function.
165
5c0caeb3
RS
1662018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
167 Alan Hayward <alan.hayward@arm.com>
168 David Sherwood <david.sherwood@arm.com>
169
170 * trans-types.c (gfc_type_for_mode): Handle MODE_VECTOR_BOOL.
171
928686b1
RS
1722018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
173 Alan Hayward <alan.hayward@arm.com>
174 David Sherwood <david.sherwood@arm.com>
175
176 * trans-types.c (gfc_type_for_mode): Check valid_vector_subparts_p.
177
8987beac
TK
1782018-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
179
180 PR fortran/83664
181 * check.c (gfc_check_eoshift): Error for missing boundary if array
182 is not one of the standard types.
183
65e6aea3
JJ
1842018-01-03 Jakub Jelinek <jakub@redhat.com>
185
85ec4feb
JJ
186 Update copyright years.
187
65e6aea3
JJ
188 * gfortranspec.c (lang_specific_driver): Update copyright notice
189 dates.
190 * gfc-internals.texi: Bump @copying's copyright year.
191 * gfortran.texi: Ditto.
192 * intrinsic.texi: Ditto.
193 * invoke.texi: Ditto.
194
a1d6c052
TK
1952017-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
196
197 PR fortran/45689
198 * intrinsic.c (add_function): Add gfc_simplify_maxloc and
199 gfc_simplify_minloc to maxloc and minloc, respectively.
200 * intrinsic.h: Add prototypes for gfc_simplify_minloc
201 and gfc_simplify_maxloc.
202 * simplify.c (min_max_chose): Adjust prototype. Modify function
203 to have a return value which indicates if the extremum was found.
204 (is_constant_array_expr): Fix typo in comment.
205 (simplify_minmaxloc_to_scalar): New function.
206 (simplify_minmaxloc_nodim): New function.
207 (new_array): New function.
208 (simplify_minmaxloc_to_array): New function.
209 (gfc_simplify_minmaxloc): New function.
210 (simplify_minloc): New function.
211 (simplify_maxloc): New function.
212
a9ec0cfc
TK
2132018-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
214
215 PR fortran/45689
216 PR fortran/83650
217 * simplify.c (gfc_simplify_cshift): Re-implement to allow full
218 range of arguments.
219
f549bfb3
PT
2202018-01-01 Paul Thomas <pault@gcc.gnu.org>
221
222 PR fortran/83076
223 * resolve.c (resolve_fl_derived0): Add caf_token fields for
224 allocatable and pointer scalars, when -fcoarray selected.
225 * trans-types.c (gfc_copy_dt_decls_ifequal): Copy the token
226 field as well as the backend_decl.
227 (gfc_get_derived_type): Flag GFC_FCOARRAY_LIB for module
228 derived types that are not vtypes. Components with caf_token
229 attribute are pvoid types. For a component requiring it, find
230 the caf_token field and have the component token field point to
231 its backend_decl.
232
233 PR fortran/83319
234 *trans-types.c (gfc_get_array_descriptor_base): Add the token
235 field to the descriptor even when codimen not set.
21fa2a29 236\f
65e6aea3 237Copyright (C) 2018 Free Software Foundation, Inc.
ad41bd84
JM
238
239Copying and distribution of this file, with or without modification,
240are permitted in any medium without royalty provided the copyright
241notice and this notice are preserved.
This page took 3.149935 seconds and 5 git commands to generate.