]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/fortran/ChangeLog
PR c++/88761 - ICE with reference capture of constant.
[thirdparty/gcc.git] / gcc / fortran / ChangeLog
CommitLineData
49b830df 12019-02-01 Jakub Jelinek <jakub@redhat.com>
2
3 PR fortran/83246
4 PR fortran/89084
5 * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
6 if sym->ns->construct_entities rather than if
7 sym->ns->parent->code->op == EXEC_BLOCK.
8
a82041dd 92019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
10
11 PR fortran/88669
12 * resolve.c (resolve_component): If the reference is a BT_CLASS,
13 copy the contiguous attribute from the reference and use the
14 correct attributes.
15
a11ed94b 162019-01-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
17
18 PR fortran/52564
19 * io.c (match_io): Add check for comma after '*' without subsequent
20 IO list.
21
5851d123 222019-01-30 Dominique d'Humieres <dominiq@gcc.gnu.org>
23
24 PR fortran/52884
25 * invoke.texi: Document the promotion of double precision
26 constants.
27
659d7fd3 282019-01-29 Thomas Koenig <tkoenig@gcc.gnu.org>
29
30 PR fortran/57048
31 * interface.c (gfc_compare_types): If a derived type and an
32 integer both have a derived type, and they are identical,
33 this is a C binding type and compares equal.
34
bc3eb257 352019-01-26 Harald Anlauf <anlauf@gmx.de>
36
37 PR fortran/57553
38 * expr.c (check_inquiry): Add list of inquiry functions allowed in
39 constant expressions for F2008+.
40
2ae44fa6 412019-01-25 Steven G. Kargl <kargl@gcc.gnu.org>
42
43 PR fortran/85780
44 * decl.c (gfc_match_subroutine): Check for conflict between BIND(C)
45 and alternative return.
46
297fd295 472019-01-24 Paul Thomas <pault@gcc.gnu.org>
48
49 PR fortran/88929
50 * trans-array.c (gfc_conv_descriptor_elem_len): New function.
51 * trans-array.h : Add prototype for above.
52 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of
53 assumed rank arrays being flagged by rank = -1 in expressions.
54 Intent in arrays need a pointer to a copy of the data to be
55 assigned to the descriptor passed for conversion. This should
56 then be freed, together with the CFI descriptor on return from
57 the C call.
58
4348a41f 592019-01-22 Harald Anlauf <anlauf@gmx.de>
60
61 PR fortran/88579
62 * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer
63 and (- 2**e) ** integer.
64
c81c2702 652019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org>
66
67 PR fortran/37835
68 * resolve.c (resolve_types): Add !flag_automatic.
69 * symbol.c (gfc_add_save): Silence warnings.
70
19081b87 712019-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
72
73 PR fortran/77960
74 * io.c (match_io_element): input-item cannot be an external function.
4348a41f 75
b7e6520a 762018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org>
77 Paul Thomas <pault@gcc.gnu.org>
78
79 PR fortran/56789
80 * trans-expr.c (gfc_conv_procedure_call): Call
81 gfc_conv_subref_array_arg if the formal arg is contiguous
82 and the actual arg may not be.
83
66f2cfae 842019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
85
86 PR fortran/88871
87 * resolve.c (resolve_ref): Fix logic for removal of
88 reference.
89
7b60c131 902019-01-19 Jakub Jelinek <jakub@redhat.com>
91
92 PR fortran/88902
93 * trans-decl.c (gfc_get_symbol_decl): Don't add length to function
94 or parent function if it has been added there already.
95
0b953692 962019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
97
a96be852 98 PR fortran/43136
0b953692 99 * resolve.c (resolve_array_ref): Add equal_length argument; set it
100 if the length of the substring equals that of the orignal
101 variable.
102 (resolve_ref): Remove the substring if it is equal in length to
103 the original variable, unless it is an EXPR_SUBSTRING).
104
ef1b2a98 1052019-01-15 Steven G. Kargl <kargl@gcc.gnu.org>
106
107 PR fortran/81849
108 * resolve.c (resolve_symbol): Host associated varaibles can appear
109 in the specification statement of a RESULT array.
110
8f563733 1112019-01-15 Paul Thomas <pault@gcc.gnu.org>
112
113 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
114 that are indirect references; ie. dummy arguments.
115
0cc7cbe4 1162019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
117
118 PR fortran/88803
119 * gfortran.texi: Replace @xref with @ref and adjust the sentence.
120
70409dee 1212019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
122
123 PR fortran/57992
7b60c131 124 * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack
70409dee 125 functions with contiguous results.
126
ae57d8c7 1272019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
128
129 PR fortran/59345
130 * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not
131 pack/unpack results of functions which return an explicit-shaped
132 or allocatable array.
133
c8f3fe68 1342019-01-12 Steven G. Kargl <kargl@gcc.gnu.org>
135
136 PR fortran/61765
137 * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
138 structure into independent if's with a return to simplify logic.
139 Avoid a check for ENTRY name with bind(c).
140
77ddff12 1412019-01-12 Paul Thomas <pault@gcc.gnu.org>
142
7b60c131 143 * gfortran.texi: Add description in sections on TS 29113 and
77ddff12 144 further interoperability with C.
145 * trans-array.c (gfc_conv_descriptor_attribute): New function.
146 (gfc_get_dataptr_offset): Remove static function attribute.
7b60c131 147 * trans-array.h: Add prototypes for above functions.
148 * trans-decl.c: Add declarations for the library functions
77ddff12 149 cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
150 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
151 (gfc_conv_procedure_call): Call it for scalar and array actual
152 arguments, when the formal arguments are bind_c with assumed
153 shape or assumed rank.
7b60c131 154 * trans.h: External declarations for gfor_fndecl_cfi_to_gfc
77ddff12 155 and gfor_fndecl_gfc_to_cfi.
156
0e8475b7 1572019-01-11 Steven G. Kargl <kargl@gcc.gnu.org>
158
159 PR fortran/35031
160 * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby
161 mis-indentation.
162
45b37eaa 1632019-01-11 Jakub Jelinek <jakub@redhat.com>
164
165 PR middle-end/85956
166 PR lto/88733
167 * trans-openmp.c: Include attribs.h.
168 (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
169 VAR_DECL max bound with "omp dummy var" attribute like NULL or
170 error_mark_node - recompute number of elts independently.
171
04afaf6a 1722019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
173
174 PR fortran/59345
45b37eaa 175 * trans-array.c (gfc_conv_parameter_array): Temporary
04afaf6a 176 arrays generated for expressions do not need to be repacked.
177
15cbe83d 1782019-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
179
180 PR fortran/86322
181 * decl.c (top_var_list): Set locus of expr.
182 (gfc_match_data): Detect pointer on non-rightmost part-refs.
183
e66b219e 1842019-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
185
186 PR fortran/88376
187 * resolve.c (is_illegal_recursion): Remove an assert().
188
07c11f2b 1892019-01-09 Sandra Loosemore <sandra@codesourcery.com>
190
191 PR other/16615
07c11f2b 192 * expr.c: Change "can not" to "cannot".
193
f4d3c071 1942019-01-09 Sandra Loosemore <sandra@codesourcery.com>
195
196 PR other/16615
f4d3c071 197 * class.c: Mechanically replace "can not" with "cannot".
198 * decl.c: Likewise.
199 * expr.c: Likewise.
200 * gfc-internals.texi: Likewise.
201 * intrinsic.texi: Likewise.
202 * invoke.texi: Likewise.
203 * io.c: Likewise.
204 * match.c: Likewise.
205 * parse.c: Likewise.
206 * primary.c: Likewise.
207 * resolve.c: Likewise.
208 * symbol.c: Likewise.
209 * trans-array.c: Likewise.
210 * trans-decl.c: Likewise.
211 * trans-intrinsic.c: Likewise.
212 * trans-stmt.c: Likewise.
213
9f096803 2142019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org>
215
216 PR fortran/68426
217 * simplify.c (gfc_simplify_spread): Also simplify if the
218 type of source is an EXPR_STRUCTURE.
219
d56370db 2202019-01-08 Janus Weil <janus@gcc.gnu.org>
221
222 PR fortran/88047
223 * class.c (gfc_find_vtab): For polymorphic typespecs, the components of
224 the class container may not be available (in case of invalid code).
225
ac64cdbe 2262019-01-08 Richard Biener <rguenther@suse.de>
227
228 PR fortran/88611
229 * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
230 directly build the expected GENERIC tree.
231
5f34f219 2322019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
233 Harald Anlauf <anlauf@gmx.de>
234 Tobias Burnus <burnus@gcc.gnu.org>
235
236 PR fortran/45424
237 * check.c (gfc_check_is_contiguous): New function.
238 * expr.c (gfc_is_not_contiguous): New function.
239 * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS.
240 Add prototype for gfc_is_not_contiguous.
241 * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS.
242 (add_function): Add is_contiguous.
243 * intrinsic.h: Add prototypes for gfc_check_is_contiguous,
244 gfc_simplify_is_contiguous and gfc_resolve_is_contiguous.
245 * intrinsic.texi: Add IS_CONTIGUOUS.
246 * iresolve.c (gfc_resolve_is_contiguous): New function.
247 * simplify.c (gfc_simplify_is_contiguous): New function.
248 * trans-decl.c (gfor_fncecl_is_contiguous0): New variable.
249 (gfc_build_intrinsic_function_decl): Add it.
250 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New
251 function.
252 (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS.
253
2abeea3d 2542019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org>
255
256 PR fortran/88658
257 * gfortran.h: Add macro gfc_real_4_kind
258 * simplify.c (simplify_min_max): Special case for the types of
259 AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of
260 their arguments.
261
f2aba4ef 2622019-01-05 Janus Weil <janus@gcc.gnu.org>
263
264 PR fortran/88009
265 * class.c (gfc_find_derived_vtab): Mark the _final component as
266 artificial.
267 (find_intrinsic_vtab): Ditto. Also add an extra check to avoid
268 dereferencing a null pointer and adjust indentation.
269 * resolve.c (resolve_fl_variable): Add extra check to avoid
270 dereferencing a null pointer. Move variable declarations to local scope.
271 (resolve_fl_procedure): Add extra check to avoid dereferencing a null
272 pointer.
273 * symbol.c (check_conflict): Suppress errors for artificial symbols.
274
5055fc33 2752019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
276
45b37eaa 277 * parse.c (decode_statement): Suppress "Unclassifiable statement"
5055fc33 278 error if previous error messages were emittes.
279
66aeaf4b 2802019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
281
282 PR fortran/82743
283 * primary.c (gfc_convert_to_structure_constructor): If a character
284 in a constructor is too long, add a warning with
285 -Wcharacter-truncation.
286
3d8932fd 2872019-01-01 Jakub Jelinek <jakub@redhat.com>
8e8f6434 288
fbd26352 289 Update copyright years.
290
277184bc 291 * gfortranspec.c (lang_specific_driver): Update copyright notice
292 dates.
293 * gfc-internals.texi: Bump @copying's copyright year.
294 * gfortran.texi: Ditto.
295 * intrinsic.texi: Ditto.
296 * invoke.texi: Ditto.
2355cca7 297\f
3d8932fd 298Copyright (C) 2019 Free Software Foundation, Inc.
7dfbd804 299
300Copying and distribution of this file, with or without modification,
301are permitted in any medium without royalty provided the copyright
302notice and this notice are preserved.