re PR libfortran/47894 (Documentation text for VERIFY intrinsic function is wrong.)
[platform/upstream/gcc.git] / gcc / fortran / ChangeLog
1 2011-02-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
2
3         PR fortran/47894
4         * intrinsic.texi: Fix doc of the VERIFY intrinsic.
5
6 2011-02-24  Tobias Burnus  <burnus@net-b.de>
7
8         PR fortran/47872
9         * intrinsic.texi (ALLOCATED, ATAN, BESSEL_JN, BESSEL_YN): Add
10         multitable for linebreak between different syntax variants.
11
12 2011-02-24  Richard Guenther  <rguenther@suse.de>
13
14         PR fortran/47839
15         * f95-lang.c (pushdecl): For externs in non-global scope push
16         a copy of the decl into the BLOCK.
17
18 2011-02-23  Mikael Morin  <mikael@gcc.gnu.org>
19
20         PR fortran/40850
21         * trans.c (gfc_prepend_expr_to_block): New function.
22         * trans.h (gfc_prepend_expr_to_block): Declare.
23         * trans-array.c (gfc_conv_array_parameter): Replace
24         gfc_add_expr_to_block with gfc_prepend_expr_to_block.
25
26 2011-02-22  Paul Thomas  <pault@gcc.gnu.org>
27
28         PR fortran/45743
29         * trans-decl.c (gfc_get_extern_function_decl): Don't use the
30         gsymbol backend_decl if the procedure has a formal argument
31         that is a procedure.
32
33 2011-02-22  Tobias Burnus  <burnus@net-b.de>
34
35         PR fortran/41359
36         * trans-stmt.c (gfc_trans_if_1): Use correct line for
37         expressions in the if condition.
38
39 2011-02-20  Tobias Burnus  <burnus@net-b.de>
40
41         PR fortran/47797
42         * trans-decl.c (gfc_trans_deferred_vars): Use gfc_set_backend_locus and
43         gfc_restore_backend_locus to have better debug locations.
44         * trans-array.c (gfc_trans_deferred_array): Ditto.
45
46 2011-02-20  Paul Thomas  <pault@gcc.gnu.org>
47
48         PR fortran/45077
49         PR fortran/44945
50         * trans-types.c (gfc_get_derived_type): Remove code that looks
51         for decls in gsym and add call to gfc_get_module_backend_decl.
52         * trans.h : Add prototype for gfc_get_module_backend_decl.
53         * trans-decl.c (gfc_get_module_backend_decl): New function.
54         (gfc_get_symbol_decl): Call it.
55
56 2011-02-19  Paul Thomas  <pault@gcc.gnu.org>
57
58         PR fortran/47348
59         * trans-array.c (get_array_ctor_all_strlen): Move up in file.
60         (get_array_ctor_var_strlen): Add block dummy and add call to
61         get_array_ctor_all_strlen instead of giving up on substrings.
62         Call gcc_unreachable for default case.
63         (get_array_ctor_strlen): Add extra argument to in call to
64         get_array_ctor_var_strlen.
65
66 2011-02-18  Janus Weil  <janus@gcc.gnu.org>
67
68         PR fortran/47789
69         * primary.c (gfc_match_structure_constructor): Handle empty parent
70         types.
71
72 2011-02-18  Tobias Burnus
73
74         PR fortran/47775
75         * trans-expr.c (arrayfunc_assign_needs_temporary): Use
76         esym to check whether the specific procedure returns an
77         allocatable or pointer.
78
79 2011-02-18  Michael Matz  <matz@suse.de>
80
81         PR fortran/45586
82         * gfortran.h (struct gfc_component): Add norestrict_decl member.
83         * trans.h (struct lang_type): Add nonrestricted_type member.
84         * trans-expr.c (gfc_conv_component_ref): Search fields with correct
85         parent type.
86         * trans-types.c (mirror_fields, gfc_nonrestricted_type): New.
87         (gfc_sym_type): Use it.
88
89 2011-02-18  Janus Weil  <janus@gcc.gnu.org>
90
91         PR fortran/47768
92         * resolve.c (resolve_transfer): Reject variables with procedure pointer
93         components.
94
95 2011-02-18  Janus Weil  <janus@gcc.gnu.org>
96
97         PR fortran/47767
98         * gfortran.h (gfc_check_access): Removed prototype.
99         (gfc_check_symbol_access): Added prototype.
100         * module.c (gfc_check_access): Renamed to 'check_access', made static.
101         (gfc_check_symbol_access): New function, basically a shortcut for
102         'check_access'.
103         (write_dt_extensions,write_symbol0,write_generic,write_symtree): Use
104         'gfc_check_symbol_access'.
105         (write_operator,write_module): Renamed 'gfc_check_access'.
106         * resolve.c (resolve_fl_procedure,resolve_fl_derived,
107         resolve_fl_namelist,resolve_symbol,resolve_fntype): Use
108         'gfc_check_symbol_access'.
109
110 2011-02-16  Janus Weil  <janus@gcc.gnu.org>
111
112         PR fortran/47745
113         * class.c (gfc_build_class_symbol): Set 'class_ok' attribute.
114         * decl.c (build_sym,attr_decl1): Move setting of 'class_ok' into
115         'gfc_build_class_symbol'.
116         (gfc_match_decl_type_spec): Reject unlimited polymorphism.
117         * interface.c (matching_typebound_op): Check for 'class_ok' attribute.
118         * match.c (select_type_set_tmp): Move setting of 'class_ok' into
119         'gfc_build_class_symbol'.
120         * primary.c (gfc_variable_attr): Check for 'class_ok' attribute.
121
122 2011-02-15  Steven G. Kargl  <kargl@gcc.gnu.org>
123
124         PR fortran/47633
125         . simplify.c (gfc_simplify_compiler_version): Fix off-by-one issue.
126
127 2011-02-14  Janus Weil  <janus@gcc.gnu.org>
128
129         PR fortran/47730
130         * parse.c (gfc_build_block_ns): Commit 'block@' symbol.
131
132 2011-02-14  Janus Weil  <janus@gcc.gnu.org>
133
134         PR fortran/47728
135         * class.c (gfc_build_class_symbol): Give a fatal error on polymorphic
136         arrays.
137         * primary.c (gfc_match_varspec): Avoid ICE for invalid class
138         declaration.
139
140 2011-02-14  Janus Weil  <janus@gcc.gnu.org>
141
142         PR fortran/47349
143         * interface.c (get_expr_storage_size): Handle derived-type components.
144
145 2011-02-13  Tobias Burnus  <burnus@net-b.de>
146
147         PR fortran/47569
148         * interface.c (compare_parameter): Avoid ICE with
149         character components.
150
151 2011-02-12  Janus Weil  <janus@gcc.gnu.org>
152
153         * class.c (gfc_build_class_symbol): Reject polymorphic arrays.
154         * decl.c (build_sym,build_struct,attr_decl1): Use return value of
155         'gfc_build_class_symbol'.
156
157 2011-02-12  Michael Matz  <matz@suse.de>
158             Janus Weil  <janus@gcc.gnu.org>
159             Tobias Burnus  <burnus@net-b.de>
160
161         PR fortran/45586
162         * trans-expr.c (conv_parent_component_references): Avoid unintendent
163         skipping of parent compounds.
164
165 2011-02-11  Tobias Burnus  <burnus@net-b.de>
166
167         PR fortran/47550
168         * resolve.c (resolve_formal_arglist): PURE with VALUE
169         and no INTENT: Add -std= diagnostics.
170
171 2011-02-09  Janus Weil  <janus@gcc.gnu.org>
172
173         PR fortran/47352
174         * resolve.c (resolve_procedure_interface): If interface has a result
175         variable, copy the typespec and set result pointer to self.
176
177 2011-02-09  Janus Weil  <janus@gcc.gnu.org>
178
179         PR fortran/47463
180         * resolve.c (resolve_typebound_subroutine): Remove erroneous line.
181
182 2011-02-09  Janus Weil  <janus@gcc.gnu.org>
183
184         PR fortran/47637
185         * trans-decl.c (init_intent_out_dt): Handle CLASS arguments.
186
187 2011-02-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
188
189         * io.c (match_io_element): Do not set dt if not inquire.
190
191 2011-02-08  Janus Weil  <janus@gcc.gnu.org>
192
193         PR fortran/45290
194         * expr.c (gfc_check_assign_symbol): Reject pointers as pointer
195         initialization target.
196
197 2011-02-07  Janne Blomqvist  <jb@gcc.gnu.org>
198             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
199
200         * gfortran.texi (Thread-safety): texinfo styling fixes.
201         * intrinsic.texi: Likewise.
202
203 2011-02-06  Janne Blomqvist  <jb@gcc.gnu.org>
204
205         * gfortran.texi (Compiler Characteristics): Add reference to
206         thread-safety section.
207
208 2011-02-06  Janne Blomqvist  <jb@gcc.gnu.org>
209
210         * gfortran.texi (Thread-safety): New section.
211         * intrinsic.texi (EXECUTE_COMMAND_LINE): Mention thread-safety.
212         (GETENV): Likewise.
213         (GET_ENVIRONMENT_VARIABLE): Likewise.
214         (SYSTEM): Likewise.
215
216 2011-02-06  Paul Thomas  <pault@gcc.gnu.org>
217
218         PR fortran/47592
219         * trans-stmt.c (gfc_trans_allocate): For deferred character
220         length allocations with SOURCE, store to the values and string
221         length to avoid calculating twice.  Replace gfc_start_block
222         with gfc_init_block to avoid unnecessary contexts and to keep
223         declarations of temporaries where they should be. Tidy up the
224         code a bit.
225
226 2011-02-05  Janne Blomqvist  <jb@gcc.gnu.org>
227
228         PR fortran/42434
229         * intrinsic.texi (SYSTEM_CLOCK): Update documentation.
230
231 2011-02-02  Janus Weil  <janus@gcc.gnu.org>
232             Paul Thomas  <pault@gcc.gnu.org>
233
234         PR fortran/47082
235         * trans-expr.c (gfc_trans_class_init_assign): Add call to
236         gfc_get_derived_type.
237         * module.c (read_cleanup): Do not use unique_symtrees for vtabs
238         or vtypes.
239
240 2011-02-02  Janus Weil  <janus@gcc.gnu.org>
241
242         PR fortran/47572
243         * resolve.c (resolve_fl_variable): Handle polymorphic allocatables.
244
245 2011-02-01  Janus Weil  <janus@gcc.gnu.org>
246
247         PR fortran/47565
248         * trans-expr.c (gfc_conv_structure): Handle constructors for procedure
249         pointer components with allocatable result.
250
251 2011-01-31  Janus Weil  <janus@gcc.gnu.org>
252
253         PR fortran/47455
254         * trans-expr.c (gfc_conv_procedure_call): Handle procedure pointers
255         with pointer or allocatable result.
256
257 2011-01-31  Paul Thomas  <pault@gcc.gnu.org>
258
259         PR fortran/47519
260         * trans-stmt.c (gfc_trans_allocate): Improve handling of
261         deferred character lengths with SOURCE.
262         * iresolve.c (gfc_resolve_repeat): Calculate character
263         length from source length and ncopies.
264         * dump-parse-tree.c (show_code_node): Show MOLD and SOURCE
265         expressions for ALLOCATE.
266
267 2011-01-31  Janus Weil  <janus@gcc.gnu.org>
268
269         PR fortran/47463
270         * resolve.c (resolve_typebound_subroutine): Bug fix for the case of
271         an argument of a typebound assignment being a component.
272
273 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
274
275         * gfortranspec.c (add_arg_libgfortran) [HAVE_LD_STATIC_DYNAMIC] Use
276         LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
277
278 2011-01-31  Tobias Burnus  <burnus@net-b.de>
279
280         PR fortran/47042
281         * resolve.c (resolve_fl_procedure): Reject stmt functions
282         with pointer/allocatable attribute.
283
284 2011-01-31  Tobias Burnus  <burnus@net-b.de>
285
286         PR fortran/47042
287         * interface.c (gfc_procedure_use): Add explicit interface check for
288         pointer/allocatable functions.
289
290 2011-01-30  Paul Thomas  <pault@gcc.gnu.org>
291
292         PR fortran/47523
293         * trans-expr.c (gfc_trans_assignment_1): If the rhs is an op
294         expr and is assigned to a deferred character length scalar,
295         make sure that the function is called before reallocation,
296         so that the length is available. Include procedure pointer
297         and procedure pointer component rhs as well.
298
299         PR fortran/45170
300         PR fortran/35810
301         PR fortran/47350
302         * gfortran.dg/allocatable_function_5.f90: New test not added by
303         mistake on 2011-01-28.
304
305 2011-01-29  Tobias Burnus  <burnus@net-b.de>
306
307         PR fortran/47531
308         * check.c (gfc_check_shape): Support kind argument in SHAPE.
309         * intrinsic.c (add_functions): Ditto.
310         * resolve.c (gfc_resolve_shape): Ditto.
311         * simplify.c (gfc_simplify_shape): Ditto.
312         * intrinsic.h (gfc_check_shape, gfc_resolve_shape,
313         gfc_simplify_shape): Update prototypes.
314         * intrinisc.text (SHAPE): Document kind argument.
315
316 2011-01-28  Tobias Burnus  <burnus@net-b.de>
317
318         PR fortran/47507
319         * resolve.c (resolve_formal_arglist): Allow arguments with VALUE
320         attribute also without INTENT.
321
322 2011-01-28  Tobias Burnus  <burnus@net-b.de>
323
324         * gfortran.texi (Fortran 2003 status): Mention support for
325         nonconstant namelist variables.
326
327 2011-01-28  Paul Thomas  <pault@gcc.gnu.org>
328             Tobias Burnus  <burnus@gcc.gnu.org>
329
330         PR fortran/45170
331         PR fortran/35810
332         PR fortran/47350
333         * interface.c (compare_actual_formal): An allocatable or pointer
334         deferred length actual is only allowed if the formal argument
335         is also deferred length. Clean up whitespace.
336         * trans-expr.c (gfc_conv_procedure_call): Pass string length for
337         deferred character length formal arguments by reference. Do the
338         same for function results.
339         (gfc_trans_pointer_assignment): Do not do runtime check of lhs
340         and rhs character lengths, if deferred length lhs.  In this case
341         set the lhs character length to that of the rhs.
342         (gfc_conv_string_parameter): Remove assert that string length is
343         an integer type.
344         (is_scalar_reallocatable_lhs): New function.
345         (alloc_scalar_allocatable_for_assignment): New function.
346         (gfc_trans_assignment_1): Call above new function. If the rhs is
347         a deferred character length itself, makes ure that the function
348         is called before reallocation, so that the length is available.
349         (gfc_trans_asssignment): Remove error about assignment to
350         deferred length character variables.
351         * gfortran.texi : Update entry about (re)allocation on
352         assignment.
353         * trans-stmt.c (gfc_trans_allocate): Add code to handle deferred
354         length character variables.
355         * module.c (mio_typespec): Transfer deferred characteristic.
356         * trans-types.c (gfc_get_function_type): New code to generate
357         hidden typelist, so that those character lengths that are
358         passed by reference get the right type.
359         * resolve.c (resolve_contained_fntype): Supress error for
360         deferred character length functions.
361         (resolve_function, resolve_fl_procedure) The same.
362         (check_symbols): Remove the error that support for
363         entity with deferred type parameter is not yet implemented.
364         (resolve_fl_derived): The same.
365         match.c (alloc_opt_list): Allow MOLD for deferred length object.
366         * trans-decl.c (gfc_get_symbol_decl): For deferred character
367         length dummies, generate a local variable for string length.
368         (create_function_arglist): Hidden length can be a pointer.
369         (gfc_trans_deferred_vars): For deferred character length
370         results and dummies, assign the string length to the local
371         variable from the hidden argument on entry and the other way
372         round on exit, as appropriate.
373
374 2011-01-27  Tobias Burnus  <burnus@net-b.de>
375
376         PR fortran/47474
377         * trans-decl.c (gfc_generate_function_code): Fix init
378         of allocatable result variable with allocatable components.
379
380 2011-01-27  Tobias Burnus  <burnus@net-b.de>
381
382         PR fortran/47472
383         * options.c (gfc_handle_module_path_options): Save
384         module path without trailing slash as include path.
385
386 2011-01-25  Tobias Burnus  <burnus@net-b.de>
387
388         PR fortran/47448
389         * interface.c (gfc_check_operator_interface): Fix
390         defined-assignment check.
391
392 2011-01-23  Tobias Burnus  <burnus@net-b.de>
393
394         PR fortran/47421
395         * trans-decl.c (gfc_trans_deferred_vars): Do not nullify
396         scalar allocatable dummy arguments.
397
398 2011-01-22  Thomas Koenig  <tkoenig@gcc.gnu.org>
399
400         PR fortran/38536
401         * resolve.c (gfc_iso_c_func_interface):  For C_LOC,
402         check for array sections followed by component references
403         which are illegal.  Also check for coindexed arguments.
404
405 2011-01-22  Tobias Burnus  <burnus@net-b.de>
406
407         PR fortran/47399
408         * primary.c (gfc_match_varspec): Relax gcc_assert to allow for
409         PARAMETER TBP.
410
411 2011-01-21  Tobias Burnus  <burnus@net-b.de>
412
413         PR fortran/47394
414         * error.c (gfc_error_now, gfc_fatal_error, gfc_error_check):
415         Use defined instead of magic number exit status codes.
416         * scanner.c (include_line, gfc_new_file): Ditto.
417
418 2011-01-21  Tobias Burnus  <burnus@net-b.de>
419
420         PR fortran/47377
421         * expr.c (gfc_check_pointer_assign): Reject expr data-targets
422         without pointer attribute.
423
424 2011-01-18  Janus Weil  <janus@gcc.gnu.org>
425
426         PR fortran/47240
427         * resolve.c (expression_rank): Fix rank of procedure poiner components.
428         * trans-expr.c (gfc_conv_procedure_call): Take care of procedure
429         pointer components as actual arguments.
430
431 2011-01-17  Jakub Jelinek  <jakub@redhat.com>
432
433         PR fortran/47331
434         * gfortran.h (struct gfc_omp_saved_state): New type.
435         (gfc_omp_save_and_clear_state, gfc_omp_restore_state): New prototypes.
436         * resolve.c (resolve_global_procedure): Call it around gfc_resolve
437         call.
438         * openmp.c (gfc_omp_save_and_clear_state, gfc_omp_restore_state): New
439         functions.
440
441 2011-01-17  Tobias Burnus  <burnus@net-b.de>
442
443         PR fortran/47327
444         * invoke.texi (Options to request or suppress errors
445         and warnings): Fix cross link.
446
447 2011-01-15  Tobias Burnus  <burnus@net-b.de>
448
449         * gfortran.texi: Update Fortran 2003 Status section.
450
451         PR fortran/47177
452         * invoke.texi: Add missing "-E" to the -dM example.
453
454 2011-01-13  Tobias Burnus  <burnus@net-b.de>
455
456         PR fortran/47268
457         * intrinsic.texi (get_command_argument, get_environment_variable):
458         Mark arguments as optional in the Arguments section.
459
460 2011-01-13  Kai Tietz  <kai.tietz@onevision.com>
461             Tobias Burnus  <burnus@net-b.de>
462
463         PR fortran/47260
464         * trans-decl.c (gfc_get_extern_function_decl,
465         build_function_decl): Set TREE_PUBLIC/TREE_EXTERNAL before
466         calling decl_attributes.
467
468 2011-01-13  Tobias Burnus  <burnus@net-b.de>
469             Mikael Morin  <mikael@gcc.gnu.org>
470
471         PR fortran/45848
472         PR fortran/47204
473         * gfortran.h (gfc_code): Move union ext's case_list into
474         the struct block.
475         * dump-parse-tree.c (show_code_node): Adapt by prefixing case_list
476         by "block.".
477         * frontend-passes.c (gfc_code_walker): Ditto.
478         * match.c (gfc_match_goto, gfc_match_call, gfc_match_case,
479         gfc_match_type_is, gfc_match_class_is): Ditto.
480         * resolve.c (resolve_select, resolve_select_type): Ditto.
481         * st.c (gfc_free_statement): Ditto.
482         * trans-stmt.c (gfc_trans_integer_select, gfc_trans_logical_select,
483         gfc_trans_character_select): Ditto.
484         * parse.c (resolve_all_program_units): For error recovery, avoid
485         segfault is proc_name is NULL.
486
487 2011-01-11  Paul Thomas  <pault@gcc.gnu.org>
488
489         PR fortran/47051
490         * trans-array.c (gfc_alloc_allocatable_for_assignment): Change
491         to be standard compliant by testing for shape rather than size
492         before skipping reallocation. Improve comments.
493
494 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
495
496         PR fortran/47224
497         * resolve.c (resolve_actual_arglist): Remove unneeded and buggy piece
498         of code.
499
500 2011-01-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
501
502         PR fortran/38536
503         * resolve.c (is_scalar_expr_ptr):  For a substring reference,
504         use gfc_dep_compare_expr to compare start and end expession.
505         Add FIXME for using gfc_deb_compare_expr elsewhere.
506
507 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
508
509         PR fortran/46313
510         * class.c (get_unique_type_string): Make type name start with upper
511         case letter.
512
513 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
514
515         PR fortran/46405
516         * invoke.texi:  Mention -ffree-line-length-none and
517         -ffixed-line-length-none for preprocessing.
518
519 2011-01-08  Paul Thomas  <pault@gcc.gnu.org>
520
521         PR fortran/46896
522         * trans-expr.c (gfc_conv_procedure_call): With a non-copying
523         procedure argument (eg TRANSPOSE) use a temporary if there is
524         any chance of aliasing due to host or use association.
525         (arrayfunc_assign_needs_temporary): Correct logic for function
526         results and do not use a temporary for implicitly PURE
527         variables.  Use a temporary for Cray pointees.
528         * symbol.c (gfc_add_save): Explicit SAVE not compatible with
529         implicit pureness of containing procedure.
530         * decl.c (match_old_style_init, gfc_match_data): Where decl
531         would fail in PURE procedure, set implicit_pure to zero.
532         * gfortran.h : Add implicit_pure to structure symbol_attr and
533         add prototype for function gfc_implicit_pure.
534         * expr.c (gfc_check_pointer_assign, gfc_check_vardef_context):
535         Where decl would fail in PURE procedure, reset implicit_pure.
536         * io.c (match_vtag, gfc_match_open, gfc_match_close,
537         gfc_match_print, gfc_match_inquire, gfc_match_wait): The same.
538         * match.c (gfc_match_critical, gfc_match_stopcode,
539         sync_statement, gfc_match_allocate, gfc_match_deallocate): The
540         same.
541         * parse.c (decode_omp_directive): The same.
542         (parse_contained): If not PURE, set implicit pure attribute.
543         * resolve.c (resolve_formal_arglist, resolve_structure_cons,
544         resolve_function, resolve_ordinary_assign) : The same.
545         (gfc_implicit_pure): New function.
546         * module.c (mio_symbol_attribute): Introduce AB_IMPLICIT_PURE
547         to ab_attribute enum and use it in this function.
548
549 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
550
551         PR fortran/45777
552         * symbol.c (gfc_symbols_could_alias):  Strip gfc_ prefix,
553         make static and move in front of its only caller, to ...
554         * trans-array.c (symbols_could_alias): ... here.
555         Pass information about pointer and target status as
556         arguments.  Allocatable arrays don't alias anything
557         unless they have the POINTER attribute.
558         (gfc_could_be_alias):  Keep track of pointer and target
559         status when following references.  Also check if typespecs
560         of components match those of other components or symbols.
561
562 2011-01-07  Tobias Burnus  <burnus@net-b.de>
563
564         PR fortran/41580
565         * class.c (gfc_build_class_symbol): Mark __vtab as attr.vtab.
566         * intrinsic.c (add_functions): Use simplify functions for
567         EXTENDS_TYPE_OF and SAME_TYPE_AS.
568         * intrinsic.h (gfc_simplify_extends_type_of,
569         gfc_simplify_same_type_as): New prototypes.
570         * simplify.c (is_last_ref_vtab, gfc_simplify_extends_type_of,
571         gfc_simplify_same_type_as): New functions.
572
573 2011-01-07  Janus Weil  <janus@gcc.gnu.org>
574
575         PR fortran/47189
576         PR fortran/47194
577         * gfortran.h (gfc_lval_expr_from_sym): Moved prototype.
578         * class.c (gfc_class_null_initializer): Initialize _vptr to declared
579         type.
580         * expr.c (gfc_lval_expr_from_sym): Moved here from symbol.c.
581         * resolve.c (resolve_deallocate_expr): _data component will be added
582         at translation stage.
583         * symbol.c (gfc_lval_expr_from_sym): Moved to expr.c.
584         * trans-stmt.c (gfc_trans_deallocate): Reset _vptr to declared type.
585
586 2011-01-06  Daniel Franke  <franke.daniel@gmail.com>
587
588         PR fortran/33117
589         PR fortran/46478
590         * parse.c (parse_interface): Remove check for procedure types.
591         * interface.c (check_interface0): Verify that procedures are
592         either all SUBROUTINEs or all FUNCTIONs.
593
594 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
595
596         PR fortran/47180
597         * trans-expr.c (gfc_trans_class_assign): Bugfix for r168524 (make sure
598         'vtab' is initialized).
599
600 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
601
602         PR fortran/47180
603         * trans-expr.c (gfc_trans_class_assign): For a polymorphic NULL pointer
604         assignment, set the _vptr component to the declared type.
605
606 2011-01-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
607
608         PR fortran/46017
609         * resolve.c (resolve_allocate_deallocate): Follow references to
610         check for duplicate occurence of allocation/deallocation objects.
611
612 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
613
614         PR fortran/47024
615         * trans-decl.c (gfc_trans_deferred_vars): Initialize the _vpr component
616         of polymorphic allocatables according to their declared type.
617
618 2011-01-04  Janus Weil  <janus@gcc.gnu.org>
619
620         PR fortran/46448
621         * class.c (gfc_find_derived_vtab): Set the module field for the copying
622         routine to make sure it receives module name mangling.
623
624 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
625
626         * gfortranspec.c (lang_specific_driver): Update copyright notice
627         dates.
628
629 2011-01-03  Janus Weil  <janus@gcc.gnu.org>
630
631         * intrinsic.texi (LEADZ): Fix example.
632
633 2011-01-02  Janus Weil  <janus@gcc.gnu.org>
634
635         PR fortran/46408
636         * class.c (gfc_find_derived_vtab): Use EXEC_INIT_ASSIGN for __copy_
637         routine.
638
639 \f
640 Copyright (C) 2011 Free Software Foundation, Inc.
641
642 Copying and distribution of this file, with or without modification,
643 are permitted in any medium without royalty provided the copyright
644 notice and this notice are preserved.