]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
a850edcd 12019-06-29 Eric Botcazou <ebotcazou@adacore.com>
2
3 * gcc-interface/decl.c (gnat_to_gnu_entity): Beep up comment on SAVED,
4 and tweak comment on the assertion about the scopes of Itypes. Do not
5 skip the regular processing for Itypes that are E_Record_Subtype with
6 a Cloned_Subtype. Get the Cloned_Subtype for every E_Record_Subtype
7 if the type is dummy and hasn't got its own freeze node.
8 <E_Record_Subtype>: Save again the DECL of the Cloned_Subtype, if any.
9 <E_Access_Subtype>: Save again the DECL of the equivalent type.
10 (Gigi_Equivalent_Type) <E_Access_Subtype>: New case.
11
b1e46fb1 122019-06-29 Eric Botcazou <ebotcazou@adacore.com>
13
14 * gcc-interface/utils.c (unchecked_convert): Tweak comment. Only skip
15 dereferences when padding to have the same size on both sides. Do it
16 for destination types with self-referential size too.
17
07e38949 182019-06-29 Eric Botcazou <ebotcazou@adacore.com>
19
20 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the
21 type requires strict alignment, then set the RM size to the type size.
22 Rework handling of alignment and sizes of tagged types in ASIS mode.
23 (validate_size): Rename local variable and remove special handling for
24 strict-alignment types.
25 * gcc-interface/utils.c (finish_record_type): Constify local variables
26 and use properly typed constants.
27
f4409741 282019-06-29 Eric Botcazou <ebotcazou@adacore.com>
29
30 * gcc-interface/decl.c (gnat_to_gnu_field): Rework error messages for
31 fields requiring strict alignment, add explicit test on Storage_Unit
32 for position and size, and mention type alignment for position.
33
5882c515 342019-06-29 Eric Botcazou <ebotcazou@adacore.com>
35
36 * gcc-interface/trans.c (mark_visited_r): Set TYPE_SIZES_GIMPLIFIED on
37 the main variant of a type, if any.
38
d0de0a27 392019-06-29 Eric Botcazou <ebotcazou@adacore.com>
40
41 * gcc-interface/decl.c (set_nonaliased_component_on_array_type): Add
42 missing guard for the presence of TYPE_CANONICAL.
43 (set_reverse_storage_order_on_array_type): Likewise.
44
2074c859 452019-06-29 Eric Botcazou <ebotcazou@adacore.com>
46
47 * gcc-interface/gigi.h (make_packable_type): Remove default value.
48 (value_factor_p): Tweak prototype.
49 * gcc-interface/decl.c (gnat_to_gnu_entity): Add comment.
50 (gnat_to_gnu_component_type): Likewise.
51 (gnat_to_gnu_field): Likewise. Fetch the position of the field earlier
52 and simplify the condition under which the type is packed. Declare
53 local variable is_bitfield. Pass 1 as max_align to make_packable_type
54 if it is set to true.
55 (copy_and_substitute_in_layout): Pass 0 to make_packable_type.
56 * gcc-interface/utils.c (make_packable_array_type): New function.
57 (make_packable_type): Use it to rewrite the type of array field.
58 (maybe_pad_type): Pass align parameter to make_packable_type.
59 (create_field_decl): Minor tweaks.
60 (value_factor_p): Assert that FACTOR is a power of 2 and replace the
61 modulo computation by a masking operation.
62
83c6da22 632019-06-25 Eric Botcazou <ebotcazou@adacore.com>
64
65 * gcc-interface/decl.c (gnat_to_gnu_entity): Remove superfluous test
66 in previous change.
67 * gcc-interface/gigi.h (maybe_character_type): Fix formatting.
68 (maybe_character_value): Likewise.
69
aaabc7bc 702019-06-24 Jan Hubicka <jh@suse.cz>
71
72 * gcc-interface/decl.c (gnat_to_gnu_entity): Check that
73 type is array or integer prior checking string flag.
83c6da22 74 * gcc-interface/gigi.h (maybe_character_type): Likewise.
75 (maybe_character_value): Likewise.
aaabc7bc 76
5fe09a56 772019-06-24 Martin Sebor <msebor@redhat.com>
78
79 * gcc-interface/utils.c (handle_nonnull_attribute): Quote attribute
80 name.
81
bd9331d6 822019-06-18 Arnaud Charlet <charlet@adacore.com>
83
83c6da22 84 PR ada/80590
bd9331d6 85 * sem_ch5.adb (Analyze_Loop_Statement): Avoid exception propagation
86 during normal processing.
87
8a5a7d1c 882019-06-17 Arnaud Charlet <charlet@adacore.com>
89
83c6da22 90 PR ada/80590
8a5a7d1c 91 * exp_ch9.adb (Expand_N_Delay_Relative_Statement): Swap the two
92 conditions to avoid a unnecessary exception propagation in the default
93 case.
94
580934f6 952019-05-28 Eric Botcazou <ebotcazou@adacore.com>
96
97 * gcc-interface/utils.c (handle_stack_protect_attribute): Move around.
98
c8956236 992019-05-28 Eric Botcazou <ebotcazou@adacore.com>
100
101 * doc/gnat_rm/implementation_defined_pragmas.rst (Machine_Attribute):
102 Document additional optional parameters.
103 * sem_prag.adb (Analyze_Pragma) <Pragma_Machine_Attribute>: Accept
104 more than one optional parameter.
105 * gcc-interface/decl.c (prepend_one_attribute_pragma): Alphabetize
106 the list of supported pragmas. Simplify the handling of parameters
107 and add support for more than one optional parameter.
108 * gcc-interface/utils.c (attr_cold_hot_exclusions): New constant.
109 (gnat_internal_attribute_table): Add entry for no_icf, noipa, flatten,
110 used, cold, hot, target and target_clones.
111 (begin_subprog_body): Do not create the RTL for the subprogram here.
112 (handle_noicf_attribute): New static function.
113 (handle_noipa_attribute): Likewise.
114 (handle_flatten_attribute): Likewise.
115 (handle_used_attribute): Likewise.
116 (handle_cold_attribute): Likewise.
117 (handle_hot_attribute): Likewise.
118 (handle_target_attribute): Likewise.
119 (handle_target_clones_attribute): Likewise.
120
62b762c2 1212019-05-28 Eric Botcazou <ebotcazou@adacore.com>
122
123 * gcc-interface/trans.c (lvalue_required_for_attribute_p): Return 0
124 for 'Size too.
125 (Identifier_to_gnu): Use the actual subtype for a reference to a
126 packed array in a return statement.
127 (Attribute_to_gnu) <Attr_Size>: Do not strip VIEW_CONVERT_EXPRs from
128 the prefix in every case.
129
336a61a3 1302019-05-28 Eric Botcazou <ebotcazou@adacore.com>
131
132 * gcc-interface/trans.c (gnat_to_gnu): Remove superfluous tests on
133 Backend_Overflow_Checks_On_Target and rework comments.
134
983c5b5e 1352019-05-28 Eric Botcazou <ebotcazou@adacore.com>
136
137 * gcc-interface/trans.c (walk_nesting_tree): New static function.
138 (finalize_nrv): Use it to walk the entire nesting tree.
139
96b4b84e 1402019-05-28 Eric Botcazou <ebotcazou@adacore.com>
141
142 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Remove
143 obsolete test on Is_For_Access_Subtype.
144
0b74284e 1452019-05-28 Eric Botcazou <ebotcazou@adacore.com>
146
147 * gcc-interface/decl.c (components_to_record): Set a name on the type
148 created for the REP part, if any.
149 * gcc-interface/utils.c (finish_record_type): Only take the maximum
150 when merging sizes for a variant part at offset 0.
151 (merge_sizes): Rename has_rep parameter into max.
152
689dab9d 1532019-05-28 Eric Botcazou <ebotcazou@adacore.com>
154
155 * gcc-interface/utils.c (gnat_internal_attribute_table): Add support
156 for stack_protect attribute.
157 (handle_stack_protect_attribute): New static function.
158
804f7d39 1592019-05-28 Eric Botcazou <ebotcazou@adacore.com>
160
161 * gcc-interface/decl.c (intrin_arglists_compatible_p): Do not return
162 false if the internal builtin uses a variable list.
163
f07f94cc 1642019-05-27 Eric Botcazou <ebotcazou@adacore.com>
165
166 * gcc-interface/trans.c (Call_to_gnu): Do not initialize the temporary
167 created out of addressability concerns if it's for the _Init parameter
168 of an initialization procedure.
169
abfd658b 1702019-05-27 Eric Botcazou <ebotcazou@adacore.com>
171
172 * gcc-interface/ada-builtin-types.def: New file.
173 * gcc-interface/ada-builtins.def: Likewise.
174 * gcc-interface/ada-tree.h (BUILT_IN_LIKELY): New macro.
175 (BUILT_IN_UNLIKELY): Likewise.
176 * gcc-interface/trans.c (independent_iterations_p): Initialize the
177 auto-vector to 16 elements.
178 (Call_to_gnu): Remove local variable and change the vector of actual
179 parameters to an auto-vector. Do not convert actual parameters to
180 the argument type for front-end built-in functions. Add support for
181 front-end built-in functions.
182 (build_noreturn_cond): Use internal instead of built-in function.
183 * gcc-interface/utils.c (c_builtin_type): Include ada-builtin-types.def
184 (install_builtin_function_types): Likewise.
185 (install_builtin_functions): Include ada-builtins.def first.
186
caab73a2 1872019-05-27 Eric Botcazou <ebotcazou@adacore.com>
188
189 * gcc-interface/utils.c (maybe_pad_type): Issue the warning for the
190 specific case of component types preferably.
191
f1ca2388 1922019-05-27 Eric Botcazou <ebotcazou@adacore.com>
193
194 * gcc-interface/trans.c (Identifier_to_gnu): Minor tweaks.
195 (gnat_to_gnu): Do not convert the result if it is a reference to an
196 unconstrained array used as the prefix of an attribute reference that
197 requires an lvalue.
198
e3f3573c 1992019-05-27 Eric Botcazou <ebotcazou@adacore.com>
200
201 * gcc-interface/trans.c (Gigi_Types_Compatible): New predicate.
202 (Identifier_to_gnu): Use it to assert that the type of the identifier
203 and that of its entity are compatible for gigi. Rename a couple of
204 local variables and separate the processing of the result type.
205
2306cd17 2062019-05-27 Eric Botcazou <ebotcazou@adacore.com>
207
208 * gcc-interface/trans.c (Call_to_gnu): Use the unpadded type when
209 putting back an intermediate conversion the type of the actuals.
210
6e4e9378 2112019-05-27 Eric Botcazou <ebotcazou@adacore.com>
212
213 * gcc-interface/trans.c (gnat_to_gnu) <Shift operations>: Convert the
214 count to the unsigned version of its base type before proceeding.
215
85b9be9b 2162019-05-16 Martin Sebor <msebor@redhat.com>
217
3d6be0d5 218 * gcc-interface/trans.c (check_inlining_for_nested_subprog): Quote
219 reserved names.
85b9be9b 220
65d973ca 2212019-05-08 Arnaud Charlet <charlet@adacore.com>
222
223 * standard.ads.h: New file.
224
ff628b99 2252019-05-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
226
227 * gcc-interface/Makefile.in (install-gcc-specs): Use foreach.
228 Honor DESTDIR.
229
ebd761d4 2302019-04-29 Michael K. Darling <darlingm@gmail.com>
231
232 * gnatvsn.ads: Bump Library_Version to 10.
233
5f260823 2342019-04-24 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
235 Bernd Edlinger <bernd.edlinger@hotmail.de>
236 Jakub Jelinek <jakub@redhat.com>
237
238 PR target/89093
239 * raise-gcc.c (TARGET_ATTRIBUTE): Define.
240 (continue_unwind, personality_body, PERSONALITY_FUNCTION): Add
241 TARGET_ATTRIBUTE.
242
d7ca95c0 2432019-04-07 Eric Botcazou <ebotcazou@adacore.com>
244
245 * libgnat/i-cexten.ads (CFloat_128): New type.
246
26b21081 2472019-03-22 Dmitriy Anisimkov <anisimko@adacore.com>
248
249 PR ada/89583
250 * libgnat/g-socket.adb (Bind_Socket, Connect_Socket,
251 Send_Socket): Fix the computation of structure lengths passed to
252 low level routines.
253 (Is_IPv6_Address): Fix the number of expected colons.
254
2f6d557f 2552019-03-11 Martin Liska <mliska@suse.cz>
256
d325ee67 257 * gcc-interface/misc.c (gnat_post_options): Wrap option name in string
258 format message and fix GNU coding style.
2f6d557f 259
c1ad6672 2602019-02-08 Eric Botcazou <ebotcazou@adacore.com>
261
262 * gcc-interface/trans.c (gnat_to_gnu) <N_Aggregate>: Minor tweak.
263 * gcc-interface/utils.c (convert): Do not pad when doing an unchecked
264 conversion here. Use TREE_CONSTANT throughout the function.
265 (unchecked_convert): Also pad if the source is a CONSTRUCTOR and the
266 destination is a more aligned array type or a larger aggregate type,
267 but not between original and packable versions of a type.
268
62a6ebbd 2692019-02-08 Eric Botcazou <ebotcazou@adacore.com>
270
271 * gcc-interface/utils.c (max_size) <tcc_unary>: Be prepared for an
272 operand with VOID_TYPE.
273
da383d19 2742019-02-08 Eric Botcazou <ebotcazou@adacore.com>
275
276 * gcc-interface/trans.c (elaborate_all_entities): Do not elaborate the
277 entities of a package renaming another one.
278
09c123a0 2792019-02-08 Eric Botcazou <ebotcazou@adacore.com>
280
281 * gcc-interface/trans.c (Regular_Loop_to_gnu): Replace tests on
282 individual flag_unswitch_loops and flag_tree_loop_vectorize switches
283 with test on global optimize switch.
284 (Raise_Error_to_gnu): Likewise.
285
a9dd7273 2862019-02-07 Eric Botcazou <ebotcazou@adacore.com>
287
288 * libgnarl/s-linux__sparc.ads (ETIMEDOUT): Set to correct value.
289
4836c4f1 2902019-02-06 Arnaud Charlet <charlet@adacore.com>
291
292 * libgnarl/s-linux__x32.ads: Resync list of signals with s-linux.ads
293
6b56937c 2942019-01-27 Eric Botcazou <ebotcazou@adacore.com>
295
296 * repinfo.adb (List_Component_Layout): Remove superfluous space for
297 zero-sized field.
298 * gcc-interface/ada-tree.h (TYPE_IS_EXTRA_SUBTYPE_P): New macro.
299 * gcc-interface/gigi.h (create_extra_subtype): Declare.
300 * gcc-interface/decl.c (TYPE_ARRAY_SIZE_LIMIT): Likewise.
301 (update_n_elem): New function.
302 (gnat_to_gnu_entity): Use create_extra_subtype to create extra subtypes
303 instead of doing it manually.
304 <E_Array_Type>: Use update_n_elem to compute the maximum size. Use the
305 index type instead of base type for the bounds. Set TYPE_ARRAY_MAX_SIZE
306 of the array to the maximum size.
307 <E_Array_Subtype>: Create an extra subtype using the index type of the
308 base array type for self-referential bounds. Use update_n_elem to
309 compute the maximum size. Set TYPE_ARRAY_MAX_SIZE of the array to the
310 maximum size.
311 (gnat_to_gnu_field): Clear DECL_NONADDRESSABLE_P on discriminants.
312 * gcc-interface/misc.c (gnat_get_alias_set): Return the alias set of
313 the base type for an extra subtype.
314 (gnat_type_max_size): Remove obsolete code.
315 * gcc-interface/trans.c (Attribute_to_gnu): Minor tweak.
316 (can_be_lower_p): Deal with pathological types.
317 * gcc-interface/utils.c (create_extra_subtype): New function.
318 (create_field_decl): Minor tweak.
319 (max_size) <tcc_reference>: Compute a better value by using the extra
320 subtypes on the self-referential bounds.
321 <tcc_binary>: Rewrite. Deal with "negative value" in unsigned types.
322 <tcc_expression>: Likewise.
323 * gcc-interface/utils2.c (compare_arrays): Retrieve the original bounds
324 of the arrays upfront. Swap only if the second length is not constant.
325 Use comparisons on the original bounds consistently for the null tests.
326 (build_binary_op): Use TYPE_IS_EXTRA_SUBTYPE_P macro.
327 (build_allocator): Minor tweak.
328
ecb2c722 3292019-01-27 Eric Botcazou <ebotcazou@adacore.com>
330
331 * gcc-interface/decl.c (array_type_has_nonaliased_component): Return
332 the same value for every dimension of a multidimensional array type.
333
10f25579 3342019-01-26 Eric Botcazou <ebotcazou@adacore.com>
335
336 * gcc-interface/trans.c (Regular_Loop_to_gnu): Use the SLOC of the
337 iteration scheme, if present, throughout the translation.
338
aced6683 3392019-01-26 Eric Botcazou <ebotcazou@adacore.com>
340
341 * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Use
342 DECL_SIZE_UNIT instead of TYPE_SIZE_UNIT for the size to be assigned
343 by a call to memset if the LHS is a DECL.
344
18b4b30e 3452019-01-26 Eric Botcazou <ebotcazou@adacore.com>
346
347 * gcc-interface/trans.c (struct loop_info_d): Remove artificial field.
348 (Loop_Statement_to_gnu): Do not set it.
349
6dce35b7 3502019-01-26 Eric Botcazou <ebotcazou@adacore.com>
351
352 * gcc-interface/trans.c (Iterate_Acc_Clause_Arg): Fix formatting.
353 (Acc_gnat_to_gnu): Likewise.
354 (Acc_Data_to_gnu): Likewise.
355 (Acc_Var_to_gnu): Likewise.
356 (Acc_Reduc_to_gnu): Likewise.
357 (Acc_Size_List_to_gnu): Likewise.
358 (Pragma_to_gnu) <Pragma_Acc_Loop>: Likewise.
359 <Pragma_Acc_Data>): Likewise.
360 (find_loop_for): Remove default value for parameters.
361 * gcc-interface/trans.c (gnat_to_gnu) <N_Op_And>: Merge into...
362 <N_Op_Eq>): ...this.
363
f8cd11ee 3642019-01-26 Eric Botcazou <ebotcazou@adacore.com>
365
366 * gcc-interface/decl.c (annotate_value) <INTEGER_CST>: Use test on
367 the sign bit instead of on the sign of the value.
368 <PLUS_EXPR>: Turn addition of negative constant into subtraction.
369 <MULT_EXPR>: Add test for degenerate case.
370 <BIT_AND_EXPR>: Simplify.
371
9a3c51d9 3722019-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
373
374 * s-oscons-tmplt.c (AF_INET6): Do not undefine for RTEMS.
375
07c11f2b 3762019-01-09 Sandra Loosemore <sandra@codesourcery.com>
377
378 PR other/16615
07c11f2b 379 * exp_ch11.adb: Change "can not" to "cannot".
380 * sem_ch4.adb: Likewise.
381
f4d3c071 3822019-01-09 Sandra Loosemore <sandra@codesourcery.com>
383
384 PR other/16615
f4d3c071 385 * exp_ch9.adb: Mechanically replace "can not" with "cannot".
386 * libgnat/s-regpat.ads: Likewise.
387 * par-ch4.adb: Likewise.
388 * set_targ.adb: Likewise.
389 * types.ads: Likewise.
390
902071d1 3912019-01-08 Justin Squirek <squirek@adacore.com>
392
393 Revert:
902071d1 394 2018-07-31 Justin Squirek <squirek@adacore.com>
395
76fb0465 396 * lib-writ.adb (Write_With_Lines): Modfiy the generation
397 of dependencies within ali files so that source unit
398 bodies are properly listed even if said bodies are
399 missing. Perform legacy behavior in GNATprove mode.
400 * lib-writ.ads: Modify documentation to reflect current
401 behavior.
902071d1 402
403 and:
902071d1 404 2018-09-26 Justin Squirek <squirek@adacore.com>
405
76fb0465 406 * lib-writ.adb, lib-writ.ads (Write_With_Lines): Add
407 documentation and an extra conditional check for RCI
408 units so that generated ali files will list the spec
409 only instead of a body when a body is not found.
902071d1 410
65a33d4a 4112019-01-04 Eric Botcazou <ebotcazou@adacore.com>
412
413 * gnatvsn.ads: Bump copyright year.
414
3d8932fd 4152019-01-01 Jakub Jelinek <jakub@redhat.com>
8e8f6434 416
fbd26352 417 Update copyright years.
418
277184bc 419 * gnat_ugn.texi: Bump @copying's copyright year.
420 * gnat_rm.texi: Likewise.
7dfbd804 421\f
3d8932fd 422Copyright (C) 2019 Free Software Foundation, Inc.
7dfbd804 423
424Copying and distribution of this file, with or without modification,
425are permitted in any medium without royalty provided the copyright
426notice and this notice are preserved.