2011-01-15 Tobias Burnus <burnus@net-b.de>
[official-gcc.git] / gcc / fortran / ChangeLog
bloba51003c54b06b18ade3778ef54ed702f27a452b6
1 2011-01-15  Tobias Burnus  <burnus@net-b.de>
3         * gfortran.texi: Update Fortran 2003 Status section.
5         PR fortran/47177
6         * invoke.texi: Add missing "-E" to the -dM example.
8 2011-01-13  Tobias Burnus  <burnus@net-b.de>
10         PR fortran/47268
11         * intrinsic.texi (get_command_argument, get_environment_variable):
12         Mark arguments as optional in the Arguments section.
14 2011-01-13  Kai Tietz  <kai.tietz@onevision.com>
15             Tobias Burnus  <burnus@net-b.de>
17         PR fortran/47260
18         * trans-decl.c (gfc_get_extern_function_decl,
19         build_function_decl): Set TREE_PUBLIC/TREE_EXTERNAL before
20         calling decl_attributes.
22 2011-01-13  Tobias Burnus  <burnus@net-b.de>
23             Mikael Morin  <mikael@gcc.gnu.org>
25         PR fortran/45848
26         PR fortran/47204
27         * gfortran.h (gfc_code): Move union ext's case_list into
28         the struct block.
29         * dump-parse-tree.c (show_code_node): Adapt by prefixing case_list
30         by "block.".
31         * frontend-passes.c (gfc_code_walker): Ditto.
32         * match.c (gfc_match_goto, gfc_match_call, gfc_match_case,
33         gfc_match_type_is, gfc_match_class_is): Ditto.
34         * resolve.c (resolve_select, resolve_select_type): Ditto.
35         * st.c (gfc_free_statement): Ditto.
36         * trans-stmt.c (gfc_trans_integer_select, gfc_trans_logical_select,
37         gfc_trans_character_select): Ditto.
38         * parse.c (resolve_all_program_units): For error recovery, avoid
39         segfault is proc_name is NULL.
41 2011-01-11  Paul Thomas  <pault@gcc.gnu.org>
43         PR fortran/47051
44         * trans-array.c (gfc_alloc_allocatable_for_assignment): Change
45         to be standard compliant by testing for shape rather than size
46         before skipping reallocation. Improve comments.
48 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
50         PR fortran/47224
51         * resolve.c (resolve_actual_arglist): Remove unneeded and buggy piece
52         of code.
54 2011-01-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
56         PR fortran/38536
57         * resolve.c (is_scalar_expr_ptr):  For a substring reference,
58         use gfc_dep_compare_expr to compare start and end expession.
59         Add FIXME for using gfc_deb_compare_expr elsewhere.
61 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
63         PR fortran/46313
64         * class.c (get_unique_type_string): Make type name start with upper
65         case letter.
67 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
69         PR fortran/46405
70         * invoke.texi:  Mention -ffree-line-length-none and
71         -ffixed-line-length-none for preprocessing.
73 2011-01-08  Paul Thomas  <pault@gcc.gnu.org>
75         PR fortran/46896
76         * trans-expr.c (gfc_conv_procedure_call): With a non-copying
77         procedure argument (eg TRANSPOSE) use a temporary if there is
78         any chance of aliasing due to host or use association.
79         (arrayfunc_assign_needs_temporary): Correct logic for function
80         results and do not use a temporary for implicitly PURE
81         variables.  Use a temporary for Cray pointees.
82         * symbol.c (gfc_add_save): Explicit SAVE not compatible with
83         implicit pureness of containing procedure.
84         * decl.c (match_old_style_init, gfc_match_data): Where decl
85         would fail in PURE procedure, set implicit_pure to zero.
86         * gfortran.h : Add implicit_pure to structure symbol_attr and
87         add prototype for function gfc_implicit_pure.
88         * expr.c (gfc_check_pointer_assign, gfc_check_vardef_context):
89         Where decl would fail in PURE procedure, reset implicit_pure.
90         * io.c (match_vtag, gfc_match_open, gfc_match_close,
91         gfc_match_print, gfc_match_inquire, gfc_match_wait): The same.
92         * match.c (gfc_match_critical, gfc_match_stopcode,
93         sync_statement, gfc_match_allocate, gfc_match_deallocate): The
94         same.
95         * parse.c (decode_omp_directive): The same.
96         (parse_contained): If not PURE, set implicit pure attribute.
97         * resolve.c (resolve_formal_arglist, resolve_structure_cons,
98         resolve_function, resolve_ordinary_assign) : The same.
99         (gfc_implicit_pure): New function.
100         * module.c (mio_symbol_attribute): Introduce AB_IMPLICIT_PURE
101         to ab_attribute enum and use it in this function.
103 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
105         PR fortran/45777
106         * symbol.c (gfc_symbols_could_alias):  Strip gfc_ prefix,
107         make static and move in front of its only caller, to ...
108         * trans-array.c (symbols_could_alias): ... here.
109         Pass information about pointer and target status as
110         arguments.  Allocatable arrays don't alias anything
111         unless they have the POINTER attribute.
112         (gfc_could_be_alias):  Keep track of pointer and target
113         status when following references.  Also check if typespecs
114         of components match those of other components or symbols.
116 2011-01-07  Tobias Burnus  <burnus@net-b.de>
118         PR fortran/41580
119         * class.c (gfc_build_class_symbol): Mark __vtab as attr.vtab.
120         * intrinsic.c (add_functions): Use simplify functions for
121         EXTENDS_TYPE_OF and SAME_TYPE_AS.
122         * intrinsic.h (gfc_simplify_extends_type_of,
123         gfc_simplify_same_type_as): New prototypes.
124         * simplify.c (is_last_ref_vtab, gfc_simplify_extends_type_of,
125         gfc_simplify_same_type_as): New functions.
127 2011-01-07  Janus Weil  <janus@gcc.gnu.org>
129         PR fortran/47189
130         PR fortran/47194
131         * gfortran.h (gfc_lval_expr_from_sym): Moved prototype.
132         * class.c (gfc_class_null_initializer): Initialize _vptr to declared
133         type.
134         * expr.c (gfc_lval_expr_from_sym): Moved here from symbol.c.
135         * resolve.c (resolve_deallocate_expr): _data component will be added
136         at translation stage.
137         * symbol.c (gfc_lval_expr_from_sym): Moved to expr.c.
138         * trans-stmt.c (gfc_trans_deallocate): Reset _vptr to declared type.
140 2011-01-06  Daniel Franke  <franke.daniel@gmail.com>
142         PR fortran/33117
143         PR fortran/46478
144         * parse.c (parse_interface): Remove check for procedure types.
145         * interface.c (check_interface0): Verify that procedures are
146         either all SUBROUTINEs or all FUNCTIONs.
148 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
150         PR fortran/47180
151         * trans-expr.c (gfc_trans_class_assign): Bugfix for r168524 (make sure
152         'vtab' is initialized).
154 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
156         PR fortran/47180
157         * trans-expr.c (gfc_trans_class_assign): For a polymorphic NULL pointer
158         assignment, set the _vptr component to the declared type.
160 2011-01-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
162         PR fortran/46017
163         * resolve.c (resolve_allocate_deallocate): Follow references to
164         check for duplicate occurence of allocation/deallocation objects.
166 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
168         PR fortran/47024
169         * trans-decl.c (gfc_trans_deferred_vars): Initialize the _vpr component
170         of polymorphic allocatables according to their declared type.
172 2011-01-04  Janus Weil  <janus@gcc.gnu.org>
174         PR fortran/46448
175         * class.c (gfc_find_derived_vtab): Set the module field for the copying
176         routine to make sure it receives module name mangling.
178 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
180         * gfortranspec.c (lang_specific_driver): Update copyright notice
181         dates.
183 2011-01-03  Janus Weil  <janus@gcc.gnu.org>
185         * intrinsic.texi (LEADZ): Fix example.
187 2011-01-02  Janus Weil  <janus@gcc.gnu.org>
189         PR fortran/46408
190         * class.c (gfc_find_derived_vtab): Use EXEC_INIT_ASSIGN for __copy_
191         routine.
194 Copyright (C) 2011 Free Software Foundation, Inc.
196 Copying and distribution of this file, with or without modification,
197 are permitted in any medium without royalty provided the copyright
198 notice and this notice are preserved.