trans-decl.c (gfc_generate_function_code): Call cgraph_create_node instead of cgraph_...
[platform/upstream/gcc.git] / gcc / fortran / ChangeLog
1 2011-04-19  Martin Jambor  <mjambor@suse.cz>
2
3         * trans-decl.c (gfc_generate_function_code): Call cgraph_create_node
4         instead of cgraph_get_create_node.
5
6 2011-04-18  Jim Meyering  <meyering@redhat.com>
7
8         remove now-unused definition of gfc_free
9         * misc.c (gfc_free): Remove function.
10         * gfortran.h (gfc_free): Remove its prototype.
11
12 2011-04-18  Jim Meyering  <meyering@redhat.com>
13
14         convert each use of gfc_free (p) to free (p)
15         Do that by running this command:
16           perl -pi -e    's/\bgfc_free ?\(/free (/' \
17             $(git grep -El '\bgfc_free ?\(')
18         which also corrects the few uses that lacked a space between
19         the function name and the open parenthesis.
20         Manually undo the change to the function definition itself
21         and its prototype.  They'll be removed next.
22         * array.c (gfc_free_array_spec, gfc_set_array_spec): s/gfc_free/free/
23         * constructor.c (node_free): Likewise.
24         * cpp.c (dump_queued_macros): Likewise.
25         * data.c (gfc_assign_data_value): Likewise.
26         * decl.c (free_variable, free_value, gfc_free_data): Likewise.
27         (gfc_free_data_all, match_old_style_init): Likewise.
28         (gfc_set_constant_character_len, gfc_free_enum_history, NUM_DECL):
29         Likewise.
30         (gfc_match_modproc): Likewise.
31         * dependency.c (check_section_vs_section): Likewise.
32         * error.c (gfc_pop_error, gfc_free_error): Likewise.
33         * expr.c (free_expr0, gfc_free_expr, gfc_free_actual_arglist): Likewise.
34         (gfc_free_ref_list, gfc_replace_expr, gfc_copy_ref): Likewise.
35         (find_substring_ref, gfc_simplify_expr, gfc_check_assign_symbol):
36         Likewise.
37         * frontend-passes.c (gfc_run_passes, cfe_expr_0): Likewise.
38         (strip_function_call, optimize_comparison): Likewise.
39         * interface.c (gfc_free_interface, arginfo, check_interface0): Likewise.
40         (CHECK_OS_COMPARISON, gfc_extend_assign, gfc_free_formal_arglist):
41         Likewise.
42         * intrinsic.c (gfc_intrinsic_done_1, gfc_convert_type_warn): Likewise.
43         (gfc_convert_chartype): Likewise.
44         * io.c (gfc_free_open, compare_to_allowed_values, gfc_free_close):
45         Likewise.
46         (gfc_free_filepos, gfc_free_dt, gfc_free_inquire): Likewise.
47         * match.c (gfc_free_iterator, gfc_match_associate): Likewise.
48         (gfc_free_alloc_list, gfc_free_namelist, gfc_free_equiv_until):
49         Likewise.
50         (free_case, gfc_free_forall_iterator): Likewise.
51         * misc.c: Likewise.
52         * module.c (free_pi_tree, resolve_fixups, free_rename): Likewise.
53         (free_true_name, peek_atom, mio_allocated_wide_string): Likewise.
54         (mio_pool_string, mio_internal_string, mio_gmp_integer): Likewise.
55         (mio_gmp_real, mio_expr, mio_typebound_proc): Likewise.
56         (mio_full_typebound_tree, skip_list, load_equiv): Likewise.
57         (free_written_common, gfc_use_module, gfc_free_use_stmts): Likewise.
58         * openmp.c (gfc_free_omp_clauses): Likewise.
59         * options.c (gfc_post_options): Likewise.
60         * parse.c (select_type_pop, parse_omp_structured_block): Likewise.
61         * primary.c (gfc_free_structure_ctor_component): Likewise.
62         * resolve.c (resolve_structure_cons, check_host_association): Likewise.
63         (gfc_resolve_forall, resolve_equivalence): Likewise.
64         * scanner.c (gfc_scanner_done_1, gfc_release_include_path): Likewise.
65         (gfc_define_undef_line, preprocessor_line, include_line): Likewise.
66         (load_file, gfc_read_orig_filename): Likewise.
67         * simplify.c (simplify_transformation_to_array): Likewise.
68         (gfc_simplify_ibits, simplify_shift, gfc_simplify_ishftc, STRING):
69         Likewise.
70         (gfc_simplify_compiler_options): Likewise.
71         * st.c (gfc_free_statement, gfc_free_statements): Likewise.
72         (gfc_free_association_list): Likewise.
73         * symbol.c (free_components, gfc_free_st_label, free_st_labels):
74         Likewise.
75         (gfc_delete_symtree, gfc_free_symbol, gfc_undo_symbols): Likewise.
76         (free_old_symbol, gfc_commit_symbols, free_tb_tree): Likewise.
77         (free_common_tree, free_uop_tree, free_sym_tree): Likewise.
78         (gfc_free_dt_list, gfc_free_equiv_infos, gfc_free_equiv_lists):
79         Likewise.
80         (gfc_free_finalizer, gfc_free_charlen, free_entry_list): Likewise.
81         (gfc_free_namespace): Likewise.
82         * trans-array.c (gfc_free_ss, gfc_trans_array_bound_check): Likewise.
83         (gfc_conv_array_ref, gfc_conv_ss_startstride): Likewise.
84         (gfc_trans_dummy_array_bias, gfc_conv_array_parameter): Likewise.
85         * trans-common.c (get_init_field, create_common): Likewise.
86         * trans-const.c (gfc_build_wide_string_const): Likewise.
87         (gfc_conv_string_init): Likewise.
88         * trans-decl.c (gfc_generate_function_code): Likewise.
89         * trans-expr.c (gfc_conv_substring, gfc_free_interface_mapping):
90         Likewise.
91         (SCALAR_POINTER, gfc_conv_statement_function): Likewise.
92         (gfc_trans_subarray_assign): Likewise.
93         * trans-intrinsic.c (conv_generic_with_optional_char_arg): Likewise.
94         * trans-io.c (gfc_trans_io_runtime_check, set_string): Likewise.
95         (transfer_namelist_element, transfer_array_component): Likewise.
96         * trans-openmp.c (gfc_trans_omp_array_reduction): Likewise.
97         * trans-stmt.c (cleanup_forall_symtrees, gfc_trans_forall_1): Likewise.
98         * trans.c (trans_runtime_error_vararg, gfc_restore_backend_locus):
99         Likewise.
100
101 2011-04-15  Jim Meyering  <meyering@redhat.com>
102
103         gfortran: remove cpp definition of free, ...
104         in preparation for the s/gfc_free/free/ transformation.
105         * gfortran.h (free): Remove macro definition that would otherwise
106         prevent direct use of the function.
107
108 2011-04-18  Tobias Burnus  <burnus@net-b.de>
109
110         PR fortran/18918
111         * array.c (gfc_match_array_ref): Check for too many codimensions.
112         * check.c (gfc_check_image_index): Check number of elements
113         in SUB argument.
114         * simplify.c (gfc_simplify_image_index): Remove unreachable checks.
115
116 2011-04-18  Tobias Burnus  <burnus@net-b.de>
117
118         PR fortran/18918
119         * iresolve.c (gfc_resolve_image_index): Set ts.type.
120         * simplify.c (gfc_simplify_image_index): Don't abort if the bounds
121         are not known at compile time and handle -fcoarray=lib.
122         * trans-intrinsics.c (gfc_conv_intrinsic_function): Handle
123         IMAGE_INDEX.
124         (conv_intrinsic_cobound): Fix comment typo.
125         (trans_this_image): New function.
126         * trans-array.c (gfc_unlikely): Move to trans.c.
127         * trans.c (gfc_unlikely): Function moved from trans-array.c.
128         (gfc_trans_runtime_check): Use it.
129         * trans-io.c (gfc_trans_io_runtime_check): Ditto.
130         * trans.h (gfc_unlikely): Add prototype.
131
132 2011-04-18  Paul Thomas  <pault@gcc.gnu.org>
133
134         PR fortran/48462
135         * trans-expr.c (fcncall_realloc_result): Renamed version of
136         realloc_lhs_bounds_for_intrinsic_call that does not touch the
137         descriptor bounds anymore but makes a temporary descriptor to
138         hold the result.
139         (gfc_trans_arrayfunc_assign): Modify the reference to above
140         renamed function.
141
142 2011-05-17  Tobias Burnus  <burnus@net-b.de>
143
144         PR fortran/48624
145         * trans-decl.c (gfc_get_extern_function_decl): Fix decl
146         for external procedures with proc arguments.
147
148 2011-04-15  Michael Matz  <matz@suse.de>
149
150         * trans-array.c (toplevel): Include gimple.h.
151         (gfc_trans_allocate_array_storage): Check flag_stack_arrays,
152         properly expand variable length arrays.
153         (gfc_trans_auto_array_allocation): If flag_stack_arrays create
154         variable length decls and associate them with their scope.
155         * gfortran.h (gfc_option_t): Add flag_stack_arrays member.
156         * options.c (gfc_init_options): Handle -fstack_arrays option.
157         * lang.opt (fstack-arrays): Add option.
158         * invoke.texi (Code Gen Options): Document it.
159         * Make-lang.in (trans-array.o): Depend on GIMPLE_H.
160
161 2011-04-15  Tobias Burnus  <burnus@net-b.de>
162
163         PR fortran/18918
164         * trans-intrinsic.c (conv_intrinsic_cobound): Remove unused
165         code which is also causing an ICE.
166
167 2011-04-14  Nathan Froyd  <froydnj@codesourcery.com>
168
169         * f95-lang.c (poplevel): Use BLOCK_CHAIN and block_chainon.
170
171 2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>
172
173         * f95-lang.c (union lang_tree_node): Check for TS_COMMON before
174         calling TREE_CHAIN.
175
176 2011-04-12  Paul Thomas  <pault@gcc.gnu.org>
177
178         PR fortran/48360
179         PR fortran/48456
180         * trans-array.c (get_std_lbound): For derived type variables
181         return array valued component lbound.
182
183 2011-04-12  Martin Jambor  <mjambor@suse.cz>
184
185         * trans-decl.c (gfc_generate_function_code): Call
186         cgraph_get_create_node instead of cgraph_node.
187
188 2011-04-11  Tobias Burnus  <burnus@net-b.de>
189
190         PR fortran/18918
191         * simplify.c (simplify_bound_dim): Exit for
192         ucobound's last dimension unless -fcoarray=single.
193         * trans-array (gfc_conv_descriptor_size_1): Renamed from
194         gfc_conv_descriptor_size, made static, has now from_dim and
195         to_dim arguments.
196         (gfc_conv_descriptor_size): Call gfc_conv_descriptor_size.
197         (gfc_conv_descriptor_cosize): New function.
198         * trans-array.h (gfc_conv_descriptor_cosize): New prototype.
199         * trans-intrinsic.c (conv_intrinsic_cobound): Add input_location
200         and handle last codim of ucobound for when -fcoarray is not "single".
201
202 2011-04-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
203
204         PR fortran/48448
205         * gfortran.h (gfc_option_t):  Add warn_function_elimination and
206         flag_frontend_optimize.
207         * lang.opt (Wfunction-elimination):  Add.
208         (ffrontend-optimize):  Add.
209         * invoke.texi:  Add documentation for -Wfunction-elimination
210         and -ffrontend-optimize.  Add -faggressive-function-elimination
211         to list of code generation options.
212         * frontend-passes.c (gfc_run_passes):  Run optimizations if
213         flag_frontend_optimize is set.
214         (warn_function_elimination):  New function.
215         (cfe_expr_0):  Call it if requested to do so.
216         * options.c (gfc_init_options):  Initiate warn_function_elimination
217         and flag_frontend_optimize.
218         (gfc_post_options):  Set flag_frontend_optimize if not specified
219         by user, depending on the optimization level.
220         (gfc_handle_option):  Handle -Wfunction-elimination and
221         -ffrontend-optimize.
222
223 2011-04-06  Tobias Burnus  <burnus@net-b.de>
224
225         PR fortran/18918
226         * trans-intrinsic.c (gfc_conv_intrinsic_function): Fix
227         call for this_image.
228
229 2011-04-05  Nathan Froyd  <froydnj@codesourcery.com>
230
231         * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Use
232         build_function_type_list instead of build_function_type.  Correct
233         argument order for func_frexp and func_scalbn.
234
235 2011-04-05  Duncan Sands  <baldrick@free.fr>
236
237         * f95-lang.c (build_builtin_fntypes): Swap frexp parameter types.
238
239 2010-04-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
240
241         * frontend-passes: (optimize_lexical_comparison): New function.
242         (optimize_expr): Call it.
243         (optimize_comparison): Also handle lexical comparison functions.
244         Return false instad of -2 for unequal comparison.
245
246 2011-04-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
247
248         PR fortran/48412
249         * frontend-passes (cfe_expr_0):  Reverse the order of going
250         through the loops.
251
252 2011-04-04  Tobias Burnus  <burnus@net-b.de>
253             Mikael Morin  <mikael.morin@sfr.fr>
254
255         PR fortran/18918
256         * check.c (is_coarray): Update - because of DIMEN_THIS_IMAGE.
257         * expr.c (gfc_is_coindexed): Ditto.
258         * gfortran.h (gfc_array_ref_dimen_type): Add DIMEN_THIS_IMAGE.
259         * interface.c (compare_parameter): Use gfc_expr_attr and
260         gfc_is_coindexed.
261         * resolve.c (check_dimension, compare_spec_to_ref,
262         resolve_allocate_expr, check_data_variable): Update for
263         DIMEN_THIS_IMAGE.
264         * simplify.c (gfc_simplify_lcobound, gfc_simplify_this_image,
265         gfc_simplify_ucobound): Allow non-constant bounds.
266         * trans-array.c (gfc_set_loop_bounds_from_array_spec,
267         gfc_trans_create_temp_array, gfc_trans_constant_array_constructor,
268         gfc_set_vector_loop_bounds, gfc_conv_array_index_offset,
269         gfc_start_scalarized_body, gfc_trans_scalarizing_loops,
270         gfc_trans_scalarized_loop_boundary, gfc_conv_section_startstride,
271         gfc_conv_ss_startstride, gfc_conv_loop_setup,
272         gfc_trans_array_bounds, gfc_conv_expr_descriptor,
273         gfc_walk_variable_expr): Handle codimen.
274         * trans-decl.c (gfc_build_qualified_array): Save cobounds.
275         * trans-intrinsic.c (gfc_conv_intrinsic_bound): Use arg2.
276         (conv_intrinsic_cobound): New function.
277         (gfc_conv_intrinsic_function): Call it.
278         (gfc_walk_intrinsic_function, gfc_add_intrinsic_ss_code): Handle
279         ucobound, lcobound, this_image.
280         * fortran/trans-types.c (gfc_build_array_type): Save cobounds.
281         (gfc_get_dtype): Honour corank.
282         (gfc_get_nodesc_array_type): Save corank and codimensions.
283         (gfc_get_array_type_bounds): Save cobound.
284         * fortran/trans.h (gfc_ss_info,gfc_loopinfo): Add codimen item.
285         (gfc_array_kind): Add corank item.
286         (GFC_TYPE_ARRAY_CORANK): New macro.
287
288 2011-04-03  Kai Tietz  <ktietz@redhat.com>
289
290         PR middle-end/48422
291         * Make-lang.in (f95-lang.o): Add some missing dependencies.
292
293 2011-04-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
294
295         PR fortran/48352
296         * frontend-passes (cfe_register_funcs):  Don't
297         register functions if they appear as iterators in DO loops.
298
299 2011-03-30  Michael Matz  <matz@suse.de>
300
301         PR fortran/47516
302         * trans-expr.c (realloc_lhs_loop_for_fcn_call): Take loop as parameter,
303         don't use local variable.
304         (gfc_trans_arrayfunc_assign): Adjust caller.
305
306 2011-03-29  Janus Weil  <janus@gcc.gnu.org>
307
308         PR fortran/48095
309         * decl.c (match_procedure_decl,match_ppc_decl): Set flavor of interface.
310         * module.c (MOD_VERSION): Bump.
311         (mio_typespec): Read/write 'interface' field.
312         * primary.c (match_string_constant,match_logical_constant): Remove
313         unneeded code.
314         (match_complex_constant): Make sure to clear the typespec.
315
316 2011-03-29  Thomas Koenig  <tkoenig@gcc.gnu.org>
317
318         * frontend-passes.c (create_var):  Warn about creating an
319         array temporary if requested.
320
321 2011-03-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
322
323         PR fortran/47065
324         * frontend-passes.c (optimize_trim): Also follow references, except
325         when they are substring references or array references.
326
327 2011-03-27  Tobias Burnus  <burnus@net-b.de>
328
329         PR fortran/18918
330         * gfortran.h (gfc_isym_id): Rename GFC_ISYM_NUMIMAGES to
331         GFC_ISYM_NUM_IMAGES.
332         (gfc_fcoarray): Add GFC_FCOARRAY_LIB.
333         * intrinsic.c (add_functions): Update due to GFC_ISYM_NUM_IMAGES
334         rename.
335         * invoke.texi (-fcoarray=): Document "lib" argument.
336         * iresolve.c (gfc_resolve_this_image): Fix THIS IMAGE().
337         * libgfortran.h (libgfortran_stat_codes): Add comments.
338         * options.c (gfc_handle_coarray_option): Add -fcoarray=lib.
339         * simplify.c (gfc_simplify_num_images, gfc_simplify_this_image):
340         Handle GFC_FCOARRAY_LIB.
341         * trans.h (gfc_init_coarray_decl): New prototype.
342         (gfor_fndecl_caf_init, gfor_fndecl_caf_finalize,
343         gfor_fndecl_caf_critical, gfor_fndecl_caf_end_critical,
344         gfor_fndecl_caf_sync_all, gfor_fndecl_caf_sync_images,
345         gfor_fndecl_caf_error_stop, gfor_fndecl_caf_error_stop_str,
346         gfort_gvar_caf_num_images, gfort_gvar_caf_this_image):
347         New global variables.
348         * trans-decl.c: Declare several CAF functions (cf. above).
349         (gfc_build_builtin_function_decls): Initialize those.
350         (gfc_init_coarray_decl): New function.
351         (create_main_function): Call CAF init/finalize functions.
352         * trans-intrinsic.c (trans_this_image, trans_num_images): New.
353         (gfc_conv_intrinsic_function): Call those.
354         * trans-stmt.c (gfc_trans_stop, gfc_trans_sync, gfc_trans_critical):
355         Add code for GFC_FCOARRAY_LIB.
356
357 2011-03-26  Janus Weil  <janus@gcc.gnu.org>
358
359         PR fortran/48291
360         * class.c (get_unique_hashed_string): Adjust maximum allowable length
361         for unique type string.
362
363 2011-03-25  Kai Tietz  <ktietz@redhat.com>
364
365         * scanner.c (preprocessor_line): Use filename_cmp
366         instead of strcmp.
367
368 2011-03-25  Tobias Burnus  <burnus@net-b.de>
369
370         PR fortran/48174
371         PR fortran/45304
372         * trans-types.c (gfc_get_function_type): Don't use varargs if the
373         procedure is known to have no arguments.
374
375 2010-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>
376
377         PR fortran/22572
378         * gfortran.h (gfc_option_t) : Add
379         flag_aggressive_function_elimination.
380         (gfc_dep_compare_functions):  Add prototype.
381         * lang.opt: Add faggressive-function-elimination.
382         * invoke.texi: Document -faggressive-function-elimination.
383         * frontend_passes (expr_array):  New static variable.
384         (expr_size):  Likewise.
385         (expr_count):  Likewise.
386         (current_code):  Likewise.
387         (current_ns):  Likewise.
388         (gfc_run_passes):  Allocate and free space for expressions.
389         (cfe_register_funcs):  New function.
390         (create_var):  New function.
391         (cfc_expr_0):  New function.
392         (cfe_code):  New function.
393         (optimize_namespace):  Invoke gfc_code_walker with cfe_code
394         and cfe_expr_0.
395         * dependency.c (gfc_dep_compare_functions):  New function.
396         (gfc_dep_compare_expr):  Use it.
397         * options.c (gfc_init_options):  Handle
398         flag_aggressive_function_elimination.
399         (gfc_handle_option):  Likewise.
400
401 2011-03-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
402
403         * arith.c (arith_power): Plug memory leak.
404
405 2011-03-12  Janus Weil  <janus@gcc.gnu.org>
406
407         PR fortran/48059
408         * trans-expr.c (gfc_apply_interface_mapping_to_expr): Replace base type
409         for polymorphic arguments.
410
411 2011-03-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
412
413         PR fortran/48054
414         * intrinsic.texi: Clarify doc of logarithm functions.
415
416 2011-03-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
417
418         PR fortran/47552
419         * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Fix type of
420         the string length variable.
421
422 2011-03-11  Janus Weil  <janus@gcc.gnu.org>
423
424         PR fortran/47768
425         * module.c (ab_attribute,attr_bits): Add AB_PROC_POINTER_COMP.
426         (mio_symbol_attribute): Handle attribute 'proc_pointer_comp'.
427
428 2011-03-06  Paul Thomas  <pault@gcc.gnu.org>
429             Jerry DeLisle  <jvdelisle@gcc.gnu.org>
430
431         PR fortran/47850
432         * expr.c (gfc_is_constant_expr): Only use gfc_constant_ac if
433         the expression has an iterator.  Otherwise, iterate through the
434         array, checking for constant expressions for each element.
435
436 2011-03-04  Janne Blomqvist  <jb@gcc.gnu.org>
437
438         PR libfortran/47802
439         * intrinsic.texi: Update CTIME and FDATE documentation.
440
441 2011-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
442
443         * invoke.texi (Option Summary, Fortran Dialect Options)
444         (Preprocessing Options, Runtime Options, Code Gen Options):
445         Fix vertical list spacing by using @itemx for additinoal
446         items, empty line before @table.  Fix typos.
447
448 2011-02-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
449
450         PR fortran/47894
451         * intrinsic.texi: Fix doc of the VERIFY intrinsic.
452
453 2011-02-26  Tobias Burnus  <burnus@net-b.de>
454
455         PR fortran/47846
456         * trans-stmt.c (gfc_trans_allocate): Fix allocation with
457         type-spec of deferred-length strings.
458
459 2011-02-26  Tobias Burnus  <burnus@net-b.de>
460
461         PR fortran/47886
462         * openmp.c (gfc_resolve_omp_directive): Resolve if()
463         condition of OpenMP's task.
464
465 2011-02-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
466
467         PR fortran/47894
468         * intrinsic.texi: Fix doc of the VERIFY intrinsic.
469
470 2011-02-24  Tobias Burnus  <burnus@net-b.de>
471
472         PR fortran/47872
473         * intrinsic.texi (ALLOCATED, ATAN, BESSEL_JN, BESSEL_YN): Add
474         multitable for linebreak between different syntax variants.
475
476 2011-02-24  Richard Guenther  <rguenther@suse.de>
477
478         PR fortran/47839
479         * f95-lang.c (pushdecl): For externs in non-global scope push
480         a copy of the decl into the BLOCK.
481
482 2011-02-23  Mikael Morin  <mikael@gcc.gnu.org>
483
484         PR fortran/40850
485         * trans.c (gfc_prepend_expr_to_block): New function.
486         * trans.h (gfc_prepend_expr_to_block): Declare.
487         * trans-array.c (gfc_conv_array_parameter): Replace
488         gfc_add_expr_to_block with gfc_prepend_expr_to_block.
489
490 2011-02-22  Paul Thomas  <pault@gcc.gnu.org>
491
492         PR fortran/45743
493         * trans-decl.c (gfc_get_extern_function_decl): Don't use the
494         gsymbol backend_decl if the procedure has a formal argument
495         that is a procedure.
496
497 2011-02-22  Tobias Burnus  <burnus@net-b.de>
498
499         PR fortran/41359
500         * trans-stmt.c (gfc_trans_if_1): Use correct line for
501         expressions in the if condition.
502
503 2011-02-20  Tobias Burnus  <burnus@net-b.de>
504
505         PR fortran/47797
506         * trans-decl.c (gfc_trans_deferred_vars): Use gfc_set_backend_locus and
507         gfc_restore_backend_locus to have better debug locations.
508         * trans-array.c (gfc_trans_deferred_array): Ditto.
509
510 2011-02-20  Paul Thomas  <pault@gcc.gnu.org>
511
512         PR fortran/45077
513         PR fortran/44945
514         * trans-types.c (gfc_get_derived_type): Remove code that looks
515         for decls in gsym and add call to gfc_get_module_backend_decl.
516         * trans.h : Add prototype for gfc_get_module_backend_decl.
517         * trans-decl.c (gfc_get_module_backend_decl): New function.
518         (gfc_get_symbol_decl): Call it.
519
520 2011-02-19  Paul Thomas  <pault@gcc.gnu.org>
521
522         PR fortran/47348
523         * trans-array.c (get_array_ctor_all_strlen): Move up in file.
524         (get_array_ctor_var_strlen): Add block dummy and add call to
525         get_array_ctor_all_strlen instead of giving up on substrings.
526         Call gcc_unreachable for default case.
527         (get_array_ctor_strlen): Add extra argument to in call to
528         get_array_ctor_var_strlen.
529
530 2011-02-18  Janus Weil  <janus@gcc.gnu.org>
531
532         PR fortran/47789
533         * primary.c (gfc_match_structure_constructor): Handle empty parent
534         types.
535
536 2011-02-18  Tobias Burnus
537
538         PR fortran/47775
539         * trans-expr.c (arrayfunc_assign_needs_temporary): Use
540         esym to check whether the specific procedure returns an
541         allocatable or pointer.
542
543 2011-02-18  Michael Matz  <matz@suse.de>
544
545         PR fortran/45586
546         * gfortran.h (struct gfc_component): Add norestrict_decl member.
547         * trans.h (struct lang_type): Add nonrestricted_type member.
548         * trans-expr.c (gfc_conv_component_ref): Search fields with correct
549         parent type.
550         * trans-types.c (mirror_fields, gfc_nonrestricted_type): New.
551         (gfc_sym_type): Use it.
552
553 2011-02-18  Janus Weil  <janus@gcc.gnu.org>
554
555         PR fortran/47768
556         * resolve.c (resolve_transfer): Reject variables with procedure pointer
557         components.
558
559 2011-02-18  Janus Weil  <janus@gcc.gnu.org>
560
561         PR fortran/47767
562         * gfortran.h (gfc_check_access): Removed prototype.
563         (gfc_check_symbol_access): Added prototype.
564         * module.c (gfc_check_access): Renamed to 'check_access', made static.
565         (gfc_check_symbol_access): New function, basically a shortcut for
566         'check_access'.
567         (write_dt_extensions,write_symbol0,write_generic,write_symtree): Use
568         'gfc_check_symbol_access'.
569         (write_operator,write_module): Renamed 'gfc_check_access'.
570         * resolve.c (resolve_fl_procedure,resolve_fl_derived,
571         resolve_fl_namelist,resolve_symbol,resolve_fntype): Use
572         'gfc_check_symbol_access'.
573
574 2011-02-16  Janus Weil  <janus@gcc.gnu.org>
575
576         PR fortran/47745
577         * class.c (gfc_build_class_symbol): Set 'class_ok' attribute.
578         * decl.c (build_sym,attr_decl1): Move setting of 'class_ok' into
579         'gfc_build_class_symbol'.
580         (gfc_match_decl_type_spec): Reject unlimited polymorphism.
581         * interface.c (matching_typebound_op): Check for 'class_ok' attribute.
582         * match.c (select_type_set_tmp): Move setting of 'class_ok' into
583         'gfc_build_class_symbol'.
584         * primary.c (gfc_variable_attr): Check for 'class_ok' attribute.
585
586 2011-02-15  Steven G. Kargl  <kargl@gcc.gnu.org>
587
588         PR fortran/47633
589         . simplify.c (gfc_simplify_compiler_version): Fix off-by-one issue.
590
591 2011-02-14  Janus Weil  <janus@gcc.gnu.org>
592
593         PR fortran/47730
594         * parse.c (gfc_build_block_ns): Commit 'block@' symbol.
595
596 2011-02-14  Janus Weil  <janus@gcc.gnu.org>
597
598         PR fortran/47728
599         * class.c (gfc_build_class_symbol): Give a fatal error on polymorphic
600         arrays.
601         * primary.c (gfc_match_varspec): Avoid ICE for invalid class
602         declaration.
603
604 2011-02-14  Janus Weil  <janus@gcc.gnu.org>
605
606         PR fortran/47349
607         * interface.c (get_expr_storage_size): Handle derived-type components.
608
609 2011-02-13  Tobias Burnus  <burnus@net-b.de>
610
611         PR fortran/47569
612         * interface.c (compare_parameter): Avoid ICE with
613         character components.
614
615 2011-02-12  Janus Weil  <janus@gcc.gnu.org>
616
617         * class.c (gfc_build_class_symbol): Reject polymorphic arrays.
618         * decl.c (build_sym,build_struct,attr_decl1): Use return value of
619         'gfc_build_class_symbol'.
620
621 2011-02-12  Michael Matz  <matz@suse.de>
622             Janus Weil  <janus@gcc.gnu.org>
623             Tobias Burnus  <burnus@net-b.de>
624
625         PR fortran/45586
626         * trans-expr.c (conv_parent_component_references): Avoid unintendent
627         skipping of parent compounds.
628
629 2011-02-11  Tobias Burnus  <burnus@net-b.de>
630
631         PR fortran/47550
632         * resolve.c (resolve_formal_arglist): PURE with VALUE
633         and no INTENT: Add -std= diagnostics.
634
635 2011-02-09  Janus Weil  <janus@gcc.gnu.org>
636
637         PR fortran/47352
638         * resolve.c (resolve_procedure_interface): If interface has a result
639         variable, copy the typespec and set result pointer to self.
640
641 2011-02-09  Janus Weil  <janus@gcc.gnu.org>
642
643         PR fortran/47463
644         * resolve.c (resolve_typebound_subroutine): Remove erroneous line.
645
646 2011-02-09  Janus Weil  <janus@gcc.gnu.org>
647
648         PR fortran/47637
649         * trans-decl.c (init_intent_out_dt): Handle CLASS arguments.
650
651 2011-02-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
652
653         * io.c (match_io_element): Do not set dt if not inquire.
654
655 2011-02-08  Janus Weil  <janus@gcc.gnu.org>
656
657         PR fortran/45290
658         * expr.c (gfc_check_assign_symbol): Reject pointers as pointer
659         initialization target.
660
661 2011-02-07  Janne Blomqvist  <jb@gcc.gnu.org>
662             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
663
664         * gfortran.texi (Thread-safety): texinfo styling fixes.
665         * intrinsic.texi: Likewise.
666
667 2011-02-06  Janne Blomqvist  <jb@gcc.gnu.org>
668
669         * gfortran.texi (Compiler Characteristics): Add reference to
670         thread-safety section.
671
672 2011-02-06  Janne Blomqvist  <jb@gcc.gnu.org>
673
674         * gfortran.texi (Thread-safety): New section.
675         * intrinsic.texi (EXECUTE_COMMAND_LINE): Mention thread-safety.
676         (GETENV): Likewise.
677         (GET_ENVIRONMENT_VARIABLE): Likewise.
678         (SYSTEM): Likewise.
679
680 2011-02-06  Paul Thomas  <pault@gcc.gnu.org>
681
682         PR fortran/47592
683         * trans-stmt.c (gfc_trans_allocate): For deferred character
684         length allocations with SOURCE, store to the values and string
685         length to avoid calculating twice.  Replace gfc_start_block
686         with gfc_init_block to avoid unnecessary contexts and to keep
687         declarations of temporaries where they should be. Tidy up the
688         code a bit.
689
690 2011-02-05  Janne Blomqvist  <jb@gcc.gnu.org>
691
692         PR fortran/42434
693         * intrinsic.texi (SYSTEM_CLOCK): Update documentation.
694
695 2011-02-02  Janus Weil  <janus@gcc.gnu.org>
696             Paul Thomas  <pault@gcc.gnu.org>
697
698         PR fortran/47082
699         * trans-expr.c (gfc_trans_class_init_assign): Add call to
700         gfc_get_derived_type.
701         * module.c (read_cleanup): Do not use unique_symtrees for vtabs
702         or vtypes.
703
704 2011-02-02  Janus Weil  <janus@gcc.gnu.org>
705
706         PR fortran/47572
707         * resolve.c (resolve_fl_variable): Handle polymorphic allocatables.
708
709 2011-02-01  Janus Weil  <janus@gcc.gnu.org>
710
711         PR fortran/47565
712         * trans-expr.c (gfc_conv_structure): Handle constructors for procedure
713         pointer components with allocatable result.
714
715 2011-01-31  Janus Weil  <janus@gcc.gnu.org>
716
717         PR fortran/47455
718         * trans-expr.c (gfc_conv_procedure_call): Handle procedure pointers
719         with pointer or allocatable result.
720
721 2011-01-31  Paul Thomas  <pault@gcc.gnu.org>
722
723         PR fortran/47519
724         * trans-stmt.c (gfc_trans_allocate): Improve handling of
725         deferred character lengths with SOURCE.
726         * iresolve.c (gfc_resolve_repeat): Calculate character
727         length from source length and ncopies.
728         * dump-parse-tree.c (show_code_node): Show MOLD and SOURCE
729         expressions for ALLOCATE.
730
731 2011-01-31  Janus Weil  <janus@gcc.gnu.org>
732
733         PR fortran/47463
734         * resolve.c (resolve_typebound_subroutine): Bug fix for the case of
735         an argument of a typebound assignment being a component.
736
737 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
738
739         * gfortranspec.c (add_arg_libgfortran) [HAVE_LD_STATIC_DYNAMIC] Use
740         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
741
742 2011-01-31  Tobias Burnus  <burnus@net-b.de>
743
744         PR fortran/47042
745         * resolve.c (resolve_fl_procedure): Reject stmt functions
746         with pointer/allocatable attribute.
747
748 2011-01-31  Tobias Burnus  <burnus@net-b.de>
749
750         PR fortran/47042
751         * interface.c (gfc_procedure_use): Add explicit interface check for
752         pointer/allocatable functions.
753
754 2011-01-30  Paul Thomas  <pault@gcc.gnu.org>
755
756         PR fortran/47523
757         * trans-expr.c (gfc_trans_assignment_1): If the rhs is an op
758         expr and is assigned to a deferred character length scalar,
759         make sure that the function is called before reallocation,
760         so that the length is available. Include procedure pointer
761         and procedure pointer component rhs as well.
762
763         PR fortran/45170
764         PR fortran/35810
765         PR fortran/47350
766         * gfortran.dg/allocatable_function_5.f90: New test not added by
767         mistake on 2011-01-28.
768
769 2011-01-29  Tobias Burnus  <burnus@net-b.de>
770
771         PR fortran/47531
772         * check.c (gfc_check_shape): Support kind argument in SHAPE.
773         * intrinsic.c (add_functions): Ditto.
774         * resolve.c (gfc_resolve_shape): Ditto.
775         * simplify.c (gfc_simplify_shape): Ditto.
776         * intrinsic.h (gfc_check_shape, gfc_resolve_shape,
777         gfc_simplify_shape): Update prototypes.
778         * intrinisc.text (SHAPE): Document kind argument.
779
780 2011-01-28  Tobias Burnus  <burnus@net-b.de>
781
782         PR fortran/47507
783         * resolve.c (resolve_formal_arglist): Allow arguments with VALUE
784         attribute also without INTENT.
785
786 2011-01-28  Tobias Burnus  <burnus@net-b.de>
787
788         * gfortran.texi (Fortran 2003 status): Mention support for
789         nonconstant namelist variables.
790
791 2011-01-28  Paul Thomas  <pault@gcc.gnu.org>
792             Tobias Burnus  <burnus@gcc.gnu.org>
793
794         PR fortran/45170
795         PR fortran/35810
796         PR fortran/47350
797         * interface.c (compare_actual_formal): An allocatable or pointer
798         deferred length actual is only allowed if the formal argument
799         is also deferred length. Clean up whitespace.
800         * trans-expr.c (gfc_conv_procedure_call): Pass string length for
801         deferred character length formal arguments by reference. Do the
802         same for function results.
803         (gfc_trans_pointer_assignment): Do not do runtime check of lhs
804         and rhs character lengths, if deferred length lhs.  In this case
805         set the lhs character length to that of the rhs.
806         (gfc_conv_string_parameter): Remove assert that string length is
807         an integer type.
808         (is_scalar_reallocatable_lhs): New function.
809         (alloc_scalar_allocatable_for_assignment): New function.
810         (gfc_trans_assignment_1): Call above new function. If the rhs is
811         a deferred character length itself, makes ure that the function
812         is called before reallocation, so that the length is available.
813         (gfc_trans_asssignment): Remove error about assignment to
814         deferred length character variables.
815         * gfortran.texi : Update entry about (re)allocation on
816         assignment.
817         * trans-stmt.c (gfc_trans_allocate): Add code to handle deferred
818         length character variables.
819         * module.c (mio_typespec): Transfer deferred characteristic.
820         * trans-types.c (gfc_get_function_type): New code to generate
821         hidden typelist, so that those character lengths that are
822         passed by reference get the right type.
823         * resolve.c (resolve_contained_fntype): Supress error for
824         deferred character length functions.
825         (resolve_function, resolve_fl_procedure) The same.
826         (check_symbols): Remove the error that support for
827         entity with deferred type parameter is not yet implemented.
828         (resolve_fl_derived): The same.
829         match.c (alloc_opt_list): Allow MOLD for deferred length object.
830         * trans-decl.c (gfc_get_symbol_decl): For deferred character
831         length dummies, generate a local variable for string length.
832         (create_function_arglist): Hidden length can be a pointer.
833         (gfc_trans_deferred_vars): For deferred character length
834         results and dummies, assign the string length to the local
835         variable from the hidden argument on entry and the other way
836         round on exit, as appropriate.
837
838 2011-01-27  Tobias Burnus  <burnus@net-b.de>
839
840         PR fortran/47474
841         * trans-decl.c (gfc_generate_function_code): Fix init
842         of allocatable result variable with allocatable components.
843
844 2011-01-27  Tobias Burnus  <burnus@net-b.de>
845
846         PR fortran/47472
847         * options.c (gfc_handle_module_path_options): Save
848         module path without trailing slash as include path.
849
850 2011-01-25  Tobias Burnus  <burnus@net-b.de>
851
852         PR fortran/47448
853         * interface.c (gfc_check_operator_interface): Fix
854         defined-assignment check.
855
856 2011-01-23  Tobias Burnus  <burnus@net-b.de>
857
858         PR fortran/47421
859         * trans-decl.c (gfc_trans_deferred_vars): Do not nullify
860         scalar allocatable dummy arguments.
861
862 2011-01-22  Thomas Koenig  <tkoenig@gcc.gnu.org>
863
864         PR fortran/38536
865         * resolve.c (gfc_iso_c_func_interface):  For C_LOC,
866         check for array sections followed by component references
867         which are illegal.  Also check for coindexed arguments.
868
869 2011-01-22  Tobias Burnus  <burnus@net-b.de>
870
871         PR fortran/47399
872         * primary.c (gfc_match_varspec): Relax gcc_assert to allow for
873         PARAMETER TBP.
874
875 2011-01-21  Tobias Burnus  <burnus@net-b.de>
876
877         PR fortran/47394
878         * error.c (gfc_error_now, gfc_fatal_error, gfc_error_check):
879         Use defined instead of magic number exit status codes.
880         * scanner.c (include_line, gfc_new_file): Ditto.
881
882 2011-01-21  Tobias Burnus  <burnus@net-b.de>
883
884         PR fortran/47377
885         * expr.c (gfc_check_pointer_assign): Reject expr data-targets
886         without pointer attribute.
887
888 2011-01-18  Janus Weil  <janus@gcc.gnu.org>
889
890         PR fortran/47240
891         * resolve.c (expression_rank): Fix rank of procedure poiner components.
892         * trans-expr.c (gfc_conv_procedure_call): Take care of procedure
893         pointer components as actual arguments.
894
895 2011-01-17  Jakub Jelinek  <jakub@redhat.com>
896
897         PR fortran/47331
898         * gfortran.h (struct gfc_omp_saved_state): New type.
899         (gfc_omp_save_and_clear_state, gfc_omp_restore_state): New prototypes.
900         * resolve.c (resolve_global_procedure): Call it around gfc_resolve
901         call.
902         * openmp.c (gfc_omp_save_and_clear_state, gfc_omp_restore_state): New
903         functions.
904
905 2011-01-17  Tobias Burnus  <burnus@net-b.de>
906
907         PR fortran/47327
908         * invoke.texi (Options to request or suppress errors
909         and warnings): Fix cross link.
910
911 2011-01-15  Tobias Burnus  <burnus@net-b.de>
912
913         * gfortran.texi: Update Fortran 2003 Status section.
914
915         PR fortran/47177
916         * invoke.texi: Add missing "-E" to the -dM example.
917
918 2011-01-13  Tobias Burnus  <burnus@net-b.de>
919
920         PR fortran/47268
921         * intrinsic.texi (get_command_argument, get_environment_variable):
922         Mark arguments as optional in the Arguments section.
923
924 2011-01-13  Kai Tietz  <kai.tietz@onevision.com>
925             Tobias Burnus  <burnus@net-b.de>
926
927         PR fortran/47260
928         * trans-decl.c (gfc_get_extern_function_decl,
929         build_function_decl): Set TREE_PUBLIC/TREE_EXTERNAL before
930         calling decl_attributes.
931
932 2011-01-13  Tobias Burnus  <burnus@net-b.de>
933             Mikael Morin  <mikael@gcc.gnu.org>
934
935         PR fortran/45848
936         PR fortran/47204
937         * gfortran.h (gfc_code): Move union ext's case_list into
938         the struct block.
939         * dump-parse-tree.c (show_code_node): Adapt by prefixing case_list
940         by "block.".
941         * frontend-passes.c (gfc_code_walker): Ditto.
942         * match.c (gfc_match_goto, gfc_match_call, gfc_match_case,
943         gfc_match_type_is, gfc_match_class_is): Ditto.
944         * resolve.c (resolve_select, resolve_select_type): Ditto.
945         * st.c (gfc_free_statement): Ditto.
946         * trans-stmt.c (gfc_trans_integer_select, gfc_trans_logical_select,
947         gfc_trans_character_select): Ditto.
948         * parse.c (resolve_all_program_units): For error recovery, avoid
949         segfault is proc_name is NULL.
950
951 2011-01-11  Paul Thomas  <pault@gcc.gnu.org>
952
953         PR fortran/47051
954         * trans-array.c (gfc_alloc_allocatable_for_assignment): Change
955         to be standard compliant by testing for shape rather than size
956         before skipping reallocation. Improve comments.
957
958 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
959
960         PR fortran/47224
961         * resolve.c (resolve_actual_arglist): Remove unneeded and buggy piece
962         of code.
963
964 2011-01-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
965
966         PR fortran/38536
967         * resolve.c (is_scalar_expr_ptr):  For a substring reference,
968         use gfc_dep_compare_expr to compare start and end expession.
969         Add FIXME for using gfc_deb_compare_expr elsewhere.
970
971 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
972
973         PR fortran/46313
974         * class.c (get_unique_type_string): Make type name start with upper
975         case letter.
976
977 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
978
979         PR fortran/46405
980         * invoke.texi:  Mention -ffree-line-length-none and
981         -ffixed-line-length-none for preprocessing.
982
983 2011-01-08  Paul Thomas  <pault@gcc.gnu.org>
984
985         PR fortran/46896
986         * trans-expr.c (gfc_conv_procedure_call): With a non-copying
987         procedure argument (eg TRANSPOSE) use a temporary if there is
988         any chance of aliasing due to host or use association.
989         (arrayfunc_assign_needs_temporary): Correct logic for function
990         results and do not use a temporary for implicitly PURE
991         variables.  Use a temporary for Cray pointees.
992         * symbol.c (gfc_add_save): Explicit SAVE not compatible with
993         implicit pureness of containing procedure.
994         * decl.c (match_old_style_init, gfc_match_data): Where decl
995         would fail in PURE procedure, set implicit_pure to zero.
996         * gfortran.h : Add implicit_pure to structure symbol_attr and
997         add prototype for function gfc_implicit_pure.
998         * expr.c (gfc_check_pointer_assign, gfc_check_vardef_context):
999         Where decl would fail in PURE procedure, reset implicit_pure.
1000         * io.c (match_vtag, gfc_match_open, gfc_match_close,
1001         gfc_match_print, gfc_match_inquire, gfc_match_wait): The same.
1002         * match.c (gfc_match_critical, gfc_match_stopcode,
1003         sync_statement, gfc_match_allocate, gfc_match_deallocate): The
1004         same.
1005         * parse.c (decode_omp_directive): The same.
1006         (parse_contained): If not PURE, set implicit pure attribute.
1007         * resolve.c (resolve_formal_arglist, resolve_structure_cons,
1008         resolve_function, resolve_ordinary_assign) : The same.
1009         (gfc_implicit_pure): New function.
1010         * module.c (mio_symbol_attribute): Introduce AB_IMPLICIT_PURE
1011         to ab_attribute enum and use it in this function.
1012
1013 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
1014
1015         PR fortran/45777
1016         * symbol.c (gfc_symbols_could_alias):  Strip gfc_ prefix,
1017         make static and move in front of its only caller, to ...
1018         * trans-array.c (symbols_could_alias): ... here.
1019         Pass information about pointer and target status as
1020         arguments.  Allocatable arrays don't alias anything
1021         unless they have the POINTER attribute.
1022         (gfc_could_be_alias):  Keep track of pointer and target
1023         status when following references.  Also check if typespecs
1024         of components match those of other components or symbols.
1025
1026 2011-01-07  Tobias Burnus  <burnus@net-b.de>
1027
1028         PR fortran/41580
1029         * class.c (gfc_build_class_symbol): Mark __vtab as attr.vtab.
1030         * intrinsic.c (add_functions): Use simplify functions for
1031         EXTENDS_TYPE_OF and SAME_TYPE_AS.
1032         * intrinsic.h (gfc_simplify_extends_type_of,
1033         gfc_simplify_same_type_as): New prototypes.
1034         * simplify.c (is_last_ref_vtab, gfc_simplify_extends_type_of,
1035         gfc_simplify_same_type_as): New functions.
1036
1037 2011-01-07  Janus Weil  <janus@gcc.gnu.org>
1038
1039         PR fortran/47189
1040         PR fortran/47194
1041         * gfortran.h (gfc_lval_expr_from_sym): Moved prototype.
1042         * class.c (gfc_class_null_initializer): Initialize _vptr to declared
1043         type.
1044         * expr.c (gfc_lval_expr_from_sym): Moved here from symbol.c.
1045         * resolve.c (resolve_deallocate_expr): _data component will be added
1046         at translation stage.
1047         * symbol.c (gfc_lval_expr_from_sym): Moved to expr.c.
1048         * trans-stmt.c (gfc_trans_deallocate): Reset _vptr to declared type.
1049
1050 2011-01-06  Daniel Franke  <franke.daniel@gmail.com>
1051
1052         PR fortran/33117
1053         PR fortran/46478
1054         * parse.c (parse_interface): Remove check for procedure types.
1055         * interface.c (check_interface0): Verify that procedures are
1056         either all SUBROUTINEs or all FUNCTIONs.
1057
1058 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
1059
1060         PR fortran/47180
1061         * trans-expr.c (gfc_trans_class_assign): Bugfix for r168524 (make sure
1062         'vtab' is initialized).
1063
1064 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
1065
1066         PR fortran/47180
1067         * trans-expr.c (gfc_trans_class_assign): For a polymorphic NULL pointer
1068         assignment, set the _vptr component to the declared type.
1069
1070 2011-01-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
1071
1072         PR fortran/46017
1073         * resolve.c (resolve_allocate_deallocate): Follow references to
1074         check for duplicate occurence of allocation/deallocation objects.
1075
1076 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
1077
1078         PR fortran/47024
1079         * trans-decl.c (gfc_trans_deferred_vars): Initialize the _vpr component
1080         of polymorphic allocatables according to their declared type.
1081
1082 2011-01-04  Janus Weil  <janus@gcc.gnu.org>
1083
1084         PR fortran/46448
1085         * class.c (gfc_find_derived_vtab): Set the module field for the copying
1086         routine to make sure it receives module name mangling.
1087
1088 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
1089
1090         * gfortranspec.c (lang_specific_driver): Update copyright notice
1091         dates.
1092
1093 2011-01-03  Janus Weil  <janus@gcc.gnu.org>
1094
1095         * intrinsic.texi (LEADZ): Fix example.
1096
1097 2011-01-02  Janus Weil  <janus@gcc.gnu.org>
1098
1099         PR fortran/46408
1100         * class.c (gfc_find_derived_vtab): Use EXEC_INIT_ASSIGN for __copy_
1101         routine.
1102
1103 \f
1104 Copyright (C) 2011 Free Software Foundation, Inc.
1105
1106 Copying and distribution of this file, with or without modification,
1107 are permitted in any medium without royalty provided the copyright
1108 notice and this notice are preserved.