]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/fortran/ChangeLog
PR c/88568
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
CommitLineData
000969f9 12019-03-08 Jakub Jelinek <jakub@redhat.com>
2
3 PR other/80058
4 * arith.c (gfc_complex2complex): Avoid two spaces in the middle of
5 diagnostics.
6 * resolve.c (resolve_allocate_expr): Likewise.
7
f8197328 82019-03-06 Harald Anlauf <anlauf@gmx.de>
9
10 PR fortran/71203
11 * expr.c (simplify_const_ref): Avoid null pointer dereference.
12
9849369a 132019-03-03 Harald Anlauf <anlauf@gmx.de>
14 Steven G. Kargl <kargl@gcc.gnu.org>
15
16 PR fortran/77583
17 * symbol.c (check_conflict): Check for valid procedure name
18 passed to error reporting routine.
19
a6eb46eb 202019-03-03 Thomas Koenig <tkoenig@gcc.gnu.org>
21
22 PR fortran/72714
23 * resolve.c (resolve_allocate_expr): Add some tests for coarrays.
24
9cc3b79c 252019-03-02 Harald Anlauf <anlauf@gmx.de>
26
27 PR fortran/89516
28 * check.c (gfc_calculate_transfer_sizes): Correct checks for cases
29 where storage size of elements of MOLD is 0.
30
1d86d0eb 312019-02-28 Thomas Schwinge <thomas@codesourcery.com>
32 Cesar Philippidis <cesar@codesourcery.com>
33
35e99d5d 34 PR fortran/72741
35 PR fortran/89433
36 * openmp.c (gfc_match_oacc_routine): Handle repeated use of the
37 Fortran OpenACC 'routine' directive.
38
7378dd70 39 PR fortran/72741
40 * gfortran.h (enum oacc_routine_lop): Add OACC_ROUTINE_LOP_ERROR.
41 * openmp.c (gfc_oacc_routine_lop, gfc_match_oacc_routine): Use it.
42 * trans-decl.c (add_attributes_to_decl): Likewise.
43
1d86d0eb 44 PR fortran/72741
45 PR fortran/89433
46 * openmp.c (gfc_match_oacc_routine): Accept intrinsic symbols.
47
23d7d64b 482019-02-26 Harald Anlauf <anlauf@gmx.de>
49
50 PR fortran/89492
51 * check.c (gfc_calculate_transfer_sizes): Handle cases where
52 storage size of elements of MOLD is 0.
53
8fe5d1b1 542019-02-26 Thomas Koenig <tkoenig@gcc.gnu.org>
55
56 PR fortran/89496
57 * trans-types.c (get_formal_from_actual_arglist): If
58 the actual arglist has no expression, the corresponding
59 formal arglist is an alternate return.
60
f71fabb1 612019-02-26 Jakub Jelinek <jakub@redhat.com>
62
63 PR fortran/43210
64 * trans-array.c (gfc_conv_array_initializer): Use RANGE_EXPR instead
65 of duplicating the initializer possibly many times.
66
ca180aba 672019-02-24 Thomas Koenig <tkoenig@gcc.gnu.org>
68
69 PR fortran/89174
70 * trans-expr.c (gfc_find_and_cut_at_last_class_ref): Add is_mold
8fe5d1b1 71 to arguments. If we are dealing with a MOLD, call
ca180aba 72 gfc_expr_to_initialize().
73 * trans-stmt.c (gfc_trans_allocate): For MOLD, pass is_mold=true
74 to gfc_find_and_cut_at_last_class_ref.
75 * trans.h (gfc_find_and_cut_at_last_class_ref): Add optional
76 argument is_mold with default false.
77
1fa8b8f7 782019-02-24 Harald Anlauf <anlauf@gmx.de>
79
80 PR fortran/89266
81 PR fortran/88326
82 * target-memory.c (gfc_element_size): Return false if element size
83 cannot be determined; element size is returned separately.
84 (gfc_target_expr_size): Return false if expression size cannot be
85 determined; expression size is returned separately.
86 * target-memory.h: Adjust prototypes.
87 * check.c (gfc_calculate_transfer_sizes): Adjust references to
88 gfc_target_expr_size, gfc_element_size.
89 * arith.c (hollerith2representation): Likewise.
90 * class.c (find_intrinsic_vtab): Likewise.
91 * simplify.c (gfc_simplify_sizeof): Likewise.
92
0e8f933e 932019-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
94
95 PR fortran/84387
96 * trans-io.c (transfer_expr): Do not return if there are no
97 components to the derived type or class.
98
42ae61b1 992019-02-23 Paul Thomas <pault@gcc.gnu.org>
100
101 PR fortran/88117
102 * resolve.c (deferred_op_assign): Return if the lhs expression
103 has the pointer attribute.
104 * trans-expr.c (gfc_trans_assignment_1): Do not fix the string
105 length if the lhs expression has the pointer attribute.
106
889b0295 1072019-02-23 Paul Thomas <pault@gcc.gnu.org>
108
109 PR fortran/89385
110 PR fortran/89366
111 * decl.c (gfc_verify_c_interop_param): Restriction on string
112 length being one is lifted for F2018.
113 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): For scalar
114 characters with intent in, make a temporary and copy the result
115 of the expression evaluation into it.
116 (gfc_conv_procedure_call): Set a flag for character formal args
117 having a character length that is not unity. If the procedure
118 is bind C, call gfc_conv_gfc_desc_to_cfi_desc in this case.
119 Also, extend bind C calls to unconditionally convert both
120 pointers and allocatable expressions.
121
8bf99999 1222019-02-23 David Malcolm <dmalcolm@redhat.com>
123 Jakub Jelinek <jakub@redhat.com>
124
125 PR middle-end/88074
126 * simplify.c (norm2_do_sqrt, gfc_simplify_norm2): Use
127 mpfr_number_p && !mpfr_zero_p instead of mpfr_regular_p.
128 (norm2_add_squared): Likewise. Use mp_exp_t rather than mpfr_exp_t.
129
93fd04e7 1302019-02-22 Harald Anlauf <anlauf@gmx.de>
131
132 PR fortran/83057
133 * io.c (gfc_match_open): Fix logic in checks of OPEN statement
134 when NEWUNIT= is specified.
135
4bfac94e 1362019-02-22 Steven G. Kargl <kargl@gcc.gnu.org>
137
138 PR fortran/89431
139 * gfortran.texi: Fix documentation to match the implementation.
140
1d740b07 1412019-02-22 Thomas Schwinge <thomas@codesourcery.com>
142 Cesar Philippidis <cesar@codesourcery.com>
143
144 PR fortran/72741
145 * gfortran.h (oacc_routine_lop): New enum.
146 (symbol_attribute): Use it.
147 * openmp.c (gfc_oacc_routine_dims): Replace with...
148 (gfc_oacc_routine_lop): ... this new function.
149 (gfc_match_oacc_routine): Adjust.
150 * trans-decl.c (add_attributes_to_decl): Likewise.
151
9b423754 1522019-02-22 Thomas Schwinge <thomas@codesourcery.com>
153
154 * openmp.c (gfc_match_oacc_declare): Revert earlier changes.
155
827e219d 1562019-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
157
158 * dump-parse-tree.c (debug): Implement for gfc_expr *,
159 gfc_typespec *, gfc_typespec and gfc_symbol *.
160
5132f59f 1612019-02-21 Thomas Koenig <tkoenig@gcc.gnu.org>
162
163 PR fortran/86119
164 * class.c (gfc_get_len_component): Add argument k for kind.
165 If the kind of the resulting expression is not equal to k,
166 convert it.
167 * gfortran.h (gfc_len_component): Adjust prototype.
168 * simplify.c (gfc_simplify_len): Pass kind to
169 gfc_get_len_component.
170
437f26ff 1712019-02-20 Martin Liska <mliska@suse.cz>
172
173 * gfortran.texi: Change singular to plural.
174
f4ed9e9b 1752019-02-20 Martin Liska <mliska@suse.cz>
176
177 * gfortran.texi: Document Fortran header directive.
178
4946f3a3 1792019-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
180
181 PR fortran/89384
182 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): If the dummy
183 argument is contiguous and the actual argument may not be,
184 use gfc_conv_subref_array_arg.
185
336ccf28 1862019-02-19 Thomas Schwinge <thomas@codesourcery.com>
d572a4c3 187
188 PR c/87924
189 * openmp.c (gfc_match_omp_clauses): Add representation of wait clause
190 without argument as 'wait (GOMP_ASYNC_NOVAL)'.
191
d50eaffb 1922019-02-18 Thomas Koenig <tkoenig@gcc.gnu.org>
193
194 PR fortran/87689
195 * trans-decl.c (gfc_get_extern_function_decl): Add argument
196 actual_args and pass it through to gfc_get_function_type.
197 * trans-expr.c (conv_function_val): Add argument actual_args
198 and pass it on to gfc_get_extern_function_decl.
199 (conv_procedure_call): Pass actual arguments to conv_function_val.
200 * trans-types.c (get_formal_from_actual_arglist): New function.
201 (gfc_get_function_type): Add argument actual_args. Generate
202 formal args from actual args if necessary.
203 * trans-types.h (gfc_get_function_type): Add optional argument.
204 * trans.h (gfc_get_extern_function_decl): Add optional argument.
205
dd2e9d21 2062019-02-18 Martin Liska <mliska@suse.cz>
207
208 * decl.c (gfc_match_gcc_builtin): Add support for filtering
209 of builtin directive based on multilib ABI name.
210
4c6b245a 2112019-02-17 Harald Anlauf <anlauf@gmx.de>
212
213 PR fortran/88299
214 * resolve.c (resolve_common_blocks,resolve_common_vars): Move
215 check for obsolent COMMON feature in F2018 to better place.
216
b6c59db3 2172019-02-17 Harald Anlauf <anlauf@gmx.de>
218
219 PR fortran/89077
220 * decl.c (gfc_set_constant_character_len): Clear original string
221 representation after padding has been performed to target length.
222
d43619f4 2232019-02-16 Jakub Jelinek <jakub@redhat.com>
224
225 PR middle-end/88074
226 * simplify.c (simplify_transformation_to_array): Run post_op
227 immediately after processing corresponding row, rather than at the
228 end.
229 (norm2_scale): New variable.
230 (add_squared): Rename to ...
231 (norm2_add_squared): ... this. Scale down operand and/or result
232 if needed.
233 (do_sqrt): Rename to ...
234 (norm2_do_sqrt): ... this. Handle the result == e case. Scale up
235 result and clear norm2_scale.
236 (gfc_simplify_norm2): Clear norm2_scale. Change add_squared to
237 norm2_add_squared and &do_sqrt to norm2_do_sqrt. Scale up result
238 and clear norm2_scale again.
239
9ad48282 2402019-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
241
242 PR fortran/71066
243 * trans-decl.c (generate_coarray_sym_init): For an array
244 constructor in a DATA statement of a coarray variable, set the
245 rank to 1 to avoid confusion later on. If the constructor
246 contains only one value, use that for initiailizig.
247
9da40462 2482019-02-14 Janne Blomqvist <jb@gcc.gnu.org>
249
250 PR fortran/81552
251 * gfortran.h (gfc_option_t): Make flag_init_integer_value a long.
252 * options.c (gfc_handle_option): Use strtol instead of atoi.
253 * invoke.texi: Document -finit-integer behavior in more detail.
254
4382a5c9 2552019-02-14 Harald Anlauf <anlauf@gmx.de>
256
257 PR fortran/88248
258 * symbol.c: Move check for labeled DO statement from
259 gfc_define_st_label to gfc_reference_st_label.
260
dac1fbf6 2612019-02-14 Cesar Philippidis <cesar@codesourcery.com>
262
263 PR fortran/72715
264 * openmp.c (resolve_oacc_nested_loops): Error on do concurrent
265 loops.
266
933a5ec7 2672019-02-13 Martin Liska <mliska@suse.cz>
268
269 PR fortran/88649
270 * resolve.c (resolve_operator): Initialize 't' right
271 after function entry. Skip switch (e->value.op.op)
272 for -fdec operands that become function calls.
273
dd686aa9 2742019-02-10 Thomas Koenig <tkoenig@gcc.gnu.org>
275
3c0f9ba3 276 PR fortran/71723
dd686aa9 277 * expr.c (gfc_check_assign): Add argument is_init_expr. If we are
278 looking at an init expression, issue error if the target is not a
279 TARGET and we are not looking at a procedure pointer.
280 * gfortran.h (gfc_check_assign): Add optional argument
281 is_init_expr.
282
517c0439 2832019-02-09 Harald Anlauf <anlauf@gmx.de>
284
285 PR fortran/89077
286 * resolve.c (gfc_resolve_substring_charlen): Check substring
287 length for constantness prior to general calculation of length.
288
7d41610c 2892019-02-09 Paul Thomas <pault@gcc.gnu.org>
290
291 PR fortran/89200
292 * trans-array.c (gfc_trans_create_temp_array): Set the 'span'
293 field for derived types.
294
df378257 2952019-02-04 Harald Anlauf <anlauf@gmx.de>
296
297 PR fortran/89077
298 * decl.c (add_init_expr_to_sym): Copy length of string initializer
299 to declared symbol.
300
6c23b2c4 3012019-02-04 Martin Liska <mliska@suse.cz>
302
303 PR fortran/89185
304 * resolve.c (resolve_ref): Remove breakout variable as
305 we need to prevent prev = &(*prev)->next to happen
306 with *prev == NULL.
307
d7b02225 3082019-02-04 Martin Liska <mliska@suse.cz>
309
310 PR fortran/88912
311 * scanner.c (load_file): Report error for -fpre-include
312 file and do not ICE.
313
8151f617 3142019-02-02 Dominique d'Humieres <dominiq@gcc.gnu.org>
315
316 PR fortran/81344
317 * invoke.texi: Document the behavior of repeated -ffpe-trap
318 and -ffpe-summary.
319
b399769c 3202019-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
321
322 PR fortran/88298
323 * arith.c (gfc_int2int): Do not warn if src->do_not_warn is set.
324 * gfortran.h (gfc_expr): Add flag do_not_warn.
325 * intrinsic.c (gfc_convert_type_warn): Set expr->do_not_warn if
326 no warning is desired.
327
1834f7a3 3282019-02-02 Paul Thomas <pault@gcc.gnu.org>
329
330 PR fortran/88393
331 * trans-expr.c (gfc_conv_procedure_call): For derived entities,
332 passed in parentheses to class formals, invert the order of
333 copying allocatable components to taking the _data of the
334 class expression.
335
ba3862bc 3362019-02-02 Paul Thomas <pault@gcc.gnu.org>
337
338 PR fortran/88980
339 * trans-array.c (gfc_array_init_size): Add element_size to the
340 arguments.
341 (gfc_array_allocate): Remove the recalculation of the size of
342 the element and use element_size from the call to the above.
343 Unconditionally set the span field of the descriptor.
344
285eb84d 3452019-02-02 Paul Thomas <pault@gcc.gnu.org>
346
347 PR fortran/88685
348 * expr.c (is_subref_array): Move the check for class pointer
349 dummy arrays to after the reference check. If we haven't seen
350 an array reference other than an element and a component is not
351 class or derived, return false.
352
49b830df 3532019-02-01 Jakub Jelinek <jakub@redhat.com>
354
355 PR fortran/83246
356 PR fortran/89084
357 * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
358 if sym->ns->construct_entities rather than if
359 sym->ns->parent->code->op == EXEC_BLOCK.
360
a82041dd 3612019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
362
363 PR fortran/88669
364 * resolve.c (resolve_component): If the reference is a BT_CLASS,
365 copy the contiguous attribute from the reference and use the
366 correct attributes.
367
a11ed94b 3682019-01-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
369
370 PR fortran/52564
371 * io.c (match_io): Add check for comma after '*' without subsequent
372 IO list.
373
5851d123 3742019-01-30 Dominique d'Humieres <dominiq@gcc.gnu.org>
375
376 PR fortran/52884
377 * invoke.texi: Document the promotion of double precision
378 constants.
379
659d7fd3 3802019-01-29 Thomas Koenig <tkoenig@gcc.gnu.org>
381
382 PR fortran/57048
383 * interface.c (gfc_compare_types): If a derived type and an
384 integer both have a derived type, and they are identical,
385 this is a C binding type and compares equal.
386
bc3eb257 3872019-01-26 Harald Anlauf <anlauf@gmx.de>
388
389 PR fortran/57553
390 * expr.c (check_inquiry): Add list of inquiry functions allowed in
391 constant expressions for F2008+.
392
2ae44fa6 3932019-01-25 Steven G. Kargl <kargl@gcc.gnu.org>
394
395 PR fortran/85780
396 * decl.c (gfc_match_subroutine): Check for conflict between BIND(C)
397 and alternative return.
398
297fd295 3992019-01-24 Paul Thomas <pault@gcc.gnu.org>
400
401 PR fortran/88929
402 * trans-array.c (gfc_conv_descriptor_elem_len): New function.
403 * trans-array.h : Add prototype for above.
404 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of
405 assumed rank arrays being flagged by rank = -1 in expressions.
406 Intent in arrays need a pointer to a copy of the data to be
407 assigned to the descriptor passed for conversion. This should
408 then be freed, together with the CFI descriptor on return from
409 the C call.
410
4348a41f 4112019-01-22 Harald Anlauf <anlauf@gmx.de>
412
413 PR fortran/88579
414 * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer
415 and (- 2**e) ** integer.
416
c81c2702 4172019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org>
418
419 PR fortran/37835
420 * resolve.c (resolve_types): Add !flag_automatic.
421 * symbol.c (gfc_add_save): Silence warnings.
422
19081b87 4232019-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
424
425 PR fortran/77960
426 * io.c (match_io_element): input-item cannot be an external function.
4348a41f 427
b7e6520a 4282018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org>
429 Paul Thomas <pault@gcc.gnu.org>
430
431 PR fortran/56789
432 * trans-expr.c (gfc_conv_procedure_call): Call
433 gfc_conv_subref_array_arg if the formal arg is contiguous
434 and the actual arg may not be.
435
66f2cfae 4362019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
437
438 PR fortran/88871
439 * resolve.c (resolve_ref): Fix logic for removal of
440 reference.
441
7b60c131 4422019-01-19 Jakub Jelinek <jakub@redhat.com>
443
444 PR fortran/88902
445 * trans-decl.c (gfc_get_symbol_decl): Don't add length to function
446 or parent function if it has been added there already.
447
0b953692 4482019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
449
a96be852 450 PR fortran/43136
0b953692 451 * resolve.c (resolve_array_ref): Add equal_length argument; set it
452 if the length of the substring equals that of the orignal
453 variable.
454 (resolve_ref): Remove the substring if it is equal in length to
455 the original variable, unless it is an EXPR_SUBSTRING).
456
ef1b2a98 4572019-01-15 Steven G. Kargl <kargl@gcc.gnu.org>
458
459 PR fortran/81849
460 * resolve.c (resolve_symbol): Host associated varaibles can appear
461 in the specification statement of a RESULT array.
462
8f563733 4632019-01-15 Paul Thomas <pault@gcc.gnu.org>
464
465 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
466 that are indirect references; ie. dummy arguments.
467
0cc7cbe4 4682019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
469
470 PR fortran/88803
471 * gfortran.texi: Replace @xref with @ref and adjust the sentence.
472
70409dee 4732019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
474
475 PR fortran/57992
7b60c131 476 * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack
70409dee 477 functions with contiguous results.
478
ae57d8c7 4792019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
480
481 PR fortran/59345
482 * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not
483 pack/unpack results of functions which return an explicit-shaped
484 or allocatable array.
485
c8f3fe68 4862019-01-12 Steven G. Kargl <kargl@gcc.gnu.org>
487
488 PR fortran/61765
489 * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
490 structure into independent if's with a return to simplify logic.
491 Avoid a check for ENTRY name with bind(c).
492
77ddff12 4932019-01-12 Paul Thomas <pault@gcc.gnu.org>
494
7b60c131 495 * gfortran.texi: Add description in sections on TS 29113 and
77ddff12 496 further interoperability with C.
497 * trans-array.c (gfc_conv_descriptor_attribute): New function.
498 (gfc_get_dataptr_offset): Remove static function attribute.
7b60c131 499 * trans-array.h: Add prototypes for above functions.
500 * trans-decl.c: Add declarations for the library functions
77ddff12 501 cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
502 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
503 (gfc_conv_procedure_call): Call it for scalar and array actual
504 arguments, when the formal arguments are bind_c with assumed
505 shape or assumed rank.
7b60c131 506 * trans.h: External declarations for gfor_fndecl_cfi_to_gfc
77ddff12 507 and gfor_fndecl_gfc_to_cfi.
508
0e8475b7 5092019-01-11 Steven G. Kargl <kargl@gcc.gnu.org>
510
511 PR fortran/35031
512 * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby
513 mis-indentation.
514
45b37eaa 5152019-01-11 Jakub Jelinek <jakub@redhat.com>
516
517 PR middle-end/85956
518 PR lto/88733
519 * trans-openmp.c: Include attribs.h.
520 (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
521 VAR_DECL max bound with "omp dummy var" attribute like NULL or
522 error_mark_node - recompute number of elts independently.
523
04afaf6a 5242019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
525
526 PR fortran/59345
45b37eaa 527 * trans-array.c (gfc_conv_parameter_array): Temporary
04afaf6a 528 arrays generated for expressions do not need to be repacked.
529
15cbe83d 5302019-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
531
532 PR fortran/86322
533 * decl.c (top_var_list): Set locus of expr.
534 (gfc_match_data): Detect pointer on non-rightmost part-refs.
535
e66b219e 5362019-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
537
538 PR fortran/88376
539 * resolve.c (is_illegal_recursion): Remove an assert().
540
07c11f2b 5412019-01-09 Sandra Loosemore <sandra@codesourcery.com>
542
543 PR other/16615
07c11f2b 544 * expr.c: Change "can not" to "cannot".
545
f4d3c071 5462019-01-09 Sandra Loosemore <sandra@codesourcery.com>
547
548 PR other/16615
f4d3c071 549 * class.c: Mechanically replace "can not" with "cannot".
550 * decl.c: Likewise.
551 * expr.c: Likewise.
552 * gfc-internals.texi: Likewise.
553 * intrinsic.texi: Likewise.
554 * invoke.texi: Likewise.
555 * io.c: Likewise.
556 * match.c: Likewise.
557 * parse.c: Likewise.
558 * primary.c: Likewise.
559 * resolve.c: Likewise.
560 * symbol.c: Likewise.
561 * trans-array.c: Likewise.
562 * trans-decl.c: Likewise.
563 * trans-intrinsic.c: Likewise.
564 * trans-stmt.c: Likewise.
565
9f096803 5662019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org>
567
568 PR fortran/68426
569 * simplify.c (gfc_simplify_spread): Also simplify if the
570 type of source is an EXPR_STRUCTURE.
571
d56370db 5722019-01-08 Janus Weil <janus@gcc.gnu.org>
573
574 PR fortran/88047
575 * class.c (gfc_find_vtab): For polymorphic typespecs, the components of
576 the class container may not be available (in case of invalid code).
577
ac64cdbe 5782019-01-08 Richard Biener <rguenther@suse.de>
579
580 PR fortran/88611
581 * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
582 directly build the expected GENERIC tree.
583
5f34f219 5842019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
585 Harald Anlauf <anlauf@gmx.de>
586 Tobias Burnus <burnus@gcc.gnu.org>
587
588 PR fortran/45424
589 * check.c (gfc_check_is_contiguous): New function.
590 * expr.c (gfc_is_not_contiguous): New function.
591 * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS.
592 Add prototype for gfc_is_not_contiguous.
593 * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS.
594 (add_function): Add is_contiguous.
595 * intrinsic.h: Add prototypes for gfc_check_is_contiguous,
596 gfc_simplify_is_contiguous and gfc_resolve_is_contiguous.
597 * intrinsic.texi: Add IS_CONTIGUOUS.
598 * iresolve.c (gfc_resolve_is_contiguous): New function.
599 * simplify.c (gfc_simplify_is_contiguous): New function.
600 * trans-decl.c (gfor_fncecl_is_contiguous0): New variable.
601 (gfc_build_intrinsic_function_decl): Add it.
602 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New
603 function.
604 (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS.
605
2abeea3d 6062019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org>
607
608 PR fortran/88658
609 * gfortran.h: Add macro gfc_real_4_kind
610 * simplify.c (simplify_min_max): Special case for the types of
611 AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of
612 their arguments.
613
f2aba4ef 6142019-01-05 Janus Weil <janus@gcc.gnu.org>
615
616 PR fortran/88009
617 * class.c (gfc_find_derived_vtab): Mark the _final component as
618 artificial.
619 (find_intrinsic_vtab): Ditto. Also add an extra check to avoid
620 dereferencing a null pointer and adjust indentation.
621 * resolve.c (resolve_fl_variable): Add extra check to avoid
622 dereferencing a null pointer. Move variable declarations to local scope.
623 (resolve_fl_procedure): Add extra check to avoid dereferencing a null
624 pointer.
625 * symbol.c (check_conflict): Suppress errors for artificial symbols.
626
5055fc33 6272019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
628
45b37eaa 629 * parse.c (decode_statement): Suppress "Unclassifiable statement"
5055fc33 630 error if previous error messages were emittes.
631
66aeaf4b 6322019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
633
634 PR fortran/82743
635 * primary.c (gfc_convert_to_structure_constructor): If a character
636 in a constructor is too long, add a warning with
637 -Wcharacter-truncation.
638
3d8932fd 6392019-01-01 Jakub Jelinek <jakub@redhat.com>
8e8f6434 640
fbd26352 641 Update copyright years.
642
277184bc 643 * gfortranspec.c (lang_specific_driver): Update copyright notice
644 dates.
645 * gfc-internals.texi: Bump @copying's copyright year.
646 * gfortran.texi: Ditto.
647 * intrinsic.texi: Ditto.
648 * invoke.texi: Ditto.
2355cca7 649\f
3d8932fd 650Copyright (C) 2019 Free Software Foundation, Inc.
7dfbd804 651
652Copying and distribution of this file, with or without modification,
653are permitted in any medium without royalty provided the copyright
654notice and this notice are preserved.