]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/fortran/ChangeLog
99a399abc719e46012974a0422a1fd467520b6a8
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
1 2019-06-12 Steven G. Kargl <kargl@gcc.gnu.org>
2
3 PR fortran/68544
4 * resolve.c (is_dt_name): New function to compare symbol name against
5 list of derived types.
6 (resolve_actual_arglist): Use it to find wrong code.
7
8 2019-06-13 Steven G. Kargl <kargl@gcc.gnu.org>
9
10 PR fortran/89344
11 * expr.c (gfc_check_vardef_context): Check for INTENT(IN) variable
12 in SELECT TYPE construct.
13
14 2019-06-13 Steven G. Kargl <kargl@gcc.gnu.org>
15
16 PR fortran/88810
17 * dependency.c (gfc_dep_resolver): Re-arrange code to make the logic
18 a bit more transparent. Fix 2 nearby formatting issues.
19
20 2019-06-13 Jakub Jelinek <jakub@redhat.com>
21
22 * io.c (check_format): Use G_(...) instead of _(...) for error values,
23 append " in format string at %L" to all strings but unexpected_element,
24 use error as gfc_error formating string instead of
25 "%s in format string at %L". Formatting fixes.
26
27 2019-06-12 Steven G. Kargl <kargl@gcc.gnu.org>
28
29 * gfortran.h (gfc_free_dt_list): Remove prototype.
30
31 2019-06-12 Steven G. Kargl <kargl@gcc.gnu.org>
32
33 PR fortran/90002
34 * array.c (gfc_free_array_spec): When freeing an array-spec, avoid
35 an ICE for assumed-shape coarrays
36
37 2019-06-08 Paul Thomas <pault@gcc.gnu.org>
38
39 PR fortran/90786
40 * trans-expr.c (pointer_assignment_is_proc_pointer) Remove as
41 it is very simple and only called from one place.
42 (gfc_trans_pointer_assignment): Rename non_proc_pointer_assign
43 as non_proc_ptr_assign. Assign to it directly, rather than call
44 to above, deleted function and use gfc_expr_attr instead of
45 only checking the reference chain.
46
47 2019-06-08 Thomas Koenig <tkoenig@gcc.gnu.org>
48 Tomáš Trnka <trnka@scm.com>
49
50 PR fortran/90744
51 * trans-types.c (get_formal_from_actual_arglist): Unset typespec
52 flags which make no sense for procedures without explicit
53 interface.
54
55 2019-06-02 Thomas Koenig <tkoenig@gcc.gnu.org>
56
57 PR fortran/90539
58 * trans-expr.c (gfc_conv_subref_array_arg): If the size of the
59 expression can be determined to be one, treat it as contiguous.
60 Set likelyhood of presence of an actual argument according to
61 PRED_FORTRAN_ABSENT_DUMMY and likelyhood of being contiguous
62 according to PRED_FORTRAN_CONTIGUOUS.
63
64 2019-05-30 Thomas Koenig <tkoenig@gcc.gnu.org>
65
66 * gfc-internals.texi (Translating to GENERIC): New chapter.
67
68 2019-05-30 Marek Polacek <polacek@redhat.com>
69
70 * lang.opt (ftail-call-workaround): Fix a typo.
71
72 2019-05-30 Jakub Jelinek <jakub@redhat.com>
73
74 * lang.opt (ftail-call-workaround=): Fix a typo - lenghts to lengths.
75
76 2019-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
77
78 PR fortran/90539
79 * gfortran.h (gfc_has_dimen_vector_ref): Add prototype.
80 * trans.h (gfc_conv_subref_array_arg): Add argument check_contiguous.
81 (gfc_conv_is_contiguous_expr): Add prototype.
82 * frontend-passes.c (has_dimen_vector_ref): Remove prototype,
83 rename to
84 (gfc_has_dimen_vector_ref): New function name.
85 (matmul_temp_args): Use gfc_has_dimen_vector_ref.
86 (inline_matmul_assign): Likewise.
87 * trans-array.c (gfc_conv_array_parameter): Also check for absence
88 of a vector subscript before calling gfc_conv_subref_array_arg.
89 Pass additional argument to gfc_conv_subref_array_arg.
90 * trans-expr.c (gfc_conv_subref_array_arg): Add argument
91 check_contiguous. If that is true, check if the argument
92 is contiguous and do not repack in that case.
93 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): Split
94 away most of the work into, and call
95 (gfc_conv_intrinsic_is_coniguous_expr): New function.
96
97 2019-05-29 Jakub Jelinek <jakub@redhat.com>
98
99 PR fortran/90329
100 * lang.opt (fbroken-callers): Remove.
101 (ftail-call-workaround, ftail-call-workaround=): New options.
102 * gfortran.h (struct gfc_namespace): Add implicit_interface_calls.
103 * interface.c (gfc_procedure_use): Set implicit_interface_calls
104 for calls to implicit interface procedures.
105 * trans-decl.c (create_function_arglist): Use flag_tail_call_workaround
106 instead of flag_broken_callers. If it is not 2, also require
107 sym->ns->implicit_interface_calls.
108 * invoke.texi (fbroken-callers): Remove documentation.
109 (ftail-call-workaround, ftail-call-workaround=): Document.
110
111 2019-05-26 Thomas Koenig <tkoenig@gcc.gnu.org>
112
113 PR fortran/90539
114 * trans-types.c (get_formal_from_actual_arglist): Set rank
115 and lower bound for assumed size arguments.
116
117 2019-05-22 Andrew Stubbs <ams@codesourcery.com>
118
119 * trans-stmt.c (gfc_trans_critical): Use size_type_node for
120 gfor_fndecl_caf_lock and gfor_fndecl_caf_unlock calls.
121 (gfc_trans_allocate): Use size_type_node for gfor_fndecl_caf_sync_all
122 call.
123
124 2019-05-22 Jeff Law <law@redhat.com>
125 Mark Eggleston <mark.eggleston@codethink.com>
126
127 PR fortran/89100
128 * gfortran.texi: Add Default widths for F, G and I format
129 descriptors to Extensions section.
130 * invoke.texi: Add -fdec-format-defaults
131 * io.c (check_format): Use default widths for i, f and g when
132 flag_dec_format_defaults is enabled.
133 * lang.opt: Add new option.
134 * options.c (set_dec_flags): Add SET_BITFLAG for
135 flag_dec_format_defaults.
136
137 2019-05-21 Janne Blomqvist <jb@gcc.gnu.org>
138
139 PR libfortran/90038
140 * intrinsic.texi (EXECUTE_COMMAND_LINE): Explain new
141 wait=.false. implementation.
142
143 2019-05-20 Mark Eggleston <markeggleston@codethink.com>
144
145 * gfortran.texi: Remove reference to the ASSIGN statement, capitalise
146 complex, state that padding is with spaces and modify the Hollerith
147 constant examples.
148
149 2019-05-19 Paul Thomas <pault@gcc.gnu.org>
150
151 PR fortran/90498
152 * trans-stmt.c (trans_associate_var) Do not use the saved
153 descriptor if the expression is a COMPONENT_REF.
154
155 2019-05-19 Thomas Koenig <tkoenig@gcc.gnu.org>
156
157 PR fortran/90329
158 * invoke.texi: Document -fbroken-callers.
159 * lang.opt: Add -fbroken-callers.
160 * trans-decl.c (create_function_arglist): Only set
161 DECL_HIDDEN_STRING_LENGTH if flag_broken_callers is set.
162
163 2019-05-17 Thomas Schwinge <thomas@codesourcery.com>
164
165 PR fortran/89433
166 * f95-lang.c (gfc_attribute_table): Set min_len to -1 for "omp
167 declare target".
168 * trans-decl.c (add_attributes_to_decl): Refer to OpenACC
169 'routine' clauses from "omp declare target" attribute.
170
171 2019-05-16 Martin Sebor <msebor@redhat.com>
172
173 * gfortranspec.c (append_arg): Spell out the word "argument."
174
175 2019-05-16 Jakub Jelinek <jakub@redhat.com>
176
177 PR fortran/90329
178 * trans-decl.c (create_function_arglist): Set
179 DECL_HIDDEN_STRING_LENGTH on hidden string length PARM_DECLs if
180 len is constant.
181
182 2019-05-15 Janne Blomqvist <jb@gcc.gnu.org>
183
184 * parse.c (gfc_parse_file): Remove translation string markers.
185
186 2019-05-12 Janne Blomqvist <jb@gcc.gnu.org>
187
188 * dump-parse-tree.c (get_c_type_name): Use macros for complex type
189 names.
190 * parse.c (gfc_parse_file): Define complex macros, add CPP support
191 when printing C prototypes.
192
193 2019-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
194
195 PR fortran/61968
196 * interface.c (compare_actual_formal): Do not create a vtab if
197 the actual argument is assumed type.
198
199 2019-05-10 Paul Thomas <pault@gcc.gnu.org>
200
201 PR fortran/90093
202 * trans-decl.c (convert_CFI_desc): Test that the dummy is
203 present before doing any of the conversions.
204
205 PR fortran/90352
206 * decl.c (gfc_verify_c_interop_param): Restore the error for
207 charlen > 1 actual arguments passed to bind(C) procs.
208 Clean up trailing white space.
209
210 PR fortran/90355
211 * trans-array.c (gfc_trans_create_temp_array): Set the 'span'
212 field to the element length for all types.
213 (gfc_conv_expr_descriptor): The force_no_tmp flag is used to
214 prevent temporary creation, especially for substrings.
215 * trans-decl.c (gfc_trans_deferred_vars): Rather than assert
216 that the backend decl for the string length is non-null, use it
217 as a condition before calling gfc_trans_vla_type_sizes.
218 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): 'force_no_tmp'
219 is set before calling gfc_conv_expr_descriptor.
220 * trans.c (get_array_span): Move the code for extracting 'span'
221 from gfc_build_array_ref to this function. This is specific to
222 descriptors that are component and indirect references.
223 * trans.h : Add the force_no_tmp flag bitfield to gfc_se.
224
225 2019-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
226
227 PR fortran/90351
228 PR fortran/90329
229 * dump-parse-tree.c: Include version.h.
230 (gfc_dump_external_c_prototypes): New function.
231 (get_c_type_name): Select "char" as a name for a simple char.
232 Adjust to handling external functions. Also handle complex.
233 (write_decl): Add argument bind_c. Adjust for dumping of external
234 procedures.
235 (write_proc): Likewise.
236 (write_interop_decl): Add bind_c argument to call of write_proc.
237 * gfortran.h: Add prototype for gfc_dump_external_c_prototypes.
238 * lang.opt: Add -fc-prototypes-external flag.
239 * parse.c (gfc_parse_file): Move dumping of BIND(C) prototypes.
240 Call gfc_dump_external_c_prototypes if option is set.
241 * invoke.texi: Document -fc-prototypes-external.
242
243 2019-05-06 Steven G. Kargl <kargl@gcc.gnu.org>
244
245 PR fortran/90290
246 * match.c (gfc_match_stopcode): Check F2008 condition on stop code.
247
248 2019-05-01 Andrew Benson <abensonca@gmail.com>
249
250 * module.c (write_module): Initialize module_column before writing
251 module to ensure line break occurs at correct column.
252
253 2019-05-01 Dominique d'Humieres <dominiq@gcc.gnu.org>
254
255 PR fortran/60144
256 * match.c (gfc_match_parens): Change the location for missing ')'.
257 (gfc_match_if): Detect a missing '('. Remove the spurious named
258 constant error. Change the wording of some errors.
259 (gfc_match_else): Change the wording of an error.
260 (gfc_match_elseif): Detect a missing '('. Improve the matching
261 process to get a better syntax analysis.
262
263 2019-04-19 Steven G. Kargl <kargl@gcc.gnu.org>
264
265 PR fortran/90166
266 * decl.c (in_module_or_interface): New function to check that the
267 current state is in a module, submodule, or interface.
268 (gfc_match_prefix): Use it.
269
270 2019-04-22 Paul Thomas <pault@gcc.gnu.org>
271
272 PR fortran/57284
273 * resolve.c (find_array_spec): If this is a class expression
274 and the symbol and component array specs are the same, this is
275 not an error.
276 *trans-intrinsic.c (gfc_conv_intrinsic_size): If a class symbol
277 argument, has no namespace, it has come from the interface
278 mapping and the _data component must be accessed directly.
279
280 2019-04-17 Thomas Schwinge <thomas@codesourcery.com>
281
282 PR fortran/90048
283 * openmp.c (gfc_resolve_do_iterator): Handle sharing_clauses for
284 OpenACC, too.
285 (gfc_resolve_oacc_blocks): Populate sharing_clauses with private
286 clauses.
287
288 2019-04-14 Paul Thomas <pault@gcc.gnu.org>
289
290 PR fortran/89843
291 * trans-decl.c (gfc_get_symbol_decl): Assumed shape and assumed
292 rank dummies of bind C procs require deferred initialization.
293 (convert_CFI_desc): New procedure to convert incoming CFI
294 descriptors to gfc types and back again.
295 (gfc_trans_deferred_vars): Call it.
296 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Null the CFI
297 descriptor pointer. Free the descriptor in all cases.
298
299 PR fortran/89846
300 * expr.c (is_CFI_desc): New function.
301 (is_subref_array): Tidy up by referencing the symbol directly.
302 * gfortran.h : Prototype for is_CFI_desc.
303 * trans_array.c (get_CFI_desc): New function.
304 (gfc_get_array_span, gfc_conv_scalarized_array_ref,
305 gfc_conv_array_ref): Use it.
306 * trans.c (get_array_span): Extract the span from descriptors
307 that are indirect references.
308
309 PR fortran/90022
310 * trans-decl.c (gfc_get_symbol_decl): Make sure that the se
311 expression is a pointer type before converting it to the symbol
312 backend_decl type.
313 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Eliminate
314 temporary creation for intent(in).
315
316 2019-04-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
317
318 PR fortran/79842
319 * module.c (gfc_use_module): use complete sentences.
320
321 2019-04-11 Thomas Koenig <tkoenig@gcc.gnu.org>
322
323 PR translation/89939
324 * frontend-passes.c (B_ERROR): Delete macro.
325 (C_ERROR): Delete macro.
326 (B_ERROR_1): New macro.
327 (C_ERROR_1): New macro.
328 (C_ERROR_2): New macro.
329 (inline_matmul_assign): Use new macros.
330 (call_external_blas): Likewise.
331
332 2019-04-06 Thomas Koenig <tkoenig@gcc.gnu.org>
333
334 PR fortran/87352
335 * gfortran.h (gfc_component): Add finalized field.
336 * class.c (finalize_component): If the component is already
337 finalized, return early. Set component->finalized on exit.
338
339 2019-04-06 Thomas Koenig <tkoenig@gcc.gnu.org>
340
341 PR fortran/89981
342 * resolve.c (resolve_global_procedure): If the global symbol is an
343 ENTRY, also look up its name among the entries.
344
345 2019-04-04 Harald Anlauf <anlauf@gmx.de>
346
347 PR fortran/89904
348 * check.c (gfc_check_transfer): Reject procedures as actual
349 arguments for SOURCE and MOLD of TRANSFER intrinsic.
350
351 2019-04-03 Steven G. Kargl <kargl@gcc.gnu.org>
352
353 PR fortran/68567
354 * expr.c (gfc_reduce_init_expr): Add extra check to avoid
355 dereferencing a null pointer.
356
357 2019-04-03 Dominique d'Humieres <dominiq@gcc.gnu.org>
358
359 PR fortran/89375
360 * expr.c (comp_pointer): Remove redundant condition.
361
362 2019-03-31 Harald Anlauf <anlauf@gmx.de>
363
364 PR fortran/83515
365 PR fortran/85797
366 * trans-types.c (gfc_typenode_for_spec): Handle conversion for
367 procedure pointers.
368 * target-memory.c (gfc_element_size): Handle size determination
369 for procedure pointers.
370
371 2019-03-31 Thomas Koenig <tkoenig@gcc.gnu.org>
372
373 * dump-parse-tree.c (debug): Add for symbol_attribute *,
374 symbol_attribute and gfc_ref * arguments.
375
376 2019-03-30 Paul Thomas <pault@gcc.gnu.org>
377
378 PR fortran/89841
379 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Use the formal
380 argument attributes rather than those of the actual argument.
381
382 PR fortran/89842
383 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Call
384 'set_dtype_for_unallocated' for any type of arrayspec.
385
386 2019-03-27 Janus Weil <janus@gcc.gnu.org>
387
388 PR fortran/85537
389 * expr.c (gfc_check_assign_symbol): Reject internal and dummy procedures
390 in procedure pointer initialization.
391
392 2019-03-27 Paul Thomas <pault@gcc.gnu.org>
393
394 PR fortran/88247
395 * expr.c (is_subref_array): Permit substrings to be detected
396 as subref arrays.
397 * trans-array.c (get_array_ctor_var_strlen): Obtain the length
398 of deferred length strings. Handle substrings with a NULL end
399 expression.
400 (trans_array_constructor): Remove an unnecessary blank line.
401 (gfc_conv_scalarized_array_ref): Skip to label 'done' if 'decl'
402 is a pointer array.
403 (get_array_charlen): If the expression is an array, convert the
404 first element of the constructor and use its string length. Get
405 a new charlen if necessary.
406 (gfc_conv_expr_descriptor): Call 'get_array_charlen' for array
407 constructor expressions. If the ss_info string length is
408 available, use that to set the span of character arrays.
409 * trans-expr.c (gfc_get_expr_charlen): Handle substrings
410 * trans-stmt.c (trans_associate_var): Set the pointer array
411 flag for variable targets and constant array constructors. Take
412 care not to reset the string length or the span in the case of
413 expressions that are not converted as direct by reference.
414
415 2019-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
416
417 * intrinsic.texi (MINLOC): Fix typo in BACK argument documentation.
418 (MAXLOC): Likewise.
419
420 2019-03-24 Thomas Koenig <tkoenig@gcc.gnu.org>
421
422 PR fortran/78865
423 * interface.c (compare_actual_formal): Change errors about
424 missing or extra to gfc_error_now to make sure they are issued.
425 Change "spec" to "specifier" in message.
426 * resolve.c (resolve_global_procedure): Also check for mismatching
427 interface with global symbols if the namespace has already been
428 resolved.
429
430 2019-03-21 Thomas Schwinge <thomas@codesourcery.com>
431
432 PR fortran/72741
433 * openmp.c (gfc_match_oacc_routine): Set the level of parallelism
434 for all variants.
435 (gfc_resolve_oacc_routines): Call gfc_add_omp_declare_target.
436
437 PR fortran/89773
438 * gfortran.h (gfc_oacc_routine_name): Add loc member.
439 (gfc_resolve_oacc_routines): Declare.
440 * openmp.c (gfc_match_oacc_routine): Move some error checking
441 into...
442 (gfc_resolve_oacc_routines): ... this new function.
443 * resolve.c (resolve_codes): Call it.
444
445 PR fortran/72741
446 * openmp.c (gfc_match_oacc_routine): Clarify.
447
448 PR fortran/72741
449 * module.c (verify_OACC_ROUTINE_LOP_NONE): New function.
450 (enum ab_attribute): Add AB_OACC_ROUTINE_LOP_GANG,
451 AB_OACC_ROUTINE_LOP_WORKER, AB_OACC_ROUTINE_LOP_VECTOR,
452 AB_OACC_ROUTINE_LOP_SEQ.
453 (attr_bits): Add these.
454 (mio_symbol_attribute): Handle these.
455
456 2019-03-20 Janus Weil <janus@gcc.gnu.org>
457
458 PR fortran/71861
459 * symbol.c (check_conflict): ABSTRACT attribute conflicts with
460 INTRINSIC attribute.
461
462 2019-03-18 Thomas Koenig <tkoeng@gcc.gnu.org>
463
464 PR fortran/68009
465 * iresolve.c: Include trans.h.
466 (gfc_resolve_fe_runtine_error): Set backend_decl on
467 resolved_sym.
468
469 2019-03-17 Thomas Koenig <tkoenig@gcc.gnu.org>
470
471 PR fortran/88008
472 * gfortran.h (expr_t): Add EXPR_UNKNOWN.
473 * expr.c (gfc_copy_expr): Add EXPR_UNKNOWN to switch statement.
474 (gfc_simplify_expr): Likewise.
475 * module.c (mio_expr): Likewise.
476 * resovle.c (extract_compcall_passed_object): Issue error on
477 unknown type.
478 (check_typebound_baseobject): Issue error on wrong type.
479 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Add
480 EXPR_UNKNOWN to switch statement.
481
482 2019-03-16 Jakub Jelinek <jakub@redhat.com>
483
484 PR fortran/89724
485 * scanner.c (load_line): Remove linenum and current_line static
486 variables, add warned_tabs automatic variable. Use current_file->line
487 instead of current_line and warned_tabs boolean to avoid diagnosing
488 tabs multiple times on the same line.
489
490 2019-03-16 Thomas Koenig <tkoenig@gcc.gnu.org>
491
492 PR fortran/84394
493 * symbol.c (gfc_add_subroutine): If we are encountering a
494 subrtoutine within a BLOCK DATA and the name starts with an
495 underscore, do not check.
496
497 2019-03-15 Harald Anlauf <anlauf@gmx.de>
498
499 PR fortran/60091
500 * expr.c (gfc_check_pointer_assign): Correct and improve error
501 messages for invalid pointer assignments.
502
503 2019-03-14 Thomas Koenig <tkoenig@gcc.gnu.org>
504
505 * gfortran.texi: Document Q edit descriptor under
506 "Extensions not implemented in GNU Fortran".
507
508 2019-03-13 Harald Anlauf <anlauf@gmx.de>
509
510 PR fortran/87045
511 * trans-expr.c (gfc_trans_pointer_assignment): Move check for same
512 string length so that we do not get false errors for deferred
513 length.
514
515 2019-03-13 Janus Weil <janus@gcc.gnu.org>
516
517 PR fortran/89601
518 * decl.c (gfc_match_formal_arglist): Reject empty type parameter lists.
519 (gfc_match_derived_decl): Mark as PDT only if type parameter list was
520 matched successfully.
521
522 2019-03-13 Thomas Koenig <tkoenig@gcc.gnu.org>
523
524 PR fortran/66695
525 PR fortran/77746
526 PR fortran/79485
527 * gfortran.h (gfc_symbol): Add bind_c component.
528 (gfc_get_gsymbol): Add argument bind_c.
529 * decl.c (add_global_entry): Add bind_c argument to
530 gfc_get_symbol.
531 * parse.c (parse_block_data): Likewise.
532 (parse_module): Likewise.
533 (add_global_procedure): Likewise.
534 (add_global_program): Likewise.
535 * resolve.c (resolve_common_blocks): Likewise.
536 (resolve_global_procedure): Likewise.
537 (gfc_verify_binding_labels): Likewise.
538 * symbol.c (gfc_get_gsymbol): Add argument bind_c. Set bind_c
539 in gsym.
540 * trans-decl.c (gfc_get_module_backend_decl): Add bind_c argument
541 to gfc_get_symbol.
542 (gfc_get_extern_function_decl): If the sym has a binding label
543 and it cannot be found in the global symbol tabel, it is the wrong
544 one and vice versa.
545
546 2019-03-12 Thomas Koenig <tkoenig@gcc.gnu.org>
547
548 PR fortran/87673
549 * match.c (gfc_match_type_spec): Remove call to
550 gfc_resolve_expr for character length.
551
552 2019-03-12 Martin Liska <mliska@suse.cz>
553
554 * decl.c (add_init_expr_to_sym): Replace usage of 'can't'
555 with 'cannot'.
556 (variable_decl): Likewise.
557 (cray_pointer_decl): Likewise.
558 (match_binding_attributes): Likewise.
559 * f95-lang.c (gfc_init): Likewise.
560 * interface.c (gfc_check_typebound_override): Likewise.
561 * intrinsic.c (make_generic): Likewise.
562 * module.c (dump_module): Likewise.
563 (gfc_use_module): Likewise.
564 * primary.c (gfc_convert_to_structure_constructor): Likewise.
565 * resolve.c (resolve_entries): Likewise.
566 (check_generic_tbp_ambiguity): Likewise.
567 (get_checked_tb_operator_target): Likewise.
568 * scanner.c (load_file): Likewise.
569 * trans-expr.c (gfc_conv_intrinsic_to_class): Likewise.
570
571 2019-03-12 Paul Thomas <pault@gcc.gnu.org>
572
573 PR fortran/89363
574 PR fortran/89364
575 * trans-expr.c (set_dtype_for_unallocated): New function.
576 (gfc_conv_gfc_desc_to_cfi_desc): Call it for allocatable and
577 pointer arguments.
578 (gfc_conv_procedure_call): Likewise. Also, set the ubound of
579 the final dimension to -1 for assumed rank formal args that are
580 associated with assumed size arrays.
581 * trans-intrinsic.c (gfc_conv_intrinsic_bound): Return -1 for
582 the final dimension of assumed rank entities that are argument
583 associated with assumed size arrays.
584 (gfc_conv_intrinsic_shape): Likewise return -1 for the final
585 dimension of the shape intrinsic.
586
587 2019-03-11 Jakub Jelinek <jakub@redhat.com>
588
589 PR fortran/89651
590 * trans-openmp.c (gfc_omp_clause_default_ctor): Set TREE_NO_WARNING
591 on decl if adding COND_EXPR for allocatable.
592 (gfc_omp_clause_copy_ctor): Set TREE_NO_WARNING on dest.
593
594 2019-03-11 Martin Liska <mliska@suse.cz>
595
596 * decl.c (match_record_decl): Wrap an option name
597 in a string format message and fix GNU coding style.
598 (gfc_match_pointer): Likewise.
599 * expr.c (find_array_section): Likewise.
600 * intrinsic.c (gfc_is_intrinsic): Likewise.
601 * options.c (gfc_post_options): Likewise.
602 * primary.c (match_integer_constant): Likewise.
603 * trans-common.c (translate_common): Likewise.
604
605 2019-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
606
607 PR fortran/66089
608 * trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
609 Return false if a scalar tempoary is needed.
610 (gfc_walk_variable_expr): Fix up class refs.
611
612 2019-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
613
614 PR fortran/87734
615 * symbol.c (gfc_add_procedure): Only throw an error if the
616 procedure has not been declared either PUBLIC or PRIVATE.
617
618 2019-03-09 Thomas Koenig <tkoenig@gcc.gnu.org>
619
620 PR fortran/71544
621 * trans-types.c (gfc_typenode_for_spec) Set ts->is_c_interop of
622 C_PTR and C_FUNPTR.
623 (create_fn_spec): Mark argument as escaping if ts->is_c_interop is set.
624
625 2019-03-09 Janus Weil <janus@gcc.gnu.org>
626
627 PR fortran/84504
628 * expr.c (gfc_check_assign_symbol): Deal with procedure pointers to
629 pointer-valued functions.
630
631 2019-03-09 Thomas König <tkoenig@gcc.gnu.org>
632
633 PR fortran/71203
634 * decl.c (add_init_expr_to_sym): Add shape if init has none. Add
635 asserts that it has to be an EXPR_ARRAY in this case.
636
637 2019-03-08 Jakub Jelinek <jakub@redhat.com>
638
639 PR other/80058
640 * arith.c (gfc_complex2complex): Avoid two spaces in the middle of
641 diagnostics.
642 * resolve.c (resolve_allocate_expr): Likewise.
643
644 2019-03-06 Harald Anlauf <anlauf@gmx.de>
645
646 PR fortran/71203
647 * expr.c (simplify_const_ref): Avoid null pointer dereference.
648
649 2019-03-03 Harald Anlauf <anlauf@gmx.de>
650 Steven G. Kargl <kargl@gcc.gnu.org>
651
652 PR fortran/77583
653 * symbol.c (check_conflict): Check for valid procedure name
654 passed to error reporting routine.
655
656 2019-03-03 Thomas Koenig <tkoenig@gcc.gnu.org>
657
658 PR fortran/72714
659 * resolve.c (resolve_allocate_expr): Add some tests for coarrays.
660
661 2019-03-02 Harald Anlauf <anlauf@gmx.de>
662
663 PR fortran/89516
664 * check.c (gfc_calculate_transfer_sizes): Correct checks for cases
665 where storage size of elements of MOLD is 0.
666
667 2019-02-28 Thomas Schwinge <thomas@codesourcery.com>
668 Cesar Philippidis <cesar@codesourcery.com>
669
670 PR fortran/72741
671 PR fortran/89433
672 * openmp.c (gfc_match_oacc_routine): Handle repeated use of the
673 Fortran OpenACC 'routine' directive.
674
675 PR fortran/72741
676 * gfortran.h (enum oacc_routine_lop): Add OACC_ROUTINE_LOP_ERROR.
677 * openmp.c (gfc_oacc_routine_lop, gfc_match_oacc_routine): Use it.
678 * trans-decl.c (add_attributes_to_decl): Likewise.
679
680 PR fortran/72741
681 PR fortran/89433
682 * openmp.c (gfc_match_oacc_routine): Accept intrinsic symbols.
683
684 2019-02-26 Harald Anlauf <anlauf@gmx.de>
685
686 PR fortran/89492
687 * check.c (gfc_calculate_transfer_sizes): Handle cases where
688 storage size of elements of MOLD is 0.
689
690 2019-02-26 Thomas Koenig <tkoenig@gcc.gnu.org>
691
692 PR fortran/89496
693 * trans-types.c (get_formal_from_actual_arglist): If
694 the actual arglist has no expression, the corresponding
695 formal arglist is an alternate return.
696
697 2019-02-26 Jakub Jelinek <jakub@redhat.com>
698
699 PR fortran/43210
700 * trans-array.c (gfc_conv_array_initializer): Use RANGE_EXPR instead
701 of duplicating the initializer possibly many times.
702
703 2019-02-24 Thomas Koenig <tkoenig@gcc.gnu.org>
704
705 PR fortran/89174
706 * trans-expr.c (gfc_find_and_cut_at_last_class_ref): Add is_mold
707 to arguments. If we are dealing with a MOLD, call
708 gfc_expr_to_initialize().
709 * trans-stmt.c (gfc_trans_allocate): For MOLD, pass is_mold=true
710 to gfc_find_and_cut_at_last_class_ref.
711 * trans.h (gfc_find_and_cut_at_last_class_ref): Add optional
712 argument is_mold with default false.
713
714 2019-02-24 Harald Anlauf <anlauf@gmx.de>
715
716 PR fortran/89266
717 PR fortran/88326
718 * target-memory.c (gfc_element_size): Return false if element size
719 cannot be determined; element size is returned separately.
720 (gfc_target_expr_size): Return false if expression size cannot be
721 determined; expression size is returned separately.
722 * target-memory.h: Adjust prototypes.
723 * check.c (gfc_calculate_transfer_sizes): Adjust references to
724 gfc_target_expr_size, gfc_element_size.
725 * arith.c (hollerith2representation): Likewise.
726 * class.c (find_intrinsic_vtab): Likewise.
727 * simplify.c (gfc_simplify_sizeof): Likewise.
728
729 2019-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
730
731 PR fortran/84387
732 * trans-io.c (transfer_expr): Do not return if there are no
733 components to the derived type or class.
734
735 2019-02-23 Paul Thomas <pault@gcc.gnu.org>
736
737 PR fortran/88117
738 * resolve.c (deferred_op_assign): Return if the lhs expression
739 has the pointer attribute.
740 * trans-expr.c (gfc_trans_assignment_1): Do not fix the string
741 length if the lhs expression has the pointer attribute.
742
743 2019-02-23 Paul Thomas <pault@gcc.gnu.org>
744
745 PR fortran/89385
746 PR fortran/89366
747 * decl.c (gfc_verify_c_interop_param): Restriction on string
748 length being one is lifted for F2018.
749 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): For scalar
750 characters with intent in, make a temporary and copy the result
751 of the expression evaluation into it.
752 (gfc_conv_procedure_call): Set a flag for character formal args
753 having a character length that is not unity. If the procedure
754 is bind C, call gfc_conv_gfc_desc_to_cfi_desc in this case.
755 Also, extend bind C calls to unconditionally convert both
756 pointers and allocatable expressions.
757
758 2019-02-23 David Malcolm <dmalcolm@redhat.com>
759 Jakub Jelinek <jakub@redhat.com>
760
761 PR middle-end/88074
762 * simplify.c (norm2_do_sqrt, gfc_simplify_norm2): Use
763 mpfr_number_p && !mpfr_zero_p instead of mpfr_regular_p.
764 (norm2_add_squared): Likewise. Use mp_exp_t rather than mpfr_exp_t.
765
766 2019-02-22 Harald Anlauf <anlauf@gmx.de>
767
768 PR fortran/83057
769 * io.c (gfc_match_open): Fix logic in checks of OPEN statement
770 when NEWUNIT= is specified.
771
772 2019-02-22 Steven G. Kargl <kargl@gcc.gnu.org>
773
774 PR fortran/89431
775 * gfortran.texi: Fix documentation to match the implementation.
776
777 2019-02-22 Thomas Schwinge <thomas@codesourcery.com>
778 Cesar Philippidis <cesar@codesourcery.com>
779
780 PR fortran/72741
781 * gfortran.h (oacc_routine_lop): New enum.
782 (symbol_attribute): Use it.
783 * openmp.c (gfc_oacc_routine_dims): Replace with...
784 (gfc_oacc_routine_lop): ... this new function.
785 (gfc_match_oacc_routine): Adjust.
786 * trans-decl.c (add_attributes_to_decl): Likewise.
787
788 2019-02-22 Thomas Schwinge <thomas@codesourcery.com>
789
790 * openmp.c (gfc_match_oacc_declare): Revert earlier changes.
791
792 2019-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
793
794 * dump-parse-tree.c (debug): Implement for gfc_expr *,
795 gfc_typespec *, gfc_typespec and gfc_symbol *.
796
797 2019-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
798
799 PR fortran/86119
800 * class.c (gfc_get_len_component): Add argument k for kind.
801 If the kind of the resulting expression is not equal to k,
802 convert it.
803 * gfortran.h (gfc_len_component): Adjust prototype.
804 * simplify.c (gfc_simplify_len): Pass kind to
805 gfc_get_len_component.
806
807 2019-02-20 Martin Liska <mliska@suse.cz>
808
809 * gfortran.texi: Change singular to plural.
810
811 2019-02-20 Martin Liska <mliska@suse.cz>
812
813 * gfortran.texi: Document Fortran header directive.
814
815 2019-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
816
817 PR fortran/89384
818 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): If the dummy
819 argument is contiguous and the actual argument may not be,
820 use gfc_conv_subref_array_arg.
821
822 2019-02-19 Thomas Schwinge <thomas@codesourcery.com>
823
824 PR c/87924
825 * openmp.c (gfc_match_omp_clauses): Add representation of wait clause
826 without argument as 'wait (GOMP_ASYNC_NOVAL)'.
827
828 2019-02-18 Thomas Koenig <tkoenig@gcc.gnu.org>
829
830 PR fortran/87689
831 * trans-decl.c (gfc_get_extern_function_decl): Add argument
832 actual_args and pass it through to gfc_get_function_type.
833 * trans-expr.c (conv_function_val): Add argument actual_args
834 and pass it on to gfc_get_extern_function_decl.
835 (conv_procedure_call): Pass actual arguments to conv_function_val.
836 * trans-types.c (get_formal_from_actual_arglist): New function.
837 (gfc_get_function_type): Add argument actual_args. Generate
838 formal args from actual args if necessary.
839 * trans-types.h (gfc_get_function_type): Add optional argument.
840 * trans.h (gfc_get_extern_function_decl): Add optional argument.
841
842 2019-02-18 Martin Liska <mliska@suse.cz>
843
844 * decl.c (gfc_match_gcc_builtin): Add support for filtering
845 of builtin directive based on multilib ABI name.
846
847 2019-02-17 Harald Anlauf <anlauf@gmx.de>
848
849 PR fortran/88299
850 * resolve.c (resolve_common_blocks,resolve_common_vars): Move
851 check for obsolent COMMON feature in F2018 to better place.
852
853 2019-02-17 Harald Anlauf <anlauf@gmx.de>
854
855 PR fortran/89077
856 * decl.c (gfc_set_constant_character_len): Clear original string
857 representation after padding has been performed to target length.
858
859 2019-02-16 Jakub Jelinek <jakub@redhat.com>
860
861 PR middle-end/88074
862 * simplify.c (simplify_transformation_to_array): Run post_op
863 immediately after processing corresponding row, rather than at the
864 end.
865 (norm2_scale): New variable.
866 (add_squared): Rename to ...
867 (norm2_add_squared): ... this. Scale down operand and/or result
868 if needed.
869 (do_sqrt): Rename to ...
870 (norm2_do_sqrt): ... this. Handle the result == e case. Scale up
871 result and clear norm2_scale.
872 (gfc_simplify_norm2): Clear norm2_scale. Change add_squared to
873 norm2_add_squared and &do_sqrt to norm2_do_sqrt. Scale up result
874 and clear norm2_scale again.
875
876 2019-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
877
878 PR fortran/71066
879 * trans-decl.c (generate_coarray_sym_init): For an array
880 constructor in a DATA statement of a coarray variable, set the
881 rank to 1 to avoid confusion later on. If the constructor
882 contains only one value, use that for initiailizig.
883
884 2019-02-14 Janne Blomqvist <jb@gcc.gnu.org>
885
886 PR fortran/81552
887 * gfortran.h (gfc_option_t): Make flag_init_integer_value a long.
888 * options.c (gfc_handle_option): Use strtol instead of atoi.
889 * invoke.texi: Document -finit-integer behavior in more detail.
890
891 2019-02-14 Harald Anlauf <anlauf@gmx.de>
892
893 PR fortran/88248
894 * symbol.c: Move check for labeled DO statement from
895 gfc_define_st_label to gfc_reference_st_label.
896
897 2019-02-14 Cesar Philippidis <cesar@codesourcery.com>
898
899 PR fortran/72715
900 * openmp.c (resolve_oacc_nested_loops): Error on do concurrent
901 loops.
902
903 2019-02-13 Martin Liska <mliska@suse.cz>
904
905 PR fortran/88649
906 * resolve.c (resolve_operator): Initialize 't' right
907 after function entry. Skip switch (e->value.op.op)
908 for -fdec operands that become function calls.
909
910 2019-02-10 Thomas Koenig <tkoenig@gcc.gnu.org>
911
912 PR fortran/71723
913 * expr.c (gfc_check_assign): Add argument is_init_expr. If we are
914 looking at an init expression, issue error if the target is not a
915 TARGET and we are not looking at a procedure pointer.
916 * gfortran.h (gfc_check_assign): Add optional argument
917 is_init_expr.
918
919 2019-02-09 Harald Anlauf <anlauf@gmx.de>
920
921 PR fortran/89077
922 * resolve.c (gfc_resolve_substring_charlen): Check substring
923 length for constantness prior to general calculation of length.
924
925 2019-02-09 Paul Thomas <pault@gcc.gnu.org>
926
927 PR fortran/89200
928 * trans-array.c (gfc_trans_create_temp_array): Set the 'span'
929 field for derived types.
930
931 2019-02-04 Harald Anlauf <anlauf@gmx.de>
932
933 PR fortran/89077
934 * decl.c (add_init_expr_to_sym): Copy length of string initializer
935 to declared symbol.
936
937 2019-02-04 Martin Liska <mliska@suse.cz>
938
939 PR fortran/89185
940 * resolve.c (resolve_ref): Remove breakout variable as
941 we need to prevent prev = &(*prev)->next to happen
942 with *prev == NULL.
943
944 2019-02-04 Martin Liska <mliska@suse.cz>
945
946 PR fortran/88912
947 * scanner.c (load_file): Report error for -fpre-include
948 file and do not ICE.
949
950 2019-02-02 Dominique d'Humieres <dominiq@gcc.gnu.org>
951
952 PR fortran/81344
953 * invoke.texi: Document the behavior of repeated -ffpe-trap
954 and -ffpe-summary.
955
956 2019-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
957
958 PR fortran/88298
959 * arith.c (gfc_int2int): Do not warn if src->do_not_warn is set.
960 * gfortran.h (gfc_expr): Add flag do_not_warn.
961 * intrinsic.c (gfc_convert_type_warn): Set expr->do_not_warn if
962 no warning is desired.
963
964 2019-02-02 Paul Thomas <pault@gcc.gnu.org>
965
966 PR fortran/88393
967 * trans-expr.c (gfc_conv_procedure_call): For derived entities,
968 passed in parentheses to class formals, invert the order of
969 copying allocatable components to taking the _data of the
970 class expression.
971
972 2019-02-02 Paul Thomas <pault@gcc.gnu.org>
973
974 PR fortran/88980
975 * trans-array.c (gfc_array_init_size): Add element_size to the
976 arguments.
977 (gfc_array_allocate): Remove the recalculation of the size of
978 the element and use element_size from the call to the above.
979 Unconditionally set the span field of the descriptor.
980
981 2019-02-02 Paul Thomas <pault@gcc.gnu.org>
982
983 PR fortran/88685
984 * expr.c (is_subref_array): Move the check for class pointer
985 dummy arrays to after the reference check. If we haven't seen
986 an array reference other than an element and a component is not
987 class or derived, return false.
988
989 2019-02-01 Jakub Jelinek <jakub@redhat.com>
990
991 PR fortran/83246
992 PR fortran/89084
993 * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
994 if sym->ns->construct_entities rather than if
995 sym->ns->parent->code->op == EXEC_BLOCK.
996
997 2019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
998
999 PR fortran/88669
1000 * resolve.c (resolve_component): If the reference is a BT_CLASS,
1001 copy the contiguous attribute from the reference and use the
1002 correct attributes.
1003
1004 2019-01-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1005
1006 PR fortran/52564
1007 * io.c (match_io): Add check for comma after '*' without subsequent
1008 IO list.
1009
1010 2019-01-30 Dominique d'Humieres <dominiq@gcc.gnu.org>
1011
1012 PR fortran/52884
1013 * invoke.texi: Document the promotion of double precision
1014 constants.
1015
1016 2019-01-29 Thomas Koenig <tkoenig@gcc.gnu.org>
1017
1018 PR fortran/57048
1019 * interface.c (gfc_compare_types): If a derived type and an
1020 integer both have a derived type, and they are identical,
1021 this is a C binding type and compares equal.
1022
1023 2019-01-26 Harald Anlauf <anlauf@gmx.de>
1024
1025 PR fortran/57553
1026 * expr.c (check_inquiry): Add list of inquiry functions allowed in
1027 constant expressions for F2008+.
1028
1029 2019-01-25 Steven G. Kargl <kargl@gcc.gnu.org>
1030
1031 PR fortran/85780
1032 * decl.c (gfc_match_subroutine): Check for conflict between BIND(C)
1033 and alternative return.
1034
1035 2019-01-24 Paul Thomas <pault@gcc.gnu.org>
1036
1037 PR fortran/88929
1038 * trans-array.c (gfc_conv_descriptor_elem_len): New function.
1039 * trans-array.h : Add prototype for above.
1040 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of
1041 assumed rank arrays being flagged by rank = -1 in expressions.
1042 Intent in arrays need a pointer to a copy of the data to be
1043 assigned to the descriptor passed for conversion. This should
1044 then be freed, together with the CFI descriptor on return from
1045 the C call.
1046
1047 2019-01-22 Harald Anlauf <anlauf@gmx.de>
1048
1049 PR fortran/88579
1050 * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer
1051 and (- 2**e) ** integer.
1052
1053 2019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org>
1054
1055 PR fortran/37835
1056 * resolve.c (resolve_types): Add !flag_automatic.
1057 * symbol.c (gfc_add_save): Silence warnings.
1058
1059 2019-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
1060
1061 PR fortran/77960
1062 * io.c (match_io_element): input-item cannot be an external function.
1063
1064 2018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org>
1065 Paul Thomas <pault@gcc.gnu.org>
1066
1067 PR fortran/56789
1068 * trans-expr.c (gfc_conv_procedure_call): Call
1069 gfc_conv_subref_array_arg if the formal arg is contiguous
1070 and the actual arg may not be.
1071
1072 2019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
1073
1074 PR fortran/88871
1075 * resolve.c (resolve_ref): Fix logic for removal of
1076 reference.
1077
1078 2019-01-19 Jakub Jelinek <jakub@redhat.com>
1079
1080 PR fortran/88902
1081 * trans-decl.c (gfc_get_symbol_decl): Don't add length to function
1082 or parent function if it has been added there already.
1083
1084 2019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
1085
1086 PR fortran/43136
1087 * resolve.c (resolve_array_ref): Add equal_length argument; set it
1088 if the length of the substring equals that of the orignal
1089 variable.
1090 (resolve_ref): Remove the substring if it is equal in length to
1091 the original variable, unless it is an EXPR_SUBSTRING).
1092
1093 2019-01-15 Steven G. Kargl <kargl@gcc.gnu.org>
1094
1095 PR fortran/81849
1096 * resolve.c (resolve_symbol): Host associated varaibles can appear
1097 in the specification statement of a RESULT array.
1098
1099 2019-01-15 Paul Thomas <pault@gcc.gnu.org>
1100
1101 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
1102 that are indirect references; ie. dummy arguments.
1103
1104 2019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
1105
1106 PR fortran/88803
1107 * gfortran.texi: Replace @xref with @ref and adjust the sentence.
1108
1109 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
1110
1111 PR fortran/57992
1112 * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack
1113 functions with contiguous results.
1114
1115 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
1116
1117 PR fortran/59345
1118 * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not
1119 pack/unpack results of functions which return an explicit-shaped
1120 or allocatable array.
1121
1122 2019-01-12 Steven G. Kargl <kargl@gcc.gnu.org>
1123
1124 PR fortran/61765
1125 * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
1126 structure into independent if's with a return to simplify logic.
1127 Avoid a check for ENTRY name with bind(c).
1128
1129 2019-01-12 Paul Thomas <pault@gcc.gnu.org>
1130
1131 * gfortran.texi: Add description in sections on TS 29113 and
1132 further interoperability with C.
1133 * trans-array.c (gfc_conv_descriptor_attribute): New function.
1134 (gfc_get_dataptr_offset): Remove static function attribute.
1135 * trans-array.h: Add prototypes for above functions.
1136 * trans-decl.c: Add declarations for the library functions
1137 cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
1138 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
1139 (gfc_conv_procedure_call): Call it for scalar and array actual
1140 arguments, when the formal arguments are bind_c with assumed
1141 shape or assumed rank.
1142 * trans.h: External declarations for gfor_fndecl_cfi_to_gfc
1143 and gfor_fndecl_gfc_to_cfi.
1144
1145 2019-01-11 Steven G. Kargl <kargl@gcc.gnu.org>
1146
1147 PR fortran/35031
1148 * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby
1149 mis-indentation.
1150
1151 2019-01-11 Jakub Jelinek <jakub@redhat.com>
1152
1153 PR middle-end/85956
1154 PR lto/88733
1155 * trans-openmp.c: Include attribs.h.
1156 (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
1157 VAR_DECL max bound with "omp dummy var" attribute like NULL or
1158 error_mark_node - recompute number of elts independently.
1159
1160 2019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
1161
1162 PR fortran/59345
1163 * trans-array.c (gfc_conv_parameter_array): Temporary
1164 arrays generated for expressions do not need to be repacked.
1165
1166 2019-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
1167
1168 PR fortran/86322
1169 * decl.c (top_var_list): Set locus of expr.
1170 (gfc_match_data): Detect pointer on non-rightmost part-refs.
1171
1172 2019-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
1173
1174 PR fortran/88376
1175 * resolve.c (is_illegal_recursion): Remove an assert().
1176
1177 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
1178
1179 PR other/16615
1180 * expr.c: Change "can not" to "cannot".
1181
1182 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
1183
1184 PR other/16615
1185 * class.c: Mechanically replace "can not" with "cannot".
1186 * decl.c: Likewise.
1187 * expr.c: Likewise.
1188 * gfc-internals.texi: Likewise.
1189 * intrinsic.texi: Likewise.
1190 * invoke.texi: Likewise.
1191 * io.c: Likewise.
1192 * match.c: Likewise.
1193 * parse.c: Likewise.
1194 * primary.c: Likewise.
1195 * resolve.c: Likewise.
1196 * symbol.c: Likewise.
1197 * trans-array.c: Likewise.
1198 * trans-decl.c: Likewise.
1199 * trans-intrinsic.c: Likewise.
1200 * trans-stmt.c: Likewise.
1201
1202 2019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org>
1203
1204 PR fortran/68426
1205 * simplify.c (gfc_simplify_spread): Also simplify if the
1206 type of source is an EXPR_STRUCTURE.
1207
1208 2019-01-08 Janus Weil <janus@gcc.gnu.org>
1209
1210 PR fortran/88047
1211 * class.c (gfc_find_vtab): For polymorphic typespecs, the components of
1212 the class container may not be available (in case of invalid code).
1213
1214 2019-01-08 Richard Biener <rguenther@suse.de>
1215
1216 PR fortran/88611
1217 * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
1218 directly build the expected GENERIC tree.
1219
1220 2019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
1221 Harald Anlauf <anlauf@gmx.de>
1222 Tobias Burnus <burnus@gcc.gnu.org>
1223
1224 PR fortran/45424
1225 * check.c (gfc_check_is_contiguous): New function.
1226 * expr.c (gfc_is_not_contiguous): New function.
1227 * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS.
1228 Add prototype for gfc_is_not_contiguous.
1229 * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS.
1230 (add_function): Add is_contiguous.
1231 * intrinsic.h: Add prototypes for gfc_check_is_contiguous,
1232 gfc_simplify_is_contiguous and gfc_resolve_is_contiguous.
1233 * intrinsic.texi: Add IS_CONTIGUOUS.
1234 * iresolve.c (gfc_resolve_is_contiguous): New function.
1235 * simplify.c (gfc_simplify_is_contiguous): New function.
1236 * trans-decl.c (gfor_fncecl_is_contiguous0): New variable.
1237 (gfc_build_intrinsic_function_decl): Add it.
1238 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New
1239 function.
1240 (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS.
1241
1242 2019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org>
1243
1244 PR fortran/88658
1245 * gfortran.h: Add macro gfc_real_4_kind
1246 * simplify.c (simplify_min_max): Special case for the types of
1247 AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of
1248 their arguments.
1249
1250 2019-01-05 Janus Weil <janus@gcc.gnu.org>
1251
1252 PR fortran/88009
1253 * class.c (gfc_find_derived_vtab): Mark the _final component as
1254 artificial.
1255 (find_intrinsic_vtab): Ditto. Also add an extra check to avoid
1256 dereferencing a null pointer and adjust indentation.
1257 * resolve.c (resolve_fl_variable): Add extra check to avoid
1258 dereferencing a null pointer. Move variable declarations to local scope.
1259 (resolve_fl_procedure): Add extra check to avoid dereferencing a null
1260 pointer.
1261 * symbol.c (check_conflict): Suppress errors for artificial symbols.
1262
1263 2019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
1264
1265 * parse.c (decode_statement): Suppress "Unclassifiable statement"
1266 error if previous error messages were emittes.
1267
1268 2019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
1269
1270 PR fortran/82743
1271 * primary.c (gfc_convert_to_structure_constructor): If a character
1272 in a constructor is too long, add a warning with
1273 -Wcharacter-truncation.
1274
1275 2019-01-01 Jakub Jelinek <jakub@redhat.com>
1276
1277 Update copyright years.
1278
1279 * gfortranspec.c (lang_specific_driver): Update copyright notice
1280 dates.
1281 * gfc-internals.texi: Bump @copying's copyright year.
1282 * gfortran.texi: Ditto.
1283 * intrinsic.texi: Ditto.
1284 * invoke.texi: Ditto.
1285 \f
1286 Copyright (C) 2019 Free Software Foundation, Inc.
1287
1288 Copying and distribution of this file, with or without modification,
1289 are permitted in any medium without royalty provided the copyright
1290 notice and this notice are preserved.