1 2014-04-22 Release Manager
5 2014-04-13 Paul Thomas <pault@gcc.gnu.org>
9 * trans.h: Add 'use_offset' bitfield to gfc_se.
10 * trans-array.c (gfc_conv_expr_descriptor): Use 'use_offset'
11 as a trigger to unconditionally recalculate the offset for
12 array slices and constant arrays.
13 trans-expr.c (gfc_conv_intrinsic_to_class): Use it.
14 trans-stmt.c (trans_associate_var): Ditto.
15 (gfc_conv_procedure_call): Ditto.
17 2014-04-11 Janne Blomqvist <jb@gcc.gnu.org>
19 * intrinsic.texi (RANDOM_SEED): Improve example.
21 2014-04-10 Bernd Edlinger <bernd.edlinger@hotmail.de>
23 * class.c (gfc_build_class_symbol): Append "_t" to target class
24 names to make the generated type names unique.
26 2014-04-04 Bernd Edlinger <bernd.edlinger@hotmail.de>
29 * trans-types.c (gfc_get_function_type): In case of recursion
30 build a variadic function type with empty argument list instead of a
31 stdarg-like function type with incomplete argument list.
33 2014-04-04 Tobias Burnus <burnus@net-b.de>
35 * check.c (gfc_check_cmplx): Fix typo.
37 2014-03-28 Mikael Morin <mikael@gcc.gnu.org>
38 Tobias Burnus <burnus@net-b.de>
41 * trans-expr.c (gfc_conv_derived_to_class): Avoid
42 generation of out-of-bounds range expr.
44 2014-03-28 Mikael Morin <mikael@gcc.gnu.org>
47 * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Enlarge argument
50 2014-03-27 Thomas Koenig <tkoenig@gcc.gnu.org>
53 * frontend-passes.c (cfe_code): Do not walk subtrees
56 2014-03-27 Tobias Burnus <burnus@net-b.de>
59 * trans-expr.c (gfc_conv_scalar_to_descriptor): Fix handling
62 2014-03-26 Dominique d'Humieres <dominiq@lps.ens.fr>
65 * fortran.texi: Document Volatile COMMON as not supported.
67 2014-03-22 Jakub Jelinek <jakub@redhat.com>
70 * cpp.c (gfc_cpp_init): Restore cb_change_file call to
73 2014-03-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
76 * gfortran.texi: Add description of namelist DELIM= behavior.
78 2014-03-19 Tobias Burnus <burnus@net-b.>
81 * io.c (check_io_constraints): Use gfc_unset_implicit_pure.
82 * resolve.c (resolve_ordinary_assign): Ditto.
84 2014-03-19 Tobias Burnus <burnus@net-b.de>
88 * gfortran.h (gfc_unset_implicit_pure): New prototype.
89 * resolve.c (gfc_unset_implicit_pure): New.
90 (resolve_structure_cons, resolve_function,
91 pure_subroutine): Use it.
92 * decl.c (match_old_style_init, gfc_match_data,
93 match_pointer_init, variable_decl): Ditto.
94 * expr.c (gfc_check_pointer_assign): Ditto.
95 * intrinsic.c (gfc_intrinsic_sub_interface): Ditto.
96 * io.c (match_vtag, gfc_match_open, gfc_match_close,
97 match_filepos, gfc_match_inquire, gfc_match_print,
98 gfc_match_wait): Ditto.
99 * match.c (gfc_match_critical, gfc_match_stopcode,
100 lock_unlock_statement, sync_statement, gfc_match_allocate,
101 gfc_match_deallocate): Ditto.
102 * parse.c (decode_omp_directive): Ditto.
103 * symbol.c (gfc_add_save): Ditto.
105 2014-03-18 Janus Weil <janus@gcc.gnu.org>
109 * decl.c (match_attr_spec): Revert r208590.
111 2014-03-18 Jakub Jelinek <jakub@redhat.com>
114 * trans.c (gfc_unlikely, gfc_likely): Don't add __builtin_expect
117 2014-03-18 Tobias Burnus <burnus@net-b.de>
120 * trans.h (gfc_unlikely, gfc_likely): Add predictor as argument.
121 (gfc_trans_io_runtime_check): Remove.
122 * trans-io.c (gfc_trans_io_runtime_check): Make static; add has_iostat
123 as argument, add predictor to block.
124 (set_parameter_value, gfc_trans_open, gfc_trans_close, build_filepos,
125 gfc_trans_inquire, gfc_trans_wait, build_dt): Update calls.
126 * trans.c (gfc_unlikely, gfc_likely): Add predictor as argument.
127 (gfc_trans_runtime_check, gfc_allocate_using_malloc,
128 gfc_allocate_allocatable, gfc_deallocate_with_status): Set explicitly
130 * trans-expr.c (gfc_conv_procedure_call): Ditto.
131 * trans-stmt.c (gfc_trans_allocate): Ditto.
132 * trans-array.c (gfc_array_init_size, gfc_array_allocate): Ditto.
134 2014-03-15 Janus Weil <janus@gcc.gnu.org>
137 * decl.c (match_attr_spec): Variables in the main program implicitly
138 get the SAVE attribute in Fortran 2008.
140 2014-03-14 Mikael Morin <mikael@gcc.gnu.org>
143 * trans-array.c (gfc_conv_array_parameter): Don't reuse the descriptor
144 if it has transposed dimensions.
146 2014-03-08 Tobias Burnus <burnus@net-b.de>
149 * f95-lang.c (gfc_init): Return false when only
151 * options.c (gfc_post_options): Ditto.
153 2014-03-08 Tobias Burnus <burnus@net-b.de>
155 * gfortran.texi (Fortran 2003 Status): Mention finalization,
156 deferred-length character support and input rounding.
157 (Fortran 2008 Status): Mention that at termination
158 signalling exceptions are shown.
160 2014-03-06 Paul Thomas <pault@gcc.gnu.org>
161 Janus Weil <janus@gcc.gnu.org>
164 * gfortran.h (symbol_attribute): Add deferred_parameter attribute.
165 * primary.c (build_actual_constructor): It is not an error if
166 a missing component has the deferred_parameter attribute;
167 equally, if one is given a value, it is an error.
168 * resolve.c (resolve_fl_derived0): Remove error for deferred
169 character length components. Add the hidden string length
170 field to the structure. Give it the deferred_parameter
172 * trans-array.c (duplicate_allocatable): Add a strlen field
173 which is used as the element size if it is non-null.
174 (gfc_duplicate_allocatable, gfc_copy_allocatable_data): Pass a
175 NULL to the new argument in duplicate_allocatable.
176 (structure_alloc_comps): Set the hidden string length as
177 appropriate. Use it in calls to duplicate_allocatable.
178 (gfc_alloc_allocatable_for_assignment): When a deferred length
179 backend declaration is variable, use that; otherwise use the
180 string length from the expression evaluation.
181 * trans-expr.c (gfc_conv_component_ref): If this is a deferred
182 character length component, the string length should have the
183 value of the hidden string length field.
184 (gfc_trans_subcomponent_assign): Set the hidden string length
185 field for deferred character length components. Allocate the
186 necessary memory for the string.
187 (alloc_scalar_allocatable_for_assignment): Same change as in
188 gfc_alloc_allocatable_for_assignment above.
189 * trans-stmt.c (gfc_trans_allocate): Likewise.
190 * trans-intrinsic (size_of_string_in_bytes): Make non-static.
191 * trans-types.c (gfc_get_derived_type): Set the tree type for
192 a deferred character length component.
193 * trans.c (gfc_deferred_strlen): New function.
194 * trans.h (size_of_string_in_bytes,gfc_deferred_strlen): New prototypes.
196 2014-03-01 Mikael Morin <mikael@gcc.gnu.org>
199 * frontend-passes.c (optimize_comparison): Guard two union accesses
200 with the corresponding tag checks.
202 2014-02-28 Janus Weil <janus@gcc.gnu.org>
205 * class.c (find_intrinsic_vtab): Prevent duplicate creation of copy
206 procedure for characters.
208 2014-02-21 Janus Weil <janus@gcc.gnu.org>
211 * check.c (gfc_check_c_f_pointer): Only clear 'size' if 'gfc_array_size'
214 2014-02-21 Janus Weil <janus@gcc.gnu.org>
217 * gfortran.h (gfc_build_class_symbol): Removed argument.
218 * class.c (gfc_add_component_ref): Fix up missing vtype if necessary.
219 (gfc_build_class_symbol): Remove argument 'delayed_vtab'. vtab is always
220 delayed now, except for unlimited polymorphics.
221 (comp_is_finalizable): Procedure pointer components are not finalizable.
222 * decl. (build_sym, build_struct, attr_decl1): Removed argument of
223 'gfc_build_class_symbol'.
224 * match.c (copy_ts_from_selector_to_associate, select_type_set_tmp):
226 * symbol.c (gfc_set_default_type): Ditto.
228 2014-02-19 Janus Weil <janus@gcc.gnu.org>
231 * expr.c (gfc_get_variable_expr): Don't add REF_ARRAY for dimensionful
232 functions, which are used as procedure pointer target.
234 2014-02-18 Tobias Burnus <burnus@net-b.de>
237 * expr.c (gfc_check_pointer_assign): Add check for
239 * trans-decl.c (gfc_get_symbol_decl): Correctly generate external
240 decl in a corner case.
242 2014-02-18 Janus Weil <janus@gcc.gnu.org>
245 * resolve.c (check_generic_tbp_ambiguity): Check for presence of dummy
246 arguments to prevent ICE.
248 2014-02-17 Janus Weil <janus@gcc.gnu.org>
251 * resolve.c (build_default_init_expr): Don't initialize character
252 variable if -fno-automatic is given.
254 2014-02-15 Mikael Morin <mikael@gcc.gnu.org>
257 * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Calculate the
260 2014-02-11 Jakub Jelinek <jakub@redhat.com>
263 * trans-decl.c (gfc_build_dummy_array_decl): Set TREE_NO_WARNING
264 on decl if sym->attr.optional.
266 2014-02-09 Paul Thomas <pault@gcc.gnu.org>
269 * resolve.c (resolve_assoc_var): Set the subref_array_pointer
270 attribute for the 'associate-name' if necessary.
271 * trans-stmt.c (trans_associate_var): If the 'associate-name'
272 is a subref_array_pointer, assign the element size of the
273 associate variable to 'span'.
275 2014-02-09 Paul Thomas <pault@gcc.gnu.org>
278 * trans-expr.c (gfc_conv_procedure_call): Pass the value of the
279 actual argument to a formal argument with the value attribute
280 in an elemental procedure.
282 2014-02-08 Janus Weil <janus@gcc.gnu.org>
283 Mikael Morin <mikael.morin@gcc.gnu.org>
286 * class.c (generate_finalization_wrapper): Assert that proc_tree has
287 been set in gfc_resolve_finalizers.
288 * resolve.c (resolve_fl_derived0): Remove unnecessary call to
291 2014-02-07 Benno Schulenberg <bensberg@justemail.net>
294 * fortran/resolve.c (resolve_ordinary_assign): Fix typoed word
297 2014-02-02 Mikael Morin <mikael@gcc.gnu.org>
300 * primary.c (gfc_convert_to_structure_constructor): Avoid null pointer
303 2014-02-01 Paul Thomas <pault@gcc.gnu.org>
306 * trans-stmt.c (gfc_add_loop_ss_code): In the case of character
307 SS_REFERENCE, use gfc_conv_string_parameter to ensure that a
308 pointer to the string is stored.
309 * trans-expr.c (gfc_conv_expr_reference): Likewise, use
310 gfc_conv_string_parameter to ensure that a pointer to is passed
311 to the elemental function.
313 2014-01-28 Paul Thomas <pault@gcc.gnu.org>
316 * trans-stmt.c (gfc_trans_allocate): Before the pointer
317 assignment to transfer the source _vptr to a class allocate
318 expression, the final class reference should be exposed. The
319 tail that includes the _data and array references is stored.
320 This reduced expression is transferred to 'lhs' and the _vptr
321 added. Then the tail is restored to the allocate expression.
323 2014-01-26 Mikael Morin <mikael@gcc.gnu.org>
326 * module.c (read_module): Assert for component name correctness.
328 2014-01-18 Mikael Morin <mikael@gcc.gnu.org>
331 * module.c (MOD_VERSION): Bump.
332 (fp2, find_pointer2): Remove.
333 (mio_component_ref): Don't forcedfully set the containing derived type
334 symbol for loading. Remove unused argument.
335 (mio_ref): Update caller
336 (mio_symbol): Dump component list earlier.
337 (skip_list): New argument nest_level. Initialize level with the new
339 (read_module): Add forced pointer components association for derived
342 2014-01-12 Janus Weil <janus@gcc.gnu.org>
345 * decl.c (gfc_match_data_decl): Improve error recovery.
347 2014-01-09 Tobias Burnus <burnus@net-b.de>
349 * cpp.c (gfc_cpp_handle_option): Add missing break.
350 * trans-io.c (transfer_expr): Silence unused value warning.
352 2014-01-08 Janus Weil <janus@gcc.gnu.org>
355 * resolve.c (gfc_verify_binding_labels): Modify order of checks.
357 2014-01-06 Janus Weil <janus@gcc.gnu.org>
360 * class.c (comp_is_finalizable): New function to dermine if a given
361 component is finalizable.
362 (finalize_component, generate_finalization_wrapper): Use it.
364 2014-01-06 Janus Weil <janus@gcc.gnu.org>
368 * resolve.c (resolve_global_procedure): Don't apply to c-binding
370 (gfc_verify_binding_labels): Remove duplicate line.
372 2014-01-04 Janus Weil <janus@gcc.gnu.org>
375 * class.c (add_proc_comp): Copy pure attribute.
377 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
379 Update copyright years
381 2014-01-02 Tobias Burnus <burnus@net-b.de>
383 * gfortranspec.c (lang_specific_driver): Update copyright notice
385 * gfc-internals.texi: Bump @copying's copyright year.
386 * gfortran.texi: Ditto.
387 * intrinsic.texi: Ditto.
388 * invoke.texi: Ditto.
390 2014-01-02 Janus Weil <janus@gcc.gnu.org>
393 * resolve.c (resolve_typebound_procedures): No need to create the vtab
396 Copyright (C) 2014 Free Software Foundation, Inc.
398 Copying and distribution of this file, with or without modification,
399 are permitted in any medium without royalty provided the copyright
400 notice and this notice are preserved.