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