OSDN Git Service

97a2fcac79272cfdd867e7803f01980a932786df
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
1 2010-04-06  Tobias Burnus  <burnus@net-b.de>
2
3         PR fortran/43178
4         * trans-array.c (gfc_conv_expr_descriptor): Update
5         gfc_trans_scalar_assign call.
6         (has_default_initializer): New function.
7         (gfc_trans_deferred_array): Nullify less often.
8         * trans-expr.c (gfc_conv_subref_array_arg,
9         gfc_trans_subcomponent_assign): Update call to
10         gfc_trans_scalar_assign.
11         (gfc_trans_scalar_assign): Add parameter and pass it on.
12         (gfc_trans_assignment_1): Optionally, do not dealloc before
13         assignment.
14         * trans-openmp.c (gfc_trans_omp_array_reduction): Update
15         call to gfc_trans_scalar_assign.
16         * trans-decl.c (gfc_get_symbol_decl): Do not always apply
17         initializer to static variables.
18         (gfc_init_default_dt): Add dealloc parameter and pass it on.
19         * trans-stmt.c (forall_make_variable_temp,
20         generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
21         gfc_trans_forall_1, gfc_trans_where_assign, gfc_trans_where_3
22         gfc_trans_allocate): Update gfc_trans_assignment call.
23         * trans.h (gfc_trans_scalar_assign, gfc_init_default_dt,
24         gfc_init_default_dt, gfc_trans_assignment): Add bool dealloc
25         parameter to prototype.
26
27 2010-03-31  Paul Thomas  <pault@gcc.gnu.org>
28
29         * ioparm.def : Update copyright.
30         * lang.opt : ditto
31         * trans-array.c : ditto
32         * trans-array.h : ditto
33         * expr.c: ditto
34         * trans-types.c: ditto
35         * dependency.c : ditto
36         * gfortran.h : ditto
37         * options.c : ditto
38         * trans-io.c : ditto
39         * trans-intrinsic.c : ditto
40         * libgfortran.h : ditto
41         * invoke.texi : ditto
42         * intrinsic.texi : ditto
43         * trans.c : ditto
44         * trans.h : ditto
45         * intrinsic.c : ditto
46         * interface.c : ditto
47         * iresolve.c : ditto
48         * trans-stmt.c : ditto
49         * trans-stmt.h : ditto
50         * parse,c : ditto
51         * match.h : ditto
52         * error.c : ditto
53
54 2010-03-20  Paul Thomas  <pault@gcc.gnu.org>
55
56         PR fortran/43450
57         * trans-decl.c (gfc_create_module_variable): With -fwhole-file
58         do not assert the context of derived types.
59
60 2010-03-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
61
62         PR fortran/43409
63         * ioparm.def: Change inquire size variable to type pointer to
64         GFC_IO_INT type.
65
66 2010-03-18  Paul Thomas  <pault@gcc.gnu.org>
67
68         PR fortran/43039
69         * trans-expr.c (conv_parent_component_references): Ensure that
70         'dt' has a backend_decl.
71
72         PR fortran/43043
73         * trans-expr.c (gfc_conv_structure): Ensure that the derived
74         type has a backend_decl.
75
76         PR fortran/43044
77         * resolve.c (resolve_global_procedure): Check that the 'cl'
78         structure is not NULL.
79
80 2010-03-18  Shujing Zhao  <pearly.zhao@oracle.com>
81
82         * lang.opt (-ffixed-line-length-, ffree-line-length-): Remove
83         redundant tab.
84
85 2010-03-17  Tobias Burnus  <burnus@net-b.de>
86
87         PR fortran/43331
88         * trans-array.c (gfc_conv_array_index_offset,gfc_conv_array_ref,
89         gfc_conv_ss_startstride): Remove no-longer-needed cp_was_assumed
90         check.
91         * decl.c (gfc_match_derived_decl): Don't mark assumed-size Cray
92         pointees as having explizit size.
93         * expr.c (gfc_check_assign): Remove now unreachable Cray pointee
94         check.
95         * trans-types.c (gfc_is_nodesc_array): Add cp_was_assumed to assert.
96         (gfc_sym_type): Don't mark Cray pointees as restricted pointers.
97         * resolve.c (resolve_symbol): Handle cp_was_assumed.
98         * trans-decl.c (gfc_trans_deferred_vars): Ditto.
99         (gfc_finish_var_decl): Don't mark Cray pointees as restricted
100         pointers.
101
102 2010-03-14  Tobias Burnus  <burnus@net-b.de>
103
104         PR fortran/43362
105         * resolve.c (resolve_structure_cons): Add missing PURE constraint.
106         (resolve_ordinary_assign): Add check to avoid segfault.
107
108 2010-03-12  Paul Thomas  <pault@gcc.gnu.org>
109
110         PR fortran/43291
111         PR fortran/43326
112         * resolve.c (resolve_compcall): Add new boolean dummy argument
113         'class_members'. Only resolve expression at end if false.
114         Remove redundant, static variable 'class_object'.
115         (check_class_members): Add extra argument to call of
116         resolve_compcall.
117         (resolve_typebound_function): Renamed resolve_class_compcall.
118         Do all the detection of class references here. Correct calls to
119         resolve_compcall for extra argument.
120         (resolve_typebound_subroutine): resolve_class_typebound_call
121         renamed. Otherwise same as resolve_typebound_function.
122         (gfc_resolve_expr): Call resolve_typebound_function.
123         (resolve_code): Call resolve_typebound_subroutine.
124
125 2010-03-10  Tobias Burnus  <burnus@net-b.de
126
127         PR fortran/43303
128         * symbol.c (get_iso_c_sym): Set sym->result.
129
130 2010-03-08  Janus Weil  <janus@gcc.gnu.org>
131
132         PR fortran/43256
133         * resolve.c (resolve_compcall): Don't set 'value.function.name' here
134         for TBPs, otherwise they will not be resolved properly.
135         (resolve_function): Use 'value.function.esym' instead of
136         'value.function.name' to check if we're dealing with a TBP.
137         (check_class_members): Set correct type of passed object for all TBPs,
138         not only generic ones, except if the type is abstract.
139
140 2010-03-04  Janus Weil  <janus@gcc.gnu.org>
141
142         PR fortran/43244
143         * decl.c (gfc_match_final_decl): Make sure variable names starting with
144         'final...' are not misinterpreted as FINAL statements.
145
146 2010-03-03  Paul Thomas  <pault@gcc.gnu.org>
147
148         PR fortran/43243
149         * trans-array.c (gfc_conv_array_parameter): Contiguous refs to
150         allocatable ultimate components do not need temporaries, whilst
151         ultimate pointer components do.
152
153 2010-03-03  Janus Weil  <janus@gcc.gnu.org>
154
155         PR fortran/43169
156         * resolve.c (resolve_code): Correctly set gfc_current_ns for
157         EXEC_SELECT_TYPE.
158         (gfc_impure_variable): Make it work with sub-namespaces (BLOCK etc).
159         (gfc_pure): Ditto.
160
161 2010-03-02  Paul Thomas  <pault@gcc.gnu.org>
162
163         PR fortran/43180
164         * trans-array.c (gfc_conv_array_parameter): A full array of
165         derived type need not be restricted to a symbol without an
166         array spec to use the call to gfc_conv_expr_descriptor.
167
168         PR fortran/43173
169         * trans-array.c (gfc_conv_array_parameter): Contiguous refs to
170         allocatable arrays do not need temporaries.
171
172 2010-03-01  Tobias Burnus  <burnus@net-b.de>
173
174         PR fortran/43199
175         * resolve.c (find_array_spec): Handle REF_COMPONENT with
176         CLASS components.
177
178 2010-02-28  Tobias Burnus  <burnus@net-b.de>
179
180         PR fortran/43205
181         * trans-expr.c (is_zero_initializer_p): Move up in the file.
182         (gfc_conv_initializer): Handle zero initializer as special case.
183
184 2010-02-27  Tobias Burnus  <burnus@net-b.de>
185
186         PR fortran/43185
187         * resolve.c (resolve_fl_variable_derived): Imply SAVE
188         for module variables for Fortran 2008.
189
190 2010-02-25  Jakub Jelinek  <jakub@redhat.com>
191
192         PR debug/43166
193         * trans-common.c (build_common_decl): Also update DECL_MODE,
194         and DECL_SIZE when encountering a larger common block and call
195         layout_decl.
196
197 2010-02-24  Tobias Burnus  <burnus@net-b.de>              
198
199         PR fortran/43042
200         * trans-expr.c (gfc_conv_initializer): Call directly
201         gfc_conv_constant for C_NULL_(FUN)PTR.              
202
203 2010-02-22  Paul Thomas  <pault@gcc.gnu.org>
204
205         PR fortran/43072
206         * dependency.c (gfc_full_array_ref_p): Check for contiguous by
207         checking the rest of the dimensions for elements.
208
209 2010-02-21  Tobias Burnus  <burnus@net-b.de>
210
211         PR fortran/35259
212         * gfortran.h (gfc_option_t): New flag -fprotect-parens.
213         * lang.opt: Ditto.
214         * option.c (gfc_init_options,gfc_handle_option): Ditto.
215         * trans-expr.c (gfc_conv_expr_op): Use the flag.
216         * invoke.texi: Document new -fno-protect-parens flag.
217
218 2010-02-20  Paul Thomas  <pault@gcc.gnu.org>
219
220         PR fortran/36932
221         PR fortran/36933
222         PR fortran/43072
223         PR fortran/43111
224         * dependency.c (gfc_check_argument_var_dependency): Use enum
225         value instead of arithmetic vaue for 'elemental'.
226         (check_data_pointer_types): New function.
227         (gfc_check_dependency): Call check_data_pointer_types.
228         * trans-array.h : Change fourth argument of
229         gfc_conv_array_parameter to boolean.
230         * trans-array.c (gfc_conv_array_parameter): A contiguous array
231         can be a dummy but it must not be assumed shape or deferred.
232         Change fourth argument to boolean. Array constructor exprs will
233         always be contiguous and do not need packing and unpacking.
234         * trans-expr.c (gfc_conv_procedure_call): Clean up some white
235         space and change fourth argument of gfc_conv_array_parameter
236         to boolean.
237         (gfc_trans_arrayfunc_assign): Change fourth argument of
238         gfc_conv_array_parameter to boolean.
239         * trans-io.c (gfc_convert_array_to_string): The same.
240         * trans-intrinsic.c (gfc_conv_intrinsic_loc): The same.
241
242 2010-02-20  Tobias Burnus  <burnus@net-b.de>
243
244         PR fortran/42958
245         * libgfortran.h: Add GFC_RTCHECK_MEM.
246         * invoke.texi (-fcheck=): Document -fcheck=mem.
247         * tranc.c (gfc_call_malloc): Remove negative-size run-time error
248         and enable malloc-success check only with -fcheck=mem.
249         * option.c (gfc_handle_runtime_check_option): Add -fcheck=mem.
250
251 2010-02-16  Tobias Burnus  <burnus@net-b.de>
252
253         PR fortran/43040
254         * gfortran.h (gfc_isym_id): Rename GFS_ISYM_GAMMA to GFS_ISYM_TGAMMA.
255         * intrinsic.c (add_functions): Ditto.
256         * iresolve.c (gfc_resolve_gamma): Call tgamma instead of gamma.
257         * mathbuiltins.def: Use TGAMMA instead of GAMMA with "tgamma".
258
259 2010-02-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
260
261         PR fortran/32382
262         * trans-stmt.h: Add prototype for gfc_trans_code_cond. Add tree cond to
263         gfc_trans_do prototype.
264         * trans-stmt.c (gfc_trans_simple_do): Add optional argument to pass in
265         a loop exit condition.  If exit condition is given, build the loop exit
266         code, checking IO results of implied do loops in READ and WRITE.
267         (gfc_trans_do): Likewise.
268         * trans.c (trans_code): New static work function, previously
269         gfc_trans_code. Passes exit condition to gfc_trans_do.
270         (gfc_trans_code): Calls trans_code with NULL_TREE condition.
271         (gfc_trans_code_cond): Calls trans_code with loop exit condition.
272         * trans-io.c (build_dt): Build an exit condition to allow checking IO
273         result status bits in the dtparm structure. Use this condition in call
274         to gfc_trans_code_cond.
275
276 2010-02-13  Paul Thomas  <pault@gcc.gnu.org>
277
278         PR fortran/41113
279         PR fortran/41117
280         * trans-array.c (gfc_conv_array_parameter): Use
281         gfc_full_array_ref_p to detect full and contiguous variable
282         arrays. Full array components and contiguous arrays do not need
283         internal_pack and internal_unpack.
284
285 2010-02-11  Jakub Jelinek  <jakub@redhat.com>
286
287         PR fortran/43030
288         * resolve.c (gfc_resolve_dim_arg): Call gfc_clear_ts.
289
290         PR fortran/43029
291         * decl.c (enumerator_decl): Don't call gfc_free_enum_history
292         here.
293         (gfc_match_enumerator_def): But here whenever enumerator_decl returns
294         MATCH_ERROR.
295
296 2010-02-10  Joost VandeVondele <jv244@cam.ac.uk>
297             Tobias Burnus <burnus@net-b.de>
298
299         PR fortran/40823
300         * decl.c (gfc_match_subroutine): Explicitly set sym->declared_at.
301
302 2010-02-10  Tobias Burnus  <burnus@net-b.de>
303
304         PR fortran/43015
305         * trans-decl.c (gfc_generate_function_code): Only check
306         actual-vs.-dummy character bounds if not bind(C).
307
308 2010-02-10  Jakub Jelinek  <jakub@redhat.com>
309
310         PR fortran/42309
311         * trans-expr.c (gfc_conv_subref_array_arg): Avoid accessing
312         info->dimen after info has been freed.
313
314 2010-02-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
315
316         PR fortran/42999
317         * array.c (gfc_constant_ac): Do not prevent expansion of constructors
318         with iterators.
319
320 2010-02-09  Jakub Jelinek  <jakub@redhat.com>
321
322         * module.c (fix_mio_expr): Declare sym.
323
324 2010-02-09  Paul Thomas  <pault@gcc.gnu.org>
325
326         PR fortran/41869
327         * module.c (fix_mio_expr): Fix for private generic procedures.
328
329 2010-02-09  Daniel Kraft  <d@domob.eu>
330
331         PR fortran/39171
332         * resolve.c (resolve_charlen): Change warning about negative CHARACTER
333         length to be correct and issue only with -Wsurprising.
334         * invoke.texi (Wsurprising): Mention this new warning that is
335         turned on by -Wsurprising.
336
337 2010-02-09  Daniel Kraft  <d@domob.eu>
338
339         PR fortran/41507
340         * intrinsic.texi (MAXVAL): Remove wrong claim that array argument
341         can be CHARACTER type.
342         (MINVAL), (MAXLOC), (MINLOC): Ditto.
343
344 2010-02-05  Paul Thomas  <pault@gcc.gnu.org>
345
346         PR fortran/42309
347         * trans-expr.c (gfc_conv_subref_array_arg): Add new argument
348         'formal_ptr'. If this is true, give returned descriptor unity
349         lbounds, in all dimensions, and the appropriate offset.
350         (gfc_conv_procedure_call); If formal is a pointer, set the last
351         argument of gfc_conv_subref_array_arg to true.
352         * trans.h : Add last argument for gfc_conv_subref_array_arg.
353         * trans-io.c (set_internal_unit, gfc_trans_transfer): Set the
354         new arg of gfc_conv_subref_array_arg to false.
355         * trans-stmt.c (forall_make_variable_temp): The same.
356
357 2010-02-03  Tobias Burnus  <burnus@net-b.de>
358
359         PR fortran/42936
360         * interface.c (compare_parameter): Disable rank-checking
361         for NULL().
362
363 2010-02-02  Tobias Burnus  <burnus@net-b.de>
364
365         PR fortran/42650
366         * parse.c (decode_specification_statement): Use sym->result not sym.
367
368 2010-02-01  Tobias Burnus  <burnus@net-b.de>
369
370         PR fortran/42922
371         * decl.c (variable_decl): Allow default initializer in
372         TYPE declarations in PURE functions.
373
374 2010-01-31  Janus Weil  <janus@gcc.gnu.org>
375
376         PR fortran/42888
377         * resolve.c (resolve_allocate_expr): Move default initialization code
378         here from gfc_trans_allocate.
379         * trans.c (gfc_trans_code): Call gfc_trans_class_assign also for
380         EXEC_INIT_ASSIGN.
381         * trans-expr.c (gfc_trans_class_assign): Handle default initialization
382         of CLASS variables via memcpy.
383         * trans-stmt.c (gfc_trans_allocate): Move default initialization code
384         to resolve_allocate_expr.
385
386 2010-01-31  Paul Thomas  <pault@gcc.gnu.org>
387
388         PR fortran/38324
389         * expr.c (gfc_get_full_arrayspec_from_expr): New function.
390         * gfortran.h : Add prototype for above.
391         * trans-expr.c (gfc_trans_alloc_subarray_assign): New function.
392         (gfc_trans_subcomponent_assign): Call new function to replace
393         the code to deal with allocatable components.
394         * trans-intrinsic.c (gfc_conv_intrinsic_bound): Call
395         gfc_get_full_arrayspec_from_expr to replace existing code.
396
397 2010-01-25  Tobias Burnus  <burnus@net-b.de>
398
399         PR fortran/42858
400         * array.c (gfc_array_dimen_size): Fix intrinsic procedure
401         check.
402
403 2010-01-24  Paul Thomas  <pault@gcc.gnu.org>
404
405         PR fortran/41044
406         PR fortran/41167
407         * expr.c (remove_subobject_ref): If the constructor is NULL use
408         the expression as the source.
409         (simplify_const_ref): Change the type of expression if
410         there are component references.  Allow for substring to be at
411         the end of an arbitrarily long chain of references.  If an
412         element is found that is not in an EXPR_ARRAY, assume that this
413         is scalar initialization of array. Call remove_subobject_ref in
414         this case with NULL second argument.
415
416 2010-01-24  Tobias Burnus  <burnus@net-b.de>
417
418         PR fortran/39304
419         * array.c (gfc_array_dimen_size): Use correct specific
420         function in the check.
421
422 2010-01-21  Paul Thomas  <pault@gcc.gnu.org>
423
424         PR fortran/42736
425         * trans-stmt.c (gfc_conv_elemental_dependencies): If temporary
426         is required, turn any trailing array elements after a range
427         into ranges so that offsets can be calculated.
428
429 2010-01-20  Joern Rennecke  <amylaar@spamcop.net>
430
431         * module.c (mio_f2k_derived): Use enumerator as initializer of
432         enum variable.
433
434         PR bootstrap/42812
435         * gfortran.h  (struct gfc_namespace) <resolved>: Change to signed
436         bitfield of width 2.
437
438 2010-01-19  Janus Weil  <janus@gcc.gnu.org>
439
440         PR fortran/42804
441         * resolve.c (extract_compcall_passed_object): Set locus for
442         passed-object argument.
443         (extract_ppc_passed_object): Set locus and correctly remove PPC
444         reference.
445
446 2010-01-19  Paul Thomas  <pault@gcc.gnu.org>
447
448         PR fortran/42783
449         * trans-decl.c (add_argument_checking): Do not use the backend
450         decl directly to test for the presence of an optional dummy
451         argument.  Use gfc_conv_expr_present, remembering to set the
452         symbol referenced.
453
454         PR fortran/42772
455         * trans-decl.c (gfc_generate_function_code): Small white space
456         changes. If 'recurcheckvar' is NULL do not try to reset it.
457
458 2010-01-19  Janus Weil  <janus@gcc.gnu.org>
459
460         PR fortran/42545
461         * resolve.c (resolve_fl_derived): Set the accessibility of the parent
462         component for extended types.
463         * symbol.c (gfc_find_component): Remove a wrongly-worded error message
464         and take care of parent component accessibility.
465
466 2010-01-17  Janus Weil  <janus@gcc.gnu.org>
467
468         PR fortran/42677
469         * gfortran.h (symbol_attribute): Remove 'ambiguous_interfaces'.
470         * interface.c (check_interface1): Move a warning message here from
471         resolve_fl_procedure.
472         (check_sym_interfaces): Removed 'attr.ambiguous_interfaces'.
473         * module.c (read_module): Remove call to gfc_check_interfaces, since
474         this comes too early here.
475         * resolve.c (resolve_fl_procedure): Move warning message to
476         check_interface1.
477
478 2010-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
479
480         PR fortran/42684
481         * interface.c (check_interface1): Pass symbol name rather than NULL to
482         gfc_compare_interfaces. (gfc_compare_interfaces): Add assert to
483         trap MULL.
484         * resolve.c (check_generic_tbp_ambiguity): Pass symbol name rather
485         than NULL to gfc_compare_interfaces.
486
487 2010-01-14  Paul Thomas  <pault@gcc.gnu.org>
488
489         PR fortran/41478
490         * trans-array.c (duplicate_allocatable):  Static version of
491         gfc_duplicate_allocatable with provision to handle scalar
492         components. New boolean argument to switch off call to malloc
493         if true.
494         (gfc_duplicate_allocatable): New function to call above with
495         new argument false.
496         (gfc_copy_allocatable_data): New function to call above with
497         new argument true.
498         (structure_alloc_comps): Do not apply indirect reference to
499         scalar pointers. Add new section to copy allocatable components
500         of arrays. Extend copying of allocatable components to include
501         scalars.
502         (gfc_copy_only_alloc_comp): New function to copy allocatable
503         component derived types, without allocating the base structure.
504         * trans-array.h : Add primitive for gfc_copy_allocatable_data.
505         Add primitive for gfc_copy_only_alloc_comp.
506         * trans-expr.c (gfc_conv_procedure_call): After calls to
507         transformational functions with results that are derived types
508         with allocatable components, copy the components in the result.
509         (gfc_trans_arrayfunc_assign): Deallocate allocatable components
510         of lhs derived types before allocation.
511         
512 2010-01-14  Paul Thomas  <pault@gcc.gnu.org>
513
514         PR fortran/42481
515         * module.c (load_generic_interfaces): If a procedure that is
516         use associated but not generic is given an interface that
517         includes itself, then make it generic.
518
519 2010-01-11  Joseph Myers  <joseph@codesourcery.com>  
520             Shujing Zhao  <pearly.zhao@oracle.com>
521
522         PR translation/42469
523         * lang.opt (fblas-matmul-limit=, finit-character=, finit-integer=,
524         finit-logical=, finit-real=, fmax-array-constructor=): Use tab
525         character between option name and help text.
526
527 2010-01-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
528
529         PR fortran/20923
530         PR fortran/32489
531         * trans-array.c (gfc_conv_array_initializer): Change call to
532         gfc_error_now to call to gfc_fatal_error.
533         * array.c (count_elements): Whitespace. (extract_element): Whitespace.
534         (is_constant_element): Changed name from constant_element.
535         (gfc_constant_ac): Only use expand_construuctor for expression
536         types of EXPR_ARRAY.  If expression type is EXPR_CONSTANT, no need to
537         call gfc_is_constant_expr.
538         * expr.c (gfc_reduce_init_expr): Adjust conditionals and delete error
539         message.
540         * resolve.c (gfc_is_expandable_expr): New function that determiners if
541         array expressions should have their constructors expanded.
542         (gfc_resolve_expr): Use new function to determine whether or not to call
543         gfc_expand_constructor.
544
545 2010-01-09  Tobias Burnus  <burnus@net-b.de>
546
547         PR fortran/41298
548         * trans-expr.c (gfc_trans_structure_assign): Handle
549         c_null_(fun)ptr.
550         * symbol.c (gen_special_c_interop_ptr): Add NULL_EXPR
551         to the constructor for c_null_(fun)ptr.
552         * resolve.c (resolve_structure_cons): Add special case
553         for c_null_(fun)ptr.
554
555 2010-01-09  Jakub Jelinek  <jakub@redhat.com>
556
557         * gfortranspec.c (lang_specific_driver): Update copyright notice
558         dates.
559
560 2010-01-08  Tobias Burnus  <burnus@net-b.de>
561
562         PR/fortran 25829
563         * symbol.c (check_conflict, gfc_copy_attr): Add
564         ASYNCHRONOUS support.
565         (gfc_add_asynchronous): New function.
566         * decl.c (match_attr_spec): Add ASYNCHRONOUS support.
567         (gfc_match_asynchronous): New function.
568         * dump-parse-tree.c (show_attr): Add ASYNCHRONOUS support.
569         * gfortran.h (symbol_attribute): New ASYNCHRONOUS bit.
570         (gfc_add_asynchronous): New Prototype.
571         * module.c (ab_attribute, mio_symbol_attribute): Add
572         ASYNCHRONOUS support.
573         * resolve.c (was_declared): Ditto.
574         * match.h (gfc_match_asynchronous): New prototype.
575         * parse.c (decode_specification_statement,decode_statement):
576         Add ASYNCHRONOUS support.
577
578 2010-01-07  Tobias Burnus  <burnus@net-b.de>
579
580         PR fortran/42597
581         * trans-decl.c (get_proc_pointer_decl): Fix call to
582         gfc_conv_initializer for array-valued proc-pointer funcs.
583
584 2010-01-07  Tobias Burnus  <burnus@net-b.de>
585
586         PR fortran/41872
587         * trans-decl.c (gfc_trans_deferred_vars): Don't initialize
588         allocatable scalars with SAVE attribute.
589
590 2010-01-05  Tobias Burnus  <burnus@net-b.de>
591
592         PR fortran/42517
593         * options.c (gfc_post_options): Set -frecursion
594         when -fopenmp is used.
595
596 2010-01-05  Tobias Burnus  <burnus@net-b.de>
597
598         PR fortran/41872
599         * trans-expr.c (gfc_conv_procedure_call): Nullify
600         return value for allocatable-scalar character functions.
601
602 2010-01-04  Tobias Burnus  <burnus@net-b.de>
603
604         PR fortran/36161
605         * error.c (error_printf, gfc_warning, gfc_notify_std,
606         gfc_warning_now, gfc_error, gfc_error_now,
607         gfc_fatal_error): Change argument name from nocmsgid to
608         gmsgid to enable (x)gettext's % checking.
609
610 2010-01-04  Tobias Burnus  <burnus@net-b.de>
611         
612         * trans-decl.c (gfc_trans_deferred_vars): Fix spelling.
613
614 2010-01-04  Tobias Burnus  <burnus@net-b.de>
615
616         PR fortran/41872
617         * trans-expr.c (gfc_conv_procedure_call): Add indirect ref
618         for functions returning allocatable scalars.
619         * trans-stmt.c (gfc_trans_allocate): Emmit error when
620         reallocating an allocatable scalar.
621         * trans.c (gfc_allocate_with_status): Fix pseudocode syntax
622         in comment.
623         * trans-decl.c (gfc_trans_deferred_vars): Nullify local
624         allocatable scalars.
625         (gfc_generate_function_code): Nullify result variable for
626         allocatable scalars.
627         
628         PR fortran/40849
629         * module.c (gfc_use_module): Fix warning string to allow
630         for translation.
631
632         PR fortran/42517
633         * invoke.texi (-fcheck=recursion): Mention that the checking
634         is also disabled for -frecursive.
635         * trans-decl.c (gfc_generate_function_code): Disable
636         -fcheck=recursion when -frecursive is used.
637
638         * intrinsic.texi (iso_c_binding): Improve wording.
639
640 \f
641 Copyright (C) 2010 Free Software Foundation, Inc.
642
643 Copying and distribution of this file, with or without modification,
644 are permitted in any medium without royalty provided the copyright
645 notice and this notice are preserved.