summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2016-01-04 13:03:35 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2016-01-04 13:03:35 +0000
commit2355cca743fdf675a56964ae41de3357482cb480 (patch)
treee5450f615af858d62b85900dd64fcc8c18e4ab4a /gcc
parentd7d6a3abd432e5765e56f310c8d2407dd46fff30 (diff)
downloadgcc-2355cca743fdf675a56964ae41de3357482cb480.tar.gz
gcc/
* gcc.c (process_command): Update copyright notice dates. * gcov-dump.c (print_version): Ditto. * gcov.c (print_version): Ditto. * gcov-tool.c (print_version): Ditto. * gengtype.c (create_file): Ditto. * doc/cpp.texi: Bump @copying's copyright year. * doc/cppinternals.texi: Ditto. * doc/gcc.texi: Ditto. * doc/gccint.texi: Ditto. * doc/gcov.texi: Ditto. * doc/install.texi: Ditto. * doc/invoke.texi: Ditto. gcc/ada/ * gnat_ugn.texi: Bump @copying's copyright year. * gnat_rm.texi: Likewise. gcc/fortran/ * gfortranspec.c (lang_specific_driver): Update copyright notice dates. * gfc-internals.texi: Bump @copying's copyright year. * gfortran.texi: Ditto. * intrinsic.texi: Ditto. * invoke.texi: Ditto. gcc/go/ * gccgo.texi: Bump @copyrights-go year. gcc/java/ * jcf-dump.c (version): Update copyright notice dates. libgomp/ * libgomp.texi: Bump @copying's copyright year. libitm/ * libitm.texi: Bump @copying's copyright year. libjava/ * classpath/gnu/java/rmi/registry/RegistryImpl.java (version): Update copyright notice dates. * classpath/tools/gnu/classpath/tools/orbd/Main.java (run): Ditto. * gnu/gcj/convert/Convert.java (version): Update copyright notice dates. * gnu/gcj/tools/gcj_dbtool/Main.java (main): Ditto. libquadmath/ * libquadmath.texi: Bump @copying's copyright year. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232053 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog15
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/gnat_rm.texi2
-rw-r--r--gcc/ada/gnat_ugn.texi2
-rw-r--r--gcc/doc/cpp.texi2
-rw-r--r--gcc/doc/cppinternals.texi4
-rw-r--r--gcc/doc/gcc.texi2
-rw-r--r--gcc/doc/gccint.texi2
-rw-r--r--gcc/doc/gcov.texi2
-rw-r--r--gcc/doc/install.texi4
-rw-r--r--gcc/doc/invoke.texi2
-rw-r--r--gcc/fortran/ChangeLog3029
-rw-r--r--gcc/fortran/ChangeLog-20153029
-rw-r--r--gcc/fortran/gfc-internals.texi2
-rw-r--r--gcc/fortran/gfortran.texi2
-rw-r--r--gcc/fortran/gfortranspec.c4
-rw-r--r--gcc/fortran/intrinsic.texi2
-rw-r--r--gcc/fortran/invoke.texi4
-rw-r--r--gcc/gcc.c4
-rw-r--r--gcc/gcov-dump.c4
-rw-r--r--gcc/gcov-tool.c4
-rw-r--r--gcc/gcov.c4
-rw-r--r--gcc/gengtype.c4
-rw-r--r--gcc/go/ChangeLog6
-rw-r--r--gcc/go/gccgo.texi2
-rw-r--r--gcc/java/ChangeLog6
-rw-r--r--gcc/java/gcj.texi2
-rw-r--r--gcc/java/jcf-dump.c4
28 files changed, 3098 insertions, 3056 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6e0a160cc98..eb908a3d73b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,18 @@
+2016-01-04 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (process_command): Update copyright notice dates.
+ * gcov-dump.c (print_version): Ditto.
+ * gcov.c (print_version): Ditto.
+ * gcov-tool.c (print_version): Ditto.
+ * gengtype.c (create_file): Ditto.
+ * doc/cpp.texi: Bump @copying's copyright year.
+ * doc/cppinternals.texi: Ditto.
+ * doc/gcc.texi: Ditto.
+ * doc/gccint.texi: Ditto.
+ * doc/gcov.texi: Ditto.
+ * doc/install.texi: Ditto.
+ * doc/invoke.texi: Ditto.
+
2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
* config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 8813a9b4158..a11ece3c5c8 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2016-01-04 Jakub Jelinek <jakub@redhat.com>
+
+ * gnat_ugn.texi: Bump @copying's copyright year.
+ * gnat_rm.texi: Likewise.
+
2016-01-02 Eric Botcazou <ebotcazou@adacore.com>
* gnatvsn.ads: Bump copyright year.
diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi
index e7de0728080..405aa5a26f2 100644
--- a/gcc/ada/gnat_rm.texi
+++ b/gcc/ada/gnat_rm.texi
@@ -25,7 +25,7 @@ GNAT Reference Manual , November 18, 2015
AdaCore
-Copyright @copyright{} 2008-2015, Free Software Foundation
+Copyright @copyright{} 2008-2016, Free Software Foundation
@end quotation
@end copying
diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi
index 71b6280fd10..a771687fa1a 100644
--- a/gcc/ada/gnat_ugn.texi
+++ b/gcc/ada/gnat_ugn.texi
@@ -25,7 +25,7 @@ GNAT User's Guide for Native Platforms , November 18, 2015
AdaCore
-Copyright @copyright{} 2008-2015, Free Software Foundation
+Copyright @copyright{} 2008-2016, Free Software Foundation
@end quotation
@end copying
diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi
index 7718d14da36..dd748fa3def 100644
--- a/gcc/doc/cpp.texi
+++ b/gcc/doc/cpp.texi
@@ -10,7 +10,7 @@
@copying
@c man begin COPYRIGHT
-Copyright @copyright{} 1987-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 1987-2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/doc/cppinternals.texi b/gcc/doc/cppinternals.texi
index 29efa80ea10..10bfb1f98ab 100644
--- a/gcc/doc/cppinternals.texi
+++ b/gcc/doc/cppinternals.texi
@@ -18,7 +18,7 @@
@ifinfo
This file documents the internals of the GNU C Preprocessor.
-Copyright (C) 2000-2015 Free Software Foundation, Inc.
+Copyright (C) 2000-2016 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -47,7 +47,7 @@ into another language, under the above conditions for modified versions.
@page
@vskip 0pt plus 1filll
@c man begin COPYRIGHT
-Copyright @copyright{} 2000-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 2000-2016 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
diff --git a/gcc/doc/gcc.texi b/gcc/doc/gcc.texi
index ba6b60807d8..629365aeb12 100644
--- a/gcc/doc/gcc.texi
+++ b/gcc/doc/gcc.texi
@@ -40,7 +40,7 @@
@c %**end of header
@copying
-Copyright @copyright{} 1988-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 1988-2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/doc/gccint.texi b/gcc/doc/gccint.texi
index d6913e694ab..0c568a52d22 100644
--- a/gcc/doc/gccint.texi
+++ b/gcc/doc/gccint.texi
@@ -26,7 +26,7 @@
@c %**end of header
@copying
-Copyright @copyright{} 1988-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 1988-2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/doc/gcov.texi b/gcc/doc/gcov.texi
index dba36e0b972..78ea8d932d2 100644
--- a/gcc/doc/gcov.texi
+++ b/gcc/doc/gcov.texi
@@ -4,7 +4,7 @@
@ignore
@c man begin COPYRIGHT
-Copyright @copyright{} 1996-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 1996-2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 31cfa67672d..1c2b7029bef 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -44,7 +44,7 @@
@settitle Installing GCC: GNU Free Documentation License
@end ifset
-@c Copyright (C) 1988-2015 Free Software Foundation, Inc.
+@c Copyright (C) 1988-2016 Free Software Foundation, Inc.
@c *** Converted to texinfo by Dean Wakerley, dean@wakerley.com
@c IMPORTANT: whenever you modify this file, run `install.texi2html' to
@@ -69,7 +69,7 @@
@c Part 2 Summary Description and Copyright
@copying
-Copyright @copyright{} 1988-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 1988-2016 Free Software Foundation, Inc.
@sp 1
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 57a39bb692a..0bd3330c9f7 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -8,7 +8,7 @@
@c man end
@c man begin COPYRIGHT
-Copyright @copyright{} 1988-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 1988-2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 0e7bf72638b..01e5de524d0 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3008 +1,4 @@
-2016-01-01 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/68864
- * trans-array.c (evaluate_bound): If deferred, test that 'desc'
- is an array descriptor before using gfc_conv_descriptor_xxx.
-
-2015-12-29 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/69011
- * trans-stmt.c (gfc_trans_allocate): Unwrap a NOP_EXPR to make sure
- the actual type of the source=-expr is used when it is of class type.
- Furthermore prevent an ICE.
-
-2015-12-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/68196
- *expr.c (gfc_has_default_initializer): Prevent infinite recursion
- through this function for procedure pointer components.
- * trans-array.c (structure_alloc_comps): Ditto twice.
-
-2015-12-15 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
-
- * resolve.c (resolve_critical): Committing symbols of
- lock variables.
-
-2014-12-14 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/68850
- * gfortran.texi (Standards): Mention TS 18508.
- (Fortran 2003 and 2008 Status): Add section on TS 18508 status.
- * intrinsic.texi (EVENT_QUERY): Add.
-
-2014-12-12 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/45859
- * expr.c (gfc_is_simply_contiguous): Optionally permit array elements.
- (gfc_check_pointer_assign): Update call.
- * interface.c (compare_parameter): Ditto.
- * trans-array.c (gfc_conv_array_parameter): Ditto.
- * trans-intrinsic.c (gfc_conv_intrinsic_transfer,
- conv_isocbinding_function): Ditto.
- * gfortran.h (gfc_is_simply_contiguous): Update prototype.
-
-2014-12-12 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/68815
- * check.c (gfc_check_reshape): Replace %<%d%> by %qd.
- * matchexp.c (gfc_match_defined_op_name): Use %qc.
- * symbol.c (gfc_add_new_implicit_range,
- gfc_merge_new_implicit): Ditto.
-
-2015-12-10 David Malcolm <dmalcolm@redhat.com>
-
- * io.c (gfc_match_open): Fix indentation.
-
-2015-12-09 Tobias Burnus <burnus@net-b.de>
- Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
-
- * trans.c (gfc_allocate_using_lib,gfc_deallocate_with_status):
- Introducing __asm__ __volatile__ ("":::"memory")
- after image control statements.
- * trans-stmt.c (gfc_trans_sync, gfc_trans_event_post_wait,
- gfc_trans_lock_unlock, gfc_trans_critical): Ditto.
- * trans-intrinsic.c (gfc_conv_intrinsic_caf_get,
- conv_caf_send): Introducing __asm__ __volatile__ ("":::"memory")
- after send, before get and around sendget.
-
-2015-12-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/68815
- * decl.c (gfc_verify_c_interop_param, variable_decl): Use
- %< ... %> for quoting in diagnostics.
- * io.c (check_format): Ditto.
- * resolve.c (resolve_operator): Ditto.
- * symbol.c (check_conflict): Ditto.
- * trans-common.c (translate_common): Ditto.
-
-2015-12-07 David Malcolm <dmalcolm@redhat.com>
-
- * error.c (gfc_format_decoder): Update for change of
- text_info::set_range to text_info::set_location.
-
-2015-12-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/68676
- * decl.c (gfc_match_formal_arglist): Correct error, where 'sym'
- was used instead of 'progname'.
-
-2015-12-02 Tobias Burnus <burnus@net-b.de>
- Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
-
- * check.c (gfc_check_event_query): New function.
- * dump-parse-tree.c (show_code_node): Handle EXEC_EVENT_POST,
- EXEC_EVENT_WAIT.
- * expr.c (gfc_check_vardef_context): New check for event variables
- definition.
- * gfortran.h (gfc_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
- (gfc_isym_id): GFC_ISYM_EVENT_QUERY.
- (struct symbol_attribute): New field.
- (gfc_exec_op): Add EXEC_EVENT_POST and EXEC_EVENT_WAIT.
- * gfortran.texi: Document about new events functions and minor
- changes.
- * interface.c (compare_parameter): New check.
- (gfc_procedure_use): New check for explicit procedure interface.
- (add_subroutines): Add event_query.
- * intrinsic.h (gfc_check_event_query,gfc_resolve_event_query):
- New prototypes.
- * iresolve.c (gfc_resolve_event_query): New function.
- * iso-fortran-env.def (event_type): New type.
- * match.c (event_statement,gfc_match_event_post,gfc_match_event_wait):
- New functions.
- (gfc_match_name): New event post and event wait.
- * match.h (gfc_match_event_post,gfc_match_event_wait):
- New prototypes.
- * module.c (ab_attribute): Add AB_EVENT_COMP.
- (attr_bits): Likewise.
- (mio_symbol_attribute): Handle event_comp attribute.
- * parse.c (decode_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
- (next_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
- (gfc_ascii_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
- (parse_derived): Check for event_type components.
- * resolve.c (resolve_allocate_expr): Check for event variable def.
- (resolve_lock_unlock): Renamed to resolve_lock_unlock_event. It
- includes logic for locks and events.
- (gfc_resolve_code): Call it.
- (gfc_resolve_symbol): New check for event variable to be a corray.
- * st.c (gfc_free_statement): Handle new EXEC_EVENT_POST and
- EXEC_EVENT_WAIT.
- * trans-decl.c (gfor_fndecl_caf_event_post,gfor_fndecl_caf_event_wait,
- gfor_fndecl_caf_event_query): New global variables.
- (generate_coarray_sym_init): Checking for event_type.
- (gfc_conv_procedure_call): Check for C bind attribute.
- * trans-intrinsic.c (conv_intrinsic_event_query): New function.
- (conv_intrinsic_move_alloc): Call it.
- * trans-stmt.c (gfc_trans_lock_unlock): Passing address
- of actual argument.
- (gfc_trans_sync): Likewise.
- (gfc_trans_event_post_wait): New function.
- * trans-stmt.h (gfc_trans_event_post_wait): New prototype.
- * trans-types.c (gfc_get_derived_type): Integer_kind as event_type.
- * trans.c (gfc_allocate_using_lib): New argument and logic for events.
- (gfc_allocate_allocatable): Passing new argument.
- (trans_code): Handle EXEC_EVENT_POST, EXEC_EVENT_WAIT.
- * trans.h (gfc_coarray_type): New elements.
- (gfor_fndecl_caf_event_post,gfor_fndecl_caf_event_wait,
- gfor_fndecl_caf_event_query): Declare them.
-
-2015-12-02 Cesar Philippidis <cesar@codesourcery.com>
-
- PR fortran/63861
- * openmp.c (gfc_match_omp_clauses): Allow subarrays for acc reductions.
- (resolve_omp_clauses): Error on any acc reductions on arrays.
-
-2015-12-01 Cesar Philippidis <cesar@codesourcery.com>
-
- * dump-parse-tree.c (show_omp_clauses): Handle optional num and static
- arguments for the gang clause.
- * gfortran.h (gfc_omp_clauses): Rename gang_expr as gang_num_expr.
- Add gang_static_expr.
- * openmp.c (gfc_free_omp_clauses): Update to free gang_num_expr and
- gang_static_expr.
- (match_oacc_clause_gang): Update to support both num and static in
- the same clause.
- (resolve_omp_clauses): Formatting. Also handle gang_num_expr and
- gang_static_expr.
- (resolve_oacc_params_in_parallel): New const char arg argument.
- Use it to report more accurate gang, worker and vector clause errors.
- (resolve_oacc_loop_blocks): Update calls to
- resolve_oacc_params_in_parallel.
- * trans-openmp.c (gfc_trans_omp_clauses): Update the gimplification of
- the gang clause.
- (gfc_trans_oacc_combined_directive): Make use of gang_num_expr and
- gang_static_expr. Remove OMP_LIST_REDUCTION from construct_clauses.
-
-2015-11-30 Cesar Philippidis <cesar@codesourcery.com>
- James Norris <jnorris@codesourcery.com>
- Nathan Sidwell <nathan@codesourcery.com>
-
- * f95-lang.c (gfc_attribute_table): Add an "oacc function"
- attribute.
- * gfortran.h (symbol_attribute): Add an oacc_function bit-field.
- (gfc_oacc_routine_name): New struct;
- (gfc_get_oacc_routine_name): New macro.
- (gfc_namespace): Add oacc_routine_clauses, oacc_routine_names and
- oacc_routine fields.
- (gfc_exec_op): Add EXEC_OACC_ROUTINE.
- * openmp.c (OACC_ROUTINE_CLAUSES): New mask.
- (gfc_oacc_routine_dims): New function.
- (gfc_match_oacc_routine): Add support for named routines and the
- gang, worker vector and seq clauses.
- * parse.c (is_oacc): Add EXEC_OACC_ROUTINE.
- * resolve.c (gfc_resolve_blocks): Likewise.
- * st.c (gfc_free_statement): Likewise.
- * trans-decl.c (add_attributes_to_decl): Attach an 'oacc function'
- attribute and shape geometry for acc routine.
-
-2015-11-30 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/68534
- * decl.c (gfc_match_formal_arglist): Cope with zero formal args
- either in interface declaration or in procedure declaration in
- submodule.
-
-2015-11-25 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68227
- * trans-stmt.c (gfc_do_allocate): Convert gcc_assert argument into
- into part of conditional statement.
-
-2015-11-25 Ilmir Usmanov <me@ilmir.us>
- Cesar Philippidis <cesar@codesourcery.com>
-
- PR fortran/63858
- * scanner.c (skip_oacc_attribute): Remove continue_flag parameter.
- Rename as ...
- (skip_free_oacc_sentinel): ... this.
- (skip_omp_attribute): Remove continue_flag parameter. Rename as ...
- (skip_free_omp_sentinel): ... this.
- (skip_free_comments): Update to call skip_free_oacc_sentinel and
- skip_free_omp_sentinel.
- (skip_fixed_omp_sentinel): New function.
- (skip_fixed_oacc_sentinel): New function.
- (skip_fixed_comments): Fix mix of OpenACC and OpenMP sentinels in
- continuation.
-
-2015-11-24 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68486
- * simplify.c (gfc_simplify_cshift): Allow all EXPR_*.
-
-2015-11-22 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68486
- * simplify.c (gfc_simplify_cshift): Add EXPR_OP to mix.
-
-2015-11-22 James Norris <jnorris@codesourcery.com>
- Steven G. Kargl <kargl@gcc.gnu.org>
-
- * openmp.c (match_oacc_clause_gang): Fix uninitialized variable.
- (gfc_resolve_oacc_declare): Fix comparision.
-
-2015-11-22 James Norris <jnorris@codesourcery.com>
- Cesar Philippidis <cesar@codesourcery.com>
-
- * dump-parse-tree.c (show_namespace): Handle declares.
- * gfortran.h (struct symbol_attribute): New fields.
- (enum gfc_omp_map_map): Add OMP_MAP_DEVICE_RESIDENT and OMP_MAP_LINK.
- (OMP_LIST_LINK): New enum.
- (struct gfc_oacc_declare): New structure.
- (gfc_get_oacc_declare): New definition.
- (struct gfc_namespace): Change type.
- (enum gfc_exec_op): Add EXEC_OACC_DECLARE.
- (struct gfc_code): New field.
- * module.c (enum ab_attribute): Add AB_OACC_DECLARE_CREATE,
- AB_OACC_DECLARE_COPYIN, AB_OACC_DECLARE_DEVICEPTR,
- AB_OACC_DECLARE_DEVICE_RESIDENT, AB_OACC_DECLARE_LINK
- (attr_bits): Add new initializers.
- (mio_symbol_attribute): Handle new atributes.
- * openmp.c (gfc_free_oacc_declare_clauses): New function.
- (gfc_match_oacc_clause_link: Likewise.
- (OMP_CLAUSE_LINK): New definition.
- (gfc_match_omp_clauses): Handle OMP_CLAUSE_LINK.
- (OACC_DECLARE_CLAUSES): Add OMP_CLAUSE_LINK
- (gfc_match_oacc_declare): Add checking and module handling.
- (resolve_omp_clauses): Add array initializer.
- (gfc_resolve_oacc_declare): Reimplement.
- * parse.c (case_decl): Add ST_OACC_DECLARE.
- (parse_spec): Remove handling.
- (parse_progunit): Remove handling.
- * parse.h (struct gfc_state_data): Change type.
- * resolve.c (gfc_resolve_blocks): Handle EXEC_OACC_DECLARE.
- * st.c (gfc_free_statement): Handle EXEC_OACC_DECLARE.
- * symbol.c (check_conflict): Add conflict checks.
- (gfc_add_oacc_declare_create, gfc_add_oacc_declare_copyin,
- gfc_add_oacc_declare_deviceptr, gfc_add_oacc_declare_device_resident):
- New functions.
- (gfc_copy_attr): Handle new symbols.
- * trans-decl.c (add_clause, find_module_oacc_declare_clauses,
- finish_oacc_declare): New functions.
- (gfc_generate_function_code): Replace with call.
- * trans-openmp.c (gfc_trans_oacc_declare): Reimplement.
- (gfc_trans_oacc_directive): Handle EXEC_OACC_DECLARE.
- * trans-stmt.c (gfc_trans_block_construct): Replace with call.
- * trans-stmt.h (gfc_trans_oacc_declare): Remove argument.
- * trans.c (trans_code): Handle EXEC_OACC_DECLARE.
-
-2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * simplify.c (gfc_simplify_cshift): Work around bootstrap issues
- due to inappropriate warning options.
-
-2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * simplify.c (gfc_simplify_cshift): Implement simplification of
- CSHIFT for rank=1 arrays.
- (gfc_simplify_spread): Remove a FIXME and add error condition.
- * intrinsic.h: Prototype for gfc_simplify_cshift
- * intrinsic.c (add_functions): Use gfc_simplify_cshift.
-
-2015-11-20 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68237
- * decl.c (gfc_match_submod_proc): Test the interface symbol
- before accessing its attributes.
-
-2015-11-20 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/66762
- (gfc_get_symbol_decl): Test for attr.used_in_submodule as well
- as attr.use_assoc (twice).
- (gfc_create_module_variable): Ditto.
-
-2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/59910
- * primary.c (gfc_match_structure_constructor): Reduce a structure
- constructor in a DATA statement.
-
-2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/43996
- * simplify.c (gfc_simplify_spread): Issue error for too large array
- constructor in a PARAMETER statement.
-
-2015-11-17 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * primary.c (gfc_match_structure_constructor): Fix whitespace.
-
-2015-11-17 Dominique d'Humieres <dominiq@lps.ens.fr>
-
- PR fortran/65751
- * expr.c (gfc_check_pointer_assign): Fix error message.
-
-2015-11-16 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/58027
- PR fortran/60993
- * expr.c (gfc_check_init_expr): Prevent a redundant check when a
- __convert_* function was inserted into an array constructor.
- (gfc_check_assign_symbol): Check for an initialization expression
- when a __convert_* was inserted.
-
-2015-11-15 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/50221
- PR fortran/68216
- PR fortran/63932
- PR fortran/66408
- * trans_array.c (gfc_conv_scalarized_array_ref): Pass the
- symbol decl for deferred character length array references.
- * trans-stmt.c (gfc_trans_allocate): Keep the string lengths
- to update deferred length character string lengths.
- * trans-types.c (gfc_get_dtype_rank_type); Use the string
- length of deferred character types for the dtype size.
- * trans.c (gfc_build_array_ref): For references to deferred
- character arrays, use the domain max value, if it is a variable
- to set the 'span' and use pointer arithmetic for acces to the
- element.
- (trans_code): Set gfc_current_locus for diagnostic purposes.
-
- PR fortran/67674
- * trans-expr.c (gfc_conv_procedure_call): Do not fix deferred
- string lengths of components.
-
- PR fortran/49954
- * resolve.c (deferred_op_assign): New function.
- (gfc_resolve_code): Call it.
- * trans-array.c (concat_str_length): New function.
- (gfc_alloc_allocatable_for_assignment): Jump directly to alloc/
- realloc blocks for deferred character length arrays because the
- string length might change, even if the shape is the same. Call
- concat_str_length to obtain the string length for concatenation
- since it is needed to compute the lhs string length.
- Set the descriptor dtype appropriately for the new string
- length.
- * trans-expr.c (gfc_trans_assignment_1): Use the rse string
- length for all characters, other than deferred types. For
- concatenation operators, push the rse.pre block to the inner
- most loop so that the temporary pointer and the assignments
- are properly placed.
-
-2015-11-14 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67803
- * array.c (gfc_match_array_constructor): If array constructor included
- a CHARACTER typespec, check array elements for compatible type.
-
-2015-11-13 Steven G. Kargl <kargl@gccc.gnu.org>
-
- PR fortran/68319
- * decl.c (gfc_match_data, gfc_match_entry): Enforce F2008:C1206.
- * io.c (gfc_match_format): Ditto.
- * match.c (gfc_match_st_function): Ditto.
-
-2015-11-13 David Malcolm <dmalcolm@redhat.com>
-
- * error.c (gfc_warning): Pass line_table to rich_location ctor.
- (gfc_warning_now_at): Likewise.
- (gfc_warning_now): Likewise.
- (gfc_error_now): Likewise.
- (gfc_fatal_error): Likewise.
- (gfc_error): Likewise.
- (gfc_internal_error): Likewise.
-
-2015-11-12 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68318
- * decl.c (get_proc_name): Increment reference count for ENTRY.
- While here, fix comment and use postfix ++ for consistency.
-
-2015-11-11 Andrew MacLeod <amacleod@redhat.com>
-
- * array.c: Remove unused header files.
- * convert.c: Likewise.
- * cpp.c: Likewise.
- * decl.c: Likewise.
- * f95-lang.c: Likewise.
- * frontend-passes.c: Likewise.
- * iresolve.c: Likewise.
- * match.c: Likewise.
- * module.c: Likewise.
- * options.c: Likewise.
- * parse.c: Likewise.
- * target-memory.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-const.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-io.c: Likewise.
- * trans-openmp.c: Likewise.
- * trans-stmt.c: Likewise.
- * trans-types.c: Likewise.
- * trans.c: Likewise.
-
-2015-11-11 Dominique d'Humieres <dominiq@lps.ens.fr>
-
- PR fortran/67826
- * openmp.c (gfc_omp_udr_find): Fix typo.
-
-2015-11-08 Steven g. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68053
- * decl.c (add_init_expr_to_sym): Try to reduce initialization expression
- before testing for a constant value.
-
-2015-11-08 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/68218
- * trans-array.c (gfc_array_init_size): Add gfc_evaluate_now() when
- array spec in allocate is a function call.
-
-2015-11-08 Steven G. Kargl <kargl@gc.gnu.org>
-
- PR fortran/68224
- * array.c (match_array_element_spec): Check of invalid NULL().
- While here, fix nearby comments.
-
-2015-11-08 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/68196
- * class.c (has_finalizer_component): Prevent infinite recursion
- through this function if the derived type and that of its
- component are the same.
- * trans-types.c (gfc_get_derived_type): Do the same for proc
- pointers by ignoring the explicit interface for the component.
-
- PR fortran/66465
- * check.c (same_type_check): If either of the expressions is
- BT_PROCEDURE, use the typespec from the symbol, rather than the
- expression.
-
-2015-11-07 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68153
- * check.c (gfc_check_reshape): Improve check for valid SHAPE argument.
-
-2015-11-07 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68151
- * match.c (match_case_selector): Check for invalid type.
-
-2015-11-06 David Malcolm <dmalcolm@redhat.com>
-
- * cpp.c (cb_cpp_error): Convert parameter from location_t to
- rich_location *. Eliminate the "column_override" parameter.
- * error.c (gfc_warning): Update for change in signature of
- diagnostic_set_info.
- (gfc_format_decoder): Update handling of %C/%L for changes
- to struct text_info.
- (gfc_diagnostic_starter): Use richloc when determining whether to
- print one locus or two. When handling a location that will
- involve a call to diagnostic_show_locus, only attempt to print the
- locus for the primary location, and don't call into
- diagnostic_print_caret_line.
- (gfc_warning_now_at): Update for change in signature of
- diagnostic_set_info.
- (gfc_warning_now): Likewise.
- (gfc_error_now): Likewise.
- (gfc_fatal_error): Likewise.
- (gfc_error): Likewise.
- (gfc_internal_error): Likewise.
-
-2015-11-05 Cesar Philippidis <cesar@codesourcery.com>
-
- * openmp.c (gfc_match_omp_clauses): Update support for the tile
- and default clauses in OpenACC.
- (gfc_match_oacc_update): Error when data clauses are supplied.
- (oacc_compatible_clauses): Delete.
- (resolve_omp_clauses): Give special care for OpenACC reductions.
- Also update error reporting for the tile clause.
- (resolve_oacc_loop_blocks): Update error reporting for the tile clause.
- * trans-openmp.c (gfc_trans_omp_clauses): Update OMP_CLAUSE_SEQ. Add
- OMP_CLAUSE_{AUTO,TILE} and add support the the gang static argument.
- (gfc_trans_oacc_combined_directive): Update the list of clauses which
- are split to acc loops.
-
-2015-11-05 Jakub Jelinek <jakub@redhat.com>
-
- * types.def (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR): Remove.
- (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): New.
-
-2015-11-03 Thomas Schwinge <thomas@codesourcery.com>
- Chung-Lin Tang <cltang@codesourcery.com>
-
- * gfortran.h (gfc_statement): Add ST_OACC_ATOMIC,
- ST_OACC_END_ATOMIC.
- (gfc_exec_op): Add EXEC_OACC_ATOMIC.
- * match.h (gfc_match_oacc_atomic): New prototype.
- * openmp.c (gfc_match_omp_atomic, gfc_match_oacc_atomic): New
- wrapper functions around...
- (gfc_match_omp_oacc_atomic): ... this new function.
- (oacc_code_to_statement, gfc_resolve_oacc_directive): Handle
- EXEC_OACC_ATOMIC.
- * parse.c (decode_oacc_directive): Handle "atomic", "end atomic".
- (case_exec_markers): Add ST_OACC_ATOMIC.
- (gfc_ascii_statement): Handle ST_OACC_ATOMIC, ST_OACC_END_ATOMIC.
- (parse_omp_atomic): Rename to...
- (parse_omp_oacc_atomic): ... this new function. Add omp_p formal
- parameter. Adjust all users.
- (parse_executable): Handle ST_OACC_ATOMIC.
- (is_oacc): Handle EXEC_OACC_ATOMIC.
- * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
- EXEC_OACC_ATOMIC.
- * st.c (gfc_free_statement): Handle EXEC_OACC_ATOMIC.
- * trans-openmp.c (gfc_trans_oacc_directive): Handle
- EXEC_OACC_ATOMIC.
- * trans.c (trans_code): Handle EXEC_OACC_ATOMIC.
-
-2015-10-31 Cesar Philippidis <cesar@codesourcery.com>
-
- PR Bootstrap/68168
-
- * openmp.c (resolve_omp_clauses): Pass &n->where when calling
- gfc_error.
-
-2015-10-30 Cesar Philippidis <cesar@codesourcery.com>
-
- * gfortran.h (gfc_omp_namespace): Add locus where member.
- * openmp.c (gfc_match_omp_variable_list): Set where for each list
- item found.
- (resolve_omp_clauses): Remove where argument and use the where
- gfc_omp_namespace member when reporting errors.
- (resolve_omp_do): Update call to resolve_omp_clauses.
- (resolve_oacc_loop): Likewise.
- (gfc_resolve_oacc_directive): Likewise.
- (gfc_resolve_omp_directive): Likewise.
- (gfc_resolve_omp_declare_simd): Likewise.
-
-2015-10-15 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/51993
- * decl.c (gfc_set_constant_character_len): Convert gcc_assert into an
- if-statement causing an early return leads to valid error message.
-
-2015-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/36192
- * interface.c (get_expr_storage_size): Check for INTEGER type before
- calling gmp routines.
-
-2015-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68154
- * decl.c (add_init_expr_to_sym): if the char length in the typespec
- is NULL, check for and use a constructor.
-
-2015-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68054
- * decl.c (match_attr_spec): PROTECTED can only be a module.
-
-2015-10-29 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67885
- * trans-decl.c (generate_local_decl): Mark PARAMETER entities in
- BLOCK construct.
-
-2015-10-29 Andrew MacLeod <amacleod@redhat.com>
-
- * array.c: Reorder #include's and remove duplicates.
- * convert.c: Likewise.
- * cpp.c: Likewise.
- * decl.c: Likewise.
- * f95-lang.c: Likewise.
- * frontend-passes.c: Likewise.
- * iresolve.c: Likewise.
- * match.c: Likewise.
- * module.c: Likewise.
- * options.c: Likewise.
- * parse.c: Likewise.
- * resolve.c: Likewise.
- * simplify.c: Likewise.
- * target-memory.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-const.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-io.c: Likewise.
- * trans-openmp.c: Likewise.
- * trans-stmt.c: Likewise.
- * trans-types.c: Likewise.
- * trans.c: Likewise.
-
-2015-10-29 Richard Biener <rguenther@suse.de>
-
- * f95-lang.c: Properly build variadic types for classification
- and comparison builtins.
-
-2015-10-27 Thomas Schwinge <thomas@codesourcery.com>
- James Norris <jnorris@codesourcery.com>
-
- PR fortran/63865
- * openmp.c (resolve_oacc_cache): Remove function.
- (gfc_match_oacc_cache): Enable array sections.
- (resolve_omp_clauses, gfc_resolve_oacc_directive): Change
- accordingly.
- * trans-openmp.c (gfc_trans_omp_clauses): Likewise.
-
-2015-10-27 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68108
- * decl.c (char_len_param_value): Check for REF_ARRAY.
-
-2015-10-26 Louis Krupp <louis.krupp@zoho.com>
-
- PR fortran/66056
- * fortran.h: Include namespace pointer in statement label
- structure.
- * symbol.c (gfc_get_st_label): Store pointer to namespace
- that owns the statement label tree in each label.
- (gfc_free_st_label): Use namespace owning statement label
- tree when deleting statement label.
- * io.c: Initialize format_asterisk with NULL namespace pointer.
-
-2015-10-26 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/36192
- * array.c (gfc_ref_dimen_size): Check for BT_INTEGER before calling
- mpz_set.
-
-2015-10-26 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/66927
- * trans-array.c (evaluate_bound): For deferred length arrays get the
- bounds directly from the descriptor, i.e., prevent using constant
- zero lower bound from the gfc_conv_array_lbound () routine.
- (gfc_conv_section_startstride): Hand deferred array status to
- evaluate_bound ().
- (gfc_conv_expr_descriptor): Same.
-
-2015-01-25 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/67171
- * trans-array.c (structure_alloc_comps): On deallocation of
- class components, reset the vptr to the declared type vtable
- and reset the _len field of unlimited polymorphic components.
- *trans-expr.c (gfc_find_and_cut_at_last_class_ref): Bail out on
- allocatable component references to the right of part reference
- with non-zero rank and return NULL.
- (gfc_reset_vptr): Simplify this function by using the function
- gfc_get_vptr_from_expr. Return if the vptr is NULL_TREE.
- (gfc_reset_len): If gfc_find_and_cut_at_last_class_ref returns
- NULL return.
- * trans-stmt.c (gfc_trans_allocate): Rely on the use of
- gfc_trans_assignment if expr3 is a variable expression since
- this deals correctly with array sections.
-
-2015-10-25 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/66927
- PR fortran/67044
- * trans-array.c (build_array_ref): Modified call to
- gfc_get_class_array_ref to adhere to new interface.
- (gfc_conv_expr_descriptor): For one-based arrays that
- are filled by a loop starting at one the start index of the
- source array has to be mangled into the offset.
- * trans-expr.c (gfc_get_class_array_ref): When the tree to get
- the _data component is present already, add a way to supply it.
- (gfc_copy_class_to_class): Allow to copy to a derived type also.
- * trans-stmt.c (gfc_trans_allocate): Do not conv_expr_descriptor
- for functions returning a class or derived object. Get the
- reference instead.
- * trans.h: Interface change of gfc_get_class_array_ref.
-
-2015-10-24 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68055
- * decl.c (gfc_match_decl_type_spec): Check for valid kind in old-style
- declarations.
-
-2015-10-24 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67805
- * array.c (gfc_match_array_constructor): Check for error from type
- spec matching.
- * decl.c (char_len_param_value): Check for valid of charlen parameter.
- Reap dead code dating to 2008.
- match.c (gfc_match_type_spec): Special case the keyword use in REAL.
-
-2015-10-23 Mikhail Maltsev <maltsevm@gmail.com>
-
- * trans-common.c (create_common): Adjust to use flag_checking.
- * trans.c (gfc_add_modify_loc): Use gcc_checking_assert.
-
-2015-10-21 Martin Sebor <msebor@redhat.com>
-
- PR driver/68043
- * lang.opt: End each sentence that describes an option with a period.
-
-2015-10-21 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67939
- * data.c (create_character_initializer): Deal with zero length string.
-
-2015-10-19 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * resolve.c (gfc_verify_binding_labels): Check for NULL pointer.
-
-2015-10-19 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/68019
- * decl.c (add_init_expr_to_sym): Remove an assert() to allow an error
- message to be issued.
-
-2015-10-18 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/67758
- * gfortran.h (gfc_symbol): Expand comment.
- * match.c (gfc_match_common): Delay adding the symbol to
- the common_block after the gfc_add_in_common call.
- * symbol.c (gfc_free_symbol): Move common block memory handling...
- (gfc_set_symbol_common_block): ... here as a new function.
- (restore_old_symbol): Restore common block fields.
- (gfc_restore_last_undo_checkpoint):
- Check the common_block pointer instead of the in_common attribute.
- When a symbol has been removed from the common block linked list,
- clear its common_next pointer.
-
-2015-10-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/67177
- PR fortran/67977
- * primary.c (match_substring): Add an argument 'deferred' to
- flag that a substring reference with null start and end should
- not be optimized away for deferred length strings.
- (match_string_constant, gfc_match_rvalue): Set the argument.
- * trans-expr.c (alloc_scalar_allocatable_for_assignment): If
- there is a substring reference return.
- * trans-intrinsic.c (conv_intrinsic_move_alloc): For deferred
- characters, assign the 'from' string length to the 'to' string
- length. If the 'from' expression is deferred, set its string
- length to zero. If the 'to' expression has allocatable
- components, deallocate them.
-
-2015-10-17 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67987
- * decl.c (char_len_param_value): Unwrap unlong line. If LEN < 0,
- force it to zero per the Fortran 90, 95, 2003, and 2008 Standards.
- * resolve.c (gfc_resolve_substring_charlen): Unwrap unlong line.
- If 'start' is larger than 'end', length of substring is negative,
- so explicitly set it to zero.
- (resolve_charlen): Remove -Wsurprising warning. Update comment to
- reflect that the text is from the F2008 standard.
-
-2015-10-16 Richard Biener <rguenther@suse.de>
-
- * trans-intrinsic.c (gfc_conv_intrinsic_lib_function): Adjust
- calls to build_addr.
- (gfc_conv_intrinsic_mod): Likewise.
- (gfc_conv_intrinsic_ctime): Likewise.
- (gfc_conv_intrinsic_fdate): Likewise.
- (gfc_conv_intrinsic_ttynam): Likewise.
- (gfc_conv_intrinsic_minmax_char): Likewise.
- (gfc_conv_intrinsic_index_scan_verify): Likewise.
- (gfc_conv_intrinsic_trim): Likewise.
-
-2015-10-14 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
-
- * parse.c (decode_statement): Initialize M to MATCH_NO.
-
-2015-10-13 Jakub Jelinek <jakub@redhat.com>
- Ilya Verbin <ilya.verbin@intel.com>
-
- * f95-lang.c (DEF_FUNCTION_TYPE_9, DEF_FUNCTION_TYPE_10,
- DEF_FUNCTION_TYPE_11, DEF_FUNCTION_TYPE_VAR_1): Define.
- * trans-openmp.c (gfc_trans_omp_clauses): Set
- OMP_CLAUSE_IF_MODIFIER to ERROR_MARK, OMP_CLAUSE_ORDERED_EXPR
- to NULL.
- (gfc_trans_omp_critical): Adjust for addition of clauses.
- (gfc_trans_omp_ordered): Likewise.
- * types.def (BT_FN_BOOL_UINT_LONGPTR_LONGPTR_LONGPTR,
- BT_FN_BOOL_UINT_ULLPTR_ULLPTR_ULLPTR,
- BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR,
- BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR,
- BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_UINT_PTR,
- BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR,
- BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR_INT,
- BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_LONG_LONG_LONG,
- BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_ULL_ULL_ULL,
- BT_FN_VOID_LONG_VAR, BT_FN_VOID_ULL_VAR): New.
- (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR,
- BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR,
- BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR): Remove.
-
-2015-10-07 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/65889
- * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Handle pointer to and
- on stack class objects as sizeof parameter.
-
-2015-10-06 Louis Krupp <louis.krupp@zoho.com>
- PR fortran/65766
- * resolve.c (gfc_resolve_substring_charlen): For derived type,
- use typespec of string component when resolving substring length.
-
-2015-10-04 Mikael Morin <mikael@gcc.gnu.org>
-
- * match.c (gfc_match_common): Remove dead variable old_blank_common.
-
-2015-10-04 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/67758
- * match.c (gfc_match_common): Delay the common_block pointer
- assignment after error checking.
- Delay the call to gfc_add_in_common attribute after the handling
- of array specs.
- * resolve.c (resolve_common_vars): Call gfc_add_in_common again.
-
-2015-10-04 Mikael Morin <mikael@gcc.gnu.org>
-
- * resolve.c (resolve_common_vars): Move access to the common
- block's head symbol inside the function.
- (resolve_common_blocks, resolve_types): Update callers.
-
-2015-10-01 Louis Krupp <louis.krupp@zoho.com>
-
- PR fortran/62242
- PR fortran/52332
- * trans-array.c
- (store_backend_decl): Create new gfc_charlen instance if requested
- (get_array_ctor_all_strlen): Call store_backend_decl requesting
- new gfc_charlen
- (trans_array_constructor): Call store_backend_decl requesting
- new gfc_charlen if get_array_ctor_strlen was called
- (gfc_add_loop_ss_code): Don't try to convert non-constant length
-
-2015-10-01 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran.67802
- * decl.c (add_init_expr_to_sym): Numeric constant for character
- length must be an INTEGER.
-
-2015-10-01 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66979
- * io.c (gfc_resolve_filepos): Check for a UNIT number. Add a nearby
- missing 'return false'.
-
-2015-10-01 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67616
- * primary.c (gfc_match_structure_constructor): Use a possibly
- host-associated symtree to prevent ICE.
-
-2015-09-28 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/40054
- PR fortran/63921
- * decl.c (get_proc_name): Return if statement function is
- found.
- * expr.c (gfc_check_vardef_context): Add error return for
- derived type expression lacking the derived type itself.
- * match.c (gfc_match_ptr_fcn_assign): New function.
- * match.h : Add prototype for gfc_match_ptr_fcn_assign.
- * parse.c : Add static flag 'in_specification_block'.
- (decode_statement): If in specification block match a statement
- function, then, if no error arising from statement function
- matching, try to match pointer function assignment.
- (parse_interface): Set 'in_specification_block' on exiting from
- parse_spec.
- (parse_spec): Set and then reset 'in_specification_block'.
- (gfc_parse_file): Set 'in_specification_block'.
- * resolve.c (get_temp_from_expr): Extend to include functions
- and array constructors as rvalues..
- (resolve_ptr_fcn_assign): New function.
- (gfc_resolve_code): Call it on finding a pointer function as an
- lvalue. If valid or on error, go back to start of resolve_code.
- * symbol.c (gfc_add_procedure): Add a sentence to the error to
- flag up the ambiguity between a statement function and pointer
- function assignment at the end of the specification block.
-
-2015-09-28 Nathan Sidwell <nathan@codesourcery.com>
-
- * f95-lang.c (DEF_FUNCTION_TYPE_VAR_6): New.
- (DEF_FUNCTION_TYPE_VAR_11): Delete.
- * types.def (DEF_FUNCTION_TYPE_VAR_6): New.
- (DEF_FUNCTION_TYPE_VAR_11): Delete.
-
-2015-09-26 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/67721
- * trans-expr.c (gfc_trans_assignment_1): Remove the non-constantness
- condition guarding deep copy.
-
-2013-09-26 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/67567
- * resolve.c (resolve_fl_procedure): For module procedures, take
- the parent module name and the submodule name from the name of
- the namespace.
-
-2015-09-25 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67614
- * resolve.c (gfc_resolve_code): Prevent ICE for invalid EXPR_NULL.
-
-2015-09-25 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67525
- * parse.c (match_deferred_characteristics): Remove an assert, which
- allows an invalid SELECT TYPE selector to be detected.
-
-2015-09-25 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR pretty-print/67567
- * resolve.c (resolve_fl_procedure): Work-around when iface->module
- == NULL.
-
-2015-09-21 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * resolve.c (nonscalar_typebound_assign): Fix typos in comment.
-
-2015-09-21 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67615
- * resolve.c (gfc_resolve_code): Check for scalar expression in
- arithmetic-if.
-
-2015-09-17 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/52846
- PR fortran/67588
- * module.c : Add static no_module_procedures.
- (gfc_match_submodule): Correct memory leakage caused during the
- freeing of use_lists.
- (mio_symbol_attribute): Reset above if module procedure is
- encountered.
- (gfc_dump_module): Set above and exit without writing smod file
- if it reset.
- * gfortran.texi : Add section on submodule support.
-
-2015-09-10 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/67526
- * expr.c (gfc_check_init_expr): Do not dereference a NULL pointer.
-
-2015-09-10 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/66993
- * module.c (read_module): If a symtree exists and the symbol has
- been associated in a submodule from a parent (sub)module, attach
- the symbol to a 'unique symtree' and the new symbol to the
- existing symtree.
-
-2015-09-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsic.h (gfc_simplify_mvbits): Remove.
- * simplify.c (gfc_simplify_mvbits): Remove.
- * intrinsic.c (add_subroutines): Remove reference to
- gfc_simplify_mvbits.
-
-2015-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR fortran/67429
- * error.c (gfc_clear_pp_buffer): Reset last_location, otherwise
- caret lines might be skipped when actually giving a diagnostic.
-
-2015-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/54833
- * trans.c (gfc_call_free): Don't check if pointer is NULL.
- * trans.h (gfc_call_free): Adjust comment.
-
-2015-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans.c (gfc_call_malloc, gfc_allocate_using_malloc,
- gfc_allocate_using_lib, gfc_allocate_allocatable,
- gfc_call_realloc): Simplify code.
- * trans-array.c (gfc_trans_allocate_array_storage,
- gfc_trans_auto_array_allocation, gfc_conv_array_parameter): Do not
- convert gfc_call_free() argument.
- * trans-expr.c (gfc_conv_string_tmp, gfc_conv_procedure_call,
- fcncall_realloc_result): Likewise.
- * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Likewise.
-
-2015-08-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/53668
- * intrinsic.c (add_functions, add_subroutines): Remove resolution
- functions for FREE and MALLOC.
- * intrinsic.h (gfc_resolve_malloc, gfc_resolve_free): Remove.
- * iresolve.c (gfc_resolve_malloc, gfc_resolve_free): Remove.
- * trans-intrinsic.c (conv_intrinsic_free,
- gfc_conv_intrinsic_malloc): New functions.
-
-2015-08-24 Louis Krupp <louis.krupp@zoho.com>
-
- PR fortran/62536
- PR fortran/66175
- * decl.c (gfc_match_end): Clean up nested BLOCKs.
- * parse.c (parse_block_construct): Deal gracefully with cleaned-up
- BLOCKs.
-
-2015-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/54572
- * config-lang.in: Add libbacktrace to target_libs.
-
-2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
-
- * dependency.c, dependency.h, gfortran.h, io.c, module.c,
- parse.h, resolve.c, trans-types.h, trans.h: remove useless typedefs.
-
-2015-08-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/54656
- * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Add decl
- for quadruple precision BUILT_IN_SQRT.
-
-2015-08-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-intrinsic.c (conv_intrinsic_ieee_is_negative): Use type
- generic BUILT_IN_SIGNBIT.
- (conv_intrinsic_ieee_copy_sign): Likewise.
- * f95-lang.c (gfc_init_builtin_functions): Add BUILT_IN_ISINF,
- BUILT_IN_ISINF_SIGN, BUILT_IN_SIGNBIT, BUILT_IN_ISLESS,
- BUILT_IN_ISLESSGREATER, BUILT_IN_ISGREATER. Remove non-type generic
- variants of BUILT_IN_SIGNBIT.
- * mathbuiltins.def: Remove SIGNBIT.
-
-2015-08-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/41387
- * gfortran.texi: New section "File operations on symbolic links".
-
-2015-08-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/67059
- * gfortranspec.c (lang_specific_driver): Adjust --version output.
-
-2015-08-08 Bud Davis <jmdavis@link.com>
- Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/59746
- * symbol.c (gfc_restore_last_undo_checkpoint): Delete a common block
- symbol if it was put in the list.
-
-2015-08-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/64104
- * expr.c (gfc_check_init_expr): Allow some IEEE functions in
- constant expressions.
- (external_spec_function): Allow some IEEE functions in specification
- expressions.
- * simplify.c (gfc_simplify_ieee_selected_real_kind): Remove.
- (simplify_ieee_selected_real_kind, simplify_ieee_support,
- matches_ieee_function_name, gfc_simplify_ieee_functions): New
- functions.
- * gfortran.h (gfc_simplify_ieee_selected_real_kind): Remove
- prototype.
- (gfc_simplify_ieee_functions): Add prototype.
-
-2015-08-06 Mikael Morin <mikael@gcc.gnu.org>
-
- * trans.h (gfc_trans_scalar_assign): Remove fourth argument.
- * trans-expr.c (gfc_trans_scalar_assign): Merge fourth into sixth
- argument.
- (gfc_conv_subref_array_arg, gfc_trans_subarray_assign,
- gfc_trans_subcomponent_assign, gfc_trans_assignment_1): Update callers.
- * trans-array.c (gfc_conv_expr_descriptor): Ditto.
- * trans-stmt.c (forall_make_variable_temp,
- generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
- gfc_trans_where_assign, gfc_trans_where_3): Ditto.
-
-2015-08-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/52846
- * module.c (check_access): Return true if new static flag
- 'dump_smod' is true..
- (gfc_dump_module): Rename original 'dump_module' and call from
- new version. Use 'dump_smod' rather than the stack state to
- determine if a submodule is being processed. The new version of
- this procedure sets 'dump_smod' depending on the stack state and
- then writes both the mod and smod files if a module is being
- processed or just the smod for a submodule.
- (gfc_use_module): Eliminate the check for module_name and
- submodule_name being the same.
- * trans-decl.c (gfc_finish_var_decl, gfc_build_qualified_array,
- get_proc_pointer_decl): Set TREE_PUBLIC unconditionally and use
- the conditions to set DECL_VISIBILITY as hidden and to set as
- true DECL_VISIBILITY_SPECIFIED.
-
-2015-08-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/64022
- * simplify.c (gfc_simplify_ieee_selected_real_kind): Extend IEEE
- support to all real kinds.
-
-2015-08-03 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66942
- * trans-expr.c (gfc_conv_procedure_call): Avoid NULL pointer reference
-
-2015-08-03 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/64921
- * class.c (generate_finalization_wrapper): Set finalization
- procedure symbol's always_explicit attribute.
-
-2015-08-01 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/67091
- * trans-intrinsic.c (gfc_conv_associated): Add the pre and post
- blocks for the second argument to se.
-
-2015-07-27 Thomas Schwinge <thomas@codesourcery.com>
-
- * parse.c (parse_oacc_structured_block): Fix logic error.
- Reported by Mikael Morin <mikael.morin@sfr.fr>.
-
-2015-07-24 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/64986
- * trans-expr.c (gfc_trans_assignment_1): Put component deallocation
- code at the beginning of the block.
-
-2015-07-22 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/61831
- PR fortran/66929
- * trans-array.c (gfc_get_proc_ifc_for_expr): Use esym as procedure
- symbol if available.
-
-2015-07-17 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/52846
- * decl.c (gfc_match_end): Pick out declared submodule name from
- the composite identifier.
- * gfortran.h : Add 'submodule_name' to gfc_use_list structure.
- * module.c (gfc_match_submodule): Define submodule_name and add
- static 'submodule_name'.
- (gfc_match_submodule): Build up submodule filenames, using '@'
- as a delimiter. Store the output filename in 'submodule_name'.
- Similarly, the submodule identifier is built using '.' as an
- identifier.
- (gfc_dump_module): If current state is COMP_SUBMODULE, write
- to file 'submodule_name', using SUBMODULE_EXTENSION.
- (gfc_use_module): Similarly, use the 'submodule_name' field in
- the gfc_use_list structure and SUBMODULE_EXTENSION to read the
- implicitly used submodule files.
-
-2015-07-17 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
-
- * trans-intrinsic.c (conv_co_collective): Remove redundant address
- operator in the generated code.
-
-2015-07-17 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/66035
- * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_assignment):
- Compute the size to allocate for class and derived type objects
- correclty.
- (gfc_trans_subcomponent_assign): Only allocate memory for a
- component when the object to assign is not an allocatable class
- object (the memory is already present for allocatable class objects).
- Furthermore use copy_class_to_class for assigning the rhs to the
- component (may happen for dummy class objects on the rhs).
-
-2015-07-17 Mikael Morin <mikael@gcc.gnu.org>
- Dominique d'Humieres <dominiq@lps.ens.fr>
-
- PR fortran/61831
- * trans-array.c (gfc_conv_array_parameter): Guard allocatable
- component deallocation code generation with descriptorless
- calling convention flag.
- * trans-expr.c (gfc_conv_expr_reference): Remove allocatable
- component deallocation code generation from revision 212329.
- (expr_may_alias_variables): New function.
- (gfc_conv_procedure_call): New boolean elemental_proc to factor
- check for procedure elemental-ness. Rename boolean f to nodesc_arg
- and declare it in the outer scope. Use expr_may_alias_variables,
- elemental_proc and nodesc_arg to decide whether generate allocatable
- component deallocation code.
- (gfc_trans_subarray_assign): Set deep copy flag.
-
-2015-07-16 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66724
- PR fortran/66724
- * io.c (is_char_type): Call gfc_resolve_expr ().
- (match_open_element, match_dt_element, match_inquire_element): Fix
- ASYNCHRONOUS case.
-
-2015-07-15 Andrew MacLeod <amacleod@redhat.com>
-
- * trans-types.c: Remove multiline #include comment.
-
-2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * simplify.c (gfc_simplify_floor): Set precision of temporary to
- that of arg.
-
-2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org>
-
- PR fortran/64589
- * class.c (find_intrinsic_vtab): Put/Search vtabs for intrinsic
- types in the top-level namespace.
-
-2015-07-12 Aldy Hernandez <aldyh@redhat.com>
-
- * trans-stmt.c: Fix double word typos.
-
-2015-07-09 Andrew MacLeod <amacleod@redhat.com>
-
- * arith.c: Adjust includes for flags.h changes.
- * array.c: Likewise.
- * check.c: Likewise.
- * decl.c: Likewise.
- * error.c: Likewise.
- * expr.c: Likewise.
- * frontend-passes.c: Likewise.
- * interface.c: Likewise.
- * intrinsic.c: Likewise.
- * io.c: Likewise.
- * match.c: Likewise.
- * openmp.c: Likewise.
- * parse.c: Likewise.
- * primary.c: Likewise.
- * resolve.c: Likewise.
- * scanner.c: Likewise.
- * simplify.c: Likewise.
- * symbol.c: Likewise.
- * target-memory.c: Likewise.
-
-2015-07-07 Andrew MacLeod <amacleod@redhat.com>
-
- * convert.c: Adjust includes.
- * cpp.c: Likewise.
- * decl.c: Likewise.
- * f95-lang.c: Likewise.
- * iresolve.c: Likewise.
- * match.c: Likewise.
- * module.c: Likewise.
- * options.c: Likewise.
- * target-memory.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-const.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-io.c: Likewise.
- * trans-openmp.c: Likewise.
- * trans-stmt.c: Likewise.
- * trans-types.c: Likewise.
- * trans.c: Likewise.
-
-2015-07-07 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/66578
- * trans-array.c (gfc_conv_expr_descriptor): Ensure array descriptor
- is one-based for non-full array refs. Correct the offset when a
- rank_remap occurs.
-
-2015-07-06 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * io.c (check_char_variable): New function.
- (match_open_element, match_close_element, match_file_element,
- match_dt_element, match_inquire_element, match_wait_element): Use it.
-
-2015-07-06 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/58586
- * resolve.c (resolve_symbol): Non-private functions in modules
- with allocatable or pointer components are marked referenced
- now. Furthermore is the default init especially for those
- components now done in gfc_conf_procedure_call preventing
- duplicate code.
- * trans-decl.c (gfc_generate_function_code): Generate a fake
- result decl for functions returning an object with allocatable
- components and initialize them.
- * trans-expr.c (gfc_conv_procedure_call): For value typed trees
- use the tree without indirect ref. And for non-decl trees
- add a temporary variable to prevent evaluating the tree
- multiple times (prevent multiple function evaluations).
- * trans.h: Made gfc_trans_structure_assign () protoype
- available, which is now needed by trans-decl.c:gfc_generate_
- function_code(), too.
-
-2015-07-04 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66725
- * io.c (is_char_type): New function to test for BT_CHARACTER
- (gfc_match_open, gfc_match_close, match_dt_element): Use it.
-
-2015-07-02 David Edelsohn <dje.gcc@gmail.com>
-
- * trans-common.c: Include <map> after system.h.
-
-2015-07-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/52846
- * decl.c (get_proc_name): Make a partially populated interface
- symbol to carry the characteristics of a module procedure and
- its result.
- (variable_decl): Declarations of dummies or results in the
- abreviated form of module procedure is an error.
- (gfc_match_import): IMPORT is not permitted in the interface
- declaration of module procedures.
- (match_attr_spec): Submodule variables have implicit save
- attribute for F2008 onwards.
- (gfc_match_prefix): Add 'module' as the a prefix and set the
- module_procedure attribute.
- (gfc_match_formal_arglist): For a module procedure keep the
- interface formal_arglist from the interface, match new the
- formal arguments and then compare the number and names of each.
- (gfc_match_procedure): Add case COMP_SUBMODULE.
- (gfc_match_function_decl, gfc_match_subroutine_decl): Set the
- module_procedure attribute.
- (gfc_match_entry, gfc_match_end): Add case COMP_SUBMODULE. If
- attr abr_modproc_decl is set, switch the message accordingly
- for subroutines and functions.
- (gfc_match_submod_proc): New function to match the abbreviated
- style of submodule declaration.
- * gfortran.h : Add ST_SUBMODULE and ST_END_SUBMODULE. Add the
- attribute bits 'used_in_submodule' and 'module_procedure'. Add
- the bit field 'abr_modproc_decl' to gfc_symbol. Add prototypes
- for 'gfc_copy_dummy_sym', 'gfc_check_dummy_characteristics' and
- 'gfc_check_result_characteristics'.
- * interface.c : Add the prefix 'gfc_' to the names of functions
- 'check_dummy(result)_characteristics' and all their references.
- * match.h : Add prototype for 'gfc_match_submod_proc' and
- 'gfc_match_submodule'.
- (check_sym_interfaces): A module procedure is not an error in
- a module procedure statment in a generic interface.
- * module.c (gfc_match_submodule): New function. Add handling
- for the 'module_procedure' attribute bit.
- (gfc_use_module): Make sure that a submodule cannot use itself.
- * parse.c (decode_statement): Set attr has_'import_set' for
- the interface declaration of module procedures. Handle a match
- occurring in 'gfc_match_submod_proc' and a match for
- 'submodule'.
- (gfc_enclosing_unit): Include the state COMP_SUBMODULE.
- (gfc_ascii_statement): Add END SUBMODULE.
- (accept_statement): Add ST_SUBMODULE.
- (parse_spec): Disallow statement functions in a submodule
- specification part.
- (parse_contained): Add ST_END_SUBMODULE and COMP_SUBMODULE
- twice each.
- (get_modproc_result): Copy the result symbol of the interface.
- (parse_progunit): Call it.
- (set_syms_host_assoc): Make symbols from the ancestor module
- and submodules use associated, as required by the standard and
- set all private components public. Module procedures 'external'
- attribute bit is reset and the 'used_in_submodule' bit is set.
- (parse_module): If this is a submodule, use the ancestor module
- and submodules. Traverse the namespace, calling
- 'set_syms_host_assoc'. Add ST_END_SUBMODULE and COMP_SUBMODULE.
- * parse.h : Add COMP_SUBMODULE.
- * primary.c (match_variable): Add COMP_SUBMODULE.
- * resolve.c (compare_fsyms): New function to compare the dummy
- characteristics of a module procedure with its interface.
- (resolve_fl_procedure): Compare the procedure, result and dummy
- characteristics of a module_procedure with its interface, using
- 'compare_fsyms' for the dummy arguments.
- * symbol.c (gfc_add_procedure): Suppress the check for existing
- procedures in the case of a module procedure.
- (gfc_add_explicit_interface): Skip checks that must fail for
- module procedures.
- (gfc_add_type): Allow a new type to be added to module
- procedures, their results or their dummy arguments.
- (gfc_copy_dummy_sym): New function to generate new dummy args
- and copy the characteristics from the interface.
- * trans-decl.c (gfc_sym_mangled_function_id): Module procedures
- must always have their names mangled as if they are symbols
- coming from a declaration in a module.
- (gfc_get_symbol_decl): Add 'used_in_submodule' to the assert.
- (gfc_finish_var_decl): Symbols with the 'used_in_submodule' bit
- set are set DECL_EXTERNAL as if they were use associated.
-
-2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/56520
- * match.c (gfc_match_name): Special case unary minus and plus.
-
-2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66545
- * primary.c (match_sym_complex_part): Do not dereference NULL pointer.
-
-2015-07-01 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- * arith.c (gfc_arith_divide): With -Winteger-division,
- warn about contant integer division if there is a non-zero
- remainder.
- * invoke.texi: Document -Winteger-division.
- * lang.opt: Add -Winteger-division.
-
-2015-06-25 Andrew MacLeod <amacleod@redhat.com>
-
- * f95-lang.c: Remove ipa-ref.h and plugin-api.h from include list.
- * trans-decl.c: Likewise.
-
-2015-06-25 Richard Sandiford <richard.sandiford@arm.com>
-
- * trans-decl.c (module_hasher): Likewise.
- * trans.h (module_decl_hasher): Likewise.
-
-2015-06-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR fortran/66528
- * error.c (gfc_warning_check): Restore the default output_buffer
- before calling diagnostic_action_after_output.
- (gfc_error_check): Likewise.
- (gfc_diagnostics_init): Add comment.
-
-2015-06-23 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/64674
- * parse.c (parse_associate): Figure the rank and as of a
- class array in an associate early.
- * primary.c (gfc_match_varspec): Prevent setting the
- dimension attribute on the sym for classes.
- * resolve.c (resolve_variable): Correct the component
- ref's type for associated variables. Add a full array ref
- when class array's are associated.
- (resolve_assoc_var): Correct the type of the symbol,
- when in the associate the expression's rank becomes scalar.
- * trans-expr.c (gfc_conv_variable): Indirect ref needed for
- allocatable associated objects.
-
-2015-06-19 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/66549
- * resolve.c (resolve_global_procedure): Don't save and restore
- OpenMP state around the call to gfc_resolve.
- (gfc_resolve): Save OpenMP state on entry and restore it on return.
-
-2015-06-17 Andrew MacLeod <amacleod@redhat.com>
-
- * convert.c: Do not include input.h, line-map.h or is-a.h.
- * cpp.c: Likewise.
- * decl.c: Likewise.
- * f95-lang.c: Likewise.
- * gfortran.h: Likewise.
- * iresolve.c: Likewise.
- * match.c: Likewise.
- * module.c: Likewise.
- * options.c: Likewise.
- * target-memory.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-const.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-io.c: Likewise.
- * trans-openmp.c: Likewise.
- * trans-stmt.c: Likewise.
- * trans-types.c: Likewise.
- * trans.c: Likewise.
-
-2015-06-15 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/44672
- PR fortran/45440
- PR fortran/57307
- * gfortran.h: Extend gfc_code.ext.alloc to carry a
- flag indicating that the array specification has to be
- taken from expr3.
- * resolve.c (resolve_allocate_expr): Add F2008 notify
- and flag indicating source driven array spec.
- (resolve_allocate_deallocate): Check for source driven
- array spec, when array to allocate has no explicit
- array spec.
- * trans-array.c (gfc_array_init_size): Get lower and
- upper bound from a tree array descriptor, except when
- the source expression is an array-constructor which is
- fixed to be one-based.
- (retrieve_last_ref): Extracted from gfc_array_allocate().
- (gfc_array_allocate): Enable allocate(array, source=
- array_expression) as specified by F2008:C633.
- (gfc_conv_expr_descriptor): Add class tree expression
- into the saved descriptor for class arrays.
- * trans-array.h: Add temporary array descriptor to
- gfc_array_allocate ().
- * trans-expr.c (gfc_conv_procedure_call): Special handling
- for _copy() routine translation, that comes without an
- interface. Third and fourth argument are now passed by value.
- * trans-stmt.c (gfc_trans_allocate): Get expr3 array
- descriptor for temporary arrays to allow allocate(array,
- source = array_expression) for array without array
- specification.
-
-2015-06-14 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- * intrinsic.texi: Change \leq to < in descrition of imaginary
- part in argument to log.
-
-2015-06-11 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/66079
- * trans-expr.c (gfc_conv_procedure_call): Allocatable scalar
- function results must be freed and nullified after use. Create
- a temporary to hold the result to prevent duplicate calls.
- * trans-stmt.c (gfc_trans_allocate): Rename temporary variable
- as 'source'. Deallocate allocatable components of non-variable
- 'source's.
-
-2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
-
- * f95-lang.c (gfc_create_decls): Register the main translation unit
- through the new debug hook.
-
-2015-06-08 Andrew MacLeod <amacleod@redhat.com>
-
- * convert.c : Adjust include files.
- * cpp.c : Likewise.
- * decl.c : Likewise.
- * f95-lang.c : Likewise.
- * gfortran.h : Likewise.
- * iresolve.c : Likewise.
- * match.c : Likewise.
- * module.c : Likewise.
- * openmp.c : Likewise.
- * options.c : Likewise.
- * target-memory.c : Likewise.
- * trans-array.c : Likewise.
- * trans-common.c : Likewise.
- * trans-const.c : Likewise.
- * trans-decl.c : Likewise.
- * trans-expr.c : Likewise.
- * trans-intrinsic.c : Likewise.
- * trans-io.c : Likewise.
- * trans-openmp.c : Likewise.
- * trans-stmt.c : Likewise.
- * trans-types.c : Likewise.
- * trans.c : Likewise.
-
-2015-06-08 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66245
- * match.c (gfc_match_type_is, gfc_match_class_is): Check if the
- return type spec or derived type spec is validate.
-
-2015-06-06 Thomas Koenig <tkoenig@netcologne.de>
-
- PR fortran/47659
- * arith.c (eval_intrinsic_op): Set warn flag for
- gfc_type_convert_binary if -Wconversion or -Wconversion-extra
- are set.
- (wprecision_real_real): New function.
- (wprecision_int_real): New function.
- (gfc_int2int): If -fno-range-check and -Wconversion are specified
- and it is a narrowing conversion, warn.
- (gfc_int2real): If there is a change in value for the conversion,
- warn.
- (gfc_int2complex): Likewise.
- (gfc_real2int): If there is a fractional part to the real number,
- warn with -Wconversion, otherwise warn with -Wconversion-extra.
- (gfc_real2real): Emit warning if the constant was changed by
- conversion with either -Wconversion or -Wconversion-extra. With
- -Wconversion-extra, warn if no warning was issued earlier.
- (gfc_real2complex): Likewise.
- (gfc_complex2int): For -Wconversion or -Wconversion-extra, if
- there was an imaginary part, warn; otherwise, warn for change in
- value. Warn with -Wconversion-extra if no other warning was
- issued.
- (gfc_complex2real): For -Wconversion or -Wconversion-extra, if
- there was an imaginary part, warn; otherwise, warn for change in
- value. Warn with -Wconversion-extra if no other warning was
- issued.
- (gfc_complex2complex): For -Wconversion, warn if the value of
- either the real or the imaginary part was changed. Warn for
- -Wconversion-extra if no prior warning was issued.
- * expr.c (gfc_check_assign): Remove check for change in value.
- * primary.c (match_real_constant): For -Wconversion-extra, check
- against a number in which the last non-zero digit has been
- replaced with a zero. If the number compares equal, warn.
- * intrinsic.c (gfc_convert_type_warn): Do not warn about constant
- conversions.
-
-2015-06-05 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66347
- * resolve.c (apply_default_init_local): Do not dereference a NULL
- pointer.
-
-2015-06-05 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/66385
- * frontend-passes.c (combine_array_constructor): Return early if
- inside a FORALL loop.
-
-2015-06-05 Aldy Hernandez <aldyh@redhat.com>
-
- * f95-lang.c (gfc_write_global_declarations): Remove.
- (LANG_HOOKS_WRITE_GLOBALS): Remove.
- (gfc_write_global_declarations): Move code from here to...
- (gfc_be_parse_file): ...here.
- Call global_decl_processing.
- * trans-decl.c (gfc_emit_parameter_debug_info): Rename global_decl
- to early_global_decl.
-
-2015-06-05 Russell Whitesides <russelldub@gmail.com>
- Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/40958
- PR fortran/60780
- PR fortran/66377
- * module.c (load_equiv): Add check for loading duplicate EQUIVALENCEs
- from different modules. Eliminate the pruning of unused
- equivalence-objects
-
-2015-06-04 Thomas Koenig <tkoenig@netcologne.de>
-
- PR fortran/58749
- * iresolve.c (gfc_resolve_adjustl): If string has a charlen,
- copy it to the function.
- (gfc_resolve_adjustr): Likewise.
-
-2015-06-04 Andrew MacLeod <amacleod@redhat.com>
-
- * convert.c: Adjust includes for restructured coretypes.h.
- * cpp.c: Likewise.
- * decl.c: Likewise.
- * f95-lang.c: Likewise.
- * iresolve.c: Likewise.
- * match.c: Likewise.
- * module.c: Likewise.
- * options.c: Likewise.
- * target-memory.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-const.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-io.c: Likewise.
- * trans-openmp.c: Likewise.
- * trans-stmt.c: Likewise.
- * trans-types.c: Likewise.
- * trans.c: Likewise.
-
-2015-06-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66380
- * simplify.c (gfc_simplify_reshape): Convert assert into returning
- NULL, which triggers an error condition.
-
-2015-05-27 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/65548
- * trans-stmt.c (gfc_trans_allocate): Add missing location
- information for e3rhs.
-
-2015-05-26 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/66082
- * trans-array.c (gfc_conv_array_parameter): Ensure that all
- non-variable arrays with allocatable components have the
- components deallocated after the procedure call.
-
-2015-05-24 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/66257
- * resolve.c (resolve_actual_arglist): Don't throw an error
- if the argument with procedure pointer component is not a variable.
-
-2015-05-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR fortran/44054
- * gfortran.h (struct gfc_error_buf): Rename as
- gfc_error_buffer. Move closer to push, pop and free
- methods. Reimplement using an output_buffer.
- * error.c (errors, warnings, warning_buffer, cur_error_buffer):
- Delete everywhere in this file.
- (error_char): Delete all contents.
- (gfc_increment_error_count): Delete.
- (gfc_error_now): Update comment. Set error_buffer.flag.
- (gfc_warning_check): Do not handle warning_buffer.
- (gfc_error_1): Delete.
- (gfc_error_now_1): Delete.
- (gfc_error_check): Simplify.
- (gfc_move_error_buffer_from_to): Renamed from
- gfc_move_output_buffer_from_to.
- (gfc_push_error): Handle only gfc_error_buffer.
- (gfc_pop_error): Likewise.
- (gfc_free_error): Likewise.
- (gfc_get_errors): Remove warnings and errors.
- (gfc_diagnostics_init): Use static error_buffer.
- (gfc_error_1,gfc_error_now_1): Delete declarations.
- * symbol.c, decl.c, trans-common.c, data.c, expr.c, expr.c,
- frontend-passes.c, resolve.c, match.c, parse.c: Replace
- gfc_error_1 with gfc_error and gfc_error_now_1 with gfc_error_1
- everywhere.
- * f95-lang.c (gfc_be_parse_file): Do not update errorcount and
- warningcount here.
- * primary.c (match_complex_constant): Replace gfc_error_buf and
- output_buffer with gfc_error_buffer.
-
-2015-05-22 Jim Wilson <jim.wilson@linaro.org>
-
- * Make-lang.in (check_gfortran_parallelize): Update comment.
-
-2015-05-21 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/66176
- * frontend-passes.c (check_conjg_variable): New function.
- (inline_matmul_assign): Use it to keep track of conjugated
- variables.
-
-2015-05-20 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/65548
- * trans-stmt.c (gfc_trans_allocate): Always retrieve the
- descriptor or a reference to a source= expression for
- arrays and non-arrays, respectively. Use a temporary
- symbol and gfc_trans_assignment for all source=
- assignments to allocated objects besides for class and
- derived types.
-
-2015-05-19 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/66199
- * trans-openmp.c (gfc_trans_omp_teams): Set OMP_TEAMS_COMBINED for
- combined constructs.
- (gfc_trans_omp_target): Make sure BIND_EXPR has non-NULL
- BIND_EXPR_BLOCK.
-
-2015-05-19 David Malcolm <dmalcolm@redhat.com>
-
- * cpp.c (maybe_print_line): Strengthen local "map" from
- const line_map * to const line_map_ordinary *.
- (cb_file_change): Likewise for param "map" and local "from".
- (cb_line_change): Likewise for local "map".
-
-2015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
-
- * interface.c (compare_actual_formal): Use std::swap instead of
- explicit swaps.
- * trans-array.c (gfc_trans_scalarized_loop_end): Likewise.
- * trans-intrinsic.c (walk_inline_intrinsic_transpose): Likewise.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66106
- * interface.c(gfc_match_end_interface): Enforce F2008 C1202 (R1201).
- * match.c(gfc_op2string): Return 'none' for INTRINSIC_NONE.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66057
- * decl.c(gfc_match_generic): Detected a malformed GENERIC statement.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66043
- * gfortran.dg/storage_size_6.f90: New tests.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66043
- * gfortran.dg/storage_size_6.f90: New tests.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66044
- * decl.c(gfc_match_entry): Change a gfc_internal_error() into
- a gfc_error()
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66043
- * gfortran.dg/storage_size_6.f90: New tests.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66040
- * parse.c(verify_st_order): Replace a gfc_internal_error with your
- generic gfc_error.
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/66039
- * io.c (match_filepos): Check for incomplete/mangled REWIND, FLUSH,
- BACKSPACE, and ENDFILE statements
-
-2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/64925
- * symbol.c(check_conflict): Check for a conflict between a dummy
- argument and an internal procedure name.
-
-2015-05-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/65903
- * io.c (format_lex): Change to NONSTRING when checking for
- possible doubled quote.
- * scanner.c (gfc_next_char_literal): Revert change from 64506
- and add a check for quotes and return.
-
-2015-05-16 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/66113
- * expr.c (is_parent_of_current_ns): New function.
- (check_restricted): Use it.
-
-2015-05-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
-
- PR fortran/44054
-
- Replace all calls to gfc_notify_std_1 with gfc_notify_std and
- gfc_warning_1 with gfc_warning.
- * decl.c (gfc_verify_c_interop_param): Here.
- * resolve.c (resolve_branch): Here.
- (resolve_fl_derived): Here.
- * dependency.c (gfc_check_argument_var_dependency):
- * scanner.c (preprocessor_line): Use gfc_warning_now_at. Fix line
- counter and locations before and after warning.
- * gfortran.h (gfc_warning_1, gfc_warning_now_1, gfc_notify_std_1):
- Delete.
- (gfc_warning_now_at): Declare.
- * error.c (gfc_warning_1): Delete.
- (gfc_notify_std_1): Delete.
- (gfc_warning_now_1): Delete.
- (gfc_format_decoder): Handle two locations.
- (gfc_diagnostic_build_prefix): Rename as
- gfc_diagnostic_build_kind_prefix.
- (gfc_diagnostic_build_locus_prefix): Take an expanded_location
- instead of diagnostic_info.
- (gfc_diagnostic_build_locus_prefix): Add overload that takes two
- expanded_location.
- (gfc_diagnostic_starter): Handle two locations.
- (gfc_warning_now_at): New.
- (gfc_diagnostics_init): Initialize caret_chars array.
- (gfc_diagnostics_finish): Reset caret_chars array to default.
-
-2015-05-16 Mikael Morin <mikael@gcc.gnu.org>
- Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/65792
- * trans-expr.c (gfc_trans_subcomponent_assign): Always assign
- the expression component to the destination. In addition, if
- the component has allocatable components, copy them and
- deallocate those of the expression, if it is not a variable.
- The expression is fixed if not a variable to prevent multiple
- evaluations.
-
-2015-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/66111
- * frontend-passes.c (has_dimen_vector_ref): New function.
- (inline_matmul_assign): Use it to return early in case
- of unhandled vector subscripts.
-
-2015-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/66041
- PR fortran/37131
- * gfortran.h (gfc_array_spec): Add field resolved.
- * array.c (gfc_resolve_array_spec): Resolve array spec
- only once.
-
-2015-05-11 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/66100
- * simplify.c (simplify_bound): Fix assert to accept subobject arrays.
-
-2015-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/66041
- * frontend-passes.c (scalarized_expr): Set correct dimension and
- shape for the expression to be passed to lbound. Remove trailing
- references after array refrence.
- (inline_matmul_assign): Remove gfc_copy_expr from calls
- to scalarized_expr().
-
-2015-05-10 Mikael Morin <mikael@gcc.gnu.org>
-
- * simplify.c (simplify_bound_dim): Don't check for emptyness
- in the case of cobound simplification. Factor lower/upper
- bound differenciation before the actual simplification.
- (simplify_bound): Remove assumed shape specific simplification.
- Don't give up early for the lbound of an assumed shape.
-
-2015-05-09 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/65894
- * trans-array.h (gfc_scalar_elemental_arg_saved_as_reference):
- New prototype.
- * trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
- New function.
- (gfc_add_loop_ss_code): Use gfc_scalar_elemental_arg_saved_as_reference
- as conditional.
- (gfc_walk_elemental_function_args): Set the dummy_arg field.
- * trans.h (gfc_ss_info): New subfield dummy_arg.
- * trans-expr.c (gfc_conv_procedure_call): Revert the change
- of revision 222361.
- (gfc_conv_expr): Use gfc_scalar_elemental_arg_saved_as_reference
- as conditional.
-
-2015-05-08 Mikael Morin <mikael@gcc.gnu.org>
-
- * trans-array.c (gfc_walk_elemental_function_args):
- Don't skip the advance to the next dummy argument when skipping
- absent optional args.
-
-2015-05-05 David Malcolm <dmalcolm@redhat.com>
-
- * expr.c (check_inquiry): Fix indentation so that it reflects the
- block structure.
- * interface.c (compare_parameter): Likewise.
- * parse.c (parse_oacc_structured_block): Likewise.
- * target-memory.c (expr_to_char): Likewise.
- * trans-types.c (gfc_init_kinds): Likewise.
-
-2015-05-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/65976
- * invoke.texi: Remove 'no-' in '-fno-fixed-form'
-
-2015-05-01 Mikael Morin <mikael@gcc.gnu.org>
-
- * simplify.c (simplify_bound_dim): Tighten the check for array fullness
- by also checking for absence of subreference.
- (simplify_bound): Don't skip simplification if the array
- has subreferences.
- (simplify_cobound): Same.
-
-2015-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/37131
- * simplify.c (simplify_bound): Get constant lower bounds of one
- from array spec for assumed and explicit shape shape arrays if
- the lower bounds are indeed one.
-
-2015-04-30 David Malcolm <dmalcolm@redhat.com>
-
- * options.c (gfc_init_options): Remove spurious second
- semicolon.
- * trans-stmt.c (gfc_trans_allocate): Likewise.
-
-2015-04-28 Andre Vehreschild <vehre@gmx.de>
-
- * interface.c (gfc_compare_types): Check for unlimited
- polymorphism flag in the correct position indepent of the _data
- component being present or not. This prevents a segfault, when
- the _data component is not present.
- * symbol.c (gfc_type_compatible): Same.
-
-2015-04-27 Jim Wilson <jim.wilson@linaro.org>
-
- * Make-lang.in (fortran.mostlyclean): Remove gfortran and
- gfortran-cross.
-
-2015-04-27 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/59678
- PR fortran/65841
- * trans-array.c (duplicate_allocatable): Fixed deep copy of
- allocatable components, which are liable for copy only, when
- they are allocated.
- (gfc_duplicate_allocatable): Add deep-copy code into if
- component allocated block. Needed interface change for that.
- (gfc_copy_allocatable_data): Supplying NULL_TREE for code to
- add into if-block for checking whether a component was
- allocated.
- (gfc_duplicate_allocatable_nocopy): Likewise.
- (structure_alloc_comps): Likewise.
- * trans-array.h: Likewise.
- * trans-expr.c (gfc_trans_alloc_subarray_assign): Likewise.
- * trans-openmp.c (gfc_walk_alloc_comps): Likewise.
-
-2015-04-23 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/60322
- * expr.c (gfc_lval_expr_from_sym): Code to select the regular
- or class array added.
- * gfortran.h: Add IS_CLASS_ARRAY macro.
- * trans-array.c (gfc_add_loop_ss_code): Treat class objects
- to be referenced always.
- (build_class_array_ref): Adapt retrieval of array descriptor.
- (build_array_ref): Likewise.
- (gfc_conv_array_ref): Hand the vptr or the descriptor to
- build_array_ref depending whether the sym is class or not.
- (gfc_trans_array_cobounds): Select correct gfc_array_spec for
- regular and class arrays.
- (gfc_trans_array_bounds): Likewise.
- (gfc_trans_dummy_array_bias): Likewise.
- (gfc_get_dataptr_offset): Correcting call of build_array_ref.
- (gfc_conv_expr_descriptor): Set the array's offset to -1 when
- lbound in inner most dim is 1 and symbol non-pointer/assoc.
- * trans-decl.c (gfc_build_qualified_array): Select correct
- gfc_array_spec for regular and class arrays.
- (gfc_build_dummy_array_decl): Likewise.
- (gfc_get_symbol_decl): Get a dummy array for class arrays.
- (gfc_trans_deferred_vars): Tell conv_expr that the descriptor
- is desired.
- * trans-expr.c (gfc_class_vptr_get): Get the class descriptor
- from the correct location for class arrays.
- (gfc_class_len_get): Likewise.
- (gfc_conv_intrinsic_to_class): Add handling of _len component.
- (gfc_conv_class_to_class): Prevent access to unset array data
- when the array is an optional argument. Add handling of _len
- component.
- (gfc_copy_class_to_class): Check that _def_init is non-NULL
- when used in _vptr->copy()
- (gfc_trans_class_init_assign): Ensure that the rank of
- _def_init is zero.
- (gfc_conv_component_ref): Get the _vptr along with _data refs.
- (gfc_conv_variable): Make sure the temp array descriptor is
- returned for class arrays, too, and that class arrays are
- dereferenced correctly.
- (gfc_conv_procedure_call): For polymorphic type initialization
- the initializer has to be a pointer to _def_init stored in a
- dummy variable, which then needs to be used by value.
- * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Use the
- temporary array descriptor for class arrays, too.
- (gfc_conv_intrinsic_storage_size): Likewise.
- (gfc_conv_intrinsic_loc): Add ref to _data for BT_CLASS
- expressions.
- * trans-stmt.c (trans_associate_var): Use a temporary array for
- the associate variable of class arrays, too, making the array
- one-based (lbound == 1).
- * trans-types.c (gfc_is_nodesc_array): Use the correct
- array data.
- * trans.c (gfc_build_array_ref): Use the dummy array descriptor
- when present.
- * trans.h: Add class_vptr to gfc_se for storing a class ref's
- vptr.
-
-2015-04-22 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/65429
- * decl.c (add_init_expr_to_sym): Set the length type parameter.
-
-2015-04-10 Tobias Burnus <burnus@net-b.de>
-
- * trans-stmt.c (gfc_trans_lock_unlock): Implement -fcoarray=lib
- version; reject not-yet-implemented variants.
- * trans-types.c (gfc_get_derived_type): For lock_type with
- -fcoarray=lib, use a void pointer as type.
- * trans.c (gfc_allocate_using_lib, gfc_allocate_allocatable):
- Handle lock_type with -fcoarray=lib.
-
-2015-04-10 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/56674
- PR fortran/58813
- PR fortran/59016
- PR fortran/59024
- * symbol.c (save_symbol_data, gfc_save_symbol_data): Rename the
- former to the latter and make it non-static. Update callers.
- * gfortran.h (gfc_save_symbol_data): New prototype.
- * decl.c (gfc_match_decl_type_spec): Call 'gfc_save_symbol_data'
- before modifying symbols 'sym' and 'dt_sym'.
-
-2013-04-09 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/56852
- * primary.c (gfc_variable_attr): Avoid ICE on AR_UNKNOWN if any
- of the index variables are untyped and errors are present.
-
-2015-04-07 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/65548
- * trans-stmt.c (gfc_trans_allocate): For intrinsic functions
- use conv_expr_descriptor() instead of conv_expr_reference().
-
-2015-03-30 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/65597
- * trans-openmp.c (gfc_trans_omp_do): For !simple simd with explicit
- linear clause for the iterator set OMP_CLAUSE_LINEAR_NO_COPYIN.
- For implcitly added !simple OMP_CLAUSE_LINEAR set it too. Use step 1
- instead of the original step on the new iterator - count.
-
-2015-03-25 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/64952
- PR fortran/65532
- * gfortran.h (struct gfc_namespace): New field 'types_resolved'.
- * resolve.c (resolve_types): Return early if field 'types_resolved'
- is set. Set 'types_resolved' at the end.
-
-2015-03-24 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/55901
- * trans-expr.c (gfc_conv_structure): Fixed indendation.
- Using integer_zero_node now instead of explicitly
- constructing a integer constant zero node.
- (gfc_conv_derived_to_class): Add handling of _len component,
- i.e., when the rhs has a string_length then assign that to
- class' _len, else assign 0.
- (gfc_conv_intrinsic_to_class): Likewise.
-
-2015-03-24 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/64787
- PR fortran/57456
- PR fortran/63230
- * class.c (gfc_add_component_ref): Free no longer needed
- ref-chains to prevent memory loss.
- (find_intrinsic_vtab): For deferred length char arrays or
- unlimited polymorphic objects, store the size in bytes of one
- character in the size component of the vtab.
- * gfortran.h: Added gfc_add_len_component () define.
- * trans-array.c (gfc_trans_create_temp_array): Switched to new
- function name for getting a class' vtab's field.
- (build_class_array_ref): Likewise.
- (gfc_array_init_size): Using the size information from allocate
- more consequently now, i.e., the typespec of the entity to
- allocate is no longer needed. This is to address the last open
- comment in PR fortran/57456.
- (gfc_array_allocate): Likewise.
- (structure_alloc_comps): gfc_copy_class_to_class () needs to
- know whether the class is unlimited polymorphic.
- * trans-array.h: Changed interface of gfc_array_allocate () to
- reflect the no longer needed typespec.
- * trans-expr.c (gfc_find_and_cut_at_last_class_ref): New.
- (gfc_reset_len): New.
- (gfc_get_class_array_ref): Switch to new function name for
- getting a class' vtab's field.
- (gfc_copy_class_to_class): Added flag to know whether the class
- to copy is unlimited polymorphic. Adding _len dependent code
- then, which calls ->vptr->copy () with four arguments adding
- the length information ->vptr->copy(from, to, from_len, to_cap).
- (gfc_conv_procedure_call): Switch to new function name for
- getting a class' vtab's field.
- (alloc_scalar_allocatable_for_assignment): Use the string_length
- as computed by gfc_conv_expr and not the statically backend_decl
- which may be incorrect when ref-ing.
- (gfc_trans_assignment_1): Use the string_length variable and
- not the rse.string_length. The former has been computed more
- generally.
- * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Switch to new
- function name for getting a class' vtab's field.
- (gfc_conv_intrinsic_storage_size): Likewise.
- (gfc_conv_intrinsic_transfer): Likewise.
- * trans-stmt.c (gfc_trans_allocate): Restructured to evaluate
- source=expr3 only once before the loop over the objects to
- allocate, when the objects are not arrays. Doing correct _len
- initialization and calling of vptr->copy () fixing PR 64787.
- (gfc_trans_deallocate): Reseting _len to 0, preventing future
- errors.
- * trans.c (gfc_build_array_ref): Switch to new function name
- for getting a class' vtab's field.
- (gfc_add_comp_finalizer_call): Likewise.
- * trans.h: Define the prototypes for the gfc_class_vtab_*_get ()
- and gfc_vptr_*_get () functions.
- Added gfc_find_and_cut_at_last_class_ref () and
- gfc_reset_len () routine prototype. Added flag to
- gfc_copy_class_to_class () prototype to signal an unlimited
- polymorphic entity to copy.
-
-2015-03-24 Iain Sandoe <iain@codesourcery.com>
- Tobias Burnus <burnus@net-b.de>
-
- * gfortran.texi (_gfortran_caf_sync_memory): Improve wording.
-
-2015-03-23 Paul Thomas <pault@gcc.gnu.org>
- Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/64952
- * gfortran.h (struct symbol_attribute) : New field
- 'array_outer_dependency'.
- * trans.h (struct gfc_ss_info): New field 'array_outer_dependency'.
- * module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY.
- (attr_bits): Append same value to initializer.
- (mio_symbol_attribute): Handle 'array_outer_dependency' attr
- in module read and write.
- * resolve.c (update_current_proc_outer_array_dependency): New function.
- (resolve_function, resolve_call): Add code to update current procedure's
- 'array_outer_dependency' attribute.
- (resolve_variable): Mark current procedure with attribute
- array_outer_dependency if the variable is an array coming from outside
- the current namespace.
- (resolve_fl_procedure): Mark a procedure without body with attribute
- 'array_outer_dependency'.
- * trans-array.c (gfc_conv_resolve_dependencies): If any ss is
- marked as 'array_outer_dependency' generate a temporary.
- (gfc_walk_function_expr): If the function may reference external arrays,
- mark the head gfc_ss with flag 'array_outer_dependency'.
-
-2015-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/59513
- * gfortran.texi (Read/Write after EOF marker): New information.
-
-2015-03-21 H.J. Lu <hongjiu.lu@intel.com>
-
- * gfortran.texi (_gfortran_caf_sync_memory): Put @{xxx} in one
- line.
-
-2015-03-21 Tobias Burnus <burnus@net-b.de>
-
- * gfortran.texi (_gfortran_caf_sync_all, _gfortran_caf_sync_images,
- _gfortran_caf_sync_memory, _gfortran_caf_error_stop,
- _gfortran_caf_error_stop_str, _gfortran_caf_atomic_define,
- _gfortran_caf_atomic_ref, _gfortran_caf_atomic_cas,
- _gfortran_caf_atomic_op): New sections.
-
-2015-03-21 Tobias Burnus <burnus@net-b.de>
-
- * trans-expr.c (gfc_get_tree_for_caf_expr): Reject unimplemented
- coindexed coarray accesses.
-
-2015-03-17 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/59198
- * trans-types.c (gfc_get_derived_type): If an abstract derived
- type with procedure pointer components has no other type of
- component, return the backend_decl. Otherwise build the
- components if any of the non-procedure pointer components have
- no backend_decl.
-
-2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/64432
- *trans-intrinisic.c (conv_intrinsic_system_clock): Check the
- smallest kind passed in user arguments and hardcode tesults for
- KIND=1 or KIND=2 to indicate no clock available.
-
-2015-03-16 Andre Vehreschild <vehre@gmx.de>
-
- * resolve.c: Prevent segfault on illegal input.
-
-2015-03-14 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/61138
- * trans-expr.c (gfc_trans_pointer_assignment): Clear DESCRIPTOR_ONLY
- field before reusing LSE.
-
-2015-03-11 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/65200
- * gfortran.texi: Document behavior when opening files without
- explicit ACTION= specifier.
-
-2015-03-10 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/65024
- * trans-expr.c (gfc_conv_component_ref): If the component
- backend declaration is missing and the derived type symbol is
- available in the reference, call gfc_build_derived_type.
-
-2015-03-10 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
- Tobias Burnus <burnus@net-b.de>
-
- * trans.h (caf_sync_memory): New function decl tree.
- * trans-decl.c (gfc_build_builtin_function_decls): Define it.
- (create_main_function): Don't call sync_synchronize and leave
- it to the CAF library.
- * trans-stmt.c (gfc_trans_stop): Ditto.
- (gfc_trans_sync): Ditto; add call library call for sync memory.
-
-2015-03-08 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/60898
- * resolve.c (resolve_symbol): Check that the symbol found by
- name lookup really is the current symbol being resolved.
-
-2015-03-02 Tobias Burnus <burnus@net-b.de>
-
- * check.c (gfc_check_atomic): Properly check for coarrayness
- and for being coindexed.
-
-2015-02-26 Martin Liska <mliska@suse.cz>
-
- * resolve.c: Rename enum 'comparison' to 'compare_result' as
- solution for -Wodr issue.
-
-2015-02-24 Thomas Schwinge <thomas@codesourcery.com>
-
- PR libgomp/64625
- * f95-lang.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
- Remove macros.
- (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
- * types.def (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
- (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
- Remove function types.
- (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR)
- (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR)
- (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
- New function types.
-
-2015-02-22 Bernd Edlinger <bernd.edlinger@hotmail.de>
-
- PR fortran/64980
- PR fortran/61960
- * trans-expr.c (gfc_apply_interface_mapping_to_expr): Remove mapping
- for component references to class objects.
- (gfc_conv_procedure_call): Compare the class by name.
-
-2015-02-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/64506
- * scanner.c (gfc_next_char_literal): For free form source,
- check for '!' and if found, clear the comment and go back
- and get the next character. For fixed form source, skip the
- rest of the line.
-
-2015-02-12 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/64932
- * trans-stmt.c (gfc_trans_deallocate): If a component array
- expression is not a descriptor type and it is a derived type
- that has allocatable components and is not finalizable, then
- deallocate the allocatable components.
-
-2015-02-08 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/63744
- * module.c (check_for_ambiguous): Change argument type
- from gfc_symbol to gfc_symtree. Check local (symtree) name
- instead of original (symbol) name.
- (read_module): Update caller.
-
-2015-02-06 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/63205
- * gfortran.h: Add 'must finalize' field to gfc_expr and
- prototypes for gfc_is_alloc_class_scalar_function and for
- gfc_is_alloc_class_array_function.
- * expr.c (gfc_is_alloc_class_scalar_function,
- gfc_is_alloc_class_array_function): New functions.
- * trans-array.c (gfc_add_loop_ss_code): Do not move the
- expression for allocatable class scalar functions outside the
- loop.
- (conv_array_index_offset): Cope with deltas being NULL_TREE.
- (build_class_array_ref): Do not return with allocatable class
- array functions. Add code to pick out the returned class array.
- Dereference if necessary and return if not a class object.
- (gfc_conv_scalarized_array_ref): Cope with offsets being NULL.
- (gfc_walk_function_expr): Return an array ss for the result of
- an allocatable class array function.
- * trans-expr.c (gfc_conv_subref_array_arg): Remove the assert
- that the argument should be a variable. If an allocatable class
- array function, set the offset to zero and skip the write-out
- loop in this case.
- (gfc_conv_procedure_call): Add allocatable class array function
- to the assert. Call gfc_conv_subref_array_arg for allocatable
- class array function arguments with derived type formal arg..
- Add the code for handling allocatable class functions, including
- finalization calls to prevent memory leaks.
- (arrayfunc_assign_needs_temporary): Return if an allocatable
- class array function.
- (gfc_trans_assignment_1): Set must_finalize to rhs expression
- for allocatable class functions. Set scalar_to_array as needed
- for scalar class allocatable functions assigned to an array.
- Nullify the allocatable components corresponding the the lhs
- derived type so that the finalization does not free them.
-
-2015-01-29 Andre Vehreschild <vehre@gmx.de>
- Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/60289
- Initial patch by Janus Weil
- * resolve.c (resolve_allocate_expr): Add check for comp. only
- when target is not unlimited polymorphic.
- * trans-stmt.c (gfc_trans_allocate): Assign correct value to
- _len component of unlimited polymorphic entities.
-
-2015-02-05 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/64943
- * resolve.c (resolve_transfer): Also check structure
- constructors.
-
-2015-02-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/64757
- * resolve.c (resolve_structure_cons): Obtain the rank of class
- components.
- * trans-expr.c (gfc_trans_alloc_subarray_assign): Do the
- assignment to allocatable class array components.
- (alloc_scalar_allocatable_for_subcomponent_assignment): If comp
- is a class component, allocate to the _data field.
- (gfc_trans_subcomponent_assign): If a class component with a
- derived type expression set the _vptr field and for array
- components, call gfc_trans_alloc_subarray_assign. For scalars,
- the assignment is performed here.
-
-2015-02-04 Jakub Jelinek <jakub@redhat.com>
-
- * options.c: Include langhooks.h.
- (gfc_post_options): Change lang_hooks.name based on
- selected -std= mode.
-
-2015-02-03 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * intrinsic.texi (CO_ASSOCIATED): c_prt_1 should be c_ptr_1.
-
-2015-01-30 Andre Vehreschild <vehre@gmx.de>
-
- * trans-decl.c (gfc_get_symbol_decl): Removed duplicate code.
- * trans-expr.c (gfc_conv_intrinsic_to_class): Fixed indentation.
- Fixed datatype of charlen to be a 32-bit int.
-
-2015-02-01 Joseph Myers <joseph@codesourcery.com>
-
- * error.c (gfc_warning (const char *, ...), gfc_warning_now (const
- char *, ...)): Remove functions.
- * gfortran.h (gfc_warning (const char *, ...), gfc_warning_now
- (const char *, ...)): Remove declarations.
- * arith.c, check.c, data.c, decl.c, frontend-passes.c,
- interface.c, intrinsic.c, io.c, matchexp.c, module.c, openmp.c,
- options.c, parse.c, primary.c, resolve.c, scanner.c, symbol.c,
- trans-common.c, trans-const.c, trans-stmt.c: All callers of
- gfc_warning and gfc_warning_now changed to pass 0 or option number
- as first argument.
-
-2015-01-30 Joseph Myers <joseph@codesourcery.com>
-
- * f95-lang.c, gfortranspec.c, trans-const.c, trans-expr.c: All
- callers of fatal_error changed to pass input_location as first
- argument.
-
-2015-01-28 Tobias Burnus <burnus@net-b.de>
-
- * intrinsic.texi (CO_BROADCAST): Correct argument description.
-
-2015-01-27 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/63861
- * trans-openmp.c (gfc_has_alloc_comps, gfc_trans_omp_clauses):
- Fix handling for scalar coarrays.
- * trans-types.c (gfc_get_element_type): Add comment.
-
-2015-01-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
-
- PR fortran/64771
- * interface.c: Remove <algorithm>.
- (check_dummy_characteristics): Use MAX instead of std::max.
-
-2015-01-26 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/62044
- * resolve.c (resolve_allocate_expr): If the default initializer
- is NULL, keep the original MOLD expression so that the correct
- typespec is available.
-
-2015-01-26 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/64771
- * interface.c (check_dummy_characteristics): Fix coarray handling.
-
-2015-01-26 Tobias Burnus <burnus@net-b.de>
-
- * io.c (gfc_match_inquire): Replace "-1" by a defined constant.
-
-2015-01-26 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/64230
- * class.c (finalize_component): New argument 'sub_ns'. Insert code to
- check if 'expr' is associated.
- (generate_finalization_wrapper): Rename 'ptr' symbols to 'ptr1' and
- 'ptr2'. Pass 'sub_ns' to finalize_component.
-
-2015-01-25 Mikael Morin <mikael@gcc.gnu.org>
-
- PR fortran/62044
- * decl.c (gfc_match_derived_decl): Don't insert a new symtree element.
- * module.c (MOD_VERSION): Bump.
- (write_module): Don't write list of extensions.
- (read_module): Don't jump over list of extensions;
- don't load list of extensions.
- (load_derived_extensions, write_dt_extensions,
- write_derived_extensions): Remove.
-
-2015-01-24 Tobias Burnus <burnus@net-b.de>
-
- * parse.c (gfc_parse_file): Fix two-location gfc_error call.
-
-2015-01-23 Martin Liska <mliska@suse.cz>
-
- * decl.c (attr_decl1): Workaround -Wmaybe-uninitialized
- false positive during profiledbootstrap by initializing them.
- * matchexp.c (match_mult_operand): Likewise.
- * module.c (write_atom): Likewise.
- (read_module): Likewise.
-
-2015-01-23 Tom de Vries <tom@codesourcery.com>
-
- PR libgomp/64672
- * lang.opt (fopenacc): Mark as LTO option.
-
-2015-01-23 Tom de Vries <tom@codesourcery.com>
-
- PR libgomp/64707
- * lang.opt (fopenmp): Mark as LTO option.
-
-2015-01-23 Andre Vehreschild <vehre@gmx.de>
-
- * trans-decl.c (gfc_finish_var_decl): Fixed moved comment.
- * trans-stmt.c (gfc_trans_allocate): Fixed indentation.
-
-2015-01-23 Jakub Jelinek <jakub@redhat.com>
-
- * gfc-diagnostic.def (DK_ICE_NOBT): New kind.
-
-2015-01-23 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/60922
- * class.c (finalize_component): Apply the check for 'fini_coarray' only
- to coarray components.
-
-2015-01-23 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/64726
- * trans-openmp.c (gfc_trans_oacc_combined_directive): Fix
- loop generation.
-
-2015-01-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/61933
- * libgfortran.h:
- * trans-io.c (set_parameter_value): Delete use of has_iostat.
- Redefine to not generate any runtime error check calls.
- (set_parameter_value_chk): Rename of the former
- set_parameter_value with the runtime error checks and fix
- whitespace. (set_parameter_value_inquire): New function that
- builds a runtime conditional block to set the INQUIRE
- common parameter block unit number to -2 when unit numbers
- exceed positive KIND=4 limits. (gfc_trans_open): Whitespace.
- For unit, use the renamed set_parameter_value_chk.
- (gfc_trans_close): Likewise use renamed function.
- (build_filepos): Whitespace and use renamed function.
- (gfc_trans_inquire): Whitespace and for unit use
- set_parameter_value and set_parameter_value_inquire.
- (gfc_trans_wait): Remove p->iostat from call to
- set_parameter_value. Use new set_parameter_value_chk for unit.
- (build_dt): Use the new set_parameter_value without p->iostat
- and fix whitespace. Use set_parameter_value_chk for unit.
-
-2015-01-21 Thomas Koenig <tkoenig@netcologne.de>
-
- PR fortran/57023
- * dependency.c (callback_dummy_intent_not_int): New function.
- (dummy_intent_not_in): New function.
- (gfc_full_array_ref_p): Use dummy_intent_not_in.
-
-2015-01-18 Andre Vehreschild <vehre@gmx.de>
- Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/60255
- * class.c (gfc_get_len_component): New.
- (gfc_build_class_symbol): Add _len component to unlimited
- polymorphic entities.
- (find_intrinsic_vtab): Removed emitting of error message.
- * gfortran.h: Added prototype for gfc_get_len_component.
- * simplify.c (gfc_simplify_len): Use _len component where
- available.
- * trans-expr.c (gfc_class_len_get): New.
- (gfc_conv_intrinsic_to_class): Add handling for deferred
- character arrays.
- (gfc_conv_structure): Treat _len component correctly.
- (gfc_conv_expr): Prevent bind_c handling when not required.
- (gfc_trans_pointer_assignment): Propagate _len component.
- * trans-stmt.c (class_has_len_component): New.
- (trans_associate_var): _len component treatment for associate
- context.
- (gfc_trans_allocate): Same as for trans_associate_var()
- * trans.h: Added prototype for gfc_class_len_get.
-
-2015-01-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/57959
- * trans-expr.c (gfc_trans_subcomponent_assign): Use a deep copy
- for allocatable components, where the source is a variable.
-
-2015-01-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/55901
- * primary.c (gfc_match_varspec): Exclude dangling associate-
- names with dimension 0 from being counted as arrays.
- * resolve.c (resolve_assoc_var): Sub-strings are permissible
- for associate-names, so exclude characters from the test for
- misuse as arrays.
- * trans-decl.c (gfc_get_symbol_decl): Associate-names can use
- the hidden string length variable of their associated target.
- Signal this by setting 'length' to a constant, if the decl for
- the string length is a variable.
-
-2015-01-17 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/64578
- * trans-expr.c (gfc_trans_pointer_assignment): Make sure that
- before reinitializing rse, to add the rse.pre to block before
- creating 'ptrtemp'.
- * trans-intrinsic.c (gfc_conv_associated): Deal with the class
- data being a descriptor.
-
-2015-01-17 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/60357
- * primary.c (build_actual_constructor): Prevent warning.
- * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_
- assignment): New function encapsulates treatment of allocatable
- components.
- (gfc_trans_subcomponent_assign): Needed to distinguish between
- regular assignment and initilization.
- (gfc_trans_structure_assign): Same.
- (gfc_conv_structure): Same.
-
- PR fortran/61275
- * gfortran.h: deferred_parameter is not needed, because
- it artificial does the trick completely.
- * primary.c (build_actual_constructor): Same.
- (gfc_convert_to_structure_constructor): Same.
- * resolve.c (resolve_fl_derived0): Same.
- * trans-expr.c (gfc_conv_component_ref): Prevent treating
- allocatable deferred length char arrays here.
- (gfc_trans_subcomponent_assign): Same as above.
- * trans-types.c (gfc_sym_type): This is done in
- gfc_get_derived_type already.
-
-2015-01-17 Andre Vehreschild <vehre@gmx.de>
-
- PR fortran/60334
- * trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
- length when the symbol is declared to be a result.
- * trans-expr.c (gfc_conv_procedure_call): Strip deref on the
- string length when functions are nested and the string length
- is a reference already.
-
-2015-01-16 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/45290
- * decl.c (match_pointer_init): Error out if resolution of init expr
- failed.
-
-2015-01-15 Tobias Burnus <burnus@net-b.de>
-
- * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses,
- resolve_oacc_deviceptr_clause, resolve_omp_clauses,
- gfc_resolve_oacc_declare): Replace '%s' by %qs.
-
-2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
- Cesar Philippidis <cesar@codesourcery.com>
- James Norris <jnorris@codesourcery.com>
- Ilmir Usmanov <i.usmanov@samsung.com>
- Tobias Burnus <burnus@net-b.de>
-
- * lang.opt (fopenacc): New option.
- * cpp.c (cpp_define_builtins): Conditionally define _OPENACC.
- * dump-parse-tree.c (show_omp_node): Split part of it into...
- (show_omp_clauses): ... this new function.
- (show_omp_node, show_code_node): Handle EXEC_OACC_PARALLEL_LOOP,
- EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
- EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
- EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
- EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
- (show_namespace): Update for OpenACC.
- * f95-lang.c (DEF_FUNCTION_TYPE_VAR_2, DEF_FUNCTION_TYPE_VAR_8)
- (DEF_FUNCTION_TYPE_VAR_12, DEF_GOACC_BUILTIN)
- (DEF_GOACC_BUILTIN_COMPILER): New macros.
- * types.def (BT_FN_VOID_INT_INT_VAR)
- (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
- (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
- New function types.
- * gfortran.h (gfc_statement): Add ST_OACC_PARALLEL_LOOP,
- ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
- ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_DATA,
- ST_OACC_END_DATA, ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA,
- ST_OACC_LOOP, ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE,
- ST_OACC_WAIT, ST_OACC_CACHE, ST_OACC_KERNELS_LOOP,
- ST_OACC_END_KERNELS_LOOP, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
- ST_OACC_ROUTINE.
- (struct gfc_expr_list): New data type.
- (gfc_get_expr_list): New macro.
- (gfc_omp_map_op): Add OMP_MAP_FORCE_ALLOC, OMP_MAP_FORCE_DEALLOC,
- OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM, OMP_MAP_FORCE_TOFROM,
- OMP_MAP_FORCE_PRESENT, OMP_MAP_FORCE_DEVICEPTR.
- (OMP_LIST_FIRST, OMP_LIST_DEVICE_RESIDENT, OMP_LIST_USE_DEVICE)
- (OMP_LIST_CACHE): New enumerators.
- (struct gfc_omp_clauses): Add async_expr, gang_expr, worker_expr,
- vector_expr, num_gangs_expr, num_workers_expr, vector_length_expr,
- wait_list, tile_list, async, gang, worker, vector, seq,
- independent, wait, par_auto, gang_static, and loc members.
- (struct gfc_namespace): Add oacc_declare_clauses member.
- (gfc_exec_op): Add EXEC_OACC_KERNELS_LOOP,
- EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS,
- EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
- EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
- EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
- (gfc_free_expr_list, gfc_resolve_oacc_directive)
- (gfc_resolve_oacc_declare, gfc_resolve_oacc_parallel_loop_blocks)
- (gfc_resolve_oacc_blocks): New prototypes.
- * match.c (match_exit_cycle): Handle EXEC_OACC_LOOP and
- EXEC_OACC_PARALLEL_LOOP.
- * match.h (gfc_match_oacc_cache, gfc_match_oacc_wait)
- (gfc_match_oacc_update, gfc_match_oacc_declare)
- (gfc_match_oacc_loop, gfc_match_oacc_host_data)
- (gfc_match_oacc_data, gfc_match_oacc_kernels)
- (gfc_match_oacc_kernels_loop, gfc_match_oacc_parallel)
- (gfc_match_oacc_parallel_loop, gfc_match_oacc_enter_data)
- (gfc_match_oacc_exit_data, gfc_match_oacc_routine): New
- prototypes.
- * openmp.c: Include "diagnostic.h" and "gomp-constants.h".
- (gfc_free_omp_clauses): Update for members added to struct
- gfc_omp_clauses.
- (gfc_match_omp_clauses): Change mask paramter to uint64_t. Add
- openacc parameter.
- (resolve_omp_clauses): Add openacc parameter. Update for OpenACC.
- (struct fortran_omp_context): Add is_openmp member.
- (gfc_resolve_omp_parallel_blocks): Initialize it.
- (gfc_resolve_do_iterator): Update for OpenACC.
- (gfc_resolve_omp_directive): Call
- resolve_omp_directive_inside_oacc_region.
- (OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE)
- (OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_COPYPRIVATE)
- (OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN, OMP_CLAUSE_REDUCTION)
- (OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS, OMP_CLAUSE_SCHEDULE)
- (OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED, OMP_CLAUSE_COLLAPSE)
- (OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE)
- (OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH)
- (OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND)
- (OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM)
- (OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO)
- (OMP_CLAUSE_FROM, OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT)
- (OMP_CLAUSE_DIST_SCHEDULE): Use uint64_t.
- (OMP_CLAUSE_ASYNC, OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS)
- (OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_COPY, OMP_CLAUSE_COPYOUT)
- (OMP_CLAUSE_CREATE, OMP_CLAUSE_PRESENT)
- (OMP_CLAUSE_PRESENT_OR_COPY, OMP_CLAUSE_PRESENT_OR_COPYIN)
- (OMP_CLAUSE_PRESENT_OR_COPYOUT, OMP_CLAUSE_PRESENT_OR_CREATE)
- (OMP_CLAUSE_DEVICEPTR, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER)
- (OMP_CLAUSE_VECTOR, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT)
- (OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_DEVICE_RESIDENT)
- (OMP_CLAUSE_HOST_SELF, OMP_CLAUSE_OACC_DEVICE, OMP_CLAUSE_WAIT)
- (OMP_CLAUSE_DELETE, OMP_CLAUSE_AUTO, OMP_CLAUSE_TILE): New macros.
- (gfc_match_omp_clauses): Handle those.
- (OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES, OACC_DATA_CLAUSES)
- (OACC_LOOP_CLAUSES, OACC_PARALLEL_LOOP_CLAUSES)
- (OACC_KERNELS_LOOP_CLAUSES, OACC_HOST_DATA_CLAUSES)
- (OACC_DECLARE_CLAUSES, OACC_UPDATE_CLAUSES)
- (OACC_ENTER_DATA_CLAUSES, OACC_EXIT_DATA_CLAUSES)
- (OACC_WAIT_CLAUSES): New macros.
- (gfc_free_expr_list, match_oacc_expr_list, match_oacc_clause_gang)
- (gfc_match_omp_map_clause, gfc_match_oacc_parallel_loop)
- (gfc_match_oacc_parallel, gfc_match_oacc_kernels_loop)
- (gfc_match_oacc_kernels, gfc_match_oacc_data)
- (gfc_match_oacc_host_data, gfc_match_oacc_loop)
- (gfc_match_oacc_declare, gfc_match_oacc_update)
- (gfc_match_oacc_enter_data, gfc_match_oacc_exit_data)
- (gfc_match_oacc_wait, gfc_match_oacc_cache)
- (gfc_match_oacc_routine, oacc_is_loop)
- (resolve_oacc_scalar_int_expr, resolve_oacc_positive_int_expr)
- (check_symbol_not_pointer, check_array_not_assumed)
- (resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause)
- (oacc_compatible_clauses, oacc_is_parallel, oacc_is_kernels)
- (omp_code_to_statement, oacc_code_to_statement)
- (resolve_oacc_directive_inside_omp_region)
- (resolve_omp_directive_inside_oacc_region)
- (resolve_oacc_nested_loops, resolve_oacc_params_in_parallel)
- (resolve_oacc_loop_blocks, gfc_resolve_oacc_blocks)
- (resolve_oacc_loop, resolve_oacc_cache, gfc_resolve_oacc_declare)
- (gfc_resolve_oacc_directive): New functions.
- * parse.c (next_free): Update for OpenACC. Move some code into...
- (verify_token_free): ... this new function.
- (next_fixed): Update for OpenACC. Move some code into...
- (verify_token_fixed): ... this new function.
- (case_executable): Add ST_OACC_UPDATE, ST_OACC_WAIT,
- ST_OACC_CACHE, ST_OACC_ENTER_DATA, and ST_OACC_EXIT_DATA.
- (case_exec_markers): Add ST_OACC_PARALLEL_LOOP, ST_OACC_PARALLEL,
- ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA, ST_OACC_LOOP,
- ST_OACC_KERNELS_LOOP.
- (case_decl): Add ST_OACC_ROUTINE.
- (push_state, parse_critical_block, parse_progunit): Update for
- OpenACC.
- (gfc_ascii_statement): Handle ST_OACC_PARALLEL_LOOP,
- ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
- ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_KERNELS_LOOP,
- ST_OACC_END_KERNELS_LOOP, ST_OACC_DATA, ST_OACC_END_DATA,
- ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA, ST_OACC_LOOP,
- ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE, ST_OACC_WAIT,
- ST_OACC_CACHE, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
- ST_OACC_ROUTINE.
- (verify_st_order, parse_spec): Handle ST_OACC_DECLARE.
- (parse_executable): Handle ST_OACC_PARALLEL_LOOP,
- ST_OACC_KERNELS_LOOP, ST_OACC_LOOP, ST_OACC_PARALLEL,
- ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA.
- (decode_oacc_directive, parse_oacc_structured_block)
- (parse_oacc_loop, is_oacc): New functions.
- * parse.h (struct gfc_state_data): Add oacc_declare_clauses
- member.
- (is_oacc): New prototype.
- * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
- EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL,
- EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS, EXEC_OACC_DATA,
- EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP, EXEC_OACC_UPDATE,
- EXEC_OACC_WAIT, EXEC_OACC_CACHE, EXEC_OACC_ENTER_DATA,
- EXEC_OACC_EXIT_DATA.
- (resolve_codes): Call gfc_resolve_oacc_declare.
- * scanner.c (openacc_flag, openacc_locus): New variables.
- (skip_free_comments): Update for OpenACC. Move some code into...
- (skip_omp_attribute): ... this new function.
- (skip_oacc_attribute): New function.
- (skip_fixed_comments, gfc_next_char_literal): Update for OpenACC.
- * st.c (gfc_free_statement): Handle EXEC_OACC_PARALLEL_LOOP,
- EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
- EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
- EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
- EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
- * trans-decl.c (gfc_generate_function_code): Update for OpenACC.
- * trans-openmp.c: Include "gomp-constants.h".
- (gfc_omp_finish_clause, gfc_trans_omp_clauses): Use GOMP_MAP_*
- instead of OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
- (gfc_trans_omp_clauses): Handle OMP_LIST_USE_DEVICE,
- OMP_LIST_DEVICE_RESIDENT, OMP_LIST_CACHE, and OMP_MAP_FORCE_ALLOC,
- OMP_MAP_FORCE_DEALLOC, OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM,
- OMP_MAP_FORCE_TOFROM, OMP_MAP_FORCE_PRESENT,
- OMP_MAP_FORCE_DEVICEPTR, and gfc_omp_clauses' async, seq,
- independent, wait_list, num_gangs_expr, num_workers_expr,
- vector_length_expr, vector, vector_expr, worker, worker_expr,
- gang, gang_expr members.
- (gfc_trans_omp_do): Handle EXEC_OACC_LOOP.
- (gfc_convert_expr_to_tree, gfc_trans_oacc_construct)
- (gfc_trans_oacc_executable_directive)
- (gfc_trans_oacc_wait_directive, gfc_trans_oacc_combined_directive)
- (gfc_trans_oacc_declare, gfc_trans_oacc_directive): New functions.
- * trans-stmt.c (gfc_trans_block_construct): Update for OpenACC.
- * trans-stmt.h (gfc_trans_oacc_directive, gfc_trans_oacc_declare):
- New prototypes.
- * trans.c (tranc_code): Handle EXEC_OACC_CACHE, EXEC_OACC_WAIT,
- EXEC_OACC_UPDATE, EXEC_OACC_LOOP, EXEC_OACC_HOST_DATA,
- EXEC_OACC_DATA, EXEC_OACC_KERNELS, EXEC_OACC_KERNELS_LOOP,
- EXEC_OACC_PARALLEL, EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_ENTER_DATA,
- EXEC_OACC_EXIT_DATA.
- * gfortran.texi: Update for OpenACC.
- * intrinsic.texi: Likewise.
- * invoke.texi: Likewise.
-
-2015-01-15 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/58023
- * resolve.c (resolve_fl_derived0): Continue resolving next component
- after error.
-
-2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/61933
- * io.c (gfc_match_inquire): Generate error if unit number in
- inquire statement is a constant -1. All other values allowed.
- * trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
- (create_dummy_iostat): Delete function no longer used.
-
-2015-01-13 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/64528
- * trans-decl.c (create_function_arglist): Don't set TREE_READONLY
- on dummy args with VALUE attribute.
-
-2015-01-11 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/63733
- * interface.c (gfc_extend_expr): Look for type-bound operators before
- non-typebound ones.
-
-2015-01-11 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/58023
- * resolve.c (resolve_fl_derived0): Set error flag if problems with the
- interface of a procedure-pointer component were detected.
-
-2015-01-11 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/64508
- * interface.c (compare_parameter): Interface check for
- procedure-pointer component as actual argument.
-
-2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
-
- * gfortran.texi: Update for libgomp being renamed from "GNU OpenMP
- Runtime Library" to "GNU Offloading and Multi Processing Runtime
- Library".
- * intrinsic.texi: Likewise.
-
-2015-01-10 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/64522
- * invoke.texi (Wline-truncation): Document new behaviour.
- * lang.opt (Wline-truncation): Add Init(-1).
- * options.c (gfc_post_options): If -Wline-truncation is unset,
- enable it for free-form source files; for the latter, also use
- -Werror=line-truncation, unless -Wno-error has been specified.
-
-2015-01-09 Michael Collison <michael.collison@linaro.org>
-
- * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * cpp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * decl.c: Ditto.
- * f95.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * iresolve.c: Ditto.
- * match.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * module.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * options.c: Ditto.
- * target-memory.c: Include hash-set.h, vec.h,
- double-int.h, input.h, alias.h, symtab.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * trans-array.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * trans.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * trans-common.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * trans-const.c: Ditto.
- * trans-decl.c: Ditto.
- * trans-expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * trans-intrinsic.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, fold-const.h,
- wide-int.h, inchash.h and real.h due to flattening of tree.h.
- * trans-io.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, options.h, fold-const.h,
- wide-int.h, and inchash.h due to flattening of tree.h.
- * trans-openmp.c: Ditto.
- * trans-stmt.c: Ditto.
- * trans-types.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
- input.h, alias.h, symtab.h, fold-const.h,
- wide-int.h, inchash.h and real.h due to flattening of tree.h.
-
-2015-01-08 Tobias Burnus <burnus@net-b.de>
-
- * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
- for module coarrays with -fcoarray=lib.
- (get_proc_pointer_decl): As module variable, make only public
- when not marked as private.
-
-2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/47674
- * dependency.h: Actually commit changes.
-
-2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/47674
- * dependency.c: Update copyright years.
- (gfc_discard_nops): Add prototype.
- * dependency.c (discard_nops): Rename to gfc_discard_nops,
- make non-static.
- (gfc_discard_nops): Use gfc_discard_nops.
- (gfc_dep_difference): Likewise.
- * frontend-passes.c Update copyright years.
- (realloc_strings): New function. Add prototype.
- (gfc_run_passes): Call realloc_strings.
- (realloc_string_callback): New function.
- (create_var): Add prototype. Handle case of a
- scalar character variable.
- (optimize_trim): Do not handle allocatable variables.
-
-2015-01-05 Jakub Jelinek <jakub@redhat.com>
-
- Update copyright years.
+2016-01-04 Jakub Jelinek <jakub@redhat.com>
* gfortranspec.c (lang_specific_driver): Update copyright notice
dates.
@@ -3011,24 +7,13 @@
* intrinsic.texi: Ditto.
* invoke.texi: Ditto.
-2015-01-02 Janus Weil <janus@gcc.gnu.org>
-
- PR fortran/57562
- * expr.c (find_component_ref): Deal with extended types.
-
-2015-01-02 Tobias Burnus <burnus@net-b.de>
-
- * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
- for module coarrays with -fcoarray=lib.
-
-2015-01-02 Janus Weil <janus@gcc.gnu.org>
+2016-01-01 Paul Thomas <pault@gcc.gnu.org>
- PR fortran/60507
- * interface.c (is_procptr_result): New function to check if an
- expression is a procedure-pointer result.
- (compare_actual_formal): Use it.
-^L
-Copyright (C) 2015 Free Software Foundation, Inc.
+ PR fortran/68864
+ * trans-array.c (evaluate_bound): If deferred, test that 'desc'
+ is an array descriptor before using gfc_conv_descriptor_xxx.
+
+Copyright (C) 2016 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
diff --git a/gcc/fortran/ChangeLog-2015 b/gcc/fortran/ChangeLog-2015
new file mode 100644
index 00000000000..8864836548d
--- /dev/null
+++ b/gcc/fortran/ChangeLog-2015
@@ -0,0 +1,3029 @@
+2015-12-29 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/69011
+ * trans-stmt.c (gfc_trans_allocate): Unwrap a NOP_EXPR to make sure
+ the actual type of the source=-expr is used when it is of class type.
+ Furthermore prevent an ICE.
+
+2015-12-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/68196
+ *expr.c (gfc_has_default_initializer): Prevent infinite recursion
+ through this function for procedure pointer components.
+ * trans-array.c (structure_alloc_comps): Ditto twice.
+
+2015-12-15 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
+
+ * resolve.c (resolve_critical): Committing symbols of
+ lock variables.
+
+2014-12-14 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/68850
+ * gfortran.texi (Standards): Mention TS 18508.
+ (Fortran 2003 and 2008 Status): Add section on TS 18508 status.
+ * intrinsic.texi (EVENT_QUERY): Add.
+
+2014-12-12 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/45859
+ * expr.c (gfc_is_simply_contiguous): Optionally permit array elements.
+ (gfc_check_pointer_assign): Update call.
+ * interface.c (compare_parameter): Ditto.
+ * trans-array.c (gfc_conv_array_parameter): Ditto.
+ * trans-intrinsic.c (gfc_conv_intrinsic_transfer,
+ conv_isocbinding_function): Ditto.
+ * gfortran.h (gfc_is_simply_contiguous): Update prototype.
+
+2014-12-12 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/68815
+ * check.c (gfc_check_reshape): Replace %<%d%> by %qd.
+ * matchexp.c (gfc_match_defined_op_name): Use %qc.
+ * symbol.c (gfc_add_new_implicit_range,
+ gfc_merge_new_implicit): Ditto.
+
+2015-12-10 David Malcolm <dmalcolm@redhat.com>
+
+ * io.c (gfc_match_open): Fix indentation.
+
+2015-12-09 Tobias Burnus <burnus@net-b.de>
+ Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
+
+ * trans.c (gfc_allocate_using_lib,gfc_deallocate_with_status):
+ Introducing __asm__ __volatile__ ("":::"memory")
+ after image control statements.
+ * trans-stmt.c (gfc_trans_sync, gfc_trans_event_post_wait,
+ gfc_trans_lock_unlock, gfc_trans_critical): Ditto.
+ * trans-intrinsic.c (gfc_conv_intrinsic_caf_get,
+ conv_caf_send): Introducing __asm__ __volatile__ ("":::"memory")
+ after send, before get and around sendget.
+
+2015-12-09 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/68815
+ * decl.c (gfc_verify_c_interop_param, variable_decl): Use
+ %< ... %> for quoting in diagnostics.
+ * io.c (check_format): Ditto.
+ * resolve.c (resolve_operator): Ditto.
+ * symbol.c (check_conflict): Ditto.
+ * trans-common.c (translate_common): Ditto.
+
+2015-12-07 David Malcolm <dmalcolm@redhat.com>
+
+ * error.c (gfc_format_decoder): Update for change of
+ text_info::set_range to text_info::set_location.
+
+2015-12-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/68676
+ * decl.c (gfc_match_formal_arglist): Correct error, where 'sym'
+ was used instead of 'progname'.
+
+2015-12-02 Tobias Burnus <burnus@net-b.de>
+ Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
+
+ * check.c (gfc_check_event_query): New function.
+ * dump-parse-tree.c (show_code_node): Handle EXEC_EVENT_POST,
+ EXEC_EVENT_WAIT.
+ * expr.c (gfc_check_vardef_context): New check for event variables
+ definition.
+ * gfortran.h (gfc_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
+ (gfc_isym_id): GFC_ISYM_EVENT_QUERY.
+ (struct symbol_attribute): New field.
+ (gfc_exec_op): Add EXEC_EVENT_POST and EXEC_EVENT_WAIT.
+ * gfortran.texi: Document about new events functions and minor
+ changes.
+ * interface.c (compare_parameter): New check.
+ (gfc_procedure_use): New check for explicit procedure interface.
+ (add_subroutines): Add event_query.
+ * intrinsic.h (gfc_check_event_query,gfc_resolve_event_query):
+ New prototypes.
+ * iresolve.c (gfc_resolve_event_query): New function.
+ * iso-fortran-env.def (event_type): New type.
+ * match.c (event_statement,gfc_match_event_post,gfc_match_event_wait):
+ New functions.
+ (gfc_match_name): New event post and event wait.
+ * match.h (gfc_match_event_post,gfc_match_event_wait):
+ New prototypes.
+ * module.c (ab_attribute): Add AB_EVENT_COMP.
+ (attr_bits): Likewise.
+ (mio_symbol_attribute): Handle event_comp attribute.
+ * parse.c (decode_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
+ (next_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
+ (gfc_ascii_statement): Add ST_EVENT_POST, ST_EVENT_WAIT.
+ (parse_derived): Check for event_type components.
+ * resolve.c (resolve_allocate_expr): Check for event variable def.
+ (resolve_lock_unlock): Renamed to resolve_lock_unlock_event. It
+ includes logic for locks and events.
+ (gfc_resolve_code): Call it.
+ (gfc_resolve_symbol): New check for event variable to be a corray.
+ * st.c (gfc_free_statement): Handle new EXEC_EVENT_POST and
+ EXEC_EVENT_WAIT.
+ * trans-decl.c (gfor_fndecl_caf_event_post,gfor_fndecl_caf_event_wait,
+ gfor_fndecl_caf_event_query): New global variables.
+ (generate_coarray_sym_init): Checking for event_type.
+ (gfc_conv_procedure_call): Check for C bind attribute.
+ * trans-intrinsic.c (conv_intrinsic_event_query): New function.
+ (conv_intrinsic_move_alloc): Call it.
+ * trans-stmt.c (gfc_trans_lock_unlock): Passing address
+ of actual argument.
+ (gfc_trans_sync): Likewise.
+ (gfc_trans_event_post_wait): New function.
+ * trans-stmt.h (gfc_trans_event_post_wait): New prototype.
+ * trans-types.c (gfc_get_derived_type): Integer_kind as event_type.
+ * trans.c (gfc_allocate_using_lib): New argument and logic for events.
+ (gfc_allocate_allocatable): Passing new argument.
+ (trans_code): Handle EXEC_EVENT_POST, EXEC_EVENT_WAIT.
+ * trans.h (gfc_coarray_type): New elements.
+ (gfor_fndecl_caf_event_post,gfor_fndecl_caf_event_wait,
+ gfor_fndecl_caf_event_query): Declare them.
+
+2015-12-02 Cesar Philippidis <cesar@codesourcery.com>
+
+ PR fortran/63861
+ * openmp.c (gfc_match_omp_clauses): Allow subarrays for acc reductions.
+ (resolve_omp_clauses): Error on any acc reductions on arrays.
+
+2015-12-01 Cesar Philippidis <cesar@codesourcery.com>
+
+ * dump-parse-tree.c (show_omp_clauses): Handle optional num and static
+ arguments for the gang clause.
+ * gfortran.h (gfc_omp_clauses): Rename gang_expr as gang_num_expr.
+ Add gang_static_expr.
+ * openmp.c (gfc_free_omp_clauses): Update to free gang_num_expr and
+ gang_static_expr.
+ (match_oacc_clause_gang): Update to support both num and static in
+ the same clause.
+ (resolve_omp_clauses): Formatting. Also handle gang_num_expr and
+ gang_static_expr.
+ (resolve_oacc_params_in_parallel): New const char arg argument.
+ Use it to report more accurate gang, worker and vector clause errors.
+ (resolve_oacc_loop_blocks): Update calls to
+ resolve_oacc_params_in_parallel.
+ * trans-openmp.c (gfc_trans_omp_clauses): Update the gimplification of
+ the gang clause.
+ (gfc_trans_oacc_combined_directive): Make use of gang_num_expr and
+ gang_static_expr. Remove OMP_LIST_REDUCTION from construct_clauses.
+
+2015-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ James Norris <jnorris@codesourcery.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+
+ * f95-lang.c (gfc_attribute_table): Add an "oacc function"
+ attribute.
+ * gfortran.h (symbol_attribute): Add an oacc_function bit-field.
+ (gfc_oacc_routine_name): New struct;
+ (gfc_get_oacc_routine_name): New macro.
+ (gfc_namespace): Add oacc_routine_clauses, oacc_routine_names and
+ oacc_routine fields.
+ (gfc_exec_op): Add EXEC_OACC_ROUTINE.
+ * openmp.c (OACC_ROUTINE_CLAUSES): New mask.
+ (gfc_oacc_routine_dims): New function.
+ (gfc_match_oacc_routine): Add support for named routines and the
+ gang, worker vector and seq clauses.
+ * parse.c (is_oacc): Add EXEC_OACC_ROUTINE.
+ * resolve.c (gfc_resolve_blocks): Likewise.
+ * st.c (gfc_free_statement): Likewise.
+ * trans-decl.c (add_attributes_to_decl): Attach an 'oacc function'
+ attribute and shape geometry for acc routine.
+
+2015-11-30 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/68534
+ * decl.c (gfc_match_formal_arglist): Cope with zero formal args
+ either in interface declaration or in procedure declaration in
+ submodule.
+
+2015-11-25 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68227
+ * trans-stmt.c (gfc_do_allocate): Convert gcc_assert argument into
+ into part of conditional statement.
+
+2015-11-25 Ilmir Usmanov <me@ilmir.us>
+ Cesar Philippidis <cesar@codesourcery.com>
+
+ PR fortran/63858
+ * scanner.c (skip_oacc_attribute): Remove continue_flag parameter.
+ Rename as ...
+ (skip_free_oacc_sentinel): ... this.
+ (skip_omp_attribute): Remove continue_flag parameter. Rename as ...
+ (skip_free_omp_sentinel): ... this.
+ (skip_free_comments): Update to call skip_free_oacc_sentinel and
+ skip_free_omp_sentinel.
+ (skip_fixed_omp_sentinel): New function.
+ (skip_fixed_oacc_sentinel): New function.
+ (skip_fixed_comments): Fix mix of OpenACC and OpenMP sentinels in
+ continuation.
+
+2015-11-24 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68486
+ * simplify.c (gfc_simplify_cshift): Allow all EXPR_*.
+
+2015-11-22 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68486
+ * simplify.c (gfc_simplify_cshift): Add EXPR_OP to mix.
+
+2015-11-22 James Norris <jnorris@codesourcery.com>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * openmp.c (match_oacc_clause_gang): Fix uninitialized variable.
+ (gfc_resolve_oacc_declare): Fix comparision.
+
+2015-11-22 James Norris <jnorris@codesourcery.com>
+ Cesar Philippidis <cesar@codesourcery.com>
+
+ * dump-parse-tree.c (show_namespace): Handle declares.
+ * gfortran.h (struct symbol_attribute): New fields.
+ (enum gfc_omp_map_map): Add OMP_MAP_DEVICE_RESIDENT and OMP_MAP_LINK.
+ (OMP_LIST_LINK): New enum.
+ (struct gfc_oacc_declare): New structure.
+ (gfc_get_oacc_declare): New definition.
+ (struct gfc_namespace): Change type.
+ (enum gfc_exec_op): Add EXEC_OACC_DECLARE.
+ (struct gfc_code): New field.
+ * module.c (enum ab_attribute): Add AB_OACC_DECLARE_CREATE,
+ AB_OACC_DECLARE_COPYIN, AB_OACC_DECLARE_DEVICEPTR,
+ AB_OACC_DECLARE_DEVICE_RESIDENT, AB_OACC_DECLARE_LINK
+ (attr_bits): Add new initializers.
+ (mio_symbol_attribute): Handle new atributes.
+ * openmp.c (gfc_free_oacc_declare_clauses): New function.
+ (gfc_match_oacc_clause_link: Likewise.
+ (OMP_CLAUSE_LINK): New definition.
+ (gfc_match_omp_clauses): Handle OMP_CLAUSE_LINK.
+ (OACC_DECLARE_CLAUSES): Add OMP_CLAUSE_LINK
+ (gfc_match_oacc_declare): Add checking and module handling.
+ (resolve_omp_clauses): Add array initializer.
+ (gfc_resolve_oacc_declare): Reimplement.
+ * parse.c (case_decl): Add ST_OACC_DECLARE.
+ (parse_spec): Remove handling.
+ (parse_progunit): Remove handling.
+ * parse.h (struct gfc_state_data): Change type.
+ * resolve.c (gfc_resolve_blocks): Handle EXEC_OACC_DECLARE.
+ * st.c (gfc_free_statement): Handle EXEC_OACC_DECLARE.
+ * symbol.c (check_conflict): Add conflict checks.
+ (gfc_add_oacc_declare_create, gfc_add_oacc_declare_copyin,
+ gfc_add_oacc_declare_deviceptr, gfc_add_oacc_declare_device_resident):
+ New functions.
+ (gfc_copy_attr): Handle new symbols.
+ * trans-decl.c (add_clause, find_module_oacc_declare_clauses,
+ finish_oacc_declare): New functions.
+ (gfc_generate_function_code): Replace with call.
+ * trans-openmp.c (gfc_trans_oacc_declare): Reimplement.
+ (gfc_trans_oacc_directive): Handle EXEC_OACC_DECLARE.
+ * trans-stmt.c (gfc_trans_block_construct): Replace with call.
+ * trans-stmt.h (gfc_trans_oacc_declare): Remove argument.
+ * trans.c (trans_code): Handle EXEC_OACC_DECLARE.
+
+2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * simplify.c (gfc_simplify_cshift): Work around bootstrap issues
+ due to inappropriate warning options.
+
+2015-11-21 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * simplify.c (gfc_simplify_cshift): Implement simplification of
+ CSHIFT for rank=1 arrays.
+ (gfc_simplify_spread): Remove a FIXME and add error condition.
+ * intrinsic.h: Prototype for gfc_simplify_cshift
+ * intrinsic.c (add_functions): Use gfc_simplify_cshift.
+
+2015-11-20 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68237
+ * decl.c (gfc_match_submod_proc): Test the interface symbol
+ before accessing its attributes.
+
+2015-11-20 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/66762
+ (gfc_get_symbol_decl): Test for attr.used_in_submodule as well
+ as attr.use_assoc (twice).
+ (gfc_create_module_variable): Ditto.
+
+2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/59910
+ * primary.c (gfc_match_structure_constructor): Reduce a structure
+ constructor in a DATA statement.
+
+2015-11-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/43996
+ * simplify.c (gfc_simplify_spread): Issue error for too large array
+ constructor in a PARAMETER statement.
+
+2015-11-17 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * primary.c (gfc_match_structure_constructor): Fix whitespace.
+
+2015-11-17 Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ PR fortran/65751
+ * expr.c (gfc_check_pointer_assign): Fix error message.
+
+2015-11-16 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/58027
+ PR fortran/60993
+ * expr.c (gfc_check_init_expr): Prevent a redundant check when a
+ __convert_* function was inserted into an array constructor.
+ (gfc_check_assign_symbol): Check for an initialization expression
+ when a __convert_* was inserted.
+
+2015-11-15 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/50221
+ PR fortran/68216
+ PR fortran/63932
+ PR fortran/66408
+ * trans_array.c (gfc_conv_scalarized_array_ref): Pass the
+ symbol decl for deferred character length array references.
+ * trans-stmt.c (gfc_trans_allocate): Keep the string lengths
+ to update deferred length character string lengths.
+ * trans-types.c (gfc_get_dtype_rank_type); Use the string
+ length of deferred character types for the dtype size.
+ * trans.c (gfc_build_array_ref): For references to deferred
+ character arrays, use the domain max value, if it is a variable
+ to set the 'span' and use pointer arithmetic for acces to the
+ element.
+ (trans_code): Set gfc_current_locus for diagnostic purposes.
+
+ PR fortran/67674
+ * trans-expr.c (gfc_conv_procedure_call): Do not fix deferred
+ string lengths of components.
+
+ PR fortran/49954
+ * resolve.c (deferred_op_assign): New function.
+ (gfc_resolve_code): Call it.
+ * trans-array.c (concat_str_length): New function.
+ (gfc_alloc_allocatable_for_assignment): Jump directly to alloc/
+ realloc blocks for deferred character length arrays because the
+ string length might change, even if the shape is the same. Call
+ concat_str_length to obtain the string length for concatenation
+ since it is needed to compute the lhs string length.
+ Set the descriptor dtype appropriately for the new string
+ length.
+ * trans-expr.c (gfc_trans_assignment_1): Use the rse string
+ length for all characters, other than deferred types. For
+ concatenation operators, push the rse.pre block to the inner
+ most loop so that the temporary pointer and the assignments
+ are properly placed.
+
+2015-11-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67803
+ * array.c (gfc_match_array_constructor): If array constructor included
+ a CHARACTER typespec, check array elements for compatible type.
+
+2015-11-13 Steven G. Kargl <kargl@gccc.gnu.org>
+
+ PR fortran/68319
+ * decl.c (gfc_match_data, gfc_match_entry): Enforce F2008:C1206.
+ * io.c (gfc_match_format): Ditto.
+ * match.c (gfc_match_st_function): Ditto.
+
+2015-11-13 David Malcolm <dmalcolm@redhat.com>
+
+ * error.c (gfc_warning): Pass line_table to rich_location ctor.
+ (gfc_warning_now_at): Likewise.
+ (gfc_warning_now): Likewise.
+ (gfc_error_now): Likewise.
+ (gfc_fatal_error): Likewise.
+ (gfc_error): Likewise.
+ (gfc_internal_error): Likewise.
+
+2015-11-12 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68318
+ * decl.c (get_proc_name): Increment reference count for ENTRY.
+ While here, fix comment and use postfix ++ for consistency.
+
+2015-11-11 Andrew MacLeod <amacleod@redhat.com>
+
+ * array.c: Remove unused header files.
+ * convert.c: Likewise.
+ * cpp.c: Likewise.
+ * decl.c: Likewise.
+ * f95-lang.c: Likewise.
+ * frontend-passes.c: Likewise.
+ * iresolve.c: Likewise.
+ * match.c: Likewise.
+ * module.c: Likewise.
+ * options.c: Likewise.
+ * parse.c: Likewise.
+ * target-memory.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-const.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-openmp.c: Likewise.
+ * trans-stmt.c: Likewise.
+ * trans-types.c: Likewise.
+ * trans.c: Likewise.
+
+2015-11-11 Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ PR fortran/67826
+ * openmp.c (gfc_omp_udr_find): Fix typo.
+
+2015-11-08 Steven g. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68053
+ * decl.c (add_init_expr_to_sym): Try to reduce initialization expression
+ before testing for a constant value.
+
+2015-11-08 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/68218
+ * trans-array.c (gfc_array_init_size): Add gfc_evaluate_now() when
+ array spec in allocate is a function call.
+
+2015-11-08 Steven G. Kargl <kargl@gc.gnu.org>
+
+ PR fortran/68224
+ * array.c (match_array_element_spec): Check of invalid NULL().
+ While here, fix nearby comments.
+
+2015-11-08 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/68196
+ * class.c (has_finalizer_component): Prevent infinite recursion
+ through this function if the derived type and that of its
+ component are the same.
+ * trans-types.c (gfc_get_derived_type): Do the same for proc
+ pointers by ignoring the explicit interface for the component.
+
+ PR fortran/66465
+ * check.c (same_type_check): If either of the expressions is
+ BT_PROCEDURE, use the typespec from the symbol, rather than the
+ expression.
+
+2015-11-07 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68153
+ * check.c (gfc_check_reshape): Improve check for valid SHAPE argument.
+
+2015-11-07 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68151
+ * match.c (match_case_selector): Check for invalid type.
+
+2015-11-06 David Malcolm <dmalcolm@redhat.com>
+
+ * cpp.c (cb_cpp_error): Convert parameter from location_t to
+ rich_location *. Eliminate the "column_override" parameter.
+ * error.c (gfc_warning): Update for change in signature of
+ diagnostic_set_info.
+ (gfc_format_decoder): Update handling of %C/%L for changes
+ to struct text_info.
+ (gfc_diagnostic_starter): Use richloc when determining whether to
+ print one locus or two. When handling a location that will
+ involve a call to diagnostic_show_locus, only attempt to print the
+ locus for the primary location, and don't call into
+ diagnostic_print_caret_line.
+ (gfc_warning_now_at): Update for change in signature of
+ diagnostic_set_info.
+ (gfc_warning_now): Likewise.
+ (gfc_error_now): Likewise.
+ (gfc_fatal_error): Likewise.
+ (gfc_error): Likewise.
+ (gfc_internal_error): Likewise.
+
+2015-11-05 Cesar Philippidis <cesar@codesourcery.com>
+
+ * openmp.c (gfc_match_omp_clauses): Update support for the tile
+ and default clauses in OpenACC.
+ (gfc_match_oacc_update): Error when data clauses are supplied.
+ (oacc_compatible_clauses): Delete.
+ (resolve_omp_clauses): Give special care for OpenACC reductions.
+ Also update error reporting for the tile clause.
+ (resolve_oacc_loop_blocks): Update error reporting for the tile clause.
+ * trans-openmp.c (gfc_trans_omp_clauses): Update OMP_CLAUSE_SEQ. Add
+ OMP_CLAUSE_{AUTO,TILE} and add support the the gang static argument.
+ (gfc_trans_oacc_combined_directive): Update the list of clauses which
+ are split to acc loops.
+
+2015-11-05 Jakub Jelinek <jakub@redhat.com>
+
+ * types.def (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR): Remove.
+ (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): New.
+
+2015-11-03 Thomas Schwinge <thomas@codesourcery.com>
+ Chung-Lin Tang <cltang@codesourcery.com>
+
+ * gfortran.h (gfc_statement): Add ST_OACC_ATOMIC,
+ ST_OACC_END_ATOMIC.
+ (gfc_exec_op): Add EXEC_OACC_ATOMIC.
+ * match.h (gfc_match_oacc_atomic): New prototype.
+ * openmp.c (gfc_match_omp_atomic, gfc_match_oacc_atomic): New
+ wrapper functions around...
+ (gfc_match_omp_oacc_atomic): ... this new function.
+ (oacc_code_to_statement, gfc_resolve_oacc_directive): Handle
+ EXEC_OACC_ATOMIC.
+ * parse.c (decode_oacc_directive): Handle "atomic", "end atomic".
+ (case_exec_markers): Add ST_OACC_ATOMIC.
+ (gfc_ascii_statement): Handle ST_OACC_ATOMIC, ST_OACC_END_ATOMIC.
+ (parse_omp_atomic): Rename to...
+ (parse_omp_oacc_atomic): ... this new function. Add omp_p formal
+ parameter. Adjust all users.
+ (parse_executable): Handle ST_OACC_ATOMIC.
+ (is_oacc): Handle EXEC_OACC_ATOMIC.
+ * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
+ EXEC_OACC_ATOMIC.
+ * st.c (gfc_free_statement): Handle EXEC_OACC_ATOMIC.
+ * trans-openmp.c (gfc_trans_oacc_directive): Handle
+ EXEC_OACC_ATOMIC.
+ * trans.c (trans_code): Handle EXEC_OACC_ATOMIC.
+
+2015-10-31 Cesar Philippidis <cesar@codesourcery.com>
+
+ PR Bootstrap/68168
+
+ * openmp.c (resolve_omp_clauses): Pass &n->where when calling
+ gfc_error.
+
+2015-10-30 Cesar Philippidis <cesar@codesourcery.com>
+
+ * gfortran.h (gfc_omp_namespace): Add locus where member.
+ * openmp.c (gfc_match_omp_variable_list): Set where for each list
+ item found.
+ (resolve_omp_clauses): Remove where argument and use the where
+ gfc_omp_namespace member when reporting errors.
+ (resolve_omp_do): Update call to resolve_omp_clauses.
+ (resolve_oacc_loop): Likewise.
+ (gfc_resolve_oacc_directive): Likewise.
+ (gfc_resolve_omp_directive): Likewise.
+ (gfc_resolve_omp_declare_simd): Likewise.
+
+2015-10-15 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/51993
+ * decl.c (gfc_set_constant_character_len): Convert gcc_assert into an
+ if-statement causing an early return leads to valid error message.
+
+2015-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/36192
+ * interface.c (get_expr_storage_size): Check for INTEGER type before
+ calling gmp routines.
+
+2015-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68154
+ * decl.c (add_init_expr_to_sym): if the char length in the typespec
+ is NULL, check for and use a constructor.
+
+2015-10-30 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68054
+ * decl.c (match_attr_spec): PROTECTED can only be a module.
+
+2015-10-29 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67885
+ * trans-decl.c (generate_local_decl): Mark PARAMETER entities in
+ BLOCK construct.
+
+2015-10-29 Andrew MacLeod <amacleod@redhat.com>
+
+ * array.c: Reorder #include's and remove duplicates.
+ * convert.c: Likewise.
+ * cpp.c: Likewise.
+ * decl.c: Likewise.
+ * f95-lang.c: Likewise.
+ * frontend-passes.c: Likewise.
+ * iresolve.c: Likewise.
+ * match.c: Likewise.
+ * module.c: Likewise.
+ * options.c: Likewise.
+ * parse.c: Likewise.
+ * resolve.c: Likewise.
+ * simplify.c: Likewise.
+ * target-memory.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-const.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-openmp.c: Likewise.
+ * trans-stmt.c: Likewise.
+ * trans-types.c: Likewise.
+ * trans.c: Likewise.
+
+2015-10-29 Richard Biener <rguenther@suse.de>
+
+ * f95-lang.c: Properly build variadic types for classification
+ and comparison builtins.
+
+2015-10-27 Thomas Schwinge <thomas@codesourcery.com>
+ James Norris <jnorris@codesourcery.com>
+
+ PR fortran/63865
+ * openmp.c (resolve_oacc_cache): Remove function.
+ (gfc_match_oacc_cache): Enable array sections.
+ (resolve_omp_clauses, gfc_resolve_oacc_directive): Change
+ accordingly.
+ * trans-openmp.c (gfc_trans_omp_clauses): Likewise.
+
+2015-10-27 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68108
+ * decl.c (char_len_param_value): Check for REF_ARRAY.
+
+2015-10-26 Louis Krupp <louis.krupp@zoho.com>
+
+ PR fortran/66056
+ * fortran.h: Include namespace pointer in statement label
+ structure.
+ * symbol.c (gfc_get_st_label): Store pointer to namespace
+ that owns the statement label tree in each label.
+ (gfc_free_st_label): Use namespace owning statement label
+ tree when deleting statement label.
+ * io.c: Initialize format_asterisk with NULL namespace pointer.
+
+2015-10-26 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/36192
+ * array.c (gfc_ref_dimen_size): Check for BT_INTEGER before calling
+ mpz_set.
+
+2015-10-26 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/66927
+ * trans-array.c (evaluate_bound): For deferred length arrays get the
+ bounds directly from the descriptor, i.e., prevent using constant
+ zero lower bound from the gfc_conv_array_lbound () routine.
+ (gfc_conv_section_startstride): Hand deferred array status to
+ evaluate_bound ().
+ (gfc_conv_expr_descriptor): Same.
+
+2015-01-25 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/67171
+ * trans-array.c (structure_alloc_comps): On deallocation of
+ class components, reset the vptr to the declared type vtable
+ and reset the _len field of unlimited polymorphic components.
+ *trans-expr.c (gfc_find_and_cut_at_last_class_ref): Bail out on
+ allocatable component references to the right of part reference
+ with non-zero rank and return NULL.
+ (gfc_reset_vptr): Simplify this function by using the function
+ gfc_get_vptr_from_expr. Return if the vptr is NULL_TREE.
+ (gfc_reset_len): If gfc_find_and_cut_at_last_class_ref returns
+ NULL return.
+ * trans-stmt.c (gfc_trans_allocate): Rely on the use of
+ gfc_trans_assignment if expr3 is a variable expression since
+ this deals correctly with array sections.
+
+2015-10-25 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/66927
+ PR fortran/67044
+ * trans-array.c (build_array_ref): Modified call to
+ gfc_get_class_array_ref to adhere to new interface.
+ (gfc_conv_expr_descriptor): For one-based arrays that
+ are filled by a loop starting at one the start index of the
+ source array has to be mangled into the offset.
+ * trans-expr.c (gfc_get_class_array_ref): When the tree to get
+ the _data component is present already, add a way to supply it.
+ (gfc_copy_class_to_class): Allow to copy to a derived type also.
+ * trans-stmt.c (gfc_trans_allocate): Do not conv_expr_descriptor
+ for functions returning a class or derived object. Get the
+ reference instead.
+ * trans.h: Interface change of gfc_get_class_array_ref.
+
+2015-10-24 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68055
+ * decl.c (gfc_match_decl_type_spec): Check for valid kind in old-style
+ declarations.
+
+2015-10-24 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67805
+ * array.c (gfc_match_array_constructor): Check for error from type
+ spec matching.
+ * decl.c (char_len_param_value): Check for valid of charlen parameter.
+ Reap dead code dating to 2008.
+ match.c (gfc_match_type_spec): Special case the keyword use in REAL.
+
+2015-10-23 Mikhail Maltsev <maltsevm@gmail.com>
+
+ * trans-common.c (create_common): Adjust to use flag_checking.
+ * trans.c (gfc_add_modify_loc): Use gcc_checking_assert.
+
+2015-10-21 Martin Sebor <msebor@redhat.com>
+
+ PR driver/68043
+ * lang.opt: End each sentence that describes an option with a period.
+
+2015-10-21 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67939
+ * data.c (create_character_initializer): Deal with zero length string.
+
+2015-10-19 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * resolve.c (gfc_verify_binding_labels): Check for NULL pointer.
+
+2015-10-19 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/68019
+ * decl.c (add_init_expr_to_sym): Remove an assert() to allow an error
+ message to be issued.
+
+2015-10-18 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/67758
+ * gfortran.h (gfc_symbol): Expand comment.
+ * match.c (gfc_match_common): Delay adding the symbol to
+ the common_block after the gfc_add_in_common call.
+ * symbol.c (gfc_free_symbol): Move common block memory handling...
+ (gfc_set_symbol_common_block): ... here as a new function.
+ (restore_old_symbol): Restore common block fields.
+ (gfc_restore_last_undo_checkpoint):
+ Check the common_block pointer instead of the in_common attribute.
+ When a symbol has been removed from the common block linked list,
+ clear its common_next pointer.
+
+2015-10-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/67177
+ PR fortran/67977
+ * primary.c (match_substring): Add an argument 'deferred' to
+ flag that a substring reference with null start and end should
+ not be optimized away for deferred length strings.
+ (match_string_constant, gfc_match_rvalue): Set the argument.
+ * trans-expr.c (alloc_scalar_allocatable_for_assignment): If
+ there is a substring reference return.
+ * trans-intrinsic.c (conv_intrinsic_move_alloc): For deferred
+ characters, assign the 'from' string length to the 'to' string
+ length. If the 'from' expression is deferred, set its string
+ length to zero. If the 'to' expression has allocatable
+ components, deallocate them.
+
+2015-10-17 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67987
+ * decl.c (char_len_param_value): Unwrap unlong line. If LEN < 0,
+ force it to zero per the Fortran 90, 95, 2003, and 2008 Standards.
+ * resolve.c (gfc_resolve_substring_charlen): Unwrap unlong line.
+ If 'start' is larger than 'end', length of substring is negative,
+ so explicitly set it to zero.
+ (resolve_charlen): Remove -Wsurprising warning. Update comment to
+ reflect that the text is from the F2008 standard.
+
+2015-10-16 Richard Biener <rguenther@suse.de>
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_lib_function): Adjust
+ calls to build_addr.
+ (gfc_conv_intrinsic_mod): Likewise.
+ (gfc_conv_intrinsic_ctime): Likewise.
+ (gfc_conv_intrinsic_fdate): Likewise.
+ (gfc_conv_intrinsic_ttynam): Likewise.
+ (gfc_conv_intrinsic_minmax_char): Likewise.
+ (gfc_conv_intrinsic_index_scan_verify): Likewise.
+ (gfc_conv_intrinsic_trim): Likewise.
+
+2015-10-14 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
+
+ * parse.c (decode_statement): Initialize M to MATCH_NO.
+
+2015-10-13 Jakub Jelinek <jakub@redhat.com>
+ Ilya Verbin <ilya.verbin@intel.com>
+
+ * f95-lang.c (DEF_FUNCTION_TYPE_9, DEF_FUNCTION_TYPE_10,
+ DEF_FUNCTION_TYPE_11, DEF_FUNCTION_TYPE_VAR_1): Define.
+ * trans-openmp.c (gfc_trans_omp_clauses): Set
+ OMP_CLAUSE_IF_MODIFIER to ERROR_MARK, OMP_CLAUSE_ORDERED_EXPR
+ to NULL.
+ (gfc_trans_omp_critical): Adjust for addition of clauses.
+ (gfc_trans_omp_ordered): Likewise.
+ * types.def (BT_FN_BOOL_UINT_LONGPTR_LONGPTR_LONGPTR,
+ BT_FN_BOOL_UINT_ULLPTR_ULLPTR_ULLPTR,
+ BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR,
+ BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR,
+ BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_UINT_PTR,
+ BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR,
+ BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR_INT,
+ BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_LONG_LONG_LONG,
+ BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_ULL_ULL_ULL,
+ BT_FN_VOID_LONG_VAR, BT_FN_VOID_ULL_VAR): New.
+ (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR,
+ BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR,
+ BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR): Remove.
+
+2015-10-07 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/65889
+ * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Handle pointer to and
+ on stack class objects as sizeof parameter.
+
+2015-10-06 Louis Krupp <louis.krupp@zoho.com>
+ PR fortran/65766
+ * resolve.c (gfc_resolve_substring_charlen): For derived type,
+ use typespec of string component when resolving substring length.
+
+2015-10-04 Mikael Morin <mikael@gcc.gnu.org>
+
+ * match.c (gfc_match_common): Remove dead variable old_blank_common.
+
+2015-10-04 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/67758
+ * match.c (gfc_match_common): Delay the common_block pointer
+ assignment after error checking.
+ Delay the call to gfc_add_in_common attribute after the handling
+ of array specs.
+ * resolve.c (resolve_common_vars): Call gfc_add_in_common again.
+
+2015-10-04 Mikael Morin <mikael@gcc.gnu.org>
+
+ * resolve.c (resolve_common_vars): Move access to the common
+ block's head symbol inside the function.
+ (resolve_common_blocks, resolve_types): Update callers.
+
+2015-10-01 Louis Krupp <louis.krupp@zoho.com>
+
+ PR fortran/62242
+ PR fortran/52332
+ * trans-array.c
+ (store_backend_decl): Create new gfc_charlen instance if requested
+ (get_array_ctor_all_strlen): Call store_backend_decl requesting
+ new gfc_charlen
+ (trans_array_constructor): Call store_backend_decl requesting
+ new gfc_charlen if get_array_ctor_strlen was called
+ (gfc_add_loop_ss_code): Don't try to convert non-constant length
+
+2015-10-01 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran.67802
+ * decl.c (add_init_expr_to_sym): Numeric constant for character
+ length must be an INTEGER.
+
+2015-10-01 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66979
+ * io.c (gfc_resolve_filepos): Check for a UNIT number. Add a nearby
+ missing 'return false'.
+
+2015-10-01 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67616
+ * primary.c (gfc_match_structure_constructor): Use a possibly
+ host-associated symtree to prevent ICE.
+
+2015-09-28 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/40054
+ PR fortran/63921
+ * decl.c (get_proc_name): Return if statement function is
+ found.
+ * expr.c (gfc_check_vardef_context): Add error return for
+ derived type expression lacking the derived type itself.
+ * match.c (gfc_match_ptr_fcn_assign): New function.
+ * match.h : Add prototype for gfc_match_ptr_fcn_assign.
+ * parse.c : Add static flag 'in_specification_block'.
+ (decode_statement): If in specification block match a statement
+ function, then, if no error arising from statement function
+ matching, try to match pointer function assignment.
+ (parse_interface): Set 'in_specification_block' on exiting from
+ parse_spec.
+ (parse_spec): Set and then reset 'in_specification_block'.
+ (gfc_parse_file): Set 'in_specification_block'.
+ * resolve.c (get_temp_from_expr): Extend to include functions
+ and array constructors as rvalues..
+ (resolve_ptr_fcn_assign): New function.
+ (gfc_resolve_code): Call it on finding a pointer function as an
+ lvalue. If valid or on error, go back to start of resolve_code.
+ * symbol.c (gfc_add_procedure): Add a sentence to the error to
+ flag up the ambiguity between a statement function and pointer
+ function assignment at the end of the specification block.
+
+2015-09-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ * f95-lang.c (DEF_FUNCTION_TYPE_VAR_6): New.
+ (DEF_FUNCTION_TYPE_VAR_11): Delete.
+ * types.def (DEF_FUNCTION_TYPE_VAR_6): New.
+ (DEF_FUNCTION_TYPE_VAR_11): Delete.
+
+2015-09-26 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/67721
+ * trans-expr.c (gfc_trans_assignment_1): Remove the non-constantness
+ condition guarding deep copy.
+
+2013-09-26 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/67567
+ * resolve.c (resolve_fl_procedure): For module procedures, take
+ the parent module name and the submodule name from the name of
+ the namespace.
+
+2015-09-25 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67614
+ * resolve.c (gfc_resolve_code): Prevent ICE for invalid EXPR_NULL.
+
+2015-09-25 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67525
+ * parse.c (match_deferred_characteristics): Remove an assert, which
+ allows an invalid SELECT TYPE selector to be detected.
+
+2015-09-25 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR pretty-print/67567
+ * resolve.c (resolve_fl_procedure): Work-around when iface->module
+ == NULL.
+
+2015-09-21 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * resolve.c (nonscalar_typebound_assign): Fix typos in comment.
+
+2015-09-21 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67615
+ * resolve.c (gfc_resolve_code): Check for scalar expression in
+ arithmetic-if.
+
+2015-09-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/52846
+ PR fortran/67588
+ * module.c : Add static no_module_procedures.
+ (gfc_match_submodule): Correct memory leakage caused during the
+ freeing of use_lists.
+ (mio_symbol_attribute): Reset above if module procedure is
+ encountered.
+ (gfc_dump_module): Set above and exit without writing smod file
+ if it reset.
+ * gfortran.texi : Add section on submodule support.
+
+2015-09-10 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/67526
+ * expr.c (gfc_check_init_expr): Do not dereference a NULL pointer.
+
+2015-09-10 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/66993
+ * module.c (read_module): If a symtree exists and the symbol has
+ been associated in a submodule from a parent (sub)module, attach
+ the symbol to a 'unique symtree' and the new symbol to the
+ existing symtree.
+
+2015-09-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * intrinsic.h (gfc_simplify_mvbits): Remove.
+ * simplify.c (gfc_simplify_mvbits): Remove.
+ * intrinsic.c (add_subroutines): Remove reference to
+ gfc_simplify_mvbits.
+
+2015-09-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR fortran/67429
+ * error.c (gfc_clear_pp_buffer): Reset last_location, otherwise
+ caret lines might be skipped when actually giving a diagnostic.
+
+2015-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/54833
+ * trans.c (gfc_call_free): Don't check if pointer is NULL.
+ * trans.h (gfc_call_free): Adjust comment.
+
+2015-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans.c (gfc_call_malloc, gfc_allocate_using_malloc,
+ gfc_allocate_using_lib, gfc_allocate_allocatable,
+ gfc_call_realloc): Simplify code.
+ * trans-array.c (gfc_trans_allocate_array_storage,
+ gfc_trans_auto_array_allocation, gfc_conv_array_parameter): Do not
+ convert gfc_call_free() argument.
+ * trans-expr.c (gfc_conv_string_tmp, gfc_conv_procedure_call,
+ fcncall_realloc_result): Likewise.
+ * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Likewise.
+
+2015-08-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/53668
+ * intrinsic.c (add_functions, add_subroutines): Remove resolution
+ functions for FREE and MALLOC.
+ * intrinsic.h (gfc_resolve_malloc, gfc_resolve_free): Remove.
+ * iresolve.c (gfc_resolve_malloc, gfc_resolve_free): Remove.
+ * trans-intrinsic.c (conv_intrinsic_free,
+ gfc_conv_intrinsic_malloc): New functions.
+
+2015-08-24 Louis Krupp <louis.krupp@zoho.com>
+
+ PR fortran/62536
+ PR fortran/66175
+ * decl.c (gfc_match_end): Clean up nested BLOCKs.
+ * parse.c (parse_block_construct): Deal gracefully with cleaned-up
+ BLOCKs.
+
+2015-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/54572
+ * config-lang.in: Add libbacktrace to target_libs.
+
+2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
+
+ * dependency.c, dependency.h, gfortran.h, io.c, module.c,
+ parse.h, resolve.c, trans-types.h, trans.h: remove useless typedefs.
+
+2015-08-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/54656
+ * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Add decl
+ for quadruple precision BUILT_IN_SQRT.
+
+2015-08-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-intrinsic.c (conv_intrinsic_ieee_is_negative): Use type
+ generic BUILT_IN_SIGNBIT.
+ (conv_intrinsic_ieee_copy_sign): Likewise.
+ * f95-lang.c (gfc_init_builtin_functions): Add BUILT_IN_ISINF,
+ BUILT_IN_ISINF_SIGN, BUILT_IN_SIGNBIT, BUILT_IN_ISLESS,
+ BUILT_IN_ISLESSGREATER, BUILT_IN_ISGREATER. Remove non-type generic
+ variants of BUILT_IN_SIGNBIT.
+ * mathbuiltins.def: Remove SIGNBIT.
+
+2015-08-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/41387
+ * gfortran.texi: New section "File operations on symbolic links".
+
+2015-08-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/67059
+ * gfortranspec.c (lang_specific_driver): Adjust --version output.
+
+2015-08-08 Bud Davis <jmdavis@link.com>
+ Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/59746
+ * symbol.c (gfc_restore_last_undo_checkpoint): Delete a common block
+ symbol if it was put in the list.
+
+2015-08-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/64104
+ * expr.c (gfc_check_init_expr): Allow some IEEE functions in
+ constant expressions.
+ (external_spec_function): Allow some IEEE functions in specification
+ expressions.
+ * simplify.c (gfc_simplify_ieee_selected_real_kind): Remove.
+ (simplify_ieee_selected_real_kind, simplify_ieee_support,
+ matches_ieee_function_name, gfc_simplify_ieee_functions): New
+ functions.
+ * gfortran.h (gfc_simplify_ieee_selected_real_kind): Remove
+ prototype.
+ (gfc_simplify_ieee_functions): Add prototype.
+
+2015-08-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * trans.h (gfc_trans_scalar_assign): Remove fourth argument.
+ * trans-expr.c (gfc_trans_scalar_assign): Merge fourth into sixth
+ argument.
+ (gfc_conv_subref_array_arg, gfc_trans_subarray_assign,
+ gfc_trans_subcomponent_assign, gfc_trans_assignment_1): Update callers.
+ * trans-array.c (gfc_conv_expr_descriptor): Ditto.
+ * trans-stmt.c (forall_make_variable_temp,
+ generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
+ gfc_trans_where_assign, gfc_trans_where_3): Ditto.
+
+2015-08-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/52846
+ * module.c (check_access): Return true if new static flag
+ 'dump_smod' is true..
+ (gfc_dump_module): Rename original 'dump_module' and call from
+ new version. Use 'dump_smod' rather than the stack state to
+ determine if a submodule is being processed. The new version of
+ this procedure sets 'dump_smod' depending on the stack state and
+ then writes both the mod and smod files if a module is being
+ processed or just the smod for a submodule.
+ (gfc_use_module): Eliminate the check for module_name and
+ submodule_name being the same.
+ * trans-decl.c (gfc_finish_var_decl, gfc_build_qualified_array,
+ get_proc_pointer_decl): Set TREE_PUBLIC unconditionally and use
+ the conditions to set DECL_VISIBILITY as hidden and to set as
+ true DECL_VISIBILITY_SPECIFIED.
+
+2015-08-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/64022
+ * simplify.c (gfc_simplify_ieee_selected_real_kind): Extend IEEE
+ support to all real kinds.
+
+2015-08-03 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66942
+ * trans-expr.c (gfc_conv_procedure_call): Avoid NULL pointer reference
+
+2015-08-03 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/64921
+ * class.c (generate_finalization_wrapper): Set finalization
+ procedure symbol's always_explicit attribute.
+
+2015-08-01 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/67091
+ * trans-intrinsic.c (gfc_conv_associated): Add the pre and post
+ blocks for the second argument to se.
+
+2015-07-27 Thomas Schwinge <thomas@codesourcery.com>
+
+ * parse.c (parse_oacc_structured_block): Fix logic error.
+ Reported by Mikael Morin <mikael.morin@sfr.fr>.
+
+2015-07-24 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/64986
+ * trans-expr.c (gfc_trans_assignment_1): Put component deallocation
+ code at the beginning of the block.
+
+2015-07-22 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/61831
+ PR fortran/66929
+ * trans-array.c (gfc_get_proc_ifc_for_expr): Use esym as procedure
+ symbol if available.
+
+2015-07-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/52846
+ * decl.c (gfc_match_end): Pick out declared submodule name from
+ the composite identifier.
+ * gfortran.h : Add 'submodule_name' to gfc_use_list structure.
+ * module.c (gfc_match_submodule): Define submodule_name and add
+ static 'submodule_name'.
+ (gfc_match_submodule): Build up submodule filenames, using '@'
+ as a delimiter. Store the output filename in 'submodule_name'.
+ Similarly, the submodule identifier is built using '.' as an
+ identifier.
+ (gfc_dump_module): If current state is COMP_SUBMODULE, write
+ to file 'submodule_name', using SUBMODULE_EXTENSION.
+ (gfc_use_module): Similarly, use the 'submodule_name' field in
+ the gfc_use_list structure and SUBMODULE_EXTENSION to read the
+ implicitly used submodule files.
+
+2015-07-17 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
+
+ * trans-intrinsic.c (conv_co_collective): Remove redundant address
+ operator in the generated code.
+
+2015-07-17 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/66035
+ * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_assignment):
+ Compute the size to allocate for class and derived type objects
+ correclty.
+ (gfc_trans_subcomponent_assign): Only allocate memory for a
+ component when the object to assign is not an allocatable class
+ object (the memory is already present for allocatable class objects).
+ Furthermore use copy_class_to_class for assigning the rhs to the
+ component (may happen for dummy class objects on the rhs).
+
+2015-07-17 Mikael Morin <mikael@gcc.gnu.org>
+ Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ PR fortran/61831
+ * trans-array.c (gfc_conv_array_parameter): Guard allocatable
+ component deallocation code generation with descriptorless
+ calling convention flag.
+ * trans-expr.c (gfc_conv_expr_reference): Remove allocatable
+ component deallocation code generation from revision 212329.
+ (expr_may_alias_variables): New function.
+ (gfc_conv_procedure_call): New boolean elemental_proc to factor
+ check for procedure elemental-ness. Rename boolean f to nodesc_arg
+ and declare it in the outer scope. Use expr_may_alias_variables,
+ elemental_proc and nodesc_arg to decide whether generate allocatable
+ component deallocation code.
+ (gfc_trans_subarray_assign): Set deep copy flag.
+
+2015-07-16 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66724
+ PR fortran/66724
+ * io.c (is_char_type): Call gfc_resolve_expr ().
+ (match_open_element, match_dt_element, match_inquire_element): Fix
+ ASYNCHRONOUS case.
+
+2015-07-15 Andrew MacLeod <amacleod@redhat.com>
+
+ * trans-types.c: Remove multiline #include comment.
+
+2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * simplify.c (gfc_simplify_floor): Set precision of temporary to
+ that of arg.
+
+2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/64589
+ * class.c (find_intrinsic_vtab): Put/Search vtabs for intrinsic
+ types in the top-level namespace.
+
+2015-07-12 Aldy Hernandez <aldyh@redhat.com>
+
+ * trans-stmt.c: Fix double word typos.
+
+2015-07-09 Andrew MacLeod <amacleod@redhat.com>
+
+ * arith.c: Adjust includes for flags.h changes.
+ * array.c: Likewise.
+ * check.c: Likewise.
+ * decl.c: Likewise.
+ * error.c: Likewise.
+ * expr.c: Likewise.
+ * frontend-passes.c: Likewise.
+ * interface.c: Likewise.
+ * intrinsic.c: Likewise.
+ * io.c: Likewise.
+ * match.c: Likewise.
+ * openmp.c: Likewise.
+ * parse.c: Likewise.
+ * primary.c: Likewise.
+ * resolve.c: Likewise.
+ * scanner.c: Likewise.
+ * simplify.c: Likewise.
+ * symbol.c: Likewise.
+ * target-memory.c: Likewise.
+
+2015-07-07 Andrew MacLeod <amacleod@redhat.com>
+
+ * convert.c: Adjust includes.
+ * cpp.c: Likewise.
+ * decl.c: Likewise.
+ * f95-lang.c: Likewise.
+ * iresolve.c: Likewise.
+ * match.c: Likewise.
+ * module.c: Likewise.
+ * options.c: Likewise.
+ * target-memory.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-const.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-openmp.c: Likewise.
+ * trans-stmt.c: Likewise.
+ * trans-types.c: Likewise.
+ * trans.c: Likewise.
+
+2015-07-07 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/66578
+ * trans-array.c (gfc_conv_expr_descriptor): Ensure array descriptor
+ is one-based for non-full array refs. Correct the offset when a
+ rank_remap occurs.
+
+2015-07-06 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * io.c (check_char_variable): New function.
+ (match_open_element, match_close_element, match_file_element,
+ match_dt_element, match_inquire_element, match_wait_element): Use it.
+
+2015-07-06 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/58586
+ * resolve.c (resolve_symbol): Non-private functions in modules
+ with allocatable or pointer components are marked referenced
+ now. Furthermore is the default init especially for those
+ components now done in gfc_conf_procedure_call preventing
+ duplicate code.
+ * trans-decl.c (gfc_generate_function_code): Generate a fake
+ result decl for functions returning an object with allocatable
+ components and initialize them.
+ * trans-expr.c (gfc_conv_procedure_call): For value typed trees
+ use the tree without indirect ref. And for non-decl trees
+ add a temporary variable to prevent evaluating the tree
+ multiple times (prevent multiple function evaluations).
+ * trans.h: Made gfc_trans_structure_assign () protoype
+ available, which is now needed by trans-decl.c:gfc_generate_
+ function_code(), too.
+
+2015-07-04 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66725
+ * io.c (is_char_type): New function to test for BT_CHARACTER
+ (gfc_match_open, gfc_match_close, match_dt_element): Use it.
+
+2015-07-02 David Edelsohn <dje.gcc@gmail.com>
+
+ * trans-common.c: Include <map> after system.h.
+
+2015-07-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/52846
+ * decl.c (get_proc_name): Make a partially populated interface
+ symbol to carry the characteristics of a module procedure and
+ its result.
+ (variable_decl): Declarations of dummies or results in the
+ abreviated form of module procedure is an error.
+ (gfc_match_import): IMPORT is not permitted in the interface
+ declaration of module procedures.
+ (match_attr_spec): Submodule variables have implicit save
+ attribute for F2008 onwards.
+ (gfc_match_prefix): Add 'module' as the a prefix and set the
+ module_procedure attribute.
+ (gfc_match_formal_arglist): For a module procedure keep the
+ interface formal_arglist from the interface, match new the
+ formal arguments and then compare the number and names of each.
+ (gfc_match_procedure): Add case COMP_SUBMODULE.
+ (gfc_match_function_decl, gfc_match_subroutine_decl): Set the
+ module_procedure attribute.
+ (gfc_match_entry, gfc_match_end): Add case COMP_SUBMODULE. If
+ attr abr_modproc_decl is set, switch the message accordingly
+ for subroutines and functions.
+ (gfc_match_submod_proc): New function to match the abbreviated
+ style of submodule declaration.
+ * gfortran.h : Add ST_SUBMODULE and ST_END_SUBMODULE. Add the
+ attribute bits 'used_in_submodule' and 'module_procedure'. Add
+ the bit field 'abr_modproc_decl' to gfc_symbol. Add prototypes
+ for 'gfc_copy_dummy_sym', 'gfc_check_dummy_characteristics' and
+ 'gfc_check_result_characteristics'.
+ * interface.c : Add the prefix 'gfc_' to the names of functions
+ 'check_dummy(result)_characteristics' and all their references.
+ * match.h : Add prototype for 'gfc_match_submod_proc' and
+ 'gfc_match_submodule'.
+ (check_sym_interfaces): A module procedure is not an error in
+ a module procedure statment in a generic interface.
+ * module.c (gfc_match_submodule): New function. Add handling
+ for the 'module_procedure' attribute bit.
+ (gfc_use_module): Make sure that a submodule cannot use itself.
+ * parse.c (decode_statement): Set attr has_'import_set' for
+ the interface declaration of module procedures. Handle a match
+ occurring in 'gfc_match_submod_proc' and a match for
+ 'submodule'.
+ (gfc_enclosing_unit): Include the state COMP_SUBMODULE.
+ (gfc_ascii_statement): Add END SUBMODULE.
+ (accept_statement): Add ST_SUBMODULE.
+ (parse_spec): Disallow statement functions in a submodule
+ specification part.
+ (parse_contained): Add ST_END_SUBMODULE and COMP_SUBMODULE
+ twice each.
+ (get_modproc_result): Copy the result symbol of the interface.
+ (parse_progunit): Call it.
+ (set_syms_host_assoc): Make symbols from the ancestor module
+ and submodules use associated, as required by the standard and
+ set all private components public. Module procedures 'external'
+ attribute bit is reset and the 'used_in_submodule' bit is set.
+ (parse_module): If this is a submodule, use the ancestor module
+ and submodules. Traverse the namespace, calling
+ 'set_syms_host_assoc'. Add ST_END_SUBMODULE and COMP_SUBMODULE.
+ * parse.h : Add COMP_SUBMODULE.
+ * primary.c (match_variable): Add COMP_SUBMODULE.
+ * resolve.c (compare_fsyms): New function to compare the dummy
+ characteristics of a module procedure with its interface.
+ (resolve_fl_procedure): Compare the procedure, result and dummy
+ characteristics of a module_procedure with its interface, using
+ 'compare_fsyms' for the dummy arguments.
+ * symbol.c (gfc_add_procedure): Suppress the check for existing
+ procedures in the case of a module procedure.
+ (gfc_add_explicit_interface): Skip checks that must fail for
+ module procedures.
+ (gfc_add_type): Allow a new type to be added to module
+ procedures, their results or their dummy arguments.
+ (gfc_copy_dummy_sym): New function to generate new dummy args
+ and copy the characteristics from the interface.
+ * trans-decl.c (gfc_sym_mangled_function_id): Module procedures
+ must always have their names mangled as if they are symbols
+ coming from a declaration in a module.
+ (gfc_get_symbol_decl): Add 'used_in_submodule' to the assert.
+ (gfc_finish_var_decl): Symbols with the 'used_in_submodule' bit
+ set are set DECL_EXTERNAL as if they were use associated.
+
+2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/56520
+ * match.c (gfc_match_name): Special case unary minus and plus.
+
+2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66545
+ * primary.c (match_sym_complex_part): Do not dereference NULL pointer.
+
+2015-07-01 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * arith.c (gfc_arith_divide): With -Winteger-division,
+ warn about contant integer division if there is a non-zero
+ remainder.
+ * invoke.texi: Document -Winteger-division.
+ * lang.opt: Add -Winteger-division.
+
+2015-06-25 Andrew MacLeod <amacleod@redhat.com>
+
+ * f95-lang.c: Remove ipa-ref.h and plugin-api.h from include list.
+ * trans-decl.c: Likewise.
+
+2015-06-25 Richard Sandiford <richard.sandiford@arm.com>
+
+ * trans-decl.c (module_hasher): Likewise.
+ * trans.h (module_decl_hasher): Likewise.
+
+2015-06-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR fortran/66528
+ * error.c (gfc_warning_check): Restore the default output_buffer
+ before calling diagnostic_action_after_output.
+ (gfc_error_check): Likewise.
+ (gfc_diagnostics_init): Add comment.
+
+2015-06-23 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/64674
+ * parse.c (parse_associate): Figure the rank and as of a
+ class array in an associate early.
+ * primary.c (gfc_match_varspec): Prevent setting the
+ dimension attribute on the sym for classes.
+ * resolve.c (resolve_variable): Correct the component
+ ref's type for associated variables. Add a full array ref
+ when class array's are associated.
+ (resolve_assoc_var): Correct the type of the symbol,
+ when in the associate the expression's rank becomes scalar.
+ * trans-expr.c (gfc_conv_variable): Indirect ref needed for
+ allocatable associated objects.
+
+2015-06-19 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/66549
+ * resolve.c (resolve_global_procedure): Don't save and restore
+ OpenMP state around the call to gfc_resolve.
+ (gfc_resolve): Save OpenMP state on entry and restore it on return.
+
+2015-06-17 Andrew MacLeod <amacleod@redhat.com>
+
+ * convert.c: Do not include input.h, line-map.h or is-a.h.
+ * cpp.c: Likewise.
+ * decl.c: Likewise.
+ * f95-lang.c: Likewise.
+ * gfortran.h: Likewise.
+ * iresolve.c: Likewise.
+ * match.c: Likewise.
+ * module.c: Likewise.
+ * options.c: Likewise.
+ * target-memory.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-const.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-openmp.c: Likewise.
+ * trans-stmt.c: Likewise.
+ * trans-types.c: Likewise.
+ * trans.c: Likewise.
+
+2015-06-15 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/44672
+ PR fortran/45440
+ PR fortran/57307
+ * gfortran.h: Extend gfc_code.ext.alloc to carry a
+ flag indicating that the array specification has to be
+ taken from expr3.
+ * resolve.c (resolve_allocate_expr): Add F2008 notify
+ and flag indicating source driven array spec.
+ (resolve_allocate_deallocate): Check for source driven
+ array spec, when array to allocate has no explicit
+ array spec.
+ * trans-array.c (gfc_array_init_size): Get lower and
+ upper bound from a tree array descriptor, except when
+ the source expression is an array-constructor which is
+ fixed to be one-based.
+ (retrieve_last_ref): Extracted from gfc_array_allocate().
+ (gfc_array_allocate): Enable allocate(array, source=
+ array_expression) as specified by F2008:C633.
+ (gfc_conv_expr_descriptor): Add class tree expression
+ into the saved descriptor for class arrays.
+ * trans-array.h: Add temporary array descriptor to
+ gfc_array_allocate ().
+ * trans-expr.c (gfc_conv_procedure_call): Special handling
+ for _copy() routine translation, that comes without an
+ interface. Third and fourth argument are now passed by value.
+ * trans-stmt.c (gfc_trans_allocate): Get expr3 array
+ descriptor for temporary arrays to allow allocate(array,
+ source = array_expression) for array without array
+ specification.
+
+2015-06-14 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * intrinsic.texi: Change \leq to < in descrition of imaginary
+ part in argument to log.
+
+2015-06-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/66079
+ * trans-expr.c (gfc_conv_procedure_call): Allocatable scalar
+ function results must be freed and nullified after use. Create
+ a temporary to hold the result to prevent duplicate calls.
+ * trans-stmt.c (gfc_trans_allocate): Rename temporary variable
+ as 'source'. Deallocate allocatable components of non-variable
+ 'source's.
+
+2015-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
+
+ * f95-lang.c (gfc_create_decls): Register the main translation unit
+ through the new debug hook.
+
+2015-06-08 Andrew MacLeod <amacleod@redhat.com>
+
+ * convert.c : Adjust include files.
+ * cpp.c : Likewise.
+ * decl.c : Likewise.
+ * f95-lang.c : Likewise.
+ * gfortran.h : Likewise.
+ * iresolve.c : Likewise.
+ * match.c : Likewise.
+ * module.c : Likewise.
+ * openmp.c : Likewise.
+ * options.c : Likewise.
+ * target-memory.c : Likewise.
+ * trans-array.c : Likewise.
+ * trans-common.c : Likewise.
+ * trans-const.c : Likewise.
+ * trans-decl.c : Likewise.
+ * trans-expr.c : Likewise.
+ * trans-intrinsic.c : Likewise.
+ * trans-io.c : Likewise.
+ * trans-openmp.c : Likewise.
+ * trans-stmt.c : Likewise.
+ * trans-types.c : Likewise.
+ * trans.c : Likewise.
+
+2015-06-08 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66245
+ * match.c (gfc_match_type_is, gfc_match_class_is): Check if the
+ return type spec or derived type spec is validate.
+
+2015-06-06 Thomas Koenig <tkoenig@netcologne.de>
+
+ PR fortran/47659
+ * arith.c (eval_intrinsic_op): Set warn flag for
+ gfc_type_convert_binary if -Wconversion or -Wconversion-extra
+ are set.
+ (wprecision_real_real): New function.
+ (wprecision_int_real): New function.
+ (gfc_int2int): If -fno-range-check and -Wconversion are specified
+ and it is a narrowing conversion, warn.
+ (gfc_int2real): If there is a change in value for the conversion,
+ warn.
+ (gfc_int2complex): Likewise.
+ (gfc_real2int): If there is a fractional part to the real number,
+ warn with -Wconversion, otherwise warn with -Wconversion-extra.
+ (gfc_real2real): Emit warning if the constant was changed by
+ conversion with either -Wconversion or -Wconversion-extra. With
+ -Wconversion-extra, warn if no warning was issued earlier.
+ (gfc_real2complex): Likewise.
+ (gfc_complex2int): For -Wconversion or -Wconversion-extra, if
+ there was an imaginary part, warn; otherwise, warn for change in
+ value. Warn with -Wconversion-extra if no other warning was
+ issued.
+ (gfc_complex2real): For -Wconversion or -Wconversion-extra, if
+ there was an imaginary part, warn; otherwise, warn for change in
+ value. Warn with -Wconversion-extra if no other warning was
+ issued.
+ (gfc_complex2complex): For -Wconversion, warn if the value of
+ either the real or the imaginary part was changed. Warn for
+ -Wconversion-extra if no prior warning was issued.
+ * expr.c (gfc_check_assign): Remove check for change in value.
+ * primary.c (match_real_constant): For -Wconversion-extra, check
+ against a number in which the last non-zero digit has been
+ replaced with a zero. If the number compares equal, warn.
+ * intrinsic.c (gfc_convert_type_warn): Do not warn about constant
+ conversions.
+
+2015-06-05 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66347
+ * resolve.c (apply_default_init_local): Do not dereference a NULL
+ pointer.
+
+2015-06-05 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/66385
+ * frontend-passes.c (combine_array_constructor): Return early if
+ inside a FORALL loop.
+
+2015-06-05 Aldy Hernandez <aldyh@redhat.com>
+
+ * f95-lang.c (gfc_write_global_declarations): Remove.
+ (LANG_HOOKS_WRITE_GLOBALS): Remove.
+ (gfc_write_global_declarations): Move code from here to...
+ (gfc_be_parse_file): ...here.
+ Call global_decl_processing.
+ * trans-decl.c (gfc_emit_parameter_debug_info): Rename global_decl
+ to early_global_decl.
+
+2015-06-05 Russell Whitesides <russelldub@gmail.com>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/40958
+ PR fortran/60780
+ PR fortran/66377
+ * module.c (load_equiv): Add check for loading duplicate EQUIVALENCEs
+ from different modules. Eliminate the pruning of unused
+ equivalence-objects
+
+2015-06-04 Thomas Koenig <tkoenig@netcologne.de>
+
+ PR fortran/58749
+ * iresolve.c (gfc_resolve_adjustl): If string has a charlen,
+ copy it to the function.
+ (gfc_resolve_adjustr): Likewise.
+
+2015-06-04 Andrew MacLeod <amacleod@redhat.com>
+
+ * convert.c: Adjust includes for restructured coretypes.h.
+ * cpp.c: Likewise.
+ * decl.c: Likewise.
+ * f95-lang.c: Likewise.
+ * iresolve.c: Likewise.
+ * match.c: Likewise.
+ * module.c: Likewise.
+ * options.c: Likewise.
+ * target-memory.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-const.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-openmp.c: Likewise.
+ * trans-stmt.c: Likewise.
+ * trans-types.c: Likewise.
+ * trans.c: Likewise.
+
+2015-06-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66380
+ * simplify.c (gfc_simplify_reshape): Convert assert into returning
+ NULL, which triggers an error condition.
+
+2015-05-27 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/65548
+ * trans-stmt.c (gfc_trans_allocate): Add missing location
+ information for e3rhs.
+
+2015-05-26 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/66082
+ * trans-array.c (gfc_conv_array_parameter): Ensure that all
+ non-variable arrays with allocatable components have the
+ components deallocated after the procedure call.
+
+2015-05-24 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/66257
+ * resolve.c (resolve_actual_arglist): Don't throw an error
+ if the argument with procedure pointer component is not a variable.
+
+2015-05-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR fortran/44054
+ * gfortran.h (struct gfc_error_buf): Rename as
+ gfc_error_buffer. Move closer to push, pop and free
+ methods. Reimplement using an output_buffer.
+ * error.c (errors, warnings, warning_buffer, cur_error_buffer):
+ Delete everywhere in this file.
+ (error_char): Delete all contents.
+ (gfc_increment_error_count): Delete.
+ (gfc_error_now): Update comment. Set error_buffer.flag.
+ (gfc_warning_check): Do not handle warning_buffer.
+ (gfc_error_1): Delete.
+ (gfc_error_now_1): Delete.
+ (gfc_error_check): Simplify.
+ (gfc_move_error_buffer_from_to): Renamed from
+ gfc_move_output_buffer_from_to.
+ (gfc_push_error): Handle only gfc_error_buffer.
+ (gfc_pop_error): Likewise.
+ (gfc_free_error): Likewise.
+ (gfc_get_errors): Remove warnings and errors.
+ (gfc_diagnostics_init): Use static error_buffer.
+ (gfc_error_1,gfc_error_now_1): Delete declarations.
+ * symbol.c, decl.c, trans-common.c, data.c, expr.c, expr.c,
+ frontend-passes.c, resolve.c, match.c, parse.c: Replace
+ gfc_error_1 with gfc_error and gfc_error_now_1 with gfc_error_1
+ everywhere.
+ * f95-lang.c (gfc_be_parse_file): Do not update errorcount and
+ warningcount here.
+ * primary.c (match_complex_constant): Replace gfc_error_buf and
+ output_buffer with gfc_error_buffer.
+
+2015-05-22 Jim Wilson <jim.wilson@linaro.org>
+
+ * Make-lang.in (check_gfortran_parallelize): Update comment.
+
+2015-05-21 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/66176
+ * frontend-passes.c (check_conjg_variable): New function.
+ (inline_matmul_assign): Use it to keep track of conjugated
+ variables.
+
+2015-05-20 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/65548
+ * trans-stmt.c (gfc_trans_allocate): Always retrieve the
+ descriptor or a reference to a source= expression for
+ arrays and non-arrays, respectively. Use a temporary
+ symbol and gfc_trans_assignment for all source=
+ assignments to allocated objects besides for class and
+ derived types.
+
+2015-05-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/66199
+ * trans-openmp.c (gfc_trans_omp_teams): Set OMP_TEAMS_COMBINED for
+ combined constructs.
+ (gfc_trans_omp_target): Make sure BIND_EXPR has non-NULL
+ BIND_EXPR_BLOCK.
+
+2015-05-19 David Malcolm <dmalcolm@redhat.com>
+
+ * cpp.c (maybe_print_line): Strengthen local "map" from
+ const line_map * to const line_map_ordinary *.
+ (cb_file_change): Likewise for param "map" and local "from".
+ (cb_line_change): Likewise for local "map".
+
+2015-05-19 Mikhail Maltsev <maltsevm@gmail.com>
+
+ * interface.c (compare_actual_formal): Use std::swap instead of
+ explicit swaps.
+ * trans-array.c (gfc_trans_scalarized_loop_end): Likewise.
+ * trans-intrinsic.c (walk_inline_intrinsic_transpose): Likewise.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66106
+ * interface.c(gfc_match_end_interface): Enforce F2008 C1202 (R1201).
+ * match.c(gfc_op2string): Return 'none' for INTRINSIC_NONE.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66057
+ * decl.c(gfc_match_generic): Detected a malformed GENERIC statement.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66043
+ * gfortran.dg/storage_size_6.f90: New tests.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66043
+ * gfortran.dg/storage_size_6.f90: New tests.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66044
+ * decl.c(gfc_match_entry): Change a gfc_internal_error() into
+ a gfc_error()
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66043
+ * gfortran.dg/storage_size_6.f90: New tests.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66040
+ * parse.c(verify_st_order): Replace a gfc_internal_error with your
+ generic gfc_error.
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/66039
+ * io.c (match_filepos): Check for incomplete/mangled REWIND, FLUSH,
+ BACKSPACE, and ENDFILE statements
+
+2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/64925
+ * symbol.c(check_conflict): Check for a conflict between a dummy
+ argument and an internal procedure name.
+
+2015-05-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/65903
+ * io.c (format_lex): Change to NONSTRING when checking for
+ possible doubled quote.
+ * scanner.c (gfc_next_char_literal): Revert change from 64506
+ and add a check for quotes and return.
+
+2015-05-16 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/66113
+ * expr.c (is_parent_of_current_ns): New function.
+ (check_restricted): Use it.
+
+2015-05-16 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR fortran/44054
+
+ Replace all calls to gfc_notify_std_1 with gfc_notify_std and
+ gfc_warning_1 with gfc_warning.
+ * decl.c (gfc_verify_c_interop_param): Here.
+ * resolve.c (resolve_branch): Here.
+ (resolve_fl_derived): Here.
+ * dependency.c (gfc_check_argument_var_dependency):
+ * scanner.c (preprocessor_line): Use gfc_warning_now_at. Fix line
+ counter and locations before and after warning.
+ * gfortran.h (gfc_warning_1, gfc_warning_now_1, gfc_notify_std_1):
+ Delete.
+ (gfc_warning_now_at): Declare.
+ * error.c (gfc_warning_1): Delete.
+ (gfc_notify_std_1): Delete.
+ (gfc_warning_now_1): Delete.
+ (gfc_format_decoder): Handle two locations.
+ (gfc_diagnostic_build_prefix): Rename as
+ gfc_diagnostic_build_kind_prefix.
+ (gfc_diagnostic_build_locus_prefix): Take an expanded_location
+ instead of diagnostic_info.
+ (gfc_diagnostic_build_locus_prefix): Add overload that takes two
+ expanded_location.
+ (gfc_diagnostic_starter): Handle two locations.
+ (gfc_warning_now_at): New.
+ (gfc_diagnostics_init): Initialize caret_chars array.
+ (gfc_diagnostics_finish): Reset caret_chars array to default.
+
+2015-05-16 Mikael Morin <mikael@gcc.gnu.org>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/65792
+ * trans-expr.c (gfc_trans_subcomponent_assign): Always assign
+ the expression component to the destination. In addition, if
+ the component has allocatable components, copy them and
+ deallocate those of the expression, if it is not a variable.
+ The expression is fixed if not a variable to prevent multiple
+ evaluations.
+
+2015-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/66111
+ * frontend-passes.c (has_dimen_vector_ref): New function.
+ (inline_matmul_assign): Use it to return early in case
+ of unhandled vector subscripts.
+
+2015-05-12 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/66041
+ PR fortran/37131
+ * gfortran.h (gfc_array_spec): Add field resolved.
+ * array.c (gfc_resolve_array_spec): Resolve array spec
+ only once.
+
+2015-05-11 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/66100
+ * simplify.c (simplify_bound): Fix assert to accept subobject arrays.
+
+2015-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/66041
+ * frontend-passes.c (scalarized_expr): Set correct dimension and
+ shape for the expression to be passed to lbound. Remove trailing
+ references after array refrence.
+ (inline_matmul_assign): Remove gfc_copy_expr from calls
+ to scalarized_expr().
+
+2015-05-10 Mikael Morin <mikael@gcc.gnu.org>
+
+ * simplify.c (simplify_bound_dim): Don't check for emptyness
+ in the case of cobound simplification. Factor lower/upper
+ bound differenciation before the actual simplification.
+ (simplify_bound): Remove assumed shape specific simplification.
+ Don't give up early for the lbound of an assumed shape.
+
+2015-05-09 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/65894
+ * trans-array.h (gfc_scalar_elemental_arg_saved_as_reference):
+ New prototype.
+ * trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
+ New function.
+ (gfc_add_loop_ss_code): Use gfc_scalar_elemental_arg_saved_as_reference
+ as conditional.
+ (gfc_walk_elemental_function_args): Set the dummy_arg field.
+ * trans.h (gfc_ss_info): New subfield dummy_arg.
+ * trans-expr.c (gfc_conv_procedure_call): Revert the change
+ of revision 222361.
+ (gfc_conv_expr): Use gfc_scalar_elemental_arg_saved_as_reference
+ as conditional.
+
+2015-05-08 Mikael Morin <mikael@gcc.gnu.org>
+
+ * trans-array.c (gfc_walk_elemental_function_args):
+ Don't skip the advance to the next dummy argument when skipping
+ absent optional args.
+
+2015-05-05 David Malcolm <dmalcolm@redhat.com>
+
+ * expr.c (check_inquiry): Fix indentation so that it reflects the
+ block structure.
+ * interface.c (compare_parameter): Likewise.
+ * parse.c (parse_oacc_structured_block): Likewise.
+ * target-memory.c (expr_to_char): Likewise.
+ * trans-types.c (gfc_init_kinds): Likewise.
+
+2015-05-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/65976
+ * invoke.texi: Remove 'no-' in '-fno-fixed-form'
+
+2015-05-01 Mikael Morin <mikael@gcc.gnu.org>
+
+ * simplify.c (simplify_bound_dim): Tighten the check for array fullness
+ by also checking for absence of subreference.
+ (simplify_bound): Don't skip simplification if the array
+ has subreferences.
+ (simplify_cobound): Same.
+
+2015-04-30 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/37131
+ * simplify.c (simplify_bound): Get constant lower bounds of one
+ from array spec for assumed and explicit shape shape arrays if
+ the lower bounds are indeed one.
+
+2015-04-30 David Malcolm <dmalcolm@redhat.com>
+
+ * options.c (gfc_init_options): Remove spurious second
+ semicolon.
+ * trans-stmt.c (gfc_trans_allocate): Likewise.
+
+2015-04-28 Andre Vehreschild <vehre@gmx.de>
+
+ * interface.c (gfc_compare_types): Check for unlimited
+ polymorphism flag in the correct position indepent of the _data
+ component being present or not. This prevents a segfault, when
+ the _data component is not present.
+ * symbol.c (gfc_type_compatible): Same.
+
+2015-04-27 Jim Wilson <jim.wilson@linaro.org>
+
+ * Make-lang.in (fortran.mostlyclean): Remove gfortran and
+ gfortran-cross.
+
+2015-04-27 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/59678
+ PR fortran/65841
+ * trans-array.c (duplicate_allocatable): Fixed deep copy of
+ allocatable components, which are liable for copy only, when
+ they are allocated.
+ (gfc_duplicate_allocatable): Add deep-copy code into if
+ component allocated block. Needed interface change for that.
+ (gfc_copy_allocatable_data): Supplying NULL_TREE for code to
+ add into if-block for checking whether a component was
+ allocated.
+ (gfc_duplicate_allocatable_nocopy): Likewise.
+ (structure_alloc_comps): Likewise.
+ * trans-array.h: Likewise.
+ * trans-expr.c (gfc_trans_alloc_subarray_assign): Likewise.
+ * trans-openmp.c (gfc_walk_alloc_comps): Likewise.
+
+2015-04-23 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/60322
+ * expr.c (gfc_lval_expr_from_sym): Code to select the regular
+ or class array added.
+ * gfortran.h: Add IS_CLASS_ARRAY macro.
+ * trans-array.c (gfc_add_loop_ss_code): Treat class objects
+ to be referenced always.
+ (build_class_array_ref): Adapt retrieval of array descriptor.
+ (build_array_ref): Likewise.
+ (gfc_conv_array_ref): Hand the vptr or the descriptor to
+ build_array_ref depending whether the sym is class or not.
+ (gfc_trans_array_cobounds): Select correct gfc_array_spec for
+ regular and class arrays.
+ (gfc_trans_array_bounds): Likewise.
+ (gfc_trans_dummy_array_bias): Likewise.
+ (gfc_get_dataptr_offset): Correcting call of build_array_ref.
+ (gfc_conv_expr_descriptor): Set the array's offset to -1 when
+ lbound in inner most dim is 1 and symbol non-pointer/assoc.
+ * trans-decl.c (gfc_build_qualified_array): Select correct
+ gfc_array_spec for regular and class arrays.
+ (gfc_build_dummy_array_decl): Likewise.
+ (gfc_get_symbol_decl): Get a dummy array for class arrays.
+ (gfc_trans_deferred_vars): Tell conv_expr that the descriptor
+ is desired.
+ * trans-expr.c (gfc_class_vptr_get): Get the class descriptor
+ from the correct location for class arrays.
+ (gfc_class_len_get): Likewise.
+ (gfc_conv_intrinsic_to_class): Add handling of _len component.
+ (gfc_conv_class_to_class): Prevent access to unset array data
+ when the array is an optional argument. Add handling of _len
+ component.
+ (gfc_copy_class_to_class): Check that _def_init is non-NULL
+ when used in _vptr->copy()
+ (gfc_trans_class_init_assign): Ensure that the rank of
+ _def_init is zero.
+ (gfc_conv_component_ref): Get the _vptr along with _data refs.
+ (gfc_conv_variable): Make sure the temp array descriptor is
+ returned for class arrays, too, and that class arrays are
+ dereferenced correctly.
+ (gfc_conv_procedure_call): For polymorphic type initialization
+ the initializer has to be a pointer to _def_init stored in a
+ dummy variable, which then needs to be used by value.
+ * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Use the
+ temporary array descriptor for class arrays, too.
+ (gfc_conv_intrinsic_storage_size): Likewise.
+ (gfc_conv_intrinsic_loc): Add ref to _data for BT_CLASS
+ expressions.
+ * trans-stmt.c (trans_associate_var): Use a temporary array for
+ the associate variable of class arrays, too, making the array
+ one-based (lbound == 1).
+ * trans-types.c (gfc_is_nodesc_array): Use the correct
+ array data.
+ * trans.c (gfc_build_array_ref): Use the dummy array descriptor
+ when present.
+ * trans.h: Add class_vptr to gfc_se for storing a class ref's
+ vptr.
+
+2015-04-22 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/65429
+ * decl.c (add_init_expr_to_sym): Set the length type parameter.
+
+2015-04-10 Tobias Burnus <burnus@net-b.de>
+
+ * trans-stmt.c (gfc_trans_lock_unlock): Implement -fcoarray=lib
+ version; reject not-yet-implemented variants.
+ * trans-types.c (gfc_get_derived_type): For lock_type with
+ -fcoarray=lib, use a void pointer as type.
+ * trans.c (gfc_allocate_using_lib, gfc_allocate_allocatable):
+ Handle lock_type with -fcoarray=lib.
+
+2015-04-10 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/56674
+ PR fortran/58813
+ PR fortran/59016
+ PR fortran/59024
+ * symbol.c (save_symbol_data, gfc_save_symbol_data): Rename the
+ former to the latter and make it non-static. Update callers.
+ * gfortran.h (gfc_save_symbol_data): New prototype.
+ * decl.c (gfc_match_decl_type_spec): Call 'gfc_save_symbol_data'
+ before modifying symbols 'sym' and 'dt_sym'.
+
+2013-04-09 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/56852
+ * primary.c (gfc_variable_attr): Avoid ICE on AR_UNKNOWN if any
+ of the index variables are untyped and errors are present.
+
+2015-04-07 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/65548
+ * trans-stmt.c (gfc_trans_allocate): For intrinsic functions
+ use conv_expr_descriptor() instead of conv_expr_reference().
+
+2015-03-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/65597
+ * trans-openmp.c (gfc_trans_omp_do): For !simple simd with explicit
+ linear clause for the iterator set OMP_CLAUSE_LINEAR_NO_COPYIN.
+ For implcitly added !simple OMP_CLAUSE_LINEAR set it too. Use step 1
+ instead of the original step on the new iterator - count.
+
+2015-03-25 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/64952
+ PR fortran/65532
+ * gfortran.h (struct gfc_namespace): New field 'types_resolved'.
+ * resolve.c (resolve_types): Return early if field 'types_resolved'
+ is set. Set 'types_resolved' at the end.
+
+2015-03-24 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/55901
+ * trans-expr.c (gfc_conv_structure): Fixed indendation.
+ Using integer_zero_node now instead of explicitly
+ constructing a integer constant zero node.
+ (gfc_conv_derived_to_class): Add handling of _len component,
+ i.e., when the rhs has a string_length then assign that to
+ class' _len, else assign 0.
+ (gfc_conv_intrinsic_to_class): Likewise.
+
+2015-03-24 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/64787
+ PR fortran/57456
+ PR fortran/63230
+ * class.c (gfc_add_component_ref): Free no longer needed
+ ref-chains to prevent memory loss.
+ (find_intrinsic_vtab): For deferred length char arrays or
+ unlimited polymorphic objects, store the size in bytes of one
+ character in the size component of the vtab.
+ * gfortran.h: Added gfc_add_len_component () define.
+ * trans-array.c (gfc_trans_create_temp_array): Switched to new
+ function name for getting a class' vtab's field.
+ (build_class_array_ref): Likewise.
+ (gfc_array_init_size): Using the size information from allocate
+ more consequently now, i.e., the typespec of the entity to
+ allocate is no longer needed. This is to address the last open
+ comment in PR fortran/57456.
+ (gfc_array_allocate): Likewise.
+ (structure_alloc_comps): gfc_copy_class_to_class () needs to
+ know whether the class is unlimited polymorphic.
+ * trans-array.h: Changed interface of gfc_array_allocate () to
+ reflect the no longer needed typespec.
+ * trans-expr.c (gfc_find_and_cut_at_last_class_ref): New.
+ (gfc_reset_len): New.
+ (gfc_get_class_array_ref): Switch to new function name for
+ getting a class' vtab's field.
+ (gfc_copy_class_to_class): Added flag to know whether the class
+ to copy is unlimited polymorphic. Adding _len dependent code
+ then, which calls ->vptr->copy () with four arguments adding
+ the length information ->vptr->copy(from, to, from_len, to_cap).
+ (gfc_conv_procedure_call): Switch to new function name for
+ getting a class' vtab's field.
+ (alloc_scalar_allocatable_for_assignment): Use the string_length
+ as computed by gfc_conv_expr and not the statically backend_decl
+ which may be incorrect when ref-ing.
+ (gfc_trans_assignment_1): Use the string_length variable and
+ not the rse.string_length. The former has been computed more
+ generally.
+ * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Switch to new
+ function name for getting a class' vtab's field.
+ (gfc_conv_intrinsic_storage_size): Likewise.
+ (gfc_conv_intrinsic_transfer): Likewise.
+ * trans-stmt.c (gfc_trans_allocate): Restructured to evaluate
+ source=expr3 only once before the loop over the objects to
+ allocate, when the objects are not arrays. Doing correct _len
+ initialization and calling of vptr->copy () fixing PR 64787.
+ (gfc_trans_deallocate): Reseting _len to 0, preventing future
+ errors.
+ * trans.c (gfc_build_array_ref): Switch to new function name
+ for getting a class' vtab's field.
+ (gfc_add_comp_finalizer_call): Likewise.
+ * trans.h: Define the prototypes for the gfc_class_vtab_*_get ()
+ and gfc_vptr_*_get () functions.
+ Added gfc_find_and_cut_at_last_class_ref () and
+ gfc_reset_len () routine prototype. Added flag to
+ gfc_copy_class_to_class () prototype to signal an unlimited
+ polymorphic entity to copy.
+
+2015-03-24 Iain Sandoe <iain@codesourcery.com>
+ Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi (_gfortran_caf_sync_memory): Improve wording.
+
+2015-03-23 Paul Thomas <pault@gcc.gnu.org>
+ Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/64952
+ * gfortran.h (struct symbol_attribute) : New field
+ 'array_outer_dependency'.
+ * trans.h (struct gfc_ss_info): New field 'array_outer_dependency'.
+ * module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY.
+ (attr_bits): Append same value to initializer.
+ (mio_symbol_attribute): Handle 'array_outer_dependency' attr
+ in module read and write.
+ * resolve.c (update_current_proc_outer_array_dependency): New function.
+ (resolve_function, resolve_call): Add code to update current procedure's
+ 'array_outer_dependency' attribute.
+ (resolve_variable): Mark current procedure with attribute
+ array_outer_dependency if the variable is an array coming from outside
+ the current namespace.
+ (resolve_fl_procedure): Mark a procedure without body with attribute
+ 'array_outer_dependency'.
+ * trans-array.c (gfc_conv_resolve_dependencies): If any ss is
+ marked as 'array_outer_dependency' generate a temporary.
+ (gfc_walk_function_expr): If the function may reference external arrays,
+ mark the head gfc_ss with flag 'array_outer_dependency'.
+
+2015-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/59513
+ * gfortran.texi (Read/Write after EOF marker): New information.
+
+2015-03-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gfortran.texi (_gfortran_caf_sync_memory): Put @{xxx} in one
+ line.
+
+2015-03-21 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi (_gfortran_caf_sync_all, _gfortran_caf_sync_images,
+ _gfortran_caf_sync_memory, _gfortran_caf_error_stop,
+ _gfortran_caf_error_stop_str, _gfortran_caf_atomic_define,
+ _gfortran_caf_atomic_ref, _gfortran_caf_atomic_cas,
+ _gfortran_caf_atomic_op): New sections.
+
+2015-03-21 Tobias Burnus <burnus@net-b.de>
+
+ * trans-expr.c (gfc_get_tree_for_caf_expr): Reject unimplemented
+ coindexed coarray accesses.
+
+2015-03-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/59198
+ * trans-types.c (gfc_get_derived_type): If an abstract derived
+ type with procedure pointer components has no other type of
+ component, return the backend_decl. Otherwise build the
+ components if any of the non-procedure pointer components have
+ no backend_decl.
+
+2015-03-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/64432
+ *trans-intrinisic.c (conv_intrinsic_system_clock): Check the
+ smallest kind passed in user arguments and hardcode tesults for
+ KIND=1 or KIND=2 to indicate no clock available.
+
+2015-03-16 Andre Vehreschild <vehre@gmx.de>
+
+ * resolve.c: Prevent segfault on illegal input.
+
+2015-03-14 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/61138
+ * trans-expr.c (gfc_trans_pointer_assignment): Clear DESCRIPTOR_ONLY
+ field before reusing LSE.
+
+2015-03-11 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/65200
+ * gfortran.texi: Document behavior when opening files without
+ explicit ACTION= specifier.
+
+2015-03-10 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/65024
+ * trans-expr.c (gfc_conv_component_ref): If the component
+ backend declaration is missing and the derived type symbol is
+ available in the reference, call gfc_build_derived_type.
+
+2015-03-10 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
+ Tobias Burnus <burnus@net-b.de>
+
+ * trans.h (caf_sync_memory): New function decl tree.
+ * trans-decl.c (gfc_build_builtin_function_decls): Define it.
+ (create_main_function): Don't call sync_synchronize and leave
+ it to the CAF library.
+ * trans-stmt.c (gfc_trans_stop): Ditto.
+ (gfc_trans_sync): Ditto; add call library call for sync memory.
+
+2015-03-08 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/60898
+ * resolve.c (resolve_symbol): Check that the symbol found by
+ name lookup really is the current symbol being resolved.
+
+2015-03-02 Tobias Burnus <burnus@net-b.de>
+
+ * check.c (gfc_check_atomic): Properly check for coarrayness
+ and for being coindexed.
+
+2015-02-26 Martin Liska <mliska@suse.cz>
+
+ * resolve.c: Rename enum 'comparison' to 'compare_result' as
+ solution for -Wodr issue.
+
+2015-02-24 Thomas Schwinge <thomas@codesourcery.com>
+
+ PR libgomp/64625
+ * f95-lang.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
+ Remove macros.
+ (DEF_FUNCTION_TYPE_VAR_7, DEF_FUNCTION_TYPE_VAR_11): New macros.
+ * types.def (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
+ (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
+ Remove function types.
+ (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR)
+ (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR)
+ (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
+ New function types.
+
+2015-02-22 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ PR fortran/64980
+ PR fortran/61960
+ * trans-expr.c (gfc_apply_interface_mapping_to_expr): Remove mapping
+ for component references to class objects.
+ (gfc_conv_procedure_call): Compare the class by name.
+
+2015-02-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/64506
+ * scanner.c (gfc_next_char_literal): For free form source,
+ check for '!' and if found, clear the comment and go back
+ and get the next character. For fixed form source, skip the
+ rest of the line.
+
+2015-02-12 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/64932
+ * trans-stmt.c (gfc_trans_deallocate): If a component array
+ expression is not a descriptor type and it is a derived type
+ that has allocatable components and is not finalizable, then
+ deallocate the allocatable components.
+
+2015-02-08 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/63744
+ * module.c (check_for_ambiguous): Change argument type
+ from gfc_symbol to gfc_symtree. Check local (symtree) name
+ instead of original (symbol) name.
+ (read_module): Update caller.
+
+2015-02-06 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/63205
+ * gfortran.h: Add 'must finalize' field to gfc_expr and
+ prototypes for gfc_is_alloc_class_scalar_function and for
+ gfc_is_alloc_class_array_function.
+ * expr.c (gfc_is_alloc_class_scalar_function,
+ gfc_is_alloc_class_array_function): New functions.
+ * trans-array.c (gfc_add_loop_ss_code): Do not move the
+ expression for allocatable class scalar functions outside the
+ loop.
+ (conv_array_index_offset): Cope with deltas being NULL_TREE.
+ (build_class_array_ref): Do not return with allocatable class
+ array functions. Add code to pick out the returned class array.
+ Dereference if necessary and return if not a class object.
+ (gfc_conv_scalarized_array_ref): Cope with offsets being NULL.
+ (gfc_walk_function_expr): Return an array ss for the result of
+ an allocatable class array function.
+ * trans-expr.c (gfc_conv_subref_array_arg): Remove the assert
+ that the argument should be a variable. If an allocatable class
+ array function, set the offset to zero and skip the write-out
+ loop in this case.
+ (gfc_conv_procedure_call): Add allocatable class array function
+ to the assert. Call gfc_conv_subref_array_arg for allocatable
+ class array function arguments with derived type formal arg..
+ Add the code for handling allocatable class functions, including
+ finalization calls to prevent memory leaks.
+ (arrayfunc_assign_needs_temporary): Return if an allocatable
+ class array function.
+ (gfc_trans_assignment_1): Set must_finalize to rhs expression
+ for allocatable class functions. Set scalar_to_array as needed
+ for scalar class allocatable functions assigned to an array.
+ Nullify the allocatable components corresponding the the lhs
+ derived type so that the finalization does not free them.
+
+2015-01-29 Andre Vehreschild <vehre@gmx.de>
+ Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/60289
+ Initial patch by Janus Weil
+ * resolve.c (resolve_allocate_expr): Add check for comp. only
+ when target is not unlimited polymorphic.
+ * trans-stmt.c (gfc_trans_allocate): Assign correct value to
+ _len component of unlimited polymorphic entities.
+
+2015-02-05 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/64943
+ * resolve.c (resolve_transfer): Also check structure
+ constructors.
+
+2015-02-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/64757
+ * resolve.c (resolve_structure_cons): Obtain the rank of class
+ components.
+ * trans-expr.c (gfc_trans_alloc_subarray_assign): Do the
+ assignment to allocatable class array components.
+ (alloc_scalar_allocatable_for_subcomponent_assignment): If comp
+ is a class component, allocate to the _data field.
+ (gfc_trans_subcomponent_assign): If a class component with a
+ derived type expression set the _vptr field and for array
+ components, call gfc_trans_alloc_subarray_assign. For scalars,
+ the assignment is performed here.
+
+2015-02-04 Jakub Jelinek <jakub@redhat.com>
+
+ * options.c: Include langhooks.h.
+ (gfc_post_options): Change lang_hooks.name based on
+ selected -std= mode.
+
+2015-02-03 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * intrinsic.texi (CO_ASSOCIATED): c_prt_1 should be c_ptr_1.
+
+2015-01-30 Andre Vehreschild <vehre@gmx.de>
+
+ * trans-decl.c (gfc_get_symbol_decl): Removed duplicate code.
+ * trans-expr.c (gfc_conv_intrinsic_to_class): Fixed indentation.
+ Fixed datatype of charlen to be a 32-bit int.
+
+2015-02-01 Joseph Myers <joseph@codesourcery.com>
+
+ * error.c (gfc_warning (const char *, ...), gfc_warning_now (const
+ char *, ...)): Remove functions.
+ * gfortran.h (gfc_warning (const char *, ...), gfc_warning_now
+ (const char *, ...)): Remove declarations.
+ * arith.c, check.c, data.c, decl.c, frontend-passes.c,
+ interface.c, intrinsic.c, io.c, matchexp.c, module.c, openmp.c,
+ options.c, parse.c, primary.c, resolve.c, scanner.c, symbol.c,
+ trans-common.c, trans-const.c, trans-stmt.c: All callers of
+ gfc_warning and gfc_warning_now changed to pass 0 or option number
+ as first argument.
+
+2015-01-30 Joseph Myers <joseph@codesourcery.com>
+
+ * f95-lang.c, gfortranspec.c, trans-const.c, trans-expr.c: All
+ callers of fatal_error changed to pass input_location as first
+ argument.
+
+2015-01-28 Tobias Burnus <burnus@net-b.de>
+
+ * intrinsic.texi (CO_BROADCAST): Correct argument description.
+
+2015-01-27 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/63861
+ * trans-openmp.c (gfc_has_alloc_comps, gfc_trans_omp_clauses):
+ Fix handling for scalar coarrays.
+ * trans-types.c (gfc_get_element_type): Add comment.
+
+2015-01-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR fortran/64771
+ * interface.c: Remove <algorithm>.
+ (check_dummy_characteristics): Use MAX instead of std::max.
+
+2015-01-26 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/62044
+ * resolve.c (resolve_allocate_expr): If the default initializer
+ is NULL, keep the original MOLD expression so that the correct
+ typespec is available.
+
+2015-01-26 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/64771
+ * interface.c (check_dummy_characteristics): Fix coarray handling.
+
+2015-01-26 Tobias Burnus <burnus@net-b.de>
+
+ * io.c (gfc_match_inquire): Replace "-1" by a defined constant.
+
+2015-01-26 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/64230
+ * class.c (finalize_component): New argument 'sub_ns'. Insert code to
+ check if 'expr' is associated.
+ (generate_finalization_wrapper): Rename 'ptr' symbols to 'ptr1' and
+ 'ptr2'. Pass 'sub_ns' to finalize_component.
+
+2015-01-25 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/62044
+ * decl.c (gfc_match_derived_decl): Don't insert a new symtree element.
+ * module.c (MOD_VERSION): Bump.
+ (write_module): Don't write list of extensions.
+ (read_module): Don't jump over list of extensions;
+ don't load list of extensions.
+ (load_derived_extensions, write_dt_extensions,
+ write_derived_extensions): Remove.
+
+2015-01-24 Tobias Burnus <burnus@net-b.de>
+
+ * parse.c (gfc_parse_file): Fix two-location gfc_error call.
+
+2015-01-23 Martin Liska <mliska@suse.cz>
+
+ * decl.c (attr_decl1): Workaround -Wmaybe-uninitialized
+ false positive during profiledbootstrap by initializing them.
+ * matchexp.c (match_mult_operand): Likewise.
+ * module.c (write_atom): Likewise.
+ (read_module): Likewise.
+
+2015-01-23 Tom de Vries <tom@codesourcery.com>
+
+ PR libgomp/64672
+ * lang.opt (fopenacc): Mark as LTO option.
+
+2015-01-23 Tom de Vries <tom@codesourcery.com>
+
+ PR libgomp/64707
+ * lang.opt (fopenmp): Mark as LTO option.
+
+2015-01-23 Andre Vehreschild <vehre@gmx.de>
+
+ * trans-decl.c (gfc_finish_var_decl): Fixed moved comment.
+ * trans-stmt.c (gfc_trans_allocate): Fixed indentation.
+
+2015-01-23 Jakub Jelinek <jakub@redhat.com>
+
+ * gfc-diagnostic.def (DK_ICE_NOBT): New kind.
+
+2015-01-23 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/60922
+ * class.c (finalize_component): Apply the check for 'fini_coarray' only
+ to coarray components.
+
+2015-01-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/64726
+ * trans-openmp.c (gfc_trans_oacc_combined_directive): Fix
+ loop generation.
+
+2015-01-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/61933
+ * libgfortran.h:
+ * trans-io.c (set_parameter_value): Delete use of has_iostat.
+ Redefine to not generate any runtime error check calls.
+ (set_parameter_value_chk): Rename of the former
+ set_parameter_value with the runtime error checks and fix
+ whitespace. (set_parameter_value_inquire): New function that
+ builds a runtime conditional block to set the INQUIRE
+ common parameter block unit number to -2 when unit numbers
+ exceed positive KIND=4 limits. (gfc_trans_open): Whitespace.
+ For unit, use the renamed set_parameter_value_chk.
+ (gfc_trans_close): Likewise use renamed function.
+ (build_filepos): Whitespace and use renamed function.
+ (gfc_trans_inquire): Whitespace and for unit use
+ set_parameter_value and set_parameter_value_inquire.
+ (gfc_trans_wait): Remove p->iostat from call to
+ set_parameter_value. Use new set_parameter_value_chk for unit.
+ (build_dt): Use the new set_parameter_value without p->iostat
+ and fix whitespace. Use set_parameter_value_chk for unit.
+
+2015-01-21 Thomas Koenig <tkoenig@netcologne.de>
+
+ PR fortran/57023
+ * dependency.c (callback_dummy_intent_not_int): New function.
+ (dummy_intent_not_in): New function.
+ (gfc_full_array_ref_p): Use dummy_intent_not_in.
+
+2015-01-18 Andre Vehreschild <vehre@gmx.de>
+ Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/60255
+ * class.c (gfc_get_len_component): New.
+ (gfc_build_class_symbol): Add _len component to unlimited
+ polymorphic entities.
+ (find_intrinsic_vtab): Removed emitting of error message.
+ * gfortran.h: Added prototype for gfc_get_len_component.
+ * simplify.c (gfc_simplify_len): Use _len component where
+ available.
+ * trans-expr.c (gfc_class_len_get): New.
+ (gfc_conv_intrinsic_to_class): Add handling for deferred
+ character arrays.
+ (gfc_conv_structure): Treat _len component correctly.
+ (gfc_conv_expr): Prevent bind_c handling when not required.
+ (gfc_trans_pointer_assignment): Propagate _len component.
+ * trans-stmt.c (class_has_len_component): New.
+ (trans_associate_var): _len component treatment for associate
+ context.
+ (gfc_trans_allocate): Same as for trans_associate_var()
+ * trans.h: Added prototype for gfc_class_len_get.
+
+2015-01-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/57959
+ * trans-expr.c (gfc_trans_subcomponent_assign): Use a deep copy
+ for allocatable components, where the source is a variable.
+
+2015-01-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/55901
+ * primary.c (gfc_match_varspec): Exclude dangling associate-
+ names with dimension 0 from being counted as arrays.
+ * resolve.c (resolve_assoc_var): Sub-strings are permissible
+ for associate-names, so exclude characters from the test for
+ misuse as arrays.
+ * trans-decl.c (gfc_get_symbol_decl): Associate-names can use
+ the hidden string length variable of their associated target.
+ Signal this by setting 'length' to a constant, if the decl for
+ the string length is a variable.
+
+2015-01-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/64578
+ * trans-expr.c (gfc_trans_pointer_assignment): Make sure that
+ before reinitializing rse, to add the rse.pre to block before
+ creating 'ptrtemp'.
+ * trans-intrinsic.c (gfc_conv_associated): Deal with the class
+ data being a descriptor.
+
+2015-01-17 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/60357
+ * primary.c (build_actual_constructor): Prevent warning.
+ * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_
+ assignment): New function encapsulates treatment of allocatable
+ components.
+ (gfc_trans_subcomponent_assign): Needed to distinguish between
+ regular assignment and initilization.
+ (gfc_trans_structure_assign): Same.
+ (gfc_conv_structure): Same.
+
+ PR fortran/61275
+ * gfortran.h: deferred_parameter is not needed, because
+ it artificial does the trick completely.
+ * primary.c (build_actual_constructor): Same.
+ (gfc_convert_to_structure_constructor): Same.
+ * resolve.c (resolve_fl_derived0): Same.
+ * trans-expr.c (gfc_conv_component_ref): Prevent treating
+ allocatable deferred length char arrays here.
+ (gfc_trans_subcomponent_assign): Same as above.
+ * trans-types.c (gfc_sym_type): This is done in
+ gfc_get_derived_type already.
+
+2015-01-17 Andre Vehreschild <vehre@gmx.de>
+
+ PR fortran/60334
+ * trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
+ length when the symbol is declared to be a result.
+ * trans-expr.c (gfc_conv_procedure_call): Strip deref on the
+ string length when functions are nested and the string length
+ is a reference already.
+
+2015-01-16 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/45290
+ * decl.c (match_pointer_init): Error out if resolution of init expr
+ failed.
+
+2015-01-15 Tobias Burnus <burnus@net-b.de>
+
+ * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses,
+ resolve_oacc_deviceptr_clause, resolve_omp_clauses,
+ gfc_resolve_oacc_declare): Replace '%s' by %qs.
+
+2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
+ Cesar Philippidis <cesar@codesourcery.com>
+ James Norris <jnorris@codesourcery.com>
+ Ilmir Usmanov <i.usmanov@samsung.com>
+ Tobias Burnus <burnus@net-b.de>
+
+ * lang.opt (fopenacc): New option.
+ * cpp.c (cpp_define_builtins): Conditionally define _OPENACC.
+ * dump-parse-tree.c (show_omp_node): Split part of it into...
+ (show_omp_clauses): ... this new function.
+ (show_omp_node, show_code_node): Handle EXEC_OACC_PARALLEL_LOOP,
+ EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
+ EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
+ EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
+ EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
+ (show_namespace): Update for OpenACC.
+ * f95-lang.c (DEF_FUNCTION_TYPE_VAR_2, DEF_FUNCTION_TYPE_VAR_8)
+ (DEF_FUNCTION_TYPE_VAR_12, DEF_GOACC_BUILTIN)
+ (DEF_GOACC_BUILTIN_COMPILER): New macros.
+ * types.def (BT_FN_VOID_INT_INT_VAR)
+ (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
+ (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
+ New function types.
+ * gfortran.h (gfc_statement): Add ST_OACC_PARALLEL_LOOP,
+ ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
+ ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_DATA,
+ ST_OACC_END_DATA, ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA,
+ ST_OACC_LOOP, ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE,
+ ST_OACC_WAIT, ST_OACC_CACHE, ST_OACC_KERNELS_LOOP,
+ ST_OACC_END_KERNELS_LOOP, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
+ ST_OACC_ROUTINE.
+ (struct gfc_expr_list): New data type.
+ (gfc_get_expr_list): New macro.
+ (gfc_omp_map_op): Add OMP_MAP_FORCE_ALLOC, OMP_MAP_FORCE_DEALLOC,
+ OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM, OMP_MAP_FORCE_TOFROM,
+ OMP_MAP_FORCE_PRESENT, OMP_MAP_FORCE_DEVICEPTR.
+ (OMP_LIST_FIRST, OMP_LIST_DEVICE_RESIDENT, OMP_LIST_USE_DEVICE)
+ (OMP_LIST_CACHE): New enumerators.
+ (struct gfc_omp_clauses): Add async_expr, gang_expr, worker_expr,
+ vector_expr, num_gangs_expr, num_workers_expr, vector_length_expr,
+ wait_list, tile_list, async, gang, worker, vector, seq,
+ independent, wait, par_auto, gang_static, and loc members.
+ (struct gfc_namespace): Add oacc_declare_clauses member.
+ (gfc_exec_op): Add EXEC_OACC_KERNELS_LOOP,
+ EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS,
+ EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
+ EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
+ EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
+ (gfc_free_expr_list, gfc_resolve_oacc_directive)
+ (gfc_resolve_oacc_declare, gfc_resolve_oacc_parallel_loop_blocks)
+ (gfc_resolve_oacc_blocks): New prototypes.
+ * match.c (match_exit_cycle): Handle EXEC_OACC_LOOP and
+ EXEC_OACC_PARALLEL_LOOP.
+ * match.h (gfc_match_oacc_cache, gfc_match_oacc_wait)
+ (gfc_match_oacc_update, gfc_match_oacc_declare)
+ (gfc_match_oacc_loop, gfc_match_oacc_host_data)
+ (gfc_match_oacc_data, gfc_match_oacc_kernels)
+ (gfc_match_oacc_kernels_loop, gfc_match_oacc_parallel)
+ (gfc_match_oacc_parallel_loop, gfc_match_oacc_enter_data)
+ (gfc_match_oacc_exit_data, gfc_match_oacc_routine): New
+ prototypes.
+ * openmp.c: Include "diagnostic.h" and "gomp-constants.h".
+ (gfc_free_omp_clauses): Update for members added to struct
+ gfc_omp_clauses.
+ (gfc_match_omp_clauses): Change mask paramter to uint64_t. Add
+ openacc parameter.
+ (resolve_omp_clauses): Add openacc parameter. Update for OpenACC.
+ (struct fortran_omp_context): Add is_openmp member.
+ (gfc_resolve_omp_parallel_blocks): Initialize it.
+ (gfc_resolve_do_iterator): Update for OpenACC.
+ (gfc_resolve_omp_directive): Call
+ resolve_omp_directive_inside_oacc_region.
+ (OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE)
+ (OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_COPYPRIVATE)
+ (OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN, OMP_CLAUSE_REDUCTION)
+ (OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS, OMP_CLAUSE_SCHEDULE)
+ (OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED, OMP_CLAUSE_COLLAPSE)
+ (OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE)
+ (OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH)
+ (OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND)
+ (OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM)
+ (OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO)
+ (OMP_CLAUSE_FROM, OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT)
+ (OMP_CLAUSE_DIST_SCHEDULE): Use uint64_t.
+ (OMP_CLAUSE_ASYNC, OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS)
+ (OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_COPY, OMP_CLAUSE_COPYOUT)
+ (OMP_CLAUSE_CREATE, OMP_CLAUSE_PRESENT)
+ (OMP_CLAUSE_PRESENT_OR_COPY, OMP_CLAUSE_PRESENT_OR_COPYIN)
+ (OMP_CLAUSE_PRESENT_OR_COPYOUT, OMP_CLAUSE_PRESENT_OR_CREATE)
+ (OMP_CLAUSE_DEVICEPTR, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER)
+ (OMP_CLAUSE_VECTOR, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT)
+ (OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_DEVICE_RESIDENT)
+ (OMP_CLAUSE_HOST_SELF, OMP_CLAUSE_OACC_DEVICE, OMP_CLAUSE_WAIT)
+ (OMP_CLAUSE_DELETE, OMP_CLAUSE_AUTO, OMP_CLAUSE_TILE): New macros.
+ (gfc_match_omp_clauses): Handle those.
+ (OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES, OACC_DATA_CLAUSES)
+ (OACC_LOOP_CLAUSES, OACC_PARALLEL_LOOP_CLAUSES)
+ (OACC_KERNELS_LOOP_CLAUSES, OACC_HOST_DATA_CLAUSES)
+ (OACC_DECLARE_CLAUSES, OACC_UPDATE_CLAUSES)
+ (OACC_ENTER_DATA_CLAUSES, OACC_EXIT_DATA_CLAUSES)
+ (OACC_WAIT_CLAUSES): New macros.
+ (gfc_free_expr_list, match_oacc_expr_list, match_oacc_clause_gang)
+ (gfc_match_omp_map_clause, gfc_match_oacc_parallel_loop)
+ (gfc_match_oacc_parallel, gfc_match_oacc_kernels_loop)
+ (gfc_match_oacc_kernels, gfc_match_oacc_data)
+ (gfc_match_oacc_host_data, gfc_match_oacc_loop)
+ (gfc_match_oacc_declare, gfc_match_oacc_update)
+ (gfc_match_oacc_enter_data, gfc_match_oacc_exit_data)
+ (gfc_match_oacc_wait, gfc_match_oacc_cache)
+ (gfc_match_oacc_routine, oacc_is_loop)
+ (resolve_oacc_scalar_int_expr, resolve_oacc_positive_int_expr)
+ (check_symbol_not_pointer, check_array_not_assumed)
+ (resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause)
+ (oacc_compatible_clauses, oacc_is_parallel, oacc_is_kernels)
+ (omp_code_to_statement, oacc_code_to_statement)
+ (resolve_oacc_directive_inside_omp_region)
+ (resolve_omp_directive_inside_oacc_region)
+ (resolve_oacc_nested_loops, resolve_oacc_params_in_parallel)
+ (resolve_oacc_loop_blocks, gfc_resolve_oacc_blocks)
+ (resolve_oacc_loop, resolve_oacc_cache, gfc_resolve_oacc_declare)
+ (gfc_resolve_oacc_directive): New functions.
+ * parse.c (next_free): Update for OpenACC. Move some code into...
+ (verify_token_free): ... this new function.
+ (next_fixed): Update for OpenACC. Move some code into...
+ (verify_token_fixed): ... this new function.
+ (case_executable): Add ST_OACC_UPDATE, ST_OACC_WAIT,
+ ST_OACC_CACHE, ST_OACC_ENTER_DATA, and ST_OACC_EXIT_DATA.
+ (case_exec_markers): Add ST_OACC_PARALLEL_LOOP, ST_OACC_PARALLEL,
+ ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA, ST_OACC_LOOP,
+ ST_OACC_KERNELS_LOOP.
+ (case_decl): Add ST_OACC_ROUTINE.
+ (push_state, parse_critical_block, parse_progunit): Update for
+ OpenACC.
+ (gfc_ascii_statement): Handle ST_OACC_PARALLEL_LOOP,
+ ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
+ ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_KERNELS_LOOP,
+ ST_OACC_END_KERNELS_LOOP, ST_OACC_DATA, ST_OACC_END_DATA,
+ ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA, ST_OACC_LOOP,
+ ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE, ST_OACC_WAIT,
+ ST_OACC_CACHE, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
+ ST_OACC_ROUTINE.
+ (verify_st_order, parse_spec): Handle ST_OACC_DECLARE.
+ (parse_executable): Handle ST_OACC_PARALLEL_LOOP,
+ ST_OACC_KERNELS_LOOP, ST_OACC_LOOP, ST_OACC_PARALLEL,
+ ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA.
+ (decode_oacc_directive, parse_oacc_structured_block)
+ (parse_oacc_loop, is_oacc): New functions.
+ * parse.h (struct gfc_state_data): Add oacc_declare_clauses
+ member.
+ (is_oacc): New prototype.
+ * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
+ EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL,
+ EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS, EXEC_OACC_DATA,
+ EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP, EXEC_OACC_UPDATE,
+ EXEC_OACC_WAIT, EXEC_OACC_CACHE, EXEC_OACC_ENTER_DATA,
+ EXEC_OACC_EXIT_DATA.
+ (resolve_codes): Call gfc_resolve_oacc_declare.
+ * scanner.c (openacc_flag, openacc_locus): New variables.
+ (skip_free_comments): Update for OpenACC. Move some code into...
+ (skip_omp_attribute): ... this new function.
+ (skip_oacc_attribute): New function.
+ (skip_fixed_comments, gfc_next_char_literal): Update for OpenACC.
+ * st.c (gfc_free_statement): Handle EXEC_OACC_PARALLEL_LOOP,
+ EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
+ EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
+ EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
+ EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
+ * trans-decl.c (gfc_generate_function_code): Update for OpenACC.
+ * trans-openmp.c: Include "gomp-constants.h".
+ (gfc_omp_finish_clause, gfc_trans_omp_clauses): Use GOMP_MAP_*
+ instead of OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
+ (gfc_trans_omp_clauses): Handle OMP_LIST_USE_DEVICE,
+ OMP_LIST_DEVICE_RESIDENT, OMP_LIST_CACHE, and OMP_MAP_FORCE_ALLOC,
+ OMP_MAP_FORCE_DEALLOC, OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM,
+ OMP_MAP_FORCE_TOFROM, OMP_MAP_FORCE_PRESENT,
+ OMP_MAP_FORCE_DEVICEPTR, and gfc_omp_clauses' async, seq,
+ independent, wait_list, num_gangs_expr, num_workers_expr,
+ vector_length_expr, vector, vector_expr, worker, worker_expr,
+ gang, gang_expr members.
+ (gfc_trans_omp_do): Handle EXEC_OACC_LOOP.
+ (gfc_convert_expr_to_tree, gfc_trans_oacc_construct)
+ (gfc_trans_oacc_executable_directive)
+ (gfc_trans_oacc_wait_directive, gfc_trans_oacc_combined_directive)
+ (gfc_trans_oacc_declare, gfc_trans_oacc_directive): New functions.
+ * trans-stmt.c (gfc_trans_block_construct): Update for OpenACC.
+ * trans-stmt.h (gfc_trans_oacc_directive, gfc_trans_oacc_declare):
+ New prototypes.
+ * trans.c (tranc_code): Handle EXEC_OACC_CACHE, EXEC_OACC_WAIT,
+ EXEC_OACC_UPDATE, EXEC_OACC_LOOP, EXEC_OACC_HOST_DATA,
+ EXEC_OACC_DATA, EXEC_OACC_KERNELS, EXEC_OACC_KERNELS_LOOP,
+ EXEC_OACC_PARALLEL, EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_ENTER_DATA,
+ EXEC_OACC_EXIT_DATA.
+ * gfortran.texi: Update for OpenACC.
+ * intrinsic.texi: Likewise.
+ * invoke.texi: Likewise.
+
+2015-01-15 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/58023
+ * resolve.c (resolve_fl_derived0): Continue resolving next component
+ after error.
+
+2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/61933
+ * io.c (gfc_match_inquire): Generate error if unit number in
+ inquire statement is a constant -1. All other values allowed.
+ * trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
+ (create_dummy_iostat): Delete function no longer used.
+
+2015-01-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/64528
+ * trans-decl.c (create_function_arglist): Don't set TREE_READONLY
+ on dummy args with VALUE attribute.
+
+2015-01-11 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/63733
+ * interface.c (gfc_extend_expr): Look for type-bound operators before
+ non-typebound ones.
+
+2015-01-11 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/58023
+ * resolve.c (resolve_fl_derived0): Set error flag if problems with the
+ interface of a procedure-pointer component were detected.
+
+2015-01-11 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/64508
+ * interface.c (compare_parameter): Interface check for
+ procedure-pointer component as actual argument.
+
+2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
+
+ * gfortran.texi: Update for libgomp being renamed from "GNU OpenMP
+ Runtime Library" to "GNU Offloading and Multi Processing Runtime
+ Library".
+ * intrinsic.texi: Likewise.
+
+2015-01-10 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/64522
+ * invoke.texi (Wline-truncation): Document new behaviour.
+ * lang.opt (Wline-truncation): Add Init(-1).
+ * options.c (gfc_post_options): If -Wline-truncation is unset,
+ enable it for free-form source files; for the latter, also use
+ -Werror=line-truncation, unless -Wno-error has been specified.
+
+2015-01-09 Michael Collison <michael.collison@linaro.org>
+
+ * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * cpp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * decl.c: Ditto.
+ * f95.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * iresolve.c: Ditto.
+ * match.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * module.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * options.c: Ditto.
+ * target-memory.c: Include hash-set.h, vec.h,
+ double-int.h, input.h, alias.h, symtab.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * trans-array.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * trans.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * trans-common.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * trans-const.c: Ditto.
+ * trans-decl.c: Ditto.
+ * trans-expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * trans-intrinsic.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, fold-const.h,
+ wide-int.h, inchash.h and real.h due to flattening of tree.h.
+ * trans-io.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, options.h, fold-const.h,
+ wide-int.h, and inchash.h due to flattening of tree.h.
+ * trans-openmp.c: Ditto.
+ * trans-stmt.c: Ditto.
+ * trans-types.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
+ input.h, alias.h, symtab.h, fold-const.h,
+ wide-int.h, inchash.h and real.h due to flattening of tree.h.
+
+2015-01-08 Tobias Burnus <burnus@net-b.de>
+
+ * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
+ for module coarrays with -fcoarray=lib.
+ (get_proc_pointer_decl): As module variable, make only public
+ when not marked as private.
+
+2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/47674
+ * dependency.h: Actually commit changes.
+
+2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/47674
+ * dependency.c: Update copyright years.
+ (gfc_discard_nops): Add prototype.
+ * dependency.c (discard_nops): Rename to gfc_discard_nops,
+ make non-static.
+ (gfc_discard_nops): Use gfc_discard_nops.
+ (gfc_dep_difference): Likewise.
+ * frontend-passes.c Update copyright years.
+ (realloc_strings): New function. Add prototype.
+ (gfc_run_passes): Call realloc_strings.
+ (realloc_string_callback): New function.
+ (create_var): Add prototype. Handle case of a
+ scalar character variable.
+ (optimize_trim): Do not handle allocatable variables.
+
+2015-01-05 Jakub Jelinek <jakub@redhat.com>
+
+ Update copyright years.
+
+ * gfortranspec.c (lang_specific_driver): Update copyright notice
+ dates.
+ * gfc-internals.texi: Bump @copying's copyright year.
+ * gfortran.texi: Ditto.
+ * intrinsic.texi: Ditto.
+ * invoke.texi: Ditto.
+
+2015-01-02 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/57562
+ * expr.c (find_component_ref): Deal with extended types.
+
+2015-01-02 Tobias Burnus <burnus@net-b.de>
+
+ * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
+ for module coarrays with -fcoarray=lib.
+
+2015-01-02 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/60507
+ * interface.c (is_procptr_result): New function to check if an
+ expression is a procedure-pointer result.
+ (compare_actual_formal): Use it.
+
+Copyright (C) 2015 Free Software Foundation, Inc.
+
+Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.
diff --git a/gcc/fortran/gfc-internals.texi b/gcc/fortran/gfc-internals.texi
index a2320f448ca..0829bc38239 100644
--- a/gcc/fortran/gfc-internals.texi
+++ b/gcc/fortran/gfc-internals.texi
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename gfc-internals.info
-@set copyrights-gfortran 2007-2015
+@set copyrights-gfortran 2007-2016
@include gcc-common.texi
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
index 7a8318c3aed..257ee7c4e80 100644
--- a/gcc/fortran/gfortran.texi
+++ b/gcc/fortran/gfortran.texi
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename gfortran.info
-@set copyrights-gfortran 1999-2015
+@set copyrights-gfortran 1999-2016
@include gcc-common.texi
diff --git a/gcc/fortran/gfortranspec.c b/gcc/fortran/gfortranspec.c
index fe594dba117..8a0e19a5c31 100644
--- a/gcc/fortran/gfortranspec.c
+++ b/gcc/fortran/gfortranspec.c
@@ -1,5 +1,5 @@
/* Specific flags and argument handling of the Fortran front-end.
- Copyright (C) 1997-2015 Free Software Foundation, Inc.
+ Copyright (C) 1997-2016 Free Software Foundation, Inc.
This file is part of GCC.
@@ -276,7 +276,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
case OPT__version:
printf ("GNU Fortran %s%s\n", pkgversion_string, version_string);
- printf ("Copyright %s 2015 Free Software Foundation, Inc.\n",
+ printf ("Copyright %s 2016 Free Software Foundation, Inc.\n",
_("(C)"));
fputs (_("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi
index a61a0bc8d66..f9760f6a3ab 100644
--- a/gcc/fortran/intrinsic.texi
+++ b/gcc/fortran/intrinsic.texi
@@ -1,5 +1,5 @@
@ignore
-Copyright (C) 2005-2015 Free Software Foundation, Inc.
+Copyright (C) 2005-2016 Free Software Foundation, Inc.
This is part of the GNU Fortran manual.
For copying conditions, see the file gfortran.texi.
diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi
index 804d2156cb6..85209a99362 100644
--- a/gcc/fortran/invoke.texi
+++ b/gcc/fortran/invoke.texi
@@ -1,10 +1,10 @@
-@c Copyright (C) 2004-2015 Free Software Foundation, Inc.
+@c Copyright (C) 2004-2016 Free Software Foundation, Inc.
@c This is part of the GNU Fortran manual.
@c For copying conditions, see the file gfortran.texi.
@ignore
@c man begin COPYRIGHT
-Copyright @copyright{} 2004-2015 Free Software Foundation, Inc.
+Copyright @copyright{} 2004-2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 99dab30246d..319a07343c4 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1,5 +1,5 @@
/* Compiler driver program that can handle many languages.
- Copyright (C) 1987-2015 Free Software Foundation, Inc.
+ Copyright (C) 1987-2016 Free Software Foundation, Inc.
This file is part of GCC.
@@ -7812,7 +7812,7 @@ driver::maybe_print_and_exit () const
{
printf (_("%s %s%s\n"), progname, pkgversion_string,
version_string);
- printf ("Copyright %s 2015 Free Software Foundation, Inc.\n",
+ printf ("Copyright %s 2016 Free Software Foundation, Inc.\n",
_("(C)"));
fputs (_("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
diff --git a/gcc/gcov-dump.c b/gcc/gcov-dump.c
index d72a17fd158..0f8ae993d50 100644
--- a/gcc/gcov-dump.c
+++ b/gcc/gcov-dump.c
@@ -1,5 +1,5 @@
/* Dump a gcov file, for debugging use.
- Copyright (C) 2002-2015 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
Contributed by Nathan Sidwell <nathan@codesourcery.com>
Gcov is free software; you can redistribute it and/or modify
@@ -142,7 +142,7 @@ static void
print_version (void)
{
printf ("gcov-dump %s%s\n", pkgversion_string, version_string);
- printf ("Copyright (C) 2015 Free Software Foundation, Inc.\n");
+ printf ("Copyright (C) 2016 Free Software Foundation, Inc.\n");
printf ("This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or \n"
"FITNESS FOR A PARTICULAR PURPOSE.\n\n");
diff --git a/gcc/gcov-tool.c b/gcc/gcov-tool.c
index b2a4583d43b..f628b603a80 100644
--- a/gcc/gcov-tool.c
+++ b/gcc/gcov-tool.c
@@ -1,5 +1,5 @@
/* Gcc offline profile processing tool support. */
-/* Copyright (C) 2014-2015 Free Software Foundation, Inc.
+/* Copyright (C) 2014-2016 Free Software Foundation, Inc.
Contributed by Rong Xu <xur@google.com>.
This file is part of GCC.
@@ -523,7 +523,7 @@ static void
print_version (void)
{
fnotice (stdout, "%s %s%s\n", progname, pkgversion_string, version_string);
- fnotice (stdout, "Copyright %s 2014-2015 Free Software Foundation, Inc.\n",
+ fnotice (stdout, "Copyright %s 2014-2016 Free Software Foundation, Inc.\n",
_("(C)"));
fnotice (stdout,
_("This is free software; see the source for copying conditions.\n"
diff --git a/gcc/gcov.c b/gcc/gcov.c
index 60a9d4af117..417b4f42e71 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -1,6 +1,6 @@
/* Gcov.c: prepend line execution counts and branch probabilities to a
source file.
- Copyright (C) 1990-2015 Free Software Foundation, Inc.
+ Copyright (C) 1990-2016 Free Software Foundation, Inc.
Contributed by James E. Wilson of Cygnus Support.
Mangled by Bob Manson of Cygnus Support.
Mangled further by Nathan Sidwell <nathan@codesourcery.com>
@@ -500,7 +500,7 @@ static void
print_version (void)
{
fnotice (stdout, "gcov %s%s\n", pkgversion_string, version_string);
- fprintf (stdout, "Copyright %s 2015 Free Software Foundation, Inc.\n",
+ fprintf (stdout, "Copyright %s 2016 Free Software Foundation, Inc.\n",
_("(C)"));
fnotice (stdout,
_("This is free software; see the source for copying conditions.\n"
diff --git a/gcc/gengtype.c b/gcc/gengtype.c
index 98ee32a8931..966e5970bf3 100644
--- a/gcc/gengtype.c
+++ b/gcc/gengtype.c
@@ -1,5 +1,5 @@
/* Process source files and output type information.
- Copyright (C) 2002-2015 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of GCC.
@@ -1607,7 +1607,7 @@ static outf_p
create_file (const char *name, const char *oname)
{
static const char *const hdr[] = {
- " Copyright (C) 2004-2015 Free Software Foundation, Inc.\n",
+ " Copyright (C) 2004-2016 Free Software Foundation, Inc.\n",
"\n",
"This file is part of GCC.\n",
"\n",
diff --git a/gcc/go/ChangeLog b/gcc/go/ChangeLog
index a6a0aad9256..3bc3727b79d 100644
--- a/gcc/go/ChangeLog
+++ b/gcc/go/ChangeLog
@@ -1,3 +1,7 @@
+2016-01-04 Jakub Jelinek <jakub@redhat.com>
+
+ * gccgo.texi: Bump @copyrights-go year.
+
2015-12-21 Ian Lance Taylor <iant@google.com>
* go-gcc.cc (class Bvariable): Remove Gcc_tree parent class. Add
@@ -1160,7 +1164,7 @@
Go frontend added to gcc repository.
-Copyright (C) 2010-2015 Free Software Foundation, Inc.
+Copyright (C) 2010-2016 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
diff --git a/gcc/go/gccgo.texi b/gcc/go/gccgo.texi
index 6e4c70874f9..0c58a1e3d1b 100644
--- a/gcc/go/gccgo.texi
+++ b/gcc/go/gccgo.texi
@@ -12,7 +12,7 @@
@include gcc-common.texi
@c Copyright years for this manual.
-@set copyrights-go 2010-2015
+@set copyrights-go 2010-2016
@copying
@c man begin COPYRIGHT
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 4d9aacc5cc7..1c1d8895b37 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,7 @@
+2016-01-04 Jakub Jelinek <jakub@redhat.com>
+
+ * jcf-dump.c (version): Update copyright notice dates.
+
2015-11-11 Andrew MacLeod <amacleod@redhat.com>
* boehm.c: Remove unused header files.
@@ -23282,7 +23286,7 @@ Tue Mar 9 11:52:08 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
New directory.
-Copyright (C) 1996-2015 Free Software Foundation, Inc.
+Copyright (C) 1996-2016 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
diff --git a/gcc/java/gcj.texi b/gcc/java/gcj.texi
index d58699aa37a..c9fc8057af1 100644
--- a/gcc/java/gcj.texi
+++ b/gcc/java/gcj.texi
@@ -17,7 +17,7 @@
@c the word ``Java'.
@c When this manual is copyrighted.
-@set copyrights-gcj 2001-2015
+@set copyrights-gcj 2001-2016
@copying
@c man begin COPYRIGHT
diff --git a/gcc/java/jcf-dump.c b/gcc/java/jcf-dump.c
index 8a4c37fbe89..1331b55fa0e 100644
--- a/gcc/java/jcf-dump.c
+++ b/gcc/java/jcf-dump.c
@@ -1,7 +1,7 @@
/* Program to dump out a Java(TM) .class file.
Functionally similar to Sun's javap.
- Copyright (C) 1996-2015 Free Software Foundation, Inc.
+ Copyright (C) 1996-2016 Free Software Foundation, Inc.
This file is part of GCC.
@@ -1226,7 +1226,7 @@ static void
version (void)
{
printf ("jcf-dump %s%s\n\n", pkgversion_string, version_string);
- printf ("Copyright %s 2015 Free Software Foundation, Inc.\n", _("(C)"));
+ printf ("Copyright %s 2016 Free Software Foundation, Inc.\n", _("(C)"));
printf (_("This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"));
exit (0);