]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/fortran/ChangeLog
c++: add comments
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
CommitLineData
98de0da6
GA
12022-04-25 Jakub Jelinek <jakub@redhat.com>
2 Thomas Schwinge <thomas@codesourcery.com>
3
4 PR fortran/104717
5 * trans-openmp.cc (gfc_trans_oacc_construct): Wrap construct body
6 in an extra BIND_EXPR.
7
bd648859
GA
82022-04-24 Mikael Morin <mikael@gcc.gnu.org>
9 Jakub Jelinek <jakub@redhat.com>
10
11 PR fortran/103662
12 * interface.cc (gfc_compare_derived_types): Support comparing
13 unlimited polymorphic fake symbols. Recursively compare class
14 descriptor types and virtual table types.
15 * resolve.cc (resolve_fl_derived): Add type to the types list
16 on unlimited polymorphic short-circuit return.
17
ab54f600
GA
182022-04-22 Mikael Morin <mikael@gcc.gnu.org>
19 Richard Biener <rguenther@suse.de>
20
21 PR fortran/102043
22 * trans.h (gfc_build_array_ref): Add non_negative_offset
23 argument.
24 * trans.cc (gfc_build_array_ref): Ditto. Use pointer arithmetic
25 if non_negative_offset is false.
26 * trans-expr.cc (gfc_conv_substring): Set flag in the call to
27 gfc_build_array_ref.
28 * trans-array.cc (gfc_get_cfi_dim_item,
29 gfc_conv_descriptor_dimension): Same.
30 (build_array_ref): Decide on whether to set the flag and update
31 the call.
32 (gfc_conv_scalarized_array_ref): Same. New argument tmp_array.
33 (gfc_conv_tmp_array_ref): Update call to
34 gfc_conv_scalarized_ref.
35 (non_negative_strides_array_p): New function.
36
372022-04-22 Mikael Morin <mikael@gcc.gnu.org>
38
39 PR fortran/102043
40 * trans-array.cc (gfc_conv_expr_descriptor): Use
41 gfc_conv_tmp_array_ref.
42
432022-04-22 Mikael Morin <mikael@gcc.gnu.org>
44
45 PR fortran/102043
46 * trans-io.cc: Add handling for the case where the array
47 is referenced using pointer arithmetic.
48
492022-04-22 Mikael Morin <mikael@gcc.gnu.org>
50
51 PR fortran/102043
52 * trans-expr.cc: Pre-evaluate src and dest to variables
53 before using them.
54
c1a9cf67
GA
552022-04-21 Fritz Reese <foreese@gcc.gnu.org>
56
57 PR fortran/105310
58 * trans-expr.cc (gfc_conv_union_initializer): Pass vec* by reference.
59
247bbed1
GA
602022-04-13 Tobias Burnus <tobias@codesourcery.com>
61
62 PR fortran/105242
63 * match.cc (match_exit_cycle): Handle missing OMP LOOP, DO and SIMD
64 directives in the EXIT/CYCLE diagnostic.
65
a1950f52
GA
662022-04-10 Harald Anlauf <anlauf@gmx.de>
67
68 PR fortran/105184
69 * array.cc (match_subscript): Reject assumed size coarray
70 specification with missing lower bound.
71 * resolve.cc (resolve_allocate_expr): Fix logic for checking
72 allocate-coshape-spec in ALLOCATE statement.
73
9d84ed68
GA
742022-04-05 Sandra Loosemore <sandra@codesourcery.com>
75
76 * trans-openmp.cc (gfc_split_omp_clauses): Fix mask for
77 EXEC_OMP_MASKED_TASKLOOP.
78
792022-04-05 Harald Anlauf <anlauf@gmx.de>
80
81 PR fortran/104210
82 * arith.cc (eval_intrinsic): Avoid NULL pointer dereference.
83 (gfc_zero_size_array): Likewise.
84
852022-04-05 Harald Anlauf <anlauf@gmx.de>
86 Steven G. Kargl <kargl@gcc.gnu.org>
87
88 PR fortran/105138
89 * intrinsic.cc (gfc_is_intrinsic): When a symbol refers to a
90 RECURSIVE procedure, it cannot be an INTRINSIC.
91
150ab50f
GA
922022-03-30 Harald Anlauf <anlauf@gmx.de>
93
94 PR fortran/100892
95 * check.cc (gfc_check_associated): Avoid NULL pointer dereference.
96
9f774626
GA
972022-03-29 Harald Anlauf <anlauf@gmx.de>
98 Steven G. Kargl <kargl@gcc.gnu.org>
99
100 PR fortran/104571
101 * resolve.cc (resolve_elemental_actual): Avoid NULL pointer
102 dereference.
103
1042022-03-29 Harald Anlauf <anlauf@gmx.de>
105
106 PR fortran/50549
107 * resolve.cc (resolve_structure_cons): Reject pointer assignments
108 of character with different lengths in structure constructor.
109
31e989a2
GA
1102022-03-25 Jakub Jelinek <jakub@redhat.com>
111
112 PR fortran/103691
113 * trans-array.cc (gfc_conv_array_initializer): If TYPE_MAX_VALUE is
114 smaller than TYPE_MIN_VALUE (i.e. empty array), ignore the
115 initializer; if TYPE_MIN_VALUE is equal to TYPE_MAX_VALUE, use just
116 the TYPE_MIN_VALUE as index instead of RANGE_EXPR.
117
d1ca63a1
GA
1182022-03-23 Tobias Burnus <tobias@codesourcery.com>
119
120 PR fortran/103560
121 * scanner.cc (add_path_to_list): Don't append '/' to the
122 save include path.
123 (open_included_file): Use '/' in concatenating path + file name.
124 * module.cc (gzopen_included_file_1): Likewise.
125
a2287813
GA
1262022-03-22 Harald Anlauf <anlauf@gmx.de>
127
128 PR fortran/104999
129 * simplify.cc (gfc_simplify_cshift): Ensure temporary holding
130 source array stride is initialized.
131
d7f00da1
GA
1322022-03-19 Mikael Morin <mikael@gcc.gnu.org>
133
134 PR fortran/104228
135 PR fortran/104570
136 * parse.cc (parse_associate): Use a new distinct gfc_charlen if the
137 copied type has one whose length is not known to be constant.
138 * resolve.cc (resolve_assoc_var): Reset charlen if it’s shared with
139 the associate target regardless of the expression type.
140 Don’t reinitialize charlen if it’s deferred.
141
8ca61ad1
GA
1422022-03-18 Tobias Burnus <tobias@codesourcery.com>
143
144 PR fortran/103039
145 * trans-openmp.cc (gfc_omp_clause_copy_ctor, gfc_omp_clause_dtor):
146 Only privatize pointer for associate names.
147
1482022-03-18 Tobias Burnus <tobias@codesourcery.com>
149
150 PR fortran/103039
151 * openmp.cc (resolve_omp_clauses): Improve associate-name diagnostic
152 for select type/rank.
153
b00f9761
GA
1542022-03-11 Tobias Burnus <tobias@codesourcery.com>
155
156 * trans-openmp.cc (gfc_trans_omp_clauses, gfc_omp_finish_clause):
157 Obtain size for mapping only if allocatable array is allocated.
158
8cc4f9cd
GA
1592022-03-09 Harald Anlauf <anlauf@gmx.de>
160
161 PR fortran/104849
162 * expr.cc (find_array_section): Avoid NULL pointer dereference on
163 invalid array section.
164
1652022-03-09 Tobias Burnus <tobias@codesourcery.com>
166
167 * trans-intrinsic.cc (gfc_conv_intrinsic_sizeof): Fix CLASS handling.
168
8d038a84
GA
1692022-03-08 Tobias Burnus <tobias@codesourcery.com>
170
171 PR fortran/104126
172 * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Handle NULL
173 without MOLD.
174
1752022-03-08 Harald Anlauf <anlauf@gmx.de>
176
177 PR fortran/104811
178 * frontend-passes.cc (optimize_minmaxloc): Do not attempt
179 frontend-optimization of MINLOC/MAXLOC for character arrays, as
180 there is no suitable code yet for inline expansion.
181
e6533e2e
GA
1822022-03-07 Tobias Burnus <tobias@codesourcery.com>
183
184 PR fortran/99585
185 PR fortran/104430
186 * trans-expr.cc (conv_parent_component_references): Fix comment;
187 simplify comparison.
188 (gfc_maybe_dereference_var): Avoid d referencing a nonpointer.
189
1902022-03-07 Tobias Burnus <tobias@codesourcery.com>
191
192 * array.cc (gfc_ref_dimen_size): Fix comment typo.
193 * dump-parse-tree.cc (gfc_dump_c_prototypes): Likewise.
194 * frontend-passes.cc (cfe_code): Likewise.
195 * gfortran.texi: Likewise.
196 * resolve.cc (generate_component_assignments): Likewise.
197 * simplify.cc (gfc_simplify_this_image): Likewise.
198 * trans-expr.cc (trans_scalar_class_assign,
199 gfc_maybe_dereference_var): Likewise.
200 * intrinsic.texi: Remove word duplication.
201 * invoke.texi: Likewise.
202
2032022-03-07 Jakub Jelinek <jakub@redhat.com>
204
205 * trans-expr.cc: Fix up duplicated word issue in a comment.
206 * gfortran.h: Likewise.
207 * scanner.cc: Likewise.
208
2092022-03-07 Martin Liska <mliska@suse.cz>
210
211 * intrinsic.cc (gfc_is_intrinsic): Remove asterisk from error
212 message.
213
2142022-03-07 Martin Liska <mliska@suse.cz>
215
216 PR translation/90148
217 * intrinsic.cc (gfc_is_intrinsic): Put
218 quote to a proper place.
219
fc03ebdc
GA
2202022-03-03 Kwok Cheung Yeung <kcy@codesourcery.com>
221
222 PR fortran/104131
223 * openmp.cc (gfc_match_omp_detach): Move check for type of event
224 handle to...
225 (resolve_omp_clauses) ...here. Also check that the event handle is
226 not an array, or an array access or structure element access.
227
ea4911c4
GA
2282022-03-02 Harald Anlauf <anlauf@gmx.de>
229
230 PR fortran/104573
231 * resolve.cc (resolve_structure_cons): Avoid NULL pointer
232 dereference when there is no valid component.
233
756a6185
GA
2342022-02-24 Harald Anlauf <anlauf@gmx.de>
235
236 PR fortran/84519
237 * dump-parse-tree.cc (show_code_node): Dump QUIET specifier when
238 present.
239 * match.cc (gfc_match_stopcode): Implement parsing of F2018 QUIET
240 specifier. F2018 stopcodes may have non-default integer kind.
241 * resolve.cc (gfc_resolve_code): Add checks for QUIET argument.
242 * trans-stmt.cc (gfc_trans_stop): Pass QUIET specifier to call of
243 library function.
244
2cfb33fc
GA
2452022-02-22 Harald Anlauf <anlauf@gmx.de>
246
247 PR fortran/104619
248 * resolve.cc (resolve_structure_cons): Skip shape check if shape
249 of constructor cannot be determined at compile time.
250
c42f1e77
GA
2512022-02-20 Harald Anlauf <anlauf@gmx.de>
252
253 PR fortran/77693
254 * data.cc (gfc_assign_data_value): If a variable in a data
255 statement has the POINTER attribute, check for allowed initial
256 data target that is compatible with pointer assignment.
257 * gfortran.h (IS_POINTER): New macro.
258
875e493b
GA
2592022-02-15 Tobias Burnus <tobias@codesourcery.com>
260
261 * trans-openmp.cc (gfc_trans_omp_depobj): Fix to alloc/ptr dummy
262 and for c_ptr.
263
2642022-02-15 Tobias Burnus <tobias@codesourcery.com>
265
266 * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
267 Depend on the proper addr, for ptr/alloc depend on pointee.
268
1f8a09d2
GA
2692022-02-14 Harald Anlauf <anlauf@gmx.de>
270
271 PR fortran/104211
272 * expr.cc (find_array_section): Replace assertion by error
273 recovery when encountering bad array constructor.
274
0d31c8ec
GA
2752022-02-13 Mikael Morin <mikael@gcc.gnu.org>
276
277 PR fortran/104228
278 * resolve.cc (resolve_assoc_var): Also create a new character
279 length for non-dummy associate targets.
280 * trans-stmt.cc (trans_associate_var): Initialize character length
281 even if no temporary is used for the associate variable.
282
a645583d
GA
2832022-02-10 Roger Sayle <roger@nextmovesoftware.com>
284 Tobias Burnus <tobias@codesourcery.com>
285
286 * trans-common.cc (GFC_EQUIV_FMT): New macro respecting the
287 target's NO_DOT_IN_LABEL and NO_DOLLAR_IN_LABEL preferences.
288 (build_equiv_decl): Use GFC_EQUIV_FMT here.
289
2902022-02-10 Tobias Burnus <tobias@codesourcery.com>
291
292 PR fortran/104329
293 * openmp.cc (resolve_omp_atomic): Defer extra-code assert after
294 other diagnostics.
295
2962022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
297
298 * dump-parse-tree.cc (show_omp_clauses): Added OMP_LIST_HAS_DEVICE_ADDR
299 case.
300 * gfortran.h: Added OMP_LIST_HAS_DEVICE_ADDR.
301 * openmp.cc (enum omp_mask2): Added OMP_CLAUSE_HAS_DEVICE_ADDR.
302 (gfc_match_omp_clauses): Parse HAS_DEVICE_ADDR clause.
303 (resolve_omp_clauses): Same.
304 * trans-openmp.cc (gfc_trans_omp_variable_list): Added
305 OMP_LIST_HAS_DEVICE_ADDR case.
306 (gfc_trans_omp_clauses): Firstprivatize of array descriptors.
307
3adf509f
GA
3082022-02-09 Harald Anlauf <anlauf@gmx.de>
309
310 PR fortran/66193
311 * arith.cc (reduce_binary_ac): When reducing binary expressions,
312 try simplification. Handle case of empty constructor.
313 (reduce_binary_ca): Likewise.
314
682ede39
GA
3152022-02-03 Harald Anlauf <anlauf@gmx.de>
316
317 PR fortran/104311
318 * check.cc (gfc_calculate_transfer_sizes): Checks for case when
319 storage size of SOURCE is greater than zero while the storage size
320 of MOLD is zero and MOLD is an array shall not depend on SIZE.
321
3222022-02-03 Jakub Jelinek <jakub@redhat.com>
323
324 PR fortran/104328
325 * openmp.cc (is_scalar_intrinsic_expr): If must_be_var && conv_ok
326 and expr is conversion, verify it is a conversion from EXPR_VARIABLE
327 with non-NULL symtree. Check ->block->next before dereferencing it.
328
ae7e4af9
GA
3292022-02-01 Harald Anlauf <anlauf@gmx.de>
330
331 PR fortran/104331
332 * simplify.cc (gfc_simplify_eoshift): Avoid NULL pointer
333 dereference when shape is not set.
334
f6f2d6cf
GA
3352022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
336
337 PR fortran/103790
338 * trans-array.cc (structure_alloc_comps): Prevent descriptor
339 stacking for non-array data; do not broadcast caf-tokens.
340 * trans-intrinsic.cc (conv_co_collective): Prevent generation
341 of unused descriptor.
342
3432022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
344
345 Revert:
346 2022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
347
348 PR fortran/103790
349 * trans-array.cc (structure_alloc_comps): Prevent descriptor
350 stacking for non-array data; do not broadcast caf-tokens.
351 * trans-intrinsic.cc (conv_co_collective): Prevent generation
352 of unused descriptor.
353
3542022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
355
356 PR fortran/103790
357 * trans-array.cc (structure_alloc_comps): Prevent descriptor
358 stacking for non-array data; do not broadcast caf-tokens.
359 * trans-intrinsic.cc (conv_co_collective): Prevent generation
360 of unused descriptor.
361
99f17e99
GA
3622022-01-27 Harald Anlauf <anlauf@gmx.de>
363
364 PR fortran/104128
365 * expr.cc (gfc_copy_expr): Convert internal representation of
366 string to wide char in value only for default character kind.
367 * target-memory.cc (interpret_array): Pass flag for conversion of
368 wide chars.
369 (gfc_target_interpret_expr): Likewise.
370
3712022-01-27 Harald Anlauf <anlauf@gmx.de>
372
373 PR fortran/84784
374 * trans-intrinsic.cc (conv_intrinsic_image_status): Convert result
375 to resulting (default) integer type.
376 (conv_intrinsic_team_number): Likewise.
377 (gfc_conv_intrinsic_popcnt_poppar): Likewise.
378
e0b8716f
GA
3792022-01-25 Harald Anlauf <anlauf@gmx.de>
380
381 PR fortran/104227
382 * check.cc (gfc_calculate_transfer_sizes): Fix checking of arrays
383 passed as MOLD argument to the TRANSFER intrinsic for having
384 storage size zero.
385
3862022-01-25 Harald Anlauf <anlauf@gmx.de>
387
388 PR fortran/104212
389 * check.cc (gfc_check_norm2): Check that optional argument DIM is
390 scalar.
391 (gfc_check_parity): Likewise.
392
bb99171b
GA
3932022-01-24 Jakub Jelinek <jakub@redhat.com>
394
395 * lang.opt (fconvert=): Add EnumSet property and mention also
396 r16_ieee and r16_ibm arguments.
397 (big-endian, little-endian, native, swap): Add Set(1) property.
398 (r16_ieee, r16_ibm): New EnumValue entries with Set(2) property.
399 * trans-types.cc (gfc_init_kinds): Emit gfc_fatal_error for
400 -fconvert=r16_ieee or -fconvert=r16_ibm when R16_IEEE <=> R16_IBM
401 conversions aren't supported.
402
d43be9dc
GA
4032022-01-22 Harald Anlauf <anlauf@gmx.de>
404
405 PR fortran/104127
406 * simplify.cc (gfc_simplify_transfer): Ensure that the result
407 typespec is set up for TRANSFER with MOLD of type CHARACTER
408 including character length even if the result is a zero-sized
409 array.
410
5fa55d55
GA
4112022-01-20 Sandra Loosemore <sandra@codesourcery.com>
412
413 PR fortran/103695
414 PR fortran/102621
415 * gfortran.h (struct gfc_namespace) Add omp_affinity_iterator
416 field.
417 * dump-parse-tree.cc (show_iterator): Use it.
418 * openmp.cc (gfc_match_iterator): Likewise.
419 (resolve_omp_clauses): Likewise.
420 * trans-decl.cc (gfc_finish_var_decl): Likewise.
421 * trans-openmp.cc (handle_iterator): Likewise.
422
7a761ae6
GA
4232022-01-18 Harald Anlauf <anlauf@gmx.de>
424
425 PR fortran/103692
426 * array.cc (gfc_expand_constructor): Handle zero-sized array
427 constructors.
428
fc829782
GA
4292022-01-17 Martin Liska <mliska@suse.cz>
430
431 * check.cc (gfc_check_all_any): Rename .c names to .cc.
432 * class.cc (find_intrinsic_vtab): Likewise.
433 * config-lang.in: Likewise.
434 * cpp.cc (cpp_define_builtins): Likewise.
435 * data.cc (get_array_index): Likewise.
436 * decl.cc (match_clist_expr): Likewise.
437 (get_proc_name): Likewise.
438 (gfc_verify_c_interop_param): Likewise.
439 (gfc_get_pdt_instance): Likewise.
440 (gfc_match_formal_arglist): Likewise.
441 (gfc_get_type_attr_spec): Likewise.
442 * dependency.cc: Likewise.
443 * error.cc (gfc_format_decoder): Likewise.
444 * expr.cc (check_restricted): Likewise.
445 (gfc_build_default_init_expr): Likewise.
446 * f95-lang.cc: Likewise.
447 * gfc-internals.texi: Likewise.
448 * gfortran.h (enum match): Likewise.
449 (enum procedure_type): Likewise.
450 (enum oacc_routine_lop): Likewise.
451 (gfc_get_pdt_instance): Likewise.
452 (gfc_end_source_files): Likewise.
453 (gfc_mpz_set_hwi): Likewise.
454 (gfc_get_option_string): Likewise.
455 (gfc_find_sym_in_expr): Likewise.
456 (gfc_errors_to_warnings): Likewise.
457 (gfc_real_4_kind): Likewise.
458 (gfc_free_finalizer): Likewise.
459 (gfc_sym_get_dummy_args): Likewise.
460 (gfc_check_intrinsic_standard): Likewise.
461 (gfc_free_case_list): Likewise.
462 (gfc_resolve_oacc_routines): Likewise.
463 (gfc_check_vardef_context): Likewise.
464 (gfc_free_association_list): Likewise.
465 (gfc_implicit_pure_function): Likewise.
466 (gfc_ref_dimen_size): Likewise.
467 (gfc_compare_actual_formal): Likewise.
468 (gfc_resolve_wait): Likewise.
469 (gfc_dt_upper_string): Likewise.
470 (gfc_generate_module_code): Likewise.
471 (gfc_delete_bbt): Likewise.
472 (debug): Likewise.
473 (gfc_build_block_ns): Likewise.
474 (gfc_dep_difference): Likewise.
475 (gfc_invalid_null_arg): Likewise.
476 (gfc_is_finalizable): Likewise.
477 (gfc_fix_implicit_pure): Likewise.
478 (gfc_is_size_zero_array): Likewise.
479 (gfc_is_reallocatable_lhs): Likewise.
480 * gfortranspec.cc: Likewise.
481 * interface.cc (compare_actual_expr): Likewise.
482 * intrinsic.cc (add_functions): Likewise.
483 * iresolve.cc (gfc_resolve_matmul): Likewise.
484 (gfc_resolve_alarm_sub): Likewise.
485 * iso-c-binding.def: Likewise.
486 * lang-specs.h: Likewise.
487 * libgfortran.h (GFC_STDERR_UNIT_NUMBER): Likewise.
488 * match.cc (gfc_match_label): Likewise.
489 (gfc_match_symbol): Likewise.
490 (match_derived_type_spec): Likewise.
491 (copy_ts_from_selector_to_associate): Likewise.
492 * match.h (gfc_match_call): Likewise.
493 (gfc_get_common): Likewise.
494 (gfc_match_omp_end_single): Likewise.
495 (gfc_match_volatile): Likewise.
496 (gfc_match_bind_c): Likewise.
497 (gfc_match_literal_constant): Likewise.
498 (gfc_match_init_expr): Likewise.
499 (gfc_match_array_constructor): Likewise.
500 (gfc_match_end_interface): Likewise.
501 (gfc_match_print): Likewise.
502 (gfc_match_expr): Likewise.
503 * matchexp.cc (next_operator): Likewise.
504 * mathbuiltins.def: Likewise.
505 * module.cc (free_true_name): Likewise.
506 * openmp.cc (gfc_resolve_omp_parallel_blocks): Likewise.
507 (gfc_omp_save_and_clear_state): Likewise.
508 * parse.cc (parse_union): Likewise.
509 (set_syms_host_assoc): Likewise.
510 * resolve.cc (resolve_actual_arglist): Likewise.
511 (resolve_elemental_actual): Likewise.
512 (check_host_association): Likewise.
513 (resolve_typebound_function): Likewise.
514 (resolve_typebound_subroutine): Likewise.
515 (gfc_resolve_expr): Likewise.
516 (resolve_assoc_var): Likewise.
517 (resolve_typebound_procedures): Likewise.
518 (resolve_equivalence_derived): Likewise.
519 * simplify.cc (simplify_bound): Likewise.
520 * symbol.cc (gfc_set_default_type): Likewise.
521 (gfc_add_ext_attribute): Likewise.
522 * target-memory.cc (gfc_target_interpret_expr): Likewise.
523 * target-memory.h (gfc_target_interpret_expr): Likewise.
524 * trans-array.cc (gfc_get_cfi_dim_sm): Likewise.
525 (gfc_conv_shift_descriptor_lbound): Likewise.
526 (gfc_could_be_alias): Likewise.
527 (gfc_get_dataptr_offset): Likewise.
528 * trans-const.cc: Likewise.
529 * trans-decl.cc (trans_function_start): Likewise.
530 (gfc_trans_deferred_vars): Likewise.
531 (generate_local_decl): Likewise.
532 (gfc_generate_function_code): Likewise.
533 * trans-expr.cc (gfc_vptr_size_get): Likewise.
534 (gfc_trans_class_array_init_assign): Likewise.
535 (POWI_TABLE_SIZE): Likewise.
536 (gfc_conv_procedure_call): Likewise.
537 (gfc_trans_arrayfunc_assign): Likewise.
538 * trans-intrinsic.cc (gfc_conv_intrinsic_len): Likewise.
539 (gfc_conv_intrinsic_loc): Likewise.
540 (conv_intrinsic_event_query): Likewise.
541 * trans-io.cc (gfc_build_st_parameter): Likewise.
542 * trans-openmp.cc (gfc_omp_check_optional_argument): Likewise.
543 (gfc_omp_unshare_expr_r): Likewise.
544 (gfc_trans_omp_array_section): Likewise.
545 (gfc_trans_omp_clauses): Likewise.
546 * trans-stmt.cc (trans_associate_var): Likewise.
547 (gfc_trans_deallocate): Likewise.
548 * trans-stmt.h (gfc_trans_class_init_assign): Likewise.
549 (gfc_trans_deallocate): Likewise.
550 (gfc_trans_oacc_declare): Likewise.
551 * trans-types.cc: Likewise.
552 * trans-types.h (enum gfc_packed): Likewise.
553 * trans.cc (N_): Likewise.
554 (trans_code): Likewise.
555 * trans.h (gfc_build_compare_string): Likewise.
556 (gfc_conv_expr_type): Likewise.
557 (gfc_trans_deferred_vars): Likewise.
558 (getdecls): Likewise.
559 (gfc_get_array_descr_info): Likewise.
560 (gfc_omp_firstprivatize_type_sizes): Likewise.
561 (GTY): Likewise.
562
5632022-01-17 Martin Liska <mliska@suse.cz>
564
565 * arith.c: Moved to...
566 * arith.cc: ...here.
567 * array.c: Moved to...
568 * array.cc: ...here.
569 * bbt.c: Moved to...
570 * bbt.cc: ...here.
571 * check.c: Moved to...
572 * check.cc: ...here.
573 * class.c: Moved to...
574 * class.cc: ...here.
575 * constructor.c: Moved to...
576 * constructor.cc: ...here.
577 * convert.c: Moved to...
578 * convert.cc: ...here.
579 * cpp.c: Moved to...
580 * cpp.cc: ...here.
581 * data.c: Moved to...
582 * data.cc: ...here.
583 * decl.c: Moved to...
584 * decl.cc: ...here.
585 * dependency.c: Moved to...
586 * dependency.cc: ...here.
587 * dump-parse-tree.c: Moved to...
588 * dump-parse-tree.cc: ...here.
589 * error.c: Moved to...
590 * error.cc: ...here.
591 * expr.c: Moved to...
592 * expr.cc: ...here.
593 * f95-lang.c: Moved to...
594 * f95-lang.cc: ...here.
595 * frontend-passes.c: Moved to...
596 * frontend-passes.cc: ...here.
597 * gfortranspec.c: Moved to...
598 * gfortranspec.cc: ...here.
599 * interface.c: Moved to...
600 * interface.cc: ...here.
601 * intrinsic.c: Moved to...
602 * intrinsic.cc: ...here.
603 * io.c: Moved to...
604 * io.cc: ...here.
605 * iresolve.c: Moved to...
606 * iresolve.cc: ...here.
607 * match.c: Moved to...
608 * match.cc: ...here.
609 * matchexp.c: Moved to...
610 * matchexp.cc: ...here.
611 * misc.c: Moved to...
612 * misc.cc: ...here.
613 * module.c: Moved to...
614 * module.cc: ...here.
615 * openmp.c: Moved to...
616 * openmp.cc: ...here.
617 * options.c: Moved to...
618 * options.cc: ...here.
619 * parse.c: Moved to...
620 * parse.cc: ...here.
621 * primary.c: Moved to...
622 * primary.cc: ...here.
623 * resolve.c: Moved to...
624 * resolve.cc: ...here.
625 * scanner.c: Moved to...
626 * scanner.cc: ...here.
627 * simplify.c: Moved to...
628 * simplify.cc: ...here.
629 * st.c: Moved to...
630 * st.cc: ...here.
631 * symbol.c: Moved to...
632 * symbol.cc: ...here.
633 * target-memory.c: Moved to...
634 * target-memory.cc: ...here.
635 * trans-array.c: Moved to...
636 * trans-array.cc: ...here.
637 * trans-common.c: Moved to...
638 * trans-common.cc: ...here.
639 * trans-const.c: Moved to...
640 * trans-const.cc: ...here.
641 * trans-decl.c: Moved to...
642 * trans-decl.cc: ...here.
643 * trans-expr.c: Moved to...
644 * trans-expr.cc: ...here.
645 * trans-intrinsic.c: Moved to...
646 * trans-intrinsic.cc: ...here.
647 * trans-io.c: Moved to...
648 * trans-io.cc: ...here.
649 * trans-openmp.c: Moved to...
650 * trans-openmp.cc: ...here.
651 * trans-stmt.c: Moved to...
652 * trans-stmt.cc: ...here.
653 * trans-types.c: Moved to...
654 * trans-types.cc: ...here.
655 * trans.c: Moved to...
656 * trans.cc: ...here.
657
6582022-01-17 Andrew Stubbs <ams@codesourcery.com>
659
660 * openmp.c (gfc_match_omp_requires): Don't "sorry" dynamic_allocators.
661
9248ee41
GA
6622022-01-15 Harald Anlauf <anlauf@gmx.de>
663
664 PR fortran/83079
665 * target-memory.c (gfc_interpret_character): Result length is
666 in bytes and thus depends on the character kind.
667 * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Compute correct
668 string length for the result of the TRANSFER intrinsic and for
669 temporaries for the different character kinds.
670
617db51d
GA
6712022-01-14 Harald Anlauf <anlauf@gmx.de>
672
673 PR fortran/99256
674 * intrinsic.c: Do not check formal argument type when checking
675 arguments of intrinsics for alternate return specifiers.
676
6772022-01-14 Harald Anlauf <anlauf@gmx.de>
678
679 PR fortran/103782
680 * expr.c (gfc_simplify_expr): Adjust logic for when to scalarize a
681 call of an intrinsic which may have been overloaded.
682
ad3f0d08
GA
6832022-01-13 Hafiz Abid Qadeer <abidh@codesourcery.com>
684
685 * dump-parse-tree.c (show_omp_clauses): Handle OMP_LIST_ALLOCATE.
686 * gfortran.h (OMP_LIST_ALLOCATE): New enum value.
687 * openmp.c (enum omp_mask1): Add OMP_CLAUSE_ALLOCATE.
688 (gfc_match_omp_clauses): Handle OMP_CLAUSE_ALLOCATE
689 (OMP_PARALLEL_CLAUSES, OMP_DO_CLAUSES, OMP_SECTIONS_CLAUSES)
690 (OMP_TASK_CLAUSES, OMP_TASKLOOP_CLAUSES, OMP_TARGET_CLAUSES)
691 (OMP_TEAMS_CLAUSES, OMP_DISTRIBUTE_CLAUSES)
692 (OMP_SINGLE_CLAUSES): Add OMP_CLAUSE_ALLOCATE.
693 (OMP_TASKGROUP_CLAUSES): New.
694 (gfc_match_omp_taskgroup): Use OMP_TASKGROUP_CLAUSES instead of
695 OMP_CLAUSE_TASK_REDUCTION.
696 (resolve_omp_clauses): Handle OMP_LIST_ALLOCATE.
697 (resolve_omp_do): Avoid warning when loop iteration variable is
698 in allocate clause.
699 * trans-openmp.c (gfc_trans_omp_clauses): Handle translation of
700 allocate clause.
701 (gfc_split_omp_clauses): Update for OMP_LIST_ALLOCATE.
702
7032022-01-13 Harald Anlauf <anlauf@gmx.de>
704
705 PR fortran/67804
706 * primary.c (gfc_match_structure_constructor): Recover from errors
707 that occurred while checking for a valid structure constructor in
708 a DATA statement.
709
01a254e3
GA
7102022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
711
712 * libgfortran.h (unit_convert): Add flags.
713
7142022-01-11 Jakub Jelinek <jakub@redhat.com>
715
716 * trans-types.c (gfc_init_kinds): When setting abi_kind to 17, if not
717 targetting glibc 2.32 or later and -fbuilding-libgfortran, set
718 gfc_real16_is_float128 and c_float128 in gfc_real_kinds.
719 (gfc_build_real_type): Don't set c_long_double if c_float128 is
720 already set.
721 * trans-intrinsic.c (builtin_decl_for_precision): Don't use
722 long_double_built_in if gfc_real16_is_float128 and
723 long_double_type_node == gfc_float128_type_node.
724 * lang.opt (fbuilding-libgfortran): New undocumented option.
725
7262022-01-11 Jakub Jelinek <jakub@redhat.com>
727
728 * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl): Use
729 gfc_type_abi_kind.
730
7312022-01-11 Jakub Jelinek <jakub@redhat.com>
732
733 * trans-io.c (transfer_array_desc): Pass abi kind instead of kind
734 to libgfortran.
735
7362022-01-11 Jakub Jelinek <jakub@redhat.com>
737
738 * trans-io.c (transfer_namelist_element): Use gfc_type_abi_kind,
739 formatting fixes.
740 (transfer_expr): Use gfc_type_abi_kind, use *REAL128* APIs even
741 for abi_kind == 17.
742
7432022-01-11 Jakub Jelinek <jakub@redhat.com>
744
745 * gfortran.h (gfc_real_info): Add abi_kind member.
746 (gfc_type_abi_kind): Declare.
747 * trans-types.c (gfc_init_kinds): Initialize abi_kind.
748 * intrinsic.c (gfc_type_abi_kind): New function.
749 (conv_name): Use it.
750 * iresolve.c (resolve_transformational, gfc_resolve_abs,
751 gfc_resolve_char_achar, gfc_resolve_acos, gfc_resolve_acosh,
752 gfc_resolve_aimag, gfc_resolve_and, gfc_resolve_aint, gfc_resolve_all,
753 gfc_resolve_anint, gfc_resolve_any, gfc_resolve_asin,
754 gfc_resolve_asinh, gfc_resolve_atan, gfc_resolve_atanh,
755 gfc_resolve_atan2, gfc_resolve_bessel_n2, gfc_resolve_ceiling,
756 gfc_resolve_cmplx, gfc_resolve_complex, gfc_resolve_cos,
757 gfc_resolve_cosh, gfc_resolve_count, gfc_resolve_dble,
758 gfc_resolve_dim, gfc_resolve_dot_product, gfc_resolve_dprod,
759 gfc_resolve_exp, gfc_resolve_floor, gfc_resolve_hypot,
760 gfc_resolve_int, gfc_resolve_int2, gfc_resolve_int8, gfc_resolve_long,
761 gfc_resolve_log, gfc_resolve_log10, gfc_resolve_logical,
762 gfc_resolve_matmul, gfc_resolve_minmax, gfc_resolve_maxloc,
763 gfc_resolve_findloc, gfc_resolve_maxval, gfc_resolve_merge,
764 gfc_resolve_minloc, gfc_resolve_minval, gfc_resolve_mod,
765 gfc_resolve_modulo, gfc_resolve_nearest, gfc_resolve_or,
766 gfc_resolve_real, gfc_resolve_realpart, gfc_resolve_reshape,
767 gfc_resolve_sign, gfc_resolve_sin, gfc_resolve_sinh, gfc_resolve_sqrt,
768 gfc_resolve_tan, gfc_resolve_tanh, gfc_resolve_transpose,
769 gfc_resolve_trigd, gfc_resolve_xor, gfc_resolve_random_number):
770 Likewise.
771 * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
772
d9450aa0
GA
7732022-01-10 Paul Thomas <pault@gcc.gnu.org>
774
775 PR fortran/103366
776 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Allow unlimited
777 polymorphic actual argument passed to assumed type formal.
778
3a5702df
GA
7792022-01-09 Harald Anlauf <anlauf@gmx.de>
780
781 PR fortran/103777
782 * simplify.c (gfc_simplify_maskr): Check validity of argument 'I'
783 before simplifying.
784 (gfc_simplify_maskl): Likewise.
785
7862022-01-09 Harald Anlauf <anlauf@gmx.de>
787
788 PR fortran/101762
789 * expr.c (gfc_check_pointer_assign): For pointer initialization
790 targets, check that subscripts and substring indices in
791 specifications are constant expressions.
792
7932022-01-09 Mikael Morin <mikael@gcc.gnu.org>
794
795 PR fortran/103789
796 * trans-array.c (arg_evaluated_for_scalarization): Add MASKL, MASKR,
797 SCAN and VERIFY to the list of intrinsics whose KIND argument is to be
798 ignored.
799
55e96bf9
GA
8002022-01-07 Sandra Loosemore <sandra@codesourcery.com>
801
802 PR fortran/103898
803 * trans-intrinsic.c (gfc_conv_intrinsic_size): Make size_var
804 actually be a variable and fix surrounding code.
805
11ce8d04
GA
8062022-01-06 Steve Kargl <kargl@gcc.gnu.org>
807 Sandra Loosemore <sandra@codesourcery.com>
808
809 PR fortran/103287
810 * interface.c (argument_rank_mismatch): Replace incorrect assertion
811 with return.
812
0fbefa25
GA
8132022-01-05 Sandra Loosemore <sandra@codesourcery.com>
814
815 PR fortran/103258
816 * decl.c (gfc_match_char_spec): Suppress errors around call
817 to gfc_reduce_init_expr.
818 * error.c (gfc_query_suppress_errors): New.
819 * gfortran.h (gfc_query_suppress_errors): Declare.
820 * symbol.c (gfc_set_default_type): Check gfc_query_suppress_errors.
821
a4ae8c37
GA
8222022-01-03 Sandra Loosemore <sandra@codesourcery.com>
823
824 PR fortran/103390
825 * expr.c (gfc_is_simply_contiguous): Make it smarter about
826 function calls.
827 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Do not generate
828 copy loops for array expressions that are not "variables" (lvalues).
829
8302022-01-03 Jakub Jelinek <jakub@redhat.com>
831
832 * gfortranspec.c (lang_specific_driver): Update copyright notice
833 dates.
834 * gfc-internals.texi: Bump @copying's copyright year.
835 * gfortran.texi: Ditto.
836 * intrinsic.texi: Ditto.
837 * invoke.texi: Ditto.
838
21fa2a29 839\f
6123f29a 840Copyright (C) 2022 Free Software Foundation, Inc.
ad41bd84
JM
841
842Copying and distribution of this file, with or without modification,
843are permitted in any medium without royalty provided the copyright
844notice and this notice are preserved.