aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/inline.adb
AgeCommit message (Collapse)AuthorFilesLines
2024-09-05ada: Tweak assertions in Inline.Cannot_InlineRonan Desplanques1-2/+0
The purpose of this patch is to silence a GNATSAS report. gcc/ada/ * inline.adb (Cannot_Inline): Remove assertion. * inline.ads (Cannot_Inline): Add precondition.
2024-08-01ada: Remove support for bodies in -gnatcegArnaud Charlet1-117/+0
The support for generating C for Ada code is moved to GNAT LLVM. Keep support for generating header files from Ada spec files which is the remaining usage of -gnatceg. gcc/ada/ * bindgen.adb, bindusg.adb, debug.adb, einfo.ads, exp_aggr.adb, exp_attr.adb, exp_ch11.adb, exp_ch3.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch8.adb, exp_dbug.adb, exp_dbug.ads, exp_intr.adb, exp_unst.adb, exp_util.adb, exp_util.ads, freeze.adb, gen_il-fields.ads, gen_il-gen-gen_entities.adb, gnat1drv.adb, inline.adb, opt.ads, osint-c.adb, osint-c.ads, sem_attr.adb, sem_ch12.adb, sem_ch3.adb, sem_ch4.adb, sem_ch6.adb, sem_elab.adb, sem_res.adb, sinfo.ads, snames.ads-tmpl, switch-b.adb, switch-c.adb: Major clean up to remove C code generation for bodies.
2024-08-01ada: Couple of cleanups in finalization machineryEric Botcazou1-1/+0
This removes a parameter and a variable that are entirely determined by another parameter and another variable respectively. gcc/ada/ * exp_ch7.ads (Build_Finalizer): Remove Top_Decls parameter. * exp_ch7.adb (Build_Finalizer): Likewise. Rename Counter_Val into Count, replace Has_Ctrl_Objs local variable by expression function, remove Spec_Decls local variable and do not reset Finalizer_Decls. (Expand_Cleanup_Actions): Adjust call to Build_Finalizer. (Expand_N_Package_Body): Likewise. (Expand_N_Package_Declaration): Likewise. * inline.adb (Cleanup_Scopes): Likewise.
2024-06-20ada: Fix inlining of fixed-lower-bound array for GNATproveYannick Moy1-2/+8
Inlining in GNATprove may fail on a call to a subprogram with a formal of an array type with fixed lower bound (a GNAT extension), because the appropriate conversion is not used. Fix it. Also fix the function that inserts an unchecked conversion, in cases where it could skip sliding due to the target type having fixed lower bound. gcc/ada/ * inline.adb (Establish_Actual_Mapping_For_Inlined_Call): In the case of formal with a fixed lower bounds, insert appropriate conversion like in the case of a constrained type. * tbuild.adb (Unchecked_Convert_To): Do not skip the conversion when it may involve sliding due to a type with fixed lower bound.
2024-06-13ada: Simplify code in Cannot_InlineViljar Indus1-10/+10
gcc/ada/ * inline.adb (Cannot_Inline): Simplify string handling logic.
2024-06-13ada: Do not inline subprogram which could cause SPARK violationYannick Moy1-1/+82
Inlining in GNATprove a subprogram containing a constant declaration with an address clause/aspect might lead to a spurious error if the address expression is based on a constant view of a mutable object at call site. Do not allow such inlining in GNATprove. gcc/ada/ * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Do not inline when constant with address clause is found.
2024-06-10ada: Enable inlining for subprograms with multiple return statementsPiotr Trojanek1-83/+8
With the support for forward GOTO statements in the GNATprove backend, we can now inline subprograms with multiple return statements in the frontend. Also, fix inconsistent source locations in the inlined code, which were now triggering assertion violations in the code for GNATprove counterexamples. gcc/ada/ * inline.adb (Has_Single_Return_In_GNATprove_Mode): Remove. (Process_Formals): When rewriting an occurrence of a formal parameter, use location of the occurrence, not of the inlined call.
2024-05-21ada: Simplify management of scopes while inliningPiotr Trojanek1-15/+4
Code cleanup; semantics is unaffected. gcc/ada/ * inline.adb (Add_Scope_To_Clean): Use Append_Unique_Elmt. (Analyze_Inlined_Bodies): Refine type of a local counter; remove extra whitespace.
2024-05-07ada: Remove redundant guard against empty list of declarationsPiotr Trojanek1-2/+1
Code cleanup. gcc/ada/ * inline.adb (Has_Single_Return): Remove redundant check for empty list, because First works also for empty list.
2024-05-07ada: Cleanup detection of per-object constraints in inlining for SPARKPiotr Trojanek1-14/+14
In GNATprove mode we didn't inline subprograms whose formal parameters was of a record type with constraints depending on discriminants. Now this is extended to formal parameters with per-object constraints, regardless if they come from references to discriminants or from attributes prefixed by the current type instance. gcc/ada/ * inline.adb (Has_Formal_With_Per_Object_Constrained_Component): Use flag Has_Per_Object_Constraint which is set by analysis; rename for consistency.
2024-05-06ada: Fix detection of (Un)Hide_Info pragma in GNATprove modeYannick Moy1-1/+4
Spec or body may not be in a list for subunit. gcc/ada/ * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Add guard.
2024-05-06ada: Prevent inlining in GNATprove for memory leaksYannick Moy1-0/+58
In some cases, inlining a call in GNATprove could lead to missing a memory leak. Recognize such cases and do not inline such calls. gcc/ada/ * inline.adb (Call_Can_Be_Inlined_In_GNATprove_Mode): Add case to prevent inlining of call. * inline.ads: Likewise. * sem_res.adb (Resolve_Call): Update comment and message.
2024-05-06ada: Do not inline in GNATprove the subprograms with (Un)Hide_InfoYannick Moy1-3/+86
The annotations Hide_Info and Unhide_Info in GNATprove are meant to give special visibility in the corresponding scope to the precise definition of some entities. Hence, such scopes should not be inlined in GNATprove. gcc/ada/ * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Adapt checking.
2024-01-22Update copyright years.Marc Poulhiès1-1/+1
2024-01-09ada: Remove dead detection of recursive inlined subprogramsPiotr Trojanek1-19/+0
Inlining of subprogram calls happens in routine Expand_Inlined_Call which calls Establish_Actual_Mapping_For_Inlined_Call. Both routines had detection of recursive calls. The detection in the second routine was dead code. gcc/ada/ * inline.adb (Establish_Actual_Mapping_For_Inlined_Call): Remove detection of recursive calls.
2024-01-09ada: Remove dead code for GNATprove inliningPiotr Trojanek1-13/+2
Removed code was dead because it could only be executed when Back_End_Inlining is True and that flag is always false in GNATprove_Mode. gcc/ada/ * inline.adb (Cannot_Inline): Cleanup use of 'Length; remove dead code.
2023-11-30ada: Fix spelling of functions with(out) "side effects"Yannick Moy1-1/+1
Correct spelling does not include an hyphen. Fix comments and one error message. Also fix other mispellings of "side-effect" or "side effect" depending on the case (adjective should have hyphen), and "side-effect-free" with double hyphen as an adjective. gcc/ada/ * checks.adb, exp_aggr.adb, exp_ch4.ads, exp_ch5.adb, exp_util.adb, exp_util.ads, inline.adb, sem_ch13.adb, sem_ch6.adb, sem_ch8.adb, sem_prag.adb, sem_util.ads: Fix comments and typos.
2023-11-21ada: Another couple of cleanups in the finalization machineryEric Botcazou1-1/+1
For package specs and bodies that need finalizers, Build_Finalizer is invoked from the Standard scope so it needs to adjust the scope stack before creating new objects; this changes it to do so only once. For other kinds of scopes, it is invoked from Expand_Cleanup_Actions, which assumes that the correct scope is already on the stack; that's why Cleanup_Scopes adjusts the scope stack explicitly, but it should use Pop_Scope instead of End_Scope to do it. gcc/ada/ * exp_ch7.adb (Build_Finalizer): For package specs and bodies, push and pop the specs onto the scope stack only once. * inline.adb (Cleanup_Scopes): Call Pop_Scope instead of End_Scope.
2023-11-07ada: Implement Aspects as fields under nodesViljar Indus1-9/+2
In the previous implementation Aspect Specifications were stored in a separate table and not directly under each node. This implementation included a lot of extra code that needed to be maintained manually. The new implementation stores Aspect_Specfications as a syntactic field under each node. This removes the extra code that was needed to store, traverse and clone aspects for nodes. gcc/ada/ * aspects.adb (Exchange_Aspects): Removed. This method was typically called after a Rewrite method. Now since the Rewrite switches the aspects between the new and the old node it is no longer needed. (Has_Aspects): Converted to a utility method that performs the same before as the previous Has_Aspects field did. Meaning it shows whether a node actually has aspects or not. (Copy_Aspects): New utility method that performs a deep copy of the From nodes aspects. (Aspect_Specfications): Removed. No longer needed. Replaced by the primitive operation for the Aspect_Specification fields. (Set_Aspect_Specifications): Likewise. (Aspect_Specifications_Hash_Table): Remove the table and all the utility methods for storing the old aspects. * aspects.ads: Likewise. * atree.adb (Copy_Separate_Tree): Remove custom code for aspects. (New_Copy): Likewise. (Replace): Likewise. (Rewrite): Likewise. * exp_ch3.adb (Expand_N_Object_Declaration): Keep the aspects from the old node. * exp_ch6.adb (Validate_Subprogram_Calls): Previously aspects were ignored because they were not on the tree. Explicitly ignore them here when traversing the tree. * exp_unst.adb (Build_Tables): Likewise * gen_il-fields.ads: Remove Has_Aspects and add Aspect_Specifications fields. * gen_il-gen-gen_nodes.adb: Add Aspect_Specification fields for all nodes that can have aspects. Additionally add Expression_Copy for Aspect_Speficiations to avoid reusing the Associated_Node for generic instantiation and aspect analysis. * ghost.adb (Remove_Ignored_Ghost_Node): Remove call to Remove_Aspects. The rewritten node is a Null_Statement that cannot have aspects and there is not anything to gain from removing them from the Orignal_Node of N since it technically is not part of the active tree. * inline.adb (Process_Formals_In_Aspects): Simplify code for node traversal. * par-ch13.adb: Avoid setting the parent explicitly for the Aspect_Specifications list. This is done explicitly in the setter. * par-ch6.adb: Likewise. * par_sco.adb (Traverse_Aspects): Handle early return. * sem_ch10.adb: Simplify code for Analyze_Aspect_Specifications. * sem_ch11.adb: Likewise. * sem_ch12.adb (Analyze_Formal_Derived_Interface_Type): Keep the aspects from the orignal node after rewrite. (Analyze_Formal_Derived_Type): Likewise. (Analyze_Formal_Interface_Type): Likewise. (Analyze_Formal_Object_Declaration): Simplify code for Analyze_Aspect_Specifications. (Analyze_Formal_Package_Declaration): Likewise. (Analyze_Formal_Subprogram_Declaration): Likewise. (Analyze_Formal_Type_Declaration): Likewise. (Analyze_Generic_Package_Declaration): Remove Exchange_Aspects. The new node already has the correct aspects after the rewrite. Also simplify code for Analyze_Aspect_Specifications. (Analyze_Generic_Subprogram_Declaration): Likewise. (Analyze_Package_Instantiation): Simplify code for Analyze_Aspect_Specifications. (Build_Instance_Compilation_Unit_Nodes): Remove explicit copy of aspects that is no longer needed. (Save_References): Update the traversal code to handle Aspect_Specifications in the tree. (Copy_Generic_Node): Remove explicit copy for aspects. New_Copy took care of that already. * sem_ch13.adb (Analyze_Aspect_Specifications): Add early return to simplify code for its calls. Avoid reusing the Entity(Associated_Node) field for storing the original expression. Instead use the new Expression_Copy field since Entity(Associated_Node) is also used in generic instantiation. (Analyze_Aspects_On_Subprogram_Body_Or_Stub): Simlify call to Analyze_Aspect_Specifications. (Check_Aspect_At_End_Of_Declarations): Use Expression_Copy instead of Entity. (Check_Aspect_At_Freeze_Point): Likewise. * sem_ch3.adb: Simplify calls to Analyze_Aspect_Specifications. * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Simplify call to Analyze_Aspect_Specifications. (Analyze_Expression_Function): Keep the aspects from the original node after a rewrite. (Analyze_Generic_Subprogram_Body): Remove Exchange aspects that is no longer needed. Simplify call to Analyze_Aspect_Specifications. (Analyze_Null_Procedure): Keep the aspects from the original node after a rewrite. (Analyze_Subprogram_Body_Helper): Simplify calls to Analyze_Aspect_Specifications. (Analyze_Subprogram_Declaration): Likewise. * sem_ch7.adb (Analyze_Package_Body_Helper): Remove Exchange aspects that is no longer needed. Simplify call to Analyze_Aspect_Specifications. (Analyze_Package_Declaration): Simplify call to Analyze_Aspect_Specifications. (Analyze_Private_Type_Declaration): Likewise. * sem_ch8.adb: Simplify calls to Analyze_Aspect_Specifications. * sem_ch9.adb (Analyze_Entry_Body): Simplify call to Analyze_Aspects_On_Subprogram_Body_Or_Stub. (Analyze_Entry_Declaration): Simplify call to Analyze_Aspect_Specifications. (Analyze_Protected_Body): Likewise. (Analyze_Protected_Type_Declaration): Likewise. (Analyze_Single_Protected_Declaration): Keep the aspects from the original node after a rewrite. Simplify call to Analyze_Aspect_Specifications. (Analyze_Single_Task_Declaration): Likewise. (Analyze_Task_Body): Simplify call to Analyze_Aspect_Specifications. (Analyze_Task_Type_Declaration): Simplify calls to Analyze_Aspect_Specifications. * sem_dim.adb: Remove explicitly setting the parents for the Aspect_Specification list. * sem_disp.adb: Remove the with that is no longer required since Aspect_Specifications is a node operation now. * sem_util.adb (Copy_Node_With_Replacement): Remove explicit code for aspects. * treepr.adb (Print_Field): Remove the version that was used for printing aspects. (Print_Node): Remove aspect specific code.
2023-09-15ada: Fix wrong optimization of extended return for discriminated record typeEric Botcazou1-0/+1
This happens when the discriminants of the record type have default values. gcc/ada/ChangeLog: * inline.adb (Expand_Inlined_Call): In the case of a function call that returns an unconstrained type and initializes an object, set the No_Initialization flag on the new declaration of the object.
2023-08-01ada: Disable inlining of subprograms with Skip(_Flow_And)_Proof in GNATproveYannick Moy1-0/+49
Subprograms with these Skip(_Flow_And)_Proof annotations should not be inlined in GNATprove, as we want to skip part of the analysis for their body. gcc/ada/ * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Check for Skip_Proof and Skip_Flow_And_Proof annotations for deciding whether a subprogram can be inlined.
2023-06-13ada: Implement new aspect Always_Terminates for SPARKPiotr Trojanek1-1/+3
This patch allows subprograms to be annotated with aspect Always_Terminates that requires a boolean expression. When this expression evaluates to True, the subprogram is required to terminate or raise an exception, but not loop infinitely. This aspect is only meant to be used by GNATprove and it has no meaningful run-time semantics: either the annotated subprogram terminates and then the aspect expression doesn't matter, or the subprogram loops infinitely and there is nothing we can do. (We could also evaluate the aspect expression just to detect run-time errors in the expression itself, but this can be implemented later, after a backend support for the aspect is added to GNATprove.) Implementation of this aspect is heavily based on the implementation of Subprogram_Variant, which in turn is heavily based on the implementation of Contract_Cases. Since the new aspect is not yet expanded, there is no corresponding assertion kind that would control the expansion. gcc/ada/ * aspects.ads (Aspect_Id): Add new aspect. (Implementation_Defined_Aspect): New aspect is implementation-defined. (Aspect_Argument): New aspect has an expression argument. (Is_Representation_Aspect): New aspect is not a representation aspect. (Aspect_Names): Link new aspect identifier with a name. (Aspect_Delay): New aspect is never delayed. * contracts.adb (Expand_Subprogram_Contract): Mention new aspect in comment. (Add_Contract_Item): Attach pragma corresponding to the new aspect to contract items. (Analyze_Entry_Or_Subprogram_Contract): Analyze pragma corresponding to the new aspect that appears with subprogram spec. (Analyze_Subprogram_Body_Stub_Contract): Expand pragma corresponding to the new aspect. * contracts.ads (Add_Contract_Item, Analyze_Entry_Or_Subprogram_Contract) (Analyze_Entry_Or_Subprogram_Body_Contract) (Analyze_Subprogram_Body_Stub_Contract): Mention new aspect in comment. * einfo-utils.adb (Get_Pragma): Return pragma attached to contract. * einfo-utils.ads (Get_Pragma): Mention new contract in comment. * exp_prag.adb (Expand_Pragma_Always_Terminates): Placeholder for possibly expanding new aspect. * exp_prag.ads (Expand_Pragma_Always_Terminates): Dedicated routine for expansion of the new aspect. * inline.adb (Remove_Aspects_And_Pragmas): Remove aspect from inlined bodies. * par-prag.adb (Prag): Postpone checking of the pragma until analysis. * sem_ch12.adb: Mention new aspect in explanation of handling contracts on generic units. * sem_ch13.adb (Analyze_Aspect_Specifications): Convert new aspect into a corresponding pragma. (Check_Aspect_At_Freeze_Point): Don't expect new aspect. * sem_prag.adb (Analyze_Always_Terminates_In_Decl_Part): Analyze pragma corresponding to the new aspect. (Analyze_Pragma): Handle pragma corresponding to the new aspect. (Is_Non_Significant_Pragma_Reference): Handle references appearing within new aspect. * sem_prag.ads (Aspect_Specifying_Pragma): New aspect can be emulated with a pragma. (Assertion_Expression_Pragma): New aspect has an assertion expression. (Pragma_Significant_To_Subprograms): New aspect is significant to subprograms. (Analyze_Always_Terminates_In_Decl_Part): Add spec for routine that analyses new aspect. (Find_Related_Declaration_Or_Body): Mention new aspect in comment. * sem_util.adb (Is_Subprogram_Contract_Annotation): New aspect is a subprogram contract annotation. * sem_util.ads (Is_Subprogram_Contract_Annotation): Mention new aspect in comment. * sinfo.ads (Is_Generic_Contract_Pragma): New pragma is a generic contract. (Contract): Explain attaching new pragma to subprogram contract. * snames.ads-tmpl (Name_Always_Terminates): New name for the new contract. (Pragma_Always_Terminates): New pragma identifier.
2023-05-26ada: Fix missing finalization in library-level instance bodyEric Botcazou1-46/+108
This extends the delaying mechanism present in the cases where the instance is not at library level, so as to wait until after the instantiation of the body is performed, before generating the finalizer of the compilation unit. gcc/ada/ * einfo.ads (Delay_Cleanups): Document new usage. * exp_ch7.ads (Build_Finalizer): New declaration. * exp_ch7.adb (Build_Finalizer.Process_Declarations): Do not treat library-level package instantiations specially. (Build_Finalizer): Return early for package bodies and specs that are not compilation units instead of using a more convoluted test. (Expand_N_Package_Body): Do not build a finalizer if Delay_Cleanups is set on the defining entity. (Expand_N_Package_Declaration): Likewise. * inline.ads (Pending_Body_Info): Reorder and add Fin_Scop. (Add_Pending_Instantiation): Add Fin_Scop parameter. * inline.adb (Add_Pending_Instantiation): Likewise and copy it into the Pending_Body_Info appended to Pending_Instantiations. (Add_Scope_To_Clean): Change parameter name to Scop and remove now irrelevant processing. (Cleanup_Scopes): Deal with scopes that are package specs or bodies. (Instantiate_Body): For package instantiations, deal specially with scopes that are package bodies and with scopes that are dynamic. Pass the resulting scope to Add_Scope_To_Clean directly. * sem_ch12.adb (Analyze_Package_Instantiation): In the case where a body is needed, compute the enclosing finalization scope and pass it in the call to Add_Pending_Instantiation. (Inline_Instance_Body): Adjust aggregate passed in the calls to Instantiate_Package_Body. (Load_Parent_Of_Generic): Likewise.
2023-05-23ada: Accept and analyze new aspect Exceptional_CasesPiotr Trojanek1-0/+2
Add new aspect Exceptional_Cases, which is intended for SPARK and describes in which cases an exception will be raised, and optionally supply a postcondition that shall be verified in this case. The implementation is heavily modeled after Subprogram_Variant, which in turn was heavily modeled after Contract_Cases. Currently the aspect is only analysed; the code infrastructure required to expand it is prepared but empty. This is enough for the aspect to be verified by GNATprove. gcc/ada/ * aspects.ads (Aspect_Id): Add aspect identifier. (Aspect_Argument): New aspect accepts an expression. (Is_Representation_Aspect): New aspect is not a representation aspect. (Aspect_Names): Associate name with the new aspect identifier. (Aspect_Delay): New aspect is never delayed. * contracts.adb (Add_Contract_Item): Store new aspect among contract items. (Analyze_Entry_Or_Subprogram_Contract): Likewise. (Analyze_Subprogram_Body_Stub_Contract): Likewise. (Process_Contract_Cases): Expand new aspect, if present. * contracts.ads (Analyze_Entry_Or_Subprogram_Body_Contract): Mention new aspect in spec. (Analyze_Entry_Or_Subprogram_Contract): Likewise. * einfo-utils.adb (Get_Pragma): Allow new aspect to be picked by the backend. * einfo-utils.ads (Get_Pragma): Mention new aspect in spec. * exp_prag.adb (Expand_Pragma_Exceptional_Cases): Dummy expansion routine. * exp_prag.ads (Expand_Pragma_Exceptional_Cases): Add spec for expansion routine. * inline.adb (Remove_Aspects_And_Pragmas): Remove aspect from bodies to inline. * par-prag.adb (Par.Prag): Accept pragma in the parser, so it will be checked later. * sem_ch12.adb (Implementation of Generic Contracts): Mention new aspect in comment. * sem_ch13.adb (Analyze_Aspect_Specifications): Transform new aspect info a corresponding pragma. * sem_prag.adb (Analyze_Exceptional_Cases_In_Decl_Part): Analyze aspect expression; heavily inspired by the existing code for analysis of Subprogram_Variant and exception handlers. (Analyze_Pragma): Analyze pragma corresponding to the new aspect. (Is_Non_Significant_Pragma_Reference): Add new pragma to the table. * sem_prag.ads (Assertion_Expression_Pragma): New pragma acts as an assertion expression, even though it is not currently expanded. (Analyze_Exceptional_Cases_In_Decl_Part): Add spec. * sem_util.adb (Is_Subprogram_Contract_Annotation): Mark new annotation is a subprogram contract, so the subprogram with it won't be inlined. * sem_util.ads (Is_Subprogram_Contract_Annotation): Mention new aspect in comment. * sinfo.ads (Contract_Test_Cases): Mention new aspect in comment. * snames.ads-tmpl: Add entries for the new name and pragma.
2023-05-23ada: Fix latent issue in support for protected entriesEric Botcazou1-10/+0
The problem is that, unlike for protected subprograms, the expansion of cleanups for protected entries is not delayed when they contain package instances with a body, so the cleanups are generated twice and this may yield two finalizers if the secondary stack is used in the entry body. This restores the delaying, which uncovers the missing propagation of the Uses_Sec_Stack flag as is done for protected subprograms, which in turn requires using a Corresponding_Spec field as for protected subprograms. This also gets rid of the Delay_Subprogram_Descriptors flag on entities, whose only remaining use in Expand_Cleanup_Actions was unreachable. The last change is to unconditionally reset the scopes in the case of protected subprograms when they are expanded, as is done in the case of protected entries. This makes it possible to remove the code adjusting the scope on the fly in Cleanup_Scopes but requires a few adjustments. gcc/ada/ * einfo.ads (Delay_Subprogram_Descriptors): Delete. * gen_il-fields.ads (Opt_Field_Enum): Remove Delay_Subprogram_Descriptors. * gen_il-gen-gen_entities.adb (Gen_Entities): Likewise. * gen_il-gen-gen_nodes.adb (N_Entry_Body): Add Corresponding_Spec. * sinfo.ads (Corresponding_Spec): Document new use. (N_Entry_Body): Likewise. * exp_ch6.adb (Expand_Protected_Object_Reference): Be prepared for protected subprograms that have been expanded. * exp_ch7.adb (Expand_Cleanup_Actions): Remove unreachable code. * exp_ch9.adb (Build_Protected_Entry): Add a local variable for the new block and propagate Uses_Sec_Stack from the corresponding spec. (Expand_N_Protected_Body) <N_Subprogram_Body>: Unconditionally reset the scopes of top-level entities in the new body. * inline.adb (Cleanup_Scopes): Do not adjust the scope on the fly. * sem_ch9.adb (Analyze_Entry_Body): Set Corresponding_Spec. * sem_ch12.adb (Analyze_Package_Instantiation): Remove obsolete code setting Delay_Subprogram_Descriptors and tidy up. * sem_util.adb (Scope_Within): Deal with protected subprograms that have been expanded. (Scope_Within_Or_Same): Likewise.
2023-05-22ada: Small cleanup in support for protected subprogramsEric Botcazou1-11/+0
This moves the propagation of the Uses_Sec_Stack flag, from the original to the rewritten subprogram, to the point where the latter is expanded, along with the propagation of the Has_Nested_Subprogram flag, as well as addresses a ??? comment in the same block of code. No functional changes. gcc/ada/ * inline.adb (Cleanup_Scopes): Do not propagate the Uses_Sec_Stack flag from original to rewritten protected subprograms here... * exp_ch9.adb (Expand_N_Protected_Body) <N_Subprogram_Body>: ...but here instead. Add local variables and remove a useless test.
2023-01-09ada: Update copyright noticeArnaud Charlet1-1/+1
gcc/ada/ * accessibility.adb, accessibility.ads, ada_get_targ.adb: Update copyright year. * adabkend.adb, adabkend.ads, adadecode.c, adadecode.h, adaint.c: Likewise. * adaint.h, affinity.c, ali-util.adb, ali-util.ads, ali.adb: Likewise. * ali.ads, alloc.ads, argv-lynxos178-raven-cert.c, argv.c: Likewise. * aspects.adb, aspects.ads, atree.adb, atree.ads, atree.h: Likewise. * aux-io.c, back_end.adb, back_end.ads, backend_utils.adb: Likewise. * backend_utils.ads, bcheck.adb, bcheck.ads, binde.adb, binde.ads: Likewise. * binderr.adb, binderr.ads, bindgen.adb, bindgen.ads: Likewise. * bindo-augmentors.adb, bindo-augmentors.ads, bindo-builders.adb: Likewise. * bindo-builders.ads, bindo-diagnostics.adb: Likewise. * bindo-diagnostics.ads, bindo-elaborators.adb: Likewise. * bindo-elaborators.ads, bindo-graphs.adb, bindo-graphs.ads: Likewise. * bindo-units.adb, bindo-units.ads, bindo-validators.adb: Likewise. * bindo-validators.ads, bindo-writers.adb, bindo-writers.ads: Likewise. * bindo.adb, bindo.ads, bindusg.adb, bindusg.ads, butil.adb: Likewise. * butil.ads, cal.c, casing.adb, casing.ads, checks.adb: Likewise. * checks.ads, cio.c, clean.adb, clean.ads: Likewise. * comperr.adb, comperr.ads, contracts.adb, contracts.ads: Likewise. * csets.adb, csets.ads, cstand.adb: Likewise. * cstand.ads, cstreams.c, ctrl_c.c, debug.adb, debug.ads: Likewise. * debug_a.adb, debug_a.ads, einfo-utils.adb, einfo-utils.ads: Likewise. * einfo.adb, einfo.ads, elists.adb, elists.ads, elists.h, env.c: Likewise. * env.h, err_vars.ads, errno.c, errout.adb, errout.ads: Likewise. * erroutc.adb, erroutc.ads, errutil.adb, errutil.ads: Likewise. * eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb, exp_aggr.ads: Likewise. * exp_atag.adb, exp_atag.ads, exp_attr.adb, exp_attr.ads: Likewise. * exp_cg.adb, exp_cg.ads, exp_ch10.ads, exp_ch11.adb: Likewise. * exp_ch11.ads, exp_ch12.adb, exp_ch12.ads, exp_ch13.adb: Likewise. * exp_ch13.ads, exp_ch2.adb, exp_ch2.ads, exp_ch3.adb: Likewise. * exp_ch3.ads, exp_ch4.adb, exp_ch4.ads, exp_ch5.adb, exp_ch5.ads: Likewise. * exp_ch6.adb, exp_ch6.ads, exp_ch7.adb, exp_ch7.ads, exp_ch8.adb: Likewise. * exp_ch8.ads, exp_ch9.adb, exp_ch9.ads, exp_code.adb: Likewise. * exp_code.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.adb: Likewise. * exp_disp.ads, exp_dist.adb, exp_dist.ads, exp_fixd.adb: Likewise. * exp_fixd.ads, exp_imgv.adb, exp_imgv.ads, exp_intr.adb: Likewise. * exp_intr.ads, exp_pakd.adb, exp_pakd.ads, exp_prag.adb: Likewise. * exp_prag.ads, exp_put_image.adb, exp_put_image.ads, exp_sel.adb: Likewise. * exp_sel.ads, exp_smem.adb, exp_smem.ads, exp_spark.adb: Likewise. * exp_spark.ads, exp_strm.adb, exp_strm.ads, exp_tss.adb: Likewise. * exp_tss.ads, exp_unst.adb, exp_unst.ads, exp_util.adb: Likewise. * exp_util.ads, expander.adb, expander.ads, expect.c, fe.h: Likewise. * final.c, fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads: Likewise. * fname-uf.adb, fname-uf.ads, fname.adb, fname.ads, freeze.adb: Likewise. * freeze.ads, frontend.adb, frontend.ads, gen_il-fields.ads: Likewise. * gen_il-gen-gen_entities.adb, gen_il-gen-gen_nodes.adb: Likewise. * gen_il-gen.adb, gen_il-gen.ads, gen_il-internals.adb: Likewise. * gen_il-internals.ads, gen_il-main.adb, gen_il-types.ads: Likewise. * gen_il.adb, gen_il.ads, get_scos.adb, get_scos.ads: Likewise. * get_targ.adb, get_targ.ads, ghost.adb, ghost.ads, gnat1drv.adb: Likewise. * gnat1drv.ads, gnat_cuda.adb, gnat_cuda.ads: Likewise. * gnatbind.adb, gnatbind.ads, gnatchop.adb: Likewise. * gnatclean.adb, gnatcmd.adb, gnatcmd.ads, gnatdll.adb: Likewise. * gnatkr.adb, gnatkr.ads, gnatlink.adb, gnatlink.ads, gnatls.adb: Likewise. * gnatls.ads, gnatmake.adb, gnatmake.ads, gnatname.adb: Likewise. * gnatname.ads, gnatprep.adb, gnatprep.ads: Likewise. * gprep.adb, gprep.ads, gsocket.h: Likewise. * hostparm.ads: Likewise. * impunit.adb, impunit.ads, indepsw-aix.adb, indepsw-darwin.adb: Likewise. * indepsw-gnu.adb, indepsw.adb, indepsw.ads, init.c: Likewise. * initialize.c, inline.adb, inline.ads, itypes.adb, itypes.ads: Likewise. * krunch.adb, krunch.ads, layout.adb, layout.ads: Likewise. * lib-list.adb, lib-load.adb, lib-load.ads, lib-sort.adb: Likewise. * lib-util.adb, lib-util.ads, lib-writ.adb, lib-writ.ads: Likewise. * lib-xref-spark_specific.adb, lib-xref.adb, lib-xref.ads: Likewise. * lib.adb, lib.ads, libgnarl/a-astaco.adb, libgnarl/a-dispat.adb: Likewise. * libgnarl/a-dynpri.adb, libgnarl/a-etgrbu.ads: Likewise. * libgnarl/a-exetim__darwin.adb, libgnarl/a-exetim__default.ads: Likewise. * libgnarl/a-exetim__mingw.adb, libgnarl/a-exetim__mingw.ads: Likewise. * libgnarl/a-exetim__posix.adb, libgnarl/a-interr.adb: Likewise. * libgnarl/a-interr.ads, libgnarl/a-intnam.ads: Likewise. * libgnarl/a-intnam__aix.ads, libgnarl/a-intnam__darwin.ads: Likewise. * libgnarl/a-intnam__dragonfly.ads, libgnarl/a-intnam__dummy.ads: Likewise. * libgnarl/a-intnam__freebsd.ads, libgnarl/a-intnam__hpux.ads: Likewise. * libgnarl/a-intnam__linux.ads, libgnarl/a-intnam__lynxos.ads: Likewise. * libgnarl/a-intnam__mingw.ads, libgnarl/a-intnam__qnx.ads: Likewise. * libgnarl/a-intnam__rtems.ads, libgnarl/a-intnam__solaris.ads: Likewise. * libgnarl/a-intnam__vxworks.ads, libgnarl/a-reatim.adb: Likewise. * libgnarl/a-reatim.ads, libgnarl/a-retide.adb: Likewise. * libgnarl/a-retide.ads, libgnarl/a-rttiev.adb: Likewise. * libgnarl/a-rttiev.ads, libgnarl/a-synbar.adb: Likewise. * libgnarl/a-synbar.ads, libgnarl/a-synbar__posix.adb: Likewise. * libgnarl/a-synbar__posix.ads, libgnarl/a-sytaco.adb: Likewise. * libgnarl/a-sytaco.ads, libgnarl/a-tasatt.adb: Likewise. * libgnarl/a-tasatt.ads, libgnarl/a-taside.adb: Likewise. * libgnarl/a-taside.ads, libgnarl/a-tasini.adb: Likewise. * libgnarl/a-tasini.ads, libgnarl/a-taster.adb: Likewise. * libgnarl/g-boubuf.adb, libgnarl/g-boubuf.ads: Likewise. * libgnarl/g-boumai.ads, libgnarl/g-semaph.adb: Likewise. * libgnarl/g-semaph.ads, libgnarl/g-signal.adb: Likewise. * libgnarl/g-signal.ads, libgnarl/g-tastus.ads: Likewise. * libgnarl/g-thread.adb, libgnarl/g-thread.ads: Likewise. * libgnarl/i-vxinco.adb, libgnarl/i-vxinco.ads: Likewise. * libgnarl/s-inmaop.ads, libgnarl/s-inmaop__dummy.adb: Likewise. * libgnarl/s-inmaop__hwint.adb, libgnarl/s-inmaop__posix.adb: Likewise. * libgnarl/s-interr.adb, libgnarl/s-interr.ads: Likewise. * libgnarl/s-interr__dummy.adb, libgnarl/s-interr__hwint.adb: Likewise. * libgnarl/s-interr__sigaction.adb: Likewise. * libgnarl/s-interr__vxworks.adb, libgnarl/s-intman.ads: Likewise. * libgnarl/s-intman__android.adb, libgnarl/s-intman__dummy.adb: Likewise. * libgnarl/s-intman__lynxos.adb, libgnarl/s-intman__mingw.adb: Likewise. * libgnarl/s-intman__posix.adb, libgnarl/s-intman__qnx.adb: Likewise. * libgnarl/s-intman__rtems.adb, libgnarl/s-intman__rtems.ads: Likewise. * libgnarl/s-intman__solaris.adb, libgnarl/s-intman__susv3.adb: Likewise. * libgnarl/s-intman__vxworks.adb, libgnarl/s-intman__vxworks.ads: Likewise. * libgnarl/s-linux.ads, libgnarl/s-linux__alpha.ads: Likewise. * libgnarl/s-linux__android.ads, libgnarl/s-linux__hppa.ads: Likewise. * libgnarl/s-linux__mips.ads, libgnarl/s-linux__riscv.ads: Likewise. * libgnarl/s-linux__sparc.ads, libgnarl/s-linux__x32.ads: Likewise. * libgnarl/s-mudido.adb, libgnarl/s-mudido__affinity.adb: Likewise. * libgnarl/s-osinte__aix.adb, libgnarl/s-osinte__aix.ads: Likewise. * libgnarl/s-osinte__android.adb, libgnarl/s-osinte__android.ads: Likewise. * libgnarl/s-osinte__darwin.adb, libgnarl/s-osinte__darwin.ads: Likewise. * libgnarl/s-osinte__dragonfly.adb: Likewise. * libgnarl/s-osinte__dragonfly.ads, libgnarl/s-osinte__dummy.ads: Likewise. * libgnarl/s-osinte__freebsd.adb, libgnarl/s-osinte__freebsd.ads: Likewise. * libgnarl/s-osinte__gnu.adb, libgnarl/s-osinte__gnu.ads: Likewise. * libgnarl/s-osinte__hpux-dce.adb: Likewise. * libgnarl/s-osinte__hpux-dce.ads, libgnarl/s-osinte__hpux.ads: Likewise. * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. * libgnarl/s-osinte__linux.ads, libgnarl/s-osinte__lynxos178.adb: Likewise. * libgnarl/s-osinte__lynxos178e.ads, libgnarl/s-osinte__mingw.ads: Likewise. * libgnarl/s-osinte__posix.adb, libgnarl/s-osinte__qnx.adb: Likewise. * libgnarl/s-osinte__qnx.ads, libgnarl/s-osinte__rtems.adb: Likewise. * libgnarl/s-osinte__rtems.ads, libgnarl/s-osinte__solaris.adb: Likewise. * libgnarl/s-osinte__solaris.ads, libgnarl/s-osinte__vxworks.adb: Likewise. * libgnarl/s-osinte__vxworks.ads, libgnarl/s-osinte__x32.adb: Likewise. * libgnarl/s-proinf.adb, libgnarl/s-proinf.ads: Likewise. * libgnarl/s-putaim.adb, libgnarl/s-putaim.ads: Likewise. * libgnarl/s-qnx.ads, libgnarl/s-solita.adb: Likewise. * libgnarl/s-solita.ads, libgnarl/s-stusta.adb: Likewise. * libgnarl/s-stusta.ads, libgnarl/s-taasde.adb: Likewise. * libgnarl/s-taasde.ads, libgnarl/s-tadeca.adb: Likewise. * libgnarl/s-tadeca.ads, libgnarl/s-tadert.adb: Likewise. * libgnarl/s-tadert.ads, libgnarl/s-taenca.adb: Likewise. * libgnarl/s-taenca.ads, libgnarl/s-taprob.adb: Likewise. * libgnarl/s-taprob.ads, libgnarl/s-taprop.ads: Likewise. * libgnarl/s-taprop__dummy.adb, libgnarl/s-taprop__hpux-dce.adb: Likewise. * libgnarl/s-taprop__linux.adb, libgnarl/s-taprop__mingw.adb: Likewise. * libgnarl/s-taprop__posix.adb, libgnarl/s-taprop__qnx.adb: Likewise. * libgnarl/s-taprop__rtems.adb, libgnarl/s-taprop__solaris.adb: Likewise. * libgnarl/s-taprop__vxworks.adb, libgnarl/s-tarest.adb: Likewise. * libgnarl/s-tarest.ads, libgnarl/s-tasdeb.adb: Likewise. * libgnarl/s-tasdeb.ads, libgnarl/s-tasinf.adb: Likewise. * libgnarl/s-tasinf.ads, libgnarl/s-tasinf__linux.adb: Likewise. * libgnarl/s-tasinf__linux.ads, libgnarl/s-tasinf__mingw.adb: Likewise. * libgnarl/s-tasinf__mingw.ads, libgnarl/s-tasinf__solaris.adb: Likewise. * libgnarl/s-tasinf__solaris.ads, libgnarl/s-tasinf__vxworks.ads: Likewise. * libgnarl/s-tasini.adb, libgnarl/s-tasini.ads: Likewise. * libgnarl/s-taskin.adb, libgnarl/s-taskin.ads: Likewise. * libgnarl/s-taspri__dummy.ads, libgnarl/s-taspri__hpux-dce.ads: Likewise. * libgnarl/s-taspri__lynxos.ads, libgnarl/s-taspri__mingw.ads: Likewise. * libgnarl/s-taspri__posix-noaltstack.ads: Likewise. * libgnarl/s-taspri__posix.ads, libgnarl/s-taspri__solaris.ads: Likewise. * libgnarl/s-taspri__vxworks.ads, libgnarl/s-tasque.adb: Likewise. * libgnarl/s-tasque.ads, libgnarl/s-tasren.adb: Likewise. * libgnarl/s-tasren.ads, libgnarl/s-tasres.ads: Likewise. * libgnarl/s-tassta.adb, libgnarl/s-tassta.ads: Likewise. * libgnarl/s-tasuti.adb, libgnarl/s-tasuti.ads: Likewise. * libgnarl/s-tataat.adb, libgnarl/s-tataat.ads: Likewise. * libgnarl/s-tpinop.adb, libgnarl/s-tpinop.ads: Likewise. * libgnarl/s-tpoaal.adb, libgnarl/s-tpoben.adb: Likewise. * libgnarl/s-tpoben.ads, libgnarl/s-tpobmu.adb: Likewise. * libgnarl/s-tpobmu.ads, libgnarl/s-tpobop.adb: Likewise. * libgnarl/s-tpobop.ads, libgnarl/s-tpopmo.adb: Likewise. * libgnarl/s-tpopsp__posix-foreign.adb: Likewise. * libgnarl/s-tpopsp__posix.adb, libgnarl/s-tpopsp__solaris.adb: Likewise. * libgnarl/s-tpopsp__tls.adb, libgnarl/s-tpopsp__vxworks-rtp.adb: Likewise. * libgnarl/s-tpopsp__vxworks-tls.adb: Likewise. * libgnarl/s-tpopsp__vxworks.adb, libgnarl/s-tporft.adb: Likewise. * libgnarl/s-tposen.adb, libgnarl/s-tposen.ads: Likewise. * libgnarl/s-vxwext.adb, libgnarl/s-vxwext.ads: Likewise. * libgnarl/s-vxwext__kernel-smp.adb: Likewise. * libgnarl/s-vxwext__kernel.adb, libgnarl/s-vxwext__kernel.ads: Likewise. * libgnarl/s-vxwext__rtp-smp.adb, libgnarl/s-vxwext__rtp.adb: Likewise. * libgnarl/s-vxwext__rtp.ads, libgnarl/s-vxwork__aarch64.ads: Likewise. * libgnarl/s-vxwork__arm.ads, libgnarl/s-vxwork__ppc.ads: Likewise. * libgnarl/s-vxwork__x86.ads, libgnarl/thread.c: Likewise. * libgnat/a-assert.adb, libgnat/a-assert.ads: Likewise. * libgnat/a-btgbso.adb, libgnat/a-btgbso.ads: Likewise. * libgnat/a-calari.adb, libgnat/a-calari.ads: Likewise. * libgnat/a-calcon.adb, libgnat/a-calcon.ads: Likewise. * libgnat/a-caldel.adb, libgnat/a-caldel.ads: Likewise. * libgnat/a-calend.adb, libgnat/a-calend.ads: Likewise. * libgnat/a-calfor.adb, libgnat/a-calfor.ads: Likewise. * libgnat/a-catizo.adb, libgnat/a-cbdlli.adb: Likewise. * libgnat/a-cbdlli.ads, libgnat/a-cbhama.adb: Likewise. * libgnat/a-cbhama.ads, libgnat/a-cbhase.adb: Likewise. * libgnat/a-cbhase.ads, libgnat/a-cbmutr.adb: Likewise. * libgnat/a-cbmutr.ads, libgnat/a-cborma.adb: Likewise. * libgnat/a-cborma.ads, libgnat/a-cborse.adb: Likewise. * libgnat/a-cborse.ads, libgnat/a-cbprqu.adb: Likewise. * libgnat/a-cbprqu.ads, libgnat/a-cbsyqu.adb: Likewise. * libgnat/a-cbsyqu.ads, libgnat/a-cdlili.adb: Likewise. * libgnat/a-cdlili.ads, libgnat/a-cfdlli.ads: Likewise. * libgnat/a-cfhama.ads, libgnat/a-cfhase.ads: Likewise. * libgnat/a-cfidll.ads, libgnat/a-cfinse.ads: Likewise. * libgnat/a-cfinve.ads, libgnat/a-cforma.ads: Likewise. * libgnat/a-cforse.ads, libgnat/a-cgaaso.adb: Likewise. * libgnat/a-cgaaso.ads, libgnat/a-cgarso.adb: Likewise. * libgnat/a-cgcaso.adb, libgnat/a-chacon.adb: Likewise. * libgnat/a-chacon.ads, libgnat/a-chahan.adb: Likewise. * libgnat/a-chahan.ads, libgnat/a-chlat9.ads: Likewise. * libgnat/a-chtgbk.adb, libgnat/a-chtgbk.ads: Likewise. * libgnat/a-chtgbo.adb, libgnat/a-chtgbo.ads: Likewise. * libgnat/a-chtgfk.adb, libgnat/a-chtgfk.ads: Likewise. * libgnat/a-chtgfo.adb, libgnat/a-chtgfo.ads: Likewise. * libgnat/a-chtgke.adb, libgnat/a-chtgke.ads: Likewise. * libgnat/a-chtgop.adb, libgnat/a-chtgop.ads: Likewise. * libgnat/a-chzla1.ads, libgnat/a-chzla9.ads: Likewise. * libgnat/a-cidlli.adb, libgnat/a-cidlli.ads: Likewise. * libgnat/a-cihama.adb, libgnat/a-cihama.ads: Likewise. * libgnat/a-cihase.adb, libgnat/a-cihase.ads: Likewise. * libgnat/a-cimutr.adb, libgnat/a-cimutr.ads: Likewise. * libgnat/a-ciorma.adb, libgnat/a-ciorma.ads: Likewise. * libgnat/a-ciormu.adb, libgnat/a-ciormu.ads: Likewise. * libgnat/a-ciorse.adb, libgnat/a-ciorse.ads: Likewise. * libgnat/a-clrefi.adb, libgnat/a-clrefi.ads: Likewise. * libgnat/a-coboho.adb, libgnat/a-coboho.ads: Likewise. * libgnat/a-cobove.adb, libgnat/a-cobove.ads: Likewise. * libgnat/a-cofove.ads, libgnat/a-cofuma.ads: Likewise. * libgnat/a-cofuse.ads, libgnat/a-cofuve.ads: Likewise. * libgnat/a-cogeso.adb, libgnat/a-cogeso.ads: Likewise. * libgnat/a-cohama.adb, libgnat/a-cohama.ads: Likewise. * libgnat/a-cohase.adb, libgnat/a-cohase.ads: Likewise. * libgnat/a-cohata.ads, libgnat/a-coinho.adb: Likewise. * libgnat/a-coinho.ads, libgnat/a-coinho__shared.adb: Likewise. * libgnat/a-coinho__shared.ads, libgnat/a-coinve.adb: Likewise. * libgnat/a-coinve.ads, libgnat/a-colien.adb: Likewise. * libgnat/a-colien.ads, libgnat/a-colire.adb: Likewise. * libgnat/a-colire.ads, libgnat/a-comlin.adb: Likewise. * libgnat/a-comlin.ads, libgnat/a-comutr.adb: Likewise. * libgnat/a-comutr.ads, libgnat/a-conhel.adb: Likewise. * libgnat/a-conhel.ads, libgnat/a-convec.adb: Likewise. * libgnat/a-convec.ads, libgnat/a-coorma.adb: Likewise. * libgnat/a-coorma.ads, libgnat/a-coormu.adb: Likewise. * libgnat/a-coormu.ads, libgnat/a-coorse.adb: Likewise. * libgnat/a-coorse.ads, libgnat/a-coprnu.adb: Likewise. * libgnat/a-coprnu.ads, libgnat/a-costso.adb: Likewise. * libgnat/a-costso.ads, libgnat/a-crbltr.ads: Likewise. * libgnat/a-crbtgk.adb, libgnat/a-crbtgk.ads: Likewise. * libgnat/a-crbtgo.adb, libgnat/a-crbtgo.ads: Likewise. * libgnat/a-crdlli.adb, libgnat/a-crdlli.ads: Likewise. * libgnat/a-csquin.ads, libgnat/a-cuprqu.adb: Likewise. * libgnat/a-cuprqu.ads, libgnat/a-cusyqu.adb: Likewise. * libgnat/a-cusyqu.ads, libgnat/a-cwila1.ads: Likewise. * libgnat/a-cwila9.ads, libgnat/a-decima.adb: Likewise. * libgnat/a-decima.ads, libgnat/a-decima__128.ads: Likewise. * libgnat/a-dhfina.adb, libgnat/a-dhfina.ads: Likewise. * libgnat/a-diocst.adb, libgnat/a-diocst.ads: Likewise. * libgnat/a-direct.adb, libgnat/a-direct.ads: Likewise. * libgnat/a-direio.adb, libgnat/a-direio.ads: Likewise. * libgnat/a-dirval.adb, libgnat/a-dirval.ads: Likewise. * libgnat/a-dirval__mingw.adb, libgnat/a-einuoc.adb: Likewise. * libgnat/a-einuoc.ads, libgnat/a-elchha.adb: Likewise. * libgnat/a-elchha.ads, libgnat/a-envvar.adb: Likewise. * libgnat/a-excach.adb, libgnat/a-except.adb: Likewise. * libgnat/a-except.ads, libgnat/a-exctra.adb: Likewise. * libgnat/a-exctra.ads, libgnat/a-exexda.adb: Likewise. * libgnat/a-exexpr.adb, libgnat/a-exextr.adb: Likewise. * libgnat/a-exstat.adb, libgnat/a-finali.adb: Likewise. * libgnat/a-finali.ads, libgnat/a-locale.adb: Likewise. * libgnat/a-locale.ads, libgnat/a-nagefl.ads: Likewise. * libgnat/a-naliop.ads, libgnat/a-naliop__nolibm.ads: Likewise. * libgnat/a-nallfl.ads, libgnat/a-nallfl__wraplf.ads: Likewise. * libgnat/a-nalofl.ads, libgnat/a-nalofl__simd.ads: Likewise. * libgnat/a-nashfl.ads, libgnat/a-nashfl__wraplf.ads: Likewise. * libgnat/a-nbnbig.adb, libgnat/a-nbnbin.adb: Likewise. * libgnat/a-nbnbin__gmp.adb, libgnat/a-nbnbre.adb: Likewise. * libgnat/a-ngcefu.adb, libgnat/a-ngcoar.adb: Likewise. * libgnat/a-ngcoty.adb, libgnat/a-ngcoty.ads: Likewise. * libgnat/a-ngelfu.adb, libgnat/a-ngelfu.ads: Likewise. * libgnat/a-ngrear.adb, libgnat/a-ngrear.ads: Likewise. * libgnat/a-nuauco.ads, libgnat/a-nuauco__x86.ads: Likewise. * libgnat/a-nuaufl.ads, libgnat/a-nuaufl__simd.ads: Likewise. * libgnat/a-nuaufl__wraplf.ads, libgnat/a-nudira.adb: Likewise. * libgnat/a-nudira.ads, libgnat/a-nuflra.adb: Likewise. * libgnat/a-nuflra.ads, libgnat/a-numaux.ads: Likewise. * libgnat/a-rbtgbk.adb, libgnat/a-rbtgbk.ads: Likewise. * libgnat/a-rbtgbo.adb, libgnat/a-rbtgbo.ads: Likewise. * libgnat/a-rbtgso.adb, libgnat/a-rbtgso.ads: Likewise. * libgnat/a-sbecin.adb, libgnat/a-sbecin.ads: Likewise. * libgnat/a-sbhcin.adb, libgnat/a-sbhcin.ads: Likewise. * libgnat/a-sblcin.adb, libgnat/a-sblcin.ads: Likewise. * libgnat/a-secain.adb, libgnat/a-secain.ads: Likewise. * libgnat/a-sequio.adb, libgnat/a-sequio.ads: Likewise. * libgnat/a-sfecin.ads, libgnat/a-sfhcin.ads: Likewise. * libgnat/a-sflcin.ads, libgnat/a-shcain.adb: Likewise. * libgnat/a-shcain.ads, libgnat/a-siocst.adb: Likewise. * libgnat/a-siocst.ads, libgnat/a-slcain.adb: Likewise. * libgnat/a-slcain.ads, libgnat/a-ssicst.adb: Likewise. * libgnat/a-ssicst.ads, libgnat/a-stboha.adb: Likewise. * libgnat/a-stbubo.adb, libgnat/a-stbubo.ads: Likewise. * libgnat/a-stbufi.adb, libgnat/a-stbufi.ads: Likewise. * libgnat/a-stbufo.adb, libgnat/a-stbufo.ads: Likewise. * libgnat/a-stbuun.adb, libgnat/a-stbuut.adb: Likewise. * libgnat/a-stbuut.ads, libgnat/a-stmaco.ads: Likewise. * libgnat/a-storio.adb, libgnat/a-strbou.adb: Likewise. * libgnat/a-strbou.ads, libgnat/a-stream.adb: Likewise. * libgnat/a-stream.ads, libgnat/a-strfix.adb: Likewise. * libgnat/a-strhas.adb, libgnat/a-strmap.adb: Likewise. * libgnat/a-strmap.ads, libgnat/a-strsea.adb: Likewise. * libgnat/a-strsea.ads, libgnat/a-strsto.ads: Likewise. * libgnat/a-strsup.adb, libgnat/a-strsup.ads: Likewise. * libgnat/a-strunb.adb, libgnat/a-strunb.ads: Likewise. * libgnat/a-strunb__shared.adb, libgnat/a-strunb__shared.ads: Likewise. * libgnat/a-ststbo.adb, libgnat/a-ststbo.ads: Likewise. * libgnat/a-ststio.adb, libgnat/a-ststio.ads: Likewise. * libgnat/a-ststun.adb, libgnat/a-ststun.ads: Likewise. * libgnat/a-sttebu.adb, libgnat/a-stunau.adb: Likewise. * libgnat/a-stunau.ads, libgnat/a-stunau__shared.adb: Likewise. * libgnat/a-stunha.adb, libgnat/a-stuten.adb: Likewise. * libgnat/a-stwibo.adb, libgnat/a-stwibo.ads: Likewise. * libgnat/a-stwifi.adb, libgnat/a-stwiha.adb: Likewise. * libgnat/a-stwima.adb, libgnat/a-stwima.ads: Likewise. * libgnat/a-stwise.adb, libgnat/a-stwise.ads: Likewise. * libgnat/a-stwisu.adb, libgnat/a-stwisu.ads: Likewise. * libgnat/a-stwiun.adb, libgnat/a-stwiun.ads: Likewise. * libgnat/a-stwiun__shared.adb, libgnat/a-stwiun__shared.ads: Likewise. * libgnat/a-stzbou.adb, libgnat/a-stzbou.ads: Likewise. * libgnat/a-stzfix.adb, libgnat/a-stzhas.adb: Likewise. * libgnat/a-stzmap.adb, libgnat/a-stzmap.ads: Likewise. * libgnat/a-stzsea.adb, libgnat/a-stzsea.ads: Likewise. * libgnat/a-stzsup.adb, libgnat/a-stzsup.ads: Likewise. * libgnat/a-stzunb.adb, libgnat/a-stzunb.ads: Likewise. * libgnat/a-stzunb__shared.adb, libgnat/a-stzunb__shared.ads: Likewise. * libgnat/a-suecin.adb, libgnat/a-suecin.ads: Likewise. * libgnat/a-suenco.adb, libgnat/a-suenst.adb: Likewise. * libgnat/a-suewst.adb, libgnat/a-suezst.adb: Likewise. * libgnat/a-suhcin.adb, libgnat/a-suhcin.ads: Likewise. * libgnat/a-sulcin.adb, libgnat/a-sulcin.ads: Likewise. * libgnat/a-suteio.adb, libgnat/a-suteio.ads: Likewise. * libgnat/a-suteio__shared.adb, libgnat/a-swbwha.adb: Likewise. * libgnat/a-swmwco.ads, libgnat/a-swunau.adb: Likewise. * libgnat/a-swunau.ads, libgnat/a-swunau__shared.adb: Likewise. * libgnat/a-swuwha.adb, libgnat/a-swuwti.adb: Likewise. * libgnat/a-swuwti.ads, libgnat/a-swuwti__shared.adb: Likewise. * libgnat/a-szbzha.adb, libgnat/a-szmzco.ads: Likewise. * libgnat/a-szunau.adb, libgnat/a-szunau.ads: Likewise. * libgnat/a-szunau__shared.adb, libgnat/a-szuzha.adb: Likewise. * libgnat/a-szuzti.adb, libgnat/a-szuzti.ads: Likewise. * libgnat/a-szuzti__shared.adb, libgnat/a-tags.adb: Likewise. * libgnat/a-tags.ads, libgnat/a-teioed.adb, libgnat/a-teioed.ads: Likewise. * libgnat/a-textio.adb, libgnat/a-textio.ads: Likewise. * libgnat/a-tiboio.adb, libgnat/a-ticoau.adb: Likewise. * libgnat/a-ticoau.ads, libgnat/a-ticoio.adb: Likewise. * libgnat/a-ticoio.ads, libgnat/a-tideau.adb: Likewise. * libgnat/a-tideau.ads, libgnat/a-tideio.adb: Likewise. * libgnat/a-tideio.ads, libgnat/a-tideio__128.adb: Likewise. * libgnat/a-tienau.adb, libgnat/a-tienau.ads: Likewise. * libgnat/a-tienio.adb, libgnat/a-tifiau.adb: Likewise. * libgnat/a-tifiau.ads, libgnat/a-tifiio.adb: Likewise. * libgnat/a-tifiio__128.adb, libgnat/a-tiflau.adb: Likewise. * libgnat/a-tiflau.ads, libgnat/a-tiflio.adb: Likewise. * libgnat/a-tiflio.ads, libgnat/a-tigeau.adb: Likewise. * libgnat/a-tigeau.ads, libgnat/a-tigeli.adb: Likewise. * libgnat/a-tiinau.adb, libgnat/a-tiinau.ads: Likewise. * libgnat/a-tiinio.adb, libgnat/a-tiinio.ads: Likewise. * libgnat/a-tiinio__128.adb, libgnat/a-timoio.adb: Likewise. * libgnat/a-timoio.ads, libgnat/a-timoio__128.adb: Likewise. * libgnat/a-tiocst.adb, libgnat/a-tiocst.ads: Likewise. * libgnat/a-tirsfi.adb, libgnat/a-tirsfi.ads: Likewise. * libgnat/a-titest.adb, libgnat/a-undesu.adb: Likewise. * libgnat/a-wichha.adb, libgnat/a-wichun.adb: Likewise. * libgnat/a-wichun.ads, libgnat/a-witeio.adb: Likewise. * libgnat/a-witeio.ads, libgnat/a-wrstfi.adb: Likewise. * libgnat/a-wrstfi.ads, libgnat/a-wtcoau.adb: Likewise. * libgnat/a-wtcoau.ads, libgnat/a-wtcoio.adb: Likewise. * libgnat/a-wtcstr.adb, libgnat/a-wtcstr.ads: Likewise. * libgnat/a-wtdeau.adb, libgnat/a-wtdeau.ads: Likewise. * libgnat/a-wtdeio.adb, libgnat/a-wtdeio__128.adb: Likewise. * libgnat/a-wtedit.adb, libgnat/a-wtedit.ads: Likewise. * libgnat/a-wtenau.adb, libgnat/a-wtenau.ads: Likewise. * libgnat/a-wtenio.adb, libgnat/a-wtfiau.adb: Likewise. * libgnat/a-wtfiau.ads, libgnat/a-wtfiio.adb: Likewise. * libgnat/a-wtfiio__128.adb, libgnat/a-wtflau.adb: Likewise. * libgnat/a-wtflau.ads, libgnat/a-wtflio.adb: Likewise. * libgnat/a-wtgeau.adb, libgnat/a-wtgeau.ads: Likewise. * libgnat/a-wtinau.adb, libgnat/a-wtinau.ads: Likewise. * libgnat/a-wtinio.adb, libgnat/a-wtinio__128.adb: Likewise. * libgnat/a-wtmoio.adb, libgnat/a-wtmoio.ads: Likewise. * libgnat/a-wtmoio__128.adb, libgnat/a-wttest.adb: Likewise. * libgnat/a-wwboio.adb, libgnat/a-zchhan.adb: Likewise. * libgnat/a-zchuni.adb, libgnat/a-zchuni.ads: Likewise. * libgnat/a-zrstfi.adb, libgnat/a-zrstfi.ads: Likewise. * libgnat/a-ztcoau.adb, libgnat/a-ztcoio.adb: Likewise. * libgnat/a-ztcstr.adb, libgnat/a-ztcstr.ads: Likewise. * libgnat/a-ztdeau.adb, libgnat/a-ztdeau.ads: Likewise. * libgnat/a-ztdeio.adb, libgnat/a-ztdeio__128.adb: Likewise. * libgnat/a-ztedit.adb, libgnat/a-ztedit.ads: Likewise. * libgnat/a-ztenau.adb, libgnat/a-ztenau.ads: Likewise. * libgnat/a-ztenio.adb, libgnat/a-ztexio.adb: Likewise. * libgnat/a-ztexio.ads, libgnat/a-ztfiau.adb: Likewise. * libgnat/a-ztfiau.ads, libgnat/a-ztfiio.adb: Likewise. * libgnat/a-ztfiio__128.adb, libgnat/a-ztflau.adb: Likewise. * libgnat/a-ztflau.ads, libgnat/a-ztflio.adb: Likewise. * libgnat/a-ztgeau.adb, libgnat/a-ztgeau.ads: Likewise. * libgnat/a-ztinau.adb, libgnat/a-ztinau.ads: Likewise. * libgnat/a-ztinio.adb, libgnat/a-ztinio__128.adb: Likewise. * libgnat/a-ztmoio.adb, libgnat/a-ztmoio__128.adb: Likewise. * libgnat/a-zttest.adb, libgnat/a-zzboio.adb: Likewise. * libgnat/g-allein.ads, libgnat/g-alleve.adb: Likewise. * libgnat/g-alleve.ads, libgnat/g-alleve__hard.adb: Likewise. * libgnat/g-alleve__hard.ads, libgnat/g-altcon.adb: Likewise. * libgnat/g-altcon.ads, libgnat/g-altive.ads: Likewise. * libgnat/g-alveop.adb, libgnat/g-alveop.ads: Likewise. * libgnat/g-alvety.ads, libgnat/g-alvevi.ads: Likewise. * libgnat/g-arrspl.adb, libgnat/g-arrspl.ads, libgnat/g-awk.adb: Likewise. * libgnat/g-awk.ads, libgnat/g-binenv.adb, libgnat/g-binenv.ads: Likewise. * libgnat/g-binsea.adb, libgnat/g-binsea.ads: Likewise. * libgnat/g-brapre.ads, libgnat/g-bubsor.adb: Likewise. * libgnat/g-bubsor.ads, libgnat/g-busora.adb: Likewise. * libgnat/g-busora.ads, libgnat/g-busorg.adb: Likewise. * libgnat/g-busorg.ads, libgnat/g-byorma.adb: Likewise. * libgnat/g-byorma.ads, libgnat/g-bytswa.adb: Likewise. * libgnat/g-bytswa.ads, libgnat/g-calend.adb: Likewise. * libgnat/g-calend.ads, libgnat/g-casuti.adb: Likewise. * libgnat/g-casuti.ads, libgnat/g-catiio.adb: Likewise. * libgnat/g-catiio.ads, libgnat/g-cgi.adb, libgnat/g-cgi.ads: Likewise. * libgnat/g-cgicoo.adb, libgnat/g-cgicoo.ads: Likewise. * libgnat/g-cgideb.adb, libgnat/g-cgideb.ads: Likewise. * libgnat/g-comlin.adb, libgnat/g-comlin.ads: Likewise. * libgnat/g-comver.adb, libgnat/g-comver.ads: Likewise. * libgnat/g-cppexc.adb, libgnat/g-cppexc.ads, libgnat/g-crc32.adb: Likewise. * libgnat/g-crc32.ads, libgnat/g-ctrl_c.adb, libgnat/g-ctrl_c.ads: Likewise. * libgnat/g-curexc.ads, libgnat/g-debpoo.adb: Likewise. * libgnat/g-debpoo.ads, libgnat/g-debuti.adb: Likewise. * libgnat/g-debuti.ads, libgnat/g-decstr.adb: Likewise. * libgnat/g-decstr.ads, libgnat/g-deutst.ads: Likewise. * libgnat/g-diopit.adb, libgnat/g-diopit.ads: Likewise. * libgnat/g-dirope.adb, libgnat/g-dirope.ads: Likewise. * libgnat/g-dynhta.adb, libgnat/g-dynhta.ads: Likewise. * libgnat/g-dyntab.adb, libgnat/g-dyntab.ads: Likewise. * libgnat/g-eacodu.adb, libgnat/g-encstr.adb: Likewise. * libgnat/g-encstr.ads, libgnat/g-enutst.ads: Likewise. * libgnat/g-excact.adb, libgnat/g-excact.ads: Likewise. * libgnat/g-except.ads, libgnat/g-exctra.adb: Likewise. * libgnat/g-exctra.ads, libgnat/g-expect.adb: Likewise. * libgnat/g-expect.ads, libgnat/g-exptty.adb: Likewise. * libgnat/g-exptty.ads, libgnat/g-flocon.ads: Likewise. * libgnat/g-forstr.adb, libgnat/g-forstr.ads: Likewise. * libgnat/g-gfmafu.ads, libgnat/g-graphs.adb: Likewise. * libgnat/g-graphs.ads, libgnat/g-heasor.adb: Likewise. * libgnat/g-heasor.ads, libgnat/g-hesora.adb: Likewise. * libgnat/g-hesora.ads, libgnat/g-hesorg.adb: Likewise. * libgnat/g-hesorg.ads, libgnat/g-htable.adb: Likewise. * libgnat/g-htable.ads, libgnat/g-io.adb, libgnat/g-io.ads: Likewise. * libgnat/g-io_aux.adb, libgnat/g-io_aux.ads, libgnat/g-lists.adb: Likewise. * libgnat/g-lists.ads, libgnat/g-locfil.adb, libgnat/g-locfil.ads: Likewise. * libgnat/g-mbdira.adb, libgnat/g-mbdira.ads: Likewise. * libgnat/g-mbflra.adb, libgnat/g-mbflra.ads, libgnat/g-md5.adb: Likewise. * libgnat/g-md5.ads, libgnat/g-memdum.adb, libgnat/g-memdum.ads: Likewise. * libgnat/g-moreex.adb, libgnat/g-moreex.ads: Likewise. * libgnat/g-os_lib.adb, libgnat/g-os_lib.ads: Likewise. * libgnat/g-pehage.adb, libgnat/g-pehage.ads: Likewise. * libgnat/g-rannum.adb, libgnat/g-rannum.ads: Likewise. * libgnat/g-regexp.adb, libgnat/g-regexp.ads: Likewise. * libgnat/g-regist.adb, libgnat/g-regist.ads: Likewise. * libgnat/g-regpat.adb, libgnat/g-regpat.ads: Likewise. * libgnat/g-rewdat.adb, libgnat/g-rewdat.ads: Likewise. * libgnat/g-sechas.adb, libgnat/g-sechas.ads: Likewise. * libgnat/g-sehamd.adb, libgnat/g-sehamd.ads: Likewise. * libgnat/g-sehash.adb, libgnat/g-sehash.ads: Likewise. * libgnat/g-sercom.adb, libgnat/g-sercom.ads: Likewise. * libgnat/g-sercom__linux.adb, libgnat/g-sercom__mingw.adb: Likewise. * libgnat/g-sestin.ads, libgnat/g-sets.adb, libgnat/g-sets.ads: Likewise. * libgnat/g-sha1.adb, libgnat/g-sha1.ads, libgnat/g-sha224.ads: Likewise. * libgnat/g-sha256.ads, libgnat/g-sha384.ads: Likewise. * libgnat/g-sha512.ads, libgnat/g-shsh32.adb: Likewise. * libgnat/g-shsh32.ads, libgnat/g-shsh64.adb: Likewise. * libgnat/g-shsh64.ads, libgnat/g-shshco.adb: Likewise. * libgnat/g-shshco.ads, libgnat/g-soccon.ads: Likewise. * libgnat/g-socket.adb, libgnat/g-socket.ads: Likewise. * libgnat/g-socket__dummy.adb, libgnat/g-socket__dummy.ads: Likewise. * libgnat/g-socpol.adb, libgnat/g-socpol.ads: Likewise. * libgnat/g-socpol__dummy.adb, libgnat/g-socpol__dummy.ads: Likewise. * libgnat/g-socthi.adb, libgnat/g-socthi.ads: Likewise. * libgnat/g-socthi__dummy.adb, libgnat/g-socthi__dummy.ads: Likewise. * libgnat/g-socthi__mingw.adb, libgnat/g-socthi__mingw.ads: Likewise. * libgnat/g-socthi__vxworks.adb, libgnat/g-socthi__vxworks.ads: Likewise. * libgnat/g-soliop.ads, libgnat/g-soliop__lynxos.ads: Likewise. * libgnat/g-soliop__mingw.ads, libgnat/g-soliop__qnx.ads: Likewise. * libgnat/g-soliop__solaris.ads, libgnat/g-sopowa.adb: Likewise. * libgnat/g-sopowa__mingw.adb, libgnat/g-sopowa__posix.adb: Likewise. * libgnat/g-sothco.adb, libgnat/g-sothco.ads: Likewise. * libgnat/g-sothco__dummy.adb, libgnat/g-sothco__dummy.ads: Likewise. * libgnat/g-souinf.ads, libgnat/g-spchge.adb: Likewise. * libgnat/g-spchge.ads, libgnat/g-speche.adb: Likewise. * libgnat/g-speche.ads, libgnat/g-spipat.adb: Likewise. * libgnat/g-spipat.ads, libgnat/g-spitbo.adb: Likewise. * libgnat/g-spitbo.ads, libgnat/g-spogwa.adb: Likewise. * libgnat/g-spogwa.ads, libgnat/g-sptabo.ads: Likewise. * libgnat/g-sptain.ads, libgnat/g-sptavs.ads, libgnat/g-sse.ads: Likewise. * libgnat/g-ssvety.ads, libgnat/g-sthcso.adb: Likewise. * libgnat/g-stheme.adb, libgnat/g-strhas.ads: Likewise. * libgnat/g-string.adb, libgnat/g-string.ads: Likewise. * libgnat/g-strspl.ads, libgnat/g-stseme.adb: Likewise. * libgnat/g-stsifd__sockets.adb, libgnat/g-table.adb: Likewise. * libgnat/g-table.ads, libgnat/g-tasloc.adb, libgnat/g-tasloc.ads: Likewise. * libgnat/g-timsta.adb, libgnat/g-timsta.ads: Likewise. * libgnat/g-traceb.adb, libgnat/g-traceb.ads: Likewise. * libgnat/g-trasym.adb, libgnat/g-trasym.ads, libgnat/g-tty.adb: Likewise. * libgnat/g-tty.ads, libgnat/g-u3spch.adb, libgnat/g-u3spch.ads: Likewise. * libgnat/g-utf_32.adb, libgnat/g-utf_32.ads: Likewise. * libgnat/g-wispch.adb, libgnat/g-wispch.ads: Likewise. * libgnat/g-wistsp.ads, libgnat/g-zspche.adb: Likewise. * libgnat/g-zspche.ads, libgnat/g-zstspl.ads, libgnat/gnat.ads: Likewise. * libgnat/i-c.adb, libgnat/i-cexten.ads: Likewise. * libgnat/i-cexten__128.ads, libgnat/i-cobol.adb: Likewise. * libgnat/i-cobol.ads, libgnat/i-cpoint.adb, libgnat/i-cpoint.ads: Likewise. * libgnat/i-cstrea.adb, libgnat/i-cstrea.ads: Likewise. * libgnat/i-cstrin.adb, libgnat/i-cstrin.ads: Likewise. * libgnat/i-fortra.adb, libgnat/i-pacdec.adb: Likewise. * libgnat/i-pacdec.ads, libgnat/i-vxwoio.adb: Likewise. * libgnat/i-vxwoio.ads, libgnat/i-vxwork.ads: Likewise. * libgnat/i-vxwork__x86.ads, libgnat/interfac.ads: Likewise. * libgnat/interfac__2020.ads, libgnat/memtrack.adb: Likewise. * libgnat/s-addima.adb, libgnat/s-addima.ads: Likewise. * libgnat/s-addope.adb, libgnat/s-addope.ads: Likewise. * libgnat/s-aoinar.adb, libgnat/s-aoinar.ads: Likewise. * libgnat/s-aomoar.adb, libgnat/s-aomoar.ads: Likewise. * libgnat/s-aotase.adb, libgnat/s-aotase.ads: Likewise. * libgnat/s-aridou.adb, libgnat/s-aridou.ads: Likewise. * libgnat/s-arit128.adb, libgnat/s-arit128.ads: Likewise. * libgnat/s-arit32.adb, libgnat/s-arit32.ads: Likewise. * libgnat/s-arit64.adb, libgnat/s-arit64.ads: Likewise. * libgnat/s-assert.adb, libgnat/s-assert.ads: Likewise. * libgnat/s-atacco.adb, libgnat/s-atacco.ads: Likewise. * libgnat/s-atocou.adb, libgnat/s-atocou.ads: Likewise. * libgnat/s-atocou__builtin.adb, libgnat/s-atoope.ads: Likewise. * libgnat/s-atopex.adb, libgnat/s-atopex.ads: Likewise. * libgnat/s-atopri.adb, libgnat/s-atopri.ads: Likewise. * libgnat/s-auxdec.adb, libgnat/s-auxdec.ads: Likewise. * libgnat/s-bignum.adb, libgnat/s-bignum.ads: Likewise. * libgnat/s-bitfie.ads, libgnat/s-bitops.adb: Likewise. * libgnat/s-bitops.ads, libgnat/s-bituti.adb: Likewise. * libgnat/s-bituti.ads, libgnat/s-boarop.ads: Likewise. * libgnat/s-boustr.adb, libgnat/s-boustr.ads: Likewise. * libgnat/s-bytswa.ads, libgnat/s-carsi8.adb: Likewise. * libgnat/s-carsi8.ads, libgnat/s-carun8.adb: Likewise. * libgnat/s-carun8.ads, libgnat/s-casi128.adb: Likewise. * libgnat/s-casi128.ads, libgnat/s-casi16.adb: Likewise. * libgnat/s-casi16.ads, libgnat/s-casi32.adb: Likewise. * libgnat/s-casi32.ads, libgnat/s-casi64.adb: Likewise. * libgnat/s-casi64.ads, libgnat/s-casuti.adb: Likewise. * libgnat/s-casuti.ads, libgnat/s-caun128.adb: Likewise. * libgnat/s-caun128.ads, libgnat/s-caun16.adb: Likewise. * libgnat/s-caun16.ads, libgnat/s-caun32.adb: Likewise. * libgnat/s-caun32.ads, libgnat/s-caun64.adb: Likewise. * libgnat/s-caun64.ads, libgnat/s-chepoo.ads: Likewise. * libgnat/s-commun.adb, libgnat/s-commun.ads: Likewise. * libgnat/s-conca2.adb, libgnat/s-conca2.ads: Likewise. * libgnat/s-conca3.adb, libgnat/s-conca3.ads: Likewise. * libgnat/s-conca4.adb, libgnat/s-conca4.ads: Likewise. * libgnat/s-conca5.adb, libgnat/s-conca5.ads: Likewise. * libgnat/s-conca6.adb, libgnat/s-conca6.ads: Likewise. * libgnat/s-conca7.adb, libgnat/s-conca7.ads: Likewise. * libgnat/s-conca8.adb, libgnat/s-conca8.ads: Likewise. * libgnat/s-conca9.adb, libgnat/s-conca9.ads, libgnat/s-crc32.adb: Likewise. * libgnat/s-crc32.ads, libgnat/s-crtl.ads, libgnat/s-dfmkio.ads: Likewise. * libgnat/s-dfmopr.ads, libgnat/s-dgmgop.ads: Likewise. * libgnat/s-diflio.adb, libgnat/s-diflio.ads: Likewise. * libgnat/s-diflmk.ads, libgnat/s-digemk.ads: Likewise. * libgnat/s-diinio.adb, libgnat/s-diinio.ads: Likewise. * libgnat/s-dilomk.ads, libgnat/s-dim.ads, libgnat/s-dimkio.ads: Likewise. * libgnat/s-dimmks.ads, libgnat/s-direio.adb: Likewise. * libgnat/s-direio.ads, libgnat/s-dlmkio.ads: Likewise. * libgnat/s-dlmopr.ads, libgnat/s-dmotpr.ads: Likewise. * libgnat/s-dorepr.adb, libgnat/s-dorepr__fma.adb: Likewise. * libgnat/s-dourea.adb, libgnat/s-dourea.ads: Likewise. * libgnat/s-dsaser.ads, libgnat/s-dwalin.adb: Likewise. * libgnat/s-dwalin.ads, libgnat/s-elaall.adb: Likewise. * libgnat/s-elaall.ads, libgnat/s-excdeb.adb: Likewise. * libgnat/s-excdeb.ads, libgnat/s-except.adb: Likewise. * libgnat/s-except.ads, libgnat/s-excmac__arm.adb: Likewise. * libgnat/s-excmac__arm.ads, libgnat/s-excmac__gcc.adb: Likewise. * libgnat/s-excmac__gcc.ads, libgnat/s-exctab.adb: Likewise. * libgnat/s-exctab.ads, libgnat/s-exctra.adb: Likewise. * libgnat/s-exctra.ads, libgnat/s-exnflt.ads: Likewise. * libgnat/s-exnint.adb, libgnat/s-exnint.ads: Likewise. * libgnat/s-exnlfl.ads, libgnat/s-exnllf.adb: Likewise. * libgnat/s-exnllf.ads, libgnat/s-exnlli.adb: Likewise. * libgnat/s-exnlli.ads, libgnat/s-exnllli.ads: Likewise. * libgnat/s-expint.adb, libgnat/s-expint.ads: Likewise. * libgnat/s-explli.adb, libgnat/s-explli.ads: Likewise. * libgnat/s-expllli.ads, libgnat/s-explllu.ads: Likewise. * libgnat/s-expllu.adb, libgnat/s-expllu.ads: Likewise. * libgnat/s-expmod.adb, libgnat/s-expmod.ads: Likewise. * libgnat/s-exponn.adb, libgnat/s-exponn.ads: Likewise. * libgnat/s-exponr.adb, libgnat/s-exponr.ads: Likewise. * libgnat/s-expont.adb, libgnat/s-expont.ads: Likewise. * libgnat/s-exponu.adb, libgnat/s-exponu.ads: Likewise. * libgnat/s-expuns.adb, libgnat/s-expuns.ads: Likewise. * libgnat/s-fatflt.ads, libgnat/s-fatgen.adb: Likewise. * libgnat/s-fatgen.ads, libgnat/s-fatlfl.ads: Likewise. * libgnat/s-fatllf.ads, libgnat/s-ficobl.ads: Likewise. * libgnat/s-filatt.ads, libgnat/s-fileio.adb: Likewise. * libgnat/s-fileio.ads, libgnat/s-finmas.adb: Likewise. * libgnat/s-finmas.ads, libgnat/s-finroo.adb: Likewise. * libgnat/s-finroo.ads, libgnat/s-flocon.adb: Likewise. * libgnat/s-flocon.ads, libgnat/s-flocon__none.adb: Likewise. * libgnat/s-fode128.ads, libgnat/s-fode32.ads: Likewise. * libgnat/s-fode64.ads, libgnat/s-fofi128.ads: Likewise. * libgnat/s-fofi32.ads, libgnat/s-fofi64.ads: Likewise. * libgnat/s-fore_d.adb, libgnat/s-fore_d.ads: Likewise. * libgnat/s-fore_f.adb, libgnat/s-fore_f.ads: Likewise. * libgnat/s-forrea.adb, libgnat/s-forrea.ads: Likewise. * libgnat/s-gearop.adb, libgnat/s-gearop.ads: Likewise. * libgnat/s-genbig.adb, libgnat/s-genbig.ads: Likewise. * libgnat/s-geveop.adb, libgnat/s-geveop.ads: Likewise. * libgnat/s-gloloc.adb, libgnat/s-gloloc.ads: Likewise. * libgnat/s-gloloc__mingw.adb, libgnat/s-htable.adb: Likewise. * libgnat/s-htable.ads, libgnat/s-imageb.adb: Likewise. * libgnat/s-imageb.ads, libgnat/s-imaged.adb: Likewise. * libgnat/s-imaged.ads, libgnat/s-imagef.adb: Likewise. * libgnat/s-imagef.ads, libgnat/s-imagei.adb: Likewise. * libgnat/s-imagei.ads, libgnat/s-imagen.adb: Likewise. * libgnat/s-imagen.ads, libgnat/s-imager.adb: Likewise. * libgnat/s-imager.ads, libgnat/s-imageu.adb: Likewise. * libgnat/s-imageu.ads, libgnat/s-imagew.adb: Likewise. * libgnat/s-imagew.ads, libgnat/s-imde128.ads: Likewise. * libgnat/s-imde32.ads, libgnat/s-imde64.ads: Likewise. * libgnat/s-imen16.ads, libgnat/s-imen32.ads: Likewise. * libgnat/s-imenu8.ads, libgnat/s-imfi128.ads: Likewise. * libgnat/s-imfi32.ads, libgnat/s-imfi64.ads: Likewise. * libgnat/s-imgbiu.adb, libgnat/s-imgbiu.ads: Likewise. * libgnat/s-imgboo.adb, libgnat/s-imgboo.ads: Likewise. * libgnat/s-imgcha.adb, libgnat/s-imgcha.ads: Likewise. * libgnat/s-imgflt.ads, libgnat/s-imgint.adb: Likewise. * libgnat/s-imgint.ads, libgnat/s-imglfl.ads: Likewise. * libgnat/s-imgllb.adb, libgnat/s-imgllb.ads: Likewise. * libgnat/s-imgllf.ads, libgnat/s-imglli.adb: Likewise. * libgnat/s-imglli.ads, libgnat/s-imglllb.ads: Likewise. * libgnat/s-imgllli.ads, libgnat/s-imglllu.ads: Likewise. * libgnat/s-imglllw.ads, libgnat/s-imgllu.adb: Likewise. * libgnat/s-imgllu.ads, libgnat/s-imgllw.adb: Likewise. * libgnat/s-imgllw.ads, libgnat/s-imgrea.adb: Likewise. * libgnat/s-imgrea.ads, libgnat/s-imguns.adb: Likewise. * libgnat/s-imguns.ads, libgnat/s-imguti.adb: Likewise. * libgnat/s-imguti.ads, libgnat/s-imgwch.adb: Likewise. * libgnat/s-imgwch.ads, libgnat/s-imgwiu.adb: Likewise. * libgnat/s-imgwiu.ads, libgnat/s-io.adb, libgnat/s-io.ads: Likewise. * libgnat/s-llflex.ads, libgnat/s-maccod.ads: Likewise. * libgnat/s-mantis.adb, libgnat/s-mantis.ads: Likewise. * libgnat/s-mastop.adb, libgnat/s-mastop.ads: Likewise. * libgnat/s-memcop.ads, libgnat/s-memory.adb: Likewise. * libgnat/s-memory.ads, libgnat/s-mmap.adb, libgnat/s-mmap.ads: Likewise. * libgnat/s-mmauni__long.ads, libgnat/s-mmosin__mingw.adb: Likewise. * libgnat/s-mmosin__mingw.ads, libgnat/s-mmosin__unix.adb: Likewise. * libgnat/s-mmosin__unix.ads, libgnat/s-multip.adb: Likewise. * libgnat/s-objrea.adb, libgnat/s-objrea.ads: Likewise. * libgnat/s-optide.adb, libgnat/s-os_lib.adb: Likewise. * libgnat/s-os_lib.ads, libgnat/s-osprim.ads: Likewise. * libgnat/s-osprim__darwin.adb, libgnat/s-osprim__lynxos.ads: Likewise. * libgnat/s-osprim__mingw.adb, libgnat/s-osprim__posix.adb: Likewise. * libgnat/s-osprim__posix2008.adb, libgnat/s-osprim__rtems.adb: Likewise. * libgnat/s-osprim__solaris.adb, libgnat/s-osprim__unix.adb: Likewise. * libgnat/s-osprim__x32.adb, libgnat/s-pack03.adb: Likewise. * libgnat/s-pack03.ads, libgnat/s-pack05.adb: Likewise. * libgnat/s-pack05.ads, libgnat/s-pack06.adb: Likewise. * libgnat/s-pack06.ads, libgnat/s-pack07.adb: Likewise. * libgnat/s-pack07.ads, libgnat/s-pack09.adb: Likewise. * libgnat/s-pack09.ads, libgnat/s-pack10.adb: Likewise. * libgnat/s-pack10.ads, libgnat/s-pack100.adb: Likewise. * libgnat/s-pack100.ads, libgnat/s-pack101.adb: Likewise. * libgnat/s-pack101.ads, libgnat/s-pack102.adb: Likewise. * libgnat/s-pack102.ads, libgnat/s-pack103.adb: Likewise. * libgnat/s-pack103.ads, libgnat/s-pack104.adb: Likewise. * libgnat/s-pack104.ads, libgnat/s-pack105.adb: Likewise. * libgnat/s-pack105.ads, libgnat/s-pack106.adb: Likewise. * libgnat/s-pack106.ads, libgnat/s-pack107.adb: Likewise. * libgnat/s-pack107.ads, libgnat/s-pack108.adb: Likewise. * libgnat/s-pack108.ads, libgnat/s-pack109.adb: Likewise. * libgnat/s-pack109.ads, libgnat/s-pack11.adb: Likewise. * libgnat/s-pack11.ads, libgnat/s-pack110.adb: Likewise. * libgnat/s-pack110.ads, libgnat/s-pack111.adb: Likewise. * libgnat/s-pack111.ads, libgnat/s-pack112.adb: Likewise. * libgnat/s-pack112.ads, libgnat/s-pack113.adb: Likewise. * libgnat/s-pack113.ads, libgnat/s-pack114.adb: Likewise. * libgnat/s-pack114.ads, libgnat/s-pack115.adb: Likewise. * libgnat/s-pack115.ads, libgnat/s-pack116.adb: Likewise. * libgnat/s-pack116.ads, libgnat/s-pack117.adb: Likewise. * libgnat/s-pack117.ads, libgnat/s-pack118.adb: Likewise. * libgnat/s-pack118.ads, libgnat/s-pack119.adb: Likewise. * libgnat/s-pack119.ads, libgnat/s-pack12.adb: Likewise. * libgnat/s-pack12.ads, libgnat/s-pack120.adb: Likewise. * libgnat/s-pack120.ads, libgnat/s-pack121.adb: Likewise. * libgnat/s-pack121.ads, libgnat/s-pack122.adb: Likewise. * libgnat/s-pack122.ads, libgnat/s-pack123.adb: Likewise. * libgnat/s-pack123.ads, libgnat/s-pack124.adb: Likewise. * libgnat/s-pack124.ads, libgnat/s-pack125.adb: Likewise. * libgnat/s-pack125.ads, libgnat/s-pack126.adb: Likewise. * libgnat/s-pack126.ads, libgnat/s-pack127.adb: Likewise. * libgnat/s-pack127.ads, libgnat/s-pack13.adb: Likewise. * libgnat/s-pack13.ads, libgnat/s-pack14.adb: Likewise. * libgnat/s-pack14.ads, libgnat/s-pack15.adb: Likewise. * libgnat/s-pack15.ads, libgnat/s-pack17.adb: Likewise. * libgnat/s-pack17.ads, libgnat/s-pack18.adb: Likewise. * libgnat/s-pack18.ads, libgnat/s-pack19.adb: Likewise. * libgnat/s-pack19.ads, libgnat/s-pack20.adb: Likewise. * libgnat/s-pack20.ads, libgnat/s-pack21.adb: Likewise. * libgnat/s-pack21.ads, libgnat/s-pack22.adb: Likewise. * libgnat/s-pack22.ads, libgnat/s-pack23.adb: Likewise. * libgnat/s-pack23.ads, libgnat/s-pack24.adb: Likewise. * libgnat/s-pack24.ads, libgnat/s-pack25.adb: Likewise. * libgnat/s-pack25.ads, libgnat/s-pack26.adb: Likewise. * libgnat/s-pack26.ads, libgnat/s-pack27.adb: Likewise. * libgnat/s-pack27.ads, libgnat/s-pack28.adb: Likewise. * libgnat/s-pack28.ads, libgnat/s-pack29.adb: Likewise. * libgnat/s-pack29.ads, libgnat/s-pack30.adb: Likewise. * libgnat/s-pack30.ads, libgnat/s-pack31.adb: Likewise. * libgnat/s-pack31.ads, libgnat/s-pack33.adb: Likewise. * libgnat/s-pack33.ads, libgnat/s-pack34.adb: Likewise. * libgnat/s-pack34.ads, libgnat/s-pack35.adb: Likewise. * libgnat/s-pack35.ads, libgnat/s-pack36.adb: Likewise. * libgnat/s-pack36.ads, libgnat/s-pack37.adb: Likewise. * libgnat/s-pack37.ads, libgnat/s-pack38.adb: Likewise. * libgnat/s-pack38.ads, libgnat/s-pack39.adb: Likewise. * libgnat/s-pack39.ads, libgnat/s-pack40.adb: Likewise. * libgnat/s-pack40.ads, libgnat/s-pack41.adb: Likewise. * libgnat/s-pack41.ads, libgnat/s-pack42.adb: Likewise. * libgnat/s-pack42.ads, libgnat/s-pack43.adb: Likewise. * libgnat/s-pack43.ads, libgnat/s-pack44.adb: Likewise. * libgnat/s-pack44.ads, libgnat/s-pack45.adb: Likewise. * libgnat/s-pack45.ads, libgnat/s-pack46.adb: Likewise. * libgnat/s-pack46.ads, libgnat/s-pack47.adb: Likewise. * libgnat/s-pack47.ads, libgnat/s-pack48.adb: Likewise. * libgnat/s-pack48.ads, libgnat/s-pack49.adb: Likewise. * libgnat/s-pack49.ads, libgnat/s-pack50.adb: Likewise. * libgnat/s-pack50.ads, libgnat/s-pack51.adb: Likewise. * libgnat/s-pack51.ads, libgnat/s-pack52.adb: Likewise. * libgnat/s-pack52.ads, libgnat/s-pack53.adb: Likewise. * libgnat/s-pack53.ads, libgnat/s-pack54.adb: Likewise. * libgnat/s-pack54.ads, libgnat/s-pack55.adb: Likewise. * libgnat/s-pack55.ads, libgnat/s-pack56.adb: Likewise. * libgnat/s-pack56.ads, libgnat/s-pack57.adb: Likewise. * libgnat/s-pack57.ads, libgnat/s-pack58.adb: Likewise. * libgnat/s-pack58.ads, libgnat/s-pack59.adb: Likewise. * libgnat/s-pack59.ads, libgnat/s-pack60.adb: Likewise. * libgnat/s-pack60.ads, libgnat/s-pack61.adb: Likewise. * libgnat/s-pack61.ads, libgnat/s-pack62.adb: Likewise. * libgnat/s-pack62.ads, libgnat/s-pack63.adb: Likewise. * libgnat/s-pack63.ads, libgnat/s-pack65.adb: Likewise. * libgnat/s-pack65.ads, libgnat/s-pack66.adb: Likewise. * libgnat/s-pack66.ads, libgnat/s-pack67.adb: Likewise. * libgnat/s-pack67.ads, libgnat/s-pack68.adb: Likewise. * libgnat/s-pack68.ads, libgnat/s-pack69.adb: Likewise. * libgnat/s-pack69.ads, libgnat/s-pack70.adb: Likewise. * libgnat/s-pack70.ads, libgnat/s-pack71.adb: Likewise. * libgnat/s-pack71.ads, libgnat/s-pack72.adb: Likewise. * libgnat/s-pack72.ads, libgnat/s-pack73.adb: Likewise. * libgnat/s-pack73.ads, libgnat/s-pack74.adb: Likewise. * libgnat/s-pack74.ads, libgnat/s-pack75.adb: Likewise. * libgnat/s-pack75.ads, libgnat/s-pack76.adb: Likewise. * libgnat/s-pack76.ads, libgnat/s-pack77.adb: Likewise. * libgnat/s-pack77.ads, libgnat/s-pack78.adb: Likewise. * libgnat/s-pack78.ads, libgnat/s-pack79.adb: Likewise. * libgnat/s-pack79.ads, libgnat/s-pack80.adb: Likewise. * libgnat/s-pack80.ads, libgnat/s-pack81.adb: Likewise. * libgnat/s-pack81.ads, libgnat/s-pack82.adb: Likewise. * libgnat/s-pack82.ads, libgnat/s-pack83.adb: Likewise. * libgnat/s-pack83.ads, libgnat/s-pack84.adb: Likewise. * libgnat/s-pack84.ads, libgnat/s-pack85.adb: Likewise. * libgnat/s-pack85.ads, libgnat/s-pack86.adb: Likewise. * libgnat/s-pack86.ads, libgnat/s-pack87.adb: Likewise. * libgnat/s-pack87.ads, libgnat/s-pack88.adb: Likewise. * libgnat/s-pack88.ads, libgnat/s-pack89.adb: Likewise. * libgnat/s-pack89.ads, libgnat/s-pack90.adb: Likewise. * libgnat/s-pack90.ads, libgnat/s-pack91.adb: Likewise. * libgnat/s-pack91.ads, libgnat/s-pack92.adb: Likewise. * libgnat/s-pack92.ads, libgnat/s-pack93.adb: Likewise. * libgnat/s-pack93.ads, libgnat/s-pack94.adb: Likewise. * libgnat/s-pack94.ads, libgnat/s-pack95.adb: Likewise. * libgnat/s-pack95.ads, libgnat/s-pack96.adb: Likewise. * libgnat/s-pack96.ads, libgnat/s-pack97.adb: Likewise. * libgnat/s-pack97.ads, libgnat/s-pack98.adb: Likewise. * libgnat/s-pack98.ads, libgnat/s-pack99.adb: Likewise. * libgnat/s-pack99.ads, libgnat/s-parame.adb: Likewise. * libgnat/s-parame.ads, libgnat/s-parame__hpux.ads: Likewise. * libgnat/s-parame__posix2008.ads, libgnat/s-parame__rtems.adb: Likewise. * libgnat/s-parame__vxworks.adb, libgnat/s-parame__vxworks.ads: Likewise. * libgnat/s-parint.adb, libgnat/s-parint.ads: Likewise. * libgnat/s-pehage.adb, libgnat/s-pehage.ads: Likewise. * libgnat/s-pooglo.adb, libgnat/s-pooglo.ads: Likewise. * libgnat/s-pooloc.adb, libgnat/s-pooloc.ads: Likewise. * libgnat/s-poosiz.adb, libgnat/s-poosiz.ads: Likewise. * libgnat/s-powflt.ads, libgnat/s-powlfl.ads: Likewise. * libgnat/s-powllf.ads, libgnat/s-purexc.ads: Likewise. * libgnat/s-putima.adb, libgnat/s-putima.ads: Likewise. * libgnat/s-rannum.adb, libgnat/s-rannum.ads: Likewise. * libgnat/s-ransee.adb, libgnat/s-ransee.ads: Likewise. * libgnat/s-regexp.adb, libgnat/s-regexp.ads: Likewise. * libgnat/s-regpat.adb, libgnat/s-regpat.ads: Likewise. * libgnat/s-resfil.adb, libgnat/s-resfil.ads: Likewise. * libgnat/s-restri.adb, libgnat/s-restri.ads: Likewise. * libgnat/s-retsta.ads, libgnat/s-rident.ads, libgnat/s-rpc.adb: Likewise. * libgnat/s-rpc.ads, libgnat/s-scaval.adb, libgnat/s-scaval.ads: Likewise. * libgnat/s-scaval__128.adb, libgnat/s-scaval__128.ads: Likewise. * libgnat/s-secsta.adb, libgnat/s-secsta.ads: Likewise. * libgnat/s-sequio.adb, libgnat/s-sequio.ads: Likewise. * libgnat/s-shabig.ads, libgnat/s-shasto.adb: Likewise. * libgnat/s-shasto.ads, libgnat/s-soflin.adb: Likewise. * libgnat/s-soflin.ads, libgnat/s-soliin.adb: Likewise. * libgnat/s-soliin.ads, libgnat/s-spark.ads, libgnat/s-spcuop.adb: Likewise. * libgnat/s-spcuop.ads, libgnat/s-spsufi.adb: Likewise. * libgnat/s-spsufi.ads, libgnat/s-stache.adb: Likewise. * libgnat/s-stache.ads, libgnat/s-stalib.adb: Likewise. * libgnat/s-stalib.ads, libgnat/s-statxd.adb: Likewise. * libgnat/s-statxd.ads, libgnat/s-stausa.adb: Likewise. * libgnat/s-stausa.ads, libgnat/s-stchop.adb: Likewise. * libgnat/s-stchop.ads, libgnat/s-stchop__limit.ads: Likewise. * libgnat/s-stchop__vxworks.adb, libgnat/s-stoele.adb: Likewise. * libgnat/s-stoele.ads, libgnat/s-stopoo.adb: Likewise. * libgnat/s-stopoo.ads, libgnat/s-stposu.adb: Likewise. * libgnat/s-stposu.ads, libgnat/s-stratt.adb: Likewise. * libgnat/s-stratt.ads, libgnat/s-strcom.adb: Likewise. * libgnat/s-strcom.ads, libgnat/s-strhas.adb: Likewise. * libgnat/s-strhas.ads, libgnat/s-string.adb: Likewise. * libgnat/s-string.ads, libgnat/s-ststop.adb: Likewise. * libgnat/s-ststop.ads, libgnat/s-tasloc.adb: Likewise. * libgnat/s-tasloc.ads, libgnat/s-traceb.adb: Likewise. * libgnat/s-traceb.ads, libgnat/s-traceb__hpux.adb: Likewise. * libgnat/s-traceb__mastop.adb, libgnat/s-traent.adb: Likewise. * libgnat/s-traent.ads, libgnat/s-trasym.adb: Likewise. * libgnat/s-trasym.ads, libgnat/s-trasym__dwarf.adb: Likewise. * libgnat/s-tsmona.adb, libgnat/s-tsmona__linux.adb: Likewise. * libgnat/s-tsmona__mingw.adb, libgnat/s-unstyp.ads: Likewise. * libgnat/s-utf_32.adb, libgnat/s-utf_32.ads: Likewise. * libgnat/s-vade128.ads, libgnat/s-vade32.ads: Likewise. * libgnat/s-vade64.ads, libgnat/s-vaen16.ads: Likewise. * libgnat/s-vaen32.ads, libgnat/s-vaenu8.ads: Likewise. * libgnat/s-vafi128.ads, libgnat/s-vafi32.ads: Likewise. * libgnat/s-vafi64.ads, libgnat/s-vaispe.adb: Likewise. * libgnat/s-vaispe.ads, libgnat/s-valboo.adb: Likewise. * libgnat/s-valboo.ads, libgnat/s-valcha.adb: Likewise. * libgnat/s-valcha.ads, libgnat/s-valflt.ads: Likewise. * libgnat/s-valint.adb, libgnat/s-valint.ads: Likewise. * libgnat/s-vallfl.ads, libgnat/s-valllf.ads: Likewise. * libgnat/s-vallli.adb, libgnat/s-vallli.ads: Likewise. * libgnat/s-valllli.ads, libgnat/s-vallllu.ads: Likewise. * libgnat/s-valllu.adb, libgnat/s-valllu.ads: Likewise. * libgnat/s-valrea.adb, libgnat/s-valrea.ads: Likewise. * libgnat/s-valued.adb, libgnat/s-valued.ads: Likewise. * libgnat/s-valuef.adb, libgnat/s-valuef.ads: Likewise. * libgnat/s-valuei.adb, libgnat/s-valuei.ads: Likewise. * libgnat/s-valuen.adb, libgnat/s-valuen.ads: Likewise. * libgnat/s-valuer.adb, libgnat/s-valuer.ads: Likewise. * libgnat/s-valueu.adb, libgnat/s-valueu.ads: Likewise. * libgnat/s-valuns.adb, libgnat/s-valuns.ads: Likewise. * libgnat/s-valuti.adb, libgnat/s-valuti.ads: Likewise. * libgnat/s-valwch.adb, libgnat/s-valwch.ads: Likewise. * libgnat/s-vauspe.adb, libgnat/s-vauspe.ads: Likewise. * libgnat/s-veboop.adb, libgnat/s-veboop.ads: Likewise. * libgnat/s-vector.ads, libgnat/s-vercon.adb: Likewise. * libgnat/s-vercon.ads, libgnat/s-wchcnv.adb: Likewise. * libgnat/s-wchcnv.ads, libgnat/s-wchcon.adb: Likewise. * libgnat/s-wchcon.ads, libgnat/s-wchjis.adb: Likewise. * libgnat/s-wchjis.ads, libgnat/s-wchstw.adb: Likewise. * libgnat/s-wchstw.ads, libgnat/s-wchwts.adb: Likewise. * libgnat/s-wchwts.ads, libgnat/s-widboo.adb: Likewise. * libgnat/s-widboo.ads, libgnat/s-widcha.adb: Likewise. * libgnat/s-widcha.ads, libgnat/s-widenu.adb: Likewise. * libgnat/s-widenu.ads, libgnat/s-widint.ads: Likewise. * libgnat/s-widlli.adb, libgnat/s-widlli.ads: Likewise. * libgnat/s-widllli.ads, libgnat/s-widlllu.ads: Likewise. * libgnat/s-widllu.adb, libgnat/s-widllu.ads: Likewise. * libgnat/s-widthi.adb, libgnat/s-widthi.ads: Likewise. * libgnat/s-widthu.adb, libgnat/s-widthu.ads: Likewise. * libgnat/s-widuns.ads, libgnat/s-widwch.adb: Likewise. * libgnat/s-widwch.ads, libgnat/s-win32.ads, libgnat/s-winext.ads: Likewise. * libgnat/s-wwdcha.adb, libgnat/s-wwdcha.ads: Likewise. * libgnat/s-wwdenu.adb, libgnat/s-wwdenu.ads: Likewise. * libgnat/s-wwdwch.adb, libgnat/s-wwdwch.ads: Likewise. * libgnat/system-aix.ads, libgnat/system-darwin-arm.ads: Likewise. * libgnat/system-darwin-ppc.ads, libgnat/system-darwin-x86.ads: Likewise. * libgnat/system-djgpp.ads, libgnat/system-dragonfly-x86_64.ads: Likewise. * libgnat/system-freebsd.ads, libgnat/system-hpux-ia64.ads: Likewise. * libgnat/system-hpux.ads, libgnat/system-linux-alpha.ads: Likewise. * libgnat/system-linux-arm.ads, libgnat/system-linux-hppa.ads: Likewise. * libgnat/system-linux-ia64.ads, libgnat/system-linux-m68k.ads: Likewise. * libgnat/system-linux-mips.ads, libgnat/system-linux-ppc.ads: Likewise. * libgnat/system-linux-riscv.ads, libgnat/system-linux-s390.ads: Likewise. * libgnat/system-linux-sh4.ads, libgnat/system-linux-sparc.ads: Likewise. * libgnat/system-linux-x86.ads, libgnat/system-lynxos178-ppc.ads: Likewise. * libgnat/system-lynxos178-x86.ads, libgnat/system-mingw.ads: Likewise. * libgnat/system-qnx-arm.ads, libgnat/system-rtems.ads: Likewise. * libgnat/system-solaris-sparc.ads: Likewise. * libgnat/system-solaris-x86.ads: Likewise. * libgnat/system-vxworks-ppc-kernel.ads: Likewise. * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise. * libgnat/system-vxworks-ppc-rtp.ads: Likewise. * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-aarch64.ads: Likewise. * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-arm.ads: Likewise. * libgnat/system-vxworks7-ppc-kernel.ads: Likewise. * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise. * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-x86-kernel.ads: Likewise. * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise. * libgnat/system-vxworks7-x86_64-rtp-smp.ads, link.c, live.adb: Likewise. * live.ads, locales.c, make.adb, make.ads, make_util.adb: Likewise. * make_util.ads, makeusg.adb, makeusg.ads, mdll-fil.adb: Likewise. * mdll-fil.ads, mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads: Likewise. * mingw32.h, mkdir.c, namet-sp.adb, namet-sp.ads, namet.adb: Likewise. * namet.ads, namet.h, nlists.adb, nlists.ads, nlists.h, opt.adb: Likewise. * opt.ads, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads: Likewise. * osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads, osint.adb: Likewise. * osint.ads, output.adb, output.ads, par-ch10.adb, par-ch11.adb: Likewise. * par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb: Likewise. * par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch7.adb, par-ch8.adb: Likewise. * par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb: Likewise. * par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb, par.adb: Likewise. * par.ads, par_sco.adb, par_sco.ads: Likewise. * pprint.adb, pprint.ads, prep.adb, prep.ads: Likewise. * prepcomp.adb, prepcomp.ads, put_scos.adb, put_scos.ads: Likewise. * raise-gcc.c, raise.c, raise.h, repinfo-input.adb: Likewise. * repinfo-input.ads, repinfo.adb, repinfo.ads, repinfo.h: Likewise. * restrict.adb, restrict.ads, rident.ads, rtfinal.c, rtinit.c: Likewise. * rtsfind.adb, rtsfind.ads, runtime.h, s-oscons-tmplt.c: Likewise. * scans.adb, scans.ads, scil_ll.adb, scil_ll.ads, scn.adb: Likewise. * scn.ads, scng.adb, scng.ads, scos.adb, scos.ads: Likewise. * scos.h, sdefault.ads, seh_init.c, sem.adb, sem.ads: Likewise. * sem_aggr.adb, sem_aggr.ads, sem_attr.adb, sem_attr.ads: Likewise. * sem_aux.adb, sem_aux.ads, sem_case.adb, sem_case.ads: Likewise. * sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads: Likewise. * sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads: Likewise. * sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads: Likewise. * sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads, sem_ch5.adb: Likewise. * sem_ch5.ads, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb, sem_ch7.ads: Likewise. * sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_ch9.ads, sem_dim.adb: Likewise. * sem_dim.ads, sem_disp.adb, sem_disp.ads, sem_dist.adb: Likewise. * sem_dist.ads, sem_elab.adb, sem_elab.ads, sem_elim.adb: Likewise. * sem_elim.ads, sem_eval.adb, sem_eval.ads, sem_intr.adb: Likewise. * sem_intr.ads, sem_mech.adb, sem_mech.ads, sem_prag.adb: Likewise. * sem_prag.ads, sem_res.adb, sem_res.ads, sem_scil.adb: Likewise. * sem_scil.ads, sem_smem.adb, sem_smem.ads, sem_type.adb: Likewise. * sem_type.ads, sem_util.adb, sem_util.ads, sem_warn.adb: Likewise. * sem_warn.ads, set_targ.adb, set_targ.ads, sfn_scan.adb: Likewise. * sfn_scan.ads, sigtramp-arm-qnx.c, sigtramp-armdroid.c: Likewise. * sigtramp-ios.c, sigtramp-qnx.c: Likewise. * sigtramp-vxworks-target.h, sigtramp-vxworks.c, sigtramp.h: Likewise. * sinfo-cn.adb, sinfo-cn.ads, sinfo-utils.adb, sinfo-utils.ads: Likewise. * sinfo.adb, sinfo.ads, sinput-c.adb, sinput-c.ads, sinput-d.adb: Likewise. * sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput.adb: Likewise. * sinput.ads, socket.c, spark_xrefs.adb, spark_xrefs.ads: Likewise. * sprint.adb, sprint.ads, stand.ads: Likewise. * stringt.adb, stringt.ads, stringt.h, strub.adb, strub.ads: Likewise. * style.adb, style.ads, styleg.adb, styleg.ads, stylesw.adb: Likewise. * stylesw.ads, switch-b.adb, switch-b.ads, switch-c.adb: Likewise. * switch-c.ads, switch-m.adb, switch-m.ads, switch.adb: Likewise. * switch.ads, sysdep.c, table.adb: Likewise. * table.ads, targext.c, targparm.adb, targparm.ads, tbuild.adb: Likewise. * tbuild.ads, tempdir.adb, tempdir.ads, terminals.c, tracebak.c: Likewise. * treepr.adb, treepr.ads, ttypes.ads, types.adb, types.ads: Likewise. * types.h, uintp.adb, uintp.ads, uintp.h, uname.adb, uname.ads: Likewise. * urealp.adb, urealp.ads, urealp.h, usage.adb, usage.ads: Likewise. * validsw.adb, validsw.ads, vast.adb, vast.ads, warnsw.adb: Likewise. * warnsw.ads, widechar.adb, widechar.ads, xoscons.adb: Likewise. * xsnamest.adb, xutil.adb, xutil.ads, gnatvsn.adb: Likewise. * gnatvsn.ads (Current_Year): Likewise and bump to 2023.
2022-11-14ada: Fix style in code for generic formal subprograms with contractsPiotr Trojanek1-2/+2
Code cleanup related to expansion generic formal subprograms with contracts for GNATprove. gcc/ada/ * inline.adb (Replace_Formal): Tune whitespace. * sem_ch12.adb (Check_Overloaded_Formal_Subprogram): Refine type of a formal parameter and local variable; this routine operates on nodes and not entities. * sem_ch12.ads: Tune whitespace.
2022-11-07ada: Cleanup comment about mapping parameters when inliningPiotr Trojanek1-8/+8
Improve location of the comment about a special case for GNATprove mode. gcc/ada/ * inline.adb (Establish_Actual_Mapping_For_Inlined_Call): Move comment next to a condition that it describes.
2022-09-12[Ada] Tech debt: Expansion of contractsJustin Squirek1-2/+2
This patch modifies the expansion of contracts such that the statements and declarations of a subprogram with post-execution checks get moved to a local internally generated subprogram which the original subprogram calls directly followed by the required post-execution checks. This differs from the current implementation which requires delicate machinary which coordinates with the finalization process to emulate the desired behavior within the "at end" procedure. gcc/ada/ * contracts.adb, contracts.ads (Analyze_Pragmas_In_Declarations): Added to aid in the new expansion model so that pragmas relating to contracts can get processed early before the rest of the subprogram containing them. (Build_Subprogram_Contract_Wrapper): Created to do the majority of expansion for postconditions. It builds a local wrapper with the statements and declarations within a given subprogram. (Is_Prologue_Renaming): Moved out from Process_Preconditions to be used generally within the contracts package. (Build_Entry_Contract_Wrapper): Moved from exp_ch7. (Expand_Subprogram_Contract): Add new local variable Decls to store expanded declarations needed for evaluation of contracts. Call new wrapper building procedure and modify comments to match new expansion model. (Get_Postcond_Enabled): Deleted. (Get_Result_Object_For_Postcond): Deleted. (Get_Return_Success_For_Postcond): Deleted. (Process_Contract_Cases): Add new parameter to store declarations. (Process_Postconditions): Add new parameter to store declarations. (Process_Preconditions): Add new parameter to store declarations. Add code to move entry-call prologue renamings * einfo.ads: Document new field Wrapped_Statements and modify comment for Postconditions_Proc. * exp_attr.adb (Analyze_Attribute): Modify expansion of the 'Old attribute to recognize new expansion model and use Wrapped_Statements instead of Postconditions_Proc. * exp_ch6.adb (Add_Return): Remove special expansion for postconditions. (Expand_Call): Modify condition checking for calls to access subprogram wrappers to handle new expansion models. (Expand_Call_Helper): Remove special expansion for postconditions. (Expand_Non_Function_Return): Remove special expansion for postconditions. (Expand_Simple_Function_Return): Remove special expansion for postconditions. * exp_ch7.adb (Build_Finalizer): Deleted, but replaced by code in Build_Finalizer_Helper (Build_Finalizer_Helper): Renamed to Build_Finalizer, and special handling of 'Old objects removed. * exp_ch9.adb (Build_Contract_Wrapper): Renamed and moved to contracts package. * exp_prag.adb (Expand_Pragma_Contract_Cases): Delay analysis of contracts since they now instead get analyzed as part of the wrapper generation instead of after analysis of their corresponding subprogram's body. (Expand_Pragma_Check): Label expanded if-statements which come from the expansion of assertion statements as Comes_From_Check_Or_Contract. * freeze.adb (Freeze_Entity): Add special case to avoid freezing when a freeze node gets generated as part of the expansion of a postcondition check. * gen_il-gen-gen_nodes.adb: Add new flag Comes_From_Check_Or_Contract. * gen_il-fields.ads: Add new field Wrapped_Statements. Add new flag Comes_From_Check_Or_Contract. * gen_il-gen-gen_entities.adb: Add new field Wrapped_Statements. * ghost.adb (Is_OK_Declaration): Replace Name_uPostconditions with Name_uWrapped_Statements. (Is_OK_Statement): Simplify condition due to the loss of Original_Node as a result of the new expansion model of contracts and use new flag Comes_From_Check_Or_Contract in its place. * inline.adb (Declare_Postconditions_Result): Replace Name_uPostconditions with Name_uWrapped_Statements. (Expand_Inlined_Call): Replace Name_uPostconditions with Name_uWrapped_Statements. * lib.adb, lib.ads (ipu): Created to aid in debugging. * lib-xref.adb (Generate_References): Remove special handling for postcondition procedures. * sem_attr.adb (Analyze_Attribute_Old_Result): Add new context in which 'Old can appear due to the changes in expansion. Replace Name_uPostconditions with Name_uWrapped_Statements. (Result): Replace Name_uPostconditions with Name_uWrapped_Statements. * sem_ch11.adb (Analyze_Handled_Statements): Remove check to exclude warnings on useless assignments within postcondition procedures since postconditions no longer get isolated into separate subprograms. * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Modify expansion of generic subprogram bodies so that contracts (and their associated pragmas) get analyzed first. (Analyze_Subprogram_Body_Helper): Remove global HSS variable due to the HSS of the body potentially changing during the expansion of contracts. In cases where it was used instead directly call Handled_Statement_Sequence. Modify expansion of subprogram bodies so that contracts (and their associated pragmas) get analyzed first. (Check_Missing_Return): Create local HSS variable instead of using a global one. (Move_Pragmas): Use new pragma table instead of an explicit list. * sem_elab.adb (Is_Postconditions_Proc): Deleted since the new scheme of expansion no longer divides postcondition checks to a separate subprogram and so cannot be easily identified (similar to pre-condition checks). (Info_Call): Remove info printing for _Postconditions subprograms. (Is_Assertion_Pragma_Target): Remove check for postconditions procedure (Is_Bridge_Target): Remove check for postconditions procedure. (Get_Invocation_Attributes): Remove unneeded local variables and check for postconditions procedure. (Output_Call): Remove info printing for _Postconditions subprograms. * sem_prag.adb, sem_prag.ads: Add new Pragma table for pragmas significant to subprograms, along with tech-debt comment. (Check_Arg_Is_Local_Name): Modified to recognize the new _Wrapped_Statements internal subprogram and the new expansion model. (Relocate_Pragmas_To_Body): Replace Name_uPostconditions with Name_uWrapped_Statements. * sem_res.adb (Resolve_Entry_Call): Add conditional to detect both contract based wrappers of entries, but also wrappers generated as part of general contract expansion (e.g. local postconditions subprograms). * sem_util.adb (Accessibility_Level): Verify 'Access is not taken based on a component of a function result. (Has_Significant_Contracts): Replace Name_uPostconditions with Name_uWrapped_Statements. (Same_Or_Aliased_Subprogram): Add conditional to detect and obtain the original subprogram based on the new concept of "postcondition" wrappers. * sinfo.ads: Add documentation for new flag Comes_From_Check_Or_Contract. * snames.ads-tmpl: Remove Name_uPostconditions and add Name_uWrapped_Statements
2022-09-06[Ada] Retain Has_Private_View flag for actuals of inlined subprogramsPiotr Trojanek1-0/+10
When instantiating a body to inline (either because frontend inlining is enabled with switch -gnatN or because of inlining-for-proof in GNATprove mode) we rewrite occurrences of formal parameters into the corresponding actual parameters. Then we switch type views, so that if the formal had a full view in the body to inline then the corresponding actual will have a full view in the particular inlined body. However, when rewriting occurrences of the formal parameter we were losing information about whether the formal had a private view. gcc/ada/ * inline.adb (Process_Formals): Preserve Has_Private_View flag while rewriting formal into actual parameters.
2022-09-06[Ada] Fix comment about mapping of parameters and inlining static funcsPiotr Trojanek1-2/+3
Fix glitch in a cross-reference in comment. gcc/ada/ * inline.adb (Replace_Formal): Fix name of the referenced routine.
2022-09-06[Ada] Place "at end" on body nodesBob Duff1-1/+2
This patch fixes a bug where finalization code might refer to variables outside their lifetime. The previous version moved declarations into the Handled_Statement_Sequence (HSS), so that the "at end" handler of the HSS could handle exceptions raised by those declarations. The First_Real_Statement field was used to find the first statement after the moved declarations. In addition, if the HSS already had exception handlers, it was wrapped in another layer of block_statement. This doesn't work if there are variable-sized objects allocated on the (primary) stack, because the stack will be popped before the "at end" is invoked. In the new version, we allow "at end" on nodes such as N_Subprogram_Body, in addition to HSS. We modify gigi so that such an "at end" applies to the whole body (declarations and HSS) by extending support for At_End_Proc mechanism to N_Block_Statement and N_*_Body nodes. This also removes the support for First_Real_Statement. In particular, an exception raised by the declarations will trigger the "at end". We no longer move declarations into the HSS, we no longer have a First_Real_Statement field, and we no longer do the wrapping mentioned above. This change requires various other changes, in cases where we depended on the First_Real_Statement and the moving/wrapping mentioned above. gcc/ada/ * gen_il-fields.ads (First_Real_Statement): Remove this field. * gen_il-gen-gen_nodes.adb: Remove the First_Real_Statement field. Add the At_End_Proc field to nodes that have both Declarations and HSS. * sinfo.ads (At_End_Proc): Document new semantics. (First_Real_Statement): Remove comment. * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Remove First_Real_Statement. * exp_ch7.adb (Build_Cleanup_Statements): Remove "Historical note"; it doesn't seem useful, and we have revision history. (Create_Finalizer): Insert the finalizer later, typically in the statement list, in some cases. (Build_Finalizer_Call): Attach the "at end" handler to the parent of the HSS node in most cases, so it applies to declarations. (Expand_Cleanup_Actions): Remove Wrap_HSS_In_Block and the call to it. Remove the code that moves declarations. Remove some redundant code. * exp_ch9.adb (Build_Protected_Entry): Copy the At_End_Proc. (Build_Protected_Subprogram_Body): Reverse the sense of Exc_Safe, to avoid double negatives. Remove "Historical note" as in exp_ch7.adb. (Build_Unprotected_Subprogram_Body): Copy the At_End_Proc from the protected version. (Expand_N_Conditional_Entry_Call): Use First (Statements(...)) instead of First_Real_Statement(...). (Expand_N_Task_Body): Put the Abort_Undefer call at the beginning of the declarations, rather than in the HSS. Use First (Statements(...)) instead of First_Real_Statement(...). Copy the At_End_Proc. * inline.adb (Has_Initialized_Type): Return False if the declaration does not come from source. * libgnarl/s-tpoben.ads (Lock_Entries, Lock_Entries_With_Status): Document when these things raise Program_Error. It's not clear that Lock_Entries_With_Status ought to be raising exceptions, but at least it's documented now. * sem.ads: Minor comment fixes. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use First (Statements(...)) instead of First_Real_Statement(...). (Analyze_Null_Procedure): Minor comment fix. * sem_util.adb (Might_Raise): Return True for N_Raise_Expression. Adjust the part about exceptions generated by the back end to match the reality of what the back end generates. (Update_First_Real_Statement): Remove. * sem_util.ads: Remove First_Real_Statement from comment. * sinfo-utils.ads (First_Real_Statement): New function that always returns Empty. This should be removed once gnat-llvm and codepeer have been updated to not refer to First_Real_Statement. * sprint.adb (Sprint_At_End_Proc): Deal with printing At_End_Proc. * sem_prag.adb: Minor comment fixes. * gcc-interface/trans.cc (At_End_Proc_to_gnu): New function. (Subprogram_Body_to_gnu): Call it to handle an At_End_Proc. (Handled_Sequence_Of_Statements_to_gnu): Likewise. Remove the support for First_Real_Statement and clean up the rest. (Exception_Handler_to_gnu): Do not push binding levels. (Compilation_Unit_to_gnu): Adjust call to process_decls. (gnat_to_gnu) <N_Package_Specification>: Likewise. <N_Entry_Body>: Likewise. <N_Freeze_Entity>: Likewise. <N_Block_Statement>: Likewise and call At_End_Proc_to_gnu to handle an At_End_Proc. <N_Package_Body>: Likewise. (process_decls): Remove GNAT_END_LIST parameter and adjust recursive calls. Co-authored-by: Eric Botcazou <ebotcazou@adacore.com>
2022-07-13[Ada] Handle bodies-to-inline just like generic templatesPiotr Trojanek1-10/+2
Originally bodies-to-inline created for the frontend inlining were analyzed with expansion disabled. Then, to facilitate inlining in GNATprove mode, the analysis was changed to preanalysis. However, preanalysis in this context works badly for calls in prefix notation, because preanalysis assigns entities and types to nodes but doesn't convert calls from prefix to ordinary notation. When the body-to-inline is actually inlined, the (re)analysis of calls in prefix notation fails. The proper solution is rather to handle bodies-to-inline just like generic templates. From the user point of view, this patch fixes spurious errors both in GNATprove (which uses frontend inlining by default) and in GNAT (where frontend inlining is typically explicitly requested with -gnatN and pragma Inline_Always). gcc/ada/ * inline.adb (Build_Body_To_Inline): Instead of manipulating the Full_Analysis flag, use the Inside_A_Generic flag (which is conveniently manipulated by Start_Generic/End_Generic, together with Expander_Active). * sem_attr.adb (Analyze_Attribute_Old_Result): Adapt comment and assertion to different flag that is set while building body-to-inline.
2022-07-13[Ada] Fix crash on frontend inlining of functions with single returnsPiotr Trojanek1-0/+1
When examining expression of the first declaration of the inlined body make sure that this declaration is in fact an object declaration. gcc/ada/ * inline.adb (Has_Single_Return): Add guard for the subsequent call to Expression.
2022-05-30[Ada] Add insertion character to Ineffective_Inline_Warnings messagesGhjuvan Lacambre1-2/+2
This enables tools that ingest GNAT's output to properly classify these messages. gcc/ada/ * inline.adb (Check_Package_Body_For_Inlining): Add insertion character.
2022-05-17[Ada] Allow inlining for proof inside genericsYannick Moy1-7/+69
For local subprograms without contracts inside generics, allow their inlining for proof in GNATprove mode. This requires forbidding the inlining of subprograms which contain references to object renamings, which would be replaced in the SPARK expansion and violate assumptions of the inlining code. gcc/ada/ * exp_spark.adb (Expand_SPARK_Potential_Renaming): Deal with no entity case. * inline.ads (Check_Object_Renaming_In_GNATprove_Mode): New procedure. * inline.adb (Check_Object_Renaming_In_GNATprove_Mode): New procedure. (Can_Be_Inlined_In_GNATprove_Mode): Remove case forbidding inlining for subprograms inside generics. * sem_ch12.adb (Copy_Generic_Node): Preserve global entities when inlining in GNATprove mode. * sem_ch6.adb (Analyse_Subprogram_Body_Helper): Remove body to inline if renaming is detected in GNATprove mode.
2022-05-16[Ada] Update comment justifying non-inlining for proof inside genericsYannick Moy1-2/+3
gcc/ada/ * inline.adb (Can_Be_Inlined_In_GNATprove_Mode): Update comment.
2022-05-16[Ada] Fix internal error on mix of controlled and protected typesEric Botcazou1-1/+1
The key is that the protected type is a (limited) private type, which fools a test in Cleanup_Scopes. gcc/ada/ * inline.adb (Cleanup_Scopes): Test the underlying type.
2022-05-09[Ada] Remove redundant guards for empty listPiotr Trojanek1-9/+3
Routine Has_Excluded_Declaration iterates over declarations with First/Present/Next, which is safe when declarations are No_List. Cleanup related to excessive inlining-for-proof by GNATprove. gcc/ada/ * inline.adb (Build_Body_To_Inline): Remove redundant guards. * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Likewise.
2022-01-11[Ada] Reuse Make_Temporary where possiblePiotr Trojanek1-1/+1
gcc/ada/ * exp_ch7.adb (Set_Block_Elab_Proc, Unnest_Block, Unnest_Loop, Unnest_Statement_List): Simplify with Make_Temporary. * exp_put_image.adb (Build_Image_Call): Likewise. * inline.adb (Generate_Subprogram_Body): Likewise. * sem_ch13.adb (Build_Predicate_Functions): Likewise. * sem_util.adb (New_Copy_Separate_List): Likewise.
2022-01-11[Ada] Remove extra space in single object declarationsPiotr Trojanek1-3/+3
gcc/ada/ * exp_aggr.adb, exp_attr.adb, exp_ch3.adb, exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb, frontend.adb, inline.adb, itypes.adb, lib-load.adb, lib-xref.adb, libgnat/a-cfhase.adb, libgnat/a-cforse.adb, libgnat/a-chtgbo.adb, libgnat/a-crdlli.adb, libgnat/a-except.adb, libgnat/a-strfix.adb, libgnat/a-textio.adb, libgnat/a-tienau.adb, libgnat/a-tigeau.adb, libgnat/a-witeio.adb, libgnat/a-wtenau.adb, libgnat/a-wtgeau.adb, libgnat/a-ztenau.adb, libgnat/a-ztexio.adb, libgnat/a-ztgeau.adb, libgnat/g-comlin.adb, libgnat/g-debpoo.adb, libgnat/g-expect.adb, libgnat/s-fileio.adb, libgnat/s-memory.adb, libgnat/s-mmap.adb, libgnat/s-objrea.adb, libgnat/s-pehage.adb, libgnat/s-regpat.adb, libgnat/s-shasto.adb, libgnat/s-valued.adb, libgnat/s-valuef.adb, par-ch11.adb, par-ch4.adb, par-ch6.adb, par-ch9.adb, par_sco.adb, repinfo-input.adb, sem_cat.adb, sem_ch10.adb, sem_ch12.adb, sem_ch13.adb, sem_ch4.adb, sem_eval.adb, sem_prag.adb, sem_res.adb, sem_util.adb, sinput.adb, switch-c.adb: Fix style.
2022-01-11[Ada] Update copyright notice and bump Gnatvsn.Current_YearArnaud Charlet1-1/+1
gcc/ada/ * gnatvsn.ads (Current_Year): Update copyright notice, bump to 2022. * ada_get_targ.adb: Update copyright notice. * adabkend.adb: Likewise. * adabkend.ads: Likewise. * adadecode.c: Likewise. * adadecode.h: Likewise. * adaint.c: Likewise. * adaint.h: Likewise. * affinity.c: Likewise. * ali-util.adb: Likewise. * ali-util.ads: Likewise. * ali.adb: Likewise. * ali.ads: Likewise. * alloc.ads: Likewise. * argv-lynxos178-raven-cert.c: Likewise. * argv.c: Likewise. * aspects.adb: Likewise. * aspects.ads: Likewise. * atree.adb: Likewise. * atree.ads: Likewise. * atree.h: Likewise. * aux-io.c: Likewise. * back_end.adb: Likewise. * back_end.ads: Likewise. * backend_utils.adb: Likewise. * backend_utils.ads: Likewise. * bcheck.adb: Likewise. * bcheck.ads: Likewise. * binde.adb: Likewise. * binde.ads: Likewise. * binderr.adb: Likewise. * binderr.ads: Likewise. * bindgen.adb: Likewise. * bindgen.ads: Likewise. * bindo-augmentors.adb: Likewise. * bindo-augmentors.ads: Likewise. * bindo-builders.adb: Likewise. * bindo-builders.ads: Likewise. * bindo-diagnostics.adb: Likewise. * bindo-diagnostics.ads: Likewise. * bindo-elaborators.adb: Likewise. * bindo-elaborators.ads: Likewise. * bindo-graphs.adb: Likewise. * bindo-graphs.ads: Likewise. * bindo-units.adb: Likewise. * bindo-units.ads: Likewise. * bindo-validators.adb: Likewise. * bindo-validators.ads: Likewise. * bindo-writers.adb: Likewise. * bindo-writers.ads: Likewise. * bindo.adb: Likewise. * bindo.ads: Likewise. * bindusg.adb: Likewise. * bindusg.ads: Likewise. * butil.adb: Likewise. * butil.ads: Likewise. * cal.c: Likewise. * casing.adb: Likewise. * casing.ads: Likewise. * checks.adb: Likewise. * checks.ads: Likewise. * cio.c: Likewise. * clean.adb: Likewise. * clean.ads: Likewise. * comperr.adb: Likewise. * comperr.ads: Likewise. * contracts.adb: Likewise. * contracts.ads: Likewise. * csets.adb: Likewise. * csets.ads: Likewise. * cstand.adb: Likewise. * cstand.ads: Likewise. * cstreams.c: Likewise. * ctrl_c.c: Likewise. * debug.ads: Likewise. * debug_a.adb: Likewise. * debug_a.ads: Likewise. * einfo-utils.adb: Likewise. * einfo-utils.ads: Likewise. * einfo.adb: Likewise. * einfo.ads: Likewise. * elists.adb: Likewise. * elists.ads: Likewise. * elists.h: Likewise. * env.c: Likewise. * env.h: Likewise. * err_vars.ads: Likewise. * errno.c: Likewise. * errout.adb: Likewise. * errout.ads: Likewise. * erroutc.adb: Likewise. * erroutc.ads: Likewise. * errutil.adb: Likewise. * errutil.ads: Likewise. * eval_fat.adb: Likewise. * eval_fat.ads: Likewise. * exit.c: Likewise. * exp_aggr.adb: Likewise. * exp_aggr.ads: Likewise. * exp_atag.adb: Likewise. * exp_atag.ads: Likewise. * exp_attr.adb: Likewise. * exp_attr.ads: Likewise. * exp_cg.adb: Likewise. * exp_cg.ads: Likewise. * exp_ch10.ads: Likewise. * exp_ch11.adb: Likewise. * exp_ch11.ads: Likewise. * exp_ch12.adb: Likewise. * exp_ch12.ads: Likewise. * exp_ch13.adb: Likewise. * exp_ch13.ads: Likewise. * exp_ch2.adb: Likewise. * exp_ch2.ads: Likewise. * exp_ch3.adb: Likewise. * exp_ch3.ads: Likewise. * exp_ch4.adb: Likewise. * exp_ch4.ads: Likewise. * exp_ch5.adb: Likewise. * exp_ch5.ads: Likewise. * exp_ch6.adb: Likewise. * exp_ch6.ads: Likewise. * exp_ch7.adb: Likewise. * exp_ch7.ads: Likewise. * exp_ch8.adb: Likewise. * exp_ch8.ads: Likewise. * exp_ch9.adb: Likewise. * exp_ch9.ads: Likewise. * exp_code.adb: Likewise. * exp_code.ads: Likewise. * exp_dbug.adb: Likewise. * exp_dbug.ads: Likewise. * exp_disp.adb: Likewise. * exp_disp.ads: Likewise. * exp_dist.adb: Likewise. * exp_dist.ads: Likewise. * exp_fixd.adb: Likewise. * exp_fixd.ads: Likewise. * exp_imgv.adb: Likewise. * exp_imgv.ads: Likewise. * exp_intr.adb: Likewise. * exp_intr.ads: Likewise. * exp_pakd.adb: Likewise. * exp_pakd.ads: Likewise. * exp_prag.adb: Likewise. * exp_prag.ads: Likewise. * exp_put_image.adb: Likewise. * exp_put_image.ads: Likewise. * exp_sel.adb: Likewise. * exp_sel.ads: Likewise. * exp_smem.adb: Likewise. * exp_smem.ads: Likewise. * exp_spark.adb: Likewise. * exp_spark.ads: Likewise. * exp_strm.adb: Likewise. * exp_strm.ads: Likewise. * exp_tss.adb: Likewise. * exp_tss.ads: Likewise. * exp_unst.adb: Likewise. * exp_unst.ads: Likewise. * exp_util.adb: Likewise. * exp_util.ads: Likewise. * expander.adb: Likewise. * expander.ads: Likewise. * expect.c: Likewise. * fe.h: Likewise. * final.c: Likewise. * fmap.adb: Likewise. * fmap.ads: Likewise. * fname-sf.adb: Likewise. * fname-sf.ads: Likewise. * fname-uf.adb: Likewise. * fname-uf.ads: Likewise. * fname.adb: Likewise. * fname.ads: Likewise. * freeze.adb: Likewise. * freeze.ads: Likewise. * frontend.adb: Likewise. * frontend.ads: Likewise. * gen_il-fields.ads: Likewise. * gen_il-gen-gen_entities.adb: Likewise. * gen_il-gen-gen_nodes.adb: Likewise. * gen_il-gen.adb: Likewise. * gen_il-gen.ads: Likewise. * gen_il-internals.adb: Likewise. * gen_il-internals.ads: Likewise. * gen_il-main.adb: Likewise. * gen_il-types.ads: Likewise. * gen_il.adb: Likewise. * gen_il.ads: Likewise. * get_scos.adb: Likewise. * get_scos.ads: Likewise. * get_targ.adb: Likewise. * get_targ.ads: Likewise. * ghost.adb: Likewise. * ghost.ads: Likewise. * gnat1drv.adb: Likewise. * gnat1drv.ads: Likewise. * gnat_cuda.adb: Likewise. * gnat_cuda.ads: Likewise. * gnatbind.adb: Likewise. * gnatbind.ads: Likewise. * gnatchop.adb: Likewise. * gnatclean.adb: Likewise. * gnatcmd.adb: Likewise. * gnatcmd.ads: Likewise. * gnatdll.adb: Likewise. * gnatfind.adb: Likewise. * gnatkr.adb: Likewise. * gnatkr.ads: Likewise. * gnatlink.adb: Likewise. * gnatlink.ads: Likewise. * gnatls.adb: Likewise. * gnatls.ads: Likewise. * gnatmake.adb: Likewise. * gnatmake.ads: Likewise. * gnatname.adb: Likewise. * gnatname.ads: Likewise. * gnatprep.adb: Likewise. * gnatprep.ads: Likewise. * gnatvsn.adb: Likewise. * gnatxref.adb: Likewise. * gprep.adb: Likewise. * gprep.ads: Likewise. * gsocket.h: Likewise. * hostparm.ads: Likewise. * impunit.adb: Likewise. * impunit.ads: Likewise. * indepsw-aix.adb: Likewise. * indepsw-darwin.adb: Likewise. * indepsw-gnu.adb: Likewise. * indepsw.adb: Likewise. * indepsw.ads: Likewise. * init.c: Likewise. * initialize.c: Likewise. * inline.adb: Likewise. * inline.ads: Likewise. * itypes.adb: Likewise. * itypes.ads: Likewise. * krunch.adb: Likewise. * krunch.ads: Likewise. * layout.adb: Likewise. * layout.ads: Likewise. * lib-list.adb: Likewise. * lib-load.adb: Likewise. * lib-load.ads: Likewise. * lib-sort.adb: Likewise. * lib-util.adb: Likewise. * lib-util.ads: Likewise. * lib-writ.adb: Likewise. * lib-writ.ads: Likewise. * lib-xref-spark_specific.adb: Likewise. * lib-xref.adb: Likewise. * lib-xref.ads: Likewise. * lib.adb: Likewise. * lib.ads: Likewise. * libgnarl/a-astaco.adb: Likewise. * libgnarl/a-dispat.adb: Likewise. * libgnarl/a-dynpri.adb: Likewise. * libgnarl/a-etgrbu.ads: Likewise. * libgnarl/a-exetim__darwin.adb: Likewise. * libgnarl/a-exetim__default.ads: Likewise. * libgnarl/a-exetim__mingw.adb: Likewise. * libgnarl/a-exetim__mingw.ads: Likewise. * libgnarl/a-exetim__posix.adb: Likewise. * libgnarl/a-interr.adb: Likewise. * libgnarl/a-interr.ads: Likewise. * libgnarl/a-intnam.ads: Likewise. * libgnarl/a-intnam__aix.ads: Likewise. * libgnarl/a-intnam__darwin.ads: Likewise. * libgnarl/a-intnam__dragonfly.ads: Likewise. * libgnarl/a-intnam__dummy.ads: Likewise. * libgnarl/a-intnam__freebsd.ads: Likewise. * libgnarl/a-intnam__hpux.ads: Likewise. * libgnarl/a-intnam__linux.ads: Likewise. * libgnarl/a-intnam__lynxos.ads: Likewise. * libgnarl/a-intnam__mingw.ads: Likewise. * libgnarl/a-intnam__qnx.ads: Likewise. * libgnarl/a-intnam__rtems.ads: Likewise. * libgnarl/a-intnam__solaris.ads: Likewise. * libgnarl/a-intnam__vxworks.ads: Likewise. * libgnarl/a-reatim.adb: Likewise. * libgnarl/a-reatim.ads: Likewise. * libgnarl/a-retide.adb: Likewise. * libgnarl/a-retide.ads: Likewise. * libgnarl/a-rttiev.adb: Likewise. * libgnarl/a-rttiev.ads: Likewise. * libgnarl/a-synbar.adb: Likewise. * libgnarl/a-synbar.ads: Likewise. * libgnarl/a-synbar__posix.adb: Likewise. * libgnarl/a-synbar__posix.ads: Likewise. * libgnarl/a-sytaco.adb: Likewise. * libgnarl/a-sytaco.ads: Likewise. * libgnarl/a-tasatt.adb: Likewise. * libgnarl/a-tasatt.ads: Likewise. * libgnarl/a-taside.adb: Likewise. * libgnarl/a-taside.ads: Likewise. * libgnarl/a-tasini.adb: Likewise. * libgnarl/a-tasini.ads: Likewise. * libgnarl/a-taster.adb: Likewise. * libgnarl/g-boubuf.adb: Likewise. * libgnarl/g-boubuf.ads: Likewise. * libgnarl/g-boumai.ads: Likewise. * libgnarl/g-semaph.adb: Likewise. * libgnarl/g-semaph.ads: Likewise. * libgnarl/g-signal.adb: Likewise. * libgnarl/g-signal.ads: Likewise. * libgnarl/g-tastus.ads: Likewise. * libgnarl/g-thread.adb: Likewise. * libgnarl/g-thread.ads: Likewise. * libgnarl/i-vxinco.adb: Likewise. * libgnarl/i-vxinco.ads: Likewise. * libgnarl/s-inmaop.ads: Likewise. * libgnarl/s-inmaop__dummy.adb: Likewise. * libgnarl/s-inmaop__hwint.adb: Likewise. * libgnarl/s-inmaop__posix.adb: Likewise. * libgnarl/s-interr.adb: Likewise. * libgnarl/s-interr.ads: Likewise. * libgnarl/s-interr__dummy.adb: Likewise. * libgnarl/s-interr__hwint.adb: Likewise. * libgnarl/s-interr__sigaction.adb: Likewise. * libgnarl/s-interr__vxworks.adb: Likewise. * libgnarl/s-intman.ads: Likewise. * libgnarl/s-intman__android.adb: Likewise. * libgnarl/s-intman__dummy.adb: Likewise. * libgnarl/s-intman__lynxos.adb: Likewise. * libgnarl/s-intman__mingw.adb: Likewise. * libgnarl/s-intman__posix.adb: Likewise. * libgnarl/s-intman__qnx.adb: Likewise. * libgnarl/s-intman__rtems.adb: Likewise. * libgnarl/s-intman__rtems.ads: Likewise. * libgnarl/s-intman__solaris.adb: Likewise. * libgnarl/s-intman__susv3.adb: Likewise. * libgnarl/s-intman__vxworks.adb: Likewise. * libgnarl/s-intman__vxworks.ads: Likewise. * libgnarl/s-linux.ads: Likewise. * libgnarl/s-linux__alpha.ads: Likewise. * libgnarl/s-linux__android.ads: Likewise. * libgnarl/s-linux__hppa.ads: Likewise. * libgnarl/s-linux__mips.ads: Likewise. * libgnarl/s-linux__riscv.ads: Likewise. * libgnarl/s-linux__sparc.ads: Likewise. * libgnarl/s-linux__x32.ads: Likewise. * libgnarl/s-mudido.adb: Likewise. * libgnarl/s-mudido__affinity.adb: Likewise. * libgnarl/s-osinte__aix.adb: Likewise. * libgnarl/s-osinte__aix.ads: Likewise. * libgnarl/s-osinte__android.adb: Likewise. * libgnarl/s-osinte__android.ads: Likewise. * libgnarl/s-osinte__darwin.adb: Likewise. * libgnarl/s-osinte__darwin.ads: Likewise. * libgnarl/s-osinte__dragonfly.adb: Likewise. * libgnarl/s-osinte__dragonfly.ads: Likewise. * libgnarl/s-osinte__dummy.ads: Likewise. * libgnarl/s-osinte__freebsd.adb: Likewise. * libgnarl/s-osinte__freebsd.ads: Likewise. * libgnarl/s-osinte__gnu.adb: Likewise. * libgnarl/s-osinte__gnu.ads: Likewise. * libgnarl/s-osinte__hpux-dce.adb: Likewise. * libgnarl/s-osinte__hpux-dce.ads: Likewise. * libgnarl/s-osinte__hpux.ads: Likewise. * libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise. * libgnarl/s-osinte__linux.ads: Likewise. * libgnarl/s-osinte__lynxos178.adb: Likewise. * libgnarl/s-osinte__lynxos178e.ads: Likewise. * libgnarl/s-osinte__mingw.ads: Likewise. * libgnarl/s-osinte__posix.adb: Likewise. * libgnarl/s-osinte__qnx.adb: Likewise. * libgnarl/s-osinte__qnx.ads: Likewise. * libgnarl/s-osinte__rtems.adb: Likewise. * libgnarl/s-osinte__rtems.ads: Likewise. * libgnarl/s-osinte__solaris.adb: Likewise. * libgnarl/s-osinte__solaris.ads: Likewise. * libgnarl/s-osinte__vxworks.adb: Likewise. * libgnarl/s-osinte__vxworks.ads: Likewise. * libgnarl/s-osinte__x32.adb: Likewise. * libgnarl/s-proinf.adb: Likewise. * libgnarl/s-proinf.ads: Likewise. * libgnarl/s-putaim.adb: Likewise. * libgnarl/s-putaim.ads: Likewise. * libgnarl/s-qnx.ads: Likewise. * libgnarl/s-solita.adb: Likewise. * libgnarl/s-solita.ads: Likewise. * libgnarl/s-stusta.adb: Likewise. * libgnarl/s-stusta.ads: Likewise. * libgnarl/s-taasde.adb: Likewise. * libgnarl/s-taasde.ads: Likewise. * libgnarl/s-tadeca.adb: Likewise. * libgnarl/s-tadeca.ads: Likewise. * libgnarl/s-tadert.adb: Likewise. * libgnarl/s-tadert.ads: Likewise. * libgnarl/s-taenca.adb: Likewise. * libgnarl/s-taenca.ads: Likewise. * libgnarl/s-taprob.adb: Likewise. * libgnarl/s-taprob.ads: Likewise. * libgnarl/s-taprop.ads: Likewise. * libgnarl/s-taprop__dummy.adb: Likewise. * libgnarl/s-taprop__hpux-dce.adb: Likewise. * libgnarl/s-taprop__linux.adb: Likewise. * libgnarl/s-taprop__mingw.adb: Likewise. * libgnarl/s-taprop__posix.adb: Likewise. * libgnarl/s-taprop__qnx.adb: Likewise. * libgnarl/s-taprop__rtems.adb: Likewise. * libgnarl/s-taprop__solaris.adb: Likewise. * libgnarl/s-taprop__vxworks.adb: Likewise. * libgnarl/s-tarest.adb: Likewise. * libgnarl/s-tarest.ads: Likewise. * libgnarl/s-tasdeb.adb: Likewise. * libgnarl/s-tasdeb.ads: Likewise. * libgnarl/s-tasinf.adb: Likewise. * libgnarl/s-tasinf.ads: Likewise. * libgnarl/s-tasinf__linux.adb: Likewise. * libgnarl/s-tasinf__linux.ads: Likewise. * libgnarl/s-tasinf__mingw.adb: Likewise. * libgnarl/s-tasinf__mingw.ads: Likewise. * libgnarl/s-tasinf__solaris.adb: Likewise. * libgnarl/s-tasinf__solaris.ads: Likewise. * libgnarl/s-tasinf__vxworks.ads: Likewise. * libgnarl/s-tasini.adb: Likewise. * libgnarl/s-tasini.ads: Likewise. * libgnarl/s-taskin.adb: Likewise. * libgnarl/s-taskin.ads: Likewise. * libgnarl/s-taspri__dummy.ads: Likewise. * libgnarl/s-taspri__hpux-dce.ads: Likewise. * libgnarl/s-taspri__lynxos.ads: Likewise. * libgnarl/s-taspri__mingw.ads: Likewise. * libgnarl/s-taspri__posix-noaltstack.ads: Likewise. * libgnarl/s-taspri__posix.ads: Likewise. * libgnarl/s-taspri__solaris.ads: Likewise. * libgnarl/s-taspri__vxworks.ads: Likewise. * libgnarl/s-tasque.adb: Likewise. * libgnarl/s-tasque.ads: Likewise. * libgnarl/s-tasren.adb: Likewise. * libgnarl/s-tasren.ads: Likewise. * libgnarl/s-tasres.ads: Likewise. * libgnarl/s-tassta.adb: Likewise. * libgnarl/s-tassta.ads: Likewise. * libgnarl/s-tasuti.adb: Likewise. * libgnarl/s-tasuti.ads: Likewise. * libgnarl/s-tataat.adb: Likewise. * libgnarl/s-tataat.ads: Likewise. * libgnarl/s-tpinop.adb: Likewise. * libgnarl/s-tpinop.ads: Likewise. * libgnarl/s-tpoaal.adb: Likewise. * libgnarl/s-tpoben.adb: Likewise. * libgnarl/s-tpoben.ads: Likewise. * libgnarl/s-tpobmu.adb: Likewise. * libgnarl/s-tpobmu.ads: Likewise. * libgnarl/s-tpobop.adb: Likewise. * libgnarl/s-tpobop.ads: Likewise. * libgnarl/s-tpopmo.adb: Likewise. * libgnarl/s-tpopsp__posix-foreign.adb: Likewise. * libgnarl/s-tpopsp__posix.adb: Likewise. * libgnarl/s-tpopsp__solaris.adb: Likewise. * libgnarl/s-tpopsp__tls.adb: Likewise. * libgnarl/s-tpopsp__vxworks-rtp.adb: Likewise. * libgnarl/s-tpopsp__vxworks-tls.adb: Likewise. * libgnarl/s-tpopsp__vxworks.adb: Likewise. * libgnarl/s-tporft.adb: Likewise. * libgnarl/s-tposen.adb: Likewise. * libgnarl/s-tposen.ads: Likewise. * libgnarl/s-vxwext.adb: Likewise. * libgnarl/s-vxwext.ads: Likewise. * libgnarl/s-vxwext__kernel-smp.adb: Likewise. * libgnarl/s-vxwext__kernel.adb: Likewise. * libgnarl/s-vxwext__kernel.ads: Likewise. * libgnarl/s-vxwext__rtp-smp.adb: Likewise. * libgnarl/s-vxwext__rtp.adb: Likewise. * libgnarl/s-vxwext__rtp.ads: Likewise. * libgnarl/s-vxwork__aarch64.ads: Likewise. * libgnarl/s-vxwork__arm.ads: Likewise. * libgnarl/s-vxwork__ppc.ads: Likewise. * libgnarl/s-vxwork__x86.ads: Likewise. * libgnarl/thread.c: Likewise. * libgnat/a-assert.adb: Likewise. * libgnat/a-assert.ads: Likewise. * libgnat/a-btgbso.adb: Likewise. * libgnat/a-btgbso.ads: Likewise. * libgnat/a-calari.adb: Likewise. * libgnat/a-calari.ads: Likewise. * libgnat/a-calcon.adb: Likewise. * libgnat/a-calcon.ads: Likewise. * libgnat/a-caldel.adb: Likewise. * libgnat/a-caldel.ads: Likewise. * libgnat/a-calend.adb: Likewise. * libgnat/a-calend.ads: Likewise. * libgnat/a-calfor.adb: Likewise. * libgnat/a-calfor.ads: Likewise. * libgnat/a-catizo.adb: Likewise. * libgnat/a-cbdlli.adb: Likewise. * libgnat/a-cbdlli.ads: Likewise. * libgnat/a-cbhama.adb: Likewise. * libgnat/a-cbhama.ads: Likewise. * libgnat/a-cbhase.adb: Likewise. * libgnat/a-cbhase.ads: Likewise. * libgnat/a-cbmutr.adb: Likewise. * libgnat/a-cbmutr.ads: Likewise. * libgnat/a-cborma.adb: Likewise. * libgnat/a-cborma.ads: Likewise. * libgnat/a-cborse.adb: Likewise. * libgnat/a-cborse.ads: Likewise. * libgnat/a-cbprqu.adb: Likewise. * libgnat/a-cbprqu.ads: Likewise. * libgnat/a-cbsyqu.adb: Likewise. * libgnat/a-cbsyqu.ads: Likewise. * libgnat/a-cdlili.adb: Likewise. * libgnat/a-cdlili.ads: Likewise. * libgnat/a-cfdlli.adb: Likewise. * libgnat/a-cfdlli.ads: Likewise. * libgnat/a-cfhama.adb: Likewise. * libgnat/a-cfhama.ads: Likewise. * libgnat/a-cfhase.adb: Likewise. * libgnat/a-cfhase.ads: Likewise. * libgnat/a-cfinve.adb: Likewise. * libgnat/a-cfinve.ads: Likewise. * libgnat/a-cforma.adb: Likewise. * libgnat/a-cforma.ads: Likewise. * libgnat/a-cforse.adb: Likewise. * libgnat/a-cforse.ads: Likewise. * libgnat/a-cgaaso.adb: Likewise. * libgnat/a-cgaaso.ads: Likewise. * libgnat/a-cgarso.adb: Likewise. * libgnat/a-cgcaso.adb: Likewise. * libgnat/a-chacon.adb: Likewise. * libgnat/a-chacon.ads: Likewise. * libgnat/a-chahan.adb: Likewise. * libgnat/a-chahan.ads: Likewise. * libgnat/a-chlat9.ads: Likewise. * libgnat/a-chtgbk.adb: Likewise. * libgnat/a-chtgbk.ads: Likewise. * libgnat/a-chtgbo.adb: Likewise. * libgnat/a-chtgbo.ads: Likewise. * libgnat/a-chtgke.adb: Likewise. * libgnat/a-chtgke.ads: Likewise. * libgnat/a-chtgop.adb: Likewise. * libgnat/a-chtgop.ads: Likewise. * libgnat/a-chzla1.ads: Likewise. * libgnat/a-chzla9.ads: Likewise. * libgnat/a-cidlli.adb: Likewise. * libgnat/a-cidlli.ads: Likewise. * libgnat/a-cihama.adb: Likewise. * libgnat/a-cihama.ads: Likewise. * libgnat/a-cihase.adb: Likewise. * libgnat/a-cihase.ads: Likewise. * libgnat/a-cimutr.adb: Likewise. * libgnat/a-cimutr.ads: Likewise. * libgnat/a-ciorma.adb: Likewise. * libgnat/a-ciorma.ads: Likewise. * libgnat/a-ciormu.adb: Likewise. * libgnat/a-ciormu.ads: Likewise. * libgnat/a-ciorse.adb: Likewise. * libgnat/a-ciorse.ads: Likewise. * libgnat/a-clrefi.adb: Likewise. * libgnat/a-clrefi.ads: Likewise. * libgnat/a-coboho.adb: Likewise. * libgnat/a-coboho.ads: Likewise. * libgnat/a-cobove.adb: Likewise. * libgnat/a-cobove.ads: Likewise. * libgnat/a-cofove.adb: Likewise. * libgnat/a-cofove.ads: Likewise. * libgnat/a-cofuba.adb: Likewise. * libgnat/a-cofuba.ads: Likewise. * libgnat/a-cofuma.adb: Likewise. * libgnat/a-cofuma.ads: Likewise. * libgnat/a-cofuse.adb: Likewise. * libgnat/a-cofuse.ads: Likewise. * libgnat/a-cofuve.adb: Likewise. * libgnat/a-cofuve.ads: Likewise. * libgnat/a-cogeso.adb: Likewise. * libgnat/a-cogeso.ads: Likewise. * libgnat/a-cohama.adb: Likewise. * libgnat/a-cohama.ads: Likewise. * libgnat/a-cohase.adb: Likewise. * libgnat/a-cohase.ads: Likewise. * libgnat/a-cohata.ads: Likewise. * libgnat/a-coinho.adb: Likewise. * libgnat/a-coinho.ads: Likewise. * libgnat/a-coinho__shared.adb: Likewise. * libgnat/a-coinho__shared.ads: Likewise. * libgnat/a-coinve.adb: Likewise. * libgnat/a-coinve.ads: Likewise. * libgnat/a-colien.adb: Likewise. * libgnat/a-colien.ads: Likewise. * libgnat/a-colire.adb: Likewise. * libgnat/a-colire.ads: Likewise. * libgnat/a-comlin.adb: Likewise. * libgnat/a-comlin.ads: Likewise. * libgnat/a-comutr.adb: Likewise. * libgnat/a-comutr.ads: Likewise. * libgnat/a-conhel.adb: Likewise. * libgnat/a-conhel.ads: Likewise. * libgnat/a-convec.adb: Likewise. * libgnat/a-convec.ads: Likewise. * libgnat/a-coorma.adb: Likewise. * libgnat/a-coorma.ads: Likewise. * libgnat/a-coormu.adb: Likewise. * libgnat/a-coormu.ads: Likewise. * libgnat/a-coorse.adb: Likewise. * libgnat/a-coorse.ads: Likewise. * libgnat/a-coprnu.adb: Likewise. * libgnat/a-coprnu.ads: Likewise. * libgnat/a-costso.adb: Likewise. * libgnat/a-costso.ads: Likewise. * libgnat/a-crbltr.ads: Likewise. * libgnat/a-crbtgk.adb: Likewise. * libgnat/a-crbtgk.ads: Likewise. * libgnat/a-crbtgo.adb: Likewise. * libgnat/a-crbtgo.ads: Likewise. * libgnat/a-crdlli.adb: Likewise. * libgnat/a-crdlli.ads: Likewise. * libgnat/a-csquin.ads: Likewise. * libgnat/a-cuprqu.adb: Likewise. * libgnat/a-cuprqu.ads: Likewise. * libgnat/a-cusyqu.adb: Likewise. * libgnat/a-cusyqu.ads: Likewise. * libgnat/a-cwila1.ads: Likewise. * libgnat/a-cwila9.ads: Likewise. * libgnat/a-decima.adb: Likewise. * libgnat/a-decima.ads: Likewise. * libgnat/a-decima__128.ads: Likewise. * libgnat/a-dhfina.adb: Likewise. * libgnat/a-dhfina.ads: Likewise. * libgnat/a-diocst.adb: Likewise. * libgnat/a-diocst.ads: Likewise. * libgnat/a-direct.adb: Likewise. * libgnat/a-direct.ads: Likewise. * libgnat/a-direio.adb: Likewise. * libgnat/a-direio.ads: Likewise. * libgnat/a-dirval.adb: Likewise. * libgnat/a-dirval.ads: Likewise. * libgnat/a-dirval__mingw.adb: Likewise. * libgnat/a-einuoc.adb: Likewise. * libgnat/a-einuoc.ads: Likewise. * libgnat/a-elchha.adb: Likewise. * libgnat/a-elchha.ads: Likewise. * libgnat/a-envvar.adb: Likewise. * libgnat/a-excach.adb: Likewise. * libgnat/a-except.adb: Likewise. * libgnat/a-except.ads: Likewise. * libgnat/a-exctra.adb: Likewise. * libgnat/a-exctra.ads: Likewise. * libgnat/a-exexda.adb: Likewise. * libgnat/a-exexpr.adb: Likewise. * libgnat/a-exextr.adb: Likewise. * libgnat/a-exstat.adb: Likewise. * libgnat/a-finali.adb: Likewise. * libgnat/a-finali.ads: Likewise. * libgnat/a-locale.adb: Likewise. * libgnat/a-locale.ads: Likewise. * libgnat/a-nagefl.ads: Likewise. * libgnat/a-naliop.ads: Likewise. * libgnat/a-naliop__nolibm.ads: Likewise. * libgnat/a-nallfl.ads: Likewise. * libgnat/a-nallfl__wraplf.ads: Likewise. * libgnat/a-nalofl.ads: Likewise. * libgnat/a-nashfl.ads: Likewise. * libgnat/a-nashfl__wraplf.ads: Likewise. * libgnat/a-nbnbig.adb: Likewise. * libgnat/a-nbnbin.adb: Likewise. * libgnat/a-nbnbin__gmp.adb: Likewise. * libgnat/a-nbnbre.adb: Likewise. * libgnat/a-ngcefu.adb: Likewise. * libgnat/a-ngcoar.adb: Likewise. * libgnat/a-ngcoty.adb: Likewise. * libgnat/a-ngcoty.ads: Likewise. * libgnat/a-ngelfu.adb: Likewise. * libgnat/a-ngelfu.ads: Likewise. * libgnat/a-ngrear.adb: Likewise. * libgnat/a-ngrear.ads: Likewise. * libgnat/a-nuauco.ads: Likewise. * libgnat/a-nuauco__x86.ads: Likewise. * libgnat/a-nuaufl.ads: Likewise. * libgnat/a-nuaufl__wraplf.ads: Likewise. * libgnat/a-nudira.adb: Likewise. * libgnat/a-nudira.ads: Likewise. * libgnat/a-nuflra.adb: Likewise. * libgnat/a-nuflra.ads: Likewise. * libgnat/a-numaux.ads: Likewise. * libgnat/a-rbtgbk.adb: Likewise. * libgnat/a-rbtgbk.ads: Likewise. * libgnat/a-rbtgbo.adb: Likewise. * libgnat/a-rbtgbo.ads: Likewise. * libgnat/a-rbtgso.adb: Likewise. * libgnat/a-rbtgso.ads: Likewise. * libgnat/a-sbecin.adb: Likewise. * libgnat/a-sbecin.ads: Likewise. * libgnat/a-sbhcin.adb: Likewise. * libgnat/a-sbhcin.ads: Likewise. * libgnat/a-sblcin.adb: Likewise. * libgnat/a-sblcin.ads: Likewise. * libgnat/a-secain.adb: Likewise. * libgnat/a-secain.ads: Likewise. * libgnat/a-sequio.adb: Likewise. * libgnat/a-sequio.ads: Likewise. * libgnat/a-sfecin.ads: Likewise. * libgnat/a-sfhcin.ads: Likewise. * libgnat/a-sflcin.ads: Likewise. * libgnat/a-shcain.adb: Likewise. * libgnat/a-shcain.ads: Likewise. * libgnat/a-siocst.adb: Likewise. * libgnat/a-siocst.ads: Likewise. * libgnat/a-slcain.adb: Likewise. * libgnat/a-slcain.ads: Likewise. * libgnat/a-ssicst.adb: Likewise. * libgnat/a-ssicst.ads: Likewise. * libgnat/a-stboha.adb: Likewise. * libgnat/a-stbubo.adb: Likewise. * libgnat/a-stbubo.ads: Likewise. * libgnat/a-stbufi.adb: Likewise. * libgnat/a-stbufi.ads: Likewise. * libgnat/a-stbufo.adb: Likewise. * libgnat/a-stbufo.ads: Likewise. * libgnat/a-stbuun.adb: Likewise. * libgnat/a-stbuut.adb: Likewise. * libgnat/a-stbuut.ads: Likewise. * libgnat/a-stmaco.ads: Likewise. * libgnat/a-storio.adb: Likewise. * libgnat/a-strbou.adb: Likewise. * libgnat/a-strbou.ads: Likewise. * libgnat/a-stream.adb: Likewise. * libgnat/a-stream.ads: Likewise. * libgnat/a-strfix.adb: Likewise. * libgnat/a-strhas.adb: Likewise. * libgnat/a-strmap.adb: Likewise. * libgnat/a-strmap.ads: Likewise. * libgnat/a-strsea.adb: Likewise. * libgnat/a-strsea.ads: Likewise. * libgnat/a-strsto.ads: Likewise. * libgnat/a-strsup.adb: Likewise. * libgnat/a-strsup.ads: Likewise. * libgnat/a-strunb.adb: Likewise. * libgnat/a-strunb.ads: Likewise. * libgnat/a-strunb__shared.adb: Likewise. * libgnat/a-strunb__shared.ads: Likewise. * libgnat/a-ststbo.adb: Likewise. * libgnat/a-ststbo.ads: Likewise. * libgnat/a-ststio.adb: Likewise. * libgnat/a-ststio.ads: Likewise. * libgnat/a-ststun.adb: Likewise. * libgnat/a-ststun.ads: Likewise. * libgnat/a-sttebu.adb: Likewise. * libgnat/a-stunau.adb: Likewise. * libgnat/a-stunau.ads: Likewise. * libgnat/a-stunau__shared.adb: Likewise. * libgnat/a-stunha.adb: Likewise. * libgnat/a-stuten.adb: Likewise. * libgnat/a-stwibo.adb: Likewise. * libgnat/a-stwibo.ads: Likewise. * libgnat/a-stwifi.adb: Likewise. * libgnat/a-stwiha.adb: Likewise. * libgnat/a-stwima.adb: Likewise. * libgnat/a-stwima.ads: Likewise. * libgnat/a-stwise.adb: Likewise. * libgnat/a-stwise.ads: Likewise. * libgnat/a-stwisu.adb: Likewise. * libgnat/a-stwisu.ads: Likewise. * libgnat/a-stwiun.adb: Likewise. * libgnat/a-stwiun.ads: Likewise. * libgnat/a-stwiun__shared.adb: Likewise. * libgnat/a-stwiun__shared.ads: Likewise. * libgnat/a-stzbou.adb: Likewise. * libgnat/a-stzbou.ads: Likewise. * libgnat/a-stzfix.adb: Likewise. * libgnat/a-stzhas.adb: Likewise. * libgnat/a-stzmap.adb: Likewise. * libgnat/a-stzmap.ads: Likewise. * libgnat/a-stzsea.adb: Likewise. * libgnat/a-stzsea.ads: Likewise. * libgnat/a-stzsup.adb: Likewise. * libgnat/a-stzsup.ads: Likewise. * libgnat/a-stzunb.adb: Likewise. * libgnat/a-stzunb.ads: Likewise. * libgnat/a-stzunb__shared.adb: Likewise. * libgnat/a-stzunb__shared.ads: Likewise. * libgnat/a-suecin.adb: Likewise. * libgnat/a-suecin.ads: Likewise. * libgnat/a-suenco.adb: Likewise. * libgnat/a-suenst.adb: Likewise. * libgnat/a-suewst.adb: Likewise. * libgnat/a-suezst.adb: Likewise. * libgnat/a-suhcin.adb: Likewise. * libgnat/a-suhcin.ads: Likewise. * libgnat/a-sulcin.adb: Likewise. * libgnat/a-sulcin.ads: Likewise. * libgnat/a-suteio.adb: Likewise. * libgnat/a-suteio.ads: Likewise. * libgnat/a-suteio__shared.adb: Likewise. * libgnat/a-swbwha.adb: Likewise. * libgnat/a-swmwco.ads: Likewise. * libgnat/a-swunau.adb: Likewise. * libgnat/a-swunau.ads: Likewise. * libgnat/a-swunau__shared.adb: Likewise. * libgnat/a-swuwha.adb: Likewise. * libgnat/a-swuwti.adb: Likewise. * libgnat/a-swuwti.ads: Likewise. * libgnat/a-swuwti__shared.adb: Likewise. * libgnat/a-szbzha.adb: Likewise. * libgnat/a-szmzco.ads: Likewise. * libgnat/a-szunau.adb: Likewise. * libgnat/a-szunau.ads: Likewise. * libgnat/a-szunau__shared.adb: Likewise. * libgnat/a-szuzha.adb: Likewise. * libgnat/a-szuzti.adb: Likewise. * libgnat/a-szuzti.ads: Likewise. * libgnat/a-szuzti__shared.adb: Likewise. * libgnat/a-tags.adb: Likewise. * libgnat/a-tags.ads: Likewise. * libgnat/a-teioed.adb: Likewise. * libgnat/a-teioed.ads: Likewise. * libgnat/a-textio.adb: Likewise. * libgnat/a-textio.ads: Likewise. * libgnat/a-tiboio.adb: Likewise. * libgnat/a-ticoau.adb: Likewise. * libgnat/a-ticoau.ads: Likewise. * libgnat/a-ticoio.adb: Likewise. * libgnat/a-ticoio.ads: Likewise. * libgnat/a-tideau.adb: Likewise. * libgnat/a-tideau.ads: Likewise. * libgnat/a-tideio.adb: Likewise. * libgnat/a-tideio.ads: Likewise. * libgnat/a-tideio__128.adb: Likewise. * libgnat/a-tienau.adb: Likewise. * libgnat/a-tienau.ads: Likewise. * libgnat/a-tienio.adb: Likewise. * libgnat/a-tifiau.adb: Likewise. * libgnat/a-tifiau.ads: Likewise. * libgnat/a-tifiio.adb: Likewise. * libgnat/a-tifiio__128.adb: Likewise. * libgnat/a-tiflau.adb: Likewise. * libgnat/a-tiflau.ads: Likewise. * libgnat/a-tiflio.adb: Likewise. * libgnat/a-tiflio.ads: Likewise. * libgnat/a-tigeau.adb: Likewise. * libgnat/a-tigeau.ads: Likewise. * libgnat/a-tigeli.adb: Likewise. * libgnat/a-tiinau.adb: Likewise. * libgnat/a-tiinau.ads: Likewise. * libgnat/a-tiinio.adb: Likewise. * libgnat/a-tiinio.ads: Likewise. * libgnat/a-tiinio__128.adb: Likewise. * libgnat/a-timoio.adb: Likewise. * libgnat/a-timoio.ads: Likewise. * libgnat/a-timoio__128.adb: Likewise. * libgnat/a-tiocst.adb: Likewise. * libgnat/a-tiocst.ads: Likewise. * libgnat/a-tirsfi.adb: Likewise. * libgnat/a-tirsfi.ads: Likewise. * libgnat/a-titest.adb: Likewise. * libgnat/a-undesu.adb: Likewise. * libgnat/a-wichha.adb: Likewise. * libgnat/a-wichun.adb: Likewise. * libgnat/a-wichun.ads: Likewise. * libgnat/a-witeio.adb: Likewise. * libgnat/a-witeio.ads: Likewise. * libgnat/a-wrstfi.adb: Likewise. * libgnat/a-wrstfi.ads: Likewise. * libgnat/a-wtcoau.adb: Likewise. * libgnat/a-wtcoau.ads: Likewise. * libgnat/a-wtcoio.adb: Likewise. * libgnat/a-wtcstr.adb: Likewise. * libgnat/a-wtcstr.ads: Likewise. * libgnat/a-wtdeau.adb: Likewise. * libgnat/a-wtdeau.ads: Likewise. * libgnat/a-wtdeio.adb: Likewise. * libgnat/a-wtdeio__128.adb: Likewise. * libgnat/a-wtedit.adb: Likewise. * libgnat/a-wtedit.ads: Likewise. * libgnat/a-wtenau.adb: Likewise. * libgnat/a-wtenau.ads: Likewise. * libgnat/a-wtenio.adb: Likewise. * libgnat/a-wtfiau.adb: Likewise. * libgnat/a-wtfiau.ads: Likewise. * libgnat/a-wtfiio.adb: Likewise. * libgnat/a-wtfiio__128.adb: Likewise. * libgnat/a-wtflau.adb: Likewise. * libgnat/a-wtflau.ads: Likewise. * libgnat/a-wtflio.adb: Likewise. * libgnat/a-wtgeau.adb: Likewise. * libgnat/a-wtgeau.ads: Likewise. * libgnat/a-wtinau.adb: Likewise. * libgnat/a-wtinau.ads: Likewise. * libgnat/a-wtinio.adb: Likewise. * libgnat/a-wtinio__128.adb: Likewise. * libgnat/a-wtmoio.adb: Likewise. * libgnat/a-wtmoio.ads: Likewise. * libgnat/a-wtmoio__128.adb: Likewise. * libgnat/a-wttest.adb: Likewise. * libgnat/a-wwboio.adb: Likewise. * libgnat/a-zchhan.adb: Likewise. * libgnat/a-zchuni.adb: Likewise. * libgnat/a-zchuni.ads: Likewise. * libgnat/a-zrstfi.adb: Likewise. * libgnat/a-zrstfi.ads: Likewise. * libgnat/a-ztcoau.adb: Likewise. * libgnat/a-ztcoio.adb: Likewise. * libgnat/a-ztcstr.adb: Likewise. * libgnat/a-ztcstr.ads: Likewise. * libgnat/a-ztdeau.adb: Likewise. * libgnat/a-ztdeau.ads: Likewise. * libgnat/a-ztdeio.adb: Likewise. * libgnat/a-ztdeio__128.adb: Likewise. * libgnat/a-ztedit.adb: Likewise. * libgnat/a-ztedit.ads: Likewise. * libgnat/a-ztenau.adb: Likewise. * libgnat/a-ztenau.ads: Likewise. * libgnat/a-ztenio.adb: Likewise. * libgnat/a-ztexio.adb: Likewise. * libgnat/a-ztexio.ads: Likewise. * libgnat/a-ztfiau.adb: Likewise. * libgnat/a-ztfiau.ads: Likewise. * libgnat/a-ztfiio.adb: Likewise. * libgnat/a-ztfiio__128.adb: Likewise. * libgnat/a-ztflau.adb: Likewise. * libgnat/a-ztflau.ads: Likewise. * libgnat/a-ztflio.adb: Likewise. * libgnat/a-ztgeau.adb: Likewise. * libgnat/a-ztgeau.ads: Likewise. * libgnat/a-ztinau.adb: Likewise. * libgnat/a-ztinau.ads: Likewise. * libgnat/a-ztinio.adb: Likewise. * libgnat/a-ztinio__128.adb: Likewise. * libgnat/a-ztmoio.adb: Likewise. * libgnat/a-ztmoio__128.adb: Likewise. * libgnat/a-zttest.adb: Likewise. * libgnat/a-zzboio.adb: Likewise. * libgnat/g-allein.ads: Likewise. * libgnat/g-alleve.adb: Likewise. * libgnat/g-alleve.ads: Likewise. * libgnat/g-alleve__hard.adb: Likewise. * libgnat/g-alleve__hard.ads: Likewise. * libgnat/g-altcon.adb: Likewise. * libgnat/g-altcon.ads: Likewise. * libgnat/g-altive.ads: Likewise. * libgnat/g-alveop.adb: Likewise. * libgnat/g-alveop.ads: Likewise. * libgnat/g-alvety.ads: Likewise. * libgnat/g-alvevi.ads: Likewise. * libgnat/g-arrspl.adb: Likewise. * libgnat/g-arrspl.ads: Likewise. * libgnat/g-awk.adb: Likewise. * libgnat/g-awk.ads: Likewise. * libgnat/g-binenv.adb: Likewise. * libgnat/g-binenv.ads: Likewise. * libgnat/g-brapre.ads: Likewise. * libgnat/g-bubsor.adb: Likewise. * libgnat/g-bubsor.ads: Likewise. * libgnat/g-busora.adb: Likewise. * libgnat/g-busora.ads: Likewise. * libgnat/g-busorg.adb: Likewise. * libgnat/g-busorg.ads: Likewise. * libgnat/g-byorma.adb: Likewise. * libgnat/g-byorma.ads: Likewise. * libgnat/g-bytswa.adb: Likewise. * libgnat/g-bytswa.ads: Likewise. * libgnat/g-calend.adb: Likewise. * libgnat/g-calend.ads: Likewise. * libgnat/g-casuti.adb: Likewise. * libgnat/g-casuti.ads: Likewise. * libgnat/g-catiio.adb: Likewise. * libgnat/g-catiio.ads: Likewise. * libgnat/g-cgi.adb: Likewise. * libgnat/g-cgi.ads: Likewise. * libgnat/g-cgicoo.adb: Likewise. * libgnat/g-cgicoo.ads: Likewise. * libgnat/g-cgideb.adb: Likewise. * libgnat/g-cgideb.ads: Likewise. * libgnat/g-comlin.adb: Likewise. * libgnat/g-comlin.ads: Likewise. * libgnat/g-comver.adb: Likewise. * libgnat/g-comver.ads: Likewise. * libgnat/g-cppexc.adb: Likewise. * libgnat/g-cppexc.ads: Likewise. * libgnat/g-crc32.adb: Likewise. * libgnat/g-crc32.ads: Likewise. * libgnat/g-ctrl_c.adb: Likewise. * libgnat/g-ctrl_c.ads: Likewise. * libgnat/g-curexc.ads: Likewise. * libgnat/g-debpoo.adb: Likewise. * libgnat/g-debpoo.ads: Likewise. * libgnat/g-debuti.adb: Likewise. * libgnat/g-debuti.ads: Likewise. * libgnat/g-decstr.adb: Likewise. * libgnat/g-decstr.ads: Likewise. * libgnat/g-deutst.ads: Likewise. * libgnat/g-diopit.adb: Likewise. * libgnat/g-diopit.ads: Likewise. * libgnat/g-dirope.adb: Likewise. * libgnat/g-dirope.ads: Likewise. * libgnat/g-dynhta.adb: Likewise. * libgnat/g-dynhta.ads: Likewise. * libgnat/g-dyntab.adb: Likewise. * libgnat/g-dyntab.ads: Likewise. * libgnat/g-eacodu.adb: Likewise. * libgnat/g-encstr.adb: Likewise. * libgnat/g-encstr.ads: Likewise. * libgnat/g-enutst.ads: Likewise. * libgnat/g-excact.adb: Likewise. * libgnat/g-excact.ads: Likewise. * libgnat/g-except.ads: Likewise. * libgnat/g-exctra.adb: Likewise. * libgnat/g-exctra.ads: Likewise. * libgnat/g-expect.adb: Likewise. * libgnat/g-expect.ads: Likewise. * libgnat/g-exptty.adb: Likewise. * libgnat/g-exptty.ads: Likewise. * libgnat/g-flocon.ads: Likewise. * libgnat/g-forstr.adb: Likewise. * libgnat/g-forstr.ads: Likewise. * libgnat/g-graphs.adb: Likewise. * libgnat/g-graphs.ads: Likewise. * libgnat/g-heasor.adb: Likewise. * libgnat/g-heasor.ads: Likewise. * libgnat/g-hesora.adb: Likewise. * libgnat/g-hesora.ads: Likewise. * libgnat/g-hesorg.adb: Likewise. * libgnat/g-hesorg.ads: Likewise. * libgnat/g-htable.adb: Likewise. * libgnat/g-htable.ads: Likewise. * libgnat/g-io.adb: Likewise. * libgnat/g-io.ads: Likewise. * libgnat/g-io_aux.adb: Likewise. * libgnat/g-io_aux.ads: Likewise. * libgnat/g-lists.adb: Likewise. * libgnat/g-lists.ads: Likewise. * libgnat/g-locfil.adb: Likewise. * libgnat/g-locfil.ads: Likewise. * libgnat/g-mbdira.adb: Likewise. * libgnat/g-mbdira.ads: Likewise. * libgnat/g-mbflra.adb: Likewise. * libgnat/g-mbflra.ads: Likewise. * libgnat/g-md5.adb: Likewise. * libgnat/g-md5.ads: Likewise. * libgnat/g-memdum.adb: Likewise. * libgnat/g-memdum.ads: Likewise. * libgnat/g-moreex.adb: Likewise. * libgnat/g-moreex.ads: Likewise. * libgnat/g-os_lib.adb: Likewise. * libgnat/g-os_lib.ads: Likewise. * libgnat/g-pehage.adb: Likewise. * libgnat/g-pehage.ads: Likewise. * libgnat/g-rannum.adb: Likewise. * libgnat/g-rannum.ads: Likewise. * libgnat/g-regexp.adb: Likewise. * libgnat/g-regexp.ads: Likewise. * libgnat/g-regist.adb: Likewise. * libgnat/g-regist.ads: Likewise. * libgnat/g-regpat.adb: Likewise. * libgnat/g-regpat.ads: Likewise. * libgnat/g-rewdat.adb: Likewise. * libgnat/g-rewdat.ads: Likewise. * libgnat/g-sechas.adb: Likewise. * libgnat/g-sechas.ads: Likewise. * libgnat/g-sehamd.adb: Likewise. * libgnat/g-sehamd.ads: Likewise. * libgnat/g-sehash.adb: Likewise. * libgnat/g-sehash.ads: Likewise. * libgnat/g-sercom.adb: Likewise. * libgnat/g-sercom.ads: Likewise. * libgnat/g-sercom__linux.adb: Likewise. * libgnat/g-sercom__mingw.adb: Likewise. * libgnat/g-sestin.ads: Likewise. * libgnat/g-sets.adb: Likewise. * libgnat/g-sets.ads: Likewise. * libgnat/g-sha1.adb: Likewise. * libgnat/g-sha1.ads: Likewise. * libgnat/g-sha224.ads: Likewise. * libgnat/g-sha256.ads: Likewise. * libgnat/g-sha384.ads: Likewise. * libgnat/g-sha512.ads: Likewise. * libgnat/g-shsh32.adb: Likewise. * libgnat/g-shsh32.ads: Likewise. * libgnat/g-shsh64.adb: Likewise. * libgnat/g-shsh64.ads: Likewise. * libgnat/g-shshco.adb: Likewise. * libgnat/g-shshco.ads: Likewise. * libgnat/g-soccon.ads: Likewise. * libgnat/g-socket.adb: Likewise. * libgnat/g-socket.ads: Likewise. * libgnat/g-socket__dummy.adb: Likewise. * libgnat/g-socket__dummy.ads: Likewise. * libgnat/g-socpol.adb: Likewise. * libgnat/g-socpol.ads: Likewise. * libgnat/g-socpol__dummy.adb: Likewise. * libgnat/g-socpol__dummy.ads: Likewise. * libgnat/g-socthi.adb: Likewise. * libgnat/g-socthi.ads: Likewise. * libgnat/g-socthi__dummy.adb: Likewise. * libgnat/g-socthi__dummy.ads: Likewise. * libgnat/g-socthi__mingw.adb: Likewise. * libgnat/g-socthi__mingw.ads: Likewise. * libgnat/g-socthi__vxworks.adb: Likewise. * libgnat/g-socthi__vxworks.ads: Likewise. * libgnat/g-soliop.ads: Likewise. * libgnat/g-soliop__lynxos.ads: Likewise. * libgnat/g-soliop__mingw.ads: Likewise. * libgnat/g-soliop__qnx.ads: Likewise. * libgnat/g-soliop__solaris.ads: Likewise. * libgnat/g-sopowa.adb: Likewise. * libgnat/g-sopowa__mingw.adb: Likewise. * libgnat/g-sopowa__posix.adb: Likewise. * libgnat/g-sothco.adb: Likewise. * libgnat/g-sothco.ads: Likewise. * libgnat/g-sothco__dummy.adb: Likewise. * libgnat/g-sothco__dummy.ads: Likewise. * libgnat/g-souinf.ads: Likewise. * libgnat/g-spchge.adb: Likewise. * libgnat/g-spchge.ads: Likewise. * libgnat/g-speche.adb: Likewise. * libgnat/g-speche.ads: Likewise. * libgnat/g-spipat.adb: Likewise. * libgnat/g-spipat.ads: Likewise. * libgnat/g-spitbo.adb: Likewise. * libgnat/g-spitbo.ads: Likewise. * libgnat/g-spogwa.adb: Likewise. * libgnat/g-spogwa.ads: Likewise. * libgnat/g-sptabo.ads: Likewise. * libgnat/g-sptain.ads: Likewise. * libgnat/g-sptavs.ads: Likewise. * libgnat/g-sse.ads: Likewise. * libgnat/g-ssvety.ads: Likewise. * libgnat/g-sthcso.adb: Likewise. * libgnat/g-stheme.adb: Likewise. * libgnat/g-strhas.ads: Likewise. * libgnat/g-string.adb: Likewise. * libgnat/g-string.ads: Likewise. * libgnat/g-strspl.ads: Likewise. * libgnat/g-stseme.adb: Likewise. * libgnat/g-stsifd__sockets.adb: Likewise. * libgnat/g-table.adb: Likewise. * libgnat/g-table.ads: Likewise. * libgnat/g-tasloc.adb: Likewise. * libgnat/g-tasloc.ads: Likewise. * libgnat/g-timsta.adb: Likewise. * libgnat/g-timsta.ads: Likewise. * libgnat/g-traceb.adb: Likewise. * libgnat/g-traceb.ads: Likewise. * libgnat/g-trasym.adb: Likewise. * libgnat/g-trasym.ads: Likewise. * libgnat/g-tty.adb: Likewise. * libgnat/g-tty.ads: Likewise. * libgnat/g-u3spch.adb: Likewise. * libgnat/g-u3spch.ads: Likewise. * libgnat/g-utf_32.adb: Likewise. * libgnat/g-utf_32.ads: Likewise. * libgnat/g-wispch.adb: Likewise. * libgnat/g-wispch.ads: Likewise. * libgnat/g-wistsp.ads: Likewise. * libgnat/g-zspche.adb: Likewise. * libgnat/g-zspche.ads: Likewise. * libgnat/g-zstspl.ads: Likewise. * libgnat/gnat.ads: Likewise. * libgnat/i-c.adb: Likewise. * libgnat/i-cexten.ads: Likewise. * libgnat/i-cexten__128.ads: Likewise. * libgnat/i-cobol.adb: Likewise. * libgnat/i-cobol.ads: Likewise. * libgnat/i-cpoint.adb: Likewise. * libgnat/i-cpoint.ads: Likewise. * libgnat/i-cstrea.adb: Likewise. * libgnat/i-cstrea.ads: Likewise. * libgnat/i-cstrin.adb: Likewise. * libgnat/i-cstrin.ads: Likewise. * libgnat/i-fortra.adb: Likewise. * libgnat/i-pacdec.adb: Likewise. * libgnat/i-pacdec.ads: Likewise. * libgnat/i-vxwoio.adb: Likewise. * libgnat/i-vxwoio.ads: Likewise. * libgnat/i-vxwork.ads: Likewise. * libgnat/i-vxwork__x86.ads: Likewise. * libgnat/interfac.ads: Likewise. * libgnat/interfac__2020.ads: Likewise. * libgnat/memtrack.adb: Likewise. * libgnat/s-addima.adb: Likewise. * libgnat/s-addima.ads: Likewise. * libgnat/s-addope.adb: Likewise. * libgnat/s-addope.ads: Likewise. * libgnat/s-aoinar.adb: Likewise. * libgnat/s-aoinar.ads: Likewise. * libgnat/s-aomoar.adb: Likewise. * libgnat/s-aomoar.ads: Likewise. * libgnat/s-aotase.adb: Likewise. * libgnat/s-aotase.ads: Likewise. * libgnat/s-aridou.adb: Likewise. * libgnat/s-aridou.ads: Likewise. * libgnat/s-arit128.adb: Likewise. * libgnat/s-arit128.ads: Likewise. * libgnat/s-arit32.adb: Likewise. * libgnat/s-arit32.ads: Likewise. * libgnat/s-arit64.adb: Likewise. * libgnat/s-arit64.ads: Likewise. * libgnat/s-assert.adb: Likewise. * libgnat/s-assert.ads: Likewise. * libgnat/s-atacco.adb: Likewise. * libgnat/s-atacco.ads: Likewise. * libgnat/s-atocou.adb: Likewise. * libgnat/s-atocou.ads: Likewise. * libgnat/s-atocou__builtin.adb: Likewise. * libgnat/s-atoope.ads: Likewise. * libgnat/s-atopex.adb: Likewise. * libgnat/s-atopex.ads: Likewise. * libgnat/s-atopri.adb: Likewise. * libgnat/s-atopri.ads: Likewise. * libgnat/s-auxdec.adb: Likewise. * libgnat/s-auxdec.ads: Likewise. * libgnat/s-bignum.adb: Likewise. * libgnat/s-bignum.ads: Likewise. * libgnat/s-bitfie.ads: Likewise. * libgnat/s-bitops.adb: Likewise. * libgnat/s-bitops.ads: Likewise. * libgnat/s-bituti.adb: Likewise. * libgnat/s-bituti.ads: Likewise. * libgnat/s-boarop.ads: Likewise. * libgnat/s-boustr.adb: Likewise. * libgnat/s-boustr.ads: Likewise. * libgnat/s-bytswa.ads: Likewise. * libgnat/s-carsi8.adb: Likewise. * libgnat/s-carsi8.ads: Likewise. * libgnat/s-carun8.adb: Likewise. * libgnat/s-carun8.ads: Likewise. * libgnat/s-casi128.adb: Likewise. * libgnat/s-casi128.ads: Likewise. * libgnat/s-casi16.adb: Likewise. * libgnat/s-casi16.ads: Likewise. * libgnat/s-casi32.adb: Likewise. * libgnat/s-casi32.ads: Likewise. * libgnat/s-casi64.adb: Likewise. * libgnat/s-casi64.ads: Likewise. * libgnat/s-casuti.adb: Likewise. * libgnat/s-casuti.ads: Likewise. * libgnat/s-caun128.adb: Likewise. * libgnat/s-caun128.ads: Likewise. * libgnat/s-caun16.adb: Likewise. * libgnat/s-caun16.ads: Likewise. * libgnat/s-caun32.adb: Likewise. * libgnat/s-caun32.ads: Likewise. * libgnat/s-caun64.adb: Likewise. * libgnat/s-caun64.ads: Likewise. * libgnat/s-chepoo.ads: Likewise. * libgnat/s-commun.adb: Likewise. * libgnat/s-commun.ads: Likewise. * libgnat/s-conca2.adb: Likewise. * libgnat/s-conca2.ads: Likewise. * libgnat/s-conca3.adb: Likewise. * libgnat/s-conca3.ads: Likewise. * libgnat/s-conca4.adb: Likewise. * libgnat/s-conca4.ads: Likewise. * libgnat/s-conca5.adb: Likewise. * libgnat/s-conca5.ads: Likewise. * libgnat/s-conca6.adb: Likewise. * libgnat/s-conca6.ads: Likewise. * libgnat/s-conca7.adb: Likewise. * libgnat/s-conca7.ads: Likewise. * libgnat/s-conca8.adb: Likewise. * libgnat/s-conca8.ads: Likewise. * libgnat/s-conca9.adb: Likewise. * libgnat/s-conca9.ads: Likewise. * libgnat/s-crc32.adb: Likewise. * libgnat/s-crc32.ads: Likewise. * libgnat/s-crtl.ads: Likewise. * libgnat/s-dfmkio.ads: Likewise. * libgnat/s-dfmopr.ads: Likewise. * libgnat/s-dgmgop.ads: Likewise. * libgnat/s-diflio.adb: Likewise. * libgnat/s-diflio.ads: Likewise. * libgnat/s-diflmk.ads: Likewise. * libgnat/s-digemk.ads: Likewise. * libgnat/s-diinio.adb: Likewise. * libgnat/s-diinio.ads: Likewise. * libgnat/s-dilomk.ads: Likewise. * libgnat/s-dim.ads: Likewise. * libgnat/s-dimkio.ads: Likewise. * libgnat/s-dimmks.ads: Likewise. * libgnat/s-direio.adb: Likewise. * libgnat/s-direio.ads: Likewise. * libgnat/s-dlmkio.ads: Likewise. * libgnat/s-dlmopr.ads: Likewise. * libgnat/s-dmotpr.ads: Likewise. * libgnat/s-dorepr.adb: Likewise. * libgnat/s-dorepr__fma.adb: Likewise. * libgnat/s-dourea.adb: Likewise. * libgnat/s-dourea.ads: Likewise. * libgnat/s-dsaser.ads: Likewise. * libgnat/s-dwalin.adb: Likewise. * libgnat/s-dwalin.ads: Likewise. * libgnat/s-elaall.adb: Likewise. * libgnat/s-elaall.ads: Likewise. * libgnat/s-excdeb.adb: Likewise. * libgnat/s-excdeb.ads: Likewise. * libgnat/s-except.adb: Likewise. * libgnat/s-except.ads: Likewise. * libgnat/s-excmac__arm.adb: Likewise. * libgnat/s-excmac__arm.ads: Likewise. * libgnat/s-excmac__gcc.adb: Likewise. * libgnat/s-excmac__gcc.ads: Likewise. * libgnat/s-exctab.adb: Likewise. * libgnat/s-exctab.ads: Likewise. * libgnat/s-exctra.adb: Likewise. * libgnat/s-exctra.ads: Likewise. * libgnat/s-exnflt.ads: Likewise. * libgnat/s-exnint.adb: Likewise. * libgnat/s-exnint.ads: Likewise. * libgnat/s-exnlfl.ads: Likewise. * libgnat/s-exnllf.adb: Likewise. * libgnat/s-exnllf.ads: Likewise. * libgnat/s-exnlli.adb: Likewise. * libgnat/s-exnlli.ads: Likewise. * libgnat/s-exnllli.ads: Likewise. * libgnat/s-expint.adb: Likewise. * libgnat/s-expint.ads: Likewise. * libgnat/s-explli.adb: Likewise. * libgnat/s-explli.ads: Likewise. * libgnat/s-expllli.ads: Likewise. * libgnat/s-explllu.ads: Likewise. * libgnat/s-expllu.adb: Likewise. * libgnat/s-expllu.ads: Likewise. * libgnat/s-expmod.adb: Likewise. * libgnat/s-expmod.ads: Likewise. * libgnat/s-exponn.adb: Likewise. * libgnat/s-exponn.ads: Likewise. * libgnat/s-exponr.adb: Likewise. * libgnat/s-exponr.ads: Likewise. * libgnat/s-expont.adb: Likewise. * libgnat/s-expont.ads: Likewise. * libgnat/s-exponu.adb: Likewise. * libgnat/s-exponu.ads: Likewise. * libgnat/s-expuns.adb: Likewise. * libgnat/s-expuns.ads: Likewise. * libgnat/s-fatflt.ads: Likewise. * libgnat/s-fatgen.adb: Likewise. * libgnat/s-fatgen.ads: Likewise. * libgnat/s-fatlfl.ads: Likewise. * libgnat/s-fatllf.ads: Likewise. * libgnat/s-ficobl.ads: Likewise. * libgnat/s-filatt.ads: Likewise. * libgnat/s-fileio.adb: Likewise. * libgnat/s-fileio.ads: Likewise. * libgnat/s-finmas.adb: Likewise. * libgnat/s-finmas.ads: Likewise. * libgnat/s-finroo.adb: Likewise. * libgnat/s-finroo.ads: Likewise. * libgnat/s-flocon.adb: Likewise. * libgnat/s-flocon.ads: Likewise. * libgnat/s-flocon__none.adb: Likewise. * libgnat/s-fode128.ads: Likewise. * libgnat/s-fode32.ads: Likewise. * libgnat/s-fode64.ads: Likewise. * libgnat/s-fofi128.ads: Likewise. * libgnat/s-fofi32.ads: Likewise. * libgnat/s-fofi64.ads: Likewise. * libgnat/s-fore_d.adb: Likewise. * libgnat/s-fore_d.ads: Likewise. * libgnat/s-fore_f.adb: Likewise. * libgnat/s-fore_f.ads: Likewise. * libgnat/s-forrea.adb: Likewise. * libgnat/s-forrea.ads: Likewise. * libgnat/s-gearop.adb: Likewise. * libgnat/s-gearop.ads: Likewise. * libgnat/s-genbig.adb: Likewise. * libgnat/s-genbig.ads: Likewise. * libgnat/s-geveop.adb: Likewise. * libgnat/s-geveop.ads: Likewise. * libgnat/s-gloloc.adb: Likewise. * libgnat/s-gloloc.ads: Likewise. * libgnat/s-gloloc__mingw.adb: Likewise. * libgnat/s-htable.adb: Likewise. * libgnat/s-htable.ads: Likewise. * libgnat/s-imageb.adb: Likewise. * libgnat/s-imageb.ads: Likewise. * libgnat/s-imaged.adb: Likewise. * libgnat/s-imaged.ads: Likewise. * libgnat/s-imagef.adb: Likewise. * libgnat/s-imagef.ads: Likewise. * libgnat/s-imagei.adb: Likewise. * libgnat/s-imagei.ads: Likewise. * libgnat/s-imagen.adb: Likewise. * libgnat/s-imagen.ads: Likewise. * libgnat/s-imager.adb: Likewise. * libgnat/s-imager.ads: Likewise. * libgnat/s-imageu.adb: Likewise. * libgnat/s-imageu.ads: Likewise. * libgnat/s-imagew.adb: Likewise. * libgnat/s-imagew.ads: Likewise. * libgnat/s-imde128.ads: Likewise. * libgnat/s-imde32.ads: Likewise. * libgnat/s-imde64.ads: Likewise. * libgnat/s-imen16.ads: Likewise. * libgnat/s-imen32.ads: Likewise. * libgnat/s-imenu8.ads: Likewise. * libgnat/s-imfi128.ads: Likewise. * libgnat/s-imfi32.ads: Likewise. * libgnat/s-imfi64.ads: Likewise. * libgnat/s-imgbiu.adb: Likewise. * libgnat/s-imgbiu.ads: Likewise. * libgnat/s-imgboo.adb: Likewise. * libgnat/s-imgboo.ads: Likewise. * libgnat/s-imgcha.adb: Likewise. * libgnat/s-imgcha.ads: Likewise. * libgnat/s-imgflt.ads: Likewise. * libgnat/s-imgint.adb: Likewise. * libgnat/s-imgint.ads: Likewise. * libgnat/s-imglfl.ads: Likewise. * libgnat/s-imgllb.adb: Likewise. * libgnat/s-imgllb.ads: Likewise. * libgnat/s-imgllf.ads: Likewise. * libgnat/s-imglli.adb: Likewise. * libgnat/s-imglli.ads: Likewise. * libgnat/s-imglllb.ads: Likewise. * libgnat/s-imgllli.ads: Likewise. * libgnat/s-imglllu.ads: Likewise. * libgnat/s-imglllw.ads: Likewise. * libgnat/s-imgllu.adb: Likewise. * libgnat/s-imgllu.ads: Likewise. * libgnat/s-imgllw.adb: Likewise. * libgnat/s-imgllw.ads: Likewise. * libgnat/s-imgrea.adb: Likewise. * libgnat/s-imgrea.ads: Likewise. * libgnat/s-imguns.adb: Likewise. * libgnat/s-imguns.ads: Likewise. * libgnat/s-imguti.adb: Likewise. * libgnat/s-imguti.ads: Likewise. * libgnat/s-imgwch.adb: Likewise. * libgnat/s-imgwch.ads: Likewise. * libgnat/s-imgwiu.adb: Likewise. * libgnat/s-imgwiu.ads: Likewise. * libgnat/s-io.adb: Likewise. * libgnat/s-io.ads: Likewise. * libgnat/s-llflex.ads: Likewise. * libgnat/s-maccod.ads: Likewise. * libgnat/s-mantis.adb: Likewise. * libgnat/s-mantis.ads: Likewise. * libgnat/s-mastop.adb: Likewise. * libgnat/s-mastop.ads: Likewise. * libgnat/s-memcop.ads: Likewise. * libgnat/s-memory.adb: Likewise. * libgnat/s-memory.ads: Likewise. * libgnat/s-mmap.adb: Likewise. * libgnat/s-mmap.ads: Likewise. * libgnat/s-mmauni__long.ads: Likewise. * libgnat/s-mmosin__mingw.adb: Likewise. * libgnat/s-mmosin__mingw.ads: Likewise. * libgnat/s-mmosin__unix.adb: Likewise. * libgnat/s-mmosin__unix.ads: Likewise. * libgnat/s-multip.adb: Likewise. * libgnat/s-objrea.adb: Likewise. * libgnat/s-objrea.ads: Likewise. * libgnat/s-optide.adb: Likewise. * libgnat/s-os_lib.adb: Likewise. * libgnat/s-os_lib.ads: Likewise. * libgnat/s-osprim.ads: Likewise. * libgnat/s-osprim__darwin.adb: Likewise. * libgnat/s-osprim__lynxos.ads: Likewise. * libgnat/s-osprim__mingw.adb: Likewise. * libgnat/s-osprim__posix.adb: Likewise. * libgnat/s-osprim__posix2008.adb: Likewise. * libgnat/s-osprim__rtems.adb: Likewise. * libgnat/s-osprim__solaris.adb: Likewise. * libgnat/s-osprim__unix.adb: Likewise. * libgnat/s-osprim__x32.adb: Likewise. * libgnat/s-pack03.adb: Likewise. * libgnat/s-pack03.ads: Likewise. * libgnat/s-pack05.adb: Likewise. * libgnat/s-pack05.ads: Likewise. * libgnat/s-pack06.adb: Likewise. * libgnat/s-pack06.ads: Likewise. * libgnat/s-pack07.adb: Likewise. * libgnat/s-pack07.ads: Likewise. * libgnat/s-pack09.adb: Likewise. * libgnat/s-pack09.ads: Likewise. * libgnat/s-pack10.adb: Likewise. * libgnat/s-pack10.ads: Likewise. * libgnat/s-pack100.adb: Likewise. * libgnat/s-pack100.ads: Likewise. * libgnat/s-pack101.adb: Likewise. * libgnat/s-pack101.ads: Likewise. * libgnat/s-pack102.adb: Likewise. * libgnat/s-pack102.ads: Likewise. * libgnat/s-pack103.adb: Likewise. * libgnat/s-pack103.ads: Likewise. * libgnat/s-pack104.adb: Likewise. * libgnat/s-pack104.ads: Likewise. * libgnat/s-pack105.adb: Likewise. * libgnat/s-pack105.ads: Likewise. * libgnat/s-pack106.adb: Likewise. * libgnat/s-pack106.ads: Likewise. * libgnat/s-pack107.adb: Likewise. * libgnat/s-pack107.ads: Likewise. * libgnat/s-pack108.adb: Likewise. * libgnat/s-pack108.ads: Likewise. * libgnat/s-pack109.adb: Likewise. * libgnat/s-pack109.ads: Likewise. * libgnat/s-pack11.adb: Likewise. * libgnat/s-pack11.ads: Likewise. * libgnat/s-pack110.adb: Likewise. * libgnat/s-pack110.ads: Likewise. * libgnat/s-pack111.adb: Likewise. * libgnat/s-pack111.ads: Likewise. * libgnat/s-pack112.adb: Likewise. * libgnat/s-pack112.ads: Likewise. * libgnat/s-pack113.adb: Likewise. * libgnat/s-pack113.ads: Likewise. * libgnat/s-pack114.adb: Likewise. * libgnat/s-pack114.ads: Likewise. * libgnat/s-pack115.adb: Likewise. * libgnat/s-pack115.ads: Likewise. * libgnat/s-pack116.adb: Likewise. * libgnat/s-pack116.ads: Likewise. * libgnat/s-pack117.adb: Likewise. * libgnat/s-pack117.ads: Likewise. * libgnat/s-pack118.adb: Likewise. * libgnat/s-pack118.ads: Likewise. * libgnat/s-pack119.adb: Likewise. * libgnat/s-pack119.ads: Likewise. * libgnat/s-pack12.adb: Likewise. * libgnat/s-pack12.ads: Likewise. * libgnat/s-pack120.adb: Likewise. * libgnat/s-pack120.ads: Likewise. * libgnat/s-pack121.adb: Likewise. * libgnat/s-pack121.ads: Likewise. * libgnat/s-pack122.adb: Likewise. * libgnat/s-pack122.ads: Likewise. * libgnat/s-pack123.adb: Likewise. * libgnat/s-pack123.ads: Likewise. * libgnat/s-pack124.adb: Likewise. * libgnat/s-pack124.ads: Likewise. * libgnat/s-pack125.adb: Likewise. * libgnat/s-pack125.ads: Likewise. * libgnat/s-pack126.adb: Likewise. * libgnat/s-pack126.ads: Likewise. * libgnat/s-pack127.adb: Likewise. * libgnat/s-pack127.ads: Likewise. * libgnat/s-pack13.adb: Likewise. * libgnat/s-pack13.ads: Likewise. * libgnat/s-pack14.adb: Likewise. * libgnat/s-pack14.ads: Likewise. * libgnat/s-pack15.adb: Likewise. * libgnat/s-pack15.ads: Likewise. * libgnat/s-pack17.adb: Likewise. * libgnat/s-pack17.ads: Likewise. * libgnat/s-pack18.adb: Likewise. * libgnat/s-pack18.ads: Likewise. * libgnat/s-pack19.adb: Likewise. * libgnat/s-pack19.ads: Likewise. * libgnat/s-pack20.adb: Likewise. * libgnat/s-pack20.ads: Likewise. * libgnat/s-pack21.adb: Likewise. * libgnat/s-pack21.ads: Likewise. * libgnat/s-pack22.adb: Likewise. * libgnat/s-pack22.ads: Likewise. * libgnat/s-pack23.adb: Likewise. * libgnat/s-pack23.ads: Likewise. * libgnat/s-pack24.adb: Likewise. * libgnat/s-pack24.ads: Likewise. * libgnat/s-pack25.adb: Likewise. * libgnat/s-pack25.ads: Likewise. * libgnat/s-pack26.adb: Likewise. * libgnat/s-pack26.ads: Likewise. * libgnat/s-pack27.adb: Likewise. * libgnat/s-pack27.ads: Likewise. * libgnat/s-pack28.adb: Likewise. * libgnat/s-pack28.ads: Likewise. * libgnat/s-pack29.adb: Likewise. * libgnat/s-pack29.ads: Likewise. * libgnat/s-pack30.adb: Likewise. * libgnat/s-pack30.ads: Likewise. * libgnat/s-pack31.adb: Likewise. * libgnat/s-pack31.ads: Likewise. * libgnat/s-pack33.adb: Likewise. * libgnat/s-pack33.ads: Likewise. * libgnat/s-pack34.adb: Likewise. * libgnat/s-pack34.ads: Likewise. * libgnat/s-pack35.adb: Likewise. * libgnat/s-pack35.ads: Likewise. * libgnat/s-pack36.adb: Likewise. * libgnat/s-pack36.ads: Likewise. * libgnat/s-pack37.adb: Likewise. * libgnat/s-pack37.ads: Likewise. * libgnat/s-pack38.adb: Likewise. * libgnat/s-pack38.ads: Likewise. * libgnat/s-pack39.adb: Likewise. * libgnat/s-pack39.ads: Likewise. * libgnat/s-pack40.adb: Likewise. * libgnat/s-pack40.ads: Likewise. * libgnat/s-pack41.adb: Likewise. * libgnat/s-pack41.ads: Likewise. * libgnat/s-pack42.adb: Likewise. * libgnat/s-pack42.ads: Likewise. * libgnat/s-pack43.adb: Likewise. * libgnat/s-pack43.ads: Likewise. * libgnat/s-pack44.adb: Likewise. * libgnat/s-pack44.ads: Likewise. * libgnat/s-pack45.adb: Likewise. * libgnat/s-pack45.ads: Likewise. * libgnat/s-pack46.adb: Likewise. * libgnat/s-pack46.ads: Likewise. * libgnat/s-pack47.adb: Likewise. * libgnat/s-pack47.ads: Likewise. * libgnat/s-pack48.adb: Likewise. * libgnat/s-pack48.ads: Likewise. * libgnat/s-pack49.adb: Likewise. * libgnat/s-pack49.ads: Likewise. * libgnat/s-pack50.adb: Likewise. * libgnat/s-pack50.ads: Likewise. * libgnat/s-pack51.adb: Likewise. * libgnat/s-pack51.ads: Likewise. * libgnat/s-pack52.adb: Likewise. * libgnat/s-pack52.ads: Likewise. * libgnat/s-pack53.adb: Likewise. * libgnat/s-pack53.ads: Likewise. * libgnat/s-pack54.adb: Likewise. * libgnat/s-pack54.ads: Likewise. * libgnat/s-pack55.adb: Likewise. * libgnat/s-pack55.ads: Likewise. * libgnat/s-pack56.adb: Likewise. * libgnat/s-pack56.ads: Likewise. * libgnat/s-pack57.adb: Likewise. * libgnat/s-pack57.ads: Likewise. * libgnat/s-pack58.adb: Likewise. * libgnat/s-pack58.ads: Likewise. * libgnat/s-pack59.adb: Likewise. * libgnat/s-pack59.ads: Likewise. * libgnat/s-pack60.adb: Likewise. * libgnat/s-pack60.ads: Likewise. * libgnat/s-pack61.adb: Likewise. * libgnat/s-pack61.ads: Likewise. * libgnat/s-pack62.adb: Likewise. * libgnat/s-pack62.ads: Likewise. * libgnat/s-pack63.adb: Likewise. * libgnat/s-pack63.ads: Likewise. * libgnat/s-pack65.adb: Likewise. * libgnat/s-pack65.ads: Likewise. * libgnat/s-pack66.adb: Likewise. * libgnat/s-pack66.ads: Likewise. * libgnat/s-pack67.adb: Likewise. * libgnat/s-pack67.ads: Likewise. * libgnat/s-pack68.adb: Likewise. * libgnat/s-pack68.ads: Likewise. * libgnat/s-pack69.adb: Likewise. * libgnat/s-pack69.ads: Likewise. * libgnat/s-pack70.adb: Likewise. * libgnat/s-pack70.ads: Likewise. * libgnat/s-pack71.adb: Likewise. * libgnat/s-pack71.ads: Likewise. * libgnat/s-pack72.adb: Likewise. * libgnat/s-pack72.ads: Likewise. * libgnat/s-pack73.adb: Likewise. * libgnat/s-pack73.ads: Likewise. * libgnat/s-pack74.adb: Likewise. * libgnat/s-pack74.ads: Likewise. * libgnat/s-pack75.adb: Likewise. * libgnat/s-pack75.ads: Likewise. * libgnat/s-pack76.adb: Likewise. * libgnat/s-pack76.ads: Likewise. * libgnat/s-pack77.adb: Likewise. * libgnat/s-pack77.ads: Likewise. * libgnat/s-pack78.adb: Likewise. * libgnat/s-pack78.ads: Likewise. * libgnat/s-pack79.adb: Likewise. * libgnat/s-pack79.ads: Likewise. * libgnat/s-pack80.adb: Likewise. * libgnat/s-pack80.ads: Likewise. * libgnat/s-pack81.adb: Likewise. * libgnat/s-pack81.ads: Likewise. * libgnat/s-pack82.adb: Likewise. * libgnat/s-pack82.ads: Likewise. * libgnat/s-pack83.adb: Likewise. * libgnat/s-pack83.ads: Likewise. * libgnat/s-pack84.adb: Likewise. * libgnat/s-pack84.ads: Likewise. * libgnat/s-pack85.adb: Likewise. * libgnat/s-pack85.ads: Likewise. * libgnat/s-pack86.adb: Likewise. * libgnat/s-pack86.ads: Likewise. * libgnat/s-pack87.adb: Likewise. * libgnat/s-pack87.ads: Likewise. * libgnat/s-pack88.adb: Likewise. * libgnat/s-pack88.ads: Likewise. * libgnat/s-pack89.adb: Likewise. * libgnat/s-pack89.ads: Likewise. * libgnat/s-pack90.adb: Likewise. * libgnat/s-pack90.ads: Likewise. * libgnat/s-pack91.adb: Likewise. * libgnat/s-pack91.ads: Likewise. * libgnat/s-pack92.adb: Likewise. * libgnat/s-pack92.ads: Likewise. * libgnat/s-pack93.adb: Likewise. * libgnat/s-pack93.ads: Likewise. * libgnat/s-pack94.adb: Likewise. * libgnat/s-pack94.ads: Likewise. * libgnat/s-pack95.adb: Likewise. * libgnat/s-pack95.ads: Likewise. * libgnat/s-pack96.adb: Likewise. * libgnat/s-pack96.ads: Likewise. * libgnat/s-pack97.adb: Likewise. * libgnat/s-pack97.ads: Likewise. * libgnat/s-pack98.adb: Likewise. * libgnat/s-pack98.ads: Likewise. * libgnat/s-pack99.adb: Likewise. * libgnat/s-pack99.ads: Likewise. * libgnat/s-parame.adb: Likewise. * libgnat/s-parame.ads: Likewise. * libgnat/s-parame__hpux.ads: Likewise. * libgnat/s-parame__posix2008.ads: Likewise. * libgnat/s-parame__rtems.adb: Likewise. * libgnat/s-parame__vxworks.adb: Likewise. * libgnat/s-parame__vxworks.ads: Likewise. * libgnat/s-parint.adb: Likewise. * libgnat/s-parint.ads: Likewise. * libgnat/s-pehage.adb: Likewise. * libgnat/s-pehage.ads: Likewise. * libgnat/s-pooglo.adb: Likewise. * libgnat/s-pooglo.ads: Likewise. * libgnat/s-pooloc.adb: Likewise. * libgnat/s-pooloc.ads: Likewise. * libgnat/s-poosiz.adb: Likewise. * libgnat/s-poosiz.ads: Likewise. * libgnat/s-powflt.ads: Likewise. * libgnat/s-powlfl.ads: Likewise. * libgnat/s-powllf.ads: Likewise. * libgnat/s-purexc.ads: Likewise. * libgnat/s-putima.adb: Likewise. * libgnat/s-putima.ads: Likewise. * libgnat/s-rannum.adb: Likewise. * libgnat/s-rannum.ads: Likewise. * libgnat/s-ransee.adb: Likewise. * libgnat/s-ransee.ads: Likewise. * libgnat/s-regexp.adb: Likewise. * libgnat/s-regexp.ads: Likewise. * libgnat/s-regpat.adb: Likewise. * libgnat/s-regpat.ads: Likewise. * libgnat/s-resfil.adb: Likewise. * libgnat/s-resfil.ads: Likewise. * libgnat/s-restri.adb: Likewise. * libgnat/s-restri.ads: Likewise. * libgnat/s-rident.ads: Likewise. * libgnat/s-rpc.adb: Likewise. * libgnat/s-rpc.ads: Likewise. * libgnat/s-scaval.adb: Likewise. * libgnat/s-scaval.ads: Likewise. * libgnat/s-scaval__128.adb: Likewise. * libgnat/s-scaval__128.ads: Likewise. * libgnat/s-secsta.adb: Likewise. * libgnat/s-secsta.ads: Likewise. * libgnat/s-sequio.adb: Likewise. * libgnat/s-sequio.ads: Likewise. * libgnat/s-shabig.ads: Likewise. * libgnat/s-shasto.adb: Likewise. * libgnat/s-shasto.ads: Likewise. * libgnat/s-soflin.adb: Likewise. * libgnat/s-soflin.ads: Likewise. * libgnat/s-soliin.adb: Likewise. * libgnat/s-soliin.ads: Likewise. * libgnat/s-spsufi.adb: Likewise. * libgnat/s-spsufi.ads: Likewise. * libgnat/s-stache.adb: Likewise. * libgnat/s-stache.ads: Likewise. * libgnat/s-stalib.adb: Likewise. * libgnat/s-stalib.ads: Likewise. * libgnat/s-statxd.adb: Likewise. * libgnat/s-statxd.ads: Likewise. * libgnat/s-stausa.adb: Likewise. * libgnat/s-stausa.ads: Likewise. * libgnat/s-stchop.adb: Likewise. * libgnat/s-stchop.ads: Likewise. * libgnat/s-stchop__limit.ads: Likewise. * libgnat/s-stchop__vxworks.adb: Likewise. * libgnat/s-stoele.adb: Likewise. * libgnat/s-stoele.ads: Likewise. * libgnat/s-stopoo.adb: Likewise. * libgnat/s-stopoo.ads: Likewise. * libgnat/s-stposu.adb: Likewise. * libgnat/s-stposu.ads: Likewise. * libgnat/s-stratt.adb: Likewise. * libgnat/s-stratt.ads: Likewise. * libgnat/s-strcom.adb: Likewise. * libgnat/s-strcom.ads: Likewise. * libgnat/s-strhas.adb: Likewise. * libgnat/s-strhas.ads: Likewise. * libgnat/s-string.adb: Likewise. * libgnat/s-string.ads: Likewise. * libgnat/s-ststop.adb: Likewise. * libgnat/s-ststop.ads: Likewise. * libgnat/s-tasloc.adb: Likewise. * libgnat/s-tasloc.ads: Likewise. * libgnat/s-traceb.adb: Likewise. * libgnat/s-traceb.ads: Likewise. * libgnat/s-traceb__hpux.adb: Likewise. * libgnat/s-traceb__mastop.adb: Likewise. * libgnat/s-traent.adb: Likewise. * libgnat/s-traent.ads: Likewise. * libgnat/s-trasym.adb: Likewise. * libgnat/s-trasym.ads: Likewise. * libgnat/s-trasym__dwarf.adb: Likewise. * libgnat/s-tsmona.adb: Likewise. * libgnat/s-tsmona__linux.adb: Likewise. * libgnat/s-tsmona__mingw.adb: Likewise. * libgnat/s-unstyp.ads: Likewise. * libgnat/s-utf_32.adb: Likewise. * libgnat/s-utf_32.ads: Likewise. * libgnat/s-vade128.ads: Likewise. * libgnat/s-vade32.ads: Likewise. * libgnat/s-vade64.ads: Likewise. * libgnat/s-vaen16.ads: Likewise. * libgnat/s-vaen32.ads: Likewise. * libgnat/s-vaenu8.ads: Likewise. * libgnat/s-vafi128.ads: Likewise. * libgnat/s-vafi32.ads: Likewise. * libgnat/s-vafi64.ads: Likewise. * libgnat/s-valboo.adb: Likewise. * libgnat/s-valboo.ads: Likewise. * libgnat/s-valcha.adb: Likewise. * libgnat/s-valcha.ads: Likewise. * libgnat/s-valflt.ads: Likewise. * libgnat/s-valint.adb: Likewise. * libgnat/s-valint.ads: Likewise. * libgnat/s-vallfl.ads: Likewise. * libgnat/s-valllf.ads: Likewise. * libgnat/s-vallli.adb: Likewise. * libgnat/s-vallli.ads: Likewise. * libgnat/s-valllli.ads: Likewise. * libgnat/s-vallllu.ads: Likewise. * libgnat/s-valllu.adb: Likewise. * libgnat/s-valllu.ads: Likewise. * libgnat/s-valrea.adb: Likewise. * libgnat/s-valrea.ads: Likewise. * libgnat/s-valued.adb: Likewise. * libgnat/s-valued.ads: Likewise. * libgnat/s-valuef.adb: Likewise. * libgnat/s-valuef.ads: Likewise. * libgnat/s-valuei.adb: Likewise. * libgnat/s-valuei.ads: Likewise. * libgnat/s-valuen.adb: Likewise. * libgnat/s-valuen.ads: Likewise. * libgnat/s-valuer.adb: Likewise. * libgnat/s-valuer.ads: Likewise. * libgnat/s-valueu.adb: Likewise. * libgnat/s-valueu.ads: Likewise. * libgnat/s-valuns.adb: Likewise. * libgnat/s-valuns.ads: Likewise. * libgnat/s-valuti.adb: Likewise. * libgnat/s-valuti.ads: Likewise. * libgnat/s-valwch.adb: Likewise. * libgnat/s-valwch.ads: Likewise. * libgnat/s-veboop.adb: Likewise. * libgnat/s-veboop.ads: Likewise. * libgnat/s-vector.ads: Likewise. * libgnat/s-vercon.adb: Likewise. * libgnat/s-vercon.ads: Likewise. * libgnat/s-wchcnv.adb: Likewise. * libgnat/s-wchcnv.ads: Likewise. * libgnat/s-wchcon.adb: Likewise. * libgnat/s-wchcon.ads: Likewise. * libgnat/s-wchjis.adb: Likewise. * libgnat/s-wchjis.ads: Likewise. * libgnat/s-wchstw.adb: Likewise. * libgnat/s-wchstw.ads: Likewise. * libgnat/s-wchwts.adb: Likewise. * libgnat/s-wchwts.ads: Likewise. * libgnat/s-widboo.adb: Likewise. * libgnat/s-widboo.ads: Likewise. * libgnat/s-widcha.adb: Likewise. * libgnat/s-widcha.ads: Likewise. * libgnat/s-widenu.adb: Likewise. * libgnat/s-widenu.ads: Likewise. * libgnat/s-widint.ads: Likewise. * libgnat/s-widlli.adb: Likewise. * libgnat/s-widlli.ads: Likewise. * libgnat/s-widllli.ads: Likewise. * libgnat/s-widlllu.ads: Likewise. * libgnat/s-widllu.adb: Likewise. * libgnat/s-widllu.ads: Likewise. * libgnat/s-widthi.adb: Likewise. * libgnat/s-widthi.ads: Likewise. * libgnat/s-widthu.adb: Likewise. * libgnat/s-widthu.ads: Likewise. * libgnat/s-widuns.ads: Likewise. * libgnat/s-widwch.adb: Likewise. * libgnat/s-widwch.ads: Likewise. * libgnat/s-win32.ads: Likewise. * libgnat/s-winext.ads: Likewise. * libgnat/s-wwdcha.adb: Likewise. * libgnat/s-wwdcha.ads: Likewise. * libgnat/s-wwdenu.adb: Likewise. * libgnat/s-wwdenu.ads: Likewise. * libgnat/s-wwdwch.adb: Likewise. * libgnat/s-wwdwch.ads: Likewise. * libgnat/system-aix.ads: Likewise. * libgnat/system-darwin-arm.ads: Likewise. * libgnat/system-darwin-ppc.ads: Likewise. * libgnat/system-darwin-x86.ads: Likewise. * libgnat/system-djgpp.ads: Likewise. * libgnat/system-dragonfly-x86_64.ads: Likewise. * libgnat/system-freebsd.ads: Likewise. * libgnat/system-hpux-ia64.ads: Likewise. * libgnat/system-hpux.ads: Likewise. * libgnat/system-linux-alpha.ads: Likewise. * libgnat/system-linux-arm.ads: Likewise. * libgnat/system-linux-hppa.ads: Likewise. * libgnat/system-linux-ia64.ads: Likewise. * libgnat/system-linux-m68k.ads: Likewise. * libgnat/system-linux-mips.ads: Likewise. * libgnat/system-linux-ppc.ads: Likewise. * libgnat/system-linux-riscv.ads: Likewise. * libgnat/system-linux-s390.ads: Likewise. * libgnat/system-linux-sh4.ads: Likewise. * libgnat/system-linux-sparc.ads: Likewise. * libgnat/system-linux-x86.ads: Likewise. * libgnat/system-lynxos178-ppc.ads: Likewise. * libgnat/system-lynxos178-x86.ads: Likewise. * libgnat/system-mingw.ads: Likewise. * libgnat/system-qnx-aarch64.ads: Likewise. * libgnat/system-rtems.ads: Likewise. * libgnat/system-solaris-sparc.ads: Likewise. * libgnat/system-solaris-x86.ads: Likewise. * libgnat/system-vxworks-arm-rtp-smp.ads: Likewise. * libgnat/system-vxworks-arm-rtp.ads: Likewise. * libgnat/system-vxworks-arm.ads: Likewise. * libgnat/system-vxworks-e500-kernel.ads: Likewise. * libgnat/system-vxworks-e500-rtp-smp.ads: Likewise. * libgnat/system-vxworks-e500-rtp.ads: Likewise. * libgnat/system-vxworks-ppc-kernel.ads: Likewise. * libgnat/system-vxworks-ppc-rtp-smp.ads: Likewise. * libgnat/system-vxworks-ppc-rtp.ads: Likewise. * libgnat/system-vxworks-x86-kernel.ads: Likewise. * libgnat/system-vxworks-x86-rtp-smp.ads: Likewise. * libgnat/system-vxworks-x86-rtp.ads: Likewise. * libgnat/system-vxworks7-aarch64-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-aarch64.ads: Likewise. * libgnat/system-vxworks7-arm-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-arm.ads: Likewise. * libgnat/system-vxworks7-e500-kernel.ads: Likewise. * libgnat/system-vxworks7-e500-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-e500-rtp.ads: Likewise. * libgnat/system-vxworks7-ppc-kernel.ads: Likewise. * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-ppc-rtp.ads: Likewise. * libgnat/system-vxworks7-ppc64-kernel.ads: Likewise. * libgnat/system-vxworks7-ppc64-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-x86-kernel.ads: Likewise. * libgnat/system-vxworks7-x86-rtp-smp.ads: Likewise. * libgnat/system-vxworks7-x86-rtp.ads: Likewise. * libgnat/system-vxworks7-x86_64-kernel.ads: Likewise. * libgnat/system-vxworks7-x86_64-rtp-smp.ads: Likewise. * link.c: Likewise. * live.adb: Likewise. * live.ads: Likewise. * locales.c: Likewise. * make.adb: Likewise. * make.ads: Likewise. * make_util.adb: Likewise. * make_util.ads: Likewise. * makeusg.adb: Likewise. * makeusg.ads: Likewise. * mdll-fil.adb: Likewise. * mdll-fil.ads: Likewise. * mdll-utl.adb: Likewise. * mdll-utl.ads: Likewise. * mdll.adb: Likewise. * mdll.ads: Likewise. * mingw32.h: Likewise. * mkdir.c: Likewise. * namet-sp.adb: Likewise. * namet-sp.ads: Likewise. * namet.adb: Likewise. * namet.ads: Likewise. * namet.h: Likewise. * nlists.adb: Likewise. * nlists.ads: Likewise. * nlists.h: Likewise. * opt.adb: Likewise. * opt.ads: Likewise. * osint-b.adb: Likewise. * osint-b.ads: Likewise. * osint-c.adb: Likewise. * osint-c.ads: Likewise. * osint-l.adb: Likewise. * osint-l.ads: Likewise. * osint-m.adb: Likewise. * osint-m.ads: Likewise. * osint.adb: Likewise. * osint.ads: Likewise. * output.adb: Likewise. * output.ads: Likewise. * par-ch10.adb: Likewise. * par-ch11.adb: Likewise. * par-ch12.adb: Likewise. * par-ch13.adb: Likewise. * par-ch2.adb: Likewise. * par-ch3.adb: Likewise. * par-ch4.adb: Likewise. * par-ch5.adb: Likewise. * par-ch6.adb: Likewise. * par-ch7.adb: Likewise. * par-ch8.adb: Likewise. * par-ch9.adb: Likewise. * par-endh.adb: Likewise. * par-labl.adb: Likewise. * par-load.adb: Likewise. * par-prag.adb: Likewise. * par-sync.adb: Likewise. * par-tchk.adb: Likewise. * par-util.adb: Likewise. * par.adb: Likewise. * par.ads: Likewise. * par_sco.adb: Likewise. * par_sco.ads: Likewise. * pprint.adb: Likewise. * pprint.ads: Likewise. * prep.adb: Likewise. * prep.ads: Likewise. * prepcomp.adb: Likewise. * prepcomp.ads: Likewise. * put_scos.adb: Likewise. * put_scos.ads: Likewise. * raise-gcc.c: Likewise. * raise.c: Likewise. * raise.h: Likewise. * repinfo-input.adb: Likewise. * repinfo-input.ads: Likewise. * repinfo.adb: Likewise. * repinfo.ads: Likewise. * repinfo.h: Likewise. * restrict.adb: Likewise. * restrict.ads: Likewise. * rident.ads: Likewise. * rtfinal.c: Likewise. * rtinit.c: Likewise. * rtsfind.adb: Likewise. * rtsfind.ads: Likewise. * runtime.h: Likewise. * s-oscons-tmplt.c: Likewise. * sa_messages.adb: Likewise. * sa_messages.ads: Likewise. * scans.adb: Likewise. * scans.ads: Likewise. * scil_ll.adb: Likewise. * scil_ll.ads: Likewise. * scn.adb: Likewise. * scn.ads: Likewise. * scng.adb: Likewise. * scng.ads: Likewise. * scos.adb: Likewise. * scos.ads: Likewise. * scos.h: Likewise. * sdefault.ads: Likewise. * seh_init.c: Likewise. * sem.adb: Likewise. * sem.ads: Likewise. * sem_aggr.adb: Likewise. * sem_aggr.ads: Likewise. * sem_attr.adb: Likewise. * sem_attr.ads: Likewise. * sem_aux.adb: Likewise. * sem_aux.ads: Likewise. * sem_case.adb: Likewise. * sem_case.ads: Likewise. * sem_cat.adb: Likewise. * sem_cat.ads: Likewise. * sem_ch10.adb: Likewise. * sem_ch10.ads: Likewise. * sem_ch11.adb: Likewise. * sem_ch11.ads: Likewise. * sem_ch12.adb: Likewise. * sem_ch12.ads: Likewise. * sem_ch13.adb: Likewise. * sem_ch13.ads: Likewise. * sem_ch2.adb: Likewise. * sem_ch2.ads: Likewise. * sem_ch3.adb: Likewise. * sem_ch3.ads: Likewise. * sem_ch4.adb: Likewise. * sem_ch4.ads: Likewise. * sem_ch5.adb: Likewise. * sem_ch5.ads: Likewise. * sem_ch6.adb: Likewise. * sem_ch6.ads: Likewise. * sem_ch7.adb: Likewise. * sem_ch7.ads: Likewise. * sem_ch8.adb: Likewise. * sem_ch8.ads: Likewise. * sem_ch9.adb: Likewise. * sem_ch9.ads: Likewise. * sem_dim.adb: Likewise. * sem_dim.ads: Likewise. * sem_disp.adb: Likewise. * sem_disp.ads: Likewise. * sem_dist.adb: Likewise. * sem_dist.ads: Likewise. * sem_elab.adb: Likewise. * sem_elab.ads: Likewise. * sem_elim.adb: Likewise. * sem_elim.ads: Likewise. * sem_eval.adb: Likewise. * sem_eval.ads: Likewise. * sem_intr.adb: Likewise. * sem_intr.ads: Likewise. * sem_mech.adb: Likewise. * sem_mech.ads: Likewise. * sem_prag.adb: Likewise. * sem_prag.ads: Likewise. * sem_res.adb: Likewise. * sem_res.ads: Likewise. * sem_scil.adb: Likewise. * sem_scil.ads: Likewise. * sem_smem.adb: Likewise. * sem_smem.ads: Likewise. * sem_type.adb: Likewise. * sem_type.ads: Likewise. * sem_util.adb: Likewise. * sem_util.ads: Likewise. * sem_warn.adb: Likewise. * sem_warn.ads: Likewise. * set_targ.adb: Likewise. * set_targ.ads: Likewise. * sfn_scan.adb: Likewise. * sfn_scan.ads: Likewise. * sigtramp-armdroid.c: Likewise. * sigtramp-ios.c: Likewise. * sigtramp-qnx.c: Likewise. * sigtramp-vxworks-target.h: Likewise. * sigtramp-vxworks.c: Likewise. * sigtramp.h: Likewise. * sinfo-cn.adb: Likewise. * sinfo-cn.ads: Likewise. * sinfo-utils.adb: Likewise. * sinfo-utils.ads: Likewise. * sinfo.adb: Likewise. * sinfo.ads: Likewise. * sinput-c.adb: Likewise. * sinput-c.ads: Likewise. * sinput-d.adb: Likewise. * sinput-d.ads: Likewise. * sinput-l.adb: Likewise. * sinput-l.ads: Likewise. * sinput.adb: Likewise. * sinput.ads: Likewise. * socket.c: Likewise. * spark_xrefs.adb: Likewise. * spark_xrefs.ads: Likewise. * sprint.adb: Likewise. * sprint.ads: Likewise. * stand.ads: Likewise. * stringt.adb: Likewise. * stringt.ads: Likewise. * stringt.h: Likewise. * strub.adb: Likewise. * strub.ads: Likewise. * style.adb: Likewise. * style.ads: Likewise. * styleg.adb: Likewise. * styleg.ads: Likewise. * stylesw.adb: Likewise. * stylesw.ads: Likewise. * switch-b.adb: Likewise. * switch-b.ads: Likewise. * switch-c.adb: Likewise. * switch-c.ads: Likewise. * switch-m.adb: Likewise. * switch-m.ads: Likewise. * switch.adb: Likewise. * switch.ads: Likewise. * sysdep.c: Likewise. * table.adb: Likewise. * table.ads: Likewise. * targext.c: Likewise. * targparm.adb: Likewise. * targparm.ads: Likewise. * tbuild.adb: Likewise. * tbuild.ads: Likewise. * tempdir.adb: Likewise. * tempdir.ads: Likewise. * terminals.c: Likewise. * tracebak.c: Likewise. * treepr.adb: Likewise. * treepr.ads: Likewise. * ttypes.ads: Likewise. * types.adb: Likewise. * types.ads: Likewise. * types.h: Likewise. * uintp.adb: Likewise. * uintp.ads: Likewise. * uintp.h: Likewise. * uname.adb: Likewise. * uname.ads: Likewise. * urealp.adb: Likewise. * urealp.ads: Likewise. * urealp.h: Likewise. * usage.adb: Likewise. * usage.ads: Likewise. * validsw.adb: Likewise. * validsw.ads: Likewise. * vast.adb: Likewise. * vast.ads: Likewise. * warnsw.adb: Likewise. * warnsw.ads: Likewise. * widechar.adb: Likewise. * widechar.ads: Likewise. * xoscons.adb: Likewise. * xr_tabls.adb: Likewise. * xr_tabls.ads: Likewise. * xref_lib.adb: Likewise. * xref_lib.ads: Likewise. * xsnamest.adb: Likewise. * xutil.adb: Likewise. * xutil.ads: Likewise.
2021-12-01[Ada] Fix issues with ignored ghost code and unnestingRichard Kenner1-3/+8
gcc/ada/ * frontend.adb (Frontend): Do unnesting after ignored ghost code has been removed. * inline.adb (Analyze_Inlined_Bodies): Don't put ignored ghost entities on inlined subprogram list.
2021-10-25[Ada] Fix a commentBob Duff1-1/+1
gcc/ada/ * inline.adb (Establish_Actual_Mapping_For_Inlined_Call): Fix comment.
2021-10-25[Ada] Renamed_Or_Alias cleanupBob Duff1-2/+2
gcc/ada/ * einfo-utils.ads, einfo-utils.adb (Alias, Set_Alias, Renamed_Entity, Set_Renamed_Entity, Renamed_Object, Set_Renamed_Object): Add assertions that reflect how these are supposed to be used and what they are supposed to return. (Renamed_Entity_Or_Object): New getter. (Set_Renamed_Object_Of_Possibly_Void): Setter that allows N to be E_Void. * checks.adb (Ensure_Valid): Use Renamed_Entity_Or_Object because this is called for both cases. * exp_dbug.adb (Debug_Renaming_Declaration): Use Renamed_Entity_Or_Object because this is called for both cases. Add assertions. * exp_util.adb (Possible_Bit_Aligned_Component): Likewise. * freeze.adb (Freeze_All_Ent): Likewise. * sem_ch5.adb (Within_Function): Likewise. * exp_attr.adb (Calculate_Header_Size): Call Renamed_Entity instead of Renamed_Object. * exp_ch11.adb (Expand_N_Raise_Statement): Likewise. * repinfo.adb (Find_Declaration): Likewise. * sem_ch10.adb (Same_Unit, Process_Spec_Clauses, Analyze_With_Clause, Install_Parents): Likewise. * sem_ch12.adb (Build_Local_Package, Needs_Body_Instantiated, Build_Subprogram_Renaming, Check_Formal_Package_Instance, Check_Generic_Actuals, In_Enclosing_Instance, Denotes_Formal_Package, Process_Nested_Formal, Check_Initialized_Types, Map_Formal_Package_Entities, Restore_Nested_Formal): Likewise. * sem_ch6.adb (Report_Conflict): Likewise. * sem_ch8.adb (Analyze_Exception_Renaming, Analyze_Generic_Renaming, Analyze_Package_Renaming, Is_Primitive_Operator_In_Use, Declared_In_Actual, Note_Redundant_Use): Likewise. * sem_warn.adb (Find_Package_Renaming): Likewise. * sem_elab.adb (Ultimate_Variable): Call Renamed_Object instead of Renamed_Entity. * exp_ch6.adb (Get_Function_Id): Call Set_Renamed_Object_Of_Possibly_Void, because the defining identifer is still E_Void at this point. * sem_util.adb (Function_Call_Or_Allocator_Level): Likewise. Remove redundant (unreachable) code. (Is_Object_Renaming, Is_Valid_Renaming): Call Renamed_Object instead of Renamed_Entity. (Get_Fullest_View): Call Renamed_Entity instead of Renamed_Object. (Copy_Node_With_Replacement): Call Set_Renamed_Object_Of_Possibly_Void because the defining entity is sometimes E_Void. * exp_ch5.adb (Expand_N_Assignment_Statement): Protect a call to Renamed_Object with Is_Object to avoid assertion failure. * einfo.ads: Minor comment fixes. * inline.adb: Minor comment fixes. * tbuild.ads: Minor comment fixes.
2021-09-20[Ada] Remove redundant checks for non-empty list of aspectsPiotr Trojanek1-3/+1
gcc/ada/ * inline.adb (Has_Excluded_Declaration): Remove redundant guard; the guarded code will call First on a No_List, which is well-defined and gives Empty.
2021-09-20[Ada] Fix shadowing in conditions for inliningPiotr Trojanek1-26/+29
gcc/ada/ * inline.adb (Has_Excluded_Declaration): Rename and reduce scope of a local variable.
2021-07-07[Ada] Simplify iteration over pending instantiationsPiotr Trojanek1-7/+2
gcc/ada/ * inline.adb (Instantiate_Bodies): Fix white in declaration. (Remove_Dead_Instance): Change iteration from WHILE to FOR.
2021-07-07[Ada] Transient scope cleanupBob Duff1-4/+1
gcc/ada/ * checks.adb, exp_attr.adb, exp_ch4.adb, exp_ch6.adb, exp_ch9.adb, exp_disp.adb, exp_util.adb, inline.adb, sem_res.adb: Change all calls to Make_Unchecked_Type_Conversion to call Unchecked_Convert_To instead. This involves removing New_Occurrence_Of on the first parameter, because Unchecked_Convert_To expects a type entity, rather than the name of one. Also, removed calls to Relocate_Node, because Unchecked_Convert_To takes care of that. * sinfo.ads: Change comment to be worded more firmly.