OSDN Git Service

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