1 2011-01-08 Paul Thomas <pault@gcc.gnu.org>
4 * trans-expr.c (gfc_conv_procedure_call): With a non-copying
5 procedure argument (eg TRANSPOSE) use a temporary if there is
6 any chance of aliasing due to host or use association.
7 (arrayfunc_assign_needs_temporary): Correct logic for function
8 results and do not use a temporary for implicitly PURE
9 variables. Use a temporary for Cray pointees.
10 * symbol.c (gfc_add_save): Explicit SAVE not compatible with
11 implicit pureness of containing procedure.
12 * decl.c (match_old_style_init, gfc_match_data): Where decl
13 would fail in PURE procedure, set implicit_pure to zero.
14 * gfortran.h : Add implicit_pure to structure symbol_attr and
15 add prototype for function gfc_implicit_pure.
16 * expr.c (gfc_check_pointer_assign, gfc_check_vardef_context):
17 Where decl would fail in PURE procedure, reset implicit_pure.
18 * io.c (match_vtag, gfc_match_open, gfc_match_close,
19 gfc_match_print, gfc_match_inquire, gfc_match_wait): The same.
20 * match.c (gfc_match_critical, gfc_match_stopcode,
21 sync_statement, gfc_match_allocate, gfc_match_deallocate): The
23 * parse.c (decode_omp_directive): The same.
24 (parse_contained): If not PURE, set implicit pure attribute.
25 * resolve.c (resolve_formal_arglist, resolve_structure_cons,
26 resolve_function, resolve_ordinary_assign) : The same.
27 (gfc_implicit_pure): New function.
28 * module.c (mio_symbol_attribute): Introduce AB_IMPLICIT_PURE
29 to ab_attribute enum and use it in this function.
31 2011-01-08 Thomas Koenig <tkoenig@gcc.gnu.org>
34 * symbol.c (gfc_symbols_could_alias): Strip gfc_ prefix,
35 make static and move in front of its only caller, to ...
36 * trans-array.c (symbols_could_alias): ... here.
37 Pass information about pointer and target status as
38 arguments. Allocatable arrays don't alias anything
39 unless they have the POINTER attribute.
40 (gfc_could_be_alias): Keep track of pointer and target
41 status when following references. Also check if typespecs
42 of components match those of other components or symbols.
44 2011-01-07 Tobias Burnus <burnus@net-b.de>
47 * class.c (gfc_build_class_symbol): Mark __vtab as attr.vtab.
48 * intrinsic.c (add_functions): Use simplify functions for
49 EXTENDS_TYPE_OF and SAME_TYPE_AS.
50 * intrinsic.h (gfc_simplify_extends_type_of,
51 gfc_simplify_same_type_as): New prototypes.
52 * simplify.c (is_last_ref_vtab, gfc_simplify_extends_type_of,
53 gfc_simplify_same_type_as): New functions.
55 2011-01-07 Janus Weil <janus@gcc.gnu.org>
59 * gfortran.h (gfc_lval_expr_from_sym): Moved prototype.
60 * class.c (gfc_class_null_initializer): Initialize _vptr to declared
62 * expr.c (gfc_lval_expr_from_sym): Moved here from symbol.c.
63 * resolve.c (resolve_deallocate_expr): _data component will be added
65 * symbol.c (gfc_lval_expr_from_sym): Moved to expr.c.
66 * trans-stmt.c (gfc_trans_deallocate): Reset _vptr to declared type.
68 2011-01-06 Daniel Franke <franke.daniel@gmail.com>
72 * parse.c (parse_interface): Remove check for procedure types.
73 * interface.c (check_interface0): Verify that procedures are
74 either all SUBROUTINEs or all FUNCTIONs.
76 2011-01-05 Janus Weil <janus@gcc.gnu.org>
79 * trans-expr.c (gfc_trans_class_assign): Bugfix for r168524 (make sure
80 'vtab' is initialized).
82 2011-01-05 Janus Weil <janus@gcc.gnu.org>
85 * trans-expr.c (gfc_trans_class_assign): For a polymorphic NULL pointer
86 assignment, set the _vptr component to the declared type.
88 2011-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
91 * resolve.c (resolve_allocate_deallocate): Follow references to
92 check for duplicate occurence of allocation/deallocation objects.
94 2011-01-05 Janus Weil <janus@gcc.gnu.org>
97 * trans-decl.c (gfc_trans_deferred_vars): Initialize the _vpr component
98 of polymorphic allocatables according to their declared type.
100 2011-01-04 Janus Weil <janus@gcc.gnu.org>
103 * class.c (gfc_find_derived_vtab): Set the module field for the copying
104 routine to make sure it receives module name mangling.
106 2011-01-03 Jakub Jelinek <jakub@redhat.com>
108 * gfortranspec.c (lang_specific_driver): Update copyright notice
111 2011-01-03 Janus Weil <janus@gcc.gnu.org>
113 * intrinsic.texi (LEADZ): Fix example.
115 2011-01-02 Janus Weil <janus@gcc.gnu.org>
118 * class.c (gfc_find_derived_vtab): Use EXEC_INIT_ASSIGN for __copy_
122 Copyright (C) 2011 Free Software Foundation, Inc.
124 Copying and distribution of this file, with or without modification,
125 are permitted in any medium without royalty provided the copyright
126 notice and this notice are preserved.