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