1 2016-12-21 Release Manager
5 2016-12-07 Eric Botcazou <ebotcazou@adacore.com>
7 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Subtype>:
8 Also call finish_character_type on Character subtypes.
9 * gcc-interface/utils.c (finish_character_type): Deal with subtypes.
11 2016-11-22 Uros Bizjak <ubizjak@gmail.com>
13 * gcc-interface/Make-lang.in (check-acats): Fix detection
16 2016-11-13 Bob Duff <duff@adacore.com>
18 * gcc-interface/decl.c (gnat_to_gnu_entity): In assertion about known
19 Esize, protect with !is_type and change !Unknown_Esize to Known_Esize.
21 2016-11-13 Eric Botcazou <ebotcazou@adacore.com>
23 * gcc-interface/utils2.c (gnat_protect_expr): Also protect only the
24 address if the expression is the component of a dereference.
25 Do not use a reference type for the final temporary reference.
27 2016-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
29 Backport from mainline
30 2016-10-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
32 * gcc-interface/Make-lang.in (lang_checks_parallelized): New target.
33 (check_gnat_parallelize): Likewise.
35 2016-10-17 Eric Botcazou <ebotcazou@adacore.com>
37 * system-darwin-ppc64.ads (Support_64_Bit_Divides): Delete.
38 * system-linux-armeb.ads (Support_64_Bit_Divides): Likewise.
39 * system-linux-mips.ads (Support_64_Bit_Divides): Likewise.
40 * system-linux-mips64el.ads (Support_64_Bit_Divides): Likewise.
41 * system-linux-mipsel.ads (Support_64_Bit_Divides): Likewise.
42 * system-linux-sparcv9.ads (Support_64_Bit_Divides): Likewise.
43 * system-rtems.ads (Support_64_Bit_Divides): Likewise.
45 2016-10-16 Eric Botcazou <ebotcazou@adacore.com>
47 * system-aix.ads (Always_Compatible_Rep): Change to False.
48 * system-aix64.ads (Always_Compatible_Rep): Likewise.
49 * system-hpux-ia64.ads (Always_Compatible_Rep): Likewise.
50 * system-hpux.ads (Always_Compatible_Rep): Likewise.
51 * system-linux-alpha.ads (Always_Compatible_Rep): Likewise.
52 * system-linux-hppa.ads (Always_Compatible_Rep): Likewise.
53 * system-linux-ia64.ads (Always_Compatible_Rep): Likewise.
54 * system-linux-mips.ads (Always_Compatible_Rep): Likewise.
55 * system-linux-mips64el.ads (Always_Compatible_Rep): Likewise.
56 * system-linux-mipsel.ads (Always_Compatible_Rep): Likewise.
57 * system-linux-s390.ads (Always_Compatible_Rep): Likewise.
58 * system-linux-s390x.ads (Always_Compatible_Rep): Likewise.
59 * system-linux-sh4.ads (Always_Compatible_Rep): Likewise.
60 * system-linux-sparc.ads (Always_Compatible_Rep): Likewise.
61 * system-linux-sparcv9.ads (Always_Compatible_Rep): Likewise.
62 * system-rtems.ads (Always_Compatible_Rep): Likewise.
64 2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
66 Backport from mainline
67 2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
69 * system-linux-armeb.ads (Backend_Overflow_Checks): Change to True.
70 * system-linux-mips.ads (Backend_Overflow_Checks): Likewise.
71 * system-linux-mips64el.ads (Backend_Overflow_Checks): Likewise.
72 * system-linux-mipsel.ads (Backend_Overflow_Checks): Likewise.
73 * system-linux-sparcv9.ads (Backend_Overflow_Checks): Likewise.
74 * system-rtems.ads (Always_Compatible_Rep): Likewise.
76 2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
77 Tristan Gingold <gingold@adacore.com>
79 * system-linux-ppc64.ads: Delete.
80 * system-linux-ppc.ads: Make 32-bit/64-bit neutral.
81 * gcc-interface/Makefile.in (PowerPC/Linux): Simplify.
83 2016-10-10 Eric Botcazou <ebotcazou@adacore.com>
85 * gcc-interface/utils2.c (find_common_type): Do not return the LHS type
86 if it's an array with non-constant lower bound and the RHS type is an
87 array with a constant one.
89 2016-10-10 Eric Botcazou <ebotcazou@adacore.com>
91 * gcc-interface/utils.c (convert): For a biased input type, convert the
92 bias itself to the base type before adding it.
94 2016-08-22 Release Manager
98 2016-06-13 Eric Botcazou <ebotcazou@adacore.com>
100 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Deal with
101 PLUS_EXPR in the expression of a renaming.
103 2016-06-11 Eric Botcazou <ebotcazou@adacore.com>
105 * gcc-interface/trans.c (Case_Statement_to_gnu): Deal with characters.
107 2016-06-11 Pierre-Marie de Rodat <derodat@adacore.com>
109 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not clobber
110 gnat_entity_name with temporary names for XUP and XUT types.
112 2016-06-06 Eric Botcazou <ebotcazou@adacore.com>
114 * gcc-interface/utils.c (gnat_internal_attribute_table): Add support
115 for noinline and noclone attributes.
116 (handle_noinline_attribute): New handler.
117 (handle_noclone_attribute): Likewise.
119 2016-06-06 Eric Botcazou <ebotcazou@adacore.com>
121 * gcc-interface/utils2.c (build_call_alloc_dealloc): Do not substitute
122 placeholder expressions here but...
123 * gcc-interface/trans.c (gnat_to_gnu) <N_Free_Statement>: ...here.
124 Make an exception to the protection of a CALL_EXPR result with an
125 unconstrained type only in the same cases as Call_to_gnu.
127 2016-06-01 Simon Wright <simon@pushface.org>
130 * g-comlin.adb (Display_Section_Help): Do not dereference
131 Config.Switches if it's null.
134 2016-05-31 Eric Botcazou <ebotcazou@adacore.com>
136 * s-osinte-kfreebsd-gnu.ads (clock_getres): Define.
137 (Get_Page_Size): Remove duplicate and return int.
139 2016-05-31 Jan Sommer <soja-lists@aries.uberspace.de>
142 * s-osinte-rtems.ads (clock_getres): Define.
143 (Get_Page_Size): Remove duplicate and return int.
145 2016-05-06 Eric Botcazou <ebotcazou@adacore.com>
148 * system-darwin-ppc64.ads: Add pragma No_Elaboration_Code_All.
149 * system-linux-armeb.ads: Likewise.
150 * system-linux-mips64el.ads: Likewise.
151 * system-linux-mips.ads: Likewise.
152 * system-linux-mipsel.ads: Likewise.
153 * system-linux-ppc64.ads: Likewise.
154 * system-linux-sparcv9.ads: Likewise.
155 * system-rtems.ads: Likewise.
157 2016-05-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
159 * s-osinte-gnu.ads (Get_Page_Size): Return int and use getpagesize
160 instead of __getpagesize.
162 2016-04-28 Eric Botcazou <ebotcazou@adacore.com>
165 Backport from mainline
166 2016-04-18 Ed Schonberg <schonberg@adacore.com>
168 * sem_ch6.adb (Process_Formals): Do not set a delay freeze on
169 a subprogram that returns a class-wide type, if the subprogram
170 is a compilation unit, because otherwise gigi will treat the
171 subprogram as external, leading to link errors.
173 2016-05-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
175 * gcc-interface/Makefile.in (install-gcc-specs): Use foreach.
178 2016-04-28 Eric Botcazou <ebotcazou@adacore.com>
181 * a-textio.adb (Get_Immediate): Add missing 'not' in expression.
183 2016-04-28 Eric Botcazou <ebotcazou@adacore.com>
185 Backport from mainline
186 2016-04-27 Eric Botcazou <ebotcazou@adacore.com>
188 * gcc-interface/misc.c (gnat_init): Do not call
189 internal_reference_types.
191 2016-04-27 Release Manager
193 * GCC 6.1.0 released.
195 2016-04-27 Svante Signell <svante.signell@gmail.com>
197 * gcc-interface/Makefile.in (x86 GNU/Hurd): Use s-osinte-gnu.adb.
198 * s-osinte-gnu.ads: Small tweaks.
199 * s-osinte-gnu.adb: New file.
201 2016-04-02 Eric Botcazou <ebotcazou@adacore.com>
203 * gcc-interface/decl.c (components_to_record): Restrict the previous
204 change to fields with variable size.
206 2016-03-27 Eric Botcazou <ebotcazou@adacore.com>
208 * gcc-interface/decl.c (components_to_record): Add special case for
209 single field with representation clause at offset 0.
211 2016-03-16 Svante Signell <svante.signell@gmail.com>
213 * gcc-interface/Makefile.in: Add support for x86 GNU/Hurd.
214 * s-osinte-gnu.ads: New file.
216 2016-03-13 Eric Botcazou <ebotcazou@adacore.com>
218 * system-vxworks-m68k.ads (Stack_Check_Probes): Set to True.
219 (Stack_Check_Limits): Set to False.
220 * system-vxworks-mips.ads (Stack_Check_Probes): Set to True.
221 (Stack_Check_Limits): Set to False.
222 * system-vxworks-ppc.ads (Stack_Check_Probes): Set to True.
223 (Stack_Check_Limits): Set to False.
224 * system-vxworks-sparcv9.ads (Stack_Check_Probes): Set to True.
225 (Stack_Check_Limits): Set to False.
226 * system-vxworks-x86.ads (Stack_Check_Probes): Set to True.
227 (Stack_Check_Limits): Set to False.
229 2016-03-07 Eric Botcazou <ebotcazou@adacore.com>
231 * gcc-interface/trans.c (statement_node_p): New predicate.
232 (gnat_to_gnu): Invoke it to detect statement nodes. In ASIS mode, do
233 not return dummy results for expressions attached to packed array
234 implementation types.
236 2016-03-07 Eric Botcazou <ebotcazou@adacore.com>
238 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Always mark
239 the expression of a renaming manually in case #3.
241 2016-03-02 Dominik Vogt <vogt@linux.vnet.ibm.com>
243 * system-linux-s390.ads: Enable Stack_Check_Probes.
244 * system-linux-s390.ads: Likewise.
246 2016-02-29 Martin Liska <mliska@suse.cz>
248 * gcc-interface/utils.c (set_reverse_storage_order_on_pad_type):
249 Replace ENABLE_CHECKING macro with flag_checking.
251 2016-02-29 Eric Botcazou <ebotcazou@adacore.com>
253 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Retrofit
254 handling of unconstrained array types as designated types into common
255 processing. Also handle array types as incomplete designated types.
257 2016-02-29 Eric Botcazou <ebotcazou@adacore.com>
259 * gcc-interface/decl.c (gnat_to_gnu_entity) <Concurrent types>: In
260 ASIS mode, fully lay out the minimal record type.
262 2016-02-29 Eric Botcazou <ebotcazou@adacore.com>
264 * gcc-interface/trans.c (finalize_nrv_r): Remove obsolete code.
265 (build_return_expr): Likewise.
266 (Call_to_gnu): If this is a function call and there is no target,
267 create a temporary for the return value for all aggregate types,
268 but never create it for a return statement. Push a binding level
269 around the call in more cases. Remove obsolete code.
271 2016-02-29 Eric Botcazou <ebotcazou@adacore.com>
273 * gcc-interface/ada-tree.h (DECL_RETURN_VALUE_P): New macro.
274 * gcc-interface/gigi.h (gigi): Remove useless attribute.
275 (gnat_gimplify_expr): Likewise.
276 (gnat_to_gnu_external): Declare.
277 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Factor out
278 code dealing with the expression of external constants into...
279 Invoke gnat_to_gnu_external instead.
280 <E_Variable>: Invoke gnat_to_gnu_external to translate renamed objects
281 when not for a definition. Deal with COMPOUND_EXPR and variables with
282 DECL_RETURN_VALUE_P set for renamings and with the case of a dangling
283 'reference to a function call in a renaming. Remove obsolete test and
284 adjust associated comment.
285 * gcc-interface/trans.c (Call_to_gnu): Set DECL_RETURN_VALUE_P on the
286 temporaries created to hold the return value, if any.
287 (gnat_to_gnu_external): ...this. New function.
288 * gcc-interface/utils.c (create_var_decl): Detect a constant created
289 to hold 'reference to function call.
290 * gcc-interface/utils2.c (build_unary_op) <ADDR_EXPR>: Add folding
291 for COMPOUND_EXPR in the DECL_RETURN_VALUE_P case.
293 2016-02-17 Eric Botcazou <ebotcazou@adacore.com>
295 * exp_ch4.adb (Expand_N_Indexed_Component): Activate synchronization if
296 the prefix denotes an entity which Has_Atomic_Components.
297 * gcc-interface/trans.c (node_is_atomic): Return true if the prefix
298 denotes an entity which Has_Atomic_Components.
300 2016-02-17 Eric Botcazou <ebotcazou@adacore.com>
302 * gcc-interface/utils2.c (gnat_protect_expr): Make a SAVE_EXPR only
303 for fat pointer or scalar types.
305 2016-02-16 Eric Botcazou <ebotcazou@adacore.com>
307 * gcc-interface/gigi.h (maybe_debug_type): New inline function.
308 * gcc-interface/misc.c (gnat_get_array_descr_info): Use it.
309 Call maybe_character_value on the array bounds. Get to the base type
310 of the index type and call maybe_debug_type on it.
311 * gcc-interface/utils.c (finish_character_type): Add special treatment
314 2016-02-16 Eric Botcazou <ebotcazou@adacore.com>
316 * gcc-interface/misc.c (gnat_enum_underlying_base_type): New function.
317 (LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): Define to above.
319 2016-02-12 Jakub Jelinek <jakub@redhat.com>
321 * prj-tree.ads: Spelling fixes - behaviour -> behavior and
322 neighbour -> neighbor.
323 * prep.adb: Likewise.
325 * prepcomp.adb: Likewise.
326 * g-socket.ads: Likewise.
327 * s-imgrea.adb: Likewise.
328 * a-calend.adb: Likewise.
329 * exp_disp.adb: Likewise.
330 * doc/gnat_ugn/gnat_utility_programs.rst: Likewise.
331 * g-socket.adb: Likewise.
332 * sem_ch12.adb: Likewise.
333 * terminals.c: Likewise.
335 2016-02-08 Bernd Schmidt <bschmidt@redhat.com>
337 * gcc-interface/misc.c (gnat_init): Remove second argument in call to
338 build_common_tree_nodes.
340 2016-02-08 Eric Botcazou <ebotcazou@adacore.com>
342 * gcc-interface/utils.c (create_var_decl): Set again DECL_COMMON and
345 2016-01-28 Eric Botcazou <ebotcazou@adacore.com>
347 * gcc-interface/gigi.h (enum attr_type): Rename into...
348 (enum attrib_type): ...this.
349 (struct attrib): Adjust.
350 * gcc-interface/decl.c (prepend_one_attribute): Likewise.
352 2016-01-20 Eric Botcazou <ebotcazou@adacore.com>
354 * exp_ch2.adb (Expand_Current_Value): Make an appropriate character
355 literal if the entity is of a character type.
356 * gcc-interface/lang.opt (fsigned-char): New option.
357 * gcc-interface/misc.c (gnat_handle_option): Accept it.
358 (gnat_init): Adjust comment.
359 * gcc-interface/gigi.h (finish_character_type): New prototype.
360 (maybe_character_type): New inline function.
361 (maybe_character_value): Likewise.
362 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>: For
363 a character of CHAR_TYPE_SIZE, make a signed type if flag_signed_char.
364 Set TYPE_ARTIFICIAL early and call finish_character_type on the type.
365 <E_Enumeration_Subtype>: For a subtype of character with RM_Size and
366 Esize equal to CHAR_TYPE_SIZE, make a signed type if flag_signed_char.
367 Copy TYPE_STRING_FLAG from type to subtype.
368 <E_Array_Type>: Deal with character index types.
369 <E_Array_Subtype>: Likewise.
370 * gcc-interface/trans.c (gigi): Replace unsigned_char_type_node with
371 char_type_node throughout.
372 (build_raise_check): Likewise.
373 (get_type_length): Deal with character types.
374 (Attribute_to_gnu) <Attr_Pos>: Likewise. Remove obsolete range check
376 <Attr_Pred>: Likewise.
377 (Loop_Statement_to_gnu): Likewise.
378 (Raise_Error_to_gnu): Likewise.
379 <N_Indexed_Component>: Deal with character index types. Remove
382 <N_Type_Conversion>: Deal with character types. Minor tweak.
383 <N_Unchecked_Type_Conversion>: Likewise.
386 (emit_index_check): Delete.
387 * gcc-interface/utils.c (finish_character_type): New function.
388 (gnat_signed_or_unsigned_type_for): Deal with built-in character types.
389 * gcc-interface/utils2.c (expand_sloc): Replace unsigned_char_type_node
391 (build_call_raise): Likewise.
392 (build_call_raise_column): Likewise.
393 (build_call_raise_range): Likewise.
395 2016-01-18 Eric Botcazou <ebotcazou@adacore.com>
397 * gcc-interface/gigi.h (build_call_raise_column): Adjust prototype.
398 (build_call_raise_range): Likewise.
399 (gnat_unsigned_type): Delete.
400 (gnat_signed_type): Likewise.
401 (gnat_signed_or_unsigned_type_for): New prototype.
402 (gnat_unsigned_type_for): New inline function.
403 (gnat_signed_type_for): Likewise.
404 * gcc-interface/cuintp.c (build_cst_from_int): Call build_int_cst.
405 * gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
406 (gnat_to_gnu_entity) <E_Array_Type>: Always translate the index types
407 and compute their base type from that.
408 <E_Array_Subtype>: Remove duplicate declaration.
409 * gcc-interface/misc.c (get_array_bit_stride): Call build_int_cst.
410 * gcc-interface/trans.c (get_type_length): Likewise.
411 (Attribute_to_gnu): Likewise.
412 (Loop_Statement_to_gnu): Likewise.
413 (Call_to_gnu): Likewise.
414 (gnat_to_gnu): Call build_real, build_int_cst, gnat_unsigned_type_for
415 and gnat_signed_type_for. Minor tweaks.
416 (build_binary_op_trapv): Likewise.
417 (emit_check): Likewise.
418 (convert_with_check): Likewise.
419 (Raise_Error_to_gnu): Adjust calls to the build_call_raise family of
420 functions. Minor tweaks.
421 (Case_Statement_to_gnu): Remove dead code.
422 (gnat_to_gnu): Call gnat_unsigned_type_for and gnat_signed_type_for.
423 (init_code_table): Minor reordering.
424 * gcc-interface/utils.c (gnat_unsigned_type): Delete.
425 (gnat_signed_type): Likewise.
426 (gnat_signed_or_unsigned_type_for): New function.
427 (unchecked_convert): Use directly the size in the test for precision
429 (install_builtin_elementary_types): Call gnat_signed_type_for.
430 * gcc-interface/utils2.c (nonbinary_modular_operation): Call
432 (build_goto_raise): New function taken from...
433 (build_call_raise): ...here. Call it.
434 (build_call_raise_column): Add KIND parameter and call it.
435 (build_call_raise_range): Likewise.
437 2016-01-18 Eric Botcazou <ebotcazou@adacore.com>
439 * gcc-interface/ada-tree.h (TYPE_IMPLEMENTS_PACKED_ARRAY_P): Rename to
440 (TYPE_IMPL_PACKED_ARRAY_P): ...this.
441 (TYPE_CAN_HAVE_DEBUG_TYPE_P): Do not test TYPE_DEBUG_TYPE.
442 * gcc-interface/decl.c (gnat_to_gnu_entity): Simplify NULL_TREE tests
443 and tweak gnat_encodings tests throughout.
444 (initial_value_needs_conversion): Likewise.
445 (intrin_arglists_compatible_p): Likewise.
446 * gcc-interface/misc.c (gnat_print_type): Likewise.
447 (gnat_get_debug_type): Likewise.
448 (gnat_get_fixed_point_type_info): Likewise.
449 (gnat_get_array_descr_info): Likewise.
450 (get_array_bit_stride): Likewise.
451 (gnat_get_type_bias): Fix formatting.
452 (enumerate_modes): Likewise.
453 * gcc-interface/trans.c (gnat_to_gnu): Likewise.
454 (add_decl_expr): Simplify NULL_TREE test.
455 (end_stmt_group): Likewise.
456 (build_binary_op_trapv): Fix formatting.
457 (get_exception_label): Use switch statement.
458 (init_code_table): Move around.
459 * gcc-interface/utils.c (global_bindings_p): Simplify NULL_TREE test.
460 (gnat_poplevel): Likewise.
461 (gnat_set_type_context): Likewise.
462 (defer_or_set_type_context): Fix formatting.
463 (gnat_pushdecl): Simplify NULL_TREE test.
464 (maybe_pad_type): Likewise.
465 (add_parallel_type): Likewise.
466 (create_range_type): Likewise.
467 (process_deferred_decl_context): Likewise.
469 (def_builtin_1): Likewise.
470 * gcc-interface/utils2.c (find_common_type): Likewise.
471 (build_binary_op): Likewise.
472 (gnat_rewrite_reference): Likewise.
473 (get_inner_constant_reference): Likewise.
475 2016-01-18 Eric Botcazou <ebotcazou@adacore.com>
478 * gcc-interface/trans.c (check_inlining_for_nested_subprog): Consider
479 the parent function instead of the current function in order to issue
480 the warning or the error. Add guard for ignored functions.
482 2016-01-17 Jakub Jelinek <jakub@redhat.com>
484 * adaint.c (__gnat_killprocesstree): Avoid -Wparentheses warning.
486 2016-01-15 Jakub Jelinek <jakub@redhat.com>
488 * adaint.c (__gnat_locate_exec_on_path): Use const char * instead
489 of char * for path_val to avoid warnings.
491 2016-01-06 Pierre-Marie de Rodat <derodat@adacore.com>
493 * gcc-interface/utils.c: Bump copyright year.
494 (rest_of_record_type_compilation): Add XVE/XVU parallel types to
495 the current lexical scope.
497 2016-01-04 Jakub Jelinek <jakub@redhat.com>
499 * gnat_ugn.texi: Bump @copying's copyright year.
500 * gnat_rm.texi: Likewise.
502 2016-01-02 Eric Botcazou <ebotcazou@adacore.com>
504 * gnatvsn.ads: Bump copyright year.
507 Copyright (C) 2016 Free Software Foundation, Inc.
509 Copying and distribution of this file, with or without modification,
510 are permitted in any medium without royalty provided the copyright
511 notice and this notice are preserved.