OSDN Git Service

47ebdce5b4b2c9c1ff9d2959ca366af2c53eaecd
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
1 2009-03-28  Paul Thomas  <pault@gcc.gnu.org>
2
3         PR fortran/38538
4         * trans-array.c (get_elemental_fcn_charlen): Remove.
5         (get_array_charlen): New function to replace previous.
6
7 2009-03-28  Paul Thomas  <pault@gcc.gnu.org>
8
9         PR fortran/38765
10         * parse.c (parse_derived): Do not break on finding pointer,
11         allocatable or private components.
12
13 2009-03-28  Tobias Burnus  <burnus@net-b.de>
14
15         PR fortran/32626
16         * option.c (gfc_handle_runtime_check_option): Enable recursion check.
17         * trans-decl.c (gfc_generate_function_code): Add recursion check.
18         * invoke.texi (-fcheck): Add recursive option.
19
20 2009-03-28  Tobias Burnus  <burnus@net-b.de>
21
22         PR fortran/38432
23         * resolve.c (gfc_resolve_iterator): Add zero-loop warning.
24
25 2009-03-28  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
26             Paul Thomas  <pault@gcc.gnu.org>
27             Tobias Burnus  <burnus@net-b.de>
28
29         * gfortran.h (gfc_option_t): Add rtcheck.
30         * lang.opt: New option -fcheck.
31         * libgfortran.h: Add GFC_RTCHECK_* constants.
32         * invoke.texi: Document -fcheck.
33         * options.c (gfc_handle_runtime_check_option): New function.
34         (gfc_init_options,gfc_post_options,gfc_handle_option):
35         Add -fcheck option.
36
37 2009-03-27  Richard Guenther  <rguenther@suse.de>
38
39         * trans-array.c (gfc_conv_descriptor_data_addr): Use
40         gfc_build_addr_expr instead of build_fold_addr_expr.
41         (gfc_trans_allocate_array_storage, gfc_trans_array_constructor_value,
42         gfc_trans_constant_array_constructor, gfc_conv_array_data,
43         gfc_conv_expr_descriptor, gfc_conv_array_parameter): Likewise.
44         * trans-expr.c (gfc_conv_missing_dummy, gfc_conv_variable,
45         gfc_conv_function_val, gfc_conv_operator_assign,
46         gfc_conv_subref_array_arg, gfc_conv_function_call,
47         gfc_conv_expr_reference, gfc_trans_scalar_assign): Likewise.
48         * trans-intrinsic.c (gfc_conv_intrinsic_exponent,
49         gfc_conv_intrinsic_ctime, gfc_conv_intrinsic_fdate,
50         gfc_conv_intrinsic_ttynam, gfc_conv_intrinsic_minmax_char,
51         gfc_conv_intrinsic_fraction, gfc_conv_intrinsic_spacing,
52         gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_set_exponent,
53         gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_transfer,
54         gfc_conv_intrinsic_si_kind, gfc_conv_intrinsic_trim): Likewise.
55         * trans-io.c (gfc_trans_io_runtime_check, set_parameter_ref,
56         gfc_convert_array_to_string, gfc_trans_open, gfc_trans_close,
57         build_filepos, gfc_trans_inquire, gfc_trans_wait,
58         nml_get_addr_expr, transfer_namelist_element, build_dt,
59         gfc_trans_dt_end, transfer_array_component, transfer_expr,
60         transfer_array_desc, gfc_trans_transfer): Likewise.
61         * trans-stmt.c (gfc_trans_allocate, gfc_trans_deallocate): Likewise.
62         * trans.c (gfc_build_addr_expr): Mark the base of the address
63         TREE_ADDRESSABLE.
64
65 2009-03-27  Tobias Burnus  <burnus@net-b.de>
66
67         * gfortran.h (enum init_local_real.): Add GFC_INIT_REAL_SNAN.
68         (gfc_expr): Add is_snan.
69         * trans-const.c (gfc_conv_mpfr_to_tree): Support SNaN.
70         (gfc_conv_constant_to_tree): Update call to gfc_conv_mpfr_to_tree.
71         * trans-const.h (gfc_conv_mpfr_to_tree): Update prototype.
72         * resolve.c (build_default_init_expr): Update call.
73         * target-memory.c (encode_float): Ditto.
74         * trans-intrinsic.c (gfc_conv_intrinsic_aint,gfc_conv_intrinsic_mod,
75
76 2009-03-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
77
78         * lang.opt: Unify help texts for -I, -Wconversion, -d, -fopenmp,
79         and -fpreprocessed.
80
81 2009-03-06  Alexandre Oliva <aoliva@redhat.com>
82
83         * simplify.c (gfc_simplify_transfer): Zero-initialize the
84         buffer.
85
86 2009-02-27  Tobias Burnus  <burnus@net-b.de>
87
88         PR fortran/39309
89         * module.c (read_md5_from_module_file): Add missing quote.
90
91 2009-02-27  Tobias Burnus  <burnus@net-b.de>
92
93         PR fortran/39309
94         * module.c (read_md5_from_module_file): Include mod version
95         in had-changed test.
96
97 2009-02-26  Paul Thomas  <pault@gcc.gnu.org>
98
99         PR fortran/39295
100         * interface.c (compare_type_rank_if): Return 1 if the symbols
101         are the same and deal with external procedures where one is
102         identified to be a function or subroutine by usage but the
103         other is not.
104
105 2009-02-26  Paul Thomas  <pault@gcc.gnu.org>
106
107         PR fortran/39292
108         * trans-array.c (gfc_conv_array_initializer): Convert all
109         expressions rather than ICEing.
110
111 2009-02-21  Thomas Koenig  <tkoenig@gcc.gnu.org>
112
113         PR fortran/38914
114         * array.c (ref_dimen_size):  Rename to gfc_ref_dimen_size,
115         make global.  Change function name in error messages.
116         (ref_size):  Change ref_dimen_size to gfc_ref_dimen_size.
117         (gfc_array_ref_shape):  Likewise.
118         * gfortran.h:  Add prototype for gfc_ref_dimen_size.
119         * simplify.c (simplify_bound_dim):  Add ref argument.
120         If the reference isn't a full array, return one for
121         the lower bound and the extent for the upper bound.
122         (simplify_bound):  For array sections, take as from the
123         argument.  Add reference to all to simplify_bound_dim.
124
125 2009-02-19  Daniel Franke  <franke.daniel@gmail.com>
126
127         * scanner.c (load_line): At end of line, skip '\r' without setting
128         the truncation flag.
129
130 2009-02-18  Daniel Kraft  <d@domob.eu>
131
132         * gfortran.texi: New chapter about compiler characteristics.
133         (Compiler Characteristics): Document KIND type parameters here.
134
135 2009-02-18  Tobias Burnus  <burnus@net-b.de>
136
137         * intrinsic.texi (MALLOC): Make example more portable.
138
139 2009-02-13  Mikael Morin  <mikael.morin@tele2.fr>
140
141         PR fortran/38259
142         * module.c (gfc_dump_module,gfc_use_module): Add module
143         version number.
144
145 2009-02-13  Paul Thomas  <pault@gcc.gnu.org>
146
147         PR fortran/36703
148         PR fortran/36528
149         * trans-expr.c (gfc_conv_function_val): Stabilize Cray-pointer
150         function references to ensure that a valid expression is used.
151         (gfc_conv_function_call): Pass Cray pointers to procedures.
152
153 2009-02-03  Jakub Jelinek  <jakub@redhat.com>
154
155         * gfortranspec.c (lang_specific_driver): Update copyright notice
156         dates.
157
158 2009-01-28  Paul Thomas  <pault@gcc.gnu.org>
159
160         PR fortran/38852
161         PR fortran/39006
162         * trans-intrinsic.c (gfc_conv_intrinsic_bound): Use the array
163         descriptor ubound for UBOUND, when the array lbound == 1.
164
165 2009-01-27  Daniel Kraft  <d@domob.eu>
166
167         PR fortran/38883
168         * trans-stmt.c (gfc_conv_elemental_dependencies):  Create temporary
169         for the real type needed to make it work for subcomponent-references.
170
171 2009-01-21  Daniel Kraft  <d@domob.eu>
172
173         * trans-stmt.c (gfc_conv_elemental_dependencies):  Cleaned up comment.
174
175 2009-01-20  Paul Thomas  <pault@gcc.gnu.org>
176
177         PR fortran/38907
178         * resolve.c (check_host_association): Remove the matching to
179         correct an incorrect host association and use manipulation of
180         the expression instead.
181
182 2009-01-20  Tobias Burnus  <burnus@net-b.de>
183
184         * invoke.texi (RANGE): RANGE also takes INTEGER arguments.
185
186 2009-01-19  Mikael Morin  <mikael.morin@tele2.fr>
187
188         PR fortran/38859
189         * simplify.c (simplify_bound): Don't use array specification
190         if variable or component has subsequent references.
191
192 2009-01-17  Paul Thomas  <pault@gcc.gnu.org>
193
194         PR fortran/38657
195         * module.c (write_common_0): Add argument 'this_module' and
196         check that non-use associated common blocks are written first.
197         (write_common): Call write_common_0 twice, once with true and
198         then with false.
199
200 2009-01-17  Paul Thomas  <pault@gcc.gnu.org>
201
202         PR fortran/34955
203         * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): Has
204         been absorbed into gfc_conv_intrinsic_transfer. All
205         references to it in trans-intrinsic.c have been changed
206         accordingly.  PR fixed by using a temporary for scalar
207         character transfer, when the source is shorter than the
208         destination.
209
210 2009-01-17  Paul Thomas  <pault@gcc.gnu.org>
211
212         PR fortran/38657
213         * module.c (write_common_0): Revert patch of 2009-01-05.
214
215 2009-01-16  Janus Weil  <janus@gcc.gnu.org>
216
217         PR fortran/38152
218         * expr.c (gfc_check_pointer_assign): Allow use-associated procedure
219         pointers as lvalue.
220         * trans-decl.c (get_proc_pointer_decl,gfc_create_module_variable):
221         Enable procedure pointers as module variables.
222
223 2009-01-14  Steven G. Kargl  <kargl@gcc.gnu.org>
224
225         * ChangeLog-2007: Clean out svn merge droppings.
226
227 2009-01-10  Paul Thomas  <pault@gcc.gnu.org>
228
229         PR fortran/38763
230         * target-memory.c (encode_derived): Encode NULL.
231
232 2009-01-10  Paul Thomas  <pault@gcc.gnu.org>
233
234         PR fortran/38765
235         * resolve.c (check_host_association): Use the symtree name to
236         search for a potential contained procedure, since this is the
237         name by which it would be referenced.
238
239 2009-01-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
240
241         PR fortran/38220
242         * interface.c (gfc_procedure_use):  Don't warn about functions
243         from ISO_C_BINDING.
244         * symbol.c (generate_isocbinding_symbol):  Mark c_loc and
245         c_funloc as pure.
246
247 2009-01-05  Paul Thomas  <pault@gcc.gnu.org>
248
249         PR fortran/38657
250         * module.c (write_common_0): Use the name of the symtree rather
251         than the common block, to determine if the common has been
252         written.
253
254 2009-01-05  Daniel Franke  <franke.daniel@gmail.com>
255
256         PR fortran/37159
257         * check.c (gfc_check_random_seed): Added size check for GET
258         dummy argument, reworded error messages to follow common pattern.
259
260 2009-01-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
261
262         PR fortran/38672
263         * trans-types.c (gfc_get_derived_type):  Check for the
264         presence of derived->ns->proc_name before
265         accessing derived->ns->proc_name->attr.flavor .
266         * resolve.c (resolve_symbol):  Likewise.
267
268 2009-01-05  Paul Thomas  <pault@gcc.gnu.org>
269
270         PR fortran/38665
271         * gfortran.h : Add bit to gfc_expr 'user_operator'
272         * interface.c (gfc_extend_expr): Set the above if the operator
273         is substituted by a function. 
274         * resolve.c (check_host_association): Return if above is set.
275
276 2009-01-04  Mikael Morin  <mikael.morin@tele2.fr>
277
278         PR fortran/35681
279         * ChangeLog-2008: Fix function name.
280
281         PR fortran/38487
282         * dependency.c (gfc_check_argument_var_dependency):
283         Move the check for pointerness inside the if block
284         so that it doesn't affect the return value.
285
286         PR fortran/38669
287         * trans-stmt.c (gfc_trans_call):
288         Add the dependency code after the loop bounds calculation one.
289
290 2009-01-04  Daniel Franke  <franke.daniel@gmail.com>
291
292         * intrinsic.c (do_simplify): Removed already implemented TODO.
293
294 2009-01-04  Daniel Franke  <franke.daniel@gmail.com>
295
296         PR fortran/38718
297         * simplify.c (gfc_simplify_merge): New.
298         * intrinsic.h (gfc_simplify_merge): New prototype.
299         * intrinsic.c (add_functions): Added simplification for MERGE.
300
301 2009-01-04  Mikael Morin  <mikael.morin@tele2.fr>
302
303         PR fortran/38536
304         * gfortran.h (gfc_is_data_pointer): Added prototype
305         * resolve.c (gfc_iso_c_func_interface):
306         Use gfc_is_data_pointer to test for pointer attribute.
307         * dependency.c (gfc_is_data_pointer):
308         Support pointer-returning functions.
309
310 2009-01-03  Daniel Franke  <franke.daniel@gmail.com>
311
312         * symbol.c (save_symbol): Don't SAVE function results.
313
314 2009-01-03  Paul Thomas  <pault@gcc.gnu.org>
315
316         PR fortran/38594
317         * resolve.c (resolve_call): When searching for proper host
318         association, use symtree rather than symbol.  For everything
319         except generic subroutines, substitute the symtree in the call
320         rather than the symbol.