]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
c/c++: new warning: -Wxor-used-as-pow [PR90885]
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
cff72485
GA
12022-07-13 Eric Botcazou <ebotcazou@adacore.com>
2
3 * gcc-interface/trans.cc (gnat_to_gnu) <N_Assignment_Statement>: Fix
4 a couple of minor issues in the commentary.
5
62022-07-13 Eric Botcazou <ebotcazou@adacore.com>
7
8 * gcc-interface/trans.cc (gigi): Report a violation of No_Dependence
9 on System.Stack_Checking if Stack_Check_Probes_On_Target is not set
10 and -fstack-check is specified.
11 (build_binary_op_trapv): Report violatiosn of No_Dependence on both
12 System.Arith_64 and System.Arith_128.
13 (add_decl_expr): If an initialized variable, report a violation of
14 No_Dependence on System.Memory_Copy for large aggregate types.
15 (gnat_to_gnu) <N_Op_Eq>: Report a violation
16 of No_Dependence on System.Memory_Compare for large aggregate types.
17 <N_Assignment_Statement>! Report a violation of No_Dependence on
18 System.Memory_Set, System.Memory_Move or else System.Memory_Copy for
19 large aggregate types.
20 * gcc-interface/utils2.cc (maybe_wrap_malloc): Report a violation of
21 No_Dependence on System.Memory.
22 (maybe_wrap_free): Add GNAT_NODE parameter and report a violation of
23 No_Dependence on System.Memory.
24 (build_call_alloc_dealloc): Adjust call to maybe_wrap_free.
25
262022-07-13 Eric Botcazou <ebotcazou@adacore.com>
27
28 * gcc-interface/decl.cc (gnat_to_gnu_entity): Do not set the debug
29 type for vector types.
30
312022-07-13 Eric Botcazou <ebotcazou@adacore.com>
32
33 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Access_Subtype>:
34 Undo questionable renaming.
35
362022-07-13 Eric Botcazou <ebotcazou@adacore.com>
37
38 * gcc-interface/decl.cc (Gigi_Cloned_Subtype): Handle private case.
39
402022-07-13 Eric Botcazou <ebotcazou@adacore.com>
41
42 * gcc-interface/trans.cc (gigi): Add one more leading underscore to
43 name of stack checking function.
44
452022-07-13 Eric Botcazou <ebotcazou@adacore.com>
46
47 * gcc-interface/decl.cc (Gigi_Cloned_Subtype): New function.
48 (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Call it to get the
49 cloned subtype, if any.
50 <E_Floating_Point_Subtype>: Likewise.
51 <E_Array_Subtype>: Likewise.
52 <E_Record_Subtype>: Likewise.
53 <E_Access_Subtype>: Likewise.
54 Deal with all cloned subtypes on the main path.
55
562022-07-13 Eric Botcazou <ebotcazou@adacore.com>
57
58 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Access_Subtype>: Do
59 not reuse the TYPE_DECL of the base type.
60
612022-07-13 Eric Botcazou <ebotcazou@adacore.com>
62
63 * gcc-interface/utils.cc (gnat_pushdecl): Build DECL_ORIGINAL_TYPE
64 only for pointer types.
65
662022-07-13 Eric Botcazou <ebotcazou@adacore.com>
67
68 * gcc-interface/utils2.cc (build_binary_op) <EQ_EXPR>: Also accept
69 pointer-to-function types that are not variant of each other.
70
712022-07-13 Eric Botcazou <ebotcazou@adacore.com>
72
73 * gcc-interface/utils.cc (unchecked_convert): Also pad in most cases
74 if the source is not a scalar type but the destination is.
75
762022-07-13 Eric Botcazou <ebotcazou@adacore.com>
77
78 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Save
79 and restore the alias set of the dummy pointer-to-array type.
80
812022-07-13 Eric Botcazou <ebotcazou@adacore.com>
82
83 * snames.ads-tmpl (Name_Memory_Compare): New package name.
84 (Name_Memory_Copy): Likewise.
85 (Name_Memory_Move): Likewise.
86 (Name_Memory_Set): Likewise.
87
882022-07-13 Gary Dismukes <dismukes@adacore.com>
89
90 * sem_ch13.adb (Check_And_Resolve_Storage_Model_Type_Argument):
91 Call the System.Case_Util.To_Mixed procedure rather than the
92 function, to avoid bootstrap problems.
93
942022-07-13 Gary Dismukes <dismukes@adacore.com>
95
96 * aspects.ads (Aspect_Argument): Change the association for
97 Aspect_Storage_Model_Type from Expression to
98 Optional_Expression.
99 * exp_util.ads (Find_Storage_Op): Update comment to indicate
100 that Empty can be returned in the case where a storage-model
101 operation is defaulted.
102 * exp_util.adb (Find_Storage_Op): Allow the function to return
103 Empty in Storage_Model_Type case rather than raising
104 Program_Error, so that Procedure_To_Call fields in N_Allocator
105 and N_Free_Statement nodes will be set to Empty in the defaulted
106 native storage-model case.
107 * sem_ch13.adb: Add with and use of System.Case_Util (and
108 reformat context_clause).
109 (Check_Aspect_At_Freeze_Point): Return with no action for a
110 Storage_Model_Type aspect with no expression (fully-defaulted
111 native memory-model case).
112 (Resolve_Storage_Model_Type_Argument): If an Address_Type has
113 not been explicitly specified, then set Addr_Type to denote type
114 System.Address.
115 (Validate_Storage_Model_Type_Aspect): Return immediately in the
116 case where the aspect has no Expression (fully-defaulted native
117 memory-model case). No longer issue an error when Address_Type
118 isn't specified, and instead use type System.Address as the
119 default address type. When the address type is
120 System.Address (whether specified or defaulted), no longer issue
121 errors for any other "subaspects" that aren't specified, since
122 in that case those are allowed to default as well. Remove ???
123 comment about needing to check for duplicates, which is now
124 addressed.
125 (Check_And_Resolve_Storage_Model_Type_Argument): New procedure
126 to check that an association for a storage-model subaspect in
127 the aggregate has not been specified earlier in the aggregate,
128 and to then resolve the expression of the association and save
129 the resolved entity. Called by
130 Validate_Storage_Model_Type_Aspect.
131 * sem_util.ads (Storage_Model_Support): Update comments on specs
132 of the functions Get_Storage_Model_Type_Entity,
133 Storage_Model_Address_Type, and Storage_Model_Null_Address to
134 indicate the behavior when the address type is System.Address
135 (the native memory-model case).
136 * sem_util.adb
137 (Storage_Model_Support.Get_Storage_Model_Type_Entity): Suppress
138 the search for the given subaspect name (Nam) when the
139 Storage_Model_Type aspect is fully defaulted (i.e., no
140 Expression is present) and simply return. In cases where the
141 search is done, but no association that matches Nam is found,
142 return System.Address for the Name_Address_Type case, return
143 System.Null_Address for the Name_Null_Address case, and return
144 Empty for all other cases.
145
1462022-07-13 Piotr Trojanek <trojanek@adacore.com>
147
148 * sem_ch13.adb (Relocate_Expression): New routine with code that
149 previously was only applied to Pre and Post aspects.
150 (Analyze_Aspect_Specifications): Apply the above routine to
151 other aspects, in particular to aspects Address, Attach_Handler,
152 Predicate and Interrupt_Priority.
153
1542022-07-13 Piotr Trojanek <trojanek@adacore.com>
155
156 * inline.adb (Build_Body_To_Inline): Instead of manipulating the
157 Full_Analysis flag, use the Inside_A_Generic flag (which is
158 conveniently manipulated by Start_Generic/End_Generic, together
159 with Expander_Active).
160 * sem_attr.adb (Analyze_Attribute_Old_Result): Adapt comment and
161 assertion to different flag that is set while building
162 body-to-inline.
163
1642022-07-13 Alexandre Oliva <oliva@adacore.com>
165
166 * doc/gnat_rm/security_hardening_features.rst: Clarify the need
167 for choices after -fzero-call-used-regs and -fstrub.
168 * gnat_rm.texi: Regenerate.
169
1702022-07-13 Yannick Moy <moy@adacore.com>
171
172 * sem_prag.adb (Analyze_Pragma): Recognize a generated subtype
173 with Ghost pragma for generic instantiations.
174
1752022-07-13 Yannick Moy <moy@adacore.com>
176
177 * libgnat/s-aridou.adb (Lemma_Mult_Div, Lemma_Powers): New
178 lemmas.
179 (Prove_Sign_Quotient): New local lemma.
180 (Prove_Signs): Expand definition of Big_R and Big_Q in the
181 postcondition. Add intermediate assertions.
182 (Double_Divide): Call new lemma.
183 (Lemma_Div_Eq): Provide body for proving lemma.
184 (Lemma_Powers_Of_2, Lemma_Shift_Without_Drop,
185 Prove_Dividend_Scaling, Prove_Multiplication, Prove_Z_Low): Call
186 lemmas, add intermediate assertions.
187
1882022-07-13 Piotr Trojanek <trojanek@adacore.com>
189
190 * inline.adb (Has_Single_Return): Add guard for the subsequent
191 call to Expression.
192
1932022-07-13 Eric Botcazou <ebotcazou@adacore.com>
194
195 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set Acts_As_Spec
196 earlier if the body is not the completion of a declaration.
197 (Check_Untagged_Equality): Deal with subprogram bodies that are
198 not the completion of a declaration and make sure that they are
199 not flagged when they cause the freezing of the type themselves.
200 Give a warning on the freezing point of the type in more cases.
201 * sem_res.adb (Resolve_Equality_Op): Revert latest change.
202
2032022-07-13 Yannick Moy <moy@adacore.com>
204
205 * libgnat/s-arit32.adb (Scaled_Divide32): Add an assertion, move
206 the call of Prove_Sign_R around.
207
2082022-07-13 Marc Poulhiès <poulhies@adacore.com>
209
210 * exp_ch4.adb (Expand_N_If_Expression): Test for compile time
211 known bounds when handling slices.
212
2132022-07-13 Eric Botcazou <ebotcazou@adacore.com>
214
215 * exp_util.ads (Integer_Type_For): Mention Small_Integer_Type_For.
216 (Small_Integer_Type_For): Mention Integer_Type_For.
217
2182022-07-13 Eric Botcazou <ebotcazou@adacore.com>
219
220 * sem_res.adb (Resolve_Equality_Op): Make sure that the user-defined
221 operator of an untagged record type is declared ahead of an instance
222 before using it to resolve the equality operator in the instance.
223
2242022-07-13 Justin Squirek <squirek@adacore.com>
225
226 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Add default
227 initialization for Stmts.
228 * sem_ch12.adb (Analyze_Associations): Add default
229 initialization for Match.
230 * libgnat/a-ztenau.adb (Scan_Enum_Lit): Remove duplicated
231 boolean test.
232 * libgnat/g-spipat.adb (XMatch): Combine duplicated cases.
233
2342022-07-13 Piotr Trojanek <trojanek@adacore.com>
235
236 * par-prag.adb (Check_Arg_Count): Change parameter type from Int
237 to Nat, because this parameter is compared to Arg_Count variable
238 which is of type Nat. Also, it wouldn't make sense to check for
239 negative number of pragma arguments.
240
43997608
GA
2412022-07-12 Piotr Trojanek <trojanek@adacore.com>
242
243 * exp_ch11.adb (Expand_N_Exception_Declaration): Sync comment
244 with declaration in System.Standard_Library.
245
2462022-07-12 Marc Poulhiès <poulhies@adacore.com>
247
248 * libgnat/s-secsta.adb (Has_Enough_Free_Memory): Check for full
249 chunk before computing the available size.
250
2512022-07-12 Steve Baird <baird@adacore.com>
252
253 * exp_ch4.adb (Expand_Nonbinary_Modular_Op.Expand_Modular_Op):
254 Reimplement choice of which predefined type to use for the
255 implementation of a predefined operation of a modular type with
256 a non-power-of-two modulus.
257
2582022-07-12 Justin Squirek <squirek@adacore.com>
259
260 * einfo.ads: Modify documentation for In_Use flag to include
261 scope stack manipulation.
262 * sem_ch8.adb (Use_One_Type): Add condition to return when
263 attempting to detect redundant use_type_clauses in child units
264 in certain cases.
265
2662022-07-12 Eric Botcazou <ebotcazou@adacore.com>
267
268 * restrict.ads (type ND_Entry): Add System_Child component.
269 (Check_Restriction_No_Dependence_On_System): Declare.
270 * restrict.adb (Global_Restriction_No_Tasking): Move around.
271 (Violation_Of_No_Dependence): New procedure.
272 (Check_Restriction_No_Dependence): Call Violation_Of_No_Dependence
273 to report a violation.
274 (Check_Restriction_No_Dependence_On_System): New procedure.
275 (Set_Restriction_No_Dependenc): Set System_Child component if the
276 unit is a child of System.
277 * snames.ads-tmpl (Name_Arith_64): New package name.
278 (Name_Arith_128): Likewise.
279 (Name_Memory): Likewise.
280 (Name_Stack_Checking): Likewise.
281 * fe.h (Check_Restriction_No_Dependence_On_System): Declare.
282
2832022-07-12 Bob Duff <duff@adacore.com>
284
285 * par.adb (P_Declarative_Items): New function to parse a
286 sequence of declarative items.
287 (P_Sequence_Of_Statements): Add Handled flag, to indicate
288 whether to wrap the result in a block statement.
289 * par-ch3.adb (P_Declarative_Item): Rename P_Declarative_Items
290 to be P_Declarative_Item, because it really only parses a single
291 declarative item, and to avoid conflict with the new
292 P_Declarative_Items. Add In_Statements. We keep the old
293 error-recovery mechanisms in place when In_Statements is False.
294 When True, we don't want to complain about statements, because
295 we are parsing a sequence of statements.
296 (P_Identifier_Declarations): If In_Statements, and we see what
297 looks like a statement, we no longer give an error. We return to
298 P_Sequence_Of_Statements with Done = True, so it can parse the
299 statement.
300 * par-ch5.adb (P_Sequence_Of_Statements): Call
301 P_Declarative_Items to parse declarative items that appear in
302 the statement list. Remove error handling code that complained
303 about such items. Check some errors conservatively. Wrap the
304 result in a block statement when necessary.
305 * par-ch11.adb (P_Handled_Sequence_Of_Statements): Pass
306 Handled => True to P_Sequence_Of_Statements.
307 * types.ads (No, Present): New functions for querying
308 Source_Ptrs (equal, not equal No_Location).
309
3102022-07-12 Piotr Trojanek <trojanek@adacore.com>
311
312 * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings):
313 Fix range of iteration.
314
3152022-07-12 Piotr Trojanek <trojanek@adacore.com>
316
317 * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings):
318 Do not process expression of unknown restrictions.
319
3202022-07-12 Vasiliy Fofanov <fofanov@adacore.com>
321
322 * makeusg.adb,
323 doc/gnat_ugn/building_executable_programs_with_gnat.rst: Move -P
324 to the top of switches list and make it clear that gnatmake
325 passes the ball to gprbuild if -P is set.
326 * gnat_ugn.texi: Regenerate.
327
3282022-07-12 Bob Duff <duff@adacore.com>
329
330 * libgnat/g-socthi__vxworks.adb (C_Connect): Suppress new warning.
331
3322022-07-12 Piotr Trojanek <trojanek@adacore.com>
333
334 * sem_attr.adb (Set_Boolean_Result): Simplify using
335 Boolean_Literals.
336
3372022-07-12 Yannick Moy <moy@adacore.com>
338
339 * errout.adb (Record_Compilation_Errors): Remove global
340 variable.
341 (Compilation_Errors): Simplify.
342 (Initialize): Inline Reset_Warnings.
343 (Reset_Warnings): Remove.
344 * errout.ads (Reset_Warnings): Remove.
345 (Compilation_Errors): Update comment.
346 * gnat1drv.adb (Adjust_Global_Switches): Ignore all frontend
347 warnings in GNATprove mode, except regarding elaboration and
348 suspicious contracts.
349
3502022-07-12 Eric Botcazou <ebotcazou@adacore.com>
351
352 * sem_util.adb (Caller_Known_Size_Record): Make entry assertion
353 more robust and add guard for null argument. For protected
354 types, invoke Caller_Known_Size_Record on
355 Corresponding_Record_Type.
356 (Needs_Secondary_Stack): Likewise.
357
3582022-07-12 Doug Rupp <rupp@adacore.com>
359
360 * libgnat/system-vxworks7-ppc-rtp.ads: Remove
361 * libgnat/system-vxworks7-x86-rtp.ads: Likewise.
362
3632022-07-12 Piotr Trojanek <trojanek@adacore.com>
364
365 * sem_ch12.adb (Analyze_Package_Instantiation): Remove dubious
366 call to Set_Comes_From_Source.
367
3682022-07-12 Bob Duff <duff@adacore.com>
369
370 * sem_ch5.adb (Check_Unreachable_Code): Refine heuristics.
371 * sem_util.ads, sem_util.adb (Is_Static_Constant_Name): Remove
372 this; instead we have a new function Is_Simple_Case in
373 Sem_Ch5.Check_Unreachable_Code.
374
3752022-07-12 Bob Duff <duff@adacore.com>
376
377 * gnatls.adb (Output_License_Information): Remove pragma
378 No_Return; call sites deal with Exit_Program.
379 * libgnat/g-socthi.adb (C_Connect): Suppress warning about
380 unreachable code.
381 * sem_ch5.adb (Check_Unreachable_Code): Special-case if
382 statements with static conditions. If we remove unreachable
383 code (including the return statement) from a function, add
384 "raise Program_Error", so we won't warn about missing returns.
385 Remove Original_Node in test for N_Raise_Statement; it's not
386 needed. Remove test for CodePeer_Mode; if Operating_Mode =
387 Generate_Code, then CodePeer_Mode can't be True. Misc cleanup.
388 Do not reuse Nxt variable for unrelated purpose (the usage in
389 the Kill_Dead_Code loop is entirely local to the loop).
390 * sem_ch6.adb: Add check for Is_Transfer. Misc cleanup.
391 * sem_prag.adb: Minor.
392 * sem_res.adb: Minor.
393 * sem_util.adb: Minor cleanup.
394 (Is_Trivial_Boolean): Move to nonnested place, so it can be
395 called from elsewhere.
396 (Is_Static_Constant_Boolean): New function.
397 * sem_util.ads (Is_Trivial_Boolean): Export.
398 (Is_Static_Constant_Boolean): New function.
399
4002022-07-12 Eric Botcazou <ebotcazou@adacore.com>
401
402 * libgnat/s-stchop.ads: Use a double underscore prefix for symbols.
403
4042022-07-12 Ed Schonberg <schonberg@adacore.com>
405
406 * freeze.adb (Check_Expression_Function.Find_Constant): Add a
407 check that a type that is referenced as the prefix of an
408 attribute is fully declared.
409 (Freeze_And_Append): Do not freeze the profile when freezing an
410 expression function.
411 (Freeze_Entity): When a tagged type is frozen, also freeze any
412 primitive operations of the type that are expression functions.
413 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not prevent
414 freezing associated with an expression function body if the
415 function is a dispatching op.
416
4172022-07-12 Piotr Trojanek <trojanek@adacore.com>
418
419 * sem_ch7.adb (Analyze_Package_Declaration): Check references to
420 unset objects.
421
4222022-07-12 Piotr Trojanek <trojanek@adacore.com>
423
424 * sem_ch13.adb (Analyze_Aspect_Yield): Look at the entity kind,
425 not at the declaration kind.
426
4272022-07-12 Joffrey Huguet <huguet@adacore.com>
428
429 * libgnarl/a-reatim.ads, libgnat/a-cfdlli.ads,
430 libgnat/a-cfhama.ads, libgnat/a-cfhase.ads,
431 libgnat/a-cfinse.ads, libgnat/a-cfinve.ads,
432 libgnat/a-cforma.ads, libgnat/a-cforse.ads,
433 libgnat/a-chahan.ads, libgnat/a-cofove.ads,
434 libgnat/a-cofuma.ads, libgnat/a-cofuse.ads,
435 libgnat/a-cofuve.ads, libgnat/a-nbnbin.ads,
436 libgnat/a-nbnbre.ads, libgnat/a-ngelfu.ads,
437 libgnat/a-nlelfu.ads, libgnat/a-nllefu.ads,
438 libgnat/a-nselfu.ads, libgnat/a-nuelfu.ads,
439 libgnat/a-strbou.ads, libgnat/a-strfix.ads,
440 libgnat/a-strmap.ads, libgnat/a-strunb.ads,
441 libgnat/a-strunb__shared.ads, libgnat/a-strsea.ads,
442 libgnat/a-textio.ads, libgnat/a-tideio.ads,
443 libgnat/a-tienio.ads, libgnat/a-tifiio.ads,
444 libgnat/a-tiflio.ads, libgnat/a-tiinio.ads,
445 libgnat/a-timoio.ads, libgnat/i-c.ads, libgnat/interfac.ads,
446 libgnat/interfac__2020.ads, libgnat/s-atacco.ads,
447 libgnat/s-stoele.ads: Annotate packages and subprograms with
448 returning annotations.
449
4502022-07-12 Eric Botcazou <ebotcazou@adacore.com>
451
452 * rtsfind.ads (RE_Id): Remove RE_Str_Concat_Bounds_N values.
453 (RE_Unit_Table): Remove RE_Str_Concat_Bounds_N entries.
454 * libgnat/s-conca2.ads (Str_Concat_2): Adjust head comment.
455 (Str_Concat_Bounds_2): Delete.
456 * libgnat/s-conca2.adb (Str_Concat_2): Use the length of the last
457 input to size the last assignment.
458 (Str_Concat_Bounds_2): Delete.
459 * libgnat/s-conca3.ads (Str_Concat_3): Adjust head comment.
460 (Str_Concat_Bounds_3): Delete.
461 * libgnat/s-conca3.adb (Str_Concat_3): Use the length of the last
462 input to size the last assignment.
463 (Str_Concat_Bounds_3): Delete.
464 * libgnat/s-conca4.ads (Str_Concat_4): Adjust head comment.
465 (Str_Concat_Bounds_4): Delete.
466 * libgnat/s-conca4.adb (Str_Concat_4): Use the length of the last
467 input to size the last assignment.
468 (Str_Concat_Bounds_4): Delete.
469 * libgnat/s-conca5.ads (Str_Concat_5): Adjust head comment.
470 (Str_Concat_Bounds_5): Delete.
471 * libgnat/s-conca5.adb (Str_Concat_5): Use the length of the last
472 input to size the last assignment.
473 (Str_Concat_Bounds_5): Delete.
474 * libgnat/s-conca6.ads (Str_Concat_6): Adjust head comment.
475 (Str_Concat_Bounds_6): Delete.
476 * libgnat/s-conca6.adb (Str_Concat_6): Use the length of the last
477 input to size the last assignment.
478 (Str_Concat_Bounds_6): Delete.
479 * libgnat/s-conca7.ads (Str_Concat_7): Adjust head comment.
480 (Str_Concat_Bounds_7): Delete.
481 * libgnat/s-conca7.adb (Str_Concat_7): Use the length of the last
482 input to size the last assignment.
483 (Str_Concat_Bounds_7): Delete.
484 * libgnat/s-conca8.ads (Str_Concat_8): Adjust head comment.
485 (Str_Concat_Bounds_8): Delete.
486 * libgnat/s-conca8.adb (Str_Concat_8): Use the length of the last
487 input to size the last assignment.
488 (Str_Concat_Bounds_8): Delete.
489 * libgnat/s-conca9.ads (Str_Concat_9): Adjust head comment.
490 (Str_Concat_Bounds_9): Delete.
491 * libgnat/s-conca9.adb (Str_Concat_9): Use the length of the last
492 input to size the last assignment.
493 (Str_Concat_Bounds_9): Delete.
494
4952022-07-12 Bob Duff <duff@adacore.com>
496
497 * exp_ch5.adb (Expand_Iterator_Loop_Over_Array): Use _Next and
498 _Previous in the optimized expansion of "for ... of". No longer
499 need to check parameter profiles for these, because the
500 leading-underscore names are unique.
501 * libgnat/a-convec.ads (_Next, _Previous): Renamings of Next and
502 Previous, to avoid namespace pollution.
503 * libgnat/a-cbdlli.ads, libgnat/a-cbhama.ads,
504 libgnat/a-cbhase.ads, libgnat/a-cbmutr.ads,
505 libgnat/a-cborma.ads, libgnat/a-cborse.ads,
506 libgnat/a-cdlili.ads, libgnat/a-cidlli.ads,
507 libgnat/a-cihama.ads, libgnat/a-cihase.ads,
508 libgnat/a-cimutr.ads, libgnat/a-ciorma.ads,
509 libgnat/a-ciorse.ads, libgnat/a-cobove.ads,
510 libgnat/a-cohama.ads, libgnat/a-cohase.ads,
511 libgnat/a-coinve.ads, libgnat/a-comutr.ads,
512 libgnat/a-coorma.ads, libgnat/a-coorse.ads: Likewise. Also,
513 remove duplicated comments -- refer to one comment about _Next,
514 _Previous, Pseudo_Reference in libgnat/a-convec.ads. DRY.
515 * scng.adb (Scan): Allow leading underscores in identifiers in
516 the run-time library.
517 * snames.ads-tmpl (Name_uNext, Name_uPrevious): New names with
518 leading underscores.
519
5202022-07-12 Piotr Trojanek <trojanek@adacore.com>
521
522 * sem_ch5.adb (Check_Unreachable_Code): Extend suppression to
523 calls with No_Return aspect, but narrow it to functions.
524 * sem_res.adb (Resolve_Call): Warn about unreachable code after
525 calls with No_Return.
526
5272022-07-12 Bob Duff <duff@adacore.com>
528
529 * scans.ads: Fix obsolete comments about Tok_Special, and give
530 Special_Character a predicate assuring it is one of the two
531 characters used in preprocessing.
532 * scng.ads: Clean up comments.
533 * scng.adb: Clean up handling of Tok_Special. Remove comment
534 about '@' (target_name), which doesn't seem very helpful.
535 Set_Special_Character will now blow up if given anything other
536 than '#' and '$', because of the predicate on Special_Character;
537 it's not clear why it used to say "when others => null;".
538 Remove Comment_Is_Token, which is not used.
539 * scn.ads: Remove commented-out use clause. Remove redundant
540 comment.
541 * ali-util.adb: Use "is null" for do-nothing procedures.
542 * gprep.adb (Post_Scan): Use "is null".
543
5442022-07-12 Bob Duff <duff@adacore.com>
545
546 * libgnarl/s-solita.adb (Task_Termination_Handler_T): Ignore all
547 exceptions propagated by Specific_Handler.
548 * libgnarl/s-tassta.adb, libgnarl/s-taskin.ads: Minor.
549
5502022-07-12 Marc Poulhiès <poulhies@adacore.com>
551
552 * sem.adb (Preanalyze): Suppress checks when not in GNATprove
553 mode.
554 * sem_res.adb (Preanalyze_And_Resolve): Add cross reference in
555 comment to above procedure.
556 * sinfo.ads: Typo fix in comment.
557
5582022-07-12 Julien Bortolussi <bortolussi@adacore.com>
559
560 * libgnat/a-cfidll.adb, libgnat/a-cfidll.ads: Implementation
561 files of the formal unbounded indefinite list.
562 * Makefile.rtl, impunit.adb: Take into account the add of the
563 new files.
564
5652022-07-12 Piotr Trojanek <trojanek@adacore.com>
566
567 * sem_util.adb (Is_Variable): Remove excessive guard.
568
4bc92c3b
GA
5692022-07-06 Piotr Trojanek <trojanek@adacore.com>
570
571 * gcc-interface/Make-lang.in (ada/generated/gnatvsn.ads):
572 Simplify regular expression. The "interval expression",
573 i.e. \{8\} is part of the POSIX regular expressions, so it
574 should not be a problem for modern implementations of sed.
575
5762022-07-06 Eric Botcazou <ebotcazou@adacore.com>
577
578 * gcc-interface/trans.cc (gnat_to_gnu): Update comment.
579
5802022-07-06 Eric Botcazou <ebotcazou@adacore.com>
581
582 * gcc-interface/gigi.h (simple_constant_p): Declare.
583 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Strip
584 the qualifiers from the type of a simple constant.
585 (simple_constant_p): New predicate.
586 * gcc-interface/trans.cc (node_is_atomic): Return true for objects
587 with atomic type except for simple constants.
588 (node_is_volatile_full_access): Return false for simple constants
589 with VFA type.
590
5912022-07-06 Eric Botcazou <ebotcazou@adacore.com>
592
593 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Create a
594 local constant holding the underlying GNAT type of the object. Do
595 not fiddle with the object size for an unconstrained array.
596
5972022-07-06 Eric Botcazou <ebotcazou@adacore.com>
598
599 * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Constify a
600 local variable and move a couple of others around.
601
6022022-07-06 Eric Botcazou <ebotcazou@adacore.com>
603
604 * gcc-interface/trans.cc (gnat_gimplify_expr) <SAVE_EXPR>: New case.
605
6062022-07-06 Eric Botcazou <ebotcazou@adacore.com>
607
608 * exp_ch6.adb (Function return mechanisms): New paragraph.
609
6102022-07-06 Yannick Moy <moy@adacore.com>
611
612 * sem_util.adb (Is_Non_Preelaborable_Construct): Fix for
613 deferred constants.
614
6152022-07-06 Justin Squirek <squirek@adacore.com>
616
617 * libgnat/s-regpat.adb, libgnat/s-regpat.ads (Compile): Add a
618 new defaulted parameter Error_When_Too_Small to trigger an
619 error, if specified true, when Matcher is too small to hold the
620 compiled regex program.
621
6222022-07-06 Justin Squirek <squirek@adacore.com>
623
624 * sem_ch4.adb (Analyze_Selected_Component): Add condition to
625 avoid interpreting derived type components as candidates for
626 selected components in preanalysis of inherited class
627 conditions.
628
6292022-07-06 Yannick Moy <moy@adacore.com>
630
631 * ghost.adb (Check_Ghost_Context): Delay checking for generic
632 associations.
633 (Check_Ghost_Context_In_Generic_Association): Perform ghost
634 checking in analyzed generic associations.
635 (Check_Ghost_Formal_Procedure_Or_Package): Check SPARK RM
636 6.9(13-14) for formal procedures and packages.
637 (Check_Ghost_Formal_Variable): Check SPARK RM 6.9(13-14) for
638 variables.
639 * ghost.ads: Declarations for the above.
640 * sem_ch12.adb (Analyze_Associations): Apply delayed checking
641 for generic associations.
642 (Analyze_Formal_Object_Declaration): Same.
643 (Analyze_Formal_Subprogram_Declaration): Same.
644 (Instantiate_Formal_Package): Same.
645 (Instantiate_Formal_Subprogram): Same.
646 (Instantiate_Object): Same. Copy ghost aspect to newly declared
647 object for actual for IN formal object. Use new function
648 Get_Enclosing_Deep_Object to retrieve root object.
649 (Instantiate_Type): Copy ghost aspect to declared subtype for
650 actual for formal type.
651 * sem_prag.adb (Analyze_Pragma): Recognize new allowed
652 declarations.
653 * sem_util.adb (Copy_Ghost_Aspect): Copy the ghost aspect
654 between nodes.
655 (Get_Enclosing_Deep_Object): New function to return enclosing
656 deep object (or root for reachable part).
657 * sem_util.ads (Copy_Ghost_Aspect): Same.
658 (Get_Enclosing_Deep_Object): Same.
659 * libgnat/s-imageu.ads: Declare formal subprograms as ghost.
660 * libgnat/s-valuei.ads: Same.
661 * libgnat/s-valuti.ads: Same.
662
6632022-07-06 Javier Miranda <miranda@adacore.com>
664
665 * sem_res.adb (Resolve_Type_Conversion): Code cleanup since the
666 previous static check has been moved to Valid_Tagged_Conversion.
667 (Valid_Tagged_Conversion): Fix the code checking conversion
668 to/from interface types since incorrectly returns True when the
669 parent type of the operand type (or the target type) is an
670 interface type; add missing static checks on interface type
671 conversions.
672
6732022-07-06 Marc Poulhiès <poulhies@adacore.com>
674
675 * libgnat/s-secsta.ads (SS_Allocate): Add new Alignment
676 parameter.
677 (Memory_Alignment): Remove.
678 * libgnat/s-secsta.adb (Align_Addr): New.
679 (SS_Allocate): Add new Alignment parameter. Realign pointer if
680 needed. Don't allocate anything for 0-sized allocations.
681 * gcc-interface/utils2.cc (build_call_alloc_dealloc_proc): Add
682 allocated object's alignment as last parameter to allocation
683 invocation.
684
6852022-07-06 Piotr Trojanek <trojanek@adacore.com>
686
687 * libgnat/g-socket.adb (Get_Address_Info): Reduce scope of the
688 Found variable; avoid repeated assignment inside the loop.
689
6902022-07-06 Doug Rupp <rupp@adacore.com>
691
692 * Makefile.rtl [arm,aarch64 vxworks7]: Remove rtp and kernel
693 build macros and set an error variable if needed.
694 [x86,x86_vxworks7]: Likewise.
695 [ppc,ppc64]: Set an error variable if needed.
696 (rts-err): New phony Makefile target.
697 (setup-rts): Depend on rts-err.
698
6992022-07-06 Eric Botcazou <ebotcazou@adacore.com>
700
701 * exp_ch3.adb (Make_Allocator_For_BIP_Return): New local function.
702 (Expand_N_Object_Declaration): Use it to build the three allocators
703 for a Build-In-Place return with an unconstrained type. Update the
704 head comment after other recent changes.
705
7062022-07-06 Doug Rupp <rupp@adacore.com>
707
708 * libgnat/system-vxworks7-e500-kernel.ads: Remove.
709 * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise.
710 * libgnat/system-vxworks7-e500-rtp.ads: Likewise.
711
7122022-07-06 Justin Squirek <squirek@adacore.com>
713
714 * gnat_cuda.adb (Empty_CUDA_Global_Subprogram): Set
715 Specification and Corresponding_Spec to match the original
716 Kernel_Body.
717
7182022-07-06 Piotr Trojanek <trojanek@adacore.com>
719
720 * exp_ch6.adb (Build_Static_Check_Helper_Call): Replace explicit
721 call to Make_Unchecked_Type_Conversion with a call to
722 Unchecked_Convert_To.
723 * tbuild.adb (Unchecked_Convert_To): Fix whitespace.
724
7252022-07-06 Piotr Trojanek <trojanek@adacore.com>
726
727 * sem_res.adb (Resolve_Actuals): Restore first sentence of a
728 comment.
729
7302022-07-06 Eric Botcazou <ebotcazou@adacore.com>
731
732 * exp_aggr.adb (Expand_Record_Aggregate): Do not call
733 Is_Full_Access_Aggregate here.
734 * freeze.ads (Is_Full_Access_Aggregate): Delete.
735 * freeze.adb (Is_Full_Access_Aggregate): Move to...
736 (Freeze_Entity): Do not call Is_Full_Access_Aggregate here.
737 * sem_aggr.adb (Is_Full_Access_Aggregate): ...here
738 (Resolve_Aggregate): Call Is_Full_Access_Aggregate here.
739
d1f3a3ff
GA
7402022-07-05 Piotr Trojanek <trojanek@adacore.com>
741
742 * doc/gnat_ugn/building_executable_programs_with_gnat.rst
743 (Warning Message Control): Update description of switch -gnatwj.
744 * gnat_ugn.texi: Regenerate.
745 * sem_ch10.adb (Analyze_With_Clause): Warn on WITH clauses for
746 obsolete renamed units; in Ada 83 mode do not consider
747 predefined renamings to be obsolete.
748
7492022-07-05 Eric Botcazou <ebotcazou@adacore.com>
750
751 * exp_util.adb (Make_Subtype_From_Expr): Do not set field to Empty.
752 * sem_util.adb (Visit_Itype): Remove ??? comment.
753
7542022-07-05 Piotr Trojanek <trojanek@adacore.com>
755
756 * sem_attr.adb (Note_Possible_Modification): Revert a
757 special-case for validity checks on Long_Float type.
758 * snames.ads-tmpl (Name_Attr_Long_Float): Remove name added
759 exclusively for the mentioned fix.
760
7612022-07-05 Piotr Trojanek <trojanek@adacore.com>
762
763 * sem_ch6.adb (Set_Formal_Mode): Remove unnecessary setting of
764 Never_Set_In_Source.
765
7662022-07-05 Piotr Trojanek <trojanek@adacore.com>
767
768 * sem_ch6.adb (Process_Formals): Avoid repeated calls to
769 Expression.
770
7712022-07-05 Piotr Trojanek <trojanek@adacore.com>
772
773 * exp_code.adb (Setup_Asm_IO_Args): Remove guard against No_List.
774 * par_sco.adb (Process_Decisions): Likewise.
775 * sem_ch13.adb (Check_Component_List): Likewise.
776 * sem_ch6.adb (FCL): Likewise.
777
7782022-07-05 Doug Rupp <rupp@adacore.com>
779
780 * cstreams.c (__gnat_full_name) [QNX]: Remove block.
781
7822022-07-05 Piotr Trojanek <trojanek@adacore.com>
783
784 * osint.adb (Locate_File): Use Name_Find with a parameter and
785 not with a global buffer.
786
7872022-07-05 Piotr Trojanek <trojanek@adacore.com>
788
789 * exp_ch3.adb (Build_Init_Statements): Reuse Get_Pragma_Arg.
790 * exp_prag.adb (Arg_N): Likewise.
791
7922022-07-05 Yannick Moy <moy@adacore.com>
793
794 * ghost.adb (Is_OK_Ghost_Context): Detect ghost type inside object
795 renaming.
796
7972022-07-05 Bob Duff <duff@adacore.com>
798
799 * exp_ch7.adb: Change two constants Is_Protected_Body and
800 Is_Prot_Body to be Is_Protected_Subp_Body; these are not true
801 for protected bodies, but for protected subprogram bodies.
802 (Expand_Cleanup_Actions): No need to search for
803 Activation_Chain_Entity; just use Activation_Chain_Entity.
804 * sem_ch8.adb (Find_Direct_Name): Use Entyp constant.
805 * atree.adb, atree.ads, atree.h, nlists.adb, nlists.ads
806 (Parent): Provide nonoverloaded versions of Parent, so that they
807 can be easily found in the debugger.
808 * debug_a.adb, debug_a.ads: Clarify that we're talking about the
809 -gnatda switch; switches are case sensitive. Print out the
810 Chars field if appropriate, which makes it easier to find things
811 in the output.
812 (Debug_Output_Astring): Simplify. Also fix an off-by-one
813 bug ("for I in Vbars'Length .." should have been "for I in
814 Vbars'Length + 1 .."). Before, it was printing Debug_A_Depth +
815 1 '|' characters if Debug_A_Depth > Vbars'Length.
816
8172022-07-05 Piotr Trojanek <trojanek@adacore.com>
818
819 * sem_prag.adb (Analyze_Pragma): Remove unnecessary call to
820 Analyze.
821
8222022-07-05 Piotr Trojanek <trojanek@adacore.com>
823
824 * libgnat/g-socket.adb (Raise_Host_Error): Add No_Return aspect.
825 (Raise_GAI_Error): Likewise.
826 * libgnat/g-socket.ads (Raise_Socket_Error): Likewise.
827
8282022-07-05 Piotr Trojanek <trojanek@adacore.com>
829
830 * sem_util.adb (Aggregate_Constraint_Checks): Fix whitespace;
831 refactor repeated code; replace a ??? comment with an
832 explanation based on the comment for the routine spec.
833
8342022-07-05 Piotr Trojanek <trojanek@adacore.com>
835
836 * sem_util.ads (Note_Possible_Modification): Fix occurrence of
837 May_Be_Modified in comment.
838 * sem_warn.ads (Check_Unset_Reference): Fix occurrence of
839 Not_Assigned in comment.
840
8412022-07-05 Yannick Moy <moy@adacore.com>
842
843 * sem_attr.adb (Analyze_Attribute): Take into account the
844 possibility of homonyms.
845
8462022-07-05 Eric Botcazou <ebotcazou@adacore.com>
847
848 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as a renaming
849 for any nonaliased local object with nominal unconstrained subtype
850 originally initialized with the result of a function call that has
851 been rewritten as the dereference of a reference to the result.
852 * sem_ch3.adb (Analyze_Object_Declaration): Do not do it here
853
8542022-07-05 Arnaud Charlet <charlet@adacore.com>
855
856 * exp_imgv.adb (Build_Enumeration_Image_Tables): Also disable
857 perfect hash in GNAT_Mode.
858 * raise-gcc.c (__gnat_Unwind_RaiseException): Add support for
859 disabling exception propagation.
860 * sem_eval.adb (Compile_Time_Known_Value): Update comment and
861 remove wrong call to Check_Error_Detected.
862 * sem_prag.adb (Check_Loop_Pragma_Grouping, Analyze_Pragma):
863 Remove exception propagation during bootstrap.
864
8652022-07-05 Eric Botcazou <ebotcazou@adacore.com>
866
867 * exp_aggr.adb (Expand_Array_Aggregate): Remove obsolete code.
868 Delay the expansion of aggregates initializing return objects of
869 build-in-place functions.
870 * exp_ch3.ads (Ensure_Activation_Chain_And_Master): Delete.
871 * exp_ch3.adb (Ensure_Activation_Chain_And_Master): Fold back to...
872 (Expand_N_Object_Declaration): ...here.
873 Perform the expansion of return objects of build-in-place functions
874 here instead of...
875 * exp_ch6.ads (Is_Build_In_Place_Return_Object): Declare.
876 * exp_ch6.adb (Expand_N_Extended_Return_Statement): ...here.
877 (Is_Build_In_Place_Result_Type): Alphabetize.
878 (Is_Build_In_Place_Return_Object): New predicate.
879 * exp_ch7.adb (Enclosing_Function): Delete.
880 (Process_Object_Declaration): Tidy up handling of return objects.
881 * sem_ch3.adb (Analyze_Object_Declaration): Do not decorate and
882 freeze the actual type if it is the same as the nominal type.
883 * sem_ch6.adb: Remove use and with clauses for Exp_Ch3.
884 (Analyze_Function_Return): Analyze again all return objects.
885 (Create_Extra_Formals): Do not force the definition of an Itype
886 if the subprogram is a compilation unit.
887
8882022-07-05 Piotr Trojanek <trojanek@adacore.com>
889
890 * gnatls.adb (Corresponding_Sdep_Entry): Remove dead return
891 statement in defensive path; there is another return statement
892 for a normal execution of this routine, so rule Ada RM 6.5(5),
893 which requires function to have at least one return statement is
894 still satisfied.
895 (Gnatls): Remove dead, call to nonreturning Exit_Program after
896 Output_License_Information which itself does not return.
897 * libgnat/a-exstat.adb (Bad_EO): Remove raise statement that was
898 meant to please some ancient version of GNAT.
899 * libgnat/g-awk.adb (Raise_With_Info): Likewise.
900 * sem_attr.adb (Check_Reference): Remove dead return statement;
901 rule Ada RM 6.5(5), which requires function to have at least one
902 return statement is still satisfied.
903 (Analyze_Attribute): Remove dead exit statement.
904 (Check_Reference): Same as above.
905 * sem_ch12.adb (Instantiate_Formal_Package): Remove dead raise
906 statement; it was inconsistent with other calls to
907 Abandon_Instantiation, which are not followed by a raise
908 statement.
909 * sem_prag.adb (Process_Convention): Remove dead defensive
910 assignment.
911 (Interrupt_State): Remove dead defensive exit statement.
912 (Do_SPARK_Mode): Likewise.
913 * sfn_scan.adb (Scan_String): Remove dead defensive assignment.
914
9152022-07-05 Piotr Trojanek <trojanek@adacore.com>
916
917 * sem_attr.adb, sem_prag.adb: Remove dead return statements
918 after calls to Error_Attr, Error_Pragma, Error_Pragma_Arg and
919 Placement_Error. All these calls raise exceptions that are
920 handled to gently recover from errors.
921
9222022-07-05 Doug Rupp <rupp@adacore.com>
923
924 * libgnat/system-vxworks-ppc-kernel.ads (Word_Size): Compute
925 based on Standard'Word_Size.
926 (Memory_Size): Compute based on Word_Size.
927 * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise.
928 * libgnat/system-vxworks-ppc-rtp.ads: Likewise.
929
9302022-07-05 Piotr Trojanek <trojanek@adacore.com>
931
932 * sem_attr.adb (Analyze_Attribute): Move call to
933 Set_Address_Taken so that it is executed when the prefix
934 attribute is legal.
935
9362022-07-05 Piotr Trojanek <trojanek@adacore.com>
937
938 * sem_ch5.adb (Check_Unreachable_Code): Avoid explicit use of
939 Sloc; this should also help when we finally use Source_Span for
940 prettier error messages.
941
9422022-07-05 Piotr Trojanek <trojanek@adacore.com>
943
944 * sem_ch5.adb (Check_Unreachable_Code): Remove redundant guard;
945 the call to Present wasn't needed either.
946
9472022-07-05 Piotr Trojanek <trojanek@adacore.com>
948
949 * sem_ch5.adb (Analyze_Block_Statement): Call to List_Length with
950 No_List is safe and will return zero.
951
9522022-07-05 Piotr Trojanek <trojanek@adacore.com>
953
954 * sem_ch6.adb (Check_Missing_Return): Add reference to an RM rule.
955
9562022-07-05 Piotr Trojanek <trojanek@adacore.com>
957
958 * sem_ch6.adb (Check_Missing_Return): Remove outdated comment.
959
9602022-07-05 Dmitriy Anisimkov <anisimko@adacore.com>
961
962 * adaint.h (convert_addresses): Remove function declaration.
963
9642022-07-05 Doug Rupp <rupp@adacore.com>
965
966 * Makefile.rtl (*vxworks*): Remove most pre-vxworks7 code.
967 * vxworks-arm-link.spec: Remove.
968 * vxworks-e500-link.spec: Likewise.
969 * vxworks-smp-arm-link.spec: Likewise.
970 * vxworks-smp-e500-link.spec: Likewise.
971 * vxworks-smp-x86-link.spec: Likewise.
972 * libgnat/system-vxworks-arm-rtp-smp.ads: Likewise.
973 * libgnat/system-vxworks-arm-rtp.ads: Likewise.
974 * libgnat/system-vxworks-arm.ads: Likewise.
975 * libgnat/system-vxworks-e500-kernel.ads: Likewise.
976 * libgnat/system-vxworks-e500-rtp-smp.ads: Likewise.
977 * libgnat/system-vxworks-e500-rtp.ads: Likewise.
978 * libgnat/system-vxworks-x86-kernel.ads: Likewise.
979 * libgnat/system-vxworks-x86-rtp-smp.ads: Likewise.
980 * libgnat/system-vxworks-x86-rtp.ads: Likewise.
981
8467574d
GA
9822022-07-04 Eric Botcazou <ebotcazou@adacore.com>
983
984 * sem_disp.adb (Check_Dispatching_Call): Merge the two special cases
985 where there are no controlling actuals but tag-indeternminate ones.
986
9872022-07-04 Eric Botcazou <ebotcazou@adacore.com>
988
989 * exp_disp.adb (Expand_Dispatching_Call): Fix detection of calls
990 that are dispatching on tagged result.
991
9922022-07-04 Doug Rupp <rupp@adacore.com>
993
994 * Makefile.rtl (ADA_EXCLUDE_SRCS): Add s-qnx.ads.
995
9962022-07-04 Eric Botcazou <ebotcazou@adacore.com>
997
998 * exp_ch3.adb (Expand_N_Object_Declaration) <OK_To_Rename_Ref>: New
999 local function.
1000 <Rewrite_As_Renaming>: Change to a local variable whose value is
1001 computed once and generate a call to Finalize after this is done.
1002 Simplify the code creating the renaming at the end.
1003
10042022-07-04 Doug Rupp <rupp@adacore.com>
1005
1006 * Makefile.rtl (GCC_SPEC_FILES): Remove vxworks cert files.
1007
10082022-07-04 Piotr Trojanek <trojanek@adacore.com>
1009
1010 * sem_attr.adb (Resolve_Attribute): Refactor duplicated code for
1011 Count and Index attributes.
1012
10132022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1014
1015 * checks.adb (Apply_Length_Check_On_Assignment): Return early if
1016 the Suppress_Assignment_Checks flag is set.
1017 (Selected_Range_Checks): Deal with conditional expressions.
1018 * exp_ch4.adb (Too_Large_Length_For_Array): New constant.
1019 (Expand_Concatenate): Use it in lieu of Too_Large_Max_Length.
1020 (Expand_N_If_Expression): If the result has a unidimensional array
1021 type but the dependent expressions have constrained subtypes with
1022 known bounds, create a static temporary on the stack with a subtype
1023 covering the result.
1024 (Get_First_Index_Bounds): Deal with string literals.
1025 * uintp.ads (Uint_256): New deferred constant.
1026 * sinfo.ads (Suppress_Assignment_Checks): Document new usage.
1027
10282022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1029
1030 * exp_ch3.adb (Expand_N_Object_Declaration.Rewrite_As_Renaming):
1031 Do not rewrite if the declaration has got constraints.
1032 * sinfo.ads (Case Expression Alternative): Fix typo.
1033
10342022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1035
1036 * exp_ch3.adb (Expand_N_Object_Declaration.Rewrite_As_Renaming):
1037 Be prepared for slices.
1038 * exp_ch4.adb (Get_First_Index_Bounds): New procedure.
1039 (Expand_Array_Comparison.Length_Less_Than_4): Call it.
1040 (Expand_Concatenate): Try to compute a maximum length for
1041 operands with variable length and a maximum total length at the
1042 end. If the concatenation is dynamic, but a sensible maximum
1043 total length has been computed, use this length to create a
1044 static array subtype for the temporary and return a slice of it.
1045
10462022-07-04 Steve Baird <baird@adacore.com>
1047
1048 * sem_ch3.adb (Check_Possible_Deferred_Completion): Delete
1049 Prev_Obj_Def formal parameter. Reorganize code so that
1050 statically matching check is also performed in the case where
1051 the subtype given in the initial declaration is constrained and
1052 the subtype given in the completion is not.
1053
10542022-07-04 Bob Duff <duff@adacore.com>
1055
1056 * einfo-utils.ads, einfo-utils.adb: Add predicates on subtypes E
1057 and N. Change some parameters to use the unpredicated subtypes,
1058 because they sometimes return e.g. Empty. Note that N_Entity_Id
1059 has a predicate; Entity_Id does not.
1060 * exp_tss.adb (Base_Init_Proc): Use Entity_Id instead of E,
1061 because otherwise we fail the predicate. We shouldn't be
1062 referring to single-letter names from far away anyway.
1063 * sem_aux.adb (Is_Derived_Type): Likewise.
1064 * sem_res.adb (Is_Definite_Access_Type): Use N_Entity_Id for
1065 predicate.
1066 * types.ads (Entity_Id): Add comment explaining the difference
1067 between Entity_Id and N_Entity_Id.
1068
10692022-07-04 Justin Squirek <squirek@adacore.com>
1070
1071 * exp_util.adb (Remove_Side_Effects): Combine identical
1072 branches.
1073 * sem_attr.adb (Analyze_Attribute): Combine identical cases
1074 Attribute_Has_Same_Storage and Attribute_Overlaps_Storage.
1075 * sem_prag.adb (Check_Role): Combine E_Out_Parameter case with
1076 general case for parameters.
1077 * sem_util.adb (Accessibility_Level): Combine identical
1078 branches.
1079 * sprint.adb (Sprint_Node_Actual): Combine cases for
1080 N_Real_Range_Specification and N_Signed_Integer_Type_Definition.
1081
10822022-07-04 Justin Squirek <squirek@adacore.com>
1083
1084 * libgnat/s-os_lib.adb (Quote_Argument): Modify the result
1085 buffer size calculation to handle the case where Arg'Length is
1086 1.
1087
10882022-07-04 Bob Duff <duff@adacore.com>
1089
1090 * exp_util.adb (Expand_Subtype_From_Expr): Generate a new
1091 subtype when Is_Constr_Subt_For_UN_Aliased is True, so the
1092 Is_Constr_Subt_For_U_Nominal flag will not be set on the
1093 preexisting subtype.
1094 * sem_attr.adb, sem_ch3.adb: Minor.
1095
10962022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1097
1098 * debug.adb (d.9): Remove usage.
1099 * exp_ch6.adb (Expand_Simple_Function_Return): Remove redundant
1100 test on Debug_Flag_Dot_L.
1101 (Is_Build_In_Place_Result_Type): Return false for nonlimited types.
1102 (Is_Build_In_Place_Function): Tidy up and remove redundant test on
1103 Debug_Flag_Dot_L.
1104
11052022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1106
1107 * exp_ch3.adb (Expand_N_Object_Declaration): Don't adjust the object
1108 if the expression is a function call.
1109 <Rewrite_As_Renaming>: Return true if the object needs finalization
1110 and is initialized with the result of a function call returned on
1111 the secondary stack.
1112 * exp_ch6.adb (Expand_Ctrl_Function_Call): Add Use_Sec_Stack boolean
1113 parameter. Early return if the parent is an object declaration and
1114 Use_Sec_Stack is false.
1115 (Expand_Call_Helper): Adjust call to Expand_Ctrl_Function_Call.
1116 * exp_ch7.adb (Find_Last_Init): Be prepared for initialization still
1117 present in the object declaration.
1118 * sem_ch3.adb (Analyze_Object_Declaration): Call the predicates
1119 Needs_Secondary_Stack and Needs_Finalization to guard the renaming
1120 optimization.
1121
11222022-07-04 Bob Duff <duff@adacore.com>
1123
1124 * libgnat/a-cbhase.ads, libgnat/a-cborse.ads,
1125 libgnat/a-cihase.ads, libgnat/a-ciorse.ads,
1126 libgnat/a-cohase.ads, libgnat/a-coorse.ads (Key): New function
1127 that takes a Container parameter, implemented as an expression
1128 function, so it is self explanatory (doesn't need a comment).
1129
11302022-07-04 Vasiliy Fofanov <fofanov@adacore.com>
1131
1132 * doc/gnat_rm/the_gnat_library.rst: Fix length of title
1133 underlines.
1134
11352022-07-04 Steve Baird <baird@adacore.com>
1136
1137 * sem_ch4.adb (Analyze_Allocator): After calling Insert_Action
1138 to insert a subtype declaration associated with an allocator,
1139 the subtype declaration will usually be analyzed. But not
1140 always. Add an explicit call to Preanalyze to cope with the
1141 unusual case. The subtype declaration must be at least
1142 preanalyzed before the call to Sem_Ch3.Process_Subtype a little
1143 while later, during which we analyze an identifier that refers
1144 to the subtype.
1145
11462022-07-04 Steve Baird <baird@adacore.com>
1147
1148 * sem_warn.adb (Warn_On_Constant_Valid_Condition): Do not
1149 generate a warning if the expression in question is an assertion
1150 expression, or a subexpression thereof. But do call
1151 Test_Comparison so that it can generate warnings for the cases
1152 that it generates warnings for.
1153 * sem_prag.ads: Modify Assertion_Expression_Pragma constant so
1154 that the predicate Sem_Util.In_Assertion_Expression_Pragma
1155 returns True for the expression of a Compile_Time_Error pragma.
1156
11572022-07-04 Julien Bortolussi <bortolussi@adacore.com>
1158
1159 * doc/gnat_rm/the_gnat_library.rst: Add the new entry.
1160 * gnat_rm.texi: Regenerate.
1161
11622022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1163
1164 * sem_res.adb (Resolve_Comparison_Op): Deal with ambiguous operands
1165 in all cases.
1166 (Resolve_Equality_Op): Likewise, except for the case of the implicit
1167 inequality operator created for a user-defined operator that is not
1168 an intrinsic subprogram.
1169
11702022-07-04 Bob Duff <duff@adacore.com>
1171
1172 * libgnat/a-cbhase.adb, libgnat/a-cbhase.ads,
1173 libgnat/a-cborse.adb, libgnat/a-cborse.ads,
1174 libgnat/a-cihase.adb, libgnat/a-cihase.ads,
1175 libgnat/a-ciorse.adb, libgnat/a-ciorse.ads,
1176 libgnat/a-cohase.adb, libgnat/a-cohase.ads,
1177 libgnat/a-conhel.adb, libgnat/a-conhel.ads,
1178 libgnat/a-coorse.adb, libgnat/a-coorse.ads: Add Has_Element,
1179 Element, Query_Element, and Next subprograms that take a Set
1180 parameter. Add Tampering_With_Cursors_Prohibited function. These
1181 are all new in Ada 2022.
1182
11832022-07-04 Claire Dross <dross@adacore.com>
1184
1185 * doc/gnat_rm/the_gnat_library.rst: Functional vectors, sets,
1186 and maps are now controlled.
1187 * gnat_rm.texi: Regenerate.
1188
11892022-07-04 Claire Dross <dross@adacore.com>
1190
1191 * doc/gnat_ugn/building_executable_programs_with_gnat.rst
1192 (Debugging and Assertion Control): Add GNAT specific assertion
1193 pragmas to the equivalent Assertion_Policy for the -gnata
1194 option.
1195 * gnat_ugn.texi: Regenerate.
1196
11972022-07-04 Justin Squirek <squirek@adacore.com>
1198
1199 * sem_disp.adb (Most_Descendant_Use_Clause): Remove call to
1200 deprecated Is_Internal.
1201 * sem_util.adb (Innermost_Master_Scope_Depth): Use
1202 Find_Enclosing_Scope instead of Nearest_Dynamic_Scope to avoid
1203 cases where relevant scopes get skipped leading to an incorrect
1204 scope depth calculation.
1205
12062022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1207
1208 * exp_ch6.adb (Build_In_Place_Formal): Also compute Returns_By_Ref
1209 for the function if the extra formals were not built initially.
1210
12112022-07-04 Piotr Trojanek <trojanek@adacore.com>
1212
1213 * sem_ch13.adb (Resolve_Iterable_Operation): Add guard to
1214 prevent crash when the examined function has no formal
1215 parameters and Etype is called on Empty entity.
1216
12172022-07-04 Julien Bortolussi <bortolussi@adacore.com>
1218
1219 * libgnat/a-cfinse.adb, libgnat/a-cfinse.ads: Implementation
1220 files of the sequence.
1221 * Makefile.rtl, impunit.adb: Take into account the add of the
1222 new files
1223
12242022-07-04 Eric Botcazou <ebotcazou@adacore.com>
1225
1226 * doc/gnat_rm/implementation_defined_pragmas.rst (Pure_Function):
1227 Fix ambiguous wording about context dependence.
1228 * gnat_rm.texi: Regenerate.
1229
b168441c
GA
12302022-06-02 David Malcolm <dmalcolm@redhat.com>
1231
1232 * gcc-interface/misc.cc (gnat_get_sarif_source_language): New.
1233 (LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): Redefine.
1234
12352022-06-02 Pierre-Marie de Rodat <derodat@adacore.com>
1236
1237 * gcc-interface/gigi.h: Update copyright notice.
1238 * gcc-interface/lang-specs.h: Likewise.
1239 * gcc-interface/utils.cc: Likewise.
1240
12412022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1242
1243 * gcc-interface/gigi.h (enum standard_datatypes): Remove values
1244 for the SJLJ exception mechanism.
1245 (jmpbuf_type): Delete.
1246 (jmpbuf_ptr_type): Likewise.
1247 (get_jmpbuf_decl): Likewise.
1248 (set_jmpbuf_decl): Likewise.
1249 (get_excptr_decl): Likewise.
1250 (not_handled_by_others_decl): Likewise.
1251 (setjmp_decl): Likewise.
1252 (update_setjmp_buf_decl): Likewise.
1253 (raise_nodefer_decl): Likewise.
1254 (set_block_jmpbuf_decl): Likewise.
1255 (get_block_jmpbuf_decl): Likewise.
1256 * gcc-interface/trans.cc (gigi): Delete dead code.
1257 * gcc-interface/utils.cc (gnat_binding_level): Remove JMPBUF_DECL.
1258 (gnat_pushlevel): Do not clear it.
1259 (set_block_jmpbuf_decl): Delete.
1260 (get_block_jmpbuf_decl): Likewise.
1261
12622022-06-02 Ghjuvan Lacambre <lacambre@adacore.com>
1263
1264 * gcc-interface/decl.cc (warn_on_field_placement): Add insertion
1265 character '.q' to warning string.
1266
12672022-06-02 Arnaud Charlet <charlet@adacore.com>
1268
1269 * gcc-interface/Makefile.in (gnatlib-shared-default): Add
1270 -fno-lto.
1271
12722022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1273
1274 * gcc-interface/decl.cc (gnat_to_gnu_entity): Do not check the
1275 scope of anonymous access Itypes.
1276 * gcc-interface/trans.cc (Identifier_to_gnu): Do not translate
1277 the return type of a subprogram here.
1278
12792022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1280
1281 * exp_ch7.adb (Expand_N_Package_Body): Build static dispatch
1282 tables only for units that are not compilation units, unless
1283 they are generic instances. Do not push a scope for this.
1284 (Expand_N_Package_Declaration): Build static dispatch tables
1285 only for units that are both not compilation units and generic
1286 instances.
1287 * exp_disp.adb (Build_Static_Dispatch_Tables): Remove redundant
1288 early return. Push a scope for package bodies.
1289 * sem_ch10.adb: Add with and use clauses for Exp_Disp.
1290 (Analyze_Compilation_Unit): Build static dispatch tables here.
1291
12922022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1293
1294 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Clear the Is_Public
1295 flag on thunks.
1296
12972022-06-02 Piotr Trojanek <trojanek@adacore.com>
1298
1299 * exp_ch13.adb, exp_ch5.adb, exp_ch9.adb, exp_strm.adb,
1300 sem_ch10.adb, sem_ch13.adb, sem_ch5.adb, sem_ch6.adb,
1301 sem_ch8.adb, sem_elab.adb, sem_eval.adb, sem_prag.adb,
1302 sem_util.adb: Remove checks for the missing list before
1303 iterating with First/Next; reindent code and refill comments.
1304
13052022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1306
1307 * einfo.ads (Has_Controlling_Result): Document new usage.
1308 (Is_Thunk): Document secondary stack thunks.
1309 (Returns_By_Ref): Adjust.
1310 * exp_ch6.adb (Caller_Known_Size): Return true for tagged types.
1311 (Expand_N_Extended_Return_Statement): Do not call Set_By_Ref.
1312 (Expand_Simple_Function_Return): For a BIP return with an Alloc_Form
1313 parameter, mark the node as returning on the secondary stack.
1314 Replace call to Is_Limited_Interface with Is_Limited_View. Deal wit
1315 secondary stack thunks. Do not call Set_By_Ref. Optimize the case
1316 of a call to a function whose type also needs finalization.
1317 (Needs_BIP_Task_Actuals): Replace Thunk_Entity with Thunk_Target.
1318 (Needs_BIP_Finalization_Master): Cosmetic fixes.
1319 (Needs_BIP_Alloc_Form): Check No_Secondary_Stack restriction and
1320 return true for tagged types.
1321 * exp_ch7.adb (Transient Scope Management): Update description.
1322 * exp_disp.adb (Expand_Dispatching_Call): Always set Returns_By_Ref
1323 on designated type if the call is dispatching on result. Tidy up.
1324 (Expand_Interface_Thunk): Change type of Thunk_Code from Node_Id to
1325 List_Id. Change type of local variables from Node_Id to Entity_Id.
1326 Propagate Aliased_Present flag to create the formals and explicitly
1327 set Has_Controlling_Result to False. Build a secondary stack thunk
1328 if necessary in the function case.
1329 (Expand_Secondary_Stack_Thunk): New function.
1330 (Make_Secondary_DT): Build secondary stack thunks if necessary.
1331 (Make_DT): Likewise.
1332 (Register_Predefined_Primitive): Likewise.
1333 (Register_Primitive): Likewise.
1334 * exp_util.ads (Is_Secondary_Stack_Thunk): Declare.
1335 (Thunk_Target): Likewise.
1336 * exp_util.adb (Is_Secondary_Stack_Thunk): New function.
1337 (Thunk_Target): Likewise.
1338 * fe.h (Is_Secondary_Stack_Thunk): Declare.
1339 (Thunk_Target): Likewise.
1340 * gen_il-fields.ads (Opt_Field_Enum): Remove By_Ref.
1341 * gen_il-gen-gen_nodes.adb (N_Simple_Return_Statement): Likewise.
1342 (N_Extended_Return_Statement): Likewise.
1343 * sem_ch6.adb (Analyze_Subprogram_Specification): Skip check for
1344 abstract return type in the thunk case.
1345 (Create_Extra_Formals): Replace Thunk_Entity with Thunk_Target.
1346 * sem_disp.adb (Check_Controlling_Formals): Skip in the thunk case.
1347 * sem_util.adb: Add use and with clauses for Exp_Ch6.
1348 (Compute_Returns_By_Ref): Do not process procedures and only set
1349 the flag for direct return by reference.
1350 (Needs_Secondary_Stack): Do not return true for specific tagged
1351 types and adjust comments accordingly.
1352 * sinfo.ads (By_Ref): Delete.
1353 (N_Simple_Return_Statement): Remove By_Ref.
1354 (N_Extended_Return_Statement): Likewise.
1355 * gcc-interface/ada-tree.h (TYPE_RETURN_UNCONSTRAINED_P): Delete.
1356 * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Do not use it.
1357 Return by direct reference if the return type needs the secondary
1358 stack as well as for secondary stack thunks.
1359 * gcc-interface/gigi.h (fntype_same_flags_p): Remove parameter.
1360 * gcc-interface/misc.cc (gnat_type_hash_eq): Adjust to above change.
1361 * gcc-interface/trans.cc (finalize_nrv): Replace test on
1362 TYPE_RETURN_UNCONSTRAINED_P with TYPE_RETURN_BY_DIRECT_REF_P.
1363 (Subprogram_Body_to_gnu): Do not call maybe_make_gnu_thunk for
1364 secondary stack thunks.
1365 (Call_to_gnu): Do not test TYPE_RETURN_UNCONSTRAINED_P.
1366 (gnat_to_gnu) <N_Simple_Return_Statement>: In the return by direct
1367 reference case, test for the presence of Storage_Pool on the node
1368 to build an allocator.
1369 (maybe_make_gnu_thunk): Deal with Thunk_Entity and Thunk_Target.
1370 * gcc-interface/utils.cc (fntype_same_flags_p): Remove parameter.
1371
13722022-06-02 Marc Poulhiès <poulhies@adacore.com>
1373
1374 * einfo.ads: Fix reference to Global_Entity_Suppress and
1375 Local_Entity_Suppress variable in the comments.
1376 * sem.ads: Likewise.
1377 * sem_prag.adb: Likewise.
1378
13792022-06-02 Claire Dross <dross@adacore.com>
1380
1381 * libgnat/s-aridou.adb: Use Always_Return instead of Terminating
1382 to annotate termination for GNATprove.
1383 * libgnat/s-arit32.adb: Idem.
1384 * libgnat/s-spcuop.ads: Idem.
1385
13862022-06-02 Julien Bortolussi <bortolussi@adacore.com>
1387
1388 * libgnat/a-cofuse.ads, libgnat/a-cofuse.adb,
1389 libgnat/a-cofuma.ads, libgnat/a-cofuma.adb: Make Length and
1390 Num_Overlaps return Big_Natural.
1391 * libgnat/a-cforse.ads, libgnat/a-cforse.adb,
1392 libgnat/a-cforma.adb, libgnat/a-cfhase.ads,
1393 libgnat/a-cfhase.adb, libgnat/a-cfhama.adb,
1394 libgnat/a-cfdlli.adb: Adapt code to handle Big_Integers instead
1395 of Count_Type.
1396
13972022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1398
1399 * exp_ch3.adb (Init_Secondary_Tags.Initialize_Tag): Initialize the
1400 Offset_Func component by means of 'Unrestricted_Access.
1401
14022022-06-02 Ghjuvan Lacambre <lacambre@adacore.com>
1403
1404 * errout.adb (Write_JSON_Span): Add subprogram name to emitted
1405 JSON.
1406
14072022-06-02 Arnaud Charlet <charlet@adacore.com>
1408
1409 * sem_ch7.adb (Set_Referencer_Of_Non_Subprograms): New local
1410 procedure, used for code refactoring. Also take into account
1411 Inline_Always pragma when deciding to make a symbol public for
1412 C generation.
1413
14142022-06-02 Yannick Moy <moy@adacore.com>
1415
1416 * atree.adb (New_Copy): Reset flags related to ghost entities
1417 before marking the new node.
1418
14192022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1420
1421 * exp_ch6.adb (Freeze_Subprogram.Register_Predefined_DT_Entry): Move
1422 procedure to...
1423 * exp_disp.ads (Expand_Interface_Thunk): Move declaration to...
1424 (Register_Predefined_Primitive): Declare.
1425 * exp_disp.adb (Expand_Interface_Thunk): ...here.
1426 (Register_Predefined_Primitive): ...here and change into a function
1427 returning List_Id.
1428
14292022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1430
1431 * exp_ch3.adb (Expand_Freeze_Record_Type): Adjust comment.
1432 (Expand_N_Object_Declaration): Do not build static dispatch tables.
1433 * exp_disp.adb (Make_And_Insert_Dispatch_Table): New procedure.
1434 (Build_Static_Dispatch_Tables): Call it to build the dispatch tables
1435 and wrap them in the Actions list of a freeze node.
1436
14372022-06-02 Doug Rupp <rupp@adacore.com>
1438
1439 * libgnat/system-vxworks7-arm.ads (Support_Atomic_Primitives):
1440 Set True.
1441 * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise.
1442 * libgnat/system-vxworks7-aarch64.ads: Likewise.
1443 * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise:
1444
14452022-06-02 Javier Miranda <miranda@adacore.com>
1446
1447 * libgnat/g-dyntab.ads (Table_Type): Update documentation.
1448
14492022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1450
1451 * freeze.adb (Check_Expression_Function.Find_Constant): Make test
1452 for deferred constants more robust.
1453
14542022-06-02 Joffrey Huguet <huguet@adacore.com>
1455
1456 * libgnat/i-cstrin.ads (Update): Update precondition.
1457
14582022-06-02 Yannick Moy <moy@adacore.com>
1459
1460 * sem_ch2.adb (Analyze_Identifier): Add checking for ghost
1461 context.
1462 * sem_ch5.adb (Analyze_Implicit_Label_Declaration): Treat
1463 implicit labels like other entities by setting their ghost
1464 status according to context.
1465 * ghost.adb (Check_Ghost_Context): Adapt checking.
1466
14672022-06-02 Joffrey Huguet <huguet@adacore.com>
1468
1469 * libgnat/i-cstrin.ads (Update): Add precondition.
1470
14712022-06-02 Yannick Moy <moy@adacore.com>
1472
1473 * sem_ch5.adb (Analyze_Label_Entity): Remove body.
1474 * sem_ch5.ads (Analyze_Label_Entity): Remove spec.
1475
14762022-06-02 Eric Botcazou <ebotcazou@adacore.com>
1477
1478 * sem_util.adb (Propagate_DIC_Attributes): Add ??? comment.
1479 (Propagate_Invariant_Attributes): Likewise. Propagate the
1480 Has_Inheritable_Invariants and Has_Inherited_Invariants to
1481 the base type of the target type.
1482
14832022-06-02 Doug Rupp <rupp@adacore.com>
1484
1485 * libgnat/system-linux-arm.ads (Memory_Size): Compute based on
1486 Word_Size.
1487
14882022-06-02 Doug Rupp <rupp@adacore.com>
1489
1490 * libgnat/system-vxworks7-aarch64-rtp-smp.ads (Word_Size):
1491 Compute based on Standard'Word_Size. (Memory_Size): Compute
1492 based on Word_Size.
1493 * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise.
1494 * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise.
1495 * libgnat/system-vxworks7-e500-rtp.ads: Likewise.
1496 * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise.
1497 * libgnat/system-vxworks7-ppc-rtp.ads: Likewise.
1498 * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise.
1499 * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise.
1500 * libgnat/system-vxworks7-x86-rtp.ads: Likewise.
1501
15022022-06-02 Justin Squirek <squirek@adacore.com>
1503
1504 * gnatbind.adb (Gnatbind): Add initialize call for Uintp
1505 * gnatls.adb (Gnatls): Likewise.
1506 * gprep.adb (Gnatprep): Likewise.
1507 * make.adb (Initialize): Likewise.
1508
15092022-06-02 Claire Dross <dross@adacore.com>
1510
1511 * libgnat/a-cfinve.ads (Element): Change the type of the
1512 Position parameter to Extended_Index.
1513 * libgnat/a-cfinve.adb (Element): Idem.
1514 * libgnat/a-cofove.ads (Element): Idem.
1515 * libgnat/a-cofove.adb (Element): Idem.
1516
15172022-06-02 Joffrey Huguet <huguet@adacore.com>
1518
1519 * libgnat/s-atacco.ads (To_Pointer): Add Global => null.
1520 (To_Address): Add SPARK_Mode => Off.
1521
15222022-06-02 Joffrey Huguet <huguet@adacore.com>
1523
1524 * libgnat/i-cstrin.ads (To_Chars_Ptr): Add SPARK_Mode => Off.
1525 (Free): Likewise.
1526 (New_Char_Array): Add global contracts and Volatile attribute.
1527 (New_String): Likewise.
1528 (Value, Strlen, Update): Add global contracts and preconditions.
1529 * libgnat/i-cstrin.adb: Add SPARK_Mode => Off to the package
1530 body.
1531
3164de6a
GA
15322022-06-01 Yannick Moy <moy@adacore.com>
1533
1534 * contracts.adb (Check_Type_Or_Object_External_Properties): Check
1535 the validity of combinations only when No_Caching is not used.
1536 * sem_prag.adb (Analyze_External_Property_In_Decl_Part): Check
1537 valid combinations with No_Caching.
1538
15392022-06-01 Doug Rupp <rupp@adacore.com>
1540
1541 * libgnat/system-vxworks7-aarch64.ads (Word_Size): Compute
1542 based on Standard'Word_Size. (Memory_Size): Compute based
1543 on Word_Size.
1544 * libgnat/system-vxworks7-arm.ads: Likewise.
1545 * libgnat/system-vxworks7-e500-kernel.ads: Likewise.
1546 * libgnat/system-vxworks7-ppc-kernel.ads: Likewise.
1547 * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise.
1548 * libgnat/system-vxworks7-x86-kernel.ads: Likewise.
1549 * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise.
1550
15512022-06-01 Doug Rupp <rupp@adacore.com>
1552
1553 * libgnat/system-qnx-arm.ads (Memory_Size): Compute based on
1554 Word_Size.
1555
15562022-06-01 Piotr Trojanek <trojanek@adacore.com>
1557
1558 * par-util.adb (Ignore): Add missing space to message string.
1559
15602022-06-01 Yannick Moy <moy@adacore.com>
1561
1562 * sem_prag.ads (Assertion_Expression_Pragmas): Fix value for
1563 pragma Subprogram_Variant.
1564
15652022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1566
1567 * exp_ch6.adb (Caller_Known_Size): Invoke Needs_Secondary_Stack in
1568 lieu of Returns_On_Secondary_Stack.
1569 (Expand_Call_Helper): Likewise.
1570 (Expand_Simple_Function_Return): Likewise.
1571 (Needs_BIP_Alloc_Form): Likewise.
1572 * exp_ch7.adb (Wrap_Transient_Declaration): Likewise.
1573 * sem_res.adb (Resolve_Call): Likewise.
1574 (Resolve_Entry_Call): Likewise.
1575 * sem_util.ads (Returns_On_Secondary_Stack): Rename into...
1576 (Needs_Secondary_Stack): ...this.
1577 * sem_util.adb (Returns_On_Secondary_Stack): Rename into...
1578 (Needs_Secondary_Stack): ...this.
1579 * fe.h (Returns_On_Secondary_Stack): Delete.
1580 (Needs_Secondary_Stack): New function.
1581 * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Replace call
1582 to Returns_On_Secondary_Stack with Needs_Secondary_Stack.
1583
15842022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1585
1586 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): For the case where
1587 there is no previous declaration, freeze the body entity only after
1588 it has been processed as a new overloaded name.
1589 Use Was_Expression_Function to recognize expression functions.
1590 * sem_disp.adb (Check_Dispatching_Operation): Do not require a body
1591 which is the last primitive to be frozen here.
1592
15932022-06-01 Julien Bortolussi <bortolussi@adacore.com>
1594
1595 * libgnat/a-cfdlli.adb ("="): Make the function properly loop
1596 over the right list.
1597
15982022-06-01 Marc Poulhiès <poulhies@adacore.com>
1599
1600 * checks.adb (Apply_Predicate_Check): Refine condition for
1601 applying optimization.
1602 * sem_ch3.adb (Analyze_Component_Declaration): Adjust calls to
1603 Should_Build_Subtype.
1604 (Analyze_Object_Declaration): Likewise.
1605 (Should_Build_Subtype): Rename/move to ...
1606 * sem_util.ads (Build_Default_Subtype_OK): ... this.
1607 * sem_util.adb (Build_Default_Subtype_OK): Moved from
1608 sem_ch3.adb.
1609
16102022-06-01 Doug Rupp <rupp@adacore.com>
1611
1612 * init.c (__gnat_adjust_context_for_raise) [QNX][__thumb2__]: Bump
1613 the pc an extra byte.
1614
16152022-06-01 Ghjuvan Lacambre <lacambre@adacore.com>
1616
1617 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
1618 Document new behavior.
1619 * errout.adb (Write_JSON_Location): Output absolute paths when
1620 needed.
1621 * switch-c.adb (Scan_Front_End_Switches): Update -gnatef
1622 comment.
1623 * usage.adb (Usage): Update description of -gnatef.
1624 * gnat_ugn.texi: Regenerate.
1625
16262022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1627
1628 * contracts.adb (Build_Postconditions_Procedure): Set Is_Inlined
1629 unconditionnally on the procedure entity.
1630
16312022-06-01 Piotr Trojanek <trojanek@adacore.com>
1632
1633 * sem_ch3.adb (Constrain_Access): Propagate null-exclusion flag
1634 from parent type.
1635
16362022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1637
1638 * sem_ch5.adb (Analyze_Loop_Statement): Add a comment about
1639 a finalization issue.
1640
16412022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1642
1643 * exp_ch6.adb (Caller_Known_Size): Call Returns_On_Secondary_Stack
1644 instead of Requires_Transient_Scope and tidy up.
1645 (Needs_BIP_Alloc_Form): Likewise.
1646 * exp_util.adb (Initialized_By_Aliased_BIP_Func_Call): Also return
1647 true if the build-in-place function call has no BIPalloc parameter.
1648 (Is_Finalizable_Transient): Remove redundant test.
1649
16502022-06-01 Alexandre Oliva <oliva@adacore.com>
1651
1652 * doc/gnat_rm/security_hardening_features.rst: Note that hardening
1653 features are experimental.
1654 * gnat_rm.texi: Regenerate.
1655
16562022-06-01 Steve Baird <baird@adacore.com>
1657
1658 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Set the
1659 Corresponding_Spec field of a wrapper subprogram body before
1660 analyzing the subprogram body; the field will be set (again)
1661 during analysis, but we need it to be set earlier.
1662 * exp_ch13.adb (Expand_N_Freeze_Entity): Add wrapper subprogram
1663 bodies to the list of declarations for which we do not want to
1664 suppress checks.
1665
16662022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1667
1668 * sem_util.adb (Indirect_Temp_Needed): Adjust reference in comment.
1669
16702022-06-01 Doug Rupp <rupp@adacore.com>
1671
1672 * Makefile.rtl (GNATLIB_SHARED): Revert disablement for arm-qnx.
1673
16742022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1675
1676 * sem_util.adb
1677 (Returns_On_Secondary_Stack.Caller_Known_Size_Record): Directly
1678 check the dependence on discriminants for the variant part, if
1679 any, instead of calling the Is_Definite_Subtype predicate.
1680
16812022-06-01 Ghjuvan Lacambre <lacambre@adacore.com>
1682
1683 * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix warning tag.
1684
16852022-06-01 Ghjuvan Lacambre <lacambre@adacore.com>
1686
1687 * sem_warn.adb (Check_References): Adjust conditions under which
1688 warning messages should be emitted and their tags as well.
1689
16902022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1691
1692 * exp_disp.ads (Expand_Interface_Thunk): Change type of Prim.
1693 * exp_disp.adb (Expand_Interface_Thunk): Declare Is_Predef_Op
1694 earlier, do not initialize Iface_Formal, use No idiom and tweaks
1695 comments.
1696 (Register_Primitive): Declare L earlier and tweak comments.
1697 * sem_disp.adb (Check_Dispatching_Operation): Move tests out of
1698 loop.
1699
17002022-06-01 Steve Baird <baird@adacore.com>
1701
1702 * exp_ch3.ads: Replace visible Build_Discr_Checking_Funcs (which
1703 did not need to be visible - it was not referenced outside this
1704 package) with Build_Or_Copy_Discr_Checking_Funcs.
1705 * exp_ch3.adb: Refactor existing code into 3 procedures -
1706 Build_Discr_Checking_Funcs, Copy_Discr_Checking_Funcs, and
1707 Build_Or_Copy_Discr_Checking_Funcs. This refactoring is intended
1708 to be semantics-preserving.
1709 * exp_ch4.adb (Expand_N_Selected_Component): Detect case where a
1710 call should be generated to the Discriminant_Checking_Func for
1711 the component in question, but that subprogram does not yet
1712 exist.
1713 * sem_ch13.adb (Freeze_Entity_Checks): Immediately before
1714 calling Build_Predicate_Function, add a call to
1715 Exp_Ch3.Build_Or_Copy_Discr_Checking_Funcs in order to ensure
1716 that Discriminant_Checking_Func attributes are already set when
1717 Build_Predicate_Function is called.
1718 * sem_ch6.adb (Analyze_Expression_Function): If the expression
1719 of a static expression function has been transformed into an
1720 N_Raise_xxx_Error node, then we need to copy the original
1721 expression in order to check the requirement that the expression
1722 must be a potentially static expression. We also want to set
1723 aside a copy the untransformed expression for later use in
1724 checking calls to the expression function via
1725 Inline_Static_Function_Call. So introduce a new function,
1726 Make_Expr_Copy, for use in these situations.
1727 * sem_res.adb (Preanalyze_And_Resolve): When analyzing certain
1728 expressions (e.g., a default parameter expression in a
1729 subprogram declaration) we want to suppress checks. However, we
1730 do not want to suppress checks for the expression of an
1731 expression function.
1732
17332022-06-01 Bob Duff <duff@adacore.com>
1734
1735 * exp_ch5.adb (Expand_Iterator_Loop_Over_Container): For each
1736 subprogram found, assert that the variable is Empty, so we can
1737 detect bugs where we find two or more things with the same name.
1738 Without this patch, that bug would happen when we add the new
1739 Next procedure. For Step, make sure we pick the right one, by
1740 checking name and number of parameters. For Get_Element_Access,
1741 check that we're picking a function. That's not really
1742 necessary, because there is no procedure with that name, but it
1743 seems cleaner this way.
1744 * rtsfind.ads: Minor comment improvement. It seems kind of odd
1745 to say "under no circumstances", and then immediately contradict
1746 that with "The one exception is...".
1747
17482022-06-01 Doug Rupp <rupp@adacore.com>
1749
1750 * init.c (QNX): __gnat_adjust_context_for_raise: New
1751 implementation for arm-qnx.
1752
17532022-06-01 Julien Bortolussi <bortolussi@adacore.com>
1754
1755 * libgnat/a-cofuba.ads, libgnat/a-cofuba.adb: Add reference
1756 counting.
1757
17582022-06-01 Yannick Moy <moy@adacore.com>
1759
1760 * sem_ch8.adb (Use_One_Package): Possibly warn.
1761 * sem_util.adb (Enter_Name): Factor out warning on hidden entity.
1762 (Warn_On_Hiding_Entity): Extract warning logic from Enter_Name and
1763 generalize it to be applied also on use_clause.
1764 * sem_util.ads (Warn_On_Hiding_Entity): Add new procedure.
1765
17662022-06-01 Yannick Moy <moy@adacore.com>
1767
1768 * par-ch3.adb (P_Known_Discriminant_Part_Opt): Reword error
1769 message to benefit from existing codefix.
1770 (P_Record_Definition): Detect out-of-order keywords in record
1771 definition and issue appropriate messages. Other cases are
1772 already caught at appropriate places.
1773
17742022-06-01 Eric Botcazou <ebotcazou@adacore.com>
1775
1776 * exp_ch6.adb (Freeze_Subprogram.Register_Predefined_DT_Entry): Put
1777 the actions into the Actions field of the freeze node instead of
1778 inserting them after it.
1779
17802022-06-01 Marc Poulhiès <poulhies@adacore.com>
1781
1782 * sinfo.ads: Add inline documention for Is_Parenthesis_Aggregate
1783 and Is_Enum_Array_Aggregate.
1784
17852022-06-01 Bob Duff <duff@adacore.com>
1786
1787 * einfo-utils.adb (Set_Convention): Call Set_Convention
1788 recursively, so that Set_Can_Use_Internal_Rep is called (if
1789 appropriate) on the anonymous access type of the object, and its
1790 designated subprogram type.
1791 * sem_ch3.adb (Access_Definition): Remove redundant call to
1792 Set_Can_Use_Internal_Rep.
1793
17942022-06-01 Bob Duff <duff@adacore.com>
1795
1796 * exp_ch4.adb (Expand_N_In): Do not warn in the above-mentioned
1797 cases.
1798 * fe.h (Assume_No_Invalid_Values): Remove from fe.h, because
1799 this is not used in gigi.
1800 * opt.ads (Assume_No_Invalid_Values): Improve the comment. We
1801 don't need to "clearly prove"; we can just "prove". Remove the
1802 comment about fe.h, which is no longer true.
1803
0f4df800
GA
18042022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1805
1806 * erroutc.adb (Get_Warning_Option): Don't consider `?` as a
1807 valid option switch.
1808
18092022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1810
1811 * erroutc.ads (Get_Warning_Option): New function returning the
1812 option responsible for a warning if it exists.
1813 * erroutc.adb (Get_Warning_Option): Likewise.
1814 (Get_Warning_Tag): Rely on Get_Warning_Option when possible.
1815 * errout.adb (Output_JSON_Message): Emit option field.
1816
18172022-05-30 Julien Bortolussi <bortolussi@adacore.com>
1818
1819 * libgnat/a-cfdlli.ads (Insert): Remove the duplication.
1820
18212022-05-30 Piotr Trojanek <trojanek@adacore.com>
1822
1823 * exp_ch6.adb (Check_Subprogram_Variant): Ignore structural
1824 variants.
1825
18262022-05-30 Piotr Trojanek <trojanek@adacore.com>
1827
1828 * osint.adb (Locate_File): Change variable to constant and
1829 initialize it by concatenation of directory, file name and NUL.
1830
18312022-05-30 Piotr Trojanek <trojanek@adacore.com>
1832
1833 * doc/gnat_rm/implementation_advice.rst (Packed Types): Remove
1834 duplicated and wrongly placed paragraph.
1835 * gnat_rm.texi: Regenerate.
1836
18372022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1838
1839 * inline.adb (Check_Package_Body_For_Inlining): Add insertion
1840 character.
1841
18422022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1843
1844 * freeze.adb (Warn_Overlay): Add 'o' insertion character.
1845 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Likewise.
1846 * sem_util.adb (Note_Possible_Modifications): Likewise.
1847
18482022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1849
1850 * sem_warn.adb (Warn_On_Useless_Assignment): Fix insertion
1851 character.
1852
18532022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1854
1855 * sem_disp.adb (Warn_On_Late_Primitive_After_Private_Extension):
1856 Fix insertion character.
1857
18582022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
1859
1860 * sem_elab.adb (Process_Conditional_ABE_Access_Taken): Add '.f'
1861 insertion characters.
1862
18632022-05-30 Piotr Trojanek <trojanek@adacore.com>
1864
1865 * lib-xref.ads (Deferred_Reference_Entry, Defer_Reference,
1866 Process_Deferred_References, Has_Deferred_Reference): Remove
1867 client API.
1868 * lib-xref.adb (Deferred_References, Defer_Reference,
1869 Has_Deferred_Reference, Process_Deferred_References): Remove
1870 implementation.
1871 * frontend.adb, sem_ch11.adb, sem_ch5.adb, sem_res.adb,
1872 sem_util.adb, sem_warn.adb: Remove uses of Deferred_References.
1873
18742022-05-30 Bob Duff <duff@adacore.com>
1875
1876 * exp_ch7.adb (Wrap_HSS_In_Block): Do not create a new block in
1877 the case of function bodies. We include all subprogram bodies,
1878 because it's harmless for procedures. We cannot easily avoid
1879 creating this block in ALL cases, because some transformations
1880 of (e.g.) task bodies end up moving some code such that the
1881 wrong exception handlers apply to that code.
1882 (Build_Finalizer_Call): Remove code for creating a new block.
1883 This was unreachable code, given that Wrap_HSS_In_Block has
1884 already done that, but with the above change to
1885 Wrap_HSS_In_Block, this code becomes reachable, and triggers
1886 essentially the same bug.
1887 * exp_ch7.ads: Adjust comment.
1888
18892022-05-30 Justin Squirek <squirek@adacore.com>
1890
1891 * par-ch6.adb (P_Formal_Part): Set Aspect_Specifications on all
1892 formals instead of just the last in a formal id list.
1893 * sem_ch6.adb (Analyze_Null_Procedure): Mark expanded null
1894 generic procedures as trivial in order to avoid spurious
1895 unreferenced warnings.
1896
18972022-05-30 Romain Beguet <beguet@adacore.com>
1898
1899 * libgnat/s-dwalin.adb: Add a subtype declaration to fix the
1900 ambiguity.
1901
19022022-05-30 Steve Baird <baird@adacore.com>
1903
1904 * sem_ch13.adb (Is_Predicate_Static): Do not generate warnings
1905 about subexpressions of enclosing expressions. Generate warnings
1906 for predicates that are known to be always true or always false,
1907 except in the case where the predicate is expressed as a Boolean
1908 literal. Deal with non-predicate-static expressions that have
1909 been transformed into predicate-static expressions. Add missing
1910 Is_Type_Ref call to N_Membership_Test case.
1911
19122022-05-30 Eric Botcazou <ebotcazou@adacore.com>
1913
1914 * exp_aggr.adb (Expand_Record_Aggregate.Build_Back_End_Aggregate):
1915 Skip the discriminants at the start of the component list before
1916 looking for the components inherited from the parent in the case
1917 of a tagged extension.
1918
19192022-05-30 Eric Botcazou <ebotcazou@adacore.com>
1920
1921 * exp_disp.adb (Make_DT): Remove remaining freezing code.
1922
19232022-05-30 Eric Botcazou <ebotcazou@adacore.com>
1924
1925 * sem_attr.adb (Resolve_Attribute) <Attribute_Access>: Don't analyze
1926 the body of an expression function in the case of a dispatch table.
1927
19282022-05-30 Arnaud Charlet <charlet@adacore.com>
1929
1930 * gnat1drv.adb, opt.ads, sem_ch7.adb: Introduce CCG_Mode.
1931
19322022-05-30 Yannick Moy <moy@adacore.com>
1933
1934 * Makefile.rtl: Add new units.
1935 * libgnat/s-aridou.adb (Scaled_Divide): Add ghost code for provers.
1936 * libgnat/s-spcuop.adb: New unit for ghost cut operations.
1937 * libgnat/s-spcuop.ads: New unit for ghost cut operations.
1938 * libgnat/s-spark.ads: New unit.
1939
19402022-05-30 Alexandre Oliva <oliva@adacore.com>
1941
1942 * doc/gnat_rm/security_hardening_features.rst: Mention
1943 availability in other languages when applicable.
1944 (Stack Scrubbing): Associate the attribute with types, expand
1945 some comments, fix the example involving access to variables.
1946 * gnat_rm.texi: Regenerate.
1947
19482022-05-30 Piotr Trojanek <trojanek@adacore.com>
1949
1950 * libgnat/a-cofuse.ads (Empty_Set): Fix typo in comment.
1951
19522022-05-30 Eric Botcazou <ebotcazou@adacore.com>
1953
1954 * sem_ch6.adb (New_Overloaded_Entity): Deal specifically with the
1955 overriding of the "=" operator for tagged types.
1956
19572022-05-30 Eric Botcazou <ebotcazou@adacore.com>
1958
1959 * exp_ch3.adb (Expand_N_Object_Declaration): Adjust call to Make_DT.
1960 * exp_disp.ads (Building_Static_DT): Remove pragma Inline.
1961 (Building_Static_Secondary_DT): Likewise.
1962 (Convert_Tag_To_Interface): Likewise.
1963 (Make_DT): Remove second parameter.
1964 * exp_disp.adb (Make_DT): Likewise.
1965 (Check_Premature_Freezing): Delete.
1966 Pass Do_Freeze_Profile as False in call to Freeze_Entity.
1967 * freeze.ads (Freezing_Library_Level_Tagged_Type): Delete.
1968 * freeze.adb (Freeze_Profile): Remove obsolete code.
1969 (Freeze_Entity): Tweak comment.
1970
19712022-05-30 Yannick Moy <moy@adacore.com>
1972
1973 * libgnat/s-arit32.adb (Scaled_Divide32): Move assertion up.
1974
19752022-05-30 Yannick Moy <moy@adacore.com>
1976
1977 PR ada/105303
1978 * libgnat/s-gearop.adb: Add pragma Assertion_Policy in generic
1979 bodies making use of additional assertions or ghost code.
1980 * libgnat/s-gearop.ads: Remove confusing Assertion_Policy.
1981
19822022-05-30 Steve Baird <baird@adacore.com>
1983
1984 * exp_ch11.adb (Expand_N_Raise_Expression): Remove
1985 Convert_To_Return_False test.
1986 * gen_il-fields.ads: Remove Convert_To_Return_False field.
1987 * gen_il-gen-gen_nodes.adb: Remove use of
1988 Convert_To_Return_False field.
1989 * sinfo.ads: Remove comment describing Convert_To_Return_False
1990 flag.
1991
19922022-05-30 Julien Bortolussi <bortolussi@adacore.com>
1993
1994 * libgnat/a-cofuma.ads, libgnat/a-cofuma.adb,
1995 libgnat/a-cofuse.ads, libgnat/a-cofuse.adb,
1996 libgnat/a-cofuve.ads, libgnat/a-cofuve.adb: Add empty
1997 constructors.
1998
19992022-05-30 Ghjuvan Lacambre <lacambre@adacore.com>
2000
2001 * bindgen.adb (Gen_CUDA_Init): Remove code generating CUDA
2002 definitions.
2003 (Gen_CUDA_Defs): New function, generating definitions
2004 initialized by Gen_CUDA_Init.
2005 (Gen_Output_File_Ada): Call Gen_CUDA_Defs instead of
2006 Gen_CUDA_Init.
2007 (Gen_Adainit): Call Gen_CUDA_Init.
2008
37b3b5da
GA
20092022-05-28 Alexandre Oliva <oliva@adacore.com>
2010
2011 * gcc-interface/Makefile.in (OSCONS_CC): Rename to...
2012 (GCC_FOR_ADA_RTS): ... this. Adjust users.
2013 (gnatlib): Pass it down as CC.
2014 (gnatlib-shared-default): Likewise.
2015 (gnatlib-shared-win32, gnatlib-shared-darwin): Likewise.
2016
12750f80
GA
20172022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2018
2019 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Constant>: Deal with
2020 a constant related to a return in a function specially.
2021 * gcc-interface/trans.cc (Call_to_gnu): Use return slot optimization
2022 if the target is a return object.
2023 (gnat_to_gnu) <N_Object_Declaration>: Deal with a constant related
2024 to a return in a function specially.
2025
20262022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2027
2028 * gcc-interface/utils.cc (gnat_pushdecl): Also set TREE_NO_WARNING
2029 on the decl if Comes_From_Source is false for the associated node.
2030
20312022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2032
2033 * gcc-interface/trans.cc (gnat_gimplify_expr): Tidy up.
2034
20352022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2036
2037 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Function>: Also call
2038 process_attributes for built-in functions.
2039 (prepend_one_attribute_pragma): Deal with "simd" attribute.
2040 * gcc-interface/utils.cc (handle_simd_attribute): New function.
2041 (gnat_internal_attribute_table): Add entry for "simd" attribute.
2042
20432022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2044
2045 * gcc-interface/decl.cc (components_to_record): Use NULL recursively
2046 as P_GNU_REP_LIST for the innermost variant level in the unchecked
2047 union case with a fixed part.
2048
20492022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2050
2051 * gcc-interface/trans.cc (gnat_to_gnu): Do not set Current_Error_Node
2052 to a node without location.
2053
20542022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2055
2056 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Access_Subtype>: And
2057 skip the elaboration of the designated subtype when that of its base
2058 type has been delayed.
2059
20602022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2061
2062 * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Record_Subtype>: If
2063 it is a special subtype designated by an access subtype, then defer
2064 the completion of incomplete types.
2065
20662022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2067
2068 * gcc-interface/ada-tree.h, gcc-interface/ada.h,
2069 gcc-interface/gadaint.h, gcc-interface/targtyps.cc: Adjust
2070 copyright line.
2071
20722022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2073
2074 * gcc-interface/utils.cc (unchecked_convert): Do not fold a string
2075 constant if the target type is pointer to character.
2076
20772022-05-19 Piotr Trojanek <trojanek@adacore.com>
2078
2079 * sem_prag.adb (Analyze_Pragma): Remove redundant call to
2080 Set_Error_Posted.
2081
20822022-05-19 Piotr Trojanek <trojanek@adacore.com>
2083
2084 * sem_ch8.adb (Find_Expanded_Name): Emit a main error message
2085 before adding a continuation with the call to
2086 Error_Missing_With_Of_Known_Unit.
2087
20882022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2089
2090 * sem_util.ads (Requires_Transient_Scope): Add pragma Inline.
2091
20922022-05-19 Steve Baird <baird@adacore.com>
2093
2094 * sem_ch13.adb (Build_Predicate_Functions): If a semantic error
2095 has been detected then ignore Predicate_Failure aspect
2096 specifications in the same way as is done for CodePeer and
2097 SPARK. This avoids an internal compiler error if
2098 Ancestor_Predicate_Function_Called is True but Result_Expr is
2099 not an N_And_Then node (and is therefore unsuitable as an
2100 argument in a call to Left_Opnd).
2101
21022022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2103
2104 * exp_ch7.adb (Wrap_Transient_Declaration): Propagate Uses_Sec_Stack
2105 to enclosing function if it does not return on the secondary stack.
2106 * exp_ch6.adb (Expand_Call_Helper): Call Establish_Transient_Scope
2107 with Manage_Sec_Stack set to True only when necessary.
2108 * sem_res.adb (Resolve_Call): Likewise.
2109 (Resolve_Entry_Call): Likewise.
2110
21112022-05-19 Daniel Mercier <mercier@adacore.com>
2112
2113 * sem_ch13.adb (Build_Predicate_Function): Ignore predicate
2114 failure in CodePeer mode.
2115
21162022-05-19 Arnaud Charlet <charlet@adacore.com>
2117
2118 * raise-gcc.c: Fix compilation with -DSTANDALONE under windows.
2119
21202022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2121
2122 * exp_ch4.adb (Narrow_Large_Operation): Preserve and reuse Etype.
2123
21242022-05-19 Javier Miranda <miranda@adacore.com>
2125
2126 * exp_attr.adb (Add_Implicit_Interface_Type_Conversion): New
2127 subprogram which factorizes code.
2128 (Expand_N_Attribute_Reference): Call the new subprogram to add
2129 the missing implicit interface type conversion.
2130
21312022-05-19 Piotr Trojanek <trojanek@adacore.com>
2132
2133 * sem_ch13.adb (Build_Predicate_Function): Ignore predicate
2134 failure in GNATprove mode.
2135
21362022-05-19 Steve Baird <baird@adacore.com>
2137
2138 * einfo-utils.ads, einfo-utils.adb: Delete Predicate_Function_M
2139 function and Set_Predicate_Function_M procedure.
2140 * einfo.ads: Delete comments for Is_Predicate_Function_M and
2141 Predicate_Function_M functions. Add comment for new
2142 Predicate_Expression function. Update comment describing
2143 predicate functions.
2144 * exp_util.ads, exp_util.adb (Make_Predicate_Call): Replace Mem
2145 formal parameter with Static_Mem and Dynamic_Mem formals.
2146 (Make_Predicate_Check): Delete Add_Failure_Expression and call
2147 to it.
2148 * exp_ch4.adb (Expand_N_In.Predicate_Check): Update
2149 Make_Predicate_Call call to match profile change.
2150 * gen_il-fields.ads: Delete Is_Predicate_Function_M field, add
2151 Predicate_Expression field.
2152 * gen_il-gen-gen_entities.adb: Delete Is_Predicate_Function_M
2153 use, add Predicate_Expression use.
2154 * sem_ch13.adb (Build_Predicate_Functions): Rename as singular,
2155 not plural; we no longer build a Predicate_M function. Delete
2156 Predicate_M references. Add new Boolean parameter for predicate
2157 functions when needed. Restructure body of generated predicate
2158 functions to implement required Predicate_Failure behavior and
2159 to set new Predicate_Expression attribute. Remove special
2160 treatment of raise expressions within predicate expressions.
2161 * sem_util.ads (Predicate_Failure_Expression,
2162 Predicate_Function_Needs_Membership_Parameter): New functions.
2163 * sem_util.adb (Is_Current_Instance): Fix bugs which caused
2164 wrong result.
2165 (Is_Current_Instance_Reference_In_Type_Aspect): Delete
2166 Is_Predicate_Function_M reference.
2167 (Predicate_Failure_Expression): New function.
2168 (Propagate_Predicate_Attributes): Delete Is_Predicate_Function_M
2169 references.
2170
21712022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2172
2173 * exp_ch6.adb (Expand_Call_Helper): Adjust comment.
2174 (Expand_Simple_Function_Return): For the case of a type which needs
2175 finalization and is returned on the primary stack, do not create a
2176 copy if the expression originates from a function call.
2177 * exp_ch7.adb (Transient Scope Management): Adjust comment.
2178 * exp_util.ads (Is_Related_To_Func_Return): Add WARNING line.
2179 * fe.h (Is_Related_To_Func_Return): Declare.
2180
21812022-05-19 Piotr Trojanek <trojanek@adacore.com>
2182
2183 * exp_ch9.adb (Build_Find_Body_Index): Remove empty Elsif_Parts
2184 from the constructed IF statement.
2185
21862022-05-19 Piotr Trojanek <trojanek@adacore.com>
2187
2188 * exp_ch9.adb (Build_Find_Body_Index): Remove IF statement whose
2189 condition was true-by-construction; remove excessive assertion
2190 (since the call to Elsif_Parts will check that Nod is present
2191 and it is an if-statement).
2192
21932022-05-19 Arnaud Charlet <charlet@adacore.com>
2194
2195 * gnat1drv.adb, gnatcmd.adb: Remove references to gnatfind/xref.
2196 * doc/gnat_ugn/building_executable_programs_with_gnat.rst,
2197 doc/gnat_ugn/the_gnat_compilation_model.rst: Ditto.
2198 * gnat_ugn.texi: Regenerate.
2199 * gnatfind.adb, gnatxref.adb, xr_tabls.adb, xr_tabls.ads,
2200 xref_lib.adb, xref_lib.ads: Removed, no longer used.
2201
22022022-05-19 Claire Dross <dross@adacore.com>
2203
2204 * libgnat/a-strfix.adb: Add assertions.
2205 * libgnat/a-strsup.adb: Idem.
2206
22072022-05-19 Ed Schonberg <schonberg@adacore.com>
2208
2209 * erroutc.ads: Fix a single-character typo in a comment.
2210 * exp_aggr.adb: Fix a single-character typo in a comment.
2211 Replace several pairs of calls to Low_Bound and
2212 High_Bound (which do not handle an identifier that denotes a
2213 scalar subtype) with corresponding calls to Get_Index_Bounds
2214 (which does handle that case).
2215 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Set the
2216 Component_Associations attribute of a null array aggregate to
2217 New_List.
2218 * sem_aggr.ads: New visible function
2219 Is_Null_Array_Aggregate_High_Bound.
2220 * sem_aggr.adb (Is_Null_Array_Aggregate_High_Bound,
2221 Is_Null_Aggregate, Resolve_Null_Array_Aggregate): New functions.
2222 (Resolve_Aggregate): Recognize null array aggregates (using
2223 Is_Null_Aggregate) and, when one is recognized, resolve
2224 it (using Resolve_Null_Array_Aggregate). Avoid calling
2225 Array_Aggr_Subtype for a null array aggregate; the needed
2226 subtype is built in Resolve_Null_Array_Aggregate. Do not
2227 incorrectly flag a null aggregate (after it is transformed by
2228 expansion) as being both positional and named.
2229 * sem_attr.adb (Eval_Attribute): Special treatment for null
2230 array aggregate high bounds to avoid incorrectly flagging
2231 something like Integer'Pred (Integer'First) as an illegal static
2232 expression.
2233 * sem_eval.adb (Out_Of_Range): Special treatment for null array
2234 aggregate high bounds to avoid incorrectly flagging something
2235 like Integer'Pred (Integer'First) as an illegal static
2236 expression.
2237
22382022-05-19 Yannick Moy <moy@adacore.com>
2239
2240 * libgnat/s-aridou.adb (Lemma_Abs_Range,
2241 Lemma_Double_Shift_Left, Lemma_Shift_Left): New lemmas.
2242 (Double_Divide): Add ghost code.
2243 (Lemma_Concat_Definition, Lemma_Double_Shift_Left,
2244 Lemma_Shift_Left, Lemma_Shift_Right): Define or complete lemmas.
2245 (Scaled_Divide): Add ghost code.
2246
22472022-05-19 Bob Duff <duff@adacore.com>
2248
2249 * exp_pakd.adb (Expand_Packed_Eq): Replace the check for *same*
2250 modular type, with a check for any modular type, and assert that
2251 the two types have the same modulus and so on.
2252 * exp_pakd.ads: Minor comment improvements.
2253
22542022-05-19 Bob Duff <duff@adacore.com>
2255
2256 * style.adb (Check_Identifier): Deal with the case where a
2257 record component definition has been transformed; we want to
2258 warn if the original came from source.
2259 * libgnat/s-objrea.ads, libgnat/s-objrea.adb: Fix casing of MF
2260 to be consistent.
2261 * uname.adb: Fix casing of Chars to be consistent.
2262 * sem_util.ads: Minor comment fix.
2263
22642022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2265
2266 * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-retsta.
2267 * debug.adb (d_r): Document usage.
2268 * exp_ch4.adb (Expand_N_Allocato): Deal with the return stack pool.
2269 * exp_ch6.adb (Expand_Simple_Function_Return): Replace calls to
2270 Requires_Transient_Scope with Returns_On_Secondary_Stack. Deal
2271 with types that need finalization returned on the primary stack,
2272 use CW_Or_Needs_Finalization for those returned on the secondary.
2273 * exp_util.adb (Build_Allocate_Deallocate_Proc): Return early
2274 for the return stack pool.
2275 (Remove_Side_Effects): Call CW_Or_Needs_Finalization.
2276 * fe.h (Requires_Transient_Scope): Delete.
2277 (Returns_On_Secondary_Stack): Declare.
2278 * gnat1drv.adb (Adjust_Global_Switches): Set Back_End_Return_Slot
2279 to False when generating C code or if -gnatd_r is specified.
2280 * opt.ads (Back_End_Return_Slot): New boolean variable.
2281 * rtsfind.ads (RTU_Id): Add System_Return_Stack.
2282 (RE_Id): Add RE_RS_Allocate and RE_RS_Pool.
2283 (RE_Unit_Table): Add entries for RE_RS_Allocate and RE_RS_Pool.
2284 * sem_util.ads (CW_Or_Has_Controlled_Part): Delete.
2285 (CW_Or_Needs_Finalization): Declare.
2286 (Requires_Transient_Scope): Adjust description.
2287 (Returns_On_Secondary_Stack): Declare.
2288 * sem_util.adb (Compute_Returns_By_Ref): Set Returns_By_Ref on types
2289 which need finalization if they are returned on the secondary stack.
2290 (CW_Or_Has_Controlled_Part): Rename to...
2291 (CW_Or_Needs_Finalization): ...this.
2292 (Requires_Transient_Scope): Move bulk of implementation to...
2293 (Returns_On_Secondary_Stack): ...here. Return true for types which
2294 need finalization only if the back-end return slot is not supported.
2295 * libgnat/s-retsta.ads: New file.
2296 * gcc-interface/ada-builtin-types.def (BT_FN_PTR_SSIZE): Define.
2297 * gcc-interface/ada-builtins.def (return_slot): Likewise.
2298 * gcc-interface/ada-tree.h (BUILT_IN_RETURN_SLOT): Likewise.
2299 * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Replace call to
2300 Requires_Transient_Scope with Returns_On_Secondary_Stack.
2301 * gcc-interface/trans.cc (gnat_to_gnu) <N_Simple_Return_Statement>:
2302 In the return by invisible reference, skip the copy if the source
2303 is the same as the destination.
2304 * gcc-interface/utils2.cc (build_call_alloc_dealloc_proc): Deal with
2305 the return stack pool.
2306
23072022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2308
2309 * gcc-interface/trans.cc: Fix formatting issues in comments.
2310 (Subprogram_Body_to_gnu): Tidy up.
2311 (Exception_Handler_to_gnu_gcc): Rename into...
2312 (Exception_Handler_to_gnu): ...this.
2313 (gnat_to_gnu) <N_Exception_Handler>: Adjust to above renaming.
2314
23152022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2316
2317 * gcc-interface/trans.cc (Subprogram_Body_to_gnu): Rename a couple
2318 of local variables and use Is_Generic_Subprogram predicate.
2319 (process_decls): Likewise.
2320
23212022-05-19 Eric Botcazou <ebotcazou@adacore.com>
2322
2323 * gcc-interface/trans.cc (Subprogram_Body_to_gnu): Do not deal with
2324 inlining heuristics for expression functions here but...
2325 * gcc-interface/decl.cc (inline_status_for_subprog): ...here instead
2326 and do not override them at -Os.
2327
23282022-05-19 Piotr Trojanek <trojanek@adacore.com>
2329
2330 * gcc-interface/decl.cc (gnat_to_gnu_entity): Remove dead code
2331 which expected Scope to return E_Subprogram_Body entity.
2332
1cda629f
GA
23332022-05-18 Claire Dross <dross@adacore.com>
2334
2335 * libgnat/s-imageu.adb (Set_Image_Unsigned): Change assertion.
2336
23372022-05-18 Doug Rupp <rupp@adacore.com>
2338
2339 * sigtramp-qnx.c: Change struct sigcontext * to mcontext_t *.
2340
23412022-05-18 Doug Rupp <rupp@adacore.com>
2342
2343 * sigtramp-arm-qnx.c: Rewrite.
2344
23452022-05-18 Yannick Moy <moy@adacore.com>
2346
2347 * libgnat/s-aridou.adb (Big3): Change return type.
2348 (Lemma_Mult_Non_Negative, Lemma_Mult_Non_Positive): Reorder
2349 alphabetically.
2350 (Lemma_Concat_Definition, Lemma_Double_Big_2xxsingle): New
2351 lemmas.
2352 (Double_Divide, Scaled_Divide): Add assertions.
2353
23542022-05-18 Claire Dross <dross@adacore.com>
2355
2356 * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Add assertions.
2357
23582022-05-18 Kévin Le Gouguec <legouguec@adacore.com>
2359
2360 * libgnat/s-dwalin.adb (Read_Aranges_Header): Initialize output
2361 parameter in case we return early.
2362
23632022-05-18 Bob Duff <duff@adacore.com>
2364
2365 * libgnat/a-crbtgo.ads, libgnat/a-rbtgbo.ads,
2366 libgnat/a-cbdlli.adb, libgnat/a-cbhama.adb,
2367 libgnat/a-cbhase.adb, libgnat/a-cdlili.adb,
2368 libgnat/a-cfdlli.adb, libgnat/a-cfhama.adb,
2369 libgnat/a-cfhase.adb, libgnat/a-cidlli.adb,
2370 libgnat/a-cihama.adb, libgnat/a-cihase.adb,
2371 libgnat/a-cohama.adb, libgnat/a-cohase.adb,
2372 libgnat/a-crbtgo.adb, libgnat/a-crdlli.adb, libgnat/a-rbtgbo.adb
2373 (Vet): Make the Vet functions do nothing when
2374 Container_Checks'Enabled is False, and inline them, so the calls
2375 disappear when optimizing.
2376
23772022-05-18 Doug Rupp <rupp@adacore.com>
2378
2379 * Makefile.rtl (arm-qnx): Use default (non-fma) target pair.
2380
23812022-05-18 Kévin Le Gouguec <legouguec@adacore.com>
2382
2383 * libgnat/s-dwalin.adb (Aranges_Lookup, Enable_Cache): Adapt to
2384 changes in the signature of Read_Aranges_*.
2385 (Debug_Info_Lookup): Do not control address size read from
2386 DWARF.
2387 (Read_Aranges_Header): Do not control address size read from
2388 DWARF; return this size.
2389 (Read_Aranges_Entry): Use the size returned by
2390 Read_Aranges_Header.
2391
23922022-05-18 Gary Dismukes <dismukes@adacore.com>
2393
2394 * errout.ads (Error_Msg_GNAT_Extension): Add formal Loc and
2395 revise comment.
2396 * errout.adb (Error_Msg_GNAT_Extension): Condition message on
2397 the flag Ada_Version_Pragma, and add suggestion to use of pragma
2398 Extensions_Allowed in messages.
2399 * par-ch3.adb, par-ch5.adb, par-ch6.adb, par-ch11.adb,
2400 par-ch12.adb: Add actual Token_Ptr on calls to
2401 Error_Msg_GNAT_Extension.
2402 * par-ch4.adb: Change Error_Msg to Error_Msg_GNAT_Extension for
2403 error calls related to use of extension features.
2404 * sem_ch13.adb: Likewise.
2405
24062022-05-18 Johannes Kliemann <kliemann@adacore.com>
2407
2408 * libgnarl/s-osinte__qnx.adb (To_Target_Priority): Perform
2409 arithmetic in int.
2410
24112022-05-18 Eric Botcazou <ebotcazou@adacore.com>
2412
2413 * exp_ch7.adb (Build_BIP_Cleanup_Stmts): Use Needs_BIP_Alloc_Form.
2414
24152022-05-18 Javier Miranda <miranda@adacore.com>
2416
2417 * sem_ch6.adb (Find_Corresponding_Spec): Avoid calling
2418 Is_Null_Extension with a class-wide type entity.
2419 (Overrides_Visible_Function): Handle alias entities.
2420 * sem_res.adb (Has_Applicable_User_Defined_Literal): Conversion
2421 not needed if the result type of the call is class-wide or if
2422 the result type matches the context type.
2423 * sem_util.ads (Is_Null_Extension): Adding documentation.
2424 (Is_Null_Extension_Of): Adding documentation.
2425 * sem_util.adb (Is_Null_Extension): Adding assertion.
2426 (Is_Null_Extension_Of): Adding assertions.
2427
24282022-05-18 Javier Miranda <miranda@adacore.com>
2429
2430 * snames.ads-tmpl (Name_Index): New attribute name.
2431 (Attribute_Id): Adding Attribute_Index as regular attribute.
2432 * sem_attr.adb (Attribute_22): Adding Attribute_Index as Ada
2433 2022 attribute.
2434 (Analyze_Index_Attribute): Check that 'Index appears in a
2435 pre-/postcondition aspect or pragma associated with an entry
2436 family.
2437 (Analyze_Attribute): Adding semantic analysis for 'Index.
2438 (Eval_Attribute): Register 'Index as can never be folded.
2439 (Resolve_Attribute): Resolve attribute 'Index.
2440 * sem_ch9.adb (Check_Wrong_Attribute_In_Postconditions): New
2441 subprogram.
2442 (Analyze_Requeue): Check that the requeue target shall not have
2443 an applicable specific or class-wide postcondition which
2444 includes an Index attribute reference.
2445 * exp_attr.adb (Expand_N_Attribute_Reference): Transform
2446 attribute Index into a renaming of the second formal of the
2447 wrapper built for an entry family that has contract cases.
2448 * einfo.ads (Is_Entry_Wrapper): Complete documentation.
2449
24502022-05-18 Yannick Moy <moy@adacore.com>
2451
2452 * libgnat/s-imagei.adb (Set_Digits): Add assertion.
2453 * libgnat/s-imgboo.adb (Image_Boolean): Add assertions.
2454 * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Add assertion.
2455
24562022-05-18 Arnaud Charlet <charlet@adacore.com>
2457
2458 * sem_aux.adb (Is_Immutably_Limited_Type): Do not look through
2459 private types as per RM 7.5(8.1).
2460 * sem_ch6.adb (Analyze_Function_Return): Use
2461 Is_Immutably_Limited_Type as per RM 6.5(5.10).
2462
24632022-05-18 Marc Poulhiès <poulhies@adacore.com>
2464
2465 * gen_il-gen-gen_nodes.adb (Gen_IL.Gen.Gen_Nodes): Add
2466 Is_Homogeneous_Aggregate field for N_Delta_Aggregate nodes.
2467 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Minor reformatting.
2468 * sem_aggr.adb (Resolve_Delta_Aggregate): Reject square brackets
2469 for record aggregate.
2470 (Resolve_Record_Aggregate): Uniformise error message.
2471
24722022-05-18 Arnaud Charlet <charlet@adacore.com>
2473
2474 * ali.adb (Scan_ALI): Special case a-tags.ali when setting
2475 Sec_Stack_Used.
2476 * bindgen.adb (Gen_Adainit): Simplify handling of secondary
2477 stack related code, and only import __gnat_binder_ss_count when
2478 needed.
2479 * libgnat/s-secsta.adb (Binder_SS_Count): Default initialize to
2480 0.
2481
24822022-05-18 Eric Botcazou <ebotcazou@adacore.com>
2483
2484 * libgnat/s-dourea.adb ("/"): Add guard for zero and infinite
2485 divisor.
2486 * libgnat/s-valuer.adb (Scan_Raw_Real): Add guard for very large
2487 exponent values.
2488
24892022-05-18 Yannick Moy <moy@adacore.com>
2490
2491 * sem_elab.adb (Is_Suitable_Construct): Fix for generated
2492 constructs.
2493
24942022-05-18 Marc Poulhiès <poulhies@adacore.com>
2495
2496 * sem_ch3.adb (Analyze_Object_Declaration): Skip predicate check
2497 for type conversion if object's subtype and expression's subtype
2498 statically match.
2499 * exp_prag.adb (Expand_Pragma_Check): Typo fix in comment.
2500
25012022-05-18 Eric Botcazou <ebotcazou@adacore.com>
2502
2503 * exp_dbug.ads (Build_Subprogram_Instance_Renamings): Fix typo.
2504 * exp_dbug.adb (Build_Subprogram_Instance_Renamings): Build the
2505 renaming only for actuals of formal objects.
2506
25072022-05-18 Gary Dismukes <dismukes@adacore.com>
2508
2509 * sem_ch3.adb (Check_Abstract_Overriding): If the type is
2510 derived from an untagged type, then don't perform any of the
2511 abstract overriding error checks.
2512
25132022-05-18 Piotr Trojanek <trojanek@adacore.com>
2514
2515 * exp_aggr.adb (Component_Count): Calculate size as an Uint and
2516 only then check if it is in the range of Int, as otherwise the
2517 multiplication of Int values can overflow.
2518
25192022-05-18 Eric Botcazou <ebotcazou@adacore.com>
2520
2521 * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add g-gfmafu$(objext).
2522 (SIMD_PATH_TARGET_PAIRS): New variable.
2523 (TRASYM_DWARF_COMMON_OBJS): Minor tweak.
2524 (x86-64/Linux): Use SIMD_PATH_TARGET_PAIRS.
2525 (x32/Linux): Likewise.
2526 * doc/gnat_rm/the_gnat_library.rst (Generic_Fast_Math_Functions):
2527 New entry.
2528 * gnat_rm.texi: Regenerate.
2529 * impunit.adb (Non_Imp_File_Names_95): Add g-gfmafu.
2530 * sem_ch7.adb (Has_Referencer): Do not set In_Nested_Instance for
2531 instances of generic packages that do not have a body.
2532 * libgnat/a-nalofl__simd.ads: New SIMD-enabled version.
2533 * libgnat/a-nuaufl__simd.ads: Likewise.
2534 * libgnat/g-gfmafu.ads: New package renaming unit.
2535
25362022-05-18 Arnaud Charlet <charlet@adacore.com>
2537
2538 * freeze.adb (Should_Freeze_Type): Fix handling of freezing in
2539 instances.
2540
25412022-05-18 Marc Poulhiès <poulhies@adacore.com>
2542
2543 * sem_ch12.adb (Check_Generic_Parent): Use
2544 Get_Unit_Instantiation_Node instead of Next.
2545
25462022-05-18 Alexandre Oliva <oliva@adacore.com>
2547
2548 * libgnat/a-nagefl.ads: Replace mentions of C/unix math library
2549 with intrinsics.
2550 * libgnat/a-nallfl.ads: Likewise. State compatibility
2551 requirements.
2552 * libgnat/a-nalofl.ads: Likewise.
2553 * libgnat/a-nuaufl.ads: Likewise.
2554
25552022-05-18 Eric Botcazou <ebotcazou@adacore.com>
2556
2557 * sem_ch8.adb (Analyze_Subprogram_Renaming): Move final test on
2558 In_Instance to outer condition.
2559
25602022-05-18 Doug Rupp <rupp@adacore.com>
2561
2562 * Makefile.rtl: Rename system-qnx-aarch64.ads to
2563 system-qnx-arm.ads.
2564 (AARCH64 QNX section): Modify to handle both arm and arch64.
2565 * tracebak.c (__QNX__): Add new __ARMEL__ section.
2566 * sigtramp-arm-qnx.c: New file.
2567 * libgnat/system-qnx-aarch64.ads: Renamed to ...
2568 * libgnat/system-qnx-arm.ads: this.
2569
3d9439b1
GA
25702022-05-17 Piotr Trojanek <trojanek@adacore.com>
2571
2572 * sem_res.adb (Flag_Effectively_Volatile_Objects): Restore
2573 redundant guard.
2574
25752022-05-17 Gary Dismukes <dismukes@adacore.com>
2576
2577 * sem_ch8.adb (Analyze_Subprogram_Renaming): Add error check for
2578 the case of a renamed subprogram given by an expanded name whose
2579 outermost prefix names a unit that is hidden by the name of the
2580 renaming.
2581 (Ult_Expanded_Prefix): New local expression function to return
2582 the ultimate prefix of an expanded name.
2583
25842022-05-17 Ghjuvan Lacambre <lacambre@adacore.com>
2585
2586 * gnat_cuda.ads: Update package-level comments.
2587 (Build_And_Insert_CUDA_Initialization): Remove function.
2588 * gnat_cuda.adb (Build_And_Insert_CUDA_Initialization): Remove
2589 function.
2590 (Expand_CUDA_Package): Remove call to
2591 Build_And_Insert_CUDA_Initialization.
2592
25932022-05-17 Etienne Servais <servais@adacore.com>
2594
2595 * freeze.adb (Freeze_Enumeration_Type): Fix comment, enhance
2596 message and silence warning for size > 32.
2597
25982022-05-17 Yannick Moy <moy@adacore.com>
2599
2600 * exp_spark.adb (Expand_SPARK_Potential_Renaming): Deal with no
2601 entity case.
2602 * inline.ads (Check_Object_Renaming_In_GNATprove_Mode): New
2603 procedure.
2604 * inline.adb (Check_Object_Renaming_In_GNATprove_Mode): New
2605 procedure.
2606 (Can_Be_Inlined_In_GNATprove_Mode): Remove case forbidding
2607 inlining for subprograms inside generics.
2608 * sem_ch12.adb (Copy_Generic_Node): Preserve global entities
2609 when inlining in GNATprove mode.
2610 * sem_ch6.adb (Analyse_Subprogram_Body_Helper): Remove body to
2611 inline if renaming is detected in GNATprove mode.
2612
26132022-05-17 Gary Dismukes <dismukes@adacore.com>
2614
2615 * exp_ch4.adb (Expand_N_Allocator): For an allocator with an
2616 unconstrained discriminated designated type, and whose
2617 allocation subtype is constrained, set the
2618 Actual_Designated_Subtype of the dereference passed to the init
2619 proc of the designated type to be the allocation subtype.
2620 * sinfo.ads: Add documentation of new setting of
2621 Actual_Designated_Subtype on a dereference used as an actual
2622 parameter of call to an init proc associated with an allocator.
2623 Also add missing syntax and documentation for the GNAT language
2624 extension that allows an expression as a default for a concrete
2625 generic formal function.
2626
26272022-05-17 Bob Duff <duff@adacore.com>
2628
2629 * sinfo.ads: Remove From_At_End. Update comments.
2630 * gen_il-fields.ads, gen_il-gen-gen_nodes.adb, sem_ch11.adb:
2631 Remove From_At_End.
2632 * exp_ch11.adb (Expand_At_End_Handler): Remove assertion.
2633 * fe.h (Exception_Mechanism, Exception_Mechanism_Type, Has_DIC,
2634 Has_Invariants, Is_List_Member, List_Containing): Remove
2635 declarations that are not used in gigi.
2636 * opt.ads (Exception_Mechanism): This is not used in gigi.
2637 * exp_util.ads: Minor comment fix.
2638
26392022-05-17 Dmitriy Anisimkov <anisimko@adacore.com>
2640
2641 * impunit.adb: Add "g-binsea" to Non_Imp_File_Names_95 list.
2642
26432022-05-17 Yannick Moy <moy@adacore.com>
2644
2645 * sem_ch5.adb (Analyze_Iterator_Specification): Use
2646 Insert_Action when possibly inside an expression.
2647
26482022-05-17 Marc Poulhiès <poulhies@adacore.com>
2649
2650 * libgnat/g-forstr.adb (Is_Number): Add scientific notation and
2651 shortest representation.
2652
26532022-05-17 Eric Botcazou <ebotcazou@adacore.com>
2654
2655 * exp_ch3.adb (Expand_N_Full_Type_Declaration): Look into N.
2656
26572022-05-17 Bob Duff <duff@adacore.com>
2658
2659 * exp_util.adb (Requires_Cleanup_Actions): Remove
2660 N_Protected_Body from the case statement, so that case will be
2661 covered by "raise Program_Error".
2662
26632022-05-17 Bob Duff <duff@adacore.com>
2664
2665 * output.adb (Pop_Output, Set_Output): Unconditionally flush
2666 output when switching from one output destination to another.
2667 Otherwise buffering can cause garbled output.
2668 (w): Push/pop the current settings, and temporarily
2669 Set_Standard_Error during these procedures.
2670
26712022-05-17 Dmitriy Anisimkov <anisimko@adacore.com>
2672
2673 * libgnat/g-binsea.ads, libgnat/g-binsea.adb
2674 (GNAT.Binary_Search): New package.
2675 * Makefile.rtl (GNATRTL_NONTASKING_OBJS): New item in list.
2676 * doc/gnat_rm/the_gnat_library.rst (GNAT.Binary_Search): New
2677 package record.
2678 * gnat_rm.texi: Regenerate.
2679
26802022-05-17 Eric Botcazou <ebotcazou@adacore.com>
2681
2682 * sem_ch12.ads (Is_Abbreviated_Instance): Declare.
2683 * sem_ch12.adb (Check_Abbreviated_Instance): Declare.
2684 (Requires_Conformance_Checking): Declare.
2685 (Analyze_Association.Process_Default): Fix subtype of parameter.
2686 (Analyze_Formal_Object_Declaration): Check whether it is in the
2687 visible part of abbreviated instance.
2688 (Analyze_Formal_Subprogram_Declaration): Likewise.
2689 (Analyze_Formal_Type_Declaration): Likewise.
2690 (Analyze_Package_Instantiation): Do not check for a generic child
2691 unit in the case of an abbreviated instance.
2692 (Check_Abbreviated_Instance): New procedure.
2693 (Check_Formal_Packages): Tidy up.
2694 (Copy_Generic_Elist): Fix comment.
2695 (Instantiate_Formal_Package): Tidy up. If the generic unit is a
2696 child unit, copy the qualified name onto the abbreviated instance.
2697 (Is_Abbreviated_Instance): New function.
2698 (Collect_Previous_Instances): Call Is_Abbreviated_Instance.
2699 (Requires_Conformance_Checking): New function.
2700 * sem_ch7.adb (Analyze_Package_Specification): Do not install the
2701 private declarations of the parent for an abbreviated instance.
2702
27032022-05-17 Etienne Servais <servais@adacore.com>
2704
2705 * sem_ch3.adb (Analyze_Subtype_Declaration): Use underlying type
2706 of Indic_Typ.
2707 (Constrain_Array): Ditto for T.
2708
27092022-05-17 Arnaud Charlet <charlet@adacore.com>
2710
2711 * sem_attr.adb (Analyze_Attribute [Attribute_Reduce]): Allow
2712 'Reduce for Ada 2022 and above.
2713 * sem_attr.ads (Attribute_Impl_Def): 'Reduce is no longer
2714 implementation defined.
2715
27162022-05-17 Ghjuvan Lacambre <lacambre@adacore.com>
2717
2718 * exp_ch9.adb (Expand_N_Asynchronous_Select): Don't generate
2719 Abort_Undefers when not Abort_Allowed.
2720
27212022-05-17 Marc Poulhiès <poulhies@adacore.com>
2722
2723 * exp_ch7.adb: Fix typo.
2724
27252022-05-17 Etienne Servais <servais@adacore.com>
2726
2727 * lib.ads: initialize `Compiler_State` to `Parsing`.
2728
27292022-05-17 Eric Botcazou <ebotcazou@adacore.com>
2730
2731 * sem_ch13.adb (Has_Compatible_Representation): Return true for
2732 derived untagged record types without representation clause.
2733
27342022-05-17 Eric Botcazou <ebotcazou@adacore.com>
2735
2736 * sem_ch13.ads (Has_Compatible_Representation): Minor tweaks.
2737 * sem_ch13.adb (Has_Compatible_Representation): Look directly into
2738 the (implementation) base types and simplifiy accordingly.
2739 * exp_ch5.adb (Change_Of_Representation): Adjust.
2740 * exp_ch6.adb (Expand_Actuals): Likewise.
2741
27422022-05-17 Etienne Servais <servais@adacore.com>
2743
2744 * sem_ch5.adb (Analyze_Assignment): Remove superfluous call to
2745 Original_Node.
2746
27472022-05-17 Javier Miranda <miranda@adacore.com>
2748
2749 * freeze.adb (Freeze_Entity): Protect the call to
2750 Declaration_Node against entities of expressions replaced by the
2751 frontend with an N_Raise_CE node.
2752
27532022-05-17 Javier Miranda <miranda@adacore.com>
2754
2755 * freeze.adb (Build_DTW_Spec): Do not inherit the not-overriding
2756 indicator because the DTW wrapper overrides its wrapped
2757 subprogram.
2758 * contracts.ads (Make_Class_Precondition_Subps): Adding
2759 documentation.
2760
27612022-05-17 Eric Botcazou <ebotcazou@adacore.com>
2762
2763 * exp_ch13.adb (Expand_N_Freeze_Entity): Delete freeze nodes for
2764 subprograms only if they have no actions.
2765 * exp_ch6.adb (Freeze_Subprogram): Put the actions into the Actions
2766 field of the freeze node instead of inserting them after it.
2767 * sem_elab.adb (Is_SPARK_Semantic_Target): Fix typo in comment.
2768 * gcc-interface/trans.cc (process_freeze_entity): Return early for
2769 freeze nodes of subprograms with Interface_Alias set.
2770
27712022-05-17 Javier Miranda <miranda@adacore.com>
2772
2773 * contracts.adb (Build_Call_Helper_Body): Improve handling of
2774 the case of a (legal) non-dispatching call to an abstract
2775 subprogram.
2776
27772022-05-17 Piotr Trojanek <trojanek@adacore.com>
2778
2779 * doc/gnat_rm/implementation_defined_attributes.rst
2780 (Loop_Entry): Mention pragmas Assert, Assert_And_Cut and Assume;
2781 refill.
2782 * gnat_rm.texi: Regenerate.
2783
27842022-05-17 Etienne Servais <servais@adacore.com>
2785
2786 * par-ch3.adb (P_Access_Type_Definition): Outputs an error if
2787 token is not "access".
2788
27892022-05-17 Piotr Trojanek <trojanek@adacore.com>
2790
2791 * exp_ch2.adb (Expand_Current_Value): Remove special case for
2792 references immediately within pragma argument associations.
2793 * exp_prag.adb (Expand_Pragma_Inspection_Point): Remove special
2794 case for privals.
2795
702bd11f
GA
27962022-05-16 Eric Botcazou <ebotcazou@adacore.com>
2797
2798 * sem_ch7.adb (Inspect_Untagged_Record_Completion): Also move the
2799 equality operator on the homonym chain if there is another equality
2800 operator in the private part.
2801
28022022-05-16 Piotr Trojanek <trojanek@adacore.com>
2803
2804 * exp_attr.adb (Expand_Loop_Entry_Attribute): Disable value
2805 propagation when analysing the constant that holds the
2806 Loop_Entry prefix value.
2807
28082022-05-16 Piotr Trojanek <trojanek@adacore.com>
2809
2810 * sem_attr.adb (Address_Checks): Remove call to
2811 Kill_Current_Values for subprogram entities, because this
2812 routine only does something for object entities.
2813
28142022-05-16 Justin Squirek <squirek@adacore.com>
2815
2816 * exp_ch7.adb (Build_Finalizer): Disable late evaluation of
2817 postconditions for functions returning types which where
2818 Has_Unconstrained_Elements is true or are unconstrained arrays.
2819
28202022-05-16 Etienne Servais <servais@adacore.com>
2821
2822 * exp_ch4.adb (Expand_N_Qualified_Expression): Freeze
2823 Target_Type.
2824
28252022-05-16 Yannick Moy <moy@adacore.com>
2826
2827 * libgnat/s-aridou.adb (Double_Divide): Add intermediate
2828 assertions.
2829
28302022-05-16 Ghjuvan Lacambre <lacambre@adacore.com>
2831
2832 * lib-writ.adb (Output_CUDA_Symbols): Check for null packages.
2833
28342022-05-16 Joel Brobecker <brobecker@adacore.com>
2835
2836 * libgnat/g-debpoo.ads: Improve documentation of the
2837 Stack_Trace_Depth parameter.
2838
28392022-05-16 Joel Brobecker <brobecker@adacore.com>
2840
2841 * init.c (__gnat_install_handler) [__QNX__]: Save sigaction's
2842 return value in err before checking err's value. Fix incorrect
2843 signal names in perror messages.
2844
28452022-05-16 Joel Brobecker <brobecker@adacore.com>
2846
2847 * init.c (__gnat_install_handler) [__QNX__]: Set
2848 act.sa_sigaction rather than act.sa_handler.
2849
28502022-05-16 Joel Brobecker <brobecker@adacore.com>
2851
2852 * cstreams.c: Add <stdlib.h> #include.
2853
28542022-05-16 Joel Brobecker <brobecker@adacore.com>
2855
2856 * terminals.c: Remove bzero #define on HP/UX or Solaris
2857 platforms.
2858 (child_setup_tty): Replace bzero call by equivalent call to
2859 memset.
2860
28612022-05-16 Gary Dismukes <dismukes@adacore.com>
2862
2863 * sem_util.ads (Storage_Model_Support): Revise comments on most
2864 operations within this nested package to reflect that they can
2865 now be passed either a type that has aspect Storage_Model_Type
2866 or an object of such a type. Change the names of the relevant
2867 formals to SM_Obj_Or_Type. Also, add more precise semantic
2868 descriptions in some cases, and declare the subprograms in a
2869 more logical order.
2870 * sem_util.adb (Storage_Model_Support.Storage_Model_Object): Add
2871 an assertion that the type must specify aspect
2872 Designated_Storage_Model, rather than returning Empty when it
2873 doesn't specify that aspect.
2874 (Storage_Model_Support.Storage_Model_Type): Add an assertion
2875 that formal must be an object whose type specifies aspect
2876 Storage_Model_Type, rather than returning Empty for when it
2877 doesn't have such a type (and test Has_Storage_Model_Type_Aspect
2878 rather than Find_Value_Of_Aspect).
2879 (Storage_Model_Support.Get_Storage_Model_Type_Entity): Allow
2880 both objects and types, and add an assertion that the type (or
2881 the type of the object) has a value for aspect
2882 Storage_Model_Type.
2883
28842022-05-16 Etienne Servais <servais@adacore.com>
2885
2886 * checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated):
2887 Fix condition to return.
2888
28892022-05-16 Yannick Moy <moy@adacore.com>
2890
2891 * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Update comment.
2892
28932022-05-16 Marc Poulhiès <poulhies@adacore.com>
2894
2895 * sem_aggr.adb (Resolve_Iterated_Association): Create scope
2896 around N_Iterated_Element_Association handling. Analyze a copy
2897 of the Loop_Parameter_Specification. Call Analyze instead
2898 Analyze_* to be more homogeneous.
2899 (Sem_Ch5): Remove now unused package.
2900
29012022-05-16 Eric Botcazou <ebotcazou@adacore.com>
2902
2903 * exp_util.adb (Insert_Actions) <N_Iterated_Component_Association>:
2904 Climb up out of the node if the actions come from Discrete_Choices.
2905
29062022-05-16 Javier Miranda <miranda@adacore.com>
2907
2908 * sem_disp.adb (Check_Dispatching_Context): When checking to see
2909 whether an expression occurs in a class-wide pre/post-condition,
2910 also check for the possibility that it occurs in a class-wide
2911 preconditions subprogram that was introduced as part of
2912 expansion. Without this fix, some legal calls occuring in
2913 class-wide preconditions may be incorrectly flagged as violating
2914 the "a call to an abstract subprogram must be dispatching" rule.
2915
29162022-05-16 Eric Botcazou <ebotcazou@adacore.com>
2917
2918 * inline.adb (Cleanup_Scopes): Test the underlying type.
2919
29202022-05-16 Eric Botcazou <ebotcazou@adacore.com>
2921
2922 * sem_util.ads (Is_Entity_Of_Quantified_Expression): Declare.
2923 * sem_util.adb (Is_Entity_Of_Quantified_Expression): New
2924 predicate.
2925 (New_Copy_Tree): Deal with all entities of quantified
2926 expressions.
2927 * sem_ch13.adb (Build_Predicate_Functions): Get rid of
2928 superfluous tree copying and remove obsolete code.
2929 * sem_ch6.adb (Fully_Conformant_Expressions): Deal with all
2930 entities of quantified expressions.
2931
29322022-05-16 Steve Baird <baird@adacore.com>
2933
2934 * exp_ch7.adb (Build_Finalize_Statements): Add Last_POC_Call
2935 variable to keep track of the last "early finalization" call
2936 generated for type extension's finalization procedure. If
2937 non-empty, then this will indicate the point at which to insert
2938 the call to the parent type's finalization procedure. Modify
2939 nested function Process_Component_List_For_Finalize to set this
2940 variable (and avoid setting it during a recursive call). If
2941 Last_POC_Call is empty, then insert the parent finalization call
2942 before, rather than after, the finalization code for the
2943 extension components.
2944
29452022-05-16 Eric Botcazou <ebotcazou@adacore.com>
2946
2947 * einfo-utils.adb (Remove_Entity): Fix couple of oversights.
2948 * exp_ch3.adb (Is_User_Defined_Equality): Delete.
2949 (User_Defined_Eq): Call Get_User_Defined_Equality.
2950 (Make_Eq_Body): Likewise.
2951 (Predefined_Primitive_Eq_Body): Call Is_User_Defined_Equality.
2952 * exp_ch4.adb (Build_Eq_Call): Call Get_User_Defined_Equality.
2953 (Is_Equality): Delete.
2954 (User_Defined_Primitive_Equality_Op): Likewise.
2955 (Find_Aliased_Equality): Call Is_User_Defined_Equality.
2956 (Expand_N_Op_Eq): Call Underlying_Type unconditionally.
2957 Do not implement AI12-0101 + AI05-0123 here.
2958 (Expand_Set_Membership): Call Resolve_Membership_Equality.
2959 * exp_ch6.adb (Expand_Call_Helper): Remove obsolete code.
2960 * sem_aux.ads (Is_Record_Or_Limited_Type): Delete.
2961 * sem_aux.adb (Is_Record_Or_Limited_Type): Likewise.
2962 * sem_ch4.ads (Nondispatching_Call_To_Abstract_Operation): Declare.
2963 * sem_ch4.adb (Analyze_Call): Call Call_Abstract_Operation.
2964 (Analyze_Membership_Op): Call Resolve_Membership_Equality.
2965 (Nondispatching_Call_To_Abstract_Operation): New procedure.
2966 (Remove_Abstract_Operations): Call it.
2967 * sem_ch6.adb (Check_Untagged_Equality): Remove obsolete error and
2968 call Is_User_Defined_Equality.
2969 * sem_ch7.adb (Inspect_Untagged_Record_Completion): New procedure
2970 implementing AI12-0101 + AI05-0123.
2971 (Analyze_Package_Specification): Call it.
2972 (Declare_Inherited_Private_Subprograms): Minor tweak.
2973 (Uninstall_Declarations): Likewise.
2974 * sem_disp.adb (Check_Direct_Call): Adjust to new implementation
2975 of Is_User_Defined_Equality.
2976 * sem_res.ads (Resolve_Membership_Equality): Declare.
2977 * sem_res.adb (Resolve): Replace direct error handling with call to
2978 Nondispatching_Call_To_Abstract_Operation
2979 (Resolve_Call): Likewise.
2980 (Resolve_Equality_Op): Likewise. mplement AI12-0413.
2981 (Resolve_Membership_Equality): New procedure.
2982 (Resolve_Membership_Op): Call Get_User_Defined_Equality.
2983 * sem_util.ads (Get_User_Defined_Eq): Rename into...
2984 (Get_User_Defined_Equality): ...this.
2985 * sem_util.adb (Get_User_Defined_Eq): Rename into...
2986 (Get_User_Defined_Equality): ...this. Call Is_User_Defined_Equality.
2987 (Is_User_Defined_Equality): Also check the profile but remove tests
2988 on Comes_From_Source and Parent.
2989 * sinfo.ads (Generic_Parent_Type): Adjust field description.
2990 * uintp.ads (Ubool): Invoke user-defined equality in predicate.
2991
29922022-05-16 Piotr Trojanek <trojanek@adacore.com>
2993
2994 * exp_ch3.adb (User_Defined_Eq): Replace duplicated code with a
2995 call to Get_User_Defined_Eq.
2996
29972022-05-16 Piotr Trojanek <trojanek@adacore.com>
2998
2999 * exp_ch3.adb (Build_Untagged_Equality): Exit early when the
3000 outcome of a loop is already known.
3001
30022022-05-16 Olivier Hainque <hainque@adacore.com>
3003
3004 * Makefile.rtl: Add aarch64 to the list of CPUs for which
3005 GNATLIB_SHARED maps to gnatlib-shared-dual for vxworks7r2.
3006
30072022-05-16 Eric Botcazou <ebotcazou@adacore.com>
3008
3009 * sem_ch4.adb (Analyze_Negation): Minor tweak.
3010 (Analyze_Unary_Op): Likewise.
3011
30122022-05-16 Eric Botcazou <ebotcazou@adacore.com>
3013
3014 * exp_ch3.adb (Build_Assignment): Adjust to the new definition of
3015 Incomplete_View field.
3016 * sem_ch10.ads (Decorate_Type): Declare.
3017 * sem_ch10.adb (Decorate_Type): Move to library level.
3018 (Install_Limited_With_Clause): In the already analyzed case, also
3019 deal with incomplete type declarations present in the sources and
3020 simplify the replacement code.
3021 (Build_Shadow_Entity): Deal with swapped views in package body.
3022 (Restore_Chain_For_Shadow): Deal with incomplete type declarations
3023 present in the sources.
3024 * sem_ch3.adb (Analyze_Full_Type_Declaration): Adjust to the new
3025 definition of Incomplete_View field.
3026 (Build_Incomplete_Type_Declaration): Small consistency tweak.
3027 Set the incomplete type as the Incomplete_View of the full type.
3028 If the scope is a package with a limited view, build a shadow
3029 entity for the incomplete type.
3030 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): When replacing
3031 the limited view of a CW type as designated type of an anonymous
3032 access return type, get to the CW type of the incomplete view of
3033 the tagged type, if any.
3034 (Collect_Primitive_Operations): Adjust to the new definition of
3035 Incomplete_View field.
3036 * sinfo.ads (Incomplete_View): Denote the entity itself instead
3037 of its declaration.
3038 * sem_util.adb: Remove call to Defining_Entity.
3039
30402022-05-16 Piotr Trojanek <trojanek@adacore.com>
3041
3042 * sem_util.adb (Type_Or_Variable_Has_Enabled_Property): Given a
3043 subtype recurse into its base type.
3044
30452022-05-16 Piotr Trojanek <trojanek@adacore.com>
3046
3047 * sem_util.adb (Type_Or_Variable_Has_Enabled_Property): Clarify.
3048
30492022-05-16 Piotr Trojanek <trojanek@adacore.com>
3050
3051 * sem_util.adb (Is_Enabled): Remove; use Is_Enabled_Pragma
3052 instead.
3053
30542022-05-16 Martin Liska <mliska@suse.cz>
3055
3056 * locales.c (iso_639_1_to_639_3): Use ARRAY_SIZE.
3057 (language_name_to_639_3): Likewise.
3058 (country_name_to_3166): Likewise.
3059
9df4ffe4
GA
30602022-05-13 Alexandre Oliva <oliva@adacore.com>
3061
3062 * gcc-interface/decl.cc (is_cplusplus_method): Build proper
3063 String for Get_External_Name.
3064
30652022-05-13 Eric Botcazou <ebotcazou@adacore.com>
3066
3067 * sem_ch3.adb (Derive_Subprogram): For a function, also copy the
3068 Returns_By_Ref flag from the parent.
3069
30702022-05-13 Gary Dismukes <dismukes@adacore.com>
3071
3072 * sem_ch13.adb (Check_Aspect_At_Freeze_Point): Analyze the
3073 expression of the aspect at this point, like other aspects that
3074 denote simple entities. Ensures that function
3075 Storage_Model_Object will have an entity to retrieve from the
3076 aspect expression. Also, move comment about aspects that don't
3077 require delay analysis in front of last alternative of the case
3078 statement, where it's supposed to be.
3079
30802022-05-13 Javier Miranda <miranda@adacore.com>
3081
3082 * contracts.adb (Build_Unique_Name): New subprogram.
3083 (Make_Class_Precondition_Subps): Use Build_Unique_Name to
3084 generate the names of the call helpers and the name of indirect
3085 call wrappers.
3086 * freeze.adb (Needs_Wrapper): Remove dead code.
3087 (Check_Inherited_Conditions): Defer building helpers and ICW
3088 until all the dispatch table wrappers have been built and
3089 analyzed. Required to ensure uniqueness in their names because
3090 when building these wrappers for overlapped subprograms their
3091 homonym number is not definite until they have been analyzed.
3092
30932022-05-13 Arnaud Charlet <charlet@adacore.com>
3094
3095 * libgnarl/s-taprop__linux.adb (Initialize): Do not use an
3096 alternate stack if no handler for SEGV is installed.
3097
30982022-05-13 Alexandre Oliva <oliva@adacore.com>
3099
3100 * doc/gnat_rm/security_hardening_features.rst (Control Flow
3101 Redundancy): Drop mentions of noreturn and tail calls.
3102 * gnat_rm.texi: Regenerate.
3103
31042022-05-13 Ghjuvan Lacambre <lacambre@adacore.com>
3105
3106 * ali.adb: Introduce new 'K' line in ALI files, used to
3107 represent CUDA kernel entries.
3108 * ali.ads: Create new CUDA_Kernels table, which contains entries
3109 of type CUDA_Kernel_Record. Each CUDA_Kernel_Record corresponds
3110 to a K line in an ali file.
3111 * bindgen.adb: Introduce new Gen_CUDA_Init procedure in the
3112 binder, which generates CUDA kernel registration code.
3113 * gnat_cuda.adb: Move Get_CUDA_Kernels spec to package spec to
3114 make it available to bindgen.adb.
3115 * gnat_cuda.ads: Likewise.
3116 * lib-writ.adb: Introduce new Output_CUDA_Symbols procedure,
3117 which generates one 'K' line in the ALI file per visible CUDA
3118 kernel.
3119 * opt.ads: Introduce Enable_CUDA_Expansion option, triggered by
3120 using the -gnatd_c flag.
3121 * switch-b.adb: Likewise.
3122 * switch-c.adb: Likewise.
3123
31242022-05-13 Marc Poulhiès <poulhies@adacore.com>
3125
3126 * exp_aggr.adb (Gen_Loop): Create scope for loop variable of
3127 iterated components.
3128
31292022-05-13 Yannick Moy <moy@adacore.com>
3130
3131 * libgnat/a-chtgfk.adb (Checked_Equivalent_Keys, Checked_Index):
3132 Remove useless functions.
3133 (Delete_Key_Sans_Free, Find, Generic_Conditional_Insert): Adapt
3134 to removal of wrapper functions.
3135 * libgnat/a-chtgfk.ads (Checked_Equivalent_Keys, Checked_Index):
3136 Remove useless functions.
3137 * libgnat/a-chtgfo.adb (Checked_Index): Remove useless function.
3138 (Clear): Delete code commented out regarding Busy and Lock
3139 management.
3140 (Delete_Node_At_Index): Delete unused procedure.
3141 (Delete_Node_Sans_Free, Free, Generic_Read, Next): Adapt to
3142 removal of wrapper functions.
3143 * libgnat/a-chtgfo.ads (Checked_Index): Remove useless function.
3144 (Delete_Node_At_Index): Delete unused procedure.
3145
31462022-05-13 Yannick Moy <moy@adacore.com>
3147
3148 * libgnat/a-cfhama.adb (Generic_Allocate): Retype to avoid
3149 aliasing.
3150 (Assign, Move): Remove address comparison.
3151 (Include): Insert constants for subtype constraints.
3152 (Insert): Rewrite to avoid aliasing and function with side-effects.
3153 * libgnat/a-cfhase.adb (Generic_Allocate): Retype to avoid
3154 aliasing.
3155 (Assign, Move): Remove address comparison.
3156 (Difference, Intersection, Is_Subset, Overlap,
3157 Symmetric_Difference, Union): Remove address comparison. Insert
3158 constants for subtype constraints.
3159 (Insert): Rewrite to avoid aliasing and function with
3160 side-effects.
3161 * libgnat/a-chtgfk.adb (Checked_Equivalent_Keys, Checked_Index,
3162 Delete_Key_Sans_Free, Find, Generic_Replace_Element, Index):
3163 Type for hash tables not tagged anymore.
3164 (Generic_Conditional_Insert): New_Node generic formal is a
3165 procedure taking the hash table as first parameter now, to avoid
3166 aliasing in the caller.
3167 * libgnat/a-chtgfk.ads: Same.
3168 * libgnat/a-chtgfo.adb (Checked_Index, Clear,
3169 Delete_Node_At_Index, Delete_Node_Sans_Free, First, Free,
3170 Generic_Allocate, Generic_Iteration, Generic_Read,
3171 Generic_Write, Index, Next): Type for hash tables not tagged
3172 anymore.
3173 (Generic_Equal): Removed tagged. Remove address comparison.
3174 * libgnat/a-chtgfo.ads: Same.
3175 * libgnat/a-cohata.ads (Hash_Table_Type): Remove tagged.
3176
31772022-05-13 Yannick Moy <moy@adacore.com>
3178
3179 * Makefile.rtl: Add new files.
3180 * libgnat/a-cfhama.adb: Use formal version of hash tables.
3181 * libgnat/a-cfhama.ads: Same.
3182 * libgnat/a-cfhase.adb: Same.
3183 * libgnat/a-cfhase.ads: Same.
3184 * libgnat/a-chtgfk.adb: New unit for formal containers, modified
3185 version of Generic_Bounded_Keys.
3186 * libgnat/a-chtgfk.ads: Same.
3187 * libgnat/a-chtgfo.adb: New unit for formal containers, modified
3188 version of Generic_Bounded_Operations.
3189 * libgnat/a-chtgfo.ads: Same.
3190 * libgnat/a-cohata.ads (Generic_Formal_Hash_Table_Types): Third
3191 version of the type for hash tables, equivalent to the bounded
3192 version without tampering checks.
3193
31942022-05-13 Javier Miranda <miranda@adacore.com>
3195
3196 * freeze.adb (Check_Inherited_Conditions): Dispatch table
3197 wrappers must be placed in the list of entities of their scope
3198 at the same place of their wrapped primitive. This is required
3199 for private types since these wrappers are built when their full
3200 tagged type declaration is frozen but they may override a
3201 primitive defined in the public part of the package (and it is
3202 important to maintain the wrapper in the list of public entities
3203 of the package to ensure their correct visibility).
3204
32052022-05-13 Johannes Kanig <kanig@adacore.com>
3206
3207 * osint.ads, osint.adb (Relocate_Path): If the GNSA_ROOT
3208 environment variable is set, we use that as the prefix, instead
3209 of computing the prefix from the executable location.
3210
32112022-05-13 Steve Baird <baird@adacore.com>
3212
3213 * exp_ch3.ads (Build_Intialization_Call): Add new formal
3214 parameter, Init_Control_Actual, with default value. Clients
3215 outside of package Exp_Ch3 are unaffected.
3216 * exp_ch3.adb (Initialization_Control): new package; support for
3217 this 4-valued parameter. The existing Requires_Late_Init
3218 function is moved into this new package.
3219 (Build_Initialization_Call): Add new formal parameter for
3220 subprogram body, use this new formal parameter in generating an
3221 init proc call.
3222 (Build_Record_Init_Proc): Replace Set_Tag Boolean formal
3223 parameter with 4-valued Init_Control_Formal. Wrap if-statements
3224 with appropriate conditions around tag initialization, early
3225 initialization, and late initialization statements.
3226 * exp_util.adb (Build_Task_Image_Decl): Avoid problem with
3227 duplicate declarations when an init proc for a type extension
3228 calls the parent type's init proc twice.
3229
32302022-05-13 Ed Schonberg <schonberg@adacore.com>
3231
3232 * sem_ch5.adb (Analyze_Iterator_Specification): Fix Typ in the
3233 case of a class-wide derived iterator.
3234
32352022-05-13 Yannick Moy <moy@adacore.com>
3236
3237 * libgnat/a-strbou.ads (Overwrite): Switch to >= operator in
3238 contracts.
3239 * libgnat/a-strsup.adb (Super_Overwrite): Switch to >= operator
3240 in code of procedure (function already uses it).
3241 * libgnat/a-strsup.ads (Super_Overwrite): Switch to >= operator
3242 in contracts.
3243
32442022-05-13 Etienne Servais <servais@adacore.com>
3245
3246 * doc/gnat_rm/representation_clauses_and_pragmas.rst: Fix code
3247 snippet.
3248 * gnat_rm.texi: Regenerate.
3249
32502022-05-13 Eric Botcazou <ebotcazou@adacore.com>
3251
3252 * aspects.adb (Find_Value_Of_Aspect): Add guard.
3253 * sem_ch4.adb (Complete_Object_Operation): Remove obsolete code.
3254 * sem_ch5.adb (Has_Sec_Stack_Default_Iterator): Add guard.
3255
32562022-05-13 Javier Miranda <miranda@adacore.com>
3257
3258 * exp_attr.adb (Expand_N_Attribute_Reference): The expansion of
3259 'Address in a call to an instantiation of the implicit
3260 subprogram To_Pointer with a class-wide interface type target
3261 requires adding an implicit type conversion to force
3262 displacement of the "this" pointer.
3263
32642022-05-13 Javier Miranda <miranda@adacore.com>
3265
3266 * sem_attr.adb (Resolve_Attribute): Ensure that attribute
3267 expressions are resolved at this stage; required for preanalyzed
3268 references to discriminants since their resolution (and
3269 expansion) will take care of updating their Entity attribute to
3270 reference their discriminal.
3271
32722022-05-13 Justin Squirek <squirek@adacore.com>
3273
3274 * sem_util.adb (Wrong_Type): Avoid using the first subtype of
3275 the expected type in error messages when the expected type is
3276 not internally generated.
3277
32782022-05-13 Alexandre Oliva <oliva@adacore.com>
3279
3280 * doc/gnat_rm/security_hardening_features.rst: Add subsection on
3281 Control Flow Redundancy.
3282 * gnat_rm.texi: Regenerate.
3283
32842022-05-13 Eric Botcazou <ebotcazou@adacore.com>
3285
3286 * exp_util.adb (Insert_Actions) <N_Iteration_Scheme>: Check that
3287 it is a WHILE iteration scheme before using Condition_Actions.
3288
32892022-05-13 Piotr Trojanek <trojanek@adacore.com>
3290
3291 * atree.adb, gen_il-gen.adb, osint.adb, set_targ.adb,
3292 sinput.adb, table.adb, treepr.adb, types.ads: Replace uses of
3293 Unchecked_Conversion in the compiler itself.
3294 * libgnarl/a-reatim.adb, libgnarl/s-osinte__gnu.ads,
3295 libgnarl/s-osinte__kfreebsd-gnu.ads, libgnat/a-coboho.adb,
3296 libgnat/a-stuten.ads, libgnat/s-putima.adb: Likewise in the
3297 runtime.
3298 * doc/gnat_ugn/gnat_and_program_execution.rst: Likewise in
3299 documentation.
3300 * gnat_ugn.texi: Regenerate.
3301
33022022-05-13 Piotr Trojanek <trojanek@adacore.com>
3303
3304 * butil.adb, sem.adb, sinput.adb, types.ads, xref_lib.adb:
3305 Replace uses of Unchecked_Deallocation with
3306 Ada.Unchecked_Deallocation.
3307 * doc/gnat_ugn/gnat_and_program_execution.rst: Likewise for the
3308 documentation; fix casing of GNAT.IO.
3309 * gnat_ugn.texi: Regenerate.
3310
33112022-05-13 Marc Poulhiès <poulhies@adacore.com>
3312
3313 * sem_aggr.adb (Resolve_Array_Aggregate): Fix ARM reference.
3314 Remove useless loop.
3315
33162022-05-13 Etienne Servais <servais@adacore.com>
3317
3318 * sem_ch3.adb (Analyze_Subtype_Declaration): Fix typo in
3319 comment.
3320
33212022-05-13 Justin Squirek <squirek@adacore.com>
3322
3323 * sem_ch6.adb (Check_Return_Construct_Accessibility): Modify
3324 generation of run-time accessibility checks to account for cases
3325 where Extra_Accessibility_Of_Result should be used versus the
3326 level of the enclosing subprogram. Use original node to avoid
3327 checking against expanded code. Disable check generation for
3328 tagged type case.
3329 (Is_Formal_Of_Current_Function): Added to encompass a predicate
3330 used within Check_Return_Construct_Accessibility to test if an
3331 associated expression is related to a relevant formal.
3332 * sem_util.adb, sem_util.ads (Enclosing_Subprogram): Modified to
3333 accept Node_Or_Entity_Id.
3334 (Innermost_Master_Scope_Depth): Calculate level based on the
3335 subprogram of a return statement instead of the one returned by
3336 Current_Subprogram.
3337 (Needs_Result_Accessibility_Level): Remove
3338 Disable_Coextension_Cases constant, and disable the tagged type
3339 case for performance reasons.
3340
33412022-05-13 Piotr Trojanek <trojanek@adacore.com>
3342
3343 * sem_res.adb (Flag_Effectively_Volatile_Objects): Ignore
3344 component and discriminant identifiers.
3345
33462022-05-13 Piotr Trojanek <trojanek@adacore.com>
3347
3348 * sem_res.adb (Flag_Effectively_Volatile_Objects): Remove
3349 redundant guard.
3350
33512022-05-13 Justin Squirek <squirek@adacore.com>
3352
3353 * sem_ch8.adb (Determine_Package_Scope): Created to centralize
3354 the calculation of which package a given use clause belongs to.
3355 (Most_Descendant_Use_Clause): Modified to call
3356 Determine_Package_Scope.
3357 * sem_util.adb, sem_util.ads (Enclosing_Package): Modified to
3358 handle both entity and node ids.
3359
49ace834
GA
33602022-05-12 Piotr Trojanek <trojanek@adacore.com>
3361
3362 * gnat1drv.adb (Gnat1drv): Skip postponed checks when there are
3363 errors.
3364
33652022-05-12 Arnaud Charlet <charlet@adacore.com>
3366
3367 * doc/gnat_ugn/the_gnat_compilation_model.rst: Fix URL.
3368 * gnat_ugn.texi: Regenerate.
3369
33702022-05-12 Bob Duff <duff@adacore.com>
3371
3372 * namet.ads, namet.adb (Write_Name_For_Debug): Add Quote
3373 parameter to allow conditional addition of quotes. Note that
3374 some calls to Write_Name_For_Debug, for example for file names,
3375 shouldn't have quotes, as in some_package.adb:123:45.
3376 * treepr.adb (Print_Name): Add double quotes around the name
3377 using the above Quote parameters.
3378
33792022-05-12 Piotr Trojanek <trojanek@adacore.com>
3380
3381 * sem_res.adb (Resolve_Actuals): Simplify with N_Op_Compare.
3382 * sem_util.adb (Replace_Null_Operand,
3383 Null_To_Null_Address_Convert_OK): Likewise.
3384
33852022-05-12 Piotr Trojanek <trojanek@adacore.com>
3386
3387 * sem_util.ads (Is_Selector_Name): Remove spec.
3388 * sem_util.adb (Is_Selector_Name): Remove body.
3389
33902022-05-12 Arnaud Charlet <charlet@adacore.com>
3391
3392 * sem_warn.adb (Has_Junk_Name): Add more dummy names.
3393
33942022-05-12 Piotr Trojanek <trojanek@adacore.com>
3395
3396 * lib-xref.adb (Generate_Reference): Fix comment and implement
3397 it precisely.
3398
33992022-05-12 Piotr Trojanek <trojanek@adacore.com>
3400
3401 * atree.adb, atree.ads: Move WITH clause from spec to body; to
3402 prevent new warnings stopping the bootstrap.
3403 * fmap.adb, fname-sf.adb, libgnat/a-direct.adb,
3404 libgnat/s-bignum.adb: Remove unnecessary WITH clauses; to
3405 prevent new warnings stopping the bootstrap.
3406 * sem_ch12.adb (Analyze_Subprogram_Instantiation): Only set
3407 Is_Instantiated flag when the instance is in the extended main
3408 source unit.
3409
34102022-05-12 Yannick Moy <moy@adacore.com>
3411
3412 * libgnat/s-valuei.ads: Remove pragma Warnings Off.
3413 * libgnat/s-valueu.ads: Same.
3414 * libgnat/s-valuti.ads: Same.
3415
34162022-05-12 Yannick Moy <moy@adacore.com>
3417
3418 * sem_util.adb (Check_Result_And_Post_State): Exempt trivial
3419 post.
3420
34212022-05-12 Arnaud Charlet <charlet@adacore.com>
3422
3423 * ali.adb, ali.ads, bcheck.adb, exp_ch11.adb, fe.h,
3424 gnat1drv.adb, opt.adb, opt.ads, targparm.adb, targparm.ads,
3425 lib-writ.adb: Get rid of Frontend_Exceptions processing.
3426 * libgnat/system-aix.ads, libgnat/system-darwin-arm.ads,
3427 libgnat/system-darwin-ppc.ads, libgnat/system-darwin-x86.ads,
3428 libgnat/system-djgpp.ads, libgnat/system-dragonfly-x86_64.ads,
3429 libgnat/system-freebsd.ads, libgnat/system-hpux-ia64.ads,
3430 libgnat/system-hpux.ads, libgnat/system-linux-alpha.ads,
3431 libgnat/system-linux-arm.ads, libgnat/system-linux-hppa.ads,
3432 libgnat/system-linux-ia64.ads, libgnat/system-linux-m68k.ads,
3433 libgnat/system-linux-mips.ads, libgnat/system-linux-ppc.ads,
3434 libgnat/system-linux-riscv.ads, libgnat/system-linux-s390.ads,
3435 libgnat/system-linux-sh4.ads, libgnat/system-linux-sparc.ads,
3436 libgnat/system-linux-x86.ads, libgnat/system-lynxos178-ppc.ads,
3437 libgnat/system-lynxos178-x86.ads, libgnat/system-mingw.ads,
3438 libgnat/system-qnx-aarch64.ads, libgnat/system-rtems.ads,
3439 libgnat/system-solaris-sparc.ads,
3440 libgnat/system-solaris-x86.ads,
3441 libgnat/system-vxworks-arm-rtp-smp.ads,
3442 libgnat/system-vxworks-arm-rtp.ads,
3443 libgnat/system-vxworks-arm.ads,
3444 libgnat/system-vxworks-e500-kernel.ads,
3445 libgnat/system-vxworks-e500-rtp-smp.ads,
3446 libgnat/system-vxworks-e500-rtp.ads,
3447 libgnat/system-vxworks-ppc-kernel.ads,
3448 libgnat/system-vxworks-ppc-rtp-smp.ads,
3449 libgnat/system-vxworks-ppc-rtp.ads,
3450 libgnat/system-vxworks-x86-kernel.ads,
3451 libgnat/system-vxworks-x86-rtp-smp.ads,
3452 libgnat/system-vxworks-x86-rtp.ads,
3453 libgnat/system-vxworks7-aarch64-rtp-smp.ads,
3454 libgnat/system-vxworks7-aarch64.ads,
3455 libgnat/system-vxworks7-arm-rtp-smp.ads,
3456 libgnat/system-vxworks7-arm.ads,
3457 libgnat/system-vxworks7-e500-kernel.ads,
3458 libgnat/system-vxworks7-e500-rtp-smp.ads,
3459 libgnat/system-vxworks7-e500-rtp.ads,
3460 libgnat/system-vxworks7-ppc-kernel.ads,
3461 libgnat/system-vxworks7-ppc-rtp-smp.ads,
3462 libgnat/system-vxworks7-ppc-rtp.ads,
3463 libgnat/system-vxworks7-ppc64-kernel.ads,
3464 libgnat/system-vxworks7-ppc64-rtp-smp.ads,
3465 libgnat/system-vxworks7-x86-kernel.ads,
3466 libgnat/system-vxworks7-x86-rtp-smp.ads,
3467 libgnat/system-vxworks7-x86-rtp.ads,
3468 libgnat/system-vxworks7-x86_64-kernel.ads,
3469 libgnat/system-vxworks7-x86_64-rtp-smp.ads: Remove
3470 Frontend_Exceptions line.
3471 * gcc-interface/decl.cc, gcc-interface/trans.cc
3472 (gnat_to_gnu_entity, gnat_to_gnu_subprog_type, gigi,
3473 gnat_to_gnu): Remove Front_End_SJLJ processing and always assume
3474 Back_End_Exceptions.
3475
34762022-05-12 Bob Duff <duff@adacore.com>
3477
3478 * namet.ads, namet.adb (Write_Name_For_Debug): New more-robust
3479 version of Write_Name.
3480 (Destroy_Global_Name_Buffer): New procedure to help detect bugs
3481 related to use of Global_Name_Buffer. Misc cleanup and comment
3482 improvements. E.g. we don't need to document every detail of
3483 debugging printouts, especially since they can change.
3484 * uname.ads, uname.adb (Write_Unit_Name_For_Debug): New
3485 more-robust version of Write_Unit_Name.
3486 (Get_Unit_Name_String): Pass buffer in, instead of using the
3487 global variable. Misc cleanup. Remove the "special fudge", which
3488 is apparently not needed, and anyway the comment "the %s or %b
3489 has already been eliminated" seems wrong.
3490 (Write_Unit_Name): Call the new version of Get_Unit_Name_String.
3491 * errout.adb (Set_Msg_Insertion_Unit_Name): Call the new version
3492 of Get_Unit_Name_String. We pass the global variable here,
3493 because it's too much trouble to disentangle such uses in
3494 Errout.
3495 * sem_util.ads, sem_util.adb, sem_dist.adb
3496 (Get_Library_Unit_Name): New version of
3497 Get_Library_Unit_Name_String that avoids usage of the global
3498 variable.
3499 * casing.ads, casing.adb, exp_prag.adb, exp_util.adb
3500 (Set_All_Upper_Case): Remove. There is no need for a wrapper
3501 here -- code is clearer without it.
3502 * treepr.adb (Print_Name): Call Write_Name_For_Debug, which
3503 deals with No_Name (etc), rather than duplicating that here.
3504 Note that the call to Get_Name_String was superfluous.
3505 (Tree_Dump): Call Write_Unit_Name_For_Debug instead of
3506 Write_Unit_Name, which crashes if not Is_Valid_Name.
3507 * erroutc.ads: Improve comments.
3508 * erroutc.adb (Set_Msg_Name_Buffer): Call
3509 Destroy_Global_Name_Buffer to detect potential bugs where it
3510 incorrectly looks at the global variable.
3511 * sinput.adb (Write_Location): Call Write_Name_For_Debug instead
3512 of Write_Name, so it won't blow up on invalid data.
3513 * sinput.ads: Improve comments; remove some verbosity.
3514 * libgnat/s-imagef.adb: Fix typo in comment.
3515
35162022-05-12 Yannick Moy <moy@adacore.com>
3517
3518 * libgnat/s-imageu.adb (Set_Image_Unsigned): Add lemma.
3519 * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Add assertion.
3520
35212022-05-12 Yannick Moy <moy@adacore.com>
3522
3523 * libgnat/s-aridou.ads: Remove use-clause, add renames and
3524 subtypes.
3525 * libgnat/s-exponn.ads: Same.
3526 * libgnat/s-expont.ads: Same.
3527 * libgnat/s-widthu.ads: Same.
3528
35292022-05-12 Etienne Servais <servais@adacore.com>
3530
3531 * csets.adb (Fold_Latin_9): Fix y with diaeresis.
3532 (Fold_IBM_PC_850): Fix o with stroke.
3533
35342022-05-12 Piotr Trojanek <trojanek@adacore.com>
3535
3536 * sem_type.adb (Valid_Boolean_Arg): Remove redundant guard.
3537
35382022-05-12 Piotr Trojanek <trojanek@adacore.com>
3539
3540 * sem_type.adb (Valid_Boolean_Arg): Operands of Raise_Type are
3541 valid boolean arguments.
3542
35432022-05-12 Eric Botcazou <ebotcazou@adacore.com>
3544
3545 * sem_ch4.adb (Possible_Type_For_Conditional_Expression): Add
3546 test for subtype conformance in the cases of
3547 access-to-subprogram types.
3548
35492022-05-12 Yannick Moy <moy@adacore.com>
3550
3551 * libgnat/s-imagef.adb: Justify false message from CodePeer.
3552
35532022-05-12 Eric Botcazou <ebotcazou@adacore.com>
3554
3555 * sem_ch4.adb (Analyze_Case_Expression): Rewrite.
3556 (Analyze_If_Expression): Likewise.
3557 (Possible_Type_For_Conditional_Expression): New function.
3558 * sem_type.adb (Specific_Type): Retur the base type in more
3559 cases.
3560
35612022-05-12 Yannick Moy <moy@adacore.com>
3562
3563 * libgnat/s-imagef.adb: Adapt to new signature of Image_I, by
3564 providing ghost imported subprograms. For now, no contract is
3565 used on these subprograms, as System.Image_F is not proved.
3566 * libgnat/s-imagef.ads: Add modular type Uns as formal
3567 parameter, to use in defining Int_Params for instantiating
3568 Image_I.
3569 * libgnat/s-imagei.adb: Add contracts and ghost code.
3570 * libgnat/s-imagei.ads: Replace Int formal parameter by package
3571 Int_Params, which bundles type Int and Uns with ghost
3572 subprograms. Add contracts.
3573 * libgnat/s-imfi128.ads: Adapt to new formal of Image_F.
3574 * libgnat/s-imfi32.ads: Adapt to new formal of Image_F.
3575 * libgnat/s-imfi64.ads: Adapt to new formal of Image_F.
3576 * libgnat/s-imgint.ads: Adapt to new formals of Image_I.
3577 * libgnat/s-imglli.ads: Adapt to new formals of Image_I.
3578 * libgnat/s-imgllli.ads: Adapt to new formals of Image_I.
3579 * libgnat/s-valint.ads: Adapt to new formals of Value_I.
3580 * libgnat/s-vallli.ads: Adapt to new formals of Value_I.
3581 * libgnat/s-valllli.ads: Adapt to new formals of Value_I.
3582 * libgnat/s-valuei.adb (Prove_Scan_Only_Decimal_Ghost): New
3583 ghost lemma.
3584 * libgnat/s-valuei.ads: New formal parameters to prove the new
3585 lemma.
3586 * libgnat/s-valuti.ads (Int_Params): Define a generic package to
3587 be used as a trait-like formal parameter in Image_I and other
3588 generics that need to instantiate Image_I.
3589 * libgnat/s-widthu.ads (Big_10): Qualify the 10 literal.
3590
35912022-05-12 Eric Botcazou <ebotcazou@adacore.com>
3592
3593 * sem_ch4.adb (Find_Arithmetic_Types): Use local variables.
3594 (Find_Boolean_Types): Rewrite modeled on Find_Arithmetic_Types.
3595
35962022-05-12 Alexandre Oliva <oliva@adacore.com>
3597
3598 * doc/gnat_rm/security_hardening_features.rst (Hardened
3599 Booleans): New.
3600 * exp_util.adb (Adjust_Condition): Perform validity checking on
3601 hardbool-annotated types even with -gnatVT.
3602 * gnat_rm.texi: Regenerate.
3603 * gcc-interface/utils.cc (gnat_internal_attribute_table): Ignore
3604 hardbool.
3605
36062022-05-12 Piotr Trojanek <trojanek@adacore.com>
3607
3608 * exp_ch9.adb (Build_Protected_Entry): Set scope of the nested
3609 block to spec and not the body of the procedure created for a
3610 protected entry.
3611
36122022-05-12 Etienne Servais <servais@adacore.com>
3613
3614 * sem_ch3.adb (Find_Type_Of_Object): Remove duplicate "i" in
3615 comment.
3616
36172022-05-12 Marc Poulhiès <poulhies@adacore.com>
3618
3619 * csets.adb (Initialize): Only treat square bracket as valid
3620 identifier character for Ada versions prior to Ada 2022.
3621 * style.ads (Check_Left_Paren): Rename...
3622 (Check_Left_Paren_Square_Bracket): ...to this.
3623 * styleg.adb (Check_Left_Bracket): Rename...
3624 (Check_Left_Paren_Square_Bracket): ...to this.
3625 * styleg.ads (Check_Left_Paren): Rename...
3626 (Check_Left_Paren_Square_Bracket): ...to this.
3627 * scng.adb (Scan): Add check for spacing around left square
3628 bracket and use new name for Check_Left_Paren_Square_Bracket.
3629 * libgnat/a-szmzco.ads (Control_Ranges, Graphic_Ranges)
3630 (Letter_Ranges, Decimal_Digit_Ranges, ISO_646_Ranges)
3631 (Character_Ranges): Fix style (remove extra space).
3632 * libgnat/a-swmwco.ads (Control_Ranges, Graphic_Ranges)
3633 (Letter_Ranges, Decimal_Digit_Ranges, ISO_646_Ranges)
3634 (Character_Ranges): Likewise.
3635 * opt.adb (Set_Config_Switches): Remove [ from Identifier_Char
3636 set.
3637
36382022-05-12 Eric Botcazou <ebotcazou@adacore.com>
3639
3640 * sem_type.adb (Specific_Type): Add swapped cases for interfaces.
3641
36422022-05-12 Piotr Trojanek <trojanek@adacore.com>
3643
3644 * doc/gnat_rm/implementation_defined_pragmas.rst:
3645 (Export_Object, Import_Object, Short_Descriptors): Fix pragma
3646 syntax specification.
3647 * gnat_rm.texi: Regenerate.
3648
36492022-05-12 Piotr Trojanek <trojanek@adacore.com>
3650
3651 * ali.adb (Hash): Reuse GNAT.String_Hash.Hash and don't pollute
3652 the Name_Id table.
3653
36542022-05-12 Piotr Trojanek <trojanek@adacore.com>
3655
3656 * doc/gnat_ugn/the_gnat_compilation_model.rst (Configuration
3657 Pragmas): Add Aggregate_Individually_Assign; otherwise the list
3658 is complete except for some obsoleted pragmas, which most likely
3659 are intentionally omitted.
3660 * gnat_ugn.texi: Regenerate.
3661
d0d513b5
GA
36622022-05-11 Yannick Moy <moy@adacore.com>
3663
3664 * libgnat/s-imaged.ads: Remove Pure.
3665 * libgnat/s-imagef.ads: Remove Pure.
3666 * libgnat/s-imager.ads: Remove Pure.
3667 * libgnat/s-imageu.adb: Add ghost code.
3668 * libgnat/s-imageu.ads: Add contracts.
3669 * libgnat/s-imde128.ads: Remove Pure.
3670 * libgnat/s-imde32.ads: Remove Pure.
3671 * libgnat/s-imde64.ads: Remove Pure.
3672 * libgnat/s-imfi128.ads: Remove Pure.
3673 * libgnat/s-imfi32.ads: Remove Pure.
3674 * libgnat/s-imfi64.ads: Remove Pure.
3675 * libgnat/s-imgflt.ads: Remove Pure.
3676 * libgnat/s-imglfl.ads: Remove Pure.
3677 * libgnat/s-imgllf.ads: Remove Pure.
3678 * libgnat/s-imglllu.ads: Instantiate with ghost subprograms.
3679 * libgnat/s-imgllu.ads: Instantiate with ghost subprograms.
3680 * libgnat/s-imgrea.ads: Remove Pure.
3681 * libgnat/s-imguns.ads: Instantiate with ghost subprograms.
3682 * libgnat/s-imguti.ads: Remove Pure.
3683 * libgnat/s-valueu.adb (Prove_Iter_Scan_Based_Number_Ghost,
3684 Prove_Scan_Only_Decimal_Ghost): New lemmas.
3685 * libgnat/s-valueu.ads (Uns_Option): Do not make type ghost to
3686 be able to use it as formal in instantiations.
3687 (Only_Decimal_Ghost): New ghost query.
3688 (Prove_Iter_Scan_Based_Number_Ghost,
3689 Prove_Scan_Only_Decimal_Ghost): New lemmas.
3690 * libgnat/s-widlllu.ads: Adapt to changes in Width_U.
3691 * libgnat/s-widllu.ads: Adapt to changes in Width_U.
3692 * libgnat/s-widthu.adb: Change generic function in generic
3693 package in order to complete the postcondition. Tighten the
3694 upper bound on the result by 1.
3695 * libgnat/s-widthu.ads: Same.
3696 * libgnat/s-widuns.ads: Adapt to changes in Width_U.
3697 * gcc-interface/Make-lang.in: Add dependencies on a-nubinu,
3698 a-numeri.ads and a-widuns.ads.
3699
37002022-05-11 Piotr Trojanek <trojanek@adacore.com>
3701
3702 * snames.ads-tmpl (Detect_Blocking): Move after
3703 Default_Storage_Pool.
3704
37052022-05-11 Piotr Trojanek <trojanek@adacore.com>
3706
3707 * sem_prag.adb (Analyze_Pragma): Remove custom check for
3708 Compile_Time_Error and Compile_Time_Warning pragmas.
3709 * snames.ads-tmpl (Compile_Time_Error, Compile_Time_Warning):
3710 Move beyond Last_Configuration_Pragma_Name.
3711
37122022-05-11 Marc Poulhiès <poulhies@adacore.com>
3713
3714 * libgnat/a-direct.adb (Start_Search_Internal): Use parentheses
3715 for record aggregate.
3716 * libgnat/a-stbubo.adb (Get_UTF_8): Likewise.
3717 * libgnat/a-stbuun.adb (Get_UTF_8): Likewise.
3718 * libgnat/a-stzbou.ads (Null_Bounded_Wide_Wide_String):
3719 Likewise.
3720 * libgnat/a-swmwco.ads (Lower_Case_Mapping, Basic_Mapping):
3721 Likewise.
3722 * libgnat/a-szmzco.ads (Lower_Case_Mapping, Basic_Mapping):
3723 Likewise.
3724 * libgnat/s-statxd.adb (Fields): Likewise.
3725 * libgnat/s-stausa.adb (Initialize): Likewise.
3726 * sem_aggr.adb (Resolve_Record_Aggregate): Reject aggregates
3727 using brackets.
3728
37292022-05-11 Piotr Trojanek <trojanek@adacore.com>
3730
3731 * doc/gnat_rm/implementation_defined_pragmas.rst,
3732 doc/gnat_rm/implementation_of_specific_ada_features.rst,
3733 doc/gnat_rm/representation_clauses_and_pragmas.rst,
3734 doc/gnat_rm/the_gnat_library.rst,
3735 doc/gnat_rm/the_implementation_of_standard_i_o.rst,
3736 doc/gnat_ugn/building_executable_programs_with_gnat.rst,
3737 doc/gnat_ugn/gnat_and_program_execution.rst,
3738 doc/gnat_ugn/platform_specific_information.rst: Fix unbalanced
3739 parentheses and brackets.
3740 * sem_prag.adb (pragma Obsolescent): Likewise.
3741 * gnat_rm.texi, gnat_ugn.texi: Regenerate.
3742
37432022-05-11 Marc Poulhiès <poulhies@adacore.com>
3744
3745 * libgnat/s-rident.ads (Restriction_Id): Add
3746 No_Local_Tagged_Types, update comment for adding new GNAT
3747 specific restriction.
3748 * restrict.ads (Implementation_Restriction): Add
3749 No_Local_Tagged_Types.
3750 * sem_ch3.adb (Analyze_Full_Type_Declaration): Add check for
3751 tagged type at library level.
3752 * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
3753 Add No_Local_Tagged_Types description.
3754 * gnat_rm.texi: Regenerate.
3755
37562022-05-11 Eric Botcazou <ebotcazou@adacore.com>
3757
3758 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): Use the base type
3759 in the interpretation of the operator.
3760
37612022-05-11 Piotr Trojanek <trojanek@adacore.com>
3762
3763 * sem_case.adb (Free_Value_Sets): Fix style in body header box.
3764 * sem_ch12.adb (Build_Subprogram_Wrappers): Likewise.
3765 * sem_util.adb (Statically_Denotes_Entity): Likewise.
3766
37672022-05-11 Etienne Servais <servais@adacore.com>
3768
3769 * sem_ch3.adb (Constrain_Access): Call Desig_Subtype in each if
3770 branch to avoid calling it twice.
3771
37722022-05-11 Piotr Trojanek <trojanek@adacore.com>
3773
3774 * sem_warn.adb (Find_Var): Detect all operators; replace
3775 "condition" to "expression" in comments, because when this
3776 routine is called recursively it no longer examines the
3777 condition.
3778 (Is_Suspicious_Function_Name): Reduce scope of a local variable
3779 to avoid shadowing with a parameter of a nested
3780 Substring_Present function.
3781
37822022-05-11 Yannick Moy <moy@adacore.com>
3783
3784 * libgnat/s-aridou.adb (Double_Divide, Scaled_Divide): Add
3785 intermediate assertions.
3786
37872022-05-11 Piotr Trojanek <trojanek@adacore.com>
3788
3789 * libgnat/s-rident.ads (Implementation_Restriction): Remove
3790 No_Dynamic_Attachment, No_Implementation_Attributes,
3791 No_Implementation_Pragmas, No_Local_Protected_Objects,
3792 No_Protected_Type_Allocators, No_Relative_Delay,
3793 No_Requeue_Statements, No_Select_Statements,
3794 No_Task_Termination, Pure_Barriers and Simple_Barriers; add
3795 No_Dynamic_Sized_Objects,
3796 No_Implicit_Protected_Object_Allocations,
3797 No_Implicit_Task_Allocations, No_Task_At_Interrupt_Priority and
3798 Static_Dispatch_Tables; sort alphabetically.
3799 * restrict.ads (Restriction_Id): Change Pure_Barriers and
3800 No_Task_Termination from GNAT to Ada restrictions.
3801
38022022-05-11 Piotr Trojanek <trojanek@adacore.com>
3803
3804 * exp_atag.adb, lib-util.ads, libgnat/g-decstr.adb,
3805 libgnat/g-exptty.adb, libgnat/g-socpol.adb,
3806 libgnat/s-strhas.adb: Fix headers.
3807
38082022-05-11 Joao Azevedo <azevedo@adacore.com>
3809
3810 * doc/gnat_ugn/platform_specific_information.rst: Add
3811 glibc-locale-base-32bit as a dependency in SUSE distributions.
3812 * gnat_ugn.texi: Regenerate.
3813
38142022-05-11 Piotr Trojanek <trojanek@adacore.com>
3815
3816 * doc/gnat_ugn/gnat_and_program_execution.rst,
3817 doc/gnat_ugn/gnat_utility_programs.rst,
3818 doc/gnat_ugn/inline_assembler.rst: Fix typos and formatting
3819 glitches.
3820 * gnat_ugn.texi: Regenerate.
3821
38222022-05-11 Piotr Trojanek <trojanek@adacore.com>
3823
3824 * doc/gnat_ugn/elaboration_order_handling_in_gnat.rst: Change
3825 blocks from plain code to Ada.
3826
38272022-05-11 Gary Dismukes <dismukes@adacore.com>
3828
3829 * exp_ch5.adb (Expand_Assign_With_Target_Names): Bypass the temp
3830 object approach in the case where the type of the LHS is
3831 controlled or has controlled subcomponents (Needs_Finalization
3832 is True), and use the procedure approach instead.
3833
38342022-05-11 Bob Duff <duff@adacore.com>
3835
3836 * sem_ch3.adb (Get_Discr_Value): Copy the result. Otherwise, the
3837 "tree" can be malformed (a DAG, not a tree) because
3838 Get_Discr_Value could be returning some subtree already attached
3839 to the tree.
3840
38412022-05-11 Piotr Trojanek <trojanek@adacore.com>
3842
3843 * sem_ch5.adb (Analyze_Statements): Only clear Reachable flag on
3844 proper label entities.
3845
38462022-05-11 Piotr Trojanek <trojanek@adacore.com>
3847
3848 * doc/gnat_rm/implementation_defined_characteristics.rst: Add
3849 tabularcolums directive, as explained in documentation of Sphinx
3850 and tabular LaTeX package.
3851
38522022-05-11 Piotr Trojanek <trojanek@adacore.com>
3853
3854 * doc/gnat_rm/implementation_defined_aspects.rst,
3855 doc/gnat_rm/implementation_defined_pragmas.rst: Remove extra
3856 whitespace.
3857 * gnat_rm.texi: Regenerate.
3858
38592022-05-11 Piotr Trojanek <trojanek@adacore.com>
3860
3861 * doc/gnat_rm/implementation_defined_characteristics.rst: Remove
3862 extra indent in continuation lines; indent both descriptions of
3863 Max_Picture_Length.
3864 * gnat_rm.texi: Regenerate.
3865
38662022-05-11 Piotr Trojanek <trojanek@adacore.com>
3867
3868 * doc/gnat_rm/implementation_defined_pragmas.rst (Pragma
3869 Eliminate): Fix markup.
3870 * gnat_rm.texi: Regenerate.
3871
38722022-05-11 Johannes Kliemann <kliemann@adacore.com>
3873
3874 * libgnat/g-sthcso.adb: Suppress warning about unneeded use type
3875 clause.
3876
38772022-05-11 Piotr Trojanek <trojanek@adacore.com>
3878
3879 * sem_ch5.adb (Analyze_Statements): Only clear Reachable flag on
3880 proper label entities.
3881
38822022-05-11 Piotr Trojanek <trojanek@adacore.com>
3883
3884 * doc/gnat_rm/implementation_defined_pragmas.rst (Pragma
3885 Ada_2022): Copy description from pragma Ada 2012 and adapt.
3886 * doc/gnat_ugn/the_gnat_compilation_model.rst (Configuration
3887 Pragmas): List pragma Ada 2022.
3888 * gnat_rm.texi, gnat_ugn.texi: Regenerate.
3889
38902022-05-11 Steve Baird <baird@adacore.com>
3891
3892 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Replace
3893 the existing check for an address specification for an object of
3894 a class-wide type with a more general check which rejects either
3895 the class-wide case or the case where the FE would (if the
3896 address specification were accepted) build a malformed
3897 tree (specifically, an object renaming declaration with a
3898 specified address). In the case where the check fails, reject
3899 the construct at compile time instead of generating an
3900 unconditional raise of Program_Error.
3901 * doc/gnat_rm/representation_clauses_and_pragmas.rst: Update
3902 documentation to reflect these changes.
3903 * gnat_rm.texi: Regenerate.
3904
39052022-05-11 Piotr Trojanek <trojanek@adacore.com>
3906
3907 * gen_il-gen-gen_entities.adb (Reachable): Move from
3908 Root_Entity_Type to E_Label.
3909
39102022-05-11 Alexandre Oliva <oliva@adacore.com>
3911
3912 * exp_ch3.adb (Expand_N_Object_Declaration): Guard
3913 Set_Is_Known_Valid with Safe_To_Capture_Value.
3914
39152022-05-11 Bob Duff <duff@adacore.com>
3916
3917 * repinfo.adb (List_Object_Info): Do not try to print values
3918 that have not been computed (and so are No_Uint).
3919 (Rep_Not_Constant): Reverse sense and change name to
3920 Compile_Time_Known_Rep. This makes the code at call sites a
3921 little more readable. Simplify code to a single return
3922 statement.
3923
e8778989
GA
39242022-05-10 Martin Liska <mliska@suse.cz>
3925
3926 * gcc-interface/decl.cc (compare_field_bitpos): Use void *
3927 instead PTR.
3928 * gcc-interface/utils2.cc (compare_elmt_bitpos): Likewise.
3929
39302022-05-10 Eric Botcazou <ebotcazou@adacore.com>
3931
3932 * fe.h (Is_Expression_Function): Declare.
3933 * sem_util.ads (Is_Expression_Function): Add warning line.
3934
39352022-05-10 Alexandre Oliva <oliva@adacore.com>
3936
3937 * exp_attr.adb (Expand_N_Attribute_Reference) <Attribute_Valid>:
3938 Drop redundant range check for nonstandard booleans.
3939
39402022-05-10 Alexandre Oliva <oliva@adacore.com>
3941
3942 * exp_util.adb (Adjust_Result_Type): Leave result in
3943 Standard.Boolean if it's going to be converted to another
3944 boolean type.
3945 * exp_ch4.adb (Expand_N_Type_Conversion): When optimizing,
3946 convert to nonstandard booleans with an if_expression with
3947 boolean literals.
3948
39492022-05-10 Alexandre Oliva <oliva@adacore.com>
3950
3951 * exp_ch4.adb (Expand_N_If_Expression): Call Adjust_Condition to
3952 handle non-standard booleans.
3953
39542022-05-10 Justin Squirek <squirek@adacore.com>
3955
3956 * sem_ch8.adb (Use_One_Type): Remove code in charge of setting
3957 Current_Use_Clause when Id is known to be redundant, and modify
3958 the printing of errors associated with redundant use type
3959 clauses so that line number gets included in more cases.
3960
39612022-05-10 Piotr Trojanek <trojanek@adacore.com>
3962
3963 * sem_warn.adb (Check_Unset_Reference): Use variant of
3964 Earlier_In_Extended_Unit that calls Sloc internally.
3965
39662022-05-10 Piotr Trojanek <trojanek@adacore.com>
3967
3968 * par-ch10.adb, scng.adb, sem_res.adb, sinfo-utils.adb,
3969 treepr.adb: Simplify calculations with Source_Ptr and Loc
3970 values.
3971
39722022-05-10 Piotr Trojanek <trojanek@adacore.com>
3973
3974 * sem_res.adb (Resolve_Expression_With_Actions): Fix style in
3975 nested routines.
3976
39772022-05-10 Piotr Trojanek <trojanek@adacore.com>
3978
3979 * atree.adb, exp_ch6.adb, exp_ch9.adb, ghost.adb, sem_ch3.adb,
3980 sem_ch4.adb, sem_res.adb, sem_util.adb: Use
3981 Is_Rewrite_Substitution where possible.
3982
39832022-05-10 Piotr Trojanek <trojanek@adacore.com>
3984
3985 * exp_ch11.adb, exp_ch5.adb, exp_prag.adb, gnat_cuda.adb,
3986 sem_ch12.adb, sem_ch3.adb, sem_ch6.adb, sem_util.adb,
3987 treepr.adb: Replace /= and = operators with No and Present,
3988 respectively.
3989
39902022-05-10 Piotr Trojanek <trojanek@adacore.com>
3991
3992 * sem_warn.adb (Within_Postcondition): Guard against search
3993 going too far.
3994
39952022-05-10 Piotr Trojanek <trojanek@adacore.com>
3996
3997 * sem_warn.adb (Check_Unset_Reference): The early test was only
3998 saving time of calls to Original_Node, Comes_From_Source and
3999 Nkind, which are all quick and cheap.
4000
40012022-05-10 Piotr Trojanek <trojanek@adacore.com>
4002
4003 * sem_ch5.adb (Check_Unreachable_Code): Remove inner declare
4004 block; refill code and comments.
4005
40062022-05-10 Piotr Trojanek <trojanek@adacore.com>
4007
4008 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Replace
4009 First_Entity/Next_Entity with First_Formal/Next_Formal; rename
4010 E1/E2 to F1/F2.
4011
40122022-05-10 Piotr Trojanek <trojanek@adacore.com>
4013
4014 * sem_res.adb (Resolve_Declare_Expression): Check expression for
4015 references to unset objects.
4016 (Resolve_Qualified_Expression): Likewise.
4017 * sem_warn.adb (Check_Unset_Reference): Remove handling of
4018 declare and qualified expressions; clarify comment for type
4019 conversions.
4020
40212022-05-10 Piotr Trojanek <trojanek@adacore.com>
4022
4023 * sem_res.adb (Resolve_Case_Expression): Check alternative
4024 expressions for references to unset objects.
4025 (Resolve_If_Expression): Check condition, then and else
4026 expressions for references to unset objects.
4027
40282022-05-10 Kévin Le Gouguec <legouguec@adacore.com>
4029
4030 * doc/gnat_rm/implementation_defined_attributes.rst,
4031 doc/gnat_ugn/the_gnat_compilation_model.rst: Fix typos.
4032 * gnat_rm.texi, gnat_ugn.texi: Regenerate.
4033
40342022-05-10 Etienne Servais <servais@adacore.com>
4035
4036 * sem_ch13.adb (Is_Predicate_Static): Fix typo in comment.
4037
40382022-05-10 Yannick Moy <moy@adacore.com>
4039
4040 * libgnat/s-valuei.adb: Fix indentation.
4041 * libgnat/s-valuei.ads: Same.
4042
40432022-05-10 Claire Dross <dross@adacore.com>
4044
4045 * snames.ads-tmpl: Add "Structural" as a name.
4046 * sem_prag.adb: (Analyze_Pragma): Accept modifier "Structural"
4047 in pragmas Loop_Variant and Subprogram_Variant. Check that items
4048 associated to Structural occur alone in the pragma associations.
4049 (Analyze_Subprogram_Variant_In_Decl_Part): Idem.
4050 * exp_prag.adb (Expand_Pragma_Loop_Variant): Discard structural
4051 variants.
4052 (Expand_Pragma_Subprogram_Variant): Idem.
4053
40542022-05-10 Claire Dross <dross@adacore.com>
4055
4056 * libgnat/s-valint.ads: Add SPARK_Mode and pragma to ignore
4057 assertions in instance and add additional ghost parameters to
4058 the instance of Value_I.
4059 * libgnat/s-vallli.ads: Idem.
4060 * libgnat/s-valllli.ads: Idem.
4061 * libgnat/s-valuei.ads, libgnat/s-valuei.adb: New generic
4062 parameters for ghost functions from System.Valueu. Add
4063 functional contracts.
4064
40652022-05-10 Eric Botcazou <ebotcazou@adacore.com>
4066
4067 * sem_res.adb (Resolve_Eqyality_Op): Remove obsolete code.
4068 (Resolve_Op_Not): Likewise.
4069 * sem_type.adb (Disambiguate): Add missing test for RM 8.4(10).
4070 * libgnat/s-dwalin.adb (Enable_Cache): Fix ambiguity.
4071 (Symbolic_Address): Likewise.
4072
40732022-05-10 Eric Botcazou <ebotcazou@adacore.com>
4074
4075 * sem_eval.adb (Eval_Integer_Literal): Fix oversight in entry test.
4076
40772022-05-10 Piotr Trojanek <trojanek@adacore.com>
4078
4079 * exp_aggr.adb (Expand_N_Aggregate): Replace UI_To_Int with
4080 UI_To_CC; replace magic literals with high-level routines that
4081 recognise wide and wide wide characters; reorder if-then-elsif
4082 condition, because we don't have a routine to detect wide wide
4083 characters.
4084
40852022-05-10 Etienne Servais <servais@adacore.com>
4086
4087 * scng.adb (Nlit): Error on big UI_Scale.
4088
40892022-05-10 Piotr Trojanek <trojanek@adacore.com>
4090
4091 * exp_util.adb (Build_Task_Array_Image): Declare expanded
4092 objects as constants.
4093 (Build_Task_Image_Prefix): Likewise.
4094 (Build_Task_Record_Image): Likewise.
4095
40962022-05-10 Marc Poulhiès <poulhies@adacore.com>
4097
4098 * checks.adb (Determine_Range): Fix range refining.
4099
41002022-05-10 Steve Baird <baird@adacore.com>
4101
4102 * sem_util.adb (Get_Actual_Subtype): If a new subtype is built,
4103 do not freeze it if Expander_Active is False. The idea here is
4104 to avoid generating an unwanted Freeze_Node for a subtype that
4105 has been conjured up solely for purposes of preanalysis.
4106
41072022-05-10 Piotr Trojanek <trojanek@adacore.com>
4108
4109 * exp_util.adb (Build_Task_Array_Image): Fix style in the
4110 structure of generated code; add Pref'Length as the component of
4111 the Sum initialization expression.
4112
41132022-05-10 Piotr Trojanek <trojanek@adacore.com>
4114
4115 * exp_prag.adb (Expand_Pragma_Import_Or_Interface): Use
4116 Get_Char_Code.
4117 * exp_util.adb (Build_Task_Array_Image): Simplify conversion to
4118 Char_Code.
4119 (Build_Task_Image_Prefix): Likewise.
4120 (Build_Task_Record_Image): Likewise.
4121 * cstand.adb (Create_Standard): Use UI_From_Int instead of
4122 UI_From_CC.
4123 * exp_ch11.adb (Expand_N_Exception_Declaration): Likewise.
4124 * sem_res.adb (Patch_Up_Value): Likewise.
4125 * stringt.adb (Write_String_Table_Entry): Use Get_Char_Code.
4126
bd022ff9
GA
41272022-05-09 Yannick Moy <moy@adacore.com>
4128
4129 * sem_util.adb (Bad_Predicated_Subtype_Use): Add continuation
4130 message.
4131
41322022-05-09 Piotr Trojanek <trojanek@adacore.com>
4133
4134 * uintp.adb (UI_To_CC): Guard against illegal inputs; reuse
4135 UI_To_Int.
4136
41372022-05-09 Piotr Trojanek <trojanek@adacore.com>
4138
4139 * par-prag.adb (Prag): Simplify conversion of character codes.
4140 * sem_case.adb (Choice_Image): Likewise.
4141 (Lit_Of): Likewise.
4142
41432022-05-09 Justin Squirek <squirek@adacore.com>
4144
4145 * exp_attr.adb (Expand_N_Attribute_Reference) <Attribute_Tag>:
4146 Deal specifically wth class-wide equivalent types without a
4147 parent.
4148 * exp_util.adb (Build_Allocate_Deallocate_Proc): Extract
4149 allocator node for calculation of alignment actual and modify
4150 alignment for allocators of class-wide types with associated
4151 expressions.
4152 (Make_CW_Equivalent_Type): Handle interface types differently
4153 when generating the equivalent record.
4154 * sem_aux.adb (First_Tag_Component): Accept class-wide
4155 equivalent types too.
4156
41572022-05-09 Etienne Servais <servais@adacore.com>
4158
4159 * repinfo.adb (List_Name): Rework termination condition.
4160
41612022-05-09 Piotr Trojanek <trojanek@adacore.com>
4162
4163 * bindgen.adb, errout.adb, exp_unst.adb, gnatchop.adb,
4164 libgnat/a-ngcefu.adb, libgnat/a-strunb.adb,
4165 libgnat/a-stwiun.adb, libgnat/a-stzunb.adb,
4166 libgnat/a-wtedit.adb, libgnat/g-debpoo.adb, osint.adb,
4167 sigtramp-vxworks.c, uintp.adb: Remove extra whitespace around +,
4168 -, *, / and **.
4169
41702022-05-09 Piotr Trojanek <trojanek@adacore.com>
4171
4172 * libgnat/s-expmod.adb: Remove CodePeer annotation for pragma
4173 Loop_Variant.
4174
41752022-05-09 Piotr Trojanek <trojanek@adacore.com>
4176
4177 * sem_util.ads (In_Statement_Condition_With_Actions): Renamed
4178 from In_While_Loop_Condition; move to fit the alphabetic order.
4179 * sem_util.adb (In_Statement_Condition_With_Actions): Detect
4180 Elsif condition; stop search on other statements; prevent search
4181 from going too far; move to fit the alphabetic order.
4182 * sem_res.adb (Resolve_Call): Adapt caller.
4183
41842022-05-09 Piotr Trojanek <trojanek@adacore.com>
4185
4186 * inline.adb (Build_Body_To_Inline): Remove redundant guards.
4187 * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Likewise.
4188
41892022-05-09 Eric Botcazou <ebotcazou@adacore.com>
4190
4191 * sem_util.adb (Is_OK_Variable_For_Out_Formal): Remove test on
4192 Comes_From_Source in the condition dealing with the expression
4193 of an N_Unchecked_Type_Conversion node.
4194
41952022-05-09 Piotr Trojanek <trojanek@adacore.com>
4196
4197 * exp_aggr.adb, exp_ch3.adb, exp_util.adb, freeze.adb,
4198 gnatfind.adb, gnatlink.adb, gnatxref.adb, gprep.adb,
4199 libgnat/a-cfhama.adb, libgnat/g-alleve.adb, sem_ch12.adb,
4200 sem_ch13.adb, xr_tabls.adb: Fix style labels.
4201
42022022-05-09 Justin Squirek <squirek@adacore.com>
4203
4204 * err_vars.ads: Add new error message names and nodes.
4205 * erroutc.adb (Set_Msg_Insertion_Name,
4206 Set_Msg_Insertion_Name_Literal): Likewise.
4207 * errout.adb (Set_Msg_Insertion_Node): Likewise.
4208 * errout.ads: Likewise.
4209 * exp_disp.adb (Check_Premature_Freezing): Modify setting of
4210 Error_Msg_Node_2 to occur directly before Error_Msg call where
4211 applicable.
4212 * sem_ch8.adb (Error_Missing_With_Of_Known_Unit): Added to
4213 handle the printing of full package names of known units.
4214 (Undefined, Find_Expanded_Name): Replace error printing with
4215 call to Error_Missing_With_Of_Known_Unit.
4216
42172022-05-09 Yannick Moy <moy@adacore.com>
4218
4219 * exp_ch4.adb (Expand_Allocator_Expression): Set Error_Msg_Warn
4220 correctly.
4221
42222022-05-09 Steve Baird <baird@adacore.com>
4223
4224 * sem_ch13.adb (Replace_Type_Ref): In the case of an identifier
4225 that names a component of the type, simplify the test to decide
4226 whether to build a prefix for it (the prefix denotes the current
4227 instance of the enclosing type): if the identifier doesn't
4228 already have a prefix, then give it one. This isn't quite right
4229 in the corner case of a quantified expression or some other such
4230 expression that declares an object with the same name as a
4231 component, but it is still an improvement.
4232
42332022-05-09 Ed Schonberg <schonberg@adacore.com>
4234
4235 * exp_attr.adb (Compile_Stream_Body_In_Scope): Do not install
4236 package if array type and element type come from the same
4237 package, and the original array type is private.
4238
42392022-05-09 Eric Botcazou <ebotcazou@adacore.com>
4240
4241 * exp_ch4.adb (Handle_Changed_Representation): Simplify and fix
4242 thinko in the loop building the constraints for discriminants.
4243 * exp_ch5.adb (Make_Component_List_Assign): Try also to extract
4244 discriminant values for a derived type.
4245
42462022-05-09 Ed Schonberg <schonberg@adacore.com>
4247
4248 * sem_res.adb (Resolve_Declare_Expression): Traverse the
4249 expression to replace references to local variables that occur
4250 within declarations of the declare_expression; fix typos in
4251 comments.
4252
42532022-05-09 Ed Schonberg <schonberg@adacore.com>
4254
4255 * sem_ch4.adb (Operator_Check): Fix condition.
4256
42572022-05-09 Piotr Trojanek <trojanek@adacore.com>
4258
4259 * doc/gnat_rm/implementation_defined_pragmas.rst
4260 (Abstract_State, Async_Readers, Async_Writers,
4261 Constant_After_Elaboration, Effective_Reads, Effective_Writes,
4262 Extensions_Visible, Ghost, No_Caching, Volatile_Function): Only
4263 static Boolean expressions are allowed.
4264 * gnat_rm.texi: Regenerate.
4265
42662022-05-09 Piotr Trojanek <trojanek@adacore.com>
4267
4268 * exp_prag.adb (Expand_Pragma_Loop_Variant,
4269 Expand_Pragma_Subprogram_Variant): Adapt call via
4270 Process_Variant to Make_Variant_Comparison.
4271 * exp_util.adb (Make_Variant_Comparison): Compare Big_Integer
4272 expressions with a function call and not an operator.
4273 * exp_util.ads (Make_Variant_Comparison): Add type parameter,
4274 which is needed because the Curr_Val and Old_Val expressions
4275 might not be yet decorated.
4276 * rtsfind.ads: (RTU_Id): Add support for Big_Integers and
4277 Big_Integers_Ghost.
4278 (RE_Id): Add support for Big_Integer and its ghost variant.
4279 (RE_Unit_Table): Add mapping from Big_Integer to Big_Integers;
4280 same for the ghost variants.
4281 * rtsfind.adb (Get_Unit_Name): Add support for Big_Numbers.
4282 * sem_prag.adb (Analyze_Pragma): Allow Big_Integer in pragma
4283 Loop_Variant.
4284 (Analyze_Variant): Allow Big_Integer in pragma
4285 Subprogram_Variant.
4286
42872022-05-09 Piotr Trojanek <trojanek@adacore.com>
4288
4289 * sem_ch3.ads, sem_ch3.adb (Preanalyze_Assert_Expression): Add a
4290 variant that doesn't force preanalysis to yield a specific type.
4291
42922022-05-09 Eric Botcazou <ebotcazou@adacore.com>
4293
4294 * einfo.ads (Access Kinds): Reorder and beef up.
4295 * sem.adb (Analyze): Call Analyze_Comparison_Equality_Op for all
4296 comparison and equality operators.
4297 * sem_ch4.ads (Analyze_Comparison_Op): Delete.
4298 (Analyze_Equality_Op): Likewise.
4299 (Analyze_Comparison_Equality_Op): Declare.
4300 (Ambiguous_Operands): Likewise.
4301 * sem_ch4.adb (Ambiguous_Operands): Remove declaration.
4302 (Defined_In_Scope): Delete.
4303 (Find_Comparison_Types): Merge into...
4304 (Find_Equality_Types): Merge into...
4305 (Find_Comparison_Equality_Types): ...this. Make fully symmetrical.
4306 (Analyze_Arithmetic_Op): Minor consistency tweaks.
4307 (Analyze_Comparison_Op): Merge into...
4308 (Analyze_Equality_Op): Merge into...
4309 (Analyze_Comparison_Equality_Op): ...this. Make fully symmetrical.
4310 (Analyze_Logical_Op): Minor consistency tweaks.
4311 (Analyze_Membership_Op): Make fully symmetrical.
4312 (Analyze_One_Call): Minor comment tweak.
4313 (Analyze_Operator_Call): Call Find_Comparison_Equality_Types.
4314 (Analyze_User_Defined_Binary_Op): Make fully symmetrical.
4315 (Check_Arithmetic_Pair.Specific_Type): Delete.
4316 (Diagnose_Call): Add special handling for "+" operator.
4317 (Operator_Check): Call Analyze_Comparison_Equality_Op.
4318 * sem_ch8.adb (Has_Implicit_Operator): Add Is_Type guard for boolean
4319 operators, use Valid_Comparison_Arg and Valid_Equality_Arg for resp.
4320 comparison and equality operators.
4321 * sem_res.adb (Check_For_Visible_Operator): Call Is_Visible_Operator
4322 (Make_Call_Into_Operator): Use Preserve_Comes_From_Source.
4323 (Resolve_Actuals): Deal specifically with Any_Type actuals for user-
4324 defined comparison and equality operators.
4325 (Resolve_Call): Minor tweaks.
4326 (Resolve_Comparison_Op): Tidy up and give error for ambiguity.
4327 (Resolve_Equality_Op): Likewise, as well as other errors.
4328 (Rewrite_Renamed_Operator): Simplify.
4329 * sem_type.ads (Is_Invisible_Operator): Delete.
4330 (Is_Visible_Operator): Declare.
4331 (Has_Compatible_Type): Remove For_Comparison parameter.
4332 (Specific_Type): Declare.
4333 (Valid_Equality_Arg): Likewise.
4334 * sem_type.adb (Specific_Type): Remove declaration.
4335 (Add_One_Interp): Call Is_Visible_Operator for the visibility test.
4336 (Remove_Conversions): Rename into...
4337 (Remove_Conversions_And_Abstract_Operations): ...this. Do not apply
4338 numeric-type treatment to Any_Type. Expand the special handling for
4339 abstract interpretations to second operand. Remove obsolete code.
4340 (Disambiguate): Adjust to above renaming. Tweak to hidden case and
4341 call Remove_Conversions_And_Abstract_Operations for operators too.
4342 (Entity_Matches_Spec): Minor tweak.
4343 (Find_Unique_Type): Simplify and deal with user-defined literals.
4344 (Has_Compatible_Type): Remove For_Comparison parameter and adjust.
4345 Call the Is_User_Defined_Literal predicate and remove call to
4346 the Is_Invisible_Operator predicate.
4347 (Is_Invisible_Operator): Delete.
4348 (Is_Visible_Operator): New function.
4349 (Operator_Matches_Spec): Use Valid_Equality_Arg predicate.
4350 (Specific_Type): Tidy up, make fully symmetrical and deal with
4351 private views the same way as Covers.
4352 (Valid_Comparison_Arg): Return true for Any_Composite/Any_String.
4353 (Valid_Equality_Arg): New function.
4354 * sem_util.ads (Is_User_Defined_Literal): Declare.
4355 * sem_util.adb (Is_User_Defined_Literal): New function.
4356
43572022-05-09 Bob Duff <duff@adacore.com>
4358
4359 * lib-xref.adb, sem_util.adb: Change wording of warning messages
4360 to use "aspect".
4361 * sem_prag.adb: Use Fix_Error to change wording of warnings.
4362 * doc/gnat_rm/implementation_defined_pragmas.rst: Minor: fix
4363 cut&paste error.
4364 * gnat_rm.texi: Regenerate.
4365
43662022-05-09 Doug Rupp <rupp@adacore.com>
4367
4368 * init.c [vxworks] (CLEAR_EXCEPTION_COUNT): New macro.
4369 (__gnat_clear_exception_count): Remove.
4370 (__gnat_map_signal): Call CLEAR_EXCEPTION_COUNT().
4371
43722022-05-09 Fedor Rybin <frybin@adacore.com>
4373
4374 * doc/gnat_ugn/gnat_utility_programs.rst: Remove gnattest
4375 section.
4376
43772022-05-09 Piotr Trojanek <trojanek@adacore.com>
4378
4379 * sem_attr.adb (Analyze_Attribute): Remove calls to Analyze for
4380 attributes Identity, Priority, Ref, Restriction_Set, To_Address
4381 and for tasking-related attributes Callable, Terminated and
4382 Storage_Size.
4383
43842022-05-09 Piotr Trojanek <trojanek@adacore.com>
4385
4386 * sem_attr.adb (Analyze_Attribute): Don't call Set_Etype for
4387 Bit_Order attribute.
4388
43892022-05-09 Piotr Trojanek <trojanek@adacore.com>
4390
4391 * exp_ch5.adb (Update_Choice_Index): Simplify condition.
4392 * sem_ch8.adb (Attribute_Renaming): Likewise.
4393
43942022-05-09 Dmitriy Anisimkov <anisimko@adacore.com>
4395
4396 * adaint.c (__gnat_kill): Remove close parameter.
4397 (__gnat_killprocesstree): Do not provide close parameter on call
4398 to __gnat_kill.
4399 * libgnat/g-expect.adb (Kill): Remove Close parameter.
4400 (Close): Do not provide Close parameter on call to Kill.
4401 (Send_Signal): Do not provide Close parameter on call to Kill.
4402 * libgnat/s-os_lib.adb (Kill): Do not provide close parameter on
4403 call to __gnat_kill.
4404
44052022-05-09 Dmitriy Anisimkov <anisimko@adacore.com>
4406
4407 * libgnat/g-expect.adb (Close): Call Kill before Close_Input.
4408
66d1e440
GA
44092022-04-29 Martin Liska <mliska@suse.cz>
4410
4411 * gnatvsn.ads: Bump Library_Version to 13.
4412
ba949a6a
GA
44132022-04-27 Sebastian Huber <sebastian.huber@embedded-brains.de>
4414
4415 * tracebak.c: Add support for ARM RTEMS. Add support for RTEMS to PPC
4416 ELF. Add support for RTEMS to SPARC. Merge aarch64 support of Linux
4417 and RTEMS.
4418
44192022-04-27 Pierre-Marie de Rodat <derodat@adacore.com>
4420
4421 PR ada/104027
4422 * gnat1drv.adb: Remove the goto End_Of_Program.
4423
6fc4a993
GA
44242022-03-24 Pascal Obry <obry@adacore.com>
4425
4426 PR ada/104767
4427 * libgnat/g-sercom__mingw.adb (Close): Reset port handle to -1.
4428 * libgnat/g-sercom__linux.adb (Close): Likewise.
4429
5e28be89
GA
44302022-03-10 Richard Biener <rguenther@suse.de>
4431
4432 PR ada/104861
4433 * gcc-interface/Makefile.in (target_noncanonical): Substitute.
4434 (OSCONS_CPP): Pass target_noncanonical as TARGET.
4435
0d31c8ec
GA
44362022-02-13 Maciej W. Rozycki <macro@orcam.me.uk>
4437
4438 PR ada/98724
4439 PR ada/97504
4440 * Makefile.rtl (LIBGNAT_TARGET_PAIRS) <alpha*-*-linux*>: Use
4441 wraplf version of Aux_Long_Long_Float.
4442
1bb52662
GA
44432022-01-31 Pierre-Marie de Rodat <derodat@adacore.com>
4444
4445 * doc/share/conf.py: Remove spurious call to ".decode()".
4446
44472022-01-31 Arnaud Charlet <charlet@adacore.com>
4448
4449 PR ada/104027
4450 * gnat1drv.adb (Gnat1drv): Only call Exit_Program when not
4451 generating code, otherwise instead go to End_Of_Program.
4452
f6f2d6cf
GA
44532022-01-28 Eric Botcazou <ebotcazou@adacore.com>
4454
4455 PR ada/104258
4456 * exp_ch4.adb (Narrow_Large_Operation): Also copy the entity, if
4457 any, when rewriting the operator node.
4458
fe1ad141
GA
44592022-01-19 H.J. Lu <hjl.tools@gmail.com>
4460
4461 PR ada/103538
4462 * gcc-interface/Makefile.in (target_cpu): Set to x32 for
4463 x86_64-linux-gnux32.
4464
44652022-01-19 H.J. Lu <hjl.tools@gmail.com>
4466
4467 PR ada/103538
4468 * Makefile.rtl (LIBGNAT_TARGET_PAIRS): Add
4469 $(TRASYM_DWARF_UNIX_PAIRS),
4470 s-tsmona.adb<libgnat/s-tsmona__linux.adb,
4471 $(GNATRTL_128BIT_PAIRS).
4472 (EXTRA_GNATRTL_NONTASKING_OBJS): Add $(TRASYM_DWARF_UNIX_OBJS)
4473 and $(GNATRTL_128BIT_OBJS).
4474
7a761ae6
GA
44752022-01-18 Martin Liska <mliska@suse.cz>
4476
4477 * adaint.c: Revert filename changes in comments.
4478 * ctrl_c.c (dummy_handler): Likewise.
4479 * gsocket.h: Likewise.
4480 * init.c (__gnat_error_handler): Likewise.
4481 * libgnarl/s-intman.ads: Likewise.
4482 * libgnarl/s-osinte__android.ads: Likewise.
4483 * libgnarl/s-osinte__darwin.ads: Likewise.
4484 * libgnarl/s-osinte__hpux.ads: Likewise.
4485 * libgnarl/s-osinte__linux.ads: Likewise.
4486 * libgnarl/s-osinte__qnx.ads: Likewise.
4487 * libgnarl/s-taskin.ads: Likewise.
4488 * rtfinal.c: Likewise.
4489
44902022-01-18 Martin Liska <mliska@suse.cz>
4491
4492 * Make-generated.in: Revert renaming changes.
4493 * Makefile.rtl: Likewise.
4494 * adadecode.cc: Moved to...
4495 * adadecode.c: ...here.
4496 * affinity.cc: Moved to...
4497 * affinity.c: ...here.
4498 * argv-lynxos178-raven-cert.cc: Moved to...
4499 * argv-lynxos178-raven-cert.c: ...here.
4500 * argv.cc: Moved to...
4501 * argv.c: ...here.
4502 * aux-io.cc: Moved to...
4503 * aux-io.c: ...here.
4504 * cio.cc: Moved to...
4505 * cio.c: ...here.
4506 * cstreams.cc: Moved to...
4507 * cstreams.c: ...here.
4508 * env.cc: Moved to...
4509 * env.c: ...here.
4510 * exit.cc: Moved to...
4511 * exit.c: ...here.
4512 * expect.cc: Moved to...
4513 * expect.c: ...here.
4514 * final.cc: Moved to...
4515 * final.c: ...here.
4516 * gcc-interface/Makefile.in:
4517 * init.cc: Moved to...
4518 * init.c: ...here.
4519 * initialize.cc: Moved to...
4520 * initialize.c: ...here.
4521 * libgnarl/thread.cc: Moved to...
4522 * libgnarl/thread.c: ...here.
4523 * link.cc: Moved to...
4524 * link.c: ...here.
4525 * locales.cc: Moved to...
4526 * locales.c: ...here.
4527 * mkdir.cc: Moved to...
4528 * mkdir.c: ...here.
4529 * raise.cc: Moved to...
4530 * raise.c: ...here.
4531 * rtfinal.cc: Moved to...
4532 * rtfinal.c: ...here.
4533 * rtinit.cc: Moved to...
4534 * rtinit.c: ...here.
4535 * s-oscons-tmplt.c (CND): Revert renaming changes.
4536 * seh_init.cc: Moved to...
4537 * seh_init.c: ...here.
4538 * sigtramp-armdroid.cc: Moved to...
4539 * sigtramp-armdroid.c: ...here.
4540 * sigtramp-ios.cc: Moved to...
4541 * sigtramp-ios.c: ...here.
4542 * sigtramp-qnx.cc: Moved to...
4543 * sigtramp-qnx.c: ...here.
4544 * sigtramp-vxworks.cc: Moved to...
4545 * sigtramp-vxworks.c: ...here.
4546 * socket.cc: Moved to...
4547 * socket.c: ...here.
4548 * tracebak.cc: Moved to...
4549 * tracebak.c: ...here.
4550 * version.cc: Moved to...
4551 * version.c: ...here.
4552 * vx_stack_info.cc: Moved to...
4553 * vx_stack_info.c: ...here.
4554
fc829782
GA
45552022-01-17 Martin Liska <mliska@suse.cz>
4556
4557 * Makefile.rtl: Rename .c names to .cc.
4558 * gcc-interface/Make-lang.in: Likewise.
4559 * gcc-interface/Makefile.in: Likewise.
4560
45612022-01-17 Martin Liska <mliska@suse.cz>
4562
4563 * Make-generated.in: Rename .c names to .cc.
4564 * adaint.c: Likewise.
4565 * ctrl_c.c (dummy_handler): Likewise.
4566 * gcc-interface/Makefile.in: Likewise.
4567 * gcc-interface/config-lang.in: Likewise.
4568 * gcc-interface/decl.cc (concat_name): Likewise.
4569 (init_gnat_decl): Likewise.
4570 * gcc-interface/gigi.h (concat_name): Likewise.
4571 (init_gnat_utils): Likewise.
4572 (build_call_raise_range): Likewise.
4573 (gnat_mark_addressable): Likewise.
4574 (gnat_protect_expr): Likewise.
4575 (gnat_rewrite_reference): Likewise.
4576 * gcc-interface/lang-specs.h (ADA_DUMPS_OPTIONS): Likewise.
4577 * gcc-interface/utils.cc (GTY): Likewise.
4578 (add_deferred_type_context): Likewise.
4579 (init_gnat_utils): Likewise.
4580 * gcc-interface/utils2.cc (gnat_stable_expr_p): Likewise.
4581 (gnat_protect_expr): Likewise.
4582 (gnat_stabilize_reference_1): Likewise.
4583 (gnat_rewrite_reference): Likewise.
4584 * gsocket.h: Likewise.
4585 * init.cc (__gnat_error_handler): Likewise.
4586 * libgnarl/s-intman.ads: Likewise.
4587 * libgnarl/s-osinte__android.ads: Likewise.
4588 * libgnarl/s-osinte__darwin.ads: Likewise.
4589 * libgnarl/s-osinte__hpux.ads: Likewise.
4590 * libgnarl/s-osinte__linux.ads: Likewise.
4591 * libgnarl/s-osinte__qnx.ads: Likewise.
4592 * libgnarl/s-taskin.ads: Likewise.
4593 * rtfinal.cc: Likewise.
4594 * s-oscons-tmplt.c (CND): Likewise.
4595 * set_targ.ads: Likewise.
4596
45972022-01-17 Martin Liska <mliska@suse.cz>
4598
4599 * adadecode.c: Moved to...
4600 * adadecode.cc: ...here.
4601 * affinity.c: Moved to...
4602 * affinity.cc: ...here.
4603 * argv-lynxos178-raven-cert.c: Moved to...
4604 * argv-lynxos178-raven-cert.cc: ...here.
4605 * argv.c: Moved to...
4606 * argv.cc: ...here.
4607 * aux-io.c: Moved to...
4608 * aux-io.cc: ...here.
4609 * cio.c: Moved to...
4610 * cio.cc: ...here.
4611 * cstreams.c: Moved to...
4612 * cstreams.cc: ...here.
4613 * env.c: Moved to...
4614 * env.cc: ...here.
4615 * exit.c: Moved to...
4616 * exit.cc: ...here.
4617 * expect.c: Moved to...
4618 * expect.cc: ...here.
4619 * final.c: Moved to...
4620 * final.cc: ...here.
4621 * gcc-interface/cuintp.c: Moved to...
4622 * gcc-interface/cuintp.cc: ...here.
4623 * gcc-interface/decl.c: Moved to...
4624 * gcc-interface/decl.cc: ...here.
4625 * gcc-interface/misc.c: Moved to...
4626 * gcc-interface/misc.cc: ...here.
4627 * gcc-interface/targtyps.c: Moved to...
4628 * gcc-interface/targtyps.cc: ...here.
4629 * gcc-interface/trans.c: Moved to...
4630 * gcc-interface/trans.cc: ...here.
4631 * gcc-interface/utils.c: Moved to...
4632 * gcc-interface/utils.cc: ...here.
4633 * gcc-interface/utils2.c: Moved to...
4634 * gcc-interface/utils2.cc: ...here.
4635 * init.c: Moved to...
4636 * init.cc: ...here.
4637 * initialize.c: Moved to...
4638 * initialize.cc: ...here.
4639 * libgnarl/thread.c: Moved to...
4640 * libgnarl/thread.cc: ...here.
4641 * link.c: Moved to...
4642 * link.cc: ...here.
4643 * locales.c: Moved to...
4644 * locales.cc: ...here.
4645 * mkdir.c: Moved to...
4646 * mkdir.cc: ...here.
4647 * raise.c: Moved to...
4648 * raise.cc: ...here.
4649 * rtfinal.c: Moved to...
4650 * rtfinal.cc: ...here.
4651 * rtinit.c: Moved to...
4652 * rtinit.cc: ...here.
4653 * seh_init.c: Moved to...
4654 * seh_init.cc: ...here.
4655 * sigtramp-armdroid.c: Moved to...
4656 * sigtramp-armdroid.cc: ...here.
4657 * sigtramp-ios.c: Moved to...
4658 * sigtramp-ios.cc: ...here.
4659 * sigtramp-qnx.c: Moved to...
4660 * sigtramp-qnx.cc: ...here.
4661 * sigtramp-vxworks.c: Moved to...
4662 * sigtramp-vxworks.cc: ...here.
4663 * socket.c: Moved to...
4664 * socket.cc: ...here.
4665 * tracebak.c: Moved to...
4666 * tracebak.cc: ...here.
4667 * version.c: Moved to...
4668 * version.cc: ...here.
4669 * vx_stack_info.c: Moved to...
4670 * vx_stack_info.cc: ...here.
4671
617db51d
GA
46722022-01-14 Andrew Pinski <apinski@marvell.com>
4673
4674 PR ada/104027
4675 * gnat1drv.adb (Gnat1drv): After Back_End.Gen_Or_Update_Object_File
4676 goto End_Of_Program.
4677
01a254e3
GA
46782022-01-11 Eric Botcazou <ebotcazou@adacore.com>
4679
4680 * gcc-interface/utils2.c (build_binary_op) <EQ_EXPR>: Relax a
4681 little the assertion on designated types of pointer types.
4682
46832022-01-11 Justin Squirek <squirek@adacore.com>
4684
4685 * sem_ch8.adb (Nvis_Messages): Add generic instance name to
4686 error message.
4687
46882022-01-11 Etienne Servais <servais@adacore.com>
4689
4690 * par-ch6.adb (Scan_Body_Or_Expression_Function): Accept left
4691 bracket as token to open an expression function.
4692
46932022-01-11 Justin Squirek <squirek@adacore.com>
4694
4695 * sem_warn.adb (Check_References): Add call to Has_Task instead
4696 of checking component type.
4697
46982022-01-11 Piotr Trojanek <trojanek@adacore.com>
4699
4700 * exp_util.ads (Insert_Declaration): Remove spec.
4701 * exp_util.adb (Insert_Declaration): Remove body.
4702
47032022-01-11 Piotr Trojanek <trojanek@adacore.com>
4704
4705 * exp_ch4.adb (Expand_N_Expression_With_Actions): Avoid
4706 redundant check.
4707 * exp_ch5.adb (Expand_N_If_Statement): Likewise.
4708 * exp_ch7.adb (Process_Declarations): Likewise.
4709 * sem_elab.adb (Freeze_Node_Location): Likewise.
4710 * exp_util.adb (Insert_Actions): Likewise.
4711 (Is_OK_PF_Pragma): Likewise.
4712 (Requires_Cleanup_Actions): Remove early exit; ordinary
4713 processing path will similarly do nothing.
4714
47152022-01-11 Piotr Trojanek <trojanek@adacore.com>
4716
4717 * snames.ads-tmpl: Restore Name_Rpc.
4718
47192022-01-11 Piotr Trojanek <trojanek@adacore.com>
4720
4721 * sem_ch4.adb (Analyze_Allocator): Move DECLARE block inside IF
4722 statement; refill code and comments.
4723
47242022-01-11 Piotr Trojanek <trojanek@adacore.com>
4725
4726 * sem_ch4.adb (Analyze_Allocator): Fix comment.
4727 * sem_eval.ads (Compile-Time Known Values): Likewise.
4728
47292022-01-11 Piotr Trojanek <trojanek@adacore.com>
4730
4731 * snames.ads-tmpl: Remove unreferenced names.
4732
47332022-01-11 Yannick Moy <moy@adacore.com>
4734
4735 * libgnat/s-aridou.adb (Double_Divide): Adjust proof of lemma
4736 Prove_Signs, call lemma for commutation of Big and
4737 multiplication.
4738 (Multiply_With_Ovflo_Check): Adjust postcondition of
4739 Prove_Pos_Int.
4740 (Scaled_Divide): Explicit commutation in the proof of lemma
4741 Prove_Multiplication, add new lemma Prove_Shift_Progress for
4742 congruence property that is not proved in a larger context, add
4743 assertions at the end of the loop to state loop invariant
4744 properties.
4745
47462022-01-11 Piotr Trojanek <trojanek@adacore.com>
4747
4748 * sem_eval.ads (Compile_Time_Known_Value_Or_Aggr): Remove spec.
4749 * sem_eval.adb (Compile_Time_Known_Value_Or_Aggr): Remove body.
4750
47512022-01-11 Yannick Moy <moy@adacore.com>
4752
4753 * libgnat/a-strfix.adb (Insert, Overwrite): Add assertions.
4754
47552022-01-11 Arnaud Charlet <charlet@adacore.com>
4756
4757 PR ada/79724
4758 * osint.adb (Program_Name): Fix handling of suffixes.
4759
47602022-01-11 Piotr Trojanek <trojanek@adacore.com>
4761
4762 * exp_ch4.adb (Size_In_Storage_Elements): Remove unnecessary
4763 DECLARE block; refill code and comments.
4764
47652022-01-11 Eric Botcazou <ebotcazou@adacore.com>
4766
4767 * sem_ch3.adb (Analyze_Subtype_Declaration): In the case of an array
4768 copy Packed_Array_Impl_Type manually here.
4769 (Copy_Array_Subtype_Attributes): Do not copy it here.
4770
47712022-01-11 Piotr Trojanek <trojanek@adacore.com>
4772
4773 * exp_ch7.adb (Set_Block_Elab_Proc, Unnest_Block, Unnest_Loop,
4774 Unnest_Statement_List): Simplify with Make_Temporary.
4775 * exp_put_image.adb (Build_Image_Call): Likewise.
4776 * inline.adb (Generate_Subprogram_Body): Likewise.
4777 * sem_ch13.adb (Build_Predicate_Functions): Likewise.
4778 * sem_util.adb (New_Copy_Separate_List): Likewise.
4779
47802022-01-11 Etienne Servais <servais@adacore.com>
4781
4782 * sem_ch3.adb (Check_Dynamic_Object): Swap check order.
4783
47842022-01-11 Yannick Moy <moy@adacore.com>
4785
4786 * libgnat/s-casuti.adb: Add ghost code.
4787 * libgnat/s-casuti.ads: Add contracts.
4788
47892022-01-11 Claire Dross <dross@adacore.com>
4790
4791 * libgnat/a-tiinau.ads: Use a procedure for the Scan parameter
4792 instead of a function with side-effects.
4793 * libgnat/a-tiinau.adb: Idem.
4794 * libgnat/a-wtinau.ads: Idem.
4795 * libgnat/a-wtinau.adb: Idem.
4796 * libgnat/a-ztinau.ads: Idem.
4797 * libgnat/a-ztinau.adb: Idem.
4798 * libgnat/s-valint.ads: Change the function with side-effects
4799 Scan_Integer into a procedure
4800 * libgnat/s-vallli.ads: Idem.
4801 * libgnat/s-valllli.ads: Idem.
4802 * libgnat/s-vallllu.ads: Add SPARK_Mode and pragma to ignore
4803 assertions in instance.
4804 * libgnat/s-valllu.ads: Idem.
4805 * libgnat/s-valuns.ads: Idem.
4806 * libgnat/s-valuei.ads: Use a procedure for the
4807 Scan_Raw_Unsigned parameter instead of a function with
4808 side-effects and change the function with side-effects
4809 Scan_Integer into a procedure.
4810 * libgnat/s-valuei.adb: Idem.
4811 * libgnat/s-valuti.ads: Introduce a ghost function that scans an
4812 exponent and complete the postcondition of Scan_Exponent to also
4813 describe the value of Ptr after the call. Fix the postcondition
4814 of Scan_Underscore. Simplify the definition of
4815 Scan_Natural_Ghost.
4816 * libgnat/s-valuti.adb: Idem.
4817 * libgnat/s-valboo.ads, libgnat/s-valboo.adb: Update calls to
4818 First_Non_Space_Ghost.
4819 * libgnat/s-valueu.ads: Add functional contracts.
4820 * libgnat/s-valueu.adb: Idem.
4821
48222022-01-11 Yannick Moy <moy@adacore.com>
4823
4824 * libgnat/s-expmod.adb (Exp_Modular): Add assertions.
4825
48262022-01-11 Piotr Trojanek <trojanek@adacore.com>
4827
4828 * errout.adb (Error_Msg_CRT): Build message with string
4829 concatenation; it is slightly repetitive but much easier to
4830 read.
4831
48322022-01-11 Piotr Trojanek <trojanek@adacore.com>
4833
4834 * exp_ch11.adb (Expand_N_Exception_Declaration): Remove explicit
4835 initialization of the exceptF object.
4836
48372022-01-11 Piotr Trojanek <trojanek@adacore.com>
4838
4839 * par-ch3.adb (P_Array_Type_Definition): Use
4840 Error_Msg_GNAT_Extension.
4841
48422022-01-11 Gary Dismukes <dismukes@adacore.com>
4843
4844 * sem_disp.adb (Check_Controlling_Type): Add test for the case
4845 where Subp is a subprogram associated with a protected
4846 subprogram and return Empty, unless Tagged_Type is the
4847 corresponding record type of the protected type.
4848
48492022-01-11 Yannick Moy <moy@adacore.com>
4850
4851 * libgnat/s-veboop.adb: Add ghost code for proof.
4852 * libgnat/s-veboop.ads: Add specification.
4853
48542022-01-11 Piotr Trojanek <trojanek@adacore.com>
4855
4856 * exp_aggr.adb, exp_attr.adb, exp_ch3.adb, exp_ch7.adb,
4857 exp_dist.adb, exp_util.adb, freeze.adb, frontend.adb,
4858 inline.adb, itypes.adb, lib-load.adb, lib-xref.adb,
4859 libgnat/a-cfhase.adb, libgnat/a-cforse.adb,
4860 libgnat/a-chtgbo.adb, libgnat/a-crdlli.adb,
4861 libgnat/a-except.adb, libgnat/a-strfix.adb,
4862 libgnat/a-textio.adb, libgnat/a-tienau.adb,
4863 libgnat/a-tigeau.adb, libgnat/a-witeio.adb,
4864 libgnat/a-wtenau.adb, libgnat/a-wtgeau.adb,
4865 libgnat/a-ztenau.adb, libgnat/a-ztexio.adb,
4866 libgnat/a-ztgeau.adb, libgnat/g-comlin.adb,
4867 libgnat/g-debpoo.adb, libgnat/g-expect.adb,
4868 libgnat/s-fileio.adb, libgnat/s-memory.adb, libgnat/s-mmap.adb,
4869 libgnat/s-objrea.adb, libgnat/s-pehage.adb,
4870 libgnat/s-regpat.adb, libgnat/s-shasto.adb,
4871 libgnat/s-valued.adb, libgnat/s-valuef.adb, par-ch11.adb,
4872 par-ch4.adb, par-ch6.adb, par-ch9.adb, par_sco.adb,
4873 repinfo-input.adb, sem_cat.adb, sem_ch10.adb, sem_ch12.adb,
4874 sem_ch13.adb, sem_ch4.adb, sem_eval.adb, sem_prag.adb,
4875 sem_res.adb, sem_util.adb, sinput.adb, switch-c.adb: Fix style.
4876
48772022-01-11 Arnaud Charlet <charlet@adacore.com>
4878
4879 * exp_ch9.adb, gen_il-types.ads, make.adb, par-ch12.adb,
4880 sem_ch13.adb: Use membership tests.
4881
48822022-01-11 Piotr Trojanek <trojanek@adacore.com>
4883
4884 * erroutc.ads, erroutc.adb (Is_Runtime_Raise): Global flag to
4885 connect status of initial messages and their continuation; we
4886 already have several flags like this.
4887 (Error_Msg_Object): Add field Warn_Runtime_Raise to connect
4888 error reporting (when problematic code is found) and removal
4889 (when problematic code is determined to be dead).
4890 * errout.adb (Error_Msg_Internal): Handle new field when
4891 recording a continuation message; propagate status from
4892 continuation to the preceding messages.
4893 (To_Be_Removed): For dead code remove both simple warnings and
4894 warnings about constraint errors that have been escalated to
4895 hard errors.
4896 (Set_Msg_Text): Recognize warnings about constraint errors that
4897 are escalated to hard errors.
4898 * errutil.adb (Error_Msg): Handle added field when recording a
4899 new message.
4900
49012022-01-11 Piotr Trojanek <trojanek@adacore.com>
4902
4903 * errout.adb (Error_Msg_Internal): Propagate warnings-as-error
4904 flag from continuation message to its preceding messages.
4905
49062022-01-11 Arnaud Charlet <charlet@adacore.com>
4907
4908 * gnatvsn.ads (Current_Year): Update copyright notice, bump to
4909 2022.
4910 * ada_get_targ.adb: Update copyright notice.
4911 * adabkend.adb: Likewise.
4912 * adabkend.ads: Likewise.
4913 * adadecode.c: Likewise.
4914 * adadecode.h: Likewise.
4915 * adaint.c: Likewise.
4916 * adaint.h: Likewise.
4917 * affinity.c: Likewise.
4918 * ali-util.adb: Likewise.
4919 * ali-util.ads: Likewise.
4920 * ali.adb: Likewise.
4921 * ali.ads: Likewise.
4922 * alloc.ads: Likewise.
4923 * argv-lynxos178-raven-cert.c: Likewise.
4924 * argv.c: Likewise.
4925 * aspects.adb: Likewise.
4926 * aspects.ads: Likewise.
4927 * atree.adb: Likewise.
4928 * atree.ads: Likewise.
4929 * atree.h: Likewise.
4930 * aux-io.c: Likewise.
4931 * back_end.adb: Likewise.
4932 * back_end.ads: Likewise.
4933 * backend_utils.adb: Likewise.
4934 * backend_utils.ads: Likewise.
4935 * bcheck.adb: Likewise.
4936 * bcheck.ads: Likewise.
4937 * binde.adb: Likewise.
4938 * binde.ads: Likewise.
4939 * binderr.adb: Likewise.
4940 * binderr.ads: Likewise.
4941 * bindgen.adb: Likewise.
4942 * bindgen.ads: Likewise.
4943 * bindo-augmentors.adb: Likewise.
4944 * bindo-augmentors.ads: Likewise.
4945 * bindo-builders.adb: Likewise.
4946 * bindo-builders.ads: Likewise.
4947 * bindo-diagnostics.adb: Likewise.
4948 * bindo-diagnostics.ads: Likewise.
4949 * bindo-elaborators.adb: Likewise.
4950 * bindo-elaborators.ads: Likewise.
4951 * bindo-graphs.adb: Likewise.
4952 * bindo-graphs.ads: Likewise.
4953 * bindo-units.adb: Likewise.
4954 * bindo-units.ads: Likewise.
4955 * bindo-validators.adb: Likewise.
4956 * bindo-validators.ads: Likewise.
4957 * bindo-writers.adb: Likewise.
4958 * bindo-writers.ads: Likewise.
4959 * bindo.adb: Likewise.
4960 * bindo.ads: Likewise.
4961 * bindusg.adb: Likewise.
4962 * bindusg.ads: Likewise.
4963 * butil.adb: Likewise.
4964 * butil.ads: Likewise.
4965 * cal.c: Likewise.
4966 * casing.adb: Likewise.
4967 * casing.ads: Likewise.
4968 * checks.adb: Likewise.
4969 * checks.ads: Likewise.
4970 * cio.c: Likewise.
4971 * clean.adb: Likewise.
4972 * clean.ads: Likewise.
4973 * comperr.adb: Likewise.
4974 * comperr.ads: Likewise.
4975 * contracts.adb: Likewise.
4976 * contracts.ads: Likewise.
4977 * csets.adb: Likewise.
4978 * csets.ads: Likewise.
4979 * cstand.adb: Likewise.
4980 * cstand.ads: Likewise.
4981 * cstreams.c: Likewise.
4982 * ctrl_c.c: Likewise.
4983 * debug.ads: Likewise.
4984 * debug_a.adb: Likewise.
4985 * debug_a.ads: Likewise.
4986 * einfo-utils.adb: Likewise.
4987 * einfo-utils.ads: Likewise.
4988 * einfo.adb: Likewise.
4989 * einfo.ads: Likewise.
4990 * elists.adb: Likewise.
4991 * elists.ads: Likewise.
4992 * elists.h: Likewise.
4993 * env.c: Likewise.
4994 * env.h: Likewise.
4995 * err_vars.ads: Likewise.
4996 * errno.c: Likewise.
4997 * errout.adb: Likewise.
4998 * errout.ads: Likewise.
4999 * erroutc.adb: Likewise.
5000 * erroutc.ads: Likewise.
5001 * errutil.adb: Likewise.
5002 * errutil.ads: Likewise.
5003 * eval_fat.adb: Likewise.
5004 * eval_fat.ads: Likewise.
5005 * exit.c: Likewise.
5006 * exp_aggr.adb: Likewise.
5007 * exp_aggr.ads: Likewise.
5008 * exp_atag.adb: Likewise.
5009 * exp_atag.ads: Likewise.
5010 * exp_attr.adb: Likewise.
5011 * exp_attr.ads: Likewise.
5012 * exp_cg.adb: Likewise.
5013 * exp_cg.ads: Likewise.
5014 * exp_ch10.ads: Likewise.
5015 * exp_ch11.adb: Likewise.
5016 * exp_ch11.ads: Likewise.
5017 * exp_ch12.adb: Likewise.
5018 * exp_ch12.ads: Likewise.
5019 * exp_ch13.adb: Likewise.
5020 * exp_ch13.ads: Likewise.
5021 * exp_ch2.adb: Likewise.
5022 * exp_ch2.ads: Likewise.
5023 * exp_ch3.adb: Likewise.
5024 * exp_ch3.ads: Likewise.
5025 * exp_ch4.adb: Likewise.
5026 * exp_ch4.ads: Likewise.
5027 * exp_ch5.adb: Likewise.
5028 * exp_ch5.ads: Likewise.
5029 * exp_ch6.adb: Likewise.
5030 * exp_ch6.ads: Likewise.
5031 * exp_ch7.adb: Likewise.
5032 * exp_ch7.ads: Likewise.
5033 * exp_ch8.adb: Likewise.
5034 * exp_ch8.ads: Likewise.
5035 * exp_ch9.adb: Likewise.
5036 * exp_ch9.ads: Likewise.
5037 * exp_code.adb: Likewise.
5038 * exp_code.ads: Likewise.
5039 * exp_dbug.adb: Likewise.
5040 * exp_dbug.ads: Likewise.
5041 * exp_disp.adb: Likewise.
5042 * exp_disp.ads: Likewise.
5043 * exp_dist.adb: Likewise.
5044 * exp_dist.ads: Likewise.
5045 * exp_fixd.adb: Likewise.
5046 * exp_fixd.ads: Likewise.
5047 * exp_imgv.adb: Likewise.
5048 * exp_imgv.ads: Likewise.
5049 * exp_intr.adb: Likewise.
5050 * exp_intr.ads: Likewise.
5051 * exp_pakd.adb: Likewise.
5052 * exp_pakd.ads: Likewise.
5053 * exp_prag.adb: Likewise.
5054 * exp_prag.ads: Likewise.
5055 * exp_put_image.adb: Likewise.
5056 * exp_put_image.ads: Likewise.
5057 * exp_sel.adb: Likewise.
5058 * exp_sel.ads: Likewise.
5059 * exp_smem.adb: Likewise.
5060 * exp_smem.ads: Likewise.
5061 * exp_spark.adb: Likewise.
5062 * exp_spark.ads: Likewise.
5063 * exp_strm.adb: Likewise.
5064 * exp_strm.ads: Likewise.
5065 * exp_tss.adb: Likewise.
5066 * exp_tss.ads: Likewise.
5067 * exp_unst.adb: Likewise.
5068 * exp_unst.ads: Likewise.
5069 * exp_util.adb: Likewise.
5070 * exp_util.ads: Likewise.
5071 * expander.adb: Likewise.
5072 * expander.ads: Likewise.
5073 * expect.c: Likewise.
5074 * fe.h: Likewise.
5075 * final.c: Likewise.
5076 * fmap.adb: Likewise.
5077 * fmap.ads: Likewise.
5078 * fname-sf.adb: Likewise.
5079 * fname-sf.ads: Likewise.
5080 * fname-uf.adb: Likewise.
5081 * fname-uf.ads: Likewise.
5082 * fname.adb: Likewise.
5083 * fname.ads: Likewise.
5084 * freeze.adb: Likewise.
5085 * freeze.ads: Likewise.
5086 * frontend.adb: Likewise.
5087 * frontend.ads: Likewise.
5088 * gen_il-fields.ads: Likewise.
5089 * gen_il-gen-gen_entities.adb: Likewise.
5090 * gen_il-gen-gen_nodes.adb: Likewise.
5091 * gen_il-gen.adb: Likewise.
5092 * gen_il-gen.ads: Likewise.
5093 * gen_il-internals.adb: Likewise.
5094 * gen_il-internals.ads: Likewise.
5095 * gen_il-main.adb: Likewise.
5096 * gen_il-types.ads: Likewise.
5097 * gen_il.adb: Likewise.
5098 * gen_il.ads: Likewise.
5099 * get_scos.adb: Likewise.
5100 * get_scos.ads: Likewise.
5101 * get_targ.adb: Likewise.
5102 * get_targ.ads: Likewise.
5103 * ghost.adb: Likewise.
5104 * ghost.ads: Likewise.
5105 * gnat1drv.adb: Likewise.
5106 * gnat1drv.ads: Likewise.
5107 * gnat_cuda.adb: Likewise.
5108 * gnat_cuda.ads: Likewise.
5109 * gnatbind.adb: Likewise.
5110 * gnatbind.ads: Likewise.
5111 * gnatchop.adb: Likewise.
5112 * gnatclean.adb: Likewise.
5113 * gnatcmd.adb: Likewise.
5114 * gnatcmd.ads: Likewise.
5115 * gnatdll.adb: Likewise.
5116 * gnatfind.adb: Likewise.
5117 * gnatkr.adb: Likewise.
5118 * gnatkr.ads: Likewise.
5119 * gnatlink.adb: Likewise.
5120 * gnatlink.ads: Likewise.
5121 * gnatls.adb: Likewise.
5122 * gnatls.ads: Likewise.
5123 * gnatmake.adb: Likewise.
5124 * gnatmake.ads: Likewise.
5125 * gnatname.adb: Likewise.
5126 * gnatname.ads: Likewise.
5127 * gnatprep.adb: Likewise.
5128 * gnatprep.ads: Likewise.
5129 * gnatvsn.adb: Likewise.
5130 * gnatxref.adb: Likewise.
5131 * gprep.adb: Likewise.
5132 * gprep.ads: Likewise.
5133 * gsocket.h: Likewise.
5134 * hostparm.ads: Likewise.
5135 * impunit.adb: Likewise.
5136 * impunit.ads: Likewise.
5137 * indepsw-aix.adb: Likewise.
5138 * indepsw-darwin.adb: Likewise.
5139 * indepsw-gnu.adb: Likewise.
5140 * indepsw.adb: Likewise.
5141 * indepsw.ads: Likewise.
5142 * init.c: Likewise.
5143 * initialize.c: Likewise.
5144 * inline.adb: Likewise.
5145 * inline.ads: Likewise.
5146 * itypes.adb: Likewise.
5147 * itypes.ads: Likewise.
5148 * krunch.adb: Likewise.
5149 * krunch.ads: Likewise.
5150 * layout.adb: Likewise.
5151 * layout.ads: Likewise.
5152 * lib-list.adb: Likewise.
5153 * lib-load.adb: Likewise.
5154 * lib-load.ads: Likewise.
5155 * lib-sort.adb: Likewise.
5156 * lib-util.adb: Likewise.
5157 * lib-util.ads: Likewise.
5158 * lib-writ.adb: Likewise.
5159 * lib-writ.ads: Likewise.
5160 * lib-xref-spark_specific.adb: Likewise.
5161 * lib-xref.adb: Likewise.
5162 * lib-xref.ads: Likewise.
5163 * lib.adb: Likewise.
5164 * lib.ads: Likewise.
5165 * libgnarl/a-astaco.adb: Likewise.
5166 * libgnarl/a-dispat.adb: Likewise.
5167 * libgnarl/a-dynpri.adb: Likewise.
5168 * libgnarl/a-etgrbu.ads: Likewise.
5169 * libgnarl/a-exetim__darwin.adb: Likewise.
5170 * libgnarl/a-exetim__default.ads: Likewise.
5171 * libgnarl/a-exetim__mingw.adb: Likewise.
5172 * libgnarl/a-exetim__mingw.ads: Likewise.
5173 * libgnarl/a-exetim__posix.adb: Likewise.
5174 * libgnarl/a-interr.adb: Likewise.
5175 * libgnarl/a-interr.ads: Likewise.
5176 * libgnarl/a-intnam.ads: Likewise.
5177 * libgnarl/a-intnam__aix.ads: Likewise.
5178 * libgnarl/a-intnam__darwin.ads: Likewise.
5179 * libgnarl/a-intnam__dragonfly.ads: Likewise.
5180 * libgnarl/a-intnam__dummy.ads: Likewise.
5181 * libgnarl/a-intnam__freebsd.ads: Likewise.
5182 * libgnarl/a-intnam__hpux.ads: Likewise.
5183 * libgnarl/a-intnam__linux.ads: Likewise.
5184 * libgnarl/a-intnam__lynxos.ads: Likewise.
5185 * libgnarl/a-intnam__mingw.ads: Likewise.
5186 * libgnarl/a-intnam__qnx.ads: Likewise.
5187 * libgnarl/a-intnam__rtems.ads: Likewise.
5188 * libgnarl/a-intnam__solaris.ads: Likewise.
5189 * libgnarl/a-intnam__vxworks.ads: Likewise.
5190 * libgnarl/a-reatim.adb: Likewise.
5191 * libgnarl/a-reatim.ads: Likewise.
5192 * libgnarl/a-retide.adb: Likewise.
5193 * libgnarl/a-retide.ads: Likewise.
5194 * libgnarl/a-rttiev.adb: Likewise.
5195 * libgnarl/a-rttiev.ads: Likewise.
5196 * libgnarl/a-synbar.adb: Likewise.
5197 * libgnarl/a-synbar.ads: Likewise.
5198 * libgnarl/a-synbar__posix.adb: Likewise.
5199 * libgnarl/a-synbar__posix.ads: Likewise.
5200 * libgnarl/a-sytaco.adb: Likewise.
5201 * libgnarl/a-sytaco.ads: Likewise.
5202 * libgnarl/a-tasatt.adb: Likewise.
5203 * libgnarl/a-tasatt.ads: Likewise.
5204 * libgnarl/a-taside.adb: Likewise.
5205 * libgnarl/a-taside.ads: Likewise.
5206 * libgnarl/a-tasini.adb: Likewise.
5207 * libgnarl/a-tasini.ads: Likewise.
5208 * libgnarl/a-taster.adb: Likewise.
5209 * libgnarl/g-boubuf.adb: Likewise.
5210 * libgnarl/g-boubuf.ads: Likewise.
5211 * libgnarl/g-boumai.ads: Likewise.
5212 * libgnarl/g-semaph.adb: Likewise.
5213 * libgnarl/g-semaph.ads: Likewise.
5214 * libgnarl/g-signal.adb: Likewise.
5215 * libgnarl/g-signal.ads: Likewise.
5216 * libgnarl/g-tastus.ads: Likewise.
5217 * libgnarl/g-thread.adb: Likewise.
5218 * libgnarl/g-thread.ads: Likewise.
5219 * libgnarl/i-vxinco.adb: Likewise.
5220 * libgnarl/i-vxinco.ads: Likewise.
5221 * libgnarl/s-inmaop.ads: Likewise.
5222 * libgnarl/s-inmaop__dummy.adb: Likewise.
5223 * libgnarl/s-inmaop__hwint.adb: Likewise.
5224 * libgnarl/s-inmaop__posix.adb: Likewise.
5225 * libgnarl/s-interr.adb: Likewise.
5226 * libgnarl/s-interr.ads: Likewise.
5227 * libgnarl/s-interr__dummy.adb: Likewise.
5228 * libgnarl/s-interr__hwint.adb: Likewise.
5229 * libgnarl/s-interr__sigaction.adb: Likewise.
5230 * libgnarl/s-interr__vxworks.adb: Likewise.
5231 * libgnarl/s-intman.ads: Likewise.
5232 * libgnarl/s-intman__android.adb: Likewise.
5233 * libgnarl/s-intman__dummy.adb: Likewise.
5234 * libgnarl/s-intman__lynxos.adb: Likewise.
5235 * libgnarl/s-intman__mingw.adb: Likewise.
5236 * libgnarl/s-intman__posix.adb: Likewise.
5237 * libgnarl/s-intman__qnx.adb: Likewise.
5238 * libgnarl/s-intman__rtems.adb: Likewise.
5239 * libgnarl/s-intman__rtems.ads: Likewise.
5240 * libgnarl/s-intman__solaris.adb: Likewise.
5241 * libgnarl/s-intman__susv3.adb: Likewise.
5242 * libgnarl/s-intman__vxworks.adb: Likewise.
5243 * libgnarl/s-intman__vxworks.ads: Likewise.
5244 * libgnarl/s-linux.ads: Likewise.
5245 * libgnarl/s-linux__alpha.ads: Likewise.
5246 * libgnarl/s-linux__android.ads: Likewise.
5247 * libgnarl/s-linux__hppa.ads: Likewise.
5248 * libgnarl/s-linux__mips.ads: Likewise.
5249 * libgnarl/s-linux__riscv.ads: Likewise.
5250 * libgnarl/s-linux__sparc.ads: Likewise.
5251 * libgnarl/s-linux__x32.ads: Likewise.
5252 * libgnarl/s-mudido.adb: Likewise.
5253 * libgnarl/s-mudido__affinity.adb: Likewise.
5254 * libgnarl/s-osinte__aix.adb: Likewise.
5255 * libgnarl/s-osinte__aix.ads: Likewise.
5256 * libgnarl/s-osinte__android.adb: Likewise.
5257 * libgnarl/s-osinte__android.ads: Likewise.
5258 * libgnarl/s-osinte__darwin.adb: Likewise.
5259 * libgnarl/s-osinte__darwin.ads: Likewise.
5260 * libgnarl/s-osinte__dragonfly.adb: Likewise.
5261 * libgnarl/s-osinte__dragonfly.ads: Likewise.
5262 * libgnarl/s-osinte__dummy.ads: Likewise.
5263 * libgnarl/s-osinte__freebsd.adb: Likewise.
5264 * libgnarl/s-osinte__freebsd.ads: Likewise.
5265 * libgnarl/s-osinte__gnu.adb: Likewise.
5266 * libgnarl/s-osinte__gnu.ads: Likewise.
5267 * libgnarl/s-osinte__hpux-dce.adb: Likewise.
5268 * libgnarl/s-osinte__hpux-dce.ads: Likewise.
5269 * libgnarl/s-osinte__hpux.ads: Likewise.
5270 * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise.
5271 * libgnarl/s-osinte__linux.ads: Likewise.
5272 * libgnarl/s-osinte__lynxos178.adb: Likewise.
5273 * libgnarl/s-osinte__lynxos178e.ads: Likewise.
5274 * libgnarl/s-osinte__mingw.ads: Likewise.
5275 * libgnarl/s-osinte__posix.adb: Likewise.
5276 * libgnarl/s-osinte__qnx.adb: Likewise.
5277 * libgnarl/s-osinte__qnx.ads: Likewise.
5278 * libgnarl/s-osinte__rtems.adb: Likewise.
5279 * libgnarl/s-osinte__rtems.ads: Likewise.
5280 * libgnarl/s-osinte__solaris.adb: Likewise.
5281 * libgnarl/s-osinte__solaris.ads: Likewise.
5282 * libgnarl/s-osinte__vxworks.adb: Likewise.
5283 * libgnarl/s-osinte__vxworks.ads: Likewise.
5284 * libgnarl/s-osinte__x32.adb: Likewise.
5285 * libgnarl/s-proinf.adb: Likewise.
5286 * libgnarl/s-proinf.ads: Likewise.
5287 * libgnarl/s-putaim.adb: Likewise.
5288 * libgnarl/s-putaim.ads: Likewise.
5289 * libgnarl/s-qnx.ads: Likewise.
5290 * libgnarl/s-solita.adb: Likewise.
5291 * libgnarl/s-solita.ads: Likewise.
5292 * libgnarl/s-stusta.adb: Likewise.
5293 * libgnarl/s-stusta.ads: Likewise.
5294 * libgnarl/s-taasde.adb: Likewise.
5295 * libgnarl/s-taasde.ads: Likewise.
5296 * libgnarl/s-tadeca.adb: Likewise.
5297 * libgnarl/s-tadeca.ads: Likewise.
5298 * libgnarl/s-tadert.adb: Likewise.
5299 * libgnarl/s-tadert.ads: Likewise.
5300 * libgnarl/s-taenca.adb: Likewise.
5301 * libgnarl/s-taenca.ads: Likewise.
5302 * libgnarl/s-taprob.adb: Likewise.
5303 * libgnarl/s-taprob.ads: Likewise.
5304 * libgnarl/s-taprop.ads: Likewise.
5305 * libgnarl/s-taprop__dummy.adb: Likewise.
5306 * libgnarl/s-taprop__hpux-dce.adb: Likewise.
5307 * libgnarl/s-taprop__linux.adb: Likewise.
5308 * libgnarl/s-taprop__mingw.adb: Likewise.
5309 * libgnarl/s-taprop__posix.adb: Likewise.
5310 * libgnarl/s-taprop__qnx.adb: Likewise.
5311 * libgnarl/s-taprop__rtems.adb: Likewise.
5312 * libgnarl/s-taprop__solaris.adb: Likewise.
5313 * libgnarl/s-taprop__vxworks.adb: Likewise.
5314 * libgnarl/s-tarest.adb: Likewise.
5315 * libgnarl/s-tarest.ads: Likewise.
5316 * libgnarl/s-tasdeb.adb: Likewise.
5317 * libgnarl/s-tasdeb.ads: Likewise.
5318 * libgnarl/s-tasinf.adb: Likewise.
5319 * libgnarl/s-tasinf.ads: Likewise.
5320 * libgnarl/s-tasinf__linux.adb: Likewise.
5321 * libgnarl/s-tasinf__linux.ads: Likewise.
5322 * libgnarl/s-tasinf__mingw.adb: Likewise.
5323 * libgnarl/s-tasinf__mingw.ads: Likewise.
5324 * libgnarl/s-tasinf__solaris.adb: Likewise.
5325 * libgnarl/s-tasinf__solaris.ads: Likewise.
5326 * libgnarl/s-tasinf__vxworks.ads: Likewise.
5327 * libgnarl/s-tasini.adb: Likewise.
5328 * libgnarl/s-tasini.ads: Likewise.
5329 * libgnarl/s-taskin.adb: Likewise.
5330 * libgnarl/s-taskin.ads: Likewise.
5331 * libgnarl/s-taspri__dummy.ads: Likewise.
5332 * libgnarl/s-taspri__hpux-dce.ads: Likewise.
5333 * libgnarl/s-taspri__lynxos.ads: Likewise.
5334 * libgnarl/s-taspri__mingw.ads: Likewise.
5335 * libgnarl/s-taspri__posix-noaltstack.ads: Likewise.
5336 * libgnarl/s-taspri__posix.ads: Likewise.
5337 * libgnarl/s-taspri__solaris.ads: Likewise.
5338 * libgnarl/s-taspri__vxworks.ads: Likewise.
5339 * libgnarl/s-tasque.adb: Likewise.
5340 * libgnarl/s-tasque.ads: Likewise.
5341 * libgnarl/s-tasren.adb: Likewise.
5342 * libgnarl/s-tasren.ads: Likewise.
5343 * libgnarl/s-tasres.ads: Likewise.
5344 * libgnarl/s-tassta.adb: Likewise.
5345 * libgnarl/s-tassta.ads: Likewise.
5346 * libgnarl/s-tasuti.adb: Likewise.
5347 * libgnarl/s-tasuti.ads: Likewise.
5348 * libgnarl/s-tataat.adb: Likewise.
5349 * libgnarl/s-tataat.ads: Likewise.
5350 * libgnarl/s-tpinop.adb: Likewise.
5351 * libgnarl/s-tpinop.ads: Likewise.
5352 * libgnarl/s-tpoaal.adb: Likewise.
5353 * libgnarl/s-tpoben.adb: Likewise.
5354 * libgnarl/s-tpoben.ads: Likewise.
5355 * libgnarl/s-tpobmu.adb: Likewise.
5356 * libgnarl/s-tpobmu.ads: Likewise.
5357 * libgnarl/s-tpobop.adb: Likewise.
5358 * libgnarl/s-tpobop.ads: Likewise.
5359 * libgnarl/s-tpopmo.adb: Likewise.
5360 * libgnarl/s-tpopsp__posix-foreign.adb: Likewise.
5361 * libgnarl/s-tpopsp__posix.adb: Likewise.
5362 * libgnarl/s-tpopsp__solaris.adb: Likewise.
5363 * libgnarl/s-tpopsp__tls.adb: Likewise.
5364 * libgnarl/s-tpopsp__vxworks-rtp.adb: Likewise.
5365 * libgnarl/s-tpopsp__vxworks-tls.adb: Likewise.
5366 * libgnarl/s-tpopsp__vxworks.adb: Likewise.
5367 * libgnarl/s-tporft.adb: Likewise.
5368 * libgnarl/s-tposen.adb: Likewise.
5369 * libgnarl/s-tposen.ads: Likewise.
5370 * libgnarl/s-vxwext.adb: Likewise.
5371 * libgnarl/s-vxwext.ads: Likewise.
5372 * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
5373 * libgnarl/s-vxwext__kernel.adb: Likewise.
5374 * libgnarl/s-vxwext__kernel.ads: Likewise.
5375 * libgnarl/s-vxwext__rtp-smp.adb: Likewise.
5376 * libgnarl/s-vxwext__rtp.adb: Likewise.
5377 * libgnarl/s-vxwext__rtp.ads: Likewise.
5378 * libgnarl/s-vxwork__aarch64.ads: Likewise.
5379 * libgnarl/s-vxwork__arm.ads: Likewise.
5380 * libgnarl/s-vxwork__ppc.ads: Likewise.
5381 * libgnarl/s-vxwork__x86.ads: Likewise.
5382 * libgnarl/thread.c: Likewise.
5383 * libgnat/a-assert.adb: Likewise.
5384 * libgnat/a-assert.ads: Likewise.
5385 * libgnat/a-btgbso.adb: Likewise.
5386 * libgnat/a-btgbso.ads: Likewise.
5387 * libgnat/a-calari.adb: Likewise.
5388 * libgnat/a-calari.ads: Likewise.
5389 * libgnat/a-calcon.adb: Likewise.
5390 * libgnat/a-calcon.ads: Likewise.
5391 * libgnat/a-caldel.adb: Likewise.
5392 * libgnat/a-caldel.ads: Likewise.
5393 * libgnat/a-calend.adb: Likewise.
5394 * libgnat/a-calend.ads: Likewise.
5395 * libgnat/a-calfor.adb: Likewise.
5396 * libgnat/a-calfor.ads: Likewise.
5397 * libgnat/a-catizo.adb: Likewise.
5398 * libgnat/a-cbdlli.adb: Likewise.
5399 * libgnat/a-cbdlli.ads: Likewise.
5400 * libgnat/a-cbhama.adb: Likewise.
5401 * libgnat/a-cbhama.ads: Likewise.
5402 * libgnat/a-cbhase.adb: Likewise.
5403 * libgnat/a-cbhase.ads: Likewise.
5404 * libgnat/a-cbmutr.adb: Likewise.
5405 * libgnat/a-cbmutr.ads: Likewise.
5406 * libgnat/a-cborma.adb: Likewise.
5407 * libgnat/a-cborma.ads: Likewise.
5408 * libgnat/a-cborse.adb: Likewise.
5409 * libgnat/a-cborse.ads: Likewise.
5410 * libgnat/a-cbprqu.adb: Likewise.
5411 * libgnat/a-cbprqu.ads: Likewise.
5412 * libgnat/a-cbsyqu.adb: Likewise.
5413 * libgnat/a-cbsyqu.ads: Likewise.
5414 * libgnat/a-cdlili.adb: Likewise.
5415 * libgnat/a-cdlili.ads: Likewise.
5416 * libgnat/a-cfdlli.adb: Likewise.
5417 * libgnat/a-cfdlli.ads: Likewise.
5418 * libgnat/a-cfhama.adb: Likewise.
5419 * libgnat/a-cfhama.ads: Likewise.
5420 * libgnat/a-cfhase.adb: Likewise.
5421 * libgnat/a-cfhase.ads: Likewise.
5422 * libgnat/a-cfinve.adb: Likewise.
5423 * libgnat/a-cfinve.ads: Likewise.
5424 * libgnat/a-cforma.adb: Likewise.
5425 * libgnat/a-cforma.ads: Likewise.
5426 * libgnat/a-cforse.adb: Likewise.
5427 * libgnat/a-cforse.ads: Likewise.
5428 * libgnat/a-cgaaso.adb: Likewise.
5429 * libgnat/a-cgaaso.ads: Likewise.
5430 * libgnat/a-cgarso.adb: Likewise.
5431 * libgnat/a-cgcaso.adb: Likewise.
5432 * libgnat/a-chacon.adb: Likewise.
5433 * libgnat/a-chacon.ads: Likewise.
5434 * libgnat/a-chahan.adb: Likewise.
5435 * libgnat/a-chahan.ads: Likewise.
5436 * libgnat/a-chlat9.ads: Likewise.
5437 * libgnat/a-chtgbk.adb: Likewise.
5438 * libgnat/a-chtgbk.ads: Likewise.
5439 * libgnat/a-chtgbo.adb: Likewise.
5440 * libgnat/a-chtgbo.ads: Likewise.
5441 * libgnat/a-chtgke.adb: Likewise.
5442 * libgnat/a-chtgke.ads: Likewise.
5443 * libgnat/a-chtgop.adb: Likewise.
5444 * libgnat/a-chtgop.ads: Likewise.
5445 * libgnat/a-chzla1.ads: Likewise.
5446 * libgnat/a-chzla9.ads: Likewise.
5447 * libgnat/a-cidlli.adb: Likewise.
5448 * libgnat/a-cidlli.ads: Likewise.
5449 * libgnat/a-cihama.adb: Likewise.
5450 * libgnat/a-cihama.ads: Likewise.
5451 * libgnat/a-cihase.adb: Likewise.
5452 * libgnat/a-cihase.ads: Likewise.
5453 * libgnat/a-cimutr.adb: Likewise.
5454 * libgnat/a-cimutr.ads: Likewise.
5455 * libgnat/a-ciorma.adb: Likewise.
5456 * libgnat/a-ciorma.ads: Likewise.
5457 * libgnat/a-ciormu.adb: Likewise.
5458 * libgnat/a-ciormu.ads: Likewise.
5459 * libgnat/a-ciorse.adb: Likewise.
5460 * libgnat/a-ciorse.ads: Likewise.
5461 * libgnat/a-clrefi.adb: Likewise.
5462 * libgnat/a-clrefi.ads: Likewise.
5463 * libgnat/a-coboho.adb: Likewise.
5464 * libgnat/a-coboho.ads: Likewise.
5465 * libgnat/a-cobove.adb: Likewise.
5466 * libgnat/a-cobove.ads: Likewise.
5467 * libgnat/a-cofove.adb: Likewise.
5468 * libgnat/a-cofove.ads: Likewise.
5469 * libgnat/a-cofuba.adb: Likewise.
5470 * libgnat/a-cofuba.ads: Likewise.
5471 * libgnat/a-cofuma.adb: Likewise.
5472 * libgnat/a-cofuma.ads: Likewise.
5473 * libgnat/a-cofuse.adb: Likewise.
5474 * libgnat/a-cofuse.ads: Likewise.
5475 * libgnat/a-cofuve.adb: Likewise.
5476 * libgnat/a-cofuve.ads: Likewise.
5477 * libgnat/a-cogeso.adb: Likewise.
5478 * libgnat/a-cogeso.ads: Likewise.
5479 * libgnat/a-cohama.adb: Likewise.
5480 * libgnat/a-cohama.ads: Likewise.
5481 * libgnat/a-cohase.adb: Likewise.
5482 * libgnat/a-cohase.ads: Likewise.
5483 * libgnat/a-cohata.ads: Likewise.
5484 * libgnat/a-coinho.adb: Likewise.
5485 * libgnat/a-coinho.ads: Likewise.
5486 * libgnat/a-coinho__shared.adb: Likewise.
5487 * libgnat/a-coinho__shared.ads: Likewise.
5488 * libgnat/a-coinve.adb: Likewise.
5489 * libgnat/a-coinve.ads: Likewise.
5490 * libgnat/a-colien.adb: Likewise.
5491 * libgnat/a-colien.ads: Likewise.
5492 * libgnat/a-colire.adb: Likewise.
5493 * libgnat/a-colire.ads: Likewise.
5494 * libgnat/a-comlin.adb: Likewise.
5495 * libgnat/a-comlin.ads: Likewise.
5496 * libgnat/a-comutr.adb: Likewise.
5497 * libgnat/a-comutr.ads: Likewise.
5498 * libgnat/a-conhel.adb: Likewise.
5499 * libgnat/a-conhel.ads: Likewise.
5500 * libgnat/a-convec.adb: Likewise.
5501 * libgnat/a-convec.ads: Likewise.
5502 * libgnat/a-coorma.adb: Likewise.
5503 * libgnat/a-coorma.ads: Likewise.
5504 * libgnat/a-coormu.adb: Likewise.
5505 * libgnat/a-coormu.ads: Likewise.
5506 * libgnat/a-coorse.adb: Likewise.
5507 * libgnat/a-coorse.ads: Likewise.
5508 * libgnat/a-coprnu.adb: Likewise.
5509 * libgnat/a-coprnu.ads: Likewise.
5510 * libgnat/a-costso.adb: Likewise.
5511 * libgnat/a-costso.ads: Likewise.
5512 * libgnat/a-crbltr.ads: Likewise.
5513 * libgnat/a-crbtgk.adb: Likewise.
5514 * libgnat/a-crbtgk.ads: Likewise.
5515 * libgnat/a-crbtgo.adb: Likewise.
5516 * libgnat/a-crbtgo.ads: Likewise.
5517 * libgnat/a-crdlli.adb: Likewise.
5518 * libgnat/a-crdlli.ads: Likewise.
5519 * libgnat/a-csquin.ads: Likewise.
5520 * libgnat/a-cuprqu.adb: Likewise.
5521 * libgnat/a-cuprqu.ads: Likewise.
5522 * libgnat/a-cusyqu.adb: Likewise.
5523 * libgnat/a-cusyqu.ads: Likewise.
5524 * libgnat/a-cwila1.ads: Likewise.
5525 * libgnat/a-cwila9.ads: Likewise.
5526 * libgnat/a-decima.adb: Likewise.
5527 * libgnat/a-decima.ads: Likewise.
5528 * libgnat/a-decima__128.ads: Likewise.
5529 * libgnat/a-dhfina.adb: Likewise.
5530 * libgnat/a-dhfina.ads: Likewise.
5531 * libgnat/a-diocst.adb: Likewise.
5532 * libgnat/a-diocst.ads: Likewise.
5533 * libgnat/a-direct.adb: Likewise.
5534 * libgnat/a-direct.ads: Likewise.
5535 * libgnat/a-direio.adb: Likewise.
5536 * libgnat/a-direio.ads: Likewise.
5537 * libgnat/a-dirval.adb: Likewise.
5538 * libgnat/a-dirval.ads: Likewise.
5539 * libgnat/a-dirval__mingw.adb: Likewise.
5540 * libgnat/a-einuoc.adb: Likewise.
5541 * libgnat/a-einuoc.ads: Likewise.
5542 * libgnat/a-elchha.adb: Likewise.
5543 * libgnat/a-elchha.ads: Likewise.
5544 * libgnat/a-envvar.adb: Likewise.
5545 * libgnat/a-excach.adb: Likewise.
5546 * libgnat/a-except.adb: Likewise.
5547 * libgnat/a-except.ads: Likewise.
5548 * libgnat/a-exctra.adb: Likewise.
5549 * libgnat/a-exctra.ads: Likewise.
5550 * libgnat/a-exexda.adb: Likewise.
5551 * libgnat/a-exexpr.adb: Likewise.
5552 * libgnat/a-exextr.adb: Likewise.
5553 * libgnat/a-exstat.adb: Likewise.
5554 * libgnat/a-finali.adb: Likewise.
5555 * libgnat/a-finali.ads: Likewise.
5556 * libgnat/a-locale.adb: Likewise.
5557 * libgnat/a-locale.ads: Likewise.
5558 * libgnat/a-nagefl.ads: Likewise.
5559 * libgnat/a-naliop.ads: Likewise.
5560 * libgnat/a-naliop__nolibm.ads: Likewise.
5561 * libgnat/a-nallfl.ads: Likewise.
5562 * libgnat/a-nallfl__wraplf.ads: Likewise.
5563 * libgnat/a-nalofl.ads: Likewise.
5564 * libgnat/a-nashfl.ads: Likewise.
5565 * libgnat/a-nashfl__wraplf.ads: Likewise.
5566 * libgnat/a-nbnbig.adb: Likewise.
5567 * libgnat/a-nbnbin.adb: Likewise.
5568 * libgnat/a-nbnbin__gmp.adb: Likewise.
5569 * libgnat/a-nbnbre.adb: Likewise.
5570 * libgnat/a-ngcefu.adb: Likewise.
5571 * libgnat/a-ngcoar.adb: Likewise.
5572 * libgnat/a-ngcoty.adb: Likewise.
5573 * libgnat/a-ngcoty.ads: Likewise.
5574 * libgnat/a-ngelfu.adb: Likewise.
5575 * libgnat/a-ngelfu.ads: Likewise.
5576 * libgnat/a-ngrear.adb: Likewise.
5577 * libgnat/a-ngrear.ads: Likewise.
5578 * libgnat/a-nuauco.ads: Likewise.
5579 * libgnat/a-nuauco__x86.ads: Likewise.
5580 * libgnat/a-nuaufl.ads: Likewise.
5581 * libgnat/a-nuaufl__wraplf.ads: Likewise.
5582 * libgnat/a-nudira.adb: Likewise.
5583 * libgnat/a-nudira.ads: Likewise.
5584 * libgnat/a-nuflra.adb: Likewise.
5585 * libgnat/a-nuflra.ads: Likewise.
5586 * libgnat/a-numaux.ads: Likewise.
5587 * libgnat/a-rbtgbk.adb: Likewise.
5588 * libgnat/a-rbtgbk.ads: Likewise.
5589 * libgnat/a-rbtgbo.adb: Likewise.
5590 * libgnat/a-rbtgbo.ads: Likewise.
5591 * libgnat/a-rbtgso.adb: Likewise.
5592 * libgnat/a-rbtgso.ads: Likewise.
5593 * libgnat/a-sbecin.adb: Likewise.
5594 * libgnat/a-sbecin.ads: Likewise.
5595 * libgnat/a-sbhcin.adb: Likewise.
5596 * libgnat/a-sbhcin.ads: Likewise.
5597 * libgnat/a-sblcin.adb: Likewise.
5598 * libgnat/a-sblcin.ads: Likewise.
5599 * libgnat/a-secain.adb: Likewise.
5600 * libgnat/a-secain.ads: Likewise.
5601 * libgnat/a-sequio.adb: Likewise.
5602 * libgnat/a-sequio.ads: Likewise.
5603 * libgnat/a-sfecin.ads: Likewise.
5604 * libgnat/a-sfhcin.ads: Likewise.
5605 * libgnat/a-sflcin.ads: Likewise.
5606 * libgnat/a-shcain.adb: Likewise.
5607 * libgnat/a-shcain.ads: Likewise.
5608 * libgnat/a-siocst.adb: Likewise.
5609 * libgnat/a-siocst.ads: Likewise.
5610 * libgnat/a-slcain.adb: Likewise.
5611 * libgnat/a-slcain.ads: Likewise.
5612 * libgnat/a-ssicst.adb: Likewise.
5613 * libgnat/a-ssicst.ads: Likewise.
5614 * libgnat/a-stboha.adb: Likewise.
5615 * libgnat/a-stbubo.adb: Likewise.
5616 * libgnat/a-stbubo.ads: Likewise.
5617 * libgnat/a-stbufi.adb: Likewise.
5618 * libgnat/a-stbufi.ads: Likewise.
5619 * libgnat/a-stbufo.adb: Likewise.
5620 * libgnat/a-stbufo.ads: Likewise.
5621 * libgnat/a-stbuun.adb: Likewise.
5622 * libgnat/a-stbuut.adb: Likewise.
5623 * libgnat/a-stbuut.ads: Likewise.
5624 * libgnat/a-stmaco.ads: Likewise.
5625 * libgnat/a-storio.adb: Likewise.
5626 * libgnat/a-strbou.adb: Likewise.
5627 * libgnat/a-strbou.ads: Likewise.
5628 * libgnat/a-stream.adb: Likewise.
5629 * libgnat/a-stream.ads: Likewise.
5630 * libgnat/a-strfix.adb: Likewise.
5631 * libgnat/a-strhas.adb: Likewise.
5632 * libgnat/a-strmap.adb: Likewise.
5633 * libgnat/a-strmap.ads: Likewise.
5634 * libgnat/a-strsea.adb: Likewise.
5635 * libgnat/a-strsea.ads: Likewise.
5636 * libgnat/a-strsto.ads: Likewise.
5637 * libgnat/a-strsup.adb: Likewise.
5638 * libgnat/a-strsup.ads: Likewise.
5639 * libgnat/a-strunb.adb: Likewise.
5640 * libgnat/a-strunb.ads: Likewise.
5641 * libgnat/a-strunb__shared.adb: Likewise.
5642 * libgnat/a-strunb__shared.ads: Likewise.
5643 * libgnat/a-ststbo.adb: Likewise.
5644 * libgnat/a-ststbo.ads: Likewise.
5645 * libgnat/a-ststio.adb: Likewise.
5646 * libgnat/a-ststio.ads: Likewise.
5647 * libgnat/a-ststun.adb: Likewise.
5648 * libgnat/a-ststun.ads: Likewise.
5649 * libgnat/a-sttebu.adb: Likewise.
5650 * libgnat/a-stunau.adb: Likewise.
5651 * libgnat/a-stunau.ads: Likewise.
5652 * libgnat/a-stunau__shared.adb: Likewise.
5653 * libgnat/a-stunha.adb: Likewise.
5654 * libgnat/a-stuten.adb: Likewise.
5655 * libgnat/a-stwibo.adb: Likewise.
5656 * libgnat/a-stwibo.ads: Likewise.
5657 * libgnat/a-stwifi.adb: Likewise.
5658 * libgnat/a-stwiha.adb: Likewise.
5659 * libgnat/a-stwima.adb: Likewise.
5660 * libgnat/a-stwima.ads: Likewise.
5661 * libgnat/a-stwise.adb: Likewise.
5662 * libgnat/a-stwise.ads: Likewise.
5663 * libgnat/a-stwisu.adb: Likewise.
5664 * libgnat/a-stwisu.ads: Likewise.
5665 * libgnat/a-stwiun.adb: Likewise.
5666 * libgnat/a-stwiun.ads: Likewise.
5667 * libgnat/a-stwiun__shared.adb: Likewise.
5668 * libgnat/a-stwiun__shared.ads: Likewise.
5669 * libgnat/a-stzbou.adb: Likewise.
5670 * libgnat/a-stzbou.ads: Likewise.
5671 * libgnat/a-stzfix.adb: Likewise.
5672 * libgnat/a-stzhas.adb: Likewise.
5673 * libgnat/a-stzmap.adb: Likewise.
5674 * libgnat/a-stzmap.ads: Likewise.
5675 * libgnat/a-stzsea.adb: Likewise.
5676 * libgnat/a-stzsea.ads: Likewise.
5677 * libgnat/a-stzsup.adb: Likewise.
5678 * libgnat/a-stzsup.ads: Likewise.
5679 * libgnat/a-stzunb.adb: Likewise.
5680 * libgnat/a-stzunb.ads: Likewise.
5681 * libgnat/a-stzunb__shared.adb: Likewise.
5682 * libgnat/a-stzunb__shared.ads: Likewise.
5683 * libgnat/a-suecin.adb: Likewise.
5684 * libgnat/a-suecin.ads: Likewise.
5685 * libgnat/a-suenco.adb: Likewise.
5686 * libgnat/a-suenst.adb: Likewise.
5687 * libgnat/a-suewst.adb: Likewise.
5688 * libgnat/a-suezst.adb: Likewise.
5689 * libgnat/a-suhcin.adb: Likewise.
5690 * libgnat/a-suhcin.ads: Likewise.
5691 * libgnat/a-sulcin.adb: Likewise.
5692 * libgnat/a-sulcin.ads: Likewise.
5693 * libgnat/a-suteio.adb: Likewise.
5694 * libgnat/a-suteio.ads: Likewise.
5695 * libgnat/a-suteio__shared.adb: Likewise.
5696 * libgnat/a-swbwha.adb: Likewise.
5697 * libgnat/a-swmwco.ads: Likewise.
5698 * libgnat/a-swunau.adb: Likewise.
5699 * libgnat/a-swunau.ads: Likewise.
5700 * libgnat/a-swunau__shared.adb: Likewise.
5701 * libgnat/a-swuwha.adb: Likewise.
5702 * libgnat/a-swuwti.adb: Likewise.
5703 * libgnat/a-swuwti.ads: Likewise.
5704 * libgnat/a-swuwti__shared.adb: Likewise.
5705 * libgnat/a-szbzha.adb: Likewise.
5706 * libgnat/a-szmzco.ads: Likewise.
5707 * libgnat/a-szunau.adb: Likewise.
5708 * libgnat/a-szunau.ads: Likewise.
5709 * libgnat/a-szunau__shared.adb: Likewise.
5710 * libgnat/a-szuzha.adb: Likewise.
5711 * libgnat/a-szuzti.adb: Likewise.
5712 * libgnat/a-szuzti.ads: Likewise.
5713 * libgnat/a-szuzti__shared.adb: Likewise.
5714 * libgnat/a-tags.adb: Likewise.
5715 * libgnat/a-tags.ads: Likewise.
5716 * libgnat/a-teioed.adb: Likewise.
5717 * libgnat/a-teioed.ads: Likewise.
5718 * libgnat/a-textio.adb: Likewise.
5719 * libgnat/a-textio.ads: Likewise.
5720 * libgnat/a-tiboio.adb: Likewise.
5721 * libgnat/a-ticoau.adb: Likewise.
5722 * libgnat/a-ticoau.ads: Likewise.
5723 * libgnat/a-ticoio.adb: Likewise.
5724 * libgnat/a-ticoio.ads: Likewise.
5725 * libgnat/a-tideau.adb: Likewise.
5726 * libgnat/a-tideau.ads: Likewise.
5727 * libgnat/a-tideio.adb: Likewise.
5728 * libgnat/a-tideio.ads: Likewise.
5729 * libgnat/a-tideio__128.adb: Likewise.
5730 * libgnat/a-tienau.adb: Likewise.
5731 * libgnat/a-tienau.ads: Likewise.
5732 * libgnat/a-tienio.adb: Likewise.
5733 * libgnat/a-tifiau.adb: Likewise.
5734 * libgnat/a-tifiau.ads: Likewise.
5735 * libgnat/a-tifiio.adb: Likewise.
5736 * libgnat/a-tifiio__128.adb: Likewise.
5737 * libgnat/a-tiflau.adb: Likewise.
5738 * libgnat/a-tiflau.ads: Likewise.
5739 * libgnat/a-tiflio.adb: Likewise.
5740 * libgnat/a-tiflio.ads: Likewise.
5741 * libgnat/a-tigeau.adb: Likewise.
5742 * libgnat/a-tigeau.ads: Likewise.
5743 * libgnat/a-tigeli.adb: Likewise.
5744 * libgnat/a-tiinau.adb: Likewise.
5745 * libgnat/a-tiinau.ads: Likewise.
5746 * libgnat/a-tiinio.adb: Likewise.
5747 * libgnat/a-tiinio.ads: Likewise.
5748 * libgnat/a-tiinio__128.adb: Likewise.
5749 * libgnat/a-timoio.adb: Likewise.
5750 * libgnat/a-timoio.ads: Likewise.
5751 * libgnat/a-timoio__128.adb: Likewise.
5752 * libgnat/a-tiocst.adb: Likewise.
5753 * libgnat/a-tiocst.ads: Likewise.
5754 * libgnat/a-tirsfi.adb: Likewise.
5755 * libgnat/a-tirsfi.ads: Likewise.
5756 * libgnat/a-titest.adb: Likewise.
5757 * libgnat/a-undesu.adb: Likewise.
5758 * libgnat/a-wichha.adb: Likewise.
5759 * libgnat/a-wichun.adb: Likewise.
5760 * libgnat/a-wichun.ads: Likewise.
5761 * libgnat/a-witeio.adb: Likewise.
5762 * libgnat/a-witeio.ads: Likewise.
5763 * libgnat/a-wrstfi.adb: Likewise.
5764 * libgnat/a-wrstfi.ads: Likewise.
5765 * libgnat/a-wtcoau.adb: Likewise.
5766 * libgnat/a-wtcoau.ads: Likewise.
5767 * libgnat/a-wtcoio.adb: Likewise.
5768 * libgnat/a-wtcstr.adb: Likewise.
5769 * libgnat/a-wtcstr.ads: Likewise.
5770 * libgnat/a-wtdeau.adb: Likewise.
5771 * libgnat/a-wtdeau.ads: Likewise.
5772 * libgnat/a-wtdeio.adb: Likewise.
5773 * libgnat/a-wtdeio__128.adb: Likewise.
5774 * libgnat/a-wtedit.adb: Likewise.
5775 * libgnat/a-wtedit.ads: Likewise.
5776 * libgnat/a-wtenau.adb: Likewise.
5777 * libgnat/a-wtenau.ads: Likewise.
5778 * libgnat/a-wtenio.adb: Likewise.
5779 * libgnat/a-wtfiau.adb: Likewise.
5780 * libgnat/a-wtfiau.ads: Likewise.
5781 * libgnat/a-wtfiio.adb: Likewise.
5782 * libgnat/a-wtfiio__128.adb: Likewise.
5783 * libgnat/a-wtflau.adb: Likewise.
5784 * libgnat/a-wtflau.ads: Likewise.
5785 * libgnat/a-wtflio.adb: Likewise.
5786 * libgnat/a-wtgeau.adb: Likewise.
5787 * libgnat/a-wtgeau.ads: Likewise.
5788 * libgnat/a-wtinau.adb: Likewise.
5789 * libgnat/a-wtinau.ads: Likewise.
5790 * libgnat/a-wtinio.adb: Likewise.
5791 * libgnat/a-wtinio__128.adb: Likewise.
5792 * libgnat/a-wtmoio.adb: Likewise.
5793 * libgnat/a-wtmoio.ads: Likewise.
5794 * libgnat/a-wtmoio__128.adb: Likewise.
5795 * libgnat/a-wttest.adb: Likewise.
5796 * libgnat/a-wwboio.adb: Likewise.
5797 * libgnat/a-zchhan.adb: Likewise.
5798 * libgnat/a-zchuni.adb: Likewise.
5799 * libgnat/a-zchuni.ads: Likewise.
5800 * libgnat/a-zrstfi.adb: Likewise.
5801 * libgnat/a-zrstfi.ads: Likewise.
5802 * libgnat/a-ztcoau.adb: Likewise.
5803 * libgnat/a-ztcoio.adb: Likewise.
5804 * libgnat/a-ztcstr.adb: Likewise.
5805 * libgnat/a-ztcstr.ads: Likewise.
5806 * libgnat/a-ztdeau.adb: Likewise.
5807 * libgnat/a-ztdeau.ads: Likewise.
5808 * libgnat/a-ztdeio.adb: Likewise.
5809 * libgnat/a-ztdeio__128.adb: Likewise.
5810 * libgnat/a-ztedit.adb: Likewise.
5811 * libgnat/a-ztedit.ads: Likewise.
5812 * libgnat/a-ztenau.adb: Likewise.
5813 * libgnat/a-ztenau.ads: Likewise.
5814 * libgnat/a-ztenio.adb: Likewise.
5815 * libgnat/a-ztexio.adb: Likewise.
5816 * libgnat/a-ztexio.ads: Likewise.
5817 * libgnat/a-ztfiau.adb: Likewise.
5818 * libgnat/a-ztfiau.ads: Likewise.
5819 * libgnat/a-ztfiio.adb: Likewise.
5820 * libgnat/a-ztfiio__128.adb: Likewise.
5821 * libgnat/a-ztflau.adb: Likewise.
5822 * libgnat/a-ztflau.ads: Likewise.
5823 * libgnat/a-ztflio.adb: Likewise.
5824 * libgnat/a-ztgeau.adb: Likewise.
5825 * libgnat/a-ztgeau.ads: Likewise.
5826 * libgnat/a-ztinau.adb: Likewise.
5827 * libgnat/a-ztinau.ads: Likewise.
5828 * libgnat/a-ztinio.adb: Likewise.
5829 * libgnat/a-ztinio__128.adb: Likewise.
5830 * libgnat/a-ztmoio.adb: Likewise.
5831 * libgnat/a-ztmoio__128.adb: Likewise.
5832 * libgnat/a-zttest.adb: Likewise.
5833 * libgnat/a-zzboio.adb: Likewise.
5834 * libgnat/g-allein.ads: Likewise.
5835 * libgnat/g-alleve.adb: Likewise.
5836 * libgnat/g-alleve.ads: Likewise.
5837 * libgnat/g-alleve__hard.adb: Likewise.
5838 * libgnat/g-alleve__hard.ads: Likewise.
5839 * libgnat/g-altcon.adb: Likewise.
5840 * libgnat/g-altcon.ads: Likewise.
5841 * libgnat/g-altive.ads: Likewise.
5842 * libgnat/g-alveop.adb: Likewise.
5843 * libgnat/g-alveop.ads: Likewise.
5844 * libgnat/g-alvety.ads: Likewise.
5845 * libgnat/g-alvevi.ads: Likewise.
5846 * libgnat/g-arrspl.adb: Likewise.
5847 * libgnat/g-arrspl.ads: Likewise.
5848 * libgnat/g-awk.adb: Likewise.
5849 * libgnat/g-awk.ads: Likewise.
5850 * libgnat/g-binenv.adb: Likewise.
5851 * libgnat/g-binenv.ads: Likewise.
5852 * libgnat/g-brapre.ads: Likewise.
5853 * libgnat/g-bubsor.adb: Likewise.
5854 * libgnat/g-bubsor.ads: Likewise.
5855 * libgnat/g-busora.adb: Likewise.
5856 * libgnat/g-busora.ads: Likewise.
5857 * libgnat/g-busorg.adb: Likewise.
5858 * libgnat/g-busorg.ads: Likewise.
5859 * libgnat/g-byorma.adb: Likewise.
5860 * libgnat/g-byorma.ads: Likewise.
5861 * libgnat/g-bytswa.adb: Likewise.
5862 * libgnat/g-bytswa.ads: Likewise.
5863 * libgnat/g-calend.adb: Likewise.
5864 * libgnat/g-calend.ads: Likewise.
5865 * libgnat/g-casuti.adb: Likewise.
5866 * libgnat/g-casuti.ads: Likewise.
5867 * libgnat/g-catiio.adb: Likewise.
5868 * libgnat/g-catiio.ads: Likewise.
5869 * libgnat/g-cgi.adb: Likewise.
5870 * libgnat/g-cgi.ads: Likewise.
5871 * libgnat/g-cgicoo.adb: Likewise.
5872 * libgnat/g-cgicoo.ads: Likewise.
5873 * libgnat/g-cgideb.adb: Likewise.
5874 * libgnat/g-cgideb.ads: Likewise.
5875 * libgnat/g-comlin.adb: Likewise.
5876 * libgnat/g-comlin.ads: Likewise.
5877 * libgnat/g-comver.adb: Likewise.
5878 * libgnat/g-comver.ads: Likewise.
5879 * libgnat/g-cppexc.adb: Likewise.
5880 * libgnat/g-cppexc.ads: Likewise.
5881 * libgnat/g-crc32.adb: Likewise.
5882 * libgnat/g-crc32.ads: Likewise.
5883 * libgnat/g-ctrl_c.adb: Likewise.
5884 * libgnat/g-ctrl_c.ads: Likewise.
5885 * libgnat/g-curexc.ads: Likewise.
5886 * libgnat/g-debpoo.adb: Likewise.
5887 * libgnat/g-debpoo.ads: Likewise.
5888 * libgnat/g-debuti.adb: Likewise.
5889 * libgnat/g-debuti.ads: Likewise.
5890 * libgnat/g-decstr.adb: Likewise.
5891 * libgnat/g-decstr.ads: Likewise.
5892 * libgnat/g-deutst.ads: Likewise.
5893 * libgnat/g-diopit.adb: Likewise.
5894 * libgnat/g-diopit.ads: Likewise.
5895 * libgnat/g-dirope.adb: Likewise.
5896 * libgnat/g-dirope.ads: Likewise.
5897 * libgnat/g-dynhta.adb: Likewise.
5898 * libgnat/g-dynhta.ads: Likewise.
5899 * libgnat/g-dyntab.adb: Likewise.
5900 * libgnat/g-dyntab.ads: Likewise.
5901 * libgnat/g-eacodu.adb: Likewise.
5902 * libgnat/g-encstr.adb: Likewise.
5903 * libgnat/g-encstr.ads: Likewise.
5904 * libgnat/g-enutst.ads: Likewise.
5905 * libgnat/g-excact.adb: Likewise.
5906 * libgnat/g-excact.ads: Likewise.
5907 * libgnat/g-except.ads: Likewise.
5908 * libgnat/g-exctra.adb: Likewise.
5909 * libgnat/g-exctra.ads: Likewise.
5910 * libgnat/g-expect.adb: Likewise.
5911 * libgnat/g-expect.ads: Likewise.
5912 * libgnat/g-exptty.adb: Likewise.
5913 * libgnat/g-exptty.ads: Likewise.
5914 * libgnat/g-flocon.ads: Likewise.
5915 * libgnat/g-forstr.adb: Likewise.
5916 * libgnat/g-forstr.ads: Likewise.
5917 * libgnat/g-graphs.adb: Likewise.
5918 * libgnat/g-graphs.ads: Likewise.
5919 * libgnat/g-heasor.adb: Likewise.
5920 * libgnat/g-heasor.ads: Likewise.
5921 * libgnat/g-hesora.adb: Likewise.
5922 * libgnat/g-hesora.ads: Likewise.
5923 * libgnat/g-hesorg.adb: Likewise.
5924 * libgnat/g-hesorg.ads: Likewise.
5925 * libgnat/g-htable.adb: Likewise.
5926 * libgnat/g-htable.ads: Likewise.
5927 * libgnat/g-io.adb: Likewise.
5928 * libgnat/g-io.ads: Likewise.
5929 * libgnat/g-io_aux.adb: Likewise.
5930 * libgnat/g-io_aux.ads: Likewise.
5931 * libgnat/g-lists.adb: Likewise.
5932 * libgnat/g-lists.ads: Likewise.
5933 * libgnat/g-locfil.adb: Likewise.
5934 * libgnat/g-locfil.ads: Likewise.
5935 * libgnat/g-mbdira.adb: Likewise.
5936 * libgnat/g-mbdira.ads: Likewise.
5937 * libgnat/g-mbflra.adb: Likewise.
5938 * libgnat/g-mbflra.ads: Likewise.
5939 * libgnat/g-md5.adb: Likewise.
5940 * libgnat/g-md5.ads: Likewise.
5941 * libgnat/g-memdum.adb: Likewise.
5942 * libgnat/g-memdum.ads: Likewise.
5943 * libgnat/g-moreex.adb: Likewise.
5944 * libgnat/g-moreex.ads: Likewise.
5945 * libgnat/g-os_lib.adb: Likewise.
5946 * libgnat/g-os_lib.ads: Likewise.
5947 * libgnat/g-pehage.adb: Likewise.
5948 * libgnat/g-pehage.ads: Likewise.
5949 * libgnat/g-rannum.adb: Likewise.
5950 * libgnat/g-rannum.ads: Likewise.
5951 * libgnat/g-regexp.adb: Likewise.
5952 * libgnat/g-regexp.ads: Likewise.
5953 * libgnat/g-regist.adb: Likewise.
5954 * libgnat/g-regist.ads: Likewise.
5955 * libgnat/g-regpat.adb: Likewise.
5956 * libgnat/g-regpat.ads: Likewise.
5957 * libgnat/g-rewdat.adb: Likewise.
5958 * libgnat/g-rewdat.ads: Likewise.
5959 * libgnat/g-sechas.adb: Likewise.
5960 * libgnat/g-sechas.ads: Likewise.
5961 * libgnat/g-sehamd.adb: Likewise.
5962 * libgnat/g-sehamd.ads: Likewise.
5963 * libgnat/g-sehash.adb: Likewise.
5964 * libgnat/g-sehash.ads: Likewise.
5965 * libgnat/g-sercom.adb: Likewise.
5966 * libgnat/g-sercom.ads: Likewise.
5967 * libgnat/g-sercom__linux.adb: Likewise.
5968 * libgnat/g-sercom__mingw.adb: Likewise.
5969 * libgnat/g-sestin.ads: Likewise.
5970 * libgnat/g-sets.adb: Likewise.
5971 * libgnat/g-sets.ads: Likewise.
5972 * libgnat/g-sha1.adb: Likewise.
5973 * libgnat/g-sha1.ads: Likewise.
5974 * libgnat/g-sha224.ads: Likewise.
5975 * libgnat/g-sha256.ads: Likewise.
5976 * libgnat/g-sha384.ads: Likewise.
5977 * libgnat/g-sha512.ads: Likewise.
5978 * libgnat/g-shsh32.adb: Likewise.
5979 * libgnat/g-shsh32.ads: Likewise.
5980 * libgnat/g-shsh64.adb: Likewise.
5981 * libgnat/g-shsh64.ads: Likewise.
5982 * libgnat/g-shshco.adb: Likewise.
5983 * libgnat/g-shshco.ads: Likewise.
5984 * libgnat/g-soccon.ads: Likewise.
5985 * libgnat/g-socket.adb: Likewise.
5986 * libgnat/g-socket.ads: Likewise.
5987 * libgnat/g-socket__dummy.adb: Likewise.
5988 * libgnat/g-socket__dummy.ads: Likewise.
5989 * libgnat/g-socpol.adb: Likewise.
5990 * libgnat/g-socpol.ads: Likewise.
5991 * libgnat/g-socpol__dummy.adb: Likewise.
5992 * libgnat/g-socpol__dummy.ads: Likewise.
5993 * libgnat/g-socthi.adb: Likewise.
5994 * libgnat/g-socthi.ads: Likewise.
5995 * libgnat/g-socthi__dummy.adb: Likewise.
5996 * libgnat/g-socthi__dummy.ads: Likewise.
5997 * libgnat/g-socthi__mingw.adb: Likewise.
5998 * libgnat/g-socthi__mingw.ads: Likewise.
5999 * libgnat/g-socthi__vxworks.adb: Likewise.
6000 * libgnat/g-socthi__vxworks.ads: Likewise.
6001 * libgnat/g-soliop.ads: Likewise.
6002 * libgnat/g-soliop__lynxos.ads: Likewise.
6003 * libgnat/g-soliop__mingw.ads: Likewise.
6004 * libgnat/g-soliop__qnx.ads: Likewise.
6005 * libgnat/g-soliop__solaris.ads: Likewise.
6006 * libgnat/g-sopowa.adb: Likewise.
6007 * libgnat/g-sopowa__mingw.adb: Likewise.
6008 * libgnat/g-sopowa__posix.adb: Likewise.
6009 * libgnat/g-sothco.adb: Likewise.
6010 * libgnat/g-sothco.ads: Likewise.
6011 * libgnat/g-sothco__dummy.adb: Likewise.
6012 * libgnat/g-sothco__dummy.ads: Likewise.
6013 * libgnat/g-souinf.ads: Likewise.
6014 * libgnat/g-spchge.adb: Likewise.
6015 * libgnat/g-spchge.ads: Likewise.
6016 * libgnat/g-speche.adb: Likewise.
6017 * libgnat/g-speche.ads: Likewise.
6018 * libgnat/g-spipat.adb: Likewise.
6019 * libgnat/g-spipat.ads: Likewise.
6020 * libgnat/g-spitbo.adb: Likewise.
6021 * libgnat/g-spitbo.ads: Likewise.
6022 * libgnat/g-spogwa.adb: Likewise.
6023 * libgnat/g-spogwa.ads: Likewise.
6024 * libgnat/g-sptabo.ads: Likewise.
6025 * libgnat/g-sptain.ads: Likewise.
6026 * libgnat/g-sptavs.ads: Likewise.
6027 * libgnat/g-sse.ads: Likewise.
6028 * libgnat/g-ssvety.ads: Likewise.
6029 * libgnat/g-sthcso.adb: Likewise.
6030 * libgnat/g-stheme.adb: Likewise.
6031 * libgnat/g-strhas.ads: Likewise.
6032 * libgnat/g-string.adb: Likewise.
6033 * libgnat/g-string.ads: Likewise.
6034 * libgnat/g-strspl.ads: Likewise.
6035 * libgnat/g-stseme.adb: Likewise.
6036 * libgnat/g-stsifd__sockets.adb: Likewise.
6037 * libgnat/g-table.adb: Likewise.
6038 * libgnat/g-table.ads: Likewise.
6039 * libgnat/g-tasloc.adb: Likewise.
6040 * libgnat/g-tasloc.ads: Likewise.
6041 * libgnat/g-timsta.adb: Likewise.
6042 * libgnat/g-timsta.ads: Likewise.
6043 * libgnat/g-traceb.adb: Likewise.
6044 * libgnat/g-traceb.ads: Likewise.
6045 * libgnat/g-trasym.adb: Likewise.
6046 * libgnat/g-trasym.ads: Likewise.
6047 * libgnat/g-tty.adb: Likewise.
6048 * libgnat/g-tty.ads: Likewise.
6049 * libgnat/g-u3spch.adb: Likewise.
6050 * libgnat/g-u3spch.ads: Likewise.
6051 * libgnat/g-utf_32.adb: Likewise.
6052 * libgnat/g-utf_32.ads: Likewise.
6053 * libgnat/g-wispch.adb: Likewise.
6054 * libgnat/g-wispch.ads: Likewise.
6055 * libgnat/g-wistsp.ads: Likewise.
6056 * libgnat/g-zspche.adb: Likewise.
6057 * libgnat/g-zspche.ads: Likewise.
6058 * libgnat/g-zstspl.ads: Likewise.
6059 * libgnat/gnat.ads: Likewise.
6060 * libgnat/i-c.adb: Likewise.
6061 * libgnat/i-cexten.ads: Likewise.
6062 * libgnat/i-cexten__128.ads: Likewise.
6063 * libgnat/i-cobol.adb: Likewise.
6064 * libgnat/i-cobol.ads: Likewise.
6065 * libgnat/i-cpoint.adb: Likewise.
6066 * libgnat/i-cpoint.ads: Likewise.
6067 * libgnat/i-cstrea.adb: Likewise.
6068 * libgnat/i-cstrea.ads: Likewise.
6069 * libgnat/i-cstrin.adb: Likewise.
6070 * libgnat/i-cstrin.ads: Likewise.
6071 * libgnat/i-fortra.adb: Likewise.
6072 * libgnat/i-pacdec.adb: Likewise.
6073 * libgnat/i-pacdec.ads: Likewise.
6074 * libgnat/i-vxwoio.adb: Likewise.
6075 * libgnat/i-vxwoio.ads: Likewise.
6076 * libgnat/i-vxwork.ads: Likewise.
6077 * libgnat/i-vxwork__x86.ads: Likewise.
6078 * libgnat/interfac.ads: Likewise.
6079 * libgnat/interfac__2020.ads: Likewise.
6080 * libgnat/memtrack.adb: Likewise.
6081 * libgnat/s-addima.adb: Likewise.
6082 * libgnat/s-addima.ads: Likewise.
6083 * libgnat/s-addope.adb: Likewise.
6084 * libgnat/s-addope.ads: Likewise.
6085 * libgnat/s-aoinar.adb: Likewise.
6086 * libgnat/s-aoinar.ads: Likewise.
6087 * libgnat/s-aomoar.adb: Likewise.
6088 * libgnat/s-aomoar.ads: Likewise.
6089 * libgnat/s-aotase.adb: Likewise.
6090 * libgnat/s-aotase.ads: Likewise.
6091 * libgnat/s-aridou.adb: Likewise.
6092 * libgnat/s-aridou.ads: Likewise.
6093 * libgnat/s-arit128.adb: Likewise.
6094 * libgnat/s-arit128.ads: Likewise.
6095 * libgnat/s-arit32.adb: Likewise.
6096 * libgnat/s-arit32.ads: Likewise.
6097 * libgnat/s-arit64.adb: Likewise.
6098 * libgnat/s-arit64.ads: Likewise.
6099 * libgnat/s-assert.adb: Likewise.
6100 * libgnat/s-assert.ads: Likewise.
6101 * libgnat/s-atacco.adb: Likewise.
6102 * libgnat/s-atacco.ads: Likewise.
6103 * libgnat/s-atocou.adb: Likewise.
6104 * libgnat/s-atocou.ads: Likewise.
6105 * libgnat/s-atocou__builtin.adb: Likewise.
6106 * libgnat/s-atoope.ads: Likewise.
6107 * libgnat/s-atopex.adb: Likewise.
6108 * libgnat/s-atopex.ads: Likewise.
6109 * libgnat/s-atopri.adb: Likewise.
6110 * libgnat/s-atopri.ads: Likewise.
6111 * libgnat/s-auxdec.adb: Likewise.
6112 * libgnat/s-auxdec.ads: Likewise.
6113 * libgnat/s-bignum.adb: Likewise.
6114 * libgnat/s-bignum.ads: Likewise.
6115 * libgnat/s-bitfie.ads: Likewise.
6116 * libgnat/s-bitops.adb: Likewise.
6117 * libgnat/s-bitops.ads: Likewise.
6118 * libgnat/s-bituti.adb: Likewise.
6119 * libgnat/s-bituti.ads: Likewise.
6120 * libgnat/s-boarop.ads: Likewise.
6121 * libgnat/s-boustr.adb: Likewise.
6122 * libgnat/s-boustr.ads: Likewise.
6123 * libgnat/s-bytswa.ads: Likewise.
6124 * libgnat/s-carsi8.adb: Likewise.
6125 * libgnat/s-carsi8.ads: Likewise.
6126 * libgnat/s-carun8.adb: Likewise.
6127 * libgnat/s-carun8.ads: Likewise.
6128 * libgnat/s-casi128.adb: Likewise.
6129 * libgnat/s-casi128.ads: Likewise.
6130 * libgnat/s-casi16.adb: Likewise.
6131 * libgnat/s-casi16.ads: Likewise.
6132 * libgnat/s-casi32.adb: Likewise.
6133 * libgnat/s-casi32.ads: Likewise.
6134 * libgnat/s-casi64.adb: Likewise.
6135 * libgnat/s-casi64.ads: Likewise.
6136 * libgnat/s-casuti.adb: Likewise.
6137 * libgnat/s-casuti.ads: Likewise.
6138 * libgnat/s-caun128.adb: Likewise.
6139 * libgnat/s-caun128.ads: Likewise.
6140 * libgnat/s-caun16.adb: Likewise.
6141 * libgnat/s-caun16.ads: Likewise.
6142 * libgnat/s-caun32.adb: Likewise.
6143 * libgnat/s-caun32.ads: Likewise.
6144 * libgnat/s-caun64.adb: Likewise.
6145 * libgnat/s-caun64.ads: Likewise.
6146 * libgnat/s-chepoo.ads: Likewise.
6147 * libgnat/s-commun.adb: Likewise.
6148 * libgnat/s-commun.ads: Likewise.
6149 * libgnat/s-conca2.adb: Likewise.
6150 * libgnat/s-conca2.ads: Likewise.
6151 * libgnat/s-conca3.adb: Likewise.
6152 * libgnat/s-conca3.ads: Likewise.
6153 * libgnat/s-conca4.adb: Likewise.
6154 * libgnat/s-conca4.ads: Likewise.
6155 * libgnat/s-conca5.adb: Likewise.
6156 * libgnat/s-conca5.ads: Likewise.
6157 * libgnat/s-conca6.adb: Likewise.
6158 * libgnat/s-conca6.ads: Likewise.
6159 * libgnat/s-conca7.adb: Likewise.
6160 * libgnat/s-conca7.ads: Likewise.
6161 * libgnat/s-conca8.adb: Likewise.
6162 * libgnat/s-conca8.ads: Likewise.
6163 * libgnat/s-conca9.adb: Likewise.
6164 * libgnat/s-conca9.ads: Likewise.
6165 * libgnat/s-crc32.adb: Likewise.
6166 * libgnat/s-crc32.ads: Likewise.
6167 * libgnat/s-crtl.ads: Likewise.
6168 * libgnat/s-dfmkio.ads: Likewise.
6169 * libgnat/s-dfmopr.ads: Likewise.
6170 * libgnat/s-dgmgop.ads: Likewise.
6171 * libgnat/s-diflio.adb: Likewise.
6172 * libgnat/s-diflio.ads: Likewise.
6173 * libgnat/s-diflmk.ads: Likewise.
6174 * libgnat/s-digemk.ads: Likewise.
6175 * libgnat/s-diinio.adb: Likewise.
6176 * libgnat/s-diinio.ads: Likewise.
6177 * libgnat/s-dilomk.ads: Likewise.
6178 * libgnat/s-dim.ads: Likewise.
6179 * libgnat/s-dimkio.ads: Likewise.
6180 * libgnat/s-dimmks.ads: Likewise.
6181 * libgnat/s-direio.adb: Likewise.
6182 * libgnat/s-direio.ads: Likewise.
6183 * libgnat/s-dlmkio.ads: Likewise.
6184 * libgnat/s-dlmopr.ads: Likewise.
6185 * libgnat/s-dmotpr.ads: Likewise.
6186 * libgnat/s-dorepr.adb: Likewise.
6187 * libgnat/s-dorepr__fma.adb: Likewise.
6188 * libgnat/s-dourea.adb: Likewise.
6189 * libgnat/s-dourea.ads: Likewise.
6190 * libgnat/s-dsaser.ads: Likewise.
6191 * libgnat/s-dwalin.adb: Likewise.
6192 * libgnat/s-dwalin.ads: Likewise.
6193 * libgnat/s-elaall.adb: Likewise.
6194 * libgnat/s-elaall.ads: Likewise.
6195 * libgnat/s-excdeb.adb: Likewise.
6196 * libgnat/s-excdeb.ads: Likewise.
6197 * libgnat/s-except.adb: Likewise.
6198 * libgnat/s-except.ads: Likewise.
6199 * libgnat/s-excmac__arm.adb: Likewise.
6200 * libgnat/s-excmac__arm.ads: Likewise.
6201 * libgnat/s-excmac__gcc.adb: Likewise.
6202 * libgnat/s-excmac__gcc.ads: Likewise.
6203 * libgnat/s-exctab.adb: Likewise.
6204 * libgnat/s-exctab.ads: Likewise.
6205 * libgnat/s-exctra.adb: Likewise.
6206 * libgnat/s-exctra.ads: Likewise.
6207 * libgnat/s-exnflt.ads: Likewise.
6208 * libgnat/s-exnint.adb: Likewise.
6209 * libgnat/s-exnint.ads: Likewise.
6210 * libgnat/s-exnlfl.ads: Likewise.
6211 * libgnat/s-exnllf.adb: Likewise.
6212 * libgnat/s-exnllf.ads: Likewise.
6213 * libgnat/s-exnlli.adb: Likewise.
6214 * libgnat/s-exnlli.ads: Likewise.
6215 * libgnat/s-exnllli.ads: Likewise.
6216 * libgnat/s-expint.adb: Likewise.
6217 * libgnat/s-expint.ads: Likewise.
6218 * libgnat/s-explli.adb: Likewise.
6219 * libgnat/s-explli.ads: Likewise.
6220 * libgnat/s-expllli.ads: Likewise.
6221 * libgnat/s-explllu.ads: Likewise.
6222 * libgnat/s-expllu.adb: Likewise.
6223 * libgnat/s-expllu.ads: Likewise.
6224 * libgnat/s-expmod.adb: Likewise.
6225 * libgnat/s-expmod.ads: Likewise.
6226 * libgnat/s-exponn.adb: Likewise.
6227 * libgnat/s-exponn.ads: Likewise.
6228 * libgnat/s-exponr.adb: Likewise.
6229 * libgnat/s-exponr.ads: Likewise.
6230 * libgnat/s-expont.adb: Likewise.
6231 * libgnat/s-expont.ads: Likewise.
6232 * libgnat/s-exponu.adb: Likewise.
6233 * libgnat/s-exponu.ads: Likewise.
6234 * libgnat/s-expuns.adb: Likewise.
6235 * libgnat/s-expuns.ads: Likewise.
6236 * libgnat/s-fatflt.ads: Likewise.
6237 * libgnat/s-fatgen.adb: Likewise.
6238 * libgnat/s-fatgen.ads: Likewise.
6239 * libgnat/s-fatlfl.ads: Likewise.
6240 * libgnat/s-fatllf.ads: Likewise.
6241 * libgnat/s-ficobl.ads: Likewise.
6242 * libgnat/s-filatt.ads: Likewise.
6243 * libgnat/s-fileio.adb: Likewise.
6244 * libgnat/s-fileio.ads: Likewise.
6245 * libgnat/s-finmas.adb: Likewise.
6246 * libgnat/s-finmas.ads: Likewise.
6247 * libgnat/s-finroo.adb: Likewise.
6248 * libgnat/s-finroo.ads: Likewise.
6249 * libgnat/s-flocon.adb: Likewise.
6250 * libgnat/s-flocon.ads: Likewise.
6251 * libgnat/s-flocon__none.adb: Likewise.
6252 * libgnat/s-fode128.ads: Likewise.
6253 * libgnat/s-fode32.ads: Likewise.
6254 * libgnat/s-fode64.ads: Likewise.
6255 * libgnat/s-fofi128.ads: Likewise.
6256 * libgnat/s-fofi32.ads: Likewise.
6257 * libgnat/s-fofi64.ads: Likewise.
6258 * libgnat/s-fore_d.adb: Likewise.
6259 * libgnat/s-fore_d.ads: Likewise.
6260 * libgnat/s-fore_f.adb: Likewise.
6261 * libgnat/s-fore_f.ads: Likewise.
6262 * libgnat/s-forrea.adb: Likewise.
6263 * libgnat/s-forrea.ads: Likewise.
6264 * libgnat/s-gearop.adb: Likewise.
6265 * libgnat/s-gearop.ads: Likewise.
6266 * libgnat/s-genbig.adb: Likewise.
6267 * libgnat/s-genbig.ads: Likewise.
6268 * libgnat/s-geveop.adb: Likewise.
6269 * libgnat/s-geveop.ads: Likewise.
6270 * libgnat/s-gloloc.adb: Likewise.
6271 * libgnat/s-gloloc.ads: Likewise.
6272 * libgnat/s-gloloc__mingw.adb: Likewise.
6273 * libgnat/s-htable.adb: Likewise.
6274 * libgnat/s-htable.ads: Likewise.
6275 * libgnat/s-imageb.adb: Likewise.
6276 * libgnat/s-imageb.ads: Likewise.
6277 * libgnat/s-imaged.adb: Likewise.
6278 * libgnat/s-imaged.ads: Likewise.
6279 * libgnat/s-imagef.adb: Likewise.
6280 * libgnat/s-imagef.ads: Likewise.
6281 * libgnat/s-imagei.adb: Likewise.
6282 * libgnat/s-imagei.ads: Likewise.
6283 * libgnat/s-imagen.adb: Likewise.
6284 * libgnat/s-imagen.ads: Likewise.
6285 * libgnat/s-imager.adb: Likewise.
6286 * libgnat/s-imager.ads: Likewise.
6287 * libgnat/s-imageu.adb: Likewise.
6288 * libgnat/s-imageu.ads: Likewise.
6289 * libgnat/s-imagew.adb: Likewise.
6290 * libgnat/s-imagew.ads: Likewise.
6291 * libgnat/s-imde128.ads: Likewise.
6292 * libgnat/s-imde32.ads: Likewise.
6293 * libgnat/s-imde64.ads: Likewise.
6294 * libgnat/s-imen16.ads: Likewise.
6295 * libgnat/s-imen32.ads: Likewise.
6296 * libgnat/s-imenu8.ads: Likewise.
6297 * libgnat/s-imfi128.ads: Likewise.
6298 * libgnat/s-imfi32.ads: Likewise.
6299 * libgnat/s-imfi64.ads: Likewise.
6300 * libgnat/s-imgbiu.adb: Likewise.
6301 * libgnat/s-imgbiu.ads: Likewise.
6302 * libgnat/s-imgboo.adb: Likewise.
6303 * libgnat/s-imgboo.ads: Likewise.
6304 * libgnat/s-imgcha.adb: Likewise.
6305 * libgnat/s-imgcha.ads: Likewise.
6306 * libgnat/s-imgflt.ads: Likewise.
6307 * libgnat/s-imgint.adb: Likewise.
6308 * libgnat/s-imgint.ads: Likewise.
6309 * libgnat/s-imglfl.ads: Likewise.
6310 * libgnat/s-imgllb.adb: Likewise.
6311 * libgnat/s-imgllb.ads: Likewise.
6312 * libgnat/s-imgllf.ads: Likewise.
6313 * libgnat/s-imglli.adb: Likewise.
6314 * libgnat/s-imglli.ads: Likewise.
6315 * libgnat/s-imglllb.ads: Likewise.
6316 * libgnat/s-imgllli.ads: Likewise.
6317 * libgnat/s-imglllu.ads: Likewise.
6318 * libgnat/s-imglllw.ads: Likewise.
6319 * libgnat/s-imgllu.adb: Likewise.
6320 * libgnat/s-imgllu.ads: Likewise.
6321 * libgnat/s-imgllw.adb: Likewise.
6322 * libgnat/s-imgllw.ads: Likewise.
6323 * libgnat/s-imgrea.adb: Likewise.
6324 * libgnat/s-imgrea.ads: Likewise.
6325 * libgnat/s-imguns.adb: Likewise.
6326 * libgnat/s-imguns.ads: Likewise.
6327 * libgnat/s-imguti.adb: Likewise.
6328 * libgnat/s-imguti.ads: Likewise.
6329 * libgnat/s-imgwch.adb: Likewise.
6330 * libgnat/s-imgwch.ads: Likewise.
6331 * libgnat/s-imgwiu.adb: Likewise.
6332 * libgnat/s-imgwiu.ads: Likewise.
6333 * libgnat/s-io.adb: Likewise.
6334 * libgnat/s-io.ads: Likewise.
6335 * libgnat/s-llflex.ads: Likewise.
6336 * libgnat/s-maccod.ads: Likewise.
6337 * libgnat/s-mantis.adb: Likewise.
6338 * libgnat/s-mantis.ads: Likewise.
6339 * libgnat/s-mastop.adb: Likewise.
6340 * libgnat/s-mastop.ads: Likewise.
6341 * libgnat/s-memcop.ads: Likewise.
6342 * libgnat/s-memory.adb: Likewise.
6343 * libgnat/s-memory.ads: Likewise.
6344 * libgnat/s-mmap.adb: Likewise.
6345 * libgnat/s-mmap.ads: Likewise.
6346 * libgnat/s-mmauni__long.ads: Likewise.
6347 * libgnat/s-mmosin__mingw.adb: Likewise.
6348 * libgnat/s-mmosin__mingw.ads: Likewise.
6349 * libgnat/s-mmosin__unix.adb: Likewise.
6350 * libgnat/s-mmosin__unix.ads: Likewise.
6351 * libgnat/s-multip.adb: Likewise.
6352 * libgnat/s-objrea.adb: Likewise.
6353 * libgnat/s-objrea.ads: Likewise.
6354 * libgnat/s-optide.adb: Likewise.
6355 * libgnat/s-os_lib.adb: Likewise.
6356 * libgnat/s-os_lib.ads: Likewise.
6357 * libgnat/s-osprim.ads: Likewise.
6358 * libgnat/s-osprim__darwin.adb: Likewise.
6359 * libgnat/s-osprim__lynxos.ads: Likewise.
6360 * libgnat/s-osprim__mingw.adb: Likewise.
6361 * libgnat/s-osprim__posix.adb: Likewise.
6362 * libgnat/s-osprim__posix2008.adb: Likewise.
6363 * libgnat/s-osprim__rtems.adb: Likewise.
6364 * libgnat/s-osprim__solaris.adb: Likewise.
6365 * libgnat/s-osprim__unix.adb: Likewise.
6366 * libgnat/s-osprim__x32.adb: Likewise.
6367 * libgnat/s-pack03.adb: Likewise.
6368 * libgnat/s-pack03.ads: Likewise.
6369 * libgnat/s-pack05.adb: Likewise.
6370 * libgnat/s-pack05.ads: Likewise.
6371 * libgnat/s-pack06.adb: Likewise.
6372 * libgnat/s-pack06.ads: Likewise.
6373 * libgnat/s-pack07.adb: Likewise.
6374 * libgnat/s-pack07.ads: Likewise.
6375 * libgnat/s-pack09.adb: Likewise.
6376 * libgnat/s-pack09.ads: Likewise.
6377 * libgnat/s-pack10.adb: Likewise.
6378 * libgnat/s-pack10.ads: Likewise.
6379 * libgnat/s-pack100.adb: Likewise.
6380 * libgnat/s-pack100.ads: Likewise.
6381 * libgnat/s-pack101.adb: Likewise.
6382 * libgnat/s-pack101.ads: Likewise.
6383 * libgnat/s-pack102.adb: Likewise.
6384 * libgnat/s-pack102.ads: Likewise.
6385 * libgnat/s-pack103.adb: Likewise.
6386 * libgnat/s-pack103.ads: Likewise.
6387 * libgnat/s-pack104.adb: Likewise.
6388 * libgnat/s-pack104.ads: Likewise.
6389 * libgnat/s-pack105.adb: Likewise.
6390 * libgnat/s-pack105.ads: Likewise.
6391 * libgnat/s-pack106.adb: Likewise.
6392 * libgnat/s-pack106.ads: Likewise.
6393 * libgnat/s-pack107.adb: Likewise.
6394 * libgnat/s-pack107.ads: Likewise.
6395 * libgnat/s-pack108.adb: Likewise.
6396 * libgnat/s-pack108.ads: Likewise.
6397 * libgnat/s-pack109.adb: Likewise.
6398 * libgnat/s-pack109.ads: Likewise.
6399 * libgnat/s-pack11.adb: Likewise.
6400 * libgnat/s-pack11.ads: Likewise.
6401 * libgnat/s-pack110.adb: Likewise.
6402 * libgnat/s-pack110.ads: Likewise.
6403 * libgnat/s-pack111.adb: Likewise.
6404 * libgnat/s-pack111.ads: Likewise.
6405 * libgnat/s-pack112.adb: Likewise.
6406 * libgnat/s-pack112.ads: Likewise.
6407 * libgnat/s-pack113.adb: Likewise.
6408 * libgnat/s-pack113.ads: Likewise.
6409 * libgnat/s-pack114.adb: Likewise.
6410 * libgnat/s-pack114.ads: Likewise.
6411 * libgnat/s-pack115.adb: Likewise.
6412 * libgnat/s-pack115.ads: Likewise.
6413 * libgnat/s-pack116.adb: Likewise.
6414 * libgnat/s-pack116.ads: Likewise.
6415 * libgnat/s-pack117.adb: Likewise.
6416 * libgnat/s-pack117.ads: Likewise.
6417 * libgnat/s-pack118.adb: Likewise.
6418 * libgnat/s-pack118.ads: Likewise.
6419 * libgnat/s-pack119.adb: Likewise.
6420 * libgnat/s-pack119.ads: Likewise.
6421 * libgnat/s-pack12.adb: Likewise.
6422 * libgnat/s-pack12.ads: Likewise.
6423 * libgnat/s-pack120.adb: Likewise.
6424 * libgnat/s-pack120.ads: Likewise.
6425 * libgnat/s-pack121.adb: Likewise.
6426 * libgnat/s-pack121.ads: Likewise.
6427 * libgnat/s-pack122.adb: Likewise.
6428 * libgnat/s-pack122.ads: Likewise.
6429 * libgnat/s-pack123.adb: Likewise.
6430 * libgnat/s-pack123.ads: Likewise.
6431 * libgnat/s-pack124.adb: Likewise.
6432 * libgnat/s-pack124.ads: Likewise.
6433 * libgnat/s-pack125.adb: Likewise.
6434 * libgnat/s-pack125.ads: Likewise.
6435 * libgnat/s-pack126.adb: Likewise.
6436 * libgnat/s-pack126.ads: Likewise.
6437 * libgnat/s-pack127.adb: Likewise.
6438 * libgnat/s-pack127.ads: Likewise.
6439 * libgnat/s-pack13.adb: Likewise.
6440 * libgnat/s-pack13.ads: Likewise.
6441 * libgnat/s-pack14.adb: Likewise.
6442 * libgnat/s-pack14.ads: Likewise.
6443 * libgnat/s-pack15.adb: Likewise.
6444 * libgnat/s-pack15.ads: Likewise.
6445 * libgnat/s-pack17.adb: Likewise.
6446 * libgnat/s-pack17.ads: Likewise.
6447 * libgnat/s-pack18.adb: Likewise.
6448 * libgnat/s-pack18.ads: Likewise.
6449 * libgnat/s-pack19.adb: Likewise.
6450 * libgnat/s-pack19.ads: Likewise.
6451 * libgnat/s-pack20.adb: Likewise.
6452 * libgnat/s-pack20.ads: Likewise.
6453 * libgnat/s-pack21.adb: Likewise.
6454 * libgnat/s-pack21.ads: Likewise.
6455 * libgnat/s-pack22.adb: Likewise.
6456 * libgnat/s-pack22.ads: Likewise.
6457 * libgnat/s-pack23.adb: Likewise.
6458 * libgnat/s-pack23.ads: Likewise.
6459 * libgnat/s-pack24.adb: Likewise.
6460 * libgnat/s-pack24.ads: Likewise.
6461 * libgnat/s-pack25.adb: Likewise.
6462 * libgnat/s-pack25.ads: Likewise.
6463 * libgnat/s-pack26.adb: Likewise.
6464 * libgnat/s-pack26.ads: Likewise.
6465 * libgnat/s-pack27.adb: Likewise.
6466 * libgnat/s-pack27.ads: Likewise.
6467 * libgnat/s-pack28.adb: Likewise.
6468 * libgnat/s-pack28.ads: Likewise.
6469 * libgnat/s-pack29.adb: Likewise.
6470 * libgnat/s-pack29.ads: Likewise.
6471 * libgnat/s-pack30.adb: Likewise.
6472 * libgnat/s-pack30.ads: Likewise.
6473 * libgnat/s-pack31.adb: Likewise.
6474 * libgnat/s-pack31.ads: Likewise.
6475 * libgnat/s-pack33.adb: Likewise.
6476 * libgnat/s-pack33.ads: Likewise.
6477 * libgnat/s-pack34.adb: Likewise.
6478 * libgnat/s-pack34.ads: Likewise.
6479 * libgnat/s-pack35.adb: Likewise.
6480 * libgnat/s-pack35.ads: Likewise.
6481 * libgnat/s-pack36.adb: Likewise.
6482 * libgnat/s-pack36.ads: Likewise.
6483 * libgnat/s-pack37.adb: Likewise.
6484 * libgnat/s-pack37.ads: Likewise.
6485 * libgnat/s-pack38.adb: Likewise.
6486 * libgnat/s-pack38.ads: Likewise.
6487 * libgnat/s-pack39.adb: Likewise.
6488 * libgnat/s-pack39.ads: Likewise.
6489 * libgnat/s-pack40.adb: Likewise.
6490 * libgnat/s-pack40.ads: Likewise.
6491 * libgnat/s-pack41.adb: Likewise.
6492 * libgnat/s-pack41.ads: Likewise.
6493 * libgnat/s-pack42.adb: Likewise.
6494 * libgnat/s-pack42.ads: Likewise.
6495 * libgnat/s-pack43.adb: Likewise.
6496 * libgnat/s-pack43.ads: Likewise.
6497 * libgnat/s-pack44.adb: Likewise.
6498 * libgnat/s-pack44.ads: Likewise.
6499 * libgnat/s-pack45.adb: Likewise.
6500 * libgnat/s-pack45.ads: Likewise.
6501 * libgnat/s-pack46.adb: Likewise.
6502 * libgnat/s-pack46.ads: Likewise.
6503 * libgnat/s-pack47.adb: Likewise.
6504 * libgnat/s-pack47.ads: Likewise.
6505 * libgnat/s-pack48.adb: Likewise.
6506 * libgnat/s-pack48.ads: Likewise.
6507 * libgnat/s-pack49.adb: Likewise.
6508 * libgnat/s-pack49.ads: Likewise.
6509 * libgnat/s-pack50.adb: Likewise.
6510 * libgnat/s-pack50.ads: Likewise.
6511 * libgnat/s-pack51.adb: Likewise.
6512 * libgnat/s-pack51.ads: Likewise.
6513 * libgnat/s-pack52.adb: Likewise.
6514 * libgnat/s-pack52.ads: Likewise.
6515 * libgnat/s-pack53.adb: Likewise.
6516 * libgnat/s-pack53.ads: Likewise.
6517 * libgnat/s-pack54.adb: Likewise.
6518 * libgnat/s-pack54.ads: Likewise.
6519 * libgnat/s-pack55.adb: Likewise.
6520 * libgnat/s-pack55.ads: Likewise.
6521 * libgnat/s-pack56.adb: Likewise.
6522 * libgnat/s-pack56.ads: Likewise.
6523 * libgnat/s-pack57.adb: Likewise.
6524 * libgnat/s-pack57.ads: Likewise.
6525 * libgnat/s-pack58.adb: Likewise.
6526 * libgnat/s-pack58.ads: Likewise.
6527 * libgnat/s-pack59.adb: Likewise.
6528 * libgnat/s-pack59.ads: Likewise.
6529 * libgnat/s-pack60.adb: Likewise.
6530 * libgnat/s-pack60.ads: Likewise.
6531 * libgnat/s-pack61.adb: Likewise.
6532 * libgnat/s-pack61.ads: Likewise.
6533 * libgnat/s-pack62.adb: Likewise.
6534 * libgnat/s-pack62.ads: Likewise.
6535 * libgnat/s-pack63.adb: Likewise.
6536 * libgnat/s-pack63.ads: Likewise.
6537 * libgnat/s-pack65.adb: Likewise.
6538 * libgnat/s-pack65.ads: Likewise.
6539 * libgnat/s-pack66.adb: Likewise.
6540 * libgnat/s-pack66.ads: Likewise.
6541 * libgnat/s-pack67.adb: Likewise.
6542 * libgnat/s-pack67.ads: Likewise.
6543 * libgnat/s-pack68.adb: Likewise.
6544 * libgnat/s-pack68.ads: Likewise.
6545 * libgnat/s-pack69.adb: Likewise.
6546 * libgnat/s-pack69.ads: Likewise.
6547 * libgnat/s-pack70.adb: Likewise.
6548 * libgnat/s-pack70.ads: Likewise.
6549 * libgnat/s-pack71.adb: Likewise.
6550 * libgnat/s-pack71.ads: Likewise.
6551 * libgnat/s-pack72.adb: Likewise.
6552 * libgnat/s-pack72.ads: Likewise.
6553 * libgnat/s-pack73.adb: Likewise.
6554 * libgnat/s-pack73.ads: Likewise.
6555 * libgnat/s-pack74.adb: Likewise.
6556 * libgnat/s-pack74.ads: Likewise.
6557 * libgnat/s-pack75.adb: Likewise.
6558 * libgnat/s-pack75.ads: Likewise.
6559 * libgnat/s-pack76.adb: Likewise.
6560 * libgnat/s-pack76.ads: Likewise.
6561 * libgnat/s-pack77.adb: Likewise.
6562 * libgnat/s-pack77.ads: Likewise.
6563 * libgnat/s-pack78.adb: Likewise.
6564 * libgnat/s-pack78.ads: Likewise.
6565 * libgnat/s-pack79.adb: Likewise.
6566 * libgnat/s-pack79.ads: Likewise.
6567 * libgnat/s-pack80.adb: Likewise.
6568 * libgnat/s-pack80.ads: Likewise.
6569 * libgnat/s-pack81.adb: Likewise.
6570 * libgnat/s-pack81.ads: Likewise.
6571 * libgnat/s-pack82.adb: Likewise.
6572 * libgnat/s-pack82.ads: Likewise.
6573 * libgnat/s-pack83.adb: Likewise.
6574 * libgnat/s-pack83.ads: Likewise.
6575 * libgnat/s-pack84.adb: Likewise.
6576 * libgnat/s-pack84.ads: Likewise.
6577 * libgnat/s-pack85.adb: Likewise.
6578 * libgnat/s-pack85.ads: Likewise.
6579 * libgnat/s-pack86.adb: Likewise.
6580 * libgnat/s-pack86.ads: Likewise.
6581 * libgnat/s-pack87.adb: Likewise.
6582 * libgnat/s-pack87.ads: Likewise.
6583 * libgnat/s-pack88.adb: Likewise.
6584 * libgnat/s-pack88.ads: Likewise.
6585 * libgnat/s-pack89.adb: Likewise.
6586 * libgnat/s-pack89.ads: Likewise.
6587 * libgnat/s-pack90.adb: Likewise.
6588 * libgnat/s-pack90.ads: Likewise.
6589 * libgnat/s-pack91.adb: Likewise.
6590 * libgnat/s-pack91.ads: Likewise.
6591 * libgnat/s-pack92.adb: Likewise.
6592 * libgnat/s-pack92.ads: Likewise.
6593 * libgnat/s-pack93.adb: Likewise.
6594 * libgnat/s-pack93.ads: Likewise.
6595 * libgnat/s-pack94.adb: Likewise.
6596 * libgnat/s-pack94.ads: Likewise.
6597 * libgnat/s-pack95.adb: Likewise.
6598 * libgnat/s-pack95.ads: Likewise.
6599 * libgnat/s-pack96.adb: Likewise.
6600 * libgnat/s-pack96.ads: Likewise.
6601 * libgnat/s-pack97.adb: Likewise.
6602 * libgnat/s-pack97.ads: Likewise.
6603 * libgnat/s-pack98.adb: Likewise.
6604 * libgnat/s-pack98.ads: Likewise.
6605 * libgnat/s-pack99.adb: Likewise.
6606 * libgnat/s-pack99.ads: Likewise.
6607 * libgnat/s-parame.adb: Likewise.
6608 * libgnat/s-parame.ads: Likewise.
6609 * libgnat/s-parame__hpux.ads: Likewise.
6610 * libgnat/s-parame__posix2008.ads: Likewise.
6611 * libgnat/s-parame__rtems.adb: Likewise.
6612 * libgnat/s-parame__vxworks.adb: Likewise.
6613 * libgnat/s-parame__vxworks.ads: Likewise.
6614 * libgnat/s-parint.adb: Likewise.
6615 * libgnat/s-parint.ads: Likewise.
6616 * libgnat/s-pehage.adb: Likewise.
6617 * libgnat/s-pehage.ads: Likewise.
6618 * libgnat/s-pooglo.adb: Likewise.
6619 * libgnat/s-pooglo.ads: Likewise.
6620 * libgnat/s-pooloc.adb: Likewise.
6621 * libgnat/s-pooloc.ads: Likewise.
6622 * libgnat/s-poosiz.adb: Likewise.
6623 * libgnat/s-poosiz.ads: Likewise.
6624 * libgnat/s-powflt.ads: Likewise.
6625 * libgnat/s-powlfl.ads: Likewise.
6626 * libgnat/s-powllf.ads: Likewise.
6627 * libgnat/s-purexc.ads: Likewise.
6628 * libgnat/s-putima.adb: Likewise.
6629 * libgnat/s-putima.ads: Likewise.
6630 * libgnat/s-rannum.adb: Likewise.
6631 * libgnat/s-rannum.ads: Likewise.
6632 * libgnat/s-ransee.adb: Likewise.
6633 * libgnat/s-ransee.ads: Likewise.
6634 * libgnat/s-regexp.adb: Likewise.
6635 * libgnat/s-regexp.ads: Likewise.
6636 * libgnat/s-regpat.adb: Likewise.
6637 * libgnat/s-regpat.ads: Likewise.
6638 * libgnat/s-resfil.adb: Likewise.
6639 * libgnat/s-resfil.ads: Likewise.
6640 * libgnat/s-restri.adb: Likewise.
6641 * libgnat/s-restri.ads: Likewise.
6642 * libgnat/s-rident.ads: Likewise.
6643 * libgnat/s-rpc.adb: Likewise.
6644 * libgnat/s-rpc.ads: Likewise.
6645 * libgnat/s-scaval.adb: Likewise.
6646 * libgnat/s-scaval.ads: Likewise.
6647 * libgnat/s-scaval__128.adb: Likewise.
6648 * libgnat/s-scaval__128.ads: Likewise.
6649 * libgnat/s-secsta.adb: Likewise.
6650 * libgnat/s-secsta.ads: Likewise.
6651 * libgnat/s-sequio.adb: Likewise.
6652 * libgnat/s-sequio.ads: Likewise.
6653 * libgnat/s-shabig.ads: Likewise.
6654 * libgnat/s-shasto.adb: Likewise.
6655 * libgnat/s-shasto.ads: Likewise.
6656 * libgnat/s-soflin.adb: Likewise.
6657 * libgnat/s-soflin.ads: Likewise.
6658 * libgnat/s-soliin.adb: Likewise.
6659 * libgnat/s-soliin.ads: Likewise.
6660 * libgnat/s-spsufi.adb: Likewise.
6661 * libgnat/s-spsufi.ads: Likewise.
6662 * libgnat/s-stache.adb: Likewise.
6663 * libgnat/s-stache.ads: Likewise.
6664 * libgnat/s-stalib.adb: Likewise.
6665 * libgnat/s-stalib.ads: Likewise.
6666 * libgnat/s-statxd.adb: Likewise.
6667 * libgnat/s-statxd.ads: Likewise.
6668 * libgnat/s-stausa.adb: Likewise.
6669 * libgnat/s-stausa.ads: Likewise.
6670 * libgnat/s-stchop.adb: Likewise.
6671 * libgnat/s-stchop.ads: Likewise.
6672 * libgnat/s-stchop__limit.ads: Likewise.
6673 * libgnat/s-stchop__vxworks.adb: Likewise.
6674 * libgnat/s-stoele.adb: Likewise.
6675 * libgnat/s-stoele.ads: Likewise.
6676 * libgnat/s-stopoo.adb: Likewise.
6677 * libgnat/s-stopoo.ads: Likewise.
6678 * libgnat/s-stposu.adb: Likewise.
6679 * libgnat/s-stposu.ads: Likewise.
6680 * libgnat/s-stratt.adb: Likewise.
6681 * libgnat/s-stratt.ads: Likewise.
6682 * libgnat/s-strcom.adb: Likewise.
6683 * libgnat/s-strcom.ads: Likewise.
6684 * libgnat/s-strhas.adb: Likewise.
6685 * libgnat/s-strhas.ads: Likewise.
6686 * libgnat/s-string.adb: Likewise.
6687 * libgnat/s-string.ads: Likewise.
6688 * libgnat/s-ststop.adb: Likewise.
6689 * libgnat/s-ststop.ads: Likewise.
6690 * libgnat/s-tasloc.adb: Likewise.
6691 * libgnat/s-tasloc.ads: Likewise.
6692 * libgnat/s-traceb.adb: Likewise.
6693 * libgnat/s-traceb.ads: Likewise.
6694 * libgnat/s-traceb__hpux.adb: Likewise.
6695 * libgnat/s-traceb__mastop.adb: Likewise.
6696 * libgnat/s-traent.adb: Likewise.
6697 * libgnat/s-traent.ads: Likewise.
6698 * libgnat/s-trasym.adb: Likewise.
6699 * libgnat/s-trasym.ads: Likewise.
6700 * libgnat/s-trasym__dwarf.adb: Likewise.
6701 * libgnat/s-tsmona.adb: Likewise.
6702 * libgnat/s-tsmona__linux.adb: Likewise.
6703 * libgnat/s-tsmona__mingw.adb: Likewise.
6704 * libgnat/s-unstyp.ads: Likewise.
6705 * libgnat/s-utf_32.adb: Likewise.
6706 * libgnat/s-utf_32.ads: Likewise.
6707 * libgnat/s-vade128.ads: Likewise.
6708 * libgnat/s-vade32.ads: Likewise.
6709 * libgnat/s-vade64.ads: Likewise.
6710 * libgnat/s-vaen16.ads: Likewise.
6711 * libgnat/s-vaen32.ads: Likewise.
6712 * libgnat/s-vaenu8.ads: Likewise.
6713 * libgnat/s-vafi128.ads: Likewise.
6714 * libgnat/s-vafi32.ads: Likewise.
6715 * libgnat/s-vafi64.ads: Likewise.
6716 * libgnat/s-valboo.adb: Likewise.
6717 * libgnat/s-valboo.ads: Likewise.
6718 * libgnat/s-valcha.adb: Likewise.
6719 * libgnat/s-valcha.ads: Likewise.
6720 * libgnat/s-valflt.ads: Likewise.
6721 * libgnat/s-valint.adb: Likewise.
6722 * libgnat/s-valint.ads: Likewise.
6723 * libgnat/s-vallfl.ads: Likewise.
6724 * libgnat/s-valllf.ads: Likewise.
6725 * libgnat/s-vallli.adb: Likewise.
6726 * libgnat/s-vallli.ads: Likewise.
6727 * libgnat/s-valllli.ads: Likewise.
6728 * libgnat/s-vallllu.ads: Likewise.
6729 * libgnat/s-valllu.adb: Likewise.
6730 * libgnat/s-valllu.ads: Likewise.
6731 * libgnat/s-valrea.adb: Likewise.
6732 * libgnat/s-valrea.ads: Likewise.
6733 * libgnat/s-valued.adb: Likewise.
6734 * libgnat/s-valued.ads: Likewise.
6735 * libgnat/s-valuef.adb: Likewise.
6736 * libgnat/s-valuef.ads: Likewise.
6737 * libgnat/s-valuei.adb: Likewise.
6738 * libgnat/s-valuei.ads: Likewise.
6739 * libgnat/s-valuen.adb: Likewise.
6740 * libgnat/s-valuen.ads: Likewise.
6741 * libgnat/s-valuer.adb: Likewise.
6742 * libgnat/s-valuer.ads: Likewise.
6743 * libgnat/s-valueu.adb: Likewise.
6744 * libgnat/s-valueu.ads: Likewise.
6745 * libgnat/s-valuns.adb: Likewise.
6746 * libgnat/s-valuns.ads: Likewise.
6747 * libgnat/s-valuti.adb: Likewise.
6748 * libgnat/s-valuti.ads: Likewise.
6749 * libgnat/s-valwch.adb: Likewise.
6750 * libgnat/s-valwch.ads: Likewise.
6751 * libgnat/s-veboop.adb: Likewise.
6752 * libgnat/s-veboop.ads: Likewise.
6753 * libgnat/s-vector.ads: Likewise.
6754 * libgnat/s-vercon.adb: Likewise.
6755 * libgnat/s-vercon.ads: Likewise.
6756 * libgnat/s-wchcnv.adb: Likewise.
6757 * libgnat/s-wchcnv.ads: Likewise.
6758 * libgnat/s-wchcon.adb: Likewise.
6759 * libgnat/s-wchcon.ads: Likewise.
6760 * libgnat/s-wchjis.adb: Likewise.
6761 * libgnat/s-wchjis.ads: Likewise.
6762 * libgnat/s-wchstw.adb: Likewise.
6763 * libgnat/s-wchstw.ads: Likewise.
6764 * libgnat/s-wchwts.adb: Likewise.
6765 * libgnat/s-wchwts.ads: Likewise.
6766 * libgnat/s-widboo.adb: Likewise.
6767 * libgnat/s-widboo.ads: Likewise.
6768 * libgnat/s-widcha.adb: Likewise.
6769 * libgnat/s-widcha.ads: Likewise.
6770 * libgnat/s-widenu.adb: Likewise.
6771 * libgnat/s-widenu.ads: Likewise.
6772 * libgnat/s-widint.ads: Likewise.
6773 * libgnat/s-widlli.adb: Likewise.
6774 * libgnat/s-widlli.ads: Likewise.
6775 * libgnat/s-widllli.ads: Likewise.
6776 * libgnat/s-widlllu.ads: Likewise.
6777 * libgnat/s-widllu.adb: Likewise.
6778 * libgnat/s-widllu.ads: Likewise.
6779 * libgnat/s-widthi.adb: Likewise.
6780 * libgnat/s-widthi.ads: Likewise.
6781 * libgnat/s-widthu.adb: Likewise.
6782 * libgnat/s-widthu.ads: Likewise.
6783 * libgnat/s-widuns.ads: Likewise.
6784 * libgnat/s-widwch.adb: Likewise.
6785 * libgnat/s-widwch.ads: Likewise.
6786 * libgnat/s-win32.ads: Likewise.
6787 * libgnat/s-winext.ads: Likewise.
6788 * libgnat/s-wwdcha.adb: Likewise.
6789 * libgnat/s-wwdcha.ads: Likewise.
6790 * libgnat/s-wwdenu.adb: Likewise.
6791 * libgnat/s-wwdenu.ads: Likewise.
6792 * libgnat/s-wwdwch.adb: Likewise.
6793 * libgnat/s-wwdwch.ads: Likewise.
6794 * libgnat/system-aix.ads: Likewise.
6795 * libgnat/system-darwin-arm.ads: Likewise.
6796 * libgnat/system-darwin-ppc.ads: Likewise.
6797 * libgnat/system-darwin-x86.ads: Likewise.
6798 * libgnat/system-djgpp.ads: Likewise.
6799 * libgnat/system-dragonfly-x86_64.ads: Likewise.
6800 * libgnat/system-freebsd.ads: Likewise.
6801 * libgnat/system-hpux-ia64.ads: Likewise.
6802 * libgnat/system-hpux.ads: Likewise.
6803 * libgnat/system-linux-alpha.ads: Likewise.
6804 * libgnat/system-linux-arm.ads: Likewise.
6805 * libgnat/system-linux-hppa.ads: Likewise.
6806 * libgnat/system-linux-ia64.ads: Likewise.
6807 * libgnat/system-linux-m68k.ads: Likewise.
6808 * libgnat/system-linux-mips.ads: Likewise.
6809 * libgnat/system-linux-ppc.ads: Likewise.
6810 * libgnat/system-linux-riscv.ads: Likewise.
6811 * libgnat/system-linux-s390.ads: Likewise.
6812 * libgnat/system-linux-sh4.ads: Likewise.
6813 * libgnat/system-linux-sparc.ads: Likewise.
6814 * libgnat/system-linux-x86.ads: Likewise.
6815 * libgnat/system-lynxos178-ppc.ads: Likewise.
6816 * libgnat/system-lynxos178-x86.ads: Likewise.
6817 * libgnat/system-mingw.ads: Likewise.
6818 * libgnat/system-qnx-aarch64.ads: Likewise.
6819 * libgnat/system-rtems.ads: Likewise.
6820 * libgnat/system-solaris-sparc.ads: Likewise.
6821 * libgnat/system-solaris-x86.ads: Likewise.
6822 * libgnat/system-vxworks-arm-rtp-smp.ads: Likewise.
6823 * libgnat/system-vxworks-arm-rtp.ads: Likewise.
6824 * libgnat/system-vxworks-arm.ads: Likewise.
6825 * libgnat/system-vxworks-e500-kernel.ads: Likewise.
6826 * libgnat/system-vxworks-e500-rtp-smp.ads: Likewise.
6827 * libgnat/system-vxworks-e500-rtp.ads: Likewise.
6828 * libgnat/system-vxworks-ppc-kernel.ads: Likewise.
6829 * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise.
6830 * libgnat/system-vxworks-ppc-rtp.ads: Likewise.
6831 * libgnat/system-vxworks-x86-kernel.ads: Likewise.
6832 * libgnat/system-vxworks-x86-rtp-smp.ads: Likewise.
6833 * libgnat/system-vxworks-x86-rtp.ads: Likewise.
6834 * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise.
6835 * libgnat/system-vxworks7-aarch64.ads: Likewise.
6836 * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise.
6837 * libgnat/system-vxworks7-arm.ads: Likewise.
6838 * libgnat/system-vxworks7-e500-kernel.ads: Likewise.
6839 * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise.
6840 * libgnat/system-vxworks7-e500-rtp.ads: Likewise.
6841 * libgnat/system-vxworks7-ppc-kernel.ads: Likewise.
6842 * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise.
6843 * libgnat/system-vxworks7-ppc-rtp.ads: Likewise.
6844 * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise.
6845 * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise.
6846 * libgnat/system-vxworks7-x86-kernel.ads: Likewise.
6847 * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise.
6848 * libgnat/system-vxworks7-x86-rtp.ads: Likewise.
6849 * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise.
6850 * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise.
6851 * link.c: Likewise.
6852 * live.adb: Likewise.
6853 * live.ads: Likewise.
6854 * locales.c: Likewise.
6855 * make.adb: Likewise.
6856 * make.ads: Likewise.
6857 * make_util.adb: Likewise.
6858 * make_util.ads: Likewise.
6859 * makeusg.adb: Likewise.
6860 * makeusg.ads: Likewise.
6861 * mdll-fil.adb: Likewise.
6862 * mdll-fil.ads: Likewise.
6863 * mdll-utl.adb: Likewise.
6864 * mdll-utl.ads: Likewise.
6865 * mdll.adb: Likewise.
6866 * mdll.ads: Likewise.
6867 * mingw32.h: Likewise.
6868 * mkdir.c: Likewise.
6869 * namet-sp.adb: Likewise.
6870 * namet-sp.ads: Likewise.
6871 * namet.adb: Likewise.
6872 * namet.ads: Likewise.
6873 * namet.h: Likewise.
6874 * nlists.adb: Likewise.
6875 * nlists.ads: Likewise.
6876 * nlists.h: Likewise.
6877 * opt.adb: Likewise.
6878 * opt.ads: Likewise.
6879 * osint-b.adb: Likewise.
6880 * osint-b.ads: Likewise.
6881 * osint-c.adb: Likewise.
6882 * osint-c.ads: Likewise.
6883 * osint-l.adb: Likewise.
6884 * osint-l.ads: Likewise.
6885 * osint-m.adb: Likewise.
6886 * osint-m.ads: Likewise.
6887 * osint.adb: Likewise.
6888 * osint.ads: Likewise.
6889 * output.adb: Likewise.
6890 * output.ads: Likewise.
6891 * par-ch10.adb: Likewise.
6892 * par-ch11.adb: Likewise.
6893 * par-ch12.adb: Likewise.
6894 * par-ch13.adb: Likewise.
6895 * par-ch2.adb: Likewise.
6896 * par-ch3.adb: Likewise.
6897 * par-ch4.adb: Likewise.
6898 * par-ch5.adb: Likewise.
6899 * par-ch6.adb: Likewise.
6900 * par-ch7.adb: Likewise.
6901 * par-ch8.adb: Likewise.
6902 * par-ch9.adb: Likewise.
6903 * par-endh.adb: Likewise.
6904 * par-labl.adb: Likewise.
6905 * par-load.adb: Likewise.
6906 * par-prag.adb: Likewise.
6907 * par-sync.adb: Likewise.
6908 * par-tchk.adb: Likewise.
6909 * par-util.adb: Likewise.
6910 * par.adb: Likewise.
6911 * par.ads: Likewise.
6912 * par_sco.adb: Likewise.
6913 * par_sco.ads: Likewise.
6914 * pprint.adb: Likewise.
6915 * pprint.ads: Likewise.
6916 * prep.adb: Likewise.
6917 * prep.ads: Likewise.
6918 * prepcomp.adb: Likewise.
6919 * prepcomp.ads: Likewise.
6920 * put_scos.adb: Likewise.
6921 * put_scos.ads: Likewise.
6922 * raise-gcc.c: Likewise.
6923 * raise.c: Likewise.
6924 * raise.h: Likewise.
6925 * repinfo-input.adb: Likewise.
6926 * repinfo-input.ads: Likewise.
6927 * repinfo.adb: Likewise.
6928 * repinfo.ads: Likewise.
6929 * repinfo.h: Likewise.
6930 * restrict.adb: Likewise.
6931 * restrict.ads: Likewise.
6932 * rident.ads: Likewise.
6933 * rtfinal.c: Likewise.
6934 * rtinit.c: Likewise.
6935 * rtsfind.adb: Likewise.
6936 * rtsfind.ads: Likewise.
6937 * runtime.h: Likewise.
6938 * s-oscons-tmplt.c: Likewise.
6939 * sa_messages.adb: Likewise.
6940 * sa_messages.ads: Likewise.
6941 * scans.adb: Likewise.
6942 * scans.ads: Likewise.
6943 * scil_ll.adb: Likewise.
6944 * scil_ll.ads: Likewise.
6945 * scn.adb: Likewise.
6946 * scn.ads: Likewise.
6947 * scng.adb: Likewise.
6948 * scng.ads: Likewise.
6949 * scos.adb: Likewise.
6950 * scos.ads: Likewise.
6951 * scos.h: Likewise.
6952 * sdefault.ads: Likewise.
6953 * seh_init.c: Likewise.
6954 * sem.adb: Likewise.
6955 * sem.ads: Likewise.
6956 * sem_aggr.adb: Likewise.
6957 * sem_aggr.ads: Likewise.
6958 * sem_attr.adb: Likewise.
6959 * sem_attr.ads: Likewise.
6960 * sem_aux.adb: Likewise.
6961 * sem_aux.ads: Likewise.
6962 * sem_case.adb: Likewise.
6963 * sem_case.ads: Likewise.
6964 * sem_cat.adb: Likewise.
6965 * sem_cat.ads: Likewise.
6966 * sem_ch10.adb: Likewise.
6967 * sem_ch10.ads: Likewise.
6968 * sem_ch11.adb: Likewise.
6969 * sem_ch11.ads: Likewise.
6970 * sem_ch12.adb: Likewise.
6971 * sem_ch12.ads: Likewise.
6972 * sem_ch13.adb: Likewise.
6973 * sem_ch13.ads: Likewise.
6974 * sem_ch2.adb: Likewise.
6975 * sem_ch2.ads: Likewise.
6976 * sem_ch3.adb: Likewise.
6977 * sem_ch3.ads: Likewise.
6978 * sem_ch4.adb: Likewise.
6979 * sem_ch4.ads: Likewise.
6980 * sem_ch5.adb: Likewise.
6981 * sem_ch5.ads: Likewise.
6982 * sem_ch6.adb: Likewise.
6983 * sem_ch6.ads: Likewise.
6984 * sem_ch7.adb: Likewise.
6985 * sem_ch7.ads: Likewise.
6986 * sem_ch8.adb: Likewise.
6987 * sem_ch8.ads: Likewise.
6988 * sem_ch9.adb: Likewise.
6989 * sem_ch9.ads: Likewise.
6990 * sem_dim.adb: Likewise.
6991 * sem_dim.ads: Likewise.
6992 * sem_disp.adb: Likewise.
6993 * sem_disp.ads: Likewise.
6994 * sem_dist.adb: Likewise.
6995 * sem_dist.ads: Likewise.
6996 * sem_elab.adb: Likewise.
6997 * sem_elab.ads: Likewise.
6998 * sem_elim.adb: Likewise.
6999 * sem_elim.ads: Likewise.
7000 * sem_eval.adb: Likewise.
7001 * sem_eval.ads: Likewise.
7002 * sem_intr.adb: Likewise.
7003 * sem_intr.ads: Likewise.
7004 * sem_mech.adb: Likewise.
7005 * sem_mech.ads: Likewise.
7006 * sem_prag.adb: Likewise.
7007 * sem_prag.ads: Likewise.
7008 * sem_res.adb: Likewise.
7009 * sem_res.ads: Likewise.
7010 * sem_scil.adb: Likewise.
7011 * sem_scil.ads: Likewise.
7012 * sem_smem.adb: Likewise.
7013 * sem_smem.ads: Likewise.
7014 * sem_type.adb: Likewise.
7015 * sem_type.ads: Likewise.
7016 * sem_util.adb: Likewise.
7017 * sem_util.ads: Likewise.
7018 * sem_warn.adb: Likewise.
7019 * sem_warn.ads: Likewise.
7020 * set_targ.adb: Likewise.
7021 * set_targ.ads: Likewise.
7022 * sfn_scan.adb: Likewise.
7023 * sfn_scan.ads: Likewise.
7024 * sigtramp-armdroid.c: Likewise.
7025 * sigtramp-ios.c: Likewise.
7026 * sigtramp-qnx.c: Likewise.
7027 * sigtramp-vxworks-target.h: Likewise.
7028 * sigtramp-vxworks.c: Likewise.
7029 * sigtramp.h: Likewise.
7030 * sinfo-cn.adb: Likewise.
7031 * sinfo-cn.ads: Likewise.
7032 * sinfo-utils.adb: Likewise.
7033 * sinfo-utils.ads: Likewise.
7034 * sinfo.adb: Likewise.
7035 * sinfo.ads: Likewise.
7036 * sinput-c.adb: Likewise.
7037 * sinput-c.ads: Likewise.
7038 * sinput-d.adb: Likewise.
7039 * sinput-d.ads: Likewise.
7040 * sinput-l.adb: Likewise.
7041 * sinput-l.ads: Likewise.
7042 * sinput.adb: Likewise.
7043 * sinput.ads: Likewise.
7044 * socket.c: Likewise.
7045 * spark_xrefs.adb: Likewise.
7046 * spark_xrefs.ads: Likewise.
7047 * sprint.adb: Likewise.
7048 * sprint.ads: Likewise.
7049 * stand.ads: Likewise.
7050 * stringt.adb: Likewise.
7051 * stringt.ads: Likewise.
7052 * stringt.h: Likewise.
7053 * strub.adb: Likewise.
7054 * strub.ads: Likewise.
7055 * style.adb: Likewise.
7056 * style.ads: Likewise.
7057 * styleg.adb: Likewise.
7058 * styleg.ads: Likewise.
7059 * stylesw.adb: Likewise.
7060 * stylesw.ads: Likewise.
7061 * switch-b.adb: Likewise.
7062 * switch-b.ads: Likewise.
7063 * switch-c.adb: Likewise.
7064 * switch-c.ads: Likewise.
7065 * switch-m.adb: Likewise.
7066 * switch-m.ads: Likewise.
7067 * switch.adb: Likewise.
7068 * switch.ads: Likewise.
7069 * sysdep.c: Likewise.
7070 * table.adb: Likewise.
7071 * table.ads: Likewise.
7072 * targext.c: Likewise.
7073 * targparm.adb: Likewise.
7074 * targparm.ads: Likewise.
7075 * tbuild.adb: Likewise.
7076 * tbuild.ads: Likewise.
7077 * tempdir.adb: Likewise.
7078 * tempdir.ads: Likewise.
7079 * terminals.c: Likewise.
7080 * tracebak.c: Likewise.
7081 * treepr.adb: Likewise.
7082 * treepr.ads: Likewise.
7083 * ttypes.ads: Likewise.
7084 * types.adb: Likewise.
7085 * types.ads: Likewise.
7086 * types.h: Likewise.
7087 * uintp.adb: Likewise.
7088 * uintp.ads: Likewise.
7089 * uintp.h: Likewise.
7090 * uname.adb: Likewise.
7091 * uname.ads: Likewise.
7092 * urealp.adb: Likewise.
7093 * urealp.ads: Likewise.
7094 * urealp.h: Likewise.
7095 * usage.adb: Likewise.
7096 * usage.ads: Likewise.
7097 * validsw.adb: Likewise.
7098 * validsw.ads: Likewise.
7099 * vast.adb: Likewise.
7100 * vast.ads: Likewise.
7101 * warnsw.adb: Likewise.
7102 * warnsw.ads: Likewise.
7103 * widechar.adb: Likewise.
7104 * widechar.ads: Likewise.
7105 * xoscons.adb: Likewise.
7106 * xr_tabls.adb: Likewise.
7107 * xr_tabls.ads: Likewise.
7108 * xref_lib.adb: Likewise.
7109 * xref_lib.ads: Likewise.
7110 * xsnamest.adb: Likewise.
7111 * xutil.adb: Likewise.
7112 * xutil.ads: Likewise.
7113
71142022-01-11 Richard Kenner <kenner@adacore.com>
7115
7116 * debug.adb: Add documentation for new -gnatd_u and old -gnatd_R
7117 flags used for GNAT LLVM and its CCG.
7118
71192022-01-11 Piotr Trojanek <trojanek@adacore.com>
7120
7121 * Makefile.rtl (X86_TARGET_PAIRS): Use __builtin variant of
7122 System.Atomic_Counters.
7123 * libgnat/s-atocou__x86.adb: Remove.
7124
d9450aa0
GA
71252022-01-10 Eric Botcazou <ebotcazou@adacore.com>
7126
7127 * gcc-interface/trans.c (Identifier_to_gnu): Use correct subtype.
7128 (elaborate_profile): New function.
7129 (Call_to_gnu): Call it on the formals and the result type before
7130 retrieving the translated result type from the subprogram type.
7131
71322022-01-10 Eric Botcazou <ebotcazou@adacore.com>
7133
7134 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Fix
7135 computation of boolean result in the unchecked union case.
7136 (components_to_record): Rename MAYBE_UNUSED parameter to IN_VARIANT
7137 and remove local variable of the same name. Pass NULL recursively
7138 as P_GNU_REP_LIST for nested variants in the unchecked union case.
7139
71402022-01-10 Eric Botcazou <ebotcazou@adacore.com>
7141
7142 * gcc-interface/trans.c (lvalue_required_p) <N_Pragma>: New case.
7143 <N_Pragma_Argument_Association>: Likewise.
7144 (Pragma_to_gnu) <Pragma_Inspection_Point>: Fetch the corresponding
7145 variable of a constant before marking it as addressable.
7146
71472022-01-10 Arnaud Charlet <charlet@adacore.com>
7148
7149 * gcc-interface/Make-lang.in (ADA_GENERATED_FILES): Remove
7150 s-casuti.ad?, s-crtl.ad?, s-os_lib.ad?. Update list of object
7151 files accordingly.
7152
71532022-01-10 Piotr Trojanek <trojanek@adacore.com>
7154
7155 * libgnat/s-atopri.ads (Atomic_Compare_Exchange): Replaces
7156 deprecated Sync_Compare_And_Swap.
7157 * libgnat/s-atopri.adb (Lock_Free_Try_Write): Switch from __sync
7158 to __atomic builtins.
7159
71602022-01-10 Piotr Trojanek <trojanek@adacore.com>
7161
7162 * libgnat/s-exponn.adb, libgnat/s-expont.adb,
7163 libgnat/s-exponu.adb, libgnat/s-widthi.adb,
7164 libgnat/s-widthu.adb: Remove CodePeer annotations for pragma
7165 Loop_Variant.
7166
71672022-01-10 Piotr Trojanek <trojanek@adacore.com>
7168
7169 * exp_prag.adb (Expand_Pragma_Loop_Variant): Disable expansion
7170 in CodePeer mode.
7171
71722022-01-10 Piotr Trojanek <trojanek@adacore.com>
7173
7174 * sem_util.adb (Is_Child_Or_Sibling): Fix typo in comment.
7175
71762022-01-10 Eric Botcazou <ebotcazou@adacore.com>
7177
7178 * exp_pakd.adb (Install_PAT): If the PAT is a scalar type, apply
7179 the canonical adjustment to its alignment.
7180
71812022-01-10 Piotr Trojanek <trojanek@adacore.com>
7182
7183 * libgnat/s-atocou__builtin.adb (Decrement, Increment): Switch
7184 from __sync to __atomic builtins; use 'Address to be consistent
7185 with System.Atomic_Primitives.
7186
71872022-01-10 Eric Botcazou <ebotcazou@adacore.com>
7188
7189 * exp_pakd.adb (Install_PAT): Do not reset the alignment here.
7190 * layout.adb (Layout_Type): Call Adjust_Esize_Alignment after having
7191 copied the RM_Size onto the Esize when the latter is too small.
7192
71932022-01-10 Justin Squirek <squirek@adacore.com>
7194
7195 * sem_warn.adb (Check_References): Handle arrays of tasks
7196 similar to task objects.
7197
55e96bf9
GA
71982022-01-07 Patrick Bernardi <bernardi@adacore.com>
7199
7200 * libgnat/a-direct.adb (Search_Data): Remove type.
7201 (Directory_Vectors): New package instantiation.
7202 (Search_State): New type.
7203 (Fetch_Next_Entry): Remove.
7204 (Close): Remove.
7205 (Finalize): Rewritten.
7206 (Full_Name): Ditto.
7207 (Get_Next_Entry): Return next entry from Search results vector
7208 rather than querying the directory directly using readdir.
7209 (Kind): Rewritten.
7210 (Modification_Time): Rewritten.
7211 (More_Entries): Use Search state cursor to determine if more
7212 entries are available for users to read.
7213 (Simple_Name): Rewritten.
7214 (Size): Rewritten.
7215 (Start_Search_Internal): Rewritten to load the contents of the
7216 directory that matches the pattern and filter into the search
7217 object.
7218 * libgnat/a-direct.ads (Search_Type): New type.
7219 (Search_Ptr): Ditto.
7220 (Directory_Entry_Type): Rewritten to support new Start_Search
7221 procedure.
7222 * libgnat/s-filatt.ads (File_Length_Attr): New function.
7223
72242022-01-07 Etienne Servais <servais@adacore.com>
7225
7226 * sem_attr.adb (Check_Reference): Fix condition.
7227
72282022-01-07 Ghjuvan Lacambre <lacambre@adacore.com>
7229
7230 * libgnarl/s-taprop__mingw.adb (Timed_Sleep): Remove "pragma
7231 Unreferenced" for Result.
7232 (Timed_Delay): Likewise.
7233
72342022-01-07 Piotr Trojanek <trojanek@adacore.com>
7235
7236 * gen_il-gen.adb (Put_Make_Decls): Put pragma Inline in a
7237 dedicated line, so that the current indentation is taken into
7238 account.
7239
72402022-01-07 Piotr Trojanek <trojanek@adacore.com>
7241
7242 * exp_aggr.adb (Build_Array_Aggr_Code): Fix inconsistent style
7243 in comments and code.
7244
72452022-01-07 Piotr Trojanek <trojanek@adacore.com>
7246
7247 * exp_aggr.adb (Gen_Assign): Remove explicit initialization for
7248 components of access types.
7249 (Get_Assoc_Expr): Enable initialization for components of all
7250 types that require simple initialization.
7251
72522022-01-07 Javier Miranda <miranda@adacore.com>
7253
7254 * atree.ads (Traverse_Func_With_Parent): New generic subprogram.
7255 (Traverse_Proc_With_Parent): Likewise.
7256 * atree.adb (Parents_Stack): New table used to traverse trees
7257 passing the parent field of each node.
7258 (Internal_Traverse_With_Parent): New generic subprogram.
7259 (Traverse_Func_With_Parent): Likewise.
7260 (Traverse_Proc_With_Parent): Likewise.
7261 * contracts.adb (Fix_Parents): New subprogram.
7262 (Restore_Original_Selected_Component): Enhanced to fix the
7263 parent field of restored nodes.
7264 (Inherit_Condition): Adding assertions to check the parent field
7265 of inherited conditions and to ensure that the built inherited
7266 condition has no reference to the formals of the parent
7267 subprogram.
7268 * sem_util.ads, sem_util.adb (Check_Parents): New subprogram.
7269
72702022-01-07 Etienne Servais <servais@adacore.com>
7271
7272 * sem_attr.adb (Check_Placement_In_Test_Case): Fix typo.
7273
72742022-01-07 Justin Squirek <squirek@adacore.com>
7275
7276 * comperr.adb (Delete_SCIL_Files): Replace unnecessary
7277 Unreferenced pragma with specific pragma Warnings.
7278 * doc/gnat_rm/implementation_defined_pragmas.rst (Unreferenced):
7279 Add documentation for new behavior.
7280 * gnat_rm.texi: Regenerate.
7281 * erroutc.adb (Set_At): Remove useless assignment.
7282 * exp_ch2.adb (In_Assignment_Context): Deleted.
7283 (Is_Object_Renaming_Name): Replace calls to Is_LHS with calls to
7284 Known_To_Be_Assigned.
7285 (Expand_Current_Value): Replace calls to May_Be_Lvalue with
7286 calls to Known_To_Be_Assigned.
7287 (Expand_Entry_Paramter): Replace calls to In_Assignment_Context
7288 with calls to Known_To_Be_Assigned.
7289 * exp_ch4.adb (Expand_N_Op_Rem): Remove unnecessary Unreferenced
7290 pragma.
7291 * exp_imgv.adb (Build_Enumeration_Image_Tables): Default
7292 initialize S_N.
7293 * ghost.adb (Check_Ghost_Policy): Replace call to May_Be_Lvalue
7294 with call to Known_To_Be_Assigned.
7295 * lib-xref.adb (Is_On_LHS): Deleted.
7296 (OK_To_Set_Referenced): Rewrite subprogram to encompass the new
7297 pragma Unreferenced behavior.
7298 (Process_Deferred_References): Replace call to Is_LHS with call
7299 to Known_To_Be_Assigned.
7300 * libgnarl/s-taasde.adb, libgnarl/s-tasren.adb,
7301 libgnarl/s-tpobop.adb, libgnat/a-calend.adb,
7302 libgnat/a-calfor.adb, libgnat/a-cbdlli.adb,
7303 libgnat/a-cbhama.adb, libgnat/a-cbhase.adb,
7304 libgnat/a-cbmutr.adb, libgnat/a-cborma.adb,
7305 libgnat/a-cborse.adb, libgnat/a-cdlili.adb,
7306 libgnat/a-cfhama.adb, libgnat/a-cforse.adb,
7307 libgnat/a-cidlli.adb, libgnat/a-cihama.adb,
7308 libgnat/a-cihase.adb, libgnat/a-cimutr.adb,
7309 libgnat/a-ciorma.adb, libgnat/a-ciormu.adb,
7310 libgnat/a-ciorse.adb, libgnat/a-cohama.adb,
7311 libgnat/a-cohase.adb, libgnat/a-comutr.adb,
7312 libgnat/a-convec.adb, libgnat/a-coorma.adb,
7313 libgnat/a-coormu.adb, libgnat/a-coorse.adb,
7314 libgnat/a-crdlli.adb, libgnat/a-tigeau.adb,
7315 libgnat/a-wtgeau.adb, libgnat/a-ztgeau.adb,
7316 libgnat/g-calend.adb, libgnat/g-comlin.adb,
7317 libgnat/g-expect.adb, libgnat/g-mbflra.adb,
7318 libgnat/g-spipat.adb, libgnat/s-fatgen.adb,
7319 libgnat/s-fileio.adb, libgnat/s-os_lib.adb,
7320 libgnat/s-regpat.adb, libgnat/s-valued.adb,
7321 libgnat/s-valuer.adb: Remove unnecessary Unreferenced pragmas
7322 * sem_ch10.adb (Process_Spec_Clauses): Remove useless
7323 assignments.
7324 * sem_ch13.adb (Validate_Literal_Aspect): Default initialize I.
7325 * sem_ch3.adb (Build_Derived_Concurrent_Type): Default
7326 initialize Corr_Decl.
7327 * sem_ch8.adb (Undefined): Replace calls to Is_LHS with calls to
7328 Known_To_Be_Assigned.
7329 (In_Abstract_View_Pragma): Likewise.
7330 * sem_eval.adb (Eval_Selected_Component): Replace calls to
7331 Is_LHS with calls to Known_To_Be_Assigned.
7332 * sem_res.adb (Init_Component): Replace calls to May_Be_Lvalue
7333 with calls to Known_To_Be_Assigned.
7334 * sem_util.adb, sem_util.ads (End_Label_Loc): Default initialize
7335 Owner.
7336 (Explain_Limited_Type): Default initialize Expr_Func.
7337 (Find_Actual): Modified to handle entry families.
7338 (Is_LHS): Deleted.
7339 (May_Be_Lvalue): Deleted.
7340 (Known_To_Be_Assigned): Modified and improved to handle all
7341 cases.
7342 * sem_warn.adb (Traverse_Result): Replace calls to May_Be_Lvalue
7343 with calls to Known_To_Be_Assigned.
7344 (Check_Ref): Modify error on unreferenced out parameters to take
7345 into account different warning flags.
7346
73472022-01-07 Javier Miranda <miranda@adacore.com>
7348
7349 * sem_ch3.adb (Reorder_Interfaces): When the conflicting
7350 interface is identified we just replace the interface in the
7351 list of interfaces of the tagged type (instead of adding a
7352 duplicate to the list of interfaces).
7353
73542022-01-07 Dmitriy Anisimkov <anisimko@adacore.com>
7355
7356 * adaint.c (__gnat_kill): Terminate process only in case of
7357 SIGKILL, SIGINT, SIGBREAK, SIGTERM, SIGABRT. Do not call
7358 OpenProcess if not going to terminate process.
7359
73602022-01-07 Eric Botcazou <ebotcazou@adacore.com>
7361
7362 * exp_prag.adb (Expand_Pragma_Inspection_Point): Do a single pass
7363 over the arguments of the pragma. Set the Address_Taken flag on
7364 them and use the Has_Delayed_Freeze flag to spot those which have
7365 their elaboration delayed. Reuse the location variable Loc.
7366
73672022-01-07 Piotr Trojanek <trojanek@adacore.com>
7368
7369 * osint.adb (To_Lower): Clarify that only To_Lower function
7370 causes bootstrap issues; fix style.
7371 * treepr.adb (Print_Str_Mixed_Case): Reuse existing case
7372 conversion routine.
7373 (To_Mixed): Rename from Capitalize; reuse System.Case_Util
7374 procedure and explain the bootstrap issue.
7375
73762022-01-07 Piotr Trojanek <trojanek@adacore.com>
7377
7378 * exp_ch7.adb (Process_Transients_In_Scope): Remove unnecessary
7379 initialization of Must_Hook; change Detect_Subprogram_Call from
7380 function to procedure; adapt caller.
7381
73822022-01-07 Piotr Trojanek <trojanek@adacore.com>
7383
7384 * exp_ch5.adb, exp_disp.adb, exp_util.adb, par-ch4.adb,
7385 sem_ch13.adb: Remove extra space before THEN that occurs at the
7386 end of a line.
7387
73882022-01-07 Dmitriy Anisimkov <anisimko@adacore.com>
7389
7390 * expect.c (__gnat_waitpid): Use macros WIFEXITED, WEXITSTATUS,
7391 WIFSIGNALED, WTERMSIG, WIFSTOPPED, WSTOPSIG to get exit status
7392 or signal that caused the child process to terminate/stop. Do
7393 not process exit status in case of error in waitpid call.
7394 * adaint.c (__gnat_kill): Use of GenerateConsoleCtrlEvent is
7395 removed in Windows variant as it actually is not working and was
7396 terminating the calling process. Set signal number into exit
7397 code parameter of TerminateProcess to work the same like in
7398 Linux.
7399
74002022-01-07 Piotr Trojanek <trojanek@adacore.com>
7401
7402 * exp_ch5.adb (Expand_N_Case_Statement): Remove explicit
7403 expansion.
7404
74052022-01-07 Etienne Servais <servais@adacore.com>
7406
7407 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
7408 Update -gnatwr documentation.
7409 * gnat_ugn.texi: Regenerate.
7410
74112022-01-07 Piotr Trojanek <trojanek@adacore.com>
7412
7413 * exp_unst.adb (Unnest_Subprogram): Sync comment with the
7414 current code.
7415
74162022-01-07 Piotr Trojanek <trojanek@adacore.com>
7417
7418 * exp_ch4.adb (Raise_Accessibility_Error): Move exception name
7419 to the message string; move << control characters to the end,
7420 for consistency.
7421 * sem_ch6.adb (Analyze_Function_Return): Likewise.
7422 * sem_util.adb (Compile_Time_Constraint_Error): Likewise.
7423 * gcc-interface/decl.c (gnat_to_gnu_entity): Remove quotes
7424 around Storage_Error.
7425 * gcc-interface/trans.c (gnat_to_gnu): Remove quotes around
7426 Constraint_Error.
7427
74282022-01-07 Piotr Trojanek <trojanek@adacore.com>
7429
7430 * errout.adb (Error_Msg): Move warning suppression code from
7431 Error_Msg_NLE
7432 (Error_Msg_NLE): Warning suppression is now done by the internal
7433 call to Error_Msg.
7434
74352022-01-07 Piotr Trojanek <trojanek@adacore.com>
7436
7437 * exp_ch3.adb (Expand_N_Object_Declaration): Remove unnecessary
7438 guards.
7439 * exp_ch4.adb (Expand_N_If_Expression): Likewise; clarify comment.
7440 * exp_ch5.adb (Expand_N_If_Statement,
7441 Expand_Iterator_Loop_Over_Container): Likewise.
7442 * exp_ch9.adb (Expand_N_Task_Type_Declaration): Remove redundant
7443 guard.
7444 * freeze.adb (Freeze_All_Ent): Reduce scope of a local variable.
7445
74462022-01-07 Piotr Trojanek <trojanek@adacore.com>
7447
7448 * exp_ch3.adb (Build_Init_Procedure): Remove unnecessary guard.
7449 * exp_disp.adb (Make_DT): Likewise.
7450 * sem_ch12.adb (Analyze_Associations): Likewise.
7451
74522022-01-07 Etienne Servais <servais@adacore.com>
7453
7454 * sem_res.adb (Resolve_Op_Concat_Arg): Check range when
7455 concatenating scalars.
7456
74572022-01-07 Bob Duff <duff@adacore.com>
7458
7459 * treepr.adb (Print_Node_Ref): Change "not Is_Array_Type" to
7460 "Is_Discrete_Type".
7461
74622022-01-07 Richard Kenner <kenner@adacore.com>
7463
7464 * libgnat/g-spipat.ads (Boolean_Func, Natural_Func,
7465 VString_Func): Mark as Favor_Top_Level.
7466 * sem_ch13.adb (Validate_Unchecked_Conversion): Avoid using
7467 internal representation if Unchecked_Conversion between
7468 an access to subprogram and System.Address within the same unit.
7469
74702022-01-07 Bob Duff <duff@adacore.com>
7471
7472 * treepr.adb (Print_Node_Ref): Print the value if available.
7473
74742022-01-07 Richard Kenner <kenner@adacore.com>
7475
7476 * sem_util.ads, sem_util.adb (Get_Fullest_View): Add option to
7477 not recurse and return the next-most-fullest view.
7478
74792022-01-07 Bob Duff <duff@adacore.com>
7480
7481 * sem_ch10.adb (Check_Redundant_Withs): Add a warning if a
7482 library unit with's its own ancestor. Note that this warning is
7483 not triggered for something like "with P.R;" in P.Q, because
7484 there the "with P;" is considered implicit.
7485 * fname-sf.adb, libgnarl/s-stusta.adb, libgnarl/s-tasdeb.ads,
7486 libgnat/a-calfor.adb, libgnat/a-tiboio.adb,
7487 libgnat/a-wwboio.adb, libgnat/a-zzboio.adb, libgnat/i-cobol.adb,
7488 libgnat/s-bitops.adb, libgnat/s-bitops.ads,
7489 libgnat/s-direio.adb, libgnat/s-dwalin.adb,
7490 libgnat/s-geveop.adb, libgnat/s-mmosin__unix.adb,
7491 libgnat/s-os_lib.adb, libgnat/s-os_lib.ads,
7492 libgnat/s-pooglo.ads, libgnat/s-secsta.adb,
7493 libgnat/s-shasto.adb, libgnat/s-stausa.ads,
7494 libgnat/s-stratt.ads, libgnat/s-ststop.adb: Remove with of
7495 parent.
7496 * sinfo.ads: Minor comment fix.
7497
74982022-01-07 Bob Duff <duff@adacore.com>
7499
7500 * osint-m.adb: Remove with_clause and pragma.
7501
11ce8d04
GA
75022022-01-06 Bob Duff <duff@adacore.com>
7503
7504 * sem_res.adb (Resolve_Range): Warn on null range, unless we are
7505 inside a generic unit or an instance thereof.
7506 * sem_ch3.adb (Analyze_Subtype_Indication): Minor: avoid double
7507 negative.
7508
75092022-01-06 Piotr Trojanek <trojanek@adacore.com>
7510
7511 * errout.adb (Adjust_Name_Case): Remove unnecessary declare
7512 block.
7513
75142022-01-06 Yannick Moy <moy@adacore.com>
7515
7516 * libgnat/a-ngcoar.adb: Add pragma to ignore assertions in
7517 instance.
7518 * libgnat/a-ngrear.adb: Likewise.
7519 * libgnat/s-gearop.adb: Prove implementation is free of runtime
7520 errors.
7521 * libgnat/s-gearop.ads: Add contracts to protect against runtime
7522 errors in the generic part.
7523
75242022-01-06 Piotr Trojanek <trojanek@adacore.com>
7525
7526 * errout.adb (Remove_Warning_Messages): Use traversal procedure
7527 instead of traversal function, since we discard status of each
7528 step anyway.
7529
75302022-01-06 Piotr Trojanek <trojanek@adacore.com>
7531
7532 * exp_ch4.adb (Expand_Concatenate): There is no reason for using
7533 declaring, raising and catching an exception; a simple return
7534 statement is enough.
7535
75362022-01-06 Piotr Trojanek <trojanek@adacore.com>
7537
7538 * sem_eval.adb (Eval_Arithmetic_Op): Add Loc parameter to all
7539 calls to Apply_Compile_Time_Constraint_Error related to division
7540 by zero.
7541
75422022-01-06 Piotr Trojanek <trojanek@adacore.com>
7543
7544 * errout.adb (Remove_Warning_Messages): Remove unnecessary guard.
7545 * exp_util.adb (Kill_Dead_Code): Likewise.
7546 * par_sco.adb (Traverse_Declarations_Or_Statements): Likewise.
7547 * sem_ch3.adb (Build_Derived_Record_Type): Likewise.
7548 * sem_ch4.adb (Traverse_Interfaces): Likewise.
7549 * sem_eval.adb (Traverse_Interfaces): Likewise.
7550 * sem_util.adb (Collect_Interfaces): Likewise.
7551 (Has_Non_Null_Statements, Side_Effect_Free_Statements):
7552 Likewise; turn into WHILE loops, for consistency.
7553
75542022-01-06 Etienne Servais <servais@adacore.com>
7555
7556 * sem_type.adb (Full_View_Covers): Fix typo.
7557
75582022-01-06 Eric Botcazou <ebotcazou@adacore.com>
7559
7560 * sem_ch12.adb (Insert_Freeze_Node_For_Instance): When going to
7561 the outer level, do not jump over following instantiations in
7562 the list.
7563
75642022-01-06 Piotr Trojanek <trojanek@adacore.com>
7565
7566 * err_vars.ads (Warn_On_Instance): Remove; it was a relic from
7567 the previous handling of warning in instances that was removed
7568 decades ago.
7569
75702022-01-06 Piotr Trojanek <trojanek@adacore.com>
7571
7572 * errout.adb (Error_Msg_Internal): Reorder words.
7573 * erroutc.ads (Is_Warning_Msg): Add closing paren.
7574 * sem_util.adb (Compile_Time_Constraint_Error): Fix casing.
7575
75762022-01-06 Piotr Trojanek <trojanek@adacore.com>
7577
7578 * sem_res.adb (Resolve_String_Literal): Simplify pointer
7579 arithmetic.
7580
75812022-01-06 Piotr Trojanek <trojanek@adacore.com>
7582
7583 * sem_res.adb (Resolve_String_Literal): Avoid unnecessary
7584 conversions inside "<" and ">" bodies.
7585
75862022-01-06 Piotr Trojanek <trojanek@adacore.com>
7587
7588 * checks.adb (Null_Exclusion_Static_Checks,
7589 Selected_Range_Checks): Fix style.
7590
75912022-01-06 Eric Botcazou <ebotcazou@adacore.com>
7592
7593 * sem_ch8.adb (Analyze_Package_Renaming): Do not check for Text_IO
7594 special units when the name of the renaming is a generic instance,
7595 which is the case for package instantiations in the GNAT model.
7596
75972022-01-06 Steve Baird <baird@adacore.com>
7598
7599 * sem_util.adb (Build_Discriminant_Reference): In the unexpected
7600 case where we previously would fail an assertion, we instead
7601 revert to the old behavior.
7602
76032022-01-06 Steve Baird <baird@adacore.com>
7604
7605 * sem_util.adb (Build_Actual_Subtype_Of_Component): Define a new
7606 local function, Build_Discriminant_Reference, and call it in
7607 each of the three cases where Make_Selected_Component was
7608 previously being called to construct a discriminant reference (2
7609 in Build_Actual_Array_Constraint and 1 in
7610 Build_Actual_Record_Constraint). Instead of unconditionally
7611 using the passed-in object name as the prefix for the new
7612 selected component node, this new function checks to see if
7613 perhaps a prefix of that name should be used instead.
7614
76152022-01-06 Etienne Servais <servais@adacore.com>
7616
7617 * atree.adb: Fix typo.
7618 * einfo.ads: Likewise.
7619 * exp_aggr.adb: Likewise.
7620 * exp_ch6.adb: Likewise.
7621 * exp_ch7.adb: Likewise.
7622 * exp_ch9.adb: Likewise.
7623 * exp_prag.adb: Likewise.
7624 * exp_unst.adb: Likewise.
7625 * exp_unst.ads: Likewise.
7626 * exp_util.adb: Likewise.
7627 * par-endh.adb: Likewise.
7628 * par.adb: Likewise.
7629 * restrict.adb: Likewise.
7630 * sem.ads: Likewise.
7631 * sem_ch4.adb: Likewise.
7632 * sem_ch5.adb: Likewise.
7633 * sem_ch6.adb: Likewise.
7634 * sem_ch8.adb: Likewise.
7635 * sem_ch12.adb: Likewise.
7636 * sem_ch13.adb: Likewise.
7637 * sem_dim.adb: Likewise.
7638 * sem_elab.adb: Likewise.
7639 * sem_prag.adb: Likewise.
7640 * sem_res.adb: Likewise.
7641 * sem_util.adb: Likewise.
7642 * sem_util.ads: Likewise.
7643 * sinfo.ads: Likewise.
7644 * sprint.adb: Likewise.
7645 * urealp.adb: Likewise.
7646
76472022-01-06 Justin Squirek <squirek@adacore.com>
7648
7649 * exp_ch3.adb (Build_Assignment): Replace current instance of
7650 type with Init_Proc formal.
7651 * sem_attr.adb (OK_Self_Reference): Handle recognition of
7652 Current_Instance to detect certain expansion.
7653 * sem_ch4.adb (Analyze_One_Call): Set actual's type when the
7654 actual in question is a current instance and its corresponding
7655 formal is an incomplete type.
7656 * sem_util.adb (Is_Current_Instance): Add check for incomplete
7657 views and add comment.
7658
76592022-01-06 Bob Duff <duff@adacore.com>
7660
7661 * libgnat/s-rident.ads (No_Tagged_Type_Registration): New
7662 restriction identifier.
7663 * restrict.ads (Implementation_Restriction): Add restriction.
7664 * exp_ch7.adb (Process_Declarations): Suppress
7665 tagged-type-related finalization actions if the restriction is
7666 active. Call RTE_Available last.
7667 * exp_disp.adb (Make_DT): Likewise.
7668 * exp_util.adb (Requires_Cleanup_Actions): Return False for a
7669 tagged type declaration if No_Tagged_Type_Registration is
7670 active.
7671 * sem_attr.adb (Check_Stream_Attribute): Check restriction
7672 No_Tagged_Type_Registration.
7673 * libgnat/a-except.ads (Null_Occurrence): Minor: Initialize, to
7674 avoid stopping at a warning in gdb.
7675 * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
7676 Document new restriction.
7677 * gnat_rm.texi: Regenerate.
7678
76792022-01-06 Piotr Trojanek <trojanek@adacore.com>
7680
7681 * par-ch4.adb (P_Simple_Expression): Reuse Null_String_Id.
7682 * prep.adb (Parse_Def_File): Likewise; remove Empty_String.
7683
76842022-01-06 Eric Botcazou <ebotcazou@adacore.com>
7685
7686 * stand.ads (Any_Access): Delete.
7687 (Universal_Access): New entity.
7688 * einfo.ads: Remove obsolete reference to Any_Access.
7689 * gen_il-gen-gen_entities.adb: Likewise.
7690 * cstand.adb (Create_Standard): Do not create Any_Access and create
7691 Universal_Access as a full type instead.
7692 * errout.adb (Set_Msg_Insertion_Type_Reference): Do not deal with
7693 Any_Access and deal with Universal_Access instead.
7694 * sem_ch3.adb (Analyze_Object_Declaration): Replace Any_Access with
7695 Universal_Access.
7696 * sem_ch4.adb (Analyze_Null): Likewise.
7697 (Find_Non_Universal_Interpretations): Likewise.
7698 (Find_Equality_Types.Try_One_Interp): Likewise and avoid shadowing
7699 by renaming a local variable of the same name.
7700 * sem_res.adb (Make_Call_Into_Operato): Likewise.
7701 (Resolve_Equality_Op): Likewise.
7702 * sem_type.adb (Covers): Likewise.
7703 (Specific_Type): Likewise.
7704
77052022-01-06 Piotr Trojanek <trojanek@adacore.com>
7706
7707 * treepr.adb (Destroy): Prevent spurious check from CodePeer.
7708
77092022-01-06 Yannick Moy <moy@adacore.com>
7710
7711 * libgnat/s-exponu.adb (Exponu): Add annotation.
7712
77132022-01-06 Justin Squirek <squirek@adacore.com>
7714
7715 * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Add comments
7716 regarding special handling of components which depend on
7717 discriminants.
7718 * exp_dist.adb (Build_From_Any_Function): Add Real_Rep actual
7719 for calls to Has_Stream_Attribute_Definition.
7720 (Build_To_Any_Function): Likewise.
7721 (Build_TypeCode_Function): Likewise.
7722 * freeze.adb (Freeze_Entity): Add missing comment for Test_E.
7723 * libgnat/s-utf_32.adb: Remove disabled warning comments and
7724 temporarily inserted pragma warnings. Remove very old (2006 and
7725 2012) comments about bootstrapping older versions.
7726 * par.adb (P_Identifier): Add new parameter Force_Msg.
7727 * par-ch2.adb (P_Identifier): Restructure and clean up function.
7728 * par-ch3.adb (P_Defining_Identifier): Remove code duplication
7729 for parsing identifiers.
7730 * sem_attr.adb (Stream_Attribute_Available): Add missing
7731 comments and add Real_Rep actual for calls to
7732 Has_Stream_Attribute_Definition.
7733 * sem_cat.adb (Has_Read_Write_Attribute): Add Real_Rep actual
7734 for calls to Has_Stream_Attribute_Definition.
7735 (Has_Stream_Attribute_Definition): Remove local Real_Rep and fix
7736 recursive calls. Add default value for Real_Rep.
7737 * sem_cat.ads (Has_Stream_Attribute_Definition): Add new out
7738 parameter "Real_Rep".
7739 * sem_type.adb (Add_Entry): Add condition to avoid passing
7740 non-function calls to Function_Interp_Has_Abstract_Op.
7741 (Function_Interp_Has_Abstract_Op): Add missing comments and
7742 remove check for Is_Overloadable.
7743 * sem_util.adb (Derivation_Too_Early_To_Inherit): Remove
7744 duplicated code.
7745
77462022-01-06 Javier Miranda <miranda@adacore.com>
7747
7748 * contracts.adb (Restore_Original_Selected_Component): New
7749 subprogram that traverses a preanalyzed expression searching for
7750 dispatching calls to functions whose original node was a
7751 selected component, and replacing them with their original node.
7752 This functionality is required because the preanalyis of
7753 dispatching calls using the Object.Operation notation transforms
7754 such calls, and we need the original condition to properly
7755 inherit and extend the condition expression on tagged type
7756 derivations. This functionality was previously provided by the
7757 routine Install_Original_Selected_Component (as part of
7758 inheriting conditions); now it is performed as part of the
7759 preanalysis of the condition, thus avoiding repeatedly
7760 installing and restoring such nodes.
7761 (Install_Original_Selected_Component): Removed.
7762 (Restore_Dispatching_Calls): Removed.
7763
77642022-01-06 Piotr Trojanek <trojanek@adacore.com>
7765
7766 * treepr.adb (Visit_Node): Simplify repeated call to
7767 Next_Entity.
7768
77692022-01-06 Piotr Trojanek <trojanek@adacore.com>
7770
7771 * treepr.ads (Treepr, Print_Tree_List, Print_Tree_Elist): Fix
7772 style in comments.
7773 * treepr.adb (Serial_Numbers): Hash table instance.
7774 (Hash): Hashing routine.
7775 (Print_Field): Fix style.
7776 (Print_Init): Adapt to simple hash table.
7777 (Print_Term): Likewise.
7778 (Serial_Numbers): Likewise.
7779 (Set_Serial_Number): Likewise.
7780
77812022-01-06 Yannick Moy <moy@adacore.com>
7782
7783 * libgnat/s-expmod.adb: Mark in SPARK. Add ghost code for proof.
7784 * libgnat/s-expmod.ads: Mark in SPARK. Add ghost specifications.
7785
77862022-01-06 Yannick Moy <moy@adacore.com>
7787
7788 * libgnat/s-explllu.ads: Mark in SPARK.
7789 * libgnat/s-expllu.ads: Mark in SPARK.
7790 * libgnat/s-exponu.adb: Add loop invariants and needed
7791 assertions.
7792 * libgnat/s-exponu.ads: Add functional contract.
7793 * libgnat/s-expuns.ads: Mark in SPARK.
7794
0fbefa25
GA
77952022-01-05 Steve Baird <baird@adacore.com>
7796
7797 * exp_ch5.adb (Finish_Binding_Object_Declaration): Fix a bug
7798 that was introduced in the previous commit. The previous
7799 version initialized a Boolean constant Declare_Copy before the
7800 variable Decl had been initialized properly.
7801
78022022-01-05 Piotr Trojanek <trojanek@adacore.com>
7803
7804 * sem_prag.adb (Adjust_External_Name_Case): Use membership test.
7805
78062022-01-05 Piotr Trojanek <trojanek@adacore.com>
7807
7808 * exp_ch3.adb (Make_Controlling_Function_Wrappers): For
7809 GNATprove build the wrapper as an expression function.
7810
78112022-01-05 Piotr Trojanek <trojanek@adacore.com>
7812
7813 * exp_ch3.ads (Make_Controlling_Function_Wrappers): Move
7814 declaration from body to spec, so it can be called by
7815 SPARK-specific expansion.
7816 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Likewise.
7817 * exp_spark.adb (SPARK_Freeze_Type): Enable expansion of
7818 wrappers for function with controlling result types.
7819
78202022-01-05 Piotr Trojanek <trojanek@adacore.com>
7821
7822 * exp_dbug.adb, sem_dim.adb: Replace Add_Str_To_Name_Buffer with
7823 Add_Char_To_Name_Buffer.
7824
78252022-01-05 Piotr Trojanek <trojanek@adacore.com>
7826
7827 * gnatls.adb (Gnatls): Use Name_Find function.
7828 * targparm.adb (Get_Target_Parameters): Likewise.
7829
78302022-01-05 Bob Duff <duff@adacore.com>
7831
7832 * repinfo.adb (List_Entities): The code was assuming that if we
7833 encounter a package in the current scope, then it must be
7834 a (physically) nested package. That was wrong, because it could
7835 be a child package. Avoid recursing into child packages; they
7836 have not been annotated with representation information, and
7837 -gnatR2 queries that information.
7838
78392022-01-05 Marc Poulhiès <poulhies@adacore.com>
7840
7841 * libgnat/s-sopco3.ads, libgnat/s-sopco3.adb: Remove.
7842 * libgnat/s-sopco4.ads, libgnat/s-sopco4.adb: Remove.
7843 * libgnat/s-sopco5.ads, libgnat/s-sopco5.adb: Remove.
7844 * libgnat/s-strops.ads, libgnat/s-strops.adb: Remove.
7845 * Makefile.rtl (ADA_EXCLUDE_SRCS): Remove occurences of removed
7846 units.
7847 * gcc-interface/Make-lang.in (ada/sdefault.o): Remove
7848 dependencies on removed units.
7849 (GNATBIND_OBJS): Remove occurences of removed units.
7850
78512022-01-05 Piotr Trojanek <trojanek@adacore.com>
7852
7853 * exp_ch3.adb (Build_Dcheck_Function): Remove extra whitespace.
7854 * libgnarl/s-taskin.adb (Initialize_ATCB): Likewise.
7855
78562022-01-05 Piotr Trojanek <trojanek@adacore.com>
7857
7858 * exp_attr.adb (Build_Array_VS_Func): Remove explicit "IN" in
7859 spec of the generated array validation function; it was
7860 redundant, just like it would be in a user-written code.
7861
78622022-01-05 Piotr Trojanek <trojanek@adacore.com>
7863
7864 * exp_ch4.adb (Expand_N_Op_Ne): Fix whitespace.
7865 * sem_dim.adb (Expand_Put_Call_With_Symbol): Likewise.
7866 (Reduce): Likewise.
7867
78682022-01-05 Piotr Trojanek <trojanek@adacore.com>
7869
7870 * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Fix whitespace.
7871 * libgnat/a-cofuve.ads (Add): Likewise.
7872 * sem_ch3.adb (Build_Access_Subprogram_Wrapper): Likewise.
7873
78742022-01-05 Piotr Trojanek <trojanek@adacore.com>
7875
7876 * exp_ch3.adb (Make_Eq_Body, Make_Neq_Body,
7877 Make_Predefined_Primitive_Eq_Spec,
7878 Make_Predefined_Primitive_Specs): Fix whitespace.
7879
78802022-01-05 Etienne Servais <servais@adacore.com>
7881
7882 * sem_ch3.adb (Analyze_Component_Declaration): Rework condition
7883 to build subtypes.
7884 (Analyze_Object_Declaration): Likewise.
7885 (Should_Build_Subtype): New.
7886
78872022-01-05 Yannick Moy <moy@adacore.com>
7888
7889 * libgnat/s-arit128.adb: Mark in SPARK.
7890 * libgnat/s-arit128.ads: Add functional contracts.
7891
78922022-01-05 Piotr Trojanek <trojanek@adacore.com>
7893
7894 * sem_util.adb (String_From_Numeric_Literal): Simplify using
7895 membership tests and ranges; fix whitespace.
7896
78972022-01-05 Yannick Moy <moy@adacore.com>
7898
7899 * libgnat/s-expint.ads: Mark in SPARK. Adapt to change to
7900 package.
7901 * libgnat/s-explli.ads: Likewise.
7902 * libgnat/s-expllli.ads: Likewise.
7903 * libgnat/s-expont.adb: Add lemmas and ghost code.
7904 * libgnat/s-expont.ads: Add functional contract.
7905
79062022-01-05 Piotr Trojanek <trojanek@adacore.com>
7907
7908 * exp_disp.adb (Gen_Parameters_Profile): Remove redundant guard.
7909
79102022-01-05 Claire Dross <dross@adacore.com>
7911
7912 * libgnat/s-valuti.ads (Starts_As_Exponent_Format_Ghost): Ghost
7913 function to determine if a string is recognized as something
7914 which might be an exponent.
7915 (Is_Opt_Exponent_Format_Ghost): Ghost function to determine if a
7916 string has the correct format for an optional exponent.
7917 (Scan_Exponent): Use ghost functions to factorize contracts.
7918
79192022-01-05 Bob Duff <duff@adacore.com>
7920
7921 * exp_util.ads (Get_Current_Value_Condition): Belt: Add a
7922 postcondition that Val /= Var.
7923 * sem_util.adb (Known_Null): Suspenders: Raise Program_Error if
7924 Get_Current_Value_Condition returned the same value. This will
7925 be enabled even without assertions, because infinite recursion
7926 is a nuisance -- better to crash if this bug ever occurs.
7927
79282022-01-05 Piotr Trojanek <trojanek@adacore.com>
7929
7930 * exp_ch3.adb (Make_Null_Procedure_Specs): Simplify by reusing
7931 Copy_Subprogram_Spec.
7932 * sem_util.ads (Copy_Subprogram_Spec): Add New_Sloc parameter.
7933 * sem_util.adb (Copy_Subprogram_Spec): Pass New_Sloc to
7934 New_Copy_Tree.
7935
79362022-01-05 Yannick Moy <moy@adacore.com>
7937
7938 * libgnat/s-exnint.ads: Mark in SPARK. Adapt to change to
7939 package.
7940 * libgnat/s-exnlli.ads: Likewise.
7941 * libgnat/s-exnllli.ads: Likewise.
7942 * libgnat/s-exponn.adb: Add lemmas and ghost code. Secial case
7943 value zero as Left or Right to simplify proof.
7944 * libgnat/s-exponn.ads: Transform the generic function into a
7945 generic package with a function inside. Add a functional
7946 contract.
7947
79482022-01-05 Piotr Trojanek <trojanek@adacore.com>
7949
7950 * sem_ch12.adb (Instantiate_Formal_Subprogram): Remove redundant
7951 call to Set_Defining_Unit_Name; a similar call is done few lines
7952 below.
7953
79542022-01-05 Piotr Trojanek <trojanek@adacore.com>
7955
7956 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Create
7957 distinct copies of parameter lists for spec and body with
7958 Copy_Parameter_List; cleanup.
7959 (Make_Null_Procedure_Specs): Fix style in comments; remove a
7960 potentially unnecessary initialization of a local variable.
7961
79622022-01-05 Bob Duff <duff@adacore.com>
7963
7964 * einfo-utils.ads, einfo-utils.adb (Renamed_Entity Alias):
7965 Change Node_Id to Entity_Id.
7966
79672022-01-05 Piotr Trojanek <trojanek@adacore.com>
7968
7969 * sem_ch12.ads (Build_Function_Wrapper, Build_Operator_Wrapper):
7970 Remove unreferenced spec.
7971 * sem_ch12.adb (Build_Function_Wrapper, Build_Operator_Wrapper):
7972 Remove dead bodies.
7973
79742022-01-05 Yannick Moy <moy@adacore.com>
7975
7976 * libgnat/s-aridou.adb: Apply replacement.
7977
79782022-01-05 Yannick Moy <moy@adacore.com>
7979
7980 * libgnat/s-aridou.adb (Lemma_Word_Commutation): Fix for
7981 instances with other values of Single_Size.
7982
79832022-01-05 Marc Poulhiès <poulhies@adacore.com>
7984
7985 * doc/gnat_rm/implementation_defined_pragmas.rst (Compiler_Unit)
7986 (Compiler_Unit_Warning): Remove.
7987 * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Regenerate.
7988 * libgnat/g-dynhta.ads: Add comment indicating this unit is
7989 built during stage1.
7990 * libgnat/g-dyntab.ads: Likewise.
7991 * libgnat/g-graphs.ads: Likewise.
7992 * libgnat/g-lists.ads: Likewise.
7993 * libgnat/g-sets.ads: Likewise.
7994 * libgnat/gnat.ads: Likewise.
7995 * libgnat/s-pehage.ads: Likewise.
7996 * libgnat/s-resfil.ads: Likewise.
7997 * libgnat/s-rident.ads: Likewise.
7998 * libgnat/s-utf_32.ads: Likewise.
7999 * errout.ads: Update comment.
8000 * opt.ads (Opt): Remove Compiler_Unit.
8001 * par-ch5.adb (All_Pragmas): Remove call to Check_Compiler_Unit.
8002 * sem_prag.adb (Analyze_Pragma): Likewise.
8003 * sem_ch4.adb (Non_Static_Choice_Error, Analyze_If_Expression)
8004 (Analyze_Set_Membership, Record_Interp): Likewise.
8005 * sem_ch11.adb (Analyze_Raise_Expression): Likewise.
8006 * sem_ch6.adb: Remove Restric package reference.
8007 (Analyze_Extended_Return_Statement): Remove call to
8008 Check_Compiler_Unit.
8009 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings):
8010 Remove handling of Pragma_Compiler_Unit[_Warning}.
8011 * restrict.adb (Check_Compiler_Unit): Remove both.
8012 * restrict.ads: Likewise.
8013 * snames.ads-tmpl (Pragma_Id): Remove
8014 Pragma_Compiler_Unit[_Warning].
8015 * libgnat/a-assert.ads: Remove pragma Compiler_Unit_Warning.
8016 * libgnat/a-chlat1.ads: Likewise.
8017 * libgnat/a-elchha.adb: Likewise.
8018 * libgnat/a-elchha.ads: Likewise.
8019 * libgnat/a-ioexce.ads: Likewise.
8020 * libgnat/a-strhas.ads: Likewise.
8021 * libgnat/g-byorma.adb: Likewise.
8022 * libgnat/g-byorma.ads: Likewise.
8023 * libgnat/g-dyntab.adb: Likewise.
8024 * libgnat/g-heasor.ads: Likewise.
8025 * libgnat/g-hesora.adb: Likewise.
8026 * libgnat/g-hesora.ads: Likewise.
8027 * libgnat/g-htable.adb: Likewise.
8028 * libgnat/g-htable.ads: Likewise.
8029 * libgnat/g-spchge.adb: Likewise.
8030 * libgnat/g-spchge.ads: Likewise.
8031 * libgnat/g-speche.adb: Likewise.
8032 * libgnat/g-speche.ads: Likewise.
8033 * libgnat/g-table.ads: Likewise.
8034 * libgnat/g-u3spch.adb: Likewise.
8035 * libgnat/g-u3spch.ads: Likewise.
8036 * libgnat/interfac.ads: Likewise.
8037 * libgnat/s-addope.adb: Likewise.
8038 * libgnat/s-addope.ads: Likewise.
8039 * libgnat/s-assert.adb: Likewise.
8040 * libgnat/s-assert.ads: Likewise.
8041 * libgnat/s-bitops.adb: Likewise.
8042 * libgnat/s-bitops.ads: Likewise.
8043 * libgnat/s-carun8.adb: Likewise.
8044 * libgnat/s-carun8.ads: Likewise.
8045 * libgnat/s-casuti.adb: Likewise.
8046 * libgnat/s-casuti.ads: Likewise.
8047 * libgnat/s-conca2.adb: Likewise.
8048 * libgnat/s-conca2.ads: Likewise.
8049 * libgnat/s-conca3.adb: Likewise.
8050 * libgnat/s-conca3.ads: Likewise.
8051 * libgnat/s-conca4.adb: Likewise.
8052 * libgnat/s-conca4.ads: Likewise.
8053 * libgnat/s-conca5.adb: Likewise.
8054 * libgnat/s-conca5.ads: Likewise.
8055 * libgnat/s-conca6.adb: Likewise.
8056 * libgnat/s-conca6.ads: Likewise.
8057 * libgnat/s-conca7.adb: Likewise.
8058 * libgnat/s-conca7.ads: Likewise.
8059 * libgnat/s-conca8.adb: Likewise.
8060 * libgnat/s-conca8.ads: Likewise.
8061 * libgnat/s-conca9.adb: Likewise.
8062 * libgnat/s-conca9.ads: Likewise.
8063 * libgnat/s-crc32.adb: Likewise.
8064 * libgnat/s-crc32.ads: Likewise.
8065 * libgnat/s-crtl.ads: Likewise.
8066 * libgnat/s-excdeb.adb: Likewise.
8067 * libgnat/s-excdeb.ads: Likewise.
8068 * libgnat/s-except.ads: Likewise.
8069 * libgnat/s-exctab.adb: Likewise.
8070 * libgnat/s-exctab.ads: Likewise.
8071 * libgnat/s-finmas.ads: Likewise.
8072 * libgnat/s-htable.adb: Likewise.
8073 * libgnat/s-htable.ads: Likewise.
8074 * libgnat/s-mastop.adb: Likewise.
8075 * libgnat/s-mastop.ads: Likewise.
8076 * libgnat/s-memory.adb: Likewise.
8077 * libgnat/s-memory.ads: Likewise.
8078 * libgnat/s-os_lib.ads: Likewise.
8079 * libgnat/s-parame.adb: Likewise.
8080 * libgnat/s-parame.ads: Likewise.
8081 * libgnat/s-parame__posix2008.ads: Likewise.
8082 * libgnat/s-purexc.ads: Likewise.
8083 * libgnat/s-resfil.adb: Likewise.
8084 * libgnat/s-restri.adb: Likewise.
8085 * libgnat/s-restri.ads: Likewise.
8086 * libgnat/s-secsta.adb: Likewise.
8087 * libgnat/s-secsta.ads: Likewise.
8088 * libgnat/s-soflin.adb: Likewise.
8089 * libgnat/s-soflin.ads: Likewise.
8090 * libgnat/s-sopco3.adb: Likewise.
8091 * libgnat/s-sopco3.ads: Likewise.
8092 * libgnat/s-sopco4.adb: Likewise.
8093 * libgnat/s-sopco4.ads: Likewise.
8094 * libgnat/s-sopco5.adb: Likewise.
8095 * libgnat/s-sopco5.ads: Likewise.
8096 * libgnat/s-spsufi.ads: Likewise.
8097 * libgnat/s-stache.adb: Likewise.
8098 * libgnat/s-stache.ads: Likewise.
8099 * libgnat/s-stalib.adb: Likewise.
8100 * libgnat/s-stalib.ads: Likewise.
8101 * libgnat/s-stoele.adb: Likewise.
8102 * libgnat/s-stoele.ads: Likewise.
8103 * libgnat/s-strcom.adb: Likewise.
8104 * libgnat/s-strcom.ads: Likewise.
8105 * libgnat/s-strhas.adb: Likewise.
8106 * libgnat/s-string.adb: Likewise.
8107 * libgnat/s-string.ads: Likewise.
8108 * libgnat/s-strops.adb: Likewise.
8109 * libgnat/s-strops.ads: Likewise.
8110 * libgnat/s-ststop.adb: Likewise.
8111 * libgnat/s-ststop.ads: Likewise.
8112 * libgnat/s-traceb.adb: Likewise.
8113 * libgnat/s-traceb.ads: Likewise.
8114 * libgnat/s-traent.adb: Likewise.
8115 * libgnat/s-traent.ads: Likewise.
8116 * libgnat/s-utf_32.adb: Likewise.
8117 * libgnat/s-unstyp.ads: Likewise.
8118 * libgnat/s-wchcnv.adb: Likewise.
8119 * libgnat/s-wchcnv.ads: Likewise.
8120 * libgnat/s-wchcon.adb: Likewise.
8121 * libgnat/s-wchcon.ads: Likewise.
8122 * libgnat/s-wchjis.adb: Likewise.
8123 * libgnat/s-wchjis.ads: Likewise.
8124
81252022-01-05 Arnaud Charlet <charlet@adacore.com>
8126
8127 * osint.adb (File_Names_Equal): Declare To_Lower locally.
8128 * osint.ads (Null_FD): New.
8129 * fmap.adb, sinput-l.adb, targparm.adb: Adapt to changes above.
8130 * switch-b.adb (Scan_Debug_Switches): Use Is_Regular_File to
8131 simplify the bootstrap dependencies.
8132
a4ae8c37
GA
81332022-01-03 Jakub Jelinek <jakub@redhat.com>
8134
8135 * gnat_ugn.texi: Bump @copying's copyright year.
8136 * gnat_rm.texi: Likewise.
8137
848830dc 8138\f
6123f29a 8139Copyright (C) 2022 Free Software Foundation, Inc.
848830dc
PMR
8140
8141Copying and distribution of this file, with or without modification,
8142are permitted in any medium without royalty provided the copyright
8143notice and this notice are preserved.