OSDN Git Service

c61ed9287ee709fbbd994f012cf78852c77af199
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
1 2011-01-11  Paul Thomas  <pault@gcc.gnu.org>
2
3         PR fortran/47051
4         * trans-array.c (gfc_alloc_allocatable_for_assignment): Change
5         to be standard compliant by testing for shape rather than size
6         before skipping reallocation. Improve comments.
7
8 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
9
10         PR fortran/47224
11         * resolve.c (resolve_actual_arglist): Remove unneeded and buggy piece
12         of code.
13
14 2011-01-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
15
16         PR fortran/38536
17         * resolve.c (is_scalar_expr_ptr):  For a substring reference,
18         use gfc_dep_compare_expr to compare start and end expession.
19         Add FIXME for using gfc_deb_compare_expr elsewhere.
20
21 2011-01-09  Janus Weil  <janus@gcc.gnu.org>
22
23         PR fortran/46313
24         * class.c (get_unique_type_string): Make type name start with upper
25         case letter.
26
27 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
28
29         PR fortran/46405
30         * invoke.texi:  Mention -ffree-line-length-none and
31         -ffixed-line-length-none for preprocessing.
32
33 2011-01-08  Paul Thomas  <pault@gcc.gnu.org>
34
35         PR fortran/46896
36         * trans-expr.c (gfc_conv_procedure_call): With a non-copying
37         procedure argument (eg TRANSPOSE) use a temporary if there is
38         any chance of aliasing due to host or use association.
39         (arrayfunc_assign_needs_temporary): Correct logic for function
40         results and do not use a temporary for implicitly PURE
41         variables.  Use a temporary for Cray pointees.
42         * symbol.c (gfc_add_save): Explicit SAVE not compatible with
43         implicit pureness of containing procedure.
44         * decl.c (match_old_style_init, gfc_match_data): Where decl
45         would fail in PURE procedure, set implicit_pure to zero.
46         * gfortran.h : Add implicit_pure to structure symbol_attr and
47         add prototype for function gfc_implicit_pure.
48         * expr.c (gfc_check_pointer_assign, gfc_check_vardef_context):
49         Where decl would fail in PURE procedure, reset implicit_pure.
50         * io.c (match_vtag, gfc_match_open, gfc_match_close,
51         gfc_match_print, gfc_match_inquire, gfc_match_wait): The same.
52         * match.c (gfc_match_critical, gfc_match_stopcode,
53         sync_statement, gfc_match_allocate, gfc_match_deallocate): The
54         same.
55         * parse.c (decode_omp_directive): The same.
56         (parse_contained): If not PURE, set implicit pure attribute.
57         * resolve.c (resolve_formal_arglist, resolve_structure_cons,
58         resolve_function, resolve_ordinary_assign) : The same.
59         (gfc_implicit_pure): New function.
60         * module.c (mio_symbol_attribute): Introduce AB_IMPLICIT_PURE
61         to ab_attribute enum and use it in this function.
62
63 2011-01-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
64
65         PR fortran/45777
66         * symbol.c (gfc_symbols_could_alias):  Strip gfc_ prefix,
67         make static and move in front of its only caller, to ...
68         * trans-array.c (symbols_could_alias): ... here.
69         Pass information about pointer and target status as
70         arguments.  Allocatable arrays don't alias anything
71         unless they have the POINTER attribute.
72         (gfc_could_be_alias):  Keep track of pointer and target
73         status when following references.  Also check if typespecs
74         of components match those of other components or symbols.
75
76 2011-01-07  Tobias Burnus  <burnus@net-b.de>
77
78         PR fortran/41580
79         * class.c (gfc_build_class_symbol): Mark __vtab as attr.vtab.
80         * intrinsic.c (add_functions): Use simplify functions for
81         EXTENDS_TYPE_OF and SAME_TYPE_AS.
82         * intrinsic.h (gfc_simplify_extends_type_of,
83         gfc_simplify_same_type_as): New prototypes.
84         * simplify.c (is_last_ref_vtab, gfc_simplify_extends_type_of,
85         gfc_simplify_same_type_as): New functions.
86
87 2011-01-07  Janus Weil  <janus@gcc.gnu.org>
88
89         PR fortran/47189
90         PR fortran/47194
91         * gfortran.h (gfc_lval_expr_from_sym): Moved prototype.
92         * class.c (gfc_class_null_initializer): Initialize _vptr to declared
93         type.
94         * expr.c (gfc_lval_expr_from_sym): Moved here from symbol.c.
95         * resolve.c (resolve_deallocate_expr): _data component will be added
96         at translation stage.
97         * symbol.c (gfc_lval_expr_from_sym): Moved to expr.c.
98         * trans-stmt.c (gfc_trans_deallocate): Reset _vptr to declared type.
99
100 2011-01-06  Daniel Franke  <franke.daniel@gmail.com>
101
102         PR fortran/33117
103         PR fortran/46478
104         * parse.c (parse_interface): Remove check for procedure types.
105         * interface.c (check_interface0): Verify that procedures are
106         either all SUBROUTINEs or all FUNCTIONs.
107
108 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
109
110         PR fortran/47180
111         * trans-expr.c (gfc_trans_class_assign): Bugfix for r168524 (make sure
112         'vtab' is initialized).
113
114 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
115
116         PR fortran/47180
117         * trans-expr.c (gfc_trans_class_assign): For a polymorphic NULL pointer
118         assignment, set the _vptr component to the declared type.
119
120 2011-01-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
121
122         PR fortran/46017
123         * resolve.c (resolve_allocate_deallocate): Follow references to
124         check for duplicate occurence of allocation/deallocation objects.
125
126 2011-01-05  Janus Weil  <janus@gcc.gnu.org>
127
128         PR fortran/47024
129         * trans-decl.c (gfc_trans_deferred_vars): Initialize the _vpr component
130         of polymorphic allocatables according to their declared type.
131
132 2011-01-04  Janus Weil  <janus@gcc.gnu.org>
133
134         PR fortran/46448
135         * class.c (gfc_find_derived_vtab): Set the module field for the copying
136         routine to make sure it receives module name mangling.
137
138 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
139
140         * gfortranspec.c (lang_specific_driver): Update copyright notice
141         dates.
142
143 2011-01-03  Janus Weil  <janus@gcc.gnu.org>
144
145         * intrinsic.texi (LEADZ): Fix example.
146
147 2011-01-02  Janus Weil  <janus@gcc.gnu.org>
148
149         PR fortran/46408
150         * class.c (gfc_find_derived_vtab): Use EXEC_INIT_ASSIGN for __copy_
151         routine.
152
153 \f
154 Copyright (C) 2011 Free Software Foundation, Inc.
155
156 Copying and distribution of this file, with or without modification,
157 are permitted in any medium without royalty provided the copyright
158 notice and this notice are preserved.