]> gcc.gnu.org Git - gcc.git/blame - gcc/fortran/ChangeLog
* doc/invoke.texi (RS/6000 and PowerPC Options):Document mtls-markers.
[gcc.git] / gcc / fortran / ChangeLog
CommitLineData
71a7778c
PT
12009-03-30 Paul Thomas <pault@gcc.gnu.org>
2
3 PR fortran/22571
4 PR fortran/26227
5 PR fortran/24886
6 * symbol.c : Add gfc_global_ns_list.
7 * decl.c (add_global_entry): Set the namespace ('ns') field.
8 * gfortran.h : Add the resolved field to gfc_namespace. Add the
9 namespace ('ns') field to gfc_gsymbol. Add flag_whole_file to
10 gfc_option_t. Add the prototype for gfc_free_dt_list.
11 * lang.opt : Add the whole-file option.
12 * invoke.texi : Document the whole-file option.
13 * resolve.c (resolve_global_procedure): If the fwhole-file
14 option is set, reorder gsymbols to ensure that translation is
15 in the right order. Resolve the gsymbol's namespace if that
16 has not occurred and then check interfaces.
17 (resolve_function): Move call to resolve_global_procedure.
18 (resolve_call): The same.
19 (resolve_codes): Store the current labels_obstack.
20 (gfc_resolve) : Return if the namespace is already resolved.
21 trans-decl.c (gfc_get_extern_function_decl): If the whole_file
22 option is selected, use the backend_decl of a gsymbol, if it is
23 available.
24 parse.c (add_global_procedure, add_global_program): If the flag
25 whole-file is set, add the namespace to the gsymbol.
26 (gfc_parse_file): On -fwhole-file, put procedure namespaces on
27 the global namespace list. Rearrange to do resolution of all
28 the procedures in a file, followed by their translation.
29 * options.c (gfc_init_options): Add -fwhole-file.
30 (gfc_handle_option): The same.
31
f6d53468
UW
322009-03-30 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
33
34 * f95-lang.c (gfc_init_builtin_functions): Define BUILT_IN_HUGE_VAL
35 family of intrinsics instead of BUILT_IN_INF family.
36 * trans-intrinsics.c (gfc_conv_intrinsic_nearest): Use
37 BUILT_IN_HUGE_VAL instead of BUILT_IN_INF.
38
665733c1
JJ
392009-03-30 Jakub Jelinek <jakub@redhat.com>
40
41 * trans-types.c (gfc_sym_type, gfc_return_by_reference): For
42 sym->attr.result check sym->ns->proc_name->attr.is_bind_c.
43
8ce94e44
JM
442009-03-30 Joseph Myers <joseph@codesourcery.com>
45
46 PR rtl-optimization/323
47 * options.c (gfc_post_options): Set
48 flag_excess_precision_cmdline. Give an error for
49 -fexcess-precision=standard for processors where the option is
50 significant.
51
148e4216
JM
522009-03-29 Joseph Myers <joseph@codesourcery.com>
53
54 PR preprocessor/34695
55 * cpp.c (cb_cpp_error): New.
56 (gfc_cpp_post_options): Don't set cpp_option->inhibit_warnings.
57 Don't check cpp_errors (cpp_in).
58 (gfc_cpp_init_0): Set cb->error.
59
6bb62671
SK
602009-03-29 Steven G. Kargl <kargl@gcc.gnu.org>
61
62 PR fortran/38823
63 * gfortran.h: Add ARITH_PROHIBIT to arith enum.
64 expr.c (gfc_match_init_expr): Add global variable init_flag to
65 flag matching an initialization expression.
66 (check_intrinsic_op): Move no longer reachable error message to ...
67 * arith.c (arith_power): ... here. Remove gfc_ prefix in
68 gfc_arith_power. Use init_flag. Allow constant folding of x**y
69 when y is REAL or COMPLEX.
70 (eval_intrinsic): Remove restriction that y in x**y must be INTEGER
71 for constant folding.
72 * gfc_power: Update gfc_arith_power to arith_power
73
b0e5fa94
DK
742009-03-29 Daniel Kraft <d@domob.eu>
75
76 PR fortran/37423
77 * gfortran.h (struct gfc_typebound_proc): Added new flag `deferred' and
78 added a comment explaining DEFERRED binding handling.
79 * decl.c (match_binding_attributes): Really match DEFERRED attribute.
80 (match_procedure_in_type): Really match PROCEDURE(interface) syntax
81 and do some validity checks for DEFERRED and this construct.
82 * module.c (binding_overriding): New string constant for DEFERRED.
83 (mio_typebound_proc): Module-IO DEFERRED flag.
84 * resolve.c (check_typebound_override): Ensure that a non-DEFERRED
85 binding is not overridden by a DEFERRED one.
86 (resolve_typebound_procedure): Allow abstract interfaces as targets
87 for DEFERRED bindings.
88 (ensure_not_abstract_walker), (ensure_not_abstract): New methods.
89 (resolve_fl_derived): Use new `ensure_not_abstract' method for
90 non-ABSTRACT types extending ABSTRACT ones to ensure each DEFERRED
91 binding is overridden.
92 (check_typebound_baseobject): New method.
93 (resolve_compcall), (resolve_typebound_call): Check base-object of
94 the type-bound procedure call.
95 * gfc-internals.texi (Type-bound procedures): Document a little bit
96 about internal handling of DEFERRED bindings.
97
d80c695f
TS
98