OSDN Git Service

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