1 2019-01-25 Steven G. Kargl <kargl@gcc.gnu.org>
4 * decl.c (gfc_match_subroutine): Check for conflict between BIND(C)
5 and alternative return.
7 2019-01-24 Paul Thomas <pault@gcc.gnu.org>
10 * trans-array.c (gfc_conv_descriptor_elem_len): New function.
11 * trans-array.h : Add prototype for above.
12 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Take account of
13 assumed rank arrays being flagged by rank = -1 in expressions.
14 Intent in arrays need a pointer to a copy of the data to be
15 assigned to the descriptor passed for conversion. This should
16 then be freed, together with the CFI descriptor on return from
19 2019-01-22 Harald Anlauf <anlauf@gmx.de>
22 * trans-expr.c (gfc_conv_power_op): Handle cases of (2**e) ** integer
23 and (- 2**e) ** integer.
25 2019-01-19 Dominique d'Humieres <dominiq@gcc.gnu.org>
28 * resolve.c (resolve_types): Add !flag_automatic.
29 * symbol.c (gfc_add_save): Silence warnings.
31 2019-01-19 Steven G. Kargl <kargl@gcc.gnu.org>
34 * io.c (match_io_element): input-item cannot be an external function.
36 2018-01-19 Thomas Koenig <tkoenig@gcc.gnu.org>
37 Paul Thomas <pault@gcc.gnu.org>
40 * trans-expr.c (gfc_conv_procedure_call): Call
41 gfc_conv_subref_array_arg if the formal arg is contiguous
42 and the actual arg may not be.
44 2019-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
47 * resolve.c (resolve_ref): Fix logic for removal of
50 2019-01-19 Jakub Jelinek <jakub@redhat.com>
53 * trans-decl.c (gfc_get_symbol_decl): Don't add length to function
54 or parent function if it has been added there already.
56 2019-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
59 * resolve.c (resolve_array_ref): Add equal_length argument; set it
60 if the length of the substring equals that of the orignal
62 (resolve_ref): Remove the substring if it is equal in length to
63 the original variable, unless it is an EXPR_SUBSTRING).
65 2019-01-15 Steven G. Kargl <kargl@gcc.gnu.org>
68 * resolve.c (resolve_symbol): Host associated varaibles can appear
69 in the specification statement of a RESULT array.
71 2019-01-15 Paul Thomas <pault@gcc.gnu.org>
73 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Deal with exprs
74 that are indirect references; ie. dummy arguments.
76 2019-01-13 Dominique d'Humieres <dominiq@gcc.gnu.org>
79 * gfortran.texi: Replace @xref with @ref and adjust the sentence.
81 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
84 * trans-array.c (gfc_conv_array_parameter): Do not pack/unpack
85 functions with contiguous results.
87 2019-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
90 * trans-array.c (gfc_conv_array_parameter): Remove TODO. Do not
91 pack/unpack results of functions which return an explicit-shaped
94 2019-01-12 Steven G. Kargl <kargl@gcc.gnu.org>
97 * resolve.c (gfc_verify_binding_labels): Break if-elseif-elseif
98 structure into independent if's with a return to simplify logic.
99 Avoid a check for ENTRY name with bind(c).
101 2019-01-12 Paul Thomas <pault@gcc.gnu.org>
103 * gfortran.texi: Add description in sections on TS 29113 and
104 further interoperability with C.
105 * trans-array.c (gfc_conv_descriptor_attribute): New function.
106 (gfc_get_dataptr_offset): Remove static function attribute.
107 * trans-array.h: Add prototypes for above functions.
108 * trans-decl.c: Add declarations for the library functions
109 cfi_desc_to_gfc_desc and gfc_desc_to_cfi_desc.
110 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): New function.
111 (gfc_conv_procedure_call): Call it for scalar and array actual
112 arguments, when the formal arguments are bind_c with assumed
113 shape or assumed rank.
114 * trans.h: External declarations for gfor_fndecl_cfi_to_gfc
115 and gfor_fndecl_gfc_to_cfi.
117 2019-01-11 Steven G. Kargl <kargl@gcc.gnu.org>
120 * decl.c (gfc_match_entry): Check for F2018:C1546. Fix nearby
123 2019-01-11 Jakub Jelinek <jakub@redhat.com>
127 * trans-openmp.c: Include attribs.h.
128 (gfc_walk_alloc_comps, gfc_omp_clause_linear_ctor): Handle
129 VAR_DECL max bound with "omp dummy var" attribute like NULL or
130 error_mark_node - recompute number of elts independently.
132 2019-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
135 * trans-array.c (gfc_conv_parameter_array): Temporary
136 arrays generated for expressions do not need to be repacked.
138 2019-01-10 Steven G. Kargl <kargl@gcc.gnu.org>
141 * decl.c (top_var_list): Set locus of expr.
142 (gfc_match_data): Detect pointer on non-rightmost part-refs.
144 2019-01-09 Steven G. Kargl <kargl@gcc.gnu.org>
147 * resolve.c (is_illegal_recursion): Remove an assert().
149 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
152 * expr.c: Change "can not" to "cannot".
154 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
157 * class.c: Mechanically replace "can not" with "cannot".
160 * gfc-internals.texi: Likewise.
161 * intrinsic.texi: Likewise.
162 * invoke.texi: Likewise.
166 * primary.c: Likewise.
167 * resolve.c: Likewise.
168 * symbol.c: Likewise.
169 * trans-array.c: Likewise.
170 * trans-decl.c: Likewise.
171 * trans-intrinsic.c: Likewise.
172 * trans-stmt.c: Likewise.
174 2019-01-09 Thomas Koenig <tkoenig@gcc.gnu.org>
177 * simplify.c (gfc_simplify_spread): Also simplify if the
178 type of source is an EXPR_STRUCTURE.
180 2019-01-08 Janus Weil <janus@gcc.gnu.org>
183 * class.c (gfc_find_vtab): For polymorphic typespecs, the components of
184 the class container may not be available (in case of invalid code).
186 2019-01-08 Richard Biener <rguenther@suse.de>
189 * trans-expr.c (gfc_conv_initializer): For ISOCBINDING_NULL_*
190 directly build the expected GENERIC tree.
192 2019-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
193 Harald Anlauf <anlauf@gmx.de>
194 Tobias Burnus <burnus@gcc.gnu.org>
197 * check.c (gfc_check_is_contiguous): New function.
198 * expr.c (gfc_is_not_contiguous): New function.
199 * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_CONTIGUOUS.
200 Add prototype for gfc_is_not_contiguous.
201 * intrinsic.c (do_ts29113_check): Add GFC_ISYM_IS_CONTIGUOUS.
202 (add_function): Add is_contiguous.
203 * intrinsic.h: Add prototypes for gfc_check_is_contiguous,
204 gfc_simplify_is_contiguous and gfc_resolve_is_contiguous.
205 * intrinsic.texi: Add IS_CONTIGUOUS.
206 * iresolve.c (gfc_resolve_is_contiguous): New function.
207 * simplify.c (gfc_simplify_is_contiguous): New function.
208 * trans-decl.c (gfor_fncecl_is_contiguous0): New variable.
209 (gfc_build_intrinsic_function_decl): Add it.
210 * trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): New
212 (gfc_conv_intrinsic_function): Handle GFC_ISYM_IS_CONTIGUOUS.
214 2019-01-06 Thomas Koenig <tkoenig@gcc.gnu.org>
217 * gfortran.h: Add macro gfc_real_4_kind
218 * simplify.c (simplify_min_max): Special case for the types of
219 AMAX0, AMIN0, MAX1 and MIN1, which actually change the types of
222 2019-01-05 Janus Weil <janus@gcc.gnu.org>
225 * class.c (gfc_find_derived_vtab): Mark the _final component as
227 (find_intrinsic_vtab): Ditto. Also add an extra check to avoid
228 dereferencing a null pointer and adjust indentation.
229 * resolve.c (resolve_fl_variable): Add extra check to avoid
230 dereferencing a null pointer. Move variable declarations to local scope.
231 (resolve_fl_procedure): Add extra check to avoid dereferencing a null
233 * symbol.c (check_conflict): Suppress errors for artificial symbols.
235 2019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
237 * parse.c (decode_statement): Suppress "Unclassifiable statement"
238 error if previous error messages were emittes.
240 2019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
243 * primary.c (gfc_convert_to_structure_constructor): If a character
244 in a constructor is too long, add a warning with
245 -Wcharacter-truncation.
247 2019-01-01 Jakub Jelinek <jakub@redhat.com>
249 Update copyright years.
251 * gfortranspec.c (lang_specific_driver): Update copyright notice
253 * gfc-internals.texi: Bump @copying's copyright year.
254 * gfortran.texi: Ditto.
255 * intrinsic.texi: Ditto.
256 * invoke.texi: Ditto.
258 Copyright (C) 2019 Free Software Foundation, Inc.
260 Copying and distribution of this file, with or without modification,
261 are permitted in any medium without royalty provided the copyright
262 notice and this notice are preserved.