[testsuite] [i386] work around fails with --enable-frame-pointer
[official-gcc.git] / gcc / ada / ChangeLog
blob0d9014ae51fa88fa8f3168657a53d8f3ca74d639
1 2024-04-15  Piotr Trojanek  <trojanek@adacore.com>
3         * doc/gnat_rm/implementation_defined_aspects.rst
4         (Exceptional_Cases): Add description for aspect.
5         * doc/gnat_rm/implementation_defined_pragmas.rst
6         (Exceptional_Cases): Add description for pragma.
7         * gnat_rm.texi: Regenerate.
8         * gnat_ugn.texi: Regenerate.
10 2024-03-07  Eric Botcazou  <ebotcazou@adacore.com>
12         PR ada/113979
13         * exp_ch4.adb (Expand_N_Allocator): In the subtype indication case,
14         call Apply_Predicate_Check on the resulting access value if needed.
16 2024-02-26  Eric Botcazou  <ebotcazou@adacore.com>
18         PR ada/113893
19         * exp_ch7.adb (Build_Anonymous_Master): Do not build the master
20         for a local designated type.
21         * exp_util.adb (Build_Allocate_Deallocate_Proc): Force Needs_Fin
22         to false if no finalization master is attached to an access type
23         and assert that it is anonymous in this case.
24         * sem_res.adb (Resolve_Allocator): Mention that the object might
25         not be finalized at all in the warning given when the type is an
26         anonymous access-to-controlled type.
28 2024-01-23  Ronan Desplanques  <desplanques@adacore.com>
30         * gnatvsn.ads: Update year.
32 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
34         * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use the
35         TYPE_CANONICAL of types when it comes to aliasing.
36         * gcc-interface/utils.cc (relate_alias_sets): Likewise.
38 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
40         * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use a
41         separate FLD local variable to hold the first field of the fat
42         pointer type being built.
43         * gcc-interface/gigi.h (relate_alias_sets): Remove GNU_ prefix on
44         the first two parameters.
45         * gcc-interface/utils.cc (relate_alias_sets): Likewise and adjust.
47 2024-01-09  Viljar Indus  <indus@adacore.com>
49         * sem_attr.adb: avoid marking a use of the Address attribute
50         as a modification of its prefix.
52 2024-01-09  Gary Dismukes  <dismukes@adacore.com>
54         * exp_aggr.adb (Expand_Container_Aggregate): Change "not Present"
55         tests to tests using "No" (in two places).
57 2024-01-09  Bob Duff  <duff@adacore.com>
59         * sem_ch12.adb (Instantiate_Type): Make the relevant error message
60         conditional upon "Ekind (A_Gen_T) /= E_Incomplete_Type". Misc
61         cleanup.
63 2024-01-09  Gary Dismukes  <dismukes@adacore.com>
65         * exp_aggr.adb (Expand_Container_Aggregate): Add code to determine
66         whether the aggregate is an indexed aggregate, setting a flag
67         (Is_Indexed_Aggregate), which is tested to have proper separation
68         of treatment for the Add_Unnamed
69         (for positional aggregates) and New_Indexed (for indexed
70         aggregates) cases. In the code generating associations for indexed
71         aggregates, remove the code for Expressions cases entirely, since
72         the code for indexed aggregates is governed by the presence of
73         Component_Associations, and add an assertion that Expressions must
74         be Empty. Also, exclude empty aggregates from entering that code.
76 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
78         * rtsfind.ads (RE_Id): Remove RE_Attach.
79         (RE_Unit_Table): Likewise.
80         * libgnat/s-finmas.ads (Attach): Delete.
81         * libgnat/s-finmas.adb (Attach): Likewise.
83 2024-01-09  Tucker Taft  <taft@adacore.com>
85         * pprint.adb (List_Name): Check for "Box_Present" when displaying
86         a list, and emit "<>" if returns True.
87         * sem_scil.adb (Check_SCIL_Node): Handle case when the type of a
88         parameter is from a package that was mentioned in a limited with
89         clause, and make no further checks, since this check routine does
90         not have all the logic to check such a usage.
92 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
94         * freeze.adb (Freeze_Expression.Has_Decl_In_List): Deal specifically
95         with itypes that are class-wide subtypes.
97 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
99         * libgnat/s-atopri.ads (Atomic_Store): New generic procedure.
100         (Atomic_Store_8): New instantiated procedure.
101         (Atomic_Store_16): Likewise.
102         (Atomic_Store_32): Likewise.
103         (Atomic_Store_64): Likewise.
104         * libgnat/s-atopri__32.ads (Atomic_Store): New generic procedure.
105         (Atomic_Store_8): New instantiated procedure.
106         (Atomic_Store_16): Likewise.
107         (Atomic_Store_32): Likewise.
108         * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Implement the
109         support for __atomic_store_n and __sync_bool_compare_and_swap_n.
110         * gcc-interface/gigi.h (list_second): New inline function.
112 2024-01-09  Javier Miranda  <miranda@adacore.com>
114         * sem_ch6.adb (Analyze_Subprogram_Specification): Do not replace
115         the type of the formals with its corresponding record in
116         init-procs.
117         * sem_ch9.adb (Analyze_Requeue): Add missing support to requeue to
118         a procedure that denotes a renaming of an entry.
120 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
122         * exp_util.adb (Possible_Side_Effect_In_SPARK): Refine handling of
123         itype declarations.
125 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
127         * sem_ch6.adb (Analyze_Subprogram_Specification): Set Is_Inlined
128         flag by default in GNATprove mode.
129         * sem_res.adb (Resolve_Call): Only look at flag which is cleared
130         when inlined subprogram is detected to be recursive.
132 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
134         * inline.adb (Establish_Actual_Mapping_For_Inlined_Call):
135         Remove detection of recursive calls.
137 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
139         * inline.adb (Cannot_Inline): Cleanup use of 'Length; remove
140         dead code.
142 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
144         * sem_aggr.adb (Resolve_Container_Aggregate): Use "No".
145         * sem_ch8.adb (Find_Direct_Name): Likewise.
147 2024-01-09  Steve Baird  <baird@adacore.com>
149         * sem_util.adb (Enclosing_Declaration): Instead of returning a
150         subprogram specification node, return its parent (which is
151         presumably a subprogram declaration).
152         * contracts.adb (Insert_Stable_Property_Check): Remove code
153         formerly needed to compensate for incorrect behavior of
154         Sem_Util.Enclosing_Declaration.
155         * exp_attr.adb (In_Available_Context): Remove code formerly needed
156         to compensate for incorrect behavior of
157         Sem_Util.Enclosing_Declaration.
158         * sem_ch8.adb (Is_Actual_Subp_Of_Inst): Remove code formerly
159         needed to compensate for incorrect behavior of
160         Sem_Util.Enclosing_Declaration.
162 2024-01-09  Steve Baird  <baird@adacore.com>
164         * sem_ch8.adb (Check_Constrained_Object): Before updating the
165         subtype mark of an object renaming declaration by calling Rewrite,
166         first check whether the destination of the Rewrite call exists.
167         * atree.adb (Copy_Slots): Return without performing any updates if
168         Destination equals Empty or Error, or if Source equals Empty. Any
169         of those conditions indicates an error case.
170         * sem_ch12.adb (Analyze_Formal_Derived_Type): Avoid cascading
171         errors.
172         * sem_ch3.adb (Analyze_Number_Declaration): In an error case, do
173         not pass Error as destination in a call to Rewrite.
174         (Find_Type_Of_Subtype_Indic): In an error case, do not pass Error
175         or Empty as destination in a call to Rewrite.
177 2024-01-09  Joffrey Huguet  <huguet@adacore.com>
179         * libgnat/i-cstrin.ads (Update): Fix precondition.
181 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
183         * sem_aggr.adb (Resolve_Extension_Aggregate): Remove the unreachable
184         call to Transform_BIP_Assignment as well as the procedure.
186 2024-01-09  Bob Duff  <duff@adacore.com>
188         * lib-xref.adb (Generate_Reference): Do not count it as a read
189         reference if we're calling a TSS.
191 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
193         * doc/gnat_rm/implementation_defined_aspects.rst,
194         doc/gnat_rm/implementation_defined_pragmas.rst: Add sections for
195         Always_Terminates.
196         * gnat-style.texi: Regenerate.
197         * gnat_rm.texi: Regenerate.
198         * gnat_ugn.texi: Regenerate.
200 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
202         PR ada/78207
203         * libgnat/g-regexp.ads: Fix outdated comment.
205 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
207         PR ada/112781
208         * exp_ch6.ads (Is_Build_In_Place_Function): Adjust description.
209         * exp_ch6.adb (Is_True_Build_In_Place_Function_Call): Delete.
210         (Is_Function_Call_With_BIP_Formals): New predicate.
211         (Is_Build_In_Place_Function_Call): Restore original semantics.
212         (Expand_Call_Helper): Adjust conditions guarding the calls to
213         Add_Dummy_Build_In_Place_Actuals to above renaming.
214         (Expand_N_Extended_Return_Statement): Adjust to above renaming.
215         (Expand_Simple_Function_Return): Likewise.  Move the assertion
216         to after the transformation into an extended return statement.
217         (Make_Build_In_Place_Call_In_Allocator): Remove unreachable code.
218         (Make_Build_In_Place_Call_In_Assignment): Likewise.
220 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
222         PR ada/112781
223         * sem_ch12.adb (Instantiate_Type): Use Etype instead of Base_Type
224         consistently to retrieve the ancestor for a derived type.
225         * sem_ch4.adb (Analyze_Explicit_Dereference): Test Is_Access_Type
226         consistently before accessing Designated_Type.
228 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
230         * gcc-interface/utils2.cc (build_binary_op) <EQ_EXPR>: Relax
231         assertion for regular pointer types.
233 2024-01-04  David Malcolm  <dmalcolm@redhat.com>
235         * gcc-interface/lang.opt.urls: New file, autogenerated by
236         regenerate-opt-urls.py.
238 2024-01-03  Jakub Jelinek  <jakub@redhat.com>
240         * gnat_ugn.texi: Bump @copying's copyright year.
241         * gnat_rm.texi: Likewise.
244 Copyright (C) 2024 Free Software Foundation, Inc.
246 Copying and distribution of this file, with or without modification,
247 are permitted in any medium without royalty provided the copyright
248 notice and this notice are preserved.