Daily bump.
[official-gcc.git] / gcc / ada / ChangeLog
bloba02459bb400e94582a1be03597756be288a92691
1 2020-06-11  Eric Botcazou  <ebotcazou@adacore.com>
3         * sem_res.adb (Resolve_Implicit_Dereference): In an instance,
4         reset the type of the prefix if it is private before building
5         the dereference.
7 2020-06-11  Eric Botcazou  <ebotcazou@adacore.com>
9         * exp_util.adb (Safe_Unchecked_Type_Conversion): Add missing
10         Is_Type guard before calling Has_Discriminants on Etype.
12 2020-06-11  Bob Duff  <duff@adacore.com>
14         * libgnat/a-nbnbin__gmp.adb: There's no Optional_Big_Integer
15         anymore.  Invalid_Big_Integer is not used.
16         Greatest_Common_Divisor returns Big_Positive.
18 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
20         * sem_aggr.adb (Get_Value): Refine type of the Compon parameter.
22 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
24         * sem_aggr.adb (Resolve_Record_Aggregate): Refine type of
25         Others_Box.
27 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
29         * checks.adb, exp_ch7.adb, exp_ch9.adb, exp_smem.adb, lib.adb,
30         nlists.adb, sem.adb, sem_aggr.adb, sem_ch3.adb, sem_ch6.adb,
31         sem_ch8.adb, sem_dim.adb, sem_res.adb, sem_util.adb,
32         sem_warn.adb: Replace uses of Next function with procedure.
34 2020-06-11  Eric Botcazou  <ebotcazou@adacore.com>
36         * exp_pakd.ads: Add paragraph about scalar storage order.
37         * exp_pakd.adb (Install_PAT): Do not set the scalar storage
38         order of the PAT here but...
39         (Set_PB_Type): ...here instead and...
40         (Create_Packed_Array_Impl_Type): ...here as well.
41         * rtsfind.ads (RE_Id): Add RE_Rev_Packed_Bytes{1,2,4}.
42         (RE_Unit_Table): Likewise.
43         * libgnat/s-unstyp.ads (Rev_Packed_Bytes1): New derived type.
44         (Rev_Packed_Bytes2): Likewise.
45         (Rev_Packed_Bytes4): Likewise.
47 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
49         * sem_ch4.adb, sem_ch6.adb, sem_res.adb, sem_util.ads: Fix
50         references to SPARK RM 7.1.3 rule numbers.
52 2020-06-11  Ed Schonberg  <schonberg@adacore.com>
54         * sem_warn.adb (Warn_On_Overlapping_Actuals): Simplify code,
55         remove inner predicate Is_Covered_Formal, preserve warning for
56         two overlapping composite types when only one is writable, and
57         for two overlapping and writable elementary types.
59 2020-06-11  Steve Baird  <baird@adacore.com>
61         * contracts.adb (Add_Contract_Item): Support specifying
62         volatility refinement aspects for types.
63         (Analyze_Contracts): Add call to Analyze_Type_Contract in the
64         case of a contract for a type.
65         (Freeze_Contracts): Add call to Analyze_Type_Contract in the
66         case of a contract for a type.
67         (Check_Type_Or_Object_External_Properties): A new procedure
68         which performs the work that needs to be done for both object
69         declarations and types.
70         (Analyze_Object_Contract): Add a call to
71         Check_Type_Or_Object_External_Properties and remove the code in
72         this procedure which did much of the work that is now performed
73         by that call.
74         (Analyze_Type_Contract): Implement this new routine as nothing
75         more than a call to Check_Type_Or_Object_External_Properties.
76         * contracts.ads: Update comment for Add_Contract_To_Item because
77         types can have contracts.  Follow (questionable) precedent and
78         declare new routine Analyze_Type_Contract as visible (following
79         example of Analyze_Object_Contract), despite the fact that it is
80         never called from outside of the package where it is declared.
81         * einfo.adb (Contract, Set_Contract): Id argument can be a type;
82         support this case.
83         (Write_Field34_Name): Field name is "contract" for a type.
84         * einfo.ads: Update comment describing Contract attribute.
85         * sem_ch3.adb (Build_Derived_Numeric_Type): Is_Volatile should
86         return same answer for all subtypes of a given type. Thus, when
87         building the base type for something like type Volatile_1_To_10
88         is range 1 .. 10 with Volatile; that basetype should be marked
89         as being volatile.
90         (Access_Type_Declaration): Add SPARK-specific legality check
91         that the designated type of an access type shall be compatible
92         with respect to volatility with the access type.
93         * sem_ch12.adb (Check_Shared_Variable_Control_Aspects): Add
94         SPARK-specific legality check that an actual type parameter in
95         an instantiation shall be compatible with respect to volatility
96         with the corresponding formal type.
97         * sem_ch13.adb (Analyze_Aspect_Specifications): Perform checks
98         for aspect specs for the 4 volatility refinement aspects that
99         were already being performed for all language-defined aspects.
100         * sem_prag.adb (Analyze_External_Property_In_Decl_Part,
101         Analyze_Pragma): External properties (other than No_Caching) may
102         be specified for a type, including a generic formal type.
103         * sem_util.ads: Declare new subprograms - Async_Readers_Enabled,
104         Async_Writers_Enabled, Effective_Reads, Effective_Writes, and
105         Check_Volatility_Compatibility.
106         * sem_util.adb (Async_Readers_Enabled, Async_Writers_Enabled,
107         Effective_Reads, Effective_Writes): Initial implementation of
108         new functions for querying aspect values.
109         (Check_Volatility_Compatibility): New procedure intended for use
110         in checking all SPARK legality rules of the form "<> shall be
111         compatible with respect to volatility with <>".
112         (Has_Enabled_Property): Update comment because Item_Id can be a
113         type.  Change name of nested Variable_Has_Enabled_Property
114         function to Type_Or_Variable_Has_Enabled_Property; add a
115         parameter to that function because recursion may be needed,
116         e.g., in the case of a derived typ).  Cope with the case where
117         the argument to Has_Enabled_Property is a type.
119 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
121         * sem_aggr.adb (Add_Association): Add assertion about the formal
122         parameters.
123         (Propagate_Discriminants): Always add an explicit component
124         association, so that an "others => <>" association is never
125         needed.
127 2020-06-11  Bob Duff  <duff@adacore.com>
129         * exp_put_image.adb (Build_Elementary_Put_Image_Call): If the
130         underlying type is real, call Put_Image_Unknown.
131         (Build_Unknown_Put_Image_Call): Pass the type name to
132         Put_Image_Unknown.
133         * libgnat/s-putima.ads, libgnat/s-putima.adb
134         (Put_Image_Unknown): Add Type_Name parameter.  Remove
135         overly-detailed documentation of what it does; better to leave
136         it open.
138 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
140         * sem_ch3.adb (Build_Constrained_Array_Type,
141         Build_Constrained_Discriminated_Type): Skip unnecessary loop
142         iterations.
144 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
146         * sem_aggr.adb (Build_Constrained_Itype): Move to Sem_Util.
147         * sem_ch3.adb (Build_Subtype, Inherit_Predicate_Flags): Move...
148         * sem_util.adb (Build_Subtype): Here.  Add parameters for
149         references to objects previously declared in enclosing scopes.
150         (Inherit_Predicate_Flags): And here, because it is called by
151         Build_Subtype.
152         * sem_util.ads (Build_Overriding_Spec): Reorder alphabetically.
153         (Build_Subtype): Moved from Sem_Ch3; comments updated.
154         (Build_Constrained_Itype): Moved from Sem_Aggr; comments
155         updated.
157 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
159         * sem_aggr.adb (Case_Table_Type): Change index type from Nat to
160         Pos.
162 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
164         * sem_aggr.adb (Build_Constrained_Itype): Previously a declare
165         block, now a separate procedure; the only change is that now
166         New_Assoc_List might include components and an others clause,
167         which we ignore (while we deal with discriminants exactly as we
168         did before); extend a ??? comment about how this routine is
169         different from the Build_Subtype
170         (Resolve_Record_Aggregate): Create a constrained itype not just
171         for the outermost record aggregate, but for its inner record
172         aggregates as well.
174 2020-06-11  Eric Botcazou  <ebotcazou@adacore.com>
176         * checks.adb (Build_Discriminant_Checks): Build an explicit
177         dereference when the type is an access type.
178         * exp_atag.adb (Build_CW_Membership): Add explicit dereferences.
179         (Build_Get_Access_Level): Likewise.
180         (Build_Get_Alignment): Likewise.
181         (Build_Inherit_Prims): Likewise.
182         (Build_Get_Transportable): Likewise.
183         (Build_Set_Size_Function): Likewise.
184         * exp_ch3.adb (Build_Offset_To_Top_Function): Likewise.
185         * exp_ch4.adb (Expand_Allocator_Expression): Likewise.
186         (Expand_N_Indexed_Component ): Remove code dealing with implicit
187         dereferences.
188         (Expand_N_Selected_Component): Likewise.
189         (Expand_N_Slice): Likewise.
190         * exp_ch9.adb (Add_Formal_Renamings): Add explicit dereference.
191         (Expand_Accept_Declarations): Likewise.
192         (Build_Simple_Entry_Call): Remove code dealing with implicit
193         dereferences.
194         (Expand_N_Requeue_Statement): Likewise.
195         * exp_disp.adb (Expand_Dispatching_Call): Build an explicit
196         dereference when the controlling type is an access type.
197         * exp_spark.adb (Expand_SPARK_N_Selected_Component): Delete.
198         (Expand_SPARK_N_Slice_Or_Indexed_Component): Likewise.
199         (Expand_SPARK): Do not call them.
200         * sem_ch4.adb (Process_Implicit_Dereference_Prefix): Delete.
201         (Process_Indexed_Component): Call Implicitly_Designated_Type
202         to get the designated type for an implicit dereference.
203         (Analyze_Overloaded_Selected_Component): Do not insert an
204         explicit dereference here.
205         (Analyze_Selected_Component): Likewise.
206         (Analyze_Slice): Call Implicitly_Designated_Type to get the
207         designated type for an implicit dereference.
208         * sem_ch8.adb (Has_Components): New predicate extracted from...
209         (Is_Appropriate_For_Record): ...this.  Delete.
210         (Is_Appropriate_For_Entry_Prefix): Likewise.
211         (Analyze_Renamed_Entry): Deal with implicit dereferences.
212         (Find_Selected_Component): Do not insert an explicit dereference
213         here.  Call Implicitly_Designated_Type to get the designated type
214         for an implicit dereference.  Call Has_Components, Is_Task_Type
215         and Is_Protected_Type directly.  Adjust test for error.
216         * sem_res.adb (Resolve_Implicit_Dereference): New procedure.
217         (Resolve_Call): Call Resolve_Indexed_Component last.
218         (Resolve_Entry): Call Resolve_Implicit_Dereference on the prefix.
219         (Resolve_Indexed_Component): Call Implicitly_Designated_Type to
220         get the designated type for an implicit dereference and
221         Resolve_Implicit_Dereference on the prefix at the end.
222         (Resolve_Selected_Component): Likewise.
223         (Resolve_Slice): Likewise.  Do not apply access checks here.
224         * sem_util.ads (Implicitly_Designated_Type): Declare.
225         * sem_util.adb (Copy_And_Maybe_Dereference): Simplify.
226         (Implicitly_Designated_Type): New function.
227         (Object_Access_Level): Fix typo.
228         * sem_warn.adb (Check_Unset_Reference): Test Comes_From_Source
229         on the original node.
231 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
233         * exp_disp.adb: Minor reformatting.
234         * exp_aggr.adb (Is_Static_Dispatch_Table_Aggregate): Recognize
235         aggregates of the Ada.Tags.Object_Specific_Data type as static.
236         * sem_aggr.adb (Check_Static_Discriminated_Subtype): Deconstruct
237         and do not call it from Build_Constrained_Itype.
239 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
241         * exp_disp.adb (Make_Secondary_DT): Internally generated OSD
242         tables are now constant.
244 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
246         * exp_aggr.adb (Backend_Processing_Possible): Remove useless
247         call.
249 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
251         * opt.ads (Building_Static_Dispatch_Tables): Fix punctuation in
252         comment.
254 2020-06-11  Arnaud Charlet  <charlet@adacore.com>
256         * libgnat/s-stposu.ads (Root_Storage_Pool_With_Subpools,
257         Root_Subpool): Mark with Preelaborable_Initialization.
259 2020-06-11  Javier Miranda  <miranda@adacore.com>
261         * exp_ch9.adb (Expand_N_Conditional_Entry_Call): Replace call to
262         New_Copy_List by calls to the new routine
263         New_Copy_Separate_List.
264         * sem_util.ads (New_Copy_Separate_List, New_Copy_Separate_Tree):
265         New routines.
266         * sem_util.adb (New_Copy_Separate_List, New_Copy_Separate_Tree):
267         New routines.
268         (New_Copy_Tree): Extend the machinery that detects syntactic
269         nodes to handle lists of indentifiers with field More_Ids;
270         otherwise such nodes are erroneously handled as semantic nodes.
271         Copy aspect specifications attached to nodes.
272         * sem_ch12.adb (Copy_Generic_Node): Protect reading attribute
273         Etype.
275 2020-06-11  Bob Duff  <duff@adacore.com>
277         * sem_ch13.adb (Analyze_Aspect_Specifications): Do not set the
278         Has_Predicates flag when the Predicate_Failure aspect is seen.
279         It is legal (but pointless) to use this aspect without a
280         predicate.  If we set the flag, we generate a half-baked
281         Predicate procedure, and if that procedure is nested, it causes
282         unnesting to crash.
284 2020-06-11  Bob Duff  <duff@adacore.com>
286         * exp_put_image.adb (Build_Record_Put_Image_Procedure): Remove
287         special processing of protected types, because those are handled
288         by Build_Protected_Put_Image_Call.
289         (Enable_Put_Image): Use the switch -gnatd_z to control enabling
290         of Put_Image. Disable Put_Image for types in Remote_Types
291         packages.
292         * debug.adb: Document -gnatd_z switch.
293         * exp_imgv.adb, libgnat/a-stteou.ads, opt.ads: Minor cleanups.
295 2020-06-11  Piotr Trojanek  <trojanek@adacore.com>
297         * sem_warn.adb (Warn_On_Overlapping_Actuals): Add label to the
298         outer loop and use it in the exit statement.
300 2020-06-11  Ghjuvan Lacambre  <lacambre@adacore.com>
302         * exp_ch3.adb (Build_Assignment): Generate predicate check if
303         subtype mark has predicate.
305 2020-06-11  Justin Squirek  <squirek@adacore.com>
307         * sem_util.adb (Expand_N_Attribute_Reference): Use original
308         nodes where required to avoid looking at the expanded tree.
310 2020-06-11  Arnaud Charlet  <charlet@adacore.com>
312         * libgnat/a-catizo.ads, libgnat/a-nbnbin.ads,
313         libgnat/a-nbnbre.ads, libgnat/a-nubinu.ads,
314         libgnat/s-aoinar.ads, libgnat/s-aomoar.ads,
315         libgnat/s-aotase.ads, libgnat/s-stopoo.ads: Remove aspects that
316         we will not implement.
318 2020-06-11  Arnaud Charlet  <charlet@adacore.com>
320         * libgnat/s-aoinar.adb (Atomic_Fetch_And_Add,
321         Atomic_Fetch_And_Subtract): Add fallback using
322         compare-and-exchange, in case the integer type does not map to a
323         machine type.
325 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
327         * libgnat/s-aomoar.ads, libgnat/s-aomoar.adb: New files.
328         * libgnat/s-atopar.ads: Move...
329         * libgnat/s-aoinar.ads: Here.
330         * libgnat/s-atopar.adb: Move...
331         * libgnat/s-aoinar.adb: Here.
332         * impunit.adb: Update list of runtime files.
333         * Makefile.rtl (GNATRTL_NONTASKING_OBJS=): Adjust.
335 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
337         * snames.ads-tmpl (Name_Characters_Assertion_Check,
338         Name_Containers_Assertion_Check,
339         Name_Interfaces_Assertion_Check, Name_IO_Assertion_Check,
340         Name_Numerics_Assertion_Check, Name_Strings_Assertion_Check,
341         Name_System_Assertion_Check): New constants.
342         * types.ads (Characters_Assertion_Check,
343         Containers_Assertion_Check, Interfaces_Assertion_Check,
344         IO_Assertion_Check, Numerics_Assertion_Check,
345         Strings_Assertion_Check, System_Assertion_Check): New constants.
346         (All_Checks): Update accordingly.
348 2020-06-10  Ghjuvan Lacambre  <lacambre@adacore.com>
350         * exp_ch3.adb (Build_Equivalent_Record_Aggregate): Return Empty
351         if Etype of record component has predicates.
353 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
355         * exp_ch3.adb (Build_Init_Statements): Implement the notion of
356         "require late initialization".
358 2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
360         * sem_util.adb (Copy_And_Maybe_Dereference): Temporarily copy
361         the parent node of the original tree when dereferencing.
363 2020-06-10  Ed Schonberg  <schonberg@adacore.com>
365         * sem_warn.adb (Warn_On_Overlapping_Actuals): Add a warning when
366         two actuals in a call overlap, both are composite types that may
367         be passed by reference, and only one of them is writable.
369 2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
371         * exp_ch4.adb (Expand_N_In): Use an expression with actions to
372         insert the PE raise statement for the Unchecked_Union case.
374 2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
376         * sem_ch4.adb (Analyze_Call): Use idiomatic condition.
377         * sem_res.adb (Resolve_Call): Remove obsolete code.
379 2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
381         * sem_util.adb (Copy_And_Maybe_Dereference): New function.
382         (Build_Access_Record_Constraint): Use it to copy the prefix.
383         (Build_Actual_Array_Constraint): Likewise.
384         (Build_Actual_Record_Constraint): Likewise.
386 2020-06-10  Bob Duff  <duff@adacore.com>
388         * sem_prag.adb (Invariant): Remove the pragma removing code.  It
389         doesn't work to remove the pragma, because various flags are set
390         during Build_Invariant_Procedure_Declaration and
391         Build_Invariant_Procedure_Body that need to be set to avoid the
392         spurious warnings.
393         * exp_util.adb (Make_Invariant_Call): Avoid calling the
394         invariant-checking procedure if the body is empty. This is an
395         optimization.
397 2020-06-10  Vasiliy Fofanov  <fofanov@adacore.com>
399         * doc/gnat_ugn/gnat_utility_programs.rst: Fix gnatmetric
400         switches description.
402 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
404         * repinfo-input.ads, repinfo-input.adb, repinfo.adb,
405         repinfo.ads: Update header.
407 2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
409         * exp_aggr.adb (In_Place_Assign_OK): Do not necessarily return
410         false for a type with discriminants.
411         (Convert_To_Assignments): Use Parent_Node and Parent_Kind more
412         consistently.  In the in-place assignment case, first apply a
413         discriminant check if need be, and be prepared for a rewritten
414         aggregate as a result.
416 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
418         * atree.adb, contracts.adb, debug.adb, freeze.adb,
419         repinfo-input.adb, repinfo.adb, sem_attr.adb, sem_ch10.adb,
420         sem_ch13.adb, sem_ch3.adb, sem_ch5.adb, sem_ch6.adb,
421         sem_ch8.adb, sem_ch9.adb, sem_disp.adb, sem_eval.adb,
422         sem_prag.adb: Remove more references to ASIS.
424 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
426         * libgnat/s-secsta.adb (Round_Up): Fix typo in exception
427         message.
429 2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
431         * par-ch4.adb (P_Membership_Test): Fix typo in a grammar rule.
433 2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
435         * exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Remove
436         expansion of First and Last attributes.
438 2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
440         * exp_attr.adb (Expand_N_Attribute_Reference): Remove folding
441         for Enum_Rep attribute.
442         * exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Remove
443         duplicated code for folding Enum_Rep attribute.
444         * sem_attr.adb (Eval_Attribute): Relax condition for folding
445         Enum_Rep attribute; previously dead code is now executed when
446         the attribute prefix is an enumeration literal; refine type in
447         processing of Enum_Val.
449 2020-06-10  Javier Miranda  <miranda@adacore.com>
451         * sem_ch3.adb (Analyze_Declarations): Adjust the machinery that
452         takes care of late body overriding of initialize, adjust,
453         finalize.  Remove ASIS mode code.
455 2020-06-10  Ed Schonberg  <schonberg@adacore.com>
457         * einfo.ads (Access_Subprogram_Wrapper): New attribute of
458         Subprogram_Type entities. Denotes subprogram constructed for
459         Access_To_Subprogram types that include pre- and postconditions.
460         * einfo.adb: Subprogram bodies for Access_Subprogram_Wrapper.
461         * exp_ch6.adb (Expand_Call): An indirect call through an
462         Access_To_subprogram that includes contracts is rewritten as a
463         call to the corresponding Access_ ubprogram_Wrapper. Handle
464         derived types that inherit contract from parent.
465         * sem_prag.adb (Build_Access_Subprogram_Wrapper): Build
466         subprogram declaration for subprogram that incorporates the
467         contracts of an Access_To_Subprogram type declaration. Build
468         corresponding body and attach it to freeze actions for type.
469         * sem_util.ads, sem_util.adb (Is_Access_Subprogram_Wrapper):
470         Utility that uses signature of the subprogram to determine
471         whether it is a generated wrapper for an Access_To_Subprogram
472         type.
474 2020-06-10  Ghjuvan Lacambre  <lacambre@adacore.com>
476         * par-ch6.adb (P_Subprogram): Make sure the specification
477         belongs to a procedure.
479 2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
481         * sem_ch13.adb (All_Membership_Choices_Static): Assert an AST
482         property documented in sinfo.ads and simplify an excessive
483         condition.
485 2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
487         * exp_attr.adb (Expand_N_Attribute_Reference): Fix a copy-paste
488         mistake in comment.
489         * sem_res.adb (Flag_Effectively_Volatile_Objects): Fix a type in
490         the SPARK RM rule number.
491         * exp_ch4.adb, sem_util.adb: Fix style in single line comments.
493 2020-06-10  Piotr Trojanek  <trojanek@adacore.com>
495         * sem_aux.ads, sem_aux.adb (Get_Low_Bound): Remove.
497 2020-06-10  Arnaud Charlet  <charlet@adacore.com>
499         * scn.adb (Determine_License): Remove.
501 2020-06-10  Justin Squirek  <squirek@adacore.com>
503         * exp_ch3.adb (Expand_N_Object_Declaration): Add condition to
504         handle processing of objects initialized by a call to a function
505         return an anonymous access type.
506         * exp_ch6.adb, exp_ch6.ads
507         (Has_Unconstrained_Access_Discriminants): Moved to sem_util.adb
508         (Needs_Result_Accessibility_Level): Moved to sem_util.adb
509         * sem_util.adb, sem_util.ads
510         (Has_Unconstrained_Access_Discriminants): Moved from exp_ch6.adb
511         (Needs_Result_Accessibility_Level): Moved from exp_ch6.adb
512         * sem_res.adb (Valid_Conversion): Add condition for the special
513         case where the operand of a conversion is the result of an
514         anonymous access type
516 2020-06-10  Ghjuvan Lacambre  <lacambre@adacore.com>
518         * par-ch6.adb (P_Subprogram): Reject duplicate subprogram
519         declarations.
521 2020-06-10  Eric Botcazou  <ebotcazou@adacore.com>
523         * exp_ch6.adb (Insert_Post_Call_Actions): Deal with the context
524         of an if-expression and with a call written in prefixed notation.
526 2020-06-10  Gary Dismukes  <dismukes@adacore.com>
528         * einfo.ads: Minor reformatting of a comment.
529         * exp_aggr.adb: Minor reformatting and a grammar correction.
530         * exp_attr.adb: Minor reformatting and a typo fix in some
531         comments.
532         * sem_ch12.adb: Fix three typos in comments.
534 2020-06-09  Javier Miranda  <miranda@adacore.com>
536         * sem_ch6.adb (New_Overloaded_Entity): Add missing call to check
537         subtype conformance of overriding dispatching primitive.
538         * sem_eval.adb (Subtypes_Statically_Match): Handle derivations
539         of private subtypes.
540         * libgnat/g-exptty.adb, libgnat/g-exptty.ads
541         (Set_Up_Communications): Fix the profile since null-exclusion is
542         missing in the access type formals.
543         * sem_disp.ads (Check_Operation_From_Private_View): Adding
544         documentation.
546 2020-06-09  Eric Botcazou  <ebotcazou@adacore.com>
548         * einfo.ads (XEINFO section): Update format description.
549         (Is_Subprogram_Or_Entry): Move pragma to regular section.
550         (Is_Subprogram_Or_Generic_Subprogram): Likewise.
551         * xeinfo.adb (Get_B4): Rename to...
552         (Get_B0): ...this.
553         (Translate_Expr): New procedure extracted from...
554         (XEinfo): ...here.  Try to apply Get_B0 first and then
555         call Translate_Expr to translate supported constructs.
557 2020-06-09  Eric Botcazou  <ebotcazou@adacore.com>
559         * exp_ch6.adb (Freeze_Subprogram): Deal with convention C_Family.
560         * freeze.adb (Freeze_Profile): Likewise.  Add missing guard.
561         * sem_mech.adb (Set_Mechanisms): Likewise.
562         * lib-xref.adb (Output_Import_Export_Info): Ditto for C_Variadic.
563         * repinfo.adb (List_Subprogram_Info): Likewise.
564         * sem_prag.adb (Set_Convention_From_Pragma): Move main checks for
565         Stdcall to...
566         (Process_Convention): ...here.  Add checks for C_Variadic.
567         * snames.ads-tmpl: Add Name_C_Variadic_0 .. Name_C_Variadic_16.
568         Use consistent format for subtype declarations.
569         (Convention_Id): Add Convention_C_Variadic_0 .. C_Variadic_16
570         and move Convention_CPP up.
571         (Convention_C_Family): New subtype of Convention_Id.
572         (Convention_C_Variadic): Likewise.
573         (Foreign_Convention): Use explicit upper bound.
574         Add pragma Inline for Is_Configuration_Pragma_Name,
575         Is_Function_Attribute_Name, Is_Internal_Attribute_Name
576         and Is_Procedure_Attribute_Name.
577         * snames.adb-tmpl (Get_Convention_Id): Deal with Name_Variadic_n.
578         (Get_Convention_Name): Deal with Convention_Variadic_n.
579         * types.h (Convention_Id): New typedef.
580         * xsnamest.adb (Name2): New variable.
581         (Is_Conv): New pattern.
582         (Get_Subt1): Likewise.
583         (Get_Subt2): Likewise.
584         Output subtypes of Convention_Id into the C header file.
586 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
588         * exp_ch3.adb, exp_ch4.adb, exp_ch6.adb, exp_ch9.adb,
589         exp_disp.adb, exp_util.adb: Add comments related to errors that
590         should be moved to semantic analysis. Also replace "?" with "??"
591         in warning messages.
593 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
595         * libgnat/a-strunb__shared.ads, libgnat/a-strunb__shared.adb
596         (Reference, Unreference): No-op for Empty_Shared_String.
597         Remove unneeded calls to Reference.
599 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
601         * exp_ch5.adb (Expand_N_Assignment): Remove kludge for
602         AI05-0087.
603         * sem_ch12.adb (Validate_Derived_Type_Instance): Implement
604         AI05-0087 retroactively since it's a binding interpretation.
606 2020-06-09  Eric Botcazou  <ebotcazou@adacore.com>
608         * einfo.ads (Has_Foreign_Convention): Fix description.
609         (Component_Alignment): Move around.
610         (Has_DIC): Likewise.
611         (Has_Interrupt_Handler): Likewise.
612         (Has_Invariants): Likewise.
613         (Is_Atomic_Or_VFA): Likewise.
614         (Next_Index): Likewise.
615         (Scope_Depth): Likewise.
616         (Init_Component_Size): Likewise.
617         (Init_Component_Location): Likewise.
618         (Init_Size): Likewise.
619         (Inline Pragmas for functions): Add Corresponding_Function,
620         Corresponding_Procedure, Entry_Max_Queue_Lengths_Array,
621         Finalize_Storage_Only, Has_DIC, Has_Invariants,
622         Initialization_Statements, Is_Anonymous_Access_Type,
623         Next_Stored_Discriminant, Address_Clause, Alignment_Clause,
624         Float_Rep, Has_Foreign_Convention, Has_Non_Limited_View,
625         Is_Constant_Object, Is_Discriminal, Is_Finalizer, Is_Null_State,
626         Is_Prival, Is_Protected_Component, Is_Protected_Record_Type,
627         Is_Subprogram_Or_Entry, Is_Task_Record_Type, Size_Clause,
628         Stream_Size_Clause, Type_High_Bound, Type_Low_Bound, Known_*,
629         Unknown_*.
630         (Inline Pragmas for procedures): Add Set_Corresponding_Function,
631         Set_Corresponding_Procedure, Set_Finalize_Storage_Only,
632         Set_Float_Rep, Set_Initialization_Statements,
633         Init_Normalized_First_Bit, Init_Normalized_Position,
634         Init_Normalized_Position_Max.
635         * einfo.adb (Was_Hidden): Move around.
636         (Is_Packed_Array): Likewise.
637         (Model_Emin_Value): Likewise.
638         (Model_Epsilon_Value): Likewise.
639         (Model_Mantissa_Value): Likewise.
640         (Model_Small_Value): Likewise.
642 2020-06-09  Ed Schonberg  <schonberg@adacore.com>
644         * sem_ch12.adb (Check_Shared_Variable_Control_Aspects): Require
645         exact match between formal and actual for aspects Atomic and
646         Volatile only for formal derived types.
648 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
650         * exp_util.adb (Side_Effect_Free): Improve handling of
651         N_Aggregate.
653 2020-06-09  Ghjuvan Lacambre  <lacambre@adacore.com>
655         * sem_res.adb (Resolve_Qualified_Expression): Use Subtype_Mark
656         type.
658 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
660         * exp_aggr.adb (Max_Aggregate_Size): New function to factorize
661         code.
662         (Convert_To_Positional, Aggr_Size_OK): Use Max_Aggregate_Size.
664 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
666         * sem_util.ads, sem_util.adb (Set_Debug_Info_Defining_Id): New.
667         * exp_ch3.adb, exp_ch8.adb: Call Set_Debug_Info_Defining_Id when
668         relevant.
670 2020-06-09  Justin Squirek  <squirek@adacore.com>
672         * einfo.ads (Returns_By_Ref): Modify documentation to reflect
673         that Returns_By_Ref can be applied to E_Subprogram_Type
674         entities.
676 2020-06-09  Justin Squirek  <squirek@adacore.com>
678         * exp_attr.adb (Expand_N_Attribute_Reference): Modify expansion
679         of 'Overlaps_Storage to take into account zero sized arrays.
681 2020-06-09  Bob Duff  <duff@adacore.com>
683         * bindo-graphs.adb, bindo-graphs.ads: For each invocation graph,
684         record the corresponding library graph.
685         * bindo-writers.adb (Write_Invocation_Graph_Vertex): Print the
686         lib item name. Remove library graph parameters.
687         * bindo-augmentors.adb, bindo-augmentors.ads,
688         bindo-builders.adb, bindo-diagnostics.adb,
689         bindo-diagnostics.ads, bindo-elaborators.adb: Remove library
690         graph parameters.
692 2020-06-09  Eric Botcazou  <ebotcazou@adacore.com>
694         * checks.adb (Apply_Predicate_Check): Extend trick used for
695         aggregates to qualified aggregates and object declarations
696         * einfo.ads (Has_Own_DIC): Mention the underlying full view.
697         (Has_Own_Invariants): Likewise.
698         (Has_Predicates): Likewise.
699         * exp_util.adb (Build_DIC_Procedure_Declaration): Do not deal
700         with base types explicitly but with underlying full views.
701         (Build_Invariant_Procedure_Declaration): Likewise.
702         * sem_ch13.adb (Build_Predicate_Functions): Do not deal with
703         the full view manually but call Propagate_Predicate_Attributes
704         to propagate attributes to views.
705         (Build_Predicate_Function_Declaration): Likewise.
706         * sem_ch3.adb (Build_Assertion_Bodies_For_Type): Build bodies
707         for private full views with an underlying full view.
708         (Build_Derived_Private_Type): Small comment tweak.
709         (Complete_Private_Subtype): Call Propagate_Predicate_Attributes.
710         (Process_Full_View): Do not deal with base types explicitly for
711         DIC and Invariant attributes.  Deal with underlying full views
712         for them.  Call Propagate_Predicate_Attributes and deal with
713         underlying full views for them.
714         * sem_ch7.adb (Preserve_Full_Attributes): Do not cross propagate
715         DIC and Invariant attributes between full type and its base type.
716         Propagate Predicate attributes from the full to the private view.
717         * sem_ch9.adb (Analyze_Protected_Type_Declaration): Likewise.
718         (Analyze_Task_Type_Declaration): Likewise.
719         * sem_util.ads (Get_Views): Remove Full_Base parameter and add
720         UFull_Typ parameter.
721         (Propagate_Predicate_Attributes): New procedure.
722         * sem_util.adb (Get_Views): Remove Full_Base parameter and add
723         UFull_Typ parameter.  Retrieve the Corresponding_Record_Type
724         from the underlying full view, if any.
725         (Propagate_DIC_Attributes): Remove useless tests.
726         (Propagate_Invariant_Attributes): Likewise.
727         (Propagate_Predicate_Attributes): New procedure.
729 2020-06-09  Justin Squirek  <squirek@adacore.com>
731         * exp_ch5.adb (Expand_Predicated_Loop): Perserve the original
732         loop identifier within the expansion.
734 2020-06-09  Bob Duff  <duff@adacore.com>
736         * bindo-graphs.ads (Library_Graph_Edge_Kind): Reorder enumerals
737         to reflect the order of adding edges. Clarify comments.
738         * bindo-graphs.adb (Add_Edge_Kind_Check): Correct the
739         assertions.  Reorder the "when"s to match the order of adding
740         edges, and therefore the order of enumerals in type
741         Library_Graph_Edge_Kind.  Change names to "Old_" and "New_" to
742         clarify what's what.  Combine Invocation_Edge into the "<="
743         test.  Fix the "raise Program_Error" message, which was
744         backwards.
746 2020-06-09  Bob Duff  <duff@adacore.com>
748         * bindo-graphs.adb (Add_Edge_Kind_Check): Add the Image of the
749         old and new Kinds to the raise Program_Error message.
751 2020-06-09  Eric Botcazou  <ebotcazou@adacore.com>
753         * sem_ch3.adb (Is_Visible_Component): Do not special-case
754         bodies of instances.
756 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
758         * exp_ch4.adb (Expand_N_In): Fix handling of null exclusion.
760 2020-06-09  Ed Schonberg  <schonberg@adacore.com>
762         * sem_ch12.adb (Check_Shared_Variable_Control_Aspects): Require
763         exact match between formal and actual for aspects Atomic,
764         Atomic_Component, Volatile, and Volatile_Components.
766 2020-06-09  Bob Duff  <duff@adacore.com>
768         * doc/gnat_ugn/gnat_utility_programs.rst: Add documentation for
769         the --no-separate-return switch of gnatpp.
771 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
773         * sem_warn.adb (Warn_On_Constant_Valid_Condition): Add proper
774         warning tag.
776 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
778         * sem_type.adb (Covers): Fix implementation of AI05-0149.
779         * sem_res.adb: Fix typo.
781 2020-06-09  Ed Schonberg  <schonberg@adacore.com>
783         * exp_ch9.adb (Build_Master_Renaming): Make name in renaming
784         declaration unique by adding a numeric suffix, to prevent
785         accidental name conflict when several instantiations of a
786         package containing an access_to_incomplete type that designate
787         tasks appear in the same scope.
789 2020-06-09  Piotr Trojanek  <trojanek@adacore.com>
791         * libgnarl/a-synbar.ads, libgnarl/a-synbar.adb,
792         libgnarl/a-synbar__posix.ads, libgnarl/a-synbar__posix.adb
793         (Ada.Synchronous_Barriers): Annotate with SPARK_Mode => Off.
795 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
797         * sem_eval.adb (Eval_Relational_Op, Eval_String_Literal,
798         Eval_Type_Conversion): Relax rules on relational operators and
799         type conversions of static string types.
801 2020-06-09  Arnaud Charlet  <charlet@adacore.com>
803         * sem_util.ads, sem_util.adb (Is_Partially_Initialized_Type):
804         Take Default_Value and Default_Component_Value into account.
805         * sem_ch3.adb (Analyze_Object_Declaration): Update comment.
807 2020-06-09  Bob Duff  <duff@adacore.com>
809         * bindo-graphs.adb (Add_Edge_Kind_Check): Disable failing part
810         of the assertion.
812 2020-06-08  Steve Baird  <baird@adacore.com>
814         * sem_prag.adb (Analyze_Pragma.Set_Ravenscar_Profile): Add
815         appropriate call to Set_Restriction_No_Dependence if Ada_Version
816         >= Ada2012 and Profile is either Ravenscar or a GNAT-defined
817         Ravenscar variant (i.e., not Jorvik).
819 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
821         * sem_ch5.adb: Fix typo.
822         * sem_ch8.adb (Analyze_Renamed_Primitive_Operation): Check that
823         the prefix of a prefixed view must be renamable as an object.
825 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
827         * sem_cat.ads: Fix typo.
828         * sem_cat.adb (Validate_Remote_Access_To_Class_Wide_Type): Add
829         handling of N_Attribute_Definition_Clause.
830         * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Call
831         Validate_Remote_Access_To_Class_Wide_Type for Storage_Size and
832         Storage_Pool.
833         * sem_attr.adb, exp_ch4.adb: Update comments.
835 2020-06-08  Justin Squirek  <squirek@adacore.com>
837         * sem_ch4.adb (Analyze_One_Call): Add extra condition to the
838         predicate for deciding when a given controlled call is visible.
840 2020-06-08  Piotr Trojanek  <trojanek@adacore.com>
842         * exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Port
843         changes in frontend expander.
845 2020-06-08  Piotr Trojanek  <trojanek@adacore.com>
847         * sem_ch13.adb (All_Membership_Choices_Static): Fix style.
849 2020-06-08  Steve Baird  <baird@adacore.com>
851         * libgnat/s-rident.ads: Add Jorvik to the Profile_Name
852         enumeration type.  Add an element for Jorvik to the array
853         aggregate that is the initial value of the constant
854         Profile_Info.
855         * targparm.adb (Get_Target_Parameters): Handle "pragma Profile
856         (Jorvik);" similarly to "pragma Profile (Ravenscar);".
857         * snames.ads-tmpl: Declare Name_Jorvik Name_Id. Unlike
858         Ravenscar, Jorvik is not a pragma name and has no corresponding
859         element in the Pragma_Id enumeration type; this means that its
860         declaration must not occur between those of First_Pragma_Name
861         and Last_Pragma_Name.
862         * sem_prag.adb (Analyze_Pragma): Add call to
863         Set_Ravenscar_Profile for Jorvik, similar to the existing calls
864         for Ravenscar and the GNAT Ravenscar variants.
866 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
868         * sem_ch8.adb (Analyze_Object_Renaming): Update Get_Object_Name
869         to go through N_Qualified_Expression and N_Type_Conversion.  Fix
870         another case of wrong usage of E_Anonymous_Access_Type instead
871         of Anonymous_Access_Kind.
872         * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): Work
873         on the original node.
874         (Is_Aliased_View): Take into account N_Qualified_Expression.
876 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
878         * sem_eval.adb (Eval_Type_Conversion): Fix handling of
879         enumeration to integer conversions.
880         * exp_attr.adb (Expand_N_Attribute_Reference
881         [Attribute_Enum_Rep]): Remove special casing for first-level
882         renaming, best left to the general folding mechanism via
883         Eval_Type_Conversion.
885 2020-06-08  Eric Botcazou  <ebotcazou@adacore.com>
887         * atree.adb (New_Copy): Do not clear Has_Dynamic_Range_Check.
888         * checks.ads (Append_Range_Checks): Remove Flag_Node parameter.
889         (Insert_Range_Checks): Likewise and remove default value of
890         Static_Loc parameter.
891         * checks.adb (Append_Range_Checks): Remove Flag_Node parameter.
892         Do not test and set Has_Dynamic_Range_Check.
893         (Insert_Range_Checks): Likewise and remove default value of
894         Static_Loc parameter.
895         * csinfo.adb (CSinfo): Remove 'L' from [NEUB]_Fields pattern and
896         do not handle Has_Dynamic_Range_Check.
897         * exp_ch5.adb (Expand_N_Assignment_Statement): Remove argument
898         in call to Insert_Range_Checks.
899         * sem_ch3.adb (Analyze_Subtype_Declaration): Do not fiddle
900         with Has_Dynamic_Range_Check.
901         (Process_Range_Expr_In_Decl): Remove argument in calls to
902         Insert_Range_Checks and Append_Range_Checks.
903         * sinfo.ads (Has_Dynamic_Range_Check): Delete.
904         (Set_Has_Dynamic_Range_Check): Likewise.
905         * sinfo.adb (Has_Dynamic_Range_Check): Delete.
906         (Set_Has_Dynamic_Range_Check): Likewise.
907         * treepr.adb (Print_Node): Do not print Has_Dynamic_Range_Check.
909 2020-06-08  Steve Baird  <baird@adacore.com>
911         * sem_ch13.ads: Export new function
912         All_Membership_Choices_Static.
913         * sem_ch13.adb: Implement new function
914         All_Membership_Choices_Static.  This involves moving the
915         functions Is_Static_Choice and All_Membership_Choices_Static,
916         which were previously declared within the function
917         Is_Predicate_Static, out to library level so that they can be
918         called by the new function. The already-exisiting code in
919         Is_Predicate_Static which became the body of
920         All_Membership_Choices_Static is replaced with a call to the new
921         function in order to avoid duplication.
922         * exp_ch9.adb (Is_Pure_Barrier): Several changes needed to
923         implement rules of AI12-0290 and RM D.7's definition of
924         "pure-barrier-eligible". These changes include adding a call to
925         the new function Sem_13.All_Membership_Choices_Static, as per
926         the "see 4.9" in RM D.7(1.6/5).
928 2020-06-08  Richard Kenner  <kenner@adacore.com>
930         * exp_unst.adb (Visit_Node): When visiting array attribute
931         nodes, in addition to checking the type of Get_Referenced_Object
932         of the prefix, also check the actual type of the prefix.
934 2020-06-08  Gary Dismukes  <dismukes@adacore.com>
936         * checks.adb (Apply_Predicate_Check): Refine test for being in a
937         subprogram body to account for no Corresponding_Body case,
938         avoiding blowups arising due to other changes here.
939         * exp_ch4.adb (Expand_N_Qualified_Expression): Apply predicate
940         checks, if any, after constraint checks are applied.
941         * sem_eval.ads (Check_Expression_Against_Static_Predicate): Add
942         Check_Failure_Is_Error formal for conditionalizing warning vs.
943         error messages.
944         * sem_eval.adb (Check_Expression_Against_Static_Predicate):
945         Issue an error message rather than a warning when the new
946         Check_Failure_Is_Error formal is True. In the nonstatic or
947         Dynamic_Predicate case where the predicate is known to fail,
948         emit the check to ensure that folded cases get checks applied.
949         * sem_res.adb (Resolve_Qualified_Expression): Call
950         Check_Expression_Against_Static_Predicate, passing True for
951         Check_Failure_Is_Error, to ensure we reject static predicate
952         violations. Remove code that was conditionally calling
953         Apply_Predicate_Check, which is no longer needed, and that check
954         procedure shouldn't be called from a resolution routine in any
955         case. Also remove associated comment about preventing infinite
956         recursion and consistency with Resolve_Type_Conversion, since
957         that handling was already similarly removed from
958         Resolve_Type_Convesion at some point.
959         (Resolve_Type_Conversion): Add passing of True for
960         Check_Failure_Is_Error parameter on call to
961         Check_Expression_Against_Static_Predicate, to ensure that static
962         conversion cases that violate a predicate are rejected as
963         errors.
965 2020-06-08  Piotr Trojanek  <trojanek@adacore.com>
967         * snames.ads-tmpl (Name_SPARK): Restore after being deleted.
969 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
971         * exp_aggr.adb, exp_ch6.adb, par-ch11.adb, par-ch6.adb,
972         par-ch7.adb, par-prag.adb, restrict.adb, restrict.ads,
973         scans.ads, scng.adb, sem_aggr.adb, sem_attr.adb, sem_ch11.adb,
974         sem_ch12.adb, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
975         sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_ch9.adb,
976         sem_res.adb, sem_util.adb, sem_util.ads, snames.ads-tmpl,
977         gnatbind.adb, libgnat/s-rident.ads,
978         doc/gnat_rm/standard_and_implementation_defined_restrictions.rst:
979         Remove processing of SPARK_05 restriction.
980         * gnat_rm.texi: Regenerate.
981         * opt.ads: Remove processing of old checksum which is now
982         handled by gprbuild directly.
984 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
986         * sem_ch12.adb (Instantiate_Object): Relax rules related to null
987         exclusions and generic objects. Handle all anonymous types
988         consistently and not just E_Anonymous_Access_Type.
989         * sem_ch8.adb (Analyze_Object_Renaming): Change wording so that
990         it applies to both renamings and instantiations to avoid
991         confusion.
993 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
995         * libgnat/a-textio.ads (File_Mode): Fix typo in comment.
997 2020-06-08  Eric Botcazou  <ebotcazou@adacore.com>
999         * sem_res.adb (Resolve_Indexed_Component): Do not give a warning
1000         for a nonatomic component of an atomic array which is subject to
1001         an address clause in Ada 2020 mode.
1002         (Resolve_Selected_Component): Likewise for an atomic record.
1004 2020-06-08  Philippe Gil  <gil@adacore.com>
1006         * doc/gnat_ugn/the_gnat_compilation_model.rst: in "Handling
1007         Files with Multiple Units" part documents gnatname use for
1008         unmodified files handling and gnatchop use for files
1009         refactoring.
1010         * gnat_ugn.texi: Regenerate.
1012 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
1014         * doc/gnat_rm/implementation_defined_attributes.rst:
1015         Enum_Rep/Enum_Val are standard Ada 202x attributes.
1016         * gnat_rm.texi: Regenerate.
1018 2020-06-08  Javier Miranda  <miranda@adacore.com>
1020         * exp_aggr.adb (Safe_Component): Remove code that considers as
1021         unsafe components that are aggregates; such removal allows the
1022         frontend to proceed and evaluate if they are safe by means of
1023         invoking Safe_Aggregate.
1025 2020-06-08  Piotr Trojanek  <trojanek@adacore.com>
1027         * exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Apply
1028         standard expansion to attributes First and Last.
1030 2020-06-08  Piotr Trojanek  <trojanek@adacore.com>
1032         * exp_attr.adb, exp_util.ads, exp_util.adb (Get_Index_Subtype):
1033         Move from the body of Exp_Attr to Exp_Util and expose from the
1034         spec.
1035         * exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Replace
1036         duplicated code with a call to Get_Index_Subtype.
1038 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
1040         * sem_ch8.adb (Analyze_Object_Renaming): Simplify code by moving
1041         many special cases to Is_Object_Reference and removing others by
1042         only checking renamings coming from sources.
1043         * sem_util.adb (Is_Object_Reference): Update for AI12-0226 and
1044         add more regular handling of 'Priority. Remove special cases no
1045         longer needed now that we are only checking renamings coming
1046         from sources.
1048 2020-06-08  Claire Dross  <dross@adacore.com>
1050         * libgnat/a-cofove.adb (Insert_Space): The computation of Index
1051         generates a spurious compiler warning about a value not being in
1052         range for a statically dead branch.  Silence it using pragma
1053         Warnings.
1055 2020-06-08  Bob Duff  <duff@adacore.com>
1057         * bindo-graphs.adb (function Add_Edge): Rename
1058         Add_Edge_With_Return to Add_Edge; we can tell it returns because
1059         it's a function, and overloading seems appropriate in this case.
1060         If Activates_Task=True, and we're not going to add a new edge
1061         because an existing Pred-->Succ edge already exists, then set
1062         Activates_Task to True on the preexisting edge.  This ensures
1063         that the message:
1064         info: use pragma Restrictions (No_Entry_Calls_In_Elaboration_Code)
1065         appears when appropriate, no matter in what order the edges
1066         happened to be processed.
1067         (procedure Add_Edge): Remove redundant assertions.
1068         (Activates_Task): Other kinds of edges can have
1069         Activates_Task=True.  For example, if we had a With_Edge and
1070         then an Invocation_Edge with Activates_Task=True, then the
1071         With_Edge has Activates_Task set to True.
1072         (Add_Edge_Kind_Check): New procedure to prevent other bugs of
1073         this nature. For example, if we were to sometimes call Add_Edge
1074         for a Spec_Before_Body_Edge followed by Add_Edge for a
1075         With_Edge, and sometimes in the other order, that would cause a
1076         similar bug to what we're fixing here.
1077         (Set_Is_Recorded_Edge): Val parameter is not used. Get rid of
1078         it.
1079         (Set_Activates_Task): New procedure to set the Activates_Task flag.
1080         * bindo-graphs.ads (Library_Graph_Edge_Kind): Reorder the
1081         enumeration literals to facilitate Add_Edge_Kind_Check.
1082         * ali.adb (Known_ALI_Lines): The comment about "still available"
1083         was wrong. Fix that by erasing the comment, and encoding the
1084         relevant information in real code. Take advantage of Ada's full
1085         coverage rules by removing "others =>".  Also DRY.
1087 2020-06-08  Ed Schonberg  <schonberg@adacore.com>
1089         * par-ch12.adb (P_Formal_Derived_Type_Definition): Handle
1090         properly formal derived types that include aspect
1091         specifications, so that the "with" keyword appears twice in the
1092         formal type declaration.
1093         * sem_ch13.adb (Has_Generic_Parent): Return true if the type
1094         itself is a generic formal.
1096 2020-06-08  Dmitriy Anisimkov  <anisimko@adacore.com>
1098         * socket.c (__gnat_minus_500ms): Remove
1099         IsWindowsVersionOrGreater from condition.
1101 2020-06-08  Claire Dross  <dross@adacore.com>
1103         * libgnat/a-cfdlli.ads, libgnat/a-cfhama.ads,
1104         libgnat/a-cfhase.ads, libgnat/a-cforma.ads, libgnat/a-cforse.ads
1105         (Delete): Add Depends contract.
1107 2020-06-08  Arnaud Charlet  <charlet@adacore.com>
1109         * snames.ads-tmpl (Name_Program_Error_Check,
1110         Name_Tasking_Check): New constants.
1111         * types.ads (Program_Error_Check, Tasking_Check): New constants.
1112         (All_Checks): Update accordingly.
1114 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1116         * sem_prag.adb (Validate_Compile_Time_Warning_Or_Error): Use ??.
1118 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1120         * cstand.adb (Create_Standard): Update comments.
1122 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1124         * scng.adb (Scan): Fix typo to take into account all future
1125         versions of Ada.
1126         * sem_attr.ads (Attribute_Impl_Def): Add Attribute_Reduce for
1127         now.
1128         * sem_attr.adb (Analyze_Attribute): Only allow 'Reduce under
1129         -gnatX.
1130         * snames.ads-tmpl (Name_Reduce): Update comment.
1132 2020-06-05  Thomas Quinot  <quinot@adacore.com>
1134         * exp_disp.adb (Expand_Interface_Thunk): Add comment about
1135         gnatcov reliance on specific name used for thunks.
1137 2020-06-05  Ed Schonberg  <schonberg@adacore.com>
1139         * sem_ch3.adb (Analyze_Subtype_Declaration): For scalar types,
1140         and for subtype declarations without a constraint, subtype
1141         inherits Atomic flag from base type.
1143 2020-06-05  Piotr Trojanek  <trojanek@adacore.com>
1145         * doc/gnat_rm/implementation_defined_attributes.rst (Enum_Rep):
1146         Remove extra colon.
1147         * gnat_rm.texi: Regenerate.
1149 2020-06-05  Eric Botcazou  <ebotcazou@adacore.com>
1151         * atree.adb (New_Copy): Clear Has_Dynamic_Range_Check on
1152         subexpression nodes.
1153         * checks.adb (Append_Range_Checks): Assert that the node
1154         doesn't have the Has_Dynamic_Range_Check flag set.
1155         (Insert_Range_Checks): Likewise.
1156         * exp_ch3.adb (Expand_N_Subtype_Indication): Do not apply
1157         range checks for a full type or object declaration.
1158         * sem_ch3.ads: Move with and use clauses for Nlists to...
1159         (Process_Range_Expr_In_Decl): Change default to No_List for
1160         the Check_List parameter.
1161         * sem_ch3.adb: ...here.
1162         (Process_Range_Expr_In_Decl): Likewise.  When the insertion
1163         node is a declaration, only insert on the list if is present
1164         when the declaration involves discriminants, and only insert
1165         on the node when there is no list otherwise.
1167 2020-06-05  Piotr Trojanek  <trojanek@adacore.com>
1169         * sem_aggr.adb (Resolve_Record_Aggregate): Create the
1170         N_Aggregate node with its Expressions field set to No_List and
1171         not to an empty list.
1173 2020-06-05  Dmitriy Anisimkov  <anisimko@adacore.com>
1175         * libgnat/s-os_lib.adb (Is_Dirsep): Moved from Build_Path to
1176         package level to reuse.
1177         (Normalize_Pathname.Final_Value): Reduce 2 'if' statements to
1178         one.
1179         (Normalize_Pathname.Fill_Directory): New procedure instead of
1180         function Get_Directory. Remove slash to backslash conversion and
1181         drive letter uppercasing on Windows.
1183 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1185         * sem.adb (Assert_Done): Relax check for main unit, as it was
1186         overzealous in the case of the main unit itself.
1188 2020-06-05  Piotr Trojanek  <trojanek@adacore.com>
1190         * exp_ch3.adb, sem_ch8.adb, sem_util.adb: Use Is_Incomplete_Type
1191         to make the code easier to read.
1193 2020-06-05  Piotr Trojanek  <trojanek@adacore.com>
1195         * einfo.adb: Minor reformatting.
1196         * sem_util.adb (Has_Full_Default_Initialization,
1197         Is_Partially_Initialized_Type, Caller_Known_Size_Record,
1198         Large_Max_Size_Mutable): Iterate with
1199         First_Component/Next_Component; rename Ent to Comp.
1201 2020-06-05  Eric Botcazou  <ebotcazou@adacore.com>
1203         * exp_aggr.adb (Aggr_Assignment_OK_For_Backend): Use
1204         Expr_Rep_Value instead of Expr_Value to obtain the equivalent
1205         integer value.
1206         * sem_eval.ads (Expr_Value): Document more supported cases.
1207         * sem_eval.adb (Expr_Rep_Value): Copy missing cases from
1208         Exp_Value.
1210 2020-06-05  Bob Duff  <duff@adacore.com>
1212         * rtsfind.adb, rtsfind.ads: Move subtypes of RTU_Id into package
1213         body, because they are not needed by clients. Change "Child_" to
1214         "Descendant", because grandchildren and great grandchildren are
1215         involved.  Replace all the repetitive comments with a single
1216         concise one.  Change the parent subtypes to be more consistent;
1217         use the most specific parent.
1219 2020-06-05  Piotr Trojanek  <trojanek@adacore.com>
1221         * rtsfind.ads, rtsfind.adb (Is_Text_IO_Special_Package): Moved
1222         from the GNATprove backend to the frontend.
1224 2020-06-05  Yannick Moy  <moy@adacore.com>
1226         * sem_util.ads: Add comment about function only used in
1227         CodePeer.
1229 2020-06-05  Ed Schonberg  <schonberg@adacore.com>
1231         * sem_ch9.adb, (Analyze_Task_Body): After analying the task
1232         body, indicate that all local variables have no delayed aspects.
1233         This prevents improper later calls to
1234         Check_Aspect_At_End_Of_Declarations, that would happen when the
1235         constructed task_procedure body (generated during expansion) is
1236         analyzed. The legality of aspect specifications that may appear
1237         on local declarations has already been established, and it is in
1238         general not possible to recheck them properly during expansion,
1239         when visibility may not be fully established.
1241 2020-06-05  Piotr Trojanek  <trojanek@adacore.com>
1243         * libgnat/a-cofuve.ads (First): Add Global contract.
1245 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1247         * sem_prag.adb (Set_Convention_From_Pragma): Set the convention
1248         of anonymous access array components.
1250 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1252         * libgnat/a-calfor.ads, libgnat/a-catizo.ads,
1253         libgnat/a-catizo.adb (Local_Time_Offset, Local_Image): New.
1254         (UTC_Time_Offset): Now a renaming of Local_Time_Offset.
1256 2020-06-05  Eric Botcazou  <ebotcazou@adacore.com>
1258         * sem_ch3.adb (Available_Full_View): New function returning
1259         either the full or the underlying full view.
1260         (Build_Full_Derivation): Add guard for the full view.
1261         (Copy_And_Build): Retrieve the underlying full view, if any,
1262         also if deriving a completion.
1263         (Build_Derived_Private_Type): Use Available_Full_View throughout
1264         to decide whether a full derivation must be done.
1266 2020-06-05  Bob Duff  <duff@adacore.com>
1268         * exp_attr.adb, exp_ch11.adb, exp_imgv.adb, exp_tss.ads,
1269         par-ch4.adb, sem_attr.adb, sem_util.ads: Misc cleanup.
1271 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1273         * libgnat/a-nudira.ads, libgnat/a-nudira.adb (Random): New
1274         function.
1276 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1278         * sem_attr.ads (Attribute_Impl_Def): Remove Enum_Rep/Val.
1279         * sem_attr.adb (Attribute_20): New, move Enum_Rep/Val here.
1280         (Analyze_Attribute): Take Attribute_20 into account.
1282 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1284         * restrict.ads (Unit_Array): Add a-direct.
1286 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1288         * libgnat/s-stopoo.ads: Mark package Pure and leave room for
1289         Nonblocking once this aspect is supported.
1291 2020-06-05  Eric Botcazou  <ebotcazou@adacore.com>
1293         * exp_attr.adb (Expand_N_Attribute_Reference) <Valid_Scalars>:
1294         Set the No_Truncation flag on the unchecked conversion built for
1295         scalar types.
1297 2020-06-05  Bob Duff  <duff@adacore.com>
1299         * einfo.adb, einfo.ads, exp_util.adb: Remove Invariants_Ignored
1300         flag.
1301         * sem_prag.adb (Invariant): Instead of setting a flag to be
1302         checked elsewhere, remove the pragma as soon as it is analyzed
1303         and checked for legality.
1305 2020-06-05  Eric Botcazou  <ebotcazou@adacore.com>
1307         * checks.ads (Apply_Length_Check): Rename Ck_Node parameter to
1308         Expr.
1309         (Apply_Range_Check): Likewise.
1310         (Get_Range_Checks): Likewise.
1311         * checks.adb (Apply_Float_Conversion_Check): Likewise.
1312         (Apply_Selected_Length_Checks): Likewise.
1313         (Apply_Selected_Range_Checks): Likewise.
1314         (Guard_Access): Likewise.
1315         (Selected_Length_Checks): Likewise.  Also avoid shadowing in
1316         child procedures.
1317         (Selected_Range_Checks): Likewise.
1319 2020-06-05  Arnaud Charlet  <charlet@adacore.com>
1321         * par-ch3.adb, par-ch4.adb, scng.adb, sem_aggr.adb,
1322         sem_ch10.adb, sem_ch12.adb, sem_prag.adb: Update wording: change
1323         Ada_2020 to Ada 2020 in comments and mention -gnat2020 instead
1324         of -gnatX switch.
1326 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1328         * libgnat/i-c.ads (long_long, unsigned_long_long): New
1329         definitions.
1331 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1333         * Makefile.rtl: add a-tasini object
1334         * impunit.adb (Non_Imp_File_Names_95): Add s-tasini.
1335         * libgnarl/a-tasini.ads, libgnarl/a-tasini.adb: New files.
1336         * libgnarl/s-taskin.ads (Global_Initialization_Handler): New.
1337         * libgnarl/s-tassta.adb (Task_Wrapper): Call
1338         Global_Initialization_Handler if non null.
1340 2020-06-04  Ed Schonberg  <schonberg@adacore.com>
1342         * sem_ch12.adb (Build_Suprogram_Body_Wrapper,
1343         Build_Subprogram_Decl_Wrapper): New suprograms, to create the
1344         wrappers needed to implement contracts on formsl subprograms at
1345         the point of instantiation.
1346         (Build_Subprogram_Wrappers): New subprogram within
1347         Analyze_Associations, calls the above when the formal subprogram
1348         has contracts, and expansion is enabled.
1349         (Instantiate_Formal_Subprogram): If the actual is not an entity,
1350         such as a function attribute, or a synchronized operation,
1351         create a function with an internal name and call it within the
1352         wrapper.
1353         (Analyze_Generic_Formal_Part): Analyze contracts at the end of
1354         the list of formal declarations.
1355         * sem_prag.adb (Analyze_Pre_Post_Condtion): In Ada_2020 the
1356         aspect and corresponding pragma can appear on a formal
1357         subprogram declaration.
1358         (Find_Related_Declaration_Or_Body): Ditto.
1360 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1362         * exp_ch7.adb (Make_Final_Call): Set the type of the object, if
1363         it is unanalyzed, before calling Convert_View on it.
1365 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1367         * adabkend.adb, back_end.ads, opt.ads, sem_ch6.adb: Get rid of
1368         Disable_FE_Inline_Always.
1370 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1372         * exp_ch7.adb (Make_Final_Call): Add missing guard.
1373         * sem_ch3.adb (Copy_And_Build): Adjust recursive call for
1374         private types.
1375         (Build_Derived_Private_Type): Deal with underlying full views.
1377 2020-06-04  Bob Duff  <duff@adacore.com>
1379         * libgnat/a-stobbu.adb, libgnat/a-stobbu.ads,
1380         libgnat/a-stobfi.adb, libgnat/a-stobfi.ads,
1381         libgnat/a-stoubu.adb, libgnat/a-stoubu.ads,
1382         libgnat/a-stoufi.adb, libgnat/a-stoufi.ads,
1383         libgnat/a-stoufo.adb, libgnat/a-stoufo.ads,
1384         libgnat/a-stouut.adb, libgnat/a-stouut.ads,
1385         libgnat/a-stteou.ads, libgnat/s-putaim.adb,
1386         libgnat/s-putaim.ads, libgnat/s-putima.adb, libgnat/s-putima.ads
1387         (Ada.Strings.Text_Output and children, System.Put_Images): New
1388         runtime support for Put_Image.
1389         * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Add
1390         exp_put_image.o.
1391         * exp_put_image.adb, exp_put_image.ads: New compiler package
1392         that generates calls to runtime routines that implement
1393         Put_Image.
1394         * Makefile.rtl: Add object files for Ada.Strings.Text_Output and
1395         children and System.Put_Images.
1396         * aspects.adb: Simplify initialization of Canonical_Aspect.
1397         * aspects.ads: Improve documentation. Add Aspect_Put_Image.
1398         * exp_attr.adb: Add support for Put_Image, by calling routines
1399         in Exp_Put_Image.
1400         * sem_util.adb (Is_Predefined_Dispatching_Operation): Return
1401         True for new TSS_Put_Image operation.
1402         * exp_ch3.adb: For tagged types, build a dispatching
1403         TSS_Put_Image operation by calling routines in Exp_Put_Image.
1404         * exp_disp.adb, exp_disp.ads: Make TSS_Put_Image be number 10,
1405         adjusting other operations' numbers after 10. We choose 10
1406         because that's the last number shared by all runtimes.
1407         * exp_strm.adb: Use named notation as appropriate.
1408         * exp_cg.adb, exp_tss.ads: Add TSS_Put_Image.
1409         * libgnat/a-tags.ads: Modify Max_Predef_Prims for the new
1410         TSS_Put_Image.
1411         * impunit.adb: Add new runtime packages.
1412         * rtsfind.adb, rtsfind.ads: Add support for
1413         Ada.Strings.Text_Output, Ada.Strings.Text_Output.Utils, and
1414         System.Put_Images.
1415         * sem_attr.adb: Error checking for Put_Image calls.
1416         * sem_ch12.adb (Valid_Default_Attribute): Support for passing
1417         Put_Image as a generic formal parameter.
1418         * sem_ch13.adb: Analysis of Put_Image aspect. Turn it into a
1419         Put_Image attribute definition clause.
1420         * sem_ch8.adb (Analyze_Subprogram_Renaming): Support for
1421         renaming of the Put_Image attribute.
1422         * snames.adb-tmpl: Fix comments.
1423         * snames.ads-tmpl (Name_Put_Image): New Name_Id.
1424         (Attribute_Put_Image): New Attribute_Id.
1425         * tbuild.adb, tbuild.ads (Make_Increment): New utility.
1427 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1429         * exp_attr.adb (xpand_N_Attribute_Reference) <Input>: Call
1430         Find_Inherited_TSS to look up the Stream_Read TSS.
1431         <Output>: Likewise for the Stream_Write TSS.
1432         * exp_ch7.adb (Make_Final_Call): Call Underlying_Type on
1433         private types to account for underlying full views.
1434         * exp_strm.ads  (Build_Record_Or_Elementary_Input_Function):
1435         Remove Use_Underlying parameter.
1436         * exp_strm.adb (Build_Record_Or_Elementary_Input_Function):
1437         Likewise and adjust accordingly.
1438         * exp_tss.adb (Find_Inherited_TSS): Deal with full views.
1439         Call Find_Inherited_TSS recursively on the parent type if
1440         the base type is a derived type.
1441         * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Take
1442         into account underlying full views for derived types.
1443         * sem_ch3.adb (Copy_And_Build): Look up the underlying full
1444         view only for a completion.  Be prepared for private types.
1445         (Build_Derived_Private_Type): Build an underlying full view
1446         for a completion in the general case too.
1448 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1450         * back_end.adb, opt.ads, par-prag.adb, sem_ch5.adb,
1451         sem_prag.adb, sinfo.adb, sinfo.ads, snames.ads-tmpl,
1452         doc/gnat_rm/implementation_defined_pragmas.rst: Remove
1453         experimental support for OpenACC.
1454         * gcc-interface/misc.c, gcc-interface/trans.c,
1455         gcc-interface/lang.opt: Ditto.
1456         * gnat_rm.texi: Regenerate.
1458 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1460         * checks.adb (Generate_Discriminant_Check): Remove obsolete
1461         comment.
1463 2020-06-04  Gary Dismukes  <dismukes@adacore.com>
1465         * par-ch3.adb (P_Identifier_Declarations): Add parsing of object
1466         renamings that have neither a subtype_mark nor an
1467         access_definition. Issue an error if the version is earlier than
1468         Ada_2020, and suggest using -gnatX.
1469         * sem_ch8.adb (Analyze_Object_Renaming): Handle
1470         object_renaming_declarations that don't have an explicit
1471         subtype. Errors are issued when the name is inappropriate or
1472         ambiguous, and otherwise the Etype of the renaming entity is set
1473         from the Etype of the renamed object.
1474         * sem_util.adb (Has_Null_Exclusion): Allow for the case of no
1475         subtype given in an N_Object_Renaming_Declaration.
1476         * sprint.adb (Sprint_Node_Actual): Handle printing of
1477         N_Object_Renaming_Declarations that are specified without an
1478         explicit subtype.
1480 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1482         * sinfo.ads (N_Delta_Aggregate): Document Etype field.
1483         (N_Case_Expression): Likewise.
1484         (Is_Syntactic_Field) <N_Quantified_Expression>: Adjust.
1485         <N_Case_Expression>: Likewise.
1487 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1489         * adaint.c: Avoid redefining IS_DIR_SEPARATOR macro.
1491 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1493         * sem.adb (Walk_Library_Items): Defer processing of main spec
1494         after all other specs and before processing bodies.
1496 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1498         * bindgen.adb (Gen_Adafinal): Adafinal is convention Ada, not C.
1500 2020-06-04  Ed Schonberg  <schonberg@adacore.com>
1502         * sinput.adb (Sloc_Range): Ignore node in the tree if it appears
1503         in a unit different from that of the node whose Sloc range we
1504         are computing. This is necessary when computing the source range
1505         of a subprogram body whose declaration includes a pre- or
1506         postcondition, because declaration and body may appear in
1507         different units, and the expanded code for the body includes
1508         copies of the contract code.
1510 2020-06-04  Alexandre Oliva  <oliva@adacore.com>
1512         * switch.adb (Is_Internal_GCC_Switch): Recognize dumpdir and
1513         dumpbase-ext.  Mark auxbase and auxbase-strip for removal.
1515 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1517         * sem_attr.adb (Resolve_Attribute) <Access>: Do not generate
1518         the secondary message about a missing pragma if the convention
1519         of the prefix is Intrinsic.
1520         * sem_ch12.adb (Instantiate_Formal_Subprogram): Only set the
1521         Convention and the Is_Inlined flag on a null procedure.
1523 2020-06-04  Justin Squirek  <squirek@adacore.com>
1525         * sem_ch6.adb (Check_Return_Obj_Accessibility): Change to
1526         Check_Return_Construct_Accessibility to better reflect its
1527         purpose.  Add loop to properly obtain the object declaration
1528         from an expanded extended return statement and add calls to get
1529         the original node for associated values. Also, avoid checks when
1530         the return statement being examined comes from an internally
1531         generated function.
1533 2020-06-04  Dmitriy Anisimkov  <anisimko@adacore.com>
1535         * adaint.c (__gnat_is_absolute_path): Check for directory
1536         separator after drive and colon.
1537         (IS_DIR_SEPARATOR): Define new inline substitution.
1539 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1541         * checks.ads: Update documentation about range checks and fix
1542         minor other things.
1544 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1546         * sem_ch3.adb (Array_Type_Declaration): Apply special handling
1547         of private index types to generic packages and restrict it to
1548         index types defined in the current scope.
1550 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1552         * libgnat/a-exextr.adb (Global_Unhandled_Action): New global
1553         variable.
1554         (Notify_Exception): Take into account Global_Unhandled_Action
1555         and fix latent race condition.
1556         (Exception_Action): Mark Favor_Top_Level so that variables can
1557         be atomic.
1558         (Global_Action): Mark atomic to remove the need for a lock.
1559         * libgnat/g-excact.ads, libgnat/g-excact.adb
1560         (Register_Global_Unhandled_Action): New procedure.
1561         (Register_Global_Action): Remove lock.
1562         * libgnat/s-stalib.ads (Raise_Action): Mark Favor_Top_Level to
1563         be compatible with Exception_Action.
1564         * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix logic wrt
1565         Volatile entities and entities with an address clause: the code
1566         did not match the comment/intent.
1568 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1570         * comperr.adb (Compiler_Abort): Update URL and bug report
1571         instructions.
1573 2020-06-04  Steve Baird  <baird@adacore.com>
1575         * libgnat/s-imgrea.ads: Declare a named number
1576         Max_Real_Image_Length with value 5200.  Provide a comment
1577         explaining why this value was chosen.
1578         * libgnat/s-imgrea.adb (Set_Image_Real): Increase the upper
1579         bound of the local String variable Digs to
1580         Max_Real_Image_Length.
1581         * libgnat/a-tiflau.adb (Put): Increase the upper bound of the
1582         local String variable Buf to Max_Real_Image_Length.
1583         (Puts): Increase the upper bound of the local String variable
1584         Buf to Max_Real_Image_Length.
1586 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1588         * libgnarl/a-dynpri.adb, libgnarl/a-taside.adb,
1589         libgnarl/a-taster.adb, libgnarl/s-interr.adb,
1590         libgnarl/s-interr__sigaction.adb, libgnarl/s-taasde.adb,
1591         libgnarl/s-taenca.adb, libgnarl/s-taenca.ads,
1592         libgnarl/s-taprop.ads, libgnarl/s-taprop__hpux-dce.adb,
1593         libgnarl/s-taprop__linux.adb, libgnarl/s-taprop__mingw.adb,
1594         libgnarl/s-taprop__posix.adb, libgnarl/s-taprop__qnx.adb,
1595         libgnarl/s-taprop__solaris.adb, libgnarl/s-taprop__vxworks.adb,
1596         libgnarl/s-tarest.adb, libgnarl/s-tasini.adb,
1597         libgnarl/s-tasque.adb, libgnarl/s-tasque.ads,
1598         libgnarl/s-tasren.adb, libgnarl/s-tasren.ads,
1599         libgnarl/s-tassta.adb, libgnarl/s-tasuti.adb,
1600         libgnarl/s-tasuti.ads, libgnarl/s-tpoben.adb,
1601         libgnarl/s-tpobop.adb, libgnarl/s-tpopmo.adb,
1602         libgnarl/s-tposen.adb, libgnat/s-parame.ads,
1603         libgnat/s-parame__ae653.ads, libgnat/s-parame__hpux.ads,
1604         libgnat/s-parame__vxworks.ads: Remove references to Single_Lock
1605         and Global_Lock.
1607 2020-06-04  Arnaud Charlet  <charlet@adacore.com>
1609         * libgnat/s-atopar.adb, libgnat/s-atopex.adb: Use Object_Size
1610         instead of Size, otherwise many derived types will be rejected
1611         (e.g. a type with a 14 bits 'Size and a 16 bits 'Object_Size).
1613 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1615         * sem_ch12.adb (Copy_Generic_Node): Add special handling for a
1616         conversion between access types.
1618 2020-06-04  Eric Botcazou  <ebotcazou@adacore.com>
1620         * sem_ch12.adb (Check_Generic_Actuals): Also restore the proper
1621         views of the actuals of the parent instances if the formals are
1622         used as actuals of the children.
1623         (Instantiate_Type): Add comment.
1625 2020-06-04  Gary Dismukes  <dismukes@adacore.com>
1627         * sem_ch12.adb: Minor editorial fixes.
1629 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1631         * sem_ch12.adb (Denotes_Previous_Actual): Delete.
1632         (Check_Generic_Actuals): Do not special case array types whose
1633         component type denotes a previous actual.  Do not special case
1634         access types whose base type is private.
1635         (Check_Private_View): Remove code dealing with secondary types.
1636         Do not switch the views of an array because of its component.
1637         (Copy_Generic_Node): Add special handling for a comparison
1638         operator on array types.
1639         (Instantiate_Type): Do not special case access types whose
1640         designated type is private.
1641         (Set_Global_Type): Do not special case array types whose
1642         component type is private.
1644 2020-06-03  Justin Squirek  <squirek@adacore.com>
1646         * sem_ch10.adb (Process_Body_Clauses): Add loop to interate
1647         through all prefixes in a use_type clause so that all packages
1648         in the expanded name get examined for effectiveness.
1650 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1652         * sem_ch12.adb (Check_Private_View): Clean up implementation of
1653         second main case, when the generic sees the private declaration.
1655 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1657         * libgnat/a-nbnbin.ads: Minor reformatting.
1658         * libgnat/a-nbnbre.ads, libgnat/a-nbnbre.adb (Is_Valid): Add
1659         convention Intrinsic. Add detection of uninitialized big reals.
1661 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1663         * sem_util.ads, sem_util.adb (Side_Effect_Free_Statements,
1664         Side_Effect_Free_Loop): New functions.
1665         (Has_Non_Null_Statements): Consider N_Call_Marker as a null
1666         statement.
1667         * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Call
1668         Set_Is_Null_Loop even inside a generic instantiation.
1669         (Analyze_Loop_Statement): Mark for removal loops with no side
1670         effects.
1672 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1674         * opt.ads (Allow_Integer_Address): Fix typo in comment.
1675         * stand.ads (Standard_Address): New entity.
1676         * cstand.adb (Create_Standard): Create it.
1677         * sem_ch4.adb (Operator_Check): Convert the operands of an
1678         operation with addresses and integers to Standard_Address
1679         if pragma Allow_Integer_Address is in effect.
1681 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1683         * libgnat/s-atopar.adb (Atomic_Fetch_And_Add): Make use of an
1684         equivalent static expression.
1685         (Atomic_Fetch_And_Subtract): Likewise.
1686         (Is_Lock_Free): Likewise.
1687         * libgnat/s-atopex.adb (Atomic_Exchange): Likewise.
1688         (Atomic_Compare_And_Exchange): Likewise.
1689         (Is_Lock_Free): Likewise.
1691 2020-06-03  Vadim Godunko  <godunko@adacore.com>
1693         * libgnat/s-parame.ads, libgnat/s-parame__ae653.ads,
1694         libgnat/s-parame__hpux.ads: Fix typos.
1696 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1698         * exp_util.adb (Remove_Side_Effects): For a type conversion, do
1699         not remove the side effects of the expression only if it is of
1700         universal integer type.
1702 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1704         * libgnat/s-aotase.ads, libgnat/s-atoope.ads,
1705         libgnat/s-atopar.ads, libgnat/s-atopex.ads: Update header.
1707 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1709         * exp_ch4.adb (Expand_N_Unchecked_Type_Conversion): Also fold the
1710         conversion for literals of enumeration types.
1712 2020-06-03  Yannick Moy  <moy@adacore.com>
1714         * rtsfind.adb (Load_RTU): Correctly set/reset global variable to
1715         ignore SPARK_Mode in instances around loading.
1716         * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Accept Off
1717         without prior On.
1718         * sem_ch7.adb (Analyze_Package_Body_Helper): Likewise.
1719         * sem_prag.adb (Analyze_Pragma): Always take into account
1720         SPARK_Mode Off.
1722 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1724         * frontend.adb (Frontend): Call (dummy for now) tree checker.
1725         * debug.adb: Reserve -gnatd_V for the tree checker.
1726         * vast.ads, vast.adb: New files.
1727         * gcc-interface/Make-lang.in: Add vast.o.
1729 2020-06-03  Justin Squirek  <squirek@adacore.com>
1731         * libgnat/a-cborse.adb, libgnat/a-cihase.adb,
1732         libgnat/a-ciorse.adb, libgnat/a-coorse.adb: Modified to use
1733         'Unrestricted_Access in certain cases where static accessibility
1734         errors were triggered.
1735         * exp_ch6.adb (Expand_Simple_Return_Statement): Add generation
1736         of dynamic accessibility checks as determined by
1737         Is_Special_Aliased_Formal_Access.
1738         * sem_attr.adb (Resolve_Attribute): Add call to
1739         Is_Special_Aliased_Formal_Access to avoid performing static
1740         checks where dynamic ones are required.
1741         * sem_ch6.adb (Check_Return_Obj_Accessibility): Handle renamed
1742         objects within component associations requiring special
1743         accessibility checks.
1744         * sem_util.adb, sem_util.ads (Is_Special_Aliased_Formal_Access):
1745         Created to detect the special case where an aliased formal is
1746         being compared against the level of an anonymous access return
1747         object.
1748         (Object_Access_Level): Remove incorrect condition leading to
1749         overly permissive accessibility levels being returned on
1750         explicitly aliased parameters.
1752 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1754         * einfo.ads (Enum_Pos_To_Rep): Adjust description.
1755         * exp_attr.adb (Expand_N_Attribute_Reference) <Pred>:
1756         Reimplement in the case of an enumeration type with non-standard
1757         but contiguous representation.
1758         <Succ>: Likewise.
1759         <Val>: Likewise.
1760         * exp_ch3.adb (Expand_Freeze_Enumeration_Type): Count the
1761         literals in the first loop.  If the representation is
1762         contiguous, just build the index type of the array type and set
1763         Enum_Pos_To_Rep to it.
1765 2020-06-03  Gary Dismukes  <dismukes@adacore.com>
1767         * exp_attr.adb (Expand_Loop_Entry_Attribute): Revise loop that
1768         resets the scopes of entities associated with Loop_Id to the
1769         scope of the new function, so the resetting is not restricted to
1770         itypes, but excludes loop parameters and the function entity
1771         itself. However, this fix is believed to be incomplete and a ???
1772         comment is added to indicate that.
1774 2020-06-03  Bob Duff  <duff@adacore.com>
1776         * libgnat/s-regexp.ads: Fix comment
1778 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1780         * exp_attr.adb (Expand_N_Attribute_Reference) <Enum_Rep>:
1781         In the case of an enumeration type, do an intermediate
1782         conversion to a small integer type.  Remove useless stuff.
1783         <Finalization_Size>: Do not hardcode Universal_Integer and
1784         fix a type mismatch in the assignment to the variable.
1785         <Max_Size_In_Storage_Elements>: Likewise.
1786         <From_Any>: Do not redefine the Ptyp local variable.
1787         <To_Any>: Likewise.
1788         <TypeCode>: Likewise.
1789         <Pos>: Small tweaks.
1790         <Val>: For an enumeration type with standard representation,
1791         apply the range check to the expression of a convertion to
1792         Universal_Integer, if any.  For an integer type, expand to
1793         a mere conversion.
1795 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1797         * libgnat/s-rannum.adb (Random_Discrete): In the 32-bit case,
1798         use the same linear implementation as in the 64-bit case when
1799         the type has a contiguous representation.
1801 2020-06-03  Gary Dismukes  <dismukes@adacore.com>
1803         * sem_util.adb (Build_Class_Wide_Clone_Decl): Call
1804         Set_Debug_Info_Needed to set the Needs_Debug_Info flag on
1805         Clone_Id if the flag is set on Spec_Id.
1807 2020-06-03  Yannick Moy  <moy@adacore.com>
1809         * inline.adb (Expand_Inlined_Call): Do not suppress checks on
1810         inlined code in GNATprove mode.
1812 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1814         * einfo.ads (Has_Contiguous_Rep): Fix typo in comment.
1816 2020-06-03  Piotr Trojanek  <trojanek@adacore.com>
1818         * checks.adb, einfo.adb, exp_aggr.adb, exp_ch4.adb, exp_ch6.adb,
1819         exp_unst.adb, exp_util.adb, freeze.adb, inline.adb, repinfo.adb,
1820         sem_aggr.adb, sem_attr.adb, sem_aux.adb, sem_ch13.adb,
1821         sem_ch3.adb, sem_ch4.adb, sem_ch8.adb, sem_elab.adb,
1822         sem_eval.adb, sem_prag.adb, sem_res.adb, sem_smem.adb,
1823         sem_util.adb, treepr.adb: Replace uses of Next_ functions with
1824         corresponding procedures.
1826 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1828         * exp_attr.adb (Attribute_Valid): Use Standard_Long_Long_Integer
1829         in lieu of Universal_Integer as large integer type.
1830         * exp_ch3.adb (Expand_Freeze_Enumeration_Type): Likewise.
1832 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1834         * libgnat/s-auxdec.ads (Address_Int): New.
1836 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1838         * aspects.adb, aspects.ads, atree.adb, atree.ads, elists.adb,
1839         elists.ads, fname.adb, fname.ads, gnat1drv.adb, lib.adb,
1840         lib.ads, namet.adb, namet.ads, nlists.adb, nlists.ads, opt.adb,
1841         opt.ads, osint-c.adb, osint-c.ads, repinfo.adb, repinfo.ads,
1842         sem_aux.adb, sem_aux.ads, sinput.adb, sinput.ads, stand.ads,
1843         stringt.adb, stringt.ads, switch-c.adb, table.adb, table.ads,
1844         uintp.adb, uintp.ads, urealp.adb, urealp.ads (Tree_Read,
1845         Tree_Write): Remove generation of ASIS trees.
1846         * doc/gnat_ugn/building_executable_programs_with_gnat.rst:
1847         Remove -gnatt and -gnatct documentation.
1848         * gnat_ugn.texi: Regenerate.
1849         * tree_in.ads, tree_in.adb, tree_io.ads, tree_io.adb,
1850         tree_gen.ads, tree_gen.adb, stand.adb: Remove.
1851         * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Remove
1852         references to tree_gen.o tree_in.o tree_io.o.
1854 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1856         * opt.ads (Disable_FE_Inline): Move around.
1857         (Disable_FE_Inline_Always): Likewise.
1859 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1861         * checks.adb (Is_Single_Attribute_Reference): New predicate.
1862         (Generate_Range_Check): Do not force the evaluation if the
1863         node is a single attribute reference.
1864         * exp_util.adb (Side_Effect_Free_Attribute): New predicate.
1865         (Side_Effect_Free) <N_Attribute_Reference>: Call it.
1866         (Remove_Side_Effects): Remove the side effects of the prefix
1867         for an attribute reference whose prefix is not a name.
1869 2020-06-03  Arnaud Charlet  <charlet@adacore.com>
1871         * switch-c.adb (Scan_Front_End_Switches): Remove processing of
1872         -gnatt.
1873         * usage.adb (Usage): Remove mention of -gnatt.
1875 2020-06-03  Eric Botcazou  <ebotcazou@adacore.com>
1877         * sinfo.ads: Minor tweaks in commentary.
1879 2020-06-02  Alexandre Oliva  <oliva@adacore.com>
1881         * lib.ads (Compilation_Switches): Remove -auxbase from
1882         comments.
1883         * switch.ads (Is_Internal_GCC_Switch): Likewise.
1885 2020-06-02  Arnaud Charlet  <charlet@adacore.com>
1887         * atree.ads, checks.adb, contracts.adb, debug.adb, einfo.ads,
1888         exp_ch3.adb, exp_util.adb, expander.ads, expander.adb,
1889         frontend.adb, gnat1drv.adb, itypes.adb, lib.ads, namet.ads,
1890         opt.adb, opt.ads, par-prag.adb, repinfo.ads, sem_aggr.adb,
1891         sem_aux.ads, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
1892         sem_ch13.adb, sem_ch3.adb, sem_ch4.adb, sem_ch6.adb,
1893         sem_dim.adb, sem_elab.adb, sem_prag.adb, sem_prag.ads,
1894         sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, stand.ads,
1895         tree_io.ads: Remove references to ASIS_Mode.
1897 2020-06-02  Javier Miranda  <miranda@adacore.com>
1899         * exp_ch4.adb (Generate_Temporary): New subprogram of
1900         Discrete_Range_Check that generates a temporary to facilitate
1901         the C backend the code generation of the unchecked conversion
1902         since the size of the source type may differ from the size of
1903         the target type.
1905 2020-06-02  Arnaud Charlet  <charlet@adacore.com>
1907         * ada_get_targ.adb: Bump copyright year.
1908         * adabkend.adb: Likewise.
1909         * adabkend.ads: Likewise.
1910         * adadecode.c: Likewise.
1911         * adadecode.h: Likewise.
1912         * adaint.c: Likewise.
1913         * adaint.h: Likewise.
1914         * affinity.c: Likewise.
1915         * ali-util.adb: Likewise.
1916         * ali-util.ads: Likewise.
1917         * ali.adb: Likewise.
1918         * ali.ads: Likewise.
1919         * alloc.ads: Likewise.
1920         * argv-lynxos178-raven-cert.c: Likewise.
1921         * argv.c: Likewise.
1922         * aspects.adb: Likewise.
1923         * aspects.ads: Likewise.
1924         * atree.adb: Likewise.
1925         * atree.ads: Likewise.
1926         * atree.h: Likewise.
1927         * aux-io.c: Likewise.
1928         * back_end.adb: Likewise.
1929         * back_end.ads: Likewise.
1930         * bcheck.adb: Likewise.
1931         * bcheck.ads: Likewise.
1932         * binde.adb: Likewise.
1933         * binde.ads: Likewise.
1934         * binderr.adb: Likewise.
1935         * binderr.ads: Likewise.
1936         * bindgen.adb: Likewise.
1937         * bindgen.ads: Likewise.
1938         * bindo-augmentors.adb: Likewise.
1939         * bindo-augmentors.ads: Likewise.
1940         * bindo-builders.adb: Likewise.
1941         * bindo-builders.ads: Likewise.
1942         * bindo-diagnostics.adb: Likewise.
1943         * bindo-diagnostics.ads: Likewise.
1944         * bindo-elaborators.adb: Likewise.
1945         * bindo-elaborators.ads: Likewise.
1946         * bindo-graphs.adb: Likewise.
1947         * bindo-graphs.ads: Likewise.
1948         * bindo-units.adb: Likewise.
1949         * bindo-units.ads: Likewise.
1950         * bindo-validators.adb: Likewise.
1951         * bindo-validators.ads: Likewise.
1952         * bindo-writers.adb: Likewise.
1953         * bindo-writers.ads: Likewise.
1954         * bindo.adb: Likewise.
1955         * bindo.ads: Likewise.
1956         * bindusg.adb: Likewise.
1957         * bindusg.ads: Likewise.
1958         * butil.adb: Likewise.
1959         * butil.ads: Likewise.
1960         * cal.c: Likewise.
1961         * casing.adb: Likewise.
1962         * casing.ads: Likewise.
1963         * ceinfo.adb: Likewise.
1964         * checks.adb: Likewise.
1965         * checks.ads: Likewise.
1966         * cio.c: Likewise.
1967         * clean.adb: Likewise.
1968         * clean.ads: Likewise.
1969         * comperr.adb: Likewise.
1970         * comperr.ads: Likewise.
1971         * contracts.adb: Likewise.
1972         * contracts.ads: Likewise.
1973         * csets.adb: Likewise.
1974         * csets.ads: Likewise.
1975         * csinfo.adb: Likewise.
1976         * cstand.adb: Likewise.
1977         * cstand.ads: Likewise.
1978         * cstreams.c: Likewise.
1979         * ctrl_c.c: Likewise.
1980         * debug.adb: Likewise.
1981         * debug.ads: Likewise.
1982         * debug_a.adb: Likewise.
1983         * debug_a.ads: Likewise.
1984         * einfo.adb: Likewise.
1985         * einfo.ads: Likewise.
1986         * elists.adb: Likewise.
1987         * elists.ads: Likewise.
1988         * elists.h: Likewise.
1989         * env.c: Likewise.
1990         * env.h: Likewise.
1991         * err_vars.ads: Likewise.
1992         * errno.c: Likewise.
1993         * errout.adb: Likewise.
1994         * errout.ads: Likewise.
1995         * erroutc.adb: Likewise.
1996         * erroutc.ads: Likewise.
1997         * errutil.adb: Likewise.
1998         * errutil.ads: Likewise.
1999         * eval_fat.adb: Likewise.
2000         * eval_fat.ads: Likewise.
2001         * exit.c: Likewise.
2002         * exp_aggr.adb: Likewise.
2003         * exp_aggr.ads: Likewise.
2004         * exp_atag.adb: Likewise.
2005         * exp_atag.ads: Likewise.
2006         * exp_attr.adb: Likewise.
2007         * exp_attr.ads: Likewise.
2008         * exp_cg.adb: Likewise.
2009         * exp_cg.ads: Likewise.
2010         * exp_ch10.ads: Likewise.
2011         * exp_ch11.adb: Likewise.
2012         * exp_ch11.ads: Likewise.
2013         * exp_ch12.adb: Likewise.
2014         * exp_ch12.ads: Likewise.
2015         * exp_ch13.adb: Likewise.
2016         * exp_ch13.ads: Likewise.
2017         * exp_ch2.adb: Likewise.
2018         * exp_ch2.ads: Likewise.
2019         * exp_ch3.adb: Likewise.
2020         * exp_ch3.ads: Likewise.
2021         * exp_ch4.adb: Likewise.
2022         * exp_ch4.ads: Likewise.
2023         * exp_ch5.adb: Likewise.
2024         * exp_ch5.ads: Likewise.
2025         * exp_ch6.adb: Likewise.
2026         * exp_ch6.ads: Likewise.
2027         * exp_ch7.adb: Likewise.
2028         * exp_ch7.ads: Likewise.
2029         * exp_ch8.adb: Likewise.
2030         * exp_ch8.ads: Likewise.
2031         * exp_ch9.adb: Likewise.
2032         * exp_ch9.ads: Likewise.
2033         * exp_code.adb: Likewise.
2034         * exp_code.ads: Likewise.
2035         * exp_dbug.adb: Likewise.
2036         * exp_dbug.ads: Likewise.
2037         * exp_disp.adb: Likewise.
2038         * exp_disp.ads: Likewise.
2039         * exp_dist.adb: Likewise.
2040         * exp_dist.ads: Likewise.
2041         * exp_fixd.adb: Likewise.
2042         * exp_fixd.ads: Likewise.
2043         * exp_imgv.adb: Likewise.
2044         * exp_imgv.ads: Likewise.
2045         * exp_intr.adb: Likewise.
2046         * exp_intr.ads: Likewise.
2047         * exp_pakd.adb: Likewise.
2048         * exp_pakd.ads: Likewise.
2049         * exp_prag.adb: Likewise.
2050         * exp_prag.ads: Likewise.
2051         * exp_sel.adb: Likewise.
2052         * exp_sel.ads: Likewise.
2053         * exp_smem.adb: Likewise.
2054         * exp_smem.ads: Likewise.
2055         * exp_spark.adb: Likewise.
2056         * exp_spark.ads: Likewise.
2057         * exp_strm.adb: Likewise.
2058         * exp_strm.ads: Likewise.
2059         * exp_tss.adb: Likewise.
2060         * exp_tss.ads: Likewise.
2061         * exp_unst.adb: Likewise.
2062         * exp_unst.ads: Likewise.
2063         * exp_util.adb: Likewise.
2064         * exp_util.ads: Likewise.
2065         * expander.adb: Likewise.
2066         * expander.ads: Likewise.
2067         * expect.c: Likewise.
2068         * fe.h: Likewise.
2069         * final.c: Likewise.
2070         * fmap.adb: Likewise.
2071         * fmap.ads: Likewise.
2072         * fname-sf.adb: Likewise.
2073         * fname-sf.ads: Likewise.
2074         * fname-uf.adb: Likewise.
2075         * fname-uf.ads: Likewise.
2076         * fname.adb: Likewise.
2077         * fname.ads: Likewise.
2078         * freeze.adb: Likewise.
2079         * freeze.ads: Likewise.
2080         * frontend.adb: Likewise.
2081         * frontend.ads: Likewise.
2082         * get_scos.adb: Likewise.
2083         * get_scos.ads: Likewise.
2084         * get_targ.adb: Likewise.
2085         * get_targ.ads: Likewise.
2086         * ghost.adb: Likewise.
2087         * ghost.ads: Likewise.
2088         * gnat1drv.adb: Likewise.
2089         * gnat1drv.ads: Likewise.
2090         * gnatbind.adb: Likewise.
2091         * gnatbind.ads: Likewise.
2092         * gnatchop.adb: Likewise.
2093         * gnatclean.adb: Likewise.
2094         * gnatcmd.adb: Likewise.
2095         * gnatcmd.ads: Likewise.
2096         * gnatdll.adb: Likewise.
2097         * gnatfind.adb: Likewise.
2098         * gnatkr.adb: Likewise.
2099         * gnatkr.ads: Likewise.
2100         * gnatlink.adb: Likewise.
2101         * gnatlink.ads: Likewise.
2102         * gnatls.adb: Likewise.
2103         * gnatls.ads: Likewise.
2104         * gnatmake.adb: Likewise.
2105         * gnatmake.ads: Likewise.
2106         * gnatname.adb: Likewise.
2107         * gnatname.ads: Likewise.
2108         * gnatprep.adb: Likewise.
2109         * gnatprep.ads: Likewise.
2110         * gnatvsn.adb: Likewise.
2111         * gnatxref.adb: Likewise.
2112         * gprep.adb: Likewise.
2113         * gprep.ads: Likewise.
2114         * gsocket.h: Likewise.
2115         * hostparm.ads: Likewise.
2116         * impunit.adb: Likewise.
2117         * impunit.ads: Likewise.
2118         * indepsw-aix.adb: Likewise.
2119         * indepsw-darwin.adb: Likewise.
2120         * indepsw-gnu.adb: Likewise.
2121         * indepsw.adb: Likewise.
2122         * indepsw.ads: Likewise.
2123         * init.c: Likewise.
2124         * initialize.c: Likewise.
2125         * inline.adb: Likewise.
2126         * inline.ads: Likewise.
2127         * itypes.adb: Likewise.
2128         * itypes.ads: Likewise.
2129         * krunch.adb: Likewise.
2130         * krunch.ads: Likewise.
2131         * layout.adb: Likewise.
2132         * layout.ads: Likewise.
2133         * lib-list.adb: Likewise.
2134         * lib-load.adb: Likewise.
2135         * lib-load.ads: Likewise.
2136         * lib-sort.adb: Likewise.
2137         * lib-util.adb: Likewise.
2138         * lib-util.ads: Likewise.
2139         * lib-writ.adb: Likewise.
2140         * lib-writ.ads: Likewise.
2141         * lib-xref-spark_specific.adb: Likewise.
2142         * lib-xref.adb: Likewise.
2143         * lib-xref.ads: Likewise.
2144         * lib.adb: Likewise.
2145         * lib.ads: Likewise.
2146         * libgnarl/a-astaco.adb: Likewise.
2147         * libgnarl/a-dispat.adb: Likewise.
2148         * libgnarl/a-dynpri.adb: Likewise.
2149         * libgnarl/a-etgrbu.ads: Likewise.
2150         * libgnarl/a-exetim__darwin.adb: Likewise.
2151         * libgnarl/a-exetim__default.ads: Likewise.
2152         * libgnarl/a-exetim__mingw.adb: Likewise.
2153         * libgnarl/a-exetim__mingw.ads: Likewise.
2154         * libgnarl/a-exetim__posix.adb: Likewise.
2155         * libgnarl/a-interr.adb: Likewise.
2156         * libgnarl/a-interr.ads: Likewise.
2157         * libgnarl/a-intnam.ads: Likewise.
2158         * libgnarl/a-intnam__aix.ads: Likewise.
2159         * libgnarl/a-intnam__darwin.ads: Likewise.
2160         * libgnarl/a-intnam__dragonfly.ads: Likewise.
2161         * libgnarl/a-intnam__dummy.ads: Likewise.
2162         * libgnarl/a-intnam__freebsd.ads: Likewise.
2163         * libgnarl/a-intnam__hpux.ads: Likewise.
2164         * libgnarl/a-intnam__linux.ads: Likewise.
2165         * libgnarl/a-intnam__lynxos.ads: Likewise.
2166         * libgnarl/a-intnam__mingw.ads: Likewise.
2167         * libgnarl/a-intnam__qnx.ads: Likewise.
2168         * libgnarl/a-intnam__rtems.ads: Likewise.
2169         * libgnarl/a-intnam__solaris.ads: Likewise.
2170         * libgnarl/a-intnam__vxworks.ads: Likewise.
2171         * libgnarl/a-reatim.adb: Likewise.
2172         * libgnarl/a-reatim.ads: Likewise.
2173         * libgnarl/a-retide.adb: Likewise.
2174         * libgnarl/a-retide.ads: Likewise.
2175         * libgnarl/a-rttiev.adb: Likewise.
2176         * libgnarl/a-rttiev.ads: Likewise.
2177         * libgnarl/a-synbar.adb: Likewise.
2178         * libgnarl/a-synbar.ads: Likewise.
2179         * libgnarl/a-synbar__posix.adb: Likewise.
2180         * libgnarl/a-synbar__posix.ads: Likewise.
2181         * libgnarl/a-sytaco.adb: Likewise.
2182         * libgnarl/a-sytaco.ads: Likewise.
2183         * libgnarl/a-tasatt.adb: Likewise.
2184         * libgnarl/a-tasatt.ads: Likewise.
2185         * libgnarl/a-taside.adb: Likewise.
2186         * libgnarl/a-taside.ads: Likewise.
2187         * libgnarl/a-taster.adb: Likewise.
2188         * libgnarl/g-boubuf.adb: Likewise.
2189         * libgnarl/g-boubuf.ads: Likewise.
2190         * libgnarl/g-boumai.ads: Likewise.
2191         * libgnarl/g-semaph.adb: Likewise.
2192         * libgnarl/g-semaph.ads: Likewise.
2193         * libgnarl/g-signal.adb: Likewise.
2194         * libgnarl/g-signal.ads: Likewise.
2195         * libgnarl/g-tastus.ads: Likewise.
2196         * libgnarl/g-thread.adb: Likewise.
2197         * libgnarl/g-thread.ads: Likewise.
2198         * libgnarl/i-vxinco.adb: Likewise.
2199         * libgnarl/i-vxinco.ads: Likewise.
2200         * libgnarl/s-inmaop.ads: Likewise.
2201         * libgnarl/s-inmaop__dummy.adb: Likewise.
2202         * libgnarl/s-inmaop__posix.adb: Likewise.
2203         * libgnarl/s-inmaop__vxworks.adb: Likewise.
2204         * libgnarl/s-interr.adb: Likewise.
2205         * libgnarl/s-interr.ads: Likewise.
2206         * libgnarl/s-interr__dummy.adb: Likewise.
2207         * libgnarl/s-interr__hwint.adb: Likewise.
2208         * libgnarl/s-interr__sigaction.adb: Likewise.
2209         * libgnarl/s-interr__vxworks.adb: Likewise.
2210         * libgnarl/s-intman.ads: Likewise.
2211         * libgnarl/s-intman__android.adb: Likewise.
2212         * libgnarl/s-intman__dummy.adb: Likewise.
2213         * libgnarl/s-intman__lynxos.adb: Likewise.
2214         * libgnarl/s-intman__mingw.adb: Likewise.
2215         * libgnarl/s-intman__posix.adb: Likewise.
2216         * libgnarl/s-intman__qnx.adb: Likewise.
2217         * libgnarl/s-intman__solaris.adb: Likewise.
2218         * libgnarl/s-intman__susv3.adb: Likewise.
2219         * libgnarl/s-intman__vxworks.adb: Likewise.
2220         * libgnarl/s-intman__vxworks.ads: Likewise.
2221         * libgnarl/s-linux.ads: Likewise.
2222         * libgnarl/s-linux__alpha.ads: Likewise.
2223         * libgnarl/s-linux__android.ads: Likewise.
2224         * libgnarl/s-linux__hppa.ads: Likewise.
2225         * libgnarl/s-linux__mips.ads: Likewise.
2226         * libgnarl/s-linux__riscv.ads: Likewise.
2227         * libgnarl/s-linux__sparc.ads: Likewise.
2228         * libgnarl/s-linux__x32.ads: Likewise.
2229         * libgnarl/s-mudido.adb: Likewise.
2230         * libgnarl/s-mudido__affinity.adb: Likewise.
2231         * libgnarl/s-osinte__aix.adb: Likewise.
2232         * libgnarl/s-osinte__aix.ads: Likewise.
2233         * libgnarl/s-osinte__android.adb: Likewise.
2234         * libgnarl/s-osinte__android.ads: Likewise.
2235         * libgnarl/s-osinte__darwin.adb: Likewise.
2236         * libgnarl/s-osinte__darwin.ads: Likewise.
2237         * libgnarl/s-osinte__dragonfly.adb: Likewise.
2238         * libgnarl/s-osinte__dragonfly.ads: Likewise.
2239         * libgnarl/s-osinte__dummy.ads: Likewise.
2240         * libgnarl/s-osinte__freebsd.adb: Likewise.
2241         * libgnarl/s-osinte__freebsd.ads: Likewise.
2242         * libgnarl/s-osinte__gnu.adb: Likewise.
2243         * libgnarl/s-osinte__gnu.ads: Likewise.
2244         * libgnarl/s-osinte__hpux-dce.adb: Likewise.
2245         * libgnarl/s-osinte__hpux-dce.ads: Likewise.
2246         * libgnarl/s-osinte__hpux.ads: Likewise.
2247         * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise.
2248         * libgnarl/s-osinte__linux.ads: Likewise.
2249         * libgnarl/s-osinte__lynxos178.adb: Likewise.
2250         * libgnarl/s-osinte__lynxos178e.ads: Likewise.
2251         * libgnarl/s-osinte__mingw.ads: Likewise.
2252         * libgnarl/s-osinte__posix.adb: Likewise.
2253         * libgnarl/s-osinte__qnx.adb: Likewise.
2254         * libgnarl/s-osinte__qnx.ads: Likewise.
2255         * libgnarl/s-osinte__rtems.adb: Likewise.
2256         * libgnarl/s-osinte__rtems.ads: Likewise.
2257         * libgnarl/s-osinte__solaris.adb: Likewise.
2258         * libgnarl/s-osinte__solaris.ads: Likewise.
2259         * libgnarl/s-osinte__vxworks.adb: Likewise.
2260         * libgnarl/s-osinte__vxworks.ads: Likewise.
2261         * libgnarl/s-osinte__x32.adb: Likewise.
2262         * libgnarl/s-proinf.adb: Likewise.
2263         * libgnarl/s-proinf.ads: Likewise.
2264         * libgnarl/s-qnx.ads: Likewise.
2265         * libgnarl/s-solita.adb: Likewise.
2266         * libgnarl/s-solita.ads: Likewise.
2267         * libgnarl/s-stusta.adb: Likewise.
2268         * libgnarl/s-stusta.ads: Likewise.
2269         * libgnarl/s-taasde.adb: Likewise.
2270         * libgnarl/s-taasde.ads: Likewise.
2271         * libgnarl/s-tadeca.adb: Likewise.
2272         * libgnarl/s-tadeca.ads: Likewise.
2273         * libgnarl/s-tadert.adb: Likewise.
2274         * libgnarl/s-tadert.ads: Likewise.
2275         * libgnarl/s-taenca.adb: Likewise.
2276         * libgnarl/s-taenca.ads: Likewise.
2277         * libgnarl/s-taprob.adb: Likewise.
2278         * libgnarl/s-taprob.ads: Likewise.
2279         * libgnarl/s-taprop.ads: Likewise.
2280         * libgnarl/s-taprop__dummy.adb: Likewise.
2281         * libgnarl/s-taprop__hpux-dce.adb: Likewise.
2282         * libgnarl/s-taprop__linux.adb: Likewise.
2283         * libgnarl/s-taprop__mingw.adb: Likewise.
2284         * libgnarl/s-taprop__posix.adb: Likewise.
2285         * libgnarl/s-taprop__qnx.adb: Likewise.
2286         * libgnarl/s-taprop__solaris.adb: Likewise.
2287         * libgnarl/s-taprop__vxworks.adb: Likewise.
2288         * libgnarl/s-tarest.adb: Likewise.
2289         * libgnarl/s-tarest.ads: Likewise.
2290         * libgnarl/s-tasdeb.adb: Likewise.
2291         * libgnarl/s-tasdeb.ads: Likewise.
2292         * libgnarl/s-tasinf.adb: Likewise.
2293         * libgnarl/s-tasinf.ads: Likewise.
2294         * libgnarl/s-tasinf__linux.adb: Likewise.
2295         * libgnarl/s-tasinf__linux.ads: Likewise.
2296         * libgnarl/s-tasinf__mingw.adb: Likewise.
2297         * libgnarl/s-tasinf__mingw.ads: Likewise.
2298         * libgnarl/s-tasinf__solaris.adb: Likewise.
2299         * libgnarl/s-tasinf__solaris.ads: Likewise.
2300         * libgnarl/s-tasinf__vxworks.ads: Likewise.
2301         * libgnarl/s-tasini.adb: Likewise.
2302         * libgnarl/s-tasini.ads: Likewise.
2303         * libgnarl/s-taskin.adb: Likewise.
2304         * libgnarl/s-taskin.ads: Likewise.
2305         * libgnarl/s-taspri__dummy.ads: Likewise.
2306         * libgnarl/s-taspri__hpux-dce.ads: Likewise.
2307         * libgnarl/s-taspri__lynxos.ads: Likewise.
2308         * libgnarl/s-taspri__mingw.ads: Likewise.
2309         * libgnarl/s-taspri__posix-noaltstack.ads: Likewise.
2310         * libgnarl/s-taspri__posix.ads: Likewise.
2311         * libgnarl/s-taspri__solaris.ads: Likewise.
2312         * libgnarl/s-taspri__vxworks.ads: Likewise.
2313         * libgnarl/s-tasque.adb: Likewise.
2314         * libgnarl/s-tasque.ads: Likewise.
2315         * libgnarl/s-tasren.adb: Likewise.
2316         * libgnarl/s-tasren.ads: Likewise.
2317         * libgnarl/s-tasres.ads: Likewise.
2318         * libgnarl/s-tassta.adb: Likewise.
2319         * libgnarl/s-tassta.ads: Likewise.
2320         * libgnarl/s-tasuti.adb: Likewise.
2321         * libgnarl/s-tasuti.ads: Likewise.
2322         * libgnarl/s-tataat.adb: Likewise.
2323         * libgnarl/s-tataat.ads: Likewise.
2324         * libgnarl/s-tpinop.adb: Likewise.
2325         * libgnarl/s-tpinop.ads: Likewise.
2326         * libgnarl/s-tpoaal.adb: Likewise.
2327         * libgnarl/s-tpoben.adb: Likewise.
2328         * libgnarl/s-tpoben.ads: Likewise.
2329         * libgnarl/s-tpobmu.adb: Likewise.
2330         * libgnarl/s-tpobmu.ads: Likewise.
2331         * libgnarl/s-tpobop.adb: Likewise.
2332         * libgnarl/s-tpobop.ads: Likewise.
2333         * libgnarl/s-tpopmo.adb: Likewise.
2334         * libgnarl/s-tpopsp__posix-foreign.adb: Likewise.
2335         * libgnarl/s-tpopsp__posix.adb: Likewise.
2336         * libgnarl/s-tpopsp__solaris.adb: Likewise.
2337         * libgnarl/s-tpopsp__tls.adb: Likewise.
2338         * libgnarl/s-tpopsp__vxworks-rtp.adb: Likewise.
2339         * libgnarl/s-tpopsp__vxworks-tls.adb: Likewise.
2340         * libgnarl/s-tpopsp__vxworks.adb: Likewise.
2341         * libgnarl/s-tporft.adb: Likewise.
2342         * libgnarl/s-tposen.adb: Likewise.
2343         * libgnarl/s-tposen.ads: Likewise.
2344         * libgnarl/s-vxwext.adb: Likewise.
2345         * libgnarl/s-vxwext.ads: Likewise.
2346         * libgnarl/s-vxwext__kernel-smp.adb: Likewise.
2347         * libgnarl/s-vxwext__kernel.adb: Likewise.
2348         * libgnarl/s-vxwext__kernel.ads: Likewise.
2349         * libgnarl/s-vxwext__noints.adb: Likewise.
2350         * libgnarl/s-vxwext__rtp-smp.adb: Likewise.
2351         * libgnarl/s-vxwext__rtp.adb: Likewise.
2352         * libgnarl/s-vxwext__rtp.ads: Likewise.
2353         * libgnarl/s-vxwext__vthreads.ads: Likewise.
2354         * libgnarl/s-vxwork__aarch64.ads: Likewise.
2355         * libgnarl/s-vxwork__arm.ads: Likewise.
2356         * libgnarl/s-vxwork__ppc.ads: Likewise.
2357         * libgnarl/s-vxwork__x86.ads: Likewise.
2358         * libgnarl/thread.c: Likewise.
2359         * libgnat/a-assert.adb: Likewise.
2360         * libgnat/a-assert.ads: Likewise.
2361         * libgnat/a-btgbso.adb: Likewise.
2362         * libgnat/a-btgbso.ads: Likewise.
2363         * libgnat/a-calari.adb: Likewise.
2364         * libgnat/a-calari.ads: Likewise.
2365         * libgnat/a-calcon.adb: Likewise.
2366         * libgnat/a-calcon.ads: Likewise.
2367         * libgnat/a-caldel.adb: Likewise.
2368         * libgnat/a-caldel.ads: Likewise.
2369         * libgnat/a-calend.adb: Likewise.
2370         * libgnat/a-calend.ads: Likewise.
2371         * libgnat/a-calfor.adb: Likewise.
2372         * libgnat/a-calfor.ads: Likewise.
2373         * libgnat/a-catizo.adb: Likewise.
2374         * libgnat/a-cbdlli.adb: Likewise.
2375         * libgnat/a-cbdlli.ads: Likewise.
2376         * libgnat/a-cbhama.adb: Likewise.
2377         * libgnat/a-cbhama.ads: Likewise.
2378         * libgnat/a-cbhase.adb: Likewise.
2379         * libgnat/a-cbhase.ads: Likewise.
2380         * libgnat/a-cbmutr.adb: Likewise.
2381         * libgnat/a-cbmutr.ads: Likewise.
2382         * libgnat/a-cborma.adb: Likewise.
2383         * libgnat/a-cborma.ads: Likewise.
2384         * libgnat/a-cborse.adb: Likewise.
2385         * libgnat/a-cborse.ads: Likewise.
2386         * libgnat/a-cbprqu.adb: Likewise.
2387         * libgnat/a-cbprqu.ads: Likewise.
2388         * libgnat/a-cbsyqu.adb: Likewise.
2389         * libgnat/a-cbsyqu.ads: Likewise.
2390         * libgnat/a-cdlili.adb: Likewise.
2391         * libgnat/a-cdlili.ads: Likewise.
2392         * libgnat/a-cfdlli.adb: Likewise.
2393         * libgnat/a-cfdlli.ads: Likewise.
2394         * libgnat/a-cfhama.adb: Likewise.
2395         * libgnat/a-cfhama.ads: Likewise.
2396         * libgnat/a-cfhase.adb: Likewise.
2397         * libgnat/a-cfhase.ads: Likewise.
2398         * libgnat/a-cfinve.adb: Likewise.
2399         * libgnat/a-cfinve.ads: Likewise.
2400         * libgnat/a-cforma.adb: Likewise.
2401         * libgnat/a-cforma.ads: Likewise.
2402         * libgnat/a-cforse.adb: Likewise.
2403         * libgnat/a-cforse.ads: Likewise.
2404         * libgnat/a-cgaaso.adb: Likewise.
2405         * libgnat/a-cgaaso.ads: Likewise.
2406         * libgnat/a-cgarso.adb: Likewise.
2407         * libgnat/a-cgcaso.adb: Likewise.
2408         * libgnat/a-chacon.adb: Likewise.
2409         * libgnat/a-chacon.ads: Likewise.
2410         * libgnat/a-chahan.adb: Likewise.
2411         * libgnat/a-chahan.ads: Likewise.
2412         * libgnat/a-chlat9.ads: Likewise.
2413         * libgnat/a-chtgbk.adb: Likewise.
2414         * libgnat/a-chtgbk.ads: Likewise.
2415         * libgnat/a-chtgbo.adb: Likewise.
2416         * libgnat/a-chtgbo.ads: Likewise.
2417         * libgnat/a-chtgke.adb: Likewise.
2418         * libgnat/a-chtgke.ads: Likewise.
2419         * libgnat/a-chtgop.adb: Likewise.
2420         * libgnat/a-chtgop.ads: Likewise.
2421         * libgnat/a-chzla1.ads: Likewise.
2422         * libgnat/a-chzla9.ads: Likewise.
2423         * libgnat/a-cidlli.adb: Likewise.
2424         * libgnat/a-cidlli.ads: Likewise.
2425         * libgnat/a-cihama.adb: Likewise.
2426         * libgnat/a-cihama.ads: Likewise.
2427         * libgnat/a-cihase.adb: Likewise.
2428         * libgnat/a-cihase.ads: Likewise.
2429         * libgnat/a-cimutr.adb: Likewise.
2430         * libgnat/a-cimutr.ads: Likewise.
2431         * libgnat/a-ciorma.adb: Likewise.
2432         * libgnat/a-ciorma.ads: Likewise.
2433         * libgnat/a-ciormu.adb: Likewise.
2434         * libgnat/a-ciormu.ads: Likewise.
2435         * libgnat/a-ciorse.adb: Likewise.
2436         * libgnat/a-ciorse.ads: Likewise.
2437         * libgnat/a-clrefi.adb: Likewise.
2438         * libgnat/a-clrefi.ads: Likewise.
2439         * libgnat/a-coboho.adb: Likewise.
2440         * libgnat/a-coboho.ads: Likewise.
2441         * libgnat/a-cobove.adb: Likewise.
2442         * libgnat/a-cobove.ads: Likewise.
2443         * libgnat/a-cofove.adb: Likewise.
2444         * libgnat/a-cofove.ads: Likewise.
2445         * libgnat/a-cofuba.adb: Likewise.
2446         * libgnat/a-cofuba.ads: Likewise.
2447         * libgnat/a-cofuma.adb: Likewise.
2448         * libgnat/a-cofuma.ads: Likewise.
2449         * libgnat/a-cofuse.adb: Likewise.
2450         * libgnat/a-cofuse.ads: Likewise.
2451         * libgnat/a-cofuve.adb: Likewise.
2452         * libgnat/a-cofuve.ads: Likewise.
2453         * libgnat/a-cogeso.adb: Likewise.
2454         * libgnat/a-cogeso.ads: Likewise.
2455         * libgnat/a-cohama.adb: Likewise.
2456         * libgnat/a-cohama.ads: Likewise.
2457         * libgnat/a-cohase.adb: Likewise.
2458         * libgnat/a-cohase.ads: Likewise.
2459         * libgnat/a-cohata.ads: Likewise.
2460         * libgnat/a-coinho.adb: Likewise.
2461         * libgnat/a-coinho.ads: Likewise.
2462         * libgnat/a-coinho__shared.adb: Likewise.
2463         * libgnat/a-coinho__shared.ads: Likewise.
2464         * libgnat/a-coinve.adb: Likewise.
2465         * libgnat/a-coinve.ads: Likewise.
2466         * libgnat/a-colien.adb: Likewise.
2467         * libgnat/a-colien.ads: Likewise.
2468         * libgnat/a-colire.adb: Likewise.
2469         * libgnat/a-colire.ads: Likewise.
2470         * libgnat/a-comlin.adb: Likewise.
2471         * libgnat/a-comlin.ads: Likewise.
2472         * libgnat/a-comutr.adb: Likewise.
2473         * libgnat/a-comutr.ads: Likewise.
2474         * libgnat/a-conhel.adb: Likewise.
2475         * libgnat/a-conhel.ads: Likewise.
2476         * libgnat/a-convec.adb: Likewise.
2477         * libgnat/a-convec.ads: Likewise.
2478         * libgnat/a-coorma.adb: Likewise.
2479         * libgnat/a-coorma.ads: Likewise.
2480         * libgnat/a-coormu.adb: Likewise.
2481         * libgnat/a-coormu.ads: Likewise.
2482         * libgnat/a-coorse.adb: Likewise.
2483         * libgnat/a-coorse.ads: Likewise.
2484         * libgnat/a-coprnu.adb: Likewise.
2485         * libgnat/a-coprnu.ads: Likewise.
2486         * libgnat/a-crbltr.ads: Likewise.
2487         * libgnat/a-crbtgk.adb: Likewise.
2488         * libgnat/a-crbtgk.ads: Likewise.
2489         * libgnat/a-crbtgo.adb: Likewise.
2490         * libgnat/a-crbtgo.ads: Likewise.
2491         * libgnat/a-crdlli.adb: Likewise.
2492         * libgnat/a-crdlli.ads: Likewise.
2493         * libgnat/a-csquin.ads: Likewise.
2494         * libgnat/a-cuprqu.adb: Likewise.
2495         * libgnat/a-cuprqu.ads: Likewise.
2496         * libgnat/a-cusyqu.adb: Likewise.
2497         * libgnat/a-cusyqu.ads: Likewise.
2498         * libgnat/a-cwila1.ads: Likewise.
2499         * libgnat/a-cwila9.ads: Likewise.
2500         * libgnat/a-decima.adb: Likewise.
2501         * libgnat/a-decima.ads: Likewise.
2502         * libgnat/a-dhfina.adb: Likewise.
2503         * libgnat/a-dhfina.ads: Likewise.
2504         * libgnat/a-diocst.adb: Likewise.
2505         * libgnat/a-diocst.ads: Likewise.
2506         * libgnat/a-direct.adb: Likewise.
2507         * libgnat/a-direct.ads: Likewise.
2508         * libgnat/a-direio.adb: Likewise.
2509         * libgnat/a-direio.ads: Likewise.
2510         * libgnat/a-dirval.adb: Likewise.
2511         * libgnat/a-dirval.ads: Likewise.
2512         * libgnat/a-dirval__mingw.adb: Likewise.
2513         * libgnat/a-einuoc.adb: Likewise.
2514         * libgnat/a-einuoc.ads: Likewise.
2515         * libgnat/a-elchha.adb: Likewise.
2516         * libgnat/a-elchha.ads: Likewise.
2517         * libgnat/a-elchha__vxworks-ppc-full.adb: Likewise.
2518         * libgnat/a-envvar.adb: Likewise.
2519         * libgnat/a-excach.adb: Likewise.
2520         * libgnat/a-except.adb: Likewise.
2521         * libgnat/a-except.ads: Likewise.
2522         * libgnat/a-excpol.adb: Likewise.
2523         * libgnat/a-excpol__abort.adb: Likewise.
2524         * libgnat/a-exctra.adb: Likewise.
2525         * libgnat/a-exctra.ads: Likewise.
2526         * libgnat/a-exexda.adb: Likewise.
2527         * libgnat/a-exexpr.adb: Likewise.
2528         * libgnat/a-exextr.adb: Likewise.
2529         * libgnat/a-exstat.adb: Likewise.
2530         * libgnat/a-finali.adb: Likewise.
2531         * libgnat/a-finali.ads: Likewise.
2532         * libgnat/a-locale.adb: Likewise.
2533         * libgnat/a-locale.ads: Likewise.
2534         * libgnat/a-nbnbin.adb: Likewise.
2535         * libgnat/a-nbnbin__gmp.adb: Likewise.
2536         * libgnat/a-nbnbre.adb: Likewise.
2537         * libgnat/a-ngcefu.adb: Likewise.
2538         * libgnat/a-ngcoar.adb: Likewise.
2539         * libgnat/a-ngcoty.adb: Likewise.
2540         * libgnat/a-ngcoty.ads: Likewise.
2541         * libgnat/a-ngelfu.adb: Likewise.
2542         * libgnat/a-ngelfu.ads: Likewise.
2543         * libgnat/a-ngrear.adb: Likewise.
2544         * libgnat/a-ngrear.ads: Likewise.
2545         * libgnat/a-nudira.adb: Likewise.
2546         * libgnat/a-nudira.ads: Likewise.
2547         * libgnat/a-nuflra.adb: Likewise.
2548         * libgnat/a-nuflra.ads: Likewise.
2549         * libgnat/a-numaux.ads: Likewise.
2550         * libgnat/a-numaux__darwin.adb: Likewise.
2551         * libgnat/a-numaux__darwin.ads: Likewise.
2552         * libgnat/a-numaux__libc-x86.ads: Likewise.
2553         * libgnat/a-numaux__vxworks.ads: Likewise.
2554         * libgnat/a-numaux__x86.adb: Likewise.
2555         * libgnat/a-numaux__x86.ads: Likewise.
2556         * libgnat/a-rbtgbk.adb: Likewise.
2557         * libgnat/a-rbtgbk.ads: Likewise.
2558         * libgnat/a-rbtgbo.adb: Likewise.
2559         * libgnat/a-rbtgbo.ads: Likewise.
2560         * libgnat/a-rbtgso.adb: Likewise.
2561         * libgnat/a-rbtgso.ads: Likewise.
2562         * libgnat/a-sbecin.adb: Likewise.
2563         * libgnat/a-sbecin.ads: Likewise.
2564         * libgnat/a-sbhcin.adb: Likewise.
2565         * libgnat/a-sbhcin.ads: Likewise.
2566         * libgnat/a-sblcin.adb: Likewise.
2567         * libgnat/a-sblcin.ads: Likewise.
2568         * libgnat/a-secain.adb: Likewise.
2569         * libgnat/a-secain.ads: Likewise.
2570         * libgnat/a-sequio.adb: Likewise.
2571         * libgnat/a-sequio.ads: Likewise.
2572         * libgnat/a-sfecin.ads: Likewise.
2573         * libgnat/a-sfhcin.ads: Likewise.
2574         * libgnat/a-sflcin.ads: Likewise.
2575         * libgnat/a-shcain.adb: Likewise.
2576         * libgnat/a-shcain.ads: Likewise.
2577         * libgnat/a-siocst.adb: Likewise.
2578         * libgnat/a-siocst.ads: Likewise.
2579         * libgnat/a-slcain.adb: Likewise.
2580         * libgnat/a-slcain.ads: Likewise.
2581         * libgnat/a-ssicst.adb: Likewise.
2582         * libgnat/a-ssicst.ads: Likewise.
2583         * libgnat/a-stboha.adb: Likewise.
2584         * libgnat/a-stmaco.ads: Likewise.
2585         * libgnat/a-storio.adb: Likewise.
2586         * libgnat/a-strbou.adb: Likewise.
2587         * libgnat/a-strbou.ads: Likewise.
2588         * libgnat/a-stream.adb: Likewise.
2589         * libgnat/a-stream.ads: Likewise.
2590         * libgnat/a-strfix.adb: Likewise.
2591         * libgnat/a-strhas.adb: Likewise.
2592         * libgnat/a-strmap.adb: Likewise.
2593         * libgnat/a-strmap.ads: Likewise.
2594         * libgnat/a-strsea.adb: Likewise.
2595         * libgnat/a-strsea.ads: Likewise.
2596         * libgnat/a-strsup.adb: Likewise.
2597         * libgnat/a-strsup.ads: Likewise.
2598         * libgnat/a-strunb.adb: Likewise.
2599         * libgnat/a-strunb.ads: Likewise.
2600         * libgnat/a-strunb__shared.adb: Likewise.
2601         * libgnat/a-strunb__shared.ads: Likewise.
2602         * libgnat/a-ststio.adb: Likewise.
2603         * libgnat/a-ststio.ads: Likewise.
2604         * libgnat/a-stunau.adb: Likewise.
2605         * libgnat/a-stunau.ads: Likewise.
2606         * libgnat/a-stunau__shared.adb: Likewise.
2607         * libgnat/a-stunha.adb: Likewise.
2608         * libgnat/a-stuten.adb: Likewise.
2609         * libgnat/a-stwibo.adb: Likewise.
2610         * libgnat/a-stwibo.ads: Likewise.
2611         * libgnat/a-stwifi.adb: Likewise.
2612         * libgnat/a-stwiha.adb: Likewise.
2613         * libgnat/a-stwima.adb: Likewise.
2614         * libgnat/a-stwima.ads: Likewise.
2615         * libgnat/a-stwise.adb: Likewise.
2616         * libgnat/a-stwise.ads: Likewise.
2617         * libgnat/a-stwisu.adb: Likewise.
2618         * libgnat/a-stwisu.ads: Likewise.
2619         * libgnat/a-stwiun.adb: Likewise.
2620         * libgnat/a-stwiun.ads: Likewise.
2621         * libgnat/a-stwiun__shared.adb: Likewise.
2622         * libgnat/a-stwiun__shared.ads: Likewise.
2623         * libgnat/a-stzbou.adb: Likewise.
2624         * libgnat/a-stzbou.ads: Likewise.
2625         * libgnat/a-stzfix.adb: Likewise.
2626         * libgnat/a-stzhas.adb: Likewise.
2627         * libgnat/a-stzmap.adb: Likewise.
2628         * libgnat/a-stzmap.ads: Likewise.
2629         * libgnat/a-stzsea.adb: Likewise.
2630         * libgnat/a-stzsea.ads: Likewise.
2631         * libgnat/a-stzsup.adb: Likewise.
2632         * libgnat/a-stzsup.ads: Likewise.
2633         * libgnat/a-stzunb.adb: Likewise.
2634         * libgnat/a-stzunb.ads: Likewise.
2635         * libgnat/a-stzunb__shared.adb: Likewise.
2636         * libgnat/a-stzunb__shared.ads: Likewise.
2637         * libgnat/a-suecin.adb: Likewise.
2638         * libgnat/a-suecin.ads: Likewise.
2639         * libgnat/a-suenco.adb: Likewise.
2640         * libgnat/a-suenst.adb: Likewise.
2641         * libgnat/a-suewst.adb: Likewise.
2642         * libgnat/a-suezst.adb: Likewise.
2643         * libgnat/a-suhcin.adb: Likewise.
2644         * libgnat/a-suhcin.ads: Likewise.
2645         * libgnat/a-sulcin.adb: Likewise.
2646         * libgnat/a-sulcin.ads: Likewise.
2647         * libgnat/a-suteio.adb: Likewise.
2648         * libgnat/a-suteio.ads: Likewise.
2649         * libgnat/a-suteio__shared.adb: Likewise.
2650         * libgnat/a-swbwha.adb: Likewise.
2651         * libgnat/a-swmwco.ads: Likewise.
2652         * libgnat/a-swunau.adb: Likewise.
2653         * libgnat/a-swunau.ads: Likewise.
2654         * libgnat/a-swunau__shared.adb: Likewise.
2655         * libgnat/a-swuwha.adb: Likewise.
2656         * libgnat/a-swuwti.adb: Likewise.
2657         * libgnat/a-swuwti.ads: Likewise.
2658         * libgnat/a-swuwti__shared.adb: Likewise.
2659         * libgnat/a-szbzha.adb: Likewise.
2660         * libgnat/a-szmzco.ads: Likewise.
2661         * libgnat/a-szunau.adb: Likewise.
2662         * libgnat/a-szunau.ads: Likewise.
2663         * libgnat/a-szunau__shared.adb: Likewise.
2664         * libgnat/a-szuzha.adb: Likewise.
2665         * libgnat/a-szuzti.adb: Likewise.
2666         * libgnat/a-szuzti.ads: Likewise.
2667         * libgnat/a-szuzti__shared.adb: Likewise.
2668         * libgnat/a-tags.adb: Likewise.
2669         * libgnat/a-tags.ads: Likewise.
2670         * libgnat/a-teioed.adb: Likewise.
2671         * libgnat/a-teioed.ads: Likewise.
2672         * libgnat/a-textio.adb: Likewise.
2673         * libgnat/a-textio.ads: Likewise.
2674         * libgnat/a-tiboio.adb: Likewise.
2675         * libgnat/a-ticoau.adb: Likewise.
2676         * libgnat/a-ticoau.ads: Likewise.
2677         * libgnat/a-ticoio.adb: Likewise.
2678         * libgnat/a-ticoio.ads: Likewise.
2679         * libgnat/a-tideau.adb: Likewise.
2680         * libgnat/a-tideau.ads: Likewise.
2681         * libgnat/a-tideio.adb: Likewise.
2682         * libgnat/a-tideio.ads: Likewise.
2683         * libgnat/a-tienau.adb: Likewise.
2684         * libgnat/a-tienau.ads: Likewise.
2685         * libgnat/a-tienio.adb: Likewise.
2686         * libgnat/a-tifiio.adb: Likewise.
2687         * libgnat/a-tiflau.adb: Likewise.
2688         * libgnat/a-tiflau.ads: Likewise.
2689         * libgnat/a-tiflio.adb: Likewise.
2690         * libgnat/a-tiflio.ads: Likewise.
2691         * libgnat/a-tigeau.adb: Likewise.
2692         * libgnat/a-tigeau.ads: Likewise.
2693         * libgnat/a-tigeli.adb: Likewise.
2694         * libgnat/a-tiinau.adb: Likewise.
2695         * libgnat/a-tiinau.ads: Likewise.
2696         * libgnat/a-tiinio.adb: Likewise.
2697         * libgnat/a-tiinio.ads: Likewise.
2698         * libgnat/a-timoau.adb: Likewise.
2699         * libgnat/a-timoau.ads: Likewise.
2700         * libgnat/a-timoio.adb: Likewise.
2701         * libgnat/a-timoio.ads: Likewise.
2702         * libgnat/a-tiocst.adb: Likewise.
2703         * libgnat/a-tiocst.ads: Likewise.
2704         * libgnat/a-tirsfi.adb: Likewise.
2705         * libgnat/a-tirsfi.ads: Likewise.
2706         * libgnat/a-titest.adb: Likewise.
2707         * libgnat/a-undesu.adb: Likewise.
2708         * libgnat/a-wichha.adb: Likewise.
2709         * libgnat/a-wichun.adb: Likewise.
2710         * libgnat/a-wichun.ads: Likewise.
2711         * libgnat/a-witeio.adb: Likewise.
2712         * libgnat/a-witeio.ads: Likewise.
2713         * libgnat/a-wrstfi.adb: Likewise.
2714         * libgnat/a-wrstfi.ads: Likewise.
2715         * libgnat/a-wtcoau.adb: Likewise.
2716         * libgnat/a-wtcoau.ads: Likewise.
2717         * libgnat/a-wtcoio.adb: Likewise.
2718         * libgnat/a-wtcstr.adb: Likewise.
2719         * libgnat/a-wtcstr.ads: Likewise.
2720         * libgnat/a-wtdeau.adb: Likewise.
2721         * libgnat/a-wtdeau.ads: Likewise.
2722         * libgnat/a-wtdeio.adb: Likewise.
2723         * libgnat/a-wtedit.adb: Likewise.
2724         * libgnat/a-wtedit.ads: Likewise.
2725         * libgnat/a-wtenau.adb: Likewise.
2726         * libgnat/a-wtenau.ads: Likewise.
2727         * libgnat/a-wtenio.adb: Likewise.
2728         * libgnat/a-wtfiio.adb: Likewise.
2729         * libgnat/a-wtflau.adb: Likewise.
2730         * libgnat/a-wtflau.ads: Likewise.
2731         * libgnat/a-wtflio.adb: Likewise.
2732         * libgnat/a-wtgeau.adb: Likewise.
2733         * libgnat/a-wtgeau.ads: Likewise.
2734         * libgnat/a-wtinau.adb: Likewise.
2735         * libgnat/a-wtinau.ads: Likewise.
2736         * libgnat/a-wtinio.adb: Likewise.
2737         * libgnat/a-wtmoau.adb: Likewise.
2738         * libgnat/a-wtmoau.ads: Likewise.
2739         * libgnat/a-wtmoio.adb: Likewise.
2740         * libgnat/a-wtmoio.ads: Likewise.
2741         * libgnat/a-wttest.adb: Likewise.
2742         * libgnat/a-wwboio.adb: Likewise.
2743         * libgnat/a-zchhan.adb: Likewise.
2744         * libgnat/a-zchuni.adb: Likewise.
2745         * libgnat/a-zchuni.ads: Likewise.
2746         * libgnat/a-zrstfi.adb: Likewise.
2747         * libgnat/a-zrstfi.ads: Likewise.
2748         * libgnat/a-ztcoau.adb: Likewise.
2749         * libgnat/a-ztcoio.adb: Likewise.
2750         * libgnat/a-ztcstr.adb: Likewise.
2751         * libgnat/a-ztcstr.ads: Likewise.
2752         * libgnat/a-ztdeau.adb: Likewise.
2753         * libgnat/a-ztdeau.ads: Likewise.
2754         * libgnat/a-ztdeio.adb: Likewise.
2755         * libgnat/a-ztedit.adb: Likewise.
2756         * libgnat/a-ztedit.ads: Likewise.
2757         * libgnat/a-ztenau.adb: Likewise.
2758         * libgnat/a-ztenau.ads: Likewise.
2759         * libgnat/a-ztenio.adb: Likewise.
2760         * libgnat/a-ztexio.adb: Likewise.
2761         * libgnat/a-ztexio.ads: Likewise.
2762         * libgnat/a-ztfiio.adb: Likewise.
2763         * libgnat/a-ztflau.adb: Likewise.
2764         * libgnat/a-ztflau.ads: Likewise.
2765         * libgnat/a-ztflio.adb: Likewise.
2766         * libgnat/a-ztgeau.adb: Likewise.
2767         * libgnat/a-ztgeau.ads: Likewise.
2768         * libgnat/a-ztinau.adb: Likewise.
2769         * libgnat/a-ztinau.ads: Likewise.
2770         * libgnat/a-ztinio.adb: Likewise.
2771         * libgnat/a-ztmoau.adb: Likewise.
2772         * libgnat/a-ztmoau.ads: Likewise.
2773         * libgnat/a-ztmoio.adb: Likewise.
2774         * libgnat/a-zttest.adb: Likewise.
2775         * libgnat/a-zzboio.adb: Likewise.
2776         * libgnat/g-allein.ads: Likewise.
2777         * libgnat/g-alleve.adb: Likewise.
2778         * libgnat/g-alleve.ads: Likewise.
2779         * libgnat/g-alleve__hard.adb: Likewise.
2780         * libgnat/g-alleve__hard.ads: Likewise.
2781         * libgnat/g-altcon.adb: Likewise.
2782         * libgnat/g-altcon.ads: Likewise.
2783         * libgnat/g-altive.ads: Likewise.
2784         * libgnat/g-alveop.adb: Likewise.
2785         * libgnat/g-alveop.ads: Likewise.
2786         * libgnat/g-alvety.ads: Likewise.
2787         * libgnat/g-alvevi.ads: Likewise.
2788         * libgnat/g-arrspl.adb: Likewise.
2789         * libgnat/g-arrspl.ads: Likewise.
2790         * libgnat/g-awk.adb: Likewise.
2791         * libgnat/g-awk.ads: Likewise.
2792         * libgnat/g-binenv.adb: Likewise.
2793         * libgnat/g-binenv.ads: Likewise.
2794         * libgnat/g-brapre.ads: Likewise.
2795         * libgnat/g-bubsor.adb: Likewise.
2796         * libgnat/g-bubsor.ads: Likewise.
2797         * libgnat/g-busora.adb: Likewise.
2798         * libgnat/g-busora.ads: Likewise.
2799         * libgnat/g-busorg.adb: Likewise.
2800         * libgnat/g-busorg.ads: Likewise.
2801         * libgnat/g-byorma.adb: Likewise.
2802         * libgnat/g-byorma.ads: Likewise.
2803         * libgnat/g-bytswa.adb: Likewise.
2804         * libgnat/g-bytswa.ads: Likewise.
2805         * libgnat/g-calend.adb: Likewise.
2806         * libgnat/g-calend.ads: Likewise.
2807         * libgnat/g-casuti.adb: Likewise.
2808         * libgnat/g-casuti.ads: Likewise.
2809         * libgnat/g-catiio.adb: Likewise.
2810         * libgnat/g-catiio.ads: Likewise.
2811         * libgnat/g-cgi.adb: Likewise.
2812         * libgnat/g-cgi.ads: Likewise.
2813         * libgnat/g-cgicoo.adb: Likewise.
2814         * libgnat/g-cgicoo.ads: Likewise.
2815         * libgnat/g-cgideb.adb: Likewise.
2816         * libgnat/g-cgideb.ads: Likewise.
2817         * libgnat/g-comlin.adb: Likewise.
2818         * libgnat/g-comlin.ads: Likewise.
2819         * libgnat/g-comver.adb: Likewise.
2820         * libgnat/g-comver.ads: Likewise.
2821         * libgnat/g-cppexc.adb: Likewise.
2822         * libgnat/g-cppexc.ads: Likewise.
2823         * libgnat/g-crc32.adb: Likewise.
2824         * libgnat/g-crc32.ads: Likewise.
2825         * libgnat/g-ctrl_c.adb: Likewise.
2826         * libgnat/g-ctrl_c.ads: Likewise.
2827         * libgnat/g-curexc.ads: Likewise.
2828         * libgnat/g-debpoo.adb: Likewise.
2829         * libgnat/g-debpoo.ads: Likewise.
2830         * libgnat/g-debuti.adb: Likewise.
2831         * libgnat/g-debuti.ads: Likewise.
2832         * libgnat/g-decstr.adb: Likewise.
2833         * libgnat/g-decstr.ads: Likewise.
2834         * libgnat/g-deutst.ads: Likewise.
2835         * libgnat/g-diopit.adb: Likewise.
2836         * libgnat/g-diopit.ads: Likewise.
2837         * libgnat/g-dirope.adb: Likewise.
2838         * libgnat/g-dirope.ads: Likewise.
2839         * libgnat/g-dynhta.adb: Likewise.
2840         * libgnat/g-dynhta.ads: Likewise.
2841         * libgnat/g-dyntab.adb: Likewise.
2842         * libgnat/g-dyntab.ads: Likewise.
2843         * libgnat/g-eacodu.adb: Likewise.
2844         * libgnat/g-encstr.adb: Likewise.
2845         * libgnat/g-encstr.ads: Likewise.
2846         * libgnat/g-enutst.ads: Likewise.
2847         * libgnat/g-excact.adb: Likewise.
2848         * libgnat/g-excact.ads: Likewise.
2849         * libgnat/g-except.ads: Likewise.
2850         * libgnat/g-exctra.adb: Likewise.
2851         * libgnat/g-exctra.ads: Likewise.
2852         * libgnat/g-expect.adb: Likewise.
2853         * libgnat/g-expect.ads: Likewise.
2854         * libgnat/g-exptty.adb: Likewise.
2855         * libgnat/g-exptty.ads: Likewise.
2856         * libgnat/g-flocon.ads: Likewise.
2857         * libgnat/g-forstr.adb: Likewise.
2858         * libgnat/g-forstr.ads: Likewise.
2859         * libgnat/g-graphs.adb: Likewise.
2860         * libgnat/g-graphs.ads: Likewise.
2861         * libgnat/g-heasor.adb: Likewise.
2862         * libgnat/g-heasor.ads: Likewise.
2863         * libgnat/g-hesora.adb: Likewise.
2864         * libgnat/g-hesora.ads: Likewise.
2865         * libgnat/g-hesorg.adb: Likewise.
2866         * libgnat/g-hesorg.ads: Likewise.
2867         * libgnat/g-htable.adb: Likewise.
2868         * libgnat/g-htable.ads: Likewise.
2869         * libgnat/g-io-put__vxworks.adb: Likewise.
2870         * libgnat/g-io.adb: Likewise.
2871         * libgnat/g-io.ads: Likewise.
2872         * libgnat/g-io_aux.adb: Likewise.
2873         * libgnat/g-io_aux.ads: Likewise.
2874         * libgnat/g-lists.adb: Likewise.
2875         * libgnat/g-lists.ads: Likewise.
2876         * libgnat/g-locfil.adb: Likewise.
2877         * libgnat/g-locfil.ads: Likewise.
2878         * libgnat/g-mbdira.adb: Likewise.
2879         * libgnat/g-mbdira.ads: Likewise.
2880         * libgnat/g-mbflra.adb: Likewise.
2881         * libgnat/g-mbflra.ads: Likewise.
2882         * libgnat/g-md5.adb: Likewise.
2883         * libgnat/g-md5.ads: Likewise.
2884         * libgnat/g-memdum.adb: Likewise.
2885         * libgnat/g-memdum.ads: Likewise.
2886         * libgnat/g-moreex.adb: Likewise.
2887         * libgnat/g-moreex.ads: Likewise.
2888         * libgnat/g-os_lib.adb: Likewise.
2889         * libgnat/g-os_lib.ads: Likewise.
2890         * libgnat/g-pehage.adb: Likewise.
2891         * libgnat/g-pehage.ads: Likewise.
2892         * libgnat/g-rannum.adb: Likewise.
2893         * libgnat/g-rannum.ads: Likewise.
2894         * libgnat/g-regexp.adb: Likewise.
2895         * libgnat/g-regexp.ads: Likewise.
2896         * libgnat/g-regist.adb: Likewise.
2897         * libgnat/g-regist.ads: Likewise.
2898         * libgnat/g-regpat.adb: Likewise.
2899         * libgnat/g-regpat.ads: Likewise.
2900         * libgnat/g-rewdat.adb: Likewise.
2901         * libgnat/g-rewdat.ads: Likewise.
2902         * libgnat/g-sechas.adb: Likewise.
2903         * libgnat/g-sechas.ads: Likewise.
2904         * libgnat/g-sehamd.adb: Likewise.
2905         * libgnat/g-sehamd.ads: Likewise.
2906         * libgnat/g-sehash.adb: Likewise.
2907         * libgnat/g-sehash.ads: Likewise.
2908         * libgnat/g-sercom.adb: Likewise.
2909         * libgnat/g-sercom.ads: Likewise.
2910         * libgnat/g-sercom__linux.adb: Likewise.
2911         * libgnat/g-sercom__mingw.adb: Likewise.
2912         * libgnat/g-sestin.ads: Likewise.
2913         * libgnat/g-sets.adb: Likewise.
2914         * libgnat/g-sets.ads: Likewise.
2915         * libgnat/g-sha1.adb: Likewise.
2916         * libgnat/g-sha1.ads: Likewise.
2917         * libgnat/g-sha224.ads: Likewise.
2918         * libgnat/g-sha256.ads: Likewise.
2919         * libgnat/g-sha384.ads: Likewise.
2920         * libgnat/g-sha512.ads: Likewise.
2921         * libgnat/g-shsh32.adb: Likewise.
2922         * libgnat/g-shsh32.ads: Likewise.
2923         * libgnat/g-shsh64.adb: Likewise.
2924         * libgnat/g-shsh64.ads: Likewise.
2925         * libgnat/g-shshco.adb: Likewise.
2926         * libgnat/g-shshco.ads: Likewise.
2927         * libgnat/g-soccon.ads: Likewise.
2928         * libgnat/g-socket.adb: Likewise.
2929         * libgnat/g-socket.ads: Likewise.
2930         * libgnat/g-socket__dummy.adb: Likewise.
2931         * libgnat/g-socket__dummy.ads: Likewise.
2932         * libgnat/g-socthi.adb: Likewise.
2933         * libgnat/g-socthi.ads: Likewise.
2934         * libgnat/g-socthi__dummy.adb: Likewise.
2935         * libgnat/g-socthi__dummy.ads: Likewise.
2936         * libgnat/g-socthi__mingw.adb: Likewise.
2937         * libgnat/g-socthi__mingw.ads: Likewise.
2938         * libgnat/g-socthi__vxworks.adb: Likewise.
2939         * libgnat/g-socthi__vxworks.ads: Likewise.
2940         * libgnat/g-soliop.ads: Likewise.
2941         * libgnat/g-soliop__lynxos.ads: Likewise.
2942         * libgnat/g-soliop__mingw.ads: Likewise.
2943         * libgnat/g-soliop__qnx.ads: Likewise.
2944         * libgnat/g-soliop__solaris.ads: Likewise.
2945         * libgnat/g-sothco.adb: Likewise.
2946         * libgnat/g-sothco.ads: Likewise.
2947         * libgnat/g-sothco__dummy.adb: Likewise.
2948         * libgnat/g-sothco__dummy.ads: Likewise.
2949         * libgnat/g-souinf.ads: Likewise.
2950         * libgnat/g-spchge.adb: Likewise.
2951         * libgnat/g-spchge.ads: Likewise.
2952         * libgnat/g-speche.adb: Likewise.
2953         * libgnat/g-speche.ads: Likewise.
2954         * libgnat/g-spipat.adb: Likewise.
2955         * libgnat/g-spipat.ads: Likewise.
2956         * libgnat/g-spitbo.adb: Likewise.
2957         * libgnat/g-spitbo.ads: Likewise.
2958         * libgnat/g-sptabo.ads: Likewise.
2959         * libgnat/g-sptain.ads: Likewise.
2960         * libgnat/g-sptavs.ads: Likewise.
2961         * libgnat/g-sse.ads: Likewise.
2962         * libgnat/g-ssvety.ads: Likewise.
2963         * libgnat/g-sthcso.adb: Likewise.
2964         * libgnat/g-stheme.adb: Likewise.
2965         * libgnat/g-strhas.ads: Likewise.
2966         * libgnat/g-string.adb: Likewise.
2967         * libgnat/g-string.ads: Likewise.
2968         * libgnat/g-strspl.ads: Likewise.
2969         * libgnat/g-stseme.adb: Likewise.
2970         * libgnat/g-stsifd__sockets.adb: Likewise.
2971         * libgnat/g-table.adb: Likewise.
2972         * libgnat/g-table.ads: Likewise.
2973         * libgnat/g-tasloc.adb: Likewise.
2974         * libgnat/g-tasloc.ads: Likewise.
2975         * libgnat/g-timsta.adb: Likewise.
2976         * libgnat/g-timsta.ads: Likewise.
2977         * libgnat/g-traceb.adb: Likewise.
2978         * libgnat/g-traceb.ads: Likewise.
2979         * libgnat/g-trasym.adb: Likewise.
2980         * libgnat/g-trasym.ads: Likewise.
2981         * libgnat/g-tty.adb: Likewise.
2982         * libgnat/g-tty.ads: Likewise.
2983         * libgnat/g-u3spch.adb: Likewise.
2984         * libgnat/g-u3spch.ads: Likewise.
2985         * libgnat/g-utf_32.adb: Likewise.
2986         * libgnat/g-utf_32.ads: Likewise.
2987         * libgnat/g-wispch.adb: Likewise.
2988         * libgnat/g-wispch.ads: Likewise.
2989         * libgnat/g-wistsp.ads: Likewise.
2990         * libgnat/g-zspche.adb: Likewise.
2991         * libgnat/g-zspche.ads: Likewise.
2992         * libgnat/g-zstspl.ads: Likewise.
2993         * libgnat/gnat.ads: Likewise.
2994         * libgnat/i-c.adb: Likewise.
2995         * libgnat/i-cexten.ads: Likewise.
2996         * libgnat/i-cobol.adb: Likewise.
2997         * libgnat/i-cobol.ads: Likewise.
2998         * libgnat/i-cpoint.adb: Likewise.
2999         * libgnat/i-cpoint.ads: Likewise.
3000         * libgnat/i-cstrea.adb: Likewise.
3001         * libgnat/i-cstrea.ads: Likewise.
3002         * libgnat/i-cstrin.adb: Likewise.
3003         * libgnat/i-cstrin.ads: Likewise.
3004         * libgnat/i-fortra.adb: Likewise.
3005         * libgnat/i-pacdec.adb: Likewise.
3006         * libgnat/i-pacdec.ads: Likewise.
3007         * libgnat/i-vxwoio.adb: Likewise.
3008         * libgnat/i-vxwoio.ads: Likewise.
3009         * libgnat/i-vxwork.ads: Likewise.
3010         * libgnat/i-vxwork__x86.ads: Likewise.
3011         * libgnat/interfac.ads: Likewise.
3012         * libgnat/memtrack.adb: Likewise.
3013         * libgnat/s-addima.adb: Likewise.
3014         * libgnat/s-addima.ads: Likewise.
3015         * libgnat/s-addope.adb: Likewise.
3016         * libgnat/s-addope.ads: Likewise.
3017         * libgnat/s-aotase.adb: Likewise.
3018         * libgnat/s-aotase.ads: Likewise.
3019         * libgnat/s-arit64.adb: Likewise.
3020         * libgnat/s-arit64.ads: Likewise.
3021         * libgnat/s-assert.adb: Likewise.
3022         * libgnat/s-assert.ads: Likewise.
3023         * libgnat/s-atacco.adb: Likewise.
3024         * libgnat/s-atacco.ads: Likewise.
3025         * libgnat/s-atocou.adb: Likewise.
3026         * libgnat/s-atocou.ads: Likewise.
3027         * libgnat/s-atocou__builtin.adb: Likewise.
3028         * libgnat/s-atocou__x86.adb: Likewise.
3029         * libgnat/s-atoope.ads: Likewise.
3030         * libgnat/s-atopar.adb: Likewise.
3031         * libgnat/s-atopar.ads: Likewise.
3032         * libgnat/s-atopex.adb: Likewise.
3033         * libgnat/s-atopex.ads: Likewise.
3034         * libgnat/s-atopri.adb: Likewise.
3035         * libgnat/s-atopri.ads: Likewise.
3036         * libgnat/s-auxdec.adb: Likewise.
3037         * libgnat/s-auxdec.ads: Likewise.
3038         * libgnat/s-bignum.adb: Likewise.
3039         * libgnat/s-bignum.ads: Likewise.
3040         * libgnat/s-bitfie.ads: Likewise.
3041         * libgnat/s-bitops.adb: Likewise.
3042         * libgnat/s-bitops.ads: Likewise.
3043         * libgnat/s-bituti.adb: Likewise.
3044         * libgnat/s-bituti.ads: Likewise.
3045         * libgnat/s-boarop.ads: Likewise.
3046         * libgnat/s-boustr.adb: Likewise.
3047         * libgnat/s-boustr.ads: Likewise.
3048         * libgnat/s-bytswa.ads: Likewise.
3049         * libgnat/s-carsi8.adb: Likewise.
3050         * libgnat/s-carsi8.ads: Likewise.
3051         * libgnat/s-carun8.adb: Likewise.
3052         * libgnat/s-carun8.ads: Likewise.
3053         * libgnat/s-casi16.adb: Likewise.
3054         * libgnat/s-casi16.ads: Likewise.
3055         * libgnat/s-casi32.adb: Likewise.
3056         * libgnat/s-casi32.ads: Likewise.
3057         * libgnat/s-casi64.adb: Likewise.
3058         * libgnat/s-casi64.ads: Likewise.
3059         * libgnat/s-casuti.adb: Likewise.
3060         * libgnat/s-casuti.ads: Likewise.
3061         * libgnat/s-caun16.adb: Likewise.
3062         * libgnat/s-caun16.ads: Likewise.
3063         * libgnat/s-caun32.adb: Likewise.
3064         * libgnat/s-caun32.ads: Likewise.
3065         * libgnat/s-caun64.adb: Likewise.
3066         * libgnat/s-caun64.ads: Likewise.
3067         * libgnat/s-chepoo.ads: Likewise.
3068         * libgnat/s-commun.adb: Likewise.
3069         * libgnat/s-commun.ads: Likewise.
3070         * libgnat/s-conca2.adb: Likewise.
3071         * libgnat/s-conca2.ads: Likewise.
3072         * libgnat/s-conca3.adb: Likewise.
3073         * libgnat/s-conca3.ads: Likewise.
3074         * libgnat/s-conca4.adb: Likewise.
3075         * libgnat/s-conca4.ads: Likewise.
3076         * libgnat/s-conca5.adb: Likewise.
3077         * libgnat/s-conca5.ads: Likewise.
3078         * libgnat/s-conca6.adb: Likewise.
3079         * libgnat/s-conca6.ads: Likewise.
3080         * libgnat/s-conca7.adb: Likewise.
3081         * libgnat/s-conca7.ads: Likewise.
3082         * libgnat/s-conca8.adb: Likewise.
3083         * libgnat/s-conca8.ads: Likewise.
3084         * libgnat/s-conca9.adb: Likewise.
3085         * libgnat/s-conca9.ads: Likewise.
3086         * libgnat/s-crc32.adb: Likewise.
3087         * libgnat/s-crc32.ads: Likewise.
3088         * libgnat/s-crtl.ads: Likewise.
3089         * libgnat/s-dfmkio.ads: Likewise.
3090         * libgnat/s-dfmopr.ads: Likewise.
3091         * libgnat/s-dgmgop.ads: Likewise.
3092         * libgnat/s-diflio.adb: Likewise.
3093         * libgnat/s-diflio.ads: Likewise.
3094         * libgnat/s-diflmk.ads: Likewise.
3095         * libgnat/s-digemk.ads: Likewise.
3096         * libgnat/s-diinio.adb: Likewise.
3097         * libgnat/s-diinio.ads: Likewise.
3098         * libgnat/s-dilomk.ads: Likewise.
3099         * libgnat/s-dim.ads: Likewise.
3100         * libgnat/s-dimkio.ads: Likewise.
3101         * libgnat/s-dimmks.ads: Likewise.
3102         * libgnat/s-direio.adb: Likewise.
3103         * libgnat/s-direio.ads: Likewise.
3104         * libgnat/s-dlmkio.ads: Likewise.
3105         * libgnat/s-dlmopr.ads: Likewise.
3106         * libgnat/s-dmotpr.ads: Likewise.
3107         * libgnat/s-dsaser.ads: Likewise.
3108         * libgnat/s-dwalin.adb: Likewise.
3109         * libgnat/s-dwalin.ads: Likewise.
3110         * libgnat/s-elaall.adb: Likewise.
3111         * libgnat/s-elaall.ads: Likewise.
3112         * libgnat/s-excdeb.adb: Likewise.
3113         * libgnat/s-excdeb.ads: Likewise.
3114         * libgnat/s-except.adb: Likewise.
3115         * libgnat/s-except.ads: Likewise.
3116         * libgnat/s-excmac__arm.adb: Likewise.
3117         * libgnat/s-excmac__arm.ads: Likewise.
3118         * libgnat/s-excmac__gcc.adb: Likewise.
3119         * libgnat/s-excmac__gcc.ads: Likewise.
3120         * libgnat/s-exctab.adb: Likewise.
3121         * libgnat/s-exctab.ads: Likewise.
3122         * libgnat/s-exctra.adb: Likewise.
3123         * libgnat/s-exctra.ads: Likewise.
3124         * libgnat/s-exnint.adb: Likewise.
3125         * libgnat/s-exnint.ads: Likewise.
3126         * libgnat/s-exnllf.adb: Likewise.
3127         * libgnat/s-exnllf.ads: Likewise.
3128         * libgnat/s-exnlli.adb: Likewise.
3129         * libgnat/s-exnlli.ads: Likewise.
3130         * libgnat/s-expint.adb: Likewise.
3131         * libgnat/s-expint.ads: Likewise.
3132         * libgnat/s-explli.adb: Likewise.
3133         * libgnat/s-explli.ads: Likewise.
3134         * libgnat/s-expllu.adb: Likewise.
3135         * libgnat/s-expllu.ads: Likewise.
3136         * libgnat/s-expmod.adb: Likewise.
3137         * libgnat/s-expmod.ads: Likewise.
3138         * libgnat/s-expuns.adb: Likewise.
3139         * libgnat/s-expuns.ads: Likewise.
3140         * libgnat/s-fatflt.ads: Likewise.
3141         * libgnat/s-fatgen.adb: Likewise.
3142         * libgnat/s-fatgen.ads: Likewise.
3143         * libgnat/s-fatlfl.ads: Likewise.
3144         * libgnat/s-fatllf.ads: Likewise.
3145         * libgnat/s-fatsfl.ads: Likewise.
3146         * libgnat/s-ficobl.ads: Likewise.
3147         * libgnat/s-filatt.ads: Likewise.
3148         * libgnat/s-fileio.adb: Likewise.
3149         * libgnat/s-fileio.ads: Likewise.
3150         * libgnat/s-finmas.adb: Likewise.
3151         * libgnat/s-finmas.ads: Likewise.
3152         * libgnat/s-finroo.adb: Likewise.
3153         * libgnat/s-finroo.ads: Likewise.
3154         * libgnat/s-flocon.adb: Likewise.
3155         * libgnat/s-flocon.ads: Likewise.
3156         * libgnat/s-flocon__none.adb: Likewise.
3157         * libgnat/s-fore.adb: Likewise.
3158         * libgnat/s-fore.ads: Likewise.
3159         * libgnat/s-gearop.adb: Likewise.
3160         * libgnat/s-gearop.ads: Likewise.
3161         * libgnat/s-genbig.adb: Likewise.
3162         * libgnat/s-genbig.ads: Likewise.
3163         * libgnat/s-geveop.adb: Likewise.
3164         * libgnat/s-geveop.ads: Likewise.
3165         * libgnat/s-gloloc.adb: Likewise.
3166         * libgnat/s-gloloc.ads: Likewise.
3167         * libgnat/s-gloloc__mingw.adb: Likewise.
3168         * libgnat/s-htable.adb: Likewise.
3169         * libgnat/s-htable.ads: Likewise.
3170         * libgnat/s-imenne.adb: Likewise.
3171         * libgnat/s-imenne.ads: Likewise.
3172         * libgnat/s-imgbiu.adb: Likewise.
3173         * libgnat/s-imgbiu.ads: Likewise.
3174         * libgnat/s-imgboo.adb: Likewise.
3175         * libgnat/s-imgboo.ads: Likewise.
3176         * libgnat/s-imgcha.adb: Likewise.
3177         * libgnat/s-imgcha.ads: Likewise.
3178         * libgnat/s-imgdec.adb: Likewise.
3179         * libgnat/s-imgdec.ads: Likewise.
3180         * libgnat/s-imgenu.adb: Likewise.
3181         * libgnat/s-imgenu.ads: Likewise.
3182         * libgnat/s-imgint.adb: Likewise.
3183         * libgnat/s-imgint.ads: Likewise.
3184         * libgnat/s-imgllb.adb: Likewise.
3185         * libgnat/s-imgllb.ads: Likewise.
3186         * libgnat/s-imglld.adb: Likewise.
3187         * libgnat/s-imglld.ads: Likewise.
3188         * libgnat/s-imglli.adb: Likewise.
3189         * libgnat/s-imglli.ads: Likewise.
3190         * libgnat/s-imgllu.adb: Likewise.
3191         * libgnat/s-imgllu.ads: Likewise.
3192         * libgnat/s-imgllw.adb: Likewise.
3193         * libgnat/s-imgllw.ads: Likewise.
3194         * libgnat/s-imgrea.adb: Likewise.
3195         * libgnat/s-imgrea.ads: Likewise.
3196         * libgnat/s-imguns.adb: Likewise.
3197         * libgnat/s-imguns.ads: Likewise.
3198         * libgnat/s-imgwch.adb: Likewise.
3199         * libgnat/s-imgwch.ads: Likewise.
3200         * libgnat/s-imgwiu.adb: Likewise.
3201         * libgnat/s-imgwiu.ads: Likewise.
3202         * libgnat/s-io.adb: Likewise.
3203         * libgnat/s-io.ads: Likewise.
3204         * libgnat/s-llflex.ads: Likewise.
3205         * libgnat/s-maccod.ads: Likewise.
3206         * libgnat/s-mantis.adb: Likewise.
3207         * libgnat/s-mantis.ads: Likewise.
3208         * libgnat/s-mastop.adb: Likewise.
3209         * libgnat/s-mastop.ads: Likewise.
3210         * libgnat/s-memcop.ads: Likewise.
3211         * libgnat/s-memory.adb: Likewise.
3212         * libgnat/s-memory.ads: Likewise.
3213         * libgnat/s-mmap.adb: Likewise.
3214         * libgnat/s-mmap.ads: Likewise.
3215         * libgnat/s-mmauni__long.ads: Likewise.
3216         * libgnat/s-mmosin__mingw.adb: Likewise.
3217         * libgnat/s-mmosin__mingw.ads: Likewise.
3218         * libgnat/s-mmosin__unix.adb: Likewise.
3219         * libgnat/s-mmosin__unix.ads: Likewise.
3220         * libgnat/s-multip.adb: Likewise.
3221         * libgnat/s-objrea.adb: Likewise.
3222         * libgnat/s-objrea.ads: Likewise.
3223         * libgnat/s-optide.adb: Likewise.
3224         * libgnat/s-os_lib.adb: Likewise.
3225         * libgnat/s-os_lib.ads: Likewise.
3226         * libgnat/s-osprim.ads: Likewise.
3227         * libgnat/s-osprim__darwin.adb: Likewise.
3228         * libgnat/s-osprim__lynxos.ads: Likewise.
3229         * libgnat/s-osprim__mingw.adb: Likewise.
3230         * libgnat/s-osprim__posix.adb: Likewise.
3231         * libgnat/s-osprim__posix2008.adb: Likewise.
3232         * libgnat/s-osprim__rtems.adb: Likewise.
3233         * libgnat/s-osprim__solaris.adb: Likewise.
3234         * libgnat/s-osprim__unix.adb: Likewise.
3235         * libgnat/s-osprim__vxworks.adb: Likewise.
3236         * libgnat/s-osprim__x32.adb: Likewise.
3237         * libgnat/s-osvers__vxworks-653.ads: Likewise.
3238         * libgnat/s-pack03.adb: Likewise.
3239         * libgnat/s-pack03.ads: Likewise.
3240         * libgnat/s-pack05.adb: Likewise.
3241         * libgnat/s-pack05.ads: Likewise.
3242         * libgnat/s-pack06.adb: Likewise.
3243         * libgnat/s-pack06.ads: Likewise.
3244         * libgnat/s-pack07.adb: Likewise.
3245         * libgnat/s-pack07.ads: Likewise.
3246         * libgnat/s-pack09.adb: Likewise.
3247         * libgnat/s-pack09.ads: Likewise.
3248         * libgnat/s-pack10.adb: Likewise.
3249         * libgnat/s-pack10.ads: Likewise.
3250         * libgnat/s-pack11.adb: Likewise.
3251         * libgnat/s-pack11.ads: Likewise.
3252         * libgnat/s-pack12.adb: Likewise.
3253         * libgnat/s-pack12.ads: Likewise.
3254         * libgnat/s-pack13.adb: Likewise.
3255         * libgnat/s-pack13.ads: Likewise.
3256         * libgnat/s-pack14.adb: Likewise.
3257         * libgnat/s-pack14.ads: Likewise.
3258         * libgnat/s-pack15.adb: Likewise.
3259         * libgnat/s-pack15.ads: Likewise.
3260         * libgnat/s-pack17.adb: Likewise.
3261         * libgnat/s-pack17.ads: Likewise.
3262         * libgnat/s-pack18.adb: Likewise.
3263         * libgnat/s-pack18.ads: Likewise.
3264         * libgnat/s-pack19.adb: Likewise.
3265         * libgnat/s-pack19.ads: Likewise.
3266         * libgnat/s-pack20.adb: Likewise.
3267         * libgnat/s-pack20.ads: Likewise.
3268         * libgnat/s-pack21.adb: Likewise.
3269         * libgnat/s-pack21.ads: Likewise.
3270         * libgnat/s-pack22.adb: Likewise.
3271         * libgnat/s-pack22.ads: Likewise.
3272         * libgnat/s-pack23.adb: Likewise.
3273         * libgnat/s-pack23.ads: Likewise.
3274         * libgnat/s-pack24.adb: Likewise.
3275         * libgnat/s-pack24.ads: Likewise.
3276         * libgnat/s-pack25.adb: Likewise.
3277         * libgnat/s-pack25.ads: Likewise.
3278         * libgnat/s-pack26.adb: Likewise.
3279         * libgnat/s-pack26.ads: Likewise.
3280         * libgnat/s-pack27.adb: Likewise.
3281         * libgnat/s-pack27.ads: Likewise.
3282         * libgnat/s-pack28.adb: Likewise.
3283         * libgnat/s-pack28.ads: Likewise.
3284         * libgnat/s-pack29.adb: Likewise.
3285         * libgnat/s-pack29.ads: Likewise.
3286         * libgnat/s-pack30.adb: Likewise.
3287         * libgnat/s-pack30.ads: Likewise.
3288         * libgnat/s-pack31.adb: Likewise.
3289         * libgnat/s-pack31.ads: Likewise.
3290         * libgnat/s-pack33.adb: Likewise.
3291         * libgnat/s-pack33.ads: Likewise.
3292         * libgnat/s-pack34.adb: Likewise.
3293         * libgnat/s-pack34.ads: Likewise.
3294         * libgnat/s-pack35.adb: Likewise.
3295         * libgnat/s-pack35.ads: Likewise.
3296         * libgnat/s-pack36.adb: Likewise.
3297         * libgnat/s-pack36.ads: Likewise.
3298         * libgnat/s-pack37.adb: Likewise.
3299         * libgnat/s-pack37.ads: Likewise.
3300         * libgnat/s-pack38.adb: Likewise.
3301         * libgnat/s-pack38.ads: Likewise.
3302         * libgnat/s-pack39.adb: Likewise.
3303         * libgnat/s-pack39.ads: Likewise.
3304         * libgnat/s-pack40.adb: Likewise.
3305         * libgnat/s-pack40.ads: Likewise.
3306         * libgnat/s-pack41.adb: Likewise.
3307         * libgnat/s-pack41.ads: Likewise.
3308         * libgnat/s-pack42.adb: Likewise.
3309         * libgnat/s-pack42.ads: Likewise.
3310         * libgnat/s-pack43.adb: Likewise.
3311         * libgnat/s-pack43.ads: Likewise.
3312         * libgnat/s-pack44.adb: Likewise.
3313         * libgnat/s-pack44.ads: Likewise.
3314         * libgnat/s-pack45.adb: Likewise.
3315         * libgnat/s-pack45.ads: Likewise.
3316         * libgnat/s-pack46.adb: Likewise.
3317         * libgnat/s-pack46.ads: Likewise.
3318         * libgnat/s-pack47.adb: Likewise.
3319         * libgnat/s-pack47.ads: Likewise.
3320         * libgnat/s-pack48.adb: Likewise.
3321         * libgnat/s-pack48.ads: Likewise.
3322         * libgnat/s-pack49.adb: Likewise.
3323         * libgnat/s-pack49.ads: Likewise.
3324         * libgnat/s-pack50.adb: Likewise.
3325         * libgnat/s-pack50.ads: Likewise.
3326         * libgnat/s-pack51.adb: Likewise.
3327         * libgnat/s-pack51.ads: Likewise.
3328         * libgnat/s-pack52.adb: Likewise.
3329         * libgnat/s-pack52.ads: Likewise.
3330         * libgnat/s-pack53.adb: Likewise.
3331         * libgnat/s-pack53.ads: Likewise.
3332         * libgnat/s-pack54.adb: Likewise.
3333         * libgnat/s-pack54.ads: Likewise.
3334         * libgnat/s-pack55.adb: Likewise.
3335         * libgnat/s-pack55.ads: Likewise.
3336         * libgnat/s-pack56.adb: Likewise.
3337         * libgnat/s-pack56.ads: Likewise.
3338         * libgnat/s-pack57.adb: Likewise.
3339         * libgnat/s-pack57.ads: Likewise.
3340         * libgnat/s-pack58.adb: Likewise.
3341         * libgnat/s-pack58.ads: Likewise.
3342         * libgnat/s-pack59.adb: Likewise.
3343         * libgnat/s-pack59.ads: Likewise.
3344         * libgnat/s-pack60.adb: Likewise.
3345         * libgnat/s-pack60.ads: Likewise.
3346         * libgnat/s-pack61.adb: Likewise.
3347         * libgnat/s-pack61.ads: Likewise.
3348         * libgnat/s-pack62.adb: Likewise.
3349         * libgnat/s-pack62.ads: Likewise.
3350         * libgnat/s-pack63.adb: Likewise.
3351         * libgnat/s-pack63.ads: Likewise.
3352         * libgnat/s-parame.adb: Likewise.
3353         * libgnat/s-parame.ads: Likewise.
3354         * libgnat/s-parame__ae653.ads: Likewise.
3355         * libgnat/s-parame__hpux.ads: Likewise.
3356         * libgnat/s-parame__rtems.adb: Likewise.
3357         * libgnat/s-parame__vxworks.adb: Likewise.
3358         * libgnat/s-parame__vxworks.ads: Likewise.
3359         * libgnat/s-parint.adb: Likewise.
3360         * libgnat/s-parint.ads: Likewise.
3361         * libgnat/s-pooglo.adb: Likewise.
3362         * libgnat/s-pooglo.ads: Likewise.
3363         * libgnat/s-pooloc.adb: Likewise.
3364         * libgnat/s-pooloc.ads: Likewise.
3365         * libgnat/s-poosiz.adb: Likewise.
3366         * libgnat/s-poosiz.ads: Likewise.
3367         * libgnat/s-powtab.ads: Likewise.
3368         * libgnat/s-purexc.ads: Likewise.
3369         * libgnat/s-rannum.adb: Likewise.
3370         * libgnat/s-rannum.ads: Likewise.
3371         * libgnat/s-ransee.adb: Likewise.
3372         * libgnat/s-ransee.ads: Likewise.
3373         * libgnat/s-regexp.adb: Likewise.
3374         * libgnat/s-regexp.ads: Likewise.
3375         * libgnat/s-regpat.adb: Likewise.
3376         * libgnat/s-regpat.ads: Likewise.
3377         * libgnat/s-resfil.adb: Likewise.
3378         * libgnat/s-resfil.ads: Likewise.
3379         * libgnat/s-restri.adb: Likewise.
3380         * libgnat/s-restri.ads: Likewise.
3381         * libgnat/s-rident.ads: Likewise.
3382         * libgnat/s-rpc.adb: Likewise.
3383         * libgnat/s-rpc.ads: Likewise.
3384         * libgnat/s-scaval.adb: Likewise.
3385         * libgnat/s-scaval.ads: Likewise.
3386         * libgnat/s-secsta.adb: Likewise.
3387         * libgnat/s-secsta.ads: Likewise.
3388         * libgnat/s-sequio.adb: Likewise.
3389         * libgnat/s-sequio.ads: Likewise.
3390         * libgnat/s-shasto.adb: Likewise.
3391         * libgnat/s-shasto.ads: Likewise.
3392         * libgnat/s-soflin.adb: Likewise.
3393         * libgnat/s-soflin.ads: Likewise.
3394         * libgnat/s-soliin.adb: Likewise.
3395         * libgnat/s-soliin.ads: Likewise.
3396         * libgnat/s-sopco3.adb: Likewise.
3397         * libgnat/s-sopco3.ads: Likewise.
3398         * libgnat/s-sopco4.adb: Likewise.
3399         * libgnat/s-sopco4.ads: Likewise.
3400         * libgnat/s-sopco5.adb: Likewise.
3401         * libgnat/s-sopco5.ads: Likewise.
3402         * libgnat/s-spsufi.adb: Likewise.
3403         * libgnat/s-spsufi.ads: Likewise.
3404         * libgnat/s-stache.adb: Likewise.
3405         * libgnat/s-stache.ads: Likewise.
3406         * libgnat/s-stalib.adb: Likewise.
3407         * libgnat/s-stalib.ads: Likewise.
3408         * libgnat/s-stausa.adb: Likewise.
3409         * libgnat/s-stausa.ads: Likewise.
3410         * libgnat/s-stchop.adb: Likewise.
3411         * libgnat/s-stchop.ads: Likewise.
3412         * libgnat/s-stchop__limit.ads: Likewise.
3413         * libgnat/s-stchop__rtems.adb: Likewise.
3414         * libgnat/s-stchop__vxworks.adb: Likewise.
3415         * libgnat/s-stoele.adb: Likewise.
3416         * libgnat/s-stoele.ads: Likewise.
3417         * libgnat/s-stopoo.adb: Likewise.
3418         * libgnat/s-stopoo.ads: Likewise.
3419         * libgnat/s-stposu.adb: Likewise.
3420         * libgnat/s-stposu.ads: Likewise.
3421         * libgnat/s-stratt.adb: Likewise.
3422         * libgnat/s-stratt.ads: Likewise.
3423         * libgnat/s-stratt__xdr.adb: Likewise.
3424         * libgnat/s-strcom.adb: Likewise.
3425         * libgnat/s-strcom.ads: Likewise.
3426         * libgnat/s-strhas.adb: Likewise.
3427         * libgnat/s-strhas.ads: Likewise.
3428         * libgnat/s-string.adb: Likewise.
3429         * libgnat/s-string.ads: Likewise.
3430         * libgnat/s-strops.adb: Likewise.
3431         * libgnat/s-strops.ads: Likewise.
3432         * libgnat/s-ststop.adb: Likewise.
3433         * libgnat/s-ststop.ads: Likewise.
3434         * libgnat/s-tasloc.adb: Likewise.
3435         * libgnat/s-tasloc.ads: Likewise.
3436         * libgnat/s-thread.ads: Likewise.
3437         * libgnat/s-thread__ae653.adb: Likewise.
3438         * libgnat/s-traceb.adb: Likewise.
3439         * libgnat/s-traceb.ads: Likewise.
3440         * libgnat/s-traceb__hpux.adb: Likewise.
3441         * libgnat/s-traceb__mastop.adb: Likewise.
3442         * libgnat/s-traent.adb: Likewise.
3443         * libgnat/s-traent.ads: Likewise.
3444         * libgnat/s-trasym.adb: Likewise.
3445         * libgnat/s-trasym.ads: Likewise.
3446         * libgnat/s-trasym__dwarf.adb: Likewise.
3447         * libgnat/s-tsmona.adb: Likewise.
3448         * libgnat/s-tsmona__linux.adb: Likewise.
3449         * libgnat/s-tsmona__mingw.adb: Likewise.
3450         * libgnat/s-unstyp.ads: Likewise.
3451         * libgnat/s-utf_32.adb: Likewise.
3452         * libgnat/s-utf_32.ads: Likewise.
3453         * libgnat/s-valboo.adb: Likewise.
3454         * libgnat/s-valboo.ads: Likewise.
3455         * libgnat/s-valcha.adb: Likewise.
3456         * libgnat/s-valcha.ads: Likewise.
3457         * libgnat/s-valdec.adb: Likewise.
3458         * libgnat/s-valdec.ads: Likewise.
3459         * libgnat/s-valenu.adb: Likewise.
3460         * libgnat/s-valenu.ads: Likewise.
3461         * libgnat/s-valint.adb: Likewise.
3462         * libgnat/s-valint.ads: Likewise.
3463         * libgnat/s-vallld.adb: Likewise.
3464         * libgnat/s-vallld.ads: Likewise.
3465         * libgnat/s-vallli.adb: Likewise.
3466         * libgnat/s-vallli.ads: Likewise.
3467         * libgnat/s-valllu.adb: Likewise.
3468         * libgnat/s-valllu.ads: Likewise.
3469         * libgnat/s-valrea.adb: Likewise.
3470         * libgnat/s-valrea.ads: Likewise.
3471         * libgnat/s-valuns.adb: Likewise.
3472         * libgnat/s-valuns.ads: Likewise.
3473         * libgnat/s-valuti.adb: Likewise.
3474         * libgnat/s-valuti.ads: Likewise.
3475         * libgnat/s-valwch.adb: Likewise.
3476         * libgnat/s-valwch.ads: Likewise.
3477         * libgnat/s-veboop.adb: Likewise.
3478         * libgnat/s-veboop.ads: Likewise.
3479         * libgnat/s-vector.ads: Likewise.
3480         * libgnat/s-vercon.adb: Likewise.
3481         * libgnat/s-vercon.ads: Likewise.
3482         * libgnat/s-wchcnv.adb: Likewise.
3483         * libgnat/s-wchcnv.ads: Likewise.
3484         * libgnat/s-wchcon.adb: Likewise.
3485         * libgnat/s-wchcon.ads: Likewise.
3486         * libgnat/s-wchjis.adb: Likewise.
3487         * libgnat/s-wchjis.ads: Likewise.
3488         * libgnat/s-wchstw.adb: Likewise.
3489         * libgnat/s-wchstw.ads: Likewise.
3490         * libgnat/s-wchwts.adb: Likewise.
3491         * libgnat/s-wchwts.ads: Likewise.
3492         * libgnat/s-widboo.adb: Likewise.
3493         * libgnat/s-widboo.ads: Likewise.
3494         * libgnat/s-widcha.adb: Likewise.
3495         * libgnat/s-widcha.ads: Likewise.
3496         * libgnat/s-widenu.adb: Likewise.
3497         * libgnat/s-widenu.ads: Likewise.
3498         * libgnat/s-widlli.adb: Likewise.
3499         * libgnat/s-widlli.ads: Likewise.
3500         * libgnat/s-widllu.adb: Likewise.
3501         * libgnat/s-widllu.ads: Likewise.
3502         * libgnat/s-widwch.adb: Likewise.
3503         * libgnat/s-widwch.ads: Likewise.
3504         * libgnat/s-win32.ads: Likewise.
3505         * libgnat/s-winext.ads: Likewise.
3506         * libgnat/s-wwdcha.adb: Likewise.
3507         * libgnat/s-wwdcha.ads: Likewise.
3508         * libgnat/s-wwdenu.adb: Likewise.
3509         * libgnat/s-wwdenu.ads: Likewise.
3510         * libgnat/s-wwdwch.adb: Likewise.
3511         * libgnat/s-wwdwch.ads: Likewise.
3512         * libgnat/system-aix.ads: Likewise.
3513         * libgnat/system-darwin-arm.ads: Likewise.
3514         * libgnat/system-darwin-ppc.ads: Likewise.
3515         * libgnat/system-darwin-x86.ads: Likewise.
3516         * libgnat/system-djgpp.ads: Likewise.
3517         * libgnat/system-dragonfly-x86_64.ads: Likewise.
3518         * libgnat/system-freebsd.ads: Likewise.
3519         * libgnat/system-hpux-ia64.ads: Likewise.
3520         * libgnat/system-hpux.ads: Likewise.
3521         * libgnat/system-linux-alpha.ads: Likewise.
3522         * libgnat/system-linux-arm.ads: Likewise.
3523         * libgnat/system-linux-hppa.ads: Likewise.
3524         * libgnat/system-linux-ia64.ads: Likewise.
3525         * libgnat/system-linux-m68k.ads: Likewise.
3526         * libgnat/system-linux-mips.ads: Likewise.
3527         * libgnat/system-linux-ppc.ads: Likewise.
3528         * libgnat/system-linux-riscv.ads: Likewise.
3529         * libgnat/system-linux-s390.ads: Likewise.
3530         * libgnat/system-linux-sh4.ads: Likewise.
3531         * libgnat/system-linux-sparc.ads: Likewise.
3532         * libgnat/system-linux-x86.ads: Likewise.
3533         * libgnat/system-lynxos178-ppc.ads: Likewise.
3534         * libgnat/system-lynxos178-x86.ads: Likewise.
3535         * libgnat/system-mingw.ads: Likewise.
3536         * libgnat/system-qnx-aarch64.ads: Likewise.
3537         * libgnat/system-rtems.ads: Likewise.
3538         * libgnat/system-solaris-sparc.ads: Likewise.
3539         * libgnat/system-solaris-x86.ads: Likewise.
3540         * libgnat/system-vxworks-arm-rtp-smp.ads: Likewise.
3541         * libgnat/system-vxworks-arm-rtp.ads: Likewise.
3542         * libgnat/system-vxworks-arm.ads: Likewise.
3543         * libgnat/system-vxworks-e500-kernel.ads: Likewise.
3544         * libgnat/system-vxworks-e500-rtp-smp.ads: Likewise.
3545         * libgnat/system-vxworks-e500-rtp.ads: Likewise.
3546         * libgnat/system-vxworks-e500-vthread.ads: Likewise.
3547         * libgnat/system-vxworks-ppc-kernel.ads: Likewise.
3548         * libgnat/system-vxworks-ppc-ravenscar.ads: Likewise.
3549         * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise.
3550         * libgnat/system-vxworks-ppc-rtp.ads: Likewise.
3551         * libgnat/system-vxworks-ppc-vthread.ads: Likewise.
3552         * libgnat/system-vxworks-ppc.ads: Likewise.
3553         * libgnat/system-vxworks-x86-kernel.ads: Likewise.
3554         * libgnat/system-vxworks-x86-rtp-smp.ads: Likewise.
3555         * libgnat/system-vxworks-x86-rtp.ads: Likewise.
3556         * libgnat/system-vxworks-x86-vthread.ads: Likewise.
3557         * libgnat/system-vxworks-x86.ads: Likewise.
3558         * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise.
3559         * libgnat/system-vxworks7-aarch64.ads: Likewise.
3560         * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise.
3561         * libgnat/system-vxworks7-arm.ads: Likewise.
3562         * libgnat/system-vxworks7-e500-kernel.ads: Likewise.
3563         * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise.
3564         * libgnat/system-vxworks7-e500-rtp.ads: Likewise.
3565         * libgnat/system-vxworks7-ppc-kernel.ads: Likewise.
3566         * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise.
3567         * libgnat/system-vxworks7-ppc-rtp.ads: Likewise.
3568         * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise.
3569         * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise.
3570         * libgnat/system-vxworks7-x86-kernel.ads: Likewise.
3571         * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise.
3572         * libgnat/system-vxworks7-x86-rtp.ads: Likewise.
3573         * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise.
3574         * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise.
3575         * libgnat/system.ads: Likewise.
3576         * link.c: Likewise.
3577         * live.adb: Likewise.
3578         * live.ads: Likewise.
3579         * locales.c: Likewise.
3580         * make.adb: Likewise.
3581         * make.ads: Likewise.
3582         * make_util.adb: Likewise.
3583         * make_util.ads: Likewise.
3584         * makeusg.adb: Likewise.
3585         * makeusg.ads: Likewise.
3586         * mdll-fil.adb: Likewise.
3587         * mdll-fil.ads: Likewise.
3588         * mdll-utl.adb: Likewise.
3589         * mdll-utl.ads: Likewise.
3590         * mdll.adb: Likewise.
3591         * mdll.ads: Likewise.
3592         * mingw32.h: Likewise.
3593         * mkdir.c: Likewise.
3594         * namet-sp.adb: Likewise.
3595         * namet-sp.ads: Likewise.
3596         * namet.adb: Likewise.
3597         * namet.ads: Likewise.
3598         * namet.h: Likewise.
3599         * nlists.adb: Likewise.
3600         * nlists.ads: Likewise.
3601         * nlists.h: Likewise.
3602         * opt.adb: Likewise.
3603         * opt.ads: Likewise.
3604         * osint-b.adb: Likewise.
3605         * osint-b.ads: Likewise.
3606         * osint-c.adb: Likewise.
3607         * osint-c.ads: Likewise.
3608         * osint-l.adb: Likewise.
3609         * osint-l.ads: Likewise.
3610         * osint-m.adb: Likewise.
3611         * osint-m.ads: Likewise.
3612         * osint.adb: Likewise.
3613         * osint.ads: Likewise.
3614         * output.adb: Likewise.
3615         * output.ads: Likewise.
3616         * par-ch10.adb: Likewise.
3617         * par-ch11.adb: Likewise.
3618         * par-ch12.adb: Likewise.
3619         * par-ch13.adb: Likewise.
3620         * par-ch2.adb: Likewise.
3621         * par-ch3.adb: Likewise.
3622         * par-ch4.adb: Likewise.
3623         * par-ch5.adb: Likewise.
3624         * par-ch6.adb: Likewise.
3625         * par-ch7.adb: Likewise.
3626         * par-ch8.adb: Likewise.
3627         * par-ch9.adb: Likewise.
3628         * par-endh.adb: Likewise.
3629         * par-labl.adb: Likewise.
3630         * par-load.adb: Likewise.
3631         * par-prag.adb: Likewise.
3632         * par-sync.adb: Likewise.
3633         * par-tchk.adb: Likewise.
3634         * par-util.adb: Likewise.
3635         * par.adb: Likewise.
3636         * par.ads: Likewise.
3637         * par_sco.adb: Likewise.
3638         * par_sco.ads: Likewise.
3639         * pprint.adb: Likewise.
3640         * pprint.ads: Likewise.
3641         * prep.adb: Likewise.
3642         * prep.ads: Likewise.
3643         * prepcomp.adb: Likewise.
3644         * prepcomp.ads: Likewise.
3645         * put_scos.adb: Likewise.
3646         * put_scos.ads: Likewise.
3647         * raise-gcc.c: Likewise.
3648         * raise.c: Likewise.
3649         * raise.h: Likewise.
3650         * repinfo-input.adb: Likewise.
3651         * repinfo-input.ads: Likewise.
3652         * repinfo.adb: Likewise.
3653         * repinfo.ads: Likewise.
3654         * repinfo.h: Likewise.
3655         * restrict.adb: Likewise.
3656         * restrict.ads: Likewise.
3657         * rident.ads: Likewise.
3658         * rtfinal.c: Likewise.
3659         * rtinit.c: Likewise.
3660         * rtsfind.adb: Likewise.
3661         * rtsfind.ads: Likewise.
3662         * runtime.h: Likewise.
3663         * s-oscons-tmplt.c: Likewise.
3664         * sa_messages.adb: Likewise.
3665         * sa_messages.ads: Likewise.
3666         * scans.adb: Likewise.
3667         * scans.ads: Likewise.
3668         * scil_ll.adb: Likewise.
3669         * scil_ll.ads: Likewise.
3670         * scn.adb: Likewise.
3671         * scn.ads: Likewise.
3672         * scng.adb: Likewise.
3673         * scng.ads: Likewise.
3674         * scos.adb: Likewise.
3675         * scos.ads: Likewise.
3676         * scos.h: Likewise.
3677         * sdefault.ads: Likewise.
3678         * seh_init.c: Likewise.
3679         * sem.adb: Likewise.
3680         * sem.ads: Likewise.
3681         * sem_aggr.adb: Likewise.
3682         * sem_aggr.ads: Likewise.
3683         * sem_attr.adb: Likewise.
3684         * sem_attr.ads: Likewise.
3685         * sem_aux.adb: Likewise.
3686         * sem_aux.ads: Likewise.
3687         * sem_case.adb: Likewise.
3688         * sem_case.ads: Likewise.
3689         * sem_cat.adb: Likewise.
3690         * sem_cat.ads: Likewise.
3691         * sem_ch10.adb: Likewise.
3692         * sem_ch10.ads: Likewise.
3693         * sem_ch11.adb: Likewise.
3694         * sem_ch11.ads: Likewise.
3695         * sem_ch12.adb: Likewise.
3696         * sem_ch12.ads: Likewise.
3697         * sem_ch13.adb: Likewise.
3698         * sem_ch13.ads: Likewise.
3699         * sem_ch2.adb: Likewise.
3700         * sem_ch2.ads: Likewise.
3701         * sem_ch3.adb: Likewise.
3702         * sem_ch3.ads: Likewise.
3703         * sem_ch4.adb: Likewise.
3704         * sem_ch4.ads: Likewise.
3705         * sem_ch5.adb: Likewise.
3706         * sem_ch5.ads: Likewise.
3707         * sem_ch6.adb: Likewise.
3708         * sem_ch6.ads: Likewise.
3709         * sem_ch7.adb: Likewise.
3710         * sem_ch7.ads: Likewise.
3711         * sem_ch8.adb: Likewise.
3712         * sem_ch8.ads: Likewise.
3713         * sem_ch9.adb: Likewise.
3714         * sem_ch9.ads: Likewise.
3715         * sem_dim.adb: Likewise.
3716         * sem_dim.ads: Likewise.
3717         * sem_disp.adb: Likewise.
3718         * sem_disp.ads: Likewise.
3719         * sem_dist.adb: Likewise.
3720         * sem_dist.ads: Likewise.
3721         * sem_elab.adb: Likewise.
3722         * sem_elab.ads: Likewise.
3723         * sem_elim.adb: Likewise.
3724         * sem_elim.ads: Likewise.
3725         * sem_eval.adb: Likewise.
3726         * sem_eval.ads: Likewise.
3727         * sem_intr.adb: Likewise.
3728         * sem_intr.ads: Likewise.
3729         * sem_mech.adb: Likewise.
3730         * sem_mech.ads: Likewise.
3731         * sem_prag.adb: Likewise.
3732         * sem_prag.ads: Likewise.
3733         * sem_res.adb: Likewise.
3734         * sem_res.ads: Likewise.
3735         * sem_scil.adb: Likewise.
3736         * sem_scil.ads: Likewise.
3737         * sem_smem.adb: Likewise.
3738         * sem_smem.ads: Likewise.
3739         * sem_type.adb: Likewise.
3740         * sem_type.ads: Likewise.
3741         * sem_util.adb: Likewise.
3742         * sem_util.ads: Likewise.
3743         * sem_warn.adb: Likewise.
3744         * sem_warn.ads: Likewise.
3745         * set_targ.adb: Likewise.
3746         * set_targ.ads: Likewise.
3747         * sfn_scan.adb: Likewise.
3748         * sfn_scan.ads: Likewise.
3749         * sigtramp-armdroid.c: Likewise.
3750         * sigtramp-ios.c: Likewise.
3751         * sigtramp-qnx.c: Likewise.
3752         * sigtramp-vxworks.c: Likewise.
3753         * sigtramp.h: Likewise.
3754         * sinfo-cn.adb: Likewise.
3755         * sinfo-cn.ads: Likewise.
3756         * sinfo.adb: Likewise.
3757         * sinfo.ads: Likewise.
3758         * sinput-c.adb: Likewise.
3759         * sinput-c.ads: Likewise.
3760         * sinput-d.adb: Likewise.
3761         * sinput-d.ads: Likewise.
3762         * sinput-l.adb: Likewise.
3763         * sinput-l.ads: Likewise.
3764         * sinput.adb: Likewise.
3765         * sinput.ads: Likewise.
3766         * socket.c: Likewise.
3767         * spark_xrefs.adb: Likewise.
3768         * spark_xrefs.ads: Likewise.
3769         * sprint.adb: Likewise.
3770         * sprint.ads: Likewise.
3771         * stand.adb: Likewise.
3772         * stand.ads: Likewise.
3773         * stringt.adb: Likewise.
3774         * stringt.ads: Likewise.
3775         * stringt.h: Likewise.
3776         * style.adb: Likewise.
3777         * style.ads: Likewise.
3778         * styleg.adb: Likewise.
3779         * styleg.ads: Likewise.
3780         * stylesw.adb: Likewise.
3781         * stylesw.ads: Likewise.
3782         * switch-b.adb: Likewise.
3783         * switch-b.ads: Likewise.
3784         * switch-c.adb: Likewise.
3785         * switch-c.ads: Likewise.
3786         * switch-m.adb: Likewise.
3787         * switch-m.ads: Likewise.
3788         * switch.adb: Likewise.
3789         * switch.ads: Likewise.
3790         * symbols.adb: Likewise.
3791         * symbols.ads: Likewise.
3792         * sysdep.c: Likewise.
3793         * table.adb: Likewise.
3794         * table.ads: Likewise.
3795         * targext.c: Likewise.
3796         * targparm.adb: Likewise.
3797         * targparm.ads: Likewise.
3798         * tbuild.adb: Likewise.
3799         * tbuild.ads: Likewise.
3800         * tempdir.adb: Likewise.
3801         * tempdir.ads: Likewise.
3802         * terminals.c: Likewise.
3803         * tracebak.c: Likewise.
3804         * tree_gen.adb: Likewise.
3805         * tree_gen.ads: Likewise.
3806         * tree_in.adb: Likewise.
3807         * tree_in.ads: Likewise.
3808         * tree_io.adb: Likewise.
3809         * tree_io.ads: Likewise.
3810         * treepr.adb: Likewise.
3811         * treepr.ads: Likewise.
3812         * ttypes.ads: Likewise.
3813         * types.adb: Likewise.
3814         * types.ads: Likewise.
3815         * types.h: Likewise.
3816         * uintp.adb: Likewise.
3817         * uintp.ads: Likewise.
3818         * uintp.h: Likewise.
3819         * uname.adb: Likewise.
3820         * uname.ads: Likewise.
3821         * urealp.adb: Likewise.
3822         * urealp.ads: Likewise.
3823         * urealp.h: Likewise.
3824         * usage.adb: Likewise.
3825         * usage.ads: Likewise.
3826         * validsw.adb: Likewise.
3827         * validsw.ads: Likewise.
3828         * warnsw.adb: Likewise.
3829         * warnsw.ads: Likewise.
3830         * widechar.adb: Likewise.
3831         * widechar.ads: Likewise.
3832         * xeinfo.adb: Likewise.
3833         * xnmake.adb: Likewise.
3834         * xoscons.adb: Likewise.
3835         * xr_tabls.adb: Likewise.
3836         * xr_tabls.ads: Likewise.
3837         * xref_lib.adb: Likewise.
3838         * xref_lib.ads: Likewise.
3839         * xsinfo.adb: Likewise.
3840         * xsnamest.adb: Likewise.
3841         * xtreeprs.adb: Likewise.
3842         * xutil.adb: Likewise.
3843         * xutil.ads: Likewise.
3845 2020-06-02  Javier Miranda  <miranda@adacore.com>
3847         * sem_ch3.adb (Analyze_Object_Declaration): Set attribute
3848         Expansion_Delayed on aggregates that initialize an object that
3849         has aspect alignment or address clause. Done to allow ther
3850         initialization by means of multiple assignments.
3851         * exp_ch3.adb (Expand_N_Object_Declaration): Resolve delayed
3852         aggregates. This patch complements the patch applied to
3853         sem_ch3.adb
3855 2020-06-02  Javier Miranda  <miranda@adacore.com>
3857         * sem_util.adb (Ensure_Minimum_Decoration): New subprogram that
3858         ensures the minimum decoration required by
3859         Requires_Transient_Scope() to provide its functionality when the
3860         entity is not frozen.
3862 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
3864         * exp_ch4.adb (Expand_N_Op_Divide): Remove code dealing with
3865         the Treat_Fixed_As_Integer flag.
3866         (Expand_N_Op_Multiply): Likewise.
3867         * exp_fixd.adb (Build_Divide): Do the division in an integer
3868         type long enough to hold both operands and convert the result
3869         to the type of the LHS.  Do not set Treat_Fixed_As_Integer.
3870         (Build_Multiply): Do not set Treat_Fixed_As_Integer.
3871         (Build_Rem): Likewise.
3872         * sem_ch4.adb (Analyze_Arithmetic_Op): Remove code dealing with
3873         the Treat_Fixed_As_Integer flag.
3874         (Check_Arithmetic_Pair): Likewise.
3875         * sinfo.ads (Treat_Fixed_As_Integer): Delete.
3876         (N_Has_Treat_Fixed_As_Integer): Likewise.
3877         (Set_Treat_Fixed_As_Integer): Likewise.
3878         * sinfo.adb (Treat_Fixed_As_Integer): Likewise.
3879         (Set_Treat_Fixed_As_Integer): Likewise.
3880         * sprint.ads (Syntax Extensions): Remove '#' special character.
3881         * sprint.adb (Process_TFAI_RR_Flags): Delete.
3882         (Sprint_Node_Actual) <N_Op_Divide>: Print '@' manually.
3883         <N_Op_Multiply>: Likewise.
3884         <N_Op_Mod>: Do not print '#'.
3885         <N_Op_Rem>: Likewise.
3887 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
3889         * exp_aggr.adb (Others_Check): In the positional case, use the
3890         general expression for the comparison only when needed.
3891         * exp_attr.adb (Expand_Fpt_Attribute;): Use a simple conversion
3892         to the target type instead of an unchecked conversion to the
3893         base type to do the range check, as in the other cases.
3894         (Expand_N_Attribute_Reference) <Attribute_Storage_Size>: Do the
3895         Max operation in the type of the storage size variable, and use
3896         Convert_To as in the other cases.
3897         * tbuild.adb (Convert_To): Do not get rid of an intermediate
3898         conversion to Universal_Integer here...
3899         * sem_res.adb  (Simplify_Type_Conversion): ...but here instead.
3901 2020-06-02  Bob Duff  <duff@adacore.com>
3903         * doc/gnat_ugn/gnat_utility_programs.rst: Update documentation
3904         for --RM-style-spacing.
3906 2020-06-02  Bob Duff  <duff@adacore.com>
3908         * doc/gnat_ugn/gnat_utility_programs.rst: Add documentation for
3909         --[no-]compact switch.
3911 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
3913         * exp_aggr.adb (Build_Array_Aggr_Code): Set the type of the PAT
3914         on the zero used to clear the array.
3915         * exp_attr.adb (Expand_N_Attribute_Reference)
3916         <Attribute_Alignment>: In the CW case, directly convert from the
3917         alignment's type to the target type if the parent is an
3918         unchecked conversion.
3919         * sem_res.adb (Set_String_Literal_Subtype): In the dynamic case,
3920         use the general expression for the upper bound only when needed.
3921         Set the base type of the index as the type of the low bound.
3922         (Simplify_Type_Conversion): Do an intermediate conversion to the
3923         root type of the target type if the operand is an integer
3924         literal.
3925         * tbuild.adb (Convert_To): Get rid of an intermediate conversion
3926         to Universal_Integer if the inner expression has integer tyoe.
3927         * libgnat/a-sequio.adb (Byte_Swap): Make use of an equivalent
3928         static expression in the case statement.
3930 2020-06-02  Thomas Quinot  <quinot@adacore.com>
3932         * par_sco.adb (Traverse_Degenerate_Subprogram): Set statement
3933         code to 'X'.
3934         * scos.ads: Update comment documenting SCO data.
3936 2020-06-02  Gary Dismukes  <dismukes@adacore.com>
3938         * exp_unst.adb (Register_Subprogram): Test for Address_Taken (in
3939         addition to the existing test for In_Synchonized_Unit) when
3940         deciding whether to reset the Reachable flag on all subprograms
3941         enclosing the subprogram being registered.
3943 2020-06-02  Justin Squirek  <squirek@adacore.com>
3945         * sem_ch6.adb (Check_Return_Obj_Accessibility): Avoid use of
3946         parent node pointers so we are not relying on expansion done in
3947         GNATprove mode.
3949 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
3951         * exp_attr.adb (Expand_N_Attribute_Reference)
3952         <Attribute_Alignment>: Adjust comment and compare against proper
3953         type.
3955 2020-06-02  Gary Dismukes  <dismukes@adacore.com>
3957         * exp_unst.adb (Visit_Node): When visiting array attribute
3958         nodes, apply Get_Referenced_Object to the attribute prefix, to
3959         handle prefixes denoting renamed objects by picking up the Etype
3960         of the renamed object rather than the possibly unconstrained
3961         nominal subtype of the renaming declaration's Entity.
3962         * sem_util.ads (Get_Referenced_Object): Update comment to
3963         clearly indicate that any kind of node can be passed to this
3964         function.
3965         * sem_util.adb (Get_Referenced_Object): Add test of Is_Object to
3966         the condition, to allow for passing names that denote types and
3967         subtypes.
3969 2020-06-02  Bob Duff  <duff@adacore.com>
3971         * snames.ads-tmpl: Add comments explaining that enumeration
3972         types have to be kept in synch with subtypes of Name_Id.
3974 2020-06-02  Piotr Trojanek  <trojanek@adacore.com>
3976         * sem_util.adb (Check_No_Hidden_State): Remove dead code.
3978 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
3980         * exp_pakd.adb (Expand_Packed_Bit_Reference): Change type of
3981         reference from Universal_Integer to Standard_Natural.
3983 2020-06-02  Piotr Trojanek  <trojanek@adacore.com>
3985         * sem_prag.adb (Collect_States_And_Objects): Call itself on
3986         declaration of nested packages; append abstract states
3987         one-by-one, so that in recursive call we do not overwrite the
3988         ones that have been already collected.
3990 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
3992         * exp_atag.ads (Build_Inherit_Predefined_Prims): Change type
3993         of Num_Predef_Prim parameter from Int to Nat.
3994         * exp_atag.adb (Build_Range): New procedure.
3995         (Build_Val): Likewise.
3996         (Build_CW_Membership): Call Build_Val.
3997         (Build_Get_Predefined_Prim_Op_Address): Likewise.
3998         (Build_Inherit_CPP_Prims): Likewise.
3999         (Build_Get_Prim_Op_Address): Likewise.
4000         (Build_Set_Predefined_Prim_Op_Address): Likewise.
4001         (Build_Inherit_Prims): Call Build_Range.
4002         (Build_Inherit_Predefined_Prims): Likewise.  Change type of
4003         Num_Predef_Prim parameter from Int to Nat.
4005 2020-06-02  Gary Dismukes  <dismukes@adacore.com>
4007         * sem_ch3.adb: Two typo fixes.
4009 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
4011         * sem_ch3.adb (Replace_Discriminants): Preserve the Etype of the
4012         Name of N_Variant_Part nodes when rewriting it.
4014 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
4016         * sem_ch3.adb (Signed_Integer_Type_Declaration): Change the type
4017         of the bounds from Universal_Integer to Implicit_Base.
4019 2020-06-02  Arnaud Charlet  <charlet@adacore.com>
4021         * bcheck.adb, binde.adb, bindo-diagnostics.adb, checks.adb,
4022         exp_aggr.adb, exp_ch3.adb, exp_ch4.adb, exp_ch7.adb,
4023         exp_ch9.adb, gnatname.adb, sem_case.adb, sem_ch13.adb,
4024         sem_ch5.adb, sem_prag.adb, sem_util.adb, uintp.adb, urealp.adb,
4025         xoscons.adb, xr_tabls.adb, xref_lib.adb: Initialize objects more
4026         explicitly and add corresponding assertions. Remove dead code.
4027         Also add a few Annotate pragmas to help static analysis.
4028         * libgnat/a-caldel.adb, libgnat/a-calend.adb,
4029         libgnat/a-ngcoty.adb, libgnat/a-ngelfu.adb,
4030         libgnat/a-ngrear.adb, libgnat/a-strfix.adb,
4031         libgnat/g-calend.adb, libgnat/g-catiio.adb,
4032         libgnat/g-comlin.adb, libgnat/g-debpoo.adb,
4033         libgnat/g-dirope.adb, libgnat/g-hesorg.adb,
4034         libgnat/g-pehage.adb, libgnat/g-socket.adb, libgnat/i-cobol.adb,
4035         libgnat/s-dwalin.adb, libgnat/s-dwalin.ads,
4036         libgnat/s-fatgen.adb, libgnat/s-gearop.adb,
4037         libgnat/s-genbig.adb, libgnat/s-imgrea.adb,
4038         libgnat/s-os_lib.adb, libgnat/s-rannum.adb,
4039         libgnat/s-regpat.adb, libgnat/s-trasym__dwarf.adb,
4040         libgnat/s-valrea.adb: Ditto.
4042 2020-06-02  Eric Botcazou  <ebotcazou@adacore.com>
4044         * sem_ch3.adb (Replace_Components): Rename into...
4045         (Replace_Discriminants): ...this.  Replace girder discriminants
4046         with non-girder ones.  Do not replace components.
4047         * sem_ch13.adb (Check_Record_Representation_Clause): Deal with
4048         non-girder discriminants correctly.
4050 2020-06-02  Piotr Trojanek  <trojanek@adacore.com>
4052         * lib-xref-spark_specific.adb (Create_Heap): use a new variant
4053         of Name_Enter to directly converts String to Make_Id.
4055 2020-06-02  Gary Dismukes  <dismukes@adacore.com>
4057         * exp_attr.adb, par-ch4.adb, par-util.adb, scans.ads, scng.adb,
4058         sem_attr.adb, sem_ch4.adb, sinfo.ads: Typo corrections and minor
4059         reformatting.
4061 2020-06-02  Arnaud Charlet  <charlet@adacore.com>
4063         * snames.ads-tmpl (Name_Img, Attribute_Img): Make it an
4064         attribute returning renamable functions.
4066 2020-06-02  Yannick Moy  <moy@adacore.com>
4068         * sem_prag.adb, sem_prag.ads (Set_Overflow_Mode): New procedure
4069         to set overflow mode.
4071 2020-06-02  Piotr Trojanek  <trojanek@adacore.com>
4073         * contracts.adb, einfo.adb, exp_ch9.adb, sem_ch12.adb,
4074         sem_ch4.adb, sem_ch7.adb, sem_ch8.adb, sem_elab.adb,
4075         sem_type.adb, sem_util.adb: Reuse Is_Package_Or_Generic_Package
4076         where possible (similarly, reuse Is_Concurrent_Type if it was
4077         possible in the same expressions).
4079 2020-05-30  Arnaud Charlet  <charlet@adacore.com>
4081         * Makefile.rtl (ADA_INCLUDE_SRCS): Replace Makefile.adalib by
4082         libada.gpr and associated project files.
4083         (g-debpoo.o): Add missing rule to ensure subprograms are not reordered.
4084         (setup-rts): Add generation of libgnat/libgnarl.lst.
4085         (LIBGNAT_SRCS): Remove thread.c which is part of libgnarl.
4086         * tracebak.c, tb-gcc.c: Merged the two files to simplify dependencies.
4087         * libgnarl/libgnarl.gpr, libgnat/libada.gpr,
4088         libgnat/libgnat.gpr, libgnat/libgnat_common.gpr: New files.
4089         * doc/gnat_ugn/the_gnat_compilation_model.rst: Makefile.adalib
4090         replaced by libada.gpr.
4091         * libgnat/system-mingw.ads: Remove obsolete comment.
4092         * gcc-interface/Makefile.in: Remove dependency on tb-gcc.c.
4094 2020-05-27  Martin Liska  <mliska@suse.cz>
4096         * gnatvsn.ads: Bump Library_Version to 11.
4098 2020-05-26  Eric Botcazou  <ebotcazou@gcc.gnu.org>
4100         PR ada/95333
4101         * gcc-interface/decl.c (gnat_to_gnu_param): Never make a variant of
4102         the type.
4104 2020-05-26  Alexandre Oliva  <oliva@adacore.com>
4106         * gcc-interface/lang-specs.h (ADA_DUMPS_OPTIONS): Define in
4107         terms of DUMPS_OPTIONS.  Replace occurrences of %{d*} %:dumps
4108         with it.
4110 2020-05-26  Alexandre Oliva  <oliva@adacore.com>
4112         * gcc-interface/lang-specs.h: Drop auxbase and auxbase-strip.
4113         Use %:dumps instead of -dumpbase.  Add %w for implicit .s
4114         primary output.
4115         * switch.adb (Is_Internal_GCC_Switch): Recognize dumpdir and
4116         dumpbase-ext.  Drop auxbase and auxbase-strip.
4118 2020-05-25  Yannick Moy  <moy@adacore.com>
4120         * sem_util.adb (Check_No_Hidden_State): Stop propagation at
4121         first block/task/entry.
4123 2020-05-25  Yannick Moy  <moy@adacore.com>
4125         * doc/gnat_rm/implementation_defined_pragmas.rst: Document
4126         changes to pragmas Compile_Time_Error/Compile_Time_Warning.
4127         * gnat_rm.texi: Regenerate.
4128         * libgnat/g-bytswa.adb: Change uses of Compile_Time_Error to
4129         Compile_Time_Warning, as the actual expression may not always be
4130         known statically.
4131         * sem_prag.adb (Analyze_Pragma): Handle differently pragma
4132         Compile_Time_Error in both compilation and in GNATprove mode.
4133         (Validate_Compile_Time_Warning_Or_Error): Issue an error or
4134         warning when the expression is not known at compile time.
4135         * usage.adb: Add missing documentation for warning switches _c
4136         and _r.
4137         * warnsw.ads: Update comment.
4139 2020-05-25  Justin Squirek  <squirek@adacore.com>
4141         * sem_ch6.adb (Check_Return_Obj_Accessibility): Use original
4142         node to avoid looking at expansion done in GNATprove mode.
4144 2020-05-25  Eric Botcazou  <ebotcazou@adacore.com>
4146         * gcc-interface/decl.c (gnat_to_gnu_entity): Add new local variable
4147         and use it throughout the function.
4148         <E_Variable>: Rename local variable and adjust accordingly.  In the
4149         case of a renaming, materialize the entity if the renamed object is
4150         an N_Expression_With_Actions node.
4151         <E_Procedure>: Use Alias accessor function consistently.
4153 2020-05-25  Eric Botcazou  <ebotcazou@adacore.com>
4155         * gcc-interface/misc.c (get_array_bit_stride): Get to the debug type,
4156         if any, before calling gnat_get_array_descr_info.
4158 2020-05-25  Eric Botcazou  <ebotcazou@adacore.com>
4160         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Tidy up.
4161         (build_variant_list): Add GNAT_VARIANT_PART parameter and annotate its
4162         variants if it is present.  Adjust the recursive call by passing the
4163         variant subpart of variants, if any.
4164         (copy_and_substitute_in_layout): Rename GNU_SUBST_LIST to SUBST_LIST
4165         and adjust throughout.  For a type, pass the variant part in the
4166         call to build_variant_list.
4168 2020-05-25  Eric Botcazou  <ebotcazou@adacore.com>
4170         * gcc-interface/decl.c (gnat_to_gnu_component_type): Cap the alignment
4171         of the component type according to the component size.
4173 2020-05-25  Eric Botcazou  <ebotcazou@adacore.com>
4175         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Add a
4176         description of the various types associated with the unconstrained
4177         type.  Declare the fat pointer earlier.  Set the current function
4178         as context on the template type, and the fat pointer type on the
4179         array type.  Always mark the fat pointer type as artificial and set
4180         it as the context for the pointer type to the array.  Also reuse
4181         GNU_ENTITY_NAME.  Finish up the unconstrained type at the very end.
4182         * gcc-interface/misc.c (gnat_get_array_descr_info): Do not handle
4183         fat pointer types and tidy up accordingly.
4184         * gcc-interface/utils.c (build_unc_object_type): Do not set the
4185         context on the template type.
4186         (gnat_pushdecl): Mark the canonical fat pointer types as artificial.
4188 2020-05-25  Eric Botcazou  <ebotcazou@adacore.com>
4190         * gcc-interface/gigi.h (operand_type): New static inline function.
4191         * gcc-interface/trans.c (gnat_to_gnu): Do not suppress conversion
4192         to the resulty type at the end for array types.
4193         * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not
4194         remove conversions between array types on the LHS.
4196 2020-05-12  Eric Botcazou  <ebotcazou@adacore.com>
4198         * sem_aggr.ads (Is_Single_Aggregate): New function.
4199         * sem_aggr.adb (Is_Others_Aggregate): Use local variable.
4200         (Is_Single_Aggregate): New function to recognize an aggregate with
4201         a single association containing a single choice.
4202         * fe.h (Is_Others_Aggregate): Delete.
4203         (Is_Single_Aggregate): New declaration.
4204         * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Call
4205         Is_Single_Aggregate instead of Is_Others_Aggregate.
4207 2020-05-12  Eric Botcazou  <ebotcazou@adacore.com>
4209         PR ada/95035
4210         * gcc-interface/utils.c (packable_type_hasher::equal): Also compare
4211         the scalar storage order.
4212         (hash_packable_type): Also hash the scalar storage order.
4213         (hash_pad_type): Likewise.
4215 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4217         * gcc-interface/*.[ch]: Update copyright year.
4219 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4221         * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Assert that
4222         the prefix is not a type.
4224 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4226         * gcc-interface/ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Rename into...
4227         (TYPE_BIT_PACKED_ARRAY_TYPE_P): ...this.
4228         (TYPE_IS_PACKED_ARRAY_TYPE_P): Rename into...
4229         (BIT_PACKED_ARRAY_TYPE_P): ...this.
4230         (TYPE_IMPL_PACKED_ARRAY_P): Adjust to above renaming.
4231         * gcc-interface/gigi.h (maybe_pad_type): Remove IS_USER_TYPE parameter.
4232         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Adjust call
4233         to maybe_pad_type.
4234         <E_Ordinary_Fixed_Point_Type>: Remove const qualifiers for tree.
4235         <E_Signed_Integer_Subtype>: Remove redundant test and redundant call
4236         to associate_original_type_to_packed_array.  Turn test into assertion.
4237         Call associate_original_type_to_packed_array and modify gnu_entity_name
4238         accordingly.  Explicitly set the parallel type for GNAT encodings.
4239         Call create_type_decl in the misaligned case before maybe_pad_type.
4240         <E_Array_Type>: Do not use the name of the implementation type for a
4241         packed array when not using GNAT encodings.
4242         <E_Array_Subtype>: Move around setting flags. Use the result of the
4243         call to associate_original_type_to_packed_array for gnu_entity_name.
4244         <E_Record_Subtype>: Create XVS type and XVZ variable only if debug
4245         info is requested for the type.
4246         Call create_type_decl if a padded type was created for a type entity.
4247         (gnat_to_gnu_component_type): Use local variable and adjust calls to
4248         maybe_pad_type.
4249         (gnat_to_gnu_subprog_type): Adjust call to maybe_pad_type.
4250         (gnat_to_gnu_field): Likewise.
4251         (validate_size): Adjust to renaming of macro.
4252         (set_rm_size): Likewise.
4253         (associate_original_type_to_packed_array): Adjust return type and
4254         return the name of the original type if GNAT encodings are not used.
4255         * gcc-interface/misc.c (gnat_get_debug_typ): Remove obsolete stuff.
4256         (gnat_get_fixed_point_type_info): Remove const qualifiers for tree.
4257         (gnat_get_array_descr_info): Likewise and set variables lazily.
4258         Remove call to maybe_debug_type.  Simplify a few computations.
4259         (enumerate_modes): Remove const qualifier for tree.
4260         * gcc-interface/utils.c (make_type_from_size): Adjust to renaming.
4261         (maybe_pad_type): Remove IS_USER_TYPE parameter and adjust.  Remove
4262         specific code for implementation types for packed arrays.
4263         (compute_deferred_decl_context): Remove const qualifier for tree.
4264         (convert): Adjust call to maybe_pad_type.
4265         (unchecked_convert): Likewise.
4266         * gcc-interface/utils2.c (is_simple_additive_expressio): Likewise.
4268 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4270         * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Use
4271         build_nonshared_array_type to build the common type and declare it.
4273 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4275         * gcc-interface/misc.c (gnat_init_gcc_eh): Do not override the user
4276         for -fnon-call-exceptions in default mode.
4278 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4280         * gcc-interface/trans.c (lvalue_required_p) <N_Selected_Component>:
4281         Merge with N_Slice.
4282         <N_Allocator>: Move to...
4283         (lvalue_for_aggregate_p): ...here.  New function.
4284         (Identifier_to_gnu): For an identifier with aggregate type, also
4285         call lvalue_for_aggregate_p if lvalue_required_p returned false
4286         before substituting the identifier with the constant.
4288 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4290         * gcc-interface/trans.c (gnat_to_gnu): Do not wrap boolean values if
4291         they appear in any kind of attribute references.
4293 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4295         * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: Deal
4296         with qualified "others" aggregates in the memset case.
4298 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4300         * gcc-interface/decl.c (gnat_to_gnu_param): Also back-annotate the
4301         mechanism in the case of an Out parameter only passed by copy-out.
4303 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4305         * gcc-interface/gigi.h (change_qualified_type): Move around.
4306         (maybe_vector_array): Likewise.
4307         (maybe_padded_object): New static line function.
4308         * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Component_Size>:
4309         Remove useless code.
4310         <Attr_Null_Parameter>: Remove obsolete code.
4311         (Call_to_gn): Likewise.  Use maybe_padded_object to remove padding.
4312         (gnat_to_gnu): Likewise.
4313         <N_String_Literal>: Do not add a useless null character at the end.
4314         <N_Indexed_Component>: Likewise and remove obsolete code.
4315         (add_decl_expr): Likewise.
4316         (maybe_implicit_deref): Likewise.
4317         * gcc-interface/utils.c (maybe_unconstrained_array): Likewise.
4318         * gcc-interface/utils2.c (gnat_invariant_expr): Likewise.
4320 2020-05-09  Eric Botcazou  <ebotcazou@adacore.com>
4322         * gcc-interface/utils2.c: Include builtins.h.
4323         (known_alignment) <ADDR_EXPR>: Use DECL_ALIGN for DECL_P operands
4324         and get_object_alignment for the rest.
4326 2020-05-08  Eric Botcazou  <ebotcazou@adacore.com>
4328         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Force at
4329         least the unit size for an aliased object of a constrained nominal
4330         subtype whose size is variable.
4332 2020-05-08  Eric Botcazou  <ebotcazou@adacore.com>
4334         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Deal
4335         with artificial maximally-sized types designed by access types.
4336         * gcc-interface/utils.c (packable_type_hash): New structure.
4337         (packable_type_hasher): Likewise.
4338         (packable_type_hash_table): New hash table.
4339         (init_gnat_utils): Initialize it.
4340         (destroy_gnat_utils): Destroy it.
4341         (packable_type_hasher::equal): New method.
4342         (hash_packable_type): New static function.
4343         (canonicalize_packable_type): Likewise.
4344         (make_packable_type): Make sure not to use too small a type for the
4345         size of the new fields.  Canonicalize the type if it is named.
4347 2020-05-08  Eric Botcazou  <ebotcazou@adacore.com>
4349         * gcc-interface/trans.c (Raise_Error_to_gnu): Always compute a lower
4350         bound and an upper bound for use by the -gnateE switch for range and
4351         comparison operators.
4353 2020-05-08  Eric Botcazou  <ebotcazou@adacore.com>
4355         * gcc-interface/decl.c (gnat_to_gnu_param): Do not make a variant of
4356         the type in LTO mode.
4358 2020-05-04  Mikael Pettersson  <mikpelinux@gmail.com>
4360         PR bootstrap/94918
4361         * mingw32.h: Prevent windows.h from including emmintrin.h on Cygwin64.
4362         * s-oscons-tmplt.c (Serial_Port_Descriptor): Use System.Win32.HANDLE
4363         also on Cygwin.
4365 2020-03-11  Richard Wai  <richard@annexi-strayline.com>
4367         * gcc-interface/decl.c (gnat_to_gnu_entity): Also test Is_Public on
4368         the Alias of the entitiy, if it is present, in the main assertion.
4370 2020-02-06  Alexandre Oliva <oliva@adacore.com>
4372         * raise-gcc.c (personality_body) [__ARM_EABI_UNWINDER__]:
4373         Initialize barrier_cache.sp when ending phase1.
4375 2020-01-04  Eric Botcazou  <ebotcazou@adacore.com>
4377         * gnatvsn.ads: Bump copyright year.
4379 2020-01-01  Jakub Jelinek  <jakub@redhat.com>
4381         Update copyright years.
4383         * gnat_ugn.texi: Bump @copying's copyright year.
4384         * gnat_rm.texi: Likewise.
4386 Copyright (C) 2020 Free Software Foundation, Inc.
4388 Copying and distribution of this file, with or without modification,
4389 are permitted in any medium without royalty provided the copyright
4390 notice and this notice are preserved.