1 2015-05-05 David Malcolm <dmalcolm@redhat.com>
3 * expr.c (check_inquiry): Fix indentation so that it reflects the
5 * interface.c (compare_parameter): Likewise.
6 * parse.c (parse_oacc_structured_block): Likewise.
7 * target-memory.c (expr_to_char): Likewise.
8 * trans-types.c (gfc_init_kinds): Likewise.
10 2015-05-02 Steven G. Kargl <kargl@gcc.gnu.org>
13 * invoke.texi: Remove 'no-' in '-fno-fixed-form'
15 2015-05-01 Mikael Morin <mikael@gcc.gnu.org>
17 * simplify.c (simplify_bound_dim): Tighten the check for array fullness
18 by also checking for absence of subreference.
19 (simplify_bound): Don't skip simplification if the array
21 (simplify_cobound): Same.
23 2015-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
26 * simplify.c (simplify_bound): Get constant lower bounds of one
27 from array spec for assumed and explicit shape shape arrays if
28 the lower bounds are indeed one.
30 2015-04-30 David Malcolm <dmalcolm@redhat.com>
32 * options.c (gfc_init_options): Remove spurious second
34 * trans-stmt.c (gfc_trans_allocate): Likewise.
36 2015-04-28 Andre Vehreschild <vehre@gmx.de>
38 * interface.c (gfc_compare_types): Check for unlimited
39 polymorphism flag in the correct position indepent of the _data
40 component being present or not. This prevents a segfault, when
41 the _data component is not present.
42 * symbol.c (gfc_type_compatible): Same.
44 2015-04-27 Jim Wilson <jim.wilson@linaro.org>
46 * Make-lang.in (fortran.mostlyclean): Remove gfortran and
49 2015-04-27 Andre Vehreschild <vehre@gmx.de>
53 * trans-array.c (duplicate_allocatable): Fixed deep copy of
54 allocatable components, which are liable for copy only, when
56 (gfc_duplicate_allocatable): Add deep-copy code into if
57 component allocated block. Needed interface change for that.
58 (gfc_copy_allocatable_data): Supplying NULL_TREE for code to
59 add into if-block for checking whether a component was
61 (gfc_duplicate_allocatable_nocopy): Likewise.
62 (structure_alloc_comps): Likewise.
63 * trans-array.h: Likewise.
64 * trans-expr.c (gfc_trans_alloc_subarray_assign): Likewise.
65 * trans-openmp.c (gfc_walk_alloc_comps): Likewise.
67 2015-04-23 Andre Vehreschild <vehre@gmx.de>
70 * expr.c (gfc_lval_expr_from_sym): Code to select the regular
72 * gfortran.h: Add IS_CLASS_ARRAY macro.
73 * trans-array.c (gfc_add_loop_ss_code): Treat class objects
74 to be referenced always.
75 (build_class_array_ref): Adapt retrieval of array descriptor.
76 (build_array_ref): Likewise.
77 (gfc_conv_array_ref): Hand the vptr or the descriptor to
78 build_array_ref depending whether the sym is class or not.
79 (gfc_trans_array_cobounds): Select correct gfc_array_spec for
80 regular and class arrays.
81 (gfc_trans_array_bounds): Likewise.
82 (gfc_trans_dummy_array_bias): Likewise.
83 (gfc_get_dataptr_offset): Correcting call of build_array_ref.
84 (gfc_conv_expr_descriptor): Set the array's offset to -1 when
85 lbound in inner most dim is 1 and symbol non-pointer/assoc.
86 * trans-decl.c (gfc_build_qualified_array): Select correct
87 gfc_array_spec for regular and class arrays.
88 (gfc_build_dummy_array_decl): Likewise.
89 (gfc_get_symbol_decl): Get a dummy array for class arrays.
90 (gfc_trans_deferred_vars): Tell conv_expr that the descriptor
92 * trans-expr.c (gfc_class_vptr_get): Get the class descriptor
93 from the correct location for class arrays.
94 (gfc_class_len_get): Likewise.
95 (gfc_conv_intrinsic_to_class): Add handling of _len component.
96 (gfc_conv_class_to_class): Prevent access to unset array data
97 when the array is an optional argument. Add handling of _len
99 (gfc_copy_class_to_class): Check that _def_init is non-NULL
100 when used in _vptr->copy()
101 (gfc_trans_class_init_assign): Ensure that the rank of
103 (gfc_conv_component_ref): Get the _vptr along with _data refs.
104 (gfc_conv_variable): Make sure the temp array descriptor is
105 returned for class arrays, too, and that class arrays are
106 dereferenced correctly.
107 (gfc_conv_procedure_call): For polymorphic type initialization
108 the initializer has to be a pointer to _def_init stored in a
109 dummy variable, which then needs to be used by value.
110 * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Use the
111 temporary array descriptor for class arrays, too.
112 (gfc_conv_intrinsic_storage_size): Likewise.
113 (gfc_conv_intrinsic_loc): Add ref to _data for BT_CLASS
115 * trans-stmt.c (trans_associate_var): Use a temporary array for
116 the associate variable of class arrays, too, making the array
117 one-based (lbound == 1).
118 * trans-types.c (gfc_is_nodesc_array): Use the correct
120 * trans.c (gfc_build_array_ref): Use the dummy array descriptor
122 * trans.h: Add class_vptr to gfc_se for storing a class ref's
125 2015-04-22 Steven G. Kargl <kargl@gcc.gnu.org>
128 * decl.c (add_init_expr_to_sym): Set the length type parameter.
130 2015-04-10 Tobias Burnus <burnus@net-b.de>
132 * trans-stmt.c (gfc_trans_lock_unlock): Implement -fcoarray=lib
133 version; reject not-yet-implemented variants.
134 * trans-types.c (gfc_get_derived_type): For lock_type with
135 -fcoarray=lib, use a void pointer as type.
136 * trans.c (gfc_allocate_using_lib, gfc_allocate_allocatable):
137 Handle lock_type with -fcoarray=lib.
139 2015-04-10 Mikael Morin <mikael@gcc.gnu.org>
145 * symbol.c (save_symbol_data, gfc_save_symbol_data): Rename the
146 former to the latter and make it non-static. Update callers.
147 * gfortran.h (gfc_save_symbol_data): New prototype.
148 * decl.c (gfc_match_decl_type_spec): Call 'gfc_save_symbol_data'
149 before modifying symbols 'sym' and 'dt_sym'.
151 2013-04-09 Paul Thomas <pault@gcc.gnu.org>
154 * primary.c (gfc_variable_attr): Avoid ICE on AR_UNKNOWN if any
155 of the index variables are untyped and errors are present.
157 2015-04-07 Andre Vehreschild <vehre@gmx.de>
160 * trans-stmt.c (gfc_trans_allocate): For intrinsic functions
161 use conv_expr_descriptor() instead of conv_expr_reference().
163 2015-03-30 Jakub Jelinek <jakub@redhat.com>
166 * trans-openmp.c (gfc_trans_omp_do): For !simple simd with explicit
167 linear clause for the iterator set OMP_CLAUSE_LINEAR_NO_COPYIN.
168 For implcitly added !simple OMP_CLAUSE_LINEAR set it too. Use step 1
169 instead of the original step on the new iterator - count.
171 2015-03-25 Mikael Morin <mikael@gcc.gnu.org>
175 * gfortran.h (struct gfc_namespace): New field 'types_resolved'.
176 * resolve.c (resolve_types): Return early if field 'types_resolved'
177 is set. Set 'types_resolved' at the end.
179 2015-03-24 Andre Vehreschild <vehre@gmx.de>
182 * trans-expr.c (gfc_conv_structure): Fixed indendation.
183 Using integer_zero_node now instead of explicitly
184 constructing a integer constant zero node.
185 (gfc_conv_derived_to_class): Add handling of _len component,
186 i.e., when the rhs has a string_length then assign that to
187 class' _len, else assign 0.
188 (gfc_conv_intrinsic_to_class): Likewise.
190 2015-03-24 Andre Vehreschild <vehre@gmx.de>
195 * class.c (gfc_add_component_ref): Free no longer needed
196 ref-chains to prevent memory loss.
197 (find_intrinsic_vtab): For deferred length char arrays or
198 unlimited polymorphic objects, store the size in bytes of one
199 character in the size component of the vtab.
200 * gfortran.h: Added gfc_add_len_component () define.
201 * trans-array.c (gfc_trans_create_temp_array): Switched to new
202 function name for getting a class' vtab's field.
203 (build_class_array_ref): Likewise.
204 (gfc_array_init_size): Using the size information from allocate
205 more consequently now, i.e., the typespec of the entity to
206 allocate is no longer needed. This is to address the last open
207 comment in PR fortran/57456.
208 (gfc_array_allocate): Likewise.
209 (structure_alloc_comps): gfc_copy_class_to_class () needs to
210 know whether the class is unlimited polymorphic.
211 * trans-array.h: Changed interface of gfc_array_allocate () to
212 reflect the no longer needed typespec.
213 * trans-expr.c (gfc_find_and_cut_at_last_class_ref): New.
214 (gfc_reset_len): New.
215 (gfc_get_class_array_ref): Switch to new function name for
216 getting a class' vtab's field.
217 (gfc_copy_class_to_class): Added flag to know whether the class
218 to copy is unlimited polymorphic. Adding _len dependent code
219 then, which calls ->vptr->copy () with four arguments adding
220 the length information ->vptr->copy(from, to, from_len, to_cap).
221 (gfc_conv_procedure_call): Switch to new function name for
222 getting a class' vtab's field.
223 (alloc_scalar_allocatable_for_assignment): Use the string_length
224 as computed by gfc_conv_expr and not the statically backend_decl
225 which may be incorrect when ref-ing.
226 (gfc_trans_assignment_1): Use the string_length variable and
227 not the rse.string_length. The former has been computed more
229 * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Switch to new
230 function name for getting a class' vtab's field.
231 (gfc_conv_intrinsic_storage_size): Likewise.
232 (gfc_conv_intrinsic_transfer): Likewise.
233 * trans-stmt.c (gfc_trans_allocate): Restructured to evaluate
234 source=expr3 only once before the loop over the objects to
235 allocate, when the objects are not arrays. Doing correct _len
236 initialization and calling of vptr->copy () fixing PR 64787.
237 (gfc_trans_deallocate): Reseting _len to 0, preventing future
239 * trans.c (gfc_build_array_ref): Switch to new function name
240 for getting a class' vtab's field.
241 (gfc_add_comp_finalizer_call): Likewise.
242 * trans.h: Define the prototypes for the gfc_class_vtab_*_get ()
243 and gfc_vptr_*_get () functions.
244 Added gfc_find_and_cut_at_last_class_ref () and
245 gfc_reset_len () routine prototype. Added flag to
246 gfc_copy_class_to_class () prototype to signal an unlimited
247 polymorphic entity to copy.
249 2015-03-24 Iain Sandoe <iain@codesourcery.com>
250 Tobias Burnus <burnus@net-b.de>
252 * gfortran.texi (_gfortran_caf_sync_memory): Improve wording.
254 2015-03-23 Paul Thomas <pault@gcc.gnu.org>
255 Mikael Morin <mikael@gcc.gnu.org>
258 * gfortran.h (struct symbol_attribute) : New field
259 'array_outer_dependency'.
260 * trans.h (struct gfc_ss_info): New field 'array_outer_dependency'.
261 * module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY.
262 (attr_bits): Append same value to initializer.
263 (mio_symbol_attribute): Handle 'array_outer_dependency' attr
264 in module read and write.
265 * resolve.c (update_current_proc_outer_array_dependency): New function.
266 (resolve_function, resolve_call): Add code to update current procedure's
267 'array_outer_dependency' attribute.
268 (resolve_variable): Mark current procedure with attribute
269 array_outer_dependency if the variable is an array coming from outside
270 the current namespace.
271 (resolve_fl_procedure): Mark a procedure without body with attribute
272 'array_outer_dependency'.
273 * trans-array.c (gfc_conv_resolve_dependencies): If any ss is
274 marked as 'array_outer_dependency' generate a temporary.
275 (gfc_walk_function_expr): If the function may reference external arrays,
276 mark the head gfc_ss with flag 'array_outer_dependency'.
278 2015-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
281 * gfortran.texi (Read/Write after EOF marker): New information.
283 2015-03-21 H.J. Lu <hongjiu.lu@intel.com>
285 * gfortran.texi (_gfortran_caf_sync_memory): Put @{xxx} in one
288 2015-03-21 Tobias Burnus <burnus@net-b.de>
290 * gfortran.texi (_gfortran_caf_sync_all, _gfortran_caf_sync_images,
291 _gfortran_caf_sync_memory, _gfortran_caf_error_stop,
292 _gfortran_caf_error_stop_str, _gfortran_caf_atomic_define,
293 _gfortran_caf_atomic_ref, _gfortran_caf_atomic_cas,
294 _gfortran_caf_atomic_op): New sections.
296 2015-03-21 Tobias Burnus <burnus@net-b.de>
298 * trans-expr.c (gfc_get_tree_for_caf_expr): Reject unimplemented
299 coindexed coarray accesses.
301 2015-03-17 Paul Thomas <pault@gcc.gnu.org>
304 * trans-types.c (gfc_get_derived_type): If an abstract derived
305 type with procedure pointer components has no other type of
306 component, return the backend_decl. Otherwise build the
307 components if any of the non-procedure pointer components have
310 2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
313 *trans-intrinisic.c (conv_intrinsic_system_clock): Check the
314 smallest kind passed in user arguments and hardcode tesults for
315 KIND=1 or KIND=2 to indicate no clock available.
317 2015-03-16 Andre Vehreschild <vehre@gmx.de>
319 * resolve.c: Prevent segfault on illegal input.
321 2015-03-14 Mikael Morin <mikael@gcc.gnu.org>
324 * trans-expr.c (gfc_trans_pointer_assignment): Clear DESCRIPTOR_ONLY
325 field before reusing LSE.
327 2015-03-11 Janne Blomqvist <jb@gcc.gnu.org>
330 * gfortran.texi: Document behavior when opening files without
331 explicit ACTION= specifier.
333 2015-03-10 Paul Thomas <pault@gcc.gnu.org>
336 * trans-expr.c (gfc_conv_component_ref): If the component
337 backend declaration is missing and the derived type symbol is
338 available in the reference, call gfc_build_derived_type.
340 2015-03-10 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
341 Tobias Burnus <burnus@net-b.de>
343 * trans.h (caf_sync_memory): New function decl tree.
344 * trans-decl.c (gfc_build_builtin_function_decls): Define it.
345 (create_main_function): Don't call sync_synchronize and leave
346 it to the CAF library.
347 * trans-stmt.c (gfc_trans_stop): Ditto.
348 (gfc_trans_sync): Ditto; add call library call for sync memory.
350 2015-03-08 Mikael Morin <mikael@gcc.gnu.org>
353 * resolve.c (resolve_symbol): Check that the symbol found by
354 name lookup really is the current symbol being resolved.
356 2015-03-02 Tobias Burnus <burnus@net-b.de>
358 * check.c (gfc_check_atomic): Properly check for coarrayness
359 and for being coindexed.
361 2015-02-26 Martin Liska <mliska@suse.cz>
363 * resolve.c: Rename enum 'comparison' to 'compare_result' as
364 solution for -Wodr issue.
366 2015-02-24 Thomas Schwinge <thomas@codesourcery.com>
369 * f95-lang.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
371 (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
372 * types.def (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
373 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
374 Remove function types.
375 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR)
376 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR)
377 (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
380 2015-02-22 Bernd Edlinger <bernd.edlinger@hotmail.de>
384 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Remove mapping
385 for component references to class objects.
386 (gfc_conv_procedure_call): Compare the class by name.
388 2015-02-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
391 * scanner.c (gfc_next_char_literal): For free form source,
392 check for '!' and if found, clear the comment and go back
393 and get the next character. For fixed form source, skip the
396 2015-02-12 Paul Thomas <pault@gcc.gnu.org>
399 * trans-stmt.c (gfc_trans_deallocate): If a component array
400 expression is not a descriptor type and it is a derived type
401 that has allocatable components and is not finalizable, then
402 deallocate the allocatable components.
404 2015-02-08 Mikael Morin <mikael@gcc.gnu.org>
407 * module.c (check_for_ambiguous): Change argument type
408 from gfc_symbol to gfc_symtree. Check local (symtree) name
409 instead of original (symbol) name.
410 (read_module): Update caller.
412 2015-02-06 Paul Thomas <pault@gcc.gnu.org>
415 * gfortran.h: Add 'must finalize' field to gfc_expr and
416 prototypes for gfc_is_alloc_class_scalar_function and for
417 gfc_is_alloc_class_array_function.
418 * expr.c (gfc_is_alloc_class_scalar_function,
419 gfc_is_alloc_class_array_function): New functions.
420 * trans-array.c (gfc_add_loop_ss_code): Do not move the
421 expression for allocatable class scalar functions outside the
423 (conv_array_index_offset): Cope with deltas being NULL_TREE.
424 (build_class_array_ref): Do not return with allocatable class
425 array functions. Add code to pick out the returned class array.
426 Dereference if necessary and return if not a class object.
427 (gfc_conv_scalarized_array_ref): Cope with offsets being NULL.
428 (gfc_walk_function_expr): Return an array ss for the result of
429 an allocatable class array function.
430 * trans-expr.c (gfc_conv_subref_array_arg): Remove the assert
431 that the argument should be a variable. If an allocatable class
432 array function, set the offset to zero and skip the write-out
434 (gfc_conv_procedure_call): Add allocatable class array function
435 to the assert. Call gfc_conv_subref_array_arg for allocatable
436 class array function arguments with derived type formal arg..
437 Add the code for handling allocatable class functions, including
438 finalization calls to prevent memory leaks.
439 (arrayfunc_assign_needs_temporary): Return if an allocatable
440 class array function.
441 (gfc_trans_assignment_1): Set must_finalize to rhs expression
442 for allocatable class functions. Set scalar_to_array as needed
443 for scalar class allocatable functions assigned to an array.
444 Nullify the allocatable components corresponding the the lhs
445 derived type so that the finalization does not free them.
447 2015-01-29 Andre Vehreschild <vehre@gmx.de>
448 Janus Weil <janus@gcc.gnu.org>
451 Initial patch by Janus Weil
452 * resolve.c (resolve_allocate_expr): Add check for comp. only
453 when target is not unlimited polymorphic.
454 * trans-stmt.c (gfc_trans_allocate): Assign correct value to
455 _len component of unlimited polymorphic entities.
457 2015-02-05 Tobias Burnus <burnus@net-b.de>
460 * resolve.c (resolve_transfer): Also check structure
463 2015-02-05 Paul Thomas <pault@gcc.gnu.org>
466 * resolve.c (resolve_structure_cons): Obtain the rank of class
468 * trans-expr.c (gfc_trans_alloc_subarray_assign): Do the
469 assignment to allocatable class array components.
470 (alloc_scalar_allocatable_for_subcomponent_assignment): If comp
471 is a class component, allocate to the _data field.
472 (gfc_trans_subcomponent_assign): If a class component with a
473 derived type expression set the _vptr field and for array
474 components, call gfc_trans_alloc_subarray_assign. For scalars,
475 the assignment is performed here.
477 2015-02-04 Jakub Jelinek <jakub@redhat.com>
479 * options.c: Include langhooks.h.
480 (gfc_post_options): Change lang_hooks.name based on
483 2015-02-03 Steven G. Kargl <kargl@gcc.gnu.org>
485 * intrinsic.texi (CO_ASSOCIATED): c_prt_1 should be c_ptr_1.
487 2015-01-30 Andre Vehreschild <vehre@gmx.de>
489 * trans-decl.c (gfc_get_symbol_decl): Removed duplicate code.
490 * trans-expr.c (gfc_conv_intrinsic_to_class): Fixed indentation.
491 Fixed datatype of charlen to be a 32-bit int.
493 2015-02-01 Joseph Myers <joseph@codesourcery.com>
495 * error.c (gfc_warning (const char *, ...), gfc_warning_now (const
496 char *, ...)): Remove functions.
497 * gfortran.h (gfc_warning (const char *, ...), gfc_warning_now
498 (const char *, ...)): Remove declarations.
499 * arith.c, check.c, data.c, decl.c, frontend-passes.c,
500 interface.c, intrinsic.c, io.c, matchexp.c, module.c, openmp.c,
501 options.c, parse.c, primary.c, resolve.c, scanner.c, symbol.c,
502 trans-common.c, trans-const.c, trans-stmt.c: All callers of
503 gfc_warning and gfc_warning_now changed to pass 0 or option number
506 2015-01-30 Joseph Myers <joseph@codesourcery.com>
508 * f95-lang.c, gfortranspec.c, trans-const.c, trans-expr.c: All
509 callers of fatal_error changed to pass input_location as first
512 2015-01-28 Tobias Burnus <burnus@net-b.de>
514 * intrinsic.texi (CO_BROADCAST): Correct argument description.
516 2015-01-27 Tobias Burnus <burnus@net-b.de>
519 * trans-openmp.c (gfc_has_alloc_comps, gfc_trans_omp_clauses):
520 Fix handling for scalar coarrays.
521 * trans-types.c (gfc_get_element_type): Add comment.
523 2015-01-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
526 * interface.c: Remove <algorithm>.
527 (check_dummy_characteristics): Use MAX instead of std::max.
529 2015-01-26 Paul Thomas <pault@gcc.gnu.org>
532 * resolve.c (resolve_allocate_expr): If the default initializer
533 is NULL, keep the original MOLD expression so that the correct
534 typespec is available.
536 2015-01-26 Tobias Burnus <burnus@net-b.de>
539 * interface.c (check_dummy_characteristics): Fix coarray handling.
541 2015-01-26 Tobias Burnus <burnus@net-b.de>
543 * io.c (gfc_match_inquire): Replace "-1" by a defined constant.
545 2015-01-26 Janus Weil <janus@gcc.gnu.org>
548 * class.c (finalize_component): New argument 'sub_ns'. Insert code to
549 check if 'expr' is associated.
550 (generate_finalization_wrapper): Rename 'ptr' symbols to 'ptr1' and
551 'ptr2'. Pass 'sub_ns' to finalize_component.
553 2015-01-25 Mikael Morin <mikael@gcc.gnu.org>
556 * decl.c (gfc_match_derived_decl): Don't insert a new symtree element.
557 * module.c (MOD_VERSION): Bump.
558 (write_module): Don't write list of extensions.
559 (read_module): Don't jump over list of extensions;
560 don't load list of extensions.
561 (load_derived_extensions, write_dt_extensions,
562 write_derived_extensions): Remove.
564 2015-01-24 Tobias Burnus <burnus@net-b.de>
566 * parse.c (gfc_parse_file): Fix two-location gfc_error call.
568 2015-01-23 Martin Liska <mliska@suse.cz>
570 * decl.c (attr_decl1): Workaround -Wmaybe-uninitialized
571 false positive during profiledbootstrap by initializing them.
572 * matchexp.c (match_mult_operand): Likewise.
573 * module.c (write_atom): Likewise.
574 (read_module): Likewise.
576 2015-01-23 Tom de Vries <tom@codesourcery.com>
579 * lang.opt (fopenacc): Mark as LTO option.
581 2015-01-23 Tom de Vries <tom@codesourcery.com>
584 * lang.opt (fopenmp): Mark as LTO option.
586 2015-01-23 Andre Vehreschild <vehre@gmx.de>
588 * trans-decl.c (gfc_finish_var_decl): Fixed moved comment.
589 * trans-stmt.c (gfc_trans_allocate): Fixed indentation.
591 2015-01-23 Jakub Jelinek <jakub@redhat.com>
593 * gfc-diagnostic.def (DK_ICE_NOBT): New kind.
595 2015-01-23 Janus Weil <janus@gcc.gnu.org>
598 * class.c (finalize_component): Apply the check for 'fini_coarray' only
599 to coarray components.
601 2015-01-23 Tobias Burnus <burnus@net-b.de>
604 * trans-openmp.c (gfc_trans_oacc_combined_directive): Fix
607 2015-01-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
611 * trans-io.c (set_parameter_value): Delete use of has_iostat.
612 Redefine to not generate any runtime error check calls.
613 (set_parameter_value_chk): Rename of the former
614 set_parameter_value with the runtime error checks and fix
615 whitespace. (set_parameter_value_inquire): New function that
616 builds a runtime conditional block to set the INQUIRE
617 common parameter block unit number to -2 when unit numbers
618 exceed positive KIND=4 limits. (gfc_trans_open): Whitespace.
619 For unit, use the renamed set_parameter_value_chk.
620 (gfc_trans_close): Likewise use renamed function.
621 (build_filepos): Whitespace and use renamed function.
622 (gfc_trans_inquire): Whitespace and for unit use
623 set_parameter_value and set_parameter_value_inquire.
624 (gfc_trans_wait): Remove p->iostat from call to
625 set_parameter_value. Use new set_parameter_value_chk for unit.
626 (build_dt): Use the new set_parameter_value without p->iostat
627 and fix whitespace. Use set_parameter_value_chk for unit.
629 2015-01-21 Thomas Koenig <tkoenig@netcologne.de>
632 * dependency.c (callback_dummy_intent_not_int): New function.
633 (dummy_intent_not_in): New function.
634 (gfc_full_array_ref_p): Use dummy_intent_not_in.
636 2015-01-18 Andre Vehreschild <vehre@gmx.de>
637 Janus Weil <janus@gcc.gnu.org>
640 * class.c (gfc_get_len_component): New.
641 (gfc_build_class_symbol): Add _len component to unlimited
642 polymorphic entities.
643 (find_intrinsic_vtab): Removed emitting of error message.
644 * gfortran.h: Added prototype for gfc_get_len_component.
645 * simplify.c (gfc_simplify_len): Use _len component where
647 * trans-expr.c (gfc_class_len_get): New.
648 (gfc_conv_intrinsic_to_class): Add handling for deferred
650 (gfc_conv_structure): Treat _len component correctly.
651 (gfc_conv_expr): Prevent bind_c handling when not required.
652 (gfc_trans_pointer_assignment): Propagate _len component.
653 * trans-stmt.c (class_has_len_component): New.
654 (trans_associate_var): _len component treatment for associate
656 (gfc_trans_allocate): Same as for trans_associate_var()
657 * trans.h: Added prototype for gfc_class_len_get.
659 2015-01-18 Paul Thomas <pault@gcc.gnu.org>
662 * trans-expr.c (gfc_trans_subcomponent_assign): Use a deep copy
663 for allocatable components, where the source is a variable.
665 2015-01-18 Paul Thomas <pault@gcc.gnu.org>
668 * primary.c (gfc_match_varspec): Exclude dangling associate-
669 names with dimension 0 from being counted as arrays.
670 * resolve.c (resolve_assoc_var): Sub-strings are permissible
671 for associate-names, so exclude characters from the test for
673 * trans-decl.c (gfc_get_symbol_decl): Associate-names can use
674 the hidden string length variable of their associated target.
675 Signal this by setting 'length' to a constant, if the decl for
676 the string length is a variable.
678 2015-01-17 Paul Thomas <pault@gcc.gnu.org>
681 * trans-expr.c (gfc_trans_pointer_assignment): Make sure that
682 before reinitializing rse, to add the rse.pre to block before
684 * trans-intrinsic.c (gfc_conv_associated): Deal with the class
685 data being a descriptor.
687 2015-01-17 Andre Vehreschild <vehre@gmx.de>
690 * primary.c (build_actual_constructor): Prevent warning.
691 * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_
692 assignment): New function encapsulates treatment of allocatable
694 (gfc_trans_subcomponent_assign): Needed to distinguish between
695 regular assignment and initilization.
696 (gfc_trans_structure_assign): Same.
697 (gfc_conv_structure): Same.
700 * gfortran.h: deferred_parameter is not needed, because
701 it artificial does the trick completely.
702 * primary.c (build_actual_constructor): Same.
703 (gfc_convert_to_structure_constructor): Same.
704 * resolve.c (resolve_fl_derived0): Same.
705 * trans-expr.c (gfc_conv_component_ref): Prevent treating
706 allocatable deferred length char arrays here.
707 (gfc_trans_subcomponent_assign): Same as above.
708 * trans-types.c (gfc_sym_type): This is done in
709 gfc_get_derived_type already.
711 2015-01-17 Andre Vehreschild <vehre@gmx.de>
714 * trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
715 length when the symbol is declared to be a result.
716 * trans-expr.c (gfc_conv_procedure_call): Strip deref on the
717 string length when functions are nested and the string length
718 is a reference already.
720 2015-01-16 Janus Weil <janus@gcc.gnu.org>
723 * decl.c (match_pointer_init): Error out if resolution of init expr
726 2015-01-15 Tobias Burnus <burnus@net-b.de>
728 * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses,
729 resolve_oacc_deviceptr_clause, resolve_omp_clauses,
730 gfc_resolve_oacc_declare): Replace '%s' by %qs.
732 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
733 Cesar Philippidis <cesar@codesourcery.com>
734 James Norris <jnorris@codesourcery.com>
735 Ilmir Usmanov <i.usmanov@samsung.com>
736 Tobias Burnus <burnus@net-b.de>
738 * lang.opt (fopenacc): New option.
739 * cpp.c (cpp_define_builtins): Conditionally define _OPENACC.
740 * dump-parse-tree.c (show_omp_node): Split part of it into...
741 (show_omp_clauses): ... this new function.
742 (show_omp_node, show_code_node): Handle EXEC_OACC_PARALLEL_LOOP,
743 EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
744 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
745 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
746 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
747 (show_namespace): Update for OpenACC.
748 * f95-lang.c (DEF_FUNCTION_TYPE_VAR_2, DEF_FUNCTION_TYPE_VAR_8)
749 (DEF_FUNCTION_TYPE_VAR_12, DEF_GOACC_BUILTIN)
750 (DEF_GOACC_BUILTIN_COMPILER): New macros.
751 * types.def (BT_FN_VOID_INT_INT_VAR)
752 (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
753 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
755 * gfortran.h (gfc_statement): Add ST_OACC_PARALLEL_LOOP,
756 ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
757 ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_DATA,
758 ST_OACC_END_DATA, ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA,
759 ST_OACC_LOOP, ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE,
760 ST_OACC_WAIT, ST_OACC_CACHE, ST_OACC_KERNELS_LOOP,
761 ST_OACC_END_KERNELS_LOOP, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
763 (struct gfc_expr_list): New data type.
764 (gfc_get_expr_list): New macro.
765 (gfc_omp_map_op): Add OMP_MAP_FORCE_ALLOC, OMP_MAP_FORCE_DEALLOC,
766 OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM, OMP_MAP_FORCE_TOFROM,
767 OMP_MAP_FORCE_PRESENT, OMP_MAP_FORCE_DEVICEPTR.
768 (OMP_LIST_FIRST, OMP_LIST_DEVICE_RESIDENT, OMP_LIST_USE_DEVICE)
769 (OMP_LIST_CACHE): New enumerators.
770 (struct gfc_omp_clauses): Add async_expr, gang_expr, worker_expr,
771 vector_expr, num_gangs_expr, num_workers_expr, vector_length_expr,
772 wait_list, tile_list, async, gang, worker, vector, seq,
773 independent, wait, par_auto, gang_static, and loc members.
774 (struct gfc_namespace): Add oacc_declare_clauses member.
775 (gfc_exec_op): Add EXEC_OACC_KERNELS_LOOP,
776 EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS,
777 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
778 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
779 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
780 (gfc_free_expr_list, gfc_resolve_oacc_directive)
781 (gfc_resolve_oacc_declare, gfc_resolve_oacc_parallel_loop_blocks)
782 (gfc_resolve_oacc_blocks): New prototypes.
783 * match.c (match_exit_cycle): Handle EXEC_OACC_LOOP and
784 EXEC_OACC_PARALLEL_LOOP.
785 * match.h (gfc_match_oacc_cache, gfc_match_oacc_wait)
786 (gfc_match_oacc_update, gfc_match_oacc_declare)
787 (gfc_match_oacc_loop, gfc_match_oacc_host_data)
788 (gfc_match_oacc_data, gfc_match_oacc_kernels)
789 (gfc_match_oacc_kernels_loop, gfc_match_oacc_parallel)
790 (gfc_match_oacc_parallel_loop, gfc_match_oacc_enter_data)
791 (gfc_match_oacc_exit_data, gfc_match_oacc_routine): New
793 * openmp.c: Include "diagnostic.h" and "gomp-constants.h".
794 (gfc_free_omp_clauses): Update for members added to struct
796 (gfc_match_omp_clauses): Change mask paramter to uint64_t. Add
798 (resolve_omp_clauses): Add openacc parameter. Update for OpenACC.
799 (struct fortran_omp_context): Add is_openmp member.
800 (gfc_resolve_omp_parallel_blocks): Initialize it.
801 (gfc_resolve_do_iterator): Update for OpenACC.
802 (gfc_resolve_omp_directive): Call
803 resolve_omp_directive_inside_oacc_region.
804 (OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE)
805 (OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_COPYPRIVATE)
806 (OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN, OMP_CLAUSE_REDUCTION)
807 (OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS, OMP_CLAUSE_SCHEDULE)
808 (OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED, OMP_CLAUSE_COLLAPSE)
809 (OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE)
810 (OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH)
811 (OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND)
812 (OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM)
813 (OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO)
814 (OMP_CLAUSE_FROM, OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT)
815 (OMP_CLAUSE_DIST_SCHEDULE): Use uint64_t.
816 (OMP_CLAUSE_ASYNC, OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS)
817 (OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_COPY, OMP_CLAUSE_COPYOUT)
818 (OMP_CLAUSE_CREATE, OMP_CLAUSE_PRESENT)
819 (OMP_CLAUSE_PRESENT_OR_COPY, OMP_CLAUSE_PRESENT_OR_COPYIN)
820 (OMP_CLAUSE_PRESENT_OR_COPYOUT, OMP_CLAUSE_PRESENT_OR_CREATE)
821 (OMP_CLAUSE_DEVICEPTR, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER)
822 (OMP_CLAUSE_VECTOR, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT)
823 (OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_DEVICE_RESIDENT)
824 (OMP_CLAUSE_HOST_SELF, OMP_CLAUSE_OACC_DEVICE, OMP_CLAUSE_WAIT)
825 (OMP_CLAUSE_DELETE, OMP_CLAUSE_AUTO, OMP_CLAUSE_TILE): New macros.
826 (gfc_match_omp_clauses): Handle those.
827 (OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES, OACC_DATA_CLAUSES)
828 (OACC_LOOP_CLAUSES, OACC_PARALLEL_LOOP_CLAUSES)
829 (OACC_KERNELS_LOOP_CLAUSES, OACC_HOST_DATA_CLAUSES)
830 (OACC_DECLARE_CLAUSES, OACC_UPDATE_CLAUSES)
831 (OACC_ENTER_DATA_CLAUSES, OACC_EXIT_DATA_CLAUSES)
832 (OACC_WAIT_CLAUSES): New macros.
833 (gfc_free_expr_list, match_oacc_expr_list, match_oacc_clause_gang)
834 (gfc_match_omp_map_clause, gfc_match_oacc_parallel_loop)
835 (gfc_match_oacc_parallel, gfc_match_oacc_kernels_loop)
836 (gfc_match_oacc_kernels, gfc_match_oacc_data)
837 (gfc_match_oacc_host_data, gfc_match_oacc_loop)
838 (gfc_match_oacc_declare, gfc_match_oacc_update)
839 (gfc_match_oacc_enter_data, gfc_match_oacc_exit_data)
840 (gfc_match_oacc_wait, gfc_match_oacc_cache)
841 (gfc_match_oacc_routine, oacc_is_loop)
842 (resolve_oacc_scalar_int_expr, resolve_oacc_positive_int_expr)
843 (check_symbol_not_pointer, check_array_not_assumed)
844 (resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause)
845 (oacc_compatible_clauses, oacc_is_parallel, oacc_is_kernels)
846 (omp_code_to_statement, oacc_code_to_statement)
847 (resolve_oacc_directive_inside_omp_region)
848 (resolve_omp_directive_inside_oacc_region)
849 (resolve_oacc_nested_loops, resolve_oacc_params_in_parallel)
850 (resolve_oacc_loop_blocks, gfc_resolve_oacc_blocks)
851 (resolve_oacc_loop, resolve_oacc_cache, gfc_resolve_oacc_declare)
852 (gfc_resolve_oacc_directive): New functions.
853 * parse.c (next_free): Update for OpenACC. Move some code into...
854 (verify_token_free): ... this new function.
855 (next_fixed): Update for OpenACC. Move some code into...
856 (verify_token_fixed): ... this new function.
857 (case_executable): Add ST_OACC_UPDATE, ST_OACC_WAIT,
858 ST_OACC_CACHE, ST_OACC_ENTER_DATA, and ST_OACC_EXIT_DATA.
859 (case_exec_markers): Add ST_OACC_PARALLEL_LOOP, ST_OACC_PARALLEL,
860 ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA, ST_OACC_LOOP,
861 ST_OACC_KERNELS_LOOP.
862 (case_decl): Add ST_OACC_ROUTINE.
863 (push_state, parse_critical_block, parse_progunit): Update for
865 (gfc_ascii_statement): Handle ST_OACC_PARALLEL_LOOP,
866 ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
867 ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_KERNELS_LOOP,
868 ST_OACC_END_KERNELS_LOOP, ST_OACC_DATA, ST_OACC_END_DATA,
869 ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA, ST_OACC_LOOP,
870 ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE, ST_OACC_WAIT,
871 ST_OACC_CACHE, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
873 (verify_st_order, parse_spec): Handle ST_OACC_DECLARE.
874 (parse_executable): Handle ST_OACC_PARALLEL_LOOP,
875 ST_OACC_KERNELS_LOOP, ST_OACC_LOOP, ST_OACC_PARALLEL,
876 ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA.
877 (decode_oacc_directive, parse_oacc_structured_block)
878 (parse_oacc_loop, is_oacc): New functions.
879 * parse.h (struct gfc_state_data): Add oacc_declare_clauses
881 (is_oacc): New prototype.
882 * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
883 EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL,
884 EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS, EXEC_OACC_DATA,
885 EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP, EXEC_OACC_UPDATE,
886 EXEC_OACC_WAIT, EXEC_OACC_CACHE, EXEC_OACC_ENTER_DATA,
888 (resolve_codes): Call gfc_resolve_oacc_declare.
889 * scanner.c (openacc_flag, openacc_locus): New variables.
890 (skip_free_comments): Update for OpenACC. Move some code into...
891 (skip_omp_attribute): ... this new function.
892 (skip_oacc_attribute): New function.
893 (skip_fixed_comments, gfc_next_char_literal): Update for OpenACC.
894 * st.c (gfc_free_statement): Handle EXEC_OACC_PARALLEL_LOOP,
895 EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
896 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
897 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
898 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
899 * trans-decl.c (gfc_generate_function_code): Update for OpenACC.
900 * trans-openmp.c: Include "gomp-constants.h".
901 (gfc_omp_finish_clause, gfc_trans_omp_clauses): Use GOMP_MAP_*
902 instead of OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
903 (gfc_trans_omp_clauses): Handle OMP_LIST_USE_DEVICE,
904 OMP_LIST_DEVICE_RESIDENT, OMP_LIST_CACHE, and OMP_MAP_FORCE_ALLOC,
905 OMP_MAP_FORCE_DEALLOC, OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM,
906 OMP_MAP_FORCE_TOFROM, OMP_MAP_FORCE_PRESENT,
907 OMP_MAP_FORCE_DEVICEPTR, and gfc_omp_clauses' async, seq,
908 independent, wait_list, num_gangs_expr, num_workers_expr,
909 vector_length_expr, vector, vector_expr, worker, worker_expr,
910 gang, gang_expr members.
911 (gfc_trans_omp_do): Handle EXEC_OACC_LOOP.
912 (gfc_convert_expr_to_tree, gfc_trans_oacc_construct)
913 (gfc_trans_oacc_executable_directive)
914 (gfc_trans_oacc_wait_directive, gfc_trans_oacc_combined_directive)
915 (gfc_trans_oacc_declare, gfc_trans_oacc_directive): New functions.
916 * trans-stmt.c (gfc_trans_block_construct): Update for OpenACC.
917 * trans-stmt.h (gfc_trans_oacc_directive, gfc_trans_oacc_declare):
919 * trans.c (tranc_code): Handle EXEC_OACC_CACHE, EXEC_OACC_WAIT,
920 EXEC_OACC_UPDATE, EXEC_OACC_LOOP, EXEC_OACC_HOST_DATA,
921 EXEC_OACC_DATA, EXEC_OACC_KERNELS, EXEC_OACC_KERNELS_LOOP,
922 EXEC_OACC_PARALLEL, EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_ENTER_DATA,
924 * gfortran.texi: Update for OpenACC.
925 * intrinsic.texi: Likewise.
926 * invoke.texi: Likewise.
928 2015-01-15 Janus Weil <janus@gcc.gnu.org>
931 * resolve.c (resolve_fl_derived0): Continue resolving next component
934 2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
937 * io.c (gfc_match_inquire): Generate error if unit number in
938 inquire statement is a constant -1. All other values allowed.
939 * trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
940 (create_dummy_iostat): Delete function no longer used.
942 2015-01-13 Jakub Jelinek <jakub@redhat.com>
945 * trans-decl.c (create_function_arglist): Don't set TREE_READONLY
946 on dummy args with VALUE attribute.
948 2015-01-11 Janus Weil <janus@gcc.gnu.org>
951 * interface.c (gfc_extend_expr): Look for type-bound operators before
954 2015-01-11 Janus Weil <janus@gcc.gnu.org>
957 * resolve.c (resolve_fl_derived0): Set error flag if problems with the
958 interface of a procedure-pointer component were detected.
960 2015-01-11 Janus Weil <janus@gcc.gnu.org>
963 * interface.c (compare_parameter): Interface check for
964 procedure-pointer component as actual argument.
966 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
968 * gfortran.texi: Update for libgomp being renamed from "GNU OpenMP
969 Runtime Library" to "GNU Offloading and Multi Processing Runtime
971 * intrinsic.texi: Likewise.
973 2015-01-10 Tobias Burnus <burnus@net-b.de>
976 * invoke.texi (Wline-truncation): Document new behaviour.
977 * lang.opt (Wline-truncation): Add Init(-1).
978 * options.c (gfc_post_options): If -Wline-truncation is unset,
979 enable it for free-form source files; for the latter, also use
980 -Werror=line-truncation, unless -Wno-error has been specified.
982 2015-01-09 Michael Collison <michael.collison@linaro.org>
984 * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
985 input.h, alias.h, symtab.h, options.h, fold-const.h,
986 wide-int.h, and inchash.h due to flattening of tree.h.
987 * cpp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
988 input.h, alias.h, symtab.h, fold-const.h,
989 wide-int.h, and inchash.h due to flattening of tree.h.
991 * f95.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
992 input.h, alias.h, symtab.h, options.h, fold-const.h,
993 wide-int.h, and inchash.h due to flattening of tree.h.
995 * match.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
996 input.h, alias.h, symtab.h, fold-const.h,
997 wide-int.h, and inchash.h due to flattening of tree.h.
998 * module.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
999 input.h, alias.h, symtab.h, options.h, fold-const.h,
1000 wide-int.h, and inchash.h due to flattening of tree.h.
1002 * target-memory.c: Include hash-set.h, vec.h,
1003 double-int.h, input.h, alias.h, symtab.h, fold-const.h,
1004 wide-int.h, and inchash.h due to flattening of tree.h.
1005 * trans-array.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1006 input.h, alias.h, symtab.h, options.h, fold-const.h,
1007 wide-int.h, and inchash.h due to flattening of tree.h.
1008 * trans.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1009 input.h, alias.h, symtab.h, options.h, fold-const.h,
1010 wide-int.h, and inchash.h due to flattening of tree.h.
1011 * trans-common.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1012 input.h, alias.h, symtab.h, fold-const.h,
1013 wide-int.h, and inchash.h due to flattening of tree.h.
1014 * trans-const.c: Ditto.
1015 * trans-decl.c: Ditto.
1016 * trans-expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1017 input.h, alias.h, symtab.h, options.h, fold-const.h,
1018 wide-int.h, and inchash.h due to flattening of tree.h.
1019 * trans-intrinsic.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1020 input.h, alias.h, symtab.h, fold-const.h,
1021 wide-int.h, inchash.h and real.h due to flattening of tree.h.
1022 * trans-io.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1023 input.h, alias.h, symtab.h, options.h, fold-const.h,
1024 wide-int.h, and inchash.h due to flattening of tree.h.
1025 * trans-openmp.c: Ditto.
1026 * trans-stmt.c: Ditto.
1027 * trans-types.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1028 input.h, alias.h, symtab.h, fold-const.h,
1029 wide-int.h, inchash.h and real.h due to flattening of tree.h.
1031 2015-01-08 Tobias Burnus <burnus@net-b.de>
1033 * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
1034 for module coarrays with -fcoarray=lib.
1035 (get_proc_pointer_decl): As module variable, make only public
1036 when not marked as private.
1038 2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
1041 * dependency.h: Actually commit changes.
1043 2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
1046 * dependency.c: Update copyright years.
1047 (gfc_discard_nops): Add prototype.
1048 * dependency.c (discard_nops): Rename to gfc_discard_nops,
1050 (gfc_discard_nops): Use gfc_discard_nops.
1051 (gfc_dep_difference): Likewise.
1052 * frontend-passes.c Update copyright years.
1053 (realloc_strings): New function. Add prototype.
1054 (gfc_run_passes): Call realloc_strings.
1055 (realloc_string_callback): New function.
1056 (create_var): Add prototype. Handle case of a
1057 scalar character variable.
1058 (optimize_trim): Do not handle allocatable variables.
1060 2015-01-05 Jakub Jelinek <jakub@redhat.com>
1062 Update copyright years.
1064 * gfortranspec.c (lang_specific_driver): Update copyright notice
1066 * gfc-internals.texi: Bump @copying's copyright year.
1067 * gfortran.texi: Ditto.
1068 * intrinsic.texi: Ditto.
1069 * invoke.texi: Ditto.
1071 2015-01-02 Janus Weil <janus@gcc.gnu.org>
1074 * expr.c (find_component_ref): Deal with extended types.
1076 2015-01-02 Tobias Burnus <burnus@net-b.de>
1078 * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
1079 for module coarrays with -fcoarray=lib.
1081 2015-01-02 Janus Weil <janus@gcc.gnu.org>
1084 * interface.c (is_procptr_result): New function to check if an
1085 expression is a procedure-pointer result.
1086 (compare_actual_formal): Use it.
1088 Copyright (C) 2015 Free Software Foundation, Inc.
1090 Copying and distribution of this file, with or without modification,
1091 are permitted in any medium without royalty provided the copyright
1092 notice and this notice are preserved.