1 2015-01-18 Paul Thomas <pault@gcc.gnu.org>
4 * trans-expr.c (gfc_trans_subcomponent_assign): Use a deep copy
5 for allocatable components, where the source is a variable.
7 2015-01-18 Paul Thomas <pault@gcc.gnu.org>
10 * primary.c (gfc_match_varspec): Exclude dangling associate-
11 names with dimension 0 from being counted as arrays.
12 * resolve.c (resolve_assoc_var): Sub-strings are permissible
13 for associate-names, so exclude characters from the test for
15 * trans-decl.c (gfc_get_symbol_decl): Associate-names can use
16 the hidden string length variable of their associated target.
17 Signal this by setting 'length' to a constant, if the decl for
18 the string length is a variable.
20 2015-01-17 Paul Thomas <pault@gcc.gnu.org>
23 * trans-expr.c (gfc_trans_pointer_assignment): Make sure that
24 before reinitializing rse, to add the rse.pre to block before
26 * trans-intrinsic.c (gfc_conv_associated): Deal with the class
27 data being a descriptor.
29 2015-01-17 Andre Vehreschild <vehre@gmx.de>
32 * primary.c (build_actual_constructor): Prevent warning.
33 * trans-expr.c (alloc_scalar_allocatable_for_subcomponent_
34 assignment): New function encapsulates treatment of allocatable
36 (gfc_trans_subcomponent_assign): Needed to distinguish between
37 regular assignment and initilization.
38 (gfc_trans_structure_assign): Same.
39 (gfc_conv_structure): Same.
42 * gfortran.h: deferred_parameter is not needed, because
43 it artificial does the trick completely.
44 * primary.c (build_actual_constructor): Same.
45 (gfc_convert_to_structure_constructor): Same.
46 * resolve.c (resolve_fl_derived0): Same.
47 * trans-expr.c (gfc_conv_component_ref): Prevent treating
48 allocatable deferred length char arrays here.
49 (gfc_trans_subcomponent_assign): Same as above.
50 * trans-types.c (gfc_sym_type): This is done in
51 gfc_get_derived_type already.
53 2015-01-17 Andre Vehreschild <vehre@gmx.de>
56 * trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
57 length when the symbol is declared to be a result.
58 * trans-expr.c (gfc_conv_procedure_call): Strip deref on the
59 string length when functions are nested and the string length
60 is a reference already.
62 2015-01-16 Janus Weil <janus@gcc.gnu.org>
65 * decl.c (match_pointer_init): Error out if resolution of init expr
68 2015-01-15 Tobias Burnus <burnus@net-b.de>
70 * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses,
71 resolve_oacc_deviceptr_clause, resolve_omp_clauses,
72 gfc_resolve_oacc_declare): Replace '%s' by %qs.
74 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
75 Cesar Philippidis <cesar@codesourcery.com>
76 James Norris <jnorris@codesourcery.com>
77 Ilmir Usmanov <i.usmanov@samsung.com>
78 Tobias Burnus <burnus@net-b.de>
80 * lang.opt (fopenacc): New option.
81 * cpp.c (cpp_define_builtins): Conditionally define _OPENACC.
82 * dump-parse-tree.c (show_omp_node): Split part of it into...
83 (show_omp_clauses): ... this new function.
84 (show_omp_node, show_code_node): Handle EXEC_OACC_PARALLEL_LOOP,
85 EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
86 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
87 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
88 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
89 (show_namespace): Update for OpenACC.
90 * f95-lang.c (DEF_FUNCTION_TYPE_VAR_2, DEF_FUNCTION_TYPE_VAR_8)
91 (DEF_FUNCTION_TYPE_VAR_12, DEF_GOACC_BUILTIN)
92 (DEF_GOACC_BUILTIN_COMPILER): New macros.
93 * types.def (BT_FN_VOID_INT_INT_VAR)
94 (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
95 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
97 * gfortran.h (gfc_statement): Add ST_OACC_PARALLEL_LOOP,
98 ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
99 ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_DATA,
100 ST_OACC_END_DATA, ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA,
101 ST_OACC_LOOP, ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE,
102 ST_OACC_WAIT, ST_OACC_CACHE, ST_OACC_KERNELS_LOOP,
103 ST_OACC_END_KERNELS_LOOP, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
105 (struct gfc_expr_list): New data type.
106 (gfc_get_expr_list): New macro.
107 (gfc_omp_map_op): Add OMP_MAP_FORCE_ALLOC, OMP_MAP_FORCE_DEALLOC,
108 OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM, OMP_MAP_FORCE_TOFROM,
109 OMP_MAP_FORCE_PRESENT, OMP_MAP_FORCE_DEVICEPTR.
110 (OMP_LIST_FIRST, OMP_LIST_DEVICE_RESIDENT, OMP_LIST_USE_DEVICE)
111 (OMP_LIST_CACHE): New enumerators.
112 (struct gfc_omp_clauses): Add async_expr, gang_expr, worker_expr,
113 vector_expr, num_gangs_expr, num_workers_expr, vector_length_expr,
114 wait_list, tile_list, async, gang, worker, vector, seq,
115 independent, wait, par_auto, gang_static, and loc members.
116 (struct gfc_namespace): Add oacc_declare_clauses member.
117 (gfc_exec_op): Add EXEC_OACC_KERNELS_LOOP,
118 EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS,
119 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
120 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
121 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
122 (gfc_free_expr_list, gfc_resolve_oacc_directive)
123 (gfc_resolve_oacc_declare, gfc_resolve_oacc_parallel_loop_blocks)
124 (gfc_resolve_oacc_blocks): New prototypes.
125 * match.c (match_exit_cycle): Handle EXEC_OACC_LOOP and
126 EXEC_OACC_PARALLEL_LOOP.
127 * match.h (gfc_match_oacc_cache, gfc_match_oacc_wait)
128 (gfc_match_oacc_update, gfc_match_oacc_declare)
129 (gfc_match_oacc_loop, gfc_match_oacc_host_data)
130 (gfc_match_oacc_data, gfc_match_oacc_kernels)
131 (gfc_match_oacc_kernels_loop, gfc_match_oacc_parallel)
132 (gfc_match_oacc_parallel_loop, gfc_match_oacc_enter_data)
133 (gfc_match_oacc_exit_data, gfc_match_oacc_routine): New
135 * openmp.c: Include "diagnostic.h" and "gomp-constants.h".
136 (gfc_free_omp_clauses): Update for members added to struct
138 (gfc_match_omp_clauses): Change mask paramter to uint64_t. Add
140 (resolve_omp_clauses): Add openacc parameter. Update for OpenACC.
141 (struct fortran_omp_context): Add is_openmp member.
142 (gfc_resolve_omp_parallel_blocks): Initialize it.
143 (gfc_resolve_do_iterator): Update for OpenACC.
144 (gfc_resolve_omp_directive): Call
145 resolve_omp_directive_inside_oacc_region.
146 (OMP_CLAUSE_PRIVATE, OMP_CLAUSE_FIRSTPRIVATE)
147 (OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_COPYPRIVATE)
148 (OMP_CLAUSE_SHARED, OMP_CLAUSE_COPYIN, OMP_CLAUSE_REDUCTION)
149 (OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS, OMP_CLAUSE_SCHEDULE)
150 (OMP_CLAUSE_DEFAULT, OMP_CLAUSE_ORDERED, OMP_CLAUSE_COLLAPSE)
151 (OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE)
152 (OMP_CLAUSE_ALIGNED, OMP_CLAUSE_DEPEND, OMP_CLAUSE_INBRANCH)
153 (OMP_CLAUSE_LINEAR, OMP_CLAUSE_NOTINBRANCH, OMP_CLAUSE_PROC_BIND)
154 (OMP_CLAUSE_SAFELEN, OMP_CLAUSE_SIMDLEN, OMP_CLAUSE_UNIFORM)
155 (OMP_CLAUSE_DEVICE, OMP_CLAUSE_MAP, OMP_CLAUSE_TO)
156 (OMP_CLAUSE_FROM, OMP_CLAUSE_NUM_TEAMS, OMP_CLAUSE_THREAD_LIMIT)
157 (OMP_CLAUSE_DIST_SCHEDULE): Use uint64_t.
158 (OMP_CLAUSE_ASYNC, OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS)
159 (OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_COPY, OMP_CLAUSE_COPYOUT)
160 (OMP_CLAUSE_CREATE, OMP_CLAUSE_PRESENT)
161 (OMP_CLAUSE_PRESENT_OR_COPY, OMP_CLAUSE_PRESENT_OR_COPYIN)
162 (OMP_CLAUSE_PRESENT_OR_COPYOUT, OMP_CLAUSE_PRESENT_OR_CREATE)
163 (OMP_CLAUSE_DEVICEPTR, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER)
164 (OMP_CLAUSE_VECTOR, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT)
165 (OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_DEVICE_RESIDENT)
166 (OMP_CLAUSE_HOST_SELF, OMP_CLAUSE_OACC_DEVICE, OMP_CLAUSE_WAIT)
167 (OMP_CLAUSE_DELETE, OMP_CLAUSE_AUTO, OMP_CLAUSE_TILE): New macros.
168 (gfc_match_omp_clauses): Handle those.
169 (OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES, OACC_DATA_CLAUSES)
170 (OACC_LOOP_CLAUSES, OACC_PARALLEL_LOOP_CLAUSES)
171 (OACC_KERNELS_LOOP_CLAUSES, OACC_HOST_DATA_CLAUSES)
172 (OACC_DECLARE_CLAUSES, OACC_UPDATE_CLAUSES)
173 (OACC_ENTER_DATA_CLAUSES, OACC_EXIT_DATA_CLAUSES)
174 (OACC_WAIT_CLAUSES): New macros.
175 (gfc_free_expr_list, match_oacc_expr_list, match_oacc_clause_gang)
176 (gfc_match_omp_map_clause, gfc_match_oacc_parallel_loop)
177 (gfc_match_oacc_parallel, gfc_match_oacc_kernels_loop)
178 (gfc_match_oacc_kernels, gfc_match_oacc_data)
179 (gfc_match_oacc_host_data, gfc_match_oacc_loop)
180 (gfc_match_oacc_declare, gfc_match_oacc_update)
181 (gfc_match_oacc_enter_data, gfc_match_oacc_exit_data)
182 (gfc_match_oacc_wait, gfc_match_oacc_cache)
183 (gfc_match_oacc_routine, oacc_is_loop)
184 (resolve_oacc_scalar_int_expr, resolve_oacc_positive_int_expr)
185 (check_symbol_not_pointer, check_array_not_assumed)
186 (resolve_oacc_data_clauses, resolve_oacc_deviceptr_clause)
187 (oacc_compatible_clauses, oacc_is_parallel, oacc_is_kernels)
188 (omp_code_to_statement, oacc_code_to_statement)
189 (resolve_oacc_directive_inside_omp_region)
190 (resolve_omp_directive_inside_oacc_region)
191 (resolve_oacc_nested_loops, resolve_oacc_params_in_parallel)
192 (resolve_oacc_loop_blocks, gfc_resolve_oacc_blocks)
193 (resolve_oacc_loop, resolve_oacc_cache, gfc_resolve_oacc_declare)
194 (gfc_resolve_oacc_directive): New functions.
195 * parse.c (next_free): Update for OpenACC. Move some code into...
196 (verify_token_free): ... this new function.
197 (next_fixed): Update for OpenACC. Move some code into...
198 (verify_token_fixed): ... this new function.
199 (case_executable): Add ST_OACC_UPDATE, ST_OACC_WAIT,
200 ST_OACC_CACHE, ST_OACC_ENTER_DATA, and ST_OACC_EXIT_DATA.
201 (case_exec_markers): Add ST_OACC_PARALLEL_LOOP, ST_OACC_PARALLEL,
202 ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA, ST_OACC_LOOP,
203 ST_OACC_KERNELS_LOOP.
204 (case_decl): Add ST_OACC_ROUTINE.
205 (push_state, parse_critical_block, parse_progunit): Update for
207 (gfc_ascii_statement): Handle ST_OACC_PARALLEL_LOOP,
208 ST_OACC_END_PARALLEL_LOOP, ST_OACC_PARALLEL, ST_OACC_END_PARALLEL,
209 ST_OACC_KERNELS, ST_OACC_END_KERNELS, ST_OACC_KERNELS_LOOP,
210 ST_OACC_END_KERNELS_LOOP, ST_OACC_DATA, ST_OACC_END_DATA,
211 ST_OACC_HOST_DATA, ST_OACC_END_HOST_DATA, ST_OACC_LOOP,
212 ST_OACC_END_LOOP, ST_OACC_DECLARE, ST_OACC_UPDATE, ST_OACC_WAIT,
213 ST_OACC_CACHE, ST_OACC_ENTER_DATA, ST_OACC_EXIT_DATA,
215 (verify_st_order, parse_spec): Handle ST_OACC_DECLARE.
216 (parse_executable): Handle ST_OACC_PARALLEL_LOOP,
217 ST_OACC_KERNELS_LOOP, ST_OACC_LOOP, ST_OACC_PARALLEL,
218 ST_OACC_KERNELS, ST_OACC_DATA, ST_OACC_HOST_DATA.
219 (decode_oacc_directive, parse_oacc_structured_block)
220 (parse_oacc_loop, is_oacc): New functions.
221 * parse.h (struct gfc_state_data): Add oacc_declare_clauses
223 (is_oacc): New prototype.
224 * resolve.c (gfc_resolve_blocks, gfc_resolve_code): Handle
225 EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_PARALLEL,
226 EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS, EXEC_OACC_DATA,
227 EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP, EXEC_OACC_UPDATE,
228 EXEC_OACC_WAIT, EXEC_OACC_CACHE, EXEC_OACC_ENTER_DATA,
230 (resolve_codes): Call gfc_resolve_oacc_declare.
231 * scanner.c (openacc_flag, openacc_locus): New variables.
232 (skip_free_comments): Update for OpenACC. Move some code into...
233 (skip_omp_attribute): ... this new function.
234 (skip_oacc_attribute): New function.
235 (skip_fixed_comments, gfc_next_char_literal): Update for OpenACC.
236 * st.c (gfc_free_statement): Handle EXEC_OACC_PARALLEL_LOOP,
237 EXEC_OACC_PARALLEL, EXEC_OACC_KERNELS_LOOP, EXEC_OACC_KERNELS,
238 EXEC_OACC_DATA, EXEC_OACC_HOST_DATA, EXEC_OACC_LOOP,
239 EXEC_OACC_UPDATE, EXEC_OACC_WAIT, EXEC_OACC_CACHE,
240 EXEC_OACC_ENTER_DATA, EXEC_OACC_EXIT_DATA.
241 * trans-decl.c (gfc_generate_function_code): Update for OpenACC.
242 * trans-openmp.c: Include "gomp-constants.h".
243 (gfc_omp_finish_clause, gfc_trans_omp_clauses): Use GOMP_MAP_*
244 instead of OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
245 (gfc_trans_omp_clauses): Handle OMP_LIST_USE_DEVICE,
246 OMP_LIST_DEVICE_RESIDENT, OMP_LIST_CACHE, and OMP_MAP_FORCE_ALLOC,
247 OMP_MAP_FORCE_DEALLOC, OMP_MAP_FORCE_TO, OMP_MAP_FORCE_FROM,
248 OMP_MAP_FORCE_TOFROM, OMP_MAP_FORCE_PRESENT,
249 OMP_MAP_FORCE_DEVICEPTR, and gfc_omp_clauses' async, seq,
250 independent, wait_list, num_gangs_expr, num_workers_expr,
251 vector_length_expr, vector, vector_expr, worker, worker_expr,
252 gang, gang_expr members.
253 (gfc_trans_omp_do): Handle EXEC_OACC_LOOP.
254 (gfc_convert_expr_to_tree, gfc_trans_oacc_construct)
255 (gfc_trans_oacc_executable_directive)
256 (gfc_trans_oacc_wait_directive, gfc_trans_oacc_combined_directive)
257 (gfc_trans_oacc_declare, gfc_trans_oacc_directive): New functions.
258 * trans-stmt.c (gfc_trans_block_construct): Update for OpenACC.
259 * trans-stmt.h (gfc_trans_oacc_directive, gfc_trans_oacc_declare):
261 * trans.c (tranc_code): Handle EXEC_OACC_CACHE, EXEC_OACC_WAIT,
262 EXEC_OACC_UPDATE, EXEC_OACC_LOOP, EXEC_OACC_HOST_DATA,
263 EXEC_OACC_DATA, EXEC_OACC_KERNELS, EXEC_OACC_KERNELS_LOOP,
264 EXEC_OACC_PARALLEL, EXEC_OACC_PARALLEL_LOOP, EXEC_OACC_ENTER_DATA,
266 * gfortran.texi: Update for OpenACC.
267 * intrinsic.texi: Likewise.
268 * invoke.texi: Likewise.
270 2015-01-15 Janus Weil <janus@gcc.gnu.org>
273 * resolve.c (resolve_fl_derived0): Continue resolving next component
276 2015-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
279 * io.c (gfc_match_inquire): Generate error if unit number in
280 inquire statement is a constant -1. All other values allowed.
281 * trans-io.c (gfc_trans_inquire): Delete dummy iostat variable.
282 (create_dummy_iostat): Delete function no longer used.
284 2015-01-13 Jakub Jelinek <jakub@redhat.com>
287 * trans-decl.c (create_function_arglist): Don't set TREE_READONLY
288 on dummy args with VALUE attribute.
290 2015-01-11 Janus Weil <janus@gcc.gnu.org>
293 * interface.c (gfc_extend_expr): Look for type-bound operators before
296 2015-01-11 Janus Weil <janus@gcc.gnu.org>
299 * resolve.c (resolve_fl_derived0): Set error flag if problems with the
300 interface of a procedure-pointer component were detected.
302 2015-01-11 Janus Weil <janus@gcc.gnu.org>
305 * interface.c (compare_parameter): Interface check for
306 procedure-pointer component as actual argument.
308 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
310 * gfortran.texi: Update for libgomp being renamed from "GNU OpenMP
311 Runtime Library" to "GNU Offloading and Multi Processing Runtime
313 * intrinsic.texi: Likewise.
315 2015-01-10 Tobias Burnus <burnus@net-b.de>
318 * invoke.texi (Wline-truncation): Document new behaviour.
319 * lang.opt (Wline-truncation): Add Init(-1).
320 * options.c (gfc_post_options): If -Wline-truncation is unset,
321 enable it for free-form source files; for the latter, also use
322 -Werror=line-truncation, unless -Wno-error has been specified.
324 2015-01-09 Michael Collison <michael.collison@linaro.org>
326 * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
327 input.h, alias.h, symtab.h, options.h, fold-const.h,
328 wide-int.h, and inchash.h due to flattening of tree.h.
329 * cpp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
330 input.h, alias.h, symtab.h, fold-const.h,
331 wide-int.h, and inchash.h due to flattening of tree.h.
333 * f95.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
334 input.h, alias.h, symtab.h, options.h, fold-const.h,
335 wide-int.h, and inchash.h due to flattening of tree.h.
337 * match.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
338 input.h, alias.h, symtab.h, fold-const.h,
339 wide-int.h, and inchash.h due to flattening of tree.h.
340 * module.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
341 input.h, alias.h, symtab.h, options.h, fold-const.h,
342 wide-int.h, and inchash.h due to flattening of tree.h.
344 * target-memory.c: Include hash-set.h, vec.h,
345 double-int.h, input.h, alias.h, symtab.h, fold-const.h,
346 wide-int.h, and inchash.h due to flattening of tree.h.
347 * trans-array.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
348 input.h, alias.h, symtab.h, options.h, fold-const.h,
349 wide-int.h, and inchash.h due to flattening of tree.h.
350 * trans.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
351 input.h, alias.h, symtab.h, options.h, fold-const.h,
352 wide-int.h, and inchash.h due to flattening of tree.h.
353 * trans-common.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
354 input.h, alias.h, symtab.h, fold-const.h,
355 wide-int.h, and inchash.h due to flattening of tree.h.
356 * trans-const.c: Ditto.
357 * trans-decl.c: Ditto.
358 * trans-expr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
359 input.h, alias.h, symtab.h, options.h, fold-const.h,
360 wide-int.h, and inchash.h due to flattening of tree.h.
361 * trans-intrinsic.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
362 input.h, alias.h, symtab.h, fold-const.h,
363 wide-int.h, inchash.h and real.h due to flattening of tree.h.
364 * trans-io.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
365 input.h, alias.h, symtab.h, options.h, fold-const.h,
366 wide-int.h, and inchash.h due to flattening of tree.h.
367 * trans-openmp.c: Ditto.
368 * trans-stmt.c: Ditto.
369 * trans-types.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
370 input.h, alias.h, symtab.h, fold-const.h,
371 wide-int.h, inchash.h and real.h due to flattening of tree.h.
373 2015-01-08 Tobias Burnus <burnus@net-b.de>
375 * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
376 for module coarrays with -fcoarray=lib.
377 (get_proc_pointer_decl): As module variable, make only public
378 when not marked as private.
380 2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
383 * dependency.h: Actually commit changes.
385 2015-01-05 Thomas Koenig <tkoenig@gcc.gnu.org>
388 * dependency.c: Update copyright years.
389 (gfc_discard_nops): Add prototype.
390 * dependency.c (discard_nops): Rename to gfc_discard_nops,
392 (gfc_discard_nops): Use gfc_discard_nops.
393 (gfc_dep_difference): Likewise.
394 * frontend-passes.c Update copyright years.
395 (realloc_strings): New function. Add prototype.
396 (gfc_run_passes): Call realloc_strings.
397 (realloc_string_callback): New function.
398 (create_var): Add prototype. Handle case of a
399 scalar character variable.
400 (optimize_trim): Do not handle allocatable variables.
402 2015-01-05 Jakub Jelinek <jakub@redhat.com>
404 Update copyright years.
406 * gfortranspec.c (lang_specific_driver): Update copyright notice
408 * gfc-internals.texi: Bump @copying's copyright year.
409 * gfortran.texi: Ditto.
410 * intrinsic.texi: Ditto.
411 * invoke.texi: Ditto.
413 2015-01-02 Janus Weil <janus@gcc.gnu.org>
416 * expr.c (find_component_ref): Deal with extended types.
418 2015-01-02 Tobias Burnus <burnus@net-b.de>
420 * trans-decl.c (gfc_build_qualified_array): Fix coarray tokens
421 for module coarrays with -fcoarray=lib.
423 2015-01-02 Janus Weil <janus@gcc.gnu.org>
426 * interface.c (is_procptr_result): New function to check if an
427 expression is a procedure-pointer result.
428 (compare_actual_formal): Use it.
430 Copyright (C) 2015 Free Software Foundation, Inc.
432 Copying and distribution of this file, with or without modification,
433 are permitted in any medium without royalty provided the copyright
434 notice and this notice are preserved.