Fix dupplicate declaration of ggc_realloc in gencondmd
[official-gcc.git] / gcc / fortran / ChangeLog
blob03b3b66a8dd50a08defa2c2ff442710d3550de1e
1 2014-10-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
3         PR fortran/36534
4         * resolve.c (resolve_fl_procedure): Clean up obsolescence warning.
6 2014-09-25  Tobias Burnus  <burnus@net-b.de>
8         * check.c (check_co_collective): Renamed from check_co_minmaxsum,
9         handle co_reduce.
10         (gfc_check_co_minmax, gfc_check_co_sum): Update call.
11         (gfc_check_co_broadcast, gfc_check_co_reduce): New.
12         * gfortran.h (gfc_isym_id): Add GFC_ISYM_CO_BROADCAST and
13         GFC_ISYM_CO_REDUCE.
14         * intrinsic.c (add_subroutines): Add co_reduce and co_broadcast.
15         * intrinsic.h (gfc_check_co_broadcast, gfc_check_co_reduce): Add
16         proto types.
17         * intrinsic.texi (CO_BROADCAST): Add.
18         * trans.h (gfor_fndecl_co_broadcast): New.
19         * trans-decl.c (gfor_fndecl_co_broadcast): Ditto.
20         (gfc_build_builtin_function_decls): Add decl for it,
21         * trans-intrinsic.c (conv_co_collective): Renamed from
22         conv_co_minmaxsum. Handle co_reduce.
23         (gfc_conv_intrinsic_subroutine): Handle co_reduce.
25 2014-09-23  Jakub Jelinek  <jakub@redhat.com>
27         PR fortran/63331
28         * trans-types.c (gfc_get_array_descr_info): Build DEBUG_EXPR_DECL
29         instead of VAR_DECL for base_decl.
31 2014-09-21  Jan Hubicka  <hubicka@ucw.cz>
33         * openmp.c (omp_context): Rename to ...
34         (fortran_omp_context): ... this one.
36 2014-09-21  Dominique d'Humieres <dominiq@lps.ens.fr>
38         * resolve.c (resolve_fl_procedure): Remove duplicated lines.
40 2014-09-20  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
41             Tobias Burnus  <burnus@net-b.de>
43         * trans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with
44         generating temporary for value argument.
46 2014-09-20  Joost VandeVondele  <vondele@gcc.gnu.org>
48         * trans-expr.c (gfc_reset_vptr): Fix comment whitespace.
49         (gfc_conv_class_to_class): Likewise.
50         (gfc_conv_procedure_call): Likewise.
51         (arrayfunc_assign_needs_temporary): Likewise.
52         (realloc_lhs_loop_for_fcn_call): Likewise.
53         (gfc_trans_assignment_1): Likewise.
54         * trans-array.c (gfc_conv_array_ref): Likewise.
55         (gfc_array_allocate): Likewise.
56         (gfc_alloc_allocatable_for_assignment): Likewise.
57         * symbol.c (generate_isocbinding_symbol): Likewise.
58         * class.c (finalization_scalarizer): Likewise.
59         (finalizer_insert_packed_call): Likewise.
60         (generate_finalization_wrapper): Likewise.
61         (find_intrinsic_vtab): Likewise.
62         * decl.c (gfc_match_import): Likewise.
63         (match_procedure_decl): Likewise.
64         (gfc_match_subroutine): Likewise.
65         (gfc_match_bind_c): Likewise.
66         (gfc_match_volatile): Likewise.
67         * trans-common.c (create_common): Likewise.
68         * error.c (gfc_diagnostic_starter): Likewise.
69         * trans-stmt.c (gfc_trans_sync): Likewise.
70         (gfc_trans_critical): Likewise.
71         (gfc_trans_simple_do): Likewise.
72         (gfc_trans_do): Likewise.
73         (gfc_trans_where_assign): Likewise.
74         * expr.c (gfc_is_simply_contiguous): Likewise.
75         * module.c (unquote_string): Likewise.
76         * trans.c (gfc_add_finalizer_call): Likewise.
77         * trans-types.c (gfc_init_kinds): Likewise.
78         * scanner.c (preprocessor_line): Likewise.
79         * gfortranspec.c (lang_specific_driver): Likewise.
80         * frontend-passes.c (create_var): Likewise.
81         (cfe_expr_0): Likewise.
82         * resolve.c (check_host_association): Likewise.
83         (gfc_resolve_code): Likewise.
84         (resolve_fl_derived0): Likewise.
85         (resolve_symbol): Likewise.
86         * f95-lang.c (poplevel): Likewise.
87         * trans-decl.c (create_main_function): Likewise.
88         * trans-io.c (transfer_expr): Likewise.
89         * arith.c (gfc_arith_divide): Likewise.
90         * parse.c (resolve_all_program_units): Likewise.
91         * check.c (gfc_check_rank): Likewise.
92         (gfc_check_sizeof): Likewise.
93         (is_c_interoperable): Likewise.
94         * dependency.c (gfc_dep_difference): Likewise.
95         * primary.c (gfc_match_rvalue): Likewise.
96         * trans-intrinsic.c (conv_intrinsic_system_clock): Likewise.
97         (conv_isocbinding_subroutine): Likewise.
98         * options.c (gfc_post_options): Likewise.
99         (gfc_handle_fpe_option): Likewise.
100         (gfc_get_option_string): Likewise.
101         * simplify.c (simplify_transformation_to_scalar): Likewise.
102         (gfc_simplify_spread): Likewise.
104 2014-09-19  Joost VandeVondele  <vondele@gcc.gnu.org>
106         PR fortran/63152
107         * trans-array.c (gfc_trans_deferred_array): Only nullify allocatables.
109 2014-09-15  Jakub Jelinek  <jakub@redhat.com>
111         * Make-lang.in (check_gfortran_parallelize): Change to just an upper
112         bound number.
114 2014-09-13  Tobias Burnus  <burnus@net-b.de>
116         PR fortran/63252
117         * trans-decl.c (gfc_build_builtin_function_decls): Fix
118         caf_unlock declaration.
120 2014-09-12  Joseph Myers  <joseph@codesourcery.com>
122         * trans-types.c (gfc_init_kinds): Check
123         targetm.libgcc_floating_mode_supported_p for floating-point
124         modes.  Check HAVE_TFmode instead of LIBGCC2_HAS_TF_MODE.
126 2014-09-05  Joost VandeVondele  <vondele@gcc.gnu.org>
128         PR fortran/62245
129         * intrinsic.texi (INT): clarify result.
131 2014-09-03  Fritz Reese  <Reese-Fritz@zai.com>
133         PR fortran/62174
134         * decl.c (variable_decl): Don't overwrite typespecs of Cray pointees
135         when matching a component declaration.
137 2014-09-02  Marek Polacek  <polacek@redhat.com>
139         PR fortran/62270
140         * interface.c (compare_parameter): Fix condition.
141         * trans-expr.c (gfc_conv_procedure_call): Likewise.
143 2014-08-31  Fritz Reese  <Reese-Fritz@zai.com>
145         PR fortran/62309
146         * resolve.c (apply_default_init_local): Don't treat variables
147         in RECURSIVE procedures as saved.
149 2014-08-31  Tobias Burnus  <burnus@net-b.de>
151         * trans-decl.c (gfc_build_builtin_function_decls): Add
152         may_require_tmp dummy argument.
153         * trans-intrinsic.c (gfc_conv_intrinsic_caf_get,
154         conv_caf_send): Handle may_require_tmp argument.
155         (gfc_conv_intrinsic_function): Update call.
156         * gfortran.texi (_gfortran_caf_send, _gfortran_caf_get,
157         _gfortran_caf_sendget): Update interface description.
159 2014-08-30  Tobias Burnus  <burnus@net-b.de>
161         * trans.h (gfc_caf_get_image_index,
162         gfc_get_caf_token_offset): New prototypes.
163         * trans-expr.c (gfc_caf_get_image_index): Moved from
164         trans-intrinsic.c and renamed.
165         (gfc_get_caf_token_offset) Ditto; support offset = NULL
166         with early return.
167         * trans-intrinsic.c (get_caf_token_offset, caf_get_image_index):
168         Moved to trans-expr.
169         (gfc_conv_intrinsic_caf_get, conv_caf_send,
170         conv_intrinsic_atomic_op, conv_intrinsic_atomic_ref,
171         conv_intrinsic_atomic_cas): Update callers.
173 2014-08-30  Tobias Burnus  <burnus@net-b.de>
175         PR fortran/62278
176         PR fortran/44735
177         PR fortran/60593
178         * dependency.c (gfc_check_dependency): Allow for optimizations
179         in the pointer-alias check.
181 2014-08-30  Janne Blomqvist  <jb@gcc.gnu.org>
183         * module.c (gfc_dump_module): Use ISO C remove() instead of POSIX
184         unlink().
186 2014-08-29  Jeffrey Armstrong  <jeffrey.armstrong@approximatrix.com>
188         PR fortran/62215
189         * module.c (gfc_dump_module): Unlink old module file before
190         renaming new one.
192 2014-08-26  Thomas Koenig  <tkoenig@gcc.gnu.org>
194         * frontend_passes (expr_array):  Replace by vec template.
195         (expr_size):  Remove.
196         (expr_count):  Remove.
197         (doloop_list):  Replace by vec template.
198         (doloop_size):  Remove.
199         (gfc_run_passes):  Adjust to use of vec template.
200         (cfe_register_funcs):  Likewise.
201         (cfe_expr_0):  Likewise.
202         (doloop_code):  Likewise.
204 2014-08-22  Steven Bosscher  <steven@gcc.gnu.org>
206         PR fortran/62135
207         * resolve.c (resolve_select): Fix list traversal in case the
208         last element of the CASE list was dropped as unreachable code.
210 2014-08-22  Joost VandeVondele  <Joost.VandeVondele@mat.ethz.ch>
212         PR fortran/61234
213         * lang.opt (Wuse-without-only): New flag.
214         * gfortran.h (gfc_option_t): Add it.
215         * invoke.texi: Document it.
216         * module.c (gfc_use_module): Warn if needed.
217         * options.c (gfc_init_options,gfc_handle_option): Init accordingly.
219 2014-08-21  Thomas Koenig  <tkoenig@gcc.gnu.org>
221         PR fortran/62214
222         * frontend-passes.c (optimize_binop_array_assignment):
223         Do not try to optimize the array assignment for string
224         concatenation.
226 2014-08-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>
228         PR fortran/44054
229         * error.c (gfc_diagnostic_build_locus_prefix): New function.
230         (gfc_diagnostic_starter): Follow Fortran FE diagnostics.
231         (gfc_diagnostic_finalizer): Do not call default finalizer.
233 2014-08-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>
235         PR fortran/44054
236         * error.c (gfc_diagnostic_finalizer): Call default finalizer.
238 2014-08-20  Joost VandeVondele  <Joost.VandeVondele@mat.ethz.ch>
240         * options.c (gfc_init_options_struct): assert that the frontend sets
241         flag_errno_math and flag_associative_math.
243 2014-08-17  Tobias Burnus  <burnus@net-b.de>
245         * resolve.c (gfc_resolve_finalizers): Ensure that parents are
246         resolved first.
248 2014-08-17  Tobias Burnus  <burnus@net-b.de>
250         * trans-io.c (gfc_build_io_library_fndecls): Fix decl of
251         IOCALL_SET_NML_VAL.
252         (transfer_namelist_element): Use proper int type as argument.
254 2014-08-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
256         PR fortran/62142
257         * trans-expr.c (is_runtime_conformable):  Add NULL pointer checks.
259 2014-08-15  Tobias Burnus  <burnus@net-b.de>
261         * resolve.c (resolve_critical): Fix name mangling.
262         * trans-stmt.c (gfc_trans_critical): Fix lock call.
264 2014-08-15  Manuel López-Ibáñez  <manu@gcc.gnu.org>
266         PR fortran/44054
267         * gfortran.h: Define GCC_DIAG_STYLE.
268         (gfc_diagnostics_init,gfc_warning_cmdline): Declare.
269         * trans-array.c: Include gfortran.h before diagnostic-core.h.
270         * trans-expr.c: Likewise.
271         * trans-openmp.c: Likewise.
272         * trans-const.c: Likewise.
273         * trans.c: Likewise.
274         * trans-types.c: Likewise.
275         * f95-lang.c: Likewise.
276         * trans-decl.c: Likewise.
277         * trans-io.c: Likewise.
278         * trans-intrinsic.c: Likewise.
279         * error.c: Include diagnostic.h and diagnostic-color.h.
280         (gfc_diagnostic_build_prefix): New.
281         (gfc_diagnostic_starter): New.
282         (gfc_diagnostic_finalizer): New.
283         (gfc_warning_cmdline): New.
284         (gfc_diagnostics_init): New.
285         * gfc-diagnostic.def: New.
286         * options.c (gfc_init_options): Call gfc_diagnostics_init.
287         (gfc_post_options): Use gfc_warning_cmdline.
289 2014-08-15  Jakub Jelinek  <jakub@redhat.com>
290             Tobias Burnus  <burnus@net-b.de>
292         PR fortran/62131
293         * openmp.c (resolve_omp_atomic): Only complain if code->expr1's attr
294         is allocatable, rather than whenever var->attr.allocatable.
296 2014-08-15  Jakub Jelinek  <jakub@redhat.com>
298         PR fortran/62107
299         * trans-openmp.c (gfc_omp_finish_clause): Handle scalar pointer
300         or allocatable passed by reference.
301         (gfc_trans_omp_clauses) <case OMP_LIST_MAP>: Likewise.
303 2014-08-14  Thomas Koenig  <tkoenig@gcc.gnu.org>
305         PR fortran/62106
306         * gfortran.h (symbol_attribute):  Add fe_temp flag.
307         * frontend-passes.c (is_fe_temp):  New function.
308         (create_var):  Don't add a temporary for an already
309         created variable or for a constant.
310         (combine_ARRAY_constructor):  Remove special handling
311         for constants.
313 2014-08-14  Tobias Burnus  <burnus@net-b.de>
315         * gfortran.texi (caf_register_t): Add CAF_REGTYPE_CRITICAL.
316         (_gfortran_caf_register): Update for locking/critical.
317         (_gfortran_caf_lock, _gfortran_caf_unlock): Add.
318         * resolve.c (resolve_critical): New.
319         (gfc_resolve_code): Call it.
320         * trans-decl.c (gfor_fndecl_caf_critical,
321         gfor_fndecl_caf_end_critical): Remove.
322         (gfor_fndecl_caf_lock, gfor_fndecl_caf_unlock): Add.
323         (gfc_build_builtin_function_decls): Remove critical,
324         assign locking declarations.
325         (generate_coarray_sym_init): Handle locking and
326         critical variables.
327         * trans-stmt.c (gfc_trans_critical): Add calls to
328         lock/unlock libcaf functions.
329         * trans.h (gfc_coarray_type): Update locking, add
330         critical enum values.
331         (gfor_fndecl_caf_critical, gfor_fndecl_caf_end_critical): Remove.
332         (gfor_fndecl_caf_lock, gfor_fndecl_caf_unlock): Add.
334 2014-08-14  Tobias Burnus  <burnus@net-b.de>
336         * gfortran.texi (Coarray Programming): Add first ABI
337         documentation.
339 2014-08-14  Jakub Jelinek  <jakub@redhat.com>
341         PR fortran/62076
342         * openmp.c (gfc_match_omp_clauses): When failed to match
343         operator name, defined op name or name, set buffer to
344         empty string.  Don't call gfc_find_omp_udr if buffer is empty
345         string.
346         (gfc_match_omp_declare_reduction): Call gfc_undo_symbols ()
347         before calling gfc_free_omp_udr.
349 2014-08-11  Richard Biener  <rguenther@suse.de>
351         PR fortran/61950
352         * trans-expr.c (gfc_conv_structure): Initialize _size with
353         a value of proper type.
355 2014-08-10  Thomas Koenig  <tkoenig@gcc.gnu.org>
357         PR fortran/61999
358         * simplify.c (gfc_simplify_dot_product): Convert types of
359         vectors before calculating the result.
361 2014-08-02  Trevor Saunders  <tsaunders@mozilla.com>
363         * openmp.c, trans-decl.c: Use hash_set instead of pointer_set.
365 2014-07-26  Tobias Burnus  <burnus@net-b.de>
367         PR fortran/61881
368         PR fortran/61888
369         PR fortran/57305
370         * intrinsic.texi (SIZEOF): Document changed behavior
371         for polymorphic arrays.
373 2014-07-26  Tobias Burnus  <burnus@net-b.de>
375         PR fortran/61881
376         PR fortran/61888
377         PR fortran/57305
378         * check.c (gfc_check_sizeof): Permit for assumed type if and
379         only if it has an array descriptor.
380         * intrinsic.c (do_ts29113_check): Permit SIZEOF.
381         (add_functions): SIZEOF is an Inquiry function.
382         * intrinsic.texi (SIZEOF): Add note that only contiguous
383         arrays are permitted.
384         * trans-expr.c (gfc_conv_intrinsic_to_class): Handle assumed
385         rank.
386         * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Handle
387         assumed type + array descriptor, CLASS and assumed rank.
388         (gfc_conv_intrinsic_storage_size): Handle class arrays.
390 2014-07-25  Tobias Burnus  <burnus@net-b.de>
392         * simplify.c (gfc_simplify_storage_size): Use proper
393         integer kind for the returned value.
395 2014-07-24  Uros Bizjak  <ubizjak@gmail.com>
397         * intrinsic.texi (Intrinsic Procedures) <ATOMIC_DEFINE>: Move to
398         correct menu position to match sectioning.
400 2014-06-15  Tobias Burnus  <burnus@net-b.de>
402         * symbol.c (check_conflict): Add codimension conflict with
403         pointer; fix cray-pointee check.
405 2014-06-14  Tobias Burnus  <burnus@net-b.de>
407         * trans-intrinsic.c (conv_intrinsic_atomic_ref): Fix handling
408         for kind mismatch with -fcoarray=lib.
410 2014-07-12  Paul Thomas  <pault@gcc.gnu.org>
412         PR fortran/61780
413         * dependency.c (gfc_dep_resolver): Index the 'reverse' array so
414         that elements are skipped. This then correctly aligns 'reverse'
415         with the scalarizer loops.
417 2014-07-12  Tobias Burnus  <burnus@net-b.de>
419         PR fortran/61628
420         * trans-types.c (gfc_init_types): Fix data-type bug
421         with gfc_max_array_element_size.
423 2014-07-12  Tobias Burnus  <burnus@net-b.de>
425         * libgfortran.h (libcaf_atomic_codes): Add.
426         * trans-decl.c (gfor_fndecl_caf_atomic_def,
427         gfor_fndecl_caf_atomic_ref, gfor_fndecl_caf_atomic_cas,
428         gfor_fndecl_caf_atomic_op): New variables.
429         (gfc_build_builtin_function_decls): Initialize them.
430         * trans.h (gfor_fndecl_caf_atomic_def,
431         gfor_fndecl_caf_atomic_ref, gfor_fndecl_caf_atomic_cas,
432         gfor_fndecl_caf_atomic_op): New variables.
433         * trans-intrinsic.c (conv_intrinsic_atomic_op,
434         conv_intrinsic_atomic_ref, conv_intrinsic_atomic_cas):
435         Add library calls with -fcoarray=lib.
437 2014-07-12  Tobias Burnus  <burnus@net-b.de>
439         * check.c (gfc_check_atomic): Update for STAT=.
440         (gfc_check_atomic_def, gfc_check_atomic_ref): Update call.
441         (gfc_check_atomic_op, gfc_check_atomic_cas,
442         gfc_check_atomic_fetch_op): New.
443         * gfortran.h (gfc_isym_id): GFC_ISYM_ATOMIC_CAS, GFC_ISYM_ATOMIC_ADD,
444         GFC_ISYM_ATOMIC_AND, GFC_ISYM_ATOMIC_OR, GFC_ISYM_ATOMIC_XOR,
445         GFC_ISYM_ATOMIC_FETCH_ADD, GFC_ISYM_ATOMIC_FETCH_AND,
446         GFC_ISYM_ATOMIC_FETCH_OR and GFC_ISYM_ATOMIC_FETCH_XOR.
447         * intrinsic.c (add_subroutines): Handle them.
448         * intrinsic.texi: Add documentation for them.
449         (ATOMIC_REF, ATOMIC_DEFINE): Add STAT=.
450         (ISO_FORTRAN_ENV): Add STAT_FAILED_IMAGE.
451         * intrinsic.h (gfc_check_atomic_op, gfc_check_atomic_cas,
452         gfc_check_atomic_fetch_op): New
453         prototypes.
454         * libgfortran.h (libgfortran_stat_codes): Add GFC_STAT_FAILED_IMAGE.
455         * iso-fortran-env.def: Add it.
456         * trans-intrinsic.c (conv_intrinsic_atomic_op): Renamed from
457         conv_intrinsic_atomic_ref; handle more atomics.
458         (conv_intrinsic_atomic_def): Handle STAT=.
459         (conv_intrinsic_atomic_cas): New.
460         (gfc_conv_intrinsic_subroutine): Handle new atomics.
462 2014-07-09  Bernd Schmidt  <bernds@codesourcery.com>
464         * trans-array.c (gfc_build_constant_array_constructor): Build a
465         static decl manually.
466         * trans-decl.c (create_main_function): Likewise.
468 2014-07-07  Paul Thomas  <pault@gcc.gnu.org>
470         PR fortran/61459
471         PR fortran/58883
472         * trans-expr.c (fcncall_realloc_result): Use the natural type
473         for the address expression of 'res_desc'.
475 2014-07-07  Gerald Pfeifer  <gerald@pfeifer.com>
477         * gfortran.texi (Fortran 2003 status): Fix grammar.
479 2014-07-04  Tobias Burnus  <burnus@net-b.de>
481         * resolve.c (resolve_assoc_var): Fix corank setting.
482         * trans-array.c (gfc_conv_descriptor_token): Change assert.
483         for select-type temporaries.
484         * trans-decl.c (generate_coarray_sym_init): Skip for
485         attr.select_type_temporary.
486         * trans-expr.c (gfc_conv_procedure_call): Fix for
487         select-type temporaries.
488         * trans-intrinsic.c (get_caf_token_offset): Ditto.
489         (gfc_conv_intrinsic_caf_get, gfc_conv_intrinsic_caf_send): Set
490         the correct dtype.
491         * trans-types.h (gfc_get_dtype_rank_type): New.
492         * trans-types.c (gfc_get_dtype_rank_type): Ditto.
494 2014-07-03  Tobias Burnus  <burnus@net-b.de>
496         * scanner.c (skip_free_comments): Fix indentation.
498 2014-07-02  Jakub Jelinek  <jakub@redhat.com>
499             Fritz Reese  <Reese-Fritz@zai.com>
501         * decl.c (variable_decl): Reject old style initialization
502         for derived type components.
504 2014-06-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
506         PR fortran/36275
507         PR fortran/38839
508         * decl.c (check_bind_name_identifier): New function.
509         (gfc_match_bind_c): Match any constant expression as binding
510         label.
511         * match.c (gfc_match_name_C): Remove.
513 2014-06-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
515         PR fortran/29383
516         * gfortran.h (gfc_simplify_ieee_selected_real_kind): New prototype.
517         * libgfortran.h (GFC_FPE_*): Use simple integer values, valid in
518         both C and Fortran.
519         * expr.c (gfc_check_init_expr): Simplify IEEE_SELECTED_REAL_KIND.
520         * simplify.c (gfc_simplify_ieee_selected_real_kind): New function.
521         * module.c (mio_symbol): Keep track of symbols which came from
522         intrinsic modules.
523         (gfc_use_module): Keep track of the IEEE modules.
524         * trans-decl.c (gfc_get_symbol_decl): Adjust code since
525         we have new intrinsic modules.
526         (gfc_build_builtin_function_decls): Build decls for
527         ieee_procedure_entry and ieee_procedure_exit.
528         (is_from_ieee_module, is_ieee_module_used, save_fp_state,
529         restore_fp_state): New functions.
530         (gfc_generate_function_code): Save and restore floating-point
531         state on procedure entry/exit, when IEEE modules are used.
532         * intrinsic.texi: Document the IEEE modules.
534 2014-06-25  Tobias Burnus  <burnus@net-b.de>
536         * interface.c (check_intents): Fix diagnostic with
537         coindexed coarrays.
539 2014-06-25  Tobias Burnus  <burnus@net-b.de>
541         * resolve.c (resolve_ordinary_assign): Don't invoke caf_send
542         when assigning a coindexed RHS scalar to a noncoindexed LHS
543         array.
544         * trans-intrinsic.c (conv_caf_send): Do numeric type conversion
545         for a noncoindexed scalar RHS.
547 2014-06-25  Tobias Burnus  <burnus@net-b.de>
549         * check.c (check_co_minmaxsum): Add definable check.
550         * expr.c (gfc_check_vardef_context): Fix context == NULL case.
551         * trans-expr.c (get_scalar_to_descriptor_type): Handle pointer
552         arguments.
553         * trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Fix generation of
554         temporary strings.
556 2014-06-25  Jakub Jelinek  <jakub@redhat.com>
558         * trans.h (gfc_omp_clause_linear_ctor): New prototype.
559         * trans-openmp.c (gfc_omp_linear_clause_add_loop,
560         gfc_omp_clause_linear_ctor): New functions.
561         (gfc_trans_omp_clauses): Make sure OMP_CLAUSE_LINEAR_STEP has
562         correct type.  Set OMP_CLAUSE_LINEAR_ARRAY flag if needed.
563         * f95-lang.c (LANG_HOOKS_OMP_CLAUSE_LINEAR_CTOR): Redefine.
565 2014-06-24  Jakub Jelinek  <jakub@redhat.com>
567         * dump-parse-tree.c (show_omp_namelist): Use n->udr->udr instead
568         of n->udr.
569         * f95-lang.c (gfc_init_builtin_functions): Initialize
570         BUILT_IN_ASSUME_ALIGNED.
571         * gfortran.h (gfc_omp_namelist): Change udr field type to
572         struct gfc_omp_namelist_udr.
573         (gfc_omp_namelist_udr): New type.
574         (gfc_get_omp_namelist_udr): Define.
575         (gfc_resolve_code): New prototype.
576         * match.c (gfc_free_omp_namelist): Free name->udr.
577         * module.c (intrinsics): Add INTRINSIC_USER.
578         (fix_mio_expr): Likewise.
579         (mio_expr): Handle INSTRINSIC_USER and non-resolved EXPR_FUNCTION.
580         * openmp.c (gfc_match_omp_clauses): Adjust initialization of n->udr.
581         (gfc_match_omp_declare_reduction): Treat len=: the same as len=*.
582         Set attr.flavor on omp_{out,in,priv,orig} artificial variables.
583         (struct resolve_omp_udr_callback_data): New type.
584         (resolve_omp_udr_callback, resolve_omp_udr_callback2,
585         resolve_omp_udr_clause): New functions.
586         (resolve_omp_clauses): Adjust for n->udr changes, resolve UDR clauses
587         here.
588         (omp_udr_callback): Don't check for implicitly declared functions
589         here.
590         (gfc_resolve_omp_udr): Don't call gfc_resolve.  Don't check for
591         implicitly declared subroutines here.
592         * resolve.c (resolve_function): If value.function.isym is non-NULL,
593         consider it already resolved.
594         (resolve_code): Renamed to ...
595         (gfc_resolve_code): ... this.  No longer static.
596         (gfc_resolve_blocks, generate_component_assignments, resolve_codes):
597         Adjust callers.
598         * trans-openmp.c (gfc_omp_privatize_by_reference): Don't privatize
599         by reference type (C_PTR) variables.
600         (gfc_omp_finish_clause): Make sure OMP_CLAUSE_SIZE is non-NULL.
601         (gfc_trans_omp_udr_expr): Remove.
602         (gfc_trans_omp_array_reduction_or_udr): Adjust for n->udr changes.
603         Don't call gfc_trans_omp_udr_expr, even for sym->attr.dimension
604         expand it as assignment or subroutine call.  Don't initialize
605         value.function.isym.
607 2014-06-23  Tobias Burnus  <burnus@net-b.de>
609         * trans-decl.c (gfc_trans_deferred_vars): Fix handling of
610         explicit-size arrays with -fcoarray=lib.
612 2014-06-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
614         PR fortran/33363
615         * invoke.texi: Don't mention nonexisting -fcase-lower option.
617 2014-06-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
619         PR fortran/61454
620         * expr.c (scalarize_intrinsic_call): Take care of optional
621         arguments.
623 2014-06-19  Tobias Burnus  <burnus@net-b.de>
625         * trans-intrinsic.c (conv_co_minmaxsum): Fix argument
626         passing.
628 2014-06-18  Tobias Burnus  <burnus@net-b.de>
630         * gfortran.texi (OpenMP): Update refs to OpenMP 4.0.
631         * intrinsic.texi (OpenMP Modules): Ditto.
633 2014-06-18  Jakub Jelinek  <jakub@redhat.com>
635         * cpp.c (cpp_define_builtins): Change _OPENMP macro to
636         201307.
637         * dump-parse-tree.c (show_omp_namelist): Add list_type
638         argument.  Adjust for rop being u.reduction_op now,
639         handle depend_op or map_op.
640         (show_omp_node): Adjust callers.  Print some new
641         OpenMP 4.0 clauses, adjust for OMP_LIST_DEPEND_{IN,OUT}
642         becoming a single OMP_LIST_DEPEND.
643         * f95-lang.c (gfc_handle_omp_declare_target_attribute): New
644         function.
645         (gfc_attribute_table): New variable.
646         (LANG_HOOKS_OMP_FINISH_CLAUSE, LANG_HOOKS_ATTRIBUTE_TABLE): Redefine.
647         * frontend-passes.c (gfc_code_walker): Handle new OpenMP target
648         EXEC_OMP_* codes and new clauses.
649         * gfortran.h (gfc_statement): Add ST_OMP_TARGET, ST_OMP_END_TARGET,
650         ST_OMP_TARGET_DATA, ST_OMP_END_TARGET_DATA, ST_OMP_TARGET_UPDATE,
651         ST_OMP_DECLARE_TARGET, ST_OMP_TEAMS, ST_OMP_END_TEAMS,
652         ST_OMP_DISTRIBUTE, ST_OMP_END_DISTRIBUTE, ST_OMP_DISTRIBUTE_SIMD,
653         ST_OMP_END_DISTRIBUTE_SIMD, ST_OMP_DISTRIBUTE_PARALLEL_DO,
654         ST_OMP_END_DISTRIBUTE_PARALLEL_DO, ST_OMP_DISTRIBUTE_PARALLEL_DO_SIMD,
655         ST_OMP_END_DISTRIBUTE_PARALLEL_DO_SIMD, ST_OMP_TARGET_TEAMS,
656         ST_OMP_END_TARGET_TEAMS, ST_OMP_TEAMS_DISTRIBUTE,
657         ST_OMP_END_TEAMS_DISTRIBUTE, ST_OMP_TEAMS_DISTRIBUTE_SIMD,
658         ST_OMP_END_TEAMS_DISTRIBUTE_SIMD, ST_OMP_TARGET_TEAMS_DISTRIBUTE,
659         ST_OMP_END_TARGET_TEAMS_DISTRIBUTE,
660         ST_OMP_TARGET_TEAMS_DISTRIBUTE_SIMD,
661         ST_OMP_END_TARGET_TEAMS_DISTRIBUTE_SIMD,
662         ST_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO,
663         ST_OMP_END_TEAMS_DISTRIBUTE_PARALLEL_DO,
664         ST_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO,
665         ST_OMP_END_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO,
666         ST_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD,
667         ST_OMP_END_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD,
668         ST_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD and
669         ST_OMP_END_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD.
670         (symbol_attribute): Add omp_declare_target field.
671         (gfc_omp_depend_op, gfc_omp_map_op): New enums.
672         (gfc_omp_namelist): Replace rop field with union
673         containing reduction_op, depend_op and map_op.
674         (OMP_LIST_DEPEND_IN, OMP_LIST_DEPEND_OUT): Remove.
675         (OMP_LIST_DEPEND, OMP_LIST_MAP, OMP_LIST_TO, OMP_LIST_FROM): New.
676         (gfc_omp_clauses): Add num_teams, device, thread_limit,
677         dist_sched_kind, dist_chunk_size fields.
678         (gfc_common_head): Add omp_declare_target field.
679         (gfc_exec_op): Add EXEC_OMP_TARGET, EXEC_OMP_TARGET_DATA,
680         EXEC_OMP_TEAMS, EXEC_OMP_DISTRIBUTE, EXEC_OMP_DISTRIBUTE_SIMD,
681         EXEC_OMP_DISTRIBUTE_PARALLEL_DO, EXEC_OMP_DISTRIBUTE_PARALLEL_DO_SIMD,
682         EXEC_OMP_TARGET_TEAMS, EXEC_OMP_TEAMS_DISTRIBUTE,
683         EXEC_OMP_TEAMS_DISTRIBUTE_SIMD, EXEC_OMP_TARGET_TEAMS_DISTRIBUTE,
684         EXEC_OMP_TARGET_TEAMS_DISTRIBUTE_SIMD,
685         EXEC_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO,
686         EXEC_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO,
687         EXEC_OMP_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD,
688         EXEC_OMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_DO_SIMD and
689         EXEC_OMP_TARGET_UPDATE.
690         (gfc_add_omp_declare_target): New prototype.
691         * match.h (gfc_match_omp_declare_target, gfc_match_omp_distribute,
692         gfc_match_omp_distribute_parallel_do,
693         gfc_match_omp_distribute_parallel_do_simd,
694         gfc_match_omp_distribute_simd, gfc_match_omp_target,
695         gfc_match_omp_target_data, gfc_match_omp_target_teams,
696         gfc_match_omp_target_teams_distribute,
697         gfc_match_omp_target_teams_distribute_parallel_do,
698         gfc_match_omp_target_teams_distribute_parallel_do_simd,
699         gfc_match_omp_target_teams_distribute_simd,
700         gfc_match_omp_target_update, gfc_match_omp_teams,
701         gfc_match_omp_teams_distribute,
702         gfc_match_omp_teams_distribute_parallel_do,
703         gfc_match_omp_teams_distribute_parallel_do_simd,
704         gfc_match_omp_teams_distribute_simd): New prototypes.
705         * module.c (ab_attribute): Add AB_OMP_DECLARE_TARGET.
706         (attr_bits): Likewise.
707         (mio_symbol_attribute): Handle omp_declare_target attribute.
708         (gfc_free_omp_clauses): Free num_teams, device, thread_limit
709         and dist_chunk_size expressions.
710         (OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE, OMP_CLAUSE_LASTPRIVATE,
711         OMP_CLAUSE_COPYPRIVATE, OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN,
712         OMP_CLAUSE_REDUCTION, OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS,
713         OMP_CLAUSE_SCHEDULE, OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED,
714         OMP_CLAUSE_COLLAPSE, OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL,
715         OMP_CLAUSE_MERGEABLE, OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND,
716         OMP_CLAUSE_INBRANCH, OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH,
717         OMP_CLAUSE_PROC_BIND, OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN,
718         OMP_CLAUSE_UNIFORM): Use 1U instead of 1.
719         (OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO, OMP_CLAUSE_FROM,
720         OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT,
721         OMP_CLAUSE_DIST_SCHEDULE): Define.
722         (gfc_match_omp_clauses): Change mask parameter to unsigned int.
723         Adjust for rop becoming u.reduction_op.  Disallow inbranch with
724         notinbranch.  For depend clause, always create OMP_LIST_DEPEND
725         and fill in u.depend_op.  Handle num_teams, device, map,
726         to, from, thread_limit and dist_schedule clauses.
727         (OMP_DECLARE_SIMD_CLAUSES): Or in OMP_CLAUSE_INBRANCH and
728         OMP_CLAUSE_NOTINBRANCH.
729         (OMP_TARGET_CLAUSES, OMP_TARGET_DATA_CLAUSES,
730         OMP_TARGET_UPDATE_CLAUSES, OMP_TEAMS_CLAUSES,
731         OMP_DISTRIBUTE_CLAUSES): Define.
732         (match_omp): New function.
733         (gfc_match_omp_do, gfc_match_omp_do_simd, gfc_match_omp_parallel,
734         gfc_match_omp_parallel_do, gfc_match_omp_parallel_do_simd,
735         gfc_match_omp_parallel_sections, gfc_match_omp_parallel_workshare,
736         gfc_match_omp_sections, gfc_match_omp_simd, gfc_match_omp_single,
737         gfc_match_omp_task): Rewritten using match_omp.
738         (gfc_match_omp_threadprivate, gfc_match_omp_declare_reduction):
739         Diagnose if the directives are followed by unexpected junk.
740         (gfc_match_omp_distribute, gfc_match_omp_distribute_parallel_do,
741         gfc_match_omp_distribute_parallel_do_simd,
742         gfc_match_omp_distrbute_simd, gfc_match_omp_declare_target,
743         gfc_match_omp_target, gfc_match_omp_target_data,
744         gfc_match_omp_target_teams, gfc_match_omp_target_teams_distribute,
745         gfc_match_omp_target_teams_distribute_parallel_do,
746         gfc_match_omp_target_teams_distribute_parallel_do_simd,
747         gfc_match_omp_target_teams_distrbute_simd, gfc_match_omp_target_update,
748         gfc_match_omp_teams, gfc_match_omp_teams_distribute,
749         gfc_match_omp_teams_distribute_parallel_do,
750         gfc_match_omp_teams_distribute_parallel_do_simd,
751         gfc_match_omp_teams_distrbute_simd): New functions.
752         * openmp.c (resolve_omp_clauses): Adjust for
753         OMP_LIST_DEPEND_{IN,OUT} being changed to OMP_LIST_DEPEND.  Handle
754         OMP_LIST_MAP, OMP_LIST_FROM, OMP_LIST_TO, num_teams, device,
755         dist_chunk_size and thread_limit.
756         (gfc_resolve_omp_parallel_blocks): Only put sharing clauses into
757         ctx.sharing_clauses.  Call gfc_resolve_omp_do_blocks for various
758         new EXEC_OMP_* codes.
759         (resolve_omp_do): Handle various new EXEC_OMP_* codes.
760         (gfc_resolve_omp_directive): Likewise.
761         (gfc_resolve_omp_declare_simd): Add missing space to diagnostics.
762         * parse.c (decode_omp_directive): Handle parsing of OpenMP 4.0
763         offloading related directives.
764         (case_executable): Add ST_OMP_TARGET_UPDATE.
765         (case_exec_markers): Add ST_OMP_TARGET*, ST_OMP_TEAMS*,
766         ST_OMP_DISTRIBUTE*.
767         (case_decl): Add ST_OMP_DECLARE_TARGET.
768         (gfc_ascii_statement): Handle new ST_OMP_* codes.
769         (parse_omp_do): Handle various new ST_OMP_* codes.
770         (parse_executable): Likewise.
771         * resolve.c (gfc_resolve_blocks): Handle various new EXEC_OMP_*
772         codes.
773         (resolve_code): Likewise.
774         (resolve_symbol): Change that !$OMP DECLARE TARGET variables
775         are saved.
776         * st.c (gfc_free_statement): Handle various new EXEC_OMP_* codes.
777         * symbol.c (check_conflict): Check omp_declare_target conflicts.
778         (gfc_add_omp_declare_target): New function.
779         (gfc_copy_attr): Copy omp_declare_target.
780         * trans.c (trans_code): Handle various new EXEC_OMP_* codes.
781         * trans-common.c (build_common_decl): Add "omp declare target"
782         attribute if needed.
783         * trans-decl.c (add_attributes_to_decl): Likewise.
784         * trans.h (gfc_omp_finish_clause): New prototype.
785         * trans-openmp.c (gfc_omp_finish_clause): New function.
786         (gfc_trans_omp_reduction_list): Adjust for rop being renamed
787         to u.reduction_op.
788         (gfc_trans_omp_clauses): Adjust for OMP_LIST_DEPEND_{IN,OUT}
789         change to OMP_LIST_DEPEND and fix up depend handling.
790         Handle OMP_LIST_MAP, OMP_LIST_TO, OMP_LIST_FROM, num_teams,
791         thread_limit, device, dist_chunk_size and dist_sched_kind.
792         (gfc_trans_omp_do): Handle EXEC_OMP_DISTRIBUTE.
793         (GFC_OMP_SPLIT_DISTRIBUTE, GFC_OMP_SPLIT_TEAMS,
794         GFC_OMP_SPLIT_TARGET, GFC_OMP_SPLIT_NUM, GFC_OMP_MASK_DISTRIBUTE,
795         GFC_OMP_MASK_TEAMS, GFC_OMP_MASK_TARGET, GFC_OMP_MASK_NUM): New.
796         (gfc_split_omp_clauses): Handle splitting of clauses for new
797         EXEC_OMP_* codes.
798         (gfc_trans_omp_do_simd): Add pblock argument, adjust for being
799         callable for combined constructs.
800         (gfc_trans_omp_parallel_do, gfc_trans_omp_parallel_do_simd): Likewise.
801         (gfc_trans_omp_distribute, gfc_trans_omp_teams,
802         gfc_trans_omp_target, gfc_trans_omp_target_data,
803         gfc_trans_omp_target_update): New functions.
804         (gfc_trans_omp_directive): Adjust gfc_trans_omp_* callers, handle
805         new EXEC_OMP_* codes.
807 2014-06-18  Tobias Burnus  <burnus@net-b.de>
809         PR fortran/61126
810         * invoke.texi (-Wunused-parameter): Make clearer when
811         -Wextra implies this option.
813 2014-06-18  Manuel López-Ibáñez  <manu@gcc.gnu.org>
815         PR fortran/61126
816         * options.c (gfc_handle_option): Remove call to
817         handle_generated_option.
819 2014-06-17  Tobias Burnus  <burnus@net-b.de>
821         * check.c (gfc_check_atomic, gfc_check_atomic_def):
822         Use argument for GFC_ISYM_CAF_GET.
823         * resolve.c (resolve_variable): Enable CAF_GET insertion.
824         (resolve_lock_unlock): Remove GFC_ISYM_CAF_GET.
825         (resolve_ordinary_assign): Enable CAF_SEND insertion.
826         * trans-const.c (gfc_build_string_const,
827         gfc_build_wide_string_const): Set TYPE_STRING_FLAG.
828         * trans-decl.c (gfor_fndecl_caf_get, gfor_fndecl_caf_send,
829         gfor_fndecl_caf_sendget): New global variables.
830         (gfc_build_builtin_function_decls): Initialize them;
831         update co_min/max/sum initialization.
832         * trans-expr.c (gfc_get_tree_for_caf_expr): Renamed from
833         get_tree_for_caf_expr and removed static.
834         (gfc_conv_procedure_call): Update call.
835         * trans-intrinsic.c (caf_get_image_index,
836         conv_caf_vector_subscript_elem, conv_caf_vector_subscript,
837         get_caf_token_offset, gfc_conv_intrinsic_caf_get,
838         conv_caf_send): New.
839         (gfc_conv_intrinsic_function, gfc_conv_intrinsic_subroutine,
840         gfc_walk_intrinsic_function): Handle CAF_GET and CAF_SEND.
841         (conv_co_minmaxsum): Update call for remove unused vector
842         subscript.
843         (conv_intrinsic_atomic_def, conv_intrinsic_atomic_ref):
844         Skip a CAF_GET of the argument.
845         * trans-types.c (gfc_get_caf_vector_type): New.
846         * trans-types.h (gfc_get_caf_vector_type): New.
847         * trans.h (gfor_fndecl_caf_get, gfor_fndecl_caf_send,
848         gfor_fndecl_caf_sendget): New global variables.
849         (gfc_get_tree_for_caf_expr): New prototypes.
851 2014-06-15  Jan Hubicka  <hubicka@ucw.cz>
853         * trans-common.c (build_common_decl): Use
854         set_decl_tls_model.
855         * trans-decl.c (gfc_finish_var_decl): Likewise.
856         (get_proc_pointer_decl): Likewise.
858 2014-06-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
860         PR fortran/28484
861         PR fortran/61429
862         * check.c (gfc_check_system_clock): Improve checking of arguments.
863         * intrinsic.texi: Update doc of SYSTEM_CLOCK.
864         * iresolve.c (gfc_resolve_system_clock): Choose library function
865         used depending on argument kinds.
866         * trans-decl.c (gfc_build_intrinsic_function_decls): Build
867         decls for system_clock_4 and system_clock_8.
868         * trans-intrinsic.c (conv_intrinsic_system_clock): New function.
869         (gfc_conv_intrinsic_subroutine): Call conv_intrinsic_system_clock.
870         * trans.h (gfor_fndecl_system_clock4, gfor_fndecl_system_clock8):
871         New variables.
873 2014-06-12  Tobias Burnus  <burnus@net-b.de>
875         * gfortran.h (gfc_copy_formal_args_intr): Update prototype.
876         * symbol.c (gfc_copy_formal_args_intr): Handle the case
877         that absent optional arguments should be ignored.
878         * trans-intrinsic.c (gfc_get_symbol_for_expr): Ditto.
879         (gfc_conv_intrinsic_funcall,
880         conv_generic_with_optional_char_arg): Update call.
881         * resolve.c (gfc_resolve_intrinsic): Ditto.
883 2014-06-10  Dominique d'Humieres <dominiq@lps.ens.fr>
884             Mikael Morin <mikael@gcc.gnu.org>
886         PR fortran/41936
887         * trans-expr.c (gfc_conv_expr_reference): Deallocate array
888         components.
890 2014-06-10  Jakub Jelinek  <jakub@redhat.com>
892         PR fortran/60928
893         * f95-lang.c (gfc_init_builtin_functions): Handle -fopenmp-simd
894         like -fopenmp.
895         * openmp.c (resolve_omp_clauses): Remove allocatable components
896         diagnostics.  Add associate-name and intent(in) pointer
897         diagnostics for various clauses, diagnose procedure pointers in
898         reduction clause.
899         * parse.c (match_word_omp_simd): New function.
900         (matchs, matcho): New macros.
901         (decode_omp_directive): Change match macros to either matchs
902         or matcho.  Handle -fopenmp-simd.
903         (next_free, next_fixed): Handle -fopenmp-simd like -fopenmp.
904         * scanner.c (skip_free_comments, skip_fixed_comments, include_line):
905         Likewise.
906         * trans-array.c (get_full_array_size): Rename to...
907         (gfc_full_array_size): ... this.  No longer static.
908         (duplicate_allocatable): Adjust caller.  Add NO_MEMCPY argument
909         and handle it.
910         (gfc_duplicate_allocatable, gfc_copy_allocatable_data): Adjust
911         duplicate_allocatable callers.
912         (gfc_duplicate_allocatable_nocopy): New function.
913         (structure_alloc_comps): Adjust g*_full_array_size and
914         duplicate_allocatable caller.
915         * trans-array.h (gfc_full_array_size,
916         gfc_duplicate_allocatable_nocopy): New prototypes.
917         * trans-common.c (create_common): Call gfc_finish_decl_attrs.
918         * trans-decl.c (gfc_finish_decl_attrs): New function.
919         (gfc_finish_var_decl, create_function_arglist,
920         gfc_get_fake_result_decl): Call it.
921         (gfc_allocate_lang_decl): If DECL_LANG_SPECIFIC is already allocated,
922         don't allocate it again.
923         (gfc_get_symbol_decl): Set GFC_DECL_ASSOCIATE_VAR_P on
924         associate-names.
925         * trans.h (gfc_finish_decl_attrs): New prototype.
926         (struct lang_decl): Add scalar_allocatable and scalar_pointer
927         bitfields.
928         (GFC_DECL_SCALAR_ALLOCATABLE, GFC_DECL_SCALAR_POINTER,
929         GFC_DECL_GET_SCALAR_ALLOCATABLE, GFC_DECL_GET_SCALAR_POINTER,
930         GFC_DECL_ASSOCIATE_VAR_P): Define.
931         (GFC_POINTER_TYPE_P): Remove.
932         * trans-openmp.c (gfc_omp_privatize_by_reference): Don't check
933         GFC_POINTER_TYPE_P, instead test GFC_DECL_GET_SCALAR_ALLOCATABLE,
934         GFC_DECL_GET_SCALAR_POINTER or GFC_DECL_CRAY_POINTEE on decl.
935         (gfc_omp_predetermined_sharing): Associate-names are predetermined.
936         (enum walk_alloc_comps): New.
937         (gfc_has_alloc_comps, gfc_omp_unshare_expr_r, gfc_omp_unshare_expr,
938         gfc_walk_alloc_comps): New functions.
939         (gfc_omp_private_outer_ref): Return true for scalar allocatables or
940         decls with allocatable components.
941         (gfc_omp_clause_default_ctor, gfc_omp_clause_copy_ctor,
942         gfc_omp_clause_assign_op, gfc_omp_clause_dtor): Fix up handling of
943         allocatables, handle also OMP_CLAUSE_REDUCTION, handle scalar
944         allocatables and decls with allocatable components.
945         (gfc_trans_omp_array_reduction_or_udr): Don't handle allocatable
946         arrays here.
947         (gfc_trans_omp_reduction_list): Call
948         gfc_trans_omp_array_reduction_or_udr even for allocatable scalars.
949         (gfc_trans_omp_do_simd): If -fno-openmp, just expand it as OMP_SIMD.
950         (gfc_trans_omp_parallel_do_simd): Likewise.
951         * trans-types.c (gfc_sym_type): Don't set GFC_POINTER_TYPE_P.
952         (gfc_get_derived_type): Call gfc_finish_decl_attrs.
954 2014-06-09  Paul Thomas  <pault@gcc.gnu.org>
956         PR fortran/61406
957         * trans-stmt.c (trans_associate_var): Check that array
958         constructors are constant for direct reference.
960 2014-06-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
962         PR fortran/36096
963         * intrinsic.texi: Fix documentation of BESSEL_J0, BESSEL_J1,
964         BESSEL_Y0, and BESSEL_Y1.
966 2014-06-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
968         PR fortran/45187
969         * trans-decl.c (gfc_create_module_variable): Don't create
970         Cray-pointee decls twice.
972 2014-06-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
974         * io.c (resolve_tag): Warn on non-default kind for NUMBER,
975         NEXTREC, RECL, NAMED, OPENED and PENDING I/O specifiers.
977 2014-06-06  Jakub Jelinek  <jakub@redhat.com>
979         * dump-parse-tree.c (show_omp_namelist): Dump reduction
980         id in each list item.
981         (show_omp_node): Only handle OMP_LIST_REDUCTION, not
982         OMP_LIST_REDUCTION_FIRST .. OMP_LIST_REDUCTION_LAST.  Don't
983         dump reduction id here.
984         * frontend-passes.c (dummy_code_callback): Renamed to...
985         (gfc_dummy_code_callback): ... this.  No longer static.
986         (optimize_reduction): Use gfc_dummy_code_callback instead of
987         dummy_code_callback.
988         * gfortran.h (gfc_statement): Add ST_OMP_DECLARE_REDUCTION.
989         (symbol_attribute): Add omp_udr_artificial_var bitfield.
990         (gfc_omp_reduction_op): New enum.
991         (gfc_omp_namelist): Add rop and udr fields.
992         (OMP_LIST_PLUS, OMP_LIST_REDUCTION_FIRST, OMP_LIST_MULT,
993         OMP_LIST_SUB, OMP_LIST_AND, OMP_LIST_OR, OMP_LIST_EQV,
994         OMP_LIST_NEQV, OMP_LIST_MAX, OMP_LIST_MIN, OMP_LIST_IAND,
995         OMP_LIST_IOR, OMP_LIST_IEOR, OMP_LIST_REDUCTION_LAST): Removed.
996         (OMP_LIST_REDUCTION): New.
997         (gfc_omp_udr): New type.
998         (gfc_get_omp_udr): Define.
999         (gfc_symtree): Add n.omp_udr field.
1000         (gfc_namespace): Add omp_udr_root field, add omp_udr_ns bitfield.
1001         (gfc_free_omp_udr, gfc_omp_udr_find, gfc_resolve_omp_udrs,
1002         gfc_dummy_code_callback): New prototypes.
1003         * match.h (gfc_match_omp_declare_reduction): New prototype.
1004         * module.c (MOD_VERSION): Increase to 13.
1005         (omp_declare_reduction_stmt): New array.
1006         (mio_omp_udr_expr, write_omp_udr, write_omp_udrs, load_omp_udrs):
1007         New functions.
1008         (read_module): Read OpenMP user defined reductions.
1009         (write_module): Write OpenMP user defined reductions.
1010         * openmp.c: Include arith.h.
1011         (gfc_free_omp_udr, gfc_find_omp_udr): New functions.
1012         (gfc_match_omp_clauses): Handle user defined reductions.
1013         Store reduction kind into gfc_omp_namelist instead of using
1014         several OMP_LIST_* entries.
1015         (match_udr_expr, gfc_omp_udr_predef, gfc_omp_udr_find,
1016         gfc_match_omp_declare_reduction): New functions.
1017         (resolve_omp_clauses): Adjust for reduction clauses being only
1018         in OMP_LIST_REDUCTION list.  Diagnose missing UDRs.
1019         (struct omp_udr_callback_data): New type.
1020         (omp_udr_callback, gfc_resolve_omp_udr, gfc_resolve_omp_udrs): New
1021         functions.
1022         * parse.c (decode_omp_directive): Handle !$omp declare reduction.
1023         (case_decl): Add ST_OMP_DECLARE_REDUCTION.
1024         (gfc_ascii_statement): Print ST_OMP_DECLARE_REDUCTION.
1025         * resolve.c (resolve_fl_variable): Allow len=: or len=* on
1026         sym->attr.omp_udr_artificial_var symbols.
1027         (resolve_types): Call gfc_resolve_omp_udrs.
1028         * symbol.c (gfc_get_uop): If gfc_current_ns->omp_udr_ns,
1029         use parent ns instead of gfc_current_ns.
1030         (gfc_get_sym_tree): Don't insert symbols into
1031         namespaces with omp_udr_ns set.
1032         (free_omp_udr_tree): New function.
1033         (gfc_free_namespace): Call it.
1034         * trans-openmp.c (struct omp_udr_find_orig_data): New type.
1035         (omp_udr_find_orig, gfc_trans_omp_udr_expr): New functions.
1036         (gfc_trans_omp_array_reduction): Renamed to...
1037         (gfc_trans_omp_array_reduction_or_udr): ... this.  Remove SYM
1038         argument, instead pass gfc_omp_namelist pointer N.  Handle
1039         user defined reductions.
1040         (gfc_trans_omp_reduction_list): Remove REDUCTION_CODE argument.
1041         Handle user defined reductions and reduction ops in gfc_omp_namelist.
1042         (gfc_trans_omp_clauses): Adjust for just a single OMP_LIST_REDUCTION
1043         list.
1044         (gfc_split_omp_clauses): Likewise.
1046 2014-06-05  Richard Biener  <rguenther@suse.de>
1048         PR fortran/61418
1049         * gfortranspec.c (spec_file): Remove.
1050         (find_spec_file): Likewise.
1051         (lang_specific_driver): Do not look for specs file in -L
1052         or append -specs command line argument.
1053         (lang_specific_pre_link): Always %:include libgfortran.spec.
1055 2014-06-02  Andrew MacLeod  <amacleod@redhat.com>
1057         * fortran/trans.c (trans_runtime_error_vararg): Call
1058         fold_build_call_array_loc instead of fold_builtin_call_array.
1060 2014-06-02  Bernd Schmidt  <bernds@codesourcery.com>
1062         * trans-decl.c (gfc_build_builtin_function_decls): Correct number of
1063         arguments to caf_init.
1065 2014-05-26  Tobias Burnus  <burnus@net-b.de>
1067         * gfortran.texi (Project Status): Fix broken link.
1069 2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
1071         PR libfortran/61310
1072         * intrinsics.texi (CTIME): Remove mention of locale-dependent
1073         behavior.
1075 2014-05-26  Tobias Burnus  <burnus@net-b.de>
1077         PR fortran/55117
1078         * trans-io.c (nml_full_name, transfer_namelist_element): Insert
1079         a '+' rather then '%' to differentiate namelist variable names
1080         that are based on extended derived types.
1082 2014-05-25  Tobias Burnus  <burnus@net-b.de>
1084         * check.c (gfc_check_num_images): New.
1085         (gfc_check_this_image): Handle distance argument.
1086         * intrinsic.c (add_functions): Update this_image and num_images
1087         for new distance and failed arguments.
1088         * intrinsic.texi (THIS_IMAGE, NUM_IMAGES): Document the new
1089         arguments.
1090         * intrinsic.h (gfc_check_num_images): New.
1091         (gfc_check_this_image, gfc_simplify_num_images,
1092         gfc_simplify_this_image, gfc_resolve_this_image): Update prototype.
1093         * iresolve.c (gfc_resolve_this_image): Handle distance argument.
1094         * simplify.c (gfc_simplify_num_images, gfc_simplify_this_image):
1095         Handle new arguments.
1096         * trans-intrinsic.c (trans_this_image, trans_num_images): Ditto.
1097         (gfc_conv_intrinsic_function): Update trans_num_images call.
1099 2014-05-23  Tobias Burnus  <burnus@net-b.de>
1101         * gfc-internals.texi: Change URLs to HTTPS; fix broken links.
1102         * gfortran.texi: Ditto.
1104 2014-05-22  Thomas Schwinge  <thomas@codesourcery.com>
1106         * f95-lang.c (DEF_FUNCTION_TYPE_0, DEF_FUNCTION_TYPE_6)
1107         (DEF_FUNCTION_TYPE_7, DEF_FUNCTION_TYPE_8)
1108         (DEF_FUNCTION_TYPE_VAR_5): Cosmetic fixes.
1109         * types.def: Simplify examples for DEF_FUNCTION_TYPE_*.
1111 2014-05-17  Trevor Saunders  <tsaunders@mozilla.com>
1113         * f95-lang.c (pushlevel): Adjust.
1114         * trans-decl.c (gfc_allocate_lang_decl): Adjust.
1115         (gfc_find_module): Likewise.
1116         * trans-types.c (gfc_get_nodesc_array_type): Likewise.
1117         (gfc_get_array_type_bounds): Likewise.
1118         (gfc_nonrestricted_type): Likewise.
1119         * trans.h: Don't use variable_size gty attribute.
1121 2014-05-17  Dominique d'Humieres <dominiq@lps.ens.fr>
1123         * check.c (gfc_check_fn_rc2008): move "argument" to the right
1124         place.
1126 2014-05-12  Tobias Burnus  <burnus@net-b.de>
1128         PR fortran/60127
1129         * openmp.c (resolve_omp_do): Reject do concurrent loops.
1131 2014-05-12  Thomas Koenig  <tkoenig@gcc.gnu.org>
1133         PR fortran/60834
1134         * frontend-passes.c (in_assoc_list):  New variable.
1135         (optimize_namespace):  Initialize in_assoc_list
1136         (combine_array_constructor): Don't try to combine
1137         assoc lists.
1138         (gfc_code_walker):  Keep track of in_assoc_list.
1140 2014-05-11  Jakub Jelinek  <jakub@redhat.com>
1142         * gfortran.h (gfc_statement): Add ST_OMP_CANCEL,
1143         ST_OMP_CANCELLATION_POINT, ST_OMP_TASKGROUP, ST_OMP_END_TASKGROUP,
1144         ST_OMP_SIMD, ST_OMP_END_SIMD, ST_OMP_DO_SIMD, ST_OMP_END_DO_SIMD,
1145         ST_OMP_PARALLEL_DO_SIMD, ST_OMP_END_PARALLEL_DO_SIMD and
1146         ST_OMP_DECLARE_SIMD.
1147         (gfc_omp_namelist): New typedef.
1148         (gfc_get_omp_namelist): Define.
1149         (OMP_LIST_UNIFORM, OMP_LIST_ALIGNED, OMP_LIST_LINEAR,
1150         OMP_LIST_DEPEND_IN, OMP_LIST_DEPEND_OUT): New clause list kinds.
1151         (gfc_omp_proc_bind_kind, gfc_omp_cancel_kind): New enums.
1152         (gfc_omp_clauses): Change type of lists to gfc_omp_namelist *.
1153         Add inbranch, notinbranch, cancel, proc_bind, safelen_expr and
1154         simdlen_expr fields.
1155         (gfc_omp_declare_simd): New typedef.
1156         (gfc_get_omp_declare_simd): Define.
1157         (gfc_namespace): Add omp_declare_simd field.
1158         (gfc_exec_op): Add EXEC_OMP_CANCEL, EXEC_OMP_CANCELLATION_POINT,
1159         EXEC_OMP_TASKGROUP, EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD and
1160         EXEC_OMP_PARALLEL_DO_SIMD.
1161         (gfc_omp_atomic_op): Add GFC_OMP_ATOMIC_MASK, GFC_OMP_ATOMIC_SEQ_CST
1162         and GFC_OMP_ATOMIC_SWAP.
1163         (gfc_code): Change type of omp_namelist field to gfc_omp_namelist *.
1164         (gfc_free_omp_namelist, gfc_free_omp_declare_simd,
1165         gfc_free_omp_declare_simd_list, gfc_resolve_omp_declare_simd): New
1166         prototypes.
1167         * trans-stmt.h (gfc_trans_omp_declare_simd): New prototype.
1168         * symbol.c (gfc_free_namespace): Call gfc_free_omp_declare_simd.
1169         * openmp.c (gfc_free_omp_clauses): Free safelen_expr and
1170         simdlen_expr.  Use gfc_free_omp_namelist instead of
1171         gfc_free_namelist.
1172         (gfc_free_omp_declare_simd, gfc_free_omp_declare_simd_list): New
1173         functions.
1174         (gfc_match_omp_variable_list): Add end_colon, headp and
1175         allow_sections arguments.  Handle parsing of array sections.
1176         Use *omp_namelist* instead of *namelist* data structure and
1177         functions/macros.  Allow termination at : character.
1178         (OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH,
1179         OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND,
1180         OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM): Define.
1181         (gfc_match_omp_clauses): Change first and needs_space variables
1182         into arguments with default values.  Parse inbranch, notinbranch,
1183         proc_bind, safelen, simdlen, uniform, linear, aligned and
1184         depend clauses.
1185         (OMP_PARALLEL_CLAUSES): Add OMP_CLAUSE_PROC_BIND.
1186         (OMP_DECLARE_SIMD_CLAUSES, OMP_SIMD_CLAUSES): Define.
1187         (OMP_TASK_CLAUSES): Add OMP_CLAUSE_DEPEND.
1188         (gfc_match_omp_do_simd): New function.
1189         (gfc_match_omp_flush): Use *omp_namelist* instead of *namelist*
1190         data structure and functions/macros.
1191         (gfc_match_omp_simd, gfc_match_omp_declare_simd,
1192         gfc_match_omp_parallel_do_simd): New functions.
1193         (gfc_match_omp_atomic): Handle seq_cst clause.  Handle atomic swap.
1194         (gfc_match_omp_taskgroup, gfc_match_omp_cancel_kind,
1195         gfc_match_omp_cancel, gfc_match_omp_cancellation_point): New
1196         functions.
1197         (resolve_omp_clauses): Add where, omp_clauses and ns arguments.
1198         Use *omp_namelist* instead of *namelist* data structure and
1199         functions/macros.  Resolve uniform, aligned, linear, depend,
1200         safelen and simdlen clauses.
1201         (resolve_omp_atomic): Adjust for GFC_OMP_ATOMIC_{MASK,SEQ_CST,SWAP}
1202         addition, recognize atomic swap.
1203         (gfc_resolve_omp_parallel_blocks): Use gfc_omp_namelist instead
1204         of gfc_namelist.  Handle EXEC_OMP_PARALLEL_DO_SIMD the same as
1205         EXEC_OMP_PARALLEL_DO.
1206         (gfc_resolve_do_iterator): Use *omp_namelist* instead of *namelist*
1207         data structure and functions/macros.
1208         (resolve_omp_do): Likewise.  Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD,
1209         EXEC_OMP_PARALLEL_DO_SIMD.
1210         (gfc_resolve_omp_directive): Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD,
1211         EXEC_OMP_PARALLEL_DO_SIMD and EXEC_OMP_CANCEL.  Adjust
1212         resolve_omp_clauses caller.
1213         (gfc_resolve_omp_declare_simd): New function.
1214         * parse.c (decode_omp_directive): Parse cancellation point, cancel,
1215         declare simd, end do simd, end simd, end parallel do simd,
1216         end taskgroup, parallel do simd, simd and taskgroup directives.
1217         (case_executable): Add ST_OMP_CANCEL and ST_OMP_CANCELLATION_POINT.
1218         (case_exec_markers): Add ST_OMP_TASKGROUP, case ST_OMP_SIMD,
1219         ST_OMP_DO_SIMD and ST_OMP_PARALLEL_DO_SIMD.
1220         (case_decl): Add ST_OMP_DECLARE_SIMD.
1221         (gfc_ascii_statement): Handle ST_OMP_CANCEL,
1222         ST_OMP_CANCELLATION_POINT, ST_OMP_TASKGROUP, ST_OMP_END_TASKGROUP,
1223         ST_OMP_SIMD, ST_OMP_END_SIMD, ST_OMP_DO_SIMD, ST_OMP_END_DO_SIMD,
1224         ST_OMP_PARALLEL_DO_SIMD, ST_OMP_END_PARALLEL_DO_SIMD and
1225         ST_OMP_DECLARE_SIMD.
1226         (parse_omp_do): Handle ST_OMP_SIMD, ST_OMP_DO_SIMD and
1227         ST_OMP_PARALLEL_DO_SIMD.
1228         (parse_omp_atomic): Adjust for GFC_OMP_ATOMIC_* additions.
1229         (parse_omp_structured_block): Handle ST_OMP_TASKGROUP and
1230         ST_OMP_PARALLEL_DO_SIMD.
1231         (parse_executable): Handle ST_OMP_SIMD, ST_OMP_DO_SIMD,
1232         ST_OMP_PARALLEL_DO_SIMD and ST_OMP_TASKGROUP.
1233         * trans-decl.c (gfc_get_extern_function_decl,
1234         gfc_create_function_decl): Call gfc_trans_omp_declare_simd if
1235         needed.
1236         * frontend-passes.c (gfc_code_walker): Handle EXEC_OMP_SIMD,
1237         EXEC_OMP_DO_SIMD and EXEC_OMP_PARALLEL_DO_SIMD.  Walk
1238         safelen_expr and simdlen_expr.  Walk expressions in gfc_omp_namelist
1239         of depend, aligned and linear clauses.
1240         * match.c (match_exit_cycle): Handle EXEC_OMP_SIMD, EXEC_OMP_DO_SIMD
1241         and EXEC_OMP_PARALLEL_DO_SIMD.
1242         (gfc_free_omp_namelist): New function.
1243         * dump-parse-tree.c (show_namelist): Removed.
1244         (show_omp_namelist): New function.
1245         (show_omp_node): Handle OpenMP 4.0 additions.
1246         (show_code_node): Handle EXEC_OMP_CANCEL, EXEC_OMP_CANCELLATION_POINT,
1247         EXEC_OMP_DO_SIMD, EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and
1248         EXEC_OMP_TASKGROUP.
1249         * match.h (gfc_match_omp_cancel, gfc_match_omp_cancellation_point,
1250         gfc_match_omp_declare_simd, gfc_match_omp_do_simd,
1251         gfc_match_omp_parallel_do_simd, gfc_match_omp_simd,
1252         gfc_match_omp_taskgroup): New prototypes.
1253         * trans-openmp.c (gfc_trans_omp_variable): Add declare_simd
1254         argument, handle it.  Allow current_function_decl to be NULL.
1255         (gfc_trans_omp_variable_list): Add declare_simd argument, pass
1256         it through to gfc_trans_omp_variable and disregard whether
1257         sym is referenced if declare_simd is true.  Work on gfc_omp_namelist
1258         instead of gfc_namelist.
1259         (gfc_trans_omp_reduction_list): Work on gfc_omp_namelist instead of
1260         gfc_namelist.  Adjust gfc_trans_omp_variable caller.
1261         (gfc_trans_omp_clauses): Add declare_simd argument, pass it through
1262         to gfc_trans_omp_variable{,_list} callers.  Work on gfc_omp_namelist
1263         instead of gfc_namelist.  Handle inbranch, notinbranch, safelen,
1264         simdlen, depend, uniform, linear, proc_bind and aligned clauses.
1265         Handle cancel kind.
1266         (gfc_trans_omp_atomic): Handle seq_cst clause, handle atomic swap,
1267         adjust for GFC_OMP_ATOMIC_* changes.
1268         (gfc_trans_omp_cancel, gfc_trans_omp_cancellation_point): New
1269         functions.
1270         (gfc_trans_omp_do): Add op argument, handle simd translation into
1271         generic.
1272         (GFC_OMP_SPLIT_SIMD, GFC_OMP_SPLIT_DO, GFC_OMP_SPLIT_PARALLEL,
1273         GFC_OMP_SPLIT_NUM, GFC_OMP_MASK_SIMD, GFC_OMP_MASK_DO,
1274         GFC_OMP_MASK_PARALLEL): New.
1275         (gfc_split_omp_clauses, gfc_trans_omp_do_simd): New functions.
1276         (gfc_trans_omp_parallel_do): Rework to use gfc_split_omp_clauses.
1277         (gfc_trans_omp_parallel_do_simd, gfc_trans_omp_taskgroup): New
1278         functions.
1279         (gfc_trans_omp_directive): Handle EXEC_OMP_CANCEL,
1280         EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
1281         EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
1282         Adjust gfc_trans_omp_do caller.
1283         (gfc_trans_omp_declare_simd): New function.
1284         * st.c (gfc_free_statement): Handle EXEC_OMP_CANCEL,
1285         EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
1286         EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
1287         For EXEC_OMP_FLUSH call gfc_free_omp_namelist instead of
1288         gfc_free_namelist.
1289         * module.c (omp_declare_simd_clauses): New variable.
1290         (mio_omp_declare_simd): New function.
1291         (mio_symbol): Call it.
1292         * trans.c (trans_code): Handle EXEC_OMP_CANCEL,
1293         EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
1294         EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
1295         * resolve.c (gfc_resolve_blocks): Handle EXEC_OMP_DO_SIMD,
1296         EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
1297         (resolve_code): Handle EXEC_OMP_CANCEL,
1298         EXEC_OMP_CANCELLATION_POINT, EXEC_OMP_DO_SIMD,
1299         EXEC_OMP_PARALLEL_DO_SIMD, EXEC_OMP_SIMD and EXEC_OMP_TASKGROUP.
1300         (resolve_types): Call gfc_resolve_omp_declare_simd.
1302 2014-05-11  Tobias Burnus  <burnus@net-b.de>
1304         * trans-intrinsic.c (gfc_build_builtin_function_decls):
1305         Change type of second argument to int.
1307 2014-05-09  Mike Stump  <mikestump@comcast.net>
1309         PR fortran/61109
1310         * trans-array.c (gfc_conv_array_initializer): Fix wide-int
1311         conversion bug.
1313 2014-05-08  Tobias Burnus  <burnus@net-b.de>
1315         * gfortran.h (gfc_isym_id): Add GFC_ISYM_CAF_GET
1316         and GFC_ISYM_CAF_SEND.
1317         * intrinsic.c (add_functions): Add only internally
1318         accessible caf_get and caf_send functions.
1319         * resolve.c (add_caf_get_intrinsic,
1320         remove_caf_get_intrinsic): New functions.
1321         (resolve_variable): Resolve expression rank and
1322         prepare for add_caf_get_intrinsic call.
1323         (gfc_resolve_expr): For variables, remove rank
1324         resolution.
1325         (resolve_ordinary_assign): Prepare call to
1326         GFC_ISYM_CAF_SEND.
1327         (resolve_code): Avoid call to GFC_ISYM_CAF_GET for
1328         the LHS of an assignment.
1330 2014-05-08  Tobias Burnus  <burnus@net-b.de>
1332         * trans-intrinsic.c (conv_co_minmaxsum): Change condition style.
1334 2014-05-08  Tobias Burnus  <burnus@net-b.de>
1336         * check.c (check_co_minmaxsum, gfc_check_co_minmax,
1337         gfc_check_co_sum): New.
1338         * error.c (gfc_notify_std): Update -std=f2008ts.
1339         * gfortran.h (gfc_isym_id): Add GFC_ISYM_CO_MAX,
1340         GFC_ISYM_CO_MIN, GFC_ISYM_CO_SUM.
1341         * intrinsic.h (gfc_check_co_minmax,
1342         gfc_check_co_sum): Declare.
1343         * intrinsic.c (add_subroutines): Add co_min, co_max
1344         and co_sum.
1345         (gfc_check_intrinsic_standard): Update text for
1346         -std=f2008ts.
1347         * intrinsic.texi (CO_MIN, CO_MAX, CO_SUM): Document
1348         them.
1349         * invoke.texi (-std=f2008ts): Update wording.
1350         * trans.h (gfor_fndecl_co_max,
1351         gfor_fndecl_co_min, gfor_fndecl_co_sum): Define.
1352         * trans-decl.c (gfor_fndecl_co_max,
1353         gfor_fndecl_co_min, gfor_fndecl_co_sum): Define.
1354         (gfc_build_builtin_function_decls): Assign to it.
1355         * trans-intrinsic.c (conv_co_minmaxsum): New.
1356         (gfc_conv_intrinsic_subroutine): Call it.
1358 2014-05-06  Kenneth Zadeck  <zadeck@naturalbridge.com>
1359             Mike Stump  <mikestump@comcast.net>
1360             Richard Sandiford  <rdsandiford@googlemail.com>
1362         * target-memory.c: Include wide-int.h.
1363         (gfc_interpret_logical): Use wide-int interfaces.
1364         * trans-array.c: Include wide-int.h.
1365         (gfc_conv_array_initializer): Use wide-int interfaces.
1366         * trans-const.c: Include wide-int.h.
1367         (gfc_conv_string_init): Use wide-int interfaces.
1368         (gfc_conv_mpz_to_tree): Likewise.
1369         (gfc_conv_tree_to_mpz): Likewise.
1370         * trans-decl.c (gfc_can_put_var_on_stack): Use tree_fits_uhwi_p.
1371         * trans-expr.c: Include wide-int.h.
1372         (gfc_conv_cst_int_power): Use wide-int interfaces.
1373         (gfc_string_to_single_character): Likewise.
1374         (gfc_optimize_len_trim): Likewise.
1375         * trans-intrinsic.c: Include wide-int.h.
1376         (trans_this_image): Use wide-int interfaces.
1377         (gfc_conv_intrinsic_bound): Likewise.
1378         (conv_intrinsic_cobound): Likewise.
1379         * trans-types.c (gfc_init_types): Likewise.
1380         (gfc_get_array_type_bounds): Pass an integer of the correct type
1381         instead of using integer_one_node.
1383 2014-04-30  Tobias Burnus  <burnus@net-b.de>
1385         * trans-decl.c (create_function_arglist): Add hidden coarray arguments
1386         also for polymorphic coarrays.
1387         * trans-expr.c (gfc_conv_procedure_call): Pass hidden coarray arguments
1388         also for polymorphic coarrays.
1390 2014-04-30  Tobias Burnus  <burnus@net-b.de>
1392         * resolve.c (resolve_function): Don't do
1393         assumed-size check for lcobound/ucobound.
1394         * trans-types.c (gfc_build_array_type): Only build an array
1395         descriptor with codimensions for allocatable coarrays.
1397 2014-04-30  Tobias Burnus  <burnus@net-b.de>
1399         * gfortran.h (gfc_init_coarray_decl): Remove.
1400         * parse.c (translate_all_program_units): Remove call to it.
1401         (gfc_parse_file): Update call.
1402         * trans.h (gfor_fndecl_caf_this_image,
1403         gfor_fndecl_caf_num_images): Add.
1404         (gfort_gvar_caf_num_images,
1405         gfort_gvar_caf_this_image): Remove.
1406         * trans-decl.c (gfor_fndecl_caf_this_image,
1407         gfor_fndecl_caf_num_images): Add.
1408         (gfort_gvar_caf_num_images,
1409         gfort_gvar_caf_this_image): Remove.
1410         (gfc_build_builtin_function_decls): Init new decl.
1411         (gfc_init_coarray_dec): Remove.
1412         (create_main_function): Change calls.
1413         * trans-intrinsic.c (trans_this_image, trans_image_index,
1414         conv_intrinsic_cobound): Generate call to new library function
1415         instead of to a static variable.
1416         * trans-stmt.c (gfc_trans_sync): Ditto.
1418 2014-04-30  Tobias Burnus  <burnus@net-b.de>
1420         * trans-expr.c (get_tree_for_caf_expr): Fix handling of polymorphic
1421         and derived-type coarrays.
1423 2014-04-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
1425         PR fortran/59604
1426         PR fortran/58003
1427         * gfortran.h (gfc_convert_mpz_to_signed):  Add prototype.
1428         * arith.c (gfc_int2int):  Convert number to signed if
1429         arithmetic overflow is not checked.
1430         * simplify.c (convert_mpz_to_unsigned): Only trigger assert for
1431         size if range checking is in force.
1432         (convert_mpz_to_signed):  Make non-static, rename to
1433         (gfc_convert_mpz_to_signed).
1434         (simplify_dshift): Use gfc_convert_mpz_to_signed.
1435         (gfc_simplify_ibclr):  Likewise.
1436         (gfc_simplify_ibits):  Likewise.
1437         (gfc_simplify_ibset):  Likewise.
1438         (simplify_shift):  Likewise.
1439         (gfc_simplify_ishiftc):  Likewise.
1440         (gfc_simplify_maskr):  Likewise.
1441         (gfc_simplify_maskl):  Likewise.
1443 2014-04-22  Tobias Burnus  <burnus@net-b.de>
1445         PR fortran/60881
1446         * trans-expr.c (gfc_trans_subcomponent_assign): Fix handling
1447         of scalar coarrays.
1449 2014-04-17  Jakub Jelinek  <jakub@redhat.com>
1451         * trans-types.c (gfc_init_kinds): Make sure GET_MODE_BITSIZE
1452         argument is enum machine_mode.
1454 2014-04-13  Paul Thomas  <pault@gcc.gnu.org>
1456         PR fortran/58085
1457         PR fortran/60717
1458         * trans.h: Add 'use_offset' bitfield to gfc_se.
1459         * trans-array.c (gfc_conv_expr_descriptor): Use 'use_offset'
1460         as a trigger to unconditionally recalculate the offset for
1461         array slices and constant arrays.
1462         trans-expr.c (gfc_conv_intrinsic_to_class): Use it.
1463         trans-stmt.c (trans_associate_var): Ditto.
1464         (gfc_conv_procedure_call): Ditto.
1466 2014-04-11  Tobias Burnus  <burnus@net-b.de>
1468         PR fortran/58880
1469         PR fortran/60495
1470         * resolve.c (gfc_resolve_finalizers): Ensure that vtables
1471         and finalization wrappers are generated.
1473 2014-04-11  Janne Blomqvist  <jb@gcc.gnu.org>
1475         * intrinsic.texi (RANDOM_SEED): Improve example.
1477 2014-04-10  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1479         * class.c (gfc_build_class_symbol): Append "_t" to target class
1480         names to make the generated type names unique.
1482 2014-04-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1484         PR fortran/60191
1485         * trans-types.c (gfc_get_function_type): In case of recursion
1486         build a variadic function type with empty argument list instead of a
1487         stdarg-like function type with incomplete argument list.
1489 2014-04-04  Tobias Burnus  <burnus@net-b.de>
1491         * check.c (gfc_check_cmplx): Fix typo.
1493 2014-03-28  Mikael Morin  <mikael@gcc.gnu.org>
1494             Tobias Burnus  <burnus@net-b.de>
1496         PR fortran/60576
1497         * trans-expr.c (gfc_conv_derived_to_class): Avoid
1498         generation of out-of-bounds range expr.
1500 2014-03-28  Mikael Morin  <mikael@gcc.gnu.org>
1502         PR fortran/60677
1503         * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Enlarge argument
1504         list buffer.
1506 2014-03-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
1508         PR fortran/60522
1509         * frontend-passes.c (cfe_code):  Do not walk subtrees
1510         for WHERE.
1512 2014-03-27  Tobias Burnus  <burnus@net-b.de>
1514         PR fortran/58880
1515         * trans-expr.c (gfc_conv_scalar_to_descriptor): Fix handling
1516         of nonpointers.
1518 2014-03-26 Dominique d'Humieres <dominiq@lps.ens.fr>
1520         PR fortran/34928
1521         * fortran.texi: Document Volatile COMMON as not supported.
1523 2014-03-22  Jakub Jelinek  <jakub@redhat.com>
1525         PR debug/60603
1526         * cpp.c (gfc_cpp_init): Restore cb_change_file call to
1527         <built-in>.
1529 2014-03-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1531         PR fortran/60148
1532         * gfortran.texi: Add description of namelist DELIM= behavior.
1534 2014-03-19  Tobias Burnus  <burnus@net-b.>
1536         PR fortran/60543
1537         * io.c (check_io_constraints): Use gfc_unset_implicit_pure.
1538         * resolve.c (resolve_ordinary_assign): Ditto.
1540 2014-03-19  Tobias Burnus  <burnus@net-b.de>
1542         PR fortran/60543
1543         PR fortran/60283
1544         * gfortran.h (gfc_unset_implicit_pure): New prototype.
1545         * resolve.c (gfc_unset_implicit_pure): New.
1546         (resolve_structure_cons, resolve_function,
1547         pure_subroutine): Use it.
1548         * decl.c (match_old_style_init, gfc_match_data,
1549         match_pointer_init, variable_decl): Ditto.
1550         * expr.c (gfc_check_pointer_assign): Ditto.
1551         * intrinsic.c (gfc_intrinsic_sub_interface): Ditto.
1552         * io.c (match_vtag, gfc_match_open, gfc_match_close,
1553         match_filepos, gfc_match_inquire, gfc_match_print,
1554         gfc_match_wait): Ditto.
1555         * match.c (gfc_match_critical, gfc_match_stopcode,
1556         lock_unlock_statement, sync_statement, gfc_match_allocate,
1557         gfc_match_deallocate): Ditto.
1558         * parse.c (decode_omp_directive): Ditto.
1559         * symbol.c (gfc_add_save): Ditto.
1561 2014-03-18  Janus Weil  <janus@gcc.gnu.org>
1563         PR fortran/55207
1564         PR fortran/60549
1565         * decl.c (match_attr_spec): Revert r208590.
1567 2014-03-18  Jakub Jelinek  <jakub@redhat.com>
1569         PR ipa/58721
1570         * trans.c (gfc_unlikely, gfc_likely): Don't add __builtin_expect
1571         if !optimize.
1573 2014-03-18  Tobias Burnus  <burnus@net-b.de>
1575         PR ipa/58721
1576         * trans.h (gfc_unlikely, gfc_likely): Add predictor as argument.
1577         (gfc_trans_io_runtime_check): Remove.
1578         * trans-io.c (gfc_trans_io_runtime_check): Make static; add has_iostat
1579         as argument, add predictor to block.
1580         (set_parameter_value, gfc_trans_open, gfc_trans_close, build_filepos,
1581         gfc_trans_inquire, gfc_trans_wait, build_dt): Update calls.
1582         * trans.c (gfc_unlikely, gfc_likely): Add predictor as argument.
1583         (gfc_trans_runtime_check, gfc_allocate_using_malloc,
1584         gfc_allocate_allocatable, gfc_deallocate_with_status): Set explicitly
1585         branch predictor.
1586         * trans-expr.c (gfc_conv_procedure_call): Ditto.
1587         * trans-stmt.c (gfc_trans_allocate): Ditto.
1588         * trans-array.c (gfc_array_init_size, gfc_array_allocate): Ditto.
1590 2014-03-15  Janus Weil  <janus@gcc.gnu.org>
1592         PR fortran/55207
1593         * decl.c (match_attr_spec): Variables in the main program implicitly
1594         get the SAVE attribute in Fortran 2008.
1596 2014-03-14  Mikael Morin  <mikael@gcc.gnu.org>
1598         PR fortran/60392
1599         * trans-array.c (gfc_conv_array_parameter): Don't reuse the descriptor
1600         if it has transposed dimensions.
1602 2014-03-08  Tobias Burnus  <burnus@net-b.de>
1604         PR fortran/60447
1605         * f95-lang.c (gfc_init): Return false when only
1606         preprocessing.
1607         * options.c (gfc_post_options): Ditto.
1609 2014-03-08  Tobias Burnus  <burnus@net-b.de>
1611         * gfortran.texi (Fortran 2003 Status): Mention finalization,
1612         deferred-length character support and input rounding.
1613         (Fortran 2008 Status): Mention that at termination
1614         signalling exceptions are shown.
1616 2014-03-06  Paul Thomas  <pault@gcc.gnu.org>
1617             Janus Weil  <janus@gcc.gnu.org>
1619         PR fortran/51976
1620         * gfortran.h (symbol_attribute): Add deferred_parameter attribute.
1621         * primary.c (build_actual_constructor): It is not an error if
1622         a missing component has the deferred_parameter attribute;
1623         equally, if one is given a value, it is an error.
1624         * resolve.c (resolve_fl_derived0): Remove error for deferred
1625         character length components.  Add the hidden string length
1626         field to the structure. Give it the deferred_parameter
1627         attribute.
1628         * trans-array.c (duplicate_allocatable): Add a strlen field
1629         which is used as the element size if it is non-null.
1630         (gfc_duplicate_allocatable, gfc_copy_allocatable_data): Pass a
1631         NULL to the new argument in duplicate_allocatable.
1632         (structure_alloc_comps): Set the hidden string length as
1633         appropriate. Use it in calls to duplicate_allocatable.
1634         (gfc_alloc_allocatable_for_assignment): When a deferred length
1635         backend declaration is variable, use that; otherwise use the
1636         string length from the expression evaluation.
1637         * trans-expr.c (gfc_conv_component_ref): If this is a deferred
1638         character length component, the string length should have the
1639         value of the hidden string length field.
1640         (gfc_trans_subcomponent_assign): Set the hidden string length
1641         field for deferred character length components.  Allocate the
1642         necessary memory for the string.
1643         (alloc_scalar_allocatable_for_assignment): Same change as in
1644         gfc_alloc_allocatable_for_assignment above.
1645         * trans-stmt.c (gfc_trans_allocate): Likewise.
1646         * trans-intrinsic (size_of_string_in_bytes): Make non-static.
1647         * trans-types.c (gfc_get_derived_type): Set the tree type for
1648         a deferred character length component.
1649         * trans.c (gfc_deferred_strlen): New function.
1650         * trans.h (size_of_string_in_bytes,gfc_deferred_strlen): New prototypes.
1652 2014-03-01  Mikael Morin  <mikael@gcc.gnu.org>
1654         PR fortran/60341
1655         * frontend-passes.c (optimize_comparison): Guard two union accesses
1656         with the corresponding tag checks.
1658 2014-02-28  Janus Weil  <janus@gcc.gnu.org>
1660         PR fortran/60359
1661         * class.c (find_intrinsic_vtab): Prevent duplicate creation of copy
1662         procedure for characters.
1664 2014-02-21  Janus Weil  <janus@gcc.gnu.org>
1666         PR fortran/60302
1667         * check.c (gfc_check_c_f_pointer): Only clear 'size' if 'gfc_array_size'
1668         is successful.
1670 2014-02-21  Janus Weil  <janus@gcc.gnu.org>
1672         PR fortran/60234
1673         * gfortran.h (gfc_build_class_symbol): Removed argument.
1674         * class.c (gfc_add_component_ref): Fix up missing vtype if necessary.
1675         (gfc_build_class_symbol): Remove argument 'delayed_vtab'. vtab is always
1676         delayed now, except for unlimited polymorphics.
1677         (comp_is_finalizable): Procedure pointer components are not finalizable.
1678         * decl. (build_sym, build_struct, attr_decl1): Removed argument of
1679         'gfc_build_class_symbol'.
1680         * match.c (copy_ts_from_selector_to_associate, select_type_set_tmp):
1681         Ditto.
1682         * symbol.c (gfc_set_default_type): Ditto.
1684 2014-02-19  Janus Weil  <janus@gcc.gnu.org>
1686         PR fortran/60232
1687         * expr.c (gfc_get_variable_expr): Don't add REF_ARRAY for dimensionful
1688         functions, which are used as procedure pointer target.
1690 2014-02-18  Tobias Burnus  <burnus@net-b.de>
1692         PR fortran/49397
1693         * expr.c (gfc_check_pointer_assign): Add check for
1694         F2008Cor2, C729.
1695         * trans-decl.c (gfc_get_symbol_decl): Correctly generate external
1696         decl in a corner case.
1698 2014-02-18  Janus Weil  <janus@gcc.gnu.org>
1700         PR fortran/60231
1701         * resolve.c (check_generic_tbp_ambiguity): Check for presence of dummy
1702         arguments to prevent ICE.
1704 2014-02-17  Janus Weil  <janus@gcc.gnu.org>
1706         PR fortran/55907
1707         * resolve.c (build_default_init_expr): Don't initialize character
1708         variable if -fno-automatic is given.
1710 2014-02-15  Mikael Morin  <mikael@gcc.gnu.org>
1712         PR fortran/59599
1713         * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Calculate the
1714         number of arguments.
1716 2014-02-11  Jakub Jelinek  <jakub@redhat.com>
1718         PR fortran/52370
1719         * trans-decl.c (gfc_build_dummy_array_decl): Set TREE_NO_WARNING
1720         on decl if sym->attr.optional.
1722 2014-02-09  Paul Thomas  <pault@gcc.gnu.org>
1724         PR fortran/57522
1725         * resolve.c (resolve_assoc_var): Set the subref_array_pointer
1726         attribute for the 'associate-name' if necessary.
1727         * trans-stmt.c (trans_associate_var): If the 'associate-name'
1728         is a subref_array_pointer, assign the element size of the
1729         associate variable to 'span'.
1731 2014-02-09  Paul Thomas  <pault@gcc.gnu.org>
1733         PR fortran/59026
1734         * trans-expr.c (gfc_conv_procedure_call): Pass the value of the
1735         actual argument to a formal argument with the value attribute
1736         in an elemental procedure.
1738 2014-02-08  Janus Weil  <janus@gcc.gnu.org>
1739             Mikael Morin <mikael.morin@gcc.gnu.org>
1741         PR fortran/58470
1742         * class.c (generate_finalization_wrapper): Assert that proc_tree has
1743         been set in gfc_resolve_finalizers.
1744         * resolve.c (resolve_fl_derived0): Remove unnecessary call to
1745         gfc_is_finalizable.
1747 2014-02-07  Benno Schulenberg  <bensberg@justemail.net>
1749         PR translation/52289
1750         * fortran/resolve.c (resolve_ordinary_assign): Fix typoed word
1751         in an error message.
1753 2014-02-02  Mikael Morin  <mikael@gcc.gnu.org>
1755         PR fortran/57033
1756         * primary.c (gfc_convert_to_structure_constructor): Avoid null pointer
1757         dereference.
1759 2014-02-01  Paul Thomas  <pault@gcc.gnu.org>
1761         PR fortran/59906
1762         * trans-stmt.c (gfc_add_loop_ss_code): In the case of character
1763         SS_REFERENCE, use gfc_conv_string_parameter to ensure that a
1764         pointer to the string is stored.
1765         * trans-expr.c (gfc_conv_expr_reference): Likewise, use
1766         gfc_conv_string_parameter to ensure that a pointer to is passed
1767         to the elemental function.
1769 2014-01-28  Paul Thomas  <pault@gcc.gnu.org>
1771         PR fortran/59414
1772         * trans-stmt.c (gfc_trans_allocate): Before the pointer
1773         assignment to transfer the source _vptr to a class allocate
1774         expression, the final class reference should be exposed. The
1775         tail that includes the _data and array references is stored.
1776         This reduced expression is transferred to 'lhs' and the _vptr
1777         added. Then the tail is restored to the allocate expression.
1779 2014-01-26  Mikael Morin  <mikael@gcc.gnu.org>
1781         PR fortran/58007
1782         * module.c (read_module): Assert for component name correctness.
1784 2014-01-18  Mikael Morin  <mikael@gcc.gnu.org>
1786         PR fortran/58007
1787         * module.c (MOD_VERSION): Bump.
1788         (fp2, find_pointer2): Remove.
1789         (mio_component_ref): Don't forcedfully set the containing derived type
1790         symbol for loading.  Remove unused argument.
1791         (mio_ref): Update caller
1792         (mio_symbol): Dump component list earlier.
1793         (skip_list): New argument nest_level.  Initialize level with the new
1794         argument.
1795         (read_module): Add forced pointer components association for derived
1796         type symbols.
1798 2014-01-12  Janus Weil  <janus@gcc.gnu.org>
1800         PR fortran/58026
1801         * decl.c (gfc_match_data_decl): Improve error recovery.
1803 2014-01-09  Tobias Burnus  <burnus@net-b.de>
1805         * cpp.c (gfc_cpp_handle_option): Add missing break.
1806         * trans-io.c (transfer_expr): Silence unused value warning.
1808 2014-01-08  Janus Weil  <janus@gcc.gnu.org>
1810         PR fortran/58182
1811         * resolve.c (gfc_verify_binding_labels): Modify order of checks.
1813 2014-01-06  Janus Weil  <janus@gcc.gnu.org>
1815         PR fortran/59589
1816         * class.c (comp_is_finalizable): New function to dermine if a given
1817         component is finalizable.
1818         (finalize_component, generate_finalization_wrapper): Use it.
1820 2014-01-06  Janus Weil  <janus@gcc.gnu.org>
1822         PR fortran/59023
1823         PR fortran/59662
1824         * resolve.c (resolve_global_procedure): Don't apply to c-binding
1825         procedures.
1826         (gfc_verify_binding_labels): Remove duplicate line.
1828 2014-01-04  Janus Weil  <janus@gcc.gnu.org>
1830         PR fortran/59547
1831         * class.c (add_proc_comp): Copy pure attribute.
1833 2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>
1835         Update copyright years
1837 2014-01-02  Tobias Burnus  <burnus@net-b.de>
1839         * gfortranspec.c (lang_specific_driver): Update copyright notice
1840         dates.
1841         * gfc-internals.texi: Bump @copying's copyright year.
1842         * gfortran.texi: Ditto.
1843         * intrinsic.texi: Ditto.
1844         * invoke.texi: Ditto.
1846 2014-01-02  Janus Weil  <janus@gcc.gnu.org>
1848         PR fortran/59654
1849         * resolve.c (resolve_typebound_procedures): No need to create the vtab
1850         here.
1852 Copyright (C) 2014 Free Software Foundation, Inc.
1854 Copying and distribution of this file, with or without modification,
1855 are permitted in any medium without royalty provided the copyright
1856 notice and this notice are preserved.