111
|
1 2017-10-25 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
|
|
2
|
|
3 * match.c (gfc_match_type_is): Fix typo in error message.
|
|
4
|
|
5 2017-10-21 Paul Thomas <pault@gcc.gnu.org>
|
|
6
|
|
7 PR fortran/82586
|
|
8 * decl.c (gfc_get_pdt_instance): Remove the error message that
|
|
9 the parameter does not have a corresponding component since
|
|
10 this is now taken care of when the derived type is resolved. Go
|
|
11 straight to error return instead.
|
|
12 (gfc_match_formal_arglist): Make the PDT relevant errors
|
|
13 immediate so that parsing of the derived type can continue.
|
|
14 (gfc_match_derived_decl): Do not check the match status on
|
|
15 return from gfc_match_formal_arglist for the same reason.
|
|
16 * resolve.c (resolve_fl_derived0): Check that each type
|
|
17 parameter has a corresponding component.
|
|
18
|
|
19 PR fortran/82587
|
|
20 * resolve.c (resolve_generic_f): Check that the derived type
|
|
21 can be used before resolving the struture constructor.
|
|
22
|
|
23 PR fortran/82589
|
|
24 * symbol.c (check_conflict): Add the conflicts involving PDT
|
|
25 KIND and LEN attributes.
|
|
26
|
|
27 2017-10-19 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
|
|
28
|
|
29 * interface.c (check_sym_interfaces, check_uop_interfaces,
|
|
30 gfc_check_interfaces): Base interface_name buffer off
|
|
31 GFC_MAX_SYMBOL_LEN.
|
|
32
|
|
33 2017-10-19 Jakub Jelinek <jakub@redhat.com>
|
|
34
|
|
35 PR fortran/82568
|
|
36 * gfortran.h (gfc_resolve_do_iterator): Add a bool arg.
|
|
37 (gfc_resolve_omp_local_vars): New declaration.
|
|
38 * openmp.c (omp_current_ctx): Make static.
|
|
39 (gfc_resolve_omp_parallel_blocks): Handle EXEC_OMP_TASKLOOP
|
|
40 and EXEC_OMP_TASKLOOP_SIMD.
|
|
41 (gfc_resolve_do_iterator): Add ADD_CLAUSE argument, if false,
|
|
42 don't actually add any clause. Move omp_current_ctx test
|
|
43 earlier.
|
|
44 (handle_local_var, gfc_resolve_omp_local_vars): New functions.
|
|
45 * resolve.c (gfc_resolve_code): Call gfc_resolve_omp_parallel_blocks
|
|
46 instead of just gfc_resolve_omp_do_blocks for EXEC_OMP_TASKLOOP
|
|
47 and EXEC_OMP_TASKLOOP_SIMD.
|
|
48 (gfc_resolve_code): Adjust gfc_resolve_do_iterator caller.
|
|
49 (resolve_codes): Call gfc_resolve_omp_local_vars.
|
|
50
|
|
51 2017-10-19 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
|
|
52
|
|
53 * gfortran.h (gfc_lookup_function_fuzzy): New declaration.
|
|
54 (gfc_closest_fuzzy_match): New declaration.
|
|
55 (vec_push): New definition.
|
|
56 * misc.c (gfc_closest_fuzzy_match): New definition.
|
|
57 * resolve.c: Include spellcheck.h.
|
|
58 (lookup_function_fuzzy_find_candidates): New static function.
|
|
59 (lookup_uop_fuzzy_find_candidates): Likewise.
|
|
60 (lookup_uop_fuzzy): Likewise.
|
|
61 (resolve_operator) <INTRINSIC_USER>: Call lookup_uop_fuzzy.
|
|
62 (gfc_lookup_function_fuzzy): New definition.
|
|
63 (resolve_unknown_f): Call gfc_lookup_function_fuzzy.
|
|
64 * interface.c (check_interface0): Likewise.
|
|
65 (lookup_arg_fuzzy_find_candidates): New static function.
|
|
66 (lookup_arg_fuzzy ): Likewise.
|
|
67 (compare_actual_formal): Call lookup_arg_fuzzy.
|
|
68 * symbol.c: Include spellcheck.h.
|
|
69 (lookup_symbol_fuzzy_find_candidates): New static function.
|
|
70 (lookup_symbol_fuzzy): Likewise.
|
|
71 (gfc_set_default_type): Call lookup_symbol_fuzzy.
|
|
72 (lookup_component_fuzzy_find_candidates): New static function.
|
|
73 (lookup_component_fuzzy): Likewise.
|
|
74 (gfc_find_component): Call lookup_component_fuzzy.
|
|
75
|
|
76 2017-10-18 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
77
|
|
78 PR fortran/82567
|
|
79 * frontend-passes.c (combine_array_constructor): If an array
|
|
80 constructor is all constants and has more elements than a small
|
|
81 constant, don't convert a*[b,c] to [a*b,a*c] to reduce compilation
|
|
82 times.
|
|
83
|
|
84 2017-10-18 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
85
|
|
86 PR fortran/79795
|
|
87 * resolve.c (resovle_symbol): Change gcc_assert to
|
|
88 sensible error message.
|
|
89
|
|
90 2017-10-18 Paul Thomas <pault@gcc.gnu.org>
|
|
91
|
|
92 PR fortran/82550
|
|
93 * trans_decl.c (gfc_get_symbol_decl): Procedure symbols that
|
|
94 have the 'used_in_submodule' attribute should be processed by
|
|
95 'gfc_get_extern_function_decl'.
|
|
96
|
|
97 2017-10-16 Fritz Reese <fritzoreese@gmail.com>
|
|
98
|
|
99 PR fortran/82511
|
|
100 * trans-io.c (transfer_expr): Treat BT_UNION as BT_DERIVED.
|
|
101
|
|
102 2017-10-15 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
103
|
|
104 PR fortran/82372
|
|
105 * fortran/scanner.c (last_error_char): New global variable.
|
|
106 (gfc_scanner_init_1): Set last_error_char to NULL.
|
|
107 (gfc_gobble_whitespace): If a character not printable or
|
|
108 not newline, issue an error.
|
|
109
|
|
110 2017-10-13 Paul Thomas <pault@gcc.gnu.org>
|
|
111
|
|
112 PR fortran/81048
|
|
113 * resolve.c (resolve_symbol): Ensure that derived type array
|
|
114 results get default initialization.
|
|
115
|
|
116 2017-10-11 Nathan Sidwell <nathan@acm.org>
|
|
117
|
|
118 * cpp.c (gfc_cpp_add_include_path): Update incpath_e names.
|
|
119 (gfc_cpp_add_include_path_after): Likewise.
|
|
120
|
|
121 2017-10-10 Richard Sandiford <richard.sandiford@linaro.org>
|
|
122
|
|
123 * target-memory.c (gfc_interpret_logical): Use wi::to_wide when
|
|
124 operating on trees as wide_ints.
|
|
125 * trans-const.c (gfc_conv_tree_to_mpz): Likewise.
|
|
126 * trans-expr.c (gfc_conv_cst_int_power): Likewise.
|
|
127 * trans-intrinsic.c (trans_this_image): Likewise.
|
|
128 (gfc_conv_intrinsic_bound): Likewise.
|
|
129 (conv_intrinsic_cobound): Likewise.
|
|
130
|
|
131 2017-10-08 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
132
|
|
133 * check.c (gfc_check_x): Remove function.
|
|
134 * intrinsic.c (add_functions): Use gfc_check_fn_r.
|
|
135
|
|
136 2017-10-08 Paul Thomas <pault@gcc.gnu.org>
|
|
137
|
|
138 PR fortran/82375
|
|
139 * module.c : Bump up MOD_VERSION to 15.
|
|
140 (mio_component): Edit comment about PDT specification list.
|
|
141 (mio_expr, mio_symbol): Include the expression and symbol PDT
|
|
142 specification lists in the same way as in mio_component.
|
|
143
|
|
144 2017-10-08 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
145
|
|
146 * dump_prase_tree (show_symbol): Output list of variables in
|
|
147 NAMELIST.
|
|
148 (show_code_node): Add new line for ELSE and END DO for DO
|
|
149 CONCURRENT.
|
|
150 * invoke.texi: Document that the output of
|
|
151 -fdump-fortran-original, -fdump-fortran-optimized and
|
|
152 -fdump-parse-tree is unsable and may lead to ICEs.
|
|
153
|
|
154 2017-10-07 Paul Thomas <pault@gcc.gnu.org>
|
|
155
|
|
156 PR fortran/82375
|
|
157 * class.c (gfc_find_derived_vtab): Return NULL for a passed
|
|
158 pdt template to prevent bad procedures from being written.
|
|
159 * decl.c (gfc_get_pdt_instance): Do not use the default
|
|
160 initializer for pointer and allocatable pdt type components. If
|
|
161 the component is allocatbale, set the 'alloc_comp' attribute of
|
|
162 'instance'.
|
|
163 * module.c : Add a prototype for 'mio_actual_arglist'. Add a
|
|
164 boolean argument 'pdt'.
|
|
165 (mio_component): Call it for the parameter list of pdt type
|
|
166 components with 'pdt' set to true.
|
|
167 (mio_actual_arg): Add the boolean 'pdt' and, if it is set, call
|
|
168 mio_integer for the 'spec_type'.
|
|
169 (mio_actual_arglist): Add the boolean 'pdt' and use it in the
|
|
170 call to mio_actual_arg.
|
|
171 (mio_expr, mio_omp_udr_expr): Call mio_actual_arglist with
|
|
172 'pdt' set false.
|
|
173 * resolve.c (get_pdt_spec_expr): Add the parameter name to the
|
|
174 KIND parameter error.
|
|
175 (get_pdt_constructor): Check that cons->expr is non-null.
|
|
176 * trans-array.c (structure_alloc_comps): For deallocation of
|
|
177 allocatable components, ensure that parameterized components
|
|
178 are deallocated first. Likewise, when parameterized components
|
|
179 are allocated, nullify allocatable components first. Do not
|
|
180 recurse into pointer or allocatable pdt components while
|
|
181 allocating or deallocating parameterized components. Test that
|
|
182 parameterized arrays or strings are allocated before freeing
|
|
183 them.
|
|
184 (gfc_trans_pointer_assignment): Call the new function. Tidy up
|
|
185 a minor whitespace issue.
|
|
186 trans-decl.c (gfc_trans_deferred_vars): Set 'tmp' to NULL_TREE
|
|
187 to prevent the expression from being used a second time.
|
|
188
|
|
189 2017-10-07 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
190
|
|
191 PR fortran/49232
|
|
192 * expr.c (gfc_check_pointer_assign): Error
|
|
193 for non-contiguous rhs.
|
|
194
|
|
195 2017-10-07 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
196
|
|
197 * gfortran.h (async_io_dt): Add external reference.
|
|
198 * io.c (async_io_dt): Add variable.
|
|
199 (compare_to_allowed_values): Add prototyte. Add optional argument
|
|
200 num. If present, set it to the number of the entry that was
|
|
201 matched.
|
|
202 (check_io_constraints): If this is for an asynchronous I/O
|
|
203 statement, set async_io_dt and set the asynchronous flag for
|
|
204 a SIZE tag.
|
|
205 * resolve.c (resolve_transfer): If async_io_dt is set, set
|
|
206 the asynchronous flag on the variable.
|
|
207 (resolve_fl_namelist): If async_io_dt is set, set the asynchronous
|
|
208 flag on all elements of the namelist.
|
|
209
|
|
210 2017-10-04 Paul Thomas <pault@gcc.gnu.org>
|
|
211
|
|
212 PR fortran/60458
|
|
213 PR fortran/77296
|
|
214 * resolve.c (resolve_assoc_var): Deferred character type
|
|
215 associate names must not receive an integer conatant length.
|
|
216 * symbol.c (gfc_is_associate_pointer): Deferred character
|
|
217 length functions also require an associate pointer.
|
|
218 * trans-decl.c (gfc_get_symbol_decl): Deferred character
|
|
219 length functions or derived type components require the assoc
|
|
220 name to have variable string length.
|
|
221 * trans-stmt.c (trans_associate_var): Set the string length of
|
|
222 deferred string length associate names. The address expression
|
|
223 is not needed for allocatable, pointer or dummy targets. Change
|
|
224 the comment about defered string length targets.
|
|
225
|
|
226 2017-10-03 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
227
|
|
228 * io.c (match_wait_element): Correctly match END and EOR tags.
|
|
229 * dump-parse-tree.c (show_code_node): Handle EXEC_WAIT.
|
|
230
|
|
231 2017-10-02 Paul Thomas <pault@gcc.gnu.org>
|
|
232
|
|
233 PR fortran/82312
|
|
234 * resolve.c (gfc_resolve_code): Simplify condition for class
|
|
235 pointer assignments becoming regular assignments by asserting
|
|
236 that only class valued targets are permitted.
|
|
237 * trans-expr.c (trans_class_pointer_fcn): New function using a
|
|
238 block of code from gfc_trans_pointer_assignment.
|
|
239 (gfc_trans_pointer_assignment): Call the new function. Tidy up
|
|
240 a minor whitespace issue.
|
|
241
|
|
242 2017-10-01 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
243
|
|
244 PR fortran/61450
|
|
245 * parse.c (gfc_global_used): Replace the gfc_internal_error
|
|
246 with an error.
|
|
247
|
|
248 2017-09-29 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
249
|
|
250 PR fortran/25071
|
|
251 * interface.c (compare_actual_formal): Change warnings to errors
|
|
252 when "Actual argument contains too few elements for dummy
|
|
253 argument", unless -std=legacy is used.
|
|
254
|
|
255 2017-09-27 Thomas Schwinge <thomas@codesourcery.com>
|
|
256
|
|
257 * lang.opt <Wdo-subscript>: End help text with a period.
|
|
258
|
|
259 2017-09-26 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
260
|
|
261 * frontend-passes.c (do_subscript): Don't do anything
|
|
262 if inside an associate list.
|
|
263
|
|
264 2017-09-25 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
265
|
|
266 * lang.opt: Add -Wdo-subscript.
|
|
267 * frontend-passes.c (do_t): New type.
|
|
268 (doloop_list): Use variable of do_type.
|
|
269 (if_level): Variable to track if levels.
|
|
270 (select_level): Variable to track select levels.
|
|
271 (gfc_run_passes): Initialize i_level and select_level.
|
|
272 (doloop_code): Record current level of if + select
|
|
273 level in doloop_list. Add seen_goto if there could
|
|
274 be a branch outside the loop. Use different type for
|
|
275 doloop_list.
|
|
276 (doloop_function): Call do_intent and do_subscript; move
|
|
277 functionality of checking INTENT to do_intent.
|
|
278 (insert_index_t): New type, for callback_insert_index.
|
|
279 (callback_insert_index): New function.
|
|
280 (insert_index): New function.
|
|
281 (do_subscript): New function.
|
|
282 (do_intent): New function.
|
|
283 (gfc_code_walker): Keep track of if_level and select_level.
|
|
284 * invoke.texi: Document -Wdo-subscript.
|
|
285
|
|
286 2017-09-25 Janne Blomqvist <jb@gcc.gnu.org>
|
|
287
|
|
288 * trans.c (gfc_unlikely): Remove unnecessary fold_convert.
|
|
289 (gfc_likely): Likewise.
|
|
290
|
|
291 2017-09-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
292 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
293
|
|
294 PR fortran/80118
|
|
295 * expr.c (gfc_get_full_arrayspec_from_expr): If there is
|
|
296 no symtree, set array spec to NULL.
|
|
297
|
|
298 2017-09-23 Janus Weil <janus@gcc.gnu.org>
|
|
299
|
|
300 PR fortran/82143
|
|
301 * lang.opt: Add the options -fdefault-real-10 and -fdefault-real-16.
|
|
302 Rename flag_default_real to flag_default_real_8.
|
|
303 * invoke.texi: Add documentation.
|
|
304 * module.c (use_iso_fortran_env_module): flag_default_real is renamed.
|
|
305 * trans-types.c (gfc_init_kinds): Implement the flags
|
|
306 -fdefault-real-10 and -fdefault-real-16. Make -fdefault-double-8 work
|
|
307 without -fdefault-real-8.
|
|
308
|
|
309 2017-09-21 Paul Thomas <pault@gcc.gnu.org>
|
|
310
|
|
311 PR fortran/52832
|
|
312 * match.c (gfc_match_associate): Before failing the association
|
|
313 try again, allowing a proc pointer selector.
|
|
314
|
|
315 PR fortran/80120
|
|
316 PR fortran/81903
|
|
317 PR fortran/82121
|
|
318 * primary.c (gfc_match_varspec): Introduce 'tgt_expr', which
|
|
319 points to the associate selector, if any. Go through selector
|
|
320 references, after resolution for variables, to catch any full
|
|
321 or section array references. If a class associate name does
|
|
322 not have the same declared type as the selector, resolve the
|
|
323 selector and copy the declared type to the associate name.
|
|
324 Before throwing a no implicit type error, resolve all allowed
|
|
325 selector expressions, and copy the resulting typespec.
|
|
326
|
|
327 PR fortran/67543
|
|
328 * resolve.c (resolve_assoc_var): Selector must cannot be the
|
|
329 NULL expression and it must have a type.
|
|
330
|
|
331 PR fortran/78152
|
|
332 * resolve.c (resolve_symbol): Allow associate names to be
|
|
333 coarrays.
|
|
334
|
|
335 2017-09-21 Cesar Philippidis <cesar@codesourcery.com>
|
|
336
|
|
337 * openmp.c (gfc_match_oacc_wait): Don't restrict wait directive
|
|
338 arguments to constant integers.
|
|
339
|
|
340 2017-09-17 Paul Thomas <pault@gcc.gnu.org>
|
|
341
|
|
342 PR fortran/82173
|
|
343 * decl.c (gfc_get_pdt_instance): Use the component initializer
|
|
344 expression for the default, rather than the parameter value.
|
|
345 * resolve.c (resolve_pdt): New function.
|
|
346 (resolve_symbol): Call it. Remove false error, prohibiting
|
|
347 deferred type parameters for dummy arguments.
|
|
348
|
|
349 PR fortran/60483
|
|
350 * primary.c (gfc_match_varspec): If the type of an associate
|
|
351 name is unknown and yet there is a match, try resolving the
|
|
352 target expression and using its type.
|
|
353
|
|
354 2017-09-15 Paul Thomas <pault@gcc.gnu.org>
|
|
355
|
|
356 PR fortran/82184
|
|
357 trans-decl.c (gfc_trans_deferred_vars): Do not null the 'span'
|
|
358 field if the symbol is either implicitly or explicitly saved.
|
|
359
|
|
360 2017-09-13 Paul Thomas <pault@gcc.gnu.org>
|
|
361
|
|
362 PR fortran/82173
|
|
363 * decl.c (match_char_kind): If the kind expression is
|
|
364 parameterized, save it in saved_kind_expr and set kind = 0.
|
|
365 (gfc_get_pdt_instance): Resolve and simplify before emitting
|
|
366 error on expression kind. Insert a missing simplification after
|
|
367 insertion of kind expressions.
|
|
368
|
|
369 2017-09-12 Paul Thomas <pault@gcc.gnu.org>
|
|
370
|
|
371 PR fortran/82173
|
|
372 PR fortran/82168
|
|
373 * decl.c (variable_decl): Check pdt template components for
|
|
374 appearance of KIND/LEN components in the type parameter name
|
|
375 list, that components corresponding to type parameters have
|
|
376 either KIND or LEN attributes and that KIND or LEN components
|
|
377 are scalar. Copy the initializer to the parameter value.
|
|
378 (gfc_get_pdt_instance): Add a label 'error_return' and follow
|
|
379 it with repeated code, while replacing this code with a jump.
|
|
380 Check if a parameter appears as a component in the template.
|
|
381 Make sure that the parameter expressions are integer. Validate
|
|
382 KIND expressions.
|
|
383 (gfc_match_decl_type_spec): Search for pdt_types in the parent
|
|
384 namespace since they are instantiated in the template ns.
|
|
385 * expr.c (gfc_extract_int): Use a KIND parameter if it
|
|
386 appears as a component expression.
|
|
387 (gfc_check_init_expr): Allow expressions with the pdt_kind
|
|
388 attribute.
|
|
389 *primary.c (gfc_match_actual_arglist): Make sure that the first
|
|
390 keyword argument is recognised when 'pdt' is set.
|
|
391
|
|
392 2017-09-10 Paul Thomas <pault@gcc.gnu.org>
|
|
393
|
|
394 PR fortran/34640
|
|
395 PR fortran/40737
|
|
396 PR fortran/55763
|
|
397 PR fortran/57019
|
|
398 PR fortran/57116
|
|
399
|
|
400 * expr.c (is_subref_array): Add class pointer array dummies
|
|
401 to the list of expressions that return true.
|
|
402 * trans-array.c: Add SPAN_FIELD and update indices for
|
|
403 subsequent fields.
|
|
404 (gfc_conv_descriptor_span, gfc_conv_descriptor_span_get,
|
|
405 gfc_conv_descriptor_span_set, is_pointer_array,
|
|
406 get_array_span): New functions.
|
|
407 (gfc_get_descriptor_offsets_for_info): New function to preserve
|
|
408 API for access to descriptor fields for trans-types.c.
|
|
409 (gfc_conv_scalarized_array_ref): If the expression is a subref
|
|
410 array, make sure that info->descriptor is a descriptor type.
|
|
411 Otherwise, if info->descriptor is a pointer array, set 'decl'
|
|
412 and fix it if it is a component reference.
|
|
413 (build_array_ref): Simplify handling of class array refs by
|
|
414 passing the vptr to gfc_build_array_ref rather than generating
|
|
415 the pointer arithmetic in this function.
|
|
416 (gfc_conv_array_ref): As in gfc_conv_scalarized_array_ref, set
|
|
417 'decl'.
|
|
418 (gfc_array_allocate): Set the span field if this is a pointer
|
|
419 array. Use the expr3 element size if it is available, so that
|
|
420 the dynamic type element size is used.
|
|
421 (gfc_conv_expr_descriptor): Set the span field for pointer
|
|
422 assignments.
|
|
423 * trans-array.h: Prototypes for gfc_conv_descriptor_span_get
|
|
424 gfc_conv_descriptor_span_set and
|
|
425 gfc_get_descriptor_offsets_for_info added.
|
|
426 trans-decl.c (gfc_get_symbol_decl): If a non-class pointer
|
|
427 array, mark the declaration as a GFC_DECL_PTR_ARRAY_P. Remove
|
|
428 the setting of GFC_DECL_SPAN.
|
|
429 (gfc_trans_deferred_vars): Set the span field to zero in thge
|
|
430 originating scope.
|
|
431 * trans-expr.c (gfc_conv_procedure_call): Do not use copy-in/
|
|
432 copy-out to pass subref expressions to a pointer dummy.
|
|
433 (gfc_trans_pointer_assignment): Remove code for setting of
|
|
434 GFC_DECL_SPAN. Set the 'span' field for non-class pointers to
|
|
435 class function results. Likewise for rank remap. In the case
|
|
436 that the target is not a whole array, use the target array ref
|
|
437 for remap and, since the 'start' indices are missing, set the
|
|
438 lbounds to one, as required by the standard.
|
|
439 * trans-intrinsic.c (conv_expr_ref_to_caf_ref): Pick up the
|
|
440 'token' offset from the field decl in the descriptor.
|
|
441 (conv_isocbinding_subroutine): Set the 'span' field.
|
|
442 * trans-io.c (gfc_trans_transfer): Always scalarize pointer
|
|
443 array io.
|
|
444 * trans-stmt.c (trans_associate_var): Set the 'span' field.
|
|
445 * trans-types.c (gfc_get_array_descriptor_base): Add the 'span'
|
|
446 field to the array descriptor.
|
|
447 (gfc_get_derived_type): Pointer array components are marked as
|
|
448 GFC_DECL_PTR_ARRAY_P.
|
|
449 (gfc_get_array_descr_info): Replaced API breaking code for
|
|
450 descriptor offset calling gfc_get_descriptor_offsets_for_info.
|
|
451 * trans.c (get_array_span): New function.
|
|
452 (gfc_build_array_ref): Simplify by calling get_array_span and
|
|
453 obtain 'span' if 'decl' or 'vptr' present.
|
|
454 * trans.h : Rename DECL_LANG_FLAG_6, GFC_DECL_SUBREF_ARRAY_P,
|
|
455 as GFC_DECL_PTR_ARRAY_P.
|
|
456
|
|
457 2017-09-09 Paul Thomas <pault@gcc.gnu.org>
|
|
458
|
|
459 * decl.c : Add decl_type_param_list, type_param_spec_list as
|
|
460 static variables to hold PDT spec lists.
|
|
461 (build_sym): Copy 'type_param_spec_list' to symbol spec_list.
|
|
462 (build_struct): Copy the 'saved_kind_expr' to the component
|
|
463 'kind_expr'. Check that KIND or LEN components appear in the
|
|
464 decl_type_param_list. These should appear as symbols in the
|
|
465 f2k_derived namespace. If the component is itself a PDT type,
|
|
466 copy the decl_type_param_list to the component param_list.
|
|
467 (gfc_match_kind_spec): If the KIND expression is parameterized
|
|
468 set KIND to zero and store the expression in 'saved_kind_expr'.
|
|
469 (insert_parameter_exprs): New function.
|
|
470 (gfc_insert_kind_parameter_exprs): New function.
|
|
471 (gfc_insert_parameter_exprs): New function.
|
|
472 (gfc_get_pdt_instance): New function.
|
|
473 (gfc_match_decl_type_spec): Match the decl_type_spec_list if it
|
|
474 is present. If it is, call 'gfc_get_pdt_instance' to obtain the
|
|
475 specific instance of the PDT.
|
|
476 (match_attr_spec): Match KIND and LEN attributes. Check for the
|
|
477 standard and for type/kind of the parameter. They are also not
|
|
478 allowed outside a derived type definition.
|
|
479 (gfc_match_data_decl): Null the decl_type_param_list and the
|
|
480 type_param_spec_list on entry and free them on exit.
|
|
481 (gfc_match_formal_arglist): If 'typeparam' is true, add the
|
|
482 formal symbol to the f2k_derived namespace.
|
|
483 (gfc_match_derived_decl): Register the decl_type_param_list
|
|
484 if this is a PDT. If this is a type extension, gather up all
|
|
485 the type parameters and put them in the right order.
|
|
486 *dump-parse-tree.c (show_attr): Signal PDT templates and the
|
|
487 parameter attributes.
|
|
488 (show_components): Output parameter atrributes and component
|
|
489 parameter list.
|
|
490 (show_symbol): Show variable parameter lists.
|
|
491 * expr.c (expr.c): Copy the expression parameter list.
|
|
492 (gfc_is_constant_expr): Pass on symbols representing PDT
|
|
493 parameters.
|
|
494 (gfc_check_init_expr): Break on PDT KIND parameters and
|
|
495 PDT parameter expressions.
|
|
496 (gfc_check_assign): Assigning to KIND or LEN components is an
|
|
497 error.
|
|
498 (derived_parameter_expr): New function.
|
|
499 (gfc_derived_parameter_expr): New function.
|
|
500 (gfc_spec_list_type): New function.
|
|
501 * gfortran.h : Add enum gfc_param_spec_type. Add the PDT attrs
|
|
502 to the structure symbol_attr. Add the 'kind_expr' and
|
|
503 'param_list' field to the gfc_component structure. Comment on
|
|
504 the reuse of the gfc_actual_arglist structure as storage for
|
|
505 type parameter spec lists. Add the new field 'spec_type' to
|
|
506 this structure. Add 'param_list' fields to gfc_symbol and
|
|
507 gfc_expr. Add prototypes for gfc_insert_kind_parameter_exprs,
|
|
508 gfc_insert_parameter_exprs, gfc_add_kind, gfc_add_len,
|
|
509 gfc_derived_parameter_expr and gfc_spec_list_type.
|
|
510 * interface.c (gfc_compare_derived_types): Treat PDTs in the
|
|
511 same way as sequence types.
|
|
512 * match.c : Add variable 'type_param_spec_list'.
|
|
513 (gfc_op2string, gfc_match_member_sep, gfc_match_label): Remove
|
|
514 trailing whitespace.
|
|
515 (match_derived_type_spec): Match PDTs and find specific
|
|
516 instance.
|
|
517 (gfc_match_type_spec): Remove more trailing whitespace.
|
|
518 (gfc_match_allocate): Assumed or deferred parameters cannot
|
|
519 appear here. Copy the type parameter spec list to the expr for
|
|
520 the allocatable entity. Free 'type_param_spec_list'.
|
|
521 (gfc_match_common, gfc_match_namelist, gfc_match_module): Still
|
|
522 more trailing whitespace to remove.
|
|
523 (gfc_match_type_is): Allow PDT typespecs.
|
|
524 * match.h : Modify prototypes for gfc_match_formal_arglist and
|
|
525 gfc_match_actual_arglist.
|
|
526 * module.c (ab_attribute, mstring attr_bits): PDT attributes
|
|
527 added.
|
|
528 (mio_symbol_attribute): PDT attributes handled.
|
|
529 (mio_component): Deal with 'kind_expr' field.
|
|
530 (mio_full_f2k_derived): For PDT templates, transfer the formal
|
|
531 namespace symroot to the f2k_derived namespace.
|
|
532 *primary.c (match_keyword_arg, gfc_match_actual_arglist): Add
|
|
533 modifications to handle PDT spec lists. These are flagged in
|
|
534 both cases by new boolean arguments, whose prototype defaults
|
|
535 are false.
|
|
536 (gfc_match_structure_constructor, match_variable): Remove yet
|
|
537 more trailing whitespace.
|
|
538 * resolve.c (get_pdt_spec_expr, get_pdt_constructor): New
|
|
539 functions.
|
|
540 (resolve_structure_cons): If the constructor is a PDT template,
|
|
541 call get_pdt_constructor to build it using the parameter lists
|
|
542 and then get the specific instance of the PDT.
|
|
543 (resolve_component): PDT strings need a hidden string length
|
|
544 component like deferred characters.
|
|
545 (resolve_symbol): Dummy PDTs cannot have deferred parameters.
|
|
546 * symbol.c (gfc_add_kind, gfc_add_len): New functions.
|
|
547 (free_components): Free 'kind_expr' and 'param_list' fields.
|
|
548 (gfc_free_symbol): Free the 'param_list' field.
|
|
549 (gfc_find_sym_tree): If the current state is a PDT template,
|
|
550 look for the symtree in the f2k_derived namspaces.
|
|
551 trans-array.c (structure_alloc_comps): Allocate and deallocate
|
|
552 PDTs. Check dummy arguments for compliance of LEN parameters.
|
|
553 Add the new functions to the preceeding enum.
|
|
554 (gfc_allocate_pdt_comp, gfc_deallocate_pdt_comp and
|
|
555 gfc_check_pdt_dummy): New functions calling above.
|
|
556 * trans-array.h : Add prototypes for these functions.
|
|
557 trans-decl.c (gfc_get_symbol_decl): Call gfc_defer_symbol_init
|
|
558 as appropriate for PDT symbols.
|
|
559 (gfc_trans_deferred_vars): Allocate/deallocate PDT entities as
|
|
560 they come into and out of scope. Exclude pdt_types from being
|
|
561 'gcc_unreachable'.
|
|
562 (gfc_trans_subcomponent_assign): PDT array components must be
|
|
563 handles as if they are allocatable.
|
|
564 * trans-stmt.c (gfc_trans_allocate): Handle initialization of
|
|
565 PDT entities.
|
|
566 (gfc_trans_deallocate): Likewise.
|
|
567 * trans-types.c (gfc_get_derived_type): PDT templates must not
|
|
568 arrive here. PDT string components are handles as if deferred.
|
|
569 Similarly, PDT arrays are treated as if allocatable. PDT
|
|
570 strings are pointer types.
|
|
571 * trans.c (gfc_deferred_strlen): Handle PDT strings in the same
|
|
572 way as deferred characters.
|
|
573
|
|
574 2017-09-01 Jakub Jelinek <jakub@redhat.com>
|
|
575
|
|
576 PR c/81887
|
|
577 * parse.c (decode_omp_directive): Use matchs instead of matcho for
|
|
578 end ordered and ordered directives, except for ordered depend. For
|
|
579 -fopenmp-simd and ordered depend, reject the stmt.
|
|
580 * trans-openmp.c (gfc_trans_omp_ordered): For -fopenmp-simd ignore
|
|
581 threads clause and if simd clause isn't present, just translate the
|
|
582 body.
|
|
583
|
|
584 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
|
|
585 Alan Hayward <alan.hayward@arm.com>
|
|
586 David Sherwood <david.sherwood@arm.com>
|
|
587
|
|
588 * trans-types.c (gfc_init_kinds): Use opt_scalar_int_mode for
|
|
589 the mode iterator.
|
|
590
|
|
591 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
|
|
592 Alan Hayward <alan.hayward@arm.com>
|
|
593 David Sherwood <david.sherwood@arm.com>
|
|
594
|
|
595 * target-memory.c (size_integer): Use SCALAR_INT_TYPE_MODE.
|
|
596 (size_logical): Likewise.
|
|
597
|
|
598 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
|
|
599 Alan Hayward <alan.hayward@arm.com>
|
|
600 David Sherwood <david.sherwood@arm.com>
|
|
601
|
|
602 * trans-types.c (gfc_type_for_mode): Use is_a <scalar_int_mode>.
|
|
603
|
|
604 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
|
|
605 Alan Hayward <alan.hayward@arm.com>
|
|
606 David Sherwood <david.sherwood@arm.com>
|
|
607
|
|
608 * trans-types.c (gfc_init_kinds): Use opt_scalar_float_mode
|
|
609 and FOR_EACH_MODE_IN_CLASS.
|
|
610
|
|
611 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
|
|
612 Alan Hayward <alan.hayward@arm.com>
|
|
613 David Sherwood <david.sherwood@arm.com>
|
|
614
|
|
615 * target-memory.c (size_float): Use SCALAR_FLOAT_TYPE_MODE
|
|
616 instead of TYPE_MODE.
|
|
617
|
|
618 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
|
|
619 Alan Hayward <alan.hayward@arm.com>
|
|
620 David Sherwood <david.sherwood@arm.com>
|
|
621
|
|
622 * trans-types.c (gfc_init_kinds): Use machine_mode instead of int
|
|
623 for "mode".
|
|
624
|
|
625 2017-08-28 Janus Weil <janus@gcc.gnu.org>
|
|
626
|
|
627 PR fortran/81770
|
|
628 * expr.c (gfc_check_pointer_assign): Improve the check whether pointer
|
|
629 may outlive pointer target.
|
|
630
|
|
631 2017-08-27 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
632
|
|
633 PR fortran/81974
|
|
634 * frontend-passes (inline_matumul_assign): Explicity
|
|
635 set typespec for call to CONJG.
|
|
636
|
|
637 2017-08-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
638
|
|
639 PR fortran/81296
|
|
640 * trans-io.c (get_dtio_proc): Add check for format label and set
|
|
641 formatted flag accordingly. Reorganize the code a little.
|
|
642
|
|
643 2017-08-16 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
644
|
|
645 PR fortran/81116
|
|
646 * frontend-passes.c (realloc_string_callback): If expression is a
|
|
647 concatenation, also check for dependency.
|
|
648 (constant_string_length): Check for presence of symtree.
|
|
649
|
|
650 2017-08-13 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
651
|
|
652 * gfortran.texi: Document format of unformatted sequential files.
|
|
653
|
|
654 2017-08-11 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
655
|
|
656 * invoke.texi: Actually commit change about -Ofast.
|
|
657
|
|
658 2017-08-11 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
659
|
|
660 PR fortran/60355
|
|
661 * resolve.c (resolve_symbol): Adjust (and reformat)
|
|
662 comment. Perform check if a BIND(C) is declared
|
|
663 at module level regardless of whether it is typed
|
|
664 implicitly or not.
|
|
665
|
|
666 2017-08-10 Fritz Reese <fritzoreese@gmail.com>
|
|
667
|
|
668 * options.c (set_dec_flags): Only set legacy standards when value
|
|
669 is not zero.
|
|
670
|
|
671 2017-08-10 Fritz Reese <fritzoreese@gmail.com>
|
|
672
|
|
673 * options.c (set_dec_flags, gfc_post_options): Only set flag_d_lines
|
|
674 with -fdec when not set by user.
|
|
675
|
|
676 2017-08-10 Fritz Reese <fritzoreese@gmail.com>
|
|
677
|
|
678 * decl.c (attr_seen): New static variable.
|
|
679 * decl.c (variable_decl): Match %FILL in STRUCTURE body.
|
|
680 * gfortran.texi: Update documentation.
|
|
681
|
|
682 2017-08-08 Martin Liska <mliska@suse.cz>
|
|
683
|
|
684 * trans-types.c: Include header files.
|
|
685
|
|
686 2017-08-07 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
687
|
|
688 PR fortran/68829
|
|
689 PR fortran/81701
|
|
690 * options.c: Make -Ofast honor -fmax-stack-var-size.
|
|
691 * invoke.texi: Document change.
|
|
692
|
|
693 2017-08-01 Thomas König <tkoenig@gcc.gnu.org>
|
|
694
|
|
695 PR fortran/79312
|
|
696 * intrisic.c (gfc_convert_type_warn): Only set typespec for
|
|
697 empty array constructors which don't have it already.
|
|
698
|
|
699 2017-08-01 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
700
|
|
701 PR fortran/45435
|
|
702 * lang.opt (fc-prototypes): Add option.
|
|
703 * gfortran.h (gfc_typespec): Add interop_kind to struct.
|
|
704 (gfc_dump_c_prototypes): Add prototype.
|
|
705 * decl.c (gfc_match_kind_spec): Copy symbol used for kind to typespec.
|
|
706 * parse.c (gfc_parse_file): Call gfc_dump_prototypes.
|
|
707 * dump-parse-tree.c (gfc_dump_c_prototypes): New function.
|
|
708 (type_return): New enum.
|
|
709 (get_c_type_name): New function.
|
|
710 (write_decl): New function.
|
|
711 (write_type): New function.
|
|
712 (write_variable): New function.
|
|
713 (write_proc): New function.
|
|
714 (write_interop_decl): New function.
|
|
715 * invoke.texi: Document -fc-prototypes.
|
|
716
|
|
717 2017-08-01 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
718
|
|
719 PR fortran/53542
|
|
720 * expr.c (gfc_check_init_expr): Use the renamed name.
|
|
721
|
|
722 2017-07-31 Jakub Jelinek <jakub@redhat.com>
|
|
723
|
|
724 * check.c (gfc_check_num_images): Fix a pasto.
|
|
725
|
|
726 2017-07-29 Jakub Jelinek <jakub@redhat.com>
|
|
727
|
|
728 * trans-decl.c (gfc_trans_use_stmts): Pass false as new argument to
|
|
729 the imported_module_or_decl debug hook.
|
|
730
|
|
731 2017-07-28 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
|
|
732
|
|
733 * resolve.c (find_reachable_labels): Adjust.
|
|
734
|
|
735 2017-07-25 Jakub Jelinek <jakub@redhat.com>
|
|
736
|
|
737 * ioparm.def: Use 1U << 31 instead of 1 << 31 as flags2 mask.
|
|
738
|
|
739 2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
740
|
|
741 * dump-parse-tree.c (show_symbol): Show binding label if present.
|
|
742
|
|
743 2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
744 Mikael Morin <mikael@gcc.gnu.org>
|
|
745
|
|
746 PR fortran/66102
|
|
747 * fortran/trans-array.c (gfc_conv_resolve_dependencies):
|
|
748 Break if dependency has been found.
|
|
749
|
|
750 2017-07-23 Alexander Monakov <amonakov@ispras.ru>
|
|
751
|
|
752 * interface.c (pair_cmp): Fix gfc_symbol comparison. Adjust comment.
|
|
753
|
|
754 2017-07-18 Nathan Sidwell <nathan@acm.org>
|
|
755
|
|
756 * trans.c (gfc_build_array_ref): Use TYPE_MAX_VALUE.
|
|
757
|
|
758 2017-07-09 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
759
|
|
760 PR fortran/81341
|
|
761 * class.c (class_array_ref_detected): Remove a redundant
|
|
762 condition.
|
|
763
|
|
764 2017-07-06 Harald Anlauf <anlauf@gmx.de>
|
|
765
|
|
766 PR fortran/70071
|
|
767 * array.c (gfc_ref_dimen_size): Handle bad subscript triplets.
|
|
768
|
|
769 2017-07-03 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
770
|
|
771 PR fortran/79866
|
|
772 * resolve.c (resolve_symbol): Fix typo.
|
|
773
|
|
774 2017-07-03 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
775
|
|
776 PR fortran/79843
|
|
777 * symbol.c (check_conflict): Add missing "conflicts".
|
|
778
|
|
779 2017-06-29 Cesar Philippidis <cesar@codesourcery.com>
|
|
780
|
|
781 PR fortran/77765
|
|
782 * openmp.c (gfc_match_oacc_routine): Check if proc_name exist before
|
|
783 comparing the routine name against it.
|
|
784
|
|
785 2017-06-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
786
|
|
787 PR fortran/80164
|
|
788 * trans-stmt.c (gfc_trans_call): If no code expr, use code->loc
|
|
789 as warning/error locus.
|
|
790
|
|
791 2017-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
792
|
|
793 PR fortran/81160
|
|
794 * arith.c (wprecision_int_real): Set return value before
|
|
795 mpz_clear and then return after it.
|
|
796
|
|
797 2017-06-15 Janus Weil <janus@gcc.gnu.org>
|
|
798
|
|
799 PR fortran/80983
|
|
800 * trans-expr.c (gfc_conv_procedure_call): Deallocate the result of
|
|
801 scalar allocatable procedure-pointer components.
|
|
802
|
|
803 2017-06-10 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
804
|
|
805 PR fortran/80988
|
|
806 * frontend-passes.c (traverse_io_block): Also
|
|
807 check for variables occurring as indices multiple
|
|
808 time in a single implied DO loop.
|
|
809
|
|
810 2017-06-05 Janus Weil <janus@gcc.gnu.org>
|
|
811
|
|
812 PR fortran/70601
|
|
813 * trans-expr.c (gfc_conv_procedure_call): Fix detection of allocatable
|
|
814 function results.
|
|
815
|
|
816 2017-06-05 Nicolas Koenig <koenigni@student.ethz.ch>
|
|
817
|
|
818 PR fortran/35339
|
|
819 * frontend-passes.c (traverse_io_block): New function.
|
|
820 (simplify_io_impl_do): New function.
|
|
821 (optimize_namespace): Invoke gfc_code_walker with
|
|
822 simplify_io_impl_do.
|
|
823
|
|
824 2017-06-02 Jakub Jelinek <jakub@redhat.com>
|
|
825
|
|
826 PR fortran/80918
|
|
827 * openmp.c (resolve_omp_clauses): Fix a typo.
|
|
828
|
|
829 2017-05-30 David Malcolm <dmalcolm@redhat.com>
|
|
830
|
|
831 * error.c (gfc_format_decoder): Update for new bool and
|
|
832 const char ** params.
|
|
833
|
|
834 2017-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
835
|
|
836 PR fortran/37131
|
|
837 * frontend-passes.c (check_conjg_transpose_variable):
|
|
838 Add prototype.
|
|
839 (has_dimen_vector_ref): Likewise
|
|
840 (matmul_temp_args): New function. Add prototype.
|
|
841 (optimize_namespace): Call matmul_temp_args.
|
|
842
|
|
843 2017-05-28 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
844
|
|
845 * frontend-passes.c (matmul_lhs_realloc): Correct
|
|
846 allocation size for case A1B2.
|
|
847
|
|
848 2017-05-25 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
849
|
|
850 * dump-parse-tree.c (show_expr): Also replace
|
|
851 with dumpfile for showing values for forgotten
|
|
852 case.
|
|
853
|
|
854 2017-05-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
855
|
|
856 * dump-parse-tree.c (show_expr): Replace stdout
|
|
857 with dumpfile for showing values.
|
|
858
|
|
859 2017-05-24 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
860
|
|
861 PR fortran/66094
|
|
862 * frontend-passes.c (matrix_case): Add A2TB2.
|
|
863 (inline_limit_check): Handle MATMUL(TRANSPOSE(A),B)
|
|
864 (inline_matmul_assign): Likewise.
|
|
865
|
|
866 2017-05-23 Thomas Schwinge <thomas@codesourcery.com>
|
|
867
|
|
868 * openmp.c (OACC_KERNELS_CLAUSES): Add "OMP_CLAUSE_NUM_GANGS",
|
|
869 "OMP_CLAUSE_NUM_WORKERS", "OMP_CLAUSE_VECTOR_LENGTH".
|
|
870
|
|
871 2017-05-22 Janus Weil <janus@gcc.gnu.org>
|
|
872
|
|
873 PR fortran/80766
|
|
874 * resolve.c (resolve_fl_derived): Make sure that vtype symbols are
|
|
875 properly resolved.
|
|
876
|
|
877 2017-05-19 Paul Thomas <pault@gcc.gnu.org>
|
|
878
|
|
879 PR fortran/80333
|
|
880 * trans-io.c (nml_get_addr_expr): If we are dealing with class
|
|
881 type data set tmp tree to get that address.
|
|
882 (transfer_namelist_element): Set the array spec to point to the
|
|
883 the class data.
|
|
884
|
|
885 2017-05-19 David Malcolm <dmalcolm@redhat.com>
|
|
886
|
|
887 PR fortran/79852
|
|
888 * bbt.c (insert): Remove trailing exclamation mark from message.
|
|
889 * decl.c (gfc_match_final_decl): Likewise.
|
|
890 * dump-parse-tree.c (show_expr): Likewise.
|
|
891 * module.c (gfc_use_module): Likewise.
|
|
892 * primary.c (build_actual_constructor): Likewise.
|
|
893 (gfc_convert_to_structure_constructor): Likewise.
|
|
894
|
|
895 2017-05-19 Thomas Schwinge <thomas@codesourcery.com>
|
|
896
|
|
897 * gfortran.h (enum gfc_omp_default_sharing): Add
|
|
898 "OMP_DEFAULT_PRESENT".
|
|
899 * dump-parse-tree.c (show_omp_clauses): Handle it.
|
|
900 * openmp.c (gfc_match_omp_clauses): Likewise.
|
|
901 * trans-openmp.c (gfc_trans_omp_clauses): Likewise.
|
|
902
|
|
903 2017-05-18 Fritz Reese <fritzoreese@gmail.com>
|
|
904
|
|
905 PR fortran/79968
|
|
906 * decl.c (match_attr_spec, gfc_match_automatic,
|
|
907 gfc_match_static, gfc_match_structure_decl): Unify diagnostic
|
|
908 errors regarding -fdec options.
|
|
909 * io.c (match_dec_etag, match_dec_vtag, match_dec_ftag): Ditto.
|
|
910
|
|
911 2017-05-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
912
|
|
913 PR fortran/80741
|
|
914 * trans-io.c (transfer_namelist_element): Change check from
|
|
915 NULL_TREE to null_pointer_node.
|
|
916
|
|
917 2017-05-17 Fritz Reese <fritzoreese@gmail.com>
|
|
918
|
|
919 PR fortran/80668
|
|
920 * expr.c (component_initializer): Don't generate initializers for
|
|
921 pointer components.
|
|
922 * invoke.texi (-finit-derived): Document.
|
|
923
|
|
924 2017-05-16 Paul Thomas <pault@gcc.gnu.org>
|
|
925
|
|
926 PR fortran/80554
|
|
927 * decl.c (build_sym): In a submodule allow overriding of host
|
|
928 associated symbols from the ancestor module with a new
|
|
929 declaration.
|
|
930
|
|
931 2017-05-15 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
932
|
|
933 PR fortran/80674
|
|
934 * trans-stmt.c (gfc_trans_integer_select): Remove redundant condition.
|
|
935
|
|
936 2017-05-15 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
937
|
|
938 PR fortran/80752
|
|
939 * expr.c (gfc_generate_initializer): If type conversion fails,
|
|
940 check for error and return NULL.
|
|
941
|
|
942 2017-05-14 Nicolas Koenig <koenigni@student.ethz.ch>
|
|
943
|
|
944 PR fortran/80442
|
|
945 * array.c (gfc_ref_dimen_size): Simplify stride
|
|
946 expression
|
|
947 * data.c (gfc_advance_section): Simplify start,
|
|
948 end and stride expressions
|
|
949 (gfc_advance_section): Simplify start and end
|
|
950 expressions
|
|
951 (gfc_get_section_index): Simplify start expression
|
|
952
|
|
953 2017-05-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
954
|
|
955 * io.c (gfc_resolve_dt): Fix returns to bool type.
|
|
956
|
|
957 2017-05-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
958
|
|
959 PR fortran/78659
|
|
960 * io.c (dtio_procs_present): Add new function to check for DTIO
|
|
961 procedures relative to I/O statement READ or WRITE.
|
|
962 (gfc_resolve_dt): Add namelist checks using the new function.
|
|
963 * resolve.c (dtio_procs_present): Remove function and related
|
|
964 namelist checks. (resolve_fl_namelist): Add check specific to
|
|
965 Fortran 95 restriction on namelist objects.
|
|
966
|
|
967 2017-05-11 Nathan Sidwell <nathan@acm.org>
|
|
968
|
|
969 * trans-decl.c: Include dumpfile.h not tree-dump.h,
|
|
970
|
|
971 2017-05-09 Janus Weil <janus@gcc.gnu.org>
|
|
972
|
|
973 PR fortran/79311
|
|
974 * resolve.c (gfc_resolve_finalizers): Ensure that derived-type
|
|
975 components have a their finalizers resolved, also if the superordinate
|
|
976 type itself has a finalizer.
|
|
977
|
|
978 2017-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
979
|
|
980 PR fortran/79930
|
|
981 * frontend-passes.c (matmul_to_var_expr): New function,
|
|
982 add prototype.
|
|
983 (matmul_to_var_code): Likewise.
|
|
984 (optimize_namespace): Use them from gfc_code_walker.
|
|
985
|
|
986 2017-05-05 David Malcolm <dmalcolm@redhat.com>
|
|
987
|
|
988 * cpp.c (cb_cpp_error): Replace report_diagnostic
|
|
989 with diagnostic_report_diagnostic.
|
|
990 * error.c (gfc_warning): Likewise.
|
|
991 (gfc_warning_now_at): Likewise.
|
|
992 (gfc_warning_now): Likewise.
|
|
993 (gfc_warning_internal): Likewise.
|
|
994 (gfc_error_now): Likewise.
|
|
995 (gfc_fatal_error): Likewise.
|
|
996 (gfc_error_opt): Likewise.
|
|
997 (gfc_internal_error): Likewise.
|
|
998
|
|
999 2017-05-01 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
1000
|
|
1001 PR fortran/37131
|
|
1002 * frontend-passes.c (inline_matmul_assign): Also check bounds
|
|
1003 for allocatable lhs and matrix-vector-multiplication.
|
|
1004
|
|
1005 2017-04-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
1006
|
|
1007 PR fortran/80484
|
|
1008 * io.c (format_lex): Check for '/' and set token to FMT_SLASH.
|
|
1009 (check_format): Move FMT_DT checking code to data_desc section.
|
|
1010 * module.c (gfc_match_use): Include the case of INTERFACE_DTIO.
|
|
1011
|
|
1012 2017-04-22 Janus Weil <janus@gcc.gnu.org>
|
|
1013
|
|
1014 PR fortran/80121
|
|
1015 * trans-types.c (gfc_conv_procedure_call): Deallocate the components
|
|
1016 of allocatable intent(out) arguments.
|
|
1017
|
|
1018 2017-04-21 Janus Weil <janus@gcc.gnu.org>
|
|
1019
|
|
1020 PR fortran/80392
|
|
1021 * trans-types.c (gfc_get_derived_type): Prevent an infinite loop when
|
|
1022 building a derived type that includes a procedure pointer component
|
|
1023 with a polymorphic result.
|
|
1024
|
|
1025 2017-04-17 Paul Thomas <pault@gcc.gnu.org>
|
|
1026
|
|
1027 PR fortran/80440
|
|
1028 * module.c (find_symtree_for_symbol): Delete.
|
|
1029 (read_module): Remove the call to the above.
|
|
1030
|
|
1031 2017-04-14 Janus Weil <janus@gcc.gnu.org>
|
|
1032
|
|
1033 PR fortran/80361
|
|
1034 * class.c (generate_finalization_wrapper): Give the finalization wrapper
|
|
1035 the recursive attribute.
|
|
1036
|
|
1037 2017-04-10 Nicolas Koenig <koenigni@student.ethz.ch>
|
|
1038 Paul Thomas <pault@gcc.gnu.org>
|
|
1039
|
|
1040 PR fortran/69498
|
|
1041 * module.c (gfc_match_submodule): Add error
|
|
1042 if function is called in the wrong state.
|
|
1043
|
|
1044 2017-04-10 Janus Weil <janus@gcc.gnu.org>
|
|
1045
|
|
1046 PR fortran/80046
|
|
1047 * expr.c (gfc_check_pointer_assign): Check if procedure pointer
|
|
1048 components in a pointer assignment need an explicit interface.
|
|
1049
|
|
1050 2017-03-18 Nicolas Koenig <koenigni@student.ethz.ch>
|
|
1051
|
|
1052 PR fortran/69498
|
|
1053 * symbol.c (gfc_delete_symtree): If there is a period in the name, ignore
|
|
1054 everything before it.
|
|
1055
|
|
1056 2017-03-28 Janus Weil <janus@gcc.gnu.org>
|
|
1057
|
|
1058 PR fortran/78661
|
|
1059 * trans-io.c (transfer_namelist_element): Perform a polymorphic call
|
|
1060 to a DTIO procedure if necessary.
|
|
1061
|
|
1062 2017-03-25 Paul Thomas <pault@gcc.gnu.org>
|
|
1063
|
|
1064 PR fortran/80156
|
|
1065 PR fortran/79382
|
|
1066 * decl.c (access_attr_decl): Remove the error for an absent
|
|
1067 generic DTIO interface and ensure that symbol has the flavor
|
|
1068 FL_PROCEDURE.
|
|
1069
|
|
1070 2017-03-22 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
1071
|
|
1072 PR fortran/79838
|
|
1073 * module.c: Remove trailing period.
|
|
1074
|
|
1075 2017-03-22 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
1076
|
|
1077 PR fortran/79602
|
|
1078 * decl.c: Replace '%s' with %qs.
|
|
1079 * expr.c: Likewise.
|
|
1080 * interface.c: Likewise.
|
|
1081 * match.c: Likewise.
|
|
1082 * primary.c: Likewise.
|
|
1083 * resolve.c: Likewise.
|
|
1084
|
|
1085 PR fortran/79844
|
|
1086 PR fortran/80011
|
|
1087 * io.c: Remove trailing spaces.
|
|
1088 * match.c: Likewise.
|
|
1089 * openmp.c: Likewise.
|
|
1090 * resolve.c: Likewise.
|
|
1091 * trans-intrinsic.c: Likewise.
|
|
1092
|
|
1093 PR fortran/79853
|
|
1094 * expr.c: Remove a double spaces.
|
|
1095
|
|
1096 PR fortran/79859
|
|
1097 * primary.c: Remove spurious quotes around %qs.
|
|
1098
|
|
1099 2017-03-22 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
1100
|
|
1101 PR fortran/80142
|
|
1102 * frontend-passes.c (combine_array_constructor): Take
|
|
1103 location of new expression from constructor expression instead
|
|
1104 of constructor.
|
|
1105
|
|
1106 2017-03-20 Nicolas Koenig <koenigni@student.ethz.ch>
|
|
1107
|
|
1108 PR fortran/39239
|
|
1109 * symbol.c (check_conflict): Report an error if an EQUIVALENCE
|
|
1110 object is BIND(C)
|
|
1111
|
|
1112 2017-03-18 Nicolas Koenig <koenigni@student.ethz.ch>
|
|
1113
|
|
1114 PR fortran/69498
|
|
1115 * decl.c (add_hidden_procptr_result): Fixed Refs count of the
|
|
1116 created "ppr@" symbol.
|
|
1117
|
|
1118 2017-03-18 Paul Thomas <pault@gcc.gnu.org>
|
|
1119
|
|
1120 PR fortran/79676
|
|
1121 * module.c (mio_symbol_attribute): Remove reset of the flag
|
|
1122 'no_module_procedures'.
|
|
1123 (check_for_module_procedures): New function. Move declaration
|
|
1124 of 'no_module_procedures' to above it.
|
|
1125 (gfc_dump_module): Traverse namespace calling new function.
|
|
1126
|
|
1127 2017-03-18 Paul Thomas <pault@gcc.gnu.org>
|
|
1128
|
|
1129 PR fortran/71838
|
|
1130 * symbol.c (check_conflict): A dummy procedure in a submodule,
|
|
1131 module procedure is not an error.
|
|
1132 (gfc_add_flavor): Ditto.
|
|
1133
|
|
1134 2017-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
1135
|
|
1136 PR fortran/79841
|
|
1137 * openmp.c (check_symbol_not_pointer): Adjust diagnostics.
|
|
1138
|
|
1139 2017-03-16 Jakub Jelinek <jakub@redhat.com>
|
|
1140
|
|
1141 PR fortran/80010
|
|
1142 * parse.c (gfc_ascii_statement): Use !$ACC for ST_OACC_ATOMIC
|
|
1143 and ST_OACC_END_ATOMIC, instead of !ACC.
|
|
1144 * trans-decl.c (finish_oacc_declare): Use !$ACC instead of $!ACC.
|
|
1145 * openmp.c (gfc_match_oacc_declare, gfc_match_oacc_wait,
|
|
1146 gfc_resolve_oacc_declare): Likewise.
|
|
1147
|
|
1148 PR fortran/79886
|
|
1149 * error.c (gfc_format_decoder): Rename plus argument to set_locus,
|
|
1150 remove ATTRIBUTE_UNUSED from all arguments, call default_tree_printer
|
|
1151 if not a Fortran specific spec.
|
|
1152 * trans-io.c: Include options.h.
|
|
1153 (gfc_build_st_parameter): Temporarily disable -Wpadded around layout
|
|
1154 of artificial IO data structures.
|
|
1155
|
|
1156 2017-03-15 David Malcolm <dmalcolm@redhat.com>
|
|
1157
|
|
1158 PR fortran/79860
|
|
1159 * resolve.c (resolve_contained_fntype): Make error messages more
|
|
1160 amenable to translation.
|
|
1161
|
|
1162 2017-03-06 Richard Biener <rguenther@suse.de>
|
|
1163
|
|
1164 PR fortran/79894
|
|
1165 * trans.c (gfc_add_modify_loc): Weaken assert.
|
|
1166
|
|
1167 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org>,
|
|
1168 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
|
|
1169
|
|
1170 * check.c (positive_check): Add new function checking constant for
|
|
1171 being greater then zero.
|
|
1172 (gfc_check_image_status): Add checking of image_status arguments.
|
|
1173 (gfc_check_failed_or_stopped_images): Same but for failed_- and
|
|
1174 stopped_images function.
|
|
1175 * dump-parse-tree.c (show_code_node): Added output of FAIL IMAGE.
|
|
1176 * gfortran.h (enum gfc_statement): Added FAIL_IMAGE_ST.
|
|
1177 (enum gfc_isym_id): Added new intrinsic symbols.
|
|
1178 (enum gfc_exec_op): Added EXEC_FAIL_IMAGE.
|
|
1179 * gfortran.texi: Added description for the new API functions. Updated
|
|
1180 coverage of gfortran of TS18508.
|
|
1181 * intrinsic.c (add_functions): Added symbols to resolve new intrinsic
|
|
1182 functions.
|
|
1183 * intrinsic.h: Added prototypes.
|
|
1184 * iresolve.c (gfc_resolve_failed_images): Resolve the failed_images
|
|
1185 intrinsic.
|
|
1186 (gfc_resolve_image_status): Same for image_status.
|
|
1187 (gfc_resolve_stopped_images): Same for stopped_images.
|
|
1188 * libgfortran.h: Added prototypes.
|
|
1189 * match.c (gfc_match_if): Added matching of FAIL IMAGE statement.
|
|
1190 (gfc_match_fail_image): Match a FAIL IMAGE statement.
|
|
1191 * match.h: Added prototype.
|
|
1192 * parse.c (decode_statement): Added matching for FAIL IMAGE.
|
|
1193 (next_statement): Same.
|
|
1194 (gfc_ascii_statement): Same.
|
|
1195 * resolve.c: Same.
|
|
1196 * simplify.c (gfc_simplify_failed_or_stopped_images): For COARRAY=
|
|
1197 single a constant result can be returne.d
|
|
1198 (gfc_simplify_image_status): For COARRAY=single the result is constant.
|
|
1199 * st.c (gfc_free_statement): Added FAIL_IMAGE handling.
|
|
1200 * trans-decl.c (gfc_build_builtin_function_decls): Added decls of the
|
|
1201 new intrinsics.
|
|
1202 * trans-expr.c (gfc_conv_procedure_call): This is first time all
|
|
1203 arguments of a function are optional, which is now handled here
|
|
1204 correctly.
|
|
1205 * trans-intrinsic.c (conv_intrinsic_image_status): Translate
|
|
1206 image_status.
|
|
1207 (gfc_conv_intrinsic_function): Add support for image_status.
|
|
1208 (gfc_is_intrinsic_libcall): Add support for the remaining new
|
|
1209 intrinsics.
|
|
1210 * trans-stmt.c (gfc_trans_fail_image): Trans a fail image.
|
|
1211 * trans-stmt.h: Add the prototype for the above.
|
|
1212 * trans.c (trans_code): Dispatch for fail_image.
|
|
1213 * trans.h: Add the trees for the new intrinsics.
|
|
1214
|
|
1215 2017-03-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
|
1216
|
|
1217 PR fortran/79841
|
|
1218 * openmp.c (check_symbol_not_pointer): Adjust diagnostic.
|
|
1219
|
|
1220 2017-02-28 Paul Thomas <pault@gcc.gnu.org>
|
|
1221
|
|
1222 PR fortran/79739
|
|
1223 * resolve.c (resolve_fl_procedure): Deal with the case where
|
|
1224 'submodule_name' is NULL so that gfc_error does not ICE.
|
|
1225 Reformat the error message to make it more consistent.
|
|
1226
|
|
1227 2017-02-28 Jakub Jelinek <jakub@redhat.com>
|
|
1228
|
|
1229 * parse.c (parse_critical_block): Use cond ? G_("...") : G_("...")
|
|
1230 instead of just cond ? "..." : "...".
|
|
1231 * scanner.c (gfc_next_char_literal): Likewise.
|
|
1232 * match.c (match_exit_cycle): Likewise.
|
|
1233
|
|
1234 2017-02-26 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
1235
|
|
1236 PR fortran/51119
|
|
1237 * options.c (gfc_post_options): Set default limit for matmul
|
|
1238 inlining to 30.
|
|
1239 * invoke.texi: Document change.
|
|
1240
|
|
1241 2017-02-25 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
1242
|
|
1243 PR fortran/79601
|
|
1244 * interface.c (check_dtio_arg_TKR_intent): Change 'intent'
|
|
1245 to 'INTENT'.
|
|
1246
|
|
1247 2017-02-25 Dominique d'Humieres <dominiq@lps.ens.fr>
|
|
1248
|
|
1249 PR fortran/79597
|
|
1250 * interface.c (gfc_match_end_interface): Remove spurious comma
|
|
1251 and space, replace 'got %s' with 'got %qs'.
|
|
1252
|
|
1253 2017-02-20 Paul Thomas <pault@gcc.gnu.org>
|
|
1254
|
|
1255 PR fortran/79599
|
|
1256 * interface.c (check_dtio_arg_TKR_intent): Supply 'must'
|
|
1257 missing from error message.
|
|
1258
|
|
1259 2017-02-20 Paul Thomas <pault@gcc.gnu.org>
|
|
1260
|
|
1261 PR fortran/79523
|
|
1262 * interface.c (gfc_find_typebound_dtio_proc): Guard test for
|
|
1263 flavor attribute by checking that symbol is resolved.
|
|
1264
|
|
1265 2017-02-16 Paul Thomas <pault@gcc.gnu.org>
|
|
1266
|
|
1267 PR fortran/79382
|
|
1268 * decl.c (access_attr_decl): Test for presence of generic DTIO
|
|
1269 interface and emit error if not present.
|
|
1270
|
|
1271 2017-02-20 Paul Thomas <pault@gcc.gnu.org>
|
|
1272
|
|
1273 PR fortran/79434
|
|
1274 * parse.c (check_component, parse_union): Whitespace.
|
|
1275 (set_syms_host_assoc): For a derived type, check if the module
|
|
1276 in which it was declared is one of the submodule ancestors. If
|
|
1277 it is, make the components public. Otherwise, reset attribute
|
|
1278 'host_assoc' and set 'use-assoc' so that encapsulation is
|
|
1279 preserved.
|
|
1280
|
|
1281 2017-02-19 Paul Thomas <pault@gcc.gnu.org>
|
|
1282
|
|
1283 PR fortran/79447
|
|
1284 * decl.c (gfc_set_constant_character_len): Whitespace.
|
|
1285 (gfc_match_end): Catch case where a procedure is contained in
|
|
1286 a module procedure and ensure that 'end procedure' is the
|
|
1287 correct termination.
|
|
1288
|
|
1289 2017-02-19 Paul Thomas <pault@gcc.gnu.org>
|
|
1290
|
|
1291 PR fortran/79402
|
|
1292 * resolve.c (fixup_unique_dummy): New function.
|
|
1293 (gfc_resolve_expr): Call it for dummy variables with a unique
|
|
1294 symtree name.
|
|
1295
|
|
1296 2017-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1297
|
|
1298 PR fortran/79229
|
|
1299 * trans-expr.c (gfc_trans_assignment_1): Deref indirect refs when
|
|
1300 compiling with -fcheck=mem to check the pointer and not the data.
|
|
1301
|
|
1302 2017-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1303
|
|
1304 PR fortran/79335
|
|
1305 * trans-array.c (duplicate_allocatable_coarray): Ensure attributes
|
|
1306 passed are properly initialized.
|
|
1307 (structure_alloc_comps): Same.
|
|
1308 * trans-expr.c (gfc_trans_structure_assign): Same.
|
|
1309
|
|
1310 2017-02-13 Jakub Jelinek <jakub@redhat.com>
|
|
1311
|
|
1312 * trans-expr.c (gfc_conv_substring): Add missing space in diagnostics.
|
|
1313
|
|
1314 2017-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
|
|
1315
|
|
1316 PR fortran/65542
|
|
1317 * intrinsic.c (gfc_intrinsic_func_interface): Return an error
|
|
1318 for -std=f95 for disallowed transformational functions in
|
|
1319 initialization expressions.
|
|
1320
|
|
1321 2017-02-09 Cesar Philippidis <cesar@codesourcery.com>
|
|
1322 Joseph Myers <joseph@codesourcery.com>
|
|
1323
|
|
1324 * openmp.c (resolve_omp_clauses): Error on directives
|
|
1325 containing both tile and collapse clauses.
|
|
1326 (resolve_oacc_loop_blocks): Represent '*' tile arguments as zero.
|
|
1327 * trans-openmp.c (gfc_trans_omp_do): Lower tiled loops like
|
|
1328 collapsed loops.
|
|
1329
|
|
1330 2017-02-07 Steven G. Kargl <kargl@gcc.gnu.org>
|
|
1331
|
|
1332 * trans-types.c (gfc_get_int_kind_from_width_isofortranen): Choose
|
|
1333 REAL type with the widest precision if two (or more) have the same
|
|
1334 storage size.
|
|
1335
|
|
1336 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1337
|
|
1338 PR fortran/79344
|
|
1339 * trans-stmt.c (gfc_trans_allocate): Only deallocate the components of
|
|
1340 the temporary, when a new object was created for the temporary. Not
|
|
1341 when it is just an alias to an existing object.
|
|
1342
|
|
1343 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1344
|
|
1345 PR fortran/79335
|
|
1346 * trans-decl.c (generate_coarray_sym_init): Retrieve the symbol's
|
|
1347 attributes before using them.
|
|
1348
|
|
1349 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1350
|
|
1351 PR fortran/78958
|
|
1352 * trans-stmt.c (gfc_trans_allocate): Add the multiplying the _len
|
|
1353 component of unlimited polymorphic objects when source-allocating.
|
|
1354
|
|
1355 2017-02-05 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1356
|
|
1357 PR fortran/79230
|
|
1358 * trans-array.c (structure_alloc_comps): Ignore pointer components when
|
|
1359 freeing structures.
|
|
1360
|
|
1361 2017-01-25 Maxim Ostapenko <m.ostapenko@samsung.com>
|
|
1362
|
|
1363 PR lto/79061
|
|
1364 * f95-lang.c (gfc_create_decls): Include stringpool.h.
|
|
1365 Pass main_input_filename to build_translation_unit_decl.
|
|
1366
|
|
1367 2017-01-23 Thomas Koenig <tkoenig@netcologne.de>
|
|
1368
|
|
1369 * arith.c (arith_power): If simplifying integer power expression
|
|
1370 to zero, warn if -Winteger-division is given.
|
|
1371
|
|
1372 2017-01-22 Jakub Jelinek <jakub@redhat.com>
|
|
1373
|
|
1374 PR fortran/79154
|
|
1375 * parse.c (matchs, matcho, matchds, matchdo): Replace return st;
|
|
1376 with { ret = st; goto finish; }.
|
|
1377 (decode_omp_directive): Allow declare simd, declare target and
|
|
1378 simd directives in PURE/ELEMENTAL procedures. Only call
|
|
1379 gfc_unset_implicit_pure on successful match of other procedures.
|
|
1380
|
|
1381 2017-01-21 Gerald Pfeifer <gerald@pfeifer.com>
|
|
1382
|
|
1383 * gfc-internals.texi (Symbol Versioning): Change references
|
|
1384 to www.akkadia.org to https.
|
|
1385
|
|
1386 2017-01-21 Jakub Jelinek <jakub@redhat.com>
|
|
1387
|
|
1388 * gfortran.h (gfc_extract_int): Change return type to bool. Add
|
|
1389 int argument with = 0.
|
|
1390 * decl.c (gfc_match_kind_spec): Adjust gfc_extract_int caller, pass
|
|
1391 1 as new last argument to it, don't emit gfc_error.
|
|
1392 (match_char_kind): Likewise.
|
|
1393 (gfc_match_decl_type_spec): Use gfc_get_string ("%s", x) instead of
|
|
1394 gfc_get_string (x).
|
|
1395 (gfc_match_derived_decl, match_binding_attributes): Likewise.
|
|
1396 (gfc_match_structure_decl): Don't sprintf back to name, call
|
|
1397 get_struct_decl directly with gfc_dt_upper_string (name) result.
|
|
1398 * trans-stmt.c (gfc_trans_allocate): Use gfc_get_string ("%s", x)
|
|
1399 instead of gfc_get_string (x).
|
|
1400 * module.c (gfc_dt_lower_string, gfc_dt_upper_string,
|
|
1401 gfc_match_use, gfc_match_submodule, find_true_name, mio_pool_string,
|
|
1402 mio_symtree_ref, mio_expr, mio_omp_udr_expr, load_generic_interfaces,
|
|
1403 load_omp_udrs, load_needed, read_module, dump_module,
|
|
1404 create_intrinsic_function, import_iso_c_binding_module,
|
|
1405 create_int_parameter, create_int_parameter_array, create_derived_type,
|
|
1406 use_iso_fortran_env_module): Likewise.
|
|
1407 * error.c (gfc_diagnostic_starter, gfc_diagnostic_start_span): Use
|
|
1408 pp_verbatim (context->printer, "%s", x) instead of
|
|
1409 pp_verbatim (context->printer, x).
|
|
1410 * match.c (gfc_match_small_int): Adjust gfc_extract_int caller, pass
|
|
1411 1 as new last argument to it, don't emit gfc_error.
|
|
1412 (gfc_match_small_int_expr): Likewise.
|
|
1413 * iresolve.c (gfc_get_string): Optimize format "%s" case.
|
|
1414 (resolve_bound): Use gfc_get_string ("%s", x) instead of
|
|
1415 gfc_get_string (x).
|
|
1416 (resolve_transformational): Formatting fix.
|
|
1417 (gfc_resolve_char_achar): Change name argument to bool is_achar,
|
|
1418 use a single format string and if is_achar add "a" before "char".
|
|
1419 (gfc_resolve_achar, gfc_resolve_char): Adjust callers.
|
|
1420 * expr.c (gfc_extract_int): Change return type to bool, return true
|
|
1421 if some error occurred. Add REPORT_ERROR argument, if non-zero
|
|
1422 call either gfc_error or gfc_error_now depending on its sign.
|
|
1423 * arith.c (arith_power): Adjust gfc_extract_int caller.
|
|
1424 * symbol.c (gfc_add_component): Use gfc_get_string ("%s", x) instead
|
|
1425 of gfc_get_string (x).
|
|
1426 (gfc_new_symtree, gfc_delete_symtree, gfc_get_uop, gfc_new_symbol,
|
|
1427 gfc_get_gsymbol, generate_isocbinding_symbol): Likewise.
|
|
1428 * openmp.c (gfc_match_omp_clauses): Adjust gfc_extract_int caller, pass
|
|
1429 -1 as new last argument to it, don't emit gfc_error_now.
|
|
1430 (gfc_match_omp_declare_reduction): Use gfc_get_string ("%s", x)
|
|
1431 instead of gfc_get_string (x).
|
|
1432 * check.c (kind_check): Adjust gfc_extract_int caller.
|
|
1433 * intrinsic.c (add_sym, find_sym, make_alias): Use
|
|
1434 gfc_get_string ("%s", x) instead of gfc_get_string (x).
|
|
1435 * simplify.c (get_kind, gfc_simplify_btest, gfc_simplify_maskr,
|
|
1436 gfc_simplify_maskl, gfc_simplify_poppar, gfc_simplify_repeat,
|
|
1437 gfc_simplify_selected_int_kind, gfc_simplify_selected_real_kind):
|
|
1438 Adjust gfc_extract_int callers.
|
|
1439 * trans-decl.c (gfc_find_module): Use gfc_get_string ("%s", x)
|
|
1440 instead of gfc_get_string (x).
|
|
1441 * matchexp.c (expression_syntax): Add const.
|
|
1442 * primary.c (match_kind_param, match_hollerith_constant,
|
|
1443 match_string_constant): Adjust gfc_extract_int callers.
|
|
1444 (match_keyword_arg): Use gfc_get_string ("%s", x) instead of
|
|
1445 gfc_get_string (x).
|
|
1446 * frontend-passes.c (optimize_minmaxloc): Likewise.
|
|
1447
|
|
1448 2017-01-19 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1449
|
|
1450 PR fortran/70696
|
|
1451 * trans-decl.c (gfc_build_qualified_array): Add static decl to parent
|
|
1452 function only, when the decl-context is not the translation unit.
|
|
1453
|
|
1454 2017-01-18 Louis Krupp <louis.krupp@zoho.com>
|
|
1455
|
|
1456 PR fortran/50069
|
|
1457 PR fortran/55086
|
|
1458 * trans-expr.c (gfc_conv_variable): Don't treat temporary variables
|
|
1459 as function arguments.
|
|
1460 * trans-stmt.c (forall_make_variable_temp,
|
|
1461 generate_loop_for_temp_to_lhs, gfc_trans_assign_need_temp,
|
|
1462 gfc_trans_forall_1): Don't adjust offset of forall temporary
|
|
1463 for array sections, make forall temporaries work for substring
|
|
1464 expressions, improve test coverage by adding -ftest-forall-temp
|
|
1465 option to request usage of temporary array in forall code.
|
|
1466 * lang.opt: Add -ftest-forall-temp option.
|
|
1467 * invoke.texi: Add -ftest-forall-temp option.
|
|
1468
|
|
1469 2017-01-18 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1470
|
|
1471 * primary.c (caf_variable_attr): Improve figuring whether the current
|
|
1472 component is the last one refed.
|
|
1473 * trans-stmt.c (gfc_trans_allocate): Do not generate sync_all calls
|
|
1474 when allocating pointer or allocatable components.
|
|
1475
|
|
1476 2017-01-18 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1477
|
|
1478 * gfortran.texi: Add missing parameters to caf-API functions. Correct
|
|
1479 typos and clarify some descriptions.
|
|
1480
|
|
1481 2017-01-18 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1482
|
|
1483 PR fortran/70696
|
|
1484 Missed some cases, here they are:
|
|
1485 * trans-decl.c (gfc_build_qualified_array): Add static tokens to the
|
|
1486 parent function's scope.
|
|
1487 * trans-expr.c (gfc_get_tree_for_caf_expr): Shorten code. Remove
|
|
1488 unnecessary assert.
|
|
1489
|
|
1490 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1491
|
|
1492 PR fortran/70697
|
|
1493 * resolve.c (resolve_lock_unlock_event): Resolve the expression for
|
|
1494 event's until_count.
|
|
1495
|
|
1496 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1497
|
|
1498 PR fortran/70696
|
|
1499 * trans-expr.c (gfc_get_tree_for_caf_expr): Ensure the backend_decl
|
|
1500 is valid before accessing it.
|
|
1501
|
|
1502 2017-01-09 Jakub Jelinek <jakub@redhat.com>
|
|
1503
|
|
1504 PR translation/79019
|
|
1505 PR translation/79020
|
|
1506 * decl.c (attr_decl1): Fix spelling in translatable string.
|
|
1507 * intrinsic.texi: Fix spelling - invokation -> invocation.
|
|
1508 * lang.opt (faggressive-function-elimination, gfc_convert): Fix
|
|
1509 typos in descriptions.
|
|
1510 * openmp.c (resolve_omp_clauses): Add missing whitespace to
|
|
1511 translatable strings.
|
|
1512
|
|
1513 2017-01-08 Martin Sebor <msebor@redhat.com>
|
|
1514
|
|
1515 PR tree-optimization/78913
|
|
1516 PR middle-end/77708
|
|
1517 * trans-common.c (build_equiv_decl): Increase buffer size to avoid
|
|
1518 truncation for any argument.
|
|
1519 * trans-types.c (gfc_build_logical_type): Same.
|
|
1520
|
|
1521 2017-01-07 Andre Vehreschild <vehre@gcc.gnu.org>
|
|
1522
|
|
1523 PR fortran/78781
|
|
1524 PR fortran/78935
|
|
1525 * expr.c (gfc_check_pointer_assign): Return the same error message for
|
|
1526 rewritten coarray pointer assignments like for plain ones.
|
|
1527 * gfortran.h: Change prototype.
|
|
1528 * primary.c (caf_variable_attr): Set attributes used ones only only
|
|
1529 ones. Add setting of pointer_comp attribute.
|
|
1530 (gfc_caf_attr): Add setting of pointer_comp attribute.
|
|
1531 * trans-array.c (gfc_array_allocate): Add flag that the component to
|
|
1532 allocate is not an ultimate coarray component. Add allocation of
|
|
1533 pointer arrays.
|
|
1534 (structure_alloc_comps): Extend nullify to treat pointer components in
|
|
1535 coarrays correctly. Restructure nullify to remove redundant code.
|
|
1536 (gfc_nullify_alloc_comp): Allow setting caf_mode flags.
|
|
1537 * trans-array.h: Change prototype of gfc_nullify_alloc_comp ().
|
|
1538 * trans-decl.c (generate_coarray_sym_init): Call nullify_alloc_comp for
|
|
1539 derived type coarrays with pointer components.
|
|
1540 * trans-expr.c (gfc_trans_structure_assign): Also treat pointer
|
|
1541 components.
|
|
1542 (trans_caf_token_assign): Handle assignment of token of scalar pointer
|
|
1543 components.
|
|
1544 (gfc_trans_pointer_assignment): Call above routine.
|
|
1545 * trans-intrinsic.c (conv_expr_ref_to_caf_ref): Add treating pointer
|
|
1546 components.
|
|
1547 (gfc_conv_intrinsic_caf_get): Likewise.
|
|
1548 (conv_caf_send): Likewise.
|
|
1549 * trans-stmt.c (gfc_trans_allocate): After allocating a derived type in
|
|
1550 a coarray pre-register the tokens.
|
|
1551 (gfc_trans_deallocate): Simply determining the coarray type (scalar or
|
|
1552 array) and deregistering it correctly.
|
|
1553 * trans-types.c (gfc_typenode_for_spec): Replace in_coarray flag by the
|
|
1554 actual codim to allow lookup of array types in the cache.
|
|
1555 (gfc_build_array_type): Likewise.
|
|
1556 (gfc_get_array_descriptor_base): Likewise.
|
|
1557 (gfc_get_array_type_bounds): Likewise.
|
|
1558 (gfc_get_derived_type): Likewise.
|
|
1559 * trans-types.h: Likewise.
|
|
1560 * trans.c (gfc_deallocate_with_status): Enable deregistering of all kind
|
|
1561 of coarray components.
|
|
1562 (gfc_deallocate_scalar_with_status): Use free() in fcoarray_single mode
|
|
1563 instead of caf_deregister.
|
|
1564
|
|
1565 2017-01-06 Jakub Jelinek <jakub@redhat.com>
|
|
1566
|
|
1567 * simplify.c (simplify_transformation_to_array): Use
|
|
1568 GCC_DIAGNOSTIC_PUSH_IGNORED and GCC_DIAGNOSTIC_POP instead of
|
|
1569 #pragma GCC diagnostic {push,ignored,pop}.
|
|
1570
|
|
1571 2017-01-06 Alexandre Oliva <aoliva@redhat.com>
|
|
1572
|
|
1573 * simplify.c (simplify_transformation_to_array): Silence
|
|
1574 array bounds warning. Fix whitespace.
|
|
1575
|
|
1576 2017-01-04 Alexandre Oliva <aoliva@redhat.com>
|
|
1577
|
|
1578 * module.c (load_omp_udrs): Initialize name.
|
|
1579
|
|
1580 2017-01-02 Janne Blomqvist <jb@gcc.gnu.org>
|
|
1581
|
|
1582 PR fortran/78534
|
|
1583 * trans-expr.c (gfc_trans_string_copy): Rework string copy
|
|
1584 algorithm to avoid -Wstringop-overflow warning.
|
|
1585
|
|
1586 2017-01-01 Jakub Jelinek <jakub@redhat.com>
|
|
1587
|
|
1588 Update copyright years.
|
|
1589
|
|
1590 * gfortranspec.c (lang_specific_driver): Update copyright notice
|
|
1591 dates.
|
|
1592 * gfc-internals.texi: Bump @copying's copyright year.
|
|
1593 * gfortran.texi: Ditto.
|
|
1594 * intrinsic.texi: Ditto.
|
|
1595 * invoke.texi: Ditto.
|
|
1596
|
|
1597 Copyright (C) 2017 Free Software Foundation, Inc.
|
|
1598
|
|
1599 Copying and distribution of this file, with or without modification,
|
|
1600 are permitted in any medium without royalty provided the copyright
|
|
1601 notice and this notice are preserved.
|