OSDN Git Service

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