]> gcc.gnu.org Git - gcc.git/blame - gcc/fortran/ChangeLog
Daily bump.
[gcc.git] / gcc / fortran / ChangeLog
CommitLineData
bbdef456
PT
12018-11-24 Paul Thomas <pault@gcc.gnu.org>
2
3 Backport from trunk
4 PR fortran/88143
5 * resolve.c (resolve_variable): Check for associate names with
6 NULL target.
7
19349207
JJ
82018-11-05 Jakub Jelinek <jakub@redhat.com>
9
10 Backported from mainline
11 2018-10-25 Jakub Jelinek <jakub@redhat.com>
12
13 PR fortran/87725
14 * openmp.c (gfc_match_omp_clauses): Parse simd, monotonic and
15 nonmonotonic modifiers regardless of if they have been parsed
16 already or if the opposite one has. Fix up check whether
17 comma after modifier should be parsed.
18 (resolve_omp_clauses): Diagnose schedule modifier restrictions.
19
2af2edf9 202019-11-03 Tobias Burnus <burnus@net-b.de>
19349207 21 Thomas Koenig <tkoenig@gcc.gnu.org>
2af2edf9
TB
22
23 Backport from trunk
24 PR fortran/87597
25 * expr.c (gfc_simplify_expr): Avoid simplifying
26 the 'array' argument to lbound/ubound/lcobound/
27 ucobound.
28
4867d759
PT
292018-10-08 Paul Thomas <pault@gcc.gnu.org>
30
31 PR fortran/83999
32 Backport from trunk
33 * resolve.c (resolve_fl_procedure): Include class functions in
34 the test that elemental function results be scalar.
35
7b6eeffd
PT
362018-10-08 Paul Thomas <pault@gcc.gnu.org>
37
38 Backport from trunk
39 PR fortran/86372
40 * trans-stmt.c (trans_associate_var): Character associate names
41 with variable string length do not have to be deferred length
42 for the string length to be set, if variable.
43
42105025
TK
442018-10-06 Thomas Koenig <tkoenig@gcc.gnu.org>
45
7b6eeffd 46 PR fortran/86111
42105025 47 Backport from trunk
7b6eeffd
PT
48 * gfortran.h (enum arith): Add ARITH_WRONGCONCAT.
49 * arith.h (gfc_arith_error): Issue error for ARITH_WRONGCONCAT.
50 (gfc_arith_concat): If the types of op1 and op2 are not
51 character of if their kinds do not match, issue ARITH_WRONGCONCAT.
42105025 52
dd71307f
JW
532018-09-18 Janus Weil <janus@gcc.gnu.org>
54
55 Backport from trunk
56 PR fortran/85395
57 * decl.c (match_binding_attributes): Use correct default accessibility
58 for procedure pointer components.
59
fa2128cb
JW
602018-09-18 Janus Weil <janus@gcc.gnu.org>
61
62 Backport from trunk
63 PR fortran/86830
64 * expr.c (gfc_is_simply_contiguous): Handle type-bound procedure calls
65 with non-polymorphic objects.
66
9856bb90
PT
672018-09-18 Paul Thomas <pault@gcc.gnu.org>
68
69 Backported from trunk
70 PR fortran/85954
71 * resolve.c (resolve_assoc_var): If the target expression is a
72 deferred charlen dummy and the associate name shares the
73 charlen, generate a new one. Make sure that new charlens are in
74 the namespace list so that they get cleaned up.
75 * trans-array.c (gfc_is_reallocatable_lhs): Associate names are
76 not reallocatable.
77 * trans-decl.c (gfc_get_symbol_decl): Put deferred character
78 length dummy and result arrays on the deferred initialization
79 list so that the variable length arrays can be correctly dealt
80 with.
81 * trans-expr.c (gfc_conv_string_length): Return if 'expr' is
82 NULL rather than ICEing.
83
c09bc715
PT
842018-09-12 Paul Thomas <pault@gcc.gnu.org>
85
86 Backported from trunk
87 PR fortran/87284
88 * trans-expr.c (gfc_trans_class_init_assign): Access to
89 to array elements of the dynamic type requires that the array
90 reference be added to the class expression and not the _data
91 component, unlike scalar expressions.
92
c4d38471
PT
932018-09-11 Paul Thomas <pault@gcc.gnu.org>
94
95 Backported from trunk
96 PR fortran/87277
97 * expr.c (is_subref_array): Add the check of dimensionality for
98 class, dummy, pointer arrays.
99
a0fff4c4
JW
1002018-09-05 Janus Weil <janus@gcc.gnu.org>
101
102 Backported from trunk
103 PR fortran/86116
104 * interface.c (compare_type): Remove a CLASS/TYPE check.
105 (compare_type_characteristics): New function that behaves like the old
106 'compare_type'.
107 (gfc_check_dummy_characteristics, gfc_check_result_characteristics):
108 Call 'compare_type_characteristics' instead of 'compare_type'.
109
afe13a41
JD
1102018-09-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
111
112 * simplify.c (gfc_simplify_modulo): Re-arrange code to test
113 whether 'P' is zero and issue an error if it is.
114
bc35aae0
PT
1152018-09-01 Paul Thomas <pault@gcc.gnu.org>
116
117 PR fortran/86328
118 PR fortran/86760
119 * trans-array.c (gfc_conv_scalarized_array_ref): Do not fix
120 info->descriptor but pass it directly to gfc_build_array_ref.
121 (gfc_conv_array_ref): Likewise for se->expr.
122 * trans.c (gfc_build_array_ref): If 'decl' is a COMPONENT_REF
123 obtain the span field directly from it.
124
3911571d
TK
1252018-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
126
127 Backport from trunk
128 PR fortran/86837
129 * frontend-passes.c (var_in_expr_callback): New function.
130 (var_in_expr): New function.
131 (traverse_io_block): Use var_in_expr instead of
132 gfc_check_dependency for checking if the variable depends on the
133 previous interators.
134
5efd6bce
PT
1352018-08-12 Paul Thomas <pault@gcc.gnu.org>
136
137 Backported from trunk
138 PR fortran/86906
139 * resolve.c (resolve_fl_variable_derived): Check if the derived
140 type is use associated before checking for the host association
141 error.
142
b1f88ff2
JJ
1432018-07-26 Jakub Jelinek <jakub@redhat.com>
144
145 Backported from mainline
146 2018-07-10 Jakub Jelinek <jakub@redhat.com>
147
148 PR fortran/86421
149 * module.c (omp_declare_simd_clauses): Add LINEAR with _REF, _VAL and
150 _UVAL suffixes.
151 (mio_omp_declare_simd): Save and restore ref, val and uval modifiers
152 on linear clauses. Initialize n->where to gfc_current_locus.
153
ddeb81e7
GA
1542018-07-26 Release Manager
155
156 * GCC 8.2.0 released.
157
0036d193
FR
1582018-07-16 Fritz Reese <fritzoreese@gmail.com>
159
160 PR fortran/83184
161 Backport from trunk.
162 * decl.c (match_old_style_init): Initialize locus of variable expr when
163 creating a data variable.
164 (match_clist_expr): Verify array is explicit shape/size before
165 attempting to allocate constant array constructor.
166
674c2cac
FR
1672018-07-16 Fritz Reese <fritzoreese@gmail.com>
168
169 Backport from trunk:
170
171 PR fortran/86417
172 * module.c (mio_component): Set component->loc when loading from module.
173
174 PR fortran/83183
175 PR fortran/86325
176 * expr.c (class_allocatable, class_pointer, comp_allocatable,
177 comp_pointer): New helpers.
178 (component_initializer): Generate EXPR_NULL for allocatable or pointer
179 components. Do not generate initializers for components within BT_CLASS.
180 Do not assign to comp->initializer.
181 (gfc_generate_initializer): Use new helpers; move code to generate
182 EXPR_NULL for class allocatable components into component_initializer().
183
ff9b55e2
PT
1842018-07-02 Paul Thomas <pault@gcc.gnu.org>
185
186 PR fortran/82969
187 PR fortran/86242
188 * trans-array.c (structure_alloc_comps): Do not explicitly copy
189 procedure pointer components.
190
945b9c9e
FR
1912018-06-28 Fritz Reese <fritzoreese@gmail.com>
192
193 PR fortran/82865
194 Backport from trunk.
195 * decl.c (gfc_match_type): Refactor and check for PDT declarations.
196
40a4fc21
FR
1972018-06-25 Fritz Reese <fritzoreese@gmail.com>
198
199 PR fortran/82972
200 PR fortran/83088
201 PR fortran/85851
202 Backport from trunk.
203 * expr.c (component_initializer): Assign init expr to c->initializer.
204 (generate_isocbinding_initializer): New.
205 (gfc_generate_initializer): Call generate_isocbinding_initializer to
206 generate initializers for c_ptr and c_funptr with -finit-derived.
207
0ea08d38
PT
2082018-06-25 Paul Thomas <pault@gcc.gnu.org>
209
210 PR fortran/83118
211 Back port from trunk
212 * resolve.c (resolve_ordinary_assign): Force the creation of a
213 vtable for assignment of non-polymorphic expressions to an
214 unlimited polymorphic object.
215 * trans-array.c (gfc_alloc_allocatable_for_assignment): Use the
216 size of the rhs type for such assignments. Set the dtype, _len
217 and vptrs appropriately.
218 * trans-expr.c (gfc_trans_assignment): Force the use of the
219 _copy function for these assignments.
220
53f37cfe
CP
2212018-06-15 Cesar Philippidis <cesar@codesourcery.com>
222
223 Backport from mainline
224 2018-06-13 Cesar Philippidis <cesar@codesourcery.com>
225
226 PR fortran/85703
227 * parse.c (decode_oacc_directive): Set gfc_matching_function
228 to false.
229 (decode_omp_directive): Likewise.
230
3a8d6494
CP
2312018-06-15 Cesar Philippidis <cesar@codesourcery.com>
232
233 Backport from mainline
234 2018-06-13 Cesar Philippidis <cesar@codesourcery.com>
235
236 PR fortran/85702
237 * openmp.c (gfc_match_oacc_wait): Use %C to report error location.
238
26a5c9ea
CP
2392018-06-15 Cesar Philippidis <cesar@codesourcery.com>
240
241 Backport from mainline
242 2018-06-05 Cesar Philippidis <cesar@codesourcery.com>
243
244 PR fortran/85701
245 * openmp.c (gfc_resolve_oacc_declare): Error on functions and
246 subroutine data clause arguments.
247
c575c6d2
SK
2482018-06-13 Steven G. Kargl <kargl@gcc.gnu.org>
249
250 PR fortran/86110
0ea08d38 251 * array.c (gfc_resolve_character_array_constructor): Avoid NULL
c575c6d2
SK
252 pointer dereference.
253
09c6ee64
SK
2542018-06-12 Steven G. Kargl <kargl@gcc.gnu.org>
255
256 PR fortran/44491
257 * expr.c (gfc_check_assign): Select non-NULL locus.
258
04d26d0e
SK
2592018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
260
261 PR fortran/85138
262 PR fortran/85996
263 PR fortran/86051
264 * decl.c (gfc_match_char_spec): Use private namespace in attempt to
265 reduce a charlen to a constant.
266
994774fc
SK
2672018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
268
269 PR fortran/86059
270 * array.c (match_array_cons_element): NULL() cannot be in an
271 array constructor.
272
3068f997
SK
2732018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
274
275 PR fortran/63514
276 * symbol.c (gfc_add_volatile): Enforce F2008:C1282 and F2018:C1588.
277
211f93e3
SK
2782018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
279
280 PR fortran/78278
281 Committed as part of r261364
282 * data.c (gfc_assign_data_value): Re-arrange code to allow for
283 an error for double initialization of CHARACTER entities.
284
68d2262f
SK
2852018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
286
287 PR fortran/38351
288 * resolve.c (resolve_operator): Provide better error message for
289 derived type entity used in an binary intrinsic numeric operator.
290
fe4f79c0
SK
2912018-06-09 Steven G. Kargl <kargl@gcc.gnu.org>
292
293 PR fortran/78571
294 * data.c (create_character_initializer): Return early if type is
295 incompatible with CHARACTER.
296
84f486e7
TK
2972018-06-09 Thomas Koenig <tkoenig@gcc.gnu.org>
298
299 PR fortran/85631
300 Backport from trunk.
301 * trans.h (gfc_ss): Add field no_bounds_check.
302 * trans-array.c (gfc_conv_ss_startstride): If flag_realloc_lhs and
303 ss->no_bounds_check is set, do not use runtime checks.
304 * trans-expr.c (gfc_trans_assignment_1): Set lss->no_bounds_check
305 for reallocatable lhs.
306
638fab73
SK
3072018-06-07 Steven G. Kargl <kargl@gcc.gnu.org>
308
309 PR fortran/86045
310 Backport from trunk.
311 * simplify.c (gfc_simplify_mod): Re-arrange code to test whether
312 'P' is zero and issue an error if it is.
313
83b578b1
TK
3142018-06-07 Thomas Koenig <tkoenig@gcc.gnu.org>
315
316 PR fortran/85641
317 Backport from trunk.
318 * frontend-passes.c (is_fe_temp): Add prototype.
319 (realloc_string_callback): Early return for frontend-generated
320 temporary.
321
463f60d0
SK
3222018-06-04 Steven G. Kargl <kargl@gcc.gnu.org>
323
324 PR fortran/85981
325 * resolve.c (resolve_allocate_deallocate): Check errmsg is default
326 character kind.
327
ad0fbf0d
SK
3282018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
329
330 PR fortran/85786
331 * trans-intrinsic.c (gfc_conv_associated): Add arg1se to the block.
332
43de19a6
SK
3332018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
334
335 PR fortran/85895
336 Backport from trunk
337 * resolve.c (resolve_sync): Resolve expression before checking for
338 an error.
339
16d584b3
SK
3402018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
341
342 PR fortran/85780
343 Backport from trunk
344 * resolve.c (resolve_fl_procedure): Avoid NULL dereference.
345
6505ea02
SK
3462018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
347
348 PR fortran/85779
349 Backport from trunk
350 * decl.c (gfc_match_derived_decl): Fix NULL point dereference.
351
d7a19075
SK
3522018-05-25 Steven G. Kargl <kargl@gcc.gnu.org>
353
354 PR fortran/85543
355 Backport from trunk
356 * resolve.c (update_current_proc_array_outer_dependency): Avoid NULL
357 pointer dereference.
358
9d7cd37c
PT
3592018-05-20 Paul Thomas <pault@gcc.gnu.org>
360
361 PR fortran/80657
362 Backport from trunk
363 * resolve.c (flag_fn_result_spec): Use the 'sym' argument to
364 test for self refs to the function result in the character len
365 expression. If a self reference is found, emit an error and
366 return true.
367 (resolve_fntype): Use the function symbol in the calls to the
368 above.
369
9b2b4766
PT
3702018-05-20 Paul Thomas <pault@gcc.gnu.org>
371
372 PR fortran/49636
373 Backport from trunk
374 * trans-array.c (gfc_get_array_span): Renamed from
375 'get_array_span'.
376 (gfc_conv_expr_descriptor): Change references to above.
377 * trans-array.h : Add prototype for 'gfc_get_array_span'.
378 * trans-stmt.c (trans_associate_var): If the associate name is
379 a subref array pointer, use gfc_get_array_span for the span.
380
3ddfcb23
PT
3812018-05-20 Paul Thomas <pault@gcc.gnu.org>
382
383 PR fortran/82275
384 Backport from trunk
385 * match.c (gfc_match_type_spec): Go through the array ref and
386 decrement 'rank' for every dimension that is an element.
387
65e3cafd
PT
3882018-05-19 Paul Thomas <pault@gcc.gnu.org>
389
390 PR fortran/82923
391 PR fortran/66694
392 PR fortran/82617
393 Backport from trunk
394 * trans-array.c (gfc_alloc_allocatable_for_assignment): Set the
395 charlen backend_decl of the rhs expr to ss->info->string_length
396 so that the value in the current scope is used.
397
491f0d87
PT
3982018-05-13 Paul Thomas <pault@gcc.gnu.org>
399
400 PR fortran/85742
401 * trans-types.c (gfc_get_dtype_rank_type): Reorder evaluation
402 of 'size'. If the element type is a pointer use the size of the
403 TREE_TYPE of the type, unless it is VOID_TYPE. In this latter
404 case, set the size to zero.
405
02e4b9e1
SK
4062018-05-12 Steven G. Kargl <kargl@gcc.gnu.org>
407
408 PR fortran/85542
409 Backport from trunk
410 * expr.c (check_inquiry): Avoid NULL pointer dereference.
491f0d87 411
e41047ce
SK
4122018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
413
414 PR fortran/70870
415 Backport from trunk
416 * data.c (gfc_assign_data_value): Check that a data object does
417 not also have default initialization.
418
3eee1299
SK
4192018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
420
421 PR fortran/85521
422 Backport from trunk
423 * array.c (gfc_resolve_character_array_constructor): Substrings
424 with upper bound smaller than lower bound are zero length strings.
425
c46d6cbb
SK
4262018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
427
428 PR fortran/85687
429 Backport from trunk
430 * check.c (gfc_check_rank): Check that the argument is a data object.
431
408be5fc
PT
4322018-05-11 Paul Thomas <pault@gcc.gnu.org>
433
434 PR fortran/68846
435 PR fortran/70864
436 Backport from trunk
437 * resolve.c (get_temp_from_expr): The temporary must not have
438 dummy or intent attributes.
439
238b4836
AV
4402018-05-06 Andre Vehreschild <vehre@gcc.gnu.org>
441
442 PR fortran/85507
443 Backport from trunk.
444 * dependency.c (gfc_dep_resolver): Revert looking at coarray dimension
445 introduced by r259385.
446 * trans-intrinsic.c (conv_caf_send): Always report a dependency for
447 same variables in coarray assignments.
448
730af511
GA
4492018-05-02 Release Manager
450
451 * GCC 8.1.0 released.
452
58da192e
SK
4532018-04-24 Steven G. Kargl <kargl@gcc.gnu.org>
454
455 PR fortran/85520
456 * decl.c (gfc_match_char_spec): Check for negative length and set to 0.
457
2368eaf9
AV
4582018-04-14 Andre Vehreschild <vehre@gcc.gnu.org>
459
460 PR fortran/81773
461 PR fortran/83606
462 * dependency.c (gfc_dep_resolver): Coarray indexes are to be ignored
463 during dependency computation. They define no data dependency.
464 * trans-array.c (conv_array_index_offset): The stride can not be set
465 here, prevent fail.
466 * trans-intrinsic.c (conv_caf_send): Add creation of temporary array
467 for caf_get's result and copying to the array with vectorial
468 indexing.
469
acd1559a
TK
4702018-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
471
472 PR fortran/85387
473 * frontend-passes.c (traverse_io_block): Check for start, end or
474 stride being defined by an outer implied DO loop.
475
bc436e10
TK
4762018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
477
478 PR fortran/83064
479 PR testsuite/85346
480 * trans-stmt.c (gfc_trans_forall_loop): Use annot_expr_ivdep_kind
481 for annotation and remove dependence on -ftree-parallelize-loops.
482
24f80aa4
JJ
4832018-04-10 Jakub Jelinek <jakub@redhat.com>
484
485 PR fortran/85313
486 * openmp.c (resolve_omp_do): Remove bogus if (j < i) break;.
487 (resolve_oacc_nested_loops): Likewise. Formatting fix.
488
f0caea48
TK
4892018-04-09 Thomas Koenig <tkoenig@gcc.gnu.org>
490
491 PR fortran/83064
492 * trans-stmt.c (gfc_trans_forall_loop): Remove annotation for
493 parallell processing of DO CONCURRENT -ftree-parallelize-loops
494 is set.
495
06e8d82e
TK
4962018-04-09 Thomas Koenig <tkoenig@gcc.gnu.org>
497
498 PR fortran/51260
499 * resolve.c (resolve_variable): Simplify cases where access to a
500 parameter array results in a single constant.
501
078c5aff
TK
5022018-04-02 Thomas Koenig <tkoenig@gcc.gnu.org>
503
504 PR fortran/85102
505 * decl.c (variable_decl): If upper or lower bounds simplify
506 to a constant, use that.
507
0ada0dc0
PT
5082018-03-30 Paul Thomas <pault@gcc.gnu.org>
509
510 PR fortran/84931
511 * simplify.c (gfc_convert_constant): Handle case of array
512 constructors within an array that has no iterator and improve
513 the conciseness of this section of code.
514
cd6094bf
TK
5152017-03-30 Thomas Koenig <tkoenig@gcc.gnu.org>
516
517 PR fortran/85111
518 * array.c (gfc_resolve_character_array_constructor): Early
519 exit for zero-size arrays.
520 * simplify.c (simplify_transformation_to_array): Exit early
521 if the result size is zero.
522 (simplify_minmaxloc_to_array): Likewise.
523
9b0588e9
MM
5242018-03-28 Mikael Morin <mikael@gcc.gnu.org>
525
526 PR fortran/69497
527 * symbol.c (gfc_symbol_done_2): Start freeing namespaces
528 from the root.
0ada0dc0 529 (gfc_free_namespace): Restore assert (revert r258839).
9b0588e9 530
7ee4f6f3
JJ
5312018-03-28 Jakub Jelinek <jakub@redhat.com>
532
533 * gfortran.h (gfc_dt): Rename default_exp field to dec_ext.
534 * ioparm.def (IOPARM_dt_default_exp): Rename to ...
535 (IOPARM_dt_dec_ext): ... this.
536 * trans-io.c (build_dt): Adjust for default_exp renaming to
537 dec_ext and IOPARM_dt_default_exp renaming to IOPARM_dt_dec_ext.
538 * io.c (match_io): Likewise.
539
ef22816c
TK
5402018-03-27 Thomas Koenig <tkoenig@gcc.gnu.org>
541
542 PR fortran/85084
543 * frontend-passes.c (gfc_run_passes): Do not run front-end
544 optimizations if a previous error occurred.
545
13a7688f
TK
5462018-03-27 Thomas Koenig <tkoenig@gcc.gnu.org>
547 Harald Anlauf <anlauf@gmx.de>
548
549 PR fortran/85083
550 * primary.c (gfc_convert_to_structure_constructor): Check
551 conformance of argument types in structure constructor.
552
a48718a2
TK
5532018-03-26 Thomas Koenig <tkoenig@gcc.gnu.org>
554
555 PR fortran/66709
556 * io.c: Include constructor.h.
557 (resolve_tag_format): For a constant character array, concatenate
558 into a single character expression.
559
a2b471e4
SJ
5602018-03-25 Seth Johnson <johnsonsr@ornl.gov>
561 Dominique d'Humieres <dominiq@gcc.gnu.org>
562
563 PR fortran/84924
564 * check.c (gfc_check_c_f_pointer): Allow scalar noninteroperable
565 scalar derived type with -std=f2003 and -std=f2008.
566
8954606d
JD
5672018-03-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
568 Dominique d'Humieres <dominiq@gcc.gnu.org>
569
12056b7c 570 PR fortran/69497
8954606d
JD
571 * symbol.c (gfc_free_namespace): Delete the assert and only if
572 refs count is equals zero, free the namespace. Otherwise,
573 something is halfway and other errors will resound.
574
335d0338
TK
5752018-03-24 Thomas Koenig <tkoenig@gcc.gnu.org>
576
577 PR fortran/70068
578 * expr.c (find_substring_ref): Change types of start, end
579 and length variables to gfc_charlen_t. Set length to zero
580 for empty substring.
581
ba77f7ba
SK
5822018-03-24 Steven G. Kargl <kargl@gcc.gnu.org>
583
584 PR fortran/42651
585 * decl.c (check_function_name): Improved error message
586 (gfc_match_volatile, gfc_match_asynchronous) Use check_function_name.
587
b74fa126
SK
5882018-03-22 Steven G. Kargl <kargl@gcc.gnu.org>
589
590 PR fortran/84922
591 * decl.c (get_proc_name): If the MODULE prefix appears in interface
592 body, then it must appear on the contained subroutine or function.
593 While here, fix nearby mis-indented code.
594
482768bd
TK
5952018-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
596 Harald Anlauf <anlauf@gmx.de>
597
598 PR fortran/84957
599 * trans-types.c (gfc_sym_type): Do not dereference NULL pointer.
600
983d49dd
JB
6012018-03-21 Janne Blomqvist <jb@gcc.gnu.org>
602
603 PR fortran/84615
604 * trans-expr.c (gfc_conv_procedure_call): Convert charlen to
605 gfc_charlen_type_node when calling procedure.
606
f11600c9
SK
6072018-03-20 Steven G. Kargl <kargl@gcc.gnu.org>
608
609 PR fortran/85001
610 * interface.c (symbol_rank): Remove bogus null pointer check that
983d49dd 611 crept in when translating a ternary operator into an if-else
f11600c9
SK
612 constructor.
613
949d0060
TK
6142018-03-19 Thomas Koenig <tkoenig@gcc.gnu.org>
615
616 PR fortran/84931
617 * simplify.c (gfc_convert_constant): Correctly handle iterators
618 for type conversion.
619
96c8b253
SK
6202018-03-18 Steven G. Kargl <kargl@gcc.gnu.org>
621
622 PR fortran/77414
623 * decl.c (get_proc_name): Check for a subroutine re-defined in
624 the contain portion of a subroutine. Change language of existing
625 error message to better describe the issue. While here fix whitespace
626 issues.
627
81ea7c11
SK
6282018-03-18 Steven G. Kargl <kargl@gcc.gnu.org>
629
630 PR fortran/65453
631 * decl.c (get_proc_name): Catch clash between a procedure statement
632 and a contained subprogram
633
299ab1b2
SK
6342018-03-16 Steven G. Kargl <kargl@gcc.gnu.org>
635
636 PR fortran/69395
637 * decl.c (merge_array_spec): Correct the error condition.
638
64300da7
SK
6392018-03-15 Steven G. Kargl <kargl@gcc.gnu.org>
640
641 PR fortran/78741
642 * decl.c (get_proc_name): Check for clash of entry name with
643 subroutine name.
644
93d1ab50
SK
6452018-03-15 Steven G. Kargl <kargl@gcc.gnu.org>
646
647 PR fortran/69395
648 * decl.c (merge_array_spec): Limit the merging to maximum allowed
649 dimensions, and issue error message if limit is exceeded.
650
17164de4
SK
6512018-03-13 Steven G. Kargl <kargl@gcc.gnu.org>
652
653 * check.c (gfc_check_kill_sub): Remove check for INTEGER(4) or (8).
654 * intrinsic.c (add_functions): Remove reference to gfc_resolve_kill.
655 (add_subroutines): Remove reference to gfc_resolve_kill_sub.
656 * intrinsic.texi: Update documentation.
657 * iresolve.c (gfc_resolve_kill, gfc_resolve_kill_sub): Remove.
658 * trans-decl.c (gfc_build_intrinsic_function_decls): Add
659 gfor_fndecl_kill and gfor_fndecl_kill_sub
660 * trans-intrinsic.c (conv_intrinsic_kill, conv_intrinsic_kill_sub): new
661 functions.
662 (gfc_conv_intrinsic_function): Use conv_intrinsic_kill.
663 (gfc_conv_intrinsic_subroutine): Use conv_intrinsic_kill_sub.
664 * trans.h: Declare gfor_fndecl_kill and gfor_fndecl_kill_sub.
665
26219cee
PT
6662018-03-11 Paul Thomas <pault@gcc.gnu.org>
667
668 PR fortran/84546
669 * trans-array.c (structure_alloc_comps): Make sure that the
670 vptr is copied and that the unlimited polymorphic _len is used
671 to compute the size to be allocated.
672 * trans-expr.c (gfc_get_class_array_ref): If unlimited, use the
673 unlimited polymorphic _len for the offset to the element.
674 (gfc_copy_class_to_class): Set the new 'unlimited' argument.
675 * trans.h : Add the boolean 'unlimited' to the prototype.
1813c97a
SK
676
6772018-03-11 Steven G. Kargl <kargl@gcc.gnu.org>
678
679 PR fortran/83939
680 * resolve.c (resolve_fl_procedure): Enforce F2018:C15100.
681
fbe1f017
SK
6822018-03-11 Steven G. Kargl <kargls@gcc.gnu.org>
683
684 * check.c (gfc_check_kill): Check pid and sig are scalar.
685 (gfc_check_kill_sub): Restrict kind to 4 and 8.
686 * intrinsic.c (add_function): Sort keyword list. Add pid and sig
687 keywords for KILL. Remove redundant *back="back" in favor of the
688 original *bck="back".
689 (add_subroutines): Sort keyword list. Add pid and sig keywords
690 for KILL.
691 * intrinsic.texi: Fix documentation to consistently use pid and sig.
692 * iresolve.c (gfc_resolve_kill): Kind can only be 4 or 8. Choose the
693 correct function.
694 (gfc_resolve_rename_sub): Add comment.
695
6962018-03-11 Thomas Koenig <tkoenig@gcc.gnu.org>
6f76317a
TK
697
698 PR fortran/66128
699 * simplify.c (simplify_transformation): Return default result for
700 empty array argument.
701 (gfc_simplify_all): Remove special-case handling for zerosize.
702 (gfc_simplify_any): Likewise.
703 (gfc_simplify_count): Likewise.
704 (gfc_simplify_iall): Likewise.
705 (gfc_simplify_iany): Likewise.
706 (gfc_simplify_iparity): Likewise.
707 (gfc_simplify_minval): Likewise.
708 (gfc_simplify_maxval): Likewise.
709 (gfc_simplify_norm2): Likewise.
710 (gfc_simplify_product): Likewise.
711 (gfc_simplify_sum): Likewise.
712
7d2fb01c
SK
7132018-03-10 Steven G. Kargl <kargl@gcc.gnu.org>
714
715 PR fortran/84734
716 * arith.c (check_result, eval_intrinsic): If result overflows, pass
717 the expression up the chain instead of a NULL pointer.
718
00df7c36
SK
7192018-03-07 Steven G. Kargl <kargl@gcc.gnu.org>
720
721 PR fortran/64124
722 PR fortran/70409
723 * decl.c (gfc_match_char_spec): Try to reduce a charlen to a constant.
724
5867bb9a
TK
7252017-03-06 Thomas Koenig <tkoenig@gcc.gnu.org>
726
727 PR fortran/84697
728 PR fortran/66128
729 * expr.c (simplify_parameter_variable): If p is a size zero array
730 and not an ARRAY_EXPR insert an empty array constructor and
731 return.
732 * gfortran.h: Add prototype for gfc_is_size_zero_array.
733 * simplify.c (is_size_zero_array): Make non-static and rename into
734 (gfc_is_size_zero_array): Check for parameter arrays of zero
735 size by comparing shape and absence of constructor.
736 (gfc_simplify_all): Use gfc_is_size_zero_array instead of
737 is_size_zero_array.
738 (gfc_simplify_count): Likewise.
739 (gfc_simplify_iall): Likewise.
740 (gfc_simplify_iany): Likewise.
741 (gfc_simplify_iparity): Likewise.
742 (gfc_simplify_minval): Likewise.
743 (gfc_simplify_maxval): Likewise.
744 (gfc_simplify_product): Likewise.
745 (gfc_simplify_sum): Likewise.
746
284ee475
SK
7472018-03-06 Steven G. Kargl <kargl@gcc.gnu.org>
748
749 PR fortran/56667
750 * primary.c (match_sym_complex_part): Give the matcher for an implied
751 do-loop a chance to run.
752
ac80378f
HA
7532018-03-03 Harald Anlauf <anlauf@gmx.de>
754
755 PR fortran/71085
756 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Do not
757 dereference NULL pointer.
758
94e6b5e5
SK
7592018-03-03 Steven G. Kargl <kargl@gcc.gnu.org>
760
761 PR fortran/66128
762 * simplify.c (is_size_zero_array): New function to check for size
763 zero array.
26219cee 764 (gfc_simplify_all, gfc_simplify_any, gfc_simplify_count,
94e6b5e5
SK
765 gfc_simplify_iall, gfc_simplify_iany, gfc_simplify_iparity,
766 gfc_simplify_minval, gfc_simplify_maxval, gfc_simplify_norm2,
767 gfc_simplify_product, gfc_simplify_sum): Use it, and implement
768 requirements from F2018.
769
a900a060
SK
7702018-03-03 Steven G. Kargl <kargl@gcc.gnu.org>
771
772 PR fortran/51434
773 * simplify.c (gfc_simplify_transfer): Resolve mold.
774
c8bd326c
PT
7752018-03-03 Paul Thomas <pault@gcc.gnu.org>
776
777 PR fortran/80965
778 * resolve.c (build_loc_call): Change symtree name from 'loc' to
779 '_loc'.
780
71a93e81
PT
7812018-03-01 Paul Thomas <pault@gcc.gnu.org>
782
783 PR fortran/84219
784 * target-memory.c (gfc_interpret_derived): Assert that BT_VOID
785 components are caf tokens.
786 (gfc_target_interpret_expr): Treat BT_VOID expressions as
787 integers.
788
b120c8b2
PT
7892018-03-01 Paul Thomas <pault@gcc.gnu.org>
790
791 PR fortran/84538
792 * class.c (class_array_ref_detected): Remove the condition that
793 there be no reference after the array reference.
794 (find_intrinsic_vtab): Remove excess whitespace.
795 * trans-array.c (gfc_conv_scalarized_array_ref): Rename 'tmp'
796 as 'base and call build_class_array_ref earlier.
797
b14a13fa
PT
7982018-02-28 Paul Thomas <pault@gcc.gnu.org>
799
800 PR fortran/83901
801 * trans-stmt.c (trans_associate_var): Make sure that the se
802 expression is a pointer type before converting it to the symbol
803 backend_decl type.
804
09ef33c1
SK
8052018-02-25 Steven G. Kargl <kargl@gcc.gnu.org>
806
807 PR fortran/83633
808 * decl.c (variable_decl): Check that an explicit-shape-array with
809 nonconstant bounds is allowed.
810
8fba26f4
PT
8112018-02-25 Paul Thomas <pault@gcc.gnu.org>
812
813 PR fortran/84523
814 * trans-intrinsic.c (gfc_conv_allocated): If the argument se
815 has a pre block, add it to the expression pre block.
816
6ef1366a
TK
8172018-02-25 Thomas Koenig <tkoenig@gcc.gnu.org>
818
819 PR fortran/78238
820 * gfortran.h (gfc_integer_4_kind): Define.
821 * resolve.c (resolve_select_type): Make sure that the
822 kind of c->high is gfc_integer_4_kind.
823
c034c38f
SK
8242018-02-24 Steven G. Kargl <kargl@gcc.gnu.org>
825
826 PR fortran/30792
827 * decl.c (gfc_match_data): Check for invalid substring in
828 data-implied-do
829
161ac473
SK
8302018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
831
832 * intrinsic.texi: Arguments to MATMUL cannot both be rank one.
833
a26f63a8
SK
8342018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
835
836 PR fortran/84511
837 * trans-io.c (transfer_expr): Deal with C_LOC in transfer statement.
838
3453b6aa
SK
8392018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
840
841 PR fortran/84346
842 * interface.c (compare_actual_formal): Issue error if keyword is
843 used in a statement function.
844
55ebc31f
JD
8452018-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
846
847 PR fortran/84506
848 * trans-io.c (set_parameter_value_inquire): Adjust range check of
849 negative unit values for kind=8 units to the kind=4 negative limit.
850
1996c75e
PT
8512018-02-23 Paul Thomas <pault@gcc.gnu.org>
852
853 PR fortran/83149
854 * trans-types.c (gfc_sym_type): Test sym->ns->proc_name before
855 accessing its components.
856
6869c12d
PT
8572018-02-23 Paul Thomas <pault@gcc.gnu.org>
858
859 PR fortran/83149
860 * trans-decl.c (gfc_finish_var_decl): Test sym->ns->proc_name
861 before accessing its components.
862
c287dea0
PT
8632018-02-23 Paul Thomas <pault@gcc.gnu.org>
864
865 PR fortran/83148
866 * trans-const.c : Clean up some whitespace issues.
867 * trans-expr.c (gfc_conv_initializer): If an iso_c_binding
868 derived type has a kind value of zero, set it to the default
869 integer kind.
870
dffb1e22
JB
8712018-02-23 Janne Blomqvist <jb@gcc.gnu.org>
872
873 PR fortran/84519
874 * trans-decl.c (gfc_build_builtin_function_decls): Add bool
875 argument to stop and error stop decls.
876 * trans-stmt.c (gfc_trans_stop): Add false value to argument
877 lists.
878
6cc22cf4
JB
8792018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
880
881 PR 78534
882 PR 84509
883 * trans-decl.c (gfc_build_builtin_function_decls): Pass
884 gfc_int8_type node to pause_numeric, size_type_node to
885 pause_string.
886 * trans-stmt.c (gfc_trans_pause): Likewise.
887
3f5fabc0
JB
8882018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
889
890 * gfortran.texi: Update Coarray API description.
891 * trans-decl.c (gfc_build_builtin_function_decls): Use size_t for
892 character lengths, int for exit codes.
893 (generate_coarray_sym_init): Use size_t for character length.
894 * trans-intrinsic.c (conv_co_collective): Likewise.
895 * trans-stmt.c (gfc_trans_lock_unlock): Likewise.
896 (gfc_trans_event_post_wait): Likewise.
897 (gfc_trans_sync): Likewise.
898 (gfc_trans_stop): Use size_t for character lengths, int for exit
899 codes.
900
04946c6b
TK
9012018-02-20 Thomas Koenig <tkoenig@gcc.gnu.org>
902
903 PR fortran/48890
904 PR fortran/83823
905 * primary.c (gfc_convert_to_structure_constructor):
906 For a constant string constructor, make sure the length
907 is correct.
908
5c60dbc1
PT
9092018-02-19 Paul Thomas <pault@gcc.gnu.org>
910
911 PR fortran/83344
912 PR fortran/83975
913 * resolve.c (resolve_assoc_var): Rearrange the logic for the
914 determination of the character length of associate names. If
915 the associate name is missing a length expression or the length
916 expression is not a constant and the target is not a variable,
917 make the associate name allocatable and deferred length.
918 * trans-decl.c (gfc_get_symbol_decl): Null the character length
919 backend_decl for deferred length associate names that are not
920 variables. Set 'length' to gfc_index_zero_node for character
921 associate names, whose character length is a PARM_DECL.
922
d48fc34a
TK
9232018-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
924
925 PR fortran/35339
926 * frontend-passes.c (traverse_io_block): Remove workaround for
927 PR 80945.
928
87e8aa3b
AV
9292018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
930
931 * gfortran.texi: Document additional src/dst_type. Fix some typos.
932 * trans-decl.c (gfc_build_builtin_function_decls): Declare the new
933 argument of _caf_*_by_ref () with * e { get, send, sendget }.
934 * trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Add the type of the
935 data referenced when generating a call to caf_get_by_ref ().
936 (conv_caf_send): Same but for caf_send_by_ref () and
937 caf_sendget_by_ref ().
938
26eacfe8
JD
9392018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
940
941 PR fortran/84389
942 * io.c (check_format): Allow FMT_COLON.
943
d5ace305
PT
9442018-02-18 Paul Thomas <pault@gcc.gnu.org>
945
946 PR fortran/80945
947 * trans-array.c (gfc_conv_expr_descriptor): Set parmtype from
948 the typenode in the case of deferred length characters.
949
aab20638
TK
9502018-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
951
952 PR fortran/84270
953 * frontend-passes (scalarized_expr): If the expression
954 is an assumed size array, leave in the last reference
955 and pass AR_SECTION instead of AR_FULL to gfc_resolve
956 in order to avoid an error.
957
a8399af8
PT
9582018-02-17 Paul Thomas <pault@gcc.gnu.org>
959
960 PR fortran/84115
961 * resolve.c (resolve_assoc_var): If a non-constant target expr.
962 has no string length expression, make the associate variable
963 into a deferred length, allocatable symbol.
964 * trans-decl.c (gfc_is_reallocatable_lhs): Add and use a ptr to
965 the symbol.
966 * trans-stmt.c (trans_associate_var): Null and free scalar
967 associate names that are allocatable. After assignment, remove
968 the allocatable attribute to prevent reallocation.
969
83d9be55
JJ
9702018-02-16 Jakub Jelinek <jakub@redhat.com>
971
972 PR fortran/84418
973 * trans-openmp.c (gfc_trans_omp_clauses): For OMP_CLAUSE_LINEAR_REF
974 kind set OMP_CLAUSE_LINEAR_STEP to TYPE_SIZE_UNIT times last_step.
975
9762018-02-16 Dominique d'Humieres <dominiq@gcc.gnu.org>
71a21b9e
DH
977
978 PR fortran/84354
979 * decl.c (gfc_get_pdt_instance): Replace '%qs' with %qs.
980
f3ad8745
JW
9812018-02-15 Janus Weil <janus@gcc.gnu.org>
982
983 PR fortran/84409
984 * interface.c (check_dtio_arg_TKR_intent): Add a check for character
985 length.
986
ee3bb1b7
JW
9872018-02-14 Janus Weil <janus@gcc.gnu.org>
988
989 PR fortran/84385
990 * match.c (gfc_match_select_type): Fix check for selector in
991 SELECT TYPE statement.
992
4155fafc
JW
9932018-02-13 Janus Weil <janus@gcc.gnu.org>
994
995 PR fortran/84313
996 * symbol.c (check_conflict): Reject procedure pointers in common blocks.
997
7b47686d
AM
9982018-02-13 Alastair McKinstry <alastair.mckinstry@sceal.ie>
999 Janne Blomqvist <jb@gcc.gnu.org>
1000
1001 * module.c (dump_module): Use lbasename to ensure that module
1002 files are reproducible.
1003
24abcc44
JW
10042018-02-12 Janus Weil <janus@gcc.gnu.org>
1005
1006 PR fortran/84273
1007 * resolve.c (resolve_component): Fix checks of passed argument in
1008 procedure-pointer components.
1009
6a793a8d
FXC
10102018-02-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
1011
1012 PR fortran/35299
1013 * resolve.c (resolve_formal_arglist): Update error message.
1014
61fad608
AV
10152018-02-11 Andre Vehreschild <vehre@gcc.gnu.org>
1016
1017 * gfortran.texi: Fix typos in documentation of caf_register ().
1018 * trans-array.c (structure_alloc_comps): Only register a component of
1019 a derived typed corray, not of an ultimate component coarray.
1020
f3883269
SK
10212018-02-11 Steven G. Kargl <kargl@gcc.gnu.org>
1022
1023 PR fortran/54223
1024 PR fortran/84276
1025 * interface.c (compare_actual_formal): Add in_statement_function
1026 bool parameter. Skip check of INTENT attribute for statement
1027 functions. Arguments to a statement function cannot be optional,
1028 issue error for missing argument.
1029 (gfc_procedure_use, gfc_ppc_use, gfc_arglist_matches_symbol): Use
1030 in_statement_function.
1031
e519d2e8
PT
10322018-02-11 Paul Thomas <pault@gcc.gnu.org>
1033
1034 PR fortran/84074
1035 * trans-expr.c (gfc_conv_derived_to_class): Set the use_offset
1036 flag. If the is a vector subscript or the expression is not a
1037 variable, make the descriptor one-based.
1038
950ab3f1
PT
10392018-02-10 Paul Thomas <pault@gcc.gnu.org>
1040
1041 PR fortran/84141
1042 PR fortran/84155
1043 * trans-array.c (gfc_array_init_size): Revert the change made
1044 in revision 257356 setting the dtype.
1045 * trans-types.c (gfc_get_dtype): Do not use the cached dtype.
1046 Call gfc_get_dtype_rank_type every time.
1047
1048 PR fortran/56691
1049 * trans-array.c (gfc_conv_expr_descriptor): If the source array
1050 is a descriptor type, use its offset, removing the condition
1051 that is be a class expression.
1052
b35a0ccd
SK
10532018-02-07 Steven G. Kargl <kargl@gcc.gnu.org>
1054
1055 PR fortran/82994
1056 * match.c (gfc_match_deallocate): Check for NULL pointer.
1057
82e259b8
TK
10582018-02-07 Thomas Koenig <tkoenig@gcc.gnu.org>
1059
1060 PR fortran/68560
1061 * trans-intrinsic.c (gfc_conv_intrinsic_shape): New function.
1062 (gfc_conv_intrinsic_function): Call it.
1063
52b16cb3
SK
10642018-02-07 Steven G. Kargl <kargl@gcc.gnu.org>
1065
1066 PR fortran/82049
1067 * match.c (gfc_match_type_spec): If the charlen is non-NULL, then
1068 try to resolve it. While here return early if possible.
1069
26f822c2
PT
10702018-02-04 Paul Thomas <pault@gcc.gnu.org>
1071
1072 PR fortran/84115
1073 * trans-decl.c (gfc_get_symbol_decl): Do not finish the decl of
1074 'length' if the symbol charlen backend_decl is an indirect ref.
1075
2c536ce7
PT
10762018-02-03 Paul Thomas <pault@gcc.gnu.org>
1077
1078 PR fortran/84141
1079 PR fortran/84155
1080 * trans-array.c (gfc_array_init_size): Instead of gfc_get_dtype
1081 use gfc_get_dtype_rank_type.
1082
ae976c33
JB
10832018-02-01 Janne Blomqvist <jb@gcc.gnu.org>
1084
1085 PR 83975
1086 PR 83344
1087 * resolve.c (resolve_assoc_var): Generate an error if
1088 target length unknown.
1089
eae4d8fb
JB
10902018-02-01 Janne Blomqvist <jb@gcc.gnu.org>
1091
1092 PR fortran/83705
1093 * simplify.c (gfc_simplify_repeat): Increase limit for deferring
1094 to runtime, print a warning message.
1095
c9243c04
JJ
10962018-01-31 Jakub Jelinek <jakub@redhat.com>
1097
1098 PR fortran/84116
1099 * openmp.c (gfc_match_omp_clauses): If all the linear
1100 gfc_match_omp_variable_list calls failed, don't gfc_free_omp_namelist
1101 nor set *head = NULL. Formatting fixes.
1102
1af73491
PT
11032018-01-31 Paul Thomas <pault@gcc.gnu.org>
1104
1105 PR fortran/84088
1106 * trans-expr.c (gfc_conv_procedure_call): If the parm expr is
1107 an address expression passed to an assumed rank dummy, convert
1108 to an indirect reference.
1109
125a677d
TK
11102018-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
1111
1112 * dump-parse-tree.c (write_proc): Use sym_name (which may
1113 be sym->binding_label) instead of sym->name.
1114
949b40a4
JB
11152018-01-31 Janne Blomqvist <jb@gcc.gnu.org>
1116
1117 * trans-const.c (gfc_conv_string_init): Use gfc_charlen_t instead
1118 of int for slen.
1119
9f3dcd14
JB
11202018-01-31 Janne Blomqvist <jb@gcc.gnu.org>
1121
1122 PR fortran/78534
1123 * trans-expr.c (fill_with_spaces): Use memset instead of
1124 generating loop.
1125 (gfc_trans_string_copy): Improve opportunity to use builtins with
1126 constant lengths.
1127
f2adfb89
JJ
11282018-01-30 Jakub Jelinek <jakub@redhat.com>
1129
1130 PR debug/84131
1131 * trans-array.c (gfc_get_descriptor_offsets_for_info): Set *data_off
1132 to DATA_FIELD's offset rather than OFFSET_FIELD's offset.
1133
125a677d 11342018-01-30 Thomas Koenig <tkoenig@gcc.gnu.org>
8fb2cc6b
TK
1135
1136 PR fortran/84134
1137 * array.c (gfc_ref_dimen_size): Whitespace fixes. If stride is
1138 zero, return false.
1139
dca9e8be
TK
11402018-01-30 Thomas Koenig <tkoenig@gcc.gnu.org>
1141
1142 PR fortran/84133
1143 * frontend-passes (matmul_to_var_expr): Return early if
1144 in association list.
1145 (inline_matmul_assign): Likewise.
1146
3be34c0b
TK
11472017-01-29 Thomas Koenig <tkoenig@gcc.gnu.org>
1148
1149 PR fortran/84073
1150 * resolve.c (resolve_component): Ensure BIND(C) character
1151 components have length one.
1152 (resolve_symbol): Likewise for variables.
1153
aeb8c028
JJ
11542018-01-27 Jakub Jelinek <jakub@redhat.com>
1155
1156 PR fortran/84065
1157 * decl.c (add_init_expr_to_sym): Ignore initializers for too large
1158 lengths.
1159
f8862a1b 11602018-01-26 Damian Rouson <damian@sourceryinstitute.org>
aeb8c028
JJ
1161 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
1162 Soren Rasmussen <s.c.rasmussen@gmail.com>
f8862a1b
DR
1163
1164 Partial support for Fortran 2018 teams features.
1165
1166 * array.c (gfc_match_array_ref): add team attribute in coarray
1167 transfers.
1168 * check.c (gfc_check_get_team, gfc_check_team_number): add new
1169 functions for get_team and team_number.
1170 * dump-parse-tree.c (show_code_node): add new statements: form team,
1171 change team, end team, and sync team.
1172 * expr.c (gfc_find_team_co): add new function.
1173 * gfortran.h: add new statements.
1174 * intrinsic.c (add_functions): add get_team and team_number functions.
1175 * intrinsic.h: add get_team and team_number prototypes for check,
1176 simplify, and resolve.
1177 * iresolve.c (gfc_resolve_get_team, gfc_resolve_team_number): add new
1178 functions.
1179 * iso-fortran-env.def: add the team_type derived type.
1180 * match.c (gfc_match_if, gfc_match_form_team, gfc_match_team_number)
1181 (gfc_match_end_team, gfc_match_sync_team, gfc_match_change_team):
1182 add change team, end team, form team, sync team match and functions.
1183 * match.h: add new prototypes for change team, end team, form team,
1184 and sync team.
1185 * parse.c (decode_statement): add cases for change team, end team,
1186 form team, and sync team.
1187 * resolve.c: add cases for exec form team, change team, end team, and
1188 sync team.
1189 * simplify.c (gfc_simplify_get_team): add new function for get team.
1190 * st.c (gfc_free_statement): add cases exec for change team, end team,
1191 form team, sync team.
1192 * trans-decl.c (gfor_fndecl_caf_form_team)
1193 (gfor_fndecl_caf_change_team, gfor_fndecl_caf_end_team)
1194 (gfor_fndecl_caf_sync_team, gfor_fndecl_caf_get_team)
1195 (gfor_fndecl_caf_team_number): add functions and definitions.
1196 * trans-intrinsic.c (conv_caf_send, conv_intrinsic_team_number): add
1197 new function and team_type argument support.
1198 * trans-stmt.c (gfc_trans_form_team, gfc_trans_change_team)
1199 (gfc_trans_end_team, gfc_trans_sync_team): add new functions.
1200 * trans-stmt.h: add new prototypes.
1201 * trans-types.c (gfc_get_derived_type): check condition for team_type.
1202 * trans.c (trans_code): new exec cases for form team, change team, end
1203 team, and sync team.
1204 * trans.h: add new prototypes.
1205
deece1aa
SK
12062018-01-26 Steven G. Kargl <kargl@gcc.gnu.org>
1207
1208 PR fortran/83998
1209 * simplify.c (compute_dot_product): Initialize result to INTEGER(1) 0
1210 or .false. The summation does the correct type conversion.
1211 (gfc_simplify_dot_product): Special case zero-sized arrays.
1212
7fb43006
PT
12132018-25-01 Paul Thomas <pault@gcc.gnu.org>
1214
1215 PR fortran/37577
1216 * array.c (gfc_match_array_ref): If standard earlier than F2008
1217 it is an error if the reference dimension is greater than 7.
1218 libgfortran.h : Increase GFC_MAX_DIMENSIONS to 15. Change the
1219 dtype masks and shifts accordingly.
1220 * trans-array.c (gfc_conv_descriptor_dtype): Use the dtype
1221 type node to check the field.
1222 (gfc_conv_descriptor_dtype): Access the rank field of dtype.
1223 (duplicate_allocatable_coarray): Access the rank field of the
1224 dtype descriptor rather than the dtype itself.
1225 * trans-expr.c (get_scalar_to_descriptor_type): Store the type
1226 of 'scalar' on entry and use its TREE_TYPE if it is ARRAY_TYPE
1227 (ie. a character).
1228 (gfc_conv_procedure_call): Pass TREE_OPERAND (tmp,0) to
1229 get_scalar_to_descriptor_type if the actual expression is a
1230 constant.
1231 (gfc_trans_structure_assign): Assign the rank directly to the
1232 dtype rank field.
1233 * trans-intrinsic.c (gfc_conv_intrinsic_rank): Cast the result
1234 to default integer kind.
1235 (gfc_conv_intrinsic_sizeof): Obtain the element size from the
1236 'elem_len' field of the dtype.
1237 * trans-io.c (gfc_build_io_library_fndecls): Replace
1238 gfc_int4_type_node with dtype_type_node where necessary.
1239 (transfer_namelist_element): Use gfc_get_dtype_rank_type for
1240 scalars.
1241 * trans-types.c : Provide 'get_dtype_type_node' to acces the
1242 dtype_type_node and, if necessary, build it.
1243 The maximum size of an array element is now determined by the
1244 maximum value of size_t.
1245 Update the description of the array descriptor, including the
1246 type def for the dtype_type.
1247 (gfc_get_dtype_rank_type): Build a constructor for the dtype.
1248 Distinguish RECORD_TYPEs that are BT_DERIVED or BT_CLASS.
1249 (gfc_get_array_descriptor_base): Change the type of the dtype
1250 field to dtype_type_node.
1251 (gfc_get_array_descr_info): Get the offset to the rank field of
1252 the dtype.
1253 * trans-types.h : Add a prototype for 'get_dtype_type_node ()'.
1254 * trans.h : Define the indices of the dtype fields.
1255
f59986b2
PT
12562018-23-01 Paul Thomas <pault@gcc.gnu.org>
1257
1258 PR fortran/83866
1259 * decl.c (gfc_match_derived_decl): If eos not matched, recover
1260 and emit error about garbage after declaration.
1261
84ee745e
PT
12622018-23-01 Paul Thomas <pault@gcc.gnu.org>
1263
1264 PR fortran/83898
1265 * trans-stmt.c (trans_associate_var): Do not set cst_array_ctor
1266 for characters.
1267
6b271a2e
JB
12682018-01-22 Janne Blomqvist <jb@gcc.gnu.org>
1269
1270 PR 78534
1271 PR 83704
1272 * arith.c (gfc_arith_concat): Use size_t for string length.
1273 (gfc_compare_string): Likewise.
1274 (gfc_compare_with_Cstring): Likewise.
1275 * array.c (gfc_resolve_character_array_constructor): Use
1276 HOST_WIDE_INT, gfc_mpz_get_hwi.
1277 * check.c (gfc_check_fe_runtime_error): Use size_t.
1278 * data.c (create_character_initializer): Use HOST_WIDE_INT,
1279 gfc_extract_hwi.
1280 * decl.c (gfc_set_constant_character_len): Use gfc_charlen_t.
1281 (add_init_expr_to_sym): Use HOST_WIDE_INT.
1282 * expr.c (gfc_build_init_expr): Use HOST_WIDE_INT,
1283 gfc_extract_hwi.
1284 (gfc_apply_init): Likewise.
1285 * match.h (gfc_set_constant_character_len): Update prototype.
1286 * primary.c (match_string_constant): Use size_t.
1287 * resolve.c (resolve_ordinary_assign): Use HOST_WIDE_INT,
1288 gfc_mpz_get_hwi.
1289 * simplify.c (init_result_expr): Likewise.
1290 (gfc_simplify_len_trim): Use size_t.
1291 * target-memory.c (gfc_encode_character): Use size_t.
1292 (gfc_target_encode_expr): Use HOST_WIDE_INT, gfc_mpz_get_hwi.
1293 (interpret_array): Use size_t.
1294 (gfc_interpret_character): Likewise.
1295 * target-memory.h (gfc_encode_character): Update prototype.
1296 (gfc_interpret_character): Likewise.
1297 (gfc_target_interpret_expr): Likewise.
1298 * trans-const.c (gfc_build_string_const): Use size_t for length
1299 argument.
1300 (gfc_build_wide_string_const): Likewise.
1301 * trans-const.h (gfc_build_string_const): Likewise.
1302 (gfc_build_wide_string_const): Likewise.
1303
f5240750
SK
13042018-01-20 Steven G. Kargl <kargl@gcc.gnu.org>
1305
1306 PR fortran/83900
1307 * simplify.c (gfc_simplify_matmul): Set return type correctly.
1308
f18fee82
SK
13092018-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
1310
1311 PR fortran/83900
1312 * simplify.c (gfc_simplify_matmul): Delete bogus assertion.
1313
fcf79237
HA
13142018-01-17 Harald Anlauf <anlauf@gmx.de>
1315
1316 PR fortran/83864
1317 * expr.c (add_init_expr_to_sym): Do not dereference NULL pointer.
1318
c004a341
HA
13192018-01-17 Harald Anlauf <anlauf@gmx.de>
1320
1321 PR fortran/83874
1322 * decl.c (add_init_expr_to_sym): Do not dereference NULL pointer.
1323
75a3c61a
LK
13242018-01-15 Louis Krupp <louis.krupp@zoho.com>
1325
1326 PR fortran/82257
1327 * interface.c (compare_rank): Don't try to retrieve CLASS_DATA
1328 from symbol marked unlimited polymorphic.
1329 * resolve.c (resolve_structure_cons): Likewise.
1330 * misc.c (gfc_typename): Don't dereference derived->components
1331 if it's NULL.
1332
64b1806b
TK
13332018-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
1334
1335 PR fortran/54613
1336 * gfortran.h (gfc_check_f): Rename f4ml to f5ml.
1337 (gfc_logical_4_kind): New macro
1338 * intrinsic.h (gfc_simplify_minloc): Add a gfc_expr *argument.
1339 (gfc_simplify_maxloc): Likewise.
1340 (gfc_resolve_maxloc): Likewise.
1341 (gfc_resolve_minloc): Likewise.
1342 * check.c (gfc_check_minloc_maxloc): Add checking for "back"
1343 argument; also raise error if it is used (for now). Add it
1344 if it isn't present.
1345 * intrinsic.c (add_sym_4ml): Rename to
1346 (add_sym_5ml), adjust for extra argument.
1347 (add_functions): Add "back" constant. Adjust maxloc and minloc
1348 for back argument.
1349 * iresolve.c (gfc_resolve_maxloc): Add back argument. If back is
1350 not of gfc_logical_4_kind, convert.
1351 (gfc_resolve_minloc): Likewise.
1352 * simplify.c (gfc_simplify_minloc): Add back argument.
1353 (gfc_simplify_maxloc): Likewise.
1354 * trans-intinsic.c (gfc_conv_intrinsic_minmaxloc): Rename last
1355 argument to %VAL to ensure passing by value.
1356 (gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_minmaxloc
1357 also for library calls.
1358
f208c5cc
JD
13592018-01-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
1360
1361 PR fortran/82007
1362 * resolve.c (resolve_transfer): Delete code looking for 'DT'
1363 format specifiers in format strings. Set formatted to true if a
1364 format string or format label is present.
1365 * trans-io.c (get_dtio_proc): Likewise. (transfer_expr): Fix
1366 whitespace.
64b1806b 1367
83d9be55 13682018-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
39f309ac
TK
1369
1370 PR fortran/83744
1371 * dump-parse-tree.c (get_c_type_name): Remove extra line.
1372 Change for loop to use declaration in for loop. Handle BT_LOGICAL
1373 and BT_CHARACTER.
1374 (write_decl): Add where argument. Fix indentation. Replace
1375 assert with error message. Add typename to warning
1376 in comment.
1377 (write_type): Adjust locus to call of write_decl.
1378 (write_variable): Likewise.
1379 (write_proc): Likewise. Replace assert with error message.
1380
567a6e1c
PT
13812018-01-13 Paul Thomas <pault@gcc.gnu.org>
1382
1383 PR fortran/52162
1384 * trans-expr.c (gfc_trans_scalar_assign): Flag is_alloc_lhs if
1385 the rhs expression is neither an elemental nor a conversion
1386 function.
1387
1388 PR fortran/83622
1389 * trans-array.c (is_pointer_array): Remove unconditional return
1390 of false for -fopenmp.
1391
83d9be55 13922018-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
700b62cc
TK
1393 <emsr@gcc.gnu.org>
1394
1395 PR fortran/83803
1396 * dump-parse-tree.c (write_proc): Always emit closing parenthesis
1397 for functions.
1398
bdd82c9b
SK
13992018-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
1400
1401 PR fortran/82367
1402 * resolve.c (resolve_allocate_expr): Check for NULL pointer.
1403
266404a8
SK
14042018-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
1405
1406 PR fortran/83093
1407 * resolve.c (resolve_charlen): Check the type of cl->length
1408 after resolution.
1409
85c2c761
JB
14102018-01-10 Janne Blomqvist <jb@gcc.gnu.org>
1411
e10e60cb
JB
1412 PR fortran/83740
1413 * trans-array.c (gfc_trans_array_ctor_element): Fix formatting.
1414
14152018-01-10 Janne Blomqvist <jb@gcc.gnu.org>
1416
1417 PR fortran/83740
85c2c761
JB
1418 * trans-array.c (gfc_trans_array_ctor_element): Convert RHS to the
1419 LHS type when assigning.
1420
d4319ef8
SK
14212018-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
1422
1423 PR fortran/83742
1424 * expr.c (gfc_is_simply_contiguous): Check for NULL pointer.
1425
8799df67
SK
14262018-01-08 Steven G. Kargl <kargl@gcc.gnu.org>
1427
1428 * match.c (gfc_match_allocate): Check for NULL pointer.
1429
a4f759de
SK
14302018-01-08 Steven G. Kargl <kargl@gcc.gnu.org>
1431
1432 * expr.c (gfc_check_pointer_assign): Fix typo in comment.
1433
0b627b58
PT
14342018-01-08 Paul Thomas <pault@gcc.gnu.org>
1435
1436 PR fortran/83611
1437 * decl.c (gfc_get_pdt_instance): If parameterized arrays have
1438 an initializer, convert the kind parameters and add to the
1439 component if the instance.
1440 * trans-array.c (structure_alloc_comps): Add 'is_pdt_type' and
1441 use it with case COPY_ALLOC_COMP. Call 'duplicate_allocatable'
1442 for parameterized arrays. Clean up typos in comments. Convert
1443 parameterized array initializers and copy into the array.
1444 * trans-expr.c (gfc_trans_scalar_assign): Do a deep copy for
1445 parameterized types.
1446 *trans-stmt.c (trans_associate_var): Deallocate associate vars
1447 as necessary, when they are PDT function results for example.
1448
1449 PR fortran/83731
1450 * trans-array.c (structure_alloc_comps): Only compare len parms
1451 when they are declared explicitly.
1452
ee2d3987
JB
14532018-01-06 Janne Blomqvist <jb@gcc.gnu.org>
1454
1455 PR fortran/50892
1456 * trans-expr.c (gfc_trans_pointer_assignment): fold_convert rhs to
1457 lhs type.
1458
f622221a
JB
14592018-01-05 Janne Blomqvist <jb@gcc.gnu.org>
1460
1461 PR fortran/78534
1462 PR fortran/66310
1463 * array.c (got_charlen): Use gfc_charlen_int_kind.
1464 * class.c (gfc_find_derived_vtab): Use gfc_size_kind instead of
1465 hardcoded kind.
1466 (find_intrinsic_vtab): Likewise.
1467 * decl.c (match_char_length): Use gfc_charlen_int_kind.
1468 (add_init_expr_to_sym): Use gfc_charlen_t and gfc_charlen_int_kind.
1469 (gfc_match_implicit): Use gfc_charlen_int_kind.
1470 * dump-parse-tree.c (show_char_const): Use gfc_charlen_t and size_t.
1471 (show_expr): Use HOST_WIDE_INT_PRINT_DEC.
1472 * expr.c (gfc_get_character_expr): Length parameter of type
1473 gfc_charlen_t.
1474 (gfc_get_int_expr): Value argument of type HOST_WIDE_INT.
1475 (gfc_extract_hwi): New function.
1476 (simplify_const_ref): Make string_len of type gfc_charlen_t.
1477 (gfc_simplify_expr): Use HOST_WIDE_INT for substring refs.
1478 * frontend-passes.c (optimize_trim): Use gfc_charlen_int_kind.
1479 * gfortran.h (gfc_mpz_get_hwi): New prototype.
1480 (gfc_mpz_set_hwi): Likewise.
1481 (gfc_charlen_t): New typedef.
1482 (gfc_expr): Use gfc_charlen_t for character lengths.
1483 (gfc_size_kind): New extern variable.
1484 (gfc_extract_hwi): New prototype.
1485 (gfc_get_character_expr): Use gfc_charlen_t for character length.
1486 (gfc_get_int_expr): Use HOST_WIDE_INT type for value argument.
1487 * gfortran.texi: Update description of hidden string length argument.
1488 * iresolve.c (check_charlen_present): Use gfc_charlen_int_kind.
1489 (gfc_resolve_char_achar): Likewise.
1490 (gfc_resolve_repeat): Pass string length directly without
1491 temporary, use gfc_charlen_int_kind.
1492 (gfc_resolve_transfer): Use gfc_charlen_int_kind.
1493 * match.c (select_intrinsic_set_tmp): Use HOST_WIDE_INT for charlen.
1494 * misc.c (gfc_mpz_get_hwi): New function.
1495 (gfc_mpz_set_hwi): New function.
1496 * module.c (atom_int): Change type from int to HOST_WIDE_INT.
1497 (parse_integer): Don't complain about large integers.
1498 (write_atom): Use HOST_WIDE_INT for integers.
1499 (mio_integer): Handle integer type mismatch.
1500 (mio_hwi): New function.
1501 (mio_intrinsic_op): Use HOST_WIDE_INT.
1502 (mio_array_ref): Likewise.
1503 (mio_expr): Likewise.
1504 * primary.c (match_substring): Use gfc_charlen_int_kind.
1505 * resolve.c (resolve_substring_charlen): Use gfc_charlen_int_kind.
1506 (resolve_character_operator): Likewise.
1507 (resolve_assoc_var): Likewise.
1508 (resolve_select_type): Use HOST_WIDE_INT for charlen, use snprintf.
1509 (resolve_charlen): Use mpz_sgn to determine sign.
1510 * simplify.c (gfc_simplify_repeat): Use HOST_WIDE_INT/gfc_charlen_t
1511 instead of long.
1512 * symbol.c (generate_isocbinding_symbol): Use gfc_charlen_int_kind.
1513 * target-memory.c (size_character): Length argument of type
1514 gfc_charlen_t.
1515 (gfc_encode_character): Likewise.
1516 (gfc_interpret_character): Use gfc_charlen_t.
1517 * target-memory.h (gfc_encode_character): Modify prototype.
1518 * trans-array.c (gfc_trans_array_ctor_element): Use existing type.
1519 (get_array_ctor_var_strlen): Use gfc_conv_mpz_to_tree_type.
1520 (trans_array_constructor): Use existing type.
1521 (get_array_charlen): Likewise.
1522 * trans-const.c (gfc_conv_mpz_to_tree_type): New function.
1523 * trans-const.h (gfc_conv_mpz_to_tree_type): New prototype.
1524 * trans-decl.c (gfc_trans_deferred_vars): Use existing type.
1525 (add_argument_checking): Likewise.
1526 * trans-expr.c (gfc_class_len_or_zero_get): Build const of type
1527 gfc_charlen_type_node.
1528 (gfc_conv_intrinsic_to_class): Use gfc_charlen_int_kind instead of
1529 4, fold_convert to correct type.
1530 (gfc_conv_class_to_class): Build const of type size_type_node for
1531 size.
1532 (gfc_copy_class_to_class): Likewise.
1533 (gfc_conv_string_length): Use same type in expression.
1534 (gfc_conv_substring): Likewise, use HOST_WIDE_INT for charlen.
1535 (gfc_conv_string_tmp): Make sure len is of the right type.
1536 (gfc_conv_concat_op): Use same type in expression.
1537 (gfc_conv_procedure_call): Likewise.
1538 (fill_with_spaces): Comment out memset() block due to spurious
1539 -Wstringop-overflow warnings.
1540 (gfc_trans_string_copy): Use gfc_charlen_type_node.
1541 (alloc_scalar_allocatable_for_subcomponent_assignment):
1542 fold_convert to right type.
1543 (gfc_trans_subcomponent_assign): Likewise.
1544 (trans_class_vptr_len_assignment): Build const of correct type.
1545 (gfc_trans_pointer_assignment): Likewise.
1546 (alloc_scalar_allocatable_for_assignment): fold_convert to right
1547 type in expr.
1548 (trans_class_assignment): Build const of correct type.
1549 * trans-intrinsic.c (gfc_conv_associated): Likewise.
1550 (gfc_conv_intrinsic_repeat): Do calculation in sizetype.
1551 * trans-io.c (gfc_build_io_library_fndecls): Use
1552 gfc_charlen_type_node for character lengths.
1553 (set_string): Convert to right type in assignment.
1554 * trans-stmt.c (gfc_trans_label_assign): Build const of
1555 gfc_charlen_type_node.
1556 (trans_associate_var): Likewise.
1557 (gfc_trans_character_select): Likewise.
1558 (gfc_trans_allocate): Likewise, don't typecast strlen result.
1559 (gfc_trans_deallocate): Don't typecast strlen result.
1560 * trans-types.c (gfc_size_kind): New variable.
1561 (gfc_init_types): Determine gfc_charlen_int_kind and gfc_size_kind
1562 from size_type_node.
1563 * trans-types.h: Fix comment.
1564
fbd35ba1
TK
15652018-01-04 Thomas Koenig <tkoenig@gcc.gnu.org>
1566
1567 PR fortran/83683
1568 PR fortran/45689
1569 * check.c (gfc_check_eoshift): Check for string length and
1570 for conformance of boundary.
1571 * intrinsic.c (add_functions): Add gfc_simplify_eoshift.
1572 * intrinsic.h: Add prototype for gfc_simplify_eoshift.
1573 * simplify.c (gfc_simplify_eoshift): New function.
1574
5c0caeb3
RS
15752018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
1576 Alan Hayward <alan.hayward@arm.com>
1577 David Sherwood <david.sherwood@arm.com>
1578
1579 * trans-types.c (gfc_type_for_mode): Handle MODE_VECTOR_BOOL.
1580
928686b1
RS
15812018-01-03 Richard Sandiford <richard.sandiford@linaro.org>
1582 Alan Hayward <alan.hayward@arm.com>
1583 David Sherwood <david.sherwood@arm.com>
1584
1585 * trans-types.c (gfc_type_for_mode): Check valid_vector_subparts_p.
1586
8987beac
TK
15872018-01-03 Thomas Koenig <tkoenig@gcc.gnu.org>
1588
1589 PR fortran/83664
1590 * check.c (gfc_check_eoshift): Error for missing boundary if array
1591 is not one of the standard types.
1592
65e6aea3
JJ
15932018-01-03 Jakub Jelinek <jakub@redhat.com>
1594
85ec4feb
JJ
1595 Update copyright years.
1596
65e6aea3
JJ
1597 * gfortranspec.c (lang_specific_driver): Update copyright notice
1598 dates.
1599 * gfc-internals.texi: Bump @copying's copyright year.
1600 * gfortran.texi: Ditto.
1601 * intrinsic.texi: Ditto.
1602 * invoke.texi: Ditto.
1603
a1d6c052
TK
16042017-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
1605
1606 PR fortran/45689
1607 * intrinsic.c (add_function): Add gfc_simplify_maxloc and
1608 gfc_simplify_minloc to maxloc and minloc, respectively.
1609 * intrinsic.h: Add prototypes for gfc_simplify_minloc
1610 and gfc_simplify_maxloc.
1611 * simplify.c (min_max_chose): Adjust prototype. Modify function
1612 to have a return value which indicates if the extremum was found.
1613 (is_constant_array_expr): Fix typo in comment.
1614 (simplify_minmaxloc_to_scalar): New function.
1615 (simplify_minmaxloc_nodim): New function.
1616 (new_array): New function.
1617 (simplify_minmaxloc_to_array): New function.
1618 (gfc_simplify_minmaxloc): New function.
1619 (simplify_minloc): New function.
1620 (simplify_maxloc): New function.
1621
a9ec0cfc
TK
16222018-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
1623
1624 PR fortran/45689
1625 PR fortran/83650
1626 * simplify.c (gfc_simplify_cshift): Re-implement to allow full
1627 range of arguments.
1628
f549bfb3
PT
16292018-01-01 Paul Thomas <pault@gcc.gnu.org>
1630
1631 PR fortran/83076
1632 * resolve.c (resolve_fl_derived0): Add caf_token fields for
1633 allocatable and pointer scalars, when -fcoarray selected.
1634 * trans-types.c (gfc_copy_dt_decls_ifequal): Copy the token
1635 field as well as the backend_decl.
1636 (gfc_get_derived_type): Flag GFC_FCOARRAY_LIB for module
1637 derived types that are not vtypes. Components with caf_token
1638 attribute are pvoid types. For a component requiring it, find
1639 the caf_token field and have the component token field point to
1640 its backend_decl.
1641
1642 PR fortran/83319
1643 *trans-types.c (gfc_get_array_descriptor_base): Add the token
1644 field to the descriptor even when codimen not set.
21fa2a29 1645\f
65e6aea3 1646Copyright (C) 2018 Free Software Foundation, Inc.
ad41bd84
JM
1647
1648Copying and distribution of this file, with or without modification,
1649are permitted in any medium without royalty provided the copyright
1650notice and this notice are preserved.
This page took 3.559758 seconds and 5 git commands to generate.