1 2015-07-16 Release Manager
5 2015-06-24 Mikael Morin <mikael@gcc.gnu.org>
8 * resolve.c (resolve_global_procedure): Don't save and restore
9 OpenMP state around the call to gfc_resolve.
10 (gfc_resolve): Save OpenMP state on entry and restore it on return.
12 2015-06-14 Thomas Koenig <tkoenig@gcc.gnu.org>
16 * frontend-passes.c (combine_array_constructor): Return early if
19 2015-06-14 Thomas Koenig <tkoenig@gcc.gnu.org>
21 * intrinsic.texi: Change \leq to < in descrition of imaginary
22 part in argument to log.
24 2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
26 * f95-lang.c (gfc_create_decls): Register the main translation unit
27 through the new debug hook.
29 2015-06-08 Steven G. Kargl <kargl@gcc.gnu.org>
32 * match.c (gfc_match_type_is, gfc_match_class_is): Check if the
33 return type spec or derived type spec is validate.
35 2015-06-05 Steven G. Kargl <kargl@gcc.gnu.org>
38 * resolve.c (apply_default_init_local): Do not dereference a NULL
41 2015-06-05 Russell Whitesides <russelldub@gmail.com>
42 Steven G. Kargl <kargl@gcc.gnu.org>
47 * module.c (load_equiv): Add check for loading duplicate EQUIVALENCEs
48 from different modules. Eliminate the pruning of unused
52 2015-06-02 Steven G. Kargl <kargl@gcc.gnu.org>
55 * simplify.c (gfc_simplify_reshape): Convert assert into returning
56 NULL, which triggers an error condition.
58 2015-05-29 Mikael Morin <mikael@gcc.gnu.org>
61 * resolve.c (resolve_actual_arglist): Don't throw an error
62 if the argument with procedure pointer component is not a variable.
64 2015-05-22 Jakub Jelinek <jakub@redhat.com>
66 Backported from mainline
67 2015-05-19 Jakub Jelinek <jakub@redhat.com>
70 * trans-openmp.c (gfc_trans_omp_teams): Set OMP_TEAMS_COMBINED for
72 (gfc_trans_omp_target): Make sure BIND_EXPR has non-NULL
75 2015-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
78 * io.c (format_lex): Change to NONSTRING when checking for
79 possible doubled quote.
80 * scanner.c (gfc_next_char_literal): Revert change from 64506
81 and add a check for quotes and return.
83 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
86 * interface.c(gfc_match_end_interface): Enforce F2008 C1202 (R1201).
87 * match.c(gfc_op2string): Return 'none' for INTRINSIC_NONE.
89 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
92 * decl.c(gfc_match_generic): Detected a malformed GENERIC statement.
94 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
97 * decl.c(gfc_match_protected): Prevent dereference of NULL pointer.
99 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
102 * expr.c (gfc_check_assign): Check for assignment of NULL() instead
103 of the (intended) pointer assignment.
105 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
108 * decl.c(gfc_match_entry): Change a gfc_internal_error() into
111 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
114 * check.c (gfc_check_storage_size): Prevent the direct use of NULL()
115 in STORAGE_SIZE() reference.
117 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
120 * parse.c(verify_st_order): Replace a gfc_internal_error with your
123 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
126 * io.c (match_filepos): Check for incomplete/mangled REWIND, FLUSH,
127 BACKSPACE, and ENDFILE statements
129 2015-05-19 Steven G. Kargl <kargl@gcc.gnu.org>
132 * symbol.c(check_conflict): Check for a conflict between a dummy
133 argument and an internal procedure name.
135 2015-05-02 Steven G. Kargl <kargl@gcc.gnu.org>
138 * invoke.texi: Remove 'no-' in '-fno-fixed-form'
140 2015-04-22 Release Manager
142 * GCC 5.1.0 released.
144 2015-04-22 Steven G. Kargl <kargl@gcc.gnu.org>
147 * decl.c (add_init_expr_to_sym): Set the length type parameter.
149 2015-04-10 Tobias Burnus <burnus@net-b.de>
151 * trans-stmt.c (gfc_trans_lock_unlock): Implement -fcoarray=lib
152 version; reject not-yet-implemented variants.
153 * trans-types.c (gfc_get_derived_type): For lock_type with
154 -fcoarray=lib, use a void pointer as type.
155 * trans.c (gfc_allocate_using_lib, gfc_allocate_allocatable):
156 Handle lock_type with -fcoarray=lib.
158 2015-04-10 Mikael Morin <mikael@gcc.gnu.org>
164 * symbol.c (save_symbol_data, gfc_save_symbol_data): Rename the
165 former to the latter and make it non-static. Update callers.
166 * gfortran.h (gfc_save_symbol_data): New prototype.
167 * decl.c (gfc_match_decl_type_spec): Call 'gfc_save_symbol_data'
168 before modifying symbols 'sym' and 'dt_sym'.
170 2013-04-09 Paul Thomas <pault@gcc.gnu.org>
173 * primary.c (gfc_variable_attr): Avoid ICE on AR_UNKNOWN if any
174 of the index variables are untyped and errors are present.
176 2015-04-07 Andre Vehreschild <vehre@gmx.de>
179 * trans-stmt.c (gfc_trans_allocate): For intrinsic functions
180 use conv_expr_descriptor() instead of conv_expr_reference().
182 2015-03-30 Jakub Jelinek <jakub@redhat.com>
185 * trans-openmp.c (gfc_trans_omp_do): For !simple simd with explicit
186 linear clause for the iterator set OMP_CLAUSE_LINEAR_NO_COPYIN.
187 For implcitly added !simple OMP_CLAUSE_LINEAR set it too. Use step 1
188 instead of the original step on the new iterator - count.
190 2015-03-25 Mikael Morin <mikael@gcc.gnu.org>
194 * gfortran.h (struct gfc_namespace): New field 'types_resolved'.
195 * resolve.c (resolve_types): Return early if field 'types_resolved'
196 is set. Set 'types_resolved' at the end.
198 2015-03-24 Andre Vehreschild <vehre@gmx.de>
201 * trans-expr.c (gfc_conv_structure): Fixed indendation.
202 Using integer_zero_node now instead of explicitly
203 constructing a integer constant zero node.
204 (gfc_conv_derived_to_class): Add handling of _len component,
205 i.e., when the rhs has a string_length then assign that to
206 class' _len, else assign 0.
207 (gfc_conv_intrinsic_to_class): Likewise.
209 2015-03-24 Andre Vehreschild <vehre@gmx.de>
214 * class.c (gfc_add_component_ref): Free no longer needed
215 ref-chains to prevent memory loss.
216 (find_intrinsic_vtab): For deferred length char arrays or
217 unlimited polymorphic objects, store the size in bytes of one
218 character in the size component of the vtab.
219 * gfortran.h: Added gfc_add_len_component () define.
220 * trans-array.c (gfc_trans_create_temp_array): Switched to new
221 function name for getting a class' vtab's field.
222 (build_class_array_ref): Likewise.
223 (gfc_array_init_size): Using the size information from allocate
224 more consequently now, i.e., the typespec of the entity to
225 allocate is no longer needed. This is to address the last open
226 comment in PR fortran/57456.
227 (gfc_array_allocate): Likewise.
228 (structure_alloc_comps): gfc_copy_class_to_class () needs to
229 know whether the class is unlimited polymorphic.
230 * trans-array.h: Changed interface of gfc_array_allocate () to
231 reflect the no longer needed typespec.
232 * trans-expr.c (gfc_find_and_cut_at_last_class_ref): New.
233 (gfc_reset_len): New.
234 (gfc_get_class_array_ref): Switch to new function name for
235 getting a class' vtab's field.
236 (gfc_copy_class_to_class): Added flag to know whether the class
237 to copy is unlimited polymorphic. Adding _len dependent code
238 then, which calls ->vptr->copy () with four arguments adding
239 the length information ->vptr->copy(from, to, from_len, to_cap).
240 (gfc_conv_procedure_call): Switch to new function name for
241 getting a class' vtab's field.
242 (alloc_scalar_allocatable_for_assignment): Use the string_length
243 as computed by gfc_conv_expr and not the statically backend_decl
244 which may be incorrect when ref-ing.
245 (gfc_trans_assignment_1): Use the string_length variable and
246 not the rse.string_length. The former has been computed more
248 * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Switch to new
249 function name for getting a class' vtab's field.
250 (gfc_conv_intrinsic_storage_size): Likewise.
251 (gfc_conv_intrinsic_transfer): Likewise.
252 * trans-stmt.c (gfc_trans_allocate): Restructured to evaluate
253 source=expr3 only once before the loop over the objects to
254 allocate, when the objects are not arrays. Doing correct _len
255 initialization and calling of vptr->copy () fixing PR 64787.
256 (gfc_trans_deallocate): Reseting _len to 0, preventing future
258 * trans.c (gfc_build_array_ref): Switch to new function name
259 for getting a class' vtab's field.
260 (gfc_add_comp_finalizer_call): Likewise.
261 * trans.h: Define the prototypes for the gfc_class_vtab_*_get ()
262 and gfc_vptr_*_get () functions.
263 Added gfc_find_and_cut_at_last_class_ref () and
264 gfc_reset_len () routine prototype. Added flag to
265 gfc_copy_class_to_class () prototype to signal an unlimited
266 polymorphic entity to copy.
268 2015-03-24 Iain Sandoe <iain@codesourcery.com>
269 Tobias Burnus <burnus@net-b.de>
271 * gfortran.texi (_gfortran_caf_sync_memory): Improve wording.
273 2015-03-23 Paul Thomas <pault@gcc.gnu.org>
274 Mikael Morin <mikael@gcc.gnu.org>
277 * gfortran.h (struct symbol_attribute) : New field
278 'array_outer_dependency'.
279 * trans.h (struct gfc_ss_info): New field 'array_outer_dependency'.
280 * module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY.
281 (attr_bits): Append same value to initializer.
282 (mio_symbol_attribute): Handle 'array_outer_dependency' attr
283 in module read and write.
284 * resolve.c (update_current_proc_outer_array_dependency): New function.
285 (resolve_function, resolve_call): Add code to update current procedure's
286 'array_outer_dependency' attribute.
287 (resolve_variable): Mark current procedure with attribute
288 array_outer_dependency if the variable is an array coming from outside
289 the current namespace.
290 (resolve_fl_procedure): Mark a procedure without body with attribute
291 'array_outer_dependency'.
292 * trans-array.c (gfc_conv_resolve_dependencies): If any ss is
293 marked as 'array_outer_dependency' generate a temporary.
294 (gfc_walk_function_expr): If the function may reference external arrays,
295 mark the head gfc_ss with flag 'array_outer_dependency'.
297 2015-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
300 * gfortran.texi (Read/Write after EOF marker): New information.
302 2015-03-21 H.J. Lu <hongjiu.lu@intel.com>
304 * gfortran.texi (_gfortran_caf_sync_memory): Put @{xxx} in one
307 2015-03-21 Tobias Burnus <burnus@net-b.de>
309 * gfortran.texi (_gfortran_caf_sync_all, _gfortran_caf_sync_images,
310 _gfortran_caf_sync_memory, _gfortran_caf_error_stop,
311 _gfortran_caf_error_stop_str, _gfortran_caf_atomic_define,
312 _gfortran_caf_atomic_ref, _gfortran_caf_atomic_cas,
313 _gfortran_caf_atomic_op): New sections.
315 2015-03-21 Tobias Burnus <burnus@net-b.de>
317 * trans-expr.c (gfc_get_tree_for_caf_expr): Reject unimplemented
318 coindexed coarray accesses.
320 2015-03-17 Paul Thomas <pault@gcc.gnu.org>
323 * trans-types.c (gfc_get_derived_type): If an abstract derived
324 type with procedure pointer components has no other type of
325 component, return the backend_decl. Otherwise build the
326 components if any of the non-procedure pointer components have
329 2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
332 *trans-intrinisic.c (conv_intrinsic_system_clock): Check the
333 smallest kind passed in user arguments and hardcode tesults for
334 KIND=1 or KIND=2 to indicate no clock available.
336 2015-03-16 Andre Vehreschild <vehre@gmx.de>
338 * resolve.c: Prevent segfault on illegal input.
340 2015-03-14 Mikael Morin <mikael@gcc.gnu.org>
343 * trans-expr.c (gfc_trans_pointer_assignment): Clear DESCRIPTOR_ONLY
344 field before reusing LSE.
346 2015-03-11 Janne Blomqvist <jb@gcc.gnu.org>
349 * gfortran.texi: Document behavior when opening files without
350 explicit ACTION= specifier.
352 2015-03-10 Paul Thomas <pault@gcc.gnu.org>
355 * trans-expr.c (gfc_conv_component_ref): If the component
356 backend declaration is missing and the derived type symbol is
357 available in the reference, call gfc_build_derived_type.
359 2015-03-10 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
360 Tobias Burnus <burnus@net-b.de>
362 * trans.h (caf_sync_memory): New function decl tree.
363 * trans-decl.c (gfc_build_builtin_function_decls): Define it.
364 (create_main_function): Don't call sync_synchronize and leave
365 it to the CAF library.
366 * trans-stmt.c (gfc_trans_stop): Ditto.
367 (gfc_trans_sync): Ditto; add call library call for sync memory.
369 2015-03-08 Mikael Morin <mikael@gcc.gnu.org>
372 * resolve.c (resolve_symbol): Check that the symbol found by
373 name lookup really is the current symbol being resolved.
375 2015-03-02 Tobias Burnus <burnus@net-b.de>
377 * check.c (gfc_check_atomic): Properly check for coarrayness
378 and for being coindexed.
380 2015-02-26 Martin Liska <mliska@suse.cz>
382 * resolve.c: Rename enum 'comparison' to 'compare_result' as
383 solution for -Wodr issue.
385 2015-02-24 Thomas Schwinge <thomas@codesourcery.com>
388 * f95-lang.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
390 (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
391 * types.def (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
392 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
393 Remove function types.
394 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR)
395 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR)
396 (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
399 2015-02-22 Bernd Edlinger <bernd.edlinger@hotmail.de>
403 * trans-expr.c (gfc_apply_interface_mapping_to_expr): Remove mapping
404 for component references to class objects.
405 (gfc_conv_procedure_call): Compare the class by name.
407 2015-02-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
410 * scanner.c (gfc_next_char_literal): For free form source,
411 check for '!' and if found, clear the comment and go back
412 and get the next character. For fixed form source, skip the
415 2015-02-12 Paul Thomas <pault@gcc.gnu.org>
418 * trans-stmt.c (gfc_trans_deallocate): If a component array
419 expression is not a descriptor type and it is a derived type
420 that has allocatable components and is not finalizable, then
421 deallocate the allocatable components.
423 2015-02-08 Mikael Morin <mikael@gcc.gnu.org>
426 * module.c (check_for_ambiguous): Change argument type
427 from gfc_symbol to gfc_symtree. Check local (symtree) name
428 instead of original (symbol) name.
429 (read_module): Update caller.
431 2015-02-06 Paul Thomas <pault@gcc.gnu.org>
434 * gfortran.h: Add 'must finalize' field to gfc_expr and
435 prototypes for gfc_is_alloc_class_scalar_function and for
436 gfc_is_alloc_class_array_function.
437 * expr.c (gfc_is_alloc_class_scalar_function,
438 gfc_is_alloc_class_array_function): New functions.
439 * trans-array.c (gfc_add_loop_ss_code): Do not move the
440 expression for allocatable class scalar functions outside the
442 (conv_array_index_offset): Cope with deltas being NULL_TREE.
443 (build_class_array_ref): Do not return with allocatable class
444 array functions. Add code to pick out the returned class array.
445 Dereference if necessary and return if not a class object.
446 (gfc_conv_scalarized_array_ref): Cope with offsets being NULL.
447 (gfc_walk_function_expr): Return an array ss for the result of
448 an allocatable class array function.
449 * trans-expr.c (gfc_conv_subref_array_arg): Remove the assert
450 that the argument should be a variable. If an allocatable class
451 array function, set the offset to zero and skip the write-out
453 (gfc_conv_procedure_call): Add allocatable class array function
454 to the assert. Call gfc_conv_subref_array_arg for allocatable
455 class array function arguments with derived type formal arg..
456 Add the code for handling allocatable class functions, including
457 finalization calls to prevent memory leaks.
458 (arrayfunc_assign_needs_temporary): Return if an allocatable
459 class array function.
460 (gfc_trans_assignment_1): Set must_finalize to rhs expression
461 for allocatable class functions. Set scalar_to_array as needed
462 for scalar class allocatable functions assigned to an array.
463 Nullify the allocatable components corresponding the the lhs
464 derived type so that the finalization does not free them.
466 2015-01-29 Andre Vehreschild <vehre@gmx.de>
467 Janus Weil <janus@gcc.gnu.org>
470 Initial patch by Janus Weil
471 * resolve.c (resolve_allocate_expr): Add check for comp. only
472 when target is not unlimited polymorphic.
473 * trans-stmt.c (gfc_trans_allocate): Assign correct value to
474 _len component of unlimited polymorphic entities.
476 2015-02-05 Tobias Burnus <burnus@net-b.de>
479 * resolve.c (resolve_transfer): Also check structure
482 2015-02-05 Paul Thomas <pault@gcc.gnu.org>
485 * resolve.c (resolve_structure_cons): Obtain the rank of class
487 * trans-expr.c (gfc_trans_alloc_subarray_assign): Do the
488 assignment to allocatable class array components.
489 (alloc_scalar_allocatable_for_subcomponent_assignment): If comp
490 is a class component, allocate to the _data field.
491 (gfc_trans_subcomponent_assign): If a class component with a
492 derived type expression set the _vptr field and for array
493 components, call gfc_trans_alloc_subarray_assign. For scalars,
494 the assignment is performed here.
496 2015-02-04 Jakub Jelinek <jakub@redhat.com>
498 * options.c: Include langhooks.h.
499 (gfc_post_options): Change lang_hooks.name based on
502 2015-02-03 Steven G. Kargl <kargl@gcc.gnu.org>
504 * intrinsic.texi (CO_ASSOCIATED): c_prt_1 should be c_ptr_1.
506 2015-01-30 Andre Vehreschild <vehre@gmx.de>
508 * trans-decl.c (gfc_get_symbol_decl): Removed duplicate code.
509 * trans-expr.c (gfc_conv_intrinsic_to_class): Fixed indentation.
510 Fixed datatype of charlen to be a 32-bit int.
512 2015-02-01 Joseph Myers <joseph@codesourcery.com>
514 * error.c (gfc_warning (const char *, ...), gfc_warning_now (const
515 char *, ...)): Remove functions.
516 * gfortran.h (gfc_warning (const char *, ...), gfc_warning_now
517 (const char *, ...)): Remove declarations.
518 * arith.c, check.c, data.c, decl.c, frontend-passes.c,
519 interface.c, intrinsic.c, io.c, matchexp.c, module.c, openmp.c,
520 options.c, parse.c, primary.c, resolve.c, scanner.c, symbol.c,
521 trans-common.c, trans-const.c, trans-stmt.c: All callers of
522 gfc_warning and gfc_warning_now changed to pass 0 or option number
525 2015-01-30 Joseph Myers <joseph@codesourcery.com>
527 * f95-lang.c, gfortranspec.c, trans-const.c, trans-expr.c: All
528 callers of fatal_error changed to pass input_location as first
531 2015-01-28 Tobias Burnus <burnus@net-b.de>
533 * intrinsic.texi (CO_BROADCAST): Correct argument description.
535 2015-01-27 Tobias Burnus <burnus@net-b.de>
538 * trans-openmp.c (gfc_has_alloc_comps, gfc_trans_omp_clauses):
539 Fix handling for scalar coarrays.
540 * trans-types.c (gfc_get_element_type): Add comment.
542 2015-01-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
545 * interface.c: Remove <algorithm>.
546 (check_dummy_characteristics): Use MAX instead of std::max.
548 2015-01-26 Paul Thomas <pault@gcc.gnu.org>
551 * resolve.c (resolve_allocate_expr): If the default initializer
552 is NULL, keep the original MOLD expression so that the correct
553 typespec is available.
555 2015-01-26 Tobias Burnus <burnus@net-b.de>
558 * interface.c (check_dummy_characteristics): Fix coarray handling.
560 2015-01-26 Tobias Burnus <burnus@net-b.de>
562 * io.c (gfc_match_inquire): Replace "-1" by a defined constant.
564 2015-01-26 Janus Weil <janus@gcc.gnu.org>
567 * class.c (finalize_component): New argument 'sub_ns'. Insert code to
568 check if 'expr' is associated.
569 (generate_finalization_wrapper): Rename 'ptr' symbols to 'ptr1' and
570 'ptr2'. Pass 'sub_ns' to finalize_component.
572 2015-01-25 Mikael Morin <mikael@gcc.gnu.org>
575 * decl.c (gfc_match_derived_decl): Don't insert a new symtree element.
576 * module.c (MOD_VERSION): Bump.
577 (write_module): Don't write list of extensions.
578 (read_module): Don't jump over list of extensions;
579 don't load list of extensions.
580 (load_derived_extensions, write_dt_extensions,
581 write_derived_extensions): Remove.
583 2015-01-24 Tobias Burnus <burnus@net-b.de>
585 * parse.c (gfc_parse_file): Fix two-location gfc_error call.
587 2015-01-23 Martin Liska <mliska@suse.cz>
589 * decl.c (attr_decl1): Workaround -Wmaybe-uninitialized
590 false positive during profiledbootstrap by initializing them.
591 * matchexp.c (match_mult_operand): Likewise.
592 * module.c (write_atom): Likewise.
593 (read_module): Likewise.
595 2015-01-23 Tom de Vries <tom@codesourcery.com>
598 * lang.opt (fopenacc): Mark as LTO option.
600 2015-01-23 Tom de Vries <tom@codesourcery.com>
603 * lang.opt (fopenmp): Mark as LTO option.
605 2015-01-23 Andre Vehreschild <vehre@gmx.de>
607 * trans-decl.c (gfc_finish_var_decl): Fixed moved comment.
608 * trans-stmt.c (gfc_trans_allocate): Fixed indentation.
610 2015-01-23 Jakub Jelinek <jakub@redhat.com>
612 * gfc-diagnostic.def (DK_ICE_NOBT): New kind.
614 2015-01-23 Janus Weil <janus@gcc.gnu.org>
617 * class.c (finalize_component): Apply the check for 'fini_coarray' only
618 to coarray components.
620 2015-01-23 Tobias Burnus <burnus@net-b.de>
623 * trans-openmp.c (gfc_trans_oacc_combined_directive): Fix
626 2015-01-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
630 * trans-io.c (set_parameter_value): Delete use of has_iostat.
631 Redefine to not generate any runtime error check calls.
632 (set_parameter_value_chk): Rename of the former
633 set_parameter_value with the runtime error checks and fix
634 whitespace. (set_parameter_value_inquire): New function that
635 builds a runtime conditional block to set the INQUIRE
636 common parameter block unit number to -2 when unit numbers
637 exceed positive KIND=4 limits. (gfc_trans_open): Whitespace.
638 For unit, use the renamed set_parameter_value_chk.
639 (gfc_trans_close): Likewise use renamed function.
640 (build_filepos): Whitespace and use renamed function.
641 (gfc_trans_inquire): Whitespace and for unit use
642 set_parameter_value and set_parameter_value_inquire.
643 (gfc_trans_wait): Remove p->iostat from call to
644 set_parameter_value. Use new set_parameter_value_chk for unit.
645 (build_dt): Use the new set_parameter_value without p->iostat
646 and fix whitespace. Use set_parameter_value_chk for unit.
648 2015-01-21 Thomas Koenig <tkoenig@netcologne.de>
651 * dependency.c (callback_dummy_intent_not_int): New function.
652 (dummy_intent_not_in): New function.
653 (gfc_full_array_ref_p): Use dummy_intent_not_in.
655 2015-01-18 Andre Vehreschild <vehre@gmx.de>
656 Janus Weil <janus@gcc.gnu.org>
659 * class.c (gfc_get_len_component): New.
660 (gfc_build_class_symbol): Add _len component to unlimited
661 polymorphic entities.
662 (find_intrinsic_vtab): Removed emitting of error message.
663 * gfortran.h: Added prototype for gfc_get_len_component.
664 * simplify.c (gfc_simplify_len): Use _len component where
666 * trans-expr.c (gfc_class_len_get): New.
667 (gfc_conv_intrinsic_to_class): Add handling for deferred
669 (gfc_conv_structure): Treat _len component correctly.
670 (gfc_conv_expr): Prevent bind_c handling when not required.
671 (gfc_trans_pointer_assignment): Propagate _len component.
672 * trans-stmt.c (class_has_len_component): New.
673 (trans_associate_var): _len component treatment for associate
675 (gfc_trans_allocate): Same as for trans_associate_var()
676 * trans.h: Added prototype for gfc_class_len_get.
678 2015-01-18 Paul Thomas <pault@gcc.gnu.org>
681 * trans-expr.c (gfc_trans_subcomponent_assign): Use a deep copy
682 for allocatable components, where the source is a variable.
684 2015-01-18 Paul Thomas <pault@gcc.gnu.org>
687 * primary.c (gfc_match_varspec): Exclude dangling associate-
688 names with dimension 0 from being counted as arrays.
689 * resolve.c (resolve_assoc_var): Sub-strings are permissible
690 for associate-names, so exclude characters from the test for
692 * trans-decl.c (gfc_get_symbol_decl): Associate-names can use
693 the hidden string length variable of their associated target.
694 Signal this by setting 'length' to a constant, if the decl for
695 the string length is a variable.
697 2015-01-17 Paul Thomas <pault@gcc.gnu.org>
700 * trans-expr.c (gfc_trans_pointer_assignment): Make sure that
701 before reinitializing rse, to add the rse.pre to block before
703 * trans-intrinsic.c (gfc_conv_associated): Deal with the class
704 data being a descriptor.
706 2015-01-17 Andre Vehreschild <vehre@gmx.de>
709 * primary.c (build_actual_constructor): Prevent warning.
710 * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_
711 assignment): New function encapsulates treatment of allocatable
713 (gfc_trans_subcomponent_assign): Needed to distinguish between
714 regular assignment and initilization.
715 (gfc_trans_structure_assign): Same.
716 (gfc_conv_structure): Same.
719 * gfortran.h: deferred_parameter is not needed, because
720 it artificial does the trick completely.
721 * primary.c (build_actual_constructor): Same.
722 (gfc_convert_to_structure_constructor): Same.
723 * resolve.c (resolve_fl_derived0): Same.
724 * trans-expr.c (gfc_conv_component_ref): Prevent treating
725 allocatable deferred length char arrays here.
726 (gfc_trans_subcomponent_assign): Same as above.
727 * trans-types.c (gfc_sym_type): This is done in
728 gfc_get_derived_type already.
730 2015-01-17 Andre Vehreschild <vehre@gmx.de>
733 * trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
734 length when the symbol is declared to be a result.
735 * trans-expr.c (gfc_conv_procedure_call): Strip deref on the
736 string length when functions are nested and the string length
737 is a reference already.
739 2015-01-16 Janus Weil <janus@gcc.gnu.org>
742 * decl.c (match_pointer_init): Error out if resolution of init expr
745 2015-01-15 Tobias Burnus <burnus@net-b.de>
747 * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses,
748 resolve_oacc_deviceptr_clause, resolve_omp_clauses,
749 gfc_resolve_oacc_declare): Replace '%s' by %qs.
751 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
752 Cesar Philippidis <cesar@codesourcery.com>
753 James Norris <jnorris@codesourcery.com>
754 Ilmir Usmanov <i.usmanov@samsung.com>
755 Tobias Burnus <burnus@net-b.de>
757 * lang.opt (fopenacc): New option.
758 * cpp.c (cpp_define_builtins): Conditionally define _OPENACC.
759 * dump-parse-tree.c (show_omp_node): Split part of it into...
760 (show_omp_clauses): ... this new function.
761 (show_omp_node, show_code_node): Handle EXEC_OACC_PARALLEL_LOOP,
762 EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
763 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
764 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
765 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
766 (show_namespace): Update for OpenACC.
767 * f95-lang.c (DEF_FUNCTION_TYPE_VAR_2, DEF_FUNCTION_TYPE_VAR_8)
768 (DEF_FUNCTION_TYPE_VAR_12, DEF_GOACC_BUILTIN)
769 (DEF_GOACC_BUILTIN_COMPILER): New macros.
770 * types.def (BT_FN_VOID_INT_INT_VAR)
771 (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
772 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
774 * gfortran.h (gfc_statement): Add ST_OACC_PARALLEL_LOOP,
775 ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
776 ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_DATA,
777 ST_OACC_END_DATA, ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA,
778 ST_OACC_LOOP, ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE,
779 ST_OACC_WAIT, ST_OACC_CACHE, ST_OACC_KERNELS_LOOP,
780 ST_OACC_END_KERNELS_LOOP, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
782 (struct gfc_expr_list): New data type.
783 (gfc_get_expr_list): New macro.
784 (gfc_omp_map_op): Add OMP_MAP_FORCE_ALLOC, OMP_MAP_FORCE_DEALLOC,
785 OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM, OMP_MAP_FORCE_TOFROM,
786 OMP_MAP_FORCE_PRESENT, OMP_MAP_FORCE_DEVICEPTR.
787 (OMP_LIST_FIRST, OMP_LIST_DEVICE_RESIDENT, OMP_LIST_USE_DEVICE)
788 (OMP_LIST_CACHE): New enumerators.
789 (struct gfc_omp_clauses): Add async_expr, gang_expr, worker_expr,
790 vector_expr, num_gangs_expr, num_workers_expr, vector_length_expr,
791 wait_list, tile_list, async, gang, worker, vector, seq,
792 independent, wait, par_auto, gang_static, and loc members.
793 (struct gfc_namespace): Add oacc_declare_clauses member.
794 (gfc_exec_op): Add EXEC_OACC_KERNELS_LOOP,
795 EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS,
796 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
797 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
798 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
799 (gfc_free_expr_list, gfc_resolve_oacc_directive)
800 (gfc_resolve_oacc_declare, gfc_resolve_oacc_parallel_loop_blocks)
801 (gfc_resolve_oacc_blocks): New prototypes.
802 * match.c (match_exit_cycle): Handle EXEC_OACC_LOOP and
803 EXEC_OACC_PARALLEL_LOOP.
804 * match.h (gfc_match_oacc_cache, gfc_match_oacc_wait)
805 (gfc_match_oacc_update, gfc_match_oacc_declare)
806 (gfc_match_oacc_loop, gfc_match_oacc_host_data)
807 (gfc_match_oacc_data, gfc_match_oacc_kernels)
808 (gfc_match_oacc_kernels_loop, gfc_match_oacc_parallel)
809 (gfc_match_oacc_parallel_loop, gfc_match_oacc_enter_data)
810 (gfc_match_oacc_exit_data, gfc_match_oacc_routine): New
812 * openmp.c: Include "diagnostic.h" and "gomp-constants.h".
813 (gfc_free_omp_clauses): Update for members added to struct
815 (gfc_match_omp_clauses): Change mask paramter to uint64_t. Add
817 (resolve_omp_clauses): Add openacc parameter. Update for OpenACC.
818 (struct fortran_omp_context): Add is_openmp member.
819 (gfc_resolve_omp_parallel_blocks): Initialize it.
820 (gfc_resolve_do_iterator): Update for OpenACC.
821 (gfc_resolve_omp_directive): Call
822 resolve_omp_directive_inside_oacc_region.
823 (OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE)
824 (OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_COPYPRIVATE)
825 (OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN, OMP_CLAUSE_REDUCTION)
826 (OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS, OMP_CLAUSE_SCHEDULE)
827 (OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED, OMP_CLAUSE_COLLAPSE)
828 (OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE)
829 (OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH)
830 (OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND)
831 (OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM)
832 (OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO)
833 (OMP_CLAUSE_FROM, OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT)
834 (OMP_CLAUSE_DIST_SCHEDULE): Use uint64_t.
835 (OMP_CLAUSE_ASYNC, OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS)
836 (OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_COPY, OMP_CLAUSE_COPYOUT)
837 (OMP_CLAUSE_CREATE, OMP_CLAUSE_PRESENT)
838 (OMP_CLAUSE_PRESENT_OR_COPY, OMP_CLAUSE_PRESENT_OR_COPYIN)
839 (OMP_CLAUSE_PRESENT_OR_COPYOUT, OMP_CLAUSE_PRESENT_OR_CREATE)
840 (OMP_CLAUSE_DEVICEPTR, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER)
841 (OMP_CLAUSE_VECTOR, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT)
842 (OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_DEVICE_RESIDENT)
843 (OMP_CLAUSE_HOST_SELF, OMP_CLAUSE_OACC_DEVICE, OMP_CLAUSE_WAIT)
844 (OMP_CLAUSE_DELETE, OMP_CLAUSE_AUTO, OMP_CLAUSE_TILE): New macros.
845 (gfc_match_omp_clauses): Handle those.
846 (OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES, OACC_DATA_CLAUSES)
847 (OACC_LOOP_CLAUSES, OACC_PARALLEL_LOOP_CLAUSES)
848 (OACC_KERNELS_LOOP_CLAUSES, OACC_HOST_DATA_CLAUSES)
849 (OACC_DECLARE_CLAUSES, OACC_UPDATE_CLAUSES)
850 (OACC_ENTER_DATA_CLAUSES, OACC_EXIT_DATA_CLAUSES)
851 (OACC_WAIT_CLAUSES): New macros.
852 (gfc_free_expr_list, match_oacc_expr_list, match_oacc_clause_gang)
853 (gfc_match_omp_map_clause, gfc_match_oacc_parallel_loop)
854 (gfc_match_oacc_parallel, gfc_match_oacc_kernels_loop)
855 (gfc_match_oacc_kernels, gfc_match_oacc_data)
856 (gfc_match_oacc_host_data, gfc_match_oacc_loop)
857 (gfc_match_oacc_declare, gfc_match_oacc_update)
858 (gfc_match_oacc_enter_data, gfc_match_oacc_exit_data)
859 (gfc_match_oacc_wait, gfc_match_oacc_cache)
860 (gfc_match_oacc_routine, oacc_is_loop)
861 (resolve_oacc_scalar_int_expr, resolve_oacc_positive_int_expr)
862 (check_symbol_not_pointer, check_array_not_assumed)
863 (resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause)
864 (oacc_compatible_clauses, oacc_is_parallel, oacc_is_kernels)
865 (omp_code_to_statement, oacc_code_to_statement)
866 (resolve_oacc_directive_inside_omp_region)
867 (resolve_omp_directive_inside_oacc_region)
868 (resolve_oacc_nested_loops, resolve_oacc_params_in_parallel)
869 (resolve_oacc_loop_blocks, gfc_resolve_oacc_blocks)
870 (resolve_oacc_loop, resolve_oacc_cache, gfc_resolve_oacc_declare)
871 (gfc_resolve_oacc_directive): New functions.
872 * parse.c (next_free): Update for OpenACC. Move some code into...
873 (verify_token_free): ... this new function.
874 (next_fixed): Update for OpenACC. Move some code into...
875 (verify_token_fixed): ... this new function.
876 (case_executable): Add ST_OACC_UPDATE, ST_OACC_WAIT,
877 ST_OACC_CACHE, ST_OACC_ENTER_DATA, and ST_OACC_EXIT_DATA.
878 (case_exec_markers): Add ST_OACC_PARALLEL_LOOP, ST_OACC_PARALLEL,
879 ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA, ST_OACC_LOOP,
880 ST_OACC_KERNELS_LOOP.
881 (case_decl): Add ST_OACC_ROUTINE.
882 (push_state, parse_critical_block, parse_progunit): Update for
884 (gfc_ascii_statement): Handle ST_OACC_PARALLEL_LOOP,
885 ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
886 ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_KERNELS_LOOP,
887 ST_OACC_END_KERNELS_LOOP, ST_OACC_DATA, ST_OACC_END_DATA,
888 ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA, ST_OACC_LOOP,
889 ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE, ST_OACC_WAIT,
890 ST_OACC_CACHE, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
892 (verify_st_order, parse_spec): Handle ST_OACC_DECLARE.
893 (parse_executable): Handle ST_OACC_PARALLEL_LOOP,
894 ST_OACC_KERNELS_LOOP, ST_OACC_LOOP, ST_OACC_PARALLEL,
895 ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA.
896 (decode_oacc_directive, parse_oacc_structured_block)
897 (parse_oacc_loop, is_oacc): New functions.
898 * parse.h (struct gfc_state_data): Add oacc_declare_clauses
900 (is_oacc): New prototype.
901 * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
902 EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL,
903 EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS, EXEC_OACC_DATA,
904 EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP, EXEC_OACC_UPDATE,
905 EXEC_OACC_WAIT, EXEC_OACC_CACHE, EXEC_OACC_ENTER_DATA,
907 (resolve_codes): Call gfc_resolve_oacc_declare.
908 * scanner.c (openacc_flag, openacc_locus): New variables.
909 (skip_free_comments): Update for OpenACC. Move some code into...
910 (skip_omp_attribute): ... this new function.
911 (skip_oacc_attribute): New function.
912 (skip_fixed_comments, gfc_next_char_literal): Update for OpenACC.
913 * st.c (gfc_free_statement): Handle EXEC_OACC_PARALLEL_LOOP,
914 EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
915 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
916 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
917 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
918 * trans-decl.c (gfc_generate_function_code): Update for OpenACC.
919 * trans-openmp.c: Include "gomp-constants.h".
920 (gfc_omp_finish_clause, gfc_trans_omp_clauses): Use GOMP_MAP_*
921 instead of OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
922 (gfc_trans_omp_clauses): Handle OMP_LIST_USE_DEVICE,
923 OMP_LIST_DEVICE_RESIDENT, OMP_LIST_CACHE, and OMP_MAP_FORCE_ALLOC,
924 OMP_MAP_FORCE_DEALLOC, OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM,
925 OMP_MAP_FORCE_TOFROM, OMP_MAP_FORCE_PRESENT,
926 OMP_MAP_FORCE_DEVICEPTR, and gfc_omp_clauses' async, seq,
927 independent, wait_list, num_gangs_expr, num_workers_expr,
928 vector_length_expr, vector, vector_expr, worker, worker_expr,
929 gang, gang_expr members.
930 (gfc_trans_omp_do): Handle EXEC_OACC_LOOP.
931 (gfc_convert_expr_to_tree, gfc_trans_oacc_construct)
932 (gfc_trans_oacc_executable_directive)
933 (gfc_trans_oacc_wait_directive, gfc_trans_oacc_combined_directive)
934 (gfc_trans_oacc_declare, gfc_trans_oacc_directive): New functions.
935 * trans-stmt.c (gfc_trans_block_construct): Update for OpenACC.
936 * trans-stmt.h (gfc_trans_oacc_directive, gfc_trans_oacc_declare):
938 * trans.c (tranc_code): Handle EXEC_OACC_CACHE, EXEC_OACC_WAIT,
939 EXEC_OACC_UPDATE, EXEC_OACC_LOOP, EXEC_OACC_HOST_DATA,
940 EXEC_OACC_DATA, EXEC_OACC_KERNELS, EXEC_OACC_KERNELS_LOOP,
941 EXEC_OACC_PARALLEL, EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_ENTER_DATA,
943 * gfortran.texi: Update for OpenACC.
944 * intrinsic.texi: Likewise.
945 * invoke.texi: Likewise.
947 2015-01-15 Janus Weil <janus@gcc.gnu.org>
950 * resolve.c (resolve_fl_derived0): Continue resolving next component
953 2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
956 * io.c (gfc_match_inquire): Generate error if unit number in
957 inquire statement is a constant -1. All other values allowed.
958 * trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
959 (create_dummy_iostat): Delete function no longer used.
961 2015-01-13 Jakub Jelinek <jakub@redhat.com>
964 * trans-decl.c (create_function_arglist): Don't set TREE_READONLY
965 on dummy args with VALUE attribute.
967 2015-01-11 Janus Weil <janus@gcc.gnu.org>
970 * interface.c (gfc_extend_expr): Look for type-bound operators before
973 2015-01-11 Janus Weil <janus@gcc.gnu.org>
976 * resolve.c (resolve_fl_derived0): Set error flag if problems with the
977 interface of a procedure-pointer component were detected.
979 2015-01-11 Janus Weil <janus@gcc.gnu.org>
982 * interface.c (compare_parameter): Interface check for
983 procedure-pointer component as actual argument.
985 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
987 * gfortran.texi: Update for libgomp being renamed from "GNU OpenMP
988 Runtime Library" to "GNU Offloading and Multi Processing Runtime
990 * intrinsic.texi: Likewise.
992 2015-01-10 Tobias Burnus <burnus@net-b.de>
995 * invoke.texi (Wline-truncation): Document new behaviour.
996 * lang.opt (Wline-truncation): Add Init(-1).
997 * options.c (gfc_post_options): If -Wline-truncation is unset,
998 enable it for free-form source files; for the latter, also use
999 -Werror=line-truncation, unless -Wno-error has been specified.
1001 2015-01-09 Michael Collison <michael.collison@linaro.org>
1003 * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1004 input.h, alias.h, symtab.h, options.h, fold-const.h,
1005 wide-int.h, and inchash.h due to flattening of tree.h.
1006 * cpp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1007 input.h, alias.h, symtab.h, fold-const.h,
1008 wide-int.h, and inchash.h due to flattening of tree.h.
1010 * f95.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1011 input.h, alias.h, symtab.h, options.h, fold-const.h,
1012 wide-int.h, and inchash.h due to flattening of tree.h.
1013 * iresolve.c: Ditto.
1014 * match.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1015 input.h, alias.h, symtab.h, fold-const.h,
1016 wide-int.h, and inchash.h due to flattening of tree.h.
1017 * module.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1018 input.h, alias.h, symtab.h, options.h, fold-const.h,
1019 wide-int.h, and inchash.h due to flattening of tree.h.
1021 * target-memory.c: Include hash-set.h, vec.h,
1022 double-int.h, input.h, alias.h, symtab.h, fold-const.h,
1023 wide-int.h, and inchash.h due to flattening of tree.h.
1024 * trans-array.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1025 input.h, alias.h, symtab.h, options.h, fold-const.h,
1026 wide-int.h, and inchash.h due to flattening of tree.h.
1027 * trans.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1028 input.h, alias.h, symtab.h, options.h, fold-const.h,
1029 wide-int.h, and inchash.h due to flattening of tree.h.
1030 * trans-common.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1031 input.h, alias.h, symtab.h, fold-const.h,
1032 wide-int.h, and inchash.h due to flattening of tree.h.
1033 * trans-const.c: Ditto.
1034 * trans-decl.c: Ditto.
1035 * trans-expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1036 input.h, alias.h, symtab.h, options.h, fold-const.h,
1037 wide-int.h, and inchash.h due to flattening of tree.h.
1038 * trans-intrinsic.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1039 input.h, alias.h, symtab.h, fold-const.h,
1040 wide-int.h, inchash.h and real.h due to flattening of tree.h.
1041 * trans-io.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1042 input.h, alias.h, symtab.h, options.h, fold-const.h,
1043 wide-int.h, and inchash.h due to flattening of tree.h.
1044 * trans-openmp.c: Ditto.
1045 * trans-stmt.c: Ditto.
1046 * trans-types.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1047 input.h, alias.h, symtab.h, fold-const.h,
1048 wide-int.h, inchash.h and real.h due to flattening of tree.h.
1050 2015-01-08 Tobias Burnus <burnus@net-b.de>
1052 * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
1053 for module coarrays with -fcoarray=lib.
1054 (get_proc_pointer_decl): As module variable, make only public
1055 when not marked as private.
1057 2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
1060 * dependency.h: Actually commit changes.
1062 2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
1065 * dependency.c: Update copyright years.
1066 (gfc_discard_nops): Add prototype.
1067 * dependency.c (discard_nops): Rename to gfc_discard_nops,
1069 (gfc_discard_nops): Use gfc_discard_nops.
1070 (gfc_dep_difference): Likewise.
1071 * frontend-passes.c Update copyright years.
1072 (realloc_strings): New function. Add prototype.
1073 (gfc_run_passes): Call realloc_strings.
1074 (realloc_string_callback): New function.
1075 (create_var): Add prototype. Handle case of a
1076 scalar character variable.
1077 (optimize_trim): Do not handle allocatable variables.
1079 2015-01-05 Jakub Jelinek <jakub@redhat.com>
1081 Update copyright years.
1083 * gfortranspec.c (lang_specific_driver): Update copyright notice
1085 * gfc-internals.texi: Bump @copying's copyright year.
1086 * gfortran.texi: Ditto.
1087 * intrinsic.texi: Ditto.
1088 * invoke.texi: Ditto.
1090 2015-01-02 Janus Weil <janus@gcc.gnu.org>
1093 * expr.c (find_component_ref): Deal with extended types.
1095 2015-01-02 Tobias Burnus <burnus@net-b.de>
1097 * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
1098 for module coarrays with -fcoarray=lib.
1100 2015-01-02 Janus Weil <janus@gcc.gnu.org>
1103 * interface.c (is_procptr_result): New function to check if an
1104 expression is a procedure-pointer result.
1105 (compare_actual_formal): Use it.
1107 Copyright (C) 2015 Free Software Foundation, Inc.
1109 Copying and distribution of this file, with or without modification,
1110 are permitted in any medium without royalty provided the copyright
1111 notice and this notice are preserved.