Disable tests for strdup/strndup on __hpux__
[official-gcc.git] / gcc / ada / ChangeLog
blob3ca92dc21762cfffaebcec86396cbfc1854e64e2
1 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
3         * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use the
4         TYPE_CANONICAL of types when it comes to aliasing.
5         * gcc-interface/utils.cc (relate_alias_sets): Likewise.
7 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
9         * gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Array_Type>: Use a
10         separate FLD local variable to hold the first field of the fat
11         pointer type being built.
12         * gcc-interface/gigi.h (relate_alias_sets): Remove GNU_ prefix on
13         the first two parameters.
14         * gcc-interface/utils.cc (relate_alias_sets): Likewise and adjust.
16 2024-01-09  Viljar Indus  <indus@adacore.com>
18         * sem_attr.adb: avoid marking a use of the Address attribute
19         as a modification of its prefix.
21 2024-01-09  Gary Dismukes  <dismukes@adacore.com>
23         * exp_aggr.adb (Expand_Container_Aggregate): Change "not Present"
24         tests to tests using "No" (in two places).
26 2024-01-09  Bob Duff  <duff@adacore.com>
28         * sem_ch12.adb (Instantiate_Type): Make the relevant error message
29         conditional upon "Ekind (A_Gen_T) /= E_Incomplete_Type". Misc
30         cleanup.
32 2024-01-09  Gary Dismukes  <dismukes@adacore.com>
34         * exp_aggr.adb (Expand_Container_Aggregate): Add code to determine
35         whether the aggregate is an indexed aggregate, setting a flag
36         (Is_Indexed_Aggregate), which is tested to have proper separation
37         of treatment for the Add_Unnamed
38         (for positional aggregates) and New_Indexed (for indexed
39         aggregates) cases. In the code generating associations for indexed
40         aggregates, remove the code for Expressions cases entirely, since
41         the code for indexed aggregates is governed by the presence of
42         Component_Associations, and add an assertion that Expressions must
43         be Empty. Also, exclude empty aggregates from entering that code.
45 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
47         * rtsfind.ads (RE_Id): Remove RE_Attach.
48         (RE_Unit_Table): Likewise.
49         * libgnat/s-finmas.ads (Attach): Delete.
50         * libgnat/s-finmas.adb (Attach): Likewise.
52 2024-01-09  Tucker Taft  <taft@adacore.com>
54         * pprint.adb (List_Name): Check for "Box_Present" when displaying
55         a list, and emit "<>" if returns True.
56         * sem_scil.adb (Check_SCIL_Node): Handle case when the type of a
57         parameter is from a package that was mentioned in a limited with
58         clause, and make no further checks, since this check routine does
59         not have all the logic to check such a usage.
61 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
63         * freeze.adb (Freeze_Expression.Has_Decl_In_List): Deal specifically
64         with itypes that are class-wide subtypes.
66 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
68         * libgnat/s-atopri.ads (Atomic_Store): New generic procedure.
69         (Atomic_Store_8): New instantiated procedure.
70         (Atomic_Store_16): Likewise.
71         (Atomic_Store_32): Likewise.
72         (Atomic_Store_64): Likewise.
73         * libgnat/s-atopri__32.ads (Atomic_Store): New generic procedure.
74         (Atomic_Store_8): New instantiated procedure.
75         (Atomic_Store_16): Likewise.
76         (Atomic_Store_32): Likewise.
77         * gcc-interface/decl.cc (gnat_to_gnu_subprog_type): Implement the
78         support for __atomic_store_n and __sync_bool_compare_and_swap_n.
79         * gcc-interface/gigi.h (list_second): New inline function.
81 2024-01-09  Javier Miranda  <miranda@adacore.com>
83         * sem_ch6.adb (Analyze_Subprogram_Specification): Do not replace
84         the type of the formals with its corresponding record in
85         init-procs.
86         * sem_ch9.adb (Analyze_Requeue): Add missing support to requeue to
87         a procedure that denotes a renaming of an entry.
89 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
91         * exp_util.adb (Possible_Side_Effect_In_SPARK): Refine handling of
92         itype declarations.
94 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
96         * sem_ch6.adb (Analyze_Subprogram_Specification): Set Is_Inlined
97         flag by default in GNATprove mode.
98         * sem_res.adb (Resolve_Call): Only look at flag which is cleared
99         when inlined subprogram is detected to be recursive.
101 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
103         * inline.adb (Establish_Actual_Mapping_For_Inlined_Call):
104         Remove detection of recursive calls.
106 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
108         * inline.adb (Cannot_Inline): Cleanup use of 'Length; remove
109         dead code.
111 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
113         * sem_aggr.adb (Resolve_Container_Aggregate): Use "No".
114         * sem_ch8.adb (Find_Direct_Name): Likewise.
116 2024-01-09  Steve Baird  <baird@adacore.com>
118         * sem_util.adb (Enclosing_Declaration): Instead of returning a
119         subprogram specification node, return its parent (which is
120         presumably a subprogram declaration).
121         * contracts.adb (Insert_Stable_Property_Check): Remove code
122         formerly needed to compensate for incorrect behavior of
123         Sem_Util.Enclosing_Declaration.
124         * exp_attr.adb (In_Available_Context): Remove code formerly needed
125         to compensate for incorrect behavior of
126         Sem_Util.Enclosing_Declaration.
127         * sem_ch8.adb (Is_Actual_Subp_Of_Inst): Remove code formerly
128         needed to compensate for incorrect behavior of
129         Sem_Util.Enclosing_Declaration.
131 2024-01-09  Steve Baird  <baird@adacore.com>
133         * sem_ch8.adb (Check_Constrained_Object): Before updating the
134         subtype mark of an object renaming declaration by calling Rewrite,
135         first check whether the destination of the Rewrite call exists.
136         * atree.adb (Copy_Slots): Return without performing any updates if
137         Destination equals Empty or Error, or if Source equals Empty. Any
138         of those conditions indicates an error case.
139         * sem_ch12.adb (Analyze_Formal_Derived_Type): Avoid cascading
140         errors.
141         * sem_ch3.adb (Analyze_Number_Declaration): In an error case, do
142         not pass Error as destination in a call to Rewrite.
143         (Find_Type_Of_Subtype_Indic): In an error case, do not pass Error
144         or Empty as destination in a call to Rewrite.
146 2024-01-09  Joffrey Huguet  <huguet@adacore.com>
148         * libgnat/i-cstrin.ads (Update): Fix precondition.
150 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
152         * sem_aggr.adb (Resolve_Extension_Aggregate): Remove the unreachable
153         call to Transform_BIP_Assignment as well as the procedure.
155 2024-01-09  Bob Duff  <duff@adacore.com>
157         * lib-xref.adb (Generate_Reference): Do not count it as a read
158         reference if we're calling a TSS.
160 2024-01-09  Piotr Trojanek  <trojanek@adacore.com>
162         * doc/gnat_rm/implementation_defined_aspects.rst,
163         doc/gnat_rm/implementation_defined_pragmas.rst: Add sections for
164         Always_Terminates.
165         * gnat-style.texi: Regenerate.
166         * gnat_rm.texi: Regenerate.
167         * gnat_ugn.texi: Regenerate.
169 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
171         PR ada/78207
172         * libgnat/g-regexp.ads: Fix outdated comment.
174 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
176         PR ada/112781
177         * exp_ch6.ads (Is_Build_In_Place_Function): Adjust description.
178         * exp_ch6.adb (Is_True_Build_In_Place_Function_Call): Delete.
179         (Is_Function_Call_With_BIP_Formals): New predicate.
180         (Is_Build_In_Place_Function_Call): Restore original semantics.
181         (Expand_Call_Helper): Adjust conditions guarding the calls to
182         Add_Dummy_Build_In_Place_Actuals to above renaming.
183         (Expand_N_Extended_Return_Statement): Adjust to above renaming.
184         (Expand_Simple_Function_Return): Likewise.  Move the assertion
185         to after the transformation into an extended return statement.
186         (Make_Build_In_Place_Call_In_Allocator): Remove unreachable code.
187         (Make_Build_In_Place_Call_In_Assignment): Likewise.
189 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
191         PR ada/112781
192         * sem_ch12.adb (Instantiate_Type): Use Etype instead of Base_Type
193         consistently to retrieve the ancestor for a derived type.
194         * sem_ch4.adb (Analyze_Explicit_Dereference): Test Is_Access_Type
195         consistently before accessing Designated_Type.
197 2024-01-09  Eric Botcazou  <ebotcazou@adacore.com>
199         * gcc-interface/utils2.cc (build_binary_op) <EQ_EXPR>: Relax
200         assertion for regular pointer types.
202 2024-01-04  David Malcolm  <dmalcolm@redhat.com>
204         * gcc-interface/lang.opt.urls: New file, autogenerated by
205         regenerate-opt-urls.py.
207 2024-01-03  Jakub Jelinek  <jakub@redhat.com>
209         * gnat_ugn.texi: Bump @copying's copyright year.
210         * gnat_rm.texi: Likewise.
213 Copyright (C) 2024 Free Software Foundation, Inc.
215 Copying and distribution of this file, with or without modification,
216 are permitted in any medium without royalty provided the copyright
217 notice and this notice are preserved.