]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/fortran/ChangeLog
[34/77] Add a SCALAR_INT_TYPE_MODE macro
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
1 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
2 Alan Hayward <alan.hayward@arm.com>
3 David Sherwood <david.sherwood@arm.com>
4
5 * target-memory.c (size_integer): Use SCALAR_INT_TYPE_MODE.
6 (size_logical): Likewise.
7
8 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
9 Alan Hayward <alan.hayward@arm.com>
10 David Sherwood <david.sherwood@arm.com>
11
12 * trans-types.c (gfc_type_for_mode): Use is_a <scalar_int_mode>.
13
14 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
15 Alan Hayward <alan.hayward@arm.com>
16 David Sherwood <david.sherwood@arm.com>
17
18 * trans-types.c (gfc_init_kinds): Use opt_scalar_float_mode
19 and FOR_EACH_MODE_IN_CLASS.
20
21 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
22 Alan Hayward <alan.hayward@arm.com>
23 David Sherwood <david.sherwood@arm.com>
24
25 * target-memory.c (size_float): Use SCALAR_FLOAT_TYPE_MODE
26 instead of TYPE_MODE.
27
28 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
29 Alan Hayward <alan.hayward@arm.com>
30 David Sherwood <david.sherwood@arm.com>
31
32 * trans-types.c (gfc_init_kinds): Use machine_mode instead of int
33 for "mode".
34
35 2017-08-28 Janus Weil <janus@gcc.gnu.org>
36
37 PR fortran/81770
38 * expr.c (gfc_check_pointer_assign): Improve the check whether pointer
39 may outlive pointer target.
40
41 2017-08-27 Thomas Koenig <tkoenig@gcc.gnu.org>
42
43 PR fortran/81974
44 * frontend-passes (inline_matumul_assign): Explicity
45 set typespec for call to CONJG.
46
47 2017-08-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
48
49 PR fortran/81296
50 * trans-io.c (get_dtio_proc): Add check for format label and set
51 formatted flag accordingly. Reorganize the code a little.
52
53 2017-08-16 Thomas Koenig <tkoenig@gcc.gnu.org>
54
55 PR fortran/81116
56 * frontend-passes.c (realloc_string_callback): If expression is a
57 concatenation, also check for dependency.
58 (constant_string_length): Check for presence of symtree.
59
60 2017-08-13 Thomas Koenig <tkoenig@gcc.gnu.org>
61
62 * gfortran.texi: Document format of unformatted sequential files.
63
64 2017-08-11 Thomas Koenig <tkoenig@gcc.gnu.org>
65
66 * invoke.texi: Actually commit change about -Ofast.
67
68 2017-08-11 Thomas Koenig <tkoenig@gcc.gnu.org>
69
70 PR fortran/60355
71 * resolve.c (resolve_symbol): Adjust (and reformat)
72 comment. Perform check if a BIND(C) is declared
73 at module level regardless of whether it is typed
74 implicitly or not.
75
76 2017-08-10 Fritz Reese <fritzoreese@gmail.com>
77
78 * options.c (set_dec_flags): Only set legacy standards when value
79 is not zero.
80
81 2017-08-10 Fritz Reese <fritzoreese@gmail.com>
82
83 * options.c (set_dec_flags, gfc_post_options): Only set flag_d_lines
84 with -fdec when not set by user.
85
86 2017-08-10 Fritz Reese <fritzoreese@gmail.com>
87
88 * decl.c (attr_seen): New static variable.
89 * decl.c (variable_decl): Match %FILL in STRUCTURE body.
90 * gfortran.texi: Update documentation.
91
92 2017-08-08 Martin Liska <mliska@suse.cz>
93
94 * trans-types.c: Include header files.
95
96 2017-08-07 Thomas Koenig <tkoenig@gcc.gnu.org>
97
98 PR fortran/68829
99 PR fortran/81701
100 * options.c: Make -Ofast honor -fmax-stack-var-size.
101 * invoke.texi: Document change.
102
103 2017-08-01 Thomas König <tkoenig@gcc.gnu.org>
104
105 PR fortran/79312
106 * intrisic.c (gfc_convert_type_warn): Only set typespec for
107 empty array constructors which don't have it already.
108
109 2017-08-01 Thomas Koenig <tkoenig@gcc.gnu.org>
110
111 PR fortran/45435
112 * lang.opt (fc-prototypes): Add option.
113 * gfortran.h (gfc_typespec): Add interop_kind to struct.
114 (gfc_dump_c_prototypes): Add prototype.
115 * decl.c (gfc_match_kind_spec): Copy symbol used for kind to typespec.
116 * parse.c (gfc_parse_file): Call gfc_dump_prototypes.
117 * dump-parse-tree.c (gfc_dump_c_prototypes): New function.
118 (type_return): New enum.
119 (get_c_type_name): New function.
120 (write_decl): New function.
121 (write_type): New function.
122 (write_variable): New function.
123 (write_proc): New function.
124 (write_interop_decl): New function.
125 * invoke.texi: Document -fc-prototypes.
126
127 2017-08-01 Dominique d'Humieres <dominiq@lps.ens.fr>
128
129 PR fortran/53542
130 * expr.c (gfc_check_init_expr): Use the renamed name.
131
132 2017-07-31 Jakub Jelinek <jakub@redhat.com>
133
134 * check.c (gfc_check_num_images): Fix a pasto.
135
136 2017-07-29 Jakub Jelinek <jakub@redhat.com>
137
138 * trans-decl.c (gfc_trans_use_stmts): Pass false as new argument to
139 the imported_module_or_decl debug hook.
140
141 2017-07-28 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
142
143 * resolve.c (find_reachable_labels): Adjust.
144
145 2017-07-25 Jakub Jelinek <jakub@redhat.com>
146
147 * ioparm.def: Use 1U << 31 instead of 1 << 31 as flags2 mask.
148
149 2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
150
151 * dump-parse-tree.c (show_symbol): Show binding label if present.
152
153 2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
154 Mikael Morin <mikael@gcc.gnu.org>
155
156 PR fortran/66102
157 * fortran/trans-array.c (gfc_conv_resolve_dependencies):
158 Break if dependency has been found.
159
160 2017-07-23 Alexander Monakov <amonakov@ispras.ru>
161
162 * interface.c (pair_cmp): Fix gfc_symbol comparison. Adjust comment.
163
164 2017-07-18 Nathan Sidwell <nathan@acm.org>
165
166 * trans.c (gfc_build_array_ref): Use TYPE_MAX_VALUE.
167
168 2017-07-09 Dominique d'Humieres <dominiq@lps.ens.fr>
169
170 PR fortran/81341
171 * class.c (class_array_ref_detected): Remove a redundant
172 condition.
173
174 2017-07-06 Harald Anlauf <anlauf@gmx.de>
175
176 PR fortran/70071
177 * array.c (gfc_ref_dimen_size): Handle bad subscript triplets.
178
179 2017-07-03 Dominique d'Humieres <dominiq@lps.ens.fr>
180
181 PR fortran/79866
182 * resolve.c (resolve_symbol): Fix typo.
183
184 2017-07-03 Dominique d'Humieres <dominiq@lps.ens.fr>
185
186 PR fortran/79843
187 * symbol.c (check_conflict): Add missing "conflicts".
188
189 2017-06-29 Cesar Philippidis <cesar@codesourcery.com>
190
191 PR fortran/77765
192 * openmp.c (gfc_match_oacc_routine): Check if proc_name exist before
193 comparing the routine name against it.
194
195 2017-06-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
196
197 PR fortran/80164
198 * trans-stmt.c (gfc_trans_call): If no code expr, use code->loc
199 as warning/error locus.
200
201 2017-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
202
203 PR fortran/81160
204 * arith.c (wprecision_int_real): Set return value before
205 mpz_clear and then return after it.
206
207 2017-06-15 Janus Weil <janus@gcc.gnu.org>
208
209 PR fortran/80983
210 * trans-expr.c (gfc_conv_procedure_call): Deallocate the result of
211 scalar allocatable procedure-pointer components.
212
213 2017-06-10 Thomas Koenig <tkoenig@gcc.gnu.org>
214
215 PR fortran/80988
216 * frontend-passes.c (traverse_io_block): Also
217 check for variables occurring as indices multiple
218 time in a single implied DO loop.
219
220 2017-06-05 Janus Weil <janus@gcc.gnu.org>
221
222 PR fortran/70601
223 * trans-expr.c (gfc_conv_procedure_call): Fix detection of allocatable
224 function results.
225
226 2017-06-05 Nicolas Koenig <koenigni@student.ethz.ch>
227
228 PR fortran/35339
229 * frontend-passes.c (traverse_io_block): New function.
230 (simplify_io_impl_do): New function.
231 (optimize_namespace): Invoke gfc_code_walker with
232 simplify_io_impl_do.
233
234 2017-06-02 Jakub Jelinek <jakub@redhat.com>
235
236 PR fortran/80918
237 * openmp.c (resolve_omp_clauses): Fix a typo.
238
239 2017-05-30 David Malcolm <dmalcolm@redhat.com>
240
241 * error.c (gfc_format_decoder): Update for new bool and
242 const char ** params.
243
244 2017-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
245
246 PR fortran/37131
247 * frontend-passes.c (check_conjg_transpose_variable):
248 Add prototype.
249 (has_dimen_vector_ref): Likewise
250 (matmul_temp_args): New function. Add prototype.
251 (optimize_namespace): Call matmul_temp_args.
252
253 2017-05-28 Thomas Koenig <tkoenig@gcc.gnu.org>
254
255 * frontend-passes.c (matmul_lhs_realloc): Correct
256 allocation size for case A1B2.
257
258 2017-05-25 Thomas Koenig <tkoenig@gcc.gnu.org>
259
260 * dump-parse-tree.c (show_expr): Also replace
261 with dumpfile for showing values for forgotten
262 case.
263
264 2017-05-24 Thomas Koenig <tkoenig@gcc.gnu.org>
265
266 * dump-parse-tree.c (show_expr): Replace stdout
267 with dumpfile for showing values.
268
269 2017-05-24 Thomas Koenig <tkoenig@gcc.gnu.org>
270
271 PR fortran/66094
272 * frontend-passes.c (matrix_case): Add A2TB2.
273 (inline_limit_check): Handle MATMUL(TRANSPOSE(A),B)
274 (inline_matmul_assign): Likewise.
275
276 2017-05-23 Thomas Schwinge <thomas@codesourcery.com>
277
278 * openmp.c (OACC_KERNELS_CLAUSES): Add "OMP_CLAUSE_NUM_GANGS",
279 "OMP_CLAUSE_NUM_WORKERS", "OMP_CLAUSE_VECTOR_LENGTH".
280
281 2017-05-22 Janus Weil <janus@gcc.gnu.org>
282
283 PR fortran/80766
284 * resolve.c (resolve_fl_derived): Make sure that vtype symbols are
285 properly resolved.
286
287 2017-05-19 Paul Thomas <pault@gcc.gnu.org>
288
289 PR fortran/80333
290 * trans-io.c (nml_get_addr_expr): If we are dealing with class
291 type data set tmp tree to get that address.
292 (transfer_namelist_element): Set the array spec to point to the
293 the class data.
294
295 2017-05-19 David Malcolm <dmalcolm@redhat.com>
296
297 PR fortran/79852
298 * bbt.c (insert): Remove trailing exclamation mark from message.
299 * decl.c (gfc_match_final_decl): Likewise.
300 * dump-parse-tree.c (show_expr): Likewise.
301 * module.c (gfc_use_module): Likewise.
302 * primary.c (build_actual_constructor): Likewise.
303 (gfc_convert_to_structure_constructor): Likewise.
304
305 2017-05-19 Thomas Schwinge <thomas@codesourcery.com>
306
307 * gfortran.h (enum gfc_omp_default_sharing): Add
308 "OMP_DEFAULT_PRESENT".
309 * dump-parse-tree.c (show_omp_clauses): Handle it.
310 * openmp.c (gfc_match_omp_clauses): Likewise.
311 * trans-openmp.c (gfc_trans_omp_clauses): Likewise.
312
313 2017-05-18 Fritz Reese <fritzoreese@gmail.com>
314
315 PR fortran/79968
316 * decl.c (match_attr_spec, gfc_match_automatic,
317 gfc_match_static, gfc_match_structure_decl): Unify diagnostic
318 errors regarding -fdec options.
319 * io.c (match_dec_etag, match_dec_vtag, match_dec_ftag): Ditto.
320
321 2017-05-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
322
323 PR fortran/80741
324 * trans-io.c (transfer_namelist_element): Change check from
325 NULL_TREE to null_pointer_node.
326
327 2017-05-17 Fritz Reese <fritzoreese@gmail.com>
328
329 PR fortran/80668
330 * expr.c (component_initializer): Don't generate initializers for
331 pointer components.
332 * invoke.texi (-finit-derived): Document.
333
334 2017-05-16 Paul Thomas <pault@gcc.gnu.org>
335
336 PR fortran/80554
337 * decl.c (build_sym): In a submodule allow overriding of host
338 associated symbols from the ancestor module with a new
339 declaration.
340
341 2017-05-15 Steven G. Kargl <kargl@gcc.gnu.org>
342
343 PR fortran/80674
344 * trans-stmt.c (gfc_trans_integer_select): Remove redundant condition.
345
346 2017-05-15 Steven G. Kargl <kargl@gcc.gnu.org>
347
348 PR fortran/80752
349 * expr.c (gfc_generate_initializer): If type conversion fails,
350 check for error and return NULL.
351
352 2017-05-14 Nicolas Koenig <koenigni@student.ethz.ch>
353
354 PR fortran/80442
355 * array.c (gfc_ref_dimen_size): Simplify stride
356 expression
357 * data.c (gfc_advance_section): Simplify start,
358 end and stride expressions
359 (gfc_advance_section): Simplify start and end
360 expressions
361 (gfc_get_section_index): Simplify start expression
362
363 2017-05-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
364
365 * io.c (gfc_resolve_dt): Fix returns to bool type.
366
367 2017-05-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
368
369 PR fortran/78659
370 * io.c (dtio_procs_present): Add new function to check for DTIO
371 procedures relative to I/O statement READ or WRITE.
372 (gfc_resolve_dt): Add namelist checks using the new function.
373 * resolve.c (dtio_procs_present): Remove function and related
374 namelist checks. (resolve_fl_namelist): Add check specific to
375 Fortran 95 restriction on namelist objects.
376
377 2017-05-11 Nathan Sidwell <nathan@acm.org>
378
379 * trans-decl.c: Include dumpfile.h not tree-dump.h,
380
381 2017-05-09 Janus Weil <janus@gcc.gnu.org>
382
383 PR fortran/79311
384 * resolve.c (gfc_resolve_finalizers): Ensure that derived-type
385 components have a their finalizers resolved, also if the superordinate
386 type itself has a finalizer.
387
388 2017-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
389
390 PR fortran/79930
391 * frontend-passes.c (matmul_to_var_expr): New function,
392 add prototype.
393 (matmul_to_var_code): Likewise.
394 (optimize_namespace): Use them from gfc_code_walker.
395
396 2017-05-05 David Malcolm <dmalcolm@redhat.com>
397
398 * cpp.c (cb_cpp_error): Replace report_diagnostic
399 with diagnostic_report_diagnostic.
400 * error.c (gfc_warning): Likewise.
401 (gfc_warning_now_at): Likewise.
402 (gfc_warning_now): Likewise.
403 (gfc_warning_internal): Likewise.
404 (gfc_error_now): Likewise.
405 (gfc_fatal_error): Likewise.
406 (gfc_error_opt): Likewise.
407 (gfc_internal_error): Likewise.
408
409 2017-05-01 Thomas Koenig <tkoenig@gcc.gnu.org>
410
411 PR fortran/37131
412 * frontend-passes.c (inline_matmul_assign): Also check bounds
413 for allocatable lhs and matrix-vector-multiplication.
414
415 2017-04-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
416
417 PR fortran/80484
418 * io.c (format_lex): Check for '/' and set token to FMT_SLASH.
419 (check_format): Move FMT_DT checking code to data_desc section.
420 * module.c (gfc_match_use): Include the case of INTERFACE_DTIO.
421
422 2017-04-22 Janus Weil <janus@gcc.gnu.org>
423
424 PR fortran/80121
425 * trans-types.c (gfc_conv_procedure_call): Deallocate the components
426 of allocatable intent(out) arguments.
427
428 2017-04-21 Janus Weil <janus@gcc.gnu.org>
429
430 PR fortran/80392
431 * trans-types.c (gfc_get_derived_type): Prevent an infinite loop when
432 building a derived type that includes a procedure pointer component
433 with a polymorphic result.
434
435 2017-04-17 Paul Thomas <pault@gcc.gnu.org>
436
437 PR fortran/80440
438 * module.c (find_symtree_for_symbol): Delete.
439 (read_module): Remove the call to the above.
440
441 2017-04-14 Janus Weil <janus@gcc.gnu.org>
442
443 PR fortran/80361
444 * class.c (generate_finalization_wrapper): Give the finalization wrapper
445 the recursive attribute.
446
447 2017-04-10 Nicolas Koenig <koenigni@student.ethz.ch>
448 Paul Thomas <pault@gcc.gnu.org>
449
450 PR fortran/69498
451 * module.c (gfc_match_submodule): Add error
452 if function is called in the wrong state.
453
454 2017-04-10 Janus Weil <janus@gcc.gnu.org>
455
456 PR fortran/80046
457 * expr.c (gfc_check_pointer_assign): Check if procedure pointer
458 components in a pointer assignment need an explicit interface.
459
460 2017-03-18 Nicolas Koenig <koenigni@student.ethz.ch>
461
462 PR fortran/69498
463 * symbol.c (gfc_delete_symtree): If there is a period in the name, ignore
464 everything before it.
465
466 2017-03-28 Janus Weil <janus@gcc.gnu.org>
467
468 PR fortran/78661
469 * trans-io.c (transfer_namelist_element): Perform a polymorphic call
470 to a DTIO procedure if necessary.
471
472 2017-03-25 Paul Thomas <pault@gcc.gnu.org>
473
474 PR fortran/80156
475 PR fortran/79382
476 * decl.c (access_attr_decl): Remove the error for an absent
477 generic DTIO interface and ensure that symbol has the flavor
478 FL_PROCEDURE.
479
480 2017-03-22 Dominique d'Humieres <dominiq@lps.ens.fr>
481
482 PR fortran/79838
483 * module.c: Remove trailing period.
484
485 2017-03-22 Dominique d'Humieres <dominiq@lps.ens.fr>
486
487 PR fortran/79602
488 * decl.c: Replace '%s' with %qs.
489 * expr.c: Likewise.
490 * interface.c: Likewise.
491 * match.c: Likewise.
492 * primary.c: Likewise.
493 * resolve.c: Likewise.
494
495 PR fortran/79844
496 PR fortran/80011
497 * io.c: Remove trailing spaces.
498 * match.c: Likewise.
499 * openmp.c: Likewise.
500 * resolve.c: Likewise.
501 * trans-intrinsic.c: Likewise.
502
503 PR fortran/79853
504 * expr.c: Remove a double spaces.
505
506 PR fortran/79859
507 * primary.c: Remove spurious quotes around %qs.
508
509 2017-03-22 Thomas Koenig <tkoenig@gcc.gnu.org>
510
511 PR fortran/80142
512 * frontend-passes.c (combine_array_constructor): Take
513 location of new expression from constructor expression instead
514 of constructor.
515
516 2017-03-20 Nicolas Koenig <koenigni@student.ethz.ch>
517
518 PR fortran/39239
519 * symbol.c (check_conflict): Report an error if an EQUIVALENCE
520 object is BIND(C)
521
522 2017-03-18 Nicolas Koenig <koenigni@student.ethz.ch>
523
524 PR fortran/69498
525 * decl.c (add_hidden_procptr_result): Fixed Refs count of the
526 created "ppr@" symbol.
527
528 2017-03-18 Paul Thomas <pault@gcc.gnu.org>
529
530 PR fortran/79676
531 * module.c (mio_symbol_attribute): Remove reset of the flag
532 'no_module_procedures'.
533 (check_for_module_procedures): New function. Move declaration
534 of 'no_module_procedures' to above it.
535 (gfc_dump_module): Traverse namespace calling new function.
536
537 2017-03-18 Paul Thomas <pault@gcc.gnu.org>
538
539 PR fortran/71838
540 * symbol.c (check_conflict): A dummy procedure in a submodule,
541 module procedure is not an error.
542 (gfc_add_flavor): Ditto.
543
544 2017-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
545
546 PR fortran/79841
547 * openmp.c (check_symbol_not_pointer): Adjust diagnostics.
548
549 2017-03-16 Jakub Jelinek <jakub@redhat.com>
550
551 PR fortran/80010
552 * parse.c (gfc_ascii_statement): Use !$ACC for ST_OACC_ATOMIC
553 and ST_OACC_END_ATOMIC, instead of !ACC.
554 * trans-decl.c (finish_oacc_declare): Use !$ACC instead of $!ACC.
555 * openmp.c (gfc_match_oacc_declare, gfc_match_oacc_wait,
556 gfc_resolve_oacc_declare): Likewise.
557
558 PR fortran/79886
559 * error.c (gfc_format_decoder): Rename plus argument to set_locus,
560 remove ATTRIBUTE_UNUSED from all arguments, call default_tree_printer
561 if not a Fortran specific spec.
562 * trans-io.c: Include options.h.
563 (gfc_build_st_parameter): Temporarily disable -Wpadded around layout
564 of artificial IO data structures.
565
566 2017-03-15 David Malcolm <dmalcolm@redhat.com>
567
568 PR fortran/79860
569 * resolve.c (resolve_contained_fntype): Make error messages more
570 amenable to translation.
571
572 2017-03-06 Richard Biener <rguenther@suse.de>
573
574 PR fortran/79894
575 * trans.c (gfc_add_modify_loc): Weaken assert.
576
577 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org>,
578 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
579
580 * check.c (positive_check): Add new function checking constant for
581 being greater then zero.
582 (gfc_check_image_status): Add checking of image_status arguments.
583 (gfc_check_failed_or_stopped_images): Same but for failed_- and
584 stopped_images function.
585 * dump-parse-tree.c (show_code_node): Added output of FAIL IMAGE.
586 * gfortran.h (enum gfc_statement): Added FAIL_IMAGE_ST.
587 (enum gfc_isym_id): Added new intrinsic symbols.
588 (enum gfc_exec_op): Added EXEC_FAIL_IMAGE.
589 * gfortran.texi: Added description for the new API functions. Updated
590 coverage of gfortran of TS18508.
591 * intrinsic.c (add_functions): Added symbols to resolve new intrinsic
592 functions.
593 * intrinsic.h: Added prototypes.
594 * iresolve.c (gfc_resolve_failed_images): Resolve the failed_images
595 intrinsic.
596 (gfc_resolve_image_status): Same for image_status.
597 (gfc_resolve_stopped_images): Same for stopped_images.
598 * libgfortran.h: Added prototypes.
599 * match.c (gfc_match_if): Added matching of FAIL IMAGE statement.
600 (gfc_match_fail_image): Match a FAIL IMAGE statement.
601 * match.h: Added prototype.
602 * parse.c (decode_statement): Added matching for FAIL IMAGE.
603 (next_statement): Same.
604 (gfc_ascii_statement): Same.
605 * resolve.c: Same.
606 * simplify.c (gfc_simplify_failed_or_stopped_images): For COARRAY=
607 single a constant result can be returne.d
608 (gfc_simplify_image_status): For COARRAY=single the result is constant.
609 * st.c (gfc_free_statement): Added FAIL_IMAGE handling.
610 * trans-decl.c (gfc_build_builtin_function_decls): Added decls of the
611 new intrinsics.
612 * trans-expr.c (gfc_conv_procedure_call): This is first time all
613 arguments of a function are optional, which is now handled here
614 correctly.
615 * trans-intrinsic.c (conv_intrinsic_image_status): Translate
616 image_status.
617 (gfc_conv_intrinsic_function): Add support for image_status.
618 (gfc_is_intrinsic_libcall): Add support for the remaining new
619 intrinsics.
620 * trans-stmt.c (gfc_trans_fail_image): Trans a fail image.
621 * trans-stmt.h: Add the prototype for the above.
622 * trans.c (trans_code): Dispatch for fail_image.
623 * trans.h: Add the trees for the new intrinsics.
624
625 2017-03-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
626
627 PR fortran/79841
628 * openmp.c (check_symbol_not_pointer): Adjust diagnostic.
629
630 2017-02-28 Paul Thomas <pault@gcc.gnu.org>
631
632 PR fortran/79739
633 * resolve.c (resolve_fl_procedure): Deal with the case where
634 'submodule_name' is NULL so that gfc_error does not ICE.
635 Reformat the error message to make it more consistent.
636
637 2017-02-28 Jakub Jelinek <jakub@redhat.com>
638
639 * parse.c (parse_critical_block): Use cond ? G_("...") : G_("...")
640 instead of just cond ? "..." : "...".
641 * scanner.c (gfc_next_char_literal): Likewise.
642 * match.c (match_exit_cycle): Likewise.
643
644 2017-02-26 Thomas Koenig <tkoenig@gcc.gnu.org>
645
646 PR fortran/51119
647 * options.c (gfc_post_options): Set default limit for matmul
648 inlining to 30.
649 * invoke.texi: Document change.
650
651 2017-02-25 Dominique d'Humieres <dominiq@lps.ens.fr>
652
653 PR fortran/79601
654 * interface.c (check_dtio_arg_TKR_intent): Change 'intent'
655 to 'INTENT'.
656
657 2017-02-25 Dominique d'Humieres <dominiq@lps.ens.fr>
658
659 PR fortran/79597
660 * interface.c (gfc_match_end_interface): Remove spurious comma
661 and space, replace 'got %s' with 'got %qs'.
662
663 2017-02-20 Paul Thomas <pault@gcc.gnu.org>
664
665 PR fortran/79599
666 * interface.c (check_dtio_arg_TKR_intent): Supply 'must'
667 missing from error message.
668
669 2017-02-20 Paul Thomas <pault@gcc.gnu.org>
670
671 PR fortran/79523
672 * interface.c (gfc_find_typebound_dtio_proc): Guard test for
673 flavor attribute by checking that symbol is resolved.
674
675 2017-02-16 Paul Thomas <pault@gcc.gnu.org>
676
677 PR fortran/79382
678 * decl.c (access_attr_decl): Test for presence of generic DTIO
679 interface and emit error if not present.
680
681 2017-02-20 Paul Thomas <pault@gcc.gnu.org>
682
683 PR fortran/79434
684 * parse.c (check_component, parse_union): Whitespace.
685 (set_syms_host_assoc): For a derived type, check if the module
686 in which it was declared is one of the submodule ancestors. If
687 it is, make the components public. Otherwise, reset attribute
688 'host_assoc' and set 'use-assoc' so that encapsulation is
689 preserved.
690
691 2017-02-19 Paul Thomas <pault@gcc.gnu.org>
692
693 PR fortran/79447
694 * decl.c (gfc_set_constant_character_len): Whitespace.
695 (gfc_match_end): Catch case where a procedure is contained in
696 a module procedure and ensure that 'end procedure' is the
697 correct termination.
698
699 2017-02-19 Paul Thomas <pault@gcc.gnu.org>
700
701 PR fortran/79402
702 * resolve.c (fixup_unique_dummy): New function.
703 (gfc_resolve_expr): Call it for dummy variables with a unique
704 symtree name.
705
706 2017-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
707
708 PR fortran/79229
709 * trans-expr.c (gfc_trans_assignment_1): Deref indirect refs when
710 compiling with -fcheck=mem to check the pointer and not the data.
711
712 2017-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
713
714 PR fortran/79335
715 * trans-array.c (duplicate_allocatable_coarray): Ensure attributes
716 passed are properly initialized.
717 (structure_alloc_comps): Same.
718 * trans-expr.c (gfc_trans_structure_assign): Same.
719
720 2017-02-13 Jakub Jelinek <jakub@redhat.com>
721
722 * trans-expr.c (gfc_conv_substring): Add missing space in diagnostics.
723
724 2017-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
725
726 PR fortran/65542
727 * intrinsic.c (gfc_intrinsic_func_interface): Return an error
728 for -std=f95 for disallowed transformational functions in
729 initialization expressions.
730
731 2017-02-09 Cesar Philippidis <cesar@codesourcery.com>
732 Joseph Myers <joseph@codesourcery.com>
733
734 * openmp.c (resolve_omp_clauses): Error on directives
735 containing both tile and collapse clauses.
736 (resolve_oacc_loop_blocks): Represent '*' tile arguments as zero.
737 * trans-openmp.c (gfc_trans_omp_do): Lower tiled loops like
738 collapsed loops.
739
740 2017-02-07 Steven G. Kargl <kargl@gcc.gnu.org>
741
742 * trans-types.c (gfc_get_int_kind_from_width_isofortranen): Choose
743 REAL type with the widest precision if two (or more) have the same
744 storage size.
745
746 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
747
748 PR fortran/79344
749 * trans-stmt.c (gfc_trans_allocate): Only deallocate the components of
750 the temporary, when a new object was created for the temporary. Not
751 when it is just an alias to an existing object.
752
753 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
754
755 PR fortran/79335
756 * trans-decl.c (generate_coarray_sym_init): Retrieve the symbol's
757 attributes before using them.
758
759 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
760
761 PR fortran/78958
762 * trans-stmt.c (gfc_trans_allocate): Add the multiplying the _len
763 component of unlimited polymorphic objects when source-allocating.
764
765 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
766
767 PR fortran/79230
768 * trans-array.c (structure_alloc_comps): Ignore pointer components when
769 freeing structures.
770
771 2017-01-25 Maxim Ostapenko <m.ostapenko@samsung.com>
772
773 PR lto/79061
774 * f95-lang.c (gfc_create_decls): Include stringpool.h.
775 Pass main_input_filename to build_translation_unit_decl.
776
777 2017-01-23 Thomas Koenig <tkoenig@netcologne.de>
778
779 * arith.c (arith_power): If simplifying integer power expression
780 to zero, warn if -Winteger-division is given.
781
782 2017-01-22 Jakub Jelinek <jakub@redhat.com>
783
784 PR fortran/79154
785 * parse.c (matchs, matcho, matchds, matchdo): Replace return st;
786 with { ret = st; goto finish; }.
787 (decode_omp_directive): Allow declare simd, declare target and
788 simd directives in PURE/ELEMENTAL procedures. Only call
789 gfc_unset_implicit_pure on successful match of other procedures.
790
791 2017-01-21 Gerald Pfeifer <gerald@pfeifer.com>
792
793 * gfc-internals.texi (Symbol Versioning): Change references
794 to www.akkadia.org to https.
795
796 2017-01-21 Jakub Jelinek <jakub@redhat.com>
797
798 * gfortran.h (gfc_extract_int): Change return type to bool. Add
799 int argument with = 0.
800 * decl.c (gfc_match_kind_spec): Adjust gfc_extract_int caller, pass
801 1 as new last argument to it, don't emit gfc_error.
802 (match_char_kind): Likewise.
803 (gfc_match_decl_type_spec): Use gfc_get_string ("%s", x) instead of
804 gfc_get_string (x).
805 (gfc_match_derived_decl, match_binding_attributes): Likewise.
806 (gfc_match_structure_decl): Don't sprintf back to name, call
807 get_struct_decl directly with gfc_dt_upper_string (name) result.
808 * trans-stmt.c (gfc_trans_allocate): Use gfc_get_string ("%s", x)
809 instead of gfc_get_string (x).
810 * module.c (gfc_dt_lower_string, gfc_dt_upper_string,
811 gfc_match_use, gfc_match_submodule, find_true_name, mio_pool_string,
812 mio_symtree_ref, mio_expr, mio_omp_udr_expr, load_generic_interfaces,
813 load_omp_udrs, load_needed, read_module, dump_module,
814 create_intrinsic_function, import_iso_c_binding_module,
815 create_int_parameter, create_int_parameter_array, create_derived_type,
816 use_iso_fortran_env_module): Likewise.
817 * error.c (gfc_diagnostic_starter, gfc_diagnostic_start_span): Use
818 pp_verbatim (context->printer, "%s", x) instead of
819 pp_verbatim (context->printer, x).
820 * match.c (gfc_match_small_int): Adjust gfc_extract_int caller, pass
821 1 as new last argument to it, don't emit gfc_error.
822 (gfc_match_small_int_expr): Likewise.
823 * iresolve.c (gfc_get_string): Optimize format "%s" case.
824 (resolve_bound): Use gfc_get_string ("%s", x) instead of
825 gfc_get_string (x).
826 (resolve_transformational): Formatting fix.
827 (gfc_resolve_char_achar): Change name argument to bool is_achar,
828 use a single format string and if is_achar add "a" before "char".
829 (gfc_resolve_achar, gfc_resolve_char): Adjust callers.
830 * expr.c (gfc_extract_int): Change return type to bool, return true
831 if some error occurred. Add REPORT_ERROR argument, if non-zero
832 call either gfc_error or gfc_error_now depending on its sign.
833 * arith.c (arith_power): Adjust gfc_extract_int caller.
834 * symbol.c (gfc_add_component): Use gfc_get_string ("%s", x) instead
835 of gfc_get_string (x).
836 (gfc_new_symtree, gfc_delete_symtree, gfc_get_uop, gfc_new_symbol,
837 gfc_get_gsymbol, generate_isocbinding_symbol): Likewise.
838 * openmp.c (gfc_match_omp_clauses): Adjust gfc_extract_int caller, pass
839 -1 as new last argument to it, don't emit gfc_error_now.
840 (gfc_match_omp_declare_reduction): Use gfc_get_string ("%s", x)
841 instead of gfc_get_string (x).
842 * check.c (kind_check): Adjust gfc_extract_int caller.
843 * intrinsic.c (add_sym, find_sym, make_alias): Use
844 gfc_get_string ("%s", x) instead of gfc_get_string (x).
845 * simplify.c (get_kind, gfc_simplify_btest, gfc_simplify_maskr,
846 gfc_simplify_maskl, gfc_simplify_poppar, gfc_simplify_repeat,
847 gfc_simplify_selected_int_kind, gfc_simplify_selected_real_kind):
848 Adjust gfc_extract_int callers.
849 * trans-decl.c (gfc_find_module): Use gfc_get_string ("%s", x)
850 instead of gfc_get_string (x).
851 * matchexp.c (expression_syntax): Add const.
852 * primary.c (match_kind_param, match_hollerith_constant,
853 match_string_constant): Adjust gfc_extract_int callers.
854 (match_keyword_arg): Use gfc_get_string ("%s", x) instead of
855 gfc_get_string (x).
856 * frontend-passes.c (optimize_minmaxloc): Likewise.
857
858 2017-01-19 Andre Vehreschild <vehre@gcc.gnu.org>
859
860 PR fortran/70696
861 * trans-decl.c (gfc_build_qualified_array): Add static decl to parent
862 function only, when the decl-context is not the translation unit.
863
864 2017-01-18 Louis Krupp <louis.krupp@zoho.com>
865
866 PR fortran/50069
867 PR fortran/55086
868 * trans-expr.c (gfc_conv_variable): Don't treat temporary variables
869 as function arguments.
870 * trans-stmt.c (forall_make_variable_temp,
871 generate_loop_for_temp_to_lhs, gfc_trans_assign_need_temp,
872 gfc_trans_forall_1): Don't adjust offset of forall temporary
873 for array sections, make forall temporaries work for substring
874 expressions, improve test coverage by adding -ftest-forall-temp
875 option to request usage of temporary array in forall code.
876 * lang.opt: Add -ftest-forall-temp option.
877 * invoke.texi: Add -ftest-forall-temp option.
878
879 2017-01-18 Andre Vehreschild <vehre@gcc.gnu.org>
880
881 * primary.c (caf_variable_attr): Improve figuring whether the current
882 component is the last one refed.
883 * trans-stmt.c (gfc_trans_allocate): Do not generate sync_all calls
884 when allocating pointer or allocatable components.
885
886 2017-01-18 Andre Vehreschild <vehre@gcc.gnu.org>
887
888 * gfortran.texi: Add missing parameters to caf-API functions. Correct
889 typos and clarify some descriptions.
890
891 2017-01-18 Andre Vehreschild <vehre@gcc.gnu.org>
892
893 PR fortran/70696
894 Missed some cases, here they are:
895 * trans-decl.c (gfc_build_qualified_array): Add static tokens to the
896 parent function's scope.
897 * trans-expr.c (gfc_get_tree_for_caf_expr): Shorten code. Remove
898 unnecessary assert.
899
900 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
901
902 PR fortran/70697
903 * resolve.c (resolve_lock_unlock_event): Resolve the expression for
904 event's until_count.
905
906 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
907
908 PR fortran/70696
909 * trans-expr.c (gfc_get_tree_for_caf_expr): Ensure the backend_decl
910 is valid before accessing it.
911
912 2017-01-09 Jakub Jelinek <jakub@redhat.com>
913
914 PR translation/79019
915 PR translation/79020
916 * decl.c (attr_decl1): Fix spelling in translatable string.
917 * intrinsic.texi: Fix spelling - invokation -> invocation.
918 * lang.opt (faggressive-function-elimination, gfc_convert): Fix
919 typos in descriptions.
920 * openmp.c (resolve_omp_clauses): Add missing whitespace to
921 translatable strings.
922
923 2017-01-08 Martin Sebor <msebor@redhat.com>
924
925 PR tree-optimization/78913
926 PR middle-end/77708
927 * trans-common.c (build_equiv_decl): Increase buffer size to avoid
928 truncation for any argument.
929 * trans-types.c (gfc_build_logical_type): Same.
930
931 2017-01-07 Andre Vehreschild <vehre@gcc.gnu.org>
932
933 PR fortran/78781
934 PR fortran/78935
935 * expr.c (gfc_check_pointer_assign): Return the same error message for
936 rewritten coarray pointer assignments like for plain ones.
937 * gfortran.h: Change prototype.
938 * primary.c (caf_variable_attr): Set attributes used ones only only
939 ones. Add setting of pointer_comp attribute.
940 (gfc_caf_attr): Add setting of pointer_comp attribute.
941 * trans-array.c (gfc_array_allocate): Add flag that the component to
942 allocate is not an ultimate coarray component. Add allocation of
943 pointer arrays.
944 (structure_alloc_comps): Extend nullify to treat pointer components in
945 coarrays correctly. Restructure nullify to remove redundant code.
946 (gfc_nullify_alloc_comp): Allow setting caf_mode flags.
947 * trans-array.h: Change prototype of gfc_nullify_alloc_comp ().
948 * trans-decl.c (generate_coarray_sym_init): Call nullify_alloc_comp for
949 derived type coarrays with pointer components.
950 * trans-expr.c (gfc_trans_structure_assign): Also treat pointer
951 components.
952 (trans_caf_token_assign): Handle assignment of token of scalar pointer
953 components.
954 (gfc_trans_pointer_assignment): Call above routine.
955 * trans-intrinsic.c (conv_expr_ref_to_caf_ref): Add treating pointer
956 components.
957 (gfc_conv_intrinsic_caf_get): Likewise.
958 (conv_caf_send): Likewise.
959 * trans-stmt.c (gfc_trans_allocate): After allocating a derived type in
960 a coarray pre-register the tokens.
961 (gfc_trans_deallocate): Simply determining the coarray type (scalar or
962 array) and deregistering it correctly.
963 * trans-types.c (gfc_typenode_for_spec): Replace in_coarray flag by the
964 actual codim to allow lookup of array types in the cache.
965 (gfc_build_array_type): Likewise.
966 (gfc_get_array_descriptor_base): Likewise.
967 (gfc_get_array_type_bounds): Likewise.
968 (gfc_get_derived_type): Likewise.
969 * trans-types.h: Likewise.
970 * trans.c (gfc_deallocate_with_status): Enable deregistering of all kind
971 of coarray components.
972 (gfc_deallocate_scalar_with_status): Use free() in fcoarray_single mode
973 instead of caf_deregister.
974
975 2017-01-06 Jakub Jelinek <jakub@redhat.com>
976
977 * simplify.c (simplify_transformation_to_array): Use
978 GCC_DIAGNOSTIC_PUSH_IGNORED and GCC_DIAGNOSTIC_POP instead of
979 #pragma GCC diagnostic {push,ignored,pop}.
980
981 2017-01-06 Alexandre Oliva <aoliva@redhat.com>
982
983 * simplify.c (simplify_transformation_to_array): Silence
984 array bounds warning. Fix whitespace.
985
986 2017-01-04 Alexandre Oliva <aoliva@redhat.com>
987
988 * module.c (load_omp_udrs): Initialize name.
989
990 2017-01-02 Janne Blomqvist <jb@gcc.gnu.org>
991
992 PR fortran/78534
993 * trans-expr.c (gfc_trans_string_copy): Rework string copy
994 algorithm to avoid -Wstringop-overflow warning.
995
996 2017-01-01 Jakub Jelinek <jakub@redhat.com>
997
998 Update copyright years.
999
1000 * gfortranspec.c (lang_specific_driver): Update copyright notice
1001 dates.
1002 * gfc-internals.texi: Bump @copying's copyright year.
1003 * gfortran.texi: Ditto.
1004 * intrinsic.texi: Ditto.
1005 * invoke.texi: Ditto.
1006 \f
1007 Copyright (C) 2017 Free Software Foundation, Inc.
1008
1009 Copying and distribution of this file, with or without modification,
1010 are permitted in any medium without royalty provided the copyright
1011 notice and this notice are preserved.