1 2019-02-02 Dominique d'Humieres <dominiq@gcc.gnu.org>
4 * invoke.texi: Document the behavior of repeated -ffpe-trap
7 2019-02-02 Thomas Koenig <tkoenig@gcc.gnu.org>
10 * arith.c (gfc_int2int): Do not warn if src->do_not_warn is set.
11 * gfortran.h (gfc_expr): Add flag do_not_warn.
12 * intrinsic.c (gfc_convert_type_warn): Set expr->do_not_warn if
13 no warning is desired.
15 2019-02-02 Paul Thomas <pault@gcc.gnu.org>
18 * trans-expr.c (gfc_conv_procedure_call): For derived entities,
19 passed in parentheses to class formals, invert the order of
20 copying allocatable components to taking the _data of the
23 2019-02-02 Paul Thomas <pault@gcc.gnu.org>
26 * trans-array.c (gfc_array_init_size): Add element_size to the
28 (gfc_array_allocate): Remove the recalculation of the size of
29 the element and use element_size from the call to the above.
30 Unconditionally set the span field of the descriptor.
32 2019-02-02 Paul Thomas <pault@gcc.gnu.org>
35 * expr.c (is_subref_array): Move the check for class pointer
36 dummy arrays to after the reference check. If we haven't seen
37 an array reference other than an element and a component is not
38 class or derived, return false.
40 2019-02-01 Jakub Jelinek <jakub@redhat.com>
44 * trans-decl.c (generate_local_decl): Add referenced FL_PARAMETERs
45 if sym->ns->construct_entities rather than if
46 sym->ns->parent->code->op == EXEC_BLOCK.
48 2019-01-31 Thomas Koenig <tkoenig@gcc.gnu.org>
51 * resolve.c (resolve_component): If the reference is a BT_CLASS,
52 copy the contiguous attribute from the reference and use the
55 2019-01-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
58 * io.c (match_io): Add check for comma after '*' without subsequent
61 2019-01-30 Dominique d'Humieres <dominiq@gcc.gnu.org>
64 * invoke.texi: Document the promotion of double precision
67 2019-01-29 Thomas Koenig <tkoenig@gcc.gnu.org>
70 * interface.c (gfc_compare_types): If a derived type and an
71 integer both have a derived type, and they are identical,
72 this is a C binding type and compares equal.
74 2019-01-26 Harald Anlauf <anlauf@gmx.de>
77 * expr.c (check_inquiry): Add list of inquiry functions allowed in
78 constant expressions for F2008+.
80 2019-01-25 Steven G. Kargl <kargl@gcc.gnu.org>
83 * decl.c (gfc_match_subroutine): Check for conflict between BIND(C)
84 and alternative return.
86 2019-01-24 Paul Thomas <pault@gcc.gnu.org>
89 * trans-array.c (gfc_conv_descriptor_elem_len): New function.
90 * trans-array.h : Add prototype for above.
91 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of
92 assumed rank arrays being flagged by rank = -1 in expressions.
93 Intent in arrays need a pointer to a copy of the data to be
94 assigned to the descriptor passed for conversion. This should
95 then be freed, together with the CFI descriptor on return from
98 2019-01-22 Harald Anlauf <anlauf@gmx.de>
101 * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer
102 and (- 2**e) ** integer.
104 2019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org>
107 * resolve.c (resolve_types): Add !flag_automatic.
108 * symbol.c (gfc_add_save): Silence warnings.
110 2019-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
113 * io.c (match_io_element): input-item cannot be an external function.
115 2018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org>
116 Paul Thomas <pault@gcc.gnu.org>
119 * trans-expr.c (gfc_conv_procedure_call): Call
120 gfc_conv_subref_array_arg if the formal arg is contiguous
121 and the actual arg may not be.
123 2019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
126 * resolve.c (resolve_ref): Fix logic for removal of
129 2019-01-19 Jakub Jelinek <jakub@redhat.com>
132 * trans-decl.c (gfc_get_symbol_decl): Don't add length to function
133 or parent function if it has been added there already.
135 2019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
138 * resolve.c (resolve_array_ref): Add equal_length argument; set it
139 if the length of the substring equals that of the orignal
141 (resolve_ref): Remove the substring if it is equal in length to
142 the original variable, unless it is an EXPR_SUBSTRING).
144 2019-01-15 Steven G. Kargl <kargl@gcc.gnu.org>
147 * resolve.c (resolve_symbol): Host associated varaibles can appear
148 in the specification statement of a RESULT array.
150 2019-01-15 Paul Thomas <pault@gcc.gnu.org>
152 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
153 that are indirect references; ie. dummy arguments.
155 2019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
158 * gfortran.texi: Replace @xref with @ref and adjust the sentence.
160 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
163 * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack
164 functions with contiguous results.
166 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
169 * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not
170 pack/unpack results of functions which return an explicit-shaped
171 or allocatable array.
173 2019-01-12 Steven G. Kargl <kargl@gcc.gnu.org>
176 * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
177 structure into independent if's with a return to simplify logic.
178 Avoid a check for ENTRY name with bind(c).
180 2019-01-12 Paul Thomas <pault@gcc.gnu.org>
182 * gfortran.texi: Add description in sections on TS 29113 and
183 further interoperability with C.
184 * trans-array.c (gfc_conv_descriptor_attribute): New function.
185 (gfc_get_dataptr_offset): Remove static function attribute.
186 * trans-array.h: Add prototypes for above functions.
187 * trans-decl.c: Add declarations for the library functions
188 cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
189 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
190 (gfc_conv_procedure_call): Call it for scalar and array actual
191 arguments, when the formal arguments are bind_c with assumed
192 shape or assumed rank.
193 * trans.h: External declarations for gfor_fndecl_cfi_to_gfc
194 and gfor_fndecl_gfc_to_cfi.
196 2019-01-11 Steven G. Kargl <kargl@gcc.gnu.org>
199 * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby
202 2019-01-11 Jakub Jelinek <jakub@redhat.com>
206 * trans-openmp.c: Include attribs.h.
207 (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
208 VAR_DECL max bound with "omp dummy var" attribute like NULL or
209 error_mark_node - recompute number of elts independently.
211 2019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
214 * trans-array.c (gfc_conv_parameter_array): Temporary
215 arrays generated for expressions do not need to be repacked.
217 2019-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
220 * decl.c (top_var_list): Set locus of expr.
221 (gfc_match_data): Detect pointer on non-rightmost part-refs.
223 2019-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
226 * resolve.c (is_illegal_recursion): Remove an assert().
228 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
231 * expr.c: Change "can not" to "cannot".
233 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
236 * class.c: Mechanically replace "can not" with "cannot".
239 * gfc-internals.texi: Likewise.
240 * intrinsic.texi: Likewise.
241 * invoke.texi: Likewise.
245 * primary.c: Likewise.
246 * resolve.c: Likewise.
247 * symbol.c: Likewise.
248 * trans-array.c: Likewise.
249 * trans-decl.c: Likewise.
250 * trans-intrinsic.c: Likewise.
251 * trans-stmt.c: Likewise.
253 2019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org>
256 * simplify.c (gfc_simplify_spread): Also simplify if the
257 type of source is an EXPR_STRUCTURE.
259 2019-01-08 Janus Weil <janus@gcc.gnu.org>
262 * class.c (gfc_find_vtab): For polymorphic typespecs, the components of
263 the class container may not be available (in case of invalid code).
265 2019-01-08 Richard Biener <rguenther@suse.de>
268 * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
269 directly build the expected GENERIC tree.
271 2019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
272 Harald Anlauf <anlauf@gmx.de>
273 Tobias Burnus <burnus@gcc.gnu.org>
276 * check.c (gfc_check_is_contiguous): New function.
277 * expr.c (gfc_is_not_contiguous): New function.
278 * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS.
279 Add prototype for gfc_is_not_contiguous.
280 * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS.
281 (add_function): Add is_contiguous.
282 * intrinsic.h: Add prototypes for gfc_check_is_contiguous,
283 gfc_simplify_is_contiguous and gfc_resolve_is_contiguous.
284 * intrinsic.texi: Add IS_CONTIGUOUS.
285 * iresolve.c (gfc_resolve_is_contiguous): New function.
286 * simplify.c (gfc_simplify_is_contiguous): New function.
287 * trans-decl.c (gfor_fncecl_is_contiguous0): New variable.
288 (gfc_build_intrinsic_function_decl): Add it.
289 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New
291 (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS.
293 2019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org>
296 * gfortran.h: Add macro gfc_real_4_kind
297 * simplify.c (simplify_min_max): Special case for the types of
298 AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of
301 2019-01-05 Janus Weil <janus@gcc.gnu.org>
304 * class.c (gfc_find_derived_vtab): Mark the _final component as
306 (find_intrinsic_vtab): Ditto. Also add an extra check to avoid
307 dereferencing a null pointer and adjust indentation.
308 * resolve.c (resolve_fl_variable): Add extra check to avoid
309 dereferencing a null pointer. Move variable declarations to local scope.
310 (resolve_fl_procedure): Add extra check to avoid dereferencing a null
312 * symbol.c (check_conflict): Suppress errors for artificial symbols.
314 2019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
316 * parse.c (decode_statement): Suppress "Unclassifiable statement"
317 error if previous error messages were emittes.
319 2019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
322 * primary.c (gfc_convert_to_structure_constructor): If a character
323 in a constructor is too long, add a warning with
324 -Wcharacter-truncation.
326 2019-01-01 Jakub Jelinek <jakub@redhat.com>
328 Update copyright years.
330 * gfortranspec.c (lang_specific_driver): Update copyright notice
332 * gfc-internals.texi: Bump @copying's copyright year.
333 * gfortran.texi: Ditto.
334 * intrinsic.texi: Ditto.
335 * invoke.texi: Ditto.
337 Copyright (C) 2019 Free Software Foundation, Inc.
339 Copying and distribution of this file, with or without modification,
340 are permitted in any medium without royalty provided the copyright
341 notice and this notice are preserved.