OSDN Git Service

* gfortran.h: Edit comments on GFC_STD_*.
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
1 2007-03-24  Brooks Moses  <brooks.moses@codesourcery.com>
2
3         * gfortran.h: Edit comments on GFC_STD_*.
4
5 2007-03-23  Brooks Moses  <brooks.moses@codesourcery.com>
6
7         * invoke.texi: Misc. small typo fixes.
8         (-Wcharacter-truncation): Add.
9         (-Wnonstd-intrinsics): Correct spelling.
10         (-std=): Edit.
11         (-fintrinsic-modules-path): Add.
12
13 2007-03-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
14
15         PR fortran/30834
16         * arith.c (complex_pow): Rewrite to handle large power.
17         (gfc_arith_power): Handle large power in the real and integer
18         cases.
19
20 2007-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
21
22         PR fortran/31262
23         * trans-const.c (gfc_conv_mpz_to_tree): Allow integer constants
24         larger than twice the width of a HOST_WIDE_INT.
25
26 2006-03-22  Paul Thomas  <pault@gcc.gnu.org>
27
28         PR fortran/31193
29         * trans-intrinsic.c (gfc_size_in_bytes): Remove function.
30         (gfc_conv_intrinsic_array_transfer): Remove calls to previous.
31         Explicitly extract TREE_TYPEs for source and mold.  Use these
32         to calculate length of source and mold, except for characters,
33         where the se string_length is used.  For mold, the TREE_TYPE is
34         recalculated using gfc_get_character_type_len so that the
35         result is correctly cast for character literals and substrings.
36         Do not use gfc_typenode_for_spec for the final cast.
37
38 2007-03-22  Tobias Schlüter  <tobi@gcc.gnu.org>
39
40         PR fortran/20897
41         * decl.c (gfc_match_derived_decl): Reliably reject
42         'doubleprecision' and 'doublecomplex' as type names.
43
44 2007-03-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
45
46         PR fortran/31203
47         * trans-expr.c (gfc_trans_init_string_length): Length should
48         never be negative.
49         (gfc_conv_function_call): Likewise.
50
51 2007-03-18  Paul Thomas  <pault@gcc.gnu.org>
52
53         PR fortran/30531
54         PR fortran/31086
55         * symbo.c : Add gfc_derived_types.
56         (gfc_free_dt_list): Free derived type list gfc_derived_types.
57         (gfc_free_namespace): Remove call to gfc_free_dt_list.
58         (gfc_symbol_done_2): Call  gfc_free_dt_list.
59         * gfortran.h : Declare gfc_derived_types to be external. Remove
60         derived types field from gfc_namespace.
61         * resolve.c (resolve_fl_derived): Refer to gfc_derived types
62         rather than namespace derived_types.
63         (resolve_fntype): Remove special treatment for module
64         derived type functions.
65         * trans-types.c (gfc_get_derived_type): Remove search for like
66         derived types.  Finish by copying back end declaration to like
67         derived types in the derived type list gfc_derived_types.
68
69         2007-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
70
71         PR fortran/31120
72         * trans-expr.c (gfc_conv_powi): Make n argument unsigned hwi.
73         (gfc_conv_cst_int_power): Handle integer exponent with care,
74         since it might be too large for us.
75
76 2007-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
77
78         PR fortran/31184
79         * invoke.texi: Fix typo.
80
81 2007-03-16  Tobias Burnus  <burnus@net-b.de>
82
83         * trans-decl.c (gfc_generate_function_code): Use all arguments of
84           set_std.
85
86 2007-03-15  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
87
88         * gfortran.h (gfc_option_t): Add flag_backtrace field.
89         * lang.opt: Add -fbacktrace option.
90         * invoke.texi: Document the new option.
91         * trans-decl.c (gfc_build_builtin_function_decls): Add new
92         option to the call to set_std.
93         * options.c (gfc_init_options, gfc_handle_option): Handle the
94         new option.
95
96 2007-03-15  Tobias Burnus  <burnus@gcc.gnu.org>
97             Paul Thomas  <pault@gcc.gnu.org>
98
99         PR fortran/30922
100         * decl.c (gfc_match_import): If the parent of the current name-
101         space is null, try looking for an imported symbol in the parent
102         of the proc_name interface.
103         * resolve.c (resolve_fl_variable): Do not check for blocking of
104         host association by a same symbol, if the symbol is in an
105         interface body.
106
107 2007-03-15  Paul Thomas  <pault@gcc.gnu.org>
108
109         PR fortran/30879
110         * decl.c (match_data_constant): Before going on to try to match
111         a name, try to match a structure component.
112
113
114         PR fortran/30870
115         * resolve.c (resolve_actual_arglist): Do not reject a generic
116         actual argument if it has a same name specific interface.
117
118         PR fortran/31163
119         * trans-array.c (parse_interface): Do not nullify allocatable
120         components if the symbol has the saved attribute.
121
122 2007-03-14  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
123
124         * trans-array.c (gfc_trans_auto_array_allocation): Replace
125         fold(convert()) by fold_convert().
126         (gfc_duplicate_allocatable): Likewise.
127         * trans-intrinsic.c (gfc_conv_intrinsic_dot_product): Use
128         build_int_cst instead of converting an integer_zero_node
129         to the final type.
130
131 2007-03-14  Jakub Jelinek  <jakub@redhat.com>
132
133         * module.c (mio_typespec): Don't look at ts->cl if not BT_CHARACTER.
134
135 2007-03-13  Brooks Moses  <brooks.moses@codesourcery.com>
136
137         PR fortran/30933
138         PR fortran/30948
139         PR fortran/30953
140         * intrinsics.texi (CHDIR): Fix argument names, note
141         that STATUS must be a default integer.
142         (CTIME): Fix argument names, note that RESULT must
143         be a default integer.
144         (EXIT): Note that STATUS must be a default integer.
145
146 2007-03-13  Brooks Moses  <brooks.moses@codesourcery.com>
147
148         PR fortran/28068
149         * intrinsic.texi: General whitespace cleanup, remove
150         comment about missing intrinsics.
151         (menu): Add lines for new entries listed below.
152         (ACOSH): Mention specific function DACOSH, correct
153         description phrasing.
154         (ASINH): Mention specific function DASINH, correct
155         description phrasing.
156         (ATANH): Mention specific function DATANH, correct
157         description phrasing.
158         (COS): Add index entry for CCOS.
159         (CPU_TIME): Correct "REAL" to "REAL(*)".
160         (EXP): Add index entry for CEXP.
161         (INT): Correct argument name to "A".
162         (INT2): New entry.
163         (INT8): New entry.
164         (LONG): New entry.
165         (MAX): Add index entries for specific variants.
166         (MCLOCK): New entry.
167         (MCLOCK8): New entry.
168         (SECNDS): Adjust to a more standard form.
169         (SECOND): New entry.
170         (TIME): Add cross-reference to MCLOCK.
171         (TIME8): Add cross-reference to MCLOCK8.
172
173 2007-03-11  Paul Thomas  <pault@gcc.gnu.org>
174
175         PR fortran/30883
176         * parse.c (parse_interface): Use the default types from the
177         formal namespace if a function or its result do not have a type
178         after parsing the specification statements.
179
180 2007-03-08  Brooks Moses  <brooks.moses@codesourcery.com>
181
182         * intrinsic.texi: (ICHAR) Improve internal I/O note.
183         (ACHAR): Reference it.
184         (CHAR): Reference it.
185         (IACHAR): Reference it.
186
187 2007-03-08  Brooks Moses  <brooks.moses@codesourcery.com>
188
189         * intrinsic.texi: (LINK) Document function form.
190         (RENAME): Likewise.
191         (SYMLNK): Likewise.
192         (SYSTEM): Likewise.
193         (UNLINK): Likewise.
194
195 2007-03-08  Brooks Moses  <brooks.moses@codesourcery.com>
196
197         * intrinsic.texi: minor typo fixes, removed prologue.
198         (FSEEK): moved to correct place in alphabetical order.
199
200 2007-03-08  Daniel Franke  <franke.daniel@gmail.com>
201
202         PR fortran/30947
203         * check.c (gfc_check_alarm_sub): Added check for default integer 
204         kind of status argument.
205         * iresolve.c (gfc_resolve_alarm_sub): Removed conversion of 
206         status argument.
207         * intrinsic.texi (ALARM): Extended documentation.
208
209 2007-03-08  Daniel Franke  <franke.daniel@gmail.com>
210
211         * intrinsic.texi (GERROR, ISATTY, TTYNAM): New.
212         (ABORT, FLUSH, FNUM, IRAND, MALLOC, SIGNAL, SRAND): Fixed typo.
213         * intrinsic.c (add_subroutines): Adjusted dummy argument names 
214         of GERROR and TTYNAM.
215
216 2007-07-08  Tobias Burnus  <burnus@net-b.de>
217
218         * module.c (gfc_match_use): Support renaming of operators
219         in USE statements.
220         * gfortran.texi (Fortran 2003 Status): Document support of
221         renaming of operators.
222
223 2007-07-08  Tobias Burnus  <burnus@net-b.de>
224
225         PR fortran/30973
226         * module.c (read_module): Always import module name as symbol.
227         (gfc_match_use): Disallow module name in the only clause of
228         a use statement.
229
230 2007-03-08  Paul Thomas  <pault@gcc.gnu.org>
231
232         PR fortran/31011
233         * expr.c (find_array_section): Correct arithmetic for section
234         size.
235
236 2007-03-07  Brooks Moses  <brooks.moses@codesourcery.com>
237
238         * iresolve.c (gfc_resolve_ishftc): Correct s_kind value.
239
240 2007-03-06  Daniel Franke  <franke.daniel@gmail.com>
241
242         PR documentation/30950
243         * intrinsic.texi (AND, CPU_TIME): Fix dummy argument names.
244         (FREE): Fix call syntax.
245
246 2007-03-06  Brooks Moses  <brooks.moses@codesourcery.com>
247
248         * intrinsic.texi: Limit column widths to a total of .85.
249
250 2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
251
252         * gfortran.texi (GFortran and G77): Rewrite completely.
253
254 2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
255
256         * match.c (gfc_match_name): Expanded comment.
257
258 2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
259
260         * gfortran.texi (Old-style kind specifications): Document
261         special handling of old-style kind specifiers for COMPLEX.
262         * decl.c (gfc_match_old_kind_spec): Document kind/bytesize
263         assumptions for COMPLEX in comment.
264
265 2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
266
267         PR 31050
268         * gfortranspec.c (lang_specific_driver): Update program
269         name and copyright date.
270
271 2007-03-03  Paul Thomas  <pault@gcc.gnu.org>
272
273         PR fortran/30882
274         * check.c (dim_rank_check): The shape of subsections of
275         assumed-size arrays is known.
276
277 2007-03-02  Paul Thomas  <pault@gcc.gnu.org>
278             Tobias Burnus  <burnus@net-b.de>
279
280         PR fortran/30873
281         * decl.c (gfc_match_entry): Remove erroneous entry result check.
282
283 2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
284
285         * Make-lang.in: Add install-pdf target as copied from
286         automake v1.10 rules.
287
288 2007-03-01  Tobias Burnus  <burnus@net-b.de>
289
290         PR fortran/30865
291         * trans-intrinsic.c (gfc_conv_intrinsic_size): Compare pointers.
292
293 2007-02-28  Tobias Burnus  <burnus@net-b.de>
294             Paul Thomas  <pault@gcc.gnu.org>
295
296         PR fortran/30888
297         PR fortran/30887
298         * resolve.c (resolve_actual_arglist): Allow by-value
299         arguments and non-default-kind for %VAL().
300         * trans-expr.c (conv_arglist_function): Allow
301         non-default-kind for %VAL().
302
303 2007-02-28  Tobias Burnus  <burnus@net-b.de>
304
305         PR fortran/30968
306         * primary.c (next_string_char): Correct reading a character
307         after the delimiter.
308         (match_string_constant): Print warning message only once.
309
310 2007-02-27  Richard Guenther  <rguenther@suse.de>
311
312         * trans-array.c (structure_alloc_comps): Use correct type
313         for null pointer constant.
314
315 2007-02-26  Brooks Moses  <brooks.moses@codesourcery.com>
316
317         * gfortran.texi: Standardize title page, remove version number
318         from copyright page.
319
320 2007-02-26  Thomas Koenig  <Thomas.Koenig@online.de>
321             Paul Thomas  <pault@gcc.gnu.org>
322
323         PR fortran/30865
324         * trans-intrinsic.c (gfc_conv_intrinsic_size):
325         If dim is an optional argument, check for its
326         presence and call size0 or size1, respectively.
327
328 2007-02-23  Paul Thomas <pault@gcc.gnu.org>
329
330         PR fortran/30660
331         * resolve.c (has_default_initializer): New function.
332         (resolve_fl_variable): Call has_default_initializer to determine if
333         the derived type has a default initializer to its ultimate
334         components.
335
336
337 2007-02-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
338
339         * options.c (set_default_std_flags): New function to consolidate
340         setting the flags.
341         (gfc_init_options): Use new function.
342         (gfc_handle_option): Use new function.
343
344 2007-02-22  Brooks Moses  <brooks.moses@codesourcery.com>
345
346         * gfortran.texi (Old-style kind specifications): Document
347         special handling of old-style kind specifiers for COMPLEX.
348         * decl.c (gfc_match_old_kind_spec): Documented kind/bytesize
349         assumptions in comment.
350
351 2007-02-21  Bernhard Fischer  <aldot@gcc.gnu.org>
352
353         * parse.c (next_free): Gooble spaces after OpenMP sentinel.
354
355 2007-02-20  Thomas Koenig  <Thomas.Koenig@online.de>
356
357         PR fortran/30869
358         * match.c (gfc_match_iterator): Remove conflict between
359         loop variable and pointer.
360
361 2007-02-20  Tobias Burnus  <burnus@net-b.de>
362
363         PR fortran/30522
364         * symbol.c (gfc_add_volatile): Allow to set VOLATILE
365           attribute for host-associated variables.
366         * gfortran.h (symbol_attribute): Save namespace
367           where VOLATILE has been set.
368         * trans-decl.c (gfc_finish_var_decl): Move variable
369           declaration to the top.
370
371 2007-02-20  Tobias Burnus  <burnus@net-b.de>
372
373         PR fortran/30783
374         * resolve.c (resolve_symbol): Add character dummy VALUE check.
375
376 2007-02-19  Thomas Koenig  <Thomas.Koenig@online.de>
377
378         PR libfortran/30533
379         * fortran/iresolve.c (gfc_resolve_maxloc): Remove coercion of
380         argument to default integer.
381         (gfc_resolve_minloc): Likewise.
382
383 2007-02-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
384
385         PR fortran/30681
386         * options.c (gfc_init_options): Relax warning level for obsolescent.
387         * match.c (match_arithmetic_if): Change to obsolescent from deleted.
388         (gfc_match_if): Same.
389
390 2007-02-18  Roger Sayle  <roger@eyesopen.com>
391
392         * trans-array.c (gfc_build_constant_array_constructor): When the
393         shape of the constructor is known, use that to construct the
394         gfc_array_spec.
395         (gfc_trans_constant_array_constructor): Initialize the "info"
396         information for all of the dimensions of the array constructor.
397         (constant_array_constructor_loop_size): New function.
398         (gfc_trans_array_constructor): Use it to determine whether a
399         loop is suitable for "constant array constructor" optimization.
400
401         * trans-intrinsic.c (gfc_conv_intrinsic_anyall): Use fold_build2
402         instead of build2, to avoid conditions like "(a != b) != 0".
403
404 2007-02-18  Roger Sayle  <roger@eyesopen.com>
405             Paul Thomas <pault@gcc.gnu.org>
406
407         PR fortran/30400
408         * match.c (match_forall_iterator): Use gfc_match_expr instead
409         of gfc_match_variable to match the iterator variable.  Return
410         MATCH_NO if not a variable.  Remove the reset of the symbol's
411         flavor in cleanup.
412
413 2007-02-16  Tobias Burnus  <burnus@net-b.de>
414
415         PR fortran/30793
416         * trans-decl.c (gfc_generate_function_code): Do not initialize
417         pointers to derived components.
418
419 2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
420             Brooks Moses  <brooks.moses@codesourcery.com>
421             Lee Millward  <lee.millward@codesourcery.com>
422
423         * trans-expr.c (gfc_conv_power_op): Use build_call_expr.
424         (gfc_conv_string_tmp): Likewise.
425         (gfc_conv_concat_op): Likewise.
426         (gfc_build_compare_string): Likewise.
427         (gfc_conv_function_call): Use build_call_list instead of build3.
428
429         * trans-array.c (gfc_trans_allocate_array_storage): Use
430         build_call_expr.
431         (gfc_grow_array): Likewise.
432         (gfc_trans_array_ctor_element): Likewise.
433         (gfc_trans_array_constructor_value): Likewise.
434         (gfc_array_allocate): Likewise.
435         (gfc_array_deallocate): Likewise.
436         (gfc_trans_auto_array_allocation): Likewise.
437         (gfc_trans_dummy_array_bias): Likewise.
438         (gfc_conv_array_parameter): Likewise.
439         (gfc_trans_dealloc_allocated): Likewise.
440         (gfc_duplicate_allocatable): Likewise.
441
442         * trans-openmp.c (gfc_trans_omp_barrier): Use build_call_expr.
443         (gfc_trans_omp_flush): Likewise.
444
445         * trans-stmt.c (gfc_conv_elementel_dependencies): Use build_call_expr.
446         (gfc_trans_pause): Likewise.
447         (gfc_trans_stop): Likewise.
448         (gfc_trans_character_select): Likewise.
449         (gfc_do_allocate): Likewise.
450         (gfc_trans_assign_need_temp): Likewise.
451         (gfc_trans_pointer_assign_need_temp): Likewise.
452         (gfc_trans_forall_1): Likewise.
453         (gfc_trans_where_2): Likewise.
454         (gfc_trans_allocate): Likewise.
455         (gfc_trans_deallocate): Likewise.
456
457         * trans.c (gfc_trans_runtime_check): Use build_call_expr.
458
459         * trans-io.c (gfc_trans_open): Use build_call_expr.
460         (gfc_trans_close): Likewise.
461         (build_filepos): Likewise.
462         (gfc_trans_inquire): Likewise.
463         (NML_FIRST_ARG): Delete.
464         (NML_ADD_ARG): Delete.
465         (transfer_namelist_element): Use build_call_expr.
466         (build_dt): Likewise.
467         (gfc_trans_dt_end): Likewise.
468         (transfer_expr): Likewise.
469         (transfer_array-desc): Likewise.
470
471         * trans-decl.c (gfc_generate_function_code): Use build_call_expr.
472         (gfc_generate_constructors): Likewise.
473
474         * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Use build_call_expr.
475         (gfc_conv_intrinsic_fdate): Likewise.
476         (gfc_conv_intrinsic_ttynam): Likewise.
477         (gfc_conv_intrinsic_array_transfer): Likewise.
478         (gfc_conv_associated): Likewise.
479         (gfc_conv_intrinsic_si_kind): Likewise.
480         (gfc_conv_intrinsic_trim): Likewise.
481         (gfc_conv_intrinsic_repeat: Likewise.
482         (gfc_conv_intrinsic_iargc): Likewise.
483
484 2007-02-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
485
486         PR fortran/30779
487         * scanner.c (gfc_next_char_literal): Add check for end of file after
488         call to advance_line.
489
490 2007-02-14  Steven G. Kargl  <kargl@gcc.gnu.org>
491
492         PR fortran/30799
493         * primary.c (match_logical_constant): Return MATCH_ERROR on invalid
494         kind.
495
496 2007-02-14  Steven G. Kargl  <kargl@gcc.gnu.org>
497
498         * misc.c (gfc_typename): Fix potential buffer overflow.
499
500 2007-02-13  Paul Thomas  <pault@gcc.gnu.org>
501
502         PR fortran/30554
503         * module.c (read_module): Set pointer_info to referenced if the
504         symbol has no namespace.
505
506 2007-02-12  Nick Clifton  <nickc@redhat.com>
507
508         * lang.opt: Add Warning attribute to warning options.
509
510 2007-02-11  Daniel Franke  <franke.daniel@gmail.com>
511
512         * intrinsic.texi (HOSTNM): Fix typographical error in syntax.
513         (SLEEP): Added section and documentation.
514
515 2007-02-11  Tobias Schlüter  <tobi@gcc.gnu.org>
516
517         PR fortran/30478
518         * decl.c (add_init_expr_to_sym): Remove ENUM specific code.
519         (variable_decl): Likewise.  Rewrap comment.
520         (match_attr_spec): Remove ENUM specific code.
521         (gfc_match_enum): Fix typo in error message.
522         (enumerator_decl): New function.
523         (gfc_match_enumerator_def): Use enumerator_decl instead of
524         variable_decl.  Adapt code accordingly.
525
526 2007-02-11  Paul Thomas  <pault@gcc.gnu.org>
527
528         PR fortran/30554
529         * module.c (find_symtree_for_symbol): New function to return
530         a symtree that is not a "unique symtree" given a symbol.
531         (read_module): Do not automatically set pointer_info to
532         referenced because this inhibits the generation of a unique
533         symtree.  Recycle the existing symtree if possible by calling
534         find_symtree_for_symbol.
535
536         PR fortran/30319
537         * decl.c (add_init_expr_to_sym): Make new charlen for an array
538         constructor initializer.
539
540 2007-02-10  Richard Henderson  <rth@redhat.com>, Jakub Jelinek  <jakub@redhat.com>
541
542         * f95-lang.c (gfc_init_builtin_functions): Add __emutls_get_address
543         and __emutls_register_common.
544         * openmp.c (gfc_match_omp_threadprivate): Don't error if !have_tls.
545         * trans-common.c (build_common_decl): Don't check have_tls.
546         * trans-decl.c (gfc_finish_var_decl): Likewise.
547         * types.def (BT_WORD, BT_FN_PTR_PTR): New.
548         (BT_FN_VOID_PTR_WORD_WORD_PTR): New.
549
550 2007-02-09  Tobias Burnus  <burnus@net-b.de>
551
552         PR fortran/30512
553         * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc,
554           gfc_conv_intrinsic_minmaxval): Use HUGE-1 for most negative integer.
555
556 2007-02-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
557
558         PR fortran/30720
559         * trans-array.c (gfc_trans_create_temp_array): Remove use of the
560         function argument. Always generate code for negative extent.
561         Simplify said code.
562         * trans-array.h (gfc_trans_create_temp_array): Change prototype.
563         * trans-expr.c (gfc_conv_function_call): Remove use of last argument
564         of gfc_trans_create_temp_array.
565         * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): Likewise.
566         * trans-stmt.c (gfc_conv_elemental_dependencies): Likewise.
567
568 2007-02-08  Roger Sayle  <roger@eyesopen.com>
569
570         * trans-stmt.c (gfc_trans_forall_1): Optimize the cases where the
571         mask expression is a compile-time constant (".true." or ".false.").
572
573 2007-02-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
574
575         PR fortran/30611
576         * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Evaluate
577         arguments only once. Generate check that NCOPIES argument is not
578         negative.
579
580 2007-02-04  Steven G. Kargl <kargl@gcc.gnu.org>
581
582         PR fortran/30605
583         * fortran/invoke.texi: Update documentation.
584         * fortran/options.c (gfc_post_options): Deal with tabs with -std=f2003
585         and -pedantic.
586
587 2007-02-03  Kazu Hirata  <kazu@codesourcery.com>
588
589         * trans-array.c: Fix a comment typo.
590
591 2007-02-03  Paul Thomas  <pault@gcc.gnu.org>
592
593         PR fortran/30514
594         * array.c (match_array_element_spec): If the length of an array is
595         negative, adjust the upper limit to make it zero length.
596
597         PR fortran/30660
598         * resolve.c (pure_function, resolve_function): Initialize name to
599         null to clear up build warnings.
600         (resolve_fl_variable): Look at components explicitly to check for
601         default initializer, rather than using gfc_default_initializer.
602
603 2007-02-02  Steven G. Kargl <kargl@gcc.gnu.org>
604
605         PR fortran/30683
606         * resolve.c (resolve_generic_f): Check for non-NULL sym.
607
608 2007-02-02  Roger Sayle  <roger@eyesopen.com>
609
610         * trans.c (gfc_build_array_ref): Use STRIP_TYPE_NOPS to eliminate
611         NON_LVALUE_EXPR nodes and useless type conversions.
612
613 2007-02-02  Paul Thomas  <pault@gcc.gnu.org>
614
615         PR fortran/30284
616         PR fortran/30626
617         * trans-expr.c (gfc_conv_aliased_arg): Remove static attribute
618         from function and make sure that substring lengths are
619         translated.
620         (is_aliased_array): Remove static attribute.
621         * trans.c : Add prototypes for gfc_conv_aliased_arg and
622         is_aliased_array.
623         * trans-io.c (set_internal_unit): Add the post block to the
624         arguments of the function.  Use is_aliased_array to check if
625         temporary is needed; if so call gfc_conv_aliased_arg.
626         (build_dt): Pass the post block to set_internal_unit and
627         add to the block after all io activiy is done.
628
629 2007-02-01  Roger Sayle  <roger@eyesopen.com>
630
631         * trans-array.c (gfc_conv_expr_descriptor): We don't need to use
632         a temporary array to pass a constant non-character array constructor.
633         Generalize the descriptor generation code to handle scalarizer
634         "info" without an array reference.
635
636 2007-02-01  Roger Sayle  <roger@eyesopen.com>
637
638         * dependency.c (gfc_check_dependency) <EXPR_ARRAY>: Implement
639         dependency checking for array constructors.
640
641 2007-02-01  Roger Sayle  <roger@eyesopen.com>
642
643         * trans-stmt.c (compute_overall_iter_number): Document function
644         arguments.  Generalize "unconditional forall nest with constant
645         bounds" optimization to eliminate unconditional inner loops with
646         constant bounds.
647
648 2007-01-31  Tobias Burnus  <burnus@net-b.de>
649
650         PR fortran/30520
651         * interface.c (compare_actual_formal): Check conformance between
652           actual and VOLATILE dummy arguments.
653         * symbol.c (gfc_add_volatile): Allow setting of VOLATILE
654           multiple times in different scopes.
655         * decl.c (gfc_match_volatile): Search symbol in host association.
656
657 2007-01-31  Kazu Hirata  <kazu@codesourcery.com>
658
659         * simplify.c, trans-array.c: Fix comment typos.
660
661 2007-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
662
663         * invoke.texi (Code Gen Options): Fix abbreviation typo.
664         * intrinsic.texi (ACCESS, LSHIFT, RSHIFT): Fix typos.
665
666 2007-01-30  Steve Ellcey  <sje@cup.hp.com>
667
668         PR fortran/30432
669         * trans-types.c (gfc_get_function_type): Do not add void_type_node
670         to empty arg list.
671         * trans-decl.c (create_function_arglist): Change assert.
672
673 2007-01-29  Paul Thomas  <pault@gcc.gnu.org>
674
675         PR fortran/30554
676         * module.c (read_module): If a symbol is excluded by an ONLY
677         clause, check to see if there is a symtree already loaded. If
678         so, attach the symtree to the pointer_info.
679
680 2007-01-28  Thomas Koenig  <Thomas.Koenig@online.de>
681
682         PR libfortran/30389
683         * gfortran.h: Remove gfc_simplify_init_1.
684         * arith.h: Remove third argument from gfc_compare_string.
685         * arith.c (gfc_compare_expression): Remove third argument
686         from call to gfc_compare_string.
687         (gfc_compare_string): Remove third argument xcoll_table.
688         Remove use of xcoll_table.
689         * misc.c (gfc_init_1): Remove call to gfc_simplify_init_1.
690         * simplify.c (ascii_table): Remove.
691         (xascii_table): Likewise.
692         (gfc_simplify_achar): ICE if extract_int fails.  Remove use of
693         ascii_table.  Warn if -Wsurprising and value < 0 or > 127.
694         (gfc_simplify_char): ICE if extract_int fails. Error if
695         value < 0 or value > 255.
696         (gfc_simplify_iachar): Remove use of xascii_table.
697         Char values outside of 0..255 are an ICE.
698         (gfc_simplify_lge): Remove use of xascii_table.
699         (gfc_simplify_lgt): Likewise.
700         (gfc_simplify_lle): Likewise.
701         (gfc_simplify_llt): Likewise.
702         (invert_table): Remove.
703         (gfc_simplify_init_1): Remove.
704
705 2007-01-27  Roger Sayle  <roger@eyesopen.com>
706
707         * trans-stmt.c (forall_info): Replace the next_nest and outer
708         fields that previously implemented a doubly-linked list with a
709         single prev_nest field (singly-linked list).
710         (gfc_trans_nested_forall_loop): The nested_forall_info argument
711         now denotes the innermost FORALL in the loop nest.
712         (compute_overall_iter_number): Use prev_nest instead of next_nest.
713         (gfc_trans_forall_1): Link/cons the new "info" to the head of the
714         nested_forall_info linked list.  Free the current "info" when done.
715
716 2007-01-27  Paul Thomas  <pault@gcc.gnu.org>
717
718         PR fortran/30407
719         * trans-expr.c (gfc_conv_operator_assign): New function.
720         * trans.h : Add prototype for gfc_conv_operator_assign.
721         * trans-stmt.c (gfc_trans_where_assign): Add a gfc_symbol for
722         a potential operator assignment subroutine.  If it is non-NULL
723         call gfc_conv_operator_assign instead of the first assignment.
724         ( gfc_trans_where_2): In the case of an operator assignment,
725         extract the argument expressions from the code for the
726         subroutine call and pass the symbol to gfc_trans_where_assign.
727         resolve.c (resolve_where, gfc_resolve_where_code_in_forall,
728         gfc_resolve_forall_body): Resolve the subroutine call for
729         operator assignments.
730
731 2007-01-26  Steven Bosscher  <stevenb.gcc@gmail.com>
732             Steven G. Kargl <kargl@gcc.gnu.org>
733
734         PR fortran/30278
735         * fortran/io.c (next_char): Deal with backslash escaped characters.
736         Issue warnings in non -std=gnu cases.
737         * fortran/primary.c (next_string_char): Issue warnings in non
738
739 2007-01-26  Tobias Burnus  <burnus@net-b.de>
740
741         * lang-specs.h: Add support for .f03 and .F03 extensions.
742         * gfortran.texi: Document .f03 extension.
743         * options.c (form_from_filename): Recognize .f03.
744
745 2007-01-25  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
746
747         PR fortran/30437
748         * lang.opt (Wall): Remove RejectNegative.
749         * options.c (gfc_handle_option): Wall can be disabled.
750         (set_Wall): Add a parameter for disabling Wall.
751         
752 2007-01-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
753
754         PR fortran/30532
755         * scanner.c (load_line): Remove check fot ctrl-z and don't gobble.
756         
757 2007-01-23  Paul Thomas  <pault@gcc.gnu.org>
758
759         PR fortran/30481
760         * match.c (gfc_match_namelist): Add check for assumed size character
761         in namelist and provide error if found.
762
763 2007-01-21  Brooks Moses  <brooks.moses@codesourcery.com>
764
765         * intrinsic.texi (ACHAR): Added cross-references.
766         (CHAR): Put cross-references in alphabetical order.
767         (IACHAR): Added cross-references.
768         (ICHAR): Added cross-references.
769
770 2007-01-20  Brooks Moses  <brooks.moses@codesourcery.com>
771
772         * intrinsic.texi: Edited all "Syntax" examples to a consistent form.
773         (MAXVAL): Corrected description of result characteristics.
774         (MINVAL): Same.
775         (UMASK): Added documentation.
776
777 2007-01-20  Steven G. Kargl  <kargl@gcc.gnu.org>
778
779         * openmp.c, matchexp.c, module.c, scanner.c, resolve.c, st.c,
780         parse.c, primary.c, options.c, misc.c, simplify.c: Next installment
781         in the massive whitespace patch.
782
783 2007-01-20  Roger Sayle  <roger@eyesopen.com>
784
785         * module.c (mio_array_ref): The dimen_type fields of an array ref
786         are an enumerated type and can't be read/written directly with a
787         call to mio_integer.  Instead loop over and cast each element.
788
789 2007-01-20  Roger Sayle  <roger@eyesopen.com>
790
791         * dependency.c (gfc_full_array_ref_p): Check that ref->next is NULL,
792         i.e. that the ARRAY_REF doesn't mention components.
793         * trans-array.c (gfc_constant_array_constructor_p): Export external
794         function renamed from constant_array_constructor_p.
795         (gfc_build_constant_array_constructor): Export.
796         (gfc_trans_array_constructor): Update call to the renamed function
797         constant_array_constructor_p.
798         * trans-array.h (gfc_constant_array_constructor_p): Prototype here.
799         (gfc_build_constant_array_constructor): Likewise.
800         * trans-expr.c (gfc_build_memcpy_call): New helper function split
801         out from gfc_trans_array_copy.
802         (gfc_trans_array_copy): Use gfc_build_memcpy_call.
803         (gfc_trans_array_constructor_copy): New function to optimize
804         assigning an entire array from a constant array constructor.
805         (gfc_trans_assignment): Call gfc_trans_array_constructor_copy
806         when appropriate.
807
808 2007-01-20  Roger Sayle  <roger@eyesopen.com>
809
810         * trans-intrinsic.c (gfc_conv_intrinsic_sign): New branchless
811         implementation for the SIGN intrinsic with integral operands.
812         (gfc_conv_intrinsic_minmax): Fix whitespace.
813
814 2007-01-20  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
815
816         * gfortran.h (gfc_options_t): Add flag_allow_leading_underscore.
817         * lang.opt: Add -fallow-leading-underscore.
818         * match.c (gfc_match_name): Allow leading underscore in symbol
819         name if -fallow-leading-underscore is used.
820         * symbol.c (gfc_get_default_type): Add special case for symbol
821         names beginning with an underscore.
822         * trans-decl.c (gfc_get_extern_function_decl,
823         gfc_build_intrinsic_function_decls): Add _gfortran prefix to
824         library symbols selected_int_kind, selected_real_kind and 
825         all specifics.
826         * options.c (gfc_init_options, gfc_handle_option): Handle the
827         new -fallow-leading-underscore option.
828
829 2007-01-20  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
830
831         PR fortran/30446
832         * options.c (gfc_handle_module_path_options): Path used in -J
833         option is now added to the module search path.
834
835 2007-01-20  Richard Guenther  <rguenther@suse.de>
836
837         PR fortran/30223
838         * f95-lang.c (gfc_init_builtin_functions): Provide cbrt and
839         cexpi builtins if we have TARGET_C99_FUNCTIONS.  Provide
840         sincos builtins if the target has sincos.
841
842 2007-01-19  Brooks Moses  <brooks.moses@codesourcery.com>
843
844         * intrinsic.texi (MATMUL): Corrected a typo.
845         (MAX): Separated @var arguments.
846         (MIN): Separated @var arguments.
847
848 2007-01-19  Brooks Moses  <brooks.moses@codesourcery.com>
849
850         * intrinsic.texi: general whitespace cleanup.
851         (menu): Added TIME8, removed UNMASK.
852         (AINT): Clarified argument requirement.
853         (ANINT): Clarified argument requirement.
854         (CEILING): Clarified argument requirement.
855         (CHAR): Clarified argument requirement.
856         (CMPLX): Clarified argument requirement.
857         (DCMPLX): Clarified argument requirement.
858         (FGET): Line rewrapping.
859         (FLOOR): Clarified argument requirement.
860         (GMTIME): Added documentation.
861         (IAND): Added cross-reference.
862         (IBCLR): Added cross-reference.
863         (IBSET): Added cross-reference.
864         (IEOR): Added cross-reference.
865         (INT): Collapsed examples, clarified argument requirement.
866         (IOR): Added cross-references.
867         (LEN_TRIM): Corrected result kind.
868         (LINK): Added cross-reference.
869         (LLT): Removed "documentation pending".
870         (LOGICAL): Added documentation.
871         (LSHIFT): Added documentation.
872         (LTIME): Added documentation.
873         (MATMUL): Added documentation.
874         (MAX): Added documentation.
875         (MAXLOC): Added documentation.
876         (MAXVAL): Added documentation.
877         (MERGE): Added documentation.
878         (MIN): Added documentation.
879         (MINLOC): Added documentation.
880         (MINVAL): Added documentation.
881         (MVBITS): Moved to correct place, added documentation.
882         (NOT): Added documentation.
883         (PERROR): Added documentation.
884         (RAN): Moved to correct place, added documentation.
885         (REAL): Clarified argument requirement.
886         (RENAME): Added documentation.
887         (RSHIFT): Clarified argument requirement.
888         (SIGN): Corrected table specification.
889         (SYMLNK): Added documentation.
890         (SYSTEM): Added documentation.
891         (TIME): Added documentation.
892         (TIME8): Added section and documentation.
893         (UNMASK): Removed erroneous section.
894
895 2007-01-18  H.J. Lu  <hongjiu.lu@intel.com>
896
897         * trans-stmt.c (compute_overall_iter_number): Fix a typo.
898
899 2007-01-18  Roger Sayle  <roger@eyesopen.com>
900
901         * trans-expr.c (copyable_array_p): Consider user derived types without
902         allocatable components to be copyable.
903
904 2007-01-18  Roger Sayle  <roger@eyesopen.com>
905
906         * trans-stmt.c (compute_overall_iter_number): Enhance to precompute
907         the number of interations in unconditional FORALL nests with constant
908         bounds.
909
910 2007-01-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
911             Tobias Burnus  <burnus@net-b.de>
912
913         PR libfortran/29649
914         * gfortran.h (gfc_option_t): Add flag_dump_core.
915         * lang.opt: Add -fdump-core option.
916         * invoke.texi: Document the new options.
917         * trans-decl.c (gfc_build_builtin_function_decls): Add new
918           options to the call to set_std.
919         * options.c (gfc_init_options, gfc_handle_option): Set the
920           new options.
921
922 2007-01-17  Paul Thomas  <pault@gcc.gnu.org>
923
924         PR fortran/30476
925         * module.c (load_generic_interfaces): Make the marking of the
926         symbol as ambiguous conditional on the module names being
927         different.
928         (write_generic): Ensure that the generic interface has a
929         non-NULL module field.
930
931 2007-01-16  Roger Sayle  <roger@eyesopen.com>
932
933         PR fortran/30404
934         * trans-stmt.c (forall_info): Remove pmask field.
935         (gfc_trans_forall_loop): Remove NVAR argument, instead assume that
936         NVAR covers all the interation variables in the current forall_info.
937         Add an extra OUTER parameter, which specified the loop header in
938         which to place mask index initializations.
939         (gfc_trans_nested_forall_loop): Remove NEST_FLAG argument.
940         Change the semantics of MASK_FLAG to only control the mask in the
941         innermost loop.
942         (compute_overall_iter_number): Optimize the trivial case of a
943         top-level loop having a constant number of iterations.  Update
944         call to gfc_trans_nested_forall_loop.  Calculate the number of
945         times the inner loop will be executed, not to size of the 
946         iteration space.
947         (allocate_temp_for_forall_nest_1): Reuse SIZE as BYTESIZE when
948         sizeof(type) == 1.  Tidy up.
949         (gfc_trans_assign_need_temp): Remove NEST_FLAG argument from calls
950         to gfc_trans_nested_forall_loop.
951         (gfc_trans_pointer_assign_need_temp): Likewise.
952         (gfc_trans_forall_1): Remove unused BYTESIZE, TMPVAR, SIZEVAR and
953         LENVAR local variables.  Split mask allocation into a separate
954         hunk/pass from mask population.  Use allocate_temp_for_forall_nest
955         to allocate the FORALL mask with the correct size.  Update calls
956         to gfc_trans_nested_forall_loop.
957         (gfc_evaluate_where_mask): Update call to
958         gfc_trans_nested_forall_loop.
959         (gfc_trans_where_2): Likewise.
960
961 2007-01-15  Paul Thomas  <pault@gcc.gnu.org>
962
963         PR fortran/28172
964         * trans-stmt.c (gfc_trans_call): If it does not have one, get
965         a backend_decl for an alternate return.
966
967         PR fortran/29389
968         * resolve.c (pure_function): Statement functions are pure. Note
969         that this will have to recurse to comply fully with F95.
970
971         PR fortran/29712
972         * resolve.c (resolve_function): Only a reference to the final
973         dimension of an assumed size array is an error in an inquiry
974         function.
975
976         PR fortran/30283
977         * resolve.c (resolve_function): Make sure that the function
978         expression has a type.
979
980 2007-01-14  Paul Thomas  <pault@gcc.gnu.org>
981
982         PR fortran/30410
983         * trans-decl.c (gfc_sym_mangled_function_id): Module, external
984         symbols must not have the module name prepended.
985
986 2007-01-11  Thomas Koenig  <Thomas.Koenig@online.de>
987
988         PR libfortran/30415
989         * iresolve.c (gfc_resolve_maxloc): If the rank
990         of the return array is nonzero and we process an
991         integer array smaller than default kind, coerce
992         the array to default integer.
993         * iresolve.c (gfc_resolve_minloc): Likewise.
994
995 2007-01-11  Brooks Moses  <brooks.moses@codesourcery.com>
996
997         * simplify.c: Update copyright to 2007.
998         * scanner.c: Same.
999
1000 2007-01-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1001
1002         PR fortran/30430
1003         * scanner.c (gfc_release_include_path): Free gfc_option.module_dir
1004         only once!
1005
1006 2007-01-09  Brooks Moses  <brooks.moses@codesourcery.com>
1007
1008         * simplify.c (gfc_simplify_ibclr): Fix POS comparison.
1009         (gfc_simplify_ibset): Same.
1010
1011 2007-01-09  Brooks Moses  <brooks.moses@codesourcery.com>
1012
1013         PR 30381
1014         PR 30420
1015         * simplify.c (convert_mpz_to_unsigned): New function.
1016         (convert_mpz_to_signed): New function, largely based on
1017         twos_complement().
1018         (twos_complement): Removed.
1019         (gfc_simplify_ibclr): Add conversions to and from an
1020         unsigned representation before bit-twiddling.
1021         (gfc_simplify_ibset): Same.
1022         (gfc_simplify_ishftc): Add checks for overly large
1023         constant arguments, only check the third argument if
1024         it's present, carry over high bits into the result as
1025         appropriate, and perform the final conversion back to
1026         a signed representation using the correct sign bit.
1027         (gfc_simplify_not): Removed unnecessary masking.
1028
1029 2007-01-09  Paul Thomas  <pault@gcc.gnu.org>
1030
1031         PR fortran/30408
1032         * resolve.c (resolve_code): Use the code->expr character length
1033         directly to set length of llen.
1034
1035 2007-01-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1036
1037         PR fortran/30408
1038         * lang.opt: Add Wcharacter_truncation option.
1039         * options.c (gfc_init_options): Initialize
1040         gfc_option.warn_character_truncation to zero.
1041         (gfc_handle_option): Add case for OPT_Wcharacter_truncation.
1042
1043 2007-01-08  Steven G. Kargl  <kargl@gcc.gnu.org>
1044
1045         * interface.c, intrinsic.c, gfortranspec.c, io.c, f95-lang.c,
1046         iresolve.c, match.c: Update Copyright years.  Whitespace.
1047
1048 2007-01-08  Richard Guenther  <rguenther@suse.de>
1049
1050         * trans-io.c (transfer_array_desc): Use build_int_cst instead
1051         of build_int_cstu.
1052
1053 2007-01-08  Roger Sayle  <roger@eyesopen.com>
1054
1055         * trans-array.c (constant_array_constructor_p): New function to
1056         determine whether an array constructor consists only of constant
1057         elements, and if so return it's size.
1058         (gfc_build_constant_array_constructor): Construct a statically
1059         initialized gfortran array for a given EXPR_ARRAY.
1060         (gfc_trans_constant_array_constructor): Efficiently scalarize
1061         a constant array constructor.
1062         (gfc_trans_array_constructor): Tidy up use of CONST_STRING.
1063         Special case scalarization of constant array constructors, all of
1064         whose elements are specified, using constant_array_constructor_p 
1065         and gfc_trans_constant_array_constructor.
1066         (gfc_conv_scalarized_array_ref): Check whetger info->offset is zero
1067         before adding it to index, to avoid creating a NON_LVALUE_EXPR.
1068
1069 2007-01-08  Kazu Hirata  <kazu@codesourcery.com>
1070
1071         gfortran.texi: Fix typos.
1072
1073 2007-01-07  Steven G. Kargl  <kargl@gcc.gnu.org>
1074
1075         * decl.c, dump-parse-tree.c, error.c, data.c, expr.c, dependency.c,
1076         convert.c: Update Copyright dates.  Fix whitespace.
1077
1078 2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
1079
1080         * data.c (gfc_assign_data_value): Fix whitespace.
1081
1082 2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
1083
1084         * trans-array.c (gfc_trans_create_temp_array, gfc_array_init_size):
1085         Commentary typo fix.
1086
1087 2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
1088
1089         PR fortran/27698
1090         * match.c (gfc_match_name): Print diagnostics for invalid
1091         character in names.
1092
1093 2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
1094
1095         * array.c: Fix whitespace in comment table.
1096
1097 2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
1098
1099         * array.c, bbt.c, check.c: Update copyright years.  Whitespace.
1100
1101 2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
1102
1103         * arith.c: Update copyright years.  Whitespace.
1104
1105 2007-01-05  Roger Sayle  <roger@eyesopen.com>
1106
1107         * trans-expr.c (gfc_trans_assignment_1): New subroutine to scalarize
1108         array assignments split out from gfc_trans_assignment.
1109         (gfc_trans_array_copy): New function to implement array to array
1110         copies via calls to __builtin_memcpy.
1111         (copyable_array_p): New helper function to identify an array of
1112         simple/POD types, that may be copied/assigned using memcpy.
1113         (gfc_trans_assignment): Use gfc_trans_array_copy to handle simple
1114         whole array assignments considered suitable by copyable_array_p.
1115         Invoke gfc_trans_assignment_1 to perform the fallback scalarization.
1116
1117 2007-01-05  Roger Sayle  <roger@eyesopen.com>
1118
1119         * trans-array.c (gfc_trans_array_constructor_value): Make the
1120         static const "data" array as TREE_READONLY.
1121         * trans-stmt.c (gfc_trans_character_select): Likewise.
1122
1123 2007-01-05  Roger Sayle  <roger@eyesopen.com>
1124
1125         * trans-array.c (gfc_conv_loop_setup): Test whether the loop
1126         stride is one, to avoid fold_build2 introducing a useless
1127         NON_LVALUE_EXPR node.
1128
1129 2007-01-05  Tobias Burnus  <burnus@net-b.de>
1130
1131         * symbol.c (check_conflict): Fix error message.
1132
1133 2007-01-05  Paul Thomas  <pault@gcc.gnu.org>
1134
1135         PR fortran/23232
1136         * decl.c (gfc_in_match_data, gfc_set_in_match_data): New
1137         functions to signal that a DATA statement is being matched.
1138         (gfc_match_data): Call gfc_set_in_match_data on entry and on
1139         exit.
1140         * gfortran.h : Add prototypes for above.
1141         * expr.c (check_init_expr): Avoid check on parameter or
1142         variable if gfc_in_match_data is true.
1143         (gfc_match_init_expr): Do not call error on non-reduction of
1144         expression if gfc_in_match_data is true.
1145
1146         PR fortran/27996
1147         PR fortran/27998
1148         * decl.c (gfc_set_constant_character_len): Add boolean arg to
1149         flag array constructor resolution.  Warn if string is being
1150         truncated.  Standard dependent error if string is padded. Set
1151         new arg to false for all three calls to
1152         gfc_set_constant_character_len.
1153         * match.h : Add boolean arg to prototype for
1154         gfc_set_constant_character_len.
1155         * gfortran.h : Add warn_character_truncation to gfc_options.
1156         * options.c (set_Wall): Set warn_character_truncation if -Wall
1157         is set.
1158         * resolve.c (resolve_code): Warn if rhs string in character
1159         assignment has to be truncated.
1160         * array.c (gfc_resolve_character_array_constructor): Set new
1161         argument to true for call to gfc_set_constant_character_len.
1162
1163 2007-01-05  Tobias Burnus  <burnus@net-b.de>
1164
1165         PR fortran/29624
1166         * interface.c (compare_parameter_intent): New function.
1167           (check_intents): Support pointer intents.
1168         * symbol.c (check_conflict): Support pointer intents,
1169           better conflict_std message.
1170         * expr.c (gfc_check_assign,gfc_check_pointer_assign):
1171           Support pointer intents.
1172         * resolve.c (resolve_deallocate_expr,resolve_allocate_expr):
1173           Support pointer intents.
1174
1175 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1176
1177         PR 30371
1178         * check.c (gfc_check_kill_sub): Add checks for non-scalar
1179         arguments.
1180
1181 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
1182
1183         * intrinsic.texi: Minor cleanup, reflowing overlong
1184         paragraphs, and correcting whitespace.
1185
1186 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
1187
1188         * intrinsic.texi (LBOUND): Add documentation.
1189         (LGE): Add documentation.
1190         (LGT): Add documentation.
1191         (LINK): Add documentation.
1192         (LLE): Add documentation.
1193         (LLT): Add documentation.
1194         (LNBLNK): Add documentation.
1195         (UBOUND): Add documentation.
1196         (UNLINK): Add documentation.
1197
1198 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
1199
1200         * intrinsic.texi (IAND): Clarify argument specifications.
1201         (IBCLR): Add documentation.
1202         (IBITS): Add documentation.
1203         (IBSET): Add documentation.
1204         (IEOR): Add documentation.
1205         (IERRNO): Add documentation.
1206         (INDEX): Add documentation.
1207         (IOR): Add documentation.
1208         (ISHFT): Add documentation.
1209         (ISHFTC): Add documentation.
1210         (KILL): Add documentation.
1211         (LEN_TRIM): Add documentation.
1212
1213 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
1214
1215         PR 30235
1216         * interface.c (compare_actual_formal): check for
1217         alternate returns when iterating over non-present
1218         arguments.
1219
1220 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
1221
1222         * invoke.texi: Update manpage copyright to include 2007.
1223
1224 2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
1225
1226         * gfortran.texi: Update copyright to include 2007.
1227         * intrinsic.texi: Update copyright to include 2007.
1228         * invoke.texi: Update copyright to include 2007.
1229
1230 2007-01-02  Tobias Burnus  <burnus@net-b.de>
1231             Jakub Jelinek  <jakub@redhat.com>
1232
1233         PR fortran/30276
1234         * scanner.c (open_included_file): Revert patch.
1235           (gfc_open_included_file): Support absolute pathnames.
1236           (gfc_open_intrinsic_module): Support absolute pathnames.
1237
1238 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1239
1240         * gfortran.texi (GNU Fortran and GCC): Rewrite
1241
1242 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1243
1244         * gfortran.texi (Introduction): Lower "Part I:
1245         Introduction" to a chapter, renumber Parts II and III to
1246         Parts I and II.
1247         * intrinsic.texi (Introduction): Rename to "Introduction
1248         to Intrinsics" to avoid conflict with the new chapter.
1249
1250 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1251
1252         * intrinsic.texi (Introduction): Rewrite first paragraph.
1253
1254 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1255
1256         * invoke.texi (OpenMP): Added index entry.
1257         * gfortran.texi (title page): Removed erroneous '*'.
1258
1259 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1260
1261         * gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
1262         to description.
1263         (Extensions): Miscellaneous minor rewriting and copyediting.
1264         (BOZ-literal constants): Renamed from Hexadecimal constants.
1265         (Hollerith constants support): Added explanation and 
1266         suggestions for standard-conforming modern equivalents.
1267
1268 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1269
1270         * intrinsic.texi: Improvements to index entries; change
1271         @findex entries to @cindex entries.
1272         * invoke.texi: Standardize and improve index entries.
1273         * gfortran.texi: Fix @code in one index entry.
1274
1275 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1276
1277         * invoke.texi: Change @code-type macros to appropriate
1278         variants (@command, @option, etc.)
1279         * gfortran.texi: Same.
1280
1281 2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
1282
1283         * intrinsic.texi: Various minor cleanups.
1284
1285 2007-01-02  Steven G. Kargl  <kargls@comcast.net>
1286
1287         * trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to
1288         build_int_cst.
1289
1290 2007-01-02  Tobias Burnus  <burnus@net-b.de>
1291
1292         PR fortran/30276
1293         * scanner.c (open_included_file): Support full-path filenames.
1294
1295 2007-01-02  Paul Thomas  <pault@gcc.gnu.org>
1296
1297         PR fortran/20896
1298         * interface.c (check_sym_interfaces): Remove call to
1299         resolve_global_procedure.
1300         gfortran.h : Remove prototype for resolve_global_procedure.
1301         resolve.c (resolve_global_procedure): Add static attribute
1302         to function declaration.
1303
1304 2007-01-01  Steven G. Kargl  <kargls@comcast.net>
1305
1306         * ChangeLog: Copy to ...
1307         * ChangeLog-2006: here.