]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/fortran/ChangeLog
Wrap option names in gcc internal messages with %< and %>.
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
CommitLineData
2f6d557f 12019-03-11 Martin Liska <mliska@suse.cz>
2
3 * decl.c (match_record_decl): Wrap an option name
4 in a string format message and fix GNU coding style.
5 (gfc_match_pointer): Likewise.
6 * expr.c (find_array_section): Likewise.
7 * intrinsic.c (gfc_is_intrinsic): Likewise.
8 * options.c (gfc_post_options): Likewise.
9 * primary.c (match_integer_constant): Likewise.
10 * trans-common.c (translate_common): Likewise.
11
23ffb1a8 122019-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
13
14 PR fortran/66089
15 * trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
16 Return false if a scalar tempoary is needed.
17 (gfc_walk_variable_expr): Fix up class refs.
18
861c8c7b 192019-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
20
21 PR fortran/87734
22 * symbol.c (gfc_add_procedure): Only throw an error if the
23 procedure has not been declared either PUBLIC or PRIVATE.
24
d066f3f7 252019-03-09 Thomas Koenig <tkoenig@gcc.gnu.org>
26
27 PR fortran/71544
28 * trans-types.c (gfc_typenode_for_spec) Set ts->is_c_interop of
29 C_PTR and C_FUNPTR.
30 (create_fn_spec): Mark argument as escaping if ts->is_c_interop is set.
31
688ff820 322019-03-09 Janus Weil <janus@gcc.gnu.org>
33
34 PR fortran/84504
35 * expr.c (gfc_check_assign_symbol): Deal with procedure pointers to
36 pointer-valued functions.
37
06c6302c 382019-03-09 Thomas König <tkoenig@gcc.gnu.org>
39
40 PR fortran/71203
41 * decl.c (add_init_expr_to_sym): Add shape if init has none. Add
42 asserts that it has to be an EXPR_ARRAY in this case.
43
000969f9 442019-03-08 Jakub Jelinek <jakub@redhat.com>
45
46 PR other/80058
47 * arith.c (gfc_complex2complex): Avoid two spaces in the middle of
48 diagnostics.
49 * resolve.c (resolve_allocate_expr): Likewise.
50
f8197328 512019-03-06 Harald Anlauf <anlauf@gmx.de>
52
53 PR fortran/71203
54 * expr.c (simplify_const_ref): Avoid null pointer dereference.
55
9849369a 562019-03-03 Harald Anlauf <anlauf@gmx.de>
57 Steven G. Kargl <kargl@gcc.gnu.org>
58
59 PR fortran/77583
60 * symbol.c (check_conflict): Check for valid procedure name
61 passed to error reporting routine.
62
a6eb46eb 632019-03-03 Thomas Koenig <tkoenig@gcc.gnu.org>
64
65 PR fortran/72714
66 * resolve.c (resolve_allocate_expr): Add some tests for coarrays.
67
9cc3b79c 682019-03-02 Harald Anlauf <anlauf@gmx.de>
69
70 PR fortran/89516
71 * check.c (gfc_calculate_transfer_sizes): Correct checks for cases
72 where storage size of elements of MOLD is 0.
73
1d86d0eb 742019-02-28 Thomas Schwinge <thomas@codesourcery.com>
75 Cesar Philippidis <cesar@codesourcery.com>
76
35e99d5d 77 PR fortran/72741
78 PR fortran/89433
79 * openmp.c (gfc_match_oacc_routine): Handle repeated use of the
80 Fortran OpenACC 'routine' directive.
81
7378dd70 82 PR fortran/72741
83 * gfortran.h (enum oacc_routine_lop): Add OACC_ROUTINE_LOP_ERROR.
84 * openmp.c (gfc_oacc_routine_lop, gfc_match_oacc_routine): Use it.
85 * trans-decl.c (add_attributes_to_decl): Likewise.
86
1d86d0eb 87 PR fortran/72741
88 PR fortran/89433
89 * openmp.c (gfc_match_oacc_routine): Accept intrinsic symbols.
90
23d7d64b 912019-02-26 Harald Anlauf <anlauf@gmx.de>
92
93 PR fortran/89492
94 * check.c (gfc_calculate_transfer_sizes): Handle cases where
95 storage size of elements of MOLD is 0.
96
8fe5d1b1 972019-02-26 Thomas Koenig <tkoenig@gcc.gnu.org>
98
99 PR fortran/89496
100 * trans-types.c (get_formal_from_actual_arglist): If
101 the actual arglist has no expression, the corresponding
102 formal arglist is an alternate return.
103
f71fabb1 1042019-02-26 Jakub Jelinek <jakub@redhat.com>
105
106 PR fortran/43210
107 * trans-array.c (gfc_conv_array_initializer): Use RANGE_EXPR instead
108 of duplicating the initializer possibly many times.
109
ca180aba 1102019-02-24 Thomas Koenig <tkoenig@gcc.gnu.org>
111
112 PR fortran/89174
113 * trans-expr.c (gfc_find_and_cut_at_last_class_ref): Add is_mold
8fe5d1b1 114 to arguments. If we are dealing with a MOLD, call
ca180aba 115 gfc_expr_to_initialize().
116 * trans-stmt.c (gfc_trans_allocate): For MOLD, pass is_mold=true
117 to gfc_find_and_cut_at_last_class_ref.
118 * trans.h (gfc_find_and_cut_at_last_class_ref): Add optional
119 argument is_mold with default false.
120
1fa8b8f7 1212019-02-24 Harald Anlauf <anlauf@gmx.de>
122
123 PR fortran/89266
124 PR fortran/88326
125 * target-memory.c (gfc_element_size): Return false if element size
126 cannot be determined; element size is returned separately.
127 (gfc_target_expr_size): Return false if expression size cannot be
128 determined; expression size is returned separately.
129 * target-memory.h: Adjust prototypes.
130 * check.c (gfc_calculate_transfer_sizes): Adjust references to
131 gfc_target_expr_size, gfc_element_size.
132 * arith.c (hollerith2representation): Likewise.
133 * class.c (find_intrinsic_vtab): Likewise.
134 * simplify.c (gfc_simplify_sizeof): Likewise.
135
0e8f933e 1362019-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
137
138 PR fortran/84387
139 * trans-io.c (transfer_expr): Do not return if there are no
140 components to the derived type or class.
141
42ae61b1 1422019-02-23 Paul Thomas <pault@gcc.gnu.org>
143
144 PR fortran/88117
145 * resolve.c (deferred_op_assign): Return if the lhs expression
146 has the pointer attribute.
147 * trans-expr.c (gfc_trans_assignment_1): Do not fix the string
148 length if the lhs expression has the pointer attribute.
149
889b0295 1502019-02-23 Paul Thomas <pault@gcc.gnu.org>
151
152 PR fortran/89385
153 PR fortran/89366
154 * decl.c (gfc_verify_c_interop_param): Restriction on string
155 length being one is lifted for F2018.
156 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): For scalar
157 characters with intent in, make a temporary and copy the result
158 of the expression evaluation into it.
159 (gfc_conv_procedure_call): Set a flag for character formal args
160 having a character length that is not unity. If the procedure
161 is bind C, call gfc_conv_gfc_desc_to_cfi_desc in this case.
162 Also, extend bind C calls to unconditionally convert both
163 pointers and allocatable expressions.
164
8bf99999 1652019-02-23 David Malcolm <dmalcolm@redhat.com>
166 Jakub Jelinek <jakub@redhat.com>
167
168 PR middle-end/88074
169 * simplify.c (norm2_do_sqrt, gfc_simplify_norm2): Use
170 mpfr_number_p && !mpfr_zero_p instead of mpfr_regular_p.
171 (norm2_add_squared): Likewise. Use mp_exp_t rather than mpfr_exp_t.
172
93fd04e7 1732019-02-22 Harald Anlauf <anlauf@gmx.de>
174
175 PR fortran/83057
176 * io.c (gfc_match_open): Fix logic in checks of OPEN statement
177 when NEWUNIT= is specified.
178
4bfac94e 1792019-02-22 Steven G. Kargl <kargl@gcc.gnu.org>
180
181 PR fortran/89431
182 * gfortran.texi: Fix documentation to match the implementation.
183
1d740b07 1842019-02-22 Thomas Schwinge <thomas@codesourcery.com>
185 Cesar Philippidis <cesar@codesourcery.com>
186
187 PR fortran/72741
188 * gfortran.h (oacc_routine_lop): New enum.
189 (symbol_attribute): Use it.
190 * openmp.c (gfc_oacc_routine_dims): Replace with...
191 (gfc_oacc_routine_lop): ... this new function.
192 (gfc_match_oacc_routine): Adjust.
193 * trans-decl.c (add_attributes_to_decl): Likewise.
194
9b423754 1952019-02-22 Thomas Schwinge <thomas@codesourcery.com>
196
197 * openmp.c (gfc_match_oacc_declare): Revert earlier changes.
198
827e219d 1992019-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
200
201 * dump-parse-tree.c (debug): Implement for gfc_expr *,
202 gfc_typespec *, gfc_typespec and gfc_symbol *.
203
5132f59f 2042019-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
205
206 PR fortran/86119
207 * class.c (gfc_get_len_component): Add argument k for kind.
208 If the kind of the resulting expression is not equal to k,
209 convert it.
210 * gfortran.h (gfc_len_component): Adjust prototype.
211 * simplify.c (gfc_simplify_len): Pass kind to
212 gfc_get_len_component.
213
437f26ff 2142019-02-20 Martin Liska <mliska@suse.cz>
215
216 * gfortran.texi: Change singular to plural.
217
f4ed9e9b 2182019-02-20 Martin Liska <mliska@suse.cz>
219
220 * gfortran.texi: Document Fortran header directive.
221
4946f3a3 2222019-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
223
224 PR fortran/89384
225 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): If the dummy
226 argument is contiguous and the actual argument may not be,
227 use gfc_conv_subref_array_arg.
228
336ccf28 2292019-02-19 Thomas Schwinge <thomas@codesourcery.com>
d572a4c3 230
231 PR c/87924
232 * openmp.c (gfc_match_omp_clauses): Add representation of wait clause
233 without argument as 'wait (GOMP_ASYNC_NOVAL)'.
234
d50eaffb 2352019-02-18 Thomas Koenig <tkoenig@gcc.gnu.org>
236
237 PR fortran/87689
238 * trans-decl.c (gfc_get_extern_function_decl): Add argument
239 actual_args and pass it through to gfc_get_function_type.
240 * trans-expr.c (conv_function_val): Add argument actual_args
241 and pass it on to gfc_get_extern_function_decl.
242 (conv_procedure_call): Pass actual arguments to conv_function_val.
243 * trans-types.c (get_formal_from_actual_arglist): New function.
244 (gfc_get_function_type): Add argument actual_args. Generate
245 formal args from actual args if necessary.
246 * trans-types.h (gfc_get_function_type): Add optional argument.
247 * trans.h (gfc_get_extern_function_decl): Add optional argument.
248
dd2e9d21 2492019-02-18 Martin Liska <mliska@suse.cz>
250
251 * decl.c (gfc_match_gcc_builtin): Add support for filtering
252 of builtin directive based on multilib ABI name.
253
4c6b245a 2542019-02-17 Harald Anlauf <anlauf@gmx.de>
255
256 PR fortran/88299
257 * resolve.c (resolve_common_blocks,resolve_common_vars): Move
258 check for obsolent COMMON feature in F2018 to better place.
259
b6c59db3 2602019-02-17 Harald Anlauf <anlauf@gmx.de>
261
262 PR fortran/89077
263 * decl.c (gfc_set_constant_character_len): Clear original string
264 representation after padding has been performed to target length.
265
d43619f4 2662019-02-16 Jakub Jelinek <jakub@redhat.com>
267
268 PR middle-end/88074
269 * simplify.c (simplify_transformation_to_array): Run post_op
270 immediately after processing corresponding row, rather than at the
271 end.
272 (norm2_scale): New variable.
273 (add_squared): Rename to ...
274 (norm2_add_squared): ... this. Scale down operand and/or result
275 if needed.
276 (do_sqrt): Rename to ...
277 (norm2_do_sqrt): ... this. Handle the result == e case. Scale up
278 result and clear norm2_scale.
279 (gfc_simplify_norm2): Clear norm2_scale. Change add_squared to
280 norm2_add_squared and &do_sqrt to norm2_do_sqrt. Scale up result
281 and clear norm2_scale again.
282
9ad48282 2832019-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
284
285 PR fortran/71066
286 * trans-decl.c (generate_coarray_sym_init): For an array
287 constructor in a DATA statement of a coarray variable, set the
288 rank to 1 to avoid confusion later on. If the constructor
289 contains only one value, use that for initiailizig.
290
9da40462 2912019-02-14 Janne Blomqvist <jb@gcc.gnu.org>
292
293 PR fortran/81552
294 * gfortran.h (gfc_option_t): Make flag_init_integer_value a long.
295 * options.c (gfc_handle_option): Use strtol instead of atoi.
296 * invoke.texi: Document -finit-integer behavior in more detail.
297
4382a5c9 2982019-02-14 Harald Anlauf <anlauf@gmx.de>
299
300 PR fortran/88248
301 * symbol.c: Move check for labeled DO statement from
302 gfc_define_st_label to gfc_reference_st_label.
303
dac1fbf6 3042019-02-14 Cesar Philippidis <cesar@codesourcery.com>
305
306 PR fortran/72715
307 * openmp.c (resolve_oacc_nested_loops): Error on do concurrent
308 loops.
309
933a5ec7 3102019-02-13 Martin Liska <mliska@suse.cz>
311
312 PR fortran/88649
313 * resolve.c (resolve_operator): Initialize 't' right
314 after function entry. Skip switch (e->value.op.op)
315 for -fdec operands that become function calls.
316
dd686aa9 3172019-02-10 Thomas Koenig <tkoenig@gcc.gnu.org>
318
3c0f9ba3 319 PR fortran/71723
dd686aa9 320 * expr.c (gfc_check_assign): Add argument is_init_expr. If we are
321 looking at an init expression, issue error if the target is not a
322 TARGET and we are not looking at a procedure pointer.
323 * gfortran.h (gfc_check_assign): Add optional argument
324 is_init_expr.
325
517c0439 3262019-02-09 Harald Anlauf <anlauf@gmx.de>
327
328 PR fortran/89077
329 * resolve.c (gfc_resolve_substring_charlen): Check substring
330 length for constantness prior to general calculation of length.
331
7d41610c 3322019-02-09 Paul Thomas <pault@gcc.gnu.org>
333
334 PR fortran/89200
335 * trans-array.c (gfc_trans_create_temp_array): Set the 'span'
336 field for derived types.
337
df378257 3382019-02-04 Harald Anlauf <anlauf@gmx.de>
339
340 PR fortran/89077
341 * decl.c (add_init_expr_to_sym): Copy length of string initializer
342 to declared symbol.
343
6c23b2c4 3442019-02-04 Martin Liska <mliska@suse.cz>
345
346 PR fortran/89185
347 * resolve.c (resolve_ref): Remove breakout variable as
348 we need to prevent prev = &(*prev)->next to happen
349 with *prev == NULL.
350
d7b02225 3512019-02-04 Martin Liska <mliska@suse.cz>
352
353 PR fortran/88912
354 * scanner.c (load_file): Report error for -fpre-include
355 file and do not ICE.
356
8151f617 3572019-02-02 Dominique d'Humieres <dominiq@gcc.gnu.org>
358
359 PR fortran/81344
360 * invoke.texi: Document the behavior of repeated -ffpe-trap
361 and -ffpe-summary.
362
b399769c 3632019-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
364
365 PR fortran/88298
366 * arith.c (gfc_int2int): Do not warn if src->do_not_warn is set.
367 * gfortran.h (gfc_expr): Add flag do_not_warn.
368 * intrinsic.c (gfc_convert_type_warn): Set expr->do_not_warn if
369 no warning is desired.
370
1834f7a3 3712019-02-02 Paul Thomas <pault@gcc.gnu.org>
372
373 PR fortran/88393
374 * trans-expr.c (gfc_conv_procedure_call): For derived entities,
375 passed in parentheses to class formals, invert the order of
376 copying allocatable components to taking the _data of the
377 class expression.
378
ba3862bc 3792019-02-02 Paul Thomas <pault@gcc.gnu.org>
380
381 PR fortran/88980
382 * trans-array.c (gfc_array_init_size): Add element_size to the
383 arguments.
384 (gfc_array_allocate): Remove the recalculation of the size of
385 the element and use element_size from the call to the above.
386 Unconditionally set the span field of the descriptor.
387
285eb84d 3882019-02-02 Paul Thomas <pault@gcc.gnu.org>
389
390 PR fortran/88685
391 * expr.c (is_subref_array): Move the check for class pointer
392 dummy arrays to after the reference check. If we haven't seen
393 an array reference other than an element and a component is not
394 class or derived, return false.
395
49b830df 3962019-02-01 Jakub Jelinek <jakub@redhat.com>
397
398 PR fortran/83246
399 PR fortran/89084
400 * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
401 if sym->ns->construct_entities rather than if
402 sym->ns->parent->code->op == EXEC_BLOCK.
403
a82041dd 4042019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
405
406 PR fortran/88669
407 * resolve.c (resolve_component): If the reference is a BT_CLASS,
408 copy the contiguous attribute from the reference and use the
409 correct attributes.
410
a11ed94b 4112019-01-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
412
413 PR fortran/52564
414 * io.c (match_io): Add check for comma after '*' without subsequent
415 IO list.
416
5851d123 4172019-01-30 Dominique d'Humieres <dominiq@gcc.gnu.org>
418
419 PR fortran/52884
420 * invoke.texi: Document the promotion of double precision
421 constants.
422
659d7fd3 4232019-01-29 Thomas Koenig <tkoenig@gcc.gnu.org>
424
425 PR fortran/57048
426 * interface.c (gfc_compare_types): If a derived type and an
427 integer both have a derived type, and they are identical,
428 this is a C binding type and compares equal.
429
bc3eb257 4302019-01-26 Harald Anlauf <anlauf@gmx.de>
431
432 PR fortran/57553
433 * expr.c (check_inquiry): Add list of inquiry functions allowed in
434 constant expressions for F2008+.
435
2ae44fa6 4362019-01-25 Steven G. Kargl <kargl@gcc.gnu.org>
437
438 PR fortran/85780
439 * decl.c (gfc_match_subroutine): Check for conflict between BIND(C)
440 and alternative return.
441
297fd295 4422019-01-24 Paul Thomas <pault@gcc.gnu.org>
443
444 PR fortran/88929
445 * trans-array.c (gfc_conv_descriptor_elem_len): New function.
446 * trans-array.h : Add prototype for above.
447 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of
448 assumed rank arrays being flagged by rank = -1 in expressions.
449 Intent in arrays need a pointer to a copy of the data to be
450 assigned to the descriptor passed for conversion. This should
451 then be freed, together with the CFI descriptor on return from
452 the C call.
453
4348a41f 4542019-01-22 Harald Anlauf <anlauf@gmx.de>
455
456 PR fortran/88579
457 * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer
458 and (- 2**e) ** integer.
459
c81c2702 4602019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org>
461
462 PR fortran/37835
463 * resolve.c (resolve_types): Add !flag_automatic.
464 * symbol.c (gfc_add_save): Silence warnings.
465
19081b87 4662019-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
467
468 PR fortran/77960
469 * io.c (match_io_element): input-item cannot be an external function.
4348a41f 470
b7e6520a 4712018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org>
472 Paul Thomas <pault@gcc.gnu.org>
473
474 PR fortran/56789
475 * trans-expr.c (gfc_conv_procedure_call): Call
476 gfc_conv_subref_array_arg if the formal arg is contiguous
477 and the actual arg may not be.
478
66f2cfae 4792019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
480
481 PR fortran/88871
482 * resolve.c (resolve_ref): Fix logic for removal of
483 reference.
484
7b60c131 4852019-01-19 Jakub Jelinek <jakub@redhat.com>
486
487 PR fortran/88902
488 * trans-decl.c (gfc_get_symbol_decl): Don't add length to function
489 or parent function if it has been added there already.
490
0b953692 4912019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
492
a96be852 493 PR fortran/43136
0b953692 494 * resolve.c (resolve_array_ref): Add equal_length argument; set it
495 if the length of the substring equals that of the orignal
496 variable.
497 (resolve_ref): Remove the substring if it is equal in length to
498 the original variable, unless it is an EXPR_SUBSTRING).
499
ef1b2a98 5002019-01-15 Steven G. Kargl <kargl@gcc.gnu.org>
501
502 PR fortran/81849
503 * resolve.c (resolve_symbol): Host associated varaibles can appear
504 in the specification statement of a RESULT array.
505
8f563733 5062019-01-15 Paul Thomas <pault@gcc.gnu.org>
507
508 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
509 that are indirect references; ie. dummy arguments.
510
0cc7cbe4 5112019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
512
513 PR fortran/88803
514 * gfortran.texi: Replace @xref with @ref and adjust the sentence.
515
70409dee 5162019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
517
518 PR fortran/57992
7b60c131 519 * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack
70409dee 520 functions with contiguous results.
521
ae57d8c7 5222019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
523
524 PR fortran/59345
525 * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not
526 pack/unpack results of functions which return an explicit-shaped
527 or allocatable array.
528
c8f3fe68 5292019-01-12 Steven G. Kargl <kargl@gcc.gnu.org>
530
531 PR fortran/61765
532 * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
533 structure into independent if's with a return to simplify logic.
534 Avoid a check for ENTRY name with bind(c).
535
77ddff12 5362019-01-12 Paul Thomas <pault@gcc.gnu.org>
537
7b60c131 538 * gfortran.texi: Add description in sections on TS 29113 and
77ddff12 539 further interoperability with C.
540 * trans-array.c (gfc_conv_descriptor_attribute): New function.
541 (gfc_get_dataptr_offset): Remove static function attribute.
7b60c131 542 * trans-array.h: Add prototypes for above functions.
543 * trans-decl.c: Add declarations for the library functions
77ddff12 544 cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
545 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
546 (gfc_conv_procedure_call): Call it for scalar and array actual
547 arguments, when the formal arguments are bind_c with assumed
548 shape or assumed rank.
7b60c131 549 * trans.h: External declarations for gfor_fndecl_cfi_to_gfc
77ddff12 550 and gfor_fndecl_gfc_to_cfi.
551
0e8475b7 5522019-01-11 Steven G. Kargl <kargl@gcc.gnu.org>
553
554 PR fortran/35031
555 * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby
556 mis-indentation.
557
45b37eaa 5582019-01-11 Jakub Jelinek <jakub@redhat.com>
559
560 PR middle-end/85956
561 PR lto/88733
562 * trans-openmp.c: Include attribs.h.
563 (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
564 VAR_DECL max bound with "omp dummy var" attribute like NULL or
565 error_mark_node - recompute number of elts independently.
566
04afaf6a 5672019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
568
569 PR fortran/59345
45b37eaa 570 * trans-array.c (gfc_conv_parameter_array): Temporary
04afaf6a 571 arrays generated for expressions do not need to be repacked.
572
15cbe83d 5732019-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
574
575 PR fortran/86322
576 * decl.c (top_var_list): Set locus of expr.
577 (gfc_match_data): Detect pointer on non-rightmost part-refs.
578
e66b219e 5792019-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
580
581 PR fortran/88376
582 * resolve.c (is_illegal_recursion): Remove an assert().
583
07c11f2b 5842019-01-09 Sandra Loosemore <sandra@codesourcery.com>
585
586 PR other/16615
07c11f2b 587 * expr.c: Change "can not" to "cannot".
588
f4d3c071 5892019-01-09 Sandra Loosemore <sandra@codesourcery.com>
590
591 PR other/16615
f4d3c071 592 * class.c: Mechanically replace "can not" with "cannot".
593 * decl.c: Likewise.
594 * expr.c: Likewise.
595 * gfc-internals.texi: Likewise.
596 * intrinsic.texi: Likewise.
597 * invoke.texi: Likewise.
598 * io.c: Likewise.
599 * match.c: Likewise.
600 * parse.c: Likewise.
601 * primary.c: Likewise.
602 * resolve.c: Likewise.
603 * symbol.c: Likewise.
604 * trans-array.c: Likewise.
605 * trans-decl.c: Likewise.
606 * trans-intrinsic.c: Likewise.
607 * trans-stmt.c: Likewise.
608
9f096803 6092019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org>
610
611 PR fortran/68426
612 * simplify.c (gfc_simplify_spread): Also simplify if the
613 type of source is an EXPR_STRUCTURE.
614
d56370db 6152019-01-08 Janus Weil <janus@gcc.gnu.org>
616
617 PR fortran/88047
618 * class.c (gfc_find_vtab): For polymorphic typespecs, the components of
619 the class container may not be available (in case of invalid code).
620
ac64cdbe 6212019-01-08 Richard Biener <rguenther@suse.de>
622
623 PR fortran/88611
624 * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
625 directly build the expected GENERIC tree.
626
5f34f219 6272019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
628 Harald Anlauf <anlauf@gmx.de>
629 Tobias Burnus <burnus@gcc.gnu.org>
630
631 PR fortran/45424
632 * check.c (gfc_check_is_contiguous): New function.
633 * expr.c (gfc_is_not_contiguous): New function.
634 * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS.
635 Add prototype for gfc_is_not_contiguous.
636 * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS.
637 (add_function): Add is_contiguous.
638 * intrinsic.h: Add prototypes for gfc_check_is_contiguous,
639 gfc_simplify_is_contiguous and gfc_resolve_is_contiguous.
640 * intrinsic.texi: Add IS_CONTIGUOUS.
641 * iresolve.c (gfc_resolve_is_contiguous): New function.
642 * simplify.c (gfc_simplify_is_contiguous): New function.
643 * trans-decl.c (gfor_fncecl_is_contiguous0): New variable.
644 (gfc_build_intrinsic_function_decl): Add it.
645 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New
646 function.
647 (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS.
648
2abeea3d 6492019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org>
650
651 PR fortran/88658
652 * gfortran.h: Add macro gfc_real_4_kind
653 * simplify.c (simplify_min_max): Special case for the types of
654 AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of
655 their arguments.
656
f2aba4ef 6572019-01-05 Janus Weil <janus@gcc.gnu.org>
658
659 PR fortran/88009
660 * class.c (gfc_find_derived_vtab): Mark the _final component as
661 artificial.
662 (find_intrinsic_vtab): Ditto. Also add an extra check to avoid
663 dereferencing a null pointer and adjust indentation.
664 * resolve.c (resolve_fl_variable): Add extra check to avoid
665 dereferencing a null pointer. Move variable declarations to local scope.
666 (resolve_fl_procedure): Add extra check to avoid dereferencing a null
667 pointer.
668 * symbol.c (check_conflict): Suppress errors for artificial symbols.
669
5055fc33 6702019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
671
45b37eaa 672 * parse.c (decode_statement): Suppress "Unclassifiable statement"
5055fc33 673 error if previous error messages were emittes.
674
66aeaf4b 6752019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
676
677 PR fortran/82743
678 * primary.c (gfc_convert_to_structure_constructor): If a character
679 in a constructor is too long, add a warning with
680 -Wcharacter-truncation.
681
3d8932fd 6822019-01-01 Jakub Jelinek <jakub@redhat.com>
8e8f6434 683
fbd26352 684 Update copyright years.
685
277184bc 686 * gfortranspec.c (lang_specific_driver): Update copyright notice
687 dates.
688 * gfc-internals.texi: Bump @copying's copyright year.
689 * gfortran.texi: Ditto.
690 * intrinsic.texi: Ditto.
691 * invoke.texi: Ditto.
2355cca7 692\f
3d8932fd 693Copyright (C) 2019 Free Software Foundation, Inc.
7dfbd804 694
695Copying and distribution of this file, with or without modification,
696are permitted in any medium without royalty provided the copyright
697notice and this notice are preserved.