]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ada/ChangeLog
analyzer: make use of may_be_aliased in alias detection [PR103546]
[thirdparty/gcc.git] / gcc / ada / ChangeLog
CommitLineData
0fbefa25
GA
12022-01-05 Steve Baird <baird@adacore.com>
2
3 * exp_ch5.adb (Finish_Binding_Object_Declaration): Fix a bug
4 that was introduced in the previous commit. The previous
5 version initialized a Boolean constant Declare_Copy before the
6 variable Decl had been initialized properly.
7
82022-01-05 Piotr Trojanek <trojanek@adacore.com>
9
10 * sem_prag.adb (Adjust_External_Name_Case): Use membership test.
11
122022-01-05 Piotr Trojanek <trojanek@adacore.com>
13
14 * exp_ch3.adb (Make_Controlling_Function_Wrappers): For
15 GNATprove build the wrapper as an expression function.
16
172022-01-05 Piotr Trojanek <trojanek@adacore.com>
18
19 * exp_ch3.ads (Make_Controlling_Function_Wrappers): Move
20 declaration from body to spec, so it can be called by
21 SPARK-specific expansion.
22 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Likewise.
23 * exp_spark.adb (SPARK_Freeze_Type): Enable expansion of
24 wrappers for function with controlling result types.
25
262022-01-05 Piotr Trojanek <trojanek@adacore.com>
27
28 * exp_dbug.adb, sem_dim.adb: Replace Add_Str_To_Name_Buffer with
29 Add_Char_To_Name_Buffer.
30
312022-01-05 Piotr Trojanek <trojanek@adacore.com>
32
33 * gnatls.adb (Gnatls): Use Name_Find function.
34 * targparm.adb (Get_Target_Parameters): Likewise.
35
362022-01-05 Bob Duff <duff@adacore.com>
37
38 * repinfo.adb (List_Entities): The code was assuming that if we
39 encounter a package in the current scope, then it must be
40 a (physically) nested package. That was wrong, because it could
41 be a child package. Avoid recursing into child packages; they
42 have not been annotated with representation information, and
43 -gnatR2 queries that information.
44
452022-01-05 Marc Poulhiès <poulhies@adacore.com>
46
47 * libgnat/s-sopco3.ads, libgnat/s-sopco3.adb: Remove.
48 * libgnat/s-sopco4.ads, libgnat/s-sopco4.adb: Remove.
49 * libgnat/s-sopco5.ads, libgnat/s-sopco5.adb: Remove.
50 * libgnat/s-strops.ads, libgnat/s-strops.adb: Remove.
51 * Makefile.rtl (ADA_EXCLUDE_SRCS): Remove occurences of removed
52 units.
53 * gcc-interface/Make-lang.in (ada/sdefault.o): Remove
54 dependencies on removed units.
55 (GNATBIND_OBJS): Remove occurences of removed units.
56
572022-01-05 Piotr Trojanek <trojanek@adacore.com>
58
59 * exp_ch3.adb (Build_Dcheck_Function): Remove extra whitespace.
60 * libgnarl/s-taskin.adb (Initialize_ATCB): Likewise.
61
622022-01-05 Piotr Trojanek <trojanek@adacore.com>
63
64 * exp_attr.adb (Build_Array_VS_Func): Remove explicit "IN" in
65 spec of the generated array validation function; it was
66 redundant, just like it would be in a user-written code.
67
682022-01-05 Piotr Trojanek <trojanek@adacore.com>
69
70 * exp_ch4.adb (Expand_N_Op_Ne): Fix whitespace.
71 * sem_dim.adb (Expand_Put_Call_With_Symbol): Likewise.
72 (Reduce): Likewise.
73
742022-01-05 Piotr Trojanek <trojanek@adacore.com>
75
76 * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Fix whitespace.
77 * libgnat/a-cofuve.ads (Add): Likewise.
78 * sem_ch3.adb (Build_Access_Subprogram_Wrapper): Likewise.
79
802022-01-05 Piotr Trojanek <trojanek@adacore.com>
81
82 * exp_ch3.adb (Make_Eq_Body, Make_Neq_Body,
83 Make_Predefined_Primitive_Eq_Spec,
84 Make_Predefined_Primitive_Specs): Fix whitespace.
85
862022-01-05 Etienne Servais <servais@adacore.com>
87
88 * sem_ch3.adb (Analyze_Component_Declaration): Rework condition
89 to build subtypes.
90 (Analyze_Object_Declaration): Likewise.
91 (Should_Build_Subtype): New.
92
932022-01-05 Yannick Moy <moy@adacore.com>
94
95 * libgnat/s-arit128.adb: Mark in SPARK.
96 * libgnat/s-arit128.ads: Add functional contracts.
97
982022-01-05 Piotr Trojanek <trojanek@adacore.com>
99
100 * sem_util.adb (String_From_Numeric_Literal): Simplify using
101 membership tests and ranges; fix whitespace.
102
1032022-01-05 Yannick Moy <moy@adacore.com>
104
105 * libgnat/s-expint.ads: Mark in SPARK. Adapt to change to
106 package.
107 * libgnat/s-explli.ads: Likewise.
108 * libgnat/s-expllli.ads: Likewise.
109 * libgnat/s-expont.adb: Add lemmas and ghost code.
110 * libgnat/s-expont.ads: Add functional contract.
111
1122022-01-05 Piotr Trojanek <trojanek@adacore.com>
113
114 * exp_disp.adb (Gen_Parameters_Profile): Remove redundant guard.
115
1162022-01-05 Claire Dross <dross@adacore.com>
117
118 * libgnat/s-valuti.ads (Starts_As_Exponent_Format_Ghost): Ghost
119 function to determine if a string is recognized as something
120 which might be an exponent.
121 (Is_Opt_Exponent_Format_Ghost): Ghost function to determine if a
122 string has the correct format for an optional exponent.
123 (Scan_Exponent): Use ghost functions to factorize contracts.
124
1252022-01-05 Bob Duff <duff@adacore.com>
126
127 * exp_util.ads (Get_Current_Value_Condition): Belt: Add a
128 postcondition that Val /= Var.
129 * sem_util.adb (Known_Null): Suspenders: Raise Program_Error if
130 Get_Current_Value_Condition returned the same value. This will
131 be enabled even without assertions, because infinite recursion
132 is a nuisance -- better to crash if this bug ever occurs.
133
1342022-01-05 Piotr Trojanek <trojanek@adacore.com>
135
136 * exp_ch3.adb (Make_Null_Procedure_Specs): Simplify by reusing
137 Copy_Subprogram_Spec.
138 * sem_util.ads (Copy_Subprogram_Spec): Add New_Sloc parameter.
139 * sem_util.adb (Copy_Subprogram_Spec): Pass New_Sloc to
140 New_Copy_Tree.
141
1422022-01-05 Yannick Moy <moy@adacore.com>
143
144 * libgnat/s-exnint.ads: Mark in SPARK. Adapt to change to
145 package.
146 * libgnat/s-exnlli.ads: Likewise.
147 * libgnat/s-exnllli.ads: Likewise.
148 * libgnat/s-exponn.adb: Add lemmas and ghost code. Secial case
149 value zero as Left or Right to simplify proof.
150 * libgnat/s-exponn.ads: Transform the generic function into a
151 generic package with a function inside. Add a functional
152 contract.
153
1542022-01-05 Piotr Trojanek <trojanek@adacore.com>
155
156 * sem_ch12.adb (Instantiate_Formal_Subprogram): Remove redundant
157 call to Set_Defining_Unit_Name; a similar call is done few lines
158 below.
159
1602022-01-05 Piotr Trojanek <trojanek@adacore.com>
161
162 * exp_ch3.adb (Make_Controlling_Function_Wrappers): Create
163 distinct copies of parameter lists for spec and body with
164 Copy_Parameter_List; cleanup.
165 (Make_Null_Procedure_Specs): Fix style in comments; remove a
166 potentially unnecessary initialization of a local variable.
167
1682022-01-05 Bob Duff <duff@adacore.com>
169
170 * einfo-utils.ads, einfo-utils.adb (Renamed_Entity Alias):
171 Change Node_Id to Entity_Id.
172
1732022-01-05 Piotr Trojanek <trojanek@adacore.com>
174
175 * sem_ch12.ads (Build_Function_Wrapper, Build_Operator_Wrapper):
176 Remove unreferenced spec.
177 * sem_ch12.adb (Build_Function_Wrapper, Build_Operator_Wrapper):
178 Remove dead bodies.
179
1802022-01-05 Yannick Moy <moy@adacore.com>
181
182 * libgnat/s-aridou.adb: Apply replacement.
183
1842022-01-05 Yannick Moy <moy@adacore.com>
185
186 * libgnat/s-aridou.adb (Lemma_Word_Commutation): Fix for
187 instances with other values of Single_Size.
188
1892022-01-05 Marc Poulhiès <poulhies@adacore.com>
190
191 * doc/gnat_rm/implementation_defined_pragmas.rst (Compiler_Unit)
192 (Compiler_Unit_Warning): Remove.
193 * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Regenerate.
194 * libgnat/g-dynhta.ads: Add comment indicating this unit is
195 built during stage1.
196 * libgnat/g-dyntab.ads: Likewise.
197 * libgnat/g-graphs.ads: Likewise.
198 * libgnat/g-lists.ads: Likewise.
199 * libgnat/g-sets.ads: Likewise.
200 * libgnat/gnat.ads: Likewise.
201 * libgnat/s-pehage.ads: Likewise.
202 * libgnat/s-resfil.ads: Likewise.
203 * libgnat/s-rident.ads: Likewise.
204 * libgnat/s-utf_32.ads: Likewise.
205 * errout.ads: Update comment.
206 * opt.ads (Opt): Remove Compiler_Unit.
207 * par-ch5.adb (All_Pragmas): Remove call to Check_Compiler_Unit.
208 * sem_prag.adb (Analyze_Pragma): Likewise.
209 * sem_ch4.adb (Non_Static_Choice_Error, Analyze_If_Expression)
210 (Analyze_Set_Membership, Record_Interp): Likewise.
211 * sem_ch11.adb (Analyze_Raise_Expression): Likewise.
212 * sem_ch6.adb: Remove Restric package reference.
213 (Analyze_Extended_Return_Statement): Remove call to
214 Check_Compiler_Unit.
215 * par-prag.adb (Process_Restrictions_Or_Restriction_Warnings):
216 Remove handling of Pragma_Compiler_Unit[_Warning}.
217 * restrict.adb (Check_Compiler_Unit): Remove both.
218 * restrict.ads: Likewise.
219 * snames.ads-tmpl (Pragma_Id): Remove
220 Pragma_Compiler_Unit[_Warning].
221 * libgnat/a-assert.ads: Remove pragma Compiler_Unit_Warning.
222 * libgnat/a-chlat1.ads: Likewise.
223 * libgnat/a-elchha.adb: Likewise.
224 * libgnat/a-elchha.ads: Likewise.
225 * libgnat/a-ioexce.ads: Likewise.
226 * libgnat/a-strhas.ads: Likewise.
227 * libgnat/g-byorma.adb: Likewise.
228 * libgnat/g-byorma.ads: Likewise.
229 * libgnat/g-dyntab.adb: Likewise.
230 * libgnat/g-heasor.ads: Likewise.
231 * libgnat/g-hesora.adb: Likewise.
232 * libgnat/g-hesora.ads: Likewise.
233 * libgnat/g-htable.adb: Likewise.
234 * libgnat/g-htable.ads: Likewise.
235 * libgnat/g-spchge.adb: Likewise.
236 * libgnat/g-spchge.ads: Likewise.
237 * libgnat/g-speche.adb: Likewise.
238 * libgnat/g-speche.ads: Likewise.
239 * libgnat/g-table.ads: Likewise.
240 * libgnat/g-u3spch.adb: Likewise.
241 * libgnat/g-u3spch.ads: Likewise.
242 * libgnat/interfac.ads: Likewise.
243 * libgnat/s-addope.adb: Likewise.
244 * libgnat/s-addope.ads: Likewise.
245 * libgnat/s-assert.adb: Likewise.
246 * libgnat/s-assert.ads: Likewise.
247 * libgnat/s-bitops.adb: Likewise.
248 * libgnat/s-bitops.ads: Likewise.
249 * libgnat/s-carun8.adb: Likewise.
250 * libgnat/s-carun8.ads: Likewise.
251 * libgnat/s-casuti.adb: Likewise.
252 * libgnat/s-casuti.ads: Likewise.
253 * libgnat/s-conca2.adb: Likewise.
254 * libgnat/s-conca2.ads: Likewise.
255 * libgnat/s-conca3.adb: Likewise.
256 * libgnat/s-conca3.ads: Likewise.
257 * libgnat/s-conca4.adb: Likewise.
258 * libgnat/s-conca4.ads: Likewise.
259 * libgnat/s-conca5.adb: Likewise.
260 * libgnat/s-conca5.ads: Likewise.
261 * libgnat/s-conca6.adb: Likewise.
262 * libgnat/s-conca6.ads: Likewise.
263 * libgnat/s-conca7.adb: Likewise.
264 * libgnat/s-conca7.ads: Likewise.
265 * libgnat/s-conca8.adb: Likewise.
266 * libgnat/s-conca8.ads: Likewise.
267 * libgnat/s-conca9.adb: Likewise.
268 * libgnat/s-conca9.ads: Likewise.
269 * libgnat/s-crc32.adb: Likewise.
270 * libgnat/s-crc32.ads: Likewise.
271 * libgnat/s-crtl.ads: Likewise.
272 * libgnat/s-excdeb.adb: Likewise.
273 * libgnat/s-excdeb.ads: Likewise.
274 * libgnat/s-except.ads: Likewise.
275 * libgnat/s-exctab.adb: Likewise.
276 * libgnat/s-exctab.ads: Likewise.
277 * libgnat/s-finmas.ads: Likewise.
278 * libgnat/s-htable.adb: Likewise.
279 * libgnat/s-htable.ads: Likewise.
280 * libgnat/s-mastop.adb: Likewise.
281 * libgnat/s-mastop.ads: Likewise.
282 * libgnat/s-memory.adb: Likewise.
283 * libgnat/s-memory.ads: Likewise.
284 * libgnat/s-os_lib.ads: Likewise.
285 * libgnat/s-parame.adb: Likewise.
286 * libgnat/s-parame.ads: Likewise.
287 * libgnat/s-parame__posix2008.ads: Likewise.
288 * libgnat/s-purexc.ads: Likewise.
289 * libgnat/s-resfil.adb: Likewise.
290 * libgnat/s-restri.adb: Likewise.
291 * libgnat/s-restri.ads: Likewise.
292 * libgnat/s-secsta.adb: Likewise.
293 * libgnat/s-secsta.ads: Likewise.
294 * libgnat/s-soflin.adb: Likewise.
295 * libgnat/s-soflin.ads: Likewise.
296 * libgnat/s-sopco3.adb: Likewise.
297 * libgnat/s-sopco3.ads: Likewise.
298 * libgnat/s-sopco4.adb: Likewise.
299 * libgnat/s-sopco4.ads: Likewise.
300 * libgnat/s-sopco5.adb: Likewise.
301 * libgnat/s-sopco5.ads: Likewise.
302 * libgnat/s-spsufi.ads: Likewise.
303 * libgnat/s-stache.adb: Likewise.
304 * libgnat/s-stache.ads: Likewise.
305 * libgnat/s-stalib.adb: Likewise.
306 * libgnat/s-stalib.ads: Likewise.
307 * libgnat/s-stoele.adb: Likewise.
308 * libgnat/s-stoele.ads: Likewise.
309 * libgnat/s-strcom.adb: Likewise.
310 * libgnat/s-strcom.ads: Likewise.
311 * libgnat/s-strhas.adb: Likewise.
312 * libgnat/s-string.adb: Likewise.
313 * libgnat/s-string.ads: Likewise.
314 * libgnat/s-strops.adb: Likewise.
315 * libgnat/s-strops.ads: Likewise.
316 * libgnat/s-ststop.adb: Likewise.
317 * libgnat/s-ststop.ads: Likewise.
318 * libgnat/s-traceb.adb: Likewise.
319 * libgnat/s-traceb.ads: Likewise.
320 * libgnat/s-traent.adb: Likewise.
321 * libgnat/s-traent.ads: Likewise.
322 * libgnat/s-utf_32.adb: Likewise.
323 * libgnat/s-unstyp.ads: Likewise.
324 * libgnat/s-wchcnv.adb: Likewise.
325 * libgnat/s-wchcnv.ads: Likewise.
326 * libgnat/s-wchcon.adb: Likewise.
327 * libgnat/s-wchcon.ads: Likewise.
328 * libgnat/s-wchjis.adb: Likewise.
329 * libgnat/s-wchjis.ads: Likewise.
330
3312022-01-05 Arnaud Charlet <charlet@adacore.com>
332
333 * osint.adb (File_Names_Equal): Declare To_Lower locally.
334 * osint.ads (Null_FD): New.
335 * fmap.adb, sinput-l.adb, targparm.adb: Adapt to changes above.
336 * switch-b.adb (Scan_Debug_Switches): Use Is_Regular_File to
337 simplify the bootstrap dependencies.
338
a4ae8c37
GA
3392022-01-03 Jakub Jelinek <jakub@redhat.com>
340
341 * gnat_ugn.texi: Bump @copying's copyright year.
342 * gnat_rm.texi: Likewise.
343
848830dc 344\f
6123f29a 345Copyright (C) 2022 Free Software Foundation, Inc.
848830dc
PMR
346
347Copying and distribution of this file, with or without modification,
348are permitted in any medium without royalty provided the copyright
349notice and this notice are preserved.