1 2022-06-08 Tobias Burnus <tobias@codesourcery.com>
3 * openmp.cc (gfc_match_omp_clauses): Check also parent namespace
4 for 'requires reverse_offload'.
6 2022-06-07 Jakub Jelinek <jakub@redhat.com>
8 * trans-openmp.cc (gfc_trans_omp_clauses): Set
9 OMP_CLAUSE_LINEAR_OLD_LINEAR_MODIFIER on OMP_CLAUSE_LINEAR
10 clauses unconditionally for now.
12 2022-06-03 Tobias Burnus <tobias@codesourcery.com>
14 * openmp.cc (OMP_SCOPE_CLAUSES): Add firstprivate and allocate.
16 2022-06-02 David Malcolm <dmalcolm@redhat.com>
18 * f95-lang.cc (gfc_get_sarif_source_language): New.
19 (LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): Redefine.
21 2022-05-31 Jason Merrill <jason@redhat.com>
23 * Make-lang.in (fortran.tags): Look at *.cc.
25 2022-05-30 Harald Anlauf <anlauf@gmx.de>
28 * libgfortran.h: Define new error code LIBERROR_NO_MEMORY.
29 * trans-stmt.cc (gfc_trans_allocate): Generate code for setting
30 ERRMSG depending on result of STAT result of ALLOCATE.
31 * trans.cc (gfc_allocate_using_malloc): Use STAT value of
32 LIBERROR_NO_MEMORY in case of failed malloc.
34 2022-05-28 Tobias Burnus <tobias@codesourcery.com>
36 * dump-parse-tree.cc (show_omp_clauses): Handle OMP_LIST_ENTER.
37 * gfortran.h: Add OMP_LIST_ENTER.
38 * openmp.cc (enum omp_mask2, OMP_DECLARE_TARGET_CLAUSES): Add
40 (gfc_match_omp_clauses, gfc_match_omp_declare_target,
41 resolve_omp_clauses): Handle 'enter' clause.
43 2022-05-27 Tobias Burnus <tobias@codesourcery.com>
44 Chung-Lin Tang <cltang@codesourcery.com>
46 * openmp.cc (gfc_check_omp_requires): Fix clause name in error.
48 2022-05-24 Tobias Burnus <tobias@codesourcery.com>
51 * openmp.cc (gfc_match_omp_taskwait): Accept nowait.
53 2022-05-23 Tobias Burnus <tobias@codesourcery.com>
56 * f95-lang.cc (LANG_HOOKS_OMP_ARRAY_SIZE): Redefine.
57 * trans-openmp.cc (gfc_omp_array_size): New.
58 (gfc_trans_omp_variable_list): Never turn has_device_addr
60 * trans.h (gfc_omp_array_size): New.
62 2022-05-18 Tobias Burnus <tobias@codesourcery.com>
64 * gfortran.h (enum gfc_omp_depend_op): Add OMP_DEPEND_INOUTSET.
65 (gfc_omp_clauses): Enlarge ENUM_BITFIELD.
66 * dump-parse-tree.cc (show_omp_namelist, show_omp_clauses): Handle
67 'inoutset' depend modifier.
68 * openmp.cc (gfc_match_omp_clauses, gfc_match_omp_depobj): Likewise.
69 * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
72 2022-05-17 Tobias Burnus <tobias@codesourcery.com>
74 * dump-parse-tree.cc (show_omp_namelist): Handle omp_all_memory.
75 * openmp.cc (gfc_match_omp_variable_list, gfc_match_omp_depend_sink,
76 gfc_match_omp_clauses, resolve_omp_clauses): Likewise.
77 * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
79 * resolve.cc (resolve_symbol): Reject it as symbol.
81 2022-05-16 Martin Liska <mliska@suse.cz>
83 * frontend-passes.cc (gfc_code_walker): Use ARRAY_SIZE.
84 * openmp.cc (gfc_match_omp_context_selector_specification): Likewise.
85 * trans-intrinsic.cc (conv_intrinsic_ieee_builtin): Likewise.
86 * trans-types.cc (gfc_get_array_descr_info): Likewise.
88 2022-05-13 Tobias Burnus <tobias@codesourcery.com>
90 * trans-openmp.cc (gfc_trans_omp_clauses): When mapping nondescriptor
91 array sections, use GOMP_MAP_FIRSTPRIVATE_POINTER instead of
92 GOMP_MAP_POINTER for the pointer attachment.
94 2022-05-11 Harald Anlauf <anlauf@gmx.de>
95 Steven G. Kargl <kargl@gcc.gnu.org>
98 * expr.cc (find_array_section): Correct logic to avoid NULL
99 pointer dereference on invalid array section.
101 2022-05-10 Harald Anlauf <anlauf@gmx.de>
104 * resolve.cc (check_team): New.
105 (gfc_resolve_code): Add checks for arguments to coarray intrinsics
106 FORM TEAM, CHANGE TEAM, and SYNC TEAM.
108 2022-05-09 Harald Anlauf <anlauf@gmx.de>
111 * match.cc (gfc_match_if): Adjust patterns used for matching.
112 (gfc_match_select_rank): Likewise.
113 * parse.cc (decode_statement): Likewise.
115 2022-05-05 Sandra Loosemore <sandra@codesourcery.com>
117 * gfortran.h (struct gfc_omp_clauses): Add non_rectangular bit.
118 * openmp.cc (is_outer_iteration_variable): New function.
119 (expr_is_invariant): New function.
120 (bound_expr_is_canonical): New function.
121 (resolve_omp_do): Replace existing non-rectangularity error with
122 check for canonical form and setting non_rectangular bit.
123 * trans-openmp.cc (gfc_trans_omp_do): Transfer non_rectangular
124 flag to generated tree structure.
126 2022-05-02 Sandra Loosemore <sandra@codesourcery.com>
128 * trans-openmp.cc (gfc_trans_omp_critical): Set location on OMP
130 (gfc_trans_omp_do): Likewise.
131 (gfc_trans_omp_masked): Likewise.
132 (gfc_trans_omp_do_simd): Likewise.
133 (gfc_trans_omp_scope): Likewise.
134 (gfc_trans_omp_taskgroup): Likewise.
135 (gfc_trans_omp_taskwait): Likewise.
136 (gfc_trans_omp_distribute): Likewise.
137 (gfc_trans_omp_taskloop): Likewise.
138 (gfc_trans_omp_master_masked_taskloop): Likewise.
140 2022-04-29 Thomas Koenig <tkoenig@gcc.gnu.org>
142 * gfortran.texi: Fix exchanged period and letter.
144 2022-04-28 Thomas Koenig <tkoenig@gcc.gnu.org>
146 * gfortran.texi: Mention r16_ieee and r16_ibm.
147 * invoke.texi: Likewise.
149 2022-04-27 Mikael Morin <mikael@gcc.gnu.org>
153 * array.cc (compare_bounds): Use bool as return type.
154 Support non-constant expressions.
155 (gfc_compare_array_spec): Update call to compare_bounds.
157 2022-04-27 Mikael Morin <mikael@gcc.gnu.org>
161 * trans-array.cc (non_negative_strides_array_p): Inline variable
162 orig_decl and merge nested if conditions. Add condition to not
163 recurse if the next argument is the same as the current.
165 2022-04-25 Jakub Jelinek <jakub@redhat.com>
166 Thomas Schwinge <thomas@codesourcery.com>
169 * trans-openmp.cc (gfc_trans_oacc_construct): Wrap construct body
170 in an extra BIND_EXPR.
172 2022-04-24 Mikael Morin <mikael@gcc.gnu.org>
173 Jakub Jelinek <jakub@redhat.com>
176 * interface.cc (gfc_compare_derived_types): Support comparing
177 unlimited polymorphic fake symbols. Recursively compare class
178 descriptor types and virtual table types.
179 * resolve.cc (resolve_fl_derived): Add type to the types list
180 on unlimited polymorphic short-circuit return.
182 2022-04-22 Mikael Morin <mikael@gcc.gnu.org>
183 Richard Biener <rguenther@suse.de>
186 * trans.h (gfc_build_array_ref): Add non_negative_offset
188 * trans.cc (gfc_build_array_ref): Ditto. Use pointer arithmetic
189 if non_negative_offset is false.
190 * trans-expr.cc (gfc_conv_substring): Set flag in the call to
192 * trans-array.cc (gfc_get_cfi_dim_item,
193 gfc_conv_descriptor_dimension): Same.
194 (build_array_ref): Decide on whether to set the flag and update
196 (gfc_conv_scalarized_array_ref): Same. New argument tmp_array.
197 (gfc_conv_tmp_array_ref): Update call to
198 gfc_conv_scalarized_ref.
199 (non_negative_strides_array_p): New function.
201 2022-04-22 Mikael Morin <mikael@gcc.gnu.org>
204 * trans-array.cc (gfc_conv_expr_descriptor): Use
205 gfc_conv_tmp_array_ref.
207 2022-04-22 Mikael Morin <mikael@gcc.gnu.org>
210 * trans-io.cc: Add handling for the case where the array
211 is referenced using pointer arithmetic.
213 2022-04-22 Mikael Morin <mikael@gcc.gnu.org>
216 * trans-expr.cc: Pre-evaluate src and dest to variables
219 2022-04-21 Fritz Reese <foreese@gcc.gnu.org>
222 * trans-expr.cc (gfc_conv_union_initializer): Pass vec* by reference.
224 2022-04-13 Tobias Burnus <tobias@codesourcery.com>
227 * match.cc (match_exit_cycle): Handle missing OMP LOOP, DO and SIMD
228 directives in the EXIT/CYCLE diagnostic.
230 2022-04-10 Harald Anlauf <anlauf@gmx.de>
233 * array.cc (match_subscript): Reject assumed size coarray
234 specification with missing lower bound.
235 * resolve.cc (resolve_allocate_expr): Fix logic for checking
236 allocate-coshape-spec in ALLOCATE statement.
238 2022-04-05 Sandra Loosemore <sandra@codesourcery.com>
240 * trans-openmp.cc (gfc_split_omp_clauses): Fix mask for
241 EXEC_OMP_MASKED_TASKLOOP.
243 2022-04-05 Harald Anlauf <anlauf@gmx.de>
246 * arith.cc (eval_intrinsic): Avoid NULL pointer dereference.
247 (gfc_zero_size_array): Likewise.
249 2022-04-05 Harald Anlauf <anlauf@gmx.de>
250 Steven G. Kargl <kargl@gcc.gnu.org>
253 * intrinsic.cc (gfc_is_intrinsic): When a symbol refers to a
254 RECURSIVE procedure, it cannot be an INTRINSIC.
256 2022-03-30 Harald Anlauf <anlauf@gmx.de>
259 * check.cc (gfc_check_associated): Avoid NULL pointer dereference.
261 2022-03-29 Harald Anlauf <anlauf@gmx.de>
262 Steven G. Kargl <kargl@gcc.gnu.org>
265 * resolve.cc (resolve_elemental_actual): Avoid NULL pointer
268 2022-03-29 Harald Anlauf <anlauf@gmx.de>
271 * resolve.cc (resolve_structure_cons): Reject pointer assignments
272 of character with different lengths in structure constructor.
274 2022-03-25 Jakub Jelinek <jakub@redhat.com>
277 * trans-array.cc (gfc_conv_array_initializer): If TYPE_MAX_VALUE is
278 smaller than TYPE_MIN_VALUE (i.e. empty array), ignore the
279 initializer; if TYPE_MIN_VALUE is equal to TYPE_MAX_VALUE, use just
280 the TYPE_MIN_VALUE as index instead of RANGE_EXPR.
282 2022-03-23 Tobias Burnus <tobias@codesourcery.com>
285 * scanner.cc (add_path_to_list): Don't append '/' to the
287 (open_included_file): Use '/' in concatenating path + file name.
288 * module.cc (gzopen_included_file_1): Likewise.
290 2022-03-22 Harald Anlauf <anlauf@gmx.de>
293 * simplify.cc (gfc_simplify_cshift): Ensure temporary holding
294 source array stride is initialized.
296 2022-03-19 Mikael Morin <mikael@gcc.gnu.org>
300 * parse.cc (parse_associate): Use a new distinct gfc_charlen if the
301 copied type has one whose length is not known to be constant.
302 * resolve.cc (resolve_assoc_var): Reset charlen if it’s shared with
303 the associate target regardless of the expression type.
304 Don’t reinitialize charlen if it’s deferred.
306 2022-03-18 Tobias Burnus <tobias@codesourcery.com>
309 * trans-openmp.cc (gfc_omp_clause_copy_ctor, gfc_omp_clause_dtor):
310 Only privatize pointer for associate names.
312 2022-03-18 Tobias Burnus <tobias@codesourcery.com>
315 * openmp.cc (resolve_omp_clauses): Improve associate-name diagnostic
316 for select type/rank.
318 2022-03-11 Tobias Burnus <tobias@codesourcery.com>
320 * trans-openmp.cc (gfc_trans_omp_clauses, gfc_omp_finish_clause):
321 Obtain size for mapping only if allocatable array is allocated.
323 2022-03-09 Harald Anlauf <anlauf@gmx.de>
326 * expr.cc (find_array_section): Avoid NULL pointer dereference on
327 invalid array section.
329 2022-03-09 Tobias Burnus <tobias@codesourcery.com>
331 * trans-intrinsic.cc (gfc_conv_intrinsic_sizeof): Fix CLASS handling.
333 2022-03-08 Tobias Burnus <tobias@codesourcery.com>
336 * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Handle NULL
339 2022-03-08 Harald Anlauf <anlauf@gmx.de>
342 * frontend-passes.cc (optimize_minmaxloc): Do not attempt
343 frontend-optimization of MINLOC/MAXLOC for character arrays, as
344 there is no suitable code yet for inline expansion.
346 2022-03-07 Tobias Burnus <tobias@codesourcery.com>
350 * trans-expr.cc (conv_parent_component_references): Fix comment;
352 (gfc_maybe_dereference_var): Avoid d referencing a nonpointer.
354 2022-03-07 Tobias Burnus <tobias@codesourcery.com>
356 * array.cc (gfc_ref_dimen_size): Fix comment typo.
357 * dump-parse-tree.cc (gfc_dump_c_prototypes): Likewise.
358 * frontend-passes.cc (cfe_code): Likewise.
359 * gfortran.texi: Likewise.
360 * resolve.cc (generate_component_assignments): Likewise.
361 * simplify.cc (gfc_simplify_this_image): Likewise.
362 * trans-expr.cc (trans_scalar_class_assign,
363 gfc_maybe_dereference_var): Likewise.
364 * intrinsic.texi: Remove word duplication.
365 * invoke.texi: Likewise.
367 2022-03-07 Jakub Jelinek <jakub@redhat.com>
369 * trans-expr.cc: Fix up duplicated word issue in a comment.
370 * gfortran.h: Likewise.
371 * scanner.cc: Likewise.
373 2022-03-07 Martin Liska <mliska@suse.cz>
375 * intrinsic.cc (gfc_is_intrinsic): Remove asterisk from error
378 2022-03-07 Martin Liska <mliska@suse.cz>
381 * intrinsic.cc (gfc_is_intrinsic): Put
382 quote to a proper place.
384 2022-03-03 Kwok Cheung Yeung <kcy@codesourcery.com>
387 * openmp.cc (gfc_match_omp_detach): Move check for type of event
389 (resolve_omp_clauses) ...here. Also check that the event handle is
390 not an array, or an array access or structure element access.
392 2022-03-02 Harald Anlauf <anlauf@gmx.de>
395 * resolve.cc (resolve_structure_cons): Avoid NULL pointer
396 dereference when there is no valid component.
398 2022-02-24 Harald Anlauf <anlauf@gmx.de>
401 * dump-parse-tree.cc (show_code_node): Dump QUIET specifier when
403 * match.cc (gfc_match_stopcode): Implement parsing of F2018 QUIET
404 specifier. F2018 stopcodes may have non-default integer kind.
405 * resolve.cc (gfc_resolve_code): Add checks for QUIET argument.
406 * trans-stmt.cc (gfc_trans_stop): Pass QUIET specifier to call of
409 2022-02-22 Harald Anlauf <anlauf@gmx.de>
412 * resolve.cc (resolve_structure_cons): Skip shape check if shape
413 of constructor cannot be determined at compile time.
415 2022-02-20 Harald Anlauf <anlauf@gmx.de>
418 * data.cc (gfc_assign_data_value): If a variable in a data
419 statement has the POINTER attribute, check for allowed initial
420 data target that is compatible with pointer assignment.
421 * gfortran.h (IS_POINTER): New macro.
423 2022-02-15 Tobias Burnus <tobias@codesourcery.com>
425 * trans-openmp.cc (gfc_trans_omp_depobj): Fix to alloc/ptr dummy
428 2022-02-15 Tobias Burnus <tobias@codesourcery.com>
430 * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
431 Depend on the proper addr, for ptr/alloc depend on pointee.
433 2022-02-14 Harald Anlauf <anlauf@gmx.de>
436 * expr.cc (find_array_section): Replace assertion by error
437 recovery when encountering bad array constructor.
439 2022-02-13 Mikael Morin <mikael@gcc.gnu.org>
442 * resolve.cc (resolve_assoc_var): Also create a new character
443 length for non-dummy associate targets.
444 * trans-stmt.cc (trans_associate_var): Initialize character length
445 even if no temporary is used for the associate variable.
447 2022-02-10 Roger Sayle <roger@nextmovesoftware.com>
448 Tobias Burnus <tobias@codesourcery.com>
450 * trans-common.cc (GFC_EQUIV_FMT): New macro respecting the
451 target's NO_DOT_IN_LABEL and NO_DOLLAR_IN_LABEL preferences.
452 (build_equiv_decl): Use GFC_EQUIV_FMT here.
454 2022-02-10 Tobias Burnus <tobias@codesourcery.com>
457 * openmp.cc (resolve_omp_atomic): Defer extra-code assert after
460 2022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
462 * dump-parse-tree.cc (show_omp_clauses): Added OMP_LIST_HAS_DEVICE_ADDR
464 * gfortran.h: Added OMP_LIST_HAS_DEVICE_ADDR.
465 * openmp.cc (enum omp_mask2): Added OMP_CLAUSE_HAS_DEVICE_ADDR.
466 (gfc_match_omp_clauses): Parse HAS_DEVICE_ADDR clause.
467 (resolve_omp_clauses): Same.
468 * trans-openmp.cc (gfc_trans_omp_variable_list): Added
469 OMP_LIST_HAS_DEVICE_ADDR case.
470 (gfc_trans_omp_clauses): Firstprivatize of array descriptors.
472 2022-02-09 Harald Anlauf <anlauf@gmx.de>
475 * arith.cc (reduce_binary_ac): When reducing binary expressions,
476 try simplification. Handle case of empty constructor.
477 (reduce_binary_ca): Likewise.
479 2022-02-03 Harald Anlauf <anlauf@gmx.de>
482 * check.cc (gfc_calculate_transfer_sizes): Checks for case when
483 storage size of SOURCE is greater than zero while the storage size
484 of MOLD is zero and MOLD is an array shall not depend on SIZE.
486 2022-02-03 Jakub Jelinek <jakub@redhat.com>
489 * openmp.cc (is_scalar_intrinsic_expr): If must_be_var && conv_ok
490 and expr is conversion, verify it is a conversion from EXPR_VARIABLE
491 with non-NULL symtree. Check ->block->next before dereferencing it.
493 2022-02-01 Harald Anlauf <anlauf@gmx.de>
496 * simplify.cc (gfc_simplify_eoshift): Avoid NULL pointer
497 dereference when shape is not set.
499 2022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
502 * trans-array.cc (structure_alloc_comps): Prevent descriptor
503 stacking for non-array data; do not broadcast caf-tokens.
504 * trans-intrinsic.cc (conv_co_collective): Prevent generation
505 of unused descriptor.
507 2022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
510 2022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
513 * trans-array.cc (structure_alloc_comps): Prevent descriptor
514 stacking for non-array data; do not broadcast caf-tokens.
515 * trans-intrinsic.cc (conv_co_collective): Prevent generation
516 of unused descriptor.
518 2022-01-28 Andre Vehreschild <vehre@gcc.gnu.org>
521 * trans-array.cc (structure_alloc_comps): Prevent descriptor
522 stacking for non-array data; do not broadcast caf-tokens.
523 * trans-intrinsic.cc (conv_co_collective): Prevent generation
524 of unused descriptor.
526 2022-01-27 Harald Anlauf <anlauf@gmx.de>
529 * expr.cc (gfc_copy_expr): Convert internal representation of
530 string to wide char in value only for default character kind.
531 * target-memory.cc (interpret_array): Pass flag for conversion of
533 (gfc_target_interpret_expr): Likewise.
535 2022-01-27 Harald Anlauf <anlauf@gmx.de>
538 * trans-intrinsic.cc (conv_intrinsic_image_status): Convert result
539 to resulting (default) integer type.
540 (conv_intrinsic_team_number): Likewise.
541 (gfc_conv_intrinsic_popcnt_poppar): Likewise.
543 2022-01-25 Harald Anlauf <anlauf@gmx.de>
546 * check.cc (gfc_calculate_transfer_sizes): Fix checking of arrays
547 passed as MOLD argument to the TRANSFER intrinsic for having
550 2022-01-25 Harald Anlauf <anlauf@gmx.de>
553 * check.cc (gfc_check_norm2): Check that optional argument DIM is
555 (gfc_check_parity): Likewise.
557 2022-01-24 Jakub Jelinek <jakub@redhat.com>
559 * lang.opt (fconvert=): Add EnumSet property and mention also
560 r16_ieee and r16_ibm arguments.
561 (big-endian, little-endian, native, swap): Add Set(1) property.
562 (r16_ieee, r16_ibm): New EnumValue entries with Set(2) property.
563 * trans-types.cc (gfc_init_kinds): Emit gfc_fatal_error for
564 -fconvert=r16_ieee or -fconvert=r16_ibm when R16_IEEE <=> R16_IBM
565 conversions aren't supported.
567 2022-01-22 Harald Anlauf <anlauf@gmx.de>
570 * simplify.cc (gfc_simplify_transfer): Ensure that the result
571 typespec is set up for TRANSFER with MOLD of type CHARACTER
572 including character length even if the result is a zero-sized
575 2022-01-20 Sandra Loosemore <sandra@codesourcery.com>
579 * gfortran.h (struct gfc_namespace) Add omp_affinity_iterator
581 * dump-parse-tree.cc (show_iterator): Use it.
582 * openmp.cc (gfc_match_iterator): Likewise.
583 (resolve_omp_clauses): Likewise.
584 * trans-decl.cc (gfc_finish_var_decl): Likewise.
585 * trans-openmp.cc (handle_iterator): Likewise.
587 2022-01-18 Harald Anlauf <anlauf@gmx.de>
590 * array.cc (gfc_expand_constructor): Handle zero-sized array
593 2022-01-17 Martin Liska <mliska@suse.cz>
595 * check.cc (gfc_check_all_any): Rename .c names to .cc.
596 * class.cc (find_intrinsic_vtab): Likewise.
597 * config-lang.in: Likewise.
598 * cpp.cc (cpp_define_builtins): Likewise.
599 * data.cc (get_array_index): Likewise.
600 * decl.cc (match_clist_expr): Likewise.
601 (get_proc_name): Likewise.
602 (gfc_verify_c_interop_param): Likewise.
603 (gfc_get_pdt_instance): Likewise.
604 (gfc_match_formal_arglist): Likewise.
605 (gfc_get_type_attr_spec): Likewise.
606 * dependency.cc: Likewise.
607 * error.cc (gfc_format_decoder): Likewise.
608 * expr.cc (check_restricted): Likewise.
609 (gfc_build_default_init_expr): Likewise.
610 * f95-lang.cc: Likewise.
611 * gfc-internals.texi: Likewise.
612 * gfortran.h (enum match): Likewise.
613 (enum procedure_type): Likewise.
614 (enum oacc_routine_lop): Likewise.
615 (gfc_get_pdt_instance): Likewise.
616 (gfc_end_source_files): Likewise.
617 (gfc_mpz_set_hwi): Likewise.
618 (gfc_get_option_string): Likewise.
619 (gfc_find_sym_in_expr): Likewise.
620 (gfc_errors_to_warnings): Likewise.
621 (gfc_real_4_kind): Likewise.
622 (gfc_free_finalizer): Likewise.
623 (gfc_sym_get_dummy_args): Likewise.
624 (gfc_check_intrinsic_standard): Likewise.
625 (gfc_free_case_list): Likewise.
626 (gfc_resolve_oacc_routines): Likewise.
627 (gfc_check_vardef_context): Likewise.
628 (gfc_free_association_list): Likewise.
629 (gfc_implicit_pure_function): Likewise.
630 (gfc_ref_dimen_size): Likewise.
631 (gfc_compare_actual_formal): Likewise.
632 (gfc_resolve_wait): Likewise.
633 (gfc_dt_upper_string): Likewise.
634 (gfc_generate_module_code): Likewise.
635 (gfc_delete_bbt): Likewise.
637 (gfc_build_block_ns): Likewise.
638 (gfc_dep_difference): Likewise.
639 (gfc_invalid_null_arg): Likewise.
640 (gfc_is_finalizable): Likewise.
641 (gfc_fix_implicit_pure): Likewise.
642 (gfc_is_size_zero_array): Likewise.
643 (gfc_is_reallocatable_lhs): Likewise.
644 * gfortranspec.cc: Likewise.
645 * interface.cc (compare_actual_expr): Likewise.
646 * intrinsic.cc (add_functions): Likewise.
647 * iresolve.cc (gfc_resolve_matmul): Likewise.
648 (gfc_resolve_alarm_sub): Likewise.
649 * iso-c-binding.def: Likewise.
650 * lang-specs.h: Likewise.
651 * libgfortran.h (GFC_STDERR_UNIT_NUMBER): Likewise.
652 * match.cc (gfc_match_label): Likewise.
653 (gfc_match_symbol): Likewise.
654 (match_derived_type_spec): Likewise.
655 (copy_ts_from_selector_to_associate): Likewise.
656 * match.h (gfc_match_call): Likewise.
657 (gfc_get_common): Likewise.
658 (gfc_match_omp_end_single): Likewise.
659 (gfc_match_volatile): Likewise.
660 (gfc_match_bind_c): Likewise.
661 (gfc_match_literal_constant): Likewise.
662 (gfc_match_init_expr): Likewise.
663 (gfc_match_array_constructor): Likewise.
664 (gfc_match_end_interface): Likewise.
665 (gfc_match_print): Likewise.
666 (gfc_match_expr): Likewise.
667 * matchexp.cc (next_operator): Likewise.
668 * mathbuiltins.def: Likewise.
669 * module.cc (free_true_name): Likewise.
670 * openmp.cc (gfc_resolve_omp_parallel_blocks): Likewise.
671 (gfc_omp_save_and_clear_state): Likewise.
672 * parse.cc (parse_union): Likewise.
673 (set_syms_host_assoc): Likewise.
674 * resolve.cc (resolve_actual_arglist): Likewise.
675 (resolve_elemental_actual): Likewise.
676 (check_host_association): Likewise.
677 (resolve_typebound_function): Likewise.
678 (resolve_typebound_subroutine): Likewise.
679 (gfc_resolve_expr): Likewise.
680 (resolve_assoc_var): Likewise.
681 (resolve_typebound_procedures): Likewise.
682 (resolve_equivalence_derived): Likewise.
683 * simplify.cc (simplify_bound): Likewise.
684 * symbol.cc (gfc_set_default_type): Likewise.
685 (gfc_add_ext_attribute): Likewise.
686 * target-memory.cc (gfc_target_interpret_expr): Likewise.
687 * target-memory.h (gfc_target_interpret_expr): Likewise.
688 * trans-array.cc (gfc_get_cfi_dim_sm): Likewise.
689 (gfc_conv_shift_descriptor_lbound): Likewise.
690 (gfc_could_be_alias): Likewise.
691 (gfc_get_dataptr_offset): Likewise.
692 * trans-const.cc: Likewise.
693 * trans-decl.cc (trans_function_start): Likewise.
694 (gfc_trans_deferred_vars): Likewise.
695 (generate_local_decl): Likewise.
696 (gfc_generate_function_code): Likewise.
697 * trans-expr.cc (gfc_vptr_size_get): Likewise.
698 (gfc_trans_class_array_init_assign): Likewise.
699 (POWI_TABLE_SIZE): Likewise.
700 (gfc_conv_procedure_call): Likewise.
701 (gfc_trans_arrayfunc_assign): Likewise.
702 * trans-intrinsic.cc (gfc_conv_intrinsic_len): Likewise.
703 (gfc_conv_intrinsic_loc): Likewise.
704 (conv_intrinsic_event_query): Likewise.
705 * trans-io.cc (gfc_build_st_parameter): Likewise.
706 * trans-openmp.cc (gfc_omp_check_optional_argument): Likewise.
707 (gfc_omp_unshare_expr_r): Likewise.
708 (gfc_trans_omp_array_section): Likewise.
709 (gfc_trans_omp_clauses): Likewise.
710 * trans-stmt.cc (trans_associate_var): Likewise.
711 (gfc_trans_deallocate): Likewise.
712 * trans-stmt.h (gfc_trans_class_init_assign): Likewise.
713 (gfc_trans_deallocate): Likewise.
714 (gfc_trans_oacc_declare): Likewise.
715 * trans-types.cc: Likewise.
716 * trans-types.h (enum gfc_packed): Likewise.
717 * trans.cc (N_): Likewise.
718 (trans_code): Likewise.
719 * trans.h (gfc_build_compare_string): Likewise.
720 (gfc_conv_expr_type): Likewise.
721 (gfc_trans_deferred_vars): Likewise.
722 (getdecls): Likewise.
723 (gfc_get_array_descr_info): Likewise.
724 (gfc_omp_firstprivatize_type_sizes): Likewise.
727 2022-01-17 Martin Liska <mliska@suse.cz>
729 * arith.c: Moved to...
731 * array.c: Moved to...
735 * check.c: Moved to...
737 * class.c: Moved to...
739 * constructor.c: Moved to...
740 * constructor.cc: ...here.
741 * convert.c: Moved to...
742 * convert.cc: ...here.
745 * data.c: Moved to...
747 * decl.c: Moved to...
749 * dependency.c: Moved to...
750 * dependency.cc: ...here.
751 * dump-parse-tree.c: Moved to...
752 * dump-parse-tree.cc: ...here.
753 * error.c: Moved to...
755 * expr.c: Moved to...
757 * f95-lang.c: Moved to...
758 * f95-lang.cc: ...here.
759 * frontend-passes.c: Moved to...
760 * frontend-passes.cc: ...here.
761 * gfortranspec.c: Moved to...
762 * gfortranspec.cc: ...here.
763 * interface.c: Moved to...
764 * interface.cc: ...here.
765 * intrinsic.c: Moved to...
766 * intrinsic.cc: ...here.
769 * iresolve.c: Moved to...
770 * iresolve.cc: ...here.
771 * match.c: Moved to...
773 * matchexp.c: Moved to...
774 * matchexp.cc: ...here.
775 * misc.c: Moved to...
777 * module.c: Moved to...
778 * module.cc: ...here.
779 * openmp.c: Moved to...
780 * openmp.cc: ...here.
781 * options.c: Moved to...
782 * options.cc: ...here.
783 * parse.c: Moved to...
785 * primary.c: Moved to...
786 * primary.cc: ...here.
787 * resolve.c: Moved to...
788 * resolve.cc: ...here.
789 * scanner.c: Moved to...
790 * scanner.cc: ...here.
791 * simplify.c: Moved to...
792 * simplify.cc: ...here.
795 * symbol.c: Moved to...
796 * symbol.cc: ...here.
797 * target-memory.c: Moved to...
798 * target-memory.cc: ...here.
799 * trans-array.c: Moved to...
800 * trans-array.cc: ...here.
801 * trans-common.c: Moved to...
802 * trans-common.cc: ...here.
803 * trans-const.c: Moved to...
804 * trans-const.cc: ...here.
805 * trans-decl.c: Moved to...
806 * trans-decl.cc: ...here.
807 * trans-expr.c: Moved to...
808 * trans-expr.cc: ...here.
809 * trans-intrinsic.c: Moved to...
810 * trans-intrinsic.cc: ...here.
811 * trans-io.c: Moved to...
812 * trans-io.cc: ...here.
813 * trans-openmp.c: Moved to...
814 * trans-openmp.cc: ...here.
815 * trans-stmt.c: Moved to...
816 * trans-stmt.cc: ...here.
817 * trans-types.c: Moved to...
818 * trans-types.cc: ...here.
819 * trans.c: Moved to...
822 2022-01-17 Andrew Stubbs <ams@codesourcery.com>
824 * openmp.c (gfc_match_omp_requires): Don't "sorry" dynamic_allocators.
826 2022-01-15 Harald Anlauf <anlauf@gmx.de>
829 * target-memory.c (gfc_interpret_character): Result length is
830 in bytes and thus depends on the character kind.
831 * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Compute correct
832 string length for the result of the TRANSFER intrinsic and for
833 temporaries for the different character kinds.
835 2022-01-14 Harald Anlauf <anlauf@gmx.de>
838 * intrinsic.c: Do not check formal argument type when checking
839 arguments of intrinsics for alternate return specifiers.
841 2022-01-14 Harald Anlauf <anlauf@gmx.de>
844 * expr.c (gfc_simplify_expr): Adjust logic for when to scalarize a
845 call of an intrinsic which may have been overloaded.
847 2022-01-13 Hafiz Abid Qadeer <abidh@codesourcery.com>
849 * dump-parse-tree.c (show_omp_clauses): Handle OMP_LIST_ALLOCATE.
850 * gfortran.h (OMP_LIST_ALLOCATE): New enum value.
851 * openmp.c (enum omp_mask1): Add OMP_CLAUSE_ALLOCATE.
852 (gfc_match_omp_clauses): Handle OMP_CLAUSE_ALLOCATE
853 (OMP_PARALLEL_CLAUSES, OMP_DO_CLAUSES, OMP_SECTIONS_CLAUSES)
854 (OMP_TASK_CLAUSES, OMP_TASKLOOP_CLAUSES, OMP_TARGET_CLAUSES)
855 (OMP_TEAMS_CLAUSES, OMP_DISTRIBUTE_CLAUSES)
856 (OMP_SINGLE_CLAUSES): Add OMP_CLAUSE_ALLOCATE.
857 (OMP_TASKGROUP_CLAUSES): New.
858 (gfc_match_omp_taskgroup): Use OMP_TASKGROUP_CLAUSES instead of
859 OMP_CLAUSE_TASK_REDUCTION.
860 (resolve_omp_clauses): Handle OMP_LIST_ALLOCATE.
861 (resolve_omp_do): Avoid warning when loop iteration variable is
863 * trans-openmp.c (gfc_trans_omp_clauses): Handle translation of
865 (gfc_split_omp_clauses): Update for OMP_LIST_ALLOCATE.
867 2022-01-13 Harald Anlauf <anlauf@gmx.de>
870 * primary.c (gfc_match_structure_constructor): Recover from errors
871 that occurred while checking for a valid structure constructor in
874 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
876 * libgfortran.h (unit_convert): Add flags.
878 2022-01-11 Jakub Jelinek <jakub@redhat.com>
880 * trans-types.c (gfc_init_kinds): When setting abi_kind to 17, if not
881 targetting glibc 2.32 or later and -fbuilding-libgfortran, set
882 gfc_real16_is_float128 and c_float128 in gfc_real_kinds.
883 (gfc_build_real_type): Don't set c_long_double if c_float128 is
885 * trans-intrinsic.c (builtin_decl_for_precision): Don't use
886 long_double_built_in if gfc_real16_is_float128 and
887 long_double_type_node == gfc_float128_type_node.
888 * lang.opt (fbuilding-libgfortran): New undocumented option.
890 2022-01-11 Jakub Jelinek <jakub@redhat.com>
892 * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl): Use
895 2022-01-11 Jakub Jelinek <jakub@redhat.com>
897 * trans-io.c (transfer_array_desc): Pass abi kind instead of kind
900 2022-01-11 Jakub Jelinek <jakub@redhat.com>
902 * trans-io.c (transfer_namelist_element): Use gfc_type_abi_kind,
904 (transfer_expr): Use gfc_type_abi_kind, use *REAL128* APIs even
907 2022-01-11 Jakub Jelinek <jakub@redhat.com>
909 * gfortran.h (gfc_real_info): Add abi_kind member.
910 (gfc_type_abi_kind): Declare.
911 * trans-types.c (gfc_init_kinds): Initialize abi_kind.
912 * intrinsic.c (gfc_type_abi_kind): New function.
914 * iresolve.c (resolve_transformational, gfc_resolve_abs,
915 gfc_resolve_char_achar, gfc_resolve_acos, gfc_resolve_acosh,
916 gfc_resolve_aimag, gfc_resolve_and, gfc_resolve_aint, gfc_resolve_all,
917 gfc_resolve_anint, gfc_resolve_any, gfc_resolve_asin,
918 gfc_resolve_asinh, gfc_resolve_atan, gfc_resolve_atanh,
919 gfc_resolve_atan2, gfc_resolve_bessel_n2, gfc_resolve_ceiling,
920 gfc_resolve_cmplx, gfc_resolve_complex, gfc_resolve_cos,
921 gfc_resolve_cosh, gfc_resolve_count, gfc_resolve_dble,
922 gfc_resolve_dim, gfc_resolve_dot_product, gfc_resolve_dprod,
923 gfc_resolve_exp, gfc_resolve_floor, gfc_resolve_hypot,
924 gfc_resolve_int, gfc_resolve_int2, gfc_resolve_int8, gfc_resolve_long,
925 gfc_resolve_log, gfc_resolve_log10, gfc_resolve_logical,
926 gfc_resolve_matmul, gfc_resolve_minmax, gfc_resolve_maxloc,
927 gfc_resolve_findloc, gfc_resolve_maxval, gfc_resolve_merge,
928 gfc_resolve_minloc, gfc_resolve_minval, gfc_resolve_mod,
929 gfc_resolve_modulo, gfc_resolve_nearest, gfc_resolve_or,
930 gfc_resolve_real, gfc_resolve_realpart, gfc_resolve_reshape,
931 gfc_resolve_sign, gfc_resolve_sin, gfc_resolve_sinh, gfc_resolve_sqrt,
932 gfc_resolve_tan, gfc_resolve_tanh, gfc_resolve_transpose,
933 gfc_resolve_trigd, gfc_resolve_xor, gfc_resolve_random_number):
935 * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
937 2022-01-10 Paul Thomas <pault@gcc.gnu.org>
940 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Allow unlimited
941 polymorphic actual argument passed to assumed type formal.
943 2022-01-09 Harald Anlauf <anlauf@gmx.de>
946 * simplify.c (gfc_simplify_maskr): Check validity of argument 'I'
948 (gfc_simplify_maskl): Likewise.
950 2022-01-09 Harald Anlauf <anlauf@gmx.de>
953 * expr.c (gfc_check_pointer_assign): For pointer initialization
954 targets, check that subscripts and substring indices in
955 specifications are constant expressions.
957 2022-01-09 Mikael Morin <mikael@gcc.gnu.org>
960 * trans-array.c (arg_evaluated_for_scalarization): Add MASKL, MASKR,
961 SCAN and VERIFY to the list of intrinsics whose KIND argument is to be
964 2022-01-07 Sandra Loosemore <sandra@codesourcery.com>
967 * trans-intrinsic.c (gfc_conv_intrinsic_size): Make size_var
968 actually be a variable and fix surrounding code.
970 2022-01-06 Steve Kargl <kargl@gcc.gnu.org>
971 Sandra Loosemore <sandra@codesourcery.com>
974 * interface.c (argument_rank_mismatch): Replace incorrect assertion
977 2022-01-05 Sandra Loosemore <sandra@codesourcery.com>
980 * decl.c (gfc_match_char_spec): Suppress errors around call
981 to gfc_reduce_init_expr.
982 * error.c (gfc_query_suppress_errors): New.
983 * gfortran.h (gfc_query_suppress_errors): Declare.
984 * symbol.c (gfc_set_default_type): Check gfc_query_suppress_errors.
986 2022-01-03 Sandra Loosemore <sandra@codesourcery.com>
989 * expr.c (gfc_is_simply_contiguous): Make it smarter about
991 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Do not generate
992 copy loops for array expressions that are not "variables" (lvalues).
994 2022-01-03 Jakub Jelinek <jakub@redhat.com>
996 * gfortranspec.c (lang_specific_driver): Update copyright notice
998 * gfc-internals.texi: Bump @copying's copyright year.
999 * gfortran.texi: Ditto.
1000 * intrinsic.texi: Ditto.
1001 * invoke.texi: Ditto.
1004 Copyright (C) 2022 Free Software Foundation, Inc.
1006 Copying and distribution of this file, with or without modification,
1007 are permitted in any medium without royalty provided the copyright
1008 notice and this notice are preserved.