| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Pass |
| the NULL_TREE explicitly and test imported_p in lieu of |
| Is_Imported. <E_Function>: Remove public_flag local variable and |
| make extern_flag local variable a constant. |
| |
| 2023-06-20 Yannick Moy <moy@adacore.com> |
| |
| * sem_res.adb (Resolve_Call): Fix change that replaced test for |
| quantified expressions by the test for potentially unevaluated |
| contexts. Both should be performed. |
| |
| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Convert_View): Detect more cases of mismatches for |
| private types and use Implementation_Base_Type as main criterion. |
| * gen_il-fields.ads (Opt_Field_Enum): Add |
| Has_Secondary_Private_View |
| * gen_il-gen-gen_nodes.adb (N_Expanded_Name): Likewise. |
| (N_Direct_Name): Likewise. |
| (N_Op): Likewise. |
| * sem_ch12.ads (Check_Private_View): Document the usage of second |
| flag Has_Secondary_Private_View. |
| * sem_ch12.adb (Get_Associated_Entity): New function to retrieve |
| the ultimate associated entity, if any. |
| (Check_Private_View): Implement Has_Secondary_Private_View |
| support. |
| (Copy_Generic_Node): Remove specific treatment for Component_Type |
| of an array type and Designated_Type of an access type. Add |
| specific treatment for comparison and equality operators, as well |
| as iterator and loop parameter specifications. |
| (Instantiate_Type): Implement Has_Secondary_Private_View support. |
| (Requires_Delayed_Save): Call Get_Associated_Entity. |
| (Set_Global_Type): Implement Has_Secondary_Private_View support. |
| * sem_ch6.adb (Conforming_Types): Remove bypass for private views |
| in instances. |
| * sem_type.adb (Covers): Return true if Is_Subtype_Of does so. |
| Remove bypass for private views in instances. |
| (Specific_Type): Likewise. |
| * sem_util.adb (Wrong_Type): Likewise. |
| * sinfo.ads (Has_Secondary_Private_View): Document new flag. |
| |
| 2023-06-20 Ronan Desplanques <desplanques@adacore.com> |
| |
| * libgnarl/s-mudido.ads: Remove outdated comment. |
| |
| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * doc/gnat_ugn/gnat_and_program_execution.rst (Overflows in GNAT) |
| <Default Settings>: Remove obsolete paragraph about -gnato. |
| <Implementation Notes>: Replace CHECKED with STRICT. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-06-20 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Check_Result_And_Post_State): Do not warn in cases |
| where the warning could be spurious. |
| |
| 2023-06-20 Yannick Moy <moy@adacore.com> |
| |
| * err_vars.ads (Error_Msg_Code): New variable for error codes. |
| * errout.adb (Error_Msg_Internal): Display continuation message |
| when an error code was present. |
| (Set_Msg_Text): Handle character sequence [] for error codes. |
| * errout.ads: Document new insertion sequence []. |
| (Error_Msg_Code): New renaming. |
| * erroutc.adb (Prescan_Message): Detect presence of error code. |
| (Set_Msg_Insertion_Code): Handle new insertion sequence []. |
| * erroutc.ads (Has_Error_Code): New variable for prescan. |
| (Set_Msg_Insertion_Code): Handle new insertion sequence []. |
| * contracts.adb (Check_Type_Or_Object_External_Properties): |
| Replace reference to SPARK RM section by an error code. |
| * sem_elab.adb (SPARK_Processor): Same. |
| * sem_prag.adb (Check_Missing_Part_Of): Same. |
| * sem_res.adb (Resolve_Actuals, Resolve_Entity_Name): Same. |
| |
| 2023-06-20 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Handle Range like First and Last. |
| |
| 2023-06-20 Jose Ruiz <ruiz@adacore.com> |
| |
| * doc/gnat_ugn/the_gnat_compilation_model.rst |
| (Partition-Wide Settings): add this subsection to document |
| configuration settings made by the Ada run time. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-06-20 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Ignore implicit loop scopes |
| introduced by quantified expressions. |
| |
| 2023-06-20 Bob Duff <duff@adacore.com> |
| |
| * sem_ch3.adb (Analyze_Object_Declaration): Remove predicate-check |
| generation if there is an address clause. These are unnecessary, |
| and cause gigi to crash. |
| * exp_util.ads (Following_Address_Clause): Remove obsolete "???" |
| comments. The suggested changes were done long ago. |
| |
| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * einfo.ads (Has_Private_Ancestor): Fix inaccuracy in description. |
| * sem_ch12.adb (Check_Actual_Type): Do not switch the view of the |
| type if it has a private ancestor. |
| |
| 2023-06-20 Daniel King <dmking@adacore.com> |
| |
| * libgnat/i-cheri.ads: Add CHERI intrinsics and helper functions. |
| * libgnat/i-cheri.adb: Likewise |
| |
| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Convert_View): Remove Ind parameter and adjust. |
| * sem_ch12.adb (Check_Generic_Actuals): Check the type of both in |
| and in out actual objects, as well as the type of formal parameters |
| of actual subprograms. Extend the condition under which the views |
| are swapped to nested generic constructs. |
| (Save_References_In_Identifier): Call Set_Global_Type on a global |
| identifier rewritten as an explicit dereference, either directly |
| or after having first been rewritten as a function call. |
| (Save_References_In_Operator): Set N2 unconditionally and reuse it. |
| * sem_ch3.adb (Build_Derived_Record_Type): Add missing comment. |
| * sem_res.adb (Resolve_Implicit_Dereference): Remove special bypass |
| for private views in instances. |
| |
| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Convert_To_Assignments): Tweak comment. |
| (Expand_Array_Aggregate): Do not delay the expansion if the parent |
| node is a container aggregate. |
| |
| 2023-06-20 Ghjuvan Lacambre <lacambre@adacore.com> |
| |
| * errout.adb (Output_Messages): Fix loop termination condition. |
| |
| 2023-06-20 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * doc/gnat_ugn/building_executable_programs_with_gnat.rst (Compiler |
| Switches): Document -gnateH. |
| * opt.ads (Reverse_Bit_Order_Threshold): New variable. |
| * sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Use its value |
| if it is nonnegative instead of System_Max_Integer_Size. |
| * switch-c.adb (Scan_Front_End_Switches): Deal with -gnateH. |
| * usage.adb (Usage): Print -gnateH. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-06-20 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/s-aridou.adb (Scaled_Divide): Add assertions. |
| * libgnat/s-valuti.adb: Add Loop_Variant. |
| * libgnat/s-valuti.ads: Add Exceptional_Cases on No_Return |
| procedure. |
| |
| 2023-06-20 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch3.adb (Build_Derived_Record_Type): Use full view as |
| Parent_Base if needed. |
| |
| 2023-06-20 Ghjuvan Lacambre <lacambre@adacore.com> |
| |
| * lib-load.adb (Load_Unit): Pass Error_Node to calls to Error_Msg. |
| |
| 2023-06-20 Claire Dross <dross@adacore.com> |
| |
| * libgnat/a-strfix.ads: Replace Might_Not_Return annotations by |
| Exceptional_Cases and Always_Terminates aspects. |
| * libgnat/a-tideio.ads: Idem. |
| * libgnat/a-tienio.ads: Idem. |
| * libgnat/a-tifiio.ads: Idem. |
| * libgnat/a-tiflio.ads: Idem. |
| * libgnat/a-tiinio.ads: Idem. |
| * libgnat/a-timoio.ads: Idem. |
| * libgnat/a-textio.ads: Idem. Also mark functions Name, Col, Line, |
| and Page as out of SPARK as they might raise Layout_Error. |
| * libgnarl/a-reatim.ads: Replace Always_Return annotations by |
| Always_Terminates aspects. |
| * libgnat/a-chahan.ads: Idem. |
| * libgnat/a-nbnbig.ads: Idem. |
| * libgnat/a-nbnbin.ads: Idem. |
| * libgnat/a-nbnbre.ads: Idem. |
| * libgnat/a-ngelfu.ads: Idem. |
| * libgnat/a-nlelfu.ads: Idem. |
| * libgnat/a-nllefu.ads: Idem. |
| * libgnat/a-nselfu.ads: Idem. |
| * libgnat/a-nuelfu.ads: Idem. |
| * libgnat/a-strbou.ads: Idem. |
| * libgnat/a-strmap.ads: Idem. |
| * libgnat/a-strsea.ads: Idem. |
| * libgnat/a-strsup.ads: Idem. |
| * libgnat/a-strunb.ads: Idem. |
| * libgnat/a-strunb__shared.ads: Idem. |
| * libgnat/g-souinf.ads: Idem. |
| * libgnat/i-c.ads: Idem. |
| * libgnat/interfac.ads: Idem. |
| * libgnat/interfac__2020.ads: Idem. |
| * libgnat/s-aridou.adb: Idem. |
| * libgnat/s-arit32.adb: Idem. |
| * libgnat/s-atacco.ads: Idem. |
| * libgnat/s-spcuop.ads: Idem. |
| * libgnat/s-stoele.ads: Idem. |
| * libgnat/s-vaispe.ads: Idem. |
| * libgnat/s-vauspe.ads: Idem. |
| * libgnat/i-cstrin.ads: Add a precondition instead of a |
| Might_Not_Return annotation. |
| |
| 2023-06-20 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch4.adb |
| (Try_Selected_Component_In_Instance): New subprogram; factorizes |
| existing code. |
| (Find_Component_In_Instance) Moved inside the new subprogram. |
| (Analyze_Selected_Component): Invoke the new subprogram before |
| trying the Object.Operation notation. |
| |
| 2023-06-20 Ronan Desplanques <desplanques@adacore.com> |
| |
| * libgnat/a-calfor.adb (Time_Of): Fix handling of special case. |
| |
| 2023-06-15 Marek Polacek <polacek@redhat.com> |
| |
| * gcc-interface/Make-lang.in (ALL_ADAFLAGS): Remove NO_PIE_CFLAGS. Add |
| PICFLAG. Use PICFLAG when building ada/b_gnat1.o and ada/b_gnatb.o. |
| * gcc-interface/Makefile.in: Use pic/libiberty.a if PICFLAG is set. |
| Remove NO_PIE_FLAG. |
| |
| 2023-06-15 Marc Poulhiès <poulhies@adacore.com> |
| |
| * vxworks7-cert-rtp-base-link.spec: Removed. |
| * vxworks7-cert-rtp-base-link__ppc64.spec: Removed. |
| * vxworks7-cert-rtp-base-link__x86.spec: Removed. |
| * vxworks7-cert-rtp-base-link__x86_64.spec: Removed. |
| * vxworks7-cert-rtp-link.spec: Removed. |
| * vxworks7-cert-rtp-link__ppcXX.spec: Removed. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/utils2.cc (build_binary_op) <MODIFY_EXPR>: Do not |
| remove a VIEW_CONVERT_EXPR on the LHS if it is also on the RHS. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Restrict |
| the special handling of temporaries created for return values and |
| subject to a renaming to the top level. |
| |
| 2023-06-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * doc/gnat_ugn/about_this_guide.rst: Fix typo. Uniformize punctuation. |
| * doc/gnat_ugn/the_gnat_compilation_model.rst: Uniformize punctuation. |
| Fix capitalization. Fix indentation of code block. Fix RST formatting |
| syntax errors. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-06-15 Yannick Moy <moy@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute): Reject case of Loop_Entry |
| inside the prefix of Loop_Entry, as per SPARK RM 5.5.3.1(4,8). |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Make_Allocator_For_Return): Rewrite the logic that |
| determines the type used for the allocation and add assertions. |
| * exp_util.adb (Has_Tag_Of_Type): Also return true for extension |
| aggregates. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sinfo.ads (Iterator_Filter): Document field. |
| * sem_ch5.adb (Analyze_Iterator_Specification): Move comment around. |
| (Analyze_Loop_Parameter_Specification): Only preanalyze the iterator |
| filter, if any. |
| * exp_ch5.adb (Expand_N_Loop_Statement): Analyze the new list built |
| when an iterator filter is present. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Find_Hook_Context): Revert latest change. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Make_Allocator_For_Return): Deal again specifically |
| with an aggregate returned through an object of a class-wide type. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch5.adb (Expand_Iterator_Loop_Over_Container): Do not insert |
| an always empty list. Remove unused parameter Isc. |
| (Expand_Iterator_Loop): Adjust call to above procedure. |
| |
| 2023-06-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * targparm.adb: Allow pragma Style_Checks in some forms. |
| * targparm.ads: Document new pragma permission. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.ads (Within_Case_Or_If_Expression): Adjust description. |
| * exp_util.adb (Find_Hook_Context): Stop the search for the topmost |
| conditional expression, if within one, at contexts where temporaries |
| may be contained. |
| (Within_Case_Or_If_Expression): Return false upon first encoutering |
| contexts where temporaries may be contained. |
| |
| 2023-06-15 Johannes Kliemann <kliemann@adacore.com> |
| |
| * libgnarl/s-osinte__qnx.adb: Adjust priority conversion function. |
| * libgnat/system-qnx-arm.ads: Adjust priority range and default |
| priority. |
| |
| 2023-06-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * targparm.ads: Remove references to front-end-based exceptions. Fix |
| thinko. |
| |
| 2023-06-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * contracts.adb (Add_Contract_Item): Add pragma Always_Terminates to |
| package contract. |
| * sem_prag.adb (Analyze_Pragma): Accept pragma Always_Terminates on |
| packages and generic packages, but only when it has no arguments. |
| |
| 2023-06-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): Accept pragma Always_Terminates when |
| it applies to an entry. |
| |
| 2023-06-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): Reject pragma Always_Terminates when |
| it applies to a function or generic function. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Call): Adjust the test to detect the presence |
| of an incomplete view of a type on a function call. |
| |
| 2023-06-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * ttypes.ads: Remove reference to Ttypef in comment. Fix typo in |
| comment. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * get_targ.ads (Get_Max_Unaligned_Field): Delete. |
| * ada_get_targ.adb (Get_Max_Unaligned_Field): Likewise. |
| * get_targ.adb (Get_Max_Unaligned_Field): Likewise. |
| * set_targ.ads (Max_Unaligned_Field): Adjust comment. |
| * set_targ.adb: Set Max_Unaligned_Field to 1 during elaboration. |
| * ttypes.ads (Max_Unaligned_Field): Delete. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_type.adb (Disambiguate): Fix pasto in the implementation of |
| the RM 8.4(10) clause for operators. |
| |
| 2023-06-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * aspects.adb |
| (Base_Aspect): Fix layout. |
| * aspects.ads |
| (Aspect_Argument): Expression for Always_Terminates is optional. |
| * sem_prag.adb |
| (Analyze_Always_Terminates_In_Decl_Part): Only analyze expression when |
| pragma argument is present. |
| (Analyze_Pragma): Argument for Always_Terminates is optional; fix |
| whitespace for Async_Readers. |
| |
| 2023-06-15 Javier Miranda <miranda@adacore.com> |
| |
| * sem_util.adb |
| (Is_CPP_Constructor_Call): Add missing support for calls to |
| functions returning a private type. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.ads (Build_Transient_Object_Statements): Remove obsolete |
| references to array and record aggregates in documentation. |
| |
| 2023-06-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch13.adb (Analyze_Aspect_Specifications): Add missing items |
| in the list of aspects handled by means of Insert_Pragma. |
| <Aspect_Linker_Section>: Remove obsolete code. Do not delay the |
| processing of the aspect if the entity is already frozen. |
| |
| 2023-06-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_aggr.adb |
| (Resolve_Array_Aggregate): Simplify comment. |
| (Resolve_Iterated_Component_Association): Tune comment; change variable |
| to constant. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Iterated_Component_Association): Simply resolve |
| the expression. |
| |
| 2023-06-13 Bob Duff <duff@adacore.com> |
| |
| * exp_ch4.adb |
| (Expand_N_Quantified_Expression): Detect the secondary-stack |
| case, and find the innermost scope where we should mark/release, |
| and Set_Uses_Sec_Stack on that. Skip intermediate blocks and loops |
| that are part of expansion. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Is_Repeatedly_Evaluated): Recognize iterated component |
| association as repeatedly evaluated. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Is_Potentially_Unevaluated): Recognize iterated |
| component association as potentially unevaluated. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Call): Replace early call to |
| In_Quantified_Expression with a call to Is_Potentially_Unevaluated that |
| was only done when Full_Analysis is true. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * 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-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_elab.adb (Check_Overriding_Primitive): Prevent Corresponding_Body |
| to be called with entity of an abstract subprogram. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch12.adb (Save_References_In_Identifier): In the case where |
| the identifier has been turned into a function call by analysis, |
| call Set_Global_Type on the entity if it is global. |
| |
| 2023-06-13 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Iterated_Component_Association): Call |
| Preanalyze_And_Resolve instead of Resolve_Aggr_Expr except for |
| aggregate. |
| Co-authored-by: Ed Schonberg <schonberg@adacore.com> |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * contracts.adb (Contract_Error): New exception. |
| (Add_Contract_Item): Raise Contract_Error instead of Program_Error. |
| (Add_Generic_Contract_Pragma): Deal with Contract_Error. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_attr.adb (Eval_Attribute): Add more exceptions to the early |
| return for a prefix which is a nonfrozen generic actual type. |
| * sem_ch12.adb (Copy_Generic_Node): Also check private views in the |
| case of an entity name or operator analyzed as a function call. |
| (Set_Global_Type): Make it a child of Save_Global_References. |
| (Save_References_In_Operator): In the case where the operator has |
| been turned into a function call, call Set_Global_Type on the entity |
| if it is global. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * contracts.adb (Analyze_Entry_Or_Subprogram_Body_Contract): For a |
| subprogram body that has no contracts and does not come from source, |
| make sure that contracts on its corresponding spec are analyzed, if |
| any, before expanding them. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gen_il-fields.ads (Opt_Field_Enum): Add No_Finalize_Actions and |
| remove No_Side_Effect_Removal. |
| * gen_il-gen-gen_nodes.adb (N_Function_Call): Remove semantic flag |
| No_Side_Effect_Removal |
| (N_Assignment_Statement): Add semantic flag No_Finalize_Actions. |
| * sinfo.ads (No_Ctrl_Actions): Adjust comment. |
| (No_Finalize_Actions): New flag on assignment statements. |
| (No_Side_Effect_Removal): Delete. |
| * exp_aggr.adb (Build_Record_Aggr_Code): Remove obsolete comment and |
| Ancestor_Is_Expression variable. In the case of an extension, do |
| not generate a call to Adjust manually, call Set_No_Finalize_Actions |
| instead. Do not set the tags, replace call to Make_Unsuppress_Block |
| by Make_Suppress_Block and remove useless assertions. |
| In the general case, call Initialize_Component. |
| (Initialize_Controlled_Component): Delete. |
| (Initialize_Simple_Component): Delete. |
| (Initialize_Component): Do the low-level processing, but do not |
| generate a call to Adjust manually, call Set_No_Finalize_Actions. |
| (Process_Transient_Component): Delete. |
| (Process_Transient_Component_Completion): Likewise. |
| * exp_ch5.adb (Expand_Assign_Array): Deal with No_Finalize_Actions. |
| (Expand_Assign_Array_Loop): Likewise. |
| (Expand_N_Assignment_Statement): Likewise. |
| (Make_Tag_Ctrl_Assignment): Likewise. |
| * exp_util.adb (Remove_Side_Effects): Do not test the |
| No_Side_Effect_Removal flag. |
| * sem_prag.adb (Process_Suppress_Unsuppress): Give the warning in |
| SPARK mode only for pragma Suppress. |
| * tbuild.ads (Make_Suppress_Block): New declaration. |
| (Make_Unsuppress_Block): Adjust comment. |
| * tbuild.adb (Make_Suppress_Block): New procedure. |
| (Make_Unsuppress_Block): Unsuppress instead of suppressing. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Assignment): Turn Rhs into a constant and |
| remove calls to the following subprograms. |
| (Transform_BIP_Assignment): Delete. |
| (Should_Transform_BIP_Assignment): Likewise. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.ads (Is_Inherited_Operation_For_Type): Remove spec. |
| * sem_util.adb (Is_Inherited_Operation_For_Type): Remove body. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Build_Record_Aggr_Code): Add new variable Ancestor_Q |
| to store the result of Unqualify on Ancestor. Remove the dead call |
| to Generate_Finalization_Actions in the case of another aggregate as |
| ancestor part. Remove the redundant setting of Assignment_OK. Use |
| Init_Typ in lieu of Etype (Ancestor) more consistently. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Build_Record_Aggr_Code): In the case of an extension |
| aggregate of a limited type whose ancestor part is an aggregate, do |
| not skip the final code assigning the tag of the extension. |
| |
| 2023-06-13 Yannick Moy <moy@adacore.com> |
| |
| * ghost.adb (Check_Ghost_Context): Allow absence of Ghost_Id |
| for attribute. Update error message to mention Ghost_Predicate. |
| (Is_Ghost_Attribute_Reference): New query. |
| * ghost.ads (Is_Ghost_Attribute_Reference): New query. |
| * sem_attr.adb (Resolve_Attribute): Check ghost context for ghost |
| attributes. |
| |
| 2023-06-13 Daniel King <dmking@adacore.com> |
| |
| * libgnat/s-stoele.ads: Add No_Elaboration_Code_All pragma. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.ads (Make_Tag_Assignment_From_Type): Declare. |
| * exp_util.adb (Make_Tag_Assignment_From_Type): New function. |
| * exp_aggr.adb (Build_Record_Aggr_Code): Call the above function. |
| (Initialize_Simple_Component): Likewise. |
| * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Likewise. |
| (Build_Record_Init_Proc.Build_Init_Procedure ): Likewise. |
| (Make_Tag_Assignment): Likewise. Rename local variable and call |
| Unqualify to go through qualified expressions. |
| * exp_ch4.adb (Expand_Allocator_Expression): Likewise. |
| |
| 2023-06-13 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-strsup.ads: Change predicate aspect. |
| * sem_ch13.adb (Add_Predicate): Fix for first predicate. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Initialize_Component): Perform immediate expansion |
| of the initialization expression if it is a conditional expression |
| and the component type is controlled. |
| |
| 2023-06-13 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Initialize_Component): New procedure factored out |
| from the processing of array and record aggregates. |
| (Initialize_Controlled_Component): Likewise. |
| (Initialize_Simple_Component): Likewise. |
| (Build_Array_Aggr_Code.Gen_Assign): Remove In_Loop parameter. |
| Call Initialize_Component to initialize the component. |
| (Initialize_Array_Component): Delete. |
| (Initialize_Ctrl_Array_Component): Likewise. |
| (Build_Array_Aggr_Code): Adjust calls to Gen_Assign. |
| (Build_Record_Aggr_Code): Call Initialize_Simple_Component or |
| Initialize_Component to initialize the component. |
| (Initialize_Ctrl_Record_Component): Delete. |
| (Initialize_Record_Component): Likewise. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch11.adb (Expand_N_Raise_Statement): Expansion of raise statements |
| never happens in GNATprove mode. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch11.adb (Find_Local_Handler): Replace guard against other |
| constructs appearing in the list of exception handlers with iteration |
| using First_Non_Pragma/Next_Non_Pragma. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch11.ads (Find_Local_Handler): Fix typo in comment. |
| * exp_ch11.adb (Find_Local_Handler): Remove redundant check for the |
| Exception_Handler list being present; use membership test to eliminate |
| local object LCN; fold nested IF statements. Remove useless ELSIF |
| condition. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Check_Function_Writable_Actuals): Tune style; use |
| subtype name to detect membership test nodes. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_disp.adb (Make_Disp_Asynchronous_Select_Spec): Use a single call |
| to New_List. |
| |
| 2023-06-13 Yannick Moy <moy@adacore.com> |
| |
| * doc/gnat_rm/implementation_defined_aspects.rst: Document new |
| aspect. |
| * doc/gnat_rm/implementation_defined_pragmas.rst: Whitespace. |
| * aspects.adb (Init_Canonical_Aspect): Set it to Predicate. |
| * aspects.ads: Set global constants for new aspect. |
| * einfo.ads: Describe new flag related to new aspect. |
| * exp_ch6.adb (Can_Fold_Predicate_Call): Do not fold new aspect. |
| * exp_util.adb (Make_Predicate_Check): Add comment. |
| * gen_il-fields.ads: Add new flag. |
| * gen_il-gen-gen_entities.adb: Add new flag. |
| * ghost.adb (Is_OK_Ghost_Context): Ghost predicate is an OK |
| ghost context. |
| (Mark_Ghost_Pragma): Add overloading with ghost mode parameter. |
| * ghost.ads (Mark_Ghost_Pragma): Add overloading with ghpst mode |
| parameter. |
| (Name_To_Ghost_Mode): Make function public. |
| * sem_aggr.adb: Issue error for violation of valid use. |
| * sem_case.adb: Issue error for violation of valid use. |
| * sem_ch13.adb: Adapt for new aspect. |
| * sem_ch3.adb (Analyze_Full_Type_Declaration): Remove dead code |
| which was trying to propagate Has_Predicates flag in the wrong |
| direction (from derived to parent type). |
| (Analyze_Number_Declaration): Issue error for violation of valid |
| use. |
| (Build_Derived_Type): Cleanup inheritance of predicate flags from |
| parent to derived type. |
| (Build_Predicate_Function): Only add a predicate check when it |
| is not ignored as Ghost code. |
| * sem_ch4.adb (Analyze_Membership_Op): Issue an error for use of |
| a subtype with a ghost predicate as name in a membership test. |
| * sem_ch5.adb (Check_Predicate_Use): Issue error for violation of |
| valid use. |
| * sem_eval.adb: Adapt code for Dynamic_Predicate to account for |
| Ghost_Predicate too. |
| * sem_prag.adb (Analyze_Pragma): Make pragma ghost or not. |
| * sem_util.adb (Bad_Predicated_Subtype_Use): Adapt to new aspect. |
| (Inherit_Predicate_Flags): Add inheritance of flag. Add parameter |
| to apply to derived types. |
| * sem_util.ads (Inherit_Predicate_Flags): Change signature. |
| * snames.ads-tmpl: Add new aspect name. |
| * gnat_rm.texi: Regenerate. |
| |
| 2023-06-13 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch3.adb (Make_Controlling_Function_Wrappers): Remove early |
| decoration. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (get_storage_model_access): Also strip any |
| type conversion in the node when unwinding the components. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (node_is_component): Remove parentheses. |
| (node_is_type_conversion): New predicate. |
| (get_atomic_access): Use it. |
| (get_storage_model_access): Likewise and look into the parent to |
| find a component if it returns true. |
| (present_in_lhs_or_actual_p): Likewise. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (Attribute_to_gnu) <Attr_Size>: Check that |
| the storage model has Copy_From before instantiating loads for it. |
| <Attr_Length>: Likewise. |
| <Attr_Bit_Position>: Likewise. |
| (gnat_to_gnu) <N_Indexed_Component>: Likewise. |
| <N_Slice>: Likewise. |
| |
| 2023-05-30 Marc Poulhiès <poulhies@adacore.com> |
| |
| * gcc-interface/trans.cc (Attribute_to_gnu): Also strip conversion |
| in case of DECL. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use a |
| local variable for the GNAT index type. |
| <E_Array_Subtype>: Likewise. Call Is_Null_Range on the bounds and |
| force the zero on TYPE_SIZE and TYPE_SIZE_UNIT if it returns true. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (gnat_to_gnu) <N_Op_Mod>: Test the |
| precision of the operation rather than that of the result type. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Replace |
| integer_zero_node with null_pointer_node for pointer types. |
| * gcc-interface/trans.cc (gnat_gimplify_expr) <NULL_EXPR>: Likewise. |
| * gcc-interface/utils.cc (maybe_pad_type): Do not attempt to make a |
| packable type from a fat pointer type. |
| * gcc-interface/utils2.cc (build_atomic_load): Use a local variable. |
| (build_atomic_store): Likewise. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/misc.cc (internal_error_function): Be prepared for |
| an input_location set to UNKNOWN_LOCATION. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (Attribute_to_gnu) <Attr_Size>: Tweak. |
| (gnat_to_gnu) <N_Assignment_Statement>: Declare a local variable. |
| For a target with a storage model, use the Actual_Designated_Subtype |
| to compute the size if it is present. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (Call_to_gnu): Remove code implementing the |
| by-copy semantics for actuals with nonnative storage models. |
| (gnat_to_gnu) <N_Assignment_Statement>: Remove code instantiating a |
| temporary for assignments between nonnative storage models. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/decl.cc (range_cannot_be_superflat): Return true |
| immediately if Cannot_Be_Superflat is set. |
| * gcc-interface/misc.cc (gnat_post_options): Do not override the |
| -Wstringop-overflow setting. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/Make-lang.in (ADA_CFLAGS): Move up. |
| (ALL_ADAFLAGS): Add $(NO_PIE_CFLAGS). |
| (ada/mdll.o): Remove. |
| (ada/mdll-fil.o): Likewise. |
| (ada/mdll-utl.o): Likewise. |
| |
| 2023-05-30 Marc Poulhiès <poulhies@adacore.com> |
| |
| * gcc-interface/trans.cc (get_storage_model_access): Don't require |
| storage model access for dereference used as lvalue or renamings. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Build_Array_Aggr_Code): Move the declaration of Typ |
| to the beginning. |
| (Initialize_Array_Component): Test the unqualified version of the |
| expression for the nested array case. |
| (Initialize_Ctrl_Array_Component): Do not duplicate the expression |
| here. Do the pattern matching of the unqualified version of it. |
| (Gen_Assign): Call Unqualify to compute Expr_Q and use Expr_Q in |
| subsequent pattern matching. |
| (Initialize_Ctrl_Record_Component): Do the pattern matching of the |
| unqualified version of the aggregate. |
| (Build_Record_Aggr_Code): Call Unqualify. |
| (Convert_Aggr_In_Assignment): Likewise. |
| (Convert_Aggr_In_Object_Decl): Likewise. |
| (Component_OK_For_Backend): Likewise. |
| (Is_Delayed_Aggregate): Likewise. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Build_Array_Aggr_Code.Get_Assoc_Expr): Duplicate the |
| expression here instead of... |
| (Build_Array_Aggr_Code): ...here. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * freeze.adb (Check_Large_Modular_Array): Fix head comment, use |
| Standard_Long_Long_Integer_Size directly and generate a reference |
| just before the raise statement if the Etype of the object is an |
| itype declared in an open scope. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Find_Enclosing_Transient_Scope): Return the index in |
| the scope table instead of the scope's entity. |
| (Establish_Transient_Scope): If an enclosing scope already exists, |
| do not set the Uses_Sec_Stack flag on it if the node to be wrapped |
| is a return statement which requires secondary stack management. |
| |
| 2023-05-30 Joel Brobecker <brobecker@adacore.com> |
| |
| * Makefile.rtl: Use libgnat/s-tsmona__linux.adb on |
| aarch64-linux. Link libgnat with -ldl, as the use of |
| s-tsmona__linux.adb requires it. |
| |
| 2023-05-30 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch3.adb |
| (Build_Access_Subprogram_Wrapper_Body): Build wrapper body if requested |
| by routine that builds wrapper spec. |
| * sem_ch3.adb |
| (Analyze_Full_Type_Declaration): Only build wrapper when expander is |
| active. |
| (Build_Access_Subprogram_Wrapper): |
| Remove special-case for GNATprove. |
| |
| 2023-05-30 Ronan Desplanques <desplanques@adacore.com> |
| |
| * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Fix minor issues. |
| * doc/gnat_ugn/the_gnat_compilation_model.rst: Fix minor issues. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-30 Johannes Kliemann <kliemann@adacore.com> |
| |
| * libgnat/s-parame.adb: Check that Default_Stack_Size >= |
| Minimum_Stack_size. |
| * libgnat/s-parame__rtems.adb: Ditto. |
| * libgnat/s-parame__vxworks.adb: Check that Default_Stack_Size >= |
| Minimum_Stack_size and use the proper Minimum_Stack_Size if |
| Stack_Check_Limits is enabled. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Resolve_Call): Restrict previous change to calls that |
| return on the same stack as the enclosing function. Tidy up. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/a-cidlli.adb (Put_Image): Simplify. |
| * libgnat/a-coinve.adb (Put_Image): Likewise. |
| |
| 2023-05-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Build_DIC_Procedure_Body.Add_Own_DIC): When inside |
| a generic unit, preanalyze the expression directly. |
| (Build_Invariant_Procedure_Body.Add_Own_Invariants): Likewise. |
| |
| 2023-05-30 Cedric Landet <landet@adacore.com> |
| |
| * init.c: Replace FIXME by ??? |
| |
| 2023-05-29 Cedric Landet <landet@adacore.com> |
| |
| * s-oscons-tmplt.c: move the definition of sigset out of the |
| HAVE_SOCKETS bloc. |
| |
| 2023-05-29 Cedric Landet <landet@adacore.com> |
| |
| * Makefile.rtl: Move g-spogwa$(objext) from GNATRTL_NONTASKING_OBJS |
| to GNATRTL_SOCKETS_OBJS |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * freeze.adb (Wrap_Imported_Subprogram): Use Copy_Subprogram_Spec in |
| both cases to copy the spec of the subprogram. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Establish_Transient_Scope.Find_Transient_Context): |
| Bail out for a simple return statement only if the transient scope |
| and the function both require secondary stack management, or else |
| if the function is a thunk. |
| * sem_res.adb (Resolve_Call): Do not create a transient scope when |
| the call is the expression of a simple return statement. |
| |
| 2023-05-29 Patrick Bernardi <bernardi@adacore.com> |
| |
| * libgnat/a-excach.adb (Call_Chain): Replace |
| Code_Address_For_AAA/ZZZ functions with AAA/ZZZ'Code_Address. |
| * libgnat/a-except.adb (Code_Address_For_AAA/ZZZ): Delete. |
| (AAA/ZZZ): New null procedures. |
| * libgnat/g-debpoo.adb |
| (Code_Address_For_Allocate_End): Delete. |
| (Code_Address_For_Deallocate_End): Delete. |
| (Code_Address_For_Dereference_End): Delete. |
| (Allocate): Remove label and use Code_Address attribute to |
| determine subprogram addresses. |
| (Dellocate): Likewise. |
| (Dereference): Likewise. |
| (Allocate_End): Convert to null procedure. |
| (Dellocate_End): Likewise. |
| (Dereference_End): Likewise. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Expand_Simple_Function_Return): Call Insert_Actions |
| consistently when rewriting the expression. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Is_Finalizable_Transient.Is_Indexed_Container): |
| New predicate to detect a temporary created to hold the result of |
| a constant indexing on a container. |
| (Is_Finalizable_Transient.Is_Iterated_Container): Adjust a couple |
| of obsolete comments. |
| (Is_Finalizable_Transient): Return False if Is_Indexed_Container |
| returns True on the object. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Has_Applicable_User_Defined_Literal): Make it clear |
| that the predicate also checks the node itself. |
| (Try_User_Defined_Literal): Move current implementation to... |
| Deal only with literals, named numbers and conditional expressions |
| whose dependent expressions are literals or named numbers. |
| (Try_User_Defined_Literal_For_Operator): ...this. Remove multiple |
| return False statements and put a single one at the end. |
| (Resolve): Call Try_User_Defined_Literal instead of directly |
| Has_Applicable_User_Defined_Literal for all nodes. Call |
| Try_User_Defined_Literal_For_Operator for operator nodes. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Invoked_With_Different_Arguments): Use Get_Called_Entity, |
| which properly deals with calls via an access-to-subprogram; fix |
| inconsistent use of a Call object declared in enclosing subprogram. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * contracts.adb |
| (Add_Pre_Post_Condition): Attach pre/post aspects to E_Subprogram_Type |
| entity. |
| (Analyze_Entry_Or_Subprogram_Contract): Adapt to use full type |
| declaration for a contract attached to E_Subprogram_Type entity. |
| * sem_prag.adb |
| (Analyze_Pre_Post_Condition): Add pre/post aspects to the designed type. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Check_Function_Writable_Actuals): Remove guard against |
| a membership test with no alternatives; simplify with a membership test. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * doc/gnat_ugn/gnat_and_program_execution.rst |
| (Some Useful Memory Pools): Remove extra whitespace from examples. |
| * sem_aggr.adb (Make_String_Into_Aggregate): Remove extra whitespace. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_aggr.adb (Convert_Aggr_In_Allocator): Replace Get_TSS_Name |
| with a high-level Is_TSS. |
| * sem_ch6.adb (Check_Conformance): Replace DECLARE block and |
| nested IF with a call to Get_TSS_Name and a membership test. |
| (Has_Reliable_Extra_Formals): Refactor repeated calls to |
| Get_TSS_Name. |
| * sem_disp.adb (Check_Dispatching_Operation): Replace repeated |
| calls to Get_TSS_Name with a membership test. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch5.adb (Expand_N_Case_Statement): Do not remove the statement |
| if it is the node to be wrapped by a transient scope. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_prag.adb (Process_Compile_Time_Warning_Or_Error): Do not defer |
| anything to the back-end when the main unit is generic. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Try_User_Defined_Literal): Restrict previous change |
| to non-leaf nodes. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Try_User_Defined_Literal): For arithmetic operators, |
| also accept operands whose type is covered by the resolution type. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Initialize_Array_Component): Fix condition detecting |
| the nested case that requires an adjustment. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_In): Deal specifically with a null operand. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Expand_Simple_Function_Return): Deal with a rewriting |
| of the simple return during the adjustment of its expression. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Case_Expression): Distribute simple return |
| statements enclosing the conditional expression into the dependent |
| expressions in almost all cases. |
| (Expand_N_If_Expression): Likewise. |
| (Process_Transient_In_Expression): Adjust to the above distribution. |
| * exp_ch6.adb (Expand_Ctrl_Function_Call): Deal with calls in the |
| dependent expressions of a conditional expression. |
| * sem_ch6.adb (Analyze_Function_Return): Deal with the rewriting of |
| a simple return statement during the resolution of its expression. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Refine rules for Exceptional_Cases. |
| |
| 2023-05-29 Marc Poulhiès <poulhies@adacore.com> |
| |
| * exp_aggr.adb (Convert_To_Assignments): Do not mark node for |
| delayed expansion if parent type has the Aggregate aspect. |
| * sem_util.adb (Is_Container_Aggregate): Move... |
| * sem_util.ads (Is_Container_Aggregate): ... here and make it |
| public. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Relax rules for Exceptional_Cases. |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch4.ads (Unresolved_Operator): New procedure. |
| * sem_ch4.adb (Has_Possible_Literal_Aspects): Rename into... |
| (Has_Possible_User_Defined_Literal): ...this. Tidy up. |
| (Operator_Check): Accept again unresolved operators if they have a |
| possible user-defined literal as operand. Factor out the handling |
| of the general error message into... |
| (Unresolved_Operator): ...this new procedure. |
| * sem_res.adb (Resolve): Be prepared for unresolved operators on |
| entry in Ada 2022 or later. If they are still unresolved on exit, |
| call Unresolved_Operator to give the error message. |
| (Try_User_Defined_Literal): Tidy up. |
| |
| 2023-05-29 Steve Baird <baird@adacore.com> |
| |
| * exp_ch3.adb |
| (Expand_N_Object_Declaration.Default_Initialize_Object): Add test for |
| specified Default_Component_Value aspect when deciding whether |
| either Initialize_Scalars or Normalize_Scalars impacts default |
| initialization of an array object. |
| |
| 2023-05-29 Javier Miranda <miranda@adacore.com> |
| |
| * sem_aggr.adb |
| (Resolve_Record_Aggregate): For aggregates of derived tagged |
| record types with discriminants, when collecting components |
| from ancestors, pass to subprogram Gather_Components the |
| parent type. Required to report errors on wrong aggregate |
| components. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Check_Result_And_Post_State): Replace low-level |
| navigation with a high-level Unique_Entity. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Check_Result_And_Post_State): Properly handle entry |
| bodies. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * contracts.adb (Fix_Parent): Fir part both for lists and nodes. |
| |
| 2023-05-29 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_ch7.adb: Refine handling of inlining for CCG |
| |
| 2023-05-29 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch12.adb (Copy_Generic_Node): Test the original node kind |
| for the sake of consistency. For identifiers and other entity |
| names and operators, accept an expanded name as associated node. |
| Replace "or" with "or else" in condtion and fix its formatting. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Check_Result_And_Post_State): Tune message. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * contracts.adb (Remove_Formals): Remove. |
| (Preanalyze_Condition): Replace Pop_Scope with End_Scope. |
| * sem_ch13.adb (Build_Discrete_Static_Predicate): Replace |
| Pop_Scope with End_Scope; enclose Install_Formals within |
| Push_Scope/End_Scope. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pre_Post_Condition): Tune error message. |
| |
| 2023-05-29 Javier Miranda <miranda@adacore.com> |
| |
| * scans.ads (Inside_Interpolated_String_Expression): New variable. |
| * par-ch2.adb (P_Interpolated_String_Literal): Set/clear new |
| variable when parsing interpolated string expressions. |
| * scng.adb (Set_String): Skip processing operator symbols when we |
| arescanning an interpolated string literal. |
| |
| 2023-05-29 Johannes Kliemann <kliemann@adacore.com> |
| |
| * Makefile.rtl (QNX): Use s-parame__qnx.adb for s-parame.adb. |
| * libgnat/s-parame__qnx.adb: Add QNX specific version of |
| System.Parameters. |
| |
| 2023-05-29 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-ngelfu.ads: Restore SPARK_Mode from context. |
| |
| 2023-05-29 Marc Poulhiès <poulhies@adacore.com> |
| |
| * contracts.adb (Restore_Original_Selected_Component): Adjust assertion. |
| |
| 2023-05-29 Piotr Trojanek <trojanek@adacore.com> |
| |
| * contracts.adb |
| (Add_Pre_Post_Condition): Adapt to handle pre/post of an |
| access-to-subprogram type. |
| (Analyze_Type_Contract): Analyze pre/post of an |
| access-to-subprogram. |
| * contracts.ads |
| (Analyze_Type_Contract): Adapt comment. |
| * sem_ch3.adb |
| (Build_Access_Subprogram_Wrapper): Copy pre/post aspects to |
| wrapper spec and keep it on the type. |
| * sem_prag.adb |
| (Analyze_Pre_Post_Condition): Expect pre/post aspects on |
| access-to-subprogram and complain if they appear without -gnat2022 |
| switch. |
| (Analyze_Pre_Post_Condition_In_Decl_Part): Adapt to handle |
| pre/post on an access-to-subprogram type entity. |
| * sem_attr.adb (Analyze_Attribute_Old_Result): Likewise. |
| (Result): Likewise. |
| |
| 2023-05-26 Bob Duff <duff@adacore.com> |
| |
| * sem_ch3.adb |
| (Build_Derived_Record_Type): Temporarily set the state of the |
| Derived_Type to "self-hidden" while processing constraints |
| and discriminants of a record extension. |
| |
| 2023-05-26 Bob Duff <duff@adacore.com> |
| |
| * einfo.ads: Add comma. |
| * contracts.adb: Fix typos. |
| * exp_attr.adb: Likewise. |
| * exp_ch5.adb: Likewise. |
| * exp_ch6.adb: Likewise. |
| * lib-xref.adb: Likewise. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * debug.adb (d.N): Document new usage. |
| * exp_ch4.adb (Expand_N_Type_Conversion): Copy the Float_Truncate |
| flag when rewriting a floating-point to fixed-point conversion as |
| a floating-point to integer conversion. |
| * exp_fixd.adb: Add with and use clauses for Debug. |
| (Expand_Convert_Fixed_To_Fixed): Generate a truncation in all cases |
| except if the result is explicitly rounded. |
| (Expand_Convert_Integer_To_Fixed): Likewise. |
| (Expand_Convert_Float_To_Fixed): Generate a truncation for all kind |
| of fixed-point types, except if the result is explicitly rounded, or |
| -gnatd.N is specified and the type is an ordinary fixed-point type. |
| * sinfo.ads (Float_Truncate): Document usage for floating-point to |
| fixed-point conversions. |
| |
| 2023-05-26 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch4.adb |
| (Expand_N_Allocator): If an allocator with constraints is called |
| in the return statement of a function returning a general access |
| type, then propagate to the itype the master of the general |
| access type (since it is the master associated with the |
| returned object). |
| |
| 2023-05-26 Yannick Moy <moy@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Record_Aggregate): Add dummy initialization and |
| assertion that clarifies when we reassigned to a useful value. |
| |
| 2023-05-26 Yannick Moy <moy@adacore.com> |
| |
| * doc/gnat_rm/gnat_language_extensions.rst: Be more explicit on |
| pattern matching limitation. |
| * gnat_rm.texi: Regenerate. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-26 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-calend.ads: Mark with SPARK_Mode=>Off the functions which may |
| raise Time_Error. |
| * libgnat/a-ngelfu.ads: Mark with SPARK_Mode=>Off the functions which may |
| lead to an overflow (which is not the case of Tan with one parameter for |
| example, or Arctanh or Arcoth, despite their mathematical range covering |
| the reals). |
| * libgnat/a-textio.ads: Remove Always_Return annotation from functions, as |
| this is now compulsory for functions to always return in SPARK. |
| * libgnat/i-cstrin.ads: Add Might_Not_Return annotation to Update procedure |
| which may not return. |
| |
| 2023-05-26 Bob Duff <duff@adacore.com> |
| |
| * exp_put_image.adb (Build_Image_Call): Treat 'Img the same as |
| 'Image. |
| * exp_imgv.adb (Expand_Image_Attribute): If Discard_Names, expand |
| to 'Image instead of 'Img. |
| * snames.ads-tmpl, par-ch4.adb, sem_attr.adb, sem_attr.ads: |
| Cleanups: Rename Attribute_Class_Array to be Attribute_Set. Remove |
| unnecessary qualifications. DRY: Don't repeat "True". |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Record_Possible_Body_Reference): Remove call to Present. |
| * sem_util.adb (Find_Untagged_Type_Of): Likewise. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Initialize_Array_Component): Remove obsolete code. |
| (Expand_Array_Aggregate): In the case where a temporary is created |
| and the parent is an assignment statement with No_Ctrl_Actions set, |
| set Is_Ignored_Transient on the temporary. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch12.adb (Instantiate_Package_Body): Set the ghost mode to |
| that of the instance only after loading the generic's parent. |
| (Instantiate_Subprogram_Body): Likewise. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch4.adb (Expand_Set_Membership): Simplify by using Evolve_Or_Else. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch4.adb (Is_OK_Object_Reference): Replace loop with a call to |
| Unqual_Conv; consequently, change object from variable to constant; |
| replace an IF statement with an AND THEN expression. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch9.adb |
| (Build_Entry_Count_Expression): Remove loop over component declaration; |
| consequently remove a parameter that is no longer used; adapt callers. |
| (Make_Task_Create_Call): Refine type of a local variable. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_cat.adb (Check_Non_Static_Default_Expr): Detect components inside |
| loop, not in the loop condition itself. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/a-cbdlli.ads (List): Move Nodes component to the end. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/a-crdlli.ads (List): Move Nodes component to the end. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_attr.adb (Is_Thin_Pointer_To_Unc_Array): New predicate. |
| (Resolve_Attribute): Apply the static matching legality rule to an |
| Unrestricted_Access attribute applied to an aliased prefix if the |
| type is a thin pointer. Call Is_Thin_Pointer_To_Unc_Array for the |
| aliasing legality rule as well. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Is_Null_Record_Definition): Use First_Non_Pragma and |
| Next_Non_Pragma to ignore pragmas within component list. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Get_Argument): Improve detection of generic units. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_ch4.adb (Check_Action_OK): Replace low-level test with a |
| high-level routine. |
| * sem_ch13.adb (Is_Predicate_Static): Likewise. |
| |
| 2023-05-26 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch9.adb |
| (Expand_N_Conditional_Entry_Call): Factorize code to avoid |
| duplicating subtrees; required to avoid problems when the copied |
| code has implicit labels. |
| * sem_util.ads (New_Copy_Separate_List): Removed. |
| (New_Copy_Separate_Tree): Removed. |
| * sem_util.adb (New_Copy_Separate_List): Removed. |
| (New_Copy_Separate_Tree): Removed. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_ch13.adb (Check_Component_List): Local variable Compl is now |
| a constant; a nested block is no longer needed. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_aggr.adb |
| (Resolve_Record_Aggregate): Remove useless assignment. |
| * sem_aux.adb |
| (Has_Variant_Part): Remove useless guard; this routine is only called |
| on type entities (and now will crash in other cases). |
| * sem_ch3.adb |
| (Create_Constrained_Components): Only assign Assoc_List when necessary; |
| tune whitespace. |
| (Is_Variant_Record): Refactor repeated calls to Parent. |
| * sem_util.adb |
| (Gather_Components): Assert that discriminant association has just one |
| choice in component_association; refactor repeated calls to Next. |
| * sem_util.ads |
| (Gather_Components): Tune whitespace in comment. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_ch3.adb (Check_CPP_Type_Has_No_Defaults): Iterate with |
| First_Non_Pragma and Next_Non_Pragma. |
| * exp_dist.adb (Append_Record_Traversal): Likewise. |
| |
| 2023-05-26 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch9.adb (Build_Class_Wide_Master): Remember internal blocks |
| that have a task master entity declaration. |
| (Build_Master_Entity): Code cleanup. |
| * sem_util.ads (Is_Internal_Block): New subprogram. |
| * sem_util.adb (Is_Internal_Block): New subprogram. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Gather_Components): Remove guard for empty list of |
| components. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * back_end.adb (Call_Back_End): Add gigi_standard_address to the |
| signature of the gigi procedure and alphabetize other parameters. |
| Pass Standard_Address as actual parameter for it. |
| * cstand.adb (Create_Standard): Do not set Is_Descendant_Of_Address |
| on Standard_Address. |
| * gcc-interface/gigi.h (gigi): Add a standard_address parameter and |
| alphabetize others. |
| * gcc-interface/trans.cc (gigi): Likewise. Record a builtin address |
| type and save it as the type for Standard.Address. |
| |
| 2023-05-26 Ghjuvan Lacambre <lacambre@adacore.com> |
| |
| * exp_disp.adb (Expand_Dispatching_Call): Handle new Controlling_Tag. |
| * sem_scil.adb (Check_SCIL_Node): Treat N_Object_Renaming_Declaration as |
| N_Object_Declaration. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_aggr.adb |
| (Build_Constrained_Type): Remove local constants that were shadowing |
| equivalent global constants; replace a wrapper that calls |
| Make_Integer_Literal with a numeric literal; remove explicit |
| Aliased_Present parameter which is equivalent to the default value. |
| (Check_Bounds): Remove unused initial value. |
| (Expand_Array_Aggregate): Use aggregate type from the context. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * 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-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_util.adb (Compile_Time_Constraint_Error): Test the Ekind. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_aggr.adb (Build_Constrained_Type): Use List_Length to count |
| expressions in consecutive subaggregates. |
| |
| 2023-05-26 Doug Rupp <rupp@adacore.com> |
| |
| * libgnarl/s-osinte__qnx.ads (sigset_t): Modify |
| declaration to use system.os_constants computed |
| value. Align it. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_sel.adb: Add clauses for Sem_Util, remove them for Opt, Sinfo |
| and Sinfo.Nodes. |
| (Build_K): Always use 'Tag of the object. |
| (Build_S_Assignment): Likewise. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * accessibility.adb |
| (Is_Formal_Of_Current_Function): This routine expects an entity |
| reference and not the entity itself, so its parameter is a Node_Id |
| and not an Entity_Id. |
| |
| 2023-05-26 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_aggr.adb |
| (Build_Array_Aggr_Code): Change variable to constant. |
| (Check_Same_Aggr_Bounds): Fix style; remove unused initial value. |
| |
| 2023-05-26 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Create extra formals |
| in more situations. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * checks.adb (Selected_Range_Checks): Add guards to protect calls |
| to Expr_Value on bounds. |
| |
| 2023-05-26 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_eval.ads (Is_Null_Range): Remove requirements of compile-time |
| known bounds and add WARNING line. |
| (Not_Null_Range): Remove requirements of compile-time known bounds. |
| * sem_eval.adb (Is_Null_Range): Fall back to Compile_Time_Compare. |
| (Not_Null_Range): Likewise. |
| * fe.h (Is_Null_Range): New predicate. |
| |
| 2023-05-25 Javier Miranda <miranda@adacore.com> |
| |
| * sem_aggr.adb |
| (Warn_On_Null_Component_Association): New subprogram. |
| (Empty_Range): Adding missing support for iterated component |
| association node. |
| (Resolve_Array_Aggregate): Report warning on iterated component |
| association that may initialize some component of an array of |
| null-excluding access type components with a null value. |
| * exp_ch4.adb |
| (Expand_N_Expression_With_Actions): Add missing type check since |
| the subtype of the EWA node and the subtype of the expression |
| may differ. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Determining_Expressions): Fix style; fix layout and |
| ordering of pragma names; expect pragma Exceptional_Cases. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * einfo-utils.adb (Write_Entity_Info): Use procedural Next_Index. |
| * sem_aggr.adb (Collect_Aggr_Bounds): Reuse local constant. |
| (Resolve_Null_Array_Aggregate): Use procedural Next_Index. |
| |
| 2023-05-25 Javier Miranda <miranda@adacore.com> |
| |
| * exp_aggr.adb (Build_Record_Aggr_Code): Protect access to |
| aggregate components when the aggregate is empty. |
| |
| 2023-05-25 Johannes Kliemann <kliemann@adacore.com> |
| |
| * libgnat/system-vxworks7-ppc-kernel.ads: Enable |
| Support_Atomic_Primitives. |
| * libgnat/system-vxworks7-ppc-rtp-smp.ads: Likewise. |
| |
| 2023-05-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch3.adb (Find_Type_Of_Object): Copy the object definition when |
| building the subtype declaration in the case of a spec expression. |
| |
| 2023-05-25 Tom Tromey <tromey@adacore.com> |
| |
| * Make-generated.in (ada/stamp-snames): Check result of |
| gnatmake. |
| |
| 2023-05-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * cstand.adb (Create_Standard): Set the Is_Descendant_Of_Address |
| flag on Standard_Address. |
| * freeze.adb (Freeze_Entity): Copy the modulus of System.Address |
| onto Standard_Address. |
| |
| 2023-05-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/system-aix.ads (Address): Likewise. |
| * libgnat/system-darwin-arm.ads (Address): Likewise. |
| * libgnat/system-darwin-ppc.ads (Address): Likewise. |
| * libgnat/system-darwin-x86.ads (Address): Likewise. |
| * libgnat/system-djgpp.ads (Address): Likewise. |
| * libgnat/system-dragonfly-x86_64.ads (Address): Likewise. |
| * libgnat/system-freebsd.ads (Address): Likewise. |
| * libgnat/system-hpux-ia64.ads (Address): Likewise. |
| * libgnat/system-hpux.ads (Address): Likewise. |
| * libgnat/system-linux-alpha.ads (Address): Likewise. |
| * libgnat/system-linux-arm.ads (Address): Likewise. |
| * libgnat/system-linux-hppa.ads (Address): Likewise. |
| * libgnat/system-linux-ia64.ads (Address): Likewise. |
| * libgnat/system-linux-m68k.ads (Address): Likewise. |
| * libgnat/system-linux-mips.ads (Address): Likewise. |
| * libgnat/system-linux-ppc.ads (Address): Likewise. |
| * libgnat/system-linux-riscv.ads (Address): Likewise. |
| * libgnat/system-linux-s390.ads (Address): Likewise. |
| * libgnat/system-linux-sh4.ads (Address): Likewise. |
| * libgnat/system-linux-sparc.ads (Address): Likewise. |
| * libgnat/system-linux-x86.ads (Address): Likewise. |
| * libgnat/system-lynxos178-ppc.ads (Address): Likewise. |
| * libgnat/system-lynxos178-x86.ads (Address): Likewise. |
| * libgnat/system-mingw.ads (Address): Likewise. |
| * libgnat/system-qnx-arm.ads (Address): Likewise. |
| * libgnat/system-rtems.ads (Address): Likewise. |
| * libgnat/system-solaris-sparc.ads (Address): Likewise. |
| * libgnat/system-solaris-x86.ads (Address): Likewise. |
| * libgnat/system-vxworks-ppc-kernel.ads (Address): Likewise. |
| * libgnat/system-vxworks-ppc-rtp-smp.ads (Address): Likewise. |
| * libgnat/system-vxworks-ppc-rtp.ads (Address): Likewise. |
| * libgnat/system-vxworks7-aarch64-rtp-smp.ads (Address): Likewise. |
| * libgnat/system-vxworks7-aarch64.ads (Address): Likewise. |
| * libgnat/system-vxworks7-arm-rtp-smp.ads (Address): Likewise. |
| * libgnat/system-vxworks7-arm.ads (Address): Likewise. |
| * libgnat/system-vxworks7-ppc-kernel.ads (Address): Likewise. |
| * libgnat/system-vxworks7-ppc-rtp-smp.ads (Address): Likewise. |
| * libgnat/system-vxworks7-ppc64-kernel.ads (Address): Likewise. |
| * libgnat/system-vxworks7-ppc64-rtp-smp.ads (Address): Likewise. |
| * libgnat/system-vxworks7-x86-kernel.ads (Address): Likewise. |
| * libgnat/system-vxworks7-x86-rtp-smp.ads (Address): Likewise. |
| * libgnat/system-vxworks7-x86_64-kernel.ads (Address): Likewise. |
| * libgnat/system-vxworks7-x86_64-rtp-smp.ads (Address): Likewise. |
| |
| 2023-05-25 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch13.adb (Check_Aspect_At_Freeze_Point): fix format string, |
| use existing local Ident. |
| |
| 2023-05-25 Bob Duff <duff@adacore.com> |
| |
| * atree.adb (Check_Vanishing_Fields): Fix bug in the "blah type |
| only" cases. Remove the special cases for E_Void. Misc cleanup. |
| (Mutate_Nkind): Disallow mutating to the same kind. |
| (Mutate_Ekind): Disallow mutating to E_Void. |
| (From E_Void is still OK -- entities start out as E_Void by |
| default.) Fix bug in statistics gathering -- was setting the wrong |
| count. Enable Check_Vanishing_Fields for entities. |
| * sem_ch8.adb (Is_Self_Hidden): New function. |
| (Find_Direct_Name): Call Is_Self_Hidden to use the new |
| Is_Not_Self_Hidden flag to determine whether a declaration is |
| hidden from all visibility by itself. This replaces the old method |
| of checking E_Void. |
| (Find_Expanded_Name): Likewise. |
| (Find_Selected_Component): Likewise. |
| * sem_util.adb (Enter_Name): Remove setting of Ekind to E_Void. |
| * sem_ch3.adb: Set the Is_Not_Self_Hidden flag in appropriate |
| places. Comment fixes. |
| (Inherit_Component): Remove setting of Ekind to E_Void. |
| * sem_ch9.adb |
| (Analyze_Protected_Type_Declaration): Update comment. Skip Itypes, |
| which should not be turned into components. |
| * atree.ads (Mutate_Nkind): Document error case. |
| (Mutate_Ekind): Remove comments apologizing for E_Void mutations. |
| Document error cases. |
| |
| 2023-05-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/a-ststio.adb (Set_Mode): Test System.Memory_Size. |
| * libgnat/g-debuti.ads (Address_64): Likewise. |
| * libgnat/i-c.ads: Add with clause for System. |
| (ptrdiff_t): Define based on the size of memory space. |
| (size_t): Likewise. |
| * libgnat/s-crtl.ads (size_t): Likewise. |
| (ssize_t): Likewise. |
| * libgnat/s-memory.ads (size_t): Likewise. |
| * libgnat/s-parame.ads (Size_Type): Likewise. |
| * libgnat/s-parame__hpux.ads (Size_Type): Likewise. |
| * libgnat/s-parame__posix2008.ads (Size_Type): Likewise. |
| * libgnat/s-parame__vxworks.ads (Size_Type): Likewise. |
| * libgnat/s-putima.adb (Signed_Address): Likewise. |
| (Unsigned_Address): Likewise. |
| * libgnat/s-stoele.ads (Storage_Offset): Likewise. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Visit_Node): Decrement EWA_Level with the same condition |
| as when it was incremented. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.ads (New_Copy_Tree): Remove Scopes_In_EWA_OK from spec; |
| adapt comment. |
| * sem_util.adb (New_Copy_Tree): Remove Scopes_In_EWA_OK from body; |
| adapt code. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Update_New_Entities): Remove redundant check for entity |
| map being present. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * atree.adb (Copy_List): Call Copy_Separate_Tree for both entities and |
| other nodes. |
| |
| 2023-05-25 Steve Baird <baird@adacore.com> |
| |
| * exp_attr.adb |
| (Cached_Streaming_Ops): A new package, providing maps to save |
| previously-generated Read/Write/Input/Output procedures. |
| (Expand_N_Attribute_Reference): When a new subprogram is generated |
| for a Read/Write/Input/Output attribute reference, record that |
| type/subp pair in the appropriate Cached_Streaming_Ops map. |
| (Find_Stream_Subprogram): Check the appropriate |
| Cached_Streaming_Ops map to see if an appropriate subprogram has |
| already been generated. If so, then return it. The appropriateness |
| test includes a call to a new nested subprogram, |
| In_Available_Context. |
| * exp_strm.ads, exp_strm.adb: Do not pass in a Loc parameter (or a |
| source-location-bearing Nod parameter) to the 16 procedures |
| provided for building streaming-related subprograms. Use the |
| source location of the type instead. |
| * exp_dist.adb, exp_ch3.adb: Adapt to Exp_Strm spec changes. For |
| these calls the source location of the type was already being |
| used. |
| |
| 2023-05-25 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Function_Return): Add missing |
| Is_Access_Type check before accessing the Designated_Type field. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_ch6.adb (Analyze_Return_Type): Remove unused initial value. |
| |
| 2023-05-25 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch13.adb (Analyze_One_Aspect): Call Record_Rep_Item. |
| (Check_Aspect_At_Freeze_Point): Check the aspect is specified on |
| non-array type only... |
| (Analyze_One_Aspect): ... instead of doing it too early here. |
| * sem_aggr.adb (Resolve_Container_Aggregate): Do nothing in case |
| the parameters failed to resolve. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Check_Internal_Protected_Use): Add standard protection |
| against search going too far. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * contracts.adb |
| (Add_Pre_Post_Condition): Mention new aspects in the comment. |
| * contracts.ads |
| (Add_Contract_Item): Likewise. |
| (Analyze_Subprogram_Body_Stub_Contract): Likewise. |
| * sem_prag.adb |
| (Contract_Freeze_Error): Likewise. |
| (Ensure_Aggregate_Form): Likewise. |
| * sem_prag.ads |
| (Find_Related_Declaration_Or_Body): Likewise. |
| * sinfo.ads |
| (Is_Generic_Contract_Pragma): Likewise. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * aspects.ads |
| (Implementation_Defined_Aspect): Recently added aspects are |
| implementation-defined, just like Contract_Cases. |
| * sem_prag.ads |
| (Aspect_Specifying_Pragma): Recently added aspects have corresponding |
| pragmas, just like Contract_Cases. |
| (Pragma_Significant_To_Subprograms): Recently added aspects are |
| significant to subprograms, just like Contract_Cases. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Tune handling of formal parameters |
| in contract Exceptional_Cases. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * par-ch7.adb (P_Package): Remove redundant guard from call to |
| Move_Aspects. |
| * par-ch9.adb (P_Task): Likewise. |
| * sem_ch6.adb (Analyze_Expression_Function, Is_Inline_Pragma): Likewise. |
| |
| 2023-05-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Use Get_Actual_Subtype |
| to retrieve the actual subtype for all actuals and do it in only one |
| place for all unconstrained composite formal types. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): Fix references to Exceptional_Cases in |
| code copied from handling of Subprogram_Variant. |
| |
| 2023-05-25 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch3.adb (Replace_Type): Add more documentation. |
| |
| 2023-05-25 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch3.adb (Replace_Type): Use existing constant wherever |
| possible. |
| |
| 2023-05-25 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch3.adb (Replace_Type): Reduce span of variable. |
| |
| 2023-05-25 Bob Duff <duff@adacore.com> |
| |
| * sem_ch9.adb (Analyze_Protected_Type_Declaration): Set the flag |
| for protected types. |
| (Analyze_Single_Protected_Declaration): Likewise, for singleton |
| protected objects. |
| (Analyze_Task_Type_Declaration): Set the flag for task types. |
| (Analyze_Single_Task_Declaration): Likewise, for singleton task |
| objects. |
| * sem_ch10.adb (Decorate_Type): Set the flag for types treated as |
| incomplete. |
| (Build_Shadow_Entity): Set the flag for shadow entities. |
| (Decorate_State): Set the flag for an abstract state. |
| (Build_Limited_Views): Set the flag for limited view of package. |
| * sem_attr.adb (Check_Not_Incomplete_Type): Disable the check when |
| this is a current instance. |
| |
| 2023-05-25 Ronan Desplanques <desplanques@adacore.com> |
| |
| * freeze.adb (Build_DTW_Body): Add appropriate type conversions for |
| controlling access parameters. |
| * sem_util.adb (Build_Overriding_Spec): Fix designated types in |
| controlling access parameters. |
| |
| 2023-05-25 Bob Duff <duff@adacore.com> |
| |
| * gen_il-gen-gen_entities.adb (E_Label): Add |
| Entry_Cancel_Parameter. This is necessary because |
| Analyze_Implicit_Label_Declaration set the Ekind to E_Label. |
| Without this change, this field would fail the vanishing-fields |
| check in Atree (which is currently commented out). |
| * einfo.ads (Entry_Cancel_Parameter): Document for E_Label. |
| * sem_eval.adb (Why_Not_Static): Protect against previous errors |
| (no need to explain why something is not static if it's already |
| illegal for other reasons). |
| * sem_util.ads (Enter_Name): Fix misleading comment. |
| |
| 2023-05-25 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * einfo.ads (Scope_Depth): Fix circular definition. |
| (Scope_Depth_Value): Fix value for library units. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_ch11.adb (Analyze_Raise_Expression): Tune warning condition. |
| * libgnat/g-dirope.ads (Open): Remove a potentially inaccurate comment. |
| * libgnat/g-dirope.adb (Open): Remove a potentially useless assignment; |
| the Dir output parameter should be assigned a null value anyway by the |
| preceding call to Free. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Allow aliased parameters; tune |
| error message. |
| |
| 2023-05-25 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch13.adb (Analyze_One_Aspect): Mark Aggregate aspect as |
| needing delayed resolution and reject the aspect on non-array |
| type. |
| |
| 2023-05-25 Bob Duff <duff@adacore.com> |
| |
| * sinfo-utils.adb: Update comment to refer to |
| New_Node_Debugging_Output. |
| |
| 2023-05-25 Marc Poulhiès <poulhies@adacore.com> |
| |
| * rtsfind.adb (Load_RTU.Restore_SPARK_Context): New. |
| (Load_RTU): Use Restore_SPARK_Context on all exit paths. |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Initialize local |
| variable to Empty. |
| |
| 2023-05-25 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_attr.adb |
| (Analyze_Attribute_Old_Result): Allow uses of 'Old and 'Result within |
| the new aspect. |
| * sem_res.adb |
| (Within_Exceptional_Cases_Consequence): New utility routine. |
| (Resolve_Entity_Name): Restrict use of formal parameters within the |
| new aspect. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * 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-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch13.adb (Build_Predicate_Functions): If the current scope |
| is not that of the type, push this scope and pop it at the end. |
| * sem_util.ads (Current_Scope_No_Loops_No_Blocks): Delete. |
| * sem_util.adb (Current_Scope_No_Loops_No_Blocks): Likewise. |
| (Set_Public_Status): Call again Current_Scope. |
| |
| 2023-05-23 Gary Dismukes <dismukes@adacore.com> |
| |
| * exp_ch6.adb (Might_Have_Tasks): Remove unneeded Etype call from |
| call to Is_Limited_Record, since that flag is now properly |
| inherited by class-wide types. |
| * sem_ch3.adb (Analyze_Private_Extension_Declaration): Remove call |
| to Make_Class_Wide_Type, which is done too early, and will later |
| be done in Build_Derived_Record_Type after flags such as |
| Is_Limited_Record and Is_Controlled_Active have been set on the |
| derived type. |
| |
| 2023-05-23 Patrick Bernardi <bernardi@adacore.com> |
| |
| * libgnat/s-stchop.adb (Stack_Check): Remove redundant parentheses. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * freeze.adb (Freeze_Record_Type): Add tag for redundant pragma Pack. |
| * sem_aggr.adb (Resolve_Record_Aggregate): Add tag for redundant OTHERS |
| choice. |
| * sem_ch8.adb (Use_One_Type): Add tag for redundant USE clauses. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_ch11.adb |
| (Check_Duplication): Fix inconsistent iteration. |
| (Others_Present): Iterate over handlers using First_Non_Pragma and |
| Next_Non_Pragma just like in Check_Duplication. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * 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-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnarl/s-taskin.ads (Atomic_Address): Delete. |
| (Attribute_Array): Add pragma Atomic_Components. |
| (Ada_Task_Control_Block): Adjust default value of Attributes. |
| * libgnarl/s-tasini.adb (Finalize_Attributes): Adjust type of local |
| variable. |
| * libgnarl/s-tataat.ads (Deallocator): Adjust type of parameter. |
| (To_Attribute): Adjust source type. |
| * libgnarl/a-tasatt.adb: Add clauses for System.Storage_Elements. |
| (New_Attribute): Adjust return type. |
| (Deallocate): Adjust type of parameter. |
| (To_Real_Attribute): Adjust source type. |
| (To_Address): Add target type. |
| (To_Attribute): Adjust source type. |
| (Fast_Path): Adjust tested type. |
| (Finalize): Compare with Null_Address. |
| (Reference): Likewise. |
| (Reinitialize): Likewise. |
| (Set_Value): Likewise. Add conversion to Integer_Address. |
| (Value): Likewise. |
| |
| 2023-05-23 Raphael Amiard <amiard@adacore.com> |
| |
| * scng.adb (Scan): Replace occurrences of All_Extensions_Allowed |
| by Core_Extensions_Allowed. |
| |
| 2023-05-23 Claire Dross <dross@adacore.com> |
| |
| * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Use new helpers. |
| * libgnat/s-vauspe.ads (Raw_Unsigned_Starts_As_Based_Ghost, |
| Raw_Unsigned_Is_Based_Ghost): New ghost helper functions. |
| (Is_Raw_Unsigned_Format_Ghost, Scan_Split_No_Overflow_Ghost, |
| Scan_Split_Value_Ghost, Raw_Unsigned_Last_Ghost): Use new |
| helpers. |
| |
| 2023-05-23 Arnaud Charlet <charlet@adacore.com> |
| |
| * par-ch5.adb, style.ads, styleg.adb, styleg.ads |
| (Check_Xtra_Parens): Remove extra parameter Enable. |
| (Check_Xtra_Parens_Precedence): New. |
| (P_Case_Statement): Add -gnatyx style check. |
| * sem_ch4.adb: Replace calls to Check_Xtra_Parens by |
| Check_Xtra_Parens_Precedence. |
| * stylesw.ads, stylesw.adb, usage.adb: Add support for |
| -gnatyz. |
| * doc/gnat_ugn/building_executable_programs_with_gnat.rst: |
| Update -gnatyxzg doc. |
| * sem_prag.adb, libgnat/s-regpat.adb, |
| libgnarl/s-interr__hwint.adb, libgnarl/s-interr__vxworks.adb: |
| Remove extra parens. |
| * par-ch3.adb (P_Discrete_Range): Do not emit a style check if |
| the expression is not a simple expression. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/s-dwalin.adb (Enable_Cache): Use the subtract operator of |
| System.Storage_Elements to compute the offset. |
| (Symbolic_Address): Likewise. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Resolve_Intrinsic_Operator): Always perform the same |
| resolution for the special mod operator of System.Storage_Elements. |
| |
| 2023-05-23 Raphael Amiard <amiard@adacore.com> |
| |
| * doc/gnat_rm.rst, doc/gnat_rm/gnat_language_extensions.rst, |
| doc/gnat_rm/implementation_defined_pragmas.rst: |
| * gnat_rm.texi: Regenerate. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Op_Mod): Adjust the detection of the special |
| operator of System.Storage_Elements. Do not rewrite it into a rem. |
| * sem_res.adb (Resolve_Intrinsic_Operator): Use the base type of the |
| left operand for the special mod operator of System.Storage_Elements |
| |
| 2023-05-23 Vadim Godunko <godunko@adacore.com> |
| |
| * libgnat/a-coinho__shared.adb (Constant_Reference): Remove call |
| of Detach |
| (Query_Element): Likewise. |
| |
| 2023-05-23 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_disp.adb: Fix reference to Ada issue in comment. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_disp.adb (Expand_Dispatching_Call): In the abstract interface |
| class-wide case, use 'Tag of the object as the controlling tag. |
| (Expand_Interface_Thunk): Perform address arithmetic using operators |
| of System.Storage_Elements. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/i-cpoint.adb: Add clauses for System.Storage_Elements. |
| (Addr): Delete. |
| (Offset): New subtype of Storage_Offset. |
| (To_Offset): New instance of Unchecked_Conversion. |
| (To_Pointer): Adjust. |
| (To_Addr): Likewise. |
| (To_Ptrdiff): Likewise. |
| ("+"): Call To_Offset on the offset. |
| ("-"): Likewise. |
| * libgnat/s-bituti.adb: Add clauses for System.Storage_Elements. |
| (Val_Bytes): Change type to Storage_Count. |
| (Get_Val_2): Add qualification to second operand of mod operator. |
| (Set_Val_2): Likewise. |
| (Copy_Bitfield): Likewise. Change type of Src_Adjust & Dest_Adjust. |
| * libgnat/s-stratt.ads (Thin_Pointer): Change to subtype of Address. |
| * libgnat/s-statxd.adb (I_AD): Adjust. |
| (I_AS): Likewise. |
| (W_AS): Likewise. |
| |
| 2023-05-23 Steve Baird <baird@adacore.com> |
| |
| * sem_util.adb |
| (Is_Variable): Correctly return False for a selected component |
| name of the form Some_Object.Some_Discriminant, even if |
| Some_Object is a variable. We don't want to allow such a name as |
| an actual parameter in a call if the corresponding formal |
| parameter's mode is not "in". |
| |
| 2023-05-23 Yannick Moy <moy@adacore.com> |
| |
| * sem_util.adb (Check_Node): Add default init on local Id. |
| |
| 2023-05-23 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/i-c.adb (To_Ada): Add loop invariant. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Op_Mod): Deal with the special mod |
| operator of System.Storage_Elements. |
| * exp_intr.adb (Expand_To_Integer): New procedure. |
| (Expand_Intrinsic_Call): Call Expand_To_Integer appropriately. |
| (Expand_To_Address): Deal with an argument with modular type. |
| * sem_ch3.adb (Derive_Subprogram): Also set convention Intrinsic |
| on a derived intrinsic subprogram. |
| * sem_res.adb (Resolve_Arithmetic_Op): Deal with intrinsic |
| operators not coming from source exactly as those coming from |
| source and also generate a reference in both cases. |
| (Resolve_Op_Expon): Likewise. |
| (Resolve_Intrinsic_Operator): Call Implementation_Base_Type to get |
| a nonprivate base type. |
| * snames.ads-tmpl (Name_To_Integer): New intrinsic name. |
| * libgnat/s-stoele.ads: Replace pragma Convention with pragma |
| Import throughout and remove pragma Inline_Always and |
| Pure_Function. |
| * libgnat/s-stoele.adb: Replace entire contents with pragma |
| No_Body. |
| * libgnat/s-atacco.adb: Adjust comment about pragma No_Body. |
| |
| 2023-05-23 Javier Miranda <miranda@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pre_Post_Condition_In_Decl_Part): Remove |
| call to preanalyze class-wide conditions since here it is too |
| early; they must be preanalyzed when full views of private types |
| have been analyzed. |
| * sem_ch7.adb (Analyze_Package_Specification): Preanalyze |
| class-wide conditions of dispatching primitives defined in nested |
| packages. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * errout.adb (Last_Sloc): Refactor a heavily repeated "S := S + 1" |
| statement into a subprogram; replace assertions with defensive code; |
| fix few more off-by-one errors. |
| |
| 2023-05-23 Ronan Desplanques <desplanques@adacore.com> |
| |
| * einfo.ads: Mention full name of LSP. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * errout.adb (Last_Sloc): Rewrite skipping past numeric literals. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch13.adb (Build_Predicate_Function_Declaration): Adjust the |
| commentary to the current implementation. |
| * sem_util.ads (Current_Scope_No_Loops): Move around. |
| (Current_Scope_No_Loops_No_Blocks): New declaration. |
| (Add_Block_Identifier): Fix formatting. |
| * sem_util.adb (Add_Block_Identifier): Likewise. |
| (Current_Scope_No_Loops_No_Blocks): New function. |
| (Set_Public_Status): Call Current_Scope_No_Loops_No_Blocks instead |
| of Current_Scope to get the current scope. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Do not |
| manually generate a predicate check. Call Unqualify before doing |
| pattern matching on the expression. |
| * sem_ch3.adb (Analyze_Object_Declaration): Also freeze the actual |
| subtype when it is built in the definite case. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * libgnarl/s-interr.adb |
| (Registered_Handler): Remove default expression. |
| (Registered_Handlers): Switch to singly-linked list. |
| (Bind_Interrupt_To_Entry): Sync whitespace with other unit variants. |
| (Is_Registered): Use singly-linked list. |
| (Register_Interrupt_Handler): Use singly-linked list and initialized |
| allocator; sync assertion with other unit variants. |
| * libgnarl/s-interr__sigaction.adb: Likewise. |
| * libgnarl/s-interr__vxworks.adb: Likewise. |
| * libgnarl/s-interr__hwint.adb: Likewise. |
| (Is_Registered): Remove repeated declaration. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * pprint.adb (Expression_Image): Restore some of the old pretty-printing |
| for CodePeer. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * errout.adb (First_And_Last_Nodes): Ignore accessibility parameters. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Op_Ne): Simply don't add extra parens. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * pprint.adb (Expression_Image): Move Count_Parentheses and |
| Fix_Parentheses routines from GNATprove and apply them before |
| returning the slice of a source code buffer. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * errout.adb |
| (Paren_Required): New subsidiary routine for better handling of |
| parentheses in First_Node/Last_Node. |
| (First_Sloc, Last_Sloc): Use Get_Source_File_Index to correctly |
| handle generic instances and inlined subprograms; tune handling of |
| parentheses; improve handling of literals. |
| * pprint.adb (Expression_Image): Simplify using |
| First_Sloc/Last_Sloc. |
| * sem_ch6.adb (Analyze_Expression_Function): Remove parenthesis |
| when relocating expression from expression function to simple |
| return statement. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_prag.adb (Expand_Pragma_Check): Suppress warning for checks of |
| subprogram variants. |
| |
| 2023-05-23 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * frontend.adb (Frontend): Merge two conditional blocks and adjust. |
| |
| 2023-05-23 Piotr Trojanek <trojanek@adacore.com> |
| |
| * libgnat/s-mmap.adb (Mapped_Region_Record): Fix typo in comment. |
| |
| 2023-05-23 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch7.adb: Remove duplicate comment. |
| |
| 2023-05-23 Javier Miranda <miranda@adacore.com> |
| |
| * sem_ch10.adb |
| (Analyze_Required_Limited_With_Units): New subprogram. |
| (Depends_On_Limited_Views): New subprogram. |
| (Has_Limited_With_Clauses): New subprogram. |
| (Analyze_Compilation_Unit): Call the new subprogram that performs |
| the full analysis of required limited-with units. |
| |
| 2023-05-22 Ronan Desplanques <desplanques@adacore.com> |
| |
| * cstand.adb: Use more idiomatic procedure. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * errout.adb (First_Loc): Avoid repeated calls. |
| (Last_Loc): Likewise. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * 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-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Expand_N_Package_Body): Call Defining_Entity to get |
| the entity of the body. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_attr.adb (Expand_Loop_Entry_Attribute): Use location of the |
| attribute reference, not of the loop statement. |
| |
| 2023-05-22 Ronan Desplanques <desplanques@adacore.com> |
| |
| * par-ch3.adb: Add missing word in comment. |
| |
| 2023-05-22 Justin Squirek <squirek@adacore.com> |
| |
| * checks.adb (Install_Null_Excluding_Check): Avoid non-null |
| optimizations when assertions are enabled. |
| |
| 2023-05-22 Marc Poulhiès <poulhies@adacore.com> |
| |
| * exp_aggr.adb (Process_Transient_Component): Reset Analyzed flag |
| for the copy of the initialization expression. |
| * sem_attr.adb (Validate_Non_Static_Attribute_Function_Call): Skip |
| error emission during Pre_Analyze. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Process_Package_Body): New procedure taken from... |
| (Build_Finalizer.Process_Declarations): ...here. Call the above |
| procedure to deal with both package bodies and package body stubs. |
| |
| 2023-05-22 Ronan Desplanques <desplanques@adacore.com> |
| |
| * atree.ads: Remove outdated part of comment. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Build_Finalizer): Reverse the test comparing the |
| instantiation and declaration nodes of a package instance, and |
| therefore bail out only when they are equal. Adjust comments. |
| (Expand_N_Package_Declaration): Do not clear the Finalizer field. |
| * lib-writ.adb: Add with and use clauses for Sem_Util. |
| (Write_Unit_Information): Look at unit nodes to find finalizers. |
| * sem_ch12.adb (Analyze_Package_Instantiation): Beef up the comment |
| about the rewriting of the instantiation node into a declaration. |
| |
| 2023-05-22 Bob Duff <duff@adacore.com> |
| |
| * cstand.adb (Is_Past_Self_Hiding_Point): Rename to be |
| Is_Not_Self_Hidden. |
| * einfo.ads: Likewise. |
| * exp_aggr.adb: Likewise. |
| * gen_il-fields.ads: Likewise. |
| * gen_il-gen-gen_entities.adb: Likewise. |
| * sem.adb: Likewise. |
| * sem_aggr.adb: Likewise. |
| * sem_ch11.adb: Likewise. |
| * sem_ch12.adb: Likewise. |
| * sem_ch5.adb: Likewise. |
| * sem_ch6.adb: Likewise. |
| * sem_ch7.adb: Likewise. |
| * sem_prag.adb: Likewise. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Make_Controlling_Function_Wrappers): Create the body |
| as the expanded body of an expression function. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * pprint.adb (Expression_Image): Handle several previously unsupported |
| constructs. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_res.adb (Resolve_Entity_Name): Combine two IF statements that |
| execute code only for references that come from source. |
| |
| 2023-05-22 Bob Duff <duff@adacore.com> |
| |
| * einfo.ads (Is_Past_Self_Hiding_Point): Document. |
| * gen_il-fields.ads (Is_Past_Self_Hiding_Point): Add to list of |
| fields. |
| * gen_il-gen-gen_entities.adb (Is_Past_Self_Hiding_Point): Declare |
| in all entities. |
| * exp_aggr.adb: Set Is_Past_Self_Hiding_Point as appropriate. |
| * sem.adb: Likewise. |
| * sem_aggr.adb: Likewise. |
| * sem_ch11.adb: Likewise. |
| * sem_ch12.adb: Likewise. |
| * sem_ch5.adb: Likewise. |
| * sem_ch7.adb: Likewise. |
| * sem_prag.adb: Likewise. |
| * sem_ch6.adb: Likewise. |
| (Set_Formal_Mode): Minor cleanup: Move from spec. |
| * sem_ch6.ads: |
| (Set_Formal_Mode): Minor cleanup: Move to body. |
| * cstand.adb: Call Set_Is_Past_Self_Hiding_Point on all entities |
| as soon as they are created. |
| * comperr.adb (Compiler_Abort): Minor cleanup -- use 'in' instead |
| of 'or else'. |
| * debug.adb: Minor comment cleanups. |
| |
| 2023-05-22 Steve Baird <baird@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Expression_With_Actions.Check_Action_Ok): |
| Accept an executable pragma occuring in a declare expression as |
| per AI22-0045. This means Assert and Inspection_Point pragmas as |
| well as any implementation-defined pragmas that the implementation |
| chooses to categorize as executable. Currently Assume and Debug |
| are the only such pragmas. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb |
| (Check_Postcondition_Use_In_Inlined_Subprogram): Mention |
| Subprogram_Variant in the comment. |
| (Analyze_Subprogram_Variant_In_Decl_Part): Warn when contract is |
| ignored because of pragma Inline_Always and frontend inlining. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_prag.adb (Check_Postcondition_Use_In_Inlined_Subprogram): Only |
| emit warning when frontend inlining is enabled. |
| |
| 2023-05-22 Arnaud Charlet <charlet@adacore.com> |
| |
| * par-ch3.adb, sem_ch4.adb (P_Discrete_Range, Analyze_Logical_Op, |
| Analyze_Short_Circuit): Add calls to Check_Xtra_Parentheses. |
| * par-ch5.adb (P_Condition): Move logic to Check_Xtra_Parentheses. |
| * style.ads, styleg.adb, styleg.ads (Check_Xtra_Parens): Move logic |
| related to expressions requiring parentheses here. |
| |
| 2023-05-22 Arnaud Charlet <charlet@adacore.com> |
| |
| * ali-util.adb, par-endh.adb, par-prag.adb, par-ch2.adb, |
| checks.adb, fmap.adb, libgnat/a-nbnbig.ads, libgnat/g-dynhta.adb, |
| libgnat/s-carun8.adb, libgnat/s-strcom.adb, libgnat/a-dhfina.adb, |
| libgnat/a-direct.adb, libgnat/a-rbtgbo.adb, libgnat/a-strsea.adb, |
| libgnat/a-ststio.adb, libgnat/a-suenco.adb, libgnat/a-costso.adb, |
| libgnat/a-strmap.adb, libgnat/g-alleve.adb, |
| libgnat/g-debpoo.adb, libgnat/g-sercom__linux.adb, |
| libgnat/s-genbig.adb, libgnat/s-mmap.adb, libgnat/s-regpat.adb, |
| par-ch5.adb, sem_case.adb, sem_ch12.adb, sem_ch13.adb, |
| sem_ch8.adb, sem_eval.adb, sem_prag.adb, sem_type.adb, |
| exp_ch11.adb, exp_ch2.adb, exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, |
| exp_ch6.adb, exp_ch9.adb, exp_put_image.adb, freeze.adb, live.adb, |
| sem_aggr.adb, sem_cat.adb, sem_ch10.adb, sem_ch3.adb, sem_ch6.adb, |
| sem_ch9.adb, sem_disp.adb, sem_elab.adb, sem_res.adb, |
| sem_util.adb, sinput.adb, uintp.adb, bcheck.adb, binde.adb, |
| binderr.adb, einfo-utils.adb, clean.adb, sem_ch4.adb, gnatls.adb, |
| gprep.adb, sem_ch11.adb: Remove extra parentheses. |
| |
| 2023-05-22 Arnaud Charlet <charlet@adacore.com> |
| |
| * sem_aggr.adb (Get_Value): Use ?? instead of ?. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_aggr.adb (Aggregate_Size): Remove redundant calls to |
| Present. |
| * exp_ch5.adb (Expand_N_If_Statement): Likewise. |
| * sem_prag.adb (Analyze_Pragma): Likewise. |
| * sem_warn.adb (Find_Var): Likewise. |
| |
| 2023-05-22 Claire Dross <dross@adacore.com> |
| |
| * sem_util.adb (Find_Actual): On calls through dereferences, |
| return the corresponding formal in the designated subprogram |
| profile. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.ads (Is_Actual_Tagged_Parameter): Remove spec. |
| * sem_util.adb (Is_Actual_Tagged_Parameter): Remove body. |
| |
| 2023-05-22 Joffrey Huguet <huguet@adacore.com> |
| |
| * libgnat/a-strunb.ads, libgnat/a-strunb__shared.ads |
| (To_Unbounded_String): Add postcondition. Add aspect SPARK_Mode |
| Off on the version that takes a Natural as parameter. |
| (To_String): Complete postcondition. |
| (Set_Unbounded_String): Add postcondition. |
| (Element): Likewise. |
| ("="): Likewise. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Freeze_Type): Do not associate the Finalize_Address |
| routine for a class-wide type if restriction No_Dispatching_Calls |
| is in effect. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * libgnat/s-genbig.ads (From_Bignum): New overloaded declarations. |
| * libgnat/s-genbig.adb (LLLI): New subtype. |
| (LLLI_Is_128): New boolean constant. |
| (From_Bignum): Change the return type of the signed implementation |
| to Long_Long_Long_Integer and add support for the case where its |
| size is 128 bits. Add a wrapper around it for Long_Long_Integer. |
| Add an unsigned implementation returning Unsigned_128 and a wrapper |
| around it for Unsigned_64. |
| (To_Bignum): Test LLLI_Is_128 instead of its size. |
| (To_String.Image): Add qualification to calls to From_Bignum. |
| * libgnat/a-nbnbin.adb (To_Big_Integer): Likewise. |
| (Signed_Conversions.From_Big_Integer): Likewise. |
| (Unsigned_Conversions): Likewise. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * freeze.adb (Wrap_Imported_Subprogram): Use Copy_Subprogram_Spec |
| to copy the spec from the subprogram to the generated subprogram |
| body. |
| (Freeze_Entity): Do not wrap imported subprograms inside generics. |
| |
| 2023-05-22 Steve Baird <baird@adacore.com> |
| |
| * sem_ch4.adb (Analyze_Expression_With_Actions.Check_Action_Ok): |
| If Comes_From_Source (A) is False, then look at Original_Node (A) |
| instead of A. In particular, if an (illegal) expression function |
| is transformed into a "vanilla" function, we don't want to allow |
| it just because Comes_From_Source is now False. |
| |
| 2023-05-22 Steve Baird <baird@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): In Check_No_Return, call |
| Error_Msg_Ada_2022_Feature in the case of a function. Remove code |
| outside of Check_No_Return that was querying Ada_Version. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch4.adb (Expand_N_Expression_With_Actions.Process_Action): Do |
| not look into nested blocks. |
| |
| 2023-05-22 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch3.adb (Find_Type_Of_Object): In a spec expression, also set |
| the Scope of the type, and call Constrain_Array for array subtypes. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * pprint.adb (Expression_Image): Reduce scope of local variables; inline |
| local uncommented constant From_Source; concatenate string with a single |
| character, as it is likely to execute faster; add missing cases to |
| traversal for the rightmost node and assertion to demonstrate that the |
| ??? comment is no longer relevant. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * pprint.adb (Expr_Name): Qualify CASE expression with N_Subexpr; add |
| missing alternative for N_Raise_Storage_Error; remove dead alternatives; |
| explicitly list unsupported alternatives. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * pprint.adb (Expr_Name): Exclude DEL from printable range. |
| |
| 2023-05-22 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.ads (New_Copy_Tree): Update comment. |
| * sem_util.adb (New_Copy_Tree): Update Controlling_Argument, very |
| much like we update the First/Next_Named_Association. |
| |
| 2023-05-22 Bob Duff <duff@adacore.com> |
| |
| * fe.h: Remove Ada_With_Extensions and add commentary. |
| * opt.ads: Rearrange code and add commentary. |
| |
| 2023-05-22 Bob Duff <duff@adacore.com> |
| |
| * sem_util.adb (Process_Type): Stop the recursion. |
| * exp_aggr.adb (Build_Record_Aggr_Code): Add assertion. |
| |
| 2023-05-18 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> |
| |
| * gcc-interface/decl.cc (gnat_to_gnu_entity): Use _P defines |
| from tree.h. |
| (constructor_address_p): Ditto. |
| (elaborate_expression_1): Ditto. |
| * gcc-interface/trans.cc (Identifier_to_gnu): Ditto. |
| (is_nrv_p): Ditto. |
| (Subprogram_Body_to_gnu): Ditto. |
| (gnat_to_gnu): Ditto. |
| (gnat_to_gnu_external): Ditto. |
| (add_decl_expr): Ditto. |
| (gnat_gimplify_expr): Ditto. |
| * gcc-interface/utils.cc (create_var_decl): Ditto. |
| * gcc-interface/utils2.cc (get_base_type): Ditto. |
| (build_binary_op): Ditto. |
| (build_unary_op): Ditto. |
| (gnat_protect_expr): Ditto. |
| (gnat_invariant_expr): Ditto. |
| |
| 2023-05-16 Steve Baird <baird@adacore.com> |
| |
| * usage.adb: Generate output text describing the -gnatw_s switch |
| (and the corresponding -gnatw_S switch). |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_attr.adb (Expand_N_Attribute_Reference) <Attribute_Reduce>: |
| Use the canonical accumulator type as the type of the accumulator |
| in the prefixed case. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Expand_Array_Aggregate): Do not set Warnings_Off on |
| the temporary created when in-place expansion is not possible. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * freeze.adb (Freeze_Expression): When the freezing is to be done |
| outside the current scope, skip any scope that is an internal loop. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_imgv.adb (Rewrite_Object_Image): If the prefix is a component |
| that depends on a discriminant, create an actual subtype for it. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch13.adb: Add with and use clauses for Expander. |
| (Resolve_Aspect_Expressions) <Aspect_Predicate>: Emulate a |
| bona-fide preanalysis setup before calling |
| Resolve_Aspect_Expression. |
| |
| 2023-05-16 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/s-aridou.adb (Lemma_Div_Pow2): Add assertion. |
| * libgnat/s-arit32.adb (Lemma_Abs_Div_Commutation): Simplify. |
| * libgnat/s-expmod.adb (Lemma_Exp_Mod): Add assertions. |
| (Lemma_Euclidean_Mod): Add body to lemma. |
| (Lemma_Mult_Mod): Add assertion. |
| * libgnat/s-valueu.adb (Scan_Raw_Unsigned): Modify assertion. |
| * libgnat/s-vauspe.ads (Raw_Unsigned_Last_Ghost): Add |
| postcondition. |
| * libgnat/s-widthi.adb: Use more precise types. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Has_Applicable_User_Defined_Literal): Apply the |
| same processing for derived untagged types as for tagged types. |
| * sem_util.ads (Corresponding_Primitive_Op): Adjust description. |
| * sem_util.adb (Corresponding_Primitive_Op): Handle untagged |
| types. |
| |
| 2023-05-16 Javier Miranda <miranda@adacore.com> |
| |
| * sem_attr.adb |
| (Analyze_Attribute_Old_Result): When preanalyzing a class-wide |
| condition, search in the scopes stack for the subprogram that has |
| the condition. This is required because returning the current |
| scope causes reporting spurious errors when the occurrence of the |
| attribute is found, for example, in a quantified expression. |
| |
| 2023-05-16 Javier Miranda <miranda@adacore.com> |
| |
| * exp_ch6.adb |
| (Needs_BIP_Alloc_Form): Return False for functions with foreign |
| convention since we never use build-in-place for such functions. |
| |
| 2023-05-16 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (Aggregate_Constraint_Checks): Don't exit early |
| when preanalysing in GNATprove mode. Now the condition is |
| consistent with other similar conditions in other code. |
| |
| 2023-05-16 Ghjuvan Lacambre <lacambre@adacore.com> |
| |
| * usage.adb (Usage): Document -gnatyD. |
| |
| 2023-05-16 Marc Poulhiès <poulhies@adacore.com> |
| |
| * libgnat/s-tsmona__linux.adb (link_map, r_debug_type): Add |
| 'aliased' on all components. |
| |
| 2023-05-16 Johannes Kliemann <kliemann@adacore.com> |
| |
| * libgnat/system-linux-ppc.ads: Add Support_Atomic_Primitives. |
| * libgnat/s-atopri__32.ads: Add 32 bit version of s-atopri.ads. |
| * Makefile.rtl: Use s-atopro__32.ads for ppc-linux. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_util.adb (Get_Actual_Subtype): For an explicit dereference, |
| return the Actual_Designated_Subtype if it is present. |
| (Get_Actual_Subtype_If_Available): Likewise. |
| |
| 2023-05-16 Arnaud Charlet <charlet@adacore.com> |
| |
| * errout.ads: Update comment. |
| * errout.adb (Skip_Msg_Insertion_Warning): Update to take e.g. |
| -gnatyM into account. |
| * erroutc.adb (Get_Warning_Option, Get_Warning_Tag) |
| (Prescan_Message): Add support for Style tags. |
| * par-ch5.adb, par-ch6.adb, par-ch7.adb, par-endh.adb, |
| par-util.adb, style.adb, styleg.adb: Set tag on all style |
| messages. |
| |
| 2023-05-16 Tom Tromey <tromey@adacore.com> |
| |
| * doc/gnat_ugn/building_executable_programs_with_gnat.rst |
| (Switches_for_gnatbind): Fix typo. |
| * libgnat/g-spipat.ads: Fix typo. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_aggr.adb (Build_Assignment_With_Temporary): Adjust comment |
| and fix type of second parameter. Create the temporary on the |
| secondary stack by calling Build_Temporary_On_Secondary_Stack. |
| (Convert_Array_Aggr_In_Allocator): Adjust formatting. |
| (Expand_Array_Aggregate): Likewise. |
| * exp_ch4.adb (Expand_N_Allocator): Set Actual_Designated_Subtype |
| on the dereference in the initialization for all composite types. |
| * exp_ch5.adb (Expand_N_Assignment_Statement): Create a temporary |
| on the host for an assignment between nonnative storage models. |
| Suppress more checks when Suppress_Assignment_Checks is set. |
| * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Deal with actuals |
| that are dereferences with an Actual_Designated_Subtype. Add |
| support for nonnative storage models. |
| (Expand_Actuals): Create a copy if the actual is a dereference |
| with a nonnative storage model. |
| * exp_util.ads (Build_Temporary_On_Secondary_Stack): Declare. |
| * exp_util.adb (Build_Temporary_On_Secondary_Stack): New function. |
| * sem_ch5.adb (Analyze_Assignment.Set_Assignment_Type): Do not |
| build an actual subtype for dereferences with an |
| Actual_Designated_Subtype |
| * sinfo.ads (Actual_Designated_Subtype): Adjust documentation. |
| (Suppress_Assignment_Checks): Likewise. |
| |
| 2023-05-16 Piotr Trojanek <trojanek@adacore.com> |
| |
| * exp_spark.adb (SPARK_Freeze_Type): Copy whole handling of DIC |
| and Type_Invariant from Freeze_Type. |
| |
| 2023-05-16 Richard Kenner <kenner@adacore.com> |
| |
| * sem_util.adb (Subprogram_Name): If what's passed is already an |
| entity, use that for the name. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * doc/gnat_rm/standard_and_implementation_defined_restrictions.rst |
| (No_Dependence): Give examples of new No_Dependence restrictions. |
| * gnat_rm.texi: Regenerate. |
| |
| 2023-05-16 Arnaud Charlet <charlet@adacore.com> |
| |
| * snames.ads-tmpl (Name_ASCII): New. |
| * style.adb (Check_Identifier): Fix handling of ASCII. |
| |
| 2023-05-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gen_il-fields.ads (Opt_Field_Enum): Add Cannot_Be_Superflat. |
| * gen_il-gen-gen_nodes.adb (N_Range): Add Cannot_Be_Superflat as |
| semantical flag and change Includes_Infinities to semantical. |
| * sinfo.ads (Cannot_Be_Superflat): Document it for N_Range. |
| * exp_ch4.adb (Expand_Concatenate): Set Cannot_Be_Superflat on the |
| range of the result if the result cannot be null. |
| |
| 2023-05-16 Richard Kenner <kenner@adacore.com> |
| |
| * gen_il-gen-gen_nodes.adb (Present_Expr): Type is now Uint. |
| |
| 2023-05-16 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/s-aridou.adb (Big3, Is_Mult_Decomposition) |
| (Is_Scaled_Mult_Decomposition): Add annotation for inlining. |
| (Double_Divide, Scaled_Divide): Simplify and remove ghost code. |
| (Prove_Multiplication): Add calls to lemmas to make proof go |
| through. |
| * libgnat/s-aridou.ads (Big, In_Double_Int_Range): Add annotation |
| for inlining. |
| |
| 2023-05-16 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-strsup.adb: Add intermediate assertions. |
| |
| 2023-05-16 Arnaud Charlet <charlet@adacore.com> |
| |
| * gnat1drv.adb: Ensure all dependencies are recorded even when not |
| generating code. |
| |
| 2023-05-16 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-strsup.adb: Set assertion policy for Loop_Variant. |
| |
| 2023-05-16 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch12.adb (Instantiate_Package_Body): Simplify if/then/else. |
| (Instantiate_Subprogram_Body): Likewise. |
| |
| 2023-05-16 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/s-aridou.adb: |
| (Big3): Remove override made useless. |
| (Lemma_Quot_Rem): Add new lemma and justify it, as no prover |
| manages to prove it. |
| (Lemma_Div_Pow2): Use new lemma Lemma_Quot_Rem. |
| (Prove_Scaled_Mult_Decomposition_Regroup3): Retype for |
| simplification. |
| (Scaled_Divide): Remove useless assertions.Decompose some |
| assertions with cut operations. Use Assert_And_Cut for second |
| half. Add assertions. |
| |
| 2023-05-15 Marc Poulhiès <poulhies@adacore.com> |
| |
| * exp_ch3.adb (Make_Allocator_For_Return): Fix typo in comment. |
| |
| 2023-05-15 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-strbou.ads: Add justifications for Mapping. |
| * libgnat/a-strfix.adb: Same. |
| * libgnat/a-strfix.ads: Same. |
| * libgnat/a-strsea.adb: Same. |
| * libgnat/a-strsea.ads: Same. |
| * libgnat/a-strsup.adb: Same and add loop variants. |
| * libgnat/a-strsup.ads: Same and add specification of termination. |
| |
| 2023-05-15 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/a-strsup.adb (Super_Slice): Reorder component assignment |
| to avoid failing predicate check related to initialization. |
| * libgnat/s-expmod.adb (Exp_Modular): Add intermediate assertion. |
| |
| 2023-05-15 Yannick Moy <moy@adacore.com> |
| |
| * libgnat/i-c.adb: Add loop variants. Remove useless |
| initialization. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * einfo-utils.ads: Remove comment. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * einfo-utils.ads, einfo-utils.adb: Get rid of the Proc_Next_... |
| procedures. Use Inline aspect instead of pragma Inline. |
| Is_Discrete_Or_Fixed_Point_Type did not have pragma Inline, but |
| now has the aspect; this was probably an oversight |
| (which illustrates why aspects are better). |
| |
| 2023-05-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * doc/gnat_ugn/gnat_utility_programs.rst: Fix formatting |
| inconsistency. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * einfo-utils.adb: |
| (Proc_Next_Component_Or_Discriminant): Call |
| Next_Component_Or_Discriminant. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * einfo.ads: |
| (First_Entity): Update comment explaining why this exists on all |
| [sub]types, as opposed to just the ones with associated entities. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * atree.adb |
| (Check_Vanishing_Fields): Disable the check for "root/base type |
| only" fields. This is a bug fix -- if we're checking some subtype |
| S, we don't want to reach over to the root or base type and |
| Reinit_Field_To_Zero of that, thus modifying the field for lots of |
| subtypes other than S. Disable in the to/from E_Void cases. Misc |
| cleanup. |
| * gen_il-gen-gen_entities.adb: Define First_Entity, Last_Entity, |
| and Stored_Constraint for all type entities, because there are too |
| many cases where Reinit_Field_To_Zero would otherwise be needed. |
| In any case, it seems cleaner to have First_Entity and Last_Entity |
| defined in the same entity kinds. |
| * einfo.ads: |
| (First_Entity, Last_Entity, Stored_Constraint): Update comments to |
| reflect gen_il-gen-gen_entities.adb changes. |
| (Lit_Hash): Add missing "[root type only]" comment. |
| * exp_ch5.adb: Add Reinit_Field_To_Zero calls for vanishing |
| fields. |
| * sem_ch10.adb: Likewise. |
| * sem_ch6.adb: Likewise. |
| * sem_ch7.adb: Likewise. |
| * sem_ch8.adb: Likewise. |
| * sem_ch3.adb: Likewise. Also remove now-unnecessary |
| Reinit_Field_To_Zero calls. |
| |
| 2023-05-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_ch7.adb (Hide_Public_Entities): Use the same condition for |
| subprogram bodies without specification as for those with one. |
| |
| 2023-05-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_util.adb (New_Copy_Tree): Remove redundant calls to Present. |
| |
| 2023-05-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch8.adb (End_Scope): Simplify lookup of predecessor in |
| homonym chain. |
| |
| 2023-05-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Aggregate): Accept aggregates with OTHERS |
| appearing inside unchecked conversions. |
| |
| 2023-05-15 Steve Baird <baird@adacore.com> |
| |
| * warnsw.ads: Add a new element, |
| Warn_On_Ineffective_Predicate_Test, to the Opt_Warnings_Enum |
| enumeration type. |
| * warnsw.adb: Bind "-gnatw_s" to the new |
| Warn_On_Ineffective_Predicate_Test switch. Add the new switch to |
| the set of switches enabled by -gnata . |
| * sem_ch13.adb |
| (Build_Discrete_Static_Predicate): Declare new local procedure, |
| Warn_If_Test_Ineffective, which conditionally generates new |
| warning. Call this new procedure when building a new element of an |
| RList. |
| * doc/gnat_ugn/building_executable_programs_with_gnat.rst: |
| Document the -gnatw_s switch (and the corresponding -gnatw_S |
| switch). |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-15 Yannick Moy <moy@adacore.com> |
| |
| * sem_attr.adb: Update comment referring to rule number. |
| |
| 2023-05-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_attr.adb: sem_attr.adb (Analyze_Access_Attribute): Tighten |
| validity check for task types. |
| |
| 2023-05-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * doc/gnat_rm/implementation_defined_characteristics.rst: Fix |
| minor documentation formatting issue. |
| * gnat_rm.texi: Regenerate. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * exp_ch4.adb |
| (Expand_N_Op_Expon): Remove the too-big check. Simplify. Signed |
| and modular cases are combined, etc. Remove code with comment "We |
| only handle cases where the right type is a[sic] integer", because |
| the right operand must always be an integer at this point. |
| |
| 2023-05-15 Bob Duff <duff@adacore.com> |
| |
| * sem_attr.adb |
| (Analyze_Attribute): Add a call to Check_Error_Detected. |
| |
| 2023-05-15 Yannick Moy <moy@adacore.com> |
| |
| * par-prag.adb (First_Arg_Is_Matching_Tool_Name): Fix access to |
| expression in pragma association. |
| |
| 2023-05-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * repinfo.ads (JSON output format): Document special case of |
| Present member of a Variant object. |
| * repinfo.adb (List_Structural_Record_Layout): Change the type of |
| Ext_Level parameter to Integer. Restrict the first recursion with |
| increasing levels to the fixed part and implement a second |
| recursion with decreasing levels for the variant part. Deal with |
| an extension of a type with unknown discriminants. |
| |
| 2023-05-15 Claire Dross <dross@adacore.com> |
| |
| * libgnat/s-valueu.adb: Use cut operations inside assertion to |
| restore proofs |
| * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Add s-spark and |
| s-spcuop dependencies. |
| |
| 2023-05-15 Yannick Moy <moy@adacore.com> |
| |
| * sem_prag.adb (Check_Grouping): Allow Annotate pragmas between |
| loop pragmas. |
| |
| 2023-05-15 Javier Miranda <miranda@adacore.com> |
| |
| * doc/gnat_rm/implementation_defined_pragmas.rst |
| (Extensions_Allowed): Document string interpolation. |
| * gnat_rm.texi: Regenerate. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-15 Joel Brobecker <brobecker@adacore.com> |
| |
| * doc/gnat_ugn/platform_specific_information.rst |
| (_PIE_Enabled_By_Default_On_Linux): New section. |
| * gnat-style.texi: Regenerate. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-05-15 Javier Miranda <miranda@adacore.com> |
| |
| * exp_disp.adb |
| (Has_Dispatching_Constructor_Call): New subprogram. |
| (Expand_Interface_Conversion): No need to perform dynamic |
| interface conversion when the operand and the target type are |
| interface types and the target interface type is an ancestor of |
| the operand type. The unique exception to this rule is when the |
| operand has a dispatching constructor call (as documented in the |
| sources). |
| |
| 2023-05-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * sem_attr.adb (Analyze_Attribute): Reject attribute Initialized |
| on unchecked unions; fix grammar in comment. |
| |
| 2023-05-15 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_ch13.adb (Validate_Unchecked_Conversion): Fix behavior on |
| System.Address to access to subprogram subtype conversion. |
| |
| 2023-05-15 Piotr Trojanek <trojanek@adacore.com> |
| |
| * atree.ads |
| (Is_Syntactic_Node): Refactored from New_Copy_Tree. |
| * atree.adb |
| (Is_Syntactic_Node): Likewise. |
| (Copy_Separate_Tree): Use Is_Syntactic_Node. |
| * sem_util.adb |
| (Has_More_Ids): Move to Atree. |
| (Is_Syntactic_Node): Likewise. |
| |
| 2023-04-18 Jin Ma <jinma@linux.alibaba.com> |
| |
| * gcc-interface/utils.cc (unchecked_convert): Fix typo. |
| |
| 2023-04-17 Martin Liska <mliska@suse.cz> |
| |
| * gnatvsn.ads: Bump Library_Version to 14. |
| |
| 2023-04-15 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR bootstrap/109510 |
| * gcc-interface/decl.cc (gnat_to_gnu_entity) <types>: Do not reset |
| align to zero in any case. Set TYPE_USER_ALIGN on the type only if |
| it is an aggregate type, or else a type whose default alignment is |
| specifically capped on selected platforms. |
| |
| 2023-04-14 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR bootstrap/109510 |
| * gcc-interface/decl.cc (gnat_to_gnu_entity) <types>: Reset align |
| to zero if its value is equal to TYPE_ALIGN and the type is scalar. |
| Set TYPE_USER_ALIGN on the type only if align is positive. |
| |
| 2023-03-06 Javier Miranda <miranda@adacore.com> |
| |
| PR ada/108858 |
| * sem_ch6.adb (Analyze_Subprogram_Body_Helper): For functions with |
| separate spec, if their return type was visible through a limited- |
| with context clause, their extra formals were not added when the |
| spec was analyzed. Now the full view must be available, and the |
| extra formals can be created and Returns_By_Ref computed. |
| |
| 2023-03-06 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR ada/108909 |
| PR ada/108983 |
| * Make-generated.in: Do not use GNATMAKE. |
| * gcc-interface/Makefile.in: Ditto. |
| |
| 2023-02-26 Peter Foley <pefoley2@pefoley.com> |
| |
| PR ada/108909 |
| * Make-generated.in: Use GNATMAKE. |
| * gcc-interface/Makefile.in: Ditto. |
| |
| 2023-02-14 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * gcc-interface/trans.cc (gnat_gimplify_expr): Add missing guard. |
| |
| 2023-02-14 Dongsheng Song <dongsheng.song@gmail.com> |
| |
| * adaint.c [Linux]: Include <features.h>. |
| (__gnat_get_executable_load_address) [Linux]: Enable only for |
| glibc and uClibc. |
| |
| 2023-01-16 Marc Poulhiès <poulhies@adacore.com> |
| |
| * gcc-interface/Make-lang.in: Update copyright years. |
| * gcc-interface/Makefile.in: Likewise. |
| * gcc-interface/ada-builtin-types.def: Likewise. |
| * gcc-interface/ada-builtins.def: Likewise. |
| * gcc-interface/ada-tree.def: Likewise. |
| * gcc-interface/ada-tree.h: Likewise. |
| * gcc-interface/ada.h: Likewise. |
| * gcc-interface/config-lang.in: Likewise. |
| * gcc-interface/cuintp.cc: Likewise. |
| * gcc-interface/decl.cc: Likewise. |
| * gcc-interface/gadaint.h: Likewise. |
| * gcc-interface/gigi.h: Likewise. |
| * gcc-interface/lang-specs.h: Likewise. |
| * gcc-interface/lang.opt: Likewise. |
| * gcc-interface/misc.cc: Likewise. |
| * gcc-interface/system.ads: Likewise. |
| * gcc-interface/targtyps.cc: Likewise. |
| * gcc-interface/trans.cc: Likewise. |
| * gcc-interface/utils.cc: Likewise. |
| * gcc-interface/utils2.cc: Likewise. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Make_Allocator_For_Return): Fix typo in comment. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Make_Allocator_For_Return): Convert the expression |
| to the return object's type in the constrained array case as well. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): For a class-wide non- |
| interface stand-alone object initialized by a function call, call |
| Remove_Side_Effects on the expression to capture the result. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.ads (Has_Tag_Of_Type): Declare. |
| * exp_util.adb (Has_Tag_Of_Type): Move to package level. Recurse on |
| qualified expressions. |
| * exp_ch3.adb (Expand_N_Object_Declaration): Use a static reference |
| to the interface tag in more cases for class-wide interface objects. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Make_CW_Equivalent_Type.Has_Tag_Of_Type): Fix pasto. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Is_Temporary_For_Interface_Object): Delete. |
| (Is_Finalizable_Transient.Is_Aliased): Deal with the specific case |
| of temporaries generated for interface objects. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Do not generate a back- |
| and-forth displacement of the object's address when using a renaming |
| for an interface object with an expression of the same type. |
| * exp_ch4.adb (Expand_Allocator_Expression): Do not remove the side |
| effects of the expression up front for the simple allocators. Do not |
| call the Adjust primitive if the expression is a function call. |
| * exp_ch6.adb (Expand_Ctrl_Function_Call): Do not expand the call |
| unnecessarily for a special return object. |
| (Expand_Simple_Function_Return): Restore the displacement of the |
| return object's address in the case where the expression is the call |
| to a function whose result type is a type that needs finalization. |
| * exp_util.adb (Expand_Subtype_From_Expr): Do not remove the side |
| effects of the expression before calling Make_Subtype_From_Expr. |
| (Make_CW_Equivalent_Type): If the expression has the tag of its type |
| and this type has a uniform size, use 'Object_Size of this type in |
| lieu of 'Size of the expression to compute the expression's size. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Make_Allocator_For_Return): Put back an interface |
| conversion for expressions with non-interface class-wide type. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Also optimize aliased |
| objects if their nominal subtype is not an unconstrained array. |
| |
| 2023-01-16 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Factor out conditions |
| needed for an initializating expression that is a function call to |
| be renamable into the Is_Renamable_Function_Call predicate. |
| Use it to implement the renaming in the case of class-wide interface |
| objects. Remove an interface conversion on all paths, separate and |
| optimize the renaming path in the special expansion for interfaces. |
| (Is_Renamable_Function_Call): New predicate. |
| (Make_Allocator_For_Return): Put back an interface conversion. |
| * exp_ch6.adb (Apply_CW_Accessibility_Check): Remove useless access |
| checks on RE_Tag_Ptr. |
| |
| 2023-01-09 Arnaud Charlet <charlet@adacore.com> |
| |
| * 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. |
| |
| 2023-01-09 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch7.adb (Make_Adjust_Call): Remove unreachable statement. |
| (Make_Final_Call): Likewise. |
| |
| 2023-01-09 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.ads (Is_Tag_To_Class_Wide_Conversion): Delete. |
| (Is_Displacement_Of_Object_Or_Function_Result): Likewise. |
| * exp_util.adb (Is_Tag_To_Class_Wide_Conversion): Rename to... |
| (Is_Temporary_For_Interface_Object): ...this. |
| (Is_Finalizable_Transient): Adjust call to above renaming. |
| (Is_Displacement_Of_Object_Or_Function_Result): Delete. |
| (Requires_Cleanup_Actions): Remove special handling of the |
| temporaries created for interface objects. |
| * exp_ch7.adb (Build_Finalizer): Likewise. |
| |
| 2023-01-07 LIU Hao <lh_mouse@126.com> |
| |
| PR middle-end/108300 |
| * adaint.c: Define `WIN32_LEAN_AND_MEAN` before `#include |
| <windows.h>`. |
| * cio.c: Likewise. |
| * ctrl_c.c: Likewise. |
| * expect.c: Likewise. |
| * gsocket.h: Likewise. |
| * mingw32.h: Likewise. |
| * mkdir.c: Likewise. |
| * rtfinal.c: Likewise. |
| * rtinit.c: Likewise. |
| * seh_init.c: Likewise. |
| * sysdep.c: Likewise. |
| * terminals.c: Likewise. |
| * tracebak.c: Likewise. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.adb (Make_CW_Equivalent_Type) <Has_Tag_Of_Type>: Tweak. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite the end of the |
| handling of objects with (class-wide) interface type by using the |
| same idiom as the other cases generating a renaming. |
| * exp_util.adb (Is_Displacement_Of_Object_Or_Function_Result): Tweak |
| pattern matching code and exclude special return objects. |
| (Requires_Cleanup_Actions): Adjust comment. |
| * exp_ch7.adb (Build_Finalizer): Likewise. |
| |
| 2023-01-05 Piotr Trojanek <trojanek@adacore.com> |
| |
| * freeze.adb (Build_Renamed_Body): Rewrite subprogram renaming to |
| subprogram declaration early and then set the Body_To_Inling flag. |
| |
| 2023-01-05 Piotr Trojanek <trojanek@adacore.com> |
| |
| * freeze.adb (Build_Renamed_Body): Revert a special case for |
| GNATprove; remove unnecessary initialization of a local variable. |
| |
| 2023-01-05 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch12.adb (Instantiate_Package_Body): Better filtering when |
| installing parent on the scope stack. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * repinfo.ads (The JSON output format): Document change. |
| * urealp.adb (UR_Write_To_JSON): Output a fraction instead of a |
| decimal approximation. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): New local variable |
| Func_Id holding the function for a special return object. |
| Use a direct renaming in the class-wide case when the initializing |
| expression is a captured function call, except for a special return |
| object when the two functions do not return on the same stack. |
| Apply the accessibility check for class-wide special return objects. |
| * exp_util.adb (Make_CW_Equivalent_Type) <Has_Tag_Of_Type>: New. |
| Do not force a dispatching call to the primitive operation _Size if |
| the expression is known to statically have the tag of its type. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): Fix pasto in comment. |
| |
| 2023-01-05 Ronan Desplanques <desplanques@adacore.com> |
| |
| * sem_aggr.adb (Resolve_Array_Aggregate): Tweak conditions for |
| warning about use of parentheses for array aggregates. |
| |
| 2023-01-05 Javier Miranda <miranda@adacore.com> |
| |
| * scans.ads (Tok_Left_Curly_Bracket, Tok_Right_Curly_Bracket) |
| (Tok_Left_Interpolated_String): Placed in no category since they |
| don't fit well in the existing categories. Fix typo in comment. |
| (Inside_Interpolated_String_Literal): New scan state variable. |
| * scng.adb (Slit): Scan interpolated string literals, |
| continuations of interpolated string literals and escaped |
| characters found in interpolated string literals. |
| (Scan): Handle consecutive interpolated expressions. Handle ending |
| delimiter placed immediately after an interpolated expression. |
| Handle string literal placed after interpolated expression. Handle |
| left and right curly brackets; when extensions are not allowed |
| they are treated as left and right paren; when extensions are |
| allowed they are handled as delimiters of interpolated string |
| literals. |
| * sinfo.ads (N_Interpolated_String_Literal): New node. |
| * gen_il-gen-gen_nodes.adb (N_Interpolated_String_Literal): Define |
| N_String_Literal node. |
| * gen_il-types.ads (Opt_Type_Enum): Define N_String_Literal as |
| concrete node type. |
| * par-ch2.adb (P_Interpolated_String_Literal): New subprogram. |
| * par-ch4.adb (P_Simple_Expression): Handle '}' as expression |
| terminator when scanning an interpolated expression; disable error |
| recovery machinery for binary operator when we are processing an |
| interpolated string literal and reach the expression terminator |
| '}'. |
| (P_Primary): Call P_Interpolated_String_Literal when the opening |
| interpolated-string-literal delimiter is found (that is, the left |
| curly bracket '{'). |
| * par-tchk.adb (T_Right_Curly_Bracket): New subprogram. |
| * par.adb (P_Interpolated_String_Literal): New declaration. |
| (T_Right_Curly_Bracket): New declaration. |
| * sem.adb (Analyze): Call Analyze_Interpolated_String_Literal. |
| * sem_ch2.ads (Analyze_Interpolated_String_Literal): New |
| subprogram |
| * sem_ch2.adb (Analyze_Interpolated_String_Literal): Likewise. |
| * sem_util.adb (Is_User_Defined_Literal): Complete mapping of |
| literal aspects adding that interpolated string literals have no |
| correspondence with any aspect. |
| * sem_res.adb (Resolve_Interpolated_String_Literal): New |
| subprogram. |
| (Has_Applicable_User_Defined_Literal): Complete mapping of literal |
| aspects adding that interpolated string literals have no |
| correspondency with any aspect. |
| * expander.adb (Expand): Add call to |
| Expand_N_Interpolated_String_Literal. |
| * exp_util.adb (Insert_Actions): Handle |
| N_Interpolated_String_Literal nodes; that is, continue climbing. |
| * exp_ch2.ads (Expand_N_Interpolated_String_Literal): New |
| subprogram. |
| * exp_ch2.adb (Expand_N_Interpolated_String_Literal): Likewise. |
| * exp_put_image.adb (Build_Elementary_Put_Image_Call): Add missing |
| conversion to force dispatching call. Required to handle calls to |
| descendants. |
| (Build_String_Put_Image_Call): Do not output string delimiters |
| when the put_image call is part of an interpolated string literal. |
| * rtsfind.ads (RTU_Id): Add RE_Set_Trim_Leading_Spaces. |
| * sprint.adb (Sprint_Node): Output interpolated string contents. |
| * libgnat/a-stbubo.adb (Get_UTF_8): Add default value for |
| Trim_Leading_White_Spaces component in aggregate. |
| (Buffer_Type_Implementation): Update Trim_Leading_White_Spaces. |
| * libgnat/a-stbuun.adb (Get_UTF_8): Likewise. |
| (Buffer_Type_Implementation): Likewise. |
| * libgnat/a-sttebu.ads (Set_Trim_Leading_Spaces): New subprogram. |
| (Trim_Leading_Spaces): New subprogram. |
| (Root_Buffer_Type): Adding Trim_Leading_While_Spaces component. |
| * libgnat/a-sttebu.adb (procedure Set_Trim_Leading_Spaces): New |
| subprogram. |
| (Trim_Leading_Space): New subprogram. |
| (Put_UTF_8): Handle Trim_Leading_White_Spaces. |
| (New_Line): Likewise. |
| * libgnat/s-putima.ads (Put_Image_String): Adding formal |
| (with_delimiters). |
| (Put_Image_Wide_String): Likewise. |
| (Put_Image_Wide_Wide_String): Likewise. |
| * libgnat/s-putima.adb (Put_Image_String): Adding support for new |
| formal. |
| (Put_Image_Wide_String): Likewise. |
| (Put_Image_Wide_Wide_String): Likewise. |
| |
| 2023-01-05 Joao Azevedo <azevedo@adacore.com> |
| |
| * doc/gnat_ugn/gnat_utility_programs.rst: add gnatpp --layout |
| switch and update legacy switches. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * freeze.adb (Freeze_Entity): For the purpose of deciding whether to |
| freeze an entity coming from an outer scope in an inner scope, treat |
| the internal subprogram generated because of post-conditions as also |
| coming from source if the original subprogram itself does. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * contracts.adb (Build_Subprogram_Contract_Wrapper): Generate an |
| extended return statement in all cases. |
| (Expand_Subprogram_Contract): Adjust comment. |
| |
| 2023-01-05 Ronan Desplanques <desplanques@adacore.com> |
| |
| * libgnat/g-forstr.adb (F_Kind): Rename enumeration literal. |
| (P_Flt_Format): Adjust handling of "%g". |
| (Determine_Notation_And_Aft): New procedure. |
| (Decimal_Exponent): New function. |
| (Increment_Integral_Part): New procedure. |
| (Remove_Extraneous_Decimal_Digit): New procedure. |
| (Trim_Fractional_Part): New procedure. |
| * libgnat/g-forstr.ads: Change description of "%g" specifier. |
| |
| 2023-01-05 Marc Poulhiès <poulhies@adacore.com> |
| |
| * sem_ch12.adb (Instantiate_Package_Body): Correctly find the |
| parent instance to place on the scope stack. |
| |
| 2023-01-05 Justin Squirek <squirek@adacore.com> |
| |
| * sem_ch8.adb (Set_Entity_Or_Discriminal): Verify we are actually |
| resetting the entity field of a non-prefixed discriminant |
| reference. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): New local variable used |
| throughout instead of testing Is_Special_Return_Object every time. |
| Do not rename an OK_To_Rename object for a special return object. |
| * exp_ch4.adb (Expand_Concatenate): Revert to constrained allocation |
| if the result is allocated on the secondary stack. |
| |
| 2023-01-05 Steve Baird <baird@adacore.com> |
| |
| * sem_prag.adb (Analyze_Pragma): Fix Is_Configuration_Pragma |
| function to handle case where the pragma's parent is an |
| N_Aspect_Specification node. In analyzing a Discard_Names pragma, |
| do not assume that a nonzero number of arguments implies that the |
| pragma is not a configuration pragma; that assumption only holds |
| for legal programs. |
| |
| 2023-01-05 Bob Duff <duff@adacore.com> |
| |
| * doc/gnat_ugn/building_executable_programs_with_gnat.rst: |
| Add RM references. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-01-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch3.adb (Expand_N_Object_Declaration): For a special return |
| object of an interface type that is not inherently limited, make |
| a call to the Adjust primitive after doing the copy. For a special |
| return object of a non-class-wide type initialized by a function |
| call, use a direct renaming only if the object doing the capture |
| is flagged by Is_Related_To_Func_Return. For a special return |
| object using a direct renaming, reassign the tag, if need be. |
| * exp_ch6.adb (Expand_Simple_Function_Return): Fix comment. |
| * exp_util.adb (Is_Related_To_Func_Return): Accept both regular and |
| renaming object declarations for return objects. |
| |
| 2023-01-05 Bob Duff <duff@adacore.com> |
| |
| * sem_ch5.adb (Analyze_Assignment): Fix the bug by checking |
| Original_Node. The renaming might be elsewhere, but the (original) |
| reference is right here. |
| * errout.adb: Remove pragma Unreferenced which was added because |
| of the above bug. |
| * einfo.ads: Misc cleanup. |
| * lib.adb: Likewise. |
| * lib.ads: Likewise. |
| |
| 2023-01-03 Ghjuvan Lacambre <lacambre@adacore.com> |
| |
| * errout.adb (Write_JSON_Span): Escape subprogram name. |
| |
| 2023-01-03 Ghjuvan Lacambre <lacambre@adacore.com> |
| |
| * output.adb (Write_Buffer): Use Flush_Buffer instead of Write_Eol. |
| |
| 2023-01-03 Ronan Desplanques <desplanques@adacore.com> |
| |
| * libgnat/g-forstr.adb (P_Flt_Format): Add "*" syntax handling. |
| |
| 2023-01-03 Ronan Desplanques <desplanques@adacore.com> |
| |
| * libgnat/g-forstr.adb (P_Int_Format): Fix parsing bug. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Expand_Simple_Function_Return): Make sure that a |
| captured function call also verifies Is_Related_To_Func_Return. |
| Do not generate an actual subtype for special return objects. |
| * exp_util.ads (Is_Related_To_Func_Return): Add commentary. |
| |
| 2023-01-03 Ronan Desplanques <desplanques@adacore.com> |
| |
| * libgnat/g-forstr.adb |
| (Advance_And_Accumulate_Until_Next_Specifier): New procedure. |
| ("-"): Replace inline code with call to |
| Advance_And_Accumulate_Until_Next_Specifier. |
| (Next_Format): likewise. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * checks.adb (Apply_Discriminant_Check.Denotes_Explicit_Dereference): |
| Return false for artificial dereferences generated by the expander. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_ch6.adb (Is_Build_In_Place_Function): Adjust comment. |
| * sem_util.adb (Compute_Returns_By_Ref): Do not set Returns_By_Ref |
| on functions with foreign convention. |
| |
| 2023-01-03 Marc Poulhiès <poulhies@adacore.com> |
| |
| * exp_aggr.adb (Build_Assignment_With_Temporary): New. |
| (Expand_Array_Aggregate): Tune backend optimization |
| and insert a temporary in the case of an access with |
| Designated_Storage_Model aspect. |
| (Convert_Array_Aggr_In_Allocator): Likewise. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_res.adb (Resolve_Membership_Op): Adjust again latest change. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * sem_util.ads (Set_Debug_Info_Defining_Id): Adjust comment. |
| * sem_util.adb (Is_Aliased_View) <N_Explicit_Dereference>: Return |
| false for more artificial dereferences generated by the expander. |
| (Set_Debug_Info_Defining_Id): Set Debug_Info_Needed unconditionally |
| in -gnatD mode. |
| * exp_ch6.adb (Replace_Renaming_Declaration_Id): Also preserve the |
| Is_Aliased flag. |
| |
| 2023-01-03 Joel Brobecker <brobecker@adacore.com> |
| |
| * doc/gnat_ugn/platform_specific_information.rst |
| (_Platform_Specific_Information): Minor rewording of intro text. |
| * gnat_ugn.texi: Regenerate. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_util.ads (Is_Captured_Function_Call): Declare. |
| * exp_util.adb (Is_Captured_Function_Call): New predicate. |
| * exp_ch3.adb (Expand_N_Object_Declaration): Use it to detect a |
| rewritten function call as the initializing expression. |
| * exp_ch6.adb (Expand_Simple_Function_Return): Use it to detect a |
| rewritten function call as the returned expression. |
| |
| 2023-01-03 Bob Duff <duff@adacore.com> |
| |
| * exp_util.adb (Integer_Type_For): Assertion and comment. |
| (Small_Integer_Type_For): Remove some code and call |
| Integer_Type_For instead. |
| * sem_util.ads (Rep_To_Pos_Flag): Improve comments. "Standard_..." |
| seems overly pedantic here. |
| * exp_attr.adb (Succ, Pred): Clean up: make the code as similar as |
| possible. |
| * exp_ch4.adb: Minor: named notation. |
| |
| 2023-01-03 Javier Miranda <miranda@adacore.com> |
| |
| * ghost.adb (Is_OK_Declaration): A reference to a Ghost entity may |
| appear within the class-wide precondition of a helper subprogram. |
| This context is treated as suitable because it was already |
| verified when we were analyzing the original class-wide |
| precondition. |
| |
| 2023-01-03 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * exp_tss.adb (Base_Init_Proc): Do not return the Init_Proc of the |
| ancestor type for a derived array type. |
| * sem_ch13.adb (Inherit_Aspects_At_Freeze_Point): Factor out the |
| common processing done on representation items. |
| For Default_Component_Value and Default_Value, look into the first |
| subtype to find out the representation items. |
| |
| 2023-01-02 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR ada/108202 |
| * gcc-interface/Make-lang.in (GCC_LINKERFLAGS, GCC_LDFLAGS): |
| Versions of ALL_LINKERFLAGS, LDFLAGS with -Werror and |
| -static-libgcc filtered out for Darwin8 and 9 (-Werror is filtered |
| out for other hosts). |
| |
| 2023-01-02 Jakub Jelinek <jakub@redhat.com> |
| |
| * gnat_ugn.texi: Bump @copying's copyright year. |
| * gnat_rm.texi: Likewise. |
| |
| |
| Copyright (C) 2023 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |