]> gcc.gnu.org Git - gcc.git/blob - gcc/ada/ChangeLog
eab8f0082e1c755e55df2961322029a9e217a385
[gcc.git] / gcc / ada / ChangeLog
1 2023-05-29 Cedric Landet <landet@adacore.com>
2
3 * s-oscons-tmplt.c: move the definition of sigset out of the
4 HAVE_SOCKETS bloc.
5
6 2023-05-29 Cedric Landet <landet@adacore.com>
7
8 * Makefile.rtl: Move g-spogwa$(objext) from GNATRTL_NONTASKING_OBJS
9 to GNATRTL_SOCKETS_OBJS
10
11 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
12
13 * freeze.adb (Wrap_Imported_Subprogram): Use Copy_Subprogram_Spec in
14 both cases to copy the spec of the subprogram.
15
16 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
17
18 * exp_ch7.adb (Establish_Transient_Scope.Find_Transient_Context):
19 Bail out for a simple return statement only if the transient scope
20 and the function both require secondary stack management, or else
21 if the function is a thunk.
22 * sem_res.adb (Resolve_Call): Do not create a transient scope when
23 the call is the expression of a simple return statement.
24
25 2023-05-29 Patrick Bernardi <bernardi@adacore.com>
26
27 * libgnat/a-excach.adb (Call_Chain): Replace
28 Code_Address_For_AAA/ZZZ functions with AAA/ZZZ'Code_Address.
29 * libgnat/a-except.adb (Code_Address_For_AAA/ZZZ): Delete.
30 (AAA/ZZZ): New null procedures.
31 * libgnat/g-debpoo.adb
32 (Code_Address_For_Allocate_End): Delete.
33 (Code_Address_For_Deallocate_End): Delete.
34 (Code_Address_For_Dereference_End): Delete.
35 (Allocate): Remove label and use Code_Address attribute to
36 determine subprogram addresses.
37 (Dellocate): Likewise.
38 (Dereference): Likewise.
39 (Allocate_End): Convert to null procedure.
40 (Dellocate_End): Likewise.
41 (Dereference_End): Likewise.
42
43 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
44
45 * exp_ch6.adb (Expand_Simple_Function_Return): Call Insert_Actions
46 consistently when rewriting the expression.
47
48 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
49
50 * exp_util.adb (Is_Finalizable_Transient.Is_Indexed_Container):
51 New predicate to detect a temporary created to hold the result of
52 a constant indexing on a container.
53 (Is_Finalizable_Transient.Is_Iterated_Container): Adjust a couple
54 of obsolete comments.
55 (Is_Finalizable_Transient): Return False if Is_Indexed_Container
56 returns True on the object.
57
58 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
59
60 * sem_res.adb (Has_Applicable_User_Defined_Literal): Make it clear
61 that the predicate also checks the node itself.
62 (Try_User_Defined_Literal): Move current implementation to...
63 Deal only with literals, named numbers and conditional expressions
64 whose dependent expressions are literals or named numbers.
65 (Try_User_Defined_Literal_For_Operator): ...this. Remove multiple
66 return False statements and put a single one at the end.
67 (Resolve): Call Try_User_Defined_Literal instead of directly
68 Has_Applicable_User_Defined_Literal for all nodes. Call
69 Try_User_Defined_Literal_For_Operator for operator nodes.
70
71 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
72
73 * sem_res.adb (Invoked_With_Different_Arguments): Use Get_Called_Entity,
74 which properly deals with calls via an access-to-subprogram; fix
75 inconsistent use of a Call object declared in enclosing subprogram.
76
77 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
78
79 * contracts.adb
80 (Add_Pre_Post_Condition): Attach pre/post aspects to E_Subprogram_Type
81 entity.
82 (Analyze_Entry_Or_Subprogram_Contract): Adapt to use full type
83 declaration for a contract attached to E_Subprogram_Type entity.
84 * sem_prag.adb
85 (Analyze_Pre_Post_Condition): Add pre/post aspects to the designed type.
86
87 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
88
89 * sem_util.adb (Check_Function_Writable_Actuals): Remove guard against
90 a membership test with no alternatives; simplify with a membership test.
91
92 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
93
94 * doc/gnat_ugn/gnat_and_program_execution.rst
95 (Some Useful Memory Pools): Remove extra whitespace from examples.
96 * sem_aggr.adb (Make_String_Into_Aggregate): Remove extra whitespace.
97 * gnat_ugn.texi: Regenerate.
98
99 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
100
101 * exp_aggr.adb (Convert_Aggr_In_Allocator): Replace Get_TSS_Name
102 with a high-level Is_TSS.
103 * sem_ch6.adb (Check_Conformance): Replace DECLARE block and
104 nested IF with a call to Get_TSS_Name and a membership test.
105 (Has_Reliable_Extra_Formals): Refactor repeated calls to
106 Get_TSS_Name.
107 * sem_disp.adb (Check_Dispatching_Operation): Replace repeated
108 calls to Get_TSS_Name with a membership test.
109
110 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
111
112 * exp_ch5.adb (Expand_N_Case_Statement): Do not remove the statement
113 if it is the node to be wrapped by a transient scope.
114
115 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
116
117 * sem_prag.adb (Process_Compile_Time_Warning_Or_Error): Do not defer
118 anything to the back-end when the main unit is generic.
119
120 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
121
122 * sem_res.adb (Try_User_Defined_Literal): Restrict previous change
123 to non-leaf nodes.
124
125 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
126
127 * sem_res.adb (Try_User_Defined_Literal): For arithmetic operators,
128 also accept operands whose type is covered by the resolution type.
129
130 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
131
132 * exp_aggr.adb (Initialize_Array_Component): Fix condition detecting
133 the nested case that requires an adjustment.
134
135 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
136
137 * exp_ch4.adb (Expand_N_In): Deal specifically with a null operand.
138
139 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
140
141 * exp_ch6.adb (Expand_Simple_Function_Return): Deal with a rewriting
142 of the simple return during the adjustment of its expression.
143
144 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
145
146 * exp_ch4.adb (Expand_N_Case_Expression): Distribute simple return
147 statements enclosing the conditional expression into the dependent
148 expressions in almost all cases.
149 (Expand_N_If_Expression): Likewise.
150 (Process_Transient_In_Expression): Adjust to the above distribution.
151 * exp_ch6.adb (Expand_Ctrl_Function_Call): Deal with calls in the
152 dependent expressions of a conditional expression.
153 * sem_ch6.adb (Analyze_Function_Return): Deal with the rewriting of
154 a simple return statement during the resolution of its expression.
155
156 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
157
158 * sem_res.adb (Resolve_Entity_Name): Refine rules for Exceptional_Cases.
159
160 2023-05-29 Marc Poulhiès <poulhies@adacore.com>
161
162 * exp_aggr.adb (Convert_To_Assignments): Do not mark node for
163 delayed expansion if parent type has the Aggregate aspect.
164 * sem_util.adb (Is_Container_Aggregate): Move...
165 * sem_util.ads (Is_Container_Aggregate): ... here and make it
166 public.
167
168 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
169
170 * sem_res.adb (Resolve_Entity_Name): Relax rules for Exceptional_Cases.
171
172 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
173
174 * sem_ch4.ads (Unresolved_Operator): New procedure.
175 * sem_ch4.adb (Has_Possible_Literal_Aspects): Rename into...
176 (Has_Possible_User_Defined_Literal): ...this. Tidy up.
177 (Operator_Check): Accept again unresolved operators if they have a
178 possible user-defined literal as operand. Factor out the handling
179 of the general error message into...
180 (Unresolved_Operator): ...this new procedure.
181 * sem_res.adb (Resolve): Be prepared for unresolved operators on
182 entry in Ada 2022 or later. If they are still unresolved on exit,
183 call Unresolved_Operator to give the error message.
184 (Try_User_Defined_Literal): Tidy up.
185
186 2023-05-29 Steve Baird <baird@adacore.com>
187
188 * exp_ch3.adb
189 (Expand_N_Object_Declaration.Default_Initialize_Object): Add test for
190 specified Default_Component_Value aspect when deciding whether
191 either Initialize_Scalars or Normalize_Scalars impacts default
192 initialization of an array object.
193
194 2023-05-29 Javier Miranda <miranda@adacore.com>
195
196 * sem_aggr.adb
197 (Resolve_Record_Aggregate): For aggregates of derived tagged
198 record types with discriminants, when collecting components
199 from ancestors, pass to subprogram Gather_Components the
200 parent type. Required to report errors on wrong aggregate
201 components.
202
203 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
204
205 * sem_util.adb (Check_Result_And_Post_State): Replace low-level
206 navigation with a high-level Unique_Entity.
207
208 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
209
210 * sem_util.adb (Check_Result_And_Post_State): Properly handle entry
211 bodies.
212
213 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
214
215 * contracts.adb (Fix_Parent): Fir part both for lists and nodes.
216
217 2023-05-29 Arnaud Charlet <charlet@adacore.com>
218
219 * sem_ch7.adb: Refine handling of inlining for CCG
220
221 2023-05-29 Eric Botcazou <ebotcazou@adacore.com>
222
223 * sem_ch12.adb (Copy_Generic_Node): Test the original node kind
224 for the sake of consistency. For identifiers and other entity
225 names and operators, accept an expanded name as associated node.
226 Replace "or" with "or else" in condtion and fix its formatting.
227
228 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
229
230 * sem_util.adb (Check_Result_And_Post_State): Tune message.
231
232 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
233
234 * contracts.adb (Remove_Formals): Remove.
235 (Preanalyze_Condition): Replace Pop_Scope with End_Scope.
236 * sem_ch13.adb (Build_Discrete_Static_Predicate): Replace
237 Pop_Scope with End_Scope; enclose Install_Formals within
238 Push_Scope/End_Scope.
239
240 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
241
242 * sem_prag.adb (Analyze_Pre_Post_Condition): Tune error message.
243
244 2023-05-29 Javier Miranda <miranda@adacore.com>
245
246 * scans.ads (Inside_Interpolated_String_Expression): New variable.
247 * par-ch2.adb (P_Interpolated_String_Literal): Set/clear new
248 variable when parsing interpolated string expressions.
249 * scng.adb (Set_String): Skip processing operator symbols when we
250 arescanning an interpolated string literal.
251
252 2023-05-29 Johannes Kliemann <kliemann@adacore.com>
253
254 * Makefile.rtl (QNX): Use s-parame__qnx.adb for s-parame.adb.
255 * libgnat/s-parame__qnx.adb: Add QNX specific version of
256 System.Parameters.
257
258 2023-05-29 Yannick Moy <moy@adacore.com>
259
260 * libgnat/a-ngelfu.ads: Restore SPARK_Mode from context.
261
262 2023-05-29 Marc Poulhiès <poulhies@adacore.com>
263
264 * contracts.adb (Restore_Original_Selected_Component): Adjust assertion.
265
266 2023-05-29 Piotr Trojanek <trojanek@adacore.com>
267
268 * contracts.adb
269 (Add_Pre_Post_Condition): Adapt to handle pre/post of an
270 access-to-subprogram type.
271 (Analyze_Type_Contract): Analyze pre/post of an
272 access-to-subprogram.
273 * contracts.ads
274 (Analyze_Type_Contract): Adapt comment.
275 * sem_ch3.adb
276 (Build_Access_Subprogram_Wrapper): Copy pre/post aspects to
277 wrapper spec and keep it on the type.
278 * sem_prag.adb
279 (Analyze_Pre_Post_Condition): Expect pre/post aspects on
280 access-to-subprogram and complain if they appear without -gnat2022
281 switch.
282 (Analyze_Pre_Post_Condition_In_Decl_Part): Adapt to handle
283 pre/post on an access-to-subprogram type entity.
284 * sem_attr.adb (Analyze_Attribute_Old_Result): Likewise.
285 (Result): Likewise.
286
287 2023-05-26 Bob Duff <duff@adacore.com>
288
289 * sem_ch3.adb
290 (Build_Derived_Record_Type): Temporarily set the state of the
291 Derived_Type to "self-hidden" while processing constraints
292 and discriminants of a record extension.
293
294 2023-05-26 Bob Duff <duff@adacore.com>
295
296 * einfo.ads: Add comma.
297 * contracts.adb: Fix typos.
298 * exp_attr.adb: Likewise.
299 * exp_ch5.adb: Likewise.
300 * exp_ch6.adb: Likewise.
301 * lib-xref.adb: Likewise.
302
303 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
304
305 * debug.adb (d.N): Document new usage.
306 * exp_ch4.adb (Expand_N_Type_Conversion): Copy the Float_Truncate
307 flag when rewriting a floating-point to fixed-point conversion as
308 a floating-point to integer conversion.
309 * exp_fixd.adb: Add with and use clauses for Debug.
310 (Expand_Convert_Fixed_To_Fixed): Generate a truncation in all cases
311 except if the result is explicitly rounded.
312 (Expand_Convert_Integer_To_Fixed): Likewise.
313 (Expand_Convert_Float_To_Fixed): Generate a truncation for all kind
314 of fixed-point types, except if the result is explicitly rounded, or
315 -gnatd.N is specified and the type is an ordinary fixed-point type.
316 * sinfo.ads (Float_Truncate): Document usage for floating-point to
317 fixed-point conversions.
318
319 2023-05-26 Javier Miranda <miranda@adacore.com>
320
321 * exp_ch4.adb
322 (Expand_N_Allocator): If an allocator with constraints is called
323 in the return statement of a function returning a general access
324 type, then propagate to the itype the master of the general
325 access type (since it is the master associated with the
326 returned object).
327
328 2023-05-26 Yannick Moy <moy@adacore.com>
329
330 * sem_aggr.adb (Resolve_Record_Aggregate): Add dummy initialization and
331 assertion that clarifies when we reassigned to a useful value.
332
333 2023-05-26 Yannick Moy <moy@adacore.com>
334
335 * doc/gnat_rm/gnat_language_extensions.rst: Be more explicit on
336 pattern matching limitation.
337 * gnat_rm.texi: Regenerate.
338 * gnat_ugn.texi: Regenerate.
339
340 2023-05-26 Yannick Moy <moy@adacore.com>
341
342 * libgnat/a-calend.ads: Mark with SPARK_Mode=>Off the functions which may
343 raise Time_Error.
344 * libgnat/a-ngelfu.ads: Mark with SPARK_Mode=>Off the functions which may
345 lead to an overflow (which is not the case of Tan with one parameter for
346 example, or Arctanh or Arcoth, despite their mathematical range covering
347 the reals).
348 * libgnat/a-textio.ads: Remove Always_Return annotation from functions, as
349 this is now compulsory for functions to always return in SPARK.
350 * libgnat/i-cstrin.ads: Add Might_Not_Return annotation to Update procedure
351 which may not return.
352
353 2023-05-26 Bob Duff <duff@adacore.com>
354
355 * exp_put_image.adb (Build_Image_Call): Treat 'Img the same as
356 'Image.
357 * exp_imgv.adb (Expand_Image_Attribute): If Discard_Names, expand
358 to 'Image instead of 'Img.
359 * snames.ads-tmpl, par-ch4.adb, sem_attr.adb, sem_attr.ads:
360 Cleanups: Rename Attribute_Class_Array to be Attribute_Set. Remove
361 unnecessary qualifications. DRY: Don't repeat "True".
362
363 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
364
365 * sem_prag.adb (Record_Possible_Body_Reference): Remove call to Present.
366 * sem_util.adb (Find_Untagged_Type_Of): Likewise.
367
368 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
369
370 * exp_aggr.adb (Initialize_Array_Component): Remove obsolete code.
371 (Expand_Array_Aggregate): In the case where a temporary is created
372 and the parent is an assignment statement with No_Ctrl_Actions set,
373 set Is_Ignored_Transient on the temporary.
374
375 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
376
377 * sem_ch12.adb (Instantiate_Package_Body): Set the ghost mode to
378 that of the instance only after loading the generic's parent.
379 (Instantiate_Subprogram_Body): Likewise.
380
381 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
382
383 * exp_ch4.adb (Expand_Set_Membership): Simplify by using Evolve_Or_Else.
384
385 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
386
387 * exp_ch4.adb (Is_OK_Object_Reference): Replace loop with a call to
388 Unqual_Conv; consequently, change object from variable to constant;
389 replace an IF statement with an AND THEN expression.
390
391 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
392
393 * exp_ch9.adb
394 (Build_Entry_Count_Expression): Remove loop over component declaration;
395 consequently remove a parameter that is no longer used; adapt callers.
396 (Make_Task_Create_Call): Refine type of a local variable.
397
398 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
399
400 * sem_cat.adb (Check_Non_Static_Default_Expr): Detect components inside
401 loop, not in the loop condition itself.
402
403 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
404
405 * libgnat/a-cbdlli.ads (List): Move Nodes component to the end.
406
407 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
408
409 * libgnat/a-crdlli.ads (List): Move Nodes component to the end.
410
411 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
412
413 * sem_attr.adb (Is_Thin_Pointer_To_Unc_Array): New predicate.
414 (Resolve_Attribute): Apply the static matching legality rule to an
415 Unrestricted_Access attribute applied to an aliased prefix if the
416 type is a thin pointer. Call Is_Thin_Pointer_To_Unc_Array for the
417 aliasing legality rule as well.
418
419 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
420
421 * sem_util.adb (Is_Null_Record_Definition): Use First_Non_Pragma and
422 Next_Non_Pragma to ignore pragmas within component list.
423
424 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
425
426 * sem_prag.adb (Get_Argument): Improve detection of generic units.
427
428 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
429
430 * sem_ch4.adb (Check_Action_OK): Replace low-level test with a
431 high-level routine.
432 * sem_ch13.adb (Is_Predicate_Static): Likewise.
433
434 2023-05-26 Javier Miranda <miranda@adacore.com>
435
436 * exp_ch9.adb
437 (Expand_N_Conditional_Entry_Call): Factorize code to avoid
438 duplicating subtrees; required to avoid problems when the copied
439 code has implicit labels.
440 * sem_util.ads (New_Copy_Separate_List): Removed.
441 (New_Copy_Separate_Tree): Removed.
442 * sem_util.adb (New_Copy_Separate_List): Removed.
443 (New_Copy_Separate_Tree): Removed.
444
445 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
446
447 * sem_ch13.adb (Check_Component_List): Local variable Compl is now
448 a constant; a nested block is no longer needed.
449
450 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
451
452 * sem_aggr.adb
453 (Resolve_Record_Aggregate): Remove useless assignment.
454 * sem_aux.adb
455 (Has_Variant_Part): Remove useless guard; this routine is only called
456 on type entities (and now will crash in other cases).
457 * sem_ch3.adb
458 (Create_Constrained_Components): Only assign Assoc_List when necessary;
459 tune whitespace.
460 (Is_Variant_Record): Refactor repeated calls to Parent.
461 * sem_util.adb
462 (Gather_Components): Assert that discriminant association has just one
463 choice in component_association; refactor repeated calls to Next.
464 * sem_util.ads
465 (Gather_Components): Tune whitespace in comment.
466
467 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
468
469 * sem_ch3.adb (Check_CPP_Type_Has_No_Defaults): Iterate with
470 First_Non_Pragma and Next_Non_Pragma.
471 * exp_dist.adb (Append_Record_Traversal): Likewise.
472
473 2023-05-26 Javier Miranda <miranda@adacore.com>
474
475 * exp_ch9.adb (Build_Class_Wide_Master): Remember internal blocks
476 that have a task master entity declaration.
477 (Build_Master_Entity): Code cleanup.
478 * sem_util.ads (Is_Internal_Block): New subprogram.
479 * sem_util.adb (Is_Internal_Block): New subprogram.
480
481 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
482
483 * sem_util.adb (Gather_Components): Remove guard for empty list of
484 components.
485
486 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
487
488 * back_end.adb (Call_Back_End): Add gigi_standard_address to the
489 signature of the gigi procedure and alphabetize other parameters.
490 Pass Standard_Address as actual parameter for it.
491 * cstand.adb (Create_Standard): Do not set Is_Descendant_Of_Address
492 on Standard_Address.
493 * gcc-interface/gigi.h (gigi): Add a standard_address parameter and
494 alphabetize others.
495 * gcc-interface/trans.cc (gigi): Likewise. Record a builtin address
496 type and save it as the type for Standard.Address.
497
498 2023-05-26 Ghjuvan Lacambre <lacambre@adacore.com>
499
500 * exp_disp.adb (Expand_Dispatching_Call): Handle new Controlling_Tag.
501 * sem_scil.adb (Check_SCIL_Node): Treat N_Object_Renaming_Declaration as
502 N_Object_Declaration.
503
504 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
505
506 * exp_aggr.adb
507 (Build_Constrained_Type): Remove local constants that were shadowing
508 equivalent global constants; replace a wrapper that calls
509 Make_Integer_Literal with a numeric literal; remove explicit
510 Aliased_Present parameter which is equivalent to the default value.
511 (Check_Bounds): Remove unused initial value.
512 (Expand_Array_Aggregate): Use aggregate type from the context.
513
514 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
515
516 * einfo.ads (Delay_Cleanups): Document new usage.
517 * exp_ch7.ads (Build_Finalizer): New declaration.
518 * exp_ch7.adb (Build_Finalizer.Process_Declarations): Do not treat
519 library-level package instantiations specially.
520 (Build_Finalizer): Return early for package bodies and specs that
521 are not compilation units instead of using a more convoluted test.
522 (Expand_N_Package_Body): Do not build a finalizer if Delay_Cleanups
523 is set on the defining entity.
524 (Expand_N_Package_Declaration): Likewise.
525 * inline.ads (Pending_Body_Info): Reorder and add Fin_Scop.
526 (Add_Pending_Instantiation): Add Fin_Scop parameter.
527 * inline.adb (Add_Pending_Instantiation): Likewise and copy it into
528 the Pending_Body_Info appended to Pending_Instantiations.
529 (Add_Scope_To_Clean): Change parameter name to Scop and remove now
530 irrelevant processing.
531 (Cleanup_Scopes): Deal with scopes that are package specs or bodies.
532 (Instantiate_Body): For package instantiations, deal specially with
533 scopes that are package bodies and with scopes that are dynamic.
534 Pass the resulting scope to Add_Scope_To_Clean directly.
535 * sem_ch12.adb (Analyze_Package_Instantiation): In the case where a
536 body is needed, compute the enclosing finalization scope and pass it
537 in the call to Add_Pending_Instantiation.
538 (Inline_Instance_Body): Adjust aggregate passed in the calls to
539 Instantiate_Package_Body.
540 (Load_Parent_Of_Generic): Likewise.
541
542 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
543
544 * sem_util.adb (Compile_Time_Constraint_Error): Test the Ekind.
545
546 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
547
548 * exp_aggr.adb (Build_Constrained_Type): Use List_Length to count
549 expressions in consecutive subaggregates.
550
551 2023-05-26 Doug Rupp <rupp@adacore.com>
552
553 * libgnarl/s-osinte__qnx.ads (sigset_t): Modify
554 declaration to use system.os_constants computed
555 value. Align it.
556
557 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
558
559 * exp_sel.adb: Add clauses for Sem_Util, remove them for Opt, Sinfo
560 and Sinfo.Nodes.
561 (Build_K): Always use 'Tag of the object.
562 (Build_S_Assignment): Likewise.
563
564 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
565
566 * accessibility.adb
567 (Is_Formal_Of_Current_Function): This routine expects an entity
568 reference and not the entity itself, so its parameter is a Node_Id
569 and not an Entity_Id.
570
571 2023-05-26 Piotr Trojanek <trojanek@adacore.com>
572
573 * exp_aggr.adb
574 (Build_Array_Aggr_Code): Change variable to constant.
575 (Check_Same_Aggr_Bounds): Fix style; remove unused initial value.
576
577 2023-05-26 Ronan Desplanques <desplanques@adacore.com>
578
579 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Create extra formals
580 in more situations.
581
582 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
583
584 * checks.adb (Selected_Range_Checks): Add guards to protect calls
585 to Expr_Value on bounds.
586
587 2023-05-26 Eric Botcazou <ebotcazou@adacore.com>
588
589 * sem_eval.ads (Is_Null_Range): Remove requirements of compile-time
590 known bounds and add WARNING line.
591 (Not_Null_Range): Remove requirements of compile-time known bounds.
592 * sem_eval.adb (Is_Null_Range): Fall back to Compile_Time_Compare.
593 (Not_Null_Range): Likewise.
594 * fe.h (Is_Null_Range): New predicate.
595
596 2023-05-25 Javier Miranda <miranda@adacore.com>
597
598 * sem_aggr.adb
599 (Warn_On_Null_Component_Association): New subprogram.
600 (Empty_Range): Adding missing support for iterated component
601 association node.
602 (Resolve_Array_Aggregate): Report warning on iterated component
603 association that may initialize some component of an array of
604 null-excluding access type components with a null value.
605 * exp_ch4.adb
606 (Expand_N_Expression_With_Actions): Add missing type check since
607 the subtype of the EWA node and the subtype of the expression
608 may differ.
609
610 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
611
612 * sem_util.adb (Determining_Expressions): Fix style; fix layout and
613 ordering of pragma names; expect pragma Exceptional_Cases.
614
615 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
616
617 * einfo-utils.adb (Write_Entity_Info): Use procedural Next_Index.
618 * sem_aggr.adb (Collect_Aggr_Bounds): Reuse local constant.
619 (Resolve_Null_Array_Aggregate): Use procedural Next_Index.
620
621 2023-05-25 Javier Miranda <miranda@adacore.com>
622
623 * exp_aggr.adb (Build_Record_Aggr_Code): Protect access to
624 aggregate components when the aggregate is empty.
625
626 2023-05-25 Johannes Kliemann <kliemann@adacore.com>
627
628 * libgnat/system-vxworks7-ppc-kernel.ads: Enable
629 Support_Atomic_Primitives.
630 * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise.
631
632 2023-05-25 Eric Botcazou <ebotcazou@adacore.com>
633
634 * sem_ch3.adb (Find_Type_Of_Object): Copy the object definition when
635 building the subtype declaration in the case of a spec expression.
636
637 2023-05-25 Tom Tromey <tromey@adacore.com>
638
639 * Make-generated.in (ada/stamp-snames): Check result of
640 gnatmake.
641
642 2023-05-25 Eric Botcazou <ebotcazou@adacore.com>
643
644 * cstand.adb (Create_Standard): Set the Is_Descendant_Of_Address
645 flag on Standard_Address.
646 * freeze.adb (Freeze_Entity): Copy the modulus of System.Address
647 onto Standard_Address.
648
649 2023-05-25 Eric Botcazou <ebotcazou@adacore.com>
650
651 * libgnat/system-aix.ads (Address): Likewise.
652 * libgnat/system-darwin-arm.ads (Address): Likewise.
653 * libgnat/system-darwin-ppc.ads (Address): Likewise.
654 * libgnat/system-darwin-x86.ads (Address): Likewise.
655 * libgnat/system-djgpp.ads (Address): Likewise.
656 * libgnat/system-dragonfly-x86_64.ads (Address): Likewise.
657 * libgnat/system-freebsd.ads (Address): Likewise.
658 * libgnat/system-hpux-ia64.ads (Address): Likewise.
659 * libgnat/system-hpux.ads (Address): Likewise.
660 * libgnat/system-linux-alpha.ads (Address): Likewise.
661 * libgnat/system-linux-arm.ads (Address): Likewise.
662 * libgnat/system-linux-hppa.ads (Address): Likewise.
663 * libgnat/system-linux-ia64.ads (Address): Likewise.
664 * libgnat/system-linux-m68k.ads (Address): Likewise.
665 * libgnat/system-linux-mips.ads (Address): Likewise.
666 * libgnat/system-linux-ppc.ads (Address): Likewise.
667 * libgnat/system-linux-riscv.ads (Address): Likewise.
668 * libgnat/system-linux-s390.ads (Address): Likewise.
669 * libgnat/system-linux-sh4.ads (Address): Likewise.
670 * libgnat/system-linux-sparc.ads (Address): Likewise.
671 * libgnat/system-linux-x86.ads (Address): Likewise.
672 * libgnat/system-lynxos178-ppc.ads (Address): Likewise.
673 * libgnat/system-lynxos178-x86.ads (Address): Likewise.
674 * libgnat/system-mingw.ads (Address): Likewise.
675 * libgnat/system-qnx-arm.ads (Address): Likewise.
676 * libgnat/system-rtems.ads (Address): Likewise.
677 * libgnat/system-solaris-sparc.ads (Address): Likewise.
678 * libgnat/system-solaris-x86.ads (Address): Likewise.
679 * libgnat/system-vxworks-ppc-kernel.ads (Address): Likewise.
680 * libgnat/system-vxworks-ppc-rtp-smp.ads (Address): Likewise.
681 * libgnat/system-vxworks-ppc-rtp.ads (Address): Likewise.
682 * libgnat/system-vxworks7-aarch64-rtp-smp.ads (Address): Likewise.
683 * libgnat/system-vxworks7-aarch64.ads (Address): Likewise.
684 * libgnat/system-vxworks7-arm-rtp-smp.ads (Address): Likewise.
685 * libgnat/system-vxworks7-arm.ads (Address): Likewise.
686 * libgnat/system-vxworks7-ppc-kernel.ads (Address): Likewise.
687 * libgnat/system-vxworks7-ppc-rtp-smp.ads (Address): Likewise.
688 * libgnat/system-vxworks7-ppc64-kernel.ads (Address): Likewise.
689 * libgnat/system-vxworks7-ppc64-rtp-smp.ads (Address): Likewise.
690 * libgnat/system-vxworks7-x86-kernel.ads (Address): Likewise.
691 * libgnat/system-vxworks7-x86-rtp-smp.ads (Address): Likewise.
692 * libgnat/system-vxworks7-x86_64-kernel.ads (Address): Likewise.
693 * libgnat/system-vxworks7-x86_64-rtp-smp.ads (Address): Likewise.
694
695 2023-05-25 Marc Poulhiès <poulhies@adacore.com>
696
697 * sem_ch13.adb (Check_Aspect_At_Freeze_Point): fix format string,
698 use existing local Ident.
699
700 2023-05-25 Bob Duff <duff@adacore.com>
701
702 * atree.adb (Check_Vanishing_Fields): Fix bug in the "blah type
703 only" cases. Remove the special cases for E_Void. Misc cleanup.
704 (Mutate_Nkind): Disallow mutating to the same kind.
705 (Mutate_Ekind): Disallow mutating to E_Void.
706 (From E_Void is still OK -- entities start out as E_Void by
707 default.) Fix bug in statistics gathering -- was setting the wrong
708 count. Enable Check_Vanishing_Fields for entities.
709 * sem_ch8.adb (Is_Self_Hidden): New function.
710 (Find_Direct_Name): Call Is_Self_Hidden to use the new
711 Is_Not_Self_Hidden flag to determine whether a declaration is
712 hidden from all visibility by itself. This replaces the old method
713 of checking E_Void.
714 (Find_Expanded_Name): Likewise.
715 (Find_Selected_Component): Likewise.
716 * sem_util.adb (Enter_Name): Remove setting of Ekind to E_Void.
717 * sem_ch3.adb: Set the Is_Not_Self_Hidden flag in appropriate
718 places. Comment fixes.
719 (Inherit_Component): Remove setting of Ekind to E_Void.
720 * sem_ch9.adb
721 (Analyze_Protected_Type_Declaration): Update comment. Skip Itypes,
722 which should not be turned into components.
723 * atree.ads (Mutate_Nkind): Document error case.
724 (Mutate_Ekind): Remove comments apologizing for E_Void mutations.
725 Document error cases.
726
727 2023-05-25 Eric Botcazou <ebotcazou@adacore.com>
728
729 * libgnat/a-ststio.adb (Set_Mode): Test System.Memory_Size.
730 * libgnat/g-debuti.ads (Address_64): Likewise.
731 * libgnat/i-c.ads: Add with clause for System.
732 (ptrdiff_t): Define based on the size of memory space.
733 (size_t): Likewise.
734 * libgnat/s-crtl.ads (size_t): Likewise.
735 (ssize_t): Likewise.
736 * libgnat/s-memory.ads (size_t): Likewise.
737 * libgnat/s-parame.ads (Size_Type): Likewise.
738 * libgnat/s-parame__hpux.ads (Size_Type): Likewise.
739 * libgnat/s-parame__posix2008.ads (Size_Type): Likewise.
740 * libgnat/s-parame__vxworks.ads (Size_Type): Likewise.
741 * libgnat/s-putima.adb (Signed_Address): Likewise.
742 (Unsigned_Address): Likewise.
743 * libgnat/s-stoele.ads (Storage_Offset): Likewise.
744
745 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
746
747 * sem_util.adb (Visit_Node): Decrement EWA_Level with the same condition
748 as when it was incremented.
749
750 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
751
752 * sem_util.ads (New_Copy_Tree): Remove Scopes_In_EWA_OK from spec;
753 adapt comment.
754 * sem_util.adb (New_Copy_Tree): Remove Scopes_In_EWA_OK from body;
755 adapt code.
756
757 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
758
759 * sem_util.adb (Update_New_Entities): Remove redundant check for entity
760 map being present.
761
762 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
763
764 * atree.adb (Copy_List): Call Copy_Separate_Tree for both entities and
765 other nodes.
766
767 2023-05-25 Steve Baird <baird@adacore.com>
768
769 * exp_attr.adb
770 (Cached_Streaming_Ops): A new package, providing maps to save
771 previously-generated Read/Write/Input/Output procedures.
772 (Expand_N_Attribute_Reference): When a new subprogram is generated
773 for a Read/Write/Input/Output attribute reference, record that
774 type/subp pair in the appropriate Cached_Streaming_Ops map.
775 (Find_Stream_Subprogram): Check the appropriate
776 Cached_Streaming_Ops map to see if an appropriate subprogram has
777 already been generated. If so, then return it. The appropriateness
778 test includes a call to a new nested subprogram,
779 In_Available_Context.
780 * exp_strm.ads, exp_strm.adb: Do not pass in a Loc parameter (or a
781 source-location-bearing Nod parameter) to the 16 procedures
782 provided for building streaming-related subprograms. Use the
783 source location of the type instead.
784 * exp_dist.adb, exp_ch3.adb: Adapt to Exp_Strm spec changes. For
785 these calls the source location of the type was already being
786 used.
787
788 2023-05-25 Marc Poulhiès <poulhies@adacore.com>
789
790 * sem_ch6.adb (Analyze_Function_Return): Add missing
791 Is_Access_Type check before accessing the Designated_Type field.
792
793 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
794
795 * sem_ch6.adb (Analyze_Return_Type): Remove unused initial value.
796
797 2023-05-25 Marc Poulhiès <poulhies@adacore.com>
798
799 * sem_ch13.adb (Analyze_One_Aspect): Call Record_Rep_Item.
800 (Check_Aspect_At_Freeze_Point): Check the aspect is specified on
801 non-array type only...
802 (Analyze_One_Aspect): ... instead of doing it too early here.
803 * sem_aggr.adb (Resolve_Container_Aggregate): Do nothing in case
804 the parameters failed to resolve.
805
806 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
807
808 * sem_util.adb (Check_Internal_Protected_Use): Add standard protection
809 against search going too far.
810
811 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
812
813 * contracts.adb
814 (Add_Pre_Post_Condition): Mention new aspects in the comment.
815 * contracts.ads
816 (Add_Contract_Item): Likewise.
817 (Analyze_Subprogram_Body_Stub_Contract): Likewise.
818 * sem_prag.adb
819 (Contract_Freeze_Error): Likewise.
820 (Ensure_Aggregate_Form): Likewise.
821 * sem_prag.ads
822 (Find_Related_Declaration_Or_Body): Likewise.
823 * sinfo.ads
824 (Is_Generic_Contract_Pragma): Likewise.
825
826 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
827
828 * aspects.ads
829 (Implementation_Defined_Aspect): Recently added aspects are
830 implementation-defined, just like Contract_Cases.
831 * sem_prag.ads
832 (Aspect_Specifying_Pragma): Recently added aspects have corresponding
833 pragmas, just like Contract_Cases.
834 (Pragma_Significant_To_Subprograms): Recently added aspects are
835 significant to subprograms, just like Contract_Cases.
836
837 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
838
839 * sem_res.adb (Resolve_Entity_Name): Tune handling of formal parameters
840 in contract Exceptional_Cases.
841
842 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
843
844 * par-ch7.adb (P_Package): Remove redundant guard from call to
845 Move_Aspects.
846 * par-ch9.adb (P_Task): Likewise.
847 * sem_ch6.adb (Analyze_Expression_Function, Is_Inline_Pragma): Likewise.
848
849 2023-05-25 Eric Botcazou <ebotcazou@adacore.com>
850
851 * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Use Get_Actual_Subtype
852 to retrieve the actual subtype for all actuals and do it in only one
853 place for all unconstrained composite formal types.
854
855 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
856
857 * sem_prag.adb (Analyze_Pragma): Fix references to Exceptional_Cases in
858 code copied from handling of Subprogram_Variant.
859
860 2023-05-25 Ronan Desplanques <desplanques@adacore.com>
861
862 * sem_ch3.adb (Replace_Type): Add more documentation.
863
864 2023-05-25 Ronan Desplanques <desplanques@adacore.com>
865
866 * sem_ch3.adb (Replace_Type): Use existing constant wherever
867 possible.
868
869 2023-05-25 Ronan Desplanques <desplanques@adacore.com>
870
871 * sem_ch3.adb (Replace_Type): Reduce span of variable.
872
873 2023-05-25 Bob Duff <duff@adacore.com>
874
875 * sem_ch9.adb (Analyze_Protected_Type_Declaration): Set the flag
876 for protected types.
877 (Analyze_Single_Protected_Declaration): Likewise, for singleton
878 protected objects.
879 (Analyze_Task_Type_Declaration): Set the flag for task types.
880 (Analyze_Single_Task_Declaration): Likewise, for singleton task
881 objects.
882 * sem_ch10.adb (Decorate_Type): Set the flag for types treated as
883 incomplete.
884 (Build_Shadow_Entity): Set the flag for shadow entities.
885 (Decorate_State): Set the flag for an abstract state.
886 (Build_Limited_Views): Set the flag for limited view of package.
887 * sem_attr.adb (Check_Not_Incomplete_Type): Disable the check when
888 this is a current instance.
889
890 2023-05-25 Ronan Desplanques <desplanques@adacore.com>
891
892 * freeze.adb (Build_DTW_Body): Add appropriate type conversions for
893 controlling access parameters.
894 * sem_util.adb (Build_Overriding_Spec): Fix designated types in
895 controlling access parameters.
896
897 2023-05-25 Bob Duff <duff@adacore.com>
898
899 * gen_il-gen-gen_entities.adb (E_Label): Add
900 Entry_Cancel_Parameter. This is necessary because
901 Analyze_Implicit_Label_Declaration set the Ekind to E_Label.
902 Without this change, this field would fail the vanishing-fields
903 check in Atree (which is currently commented out).
904 * einfo.ads (Entry_Cancel_Parameter): Document for E_Label.
905 * sem_eval.adb (Why_Not_Static): Protect against previous errors
906 (no need to explain why something is not static if it's already
907 illegal for other reasons).
908 * sem_util.ads (Enter_Name): Fix misleading comment.
909
910 2023-05-25 Eric Botcazou <ebotcazou@adacore.com>
911
912 * einfo.ads (Scope_Depth): Fix circular definition.
913 (Scope_Depth_Value): Fix value for library units.
914
915 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
916
917 * sem_ch11.adb (Analyze_Raise_Expression): Tune warning condition.
918 * libgnat/g-dirope.ads (Open): Remove a potentially inaccurate comment.
919 * libgnat/g-dirope.adb (Open): Remove a potentially useless assignment;
920 the Dir output parameter should be assigned a null value anyway by the
921 preceding call to Free.
922
923 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
924
925 * sem_res.adb (Resolve_Entity_Name): Allow aliased parameters; tune
926 error message.
927
928 2023-05-25 Marc Poulhiès <poulhies@adacore.com>
929
930 * sem_ch13.adb (Analyze_One_Aspect): Mark Aggregate aspect as
931 needing delayed resolution and reject the aspect on non-array
932 type.
933
934 2023-05-25 Bob Duff <duff@adacore.com>
935
936 * sinfo-utils.adb: Update comment to refer to
937 New_Node_Debugging_Output.
938
939 2023-05-25 Marc Poulhiès <poulhies@adacore.com>
940
941 * rtsfind.adb (Load_RTU.Restore_SPARK_Context): New.
942 (Load_RTU): Use Restore_SPARK_Context on all exit paths.
943 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Initialize local
944 variable to Empty.
945
946 2023-05-25 Piotr Trojanek <trojanek@adacore.com>
947
948 * sem_attr.adb
949 (Analyze_Attribute_Old_Result): Allow uses of 'Old and 'Result within
950 the new aspect.
951 * sem_res.adb
952 (Within_Exceptional_Cases_Consequence): New utility routine.
953 (Resolve_Entity_Name): Restrict use of formal parameters within the
954 new aspect.
955
956 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
957
958 * aspects.ads
959 (Aspect_Id): Add aspect identifier.
960 (Aspect_Argument): New aspect accepts an expression.
961 (Is_Representation_Aspect): New aspect is not a representation
962 aspect.
963 (Aspect_Names): Associate name with the new aspect identifier.
964 (Aspect_Delay): New aspect is never delayed.
965 * contracts.adb
966 (Add_Contract_Item): Store new aspect among contract items.
967 (Analyze_Entry_Or_Subprogram_Contract): Likewise.
968 (Analyze_Subprogram_Body_Stub_Contract): Likewise.
969 (Process_Contract_Cases): Expand new aspect, if present.
970 * contracts.ads
971 (Analyze_Entry_Or_Subprogram_Body_Contract): Mention new aspect in
972 spec.
973 (Analyze_Entry_Or_Subprogram_Contract): Likewise.
974 * einfo-utils.adb
975 (Get_Pragma): Allow new aspect to be picked by the backend.
976 * einfo-utils.ads
977 (Get_Pragma): Mention new aspect in spec.
978 * exp_prag.adb
979 (Expand_Pragma_Exceptional_Cases): Dummy expansion routine.
980 * exp_prag.ads
981 (Expand_Pragma_Exceptional_Cases): Add spec for expansion routine.
982 * inline.adb
983 (Remove_Aspects_And_Pragmas): Remove aspect from bodies to inline.
984 * par-prag.adb
985 (Par.Prag): Accept pragma in the parser, so it will be checked
986 later.
987 * sem_ch12.adb
988 (Implementation of Generic Contracts): Mention new aspect in
989 comment.
990 * sem_ch13.adb
991 (Analyze_Aspect_Specifications): Transform new aspect info a
992 corresponding pragma.
993 * sem_prag.adb
994 (Analyze_Exceptional_Cases_In_Decl_Part): Analyze aspect
995 expression; heavily inspired by the existing code for analysis of
996 Subprogram_Variant and exception handlers.
997 (Analyze_Pragma): Analyze pragma corresponding to the new aspect.
998 (Is_Non_Significant_Pragma_Reference): Add new pragma to the
999 table.
1000 * sem_prag.ads
1001 (Assertion_Expression_Pragma): New pragma acts as an assertion
1002 expression, even though it is not currently expanded.
1003 (Analyze_Exceptional_Cases_In_Decl_Part): Add spec.
1004 * sem_util.adb
1005 (Is_Subprogram_Contract_Annotation): Mark new annotation is a
1006 subprogram contract, so the subprogram with it won't be inlined.
1007 * sem_util.ads
1008 (Is_Subprogram_Contract_Annotation): Mention new aspect in
1009 comment.
1010 * sinfo.ads
1011 (Contract_Test_Cases): Mention new aspect in comment.
1012 * snames.ads-tmpl: Add entries for the new name and pragma.
1013
1014 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1015
1016 * sem_ch13.adb (Build_Predicate_Functions): If the current scope
1017 is not that of the type, push this scope and pop it at the end.
1018 * sem_util.ads (Current_Scope_No_Loops_No_Blocks): Delete.
1019 * sem_util.adb (Current_Scope_No_Loops_No_Blocks): Likewise.
1020 (Set_Public_Status): Call again Current_Scope.
1021
1022 2023-05-23 Gary Dismukes <dismukes@adacore.com>
1023
1024 * exp_ch6.adb (Might_Have_Tasks): Remove unneeded Etype call from
1025 call to Is_Limited_Record, since that flag is now properly
1026 inherited by class-wide types.
1027 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Remove call
1028 to Make_Class_Wide_Type, which is done too early, and will later
1029 be done in Build_Derived_Record_Type after flags such as
1030 Is_Limited_Record and Is_Controlled_Active have been set on the
1031 derived type.
1032
1033 2023-05-23 Patrick Bernardi <bernardi@adacore.com>
1034
1035 * libgnat/s-stchop.adb (Stack_Check): Remove redundant parentheses.
1036
1037 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1038
1039 * freeze.adb (Freeze_Record_Type): Add tag for redundant pragma Pack.
1040 * sem_aggr.adb (Resolve_Record_Aggregate): Add tag for redundant OTHERS
1041 choice.
1042 * sem_ch8.adb (Use_One_Type): Add tag for redundant USE clauses.
1043
1044 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1045
1046 * sem_ch11.adb
1047 (Check_Duplication): Fix inconsistent iteration.
1048 (Others_Present): Iterate over handlers using First_Non_Pragma and
1049 Next_Non_Pragma just like in Check_Duplication.
1050
1051 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1052
1053 * einfo.ads (Delay_Subprogram_Descriptors): Delete.
1054 * gen_il-fields.ads (Opt_Field_Enum): Remove
1055 Delay_Subprogram_Descriptors.
1056 * gen_il-gen-gen_entities.adb (Gen_Entities): Likewise.
1057 * gen_il-gen-gen_nodes.adb (N_Entry_Body): Add Corresponding_Spec.
1058 * sinfo.ads (Corresponding_Spec): Document new use.
1059 (N_Entry_Body): Likewise.
1060 * exp_ch6.adb (Expand_Protected_Object_Reference): Be prepared for
1061 protected subprograms that have been expanded.
1062 * exp_ch7.adb (Expand_Cleanup_Actions): Remove unreachable code.
1063 * exp_ch9.adb (Build_Protected_Entry): Add a local variable for the
1064 new block and propagate Uses_Sec_Stack from the corresponding spec.
1065 (Expand_N_Protected_Body) <N_Subprogram_Body>: Unconditionally reset
1066 the scopes of top-level entities in the new body.
1067 * inline.adb (Cleanup_Scopes): Do not adjust the scope on the fly.
1068 * sem_ch9.adb (Analyze_Entry_Body): Set Corresponding_Spec.
1069 * sem_ch12.adb (Analyze_Package_Instantiation): Remove obsolete code
1070 setting Delay_Subprogram_Descriptors and tidy up.
1071 * sem_util.adb (Scope_Within): Deal with protected subprograms that
1072 have been expanded.
1073 (Scope_Within_Or_Same): Likewise.
1074
1075 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1076
1077 * libgnarl/s-taskin.ads (Atomic_Address): Delete.
1078 (Attribute_Array): Add pragma Atomic_Components.
1079 (Ada_Task_Control_Block): Adjust default value of Attributes.
1080 * libgnarl/s-tasini.adb (Finalize_Attributes): Adjust type of local
1081 variable.
1082 * libgnarl/s-tataat.ads (Deallocator): Adjust type of parameter.
1083 (To_Attribute): Adjust source type.
1084 * libgnarl/a-tasatt.adb: Add clauses for System.Storage_Elements.
1085 (New_Attribute): Adjust return type.
1086 (Deallocate): Adjust type of parameter.
1087 (To_Real_Attribute): Adjust source type.
1088 (To_Address): Add target type.
1089 (To_Attribute): Adjust source type.
1090 (Fast_Path): Adjust tested type.
1091 (Finalize): Compare with Null_Address.
1092 (Reference): Likewise.
1093 (Reinitialize): Likewise.
1094 (Set_Value): Likewise. Add conversion to Integer_Address.
1095 (Value): Likewise.
1096
1097 2023-05-23 Raphael Amiard <amiard@adacore.com>
1098
1099 * scng.adb (Scan): Replace occurrences of All_Extensions_Allowed
1100 by Core_Extensions_Allowed.
1101
1102 2023-05-23 Claire Dross <dross@adacore.com>
1103
1104 * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Use new helpers.
1105 * libgnat/s-vauspe.ads (Raw_Unsigned_Starts_As_Based_Ghost,
1106 Raw_Unsigned_Is_Based_Ghost): New ghost helper functions.
1107 (Is_Raw_Unsigned_Format_Ghost, Scan_Split_No_Overflow_Ghost,
1108 Scan_Split_Value_Ghost, Raw_Unsigned_Last_Ghost): Use new
1109 helpers.
1110
1111 2023-05-23 Arnaud Charlet <charlet@adacore.com>
1112
1113 * par-ch5.adb, style.ads, styleg.adb, styleg.ads
1114 (Check_Xtra_Parens): Remove extra parameter Enable.
1115 (Check_Xtra_Parens_Precedence): New.
1116 (P_Case_Statement): Add -gnatyx style check.
1117 * sem_ch4.adb: Replace calls to Check_Xtra_Parens by
1118 Check_Xtra_Parens_Precedence.
1119 * stylesw.ads, stylesw.adb, usage.adb: Add support for
1120 -gnatyz.
1121 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
1122 Update -gnatyxzg doc.
1123 * sem_prag.adb, libgnat/s-regpat.adb,
1124 libgnarl/s-interr__hwint.adb, libgnarl/s-interr__vxworks.adb:
1125 Remove extra parens.
1126 * par-ch3.adb (P_Discrete_Range): Do not emit a style check if
1127 the expression is not a simple expression.
1128 * gnat_ugn.texi: Regenerate.
1129
1130 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1131
1132 * libgnat/s-dwalin.adb (Enable_Cache): Use the subtract operator of
1133 System.Storage_Elements to compute the offset.
1134 (Symbolic_Address): Likewise.
1135
1136 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1137
1138 * sem_res.adb (Resolve_Intrinsic_Operator): Always perform the same
1139 resolution for the special mod operator of System.Storage_Elements.
1140
1141 2023-05-23 Raphael Amiard <amiard@adacore.com>
1142
1143 * doc/gnat_rm.rst, doc/gnat_rm/gnat_language_extensions.rst,
1144 doc/gnat_rm/implementation_defined_pragmas.rst:
1145 * gnat_rm.texi: Regenerate.
1146
1147 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1148
1149 * exp_ch4.adb (Expand_N_Op_Mod): Adjust the detection of the special
1150 operator of System.Storage_Elements. Do not rewrite it into a rem.
1151 * sem_res.adb (Resolve_Intrinsic_Operator): Use the base type of the
1152 left operand for the special mod operator of System.Storage_Elements
1153
1154 2023-05-23 Vadim Godunko <godunko@adacore.com>
1155
1156 * libgnat/a-coinho__shared.adb (Constant_Reference): Remove call
1157 of Detach
1158 (Query_Element): Likewise.
1159
1160 2023-05-23 Ronan Desplanques <desplanques@adacore.com>
1161
1162 * sem_disp.adb: Fix reference to Ada issue in comment.
1163
1164 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1165
1166 * exp_disp.adb (Expand_Dispatching_Call): In the abstract interface
1167 class-wide case, use 'Tag of the object as the controlling tag.
1168 (Expand_Interface_Thunk): Perform address arithmetic using operators
1169 of System.Storage_Elements.
1170
1171 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1172
1173 * libgnat/i-cpoint.adb: Add clauses for System.Storage_Elements.
1174 (Addr): Delete.
1175 (Offset): New subtype of Storage_Offset.
1176 (To_Offset): New instance of Unchecked_Conversion.
1177 (To_Pointer): Adjust.
1178 (To_Addr): Likewise.
1179 (To_Ptrdiff): Likewise.
1180 ("+"): Call To_Offset on the offset.
1181 ("-"): Likewise.
1182 * libgnat/s-bituti.adb: Add clauses for System.Storage_Elements.
1183 (Val_Bytes): Change type to Storage_Count.
1184 (Get_Val_2): Add qualification to second operand of mod operator.
1185 (Set_Val_2): Likewise.
1186 (Copy_Bitfield): Likewise. Change type of Src_Adjust & Dest_Adjust.
1187 * libgnat/s-stratt.ads (Thin_Pointer): Change to subtype of Address.
1188 * libgnat/s-statxd.adb (I_AD): Adjust.
1189 (I_AS): Likewise.
1190 (W_AS): Likewise.
1191
1192 2023-05-23 Steve Baird <baird@adacore.com>
1193
1194 * sem_util.adb
1195 (Is_Variable): Correctly return False for a selected component
1196 name of the form Some_Object.Some_Discriminant, even if
1197 Some_Object is a variable. We don't want to allow such a name as
1198 an actual parameter in a call if the corresponding formal
1199 parameter's mode is not "in".
1200
1201 2023-05-23 Yannick Moy <moy@adacore.com>
1202
1203 * sem_util.adb (Check_Node): Add default init on local Id.
1204
1205 2023-05-23 Yannick Moy <moy@adacore.com>
1206
1207 * libgnat/i-c.adb (To_Ada): Add loop invariant.
1208
1209 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1210
1211 * exp_ch4.adb (Expand_N_Op_Mod): Deal with the special mod
1212 operator of System.Storage_Elements.
1213 * exp_intr.adb (Expand_To_Integer): New procedure.
1214 (Expand_Intrinsic_Call): Call Expand_To_Integer appropriately.
1215 (Expand_To_Address): Deal with an argument with modular type.
1216 * sem_ch3.adb (Derive_Subprogram): Also set convention Intrinsic
1217 on a derived intrinsic subprogram.
1218 * sem_res.adb (Resolve_Arithmetic_Op): Deal with intrinsic
1219 operators not coming from source exactly as those coming from
1220 source and also generate a reference in both cases.
1221 (Resolve_Op_Expon): Likewise.
1222 (Resolve_Intrinsic_Operator): Call Implementation_Base_Type to get
1223 a nonprivate base type.
1224 * snames.ads-tmpl (Name_To_Integer): New intrinsic name.
1225 * libgnat/s-stoele.ads: Replace pragma Convention with pragma
1226 Import throughout and remove pragma Inline_Always and
1227 Pure_Function.
1228 * libgnat/s-stoele.adb: Replace entire contents with pragma
1229 No_Body.
1230 * libgnat/s-atacco.adb: Adjust comment about pragma No_Body.
1231
1232 2023-05-23 Javier Miranda <miranda@adacore.com>
1233
1234 * sem_prag.adb (Analyze_Pre_Post_Condition_In_Decl_Part): Remove
1235 call to preanalyze class-wide conditions since here it is too
1236 early; they must be preanalyzed when full views of private types
1237 have been analyzed.
1238 * sem_ch7.adb (Analyze_Package_Specification): Preanalyze
1239 class-wide conditions of dispatching primitives defined in nested
1240 packages.
1241
1242 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1243
1244 * errout.adb (Last_Sloc): Refactor a heavily repeated "S := S + 1"
1245 statement into a subprogram; replace assertions with defensive code;
1246 fix few more off-by-one errors.
1247
1248 2023-05-23 Ronan Desplanques <desplanques@adacore.com>
1249
1250 * einfo.ads: Mention full name of LSP.
1251
1252 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1253
1254 * errout.adb (Last_Sloc): Rewrite skipping past numeric literals.
1255
1256 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1257
1258 * sem_ch13.adb (Build_Predicate_Function_Declaration): Adjust the
1259 commentary to the current implementation.
1260 * sem_util.ads (Current_Scope_No_Loops): Move around.
1261 (Current_Scope_No_Loops_No_Blocks): New declaration.
1262 (Add_Block_Identifier): Fix formatting.
1263 * sem_util.adb (Add_Block_Identifier): Likewise.
1264 (Current_Scope_No_Loops_No_Blocks): New function.
1265 (Set_Public_Status): Call Current_Scope_No_Loops_No_Blocks instead
1266 of Current_Scope to get the current scope.
1267
1268 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1269
1270 * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Do not
1271 manually generate a predicate check. Call Unqualify before doing
1272 pattern matching on the expression.
1273 * sem_ch3.adb (Analyze_Object_Declaration): Also freeze the actual
1274 subtype when it is built in the definite case.
1275
1276 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1277
1278 * libgnarl/s-interr.adb
1279 (Registered_Handler): Remove default expression.
1280 (Registered_Handlers): Switch to singly-linked list.
1281 (Bind_Interrupt_To_Entry): Sync whitespace with other unit variants.
1282 (Is_Registered): Use singly-linked list.
1283 (Register_Interrupt_Handler): Use singly-linked list and initialized
1284 allocator; sync assertion with other unit variants.
1285 * libgnarl/s-interr__sigaction.adb: Likewise.
1286 * libgnarl/s-interr__vxworks.adb: Likewise.
1287 * libgnarl/s-interr__hwint.adb: Likewise.
1288 (Is_Registered): Remove repeated declaration.
1289
1290 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1291
1292 * pprint.adb (Expression_Image): Restore some of the old pretty-printing
1293 for CodePeer.
1294
1295 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1296
1297 * errout.adb (First_And_Last_Nodes): Ignore accessibility parameters.
1298
1299 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1300
1301 * exp_ch4.adb (Expand_N_Op_Ne): Simply don't add extra parens.
1302
1303 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1304
1305 * pprint.adb (Expression_Image): Move Count_Parentheses and
1306 Fix_Parentheses routines from GNATprove and apply them before
1307 returning the slice of a source code buffer.
1308
1309 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1310
1311 * errout.adb
1312 (Paren_Required): New subsidiary routine for better handling of
1313 parentheses in First_Node/Last_Node.
1314 (First_Sloc, Last_Sloc): Use Get_Source_File_Index to correctly
1315 handle generic instances and inlined subprograms; tune handling of
1316 parentheses; improve handling of literals.
1317 * pprint.adb (Expression_Image): Simplify using
1318 First_Sloc/Last_Sloc.
1319 * sem_ch6.adb (Analyze_Expression_Function): Remove parenthesis
1320 when relocating expression from expression function to simple
1321 return statement.
1322
1323 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1324
1325 * exp_prag.adb (Expand_Pragma_Check): Suppress warning for checks of
1326 subprogram variants.
1327
1328 2023-05-23 Eric Botcazou <ebotcazou@adacore.com>
1329
1330 * frontend.adb (Frontend): Merge two conditional blocks and adjust.
1331
1332 2023-05-23 Piotr Trojanek <trojanek@adacore.com>
1333
1334 * libgnat/s-mmap.adb (Mapped_Region_Record): Fix typo in comment.
1335
1336 2023-05-23 Ronan Desplanques <desplanques@adacore.com>
1337
1338 * sem_ch7.adb: Remove duplicate comment.
1339
1340 2023-05-23 Javier Miranda <miranda@adacore.com>
1341
1342 * sem_ch10.adb
1343 (Analyze_Required_Limited_With_Units): New subprogram.
1344 (Depends_On_Limited_Views): New subprogram.
1345 (Has_Limited_With_Clauses): New subprogram.
1346 (Analyze_Compilation_Unit): Call the new subprogram that performs
1347 the full analysis of required limited-with units.
1348
1349 2023-05-22 Ronan Desplanques <desplanques@adacore.com>
1350
1351 * cstand.adb: Use more idiomatic procedure.
1352
1353 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1354
1355 * errout.adb (First_Loc): Avoid repeated calls.
1356 (Last_Loc): Likewise.
1357
1358 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1359
1360 * inline.adb (Cleanup_Scopes): Do not propagate the Uses_Sec_Stack
1361 flag from original to rewritten protected subprograms here...
1362 * exp_ch9.adb (Expand_N_Protected_Body) <N_Subprogram_Body>:
1363 ...but here instead. Add local variables and remove a useless
1364 test.
1365
1366 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1367
1368 * exp_ch7.adb (Expand_N_Package_Body): Call Defining_Entity to get
1369 the entity of the body.
1370
1371 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1372
1373 * exp_attr.adb (Expand_Loop_Entry_Attribute): Use location of the
1374 attribute reference, not of the loop statement.
1375
1376 2023-05-22 Ronan Desplanques <desplanques@adacore.com>
1377
1378 * par-ch3.adb: Add missing word in comment.
1379
1380 2023-05-22 Justin Squirek <squirek@adacore.com>
1381
1382 * checks.adb (Install_Null_Excluding_Check): Avoid non-null
1383 optimizations when assertions are enabled.
1384
1385 2023-05-22 Marc Poulhiès <poulhies@adacore.com>
1386
1387 * exp_aggr.adb (Process_Transient_Component): Reset Analyzed flag
1388 for the copy of the initialization expression.
1389 * sem_attr.adb (Validate_Non_Static_Attribute_Function_Call): Skip
1390 error emission during Pre_Analyze.
1391
1392 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1393
1394 * exp_ch7.adb (Process_Package_Body): New procedure taken from...
1395 (Build_Finalizer.Process_Declarations): ...here. Call the above
1396 procedure to deal with both package bodies and package body stubs.
1397
1398 2023-05-22 Ronan Desplanques <desplanques@adacore.com>
1399
1400 * atree.ads: Remove outdated part of comment.
1401
1402 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1403
1404 * exp_ch7.adb (Build_Finalizer): Reverse the test comparing the
1405 instantiation and declaration nodes of a package instance, and
1406 therefore bail out only when they are equal. Adjust comments.
1407 (Expand_N_Package_Declaration): Do not clear the Finalizer field.
1408 * lib-writ.adb: Add with and use clauses for Sem_Util.
1409 (Write_Unit_Information): Look at unit nodes to find finalizers.
1410 * sem_ch12.adb (Analyze_Package_Instantiation): Beef up the comment
1411 about the rewriting of the instantiation node into a declaration.
1412
1413 2023-05-22 Bob Duff <duff@adacore.com>
1414
1415 * cstand.adb (Is_Past_Self_Hiding_Point): Rename to be
1416 Is_Not_Self_Hidden.
1417 * einfo.ads: Likewise.
1418 * exp_aggr.adb: Likewise.
1419 * gen_il-fields.ads: Likewise.
1420 * gen_il-gen-gen_entities.adb: Likewise.
1421 * sem.adb: Likewise.
1422 * sem_aggr.adb: Likewise.
1423 * sem_ch11.adb: Likewise.
1424 * sem_ch12.adb: Likewise.
1425 * sem_ch5.adb: Likewise.
1426 * sem_ch6.adb: Likewise.
1427 * sem_ch7.adb: Likewise.
1428 * sem_prag.adb: Likewise.
1429
1430 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1431
1432 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Create the body
1433 as the expanded body of an expression function.
1434
1435 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1436
1437 * pprint.adb (Expression_Image): Handle several previously unsupported
1438 constructs.
1439
1440 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1441
1442 * sem_res.adb (Resolve_Entity_Name): Combine two IF statements that
1443 execute code only for references that come from source.
1444
1445 2023-05-22 Bob Duff <duff@adacore.com>
1446
1447 * einfo.ads (Is_Past_Self_Hiding_Point): Document.
1448 * gen_il-fields.ads (Is_Past_Self_Hiding_Point): Add to list of
1449 fields.
1450 * gen_il-gen-gen_entities.adb (Is_Past_Self_Hiding_Point): Declare
1451 in all entities.
1452 * exp_aggr.adb: Set Is_Past_Self_Hiding_Point as appropriate.
1453 * sem.adb: Likewise.
1454 * sem_aggr.adb: Likewise.
1455 * sem_ch11.adb: Likewise.
1456 * sem_ch12.adb: Likewise.
1457 * sem_ch5.adb: Likewise.
1458 * sem_ch7.adb: Likewise.
1459 * sem_prag.adb: Likewise.
1460 * sem_ch6.adb: Likewise.
1461 (Set_Formal_Mode): Minor cleanup: Move from spec.
1462 * sem_ch6.ads:
1463 (Set_Formal_Mode): Minor cleanup: Move to body.
1464 * cstand.adb: Call Set_Is_Past_Self_Hiding_Point on all entities
1465 as soon as they are created.
1466 * comperr.adb (Compiler_Abort): Minor cleanup -- use 'in' instead
1467 of 'or else'.
1468 * debug.adb: Minor comment cleanups.
1469
1470 2023-05-22 Steve Baird <baird@adacore.com>
1471
1472 * sem_ch4.adb (Analyze_Expression_With_Actions.Check_Action_Ok):
1473 Accept an executable pragma occuring in a declare expression as
1474 per AI22-0045. This means Assert and Inspection_Point pragmas as
1475 well as any implementation-defined pragmas that the implementation
1476 chooses to categorize as executable. Currently Assume and Debug
1477 are the only such pragmas.
1478
1479 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1480
1481 * sem_prag.adb
1482 (Check_Postcondition_Use_In_Inlined_Subprogram): Mention
1483 Subprogram_Variant in the comment.
1484 (Analyze_Subprogram_Variant_In_Decl_Part): Warn when contract is
1485 ignored because of pragma Inline_Always and frontend inlining.
1486
1487 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1488
1489 * sem_prag.adb (Check_Postcondition_Use_In_Inlined_Subprogram): Only
1490 emit warning when frontend inlining is enabled.
1491
1492 2023-05-22 Arnaud Charlet <charlet@adacore.com>
1493
1494 * par-ch3.adb, sem_ch4.adb (P_Discrete_Range, Analyze_Logical_Op,
1495 Analyze_Short_Circuit): Add calls to Check_Xtra_Parentheses.
1496 * par-ch5.adb (P_Condition): Move logic to Check_Xtra_Parentheses.
1497 * style.ads, styleg.adb, styleg.ads (Check_Xtra_Parens): Move logic
1498 related to expressions requiring parentheses here.
1499
1500 2023-05-22 Arnaud Charlet <charlet@adacore.com>
1501
1502 * ali-util.adb, par-endh.adb, par-prag.adb, par-ch2.adb,
1503 checks.adb, fmap.adb, libgnat/a-nbnbig.ads, libgnat/g-dynhta.adb,
1504 libgnat/s-carun8.adb, libgnat/s-strcom.adb, libgnat/a-dhfina.adb,
1505 libgnat/a-direct.adb, libgnat/a-rbtgbo.adb, libgnat/a-strsea.adb,
1506 libgnat/a-ststio.adb, libgnat/a-suenco.adb, libgnat/a-costso.adb,
1507 libgnat/a-strmap.adb, libgnat/g-alleve.adb,
1508 libgnat/g-debpoo.adb, libgnat/g-sercom__linux.adb,
1509 libgnat/s-genbig.adb, libgnat/s-mmap.adb, libgnat/s-regpat.adb,
1510 par-ch5.adb, sem_case.adb, sem_ch12.adb, sem_ch13.adb,
1511 sem_ch8.adb, sem_eval.adb, sem_prag.adb, sem_type.adb,
1512 exp_ch11.adb, exp_ch2.adb, exp_ch3.adb, exp_ch4.adb, exp_ch5.adb,
1513 exp_ch6.adb, exp_ch9.adb, exp_put_image.adb, freeze.adb, live.adb,
1514 sem_aggr.adb, sem_cat.adb, sem_ch10.adb, sem_ch3.adb, sem_ch6.adb,
1515 sem_ch9.adb, sem_disp.adb, sem_elab.adb, sem_res.adb,
1516 sem_util.adb, sinput.adb, uintp.adb, bcheck.adb, binde.adb,
1517 binderr.adb, einfo-utils.adb, clean.adb, sem_ch4.adb, gnatls.adb,
1518 gprep.adb, sem_ch11.adb: Remove extra parentheses.
1519
1520 2023-05-22 Arnaud Charlet <charlet@adacore.com>
1521
1522 * sem_aggr.adb (Get_Value): Use ?? instead of ?.
1523
1524 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1525
1526 * exp_aggr.adb (Aggregate_Size): Remove redundant calls to
1527 Present.
1528 * exp_ch5.adb (Expand_N_If_Statement): Likewise.
1529 * sem_prag.adb (Analyze_Pragma): Likewise.
1530 * sem_warn.adb (Find_Var): Likewise.
1531
1532 2023-05-22 Claire Dross <dross@adacore.com>
1533
1534 * sem_util.adb (Find_Actual): On calls through dereferences,
1535 return the corresponding formal in the designated subprogram
1536 profile.
1537
1538 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1539
1540 * sem_util.ads (Is_Actual_Tagged_Parameter): Remove spec.
1541 * sem_util.adb (Is_Actual_Tagged_Parameter): Remove body.
1542
1543 2023-05-22 Joffrey Huguet <huguet@adacore.com>
1544
1545 * libgnat/a-strunb.ads, libgnat/a-strunb__shared.ads
1546 (To_Unbounded_String): Add postcondition. Add aspect SPARK_Mode
1547 Off on the version that takes a Natural as parameter.
1548 (To_String): Complete postcondition.
1549 (Set_Unbounded_String): Add postcondition.
1550 (Element): Likewise.
1551 ("="): Likewise.
1552
1553 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1554
1555 * exp_ch3.adb (Freeze_Type): Do not associate the Finalize_Address
1556 routine for a class-wide type if restriction No_Dispatching_Calls
1557 is in effect.
1558
1559 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1560
1561 * libgnat/s-genbig.ads (From_Bignum): New overloaded declarations.
1562 * libgnat/s-genbig.adb (LLLI): New subtype.
1563 (LLLI_Is_128): New boolean constant.
1564 (From_Bignum): Change the return type of the signed implementation
1565 to Long_Long_Long_Integer and add support for the case where its
1566 size is 128 bits. Add a wrapper around it for Long_Long_Integer.
1567 Add an unsigned implementation returning Unsigned_128 and a wrapper
1568 around it for Unsigned_64.
1569 (To_Bignum): Test LLLI_Is_128 instead of its size.
1570 (To_String.Image): Add qualification to calls to From_Bignum.
1571 * libgnat/a-nbnbin.adb (To_Big_Integer): Likewise.
1572 (Signed_Conversions.From_Big_Integer): Likewise.
1573 (Unsigned_Conversions): Likewise.
1574
1575 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1576
1577 * freeze.adb (Wrap_Imported_Subprogram): Use Copy_Subprogram_Spec
1578 to copy the spec from the subprogram to the generated subprogram
1579 body.
1580 (Freeze_Entity): Do not wrap imported subprograms inside generics.
1581
1582 2023-05-22 Steve Baird <baird@adacore.com>
1583
1584 * sem_ch4.adb (Analyze_Expression_With_Actions.Check_Action_Ok):
1585 If Comes_From_Source (A) is False, then look at Original_Node (A)
1586 instead of A. In particular, if an (illegal) expression function
1587 is transformed into a "vanilla" function, we don't want to allow
1588 it just because Comes_From_Source is now False.
1589
1590 2023-05-22 Steve Baird <baird@adacore.com>
1591
1592 * sem_prag.adb (Analyze_Pragma): In Check_No_Return, call
1593 Error_Msg_Ada_2022_Feature in the case of a function. Remove code
1594 outside of Check_No_Return that was querying Ada_Version.
1595
1596 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1597
1598 * exp_ch4.adb (Expand_N_Expression_With_Actions.Process_Action): Do
1599 not look into nested blocks.
1600
1601 2023-05-22 Eric Botcazou <ebotcazou@adacore.com>
1602
1603 * sem_ch3.adb (Find_Type_Of_Object): In a spec expression, also set
1604 the Scope of the type, and call Constrain_Array for array subtypes.
1605
1606 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1607
1608 * pprint.adb (Expression_Image): Reduce scope of local variables; inline
1609 local uncommented constant From_Source; concatenate string with a single
1610 character, as it is likely to execute faster; add missing cases to
1611 traversal for the rightmost node and assertion to demonstrate that the
1612 ??? comment is no longer relevant.
1613
1614 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1615
1616 * pprint.adb (Expr_Name): Qualify CASE expression with N_Subexpr; add
1617 missing alternative for N_Raise_Storage_Error; remove dead alternatives;
1618 explicitly list unsupported alternatives.
1619
1620 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1621
1622 * pprint.adb (Expr_Name): Exclude DEL from printable range.
1623
1624 2023-05-22 Piotr Trojanek <trojanek@adacore.com>
1625
1626 * sem_util.ads (New_Copy_Tree): Update comment.
1627 * sem_util.adb (New_Copy_Tree): Update Controlling_Argument, very
1628 much like we update the First/Next_Named_Association.
1629
1630 2023-05-22 Bob Duff <duff@adacore.com>
1631
1632 * fe.h: Remove Ada_With_Extensions and add commentary.
1633 * opt.ads: Rearrange code and add commentary.
1634
1635 2023-05-22 Bob Duff <duff@adacore.com>
1636
1637 * sem_util.adb (Process_Type): Stop the recursion.
1638 * exp_aggr.adb (Build_Record_Aggr_Code): Add assertion.
1639
1640 2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1641
1642 * gcc-interface/decl.cc (gnat_to_gnu_entity): Use _P defines
1643 from tree.h.
1644 (constructor_address_p): Ditto.
1645 (elaborate_expression_1): Ditto.
1646 * gcc-interface/trans.cc (Identifier_to_gnu): Ditto.
1647 (is_nrv_p): Ditto.
1648 (Subprogram_Body_to_gnu): Ditto.
1649 (gnat_to_gnu): Ditto.
1650 (gnat_to_gnu_external): Ditto.
1651 (add_decl_expr): Ditto.
1652 (gnat_gimplify_expr): Ditto.
1653 * gcc-interface/utils.cc (create_var_decl): Ditto.
1654 * gcc-interface/utils2.cc (get_base_type): Ditto.
1655 (build_binary_op): Ditto.
1656 (build_unary_op): Ditto.
1657 (gnat_protect_expr): Ditto.
1658 (gnat_invariant_expr): Ditto.
1659
1660 2023-05-16 Steve Baird <baird@adacore.com>
1661
1662 * usage.adb: Generate output text describing the -gnatw_s switch
1663 (and the corresponding -gnatw_S switch).
1664
1665 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1666
1667 * exp_attr.adb (Expand_N_Attribute_Reference) <Attribute_Reduce>:
1668 Use the canonical accumulator type as the type of the accumulator
1669 in the prefixed case.
1670
1671 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1672
1673 * exp_aggr.adb (Expand_Array_Aggregate): Do not set Warnings_Off on
1674 the temporary created when in-place expansion is not possible.
1675
1676 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1677
1678 * freeze.adb (Freeze_Expression): When the freezing is to be done
1679 outside the current scope, skip any scope that is an internal loop.
1680
1681 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1682
1683 * exp_imgv.adb (Rewrite_Object_Image): If the prefix is a component
1684 that depends on a discriminant, create an actual subtype for it.
1685
1686 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1687
1688 * sem_ch13.adb: Add with and use clauses for Expander.
1689 (Resolve_Aspect_Expressions) <Aspect_Predicate>: Emulate a
1690 bona-fide preanalysis setup before calling
1691 Resolve_Aspect_Expression.
1692
1693 2023-05-16 Yannick Moy <moy@adacore.com>
1694
1695 * libgnat/s-aridou.adb (Lemma_Div_Pow2): Add assertion.
1696 * libgnat/s-arit32.adb (Lemma_Abs_Div_Commutation): Simplify.
1697 * libgnat/s-expmod.adb (Lemma_Exp_Mod): Add assertions.
1698 (Lemma_Euclidean_Mod): Add body to lemma.
1699 (Lemma_Mult_Mod): Add assertion.
1700 * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Modify assertion.
1701 * libgnat/s-vauspe.ads (Raw_Unsigned_Last_Ghost): Add
1702 postcondition.
1703 * libgnat/s-widthi.adb: Use more precise types.
1704
1705 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1706
1707 * sem_res.adb (Has_Applicable_User_Defined_Literal): Apply the
1708 same processing for derived untagged types as for tagged types.
1709 * sem_util.ads (Corresponding_Primitive_Op): Adjust description.
1710 * sem_util.adb (Corresponding_Primitive_Op): Handle untagged
1711 types.
1712
1713 2023-05-16 Javier Miranda <miranda@adacore.com>
1714
1715 * sem_attr.adb
1716 (Analyze_Attribute_Old_Result): When preanalyzing a class-wide
1717 condition, search in the scopes stack for the subprogram that has
1718 the condition. This is required because returning the current
1719 scope causes reporting spurious errors when the occurrence of the
1720 attribute is found, for example, in a quantified expression.
1721
1722 2023-05-16 Javier Miranda <miranda@adacore.com>
1723
1724 * exp_ch6.adb
1725 (Needs_BIP_Alloc_Form): Return False for functions with foreign
1726 convention since we never use build-in-place for such functions.
1727
1728 2023-05-16 Piotr Trojanek <trojanek@adacore.com>
1729
1730 * sem_util.adb (Aggregate_Constraint_Checks): Don't exit early
1731 when preanalysing in GNATprove mode. Now the condition is
1732 consistent with other similar conditions in other code.
1733
1734 2023-05-16 Ghjuvan Lacambre <lacambre@adacore.com>
1735
1736 * usage.adb (Usage): Document -gnatyD.
1737
1738 2023-05-16 Marc Poulhiès <poulhies@adacore.com>
1739
1740 * libgnat/s-tsmona__linux.adb (link_map, r_debug_type): Add
1741 'aliased' on all components.
1742
1743 2023-05-16 Johannes Kliemann <kliemann@adacore.com>
1744
1745 * libgnat/system-linux-ppc.ads: Add Support_Atomic_Primitives.
1746 * libgnat/s-atopri__32.ads: Add 32 bit version of s-atopri.ads.
1747 * Makefile.rtl: Use s-atopro__32.ads for ppc-linux.
1748
1749 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1750
1751 * sem_util.adb (Get_Actual_Subtype): For an explicit dereference,
1752 return the Actual_Designated_Subtype if it is present.
1753 (Get_Actual_Subtype_If_Available): Likewise.
1754
1755 2023-05-16 Arnaud Charlet <charlet@adacore.com>
1756
1757 * errout.ads: Update comment.
1758 * errout.adb (Skip_Msg_Insertion_Warning): Update to take e.g.
1759 -gnatyM into account.
1760 * erroutc.adb (Get_Warning_Option, Get_Warning_Tag)
1761 (Prescan_Message): Add support for Style tags.
1762 * par-ch5.adb, par-ch6.adb, par-ch7.adb, par-endh.adb,
1763 par-util.adb, style.adb, styleg.adb: Set tag on all style
1764 messages.
1765
1766 2023-05-16 Tom Tromey <tromey@adacore.com>
1767
1768 * doc/gnat_ugn/building_executable_programs_with_gnat.rst
1769 (Switches_for_gnatbind): Fix typo.
1770 * libgnat/g-spipat.ads: Fix typo.
1771 * gnat_ugn.texi: Regenerate.
1772
1773 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1774
1775 * exp_aggr.adb (Build_Assignment_With_Temporary): Adjust comment
1776 and fix type of second parameter. Create the temporary on the
1777 secondary stack by calling Build_Temporary_On_Secondary_Stack.
1778 (Convert_Array_Aggr_In_Allocator): Adjust formatting.
1779 (Expand_Array_Aggregate): Likewise.
1780 * exp_ch4.adb (Expand_N_Allocator): Set Actual_Designated_Subtype
1781 on the dereference in the initialization for all composite types.
1782 * exp_ch5.adb (Expand_N_Assignment_Statement): Create a temporary
1783 on the host for an assignment between nonnative storage models.
1784 Suppress more checks when Suppress_Assignment_Checks is set.
1785 * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Deal with actuals
1786 that are dereferences with an Actual_Designated_Subtype. Add
1787 support for nonnative storage models.
1788 (Expand_Actuals): Create a copy if the actual is a dereference
1789 with a nonnative storage model.
1790 * exp_util.ads (Build_Temporary_On_Secondary_Stack): Declare.
1791 * exp_util.adb (Build_Temporary_On_Secondary_Stack): New function.
1792 * sem_ch5.adb (Analyze_Assignment.Set_Assignment_Type): Do not
1793 build an actual subtype for dereferences with an
1794 Actual_Designated_Subtype
1795 * sinfo.ads (Actual_Designated_Subtype): Adjust documentation.
1796 (Suppress_Assignment_Checks): Likewise.
1797
1798 2023-05-16 Piotr Trojanek <trojanek@adacore.com>
1799
1800 * exp_spark.adb (SPARK_Freeze_Type): Copy whole handling of DIC
1801 and Type_Invariant from Freeze_Type.
1802
1803 2023-05-16 Richard Kenner <kenner@adacore.com>
1804
1805 * sem_util.adb (Subprogram_Name): If what's passed is already an
1806 entity, use that for the name.
1807
1808 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1809
1810 * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst
1811 (No_Dependence): Give examples of new No_Dependence restrictions.
1812 * gnat_rm.texi: Regenerate.
1813
1814 2023-05-16 Arnaud Charlet <charlet@adacore.com>
1815
1816 * snames.ads-tmpl (Name_ASCII): New.
1817 * style.adb (Check_Identifier): Fix handling of ASCII.
1818
1819 2023-05-16 Eric Botcazou <ebotcazou@adacore.com>
1820
1821 * gen_il-fields.ads (Opt_Field_Enum): Add Cannot_Be_Superflat.
1822 * gen_il-gen-gen_nodes.adb (N_Range): Add Cannot_Be_Superflat as
1823 semantical flag and change Includes_Infinities to semantical.
1824 * sinfo.ads (Cannot_Be_Superflat): Document it for N_Range.
1825 * exp_ch4.adb (Expand_Concatenate): Set Cannot_Be_Superflat on the
1826 range of the result if the result cannot be null.
1827
1828 2023-05-16 Richard Kenner <kenner@adacore.com>
1829
1830 * gen_il-gen-gen_nodes.adb (Present_Expr): Type is now Uint.
1831
1832 2023-05-16 Yannick Moy <moy@adacore.com>
1833
1834 * libgnat/s-aridou.adb (Big3, Is_Mult_Decomposition)
1835 (Is_Scaled_Mult_Decomposition): Add annotation for inlining.
1836 (Double_Divide, Scaled_Divide): Simplify and remove ghost code.
1837 (Prove_Multiplication): Add calls to lemmas to make proof go
1838 through.
1839 * libgnat/s-aridou.ads (Big, In_Double_Int_Range): Add annotation
1840 for inlining.
1841
1842 2023-05-16 Yannick Moy <moy@adacore.com>
1843
1844 * libgnat/a-strsup.adb: Add intermediate assertions.
1845
1846 2023-05-16 Arnaud Charlet <charlet@adacore.com>
1847
1848 * gnat1drv.adb: Ensure all dependencies are recorded even when not
1849 generating code.
1850
1851 2023-05-16 Yannick Moy <moy@adacore.com>
1852
1853 * libgnat/a-strsup.adb: Set assertion policy for Loop_Variant.
1854
1855 2023-05-16 Marc Poulhiès <poulhies@adacore.com>
1856
1857 * sem_ch12.adb (Instantiate_Package_Body): Simplify if/then/else.
1858 (Instantiate_Subprogram_Body): Likewise.
1859
1860 2023-05-16 Yannick Moy <moy@adacore.com>
1861
1862 * libgnat/s-aridou.adb:
1863 (Big3): Remove override made useless.
1864 (Lemma_Quot_Rem): Add new lemma and justify it, as no prover
1865 manages to prove it.
1866 (Lemma_Div_Pow2): Use new lemma Lemma_Quot_Rem.
1867 (Prove_Scaled_Mult_Decomposition_Regroup3): Retype for
1868 simplification.
1869 (Scaled_Divide): Remove useless assertions.Decompose some
1870 assertions with cut operations. Use Assert_And_Cut for second
1871 half. Add assertions.
1872
1873 2023-05-15 Marc Poulhiès <poulhies@adacore.com>
1874
1875 * exp_ch3.adb (Make_Allocator_For_Return): Fix typo in comment.
1876
1877 2023-05-15 Yannick Moy <moy@adacore.com>
1878
1879 * libgnat/a-strbou.ads: Add justifications for Mapping.
1880 * libgnat/a-strfix.adb: Same.
1881 * libgnat/a-strfix.ads: Same.
1882 * libgnat/a-strsea.adb: Same.
1883 * libgnat/a-strsea.ads: Same.
1884 * libgnat/a-strsup.adb: Same and add loop variants.
1885 * libgnat/a-strsup.ads: Same and add specification of termination.
1886
1887 2023-05-15 Yannick Moy <moy@adacore.com>
1888
1889 * libgnat/a-strsup.adb (Super_Slice): Reorder component assignment
1890 to avoid failing predicate check related to initialization.
1891 * libgnat/s-expmod.adb (Exp_Modular): Add intermediate assertion.
1892
1893 2023-05-15 Yannick Moy <moy@adacore.com>
1894
1895 * libgnat/i-c.adb: Add loop variants. Remove useless
1896 initialization.
1897
1898 2023-05-15 Bob Duff <duff@adacore.com>
1899
1900 * einfo-utils.ads: Remove comment.
1901
1902 2023-05-15 Bob Duff <duff@adacore.com>
1903
1904 * einfo-utils.ads, einfo-utils.adb: Get rid of the Proc_Next_...
1905 procedures. Use Inline aspect instead of pragma Inline.
1906 Is_Discrete_Or_Fixed_Point_Type did not have pragma Inline, but
1907 now has the aspect; this was probably an oversight
1908 (which illustrates why aspects are better).
1909
1910 2023-05-15 Ronan Desplanques <desplanques@adacore.com>
1911
1912 * doc/gnat_ugn/gnat_utility_programs.rst: Fix formatting
1913 inconsistency.
1914
1915 2023-05-15 Bob Duff <duff@adacore.com>
1916
1917 * einfo-utils.adb:
1918 (Proc_Next_Component_Or_Discriminant): Call
1919 Next_Component_Or_Discriminant.
1920
1921 2023-05-15 Bob Duff <duff@adacore.com>
1922
1923 * einfo.ads:
1924 (First_Entity): Update comment explaining why this exists on all
1925 [sub]types, as opposed to just the ones with associated entities.
1926
1927 2023-05-15 Bob Duff <duff@adacore.com>
1928
1929 * atree.adb
1930 (Check_Vanishing_Fields): Disable the check for "root/base type
1931 only" fields. This is a bug fix -- if we're checking some subtype
1932 S, we don't want to reach over to the root or base type and
1933 Reinit_Field_To_Zero of that, thus modifying the field for lots of
1934 subtypes other than S. Disable in the to/from E_Void cases. Misc
1935 cleanup.
1936 * gen_il-gen-gen_entities.adb: Define First_Entity, Last_Entity,
1937 and Stored_Constraint for all type entities, because there are too
1938 many cases where Reinit_Field_To_Zero would otherwise be needed.
1939 In any case, it seems cleaner to have First_Entity and Last_Entity
1940 defined in the same entity kinds.
1941 * einfo.ads:
1942 (First_Entity, Last_Entity, Stored_Constraint): Update comments to
1943 reflect gen_il-gen-gen_entities.adb changes.
1944 (Lit_Hash): Add missing "[root type only]" comment.
1945 * exp_ch5.adb: Add Reinit_Field_To_Zero calls for vanishing
1946 fields.
1947 * sem_ch10.adb: Likewise.
1948 * sem_ch6.adb: Likewise.
1949 * sem_ch7.adb: Likewise.
1950 * sem_ch8.adb: Likewise.
1951 * sem_ch3.adb: Likewise. Also remove now-unnecessary
1952 Reinit_Field_To_Zero calls.
1953
1954 2023-05-15 Eric Botcazou <ebotcazou@adacore.com>
1955
1956 * sem_ch7.adb (Hide_Public_Entities): Use the same condition for
1957 subprogram bodies without specification as for those with one.
1958
1959 2023-05-15 Piotr Trojanek <trojanek@adacore.com>
1960
1961 * sem_util.adb (New_Copy_Tree): Remove redundant calls to Present.
1962
1963 2023-05-15 Ronan Desplanques <desplanques@adacore.com>
1964
1965 * sem_ch8.adb (End_Scope): Simplify lookup of predecessor in
1966 homonym chain.
1967
1968 2023-05-15 Piotr Trojanek <trojanek@adacore.com>
1969
1970 * sem_aggr.adb (Resolve_Aggregate): Accept aggregates with OTHERS
1971 appearing inside unchecked conversions.
1972
1973 2023-05-15 Steve Baird <baird@adacore.com>
1974
1975 * warnsw.ads: Add a new element,
1976 Warn_On_Ineffective_Predicate_Test, to the Opt_Warnings_Enum
1977 enumeration type.
1978 * warnsw.adb: Bind "-gnatw_s" to the new
1979 Warn_On_Ineffective_Predicate_Test switch. Add the new switch to
1980 the set of switches enabled by -gnata .
1981 * sem_ch13.adb
1982 (Build_Discrete_Static_Predicate): Declare new local procedure,
1983 Warn_If_Test_Ineffective, which conditionally generates new
1984 warning. Call this new procedure when building a new element of an
1985 RList.
1986 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
1987 Document the -gnatw_s switch (and the corresponding -gnatw_S
1988 switch).
1989 * gnat_ugn.texi: Regenerate.
1990
1991 2023-05-15 Yannick Moy <moy@adacore.com>
1992
1993 * sem_attr.adb: Update comment referring to rule number.
1994
1995 2023-05-15 Ronan Desplanques <desplanques@adacore.com>
1996
1997 * sem_attr.adb: sem_attr.adb (Analyze_Access_Attribute): Tighten
1998 validity check for task types.
1999
2000 2023-05-15 Ronan Desplanques <desplanques@adacore.com>
2001
2002 * doc/gnat_rm/implementation_defined_characteristics.rst: Fix
2003 minor documentation formatting issue.
2004 * gnat_rm.texi: Regenerate.
2005 * gnat_ugn.texi: Regenerate.
2006
2007 2023-05-15 Bob Duff <duff@adacore.com>
2008
2009 * exp_ch4.adb
2010 (Expand_N_Op_Expon): Remove the too-big check. Simplify. Signed
2011 and modular cases are combined, etc. Remove code with comment "We
2012 only handle cases where the right type is a[sic] integer", because
2013 the right operand must always be an integer at this point.
2014
2015 2023-05-15 Bob Duff <duff@adacore.com>
2016
2017 * sem_attr.adb
2018 (Analyze_Attribute): Add a call to Check_Error_Detected.
2019
2020 2023-05-15 Yannick Moy <moy@adacore.com>
2021
2022 * par-prag.adb (First_Arg_Is_Matching_Tool_Name): Fix access to
2023 expression in pragma association.
2024
2025 2023-05-15 Eric Botcazou <ebotcazou@adacore.com>
2026
2027 * repinfo.ads (JSON output format): Document special case of
2028 Present member of a Variant object.
2029 * repinfo.adb (List_Structural_Record_Layout): Change the type of
2030 Ext_Level parameter to Integer. Restrict the first recursion with
2031 increasing levels to the fixed part and implement a second
2032 recursion with decreasing levels for the variant part. Deal with
2033 an extension of a type with unknown discriminants.
2034
2035 2023-05-15 Claire Dross <dross@adacore.com>
2036
2037 * libgnat/s-valueu.adb: Use cut operations inside assertion to
2038 restore proofs
2039 * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Add s-spark and
2040 s-spcuop dependencies.
2041
2042 2023-05-15 Yannick Moy <moy@adacore.com>
2043
2044 * sem_prag.adb (Check_Grouping): Allow Annotate pragmas between
2045 loop pragmas.
2046
2047 2023-05-15 Javier Miranda <miranda@adacore.com>
2048
2049 * doc/gnat_rm/implementation_defined_pragmas.rst
2050 (Extensions_Allowed): Document string interpolation.
2051 * gnat_rm.texi: Regenerate.
2052 * gnat_ugn.texi: Regenerate.
2053
2054 2023-05-15 Joel Brobecker <brobecker@adacore.com>
2055
2056 * doc/gnat_ugn/platform_specific_information.rst
2057 (_PIE_Enabled_By_Default_On_Linux): New section.
2058 * gnat-style.texi: Regenerate.
2059 * gnat_ugn.texi: Regenerate.
2060
2061 2023-05-15 Javier Miranda <miranda@adacore.com>
2062
2063 * exp_disp.adb
2064 (Has_Dispatching_Constructor_Call): New subprogram.
2065 (Expand_Interface_Conversion): No need to perform dynamic
2066 interface conversion when the operand and the target type are
2067 interface types and the target interface type is an ancestor of
2068 the operand type. The unique exception to this rule is when the
2069 operand has a dispatching constructor call (as documented in the
2070 sources).
2071
2072 2023-05-15 Piotr Trojanek <trojanek@adacore.com>
2073
2074 * sem_attr.adb (Analyze_Attribute): Reject attribute Initialized
2075 on unchecked unions; fix grammar in comment.
2076
2077 2023-05-15 Ronan Desplanques <desplanques@adacore.com>
2078
2079 * sem_ch13.adb (Validate_Unchecked_Conversion): Fix behavior on
2080 System.Address to access to subprogram subtype conversion.
2081
2082 2023-05-15 Piotr Trojanek <trojanek@adacore.com>
2083
2084 * atree.ads
2085 (Is_Syntactic_Node): Refactored from New_Copy_Tree.
2086 * atree.adb
2087 (Is_Syntactic_Node): Likewise.
2088 (Copy_Separate_Tree): Use Is_Syntactic_Node.
2089 * sem_util.adb
2090 (Has_More_Ids): Move to Atree.
2091 (Is_Syntactic_Node): Likewise.
2092
2093 2023-04-18 Jin Ma <jinma@linux.alibaba.com>
2094
2095 * gcc-interface/utils.cc (unchecked_convert): Fix typo.
2096
2097 2023-04-17 Martin Liska <mliska@suse.cz>
2098
2099 * gnatvsn.ads: Bump Library_Version to 14.
2100
2101 2023-04-15 Eric Botcazou <ebotcazou@adacore.com>
2102
2103 PR bootstrap/109510
2104 * gcc-interface/decl.cc (gnat_to_gnu_entity) <types>: Do not reset
2105 align to zero in any case. Set TYPE_USER_ALIGN on the type only if
2106 it is an aggregate type, or else a type whose default alignment is
2107 specifically capped on selected platforms.
2108
2109 2023-04-14 Eric Botcazou <ebotcazou@adacore.com>
2110
2111 PR bootstrap/109510
2112 * gcc-interface/decl.cc (gnat_to_gnu_entity) <types>: Reset align
2113 to zero if its value is equal to TYPE_ALIGN and the type is scalar.
2114 Set TYPE_USER_ALIGN on the type only if align is positive.
2115
2116 2023-03-06 Javier Miranda <miranda@adacore.com>
2117
2118 PR ada/108858
2119 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): For functions with
2120 separate spec, if their return type was visible through a limited-
2121 with context clause, their extra formals were not added when the
2122 spec was analyzed. Now the full view must be available, and the
2123 extra formals can be created and Returns_By_Ref computed.
2124
2125 2023-03-06 Eric Botcazou <ebotcazou@adacore.com>
2126
2127 PR ada/108909
2128 PR ada/108983
2129 * Make-generated.in: Do not use GNATMAKE.
2130 * gcc-interface/Makefile.in: Ditto.
2131
2132 2023-02-26 Peter Foley <pefoley2@pefoley.com>
2133
2134 PR ada/108909
2135 * Make-generated.in: Use GNATMAKE.
2136 * gcc-interface/Makefile.in: Ditto.
2137
2138 2023-02-14 Eric Botcazou <ebotcazou@adacore.com>
2139
2140 * gcc-interface/trans.cc (gnat_gimplify_expr): Add missing guard.
2141
2142 2023-02-14 Dongsheng Song <dongsheng.song@gmail.com>
2143
2144 * adaint.c [Linux]: Include <features.h>.
2145 (__gnat_get_executable_load_address) [Linux]: Enable only for
2146 glibc and uClibc.
2147
2148 2023-01-16 Marc Poulhiès <poulhies@adacore.com>
2149
2150 * gcc-interface/Make-lang.in: Update copyright years.
2151 * gcc-interface/Makefile.in: Likewise.
2152 * gcc-interface/ada-builtin-types.def: Likewise.
2153 * gcc-interface/ada-builtins.def: Likewise.
2154 * gcc-interface/ada-tree.def: Likewise.
2155 * gcc-interface/ada-tree.h: Likewise.
2156 * gcc-interface/ada.h: Likewise.
2157 * gcc-interface/config-lang.in: Likewise.
2158 * gcc-interface/cuintp.cc: Likewise.
2159 * gcc-interface/decl.cc: Likewise.
2160 * gcc-interface/gadaint.h: Likewise.
2161 * gcc-interface/gigi.h: Likewise.
2162 * gcc-interface/lang-specs.h: Likewise.
2163 * gcc-interface/lang.opt: Likewise.
2164 * gcc-interface/misc.cc: Likewise.
2165 * gcc-interface/system.ads: Likewise.
2166 * gcc-interface/targtyps.cc: Likewise.
2167 * gcc-interface/trans.cc: Likewise.
2168 * gcc-interface/utils.cc: Likewise.
2169 * gcc-interface/utils2.cc: Likewise.
2170
2171 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2172
2173 * exp_ch3.adb (Make_Allocator_For_Return): Fix typo in comment.
2174
2175 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2176
2177 * exp_ch3.adb (Make_Allocator_For_Return): Convert the expression
2178 to the return object's type in the constrained array case as well.
2179
2180 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2181
2182 * exp_ch3.adb (Expand_N_Object_Declaration): For a class-wide non-
2183 interface stand-alone object initialized by a function call, call
2184 Remove_Side_Effects on the expression to capture the result.
2185
2186 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2187
2188 * exp_util.ads (Has_Tag_Of_Type): Declare.
2189 * exp_util.adb (Has_Tag_Of_Type): Move to package level. Recurse on
2190 qualified expressions.
2191 * exp_ch3.adb (Expand_N_Object_Declaration): Use a static reference
2192 to the interface tag in more cases for class-wide interface objects.
2193
2194 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2195
2196 * exp_util.adb (Make_CW_Equivalent_Type.Has_Tag_Of_Type): Fix pasto.
2197
2198 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2199
2200 * exp_util.adb (Is_Temporary_For_Interface_Object): Delete.
2201 (Is_Finalizable_Transient.Is_Aliased): Deal with the specific case
2202 of temporaries generated for interface objects.
2203
2204 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2205
2206 * exp_ch3.adb (Expand_N_Object_Declaration): Do not generate a back-
2207 and-forth displacement of the object's address when using a renaming
2208 for an interface object with an expression of the same type.
2209 * exp_ch4.adb (Expand_Allocator_Expression): Do not remove the side
2210 effects of the expression up front for the simple allocators. Do not
2211 call the Adjust primitive if the expression is a function call.
2212 * exp_ch6.adb (Expand_Ctrl_Function_Call): Do not expand the call
2213 unnecessarily for a special return object.
2214 (Expand_Simple_Function_Return): Restore the displacement of the
2215 return object's address in the case where the expression is the call
2216 to a function whose result type is a type that needs finalization.
2217 * exp_util.adb (Expand_Subtype_From_Expr): Do not remove the side
2218 effects of the expression before calling Make_Subtype_From_Expr.
2219 (Make_CW_Equivalent_Type): If the expression has the tag of its type
2220 and this type has a uniform size, use 'Object_Size of this type in
2221 lieu of 'Size of the expression to compute the expression's size.
2222
2223 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2224
2225 * exp_ch3.adb (Make_Allocator_For_Return): Put back an interface
2226 conversion for expressions with non-interface class-wide type.
2227
2228 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2229
2230 * exp_ch3.adb (Expand_N_Object_Declaration): Also optimize aliased
2231 objects if their nominal subtype is not an unconstrained array.
2232
2233 2023-01-16 Eric Botcazou <ebotcazou@adacore.com>
2234
2235 * exp_ch3.adb (Expand_N_Object_Declaration): Factor out conditions
2236 needed for an initializating expression that is a function call to
2237 be renamable into the Is_Renamable_Function_Call predicate.
2238 Use it to implement the renaming in the case of class-wide interface
2239 objects. Remove an interface conversion on all paths, separate and
2240 optimize the renaming path in the special expansion for interfaces.
2241 (Is_Renamable_Function_Call): New predicate.
2242 (Make_Allocator_For_Return): Put back an interface conversion.
2243 * exp_ch6.adb (Apply_CW_Accessibility_Check): Remove useless access
2244 checks on RE_Tag_Ptr.
2245
2246 2023-01-09 Arnaud Charlet <charlet@adacore.com>
2247
2248 * accessibility.adb, accessibility.ads, ada_get_targ.adb: Update copyright year.
2249 * adabkend.adb, adabkend.ads, adadecode.c, adadecode.h, adaint.c: Likewise.
2250 * adaint.h, affinity.c, ali-util.adb, ali-util.ads, ali.adb: Likewise.
2251 * ali.ads, alloc.ads, argv-lynxos178-raven-cert.c, argv.c: Likewise.
2252 * aspects.adb, aspects.ads, atree.adb, atree.ads, atree.h: Likewise.
2253 * aux-io.c, back_end.adb, back_end.ads, backend_utils.adb: Likewise.
2254 * backend_utils.ads, bcheck.adb, bcheck.ads, binde.adb, binde.ads: Likewise.
2255 * binderr.adb, binderr.ads, bindgen.adb, bindgen.ads: Likewise.
2256 * bindo-augmentors.adb, bindo-augmentors.ads, bindo-builders.adb: Likewise.
2257 * bindo-builders.ads, bindo-diagnostics.adb: Likewise.
2258 * bindo-diagnostics.ads, bindo-elaborators.adb: Likewise.
2259 * bindo-elaborators.ads, bindo-graphs.adb, bindo-graphs.ads: Likewise.
2260 * bindo-units.adb, bindo-units.ads, bindo-validators.adb: Likewise.
2261 * bindo-validators.ads, bindo-writers.adb, bindo-writers.ads: Likewise.
2262 * bindo.adb, bindo.ads, bindusg.adb, bindusg.ads, butil.adb: Likewise.
2263 * butil.ads, cal.c, casing.adb, casing.ads, checks.adb: Likewise.
2264 * checks.ads, cio.c, clean.adb, clean.ads: Likewise.
2265 * comperr.adb, comperr.ads, contracts.adb, contracts.ads: Likewise.
2266 * csets.adb, csets.ads, cstand.adb: Likewise.
2267 * cstand.ads, cstreams.c, ctrl_c.c, debug.adb, debug.ads: Likewise.
2268 * debug_a.adb, debug_a.ads, einfo-utils.adb, einfo-utils.ads: Likewise.
2269 * einfo.adb, einfo.ads, elists.adb, elists.ads, elists.h, env.c: Likewise.
2270 * env.h, err_vars.ads, errno.c, errout.adb, errout.ads: Likewise.
2271 * erroutc.adb, erroutc.ads, errutil.adb, errutil.ads: Likewise.
2272 * eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb, exp_aggr.ads: Likewise.
2273 * exp_atag.adb, exp_atag.ads, exp_attr.adb, exp_attr.ads: Likewise.
2274 * exp_cg.adb, exp_cg.ads, exp_ch10.ads, exp_ch11.adb: Likewise.
2275 * exp_ch11.ads, exp_ch12.adb, exp_ch12.ads, exp_ch13.adb: Likewise.
2276 * exp_ch13.ads, exp_ch2.adb, exp_ch2.ads, exp_ch3.adb: Likewise.
2277 * exp_ch3.ads, exp_ch4.adb, exp_ch4.ads, exp_ch5.adb, exp_ch5.ads: Likewise.
2278 * exp_ch6.adb, exp_ch6.ads, exp_ch7.adb, exp_ch7.ads, exp_ch8.adb: Likewise.
2279 * exp_ch8.ads, exp_ch9.adb, exp_ch9.ads, exp_code.adb: Likewise.
2280 * exp_code.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.adb: Likewise.
2281 * exp_disp.ads, exp_dist.adb, exp_dist.ads, exp_fixd.adb: Likewise.
2282 * exp_fixd.ads, exp_imgv.adb, exp_imgv.ads, exp_intr.adb: Likewise.
2283 * exp_intr.ads, exp_pakd.adb, exp_pakd.ads, exp_prag.adb: Likewise.
2284 * exp_prag.ads, exp_put_image.adb, exp_put_image.ads, exp_sel.adb: Likewise.
2285 * exp_sel.ads, exp_smem.adb, exp_smem.ads, exp_spark.adb: Likewise.
2286 * exp_spark.ads, exp_strm.adb, exp_strm.ads, exp_tss.adb: Likewise.
2287 * exp_tss.ads, exp_unst.adb, exp_unst.ads, exp_util.adb: Likewise.
2288 * exp_util.ads, expander.adb, expander.ads, expect.c, fe.h: Likewise.
2289 * final.c, fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads: Likewise.
2290 * fname-uf.adb, fname-uf.ads, fname.adb, fname.ads, freeze.adb: Likewise.
2291 * freeze.ads, frontend.adb, frontend.ads, gen_il-fields.ads: Likewise.
2292 * gen_il-gen-gen_entities.adb, gen_il-gen-gen_nodes.adb: Likewise.
2293 * gen_il-gen.adb, gen_il-gen.ads, gen_il-internals.adb: Likewise.
2294 * gen_il-internals.ads, gen_il-main.adb, gen_il-types.ads: Likewise.
2295 * gen_il.adb, gen_il.ads, get_scos.adb, get_scos.ads: Likewise.
2296 * get_targ.adb, get_targ.ads, ghost.adb, ghost.ads, gnat1drv.adb: Likewise.
2297 * gnat1drv.ads, gnat_cuda.adb, gnat_cuda.ads: Likewise.
2298 * gnatbind.adb, gnatbind.ads, gnatchop.adb: Likewise.
2299 * gnatclean.adb, gnatcmd.adb, gnatcmd.ads, gnatdll.adb: Likewise.
2300 * gnatkr.adb, gnatkr.ads, gnatlink.adb, gnatlink.ads, gnatls.adb: Likewise.
2301 * gnatls.ads, gnatmake.adb, gnatmake.ads, gnatname.adb: Likewise.
2302 * gnatname.ads, gnatprep.adb, gnatprep.ads: Likewise.
2303 * gprep.adb, gprep.ads, gsocket.h: Likewise.
2304 * hostparm.ads: Likewise.
2305 * impunit.adb, impunit.ads, indepsw-aix.adb, indepsw-darwin.adb: Likewise.
2306 * indepsw-gnu.adb, indepsw.adb, indepsw.ads, init.c: Likewise.
2307 * initialize.c, inline.adb, inline.ads, itypes.adb, itypes.ads: Likewise.
2308 * krunch.adb, krunch.ads, layout.adb, layout.ads: Likewise.
2309 * lib-list.adb, lib-load.adb, lib-load.ads, lib-sort.adb: Likewise.
2310 * lib-util.adb, lib-util.ads, lib-writ.adb, lib-writ.ads: Likewise.
2311 * lib-xref-spark_specific.adb, lib-xref.adb, lib-xref.ads: Likewise.
2312 * lib.adb, lib.ads, libgnarl/a-astaco.adb, libgnarl/a-dispat.adb: Likewise.
2313 * libgnarl/a-dynpri.adb, libgnarl/a-etgrbu.ads: Likewise.
2314 * libgnarl/a-exetim__darwin.adb, libgnarl/a-exetim__default.ads: Likewise.
2315 * libgnarl/a-exetim__mingw.adb, libgnarl/a-exetim__mingw.ads: Likewise.
2316 * libgnarl/a-exetim__posix.adb, libgnarl/a-interr.adb: Likewise.
2317 * libgnarl/a-interr.ads, libgnarl/a-intnam.ads: Likewise.
2318 * libgnarl/a-intnam__aix.ads, libgnarl/a-intnam__darwin.ads: Likewise.
2319 * libgnarl/a-intnam__dragonfly.ads, libgnarl/a-intnam__dummy.ads: Likewise.
2320 * libgnarl/a-intnam__freebsd.ads, libgnarl/a-intnam__hpux.ads: Likewise.
2321 * libgnarl/a-intnam__linux.ads, libgnarl/a-intnam__lynxos.ads: Likewise.
2322 * libgnarl/a-intnam__mingw.ads, libgnarl/a-intnam__qnx.ads: Likewise.
2323 * libgnarl/a-intnam__rtems.ads, libgnarl/a-intnam__solaris.ads: Likewise.
2324 * libgnarl/a-intnam__vxworks.ads, libgnarl/a-reatim.adb: Likewise.
2325 * libgnarl/a-reatim.ads, libgnarl/a-retide.adb: Likewise.
2326 * libgnarl/a-retide.ads, libgnarl/a-rttiev.adb: Likewise.
2327 * libgnarl/a-rttiev.ads, libgnarl/a-synbar.adb: Likewise.
2328 * libgnarl/a-synbar.ads, libgnarl/a-synbar__posix.adb: Likewise.
2329 * libgnarl/a-synbar__posix.ads, libgnarl/a-sytaco.adb: Likewise.
2330 * libgnarl/a-sytaco.ads, libgnarl/a-tasatt.adb: Likewise.
2331 * libgnarl/a-tasatt.ads, libgnarl/a-taside.adb: Likewise.
2332 * libgnarl/a-taside.ads, libgnarl/a-tasini.adb: Likewise.
2333 * libgnarl/a-tasini.ads, libgnarl/a-taster.adb: Likewise.
2334 * libgnarl/g-boubuf.adb, libgnarl/g-boubuf.ads: Likewise.
2335 * libgnarl/g-boumai.ads, libgnarl/g-semaph.adb: Likewise.
2336 * libgnarl/g-semaph.ads, libgnarl/g-signal.adb: Likewise.
2337 * libgnarl/g-signal.ads, libgnarl/g-tastus.ads: Likewise.
2338 * libgnarl/g-thread.adb, libgnarl/g-thread.ads: Likewise.
2339 * libgnarl/i-vxinco.adb, libgnarl/i-vxinco.ads: Likewise.
2340 * libgnarl/s-inmaop.ads, libgnarl/s-inmaop__dummy.adb: Likewise.
2341 * libgnarl/s-inmaop__hwint.adb, libgnarl/s-inmaop__posix.adb: Likewise.
2342 * libgnarl/s-interr.adb, libgnarl/s-interr.ads: Likewise.
2343 * libgnarl/s-interr__dummy.adb, libgnarl/s-interr__hwint.adb: Likewise.
2344 * libgnarl/s-interr__sigaction.adb: Likewise.
2345 * libgnarl/s-interr__vxworks.adb, libgnarl/s-intman.ads: Likewise.
2346 * libgnarl/s-intman__android.adb, libgnarl/s-intman__dummy.adb: Likewise.
2347 * libgnarl/s-intman__lynxos.adb, libgnarl/s-intman__mingw.adb: Likewise.
2348 * libgnarl/s-intman__posix.adb, libgnarl/s-intman__qnx.adb: Likewise.
2349 * libgnarl/s-intman__rtems.adb, libgnarl/s-intman__rtems.ads: Likewise.
2350 * libgnarl/s-intman__solaris.adb, libgnarl/s-intman__susv3.adb: Likewise.
2351 * libgnarl/s-intman__vxworks.adb, libgnarl/s-intman__vxworks.ads: Likewise.
2352 * libgnarl/s-linux.ads, libgnarl/s-linux__alpha.ads: Likewise.
2353 * libgnarl/s-linux__android.ads, libgnarl/s-linux__hppa.ads: Likewise.
2354 * libgnarl/s-linux__mips.ads, libgnarl/s-linux__riscv.ads: Likewise.
2355 * libgnarl/s-linux__sparc.ads, libgnarl/s-linux__x32.ads: Likewise.
2356 * libgnarl/s-mudido.adb, libgnarl/s-mudido__affinity.adb: Likewise.
2357 * libgnarl/s-osinte__aix.adb, libgnarl/s-osinte__aix.ads: Likewise.
2358 * libgnarl/s-osinte__android.adb, libgnarl/s-osinte__android.ads: Likewise.
2359 * libgnarl/s-osinte__darwin.adb, libgnarl/s-osinte__darwin.ads: Likewise.
2360 * libgnarl/s-osinte__dragonfly.adb: Likewise.
2361 * libgnarl/s-osinte__dragonfly.ads, libgnarl/s-osinte__dummy.ads: Likewise.
2362 * libgnarl/s-osinte__freebsd.adb, libgnarl/s-osinte__freebsd.ads: Likewise.
2363 * libgnarl/s-osinte__gnu.adb, libgnarl/s-osinte__gnu.ads: Likewise.
2364 * libgnarl/s-osinte__hpux-dce.adb: Likewise.
2365 * libgnarl/s-osinte__hpux-dce.ads, libgnarl/s-osinte__hpux.ads: Likewise.
2366 * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise.
2367 * libgnarl/s-osinte__linux.ads, libgnarl/s-osinte__lynxos178.adb: Likewise.
2368 * libgnarl/s-osinte__lynxos178e.ads, libgnarl/s-osinte__mingw.ads: Likewise.
2369 * libgnarl/s-osinte__posix.adb, libgnarl/s-osinte__qnx.adb: Likewise.
2370 * libgnarl/s-osinte__qnx.ads, libgnarl/s-osinte__rtems.adb: Likewise.
2371 * libgnarl/s-osinte__rtems.ads, libgnarl/s-osinte__solaris.adb: Likewise.
2372 * libgnarl/s-osinte__solaris.ads, libgnarl/s-osinte__vxworks.adb: Likewise.
2373 * libgnarl/s-osinte__vxworks.ads, libgnarl/s-osinte__x32.adb: Likewise.
2374 * libgnarl/s-proinf.adb, libgnarl/s-proinf.ads: Likewise.
2375 * libgnarl/s-putaim.adb, libgnarl/s-putaim.ads: Likewise.
2376 * libgnarl/s-qnx.ads, libgnarl/s-solita.adb: Likewise.
2377 * libgnarl/s-solita.ads, libgnarl/s-stusta.adb: Likewise.
2378 * libgnarl/s-stusta.ads, libgnarl/s-taasde.adb: Likewise.
2379 * libgnarl/s-taasde.ads, libgnarl/s-tadeca.adb: Likewise.
2380 * libgnarl/s-tadeca.ads, libgnarl/s-tadert.adb: Likewise.
2381 * libgnarl/s-tadert.ads, libgnarl/s-taenca.adb: Likewise.
2382 * libgnarl/s-taenca.ads, libgnarl/s-taprob.adb: Likewise.
2383 * libgnarl/s-taprob.ads, libgnarl/s-taprop.ads: Likewise.
2384 * libgnarl/s-taprop__dummy.adb, libgnarl/s-taprop__hpux-dce.adb: Likewise.
2385 * libgnarl/s-taprop__linux.adb, libgnarl/s-taprop__mingw.adb: Likewise.
2386 * libgnarl/s-taprop__posix.adb, libgnarl/s-taprop__qnx.adb: Likewise.
2387 * libgnarl/s-taprop__rtems.adb, libgnarl/s-taprop__solaris.adb: Likewise.
2388 * libgnarl/s-taprop__vxworks.adb, libgnarl/s-tarest.adb: Likewise.
2389 * libgnarl/s-tarest.ads, libgnarl/s-tasdeb.adb: Likewise.
2390 * libgnarl/s-tasdeb.ads, libgnarl/s-tasinf.adb: Likewise.
2391 * libgnarl/s-tasinf.ads, libgnarl/s-tasinf__linux.adb: Likewise.
2392 * libgnarl/s-tasinf__linux.ads, libgnarl/s-tasinf__mingw.adb: Likewise.
2393 * libgnarl/s-tasinf__mingw.ads, libgnarl/s-tasinf__solaris.adb: Likewise.
2394 * libgnarl/s-tasinf__solaris.ads, libgnarl/s-tasinf__vxworks.ads: Likewise.
2395 * libgnarl/s-tasini.adb, libgnarl/s-tasini.ads: Likewise.
2396 * libgnarl/s-taskin.adb, libgnarl/s-taskin.ads: Likewise.
2397 * libgnarl/s-taspri__dummy.ads, libgnarl/s-taspri__hpux-dce.ads: Likewise.
2398 * libgnarl/s-taspri__lynxos.ads, libgnarl/s-taspri__mingw.ads: Likewise.
2399 * libgnarl/s-taspri__posix-noaltstack.ads: Likewise.
2400 * libgnarl/s-taspri__posix.ads, libgnarl/s-taspri__solaris.ads: Likewise.
2401 * libgnarl/s-taspri__vxworks.ads, libgnarl/s-tasque.adb: Likewise.
2402 * libgnarl/s-tasque.ads, libgnarl/s-tasren.adb: Likewise.
2403 * libgnarl/s-tasren.ads, libgnarl/s-tasres.ads: Likewise.
2404 * libgnarl/s-tassta.adb, libgnarl/s-tassta.ads: Likewise.
2405 * libgnarl/s-tasuti.adb, libgnarl/s-tasuti.ads: Likewise.
2406 * libgnarl/s-tataat.adb, libgnarl/s-tataat.ads: Likewise.
2407 * libgnarl/s-tpinop.adb, libgnarl/s-tpinop.ads: Likewise.
2408 * libgnarl/s-tpoaal.adb, libgnarl/s-tpoben.adb: Likewise.
2409 * libgnarl/s-tpoben.ads, libgnarl/s-tpobmu.adb: Likewise.
2410 * libgnarl/s-tpobmu.ads, libgnarl/s-tpobop.adb: Likewise.
2411 * libgnarl/s-tpobop.ads, libgnarl/s-tpopmo.adb: Likewise.
2412 * libgnarl/s-tpopsp__posix-foreign.adb: Likewise.
2413 * libgnarl/s-tpopsp__posix.adb, libgnarl/s-tpopsp__solaris.adb: Likewise.
2414 * libgnarl/s-tpopsp__tls.adb, libgnarl/s-tpopsp__vxworks-rtp.adb: Likewise.
2415 * libgnarl/s-tpopsp__vxworks-tls.adb: Likewise.
2416 * libgnarl/s-tpopsp__vxworks.adb, libgnarl/s-tporft.adb: Likewise.
2417 * libgnarl/s-tposen.adb, libgnarl/s-tposen.ads: Likewise.
2418 * libgnarl/s-vxwext.adb, libgnarl/s-vxwext.ads: Likewise.
2419 * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
2420 * libgnarl/s-vxwext__kernel.adb, libgnarl/s-vxwext__kernel.ads: Likewise.
2421 * libgnarl/s-vxwext__rtp-smp.adb, libgnarl/s-vxwext__rtp.adb: Likewise.
2422 * libgnarl/s-vxwext__rtp.ads, libgnarl/s-vxwork__aarch64.ads: Likewise.
2423 * libgnarl/s-vxwork__arm.ads, libgnarl/s-vxwork__ppc.ads: Likewise.
2424 * libgnarl/s-vxwork__x86.ads, libgnarl/thread.c: Likewise.
2425 * libgnat/a-assert.adb, libgnat/a-assert.ads: Likewise.
2426 * libgnat/a-btgbso.adb, libgnat/a-btgbso.ads: Likewise.
2427 * libgnat/a-calari.adb, libgnat/a-calari.ads: Likewise.
2428 * libgnat/a-calcon.adb, libgnat/a-calcon.ads: Likewise.
2429 * libgnat/a-caldel.adb, libgnat/a-caldel.ads: Likewise.
2430 * libgnat/a-calend.adb, libgnat/a-calend.ads: Likewise.
2431 * libgnat/a-calfor.adb, libgnat/a-calfor.ads: Likewise.
2432 * libgnat/a-catizo.adb, libgnat/a-cbdlli.adb: Likewise.
2433 * libgnat/a-cbdlli.ads, libgnat/a-cbhama.adb: Likewise.
2434 * libgnat/a-cbhama.ads, libgnat/a-cbhase.adb: Likewise.
2435 * libgnat/a-cbhase.ads, libgnat/a-cbmutr.adb: Likewise.
2436 * libgnat/a-cbmutr.ads, libgnat/a-cborma.adb: Likewise.
2437 * libgnat/a-cborma.ads, libgnat/a-cborse.adb: Likewise.
2438 * libgnat/a-cborse.ads, libgnat/a-cbprqu.adb: Likewise.
2439 * libgnat/a-cbprqu.ads, libgnat/a-cbsyqu.adb: Likewise.
2440 * libgnat/a-cbsyqu.ads, libgnat/a-cdlili.adb: Likewise.
2441 * libgnat/a-cdlili.ads, libgnat/a-cfdlli.ads: Likewise.
2442 * libgnat/a-cfhama.ads, libgnat/a-cfhase.ads: Likewise.
2443 * libgnat/a-cfidll.ads, libgnat/a-cfinse.ads: Likewise.
2444 * libgnat/a-cfinve.ads, libgnat/a-cforma.ads: Likewise.
2445 * libgnat/a-cforse.ads, libgnat/a-cgaaso.adb: Likewise.
2446 * libgnat/a-cgaaso.ads, libgnat/a-cgarso.adb: Likewise.
2447 * libgnat/a-cgcaso.adb, libgnat/a-chacon.adb: Likewise.
2448 * libgnat/a-chacon.ads, libgnat/a-chahan.adb: Likewise.
2449 * libgnat/a-chahan.ads, libgnat/a-chlat9.ads: Likewise.
2450 * libgnat/a-chtgbk.adb, libgnat/a-chtgbk.ads: Likewise.
2451 * libgnat/a-chtgbo.adb, libgnat/a-chtgbo.ads: Likewise.
2452 * libgnat/a-chtgfk.adb, libgnat/a-chtgfk.ads: Likewise.
2453 * libgnat/a-chtgfo.adb, libgnat/a-chtgfo.ads: Likewise.
2454 * libgnat/a-chtgke.adb, libgnat/a-chtgke.ads: Likewise.
2455 * libgnat/a-chtgop.adb, libgnat/a-chtgop.ads: Likewise.
2456 * libgnat/a-chzla1.ads, libgnat/a-chzla9.ads: Likewise.
2457 * libgnat/a-cidlli.adb, libgnat/a-cidlli.ads: Likewise.
2458 * libgnat/a-cihama.adb, libgnat/a-cihama.ads: Likewise.
2459 * libgnat/a-cihase.adb, libgnat/a-cihase.ads: Likewise.
2460 * libgnat/a-cimutr.adb, libgnat/a-cimutr.ads: Likewise.
2461 * libgnat/a-ciorma.adb, libgnat/a-ciorma.ads: Likewise.
2462 * libgnat/a-ciormu.adb, libgnat/a-ciormu.ads: Likewise.
2463 * libgnat/a-ciorse.adb, libgnat/a-ciorse.ads: Likewise.
2464 * libgnat/a-clrefi.adb, libgnat/a-clrefi.ads: Likewise.
2465 * libgnat/a-coboho.adb, libgnat/a-coboho.ads: Likewise.
2466 * libgnat/a-cobove.adb, libgnat/a-cobove.ads: Likewise.
2467 * libgnat/a-cofove.ads, libgnat/a-cofuma.ads: Likewise.
2468 * libgnat/a-cofuse.ads, libgnat/a-cofuve.ads: Likewise.
2469 * libgnat/a-cogeso.adb, libgnat/a-cogeso.ads: Likewise.
2470 * libgnat/a-cohama.adb, libgnat/a-cohama.ads: Likewise.
2471 * libgnat/a-cohase.adb, libgnat/a-cohase.ads: Likewise.
2472 * libgnat/a-cohata.ads, libgnat/a-coinho.adb: Likewise.
2473 * libgnat/a-coinho.ads, libgnat/a-coinho__shared.adb: Likewise.
2474 * libgnat/a-coinho__shared.ads, libgnat/a-coinve.adb: Likewise.
2475 * libgnat/a-coinve.ads, libgnat/a-colien.adb: Likewise.
2476 * libgnat/a-colien.ads, libgnat/a-colire.adb: Likewise.
2477 * libgnat/a-colire.ads, libgnat/a-comlin.adb: Likewise.
2478 * libgnat/a-comlin.ads, libgnat/a-comutr.adb: Likewise.
2479 * libgnat/a-comutr.ads, libgnat/a-conhel.adb: Likewise.
2480 * libgnat/a-conhel.ads, libgnat/a-convec.adb: Likewise.
2481 * libgnat/a-convec.ads, libgnat/a-coorma.adb: Likewise.
2482 * libgnat/a-coorma.ads, libgnat/a-coormu.adb: Likewise.
2483 * libgnat/a-coormu.ads, libgnat/a-coorse.adb: Likewise.
2484 * libgnat/a-coorse.ads, libgnat/a-coprnu.adb: Likewise.
2485 * libgnat/a-coprnu.ads, libgnat/a-costso.adb: Likewise.
2486 * libgnat/a-costso.ads, libgnat/a-crbltr.ads: Likewise.
2487 * libgnat/a-crbtgk.adb, libgnat/a-crbtgk.ads: Likewise.
2488 * libgnat/a-crbtgo.adb, libgnat/a-crbtgo.ads: Likewise.
2489 * libgnat/a-crdlli.adb, libgnat/a-crdlli.ads: Likewise.
2490 * libgnat/a-csquin.ads, libgnat/a-cuprqu.adb: Likewise.
2491 * libgnat/a-cuprqu.ads, libgnat/a-cusyqu.adb: Likewise.
2492 * libgnat/a-cusyqu.ads, libgnat/a-cwila1.ads: Likewise.
2493 * libgnat/a-cwila9.ads, libgnat/a-decima.adb: Likewise.
2494 * libgnat/a-decima.ads, libgnat/a-decima__128.ads: Likewise.
2495 * libgnat/a-dhfina.adb, libgnat/a-dhfina.ads: Likewise.
2496 * libgnat/a-diocst.adb, libgnat/a-diocst.ads: Likewise.
2497 * libgnat/a-direct.adb, libgnat/a-direct.ads: Likewise.
2498 * libgnat/a-direio.adb, libgnat/a-direio.ads: Likewise.
2499 * libgnat/a-dirval.adb, libgnat/a-dirval.ads: Likewise.
2500 * libgnat/a-dirval__mingw.adb, libgnat/a-einuoc.adb: Likewise.
2501 * libgnat/a-einuoc.ads, libgnat/a-elchha.adb: Likewise.
2502 * libgnat/a-elchha.ads, libgnat/a-envvar.adb: Likewise.
2503 * libgnat/a-excach.adb, libgnat/a-except.adb: Likewise.
2504 * libgnat/a-except.ads, libgnat/a-exctra.adb: Likewise.
2505 * libgnat/a-exctra.ads, libgnat/a-exexda.adb: Likewise.
2506 * libgnat/a-exexpr.adb, libgnat/a-exextr.adb: Likewise.
2507 * libgnat/a-exstat.adb, libgnat/a-finali.adb: Likewise.
2508 * libgnat/a-finali.ads, libgnat/a-locale.adb: Likewise.
2509 * libgnat/a-locale.ads, libgnat/a-nagefl.ads: Likewise.
2510 * libgnat/a-naliop.ads, libgnat/a-naliop__nolibm.ads: Likewise.
2511 * libgnat/a-nallfl.ads, libgnat/a-nallfl__wraplf.ads: Likewise.
2512 * libgnat/a-nalofl.ads, libgnat/a-nalofl__simd.ads: Likewise.
2513 * libgnat/a-nashfl.ads, libgnat/a-nashfl__wraplf.ads: Likewise.
2514 * libgnat/a-nbnbig.adb, libgnat/a-nbnbin.adb: Likewise.
2515 * libgnat/a-nbnbin__gmp.adb, libgnat/a-nbnbre.adb: Likewise.
2516 * libgnat/a-ngcefu.adb, libgnat/a-ngcoar.adb: Likewise.
2517 * libgnat/a-ngcoty.adb, libgnat/a-ngcoty.ads: Likewise.
2518 * libgnat/a-ngelfu.adb, libgnat/a-ngelfu.ads: Likewise.
2519 * libgnat/a-ngrear.adb, libgnat/a-ngrear.ads: Likewise.
2520 * libgnat/a-nuauco.ads, libgnat/a-nuauco__x86.ads: Likewise.
2521 * libgnat/a-nuaufl.ads, libgnat/a-nuaufl__simd.ads: Likewise.
2522 * libgnat/a-nuaufl__wraplf.ads, libgnat/a-nudira.adb: Likewise.
2523 * libgnat/a-nudira.ads, libgnat/a-nuflra.adb: Likewise.
2524 * libgnat/a-nuflra.ads, libgnat/a-numaux.ads: Likewise.
2525 * libgnat/a-rbtgbk.adb, libgnat/a-rbtgbk.ads: Likewise.
2526 * libgnat/a-rbtgbo.adb, libgnat/a-rbtgbo.ads: Likewise.
2527 * libgnat/a-rbtgso.adb, libgnat/a-rbtgso.ads: Likewise.
2528 * libgnat/a-sbecin.adb, libgnat/a-sbecin.ads: Likewise.
2529 * libgnat/a-sbhcin.adb, libgnat/a-sbhcin.ads: Likewise.
2530 * libgnat/a-sblcin.adb, libgnat/a-sblcin.ads: Likewise.
2531 * libgnat/a-secain.adb, libgnat/a-secain.ads: Likewise.
2532 * libgnat/a-sequio.adb, libgnat/a-sequio.ads: Likewise.
2533 * libgnat/a-sfecin.ads, libgnat/a-sfhcin.ads: Likewise.
2534 * libgnat/a-sflcin.ads, libgnat/a-shcain.adb: Likewise.
2535 * libgnat/a-shcain.ads, libgnat/a-siocst.adb: Likewise.
2536 * libgnat/a-siocst.ads, libgnat/a-slcain.adb: Likewise.
2537 * libgnat/a-slcain.ads, libgnat/a-ssicst.adb: Likewise.
2538 * libgnat/a-ssicst.ads, libgnat/a-stboha.adb: Likewise.
2539 * libgnat/a-stbubo.adb, libgnat/a-stbubo.ads: Likewise.
2540 * libgnat/a-stbufi.adb, libgnat/a-stbufi.ads: Likewise.
2541 * libgnat/a-stbufo.adb, libgnat/a-stbufo.ads: Likewise.
2542 * libgnat/a-stbuun.adb, libgnat/a-stbuut.adb: Likewise.
2543 * libgnat/a-stbuut.ads, libgnat/a-stmaco.ads: Likewise.
2544 * libgnat/a-storio.adb, libgnat/a-strbou.adb: Likewise.
2545 * libgnat/a-strbou.ads, libgnat/a-stream.adb: Likewise.
2546 * libgnat/a-stream.ads, libgnat/a-strfix.adb: Likewise.
2547 * libgnat/a-strhas.adb, libgnat/a-strmap.adb: Likewise.
2548 * libgnat/a-strmap.ads, libgnat/a-strsea.adb: Likewise.
2549 * libgnat/a-strsea.ads, libgnat/a-strsto.ads: Likewise.
2550 * libgnat/a-strsup.adb, libgnat/a-strsup.ads: Likewise.
2551 * libgnat/a-strunb.adb, libgnat/a-strunb.ads: Likewise.
2552 * libgnat/a-strunb__shared.adb, libgnat/a-strunb__shared.ads: Likewise.
2553 * libgnat/a-ststbo.adb, libgnat/a-ststbo.ads: Likewise.
2554 * libgnat/a-ststio.adb, libgnat/a-ststio.ads: Likewise.
2555 * libgnat/a-ststun.adb, libgnat/a-ststun.ads: Likewise.
2556 * libgnat/a-sttebu.adb, libgnat/a-stunau.adb: Likewise.
2557 * libgnat/a-stunau.ads, libgnat/a-stunau__shared.adb: Likewise.
2558 * libgnat/a-stunha.adb, libgnat/a-stuten.adb: Likewise.
2559 * libgnat/a-stwibo.adb, libgnat/a-stwibo.ads: Likewise.
2560 * libgnat/a-stwifi.adb, libgnat/a-stwiha.adb: Likewise.
2561 * libgnat/a-stwima.adb, libgnat/a-stwima.ads: Likewise.
2562 * libgnat/a-stwise.adb, libgnat/a-stwise.ads: Likewise.
2563 * libgnat/a-stwisu.adb, libgnat/a-stwisu.ads: Likewise.
2564 * libgnat/a-stwiun.adb, libgnat/a-stwiun.ads: Likewise.
2565 * libgnat/a-stwiun__shared.adb, libgnat/a-stwiun__shared.ads: Likewise.
2566 * libgnat/a-stzbou.adb, libgnat/a-stzbou.ads: Likewise.
2567 * libgnat/a-stzfix.adb, libgnat/a-stzhas.adb: Likewise.
2568 * libgnat/a-stzmap.adb, libgnat/a-stzmap.ads: Likewise.
2569 * libgnat/a-stzsea.adb, libgnat/a-stzsea.ads: Likewise.
2570 * libgnat/a-stzsup.adb, libgnat/a-stzsup.ads: Likewise.
2571 * libgnat/a-stzunb.adb, libgnat/a-stzunb.ads: Likewise.
2572 * libgnat/a-stzunb__shared.adb, libgnat/a-stzunb__shared.ads: Likewise.
2573 * libgnat/a-suecin.adb, libgnat/a-suecin.ads: Likewise.
2574 * libgnat/a-suenco.adb, libgnat/a-suenst.adb: Likewise.
2575 * libgnat/a-suewst.adb, libgnat/a-suezst.adb: Likewise.
2576 * libgnat/a-suhcin.adb, libgnat/a-suhcin.ads: Likewise.
2577 * libgnat/a-sulcin.adb, libgnat/a-sulcin.ads: Likewise.
2578 * libgnat/a-suteio.adb, libgnat/a-suteio.ads: Likewise.
2579 * libgnat/a-suteio__shared.adb, libgnat/a-swbwha.adb: Likewise.
2580 * libgnat/a-swmwco.ads, libgnat/a-swunau.adb: Likewise.
2581 * libgnat/a-swunau.ads, libgnat/a-swunau__shared.adb: Likewise.
2582 * libgnat/a-swuwha.adb, libgnat/a-swuwti.adb: Likewise.
2583 * libgnat/a-swuwti.ads, libgnat/a-swuwti__shared.adb: Likewise.
2584 * libgnat/a-szbzha.adb, libgnat/a-szmzco.ads: Likewise.
2585 * libgnat/a-szunau.adb, libgnat/a-szunau.ads: Likewise.
2586 * libgnat/a-szunau__shared.adb, libgnat/a-szuzha.adb: Likewise.
2587 * libgnat/a-szuzti.adb, libgnat/a-szuzti.ads: Likewise.
2588 * libgnat/a-szuzti__shared.adb, libgnat/a-tags.adb: Likewise.
2589 * libgnat/a-tags.ads, libgnat/a-teioed.adb, libgnat/a-teioed.ads: Likewise.
2590 * libgnat/a-textio.adb, libgnat/a-textio.ads: Likewise.
2591 * libgnat/a-tiboio.adb, libgnat/a-ticoau.adb: Likewise.
2592 * libgnat/a-ticoau.ads, libgnat/a-ticoio.adb: Likewise.
2593 * libgnat/a-ticoio.ads, libgnat/a-tideau.adb: Likewise.
2594 * libgnat/a-tideau.ads, libgnat/a-tideio.adb: Likewise.
2595 * libgnat/a-tideio.ads, libgnat/a-tideio__128.adb: Likewise.
2596 * libgnat/a-tienau.adb, libgnat/a-tienau.ads: Likewise.
2597 * libgnat/a-tienio.adb, libgnat/a-tifiau.adb: Likewise.
2598 * libgnat/a-tifiau.ads, libgnat/a-tifiio.adb: Likewise.
2599 * libgnat/a-tifiio__128.adb, libgnat/a-tiflau.adb: Likewise.
2600 * libgnat/a-tiflau.ads, libgnat/a-tiflio.adb: Likewise.
2601 * libgnat/a-tiflio.ads, libgnat/a-tigeau.adb: Likewise.
2602 * libgnat/a-tigeau.ads, libgnat/a-tigeli.adb: Likewise.
2603 * libgnat/a-tiinau.adb, libgnat/a-tiinau.ads: Likewise.
2604 * libgnat/a-tiinio.adb, libgnat/a-tiinio.ads: Likewise.
2605 * libgnat/a-tiinio__128.adb, libgnat/a-timoio.adb: Likewise.
2606 * libgnat/a-timoio.ads, libgnat/a-timoio__128.adb: Likewise.
2607 * libgnat/a-tiocst.adb, libgnat/a-tiocst.ads: Likewise.
2608 * libgnat/a-tirsfi.adb, libgnat/a-tirsfi.ads: Likewise.
2609 * libgnat/a-titest.adb, libgnat/a-undesu.adb: Likewise.
2610 * libgnat/a-wichha.adb, libgnat/a-wichun.adb: Likewise.
2611 * libgnat/a-wichun.ads, libgnat/a-witeio.adb: Likewise.
2612 * libgnat/a-witeio.ads, libgnat/a-wrstfi.adb: Likewise.
2613 * libgnat/a-wrstfi.ads, libgnat/a-wtcoau.adb: Likewise.
2614 * libgnat/a-wtcoau.ads, libgnat/a-wtcoio.adb: Likewise.
2615 * libgnat/a-wtcstr.adb, libgnat/a-wtcstr.ads: Likewise.
2616 * libgnat/a-wtdeau.adb, libgnat/a-wtdeau.ads: Likewise.
2617 * libgnat/a-wtdeio.adb, libgnat/a-wtdeio__128.adb: Likewise.
2618 * libgnat/a-wtedit.adb, libgnat/a-wtedit.ads: Likewise.
2619 * libgnat/a-wtenau.adb, libgnat/a-wtenau.ads: Likewise.
2620 * libgnat/a-wtenio.adb, libgnat/a-wtfiau.adb: Likewise.
2621 * libgnat/a-wtfiau.ads, libgnat/a-wtfiio.adb: Likewise.
2622 * libgnat/a-wtfiio__128.adb, libgnat/a-wtflau.adb: Likewise.
2623 * libgnat/a-wtflau.ads, libgnat/a-wtflio.adb: Likewise.
2624 * libgnat/a-wtgeau.adb, libgnat/a-wtgeau.ads: Likewise.
2625 * libgnat/a-wtinau.adb, libgnat/a-wtinau.ads: Likewise.
2626 * libgnat/a-wtinio.adb, libgnat/a-wtinio__128.adb: Likewise.
2627 * libgnat/a-wtmoio.adb, libgnat/a-wtmoio.ads: Likewise.
2628 * libgnat/a-wtmoio__128.adb, libgnat/a-wttest.adb: Likewise.
2629 * libgnat/a-wwboio.adb, libgnat/a-zchhan.adb: Likewise.
2630 * libgnat/a-zchuni.adb, libgnat/a-zchuni.ads: Likewise.
2631 * libgnat/a-zrstfi.adb, libgnat/a-zrstfi.ads: Likewise.
2632 * libgnat/a-ztcoau.adb, libgnat/a-ztcoio.adb: Likewise.
2633 * libgnat/a-ztcstr.adb, libgnat/a-ztcstr.ads: Likewise.
2634 * libgnat/a-ztdeau.adb, libgnat/a-ztdeau.ads: Likewise.
2635 * libgnat/a-ztdeio.adb, libgnat/a-ztdeio__128.adb: Likewise.
2636 * libgnat/a-ztedit.adb, libgnat/a-ztedit.ads: Likewise.
2637 * libgnat/a-ztenau.adb, libgnat/a-ztenau.ads: Likewise.
2638 * libgnat/a-ztenio.adb, libgnat/a-ztexio.adb: Likewise.
2639 * libgnat/a-ztexio.ads, libgnat/a-ztfiau.adb: Likewise.
2640 * libgnat/a-ztfiau.ads, libgnat/a-ztfiio.adb: Likewise.
2641 * libgnat/a-ztfiio__128.adb, libgnat/a-ztflau.adb: Likewise.
2642 * libgnat/a-ztflau.ads, libgnat/a-ztflio.adb: Likewise.
2643 * libgnat/a-ztgeau.adb, libgnat/a-ztgeau.ads: Likewise.
2644 * libgnat/a-ztinau.adb, libgnat/a-ztinau.ads: Likewise.
2645 * libgnat/a-ztinio.adb, libgnat/a-ztinio__128.adb: Likewise.
2646 * libgnat/a-ztmoio.adb, libgnat/a-ztmoio__128.adb: Likewise.
2647 * libgnat/a-zttest.adb, libgnat/a-zzboio.adb: Likewise.
2648 * libgnat/g-allein.ads, libgnat/g-alleve.adb: Likewise.
2649 * libgnat/g-alleve.ads, libgnat/g-alleve__hard.adb: Likewise.
2650 * libgnat/g-alleve__hard.ads, libgnat/g-altcon.adb: Likewise.
2651 * libgnat/g-altcon.ads, libgnat/g-altive.ads: Likewise.
2652 * libgnat/g-alveop.adb, libgnat/g-alveop.ads: Likewise.
2653 * libgnat/g-alvety.ads, libgnat/g-alvevi.ads: Likewise.
2654 * libgnat/g-arrspl.adb, libgnat/g-arrspl.ads, libgnat/g-awk.adb: Likewise.
2655 * libgnat/g-awk.ads, libgnat/g-binenv.adb, libgnat/g-binenv.ads: Likewise.
2656 * libgnat/g-binsea.adb, libgnat/g-binsea.ads: Likewise.
2657 * libgnat/g-brapre.ads, libgnat/g-bubsor.adb: Likewise.
2658 * libgnat/g-bubsor.ads, libgnat/g-busora.adb: Likewise.
2659 * libgnat/g-busora.ads, libgnat/g-busorg.adb: Likewise.
2660 * libgnat/g-busorg.ads, libgnat/g-byorma.adb: Likewise.
2661 * libgnat/g-byorma.ads, libgnat/g-bytswa.adb: Likewise.
2662 * libgnat/g-bytswa.ads, libgnat/g-calend.adb: Likewise.
2663 * libgnat/g-calend.ads, libgnat/g-casuti.adb: Likewise.
2664 * libgnat/g-casuti.ads, libgnat/g-catiio.adb: Likewise.
2665 * libgnat/g-catiio.ads, libgnat/g-cgi.adb, libgnat/g-cgi.ads: Likewise.
2666 * libgnat/g-cgicoo.adb, libgnat/g-cgicoo.ads: Likewise.
2667 * libgnat/g-cgideb.adb, libgnat/g-cgideb.ads: Likewise.
2668 * libgnat/g-comlin.adb, libgnat/g-comlin.ads: Likewise.
2669 * libgnat/g-comver.adb, libgnat/g-comver.ads: Likewise.
2670 * libgnat/g-cppexc.adb, libgnat/g-cppexc.ads, libgnat/g-crc32.adb: Likewise.
2671 * libgnat/g-crc32.ads, libgnat/g-ctrl_c.adb, libgnat/g-ctrl_c.ads: Likewise.
2672 * libgnat/g-curexc.ads, libgnat/g-debpoo.adb: Likewise.
2673 * libgnat/g-debpoo.ads, libgnat/g-debuti.adb: Likewise.
2674 * libgnat/g-debuti.ads, libgnat/g-decstr.adb: Likewise.
2675 * libgnat/g-decstr.ads, libgnat/g-deutst.ads: Likewise.
2676 * libgnat/g-diopit.adb, libgnat/g-diopit.ads: Likewise.
2677 * libgnat/g-dirope.adb, libgnat/g-dirope.ads: Likewise.
2678 * libgnat/g-dynhta.adb, libgnat/g-dynhta.ads: Likewise.
2679 * libgnat/g-dyntab.adb, libgnat/g-dyntab.ads: Likewise.
2680 * libgnat/g-eacodu.adb, libgnat/g-encstr.adb: Likewise.
2681 * libgnat/g-encstr.ads, libgnat/g-enutst.ads: Likewise.
2682 * libgnat/g-excact.adb, libgnat/g-excact.ads: Likewise.
2683 * libgnat/g-except.ads, libgnat/g-exctra.adb: Likewise.
2684 * libgnat/g-exctra.ads, libgnat/g-expect.adb: Likewise.
2685 * libgnat/g-expect.ads, libgnat/g-exptty.adb: Likewise.
2686 * libgnat/g-exptty.ads, libgnat/g-flocon.ads: Likewise.
2687 * libgnat/g-forstr.adb, libgnat/g-forstr.ads: Likewise.
2688 * libgnat/g-gfmafu.ads, libgnat/g-graphs.adb: Likewise.
2689 * libgnat/g-graphs.ads, libgnat/g-heasor.adb: Likewise.
2690 * libgnat/g-heasor.ads, libgnat/g-hesora.adb: Likewise.
2691 * libgnat/g-hesora.ads, libgnat/g-hesorg.adb: Likewise.
2692 * libgnat/g-hesorg.ads, libgnat/g-htable.adb: Likewise.
2693 * libgnat/g-htable.ads, libgnat/g-io.adb, libgnat/g-io.ads: Likewise.
2694 * libgnat/g-io_aux.adb, libgnat/g-io_aux.ads, libgnat/g-lists.adb: Likewise.
2695 * libgnat/g-lists.ads, libgnat/g-locfil.adb, libgnat/g-locfil.ads: Likewise.
2696 * libgnat/g-mbdira.adb, libgnat/g-mbdira.ads: Likewise.
2697 * libgnat/g-mbflra.adb, libgnat/g-mbflra.ads, libgnat/g-md5.adb: Likewise.
2698 * libgnat/g-md5.ads, libgnat/g-memdum.adb, libgnat/g-memdum.ads: Likewise.
2699 * libgnat/g-moreex.adb, libgnat/g-moreex.ads: Likewise.
2700 * libgnat/g-os_lib.adb, libgnat/g-os_lib.ads: Likewise.
2701 * libgnat/g-pehage.adb, libgnat/g-pehage.ads: Likewise.
2702 * libgnat/g-rannum.adb, libgnat/g-rannum.ads: Likewise.
2703 * libgnat/g-regexp.adb, libgnat/g-regexp.ads: Likewise.
2704 * libgnat/g-regist.adb, libgnat/g-regist.ads: Likewise.
2705 * libgnat/g-regpat.adb, libgnat/g-regpat.ads: Likewise.
2706 * libgnat/g-rewdat.adb, libgnat/g-rewdat.ads: Likewise.
2707 * libgnat/g-sechas.adb, libgnat/g-sechas.ads: Likewise.
2708 * libgnat/g-sehamd.adb, libgnat/g-sehamd.ads: Likewise.
2709 * libgnat/g-sehash.adb, libgnat/g-sehash.ads: Likewise.
2710 * libgnat/g-sercom.adb, libgnat/g-sercom.ads: Likewise.
2711 * libgnat/g-sercom__linux.adb, libgnat/g-sercom__mingw.adb: Likewise.
2712 * libgnat/g-sestin.ads, libgnat/g-sets.adb, libgnat/g-sets.ads: Likewise.
2713 * libgnat/g-sha1.adb, libgnat/g-sha1.ads, libgnat/g-sha224.ads: Likewise.
2714 * libgnat/g-sha256.ads, libgnat/g-sha384.ads: Likewise.
2715 * libgnat/g-sha512.ads, libgnat/g-shsh32.adb: Likewise.
2716 * libgnat/g-shsh32.ads, libgnat/g-shsh64.adb: Likewise.
2717 * libgnat/g-shsh64.ads, libgnat/g-shshco.adb: Likewise.
2718 * libgnat/g-shshco.ads, libgnat/g-soccon.ads: Likewise.
2719 * libgnat/g-socket.adb, libgnat/g-socket.ads: Likewise.
2720 * libgnat/g-socket__dummy.adb, libgnat/g-socket__dummy.ads: Likewise.
2721 * libgnat/g-socpol.adb, libgnat/g-socpol.ads: Likewise.
2722 * libgnat/g-socpol__dummy.adb, libgnat/g-socpol__dummy.ads: Likewise.
2723 * libgnat/g-socthi.adb, libgnat/g-socthi.ads: Likewise.
2724 * libgnat/g-socthi__dummy.adb, libgnat/g-socthi__dummy.ads: Likewise.
2725 * libgnat/g-socthi__mingw.adb, libgnat/g-socthi__mingw.ads: Likewise.
2726 * libgnat/g-socthi__vxworks.adb, libgnat/g-socthi__vxworks.ads: Likewise.
2727 * libgnat/g-soliop.ads, libgnat/g-soliop__lynxos.ads: Likewise.
2728 * libgnat/g-soliop__mingw.ads, libgnat/g-soliop__qnx.ads: Likewise.
2729 * libgnat/g-soliop__solaris.ads, libgnat/g-sopowa.adb: Likewise.
2730 * libgnat/g-sopowa__mingw.adb, libgnat/g-sopowa__posix.adb: Likewise.
2731 * libgnat/g-sothco.adb, libgnat/g-sothco.ads: Likewise.
2732 * libgnat/g-sothco__dummy.adb, libgnat/g-sothco__dummy.ads: Likewise.
2733 * libgnat/g-souinf.ads, libgnat/g-spchge.adb: Likewise.
2734 * libgnat/g-spchge.ads, libgnat/g-speche.adb: Likewise.
2735 * libgnat/g-speche.ads, libgnat/g-spipat.adb: Likewise.
2736 * libgnat/g-spipat.ads, libgnat/g-spitbo.adb: Likewise.
2737 * libgnat/g-spitbo.ads, libgnat/g-spogwa.adb: Likewise.
2738 * libgnat/g-spogwa.ads, libgnat/g-sptabo.ads: Likewise.
2739 * libgnat/g-sptain.ads, libgnat/g-sptavs.ads, libgnat/g-sse.ads: Likewise.
2740 * libgnat/g-ssvety.ads, libgnat/g-sthcso.adb: Likewise.
2741 * libgnat/g-stheme.adb, libgnat/g-strhas.ads: Likewise.
2742 * libgnat/g-string.adb, libgnat/g-string.ads: Likewise.
2743 * libgnat/g-strspl.ads, libgnat/g-stseme.adb: Likewise.
2744 * libgnat/g-stsifd__sockets.adb, libgnat/g-table.adb: Likewise.
2745 * libgnat/g-table.ads, libgnat/g-tasloc.adb, libgnat/g-tasloc.ads: Likewise.
2746 * libgnat/g-timsta.adb, libgnat/g-timsta.ads: Likewise.
2747 * libgnat/g-traceb.adb, libgnat/g-traceb.ads: Likewise.
2748 * libgnat/g-trasym.adb, libgnat/g-trasym.ads, libgnat/g-tty.adb: Likewise.
2749 * libgnat/g-tty.ads, libgnat/g-u3spch.adb, libgnat/g-u3spch.ads: Likewise.
2750 * libgnat/g-utf_32.adb, libgnat/g-utf_32.ads: Likewise.
2751 * libgnat/g-wispch.adb, libgnat/g-wispch.ads: Likewise.
2752 * libgnat/g-wistsp.ads, libgnat/g-zspche.adb: Likewise.
2753 * libgnat/g-zspche.ads, libgnat/g-zstspl.ads, libgnat/gnat.ads: Likewise.
2754 * libgnat/i-c.adb, libgnat/i-cexten.ads: Likewise.
2755 * libgnat/i-cexten__128.ads, libgnat/i-cobol.adb: Likewise.
2756 * libgnat/i-cobol.ads, libgnat/i-cpoint.adb, libgnat/i-cpoint.ads: Likewise.
2757 * libgnat/i-cstrea.adb, libgnat/i-cstrea.ads: Likewise.
2758 * libgnat/i-cstrin.adb, libgnat/i-cstrin.ads: Likewise.
2759 * libgnat/i-fortra.adb, libgnat/i-pacdec.adb: Likewise.
2760 * libgnat/i-pacdec.ads, libgnat/i-vxwoio.adb: Likewise.
2761 * libgnat/i-vxwoio.ads, libgnat/i-vxwork.ads: Likewise.
2762 * libgnat/i-vxwork__x86.ads, libgnat/interfac.ads: Likewise.
2763 * libgnat/interfac__2020.ads, libgnat/memtrack.adb: Likewise.
2764 * libgnat/s-addima.adb, libgnat/s-addima.ads: Likewise.
2765 * libgnat/s-addope.adb, libgnat/s-addope.ads: Likewise.
2766 * libgnat/s-aoinar.adb, libgnat/s-aoinar.ads: Likewise.
2767 * libgnat/s-aomoar.adb, libgnat/s-aomoar.ads: Likewise.
2768 * libgnat/s-aotase.adb, libgnat/s-aotase.ads: Likewise.
2769 * libgnat/s-aridou.adb, libgnat/s-aridou.ads: Likewise.
2770 * libgnat/s-arit128.adb, libgnat/s-arit128.ads: Likewise.
2771 * libgnat/s-arit32.adb, libgnat/s-arit32.ads: Likewise.
2772 * libgnat/s-arit64.adb, libgnat/s-arit64.ads: Likewise.
2773 * libgnat/s-assert.adb, libgnat/s-assert.ads: Likewise.
2774 * libgnat/s-atacco.adb, libgnat/s-atacco.ads: Likewise.
2775 * libgnat/s-atocou.adb, libgnat/s-atocou.ads: Likewise.
2776 * libgnat/s-atocou__builtin.adb, libgnat/s-atoope.ads: Likewise.
2777 * libgnat/s-atopex.adb, libgnat/s-atopex.ads: Likewise.
2778 * libgnat/s-atopri.adb, libgnat/s-atopri.ads: Likewise.
2779 * libgnat/s-auxdec.adb, libgnat/s-auxdec.ads: Likewise.
2780 * libgnat/s-bignum.adb, libgnat/s-bignum.ads: Likewise.
2781 * libgnat/s-bitfie.ads, libgnat/s-bitops.adb: Likewise.
2782 * libgnat/s-bitops.ads, libgnat/s-bituti.adb: Likewise.
2783 * libgnat/s-bituti.ads, libgnat/s-boarop.ads: Likewise.
2784 * libgnat/s-boustr.adb, libgnat/s-boustr.ads: Likewise.
2785 * libgnat/s-bytswa.ads, libgnat/s-carsi8.adb: Likewise.
2786 * libgnat/s-carsi8.ads, libgnat/s-carun8.adb: Likewise.
2787 * libgnat/s-carun8.ads, libgnat/s-casi128.adb: Likewise.
2788 * libgnat/s-casi128.ads, libgnat/s-casi16.adb: Likewise.
2789 * libgnat/s-casi16.ads, libgnat/s-casi32.adb: Likewise.
2790 * libgnat/s-casi32.ads, libgnat/s-casi64.adb: Likewise.
2791 * libgnat/s-casi64.ads, libgnat/s-casuti.adb: Likewise.
2792 * libgnat/s-casuti.ads, libgnat/s-caun128.adb: Likewise.
2793 * libgnat/s-caun128.ads, libgnat/s-caun16.adb: Likewise.
2794 * libgnat/s-caun16.ads, libgnat/s-caun32.adb: Likewise.
2795 * libgnat/s-caun32.ads, libgnat/s-caun64.adb: Likewise.
2796 * libgnat/s-caun64.ads, libgnat/s-chepoo.ads: Likewise.
2797 * libgnat/s-commun.adb, libgnat/s-commun.ads: Likewise.
2798 * libgnat/s-conca2.adb, libgnat/s-conca2.ads: Likewise.
2799 * libgnat/s-conca3.adb, libgnat/s-conca3.ads: Likewise.
2800 * libgnat/s-conca4.adb, libgnat/s-conca4.ads: Likewise.
2801 * libgnat/s-conca5.adb, libgnat/s-conca5.ads: Likewise.
2802 * libgnat/s-conca6.adb, libgnat/s-conca6.ads: Likewise.
2803 * libgnat/s-conca7.adb, libgnat/s-conca7.ads: Likewise.
2804 * libgnat/s-conca8.adb, libgnat/s-conca8.ads: Likewise.
2805 * libgnat/s-conca9.adb, libgnat/s-conca9.ads, libgnat/s-crc32.adb: Likewise.
2806 * libgnat/s-crc32.ads, libgnat/s-crtl.ads, libgnat/s-dfmkio.ads: Likewise.
2807 * libgnat/s-dfmopr.ads, libgnat/s-dgmgop.ads: Likewise.
2808 * libgnat/s-diflio.adb, libgnat/s-diflio.ads: Likewise.
2809 * libgnat/s-diflmk.ads, libgnat/s-digemk.ads: Likewise.
2810 * libgnat/s-diinio.adb, libgnat/s-diinio.ads: Likewise.
2811 * libgnat/s-dilomk.ads, libgnat/s-dim.ads, libgnat/s-dimkio.ads: Likewise.
2812 * libgnat/s-dimmks.ads, libgnat/s-direio.adb: Likewise.
2813 * libgnat/s-direio.ads, libgnat/s-dlmkio.ads: Likewise.
2814 * libgnat/s-dlmopr.ads, libgnat/s-dmotpr.ads: Likewise.
2815 * libgnat/s-dorepr.adb, libgnat/s-dorepr__fma.adb: Likewise.
2816 * libgnat/s-dourea.adb, libgnat/s-dourea.ads: Likewise.
2817 * libgnat/s-dsaser.ads, libgnat/s-dwalin.adb: Likewise.
2818 * libgnat/s-dwalin.ads, libgnat/s-elaall.adb: Likewise.
2819 * libgnat/s-elaall.ads, libgnat/s-excdeb.adb: Likewise.
2820 * libgnat/s-excdeb.ads, libgnat/s-except.adb: Likewise.
2821 * libgnat/s-except.ads, libgnat/s-excmac__arm.adb: Likewise.
2822 * libgnat/s-excmac__arm.ads, libgnat/s-excmac__gcc.adb: Likewise.
2823 * libgnat/s-excmac__gcc.ads, libgnat/s-exctab.adb: Likewise.
2824 * libgnat/s-exctab.ads, libgnat/s-exctra.adb: Likewise.
2825 * libgnat/s-exctra.ads, libgnat/s-exnflt.ads: Likewise.
2826 * libgnat/s-exnint.adb, libgnat/s-exnint.ads: Likewise.
2827 * libgnat/s-exnlfl.ads, libgnat/s-exnllf.adb: Likewise.
2828 * libgnat/s-exnllf.ads, libgnat/s-exnlli.adb: Likewise.
2829 * libgnat/s-exnlli.ads, libgnat/s-exnllli.ads: Likewise.
2830 * libgnat/s-expint.adb, libgnat/s-expint.ads: Likewise.
2831 * libgnat/s-explli.adb, libgnat/s-explli.ads: Likewise.
2832 * libgnat/s-expllli.ads, libgnat/s-explllu.ads: Likewise.
2833 * libgnat/s-expllu.adb, libgnat/s-expllu.ads: Likewise.
2834 * libgnat/s-expmod.adb, libgnat/s-expmod.ads: Likewise.
2835 * libgnat/s-exponn.adb, libgnat/s-exponn.ads: Likewise.
2836 * libgnat/s-exponr.adb, libgnat/s-exponr.ads: Likewise.
2837 * libgnat/s-expont.adb, libgnat/s-expont.ads: Likewise.
2838 * libgnat/s-exponu.adb, libgnat/s-exponu.ads: Likewise.
2839 * libgnat/s-expuns.adb, libgnat/s-expuns.ads: Likewise.
2840 * libgnat/s-fatflt.ads, libgnat/s-fatgen.adb: Likewise.
2841 * libgnat/s-fatgen.ads, libgnat/s-fatlfl.ads: Likewise.
2842 * libgnat/s-fatllf.ads, libgnat/s-ficobl.ads: Likewise.
2843 * libgnat/s-filatt.ads, libgnat/s-fileio.adb: Likewise.
2844 * libgnat/s-fileio.ads, libgnat/s-finmas.adb: Likewise.
2845 * libgnat/s-finmas.ads, libgnat/s-finroo.adb: Likewise.
2846 * libgnat/s-finroo.ads, libgnat/s-flocon.adb: Likewise.
2847 * libgnat/s-flocon.ads, libgnat/s-flocon__none.adb: Likewise.
2848 * libgnat/s-fode128.ads, libgnat/s-fode32.ads: Likewise.
2849 * libgnat/s-fode64.ads, libgnat/s-fofi128.ads: Likewise.
2850 * libgnat/s-fofi32.ads, libgnat/s-fofi64.ads: Likewise.
2851 * libgnat/s-fore_d.adb, libgnat/s-fore_d.ads: Likewise.
2852 * libgnat/s-fore_f.adb, libgnat/s-fore_f.ads: Likewise.
2853 * libgnat/s-forrea.adb, libgnat/s-forrea.ads: Likewise.
2854 * libgnat/s-gearop.adb, libgnat/s-gearop.ads: Likewise.
2855 * libgnat/s-genbig.adb, libgnat/s-genbig.ads: Likewise.
2856 * libgnat/s-geveop.adb, libgnat/s-geveop.ads: Likewise.
2857 * libgnat/s-gloloc.adb, libgnat/s-gloloc.ads: Likewise.
2858 * libgnat/s-gloloc__mingw.adb, libgnat/s-htable.adb: Likewise.
2859 * libgnat/s-htable.ads, libgnat/s-imageb.adb: Likewise.
2860 * libgnat/s-imageb.ads, libgnat/s-imaged.adb: Likewise.
2861 * libgnat/s-imaged.ads, libgnat/s-imagef.adb: Likewise.
2862 * libgnat/s-imagef.ads, libgnat/s-imagei.adb: Likewise.
2863 * libgnat/s-imagei.ads, libgnat/s-imagen.adb: Likewise.
2864 * libgnat/s-imagen.ads, libgnat/s-imager.adb: Likewise.
2865 * libgnat/s-imager.ads, libgnat/s-imageu.adb: Likewise.
2866 * libgnat/s-imageu.ads, libgnat/s-imagew.adb: Likewise.
2867 * libgnat/s-imagew.ads, libgnat/s-imde128.ads: Likewise.
2868 * libgnat/s-imde32.ads, libgnat/s-imde64.ads: Likewise.
2869 * libgnat/s-imen16.ads, libgnat/s-imen32.ads: Likewise.
2870 * libgnat/s-imenu8.ads, libgnat/s-imfi128.ads: Likewise.
2871 * libgnat/s-imfi32.ads, libgnat/s-imfi64.ads: Likewise.
2872 * libgnat/s-imgbiu.adb, libgnat/s-imgbiu.ads: Likewise.
2873 * libgnat/s-imgboo.adb, libgnat/s-imgboo.ads: Likewise.
2874 * libgnat/s-imgcha.adb, libgnat/s-imgcha.ads: Likewise.
2875 * libgnat/s-imgflt.ads, libgnat/s-imgint.adb: Likewise.
2876 * libgnat/s-imgint.ads, libgnat/s-imglfl.ads: Likewise.
2877 * libgnat/s-imgllb.adb, libgnat/s-imgllb.ads: Likewise.
2878 * libgnat/s-imgllf.ads, libgnat/s-imglli.adb: Likewise.
2879 * libgnat/s-imglli.ads, libgnat/s-imglllb.ads: Likewise.
2880 * libgnat/s-imgllli.ads, libgnat/s-imglllu.ads: Likewise.
2881 * libgnat/s-imglllw.ads, libgnat/s-imgllu.adb: Likewise.
2882 * libgnat/s-imgllu.ads, libgnat/s-imgllw.adb: Likewise.
2883 * libgnat/s-imgllw.ads, libgnat/s-imgrea.adb: Likewise.
2884 * libgnat/s-imgrea.ads, libgnat/s-imguns.adb: Likewise.
2885 * libgnat/s-imguns.ads, libgnat/s-imguti.adb: Likewise.
2886 * libgnat/s-imguti.ads, libgnat/s-imgwch.adb: Likewise.
2887 * libgnat/s-imgwch.ads, libgnat/s-imgwiu.adb: Likewise.
2888 * libgnat/s-imgwiu.ads, libgnat/s-io.adb, libgnat/s-io.ads: Likewise.
2889 * libgnat/s-llflex.ads, libgnat/s-maccod.ads: Likewise.
2890 * libgnat/s-mantis.adb, libgnat/s-mantis.ads: Likewise.
2891 * libgnat/s-mastop.adb, libgnat/s-mastop.ads: Likewise.
2892 * libgnat/s-memcop.ads, libgnat/s-memory.adb: Likewise.
2893 * libgnat/s-memory.ads, libgnat/s-mmap.adb, libgnat/s-mmap.ads: Likewise.
2894 * libgnat/s-mmauni__long.ads, libgnat/s-mmosin__mingw.adb: Likewise.
2895 * libgnat/s-mmosin__mingw.ads, libgnat/s-mmosin__unix.adb: Likewise.
2896 * libgnat/s-mmosin__unix.ads, libgnat/s-multip.adb: Likewise.
2897 * libgnat/s-objrea.adb, libgnat/s-objrea.ads: Likewise.
2898 * libgnat/s-optide.adb, libgnat/s-os_lib.adb: Likewise.
2899 * libgnat/s-os_lib.ads, libgnat/s-osprim.ads: Likewise.
2900 * libgnat/s-osprim__darwin.adb, libgnat/s-osprim__lynxos.ads: Likewise.
2901 * libgnat/s-osprim__mingw.adb, libgnat/s-osprim__posix.adb: Likewise.
2902 * libgnat/s-osprim__posix2008.adb, libgnat/s-osprim__rtems.adb: Likewise.
2903 * libgnat/s-osprim__solaris.adb, libgnat/s-osprim__unix.adb: Likewise.
2904 * libgnat/s-osprim__x32.adb, libgnat/s-pack03.adb: Likewise.
2905 * libgnat/s-pack03.ads, libgnat/s-pack05.adb: Likewise.
2906 * libgnat/s-pack05.ads, libgnat/s-pack06.adb: Likewise.
2907 * libgnat/s-pack06.ads, libgnat/s-pack07.adb: Likewise.
2908 * libgnat/s-pack07.ads, libgnat/s-pack09.adb: Likewise.
2909 * libgnat/s-pack09.ads, libgnat/s-pack10.adb: Likewise.
2910 * libgnat/s-pack10.ads, libgnat/s-pack100.adb: Likewise.
2911 * libgnat/s-pack100.ads, libgnat/s-pack101.adb: Likewise.
2912 * libgnat/s-pack101.ads, libgnat/s-pack102.adb: Likewise.
2913 * libgnat/s-pack102.ads, libgnat/s-pack103.adb: Likewise.
2914 * libgnat/s-pack103.ads, libgnat/s-pack104.adb: Likewise.
2915 * libgnat/s-pack104.ads, libgnat/s-pack105.adb: Likewise.
2916 * libgnat/s-pack105.ads, libgnat/s-pack106.adb: Likewise.
2917 * libgnat/s-pack106.ads, libgnat/s-pack107.adb: Likewise.
2918 * libgnat/s-pack107.ads, libgnat/s-pack108.adb: Likewise.
2919 * libgnat/s-pack108.ads, libgnat/s-pack109.adb: Likewise.
2920 * libgnat/s-pack109.ads, libgnat/s-pack11.adb: Likewise.
2921 * libgnat/s-pack11.ads, libgnat/s-pack110.adb: Likewise.
2922 * libgnat/s-pack110.ads, libgnat/s-pack111.adb: Likewise.
2923 * libgnat/s-pack111.ads, libgnat/s-pack112.adb: Likewise.
2924 * libgnat/s-pack112.ads, libgnat/s-pack113.adb: Likewise.
2925 * libgnat/s-pack113.ads, libgnat/s-pack114.adb: Likewise.
2926 * libgnat/s-pack114.ads, libgnat/s-pack115.adb: Likewise.
2927 * libgnat/s-pack115.ads, libgnat/s-pack116.adb: Likewise.
2928 * libgnat/s-pack116.ads, libgnat/s-pack117.adb: Likewise.
2929 * libgnat/s-pack117.ads, libgnat/s-pack118.adb: Likewise.
2930 * libgnat/s-pack118.ads, libgnat/s-pack119.adb: Likewise.
2931 * libgnat/s-pack119.ads, libgnat/s-pack12.adb: Likewise.
2932 * libgnat/s-pack12.ads, libgnat/s-pack120.adb: Likewise.
2933 * libgnat/s-pack120.ads, libgnat/s-pack121.adb: Likewise.
2934 * libgnat/s-pack121.ads, libgnat/s-pack122.adb: Likewise.
2935 * libgnat/s-pack122.ads, libgnat/s-pack123.adb: Likewise.
2936 * libgnat/s-pack123.ads, libgnat/s-pack124.adb: Likewise.
2937 * libgnat/s-pack124.ads, libgnat/s-pack125.adb: Likewise.
2938 * libgnat/s-pack125.ads, libgnat/s-pack126.adb: Likewise.
2939 * libgnat/s-pack126.ads, libgnat/s-pack127.adb: Likewise.
2940 * libgnat/s-pack127.ads, libgnat/s-pack13.adb: Likewise.
2941 * libgnat/s-pack13.ads, libgnat/s-pack14.adb: Likewise.
2942 * libgnat/s-pack14.ads, libgnat/s-pack15.adb: Likewise.
2943 * libgnat/s-pack15.ads, libgnat/s-pack17.adb: Likewise.
2944 * libgnat/s-pack17.ads, libgnat/s-pack18.adb: Likewise.
2945 * libgnat/s-pack18.ads, libgnat/s-pack19.adb: Likewise.
2946 * libgnat/s-pack19.ads, libgnat/s-pack20.adb: Likewise.
2947 * libgnat/s-pack20.ads, libgnat/s-pack21.adb: Likewise.
2948 * libgnat/s-pack21.ads, libgnat/s-pack22.adb: Likewise.
2949 * libgnat/s-pack22.ads, libgnat/s-pack23.adb: Likewise.
2950 * libgnat/s-pack23.ads, libgnat/s-pack24.adb: Likewise.
2951 * libgnat/s-pack24.ads, libgnat/s-pack25.adb: Likewise.
2952 * libgnat/s-pack25.ads, libgnat/s-pack26.adb: Likewise.
2953 * libgnat/s-pack26.ads, libgnat/s-pack27.adb: Likewise.
2954 * libgnat/s-pack27.ads, libgnat/s-pack28.adb: Likewise.
2955 * libgnat/s-pack28.ads, libgnat/s-pack29.adb: Likewise.
2956 * libgnat/s-pack29.ads, libgnat/s-pack30.adb: Likewise.
2957 * libgnat/s-pack30.ads, libgnat/s-pack31.adb: Likewise.
2958 * libgnat/s-pack31.ads, libgnat/s-pack33.adb: Likewise.
2959 * libgnat/s-pack33.ads, libgnat/s-pack34.adb: Likewise.
2960 * libgnat/s-pack34.ads, libgnat/s-pack35.adb: Likewise.
2961 * libgnat/s-pack35.ads, libgnat/s-pack36.adb: Likewise.
2962 * libgnat/s-pack36.ads, libgnat/s-pack37.adb: Likewise.
2963 * libgnat/s-pack37.ads, libgnat/s-pack38.adb: Likewise.
2964 * libgnat/s-pack38.ads, libgnat/s-pack39.adb: Likewise.
2965 * libgnat/s-pack39.ads, libgnat/s-pack40.adb: Likewise.
2966 * libgnat/s-pack40.ads, libgnat/s-pack41.adb: Likewise.
2967 * libgnat/s-pack41.ads, libgnat/s-pack42.adb: Likewise.
2968 * libgnat/s-pack42.ads, libgnat/s-pack43.adb: Likewise.
2969 * libgnat/s-pack43.ads, libgnat/s-pack44.adb: Likewise.
2970 * libgnat/s-pack44.ads, libgnat/s-pack45.adb: Likewise.
2971 * libgnat/s-pack45.ads, libgnat/s-pack46.adb: Likewise.
2972 * libgnat/s-pack46.ads, libgnat/s-pack47.adb: Likewise.
2973 * libgnat/s-pack47.ads, libgnat/s-pack48.adb: Likewise.
2974 * libgnat/s-pack48.ads, libgnat/s-pack49.adb: Likewise.
2975 * libgnat/s-pack49.ads, libgnat/s-pack50.adb: Likewise.
2976 * libgnat/s-pack50.ads, libgnat/s-pack51.adb: Likewise.
2977 * libgnat/s-pack51.ads, libgnat/s-pack52.adb: Likewise.
2978 * libgnat/s-pack52.ads, libgnat/s-pack53.adb: Likewise.
2979 * libgnat/s-pack53.ads, libgnat/s-pack54.adb: Likewise.
2980 * libgnat/s-pack54.ads, libgnat/s-pack55.adb: Likewise.
2981 * libgnat/s-pack55.ads, libgnat/s-pack56.adb: Likewise.
2982 * libgnat/s-pack56.ads, libgnat/s-pack57.adb: Likewise.
2983 * libgnat/s-pack57.ads, libgnat/s-pack58.adb: Likewise.
2984 * libgnat/s-pack58.ads, libgnat/s-pack59.adb: Likewise.
2985 * libgnat/s-pack59.ads, libgnat/s-pack60.adb: Likewise.
2986 * libgnat/s-pack60.ads, libgnat/s-pack61.adb: Likewise.
2987 * libgnat/s-pack61.ads, libgnat/s-pack62.adb: Likewise.
2988 * libgnat/s-pack62.ads, libgnat/s-pack63.adb: Likewise.
2989 * libgnat/s-pack63.ads, libgnat/s-pack65.adb: Likewise.
2990 * libgnat/s-pack65.ads, libgnat/s-pack66.adb: Likewise.
2991 * libgnat/s-pack66.ads, libgnat/s-pack67.adb: Likewise.
2992 * libgnat/s-pack67.ads, libgnat/s-pack68.adb: Likewise.
2993 * libgnat/s-pack68.ads, libgnat/s-pack69.adb: Likewise.
2994 * libgnat/s-pack69.ads, libgnat/s-pack70.adb: Likewise.
2995 * libgnat/s-pack70.ads, libgnat/s-pack71.adb: Likewise.
2996 * libgnat/s-pack71.ads, libgnat/s-pack72.adb: Likewise.
2997 * libgnat/s-pack72.ads, libgnat/s-pack73.adb: Likewise.
2998 * libgnat/s-pack73.ads, libgnat/s-pack74.adb: Likewise.
2999 * libgnat/s-pack74.ads, libgnat/s-pack75.adb: Likewise.
3000 * libgnat/s-pack75.ads, libgnat/s-pack76.adb: Likewise.
3001 * libgnat/s-pack76.ads, libgnat/s-pack77.adb: Likewise.
3002 * libgnat/s-pack77.ads, libgnat/s-pack78.adb: Likewise.
3003 * libgnat/s-pack78.ads, libgnat/s-pack79.adb: Likewise.
3004 * libgnat/s-pack79.ads, libgnat/s-pack80.adb: Likewise.
3005 * libgnat/s-pack80.ads, libgnat/s-pack81.adb: Likewise.
3006 * libgnat/s-pack81.ads, libgnat/s-pack82.adb: Likewise.
3007 * libgnat/s-pack82.ads, libgnat/s-pack83.adb: Likewise.
3008 * libgnat/s-pack83.ads, libgnat/s-pack84.adb: Likewise.
3009 * libgnat/s-pack84.ads, libgnat/s-pack85.adb: Likewise.
3010 * libgnat/s-pack85.ads, libgnat/s-pack86.adb: Likewise.
3011 * libgnat/s-pack86.ads, libgnat/s-pack87.adb: Likewise.
3012 * libgnat/s-pack87.ads, libgnat/s-pack88.adb: Likewise.
3013 * libgnat/s-pack88.ads, libgnat/s-pack89.adb: Likewise.
3014 * libgnat/s-pack89.ads, libgnat/s-pack90.adb: Likewise.
3015 * libgnat/s-pack90.ads, libgnat/s-pack91.adb: Likewise.
3016 * libgnat/s-pack91.ads, libgnat/s-pack92.adb: Likewise.
3017 * libgnat/s-pack92.ads, libgnat/s-pack93.adb: Likewise.
3018 * libgnat/s-pack93.ads, libgnat/s-pack94.adb: Likewise.
3019 * libgnat/s-pack94.ads, libgnat/s-pack95.adb: Likewise.
3020 * libgnat/s-pack95.ads, libgnat/s-pack96.adb: Likewise.
3021 * libgnat/s-pack96.ads, libgnat/s-pack97.adb: Likewise.
3022 * libgnat/s-pack97.ads, libgnat/s-pack98.adb: Likewise.
3023 * libgnat/s-pack98.ads, libgnat/s-pack99.adb: Likewise.
3024 * libgnat/s-pack99.ads, libgnat/s-parame.adb: Likewise.
3025 * libgnat/s-parame.ads, libgnat/s-parame__hpux.ads: Likewise.
3026 * libgnat/s-parame__posix2008.ads, libgnat/s-parame__rtems.adb: Likewise.
3027 * libgnat/s-parame__vxworks.adb, libgnat/s-parame__vxworks.ads: Likewise.
3028 * libgnat/s-parint.adb, libgnat/s-parint.ads: Likewise.
3029 * libgnat/s-pehage.adb, libgnat/s-pehage.ads: Likewise.
3030 * libgnat/s-pooglo.adb, libgnat/s-pooglo.ads: Likewise.
3031 * libgnat/s-pooloc.adb, libgnat/s-pooloc.ads: Likewise.
3032 * libgnat/s-poosiz.adb, libgnat/s-poosiz.ads: Likewise.
3033 * libgnat/s-powflt.ads, libgnat/s-powlfl.ads: Likewise.
3034 * libgnat/s-powllf.ads, libgnat/s-purexc.ads: Likewise.
3035 * libgnat/s-putima.adb, libgnat/s-putima.ads: Likewise.
3036 * libgnat/s-rannum.adb, libgnat/s-rannum.ads: Likewise.
3037 * libgnat/s-ransee.adb, libgnat/s-ransee.ads: Likewise.
3038 * libgnat/s-regexp.adb, libgnat/s-regexp.ads: Likewise.
3039 * libgnat/s-regpat.adb, libgnat/s-regpat.ads: Likewise.
3040 * libgnat/s-resfil.adb, libgnat/s-resfil.ads: Likewise.
3041 * libgnat/s-restri.adb, libgnat/s-restri.ads: Likewise.
3042 * libgnat/s-retsta.ads, libgnat/s-rident.ads, libgnat/s-rpc.adb: Likewise.
3043 * libgnat/s-rpc.ads, libgnat/s-scaval.adb, libgnat/s-scaval.ads: Likewise.
3044 * libgnat/s-scaval__128.adb, libgnat/s-scaval__128.ads: Likewise.
3045 * libgnat/s-secsta.adb, libgnat/s-secsta.ads: Likewise.
3046 * libgnat/s-sequio.adb, libgnat/s-sequio.ads: Likewise.
3047 * libgnat/s-shabig.ads, libgnat/s-shasto.adb: Likewise.
3048 * libgnat/s-shasto.ads, libgnat/s-soflin.adb: Likewise.
3049 * libgnat/s-soflin.ads, libgnat/s-soliin.adb: Likewise.
3050 * libgnat/s-soliin.ads, libgnat/s-spark.ads, libgnat/s-spcuop.adb: Likewise.
3051 * libgnat/s-spcuop.ads, libgnat/s-spsufi.adb: Likewise.
3052 * libgnat/s-spsufi.ads, libgnat/s-stache.adb: Likewise.
3053 * libgnat/s-stache.ads, libgnat/s-stalib.adb: Likewise.
3054 * libgnat/s-stalib.ads, libgnat/s-statxd.adb: Likewise.
3055 * libgnat/s-statxd.ads, libgnat/s-stausa.adb: Likewise.
3056 * libgnat/s-stausa.ads, libgnat/s-stchop.adb: Likewise.
3057 * libgnat/s-stchop.ads, libgnat/s-stchop__limit.ads: Likewise.
3058 * libgnat/s-stchop__vxworks.adb, libgnat/s-stoele.adb: Likewise.
3059 * libgnat/s-stoele.ads, libgnat/s-stopoo.adb: Likewise.
3060 * libgnat/s-stopoo.ads, libgnat/s-stposu.adb: Likewise.
3061 * libgnat/s-stposu.ads, libgnat/s-stratt.adb: Likewise.
3062 * libgnat/s-stratt.ads, libgnat/s-strcom.adb: Likewise.
3063 * libgnat/s-strcom.ads, libgnat/s-strhas.adb: Likewise.
3064 * libgnat/s-strhas.ads, libgnat/s-string.adb: Likewise.
3065 * libgnat/s-string.ads, libgnat/s-ststop.adb: Likewise.
3066 * libgnat/s-ststop.ads, libgnat/s-tasloc.adb: Likewise.
3067 * libgnat/s-tasloc.ads, libgnat/s-traceb.adb: Likewise.
3068 * libgnat/s-traceb.ads, libgnat/s-traceb__hpux.adb: Likewise.
3069 * libgnat/s-traceb__mastop.adb, libgnat/s-traent.adb: Likewise.
3070 * libgnat/s-traent.ads, libgnat/s-trasym.adb: Likewise.
3071 * libgnat/s-trasym.ads, libgnat/s-trasym__dwarf.adb: Likewise.
3072 * libgnat/s-tsmona.adb, libgnat/s-tsmona__linux.adb: Likewise.
3073 * libgnat/s-tsmona__mingw.adb, libgnat/s-unstyp.ads: Likewise.
3074 * libgnat/s-utf_32.adb, libgnat/s-utf_32.ads: Likewise.
3075 * libgnat/s-vade128.ads, libgnat/s-vade32.ads: Likewise.
3076 * libgnat/s-vade64.ads, libgnat/s-vaen16.ads: Likewise.
3077 * libgnat/s-vaen32.ads, libgnat/s-vaenu8.ads: Likewise.
3078 * libgnat/s-vafi128.ads, libgnat/s-vafi32.ads: Likewise.
3079 * libgnat/s-vafi64.ads, libgnat/s-vaispe.adb: Likewise.
3080 * libgnat/s-vaispe.ads, libgnat/s-valboo.adb: Likewise.
3081 * libgnat/s-valboo.ads, libgnat/s-valcha.adb: Likewise.
3082 * libgnat/s-valcha.ads, libgnat/s-valflt.ads: Likewise.
3083 * libgnat/s-valint.adb, libgnat/s-valint.ads: Likewise.
3084 * libgnat/s-vallfl.ads, libgnat/s-valllf.ads: Likewise.
3085 * libgnat/s-vallli.adb, libgnat/s-vallli.ads: Likewise.
3086 * libgnat/s-valllli.ads, libgnat/s-vallllu.ads: Likewise.
3087 * libgnat/s-valllu.adb, libgnat/s-valllu.ads: Likewise.
3088 * libgnat/s-valrea.adb, libgnat/s-valrea.ads: Likewise.
3089 * libgnat/s-valued.adb, libgnat/s-valued.ads: Likewise.
3090 * libgnat/s-valuef.adb, libgnat/s-valuef.ads: Likewise.
3091 * libgnat/s-valuei.adb, libgnat/s-valuei.ads: Likewise.
3092 * libgnat/s-valuen.adb, libgnat/s-valuen.ads: Likewise.
3093 * libgnat/s-valuer.adb, libgnat/s-valuer.ads: Likewise.
3094 * libgnat/s-valueu.adb, libgnat/s-valueu.ads: Likewise.
3095 * libgnat/s-valuns.adb, libgnat/s-valuns.ads: Likewise.
3096 * libgnat/s-valuti.adb, libgnat/s-valuti.ads: Likewise.
3097 * libgnat/s-valwch.adb, libgnat/s-valwch.ads: Likewise.
3098 * libgnat/s-vauspe.adb, libgnat/s-vauspe.ads: Likewise.
3099 * libgnat/s-veboop.adb, libgnat/s-veboop.ads: Likewise.
3100 * libgnat/s-vector.ads, libgnat/s-vercon.adb: Likewise.
3101 * libgnat/s-vercon.ads, libgnat/s-wchcnv.adb: Likewise.
3102 * libgnat/s-wchcnv.ads, libgnat/s-wchcon.adb: Likewise.
3103 * libgnat/s-wchcon.ads, libgnat/s-wchjis.adb: Likewise.
3104 * libgnat/s-wchjis.ads, libgnat/s-wchstw.adb: Likewise.
3105 * libgnat/s-wchstw.ads, libgnat/s-wchwts.adb: Likewise.
3106 * libgnat/s-wchwts.ads, libgnat/s-widboo.adb: Likewise.
3107 * libgnat/s-widboo.ads, libgnat/s-widcha.adb: Likewise.
3108 * libgnat/s-widcha.ads, libgnat/s-widenu.adb: Likewise.
3109 * libgnat/s-widenu.ads, libgnat/s-widint.ads: Likewise.
3110 * libgnat/s-widlli.adb, libgnat/s-widlli.ads: Likewise.
3111 * libgnat/s-widllli.ads, libgnat/s-widlllu.ads: Likewise.
3112 * libgnat/s-widllu.adb, libgnat/s-widllu.ads: Likewise.
3113 * libgnat/s-widthi.adb, libgnat/s-widthi.ads: Likewise.
3114 * libgnat/s-widthu.adb, libgnat/s-widthu.ads: Likewise.
3115 * libgnat/s-widuns.ads, libgnat/s-widwch.adb: Likewise.
3116 * libgnat/s-widwch.ads, libgnat/s-win32.ads, libgnat/s-winext.ads: Likewise.
3117 * libgnat/s-wwdcha.adb, libgnat/s-wwdcha.ads: Likewise.
3118 * libgnat/s-wwdenu.adb, libgnat/s-wwdenu.ads: Likewise.
3119 * libgnat/s-wwdwch.adb, libgnat/s-wwdwch.ads: Likewise.
3120 * libgnat/system-aix.ads, libgnat/system-darwin-arm.ads: Likewise.
3121 * libgnat/system-darwin-ppc.ads, libgnat/system-darwin-x86.ads: Likewise.
3122 * libgnat/system-djgpp.ads, libgnat/system-dragonfly-x86_64.ads: Likewise.
3123 * libgnat/system-freebsd.ads, libgnat/system-hpux-ia64.ads: Likewise.
3124 * libgnat/system-hpux.ads, libgnat/system-linux-alpha.ads: Likewise.
3125 * libgnat/system-linux-arm.ads, libgnat/system-linux-hppa.ads: Likewise.
3126 * libgnat/system-linux-ia64.ads, libgnat/system-linux-m68k.ads: Likewise.
3127 * libgnat/system-linux-mips.ads, libgnat/system-linux-ppc.ads: Likewise.
3128 * libgnat/system-linux-riscv.ads, libgnat/system-linux-s390.ads: Likewise.
3129 * libgnat/system-linux-sh4.ads, libgnat/system-linux-sparc.ads: Likewise.
3130 * libgnat/system-linux-x86.ads, libgnat/system-lynxos178-ppc.ads: Likewise.
3131 * libgnat/system-lynxos178-x86.ads, libgnat/system-mingw.ads: Likewise.
3132 * libgnat/system-qnx-arm.ads, libgnat/system-rtems.ads: Likewise.
3133 * libgnat/system-solaris-sparc.ads: Likewise.
3134 * libgnat/system-solaris-x86.ads: Likewise.
3135 * libgnat/system-vxworks-ppc-kernel.ads: Likewise.
3136 * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise.
3137 * libgnat/system-vxworks-ppc-rtp.ads: Likewise.
3138 * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise.
3139 * libgnat/system-vxworks7-aarch64.ads: Likewise.
3140 * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise.
3141 * libgnat/system-vxworks7-arm.ads: Likewise.
3142 * libgnat/system-vxworks7-ppc-kernel.ads: Likewise.
3143 * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise.
3144 * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise.
3145 * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise.
3146 * libgnat/system-vxworks7-x86-kernel.ads: Likewise.
3147 * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise.
3148 * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise.
3149 * libgnat/system-vxworks7-x86_64-rtp-smp.ads, link.c, live.adb: Likewise.
3150 * live.ads, locales.c, make.adb, make.ads, make_util.adb: Likewise.
3151 * make_util.ads, makeusg.adb, makeusg.ads, mdll-fil.adb: Likewise.
3152 * mdll-fil.ads, mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads: Likewise.
3153 * mingw32.h, mkdir.c, namet-sp.adb, namet-sp.ads, namet.adb: Likewise.
3154 * namet.ads, namet.h, nlists.adb, nlists.ads, nlists.h, opt.adb: Likewise.
3155 * opt.ads, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads: Likewise.
3156 * osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads, osint.adb: Likewise.
3157 * osint.ads, output.adb, output.ads, par-ch10.adb, par-ch11.adb: Likewise.
3158 * par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb: Likewise.
3159 * par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch7.adb, par-ch8.adb: Likewise.
3160 * par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb: Likewise.
3161 * par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb, par.adb: Likewise.
3162 * par.ads, par_sco.adb, par_sco.ads: Likewise.
3163 * pprint.adb, pprint.ads, prep.adb, prep.ads: Likewise.
3164 * prepcomp.adb, prepcomp.ads, put_scos.adb, put_scos.ads: Likewise.
3165 * raise-gcc.c, raise.c, raise.h, repinfo-input.adb: Likewise.
3166 * repinfo-input.ads, repinfo.adb, repinfo.ads, repinfo.h: Likewise.
3167 * restrict.adb, restrict.ads, rident.ads, rtfinal.c, rtinit.c: Likewise.
3168 * rtsfind.adb, rtsfind.ads, runtime.h, s-oscons-tmplt.c: Likewise.
3169 * scans.adb, scans.ads, scil_ll.adb, scil_ll.ads, scn.adb: Likewise.
3170 * scn.ads, scng.adb, scng.ads, scos.adb, scos.ads: Likewise.
3171 * scos.h, sdefault.ads, seh_init.c, sem.adb, sem.ads: Likewise.
3172 * sem_aggr.adb, sem_aggr.ads, sem_attr.adb, sem_attr.ads: Likewise.
3173 * sem_aux.adb, sem_aux.ads, sem_case.adb, sem_case.ads: Likewise.
3174 * sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads: Likewise.
3175 * sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads: Likewise.
3176 * sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads: Likewise.
3177 * sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads, sem_ch5.adb: Likewise.
3178 * sem_ch5.ads, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb, sem_ch7.ads: Likewise.
3179 * sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_ch9.ads, sem_dim.adb: Likewise.
3180 * sem_dim.ads, sem_disp.adb, sem_disp.ads, sem_dist.adb: Likewise.
3181 * sem_dist.ads, sem_elab.adb, sem_elab.ads, sem_elim.adb: Likewise.
3182 * sem_elim.ads, sem_eval.adb, sem_eval.ads, sem_intr.adb: Likewise.
3183 * sem_intr.ads, sem_mech.adb, sem_mech.ads, sem_prag.adb: Likewise.
3184 * sem_prag.ads, sem_res.adb, sem_res.ads, sem_scil.adb: Likewise.
3185 * sem_scil.ads, sem_smem.adb, sem_smem.ads, sem_type.adb: Likewise.
3186 * sem_type.ads, sem_util.adb, sem_util.ads, sem_warn.adb: Likewise.
3187 * sem_warn.ads, set_targ.adb, set_targ.ads, sfn_scan.adb: Likewise.
3188 * sfn_scan.ads, sigtramp-arm-qnx.c, sigtramp-armdroid.c: Likewise.
3189 * sigtramp-ios.c, sigtramp-qnx.c: Likewise.
3190 * sigtramp-vxworks-target.h, sigtramp-vxworks.c, sigtramp.h: Likewise.
3191 * sinfo-cn.adb, sinfo-cn.ads, sinfo-utils.adb, sinfo-utils.ads: Likewise.
3192 * sinfo.adb, sinfo.ads, sinput-c.adb, sinput-c.ads, sinput-d.adb: Likewise.
3193 * sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput.adb: Likewise.
3194 * sinput.ads, socket.c, spark_xrefs.adb, spark_xrefs.ads: Likewise.
3195 * sprint.adb, sprint.ads, stand.ads: Likewise.
3196 * stringt.adb, stringt.ads, stringt.h, strub.adb, strub.ads: Likewise.
3197 * style.adb, style.ads, styleg.adb, styleg.ads, stylesw.adb: Likewise.
3198 * stylesw.ads, switch-b.adb, switch-b.ads, switch-c.adb: Likewise.
3199 * switch-c.ads, switch-m.adb, switch-m.ads, switch.adb: Likewise.
3200 * switch.ads, sysdep.c, table.adb: Likewise.
3201 * table.ads, targext.c, targparm.adb, targparm.ads, tbuild.adb: Likewise.
3202 * tbuild.ads, tempdir.adb, tempdir.ads, terminals.c, tracebak.c: Likewise.
3203 * treepr.adb, treepr.ads, ttypes.ads, types.adb, types.ads: Likewise.
3204 * types.h, uintp.adb, uintp.ads, uintp.h, uname.adb, uname.ads: Likewise.
3205 * urealp.adb, urealp.ads, urealp.h, usage.adb, usage.ads: Likewise.
3206 * validsw.adb, validsw.ads, vast.adb, vast.ads, warnsw.adb: Likewise.
3207 * warnsw.ads, widechar.adb, widechar.ads, xoscons.adb: Likewise.
3208 * xsnamest.adb, xutil.adb, xutil.ads, gnatvsn.adb: Likewise.
3209 * gnatvsn.ads (Current_Year): Likewise and bump to 2023.
3210
3211 2023-01-09 Eric Botcazou <ebotcazou@adacore.com>
3212
3213 * exp_ch7.adb (Make_Adjust_Call): Remove unreachable statement.
3214 (Make_Final_Call): Likewise.
3215
3216 2023-01-09 Eric Botcazou <ebotcazou@adacore.com>
3217
3218 * exp_util.ads (Is_Tag_To_Class_Wide_Conversion): Delete.
3219 (Is_Displacement_Of_Object_Or_Function_Result): Likewise.
3220 * exp_util.adb (Is_Tag_To_Class_Wide_Conversion): Rename to...
3221 (Is_Temporary_For_Interface_Object): ...this.
3222 (Is_Finalizable_Transient): Adjust call to above renaming.
3223 (Is_Displacement_Of_Object_Or_Function_Result): Delete.
3224 (Requires_Cleanup_Actions): Remove special handling of the
3225 temporaries created for interface objects.
3226 * exp_ch7.adb (Build_Finalizer): Likewise.
3227
3228 2023-01-07 LIU Hao <lh_mouse@126.com>
3229
3230 PR middle-end/108300
3231 * adaint.c: Define `WIN32_LEAN_AND_MEAN` before `#include
3232 <windows.h>`.
3233 * cio.c: Likewise.
3234 * ctrl_c.c: Likewise.
3235 * expect.c: Likewise.
3236 * gsocket.h: Likewise.
3237 * mingw32.h: Likewise.
3238 * mkdir.c: Likewise.
3239 * rtfinal.c: Likewise.
3240 * rtinit.c: Likewise.
3241 * seh_init.c: Likewise.
3242 * sysdep.c: Likewise.
3243 * terminals.c: Likewise.
3244 * tracebak.c: Likewise.
3245
3246 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3247
3248 * exp_util.adb (Make_CW_Equivalent_Type) <Has_Tag_Of_Type>: Tweak.
3249
3250 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3251
3252 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite the end of the
3253 handling of objects with (class-wide) interface type by using the
3254 same idiom as the other cases generating a renaming.
3255 * exp_util.adb (Is_Displacement_Of_Object_Or_Function_Result): Tweak
3256 pattern matching code and exclude special return objects.
3257 (Requires_Cleanup_Actions): Adjust comment.
3258 * exp_ch7.adb (Build_Finalizer): Likewise.
3259
3260 2023-01-05 Piotr Trojanek <trojanek@adacore.com>
3261
3262 * freeze.adb (Build_Renamed_Body): Rewrite subprogram renaming to
3263 subprogram declaration early and then set the Body_To_Inling flag.
3264
3265 2023-01-05 Piotr Trojanek <trojanek@adacore.com>
3266
3267 * freeze.adb (Build_Renamed_Body): Revert a special case for
3268 GNATprove; remove unnecessary initialization of a local variable.
3269
3270 2023-01-05 Marc Poulhiès <poulhies@adacore.com>
3271
3272 * sem_ch12.adb (Instantiate_Package_Body): Better filtering when
3273 installing parent on the scope stack.
3274
3275 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3276
3277 * repinfo.ads (The JSON output format): Document change.
3278 * urealp.adb (UR_Write_To_JSON): Output a fraction instead of a
3279 decimal approximation.
3280
3281 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3282
3283 * exp_ch3.adb (Expand_N_Object_Declaration): New local variable
3284 Func_Id holding the function for a special return object.
3285 Use a direct renaming in the class-wide case when the initializing
3286 expression is a captured function call, except for a special return
3287 object when the two functions do not return on the same stack.
3288 Apply the accessibility check for class-wide special return objects.
3289 * exp_util.adb (Make_CW_Equivalent_Type) <Has_Tag_Of_Type>: New.
3290 Do not force a dispatching call to the primitive operation _Size if
3291 the expression is known to statically have the tag of its type.
3292
3293 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3294
3295 * exp_ch3.adb (Expand_N_Object_Declaration): Fix pasto in comment.
3296
3297 2023-01-05 Ronan Desplanques <desplanques@adacore.com>
3298
3299 * sem_aggr.adb (Resolve_Array_Aggregate): Tweak conditions for
3300 warning about use of parentheses for array aggregates.
3301
3302 2023-01-05 Javier Miranda <miranda@adacore.com>
3303
3304 * scans.ads (Tok_Left_Curly_Bracket, Tok_Right_Curly_Bracket)
3305 (Tok_Left_Interpolated_String): Placed in no category since they
3306 don't fit well in the existing categories. Fix typo in comment.
3307 (Inside_Interpolated_String_Literal): New scan state variable.
3308 * scng.adb (Slit): Scan interpolated string literals,
3309 continuations of interpolated string literals and escaped
3310 characters found in interpolated string literals.
3311 (Scan): Handle consecutive interpolated expressions. Handle ending
3312 delimiter placed immediately after an interpolated expression.
3313 Handle string literal placed after interpolated expression. Handle
3314 left and right curly brackets; when extensions are not allowed
3315 they are treated as left and right paren; when extensions are
3316 allowed they are handled as delimiters of interpolated string
3317 literals.
3318 * sinfo.ads (N_Interpolated_String_Literal): New node.
3319 * gen_il-gen-gen_nodes.adb (N_Interpolated_String_Literal): Define
3320 N_String_Literal node.
3321 * gen_il-types.ads (Opt_Type_Enum): Define N_String_Literal as
3322 concrete node type.
3323 * par-ch2.adb (P_Interpolated_String_Literal): New subprogram.
3324 * par-ch4.adb (P_Simple_Expression): Handle '}' as expression
3325 terminator when scanning an interpolated expression; disable error
3326 recovery machinery for binary operator when we are processing an
3327 interpolated string literal and reach the expression terminator
3328 '}'.
3329 (P_Primary): Call P_Interpolated_String_Literal when the opening
3330 interpolated-string-literal delimiter is found (that is, the left
3331 curly bracket '{').
3332 * par-tchk.adb (T_Right_Curly_Bracket): New subprogram.
3333 * par.adb (P_Interpolated_String_Literal): New declaration.
3334 (T_Right_Curly_Bracket): New declaration.
3335 * sem.adb (Analyze): Call Analyze_Interpolated_String_Literal.
3336 * sem_ch2.ads (Analyze_Interpolated_String_Literal): New
3337 subprogram
3338 * sem_ch2.adb (Analyze_Interpolated_String_Literal): Likewise.
3339 * sem_util.adb (Is_User_Defined_Literal): Complete mapping of
3340 literal aspects adding that interpolated string literals have no
3341 correspondence with any aspect.
3342 * sem_res.adb (Resolve_Interpolated_String_Literal): New
3343 subprogram.
3344 (Has_Applicable_User_Defined_Literal): Complete mapping of literal
3345 aspects adding that interpolated string literals have no
3346 correspondency with any aspect.
3347 * expander.adb (Expand): Add call to
3348 Expand_N_Interpolated_String_Literal.
3349 * exp_util.adb (Insert_Actions): Handle
3350 N_Interpolated_String_Literal nodes; that is, continue climbing.
3351 * exp_ch2.ads (Expand_N_Interpolated_String_Literal): New
3352 subprogram.
3353 * exp_ch2.adb (Expand_N_Interpolated_String_Literal): Likewise.
3354 * exp_put_image.adb (Build_Elementary_Put_Image_Call): Add missing
3355 conversion to force dispatching call. Required to handle calls to
3356 descendants.
3357 (Build_String_Put_Image_Call): Do not output string delimiters
3358 when the put_image call is part of an interpolated string literal.
3359 * rtsfind.ads (RTU_Id): Add RE_Set_Trim_Leading_Spaces.
3360 * sprint.adb (Sprint_Node): Output interpolated string contents.
3361 * libgnat/a-stbubo.adb (Get_UTF_8): Add default value for
3362 Trim_Leading_White_Spaces component in aggregate.
3363 (Buffer_Type_Implementation): Update Trim_Leading_White_Spaces.
3364 * libgnat/a-stbuun.adb (Get_UTF_8): Likewise.
3365 (Buffer_Type_Implementation): Likewise.
3366 * libgnat/a-sttebu.ads (Set_Trim_Leading_Spaces): New subprogram.
3367 (Trim_Leading_Spaces): New subprogram.
3368 (Root_Buffer_Type): Adding Trim_Leading_While_Spaces component.
3369 * libgnat/a-sttebu.adb (procedure Set_Trim_Leading_Spaces): New
3370 subprogram.
3371 (Trim_Leading_Space): New subprogram.
3372 (Put_UTF_8): Handle Trim_Leading_White_Spaces.
3373 (New_Line): Likewise.
3374 * libgnat/s-putima.ads (Put_Image_String): Adding formal
3375 (with_delimiters).
3376 (Put_Image_Wide_String): Likewise.
3377 (Put_Image_Wide_Wide_String): Likewise.
3378 * libgnat/s-putima.adb (Put_Image_String): Adding support for new
3379 formal.
3380 (Put_Image_Wide_String): Likewise.
3381 (Put_Image_Wide_Wide_String): Likewise.
3382
3383 2023-01-05 Joao Azevedo <azevedo@adacore.com>
3384
3385 * doc/gnat_ugn/gnat_utility_programs.rst: add gnatpp --layout
3386 switch and update legacy switches.
3387
3388 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3389
3390 * freeze.adb (Freeze_Entity): For the purpose of deciding whether to
3391 freeze an entity coming from an outer scope in an inner scope, treat
3392 the internal subprogram generated because of post-conditions as also
3393 coming from source if the original subprogram itself does.
3394
3395 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3396
3397 * contracts.adb (Build_Subprogram_Contract_Wrapper): Generate an
3398 extended return statement in all cases.
3399 (Expand_Subprogram_Contract): Adjust comment.
3400
3401 2023-01-05 Ronan Desplanques <desplanques@adacore.com>
3402
3403 * libgnat/g-forstr.adb (F_Kind): Rename enumeration literal.
3404 (P_Flt_Format): Adjust handling of "%g".
3405 (Determine_Notation_And_Aft): New procedure.
3406 (Decimal_Exponent): New function.
3407 (Increment_Integral_Part): New procedure.
3408 (Remove_Extraneous_Decimal_Digit): New procedure.
3409 (Trim_Fractional_Part): New procedure.
3410 * libgnat/g-forstr.ads: Change description of "%g" specifier.
3411
3412 2023-01-05 Marc Poulhiès <poulhies@adacore.com>
3413
3414 * sem_ch12.adb (Instantiate_Package_Body): Correctly find the
3415 parent instance to place on the scope stack.
3416
3417 2023-01-05 Justin Squirek <squirek@adacore.com>
3418
3419 * sem_ch8.adb (Set_Entity_Or_Discriminal): Verify we are actually
3420 resetting the entity field of a non-prefixed discriminant
3421 reference.
3422
3423 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3424
3425 * exp_ch3.adb (Expand_N_Object_Declaration): New local variable used
3426 throughout instead of testing Is_Special_Return_Object every time.
3427 Do not rename an OK_To_Rename object for a special return object.
3428 * exp_ch4.adb (Expand_Concatenate): Revert to constrained allocation
3429 if the result is allocated on the secondary stack.
3430
3431 2023-01-05 Steve Baird <baird@adacore.com>
3432
3433 * sem_prag.adb (Analyze_Pragma): Fix Is_Configuration_Pragma
3434 function to handle case where the pragma's parent is an
3435 N_Aspect_Specification node. In analyzing a Discard_Names pragma,
3436 do not assume that a nonzero number of arguments implies that the
3437 pragma is not a configuration pragma; that assumption only holds
3438 for legal programs.
3439
3440 2023-01-05 Bob Duff <duff@adacore.com>
3441
3442 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
3443 Add RM references.
3444 * gnat_ugn.texi: Regenerate.
3445
3446 2023-01-05 Eric Botcazou <ebotcazou@adacore.com>
3447
3448 * exp_ch3.adb (Expand_N_Object_Declaration): For a special return
3449 object of an interface type that is not inherently limited, make
3450 a call to the Adjust primitive after doing the copy. For a special
3451 return object of a non-class-wide type initialized by a function
3452 call, use a direct renaming only if the object doing the capture
3453 is flagged by Is_Related_To_Func_Return. For a special return
3454 object using a direct renaming, reassign the tag, if need be.
3455 * exp_ch6.adb (Expand_Simple_Function_Return): Fix comment.
3456 * exp_util.adb (Is_Related_To_Func_Return): Accept both regular and
3457 renaming object declarations for return objects.
3458
3459 2023-01-05 Bob Duff <duff@adacore.com>
3460
3461 * sem_ch5.adb (Analyze_Assignment): Fix the bug by checking
3462 Original_Node. The renaming might be elsewhere, but the (original)
3463 reference is right here.
3464 * errout.adb: Remove pragma Unreferenced which was added because
3465 of the above bug.
3466 * einfo.ads: Misc cleanup.
3467 * lib.adb: Likewise.
3468 * lib.ads: Likewise.
3469
3470 2023-01-03 Ghjuvan Lacambre <lacambre@adacore.com>
3471
3472 * errout.adb (Write_JSON_Span): Escape subprogram name.
3473
3474 2023-01-03 Ghjuvan Lacambre <lacambre@adacore.com>
3475
3476 * output.adb (Write_Buffer): Use Flush_Buffer instead of Write_Eol.
3477
3478 2023-01-03 Ronan Desplanques <desplanques@adacore.com>
3479
3480 * libgnat/g-forstr.adb (P_Flt_Format): Add "*" syntax handling.
3481
3482 2023-01-03 Ronan Desplanques <desplanques@adacore.com>
3483
3484 * libgnat/g-forstr.adb (P_Int_Format): Fix parsing bug.
3485
3486 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3487
3488 * exp_ch6.adb (Expand_Simple_Function_Return): Make sure that a
3489 captured function call also verifies Is_Related_To_Func_Return.
3490 Do not generate an actual subtype for special return objects.
3491 * exp_util.ads (Is_Related_To_Func_Return): Add commentary.
3492
3493 2023-01-03 Ronan Desplanques <desplanques@adacore.com>
3494
3495 * libgnat/g-forstr.adb
3496 (Advance_And_Accumulate_Until_Next_Specifier): New procedure.
3497 ("-"): Replace inline code with call to
3498 Advance_And_Accumulate_Until_Next_Specifier.
3499 (Next_Format): likewise.
3500
3501 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3502
3503 * checks.adb (Apply_Discriminant_Check.Denotes_Explicit_Dereference):
3504 Return false for artificial dereferences generated by the expander.
3505
3506 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3507
3508 * exp_ch6.adb (Is_Build_In_Place_Function): Adjust comment.
3509 * sem_util.adb (Compute_Returns_By_Ref): Do not set Returns_By_Ref
3510 on functions with foreign convention.
3511
3512 2023-01-03 Marc Poulhiès <poulhies@adacore.com>
3513
3514 * exp_aggr.adb (Build_Assignment_With_Temporary): New.
3515 (Expand_Array_Aggregate): Tune backend optimization
3516 and insert a temporary in the case of an access with
3517 Designated_Storage_Model aspect.
3518 (Convert_Array_Aggr_In_Allocator): Likewise.
3519
3520 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3521
3522 * sem_res.adb (Resolve_Membership_Op): Adjust again latest change.
3523
3524 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3525
3526 * sem_util.ads (Set_Debug_Info_Defining_Id): Adjust comment.
3527 * sem_util.adb (Is_Aliased_View) <N_Explicit_Dereference>: Return
3528 false for more artificial dereferences generated by the expander.
3529 (Set_Debug_Info_Defining_Id): Set Debug_Info_Needed unconditionally
3530 in -gnatD mode.
3531 * exp_ch6.adb (Replace_Renaming_Declaration_Id): Also preserve the
3532 Is_Aliased flag.
3533
3534 2023-01-03 Joel Brobecker <brobecker@adacore.com>
3535
3536 * doc/gnat_ugn/platform_specific_information.rst
3537 (_Platform_Specific_Information): Minor rewording of intro text.
3538 * gnat_ugn.texi: Regenerate.
3539
3540 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3541
3542 * exp_util.ads (Is_Captured_Function_Call): Declare.
3543 * exp_util.adb (Is_Captured_Function_Call): New predicate.
3544 * exp_ch3.adb (Expand_N_Object_Declaration): Use it to detect a
3545 rewritten function call as the initializing expression.
3546 * exp_ch6.adb (Expand_Simple_Function_Return): Use it to detect a
3547 rewritten function call as the returned expression.
3548
3549 2023-01-03 Bob Duff <duff@adacore.com>
3550
3551 * exp_util.adb (Integer_Type_For): Assertion and comment.
3552 (Small_Integer_Type_For): Remove some code and call
3553 Integer_Type_For instead.
3554 * sem_util.ads (Rep_To_Pos_Flag): Improve comments. "Standard_..."
3555 seems overly pedantic here.
3556 * exp_attr.adb (Succ, Pred): Clean up: make the code as similar as
3557 possible.
3558 * exp_ch4.adb: Minor: named notation.
3559
3560 2023-01-03 Javier Miranda <miranda@adacore.com>
3561
3562 * ghost.adb (Is_OK_Declaration): A reference to a Ghost entity may
3563 appear within the class-wide precondition of a helper subprogram.
3564 This context is treated as suitable because it was already
3565 verified when we were analyzing the original class-wide
3566 precondition.
3567
3568 2023-01-03 Eric Botcazou <ebotcazou@adacore.com>
3569
3570 * exp_tss.adb (Base_Init_Proc): Do not return the Init_Proc of the
3571 ancestor type for a derived array type.
3572 * sem_ch13.adb (Inherit_Aspects_At_Freeze_Point): Factor out the
3573 common processing done on representation items.
3574 For Default_Component_Value and Default_Value, look into the first
3575 subtype to find out the representation items.
3576
3577 2023-01-02 Iain Sandoe <iain@sandoe.co.uk>
3578
3579 PR ada/108202
3580 * gcc-interface/Make-lang.in (GCC_LINKERFLAGS, GCC_LDFLAGS):
3581 Versions of ALL_LINKERFLAGS, LDFLAGS with -Werror and
3582 -static-libgcc filtered out for Darwin8 and 9 (-Werror is filtered
3583 out for other hosts).
3584
3585 2023-01-02 Jakub Jelinek <jakub@redhat.com>
3586
3587 * gnat_ugn.texi: Bump @copying's copyright year.
3588 * gnat_rm.texi: Likewise.
3589
3590 \f
3591 Copyright (C) 2023 Free Software Foundation, Inc.
3592
3593 Copying and distribution of this file, with or without modification,
3594 are permitted in any medium without royalty provided the copyright
3595 notice and this notice are preserved.
This page took 0.197762 seconds and 5 git commands to generate.