]>
Commit | Line | Data |
---|---|---|
b5369b7d | 1 | 2012-05-31 Steven Bosscher <steven@gcc.gnu.org> |
2 | ||
3 | * trans-common.c: Do not include output.h. | |
4 | * trans-decl.c: Likewise. | |
5 | ||
9635c0c3 | 6 | 2012-05-31 Tobias Burnus <burnus@net-b.de> |
7 | ||
8 | PR fortran/53521 | |
9 | * trans.c (gfc_deallocate_scalar_with_status): Properly | |
10 | handle the case size == 0. | |
11 | ||
d55c3689 | 12 | 2012-05-30 Tobias Burnus <burnus@net-b.de> |
13 | ||
14 | PR c/53502 | |
15 | * decl.c (match_attr_spec): Remove "typedef". | |
16 | ||
df084314 | 17 | 2012-05-30 Tobias Burnus <burnus@net-b.de> |
18 | ||
19 | * decl.c: Fix comment typos. | |
20 | * expr.c: Ditto. | |
21 | * frontend-passes.c: Ditto. | |
22 | * match.c: Ditto. | |
23 | * resolve.c: Ditto. | |
24 | * trans-array.c: Ditto. | |
25 | * trans-common.c: Ditto. | |
26 | * trans-intrinsic.c: Ditto. | |
27 | * trans-types.c: Ditto. | |
28 | ||
71f58d94 | 29 | 2012-05-23 Tobias Burnus <burnus@net-b.de> |
30 | ||
31 | PR fortran/51055 | |
32 | PR fortran/45170 | |
33 | * match.c (gfc_match_allocate): Set length_from_typespec | |
34 | for characters. | |
35 | * resolve.c (resolve_charlen): If set, don't check whether | |
36 | the len is a specification expression. | |
37 | ||
9e64f226 | 38 | 2012-05-22 Tobias Burnus <burnus@net-b.de> |
39 | ||
40 | PR fortran/53389 | |
41 | * trans-array.c (gfc_add_loop_ss_code): Don't evaluate expression, if | |
42 | ss->is_alloc_lhs is set. | |
43 | ||
43cbde16 | 44 | 2012-05-22 Dodji Seketeli <dodji@redhat.com> |
45 | ||
46 | PR c++/53322 | |
47 | * f95-lang.c (gfc_init_builtin_functions): Remove the unused | |
9e64f226 | 48 | typedef builtin_type. |
43cbde16 | 49 | |
7f4f15dc | 50 | 2012-05-14 Janne Blomqvist <jb@gcc.gnu.org> |
51 | ||
52 | PR fortran/52428 | |
53 | * gfortran.texi: Update _gfortran_set_options documentation. | |
54 | * invoke.texi: Remove runtime behavior description of | |
55 | -fno-range-check. | |
56 | * trans-decl.c (create_main_function): Don't pass the range-check | |
57 | setting to the library. | |
58 | ||
774bbd60 | 59 | 2012-05-14 Tobias Burnus <burnus@net-b.de> |
60 | ||
61 | PR fortran/49110 | |
62 | PR fortran/51055 | |
63 | PR fortran/53329 | |
64 | * trans-expr.c (gfc_trans_assignment_1): Fix allocation | |
65 | handling for assignment of function results to allocatable | |
66 | deferred-length strings. | |
67 | * trans-decl.c (gfc_create_string_length): For deferred-length | |
68 | module variables, include module name in the assembler name. | |
69 | (gfc_get_symbol_decl): Don't override the assembler name. | |
70 | ||
d3b7ee7c | 71 | 2012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org> |
72 | ||
73 | PR 53063 | |
74 | * options.c (gfc_handle_option): Call lang-specific generated function. | |
75 | ||
62e307b5 | 76 | 2012-05-13 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> |
77 | Tobias Burnus <burnus@net-b.de> | |
78 | ||
79 | PR fortran/52158 | |
80 | PR fortran/45170 | |
81 | PR fortran/49430 | |
82 | * resolve.c (resolve_fl_derived0): Deferred character length | |
83 | procedure components are supported. | |
84 | * trans-expr.c (gfc_conv_procedure_call): Handle TBP with | |
85 | deferred-length results. | |
86 | (gfc_string_to_single_character): Add a new check to prevent | |
87 | NULL read. | |
88 | (gfc_conv_procedure_call): Remove unuseful checks on | |
89 | symbol's attributes. Add new checks to prevent NULL read on | |
90 | string length. | |
91 | ||
11820978 | 92 | 2012-05-12 Tobias Burnus <burnus@net-b.de> |
93 | ||
94 | PR fortran/49110 | |
95 | PR fortran/52843 | |
96 | * resolve.c (resolve_fl_procedure): Don't regard | |
97 | character(len=:) as character(*) in the diagnostic. | |
98 | ||
eba36973 | 99 | 2012-05-11 Thomas Koenig <tkoenig@gcc.gnu.org> |
100 | ||
101 | PR fortran/52537 | |
102 | * frontend-passes.c (optimize_op): Change | |
103 | old-style comparison operators to new-style, simplify | |
104 | switch as a result. | |
105 | (empty_string): New function. | |
106 | (get_len_trim_call): New function. | |
107 | (optimize_comparison): If comparing to an empty string, | |
108 | use comparison of len_trim to zero. | |
109 | Use new-style comparison operators only. | |
110 | (optimize_trim): Use get_len_trim_call. | |
111 | ||
fbb6fbd8 | 112 | 2012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org> |
113 | ||
114 | PR 53063 | |
115 | * options.c: Include diagnostics.h instead of | |
116 | diagnostics-core.h. | |
117 | (set_Wall): Do not see warn_unused here. | |
118 | (gfc_handle_option): Set it here using handle_generated_option. | |
119 | ||
3d1c0354 | 120 | 2012-05-08 Jan Hubicka <jh@suse.cz> |
eba36973 | 121 | |
3d1c0354 | 122 | * trans-common.c (create_common): Do not fake TREE_ASM_WRITTEN. |
123 | * trans-decl.c (gfc_finish_cray_pointee): Likewise. | |
124 | ||
ad65d2f7 | 125 | 2012-05-07 Tobias Burnus <burnus@net-b.de> |
126 | ||
127 | PR fortran/53255 | |
128 | * resolve.c (resolve_typebound_static): Fix handling | |
129 | of overridden specific to generic operator. | |
130 | ||
431a19be | 131 | 2012-05-06 Tobias Burnus <burnus@net-b.de> |
132 | ||
133 | PR fortran/41587 | |
134 | * decl.c (build_struct): Don't ignore FAILED status. | |
135 | ||
49dcd9d0 | 136 | 2012-05-05 Paul Thomas <pault@gcc.gnu.org> |
137 | ||
138 | PR fortran/41600 | |
139 | * trans-array.c (build_array_ref): New static function. | |
140 | (gfc_conv_array_ref, gfc_get_dataptr_offset): Call it. | |
141 | * trans-expr.c (gfc_get_vptr_from_expr): New function. | |
142 | (gfc_conv_derived_to_class): Add a new argument for a caller | |
143 | supplied vptr and use it if it is not NULL. | |
144 | (gfc_conv_procedure_call): Add NULL to call to above. | |
145 | symbol.c (gfc_is_associate_pointer): Return true if symbol is | |
146 | a class object. | |
147 | * trans-stmt.c (trans_associate_var): Handle class associate- | |
148 | names. | |
149 | * expr.c (gfc_get_variable_expr): Supply the array-spec if | |
150 | possible. | |
151 | * trans-types.c (gfc_typenode_for_spec): Set GFC_CLASS_TYPE_P | |
152 | for class types. | |
153 | * trans.h : Add prototypes for gfc_get_vptr_from_expr and | |
154 | gfc_conv_derived_to_class. Define GFC_CLASS_TYPE_P. | |
155 | * resolve.c (resolve_variable): For class arrays, ensure that | |
156 | the target expression has all the necessary _data references. | |
157 | (resolve_assoc_var): Throw a "not yet implemented" error for | |
158 | class array selectors that need a temporary. | |
159 | * match.c (copy_ts_from_selector_to_associate, | |
160 | select_derived_set_tmp, select_class_set_tmp): New functions. | |
161 | (select_type_set_tmp): Call one of last two new functions. | |
162 | (gfc_match_select_type): Copy_ts_from_selector_to_associate is | |
163 | called if associate-name is typed. | |
164 | ||
165 | PR fortran/53191 | |
166 | * resolve.c (resolve_ref): C614 applied to class expressions. | |
167 | ||
fa0323b8 | 168 | 2012-05-05 Janne Blomqvist <jb@gcc.gnu.org> |
169 | ||
170 | PR fortran/49010 | |
171 | PR fortran/24518 | |
172 | * intrinsic.texi (MOD, MODULO): Mention sign and magnitude of result. | |
173 | * simplify.c (gfc_simplify_mod): Use mpfr_fmod. | |
174 | (gfc_simplify_modulo): Likewise, use copysign to fix the result if | |
175 | zero. | |
176 | * trans-intrinsic.c (gfc_conv_intrinsic_mod): Remove fallback as | |
177 | builtin_fmod is always available. For modulo, call copysign to fix | |
178 | the result when signed zeros are enabled. | |
179 | ||
a291e3b6 | 180 | 2012-05-05 Janne Blomqvist <jb@gcc.gnu.org> |
181 | ||
182 | * gfortran.texi (GFORTRAN_TMPDIR): Rename to TMPDIR, explain | |
183 | algorithm for choosing temp directory. | |
184 | ||
87d9f569 | 185 | 2012-05-04 Tobias Burnus <burnus@net-b.de> |
186 | ||
187 | PR fortran/53175 | |
188 | * resolve.c (resolve_variable): Set public_used | |
189 | if a private module variable is used in a (public) | |
190 | specification expression. | |
191 | * trans-decl.c (gfc_finish_var_decl): Mark those | |
192 | TREE_PUBLIC. | |
193 | ||
ae79d05f | 194 | 2012-05-04 Tobias Burnus <burnus@net-b.de> |
195 | ||
196 | PR fortran/53111 | |
197 | * resolve.c (resolve_fl_derived): Fix -std=f95 | |
198 | diagnostic for generic vs. DT names. | |
199 | ||
8b3d4556 | 200 | 2012-05-03 Tobias Burnus <burnus@net-b.de> |
201 | ||
202 | PR fortran/52864 | |
203 | * interface.c (compare_parameter_intent): Remove. | |
204 | (check_intents): Remove call, handle CLASS pointer. | |
205 | (compare_actual_formal): Handle CLASS pointer. | |
206 | ||
cf951b1a | 207 | 2012-04-30 Jan Hubicka <jh@suse.cz> |
208 | ||
209 | * f95-lang.c (gfc_finish): Update comments. | |
210 | ||
b2fa4782 | 211 | 2012-04-29 Thomas Koenig <tkoenig@gcc.gnu.org> |
212 | ||
213 | PR fortran/53148 | |
214 | * frontend-passes.c (create_var): If the statement has a label, | |
215 | put the label around the block. | |
216 | ||
c78a1d18 | 217 | 2012-04-25 Tobias Burnus <burnus@net-b.de> |
218 | ||
219 | PR fortran/52196 | |
220 | * lang.opt (Wrealloc-lhs, Wrealloc-lhs-all): New flags. | |
221 | * gfortran.h (gfc_option_t): Add them. | |
222 | * options.c (gfc_init_options, gfc_post_options, | |
223 | gfc_handle_option): Handle them. | |
224 | * invoke.texi: Document them. | |
225 | * trans-expr.c (realloc_lhs_warning): New function. | |
226 | (gfc_trans_arrayfunc_assign, | |
227 | alloc_scalar_allocatable_for_assignment, | |
228 | gfc_trans_assignment_1): Use it. | |
229 | ||
bfb10994 | 230 | 2012-04-18 Steven Bosscher <steven@gcc.gnu.org> |
231 | ||
232 | * trans-decl.c (gfc_trans_entry_master_switch): Build SWITCH_EXPR | |
233 | with NULL_TREE type instead of void_type_node. | |
234 | * trans-io.c (io_result): Likewise. | |
235 | * trans-stmt.c (gfc_trans_integer_select, | |
236 | gfc_trans_character_select): Likewise. | |
237 | ||
308fdd1f | 238 | 2012-04-16 Tobias Burnus <burnus@net-b.de> |
239 | ||
240 | PR fortran/52864 | |
241 | * expr.c (gfc_check_vardef_context): Fix assignment check for | |
242 | pointer components. | |
243 | ||
a1b98906 | 244 | 2012-04-16 Janus Weil <janus@gcc.gnu.org> |
245 | ||
246 | PR fortran/52968 | |
247 | * class.c (gfc_build_class_symbol): Make sure the 'f2k_derived' | |
248 | namespace is present. | |
249 | ||
182f5311 | 250 | 2012-04-15 Janus Weil <janus@gcc.gnu.org> |
251 | ||
252 | PR fortran/51082 | |
253 | * trans-expr.c (gfc_conv_expr_reference): Check if the expression is a | |
254 | simple function call (or a more involved PPC reference). | |
255 | ||
b1f74325 | 256 | 2012-04-15 Tobias Burnus <burnus@net-b.de> |
257 | ||
258 | PR fortran/52916 | |
259 | PR fortran/40973 | |
260 | * gfortran.h (symbol_attribute): Add public_used. | |
261 | * interface.c (check_sym_interfaces, check_uop_interfaces, | |
262 | gfc_check_interfaces): Set it. | |
263 | * resolve.c (resolve_typebound_procedure): Ditto. | |
264 | * trans-decl.c (build_function_decl): Use it. | |
265 | ||
f455901f | 266 | 2012-04-11 Tobias Burnus <burnus@net-b.de> |
267 | ||
268 | PR fortran/52729 | |
269 | * resolve.c (resolve_symbol): Fix searching for parent NS decl. | |
270 | ||
c5cb468c | 271 | 2012-04-08 Tobias Burnus <burnus@net-b.de> |
272 | ||
273 | PR fortran/52751 | |
274 | * trans-decl.c (gfc_finish_var_decl): Don't set TREE_PUBLIC | |
275 | for PRIVATE module variables without C-binding label. | |
276 | ||
277 | PR fortran/40973 | |
278 | * trans-decl.c (build_function_decl): Ditto for procedures. | |
279 | ||
d5db953f | 280 | 2012-04-07 Thomas Koenig <tkoenig@gcc.gnu.org> |
281 | ||
282 | PR fortran/52893 | |
283 | * frontend-passes.c: Keep track of wether we are in an implicit | |
284 | DO loop; do not do function elimination if we are. | |
285 | ||
54d24bbe | 286 | 2012-04-06 Thomas Koenig <tkoenig@gcc.gnu.org> |
287 | ||
288 | PR fortran/52668 | |
289 | * module.c: Only mark symbols as use_only if they have been | |
290 | imported via an only list. | |
291 | ||
4fec7f89 | 292 | 2012-03-28 Paul Thomas <pault@gcc.gnu.org> |
293 | Tobias Burnus <burnus@gcc.gnu.org> | |
294 | ||
295 | PR fortran/52652 | |
296 | * match.c (gfc_match_allocate, gfc_match_deallocate): Change | |
297 | "not.. or" to "neither.. nor". | |
298 | * parse.c (decode_specification_statement): Correct error in | |
54d24bbe | 299 | chpice of matching function for "allocatable". |
4fec7f89 | 300 | |
2d019699 | 301 | 2012-03-23 Janne Blomqvist <jb@gcc.gnu.org> |
302 | ||
303 | * gfortran.h (GFC_MAX_LINE): Remove unused macro. | |
304 | ||
cb04125b | 305 | 2012-03-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> |
306 | ||
307 | PR fortran/52559 | |
308 | * error.c (gfc_widechar_display_length): Consider tabs as | |
309 | one character wide, as they're displayed as spaces. | |
310 | (show_locus): Move tab handling to... | |
311 | (print_wide_char_into_buffer): ... here. | |
312 | ||
4b17ee64 | 313 | 2012-03-17 Tobias Burnus <burnus@net-b.de> |
314 | ||
315 | PR fortran/52585 | |
316 | * trans-intrinsic.c (gfc_conv_associated): Fix handling of | |
317 | procpointer dummy arguments. | |
318 | ||
fb1fb9d3 | 319 | 2012-03-16 Janne Blomqvist <jb@gcc.gnu.org> |
320 | ||
321 | * trans-intrinsic.c (build_round_expr): Don't use BUILT_IN_IROUND | |
322 | for __float128. | |
323 | ||
f5fdea80 | 324 | 2012-03-15 Janne Blomqvist <jb@gcc.gnu.org> |
325 | ||
326 | * f95-lang.c (gfc_init_builtin_functions): Initialize | |
327 | BUILT_IN_IROUND. | |
328 | * mathbuiltins.def: Add IROUND. | |
329 | * trans-intrinsic.c (build_round_expr): Use BUILT_IN_IROUND if | |
330 | type size matches. | |
331 | (gfc_build_intrinsic_lib_fndecls): Build iround functions. | |
332 | ||
a51edb4c | 333 | 2012-03-12 Richard Guenther <rguenther@suse.de> |
334 | ||
335 | * f95-lang.c (builtin_type_for_size): Use gfc_type_for_size. | |
336 | ||
caa3ea40 | 337 | 2012-03-12 Tobias Burnus <burnus@net-b.de> |
338 | ||
339 | PR fortran/52542 | |
340 | * decl.c (match_procedure_decl): If the interface | |
341 | is bind(C), the procedure is as well. | |
342 | ||
5f2f65e6 | 343 | 2012-03-10 Steven Bosscher <steven@gcc.gnu.org> |
344 | ||
345 | * convert.c (convert): Fold BOOLEAN_TYPE types to the proper variant. | |
346 | ||
c8cd357b | 347 | 2012-03-09 Steven Bosscher <steven@gcc.gnu.org> |
348 | ||
349 | * Make-lang.in (convert.o): Depend on convert.h. | |
350 | * convert.c: Header and comment cleanups. | |
351 | (gfc_thruthvalue_conversion): Rename static function | |
352 | to truthvalue_conversion. Do not use 'internal_error' from here, | |
353 | use 'gcc_unreachable' instead. | |
354 | (convert): Do not use 'error' for conversions to void, use | |
355 | 'gcc_unreachable' instead. Likewise for conversions to non-scalar | |
356 | types. Do not hanlde ENUMERAL_TYPE, the front end never creates them. | |
357 | Clean up #if 0 code. | |
358 | ||
a333ee3a | 359 | 2012-03-08 Tobias Burnus <burnus@net-b.de> |
360 | ||
361 | PR fortran/52469 | |
362 | * trans-types.c (gfc_get_function_type): Handle backend_decl | |
363 | of a procedure pointer. | |
364 | ||
cde2be84 | 365 | 2012-03-06 Steven Bosscher <steven@gcc.gnu.org> |
366 | ||
367 | * f95-lang.c (yyerror, yylex): Remove. | |
368 | (clear_binding_stack): Remove, fold into its only user. | |
369 | (LANG_HOOKS_PRINT_IDENTIFIER): Do not re-define. | |
370 | (ridpointers): Remove. | |
371 | (gfc_eh_initialized_p): Make static. | |
372 | (gfc_truthvalue_conversion): Move to convert.c. | |
373 | (gfc_be_parse_file): Clear binding level stack when done. | |
374 | (gfc_print_identifier): Remove. | |
375 | (pushlevel): Remove ignored 'ignore' argument. Update all callers. | |
376 | (poplevel): Remove unused 'reverse' argument. Update all callers. | |
377 | (ggc_p): Remove. | |
378 | (gfc_builtin_function): Make static. Do not attempt to make RTL for | |
379 | builtin functions. | |
380 | * convert.c (gfc_truthvalue_conversion): Moved here from f95-lang.c, | |
381 | and made static. | |
382 | * trans.h (pushlevel, poplevel): Adjust prototypes. | |
383 | (gfc_truthvalue_conversion, gfc_builtin_function): Remove prototypes. | |
384 | * trans-openmp.c: Update calls to pushlevel and poplevel. | |
385 | * trans.c: Likewise. | |
386 | * trans-decl.c: Likewise. | |
387 | ||
62b4f1e6 | 388 | 2012-03-04 Mikael Morin <mikael@gcc.gnu.org> |
389 | ||
390 | PR fortran/50981 | |
391 | * gfortran.h (gfc_is_class_container_ref): New prototype. | |
392 | * class.c (gfc_is_class_container_ref): New function. | |
393 | * trans-expr.c (gfc_conv_procedure_call): Add a "_data" component | |
394 | reference to polymorphic actual arguments. | |
395 | ||
de3e3c18 | 396 | 2012-03-04 Mikael Morin <mikael@gcc.gnu.org> |
397 | ||
398 | PR fortran/50981 | |
399 | * trans-expr.c (gfc_conv_procedure_call): Save se->ss's value. | |
400 | Handle the case of unallocated arrays passed to elemental procedures. | |
401 | ||
3017c394 | 402 | 2012-03-04 Mikael Morin <mikael@gcc.gnu.org> |
403 | ||
404 | * trans.h (struct gfc_ss_info): Move can_be_null_ref component from | |
405 | the data::scalar subcomponent to the toplevel. | |
406 | * trans-expr.c (gfc_conv_expr): Update component reference. | |
407 | * trans-array.c (gfc_add_loop_ss_code): Ditto. | |
408 | (gfc_walk_elemental_function_args): Ditto. Move the conditional setting | |
409 | the field out of the scalar-only block. | |
410 | ||
eb087c9e | 411 | 2012-03-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> |
412 | ||
413 | PR fortran/36160 | |
414 | * error.c (gfc_widechar_display_length, gfc_wide_display_length): | |
415 | New functions. | |
416 | (print_wide_char_into_buffer): Return length written. | |
417 | (show_locus): Fix locus displayed when wide characters are present. | |
418 | ||
c5afc79b | 419 | 2012-03-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> |
420 | ||
421 | * module.c (gfc_use_module): Improve error message some more. | |
422 | ||
56342743 | 423 | 2012-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> |
424 | ||
425 | PR fortran/52313 | |
426 | * module.c (gfc_use_module): Improve error messages. | |
427 | ||
9b88f526 | 428 | 2012-03-03 Tobias Burnus <burnus@net-b.de> |
429 | ||
430 | PR fortran/48820 | |
431 | * resolve.c (resolve_actual_arglist): Properly reset | |
432 | assumed_type_expr_allowed. | |
433 | ||
8e618001 | 434 | 2012-03-03 Tobias Burnus <burnus@net-b.de> |
435 | ||
436 | * lang.opt (Wc-binding-type): New flag. | |
437 | * options.c (gfc_init_options, gfc_handle_option): Handle it. | |
438 | * invoke.texi (Wc-binding-type): Document it. | |
439 | * gfortran.h (gfc_option_t): Add warn_c_binding_type. | |
440 | * decl.c (verify_bind_c_sym): Handle -Wc-binding-type. | |
441 | * symbol.c (gfc_set_default_type, verify_bind_c_derived_type): | |
442 | Ditto. | |
443 | ||
8c2d8d6d | 444 | 2012-03-03 Tobias Burnus <burnus@net-b.de> |
445 | ||
446 | PR fortran/48820 | |
447 | * decl.c (gfc_match_decl_type_spec): Support type(*). | |
448 | (gfc_verify_c_interop): Allow type(*). | |
449 | * dump-parse-tree.c (show_typespec): Handle type(*). | |
450 | * expr.c (gfc_copy_expr): Ditto. | |
451 | * interface.c (compare_type_rank, compare_parameter, | |
452 | compare_actual_formal, gfc_procedure_use): Ditto. | |
453 | * libgfortran.h (bt): Add BT_ASSUMED. | |
454 | * misc.c (gfc_basic_typename, gfc_typename): Handle type(*). | |
455 | * module.c (bt_types): Ditto. | |
456 | * resolve.c (assumed_type_expr_allowed): New static variable. | |
457 | (resolve_actual_arglist, resolve_variable, resolve_symbol): | |
458 | Handle type(*). | |
459 | * trans-expr.c (gfc_conv_procedure_call): Ditto. | |
460 | * trans-types.c (gfc_typenode_for_spec, gfc_get_dtype): Ditto. | |
461 | ||
95e5c406 | 462 | 2012-03-02 Tobias Burnus <burnus@net-b.de> |
463 | ||
464 | PR fortran/52325 | |
465 | * primary.c (gfc_match_varspec): Add missing ;. | |
466 | ||
7b8df29d | 467 | 2012-03-02 Tobias Burnus <burnus@net-b.de> |
468 | ||
469 | PR fortran/52325 | |
470 | * primary.c (gfc_match_varspec): Add diagnostic for % with | |
471 | nonderived types. | |
472 | ||
8957a593 | 473 | 2012-03-02 Tobias Burnus <burnus@net-b.de> |
474 | ||
475 | PR fortran/52270 | |
476 | * expr.c (gfc_check_vardef_context): Fix check for | |
477 | intent-in polymorphic pointer . | |
478 | * interface.c (compare_parameter): Allow passing TYPE to | |
479 | intent-in polymorphic pointer. | |
480 | ||
1d7b6409 | 481 | 2012-03-02 Tobias Burnus <burnus@net-b.de> |
482 | ||
483 | PR fortran/52452 | |
484 | * resolve.c (resolve_intrinsic): Don't search for a | |
485 | function if we know that it is a subroutine. | |
486 | ||
f1f4c947 | 487 | 2012-02-29 Paul Thomas <pault@gcc.gnu.org> |
488 | ||
489 | PR fortran/52386 | |
490 | * trans-expr.c (fcncall_realloc_result): Dereference the | |
491 | descriptor if needed. | |
492 | ||
7b385032 | 493 | 2012-02-22 Tobias Burnus <burnus@net-b.de> |
494 | ||
495 | PR fortran/52335 | |
496 | * io.c (gfc_match_open): Remove bogus F2003 DELIM= check. | |
497 | ||
6f10e990 | 498 | 2012-02-18 Tobias Burnus <burnus@net-b.de> |
499 | ||
500 | PR fortran/52295 | |
501 | * interface.c (check_interface0): Internal procs in | |
502 | generic interfaces are allowed in Fortran 2008. | |
503 | ||
58f44f3e | 504 | 2012-02-17 Tobias Burnus <burnus@net-b.de> |
505 | Roland Stigge <stigge@antcom.de> | |
506 | ||
507 | PR translation/52273 | |
508 | * interface.c (compare_actual_formal): Fix typo "at at". | |
509 | ||
045c34c4 | 510 | 2012-02-17 Tobias Burnus <burnus@net-b.de> |
511 | ||
512 | * gfortran.texi (Q exponent-letter): Fix grammar. | |
513 | ||
60472a3b | 514 | 2012-02-17 Tobias Burnus <burnus@net-b.de> |
515 | ||
516 | * gfortran.texi (Status): Fix typos. | |
517 | * invoke.texi (ffixed-form, fstack-arrays): Spell Fortran with | |
518 | a majuscule. | |
519 | ||
95c5276f | 520 | 2012-02-17 Tobias Burnus <burnus@net-b.de> |
521 | Roland Stigge <stigge@antcom.de> | |
522 | ||
523 | PR translation/52232 | |
524 | PR translation/52234 | |
525 | PR translation/52245 | |
526 | PR translation/52246 | |
527 | PR translation/52262 | |
528 | PR translation/52273 | |
529 | * io.c (gfc_match_open): Fix typo. | |
530 | * interface.c (compare_actual_formal): Ditto. | |
531 | * lang.opt (freal-4-real-8, freal-4-real-16, freal-8-real-16): Ditto. | |
532 | * match.c (alloc_opt_list, gfc_match_nullify): Ditto. | |
533 | * check.c (gfc_check_associated, gfc_check_null): Ditto. | |
534 | ||
14957629 | 535 | 2012-02-12 Mikael Morin <mikael@gcc.gnu.org> |
536 | ||
537 | PR fortran/50981 | |
538 | * trans-stmt.c (gfc_get_proc_ifc_for_call): New function. | |
539 | (gfc_trans_call): Use gfc_get_proc_ifc_for_call. | |
540 | ||
ff32eb63 | 541 | 2012-02-12 Mikael Morin <mikael@gcc.gnu.org> |
542 | ||
543 | * trans-array.c (gfc_walk_elemental_function_args, | |
544 | gfc_walk_function_expr): Move call to gfc_get_proc_ifc_for_expr out | |
545 | of gfc_walk_elemental_function_args. | |
546 | * trans-stmt.c (gfc_trans_call): Ditto. | |
547 | * trans-array.h (gfc_get_proc_ifc_for_expr): New prototype. | |
548 | (gfc_walk_elemental_function_args): Update prototype. | |
549 | ||
bf16f69e | 550 | 2012-02-12 Mikael Morin <mikael@gcc.gnu.org> |
551 | ||
552 | * trans-array.c (gfc_get_proc_ifc_for_expr): New function. | |
553 | (gfc_walk_elemental_function_args): Move code to | |
554 | gfc_get_proc_ifc_for_expr and call it. | |
555 | ||
81a2362f | 556 | 2012-02-08 Tobias Burnus <burnus@net-b.de> |
557 | ||
558 | PR fortran/52151 | |
559 | * trans-expr.c (fcncall_realloc_result): Set also the stride. | |
560 | ||
48a3785b | 561 | 2012-02-07 Tobias Burnus <burnus@net-b.de> |
562 | ||
563 | PR fortran/51514 | |
564 | * trans-expr.c (gfc_conv_procedure_call): Add _data component | |
565 | for calls of scalar CLASS actuals to TYPE dummies. | |
566 | ||
fc6338c7 | 567 | 2012-02-05 Thomas König <tkoenig@gcc.gnu.org> |
568 | ||
569 | PR fortran/48847 | |
570 | * trans-decl.c: Warn about unused dummy procedure arguments | |
571 | if -Wunused-dummy-argument is specified. Suppress middle-end | |
572 | warnings about procedure arguments. | |
573 | ||
adb7de2d | 574 | 2012-02-05 Paul Thomas <pault@gcc.gnu.org> |
575 | ||
576 | * trans-array.c (gfc_array_allocate): Zero memory for all class | |
577 | array allocations. | |
578 | * trans-stmt.c (gfc_trans_allocate): Ditto for class scalars. | |
579 | ||
580 | PR fortran/52102 | |
581 | * trans-stmt.c (gfc_trans_allocate): Before correcting a class | |
582 | array reference, ensure that 'dataref' points to the _data | |
583 | component that is followed by the array reference.. | |
584 | ||
f3cd3c38 | 585 | 2012-02-02 Mikael Morin <mikael@gcc.gnu.org> |
586 | ||
587 | PR fortran/41587 | |
588 | PR fortran/46356 | |
589 | PR fortran/51754 | |
590 | PR fortran/50981 | |
591 | * class.c (insert_component_ref, class_data_ref_missing, | |
592 | gfc_fix_class_refs): New functions. | |
593 | * gfortran.h (gfc_fix_class_refs): New prototype. | |
594 | * trans-expr.c (gfc_conv_expr): Remove special case handling and call | |
595 | gfc_fix_class_refs instead. | |
596 | ||
a79b122a | 597 | 2012-02-02 Paul Thomas <pault@gcc.gnu.org> |
598 | ||
599 | PR fortran/52012 | |
600 | * trans-expr.c (fcncall_realloc_result): If variable shape is | |
601 | correct, retain the bounds, whatever they are. | |
602 | ||
d0da7abb | 603 | 2012-02-02 Tobias Burnus <burnus@net-b.de> |
604 | ||
605 | PR fortran/52093 | |
606 | * simplify.c (gfc_simplify_size): Handle INTRINSIC_PARENTHESES. | |
607 | ||
ecce8d80 | 608 | 2012-02-01 Thomas König <tkoenig@gcc.gnu.org> |
609 | ||
610 | PR fortran/51958 | |
611 | * frontend-passes.c (convert_elseif): New function. | |
612 | (optimize_namespace): Call it. | |
613 | ||
df9ff8bf | 614 | 2012-02-01 Tobias Burnus <burnus@net-b.de> |
615 | ||
616 | PR fortran/52024 | |
617 | * module.c (MOD_VERSION): Bump. | |
618 | (mio_typebound_proc): Read/write is_operator from/to the | |
619 | .mod file. | |
620 | ||
f3cd3c38 | 621 | 2012-02-01 Tobias Burnus <burnus@net-b.de> |
c3d4349a | 622 | |
623 | PR fortran/52059 | |
624 | * trans-expr.c (gfc_conv_procedure_call): Add array ref | |
625 | only to variables. | |
626 | ||
5c0f7d99 | 627 | 2012-01-31 Tobias Burnus <burnus@net-b.de> |
628 | ||
629 | PR fortran/52024 | |
630 | * gfortran.h (gfc_tbp_generic): Store whether the | |
631 | generic is an operator. | |
632 | * decl.c (gfc_match_generic): Set that flag. | |
633 | * resolve.c (check_generic_tbp_ambiguity): Use it in the | |
634 | gfc_compare_interfaces check. | |
635 | ||
8116c900 | 636 | 2012-01-31 Tobias Burnus <burnus@net-b.de> |
637 | ||
638 | PR fortran/52029 | |
639 | * class.c (gfc_find_derived_vtab): Mark _copy function as pure. | |
640 | ||
9e52f312 | 641 | 2012-01-31 Tobias Burnus <burnus@net-b.de> |
642 | ||
643 | PR fortran/52013 | |
644 | * class.c (get_unique_hashed_string): Adapt trim length. | |
645 | (gfc_build_class_symbol) Encode also corank in the container name. | |
646 | ||
49ad82f5 | 647 | 2012-01-31 Paul Thomas <pault@gcc.gnu.org> |
648 | ||
649 | PR fortran/52012 | |
650 | * trans-expr.c (fcncall_realloc_result): Correct calculation of | |
651 | result offset. | |
652 | ||
48409c9b | 653 | 2012-01-29 Janne Blomqvist <jb@gcc.gnu.org> |
654 | ||
655 | * module.c (pointer_info): Make true_name and module pointers | |
656 | rather than arrays, order pointers before other fields. | |
657 | (free_pi_tree): free true_name and module as well. | |
658 | (mio_read_string): Rename to read_string. | |
659 | (mio_write_string): Remove. | |
660 | (load_commons): Use read_string. | |
661 | (read_module): Use read_string rather than mio_internal_string. | |
662 | (write_blank_common): Call write_atom directly. | |
663 | (write_symbol): Likewise. | |
664 | ||
4a4652dc | 665 | 2012-01-29 Tobias Burnus <burnus@net-b.de> |
666 | ||
667 | PR fortran/41600 | |
668 | * expr.c (gfc_default_initializer): Convert the values if | |
669 | the type does not match. | |
670 | ||
067d5300 | 671 | 2012-01-29 Tobias Burnus <burnus@net-b.de> |
672 | ||
673 | PR fortran/51972 | |
674 | * trans-array.c (structure_alloc_comps): Fix assignment of | |
675 | polymorphic components (polymorphic deep copying). | |
676 | ||
1d8a57d8 | 677 | 2012-01-29 Janne Blomqvist <jb@gcc.gnu.org> |
678 | ||
679 | PR fortran/51808 | |
680 | * decl.c (set_binding_label): Make binding_label argument const. | |
681 | (curr_binding_label): Constify. | |
682 | * gfortran.h (gfc_symbol): Constify binding_label. | |
683 | (gfc_common_head): Likewise. | |
684 | (get_iso_c_sym): Likewise. | |
685 | * match.c (gfc_match_name_C): Constify buffer argument. | |
686 | * match.h (gfc_match_name_C): Likewise. | |
687 | * resolve.c (set_name_and_label): Constify binding_label argument. | |
688 | (gfc_iso_c_sub_interface): Constify binding_label variable. | |
689 | * symbol.c (get_iso_c_sym): Constify binding_label argument. | |
690 | ||
7b2060ba | 691 | 2012-01-29 Janne Blomqvist <jb@gcc.gnu.org> |
692 | ||
693 | PR fortran/51808 | |
694 | * decl.c (set_binding_label): Move prototype from match.h to here. | |
695 | (curr_binding_label): Make a pointer rather than static array. | |
696 | (build_sym): Check sym->binding_label pointer rather than array, | |
697 | update set_binding_label call, handle curr_binding_label changes. | |
698 | (set_binding_label): Handle new curr_binding_label, dest_label | |
699 | double ptr, and sym->binding_label. | |
700 | (verify_bind_c_sym): Handle sym->binding_label being a pointer. | |
701 | (set_verify_bind_c_sym): Check sym->binding_label pointer rather | |
702 | than array, update set_binding_label call. | |
703 | (gfc_match_bind_c_stmt): Handle curr_binding_label change. | |
704 | (match_procedure_decl): Update set_binding_label call. | |
705 | (gfc_match_bind_c): Change binding_label to pointer, update | |
706 | gfc_match_name_C call. | |
707 | * gfortran.h (GFC_MAX_BINDING_LABEL_LEN): Remove macro. | |
708 | (gfc_symbol): Make binding_label a pointer. | |
709 | (gfc_common_head): Likewise. | |
710 | * match.c (gfc_match_name_C): Heap allocate bind(C) name. | |
711 | * match.h (gfc_match_name_C): Change prototype argument. | |
712 | (set_binding_label): Move prototype to decl.c. | |
713 | * module.c (struct pointer_info): Make binding_label a pointer. | |
714 | (free_pi_tree): Free unused binding_label. | |
715 | (mio_read_string): New function. | |
716 | (mio_write_string): New function. | |
717 | (load_commons): Redo reading of binding_label. | |
718 | (read_module): Likewise. | |
719 | (write_common_0): Change to write empty string instead of name if | |
720 | no binding_label. | |
721 | (write_blank_common): Write empty string for binding label. | |
722 | (write_symbol): Change to write empty string instead of name if no | |
723 | binding_label. | |
724 | * resolve.c (gfc_iso_c_func_interface): Don't set binding_label. | |
725 | (set_name_and_label): Make binding_label double pointer, use | |
726 | asprintf. | |
727 | (gfc_iso_c_sub_interface): Make binding_label a pointer. | |
728 | (resolve_bind_c_comms): Handle cases if | |
729 | gfc_common_head->binding_label is NULL. | |
730 | (gfc_verify_binding_labels): sym->binding_label is a pointer. | |
1aaa0f21 | 731 | * symbol.c (gfc_new_symbol): Rely on XCNEW zero init for |
732 | binding_label. | |
7b2060ba | 733 | (gen_special_c_interop_ptr): Don't set binding label. |
734 | (generate_isocbinding_symbol): Insert binding_label into symbol | |
735 | table. | |
736 | (get_iso_c_sym): Use pointer assignment instead of strcpy. | |
737 | * trans-common.c (gfc_sym_mangled_common_id): Handle | |
738 | com->binding_label being a pointer. | |
739 | * trans-decl.c (gfc_sym_mangled_identifier): Handle | |
740 | sym->binding_label being a pointer. | |
741 | (gfc_sym_mangled_function_id): Likewise. | |
742 | ||
e9602c2c | 743 | 2012-01-29 Tobias Burnus <burnus@net-b.de> |
744 | ||
745 | PR fortran/52038 | |
746 | * resolve.c (symbol_as): Remove unused, accidentally | |
747 | added function. | |
748 | ||
c595ed2f | 749 | 2012-01-28 Tobias Burnus <burnus@net-b.de> |
750 | ||
751 | PR fortran/51972 | |
752 | * trans-stmt.c (gfc_trans_allocate): Properly check whether | |
753 | we have a BT_CLASS which needs to be memset. | |
754 | ||
44eb672e | 755 | 2012-01-27 Tobias Burnus <burnus@net-b.de> |
756 | ||
757 | PR fortran/52022 | |
758 | * trans-expr.c (gfc_conv_procedure_call): Fix passing | |
759 | of functions, which return allocatables. | |
760 | ||
4289983a | 761 | 2012-01-27 Tobias Burnus <burnus@net-b.de> |
762 | ||
763 | PR fortran/52016 | |
764 | * resolve.c (resolve_formal_arglist): Fix elemental | |
765 | constraint checks for polymorphic dummies also for | |
766 | pointers. | |
7b2060ba | 767 | |
3a19c063 | 768 | 2012-01-27 Tobias Burnus <burnus@net-b.de> |
769 | ||
770 | PR fortran/51970 | |
771 | PR fortran/51977 | |
772 | * primary.c (gfc_match_varspec. gfc_match_rvalue): Set | |
773 | handle array spec for BT_CLASS. | |
774 | * expr.c (gfc_get_variable_expr, gfc_lval_expr_from_sym) | |
775 | * frontend-passes.c (create_var): Ditto. | |
776 | * resolve.c (resolve_actual_arglist, resolve_assoc_var): Ditto. | |
777 | * trans-decl.c (gfc_trans_deferred_vars): Use class_pointer | |
778 | instead of attr.pointer. | |
779 | (gfc_generate_function_code): Use CLASS_DATA (sym) for BT_CLASS. | |
780 | * trans-intrinsic.c (conv_intrinsic_move_alloc): Move assert. | |
781 | * trans-stmt.c (trans_associate_var): Ask for the descriptor. | |
782 | ||
cbd83bfb | 783 | 2012-01-27 Tobias Burnus <burnus@net-b.de> |
784 | ||
785 | PR fortran/51953 | |
786 | * match.c (gfc_match_allocate): Allow more than allocate | |
787 | object with SOURCE=. | |
788 | ||
de1cb551 | 789 | 2012-01-27 Tobias Burnus <burnus@net-b.de> |
790 | ||
791 | PR fortran/52016 | |
792 | * resolve.c (resolve_formal_arglist): Fix elemental | |
793 | constraint checks for polymorphic dummies. | |
794 | ||
112437c1 | 795 | 2012-01-27 Paul Thomas <pault@gcc.gnu.org> |
796 | Tobias Burnus <burnus@gcc.gnu.org> | |
797 | ||
798 | PR fortran/48705 | |
799 | PR fortran/51870 | |
800 | PR fortran/51943 | |
801 | PR fortran/51946 | |
802 | * trans-array.c (gfc_array_init_size): Add two extra arguments | |
803 | to convey the dynamic element size of a calls object and to | |
804 | return the number of elements that have been allocated. | |
805 | (gfc_array_allocate): Add the same arguments and use them to | |
806 | call gfc_array_init_size. Before the allocation dereference | |
807 | the data pointer, if necessary. Set the allocated array to zero | |
808 | if the class element size or expr3 are non-null. | |
809 | * trans-expr.c (gfc_conv_class_to_class): Give this function | |
810 | global scope. | |
811 | (get_class_array_ref): New function. | |
812 | (gfc_copy_class_to_class): New function. | |
813 | * trans-array.h : Update prototype for gfc_array_allocate. | |
814 | * trans-stmt.c (gfc_trans_allocate): For non-variable class | |
815 | STATUS expressions extract the class object and the dynamic | |
816 | element size. Use the latter to call gfc_array_allocate and | |
817 | the former for setting the vptr and, via | |
818 | gfc_copy_class_to_clasfc_cs, to copy to the allocated data. | |
819 | * trans.h : Prototypes for gfc_get_class_array_ref, | |
820 | gfc_copy_class_to_class and gfc_conv_class_to_class. | |
de1cb551 | 821 | |
822 | 2012-01-25 Tobias Burnus <burnus@net-b.de> | |
823 | ||
824 | * resolve.c (symbol_as): Check also for attr.class_ok. | |
825 | ||
9eb0ae6a | 826 | 2012-01-25 Tobias Burnus <burnus@net-b.de> |
827 | ||
828 | PR fortran/51995 | |
829 | * class.c (gfc_build_class_symbol): Fix invalid freeing | |
830 | issue with fclass->f2k_derived. | |
831 | ||
324be76c | 832 | 2012-01-25 Tobias Burnus <burnus@net-b.de> |
833 | ||
834 | PR fortran/51995 | |
835 | * class.c (gfc_build_class_symbol): Ensure that | |
836 | fclass->f2k_derived is set. | |
837 | ||
838 | 2012-01-25 Tobias Burnus <burnus@net-b.de> | |
0c806cea | 839 | |
840 | PR fortran/51966 | |
841 | * resolve.c (resolve_structure_cons): Only create an | |
842 | array constructors for nonscalars. | |
843 | ||
ebb074af | 844 | 2012-01-23 Tobias Burnus <burnus@net-b.de> |
845 | ||
846 | PR fortran/51948 | |
847 | * check.c (variable_check): Fix checking for | |
848 | variables and deeply nested BLOCKs. | |
849 | ||
17016aa7 | 850 | 2012-01-21 Tobias Burnus <burnus@net-b.de> |
851 | Steven G. Kargl <kargl@gcc.gnu.org> | |
852 | ||
853 | PR fortran/50556 | |
854 | * symbol.c (check_conflict): namelist-group-name cannot have the SAVE | |
4a4652dc | 855 | attribute. |
17016aa7 | 856 | |
1bf89755 | 857 | 2012-01-21 Tobias Burnus <burnus@net-b.de> |
858 | ||
859 | PR fortran/51913 | |
860 | * interface.c (compare_parameter): Fix CLASS comparison. | |
861 | ||
009d27e9 | 862 | 2012-01-20 Tobias Burnus <burnus@net-b.de> |
863 | Janus Weil <janus@gcc.gnu.org> | |
864 | ||
865 | PR fortran/51056 | |
866 | * module.c (load_needed, read_module): Don't mark __vtab etc. | |
867 | as use_only. | |
868 | ||
799347b4 | 869 | 2012-01-19 Tobias Burnus <burnus@net-b.de> |
870 | ||
871 | PR fortran/51904 | |
872 | * expr.c (gfc_build_intrinsic_call): Also set the symtree. | |
873 | ||
66f7d4c1 | 874 | 2012-01-18 Paul Thomas <pault@gcc.gnu.org> |
875 | ||
876 | PR fortran/51634 | |
877 | * trans-expr.c (gfc_conv_procedure_call): Deallocate allocatable | |
878 | components of temporary class arguments. | |
879 | ||
42ddf4db | 880 | 2012-01-17 Tobias Burnus <burnus@net-b.de> |
881 | Janne Blomqvist <jb@gcc.gnu.org> | |
882 | ||
883 | PR fortran/51869 | |
884 | * trans-expr.c (alloc_scalar_allocatable_for_assignment): Nullify | |
885 | LHS after allocation, if it has allocatable components. | |
886 | * f95-lang.c (gfc_init_builtin_functions): Add BUILT_IN_CALLOC. | |
887 | ||
37446c62 | 888 | 2012-01-16 Mikael Morin <mikael@gcc.gnu.org> |
889 | Tobias Burnus <burnus@net-b.de> | |
890 | ||
891 | PR fortran/50981 | |
892 | * trans-array.c (gfc_walk_elemental_function_args): Fix | |
893 | passing of deallocated allocatables/pointers as absent argument. | |
894 | ||
98976ae1 | 895 | 2012-01-16 Tobias Burnus <burnus@net-b.de> |
896 | ||
897 | PR fortran/51809 | |
898 | * class.c (gfc_find_derived_vtab): Mark __vtab and | |
899 | __def_init as FL_VARIABLE not as FL_PARAMETER. | |
900 | * expr.c (gfc_simplify_expr): Remove special | |
901 | handling of __vtab. | |
902 | * resolve.c (resolve_values): Ditto. | |
903 | * trans-decl.c (gfc_get_symbol_decl): Mark __vtab | |
904 | and __def_init as TREE_READONLY. | |
905 | ||
70640f89 | 906 | 2012-01-16 Zydrunas Gimbutas <gimbutas@cims.nyu.edu> |
907 | Andreas Kloeckner <kloeckner@cims.nyu.edu> | |
908 | Steven G. Kargl <kargl@gcc.gnu.org> | |
909 | ||
910 | PR fortran/48426 | |
911 | * gfortran.h (gfc_option_t): Add members flag_*_kind to store kind. | |
912 | * lang.opt: Add options -freal-4-real-8, -freal-4-real-10, | |
913 | -freal-4-real-16, -freal-8-real-4, -freal-8-real-10, -freal-8-real-16 | |
914 | and -finteger-4-integer-8. User-desired type conversion information. | |
915 | * decl.c (gfc_match_old_kind_spec,kind_expr): Type conversions | |
916 | in declaration parsing. | |
917 | * trans-types.c (gfc_init_kinds): User-specified type conversion | |
918 | checked for current backend. | |
919 | * primary.c (match_integer_constant,match_real_constant): Implement | |
920 | type conversion in constant parsing. | |
921 | * options.c (gfc_init_options,gfc_handle_option): Translate input | |
922 | options to flags in internal options data structure. | |
923 | * invoke.texi: Document new options. Re-order options in Options | |
924 | summary section. | |
925 | ||
44e6e526 | 926 | 2012-01-16 Paul Thomas <pault@gcc.gnu.org> |
927 | ||
928 | * trans-array.c (gfc_trans_create_temp_array): In the case of a | |
929 | class array temporary, detect a null 'eltype' on entry and use | |
930 | 'initial' to provde the class reference and so, through the | |
931 | vtable, the element size for the dynamic type. | |
932 | * trans-stmt.c (gfc_conv_elemental_dependencies): For class | |
933 | expressions, set 'eltype' to null and pass the values via the | |
934 | 'initial' expression. | |
935 | ||
3831e585 | 936 | 2012-01-14 Tobias Burnus <burnus@net-b.de> |
937 | ||
938 | PR fortran/51800 | |
939 | * resolve.c (build_default_init_expr): Also initialize | |
940 | nonconstant-length strings with -finit-character=<n>. | |
941 | ||
dde4fd90 | 942 | 2011-01-14 Tobias Burnus <burnus@net-b.de> |
943 | ||
944 | PR fortran/51816 | |
945 | * module.c (read_module): Don't make nonexisting | |
946 | intrinsic operators as found. | |
947 | (rename_list_remove_duplicate): New function. | |
948 | (gfc_use_modules): Use it. | |
949 | ||
a7bf3a59 | 950 | 2012-01-13 Paul Thomas <pault@gcc.gnu.org> |
951 | ||
952 | PR fortran/48351 | |
953 | * trans-array.c (structure_alloc_comps): Suppress interative | |
954 | call to self, when current component is deallocated using | |
955 | gfc_trans_dealloc_allocated. | |
956 | * class.c (gfc_build_class_symbol): Copy the 'alloc_comp' | |
957 | attribute from the declared type to the class structure. | |
958 | ||
267a3e90 | 959 | 2012-01-13 Tobias Burnus <burnus@net-b.de> |
960 | ||
961 | PR fortran/51842 | |
962 | * fortran/trans-types.c (gfc_init_kinds): Use PTRDIFF_TYPE | |
963 | instead of a signed int of size POINTER_SIZE for | |
964 | gfc_index_integer_kind. | |
965 | ||
cc4e1ef4 | 966 | 2012-01-12 Tobias Burnus <burnus@net-b.de> |
967 | ||
968 | PR fortran/36755 | |
969 | * intrinsic.texi (CHMOD): Extend a bit and remove statement | |
970 | that /bin/chmod is called. | |
971 | ||
b0f3ecc5 | 972 | 2012-01-10 Gerald Pfeifer <gerald@pfeifer.com> |
973 | ||
974 | * gfortran.texi (Fortran 2003 Status): Fix grammar. | |
975 | ||
ee7e7076 | 976 | 2012-01-10 Tobias Burnus <burnus@net-b.de> |
977 | ||
978 | PR fortran/51652 | |
979 | * resolve.c (resolve_allocate_expr): For non-deferred char lengths, | |
980 | check whether type-spec matches declaration. | |
981 | ||
fa66599a | 982 | 2012-01-10 Tobias Burnus <burnus@net-b.de> |
983 | ||
984 | * resolve.c (resolve_ordinary_assign): Improve error wording. | |
985 | ||
96dfda99 | 986 | 2012-01-09 Paul Thomas <pault@gcc.gnu.org> |
987 | ||
988 | PR fortran/51791 | |
989 | * interface.c (matching_typebound_op): Drill down through | |
990 | possible parentheses to obtain base expression. Do not test for | |
991 | 'class_ok' but, instead for the class structure components. | |
992 | * resolve.c (resolve_ordinary_assign): Extend error message for | |
993 | polymorphic assignment to advise checking for specific | |
994 | subroutine. | |
995 | ||
996 | PR fortran/51792 | |
997 | * resolve.c (resolve_typebound_function): Restore 'static' to | |
998 | declaration. | |
999 | ||
c0ef5bbc | 1000 | 2012-01-09 Mikael Morin <mikael@gcc.gnu.org> |
1001 | ||
1002 | PR fortran/51758 | |
1003 | * trans-array.c (gfc_walk_elemental_function_args): | |
1004 | Skip over NULL() actual arguments. | |
1005 | ||
511a786a | 1006 | 2012-01-09 Tobias Burnus <burnus@net-b.de> |
1007 | ||
1008 | * gfortran.texi: Bump copyright year. | |
1009 | (Fortran 2003 Status): Update polymorphism item, add | |
1010 | item for generic interface with DT name. | |
1011 | ||
56739b7d | 1012 | 2012-01-09 Tobias Burnus <burnus@net-b.de> |
1013 | ||
1014 | PR fortran/51578 | |
1015 | * gfortran.h (gfc_use_list): | |
1016 | * match.h (gfc_use_module): Rename to ... | |
1017 | (gfc_use_modules): ... this. | |
1018 | * module.c (use_locus, specified_nonint, specified_int): Remove | |
1019 | global variable. | |
1020 | (module_name): Change type to const char*, used with gfc_get_string. | |
1021 | (module_list): New global variable. | |
1022 | (free_rename): Free argument not global var. | |
1023 | (gfc_match_use): Save match to module_list. | |
1024 | (load_generic_interfaces, read_module): Don't free symtree. | |
1025 | (write_dt_extensions, gfc_dump_module): Fix module-name I/O due to the | |
1026 | type change of module_name. | |
1027 | (write_symbol0, write_generic): Optimize due to the type change. | |
1028 | (import_iso_c_binding_module, use_iso_fortran_env_module): Use | |
1029 | locus of rename->where. | |
1030 | (gfc_use_module): Take module_list as argument. | |
1031 | (gfc_use_modules): New function. | |
1032 | (gfc_module_init_2, gfc_module_done_2): Init module_list, rename_list. | |
1033 | * parse.c (last_was_use_stmt): New global variable. | |
1034 | (use_modules): New function. | |
1035 | (decode_specification_statement, decode_statement): Move USE match up | |
1036 | and call use_modules. | |
1037 | (next_free, next_fixed): Call use_modules. | |
1038 | (accept_statement): Don't call gfc_module_use. | |
1039 | ||
d0d776fb | 1040 | 2012-01-06 Tobias Burnus <burnus@net-b.de> |
1041 | ||
1042 | * trans-openmp.c (gfc_omp_clause_dtor, gfc_trans_omp_array_reduction): | |
1043 | Update call to gfc_trans_dealloc_allocated. | |
1044 | * trans.c (gfc_allocate_using_malloc): Fix spacing. | |
1045 | (gfc_allocate_allocatable): For gfc_allocate_using_lib, jump to | |
1046 | label_finish when an error occurs. | |
1047 | (gfc_deallocate_with_status): Call caf_deregister for -fcoarray=lib. | |
1048 | * trans.h (gfc_allocate_allocatable, gfc_deallocate_with_status): | |
1049 | Update prototype. | |
1050 | (gfor_fndecl_caf_deregister): New tree symbol. | |
1051 | * trans-expr.c (gfc_conv_procedure_call): Update | |
1052 | gfc_deallocate_with_status and gfc_trans_dealloc_allocated calls. | |
1053 | * trans-array.c (gfc_array_allocate, gfc_trans_dealloc_allocated, | |
1054 | structure_alloc_comps, gfc_trans_deferred_array): Ditto. | |
1055 | (gfc_array_deallocate): Handle coarrays with -fcoarray=lib. | |
1056 | * trans-array.h (gfc_array_deallocate, gfc_array_allocate, | |
1057 | gfc_trans_dealloc_allocated): Update prototypes. | |
1058 | * trans-stmt.c (gfc_trans_sync): Fix indentation. | |
1059 | (gfc_trans_allocate): Fix errmsg padding and label handling. | |
1060 | (gfc_trans_deallocate): Ditto and handle -fcoarray=lib. | |
1061 | * expr.c (gfc_is_coarray): Fix algorithm for BT_CLASS. | |
1062 | * libgfortran.h (GFC_STAT_STOPPED_IMAGE): Use large value | |
1063 | to avoid other stats accidentally matching this one. | |
1064 | * trans-decl.c (gfor_fndecl_caf_deregister): New global var. | |
1065 | (gfc_build_builtin_function_decls): Fix prototype decl of caf_register | |
1066 | and add decl for caf_deregister. | |
1067 | (gfc_trans_deferred_vars): Handle CAF vars with -fcoarrays=lib. | |
1068 | * trans-intrinsic.c (conv_intrinsic_move_alloc): Update call to | |
1069 | gfc_deallocate_with_status. | |
1070 | ||
9749851b | 1071 | 2012-01-05 Paul Thomas <pault@gcc.gnu.org> |
1072 | ||
1073 | PR fortran/PR48946 | |
1074 | * resolve.c (resolve_typebound_static): If the typebound | |
1075 | procedure is 'deferred' try to find the correct specific | |
1076 | procedure in the derived type operator space itself. | |
1077 | ||
4fd5163b | 1078 | 2012-01-04 Mikael Morin <mikael@gcc.gnu.org> |
1079 | ||
1080 | PR fortran/50981 | |
1081 | * trans-array.h (gfc_walk_elemental_function_args): New argument. | |
1082 | * trans-intrinsic.c (gfc_walk_intrinsic_function): Update call. | |
1083 | * trans-stmt.c (gfc_trans_call): Ditto. | |
1084 | * trans-array.c (gfc_walk_function_expr): Ditto. | |
1085 | (gfc_walk_elemental_function_args): Get the dummy argument list | |
1086 | if possible. Check that the dummy and the actual argument are both | |
1087 | optional, and set can_be_null_ref accordingly. | |
1088 | ||
e2cac5e5 | 1089 | 2012-01-04 Mikael Morin <mikael@gcc.gnu.org> |
1090 | ||
1091 | PR fortran/50981 | |
1092 | * trans.h (struct gfc_ss_info): New field data::scalar::can_be_null_ref | |
1093 | * trans-array.c: If the reference can be NULL, save the reference | |
1094 | instead of the value. | |
1095 | * trans-expr.c (gfc_conv_expr): If we have saved a reference, | |
1096 | dereference it. | |
1097 | ||
29e4c389 | 1098 | 2012-01-04 Mikael Morin <mikael@gcc.gnu.org> |
1099 | ||
1100 | * trans-expr.c (gfc_conv_expr): Move address taking... | |
1101 | (gfc_conv_expr_reference): ... here. | |
1102 | ||
637533b5 | 1103 | 2012-01-04 Thomas Koenig <tkoenig@gcc.gnu.org> |
1104 | ||
1105 | PR fortran/49693 | |
1106 | * trans-common.c (create_common): Update copyright years. Mark | |
1107 | variables as used to avoid warnings about unused variables in | |
1108 | common blocks. | |
1109 | ||
3d08115c | 1110 | 2012-01-03 Hans-Peter Nilsson <hp@axis.com> |
1111 | ||
1112 | * gfortran.h (struct gfc_expr): Add missing "struct" | |
1113 | qualifier for member base_expr. | |
1114 | ||
24980a98 | 1115 | 2012-01-02 Paul Thomas <pault@gcc.gnu.org> |
1116 | ||
1117 | PR fortran/51529 | |
1118 | * trans-array.c (gfc_array_allocate): Null allocated memory of | |
1119 | newly allocted class arrays. | |
1120 | ||
1121 | PR fortran/46262 | |
1122 | PR fortran/46328 | |
1123 | PR fortran/51052 | |
1124 | * interface.c(build_compcall_for_operator): Add a type to the | |
1125 | expression. | |
1126 | * trans-expr.c (conv_base_obj_fcn_val): New function. | |
1127 | (gfc_conv_procedure_call): Use base_expr to detect non-variable | |
1128 | base objects and, ensuring that there is a temporary variable, | |
1129 | build up the typebound call using conv_base_obj_fcn_val. | |
1130 | (gfc_trans_class_assign): Pick out class procedure pointer | |
1131 | assignments and do the assignment with no further prcessing. | |
1132 | (gfc_trans_class_array_init_assign, gfc_trans_class_init_assign | |
1133 | gfc_trans_class_assign): Move to top of file. | |
1134 | * gfortran.h : Add 'base_expr' field to gfc_expr. | |
1135 | * resolve.c (get_declared_from_expr): Add 'types' argument to | |
1136 | switch checking of derived types on or off. | |
1137 | (resolve_typebound_generic_call): Set the new argument. | |
1138 | (resolve_typebound_function, resolve_typebound_subroutine): | |
1139 | Set 'types' argument for get_declared_from_expr appropriately. | |
1140 | Identify base expression, if not a variable, in the argument | |
1141 | list of class valued calls. Assign it to the 'base_expr' field | |
1142 | of the final expression. Strip away all references after the | |
1143 | last class reference. | |
1144 | ||
9a457ae7 | 1145 | 2012-01-02 Tobias Burnus <burnus@net-b.de> |
1146 | ||
1147 | PR fortran/51682 | |
1148 | * trans-intrinsic.c (trans_this_image, trans_image_index, | |
1149 | trans_num_images, conv_intrinsic_cobound): Fold_convert the | |
1150 | caf_num_images/caf_this_images variables to the correct int kind. | |
1151 | ||
ea87e586 | 1152 | 2012-01-01 Jakub Jelinek <jakub@redhat.com> |
1153 | ||
1154 | * gfortranspec.c (lang_specific_driver): Update copyright notice | |
1155 | dates. | |
7dfbd804 | 1156 | \f |
8dfa851a | 1157 | Copyright (C) 2012 Free Software Foundation, Inc. |
7dfbd804 | 1158 | |
1159 | Copying and distribution of this file, with or without modification, | |
1160 | are permitted in any medium without royalty provided the copyright | |
1161 | notice and this notice are preserved. |