OSDN Git Service

08084303a83b036cab148fbccae31395dbdaff51
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
1 2007-01-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2
3         PR fortran/30430
4         * scanner.c (gfc_release_include_path): Free gfc_option.module_dir
5         only once!
6
7 2007-01-09  Brooks Moses  <brooks.moses@codesourcery.com>
8
9         * simplify.c (gfc_simplify_ibclr): Fix POS comparison.
10         (gfc_simplify_ibset): Same.
11
12 2007-01-09  Brooks Moses  <brooks.moses@codesourcery.com>
13
14         PR 30381
15         PR 30420
16         * simplify.c (convert_mpz_to_unsigned): New function.
17         (convert_mpz_to_signed): New function, largely based on
18         twos_complement().
19         (twos_complement): Removed.
20         (gfc_simplify_ibclr): Add conversions to and from an
21         unsigned representation before bit-twiddling.
22         (gfc_simplify_ibset): Same.
23         (gfc_simplify_ishftc): Add checks for overly large
24         constant arguments, only check the third argument if
25         it's present, carry over high bits into the result as
26         appropriate, and perform the final conversion back to
27         a signed representation using the correct sign bit.
28         (gfc_simplify_not): Removed unnecessary masking.
29
30 2007-01-09  Paul Thomas  <pault@gcc.gnu.org>
31
32         PR fortran/30408
33         * resolve.c (resolve_code): Use the code->expr character length
34         directly to set length of llen.
35
36 2007-01-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
37
38         PR fortran/30408
39         * lang.opt: Add Wcharacter_truncation option.
40         * options.c (gfc_init_options): Initialize
41         gfc_option.warn_character_truncation to zero.
42         (gfc_handle_option): Add case for OPT_Wcharacter_truncation.
43
44 2007-01-08  Steven G. Kargl  <kargl@gcc.gnu.org>
45
46         * interface.c, intrinsic.c, gfortranspec.c, io.c, f95-lang.c,
47         iresolve.c, match.c:  Update Copyright years.  Whitespace.
48
49 2007-01-08  Richard Guenther  <rguenther@suse.de>
50
51         * trans-io.c (transfer_array_desc): Use build_int_cst instead
52         of build_int_cstu.
53
54 2007-01-08  Roger Sayle  <roger@eyesopen.com>
55
56         * trans-array.c (constant_array_constructor_p): New function to
57         determine whether an array constructor consists only of constant
58         elements, and if so return it's size.
59         (gfc_build_constant_array_constructor): Construct a statically
60         initialized gfortran array for a given EXPR_ARRAY.
61         (gfc_trans_constant_array_constructor): Efficiently scalarize
62         a constant array constructor.
63         (gfc_trans_array_constructor):  Tidy up use of CONST_STRING.
64         Special case scalarization of constant array constructors, all of
65         whose elements are specified, using constant_array_constructor_p 
66         and gfc_trans_constant_array_constructor.
67         (gfc_conv_scalarized_array_ref): Check whetger info->offset is zero
68         before adding it to index, to avoid creating a NON_LVALUE_EXPR.
69
70 2007-01-08  Kazu Hirata  <kazu@codesourcery.com>
71
72         gfortran.texi: Fix typos.
73
74 2007-01-07  Steven G. Kargl  <kargl@gcc.gnu.org>
75
76         * decl.c, dump-parse-tree.c, error.c, data.c, expr.c, dependency.c,
77         convert.c:  Update Copyright dates.  Fix whitespace.
78
79 2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
80
81         * data.c (gfc_assign_data_value): Fix whitespace.
82
83 2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
84
85         * trans-array.c (gfc_trans_create_temp_array, gfc_array_init_size):
86         Commentary typo fix.
87
88 2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
89
90         PR fortran/27698
91         * match.c (gfc_match_name): Print diagnostics for invalid
92         character in names.
93
94 2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
95
96         * array.c: Fix whitespace in comment table.
97
98 2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
99
100         * array.c, bbt.c, check.c:  Update copyright years.  Whitespace.
101
102 2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
103
104         * arith.c: Update copyright years.  Whitespace.
105
106 2007-01-05  Roger Sayle  <roger@eyesopen.com>
107
108         * trans-expr.c (gfc_trans_assignment_1): New subroutine to scalarize
109         array assignments split out from gfc_trans_assignment.
110         (gfc_trans_array_copy): New function to implement array to array
111         copies via calls to __builtin_memcpy.
112         (copyable_array_p): New helper function to identify an array of
113         simple/POD types, that may be copied/assigned using memcpy.
114         (gfc_trans_assignment): Use gfc_trans_array_copy to handle simple
115         whole array assignments considered suitable by copyable_array_p.
116         Invoke gfc_trans_assignment_1 to perform the fallback scalarization.
117
118 2007-01-05  Roger Sayle  <roger@eyesopen.com>
119
120         * trans-array.c (gfc_trans_array_constructor_value): Make the
121         static const "data" array as TREE_READONLY.
122         * trans-stmt.c (gfc_trans_character_select): Likewise.
123
124 2007-01-05  Roger Sayle  <roger@eyesopen.com>
125
126         * trans-array.c (gfc_conv_loop_setup):  Test whether the loop
127         stride is one, to avoid fold_build2 introducing a useless
128         NON_LVALUE_EXPR node.
129
130 2007-01-05  Tobias Burnus  <burnus@net-b.de>
131
132         * symbol.c (check_conflict): Fix error message.
133
134 2007-01-05  Paul Thomas  <pault@gcc.gnu.org>
135
136         PR fortran/23232
137         * decl.c (gfc_in_match_data, gfc_set_in_match_data): New
138         functions to signal that a DATA statement is being matched.
139         (gfc_match_data): Call gfc_set_in_match_data on entry and on
140         exit.
141         * gfortran.h : Add prototypes for above.
142         * expr.c (check_init_expr): Avoid check on parameter or
143         variable if gfc_in_match_data is true.
144         (gfc_match_init_expr): Do not call error on non-reduction of
145         expression if gfc_in_match_data is true.
146
147         PR fortran/27996
148         PR fortran/27998
149         * decl.c (gfc_set_constant_character_len): Add boolean arg to
150         flag array constructor resolution.  Warn if string is being
151         truncated.  Standard dependent error if string is padded. Set
152         new arg to false for all three calls to
153         gfc_set_constant_character_len.
154         * match.h : Add boolean arg to prototype for
155         gfc_set_constant_character_len.
156         * gfortran.h : Add warn_character_truncation to gfc_options.
157         * options.c (set_Wall): Set warn_character_truncation if -Wall
158         is set.
159         * resolve.c (resolve_code): Warn if rhs string in character
160         assignment has to be truncated.
161         * array.c (gfc_resolve_character_array_constructor): Set new
162         argument to true for call to gfc_set_constant_character_len.
163
164 2007-01-05  Tobias Burnus  <burnus@net-b.de>
165
166         PR fortran/29624
167         * interface.c (compare_parameter_intent): New function.
168           (check_intents): Support pointer intents.
169         * symbol.c (check_conflict): Support pointer intents,
170           better conflict_std message.
171         * expr.c (gfc_check_assign,gfc_check_pointer_assign):
172           Support pointer intents.
173         * resolve.c (resolve_deallocate_expr,resolve_allocate_expr):
174           Support pointer intents.
175
176 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
177
178         PR 30371
179         * check.c (gfc_check_kill_sub): Add checks for non-scalar
180         arguments.
181
182 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
183
184         * intrinsic.texi: Minor cleanup, reflowing overlong
185         paragraphs, and correcting whitespace.
186
187 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
188
189         * intrinsic.texi (LBOUND): Add documentation.
190         (LGE): Add documentation.
191         (LGT): Add documentation.
192         (LINK): Add documentation.
193         (LLE): Add documentation.
194         (LLT): Add documentation.
195         (LNBLNK): Add documentation.
196         (UBOUND): Add documentation.
197         (UNLINK): Add documentation.
198
199 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
200
201         * intrinsic.texi (IAND): Clarify argument specifications.
202         (IBCLR): Add documentation.
203         (IBITS): Add documentation.
204         (IBSET): Add documentation.
205         (IEOR): Add documentation.
206         (IERRNO): Add documentation.
207         (INDEX): Add documentation.
208         (IOR): Add documentation.
209         (ISHFT): Add documentation.
210         (ISHFTC): Add documentation.
211         (KILL): Add documentation.
212         (LEN_TRIM): Add documentation.
213
214 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
215
216         PR 30235
217         * interface.c (compare_actual_formal): check for
218         alternate returns when iterating over non-present
219         arguments.
220
221 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
222
223         * invoke.texi: Update manpage copyright to include 2007.
224
225 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
226
227         * gfortran.texi: Update copyright to include 2007.
228         * intrinsic.texi: Update copyright to include 2007.
229         * invoke.texi: Update copyright to include 2007.
230
231 2007-01-02  Tobias Burnus  <burnus@net-b.de>
232             Jakub Jelinek  <jakub@redhat.com>
233
234         PR fortran/30276
235         * scanner.c (open_included_file): Revert patch.
236           (gfc_open_included_file): Support absolute pathnames.
237           (gfc_open_intrinsic_module): Support absolute pathnames.
238
239 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
240
241         * gfortran.texi (GNU Fortran and GCC): Rewrite
242
243 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
244
245         * gfortran.texi (Introduction): Lower "Part I:
246         Introduction" to a chapter, renumber Parts II and III to
247         Parts I and II.
248         * intrinsic.texi (Introduction): Rename to "Introduction
249         to Intrinsics" to avoid conflict with the new chapter.
250
251 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
252
253         * intrinsic.texi (Introduction): Rewrite first paragraph.
254
255 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
256
257         * invoke.texi (OpenMP): Added index entry.
258         * gfortran.texi (title page): Removed erroneous '*'.
259
260 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
261
262         * gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
263         to description.
264         (Extensions): Miscellaneous minor rewriting and copyediting.
265         (BOZ-literal constants): Renamed from Hexadecimal constants.
266         (Hollerith constants support): Added explanation and 
267         suggestions for standard-conforming modern equivalents.
268
269 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
270
271         * intrinsic.texi: Improvements to index entries; change
272         @findex entries to @cindex entries.
273         * invoke.texi: Standardize and improve index entries.
274         * gfortran.texi: Fix @code in one index entry.
275
276 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
277
278         * invoke.texi: Change @code-type macros to appropriate
279         variants (@command, @option, etc.)
280         * gfortran.texi: Same.
281
282 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
283
284         * intrinsic.texi: Various minor cleanups.
285
286 2007-01-02  Steven G. Kargl  <kargls@comcast.net>
287
288         * trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to
289         build_int_cst.
290
291 2007-01-02  Tobias Burnus  <burnus@net-b.de>
292
293         PR fortran/30276
294         * scanner.c (open_included_file): Support full-path filenames.
295
296 2007-01-02  Paul Thomas  <pault@gcc.gnu.org>
297
298         PR fortran/20896
299         * interface.c (check_sym_interfaces): Remove call to
300         resolve_global_procedure.
301         gfortran.h : Remove prototype for resolve_global_procedure.
302         resolve.c (resolve_global_procedure): Add static attribute
303         to function declaration.
304
305 2007-01-01  Steven G. Kargl  <kargls@comcast.net>
306
307         * ChangeLog: Copy to ...
308         * ChangeLog-2006: here.