]>
Commit | Line | Data |
---|---|---|
88ce3d5f GA |
1 | 2020-11-02 Thomas Schwinge <thomas@codesourcery.com> |
2 | ||
3 | PR fortran/92793 | |
4 | * trans.c (gfc_set_backend_locus): Use 'gfc_get_location'. | |
5 | (gfc_restore_backend_locus): Adjust. | |
6 | ||
7 | 2020-11-02 Tobias Burnus <tobias@codesourcery.com> | |
8 | ||
9 | PR fortran/97655 | |
10 | * openmp.c (gfc_match_omp_atomic): Fix mem-order handling; | |
11 | reject specifying update + capture together. | |
12 | ||
13 | 2020-10-30 Tobias Burnus <tobias@codesourcery.com> | |
14 | ||
15 | * dump-parse-tree.c (show_omp_clauses): Handle atomic clauses. | |
16 | (show_omp_node): Call it for atomic. | |
17 | * gfortran.h (enum gfc_omp_atomic_op): Add GFC_OMP_ATOMIC_UNSET, | |
18 | remove GFC_OMP_ATOMIC_SEQ_CST and GFC_OMP_ATOMIC_ACQ_REL. | |
19 | (enum gfc_omp_memorder): Replace OMP_MEMORDER_LAST by | |
20 | OMP_MEMORDER_UNSET, add OMP_MEMORDER_SEQ_CST/OMP_MEMORDER_RELAXED. | |
21 | (gfc_omp_clauses): Add capture and atomic_op. | |
22 | (gfc_code): remove omp_atomic. | |
23 | * openmp.c (enum omp_mask1): Add atomic, capture, memorder clauses. | |
24 | (gfc_match_omp_clauses): Match them. | |
25 | (OMP_ATOMIC_CLAUSES): Add. | |
26 | (gfc_match_omp_flush): Update for 'last' to 'unset' change. | |
27 | (gfc_match_omp_oacc_atomic): Removed and placed content .. | |
28 | (gfc_match_omp_atomic): ... here. Update for OpenMP 5 clauses. | |
29 | (gfc_match_oacc_atomic): Match directly here. | |
30 | (resolve_omp_atomic, gfc_resolve_omp_directive): Update. | |
31 | * parse.c (parse_omp_oacc_atomic): Update for struct gfc_code changes. | |
32 | * resolve.c (gfc_resolve_blocks): Update assert. | |
33 | * st.c (gfc_free_statement): Also call for EXEC_O{ACC,MP}_ATOMIC. | |
34 | * trans-openmp.c (gfc_trans_omp_atomic): Update. | |
35 | (gfc_trans_omp_flush): Update for 'last' to 'unset' change. | |
36 | ||
37 | 2020-10-30 Jan Hubicka <jh@suse.cz> | |
38 | ||
39 | * trans-types.c: Include alias.h | |
40 | (gfc_get_array_type_bounds): Set typeless storage. | |
41 | ||
89bb01e7 GA |
42 | 2020-10-27 Harald Anlauf <anlauf@gmx.de> |
43 | ||
44 | * resolve.c (gfc_impure_variable): A dummy argument with the VALUE | |
45 | attribute may be redefined without making a procedure impure. | |
46 | ||
47 | 2020-10-27 Richard Biener <rguenther@suse.de> | |
48 | ||
49 | * trans-array.c (gfc_get_descriptor_field): New helper. | |
50 | (gfc_conv_descriptor_data_get): Use it - drop strange | |
51 | REFERENCE_TYPE handling and make sure we don't trigger it. | |
52 | (gfc_conv_descriptor_data_addr): Use gfc_get_descriptor_field. | |
53 | (gfc_conv_descriptor_data_set): Likewise. | |
54 | (gfc_conv_descriptor_offset): Likewise. | |
55 | (gfc_conv_descriptor_dtype): Likewise. | |
56 | (gfc_conv_descriptor_span): Likewise. | |
57 | (gfc_get_descriptor_dimension): Likewise. | |
58 | (gfc_conv_descriptor_token): Likewise. | |
59 | (gfc_conv_descriptor_subfield): New helper. | |
60 | (gfc_conv_descriptor_stride): Use it. | |
61 | (gfc_conv_descriptor_lbound): Likewise. | |
62 | (gfc_conv_descriptor_ubound): Likewise. | |
63 | ||
9651cba4 GA |
64 | 2020-10-25 Thomas Koenig <tkoenig@gcc.gnu.org> |
65 | ||
66 | PR fortran/97454 | |
67 | * gfortran.h (gfc_symbol): Add pass_as_value flag. | |
68 | (gfc_copy_formal_args_intr): Add optional argument | |
69 | copy_type. | |
70 | (gfc_get_intrinsic_function_symbol): Add prototype. | |
71 | (gfc_find_intrinsic_symbol): Add prototype. | |
72 | * intrinsic.c (gfc_get_intrinsic_function_symbol): New function. | |
73 | (gfc_find_intrinsic_symbol): New function. | |
74 | * symbol.c (gfc_copy_formal_args_intr): Add argument. Handle case | |
75 | where the type needs to be copied from the actual argument. | |
76 | * trans-intrinsic.c (remove_empty_actual_arguments): New function. | |
77 | (specific_intrinsic_symbol): New function. | |
78 | (gfc_conv_intrinsic_funcall): Use it. | |
79 | (strip_kind_from_actual): Adjust so that the expression pointer | |
80 | is set to NULL. | |
81 | (gfc_conv_intrinsic_minmaxloc): Likewise. | |
82 | (gfc_conv_intrinsic_minmaxval): Adjust removal of dim. | |
83 | * trans-types.c (gfc_sym_type): If sym->pass_as_value is set, do | |
84 | not pass by reference. | |
85 | ||
43868df3 GA |
86 | 2020-10-22 Tobias Burnus <tobias@codesourcery.com> |
87 | ||
88 | * gfortran.h (enum gfc_omp_memorder): Add. | |
89 | (gfc_omp_clauses): Use it. | |
90 | * openmp.c (gfc_match_omp_flush): Match memorder clauses. | |
91 | * trans-openmp.c (gfc_trans_omp_flush): Handle them. | |
92 | (gfc_trans_omp_directive): Update call. | |
93 | ||
56ddd5e2 GA |
94 | 2020-10-21 Tobias Burnus <tobias@codesourcery.com> |
95 | ||
96 | PR fortran/45516 | |
97 | * class.c: Add _deallocate to the vtable documentation | |
98 | comment. | |
99 | ||
56e4eee9 GA |
100 | 2020-10-16 Harald Anlauf <anlauf@gmx.de> |
101 | ||
102 | PR fortran/95979 | |
103 | * expr.c (gfc_check_init_expr): Fix check of return code from | |
104 | gfc_intrinsic_func_interface. | |
105 | * intrinsic.c (gfc_intrinsic_func_interface): Add further attempt | |
106 | of simplification of elemental intrinsics with array arguments. | |
107 | * iresolve.c (gfc_resolve_index_func): Keep optional KIND argument | |
108 | for simplification of elemental use of INDEX. | |
109 | ||
b85d5dc5 GA |
110 | 2020-10-15 Andre Vehreschild <vehre@gcc.gnu.org> |
111 | ||
112 | * trans-decl.c (gfc_build_builtin_function_decls): Fix the coarray fndecls. | |
113 | ||
b2698c21 GA |
114 | 2020-10-14 Tobias Burnus <tobias@codesourcery.com> |
115 | ||
116 | PR fortran/97390 | |
117 | * scanner.c (load_line): Fix line-truncation warning for !$acc | |
118 | and !gcc$ in free-form source code. | |
119 | ||
120 | 2020-10-14 Steven G. Kargl <kargl@gcc.gnu.org> | |
121 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
122 | ||
123 | PR fortran/95614 | |
124 | * decl.c (gfc_get_common): Use gfc_match_common_name instead | |
125 | of match_common_name. | |
126 | * decl.c (gfc_bind_idents): Use gfc_match_common_name instead | |
127 | of match_common_name. | |
128 | * match.c : Rename match_common_name to gfc_match_common_name. | |
129 | * match.c (gfc_match_common): Use gfc_match_common_name instead | |
130 | of match_common_name. | |
131 | * match.h : Rename match_common_name to gfc_match_common_name. | |
132 | * resolve.c (resolve_common_vars): Check each symbol in a | |
133 | common block has a global symbol. If there is a global symbol | |
134 | issue an error if the symbol type is a module or a program. | |
135 | ||
8be127ca GA |
136 | 2020-10-12 Mark Eggleston <markeggleston@gcc.gnu.org> |
137 | ||
138 | PR fortran/96099 | |
139 | * decl.c (gfc_match_implicit): Check for numeric and logical | |
140 | types. | |
141 | ||
6caec77e GA |
142 | 2020-10-07 Paul Thomas <pault@gcc.gnu.org> |
143 | ||
144 | PR fortran/47469 | |
145 | * trans-expr.c (arrayfunc_assign_needs_temporary): Tidy detection | |
146 | of pointer and allocatable functions. | |
147 | ||
4347d36f GA |
148 | 2020-10-04 Harald Anlauf <anlauf@gmx.de> |
149 | ||
150 | PR fortran/97272 | |
151 | * trans-intrinsic.c (strip_kind_from_actual): Helper function for | |
152 | removal of KIND argument. | |
153 | (gfc_conv_intrinsic_minmaxloc): Ignore KIND argument here, as it | |
154 | is treated elsewhere. | |
155 | ||
b0b9b8f0 GA |
156 | 2020-10-02 Jan Hubicka <hubicka@ucw.cz> |
157 | ||
158 | * trans-decl.c (gfc_build_library_function_decl_with_spec): Verify | |
159 | fnspec. | |
160 | (gfc_build_intrinsic_function_decls): Update fnspecs. | |
161 | (gfc_build_builtin_function_decls): Update fnspecs. | |
162 | * trans-io.c (gfc_build_io_library_fndecls): Update fnspecs. | |
163 | * trans-types.c (create_fn_spec): Update fnspecs. | |
164 | ||
660bfe61 GA |
165 | 2020-09-30 Jan Hubicka <jh@suse.cz> |
166 | ||
167 | * trans-decl.c (gfc_build_intrinsic_function_decls): Add traling dots | |
168 | to spec strings so they match the number of parameters; do not use | |
169 | R and W for non-pointer parameters. Drop pointless specifier on | |
170 | caf_stop_numeric and caf_get_team. | |
171 | ||
172 | 2020-09-30 Jan Hubicka <hubicka@ucw.cz> | |
173 | ||
174 | * trans-io.c (gfc_build_io_library_fndecls): Add trailing dots so | |
175 | length of spec string matches number of arguments. | |
176 | ||
177 | 2020-09-30 Tobias Burnus <tobias@codesourcery.com> | |
178 | ||
179 | PR fortran/97242 | |
180 | * expr.c (gfc_is_not_contiguous): Fix check. | |
181 | (gfc_check_pointer_assign): Use it. | |
182 | ||
183 | 2020-09-30 Paul Thomas <pault@gcc.gnu.org> | |
184 | ||
185 | PR fortran/97045 | |
186 | * trans-array.c (gfc_conv_array_ref): Make sure that the class | |
187 | decl is passed to build_array_ref in the case of unlimited | |
188 | polymorphic entities. | |
189 | * trans-expr.c (gfc_conv_derived_to_class): Ensure that array | |
190 | refs do not preceed the _len component. Free the _len expr. | |
191 | * trans-stmt.c (trans_associate_var): Reset 'need_len_assign' | |
192 | for polymorphic scalars. | |
193 | * trans.c (gfc_build_array_ref): When the vptr size is used for | |
194 | span, multiply by the _len field of unlimited polymorphic | |
195 | entities, when non-zero. | |
196 | ||
197 | 2020-09-30 Tom de Vries <tdevries@suse.de> | |
198 | ||
199 | * f95-lang.c (gfc_init_builtin_functions): Update | |
200 | targetm.libc_has_function call. | |
201 | ||
e84761c6 GA |
202 | 2020-09-28 Mark Eggleston <markeggleston@gcc.gnu.org> |
203 | ||
204 | Revert: | |
205 | 2020-09-27 Steven G. Kargl <kargl@gcc.gnu.org> | |
206 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
207 | ||
208 | PR fortran/95614 | |
209 | * decl.c (gfc_get_common): Use gfc_match_common_name instead | |
210 | of match_common_name. | |
211 | * decl.c (gfc_bind_idents): Use gfc_match_common_name instead | |
212 | of match_common_name. | |
213 | * match.c : Rename match_common_name to gfc_match_common_name. | |
214 | * match.c (gfc_match_common): Use gfc_match_common_name instead | |
215 | of match_common_name. | |
216 | * match.h : Rename match_common_name to gfc_match_common_name. | |
217 | * resolve.c (resolve_common_vars): Check each symbol in a | |
218 | common block has a global symbol. If there is a global symbol | |
219 | issue an error if the symbol type is known as is not a common | |
220 | block name. | |
221 | ||
4383c595 GA |
222 | 2020-09-27 Steven G. Kargl <kargl@gcc.gnu.org> |
223 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
224 | ||
225 | PR fortran/95614 | |
226 | * decl.c (gfc_get_common): Use gfc_match_common_name instead | |
227 | of match_common_name. | |
228 | * decl.c (gfc_bind_idents): Use gfc_match_common_name instead | |
229 | of match_common_name. | |
230 | * match.c : Rename match_common_name to gfc_match_common_name. | |
231 | * match.c (gfc_match_common): Use gfc_match_common_name instead | |
232 | of match_common_name. | |
233 | * match.h : Rename match_common_name to gfc_match_common_name. | |
234 | * resolve.c (resolve_common_vars): Check each symbol in a | |
235 | common block has a global symbol. If there is a global symbol | |
236 | issue an error if the symbol type is known as is not a common | |
237 | block name. | |
238 | ||
a2b7397b GA |
239 | 2020-09-24 Paul Thomas <pault@gcc.gnu.org> |
240 | ||
241 | PR fortran/96495 | |
242 | * trans-expr.c (gfc_conv_procedure_call): Take the deallocation | |
243 | of allocatable result components of a scalar result outside the | |
244 | scalarization loop. Find and use the stored result. | |
245 | ||
44135373 GA |
246 | 2020-09-21 Harald Anlauf <anlauf@gmx.de> |
247 | Paul Thomas <pault@gcc.gnu.org> | |
248 | ||
249 | * iresolve.c (gfc_resolve_mvbits): Remove unneeded conversion of | |
250 | FROMPOS, LEN and TOPOS arguments to fit a C int. | |
251 | * trans-intrinsic.c (gfc_conv_intrinsic_mvbits): Add inline | |
252 | expansion of MVBITS intrinsic elemental subroutine and add code | |
253 | for runtime argument checking. | |
254 | (gfc_conv_intrinsic_subroutine): Recognise MVBITS intrinsic, but | |
255 | defer handling to gfc_trans_call. | |
256 | * trans-stmt.c (replace_ss): | |
257 | (gfc_trans_call): Adjust to handle inline expansion, scalarization | |
258 | of intrinsic subroutine MVBITS in gfc_conv_intrinsic_mvbits. | |
259 | * trans.h (gfc_conv_intrinsic_mvbits): Add prototype for | |
260 | gfc_conv_intrinsic_mvbits. | |
261 | ||
2fe5b7d1 GA |
262 | 2020-09-19 Sandra Loosemore <sandra@codesourcery.com> |
263 | ||
264 | * interface.c (gfc_compare_actual_formal): Add assertion after | |
265 | main processing loop to silence maybe-uninitialized error. | |
266 | ||
267 | 2020-09-19 Harald Anlauf <anlauf@gmx.de> | |
268 | ||
269 | * symbol.c (gfc_check_conflict): Allow ELEMENTAL RECURSIVE | |
270 | procedure prefix for -std=f2018. | |
271 | ||
2aad20c0 GA |
272 | 2020-09-17 Tobias Burnus <tobias@codesourcery.com> |
273 | ||
274 | PR fortran/96041 | |
275 | PR fortran/93423 | |
276 | * decl.c (gfc_match_submod_proc): Avoid later double-free | |
277 | in the error case. | |
278 | ||
ecde1b0a GA |
279 | 2020-09-16 Tobias Burnus <tobias@codesourcery.com> |
280 | ||
281 | PR fortran/97061 | |
282 | * trans-openmp.c (gfc_trans_omp_do): Handle simd with (last)private. | |
283 | ||
9f7ab8c5 GA |
284 | 2020-09-15 Tobias Burnus <tobias@codesourcery.com> |
285 | ||
286 | PR fortran/96668 | |
287 | * trans.h (gfc_omp_finish_clause): Add bool openacc arg. | |
288 | * trans-openmp.c (gfc_omp_finish_clause): Ditto. Use | |
289 | GOMP_MAP_ALWAYS_POINTER with PSET for pointers. | |
290 | (gfc_trans_omp_clauses): Like the latter and also if the always | |
291 | modifier is used. | |
292 | ||
80f86e78 GA |
293 | 2020-09-09 Tobias Burnus <tobias@codesourcery.com> |
294 | ||
295 | PR fortran/95109 | |
296 | PR fortran/94690 | |
297 | * resolve.c (gfc_resolve_code): Also call | |
298 | gfc_resolve_omp_parallel_blocks for 'distribute parallel do (simd)'. | |
299 | * openmp.c (gfc_resolve_omp_parallel_blocks): Handle it. | |
300 | (gfc_resolve_do_iterator): Remove special code for SIMD, which is | |
301 | not needed. | |
302 | * trans-openmp.c (gfc_trans_omp_target): For TARGET_PARALLEL_DO_SIMD, | |
303 | call simd not do processing function. | |
304 | ||
31a05046 GA |
305 | 2020-09-08 Thomas Koenig <tkoenig@gcc.gnu.org> |
306 | ||
307 | * intrinsic.texi: Fix description of FINDLOC result. | |
308 | ||
a995c40d GA |
309 | 2020-09-07 Harald Anlauf <anlauf@gmx.de> |
310 | ||
311 | * trans-intrinsic.c (build_round_expr): Use temporary with | |
312 | appropriate kind for conversion before rounding to nearest | |
313 | integer when the result precision is 128 bits. | |
314 | ||
315 | 2020-09-07 Tobias Burnus <tobias@codesourcery.com> | |
316 | ||
317 | PR fortran/96896 | |
318 | * resolve.c (get_temp_from_expr): Also reset proc_pointer + | |
319 | use_assoc attribute. | |
320 | (resolve_ptr_fcn_assign): Use information from the LHS. | |
321 | ||
322 | 2020-09-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
323 | ||
324 | * trans-types.c (gfc_get_derived_type): Fix argument types. | |
325 | ||
326 | 2020-09-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
327 | ||
328 | * resolve.c (resolve_select_type): Provide a formal arg list. | |
329 | ||
0fd39e42 GA |
330 | 2020-09-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> |
331 | ||
332 | * trans-types.c (gfc_get_ppc_type): Add comment. | |
333 | ||
334 | 2020-09-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
335 | ||
336 | * trans-types.c (gfc_get_ppc_type): Fix function arg types. | |
337 | ||
338 | 2020-09-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | |
339 | ||
340 | PR fortran/96947 | |
341 | * trans-stmt.c (gfc_trans_fail_image): caf_fail_image | |
342 | expects no argument. | |
343 | ||
6a8f4e47 GA |
344 | 2020-09-02 Jakub Jelinek <jakub@redhat.com> |
345 | ||
346 | PR fortran/96859 | |
347 | * check.c (gfc_boz2real, gfc_boz2int): When clearing first two bits, | |
348 | change also '2' to '0' and '3' to '1' rather than just handling '4' | |
349 | through '7'. | |
350 | ||
e1a4a8a0 GA |
351 | 2020-09-01 Steven G. Kargl <kargl@gcc.gnu.org> |
352 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
353 | ||
354 | PR fortran/95398 | |
355 | * resolve.c (resolve_select_type): Add check for BT_CLASS | |
356 | type before using the CLASS_DATA macro which will have a | |
357 | NULL pointer to derive components if it isn't BT_CLASS. | |
358 | ||
cf2bc861 GA |
359 | 2020-08-30 José Rui Faustino de Sousa <jrfsousa@gmail.com> |
360 | ||
361 | PR fortran/96728 | |
362 | * module.c (module_peek_char): Peek ahead function. | |
363 | (parse_integer): Add code for parsing signed integers. | |
364 | (parse_atom): Add code to handle signed integers. | |
365 | (peek_atom): Add code to handle signed integers. | |
366 | ||
367 | 2020-08-30 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
368 | ||
369 | PR fortran/96727 | |
370 | * expr.c (gfc_check_init_expr): Add default error message for the AS_ASSUMED_RANK case. | |
371 | ||
372 | 2020-08-30 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
373 | ||
374 | PR fortran/96726 | |
375 | * expr.c (check_references): Change different relational operator | |
376 | to less-than operator to avoid infinite loop. | |
377 | ||
378 | 2020-08-30 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
379 | ||
380 | PR fortran/95352 | |
381 | * simplify.c (simplify_bound_dim): Add check for NULL pointer | |
382 | before trying to access structure member. | |
383 | ||
384 | 2020-08-30 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
385 | ||
386 | PR fortran/94110 | |
387 | * interface.c (gfc_compare_actual_formal): Add code to also raise | |
388 | the actual argument cannot be an assumed-size array error when the | |
389 | dummy arguments are deferred-shape or assumed-rank pointer. | |
390 | ||
8f7ea26a GA |
391 | 2020-08-28 Tobias Burnus <tobias@codesourcery.com> |
392 | ||
393 | PR fortran/94672 | |
394 | * trans-array.c (gfc_trans_g77_array): Check against the parm decl and | |
395 | set the nonparm decl used for the is-present check to NULL if absent. | |
396 | ||
397 | 2020-08-28 Paul Thomas <pault@gcc.gnu.org> | |
398 | ||
399 | PR fortran/96624 | |
400 | * simplify.c (gfc_simplify_reshape): Detect zero shape and | |
401 | clear index if found. | |
402 | ||
8b394f01 GA |
403 | 2020-08-27 Mark Eggleston <markeggleston@gcc.gnu.org> |
404 | ||
405 | PR fortran/95882 | |
406 | * decl.c (char_len_param_value): Check gfc_seen_div0 and | |
407 | if it is set return MATCH_ERROR. | |
408 | ||
409 | 2020-08-27 Martin Liska <mliska@suse.cz> | |
410 | ||
411 | * trans-openmp.c (gfc_trans_omp_do): Set exact argument of a vector | |
412 | growth function to true. | |
413 | ||
57ea0894 GA |
414 | 2020-08-26 Tobias Burnus <tobias@codesourcery.com> |
415 | ||
416 | * gfortran.h (enum gfc_omp_device_type): New. | |
417 | (symbol_attribute, gfc_omp_clauses, gfc_common_head): Use it. | |
418 | * module.c (enum ab_attribute): Add AB_OMP_DEVICE_TYPE_HOST, | |
419 | AB_OMP_DEVICE_TYPE_NOHOST and AB_OMP_DEVICE_TYPE_ANY. | |
420 | (attr_bits, mio_symbol_attribute): Handle it. | |
421 | (load_commons, write_common_0): Handle omp_device_type flag. | |
422 | * openmp.c (enum omp_mask1): Add OMP_CLAUSE_DEVICE_TYPE | |
423 | (OMP_DECLARE_TARGET_CLAUSES): Likewise. | |
424 | (gfc_match_omp_clauses): Match 'device_type'. | |
425 | (gfc_match_omp_declare_target): Handle it. | |
426 | * trans-common.c (build_common_decl): Write device-type clause. | |
427 | * trans-decl.c (add_attributes_to_decl): Likewise. | |
428 | ||
baf917af GA |
429 | 2020-08-23 Paul Thomas <pault@gcc.gnu.org> |
430 | ||
431 | PR fortran/96737 | |
432 | * trans-types.c (gfc_get_derived_type): Derived types that are | |
433 | used in submodules are not compatible with TYPE_CANONICAL from | |
434 | any of the global namespaces. | |
435 | ||
5b9a3d2a GA |
436 | 2020-08-20 Paul Thomas <pault@gcc.gnu.org> |
437 | ||
438 | PR fortran/96100 | |
439 | PR fortran/96101 | |
440 | * trans-array.c (get_array_charlen): Tidy up the evaluation of | |
441 | the string length for array constructors. Avoid trailing array | |
442 | references. Ensure string lengths of deferred length components | |
443 | are set. For parentheses operator apply string length to both | |
444 | the primary expression and the enclosed expression. | |
445 | ||
446 | 2020-08-20 Andre Vehreschild <vehre@gcc.gnu.org> | |
447 | ||
448 | PR fortran/94958 | |
449 | * trans-array.c (gfc_bcast_alloc_comp): Use the correct variable. | |
450 | ||
451 | 2020-08-20 Tobias Burnus <tobias@codesourcery.com> | |
452 | ||
453 | * openmp.c (gfc_match_omp_clauses): Re-order 'if' clause pasing | |
454 | to avoid creating spurious symbols. | |
455 | ||
5c265693 GA |
456 | 2020-08-18 Harald Anlauf <anlauf@gmx.de> |
457 | ||
458 | * check.c (check_rest): Reject MIN/MAX character arguments of | |
459 | different kind. | |
460 | * simplify.c (min_max_choose): The simplification result shall | |
461 | have the highest kind value of the arguments. | |
462 | * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Choose type and | |
463 | kind of intermediate by looking at all arguments, not the result. | |
464 | ||
deee2322 GA |
465 | 2020-08-17 Martin Liska <mliska@suse.cz> |
466 | ||
467 | * openmp.c (resolve_omp_clauses): Add static assert | |
468 | for OMP_LIST_NUM and size of clause_names array. | |
469 | Remove check that is always true. | |
470 | ||
471 | 2020-08-17 Martin Liska <mliska@suse.cz> | |
472 | ||
473 | * openmp.c (resolve_omp_clauses): Add NONTEMPORAL to clause | |
474 | names. | |
475 | ||
b3cb5606 GA |
476 | 2020-08-13 Andre Vehreschild <vehre@gcc.gnu.org> |
477 | ||
478 | PR fortran/93671 | |
479 | * trans-array.c (structure_alloc_comps): Keep caf-mode when applying to | |
480 | components; get the caf_token correctly for allocated scalar components. | |
481 | ||
482 | 2020-08-13 Matthew Krupcale <mkrupcale@matthewkrupcale.com> | |
483 | ||
484 | PR fortran/96595 | |
485 | * invoke.texi: Fix typos. | |
486 | ||
afdd220a GA |
487 | 2020-08-12 Tobias Burnus <tobias@codesourcery.com> |
488 | ||
489 | * gfortran.h: Add OMP_LIST_NONTEMPORAL. | |
490 | * dump-parse-tree.c (show_omp_clauses): Dump it | |
491 | * openmp.c (enum omp_mask1): Add OMP_CLAUSE_NOTEMPORAL. | |
492 | (OMP_SIMD_CLAUSES): Add it. | |
493 | (gfc_match_omp_clauses): Match nontemporal clause. | |
494 | * trans-openmp.c (gfc_trans_omp_clauses): Process | |
495 | nontemporal clause. | |
496 | ||
84005b8a GA |
497 | 2020-08-10 Thomas Koenig <tkoenig@gcc.gnu.org> |
498 | ||
499 | PR fortran/96556 | |
500 | * frontend-passes.c (doloop_contained_function_call): | |
501 | Do not dereference a NULL pointer for value.function.esym. | |
502 | ||
503 | 2020-08-10 Paul Thomas <pault@gcc.gnu.org> | |
504 | ||
505 | PR fortran/96312 | |
506 | * trans-expr.c (fcncall_realloc_result): Only compare shapes if | |
507 | lhs was allocated.. | |
508 | ||
509 | 2020-08-10 Paul Thomas <pault@gcc.gnu.org> | |
510 | ||
511 | PR fortran/96102 | |
512 | * resolve.c (check_host_association): Replace the gcc_assert | |
513 | with an error for internal procedures. | |
514 | ||
aa5ea20c GA |
515 | 2020-08-05 Thomas Koenig <tkoenig@gcc.gnu.org> |
516 | ||
517 | PR fortran/96469 | |
518 | * frontend-passes.c (doloop_contained_function_call): New | |
519 | function. | |
520 | (doloop_contained_procedure_code): New function. | |
521 | (CHECK_INQ): Macro for inquire checks. | |
522 | (doloop_code): Invoke doloop_contained_procedure_code and | |
523 | doloop_contained_function_call if appropriate. | |
524 | (do_intent): Likewise. | |
525 | ||
abba2591 GA |
526 | 2020-08-04 Tobias Burnus <tobias@codesourcery.com> |
527 | ||
528 | * openmp.c (resolve_omp_do): Detect not perfectly | |
529 | nested loop with innermost collapse. | |
530 | ||
531 | 2020-08-04 Tobias Burnus <tobias@codesourcery.com> | |
532 | ||
533 | * trans-openmp.c (gfc_trans_omp_do): Fix 'lastprivate(conditional:'. | |
534 | ||
6a1ad710 GA |
535 | 2020-08-03 Julian Brown <julian@codesourcery.com> |
536 | Thomas Schwinge <thomas@codesourcery.com> | |
537 | ||
538 | * trans-openmp.c (gfc_trans_omp_clauses): Don't create present/release | |
539 | mappings for array descriptors. | |
540 | ||
541 | 2020-08-03 Martin Jambor <mjambor@suse.cz> | |
542 | ||
543 | * f95-lang.c (gfc_init_builtin_functions): Remove processing of | |
544 | hsa-builtins.def. | |
545 | ||
546 | 2020-08-03 Tobias Burnus <tobias@codesourcery.com> | |
547 | ||
548 | * gfc-internals.texi: Fix typos. | |
549 | * gfortran.texi: Likewise. | |
550 | * intrinsic.texi: Likewise. | |
551 | * invoke.texi: Likewise. | |
552 | ||
7031087c GA |
553 | 2020-08-02 Paul Thomas <pault@gcc.gnu.org> |
554 | ||
555 | PR target/96320 | |
556 | * interface.c (gfc_check_dummy_characteristics): If a module | |
557 | procedure arrives with assumed shape in the interface and | |
558 | deferred shape in the procedure itself, update the latter and | |
559 | copy the lower bounds. | |
560 | ||
561 | 2020-08-02 Paul Thomas <pault@gcc.gnu.org> | |
562 | ||
563 | PR fortran/96325 | |
564 | * primary.c (gfc_match_varspec): In the case that a component | |
565 | reference is added to an intrinsic type component, emit the | |
566 | error message in this function. | |
567 | ||
bea7a391 GA |
568 | 2020-07-29 Tobias Burnus <tobias@codesourcery.com> |
569 | ||
570 | * dump-parse-tree.c (show_omp_clauses): Handle order(concurrent). | |
571 | * gfortran.h (struct gfc_omp_clauses): Add order_concurrent. | |
572 | * openmp.c (enum omp_mask1, OMP_DO_CLAUSES, OMP_SIMD_CLAUSES): | |
573 | Add OMP_CLAUSE_ORDER. | |
574 | * trans-openmp.c (gfc_trans_omp_clauses, gfc_split_omp_clauses): | |
575 | Handle order(concurrent) clause. | |
576 | ||
577 | 2020-07-29 Tobias Burnus <tobias@codesourcery.com> | |
578 | ||
579 | * openmp.c (resolve_omp_clauses): Permit 'omp target data' without | |
580 | map if use_device_{addr,ptr} is present. | |
581 | ||
582 | 2020-07-29 Mark Eggleston <markeggleston@gcc.gnu.org> | |
583 | ||
584 | PR fortran/96319 | |
585 | * intrinsic.c (gfc_convert_type_warn): Add check for | |
586 | LOGICAL type so that warnings are not output. | |
587 | ||
588 | 2020-07-29 Tobias Burnus <tobias@codesourcery.com> | |
589 | ||
590 | * module.c (mio_symbol_attribute): Fix indent of previous | |
591 | commit. | |
592 | ||
593 | 2020-07-29 Mark Eggleston <markeggleston@gcc.gnu.org> | |
594 | ||
595 | PR fortran/53298 | |
596 | * trans-array.c (gfc_walk_array_ref): If ref->ss.end is set | |
597 | call gfc_get_scalar_ss. | |
598 | ||
599 | 2020-07-29 Tobias Burnus <tobias@codesourcery.com> | |
600 | ||
601 | * gfortran.h (enum gfc_statement): Add ST_OMP_REQUIRES. | |
602 | (enum gfc_omp_requires_kind): New. | |
603 | (enum gfc_omp_atomic_op): Add GFC_OMP_ATOMIC_ACQ_REL. | |
604 | (struct gfc_namespace): Add omp_requires and omp_target_seen. | |
605 | (gfc_omp_requires_add_clause, | |
606 | (gfc_check_omp_requires): New. | |
607 | * match.h (gfc_match_omp_requires): New. | |
608 | * module.c (enum ab_attribute, attr_bits): Add omp requires clauses. | |
609 | (mio_symbol_attribute): Read/write them. | |
610 | * openmp.c (gfc_check_omp_requires, (gfc_omp_requires_add_clause, | |
611 | gfc_match_omp_requires): New. | |
612 | (gfc_match_omp_oacc_atomic): Use requires's default mem-order. | |
613 | * parse.c (decode_omp_directive): Match requires, set omp_target_seen. | |
614 | (gfc_ascii_statement): Handle ST_OMP_REQUIRES. | |
615 | * trans-openmp.c (gfc_trans_omp_atomic): Handle GFC_OMP_ATOMIC_ACQ_REL. | |
616 | ||
e71dab87 GA |
617 | 2020-07-27 Tobias Burnus <tobias@codesourcery.com> |
618 | ||
619 | * openmp.c (gfc_resolve_omp_directive): Remove NULL check | |
620 | for clauses in EXEC_OMP_CRITICAL as it no longer can be NULL. | |
621 | ||
9bb403dc GA |
622 | 2020-07-23 Tobias Burnus <tobias@codesourcery.com> |
623 | ||
624 | * gfortran.h (gfc_omp_namelist): Add lastprivate_conditional. | |
625 | * openmp.c (gfc_match_omp_clauses): Handle 'conditional:' | |
626 | modifier of 'lastprivate'. | |
627 | * trans-openmp.c (gfc_omp_clause_default_ctor): Don't assert | |
628 | on OMP_CLAUSE__CONDTEMP_ and other OMP_*TEMP_. | |
629 | (gfc_trans_omp_variable_list): Handle lastprivate_conditional. | |
630 | ||
631 | 2020-07-23 Tobias Burnus <tobias@codesourcery.com> | |
632 | ||
633 | * intrinsic.texi (OMP_LIB_KINDS): Add omp_depend_kind. | |
634 | ||
635 | 2020-07-23 Tobias Burnus <tobias@codesourcery.com> | |
636 | ||
637 | * gfortran.texi (Standards): Update URL; state that OpenMP 4.5 | |
638 | is supported and 5.0 is partially. | |
639 | * intrinsic.texi (OpenMP Modules): Refer also to OpenMP 5.0; | |
640 | (OMP_LIB): Add missing derived type and new named constants. | |
641 | ||
3ea9abca GA |
642 | 2020-07-22 Tobias Burnus <tobias@codesourcery.com> |
643 | ||
644 | * gfortran.h (enum gfc_omp_if_kind): Add OMP_IF_CANCEL and OMP_IF_SIMD. | |
645 | * openmp.c (OMP_SIMD_CLAUSES): Add OMP_CLAUSE_IF. | |
646 | (gfc_match_omp_clauses, resolve_omp_clauses): Handle 'if (simd/cancel:'. | |
647 | * dump-parse-tree.c (show_omp_clauses): Likewise. | |
648 | * trans-openmp.c (gfc_trans_omp_clauses, gfc_trans_omp_cancel, | |
649 | (gfc_split_omp_clauses): Likewise. | |
650 | ||
651 | 2020-07-22 Tobias Burnus <tobias@codesourcery.com> | |
652 | ||
653 | * openmp.c (gfc_match_omp_critical): Fix handling hints; permit | |
654 | hint clause without named critical. | |
655 | (resolve_omp_clauses): Require nonnegative constant integer | |
656 | for the hint clause. | |
657 | (gfc_resolve_omp_directive): Check for no name but | |
658 | nonzero value for hint clause. | |
659 | * parse.c (parse_omp_structured_block): Fix same-name check | |
660 | for critical. | |
661 | * trans-openmp.c (gfc_trans_omp_critical): Handle hint clause properly. | |
662 | ||
30430061 GA |
663 | 2020-07-21 Harald Anlauf <anlauf@gmx.de> |
664 | ||
665 | PR fortran/89574 | |
666 | * trans-decl.c (gfc_get_extern_function_decl): Check whether a | |
667 | symbol belongs to a different module. | |
668 | ||
5154dab3 GA |
669 | 2020-07-19 Thomas Koenig <tkoenig@gcc.gnu.org> |
670 | ||
671 | PR fortran/96220 | |
672 | * dump-parse-tree.c (get_c_type_name): Always use the entries from | |
673 | c_interop_kinds_table to find the correct C type. | |
674 | ||
675 | 2020-07-19 Thomas Koenig <tkoenig@gcc.gnu.org> | |
676 | ||
677 | PR fortran/96018 | |
678 | * frontend-passes.c (gfc_check_externals): Adjust formatting. | |
679 | (implicit_pure_call): New function. | |
680 | (implicit_pure_expr): New function. | |
681 | (gfc_fix_implicit_pure): New function. | |
682 | * gfortran.h (gfc_fix_implicit_pure): New prototype. | |
683 | * parse.c (translate_all_program_units): Call gfc_fix_implicit_pure. | |
684 | ||
aeb34e15 GA |
685 | 2020-07-18 David Edelsohn <dje.gcc@gmail.com> |
686 | ||
687 | * check.c (gfc_invalid_boz): Mark hint for translation using _(). | |
688 | ||
96686b3f GA |
689 | 2020-07-16 Julian Brown <julian@codesourcery.com> |
690 | Thomas Schwinge <thomas@codesourcery.com> | |
691 | ||
692 | * trans-openmp.c (gfc_trans_omp_clauses): Rework OpenACC | |
693 | attach/detach handling for arrays with descriptors. | |
694 | ||
8ca07a30 GA |
695 | 2020-07-14 Steven G. Kargl <kargl@gcc.gnu.org> |
696 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
697 | ||
698 | PR fortran/95612 | |
699 | * expr.c (gfc_check_pointer_assigb): Output an error if | |
700 | rvalue is a zero sized array or output an error if rvalue | |
701 | doesn't have a symbol tree. | |
702 | ||
703 | 2020-07-14 Tobias Burnus <tobias@codesourcery.com> | |
704 | ||
705 | * openmp.c (gfc_match_omp_clauses): Match also derived-type | |
706 | component refs in OMP_CLAUSE_MAP. | |
707 | (resolve_omp_clauses): Resolve those. | |
708 | * trans-openmp.c (gfc_trans_omp_array_section, gfc_trans_omp_clauses): | |
709 | Handle OpenMP structure-element mapping. | |
710 | (gfc_trans_oacc_construct, gfc_trans_oacc_executable_directive, | |
711 | (gfc_trans_oacc_combined_directive, gfc_trans_oacc_declare): Update | |
712 | add openacc=true in gfc_trans_omp_clauses call. | |
713 | ||
714 | 2020-07-14 Tobias Burnus <tobias@codesourcery.com> | |
715 | ||
716 | PR fortran/67311 | |
717 | * trans-openmp.c (gfc_has_alloc_comps): Return false also for | |
718 | pointers to arrays. | |
719 | ||
720 | 2020-07-14 Steven G. Kargl <kargl@gcc.gnu.org> | |
721 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
722 | ||
723 | PR fortran/96038 | |
724 | * decl.c (add_init_expr_sym): For a symbol that is a | |
725 | parameter accept an initialisation if it does not have a | |
726 | value otherwise output a error and reject. | |
727 | ||
ea69fcf9 GA |
728 | 2020-07-13 Mark Eggleston <markeggleston@gcc.gnu.org> |
729 | ||
730 | PR fortran/45337 | |
731 | * resolve.c (resolve_fl_variable): Remove type and intent | |
732 | checks from the check for dummy. | |
733 | ||
734 | 2020-07-13 Steven G. Kargl <kargl@gcc.gnu.org> | |
735 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
736 | ||
737 | PR fortran/95981 | |
738 | * check.c (dim_rank_check): Allow NULL references in call to | |
739 | gfc_find_array_ref and return false if no reference is found. | |
740 | ||
42f19c38 GA |
741 | 2020-07-11 Thomas Koenig <tkoenig@gcc.gnu.org> |
742 | ||
743 | PR fortran/96073 | |
744 | * frontend-passes.c (check_externals_procedure): Add locus | |
745 | information for new_sym. | |
746 | * interface.c (gfc_check_dummy_characteristics): Do not warn | |
747 | about INTENT for artificially generated variables. | |
748 | ||
86536295 GA |
749 | 2020-07-10 Harald Anlauf <anlauf@gmx.de> |
750 | ||
751 | PR fortran/95980 | |
752 | * class.c (gfc_add_component_ref, gfc_build_class_symbol): | |
753 | Add checks for NULL pointer dereference. | |
754 | * primary.c (gfc_variable_attr): Likewise. | |
755 | * resolve.c (resolve_variable, resolve_assoc_var) | |
756 | (resolve_fl_var_and_proc, resolve_fl_variable_derived) | |
757 | (resolve_symbol): Likewise. | |
758 | ||
759 | 2020-07-10 Harald Anlauf <anlauf@gmx.de> | |
760 | ||
761 | PR fortran/96086 | |
762 | * match.c (gfc_match_select_rank): Catch NULL pointer | |
763 | dereference. | |
764 | * resolve.c (resolve_assoc_var): Catch NULL pointer dereference | |
765 | that may occur after an illegal declaration. | |
766 | ||
3f8ca9cb GA |
767 | 2020-07-09 Julian Brown <julian@codesourcery.com> |
768 | ||
769 | * trans-openmp.c (gfc_trans_omp_clauses): Use 'inner' not 'decl' for | |
770 | derived type members which themselves have derived types. | |
771 | ||
50873cc5 GA |
772 | 2020-07-08 Harald Anlauf <anlauf@gmx.de> |
773 | ||
774 | PR fortran/96085 | |
775 | * resolve.c (gfc_resolve_code): Check whether assign target is a | |
776 | parameter. | |
777 | ||
4077d74c GA |
778 | 2020-07-06 Harald Anlauf <anlauf@gmx.de> |
779 | ||
780 | PR fortran/95980 | |
781 | * match.c (copy_ts_from_selector_to_associate, build_class_sym): | |
782 | Distinguish between unlimited polymorphic and ordinary variables | |
783 | to avoid NULL pointer dereference. | |
784 | * resolve.c (resolve_select_type): | |
785 | Distinguish between unlimited polymorphic and ordinary variables | |
786 | to avoid NULL pointer dereference. | |
787 | ||
788 | 2020-07-06 Harald Anlauf <anlauf@gmx.de> | |
789 | ||
790 | PR fortran/95709 | |
791 | * resolve.c (gfc_resolve_code): Check for valid arguments to | |
792 | assigned GOTO. | |
793 | ||
df66f280 GA |
794 | 2020-07-05 Thomas Koenig <tkoenig@gcc.gnu.org> |
795 | ||
796 | PR fortran/27318 | |
797 | * frontend-passes.c (check_against_globals): New function. | |
798 | (gfc_check_externals): Split; also invoke check_against_globals | |
799 | via gfc_traverse_ns. | |
800 | (gfc_check_externals0): Recursive part formerly in | |
801 | gfc_check_externals. | |
802 | * resolve.c (resolve_global_procedure): Set sym->error on | |
803 | interface mismatch. | |
804 | * symbol.c (ambiguous_symbol): Check for, and set sym->error. | |
805 | ||
b5f24739 GA |
806 | 2020-07-02 Harald Anlauf <anlauf@gmx.de> |
807 | ||
808 | PR fortran/93423 | |
809 | * resolve.c (resolve_symbol): Avoid NULL pointer dereference. | |
810 | ||
811 | 2020-07-02 Harald Anlauf <anlauf@gmx.de> | |
812 | ||
813 | PR fortran/93337 | |
814 | * class.c (gfc_find_derived_vtab): Punt if name is not set. | |
815 | ||
816 | 2020-07-02 Mark Eggleston <markeggleston@gcc.gnu.org> | |
817 | ||
818 | PR fortran/52279 | |
819 | * check.c (gfc_invalid_boz): Change array declaration for | |
820 | hint into a pointer. | |
821 | ||
822 | 2020-07-02 Steven G. Kargl <kargl@gcc.gnu.org> | |
823 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
824 | ||
825 | PR fortran/95584 | |
826 | * interface.c (generic_correspondence): Only use the pointer | |
827 | to a symbol if exists. | |
828 | ||
64f761e4 GA |
829 | 2020-07-01 David Edelsohn <dje.gcc@gmail.com> |
830 | ||
831 | * check.c (gfc_invalid_boz): Fix bootstrap. Revert | |
832 | Mark hint for translation using _(). | |
833 | ||
834 | 2020-07-01 Mark Eggleston <markeggleston@gcc.gnu.org> | |
835 | ||
836 | PR fortran/52279 | |
837 | * arith.c (reduce_binary_aa): Mark for translation the string | |
838 | parameter to gfc_check_conformance with G_(). | |
839 | * check.c (gfc_invalid_boz): Mark hint for translation using | |
840 | _(). (gfc_check_achar): Mark for translation the message | |
841 | parameter to gfc_invalid_boz using G_(). (gfc_check_char): | |
842 | Mark for translation the message parameter to gfc_invalid_boz | |
843 | using G_(). (gfc_check_complex): Mark for translation the | |
844 | message parameter to gfc_invalid_boz using G_(). | |
845 | (gfc_check_float): Mark for translation the message | |
846 | parameter to gfc_invalid_boz using G_(). (check_rest): Mark | |
847 | for translation the string parameter to gfc_check_conformance | |
848 | with _(). (gfc_check_minloc_maxloc): Mark for translation | |
849 | the string parameter to gfc_check_conformance with _(). | |
850 | (gfc_check_findloc): Mark for translation the string parameter | |
851 | to gfc_check_conformance with _(). (check_reduction): Mark | |
852 | for translation the string parameter to gfc_check_conformance | |
853 | with _(). (gfc_check_pack): Mark for translation the string | |
854 | parameter to gfc_check_conformance with _(). | |
855 | * decl.c (match_old_style_init): Mark for translation the | |
856 | message parameter to gfc_invalid_boz using G_(). | |
857 | * expr.c (gfc_check_assign): Mark for translation the string | |
858 | parameter to gfc_check_conformance with _(). | |
859 | * intrinsic.c (check_specific): Mark for translation the string | |
860 | parameter to gfc_check_conformance with _(). | |
861 | (gfc_check_intrinsic_standard): Mark symstd_msg strings for | |
862 | translation using G_(). No need to mark symstd_msg for | |
863 | translation in call to gfc_warning or when setting symstd. | |
864 | * io.c (check_open_constraints): Mark strings for translation | |
865 | using G_() in all calls to warn_or_error. (match_io_element): | |
866 | Mark for translation the message parameter to gfc_invalid_boz | |
867 | using G_(). | |
868 | * primary.c (match_boz_constant): Mark for translation the | |
869 | message parameter to gfc_invalid_boz using G_(). | |
870 | * resolve.c (resolve_elemental_actual): Mark for translation | |
871 | the string parameter to gfc_check_conformance with _(). | |
872 | (resolve_operator): Mark for translation the string parameter | |
873 | to gfc_check_conformance with _(). Mark translation strings | |
874 | assigned to msg using G_() for use in a call to cfg_warning. | |
875 | ||
876 | 2020-07-01 Steven G. Kargl <kargl@gcc.gnu.org> | |
877 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
878 | ||
879 | PR fortran/95446 | |
880 | * resolve.c (resolve_elemental_actual): Add code to check for | |
881 | non-optional argument of the same rank. Revise warning message | |
882 | to refer to the Fortran 2018 standard. | |
883 | ||
884 | 2020-07-01 Steven G. Kargl <kargl@gcc.gnu.org> | |
885 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
886 | ||
887 | PR fortran/95829 | |
888 | * decl.c (gfc_match_decl_type_spec): Compare with "* ) " instead | |
889 | of "*)". | |
890 | ||
46fbb6c6 GA |
891 | 2020-06-30 Harald Anlauf <anlauf@gmx.de> |
892 | ||
893 | PR fortran/88379 | |
894 | * resolve.c (resolve_assoc_var): Avoid NULL pointer dereference. | |
895 | ||
896 | 2020-06-30 Thomas Koenig <tkoenig@gcc.gnu.org> | |
897 | ||
898 | PR fortran/95355 | |
899 | * gfortran.h (gfc_typename): Add optional argument for_hash. | |
900 | * misc.c (gfc_typename): When for_hash is true, just retur | |
901 | CHARACTER(kind). | |
902 | * class.c (gfc_intrinsic_hash_value): Call gfc_typename with | |
903 | for_hash = true. | |
904 | ||
458f12ed GA |
905 | 2020-06-29 Harald Anlauf <anlauf@gmx.de> |
906 | ||
907 | PR fortran/95978 | |
908 | * decl.c (gfc_match_data): Avoid NULL pointer dereference. | |
909 | ||
910 | 2020-06-29 Thomas Koenig <tkoenig@gcc.gnu.org> | |
911 | ||
912 | PR fortran/95743 | |
913 | * trans-decl.c (gfc_generate_function_code): Do not generate | |
914 | recursion check for compiler-generated procedures. | |
915 | ||
916 | 2020-06-29 Harald Anlauf <anlauf@gmx.de> | |
917 | ||
918 | PR fortran/71706 | |
919 | * trans-stmt.c (gfc_trans_sync): Do proper kind conversion in | |
920 | bounds-checking code. | |
921 | ||
69273534 GA |
922 | 2020-06-28 Harald Anlauf <anlauf@gmx.de> |
923 | ||
924 | PR fortran/95340 | |
925 | * match.c (gfc_match_select_rank): Do not dereference NULL pointer. | |
926 | ||
927 | 2020-06-28 Harald Anlauf <anlauf@gmx.de> | |
928 | ||
929 | PR fortran/95880 | |
930 | * symbol.c (gfc_add_type): If sym->ns->proc_name is set, use it, | |
931 | otherwise fall back to sym->name. | |
932 | ||
9a33c41f GA |
933 | 2020-06-27 Harald Anlauf <anlauf@gmx.de> |
934 | ||
935 | PR fortran/95881 | |
936 | * resolve.c (resolve_symbol): Avoid NULL pointer dereference. | |
937 | ||
d61ffe12 GA |
938 | 2020-06-25 Harald Anlauf <anlauf@gmx.de> |
939 | ||
940 | PR fortran/95828 | |
941 | * match.c (select_rank_set_tmp): Enlarge internal buffer used in | |
942 | generating a mangled name. | |
943 | * resolve.c (resolve_select_rank): Likewise. | |
944 | ||
945 | 2020-06-25 Harald Anlauf <anlauf@gmx.de> | |
946 | ||
947 | PR fortran/95826 | |
948 | * decl.c (gfc_match_decl_type_spec): Replace a fixed size | |
949 | buffer by a pointer and reallocate if necessary. | |
950 | ||
951 | 2020-06-25 Tobias Burnus <tobias@codesourcery.com> | |
952 | ||
953 | PR fortran/95837 | |
954 | * resolve.c (gfc_resolve_substring_charlen): Remove | |
955 | bogus ts.kind setting for the expression. | |
956 | ||
957 | 2020-06-25 Tobias Burnus <tobias@codesourcery.com> | |
958 | Kwok Cheung Yeung <kcy@codesourery.com> | |
959 | ||
960 | PR fortran/95869 | |
961 | * trans-openmp.c (gfc_trans_omp_target): Use correct scoping block. | |
962 | ||
963 | 2020-06-25 Kwok Cheung Yeung <kcy@codesourcery.com> | |
964 | ||
965 | * trans-openmp.c (gfc_split_omp_clauses): Add if clause | |
966 | to target and simd sub-constructs. | |
967 | ||
2e546c26 GA |
968 | 2020-06-24 Harald Anlauf <anlauf@gmx.de> |
969 | ||
970 | PR fortran/95827 | |
971 | * iresolve.c (gfc_get_string): Enlarge internal buffer used in | |
972 | generating the mangled name. | |
973 | ||
4543acc8 GA |
974 | 2020-06-23 Thomas Koenig <tkoenig@gcc.gnu.org> |
975 | ||
976 | PR fortran/95812 | |
977 | * dependency.c (ref_same_as_full_array): Handle case of AR_FULL | |
978 | vs. AR_FULL. | |
979 | ||
980 | 2020-06-23 Steven G. Kargl <kargl@gcc.gnu.org> | |
981 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
982 | ||
983 | PR fortran/95586 | |
984 | * decl.c (gfc_match_implicit): Only perform else branch if | |
985 | the type spect is not BT_DERIVED. | |
986 | ||
605a8f3b GA |
987 | 2020-06-22 Steven G. Kargl <kargl@gcc.gnu.org> |
988 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
989 | ||
990 | PR fortran/95708 | |
991 | * intrinsic.c (add_functions): Replace CLASS_INQUIRY with | |
992 | CLASS_TRANSFORMATIONAL for intrinsic num_images. | |
993 | (make_generic): Replace ACTUAL_NO with ACTUAL_YES for | |
994 | intrinsic team_number. | |
995 | * resolve.c (resolve_fl_procedure): Check pointer ts.u.derived | |
996 | exists before using it. | |
997 | ||
998 | 2020-06-22 Steven G. Kargl <kargl@gcc.gnu.org> | |
999 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
1000 | ||
1001 | PR fortran/95585 | |
1002 | * check.c (gfc_check_reshape): Add check for a value when | |
1003 | the symbol has an attribute flavor FL_PARAMETER. | |
1004 | ||
1005 | 2020-06-22 Mark Eggleston <markeggleston@gcc.gnu.org> | |
1006 | ||
1007 | PR fortran/42693 | |
1008 | * arith.c (gfc_arith_error): Enclose strings in G_() instead | |
1009 | of _(). | |
1010 | ||
bbac3886 GA |
1011 | 2020-06-20 Harald Anlauf <anlauf@gmx.de> |
1012 | ||
1013 | PR fortran/95707 | |
1014 | * gfortran.h (gfc_common_head): Enlarge buffer. | |
1015 | * trans-common.c (gfc_sym_mangled_common_id): Enlarge temporary | |
1016 | buffers, and add check on length on mangled name to prevent | |
1017 | overflow. | |
1018 | ||
1019 | 2020-06-20 Harald Anlauf <anlauf@gmx.de> | |
1020 | ||
1021 | PR fortran/95688 | |
1022 | * iresolve.c (gfc_get_string): Enlarge static buffer size. | |
1023 | ||
1024 | 2020-06-20 Harald Anlauf <anlauf@gmx.de> | |
1025 | ||
1026 | PR fortran/95687 | |
1027 | * class.c (get_unique_type_string): Return a string with dynamic | |
1028 | length. | |
1029 | (get_unique_hashed_string, gfc_hash_value): Use dynamic result | |
1030 | from get_unique_type_string instead of static buffer. | |
1031 | ||
1032 | 2020-06-20 Harald Anlauf <anlauf@gmx.de> | |
1033 | ||
1034 | PR fortran/95689 | |
1035 | * interface.c (check_sym_interfaces): Enlarge temporary buffer, | |
1036 | and add check on length on mangled name to prevent overflow. | |
1037 | ||
1038 | 2020-06-20 Harald Anlauf <anlauf@gmx.de> | |
1039 | ||
1040 | PR fortran/95587 | |
1041 | * match.c (gfc_match_equivalence): Check constraints on | |
1042 | EQUIVALENCE objects also for CLASS variables. | |
1043 | ||
aae80e83 GA |
1044 | 2020-06-18 Tobias Burnus <tobias@codesourcery.com> |
1045 | ||
1046 | * openmp.c (resolve_omp_clauses): Reject vars with | |
1047 | allocatable components in OpenMP map clauses. | |
1048 | ||
56638b9b GA |
1049 | 2020-06-16 Tobias Burnus <tobias@codesourcery.com> |
1050 | ||
1051 | * parse.c (decode_oacc_directive): Permit 'acc routine' also | |
1052 | inside pure procedures. | |
1053 | * openmp.c (gfc_match_oacc_routine): Inside pure procedures | |
1054 | do not permit gang, worker or vector clauses. | |
1055 | ||
1056 | 2020-06-16 Tobias Burnus <tobias@codesourcery.com> | |
1057 | ||
1058 | * parse.c (decode_omp_directive): Remove "or ELEMENTAL" | |
1059 | from "in PURE" error message also for -fopenmp-simd. | |
1060 | ||
1061 | 2020-06-16 Tobias Burnus <tobias@codesourcery.com> | |
1062 | ||
1063 | * parse.c (decode_omp_directive): Remove "or ELEMENTAL" | |
1064 | from "in PURE" error message. | |
1065 | ||
0dcb572c GA |
1066 | 2020-06-14 Thomas Koenig <tkoenig@gcc.gnu.org> |
1067 | ||
1068 | PR fortran/42122 | |
1069 | * dump-parse-tree.c (gfc_dump_global_symbols): If the symroot is | |
1070 | empty, just output "empty". | |
1071 | ||
1072 | 2020-06-14 Harald Anlauf <anlauf@gmx.de> | |
1073 | ||
1074 | PR fortran/95088 | |
1075 | * class.c (get_unique_type_string): Replace use of fixed size | |
1076 | buffer by internally passing a pointer to strings. | |
1077 | ||
1078 | 2020-06-14 Thomas Koenig <tkoenig@gcc.gnu.org> | |
1079 | ||
1080 | * check.c (gfc_check_random_seed): Always use locations | |
1081 | from get and put arguments for error messages. | |
1082 | ||
1083 | 2020-06-14 Thomas Koenig <tkoenig@gcc.gnu.org> | |
1084 | ||
1085 | PR fortran/94109 | |
1086 | * class.c (finalize_component): Return early if finalization has | |
1087 | already happened for expression and component within namespace. | |
1088 | * gfortran.h (gfc_was_finalized): New type. | |
1089 | (gfc_namespace): Add member was_finalzed. | |
1090 | (gfc_expr): Remove finalized. | |
1091 | * symbol.c (gfc_free_namespace): Free was_finalized. | |
1092 | ||
e68e80c8 GA |
1093 | 2020-06-11 Harald Anlauf <anlauf@gmx.de> |
1094 | Steven G. Kargl <kargl@gcc.gnu.org> | |
1095 | ||
1096 | PR fortran/95611 | |
1097 | * decl.c (access_attr_decl): Use correct symbol in error message. | |
1098 | ||
1099 | 2020-06-11 Steven G. Kargl <kargl@gcc.gnu.org> | |
1100 | Harald Anlauf <anlauf@gmx.de> | |
1101 | ||
1102 | PR fortran/95544 | |
1103 | * check.c (invalid_null_arg): Rename to gfc_invalid_null_arg. | |
1104 | (gfc_check_associated, gfc_check_kind, gfc_check_merge) | |
1105 | (gfc_check_shape, gfc_check_size, gfc_check_spread) | |
1106 | (gfc_check_transfer): Adjust. | |
1107 | (gfc_check_len_lentrim, gfc_check_trim): Check for NULL() argument. | |
1108 | * gfortran.h: Declare gfc_invalid_null_arg (). | |
1109 | * intrinsic.c (check_arglist): Check for NULL() argument. | |
1110 | ||
1111 | 2020-06-11 Harald Anlauf <anlauf@gmx.de> | |
1112 | ||
1113 | PR fortran/95503 | |
1114 | * expr.c (gfc_check_pointer_assign): Skip contiguity check of rhs | |
1115 | of pointer assignment if lhs cannot be simply contiguous. | |
1116 | ||
1117 | 2020-06-11 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
1118 | ||
1119 | PR fortran/95331 | |
1120 | * trans-array.c (gfc_conv_array_ref): For class array dummy | |
1121 | arguments use the transformed descriptor in sym->backend_decl | |
1122 | instead of the original descriptor. | |
1123 | ||
1124 | 2020-06-11 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
1125 | ||
1126 | PR fortran/52351 | |
1127 | PR fortran/85868 | |
1128 | * trans-array.c (gfc_conv_expr_descriptor): Enable the | |
1129 | creation of a new descriptor with the correct one based | |
1130 | indexing for array sections. Rework array descriptor | |
1131 | indexing offset calculation. | |
1132 | ||
1133 | 2020-06-11 José Rui Faustino de Sousa <jrfsousa@gmail.com> | |
1134 | ||
1135 | PR fortran/94022 | |
1136 | * trans-expr.c (gfc_conv_procedure_call): In the case of | |
1137 | assumed-size arrays ensure that the reference is to a full array. | |
1138 | ||
53d461e4 GA |
1139 | 2020-06-07 Harald Anlauf <anlauf@gmx.de> |
1140 | ||
1141 | PR fortran/95091 | |
1142 | * class.c (gfc_hash_value): Add cast. | |
1143 | ||
1144 | 2020-06-07 Harald Anlauf <anlauf@gmx.de> | |
1145 | ||
1146 | PR fortran/95091 | |
1147 | * class.c (get_unique_type_string, gfc_hash_value): Enlarge | |
1148 | buffers, and check whether the strings returned by | |
1149 | get_unique_type_string() fit. | |
1150 | ||
1a59f3db GA |
1151 | 2020-06-05 Harald Anlauf <anlauf@gmx.de> |
1152 | ||
1153 | PR fortran/95530 | |
1154 | PR fortran/95537 | |
1155 | * decl.c (gfc_match_decl_type_spec): Enlarge buffer, and enhance | |
1156 | string copy to detect buffer overflow. | |
1157 | * gfortran.h (gfc_common_head): Enlarge buffer. | |
1158 | * trans-common.c (finish_equivalences): Enhance string copy to | |
1159 | detect buffer overflow. | |
1160 | ||
1161 | 2020-06-05 Tom Tromey <tromey@adacore.com> | |
1162 | ||
1163 | PR fortran/95509 | |
1164 | * misc.c (gfc_closest_fuzzy_match): Update cutoff value | |
1165 | computation. | |
1166 | ||
3add3425 GA |
1167 | 2020-06-04 Steven G. Kargl <kargl@gcc.gnu.org> |
1168 | Harald Anlauf <anlauf@gmx.de> | |
1169 | ||
1170 | PR fortran/95500 | |
1171 | * trans-expr.c (gfc_conv_expr_reference): Do not dereference NULL | |
1172 | pointer. | |
1173 | ||
9a5b7438 GA |
1174 | 2020-06-03 José Rui Faustino de Sousa <jrfsousa@gmail.com> |
1175 | ||
1176 | PR fortran/95214 | |
1177 | PR fortran/66833 | |
1178 | PR fortran/67938 | |
1179 | * trans-expr.c (gfc_maybe_dereference_var): Add assumed-rank to | |
1180 | character dummy arguments list of possible attributes. | |
1181 | ||
1182 | 2020-06-03 Tobias Burnus <tobias@codesourcery.com> | |
1183 | ||
1184 | * f95-lang.c (LANG_HOOKS_OMP_PREDETERMINED_MAPPING): Redefine. | |
1185 | * trans-openmp.c (gfc_omp_predetermined_mapping): New. | |
1186 | * trans.h (gfc_omp_predetermined_mapping): Declare. | |
1187 | ||
e7340ed7 GA |
1188 | 2020-05-31 Thomas Koenig <tkoenig@gcc.gnu.org> |
1189 | ||
1190 | PR fortran/94361 | |
1191 | * class.c (finalize_component): Use expr->finalized instead of | |
1192 | comp->finalized. | |
1193 | * gfortran.h (gfc_component): Remove finalized member. | |
1194 | (gfc_expr): Add it here instead. | |
1195 | ||
945b53cc GA |
1196 | 2020-05-30 Harald Anlauf <anlauf@gmx.de> |
1197 | ||
1198 | PR fortran/95373 | |
1199 | * primary.c (is_inquiry_ref): Move validity check of inquiry | |
1200 | references against selected Fortran standard from here... | |
1201 | (gfc_match_varspec) ...to here. | |
1202 | ||
1203 | 2020-05-30 Harald Anlauf <anlauf@gmx.de> | |
1204 | ||
1205 | PR fortran/95090 | |
1206 | * class.c (get_unique_type_string): Use buffer overrun check. | |
1207 | ||
885ef72f GA |
1208 | 2020-05-29 Harald Anlauf <anlauf@gmx.de> |
1209 | ||
1210 | PR fortran/95090 | |
1211 | * class.c (get_unique_type_string): Enlarge temporary for | |
1212 | name-mangling. Use strncpy to prevent buffer overrun. | |
1213 | (get_unique_hashed_string): Enlarge temporary. | |
1214 | (gfc_hash_value): Enlarge temporary for name-mangling. | |
1215 | ||
53ffb43a GA |
1216 | 2020-05-28 Harald Anlauf <anlauf@gmx.de> |
1217 | ||
1218 | PR fortran/95373 | |
1219 | * primary.c (is_inquiry_ref): Check validity of inquiry | |
1220 | references against selected Fortran standard. | |
1221 | ||
1222 | 2020-05-28 Steven G. Kargl <kargl@gcc.gnu.org> | |
1223 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
1224 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
1225 | ||
1226 | PR fortran/94397 | |
1227 | * match.c (gfc_match_type_spec): New variable ok initialised | |
1228 | to true. Set ok with the return value of gfc_reduce_init_expr | |
1229 | called only if the expression is not EXPR_CONSTANT and is not | |
1230 | EXPR_VARIABLE. Add !ok to the check for type not being integer | |
1231 | or the rank being greater than zero. | |
1232 | ||
61f3b605 GA |
1233 | 2020-05-27 Harald Anlauf <anlauf@gmx.de> |
1234 | ||
1235 | PR fortran/95090 | |
1236 | * iresolve.c (gfc_get_string): Enlarge temporary for | |
1237 | name-mangling. | |
1238 | ||
1239 | 2020-05-27 Tobias Burnus <tobias@codesourcery.com> | |
1240 | Mark Eggleston <markeggleston@gnu.gcc.org> | |
1241 | ||
1242 | PR fortran/50392 | |
1243 | * trans-decl.c (gfc_get_symbol_decl): Remove unnecessary block | |
1244 | delimiters. Add auxiliary variables if a label is assigned to | |
1245 | a return variable. (gfc_gat_fake_result): If the symbol has an | |
1246 | assign attribute set declaration from the symbol's backend | |
1247 | declaration. | |
1248 | ||
c3a4169b GA |
1249 | 2020-05-26 Harald Anlauf <anlauf@gmx.de> |
1250 | ||
1251 | PR fortran/95089 | |
1252 | * trans-types.c (gfc_get_derived_type): Enlarge temporary to hold | |
1253 | mangled name "_caf_symbol". | |
1254 | ||
1255 | 2020-05-26 Alexandre Oliva <oliva@adacore.com> | |
1256 | ||
1257 | * options.c (gfc_get_option_string): Drop auxbase, add | |
1258 | dumpbase_ext. | |
1259 | ||
d176184d HA |
1260 | 2020-05-24 Harald Anlauf <anlauf@gmx.de> |
1261 | ||
1262 | PR fortran/95106 | |
1263 | * trans-common.c (gfc_sym_mangled_common_id): Enlarge temporaries | |
1264 | for name-mangling. | |
1265 | ||
8df7ee67 TK |
1266 | 2020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org> |
1267 | ||
1268 | PR libfortran/95191 | |
1269 | * libgfortran.h (libgfortran_error_codes): Add | |
1270 | LIBERROR_BAD_WAIT_ID. | |
1271 | ||
eb069ae8 ME |
1272 | 2020-05-20 Mark Eggleston <markeggleston@gcc.gnu.org> |
1273 | ||
1274 | PR fortran/39695 | |
1275 | * resolve.c (resolve_fl_procedure): Set name depending on | |
1276 | whether the result attribute is set. For PROCEDURE/RESULT | |
1277 | conflict use the name in sym->ns->proc_name->name. | |
1278 | * symbol.c (gfc_add_type): Add check for function and result | |
1279 | attributes use sym->ns->proc_name->name if both are set. | |
1280 | Where the symbol cannot have a type use the name in | |
1281 | sym->ns->proc_name->name. | |
1282 | ||
e5abd1cb HA |
1283 | 2020-05-18 Harald Anlauf <anlauf@gmx.de> |
1284 | ||
1285 | PR fortran/95053 | |
1286 | * arith.c (gfc_divide): Revert hunk introduced by patch for | |
1287 | PR93499. | |
1288 | * decl.c (variable_decl): Generate error for array shape not being | |
1289 | an INTEGER constant. | |
1290 | (gfc_get_pdt_instance): Generate error if KIND or LEN expressions | |
1291 | in declaration of a PDT instance do not simplify to INTEGER | |
1292 | constants. | |
1293 | ||
0ec52417 TB |
1294 | 2020-05-15 Tobias Burnus <tobias@codesourcery.com> |
1295 | ||
1296 | PR fortran/94690 | |
1297 | * openmp.c (resolve_omp_do): Permit more clauses for SIMD | |
1298 | iteration variables. | |
1299 | ||
49ddde69 JJ |
1300 | 2020-05-14 Jakub Jelinek <jakub@redhat.com> |
1301 | ||
1302 | * trans-openmp.c: Include function.h. | |
1303 | (gfc_trans_omp_target): Set cfun->has_omp_target. | |
1304 | ||
f9f98e59 ME |
1305 | 2020-05-13 Steven G. Kargl <kargl@gcc.gnu.org> |
1306 | ||
1307 | PR fortran/93497 | |
1308 | * decl.c (char_len_param_value): Check whether character | |
1309 | length expression is of type EXPR_OP and if so simplify it. | |
1310 | * resolve.c (resolve_charlen): Reject length if it has a | |
1311 | rank. | |
1312 | ||
f884bef2 TB |
1313 | 2020-05-13 Tobias Burnus <tobias@codesourcery.com> |
1314 | ||
1315 | PR fortran/94690 | |
1316 | * openmp.c (OMP_DISTRIBUTE_CLAUSES): Add OMP_CLAUSE_LASTPRIVATE. | |
1317 | (gfc_resolve_do_iterator): Skip the private handling for SIMD as | |
1318 | that is handled by ME code. | |
1319 | * trans-openmp.c (gfc_trans_omp_do): Don't add private/lastprivate | |
1320 | for dovar_found == 0, unless !simple. | |
1321 | ||
1422c2e4 HA |
1322 | 2020-05-11 Harald Anlauf <anlauf@gmx.de> |
1323 | ||
1324 | PR fortran/95053 | |
1325 | * arith.c (gfc_divide): Do not error out if operand 2 is | |
1326 | non-numeric. Defer checks to later stage. | |
1327 | ||
892c7427 TB |
1328 | 2020-05-11 Tobias Burnus <tobias@codesourcery.com> |
1329 | ||
1330 | PR fortran/94672 | |
1331 | * trans.h (gfc_conv_expr_present): Add use_saved_decl=false argument. | |
1332 | * trans-expr.c (gfc_conv_expr_present): Likewise; use DECL directly | |
1333 | and only if use_saved_decl is true, use the actual PARAM_DECL arg (saved | |
1334 | descriptor). | |
1335 | * trans-array.c (gfc_trans_dummy_array_bias): Set local 'arg.0' | |
1336 | variable to NULL if 'arg' is not present. | |
1337 | * trans-openmp.c (gfc_omp_check_optional_argument): Simplify by checking | |
1338 | 'arg.0' instead of the true PARM_DECL. | |
1339 | (gfc_omp_finish_clause): Remove setting 'arg.0' to NULL. | |
1340 | ||
dbeaa7ab ME |
1341 | 2020-05-11 Janus Weil <janus@gcc.gnu.org> |
1342 | Dominique d'Humieres <dominiq@lps.ens.fr> | |
892c7427 | 1343 | |
dbeaa7ab ME |
1344 | PR fortran/59107 |
1345 | * gfortran.h: Rename field resolved as resolve_symbol_called | |
1346 | and assign two 2 bits instead of 1. | |
1347 | * interface.c (check_dtio_interface1): Use new field name. | |
1348 | (gfc_find_typebound_dtio_proc): Use new field name. | |
1349 | * resolve.c (gfc_resolve_intrinsic): Replace check of the formal | |
1350 | field with resolve_symbol_called is at least 2, if it is not | |
1351 | set the field to 2. (resolve_typebound_procedure): Use new field | |
1352 | name. (resolve_symbol): Use new field name and check whether it | |
1353 | is at least 1, if it is not set the field to 1. | |
1354 | ||
92ed8236 HA |
1355 | 2020-05-10 Harald Anlauf <anlauf@gmx.de> |
1356 | ||
1357 | PR fortran/93499 | |
1358 | * arith.c (gfc_divide): Catch division by zero. | |
1359 | (eval_intrinsic_f3): Safeguard for NULL operands. | |
1360 | ||
5a26ea7e HA |
1361 | 2020-05-05 Steve Kargl <kargl@gcc.gnu.org> |
1362 | Harald Anlauf <anlauf@gmx.de> | |
1363 | ||
1364 | PR fortran/93366 | |
1365 | * check.c (gfc_check_associated, invalid_null_arg): Factorize | |
1366 | check for presence of invalid NULL() argument. | |
1367 | (gfc_check_kind, gfc_check_merge, gfc_check_shape) | |
1368 | (gfc_check_sizeof, gfc_check_spread, gfc_check_transfer): Use this | |
1369 | check for presence of invalid NULL() arguments. | |
1370 | ||
27594524 SSF |
1371 | 2020-04-29 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
1372 | ||
1373 | PR fortran/94769 | |
1374 | * io.c (check_io_constraints): Initialize local variable num to | |
1375 | -1 and assert that it receives a meaningful value by function | |
1376 | compare_to_allowed_values. | |
1377 | ||
d8df7c40 TK |
1378 | 2020-04-27 Thomas Koenig <tkoenig@gcc.gnu.org> |
1379 | ||
1380 | PR fortran/93956 | |
1381 | PR fortran/94788 | |
1382 | * expr.c (gfc_check_pointer_assign): Revert patch for PR 93956. | |
1383 | * interface.c: Likewise. | |
1384 | ||
2bf7698e TK |
1385 | 2020-04-25 Thomas Koenig <tkoenig@gcc.gnu.org> |
1386 | ||
1387 | PR fortran/94578 | |
1388 | * trans-expr.c (arrayfunc_assign_needs_temporary): If the | |
1389 | LHS is a subref pointer, we also need a temporary. | |
1390 | ||
06eca1ac TK |
1391 | 2020-04-23 Thomas Koenig <tkoenig@gcc.gnu.org> |
1392 | ||
1393 | PR fortran/93956 | |
1394 | * expr.c (gfc_check_pointer_assign): Also set subref_array_pointer | |
1395 | when a function returns a pointer. | |
1396 | * interface.c (gfc_set_subref_array_pointer_arg): New function. | |
1397 | (gfc_procedure_use): Call it. | |
1398 | ||
e8eecc2a FR |
1399 | 2020-04-22 Fritz Reese <foreese@gcc.gnu.org> |
1400 | ||
1401 | * trigd_fe.inc: Use mpfr to compute cosd(30) rather than a host- | |
1402 | precision floating point literal based on an invalid macro. | |
1403 | ||
808a6ead JRFS |
1404 | 2020-04-22 José Rui Faustino de Sousa <jrfsousa@gmail.com> |
1405 | ||
1406 | PR fortran/90350 | |
1407 | * simplify.c (simplify_bound): In the case of assumed-size arrays | |
1408 | check if the reference is to a full array. | |
1409 | ||
4ea769a9 TB |
1410 | 2020-04-22 Tobias Burnus <tobias@codesourcery.com> |
1411 | ||
1412 | PR fortran/94709 | |
1413 | * scanner.c (load_line): In fixed form, also treat 'C' as comment and | |
1414 | 'D'/'d' only with -fd-lines-as-comments. Treat '!$' with -fopenmp, | |
1415 | '!$acc' with -fopenacc and '!GCC$' as non-comment to permit <tab> | |
1416 | and truncation warnings. | |
1417 | ||
0fe12b02 TK |
1418 | 2020-04-20 Thomas Koenig <tkoenig@gcc.gnu.org> |
1419 | ||
1420 | * dump-parse-tree.c (show_attr): Add numerous flags, some cleanup. | |
1421 | ||
aeb430aa HA |
1422 | 2020-04-20 Harald Anlauf <anlauf@gmx.de> |
1423 | ||
1424 | PR fortran/93364 | |
1425 | * array.c (gfc_set_array_spec): Check for sum of rank and corank | |
1426 | not exceeding GFC_MAX_DIMENSIONS. | |
1427 | ||
38acc41d SK |
1428 | 2020-04-20 Steve Kargl <kargl@gcc.gnu.org> |
1429 | Thomas Koenig <tkoenig@gcc.gnu.org> | |
1430 | ||
1431 | PR fortran/91800 | |
1432 | * decl.c (variable_decl): Reject Hollerith constants as type | |
1433 | initializer. | |
1434 | ||
4dc64371 TK |
1435 | 2020-04-19 Thomas Koenig <tkoenig@gcc.gnu.org> |
1436 | ||
1437 | PR fortran/93500 | |
1438 | * resolve.c (resolve_operator): If both operands are | |
1439 | NULL, return false. | |
1440 | * simplify.c (simplify_bound): If a division by zero | |
1441 | was seen during bound simplification, free the | |
1442 | corresponcing expression and return &gfc_bad_expr. | |
1443 | ||
2298af08 TK |
1444 | 2020-04-17 Thomas Koenig <tkoenig@gcc.gnu.org> |
1445 | ||
1446 | PR fortran/94090 | |
1447 | * gfortran.dg (gfc_compare_interfaces): Add | |
1448 | optional argument bad_result_characteristics. | |
1449 | * interface.c (gfc_check_result_characteristics): Fix | |
1450 | whitespace. | |
1451 | (gfc_compare_interfaces): Handle new argument; return | |
1452 | true if function return values are wrong. | |
1453 | * resolve.c (resolve_global_procedure): Hard error if | |
1454 | the return value of a function is wrong. | |
1455 | ||
49795733 FR |
1456 | 2020-04-15 Fritz Reese <foreese@gcc.gnu.org> |
1457 | Linus Koenig <link@sig-st.de> | |
1458 | ||
1459 | PR fortran/94192 | |
1460 | * simplify.c (simplify_bound): Simplify condition for error check. | |
1461 | ||
36c3edb1 TB |
1462 | 2020-04-14 Tobias Burnus <tobias@codesourcery.com> |
1463 | ||
1464 | * module.c (gfc_match_use): Fix name-conflict check for use-associating | |
1465 | the same symbol again in a submodule. | |
1466 | ||
efbf7392 LK |
1467 | 2020-04-13 Linus Koenig <link@sig-st.de> |
1468 | ||
1469 | PR fortran/94192 | |
1470 | * resolve.c (resolve_fl_var_and_proc): Set flag "error" to 1 if | |
1471 | pointer is found to not have an assumed rank or a deferred shape. | |
1472 | * simplify.c (simplify_bound): If an error has been issued for a | |
1473 | given pointer, one should not attempt to find its bounds. | |
1474 | ||
44facdb7 FR |
1475 | 2020-04-09 Fritz Reese <foreese@gcc.gnu.org> |
1476 | ||
1477 | PR fortran/87923 | |
1478 | * gfortran.h (gfc_resolve_open, gfc_resolve_close): Add | |
1479 | locus parameter. | |
1480 | (gfc_resolve_dt): Add code parameter. | |
1481 | * io.c (async_io_dt, check_char_variable, is_char_type): Removed. | |
1482 | (resolve_tag_format): Add locus to error message regarding | |
1483 | zero-sized array in FORMAT tag. | |
1484 | (check_open_constraints, check_close_constraints): New functions | |
1485 | called at resolution time. | |
1486 | (gfc_match_open, gfc_match_close, match_io): Move checks which don't | |
1487 | affect the match result to new functions check_open_constraints, | |
1488 | check_close_constraints, check_io_constraints. | |
1489 | (gfc_resolve_open, gfc_resolve_close): Call new functions | |
1490 | check_open_constraints, check_close_constraints after all tags have | |
1491 | been independently resolved. Remove duplicate constraints which are | |
1492 | already verified by resolve_tag. Explicitly pass locus to all error | |
1493 | reports. | |
1494 | (compare_to_allowed_values): Add locus parameter and provide | |
1495 | explicit locus all error reports. | |
1496 | (match_open_element, match_close_element, match_file_element, | |
1497 | match_dt_element, match_inquire_element): Remove redundant special | |
1498 | cases for ASYNCHRONOUS and IOMSG tags. | |
1499 | (gfc_resolve_dt): Remove redundant special case for format | |
1500 | expression. Call check_io_constraints, forwarding an I/O list as | |
1501 | the io_code parameter if present. | |
1502 | (check_io_constraints): Change return type to bool. Pass explicit | |
1503 | locus to error reports. Move generic checks after tag-specific | |
1504 | checks, since errors are no longer buffered. Move simplification of | |
1505 | format string to match_io. Remove redundant checks which are | |
1506 | verified by resolve_tag. Remove usage of async_io_dt flag and | |
1507 | explicitly mark symbols used in asynchronous I/O with the | |
1508 | asynchronous attribute. | |
1509 | * resolve.c (resolve_transfer, resolve_fl_namelist): Remove checks | |
1510 | for async_io_dt flag. This is now done in io.c. | |
1511 | (check_io_constraints). | |
1512 | (gfc_resolve_code): Pass code locus to gfc_resolve_open, | |
1513 | gfc_resolve_close, gfc_resolve_dt. | |
1514 | ||
57391dda FR |
1515 | 2020-04-07 Fritz Reese <foreese@gcc.gnu.org> |
1516 | Steven G. Kargl <kargl@gcc.gnu.org> | |
1517 | ||
1518 | PR fortran/93871 | |
1519 | * gfortran.h (GFC_ISYM_ACOSD, GFC_ISYM_ASIND, GFC_ISYM_ATAN2D, | |
1520 | GFC_ISYM_ATAND, GFC_ISYM_COSD, GFC_ISYM_COTAND, GFC_ISYM_SIND, | |
1521 | GFC_ISYM_TAND): New. | |
1522 | * intrinsic.c (add_functions): Remove check for flag_dec_math. | |
1523 | Give degree trig functions simplification and name resolution | |
1524 | functions (e.g, gfc_simplify_atrigd () and gfc_resolve_atrigd ()). | |
1525 | (do_simplify): Remove special casing of degree trig functions. | |
1526 | * intrinsic.h (gfc_simplify_acosd, gfc_simplify_asind, | |
1527 | gfc_simplify_atand, gfc_simplify_cosd, gfc_simplify_cotand, | |
1528 | gfc_simplify_sind, gfc_simplify_tand, gfc_resolve_trigd2): Add new | |
1529 | prototypes. | |
1530 | (gfc_simplify_atrigd, gfc_simplify_trigd, gfc_resolve_cotan, | |
1531 | resolve_atrigd): Remove prototypes of deleted functions. | |
1532 | * iresolve.c (is_trig_resolved, copy_replace_function_shallow, | |
1533 | gfc_resolve_cotan, get_radians, get_degrees, resolve_trig_call, | |
1534 | gfc_resolve_atrigd, gfc_resolve_atan2d): Delete functions. | |
1535 | (gfc_resolve_trigd, gfc_resolve_trigd2): Resolve to library functions. | |
1536 | * simplify.c (rad2deg, deg2rad, gfc_simplify_acosd, gfc_simplify_asind, | |
1537 | gfc_simplify_atand, gfc_simplify_atan2d, gfc_simplify_cosd, | |
1538 | gfc_simplify_sind, gfc_simplify_tand, gfc_simplify_cotand): New | |
1539 | functions. | |
1540 | (gfc_simplify_atan2): Fix error message. | |
1541 | (simplify_trig_call, gfc_simplify_trigd, gfc_simplify_atrigd, | |
1542 | radians_f): Delete functions. | |
1543 | * trans-intrinsic.c: Add LIB_FUNCTION decls for sind, cosd, tand. | |
1544 | (rad2deg, gfc_conv_intrinsic_atrigd, gfc_conv_intrinsic_cotan, | |
1545 | gfc_conv_intrinsic_cotand, gfc_conv_intrinsic_atan2d): New functions. | |
1546 | (gfc_conv_intrinsic_function): Handle ACOSD, ASIND, ATAND, COTAN, | |
1547 | COTAND, ATAN2D. | |
1548 | * trigd_fe.inc: New file. Included by simplify.c to implement | |
1549 | simplify_sind, simplify_cosd, simplify_tand with code common to the | |
1550 | libgfortran implementation. | |
1551 | ||
d42a2e46 FR |
1552 | 2020-04-06 Steven G. Kargl <kargl@gcc.gnu.org> |
1553 | ||
1554 | PR fortran/93686 | |
1555 | * decl.c (gfc_match_data): Handle data matching for derived type | |
1556 | pointers. | |
1557 | ||
3ab216a4 TB |
1558 | 2020-04-02 Tobias Burnus <tobias@codesourcery.com> |
1559 | ||
1560 | * gfortran.h (gfc_resolve_formal_arglist): Add prototype. | |
1561 | * interface.c (check_dtio_interface1): Call it. | |
1562 | * resolve.c (gfc_resolve_formal_arglist): Renamed from | |
1563 | resolve_formal_arglist, removed static. | |
1564 | (find_arglists, resolve_types): Update calls. | |
1565 | ||
224efaf7 TB |
1566 | 2020-04-02 Tobias Burnus <tobias@codesourcery.com> |
1567 | ||
1568 | PR fortran/93522 | |
1569 | * match.c (gfc_match_select_rank): Fix error cleanup. | |
1570 | ||
2c54eab5 ME |
1571 | 2020-04-02 Steven G. Kargl <kargl@gcc.gnu.org> |
1572 | ||
1573 | PR fortran/93498 | |
1574 | * check.c (gfc_check_findloc): If the kinds of the arguments | |
1575 | differ goto label "incompat". | |
1576 | ||
bf1f6d88 ME |
1577 | 2020-04-02 Steven G. Kargl <kargl@gcc.gnu.org> |
1578 | ||
1579 | PR fortran/94030 | |
1580 | * resolve.c (resolve_equivalence): Correct formatting | |
1581 | around the label "identical_types". Instead of using | |
1582 | gfc_resolve_array_spec use is_non_constants_shape_array | |
1583 | to determine whether the array can be used in a in an | |
1584 | equivalence statement. | |
1585 | ||
0c9a8a8c ME |
1586 | 2020-04-01 Mark Eggleston <mark.eggleston@codethink.com> |
1587 | ||
1588 | PR fortran/94386 | |
1589 | expr.c (simplify_parameter_variable): Restore code deleted | |
1590 | in PR94246. | |
1591 | ||
7d57570b PT |
1592 | 2020-03-28 Paul Thomas <pault@gcc.gnu.org> |
1593 | ||
1594 | PR fortran/94246 | |
1595 | * arith.c : Remove trailing white space. | |
1596 | * expr.c (scalarize_intrinsic_call): Remove the error checking. | |
1597 | Make a copy of the expression to be simplified and only replace | |
1598 | the original if the simplification succeeds. | |
1599 | ||
3fb7f2fb TB |
1600 | 2020-03-28 Tobias Burnus <tobias@codesourcery.com> |
1601 | ||
1602 | PR fortran/94348 | |
1603 | * decl.c (gfc_match_submod_proc): Add result var to the | |
1604 | proc's namespace. | |
1605 | ||
62ede14d TB |
1606 | 2020-03-27 Tobias Burnus <tobias@codesourcery.com> |
1607 | ||
1608 | PR fortran/93957 | |
1609 | * trans-array.c (gfc_alloc_allocatable_for_assignment): Accept | |
1610 | nonallocatable, nonpointer deferred-rank arrays. | |
1611 | ||
a76ff304 TB |
1612 | 2020-03-27 Tobias Burnus <tobias@codesourcery.com> |
1613 | ||
1614 | PR fortran/93363 | |
1615 | * resolve.c (resolve_assoc_var): Reject association to DT and | |
1616 | function name. | |
1617 | ||
c38daa79 ME |
1618 | 2020-03-25 Steven G. Kargl <kargl@gcc.gnu.org> |
1619 | ||
1620 | PR fortran/93484 | |
1621 | * match.c (gfc_match_type_spec): Replace gfc_match_init_expr with | |
1622 | gfc_match_expr. Return m if m is MATCH_NO or MATCH_ERROR. | |
1623 | ||
b0d84ecc ME |
1624 | 2020-03-23 Mark Eggleston <mark.eggleston@codethink.com> |
1625 | Steven G. Kargl <kargl@gcc.gnu.org> | |
1626 | ||
1627 | PR fortran/93600 | |
1628 | * expr.c (simplify_parameter_variable): Check whether the ref | |
1629 | chain contains INQUIRY_LEN or INQUIRY_KIND and set inquiry | |
1630 | boolean. When an empty array has been identified and a new | |
1631 | new EXPR_ARRAY expression has been created only return that | |
1632 | expression if inquiry is not set. This allows the new | |
1633 | expression to drop through to be simplified into a | |
1634 | EXPR_CONSTANT representing %kind or %len. | |
1635 | * matc.c (gfc_match_assignment): If lvalue doesn't have a | |
1636 | symtree free both lvalue and rvalue expressions and return | |
1637 | an error. | |
1638 | * resolv.c (gfc_resolve_ref): Ensure that code to handle | |
1639 | INQUIRY_LEN is only performed for arrays with deferred types. | |
1640 | ||
d5029d45 JJ |
1641 | 2020-03-18 Jakub Jelinek <jakub@redhat.com> |
1642 | ||
1643 | * class.c (generate_finalization_wrapper): Fix up duplicated word | |
1644 | issue in a comment. | |
1645 | * trans-types.c (gfc_get_nodesc_array_type): Likewise. | |
1646 | ||
700d4cb0 JJ |
1647 | 2020-03-17 Jakub Jelinek <jakub@redhat.com> |
1648 | ||
1649 | * array.c (gfc_check_iter_variable): Fix up duplicated word issue | |
1650 | in a comment. | |
1651 | * arith.c (gfc_arith_concat): Likewise. | |
1652 | * resolve.c (gfc_resolve_ref): Likewise. | |
1653 | * frontend-passes.c (matmul_lhs_realloc): Likewise. | |
1654 | * module.c (gfc_match_submodule, load_needed): Likewise. | |
1655 | * trans-expr.c (gfc_init_se): Likewise. | |
1656 | ||
b408e010 LH |
1657 | 2020-03-15 Lewis Hyatt <lhyatt@gmail.com> |
1658 | ||
1659 | * lang.opt: Avoid redundancy in the help text. | |
1660 | ||
98aeb1ef TB |
1661 | 2020-03-12 Tobias Burnus <tobias@codesourcery.com> |
1662 | ||
1663 | PR middle-end/94120 | |
1664 | * openmp.c (gfc_match_oacc_declare): Accept function-result | |
1665 | variables; reject variables declared in a different scoping unit. | |
1666 | ||
9de42a8e PT |
1667 | 2020-03-08 Paul Thomas <pault@gcc.gnu.org> |
1668 | ||
1669 | PR fortran/93581 | |
1670 | * resolve.c (gfc_resolve_ref): Modify array refs to be elements | |
1671 | if the ref chain ends in INQUIRY_LEN. | |
1672 | * trans-array.c (gfc_get_dataptr_offset): Provide the offsets | |
1673 | for INQUIRY_RE and INQUIRY_IM. | |
1674 | ||
a2ec7c4a SK |
1675 | 2020-03-05 Steven G. Kargl <kargl@gcc.gnu.org> |
1676 | ||
1677 | PR fortran/93792 | |
1678 | * decl.c (variable_decl): If param and initializer check | |
1679 | for BOZ, if found, output an error, set m to MATCH_ERROR | |
1680 | and goto cleanup. | |
1681 | ||
f3c276ae AB |
1682 | 2020-03-02 Andrew Benson <abensonca@gmail.com> |
1683 | ||
1684 | PR fortran/93486 | |
1685 | * module.c: Increase size of variables used to read module names | |
1686 | when loading interfaces from module files to permit cases where | |
1687 | the name is the concatenation of a module and submodule name. | |
1688 | * gfortran.dg/pr93486.f90: New test. | |
1689 | ||
957a1b14 PT |
1690 | 2020-03-01 Paul Thomas <pault@gcc.gnu.org> |
1691 | ||
1692 | PR fortran/92976 | |
1693 | * match.c (select_type_set_tmp): If the selector array spec has | |
1694 | explicit bounds, make the temporary's bounds deferred. | |
1695 | ||
12caab4f PT |
1696 | 2020-03-01 Paul Thomas <pault@gcc.gnu.org> |
1697 | ||
1698 | PR fortran/92959 | |
1699 | * trans-intrinsic.c (gfc_conv_associated): Eliminate | |
1700 | 'nonzero_charlen' and move the chunk to evaluate zero character | |
1701 | length until after the argument evaluation so that the string | |
1702 | length can be used. | |
1703 | ||
7485ace8 PT |
1704 | 2020-02-28 Paul Thomas <pault@gcc.gnu.org> |
1705 | ||
1706 | PR fortran/92785 | |
1707 | * trans-expr.c (gfc_conv_intrinsic_to_class): Renormalise non- | |
1708 | variable expressions to be unity lbound based. | |
1709 | ||
fe86f537 SK |
1710 | 2020-02-25 Steven G. Kargl <kargl@gcc.gnu.org> |
1711 | ||
1712 | * simplify.c (degrees_f): Remove unused code. | |
1713 | ||
71837f64 JJ |
1714 | 2020-02-25 Jakub Jelinek <jakub@redhat.com> |
1715 | ||
1716 | PR translation/93864 | |
1717 | * intrinsic.texi (CO_BROADCAST): Fix typo, paramter -> parameter. | |
1718 | * trans-array.c (gfc_allocate_pdt_comp, gfc_deallocate_pdt_comp, | |
1719 | gfc_check_pdt_dummy): Fix comment typo paramter -> parameter. | |
1720 | ||
27bf39a8 | 1721 | 2020-02-24 Mark Eggleston <mark.eggleston@codethink.com> |
71837f64 | 1722 | Steven G. Kargl <kargl@gcc.gnu.org> |
27bf39a8 ME |
1723 | |
1724 | PR fortran/93835 | |
1725 | * decl.c (gfc_match_data) : Check whether the data expression | |
1726 | is a derived type and is a constructor. If a BOZ constant | |
1727 | is encountered in the constructor output an error and return | |
1728 | MATCH_ERROR. | |
1729 | ||
c77b6f95 ME |
1730 | 2020-02-24 Steven G. Kargl <kargl@gcc.gnu.org> |
1731 | ||
1732 | PR fortran/93604 | |
1733 | * decl.c (gfc_match_data) : Check whether the data expression | |
1734 | is a derived type and is a constructor. If a BOZ constant | |
1735 | is encountered in the constructor output an error and return | |
1736 | MATCH_ERROR. | |
1737 | ||
2bd8c3ff TB |
1738 | 2020-02-24 Tobias Burnus <tobias@codesourcery.com> |
1739 | ||
1740 | PR fortran/93552 | |
1741 | * match.c (match_exit_cycle): With OpenACC, check the kernels loop | |
1742 | directive and tile clause as well. | |
1743 | ||
92e8508e TK |
1744 | 2020-02-23 Thomas Koenig <tkoenig@gcc.gnu.org> |
1745 | ||
1746 | PR fortran/93889 | |
1747 | * interface.c (compare_parameter): Fix error message. | |
1748 | ||
7260547d TK |
1749 | 2020-02-23 Thomas Koenig <tkoenig@gcc.gnu.org> |
1750 | ||
1751 | PR fortran/93890 | |
1752 | * interface.c: Replace "can not" by "cannot" and remove trailing | |
1753 | space. | |
1754 | ||
2c52b288 TB |
1755 | 2020-02-20 Tobias Burnus <tobias@codesourcery.com> |
1756 | ||
1757 | PR fortran/93825 | |
1758 | * openmp.c (resolve_oacc_loop_blocks): Move call to | |
1759 | resolve_oacc_nested_loops from here ... | |
1760 | (resolve_oacc_loop): ... to here. | |
1761 | ||
06119d69 ME |
1762 | 2020-02-18 Mark Eggleston <markeggleston@gcc.gnu.org> |
1763 | ||
1764 | PR fortran/93714 | |
1765 | * expr.c (gfc_check_pointer_assign): Move check for | |
1766 | matching character length to after checking the lvalue | |
1767 | attributes for target or pointer. | |
1768 | ||
23d3f25c ME |
1769 | 2020-02-18 Steven G. Kargl <kargl@gcc.gnu.org> |
1770 | ||
1771 | PR fortran/93601 | |
1772 | * match.c (gfc_match_assignment) : Reject assignment if | |
1773 | the lhs stype is BT_CLASS and the rhs type is BT_BOZ. | |
1774 | ||
8f55a0ee ME |
1775 | 2020-02-18 Steven G. Kargl <kargl@gcc.gnu.org> |
1776 | ||
1777 | PR fortran/93603 | |
1778 | * match.c (gfc_match_associate) : If target expression | |
1779 | has the type BT_BOZ output an error and goto | |
1780 | assocListError. | |
1781 | ||
d4c10c9f ME |
1782 | 2020-02-18 Steven G. Kargl <kargl@gcc.gnu.org> |
1783 | Mark Eggleston <markeggleston@gcc.gnu.org> | |
1784 | ||
1785 | PR fortran/93580 | |
1786 | * primary.c (gfc_match_varspec): If the symbol following % | |
1787 | is re or im and the primary expression type is not BT_COMPLEX | |
1788 | issue an error. If the symbol is len and the primary | |
1789 | expression type is not BT_CHARACTER is an error. | |
1790 | ||
7848054c AB |
1791 | 2020-02-10 Andrew Benson <abensonca@gmail.com> |
1792 | ||
2c52b288 TB |
1793 | PR fortran/83113 |
1794 | * array.c: Do not attempt to set the array spec for a submodule | |
1795 | function symbol (as it has already been set in the corresponding | |
1796 | module procedure interface). | |
1797 | * symbol.c: Do not reject duplicate POINTER, ALLOCATABLE, or | |
1798 | DIMENSION attributes in declarations of a submodule function. | |
1799 | * gfortran.h: Add a macro that tests for a module procedure in a | |
1800 | submodule. | |
1801 | * gfortran.dg/pr83113.f90: New test. | |
7848054c | 1802 | |
e464fc90 TB |
1803 | 2020-02-03 Julian Brown <julian@codesourcery.com> |
1804 | Tobias Burnus <tobias@codesourcery.com> | |
1805 | ||
1806 | * cpp.c (cpp_define_builtins): Update _OPENACC define to 201711. | |
1807 | * intrinsic.texi: Update mentions of OpenACC version to 2.6. | |
1808 | * gfortran.texi: Likewise. Remove experimental disclamer for OpenACC. | |
1809 | * invoke.texi: Remove experimental disclamer for OpenACC. | |
1810 | ||
7c8e1f92 TB |
1811 | 2020-02-03 Tobias Burnus <tobias@codesourcery.com> |
1812 | ||
1813 | PR fortran/93541 | |
1814 | * intrinisic.texi (OpenMP Modules OMP_LIB and OMP_LIB_KINDS): | |
1815 | Add undocumented parameters from omp_lib.f90.in. | |
1816 | ||
ae86ede8 TB |
1817 | 2020-02-03 Tobias Burnus <tobias@codesourcery.com> |
1818 | ||
1819 | PR fortran/93427 | |
1820 | * resolve.c (resolve_assoc_var): Remove too strict check. | |
1821 | * gfortran.dg/associate_51.f90: Update test case. | |
1822 | ||
add31061 JJ |
1823 | 2020-02-01 Jakub Jelinek <jakub@redhat.com> |
1824 | ||
1825 | PR fortran/92305 | |
1826 | * trans-types.c (gfc_get_function_type): Also push boolean_type_node | |
1827 | types for non-character scalar VALUE optional dummy arguments. | |
1828 | * trans-decl.c (create_function_arglist): Skip those in | |
1829 | hidden_typelist. Formatting fix. | |
1830 | ||
6a97d9ea TB |
1831 | 2020-01-31 Tobias Burnus <tobias@codesourcery.com> |
1832 | ||
1833 | PR fortran/93462 | |
1834 | * frontend-passes.c (gfc_code_walker): For EXEC_OACC_ATOMIC, set | |
1835 | in_omp_atomic to true prevent front-end optimization. | |
1836 | ||
004ac7b7 AB |
1837 | 2020-01-30 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
1838 | ||
1839 | PR fortran/87103 | |
1840 | * expr.c (gfc_check_conformance): Check vsnprintf for truncation. | |
1841 | * iresolve.c (gfc_get_string): Likewise. | |
1842 | * symbol.c (gfc_new_symbol): Remove check for maximum symbol | |
1843 | name length. Remove redundant 0 setting of new calloc()ed | |
1844 | gfc_symbol. | |
1845 | ||
2595f25c JJ |
1846 | 2020-01-30 Paul Thomas <pault@gcc.gnu.org> |
1847 | Jakub Jelinek <jakub@redhat.com> | |
1848 | ||
1849 | PR fortran/92123 | |
1850 | * trans-decl.c (gfc_get_symbol_decl): Call gfc_defer_symbol_init for | |
1851 | CFI descs. | |
1852 | (gfc_build_builtin_function_decls): Use ".w." instead of ".ww" or ".wR" | |
1853 | for gfor_fndecl_{cfi_to_gfc,gfc_to_cfi}. | |
1854 | (convert_CFI_desc): Handle references to CFI descriptors. | |
1855 | ||
aa1b5696 JJ |
1856 | 2020-01-29 Jakub Jelinek <jakub@redhat.com> |
1857 | ||
1858 | PR fortran/93463 | |
1859 | * openmp.c (oacc_code_to_statement): Handle | |
1860 | EXEC_OACC_{ROUTINE,UPDATE,WAIT,CACHE,{ENTER,EXIT}_DATA,DECLARE}. | |
1861 | ||
ad690d79 AB |
1862 | 2020-01-28 Andrew Benson <abensonca@gmail.com> |
1863 | ||
6a97d9ea TB |
1864 | PR fortran/93461 |
1865 | * trans.h: Increase GFC_MAX_MANGLED_SYMBOL_LEN to | |
1866 | GFC_MAX_SYMBOL_LEN*3+5 to allow for inclusion of submodule name, | |
1867 | plus the "." between module and submodule names. | |
1868 | * gfortran.dg/pr93461.f90: New test. | |
ad690d79 | 1869 | |
a83b5cc5 AB |
1870 | 2020-01-28 Andrew Benson <abensonca@gmail.com> |
1871 | ||
1872 | PR fortran/93473 | |
1873 | * parse.c: Increase length of char variables to allow them to hold | |
1874 | a concatenated module + submodule name. | |
1875 | * gfortran.dg/pr93473.f90: New test. | |
1876 | ||
a5ed4958 JB |
1877 | 2020-01-28 Julian Brown <julian@codesourcery.com> |
1878 | ||
1879 | PR fortran/93025 | |
1880 | * openmp.c (resolve_omp_clauses): Check array references for contiguity. | |
1881 | ||
278c3214 JB |
1882 | 2020-01-28 Julian Brown <julian@codesourcery.com> |
1883 | ||
1884 | * gfortran.h (gfc_symbol): Add comp_mark bitfield. | |
1885 | * openmp.c (resolve_omp_clauses): Disallow mixed component and | |
1886 | full-derived-type accesses to the same variable within a single | |
1887 | directive. | |
1888 | ||
627d59b6 TB |
1889 | 2020-01-28 Tobias Burnus <tobias@codesourcery.com> |
1890 | ||
1891 | PR fortran/93464 | |
1892 | * openmp.c (gfc_omp_check_optional_argument): Avoid ICE when | |
1893 | DECL_LANG_SPECIFIC and GFC_DESCRIPTOR_TYPE_P but not | |
1894 | GFC_DECL_SAVED_DESCRIPTOR as for local allocatable character vars. | |
1895 | ||
4593f605 TB |
1896 | 2020-01-28 Tobias Burnus <tobias@codesourcery.com> |
1897 | ||
1898 | * gfortran.texi (Runtime): Remove tailing '.' in @menu. | |
1899 | ||
86075aa5 TB |
1900 | 2020-01-27 Tobias Burnus <tobias@codesourcery.com> |
1901 | ||
1902 | PR fortran/85781 | |
1903 | * trans-expr.c (gfc_conv_substring): Handle non-ARRAY_TYPE strings | |
1904 | of Bind(C) procedures. | |
1905 | ||
a38979d9 JJ |
1906 | 2020-01-22 Jakub Jelinek <jakub@redhat.com> |
1907 | ||
44a9d801 JJ |
1908 | * parse.c (parse_omp_structured_block): Handle ST_OMP_TARGET_PARALLEL. |
1909 | * trans-openmp.c (gfc_trans_omp_target) | |
1910 | <case EXEC_OMP_TARGET_PARALLEL>: Call pushlevel first. | |
1911 | ||
a38979d9 JJ |
1912 | PR fortran/93329 |
1913 | * openmp.c (omp_code_to_statement): Handle remaining EXEC_OMP_* | |
1914 | cases. | |
1915 | ||
b31f8023 TB |
1916 | 2020-01-21 Tobias Burnus <tobias@codesourcery.com> |
1917 | ||
1918 | PR fortran/93309 | |
1919 | * interface.c (gfc_procedure_use): Also check parent namespace for | |
1920 | 'implict none (external)'. | |
1921 | * symbol.c (gfc_get_namespace): Don't set has_implicit_none_export | |
e464fc90 | 1922 | to parent namespace's setting. |
b31f8023 | 1923 | |
52354dad TK |
1924 | 2020-01-19 Thomas König <tkoenig@gcc.gnu.org> |
1925 | ||
1926 | PR fortran/44960 | |
1927 | * primary.c (gfc_match_rvalue): Break after setting MATCH_ERROR. | |
1928 | * resolve.c (resolve_function): Issue error when a | |
1929 | function call contains a reference. | |
1930 | ||
e4a5f734 ME |
1931 | 2020-01-17 Mark Eggleston <mark.eggleston@codethink.com> |
1932 | ||
1933 | PR fortran/93236 | |
1934 | * resolve.c (resolve_types): Declare boolean recursive and set with the | |
1935 | value of the recursive attribute of namespace proc_name symbol | |
1936 | structure if it exists. Call gfc_save_all if both flag_automatic and | |
1937 | recursive are false or ns->save_all is true. | |
1938 | ||
c35a3046 TB |
1939 | 2020-01-16 Tobias Burnus <tobias@codesourcery.com> |
1940 | ||
1941 | PR fortran/93253 | |
1942 | * check.c (gfc_invalid_boz): Mention -fallow-invalid-boz | |
1943 | in the error message. | |
1944 | * gfortran.texi (BOZ literal constants): List another missing | |
1945 | extension and refer to -fallow-invalid-boz. | |
1946 | * lang.opt (fallow-invalid-boz): Also mention 'X' in the help text | |
1947 | as it is not covered by the previous wording. | |
1948 | * primary.c (match_boz_constant): Tweak wording such that it is | |
1949 | clear how to fix the nonstandard use. | |
1950 | ||
d6360178 TK |
1951 | 2020-01-09 Thomas Koenig <tkoenig@gcc.gnu.org> |
1952 | ||
1953 | PR fortran/65428 | |
1954 | * array.c (empty_constructor): New variable. | |
1955 | (empty_ts): New variable. | |
1956 | (expand_constructor): Save typespec in empty_ts. | |
1957 | Unset empty_constructor if there is an element. | |
1958 | (gfc_expand_constructor): Initialize empty_constructor | |
1959 | and empty_ts. If there was no explicit constructor | |
1960 | type and the constructor is empty, take the type from | |
1961 | empty_ts. | |
1962 | ||
15df0040 TB |
1963 | 2020-01-09 Tobias Burnus <tobias@codesourcery.com> |
1964 | ||
1965 | PR fortran/84135 | |
1966 | * array.c (gfc_set_array_spec): Fix shifting of codimensions | |
1967 | when adding a dimension. | |
1968 | * decl.c (merge_array_spec): Ditto. Fix using correct codimensions. | |
1969 | ||
851817d8 JJ |
1970 | 2020-01-07 Jakub Jelinek <jakub@redhat.com> |
1971 | ||
1972 | PR fortran/93162 | |
1973 | * trans-openmp.c (gfc_trans_omp_clauses): Check for REF_ARRAY type | |
1974 | before testing u.ar.type == AR_FULL. | |
1975 | ||
9b962319 TB |
1976 | 2020-01-04 Tobias Burnus <tobias@codesourcery.com> |
1977 | ||
1978 | PR fortran/91640 | |
1979 | * trans-expr.c (gfc_conv_procedure_call): Avoid copy-out for nonvariable | |
1980 | arguments to contiguous dummy args. Avoid re-checking whether fsym is | |
1981 | NULL. | |
1982 | ||
f760c0c7 TB |
1983 | 2020-01-03 Tobias Burnus <tobias@codesourcery.com> |
1984 | ||
1985 | * trans-openmp.c (gfc_omp_check_optional_argument): Always return a | |
1986 | Boolean expression; handle unallocated/disassociated actual arguments | |
1987 | as absent if passed to nonallocatable/nonpointer dummy array arguments. | |
1988 | (gfc_build_cond_assign): Change to assume a Boolean expr not a pointer. | |
1989 | (gfc_omp_finish_clause, gfc_trans_omp_clauses): Assign NULL to generated | |
1990 | array-data variable if the argument is absent. Simplify code as | |
1991 | 'present' is now a Boolean expression. | |
1992 | ||
4d124378 TB |
1993 | 2020-01-03 Tobias Burnus <tobias@codesourcery.com> |
1994 | ||
1995 | PR fortran/92994 | |
1996 | * primary.c (gfc_match_rvalue): Add some flavor checks | |
1997 | gfc_matching_procptr_assignment. | |
1998 | * resolve.c (resolve_assoc_var): Add more checks for invalid targets. | |
1999 | ||
48e76d2f TB |
2000 | 2020-01-02 Tobias Burnus <tobias@codesourcery.com> |
2001 | ||
2002 | PR fortran/68020 | |
2003 | * array.c (gfc_match_array_spec): Fix implied-type matching | |
2004 | for rank > 2. | |
2005 | ||
ba4c5da7 TK |
2006 | 2020-01-01 Thomas Koenig <tkoenig@gcc.gnu.org> |
2007 | ||
2008 | PR fortran/93113 | |
2009 | * dependency.c (gfc_dep_resolver): Handle REF_INQUIRY in switch | |
2010 | for ref types. | |
2011 | ||
7e7065b9 | 2012 | 2020-01-01 Jakub Jelinek <jakub@redhat.com> |
a5544970 | 2013 | |
8d9254fc JJ |
2014 | Update copyright years. |
2015 | ||
65e6aea3 JJ |
2016 | * gfortranspec.c (lang_specific_driver): Update copyright notice |
2017 | dates. | |
2018 | * gfc-internals.texi: Bump @copying's copyright year. | |
2019 | * gfortran.texi: Ditto. | |
2020 | * intrinsic.texi: Ditto. | |
2021 | * invoke.texi: Ditto. | |
21fa2a29 | 2022 | \f |
7e7065b9 | 2023 | Copyright (C) 2020 Free Software Foundation, Inc. |
ad41bd84 JM |
2024 | |
2025 | Copying and distribution of this file, with or without modification, | |
2026 | are permitted in any medium without royalty provided the copyright | |
2027 | notice and this notice are preserved. |