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