Daily bump.
[official-gcc.git] / gcc / fortran / ChangeLog
blobf02b65fbc591543e422055c7d191b1714903b81f
1 2022-07-14  Harald Anlauf  <anlauf@gmx.de>
2             Steven G. Kargl  <kargl@gcc.gnu.org>
4         PR fortran/106209
5         * decl.cc (add_init_expr_to_sym): Handle bad initializers for
6         implied-shape arrays.
8 2022-07-12  Harald Anlauf  <anlauf@gmx.de>
10         PR fortran/106049
11         * simplify.cc (is_constant_array_expr): A non-zero-sized constant
12         array shall have a non-empty constructor.  When the constructor is
13         empty or missing, treat as non-constant.
15 2022-07-04  Tobias Burnus  <tobias@codesourcery.com>
16             Jakub Jelinek  <jakub@redhat.com>
18         * gfortran.h (gfc_omp_namelist): Update by creating 'linear' struct,
19         move 'linear_op' as 'op' to id and add 'old_modifier' to it.
20         * dump-parse-tree.cc (show_omp_namelist): Update accordingly.
21         * module.cc (mio_omp_declare_simd): Likewise.
22         * trans-openmp.cc (gfc_trans_omp_clauses): Likewise.
23         * openmp.cc (resolve_omp_clauses): Likewise; accept new-style
24         'val' modifier with do/simd.
25         (gfc_match_omp_clauses): Handle OpenMP 5.2 linear clause syntax.
27 2022-07-04  Tobias Burnus  <tobias@codesourcery.com>
28             Chung-Lin Tang  <cltang@codesourcery.com>
29             Thomas Schwinge  <thomas@codesourcery.com>
31         * openmp.cc (gfc_match_omp_requires): Remove sorry.
32         * parse.cc (decode_omp_directive): Don't regard 'declare target'
33         as target usage for 'omp requires'; add more flags to
34         omp_requires_mask.
36 2022-07-01  Tobias Burnus  <tobias@codesourcery.com>
38         * dump-parse-tree.cc (show_omp_namelist): For the map-type,
39         also handle the always modifer and release/delete.
40         * openmp.cc (resolve_omp_clauses): Accept tofrom
41         map-type modifier for target enter/exit data,
42         but use 'to' / 'from' internally.
44 2022-06-30  Harald Anlauf  <anlauf@gmx.de>
45             Steven G. Kargl  <kargl@gcc.gnu.org>
47         PR fortran/103137
48         PR fortran/103138
49         PR fortran/103693
50         PR fortran/105243
51         * decl.cc (gfc_match_data_decl): Reject CLASS entity declaration
52         when it is given the PARAMETER attribute.
54 2022-06-29  Harald Anlauf  <anlauf@gmx.de>
55             Steven G. Kargl  <kargl@gcc.gnu.org>
57         PR fortran/106121
58         * simplify.cc (gfc_simplify_extends_type_of): Do not attempt to
59         simplify when one of the arguments is a CLASS variable that was
60         not properly declared.
62 2022-06-28  Jakub Jelinek  <jakub@redhat.com>
64         * gfortran.h (gfc_real_info): Add use_iec_60559 bitfield.
65         * trans-types.h (gfc_real16_use_iec_60559): Declare.
66         * trans-types.cc (gfc_real16_use_iec_60559): Define.
67         (gfc_init_kinds): When building powerpc64le-linux libgfortran
68         on glibc 2.26 to 2.31, set gfc_real16_use_iec_60559 and
69         use_iec_60559.
70         (gfc_build_real_type): Set gfc_real16_use_iec_60559 and use_iec_60559
71         on glibc 2.26 or later.
72         * trans-intrinsic.cc (gfc_build_intrinsic_lib_fndecls): Adjust
73         comment.  Handle gfc_real16_use_iec_60559.
74         (gfc_get_intrinsic_lib_fndecl): Handle use_iec_60559.
76 2022-06-26  Harald Anlauf  <anlauf@gmx.de>
78         PR fortran/105691
79         * simplify.cc (gfc_simplify_index): Replace old simplification
80         code by the equivalent of the runtime library implementation.  Use
81         HOST_WIDE_INT instead of int for string index, length variables.
83 2022-06-26  Harald Anlauf  <anlauf@gmx.de>
85         PR fortran/105954
86         * decl.cc (variable_decl): Adjust upper bounds for explicit-shape
87         specs with constant bound expressions to ensure non-negative
88         extents.
90 2022-06-24  Harald Anlauf  <anlauf@gmx.de>
92         PR fortran/105813
93         * check.cc (gfc_check_unpack): Try to simplify MASK argument to
94         UNPACK so that checking of the VECTOR argument can work when MASK
95         is a variable.
97 2022-06-18  Harald Anlauf  <anlauf@gmx.de>
99         PR fortran/105986
100         * simplify.cc (gfc_simplify_btest): Add check for POS argument.
101         (gfc_simplify_ibclr): Add check for POS argument.
102         (gfc_simplify_ibits): Add check for POS and LEN arguments.
103         (gfc_simplify_ibset): Add check for POS argument.
105 2022-06-08  Tobias Burnus  <tobias@codesourcery.com>
107         * openmp.cc (gfc_match_omp_clauses): Check also parent namespace
108         for 'requires reverse_offload'.
110 2022-06-07  Jakub Jelinek  <jakub@redhat.com>
112         * trans-openmp.cc (gfc_trans_omp_clauses): Set
113         OMP_CLAUSE_LINEAR_OLD_LINEAR_MODIFIER on OMP_CLAUSE_LINEAR
114         clauses unconditionally for now.
116 2022-06-03  Tobias Burnus  <tobias@codesourcery.com>
118         * openmp.cc (OMP_SCOPE_CLAUSES): Add firstprivate and allocate.
120 2022-06-02  David Malcolm  <dmalcolm@redhat.com>
122         * f95-lang.cc (gfc_get_sarif_source_language): New.
123         (LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): Redefine.
125 2022-05-31  Jason Merrill  <jason@redhat.com>
127         * Make-lang.in (fortran.tags): Look at *.cc.
129 2022-05-30  Harald Anlauf  <anlauf@gmx.de>
131         PR fortran/91300
132         * libgfortran.h: Define new error code LIBERROR_NO_MEMORY.
133         * trans-stmt.cc (gfc_trans_allocate): Generate code for setting
134         ERRMSG depending on result of STAT result of ALLOCATE.
135         * trans.cc (gfc_allocate_using_malloc): Use STAT value of
136         LIBERROR_NO_MEMORY in case of failed malloc.
138 2022-05-28  Tobias Burnus  <tobias@codesourcery.com>
140         * dump-parse-tree.cc (show_omp_clauses): Handle OMP_LIST_ENTER.
141         * gfortran.h: Add OMP_LIST_ENTER.
142         * openmp.cc (enum omp_mask2, OMP_DECLARE_TARGET_CLAUSES): Add
143         OMP_CLAUSE_ENTER.
144         (gfc_match_omp_clauses, gfc_match_omp_declare_target,
145         resolve_omp_clauses): Handle 'enter' clause.
147 2022-05-27  Tobias Burnus  <tobias@codesourcery.com>
148             Chung-Lin Tang  <cltang@codesourcery.com>
150         * openmp.cc (gfc_check_omp_requires): Fix clause name in error.
152 2022-05-24  Tobias Burnus  <tobias@codesourcery.com>
154         PR c/105378
155         * openmp.cc (gfc_match_omp_taskwait): Accept nowait.
157 2022-05-23  Tobias Burnus  <tobias@codesourcery.com>
159         PR fortran/104949
160         * f95-lang.cc (LANG_HOOKS_OMP_ARRAY_SIZE): Redefine.
161         * trans-openmp.cc (gfc_omp_array_size): New.
162         (gfc_trans_omp_variable_list): Never turn has_device_addr
163         to firstprivate.
164         * trans.h (gfc_omp_array_size): New.
166 2022-05-18  Tobias Burnus  <tobias@codesourcery.com>
168         * gfortran.h (enum gfc_omp_depend_op): Add OMP_DEPEND_INOUTSET.
169         (gfc_omp_clauses): Enlarge ENUM_BITFIELD.
170         * dump-parse-tree.cc (show_omp_namelist, show_omp_clauses): Handle
171         'inoutset' depend modifier.
172         * openmp.cc (gfc_match_omp_clauses, gfc_match_omp_depobj): Likewise.
173         * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
174         Likewise.
176 2022-05-17  Tobias Burnus  <tobias@codesourcery.com>
178         * dump-parse-tree.cc (show_omp_namelist): Handle omp_all_memory.
179         * openmp.cc (gfc_match_omp_variable_list, gfc_match_omp_depend_sink,
180         gfc_match_omp_clauses, resolve_omp_clauses): Likewise.
181         * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
182         Likewise.
183         * resolve.cc (resolve_symbol): Reject it as symbol.
185 2022-05-16  Martin Liska  <mliska@suse.cz>
187         * frontend-passes.cc (gfc_code_walker): Use ARRAY_SIZE.
188         * openmp.cc (gfc_match_omp_context_selector_specification): Likewise.
189         * trans-intrinsic.cc (conv_intrinsic_ieee_builtin): Likewise.
190         * trans-types.cc (gfc_get_array_descr_info): Likewise.
192 2022-05-13  Tobias Burnus  <tobias@codesourcery.com>
194         * trans-openmp.cc (gfc_trans_omp_clauses): When mapping nondescriptor
195         array sections, use GOMP_MAP_FIRSTPRIVATE_POINTER instead of
196         GOMP_MAP_POINTER for the pointer attachment.
198 2022-05-11  Harald Anlauf  <anlauf@gmx.de>
199             Steven G. Kargl  <kargl@gcc.gnu.org>
201         PR fortran/105230
202         * expr.cc (find_array_section): Correct logic to avoid NULL
203         pointer dereference on invalid array section.
205 2022-05-10  Harald Anlauf  <anlauf@gmx.de>
207         PR fortran/105526
208         * resolve.cc (check_team): New.
209         (gfc_resolve_code): Add checks for arguments to coarray intrinsics
210         FORM TEAM, CHANGE TEAM, and SYNC TEAM.
212 2022-05-09  Harald Anlauf  <anlauf@gmx.de>
214         PR fortran/105501
215         * match.cc (gfc_match_if): Adjust patterns used for matching.
216         (gfc_match_select_rank): Likewise.
217         * parse.cc (decode_statement): Likewise.
219 2022-05-05  Sandra Loosemore  <sandra@codesourcery.com>
221         * gfortran.h (struct gfc_omp_clauses): Add non_rectangular bit.
222         * openmp.cc (is_outer_iteration_variable): New function.
223         (expr_is_invariant): New function.
224         (bound_expr_is_canonical): New function.
225         (resolve_omp_do): Replace existing non-rectangularity error with
226         check for canonical form and setting non_rectangular bit.
227         * trans-openmp.cc (gfc_trans_omp_do): Transfer non_rectangular
228         flag to generated tree structure.
230 2022-05-02  Sandra Loosemore  <sandra@codesourcery.com>
232         * trans-openmp.cc (gfc_trans_omp_critical): Set location on OMP
233         tree node.
234         (gfc_trans_omp_do): Likewise.
235         (gfc_trans_omp_masked): Likewise.
236         (gfc_trans_omp_do_simd): Likewise.
237         (gfc_trans_omp_scope): Likewise.
238         (gfc_trans_omp_taskgroup): Likewise.
239         (gfc_trans_omp_taskwait): Likewise.
240         (gfc_trans_omp_distribute): Likewise.
241         (gfc_trans_omp_taskloop): Likewise.
242         (gfc_trans_omp_master_masked_taskloop): Likewise.
244 2022-04-29  Thomas Koenig  <tkoenig@gcc.gnu.org>
246         * gfortran.texi: Fix exchanged period and letter.
248 2022-04-28  Thomas Koenig  <tkoenig@gcc.gnu.org>
250         * gfortran.texi: Mention r16_ieee and r16_ibm.
251         * invoke.texi: Likewise.
253 2022-04-27  Mikael Morin  <mikael@gcc.gnu.org>
255         PR fortran/103662
256         PR fortran/105379
257         * array.cc (compare_bounds): Use bool as return type.
258         Support non-constant expressions.
259         (gfc_compare_array_spec): Update call to compare_bounds.
261 2022-04-27  Mikael Morin  <mikael@gcc.gnu.org>
263         PR fortran/102043
264         PR fortran/105381
265         * trans-array.cc (non_negative_strides_array_p): Inline variable
266         orig_decl and merge nested if conditions.  Add condition to not
267         recurse if the next argument is the same as the current.
269 2022-04-25  Jakub Jelinek  <jakub@redhat.com>
270             Thomas Schwinge  <thomas@codesourcery.com>
272         PR fortran/104717
273         * trans-openmp.cc (gfc_trans_oacc_construct): Wrap construct body
274         in an extra BIND_EXPR.
276 2022-04-24  Mikael Morin  <mikael@gcc.gnu.org>
277             Jakub Jelinek  <jakub@redhat.com>
279         PR fortran/103662
280         * interface.cc (gfc_compare_derived_types): Support comparing
281         unlimited polymorphic fake symbols.  Recursively compare class
282         descriptor types and virtual table types.
283         * resolve.cc (resolve_fl_derived): Add type to the types list
284         on unlimited polymorphic short-circuit return.
286 2022-04-22  Mikael Morin  <mikael@gcc.gnu.org>
287             Richard Biener  <rguenther@suse.de>
289         PR fortran/102043
290         * trans.h (gfc_build_array_ref): Add non_negative_offset
291         argument.
292         * trans.cc (gfc_build_array_ref): Ditto. Use pointer arithmetic
293         if non_negative_offset is false.
294         * trans-expr.cc (gfc_conv_substring): Set flag in the call to
295         gfc_build_array_ref.
296         * trans-array.cc (gfc_get_cfi_dim_item,
297         gfc_conv_descriptor_dimension): Same.
298         (build_array_ref): Decide on whether to set the flag and update
299         the call.
300         (gfc_conv_scalarized_array_ref): Same.  New argument tmp_array.
301         (gfc_conv_tmp_array_ref): Update call to
302         gfc_conv_scalarized_ref.
303         (non_negative_strides_array_p): New function.
305 2022-04-22  Mikael Morin  <mikael@gcc.gnu.org>
307         PR fortran/102043
308         * trans-array.cc (gfc_conv_expr_descriptor): Use
309         gfc_conv_tmp_array_ref.
311 2022-04-22  Mikael Morin  <mikael@gcc.gnu.org>
313         PR fortran/102043
314         * trans-io.cc: Add handling for the case where the array
315         is referenced using pointer arithmetic.
317 2022-04-22  Mikael Morin  <mikael@gcc.gnu.org>
319         PR fortran/102043
320         * trans-expr.cc: Pre-evaluate src and dest to variables
321         before using them.
323 2022-04-21  Fritz Reese  <foreese@gcc.gnu.org>
325         PR fortran/105310
326         * trans-expr.cc (gfc_conv_union_initializer): Pass vec* by reference.
328 2022-04-13  Tobias Burnus  <tobias@codesourcery.com>
330         PR fortran/105242
331         * match.cc (match_exit_cycle): Handle missing OMP LOOP, DO and SIMD
332         directives in the EXIT/CYCLE diagnostic.
334 2022-04-10  Harald Anlauf  <anlauf@gmx.de>
336         PR fortran/105184
337         * array.cc (match_subscript): Reject assumed size coarray
338         specification with missing lower bound.
339         * resolve.cc (resolve_allocate_expr): Fix logic for checking
340         allocate-coshape-spec in ALLOCATE statement.
342 2022-04-05  Sandra Loosemore  <sandra@codesourcery.com>
344         * trans-openmp.cc (gfc_split_omp_clauses): Fix mask for
345         EXEC_OMP_MASKED_TASKLOOP.
347 2022-04-05  Harald Anlauf  <anlauf@gmx.de>
349         PR fortran/104210
350         * arith.cc (eval_intrinsic): Avoid NULL pointer dereference.
351         (gfc_zero_size_array): Likewise.
353 2022-04-05  Harald Anlauf  <anlauf@gmx.de>
354             Steven G. Kargl  <kargl@gcc.gnu.org>
356         PR fortran/105138
357         * intrinsic.cc (gfc_is_intrinsic): When a symbol refers to a
358         RECURSIVE procedure, it cannot be an INTRINSIC.
360 2022-03-30  Harald Anlauf  <anlauf@gmx.de>
362         PR fortran/100892
363         * check.cc (gfc_check_associated): Avoid NULL pointer dereference.
365 2022-03-29  Harald Anlauf  <anlauf@gmx.de>
366             Steven G. Kargl  <kargl@gcc.gnu.org>
368         PR fortran/104571
369         * resolve.cc (resolve_elemental_actual): Avoid NULL pointer
370         dereference.
372 2022-03-29  Harald Anlauf  <anlauf@gmx.de>
374         PR fortran/50549
375         * resolve.cc (resolve_structure_cons): Reject pointer assignments
376         of character with different lengths in structure constructor.
378 2022-03-25  Jakub Jelinek  <jakub@redhat.com>
380         PR fortran/103691
381         * trans-array.cc (gfc_conv_array_initializer): If TYPE_MAX_VALUE is
382         smaller than TYPE_MIN_VALUE (i.e. empty array), ignore the
383         initializer; if TYPE_MIN_VALUE is equal to TYPE_MAX_VALUE, use just
384         the TYPE_MIN_VALUE as index instead of RANGE_EXPR.
386 2022-03-23  Tobias Burnus  <tobias@codesourcery.com>
388         PR fortran/103560
389         * scanner.cc (add_path_to_list): Don't append '/' to the
390         save include path.
391         (open_included_file): Use '/' in concatenating path + file name.
392         * module.cc (gzopen_included_file_1): Likewise.
394 2022-03-22  Harald Anlauf  <anlauf@gmx.de>
396         PR fortran/104999
397         * simplify.cc (gfc_simplify_cshift): Ensure temporary holding
398         source array stride is initialized.
400 2022-03-19  Mikael Morin  <mikael@gcc.gnu.org>
402         PR fortran/104228
403         PR fortran/104570
404         * parse.cc (parse_associate): Use a new distinct gfc_charlen if the
405         copied type has one whose length is not known to be constant.
406         * resolve.cc (resolve_assoc_var): Reset charlen if it’s shared with
407         the associate target regardless of the expression type.
408         Don’t reinitialize charlen if it’s deferred.
410 2022-03-18  Tobias Burnus  <tobias@codesourcery.com>
412         PR fortran/103039
413         * trans-openmp.cc (gfc_omp_clause_copy_ctor, gfc_omp_clause_dtor):
414         Only privatize pointer for associate names.
416 2022-03-18  Tobias Burnus  <tobias@codesourcery.com>
418         PR fortran/103039
419         * openmp.cc (resolve_omp_clauses): Improve associate-name diagnostic
420         for select type/rank.
422 2022-03-11  Tobias Burnus  <tobias@codesourcery.com>
424         * trans-openmp.cc (gfc_trans_omp_clauses, gfc_omp_finish_clause):
425         Obtain size for mapping only if allocatable array is allocated.
427 2022-03-09  Harald Anlauf  <anlauf@gmx.de>
429         PR fortran/104849
430         * expr.cc (find_array_section): Avoid NULL pointer dereference on
431         invalid array section.
433 2022-03-09  Tobias Burnus  <tobias@codesourcery.com>
435         * trans-intrinsic.cc (gfc_conv_intrinsic_sizeof): Fix CLASS handling.
437 2022-03-08  Tobias Burnus  <tobias@codesourcery.com>
439         PR fortran/104126
440         * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Handle NULL
441         without MOLD.
443 2022-03-08  Harald Anlauf  <anlauf@gmx.de>
445         PR fortran/104811
446         * frontend-passes.cc (optimize_minmaxloc): Do not attempt
447         frontend-optimization of MINLOC/MAXLOC for character arrays, as
448         there is no suitable code yet for inline expansion.
450 2022-03-07  Tobias Burnus  <tobias@codesourcery.com>
452         PR fortran/99585
453         PR fortran/104430
454         * trans-expr.cc (conv_parent_component_references): Fix comment;
455         simplify comparison.
456         (gfc_maybe_dereference_var): Avoid d referencing a nonpointer.
458 2022-03-07  Tobias Burnus  <tobias@codesourcery.com>
460         * array.cc (gfc_ref_dimen_size): Fix comment typo.
461         * dump-parse-tree.cc (gfc_dump_c_prototypes): Likewise.
462         * frontend-passes.cc (cfe_code): Likewise.
463         * gfortran.texi: Likewise.
464         * resolve.cc (generate_component_assignments): Likewise.
465         * simplify.cc (gfc_simplify_this_image): Likewise.
466         * trans-expr.cc (trans_scalar_class_assign,
467         gfc_maybe_dereference_var): Likewise.
468         * intrinsic.texi: Remove word duplication.
469         * invoke.texi: Likewise.
471 2022-03-07  Jakub Jelinek  <jakub@redhat.com>
473         * trans-expr.cc: Fix up duplicated word issue in a comment.
474         * gfortran.h: Likewise.
475         * scanner.cc: Likewise.
477 2022-03-07  Martin Liska  <mliska@suse.cz>
479         * intrinsic.cc (gfc_is_intrinsic): Remove asterisk from error
480         message.
482 2022-03-07  Martin Liska  <mliska@suse.cz>
484         PR translation/90148
485         * intrinsic.cc (gfc_is_intrinsic): Put
486         quote to a proper place.
488 2022-03-03  Kwok Cheung Yeung  <kcy@codesourcery.com>
490         PR fortran/104131
491         * openmp.cc (gfc_match_omp_detach): Move check for type of event
492         handle to...
493         (resolve_omp_clauses) ...here.  Also check that the event handle is
494         not an array, or an array access or structure element access.
496 2022-03-02  Harald Anlauf  <anlauf@gmx.de>
498         PR fortran/104573
499         * resolve.cc (resolve_structure_cons): Avoid NULL pointer
500         dereference when there is no valid component.
502 2022-02-24  Harald Anlauf  <anlauf@gmx.de>
504         PR fortran/84519
505         * dump-parse-tree.cc (show_code_node): Dump QUIET specifier when
506         present.
507         * match.cc (gfc_match_stopcode): Implement parsing of F2018 QUIET
508         specifier.  F2018 stopcodes may have non-default integer kind.
509         * resolve.cc (gfc_resolve_code): Add checks for QUIET argument.
510         * trans-stmt.cc (gfc_trans_stop): Pass QUIET specifier to call of
511         library function.
513 2022-02-22  Harald Anlauf  <anlauf@gmx.de>
515         PR fortran/104619
516         * resolve.cc (resolve_structure_cons): Skip shape check if shape
517         of constructor cannot be determined at compile time.
519 2022-02-20  Harald Anlauf  <anlauf@gmx.de>
521         PR fortran/77693
522         * data.cc (gfc_assign_data_value): If a variable in a data
523         statement has the POINTER attribute, check for allowed initial
524         data target that is compatible with pointer assignment.
525         * gfortran.h (IS_POINTER): New macro.
527 2022-02-15  Tobias Burnus  <tobias@codesourcery.com>
529         * trans-openmp.cc (gfc_trans_omp_depobj): Fix to alloc/ptr dummy
530         and for c_ptr.
532 2022-02-15  Tobias Burnus  <tobias@codesourcery.com>
534         * trans-openmp.cc (gfc_trans_omp_clauses, gfc_trans_omp_depobj):
535         Depend on the proper addr, for ptr/alloc depend on pointee.
537 2022-02-14  Harald Anlauf  <anlauf@gmx.de>
539         PR fortran/104211
540         * expr.cc (find_array_section): Replace assertion by error
541         recovery when encountering bad array constructor.
543 2022-02-13  Mikael Morin  <mikael@gcc.gnu.org>
545         PR fortran/104228
546         * resolve.cc (resolve_assoc_var): Also create a new character
547         length for non-dummy associate targets.
548         * trans-stmt.cc (trans_associate_var): Initialize character length
549         even if no temporary is used for the associate variable.
551 2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>
552             Tobias Burnus  <tobias@codesourcery.com>
554         * trans-common.cc (GFC_EQUIV_FMT): New macro respecting the
555         target's NO_DOT_IN_LABEL and NO_DOLLAR_IN_LABEL preferences.
556         (build_equiv_decl): Use GFC_EQUIV_FMT here.
558 2022-02-10  Tobias Burnus  <tobias@codesourcery.com>
560         PR fortran/104329
561         * openmp.cc (resolve_omp_atomic): Defer extra-code assert after
562         other diagnostics.
564 2022-02-10  Marcel Vollweiler  <marcel@codesourcery.com>
566         * dump-parse-tree.cc (show_omp_clauses): Added OMP_LIST_HAS_DEVICE_ADDR
567         case.
568         * gfortran.h: Added OMP_LIST_HAS_DEVICE_ADDR.
569         * openmp.cc (enum omp_mask2): Added OMP_CLAUSE_HAS_DEVICE_ADDR.
570         (gfc_match_omp_clauses): Parse HAS_DEVICE_ADDR clause.
571         (resolve_omp_clauses): Same.
572         * trans-openmp.cc (gfc_trans_omp_variable_list): Added
573         OMP_LIST_HAS_DEVICE_ADDR case.
574         (gfc_trans_omp_clauses): Firstprivatize of array descriptors.
576 2022-02-09  Harald Anlauf  <anlauf@gmx.de>
578         PR fortran/66193
579         * arith.cc (reduce_binary_ac): When reducing binary expressions,
580         try simplification.  Handle case of empty constructor.
581         (reduce_binary_ca): Likewise.
583 2022-02-03  Harald Anlauf  <anlauf@gmx.de>
585         PR fortran/104311
586         * check.cc (gfc_calculate_transfer_sizes): Checks for case when
587         storage size of SOURCE is greater than zero while the storage size
588         of MOLD is zero and MOLD is an array shall not depend on SIZE.
590 2022-02-03  Jakub Jelinek  <jakub@redhat.com>
592         PR fortran/104328
593         * openmp.cc (is_scalar_intrinsic_expr): If must_be_var && conv_ok
594         and expr is conversion, verify it is a conversion from EXPR_VARIABLE
595         with non-NULL symtree.  Check ->block->next before dereferencing it.
597 2022-02-01  Harald Anlauf  <anlauf@gmx.de>
599         PR fortran/104331
600         * simplify.cc (gfc_simplify_eoshift): Avoid NULL pointer
601         dereference when shape is not set.
603 2022-01-28  Andre Vehreschild  <vehre@gcc.gnu.org>
605         PR fortran/103790
606         * trans-array.cc (structure_alloc_comps): Prevent descriptor
607         stacking for non-array data; do not broadcast caf-tokens.
608         * trans-intrinsic.cc (conv_co_collective): Prevent generation
609         of unused descriptor.
611 2022-01-28  Andre Vehreschild  <vehre@gcc.gnu.org>
613         Revert:
614         2022-01-28  Andre Vehreschild  <vehre@gcc.gnu.org>
616         PR fortran/103790
617         * trans-array.cc (structure_alloc_comps): Prevent descriptor
618         stacking for non-array data; do not broadcast caf-tokens.
619         * trans-intrinsic.cc (conv_co_collective): Prevent generation
620         of unused descriptor.
622 2022-01-28  Andre Vehreschild  <vehre@gcc.gnu.org>
624         PR fortran/103790
625         * trans-array.cc (structure_alloc_comps): Prevent descriptor
626         stacking for non-array data; do not broadcast caf-tokens.
627         * trans-intrinsic.cc (conv_co_collective): Prevent generation
628         of unused descriptor.
630 2022-01-27  Harald Anlauf  <anlauf@gmx.de>
632         PR fortran/104128
633         * expr.cc (gfc_copy_expr): Convert internal representation of
634         string to wide char in value only for default character kind.
635         * target-memory.cc (interpret_array): Pass flag for conversion of
636         wide chars.
637         (gfc_target_interpret_expr): Likewise.
639 2022-01-27  Harald Anlauf  <anlauf@gmx.de>
641         PR fortran/84784
642         * trans-intrinsic.cc (conv_intrinsic_image_status): Convert result
643         to resulting (default) integer type.
644         (conv_intrinsic_team_number): Likewise.
645         (gfc_conv_intrinsic_popcnt_poppar): Likewise.
647 2022-01-25  Harald Anlauf  <anlauf@gmx.de>
649         PR fortran/104227
650         * check.cc (gfc_calculate_transfer_sizes): Fix checking of arrays
651         passed as MOLD argument to the TRANSFER intrinsic for having
652         storage size zero.
654 2022-01-25  Harald Anlauf  <anlauf@gmx.de>
656         PR fortran/104212
657         * check.cc (gfc_check_norm2): Check that optional argument DIM is
658         scalar.
659         (gfc_check_parity): Likewise.
661 2022-01-24  Jakub Jelinek  <jakub@redhat.com>
663         * lang.opt (fconvert=): Add EnumSet property and mention also
664         r16_ieee and r16_ibm arguments.
665         (big-endian, little-endian, native, swap): Add Set(1) property.
666         (r16_ieee, r16_ibm): New EnumValue entries with Set(2) property.
667         * trans-types.cc (gfc_init_kinds): Emit gfc_fatal_error for
668         -fconvert=r16_ieee or -fconvert=r16_ibm when R16_IEEE <=> R16_IBM
669         conversions aren't supported.
671 2022-01-22  Harald Anlauf  <anlauf@gmx.de>
673         PR fortran/104127
674         * simplify.cc (gfc_simplify_transfer): Ensure that the result
675         typespec is set up for TRANSFER with MOLD of type CHARACTER
676         including character length even if the result is a zero-sized
677         array.
679 2022-01-20  Sandra Loosemore  <sandra@codesourcery.com>
681         PR fortran/103695
682         PR fortran/102621
683         * gfortran.h (struct gfc_namespace) Add omp_affinity_iterator
684         field.
685         * dump-parse-tree.cc (show_iterator): Use it.
686         * openmp.cc (gfc_match_iterator): Likewise.
687         (resolve_omp_clauses): Likewise.
688         * trans-decl.cc (gfc_finish_var_decl): Likewise.
689         * trans-openmp.cc (handle_iterator): Likewise.
691 2022-01-18  Harald Anlauf  <anlauf@gmx.de>
693         PR fortran/103692
694         * array.cc (gfc_expand_constructor): Handle zero-sized array
695         constructors.
697 2022-01-17  Martin Liska  <mliska@suse.cz>
699         * check.cc (gfc_check_all_any): Rename .c names to .cc.
700         * class.cc (find_intrinsic_vtab): Likewise.
701         * config-lang.in: Likewise.
702         * cpp.cc (cpp_define_builtins): Likewise.
703         * data.cc (get_array_index): Likewise.
704         * decl.cc (match_clist_expr): Likewise.
705         (get_proc_name): Likewise.
706         (gfc_verify_c_interop_param): Likewise.
707         (gfc_get_pdt_instance): Likewise.
708         (gfc_match_formal_arglist): Likewise.
709         (gfc_get_type_attr_spec): Likewise.
710         * dependency.cc: Likewise.
711         * error.cc (gfc_format_decoder): Likewise.
712         * expr.cc (check_restricted): Likewise.
713         (gfc_build_default_init_expr): Likewise.
714         * f95-lang.cc: Likewise.
715         * gfc-internals.texi: Likewise.
716         * gfortran.h (enum match): Likewise.
717         (enum procedure_type): Likewise.
718         (enum oacc_routine_lop): Likewise.
719         (gfc_get_pdt_instance): Likewise.
720         (gfc_end_source_files): Likewise.
721         (gfc_mpz_set_hwi): Likewise.
722         (gfc_get_option_string): Likewise.
723         (gfc_find_sym_in_expr): Likewise.
724         (gfc_errors_to_warnings): Likewise.
725         (gfc_real_4_kind): Likewise.
726         (gfc_free_finalizer): Likewise.
727         (gfc_sym_get_dummy_args): Likewise.
728         (gfc_check_intrinsic_standard): Likewise.
729         (gfc_free_case_list): Likewise.
730         (gfc_resolve_oacc_routines): Likewise.
731         (gfc_check_vardef_context): Likewise.
732         (gfc_free_association_list): Likewise.
733         (gfc_implicit_pure_function): Likewise.
734         (gfc_ref_dimen_size): Likewise.
735         (gfc_compare_actual_formal): Likewise.
736         (gfc_resolve_wait): Likewise.
737         (gfc_dt_upper_string): Likewise.
738         (gfc_generate_module_code): Likewise.
739         (gfc_delete_bbt): Likewise.
740         (debug): Likewise.
741         (gfc_build_block_ns): Likewise.
742         (gfc_dep_difference): Likewise.
743         (gfc_invalid_null_arg): Likewise.
744         (gfc_is_finalizable): Likewise.
745         (gfc_fix_implicit_pure): Likewise.
746         (gfc_is_size_zero_array): Likewise.
747         (gfc_is_reallocatable_lhs): Likewise.
748         * gfortranspec.cc: Likewise.
749         * interface.cc (compare_actual_expr): Likewise.
750         * intrinsic.cc (add_functions): Likewise.
751         * iresolve.cc (gfc_resolve_matmul): Likewise.
752         (gfc_resolve_alarm_sub): Likewise.
753         * iso-c-binding.def: Likewise.
754         * lang-specs.h: Likewise.
755         * libgfortran.h (GFC_STDERR_UNIT_NUMBER): Likewise.
756         * match.cc (gfc_match_label): Likewise.
757         (gfc_match_symbol): Likewise.
758         (match_derived_type_spec): Likewise.
759         (copy_ts_from_selector_to_associate): Likewise.
760         * match.h (gfc_match_call): Likewise.
761         (gfc_get_common): Likewise.
762         (gfc_match_omp_end_single): Likewise.
763         (gfc_match_volatile): Likewise.
764         (gfc_match_bind_c): Likewise.
765         (gfc_match_literal_constant): Likewise.
766         (gfc_match_init_expr): Likewise.
767         (gfc_match_array_constructor): Likewise.
768         (gfc_match_end_interface): Likewise.
769         (gfc_match_print): Likewise.
770         (gfc_match_expr): Likewise.
771         * matchexp.cc (next_operator): Likewise.
772         * mathbuiltins.def: Likewise.
773         * module.cc (free_true_name): Likewise.
774         * openmp.cc (gfc_resolve_omp_parallel_blocks): Likewise.
775         (gfc_omp_save_and_clear_state): Likewise.
776         * parse.cc (parse_union): Likewise.
777         (set_syms_host_assoc): Likewise.
778         * resolve.cc (resolve_actual_arglist): Likewise.
779         (resolve_elemental_actual): Likewise.
780         (check_host_association): Likewise.
781         (resolve_typebound_function): Likewise.
782         (resolve_typebound_subroutine): Likewise.
783         (gfc_resolve_expr): Likewise.
784         (resolve_assoc_var): Likewise.
785         (resolve_typebound_procedures): Likewise.
786         (resolve_equivalence_derived): Likewise.
787         * simplify.cc (simplify_bound): Likewise.
788         * symbol.cc (gfc_set_default_type): Likewise.
789         (gfc_add_ext_attribute): Likewise.
790         * target-memory.cc (gfc_target_interpret_expr): Likewise.
791         * target-memory.h (gfc_target_interpret_expr): Likewise.
792         * trans-array.cc (gfc_get_cfi_dim_sm): Likewise.
793         (gfc_conv_shift_descriptor_lbound): Likewise.
794         (gfc_could_be_alias): Likewise.
795         (gfc_get_dataptr_offset): Likewise.
796         * trans-const.cc: Likewise.
797         * trans-decl.cc (trans_function_start): Likewise.
798         (gfc_trans_deferred_vars): Likewise.
799         (generate_local_decl): Likewise.
800         (gfc_generate_function_code): Likewise.
801         * trans-expr.cc (gfc_vptr_size_get): Likewise.
802         (gfc_trans_class_array_init_assign): Likewise.
803         (POWI_TABLE_SIZE): Likewise.
804         (gfc_conv_procedure_call): Likewise.
805         (gfc_trans_arrayfunc_assign): Likewise.
806         * trans-intrinsic.cc (gfc_conv_intrinsic_len): Likewise.
807         (gfc_conv_intrinsic_loc): Likewise.
808         (conv_intrinsic_event_query): Likewise.
809         * trans-io.cc (gfc_build_st_parameter): Likewise.
810         * trans-openmp.cc (gfc_omp_check_optional_argument): Likewise.
811         (gfc_omp_unshare_expr_r): Likewise.
812         (gfc_trans_omp_array_section): Likewise.
813         (gfc_trans_omp_clauses): Likewise.
814         * trans-stmt.cc (trans_associate_var): Likewise.
815         (gfc_trans_deallocate): Likewise.
816         * trans-stmt.h (gfc_trans_class_init_assign): Likewise.
817         (gfc_trans_deallocate): Likewise.
818         (gfc_trans_oacc_declare): Likewise.
819         * trans-types.cc: Likewise.
820         * trans-types.h (enum gfc_packed): Likewise.
821         * trans.cc (N_): Likewise.
822         (trans_code): Likewise.
823         * trans.h (gfc_build_compare_string): Likewise.
824         (gfc_conv_expr_type): Likewise.
825         (gfc_trans_deferred_vars): Likewise.
826         (getdecls): Likewise.
827         (gfc_get_array_descr_info): Likewise.
828         (gfc_omp_firstprivatize_type_sizes): Likewise.
829         (GTY): Likewise.
831 2022-01-17  Martin Liska  <mliska@suse.cz>
833         * arith.c: Moved to...
834         * arith.cc: ...here.
835         * array.c: Moved to...
836         * array.cc: ...here.
837         * bbt.c: Moved to...
838         * bbt.cc: ...here.
839         * check.c: Moved to...
840         * check.cc: ...here.
841         * class.c: Moved to...
842         * class.cc: ...here.
843         * constructor.c: Moved to...
844         * constructor.cc: ...here.
845         * convert.c: Moved to...
846         * convert.cc: ...here.
847         * cpp.c: Moved to...
848         * cpp.cc: ...here.
849         * data.c: Moved to...
850         * data.cc: ...here.
851         * decl.c: Moved to...
852         * decl.cc: ...here.
853         * dependency.c: Moved to...
854         * dependency.cc: ...here.
855         * dump-parse-tree.c: Moved to...
856         * dump-parse-tree.cc: ...here.
857         * error.c: Moved to...
858         * error.cc: ...here.
859         * expr.c: Moved to...
860         * expr.cc: ...here.
861         * f95-lang.c: Moved to...
862         * f95-lang.cc: ...here.
863         * frontend-passes.c: Moved to...
864         * frontend-passes.cc: ...here.
865         * gfortranspec.c: Moved to...
866         * gfortranspec.cc: ...here.
867         * interface.c: Moved to...
868         * interface.cc: ...here.
869         * intrinsic.c: Moved to...
870         * intrinsic.cc: ...here.
871         * io.c: Moved to...
872         * io.cc: ...here.
873         * iresolve.c: Moved to...
874         * iresolve.cc: ...here.
875         * match.c: Moved to...
876         * match.cc: ...here.
877         * matchexp.c: Moved to...
878         * matchexp.cc: ...here.
879         * misc.c: Moved to...
880         * misc.cc: ...here.
881         * module.c: Moved to...
882         * module.cc: ...here.
883         * openmp.c: Moved to...
884         * openmp.cc: ...here.
885         * options.c: Moved to...
886         * options.cc: ...here.
887         * parse.c: Moved to...
888         * parse.cc: ...here.
889         * primary.c: Moved to...
890         * primary.cc: ...here.
891         * resolve.c: Moved to...
892         * resolve.cc: ...here.
893         * scanner.c: Moved to...
894         * scanner.cc: ...here.
895         * simplify.c: Moved to...
896         * simplify.cc: ...here.
897         * st.c: Moved to...
898         * st.cc: ...here.
899         * symbol.c: Moved to...
900         * symbol.cc: ...here.
901         * target-memory.c: Moved to...
902         * target-memory.cc: ...here.
903         * trans-array.c: Moved to...
904         * trans-array.cc: ...here.
905         * trans-common.c: Moved to...
906         * trans-common.cc: ...here.
907         * trans-const.c: Moved to...
908         * trans-const.cc: ...here.
909         * trans-decl.c: Moved to...
910         * trans-decl.cc: ...here.
911         * trans-expr.c: Moved to...
912         * trans-expr.cc: ...here.
913         * trans-intrinsic.c: Moved to...
914         * trans-intrinsic.cc: ...here.
915         * trans-io.c: Moved to...
916         * trans-io.cc: ...here.
917         * trans-openmp.c: Moved to...
918         * trans-openmp.cc: ...here.
919         * trans-stmt.c: Moved to...
920         * trans-stmt.cc: ...here.
921         * trans-types.c: Moved to...
922         * trans-types.cc: ...here.
923         * trans.c: Moved to...
924         * trans.cc: ...here.
926 2022-01-17  Andrew Stubbs  <ams@codesourcery.com>
928         * openmp.c (gfc_match_omp_requires): Don't "sorry" dynamic_allocators.
930 2022-01-15  Harald Anlauf  <anlauf@gmx.de>
932         PR fortran/83079
933         * target-memory.c (gfc_interpret_character): Result length is
934         in bytes and thus depends on the character kind.
935         * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Compute correct
936         string length for the result of the TRANSFER intrinsic and for
937         temporaries for the different character kinds.
939 2022-01-14  Harald Anlauf  <anlauf@gmx.de>
941         PR fortran/99256
942         * intrinsic.c: Do not check formal argument type when checking
943         arguments of intrinsics for alternate return specifiers.
945 2022-01-14  Harald Anlauf  <anlauf@gmx.de>
947         PR fortran/103782
948         * expr.c (gfc_simplify_expr): Adjust logic for when to scalarize a
949         call of an intrinsic which may have been overloaded.
951 2022-01-13  Hafiz Abid Qadeer  <abidh@codesourcery.com>
953         * dump-parse-tree.c (show_omp_clauses): Handle OMP_LIST_ALLOCATE.
954         * gfortran.h (OMP_LIST_ALLOCATE): New enum value.
955         * openmp.c (enum omp_mask1): Add OMP_CLAUSE_ALLOCATE.
956         (gfc_match_omp_clauses): Handle OMP_CLAUSE_ALLOCATE
957         (OMP_PARALLEL_CLAUSES, OMP_DO_CLAUSES, OMP_SECTIONS_CLAUSES)
958         (OMP_TASK_CLAUSES, OMP_TASKLOOP_CLAUSES, OMP_TARGET_CLAUSES)
959         (OMP_TEAMS_CLAUSES, OMP_DISTRIBUTE_CLAUSES)
960         (OMP_SINGLE_CLAUSES): Add OMP_CLAUSE_ALLOCATE.
961         (OMP_TASKGROUP_CLAUSES): New.
962         (gfc_match_omp_taskgroup): Use OMP_TASKGROUP_CLAUSES instead of
963         OMP_CLAUSE_TASK_REDUCTION.
964         (resolve_omp_clauses): Handle OMP_LIST_ALLOCATE.
965         (resolve_omp_do): Avoid warning when loop iteration variable is
966         in allocate clause.
967         * trans-openmp.c (gfc_trans_omp_clauses): Handle translation of
968         allocate clause.
969         (gfc_split_omp_clauses): Update for OMP_LIST_ALLOCATE.
971 2022-01-13  Harald Anlauf  <anlauf@gmx.de>
973         PR fortran/67804
974         * primary.c (gfc_match_structure_constructor): Recover from errors
975         that occurred while checking for a valid structure constructor in
976         a DATA statement.
978 2022-01-11  Thomas Koenig  <tkoenig@gcc.gnu.org>
980         * libgfortran.h (unit_convert): Add flags.
982 2022-01-11  Jakub Jelinek  <jakub@redhat.com>
984         * trans-types.c (gfc_init_kinds): When setting abi_kind to 17, if not
985         targetting glibc 2.32 or later and -fbuilding-libgfortran, set
986         gfc_real16_is_float128 and c_float128 in gfc_real_kinds.
987         (gfc_build_real_type): Don't set c_long_double if c_float128 is
988         already set.
989         * trans-intrinsic.c (builtin_decl_for_precision): Don't use
990         long_double_built_in if gfc_real16_is_float128 and
991         long_double_type_node == gfc_float128_type_node.
992         * lang.opt (fbuilding-libgfortran): New undocumented option.
994 2022-01-11  Jakub Jelinek  <jakub@redhat.com>
996         * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl): Use
997         gfc_type_abi_kind.
999 2022-01-11  Jakub Jelinek  <jakub@redhat.com>
1001         * trans-io.c (transfer_array_desc): Pass abi kind instead of kind
1002         to libgfortran.
1004 2022-01-11  Jakub Jelinek  <jakub@redhat.com>
1006         * trans-io.c (transfer_namelist_element): Use gfc_type_abi_kind,
1007         formatting fixes.
1008         (transfer_expr): Use gfc_type_abi_kind, use *REAL128* APIs even
1009         for abi_kind == 17.
1011 2022-01-11  Jakub Jelinek  <jakub@redhat.com>
1013         * gfortran.h (gfc_real_info): Add abi_kind member.
1014         (gfc_type_abi_kind): Declare.
1015         * trans-types.c (gfc_init_kinds): Initialize abi_kind.
1016         * intrinsic.c (gfc_type_abi_kind): New function.
1017         (conv_name): Use it.
1018         * iresolve.c (resolve_transformational, gfc_resolve_abs,
1019         gfc_resolve_char_achar, gfc_resolve_acos, gfc_resolve_acosh,
1020         gfc_resolve_aimag, gfc_resolve_and, gfc_resolve_aint, gfc_resolve_all,
1021         gfc_resolve_anint, gfc_resolve_any, gfc_resolve_asin,
1022         gfc_resolve_asinh, gfc_resolve_atan, gfc_resolve_atanh,
1023         gfc_resolve_atan2, gfc_resolve_bessel_n2, gfc_resolve_ceiling,
1024         gfc_resolve_cmplx, gfc_resolve_complex, gfc_resolve_cos,
1025         gfc_resolve_cosh, gfc_resolve_count, gfc_resolve_dble,
1026         gfc_resolve_dim, gfc_resolve_dot_product, gfc_resolve_dprod,
1027         gfc_resolve_exp, gfc_resolve_floor, gfc_resolve_hypot,
1028         gfc_resolve_int, gfc_resolve_int2, gfc_resolve_int8, gfc_resolve_long,
1029         gfc_resolve_log, gfc_resolve_log10, gfc_resolve_logical,
1030         gfc_resolve_matmul, gfc_resolve_minmax, gfc_resolve_maxloc,
1031         gfc_resolve_findloc, gfc_resolve_maxval, gfc_resolve_merge,
1032         gfc_resolve_minloc, gfc_resolve_minval, gfc_resolve_mod,
1033         gfc_resolve_modulo, gfc_resolve_nearest, gfc_resolve_or,
1034         gfc_resolve_real, gfc_resolve_realpart, gfc_resolve_reshape,
1035         gfc_resolve_sign, gfc_resolve_sin, gfc_resolve_sinh, gfc_resolve_sqrt,
1036         gfc_resolve_tan, gfc_resolve_tanh, gfc_resolve_transpose,
1037         gfc_resolve_trigd, gfc_resolve_xor, gfc_resolve_random_number):
1038         Likewise.
1039         * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
1041 2022-01-10  Paul Thomas  <pault@gcc.gnu.org>
1043         PR fortran/103366
1044         * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Allow unlimited
1045         polymorphic actual argument passed to assumed type formal.
1047 2022-01-09  Harald Anlauf  <anlauf@gmx.de>
1049         PR fortran/103777
1050         * simplify.c (gfc_simplify_maskr): Check validity of argument 'I'
1051         before simplifying.
1052         (gfc_simplify_maskl): Likewise.
1054 2022-01-09  Harald Anlauf  <anlauf@gmx.de>
1056         PR fortran/101762
1057         * expr.c (gfc_check_pointer_assign): For pointer initialization
1058         targets, check that subscripts and substring indices in
1059         specifications are constant expressions.
1061 2022-01-09  Mikael Morin  <mikael@gcc.gnu.org>
1063         PR fortran/103789
1064         * trans-array.c (arg_evaluated_for_scalarization): Add MASKL, MASKR,
1065         SCAN and VERIFY to the list of intrinsics whose KIND argument is to be
1066         ignored.
1068 2022-01-07  Sandra Loosemore  <sandra@codesourcery.com>
1070         PR fortran/103898
1071         * trans-intrinsic.c (gfc_conv_intrinsic_size): Make size_var
1072         actually be a variable and fix surrounding code.
1074 2022-01-06  Steve Kargl  <kargl@gcc.gnu.org>
1075             Sandra Loosemore  <sandra@codesourcery.com>
1077         PR fortran/103287
1078         * interface.c (argument_rank_mismatch): Replace incorrect assertion
1079         with return.
1081 2022-01-05  Sandra Loosemore  <sandra@codesourcery.com>
1083         PR fortran/103258
1084         * decl.c (gfc_match_char_spec): Suppress errors around call
1085         to gfc_reduce_init_expr.
1086         * error.c (gfc_query_suppress_errors): New.
1087         * gfortran.h (gfc_query_suppress_errors): Declare.
1088         * symbol.c (gfc_set_default_type): Check gfc_query_suppress_errors.
1090 2022-01-03  Sandra Loosemore  <sandra@codesourcery.com>
1092         PR fortran/103390
1093         * expr.c (gfc_is_simply_contiguous): Make it smarter about
1094         function calls.
1095         * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Do not generate
1096         copy loops for array expressions that are not "variables" (lvalues).
1098 2022-01-03  Jakub Jelinek  <jakub@redhat.com>
1100         * gfortranspec.c (lang_specific_driver): Update copyright notice
1101         dates.
1102         * gfc-internals.texi: Bump @copying's copyright year.
1103         * gfortran.texi: Ditto.
1104         * intrinsic.texi: Ditto.
1105         * invoke.texi: Ditto.
1108 Copyright (C) 2022 Free Software Foundation, Inc.
1110 Copying and distribution of this file, with or without modification,
1111 are permitted in any medium without royalty provided the copyright
1112 notice and this notice are preserved.