]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
[Ada] Make No_Inline pragma effective for generic subprograms
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
9d27ea41 12019-07-01 Eric Botcazou <ebotcazou@adacore.com>
2
3 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Move up
4 handling of Has_Pragma_Inline_Always and deal with
5 Has_Pragma_No_Inline.
6
bcb8dcf3 72019-07-01 Ed Schonberg <schonberg@adacore.com>
8
9 * sem_ch3.adb (Build_Derived_Record_Type): If the parent type is
10 declared as a subtype of a private type with an inherited
11 discriminant constraint, its generated full base appears as a
12 record subtype, so we need to retrieve its oen base type so that
13 the inherited constraint can be applied to it.
14
d087b9ca 152019-07-01 Yannick Moy <moy@adacore.com>
16
17 * sem_spark.adb: Completely rework the algorithm for ownership
18 checking, as the rules in SPARK RM have changed a lot.
19 * sem_spark.ads: Update comments.
20
fe48ee0a 212019-07-01 Dmitriy Anisimkov <anisimko@adacore.com>
22
23 * gsocket.h (Has_Sockaddr_Len): Use the offset of sin_family offset in
24 the sockaddr_in structure to determine the existence of length field
25 before the sin_family.
26
b20f7e2c 272019-07-01 Ed Schonberg <schonberg@adacore.com>
28
29 * sem_prag.adb (Analyze_Pragma, case Weak_External): Pragma only
30 applies to entities with run-time addresses, not to types.
31
374fdf94 322019-07-01 Piotr Trojanek <trojanek@adacore.com>
33
34 * einfo.adb, sem_ch7.adb, sem_prag.adb, sem_util.adb: Update
35 references to the SPARK RM after the removal of Rule 7.1.4(5).
36
bf13a79d 372019-07-01 Piotr Trojanek <trojanek@adacore.com>
38
39 * sysdep.c: Cleanup references to LynuxWorks in docs and
40 comments.
41
866fa2d0 422019-07-01 Ed Schonberg <schonberg@adacore.com>
43
44 * checks.adb (Insert_Valid_Check): Do not apply validity check
45 to variable declared within a protected object that uses the
46 Lock_Free implementation, to prevent unwarranted constant
47 folding, because entities within such an object msut be treated
48 as volatile.
49
bcb5ab83 502019-07-01 Eric Botcazou <ebotcazou@adacore.com>
51
52 * exp_ch9.adb (Check_Inlining): Deal with Has_Pragma_No_Inline.
53
2db33bd6 542019-07-01 Ed Schonberg <schonberg@adacore.com>
55
56 * exp_unst.adb (Visit_Node, Check_Static_Type): Improve the
57 handling of private and incomplete types whose full view is an
58 access type, to detect additional uplevel references in dynamic
59 bounds. This is relevant to N_Free_Statement among others that
60 manipulate types whose full viww may be an access type.
61
6b4f0b7d 622019-07-01 Pat Rogers <rogers@adacore.com>
63
64 * doc/gnat_rm/representation_clauses_and_pragmas.rst: Correct
65 size indicated for R as a component of an array.
66 * gnat_rm.texi: Regenerate.
67
cdee70d7 682019-07-01 Justin Squirek <squirek@adacore.com>
69
70 * libgnat/s-win32.ads: Add definition for ULONG, modify
71 OVERLAPPED type, and add appropriate pragmas.
72
2cf822b7 732019-07-01 Bob Duff <duff@adacore.com>
74
75 * gnat1drv.adb (gnat1drv): Call Write_ALI if the main unit is
76 ignored-ghost.
77
0a1ece97 782019-07-01 Yannick Moy <moy@adacore.com>
79
80 * sem_ch4.adb (Operator_Check): Refine error message.
81
ee4279ef 822019-07-01 Piotr Trojanek <trojanek@adacore.com>
83
84 * libgnat/a-calend.ads: Revert "Global => null" contracts on
85 non-pure routines.
86
2c6b4ada 872019-07-01 Piotr Trojanek <trojanek@adacore.com>
88
89 * exp_attr.adb, libgnat/g-graphs.ads: Fix typos in comments:
90 componant -> component.
91
175c4526 922019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
93
94 * libgnat/g-graphs.adb: Use type Directed_Graph rather than
95 Instance in various routines.
96 * libgnat/g-graphs.ads: Change type Instance to Directed_Graph.
97 Update various routines that mention the type.
98
a0d15509 992019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
100
101 * libgnat/g-sets.adb: Use type Membership_Set rathern than
102 Instance in various routines.
103 * libgnat/g-sets.ads: Change type Instance to Membership_Set.
104 Update various routines that mention the type.
105
205a23a3 1062019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
107
108 * libgnat/g-lists.adb: Use type Doubly_Linked_List rather than
109 Instance in various routines.
110 * libgnat/g-lists.ads: Change type Instance to
111 Doubly_Linked_List. Update various routines that mention the
112 type.
113
17fdf8c2 1142019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
115
116 * libgnat/g-dynhta.adb: Use type Dynamic_Hash_Table rather than
117 Instance in various routines.
118 * libgnat/g-dynhta.ads: Change type Instance to
119 Dynamic_Hash_Table. Update various routines that mention the
120 type.
121
216ffc64 1222019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
123
124 * exp_attr.adb, exp_ch7.adb, exp_unst.adb, sem_ch3.adb,
125 sem_util.adb, uintp.adb, uintp.ads: Minor reformatting.
126
5051fe35 1272019-07-01 Javier Miranda <miranda@adacore.com>
128
129 * exp_attr.adb (Expand_Min_Max_Attribute): Disable expansion of
130 'Min/'Max on integer, enumeration, fixed point and floating
131 point types since the CCG backend now provides in file
132 standard.h routines to support it.
133
830a2a71 1342019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
135
136 * impunit.adb: Add GNAT.Graphs to list Non_Imp_File_Names_95.
137 * Makefile.rtl, gcc-interface/Make-lang.in: Register unit
138 GNAT.Graphs.
139 * libgnat/g-dynhta.adb: Various minor cleanups (use Present
140 rather than direct comparisons).
141 (Delete): Reimplement to use Delete_Node.
142 (Delete_Node): New routine.
143 (Destroy_Bucket): Invoke the provided destructor.
144 (Present): New routines.
145 * libgnat/g-dynhta.ads: Add new generic formal Destroy_Value.
146 Use better names for the components of iterators.
147 * libgnat/g-graphs.adb, libgnat/g-graphs.ads: New unit.
148 * libgnat/g-lists.adb: Various minor cleanups (use Present
149 rather than direct comparisons).
150 (Delete_Node): Invoke the provided destructor.
151 (Present): New routine.
152 * libgnat/g-lists.ads: Add new generic formal Destroy_Element.
153 Use better names for the components of iterators.
154 (Present): New routine.
155 * libgnat/g-sets.adb, libgnat/g-sets.ads (Destroy, Preset,
156 Reset): New routines.
157
b0111d94 1582019-07-01 Dmitriy Anisimkov <anisimko@adacore.com>
159
160 * libgnat/g-sothco.adb (Get_Address): Fix the case when AF_INET6
161 is not defined.
162
7362896b 1632019-07-01 Ed Schonberg <schonberg@adacore.com>
164
165 * exp_attr.adb (Expand_Attribute_Reference, case Invalid_Value):
166 Resolve result of call to Get_Simple_Init_Val, which may be a
167 conversion of a literal.
168
0dae8dc2 1692019-07-01 Hristian Kirtchev <kirtchev@adacore.com>
170
171 * freeze.adb (Freeze_Expression): Remove the horrible useless
172 name hiding of N. Insert the freeze nodes generated by the
173 expression prior to the expression when the nearest enclosing
174 scope is transient.
175
487da8ff 1762019-07-01 Pierre-Marie de Rodat <derodat@adacore.com>
177
178 * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Fix
179 formatting issues in the -gnatR section.
180 * gnat_ugn.texi: Regenerate.
181
1d79fa18 1822019-06-30 Iain Sandoe <iain@sandoe.co.uk>
183
184 * gnatlink.adb (Link_Step): Remove duplicate -static-libgcc switches.
185 Push -shared-libgcc explicitly, when it is the target default (unless
186 overidden by the static flag).
187 When the user has put an instance of shared/static-libgcc do not push
188 a duplicate of this.
189
a850edcd 1902019-06-29 Eric Botcazou <ebotcazou@adacore.com>
191
192 * gcc-interface/decl.c (gnat_to_gnu_entity): Beep up comment on SAVED,
193 and tweak comment on the assertion about the scopes of Itypes. Do not
194 skip the regular processing for Itypes that are E_Record_Subtype with
195 a Cloned_Subtype. Get the Cloned_Subtype for every E_Record_Subtype
196 if the type is dummy and hasn't got its own freeze node.
197 <E_Record_Subtype>: Save again the DECL of the Cloned_Subtype, if any.
198 <E_Access_Subtype>: Save again the DECL of the equivalent type.
199 (Gigi_Equivalent_Type) <E_Access_Subtype>: New case.
200
b1e46fb1 2012019-06-29 Eric Botcazou <ebotcazou@adacore.com>
202
203 * gcc-interface/utils.c (unchecked_convert): Tweak comment. Only skip
204 dereferences when padding to have the same size on both sides. Do it
205 for destination types with self-referential size too.
206
07e38949 2072019-06-29 Eric Botcazou <ebotcazou@adacore.com>
208
209 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the
210 type requires strict alignment, then set the RM size to the type size.
211 Rework handling of alignment and sizes of tagged types in ASIS mode.
212 (validate_size): Rename local variable and remove special handling for
213 strict-alignment types.
214 * gcc-interface/utils.c (finish_record_type): Constify local variables
215 and use properly typed constants.
216
f4409741 2172019-06-29 Eric Botcazou <ebotcazou@adacore.com>
218
219 * gcc-interface/decl.c (gnat_to_gnu_field): Rework error messages for
220 fields requiring strict alignment, add explicit test on Storage_Unit
221 for position and size, and mention type alignment for position.
222
5882c515 2232019-06-29 Eric Botcazou <ebotcazou@adacore.com>
224
225 * gcc-interface/trans.c (mark_visited_r): Set TYPE_SIZES_GIMPLIFIED on
226 the main variant of a type, if any.
227
d0de0a27 2282019-06-29 Eric Botcazou <ebotcazou@adacore.com>
229
230 * gcc-interface/decl.c (set_nonaliased_component_on_array_type): Add
231 missing guard for the presence of TYPE_CANONICAL.
232 (set_reverse_storage_order_on_array_type): Likewise.
233
2074c859 2342019-06-29 Eric Botcazou <ebotcazou@adacore.com>
235
236 * gcc-interface/gigi.h (make_packable_type): Remove default value.
237 (value_factor_p): Tweak prototype.
238 * gcc-interface/decl.c (gnat_to_gnu_entity): Add comment.
239 (gnat_to_gnu_component_type): Likewise.
240 (gnat_to_gnu_field): Likewise. Fetch the position of the field earlier
241 and simplify the condition under which the type is packed. Declare
242 local variable is_bitfield. Pass 1 as max_align to make_packable_type
243 if it is set to true.
244 (copy_and_substitute_in_layout): Pass 0 to make_packable_type.
245 * gcc-interface/utils.c (make_packable_array_type): New function.
246 (make_packable_type): Use it to rewrite the type of array field.
247 (maybe_pad_type): Pass align parameter to make_packable_type.
248 (create_field_decl): Minor tweaks.
249 (value_factor_p): Assert that FACTOR is a power of 2 and replace the
250 modulo computation by a masking operation.
251
83c6da22 2522019-06-25 Eric Botcazou <ebotcazou@adacore.com>
253
254 * gcc-interface/decl.c (gnat_to_gnu_entity): Remove superfluous test
255 in previous change.
256 * gcc-interface/gigi.h (maybe_character_type): Fix formatting.
257 (maybe_character_value): Likewise.
258
aaabc7bc 2592019-06-24 Jan Hubicka <jh@suse.cz>
260
261 * gcc-interface/decl.c (gnat_to_gnu_entity): Check that
262 type is array or integer prior checking string flag.
83c6da22 263 * gcc-interface/gigi.h (maybe_character_type): Likewise.
264 (maybe_character_value): Likewise.
aaabc7bc 265
5fe09a56 2662019-06-24 Martin Sebor <msebor@redhat.com>
267
268 * gcc-interface/utils.c (handle_nonnull_attribute): Quote attribute
269 name.
270
bd9331d6 2712019-06-18 Arnaud Charlet <charlet@adacore.com>
272
83c6da22 273 PR ada/80590
bd9331d6 274 * sem_ch5.adb (Analyze_Loop_Statement): Avoid exception propagation
275 during normal processing.
276
8a5a7d1c 2772019-06-17 Arnaud Charlet <charlet@adacore.com>
278
83c6da22 279 PR ada/80590
8a5a7d1c 280 * exp_ch9.adb (Expand_N_Delay_Relative_Statement): Swap the two
281 conditions to avoid a unnecessary exception propagation in the default
282 case.
283
580934f6 2842019-05-28 Eric Botcazou <ebotcazou@adacore.com>
285
286 * gcc-interface/utils.c (handle_stack_protect_attribute): Move around.
287
c8956236 2882019-05-28 Eric Botcazou <ebotcazou@adacore.com>
289
290 * doc/gnat_rm/implementation_defined_pragmas.rst (Machine_Attribute):
291 Document additional optional parameters.
292 * sem_prag.adb (Analyze_Pragma) <Pragma_Machine_Attribute>: Accept
293 more than one optional parameter.
294 * gcc-interface/decl.c (prepend_one_attribute_pragma): Alphabetize
295 the list of supported pragmas. Simplify the handling of parameters
296 and add support for more than one optional parameter.
297 * gcc-interface/utils.c (attr_cold_hot_exclusions): New constant.
298 (gnat_internal_attribute_table): Add entry for no_icf, noipa, flatten,
299 used, cold, hot, target and target_clones.
300 (begin_subprog_body): Do not create the RTL for the subprogram here.
301 (handle_noicf_attribute): New static function.
302 (handle_noipa_attribute): Likewise.
303 (handle_flatten_attribute): Likewise.
304 (handle_used_attribute): Likewise.
305 (handle_cold_attribute): Likewise.
306 (handle_hot_attribute): Likewise.
307 (handle_target_attribute): Likewise.
308 (handle_target_clones_attribute): Likewise.
309
62b762c2 3102019-05-28 Eric Botcazou <ebotcazou@adacore.com>
311
312 * gcc-interface/trans.c (lvalue_required_for_attribute_p): Return 0
313 for 'Size too.
314 (Identifier_to_gnu): Use the actual subtype for a reference to a
315 packed array in a return statement.
316 (Attribute_to_gnu) <Attr_Size>: Do not strip VIEW_CONVERT_EXPRs from
317 the prefix in every case.
318
336a61a3 3192019-05-28 Eric Botcazou <ebotcazou@adacore.com>
320
321 * gcc-interface/trans.c (gnat_to_gnu): Remove superfluous tests on
322 Backend_Overflow_Checks_On_Target and rework comments.
323
983c5b5e 3242019-05-28 Eric Botcazou <ebotcazou@adacore.com>
325
326 * gcc-interface/trans.c (walk_nesting_tree): New static function.
327 (finalize_nrv): Use it to walk the entire nesting tree.
328
96b4b84e 3292019-05-28 Eric Botcazou <ebotcazou@adacore.com>
330
331 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Remove
332 obsolete test on Is_For_Access_Subtype.
333
0b74284e 3342019-05-28 Eric Botcazou <ebotcazou@adacore.com>
335
336 * gcc-interface/decl.c (components_to_record): Set a name on the type
337 created for the REP part, if any.
338 * gcc-interface/utils.c (finish_record_type): Only take the maximum
339 when merging sizes for a variant part at offset 0.
340 (merge_sizes): Rename has_rep parameter into max.
341
689dab9d 3422019-05-28 Eric Botcazou <ebotcazou@adacore.com>
343
344 * gcc-interface/utils.c (gnat_internal_attribute_table): Add support
345 for stack_protect attribute.
346 (handle_stack_protect_attribute): New static function.
347
804f7d39 3482019-05-28 Eric Botcazou <ebotcazou@adacore.com>
349
350 * gcc-interface/decl.c (intrin_arglists_compatible_p): Do not return
351 false if the internal builtin uses a variable list.
352
f07f94cc 3532019-05-27 Eric Botcazou <ebotcazou@adacore.com>
354
355 * gcc-interface/trans.c (Call_to_gnu): Do not initialize the temporary
356 created out of addressability concerns if it's for the _Init parameter
357 of an initialization procedure.
358
abfd658b 3592019-05-27 Eric Botcazou <ebotcazou@adacore.com>
360
361 * gcc-interface/ada-builtin-types.def: New file.
362 * gcc-interface/ada-builtins.def: Likewise.
363 * gcc-interface/ada-tree.h (BUILT_IN_LIKELY): New macro.
364 (BUILT_IN_UNLIKELY): Likewise.
365 * gcc-interface/trans.c (independent_iterations_p): Initialize the
366 auto-vector to 16 elements.
367 (Call_to_gnu): Remove local variable and change the vector of actual
368 parameters to an auto-vector. Do not convert actual parameters to
369 the argument type for front-end built-in functions. Add support for
370 front-end built-in functions.
371 (build_noreturn_cond): Use internal instead of built-in function.
372 * gcc-interface/utils.c (c_builtin_type): Include ada-builtin-types.def
373 (install_builtin_function_types): Likewise.
374 (install_builtin_functions): Include ada-builtins.def first.
375
caab73a2 3762019-05-27 Eric Botcazou <ebotcazou@adacore.com>
377
378 * gcc-interface/utils.c (maybe_pad_type): Issue the warning for the
379 specific case of component types preferably.
380
f1ca2388 3812019-05-27 Eric Botcazou <ebotcazou@adacore.com>
382
383 * gcc-interface/trans.c (Identifier_to_gnu): Minor tweaks.
384 (gnat_to_gnu): Do not convert the result if it is a reference to an
385 unconstrained array used as the prefix of an attribute reference that
386 requires an lvalue.
387
e3f3573c 3882019-05-27 Eric Botcazou <ebotcazou@adacore.com>
389
390 * gcc-interface/trans.c (Gigi_Types_Compatible): New predicate.
391 (Identifier_to_gnu): Use it to assert that the type of the identifier
392 and that of its entity are compatible for gigi. Rename a couple of
393 local variables and separate the processing of the result type.
394
2306cd17 3952019-05-27 Eric Botcazou <ebotcazou@adacore.com>
396
397 * gcc-interface/trans.c (Call_to_gnu): Use the unpadded type when
398 putting back an intermediate conversion the type of the actuals.
399
6e4e9378 4002019-05-27 Eric Botcazou <ebotcazou@adacore.com>
401
402 * gcc-interface/trans.c (gnat_to_gnu) <Shift operations>: Convert the
403 count to the unsigned version of its base type before proceeding.
404
85b9be9b 4052019-05-16 Martin Sebor <msebor@redhat.com>
406
3d6be0d5 407 * gcc-interface/trans.c (check_inlining_for_nested_subprog): Quote
408 reserved names.
85b9be9b 409
65d973ca 4102019-05-08 Arnaud Charlet <charlet@adacore.com>
411
412 * standard.ads.h: New file.
413
ff628b99 4142019-05-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
415
416 * gcc-interface/Makefile.in (install-gcc-specs): Use foreach.
417 Honor DESTDIR.
418
ebd761d4 4192019-04-29 Michael K. Darling <darlingm@gmail.com>
420
421 * gnatvsn.ads: Bump Library_Version to 10.
422
5f260823 4232019-04-24 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
424 Bernd Edlinger <bernd.edlinger@hotmail.de>
425 Jakub Jelinek <jakub@redhat.com>
426
427 PR target/89093
428 * raise-gcc.c (TARGET_ATTRIBUTE): Define.
429 (continue_unwind, personality_body, PERSONALITY_FUNCTION): Add
430 TARGET_ATTRIBUTE.
431
d7ca95c0 4322019-04-07 Eric Botcazou <ebotcazou@adacore.com>
433
434 * libgnat/i-cexten.ads (CFloat_128): New type.
435
26b21081 4362019-03-22 Dmitriy Anisimkov <anisimko@adacore.com>
437
438 PR ada/89583
439 * libgnat/g-socket.adb (Bind_Socket, Connect_Socket,
440 Send_Socket): Fix the computation of structure lengths passed to
441 low level routines.
442 (Is_IPv6_Address): Fix the number of expected colons.
443
2f6d557f 4442019-03-11 Martin Liska <mliska@suse.cz>
445
d325ee67 446 * gcc-interface/misc.c (gnat_post_options): Wrap option name in string
447 format message and fix GNU coding style.
2f6d557f 448
c1ad6672 4492019-02-08 Eric Botcazou <ebotcazou@adacore.com>
450
451 * gcc-interface/trans.c (gnat_to_gnu) <N_Aggregate>: Minor tweak.
452 * gcc-interface/utils.c (convert): Do not pad when doing an unchecked
453 conversion here. Use TREE_CONSTANT throughout the function.
454 (unchecked_convert): Also pad if the source is a CONSTRUCTOR and the
455 destination is a more aligned array type or a larger aggregate type,
456 but not between original and packable versions of a type.
457
62a6ebbd 4582019-02-08 Eric Botcazou <ebotcazou@adacore.com>
459
460 * gcc-interface/utils.c (max_size) <tcc_unary>: Be prepared for an
461 operand with VOID_TYPE.
462
da383d19 4632019-02-08 Eric Botcazou <ebotcazou@adacore.com>
464
465 * gcc-interface/trans.c (elaborate_all_entities): Do not elaborate the
466 entities of a package renaming another one.
467
09c123a0 4682019-02-08 Eric Botcazou <ebotcazou@adacore.com>
469
470 * gcc-interface/trans.c (Regular_Loop_to_gnu): Replace tests on
471 individual flag_unswitch_loops and flag_tree_loop_vectorize switches
472 with test on global optimize switch.
473 (Raise_Error_to_gnu): Likewise.
474
a9dd7273 4752019-02-07 Eric Botcazou <ebotcazou@adacore.com>
476
477 * libgnarl/s-linux__sparc.ads (ETIMEDOUT): Set to correct value.
478
4836c4f1 4792019-02-06 Arnaud Charlet <charlet@adacore.com>
480
481 * libgnarl/s-linux__x32.ads: Resync list of signals with s-linux.ads
482
6b56937c 4832019-01-27 Eric Botcazou <ebotcazou@adacore.com>
484
485 * repinfo.adb (List_Component_Layout): Remove superfluous space for
486 zero-sized field.
487 * gcc-interface/ada-tree.h (TYPE_IS_EXTRA_SUBTYPE_P): New macro.
488 * gcc-interface/gigi.h (create_extra_subtype): Declare.
489 * gcc-interface/decl.c (TYPE_ARRAY_SIZE_LIMIT): Likewise.
490 (update_n_elem): New function.
491 (gnat_to_gnu_entity): Use create_extra_subtype to create extra subtypes
492 instead of doing it manually.
493 <E_Array_Type>: Use update_n_elem to compute the maximum size. Use the
494 index type instead of base type for the bounds. Set TYPE_ARRAY_MAX_SIZE
495 of the array to the maximum size.
496 <E_Array_Subtype>: Create an extra subtype using the index type of the
497 base array type for self-referential bounds. Use update_n_elem to
498 compute the maximum size. Set TYPE_ARRAY_MAX_SIZE of the array to the
499 maximum size.
500 (gnat_to_gnu_field): Clear DECL_NONADDRESSABLE_P on discriminants.
501 * gcc-interface/misc.c (gnat_get_alias_set): Return the alias set of
502 the base type for an extra subtype.
503 (gnat_type_max_size): Remove obsolete code.
504 * gcc-interface/trans.c (Attribute_to_gnu): Minor tweak.
505 (can_be_lower_p): Deal with pathological types.
506 * gcc-interface/utils.c (create_extra_subtype): New function.
507 (create_field_decl): Minor tweak.
508 (max_size) <tcc_reference>: Compute a better value by using the extra
509 subtypes on the self-referential bounds.
510 <tcc_binary>: Rewrite. Deal with "negative value" in unsigned types.
511 <tcc_expression>: Likewise.
512 * gcc-interface/utils2.c (compare_arrays): Retrieve the original bounds
513 of the arrays upfront. Swap only if the second length is not constant.
514 Use comparisons on the original bounds consistently for the null tests.
515 (build_binary_op): Use TYPE_IS_EXTRA_SUBTYPE_P macro.
516 (build_allocator): Minor tweak.
517
ecb2c722 5182019-01-27 Eric Botcazou <ebotcazou@adacore.com>
519
520 * gcc-interface/decl.c (array_type_has_nonaliased_component): Return
521 the same value for every dimension of a multidimensional array type.
522
10f25579 5232019-01-26 Eric Botcazou <ebotcazou@adacore.com>
524
525 * gcc-interface/trans.c (Regular_Loop_to_gnu): Use the SLOC of the
526 iteration scheme, if present, throughout the translation.
527
aced6683 5282019-01-26 Eric Botcazou <ebotcazou@adacore.com>
529
530 * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Use
531 DECL_SIZE_UNIT instead of TYPE_SIZE_UNIT for the size to be assigned
532 by a call to memset if the LHS is a DECL.
533
18b4b30e 5342019-01-26 Eric Botcazou <ebotcazou@adacore.com>
535
536 * gcc-interface/trans.c (struct loop_info_d): Remove artificial field.
537 (Loop_Statement_to_gnu): Do not set it.
538
6dce35b7 5392019-01-26 Eric Botcazou <ebotcazou@adacore.com>
540
541 * gcc-interface/trans.c (Iterate_Acc_Clause_Arg): Fix formatting.
542 (Acc_gnat_to_gnu): Likewise.
543 (Acc_Data_to_gnu): Likewise.
544 (Acc_Var_to_gnu): Likewise.
545 (Acc_Reduc_to_gnu): Likewise.
546 (Acc_Size_List_to_gnu): Likewise.
547 (Pragma_to_gnu) <Pragma_Acc_Loop>: Likewise.
548 <Pragma_Acc_Data>): Likewise.
549 (find_loop_for): Remove default value for parameters.
550 * gcc-interface/trans.c (gnat_to_gnu) <N_Op_And>: Merge into...
551 <N_Op_Eq>): ...this.
552
f8cd11ee 5532019-01-26 Eric Botcazou <ebotcazou@adacore.com>
554
555 * gcc-interface/decl.c (annotate_value) <INTEGER_CST>: Use test on
556 the sign bit instead of on the sign of the value.
557 <PLUS_EXPR>: Turn addition of negative constant into subtraction.
558 <MULT_EXPR>: Add test for degenerate case.
559 <BIT_AND_EXPR>: Simplify.
560
9a3c51d9 5612019-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
562
563 * s-oscons-tmplt.c (AF_INET6): Do not undefine for RTEMS.
564
07c11f2b 5652019-01-09 Sandra Loosemore <sandra@codesourcery.com>
566
567 PR other/16615
07c11f2b 568 * exp_ch11.adb: Change "can not" to "cannot".
569 * sem_ch4.adb: Likewise.
570
f4d3c071 5712019-01-09 Sandra Loosemore <sandra@codesourcery.com>
572
573 PR other/16615
f4d3c071 574 * exp_ch9.adb: Mechanically replace "can not" with "cannot".
575 * libgnat/s-regpat.ads: Likewise.
576 * par-ch4.adb: Likewise.
577 * set_targ.adb: Likewise.
578 * types.ads: Likewise.
579
902071d1 5802019-01-08 Justin Squirek <squirek@adacore.com>
581
582 Revert:
902071d1 583 2018-07-31 Justin Squirek <squirek@adacore.com>
584
76fb0465 585 * lib-writ.adb (Write_With_Lines): Modfiy the generation
586 of dependencies within ali files so that source unit
587 bodies are properly listed even if said bodies are
588 missing. Perform legacy behavior in GNATprove mode.
589 * lib-writ.ads: Modify documentation to reflect current
590 behavior.
902071d1 591
592 and:
902071d1 593 2018-09-26 Justin Squirek <squirek@adacore.com>
594
76fb0465 595 * lib-writ.adb, lib-writ.ads (Write_With_Lines): Add
596 documentation and an extra conditional check for RCI
597 units so that generated ali files will list the spec
598 only instead of a body when a body is not found.
902071d1 599
65a33d4a 6002019-01-04 Eric Botcazou <ebotcazou@adacore.com>
601
602 * gnatvsn.ads: Bump copyright year.
603
3d8932fd 6042019-01-01 Jakub Jelinek <jakub@redhat.com>
8e8f6434 605
fbd26352 606 Update copyright years.
607
277184bc 608 * gnat_ugn.texi: Bump @copying's copyright year.
609 * gnat_rm.texi: Likewise.
7dfbd804 610\f
3d8932fd 611Copyright (C) 2019 Free Software Foundation, Inc.
7dfbd804 612
613Copying and distribution of this file, with or without modification,
614are permitted in any medium without royalty provided the copyright
615notice and this notice are preserved.