]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/ada/ChangeLog
Daily bump.
[thirdparty/gcc.git] / gcc / ada / ChangeLog
1 2021-07-01 Eric Botcazou <ebotcazou@adacore.com>
2
3 PR ada/101094
4 * exp_attr.adb (Get_Integer_Type): Return an integer type with the
5 same signedness as the input type.
6
7 2021-06-29 Richard Kenner <kenner@adacore.com>
8
9 * sem_util.adb (Visit_Node): Add handling for N_Block_Statement
10 with declarations.
11
12 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
13
14 * einfo-utils.adb
15 (Unknown_Alignment): Simply negate the Known_ counterpart.
16 (Unknown_Component_Bit_Offset): Likewise.
17 (Unknown_Esize): Likewise.
18 (Unknown_Normalized_First_Bit): Likewise.
19 (Unknown_Normalized_Position): Likewise.
20 (Unknown_Normalized_Position_Max): Likewise.
21 (Unknown_RM_Size): Likewise.
22
23 2021-06-29 Boris Yakobowski <yakobowski@adacore.com>
24
25 * exp_ch4.adb (Expand_N_Op_Mod): Remove special case for mod -1
26 in CodePeer_Mode.
27
28 2021-06-29 Aleksandra Pasek <pasek@adacore.com>
29
30 * libgnat/s-objrea.adb (EM_AARCH64): New Constant.
31 (Initialize): Handle EM_AARCH64 case.
32 (Read_Address): Handle AARCH64 case.
33 * libgnat/s-objrea.ads (Object_Arch): Add AARCH64 record
34 component.
35
36 2021-06-29 Bob Duff <duff@adacore.com>
37
38 * sem_ch13.adb (Analyze_Record_Representation_Clause): Call
39 Set_Entity_With_Checks instead of Set_Entity, so we perform the
40 check for correct casing.
41 * style.adb (Check_Identifier): Minor comment improvement.
42 Cleanup overly complicated code.
43
44 2021-06-29 Ed Schonberg <schonberg@adacore.com>
45
46 * exp_aggr.adb (Convert_Aggr_In_Object_Decl): After expansion of
47 the aggregate, the expression can be removed from the
48 declaration, except if the object is class-wide, in which case
49 the aggregate provides the actual type. In other cases the
50 presence of the expression may lead to spurious freezing issue.
51 * exp_ch3.adb (Expand_N_Object_Declaration): If the expression
52 in the declaration is an aggregate with delayed expansion (as is
53 the case for objects of a limited type, or a subsequent address
54 specification) the aggregate must be resolved at this point.
55 This resolution must not include expansion, because the
56 expansion of the enclosing declaration will construct the
57 necessary aggregate expansion.
58
59 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
60
61 * errout.ads (Adjust_Name_Case): Remove obsolete and now unused
62 variant.
63 * errout.adb (Adjust_Name_Case): Likewise; fix variant that uses
64 a custom buffer to also use it for names in Standard_Location.
65
66 2021-06-29 Eric Botcazou <ebotcazou@adacore.com>
67
68 * sem_ch12.adb (Freeze_Subprogram_Body): Add missing "freeze".
69 (Install_Body): Likewise.
70
71 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
72
73 * adaint.c (__gnat_portable_spawn): Revert change that
74 introduced setting of __gnat_in_child_after_fork.
75
76 2021-06-29 Patrick Bernardi <bernardi@adacore.com>
77
78 * libgnarl/s-tasdeb.ads (Known_Tasks): Add Atomic_Components
79 aspect.
80
81 2021-06-29 Doug Rupp <rupp@adacore.com>
82
83 * Makefile.rtl (x86_64-vx7r2) [EXTRA_GNATRTL_TASKING_OBJS]: Move
84 i-vxinco.o out of RTP runtime.
85
86 2021-06-29 Claire Dross <dross@adacore.com>
87
88 * libgnat/a-cfdlli.ads: Use pragma Assertion_Policy to disable
89 pre and postconditions.
90 * libgnat/a-cfhama.ads: Likewise.
91 * libgnat/a-cfhase.ads: Likewise.
92 * libgnat/a-cfinve.ads: Likewise.
93 * libgnat/a-cforma.ads: Likewise.
94 * libgnat/a-cforse.ads: Likewise.
95 * libgnat/a-cofove.ads: Likewise.
96
97 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
98
99 * sem_util.ads (Get_Fullest_View): Refill comment; remove extra
100 extra after period.
101 * sem_util.adb (Get_Fullest_View): Fix style.
102
103 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
104
105 * sem_ch3.adb (Analyze_Declarations): Remove explicit check for
106 missing, because a subsequent call to Is_Empty_List will detect
107 them anyway.
108
109 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
110
111 * freeze.adb (Freeze_All): Simplify by reusing
112 Is_Subprogram_Or_Entry.
113 * sem_ch11.adb (Analyze_Handled_Statement): Likewise.
114
115 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
116
117 * sem_warn.adb (Warn_On_Overlapping_Actuals): Prevent cascaded
118 errors once for the subprogram call, not for every pair of
119 actual parameters.
120
121 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
122
123 * sem_ch3.adb (Is_Local_Type): Simplify by reusing Scope_Within.
124
125 2021-06-29 Gary Dismukes <dismukes@adacore.com>
126
127 * sem_ch6.ads (Can_Override_Operator): Function declaration
128 moved from package body to package spec.
129 * sem_ch6.adb (Check_Overriding_Indicator): Now use test of
130 whether the subprogram's Chars is an operator name, to handle
131 cases of function instances whose entity is
132 N_Defining_Identifier rather than N_Defining_Operator_Symbol.
133 (Can_Override_Operator): Function declaration moved to package
134 spec. Now use test of whether the subprogram's Chars is an
135 operator name, to handle cases of function instances whose
136 entity is N_Defining_Identifier rather than
137 N_Defining_Operator_Symbol.
138 * sem_ch8.adb (Analyze_Renamed_Subprogram): Check for
139 possibility of an overridden predefined operator, and suppress
140 the "not overriding" message in that case.
141
142 2021-06-29 Doug Rupp <rupp@adacore.com>
143
144 * Makefile.rtl: Add a new ifeq for vx7r2 shared gnatlib.
145
146 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
147
148 * exp_attr.adb (Build_Array_VS_Func): Restore uses of
149 Validated_View.
150 (Build_Record_VS_Func): Likewise.
151 (Expand_N_Attribute_Reference): Likewise.
152 * sem_util.adb (Validated_View): Behave as an identity function
153 for arrays and scalars.
154
155 2021-06-29 Bob Duff <duff@adacore.com>
156
157 * atree.adb, atree.ads (Parent, Set_Parent): Assert node is
158 Present.
159 (Copy_Parent, Parent_Kind): New helper routines.
160 * gen_il-gen.adb: Add with clause.
161 * nlists.adb (Parent): Assert Parent of list is Present.
162 * aspects.adb, checks.adb, exp_aggr.adb, exp_ch6.adb,
163 exp_util.adb, lib-xref-spark_specific.adb, osint.ads,
164 sem_ch12.adb, sem_ch13.adb, sem_ch3.adb, sem_ch6.adb,
165 sem_dim.adb, sem_prag.adb, sem_res.adb, sem_util.adb,
166 treepr.adb: Do not call Parent and Set_Parent on the Empty node.
167 * libgnat/a-stwiun__shared.adb, libgnat/a-stzunb__shared.adb:
168 Minor: Fix typos in comments.
169 * einfo.ads: Minor comment update.
170 * sinfo-utils.ads, sinfo-utils.adb (Parent_Kind, Copy_Parent):
171 New functions.
172
173 2021-06-29 Eric Botcazou <ebotcazou@adacore.com>
174
175 * repinfo-input.adb (Read_JSON_Stream): Fix typo.
176
177 2021-06-29 Eric Botcazou <ebotcazou@adacore.com>
178
179 * rtsfind.ads (RE_Id): Change RE_Valid_Enumeration_Value_NN into
180 RE_Valid_Value_Enumeration_NN.
181 (RE_Unit_Table): Adjust to above renaming.
182 * exp_imgv.adb (Expand_Valid_Value_Attribute): Likewise.
183 * libgnat/s-valuen.ads (Invalid): Remove.
184 (Value_Enumeration_Pos): Move to...
185 * libgnat/s-valuen.adb (Value_Enumeration_Pos): ...here.
186 Return -1 instead of Invalid.
187 (Value_Enumeration): Compare against 0 instead of Invalid.
188 (Valid_Enumeration_Value): Likewise. Rename to...
189 (Valid_Value_Enumeration): ...this.
190 * libgnat/s-vaenu8.ads (Valid_Enumeration_Value_8): Rename into...
191 (Valid_Value_Enumeration_8): ...this.
192 * libgnat/s-vaen16.ads (Valid_Enumeration_Value_16): Rename into...
193 (Valid_Value_Enumeration_16): ...this.
194 * libgnat/s-vaen32.ads (Valid_Enumeration_Value_32): Rename into...
195 (Valid_Value_Enumeration_32): ...this.
196
197 2021-06-29 Bob Duff <duff@adacore.com>
198
199 * einfo.ads (Component_Bit_Offset, Component_Size): Update
200 documentation: Repinfo is the package where these negative
201 values are documented.
202 * einfo-utils.adb (Known_Component_Size,
203 Known_Static_Component_Size, Unknown_Component_Size): Remove
204 calls to Implementation_Base_Type, because Component_Size is an
205 Impl_Base_Type_Only field (see Gen_Entities).
206 * sem_ch13.ads, sem_ch13.adb (Check_Size): Do not set Esize and
207 RM_Size. This is unnecessary in the case of Size. For
208 Component_Size, it is wrong, because we would be setting the
209 Esize and RM_Size of the component type.
210
211 2021-06-29 Pascal Obry <obry@adacore.com>
212
213 * s-oscons-tmplt.c: Add some OS constants.
214
215 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
216
217 * sem_util.ads (Validated_View): Fix style in comment.
218 * sem_util.adb (Validated_View): Rewrite in recursive style.
219
220 2021-06-29 Eric Botcazou <ebotcazou@adacore.com>
221
222 * Make-generated.in (ada/stamp-gen_il): Ignore errors from
223 running gen_il-main.
224
225 2021-06-29 Richard Kenner <kenner@adacore.com>
226
227 * gen_il-gen-gen_entities.adb (Record_Field_Kind,
228 Allocatable_Kind): Add new abstract kinds.
229 (Constant_Or_Variable_Kind): Likewise.
230 (E_Constant, E_Variable, E_Loop_Parameter): Use them.
231 (E_Discriminant, E_Component): Likewise.
232 * gen_il-types.ads (type Opt_Type_Enum): Add them.
233
234 2021-06-29 Bob Duff <duff@adacore.com>
235
236 * gen_il-gen.adb (Put_C_Type_And_Subtypes): Put the correct
237 numbers.
238 * gen_il-internals.ads, gen_il-internals.adb: (Pos): Remove this
239 function. It was assuming that the order of the enumeration
240 literals in Type_Enum is the same as the order of the generated
241 types Node_Kind and Entity_Kind, which is not true.
242
243 2021-06-29 Piotr Trojanek <trojanek@adacore.com>
244
245 * exp_attr.adb (Expand_N_Attribute_Reference): Explicitly use
246 Validated_View for record objects.
247
248 2021-06-28 Martin Sebor <msebor@redhat.com>
249
250 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu):
251 Replace TREE_NO_WARNING with suppress_warning.
252 (gnat_gimplify_expr): Same.
253 * gcc-interface/utils.c (gnat_pushdecl): Same.
254
255 2021-06-21 Gary Dismukes <dismukes@adacore.com>
256
257 * checks.adb (Selected_Range_Checks): In the case of a
258 qualified_expression where the qualifying subtype is an
259 unconstrained array subtype with fixed lower bounds for some of
260 its indexes, generate tests to check that those bounds are equal
261 to the corresponding lower bounds of the qualified array object.
262
263 2021-06-21 Bob Duff <duff@adacore.com>
264
265 * libgnat/s-valuen.ads (Value_Enumeration,
266 Valid_Enumeration_Value): Inline.
267 (Value_Enumeration_Pos): Add Pure_Function.
268
269 2021-06-21 Justin Squirek <squirek@adacore.com>
270
271 * doc/gnat_rm/implementation_defined_pragmas.rst: Document new
272 feature under pragma Extensions_Allowed.
273 * gnat_rm.texi: Regenerate.
274 * errout.adb, errout.ads (Error_Msg_GNAT_Extension): Created to
275 issue errors when parsing extension only constructs.
276 * exp_ch11.adb, exp_ch11.ads (Expand_N_Raise_When_Statement):
277 Created to expand raise ... when constucts.
278 * exp_ch5.adb, exp_ch5.ads (Expand_N_Goto_When_Statement):
279 Created to expand goto ... when constructs.
280 * exp_ch6.adb, exp_ch6.ads (Expand_N_Return_When_Statement):
281 Created to expand return ... when constructs.
282 * expander.adb (Expand): Add case entries for "when" constructs.
283 * gen_il-gen-gen_nodes.adb, gen_il-types.ads: Add entries for
284 "when" constructs.
285 * par-ch11.adb (P_Raise_Statement): Add processing for raise ...
286 when.
287 * par-ch5.adb (Missing_Semicolon_On_Exit): Renamed to
288 Missing_Semicolon_On_When and moved to par-util.adb.
289 * par-ch6.adb (Get_Return_Kind): Renamed from Is_Simple and
290 processing added for "return ... when" return kind.
291 (Is_Simple): Renamed to Get_Return_Kind.
292 (P_Return_Statement): Add case for return ... when variant of
293 return statement.
294 * par-util.adb, par.adb (Missing_Semicolon_On_When): Added to
295 centeralize parsing of "when" keywords in the context of "when"
296 constructs.
297 * sem.adb (Analyze): Add case for "when" constructs.
298 * sem_ch11.adb, sem_ch11.ads (Analyze_Raise_When_Statement):
299 Created to analyze raise ... when constructs.
300 * sem_ch5.adb, sem_ch5.ads (Analyzed_Goto_When_Statement):
301 Created to analyze goto ... when constructs.
302 * sem_ch6.adb, sem_ch6.ads (Analyze_Return_When_Statement):
303 Created to analyze return ... when constructs.
304 * sprint.adb (Sprint_Node_Actual): Add entries for new "when"
305 nodes.
306
307 2021-06-21 Steve Baird <baird@adacore.com>
308
309 * Make-generated.in (GEN_IL_FLAGS): Keep only GNAT flags.
310 (ada/stamp-gen_il): Remove dependencies on libgnat/ sources. Do not
311 copy libgnat/ sources locally and tidy up.
312 * Makefile.rtl: Include object files for new Text_Buffer units
313 in the GNATRTL_NONTASKING_OBJS list.
314 * exp_put_image.ads, exp_put_image.adb: Update Rtsfind calls to
315 match new specs. For example, calls to RE_Sink are replaced with
316 calls to RE_Root_Buffer_Type. Update comments and change
317 subprogram names accordingly (e.g., Preload_Sink is changed to
318 Preload_Root_Buffer_Type).
319 * impunit.adb: Add 6 new predefined units (Text_Buffers and 5
320 child units thereof).
321 * rtsfind.ads, rtsfind.adb: Add interfaces for accessing the
322 Ada.Strings.Text_Buffers package and declarations
323 therein (including the Unbounded child unit). Do not (yet)
324 delete interfaces for accessing the old Text_Output package.
325 * sem_attr.adb (Check_Put_Image_Attribute): Replace RE_Sink uses
326 with RE_Root_Buffer_Type and update comments accordingly.
327 * sem_ch10.adb (Analyze_Compilation_Unit): Update call to
328 reflect name change of callee (that is, the former Preload_Sink
329 is now Preload_Root_Buffer_Type).
330 * sem_ch13.adb (Has_Good_Profile): Replace RE_Sink use with
331 RE_Root_Buffer_Type.
332 (Build_Spec): Update comment describing a parameter type.
333 * gen_il.ads: Remove clauses for the old Text_Output package and
334 add them for Ada.Streams.Stream_IO.
335 (Sink): Declare.
336 (Create_File): Likewise.
337 (Increase_Indent): Likewise.
338 (Decrease_Indent): Likewise.
339 (Put): Likewise.
340 (LF): Likewise.
341 * gen_il.adb: Add clauses for Ada.Streams.Stream_IO.
342 (Create_File): New procedure.
343 (Increase_Indent): Likewise.
344 (Decrease_Indent): Likewise.
345 (Put): New procedures.
346 * gen_il-gen.adb: Add clauses for Ada.Text_IO. Replace
347 Sink'Class with Sink throughout. Use string concatenation and
348 LF marker instead of formatted strings and "\n" marker. Update
349 Indent/Outdent calls to use new Increase_Indent/Decrease_Indent
350 names.
351 (Put_Membership_Query_Decl): Remove.
352 * gen_il-internals.ads: Replace Sink'Class with Sink throughout.
353 (Ptypes): Remove.
354 (Pfields): Likewise.
355 * gen_il-internals.adb: Remove clauses for GNAT.OS_Lib and
356 Ada.Strings.Text_Buffers.Files. Replace Sink'Class with Sink
357 throughout. Use string concatenation and LF marker instead of
358 formatted strings and "\n" marker.
359 (Stdout): Remove.
360 (Ptypes): Likewise.
361 (Pfields): Likewise.
362 * libgnarl/s-putaim.ads: Modify context clause, update
363 declaration of subtype Sink to refer to
364 Text_Buffers.Root_Buffer_Type instead of the old
365 Text_Output.Sink type.
366 * libgnarl/s-putaim.adb: Modify context clause and add use
367 clause to refer to Text_Buffers package.
368 * libgnat/a-cbdlli.ads, libgnat/a-cbdlli.adb,
369 libgnat/a-cbhama.ads, libgnat/a-cbhama.adb,
370 libgnat/a-cbhase.ads, libgnat/a-cbhase.adb,
371 libgnat/a-cbmutr.ads, libgnat/a-cbmutr.adb,
372 libgnat/a-cborma.ads, libgnat/a-cborma.adb,
373 libgnat/a-cborse.ads, libgnat/a-cborse.adb,
374 libgnat/a-cdlili.ads, libgnat/a-cdlili.adb,
375 libgnat/a-cidlli.ads, libgnat/a-cidlli.adb,
376 libgnat/a-cihama.ads, libgnat/a-cihama.adb,
377 libgnat/a-cihase.ads, libgnat/a-cihase.adb,
378 libgnat/a-cimutr.ads, libgnat/a-cimutr.adb,
379 libgnat/a-ciorma.ads, libgnat/a-ciorma.adb,
380 libgnat/a-ciormu.ads, libgnat/a-ciormu.adb,
381 libgnat/a-ciorse.ads, libgnat/a-ciorse.adb,
382 libgnat/a-coboho.ads, libgnat/a-coboho.adb,
383 libgnat/a-cobove.ads, libgnat/a-cobove.adb,
384 libgnat/a-cohama.ads, libgnat/a-cohama.adb,
385 libgnat/a-cohase.ads, libgnat/a-cohase.adb,
386 libgnat/a-coinho.ads, libgnat/a-coinho.adb,
387 libgnat/a-coinho__shared.ads, libgnat/a-coinho__shared.adb,
388 libgnat/a-coinve.ads, libgnat/a-coinve.adb,
389 libgnat/a-comutr.ads, libgnat/a-comutr.adb,
390 libgnat/a-convec.ads, libgnat/a-convec.adb,
391 libgnat/a-coorma.ads, libgnat/a-coorma.adb,
392 libgnat/a-coormu.ads, libgnat/a-coormu.adb,
393 libgnat/a-coorse.ads, libgnat/a-coorse.adb,
394 libgnat/a-nbnbin.ads, libgnat/a-nbnbin.adb,
395 libgnat/a-nbnbin__gmp.adb, libgnat/a-nbnbre.ads,
396 libgnat/a-nbnbre.adb, libgnat/a-strunb.ads,
397 libgnat/a-strunb.adb, libgnat/a-strunb__shared.ads,
398 libgnat/a-strunb__shared.adb, libgnat/s-rannum.ads,
399 libgnat/s-rannum.adb: Modify Put_Image procedure used in
400 Put_Image aspect specification to conform to Ada profile
401 rules (in particular, the first parameter shall be of type
402 Ada.Strings.Text_Buffers.Root_Buffer_Type'Class).
403 * libgnat/a-sttebu.ads, libgnat/a-sttebu.adb,
404 libgnat/a-stbubo.ads, libgnat/a-stbubo.adb,
405 libgnat/a-stbufi.ads, libgnat/a-stbufi.adb,
406 libgnat/a-stbufo.ads, libgnat/a-stbufo.adb,
407 libgnat/a-stbuun.ads, libgnat/a-stbuun.adb,
408 libgnat/a-stbuut.ads, libgnat/a-stbuut.adb: A new predefined
409 unit, Ada.Strings.Text_Buffers, and five child units. Two of
410 the five are RM-defined: Bounded and Unbounded. The remaining
411 three are GNAT-defined: Files, Utils, and Formatting. The buffer
412 type corresponding to an output file, type Files.File_Buffer, is
413 simpler (and perhaps therefore slower) than its predecessor.
414 Caching similar to what was being done before could be added
415 later if that seems appropriate.
416 * libgnat/s-putima.ads: Modify context clause, update
417 declaration of subtype Sink to refer to
418 Text_Buffers.Root_Buffer_Type instead of the old
419 Text_Output.Sink type.
420 * libgnat/s-putima.adb: Modify context clause. Update
421 Indent/Outdent calls to use new Increase_Indent/Decrease_Indent
422 names; ditto for "Put_String => Put" name change.
423 * libgnat/a-stteou__bootstrap.ads: Delete.
424
425 2021-06-21 Eric Botcazou <ebotcazou@adacore.com>
426
427 * exp_ch5.adb (Expand_Assign_Array_Bitfield_Fast): If big-endian
428 ordering is in effect for the operands and they are small,
429 adjust the unchecked conversions done around them.
430
431 2021-06-21 Richard Kenner <kenner@adacore.com>
432
433 * einfo.ads (Return_Statement): Add documentation.
434 * exp_ch6.adb (Expand_N_Extended_Return_Statement): Set it.
435 * gen_il-fields.ads: Add it.
436 * gen_il-gen-gen_entities.adb: Add it.
437
438 2021-06-21 Bob Duff <duff@adacore.com>
439
440 * rtsfind.ads, libgnat/s-bitfie.ads, libgnat/s-bituti.adb,
441 libgnat/s-bituti.ads (Fast_Copy_Bitfield): New run-time library
442 function to copy bit fields faster than Copy_Bitfield. Cannot be
443 called with zero-size bit fields. Remove obsolete ??? comments
444 from s-bituti.adb; we already do "avoid calling this if
445 Forwards_OK is False".
446 * exp_ch5.adb (Expand_Assign_Array_Loop_Or_Bitfield,
447 Expand_Assign_Array_Bitfield_Fast): Generate calls to
448 Fast_Copy_Bitfield when appropriate.
449 * sem_util.adb, sem_util.ads (Get_Index_Bounds): Two new
450 functions for getting the index bounds. These are more
451 convenient than the procedure of the same name, because they can
452 be used to initialize constants.
453
454 2021-06-21 Ed Schonberg <schonberg@adacore.com>
455
456 * gen_il-fields.ads: Add Default_Subtype_Mark to enumeration
457 type for fields.
458 * gen_il-gen-gen_nodes.adb: Add call to create new field for
459 Formal_Type_Declaration node.
460 * par-ch12.adb (P_Formal_Type_Declaration): in Ada_2022 mode,
461 recognize new syntax for default: "or use subtype_mark".
462 (P_Formal_Type_Definition): Ditto for the case of a formal
463 incomplete type.
464 * sinfo.ads: Add field Default_Subtype_Mark to
465 N_Formal_Type_Declaration.
466 * sem_ch12.adb (Validate_Formal_Type_Default): New procedure, to
467 apply legality rules to default subtypes in formal type
468 declarations. Some legality rules apply to all defaults, such as
469 the requirement that the default for a formal type that depends
470 on previous formal entities must itself be a previously declared
471 formal of the same unit. Other checks are kind- specific.
472 (Analyze_Associations): Use specified default if there is no
473 actual provided for a formal type in an instance.
474 (Analyze_Formal_Type_Declaration): Call
475 Validate_Formal_Type_Default when default subtype is present.
476
477 2021-06-21 Bob Duff <duff@adacore.com>
478
479 * libgnat/s-valuen.ads, libgnat/s-valuen.adb
480 (Value_Enumeration_Pos): New function to compute the 'Pos of the
481 enumeration literal for a given String. Return a special value
482 instead of raising an exception on invalid input. Called by both
483 Valid_Enumeration_Image and Value_Enumeration.
484 (Valid_Enumeration_Image): Return a Boolean indicating whether
485 the String is a valid Image for the given enumeration type.
486 (Value_Enumeration): Implement in terms of
487 Value_Enumeration_Pos.
488 * libgnat/s-vaenu8.ads, libgnat/s-vaen16.ads,
489 libgnat/s-vaen32.ads: Rename Valid_Enumeration_Image from the
490 instances.
491 * libgnat/s-valuti.ads: Correct documentation (it was not true
492 for the null string).
493 * libgnat/s-valuti.adb (Normalize_String): Do not raise
494 Constraint_Error for the null string, nor strings containing
495 nothing but blanks, so that Valid_Enumeration_Image can return
496 False in these cases, rather than raising an exception.
497 * rtsfind.ads (RE_Value_Enumeration_8, RE_Value_Enumeration_16,
498 RE_Value_Enumeration_32): New functions.
499 (RTE_Available): Improve comment (E doesn't have to be a
500 subprogram, although that's the usual case).
501 * sem_attr.adb (nalid_Value): Semantic analysis for new
502 attribute.
503 * exp_attr.adb: Call Expand_Valid_Value_Attribute for new
504 attribute.
505 * exp_imgv.ads, exp_imgv.adb (Expand_Valid_Value_Attribute): New
506 procedure to expand Valid_Value into a call to
507 Valid_Enumeration_Image_NN.
508 (Expand_Value_Attribute): Misc code cleanups. Remove two ???
509 mark comments. RTE_Available won't work here. For one thing,
510 RTE_Available (X) shouldn't be called until the compiler has
511 decided to make use of X (see comments on RTE_Available), and in
512 this case we're trying to AVOID calling something.
513 * snames.ads-tmpl: New attribute name.
514 * doc/gnat_rm/implementation_defined_attributes.rst: Document
515 new attribute.
516 * gnat_rm.texi: Regenerate.
517
518 2021-06-21 Eric Botcazou <ebotcazou@adacore.com>
519
520 * fe.h (Assume_No_Invalid_Values): Declare.
521 * opt.ads (Assume_No_Invalid_Values): Add warning comment.
522
523 2021-06-21 Bob Duff <duff@adacore.com>
524
525 * libgnat/s-bituti.ads (Small_Size): Do not include 0 in this
526 type.
527 * libgnat/s-bituti.adb (Copy_Bitfield): Do nothing for 0-bit
528 bitfields.
529
530 2021-06-21 Ghjuvan Lacambre <lacambre@adacore.com>
531
532 * exp_ch9.adb (Build_Simple_Entry_Call): Add comment.
533 * libgnat/s-rannum.adb (Random): Update comment.
534 * libgnat/s-rannum.ads (Generator): Update comment.
535
536 2021-06-21 Piotr Trojanek <trojanek@adacore.com>
537
538 * doc/gnat_rm/representation_clauses_and_pragmas.rst (Address
539 Clauses): Fix unbalanced parens.
540 * gnat_rm.texi: Regenerate.
541
542 2021-06-21 Ghjuvan Lacambre <lacambre@adacore.com>
543
544 * errout.adb (Handle_Serious_Error): Capitalize comment.
545 * exp_dbug.adb (Set_Entity_Name): Capitalize sentence.
546 * exp_dist.adb (Expand_All_Calls_Remote_Subprogram_Call): Fix
547 typo.
548 * sem_ch3.adb (Modular_Type_Declaration): Add space after comma.
549
550 2021-06-21 Ghjuvan Lacambre <lacambre@adacore.com>
551
552 * debug.adb: Document -gnatd_U as taken.
553 * err_vars.ads (Warning_Doc_Switch): Set to True.
554 * errout.ads (Errout): Update documentation.
555 * gnat1drv.adb (Adjust_Global_Switches): React to -gnatd_U.
556 * hostparm.ads (Tag_Errors): Set to True.
557 * opt.ads (Unique_Error_Tag): Document -gnatd_U.
558
559 2021-06-21 Eric Botcazou <ebotcazou@adacore.com>
560
561 * urealp.ads (UR_Write_To_JSON): Declare.
562 * urealp.adb (Decimal_Exponent_Hi): Treat numbers in base 10
563 specially and rewrite handling of numbers in other bases.
564 (Decimal_Exponent_Lo): Likewise.
565 (Normalize): Minor tweak.
566 (UR_Write_To_JSON): New wrapper procedure around UR_Write.
567 * repinfo.adb (List_Type_Info): When the output is to JSON, call
568 UR_Write_To_JSON instead of UR_Write.
569
570 2021-06-21 Piotr Trojanek <trojanek@adacore.com>
571
572 * sem_util.adb (Indexed_Component_Bit_Offset): Return an unknown
573 offset for components within multidimensional arrays; remove
574 redundant parens.
575
576 2021-06-21 Piotr Trojanek <trojanek@adacore.com>
577
578 * sem_util.adb (Find_Overlaid_Entity): Ignore references to
579 components and discriminants.
580
581 2021-06-21 Doug Rupp <rupp@adacore.com>
582
583 * Makefile.rtl (aarch64-linux) [LIBGNAT_TARGET_PAIRS]: Add
584 $(TRASYM_DWARF_UNIX_PAIRS).
585 [EXTRA_GNAT_RTL_NONTASKING_OBJS]: Add $(TRASYM_DWARF_UNIX_OBJS)
586
587 2021-06-21 Gary Dismukes <dismukes@adacore.com>
588
589 * exp_util.adb (Expand_Sliding_Conversion): Only perform
590 expansion when Expander_Active is True. Add a comment about this
591 and refine existing comment regarding string literals.
592
593 2021-06-21 Piotr Trojanek <trojanek@adacore.com>
594
595 * sem_util.adb (Denotes_Same_Object): Simplify handling of
596 slices.
597
598 2021-06-21 Piotr Trojanek <trojanek@adacore.com>
599
600 * sem_util.adb (Is_Object_Renaming): Rename from Is_Renaming;
601 simplify; adapt callers.
602
603 2021-06-21 Frederic Konrad <konrad@adacore.com>
604
605 * Makefile.rtl: Compiles both static and dynamic libgnat for
606 powerpc64-wrs-vxworks7r2.
607
608 2021-06-18 Gary Dismukes <dismukes@adacore.com>
609
610 * sem_ch3.adb (Constrain_Array): Add error checking for
611 fixed-lower-bound and constrained index ranges applied
612 inappropriately on subtypes of unconstrained and
613 fixed-lower-bound array types.
614 (Constrain_Index): Correct and refine comment related to
615 fixed-lower-bound index ranges.
616
617 2021-06-18 Bob Duff <duff@adacore.com>
618
619 * gen_il-gen.adb: Improve comments.
620 * snames.ads-tmpl (Convention_Id): Remove "-- Plenty of space
621 for expansion", because that's irrelevant now that we are no
622 longer laying out node fields by hand.
623
624 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
625
626 * sem_util.adb (Denotes_Same_Object): Handle character literals
627 just like integer literals.
628
629 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
630
631 * sem_util.adb (Denotes_Same_Object): Explicitly test for node
632 kinds being the same; deal with renamings one-by-one; adjust
633 numbers in references to the Ada RM.
634
635 2021-06-18 Bob Duff <duff@adacore.com>
636
637 * sprint.adb (Write_Source_Line): Check for EOF in
638 Line_Terminator loop. Note that when a source file is read in,
639 an EOF character is added to the end.
640
641 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
642
643 * sem_aux.adb (Package_Specification): Add assertions to confirm
644 the kind of the of parameter and returned node.
645 * sem_ch12.adb (Remove_Parent): Reorder conditions; this change
646 appears to be semantically neutral, but is enough to avoid the
647 problematic call to Package_Specification.
648 * sem_util.adb (Is_Incomplete_Or_Private_Type): Replace loop
649 with a call to Package_Specification.
650
651 2021-06-18 Bob Duff <duff@adacore.com>
652
653 * sem_attr.adb (Eval_Attribute): For Enum_Lit'Size, use
654 Enum_Type'Object_Size.
655
656 2021-06-18 Olivier Hainque <hainque@adacore.com>
657
658 * sigtramp-vxworks-target.inc (__aarch64__): Sync
659 REGNO_PC_OFFSET with the back-end DWARF_ALT_FRAME_RETURN_COLUMN.
660 In CFI_COMMON_REGS, leave r18 alone, VxWorks private.
661
662 2021-06-18 Javier Miranda <miranda@adacore.com>
663
664 * contracts.adb (Process_Spec_Postconditions): Add missing
665 support for aliased subprograms and handle wrappers of
666 class-wide pre/post conditions.
667 (Process_Inherited_Preconditions): Add missing support for
668 aliased subprograms and handle wrappers of class-wide pre/post
669 conditions.
670 * einfo.ads (Class_Wide_Clone): Fix typo.
671 (Is_Class_Wide_Clone): Removed since it is not referenced.
672 (Is_Wrapper): Documenting new flag.
673 (LSP_Subprogram): Documenting new attribute.
674 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Decorate
675 wrapper as Is_Wrapper and adjust call to
676 Override_Dispatching_Operation.
677 * freeze.adb (Build_Inherited_Condition_Pragmas): Fix typo in
678 documentation.
679 (Check_Inherited_Conditions): Handle LSP wrappers; ensure
680 correct decoration of LSP wrappers.
681 * gen_il-fields.ads (Is_Class_Wide_Clone): Removed.
682 (Is_Wrapper): Added.
683 (LSP_Subprogram): Added.
684 * gen_il-gen-gen_entities.adb (Is_Class_Wide_Clone): Removed.
685 (Is_Wrapper): Added.
686 (LSP_Subprogram): Added.
687 * gen_il-internals.adb (Image): Adding uppercase image of
688 LSP_Subprogram.
689 * sem_ch6.adb (New_Overloaded_Entity): Fix decoration of LSP
690 wrappers.
691 * sem_disp.ads (Override_Dispatching_Operation): Remove
692 parameter Is_Wrapper; no longer needed.
693 * sem_disp.adb (Check_Dispatching_Operation): Adjust assertion.
694 (Override_Dispatching_Operation): Remove parameter Is_Wrapper;
695 no longer needed.
696 * treepr.adb (Image): Adding uppercase image of LSP_Subprogram.
697
698 2021-06-18 Arnaud Charlet <charlet@adacore.com>
699
700 * exp_ch4.adb (Expand_N_Quantified_Expression): Ensure the type
701 of the name of a "for of" loop is frozen.
702 * exp_disp.adb (Check_Premature_Freezing): Complete condition to
703 take into account a private type completed by another private
704 type now that the freezing rule are better implemented.
705 * freeze.adb (Freeze_Entity.Freeze_Profile): Do not perform an
706 early freeze on types if not in the proper scope. Special case
707 expression functions that requires access to the dispatch table.
708 (Should_Freeze_Type): New.
709 * sem_ch13.adb (Resolve_Aspect_Expressions): Prevent assert
710 failure in case of an invalid tree (previous errors detected).
711 * sem_res.adb (Resolve): Remove kludge related to entities
712 causing incorrect premature freezing.
713 * sem_util.adb (Ensure_Minimum_Decoration): Add protection
714 against non base types.
715
716 2021-06-18 Gary Dismukes <dismukes@adacore.com>
717
718 * sem_ch3.adb (Constrain_Index): Set the High_Bound of a
719 fixed-lower-bound subtype's range to T (the subtype of the FLB
720 index being constrained) rather than Base_Type (T).
721
722 2021-06-18 Bob Duff <duff@adacore.com>
723
724 * ada_get_targ.adb, aspects.ads, checks.adb, cstand.adb,
725 einfo.ads, exp_attr.adb, freeze.adb, get_targ.adb,
726 libgnat/a-textio.ads, libgnat/g-memdum.ads,
727 libgnat/s-scaval__128.adb, libgnat/s-scaval.adb, make.adb,
728 osint.ads, par-prag.adb, sem_ch13.adb, sem_prag.adb,
729 sem_prag.ads, set_targ.adb, set_targ.ads, snames.ads-tmpl,
730 targparm.ads, types.ads: Remove AAMP-specific code.
731 * switch.ads: Minor reformatting.
732 * gen_il-fields.ads, gen_il-gen.adb,
733 gen_il-gen-gen_entities.adb, gen_il-types.ads, einfo-utils.adb,
734 einfo-utils.ads: Package Types now contains "type Float_Rep_Kind
735 is (IEEE_Binary);", which used to also have an enumeral AAMP.
736 Gen_IL can't handle fields of this type, which would be zero
737 sized. Therefore, we move the Float_Rep field into Einfo.Utils
738 as a synthesized attribute. (We do not delete the field
739 altogether, in case we want new floating-point representations
740 in the future.)
741 * doc/gnat_rm/implementation_defined_pragmas.rst,
742 doc/gnat_rm/implementation_defined_aspects.rst,
743 doc/gnat_ugn/building_executable_programs_with_gnat.rst,
744 doc/gnat_ugn/the_gnat_compilation_model.rst: Remove
745 AAMP-specific documentation.
746 * gnat_rm.texi, gnat_ugn.texi: Regenerate.
747
748 2021-06-18 Gary Dismukes <dismukes@adacore.com>
749
750 * exp_util.adb (Expand_Sliding_Conversion): Move test of
751 Is_Fixed_Lower_Bound_Subtype to an assertion. Exclude string
752 literals from sliding expansion.
753
754 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
755
756 * sem_warn.adb (Warn_On_Overlapping_Actuals): Cleanup conditions
757 related to Ada_Version.
758
759 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
760
761 * sem_util.adb (Address_Value): Simplify.
762
763 2021-06-18 Bob Duff <duff@adacore.com>
764
765 * sem_attr.adb (Check_Array_Or_Scalar_Type): Use Expr_Value
766 instead of Intval, because the latter only exists in literals.
767 Remove Set_Etype on E1; setting the type is done elsewhere.
768
769 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
770
771 * sem_warn.adb (Warn_On_Overlapping_Actuals): Examine types of
772 both formal parameters; refactor a complex detection of
773 by-reference types.
774
775 2021-06-18 Arnaud Charlet <charlet@adacore.com>
776
777 * gnatcmd.adb: Fix handling of check and test commands.
778
779 2021-06-18 Gary Dismukes <dismukes@adacore.com>
780
781 * doc/gnat_rm/implementation_defined_pragmas.rst: Add
782 documentation for the array fixed-lower-bound feature.
783 * gnat_rm.texi: Regenerate.
784
785 2021-06-18 Bob Duff <duff@adacore.com>
786
787 * debug.adb: Document switch.
788 * exp_aggr.adb: If -gnatd_g was given, then do not bump the
789 limit to 500_000.
790
791 2021-06-18 Bob Duff <duff@adacore.com>
792
793 * sem_util.ads, sem_util.adb (Has_Access_Values): Remove
794 Include_Internal parameter that was added in previous change.
795 * sem_warn.adb (Warnings_Off_E1): Back out E_Out_Parameter ==>
796 Formal_Kind change made previously. Check Is_Private_Type to
797 avoid warnings on private types. Misc cleanup.
798 * sem_attr.adb (Attribute_Has_Access_Values): Remove
799 Include_Internal parameter.
800
801 2021-06-18 Piotr Trojanek <trojanek@adacore.com>
802
803 * sem_warn.adb (Warn_On_Overlapping_Actuals): Remove dead branch
804 for overlapping actuals in prefix notation.
805
806 2021-06-18 Eric Botcazou <ebotcazou@adacore.com>
807
808 * sem_prag.adb (Process_Import_Or_Interface): Do not
809 artificially record a possible modification for a constant.
810
811 2021-06-18 Arnaud Charlet <charlet@adacore.com>
812
813 * exp_ch6.adb (Expand_Call_Helper): Code cleanups.
814
815 2021-06-18 Arnaud Charlet <charlet@adacore.com>
816
817 * exp_aggr.adb, exp_dist.adb, exp_unst.adb, sa_messages.ads,
818 sem_ch13.adb, sem_ch3.adb, sem_ch5.adb, sem_eval.adb,
819 sem_util.adb, sem_util.ads, sinfo.ads: Update comments.
820
821 2021-06-18 Ghjuvan Lacambre <lacambre@adacore.com>
822
823 * back_end.adb (Scan_Back_End_Switches): Set Opt.JSON_Output to
824 True if -fdiagnostics-format=json option is found.
825 * back_end.ads (Scan_Compiler_Arguments): Mention
826 Opt.JSON_Output.
827 * errout.adb (Output_JSON_Message): New procedure.
828 (Output_Messages): If Opt.JSON_Output is True, print messages
829 with new Output_JSON_Message procedure.
830 * opt.ads: Declare JSON_Output variable.
831 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
832 Mention new -fdiagnostics-format option.
833 * gnat_ugn.texi: Regenerate.
834
835 2021-06-18 Arnaud Charlet <charlet@adacore.com>
836
837 * sem_ch6.adb (Null_Exclusions_Match): Relax null exclusion
838 mismatch check when Relaxed_RM_Semantics is set.
839
840 2021-06-18 Arnaud Charlet <charlet@adacore.com>
841
842 * fe.h, opt.adb, opt.ads, par-prag.adb, sem_prag.adb,
843 switch-c.adb (Extensions_Allowed): Replace by a function.
844 (Ada_Version_Type): Add new value Ada_With_Extensions, to
845 replace setting of Extensions_Allowed. Update setting of
846 Extensions_Allowed.
847
848 2021-06-18 Arnaud Charlet <charlet@adacore.com>
849
850 * bindgen.adb (Gen_Output_File_Ada): Generate a new constant
851 GNAT_Version_Address.
852 * libgnat/g-comver.adb (GNAT_Version_Address): New;
853 (GNAT_Version): Use GNAT_Version_Address to disable LTO warning.
854
855 2021-06-18 Javier Miranda <miranda@adacore.com>
856
857 * einfo.ads (Is_Ada_2022_Only): Adding documentation.
858 * gen_il-fields.ads (Is_Ada_2022_Only): New flag.
859 * gen_il-gen-gen_entities.adb (Is_Ada_2022_Only): New flag.
860 * itypes.adb (Create_Null_Excluding_Itype): Inherit
861 Is_Ada_2022_Only.
862 * sem_ch3.adb (Check_Abstract_Overriding): Skip reporting error
863 on Ada 2022 only subprograms that require overriding if we are
864 not in Ada 2022 mode.
865 (Derive_Subprogram): Inherit Is_Ada_2022_Only.
866 * sem_ch6.adb (Check_Overriding_Indicator): Inherit
867 Is_Ada_2022_Only.
868 (New_Overloaded_Entity): Inherit Is_Ada_2022_Only.
869 * sem_ch7.adb (Declare_Inherited_Private_Subprograms): Inherit
870 Is_Ada_2022_Only.
871 (Preserve_Full_Attributes): Inherit Is_Ada_2022_Only.
872 * sem_disp.adb (Find_Hidden_Overridden_Primitive): Inherit
873 Is_Ada_2022_Only.
874 (Override_Dispatching_Operation): Inherit Is_Ada_2022_Only.
875 * sem_prag.adb (Analyze_Pragma): Allow form with argument for
876 Ada 2022.
877 * sem_type.adb: (Disambiguate): Deal with Is_Ada_2022_Only
878 * lib-xref.adb (Generate_Reference): Error on static and
879 dispatching calls to Ada 2022 subprograms that require
880 overriding if we are not in Ada 2022 mode; warn on other
881 references to Ada 2022 entities when not in Ada 2022 mode.
882 * sem_ch13.adb (Inherit_Aspects_At_Freeze_Point): Inherit
883 Ada_2020_Only.
884 * libgnat/a-cdlili.ads (Empty): Adding pragma Ada_2022.
885 * libgnat/a-cidlli.ads (Empty): Adding pragma Ada_2022.
886 * libgnat/a-ciorma.ads (Empty): Adding pragma Ada_2022.
887 * libgnat/a-cobove.ads (Empty): Adding pragma Ada_2022.
888 * libgnat/a-coorma.ads (Empty): Adding pragma Ada_2022.
889 (New_Vector): Adding pragma Ada_2022.
890 (Insert_Vector): Adding pragma Ada_2022.
891 (Prepend_Vector): Adding pragma Ada_2022.
892 (Append_Vector): Adding pragma Ada_2022.
893
894 2021-06-17 Arnaud Charlet <charlet@adacore.com>
895
896 * sem_ch3.adb (Check_Ops_From_Incomplete_Type): Protect against
897 no Primitive_Operations.
898
899 2021-06-17 Vadim Godunko <godunko@adacore.com>
900
901 * libgnat/a-strunb__shared.ads (Allocate): Additional parameter
902 to provide additional amount of space to be allocated.
903 * libgnat/a-strunb__shared.adb (Aligned_Max_Length): Limit
904 length to Natural'Last when requested length is larger than it.
905 (Allocate): Merge two slightly different implementations into
906 one.
907
908 2021-06-17 Gary Dismukes <dismukes@adacore.com>
909
910 * checks.adb (Discrete_Range_Cond): For an index subtype that
911 has a fixed lower bound, require that the range's lower bound
912 match that of the subtype.
913 (Selected_Range_Checks): Warn about the case where a static
914 lower bound does not equal an index subtype's fixed lower bound.
915 * einfo.ads (Is_Fixed_Lower_Bound_Array_Subtype,
916 Is_Fixed_Lower_Bound_Index_Subtype): Document new entity flag.
917 * exp_ch4.adb (Expand_N_Type_Conversion): If the operand is of
918 an unconstrained array subtype with fixed lower bound, then
919 Expand_Sliding_Conversion is applied to the operand.
920 * exp_ch6.adb (Expand_Simple_Function_Return): If the result
921 subtype is an unconstrained array subtype with fixed lower
922 bound, then Expand_Sliding_Conversion is applied to the return
923 object.
924 * exp_util.ads (Expand_Sliding_Conversion): New procedure for
925 applying a sliding subtype conversion to an array object of a
926 fixed-lower-bound subtype when needed.
927 * exp_util.adb: Add with_clause for Freeze.
928 (Expand_Sliding_Conversion): New procedure for applying a
929 sliding subtype conversion to an array object of a
930 fixed-lower-bound subtype when needed. It traverses the indexes
931 of the unconstrained array type/subtype to create a target
932 constrained subtype and rewrites the array object to be a
933 conversion to that subtype, when there's at least one index
934 whose lower bound does not statically match the fixed-lower
935 bound of the target subtype.
936 * gen_il-fields.ads (type Opt_Field_Enum): Add literals
937 Is_Fixed_Lower_Bound_Array_Subtype and
938 Is_Fixed_Lower_Bound_Index_Subtype for new flags on type
939 entities.
940 * gen_il-gen-gen_entities.adb: Add calls to
941 Create_Semantic_Field for the new fixed-lower-bound flags on
942 type entities.
943 * par-ch3.adb (P_Array_Type_Definition): Add handling for
944 parsing of fixed-lower-bound index ranges in unconstrained array
945 types. Report an error if such an index is encountered and GNAT
946 language extensions are not enabled.
947 (P_Index_Subtype_Def_With_Fixed_Lower_Bound): Support procedure
948 for parsing unconstrained index ranges.
949 (P_Index_Or_Discriminant_Constraint): Add handling for parsing
950 of index constraints that specify ranges with fixed lower
951 bounds. Report an error if such an index is encountered and GNAT
952 language extensions are not enabled.
953 * sem_ch3.adb (Analyze_Object_Declaration): If the object's
954 nominal subtype is an array subtype with fixed lower bound, then
955 Expand_Sliding_Conversion is applied to the object.
956 (Array_Type_Declaration): Mark the array type and the subtypes
957 of any indexes that specify a fixed lower bound as being
958 fixed-lower-bound subtypes, and set the High_bound of the range
959 of such an index to the upper bound of the named subtype.
960 (Constrain_Array): For an array subtype with one or more index
961 ranges specifying a fixed lower bound, set Is_Constrained to
962 False and set the array subtype's
963 Is_Fixed_Lower_Bound_Array_Subtype flag to True.
964 (Constrain_Index): Mark the subtypes of an index that specifies
965 a fixed lower bound as being a fixed-lower-bound index subtype,
966 and set the High_bound of the range of such an index to the
967 upper bound of the base type of the array type's corresponding
968 index.
969 * sem_res.adb (Resolve_Actuals): If a formal is of an
970 unconstrained array subtype with fixed lower bound, then
971 Expand_Sliding_Conversion is applied to the actual.
972 * sem_util.adb (Build_Actual_Subtype): If the actual subtype
973 corresponds to an unconstrained array subtype having any indexes
974 with fixed lower bounds, then set the lower bounds of any such
975 indexes of the actual subtype to the appropriate fixed lower
976 bound of the formal subtype (rather than taking it from the
977 formal itself).
978 * sprint.adb (Sprint_Node_Actual, case N_Range): If a range's
979 Etype has a fixed lower bound, then print "<>" rather than the
980 High_Bound of the range.
981
982 2021-06-17 Bob Duff <duff@adacore.com>
983
984 * sem_util.adb, sem_util.ads (Has_Access_Values): New formal
985 Include_Internal to indicate whether internal types should be
986 included.
987 * sem_warn.adb (Check_References): Change E_Out_Parameter to
988 Formal_Kind, to match the comment about Spec_Entity. Pass
989 Include_Internal => False to Has_Access_Values, so that we warn
990 on types with access values that happen to be in internal types,
991 such as Unbounded_String.
992 * sem_attr.adb (Attribute_Has_Access_Values): Pass
993 Include_Internal => True to Has_Access_Values, to preserve
994 existing behavior.
995 * libgnat/g-rewdat.adb (Do_Output): Change B from 'in out' to
996 'in', to avoid warning enabled by the change to sem_warn.adb.
997 * libgnat/s-objrea.adb (Check_Read_Offset): Change S from 'in
998 out' to 'in', to avoid warning enabled by the change to
999 sem_warn.adb.
1000
1001 2021-06-17 Steve Baird <baird@adacore.com>
1002
1003 * exp_ch5.adb
1004 (Expand_N_Case_Statement.Expand_General_Case_Statement): New
1005 subprogram.
1006 (Expand_N_Case_Statement): If extensions are allowed and the
1007 case selector is not of a discrete type, then call
1008 Expand_General_Case_Statement to generate expansion instead of
1009 flagging the non-discrete selector as an error.
1010 * sem_case.ads (Is_Case_Choice_Pattern): New Boolean-valued
1011 function for testing whether a given expression occurs as part
1012 of a case choice pattern.
1013 * sem_case.adb (Composite_Case_Ops): New package providing
1014 support routines for the new form of case statements. This
1015 includes a nested package, Composite_Case_Ops.Value_Sets, which
1016 encapsulates the "representative values" implementation of
1017 composite value sets.
1018 (Check_Choices.Check_Case_Pattern_Choices): New procedure for
1019 semantic checking of non-discrete case choices. This includes
1020 the checks pertaining to coverage and overlapping.
1021 (Check_Choices.Check_Composite_Case_Selector): New procedure for
1022 semantic checking of non-discrete case selectors.
1023 (Check_Choices): If extensions are allowed then a non-discrete
1024 selector type no longer implies that an error must have been
1025 flagged earlier. Instead of simply returning, call
1026 Check_Composite_Case_Selector and Check_Case_Pattern_Choices.
1027 (Is_Case_Choice_Pattern): Body of new function declared in
1028 sem_case.ads .
1029 * sem_ch5.adb (Analyze_Case_Statement): If extensions are
1030 allowed, then we can't use RM 5.4's "The selecting_expression is
1031 expected to be of any discrete type" name resolution rule.
1032 Handle the case where the type of the selecting expression is
1033 not discrete, as well as the new ambiguous-name-resolution error
1034 cases made possible by this change.
1035 * sem_res.adb (Resolve_Entity_Name): It is ok to treat the name
1036 of a type or subtype as an expression if it is part of a case
1037 choice pattern, as in "(Field1 => Positive, Field2 => <>)".
1038 * exp_aggr.adb (Expand_Record_Aggregate): Do not expand case
1039 choice aggregates.
1040 * gen_il-fields.ads: Define two new node attributes,
1041 Binding_Chars and Multidefined_Bindings.
1042 * gen_il-gen-gen_nodes.adb: The new Multidefined_Bindings
1043 attribute is Boolean-valued and may be set on
1044 N_Case_Statement_Alternative nodes. The new Binding_Chars
1045 attribute is Name_Id-valued and may be set on
1046 N_Component_Association nodes.
1047 * par-ch4.adb (P_Record_Or_Array_Component_Association): When
1048 parsing a component association, check for both new syntax forms
1049 used to specify a bound value in a case-choice aggregate. In
1050 the case of a box value, an identifier may occur within the box,
1051 as in "Foo => <Abc>" instead of "Foo => <>". In the more general
1052 case, an expression (or a box) may be followed by "is
1053 <identifier>", as in
1054 "Foo => Bar is Abc" instead of just "Foo => Bar".
1055 * sem_aggr.adb (Resolve_Record_Aggregate): Do not transform box
1056 component values in a case-choice aggregate.
1057 * sinfo.ads: Provide comments for the new attributes added in
1058 gen_il-fields.ads.
1059 * doc/gnat_rm/implementation_defined_pragmas.rst: Describe this
1060 new feature in documentation for pragma Extensions_Allowed.
1061 * gnat_rm.texi: Regenerate.
1062
1063 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1064
1065 * exp_ch4.adb (Expand_N_Expression_With_Actions.Process_Action):
1066 Do not abandon processing on a nested N_Expression_With_Actions
1067 or N_Loop_Statement, otherwise we may miss some transient
1068 declarations.
1069
1070 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1071
1072 * exp_util.adb (Find_Hook_Context): Do not stop on an aggregate
1073 node.
1074
1075 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1076
1077 * sem_util.adb (Is_Valid_Renaming): Check not only indexed
1078 components, but slices too.
1079
1080 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1081
1082 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Check
1083 No_Wide_Characters restriction after rejecting illegal parent
1084 types.
1085 (Derived_Type_Declaration): Likewise.
1086 (Find_Type_Of_Subtype_Indic): Remove check for
1087 No_Wide_Characters restriction, which was done too early.
1088
1089 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1090
1091 * sem_util.adb (Is_Valid_Renaming): Body moved from its nested
1092 routine.
1093
1094 2021-06-17 Gary Dismukes <dismukes@adacore.com>
1095
1096 * sem_ch12.adb (Instantiate_Type): If the actual type for an
1097 incomplete formal type is also incomplete, but has a Full_View,
1098 use the Full_View of the actual type rather than the incomplete
1099 view.
1100
1101 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1102
1103 * doc/gnat_ugn/building_executable_programs_with_gnat.rst
1104 (-gnatw.I): Remove double period at the end of sentence.
1105 * gnat_ugn.texi: Regenerate.
1106
1107 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1108
1109 * sem_util.adb (Denotes_Same_Object): Call Get_Index_Bounds with
1110 the range of a slice object, not its type.
1111
1112 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1113
1114 * sem_warn.adb (Warn_On_Overlapping_Actuals): Fix style;
1115 refactor repeated calls to Nkind; remove early RETURN.
1116
1117 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1118
1119 * sem_warn.adb (Warn_On_Overlapping_Actuals): Ignore formal of
1120 generic types, but keep examining other parameters.
1121
1122 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1123
1124 * sem_warn.adb (Warn_On_Overlapping_Actuals): Remove dead code.
1125
1126 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1127
1128 * sem_warn.adb (Warn_On_Overlapping_Actuals): Remove repeated
1129 code.
1130
1131 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1132
1133 * checks.adb (Overlap_Check): Replace Set_Casing with
1134 Adjust_Name_Case and adapt surrounding code as needed.
1135
1136 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1137
1138 * libgnat/s-putaim.ads, libgnat/s-putaim.adb: Move...
1139 * libgnarl/s-putaim.ads, libgnarl/s-putaim.adb: ... here.
1140
1141 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1142
1143 * uintp.ads, uintp.adb (UI_To_Unsigned_64): New.
1144
1145 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1146
1147 * sem_prag.adb (Get_Overflow_Mode): Reword error message.
1148 * switch-c.adb (Get_Overflow_Mode): Likewise.
1149
1150 2021-06-17 Richard Kenner <kenner@adacore.com>
1151
1152 * exp_util.adb (Expand_Static_Predicates_In_Choices): Handle
1153 Others_Discrete_Choices in N_Others_Choice.
1154
1155 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1156
1157 * atree.adb: Remove redundant comment with spec.
1158 * sem_warn.adb: Fix typo in comment.
1159
1160 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1161
1162 * atree.adb: Do not suppress checks.
1163
1164 2021-06-17 Justin Squirek <squirek@adacore.com>
1165
1166 * exp_ch3.adb (Check_Missing_Others): Add comment.
1167 (Build_Initialization_Call): Remove inaccurate accessibility
1168 comment.
1169 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Remove
1170 test for Ada2012.
1171 (Analyze_Package_Instantiation): Remove speculative comment.
1172 (Inline_Instance_Body): Add comments for loops.
1173 (Build_Subprogram_Renaming): Remove comment about fix being
1174 partial and "ugly."
1175 (Instantiate_Subprogram_Body): Remove comment referencing DEC
1176 related internal issue.
1177 (Subtypes_Match): Add comment and simplify anonymous access
1178 test.
1179 (Is_Global): Add test for when E is an expanded name, and
1180 calculate the scope accordingly.
1181 * sem_ch6.adb (Analyze_Function_Return): Update comment
1182 regarding accessibility, and add check for
1183 Warn_On_Ada_2012_Compatibility.
1184 (Mask_Type_Refs): Add comments.
1185 (Analyze_Subprogram_Declaration): Remove mysterious suppression
1186 of elaboration checks.
1187 * sem_ch7.adb (Preserve_Full_Attributes): Preserve Is_Atomic
1188 value.
1189 * sem_ch8.adb (Most_Descendant_Use_Clause): Remove comment.
1190 (Note_Redundant_Use): Fix calls to Find_First_Use to be
1191 Find_Most_Prev.
1192 (Get_Object_Name): Modify error message to be more descriptive.
1193 (Known_But_Visible): Remove mysterious special case for
1194 GNAT_Mode.
1195 (Find_First_Use): Removed.
1196 (Find_Most_Prev): Renamed from Find_First_Use.
1197 * sem_prag.adb (Check_Static_Constraint): Add comments to
1198 routine.
1199
1200 2021-06-17 Bob Duff <duff@adacore.com>
1201
1202 * treepr.adb (Print_Node): Display the Entity or Associated_Node
1203 fields if appropriate.
1204 * sinfo-utils.ads (F_Associated_Node, F_Entity): Remove. These
1205 are no longer needed.
1206
1207 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1208
1209 * checks.adb (Apply_Parameter_Aliasing_Checks): Replace calls to
1210 Is_Object_Reference with calls to Is_Name_Reference; remove
1211 asymmetric condition that only detected an aggregate as the
1212 first actual (aggregate objects were just a special case of an
1213 object reference that was not a name).
1214
1215 2021-06-17 Bob Duff <duff@adacore.com>
1216
1217 * gen_il-gen.adb, gen_il-internals.ads: Generate field
1218 enumeration literals with "F_" prefix. Update all generated
1219 references accordingly.
1220 * atree.adb, einfo-utils.adb, sem_ch3.adb, sem_ch5.adb,
1221 sem_ch6.adb, sem_ch8.adb, sinfo-cn.adb, sinfo-utils.adb,
1222 sinfo-utils.ads, treepr.adb: Add "F_" prefix to all uses of the
1223 field enumeration literals.
1224
1225 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1226
1227 * libgnat/i-c.ads, libgnat/i-cexten.ads,
1228 libgnat/i-cexten__128.ads: bool renamed C_bool.
1229
1230 2021-06-17 Piotr Trojanek <trojanek@adacore.com>
1231
1232 * sem_ch4.adb (Analyze_Allocator): Reject allocators in
1233 restricted contexts.
1234
1235 2021-06-17 Arnaud Charlet <charlet@adacore.com>
1236
1237 * gcc-interface/Make-lang.in: Use libgnat.so if libgnat.a cannot
1238 be found.
1239
1240 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1241
1242 * sem_util.adb (Is_Volatile_Function): Follow the exact wording
1243 of SPARK (regarding volatile functions) and Ada (regarding
1244 protected functions).
1245
1246 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1247
1248 * sem_util.adb (Is_OK_Volatile_Context): All references to
1249 volatile objects are legal in preanalysis.
1250 (Within_Volatile_Function): Previously it was wrongly called on
1251 Empty entities; now it is only called on E_Return_Statement,
1252 which allow the body to be greatly simplified.
1253
1254 2021-06-16 Yannick Moy <moy@adacore.com>
1255
1256 * sem_res.adb (Set_Slice_Subtype): Revert special-case
1257 introduced previously, which is not needed as Itypes created for
1258 slices are precisely always used.
1259
1260 2021-06-16 Eric Botcazou <ebotcazou@adacore.com>
1261
1262 * urealp.adb (Scale): Change first paramter to Uint and adjust.
1263 (Equivalent_Decimal_Exponent): Pass U.Den directly to Scale.
1264 * libgnat/s-exponr.adb (Negative): Rename to...
1265 (Safe_Negative): ...this and change its lower bound.
1266 (Exponr): Adjust to above renaming and deal with Integer'First.
1267
1268 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1269
1270 * sem_res.adb (Flag_Effectively_Volatile_Objects): Detect also
1271 allocators within restricted contexts and not just entity names.
1272 (Resolve_Actuals): Remove duplicated code for detecting
1273 restricted contexts; it is now exclusively done in
1274 Is_OK_Volatile_Context.
1275 (Resolve_Entity_Name): Adapt to new parameter of
1276 Is_OK_Volatile_Context.
1277 * sem_util.ads, sem_util.adb (Is_OK_Volatile_Context): Adapt to
1278 handle contexts both inside and outside of subprogram call
1279 actual parameters.
1280 (Within_Subprogram_Call): Remove; now handled by
1281 Is_OK_Volatile_Context itself and its parameter.
1282
1283 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1284
1285 * sinput.adb (Sloc_Range): Refactor several repeated calls to
1286 Sloc and two comparisons with No_Location.
1287
1288 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1289
1290 * checks.adb (Apply_Scalar_Range_Check): Fix handling of check depending
1291 on the parameter passing mechanism. Grammar adjustment ("has"
1292 => "have").
1293 (Parameter_Passing_Mechanism_Specified): Add a hyphen in a comment.
1294
1295 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1296
1297 * exp_ch3.adb (Build_Slice_Assignment): Remove unused
1298 initialization.
1299
1300 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1301
1302 * restrict.adb, sem_attr.adb, types.ads: Fix typos in
1303 "occuring"; refill comment as necessary.
1304
1305 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1306
1307 * sem_util.ads (Is_Actual_Parameter): Update comment.
1308 * sem_util.adb (Is_Actual_Parameter): Also detect entry parameters.
1309
1310 2021-06-16 Arnaud Charlet <charlet@adacore.com>
1311
1312 * rtsfind.ads, libgnarl/s-taskin.ads, exp_ch3.adb, exp_ch4.adb,
1313 exp_ch6.adb, exp_ch9.adb, sem_ch6.adb: Move master related
1314 entities to the expander directly.
1315
1316 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1317
1318 * sem_res.adb (Is_Assignment_Or_Object_Expression): Whitespace
1319 cleanup.
1320 (Is_Attribute_Expression): Prevent AST climbing from going to
1321 the root of the compilation unit.
1322
1323 2021-06-16 Steve Baird <baird@adacore.com>
1324
1325 * doc/gnat_rm/implementation_advice.rst: Add a section for RM
1326 A.18 .
1327 * gnat_rm.texi: Regenerate.
1328
1329 2021-06-16 Justin Squirek <squirek@adacore.com>
1330
1331 * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Add
1332 check for the mixing of entries.
1333
1334 2021-06-16 Justin Squirek <squirek@adacore.com>
1335
1336 * sem_ch13.adb (Make_Aitem_Pragma): Check for static expressions
1337 in Priority aspect arguments for restriction Static_Priorities.
1338
1339 2021-06-16 Justin Squirek <squirek@adacore.com>
1340
1341 * sem_util.adb (Accessibility_Level): Take into account
1342 renamings of loop parameters.
1343
1344 2021-06-16 Matthieu Eyraud <eyraud@adacore.com>
1345
1346 * par_sco.adb (Set_Statement_Entry): Change sloc for dominance
1347 marker.
1348 (Traverse_One): Fix typo.
1349 (Output_Header): Fix comment.
1350
1351 2021-06-16 Richard Kenner <kenner@adacore.com>
1352
1353 * exp_unst.adb (Register_Subprogram): Don't look for aliases for
1354 subprograms that are generic. Reorder tests for efficiency.
1355
1356 2021-06-16 Eric Botcazou <ebotcazou@adacore.com>
1357
1358 * sem_util.adb (Incomplete_Or_Partial_View): Retrieve the scope of
1359 the parameter and use it to find its incomplete view, if any.
1360
1361 2021-06-16 Eric Botcazou <ebotcazou@adacore.com>
1362
1363 * freeze.adb (Check_No_Parts_Violations): Return earlier if the
1364 type is elementary or does not come from source.
1365
1366 2021-06-16 Bob Duff <duff@adacore.com>
1367
1368 * ghost.adb: Add another special case where full analysis is
1369 needed. This bug is due to quirks in the way
1370 Mark_And_Set_Ghost_Assignment works (it happens very early,
1371 before name resolution is done).
1372
1373 2021-06-16 Eric Botcazou <ebotcazou@adacore.com>
1374
1375 * sem_util.adb (Current_Entity_In_Scope): Reimplement.
1376
1377 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1378
1379 * sem_ch8.adb (End_Scope): Remove extra parens.
1380
1381 2021-06-16 Javier Miranda <miranda@adacore.com>
1382
1383 * exp_disp.adb (Build_Class_Wide_Check): Ensure that evaluation
1384 of actuals is side effects free (since the check duplicates
1385 actuals).
1386
1387 2021-06-16 Ed Schonberg <schonberg@adacore.com>
1388
1389 * sem_res.adb (Resolve_Raise_Expression): Apply Ada_2020 rules
1390 concerning the need for parentheses around Raise_Expressions in
1391 various contexts.
1392
1393 2021-06-16 Piotr Trojanek <trojanek@adacore.com>
1394
1395 * sem_ch13.adb (Validate_Unchecked_Conversion): Move detection
1396 of generic types before switching to their private views; fix
1397 style in using AND THEN.
1398
1399 2021-06-16 Arnaud Charlet <charlet@adacore.com>
1400
1401 * sem_ch3.adb (Analyze_Component_Declaration): Do not special
1402 case raise expressions.
1403
1404 2021-06-16 Sergey Rybin <rybin@adacore.com>
1405
1406 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
1407 Instead of referring to the formatting of the Ada examples in
1408 Ada RM add use the list of checks that are actually performed.
1409 * gnat_ugn.texi: Regenerate.
1410
1411 2021-06-16 Eric Botcazou <ebotcazou@adacore.com>
1412
1413 * initialize.c: Do not include vxWorks.h and fcntl.h from here.
1414 (__gnat_initialize) [__MINGW32__]: Remove #ifdef and attribute
1415 (__gnat_initialize) [init_float]: Delete.
1416 (__gnat_initialize) [VxWorks]: Likewise.
1417 (__gnat_initialize) [PA-RISC HP-UX 10]: Likewise.
1418 * runtime.h: Add comment about vxWorks.h include.
1419
1420 2021-06-16 Eric Botcazou <ebotcazou@adacore.com>
1421
1422 * libgnat/s-except.ads (ZCX_By_Default): Delete.
1423 (Require_Body): Likewise.
1424 * libgnat/s-except.adb: Replace body with pragma No_Body.
1425
1426 2021-06-15 Steve Baird <baird@adacore.com>
1427
1428 * exp_util.adb (Kill_Dead_Code): Generalize the existing
1429 handling of if statements to handle case statements similarly.
1430
1431 2021-06-15 Eric Botcazou <ebotcazou@adacore.com>
1432
1433 * raise.h (_gnat_builtin_longjmp): Delete.
1434 (set_gnat_exit_status): Likewise.
1435
1436 2021-06-15 Piotr Trojanek <trojanek@adacore.com>
1437
1438 * exp_util.adb (Possible_Side_Effect_In_SPARK): Handle component
1439 declaration just like full type and subtype declarations.
1440
1441 2021-06-15 Yannick Moy <moy@adacore.com>
1442
1443 * errout.adb (First_And_Last_Node): Also apply to arbitrary late
1444 declarations, not only subprogram specs.
1445
1446 2021-06-15 Bob Duff <duff@adacore.com>
1447
1448 * sem_ch3.adb (Make_Class_Wide_Type): Make sure all the calls to
1449 Reinit_Field_To_Zero are for the correct Ekinds.
1450
1451 2021-06-15 Bob Duff <duff@adacore.com>
1452
1453 * aspects.ads (No_Task_Parts): New aspect.
1454 * snames.ads-tmpl: Add the aspect name.
1455 * exp_ch6.adb (Might_Have_Tasks): Return False if this is a
1456 class-wide type whose specific type has No_Task_Parts.
1457 * freeze.adb (Check_No_Parts_Violations): This is an adaptation
1458 of the procedure formerly known as
1459 Check_No_Controlled_Parts_Violations, which now supports both
1460 No_Controlled_Parts and No_Task_Parts. It takes a parameter
1461 indicating which aspect is being checked.
1462 (Freeze_Entity): Call Check_No_Parts_Violations for both
1463 aspects.
1464 * sem_ch13.adb (Analyze_Aspect_Specifications): The code for
1465 Aspect_No_Controlled_Parts already works as is with
1466 Aspect_No_Task_Parts.
1467 * libgnat/a-iteint.ads: Add No_Task_Parts aspect to the two
1468 iterator iterfaces.
1469 * doc/gnat_rm/implementation_defined_aspects.rst: Add
1470 documentation for the No_Task_Parts aspect.
1471 * gnat_rm.texi: Regenerate.
1472
1473 2021-06-15 Arnaud Charlet <charlet@adacore.com>
1474
1475 * exp_unst.adb (Unnest_Subprogram.Build_Table.Visit_Node): Fix
1476 handling of scopes for subprogram calls.
1477
1478 2021-06-15 Piotr Trojanek <trojanek@adacore.com>
1479
1480 * sem_prag.adb: Fix typos in comments related to access types.
1481 * sem_util.adb (Is_Access_Variable): Stronger condition.
1482
1483 2021-06-15 Arnaud Charlet <charlet@adacore.com>
1484
1485 * Make-generated.in: Add rule to copy runtime files needed
1486 during stage1.
1487 * raise.c: Remove obsolete symbols used during bootstrap.
1488 * gcc-interface/Make-lang.in: Do not use libgnat sources during
1489 stage1.
1490 (GNAT_ADA_OBJS, GNATBIND_OBJS): Split in two parts, the common
1491 part and the part only used outside of stage1.
1492 (ADA_GENERATED_FILES): Add runtime files needed during bootstrap
1493 when recent APIs are needed.
1494 (ada/b_gnatb.adb): Remove prerequisite.
1495 * gcc-interface/system.ads: Remove obsolete entries.
1496
1497 2021-06-15 Eric Botcazou <ebotcazou@adacore.com>
1498
1499 * raise-gcc.c (__gnat_personality_seh0): Use PERSONALITY_FUNCTION.
1500
1501 2021-06-15 Ed Schonberg <schonberg@adacore.com>
1502
1503 * sem_util.adb (Is_Confirming): Separate the handling of
1504 Implicit_Dereference, for which no pragma is generated but which
1505 is already checked for legality in Sem_Ch13, including renamed
1506 discriminants in a derived type.
1507 (Is_Confirming, Same_Name): For expanded names, only check
1508 matching of selector, because prefix may correspond to original
1509 and derived types with different names and/or scopes. Semantic
1510 checks on aspect expression have already verified its legality.
1511 Add comments regarding possible gaps in RM description of the
1512 feature.
1513
1514 2021-06-15 Gary Dismukes <dismukes@adacore.com>
1515
1516 * freeze.adb (Freeze_Subprogram): Don't propagate conventions
1517 Intrinsic or Entry to anonymous access-to-subprogram types
1518 associated with subprograms having those conventions. Update
1519 related comment.
1520 * sem_attr.adb (Resolve_Attribute, Attribute_*Access): Remove
1521 special-case warning code for cases where a called subprogram
1522 has convention Intrinsic as well as its formal's type (the
1523 expected type for the Access attribute), since this case can no
1524 longer occur.
1525
1526 2021-06-15 Piotr Trojanek <trojanek@adacore.com>
1527
1528 * exp_imgv.adb (Expand_User_Defined_Enumeration_Image): Fix
1529 typos.
1530
1531 2021-06-15 Bob Duff <duff@adacore.com>
1532
1533 * einfo-utils.adb (Known_Component_Size,
1534 Known_Static_Component_Size, Unknown_Component_Size): Use
1535 Implementation_Base_Type instead of Base_Type.
1536
1537 2021-06-15 Bob Duff <duff@adacore.com>
1538
1539 * gen_il-gen-gen_entities.adb (E_Loop_Parameter): Add
1540 Interface_Name field.
1541
1542 2021-06-15 Bob Duff <duff@adacore.com>
1543
1544 * sem_cat.adb (Check_Non_Static_Default_Expr): Allow nonstatic
1545 expression in predefined unit with pragma Preelaborate.
1546
1547 2021-06-15 Yannick Moy <moy@adacore.com>
1548
1549 * doc/gnat_rm/intrinsic_subprograms.rst: More details on shift
1550 operations for signed types. Also add the missing Import and
1551 Convention on the example.
1552 * gnat_rm.texi: Regenerate.
1553
1554 2021-06-15 Eric Botcazou <ebotcazou@adacore.com>
1555
1556 * raise-gcc.c: Include <cstdarg> instead of <stdarg.h> in C++.
1557 Include <stdbool.h> and unconditionally <stdlib.h> in C.
1558
1559 2021-06-15 Piotr Trojanek <trojanek@adacore.com>
1560
1561 * sem_util.ads (Find_Overlaid_Entity): Simplify comment for
1562 spec.
1563 * sem_util.adb (Find_Overlaid_Entity): Remove defensive code
1564 from body.
1565
1566 2021-06-15 Eric Botcazou <ebotcazou@adacore.com>
1567
1568 * argv.c: Add include of <stdlib.h> for the runtime.
1569 (gnat_argv): Change type to char ** and initialize to NULL.
1570 (gnat_envp): Likewise.
1571 * argv-lynxos178-raven-cert.c: Add include of <stdlib.h>.
1572 (gnat_argv): Change type to char ** and initialize to NULL.
1573 (gnat_envp): Likewise.
1574
1575 2021-06-15 Bob Duff <duff@adacore.com>
1576
1577 * gen_il-gen.adb (Setter_Needs_Parent): Add missing
1578 Then_Actions. Fix self-contradictory comment.
1579 * exp_util.adb (Insert_Actions): Minor comment improvments.
1580
1581 2021-06-15 Arnaud Charlet <charlet@adacore.com>
1582
1583 * sem_eval.adb (Eval_Logical_Op, Test_Expression_Is_Foldable):
1584 Add support for folding more "and"/"or" expressions.
1585 * exp_util.adb (Side_Effect_Free): Fix handling of membership
1586 tests.
1587
1588 2021-06-15 Piotr Trojanek <trojanek@adacore.com>
1589
1590 * sem_res.adb (Resolve_Actual): Replace repeated calls to
1591 "Etype (F)" with references to "F_Typ", which keeps the results
1592 of exactly that call.
1593
1594 2021-06-15 Bob Duff <duff@adacore.com>
1595
1596 * gen_il-gen.adb (To_Bit_Offset): Use 'Base to avoid overflow in
1597 computations in Last_Bit when Offset = 'Last.
1598 (Choose_Offset): Give a better error message when we run out of
1599 fields. In particular, point out that
1600 Gen_IL.Internals.Bit_Offset'Last needs to be increased.
1601
1602 2021-06-15 Bob Duff <duff@adacore.com>
1603
1604 * atree.ads, einfo-utils.ads, einfo-utils.adb, fe.h, gen_il.adb,
1605 gen_il.ads, gen_il-gen-gen_entities.adb,
1606 gen_il-gen-gen_nodes.adb, sem_ch12.adb, sem_ch3.adb,
1607 sem_util.adb, sinfo-utils.ads, treepr.adb, types.ads: Clean up
1608 ??? comments and other comments.
1609 * atree.adb: Clean up ??? comments and other comments.
1610 (Validate_Node): Fix bug: "Off_0 (N) < Off_L (N)"
1611 should be "Off_0 (N) <= Off_L (N)".
1612 * gen_il-gen.adb, gen_il-gen.ads: Clean up ???
1613 comments and other comments. Add support for getter-specific
1614 and setter-specific preconditions. Detect the error of putting
1615 a field in the wrong subrange. Misc cleanup.
1616 (Node_Field vs. Entity_Field): Clean up Nmake. Improve
1617 comments.
1618 * gen_il-utils.ads: Misc cleanup. Move...
1619 * gen_il-internals.ads: ... here.
1620 * gen_il-utils.adb: Misc cleanup. Move...
1621 * gen_il-internals.adb: ... here.
1622 * gen_il-fields.ads: Move Was_Default_Init_Box_Association,
1623 which was in the wrong subrange. Add comments. Misc cleanup.
1624 * gen_il-types.ads: Add Named_Access_Kind.
1625 * sinfo-cn.adb: Clean up ??? comments and other comments.
1626 Remove redundant assertions.
1627 * einfo.ads, sinfo.ads: Clean up ??? comments and other
1628 comments. Remove all the comments indicating field offsets.
1629 These are obsolete now that Gen_IL computes the offsets
1630 automatically.
1631
1632 2021-06-15 Arnaud Charlet <charlet@adacore.com>
1633
1634 * einfo.ads, errout.adb, errout.ads, exp_aggr.adb, exp_ch5.adb,
1635 exp_ch6.adb, exp_ch8.adb, exp_ch9.adb, exp_imgv.adb,
1636 exp_put_image.adb, fe.h, impunit.adb, impunit.ads,
1637 libgnat/a-cobove.ads, libgnat/a-convec.ads, opt.ads,
1638 par-ch12.adb, par-ch3.adb, par-ch4.adb, par-ch5.adb,
1639 par-ch6.adb, par-prag.adb, par-util.adb, scans.ads, scng.adb,
1640 sem_aggr.adb, sem_attr.adb, sem_ch10.adb, sem_ch12.adb,
1641 sem_ch13.adb, sem_ch3.adb, sem_ch5.adb, sem_ch6.adb,
1642 sem_ch8.adb, sem_elab.adb, sem_eval.adb, sem_prag.adb,
1643 sem_res.adb, sem_type.adb, sem_util.adb, sem_util.ads,
1644 sinfo.ads, snames.ads-tmpl, sprint.adb, switch-c.adb, usage.adb,
1645 doc/gnat_ugn/building_executable_programs_with_gnat.rst,
1646 doc/gnat_rm/implementation_defined_aspects.rst,
1647 gcc-interface/trans.c: Update all references to Ada 2020 to Ada
1648 2022. Rename pragma Ada_2020 to Ada_2022. Update documentation
1649 accordingly.
1650 * gnat_ugn.texi, gnat_rm.texi: Regenerate.
1651
1652 2021-06-15 Steve Baird <baird@adacore.com>
1653
1654 * sem_util.adb (Gather_Components): Factor the test that was
1655 already being used to govern emitting a pre-Ada_2020 error
1656 message into an expression function,
1657 OK_Scope_For_Discrim_Value_Error_Messages. Call that new
1658 function in two places: the point where the same test was being
1659 performed previously, and in governing emission of a newer
1660 Ada_2020 error message. In both cases, the out-mode parameter
1661 Gather_Components.Report_Errors is set to True even if no error
1662 messages are generated within Gather_Components.
1663 * sem_util.ads: Correct a comment.
1664
1665 2021-06-15 Richard Kenner <kenner@adacore.com>
1666
1667 * sem_ch3.adb (Array_Type_Declaration, Build_Derived_Type):
1668 Reinitialize Stored_Constraint when needed.
1669 (Set_Modular_Size): Likewise.
1670 * atree.adb: (Check_Vanishing_Fields): Add node id to debugging
1671 information.
1672
1673 2021-06-15 Bob Duff <duff@adacore.com>
1674
1675 * sem_util.adb (Propagate_Invariant_Attributes): Call
1676 Set_Has_Own_Invariants on the base type, because these are
1677 Base_Type_Only. The problem is that the base type of a type is
1678 indeed a base type when Set_Base_Type is called, but then the
1679 type is mutated into a subtype in rare cases.
1680 * atree.ads, atree.adb (Is_Entity): Export. Correct subtype of
1681 parameter in body.
1682 * gen_il-gen.adb: Improve getters so that "Pre => ..." can refer
1683 to the value of the field. Put Warnings (Off) on some with
1684 clauses that are not currently used, but might be used by such
1685 Pre's.
1686
1687 2021-06-15 Piotr Trojanek <trojanek@adacore.com>
1688
1689 * sem_ch3.adb (Access_Type_Declaration): Add comments to explain
1690 the ordering of Mutate_Kind and Set_Directly_Designated_Type;
1691 remove temporary setting of Ekind to E_Access_Type for building
1692 _master objects, since now the Ekind is already set to its final
1693 value. Move repeated code into Setup_Access_Type routine and use
1694 it so that Process_Subtype is executed before mutating the kind
1695 of the type entity.
1696 * gen_il-gen-gen_entities.adb (Gen_Entities): Remove
1697 Directly_Designated_Type from E_Void, E_Private_Record,
1698 E_Limited_Private_Type and Incomplete_Kind; now it only belongs
1699 to Access_Kind entities.
1700 * sem_util.adb: Minor reformatting.
1701
1702 2021-06-03 Eric Botcazou <ebotcazou@adacore.com>
1703
1704 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Add PAT
1705 local constant and use it throughout. If it is set, use a ref-all
1706 pointer type for the pointer-to-array field of the fat pointer type.
1707 <E_Array_Subtype>: Add PAT local constant and use it throughout.
1708
1709 2021-05-26 Jakub Jelinek <jakub@redhat.com>
1710
1711 * init.c (__gnat_error_handler): Remove register keyword.
1712
1713 2021-05-25 Martin Liska <mliska@suse.cz>
1714
1715 * doc/share/conf.py: Fix Sphinx 4.0.x error.
1716
1717 2021-05-21 Piotr Trojanek <trojanek@adacore.com>
1718
1719 * gcc-interface/trans.c (Raise_Error_to_gnu): Add an assertion.
1720
1721 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1722
1723 * gcc-interface/utils.c (gnat_pushdecl): Fix typo in comment.
1724 * gcc-interface/utils2.c (build_simple_component_ref): Build NULL_EXPR
1725 if the offset of the field has overflowed.
1726 (build_component_ref): Add gigi checking assertion that the reference
1727 has been built and replace the discriminant check by a Program_Error.
1728
1729 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1730
1731 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Named_Integer>: Do
1732 not pass default value in call to create_var_decl.
1733 <E_Variable>: Likewise.
1734 <E_Record_Subtype>: Both pass true for const_flag and false for
1735 const_decl_allowed_p in call to create_var_decl.
1736 Small tweaks in the generic record type case.
1737 (elaborate_expression): Rename need_debug into need_for_debug and
1738 adjust throughout.
1739 (elaborate_expression_1): Likewise. Pass Needs_Debug_Info instead
1740 of need_for_debug in call to create_var_decl.
1741 (elaborate_expression_2): Likewise.
1742 * gcc-interface/utils.c (maybe_pad_type): Pass false for
1743 const_decl_allowed_p in call to create_var_decl.
1744
1745 2021-05-21 Ghjuvan Lacambre <lacambre@adacore.com>
1746
1747 * gcc-interface/decl.c (gnat_to_gnu_entity): Replace ? with ??.
1748 (gnat_to_gnu_param): Likewise.
1749 (gnat_to_gnu_subprog_type): Likewise.
1750 (warn_on_field_placement): Likewise.
1751 (intrin_arglists_compatible_p): Likewise.
1752 * gcc-interface/trans.c (Pragma_to_gnu): Likewise.
1753 (gnat_to_gnu): Likewise.
1754 (validate_unchecked_conversion): Likewise.
1755 * gcc-interface/utils.c (maybe_pad_type): Likewise.
1756
1757 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1758
1759 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Process
1760 the implementation type of a packed type implemented specially.
1761
1762 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1763
1764 * gcc-interface/decl.c (gnat_to_gnu_subprog_type): Always translate
1765 the Is_Pure flag into the "pure" attribute of GNU C.
1766
1767 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1768
1769 * gcc-interface/trans.c (Call_to_gnu): Restrict previous change
1770 to bitfields whose size is not equal to the type size.
1771 (gnat_to_gnu): Likewise.
1772
1773 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1774
1775 * gcc-interface/trans.c (Call_to_gnu): Minor tweaks.
1776 (gnat_to_gnu_external): Likewise.
1777 (Raise_Error_to_gnu): Return an empty statement list if there is a
1778 condition and it is always false.
1779 (gnat_to_gnu): Do not check for elaboration code a priori during the
1780 translation but a posteriori instead.
1781
1782 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1783
1784 * gcc-interface/trans.c (gnat_to_gnu) <N_Simple_Return_Statement>:
1785 Put a SLOC on the assignment from the return value to the return
1786 object in the copy-in/copy-out case.
1787
1788 2021-05-21 Eric Botcazou <ebotcazou@adacore.com>
1789
1790 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Replace
1791 CEIL_DIV_EXPR with EXACT_DIV_EXPR.
1792 * gcc-interface/misc.c (gnat_type_max_size): Likewise.
1793 * gcc-interface/utils.c (maybe_pad_type): Likewise.
1794 (finish_record_type): Likewise. And always compute the unit size.
1795
1796 2021-05-14 Martin Liska <mliska@suse.cz>
1797
1798 * doc/Makefile: Add gnat-style target.
1799 * doc/share/conf.py: Likewise.
1800 * doc/gnat-style.rst: New file.
1801
1802 2021-05-12 Bob Duff <duff@adacore.com>
1803
1804 PR ada/100564
1805 * atree.adb (Change_Node): Do not call Zero_Slots on a Node_Id
1806 when the Nkind has not yet been set; call the other Zero_Slots
1807 that takes a range of slot offsets. Call the new Mutate_Kind
1808 that takes an Old_Size, for the same reason -- the size cannot
1809 be computed without the Nkind.
1810 (Mutate_Nkind): New function that allows specifying the Old_Size.
1811 (Size_In_Slots): Assert that the Nkind has proper (nonzero) value.
1812 * atree.ads: Minor reformatting.
1813
1814 2021-05-12 Martin Liska <mliska@suse.cz>
1815
1816 * doc/share/conf.py: Do not use binary mode.
1817 Do not use u' literals as Python3 uses unicode by default.
1818
1819 2021-05-11 Martin Liska <mliska@suse.cz>
1820
1821 * gcc-interface/ada-tree.h (BUILT_IN_LIKELY): Use builtins
1822 from COROUTINES.
1823 (BUILT_IN_UNLIKELY): Likewise.
1824
1825 2021-05-11 Eric Botcazou <ebotcazou@adacore.com>
1826
1827 * gnatvsn.adb (Version_String): Rename to...
1828 (C_Version_String): ...this.
1829 (Gnat_Version_String): Adjust to above renaming.
1830 * version.c : Fix formatting glitches.
1831
1832 2021-05-10 Martin Liska <mliska@suse.cz>
1833
1834 PR bootstrap/100506
1835 * Make-generated.in: Replace version.c with ada/version.c.
1836 * gcc-interface/Make-lang.in: Add version.o to GNAT1_C_OBJS and
1837 GNATBIND_OBJS.
1838 * gcc-interface/Makefile.in: Replace version.c with ada/version.c.
1839 Add version.o to TOOLS_LIBS.
1840 * gnatvsn.adb: Replace version_string with gnat_version_string.
1841 * version.c: New file.
1842
1843 2021-05-10 Eric Botcazou <ebotcazou@adacore.com>
1844
1845 * einfo-utils.ads (Classification Attributes): Add pragma Inline.
1846 (Synthesized Attribute Functions): Move pragma Inline around.
1847 (Type Representation Attribute Predicates): Likewise.
1848 (Field Initialization Routines): Likewise.
1849 (Miscellaneous Subprogram): Likewise.
1850
1851 2021-05-10 Eric Botcazou <ebotcazou@adacore.com>
1852
1853 * atree.ads (Slot): Remove pragma Provide_Shift_Operators.
1854 (Shift_Left): New intrinsic function.
1855 (Shift_Right): Likewise.
1856 * atree.adb (Get_1_Bit_Val): Use Natural instead of Integer.
1857 (Get_2_Bit_Val): Likewise.
1858 (Get_4_Bit_Val): Likewise.
1859 (Get_8_Bit_Val): Likewise.
1860 (Set_1_Bit_Val): Likewise.
1861 (Set_2_Bit_Val): Likewise.
1862 (Set_4_Bit_Val): Likewise.
1863 (Set_8_Bit_Val): Likewise.
1864
1865 2021-05-10 Eric Botcazou <ebotcazou@adacore.com>
1866
1867 * atree.adb (Zero_Slots): Remove obsolete comment and add header.
1868
1869 2021-05-10 Eric Botcazou <ebotcazou@adacore.com>
1870
1871 * atree.h (Get_32_Bit_Field): Tidy up.
1872 (Get_32_Bit_Field_With_Default): Likewise.
1873
1874 2021-05-10 Eric Botcazou <ebotcazou@adacore.com>
1875
1876 * Make-generated.in (do_gen_il): Replace with...
1877 (ada/stamp-gen_il): ...this. Do not copy files into generated/.
1878
1879 2021-05-10 Martin Liska <mliska@suse.cz>
1880
1881 * gcc-interface/utils.c (def_builtin_1): Use startswith
1882 function instead of strncmp.
1883
1884 2021-05-07 Piotr Trojanek <trojanek@adacore.com>
1885
1886 * einfo-utils.adb (Is_Access_Object_Type): Use
1887 Directly_Designated_Type.
1888 (Is_Access_Subprogram_Type): Use Directly_Designated_Type.
1889 (Set_Convention): Use plain Ekind.
1890 * gen_il-gen-gen_entities.adb (Type_Kind): Use plain Ekind.
1891 * sem_ch3.adb (Access_Type_Declaration): When seeing an illegal
1892 completion with an access type don't attempt to decorate the
1893 completion entity; previously the entity had its Ekind set to
1894 E_General_Access_Type or E_Access_Type, but its Designated_Type
1895 was empty, which caused a crash in freezing. (Actually, the
1896 error recovery in the surrounding context is still incomplete,
1897 e.g. we will crash when the illegal completion is an access to
1898 an unknown identifier).
1899
1900 2021-05-07 Bob Duff <duff@adacore.com>
1901
1902 * par_sco.adb: Align with/use clauses.
1903 (Traverse_Declarations_Or_Statements): Minor comment fix.
1904 * aspects.adb, atree.adb, atree.ads, checks.adb, comperr.adb,
1905 contracts.adb, cstand.adb, debug_a.adb, einfo-utils.adb,
1906 errout.adb, eval_fat.adb, exp_aggr.adb, expander.adb,
1907 exp_atag.adb, exp_attr.adb, exp_cg.adb, exp_ch11.adb,
1908 exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb,
1909 exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch8.adb,
1910 exp_ch9.adb, exp_code.adb, exp_dbug.adb, exp_disp.adb,
1911 exp_dist.adb, exp_fixd.adb, exp_imgv.adb, exp_intr.adb,
1912 exp_pakd.adb, exp_prag.adb, exp_put_image.adb, exp_sel.adb,
1913 exp_smem.adb, exp_spark.adb, exp_strm.adb, exp_tss.adb,
1914 exp_unst.adb, exp_util.adb, exp_util.ads, freeze.adb,
1915 frontend.adb, ghost.adb, gnat1drv.adb, gnat_cuda.adb,
1916 impunit.adb, inline.adb, itypes.adb, itypes.ads, layout.adb,
1917 lib.adb, lib-load.adb, lib-writ.adb, lib-xref.adb,
1918 lib-xref-spark_specific.adb, live.adb, nlists.adb, par.adb,
1919 par-ch11.adb, par-ch3.adb, par-ch5.adb, par-ch6.adb, pprint.adb,
1920 repinfo.adb, restrict.adb, rtsfind.adb, scil_ll.adb, scn.adb,
1921 sem.adb, sem_aggr.adb, sem_attr.adb, sem_aux.adb, sem_case.adb,
1922 sem_cat.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb,
1923 sem_ch13.adb, sem_ch2.adb, sem_ch3.adb, sem_ch4.adb,
1924 sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_ch9.adb,
1925 sem_dim.adb, sem_disp.adb, sem_dist.adb, sem_elab.adb,
1926 sem_elim.adb, sem_eval.adb, sem_intr.adb, sem_mech.adb,
1927 sem_prag.adb, sem_res.adb, sem_scil.adb, sem_smem.adb,
1928 sem_type.adb, sem_util.adb, sem_util.ads, sem_warn.adb,
1929 sinfo-cn.adb, sinfo-utils.ads, sinput.adb, sinput-l.adb,
1930 sprint.adb, style.adb, styleg.adb, tbuild.adb, tbuild.ads,
1931 treepr.adb, uname.adb: Align with/use clauses.
1932
1933 2021-05-07 Bob Duff <duff@adacore.com>
1934
1935 * atree.ads, atree.adb, gen_il-gen.ads: Fix comments and clean
1936 up ??? marks. Rename Set_Ekind to be Mutate_Ekind.
1937 * einfo.ads, sinfo.ads: Likewise. Change "definitive
1938 definition" to "official definition", because the former sounds
1939 redundant. Rename Set_Ekind to be Mutate_Ekind.
1940 * checks.adb, contracts.adb, cstand.adb, exp_aggr.adb,
1941 exp_attr.adb, exp_ch11.adb, exp_ch3.adb, exp_ch5.adb,
1942 exp_ch6.adb, exp_ch7.adb, exp_ch9.adb, exp_disp.adb,
1943 exp_dist.adb, exp_imgv.adb, exp_intr.adb, exp_prag.adb,
1944 exp_unst.adb, exp_util.adb, gen_il-gen.adb, inline.adb,
1945 lib-writ.adb, lib-xref-spark_specific.adb, sem_aggr.adb,
1946 sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch13.adb,
1947 sem_ch3.adb, sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb,
1948 sem_ch9.adb, sem_dist.adb, sem_elab.adb, sem_prag.adb,
1949 sem_util.adb: Rename Set_Ekind to be Mutate_Ekind.
1950
1951 2021-05-07 Bob Duff <duff@adacore.com>
1952
1953 * atree.adb: Move nnd-related code from here, and leave a
1954 comment pointing to sinfo-utils.adb.
1955 * sinfo-utils.ads, sinfo-utils.adb: Move nnd-related code to
1956 here.
1957
1958 2021-05-07 Piotr Trojanek <trojanek@adacore.com>
1959
1960 * einfo.ads: Move Corresponding_Protected_Entry...
1961 * sinfo.ads: ... here.
1962 * exp_ch9.adb (Build_Entry_Body): Link procedure and entry
1963 bodies.
1964 * gen_il-fields.ads (Opt_Field_Enum): Add
1965 Corresponding_Entry_Body field to nodes; remove
1966 Corresponding_Protected_Entry field from entities.
1967 * gen_il-gen-gen_entities.adb (Gen_Entities): Remove
1968 Corresponding_Protected_Entry field from E_Void and
1969 E_Subprogram_Body.
1970 * gen_il-gen-gen_nodes.adb (Gen_Nodes): Add
1971 Corresponding_Entry_Body field to N_Subprogram_Body.
1972 * sem_ch6.adb (Analyze_Subprogram_Specification): Remove
1973 manipulation of Ekind and Corresponding_Protected_Entry added as
1974 part of the support for varsize-nodes.
1975
1976 2021-05-07 Bob Duff <duff@adacore.com>
1977
1978 * sem_ch3.adb (Process_Incomplete_Dependents): Reset
1979 Private_Dependents field to zero before calling Set_Ekind. Also
1980 move Set_Etype to after Set_Ekind, because it's always best to
1981 set the Ekind as early as possible.
1982 * atree.adb: Improve debugging facilities for vanishing fields.
1983
1984 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
1985
1986 * atree.ads (Slot): Change to modular type.
1987 (Slot_1_Bit): Delete.
1988 (Slot_2_Bit): Likewise.
1989 (Slot_4_Bit): Likewise.
1990 (Slot_8_Bit): Likewise.
1991 (Slot_32_Bit): Likewise.
1992 * atree.adb (Get_1_Bit_Val): Adjust to above change.
1993 (Get_2_Bit_Val): Likewise.
1994 (Get_4_Bit_Val): Likewise.
1995 (Get_8_Bit_Val): Likewise.
1996 (Get_32_Bit_Val): Likewise.
1997 (Set_1_Bit_Val): Likewise.
1998 (Set_2_Bit_Val): Likewise.
1999 (Set_4_Bit_Val): Likewise.
2000 (Set_8_Bit_Val): Likewise.
2001 (Set_32_Bit_Val): Likewise.
2002 (Print_Atree_Info): Likewise.
2003 (Zero): Likewise.
2004 * atree.h (Get_1_Bit_Field): Likewise.
2005 (Get_2_Bit_Field): Likewise.
2006 (Get_4_Bit_Field): Likewise.
2007 (Get_8_Bit_Field): Likewise.
2008 (Get_32_Bit_Field): Likewise.
2009 (Get_32_Bit_Field_With_Default): Likewise.
2010 * types.h (slot_1_bit): Delete.
2011 (slot_2_bit): Likewise.
2012 (slot_4_bit): Likewise.
2013 (slot_8_bit): Likewise.
2014 (slot_32_bit): Likewise.
2015 (any_slot): Change to unsigned int.
2016 (Slot_Size): New macro.
2017
2018 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2019
2020 * gcc-interface/gigi.h (enum standard_datatype): Remove
2021 ADT_exception_data_name_id and add ADT_not_handled_by_others_name_id.
2022 (exception_data_name_id): Delete.
2023 (not_handled_by_others_name_id): New macro.
2024 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Exception>: Remove old
2025 kludge for exceptions.
2026 <E_Record_Type>: Likewise.
2027 (gnat_to_gnu_field): Force character type on Not_Handled_By_Others.
2028 * gcc-interface/misc.c (gnat_argv): Change type to char **.
2029 (gnat_init_options): Adjust accordingly.
2030 * gcc-interface/trans.c (gigi): Set not_handled_by_others_name_id
2031 and use it to set not_handled_by_others_decl.
2032 (Exception_Handler_to_gnu_fe_sjlj): Fix indentation.
2033
2034 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2035
2036 * raise-gcc.c (__gnat_others_value): Remove const qualifier.
2037 (__gnat_all_others_value): Likewise.
2038 (__gnat_unhandled_others_value): Likewise.
2039 (GNAT_OTHERS): Cast to Exception_Id instead of _Unwind_Ptr.
2040 (GNAT_ALL_OTHERS): Likewise.
2041 (GNAT_UNHANDLED_OTHERS): Likewise.
2042 (Is_Handled_By_Others): Change parameter type to Exception_Id.
2043 (Language_For): Likewise.
2044 (Foreign_Data_For): Likewise.
2045 (is_handled_by): Likewise. Adjust throughout, remove redundant
2046 line and fix indentation.
2047 * libgnat/a-exexpr.adb (Is_Handled_By_Others): Remove pragma and
2048 useless qualification from parameter type.
2049 (Foreign_Data_For): Likewise.
2050 (Language_For): Likewise.
2051
2052 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2053
2054 * libgnat/s-stalib.ads (Exception_Data): Mark components as aliased.
2055 * stand.ads (Standard_Entity_Type): Enhance comments.
2056 * cstand.adb (Make_Component): Rename into...
2057 (Make_Aliased_Component): ...this; set Is_Aliased and Is_Independent
2058 flags on the component.
2059 (Create_Standard): Adjust the types of the component of the record
2060 Standard_Exception_Type and mark them as aliased.
2061 * exp_ch11.adb (Expand_N_Exception_Declaration): Use OK
2062 conversion to Standard_Address for Full_Name component, except
2063 in CodePeer_Mode (set it to 0).
2064 * exp_prag.adb (Expand_Pragma_Import_Or_Interface): Likewise.
2065 * raise.h (struct Exception_Data): Change the type of Full_Name,
2066 HTable_Ptr and Foreign_Data.
2067
2068 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2069
2070 * atree.h (Slots_Ptr): Change pointed-to type to any_slot.
2071 * fe.h (Get_RT_Exception_Name): Change type of parameter.
2072 * namet.ads (Name_Entry): Mark non-boolean components as aliased,
2073 reorder the boolean components and add an explicit Spare component.
2074 * namet.adb (Name_Enter): Adjust aggregate accordingly.
2075 (Name_Find): Likewise.
2076 (Reinitialize): Likewise.
2077 * namet.h (struct Name_Entry): Adjust accordingly.
2078 (Names_Ptr): Use correct type.
2079 (Name_Chars_Ptr): Likewise.
2080 (Get_Name_String): Fix declaration and adjust to above changes.
2081 * types.ads (RT_Exception_Code): Add pragma Convention C.
2082 * types.h (Column_Number_Type): Fix original type.
2083 (slot): Rename union type to...
2084 (any_slot): ...this and adjust assertion accordingly.
2085 (RT_Exception_Code): New enumeration type.
2086 * uintp.ads (Uint_Entry): Mark components as aliased.
2087 * uintp.h (Uints_Ptr): Use correct type.
2088 (Udigits_Ptr): Likewise.
2089 * gcc-interface/gigi.h (gigi): Adjust name and type of parameter.
2090 * gcc-interface/cuintp.c (UI_To_gnu): Adjust references to Uints_Ptr
2091 and Udigits_Ptr.
2092 * gcc-interface/trans.c (Slots_Ptr): Adjust pointed-to type.
2093 (gigi): Adjust type of parameter.
2094 (build_raise_check): Add cast in call to Get_RT_Exception_Name.
2095
2096 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2097
2098 * init.c (__gnat_raise_program_error): Fix parameter type.
2099 (Raise_From_Signal_Handler): Likewise and mark as no-return.
2100 * raise-gcc.c (__gnat_others_value): Fix type.
2101 (__gnat_all_others_value): Likewise.
2102 (__gnat_unhandled_others_value): Likewise.
2103 * seh_init.c (Raise_From_Signal_Handler): Fix parameter type.
2104 * libgnat/a-except.ads (Raise_From_Signal_Handler): Use convention C
2105 and new symbol name, move declaration to...
2106 (Raise_From_Controlled_Operation): Minor tweak.
2107 * libgnat/a-except.adb (Raise_From_Signal_Handler): ...here.
2108 * libgnat/a-exexpr.adb (bool): New C compatible boolean type.
2109 (Is_Handled_By_Others): Use it as return type for the function.
2110
2111 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2112
2113 * errout.ads (Set_Identifier_Casing): Add pragma Convention C.
2114 * eval_fat.ads (Rounding_Mode): Likewise.
2115 (Machine): Add WARNING comment line.
2116 * exp_code.ads (Clobber_Get_Next): Add pragma Convention C.
2117 * fe.h (Compiler_Abort): Fix return type.
2118 (Set_Identifier_Casing): Change type of parameters.
2119 (Clobber_Get_Next): Change return type.
2120 * gcc-interface/trans.c (gnat_to_gnu) <N_Code_Statement>: Add cast.
2121
2122 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2123
2124 * atree.h (Parent): Remove duplicate declaration.
2125 (Get_1_Bit_Field): Also use INLINE specifier in the declaration,
2126 fix formatting and use gcc_unreachable for the default case.
2127 (Get_2_Bit_Field): Likewise.
2128 (Get_4_Bit_Field): Likewise.
2129 (Get_8_Bit_Field): Likewise.
2130 (Get_32_Bit_Field): Likewise.
2131 (Get_32_Bit_Field_With_Default): Likewise.
2132
2133 2021-05-07 Bob Duff <duff@adacore.com>
2134
2135 * atree.ads, atree.adb: Major rewrite to support variable-sized
2136 node types. Add pragmas Suppress and Assertion_Policy. We now
2137 have an extra level of indirection: Node_Offsets is a table
2138 mapping Node_Ids to the offset of the start of each node in
2139 Slots. Slots is a table containing one or more contiguous slots
2140 for each node. Each slot is a 32-bit unchecked union that can
2141 contain any mixture of 1, 2, 4, 8, and 32-bit fields that fits.
2142 The old low-level getters and setters (e.g. Flag123) are
2143 removed.
2144 * gen_il-fields.ads, gen_il-gen-gen_entities.adb,
2145 gen_il-gen-gen_nodes.adb, gen_il-gen.adb, gen_il-gen.ads,
2146 gen_il-main.adb, gen_il-types.ads, gen_il-utils.adb,
2147 gen_il-utils.ads, gen_il.adb, gen_il.ads: New gen_il program
2148 that generates various Ada and C++ files. In particular, the
2149 following files are generated by gen_il: einfo-entities.adb
2150 einfo-entities.ads, gnatvsn.ads, nmake.adb, nmake.ads,
2151 seinfo.ads, seinfo_tables.adb, seinfo_tables.ads,
2152 sinfo-nodes.adb, sinfo-nodes.ads, einfo.h, and sinfo.h.
2153 * sinfo-utils.adb, sinfo-utils.ads, einfo-utils.adb,
2154 einfo-utils.ads: New files containing code that needs to refer
2155 to Sinfo.Nodes and Einfo.Entities. This code is mostly moved
2156 here from Sinfo and Einfo to break cycles.
2157 * back_end.adb: Pass node_offsets_ptr and slots_ptr to gigi,
2158 instead of nodes_ptr and flags_ptr. The Nodes and Flags tables
2159 no longer exist. (Note that gigi never used the Flags table.)
2160 * sinfo-cn.ads (Change_Identifier_To_Defining_Identifier,
2161 Change_Character_Literal_To_Defining_Character_Literal,
2162 Change_Operator_Symbol_To_Defining_Operator_Symbol): Turn N into
2163 an IN formal.
2164 * sinfo-cn.adb: Update. Add assertions, which can be removed at
2165 some point. Rewrite to use higher-level facilities. Make sure
2166 vanishing fields are zeroed out. Add with/use for new packages.
2167 * sem_util.adb: Remove "Assert(False)" immediately followed by
2168 "raise Program_Error". Use higher-level facilities such as
2169 Walk_Sinfo_Fields instead of depending on low-level Set_FieldN
2170 routines that no longer exist. Use Get_Comes_From_Source_Default
2171 instead of Default_Node.Comes_From_Source (Default_Node no
2172 longer exists). Use Set_Basic_Convention instead of
2173 Basic_Set_Convention. Add with/use for new packages.
2174 * sem_util.ads: The Convention field had getter Convention and
2175 setter Basic_Set_Convention. Make that more uniform: there is
2176 now a field called Basic_Convention, with Basic_Convention and
2177 Set_Basic_Convention as getter/setter, and write Convention and
2178 Set_Convention here.
2179 * nlists.adb: Rewrite to use abstractions, rather then depending
2180 on low-level implementation details of Atree. Necessary because
2181 those details have changed. Add with/use for new packages.
2182 * sem_ch12.adb: Use higher-level facilities such as
2183 Walk_Sinfo_Fields instead of depending on low-level Set_FieldN
2184 routines that no longer exist. Add with/use for new packages.
2185 * exp_cg.adb, sem_ch10.adb, sem_ch4.adb, sem_eval.adb,
2186 sem_prag.adb, sem_warn.adb: Change expanded names to refer to
2187 the new packages for things that moved. Add with/use for new
2188 packages.
2189 * sem_ch3.adb: Likewise. Reinitialize vanishing fields.
2190 * exp_disp.adb: Likewise. Remove failing assertion.
2191 * sinfo.ads, einfo.ads: Remove code that is now generated into
2192 Sinfo.Nodes and Einfo.Entities.
2193 * sinfo.adb, einfo.adb: Replace bodies with "pragma No_Body;".
2194 We should delete these at some point, but No_Body makes make
2195 files easier. Some code is moved to Sinfo.Nodes, Einfo.Entities,
2196 Sinfo.Utils, and Einfo.Utils. Some is no longer necessary.
2197 * treepr.adb: Rewrite to use new tables. We no longer need
2198 treeprs.ads.
2199 * treepr.ads: Add comment.
2200 * types.ads: Move types Component_Alignment_Kind and
2201 Float_Rep_Kind here.
2202 * atree.h: Major update to match atree.ads changes. Add slot
2203 types, for use by getters/setters.
2204 * types.h: Move types Component_Alignment_Kind and
2205 Float_Rep_Kind here.
2206 * fe.h: Rewrite to deal with code that has changed or moved from
2207 Atree, Sinfo, Einfo.
2208 * nlists.h: Move some code to fe.h.
2209 * alloc.ads: Split Nodes_* constants into Node_Offsets and
2210 Slots, because Atree has two separate tables. Increase values.
2211 Remove Nodes_Release_Threshold. Improve comment.
2212 * debug.adb, gnat1drv.adb: Remove obsolete gnatd.A and gnatd.N
2213 switches. Add with/use for new packages.
2214 * opt.ads: Minor comment fix.
2215 * aspects.adb, checks.adb, comperr.adb, contracts.adb,
2216 cstand.adb, debug_a.adb, errout.adb, eval_fat.adb, exp_aggr.adb,
2217 exp_atag.adb, exp_attr.adb, exp_ch11.adb, exp_ch12.adb,
2218 exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch4.adb,
2219 exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch8.adb, exp_ch9.adb,
2220 exp_code.adb, exp_dbug.adb, exp_dist.adb, exp_fixd.adb,
2221 exp_imgv.adb, exp_intr.adb, exp_pakd.adb, exp_prag.adb,
2222 exp_put_image.adb, exp_sel.adb, exp_smem.adb, exp_spark.adb,
2223 exp_strm.adb, exp_tss.adb, exp_unst.adb, exp_util.adb,
2224 exp_util.ads, expander.adb, freeze.adb, frontend.adb,
2225 get_targ.ads, ghost.adb, gnat_cuda.adb, impunit.adb, inline.adb,
2226 itypes.adb, itypes.ads, layout.adb, lib.adb, lib-load.adb,
2227 lib-writ.adb, lib-xref.adb, lib-xref.ads,
2228 lib-xref-spark_specific.adb, live.adb, par.adb, par_sco.adb,
2229 pprint.adb, repinfo.adb, restrict.adb, rtsfind.adb, scil_ll.adb,
2230 scn.adb, sem.adb, sem.ads, sem_aggr.adb, sem_attr.adb,
2231 sem_aux.adb, sem_case.adb, sem_cat.adb, sem_ch11.adb,
2232 sem_ch13.adb, sem_ch2.adb, sem_ch5.adb, sem_ch6.adb,
2233 sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_dim.adb,
2234 sem_disp.adb, sem_dist.adb, sem_elab.adb, sem_elim.adb,
2235 sem_intr.adb, sem_mech.adb, sem_res.adb, sem_scil.adb,
2236 sem_smem.adb, sem_type.adb, set_targ.ads, sinput.adb,
2237 sinput-l.adb, sprint.adb, style.adb, styleg.adb, tbuild.adb,
2238 tbuild.ads, uname.adb: Add with/use for new packages.
2239 * libgnat/a-stoubu.adb, libgnat/a-stouut.adb: Simplify to ease
2240 bootstrap.
2241 * libgnat/a-stobfi.adb, libgnat/a-stoufi.adb (Create_File,
2242 Create_New_File): Create file in binary format, to avoid
2243 introducing unwanted text conversions on Windows. Simplify to
2244 ease bootstrap.
2245 * libgnat/a-stteou__bootstrap.ads: New.
2246 * ceinfo.adb, csinfo.adb, nmake.adt, treeprs.adt, xeinfo.adb,
2247 xnmake.adb, xsinfo.adb, xtreeprs.adb: Delete.
2248 * Make-generated.in: Build and run the gen_il program to
2249 generate files. The files are generated in the ada/gen_il
2250 subdirectory, and then moved up to ada. We rely on gnatmake (as
2251 opposed to make) to build the gen_il program efficiently (i.e.
2252 don't do anything if the sources didn't change).
2253 * gcc-interface/Makefile.in (ADAFLAGS): Add -gnatU.
2254 (GNATMAKE_OBJS): Add new object files.
2255 (GENERATED_FILES_FOR_TOOLS): New variable.
2256 (../stamp-tools): Create a link for all
2257 GENERATED_FILES_FOR_TOOLS.
2258 * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Add new object
2259 files. Remove ada/treeprs.o.
2260 (GNATBIND_OBJS): Add new object files.
2261 (ada.mostlyclean): Remove ada/sdefault.adb and add
2262 ada/stamp-gen_il.
2263 (ada.maintainer-clean): Remove ada/treeprs.ads.
2264 (update-sources): Remove obsolete target.
2265 (ada_generated_files): Rename to...
2266 (ADA_GENERATED_FILES): ... this. Add new source files. Add
2267 comment.
2268 * gcc-interface/trans.c: Remove obsolete Nodes_Ptr and
2269 Flags_ptr. Add Node_Offsets_Ptr and Slots_Ptr, which point to
2270 the corresponding tables in Atree.
2271 * gcc-interface/gigi.h (gigi): New parameters for initializing
2272 Node_Offsets_Ptr and Slots_Ptr.
2273 * gcc-interface/decl.c: Numeric_Kind,
2274 Discrete_Or_Fixed_Point_Kind, and Record_Kind were
2275 nonhierarchical, and were therefore removed for simplicity.
2276 Replace uses with calls to Is_In_... functions.
2277
2278 2021-05-07 Ed Schonberg <schonberg@adacore.com>
2279
2280 * exp_ch4.adb (Unconstrained_UU_In_Component_Declaration): A
2281 component declaration whose subtype indication is an entity name
2282 without an explicit constraint is an Unchecked_Union type only
2283 if the entity has an unconstrained nominal subtype (record type
2284 or private type) whose parent type is an Unchecked_Union.
2285
2286 2021-05-07 Piotr Trojanek <trojanek@adacore.com>
2287
2288 * sem_res.adb (Flag_Object): Ignore prefixes of attribute
2289 Address.
2290
2291 2021-05-07 Yannick Moy <moy@adacore.com>
2292
2293 * opt.ads: Update comment for Warn_On_Suspicious_Modulus_Value.
2294 * sem_res.adb (Resolve_Unary_Op): Generate warning.
2295 * usage.adb: Refine doc for -gnatw.m/M switch.
2296 * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
2297 Update doc on -gnatw.m switch.
2298 * gnat_ugn.texi: Regenerate.
2299
2300 2021-05-07 Piotr Trojanek <trojanek@adacore.com>
2301
2302 * sem_res.adb (Flag_Object): Replace chained IF with a CASE;
2303 remove repeated calls to Entity; do not traverse into
2304 N_Identifier and N_Expanded_Name, because only need to examine
2305 their Entity field anyway.
2306
2307 2021-05-07 Piotr Trojanek <trojanek@adacore.com>
2308
2309 * sem_ch4.adb (Analyze_Call): Remove call to End_Interp_List.
2310 (Process_Overloaded_Indexed_Component): Remove call to
2311 End_Interp_List.
2312 * sem_util.adb (Insert_Explicit_Dereference): Remove call to
2313 End_Interp_List.
2314 * sem_type.ads (End_Interp_List): Remove.
2315 * sem_type.adb (Add_Entry): The guard against duplicate entries
2316 is now checked before other conditions, so that EXIT statements
2317 do not bypass this guard.
2318 (End_Interp_List): Remove.
2319
2320 2021-05-07 Ed Schonberg <schonberg@adacore.com>
2321
2322 * exp_util.adb (Remove_Init_Call): If a simple initialization
2323 call is present, and the next statement is an initialization
2324 block (that contains a call to a Deep_ Initialize routine),
2325 remove the block as well, and insert the first initialization
2326 call in it, in case it is needed for later relocation.
2327
2328 2021-05-07 Gary Dismukes <dismukes@adacore.com>
2329
2330 * errout.ads (Size_Too_Small_Message): Remove low-value ???
2331 comment.
2332 * exp_util.ads: Remove ??? in part of overall package comments
2333 and restructure comment to clarify.
2334 (Duplicate_Subexpr): Remove ??? comment that seems unnecessary.
2335 * sem_ch3.ads (Analyze_Declarations): Remove two parenthesized
2336 ??? comments and add more description of the procedure's
2337 actions.
2338 (Get_Discriminant_Value): Remove ??? comment requesting more
2339 documentation, expanding description of the function's actions.
2340 * sem_disp.ads (Check_Operation_From_Incomplete_Type): Add more
2341 semantic description of the procedure and remove ??? comment
2342 requesting such.
2343 (Propagate_Tag): Refine comment to indicate meaning of formal
2344 parameters and generally improve the spec comment (and remove
2345 ??? comment asking about the parameters).
2346
2347 2021-05-07 Arnaud Charlet <charlet@adacore.com>
2348
2349 * sem_eval.adb (Fold_Shift): Fix computation of Shift_Left
2350 resulting in negative signed values.
2351
2352 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2353
2354 * sem_util.ads (Defining_Entity): Remove Empty_On_Errors parameter.
2355 (Defining_Entity_Or_Empty): New function.
2356 * sem_util.adb (Defining_Entity): Move bulk of implementation to...
2357 (Defining_Entity_Or_Empty): ...here. Do not raise Program_Error.
2358 (Innermost_Master_Scope_Depth): Call Defining_Entity_Or_Empty.
2359
2360 2021-05-07 Justin Squirek <squirek@adacore.com>
2361
2362 * aspects.ads: Add entries to register
2363 Aspect_No_Controlled_Parts.
2364 * freeze.adb (Check_No_Controlled_Parts_Violations): Added to
2365 check requirements of aspect No_Controlled_Parts after a type
2366 has been frozen.
2367 (Freeze_Entity): Add call to
2368 Check_No_Controlled_Parts_Violations.
2369 (Find_Aspect_No_Controlled_Parts): Created to obtain the aspect
2370 specification for No_Controlled_Parts on a given type when
2371 present.
2372 (Find_Aspect_No_Controlled_Parts_Value): Protect against invalid
2373 value.
2374 (Has_Aspect_No_Controlled_Parts): Created as a prediate function
2375 to check if No_Controlled_Parts has been specified on a type for
2376 Get_Anacestor_Types_With_Specification.
2377 (Get_Aspect_No_Controlled_Parts_Value): Created to obtain the
2378 value of the aspect No_Controlled_Parts when specified on a
2379 given type.
2380 (Get_Generic_Formal_Types_In_Hierarchy): Created to collect
2381 formal types in a given type's hierarchy.
2382 (Get_Types_With_Aspect_In_Hierarchy): Created to collect types
2383 in a given type's hierarchy with No_Controlled_Parts specified.
2384 * sem_ch13.adb (Analyze_One_Aspect): Add processing for
2385 No_Controlled_Parts, and fix error in check for allowed pragmas
2386 for formal types.
2387 (Check_Expr_Is_OK_Static_Expression): Created to enforce
2388 checking of static expressions in the same vein as
2389 Analyze_Pragma.Check_Expr_OK_Static_Expression.
2390 * sem_util.adb (Collect_Types_In_Hierarchy): Created to collect
2391 types in a given type's hierarchy that match a given predicate
2392 function.
2393 * sem_util.ads: Fix typo.
2394 * snames.ads-tmpl: Add entry for No_Controlled_Parts.
2395
2396 2021-05-07 Eric Botcazou <ebotcazou@adacore.com>
2397
2398 * libgnat/s-fatgen.adb (Scaling): Raise Constraint_Error in the
2399 overflow case when T'Machine_Overflows is True.
2400
2401 2021-05-07 Bob Duff <duff@adacore.com>
2402
2403 * libgnat/a-conhel.adb (TC_Check): Move the Assert into the
2404 'if'.
2405
2406 2021-05-07 Frederic Konrad <konrad@adacore.com>
2407
2408 * sigtramp-vxworks-target.inc: Use a local label for the TOC.
2409
2410 2021-05-07 Claire Dross <dross@adacore.com>
2411
2412 * exp_ch4.adb (Has_Inferable_Discriminants): Moved to Sem_Util.
2413 * sem_util.ads, sem_util.adb (Has_Inferable_Discriminants):
2414 Moved from Exp_Ch4.
2415
2416 2021-05-07 Ed Schonberg <schonberg@adacore.com>
2417
2418 * exp_util.adb (Build_Class_Wide_Expression, Replace_Entity):
2419 Add guard to verify that the enclosing pragma is a precondition.
2420
2421 2021-05-06 Javier Miranda <miranda@adacore.com>
2422
2423 * exp_disp.adb (Build_Class_Wide_Check): Extending the
2424 functionality of this routine to climb to the ancestors
2425 searching for the enclosing overridden dispatching primitive
2426 that has a class-wide precondition to generate the check.
2427
2428 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2429
2430 * sem_ch3.adb (Constraint_Index): Remove redundant problematic
2431 analysis.
2432
2433 2021-05-06 Arnaud Charlet <charlet@adacore.com>
2434
2435 * exp_unst.adb (Note_Uplevel_Bound): Exclude
2436 E_Enumeration_Literal.
2437
2438 2021-05-06 Arnaud Charlet <charlet@adacore.com>
2439
2440 * exp_ch4.adb (Expand_N_If_Expression):
2441 Apply_Arithmetic_Overflow_Check will not deal with
2442 Then/Else_Actions so skip minimizing overflow checks if any
2443 actions are present.
2444
2445 2021-05-06 Boris Yakobowski <yakobowski@adacore.com>
2446
2447 * gnat1drv.adb (Adjust_Global_Switches): Simplify logic.
2448
2449 2021-05-06 Arnaud Charlet <charlet@adacore.com>
2450
2451 * libgnat/i-c.ads (bool): New type.
2452 * libgnat/i-cexten.ads, libgnat/i-cexten__128.ads (bool): Now
2453 a subtype of Interfaces.C.bool.
2454 * libgnarl/s-interr__vxworks.adb (Interrupt_Manager): Qualify
2455 False.
2456 * libgnarl/s-interr.adb, libgnarl/s-interr__hwint.adb,
2457 libgnarl/s-tasini.adb, libgnarl/s-tasren.adb,
2458 libgnarl/s-tassta.adb, libgnarl/s-tpobmu.adb,
2459 libgnarl/s-tpobop.adb, libgnarl/s-tpopmo.adb: Replace
2460 Assert (False) by Assert (Standard.False).
2461
2462 2021-05-06 Ghjuvan Lacambre <lacambre@adacore.com>
2463
2464 * make.adb (Compute_Executable): Document parameter.
2465
2466 2021-05-06 Eric Botcazou <ebotcazou@adacore.com>
2467
2468 * libgnat/s-fatgen.adb (Scaling): Use single handling of
2469 underflow. Add pragma Annotate.
2470
2471 2021-05-06 Ghjuvan Lacambre <lacambre@adacore.com>
2472
2473 * sem_eval.adb (Is_OK_Static_Subtype): Call Is_Static_Subtype,
2474 remove redundant checks.
2475
2476 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2477
2478 * sem_res.adb (First_Last_Ref): Simplify "if [condition] then
2479 return True" in "return [condition]".
2480 (Resolve_Range): Remove calls appearing in IF condition from the
2481 THEN statements.
2482
2483 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2484
2485 * sem_case.adb (Missing_Choice): Fix typo in comment.
2486 (Lit_Of): Simplify with Make_Character_Literal.
2487 (Check_Choices): Remove extra spaces in parameter
2488 specifications.
2489 * sem_case.ads: Same reformatting.
2490
2491 2021-05-06 Ed Schonberg <schonberg@adacore.com>
2492
2493 * exp_aggr.adb (Expand_Array_Aggregate): If the expression in an
2494 Others_Clause has not been analyzed because previous analysis of
2495 the enclosing aggregate showed the clause to be ineffective i.e.
2496 cover a null range, analyze it now to detect a possible type
2497 illegality.
2498
2499 2021-05-06 Eric Botcazou <ebotcazou@adacore.com>
2500
2501 * libgnat/s-fatgen.adb (Scaling): Fix off-by-one bug for underflow.
2502
2503 2021-05-06 Arnaud Charlet <charlet@adacore.com>
2504
2505 * sem_ch6.adb (Is_Inline_Pragma): Protect against N not being a
2506 list member in both branches.
2507
2508 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2509
2510 * libgnat/a-cofove.adb (Insert_Space): Remove hardcoded pragma
2511 Warnings.
2512
2513 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2514
2515 * sem_ch4.adb (Analyze_Selected_Component): Remove explicit call
2516 to Set_Raises_Constraint_Error on statically missing component.
2517 * sem_eval.adb (Eval_Arithmetic_Op): Likewise for static
2518 divisions by integer and real zeros.
2519 * sem_util.adb (Apply_Compile_Time_Constraint_Error): Call
2520 Set_Raises_Constraint_Error before exiting early in GNATprove
2521 mode.
2522
2523 2021-05-06 Justin Squirek <squirek@adacore.com>
2524
2525 * checks.adb (Make_Discriminant_Constraint_Check): Add check for
2526 null when the type being converted is an access type.
2527
2528 2021-05-06 Arnaud Charlet <charlet@adacore.com>
2529
2530 * exp_pakd.adb (Expand_Packed_Eq): Fix handling of PATs.
2531
2532 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2533
2534 * osint.adb (Read_Library_Info_From_Full): Cleanup unused
2535 initial value.
2536
2537 2021-05-06 Eric Botcazou <ebotcazou@adacore.com>
2538
2539 * doc/gnat_rm/implementation_defined_characteristics.rst (3.5.7):
2540 Mention the IEEE standard explicitly. Use current format names.
2541 Document assumed rounding mode and new features of I/O support.
2542 * gnat_rm.texi: Regenerate.
2543
2544 2021-05-06 Eric Botcazou <ebotcazou@adacore.com>
2545
2546 * init.c (__gnat_init_float): Use full version on Linux too.
2547
2548 2021-05-06 Eric Botcazou <ebotcazou@adacore.com>
2549
2550 * libgnat/s-fatgen.adb (Valid): Do a bit comparison with 0.0
2551 when denormalized numbers are not supported.
2552
2553 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2554
2555 * sem_attr.adb (Check_Enum_Image): Reword comment; add
2556 Check_Enumeration_Maps parameter. Now this routine combines
2557 both referencing enumeration literals and checking restriction
2558 No_Enumeration_Maps, if required.
2559 (Analyze_Attribute): Remove duplicated code and instead call
2560 Check_Enum_Image.
2561
2562 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2563
2564 * sem_attr.adb (Analyze_Image_Attribute): Remove redundant
2565 condition; add a missing header box.
2566
2567 2021-05-06 Gary Dismukes <dismukes@adacore.com>
2568
2569 * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Add
2570 mention of underscore and fix grammar error in doc for -gnatd.
2571 * gnat_ugn.texi: Regenerate.
2572
2573 2021-05-06 Eric Botcazou <ebotcazou@adacore.com>
2574
2575 * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-exponr, s-exnflt
2576 and s-exnlfl.
2577 * exp_ch4.adb (Expand_N_Op_Expon): Use RE_Exn_Float for Short_Float.
2578 * rtsfind.ads (RTU_Id): Add System_Exn_Flt and System_Exn_LFlt.
2579 (RE_Id): Adjust entries for RE_Exn_Float and RE_Exn_Long_Float.
2580 (RE_Unit_Table): Likewise.
2581 * libgnat/s-exnflt.ads: New file.
2582 * libgnat/s-exnlfl.ads: Likewise.
2583 * libgnat/s-exnllf.ads: Change to mere instantiation.
2584 * libgnat/s-exnllf.adb: Move implementation to...
2585 * libgnat/s-exponr.ads: New generic unit.
2586 * libgnat/s-exponr.adb: ...here and also make it generic.
2587 (Expon): Do the computation in double precision internally.
2588
2589 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2590
2591 * lib-writ.adb, osint.adb, osint.ads: Cleanup.
2592
2593 2021-05-06 Piotr Trojanek <trojanek@adacore.com>
2594
2595 * exp_ch3.adb (Expand_Freeze_Array_Type): Remove excessive
2596 condition.
2597 (Expand_N_Object_Declaration): Likewise.
2598 (Build_Equivalent_Aggregate): Likewise.
2599 (Initialization_Warning): Likewise; change another excessive
2600 condition into assertion.
2601 * freeze.adb (Freeze_Entity): Remove excessive condition.
2602
2603 2021-05-06 Ed Schonberg <schonberg@adacore.com>
2604
2605 * sem_res.adb (Resolve_If_Expression): If the context of the
2606 expression is an indexed_component, resolve the expression and
2607 its dependent_expressions with the base type of the index, to
2608 ensure that an index check is generated when resolving the
2609 enclosing indexxed_component, and avoid an improper use of
2610 discriminants out of scope, when the index type is
2611 discriminant-dependent.
2612
2613 2021-05-06 Arnaud Charlet <charlet@adacore.com>
2614
2615 * einfo.ads, exp_prag.adb, exp_util.adb: Fix typos.
2616
2617 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2618
2619 * exp_attr.adb (Expand_N_Attribute_Reference): Fix expansion of
2620 attributes Input and Output for unchecked unions.
2621 * sem_case.ads: Fix typo "disriminant" and refill comment.
2622
2623 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2624
2625 * exp_attr.adb, exp_ch9.adb, sem_ch3.adb: Reuse
2626 Has_Defaulted_Discriminants.
2627 * sem_ch4.adb (Analyze_Allocator): Reuse
2628 Has_Defaulted_Discriminants (after reordering conjuncts); remove
2629 redundant IF statement, whose condition is implied by
2630 Has_Defaulted_Discriminants.
2631 * sem_util.adb (Has_Defaulted_Discriminants): Has_Discriminants
2632 implies that the First_Discriminant is present.
2633 (Is_Fully_Initialized_Type): Reuse Has_Defaulted_Discriminants.
2634
2635 2021-05-05 Justin Squirek <squirek@adacore.com>
2636
2637 * exp_ch6.adb (Expand_Call_Helper): Add condition to check for
2638 expanded actuals and remove dead code.
2639
2640 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2641
2642 * exp_ch4.adb (Has_Unconstrained_UU_Component): Rewrite to
2643 follow the Ada RM grammar.
2644
2645 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2646
2647 * exp_ch4.adb (User_Defined_Primitive_Equality_Op): Refine type
2648 of a local variable.
2649 * exp_dbug.adb (Scope_Contains): Refine all types from Node_Id
2650 to Entity_Id; rename parameters to match those of the
2651 Scope_Within routine (which is similar but not the same); also,
2652 simplify an OR ELSE into a membership test.
2653
2654 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2655
2656 * exp_ch4.adb (Component_Is_Unconstrained_UU): Detect both
2657 qualified and unqualified names of unchecked union components.
2658
2659 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2660
2661 * exp_ch4.adb (Variant_Is_Unconstrained_UU): Remove redundant
2662 check for empty list.
2663 * exp_disp.adb (Find_Entry_Index): Simplify by removing
2664 redundant check and counting from zero; fix type of a local
2665 variable.
2666 * sem_ch12.adb (Save_Global_Descendant): Remove an unnecessary
2667 special-case for empty lists.
2668
2669 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2670
2671 * exp_ch4.adb (Apply_Accessibility_Check): Skip a statically
2672 true condition in expanded raise statement.
2673
2674 2021-05-05 Bob Duff <duff@adacore.com>
2675
2676 * libgnat/s-os_lib.adb (Missed_Drive_Letter): Simplify the code.
2677
2678 2021-05-05 Ed Schonberg <schonberg@adacore.com>
2679
2680 * sem_ch5.adb (Analyze_Assignment): Do not emit the warning that
2681 a previous value of the target object is useless if the
2682 right-hand side of the assignment includes target names.
2683
2684 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2685
2686 * exp_imgv.adb: Add with/use clauses for Targparm.
2687 (Build_Enumeration_Image_Tables): Set type of Threshold to Nat and
2688 initialize it to Nat'Last if the type is local and the target does
2689 not support descriptors. Adjust Threshold_For_Size similarly.
2690 (Expand_Value_Attribute): Minor tweaks.
2691
2692 2021-05-05 Ghjuvan Lacambre <lacambre@adacore.com>
2693
2694 * exp_ch7.adb (Expand_N_Package_Body): Add CUDA init call.
2695 * sem_ch7.adb (Analyze_Package_Body_Helper): Remove CUDA init
2696 call.
2697
2698 2021-05-05 Ghjuvan Lacambre <lacambre@adacore.com>
2699
2700 * par-ch5.adb (P_Condition): Check if expression is declare
2701 expression.
2702
2703 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2704
2705 * make.adb (Make): Use GNAT.Ctrl_C.Install_Handler instead of a
2706 custom imported procedure.
2707
2708 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2709
2710 * exp_imgv.adb (Is_User_Defined_Enumeration_Type): Delete.
2711 (Expand_Image_Attribute): Move inline expansion into normal flow of
2712 control, move down declarations and remove superfluous processing.
2713
2714 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2715
2716 * libgnat/g-alleve.adb (Bit_Operation): Now a not-null type.
2717 * libgnat/g-sechas.adb (Fill_Buffer_Access): Likewise.
2718 * libgnat/s-dwalin.adb (Callback): Likewise.
2719
2720 2021-05-05 Ghjuvan Lacambre <lacambre@adacore.com>
2721
2722 * exp_util.adb (Is_Possibly_Unaligned_Object): Remove commented
2723 code.
2724
2725 2021-05-05 Ed Schonberg <schonberg@adacore.com>
2726
2727 * sem_ch3.adb (Find_Type_Of_Object): When In_Spec_Expression is
2728 set and the object declaration generates a subtype indication,
2729 build the corresponding subtype declaration and place it in tree
2730 without the use of Insert_Actions, which is disabled in this
2731 context.
2732
2733 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2734
2735 * debug.adb (d_x): Document extended usage.
2736 * exp_imgv.adb (Expand_Standard_Boolean_Image): New procedure.
2737 (Expand_Image_Attribute): Call it to expand in line the attribute
2738 for standard boolean by default.
2739
2740 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2741
2742 * debug.adb (d_x): Document new usage.
2743 * exp_imgv.adb (Expand_User_Defined_Enumeration_Image): Add Typ
2744 parameter and use it throughout the processing.
2745 (Expand_Image_Attribute): Retrieve the underlying type of the
2746 prefix and use the inline expansion for user-defined enumeration
2747 types with a literal string by default.
2748
2749 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2750
2751 * libgnat/s-dorepr.adb (Split): Declare a per-size temporary.
2752 Add pragma Annotate.
2753
2754 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2755
2756 * exp_ch4.adb, sem_ch13.adb, sem_eval.adb, sem_res.adb: Remove
2757 redundant calls to UI_From_Int.
2758
2759 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2760
2761 * exp_imgv.ads (Build_Enumeration_Image_Tables): Adjust comment.
2762 * exp_imgv.adb (Build_Enumeration_Image_Tables): Add the
2763 declaration nodes of the 4 tables to the declaration list of the
2764 function body.
2765
2766 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2767
2768 * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-imagen, s-imen16,
2769 s-imen32, s-imenu8, s-pehage, s-valuen, s-vaen16, s-vaen32 and
2770 s-vaenu8. Remove s-imenne, s-imgenu and s-valenu.
2771 * debug.adb (d_h): Document new usage.
2772 * einfo.ads (Lit_Hash): New attribute for enumeration types.
2773 (Set_Lit_Hash): Declare.
2774 * einfo.adb (Lit_Hash): New function.
2775 (Set_Lit_Hash): New procedure.
2776 (Write_Field21_Name): Print Lit_Hash for Enumeration_Kind.
2777 * exp_imgv.ads (Build_Enumeration_Image_Tables): Fix description
2778 and document the hash function and its tables.
2779 * exp_imgv.adb: Add with/use clauses for Debug. Add with clause
2780 for System.Perfect_Hash_Generators.
2781 (Append_Table_To): New helper routine.
2782 (Build_Enumeration_Image_Tables): Call it to build the tables.
2783 In the main unit, register the literals with the hash generator.
2784 If they are sufficiently many and -gnatd_h is not passed, generate
2785 a perfect hash function and its tables; otherwise, generate a dummy
2786 hash function. For the other units, generate only the declaration.
2787 In all cases, set Lit_Hash to the entity of the function, if any.
2788 (Expand_Value_Attribute): Pass the 'Unrestricted_Access of Lit_Hash,
2789 if any, as third argument to the Value_Enumeration_NN function.
2790 * gnat1drv.adb (Adjust_Global_Switches): force simpler implementation
2791 of 'Value in CodePeer_Mode.
2792 * lib.ads (Synchronize_Serial_Number): Add SN parameter.
2793 * lib.adb (Synchronize_Serial_Number): Assert that it is larger than
2794 the serial number of the current unit and set the latter to it only
2795 in this case.
2796 * rtsfind.ads (RTU_Id): Add System_Img_Enum_8, System_Img_Enum_16,
2797 System_Img_Enum_32, System_Val_Enum_8, System_Val_Enum_16 and
2798 System_Val_Enum_32. Remove System_Img_Enum, System_Img_Enum_New
2799 and System_Val_Enum.
2800 * sem_attr.adb (Analyze_Access_Attribute): Do not flag a compiler
2801 generated Unrestricted_Access attribute as illegal in a declare
2802 expression.
2803 (RE_Unit_Table): Adjust to above changes.
2804 * libgnat/g-heasor.ads: Add pragma Compiler_Unit_Warning.
2805 * libgnat/g-table.ads: Likewise.
2806 * libgnat/g-pehage.ads: Add with clause and local renaming for
2807 System.Perfect_Hash_Generators.
2808 (Optimization): Turn into derived type.
2809 (Verbose): Turn into renaming.
2810 (Too_Many_Tries): Likewise.
2811 (Table_Name): Move to System.Perfect_Hash_Generators.
2812 (Define): Likewise.
2813 (Value): Likewise.
2814 * libgnat/g-pehage.adb: Remove with clause for Ada.Directories,
2815 GNAT.Heap_Sort_G and GNAT.Table. Move bulk of implementation
2816 to System.Perfect_Hash_Generators, only keep the output part.
2817 * libgnat/s-imagen.ads: New generic unit.
2818 * libgnat/s-imagen.adb: New body.
2819 * libgnat/s-imen16.ads: New unit.
2820 * libgnat/s-imen32.ads: Likewise.
2821 * libgnat/s-imenu8.ads: Likewise.
2822 * libgnat/s-imenne.ads: Adjust description.
2823 * libgnat/s-imgenu.ads: Delete.
2824 * libgnat/s-imgenu.adb: Likewise.
2825 * libgnat/s-pehage.ads: New unit from GNAT.Perfect_Hash_Generators.
2826 * libgnat/s-pehage.adb: New body from GNAT.Perfect_Hash_Generators.
2827 * libgnat/s-valuen.ads: New generic unit.
2828 * libgnat/s-valuen.adb: New body.
2829 * libgnat/s-vaen16.ads: New unit.
2830 * libgnat/s-vaen32.ads: Likewise.
2831 * libgnat/s-vaenu8.ads: Likewise.
2832 * libgnat/s-valenu.ads: Delete.
2833 * libgnat/s-valenu.adb: Likewise.
2834 * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Add s-pehage.o.
2835 (GNATBIND_OBJS): Remove s-imgenu.o.
2836
2837 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
2838
2839 * sem_util.ads (Apply_Compile_Time_Constraint_Error): Remove
2840 parameter Rep from the function spec and "and if the flag Rep is
2841 set" from the comment.
2842 * sem_util.adb (Apply_Compile_Time_Constraint_Error): Remove
2843 parameter Rep.
2844
2845 2021-05-05 Ed Schonberg <schonberg@adacore.com>
2846
2847 * sem_aggr.adb (Resolve_Indexed_Aggregate): For indexed
2848 aggregates with component associations verify that if there is
2849 more than one component association then all the choices are
2850 static, that the set of choices define a continuous sequence of
2851 values, and that if loop specfications appear, they do not
2852 include iterator filters or key expressions.
2853
2854 2021-05-05 Eric Botcazou <ebotcazou@adacore.com>
2855
2856 * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-dourea, s-imager,
2857 s-imgflt, s-imglfl and s-imgllf.
2858 (LIBGNAT_TARGET_PAIRS) [PowerPC/VxWorks]: Use s-dorepr__fma.adb.
2859 (LIBGNAT_TARGET_PAIRS) [PowerPC/VxWorksAE]: Likewise.
2860 (LIBGNAT_TARGET_PAIRS) [Aarch64/VxWorks]: Likewise.
2861 (LIBGNAT_TARGET_PAIRS) [Aarch64/QNX]: Likewise.
2862 (LIBGNAT_TARGET_PAIRS) [Aarch64/FreeBSD]: Likewise.
2863 (LIBGNAT_TARGET_PAIRS) [PowerPC/Linux]: Likewise.
2864 (LIBGNAT_TARGET_PAIRS) [Aarch64/Linux]: Likewise.
2865 (LIBGNAT_TARGET_PAIRS) [IA-64/Linux]: Likewise.
2866 (LIBGNAT_TARGET_PAIRS) [IA-64/HP-UX]: Likewise.
2867 (LIBGNAT_TARGET_PAIRS) [RISC-V/Linux]: Likewise.
2868 (LIBGNAT_TARGET_PAIRS) [PowerPC/Darwin]: Likewise.
2869 * exp_attr.adb (Expand_N_Attribute_Reference) [Attribute_Fore]: Use
2870 Fixed suffix and Long_Float type.
2871 * exp_imgv.adb (Expand_Image_Attribute): For floating-point types,
2872 use the routine of the corresponding root type. For ordinary fixed
2873 point types, use Fixed suffix and Long_Float type.
2874 (Expand_Value_Attribute): Revert latest change for Long_Long_Float.
2875 * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Remove libgnat units
2876 g-hesora.o and s-imgenu.o, add g-heasor.o, g-table.o and s-pehage.o.
2877 (GNATBIND_OBJS): Remove libgnat unit s-imgenu.o.
2878 * rtsfind.ads (RTU_Id): Add System_Img_Flt, System_Img_LFlt and
2879 System_Img_LLF. Remove System_Img_Real.
2880 (RE_Id): Rename RE_Fore_Real to RE_Fore_Fixed. Add RE_Image_Float,
2881 RE_Image_Long_Float and RE_Image_Long_Long_Float. Rename
2882 RE_Image_Ordinary_Fixed_Point to RE_Image_Fixed.
2883 (RE_Unit_Table): Adjust to above changes.
2884 * libgnat/a-nbnbre.adb (Fixed_Conversions): Use Long_Float instead
2885 of Long_Long_Float.
2886 * libgnat/a-textio.ads (Field): Remove obsolete comment.
2887 * libgnat/a-ticoau.ads (Aux): Adjust ancestor package.
2888 * libgnat/a-ticoau.adb: Remove with/use clause for System.Img_Real.
2889 (Puts): Call Aux.Set_Image instead of Set_Image_Real.
2890 * libgnat/a-ticoio.adb: Add with/use clauses for System.Img_Flt,
2891 System.Img_LFlt and System.Img_LLF.
2892 (Scalar_Float): Add third actual parameter.
2893 (Scalar_Long_Float): Likewise.
2894 (Scalar_Long_Long_Float): Likewise.
2895 * libgnat/a-tifiio.adb: Add with/use clauses for System.Img_LFlt
2896 and System.Val_LFlt. Remove the one for System.Val_LLF. Replace
2897 Long_Long_Float with Long_Float throughout.
2898 * libgnat/a-tifiio__128.adb: Likewise.
2899 * libgnat/a-tiflau.ads: Add Set_Image formal parameter.
2900 * libgnat/a-tiflau.adb: Add with/use clause for System.Img_Util,
2901 remove the one for System.Img_Real.
2902 (Put): Call Set_Image instead of Set_Image_Real.
2903 (Puts): Likewise.
2904 * libgnat/a-tiflio.adb: Add with/use clause for System.Img_Flt,
2905 System.Img_LFlt and System.Img_LLF.
2906 (Aux_Float): Add third actual parameter.
2907 (Aux_Long_Float): Likewise.
2908 (Aux_Long_Long_Float): Likewise.
2909 * libgnat/a-witeio.ads (Field): Remove obsolete comment.
2910 * libgnat/a-wtcoau.ads (Aux): Adjust ancestor package.
2911 * libgnat/a-wtcoau.adb: Remove with/use clause for System.Img_Real.
2912 (Puts): Call Aux.Set_Image instead of Set_Image_Real.
2913 * libgnat/a-wtcoio.adb: Add with/use clauses for System.Img_Flt,
2914 System.Img_LFlt and System.Img_LLF.
2915 (Scalar_Float): Add third actual parameter.
2916 (Scalar_Long_Float): Likewise.
2917 (Scalar_Long_Long_Float): Likewise.
2918 * libgnat/a-wtfiio.adb: Add with/use clauses for System.Img_LFlt
2919 and System.Val_LFlt. Remove the one for System.Val_LLF. Replace
2920 Long_Long_Float with Long_Float throughout.
2921 * libgnat/a-wtfiio__128.adb: Likewise.
2922 * libgnat/a-wtflau.ads: Add Set_Image formal parameter.
2923 * libgnat/a-wtflau.adb: Add with/use clause for System.Img_Util,
2924 remove the one for System.Img_Real.
2925 (Put): Call Set_Image instead of Set_Image_Real.
2926 (Puts): Likewise.
2927 * libgnat/a-wtflio.adb: Add with/use clause for System.Img_Flt,
2928 System.Img_LFlt and System.Img_LLF.
2929 (Aux_Float): Add third actual parameter.
2930 (Aux_Long_Float): Likewise.
2931 (Aux_Long_Long_Float): Likewise.
2932 * libgnat/a-ztexio.ads (Field): Remove obsolete comment.
2933 * libgnat/a-ztcoau.ads (Aux): Adjust ancestor package.
2934 * libgnat/a-ztcoau.adb: Remove with/use clause for System.Img_Real.
2935 (Puts): Call Aux.Set_Image instead of Set_Image_Real.
2936 * libgnat/a-ztcoio.adb: Add with/use clauses for System.Img_Flt,
2937 System.Img_LFlt and System.Img_LLF.
2938 (Scalar_Float): Add third actual parameter.
2939 (Scalar_Long_Float): Likewise.
2940 (Scalar_Long_Long_Float): Likewise.
2941 * libgnat/a-ztfiio.adb: Add with/use clauses for System.Img_LFlt
2942 and System.Val_LFlt. Remove the one for System.Val_LLF. Replace
2943 Long_Long_Float with Long_Float throughout.
2944 * libgnat/a-ztfiio__128.adb: Likewise.
2945 * libgnat/a-ztflau.ads: Add Set_Image formal parameter.
2946 * libgnat/a-ztflau.adb: Add with/use clause for System.Img_Util,
2947 remove the one for System.Img_Real.
2948 (Put): Call Set_Image instead of Set_Image_Real.
2949 (Puts): Likewise.
2950 * libgnat/a-ztflio.adb: Add with/use clause for System.Img_Flt,
2951 System.Img_LFlt and System.Img_LLF.
2952 (Aux_Float): Add third actual parameter.
2953 (Aux_Long_Float): Likewise.
2954 (Aux_Long_Long_Float): Likewise.
2955 * libgnat/s-dorepr.adb: New file.
2956 * libgnat/s-dorepr__fma.adb: Likewise.
2957 * libgnat/s-dourea.ads: Likewise.
2958 * libgnat/s-dourea.adb: Likewise.
2959 * libgnat/s-forrea.ads (Fore_Real): Rename into...
2960 (Fore_Fixed): ...this and take Long_Float parameters.
2961 * libgnat/s-forrea.adb (Fore_Real): Likewise.
2962 (Fore_Fixed): Likewise.
2963 * libgnat/s-imgrea.ads: Move to...
2964 (Set_Image_Real): Turn into mere renaming.
2965 * libgnat/s-imager.ads: ...here.
2966 (Image_Ordinary_Fixed_Point): Turn into...
2967 (Image_Fixed_Point): ...this.
2968 * libgnat/s-imgrea.adb: Add pragma No_Body. Move to...
2969 * libgnat/s-imager.adb: ...here.
2970 (Image_Ordinary_Fixed_Point): Turn into...
2971 (Image_Fixed_Point): ...this.
2972 (Is_Negative): Replace Long_Long_Float with Num.
2973 (Set_Image_Real): Likewise. Use Double_T instead of single Num
2974 throughout the algorithm.
2975 * libgnat/s-imgflt.ads: New file.
2976 * libgnat/s-imglfl.ads: Likewise.
2977 * libgnat/s-imgllf.ads: Likewise.
2978 * libgnat/s-imagef.ads: Adjust comment.
2979 * libgnat/s-imguti.ads (Max_Real_Image_Length): New named number.
2980 * libgnat/s-powflt.ads (Maxpow): Adjust.
2981 (Powten): Turn into an exact table of double Float.
2982 * libgnat/s-powlfl.ads (Maxpow): Adjust.
2983 (Powten): Turn into an exact table of double Long_Float.
2984 * libgnat/s-powllf.ads (Maxpow): Adjust.
2985 (Powten): Turn into an exact table of double Long_Long_Float.
2986 * libgnat/s-valrea.ads: Change order of formal parameters.
2987 * libgnat/s-valrea.adb: Add with clause for System.Double_Real.
2988 (Double_Real): New instantiation.
2989 (Fast2Sum): Delete.
2990 (Large_Powten): New function.
2991 (Integer_to_Real): Use Quick_Two_Sum instead of Fast2Sum. Convert
2992 the value to Double_T. Do the scaling in Double_T for base 10.
2993 * libgnat/s-valflt.ads: Remove with/use clasue for Interfaces,
2994 add it for System.Unsigned_Types. Use Unsigned.
2995 * libgnat/s-vallfl.ads: Remove with/use clasue for Interfaces,
2996 add it for System.Unsigned_Types. Use Long_Unsigned.
2997 * libgnat/s-valllf.ads: Remove with/use clasue for Interfaces,
2998 add it for System.Unsigned_Types. Use Long_Long_Unsigned.
2999
3000 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
3001
3002 * sem_eval.adb (Eval_Arithmetic_Op): Call
3003 Set_Raises_Constraint_Error on real division by zero just like
3004 it is called for integer division by zero earlier in this
3005 routine.
3006
3007 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
3008
3009 * freeze.adb (Build_Renamed_Body): Simplify IF and WHILE
3010 statements with the same condition.
3011
3012 2021-05-05 Piotr Trojanek <trojanek@adacore.com>
3013
3014 * pprint.adb (Expr_Name): Introduce local constants to make the
3015 code more readable and avoid repeated calls to Next to reach the
3016 ELSE part of an if-expression.
3017
3018 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3019
3020 * pprint.adb: Remove qualification of arbitrary calls to
3021 Sinfo.Expressions and Sinfo.Parameter_Associations.
3022
3023 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3024
3025 * pprint.adb (Expr_Name): Simplify with functional variant of
3026 UI_Image.
3027
3028 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3029
3030 * pprint.adb (To_Mixed): Removed.
3031
3032 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3033
3034 * pprint.adb (List_Name_Count): Change type from Integer to
3035 Natural.
3036
3037 2021-05-04 Yannick Moy <moy@adacore.com>
3038
3039 * pprint.adb (Expression_Image): Special case for
3040 expression-with-actions.
3041
3042 2021-05-04 Bob Duff <duff@adacore.com>
3043
3044 * exp_ch4.adb (Expand_Concatenate): Remove the non-optimization.
3045
3046 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3047
3048 * lib-xref.adb (Generate_Reference_To_Formals): Remove dedicated
3049 branch for generic subprograms (they are now handled together
3050 with non-generic subprograms in the ELSE branch); replace a
3051 low-level Ekind membership test with a high-level call to
3052 Is_Access_Subprogram_Type.
3053
3054 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3055
3056 * sem_ch12.adb (Check_Abstract_Primitives): Match First_Formal
3057 with Next_Formal.
3058 * sem_ch6.adb (Is_Non_Overriding_Operation): Likewise.
3059
3060 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3061
3062 * sem_prag.adb (Collect_Global_Item): Iterate directly over
3063 formals.
3064
3065 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3066
3067 * sem_prag.ads (Collect_Subprogram_Inputs_Outputs): Update
3068 comment; this routine is no longer used by GNATprove.
3069 * sem_prag.adb (Find_Role): The IN parameter is on output only
3070 when it belongs to non-function; also, the otherwise constant
3071 object can only be written by a non-function.
3072 (Collect_Global_Item): The IN parameter can only be written when
3073 it belongs to non-function; also, unnest this check to make it
3074 easier to read.
3075
3076 2021-05-04 Arnaud Charlet <charlet@adacore.com>
3077
3078 * libgnat/s-assert.ads (Assert_Failure): Now a renaming of
3079 Assertion_Error.
3080 * libgnat/a-assert.ads (Assertion_Error): Now a first class
3081 citizen. Remove dependency on System.Assertions.
3082 * gcc-interface/a-assert.ads, gcc-interface/a-assert.adb: New.
3083 * gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add
3084 a-assert.o from gcc-interface.
3085
3086 2021-05-04 Yannick Moy <moy@adacore.com>
3087
3088 * erroutc.adb (Matches): Move spec...
3089 * erroutc.ads (Matches): ...here.
3090
3091 2021-05-04 Yannick Moy <moy@adacore.com>
3092
3093 * gnat1drv.adb (Adjust_Global_Switches): Force error marker in
3094 GNATprove mode.
3095
3096 2021-05-04 Bob Duff <duff@adacore.com>
3097
3098 * binde.adb: No need for ??? marks in Binde, because it is
3099 superseded by Bindo.
3100 * bindo-writers.adb (Write_Unit_Closure): Verified that -Ra
3101 works.
3102 * exp_ch4.adb, sinfo.ads (Expand_N_Type_Conversion): Rules for
3103 conversions passed to gigi are documented in sinfo.ads.
3104 (Expand_N_Unchecked_Type_Conversion): Comment is a duplicate of
3105 one in sinfo.ads.
3106 (Expand_N_In): Robert already added sufficient comments years
3107 after the ??? comment was inserted.
3108 (Expand_Membership_Minimize_Eliminate_Overflow): I don't see any
3109 reason why Stand should export Long_Long_Integer'Base -- it
3110 doesn't export any other base types.
3111 (Size_In_Storage_Elements): We are doing an allocator, so we
3112 don't care about sizes in bits.
3113 (Expand_N_Allocator): PolyORB isn't going to be significantly
3114 improved, so we're not going to mess with remote access to
3115 class-wide types.
3116 (Optimize_Return_Stmt): It's not important to optimize return
3117 statements in predicate functions -- there are many
3118 more-important optimizations we could do. Keep part of the
3119 comment without "???", to clarify why the "and then ...".
3120 (User_Defined_Primitive_Equality_Op): The optimization doesn't
3121 seem important enough.
3122 (Expand_N_Unchecked_Type_Conversion): Refactor to use
3123 Expand_N_Unchecked_Expression.
3124 (Make_Array_Comparison_Op): This seems like a case of "it it's
3125 not broken, don't fix it". Too much risk of causing bugs.
3126 * debug_a.adb: Remove ??? comments asking why Current_Error_Node
3127 is maintained unconditionally, and add a comment explaining why.
3128 * errout.adb: These kinds of minor bugs do indeed exist, but
3129 we're never going to get around to fixing them "properly", so we
3130 need this code for robustness.
3131 * gnatchop.adb (Read_File): Document when read can fail.
3132 * gnatdll.adb (Parse_Command_Line): Nobody is complaining about
3133 these arbitrary limits, so no need to use Table. Increase the
3134 limits just in case. It is clear from the names what they are
3135 limits on.
3136 * gnatlink.adb: Add needed comments.
3137 (Delete): An existing comment makes clear it's intentional, and
3138 it's been like that since 1996.
3139 (Process_Args): Improve comments.
3140 (Search_Library_Path): Refactoring to avoid deep nesting.
3141 * inline.adb (Build_Body_To_Inline): Probably won't get around
3142 to doing that optimization.
3143 (Is_Unit_Subprogram): No, this should not be moved to Sem_Aux,
3144 because it is too specialized to this context.
3145 (Do_Reset): No comment is needed here; it's clear from the
3146 comment on Reset_Dispatching_Calls. Do_Reset is an artificial
3147 subprogram; if we had proper iterators, it would just be an if
3148 statement in the loop.
3149 (Rewrite_Function_Call): Probably won't get around to doing that
3150 optimization.
3151 * layout.adb (Layout_Type): The gigi comment doesn't need to be
3152 a ??? comment, and it's been that way since 2000. The
3153 limitation to scalars will likely never be investigated, and
3154 it's been that way since 2009.
3155 * lib.adb (Check_Same_Extended_Unit): This doesn't look like
3156 something that needs fixing; it looks like a permanent
3157 workaround.
3158 * lib-load.adb (Change_Main_Unit_To_Spec): It is good enough in
3159 practice.
3160 (Load_Unit): Nobody will ever get around to investigating the
3161 obscure PMES oddity, and the optimization is not worth the
3162 trouble.
3163 * live.adb: It's not worth documenting this. It is used only
3164 with a debug switch. Nobody who has done significant work on it
3165 is still around, so it would require substantial investigation.
3166 * mdll.ads: I see no reason for USE.
3167 * namet.ads: Routines are obsolete, but they're not going
3168 anywhere anytime soon (too much work, and surprisingly delicate
3169 because of dependences on global variables).
3170 * osint.ads: Minor.
3171 * osint.adb: Improve comments.
3172 (Full_Lib_File_Name): Use Smart_Find_File.
3173
3174 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3175
3176 * exp_prag.adb, sem_prag.adb: Replace low-level Ekind membership
3177 tests with a high-level call to Is_Formal_Object.
3178
3179 2021-05-04 Arnaud Charlet <charlet@adacore.com>
3180
3181 * cstand.adb, sprint.adb, switch-c.adb, xr_tabls.ads,
3182 xr_tabls.adb, xref_lib.adb: Address ??? comments.
3183
3184 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3185
3186 * sem_prag.adb (Analyze_Global_Item): Take subprogram kind into
3187 account when accepting or rejecting a constant of an
3188 access-to-variable type as a global Output/In_Out; do this check
3189 inside an ELSIF branch to avoid unnecessary evaluation of the
3190 subsequent condition.
3191
3192 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3193
3194 * sem_prag.adb (Role_Error, Usage_Error): Replace calls to
3195 Name_Find and Get_Name_String with a call to To_String.
3196
3197 2021-05-04 Ed Schonberg <schonberg@adacore.com>
3198
3199 * exp_aggr.adb (Build_Siz_Exp): new function, subsidiary of
3200 Expand_Container_Aggregate, to create an expression to be used
3201 in the dynamic allocation of a container with a single container
3202 element association.
3203 (Add_Range): Handle static bounds of ranges over enumerations.
3204 (Expand_Container_Aggregate): Add declaration for size
3205 expression when needed, and use it in container object
3206 declaration for container.
3207
3208 2021-05-04 Arnaud Charlet <charlet@adacore.com>
3209
3210 * exp_ch7.adb (Build_Finalizer_Helper.New_Finalizer_Name):
3211 Unnest so that it can be reused.
3212 (Build_Finalizer_Helper.Process_Declarations): Call the
3213 xxx__finalize_body procedure of a package instantiation in case
3214 it contains finalization statements. Code clean ups.
3215 (Build_Finalizer_Helper.Create_Finalizer): Export and set an
3216 Interface_Name for library level finalizers since these may be
3217 imported now.
3218 (Build_Finalizer_Helper): Need to process library level package
3219 body instantiations which may contain objects requiring
3220 finalization.
3221 * libgnat/s-finmas.ads: Fix typo.
3222
3223 2021-05-04 Arnaud Charlet <charlet@adacore.com>
3224
3225 * checks.adb (Append_Range_Checks, Apply_Selected_Length_Checks,
3226 Determine_Range, Insert_Range_Checks,
3227 Install_Null_Excluding_Check, Selected_Length_Checks,
3228 Selected_Range_Checks): Address ??? comments and code cleanups.
3229
3230 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3231
3232 * sem_prag.adb (Check_Mode_Restriction_In_Enclosing_Context):
3233 Apply the rule even with no explicit Global contract (and remove
3234 a dead condition for Refined_Global).
3235
3236 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3237
3238 * sem_prag.adb (Check_Mode_Restriction_In_Enclosing_Context):
3239 Extend check to protected entries.
3240
3241 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3242
3243 * sem_prag.adb (Check_Mode_Restriction_In_Enclosing_Context):
3244 Fix reference to SPARK RM rule number.
3245
3246 2021-05-04 Eric Botcazou <ebotcazou@adacore.com>
3247
3248 * exp_intr.adb: Remove with/use clauses for Urealp.
3249 (Expand_Is_Negative): Delete.
3250 (Expand_Intrinsic_Call): Do not call it.
3251 * rtsfind.ads (RE_Id): Remove RE_Float_Unsigned.
3252 (RE_Unit_Table): Remove entry for RE_Float_Unsigned.
3253 * snames.ads-tmpl (Name_Is_Negative): Delete.
3254 * libgnat/s-imgrea.ads (Set_Image_Real): Fix mode of S parameter.
3255 * libgnat/s-imgrea.adb: Add with/use clauses for System.Img_Util.
3256 (LLU): New subtype.
3257 (Maxdigs): Use it.
3258 (Is_Negative): Reimplement.
3259 (Image_Floating_Point): Simplify.
3260 (Set_Image_Real): Fix mode of S parameter. Remove the low-level
3261 processing on characters. Flip the sign of the Scale variable.
3262 Compute the maximum number of digits for the straight notation.
3263 Call Set_Decimal_Digits at the end to do the final formatting.
3264 * libgnat/s-imguti.ads (Floating_Invalid_Value): New type.
3265 (Set_Floating_Invalid_Value): New procedure.
3266 * libgnat/s-imguti.adb (Set_Floating_Invalid_Value): Implement it
3267 based on existing code from Set_Image_Real.
3268 * libgnat/s-unstyp.ads (Float_Unsigned): Delete.
3269
3270 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3271
3272 * csets.adb (Initialize): Refactor into CASE statement; raise
3273 exception on unsupported code of character set (it will be
3274 gently rejected earlier when scanning command line switches).
3275 * switch-b.adb (Scan_Binder_Switches): Refactor into a
3276 membership expression; add missing '9' choice; reorder as
3277 described by GNAT UG, section 4.3.11.
3278 * switch-c.adb (Scan_Front_End_Switches): Refactor into a
3279 membership expression and reorder as above.
3280 * doc/gnat_ugn/building_executable_programs_with_gnat.rst
3281 (gnatic): Mention '5' as an allowed value for "c".
3282 * gnat_ugn.texi: Regenerate.
3283
3284 2021-05-04 Piotr Trojanek <trojanek@adacore.com>
3285
3286 * errout.adb (Error_Msg_Internal): Add assertion to prevent
3287 style mistakes reappearing in the future.
3288
3289 2021-05-04 Javier Miranda <miranda@adacore.com>
3290
3291 * exp_ch4.adb (Tagged_Membership): Remove wrong condition that
3292 is not consistent with the documentation of this subprogram.
3293
3294 2021-05-04 Yannick Moy <moy@adacore.com>
3295
3296 * sem_res.adb (Valid_Conversion): Make message a continuation.
3297
3298 2021-05-04 Arnaud Charlet <charlet@adacore.com>
3299
3300 * styleg.adb: Address ??? comments.
3301
3302 2021-05-03 Arnaud Charlet <charlet@adacore.com>
3303
3304 * libgnat/a-stunau.ads, libgnat/a-stunau.adb,
3305 libgnat/a-stunau__shared.adb (Set_String): Remove old version,
3306 replace by a new version taking a callback to set the string.
3307
3308 2021-05-03 Arnaud Charlet <charlet@adacore.com>
3309
3310 * libgnat/a-coorma.ads (Map): Add missing
3311 Preelaborate_Initialization.
3312
3313 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
3314
3315 * exp_ch4.adb (Analyze_Number_Declaration, Expand_N_Op_Expon):
3316 Simplify with Is_Universal_Numeric_Type.
3317 * sem_attr.adb (Resolve_Attribute): Likewise.
3318 * sem_ch3.adb: Likewise.
3319 * sem_ch4.adb (Check_Common_Type, Check_Arithmetic_Pair):
3320 Likewise.
3321 * sem_eval.adb (Eval_Unary_Op, Test_In_Range): Likewise.
3322 * sem_res.adb (Resolve_Arithmetic_Op, Resolve_Membership_Op,
3323 Resolve_Op_Expon, Resolve_Unary_Op, Set_Mixed_Mode_Operand,
3324 Set_Operand_Type): Likewise.
3325 * sem_type.adb (Disambiguate, Find_Unique_Type): Likewise.
3326 * sem_util.adb (Universal_Interpretation): Likewise.
3327
3328 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
3329
3330 * exp_aggr.adb (Max_Aggregate_Size): Add header boxes for nested
3331 routines; move a local constant after nested subprogram bodies;
3332 refill comment.
3333
3334 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
3335
3336 * sem_attr.adb (Analyze_Attribute): Reuse Resolve with implicit
3337 type when analysing attribute Priority.
3338 * sem_ch5.adb (Analyze_Case_Statement): Likewise for a rare case
3339 in analysis of case statements.
3340 (Analyze_Iterator_Specification): Likewise for non-overloaded
3341 domain of iteration.
3342
3343 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
3344
3345 * einfo.adb (Write_Entity_Info): Simplify an Ekind membership
3346 test.
3347 * exp_aggr.adb (Is_CCG_Supported_Aggregate): Likewise.
3348
3349 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
3350
3351 * exp_ch7.adb (Build_Finalize_Statements): Refine type of a
3352 local counter variable.
3353 * exp_dist.adb (Append_Record_Traversal): Refine type of Counter
3354 parameter.
3355 (Add_Process_Element): Likewise.
3356 (Build_From_Any_Call): Refine type of a local counter variable.
3357 (Build_From_Any_Function): Likewise.
3358 (Build_To_Any_Function): Likewise.
3359 (FA_Rec_Add_Process_Element): Likewise.
3360 (TA_Append_Record_Traversal): Likewise.
3361 (TA_Rec_Add_Process_Element): Likewise.
3362
3363 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
3364
3365 * rtsfind.adb (SPARK_Implicit_Load): Simplify with Discard_Node.
3366
3367 2021-05-03 Arnaud Charlet <charlet@adacore.com>
3368
3369 * Makefile.rtl: Update copyright notice.
3370 * ada_get_targ.adb: Likewise.
3371 * adabkend.adb: Likewise.
3372 * adabkend.ads: Likewise.
3373 * adadecode.c: Likewise.
3374 * adadecode.h: Likewise.
3375 * adaint.c: Likewise.
3376 * adaint.h: Likewise.
3377 * affinity.c: Likewise.
3378 * ali-util.adb: Likewise.
3379 * ali-util.ads: Likewise.
3380 * ali.adb: Likewise.
3381 * ali.ads: Likewise.
3382 * alloc.ads: Likewise.
3383 * argv-lynxos178-raven-cert.c: Likewise.
3384 * argv.c: Likewise.
3385 * aspects.adb: Likewise.
3386 * aspects.ads: Likewise.
3387 * atree.adb: Likewise.
3388 * atree.ads: Likewise.
3389 * atree.h: Likewise.
3390 * aux-io.c: Likewise.
3391 * back_end.adb: Likewise.
3392 * back_end.ads: Likewise.
3393 * bcheck.adb: Likewise.
3394 * bcheck.ads: Likewise.
3395 * binde.adb: Likewise.
3396 * binde.ads: Likewise.
3397 * binderr.adb: Likewise.
3398 * binderr.ads: Likewise.
3399 * bindgen.adb: Likewise.
3400 * bindgen.ads: Likewise.
3401 * bindo-augmentors.adb: Likewise.
3402 * bindo-augmentors.ads: Likewise.
3403 * bindo-builders.adb: Likewise.
3404 * bindo-builders.ads: Likewise.
3405 * bindo-diagnostics.adb: Likewise.
3406 * bindo-diagnostics.ads: Likewise.
3407 * bindo-elaborators.adb: Likewise.
3408 * bindo-elaborators.ads: Likewise.
3409 * bindo-graphs.adb: Likewise.
3410 * bindo-graphs.ads: Likewise.
3411 * bindo-units.adb: Likewise.
3412 * bindo-units.ads: Likewise.
3413 * bindo-validators.adb: Likewise.
3414 * bindo-validators.ads: Likewise.
3415 * bindo-writers.adb: Likewise.
3416 * bindo-writers.ads: Likewise.
3417 * bindo.adb: Likewise.
3418 * bindo.ads: Likewise.
3419 * bindusg.adb: Likewise.
3420 * bindusg.ads: Likewise.
3421 * butil.adb: Likewise.
3422 * butil.ads: Likewise.
3423 * cal.c: Likewise.
3424 * casing.adb: Likewise.
3425 * casing.ads: Likewise.
3426 * ceinfo.adb: Likewise.
3427 * checks.adb: Likewise.
3428 * checks.ads: Likewise.
3429 * cio.c: Likewise.
3430 * clean.adb: Likewise.
3431 * clean.ads: Likewise.
3432 * comperr.adb: Likewise.
3433 * comperr.ads: Likewise.
3434 * contracts.adb: Likewise.
3435 * contracts.ads: Likewise.
3436 * csets.adb: Likewise.
3437 * csets.ads: Likewise.
3438 * csinfo.adb: Likewise.
3439 * cstand.adb: Likewise.
3440 * cstand.ads: Likewise.
3441 * cstreams.c: Likewise.
3442 * ctrl_c.c: Likewise.
3443 * debug.adb: Likewise.
3444 * debug.ads: Likewise.
3445 * debug_a.adb: Likewise.
3446 * debug_a.ads: Likewise.
3447 * einfo.adb: Likewise.
3448 * einfo.ads: Likewise.
3449 * elists.adb: Likewise.
3450 * elists.ads: Likewise.
3451 * elists.h: Likewise.
3452 * env.c: Likewise.
3453 * env.h: Likewise.
3454 * err_vars.ads: Likewise.
3455 * errno.c: Likewise.
3456 * errout.adb: Likewise.
3457 * errout.ads: Likewise.
3458 * erroutc.adb: Likewise.
3459 * erroutc.ads: Likewise.
3460 * errutil.adb: Likewise.
3461 * errutil.ads: Likewise.
3462 * eval_fat.adb: Likewise.
3463 * eval_fat.ads: Likewise.
3464 * exit.c: Likewise.
3465 * exp_aggr.adb: Likewise.
3466 * exp_aggr.ads: Likewise.
3467 * exp_atag.adb: Likewise.
3468 * exp_atag.ads: Likewise.
3469 * exp_attr.adb: Likewise.
3470 * exp_attr.ads: Likewise.
3471 * exp_cg.adb: Likewise.
3472 * exp_cg.ads: Likewise.
3473 * exp_ch10.ads: Likewise.
3474 * exp_ch11.adb: Likewise.
3475 * exp_ch11.ads: Likewise.
3476 * exp_ch12.adb: Likewise.
3477 * exp_ch12.ads: Likewise.
3478 * exp_ch13.adb: Likewise.
3479 * exp_ch13.ads: Likewise.
3480 * exp_ch2.adb: Likewise.
3481 * exp_ch2.ads: Likewise.
3482 * exp_ch3.adb: Likewise.
3483 * exp_ch3.ads: Likewise.
3484 * exp_ch4.adb: Likewise.
3485 * exp_ch4.ads: Likewise.
3486 * exp_ch5.adb: Likewise.
3487 * exp_ch5.ads: Likewise.
3488 * exp_ch6.adb: Likewise.
3489 * exp_ch6.ads: Likewise.
3490 * exp_ch7.adb: Likewise.
3491 * exp_ch7.ads: Likewise.
3492 * exp_ch8.adb: Likewise.
3493 * exp_ch8.ads: Likewise.
3494 * exp_ch9.adb: Likewise.
3495 * exp_ch9.ads: Likewise.
3496 * exp_code.adb: Likewise.
3497 * exp_code.ads: Likewise.
3498 * exp_dbug.adb: Likewise.
3499 * exp_dbug.ads: Likewise.
3500 * exp_disp.adb: Likewise.
3501 * exp_disp.ads: Likewise.
3502 * exp_dist.adb: Likewise.
3503 * exp_dist.ads: Likewise.
3504 * exp_fixd.adb: Likewise.
3505 * exp_fixd.ads: Likewise.
3506 * exp_imgv.adb: Likewise.
3507 * exp_imgv.ads: Likewise.
3508 * exp_intr.adb: Likewise.
3509 * exp_intr.ads: Likewise.
3510 * exp_pakd.adb: Likewise.
3511 * exp_pakd.ads: Likewise.
3512 * exp_prag.adb: Likewise.
3513 * exp_prag.ads: Likewise.
3514 * exp_put_image.adb: Likewise.
3515 * exp_put_image.ads: Likewise.
3516 * exp_sel.adb: Likewise.
3517 * exp_sel.ads: Likewise.
3518 * exp_smem.adb: Likewise.
3519 * exp_smem.ads: Likewise.
3520 * exp_spark.adb: Likewise.
3521 * exp_spark.ads: Likewise.
3522 * exp_strm.adb: Likewise.
3523 * exp_strm.ads: Likewise.
3524 * exp_tss.adb: Likewise.
3525 * exp_tss.ads: Likewise.
3526 * exp_unst.adb: Likewise.
3527 * exp_unst.ads: Likewise.
3528 * exp_util.adb: Likewise.
3529 * exp_util.ads: Likewise.
3530 * expander.adb: Likewise.
3531 * expander.ads: Likewise.
3532 * expect.c: Likewise.
3533 * fe.h: Likewise.
3534 * final.c: Likewise.
3535 * fmap.adb: Likewise.
3536 * fmap.ads: Likewise.
3537 * fname-sf.adb: Likewise.
3538 * fname-sf.ads: Likewise.
3539 * fname-uf.adb: Likewise.
3540 * fname-uf.ads: Likewise.
3541 * fname.adb: Likewise.
3542 * fname.ads: Likewise.
3543 * freeze.adb: Likewise.
3544 * freeze.ads: Likewise.
3545 * frontend.adb: Likewise.
3546 * frontend.ads: Likewise.
3547 * gcc-interface/ada-tree.h: Likewise.
3548 * gcc-interface/ada.h: Likewise.
3549 * gcc-interface/cuintp.c: Likewise.
3550 * gcc-interface/decl.c: Likewise.
3551 * gcc-interface/gadaint.h: Likewise.
3552 * gcc-interface/gigi.h: Likewise.
3553 * gcc-interface/lang-specs.h: Likewise.
3554 * gcc-interface/misc.c: Likewise.
3555 * gcc-interface/system.ads: Likewise.
3556 * gcc-interface/targtyps.c: Likewise.
3557 * gcc-interface/trans.c: Likewise.
3558 * gcc-interface/utils.c: Likewise.
3559 * gcc-interface/utils2.c: Likewise.
3560 * get_scos.adb: Likewise.
3561 * get_scos.ads: Likewise.
3562 * get_targ.adb: Likewise.
3563 * get_targ.ads: Likewise.
3564 * ghost.adb: Likewise.
3565 * ghost.ads: Likewise.
3566 * gnat1drv.adb: Likewise.
3567 * gnat1drv.ads: Likewise.
3568 * gnat_cuda.adb: Likewise.
3569 * gnat_cuda.ads: Likewise.
3570 * gnatbind.adb: Likewise.
3571 * gnatbind.ads: Likewise.
3572 * gnatchop.adb: Likewise.
3573 * gnatclean.adb: Likewise.
3574 * gnatcmd.adb: Likewise.
3575 * gnatcmd.ads: Likewise.
3576 * gnatdll.adb: Likewise.
3577 * gnatfind.adb: Likewise.
3578 * gnatkr.adb: Likewise.
3579 * gnatkr.ads: Likewise.
3580 * gnatlink.adb: Likewise.
3581 * gnatlink.ads: Likewise.
3582 * gnatls.adb: Likewise.
3583 * gnatls.ads: Likewise.
3584 * gnatmake.adb: Likewise.
3585 * gnatmake.ads: Likewise.
3586 * gnatname.adb: Likewise.
3587 * gnatname.ads: Likewise.
3588 * gnatprep.adb: Likewise.
3589 * gnatprep.ads: Likewise.
3590 * gnatvsn.adb: Likewise.
3591 * gnatvsn.ads: Likewise.
3592 * gnatxref.adb: Likewise.
3593 * gprep.adb: Likewise.
3594 * gprep.ads: Likewise.
3595 * gsocket.h: Likewise.
3596 * hostparm.ads: Likewise.
3597 * impunit.adb: Likewise.
3598 * impunit.ads: Likewise.
3599 * indepsw-aix.adb: Likewise.
3600 * indepsw-darwin.adb: Likewise.
3601 * indepsw-gnu.adb: Likewise.
3602 * indepsw.adb: Likewise.
3603 * indepsw.ads: Likewise.
3604 * init.c: Likewise.
3605 * initialize.c: Likewise.
3606 * inline.adb: Likewise.
3607 * inline.ads: Likewise.
3608 * itypes.adb: Likewise.
3609 * itypes.ads: Likewise.
3610 * krunch.adb: Likewise.
3611 * krunch.ads: Likewise.
3612 * layout.adb: Likewise.
3613 * layout.ads: Likewise.
3614 * lib-list.adb: Likewise.
3615 * lib-load.adb: Likewise.
3616 * lib-load.ads: Likewise.
3617 * lib-sort.adb: Likewise.
3618 * lib-util.adb: Likewise.
3619 * lib-util.ads: Likewise.
3620 * lib-writ.adb: Likewise.
3621 * lib-writ.ads: Likewise.
3622 * lib-xref-spark_specific.adb: Likewise.
3623 * lib-xref.adb: Likewise.
3624 * lib-xref.ads: Likewise.
3625 * lib.adb: Likewise.
3626 * lib.ads: Likewise.
3627 * libgnarl/a-astaco.adb: Likewise.
3628 * libgnarl/a-dispat.adb: Likewise.
3629 * libgnarl/a-dynpri.adb: Likewise.
3630 * libgnarl/a-etgrbu.ads: Likewise.
3631 * libgnarl/a-exetim__darwin.adb: Likewise.
3632 * libgnarl/a-exetim__default.ads: Likewise.
3633 * libgnarl/a-exetim__mingw.adb: Likewise.
3634 * libgnarl/a-exetim__mingw.ads: Likewise.
3635 * libgnarl/a-exetim__posix.adb: Likewise.
3636 * libgnarl/a-interr.adb: Likewise.
3637 * libgnarl/a-interr.ads: Likewise.
3638 * libgnarl/a-intnam.ads: Likewise.
3639 * libgnarl/a-intnam__aix.ads: Likewise.
3640 * libgnarl/a-intnam__darwin.ads: Likewise.
3641 * libgnarl/a-intnam__dragonfly.ads: Likewise.
3642 * libgnarl/a-intnam__dummy.ads: Likewise.
3643 * libgnarl/a-intnam__freebsd.ads: Likewise.
3644 * libgnarl/a-intnam__hpux.ads: Likewise.
3645 * libgnarl/a-intnam__linux.ads: Likewise.
3646 * libgnarl/a-intnam__lynxos.ads: Likewise.
3647 * libgnarl/a-intnam__mingw.ads: Likewise.
3648 * libgnarl/a-intnam__qnx.ads: Likewise.
3649 * libgnarl/a-intnam__rtems.ads: Likewise.
3650 * libgnarl/a-intnam__solaris.ads: Likewise.
3651 * libgnarl/a-intnam__vxworks.ads: Likewise.
3652 * libgnarl/a-reatim.adb: Likewise.
3653 * libgnarl/a-reatim.ads: Likewise.
3654 * libgnarl/a-retide.adb: Likewise.
3655 * libgnarl/a-retide.ads: Likewise.
3656 * libgnarl/a-rttiev.adb: Likewise.
3657 * libgnarl/a-rttiev.ads: Likewise.
3658 * libgnarl/a-synbar.adb: Likewise.
3659 * libgnarl/a-synbar.ads: Likewise.
3660 * libgnarl/a-synbar__posix.adb: Likewise.
3661 * libgnarl/a-synbar__posix.ads: Likewise.
3662 * libgnarl/a-sytaco.adb: Likewise.
3663 * libgnarl/a-sytaco.ads: Likewise.
3664 * libgnarl/a-tasatt.adb: Likewise.
3665 * libgnarl/a-tasatt.ads: Likewise.
3666 * libgnarl/a-taside.adb: Likewise.
3667 * libgnarl/a-taside.ads: Likewise.
3668 * libgnarl/a-tasini.adb: Likewise.
3669 * libgnarl/a-tasini.ads: Likewise.
3670 * libgnarl/a-taster.adb: Likewise.
3671 * libgnarl/g-boubuf.adb: Likewise.
3672 * libgnarl/g-boubuf.ads: Likewise.
3673 * libgnarl/g-boumai.ads: Likewise.
3674 * libgnarl/g-semaph.adb: Likewise.
3675 * libgnarl/g-semaph.ads: Likewise.
3676 * libgnarl/g-signal.adb: Likewise.
3677 * libgnarl/g-signal.ads: Likewise.
3678 * libgnarl/g-tastus.ads: Likewise.
3679 * libgnarl/g-thread.adb: Likewise.
3680 * libgnarl/g-thread.ads: Likewise.
3681 * libgnarl/i-vxinco.adb: Likewise.
3682 * libgnarl/i-vxinco.ads: Likewise.
3683 * libgnarl/s-inmaop.ads: Likewise.
3684 * libgnarl/s-inmaop__dummy.adb: Likewise.
3685 * libgnarl/s-inmaop__posix.adb: Likewise.
3686 * libgnarl/s-inmaop__vxworks.adb: Likewise.
3687 * libgnarl/s-interr.adb: Likewise.
3688 * libgnarl/s-interr.ads: Likewise.
3689 * libgnarl/s-interr__dummy.adb: Likewise.
3690 * libgnarl/s-interr__hwint.adb: Likewise.
3691 * libgnarl/s-interr__sigaction.adb: Likewise.
3692 * libgnarl/s-interr__vxworks.adb: Likewise.
3693 * libgnarl/s-intman.ads: Likewise.
3694 * libgnarl/s-intman__android.adb: Likewise.
3695 * libgnarl/s-intman__dummy.adb: Likewise.
3696 * libgnarl/s-intman__lynxos.adb: Likewise.
3697 * libgnarl/s-intman__mingw.adb: Likewise.
3698 * libgnarl/s-intman__posix.adb: Likewise.
3699 * libgnarl/s-intman__qnx.adb: Likewise.
3700 * libgnarl/s-intman__solaris.adb: Likewise.
3701 * libgnarl/s-intman__susv3.adb: Likewise.
3702 * libgnarl/s-intman__vxworks.adb: Likewise.
3703 * libgnarl/s-intman__vxworks.ads: Likewise.
3704 * libgnarl/s-linux.ads: Likewise.
3705 * libgnarl/s-linux__alpha.ads: Likewise.
3706 * libgnarl/s-linux__android.ads: Likewise.
3707 * libgnarl/s-linux__hppa.ads: Likewise.
3708 * libgnarl/s-linux__mips.ads: Likewise.
3709 * libgnarl/s-linux__riscv.ads: Likewise.
3710 * libgnarl/s-linux__sparc.ads: Likewise.
3711 * libgnarl/s-linux__x32.ads: Likewise.
3712 * libgnarl/s-mudido.adb: Likewise.
3713 * libgnarl/s-mudido__affinity.adb: Likewise.
3714 * libgnarl/s-osinte__aix.adb: Likewise.
3715 * libgnarl/s-osinte__aix.ads: Likewise.
3716 * libgnarl/s-osinte__android.adb: Likewise.
3717 * libgnarl/s-osinte__android.ads: Likewise.
3718 * libgnarl/s-osinte__darwin.adb: Likewise.
3719 * libgnarl/s-osinte__darwin.ads: Likewise.
3720 * libgnarl/s-osinte__dragonfly.adb: Likewise.
3721 * libgnarl/s-osinte__dragonfly.ads: Likewise.
3722 * libgnarl/s-osinte__dummy.ads: Likewise.
3723 * libgnarl/s-osinte__freebsd.adb: Likewise.
3724 * libgnarl/s-osinte__freebsd.ads: Likewise.
3725 * libgnarl/s-osinte__gnu.adb: Likewise.
3726 * libgnarl/s-osinte__gnu.ads: Likewise.
3727 * libgnarl/s-osinte__hpux-dce.adb: Likewise.
3728 * libgnarl/s-osinte__hpux-dce.ads: Likewise.
3729 * libgnarl/s-osinte__hpux.ads: Likewise.
3730 * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise.
3731 * libgnarl/s-osinte__linux.ads: Likewise.
3732 * libgnarl/s-osinte__lynxos178.adb: Likewise.
3733 * libgnarl/s-osinte__lynxos178e.ads: Likewise.
3734 * libgnarl/s-osinte__mingw.ads: Likewise.
3735 * libgnarl/s-osinte__posix.adb: Likewise.
3736 * libgnarl/s-osinte__qnx.adb: Likewise.
3737 * libgnarl/s-osinte__qnx.ads: Likewise.
3738 * libgnarl/s-osinte__rtems.adb: Likewise.
3739 * libgnarl/s-osinte__rtems.ads: Likewise.
3740 * libgnarl/s-osinte__solaris.adb: Likewise.
3741 * libgnarl/s-osinte__solaris.ads: Likewise.
3742 * libgnarl/s-osinte__vxworks.adb: Likewise.
3743 * libgnarl/s-osinte__vxworks.ads: Likewise.
3744 * libgnarl/s-osinte__x32.adb: Likewise.
3745 * libgnarl/s-proinf.adb: Likewise.
3746 * libgnarl/s-proinf.ads: Likewise.
3747 * libgnarl/s-qnx.ads: Likewise.
3748 * libgnarl/s-solita.adb: Likewise.
3749 * libgnarl/s-solita.ads: Likewise.
3750 * libgnarl/s-stusta.adb: Likewise.
3751 * libgnarl/s-stusta.ads: Likewise.
3752 * libgnarl/s-taasde.adb: Likewise.
3753 * libgnarl/s-taasde.ads: Likewise.
3754 * libgnarl/s-tadeca.adb: Likewise.
3755 * libgnarl/s-tadeca.ads: Likewise.
3756 * libgnarl/s-tadert.adb: Likewise.
3757 * libgnarl/s-tadert.ads: Likewise.
3758 * libgnarl/s-taenca.adb: Likewise.
3759 * libgnarl/s-taenca.ads: Likewise.
3760 * libgnarl/s-taprob.adb: Likewise.
3761 * libgnarl/s-taprob.ads: Likewise.
3762 * libgnarl/s-taprop.ads: Likewise.
3763 * libgnarl/s-taprop__dummy.adb: Likewise.
3764 * libgnarl/s-taprop__hpux-dce.adb: Likewise.
3765 * libgnarl/s-taprop__linux.adb: Likewise.
3766 * libgnarl/s-taprop__mingw.adb: Likewise.
3767 * libgnarl/s-taprop__posix.adb: Likewise.
3768 * libgnarl/s-taprop__qnx.adb: Likewise.
3769 * libgnarl/s-taprop__solaris.adb: Likewise.
3770 * libgnarl/s-taprop__vxworks.adb: Likewise.
3771 * libgnarl/s-tarest.adb: Likewise.
3772 * libgnarl/s-tarest.ads: Likewise.
3773 * libgnarl/s-tasdeb.adb: Likewise.
3774 * libgnarl/s-tasdeb.ads: Likewise.
3775 * libgnarl/s-tasinf.adb: Likewise.
3776 * libgnarl/s-tasinf.ads: Likewise.
3777 * libgnarl/s-tasinf__linux.adb: Likewise.
3778 * libgnarl/s-tasinf__linux.ads: Likewise.
3779 * libgnarl/s-tasinf__mingw.adb: Likewise.
3780 * libgnarl/s-tasinf__mingw.ads: Likewise.
3781 * libgnarl/s-tasinf__solaris.adb: Likewise.
3782 * libgnarl/s-tasinf__solaris.ads: Likewise.
3783 * libgnarl/s-tasinf__vxworks.ads: Likewise.
3784 * libgnarl/s-tasini.adb: Likewise.
3785 * libgnarl/s-tasini.ads: Likewise.
3786 * libgnarl/s-taskin.adb: Likewise.
3787 * libgnarl/s-taskin.ads: Likewise.
3788 * libgnarl/s-taspri__dummy.ads: Likewise.
3789 * libgnarl/s-taspri__hpux-dce.ads: Likewise.
3790 * libgnarl/s-taspri__lynxos.ads: Likewise.
3791 * libgnarl/s-taspri__mingw.ads: Likewise.
3792 * libgnarl/s-taspri__posix-noaltstack.ads: Likewise.
3793 * libgnarl/s-taspri__posix.ads: Likewise.
3794 * libgnarl/s-taspri__solaris.ads: Likewise.
3795 * libgnarl/s-taspri__vxworks.ads: Likewise.
3796 * libgnarl/s-tasque.adb: Likewise.
3797 * libgnarl/s-tasque.ads: Likewise.
3798 * libgnarl/s-tasren.adb: Likewise.
3799 * libgnarl/s-tasren.ads: Likewise.
3800 * libgnarl/s-tasres.ads: Likewise.
3801 * libgnarl/s-tassta.adb: Likewise.
3802 * libgnarl/s-tassta.ads: Likewise.
3803 * libgnarl/s-tasuti.adb: Likewise.
3804 * libgnarl/s-tasuti.ads: Likewise.
3805 * libgnarl/s-tataat.adb: Likewise.
3806 * libgnarl/s-tataat.ads: Likewise.
3807 * libgnarl/s-tpinop.adb: Likewise.
3808 * libgnarl/s-tpinop.ads: Likewise.
3809 * libgnarl/s-tpoaal.adb: Likewise.
3810 * libgnarl/s-tpoben.adb: Likewise.
3811 * libgnarl/s-tpoben.ads: Likewise.
3812 * libgnarl/s-tpobmu.adb: Likewise.
3813 * libgnarl/s-tpobmu.ads: Likewise.
3814 * libgnarl/s-tpobop.adb: Likewise.
3815 * libgnarl/s-tpobop.ads: Likewise.
3816 * libgnarl/s-tpopmo.adb: Likewise.
3817 * libgnarl/s-tpopsp__posix-foreign.adb: Likewise.
3818 * libgnarl/s-tpopsp__posix.adb: Likewise.
3819 * libgnarl/s-tpopsp__solaris.adb: Likewise.
3820 * libgnarl/s-tpopsp__tls.adb: Likewise.
3821 * libgnarl/s-tpopsp__vxworks-rtp.adb: Likewise.
3822 * libgnarl/s-tpopsp__vxworks-tls.adb: Likewise.
3823 * libgnarl/s-tpopsp__vxworks.adb: Likewise.
3824 * libgnarl/s-tporft.adb: Likewise.
3825 * libgnarl/s-tposen.adb: Likewise.
3826 * libgnarl/s-tposen.ads: Likewise.
3827 * libgnarl/s-vxwext.adb: Likewise.
3828 * libgnarl/s-vxwext.ads: Likewise.
3829 * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
3830 * libgnarl/s-vxwext__kernel.adb: Likewise.
3831 * libgnarl/s-vxwext__kernel.ads: Likewise.
3832 * libgnarl/s-vxwext__noints.adb: Likewise.
3833 * libgnarl/s-vxwext__rtp-smp.adb: Likewise.
3834 * libgnarl/s-vxwext__rtp.adb: Likewise.
3835 * libgnarl/s-vxwext__rtp.ads: Likewise.
3836 * libgnarl/s-vxwext__vthreads.ads: Likewise.
3837 * libgnarl/s-vxwork__aarch64.ads: Likewise.
3838 * libgnarl/s-vxwork__arm.ads: Likewise.
3839 * libgnarl/s-vxwork__ppc.ads: Likewise.
3840 * libgnarl/s-vxwork__x86.ads: Likewise.
3841 * libgnarl/thread.c: Likewise.
3842 * libgnat/a-assert.adb: Likewise.
3843 * libgnat/a-assert.ads: Likewise.
3844 * libgnat/a-btgbso.adb: Likewise.
3845 * libgnat/a-btgbso.ads: Likewise.
3846 * libgnat/a-calari.adb: Likewise.
3847 * libgnat/a-calari.ads: Likewise.
3848 * libgnat/a-calcon.adb: Likewise.
3849 * libgnat/a-calcon.ads: Likewise.
3850 * libgnat/a-caldel.adb: Likewise.
3851 * libgnat/a-caldel.ads: Likewise.
3852 * libgnat/a-calend.adb: Likewise.
3853 * libgnat/a-calend.ads: Likewise.
3854 * libgnat/a-calfor.adb: Likewise.
3855 * libgnat/a-calfor.ads: Likewise.
3856 * libgnat/a-catizo.adb: Likewise.
3857 * libgnat/a-cbdlli.adb: Likewise.
3858 * libgnat/a-cbdlli.ads: Likewise.
3859 * libgnat/a-cbhama.adb: Likewise.
3860 * libgnat/a-cbhama.ads: Likewise.
3861 * libgnat/a-cbhase.adb: Likewise.
3862 * libgnat/a-cbhase.ads: Likewise.
3863 * libgnat/a-cbmutr.adb: Likewise.
3864 * libgnat/a-cbmutr.ads: Likewise.
3865 * libgnat/a-cborma.adb: Likewise.
3866 * libgnat/a-cborma.ads: Likewise.
3867 * libgnat/a-cborse.adb: Likewise.
3868 * libgnat/a-cborse.ads: Likewise.
3869 * libgnat/a-cbprqu.adb: Likewise.
3870 * libgnat/a-cbprqu.ads: Likewise.
3871 * libgnat/a-cbsyqu.adb: Likewise.
3872 * libgnat/a-cbsyqu.ads: Likewise.
3873 * libgnat/a-cdlili.adb: Likewise.
3874 * libgnat/a-cdlili.ads: Likewise.
3875 * libgnat/a-cfdlli.adb: Likewise.
3876 * libgnat/a-cfdlli.ads: Likewise.
3877 * libgnat/a-cfhama.adb: Likewise.
3878 * libgnat/a-cfhama.ads: Likewise.
3879 * libgnat/a-cfhase.adb: Likewise.
3880 * libgnat/a-cfhase.ads: Likewise.
3881 * libgnat/a-cfinve.adb: Likewise.
3882 * libgnat/a-cfinve.ads: Likewise.
3883 * libgnat/a-cforma.adb: Likewise.
3884 * libgnat/a-cforma.ads: Likewise.
3885 * libgnat/a-cforse.adb: Likewise.
3886 * libgnat/a-cforse.ads: Likewise.
3887 * libgnat/a-cgaaso.adb: Likewise.
3888 * libgnat/a-cgaaso.ads: Likewise.
3889 * libgnat/a-cgarso.adb: Likewise.
3890 * libgnat/a-cgcaso.adb: Likewise.
3891 * libgnat/a-chacon.adb: Likewise.
3892 * libgnat/a-chacon.ads: Likewise.
3893 * libgnat/a-chahan.adb: Likewise.
3894 * libgnat/a-chahan.ads: Likewise.
3895 * libgnat/a-chlat9.ads: Likewise.
3896 * libgnat/a-chtgbk.adb: Likewise.
3897 * libgnat/a-chtgbk.ads: Likewise.
3898 * libgnat/a-chtgbo.adb: Likewise.
3899 * libgnat/a-chtgbo.ads: Likewise.
3900 * libgnat/a-chtgke.adb: Likewise.
3901 * libgnat/a-chtgke.ads: Likewise.
3902 * libgnat/a-chtgop.adb: Likewise.
3903 * libgnat/a-chtgop.ads: Likewise.
3904 * libgnat/a-chzla1.ads: Likewise.
3905 * libgnat/a-chzla9.ads: Likewise.
3906 * libgnat/a-cidlli.adb: Likewise.
3907 * libgnat/a-cidlli.ads: Likewise.
3908 * libgnat/a-cihama.adb: Likewise.
3909 * libgnat/a-cihama.ads: Likewise.
3910 * libgnat/a-cihase.adb: Likewise.
3911 * libgnat/a-cihase.ads: Likewise.
3912 * libgnat/a-cimutr.adb: Likewise.
3913 * libgnat/a-cimutr.ads: Likewise.
3914 * libgnat/a-ciorma.adb: Likewise.
3915 * libgnat/a-ciorma.ads: Likewise.
3916 * libgnat/a-ciormu.adb: Likewise.
3917 * libgnat/a-ciormu.ads: Likewise.
3918 * libgnat/a-ciorse.adb: Likewise.
3919 * libgnat/a-ciorse.ads: Likewise.
3920 * libgnat/a-clrefi.adb: Likewise.
3921 * libgnat/a-clrefi.ads: Likewise.
3922 * libgnat/a-coboho.adb: Likewise.
3923 * libgnat/a-coboho.ads: Likewise.
3924 * libgnat/a-cobove.adb: Likewise.
3925 * libgnat/a-cobove.ads: Likewise.
3926 * libgnat/a-cofove.adb: Likewise.
3927 * libgnat/a-cofove.ads: Likewise.
3928 * libgnat/a-cofuba.adb: Likewise.
3929 * libgnat/a-cofuba.ads: Likewise.
3930 * libgnat/a-cofuma.adb: Likewise.
3931 * libgnat/a-cofuma.ads: Likewise.
3932 * libgnat/a-cofuse.adb: Likewise.
3933 * libgnat/a-cofuse.ads: Likewise.
3934 * libgnat/a-cofuve.adb: Likewise.
3935 * libgnat/a-cofuve.ads: Likewise.
3936 * libgnat/a-cogeso.adb: Likewise.
3937 * libgnat/a-cogeso.ads: Likewise.
3938 * libgnat/a-cohama.adb: Likewise.
3939 * libgnat/a-cohama.ads: Likewise.
3940 * libgnat/a-cohase.adb: Likewise.
3941 * libgnat/a-cohase.ads: Likewise.
3942 * libgnat/a-cohata.ads: Likewise.
3943 * libgnat/a-coinho.adb: Likewise.
3944 * libgnat/a-coinho.ads: Likewise.
3945 * libgnat/a-coinho__shared.adb: Likewise.
3946 * libgnat/a-coinho__shared.ads: Likewise.
3947 * libgnat/a-coinve.adb: Likewise.
3948 * libgnat/a-coinve.ads: Likewise.
3949 * libgnat/a-colien.adb: Likewise.
3950 * libgnat/a-colien.ads: Likewise.
3951 * libgnat/a-colire.adb: Likewise.
3952 * libgnat/a-colire.ads: Likewise.
3953 * libgnat/a-comlin.adb: Likewise.
3954 * libgnat/a-comlin.ads: Likewise.
3955 * libgnat/a-comutr.adb: Likewise.
3956 * libgnat/a-comutr.ads: Likewise.
3957 * libgnat/a-conhel.adb: Likewise.
3958 * libgnat/a-conhel.ads: Likewise.
3959 * libgnat/a-convec.adb: Likewise.
3960 * libgnat/a-convec.ads: Likewise.
3961 * libgnat/a-coorma.adb: Likewise.
3962 * libgnat/a-coorma.ads: Likewise.
3963 * libgnat/a-coormu.adb: Likewise.
3964 * libgnat/a-coormu.ads: Likewise.
3965 * libgnat/a-coorse.adb: Likewise.
3966 * libgnat/a-coorse.ads: Likewise.
3967 * libgnat/a-coprnu.adb: Likewise.
3968 * libgnat/a-coprnu.ads: Likewise.
3969 * libgnat/a-crbltr.ads: Likewise.
3970 * libgnat/a-crbtgk.adb: Likewise.
3971 * libgnat/a-crbtgk.ads: Likewise.
3972 * libgnat/a-crbtgo.adb: Likewise.
3973 * libgnat/a-crbtgo.ads: Likewise.
3974 * libgnat/a-crdlli.adb: Likewise.
3975 * libgnat/a-crdlli.ads: Likewise.
3976 * libgnat/a-csquin.ads: Likewise.
3977 * libgnat/a-cuprqu.adb: Likewise.
3978 * libgnat/a-cuprqu.ads: Likewise.
3979 * libgnat/a-cusyqu.adb: Likewise.
3980 * libgnat/a-cusyqu.ads: Likewise.
3981 * libgnat/a-cwila1.ads: Likewise.
3982 * libgnat/a-cwila9.ads: Likewise.
3983 * libgnat/a-decima.adb: Likewise.
3984 * libgnat/a-decima.ads: Likewise.
3985 * libgnat/a-decima__128.ads: Likewise.
3986 * libgnat/a-dhfina.adb: Likewise.
3987 * libgnat/a-dhfina.ads: Likewise.
3988 * libgnat/a-diocst.adb: Likewise.
3989 * libgnat/a-diocst.ads: Likewise.
3990 * libgnat/a-direct.adb: Likewise.
3991 * libgnat/a-direct.ads: Likewise.
3992 * libgnat/a-direio.adb: Likewise.
3993 * libgnat/a-direio.ads: Likewise.
3994 * libgnat/a-dirval.adb: Likewise.
3995 * libgnat/a-dirval.ads: Likewise.
3996 * libgnat/a-dirval__mingw.adb: Likewise.
3997 * libgnat/a-einuoc.adb: Likewise.
3998 * libgnat/a-einuoc.ads: Likewise.
3999 * libgnat/a-elchha.adb: Likewise.
4000 * libgnat/a-elchha.ads: Likewise.
4001 * libgnat/a-elchha__vxworks-ppc-full.adb: Likewise.
4002 * libgnat/a-envvar.adb: Likewise.
4003 * libgnat/a-excach.adb: Likewise.
4004 * libgnat/a-except.adb: Likewise.
4005 * libgnat/a-except.ads: Likewise.
4006 * libgnat/a-exctra.adb: Likewise.
4007 * libgnat/a-exctra.ads: Likewise.
4008 * libgnat/a-exexda.adb: Likewise.
4009 * libgnat/a-exexpr.adb: Likewise.
4010 * libgnat/a-exextr.adb: Likewise.
4011 * libgnat/a-exstat.adb: Likewise.
4012 * libgnat/a-finali.adb: Likewise.
4013 * libgnat/a-finali.ads: Likewise.
4014 * libgnat/a-locale.adb: Likewise.
4015 * libgnat/a-locale.ads: Likewise.
4016 * libgnat/a-nagefl.ads: Likewise.
4017 * libgnat/a-naliop.ads: Likewise.
4018 * libgnat/a-naliop__nolibm.ads: Likewise.
4019 * libgnat/a-nallfl.ads: Likewise.
4020 * libgnat/a-nallfl__wraplf.ads: Likewise.
4021 * libgnat/a-nalofl.ads: Likewise.
4022 * libgnat/a-nashfl.ads: Likewise.
4023 * libgnat/a-nashfl__wraplf.ads: Likewise.
4024 * libgnat/a-nbnbin.adb: Likewise.
4025 * libgnat/a-nbnbin__gmp.adb: Likewise.
4026 * libgnat/a-nbnbre.adb: Likewise.
4027 * libgnat/a-ngcefu.adb: Likewise.
4028 * libgnat/a-ngcoar.adb: Likewise.
4029 * libgnat/a-ngcoty.adb: Likewise.
4030 * libgnat/a-ngcoty.ads: Likewise.
4031 * libgnat/a-ngelfu.adb: Likewise.
4032 * libgnat/a-ngelfu.ads: Likewise.
4033 * libgnat/a-ngrear.adb: Likewise.
4034 * libgnat/a-ngrear.ads: Likewise.
4035 * libgnat/a-nuauco.ads: Likewise.
4036 * libgnat/a-nuauco__x86.ads: Likewise.
4037 * libgnat/a-nuaufl.ads: Likewise.
4038 * libgnat/a-nuaufl__wraplf.ads: Likewise.
4039 * libgnat/a-nudira.adb: Likewise.
4040 * libgnat/a-nudira.ads: Likewise.
4041 * libgnat/a-nuflra.adb: Likewise.
4042 * libgnat/a-nuflra.ads: Likewise.
4043 * libgnat/a-numaux.ads: Likewise.
4044 * libgnat/a-rbtgbk.adb: Likewise.
4045 * libgnat/a-rbtgbk.ads: Likewise.
4046 * libgnat/a-rbtgbo.adb: Likewise.
4047 * libgnat/a-rbtgbo.ads: Likewise.
4048 * libgnat/a-rbtgso.adb: Likewise.
4049 * libgnat/a-rbtgso.ads: Likewise.
4050 * libgnat/a-sbecin.adb: Likewise.
4051 * libgnat/a-sbecin.ads: Likewise.
4052 * libgnat/a-sbhcin.adb: Likewise.
4053 * libgnat/a-sbhcin.ads: Likewise.
4054 * libgnat/a-sblcin.adb: Likewise.
4055 * libgnat/a-sblcin.ads: Likewise.
4056 * libgnat/a-secain.adb: Likewise.
4057 * libgnat/a-secain.ads: Likewise.
4058 * libgnat/a-sequio.adb: Likewise.
4059 * libgnat/a-sequio.ads: Likewise.
4060 * libgnat/a-sfecin.ads: Likewise.
4061 * libgnat/a-sfhcin.ads: Likewise.
4062 * libgnat/a-sflcin.ads: Likewise.
4063 * libgnat/a-shcain.adb: Likewise.
4064 * libgnat/a-shcain.ads: Likewise.
4065 * libgnat/a-siocst.adb: Likewise.
4066 * libgnat/a-siocst.ads: Likewise.
4067 * libgnat/a-slcain.adb: Likewise.
4068 * libgnat/a-slcain.ads: Likewise.
4069 * libgnat/a-ssicst.adb: Likewise.
4070 * libgnat/a-ssicst.ads: Likewise.
4071 * libgnat/a-stboha.adb: Likewise.
4072 * libgnat/a-stmaco.ads: Likewise.
4073 * libgnat/a-stobbu.adb: Likewise.
4074 * libgnat/a-stobbu.ads: Likewise.
4075 * libgnat/a-stobfi.adb: Likewise.
4076 * libgnat/a-stobfi.ads: Likewise.
4077 * libgnat/a-storio.adb: Likewise.
4078 * libgnat/a-stoubu.adb: Likewise.
4079 * libgnat/a-stoubu.ads: Likewise.
4080 * libgnat/a-stoufi.adb: Likewise.
4081 * libgnat/a-stoufi.ads: Likewise.
4082 * libgnat/a-stoufo.adb: Likewise.
4083 * libgnat/a-stoufo.ads: Likewise.
4084 * libgnat/a-stouut.adb: Likewise.
4085 * libgnat/a-stouut.ads: Likewise.
4086 * libgnat/a-strbou.adb: Likewise.
4087 * libgnat/a-strbou.ads: Likewise.
4088 * libgnat/a-stream.adb: Likewise.
4089 * libgnat/a-stream.ads: Likewise.
4090 * libgnat/a-strfix.adb: Likewise.
4091 * libgnat/a-strhas.adb: Likewise.
4092 * libgnat/a-strmap.adb: Likewise.
4093 * libgnat/a-strmap.ads: Likewise.
4094 * libgnat/a-strsea.adb: Likewise.
4095 * libgnat/a-strsea.ads: Likewise.
4096 * libgnat/a-strsto.ads: Likewise.
4097 * libgnat/a-strsup.adb: Likewise.
4098 * libgnat/a-strsup.ads: Likewise.
4099 * libgnat/a-strunb.adb: Likewise.
4100 * libgnat/a-strunb.ads: Likewise.
4101 * libgnat/a-strunb__shared.adb: Likewise.
4102 * libgnat/a-strunb__shared.ads: Likewise.
4103 * libgnat/a-ststbo.adb: Likewise.
4104 * libgnat/a-ststbo.ads: Likewise.
4105 * libgnat/a-ststio.adb: Likewise.
4106 * libgnat/a-ststio.ads: Likewise.
4107 * libgnat/a-ststun.adb: Likewise.
4108 * libgnat/a-ststun.ads: Likewise.
4109 * libgnat/a-stteou.ads: Likewise.
4110 * libgnat/a-stunau.adb: Likewise.
4111 * libgnat/a-stunau.ads: Likewise.
4112 * libgnat/a-stunau__shared.adb: Likewise.
4113 * libgnat/a-stunha.adb: Likewise.
4114 * libgnat/a-stuten.adb: Likewise.
4115 * libgnat/a-stwibo.adb: Likewise.
4116 * libgnat/a-stwibo.ads: Likewise.
4117 * libgnat/a-stwifi.adb: Likewise.
4118 * libgnat/a-stwiha.adb: Likewise.
4119 * libgnat/a-stwima.adb: Likewise.
4120 * libgnat/a-stwima.ads: Likewise.
4121 * libgnat/a-stwise.adb: Likewise.
4122 * libgnat/a-stwise.ads: Likewise.
4123 * libgnat/a-stwisu.adb: Likewise.
4124 * libgnat/a-stwisu.ads: Likewise.
4125 * libgnat/a-stwiun.adb: Likewise.
4126 * libgnat/a-stwiun.ads: Likewise.
4127 * libgnat/a-stwiun__shared.adb: Likewise.
4128 * libgnat/a-stwiun__shared.ads: Likewise.
4129 * libgnat/a-stzbou.adb: Likewise.
4130 * libgnat/a-stzbou.ads: Likewise.
4131 * libgnat/a-stzfix.adb: Likewise.
4132 * libgnat/a-stzhas.adb: Likewise.
4133 * libgnat/a-stzmap.adb: Likewise.
4134 * libgnat/a-stzmap.ads: Likewise.
4135 * libgnat/a-stzsea.adb: Likewise.
4136 * libgnat/a-stzsea.ads: Likewise.
4137 * libgnat/a-stzsup.adb: Likewise.
4138 * libgnat/a-stzsup.ads: Likewise.
4139 * libgnat/a-stzunb.adb: Likewise.
4140 * libgnat/a-stzunb.ads: Likewise.
4141 * libgnat/a-stzunb__shared.adb: Likewise.
4142 * libgnat/a-stzunb__shared.ads: Likewise.
4143 * libgnat/a-suecin.adb: Likewise.
4144 * libgnat/a-suecin.ads: Likewise.
4145 * libgnat/a-suenco.adb: Likewise.
4146 * libgnat/a-suenst.adb: Likewise.
4147 * libgnat/a-suewst.adb: Likewise.
4148 * libgnat/a-suezst.adb: Likewise.
4149 * libgnat/a-suhcin.adb: Likewise.
4150 * libgnat/a-suhcin.ads: Likewise.
4151 * libgnat/a-sulcin.adb: Likewise.
4152 * libgnat/a-sulcin.ads: Likewise.
4153 * libgnat/a-suteio.adb: Likewise.
4154 * libgnat/a-suteio.ads: Likewise.
4155 * libgnat/a-suteio__shared.adb: Likewise.
4156 * libgnat/a-swbwha.adb: Likewise.
4157 * libgnat/a-swmwco.ads: Likewise.
4158 * libgnat/a-swunau.adb: Likewise.
4159 * libgnat/a-swunau.ads: Likewise.
4160 * libgnat/a-swunau__shared.adb: Likewise.
4161 * libgnat/a-swuwha.adb: Likewise.
4162 * libgnat/a-swuwti.adb: Likewise.
4163 * libgnat/a-swuwti.ads: Likewise.
4164 * libgnat/a-swuwti__shared.adb: Likewise.
4165 * libgnat/a-szbzha.adb: Likewise.
4166 * libgnat/a-szmzco.ads: Likewise.
4167 * libgnat/a-szunau.adb: Likewise.
4168 * libgnat/a-szunau.ads: Likewise.
4169 * libgnat/a-szunau__shared.adb: Likewise.
4170 * libgnat/a-szuzha.adb: Likewise.
4171 * libgnat/a-szuzti.adb: Likewise.
4172 * libgnat/a-szuzti.ads: Likewise.
4173 * libgnat/a-szuzti__shared.adb: Likewise.
4174 * libgnat/a-tags.adb: Likewise.
4175 * libgnat/a-tags.ads: Likewise.
4176 * libgnat/a-teioed.adb: Likewise.
4177 * libgnat/a-teioed.ads: Likewise.
4178 * libgnat/a-textio.adb: Likewise.
4179 * libgnat/a-textio.ads: Likewise.
4180 * libgnat/a-tiboio.adb: Likewise.
4181 * libgnat/a-ticoau.adb: Likewise.
4182 * libgnat/a-ticoau.ads: Likewise.
4183 * libgnat/a-ticoio.adb: Likewise.
4184 * libgnat/a-ticoio.ads: Likewise.
4185 * libgnat/a-tideau.adb: Likewise.
4186 * libgnat/a-tideau.ads: Likewise.
4187 * libgnat/a-tideio.adb: Likewise.
4188 * libgnat/a-tideio.ads: Likewise.
4189 * libgnat/a-tideio__128.adb: Likewise.
4190 * libgnat/a-tienau.adb: Likewise.
4191 * libgnat/a-tienau.ads: Likewise.
4192 * libgnat/a-tienio.adb: Likewise.
4193 * libgnat/a-tifiau.adb: Likewise.
4194 * libgnat/a-tifiau.ads: Likewise.
4195 * libgnat/a-tifiio.adb: Likewise.
4196 * libgnat/a-tifiio__128.adb: Likewise.
4197 * libgnat/a-tiflau.adb: Likewise.
4198 * libgnat/a-tiflau.ads: Likewise.
4199 * libgnat/a-tiflio.adb: Likewise.
4200 * libgnat/a-tiflio.ads: Likewise.
4201 * libgnat/a-tigeau.adb: Likewise.
4202 * libgnat/a-tigeau.ads: Likewise.
4203 * libgnat/a-tigeli.adb: Likewise.
4204 * libgnat/a-tiinau.adb: Likewise.
4205 * libgnat/a-tiinau.ads: Likewise.
4206 * libgnat/a-tiinio.adb: Likewise.
4207 * libgnat/a-tiinio.ads: Likewise.
4208 * libgnat/a-tiinio__128.adb: Likewise.
4209 * libgnat/a-timoio.adb: Likewise.
4210 * libgnat/a-timoio.ads: Likewise.
4211 * libgnat/a-timoio__128.adb: Likewise.
4212 * libgnat/a-tiocst.adb: Likewise.
4213 * libgnat/a-tiocst.ads: Likewise.
4214 * libgnat/a-tirsfi.adb: Likewise.
4215 * libgnat/a-tirsfi.ads: Likewise.
4216 * libgnat/a-titest.adb: Likewise.
4217 * libgnat/a-undesu.adb: Likewise.
4218 * libgnat/a-wichha.adb: Likewise.
4219 * libgnat/a-wichun.adb: Likewise.
4220 * libgnat/a-wichun.ads: Likewise.
4221 * libgnat/a-witeio.adb: Likewise.
4222 * libgnat/a-witeio.ads: Likewise.
4223 * libgnat/a-wrstfi.adb: Likewise.
4224 * libgnat/a-wrstfi.ads: Likewise.
4225 * libgnat/a-wtcoau.adb: Likewise.
4226 * libgnat/a-wtcoau.ads: Likewise.
4227 * libgnat/a-wtcoio.adb: Likewise.
4228 * libgnat/a-wtcstr.adb: Likewise.
4229 * libgnat/a-wtcstr.ads: Likewise.
4230 * libgnat/a-wtdeau.adb: Likewise.
4231 * libgnat/a-wtdeau.ads: Likewise.
4232 * libgnat/a-wtdeio.adb: Likewise.
4233 * libgnat/a-wtdeio__128.adb: Likewise.
4234 * libgnat/a-wtedit.adb: Likewise.
4235 * libgnat/a-wtedit.ads: Likewise.
4236 * libgnat/a-wtenau.adb: Likewise.
4237 * libgnat/a-wtenau.ads: Likewise.
4238 * libgnat/a-wtenio.adb: Likewise.
4239 * libgnat/a-wtfiau.adb: Likewise.
4240 * libgnat/a-wtfiau.ads: Likewise.
4241 * libgnat/a-wtfiio.adb: Likewise.
4242 * libgnat/a-wtfiio__128.adb: Likewise.
4243 * libgnat/a-wtflau.adb: Likewise.
4244 * libgnat/a-wtflau.ads: Likewise.
4245 * libgnat/a-wtflio.adb: Likewise.
4246 * libgnat/a-wtgeau.adb: Likewise.
4247 * libgnat/a-wtgeau.ads: Likewise.
4248 * libgnat/a-wtinau.adb: Likewise.
4249 * libgnat/a-wtinau.ads: Likewise.
4250 * libgnat/a-wtinio.adb: Likewise.
4251 * libgnat/a-wtinio__128.adb: Likewise.
4252 * libgnat/a-wtmoio.adb: Likewise.
4253 * libgnat/a-wtmoio.ads: Likewise.
4254 * libgnat/a-wtmoio__128.adb: Likewise.
4255 * libgnat/a-wttest.adb: Likewise.
4256 * libgnat/a-wwboio.adb: Likewise.
4257 * libgnat/a-zchhan.adb: Likewise.
4258 * libgnat/a-zchuni.adb: Likewise.
4259 * libgnat/a-zchuni.ads: Likewise.
4260 * libgnat/a-zrstfi.adb: Likewise.
4261 * libgnat/a-zrstfi.ads: Likewise.
4262 * libgnat/a-ztcoau.adb: Likewise.
4263 * libgnat/a-ztcoio.adb: Likewise.
4264 * libgnat/a-ztcstr.adb: Likewise.
4265 * libgnat/a-ztcstr.ads: Likewise.
4266 * libgnat/a-ztdeau.adb: Likewise.
4267 * libgnat/a-ztdeau.ads: Likewise.
4268 * libgnat/a-ztdeio.adb: Likewise.
4269 * libgnat/a-ztdeio__128.adb: Likewise.
4270 * libgnat/a-ztedit.adb: Likewise.
4271 * libgnat/a-ztedit.ads: Likewise.
4272 * libgnat/a-ztenau.adb: Likewise.
4273 * libgnat/a-ztenau.ads: Likewise.
4274 * libgnat/a-ztenio.adb: Likewise.
4275 * libgnat/a-ztexio.adb: Likewise.
4276 * libgnat/a-ztexio.ads: Likewise.
4277 * libgnat/a-ztfiau.adb: Likewise.
4278 * libgnat/a-ztfiau.ads: Likewise.
4279 * libgnat/a-ztfiio.adb: Likewise.
4280 * libgnat/a-ztfiio__128.adb: Likewise.
4281 * libgnat/a-ztflau.adb: Likewise.
4282 * libgnat/a-ztflau.ads: Likewise.
4283 * libgnat/a-ztflio.adb: Likewise.
4284 * libgnat/a-ztgeau.adb: Likewise.
4285 * libgnat/a-ztgeau.ads: Likewise.
4286 * libgnat/a-ztinau.adb: Likewise.
4287 * libgnat/a-ztinau.ads: Likewise.
4288 * libgnat/a-ztinio.adb: Likewise.
4289 * libgnat/a-ztinio__128.adb: Likewise.
4290 * libgnat/a-ztmoio.adb: Likewise.
4291 * libgnat/a-ztmoio__128.adb: Likewise.
4292 * libgnat/a-zttest.adb: Likewise.
4293 * libgnat/a-zzboio.adb: Likewise.
4294 * libgnat/g-allein.ads: Likewise.
4295 * libgnat/g-alleve.adb: Likewise.
4296 * libgnat/g-alleve.ads: Likewise.
4297 * libgnat/g-alleve__hard.adb: Likewise.
4298 * libgnat/g-alleve__hard.ads: Likewise.
4299 * libgnat/g-altcon.adb: Likewise.
4300 * libgnat/g-altcon.ads: Likewise.
4301 * libgnat/g-altive.ads: Likewise.
4302 * libgnat/g-alveop.adb: Likewise.
4303 * libgnat/g-alveop.ads: Likewise.
4304 * libgnat/g-alvety.ads: Likewise.
4305 * libgnat/g-alvevi.ads: Likewise.
4306 * libgnat/g-arrspl.adb: Likewise.
4307 * libgnat/g-arrspl.ads: Likewise.
4308 * libgnat/g-awk.adb: Likewise.
4309 * libgnat/g-awk.ads: Likewise.
4310 * libgnat/g-binenv.adb: Likewise.
4311 * libgnat/g-binenv.ads: Likewise.
4312 * libgnat/g-brapre.ads: Likewise.
4313 * libgnat/g-bubsor.adb: Likewise.
4314 * libgnat/g-bubsor.ads: Likewise.
4315 * libgnat/g-busora.adb: Likewise.
4316 * libgnat/g-busora.ads: Likewise.
4317 * libgnat/g-busorg.adb: Likewise.
4318 * libgnat/g-busorg.ads: Likewise.
4319 * libgnat/g-byorma.adb: Likewise.
4320 * libgnat/g-byorma.ads: Likewise.
4321 * libgnat/g-bytswa.adb: Likewise.
4322 * libgnat/g-bytswa.ads: Likewise.
4323 * libgnat/g-calend.adb: Likewise.
4324 * libgnat/g-calend.ads: Likewise.
4325 * libgnat/g-casuti.adb: Likewise.
4326 * libgnat/g-casuti.ads: Likewise.
4327 * libgnat/g-catiio.adb: Likewise.
4328 * libgnat/g-catiio.ads: Likewise.
4329 * libgnat/g-cgi.adb: Likewise.
4330 * libgnat/g-cgi.ads: Likewise.
4331 * libgnat/g-cgicoo.adb: Likewise.
4332 * libgnat/g-cgicoo.ads: Likewise.
4333 * libgnat/g-cgideb.adb: Likewise.
4334 * libgnat/g-cgideb.ads: Likewise.
4335 * libgnat/g-comlin.adb: Likewise.
4336 * libgnat/g-comlin.ads: Likewise.
4337 * libgnat/g-comver.adb: Likewise.
4338 * libgnat/g-comver.ads: Likewise.
4339 * libgnat/g-cppexc.adb: Likewise.
4340 * libgnat/g-cppexc.ads: Likewise.
4341 * libgnat/g-crc32.adb: Likewise.
4342 * libgnat/g-crc32.ads: Likewise.
4343 * libgnat/g-ctrl_c.adb: Likewise.
4344 * libgnat/g-ctrl_c.ads: Likewise.
4345 * libgnat/g-curexc.ads: Likewise.
4346 * libgnat/g-debpoo.adb: Likewise.
4347 * libgnat/g-debpoo.ads: Likewise.
4348 * libgnat/g-debuti.adb: Likewise.
4349 * libgnat/g-debuti.ads: Likewise.
4350 * libgnat/g-decstr.adb: Likewise.
4351 * libgnat/g-decstr.ads: Likewise.
4352 * libgnat/g-deutst.ads: Likewise.
4353 * libgnat/g-diopit.adb: Likewise.
4354 * libgnat/g-diopit.ads: Likewise.
4355 * libgnat/g-dirope.adb: Likewise.
4356 * libgnat/g-dirope.ads: Likewise.
4357 * libgnat/g-dynhta.adb: Likewise.
4358 * libgnat/g-dynhta.ads: Likewise.
4359 * libgnat/g-dyntab.adb: Likewise.
4360 * libgnat/g-dyntab.ads: Likewise.
4361 * libgnat/g-eacodu.adb: Likewise.
4362 * libgnat/g-encstr.adb: Likewise.
4363 * libgnat/g-encstr.ads: Likewise.
4364 * libgnat/g-enutst.ads: Likewise.
4365 * libgnat/g-excact.adb: Likewise.
4366 * libgnat/g-excact.ads: Likewise.
4367 * libgnat/g-except.ads: Likewise.
4368 * libgnat/g-exctra.adb: Likewise.
4369 * libgnat/g-exctra.ads: Likewise.
4370 * libgnat/g-expect.adb: Likewise.
4371 * libgnat/g-expect.ads: Likewise.
4372 * libgnat/g-exptty.adb: Likewise.
4373 * libgnat/g-exptty.ads: Likewise.
4374 * libgnat/g-flocon.ads: Likewise.
4375 * libgnat/g-forstr.adb: Likewise.
4376 * libgnat/g-forstr.ads: Likewise.
4377 * libgnat/g-graphs.adb: Likewise.
4378 * libgnat/g-graphs.ads: Likewise.
4379 * libgnat/g-heasor.adb: Likewise.
4380 * libgnat/g-heasor.ads: Likewise.
4381 * libgnat/g-hesora.adb: Likewise.
4382 * libgnat/g-hesora.ads: Likewise.
4383 * libgnat/g-hesorg.adb: Likewise.
4384 * libgnat/g-hesorg.ads: Likewise.
4385 * libgnat/g-htable.adb: Likewise.
4386 * libgnat/g-htable.ads: Likewise.
4387 * libgnat/g-io-put__vxworks.adb: Likewise.
4388 * libgnat/g-io.adb: Likewise.
4389 * libgnat/g-io.ads: Likewise.
4390 * libgnat/g-io_aux.adb: Likewise.
4391 * libgnat/g-io_aux.ads: Likewise.
4392 * libgnat/g-lists.adb: Likewise.
4393 * libgnat/g-lists.ads: Likewise.
4394 * libgnat/g-locfil.adb: Likewise.
4395 * libgnat/g-locfil.ads: Likewise.
4396 * libgnat/g-mbdira.adb: Likewise.
4397 * libgnat/g-mbdira.ads: Likewise.
4398 * libgnat/g-mbflra.adb: Likewise.
4399 * libgnat/g-mbflra.ads: Likewise.
4400 * libgnat/g-md5.adb: Likewise.
4401 * libgnat/g-md5.ads: Likewise.
4402 * libgnat/g-memdum.adb: Likewise.
4403 * libgnat/g-memdum.ads: Likewise.
4404 * libgnat/g-moreex.adb: Likewise.
4405 * libgnat/g-moreex.ads: Likewise.
4406 * libgnat/g-os_lib.adb: Likewise.
4407 * libgnat/g-os_lib.ads: Likewise.
4408 * libgnat/g-pehage.adb: Likewise.
4409 * libgnat/g-pehage.ads: Likewise.
4410 * libgnat/g-rannum.adb: Likewise.
4411 * libgnat/g-rannum.ads: Likewise.
4412 * libgnat/g-regexp.adb: Likewise.
4413 * libgnat/g-regexp.ads: Likewise.
4414 * libgnat/g-regist.adb: Likewise.
4415 * libgnat/g-regist.ads: Likewise.
4416 * libgnat/g-regpat.adb: Likewise.
4417 * libgnat/g-regpat.ads: Likewise.
4418 * libgnat/g-rewdat.adb: Likewise.
4419 * libgnat/g-rewdat.ads: Likewise.
4420 * libgnat/g-sechas.adb: Likewise.
4421 * libgnat/g-sechas.ads: Likewise.
4422 * libgnat/g-sehamd.adb: Likewise.
4423 * libgnat/g-sehamd.ads: Likewise.
4424 * libgnat/g-sehash.adb: Likewise.
4425 * libgnat/g-sehash.ads: Likewise.
4426 * libgnat/g-sercom.adb: Likewise.
4427 * libgnat/g-sercom.ads: Likewise.
4428 * libgnat/g-sercom__linux.adb: Likewise.
4429 * libgnat/g-sercom__mingw.adb: Likewise.
4430 * libgnat/g-sestin.ads: Likewise.
4431 * libgnat/g-sets.adb: Likewise.
4432 * libgnat/g-sets.ads: Likewise.
4433 * libgnat/g-sha1.adb: Likewise.
4434 * libgnat/g-sha1.ads: Likewise.
4435 * libgnat/g-sha224.ads: Likewise.
4436 * libgnat/g-sha256.ads: Likewise.
4437 * libgnat/g-sha384.ads: Likewise.
4438 * libgnat/g-sha512.ads: Likewise.
4439 * libgnat/g-shsh32.adb: Likewise.
4440 * libgnat/g-shsh32.ads: Likewise.
4441 * libgnat/g-shsh64.adb: Likewise.
4442 * libgnat/g-shsh64.ads: Likewise.
4443 * libgnat/g-shshco.adb: Likewise.
4444 * libgnat/g-shshco.ads: Likewise.
4445 * libgnat/g-soccon.ads: Likewise.
4446 * libgnat/g-socket.adb: Likewise.
4447 * libgnat/g-socket.ads: Likewise.
4448 * libgnat/g-socket__dummy.adb: Likewise.
4449 * libgnat/g-socket__dummy.ads: Likewise.
4450 * libgnat/g-socpol.adb: Likewise.
4451 * libgnat/g-socpol.ads: Likewise.
4452 * libgnat/g-socpol__dummy.adb: Likewise.
4453 * libgnat/g-socpol__dummy.ads: Likewise.
4454 * libgnat/g-socthi.adb: Likewise.
4455 * libgnat/g-socthi.ads: Likewise.
4456 * libgnat/g-socthi__dummy.adb: Likewise.
4457 * libgnat/g-socthi__dummy.ads: Likewise.
4458 * libgnat/g-socthi__mingw.adb: Likewise.
4459 * libgnat/g-socthi__mingw.ads: Likewise.
4460 * libgnat/g-socthi__vxworks.adb: Likewise.
4461 * libgnat/g-socthi__vxworks.ads: Likewise.
4462 * libgnat/g-soliop.ads: Likewise.
4463 * libgnat/g-soliop__lynxos.ads: Likewise.
4464 * libgnat/g-soliop__mingw.ads: Likewise.
4465 * libgnat/g-soliop__qnx.ads: Likewise.
4466 * libgnat/g-soliop__solaris.ads: Likewise.
4467 * libgnat/g-sopowa.adb: Likewise.
4468 * libgnat/g-sopowa__mingw.adb: Likewise.
4469 * libgnat/g-sopowa__posix.adb: Likewise.
4470 * libgnat/g-sothco.adb: Likewise.
4471 * libgnat/g-sothco.ads: Likewise.
4472 * libgnat/g-sothco__dummy.adb: Likewise.
4473 * libgnat/g-sothco__dummy.ads: Likewise.
4474 * libgnat/g-souinf.ads: Likewise.
4475 * libgnat/g-spchge.adb: Likewise.
4476 * libgnat/g-spchge.ads: Likewise.
4477 * libgnat/g-speche.adb: Likewise.
4478 * libgnat/g-speche.ads: Likewise.
4479 * libgnat/g-spipat.adb: Likewise.
4480 * libgnat/g-spipat.ads: Likewise.
4481 * libgnat/g-spitbo.adb: Likewise.
4482 * libgnat/g-spitbo.ads: Likewise.
4483 * libgnat/g-spogwa.adb: Likewise.
4484 * libgnat/g-spogwa.ads: Likewise.
4485 * libgnat/g-sptabo.ads: Likewise.
4486 * libgnat/g-sptain.ads: Likewise.
4487 * libgnat/g-sptavs.ads: Likewise.
4488 * libgnat/g-sse.ads: Likewise.
4489 * libgnat/g-ssvety.ads: Likewise.
4490 * libgnat/g-sthcso.adb: Likewise.
4491 * libgnat/g-stheme.adb: Likewise.
4492 * libgnat/g-strhas.ads: Likewise.
4493 * libgnat/g-string.adb: Likewise.
4494 * libgnat/g-string.ads: Likewise.
4495 * libgnat/g-strspl.ads: Likewise.
4496 * libgnat/g-stseme.adb: Likewise.
4497 * libgnat/g-stsifd__sockets.adb: Likewise.
4498 * libgnat/g-table.adb: Likewise.
4499 * libgnat/g-table.ads: Likewise.
4500 * libgnat/g-tasloc.adb: Likewise.
4501 * libgnat/g-tasloc.ads: Likewise.
4502 * libgnat/g-timsta.adb: Likewise.
4503 * libgnat/g-timsta.ads: Likewise.
4504 * libgnat/g-traceb.adb: Likewise.
4505 * libgnat/g-traceb.ads: Likewise.
4506 * libgnat/g-trasym.adb: Likewise.
4507 * libgnat/g-trasym.ads: Likewise.
4508 * libgnat/g-tty.adb: Likewise.
4509 * libgnat/g-tty.ads: Likewise.
4510 * libgnat/g-u3spch.adb: Likewise.
4511 * libgnat/g-u3spch.ads: Likewise.
4512 * libgnat/g-utf_32.adb: Likewise.
4513 * libgnat/g-utf_32.ads: Likewise.
4514 * libgnat/g-wispch.adb: Likewise.
4515 * libgnat/g-wispch.ads: Likewise.
4516 * libgnat/g-wistsp.ads: Likewise.
4517 * libgnat/g-zspche.adb: Likewise.
4518 * libgnat/g-zspche.ads: Likewise.
4519 * libgnat/g-zstspl.ads: Likewise.
4520 * libgnat/gnat.ads: Likewise.
4521 * libgnat/i-c.adb: Likewise.
4522 * libgnat/i-cexten.ads: Likewise.
4523 * libgnat/i-cexten__128.ads: Likewise.
4524 * libgnat/i-cobol.adb: Likewise.
4525 * libgnat/i-cobol.ads: Likewise.
4526 * libgnat/i-cpoint.adb: Likewise.
4527 * libgnat/i-cpoint.ads: Likewise.
4528 * libgnat/i-cstrea.adb: Likewise.
4529 * libgnat/i-cstrea.ads: Likewise.
4530 * libgnat/i-cstrin.adb: Likewise.
4531 * libgnat/i-cstrin.ads: Likewise.
4532 * libgnat/i-fortra.adb: Likewise.
4533 * libgnat/i-pacdec.adb: Likewise.
4534 * libgnat/i-pacdec.ads: Likewise.
4535 * libgnat/i-vxwoio.adb: Likewise.
4536 * libgnat/i-vxwoio.ads: Likewise.
4537 * libgnat/i-vxwork.ads: Likewise.
4538 * libgnat/i-vxwork__x86.ads: Likewise.
4539 * libgnat/interfac.ads: Likewise.
4540 * libgnat/interfac__2020.ads: Likewise.
4541 * libgnat/memtrack.adb: Likewise.
4542 * libgnat/s-addima.adb: Likewise.
4543 * libgnat/s-addima.ads: Likewise.
4544 * libgnat/s-addope.adb: Likewise.
4545 * libgnat/s-addope.ads: Likewise.
4546 * libgnat/s-aoinar.adb: Likewise.
4547 * libgnat/s-aoinar.ads: Likewise.
4548 * libgnat/s-aomoar.adb: Likewise.
4549 * libgnat/s-aomoar.ads: Likewise.
4550 * libgnat/s-aotase.adb: Likewise.
4551 * libgnat/s-aotase.ads: Likewise.
4552 * libgnat/s-aridou.adb: Likewise.
4553 * libgnat/s-aridou.ads: Likewise.
4554 * libgnat/s-arit128.adb: Likewise.
4555 * libgnat/s-arit128.ads: Likewise.
4556 * libgnat/s-arit32.adb: Likewise.
4557 * libgnat/s-arit32.ads: Likewise.
4558 * libgnat/s-arit64.adb: Likewise.
4559 * libgnat/s-arit64.ads: Likewise.
4560 * libgnat/s-assert.adb: Likewise.
4561 * libgnat/s-assert.ads: Likewise.
4562 * libgnat/s-atacco.adb: Likewise.
4563 * libgnat/s-atacco.ads: Likewise.
4564 * libgnat/s-atocou.adb: Likewise.
4565 * libgnat/s-atocou.ads: Likewise.
4566 * libgnat/s-atocou__builtin.adb: Likewise.
4567 * libgnat/s-atocou__x86.adb: Likewise.
4568 * libgnat/s-atoope.ads: Likewise.
4569 * libgnat/s-atopex.adb: Likewise.
4570 * libgnat/s-atopex.ads: Likewise.
4571 * libgnat/s-atopri.adb: Likewise.
4572 * libgnat/s-atopri.ads: Likewise.
4573 * libgnat/s-auxdec.adb: Likewise.
4574 * libgnat/s-auxdec.ads: Likewise.
4575 * libgnat/s-bignum.adb: Likewise.
4576 * libgnat/s-bignum.ads: Likewise.
4577 * libgnat/s-bitfie.ads: Likewise.
4578 * libgnat/s-bitops.adb: Likewise.
4579 * libgnat/s-bitops.ads: Likewise.
4580 * libgnat/s-bituti.adb: Likewise.
4581 * libgnat/s-bituti.ads: Likewise.
4582 * libgnat/s-boarop.ads: Likewise.
4583 * libgnat/s-boustr.adb: Likewise.
4584 * libgnat/s-boustr.ads: Likewise.
4585 * libgnat/s-bytswa.ads: Likewise.
4586 * libgnat/s-carsi8.adb: Likewise.
4587 * libgnat/s-carsi8.ads: Likewise.
4588 * libgnat/s-carun8.adb: Likewise.
4589 * libgnat/s-carun8.ads: Likewise.
4590 * libgnat/s-casi128.adb: Likewise.
4591 * libgnat/s-casi128.ads: Likewise.
4592 * libgnat/s-casi16.adb: Likewise.
4593 * libgnat/s-casi16.ads: Likewise.
4594 * libgnat/s-casi32.adb: Likewise.
4595 * libgnat/s-casi32.ads: Likewise.
4596 * libgnat/s-casi64.adb: Likewise.
4597 * libgnat/s-casi64.ads: Likewise.
4598 * libgnat/s-casuti.adb: Likewise.
4599 * libgnat/s-casuti.ads: Likewise.
4600 * libgnat/s-caun128.adb: Likewise.
4601 * libgnat/s-caun128.ads: Likewise.
4602 * libgnat/s-caun16.adb: Likewise.
4603 * libgnat/s-caun16.ads: Likewise.
4604 * libgnat/s-caun32.adb: Likewise.
4605 * libgnat/s-caun32.ads: Likewise.
4606 * libgnat/s-caun64.adb: Likewise.
4607 * libgnat/s-caun64.ads: Likewise.
4608 * libgnat/s-chepoo.ads: Likewise.
4609 * libgnat/s-commun.adb: Likewise.
4610 * libgnat/s-commun.ads: Likewise.
4611 * libgnat/s-conca2.adb: Likewise.
4612 * libgnat/s-conca2.ads: Likewise.
4613 * libgnat/s-conca3.adb: Likewise.
4614 * libgnat/s-conca3.ads: Likewise.
4615 * libgnat/s-conca4.adb: Likewise.
4616 * libgnat/s-conca4.ads: Likewise.
4617 * libgnat/s-conca5.adb: Likewise.
4618 * libgnat/s-conca5.ads: Likewise.
4619 * libgnat/s-conca6.adb: Likewise.
4620 * libgnat/s-conca6.ads: Likewise.
4621 * libgnat/s-conca7.adb: Likewise.
4622 * libgnat/s-conca7.ads: Likewise.
4623 * libgnat/s-conca8.adb: Likewise.
4624 * libgnat/s-conca8.ads: Likewise.
4625 * libgnat/s-conca9.adb: Likewise.
4626 * libgnat/s-conca9.ads: Likewise.
4627 * libgnat/s-crc32.adb: Likewise.
4628 * libgnat/s-crc32.ads: Likewise.
4629 * libgnat/s-crtl.ads: Likewise.
4630 * libgnat/s-dfmkio.ads: Likewise.
4631 * libgnat/s-dfmopr.ads: Likewise.
4632 * libgnat/s-dgmgop.ads: Likewise.
4633 * libgnat/s-diflio.adb: Likewise.
4634 * libgnat/s-diflio.ads: Likewise.
4635 * libgnat/s-diflmk.ads: Likewise.
4636 * libgnat/s-digemk.ads: Likewise.
4637 * libgnat/s-diinio.adb: Likewise.
4638 * libgnat/s-diinio.ads: Likewise.
4639 * libgnat/s-dilomk.ads: Likewise.
4640 * libgnat/s-dim.ads: Likewise.
4641 * libgnat/s-dimkio.ads: Likewise.
4642 * libgnat/s-dimmks.ads: Likewise.
4643 * libgnat/s-direio.adb: Likewise.
4644 * libgnat/s-direio.ads: Likewise.
4645 * libgnat/s-dlmkio.ads: Likewise.
4646 * libgnat/s-dlmopr.ads: Likewise.
4647 * libgnat/s-dmotpr.ads: Likewise.
4648 * libgnat/s-dsaser.ads: Likewise.
4649 * libgnat/s-dwalin.adb: Likewise.
4650 * libgnat/s-dwalin.ads: Likewise.
4651 * libgnat/s-elaall.adb: Likewise.
4652 * libgnat/s-elaall.ads: Likewise.
4653 * libgnat/s-excdeb.adb: Likewise.
4654 * libgnat/s-excdeb.ads: Likewise.
4655 * libgnat/s-except.adb: Likewise.
4656 * libgnat/s-except.ads: Likewise.
4657 * libgnat/s-excmac__arm.adb: Likewise.
4658 * libgnat/s-excmac__arm.ads: Likewise.
4659 * libgnat/s-excmac__gcc.adb: Likewise.
4660 * libgnat/s-excmac__gcc.ads: Likewise.
4661 * libgnat/s-exctab.adb: Likewise.
4662 * libgnat/s-exctab.ads: Likewise.
4663 * libgnat/s-exctra.adb: Likewise.
4664 * libgnat/s-exctra.ads: Likewise.
4665 * libgnat/s-exnint.adb: Likewise.
4666 * libgnat/s-exnint.ads: Likewise.
4667 * libgnat/s-exnllf.adb: Likewise.
4668 * libgnat/s-exnllf.ads: Likewise.
4669 * libgnat/s-exnlli.adb: Likewise.
4670 * libgnat/s-exnlli.ads: Likewise.
4671 * libgnat/s-exnllli.ads: Likewise.
4672 * libgnat/s-expint.adb: Likewise.
4673 * libgnat/s-expint.ads: Likewise.
4674 * libgnat/s-explli.adb: Likewise.
4675 * libgnat/s-explli.ads: Likewise.
4676 * libgnat/s-expllli.ads: Likewise.
4677 * libgnat/s-explllu.ads: Likewise.
4678 * libgnat/s-expllu.adb: Likewise.
4679 * libgnat/s-expllu.ads: Likewise.
4680 * libgnat/s-expmod.adb: Likewise.
4681 * libgnat/s-expmod.ads: Likewise.
4682 * libgnat/s-exponn.adb: Likewise.
4683 * libgnat/s-exponn.ads: Likewise.
4684 * libgnat/s-expont.adb: Likewise.
4685 * libgnat/s-expont.ads: Likewise.
4686 * libgnat/s-exponu.adb: Likewise.
4687 * libgnat/s-exponu.ads: Likewise.
4688 * libgnat/s-expuns.adb: Likewise.
4689 * libgnat/s-expuns.ads: Likewise.
4690 * libgnat/s-fatflt.ads: Likewise.
4691 * libgnat/s-fatgen.adb: Likewise.
4692 * libgnat/s-fatgen.ads: Likewise.
4693 * libgnat/s-fatlfl.ads: Likewise.
4694 * libgnat/s-fatllf.ads: Likewise.
4695 * libgnat/s-ficobl.ads: Likewise.
4696 * libgnat/s-filatt.ads: Likewise.
4697 * libgnat/s-fileio.adb: Likewise.
4698 * libgnat/s-fileio.ads: Likewise.
4699 * libgnat/s-finmas.adb: Likewise.
4700 * libgnat/s-finmas.ads: Likewise.
4701 * libgnat/s-finroo.adb: Likewise.
4702 * libgnat/s-finroo.ads: Likewise.
4703 * libgnat/s-flocon.adb: Likewise.
4704 * libgnat/s-flocon.ads: Likewise.
4705 * libgnat/s-flocon__none.adb: Likewise.
4706 * libgnat/s-fode128.ads: Likewise.
4707 * libgnat/s-fode32.ads: Likewise.
4708 * libgnat/s-fode64.ads: Likewise.
4709 * libgnat/s-fofi128.ads: Likewise.
4710 * libgnat/s-fofi32.ads: Likewise.
4711 * libgnat/s-fofi64.ads: Likewise.
4712 * libgnat/s-fore_d.adb: Likewise.
4713 * libgnat/s-fore_d.ads: Likewise.
4714 * libgnat/s-fore_f.adb: Likewise.
4715 * libgnat/s-fore_f.ads: Likewise.
4716 * libgnat/s-forrea.adb: Likewise.
4717 * libgnat/s-forrea.ads: Likewise.
4718 * libgnat/s-gearop.adb: Likewise.
4719 * libgnat/s-gearop.ads: Likewise.
4720 * libgnat/s-genbig.adb: Likewise.
4721 * libgnat/s-genbig.ads: Likewise.
4722 * libgnat/s-geveop.adb: Likewise.
4723 * libgnat/s-geveop.ads: Likewise.
4724 * libgnat/s-gloloc.adb: Likewise.
4725 * libgnat/s-gloloc.ads: Likewise.
4726 * libgnat/s-gloloc__mingw.adb: Likewise.
4727 * libgnat/s-htable.adb: Likewise.
4728 * libgnat/s-htable.ads: Likewise.
4729 * libgnat/s-imageb.adb: Likewise.
4730 * libgnat/s-imageb.ads: Likewise.
4731 * libgnat/s-imaged.adb: Likewise.
4732 * libgnat/s-imaged.ads: Likewise.
4733 * libgnat/s-imagef.adb: Likewise.
4734 * libgnat/s-imagef.ads: Likewise.
4735 * libgnat/s-imagei.adb: Likewise.
4736 * libgnat/s-imagei.ads: Likewise.
4737 * libgnat/s-imageu.adb: Likewise.
4738 * libgnat/s-imageu.ads: Likewise.
4739 * libgnat/s-imagew.adb: Likewise.
4740 * libgnat/s-imagew.ads: Likewise.
4741 * libgnat/s-imde128.ads: Likewise.
4742 * libgnat/s-imde32.ads: Likewise.
4743 * libgnat/s-imde64.ads: Likewise.
4744 * libgnat/s-imenne.adb: Likewise.
4745 * libgnat/s-imenne.ads: Likewise.
4746 * libgnat/s-imfi128.ads: Likewise.
4747 * libgnat/s-imfi32.ads: Likewise.
4748 * libgnat/s-imfi64.ads: Likewise.
4749 * libgnat/s-imgbiu.adb: Likewise.
4750 * libgnat/s-imgbiu.ads: Likewise.
4751 * libgnat/s-imgboo.adb: Likewise.
4752 * libgnat/s-imgboo.ads: Likewise.
4753 * libgnat/s-imgcha.adb: Likewise.
4754 * libgnat/s-imgcha.ads: Likewise.
4755 * libgnat/s-imgenu.adb: Likewise.
4756 * libgnat/s-imgenu.ads: Likewise.
4757 * libgnat/s-imgint.adb: Likewise.
4758 * libgnat/s-imgint.ads: Likewise.
4759 * libgnat/s-imgllb.adb: Likewise.
4760 * libgnat/s-imgllb.ads: Likewise.
4761 * libgnat/s-imglli.adb: Likewise.
4762 * libgnat/s-imglli.ads: Likewise.
4763 * libgnat/s-imglllb.ads: Likewise.
4764 * libgnat/s-imgllli.ads: Likewise.
4765 * libgnat/s-imglllu.ads: Likewise.
4766 * libgnat/s-imglllw.ads: Likewise.
4767 * libgnat/s-imgllu.adb: Likewise.
4768 * libgnat/s-imgllu.ads: Likewise.
4769 * libgnat/s-imgllw.adb: Likewise.
4770 * libgnat/s-imgllw.ads: Likewise.
4771 * libgnat/s-imgrea.adb: Likewise.
4772 * libgnat/s-imgrea.ads: Likewise.
4773 * libgnat/s-imguns.adb: Likewise.
4774 * libgnat/s-imguns.ads: Likewise.
4775 * libgnat/s-imguti.adb: Likewise.
4776 * libgnat/s-imguti.ads: Likewise.
4777 * libgnat/s-imgwch.adb: Likewise.
4778 * libgnat/s-imgwch.ads: Likewise.
4779 * libgnat/s-imgwiu.adb: Likewise.
4780 * libgnat/s-imgwiu.ads: Likewise.
4781 * libgnat/s-io.adb: Likewise.
4782 * libgnat/s-io.ads: Likewise.
4783 * libgnat/s-llflex.ads: Likewise.
4784 * libgnat/s-maccod.ads: Likewise.
4785 * libgnat/s-mantis.adb: Likewise.
4786 * libgnat/s-mantis.ads: Likewise.
4787 * libgnat/s-mastop.adb: Likewise.
4788 * libgnat/s-mastop.ads: Likewise.
4789 * libgnat/s-memcop.ads: Likewise.
4790 * libgnat/s-memory.adb: Likewise.
4791 * libgnat/s-memory.ads: Likewise.
4792 * libgnat/s-mmap.adb: Likewise.
4793 * libgnat/s-mmap.ads: Likewise.
4794 * libgnat/s-mmauni__long.ads: Likewise.
4795 * libgnat/s-mmosin__mingw.adb: Likewise.
4796 * libgnat/s-mmosin__mingw.ads: Likewise.
4797 * libgnat/s-mmosin__unix.adb: Likewise.
4798 * libgnat/s-mmosin__unix.ads: Likewise.
4799 * libgnat/s-multip.adb: Likewise.
4800 * libgnat/s-objrea.adb: Likewise.
4801 * libgnat/s-objrea.ads: Likewise.
4802 * libgnat/s-optide.adb: Likewise.
4803 * libgnat/s-os_lib.adb: Likewise.
4804 * libgnat/s-os_lib.ads: Likewise.
4805 * libgnat/s-osprim.ads: Likewise.
4806 * libgnat/s-osprim__darwin.adb: Likewise.
4807 * libgnat/s-osprim__lynxos.ads: Likewise.
4808 * libgnat/s-osprim__mingw.adb: Likewise.
4809 * libgnat/s-osprim__posix.adb: Likewise.
4810 * libgnat/s-osprim__posix2008.adb: Likewise.
4811 * libgnat/s-osprim__rtems.adb: Likewise.
4812 * libgnat/s-osprim__solaris.adb: Likewise.
4813 * libgnat/s-osprim__unix.adb: Likewise.
4814 * libgnat/s-osprim__vxworks.adb: Likewise.
4815 * libgnat/s-osprim__x32.adb: Likewise.
4816 * libgnat/s-osvers__vxworks-653.ads: Likewise.
4817 * libgnat/s-pack03.adb: Likewise.
4818 * libgnat/s-pack03.ads: Likewise.
4819 * libgnat/s-pack05.adb: Likewise.
4820 * libgnat/s-pack05.ads: Likewise.
4821 * libgnat/s-pack06.adb: Likewise.
4822 * libgnat/s-pack06.ads: Likewise.
4823 * libgnat/s-pack07.adb: Likewise.
4824 * libgnat/s-pack07.ads: Likewise.
4825 * libgnat/s-pack09.adb: Likewise.
4826 * libgnat/s-pack09.ads: Likewise.
4827 * libgnat/s-pack10.adb: Likewise.
4828 * libgnat/s-pack10.ads: Likewise.
4829 * libgnat/s-pack100.adb: Likewise.
4830 * libgnat/s-pack100.ads: Likewise.
4831 * libgnat/s-pack101.adb: Likewise.
4832 * libgnat/s-pack101.ads: Likewise.
4833 * libgnat/s-pack102.adb: Likewise.
4834 * libgnat/s-pack102.ads: Likewise.
4835 * libgnat/s-pack103.adb: Likewise.
4836 * libgnat/s-pack103.ads: Likewise.
4837 * libgnat/s-pack104.adb: Likewise.
4838 * libgnat/s-pack104.ads: Likewise.
4839 * libgnat/s-pack105.adb: Likewise.
4840 * libgnat/s-pack105.ads: Likewise.
4841 * libgnat/s-pack106.adb: Likewise.
4842 * libgnat/s-pack106.ads: Likewise.
4843 * libgnat/s-pack107.adb: Likewise.
4844 * libgnat/s-pack107.ads: Likewise.
4845 * libgnat/s-pack108.adb: Likewise.
4846 * libgnat/s-pack108.ads: Likewise.
4847 * libgnat/s-pack109.adb: Likewise.
4848 * libgnat/s-pack109.ads: Likewise.
4849 * libgnat/s-pack11.adb: Likewise.
4850 * libgnat/s-pack11.ads: Likewise.
4851 * libgnat/s-pack110.adb: Likewise.
4852 * libgnat/s-pack110.ads: Likewise.
4853 * libgnat/s-pack111.adb: Likewise.
4854 * libgnat/s-pack111.ads: Likewise.
4855 * libgnat/s-pack112.adb: Likewise.
4856 * libgnat/s-pack112.ads: Likewise.
4857 * libgnat/s-pack113.adb: Likewise.
4858 * libgnat/s-pack113.ads: Likewise.
4859 * libgnat/s-pack114.adb: Likewise.
4860 * libgnat/s-pack114.ads: Likewise.
4861 * libgnat/s-pack115.adb: Likewise.
4862 * libgnat/s-pack115.ads: Likewise.
4863 * libgnat/s-pack116.adb: Likewise.
4864 * libgnat/s-pack116.ads: Likewise.
4865 * libgnat/s-pack117.adb: Likewise.
4866 * libgnat/s-pack117.ads: Likewise.
4867 * libgnat/s-pack118.adb: Likewise.
4868 * libgnat/s-pack118.ads: Likewise.
4869 * libgnat/s-pack119.adb: Likewise.
4870 * libgnat/s-pack119.ads: Likewise.
4871 * libgnat/s-pack12.adb: Likewise.
4872 * libgnat/s-pack12.ads: Likewise.
4873 * libgnat/s-pack120.adb: Likewise.
4874 * libgnat/s-pack120.ads: Likewise.
4875 * libgnat/s-pack121.adb: Likewise.
4876 * libgnat/s-pack121.ads: Likewise.
4877 * libgnat/s-pack122.adb: Likewise.
4878 * libgnat/s-pack122.ads: Likewise.
4879 * libgnat/s-pack123.adb: Likewise.
4880 * libgnat/s-pack123.ads: Likewise.
4881 * libgnat/s-pack124.adb: Likewise.
4882 * libgnat/s-pack124.ads: Likewise.
4883 * libgnat/s-pack125.adb: Likewise.
4884 * libgnat/s-pack125.ads: Likewise.
4885 * libgnat/s-pack126.adb: Likewise.
4886 * libgnat/s-pack126.ads: Likewise.
4887 * libgnat/s-pack127.adb: Likewise.
4888 * libgnat/s-pack127.ads: Likewise.
4889 * libgnat/s-pack13.adb: Likewise.
4890 * libgnat/s-pack13.ads: Likewise.
4891 * libgnat/s-pack14.adb: Likewise.
4892 * libgnat/s-pack14.ads: Likewise.
4893 * libgnat/s-pack15.adb: Likewise.
4894 * libgnat/s-pack15.ads: Likewise.
4895 * libgnat/s-pack17.adb: Likewise.
4896 * libgnat/s-pack17.ads: Likewise.
4897 * libgnat/s-pack18.adb: Likewise.
4898 * libgnat/s-pack18.ads: Likewise.
4899 * libgnat/s-pack19.adb: Likewise.
4900 * libgnat/s-pack19.ads: Likewise.
4901 * libgnat/s-pack20.adb: Likewise.
4902 * libgnat/s-pack20.ads: Likewise.
4903 * libgnat/s-pack21.adb: Likewise.
4904 * libgnat/s-pack21.ads: Likewise.
4905 * libgnat/s-pack22.adb: Likewise.
4906 * libgnat/s-pack22.ads: Likewise.
4907 * libgnat/s-pack23.adb: Likewise.
4908 * libgnat/s-pack23.ads: Likewise.
4909 * libgnat/s-pack24.adb: Likewise.
4910 * libgnat/s-pack24.ads: Likewise.
4911 * libgnat/s-pack25.adb: Likewise.
4912 * libgnat/s-pack25.ads: Likewise.
4913 * libgnat/s-pack26.adb: Likewise.
4914 * libgnat/s-pack26.ads: Likewise.
4915 * libgnat/s-pack27.adb: Likewise.
4916 * libgnat/s-pack27.ads: Likewise.
4917 * libgnat/s-pack28.adb: Likewise.
4918 * libgnat/s-pack28.ads: Likewise.
4919 * libgnat/s-pack29.adb: Likewise.
4920 * libgnat/s-pack29.ads: Likewise.
4921 * libgnat/s-pack30.adb: Likewise.
4922 * libgnat/s-pack30.ads: Likewise.
4923 * libgnat/s-pack31.adb: Likewise.
4924 * libgnat/s-pack31.ads: Likewise.
4925 * libgnat/s-pack33.adb: Likewise.
4926 * libgnat/s-pack33.ads: Likewise.
4927 * libgnat/s-pack34.adb: Likewise.
4928 * libgnat/s-pack34.ads: Likewise.
4929 * libgnat/s-pack35.adb: Likewise.
4930 * libgnat/s-pack35.ads: Likewise.
4931 * libgnat/s-pack36.adb: Likewise.
4932 * libgnat/s-pack36.ads: Likewise.
4933 * libgnat/s-pack37.adb: Likewise.
4934 * libgnat/s-pack37.ads: Likewise.
4935 * libgnat/s-pack38.adb: Likewise.
4936 * libgnat/s-pack38.ads: Likewise.
4937 * libgnat/s-pack39.adb: Likewise.
4938 * libgnat/s-pack39.ads: Likewise.
4939 * libgnat/s-pack40.adb: Likewise.
4940 * libgnat/s-pack40.ads: Likewise.
4941 * libgnat/s-pack41.adb: Likewise.
4942 * libgnat/s-pack41.ads: Likewise.
4943 * libgnat/s-pack42.adb: Likewise.
4944 * libgnat/s-pack42.ads: Likewise.
4945 * libgnat/s-pack43.adb: Likewise.
4946 * libgnat/s-pack43.ads: Likewise.
4947 * libgnat/s-pack44.adb: Likewise.
4948 * libgnat/s-pack44.ads: Likewise.
4949 * libgnat/s-pack45.adb: Likewise.
4950 * libgnat/s-pack45.ads: Likewise.
4951 * libgnat/s-pack46.adb: Likewise.
4952 * libgnat/s-pack46.ads: Likewise.
4953 * libgnat/s-pack47.adb: Likewise.
4954 * libgnat/s-pack47.ads: Likewise.
4955 * libgnat/s-pack48.adb: Likewise.
4956 * libgnat/s-pack48.ads: Likewise.
4957 * libgnat/s-pack49.adb: Likewise.
4958 * libgnat/s-pack49.ads: Likewise.
4959 * libgnat/s-pack50.adb: Likewise.
4960 * libgnat/s-pack50.ads: Likewise.
4961 * libgnat/s-pack51.adb: Likewise.
4962 * libgnat/s-pack51.ads: Likewise.
4963 * libgnat/s-pack52.adb: Likewise.
4964 * libgnat/s-pack52.ads: Likewise.
4965 * libgnat/s-pack53.adb: Likewise.
4966 * libgnat/s-pack53.ads: Likewise.
4967 * libgnat/s-pack54.adb: Likewise.
4968 * libgnat/s-pack54.ads: Likewise.
4969 * libgnat/s-pack55.adb: Likewise.
4970 * libgnat/s-pack55.ads: Likewise.
4971 * libgnat/s-pack56.adb: Likewise.
4972 * libgnat/s-pack56.ads: Likewise.
4973 * libgnat/s-pack57.adb: Likewise.
4974 * libgnat/s-pack57.ads: Likewise.
4975 * libgnat/s-pack58.adb: Likewise.
4976 * libgnat/s-pack58.ads: Likewise.
4977 * libgnat/s-pack59.adb: Likewise.
4978 * libgnat/s-pack59.ads: Likewise.
4979 * libgnat/s-pack60.adb: Likewise.
4980 * libgnat/s-pack60.ads: Likewise.
4981 * libgnat/s-pack61.adb: Likewise.
4982 * libgnat/s-pack61.ads: Likewise.
4983 * libgnat/s-pack62.adb: Likewise.
4984 * libgnat/s-pack62.ads: Likewise.
4985 * libgnat/s-pack63.adb: Likewise.
4986 * libgnat/s-pack63.ads: Likewise.
4987 * libgnat/s-pack65.adb: Likewise.
4988 * libgnat/s-pack65.ads: Likewise.
4989 * libgnat/s-pack66.adb: Likewise.
4990 * libgnat/s-pack66.ads: Likewise.
4991 * libgnat/s-pack67.adb: Likewise.
4992 * libgnat/s-pack67.ads: Likewise.
4993 * libgnat/s-pack68.adb: Likewise.
4994 * libgnat/s-pack68.ads: Likewise.
4995 * libgnat/s-pack69.adb: Likewise.
4996 * libgnat/s-pack69.ads: Likewise.
4997 * libgnat/s-pack70.adb: Likewise.
4998 * libgnat/s-pack70.ads: Likewise.
4999 * libgnat/s-pack71.adb: Likewise.
5000 * libgnat/s-pack71.ads: Likewise.
5001 * libgnat/s-pack72.adb: Likewise.
5002 * libgnat/s-pack72.ads: Likewise.
5003 * libgnat/s-pack73.adb: Likewise.
5004 * libgnat/s-pack73.ads: Likewise.
5005 * libgnat/s-pack74.adb: Likewise.
5006 * libgnat/s-pack74.ads: Likewise.
5007 * libgnat/s-pack75.adb: Likewise.
5008 * libgnat/s-pack75.ads: Likewise.
5009 * libgnat/s-pack76.adb: Likewise.
5010 * libgnat/s-pack76.ads: Likewise.
5011 * libgnat/s-pack77.adb: Likewise.
5012 * libgnat/s-pack77.ads: Likewise.
5013 * libgnat/s-pack78.adb: Likewise.
5014 * libgnat/s-pack78.ads: Likewise.
5015 * libgnat/s-pack79.adb: Likewise.
5016 * libgnat/s-pack79.ads: Likewise.
5017 * libgnat/s-pack80.adb: Likewise.
5018 * libgnat/s-pack80.ads: Likewise.
5019 * libgnat/s-pack81.adb: Likewise.
5020 * libgnat/s-pack81.ads: Likewise.
5021 * libgnat/s-pack82.adb: Likewise.
5022 * libgnat/s-pack82.ads: Likewise.
5023 * libgnat/s-pack83.adb: Likewise.
5024 * libgnat/s-pack83.ads: Likewise.
5025 * libgnat/s-pack84.adb: Likewise.
5026 * libgnat/s-pack84.ads: Likewise.
5027 * libgnat/s-pack85.adb: Likewise.
5028 * libgnat/s-pack85.ads: Likewise.
5029 * libgnat/s-pack86.adb: Likewise.
5030 * libgnat/s-pack86.ads: Likewise.
5031 * libgnat/s-pack87.adb: Likewise.
5032 * libgnat/s-pack87.ads: Likewise.
5033 * libgnat/s-pack88.adb: Likewise.
5034 * libgnat/s-pack88.ads: Likewise.
5035 * libgnat/s-pack89.adb: Likewise.
5036 * libgnat/s-pack89.ads: Likewise.
5037 * libgnat/s-pack90.adb: Likewise.
5038 * libgnat/s-pack90.ads: Likewise.
5039 * libgnat/s-pack91.adb: Likewise.
5040 * libgnat/s-pack91.ads: Likewise.
5041 * libgnat/s-pack92.adb: Likewise.
5042 * libgnat/s-pack92.ads: Likewise.
5043 * libgnat/s-pack93.adb: Likewise.
5044 * libgnat/s-pack93.ads: Likewise.
5045 * libgnat/s-pack94.adb: Likewise.
5046 * libgnat/s-pack94.ads: Likewise.
5047 * libgnat/s-pack95.adb: Likewise.
5048 * libgnat/s-pack95.ads: Likewise.
5049 * libgnat/s-pack96.adb: Likewise.
5050 * libgnat/s-pack96.ads: Likewise.
5051 * libgnat/s-pack97.adb: Likewise.
5052 * libgnat/s-pack97.ads: Likewise.
5053 * libgnat/s-pack98.adb: Likewise.
5054 * libgnat/s-pack98.ads: Likewise.
5055 * libgnat/s-pack99.adb: Likewise.
5056 * libgnat/s-pack99.ads: Likewise.
5057 * libgnat/s-parame.adb: Likewise.
5058 * libgnat/s-parame.ads: Likewise.
5059 * libgnat/s-parame__ae653.ads: Likewise.
5060 * libgnat/s-parame__hpux.ads: Likewise.
5061 * libgnat/s-parame__rtems.adb: Likewise.
5062 * libgnat/s-parame__vxworks.adb: Likewise.
5063 * libgnat/s-parame__vxworks.ads: Likewise.
5064 * libgnat/s-parint.adb: Likewise.
5065 * libgnat/s-parint.ads: Likewise.
5066 * libgnat/s-pooglo.adb: Likewise.
5067 * libgnat/s-pooglo.ads: Likewise.
5068 * libgnat/s-pooloc.adb: Likewise.
5069 * libgnat/s-pooloc.ads: Likewise.
5070 * libgnat/s-poosiz.adb: Likewise.
5071 * libgnat/s-poosiz.ads: Likewise.
5072 * libgnat/s-powflt.ads: Likewise.
5073 * libgnat/s-powlfl.ads: Likewise.
5074 * libgnat/s-powllf.ads: Likewise.
5075 * libgnat/s-purexc.ads: Likewise.
5076 * libgnat/s-putaim.adb: Likewise.
5077 * libgnat/s-putaim.ads: Likewise.
5078 * libgnat/s-putima.adb: Likewise.
5079 * libgnat/s-putima.ads: Likewise.
5080 * libgnat/s-rannum.adb: Likewise.
5081 * libgnat/s-rannum.ads: Likewise.
5082 * libgnat/s-ransee.adb: Likewise.
5083 * libgnat/s-ransee.ads: Likewise.
5084 * libgnat/s-regexp.adb: Likewise.
5085 * libgnat/s-regexp.ads: Likewise.
5086 * libgnat/s-regpat.adb: Likewise.
5087 * libgnat/s-regpat.ads: Likewise.
5088 * libgnat/s-resfil.adb: Likewise.
5089 * libgnat/s-resfil.ads: Likewise.
5090 * libgnat/s-restri.adb: Likewise.
5091 * libgnat/s-restri.ads: Likewise.
5092 * libgnat/s-rident.ads: Likewise.
5093 * libgnat/s-rpc.adb: Likewise.
5094 * libgnat/s-rpc.ads: Likewise.
5095 * libgnat/s-scaval.adb: Likewise.
5096 * libgnat/s-scaval.ads: Likewise.
5097 * libgnat/s-scaval__128.adb: Likewise.
5098 * libgnat/s-scaval__128.ads: Likewise.
5099 * libgnat/s-secsta.adb: Likewise.
5100 * libgnat/s-secsta.ads: Likewise.
5101 * libgnat/s-sequio.adb: Likewise.
5102 * libgnat/s-sequio.ads: Likewise.
5103 * libgnat/s-shabig.ads: Likewise.
5104 * libgnat/s-shasto.adb: Likewise.
5105 * libgnat/s-shasto.ads: Likewise.
5106 * libgnat/s-soflin.adb: Likewise.
5107 * libgnat/s-soflin.ads: Likewise.
5108 * libgnat/s-soliin.adb: Likewise.
5109 * libgnat/s-soliin.ads: Likewise.
5110 * libgnat/s-sopco3.adb: Likewise.
5111 * libgnat/s-sopco3.ads: Likewise.
5112 * libgnat/s-sopco4.adb: Likewise.
5113 * libgnat/s-sopco4.ads: Likewise.
5114 * libgnat/s-sopco5.adb: Likewise.
5115 * libgnat/s-sopco5.ads: Likewise.
5116 * libgnat/s-spsufi.adb: Likewise.
5117 * libgnat/s-spsufi.ads: Likewise.
5118 * libgnat/s-stache.adb: Likewise.
5119 * libgnat/s-stache.ads: Likewise.
5120 * libgnat/s-stalib.adb: Likewise.
5121 * libgnat/s-stalib.ads: Likewise.
5122 * libgnat/s-statxd.adb: Likewise.
5123 * libgnat/s-statxd.ads: Likewise.
5124 * libgnat/s-stausa.adb: Likewise.
5125 * libgnat/s-stausa.ads: Likewise.
5126 * libgnat/s-stchop.adb: Likewise.
5127 * libgnat/s-stchop.ads: Likewise.
5128 * libgnat/s-stchop__limit.ads: Likewise.
5129 * libgnat/s-stchop__rtems.adb: Likewise.
5130 * libgnat/s-stchop__vxworks.adb: Likewise.
5131 * libgnat/s-stoele.adb: Likewise.
5132 * libgnat/s-stoele.ads: Likewise.
5133 * libgnat/s-stopoo.adb: Likewise.
5134 * libgnat/s-stopoo.ads: Likewise.
5135 * libgnat/s-stposu.adb: Likewise.
5136 * libgnat/s-stposu.ads: Likewise.
5137 * libgnat/s-stratt.adb: Likewise.
5138 * libgnat/s-stratt.ads: Likewise.
5139 * libgnat/s-strcom.adb: Likewise.
5140 * libgnat/s-strcom.ads: Likewise.
5141 * libgnat/s-strhas.adb: Likewise.
5142 * libgnat/s-strhas.ads: Likewise.
5143 * libgnat/s-string.adb: Likewise.
5144 * libgnat/s-string.ads: Likewise.
5145 * libgnat/s-strops.adb: Likewise.
5146 * libgnat/s-strops.ads: Likewise.
5147 * libgnat/s-ststop.adb: Likewise.
5148 * libgnat/s-ststop.ads: Likewise.
5149 * libgnat/s-tasloc.adb: Likewise.
5150 * libgnat/s-tasloc.ads: Likewise.
5151 * libgnat/s-thread.ads: Likewise.
5152 * libgnat/s-thread__ae653.adb: Likewise.
5153 * libgnat/s-traceb.adb: Likewise.
5154 * libgnat/s-traceb.ads: Likewise.
5155 * libgnat/s-traceb__hpux.adb: Likewise.
5156 * libgnat/s-traceb__mastop.adb: Likewise.
5157 * libgnat/s-traent.adb: Likewise.
5158 * libgnat/s-traent.ads: Likewise.
5159 * libgnat/s-trasym.adb: Likewise.
5160 * libgnat/s-trasym.ads: Likewise.
5161 * libgnat/s-trasym__dwarf.adb: Likewise.
5162 * libgnat/s-tsmona.adb: Likewise.
5163 * libgnat/s-tsmona__linux.adb: Likewise.
5164 * libgnat/s-tsmona__mingw.adb: Likewise.
5165 * libgnat/s-unstyp.ads: Likewise.
5166 * libgnat/s-utf_32.adb: Likewise.
5167 * libgnat/s-utf_32.ads: Likewise.
5168 * libgnat/s-vade128.ads: Likewise.
5169 * libgnat/s-vade32.ads: Likewise.
5170 * libgnat/s-vade64.ads: Likewise.
5171 * libgnat/s-vafi128.ads: Likewise.
5172 * libgnat/s-vafi32.ads: Likewise.
5173 * libgnat/s-vafi64.ads: Likewise.
5174 * libgnat/s-valboo.adb: Likewise.
5175 * libgnat/s-valboo.ads: Likewise.
5176 * libgnat/s-valcha.adb: Likewise.
5177 * libgnat/s-valcha.ads: Likewise.
5178 * libgnat/s-valenu.adb: Likewise.
5179 * libgnat/s-valenu.ads: Likewise.
5180 * libgnat/s-valflt.ads: Likewise.
5181 * libgnat/s-valint.adb: Likewise.
5182 * libgnat/s-valint.ads: Likewise.
5183 * libgnat/s-vallfl.ads: Likewise.
5184 * libgnat/s-valllf.ads: Likewise.
5185 * libgnat/s-vallli.adb: Likewise.
5186 * libgnat/s-vallli.ads: Likewise.
5187 * libgnat/s-valllli.ads: Likewise.
5188 * libgnat/s-vallllu.ads: Likewise.
5189 * libgnat/s-valllu.adb: Likewise.
5190 * libgnat/s-valllu.ads: Likewise.
5191 * libgnat/s-valrea.adb: Likewise.
5192 * libgnat/s-valrea.ads: Likewise.
5193 * libgnat/s-valued.adb: Likewise.
5194 * libgnat/s-valued.ads: Likewise.
5195 * libgnat/s-valuef.adb: Likewise.
5196 * libgnat/s-valuef.ads: Likewise.
5197 * libgnat/s-valuei.adb: Likewise.
5198 * libgnat/s-valuei.ads: Likewise.
5199 * libgnat/s-valuer.adb: Likewise.
5200 * libgnat/s-valuer.ads: Likewise.
5201 * libgnat/s-valueu.adb: Likewise.
5202 * libgnat/s-valueu.ads: Likewise.
5203 * libgnat/s-valuns.adb: Likewise.
5204 * libgnat/s-valuns.ads: Likewise.
5205 * libgnat/s-valuti.adb: Likewise.
5206 * libgnat/s-valuti.ads: Likewise.
5207 * libgnat/s-valwch.adb: Likewise.
5208 * libgnat/s-valwch.ads: Likewise.
5209 * libgnat/s-veboop.adb: Likewise.
5210 * libgnat/s-veboop.ads: Likewise.
5211 * libgnat/s-vector.ads: Likewise.
5212 * libgnat/s-vercon.adb: Likewise.
5213 * libgnat/s-vercon.ads: Likewise.
5214 * libgnat/s-wchcnv.adb: Likewise.
5215 * libgnat/s-wchcnv.ads: Likewise.
5216 * libgnat/s-wchcon.adb: Likewise.
5217 * libgnat/s-wchcon.ads: Likewise.
5218 * libgnat/s-wchjis.adb: Likewise.
5219 * libgnat/s-wchjis.ads: Likewise.
5220 * libgnat/s-wchstw.adb: Likewise.
5221 * libgnat/s-wchstw.ads: Likewise.
5222 * libgnat/s-wchwts.adb: Likewise.
5223 * libgnat/s-wchwts.ads: Likewise.
5224 * libgnat/s-widboo.adb: Likewise.
5225 * libgnat/s-widboo.ads: Likewise.
5226 * libgnat/s-widcha.adb: Likewise.
5227 * libgnat/s-widcha.ads: Likewise.
5228 * libgnat/s-widenu.adb: Likewise.
5229 * libgnat/s-widenu.ads: Likewise.
5230 * libgnat/s-widint.ads: Likewise.
5231 * libgnat/s-widlli.adb: Likewise.
5232 * libgnat/s-widlli.ads: Likewise.
5233 * libgnat/s-widllli.ads: Likewise.
5234 * libgnat/s-widlllu.ads: Likewise.
5235 * libgnat/s-widllu.adb: Likewise.
5236 * libgnat/s-widllu.ads: Likewise.
5237 * libgnat/s-widthi.adb: Likewise.
5238 * libgnat/s-widthi.ads: Likewise.
5239 * libgnat/s-widthu.adb: Likewise.
5240 * libgnat/s-widthu.ads: Likewise.
5241 * libgnat/s-widuns.ads: Likewise.
5242 * libgnat/s-widwch.adb: Likewise.
5243 * libgnat/s-widwch.ads: Likewise.
5244 * libgnat/s-win32.ads: Likewise.
5245 * libgnat/s-winext.ads: Likewise.
5246 * libgnat/s-wwdcha.adb: Likewise.
5247 * libgnat/s-wwdcha.ads: Likewise.
5248 * libgnat/s-wwdenu.adb: Likewise.
5249 * libgnat/s-wwdenu.ads: Likewise.
5250 * libgnat/s-wwdwch.adb: Likewise.
5251 * libgnat/s-wwdwch.ads: Likewise.
5252 * libgnat/system-aix.ads: Likewise.
5253 * libgnat/system-darwin-arm.ads: Likewise.
5254 * libgnat/system-darwin-ppc.ads: Likewise.
5255 * libgnat/system-darwin-x86.ads: Likewise.
5256 * libgnat/system-djgpp.ads: Likewise.
5257 * libgnat/system-dragonfly-x86_64.ads: Likewise.
5258 * libgnat/system-freebsd.ads: Likewise.
5259 * libgnat/system-hpux-ia64.ads: Likewise.
5260 * libgnat/system-hpux.ads: Likewise.
5261 * libgnat/system-linux-alpha.ads: Likewise.
5262 * libgnat/system-linux-arm.ads: Likewise.
5263 * libgnat/system-linux-hppa.ads: Likewise.
5264 * libgnat/system-linux-ia64.ads: Likewise.
5265 * libgnat/system-linux-m68k.ads: Likewise.
5266 * libgnat/system-linux-mips.ads: Likewise.
5267 * libgnat/system-linux-ppc.ads: Likewise.
5268 * libgnat/system-linux-riscv.ads: Likewise.
5269 * libgnat/system-linux-s390.ads: Likewise.
5270 * libgnat/system-linux-sh4.ads: Likewise.
5271 * libgnat/system-linux-sparc.ads: Likewise.
5272 * libgnat/system-linux-x86.ads: Likewise.
5273 * libgnat/system-lynxos178-ppc.ads: Likewise.
5274 * libgnat/system-lynxos178-x86.ads: Likewise.
5275 * libgnat/system-mingw.ads: Likewise.
5276 * libgnat/system-qnx-aarch64.ads: Likewise.
5277 * libgnat/system-rtems.ads: Likewise.
5278 * libgnat/system-solaris-sparc.ads: Likewise.
5279 * libgnat/system-solaris-x86.ads: Likewise.
5280 * libgnat/system-vxworks-arm-rtp-smp.ads: Likewise.
5281 * libgnat/system-vxworks-arm-rtp.ads: Likewise.
5282 * libgnat/system-vxworks-arm.ads: Likewise.
5283 * libgnat/system-vxworks-e500-kernel.ads: Likewise.
5284 * libgnat/system-vxworks-e500-rtp-smp.ads: Likewise.
5285 * libgnat/system-vxworks-e500-rtp.ads: Likewise.
5286 * libgnat/system-vxworks-e500-vthread.ads: Likewise.
5287 * libgnat/system-vxworks-ppc-kernel.ads: Likewise.
5288 * libgnat/system-vxworks-ppc-ravenscar.ads: Likewise.
5289 * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise.
5290 * libgnat/system-vxworks-ppc-rtp.ads: Likewise.
5291 * libgnat/system-vxworks-ppc-vthread.ads: Likewise.
5292 * libgnat/system-vxworks-ppc.ads: Likewise.
5293 * libgnat/system-vxworks-x86-kernel.ads: Likewise.
5294 * libgnat/system-vxworks-x86-rtp-smp.ads: Likewise.
5295 * libgnat/system-vxworks-x86-rtp.ads: Likewise.
5296 * libgnat/system-vxworks-x86-vthread.ads: Likewise.
5297 * libgnat/system-vxworks-x86.ads: Likewise.
5298 * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise.
5299 * libgnat/system-vxworks7-aarch64.ads: Likewise.
5300 * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise.
5301 * libgnat/system-vxworks7-arm.ads: Likewise.
5302 * libgnat/system-vxworks7-e500-kernel.ads: Likewise.
5303 * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise.
5304 * libgnat/system-vxworks7-e500-rtp.ads: Likewise.
5305 * libgnat/system-vxworks7-ppc-kernel.ads: Likewise.
5306 * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise.
5307 * libgnat/system-vxworks7-ppc-rtp.ads: Likewise.
5308 * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise.
5309 * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise.
5310 * libgnat/system-vxworks7-x86-kernel.ads: Likewise.
5311 * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise.
5312 * libgnat/system-vxworks7-x86-rtp.ads: Likewise.
5313 * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise.
5314 * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise.
5315 * link.c: Likewise.
5316 * live.adb: Likewise.
5317 * live.ads: Likewise.
5318 * locales.c: Likewise.
5319 * make.adb: Likewise.
5320 * make.ads: Likewise.
5321 * make_util.adb: Likewise.
5322 * make_util.ads: Likewise.
5323 * makeusg.adb: Likewise.
5324 * makeusg.ads: Likewise.
5325 * mdll-fil.adb: Likewise.
5326 * mdll-fil.ads: Likewise.
5327 * mdll-utl.adb: Likewise.
5328 * mdll-utl.ads: Likewise.
5329 * mdll.adb: Likewise.
5330 * mdll.ads: Likewise.
5331 * mingw32.h: Likewise.
5332 * mkdir.c: Likewise.
5333 * namet-sp.adb: Likewise.
5334 * namet-sp.ads: Likewise.
5335 * namet.adb: Likewise.
5336 * namet.ads: Likewise.
5337 * namet.h: Likewise.
5338 * nlists.adb: Likewise.
5339 * nlists.ads: Likewise.
5340 * nlists.h: Likewise.
5341 * opt.adb: Likewise.
5342 * opt.ads: Likewise.
5343 * osint-b.adb: Likewise.
5344 * osint-b.ads: Likewise.
5345 * osint-c.adb: Likewise.
5346 * osint-c.ads: Likewise.
5347 * osint-l.adb: Likewise.
5348 * osint-l.ads: Likewise.
5349 * osint-m.adb: Likewise.
5350 * osint-m.ads: Likewise.
5351 * osint.adb: Likewise.
5352 * osint.ads: Likewise.
5353 * output.adb: Likewise.
5354 * output.ads: Likewise.
5355 * par-ch10.adb: Likewise.
5356 * par-ch11.adb: Likewise.
5357 * par-ch12.adb: Likewise.
5358 * par-ch13.adb: Likewise.
5359 * par-ch2.adb: Likewise.
5360 * par-ch3.adb: Likewise.
5361 * par-ch4.adb: Likewise.
5362 * par-ch5.adb: Likewise.
5363 * par-ch6.adb: Likewise.
5364 * par-ch7.adb: Likewise.
5365 * par-ch8.adb: Likewise.
5366 * par-ch9.adb: Likewise.
5367 * par-endh.adb: Likewise.
5368 * par-labl.adb: Likewise.
5369 * par-load.adb: Likewise.
5370 * par-prag.adb: Likewise.
5371 * par-sync.adb: Likewise.
5372 * par-tchk.adb: Likewise.
5373 * par-util.adb: Likewise.
5374 * par.adb: Likewise.
5375 * par.ads: Likewise.
5376 * par_sco.adb: Likewise.
5377 * par_sco.ads: Likewise.
5378 * pprint.adb: Likewise.
5379 * pprint.ads: Likewise.
5380 * prep.adb: Likewise.
5381 * prep.ads: Likewise.
5382 * prepcomp.adb: Likewise.
5383 * prepcomp.ads: Likewise.
5384 * put_scos.adb: Likewise.
5385 * put_scos.ads: Likewise.
5386 * raise-gcc.c: Likewise.
5387 * raise.c: Likewise.
5388 * raise.h: Likewise.
5389 * repinfo-input.adb: Likewise.
5390 * repinfo-input.ads: Likewise.
5391 * repinfo.adb: Likewise.
5392 * repinfo.ads: Likewise.
5393 * repinfo.h: Likewise.
5394 * restrict.adb: Likewise.
5395 * restrict.ads: Likewise.
5396 * rident.ads: Likewise.
5397 * rtfinal.c: Likewise.
5398 * rtinit.c: Likewise.
5399 * rtsfind.adb: Likewise.
5400 * rtsfind.ads: Likewise.
5401 * runtime.h: Likewise.
5402 * s-oscons-tmplt.c: Likewise.
5403 * sa_messages.adb: Likewise.
5404 * sa_messages.ads: Likewise.
5405 * scans.adb: Likewise.
5406 * scans.ads: Likewise.
5407 * scil_ll.adb: Likewise.
5408 * scil_ll.ads: Likewise.
5409 * scn.adb: Likewise.
5410 * scn.ads: Likewise.
5411 * scng.adb: Likewise.
5412 * scng.ads: Likewise.
5413 * scos.adb: Likewise.
5414 * scos.ads: Likewise.
5415 * scos.h: Likewise.
5416 * sdefault.ads: Likewise.
5417 * seh_init.c: Likewise.
5418 * sem.adb: Likewise.
5419 * sem.ads: Likewise.
5420 * sem_aggr.adb: Likewise.
5421 * sem_aggr.ads: Likewise.
5422 * sem_attr.adb: Likewise.
5423 * sem_attr.ads: Likewise.
5424 * sem_aux.adb: Likewise.
5425 * sem_aux.ads: Likewise.
5426 * sem_case.adb: Likewise.
5427 * sem_case.ads: Likewise.
5428 * sem_cat.adb: Likewise.
5429 * sem_cat.ads: Likewise.
5430 * sem_ch10.adb: Likewise.
5431 * sem_ch10.ads: Likewise.
5432 * sem_ch11.adb: Likewise.
5433 * sem_ch11.ads: Likewise.
5434 * sem_ch12.adb: Likewise.
5435 * sem_ch12.ads: Likewise.
5436 * sem_ch13.adb: Likewise.
5437 * sem_ch13.ads: Likewise.
5438 * sem_ch2.adb: Likewise.
5439 * sem_ch2.ads: Likewise.
5440 * sem_ch3.adb: Likewise.
5441 * sem_ch3.ads: Likewise.
5442 * sem_ch4.adb: Likewise.
5443 * sem_ch4.ads: Likewise.
5444 * sem_ch5.adb: Likewise.
5445 * sem_ch5.ads: Likewise.
5446 * sem_ch6.adb: Likewise.
5447 * sem_ch6.ads: Likewise.
5448 * sem_ch7.adb: Likewise.
5449 * sem_ch7.ads: Likewise.
5450 * sem_ch8.adb: Likewise.
5451 * sem_ch8.ads: Likewise.
5452 * sem_ch9.adb: Likewise.
5453 * sem_ch9.ads: Likewise.
5454 * sem_dim.adb: Likewise.
5455 * sem_dim.ads: Likewise.
5456 * sem_disp.adb: Likewise.
5457 * sem_disp.ads: Likewise.
5458 * sem_dist.adb: Likewise.
5459 * sem_dist.ads: Likewise.
5460 * sem_elab.adb: Likewise.
5461 * sem_elab.ads: Likewise.
5462 * sem_elim.adb: Likewise.
5463 * sem_elim.ads: Likewise.
5464 * sem_eval.adb: Likewise.
5465 * sem_eval.ads: Likewise.
5466 * sem_intr.adb: Likewise.
5467 * sem_intr.ads: Likewise.
5468 * sem_mech.adb: Likewise.
5469 * sem_mech.ads: Likewise.
5470 * sem_prag.adb: Likewise.
5471 * sem_prag.ads: Likewise.
5472 * sem_res.adb: Likewise.
5473 * sem_res.ads: Likewise.
5474 * sem_scil.adb: Likewise.
5475 * sem_scil.ads: Likewise.
5476 * sem_smem.adb: Likewise.
5477 * sem_smem.ads: Likewise.
5478 * sem_type.adb: Likewise.
5479 * sem_type.ads: Likewise.
5480 * sem_util.adb: Likewise.
5481 * sem_util.ads: Likewise.
5482 * sem_warn.adb: Likewise.
5483 * sem_warn.ads: Likewise.
5484 * set_targ.adb: Likewise.
5485 * set_targ.ads: Likewise.
5486 * sfn_scan.adb: Likewise.
5487 * sfn_scan.ads: Likewise.
5488 * sigtramp-armdroid.c: Likewise.
5489 * sigtramp-ios.c: Likewise.
5490 * sigtramp-qnx.c: Likewise.
5491 * sigtramp-vxworks.c: Likewise.
5492 * sigtramp.h: Likewise.
5493 * sinfo-cn.adb: Likewise.
5494 * sinfo-cn.ads: Likewise.
5495 * sinfo.adb: Likewise.
5496 * sinfo.ads: Likewise.
5497 * sinput-c.adb: Likewise.
5498 * sinput-c.ads: Likewise.
5499 * sinput-d.adb: Likewise.
5500 * sinput-d.ads: Likewise.
5501 * sinput-l.adb: Likewise.
5502 * sinput-l.ads: Likewise.
5503 * sinput.adb: Likewise.
5504 * sinput.ads: Likewise.
5505 * snames.adb-tmpl: Likewise.
5506 * snames.ads-tmpl: Likewise.
5507 * socket.c: Likewise.
5508 * spark_xrefs.adb: Likewise.
5509 * spark_xrefs.ads: Likewise.
5510 * sprint.adb: Likewise.
5511 * sprint.ads: Likewise.
5512 * stand.ads: Likewise.
5513 * stringt.adb: Likewise.
5514 * stringt.ads: Likewise.
5515 * stringt.h: Likewise.
5516 * style.adb: Likewise.
5517 * style.ads: Likewise.
5518 * styleg.adb: Likewise.
5519 * styleg.ads: Likewise.
5520 * stylesw.adb: Likewise.
5521 * stylesw.ads: Likewise.
5522 * switch-b.adb: Likewise.
5523 * switch-b.ads: Likewise.
5524 * switch-c.adb: Likewise.
5525 * switch-c.ads: Likewise.
5526 * switch-m.adb: Likewise.
5527 * switch-m.ads: Likewise.
5528 * switch.adb: Likewise.
5529 * switch.ads: Likewise.
5530 * sysdep.c: Likewise.
5531 * table.adb: Likewise.
5532 * table.ads: Likewise.
5533 * targext.c: Likewise.
5534 * targparm.adb: Likewise.
5535 * targparm.ads: Likewise.
5536 * tbuild.adb: Likewise.
5537 * tbuild.ads: Likewise.
5538 * tempdir.adb: Likewise.
5539 * tempdir.ads: Likewise.
5540 * terminals.c: Likewise.
5541 * tracebak.c: Likewise.
5542 * treepr.adb: Likewise.
5543 * treepr.ads: Likewise.
5544 * ttypes.ads: Likewise.
5545 * types.adb: Likewise.
5546 * types.ads: Likewise.
5547 * types.h: Likewise.
5548 * uintp.adb: Likewise.
5549 * uintp.ads: Likewise.
5550 * uintp.h: Likewise.
5551 * uname.adb: Likewise.
5552 * uname.ads: Likewise.
5553 * urealp.adb: Likewise.
5554 * urealp.ads: Likewise.
5555 * urealp.h: Likewise.
5556 * usage.adb: Likewise.
5557 * usage.ads: Likewise.
5558 * validsw.adb: Likewise.
5559 * validsw.ads: Likewise.
5560 * vast.adb: Likewise.
5561 * vast.ads: Likewise.
5562 * warnsw.adb: Likewise.
5563 * warnsw.ads: Likewise.
5564 * widechar.adb: Likewise.
5565 * widechar.ads: Likewise.
5566 * xeinfo.adb: Likewise.
5567 * xnmake.adb: Likewise.
5568 * xoscons.adb: Likewise.
5569 * xr_tabls.adb: Likewise.
5570 * xr_tabls.ads: Likewise.
5571 * xref_lib.adb: Likewise.
5572 * xref_lib.ads: Likewise.
5573 * xsinfo.adb: Likewise.
5574 * xsnamest.adb: Likewise.
5575 * xtreeprs.adb: Likewise.
5576 * xutil.adb: Likewise.
5577 * xutil.ads: Likewise.
5578
5579 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5580
5581 * exp_dist.adb (Build_From_Any_Call): Remove initial value for
5582 Fnam; fix style.
5583 (Build_To_Any_Call): Remove initial value for Fnam.
5584 (Build_TypeCode_Call): Likewise.
5585
5586 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5587
5588 * checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch6.adb,
5589 exp_disp.adb, exp_imgv.adb, exp_util.adb, sem_attr.adb,
5590 sem_ch13.adb, sem_ch8.adb, sem_eval.adb, sem_scil.adb,
5591 sem_util.adb: Replace calls to RTE with Is_RTE.
5592
5593 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5594
5595 * sem_ch4.adb (Try_Object_Operation): Reuse local constant.
5596
5597 2021-05-03 Ed Schonberg <schonberg@adacore.com>
5598
5599 * sem_ch4.adb (Try_Object_Operation): When a prefixed call is
5600 overloaded and illegal, and the All_Errors flag is off, generate
5601 an error message if the re-analysis of some candidate
5602 interpretation fails to produce one.
5603
5604 2021-05-03 Dmitriy Anisimkov <anisimko@adacore.com>
5605
5606 * libgnat/g-casuti.adb: Replace with "pragma No_Body".
5607 * libgnat/g-casuti.ads: Replace with a package renaming.
5608
5609 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5610
5611 * sem_attr.adb (Check_Program_Unit): Fix references to
5612 Concurrent_Kind and Is_Concurrent_Type; avoid repeated calls to
5613 Entity.
5614
5615 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5616
5617 * sem_attr.adb (Check_Program_Unit): Replace tests for Task_Kind
5618 and Protected_Kind with a collective test for Concurrent_Kind;
5619 likewise, replace calls to Is_Task_Type and Is_Protected_Type
5620 with a collective call to Is_Concurrent_Type; simplify into a
5621 single membership test; add missing Entry_Kind alternative.
5622
5623 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5624
5625 * sem_aggr.adb (Resolve_Record_Aggregate): Fix casing in error
5626 message.
5627 * sem_ch3.adb (Add_Internal_Interface_Entities): Fix unbalanced
5628 parens.
5629 * sem_elim.adb (Eliminate_Error_Msg): Add insertion character.
5630
5631 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5632
5633 * freeze.adb (Freeze_Profile): Replace Error_Msg_NE with
5634 Error_Msg_N; change to continuation message.
5635 * sem_cat.adb, sem_ch10.adb, sem_ch12.adb, sem_ch5.adb: Replace
5636 calls to Error_Msg_NE with calls to Error_Msg_N.
5637
5638 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5639
5640 * exp_disp.adb, sem_aggr.adb, sem_cat.adb, sem_ch10.adb,
5641 sem_ch12.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb,
5642 sem_ch6.adb, sem_ch8.adb, sem_ch9.adb, sem_prag.adb,
5643 sem_res.adb: Remove extra leading and trailing space in error
5644 messages.
5645
5646 2021-05-03 Arnaud Charlet <charlet@adacore.com>
5647
5648 * sem_prag.adb (Set_Exported): Do not warn on exporting a type.
5649
5650 2021-05-03 Ed Schonberg <schonberg@adacore.com>
5651
5652 * sem_warn.adb (Check_References): Do not emit warning on a
5653 selected component when enclosing type has no discriminant and
5654 type of component has partial initialization.
5655
5656 2021-05-03 Justin Squirek <squirek@adacore.com>
5657
5658 * contracts.adb (Build_Postconditions_Procedure): Remove
5659 internally generated if statement used to control finalization
5660 actions.
5661 * exp_ch6.adb (Add_Return, Expand_Non_Function_Return,
5662 Expand_Simple_Function_Return): Add if statement around
5663 _postconditions to control finalization.
5664 * exp_ch7.adb (Build_Finalizer): Likewise.
5665 * sem_prag.adb (Find_Related_Declaration_Or_Body): Add case to
5666 handle Context itself being a handled sequence of statements.
5667
5668 2021-05-03 Justin Squirek <squirek@adacore.com>
5669
5670 * sem_util.adb (In_Return_Value): Modified to detect when
5671 implicit dereference is specified on the return type of a
5672 function call within the expression being checked.
5673
5674 2021-05-03 Ed Schonberg <schonberg@adacore.com>
5675
5676 * exp_aggr.adb (Expand_Array_Aggregate): If the parent node of
5677 the aggregate is a subprogram call there is no target in which
5678 to build the aggregate, and it has to be expanded into component
5679 assignments.
5680
5681 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5682
5683 * exp_prag.adb (Expand_Pragma_CUDA_Execute): Refill comments;
5684 remove periods after single-line comments; use procedural
5685 variant of Next_Entity.
5686 * gnat_cuda.adb: Refill comments; remove periods after
5687 single-line comments; replace calls to UI_From_Int with
5688 constants; change iteration bounds so they match the comments.
5689 * sem_prag.adb (Analyze_Pragma): Add checks for malformed pragma
5690 CUDA_Kernel aggregate; simplify processing of pragma CUDA_Global
5691 with Check_Arg_Count; sync comment with code for CUDA_Global.
5692
5693 2021-05-03 Arnaud Charlet <charlet@adacore.com>
5694
5695 * tbuild.adb (Make_Implicit_Loop_Statement): Disable restriction
5696 checking on dead paths.
5697
5698 2021-05-03 Arnaud Charlet <charlet@adacore.com>
5699
5700 * sem_util.adb (Check_Result_And_Post_State): Replace custom
5701 Has_In_Out_Parameter with existing Has_Out_Or_In_Out_Parameter
5702 flag which corresponds exactly to what we need.
5703
5704 2021-05-03 Arnaud Charlet <charlet@adacore.com>
5705
5706 * libgnat/a-ztcoio.adb: Remove unused with clause.
5707
5708 2021-05-03 Piotr Trojanek <trojanek@adacore.com>
5709
5710 * sem_ch13.adb (Build_Predicate_Functions): Fix typo in comment.
5711 (Resolve_Aspect_Expressions): Fix typo in comment; remove
5712 redundant check for no aspects; simplify with Discard_Node.
5713
5714 2021-05-03 Ed Schonberg <schonberg@adacore.com>
5715
5716 * sem_util.adb (Build_Constrained_Itype): Remove prior patch,
5717 issue is better handled in Sem_Ch13.Build_Predicate_Functions.
5718 * sem_ch13.adb (Build_Predicate_Functions): Do not build
5719 predicate function for an Itype with a defined
5720 Predicated_Parent, even if that designated parent does not yet
5721 have a Predicate_Function. This can happen in instance bodies
5722 nested within a generic unit.
5723
5724 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5725
5726 * exp_attr.adb (Expand_N_Attribute_Reference)
5727 <Attribute_Max_Size_In_Storage_Elements>: Apply the checks for
5728 universal integer contexts only in the default case.
5729 * exp_ch4.adb (Get_Size_For_Range): Move to library level.
5730 (Expand_N_Type_Conversion): If the operand has Universal_Integer
5731 type and the conversion requires an overflow check, try to do an
5732 intermediate conversion to a narrower type.
5733
5734 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5735
5736 * sem_ch3.adb (Check_Anonymous_Access_Component): Factor out
5737 core processing of Check_Anonymous_Access_Components.
5738 (Check_Anonymous_Access_Components): Call
5739 Check_Anonymous_Access_Component.
5740 (Process_Discriminants): Call Check_Anonymous_Access_Component.
5741 * freeze.adb (Freeze_Record_Type): Code cleanups and add more tree
5742 checking to handle changes in sem_ch3.adb.
5743 * sem_ch8.adb (Find_Type): Remove special case for access
5744 discriminant in task types, these are now supported.
5745
5746 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5747
5748 * exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow): Remove
5749 entry condition.
5750 (Expand_N_In): Call Minimized_Eliminated_Overflow_Check on the left
5751 operand before doing the special overflow expansion.
5752 (Expand_N_Op_Eq): Likewise.
5753 (Expand_N_Op_Ge): Likewise.
5754 (Expand_N_Op_Gt): Likewise.
5755 (Expand_N_Op_Le): Likewise.
5756 (Expand_N_Op_Lt): Likewise.
5757 (Expand_N_Op_Ne): Likewise.
5758 (Minimized_Eliminated_Overflow_Check): Return False for Minimized
5759 if the size of the type is greater than that of Long_Long_Integer.
5760
5761 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5762
5763 * exp_ch5.adb (Expand_N_If_Statement): Only perform the
5764 simplification on return True/False for internal nodes when
5765 -fpreserve-control-flow is not set.
5766
5767 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5768
5769 * sem_attr.adb (Eval_Attribute) <Attribute_Machine>: Use
5770 Round_Even instead of Round in the call to the Machine routine.
5771
5772 2021-04-29 Bob Duff <duff@adacore.com>
5773
5774 * sem_attr.adb (Analyze_Attribute): Change "$" to "&".
5775 Otherwise, Errout will trip over an uninitialized (invalid)
5776 variable (Error_Msg_Unit_1).
5777
5778 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5779
5780 * libgnat/s-valuer.adb (Scan_Decimal_Digits): Set Extra to zero
5781 when the precision limit is reached by means of trailing zeros
5782 and prevent it from being overwritten later.
5783
5784 2021-04-29 Yannick Moy <moy@adacore.com>
5785
5786 * errout.adb (Output_Messages): Insert SGR strings where needed.
5787 * erroutc.adb (Output_Message_Txt): Insert SGR strings where
5788 needed in the text of the message itself.
5789 (Output_Msg_Text): Allow for style message not to start
5790 with (style).
5791 * erroutc.ads: Add new constants and functions to control colors
5792 in messages output to the terminal. Add variable Use_SGR_Control
5793 that should be set to True for using SGR color control strings.
5794
5795 2021-04-29 Yannick Moy <moy@adacore.com>
5796
5797 * sem_eval.adb (Check_Non_Static_Context_For_Overflow): Apply
5798 compile-time checking for overflows in non-static contexts
5799 including inlined code.
5800 (Eval_Arithmetic_Op): Use the new procedure.
5801 (Eval_Unary_Op, Eval_Op_Expon): Add call to the new procedure.
5802
5803 2021-04-29 Justin Squirek <squirek@adacore.com>
5804
5805 * checks.adb (Apply_Type_Conversion_Checks): Move out constraint
5806 check generation, and add case for general access types with
5807 constraints.
5808 (Make_Discriminant_Constraint_Check): Created to centralize
5809 generation of constraint checks for stored discriminants.
5810
5811 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5812
5813 * gnat1drv.adb (Adjust_Global_Switches): Force a 32-bit Duration
5814 type if the maximum integer size is lower than 64 bits.
5815
5816 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5817
5818 * Makefile.rtl (ADA_EXCLUDE_SRCS): Remove unused files.
5819 (ADA_INCLUDE_SRCS): Remove libgnat/system.ads
5820
5821 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5822
5823 * exp_aggr.adb (Collect_Initialization_Statements): Removed.
5824 (Convert_Aggr_In_Object_Decl, Expand_Array_Aggregate): Fix
5825 creation and insertion of Initialization_Statements. Do not set
5826 Initialization_Statements when a transient scope is involved.
5827 Move processing of Array_Slice here. Ensure that an object with
5828 an Array_Slice call gets its array component initialized. Add
5829 comments.
5830 * exp_ch7.adb: Update comments.
5831 (Store_Actions_In_Scope): Deal properly with an empty list which
5832 might now be generated by Convert_Aggr_In_Object_Decl.
5833 * exp_ch3.adb: Update comments.
5834 (Expand_N_Object_Declaration): Remove processing of Array_Slice.
5835
5836 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5837
5838 * sem_ch8.adb (Analyze_Object_Renaming): Update check for
5839 AI12-0401.
5840
5841 2021-04-29 Patrick Bernardi <bernardi@adacore.com>
5842
5843 * libgnat/s-stoele.ads (Storage_Offset): Cleanup comment.
5844
5845 2021-04-29 Gary Dismukes <dismukes@adacore.com>
5846
5847 * exp_util.adb (Add_Own_DIC): Relax the suppression of adding a
5848 DIC Check pragma that's done for abstract types by still doing
5849 it in the case where GNATprove_Mode is set.
5850
5851 2021-04-29 Joel Brobecker <brobecker@adacore.com>
5852
5853 * Makefile.rtl (ADA_EXCLUDE_SRCS): Remove s-gcc.adb, s-gcc.ads,
5854 s-gccdiv.adb, s-gccdiv.ads, s-gccshi.adb and s-gccshi.ads.
5855
5856 2021-04-29 Piotr Trojanek <trojanek@adacore.com>
5857
5858 * layout.adb (Layout_Type): Refine type of a local variable with
5859 the required size of object from Int to Pos (it is initialized
5860 with 8 and only multiplied by 2); fix unbalanced parens in
5861 comment.
5862
5863 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5864
5865 * eval_fat.adb (Succ): Use Ureal_Half in a couple of places.
5866
5867 2021-04-29 Ed Schonberg <schonberg@adacore.com>
5868
5869 * sem_util.adb (Build_Constrained_Itype): Inhibit the generation
5870 of predicate functions for this Itype, which is created for an
5871 aggregate of a discriminated type. The object to which the
5872 aggregate is assigned, e.g a writable actual parameter, will
5873 apply the predicates if any are inherited from the base type.
5874
5875 2021-04-29 Piotr Trojanek <trojanek@adacore.com>
5876
5877 * sem_cat.adb (Set_Categorization_From_Pragmas): Remove special
5878 case for generic child units; remove optimization for empty list
5879 of pragmas; properly restore visibility.
5880
5881 2021-04-29 Piotr Trojanek <trojanek@adacore.com>
5882
5883 * sem_elab.adb (Process_SPARK_Instantiation): Fix typo in
5884 comment.
5885 * sem_prag.adb (Find_Related_Context): Add missing reference to
5886 No_Caching in the comment; handle pragmas on compilation units.
5887
5888 2021-04-29 Piotr Trojanek <trojanek@adacore.com>
5889
5890 * doc/gnat_rm/implementation_defined_attributes.rst: Change all
5891 occurrences of "permissible prefix" to "allowed prefix", for
5892 consistency.
5893 * gnat_rm.texi: Regenerate.
5894
5895 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5896
5897 * eval_fat.adb (Succ): Add a special case for zero if the type does
5898 not support denormalized numbers. Always use the canonical formula
5899 in other cases and add commentary throughout the function.
5900
5901 2021-04-29 Eric Botcazou <ebotcazou@adacore.com>
5902
5903 * libgnat/s-fatgen.adb: Remove with clause for Interfaces and
5904 use type clauses for Interfaces.Unsigned_{16,32,64}.
5905 (Small16): Remove.
5906 (Small32): Likewise
5907 (Small64): Likewise.
5908 (Small80): Likewise.
5909 (Tiny16): Likewise.
5910 (Tiny32): Likewise.
5911 (Tiny64): Likewise.
5912 (Tiny80): Likewise.
5913 (Siz): Always use 16.
5914 (NR): New constant.
5915 (Rep_Last): Use it in the computation.
5916 (Exp_Factor): Remove special case for 80-bit.
5917 (Sign_Mask): Likewise.
5918 (Finite_Succ): New function implementing the Succ attribute for
5919 finite numbers.
5920 (Pred): Rewrite in terms of Finite_Succ.
5921 (Succ): Likewise.
5922
5923 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5924
5925 * debug_a.adb (Debug_Output_Astring): Remove obsolete comment.
5926
5927 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5928
5929 * sem_attr.adb (Check_Image_Type): Protect against empty
5930 Image_Type.
5931
5932 2021-04-29 Arnaud Charlet <charlet@adacore.com>
5933
5934 * libgnat/a-nbnbin.ads (From_Universal_Image): New.
5935 (Big_Integer): Update definition.
5936 * libgnat/a-nbnbre.ads, libgnat/a-nbnbre.adb
5937 (From_Universal_Image): New.
5938 (From_String): Remove alternate body, replaced by
5939 From_Universal_Image.
5940 (Big_Real): Update definition.
5941
5942 2021-04-29 Gary Dismukes <dismukes@adacore.com>
5943
5944 * sem_ch8.adb (Find_Type): Check the No_Obsolescent_Features
5945 restriction for 'Class applied to an untagged incomplete
5946 type (when Ada_Version >= Ada_2005). Remove disabling of the
5947 warning message for such usage, along with the ??? comment,
5948 which no longer applies (because the -gnatg switch no longer
5949 sets Warn_On_Obsolescent_Feature).
5950
5951 2021-04-29 Yannick Moy <moy@adacore.com>
5952
5953 * errout.adb (Error_Msg_NEL): Extract span from node.
5954 (First_And_Last_Nodes): Use spans for subtype indications and
5955 attribute definition clauses.
5956 (Write_Source_Code_Lines): Fix for tabulation characters. Change
5957 output for large spans to skip intermediate lines.
5958 * sem_case.adb (Check_Choice_Set): Report duplicate choice on
5959 the Original_Node for the case.
5960 (Generic_Check_Choices): Set the Original_Node for the rewritten
5961 case, so that the subtree used in spans has the correct
5962 locations.
5963
5964 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
5965
5966 * sem_ch13.adb, sem_util.adb: Fix style.
5967
5968 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
5969
5970 * nlists.ads (List_Length): Adapt comment to match the
5971 behaviour.
5972
5973 2021-04-28 Arnaud Charlet <charlet@adacore.com>
5974
5975 * sem_eval.adb (Eval_Selected_Component): Only consider compile
5976 time known aggregates.
5977
5978 2021-04-28 Eric Botcazou <ebotcazou@adacore.com>
5979
5980 * libgnat/s-fatgen.adb: Add use clause for Interfaces.Unsigned_16
5981 and Interfaces.Unsigned_32.
5982 (Small16): New constant.
5983 (Small32): Likewise.
5984 (Small64): Likewise.
5985 (Small80): Likewise.
5986 (Pred): Declare a local overlay for Small and return it negated
5987 for zero if the type does not support denormalized numbers.
5988 (Succ): Likewise, but return it directly.
5989
5990 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
5991
5992 * inline.adb (Formal_Is_Used_Once): Refine type of the counter
5993 variable; remove redundant assignment.
5994
5995 2021-04-28 Patrick Bernardi <bernardi@adacore.com>
5996
5997 * libgnarl/s-interr.adb (Install_Restricted_Handlers): Change
5998 Prio parameter to type Interrupt_Priority.
5999 * libgnarl/s-interr.ads (Install_Restricted_Handlers): Likewise.
6000 * libgnarl/s-interr__dummy.adb (Install_Restricted_Handlers):
6001 Likewise.
6002 * libgnarl/s-interr__hwint.adb (Install_Restricted_Handlers):
6003 Likewise.
6004 * libgnarl/s-interr__sigaction.adb (Install_Restricted_Handlers):
6005 Likewise.
6006 * libgnarl/s-interr__vxworks.adb (Install_Restricted_Handlers):
6007 Likewise.
6008
6009 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6010
6011 * sem_type.ads (Write_Interp_Ref): Removed; no longer needed.
6012 * sem_type.adb (Headers): Removed; now the hash table is
6013 directly in the Interp_Map alone.
6014 (Interp_Map): Now an instance of the GNAT.HTable.Simple_HTable.
6015 (Last_Overloaded): New variable to emulate Interp_Map.Last.
6016 (Add_One_Interp): Adapt to new data structure.
6017 (Get_First_Interp): Likewise.
6018 (Hash): Likewise.
6019 (Init_Interp_Tables): Likewise.
6020 (New_Interps): Likewise.
6021 (Save_Interps): Likewise; handle O_N variable like in
6022 Get_First_Interp.
6023 (Write_Interp_Ref): Removed; no longer needed.
6024
6025 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6026
6027 * inline.adb (Do_Reset_Calls): Now an instance of Traverse_Proc.
6028
6029 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6030
6031 * sem_ch13.adb (Analyze_Aspect_Static): Reuse
6032 Error_Msg_Ada_2020_Feature for aspect Static.
6033 (Analyze_One_Aspect): Likewise for aspect Full_Access.
6034
6035 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6036
6037 * sem_ch13.adb (Analyze_Aspect_Static): Refactor to have a
6038 single check for the expression being present; adapt comments.
6039
6040 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6041
6042 * sem_ch13.adb (Analyze_Aspect_Static): Use aspect name in the
6043 error message.
6044
6045 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6046
6047 * sem_eval.adb (Eval_Selected_Component): Simplify with
6048 Unqualify.
6049
6050 2021-04-28 Eric Botcazou <ebotcazou@adacore.com>
6051
6052 * libgnat/s-valrea.adb (Fast2Sum): New function.
6053 (Integer_to_Real): Use it in an iterated addition with exact
6054 error handling for the case where an extra digit is needed.
6055 Move local variable now only used in the exponentiation case.
6056
6057 2021-04-28 Yannick Moy <moy@adacore.com>
6058
6059 * errout.adb: (Error_Msg_Internal): Use span instead of
6060 location.
6061 (Error_Msg, Error_Msg_NEL): Add versions with span parameter.
6062 (Error_Msg_F, Error_Msg_FE, Error_Msg_N, Error_Msg_NE,
6063 Error_Msg_NW): Retrieve span from node.
6064 (First_Node): Use the new First_And_Last_Nodes.
6065 (First_And_Last_Nodes): Expand on previous First_Node. Apply to
6066 other nodes than expressions.
6067 (First_Sloc): Protect against inconsistent locations.
6068 (Last_Node): New function based on First_And_Last_Nodes.
6069 (Last_Sloc): New function similar to First_Sloc.
6070 (Output_Messages): Update output when -gnatdF is used. Use
6071 character ~ for making the span visible, similar to what is done
6072 in GCC and Clang.
6073 * errout.ads (Error_Msg, Error_Msg_NEL): Add versions with span
6074 parameter.
6075 (First_And_Last_Nodes, Last_Node, Last_Sloc): New subprograms.
6076 * erroutc.adb: Adapt to Sptr field being a span.
6077 * erroutc.ads (Error_Msg_Object): Change field Sptr from
6078 location to span.
6079 * errutil.adb: Adapt to Sptr field being a span.
6080 * freeze.adb: Use Errout reporting procedures for nodes to get
6081 spans.
6082 * par-ch3.adb: Likewise.
6083 * par-prag.adb: Likewise.
6084 * par-util.adb: Likewise.
6085 * sem_case.adb: Likewise.
6086 * sem_ch13.adb: Likewise.
6087 * sem_ch3.adb: Likewise.
6088 * sem_prag.adb: Likewise.
6089 * types.ads: (Source_Span): New type for spans.
6090 (To_Span): Basic constructors for spans.
6091
6092 2021-04-28 Arnaud Charlet <charlet@adacore.com>
6093
6094 * einfo.adb (Discriminant_Constraint): Refine assertion.
6095
6096 2021-04-28 Gary Dismukes <dismukes@adacore.com>
6097
6098 * exp_util.adb (Add_Own_DIC): Suppress expansion of a DIC pragma
6099 when the pragma occurs for an abstract type, since that could
6100 lead to a call to an abstract function, and such DIC checks can
6101 never be performed for abstract types in any case.
6102 * sem_disp.adb (Check_Dispatching_Context): Suppress the check
6103 for illegal calls to abstract subprograms when the call occurs
6104 within a Default_Initial_Condition aspect and the call is passed
6105 the current instance as an actual.
6106 (Has_Controlling_Current_Instance_Actual): New function to test
6107 a call to see if it has any actuals given by direct references
6108 to a current instance of a type
6109 * sem_res.adb (Resolve_Actuals): Issue an error for a call
6110 within a DIC aspect to a nonprimitive subprogram with an actual
6111 given by the name of the DIC type's current instance (which will
6112 show up as a reference to the formal parameter of a DIC
6113 procedure).
6114
6115 2021-04-28 Ed Schonberg <schonberg@adacore.com>
6116
6117 * exp_ch3.adb (Expand_Record_Extension): Set Parent_Subtype on
6118 the type extension when within a generic unit, even though
6119 expansion is disabled, to allow for proper resolution of
6120 selected components inherited from an ancestor.
6121
6122 2021-04-28 Arnaud Charlet <charlet@adacore.com>
6123
6124 * sem_aux.adb (Is_Limited_Type): Fix logic to check Is_Type
6125 before assuming Ent is a typo.
6126 * sem_ch4.adb (Analyze_Expression_With_Actions): Update
6127 comments, minor reformatting.
6128 * sem_res.adb (Resolve_Declare_Expression): Add protection
6129 against no type.
6130
6131 2021-04-28 Arnaud Charlet <charlet@adacore.com>
6132
6133 * exp_ch6.adb: Fix typo in comment.
6134 * sem_ch3.adb (Access_Subprogram_Declaration): Add missing call
6135 to Create_Extra_Formals. Remove obsolete bootstrap check.
6136 * sem_eval.adb (Eval_Selected_Component): Simplify a
6137 selected_component on an aggregate.
6138
6139 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6140
6141 * fmap.ads (Reset_Tables): Remove outdated references to
6142 GNSA/ASIS.
6143 * sem_eval.ads (Initialize): Likewise.
6144 * sem_type.adb (Headers): Remove initialization at elaboration.
6145 * sem_type.ads (Init_Interp_Tables): Remove outdated reference
6146 to gnatf.
6147 * stringt.ads (Initialize): Fix style in comment.
6148
6149 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6150
6151 * sem_res.ads: Update reference in comment.
6152 * sem_type.ads: Fix casing in a name of a unit.
6153
6154 2021-04-28 Yannick Moy <moy@adacore.com>
6155
6156 * ghost.adb (Check_Ghost_Context): Add continuation message when
6157 in predicate.
6158
6159 2021-04-28 Eric Botcazou <ebotcazou@adacore.com>
6160
6161 * libgnat/s-valrea.adb (Integer_to_Real): Use a subtype of Num
6162 for the component type of the table of powers of ten.
6163 * libgnat/s-valuer.adb (Round_Extra): Add assertion on Base.
6164
6165 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6166
6167 * sem_ch5.adb (Analyze_Case_Statement): Extend optimization to
6168 all objects; fix typo in comment.
6169
6170 2021-04-28 Piotr Trojanek <trojanek@adacore.com>
6171
6172 * exp_ch9.adb (Build_Barrier_Function): Refine type of a
6173 protected type entity.
6174 (Is_Pure_Barrier): Fix style.
6175
6176 2021-04-28 Bob Duff <duff@adacore.com>
6177
6178 * exp_ch3.adb (Simple_Init_Defaulted_Type): Simplify the code,
6179 and always use OK_Convert_To, rather than Unchecked_Convert_To
6180 and Convert_To.
6181
6182 2021-04-28 Arnaud Charlet <charlet@adacore.com>
6183
6184 * sem_ch3.adb (Analyze_Object_Declaration): Remove dead code.
6185 * ali.ads, ali.adb (Scan_ALI): Remove unused parameters.
6186 Remove unused code related to Xref lines.
6187 (Get_Typeref): Removed, no longer used.
6188
6189 2021-04-28 Arnaud Charlet <charlet@adacore.com>
6190
6191 * exp_attr.adb (Build_Array_VS_Func, Build_Record_VS_Func,
6192 Expand_N_Attribute_Reference): Use Get_Fullest_View instead of
6193 Validated_View.
6194 (Build_Record_VS_Func): Adjust to keep using Validated_View.
6195 (Expand_N_Attribute_Reference) [Valid]: Use
6196 Small_Integer_Type_For to allow for more compile time
6197 evaluations.
6198 * sem_util.adb (Cannot_Raise_Constraint_Error): Add more precise
6199 support for N_Indexed_Component and fix support for
6200 N_Selected_Component which wasn't completely safe.
6201 (List_Cannot_Raise_CE): New.
6202 * libgnat/i-cobol.adb (Valid_Packed): Simplify test to address
6203 new GNAT warning.
6204
6205 2021-04-28 Arnaud Charlet <charlet@adacore.com>
6206
6207 * .gitignore: New.
6208 * doc/share/conf.py: Add Python 3 compatibility.
6209 * doc/share/gnat.sty: Add missing file.
6210
6211 2021-04-28 Richard Wai <richard@annexi-strayline.com>
6212
6213 * libgnat/a-cohase.ads (Cursor): Synchronize comments for the Cursor
6214 type definition to be consistent with identical definitions in other
6215 container packages. Add additional comments regarding the importance of
6216 maintaining the "Position" component for predefined equality.
6217 * libgnat/a-cohama.ads (Cursor): Likewise.
6218 * libgnat/a-cihama.ads (Cursor): Likewise.
6219 * libgnat/a-cohase.adb (Find, Insert): Ensure that Cursor objects
6220 always have their "Position" component set to ensure predefined
6221 equality works as required.
6222 * libgnat/a-cohama.adb (Find, Insert): Likewise.
6223 * libgnat/a-cihama.adb (Find, Insert): Likewise.
6224
6225 2021-04-28 Eric Botcazou <ebotcazou@adacore.com>
6226
6227 * gcc-interface/decl.c (gnat_to_gnu_subprog_type): Do not demote a
6228 const or pure function because of a parameter whose type is pointer
6229 to function.
6230 * gcc-interface/trans.c (Call_to_gnu): Do not put back a conversion
6231 between an actual and a formal that are unconstrained array types.
6232 (gnat_gimplify_expr) <CALL_EXPR>: New case.
6233 * gcc-interface/utils2.c (build_binary_op): Do not use |= operator.
6234 (gnat_stabilize_reference_1): Likewise.
6235 (gnat_rewrite_reference): Likewise.
6236 (build_unary_op): Do not clear existing TREE_CONSTANT on the result.
6237 (gnat_build_constructor): Also accept the address of a constant
6238 CONSTRUCTOR as constant element.
6239
6240 2021-04-28 Eric Botcazou <ebotcazou@adacore.com>
6241
6242 * gcc-interface/trans.c (is_array_of_scalar_type): New predicate.
6243 (find_decls_r): New function.
6244 (return_slot_opt_for_pure_call_p): New predicate.
6245 (Call_to_gnu): Do not create a temporary for the return value if the
6246 parent node is an aggregate. If there is a target, try to apply the
6247 return slot optimization to regular calls to pure functions returning
6248 an array of scalar type.
6249
6250 2021-04-28 Eric Botcazou <ebotcazou@adacore.com>
6251
6252 * gcc-interface/trans.c (language_function): Add comment.
6253 (loop_info_d): Add fndecl and invariants fields.
6254 (find_loop_for): Test fndecl instead of the context of var.
6255 (find_loop): New function.
6256 (Regular_Loop_to_gnu): Fold back into...
6257 (Loop_Statement_to_gnu): ...this. Emit invariants on entry, if any.
6258 (gnat_to_gnu) <N_Selected_Component>: Record nonconstant invariant
6259 offset computations in loops when optimization is enabled.
6260 * gcc-interface/utils2.c (gnat_invariant_expr): Handle BIT_AND_EXPR.
6261
6262 2021-04-20 Martin Liska <mliska@suse.cz>
6263
6264 * gnatvsn.ads: Bump Library_Version to 12.
6265
6266 2021-04-13 Eric Botcazou <ebotcazou@adacore.com>
6267
6268 * gcc-interface/misc.c (gnat_init): Set default range bits to 0.
6269 * gcc-interface/trans.c (extract_encoding): Delete.
6270 (decode_name): Likewise.
6271 (File_Name_to_gnu): New function.
6272 (gigi): Call it to translate file names. Replace assertion on
6273 1-1 mapping between files and line maps with conditional error.
6274
6275 2021-04-11 Gerald Pfeifer <gerald@pfeifer.com>
6276
6277 * gnat_ugn.texi (Top): Avoid invalid "up" link.
6278
6279 2021-03-29 Eric Botcazou <ebotcazou@adacore.com>
6280
6281 PR ada/99802
6282 * freeze.adb (Is_Full_Access_Aggregate): Call Is_Full_Access_Object
6283 on the name of an N_Assignment_Statement to spot full access.
6284
6285 2021-03-10 Eric Botcazou <ebotcazou@adacore.com>
6286
6287 * gcc-interface/decl.c (gnat_to_gnu_entity): Build a TYPE_STUB_DECL
6288 for the main variant of an enumeration type declared as volatile.
6289
6290 2021-03-09 Mikael Pettersson <mikpelinux@gmail.com>
6291
6292 * raise-gcc.c: On Cygwin include mingw32.h to prevent
6293 windows.h from including x86intrin.h or emmintrin.h.
6294
6295 2021-03-05 Eric Botcazou <ebotcazou@adacore.com>
6296
6297 PR ada/99264
6298 * init.c (__gnat_alternate_sta) [Linux]: Remove preprocessor test on
6299 MINSIGSTKSZ and bump size to 32KB.
6300 * libgnarl/s-osinte__linux.ads (Alternate_Stack_Size): Bump to 32KB.
6301
6302 2021-03-02 Mikael Pettersson <mikpelinux@gmail.com>
6303
6304 PR bootstrap/98590
6305 * cstreams.c: Ensure fileno_unlocked() is visible on Cygwin.
6306
6307 2021-03-02 Eric Botcazou <ebotcazou@adacore.com>
6308
6309 PR ada/99095
6310 * sem_ch8.adb (Check_Constrained_Object): Restrict again the special
6311 optimization for limited types to non-array types except in the case
6312 of an extended return statement.
6313
6314 2021-03-02 Eric Botcazou <ebotcazou@adacore.com>
6315
6316 PR ada/99020
6317 * sem_ch3.adb (Build_Discriminated_Subtype): Set the Cloned_Subtype
6318 only if the type is not private.
6319
6320 2021-02-26 YunQiang Su <yunqiang.su@cipunited.com>
6321
6322 PR ada/98996
6323 * Makefile.rtl: <mips*-*-linux*>
6324 add 128Bit operation file for MIPS N64 and N32 to
6325 LIBGNAT_TARGET_PAIRS and EXTRA_GNATRTL_NONTASKING_OBJS
6326
6327 2021-02-12 Arnaud Charlet <charlet@adacore.com>
6328
6329 * repinfo.ads, repinfo.adb (*SO_Ref*): Restore.
6330
6331 2021-02-03 Eric Botcazou <ebotcazou@adacore.com>
6332
6333 * gcc-interface/decl.c (components_to_record): If the first component
6334 with rep clause is the _Parent field with variable size, temporarily
6335 set it aside when computing the internal layout of the REP part again.
6336 * gcc-interface/utils.c (finish_record_type): Revert to taking the
6337 maximum when merging sizes for all record types with rep clause.
6338 (merge_sizes): Put SPECIAL parameter last and adjust recursive calls.
6339
6340 2021-02-03 Eric Botcazou <ebotcazou@adacore.com>
6341
6342 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Make the
6343 two fields of the fat pointer type addressable, and do not make the
6344 template type read-only.
6345 <E_Record_Type>: If the type has discriminants mark it as may_alias.
6346 * gcc-interface/utils.c (make_dummy_type): Likewise.
6347 (build_dummy_unc_pointer_types): Likewise.
6348
6349 2021-01-26 Marius Hillenbrand <mhillen@linux.ibm.com>
6350
6351 PR ada/98228
6352 * gcc-interface/utils.c (maybe_pad_type): Test the size of the new
6353 packable type instead of its alignment for addressability's sake.
6354
6355 2021-01-25 Eric Botcazou <ebotcazou@adacore.com>
6356
6357 * gcc-interface/trans.c (make_covariant_thunk): Set the DECL_CONTEXT
6358 of the parameters and do not set TREE_PUBLIC on the thunk.
6359 (maybe_make_gnu_thunk): Pass the alias to the covariant thunk.
6360 * gcc-interface/utils.c (finish_subprog_decl): Set the DECL_CONTEXT
6361 of the parameters here...
6362 (begin_subprog_body): ...instead of here.
6363
6364 2021-01-19 Eric Botcazou <ebotcazou@adacore.com>
6365
6366 PR ada/98740
6367 * gcc-interface/trans.c (add_decl_expr): Always mark TYPE_ADA_SIZE.
6368
6369 2021-01-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
6370
6371 PR ada/98595
6372 * Makefile.rtl (LIBGNAT_TARGET_PAIRS) <riscv*-*-rtems*>: Use
6373 wraplf version of Aux_Long_Long_Float.
6374
6375 2021-01-03 Eric Botcazou <ebotcazou@adacore.com>
6376
6377 * gnatvsn.ads: Bump copyright year.
6378
6379 2021-01-01 Jakub Jelinek <jakub@redhat.com>
6380
6381 * gnat_ugn.texi: Bump @copying's copyright year.
6382 * gnat_rm.texi: Likewise.
6383
6384 2021-01-01 Jakub Jelinek <jakub@redhat.com>
6385
6386 * ChangeLog-2020: Rotate ChangeLog. New file.
6387
6388 \f
6389 Copyright (C) 2021 Free Software Foundation, Inc.
6390
6391 Copying and distribution of this file, with or without modification,
6392 are permitted in any medium without royalty provided the copyright
6393 notice and this notice are preserved.