]>
Commit | Line | Data |
---|---|---|
f1f41a6c | 1 | 2012-11-16 Diego Novillo <dnovillo@google.com> |
2 | ||
3 | Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec) | |
4 | ||
5 | * gcc-interface/decl.c: Use new vec API in vec.h. | |
6 | * gcc-interface/gigi.h: Likewise. | |
7 | * gcc-interface/trans.c: Likewise. | |
8 | * gcc-interface/utils.c: Likewise. | |
9 | * gcc-interface/utils2.c: Likewise. | |
10 | ||
fdff8c76 | 11 | 2012-11-09 Eric Botcazou <ebotcazou@adacore.com> |
12 | ||
13 | PR other/52438 | |
14 | * s-taspri-lynxos.ads: Delete. | |
15 | * s-osinte-kfreebsd-gnu.ads: Change license to GPL V3+. | |
16 | * s-tpopsp-rtems.adb: Likewise. | |
17 | * s-osinte-rtems.adb: Likewise. | |
18 | ||
62bd987f | 19 | 2012-11-09 Eric Botcazou <ebotcazou@adacore.com> |
20 | ||
21 | * gcc-interface/trans.c (gnat_to_gnu) <N_Subprogram_Body_Stub>: Deal | |
22 | with a missing library unit instead of calling gnat_to_gnu on Emtpy. | |
23 | Remove last bits of support for SCIL nodes. Add cases for nodes that | |
24 | should only be present when annotating types. Add default abort. | |
25 | ||
52dae6f4 | 26 | 2012-11-06 Eric Botcazou <ebotcazou@adacore.com> |
27 | ||
28 | * gcc-interface/Makefile.in: Revert most changes. | |
29 | * gcc-interface/Make-lang.in (gnatlib): Remove ada/s-oscons.ads. | |
30 | ||
ac6c6457 | 31 | 2012-11-06 Arnaud Charlet <charlet@adacore.com> |
32 | ||
33 | * gcc-interface/Makefile.in (copy-s-oscons): New target. | |
34 | ||
7a5ee35f | 35 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
36 | ||
37 | * err_vars.ads, atree.ads: Minor reformatting. | |
38 | ||
39 | 2012-11-06 Arnaud Charlet <charlet@adacore.com> | |
40 | ||
41 | * gcc-interface/Make-lang.in: Update dependencies. | |
42 | * gcc-interface/Makefile.in: Add runtime pairs for Android. | |
43 | Rework handling of s-oscons.ads. | |
44 | * s-osinte-android.ads, s-osinte-android.adb: New files. | |
45 | ||
46 | 2012-11-06 Tristan Gingold <gingold@adacore.com> | |
47 | ||
48 | * gcc-interface/trans.c (gnat_to_gnu): For N_Real_Literal, create the | |
49 | binary representation of vax floats. | |
50 | ||
dba36b60 | 51 | 2012-11-06 Tristan Gingold <gingold@adacore.com> |
52 | ||
53 | * sem_ch9.adb (Analyze_Protected_Type_Declaration): Fix thinko | |
54 | in previous commit. | |
55 | ||
56 | 2012-11-06 Jose Ruiz <ruiz@adacore.com> | |
57 | ||
58 | * ali.adb (Scan_ALI): Fix parsing mechanism for -fstack-check. | |
59 | ||
60 | 2012-11-06 Thomas Quinot <quinot@adacore.com> | |
61 | ||
62 | * atree.adb, atree.ads, einfo.adb, errout.adb, errout.ads, erroutc.adb, | |
63 | erroutc.ads, errutil.adb, errutil.ads, err_vars.ads, expander.adb, | |
64 | exp_ch13.adb, exp_ch2.adb, exp_ch6.adb, exp_dist.adb, fe.h, | |
65 | fmap.adb, fmap.ads, gprep.adb, makeutl.adb, osint.adb, osint.ads, | |
66 | par_sco.adb, prepcomp.adb, prj-part.adb, prj-proc.adb, scng.adb, | |
67 | sdefault.ads, sem_ch10.adb, sem_ch13.adb, sem_ch2.adb, sem_ch3.adb, | |
68 | sem_ch4.adb, sem_ch5.adb, sem_dim.adb, sem_elab.adb, sem_eval.adb, | |
69 | sem_intr.adb, sem_prag.adb, sem_type.adb, sem_warn.adb, stylesw.adb, | |
70 | stylesw.ads, targparm.adb, targparm.ads (Cascaded_Error): Rename to | |
71 | more descriptive name 'Check_Error_Detected'. Add calls to | |
72 | Check_Error_Detected at places where semantic analysis is abandoned | |
73 | assuming a previously detected error. | |
74 | ||
4e72eb91 | 75 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
76 | ||
77 | * exp_ch4.adb: Minor comment change. | |
78 | ||
79 | 2012-11-06 Robert Dewar <dewar@adacore.com> | |
80 | ||
81 | * gnat_ugn.texi: Extensive revision of documentation of overflow | |
82 | checking. | |
83 | * vms_data.ads: Overflow check numbers must be in range 1-3, | |
84 | not 0-3. | |
85 | ||
86 | 2012-11-06 Tristan Gingold <gingold@adacore.com> | |
87 | ||
88 | * sem_ch9.adb (Analyze_Protected_Type_Declaration): Emit a | |
89 | warning if pragma Priority is used in presence of an interrupt | |
90 | handler. | |
91 | ||
0df9d43f | 92 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
93 | ||
94 | * checks.ads, checks.adb, exp_ch4.adb: Minor changes throughout for | |
95 | new overflow checking. | |
96 | * exp_util.adb (Insert_Actions): Remove special casing of | |
97 | Overflow_Check. | |
98 | * gnat1drv.adb (Adjust_Global_Switches): Fixes for new handling | |
99 | of overflow checks. | |
100 | * sem.adb (Analyze): Remove special casing of Overflow_Check | |
101 | (Analyze_List): ditto. | |
102 | * sem_prag.adb (Analyze_Pragma, case Overflow_Checks): Remove | |
103 | SUPPRESSED and change CHECKED to STRICT. | |
104 | * sem_res.adb (Analyze_And_Resolve): No longer treat | |
105 | Overflow_Check specially. | |
106 | (Preanalyze_And_Resolve): ditto. | |
107 | (Resolve): ditto. | |
108 | * snames.ads-tmpl: Replace Name_Checked by Name_Strict. | |
109 | * switch-c.adb (Get_Overflow_Mode): Eliminate 0 setting, | |
110 | CHECKED => STRICT. | |
111 | * types.ads (Overflow_Check_Type): Remove Suppressed, change | |
112 | Checked to Strict (Suppress_Record): Overflow check controlled | |
113 | by Suppress array. | |
114 | ||
d849845a | 115 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> |
116 | ||
117 | * sem_res.adb (Preanalyze_And_Resolve): In Alfa mode do not | |
118 | disable checks, so that flags can be properly set on expressions | |
119 | that are not further expanded. | |
120 | ||
704b4aa5 | 121 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
122 | ||
123 | * exp_attr.adb, sem_attr.adb: Minor reformatting. | |
124 | ||
aae8e592 | 125 | 2012-11-06 Gary Dismukes <dismukes@adacore.com> |
126 | ||
127 | * exp_attr.adb (Expand_N_Attribute_Reference): Apply a predicate | |
128 | check when evaluating the attribute Valid, and issue a warning | |
129 | about infinite recursion when the check occurs within the | |
130 | predicate function of the prefix's subtype. | |
131 | * exp_ch4.adb (Expand_N_In): Remove test for Is_Discrete_Type | |
132 | when we're checking that there's no predicate check function as a | |
133 | condition for substituting a Valid check for a scalar membership | |
134 | test (substitution should be suppressed for any kind of scalar | |
135 | subtype with a predicate check). Also, don't emit a predicate | |
136 | check when the right operand is a range. | |
137 | ||
f6aa36b9 | 138 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
139 | ||
140 | * par_sco.adb, bindgen.adb, exp_vfpt.adb, exp_vfpt.ads, exp_ch2.adb, | |
141 | errout.adb, sem_ch8.adb: Minor reformatting. | |
142 | ||
143 | 2012-11-06 Hristian Kirtchev <kirtchev@adacore.com> | |
144 | ||
145 | * einfo.adb: Include Loop_Entry_Attributes to the list of | |
146 | Node/List/Elist10 usage. | |
147 | (Loop_Entry_Attributes): New routine. | |
148 | (Set_Loop_Entry_Attributes): New routine. | |
149 | (Write_Field10_Name): Add an output string for Loop_Entry_Attributes. | |
150 | * einfo.ads: Define new attribute Loop_Entry_Attributes along | |
151 | with its usage in nodes. | |
152 | (Loop_Entry_Attributes): New routine and dedicated pragma Inline. | |
153 | (Set_Loop_Entry_Attributes): New routine and dedicated pragma Inline. | |
154 | * exp_attr.adb (Expand_N_Attribute_Reference): Do not expand | |
155 | Attribute_Loop_Entry here. | |
156 | * exp_ch5.adb: Add with and use clause for Elists; | |
157 | (Expand_Loop_Entry_Attributes): New routine. | |
158 | (Expand_N_Loop_Statement): Add a call to Expand_Loop_Entry_Attributes. | |
159 | * exp_prag.adb (Expand_Pragma_Loop_Assertion): Specialize the | |
160 | search to include multiple nested loops produced by the expansion | |
161 | of Ada 2012 array iterator. | |
162 | * sem_attr.adb: Add with and use clause for Elists. | |
163 | (Analyze_Attribute): Check the legality of attribute Loop_Entry. | |
164 | (Resolve_Attribute): Nothing to do for Loop_Entry. | |
165 | (S14_Attribute): New routine. | |
166 | * snames.ads-tmpl: Add a comment on entries marked with | |
167 | HiLite. Add new name Name_Loop_Entry. Add new attribute | |
168 | Attribute_Loop_Entry. | |
169 | ||
a4307c4a | 170 | 2012-11-06 Geert Bosch <bosch@adacore.com> |
171 | ||
172 | * eval_fat.adb (Machine, Succ): Fix front end to support static | |
173 | evaluation of attributes on targets with both VAX and IEEE float. | |
174 | * sem_util.ads, sem_util.adb (Has_Denormals, Has_Signed_Zeros): | |
175 | New type-specific functions. Previously we used Denorm_On_Target | |
176 | and Signed_Zeros_On_Target directly, but that doesn't work well | |
177 | for OpenVMS where a single target supports both floating point | |
178 | with and without signed zeros. | |
179 | * sem_attr.adb (Attribute_Denorm, Attribute_Signed_Zeros): Use | |
180 | new Has_Denormals and Has_Signed_Zeros functions to support both | |
181 | IEEE and VAX floating point on a single target. | |
182 | ||
183 | 2012-11-06 Tristan Gingold <gingold@adacore.com> | |
184 | ||
185 | * bindgen.adb (System_Interrupts_Used): New variable. | |
186 | (Gen_Adainit): Declare and call | |
187 | Install_Restricted_Handlers_Sequential if System.Interrupts is | |
188 | used when elaboration policy is sequential. | |
189 | ||
190 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> | |
191 | ||
192 | * sem_ch8.adb: Complete previous change. | |
193 | ||
806e0cb1 | 194 | 2012-11-06 Tristan Gingold <gingold@adacore.com> |
195 | ||
196 | * fe.h (Get_Vax_Real_Literal_As_Signed): Declare. | |
197 | * eval_fat.adb, eval_fat.ads (Decompose_Int): Move spec in package spec. | |
198 | * exp_vfpt.adb, exp_vfpt.ads (Vax_Real_Literal_As_Signed): New function. | |
199 | (Expand_Vax_Real_Literal): Remove. | |
200 | * exp_ch2.adb (Expand_N_Real_Literal): Do nothing. | |
201 | * sem_eval.adb (Expr_Value_R): Remove special Vax float case, | |
202 | as this is not anymore a special case. | |
203 | ||
204 | 2012-11-06 Yannick Moy <moy@adacore.com> | |
205 | ||
206 | * uintp.ads: Minor correction of typo in comment. | |
207 | ||
208 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> | |
209 | ||
210 | * sem_prag.adb (Analyze_Pragnma, case Unchecked_Union): remove | |
211 | requirement that discriminants of an unchecked_union must have | |
212 | defaults. | |
213 | ||
214 | 2012-11-06 Vasiliy Fofanov <fofanov@adacore.com> | |
215 | ||
216 | * projects.texi: Minor wordsmithing. | |
217 | ||
3713b75f | 218 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
219 | ||
220 | * sem_ch9.adb, exp_vfpt.adb, xoscons.adb: Minor reformatting. | |
221 | ||
8b8f1d98 | 222 | 2012-11-06 Tristan Gingold <gingold@adacore.com> |
223 | ||
224 | * exp_vfpt.adb: Document VAX float point layout. | |
225 | ||
226 | 2012-11-06 Geert Bosch <bosch@adacore.com> | |
227 | ||
228 | * eval_fat.adb (Machine): Don't return -0.0 on targets without | |
229 | signed zeros. | |
230 | ||
231 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> | |
232 | ||
233 | * sem_ch9.adb (Analyze_Entry_Call_Alternative, | |
234 | Check_Triggering_Statement): Reject properly an indirect call. | |
235 | ||
9040d730 | 236 | 2012-11-06 Pascal Obry <obry@adacore.com> |
237 | ||
238 | * xoscons.adb, xutil.adb, xutil.ads: Add support for post-processing. | |
239 | ||
64c0accb | 240 | 2012-11-06 Yannick Moy <moy@adacore.com> |
241 | ||
242 | * s-bignum.adb (Div_Rem): Fix another bug in step D3. | |
243 | ||
244 | 2012-11-06 Tristan Gingold <gingold@adacore.com> | |
245 | ||
246 | * s-tarest.adb (Create_Restricted_Task): Call | |
247 | Create_Restricted_Task_Sequential in sequential case. | |
248 | ||
249 | 2012-11-06 Hristian Kirtchev <kirtchev@adacore.com> | |
250 | ||
251 | * exp_prag.adb (Expand_Pragma_Loop_Assertion): Do not rewrite the | |
252 | pragma into a null statement as its presence is desirable in -gnatG | |
253 | output. | |
254 | ||
8f553582 | 255 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> |
256 | ||
257 | * sem_ch8.adb (Check_Constrained_Object): Do nothing if the | |
258 | renamed object is a limited record. | |
259 | ||
260 | 2012-11-06 Bernard Banner <banner@adacore.com> | |
261 | ||
262 | * sysdep.c (_getpagesize): New. Minor reformatting. | |
263 | ||
2d9671b9 | 264 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
265 | ||
266 | * sem_prag.adb: Minor reformatting. | |
267 | ||
268 | 2012-11-06 Robert Dewar <dewar@adacore.com> | |
269 | ||
270 | * s-bignum.adb (Div_Rem): Fix bug in step D3. | |
271 | * uintp.adb (UI_Div_Rem): Add comment on bug in step D3. | |
272 | ||
72e17c21 | 273 | 2012-11-06 Hristian Kirtchev <kirtchev@adacore.com> |
274 | ||
275 | * exp_prag.adb (Expand_Pragma_Loop_Assertion): Update the comment | |
276 | on intended expansion. Reimplement the logic which expands the | |
277 | termination variants. | |
278 | (Process_Increase_Decrease): Update the parameter profile and the | |
279 | comment related to it. Accommodate the new aggregate-like appearance of | |
280 | the termination variants. | |
281 | * sem_prag.adb (Analyze_Pragma): Update the syntax of pragma | |
282 | Loop_Assertion. Reimplement the semantic analysis of the pragma | |
283 | to accommodate the new aggregate-like variant. | |
284 | (Check_Variant): New routine. | |
285 | * snames.ads-tmpl: Change names Name_Decreases and Name_Increases | |
286 | to Name_Decreasing and Name_Increasing respectively. Add name | |
287 | Variant. | |
288 | ||
289 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> | |
290 | ||
291 | * sem_eval.adb: Static evaluation of case expressions. | |
292 | ||
27286d2b | 293 | 2012-11-06 Robert Dewar <dewar@adacore.com> |
294 | ||
295 | * exp_prag.adb, impunit.adb, exp_ch9.adb, par-ch4.adb, | |
296 | s-tarest.adb: Minor reformatting. | |
297 | ||
298 | 2012-11-06 Tristan Gingold <gingold@adacore.com> | |
299 | ||
300 | * s-tposen.ads: Minor comment update. | |
301 | ||
302 | 2012-11-06 Arnaud Charlet <charlet@adacore.com> | |
303 | ||
304 | * sysdep.c: Rename sig* wrappers to use unique names. | |
305 | ||
306 | 2012-11-06 Yannick Moy <moy@adacore.com> | |
307 | ||
308 | * exp_dbug.adb (Qualify_Entity_Name): Mark entity as having a qualified | |
309 | name after being treated, in formal verification mode. | |
310 | ||
311 | 2012-11-06 Fedor Rybin <frybin@adacore.com> | |
312 | ||
313 | * gnat_ugn.texi: Updating gnattest section to reflect changes | |
314 | in default behaviour of the tool. | |
315 | ||
d4f55b2a | 316 | 2012-11-06 Thomas Quinot <quinot@adacore.com> |
317 | ||
318 | * s-oscons-tmplt.c: Interfaces.C now needs to be WITH'd even | |
319 | on platforms that do not support sockets (for the benefit of | |
320 | subtype IOCTL_Req_T). | |
321 | ||
322 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> | |
323 | ||
324 | * par-ch4.adb (P_Primary): if-expressions, case-expressions, | |
325 | and quantified expressions are legal if surrounded by parentheses | |
326 | from an enclosing context, such as a call or an instantiation. | |
327 | ||
328 | 2012-11-06 Yannick Moy <moy@adacore.com> | |
329 | ||
330 | * impunit.adb (Get_Kind_Of_Unit): Return appropriate kind for | |
331 | predefined implementation files, instead of returning | |
332 | Not_Predefined_Unit on all .adb files. | |
333 | ||
334 | 2012-11-06 Tristan Gingold <gingold@adacore.com> | |
335 | ||
336 | * exp_ch9.adb (Build_Activation_Chain_Entity): Return immediately if | |
337 | partition elaboration policy is sequential. | |
338 | (Build_Task_Activation_Call): Likewise. Use | |
339 | Activate_Restricted_Tasks on restricted profile. | |
340 | (Make_Task_Create_Call): Do not use the _Chain | |
341 | parameter if elaboration policy is sequential. Call | |
342 | Create_Restricted_Task_Sequential in that case. | |
343 | * exp_ch3.adb (Build_Initialization_Call): Change condition to | |
344 | support concurrent elaboration policy. | |
345 | (Build_Record_Init_Proc): Likewise. | |
346 | (Init_Formals): Likewise. | |
347 | * bindgen.adb (Gen_Adainit): Declare Partition_Elaboration_Policy | |
348 | and set it in generated code if the elaboration policy is | |
349 | sequential. The procedure called to activate all tasks is now | |
350 | named __gnat_activate_all_tasks. | |
351 | * rtsfind.adb (RE_Activate_Restricted_Task, | |
352 | RE_Create_Restricted_Task_Sequential): New RE_Id literals. | |
353 | * s-tarest.adb (Create_Restricted_Task): Added to create a task without | |
354 | adding it on an activation chain. | |
355 | (Activate_Tasks): Has now a Chain parameter. | |
356 | (Activate_All_Tasks_Sequential): Added. Called by the binder to | |
357 | activate all tasks. | |
358 | (Activate_Restricted_Tasks): Added. Called during elaboration to | |
359 | activate tasks of the units. | |
360 | * s-tarest.ads: Remove pragma Partition_Elaboration_Policy. | |
361 | (Partition_Elaboration_Policy): New variable (set by the binder). | |
362 | (Create_Restricted_Task): Revert removal of the chain parameter. | |
363 | (Create_Restricted_Task_Sequential): New procedure. | |
364 | (Activate_Restricted_Tasks): Revert removal. | |
365 | (Activate_All_Tasks_Sequential): New procedure. | |
366 | ||
b261877a | 367 | 2012-11-06 Bernard Banner <banner@adacore.com> |
368 | ||
369 | * adaint.c Add file macro definitions missing on Android. | |
370 | * adaint.h Avoid definitions related to task affinity and CPU | |
371 | sets since this functionality is missing on the Android | |
372 | * errno.c (__set_errno): Android already contains such a named | |
373 | procedure so do include again. | |
374 | * gsocket.h: Sockets not supported on Android. | |
375 | * init.c: Avoid linux related code not supported on Android. | |
376 | * sysdep.c (sigismember, sigaddset, sigdelset, sigemptyset, | |
377 | sigfillset): wrapper functions since sig routines are defined | |
378 | as inline macros on Android. | |
379 | * terminals.c: Add stubs for terminal related functions not | |
380 | supported on Android. | |
381 | ||
58621cf4 | 382 | 2012-11-06 Hristian Kirtchev <kirtchev@adacore.com> |
383 | ||
384 | * sem_prag.adb (Analyze_Pragma): Do not | |
385 | output the characters of an illegal argument as it may not have | |
386 | characters to begin with. | |
387 | ||
388 | 2012-11-06 Hristian Kirtchev <kirtchev@adacore.com> | |
389 | ||
390 | * exp_prag.adb (Expand_Pragma_Loop_Assertion): | |
391 | Change the order of argument processing to avoid disappearing | |
392 | increase / decrease expressions. | |
393 | ||
80643aa6 | 394 | 2012-11-06 Hristian Kirtchev <kirtchev@adacore.com> |
395 | ||
396 | * exp_prag.adb: Add with and use clause for Sem_Ch8. | |
397 | (Expand_N_Pragma): Add a new variant to expand pragma Loop_Assertion. | |
398 | (Expand_Pragma_Loop_Assertion): New routine. | |
399 | * par-prag.adb (Prag): The semantic analysis of pragma | |
400 | Loop_Assertion is carried out by Analyze_Pragma. No need for | |
401 | checks in the parser. | |
402 | * sem_prag.adb: Add a reference position value for pragma | |
403 | Loop_Assertion in Sig_Flags. | |
404 | (Analyze_Pragma): Add semantic analysis for pragma Loop_Assertion. | |
405 | * snames.ads-tmpl: Add the following new names: | |
406 | Name_Decreases Name_Increases Name_Loop_Assertion. | |
407 | Add new pragma id Pragma_Loop_Assertion. | |
408 | ||
409 | 2012-11-06 Ed Schonberg <schonberg@adacore.com> | |
410 | ||
411 | * exp_ch5.adb: Identifier in iterator must have debug | |
412 | information. | |
413 | ||
04809a66 | 414 | 2012-11-06 Arnaud Charlet <charlet@adacore.com> |
415 | ||
416 | * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Remove | |
417 | duplicate rules handled by Make-generated.in. | |
418 | ||
d2313b52 | 419 | 2012-10-31 Lawrence Crowl <crowl@google.com> |
420 | ||
421 | * gcc-interface/utils.c (gnat_write_global_declarations): | |
422 | Rename varpool_node to varpool_node_for_decl. | |
423 | ||
336fdb5e | 424 | 2012-10-30 Eric Botcazou <ebotcazou@adacore.com> |
425 | ||
426 | * gcc-interface/Make-lang.in: Fix and clean up rules for C files. | |
427 | ||
d8394522 | 428 | 2012-10-29 Arnaud Charlet <charlet@adacore.com> |
429 | ||
430 | * gcc-interface/Makefile.in (s-oscons.ads): Adjust call to xoscons. | |
431 | ||
a2ce3d11 | 432 | 2012-10-29 Pascal Obry <obry@adacore.com> |
433 | ||
434 | * xoscons.adb, Make-generated.in; The template used by xoscons is now | |
435 | given as parameter. | |
436 | * gcc-interface/Make-lang.in: Update dependencies. | |
437 | ||
438 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
439 | ||
440 | * exp_dbug.adb (Qualify_Entity_Name): Only do renaming in formal | |
441 | verification mode when there is a homonym. | |
442 | ||
ce73accb | 443 | 2012-10-29 Thomas Quinot <quinot@adacore.com> |
444 | ||
445 | * xoscons.adb: Minor reformatting. | |
446 | ||
447 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
448 | ||
449 | * exp_alfa.adb (Expand_Alfa): Backtrack change that removed | |
450 | qualification of names in formal verification mode. Instead, | |
451 | the qualification should be modified. | |
452 | * exp_dbug.adb (Qualify_Entity_Name): Modify qualification in formal | |
453 | verification mode, so that only a suffix is added to distinguish | |
454 | homonyms from the same scope. | |
455 | ||
96f971b2 | 456 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
457 | ||
458 | * gnat_rm.texi: Document that pragma Optimize_Alignment (Space) is | |
459 | ignored with a warning for packed variable length records. | |
460 | ||
461 | 2012-10-29 Thomas Quinot <quinot@adacore.com> | |
462 | ||
463 | * socket.c, g-socthi-dummy.adb, g-socthi-dummy.ads, g-socthi-vms.adb, | |
464 | g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads, | |
465 | s-oscons-tmplt.c, g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi.adb, | |
466 | g-socthi.ads, xoscons.adb, g-socket.adb, g-sothco.ads: Introduce an | |
467 | appropriate subtype for IOCTL requests, since these may be signed or | |
468 | unsigned. | |
469 | ||
fcee6529 | 470 | 2012-10-29 Gary Dismukes <dismukes@adacore.com> |
471 | ||
472 | * exp_alfa.adb: Minor reformatting. | |
473 | ||
474 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
475 | ||
476 | * gnat_rm.texi, gnat_ugn.texi: Clarify documentation on maximum | |
477 | line length style switch. | |
478 | ||
479 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
480 | ||
481 | * layout.adb (Set_Composite_Alignment): Ignore pragma | |
482 | Optimize_Alignment (Space) for packed variable length records. | |
483 | ||
c2db7c54 | 484 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
485 | ||
486 | * s-bignum.adb: Minor comment change. | |
487 | ||
488 | 2012-10-29 Thomas Quinot <quinot@adacore.com> | |
489 | ||
490 | * s-oscons-tmplt.c: Fix signedness of ioctl request identifiers | |
491 | for x86_64-freebsd. | |
492 | ||
493 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
494 | ||
495 | * exp_alfa.adb (Expand_Alfa): Remove qualification of names. | |
496 | ||
687b5687 | 497 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
498 | ||
499 | * sem_prag.adb: Minor reformatting. | |
500 | ||
501 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
502 | ||
503 | * gnat_rm.texi: Minor rewording. | |
504 | ||
505 | 2012-10-29 Javier Miranda <miranda@adacore.com> | |
506 | ||
507 | * exp_disp.ads (Is_Expanded_Dispatching_Call): New subprogram. | |
508 | * exp_disp.adb (Expand_Dispatching_Call): No action needed if the | |
509 | call has been already expanded. | |
510 | (Is_Expanded_Dispatching_Call): New subprogram. | |
511 | * sem_disp.adb (Propagate_Tag): No action needed if the call | |
512 | has been already expanded. | |
513 | ||
514 | 2012-10-29 Hristian Kirtchev <kirtchev@adacore.com> | |
515 | ||
516 | * exp_ch9.adb (Create_Index_And_Data): Remove local | |
517 | variable Index_Typ and its uses. The type of the index is now | |
518 | System.Tasking.Entry_Index. Update all related comments. | |
519 | * rtsfind.ads: Add RE_Entry_Index in tables RE_Id and RE_Unit_Table. | |
520 | * s-taskin.adb (Number_Of_Entries): The return type is now Entry_Index. | |
521 | * s-taskin.ads: The index type of Task_Entry_Names_Array is now | |
522 | Entry_Index. | |
523 | (Number_Of_Entries): The return type is now Entry_Index. | |
524 | * s-tpoben.adb (Number_Of_Entries): The return type is now Entry_Index. | |
525 | * s-tpoben.ads: The index type of Protected_Entry_Names_Array | |
526 | is now Entry_Index. | |
527 | (Number_Of_Entries): The return type is now Entry_Index. | |
528 | ||
529 | 2012-10-29 Pascal Obry <obry@adacore.com> | |
530 | ||
531 | * gnat_ugn.texi: Add note about SEH setup on x86-windows. | |
532 | ||
533 | 2012-10-29 Eric Botcazou <ebotcazou@adacore.com> | |
534 | ||
535 | * s-bignum.adb (Allocate_Bignum): Use the exact layout of | |
536 | Bignum_Data for the overlay. | |
537 | ||
8c8f204f | 538 | 2012-10-29 Thomas Quinot <quinot@adacore.com> |
539 | ||
540 | * gnat_rm.texi, sem_prag.adb, sem_util.adb, sem_util.ads, | |
541 | par-prag.adb, par-util.adb, snames.ads-tmpl (Sem_Prag.Analyze_Pragma): | |
542 | Handle new pragma Attribute_Definition. | |
543 | (Sem_Util.Bad_Attribute): New routine, moved here | |
544 | from par-util, so that it can be used by the above. | |
545 | (Par_Util.Signal_Bad_Attribute): Processing moved to | |
546 | Sem_Util.Bad_Attribute. | |
547 | ||
8472c0d1 | 548 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
549 | ||
550 | * s-tpoben.ads, s-taskin.ads, exp_ch3.adb: Minor reformatting. | |
551 | ||
552 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
553 | ||
554 | * sem_prag.adb, gnat1drv.adb, opt.ads: Rename S14_Extensions | |
555 | into Formal_Extensions. | |
556 | ||
557 | 2012-10-29 Thomas Quinot <quinot@adacore.com> | |
558 | ||
559 | * sem_attr.adb: Minor reformatting. | |
560 | ||
12e90c44 | 561 | 2012-10-29 Tristan Gingold <gingold@adacore.com> |
562 | ||
563 | * gnat_rm.texi: Document implementation advice for Pragma | |
564 | Partition_Elaboration_Policy. | |
565 | ||
566 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
567 | ||
568 | * s-bignum.adb (Div_Rem): Reference that Algorithm_D is from | |
569 | the second edition of TAOCP from Knuth, since the algo changed | |
570 | in the third edition. Also correct the definition of 'd' which | |
571 | could overflow. | |
572 | ||
573 | 2012-10-29 Hristian Kirtchev <kirtchev@adacore.com> | |
574 | ||
575 | * exp_ch3.adb (Build_Initialization_Call): Create static strings | |
576 | which denote entry [family] names and associate them with the | |
577 | object's Protection_Entries or ATCB. | |
578 | (Build_Init_Statements): | |
579 | Remove local variable Names. Do not generate the entry [family] | |
580 | names inside the init proc because they are now static. | |
581 | * exp_ch9.adb (Build_Entry_Names): Reimplemented. The strings | |
582 | which denote entry [family] names are now generated statically | |
583 | and associated with the concurrent object's Protection_Entries | |
584 | or ATCB during initialization. | |
585 | * exp_ch9.ads (Build_Entry_Names): Change subprogram profile | |
586 | and associated comment on usage. | |
587 | * rtsfind.ads: Add the following entries to tables RE_Id and | |
588 | RE_Unit_Table: | |
589 | ||
590 | RE_Protected_Entry_Names_Array RE_Task_Entry_Names_Array | |
591 | RO_PE_Number_Of_Entries RO_PE_Set_Entry_Names | |
592 | RO_ST_Number_Of_Entries RO_ST_Set_Entry_Names | |
593 | ||
594 | Remove the following entries from tables RE_Id and RE_Unit_Table: | |
595 | ||
596 | RO_PE_Set_Entry_Name RO_TS_Set_Entry_Name | |
597 | ||
598 | * s-taskin.adb: Remove with clause for Ada.Unchecked_Deallocation. | |
599 | (Free_Entry_Names_Array): Removed. | |
600 | (Number_Of_Entries): New routine. | |
601 | (Set_Entry_Names): New routine. | |
602 | * s-taskin.ads: Rename type Entry_Names_Array to | |
603 | Task_Entry_Names_Array. Rename type Entry_Names_Array_Access | |
604 | to Task_Entry_Names_Access. Update the type of ACTB field | |
605 | Entry_Names and add a comment on its protection status. | |
606 | (Free_Entry_Names_Array): Removed. | |
607 | (Number_Of_Entries): New routine. | |
608 | (Set_Entry_Names): New routine. | |
609 | * s-tassta.adb (Create_Task): Remove formal parameter | |
610 | Build_Entry_Names. Do not allocate an array to hold the | |
611 | string names of entries and families. | |
612 | (Free_Entry_Names): Removed. | |
613 | (Free_Task): Remove the call to Free_Entry_Names. | |
614 | (Set_Entry_Name): Removed. | |
615 | (Vulnerable_Free_Task): Remove the call to Free_Entry_Names. | |
616 | * s-tassta.ads (Create_Task): Remove formal parameter | |
617 | Build_Entry_Names along with associated comment. | |
618 | (Set_Entry_Name): Removed. | |
619 | * s-tpoben.adb: Remove with clause for Ada.Unchecked_Deallocation. | |
620 | (Finalize): Remove the call to Free_Entry_Names. | |
621 | (Free_Entry_Names): Removed. | |
622 | (Initialize_Protection_Entries): | |
623 | Remove formal parameter Build_Entry_Names. Do not allocate | |
624 | an array to hold the string names of entries and families. | |
625 | (Number_Of_Entries): New routine. | |
626 | (Set_Entry_Name): Removed. | |
627 | (Set_Entry_Names): New routine. | |
628 | * s-tpoben.ads: Add types Protected_Entry_Names_Array and | |
629 | Protected_Entry_Names_Access. Update the type of Protection_Enties | |
630 | field Entry_Names. | |
631 | (Initialize_Protection_Entries): Remove | |
632 | formal parameter Build_Entry_Names along with associated comment. | |
633 | (Number_Of_Entries): New routine. | |
634 | (Set_Entry_Name): Removed. | |
635 | (Set_Entry_Names): New routine. | |
636 | ||
637 | 2012-10-29 Arnaud Charlet <charlet@adacore.com> | |
638 | ||
639 | * gnat_ugn.texi: Minor typo fix. | |
fb261027 | 640 | 2012-10-29 Yannick Moy <moy@adacore.com> |
641 | ||
642 | * debug.adb Associate debug switch -gnatd.V to extensions for | |
643 | formal verification. | |
644 | * gnat1drv.adb (Adjust_Global_Switches): Set flag S14_Extensions | |
645 | when -gnatd.V is set. | |
646 | * gnat_rm.texi: Remove doc for Assert_And_Cut. | |
647 | * opt.ads Declare new flag S14_Extensions, to be set when new | |
648 | aspects/pragmas/attributes for formal verification should be | |
649 | accepted. | |
650 | * sem_prag.adb (Analyze_Pragma): Check that S14_Extensions is | |
651 | set when treating pragma Assert_And_Cut. | |
652 | ||
653 | 2012-10-29 Tristan Gingold <gingold@adacore.com> | |
654 | ||
655 | * s-tarest.ads, s-tassta.adb: Add a pragma Partition_Elaboration_Policy. | |
656 | ||
d797669f | 657 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
658 | ||
659 | * freeze.adb: Minor reformatting. | |
660 | ||
0a1ae14d | 661 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
662 | ||
663 | * xr_tabls.adb, xr_tabls.ads, exp_ch9.adb, snames.adb-tmpl, | |
664 | snames.ads-tmpl, exp_ch3.adb: Minor reformatting. | |
665 | ||
666 | 2012-10-29 Ed Schonberg <schonberg@adacore.com> | |
667 | ||
668 | * sem_ch6.adb: Call Build_Subprogrm_Instance_Renamings only when | |
669 | generating code. | |
670 | ||
671 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
672 | ||
673 | * gnat_ugn.texi: Add documentation for -gnatw.k/-gnatw.K. | |
674 | * ug_words: Add entries for -gnatw.k/.K for [NO]STANDARD_REDEFINITION. | |
675 | * vms_data.ads: Add entries for [NO]STANDARD_REDEFINITION. | |
676 | ||
f19e29b6 | 677 | 2012-10-29 Tristan Gingold <gingold@adacore.com> |
678 | ||
679 | * exp_ch9.adb, s-tarest.ads, exp_ch3.adb: Update comments. | |
680 | ||
681 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
682 | ||
683 | * gnat_rm.texi: Minor documentation addition. | |
684 | ||
685 | 2012-10-29 Emmanuel Briot <briot@adacore.com> | |
686 | ||
687 | * xr_tabls.adb, xr_tabls.ads (Add_Declaration, Add_Reference): No | |
688 | longer assume that a parameter declaration is seen after the subprogram | |
689 | that uses it. | |
690 | ||
691 | 2012-10-29 Tristan Gingold <gingold@adacore.com> | |
692 | ||
693 | * lib-writ.adb (Write_ALI): Emit partition elaboration policy | |
694 | in P line. | |
695 | * lib-writ.ads: Document partition elaboration policy indication. | |
696 | * sem_prag.adb (Check_Arg_Is_Partition_Elaboration_Policy): New | |
697 | procedure. | |
698 | (Analyze_Pragma): Handle Partition_Elaboration_Policy. | |
699 | (Sig_Flags): Add flag for Pragma_Partition_Elaboration_Policy | |
700 | * ali.adb (Initialize_ALI): Init Partition_Elaboration_Policy_Specified. | |
701 | (Scan_ALI): Read Ex indications. | |
702 | * ali.ads: ALIs_Record: Add Partition_Elaboration_Policy. | |
703 | * par-prag.adb (Prag): Add Partition_Elaboration_Policy. | |
704 | * snames.adb-tmpl (Is_Partition_Elaboration_Policy_Name): New function. | |
705 | * opt.ads (Partition_Elaboration_Policy): Declare. | |
706 | (Partition_Elaboration_Policy_Sloc): Declare. | |
707 | * bcheck.adb (Check_Consistent_Partition_Elaboration_Policy): | |
708 | New procedure. (Check_Configuration_Consistency): Check partition | |
709 | elaboration policy consistency. | |
710 | * snames.ads-tmpl (Name_Partition_Elaboration_Policy): New name. | |
711 | (First_Partition_Elaboration_Policy_Name, Name_Concurrent, | |
712 | Name_Sequential, Last_Partition_Elaboration_Policy_Name): Likewise. | |
713 | (Pragma_Partition_Elaboration_Policy): New literal. | |
714 | (Is_Partition_Elaboration_Policy_Name): New function. | |
715 | ||
716 | 2012-10-29 Ed Schonberg <schonberg@adacore.com> | |
717 | ||
718 | * sem_ch6.adb (Is_Public_Subprogram_For): Handle properly | |
719 | expression functions, which are rewritten as subprogram | |
720 | declarations, when generating invariants for its return value | |
721 | and in-out parameters. | |
722 | ||
6e3a4232 | 723 | 2012-10-29 Arnaud Charlet <charlet@adacore.com> |
724 | ||
725 | * warnsw.adb (Set_GNAT_Mode_Warnings): Unset | |
726 | Warn_On_Standard_Redefinition. | |
727 | ||
728 | 2012-10-29 Javier Miranda <miranda@adacore.com> | |
729 | ||
730 | * sem_ch3.adb (Derive_Progenitor_Subprograms): Complete documentation. | |
731 | ||
732 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
733 | ||
734 | * par-ch11.adb (Warn_If_Standard_Redefinition): Add calls. | |
735 | * par-ch3.adb (P_Defining_Identifier): Call | |
736 | Warn_If_Standard_Redefinition if not inside record definition. | |
737 | * par-ch6.adb (Warn_If_Standard_Redefinition): Add calls. | |
738 | * par-util.adb (Warn_If_Standard_Redefinition): New procedure. | |
739 | * par.adb (Inside_Record_Definition): New flag. | |
740 | (Warn_If_Standard_Redefinition): New procedure. | |
741 | * sinfo-cn.adb (Change_Identifier_To_Defining_Identifier): Remove | |
742 | handling of warning for redefining standard name (moved to Par*). | |
743 | ||
9a6a4132 | 744 | 2012-10-29 Javier Miranda <miranda@adacore.com> |
745 | ||
746 | * sem_ch3.adb (Derive_Progenitor_Subprograms): Disable small | |
747 | optimization in generic formal types. | |
748 | ||
749 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
750 | ||
751 | * exp_ch9.adb, exp_ch3.adb: Add comments. | |
752 | * sem_prag.adb: Minor reformatting. | |
753 | ||
60774346 | 754 | 2012-10-29 Tristan Gingold <gingold@adacore.com> |
755 | ||
756 | * bindgen.adb (Gen_Output_File_Ada): Do not emit declaration for | |
757 | Is_Elaborated if not referenced. | |
758 | ||
759 | 2012-10-29 Tristan Gingold <gingold@adacore.com> | |
760 | ||
761 | * exp_ch9.adb (Build_Activation_Chain_Entity): Punt in restricted | |
762 | profile. | |
763 | * exp_ch3.adb (Build_Initialization_Call): Do no append _Chain | |
764 | parameter in restricted profile. | |
765 | (Build_Init_Call_Thru): Likewise. | |
766 | (Init_Formals): Likewise. | |
767 | * exp_ch3.adb: Minor reformatting. | |
768 | ||
6ad452c6 | 769 | 2012-10-29 Arnaud Charlet <charlet@adacore.com> |
770 | ||
771 | * usage.adb: Update usage line for -gnatw.k. | |
772 | ||
773 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
774 | ||
775 | * sem_prag.adb: Code clean up. | |
776 | ||
7a9ab423 | 777 | 2012-10-29 Vincent Celier <celier@adacore.com> |
778 | ||
779 | * projects.texi: Clarify documentation of attribute | |
780 | Ignore_Source_Sub_Dirs. | |
781 | ||
782 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
783 | ||
784 | * g-sechas.adb, g-sechas.ads, exp_ch9.adb, bindgen.adb, exp_dbug.adb, | |
785 | exp_dbug.ads: Minor reformatting. | |
786 | ||
4db43fab | 787 | 2012-10-29 Pascal Obry <obry@adacore.com> |
788 | ||
789 | * g-sechas.adb, g-sechas.ads: (Binary_Message_Digest): New subtype. | |
790 | (Digest): New versions returning a Binary_Message_Digest. | |
791 | (Wide_Digest): Likewise. | |
792 | ||
e8b5f25d | 793 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
794 | ||
795 | * warnsw.adb: Complete previous change. | |
796 | ||
797 | 2012-10-29 Tristan Gingold <gingold@adacore.com> | |
798 | ||
799 | * bindgen.adb (Check_File_In_Partition, Check_System_Restrictions_Used): | |
800 | Removed. | |
801 | (Check_Dispatching_Domains_Used): Removed. | |
802 | (Gen_Adafinal): Remove call to above procedures. | |
803 | (Resolve_Binder_Options): Handle system restrictions and dispatching | |
804 | domains. | |
805 | ||
806 | 2012-10-29 Tristan Gingold <gingold@adacore.com> | |
807 | ||
808 | * s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Remove | |
809 | Chain parameter. | |
810 | * exp_ch9.adb (Make_Task_Create_Call): Do not add Chain parameter | |
811 | on restricted runtime. | |
812 | ||
813 | 2012-10-29 Pascal Obry <obry@adacore.com> | |
814 | ||
815 | * g-sechas.adb, g-sechas.ads: Minor code clean-up. | |
816 | ||
b9e61b2a | 817 | 2012-10-29 Ed Schonberg <schonberg@adacore.com> |
818 | ||
819 | * sem_aux.adb (Get_Rep_Item): Treat Priority and Interrupt_Priority | |
820 | as equivalent, because only one of them can be specified for a | |
821 | task, protected definition, or subprogram body. | |
822 | * aspects.adb ((Same_Aspect): The canonical aspect of | |
823 | Interrupt_Priority is Priority. | |
824 | ||
825 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
826 | ||
827 | * sem_ch13.adb: Minor reformatting. | |
828 | ||
829 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
830 | ||
831 | * i-cstrea.ads: Avoid redefinition of standard symbol string. | |
832 | * prj-makr.adb: Add comment for OK redefinition of Stadard. | |
833 | * prj.ads: Add comment for OK redefinition of Stadard. | |
834 | * s-crtl.ads: Avoid redefinition of standard symbol string. | |
835 | * sinfo-cn.adb (Change_Identifier_To_Defining_Identifier): | |
836 | Generate warning for standard redefinition if | |
837 | Warn_On_Standard_Definition set. | |
838 | * usage.adb: Add lines for -gnatw.k and -gnatw.K | |
839 | * warnsw.adb: Set/reset Warn_On_Standard_Redefinition | |
840 | appropriately. | |
841 | * warnsw.ads (Warn_On_Standard_Redefinition): New flag. | |
842 | * s-stratt-xdr.adb: Avoid new warning. | |
843 | ||
844 | 2012-10-29 Ed Schonberg <schonberg@adacore.com> | |
845 | ||
846 | * exp_dbug.ads, exp_dbug.adb (Build_Subprogram_Instance_Renamings): | |
847 | in the body of a subpogram instance, introduce local renamings | |
848 | for actuals of an elementary type, so that GDB can recover the | |
849 | values of these actuals more directly. | |
850 | ||
4c1fd062 | 851 | 2012-10-29 Robert Dewar <dewar@adacore.com> |
852 | ||
853 | * sem_ch5.adb (Analyze_Loop_Statement): Add warning for identical | |
854 | inner/outer ranges. | |
855 | ||
856 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
857 | ||
858 | * einfo.ads: Change terminology "present" to "defined" in talking | |
859 | about whether a given field is defined for a given entity kind. | |
860 | ||
861 | 2012-10-29 Bob Duff <duff@adacore.com> | |
862 | ||
863 | * atree.ads: Minor comment fix. | |
864 | ||
865 | 2012-10-29 Bob Duff <duff@adacore.com> | |
866 | ||
867 | * sem_ch13.adb (Replace_Type_Reference): Set_Comes_From_Source. | |
868 | Otherwise, the node is ignored by ASIS. | |
869 | * sem_ch5.adb: Minor reformatting. | |
870 | ||
871 | 2012-10-29 Thomas Quinot <quinot@adacore.com> | |
872 | ||
873 | * exp_attr.adb, exp_dist.adb, exp_dist.ads (Build_To_Any_Call): Pass | |
874 | an explicit Loc parameter to set the source location of generated | |
875 | nodes. | |
876 | ||
877 | 2012-10-29 Tristan Gingold <gingold@adacore.com> | |
878 | ||
879 | * exp_ch9.adb (Build_Task_Activation_Call): Do nothing on | |
880 | restricted profile. | |
881 | * bindgen.adb (System_Tasking_Restricted_Stages_Used): New variable. | |
882 | (Gen_Adainit): Declare and call Activate_Tasks when the above variable | |
883 | is set. | |
884 | (Resolve_Binder_Options): Set the variable. | |
885 | * rtsfind.ads (RE_Activate_Restricted_Tasks): Removed (now unused). | |
886 | * s-tarest.adb (Tasks_Activation_Chain): New variable. | |
887 | (Activate_Restricted_Tasks): Removed, and replaced by ... | |
888 | (Activate_Tasks): New procedure, to activate all tasks at | |
889 | the end of elaboration. | |
890 | (Create_Restricted_Tasks): Chain parameter is now unreferenced. Put | |
891 | the created task on the Tasks_Activation_Chain list. | |
892 | * s-tarest.ads (Activate_Restricted_Tasks): Removed. | |
893 | (Activate_Tasks): Added. | |
894 | ||
895 | 2012-10-29 Gary Dismukes <dismukes@adacore.com> | |
896 | ||
897 | * sem_res.adb (Resolve_If_Expression): Compare subtype of the 'then' | |
898 | expression against the subtype of the expression rather than comparing | |
899 | base types, same as is already done for the 'else' expression. | |
900 | ||
ba5efa21 | 901 | 2012-10-29 Steve Baird <baird@adacore.com> |
902 | ||
903 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If CodePeer_Mode | |
904 | = True and we detect that an Address specification is used to overlay | |
905 | another object, do not set that object's Treat_As_Volatile flag. | |
906 | ||
907 | 2012-10-29 Ed Schonberg <schonberg@adacore.com> | |
908 | ||
909 | * sem_ch3.adb (Constant_Redeclaration): If the type of a | |
910 | deferred constant has invariants, generate invariant call on | |
911 | the initial value. | |
912 | ||
c92e878b | 913 | 2012-10-29 Bob Duff <duff@adacore.com> |
914 | ||
915 | * sem_ch13.adb (Replace_Type_Reference): Use correct sloc for | |
916 | the new node. | |
917 | ||
5d12a5c7 | 918 | 2012-10-29 Thomas Quinot <quinot@adacore.com> |
919 | ||
920 | * sem_elab.adb: Minor reformatting and code reorganization. | |
921 | ||
922 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
923 | ||
924 | * par-ch4.adb (P_Primary): Warn on bad use of unary minus. | |
925 | ||
926 | 2012-10-29 Robert Dewar <dewar@adacore.com> | |
927 | ||
928 | * s-valuti.ads, s-valuti.adb (Bad_Value): New procedure. | |
929 | * s-valllu.adb, s-valwch.adb, s-valcha.adb, s-valint.adb, | |
930 | s-valuns.adb, s-valrea.adb, s-valboo.adb, s-valenu.adb, | |
931 | s-vallli.adb: Use Bad_Value everywhere. | |
932 | ||
933 | 2012-10-29 Yannick Moy <moy@adacore.com> | |
934 | ||
935 | * gnat1drv.adb (Adjust_Global_Switches): Do not suppress checks | |
936 | in Alfa mode. | |
937 | ||
70a2dff4 | 938 | 2012-10-29 Yannick Moy <moy@adacore.com> |
939 | ||
940 | * checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated): | |
941 | Add special case for case expression alternative. | |
942 | (Is_Signed_Integer_Arithmetic_Op): Remove special case for case | |
943 | expression alternative. | |
944 | * exp_ch4.adb Minor reformatting. | |
945 | ||
946 | 2012-10-29 Thomas Quinot <quinot@adacore.com> | |
947 | ||
948 | * sem_elab.adb: Minor reformatting. | |
949 | ||
950 | 2012-10-29 Bob Duff <duff@adacore.com> | |
951 | ||
952 | * sem_res.adb: Minor: Remove redundant test. | |
953 | ||
060c8422 | 954 | 2012-10-29 Arnaud Charlet <charlet@adacore.com> |
955 | ||
ea36a184 | 956 | * pprint.ads, pprint.adb, adabkend.ads, adabkend.adb, |
957 | aa_util.ads, aa_util.adb: New. | |
060c8422 | 958 | |
51ad9863 | 959 | 2012-10-23 Eric Botcazou <ebotcazou@adacore.com> |
960 | ||
961 | * system-linux-mipsel.ads (Stack_Check_Probes): Set to True. | |
962 | * system-linux-mips.ads (Stack_Check_Probes): Likewise. | |
963 | * system-linux-mips64el.ads (Stack_Check_Probes): Likewise. | |
964 | ||
d11be1f5 | 965 | 2012-10-22 Eric Botcazou <ebotcazou@adacore.com> |
966 | ||
967 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Force | |
968 | BLKmode on the type if it is passed by reference. | |
969 | <E_Array_Subtype>: Likewise. | |
970 | <E_Record_Type>: Guard the call to Is_By_Reference_Type predicate. | |
971 | <E_Record_Subtype>: Likewise. | |
972 | ||
04ca7a58 | 973 | * gcc-interface/Makefile.in: Remove outdated comment and reference to |
974 | non-existing file. | |
3a74eaf9 | 975 | |
789c209f | 976 | 2012-10-22 Eric Botcazou <ebotcazou@adacore.com> |
977 | ||
978 | * gcc-interface/utils.c (rest_of_record_type_compilation): Simplify and | |
979 | robustify pattern machine code for masking operations. | |
980 | ||
eca7bb9b | 981 | 2012-10-22 Eric Botcazou <ebotcazou@adacore.com> |
982 | ||
983 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: In | |
984 | type annotation mode, break circularities introduced by AI05-0151. | |
985 | ||
c8d6b902 | 986 | 2012-10-22 Eric Botcazou <ebotcazou@adacore.com> |
987 | ||
988 | * gcc-interface/trans.c (Loop_Statement_to_gnu): Use gnat_type_for_size | |
989 | directly to obtain an unsigned version of the base type. | |
990 | ||
895ebc60 | 991 | 2012-10-22 Eric Botcazou <ebotcazou@adacore.com> |
992 | ||
993 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Out_Parameter>: Do not | |
994 | generate the special PARM_DECL for an Out parameter in LTO mode. | |
995 | ||
13687c85 | 996 | 2012-10-22 Eric Botcazou <ebotcazou@adacore.com> |
997 | ||
998 | PR bootstrap/54820 | |
999 | * gcc-interface/Make-lang.in (GCC_LINK): Remove hardcoded options. | |
1000 | ||
f49eb158 | 1001 | 2012-10-15 Matthias Klose <doko@ubuntu.com> |
1002 | ||
1003 | * gcc-interface/Makefile.in: Match arm*-*-linux-*eabi* for | |
1004 | ARM Linux/GNU. | |
1005 | ||
5ce38deb | 1006 | 2012-10-05 Robert Dewar <dewar@adacore.com> |
1007 | ||
1008 | * sem_ch7.adb: Minor reformatting. | |
1009 | ||
1010 | 2012-10-05 Ed Schonberg <schonberg@adacore.com> | |
1011 | ||
1012 | * sem_prag.adb (Analyze_Pragma, case Persistent_BSS): check for | |
1013 | a duplicate pragma before Rep_Item_Too_Late to prevent spurious | |
1014 | messages about duplicate pragmas. | |
1015 | ||
1016 | 2012-10-05 Ed Schonberg <schonberg@adacore.com> | |
1017 | ||
1018 | * exp_util.adb (Find_Init_Call): If the successor of the | |
1019 | object declaration is a block, check whether it contains the | |
1020 | initialization call, because it may have been created by actuals | |
1021 | that use the secondary stack. | |
1022 | ||
9ea61fdd | 1023 | 2012-10-05 Thomas Quinot <quinot@adacore.com> |
1024 | ||
1025 | * sem_dim.adb, errout.adb, errout.ads (Analyze_Dimension_Call): Add | |
1026 | guard against abnormal tree resulting from a previously diagnosed | |
1027 | illegality. | |
1028 | ||
1029 | 2012-10-05 Hristian Kirtchev <kirtchev@adacore.com> | |
1030 | ||
1031 | * freeze.adb (Freeze_Expression): Rename local variable Cspc to Spec | |
1032 | and update all refs to it. Do not freeze an entity outside a subprogram | |
1033 | body when the original context is an expression function. | |
1034 | ||
1035 | 2012-10-05 Robert Dewar <dewar@adacore.com> | |
1036 | ||
1037 | * gnat1drv.adb (Adjust_Global_Switches): Default for overflow checking | |
1038 | is suppressed, even if backend overflow/divide checks are enabled. | |
1039 | ||
1040 | 2012-10-05 Ed Schonberg <schonberg@adacore.com> | |
1041 | ||
1042 | * einfo.adb (Set_Invariant_Procedure, Set_Predicate_Function): | |
1043 | chain properly subprograms on Subprograms_For_Type list. | |
1044 | * sem_ch13.ads; (Build_Invariant_Procedure_Declaration): new | |
1045 | procedure, to create declaration for invariant procedure | |
1046 | independently of the construction of the body, so that it can | |
1047 | be called within expression functions. | |
1048 | * sem_ch13.adb (Build_Invariant_Procedure): code cleanup. The | |
1049 | declaration may already have been generated at the point an | |
1050 | explicit invariant aspect is encountered. | |
1051 | * sem_prag.adb; (Analyze_Pragma, case Invariant): create declaration | |
1052 | for invariant procedure. | |
1053 | * sem_ch7.adb (Analyze_Package_Specification): clean up call to | |
1054 | build invariant procedure. | |
1055 | (Preserve_Full_Attributes): propagate information about invariants | |
1056 | if they appear on a completion, | |
1057 | ||
1058 | 2012-10-05 Pascal Obry <obry@adacore.com> | |
1059 | ||
1060 | * gnat_ugn.texi: Update documentation to lift Microsoft C | |
1061 | restriction. | |
1062 | ||
5f4275e1 | 1063 | 2012-10-05 Robert Dewar <dewar@adacore.com> |
1064 | ||
1065 | * sem_util.adb (Has_One_Matching_Field): Handle case of lone | |
1066 | discriminant. | |
1067 | ||
1068 | 2012-10-05 Yannick Moy <moy@adacore.com> | |
1069 | ||
1070 | * checks.adb (Minimize_Eliminate_Overflow_Checks): Correct code | |
1071 | for the division operation and exponent operation. Adjust bound | |
1072 | for the mod and rem operations. | |
1073 | ||
412f75eb | 1074 | 2012-10-05 Robert Dewar <dewar@adacore.com> |
1075 | ||
1076 | * checks.adb, checks.ads, s-tassta.adb, s-stposu.adb, s-spsufi.adb, | |
1077 | s-spsufi.ads, exp_ch4.adb: Minor reformatting. | |
1078 | ||
21a55437 | 1079 | 2012-10-05 Yannick Moy <moy@adacore.com> |
1080 | ||
1081 | * switch-c.adb, checks.adb, checks.ads, sem_prag.adb, exp_ch4.adb, | |
1082 | osint.adb: Minor correction of typos, and special case for Alfa mode. | |
1083 | ||
1084 | 2012-10-05 Hristian Kirtchev <kirtchev@adacore.com> | |
1085 | ||
1086 | * s-spsufi.adb: Add with clause for Ada.Unchecked_Deallocation. | |
1087 | Add with and use clauses for System.Finalization_Masters. | |
1088 | (Finalize_And_Deallocate): Add an instance of | |
1089 | Ada.Unchecked_Deallocation. Merge the code from the now obsolete | |
1090 | Finalize_Subpool into this routine. | |
1091 | * s-spsufi.ads: Add pragma Preelaborate. | |
1092 | * s-stposu.adb: Remove with clause for | |
1093 | Ada.Unchecked_Deallocation; Add with and use clauses for | |
1094 | System.Storage_Pools.Subpools.Finalization; (Finalize_Pool): | |
1095 | Update the comment on all actions takes with respect to a subpool | |
1096 | finalization. Finalize and deallocate each individual subpool. | |
1097 | (Finalize_Subpool): Removed. | |
1098 | (Free): Removed; | |
1099 | (Detach): Move from package body to spec. | |
1100 | * s-stposu.ads (Detach): Move from package body to spec. | |
1101 | (Finalize_Subpool): Removed. | |
1102 | ||
1103 | 2012-10-05 Arnaud Charlet <charlet@adacore.com> | |
1104 | ||
1105 | * s-tassta.adb: Update comments. | |
1106 | (Vulnerable_Complete_Master): If Free_On_Termination is set, do | |
1107 | nothing, and let the task free itself if not already done. | |
1108 | ||
74275ad3 | 1109 | 2012-10-04 Robert Dewar <dewar@adacore.com> |
1110 | ||
1111 | * sem_res.adb (Resolve_Set_Membership): Warn on duplicates. | |
1112 | ||
1113 | 2012-10-04 Emmanuel Briot <briot@adacore.com> | |
1114 | ||
1115 | * g-comlin.adb (Getopt): Fix value of Full_Switch returned in case of | |
1116 | invalid switch. | |
1117 | ||
1118 | 2012-10-04 Arnaud Charlet <charlet@adacore.com> | |
1119 | ||
1120 | * gcc-interface/Make-lang.in: Update dependencies. | |
1121 | ||
24d00f1f | 1122 | 2012-10-04 Robert Dewar <dewar@adacore.com> |
1123 | ||
1124 | * sem_eval.adb (Fold_Str, Fold_Uint, Fold_Ureal): Reset static | |
1125 | expression state after Resolve call. | |
1126 | ||
1127 | 2012-10-04 Robert Dewar <dewar@adacore.com> | |
1128 | ||
1129 | * sem_prag.adb (Analyze_Pragma. case Warnngs): Don't make entry | |
1130 | in the table for Warnings Off pragmas if within an instance. | |
1131 | ||
1132 | 2012-10-04 Ed Schonberg <schonberg@adacore.com> | |
1133 | ||
1134 | * sem_ch9.adb (Analyze_Entry_Body): Transfer | |
1135 | Has_Pragma_Unreferenced flag from entry formal to corresponding | |
1136 | entity in body, to prevent spurious warnings when pragma is | |
1137 | present. | |
1138 | ||
1139 | 2012-10-04 Robert Dewar <dewar@adacore.com> | |
1140 | ||
1141 | * s-bignum.adb (Big_Exp): Raise Storage_Error for ludicrously | |
1142 | large results. | |
1143 | ||
1144 | 2012-10-04 Ed Schonberg <schonberg@adacore.com> | |
1145 | ||
1146 | * sem_ch3.adb (Check_Duplicate_Aspects): Diagnose properly | |
1147 | aspects that appear in the partial and the full view of a type. | |
1148 | ||
1149 | 2012-10-04 Robert Dewar <dewar@adacore.com> | |
1150 | ||
1151 | * sinfo.ads (N_Return_Statement): Removed. | |
1152 | ||
1153 | 2012-10-04 Tristan Gingold <gingold@adacore.com> | |
1154 | ||
1155 | * init.c (__gl_zero_cost_exceptions): Comment it as not used | |
1156 | anymore. | |
1157 | * bindgen.adb (Gen_Adainit): Do not emit Zero_Cost_Exceptions | |
1158 | anymore. | |
1159 | ||
1160 | 2012-10-04 Thomas Quinot <quinot@adacore.com> | |
1161 | ||
1162 | * prep.adb, prepcomp.adb, gprep.adb, opt.ads: New preprocessor switch | |
1163 | -a (all source text preserved). | |
1164 | ||
0f4a8308 | 1165 | 2012-10-04 Vincent Celier <celier@adacore.com> |
1166 | ||
1167 | * prj-proc.adb (Recursive_Process): Use project directory | |
1168 | display path name as the value of 'Project_Dir. | |
1169 | ||
1170 | 2012-10-04 Robert Dewar <dewar@adacore.com> | |
1171 | ||
1172 | * exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow): | |
1173 | Deal with case where we get a bignum operand and cannot do a | |
1174 | range analysis. | |
1175 | * sem_eval.adb (Why_Not_Static): Deal with bignum operands | |
1176 | ||
1177 | 2012-10-04 Ed Schonberg <schonberg@adacore.com> | |
1178 | ||
1179 | * sem_ch4.adb (Find_Unary_Types): Within an instance, an | |
1180 | interpretation that involves a predefied arithmetic operator is | |
1181 | not a candidate if the corresponding generic formal type is not | |
1182 | a numeric type. | |
1183 | * sem_util.ads, sem_util.adb (Corresonding_Generic_Type): If a | |
1184 | type is a generic actual type within an instance, return the | |
1185 | corresponding formal in the generic unit, otherwise return | |
1186 | Any_Type. | |
1187 | ||
4fb5f0a0 | 1188 | 2012-10-04 Robert Dewar <dewar@adacore.com> |
1189 | ||
1190 | * checks.adb (Minimize_Eliminate_Overflow_Checks): Dont reanalyze | |
1191 | if/case expression if nothing has changed (just reexpand). Stops | |
1192 | case expression from generating incorrect temporary. | |
1193 | * exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow): | |
1194 | Fix cut and paste typo for range analysis in NE (not equal) case. | |
1195 | * sem_eval.adb (Compile_Time_Compare): Small optimization to | |
1196 | catch some more cases. | |
1197 | * types.ads (Suppressed_Or_Checked): New subtype of | |
1198 | Overflow_Check_Type. | |
1199 | ||
95773554 | 1200 | 2012-10-04 Javier Miranda <miranda@adacore.com> |
1201 | ||
1202 | * exp_disp.adb (Set_CPP_Constructors_Old): Removed. | |
1203 | (Set_CPP_Constructors): Code cleanup. | |
1204 | ||
1205 | 2012-10-04 Ed Schonberg <schonberg@adacore.com> | |
1206 | ||
1207 | * sem_ch10.adb (Is_Ancestor_Unit): Make global, for use elsewhere. | |
1208 | (Install_Private_with_Clauses): if clause is private and limited, | |
1209 | do not install the limited view if the library unit is an ancestor | |
1210 | of the unit being compiled. This unusual configuration occurs | |
1211 | when compiling a unit DDP, when an ancestor P of DDP has a | |
1212 | private limited with clause on a descendant of P that is itself | |
1213 | an ancestor of DDP. | |
1214 | ||
57c2f209 | 1215 | 2012-10-04 Vincent Celier <celier@adacore.com> |
1216 | ||
1217 | * prj-proc.adb (Process_Package_Declaration): Use project | |
1218 | directory display path name as the value of 'Project_Dir. | |
1219 | ||
1220 | 2012-10-04 Gary Dismukes <dismukes@adacore.com> | |
1221 | ||
1222 | * exp_util.adb (Build_Allocate_Deallocate_Proc): The subpool can be | |
1223 | given by an arbitrary name, so copy the tree to make the call's actual. | |
1224 | ||
1225 | 2012-10-04 Robert Dewar <dewar@adacore.com> | |
1226 | ||
1227 | * s-exnllf.adb, s-exnllf.ads: Minor reformatting. | |
1228 | ||
1229 | 2012-10-04 Thomas Quinot <quinot@adacore.com> | |
1230 | ||
1231 | * exp_ch6.adb: Minor reformatting. | |
1232 | ||
1233 | 2012-10-04 Pascal Obry <obry@adacore.com> | |
1234 | ||
1235 | * projects.texi: Use consistently @command{} when referencing | |
1236 | commands. Fix typos. | |
1237 | ||
b6a8f264 | 1238 | 2012-10-03 Ed Schonberg <schonberg@adacore.com> |
1239 | ||
1240 | * sem_ch6.adb (New_Overloaded_Entity): call | |
1241 | Append_Inherited_Subprogram when appropriate. | |
1242 | * sem_dim.adb (Analyze_Dimension_Call): Do not perform dimensional | |
1243 | analysis if call has previous semantic error. | |
1244 | * sem_util.ads, sem_util.adb (Append_Inherited_Subprogram): | |
1245 | new subprogram to handle properly the visibility of inherited | |
1246 | operations that are primitives of a type extension, when the | |
1247 | parent type and operations are declared in the same visible part. | |
1248 | ||
1249 | 2012-10-03 Robert Dewar <dewar@adacore.com> | |
1250 | ||
1251 | * checks.adb (Minimize_Eliminate_Overflow_Checks): Properly | |
1252 | handle case of top level expression within type conversion | |
1253 | * gnat1drv.adb (Adjust_Global_Switches): Set SUPPRESSED as | |
1254 | default for overflow checking for -gnatg mode (includes run-time). | |
1255 | * sem_res.adb (Resolve_Type_Conversion): Avoid bogus warnings | |
1256 | about redundant conversions from MINIMIZED/EXTENDED mode checking | |
1257 | ||
693dfc0f | 1258 | 2012-10-03 Javier Miranda <miranda@adacore.com> |
1259 | ||
1260 | * exp_ch4.adb (Expand_N_Allocator_Expression): Minor code | |
1261 | reorganization and cleanup. Done to ensure proper management of | |
1262 | the C++ constructor covering tagged and untagged types and also | |
1263 | non-default constructors. | |
1264 | * exp_ch6.ads, exp_ch6.adb (Make_CPP_Constructor_Call_In_Allocator): | |
1265 | New subprogram. | |
1266 | ||
b8a17a21 | 1267 | 2012-10-03 Gary Dismukes <dismukes@adacore.com> |
1268 | ||
1269 | * sem_ch6.adb: Minor typo fix. | |
1270 | ||
1271 | 2012-10-03 Robert Dewar <dewar@adacore.com> | |
1272 | ||
1273 | * checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated): | |
1274 | Set Top_Level properly (to False) for operand of range of | |
1275 | membership test. | |
1276 | * exp_ch4.adb (Expand_Membership_Minimize_Eliminate_Overflow): | |
1277 | Fix crash with -gnato3 and membership operations. | |
1278 | (Expand_Membership_Minimize_Eliminate_Overflow): Fix error message | |
1279 | and wrong results for -gnato3 large expression and predicated | |
1280 | subtype. | |
1281 | (Expand_Membership_Minimize_Eliminate_Overflow): Use | |
1282 | expression action node to avoid using insert actions (bombs in | |
1283 | some cases). | |
1284 | (Expand_Compare_Minimize_Eliminate_Overflow): Use expression action | |
1285 | node to avoid using insert actions (bombs in some cases). | |
1286 | ||
1287 | 2012-10-03 Javier Miranda <miranda@adacore.com> | |
1288 | ||
1289 | * exp_disp.adb (Set_CPP_Constructors_Old): Handle constructor of | |
1290 | untagged type that has all its parameters with defaults and hence it | |
1291 | covers the default constructor. | |
1292 | ||
691fe9e0 | 1293 | 2012-10-03 Yannick Moy <moy@adacore.com> |
1294 | ||
1295 | * checks.adb, sem_prag.adb, s-bignum.ads: Minor typo fixes. | |
1296 | ||
1297 | 2012-10-03 Thomas Quinot <quinot@adacore.com> | |
1298 | ||
1299 | * g-socket.adb (Connect_Socket, version with timeout): When the | |
1300 | newly-connected socket is reported as available for writing, check | |
1301 | whether it has a pending asynchronous error prior to returning. | |
1302 | ||
1303 | 2012-10-03 Ed Schonberg <schonberg@adacore.com> | |
1304 | ||
1305 | * sem_ch6.adb (Check_Conformance): Additional info when subtype | |
1306 | conformance fails, due to a missing null exclusion indicatar in | |
1307 | a formal that must match a controlling access formal. | |
1308 | ||
f32c377d | 1309 | 2012-10-02 Ben Brosgol <brosgol@adacore.com> |
1310 | ||
1311 | * gnat_rm.texi: Minor editing. | |
1312 | ||
1313 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1314 | ||
1315 | * sem_ch6.adb (Analyze_Function_Return): Reject a return | |
1316 | expression whose type is a local access to subprogram type. | |
1317 | ||
1318 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1319 | ||
1320 | * sem_eval.adb: Minor improvement to Compile_Time_Compare. | |
1321 | ||
1322 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1323 | ||
1324 | * checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated): | |
1325 | Fix base type problem that resulted in improper conversion. | |
1326 | (Minimize_Eliminate_Overflow_Checks): Properly handle top | |
1327 | level case to avoid unnecessary conversion to bignum or LLI. | |
1328 | (Minimize_Eliminate_Overflow_Checks): Implement uniform two phase | |
1329 | approach for arithmetic operators and for if/case expressions. | |
1330 | * checks.ads: Minor comment fix. | |
1331 | * exp_ch4.adb (Minimized_Eliminated_Overflow_Check): New function, | |
1332 | implements a uniform way of treating minimized/eliminated checks in | |
1333 | two phases. | |
1334 | (Expand_Compare_Minimize_Eliminate_Overflow): Fix cut and | |
1335 | paste error resulting in wrong results for less than in some | |
1336 | cases. (Expand_Membership_Minimize_Eliminate_Overflow): | |
1337 | Fix error caused by incorrect capture of operand types. | |
1338 | (Expand_Membership_Minimize_Eliminate_Overflow): Fix error in | |
1339 | handling of bignum case. | |
1340 | (Expand_N_Case_Expression): Implement | |
1341 | proper two phase handling (Expand_N_If_Expression): Implement | |
1342 | proper two phase handling (Expand_N_Op_Abs): Implement proper | |
1343 | two phase handling ditto for all other arithmetic operators | |
1344 | * sem_res.adb (Resolve_If_Expression): Avoid introducing | |
1345 | unneeded conversions. | |
1346 | ||
30f24d11 | 1347 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1348 | ||
1349 | * s-bignum.adb (Big_Exp): 0**0 should be 1, not 0. | |
1350 | (Big_Exp): Fix possible error for (-1)**0. | |
1351 | (Big_Exp): Fix error in computing 2**K for small K. | |
1352 | (Big_Mod): Fix wrong sign for negative operands. | |
1353 | (Div_Rem): Fix bad results for operands close to 2**63. | |
1354 | * s-bignum.ads: Add documentation and an assertion to require | |
1355 | LLI size to be 64 bits. | |
1356 | * sem_prag.adb (Analyze_Pragma, case Overflow_Checks): Do not | |
1357 | allow ELIMINATED if LLI'Size is other than 64 bits. | |
1358 | * switch-c.adb (Scan_Switches): Do not allow -gnato3 if LLI'Size | |
1359 | is not 64 bits. | |
1360 | * switch.ads (Bad_Switch): Add missing pragma No_Return. | |
1361 | * gnat_ugn.texi: Added appendix on Overflow Check Handling in GNAT. | |
1362 | ||
1363 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1364 | ||
1365 | * sem_type.adb: Minor reformatting. | |
1366 | ||
c1b63034 | 1367 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1368 | ||
1369 | * sem_ch8.adb: Minor reformatting. | |
1370 | ||
1371 | 2012-10-02 Javier Miranda <miranda@adacore.com> | |
1372 | ||
1373 | * exp_disp.adb (Set_CPP_Constructors): Handle constructor with default | |
1374 | parameters that covers the default constructor. | |
1375 | ||
1376 | 2012-10-02 Yannick Moy <moy@adacore.com> | |
1377 | ||
1378 | * s-bignum.adb: Minor stylistic and comment corrections. | |
1379 | ||
1380 | 2012-10-02 Pascal Obry <obry@adacore.com> | |
1381 | ||
1382 | * prj-util.adb (For_Interface_Sources): Iterate over all sources in | |
1383 | aggregate library projects. | |
1384 | ||
a9cd46a6 | 1385 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> |
1386 | ||
1387 | * sem_ch8.adb (Find_Direct_Name): The left-hand side of an | |
1388 | assignment may designate a generalized reference. | |
1389 | ||
af9fed8f | 1390 | 2012-10-02 Eric Botcazou <ebotcazou@adacore.com> |
1391 | ||
1392 | * types.h (N_Return_Statement): Delete. | |
1393 | * gcc-interface/trans.c (gnat_to_gnu): Replace N_Return_Statement with | |
1394 | N_Simple_Return_Statement. | |
1395 | ||
1396 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1397 | ||
1398 | * freeze.adb (Freeze_Entity): in a generic context, aspects must | |
1399 | be analyzed because they may be queried subsequently within the | |
1400 | generic unit, even if no other freezing actions are generated | |
1401 | for an entity. | |
1402 | * sem_ch13.adb (Analyze_Aspects_At_Freeze_Point): iterator | |
1403 | aspects must be analyzed because they are delayed aspects and | |
1404 | the corresponding attribute definition clause may not have been | |
1405 | analyzed yet. | |
1406 | ||
1407 | 2012-10-02 Yannick Moy <moy@adacore.com> | |
1408 | ||
1409 | * gnat_rm.texi: Minor editing. | |
1410 | ||
ae70cd27 | 1411 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1412 | ||
1413 | * sinfo.adb, sinfo.ads, sem_util.adb, sem_util.ads, types.h, | |
1414 | exp_ch4.adb, exp_ch6.adb: Get rid of internal use of N_Return_Statement. | |
1415 | ||
02eab984 | 1416 | 2012-10-02 Eric Botcazou <ebotcazou@adacore.com> |
1417 | ||
1418 | * types.h: Minor cosmetic fix. | |
1419 | ||
549fe569 | 1420 | 2012-10-02 Eric Botcazou <ebotcazou@adacore.com> |
1421 | ||
1422 | * gcc-interfaces/decl.c (elaborate_expression_1): Use the variable for | |
1423 | bounds of loop iteraration scheme only for locally defined subtypes. | |
1424 | ||
1425 | * gcc-interface/trans.c (gigi): Fix formatting. | |
1426 | (build_return_expr): Apply the NRV optimization only for BLKmode. | |
1427 | ||
02eab984 | 1428 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1429 | ||
1430 | * sinfo.ads: Remove refs of N_Conditional_Expression and | |
1431 | N_Parameterized_Expression. | |
1432 | ||
1433 | 2012-10-02 Thomas Quinot <quinot@adacore.com> | |
1434 | ||
1435 | * exp_aggr.adb (Get_Component_Val): Rewrite code that computes | |
1436 | justification of bits in enclosing word in an attempt to make | |
1437 | it clearer. | |
1438 | ||
92f1631f | 1439 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1440 | ||
1441 | * par_sco.adb, sem_ch3.adb, layout.adb, exp_ch7.adb, exp_imgv.adb, | |
1442 | exp_util.adb, exp_util.ads, exp_attr.adb, sinfo.adb, sinfo.ads, | |
1443 | exp_ch9.adb, style.ads, scos.ads, debug.adb, einfo.ads, scng.adb, | |
1444 | checks.adb, checks.ads, sem.adb, par-ch4.adb, sem_util.adb, types.h, | |
1445 | sem_res.adb, expander.adb, scans.ads, par.adb, exp_ch2.adb, | |
1446 | gnat1drv.adb, stylesw.ads, sem_elab.adb, exp_ch4.adb, exp_ch4.ads, | |
1447 | exp_ch6.adb, sem_ch4.adb, sem_ch4.ads, sem_ch6.adb, | |
1448 | opt.ads, sem_eval.adb, sem_eval.ads, exp_intr.adb, sprint.adb, | |
1449 | sprint.ads, styleg.ads: Change name Conditional_Expression to | |
1450 | If_Expression. | |
1451 | * gcc-interface/trans.c (gnat_to_gnu): Replace | |
1452 | N_Conditional_Expression by N_If_Expression. | |
1453 | * gcc-interface/Make-lang.in: Update dependencies. | |
1454 | ||
595e47de | 1455 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1456 | ||
1457 | * exp_ch4.adb (Expand_N_Op_Expon): Use expression with actions | |
1458 | for x ** 4. | |
1459 | ||
1460 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1461 | ||
1462 | * sem_ch5.adb: (Analyze_Iterator_Specification): If container | |
1463 | has a variable indexing aspect, the element is a variable and | |
1464 | is modifiable in the loop. This check is also performed when the | |
1465 | loop is expanded, but it must be done in semantic analysis when | |
1466 | expansion is disabled, for example for ASIS usage. | |
1467 | ||
1468 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1469 | ||
1470 | * lib-xref.adb (Generate_Reference): If a child subprogram | |
1471 | has no previous spec, treat a reference to its formals (such | |
1472 | as a parameter association) as coming from source in order to | |
1473 | generate the proper references and enable gps navigation between | |
1474 | reference and declaration. | |
1475 | ||
0326b4d4 | 1476 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1477 | ||
1478 | * checks.adb (Apply_Arithmetic_Overflow_Checked_Suppressed): | |
1479 | New name for Apply_Arithmetic_Overflow_Normal | |
1480 | (Apply_Arithmetic_Overflow_Minimized_Eliminated): | |
1481 | Add handling for conditional expressions | |
1482 | (Is_Signed_Integer_Arithmetic_Op): Now includes conditional | |
1483 | expressions (Minimize_Eliminate_Overflow_Checks): Handle | |
1484 | conditional expressions. | |
1485 | * checks.ads: Minor comment fixes. | |
1486 | * exp_ch4.adb (Expand_N_Case_Expression): Call | |
1487 | Apply_Arithmetic_Overflow_Check (Expand_N_Conditional_Expression): | |
1488 | Call Apply_Arithmetic_Overflow_Check | |
1489 | * s-bignum.adb (Normalize): Remove incorrect precondition. | |
1490 | * sem_res.adb (Resolve_Case_Expression): Set Do_Overflow_Check | |
1491 | flag (Resolve_Conditional_Expression): Set Do_Overflow_Check flag. | |
1492 | * sinfo.adb: Add Do_Overflow_Check for conditional expressions. | |
1493 | * sinfo.ads: Minor documentation updates. | |
1494 | ||
276da501 | 1495 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> |
1496 | ||
1497 | * exp_ch4.adb (Expand_N_Case_Expression): Do not introduce | |
1498 | indirections when the type of the alternatives is an access type: | |
1499 | more efficient, and removes anomalies when an alternative is | |
1500 | statically null. | |
1501 | ||
1502 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1503 | ||
1504 | * aspects.ads: Minor comment addition (Invariant is a GNAT aspect). | |
1505 | ||
a45d946f | 1506 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1507 | ||
1508 | * exp_ch7.adb, sem_dim.adb, sem_dim.ads, prj-part.adb, checks.adb, | |
1509 | freeze.adb, sem_ch4.adb, sem_ch13.adb: Minor reformatting. | |
1510 | ||
1511 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1512 | ||
1513 | * sem_prag.adb (Analyze_Pragma, case Overflow_Checks): Fix | |
1514 | typo preventing proper processing of Overflow_Checks pragmas | |
1515 | for general case. | |
1516 | ||
1517 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1518 | ||
1519 | * exp_ch4.adb (Expand_N_Op_Mod): Fix crash in ELIMINATED overflow | |
1520 | checks mode when bignum mode is used. | |
1521 | ||
1522 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1523 | ||
1524 | * stylesw.ads, gnat_ugn.texi: Document new style rule for NOT IN. | |
1525 | * par-ch4.adb (P_Relational_Operator): Add style check for NOT IN. | |
1526 | * style.ads, styleg.adb, styleg.ads (Check_Not_In): New procedure. | |
1527 | ||
fb0ac559 | 1528 | 2012-10-02 Vincent Pucci <pucci@adacore.com> |
1529 | ||
1530 | * sem_attr.adb (Analyze_Attribute): Check dimension for attribute | |
1531 | Old before it gets expanded. | |
1532 | * sem_dim.adb (Analyze_Dimension_Has_Etype): Correctly propagate | |
1533 | dimensions for identifier. | |
1534 | ||
1535 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1536 | ||
1537 | * exp_ch5.adb (Expand_Iterator_Loop): Handle properly the case | |
1538 | where the iterator type is derived locally from an instantiation | |
1539 | of Ada.Iterators_Interface. | |
1540 | * exp_ch7.adb (Establish_Transient_Scope): Do not create a | |
1541 | transient scope if within the expansion of an iterator loop, | |
1542 | because a transient block already exists. | |
1543 | ||
1544 | 2012-10-02 Vincent Celier <celier@adacore.com> | |
1545 | ||
1546 | * gnatcmd.adb: Use absolute path for configuration pragmas files | |
1547 | * make.adb (Configuration_Pragmas_Switch.Absolute_Path): Moved | |
1548 | to Makeutl. | |
1549 | * makeutl.ads, makeutl.adb (Absolute_Path): New function, moved from | |
1550 | make.adb. | |
1551 | ||
1552 | 2012-10-02 Vincent Celier <celier@adacore.com> | |
1553 | ||
1554 | * prj-part.adb (Post_Parse_Context_Clause): Resurrect Boolean | |
1555 | parameter In_Limited. Check for circularity also if In_Limited | |
1556 | is True. | |
1557 | (Parse_Single_Project): Call Post_Parse_Context_Clause with | |
1558 | In_Limited parameter. | |
1559 | ||
cac18f71 | 1560 | 2012-10-02 Bob Duff <duff@adacore.com> |
1561 | ||
1562 | * checks.adb (Apply_Predicate_Check): Disable check in -gnatc mode. | |
1563 | ||
1564 | 2012-10-02 Vincent Pucci <pucci@adacore.com> | |
1565 | ||
1566 | * sem_ch6.adb (Analyze_Function_Call): Dimension propagation | |
1567 | for function calls moved to Analyze_Dimension_Call. | |
1568 | * sem_dim.adb (Analyze_Dimension_Call): Properly propagate the | |
1569 | dimensions from the returned type for function calls. | |
1570 | ||
1571 | 2012-10-02 Vincent Celier <celier@adacore.com> | |
1572 | ||
1573 | * gnatcmd.adb: Take into account any configuration pragma file | |
1574 | in the project files for gnat pretty/stub/metric. | |
1575 | ||
1576 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1577 | ||
1578 | * sem_ch13.adb (Check_Indexing_Functions): Refine several tests | |
1579 | on the legality of indexing aspects: Constant_Indexing functions | |
1580 | do not have to return a reference type, and given an indexing | |
1581 | aspect Func, not all overloadings of Func in the current scope | |
1582 | need to be indexing functions. | |
1583 | ||
1584 | 2012-10-02 Vasiliy Fofanov <fofanov@adacore.com> | |
1585 | ||
1586 | * gnat_ugn.texi: Adjust docs for overflow checks to be VMS-friendly. | |
1587 | ||
1588 | 2012-10-02 Vincent Celier <celier@adacore.com> | |
1589 | ||
1590 | * switch-m.adb (Normalize_Compiler_Switches): Recognize switches | |
1591 | -gnatox and -gnatoxx when x=0/1/2/3. | |
1592 | ||
3b045963 | 1593 | 2012-10-02 Vincent Pucci <pucci@adacore.com> |
1594 | ||
1595 | * sem_ch4.adb (Analyze_Indexed_Component_Form): Dimension | |
1596 | analysis for indexed components added. | |
1597 | * sem_ch6.adb (Analyze_Function_Call): Dimension propagation | |
1598 | for function calls added. | |
1599 | * sem_dim.adb (Analyze_Dimension): Call to | |
1600 | Analyze_Dimension_Has_Etype when N is a function call. | |
1601 | (Analyze_Dimension_Call): Don't propagate anymore the dimensions | |
1602 | for function calls since this is now treated separately in | |
1603 | Analyze_Dimension_Has_Etype. | |
1604 | (Analyze_Dimension_Has_Etype): For | |
1605 | attribute references, propagate the dimensions from the prefix. | |
1606 | * sem_dim.ads (Copy_Dimensions): Fix comment. | |
1607 | ||
1608 | 2012-10-02 Hristian Kirtchev <kirtchev@adacore.com> | |
1609 | ||
1610 | * checks.ads, checks.adb (Apply_Parameter_Aliasing_Checks): New routine. | |
1611 | (Apply_Parameter_Aliasing_And_Validity_Checks): This routine | |
1612 | has been split into two. | |
1613 | (Apply_Parameter_Validity_Checks): New routine. | |
1614 | * exp_ch6.adb (Expand_Call): Add checks to verify that actuals | |
1615 | do not overlap. The checks are made on the caller side to overcome | |
1616 | issues of parameter passing mechanisms. | |
1617 | * freeze.adb (Freeze_Entity): Update call to | |
1618 | Apply_Parameter_Aliasing_And_Validity_Checks. | |
1619 | ||
c9e56837 | 1620 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> |
1621 | ||
1622 | * sem_ch4.adb (Is_Empty_Range): Use bounds of index type | |
1623 | to determine whether an array is empty when optimizing | |
1624 | a quantified expression over a null range. Use of RM_Size | |
1625 | was incorrect. Analyze condition before constant-folding the | |
1626 | expression to catch potential errors. Modify the error message | |
1627 | to avoid mathematical terminology. | |
1628 | ||
df7590c5 | 1629 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1630 | ||
1631 | * usage.adb, gnat_rm.texi, vms_data.ads: Add entry for | |
1632 | /OVERFLOW_CHECKS=?? generating -gnato?? for control | |
1633 | of extended overflow checking. | |
1634 | * ug_words: Add entry for -gnato?? for /OVERFLOW_CHECKS=?? | |
1635 | * gnat_ugn.texi: Add documentation for -gnato?? for control of overflow | |
1636 | checking mode. | |
1637 | ||
1638 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1639 | ||
1640 | * sem_ch4.adb (Analyze_Quantified_Expression): If the iterator in | |
1641 | a quantified expression is statically known to be null (e.g. a | |
1642 | array with an empty index type) emit a warning. | |
1643 | ||
61016a7a | 1644 | 2012-10-02 Robert Dewar <dewar@adacore.com> |
1645 | ||
1646 | * sem_dim.adb: Minor code reorganization. | |
1647 | * sem_dim.ads: Add comment. | |
1648 | ||
1649 | 2012-10-02 Robert Dewar <dewar@adacore.com> | |
1650 | ||
1651 | * checks.ads, exp_ch4.adb, checks.adb | |
1652 | (Minimize_Eliminate_Overflow_Checks): Add Top_Level parameter to avoid | |
1653 | unnecessary conversions to Bignum. | |
1654 | Minor reformatting. | |
1655 | ||
1656 | 2012-10-02 Ed Schonberg <schonberg@adacore.com> | |
1657 | ||
1658 | * sem_ch6.adb (Process_PPCs): Generate invariant checks for a | |
1659 | return value whose type is an access type and whose designated | |
1660 | type has invariants. Ditto for in-out parameters and in-parameters | |
1661 | of an access type. | |
1662 | * exp_ch3.adb (Build_Component_Invariant_Call): Add invariant check | |
1663 | for an access component whose designated type has invariants. | |
1664 | ||
cf4089a8 | 1665 | 2012-10-01 Vincent Pucci <pucci@adacore.com> |
1666 | ||
1667 | * sem_aggr.adb (New_Copy_Tree_And_Copy_Dimensions): New routine. | |
1668 | (Resolve_Record_Aggregate): New_Copy_Tree calls replaced by | |
1669 | New_Copy_Tree_And_Copy_Dimensions calls. Move_Dimensions call | |
1670 | replaced by Copy_Dimensions call. | |
1671 | * sem_dim.adb (Analyze_Dimension_Component_Declaration): Don't | |
1672 | remove the dimensions of expression in component declaration anymore. | |
1673 | (Copy_Dimensions): New routine. | |
1674 | (Move_Dimensions): Add call to Copy_Dimensions. | |
1675 | * sem_dim.ads (Copy_Dimensions): New routine. | |
1676 | (Move_Dimensions): Spec moved to body of Sem_Dim. | |
1677 | ||
e6281d47 | 1678 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> |
1679 | ||
1680 | * checks.adb (Apply_Predicate_Check): If the predicate is a | |
1681 | static one and the operand is static, evaluate the predicate at | |
1682 | compile time. | |
1683 | * sem_eval.ads, sem_eval.adb (Eval_Static_Predicate_Check): new | |
1684 | procedure, to evaluate a static predicate check whenever possible. | |
1685 | * sem_res.adb (Resolve_Type_Conversion): Apply predicate check | |
1686 | on the conversion if the target type has predicates. | |
1687 | ||
1688 | 2012-10-01 Vincent Pucci <pucci@adacore.com> | |
1689 | ||
1690 | * sem_dim.adb (Has_Symbols): Complain if parameter Symbol has been | |
1691 | provided by the user in the dimension output call. | |
1692 | ||
2fe22c69 | 1693 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
1694 | ||
1695 | * checks.adb (Apply_Divide_Checks): New name for | |
1696 | Apply_Divide_Check (Minimize_Eliminate_Overflow_Checks): | |
1697 | Add code to handle division (and rem and mod) properly. | |
1698 | (Apply_Division_Check): New procedure (Apply_Divide_Checks): | |
1699 | Use Apply_Division_Check (Apply_Divide_Checks): Use | |
1700 | Apply_Arithmetic_Overflow_Minimized_Eliminated. | |
1701 | * checks.ads (Apply_Divide_Checks): New name for | |
1702 | Apply_Divide_Check, also add clearer documentation for this | |
1703 | routine and put in alfa order. | |
1704 | * exp_ch4.adb (Apply_Divide_Checks): New name for | |
1705 | Apply_Divide_Check. | |
1706 | * s-bignum.adb (To_Bignum): Handle largest negative integer | |
1707 | properly. | |
1708 | * sem.adb (Analyze): Handle overflow suppression correctly | |
1709 | (Analyze_List): Handle overflow suppression correctly | |
1710 | * sem_res.adb (Analyze_And_Resolve): Handle overflow suppression | |
1711 | correctly. | |
1712 | ||
1713 | 2012-10-01 Vasiliy Fofanov <fofanov@adacore.com> | |
1714 | ||
1715 | * s-oscons-tmplt.c, g-socket.ads: Revert previous change, breaks VMS. | |
1716 | ||
de922300 | 1717 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
1718 | ||
1719 | * checks.adb (Minimize_Eliminate_Overflow_Checks): Changes | |
1720 | for exponentiation. | |
1721 | * exp_ch4.adb (Expand_N_Op_Expon): Changes for Minimize/Eliminate | |
1722 | overflow checks. | |
1723 | * s-bignum.adb (Compare): Fix bad precondition. | |
1724 | ||
1725 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> | |
1726 | ||
1727 | * sem_ch3.adb (Build_Derived_Record_Type): If the derived | |
1728 | type has new discriminantss that constrain inherited ones, use | |
1729 | the discriminant type in the original declaration to check for | |
1730 | conformance, because in the presence of array components with a | |
1731 | smaller range that are constrained by the origina discriminant, | |
1732 | the compiler will have created a narrower subtype for that | |
1733 | discriminant. | |
1734 | ||
aa4b16cb | 1735 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
1736 | ||
1737 | * checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated): | |
1738 | Handle case of appearing in range in membership test. | |
1739 | * exp_ch4.adb (Expand_Membership_Minimize_Eliminate_Overflow): | |
1740 | New procedure (Expand_N_In): Use | |
1741 | Expand_Membership_Minimize_Eliminate_Overflow. | |
1742 | * rtsfind.ads: Add RE_Bignum_In_LLI_Range. | |
1743 | * s-bignum.ads, s-bignum.adb (Bignum_In_LLI_Range): New function. | |
1744 | * sinfo.ads, sinfo.adb (No_Minimize_Eliminate): New flag. | |
1745 | ||
1746 | 2012-10-01 Robert Dewar <dewar@adacore.com> | |
1747 | ||
1748 | * uintp.ads: Minor reformatting. | |
1749 | ||
96a2d100 | 1750 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> |
1751 | ||
1752 | * checks.adb: Improve warning message. | |
1753 | ||
d94b5da2 | 1754 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
1755 | ||
1756 | * checks.adb: Minor reformatting. | |
1757 | ||
1758 | 2012-10-01 Javier Miranda <miranda@adacore.com> | |
1759 | ||
1760 | * exp_ch3.adb (Expand_N_Object_Declaration): Suppress tag | |
1761 | assignment for initializations that are aggregates. | |
1762 | ||
1763 | 2012-10-01 Robert Dewar <dewar@adacore.com> | |
1764 | ||
1765 | * exp_ch4.adb (Expand_Compare_Minimize_Eliminate_Overflow): | |
1766 | New procedure. | |
1767 | ||
49b3a812 | 1768 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
1769 | ||
1770 | * checks.adb (Minimize_Eliminate_Checks): Changes from testing. | |
1771 | (Apply_Arithmetic_Overflow_Minimized_Eliminated): Changes | |
1772 | from testing. | |
1773 | * sinfo.ads: Remove note on not setting Entity field in overflow | |
1774 | case since this is no longer true. | |
1775 | * Makefile.rtl: Add s-bignum.o | |
1776 | ||
1777 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1778 | ||
1779 | * Make-generated.in: Correction to previous change for s-oscons | |
1780 | target. | |
1781 | ||
1782 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1783 | ||
1784 | * s-bignum.adb (Allocate_Bignum): Reorganize to kill strict | |
1785 | aliasing warning. | |
1786 | ||
3cce7f32 | 1787 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
1788 | ||
1789 | * checks.adb (Overflow_Check_Mode): New function | |
1790 | (Apply_Overflow_Check): New procedure (Is_Check_Suppressed): | |
1791 | Moved here from Sem, Overflow_Check case now specially treated. | |
1792 | * checks.ads (Overflow_Check_Mode): New function | |
1793 | (Is_Check_Suppressed): Moved here from Sem (more logical) | |
1794 | * exp_ch4.adb (Substitute_Valid_Check): Suppress warning about | |
1795 | optimization if we are in MINIMIZED or ELIMINATED overflow | |
1796 | checking mode and within an assertiom expression. | |
1797 | * rtsfind.ads: Add entries for Bignum stuff. | |
1798 | * s-bignum.ads, s-bignum.adb: New files. | |
1799 | * sem.ads, sem.adb (Is_Check_Suppressed): Moved to Checks, more logical. | |
1800 | * sem_prag.adb (Process_Suppress_Unsuppress): New behavior for | |
1801 | Unsuppress of Overflow_Check (sets Checked instead of Minimized) | |
1802 | * sem_res.adb: Update comments. | |
1803 | * sinfo.ads (N_Op): Add documentation on overflow handling. | |
1804 | * tbuild.ads, tbuild.adb (Convert_To_And_Rewrite): New procedure. | |
1805 | * types.ads (Minimized_Or_Eliminated): New subtype. | |
1806 | ||
1807 | 2012-10-01 Eric Botcazou <ebotcazou@adacore.com> | |
1808 | ||
1809 | * layout.adb (Layout_Type): Do not set twice the address size | |
1810 | on an access-to-unconstrained array if Debug_Flag_6 is set. | |
1811 | ||
15e5d5ca | 1812 | 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> |
1813 | ||
1814 | * sem_ch3.adb (Analyze_Declarations): Remove the specialized | |
1815 | code which prevents freezing when the declarative list contains | |
1816 | a _postconditions body. This is no longer needed because the | |
1817 | body is now inserted at the end of the declarations. | |
1818 | * sem_ch6.adb (Insert_After_Last_Declaration): New routine. | |
1819 | (Insert_Before_First_Source_Declaration): Removed. | |
1820 | (Process_PPCs): Insert the _postconditions body at the end of | |
1821 | the declarative list to prevent premature freezing of types that | |
1822 | appear in the declarations. | |
1823 | ||
1824 | 2012-10-01 Robert Dewar <dewar@adacore.com> | |
1825 | ||
1826 | * sem_aggr.adb, sem_dim.adb: Minor reformatting. | |
1827 | ||
22631b41 | 1828 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> |
1829 | ||
1830 | * sem_prag.adb (Process_Convention, Process_Import_Or_Interface): | |
1831 | Adjust test so that when the pragma comes from an aspect | |
1832 | specification it only applies to the entity in the original | |
1833 | declaration. | |
1834 | ||
1835 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1836 | ||
1837 | * gnat_ugn.texi: Document new command line switch -fada-spec-parent. | |
1838 | ||
1839 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1840 | ||
1841 | * s-oscons-tmplt.c, g-socket.ads: Minor code improvement: use gcc | |
1842 | builtin __alignof__ to get the alignment of struct fd_set. | |
1843 | ||
1844 | 2012-10-01 Vincent Pucci <pucci@adacore.com> | |
1845 | ||
1846 | * exp_ch6.adb (Expand_Call): Remove call to | |
1847 | Remove_Dimension_In_Call. | |
1848 | * sem_aggr.adb (Resolve_Array_Aggregate): Analyze dimension of | |
1849 | components in array aggregate. | |
1850 | (Resolve_Aggr_Expr): Propagate dimensions from the original expression | |
1851 | Expr to the new created expression New_Expr when resolving the | |
1852 | expression of a component in record aggregates. | |
1853 | (Resolve_Record_Aggregate): Analyze | |
1854 | dimension of components in record (or extension) aggregate. | |
1855 | * sem_ch6.adb (Analyze_Subprogram_Specification): Analyze | |
1856 | dimension of formals with default expressions in subprogram | |
1857 | specification. | |
1858 | * sem_ch8.adb (Analyze_Expanded_Name): Analyze dimension of | |
1859 | expanded names. | |
1860 | (Find_Selected_Component): Analyze dimension of selected component. | |
1861 | * sem_dim.adb: Several dimension error messages reformatting. | |
1862 | (Dimensions_Msg_Of): New flag Description_Needed in order to | |
1863 | differentiate two different sort of dimension error messages. | |
1864 | (Dim_Warning_For_Numeric_Literal): New routine. | |
1865 | (Exists): New routine. | |
1866 | (Move_Dimensions): Routine spec moved to spec file. | |
1867 | * sem_dim.ads (String_From_Numeric_Literal): New routine. | |
1868 | (Analyze_Dimension): Analyze dimension only when the | |
1869 | node comes from source. Dimension analysis for expanded names added. | |
1870 | (Analyze_Dimension_Array_Aggregate): New routine. | |
1871 | (Analyze_Dimension_Call): New routine. | |
1872 | (Analyze_Dimension_Component_Declaration): Warning if default | |
1873 | expression is a numeric literal. | |
1874 | (Analyze_Dimension_Extension_Or_Record_Aggregate): New routine. | |
1875 | (Analyze_Dimension_Formals): New routine. | |
1876 | (Analyze_Dimension_Object_Declaration): Warning if default | |
1877 | expression is a numeric literal. | |
1878 | (Symbol_Of): Return either the dimension subtype symbol or the | |
1879 | dimension symbol built by From_Dim_To_Str_Of_Unit_Symbols. | |
1880 | * sem_dim.ads (Analyze_Dimension_Array_Aggregate): New routine. | |
1881 | (Analyze_Dimension_Call): New routine. | |
1882 | (Analyze_Dimension_Extension_Or_Record_Aggregate): New routine. | |
1883 | (Analyze_Dimension_Formals): New routine. | |
1884 | (Move_Dimensions): Moved from sem_dim.adb. | |
1885 | * s-dimmks.ads: Turn off the warnings for dimensioned object | |
1886 | declaration. Dimensioned subtypes sorted in alphabetical | |
1887 | order. New subtypes Area, Speed, Volume. | |
1888 | * s-dmotpr.ads: Turn off the warnings for dimensioned object | |
1889 | declaration. | |
1890 | * sem_res.adb (Resolve_Call): Analyze dimension for calls. | |
1891 | ||
1892 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1893 | ||
1894 | * Make-generated.in: Minor cleanup of all targets: use | |
1895 | MOVE_IF_CHANGE to put generated files in place, to avoid useless | |
1896 | recompilations. | |
1897 | ||
1898 | 2012-10-01 Javier Miranda <miranda@adacore.com> | |
1899 | ||
1900 | * exp_disp.adb (Expand_Dispatching_Call): For functions returning | |
1901 | interface types add an implicit conversion to the returned object | |
1902 | to force the displacement of the pointer to the returned object | |
1903 | to reference the corresponding secondary dispatch table. This | |
1904 | is needed to handle well combined calls involving secondary | |
1905 | dispatch tables (for example Obj.Prim1.Prim2). | |
1906 | * exp_ch4.adb (Expand_Allocator_Expression): Declare internal | |
1907 | access type as access to constant or access to variable depending | |
1908 | on the context. Found working in this ticket. | |
1909 | ||
1910 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> | |
1911 | ||
1912 | * checks.adb (Apply_Predicate_Check): Do not apply check to | |
1913 | actual of predicate checking procedure, to prevent infinite | |
1914 | recursion. | |
1915 | ||
71e95bca | 1916 | 2012-10-01 Arnaud Charlet <charlet@adacore.com> |
1917 | ||
1918 | * gcc-interface/Make-lang.in: Update dependencies. | |
1919 | (GCC_LINK): Add -static-libstdc++. | |
1920 | ||
b6341c67 | 1921 | 2012-10-01 Arnaud Charlet <charlet@adacore.com> |
1922 | ||
1923 | * a-catizo.adb, a-stwiun.adb, a-cdlili.adb, a-cihama.adb, a-direct.adb, | |
1924 | a-coinve.adb, a-calend.adb, a-ciorse.adb, a-coorma.adb, a-cfdlli.adb, | |
1925 | a-stzunb-shared.adb, a-cfhase.adb, bindgen.adb, ceinfo.adb, a-tags.adb, | |
1926 | einfo.adb, checks.adb, eval_fat.adb, a-cborma.adb, a-stwifi.adb, | |
1927 | a-tifiio.adb, a-textio.adb, a-cidlli.adb, a-strunb-shared.adb, | |
1928 | a-cimutr.adb, a-calcon.adb, a-exexpr-gcc.adb, a-ciormu.adb, | |
1929 | a-stzunb.adb, a-stzsea.adb, a-ngelfu.adb, a-stzfix.adb, | |
1930 | a-cihase.adb, a-cohama.adb, a-exetim-posix.adb, a-dirval-vms.adb, | |
1931 | a-caldel-vms.adb, a-coorse.adb, errout.adb, | |
1932 | a-except.adb, butil.adb, a-dirval-mingw.adb, a-cforma.adb, | |
1933 | a-except-2005.adb, a-wtedit.adb, cstand.adb, a-stwiun-shared.adb, | |
1934 | a-cbhama.adb, a-direio.adb, clean.adb, a-cborse.adb, back_end.adb, | |
1935 | binde.adb, a-exexda.adb, a-comutr.adb, a-ciorma.adb, a-cobove.adb, | |
1936 | a-coormu.adb, a-teioed.adb, a-convec.adb, a-wtenau.adb, exp_aggr.adb, | |
1937 | a-ztedit.adb, a-cohase.adb, a-exetim-mingw.adb, bcheck.adb, | |
1938 | a-dynpri.adb, a-cfhama.adb, a-calfor.adb, a-cbdlli.adb, | |
1939 | a-crdlli.adb, a-cbmutr.adb, a-sequio.adb, a-ngcoar.adb, a-cforse.adb, | |
1940 | a-strunb.adb, a-calend-vms.adb, a-clrefi.adb, a-cofove.adb, | |
1941 | a-ztenau.adb, a-strfix.adb, a-cbhase.adb, a-stzsup.adb: Minor | |
1942 | reformatting. | |
1943 | ||
91e47010 | 1944 | 2012-10-01 Vincent Pucci <pucci@adacore.com> |
1945 | ||
1946 | * s-gearop.adb (Vector_Matrix_Product): Dimensions check fixed. Index | |
1947 | of Left in S evaluation fixed. | |
1948 | ||
1949 | 2012-10-01 Javier Miranda <miranda@adacore.com> | |
1950 | ||
1951 | * sem_ch3.adb (Analyze_Declarations): Avoid | |
1952 | premature freezing caused by the internally generated subprogram | |
1953 | _postconditions. | |
1954 | * checks.adb (Expr_Known_Valid): Float literals are assumed to be valid | |
1955 | in VM targets. | |
1956 | ||
1957 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1958 | ||
1959 | * sinput.ads, sinput.adb, sinput-l.adb sinput-c.adb (Sinput): New | |
1960 | Instances table, tracking all generic instantiations. Source file | |
1961 | attribute Instance replaces previous Instantiation attribute with an | |
1962 | index into the Instances table. | |
1963 | (Iterate_On_Instances): New generic procedure. | |
1964 | (Create_Instantiation_Source): Record instantiations in Instances. | |
1965 | (Tree_Read, Tree_Write): Read/write the instance table. | |
1966 | * scils.ads, scos.adb (SCO_Instance_Table): New table, contains | |
1967 | information copied from Sinput.Instance_Table, but self-contained | |
1968 | within the SCO data structures. | |
1969 | * par_sco.ads, par_sco.adb (To_Source_Location): Move to library level. | |
1970 | (Record_Instance): New subprogram, used by... | |
1971 | (Populate_SCO_Instance_Table): New subprogram to fill | |
1972 | the SCO instance table from the Sinput one (called by SCO_Output). | |
1973 | * opt.ads (Generate_SCO_Instance_Table): New option. | |
1974 | * put_scos.adb (Write_Instance_Table): New subprogram, used by... | |
1975 | (Put_SCOs): Dump the instance table at the end of SCO information | |
1976 | if requested. | |
1977 | * get_scos.adb (Get_SCOs): Read SCO_Instance_Table. | |
1978 | * types.h: Add declaration for Instance_Id. | |
1979 | * back_end.adb (Call_Back_End): Pass instance ids in source file | |
1980 | information table. | |
1981 | (Scan_Back_End_Switches): -fdebug-instances sets | |
1982 | Opt.Generate_SCO_Instance_Table. | |
1983 | * gcc-interface/gigi.h: File_Info_Type includes instance id. | |
1984 | * gcc-interface/trans.c: Under -fdebug-instances, set instance | |
1985 | id in line map from same in file info. | |
1986 | ||
1987 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1988 | ||
1989 | * sem_elab.adb: Minor reformatting | |
1990 | (Check_Elab_Call): Minor fix to debugging code | |
1991 | (add special circuit for the valid case where a 'Access attribute | |
1992 | reference is passed to Check_Elab_Call). | |
1993 | ||
1994 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
1995 | ||
1996 | * exp_ch3.adb: Minor reformatting. | |
1997 | ||
1bd93de5 | 1998 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> |
1999 | ||
2000 | * exp_ch3.ads (Build_Array_Invariant_Proc): moved to body. | |
2001 | * exp_ch3.adb (Build_Array_Invariant_Proc, | |
2002 | Build_Record_Invariant_Proc): transform into functions. | |
2003 | (Insert_Component_Invariant_Checks): for composite types that have | |
2004 | components with specified invariants, build a checking procedure, | |
2005 | and make into the invariant procedure of the composite type, | |
2006 | or incorporate it into the user- defined invariant procedure if | |
2007 | one has been created. | |
2008 | * sem_ch3.adb (Array_Type_Declaration): Checking for invariants | |
2009 | on the component type is defered to the expander. | |
2010 | ||
2011 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
2012 | ||
2013 | * xsnamest.adb, namet.h, sem_ch10.adb, s-oscons-tmplt.c, | |
2014 | xoscons.adb: Minor reformatting. | |
2015 | ||
2016 | 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> | |
2017 | ||
2018 | * checks.adb (Apply_Parameter_Aliasing_And_Validity_Checks): | |
2019 | Do not process subprogram renaminds because a) those cannot | |
2020 | have PPC pragmas b) the renamed entity already has the PPCs. | |
2021 | (Build_PPC_Pragma): Prepend a PPC pragma for consistency with | |
2022 | Process_PPCs. | |
2023 | * sem_ch6.adb (Last_Implicit_Declaration): Removed. | |
2024 | (Process_PPCs): Insert a post condition body at the start of the | |
2025 | declarative region of the related subprogram. This way the body | |
2026 | will not freeze anything it shouldn't. | |
2027 | ||
7c443ae8 | 2028 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
2029 | ||
2030 | * freeze.adb, sem_ch6.adb, opt.ads, sem_ch13.adb, | |
2031 | exp_ch3.adb: Minor reformatting. | |
2032 | ||
2033 | 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> | |
2034 | ||
2035 | * checks.adb (Build_PPC_Pragma): A PPC pragma can now be properly | |
2036 | associated with a subprogram body. | |
2037 | ||
5d3fb947 | 2038 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> |
2039 | ||
2040 | * aspects.ads: Type_Invariant'class is a valid aspect. | |
2041 | * sem_ch6.adb (Is_Public_Subprogram_For): with the exception of | |
2042 | initialization procedures, subprograms that do not come from | |
2043 | source are not public for the purpose of invariant checking. | |
2044 | * sem_ch13.adb (Build_Invariant_Procedure): Handle properly the | |
2045 | case of a non-private type in a package without a private part, | |
2046 | when the type inherits invariants from its ancestor. | |
2047 | ||
2048 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> | |
2049 | ||
2050 | * exp_ch3.adb (Build_Record_Invariant_Proc): new procedure to | |
2051 | generate a checking procedure for record types that may have | |
2052 | components whose types have type invariants declared. | |
2053 | ||
4a9e7f0c | 2054 | 2012-10-01 Vincent Pucci <pucci@adacore.com> |
2055 | ||
2056 | * system-solaris-sparcv9.ads, system-mingw.ads, system-vms_64.ads: Flag | |
2057 | Support_Atomic_Primitives set to True. | |
2058 | ||
2059 | 2012-10-01 Robert Dewar <dewar@adacore.com> | |
2060 | ||
2061 | * impunit.adb: Ada.Locales is a language defined unit. | |
2062 | ||
2063 | 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> | |
2064 | ||
2065 | * checks.adb (Apply_Parameter_Aliasing_Checks): Removed. | |
2066 | (Apply_Parameter_Aliasing_And_Validity_Checks): New routine. | |
2067 | (Apply_Parameter_Validity_Checks): Removed. | |
2068 | * checks.ads (Apply_Parameter_Aliasing_Checks): Removed. | |
2069 | (Apply_Parameter_Aliasing_And_Validity_Checks): New routine. | |
2070 | (Apply_Parameter_Validity_Checks): Removed. | |
2071 | * exp_ch6.adb (Expand_Call): Remove the generation of parameter | |
2072 | aliasing checks. | |
2073 | * freeze.adb: Remove with and use clauses for Validsw. | |
2074 | (Freeze_Entity): Update the guard and generation of aliasing | |
2075 | and scalar initialization checks for subprogram parameters. | |
2076 | * opt.ads: Add new flags Check_Aliasing_Of_Parameters and | |
2077 | Check_Validity_Of_Parameters along with comments on usage. | |
2078 | * sem_attr.adb (Analyze_Attribute): Pragma Overlaps_Storage is | |
2079 | no longer an Ada 2012 feature. | |
2080 | * sem_ch4.adb: Remove with and use clauses for Checks and Validsw. | |
2081 | (Analyze_Call): Remove the generation of aliasing checks for | |
2082 | subprogram parameters. | |
2083 | * sem_ch13.adb: Remove with and use clauses for Validsw. | |
2084 | (Analyze_Aspect_Specifications): Remove the generation of scalar | |
2085 | initialization checks. | |
2086 | * switch-c.adb (Scan_Front_End_Switches): Add processing for | |
2087 | -gnateA and -gnateV. | |
2088 | * usage.adb (Usage): Add information on switches -gnateA and | |
2089 | -gnateV. Remove information on validity switches 'l', 'L', | |
2090 | 'v' and 'V'. | |
2091 | * validsw.adb (Reset_Validity_Check_Options): Remove the | |
2092 | reset of flags Validity_Check_Non_Overlapping_Params | |
2093 | and Validity_Check_Valid_Scalars_On_Params. | |
2094 | (Save_Validity_Check_Options): Remove the processing | |
2095 | for flags Validity_Check_Non_Overlapping_Params | |
2096 | and Validity_Check_Valid_Scalars_On_Params. | |
2097 | (Set_Validity_Check_Options): Remove the processing | |
2098 | for flags Validity_Check_Non_Overlapping_Params and | |
2099 | Validity_Check_Valid_Scalars_On_Params. | |
2100 | * validsw.ads: Remove flags Validity_Check_Non_Overlapping_Params | |
2101 | and Validity_Check_Valid_Scalars_On_Params along with their | |
2102 | comments on usage. | |
2103 | ||
d513339a | 2104 | 2012-10-01 Yannick Moy <moy@adacore.com> |
2105 | ||
2106 | * sem_ch13.adb (Add_Invariants): Analyze the invariant expression | |
2107 | as an assertion expression. | |
2108 | * sem_ch3.adb / sem_ch3.ads (Preanalyze_Assert_Expression): | |
2109 | New procedure that wraps a call to Preanalyze_Spec_Expression | |
2110 | for assertion expressions, so that In_Assertion_Expr can be | |
2111 | properly adjusted. | |
2112 | * sem_prag.adb (Analyze_PPC_In_Decl_Part | |
2113 | Check_Precondition_Postcondition Preanalyze_CTC_Args): Call the | |
2114 | new Preanalyze_Assert_Expression. | |
2115 | ||
a1c925e5 | 2116 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
2117 | ||
2118 | * checks.ads: Minor reformatting. | |
2119 | ||
2120 | 2012-10-01 Yannick Moy <moy@adacore.com> | |
2121 | ||
2122 | * types.ads, sem_prag.adb, sem.ads: Correct minor typos in comments. | |
2123 | ||
724d2bd8 | 2124 | 2012-10-01 Vincent Celier <celier@adacore.com> |
2125 | ||
2126 | * make.adb (Scan_Make_Arg): Only test for "vP" of the option | |
2127 | includes at least 3 characters. | |
2128 | * gnatcmd.adb (GNATCmd): Ditto. | |
2129 | ||
2130 | 2012-10-01 Eric Botcazou <ebotcazou@adacore.com> | |
2131 | ||
2132 | * exp_ch7.adb, sinfo.ads: Add comments. | |
2133 | ||
2134 | 2012-10-01 Robert Dewar <dewar@adacore.com> | |
2135 | ||
2136 | * checks.adb: Remove reference to Enable_Overflow_Checks Use | |
2137 | Suppress_Options rather than Scope_Suppress. | |
2138 | * gnat1drv.adb (Adjust_Global_Switches): Handle new overflow | |
2139 | settings (Adjust_Global_Switches): Initialize Scope_Suppress | |
2140 | from Suppress_Options. | |
2141 | * opt.adb: Remove Enable_Overflow_Checks (use Suppress_Options | |
2142 | instead). | |
2143 | * opt.ads: Remove Overflow_Checks_Unsuppressed (not used) | |
2144 | Remove Enable_Overflow_Checks (use Suppress_Options instead) | |
2145 | Suppress_Options is now current setting (replaces Scope_Suppress). | |
2146 | * osint.adb (Initialize): Deal with initializing overflow | |
2147 | checking. | |
2148 | * par-prag.adb: Add dummy entry for pragma Overflow_Checks. | |
2149 | * sem.adb (Semantics): Save and restore In_Assertion_Expr Use | |
2150 | Suppress_Options instead of Scope_Suppress. | |
2151 | * sem.ads (In_Assertion_Expr): New flag (Scope_Suppress): | |
2152 | Removed, use Suppress_Options instead. | |
2153 | * sem_eval.adb (Compile_Time_Compare): Return Unknown in | |
2154 | preanalysis mode. | |
2155 | * sem_prag.adb (Process_Suppress_Unsuppress): Setting of | |
2156 | Overflow_Checks_Unsuppressed removed (not used anywhere!) | |
2157 | (Analyze_Pragma, case Check): Set In_Assertion_Expression | |
2158 | (Analyze_Pragma, case Overflow_Checks): Implement new pragma | |
2159 | * snames.ads-tmpl: Add names needed for handling pragma | |
2160 | Overflow_Checks | |
2161 | * switch-c.adb (Scan_Front_End_Switches) Handle -gnato? and | |
2162 | -gnato?? where ? is 0-3 | |
2163 | * types.ads: Updates and fixes to comment on Suppress_Record. | |
2164 | ||
2165 | 2012-10-01 Vincent Celier <celier@adacore.com> | |
2166 | ||
2167 | * prj-part.adb (Parse): Remove incorrect comment about checking | |
2168 | imported non extending projects from and "extending all" | |
2169 | one. Minor correction. | |
2170 | ||
c9e9106d | 2171 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
2172 | ||
2173 | * make.adb, exp_ch3.adb: Minor reformatting. | |
2174 | ||
2175 | 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> | |
2176 | ||
2177 | * validsw.adb (Save_Validity_Check_Options): Do not set | |
2178 | Validity_Check_Non_Overlapping_Params and | |
2179 | Validity_Check_Valid_Scalars_On_Params when -gnatVa is present | |
2180 | because the related checks are deemed too aggressive. | |
2181 | ||
2182 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> | |
2183 | ||
2184 | * sem_util.ads sem_util.adb (Check_Internal_Protected_Use): | |
2185 | reject use of protected procedure or entry within the body of | |
2186 | a protected function of the same protected type, when usage is | |
2187 | a call, an actual in an instantiation, a or prefix of 'Access. | |
2188 | * sem_ch8.adb (Analyze_Subprogram_Renaming): Verify that target | |
2189 | object in renaming of protected procedure is a variable, and | |
2190 | apply Check_Internal_Protected_Use. | |
2191 | * sem_res.adb (Analyze_Call, Analyze_Entry_Call): apply | |
2192 | Check_Internal_Protected_Use rather than on-line code. | |
2193 | * sem_attr.adb (Analyze_Access_Attribute): Verify that target | |
2194 | object in accsss to protected procedure is a variable, and apply | |
2195 | Check_Internal_Protected_Use. | |
2196 | ||
2197 | 2012-10-01 Gary Dismukes <dismukes@adacore.com> | |
2198 | ||
2199 | * sem_ch4.adb (Find_Equality_Types.Try_One_Interp): Exclude the | |
2200 | predefined interpretation from consideration if it's for a "/=" | |
2201 | operator of a tagged type. This will allow Analyze_Equality_Op to | |
2202 | rewrite the "/=" as a logical negation of a call to the appropriate | |
2203 | dispatching equality function. This needs to be done during | |
2204 | analysis rather than expansion for the benefit of ASIS, which | |
2205 | otherwise gets the unresolved N_Op_Ne operator from Standard. | |
2206 | ||
9e58d7ed | 2207 | 2012-10-01 Thomas Quinot <quinot@adacore.com> |
2208 | ||
2209 | * gnatcmd.adb, make.adb (Scan_Make_Arg, Inspect_Switches): Recognize | |
2210 | and reject an invalid parameter passed to -vP. | |
2211 | ||
2212 | 2012-10-01 Yannick Moy <moy@adacore.com> | |
2213 | ||
2214 | * sem_warn.adb (Check_Infinite_Loop_Warning/Test_Ref): Improve | |
2215 | the detection of modifications to the loop variable by noting | |
2216 | that, if the type of variable is elementary and the condition | |
2217 | does not contain a function call, then the condition cannot be | |
2218 | modified by side-effects from a procedure call. | |
2219 | ||
2220 | 2012-10-01 Robert Dewar <dewar@adacore.com> | |
2221 | ||
2222 | * checks.adb: Add comments. | |
2223 | ||
2224 | 2012-10-01 Javier Miranda <miranda@adacore.com> | |
2225 | ||
2226 | * exp_ch3.adb (Expand_N_Object_Declaration): Improve condition catching | |
2227 | never-ending recursion. The previous condition erroneously disabled | |
2228 | silently the expansion of the class-wide interface object | |
2229 | initialization in cases not involving the recursion. | |
2230 | ||
b73adb97 | 2231 | 2012-10-01 Thomas Quinot <quinot@adacore.com> |
2232 | ||
2233 | * make.adb: Minor documentation fix: error messages are sent to | |
2234 | stderr, not stdout. | |
2235 | ||
2236 | 2012-10-01 Hristian Kirtchev <kirtchev@adacore.com> | |
2237 | ||
2238 | * checks.ads, checks.adb (Apply_Parameter_Aliasing_Checks): New routine. | |
2239 | (Apply_Parameter_Validity_Checks): New routines. | |
2240 | * exp_ch6.adb (Expand_Call): Add aliasing checks to detect | |
2241 | overlapping objects. | |
2242 | * freeze.adb: Add with and use clauses for Checks and Validsw. | |
2243 | (Freeze_Entity): Add checks to detect proper initialization | |
2244 | of scalars. | |
2245 | * sem_ch4.adb: Add with and use clauses for Checks and Validsw. | |
2246 | (Analyze_Call): Add aliasing checks to detect overlapping objects. | |
2247 | * sem_ch13.adb: Add with and use clauses for Validsw. | |
2248 | (Analyze_Aspect_Specifications): Add checks to detect proper | |
2249 | initialization of scalars. | |
2250 | * sem_prag.adb (Chain_PPC): Correct the extraction of the | |
2251 | subprogram name. | |
2252 | * sem_util.adb (Is_Object_Reference): Attribute 'Result now | |
2253 | produces an object. | |
2254 | * usage.adb (Usage): Add usage lines for validity switches 'l', | |
2255 | 'L', 'v' and 'V'. | |
2256 | * validsw.adb (Reset_Validity_Check_Options): Include | |
2257 | processing for flags Validity_Check_Non_Overlapping_Params and | |
2258 | Validity_Check_Valid_Scalars_On_Params. Code reformatting. | |
2259 | (Save_Validity_Check_Options): Include processing | |
2260 | for flags Validity_Check_Non_Overlapping_Params | |
2261 | and Validity_Check_Valid_Scalars_On_Params. | |
2262 | (Set_Validity_Check_Options): Add processing for validity switches | |
2263 | 'a', 'l', 'L', 'n', 'v' and 'V'. Code reformatting. | |
2264 | * validsw.ads: Add new flags Validity_Check_Non_Overlapping_Params | |
2265 | and Validity_Check_Valid_Scalars_On_Params along with comments | |
2266 | on usage. | |
2267 | ||
2268 | 2012-10-01 Thomas Quinot <quinot@adacore.com> | |
2269 | ||
2270 | * namet.ads, xsnamest.adb, prj-env.adb, sem_warn.adb, | |
2271 | errout.ads: Minor reformatting. | |
2272 | * prj-part.adb: Add comment. | |
2273 | ||
29a9d4be | 2274 | 2012-10-01 Robert Dewar <dewar@adacore.com> |
2275 | ||
2276 | * sinfo.ads, exp_aggr.adb, sem_ch13.adb: Minor reformatting. | |
2277 | ||
2278 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> | |
2279 | ||
2280 | * sem_aggr.adb (Resolve_Array_Aggregate): Handle properly | |
2281 | component associations given by subtypes that have static | |
2282 | predicates. Improve error message for overlapping ranges in | |
2283 | array aggregates. | |
2284 | ||
2285 | 2012-10-01 Pascal Obry <obry@adacore.com> | |
2286 | ||
2287 | * snames.ads-tmpl (Name_Link_Lib_Subdir): New constant. | |
2288 | ||
2289 | 2012-10-01 Ed Schonberg <schonberg@adacore.com> | |
2290 | ||
2291 | * sem_ch9.adb (Analyze_Requeue): The target of a requeue | |
2292 | statement on a protected entry must be a variable. This is part | |
2293 | of AI05-0225. | |
2294 | ||
e1f2eb1e | 2295 | 2012-09-26 Ian Lance Taylor <iant@google.com> |
2296 | ||
2297 | * gcc-interface/Makefile.in (LIBBACKTRACE): New variable. | |
2298 | (LIBS): Add $(LIBBACKTRACE). | |
2299 | (LIBDEPS): Add $(LIBBACKTRACE). | |
2300 | (TOOLS_LIBS): Add ../../../libbacktrace/.libs/libbacktrace.a. | |
2301 | ||
1bb62874 | 2302 | 2012-09-10 Diego Novillo <dnovillo@google.com> |
2303 | ||
2304 | * gcc-interface/decl.c (build_subst_list): Adjust call to VEC_safe_push. | |
2305 | (build_variant_list): Likewise. | |
2306 | * gcc-interface/utils.c (convert): Adjust calls to VEC_quick_push. | |
2307 | ||
dd1d981f | 2308 | 2012-09-07 Eric Botcazou <ebotcazou@adacore.com> |
2309 | ||
2310 | * gcc-interface/trans.c (Loop_Statement_to_gnu): Revert to using | |
2311 | size_type_node instead of sizetype. | |
2312 | ||
0ade479e | 2313 | 2012-08-19 Eric Botcazou <ebotcazou@adacore.com> |
2314 | ||
2315 | * layout.adb (Set_Elem_Alignment): Cap the alignment of access types | |
2316 | to that of a regular access type for non-strict-alignment platforms. | |
2317 | * gcc-interface/utils.c (finish_fat_pointer_type): Do not set the | |
2318 | alignment for non-strict-alignment platforms. | |
2319 | ||
8b8701ea | 2320 | 2012-08-19 Eric Botcazou <ebotcazou@adacore.com> |
2321 | ||
2322 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Use proper | |
2323 | dummy type for the temporary COMPONENT_REF built for a derived tagged | |
2324 | type with discriminant. | |
2325 | ||
7a6732ec | 2326 | 2012-08-14 Diego Novillo <dnovillo@google.com> |
2327 | ||
2328 | Merge from cxx-conversion branch. Re-implement VEC in C++. | |
2329 | ||
2330 | * gcc-interface/trans.c (finalize_nrv_unc_r): Adjust VEC_index usage. | |
2331 | * gcc-interface/utils.c (convert): Likewise. | |
2332 | (remove_conversions): Likewise. | |
2333 | * gcc-interface/utils2.c (compare_fat_pointers): Likewise. | |
2334 | (build_unary_op): Likewise. | |
2335 | (gnat_stabilize_reference): Likewise. | |
2336 | ||
12c79495 | 2337 | 2012-08-06 Jose Ruiz <ruiz@adacore.com> |
2338 | ||
2339 | * gcc-interface/Makefile.in: Add support for 32-bit VxWorks for SPARC | |
2340 | in kernel mode. | |
2341 | ||
99a2d5bd | 2342 | 2012-08-06 Arnaud Charlet <charlet@adacore.com> |
2343 | ||
2344 | * prj-attr.adb (Register_New_Package): Add missing blank. | |
2345 | ||
2346 | 2012-08-06 Ed Schonberg <schonberg@adacore.com> | |
2347 | ||
2348 | * exp_aggr.adb (Is_Two_Dim_Packed_Array): New predicate, | |
2349 | used when computing maximum size allowable to construct static | |
2350 | aggregate. | |
2351 | ||
2352 | 2012-08-06 Vincent Pucci <pucci@adacore.com> | |
2353 | ||
2354 | * freeze.adb (Freeze_Entity): Inherit_Aspects_At_Freeze_Point | |
2355 | calls added for derived types and subtypes. | |
2356 | * sem_aux.adb, sem_aux.ads (Get_Rep_Item, Get_Rep_Pragma, | |
2357 | Has_Rep_Pragma): New routines. | |
2358 | * sem_ch13.ads (Inherit_Aspects_At_Freeze_Point): New routine. | |
2359 | * sem_ch13.adb (Analyze_Aspect_Specifications): Error message | |
2360 | for aspect Lock_Free fixed. | |
2361 | (Inherits_Aspects_At_Freeze_Point): New routine. | |
2362 | * sem_ch3.adb: Several flag settings removed since inheritance | |
2363 | of aspects must be performed at freeze point. | |
2364 | ||
2365 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2366 | ||
2367 | * s-oscons-tmplt.c: Fix s-oscons.ads formatting on VxWorks. | |
2368 | ||
2369 | 2012-08-06 Vincent Pucci <pucci@adacore.com> | |
2370 | ||
2371 | * sem_dim.adb (Analyze_Dimension_Binary_Op): Issue an error message | |
2372 | for unknown exponent at compile-time. | |
2373 | ||
2374 | 2012-08-06 Gary Dismukes <dismukes@adacore.com> | |
2375 | ||
2376 | * sem_eval.ads (Compile_Time_Known_Value_Or_Aggr): Enhance | |
2377 | comment to make it clear that the aggregate's evaluation might | |
2378 | still involve run-time checks even though the aggregate is | |
2379 | considered known at compile time. | |
2380 | * sinfo.ads (Compile_Time_Known_Aggregate): Correct comment to | |
2381 | refer to Exp_Aggr instead of Sem_Aggr. | |
2382 | ||
08861748 | 2383 | 2012-08-06 Robert Dewar <dewar@adacore.com> |
2384 | ||
2385 | * xoscons.adb: Minor code reorganization (remove unused variable | |
2386 | E at line 331). | |
2387 | * g-sercom.ads, exp_attr.adb: Minor reformatting. | |
2388 | * sinfo.adb, sinfo.ads: Minor cleanup, remove unused flag | |
2389 | Static_Processing_OK. | |
2390 | ||
2391 | 2012-08-06 Ed Schonberg <schonberg@adacore.com> | |
2392 | ||
2393 | * sem_ch3.adb (Build_Derived_Concurrent_Type): Copy discriminant | |
2394 | constraint when building a constrained subtype, to prevent | |
2395 | undesirable tree sharing betweeb geberated subtype and derived | |
2396 | type definition. | |
2397 | ||
2398 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2399 | ||
2400 | * g-sercom-mingw.adb, s-oscons-tmplt.c: Add missing constants | |
2401 | on Windows. | |
2402 | ||
2403 | 2012-08-06 Sergey Rybin <rybin@adacore.com frybin> | |
2404 | ||
2405 | * tree_io.ads: Update ASIS_Version_Number because of the tree fix | |
2406 | for discriminant constraints for concurrent types. | |
2407 | ||
b76829e9 | 2408 | 2012-08-06 Thomas Quinot <quinot@adacore.com> |
2409 | ||
2410 | * sem_ch4.adb: Minor reformatting. | |
2411 | ||
2412 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2413 | ||
2414 | * s-oscons-tmplt.c, xoscons.adb: Per the Single UNIX Specification, | |
2415 | types cc_t, speed_t, and tcflag_t defined in <termios.h> all are | |
2416 | unsigned types. Add required special handling to have their correct | |
2417 | unsigned values in s-oscons.ads. | |
2418 | ||
2419 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2420 | ||
2421 | * par-ch13.adb: Minor reformatting. | |
2422 | ||
2423 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2424 | ||
2425 | * g-sercom.adb, g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb | |
2426 | (Set): Add Local and Flow_Control settings. | |
2427 | ||
2428 | 2012-08-06 Ed Schonberg <schonberg@adacore.com> | |
2429 | ||
2430 | * exp_attr.adb: Suppress saving of 'Old if assertions are not | |
2431 | enabled. | |
2432 | ||
53f836d1 | 2433 | 2012-08-06 Yannick Moy <moy@adacore.com> |
2434 | ||
2435 | * sem_ch4.adb (Analyze_Selected_Component): Issue an error in | |
2436 | Alfa mode for component not present. | |
2437 | ||
2438 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2439 | ||
2440 | * exp_ch7.adb (Insert_Actions_In_Scope_Around): Do not | |
2441 | use a renaming of Scope_Stack.Table (Scope_Stack.Last), as | |
2442 | Process_Transient_Object may introduce new scopes and cause | |
2443 | Scope_Stack.Table to be reallocated. | |
2444 | ||
fafc6b97 | 2445 | 2012-08-06 Robert Dewar <dewar@adacore.com> |
2446 | ||
2447 | * exp_util.adb, switch-c.adb, inline.ads, sem_ch10.adb, types.ads, | |
2448 | checks.adb, sem_prag.adb, sem.adb, sem.ads, sem_res.adb, sem_attr.adb, | |
2449 | gnat1drv.adb, exp_ch4.adb, exp_ch6.adb, opt.ads, osint.adb: Implement | |
2450 | extended overflow checks (step 1). | |
2451 | (Overflow_Check_Type, Suppress_Record, Suppress_All): New types. | |
2452 | (Suppress_Array): Extended to include switches to control extended | |
2453 | overflow checking (and renamed to Suppress_Record). | |
2454 | Update all uses of Suppress_Array. | |
2455 | ||
2456 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2457 | ||
2458 | * makeutl.ads: Minor documentation fix. | |
2459 | ||
2460 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2461 | ||
2462 | * exp_ch7.adb: Minor reformatting. | |
2463 | ||
825c3598 | 2464 | 2012-08-06 Geert Bosch <bosch@adacore.com> |
2465 | ||
2466 | * a-ngelfu.adb: Change obsolete comment that this is a non-strict | |
2467 | implementation. | |
2468 | ||
2469 | 2012-08-06 Steve Baird <baird@adacore.com> | |
2470 | ||
2471 | * exp_ch7.adb (Build_Finalizer.Process_Object_Declaration): If | |
2472 | CodePeer_Mode = True then omit exception handlers for finalization calls | |
2473 | ||
2474 | 2012-08-06 Robert Dewar <dewar@adacore.com> | |
2475 | ||
2476 | * exp_aggr.adb: Minor reformatting. | |
2477 | ||
3f3f8d79 | 2478 | 2012-08-06 Robert Dewar <dewar@adacore.com> |
2479 | ||
2480 | * sem_ch6.adb: Remove useless flag Body_Deleted. | |
2481 | ||
2482 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2483 | ||
2484 | * sinfo.ads (End_Span): Change default from No_Uint to Uint_0, | |
2485 | as this is what all usage occurrences of this attribute are | |
2486 | expecting. | |
2487 | * uintp.adb (UI_To_Int): Add assertion to guard against calling | |
2488 | with No_Uint. | |
2489 | ||
2490 | 2012-08-06 Vincent Pucci <pucci@adacore.com> | |
2491 | ||
7a6732ec | 2492 | PR ada/54125 |
3f3f8d79 | 2493 | * exp_attr.adb (Expand_N_Attribute_Reference): Expand new |
2494 | Atomic_Always_Lock_Free attribute. | |
2495 | * sem_attr.adb (Analyze_Attribute): Analyze new | |
2496 | Atomic_Always_Lock_Free attribute. | |
2497 | (Eval_Attribute): Nothing to do with new Atomic_Always_Lock_Free | |
2498 | attribute. | |
2499 | * sem_ch9.adb (Allows_Lock_Free_Implementation): | |
2500 | Support_Atomic_Primitives check replaces previous erroneous | |
2501 | size check. | |
2502 | * sem_util.adb, sem_util.ads (Support_Atomic_Primitives): | |
2503 | New routine. | |
2504 | * snames.ads-tmpl: New name Name_Atomic_Always_Lock_Free and | |
2505 | new attribute Attribute_Atomic_Always_Lock_Free defined. | |
2506 | * s-atopri.adb: Support_Atomic_Primitives checks replaced by | |
2507 | Atomic_Always_Lock_Free queries. | |
2508 | * system-aix64.ads, system-aix.ads, system-darwin-ppc.ads, | |
2509 | system-hpux.ads, system-linux-alpha.ads, system-linux-hppa.ads, | |
2510 | system-linux-ppc.ads, system-linux-s390.ads, | |
2511 | system-linux-s390x.ads, system-linux-sh4.ads, | |
2512 | system-linux-sparc.ads, system-lynxos178-ppc.ads, | |
2513 | system-lynxos-ppc.ads, system-mingw.ads, | |
2514 | system-vxworks-arm.ads, system-solaris-sparc.ads, | |
2515 | system-solaris-sparcv9.ads, system-vms_64.ads, | |
2516 | system-vxworks-m68k.ads, system-vxworks-mips.ads, | |
2517 | system-vxworks-ppc.ads, system-vxworks-sparcv9.ads: Flag | |
2518 | Support_Atomic_Primitives removed. | |
2519 | ||
a39ff582 | 2520 | 2012-08-06 Hristian Kirtchev <kirtchev@adacore.com> |
2521 | ||
2522 | * sem_mech.adb (Set_Mechanisms): OUT and IN OUT parameters are | |
2523 | now unconditionally passed by reference. IN parameters subject | |
2524 | to convention C_Pass_By_Copy are passed by copy, otherwise they | |
2525 | are passed by reference. | |
2526 | ||
2527 | 2012-08-06 Ed Schonberg <schonberg@adacore.com> | |
2528 | ||
2529 | * sem_ch3.adb (Analyze_Object_Declaration): According to | |
2530 | AI95-0303, protected objects with interrupt handlers can be | |
2531 | declared in nested scopes. This is a binding interpretation, | |
2532 | and thus applies to all versions of the compiler. | |
2533 | ||
2534 | 2012-08-06 Robert Dewar <dewar@adacore.com> | |
2535 | ||
2536 | * frontend.adb, exp_aggr.adb: Minor reformatting. | |
2537 | ||
2538 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2539 | ||
2540 | * par-endh.adb: Minor reformatting. | |
2541 | ||
ace3389d | 2542 | 2012-08-06 Hristian Kirtchev <kirtchev@adacore.com> |
2543 | ||
2544 | * exp_ch7.adb (Process_Transient_Objects): Remove obsolete loop | |
2545 | processing related to array initialization. The expansion of | |
2546 | loops already contains a mechanism to detect controlled objects | |
2547 | generated by expansion and introduce a block around the loop | |
2548 | statements for finalization purposes. | |
2549 | ||
2550 | 2012-08-06 Vincent Pucci <pucci@adacore.com> | |
2551 | ||
2552 | * sem_ch13.adb: Current scope must be within | |
2553 | or same as the scope of the entity while analysing aspect | |
2554 | specifications at freeze point. | |
2555 | ||
2556 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2557 | ||
2558 | * par_sco.adb: Add note about dubious SCO for TERMINATE | |
2559 | alternative. | |
2560 | * sem_ch8.adb, exp_ch11.adb: Minor reformatting. | |
2561 | ||
2562 | 2012-08-06 Ed Schonberg <schonberg@adacore.com> | |
2563 | ||
2564 | * exp_aggr.adb (Two_Dim_Packed_Array_Handled): New procedure to | |
2565 | transform an aggregate for a packed two-dimensional array into | |
2566 | a one-dimensional array of constant values, in order to avoid | |
2567 | the generation of component-by-component assignments. | |
2568 | ||
2569 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2570 | ||
2571 | * frontend.adb: Do not attempt to process deferred configuration | |
2572 | pragmas if the main unit failed to load, to avoid cascaded | |
2573 | inconsistencies that can lead to a compiler crash. | |
2574 | ||
8ef22b90 | 2575 | 2012-08-06 Vincent Pucci <pucci@adacore.com> |
2576 | ||
2577 | * s-atopri.adb: Minor reformatting. | |
2578 | ||
2579 | 2012-08-06 Arnaud Charlet <charlet@adacore.com> | |
2580 | ||
2581 | * gnat-style.texi: Clarify that all subprograms should be | |
2582 | documented. Minor rewording. | |
2583 | ||
5134891e | 2584 | 2012-08-06 Robert Dewar <dewar@adacore.com> |
2585 | ||
2586 | * aspects.ads: Define Aspect_Id_Exclude_No_Aspect. | |
2587 | * par-ch13.adb, restrict.adb: Use Aspect_Id_Exclude_No_Aspect to | |
2588 | simplify code. | |
2589 | ||
2590 | 2012-08-06 Yannick Moy <moy@adacore.com> | |
2591 | ||
2592 | * gnat-style.texi: Update style guide for declarations. | |
2593 | ||
2594 | 2012-08-06 Yannick Moy <moy@adacore.com> | |
2595 | ||
2596 | * sem_attr.adb (Analyze_Attribute): In the case for 'Old, | |
2597 | skip a special expansion which is not needed in Alfa mode. | |
2598 | ||
2599 | 2012-08-06 Yannick Moy <moy@adacore.com> | |
2600 | ||
2601 | * sem_ch5.adb (Analyze_Iterator_Specification): Do not perform | |
2602 | an expansion of the iterator in Alfa mode. | |
2603 | ||
dcbac5c0 | 2604 | 2012-08-06 Robert Dewar <dewar@adacore.com> |
2605 | ||
2606 | * s-oscons-tmplt.c, sem_ch9.adb, osint.adb: Minor reformatting. | |
2607 | ||
2608 | 2012-08-06 Hristian Kirtchev <kirtchev@adacore.com> | |
2609 | ||
2610 | * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Remove obsolete | |
2611 | Alfa-specific guard. The code is a leftover from an early | |
2612 | implementation of iterators which is no longer in use. | |
2613 | ||
2614 | 2012-08-06 Vincent Celier <celier@adacore.com> | |
2615 | ||
2616 | * par-ch13.adb (Get_Aspect_Specifications): Do not consider | |
2617 | No_Aspect when checking for a mispelled aspect. | |
2618 | ||
81beaf05 | 2619 | 2012-08-06 Robert Dewar <dewar@adacore.com> |
2620 | ||
2621 | * s-htable.adb: Minor reformatting. | |
2622 | ||
2623 | 2012-08-06 Thomas Quinot <quinot@adacore.com> | |
2624 | ||
2625 | * s-oscons-tmplt.c, g-socket.adb (System.OS_Constants.Target_OS): | |
2626 | Suppress warnings so that we don't have to do it at each usage. | |
2627 | ||
ba9b1a39 | 2628 | 2012-08-06 Vincent Pucci <pucci@adacore.com> |
2629 | ||
2630 | * exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body): | |
2631 | Use of Known_Static_Esize instead of Known_Esize and | |
2632 | Known_Static_RM_Size instead of Known_RM_Size in order to | |
2633 | properly call UI_To_Int. Don't check the size of the component | |
2634 | type in case of generic. | |
2635 | * sem_ch9.adb (Allows_Lock_Free_Implementation): | |
2636 | Use of Known_Static_Esize instead of Known_Esize and | |
2637 | Known_Static_RM_Size instead of Known_RM_Size in order to properly | |
2638 | call UI_To_Int. Don't check the size of the component type in | |
2639 | case of generic. | |
2640 | ||
2641 | 2012-08-06 Hristian Kirtchev <kirtchev@adacore.com> | |
2642 | ||
2643 | * checks.adb (Discrete_Range_Cond): Do not try to optimize on | |
2644 | the assumption that the type of an expression can always fit in | |
2645 | the target type of a conversion. | |
2646 | ||
1094a5ca | 2647 | 2012-07-30 Robert Dewar <dewar@adacore.com> |
2648 | ||
2649 | * bindusg.adb: Clarify file in -A lines. | |
2650 | ||
2651 | 2012-07-30 Robert Dewar <dewar@adacore.com> | |
2652 | ||
2653 | * freeze.adb: Minor reformatting. | |
2654 | ||
2655 | 2012-07-30 Robert Dewar <dewar@adacore.com> | |
2656 | ||
2657 | * gnatcmd.adb, makeutl.adb, makeutl.ads: Minor code reorganization. | |
2658 | ||
2659 | 2012-07-30 Vincent Pucci <pucci@adacore.com> | |
2660 | ||
2661 | * exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body): Minor | |
2662 | reformatting. | |
2663 | * sem_ch9.adb (Allows_Lock_Free_Implementation): Minor reformatting. | |
2664 | Capture the correct error message in case of a quantified expression. | |
2665 | ||
2666 | 2012-07-30 Thomas Quinot <quinot@adacore.com> | |
2667 | ||
2668 | * g-socket.adb (Get_Socket_Option, Set_Socket_Option): On Windows, the | |
2669 | value is a milliseconds count in a DWORD, not a struct timeval. | |
2670 | ||
50b3164d | 2671 | 2012-07-30 Hristian Kirtchev <kirtchev@adacore.com> |
2672 | ||
2673 | * sem_ch12.adb (Earlier): Add local variables T1 and T2. Minor code | |
2674 | refactoring. | |
2675 | ||
2676 | 2012-07-30 Thomas Quinot <quinot@adacore.com> | |
2677 | ||
2678 | * gnatcmd.adb, make.adb, makeutl.adb, makeutl.ads | |
2679 | (Test_If_Relative_Path): Rename to Ensure_Absolute_Path to better | |
2680 | reflect what this subprogram does. Rename argument Including_L_Switch | |
2681 | to For_Gnatbind, and also exempt -A from rewriting. | |
2682 | * bindusg.adb: Document optional =file argument to gnatbind -A. | |
2683 | ||
2684 | 2012-07-30 Ed Schonberg <schonberg@adacore.com> | |
2685 | ||
2686 | * freeze.adb (Freeze_Entity): Do no apply restriction check on | |
2687 | storage pools to access to subprogram types. | |
2688 | ||
2beb22b1 | 2689 | 2012-07-30 Robert Dewar <dewar@adacore.com> |
2690 | ||
2691 | * par_sco.adb, a-cihama.adb, a-coinve.adb, exp_ch7.adb, a-ciorse.adb, | |
2692 | exp_ch9.adb, sem_dim.adb, par-ch13.adb, sem_ch9.adb, a-cidlli.adb, | |
2693 | a-cimutr.adb, freeze.adb, a-ciormu.adb, sem_res.adb, sem_attr.adb, | |
2694 | a-cihase.adb, exp_ch4.adb, sem_ch4.adb, a-ciorma.adb, | |
2695 | s-tasinf-linux.ads, sem_ch13.adb, a-coinho.adb: Minor reformatting. | |
2696 | Add comments. | |
2697 | ||
7c3537be | 2698 | 2012-07-30 Vincent Pucci <pucci@adacore.com> |
2699 | ||
2700 | * sem_ch9.adb (Allows_Lock_Free_Implementation): Restrict implicit | |
2701 | dereferences of access values. | |
2702 | ||
2953bbc2 | 2703 | 2012-07-27 Iain Sandoe <iain@codesourcery.com> |
2704 | ||
2705 | * system-darwin-ppc64.ads: Add Support_Atomic_Primitives, set to True. | |
2706 | ||
2330f9c5 | 2707 | 2012-07-25 Eric Botcazou <ebotcazou@adacore.com> |
2708 | ||
2709 | * gcc-interface/utils2.c (gnat_stabilize_reference) <BIT_FIELD_REF>: Do | |
2710 | not stabilize operand #1 and #2. | |
2711 | ||
c2d9cb26 | 2712 | 2012-07-23 Tristan Gingold <gingold@adacore.com> |
2713 | ||
2714 | * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): Use | |
2715 | End_Label sloc when possible for sloc of the TRY_CATCH_EXPR node. | |
2716 | ||
2717 | 2012-07-23 Olivier Hainque <hainque@adacore.com> | |
2718 | ||
2719 | * gcc-interface/Makefile.in: Adjust processing of Linker_Options for | |
2720 | VxWorks. | |
2721 | * gcc-interface/Make-lang.in: Update dependencies. | |
2722 | ||
8f531643 | 2723 | 2012-07-23 Arnaud Charlet <charlet@adacore.com> |
2724 | ||
2725 | * s-tasinf-linux.ads: Fix typo. | |
2726 | ||
2727 | 2012-07-23 Thomas Quinot <quinot@adacore.com> | |
2728 | ||
2729 | * exp_ch7.adb, switch-m.adb, exp_ch3.adb, freeze.adb: Minor reformatting | |
2730 | ||
2731 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2732 | ||
2733 | * exp_ch5.adb (Expand_Iterator_Loop_Over_Array): If original | |
2734 | loop carries an identifier, preserve it when rewriting it as a | |
2735 | standard loop to validate exit statements that may reference | |
2736 | that name in the body of the loop. | |
2737 | ||
2738 | 2012-07-23 Thomas Quinot <quinot@adacore.com> | |
2739 | ||
2740 | * exp_ch9.adb: Minor code cleanup. | |
2741 | ||
094ed68e | 2742 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> |
2743 | ||
2744 | * sem_ch4.adb (Analyze_Selected_Component): When checking for | |
2745 | potential ambiguities with class-wide operations on synchronized | |
2746 | types, attach the copied node properly to the tree, to prevent | |
2747 | errors during expansion. | |
2748 | ||
2749 | 2012-07-23 Yannick Moy <moy@adacore.com> | |
2750 | ||
2751 | * sem_ch5.adb (Analyze_Loop_Statement): Make sure the loop body | |
2752 | is analyzed in Alfa mode. | |
2753 | ||
2754 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2755 | ||
2756 | * sem_res.adb: Adjust previous change. | |
2757 | ||
2758 | 2012-07-23 Vincent Pucci <pucci@adacore.com> | |
2759 | ||
2760 | * sem_ch9.adb (Allows_Lock_Free_Implementation): Flag | |
2761 | Lock_Free_Given renames previous flag Complain. Description | |
2762 | updated. Henceforth, catch every error messages issued by this | |
2763 | routine when Lock_Free_Given is True. Declaration restriction | |
2764 | updated: No non-elementary parameter instead (even in parameter) | |
2765 | New subprogram body restrictions implemented: No allocator, | |
2766 | no address, import or export rep items, no delay statement, | |
2767 | no goto statement, no quantified expression and no dereference | |
2768 | of access value. | |
2769 | ||
2770 | 2012-07-23 Hristian Kirtchev <kirtchev@adacore.com> | |
2771 | ||
2772 | * checks.adb (Determine_Range): Add local variable Btyp. Handle | |
2773 | the case where the base type of an enumeration subtype is | |
2774 | private. Replace all occurrences of Base_Type with Btyp. | |
2775 | * exp_attr.adb (Attribute_Valid): Handle the case where the | |
2776 | base type of an enumeration subtype is private. Replace all | |
2777 | occurrences of Base_Type with Btyp. | |
2778 | * sem_util.adb (Get_Enum_Lit_From_Pos): Add local variable | |
2779 | Btyp. Handle the case where the base type of an enumeration | |
2780 | subtype is private. Replace all occurrences of Base_Type with | |
2781 | Btyp. | |
2782 | ||
1630f2a9 | 2783 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> |
2784 | ||
2785 | * par-ch6.adb (P_Mode): in Ada 2005, a mode indicator can apply | |
2786 | to a formal object of an anonymous access type. | |
2787 | ||
2788 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2789 | ||
2790 | * sem_ch4.adb (Try_Container_Indexing): A user-defined indexing | |
2791 | aspect can have more than one index, e.g. to describe indexing | |
2792 | of a multidimensional object. | |
2793 | ||
2794 | 2012-07-23 Hristian Kirtchev <kirtchev@adacore.com> | |
2795 | ||
2796 | * exp_ch4.adb (Apply_Accessibility_Check): Reimplemented. The check is | |
2797 | now more complex and contains optional finalization part and mandatory | |
2798 | deallocation part. | |
2799 | ||
2800 | 2012-07-23 Gary Dismukes <dismukes@adacore.com> | |
2801 | ||
2802 | * a-cihama.adb, a-cihase.adb, a-cimutr.adb, a-ciorma.adb, a-ciormu.adb, | |
2803 | a-ciorse.adb, a-coinho.adb, a-coinve.adb, a-cidlli.adb: Unsuppress | |
2804 | Accessibility_Check for Element_Type allocators. | |
2805 | ||
2806 | 2012-07-23 Vasiliy Fofanov <fofanov@adacore.com> | |
2807 | ||
2808 | * projects.texi: Fix typo. | |
2809 | ||
2810 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2811 | ||
2812 | * sem_res.adb (Resolve_Explicit_Derenference): If prefix is | |
2813 | overloaded, remove those interpretations whose designated type | |
2814 | does not match the context, to avoid spurious ambiguities that | |
2815 | may be caused by the Ada 2012 conversion rule for anonymous | |
2816 | access types. | |
2817 | ||
3a72f9c3 | 2818 | 2012-07-23 Vincent Celier <celier@adacore.com> |
2819 | ||
2820 | * g-spitbo.adb (Substr (String)): Return full string and do not | |
2821 | raise exception when Start is 1 and Len is exactly the length | |
2822 | of the string parameter. | |
2823 | * g-spitbo.ads: Fix spelling error in the name of exception | |
2824 | Index_Error. | |
2825 | ||
2826 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2827 | ||
2828 | * par.adb: new subprogram Get_Aspect_Specifications. | |
2829 | * par-ch6.adb (P_Subprogram): handle subprogram bodies with aspect | |
2830 | specifications. | |
2831 | * par-ch13.adb (Get_Aspect_Specifications): extracted from | |
2832 | P_Aspect_Specifications. Collect aspect specifications in some | |
2833 | legal context, but do not attach them to any declaration. Used | |
2834 | when parsing subprogram declarations or bodies that include | |
2835 | aspect specifications. | |
2836 | * sem_ch6.adb (Analyze_Subprogram_Body_Helper): If aspects are | |
2837 | present, analyze them, or reject them if the subprogram as a | |
2838 | previous spec. | |
2839 | ||
2840 | 2012-07-23 Vasiliy Fofanov <fofanov@adacore.com> | |
2841 | ||
2842 | * gnat_ugn.texi: Omit section on other platforms/runtimes support | |
2843 | in gnattest for vms version. | |
2844 | ||
2845 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2846 | ||
2847 | * sem_ch13.adb (Analyze_Aspect_Specifications): | |
2848 | Handle properly aspects that can be specified on a subprogram | |
2849 | body: CPU, Priority, and Interrupt_Priority. | |
2850 | ||
2851 | 2012-07-23 Claire Dross <dross@adacore.com> | |
2852 | ||
2853 | * a-cfdlli.ads: Switch definition of Constant_Reference_Type | |
2854 | and Empty_List. | |
2855 | ||
2856 | 2012-07-23 Thomas Quinot <quinot@adacore.com> | |
2857 | ||
2858 | * par_sco.adb (Process_Decisions.Output_Header): For the guard | |
2859 | on an alternative in a SELECT statement, use the First_Sloc | |
2860 | of the guard expression (not its topmost sloc) as the decision | |
2861 | location, because this is what is referenced by dominance markers. | |
2862 | ||
2863 | 2012-07-23 Hristian Kirtchev <kirtchev@adacore.com> | |
2864 | ||
2865 | * exp_ch7.adb (Requires_Hooking): Examine the original expression | |
2866 | of an object declaration node because a function call that | |
2867 | returns on the secondary stack may have been rewritten into | |
2868 | something else. | |
2869 | ||
2870 | 2012-07-23 Vincent Pucci <pucci@adacore.com> | |
2871 | ||
2872 | * sem_dim.adb (Analyze_Dimension_Has_Etype): For identifier, propagate | |
2873 | dimension when entity is a non-dimensionless constant. | |
2874 | (Analyze_Dimension_Object_Declaration): Propagate | |
2875 | dimension from the expression to the entity when type is a | |
2876 | dimensioned type and object is a constant. | |
2877 | ||
2878 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2879 | ||
2880 | * sem_attr.adb (Analyze_Attribute, case 'Old): if the prefix | |
2881 | is not an entity name, expand at once so that code generated by | |
2882 | the expansion of the prefix is not generated before the constant | |
2883 | that captures the old value is properly inserted and analyzed. | |
2884 | ||
2885 | 2012-07-23 Thomas Quinot <quinot@adacore.com> | |
2886 | ||
2887 | * exp_ch9.adb (Ensure_Statement_Present): Mark generated NULL | |
2888 | statement as Comes_From_Source so that GIGI does not eliminate it. | |
2889 | ||
549ddc37 | 2890 | 2012-07-23 Hristian Kirtchev <kirtchev@adacore.com> |
2891 | ||
2892 | * sem_ch12.adb (Insert_Freeze_Node_For_Instance): Inst is now | |
2893 | a local variable. Retrieve the related instance when processing | |
2894 | a subprogram instantiation. Such instances appear as wrapper | |
2895 | packages. | |
2896 | ||
2897 | 2012-07-23 Vincent Pucci <pucci@adacore.com> | |
2898 | ||
2899 | * system-aix64.ads, system-aix.ads, system-darwin-ppc.ads, | |
2900 | system-hpux.ads, system-linux-alpha.ads, | |
2901 | system-linux-hppa.ads, system-linux-ppc.ads, | |
2902 | system-linux-s390.ads, system-linux-s390x.ads, | |
2903 | system-linux-sh4.ads, system-linux-sparc.ads, | |
2904 | system-lynxos-ppc.ads, system-mingw.ads, | |
2905 | system-solaris-sparc.ads, system-solaris-sparcv9.ads, | |
2906 | system-vms_64.ads, * system-vxworks-arm.ads, system-vxworks-m68k.ads, | |
2907 | system-vxworks-mips.ads, system-vxworks-ppc.ads, | |
2908 | system-vxworks-sparcv9.ads: Support_Atomic_Primitives set to False. | |
2909 | * system-darwin-x86.ads, system-darwin-x86_64.ads, | |
2910 | system-freebsd-x86.ads, system-freebsd-x86_64.ads, | |
2911 | system-hpux-ia64.ads, system-linux-ia64.ads, system-linux-x86.ads, | |
2912 | system-linux-x86_64.ads, system-lynxos-x86.ads, | |
2913 | system-mingw-x86_64.ads, system-solaris-x86.ads, | |
2914 | system-solaris-x86_64.ads, system-vms-ia64.ads, | |
2915 | system-vxworks-x86.ads: Support_Atomic_Primitives set to True. | |
2916 | * s-atopri.adb (Lock_Free_Read_X): New body. | |
2917 | (Lock_Free_Try_Write_X): Support_Atomic_Primitives check added. | |
2918 | (Lock_Free_Try_Write_64): New body. | |
2919 | * s-atopri.ads: New type uint. | |
2920 | (Sync_Compare_And_Swap_64): __sync_val_compare_and_swap_8 intrinsic | |
2921 | import. | |
2922 | (Lock_Free_Read_X): Body moved to s-atopri.adb. | |
2923 | (Lock_Free_Try_Write_64): Similar to other Lock_Free_Try_Write_X | |
2924 | routines. | |
2925 | * targparm.adb: New enumeration literal SAP | |
2926 | (Support_Atomic_Primitives) for type Targparm_Tags. New constant | |
2927 | SAP_Str. New component SAP_Str'Access for array Targparm_Str. | |
2928 | (Get_Target_Parameters): Parse Support_Atomic_Primitives_On_Target | |
2929 | flag. | |
2930 | * targparm.ads: New back-end code generation flag | |
2931 | Support_Atomic_Primitives_On_Target | |
2932 | ||
2933 | 2012-07-23 Vincent Pucci <pucci@adacore.com> | |
2934 | ||
2935 | * gnat_ugn.texi: Dimensionality checking documentation updated. | |
2936 | ||
2937 | 2012-07-23 Ed Schonberg <schonberg@adacore.com> | |
2938 | ||
2939 | * sem_prag.adb (Make_Inline): If the pragma applies to a | |
2940 | subprogram renaming, set inline flags on both the renamed entity | |
2941 | and on the renaming, so that some ASIS queries can be handled | |
2942 | consistently in the absence of expansion. | |
2943 | ||
d6a9dc1e | 2944 | 2012-07-23 Fedor Rybin <frybin@adacore.com> |
2945 | ||
2946 | * gnat_ugn.texi: Removing obsolete limitation of gnattest | |
2947 | to support only ada05. Updating gnattest support for other | |
2948 | platforms/run-times section to reflect the usage of taget | |
2949 | prefix in gnattest calls. Fixing missed obsolete --stub-default | |
2950 | option name. | |
2951 | ||
2952 | 2012-07-23 Robert Dewar <dewar@adacore.com> | |
2953 | ||
2954 | * uintp.adb: Minor reformatting. | |
2955 | ||
2956 | 2012-07-23 Olivier Hainque <hainque@adacore.com> | |
2957 | ||
2958 | * system-vxworks-ppc.ads: Replace the default | |
2959 | Linker_Options requesting crtbe by a commented out request for | |
2960 | -nostartfiles. | |
2961 | ||
2962 | 2012-07-23 Vincent Celier <celier@adacore.com> | |
2963 | ||
2964 | * prj-nmsc.adb (Check_Naming): Do not get the exceptions names | |
2965 | in a virtual project. | |
2966 | ||
c7dbb79e | 2967 | 2012-07-23 Robert Dewar <dewar@adacore.com> |
2968 | ||
2969 | * layout.adb, sem_prag.adb, sem.ads, freeze.adb, | |
2970 | switch-m.adb, exp_disp.adb, system-vxworks-ppc.ads, exp_ch6.adb: Minor | |
2971 | reformatting. | |
2972 | ||
1831dae0 | 2973 | 2012-07-23 Tristan Gingold <gingold@adacore.com> |
2974 | ||
2975 | * gcc-interface/trans.c: (Handled_Sequence_Of_Statements_to_gnu): Set | |
2976 | location on TRY_CATCH_EXPR. | |
2977 | ||
be42dbce | 2978 | 2012-07-19 Eric Botcazou <ebotcazou@adacore.com> |
2979 | ||
2980 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Try to ensure | |
2981 | that an object of CW type initialized to a value is sufficiently | |
2982 | aligned for this value. | |
2983 | ||
061ad733 | 2984 | 2012-07-19 Eric Botcazou <ebotcazou@adacore.com> |
2985 | ||
2986 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Do not | |
2987 | look up the REP part of the base type in advance. Deal with that of | |
2988 | the variant types. | |
2989 | (get_rep_part): Be prepared for record types with fields. | |
2990 | ||
5df7fe69 | 2991 | 2012-07-18 Eric Botcazou <ebotcazou@adacore.com> |
2992 | ||
2993 | * gcc-interface/trans.c (stmt_group_may_fallthru): New function. | |
2994 | (gnat_to_gnu) <N_Block_Statement>: Use it to find out whether the | |
2995 | block needs to be translated. | |
2996 | ||
eb87f0fd | 2997 | 2012-07-17 Tristan Gingold <gingold@adacore.com> |
2998 | ||
2999 | * gnat_rm.texi: Adjust previous change. | |
3000 | ||
3001 | 2012-07-17 Ed Schonberg <schonberg@adacore.com> | |
3002 | ||
3003 | * sem_prag.adb (Process_Import_Or_Interface): If the pragma | |
3004 | comes from an aspect, it applies to the corresponding entity | |
3005 | without further check. | |
3006 | ||
3007 | 2012-07-17 Olivier Hainque <hainque@adacore.com> | |
3008 | ||
3009 | * initialize.c (__gnat_initialize for VxWorks): Remove section with | |
3010 | call to __gnat_vxw_setup_for_eh. | |
3011 | * system-vxworks-ppc.ads: Add -auto-register to -crtbe, relying | |
3012 | on the VxWorks constructor mechanism for network loaded modules | |
3013 | by default. | |
3014 | ||
3015 | 2012-07-17 Tristan Gingold <gingold@adacore.com> | |
3016 | ||
3017 | * adaint.c: Minor reformatting. | |
3018 | ||
3019 | 2012-07-17 Pascal Obry <obry@adacore.com> | |
3020 | ||
3021 | * s-regexp.adb (Adjust): Fix access violation in Adjust. | |
3022 | ||
3023 | 2012-07-17 Ed Schonberg <schonberg@adacore.com> | |
3024 | ||
3025 | * freeze.adb (Freeze_Entity): Warn if an imported subprogram | |
3026 | has pre/post conditions, because these will not be enforced. | |
3027 | ||
3028 | 2012-07-17 Eric Botcazou <ebotcazou@adacore.com> | |
3029 | ||
3030 | * exp_ch7.adb (Process_Transient_Objects): Put all the | |
3031 | finalization blocks and the final raise statement into a wrapper | |
3032 | block. | |
3033 | ||
3034 | 2012-07-17 Vincent Pucci <pucci@adacore.com> | |
3035 | ||
3036 | * s-atopri.adb (Lock_Free_Try_Write_X): Atomic_Compare_Exchange_X | |
3037 | replaced by Sync_Compare_And_Swap_X. | |
3038 | (Lock_Free_Try_Write_64): Removed. | |
3039 | * s-atopri.ads (Sync_Compare_And_Swap_X): Replaces previous | |
3040 | routine Atomic_Compare_Exchange_X. | |
3041 | (Lock_Free_Read_64): Renaming of Atomic_Load_64. | |
3042 | (Lock_Free_Try_Write_64): Renaming of Sync_Compare_And_Swap_64. | |
3043 | ||
3044 | 2012-07-17 Vincent Celier <celier@adacore.com> | |
3045 | ||
3046 | * switch-m.adb (Normalize_Compiler_Switches): Recognize new | |
3047 | switches -gnatn1 and -gnatn2. | |
3048 | ||
3049 | 2012-07-17 Vincent Pucci <pucci@adacore.com> | |
3050 | ||
3051 | * gnat_ugn.texi: GNAT dimensionality checking | |
3052 | documentation updated with System.Dim.Mks modifications. | |
3053 | ||
3054 | 2012-07-17 Ed Schonberg <schonberg@adacore.com> | |
3055 | ||
3056 | * exp_ch3.adb: sloc of array init_proc is sloc of type declaration. | |
3057 | ||
3058 | 2012-07-17 Tristan Gingold <gingold@adacore.com> | |
3059 | ||
3060 | * raise-gcc.c (get_call_site_action_for): Remove useless init | |
3061 | expression for p. | |
3062 | (get_action_description_for): Do not overwrite action->kind. | |
3063 | ||
3064 | 2012-07-17 Hristian Kirtchev <kirtchev@adacore.com> | |
3065 | ||
3066 | * exp_attr.adb (Expand_N_Attribute_Reference): Add local variables Attr | |
3067 | and Conversion_Added. Add local constant Typ. | |
3068 | Retrieve the original attribute after the arithmetic check | |
3069 | machinery has modified the node. Add a conversion to the target | |
3070 | type when the prefix of attribute Max_Size_In_Storage_Elements | |
3071 | is a controlled type. | |
3072 | ||
3073 | 2012-07-17 Gary Dismukes <dismukes@adacore.com> | |
3074 | ||
3075 | * exp_ch6.adb (Expand_Inlined_Call): For each actual parameter | |
3076 | of mode 'out' or 'in out' that denotes an entity, reset | |
3077 | Last_Assignment on the entity so that any assignments to the | |
3078 | corresponding formal in the inlining will not trigger spurious | |
3079 | warnings about overwriting assignments. | |
3080 | ||
2ff0322d | 3081 | 2012-07-17 Robert Dewar <dewar@adacore.com> |
3082 | ||
3083 | * s-assert.ads: Fix comments to make it clear that this is used | |
3084 | for all assertions, not just pragma Assert. | |
3085 | ||
3086 | 2012-07-17 Jerome Guitton <guitton@adacore.com> | |
3087 | ||
3088 | * par_sco.ads: Minor typo fix. | |
3089 | ||
3090 | 2012-07-17 Gary Dismukes <dismukes@adacore.com> | |
3091 | ||
3092 | * layout.adb (Layout_Type): In the case where the target is | |
3093 | AAMP, use 32 bits (a single pointer) rather than 64 bits for an | |
3094 | anonymous access-to-subprogram type if the type is library-level | |
3095 | and Is_Local_Anonymous_Access is True. | |
3096 | ||
3097 | 2012-07-17 Jose Ruiz <ruiz@adacore.com> | |
3098 | ||
3099 | * s-tassta.adb, s-tarest.adb (Create_Task, Create_Restricted_Task, | |
3100 | Initialize): Add comments explaining that the CPU affinity value that | |
3101 | is passed to the run-time library can be either Unspecified_CPU, to | |
3102 | indicate that the task inherits the affinity of its activating task, | |
3103 | or a value in the range of CPU_Range but no greater than Number_Of_CPUs. | |
3104 | ||
3105 | 2012-07-17 Javier Miranda <miranda@adacore.com> | |
3106 | ||
3107 | * exp_disp.adb (Make_DT): Remove decoration of Ada.Tags entities. | |
3108 | (Make_Tags): Add decoration of Ada.Tags entities. | |
3109 | ||
3110 | 2012-07-17 Ed Schonberg <schonberg@adacore.com> | |
3111 | ||
3112 | * sem_ch6.adb (Check_Statement_Sequence): When locating the | |
3113 | last significant statement in a sequence, ignore iserted nodes | |
3114 | that typically come from expansion of controlled operations. | |
3115 | ||
3116 | 2012-07-17 Tristan Gingold <gingold@adacore.com> | |
3117 | ||
3118 | * gnat_rm.texi: Document foreign exceptions. | |
3119 | ||
fc34391d | 3120 | 2012-07-17 Robert Dewar <dewar@adacore.com> |
3121 | ||
3122 | * sem_prag.adb, treepr.ads: Minor reformatting. | |
3123 | ||
e22bc81a | 3124 | 2012-07-17 Robert Dewar <dewar@adacore.com> |
3125 | ||
3126 | * exp_ch9.adb: Minor code reorganization. | |
3127 | * exp_ch3.adb: Minor code improvement. | |
3128 | ||
3129 | 2012-07-17 Tristan Gingold <gingold@adacore.com> | |
3130 | ||
3131 | * seh_init.c (__gnat_SEH_error_handler): Not compiled anymore | |
3132 | on Windows 64 (+ SEH), as it is unused. | |
3133 | ||
e22bc81a | 3134 | 2012-07-17 Javier Miranda <miranda@adacore.com> |
3135 | ||
3136 | * sem_prag.adb (CPP_Class): Transform obsolescent pragma CPP_Class into | |
3137 | CPP convention automatically. | |
3138 | ||
4be5aafb | 3139 | 2012-07-16 Tristan Gingold <gingold@adacore.com> |
3140 | ||
3141 | * gcc-interface/decl.c (intrin_return_compatible_p): Map Address to | |
3142 | void *. | |
3143 | ||
e3cb8202 | 3144 | 2012-07-16 Thomas Quinot <quinot@adacore.com> |
3145 | ||
3146 | * exp_ch9.adb (Ensure_Statement_Present): New subprogram. | |
3147 | (Expand_N_Asynchronous_Select, | |
3148 | Expand_N_Selective_Accept.Process_Accept_Alternative, | |
3149 | Expand_N_Selective_Accept.Process_Delay_Alternative, | |
3150 | Expand_N_Timed_Entry_Call): For an alternative with no trailing | |
3151 | statements, introduce a null statement to carry the sloc of | |
3152 | the initial special statement (accept, delay, or entry call) | |
3153 | in the alternative, for coverage analysis purposes. | |
3154 | ||
3155 | 2012-07-16 Thomas Quinot <quinot@adacore.com> | |
3156 | ||
3157 | * sem_eval.adb (In_Subrange_Of): Fix typo in test for scalar | |
3158 | arguments. | |
3159 | ||
85377c9b | 3160 | 2012-07-16 Robert Dewar <dewar@adacore.com> |
3161 | ||
3162 | * a-exexpr.adb, freeze.adb, a-exexpr-gcc.adb, a-except-2005.adb, | |
3163 | sem_eval.adb, s-fileio.adb: Minor reformatting. | |
3164 | ||
3165 | 2012-07-16 Javier Miranda <miranda@adacore.com> | |
3166 | ||
3167 | * sem_prag.adb (Analyze_Pragma): Remove support for obsolescent | |
3168 | pragma CPP_Class. | |
3169 | * sem_ch13.adb (Analyze_Freeze_Entity): Add missing error on Ada | |
3170 | derivations of CPP types. Found updating the tests affected by | |
3171 | the removal of pragma CPP_Class. | |
3172 | ||
3173 | 2012-07-16 Thomas Quinot <quinot@adacore.com> | |
3174 | ||
3175 | * back_end.adb: Minor reformatting. | |
3176 | ||
3177 | 2012-07-16 Thomas Quinot <quinot@adacore.com> | |
3178 | ||
3179 | * exp_ch9.adb (Expand_N_Selective_Accept.Process_Accept_Alternative): | |
3180 | Remove junk test that was always true. For the case of no statements | |
3181 | following the ACCEPT, jump directly to End_Lab instead of | |
3182 | introducing an intermediate jump. | |
3183 | (Expand_N_Selective_Accept.Process_Delay_Alternative): Fix | |
3184 | predicate testing for presence of statements following the DELAY. | |
3185 | that was always true. For the case of no statements following | |
3186 | the ACCEPT, jump directly to End_Lab instead of introducing an | |
3187 | intermediate jump. | |
3188 | (Expand_N_Selective_Accept): Fix incorrect insertion point for | |
3189 | end label. | |
3190 | ||
b3d5d0ad | 3191 | 2012-07-16 Thomas Quinot <quinot@adacore.com> |
3192 | ||
3193 | * gnat_rm.texi: Minor documentation improvements. | |
3194 | ||
3195 | 2012-07-16 Yannick Moy <moy@adacore.com> | |
3196 | ||
3197 | * sem_ch13.adb (Analyze_Aspect_Specifications): Allow Pre | |
3198 | and Pre'Class aspects on the same declaration. | |
3199 | * sem_prag.adb (Chain_PPC): Allow Pre and Pre'Class aspects on the | |
3200 | same hierarchy of primitive operations. | |
3201 | ||
204c9c3d | 3202 | 2012-07-16 Thomas Quinot <quinot@adacore.com> |
3203 | ||
3204 | * freeze.adb (Check_Component_Storage_Order): Do not reject a | |
3205 | nested composite with different scalar storage order if it is | |
3206 | byte aligned. | |
3207 | ||
3208 | 2012-07-16 Thomas Quinot <quinot@adacore.com> | |
3209 | ||
3210 | * gnat_rm.texi: Update documentation for Scalar_Storage_Order. | |
3211 | ||
3212 | 2012-07-16 Tristan Gingold <gingold@adacore.com> | |
3213 | ||
3214 | * a-exexpr.adb (Propagate_Exception): Adjust call to | |
3215 | Exception_Traces procedures. | |
3216 | * a-exexpr-gcc.adb (Setup_Current_Excep): Now a | |
3217 | function that returns an access to the Ada occurrence. | |
3218 | (Propagate_GCC_Exception): Adjust calls. | |
3219 | * raise.h (struct Exception_Occurrence): Declare. | |
3220 | * a-exextr.adb: Remove useless pragma. (Notify_Handled_Exception, | |
3221 | Notify_Unhandled_Exception) (Unhandled_Exception_Terminate): | |
3222 | Add Excep parameter. | |
3223 | * a-except.adb (Notify_Handled_Exception, | |
3224 | Notify_Unhandled_Exception) (Unhandled_Exception_Terminate): | |
3225 | Add Excep parameter. | |
3226 | (Process_Raise_Exception): Adjust calls. | |
3227 | * a-except-2005.adb (Notify_Handled_Exception, | |
3228 | Notify_Unhandled_Exception) (Unhandled_Exception_Terminate): Add | |
3229 | Excep parameter. | |
3230 | (Raise_Exception): Calls Raise_Exception_Always. | |
3231 | * raise-gcc.c (__gnat_setup_current_excep, | |
3232 | __gnat_notify_handled_exception) | |
3233 | (__gnat_notify_unhandled_exception): Adjust declarations. | |
3234 | (PERSONALITY_FUNCTION): Adjust calls. | |
3235 | (__gnat_personality_seh0): Remove warning. | |
3236 | ||
3237 | 2012-07-16 Javier Miranda <miranda@adacore.com> | |
3238 | ||
3239 | * sem_eval.adb (Test_Expression_Is_Foldable): Adding documentation. | |
3240 | (Eval_Relational_Op): Adding documentation. | |
3241 | ||
9f661339 | 3242 | 2012-07-16 Robert Dewar <dewar@adacore.com> |
3243 | ||
3244 | * freeze.adb, g-debpoo.adb, exp_ch3.adb: Minor reformatting. | |
3245 | ||
3246 | 2012-07-16 Thomas Quinot <quinot@adacore.com> | |
3247 | ||
3248 | * s-oscons-tmplt.c: Add definitions of E2BIG and EILSEQ. | |
3249 | ||
3250 | 2012-07-16 Tristan Gingold <gingold@adacore.com> | |
3251 | ||
3252 | * a-exexpr.adb (Propagate_Continue): New function replacing | |
3253 | Raise_Current_Excep. | |
3254 | (Allocate_Occurrence): New function. | |
3255 | (Propagate_Exception): Add Excep parameter, remove call to Call_Chain. | |
3256 | * a-exexpr-gcc.adb (GNAT_GCC_Exception): Occurrence component | |
3257 | is now aliased. | |
3258 | (To_GCC_Exception): Convert from Address. | |
3259 | (Allocate_Occurrence): Allocate an Unwind exception occurrence. | |
3260 | (Setup_Current_Excep): Fill the machine occurrence in case of | |
3261 | foreign exception. | |
3262 | (Propagate_Exception): Add Excep parameter, remove call to Call_Chain. | |
3263 | * a-except.adb (Set_Exception_C_Msg, Set_Exception_Msg): add | |
3264 | Excep parameter. | |
3265 | (Raise_Exception, Raise_Exception_Always, | |
3266 | Raise_Exception_No_Defer): Adjust calls to the above procedures. | |
3267 | (Raise_From_Signal_Handler, Raise_With_Location_And_Msg) | |
3268 | (Rcheck_PE_Finalize_Raised_Exception): Likewise. | |
3269 | * a-except-2005.adb (Set_Exception_C_Msg, Set_Exception_Msg): | |
3270 | add Excep parameter. | |
3271 | (Propagate_Exception): Likewise. | |
3272 | (Allocate_Occurrence): New function. | |
3273 | (Raise_Current_Excep): Removed. | |
3274 | (Complete_Occurrence): New function to save the call chain. | |
3275 | (Complete_And_Propagate_Occurrence): New procedure. | |
3276 | (Create_Occurrence_From_Signal_Handler): New function to build an | |
3277 | occurrence without propagating it. | |
3278 | (Create_Machine_Occurrence_From_Signal_Handler): Likewise, but | |
3279 | return the machine occurrence. | |
3280 | (Raise_From_Signal_Handler): Use Create_Occurrence_From_Signal_Handler. | |
3281 | (Raise_Exception, Raise_Exception_Always, Raise_Exception_No_Defer): | |
3282 | Adjust calls to the above procedures. Allocate the occurrence at | |
3283 | the beginning. | |
3284 | (Raise_With_Location_And_Msg, Raise_With_Msg) | |
3285 | (Rcheck_PE_Finalize_Raised_Exceptionm Reraise): Likewise. | |
3286 | (Reraise_Occurrence): Use Reraise_Occurrence_Always. | |
3287 | (Reraise_Occurrence_Always): Use Reraise_Occurrence_No_Defer. | |
3288 | (Reraise_Occurrence_No_Defer): Preserve machine occurrence. | |
3289 | (Save_Occurrence): Do not save machine occurrence. | |
3290 | * a-except-2005.ads (Exception_Occurrence): Add Machine_Occurrence | |
3291 | component. | |
3292 | (Null_Occurrence): Consider it. | |
3293 | * a-exexda.adb (Set_Exception_C_Msg, Set_Exception_Msg): add | |
3294 | Excep parameter. | |
3295 | ||
3296 | 2012-07-16 Tristan Gingold <gingold@adacore.com> | |
3297 | ||
3298 | * seh_init.c (__gnat_map_SEH): New function extracted from | |
3299 | __gnat_SEH_error_handler. | |
3300 | * raise-gcc.c: __gnat_personality_seh0: Directly transforms | |
3301 | Windows system exception into GCC one when possible, in order | |
3302 | to save stack room (particularly useful when Storage_Error will | |
3303 | be propagated). | |
3304 | ||
1398e762 | 3305 | 2012-07-16 Robert Dewar <dewar@adacore.com> |
3306 | ||
3307 | * a-direct.adb, g-dirope.adb: Minor reformatting. | |
3308 | ||
3309 | 2012-07-16 Tristan Gingold <gingold@adacore.com> | |
3310 | ||
3311 | * a-except.ads, a-except-2005.ads: Remove outdated comment. | |
3312 | ||
3313 | 2012-07-16 Robert Dewar <dewar@adacore.com> | |
3314 | ||
3315 | * sem_ch6.adb (Subprogram_Name_Greater): Fix algorithm to | |
3316 | conform to documentation. | |
3317 | ||
3318 | 2012-07-16 Ed Schonberg <schonberg@adacore.com> | |
3319 | ||
3320 | * gnat1drv.adb (Check_Library_Items): Removed, no longer used. | |
3321 | ||
3322 | 2012-07-16 Ed Schonberg <schonberg@adacore.com> | |
3323 | ||
3324 | * sem_ch3.adb (Array_Type_Declaration): if component type has | |
3325 | invariants, the array type itself requires an invariant procedure. | |
3326 | * exp_ch3.ads, exp_ch3.adb (Build_Array_Invariant_Proc): new | |
3327 | procedure, to build a checking procedure that applies the | |
3328 | invariant check on some type T to each component of an array | |
3329 | of T's. Code is similar to the construction of the init_proc | |
3330 | for an array, and handles multidimensional arrays by recursing | |
3331 | over successive dimensions. | |
3332 | ||
3333 | 2012-07-16 Hristian Kirtchev <kirtchev@adacore.com> | |
3334 | ||
3335 | * g-debpoo.adb: Revert previous change. | |
3336 | ||
3337 | 2012-07-16 Hristian Kirtchev <kirtchev@adacore.com> | |
3338 | ||
3339 | * freeze.adb (Freeze_Entity): Insert the itype reference to a | |
3340 | library-level class-wide subtype after the freeze node of the | |
3341 | equivalent record type. | |
3342 | ||
0c6c84ba | 3343 | 2012-07-16 Pascal Obry <obry@adacore.com> |
3344 | ||
3345 | * s-crtl.ads (mkdir): New routine, support encoding. | |
3346 | * adaint.h (__gnat_mkdir): Update spec to pass encoding. | |
3347 | * mkdir.c (__gnat_mkdir): Add encoding parameter. | |
3348 | * a-direct.adb (Create_Directory): Use CRTL.mkdir, parse encoding | |
3349 | in form parameter. | |
3350 | * g-dirope.adb (Make_Dir): Update to pass encoding parameter. | |
3351 | ||
3352 | 2012-07-16 Pascal Obry <obry@adacore.com> | |
3353 | ||
3354 | * adaint.c: Minor reformatting. | |
3355 | ||
b9ed1410 | 3356 | 2012-07-16 Steven Bosscher <steven@gcc.gnu.org> |
3357 | ||
3358 | * gcc-interface/utils.c: Include timevar.h. | |
3359 | * Make-lang.in: Fix dependencies. | |
3360 | ||
cf883842 | 3361 | 2012-07-16 Vasiliy Fofanov <fofanov@adacore.com> |
3362 | ||
3363 | * ug_words, vms_data.ads: Document VMS qualifiers for -gnatn1/2 | |
3364 | switches. | |
3365 | ||
3366 | 2012-07-16 Bob Duff <duff@adacore.com> | |
3367 | ||
3368 | * sinfo.ads: Minor comment fix. | |
3369 | ||
3370 | 2012-07-16 Bob Duff <duff@adacore.com> | |
3371 | ||
3372 | * sem_elab.adb (Within_Elaborate_All): Walk the with clauses to | |
3373 | find pragmas Elaborate_All that may be found in the transitive | |
3374 | closure of the dependences. | |
3375 | ||
f50256f3 | 3376 | 2012-07-16 Robert Dewar <dewar@adacore.com> |
3377 | ||
3378 | * exp_pakd.adb, freeze.adb, sem_util.adb, vms_data.ads: Minor | |
3379 | reformatting. | |
3380 | ||
d0685419 | 3381 | 2012-07-12 Vasiliy Fofanov <fofanov@adacore.com> |
3382 | ||
3383 | * vms_data.ads: Add VMS qualifiers for -gnatn1/2 switches. | |
3384 | ||
3385 | 2012-07-12 Thomas Quinot <quinot@adacore.com> | |
3386 | ||
3387 | * exp_ch5.adb, exp_pakd.adb, rtsfind.ads, freeze.adb, sem_util.adb, | |
3388 | sem_util.ads, exp_aggr.adb | |
3389 | (Exp_Aggr.Packed_Array_Aggregate_Handled): Simplify processing | |
3390 | for reverse storage order aggregate. | |
3391 | (Exp_Pakd.Byte_Swap): New utility routine used by... | |
3392 | (Exp_Pakd.Expand_Bit_Packed_Element_Set, | |
3393 | Expand_Packed_Element_Reference): For the case of a free-standing | |
3394 | packed array with reverse storage order, perform byte swapping. | |
3395 | (Rtsfind): Make new entities RE_Bswap_{16,32,64} available. | |
3396 | (Freeze.Check_Component_Storage_Order): New utility routine | |
3397 | to enforce legality rules for nested composite types whose | |
3398 | enclosing composite has an explicitly defined Scalar_Storage_Order | |
3399 | attribute. | |
3400 | (Sem_Util.In_Reverse_Storage_Order_Object): Renamed from | |
3401 | Sem_Util.In_Reverse_Storage_Order_Record, as SSO now applies to | |
3402 | array types as well. | |
3403 | (Exp_Ch5.Expand_Assign_Array): Remove now unnecessary kludge | |
3404 | for change of scalar storage order in assignments. The Lhs and | |
3405 | Rhs now always have the same scalar storage order. | |
3406 | ||
3407 | 2012-07-12 Hristian Kirtchev <kirtchev@adacore.com> | |
3408 | ||
3409 | * g-debpoo.adb (Allocate): Add local constant | |
3410 | No_Element. Initialize the allocated memory chunk to No_Element. | |
3411 | ||
3412 | 2012-07-12 Ed Schonberg <schonberg@adacore.com> | |
3413 | ||
3414 | * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly | |
3415 | the case of an instance of a child unit where a formal derived | |
3416 | type DT is an extension of a type T declared in a parent unit, | |
3417 | and the actual in the instance of the child is the type T declared | |
3418 | in the parent instance, and that actual is not a derived type. | |
3419 | ||
3420 | 2012-07-12 Eric Botcazou <ebotcazou@adacore.com> | |
3421 | Tristan Gingold <gingold@adacore.com> | |
3422 | ||
3423 | * system-hpux-ia64.ads: Enable ZCX by default. | |
3424 | * gcc-interface/Makefile.in: Use alternate stack on ia64-hpux. | |
3425 | Change soext to .so. | |
3426 | ||
aee191ca | 3427 | 2012-07-12 Robert Dewar <dewar@adacore.com> |
3428 | ||
3429 | * s-atopri.adb, s-atopri.ads: Minor reformatting. | |
3430 | ||
3431 | 2012-07-12 Robert Dewar <dewar@adacore.com> | |
3432 | ||
3433 | * ali.adb: Add circuitry to read new named form of restrictions lines. | |
3434 | * debug.adb: Add doc for new -gnatd.R switch (used positional | |
3435 | notation for output of restrictions data in ali file). | |
3436 | * lib-writ.adb: Implement new named format for restrictions lines. | |
3437 | * lib-writ.ads: Add documentation for new named format for | |
3438 | restrictions in ali files. | |
3439 | * restrict.adb, restrict.ads, sem_prag.adb: Update comments. | |
3440 | * rident.ads: Go back to withing System.Rident | |
3441 | * s-rident.ads: Add extensive comment on dealing with consistency | |
3442 | checking. | |
3443 | ||
3444 | 2012-07-12 Thomas Quinot <quinot@adacore.com> | |
3445 | ||
3446 | * par_sco.adb, scos.ads: Emit detailed SCOs for SELECT statements. | |
3447 | ||
da2e82e9 | 3448 | 2012-07-12 Robert Dewar <dewar@adacore.com> |
3449 | ||
3450 | * sem_disp.adb: Minor reformatting | |
3451 | * s-bytswa.ads: Minor comment update. | |
3452 | ||
3453 | 2012-07-12 Vincent Pucci <pucci@adacore.com> | |
3454 | ||
3455 | * exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body): | |
3456 | Atomic_Load_N replaced by Lock_Free_Read_N. Atomic_Compare_Exchange_N | |
3457 | replaced by Lock_Free_Try_Write_N. | |
3458 | Renaming of several local variables. For | |
3459 | procedure, Expected_Comp declaration moved to the declaration | |
3460 | list of the procedure. | |
3461 | * rtsfind.ads: RE_Atomic_Compare_Exchange_8, | |
3462 | RE_Atomic_Compare_Exchange_16, RE_Atomic_Compare_Exchange_32, | |
3463 | RE_Atomic_Compare_Exchange_64, RE_Atomic_Load_8, | |
3464 | RE_Atomic_Load_16, RE_Atomic_Load_32, RE_Atomic_Load_64, | |
3465 | RE_Atomic_Synchronize, RE_Relaxed removed. RE_Lock_Free_Read_8, | |
3466 | RE_Lock_Free_Read_16, RE_Lock_Free_Read_32, RE_Lock_Free_Read_64, | |
3467 | RE_Lock_Free_Try_Write_8, RE_Lock_Free_Try_Write_16, | |
3468 | RE_Lock_Free_Try_Write_32, RE_Lock_Free_Try_Write_64 added. | |
3469 | * s-atopri.adb: New file. | |
3470 | * s-atopri.ads (Atomic_Compare_Exchange_8): Renaming of | |
3471 | parameters. Import primitive __sync_val_compare_and_swap_1. | |
3472 | (Atomic_Compare_Exchange_16): Renaming of parameters. | |
3473 | Import primitive __sync_val_compare_and_swap_2. | |
3474 | (Atomic_Compare_Exchange_32): Renaming of parameters. | |
3475 | Import primitive __sync_val_compare_and_swap_4. | |
3476 | (Atomic_Compare_Exchange_64): Renaming of parameters. Import | |
3477 | primitive __sync_val_compare_and_swap_8. | |
3478 | (Atomic_Load_8): Ptr renames parameter X. | |
3479 | (Atomic_Load_16): Ptr renames parameter X. | |
3480 | (Atomic_Load_32): Ptr renames parameter X. | |
3481 | (Atomic_Load_64): Ptr renames parameter X. | |
3482 | (Lock_Free_Read_8): New routine. | |
3483 | (Lock_Free_Read_16): New routine. | |
3484 | (Lock_Free_Read_32): New routine. | |
3485 | (Lock_Free_Read_64): New routine. | |
3486 | (Lock_Free_Try_Write_8): New routine. | |
3487 | (Lock_Free_Try_Write_16): New routine. | |
3488 | (Lock_Free_Try_Write_32): New routine. | |
3489 | (Lock_Free_Try_Write_64): New routine. | |
3490 | ||
10381db1 | 3491 | 2012-07-12 Robert Dewar <dewar@adacore.com> |
3492 | ||
3493 | * exp_attr.adb, exp_ch9.adb, sem_ch9.adb, exp_aggr.adb: Minor | |
3494 | reformatting. | |
3495 | ||
3496 | 2012-07-12 Vincent Pucci <pucci@adacore.com> | |
3497 | ||
3498 | * sem_dim.adb (Analyze_Dimension_Function_Call): Reformatting of error | |
3499 | msgs for elementary functions. | |
3500 | ||
3501 | 2012-07-12 Vincent Pucci <pucci@adacore.com> | |
3502 | ||
3503 | * sem_attr.adb (Eval_Attribute): Minor reformatting. | |
3504 | ||
3505 | 2012-07-12 Pascal Obry <obry@adacore.com> | |
3506 | ||
3507 | * prj-nmsc.adb (Check_Library_Attributes): Allow the same library | |
3508 | project in different project tree (different aggregated projects). | |
3509 | ||
3510 | 2012-07-12 Thomas Quinot <quinot@adacore.com> | |
3511 | ||
3512 | * s-bytswa.adb, g-bytswa.adb, g-bytswa.ads, s-bytswa.ads: Further | |
3513 | reorganization of byte swapping routines. | |
3514 | ||
3515 | 2012-07-12 Ed Schonberg <schonberg@adacore.com> | |
3516 | ||
3517 | * sem_disp.adb (Check_Dispatching_Context): Refine legality | |
3518 | checks on tagg indeterminate calls to abstract operations, | |
3519 | that appear in the context of other calls. | |
3520 | ||
d0a9ea3b | 3521 | 2012-07-12 Thomas Quinot <quinot@adacore.com> |
3522 | ||
3523 | * s-bytswa.adb (Swapped2.Bswap16): Remove local function, | |
3524 | no longer needed. | |
3525 | ||
3526 | 2012-07-12 Javier Miranda <miranda@adacore.com> | |
3527 | ||
3528 | * exp_attr.adb (Expand_N_Attribute_Reference): For | |
3529 | attributes 'access, 'unchecked_access and 'unrestricted_access, | |
3530 | iff the current instance reference is located in a protected | |
3531 | subprogram or entry then rewrite the access attribute to be the | |
3532 | name of the "_object" parameter. | |
3533 | ||
3534 | 2012-07-12 Tristan Gingold <gingold@adacore.com> | |
3535 | ||
3536 | * raise.h: Revert previous patch: structure is used in init.c | |
3537 | by vms. | |
3538 | ||
3539 | 2012-07-12 Vincent Celier <celier@adacore.com> | |
3540 | ||
3541 | * make.adb (Binding_Phase): If --subdirs was used, but not | |
3542 | -P, change the working directory to the specified subdirectory | |
3543 | before invoking gnatbind. | |
3544 | (Linking_Phase): If --subdirs was used, but not -P, change the working | |
3545 | directory to the specified subdirectory before invoking gnatlink. | |
3546 | ||
3547 | 2012-07-12 Vincent Pucci <pucci@adacore.com> | |
3548 | ||
3549 | * exp_ch9.adb (Build_Lock_Free_Unprotected_Subprogram_Body): | |
3550 | For a procedure, instead of replacing each Comp reference by a | |
3551 | reference to Current_Comp, make a renaming Comp of Current_Comp | |
3552 | that rewrites the original renaming generated by the compiler | |
3553 | during the analysis. Move the declarations of the procedure | |
3554 | inside the generated block. | |
3555 | (Process_Stmts): Moved in the body | |
3556 | of Build_Lock_Free_Unprotected_Subprogram_Body. | |
3557 | (Process_Node): | |
3558 | Moved in the body of Build_Lock_Free_Unprotected_Subprogram_Body. | |
3559 | * sem_ch9.adb (Allows_Lock_Free_Implementation): Restrict any | |
3560 | non-elementary out parameters in protected procedures. | |
3561 | ||
3562 | 2012-07-12 Thomas Quinot <quinot@adacore.com> | |
3563 | ||
3564 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case | |
3565 | Scalar_Storage_Order): Attribute applies to base type only. | |
3566 | ||
9e6a9b40 | 3567 | 2012-07-12 Ed Schonberg <schonberg@adacore.com> |
3568 | ||
3569 | * exp_aggr.adb (Convert_To_Positional): Increase acceptable size | |
3570 | of static aggregate when Static_Elaboration_Desired is requested. | |
3571 | Add a warning if the request cannot be satisfied either because | |
3572 | some components or some array bounds are non-static. | |
3573 | ||
3574 | 2012-07-12 Thomas Quinot <quinot@adacore.com> | |
3575 | ||
3576 | * exp_pakd.adb: Minor reformatting. | |
3577 | ||
3578 | 2012-07-12 Tristan Gingold <gingold@adacore.com> | |
3579 | ||
3580 | * tracebak.c: Fix warnings. | |
3581 | * raise-gcc.c (__gnat_adjust_context): New function | |
3582 | (__gnat_personality_seh0): Call __gnat_adjust_context to adjust | |
3583 | PC in machine frame for exceptions that occur in the current | |
3584 | function. | |
3585 | ||
3586 | 2012-07-12 Thomas Quinot <quinot@adacore.com> | |
3587 | ||
3588 | * g-bytswa.adb, g-bytswa.ads, s-bytswa.adb, s-bytswa.ads, Makefile.rtl: | |
3589 | Move GNAT.Byte_Swapping to System (with a renaming under GNAT) | |
3590 | so that it is usable in expanded code. | |
3591 | ||
3592 | 2012-07-12 Tristan Gingold <gingold@adacore.com> | |
3593 | ||
3594 | * s-osinte-hpux.ads: Increase alternate stack size on hpux. | |
3595 | ||
f893f3ac | 3596 | 2012-07-12 Javier Miranda <miranda@adacore.com> |
3597 | ||
3598 | * exp_ch3.adb (Make_Neq_Body): Fix typo in comment. | |
3599 | ||
3600 | 2012-07-12 Eric Botcazou <ebotcazou@adacore.com> | |
3601 | ||
3602 | * tb-gcc.c (trace_callback): On IA-64/HP-UX, use workaround only | |
3603 | if USE_LIBUNWIND_EXCEPTIONS is defined. | |
3604 | * init.c: Further tweaks for IA-64/HP-UX. | |
3605 | ||
3606 | 2012-07-12 Tristan Gingold <gingold@adacore.com> | |
3607 | ||
3608 | * raise-gcc.c: Do not include unwind-dw2-fde.h. Adjust comments. | |
3609 | (db_region_for): Second argument is ip. Do not recompute ip. | |
3610 | (action_kind): Remove typedef, add unhandler enum const. | |
3611 | (action_descriptor): Adjust type of kind field. | |
3612 | (db_action_for): Second argument is ip, do not recompute it. | |
3613 | (get_call_site_action_for): First argument is call_site, do not | |
3614 | recompute it. Remove useless return. | |
3615 | (is_handled_by): Now return enum action_kind. | |
3616 | Handle GNAT_ALL_OTHERS first. | |
3617 | Return unhandler for GNAT_UNHANDLED_OTHERS. | |
3618 | (get_action_description_for): First argument is now ip, do not | |
3619 | recompute it. Adjust code for call to is_handled_by. | |
3620 | (__gnat_notify_unhandled_exception): Add prototype. | |
3621 | (PERSONALITY_FUNCTION): Call get_ip_from_context. Adjust calls. | |
3622 | Handle unhandler case. | |
3623 | (__gnat_cleanupunwind_handler): Add comments, add | |
3624 | ATTRIBUTE_UNUSED on arguments. | |
3625 | (__gnat_Unwind_RaiseException, __gnat_Unwind_ForcedUnwind): Define | |
3626 | only once. | |
3627 | * raise.h: Makes struct Exception_Data opaque. | |
3628 | ||
addebd97 | 3629 | 2012-07-12 Robert Dewar <dewar@adacore.com> |
3630 | ||
3631 | * make.adb, sem_ch9.adb, prj.adb, s-rident.ads, snames.ads-tmpl: Minor | |
3632 | reformatting. | |
3633 | ||
3634 | 2012-07-12 Javier Miranda <miranda@adacore.com> | |
3635 | ||
3636 | * exp_ch3.adb (Is_User_Defined_Equality): New subprogram. | |
3637 | (Make_Neq_Body): New subprogram. | |
3638 | (Make_Predefined_Primitive_Specs): Adding local variable | |
3639 | Has_Predef_Eq_ Renaming to ensure that we enable the machinery | |
3640 | which handles renamings of predefined primitive operators. | |
3641 | ||
3bf14af0 | 3642 | 2012-07-09 Pascal Obry <obry@adacore.com> |
3643 | ||
3644 | * prj.adb (For_Every_Project_Imported_Context): Make sure we | |
3645 | callback with the project having sources. | |
3646 | Minor reformatting. | |
3647 | ||
3648 | 2012-07-09 Eric Botcazou <ebotcazou@adacore.com> | |
3649 | ||
3650 | * make.adb: Fix typo. | |
3651 | ||
155cbed1 | 3652 | 2012-07-09 Vincent Pucci <pucci@adacore.com> |
3653 | ||
3654 | * sem_ch9.adb (Check_Node): Allow attributes | |
3655 | that denote static function for lock-free implementation. | |
3656 | (Is_Static_Function): New routine. | |
3657 | ||
3658 | 2012-07-09 Tristan Gingold <gingold@adacore.com> | |
3659 | ||
3660 | * tracebak.c: Adjust skip_frames on Win64. | |
3661 | ||
3662 | 2012-07-09 Tristan Gingold <gingold@adacore.com> | |
3663 | ||
3664 | * init.c: Add __gnat_adjust_context_for_raise for ia64/hpux. | |
3665 | * raise-gcc.c: __gnat_cleanupunwind_handler: Do not call | |
3666 | _Unwind_GetGR on hpux when using libgcc unwinder. Part of | |
3667 | ||
3668 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3669 | ||
3670 | * exp_attr.adb, sem_attr.adb: Minor reformatting. | |
3671 | * par-ch13.adb, par-ch4.adb, par-util.adb: Reformatting | |
3672 | considering that internal attribute names are not defined anymore | |
3673 | in the main attribute names list. | |
3674 | * snames.adb-tmpl (Get_Attribute_Id): Special processinf | |
3675 | for names CPU, Dispatching_Domain and Interrupt_Priority. | |
3676 | (Is_Internal_Attribute_Name): Minor reformatting. | |
3677 | * snames.ads-tmpl: New list of internal attribute names. Internal | |
3678 | attributes moved at the end of the attribute Id list. | |
3679 | ||
1f526845 | 3680 | 2012-07-09 Robert Dewar <dewar@adacore.com> |
3681 | ||
3682 | * freeze.adb: Minor code reorganization (use Ekind_In). | |
3683 | * exp_attr.adb, sem_ch9.adb par-ch4.adb, s-taprop-mingw.adb, | |
3684 | sem_attr.adb, exp_ch8.adb, snames.adb-tmpl, par-util.adb, | |
3685 | sem_ch13.adb, snames.ads-tmpl: Minor reformatting. | |
3686 | ||
3687 | 2012-07-09 Tristan Gingold <gingold@adacore.com> | |
3688 | ||
3689 | * raise-gcc.c: Adjust previous patch. | |
3690 | ||
3691 | 2012-07-09 Vincent Celier <celier@adacore.com> | |
3692 | ||
3693 | * make.adb (Compilation_Phase): Do not build libraries in | |
3694 | Codepeer mode (do not call Library_Phase). | |
3695 | ||
e2f8db26 | 3696 | 2012-07-09 Ed Schonberg <schonberg@adacore.com> |
3697 | ||
3698 | * sem_ch13.adb: Extend previous change to elementary types. | |
3699 | ||
3700 | 2012-07-09 Javier Miranda <miranda@adacore.com> | |
3701 | ||
3702 | * exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Reverse | |
3703 | previous patch since unconditionally handling as renaming_as_body | |
3704 | renamings of predefined dispatching equality and unequality operator | |
3705 | cause visibility problems with private overridings of the equality | |
3706 | operator (see ACATS C854001). | |
3707 | ||
3708 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3709 | ||
3710 | * exp_attr.adb (Signal_Bad_Attribute): Raise Program_Error in | |
3711 | case of internal attribute names (already rejected by the parser). | |
3712 | * par-ch13.adb (P_Representation_Clause): Complain if an internal | |
3713 | attribute name that comes from source occurs. | |
3714 | * par-ch4.adb (P_Name): Complain if an internal attribute name | |
3715 | occurs in the context of an attribute reference. | |
3716 | * par-util.adb (Signal_Bad_Attribute): Don't complain about | |
3717 | mispelling attribute with internal attributes. | |
3718 | * sem_attr.adb (Analyze_Attribute): Raise Program_Error in case | |
3719 | of internal attribute names (already rejected by the parser). | |
3720 | * snames.adb-tmpl (Is_Internal_Attribute_Name): New routine. | |
3721 | * snames.ads-tmpl: Attributes CPU, Dispatching_Domain and | |
3722 | Interrupt_Priority are marked as INT attributes since they | |
3723 | don't denote real attribute and are only used internally in | |
3724 | the compiler. | |
3725 | (Is_Internal_Attribute_Name): New routine. | |
3726 | ||
f117057b | 3727 | 2012-07-09 Thomas Quinot <quinot@adacore.com> |
3728 | ||
3729 | * einfo.adb (Set_Reverse_Storage_Order): Update assertion, | |
3730 | flag is now valid for array types as well. | |
3731 | ||
3732 | 2012-07-09 Tristan Gingold <gingold@adacore.com> | |
3733 | ||
3734 | * tracebak.c: Implement __gnat_backtrace for Win64 SEH. | |
3735 | ||
3736 | 2012-07-09 Robert Dewar <dewar@adacore.com> | |
3737 | ||
3738 | * einfo.ads: Minor reformatting. | |
3739 | ||
3740 | 2012-07-09 Javier Miranda <miranda@adacore.com> | |
3741 | ||
3742 | * exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): Handle as | |
3743 | renaming_as_body renamings of predefined dispatching equality | |
3744 | and unequality operators. | |
3745 | ||
3746 | 2012-07-09 Robert Dewar <dewar@adacore.com> | |
3747 | ||
3748 | * rident.ads: Do not instantiate r-ident.ads, this is now an | |
3749 | independent unit. | |
3750 | ||
3751 | 2012-07-09 Javier Miranda <miranda@adacore.com> | |
3752 | ||
3753 | * exp_disp.adb (Write_DT): Avoid runtime crash of this debugging | |
3754 | routine. | |
3755 | * sem_disp.adb (Find_Dispatching_Time): Protect this routine | |
3756 | against partially decorated entities. | |
3757 | ||
3758 | 2012-07-09 Ed Schonberg <schonberg@adacore.com> | |
3759 | ||
3760 | * sem_ch13.adb (Check_Size): Reject a size clause that specifies | |
3761 | a value greater than Int'Last for a scalar type. | |
3762 | ||
3763 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3764 | ||
3765 | * sem_ch9.adb (Allows_Lock_Free_Implementation): type must support | |
3766 | atomic operation moved to the protected body case. No non-elementary | |
3767 | out parameter moved to the protected declaration case. Functions have | |
3768 | only one lock-free restriction. | |
3769 | (Analyze_Protected_Type_Declaration): Issue a warning when | |
3770 | Priority given with Lock_Free. | |
3771 | ||
3772 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3773 | ||
3774 | * sem_dim.adb: Grammar of aspect Dimension fixed. | |
3775 | ||
3776 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3777 | ||
3778 | * freeze.adb (Freeze_Record_Type): Code reorg in order to avoid | |
3779 | pushing and popping the scope stack whenever a delayed aspect occurs. | |
3780 | ||
3781 | 2012-07-09 Gary Dismukes <dismukes@adacore.com> | |
3782 | ||
3783 | * s-os_lib.ads: Remove pragma Elaborate_Body, as | |
3784 | this is now unnecessary due to recently added pragma Preelaborate. | |
3785 | ||
3786 | 2012-07-09 Jose Ruiz <ruiz@adacore.com> | |
3787 | ||
3788 | * s-taprop-mingw.adb (Set_Priority): Remove the code that was | |
3789 | previously in place to reorder the ready queue when a task drops | |
3790 | its priority due to the loss of inherited priority. | |
3791 | ||
b43a5770 | 3792 | 2012-07-09 Robert Dewar <dewar@adacore.com> |
3793 | ||
3794 | * layout.adb, i-cstrea.ads, a-ststio.ads, prj-util.ads, sem_cat.adb, | |
3795 | s-commun.ads, s-ficobl.ads, s-os_lib.ads, s-fileio.ads: Minor | |
3796 | reformatting. | |
3797 | ||
3798 | 2012-07-09 Eric Botcazou <ebotcazou@adacore.com> | |
3799 | ||
3800 | * raise-gcc.c: Update comments. Fix typo. | |
3801 | ||
3802 | 2012-07-09 Thomas Quinot <quinot@adacore.com> | |
3803 | ||
3804 | * einfo.adb, einfo.ads, sem_attr.adb, sem_ch13.adb: Attribute | |
3805 | Scalar_Storage_Order can be defined or queried for array types as well | |
3806 | as record types. | |
3807 | ||
a940e5c9 | 3808 | 2012-07-09 Tristan Gingold <gingold@adacore.com> |
3809 | ||
3810 | * a-exexpr-gcc.adb (CleanupUnwind_Handler): Now imported from | |
3811 | raise-gcc.c | |
3812 | * raise-gcc.c (__gnat_cleanupunwind_handler): Defined. | |
3813 | Strictly follow the ABI convention on ia64. | |
3814 | ||
3815 | 2012-07-09 Gary Dismukes <dismukes@adacore.com> | |
3816 | ||
3817 | * a-ststio.ads: Add pragma Preelaborate, per AI05-0283. | |
3818 | * i-cstrea.ads (max_path_len): Change from variable to deferred | |
3819 | constant to allow it to be used as a bound in string component | |
3820 | in type System.File_IO.Temp_File_Record. | |
3821 | * s-os_lib.ads, s-commun.ads, s-ficobl.ads, s-fileio.ads: Add pragma | |
3822 | Preelaborate. | |
3823 | * s-fileio.adb (Get_Case_Sensitive): Move function inside | |
3824 | procedure Open. | |
3825 | (File_Names_Case_Sensitive): Move variable inside | |
3826 | procedure Open, to avoid violation of Preelaborate restriction | |
3827 | (due to call to Get_Case_Sensitive). | |
3828 | ||
3829 | 2012-07-09 Ed Schonberg <schonberg@adacore.com> | |
3830 | ||
3831 | * layout.adb (Set_Elem_Alignment): Protect against meaningless | |
3832 | size clause, to prevent overflow in internal computation of | |
3833 | alignment. | |
3834 | ||
6b34a333 | 3835 | 2012-07-09 Robert Dewar <dewar@adacore.com> |
3836 | ||
3837 | * freeze.adb, prj-util.adb, prj-util.ads, sem_ch13.adb: Minor | |
3838 | reformatting. | |
3839 | ||
3840 | 2012-07-09 Gary Dismukes <dismukes@adacore.com> | |
3841 | ||
3842 | * sem_cat.adb (Check_Categorization_Dependencies): | |
3843 | Allow dependence of both Remote_Types and Remote_Call_Interface | |
3844 | declarations (not just Remote_Types units) on preelaborated | |
3845 | units, but require that the dependence be made via a private | |
3846 | with_clause. Issue a specialized error message. | |
3847 | ||
960a0aad | 3848 | 2012-07-09 Pascal Obry <obry@adacore.com> |
3849 | ||
3850 | * prj-util.adb, prj-util.ads (For_Interface_Sources): New routine. | |
3851 | ||
84ed7523 | 3852 | 2012-07-09 Tristan Gingold <gingold@adacore.com> |
3853 | ||
3854 | * seh_init.c (__gnat_SEH_error_handler): On Win64 and SEH, | |
3855 | return for unknown exceptions. | |
3856 | * raise-gcc.c (__gnat_personality_seh0): Call __gnat_SEH_error_handler. | |
3857 | ||
3858 | 2012-07-09 Joel Brobecker <brobecker@adacore.com brobecker> | |
3859 | ||
3860 | * exp_dbug.ads (No_Dollar_In_Label): Delete. | |
3861 | ||
3862 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3863 | ||
3864 | * sem_ch13.adb (Check_Overloaded_Name): New routine. | |
3865 | ||
3866 | 2012-07-09 Vincent Pucci <pucci@adacore.com> | |
3867 | ||
3868 | * freeze.adb (Freeze_Record_Type): Analyze the delayed aspects of the | |
3869 | components in a record type. | |
3870 | ||
3871 | 2012-07-09 Pascal Obry <obry@adacore.com> | |
3872 | ||
3873 | * prj-util.ads: Minor reformatting. | |
3874 | ||
00c092f4 | 3875 | 2012-07-09 Tristan Gingold <gingold@adacore.com> |
3876 | ||
3877 | * raise-gcc.c (db_indent): Simplify style, improve comments. | |
3878 | Remove !IN_RTS part (dead). | |
3879 | ||
3880 | 2012-07-09 Robert Dewar <dewar@adacore.com> | |
3881 | ||
3882 | * usage.adb: Minor change to format of -gnatn line. | |
3883 | ||
3884 | 2012-07-09 Tristan Gingold <gingold@adacore.com> | |
3885 | ||
3886 | * a-exexpr-gcc.adb: Reorder routine. | |
3887 | ||
e4c87fa5 | 3888 | 2012-07-09 Vincent Celier <celier@adacore.com> |
3889 | ||
3890 | * lib-writ.ads: Add documentation for the Z lines (implicitly | |
3891 | withed units) and Y lines (limited withed units). | |
3892 | ||
3893 | 2012-07-09 Robert Dewar <dewar@adacore.com> | |
3894 | ||
3895 | * lib.ads, exp_attr.adb, exp_ch9.adb, sem_dim.adb, sem_ch9.adb, | |
3896 | sem_prag.adb, sem_ch12.adb, mlib-utl.adb, freeze.adb, sem_res.adb, | |
3897 | sem_attr.adb, sem_case.adb, gnatlink.adb, exp_ch4.adb, sem_ch6.adb, | |
3898 | sem_elim.adb, s-dimmks.ads, sem_ch13.adb: Minor code clean ups. | |
3899 | ||
3900 | 2012-07-09 Eric Botcazou <ebotcazou@adacore.com> | |
3901 | ||
3902 | * gnat_ugn.texi (Switches for gcc): Document -gnatn[12] only | |
3903 | lightly in the summary and more thoroughly in inlining section. | |
3904 | (Performance Considerations): Document -gnatn[12] in inlining | |
3905 | section. | |
3906 | ||
3907 | 2012-07-09 Tristan Gingold <gingold@adacore.com> | |
3908 | ||
3909 | * a-exexpr-gcc.adb (Unhandled_Except_Handler): New procedure. | |
3910 | (Unhandled_Others_Value): New const. | |
3911 | * raise-gcc.c (GNAT_UNHANDLED_OTHERS): Define. | |
3912 | (action_descriptor): Remove ttype_entry. | |
3913 | (get_action_description_for): Do not assign ttype_entry. | |
3914 | (is_handled_by): Consider GNAT_UNHANDLED_OTHERS. | |
3915 | ||
c1a30d6c | 3916 | 2012-07-03 Eric Botcazou <ebotcazou@adacore.com> |
3917 | ||
3918 | * gcc-interface/trans.c (Call_to_gnu): Robustify test for function case | |
3919 | if the CICO mechanism is used. | |
3920 | ||
0ceb8ef3 | 3921 | 2012-07-03 Eric Botcazou <ebotcazou@adacore.com> |
3922 | ||
3923 | * gcc-interface/utils2.c (build_simple_component_ref): Do not look | |
3924 | through an extension if the type contains a placeholder. | |
3925 | ||
265200d0 | 3926 | 2012-07-03 Eric Botcazou <ebotcazou@adacore.com> |
3927 | ||
3928 | * exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on | |
3929 | the designated subprogram type and also set Is_Dispatch_Table_Entity. | |
3930 | (Expand_Interface_Thunk): Propagate the convention on the thunk. | |
3931 | (Set_CPP_Constructors_Old): Set Is_Constructor and Convention_CPP on | |
3932 | the internal view of the constructors. | |
3933 | (Set_CPP_Constructors): Likewise. | |
3934 | * sem_prag.adb (Analyze_Pragma) <Pragma_CPP_Constructor>: Set the | |
3935 | convention on the function. | |
3936 | * gcc-interface/gigi.h (is_cplusplus_method): Declare. | |
3937 | * gcc-interface/decl.c (Has_Thiscall_Convention): New macro. | |
3938 | (gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the `thiscall' | |
3939 | calling convention | |
3940 | (get_minimal_subprog_decl): Likewise. | |
3941 | (is_cplusplus_method): New predicate. | |
3942 | * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Issue an | |
3943 | error on access to C++ constructor or member function. | |
3944 | ||
66f0b044 | 3945 | 2012-07-03 Eric Botcazou <ebotcazou@adacore.com> |
3946 | ||
3947 | * gcc-interface/utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types | |
3948 | attached to a TYPE_DECL. | |
3949 | ||
06ef5f86 | 3950 | 2012-06-26 Vincent Pucci <pucci@adacore.com> |
3951 | ||
3952 | * exp_ch3.adb (Build_Init_Statements): Don't check the parents | |
3953 | in the Rep Item Chain of the task for aspects Interrupt_Priority, | |
3954 | Priority, CPU and Dispatching_Domain. | |
3955 | * exp_ch9.adb (Expand_N_Task_Type_Declaration): fields _Priority, | |
3956 | _CPU and _Domain are present in the corresponding record type | |
3957 | only if the task entity has a pragma, attribute definition | |
3958 | clause or aspect specification. | |
3959 | (Make_Initialize_Protection): Don't check the parents in the Rep Item | |
3960 | Chain of the task for aspects Interrupt_Priority, Priority, CPU and | |
3961 | Dispatching_Domain. | |
3962 | * freeze.adb (Freeze_Entity): Use of Evaluate_Aspects_At_Freeze_Point | |
3963 | call replaced by Analyze_Aspects_At_Freeze_Point. | |
3964 | * sem_ch13.adb, sem_ch13.ads (Analyze_Aspects_At_Freeze_Point): | |
3965 | Renaming of Evaluate_Aspects_At_Freeze_Point. | |
3966 | ||
3967 | 2012-06-26 Yannick Moy <moy@adacore.com> | |
3968 | ||
3969 | * sem_attr.adb (Analyze_Attribute): Detect if 'Old is used outside a | |
3970 | postcondition, and issue an error in such a case. | |
3971 | ||
3972 | 2012-06-26 Yannick Moy <moy@adacore.com> | |
3973 | ||
3974 | * gnat_rm.texi: Minor editing. | |
3975 | ||
3976 | 2012-06-26 Tristan Gingold <gingold@adacore.com> | |
3977 | ||
3978 | * raise-gcc.c: Minor cleanup: remove unused prototype. | |
3979 | * seh_init.c: Do not create an image wide unwind info to catch | |
3980 | SEH when SEH unwind info are emitted by the compiler. | |
3981 | ||
367b1459 | 3982 | 2012-06-19 Steven Bosscher <steven@gcc.gnu.org> |
3983 | ||
3984 | * gcc-interface/trans.c: Include target.h. | |
3985 | (gigi): Try to put out .ident with targetm.asm_out.output_ident. | |
3986 | Remove uses of ASM_OUTPUT_IDENT. | |
3987 | * gcc-interface/Make-lang.in: Fix dependencies. | |
3988 | ||
ffda9ae3 | 3989 | 2012-06-15 Eric Botcazou <ebotcazou@adacore.com> |
3990 | ||
3991 | PR ada/53592 | |
3992 | * gcc-interface/gigi.h (maybe_vector_array): Make static inline. | |
3993 | * gcc-interface/utils.c (maybe_vector_array): Delete. | |
3994 | * gcc-interface/trans.c (gnat_to_gnu) <N_Indexed_Component>: Mark the | |
3995 | array object as addressable if it has vector type and is on the LHS. | |
3996 | ||
bc0dfc8d | 3997 | 2012-06-15 Eric Botcazou <ebotcazou@adacore.com> |
3998 | ||
3999 | PR middle-end/53590 | |
4000 | * gcc-interface/misc.c (gnat_init_options_struct): Set | |
4001 | opts->x_flag_delete_dead_exceptions to 1. | |
4002 | ||
d3544834 | 4003 | 2012-06-14 Jose Ruiz <ruiz@adacore.com> |
4004 | ||
4005 | * gcc-interface/Make-lang.in (ada.install-common, ada.uninstall): | |
4006 | Use the prefix specified with the --program-prefix configure option | |
4007 | to determine the install name of the Ada tools. | |
4008 | (ada.all.cross): Use a for loop to iterate over the set of Ada tools | |
4009 | instead of duplicate the same processing. | |
4010 | Update dependencies. | |
4011 | ||
2b184b2f | 4012 | 2012-06-14 Vincent Pucci <pucci@adacore.com> |
4013 | ||
4014 | * exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_Symbol | |
4015 | call replaced by Expand_Put_Call_With_Symbol call. | |
4016 | * sem_dim.adb: New fields Unit_Names, Unit_Symbols | |
4017 | and Dim_Symbols for record type System_Type. | |
4018 | (From_Dimension_To_String_Of_Symbols): Removed. | |
4019 | (From_Dim_To_Str_Of_Dim_Symbols): Renames previous | |
4020 | routine From_Dimension_To_String_Of_Symbols. | |
4021 | (From_Dim_To_Str_Of_Unit_Symbols): New routine. | |
4022 | (Analyze_Aspect_Dimension): argument Symbol in aspect | |
4023 | Dimension aggregate is optional. Named association implemented. | |
4024 | (Has_Compile_Time_Known_Expressions): Removed. | |
4025 | (Analyze_Aspect_Dimension_System): New | |
4026 | component Dim_Symbol in each Dimension aggregate in | |
4027 | aspect Dimension_System. Named associations implemented. | |
4028 | (Add_Dimension_Vector_To_Buffer): Removed. | |
4029 | (Add_Whole_To_Buffer): Removed. | |
4030 | (Expand_Put_Call_With_Dimension_Symbol.): Removed. | |
4031 | (Expand_Put_Call_With_Symbol): Renames previous routine | |
4032 | Expand_Put_Call_With_Dimension_Symbol. | |
4033 | (Has_Dimension_Symbols): Removed. | |
4034 | (Has_Symbols): Renames previous routine | |
4035 | Has_Dimension_Symbols. (Store_String_Oexpon): New routine. | |
4036 | * sem_dim.ads (Expand_Put_Call_With_Dimension_Symbol.): Removed. | |
4037 | (Expand_Put_Call_With_Symbol): Renames previous routine | |
4038 | Expand_Put_Call_With_Dimension_Symbol. | |
4039 | * s-diflio.adb, s-diinio.adb (Put): Symbol renames Symbols. | |
4040 | (Put_Dim_Of): New routines. | |
4041 | * s-diflio.ads, s-diinio.ads: documentation updated. | |
4042 | (Put): Symbol renames Symbols. | |
4043 | (Put_Dim_Of): New routines. | |
4044 | * s-dim.ads: documentation updated. | |
4045 | * s-dimmks.ads: dimensioned type and subtypes updated. | |
4046 | * snames.ads-tmpl: Name_Dim_Symbol, Name_Put_Dim_Of, Name_Symbol, | |
4047 | and Name_Unit_Symbol added. Name_Symbols removed. | |
4048 | ||
4049 | 2012-06-14 Vincent Pucci <pucci@adacore.com> | |
4050 | ||
4051 | * freeze.adb (In_Exp_Body): Expression function case added. | |
4052 | (Freeze_Expression): Insert the Freeze_Nodes | |
4053 | list before the correct current scope in case of a quantified | |
4054 | expression. | |
4055 | ||
4056 | 2012-06-14 Pascal Obry <obry@adacore.com> | |
4057 | ||
4058 | * projects.texi: Document the Install package for gprinstall. | |
4059 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4060 | ||
4061 | * sem_elim.adb (Check_For_Eliminated_Subprogram): Do not check within | |
4062 | a default expression. | |
4063 | * sem_res.adb (Resolve_Call): simplify code. | |
4064 | ||
4065 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4066 | ||
4067 | * sem_case.adb (Check, Issue_Msg): within an instance, non-other | |
4068 | values in a variant part or a case expression do not have to | |
4069 | belong to the actual subtype. | |
4070 | ||
4071 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4072 | ||
4073 | * sem_ch12.adb (Validate_Derived_Type_Instance): If parent is | |
4074 | an interface type, check whether it is itself a previous formal | |
4075 | already instantiated in the current list of actuals. | |
4076 | ||
4077 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4078 | ||
4079 | * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): The | |
4080 | expression for a stream attribute is a name that may be overloaded | |
4081 | with other declarations. To determine whether it matches the | |
4082 | aspect at the freeze point, it is necessary to verify that one | |
4083 | of its interpretations matches. | |
4084 | ||
caf125ce | 4085 | 2012-06-14 Robert Dewar <dewar@adacore.com> |
4086 | ||
4087 | * exp_ch7.adb, exp_util.adb, sem_aux.ads, exp_ch9.adb, | |
4088 | sem_ch10.adb, freeze.adb, sem_util.adb, exp_ch4.adb, | |
4089 | s-taprop-dummy.adb: Minor reformatting. | |
4090 | ||
4091 | 2012-06-14 Vincent Pucci <pucci@adacore.com> | |
4092 | ||
4093 | * exp_attr.adb (Expand_N_Attribute_Reference): Lock_Free | |
4094 | attribute case added. | |
4095 | * par-prag.adb (Prag): Lock_Free pragma case added. | |
4096 | * sem_attr.adb (Analyze_Attribute_Reference): Lock_Free attribute | |
4097 | case added. | |
4098 | * sem_ch13.adb (Analyze_Aspect_Specifications): Record_Rep_Item | |
4099 | call added for Aspect_Lock_Free. | |
4100 | * sem_ch9.adb (Allows_Lock_Free_Implementation): New Lock_Free | |
4101 | error messages for subprogram bodies. | |
4102 | (Lock_Free_Disabled): New routine. | |
4103 | (Analyze_Protected_Body): Call to Lock_Free_Disabled added. | |
4104 | * sem_prag.adb (Analyze_Pragma): Lock_Free pragma case added. | |
4105 | * snames.adb-tmpl (Get_Pragma_Id): Name_Lock_Free case added. | |
4106 | (Is_Pragma_Name): Name_Lock_Free case added. | |
4107 | * snames.ads-tmpl: Attribute_Lock_Free and Pragma_Lock_Free added. | |
4108 | ||
4109 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4110 | ||
4111 | * a-coorma.adb, a-cborma.adb, a-cbhama.adb, a-ciorma.adb: Add missing | |
4112 | aliased keyword. | |
4113 | ||
4114 | 2012-06-14 Bob Duff <duff@adacore.com> | |
4115 | ||
4116 | * lib.ads, lib.adb, sem.adb (Write_Unit_Info): Move this | |
4117 | procedure from Sem body to Lib spec, so it can be used for | |
4118 | debugging elsewhere. | |
4119 | ||
4120 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4121 | ||
4122 | * sem_ch6.adb (Check_Conformance): Add Ada 2012 check on mode | |
4123 | conformance: "aliased" must apply to both or neither formal | |
4124 | parameters. | |
4125 | ||
2fec2b51 | 4126 | 2012-06-14 Gary Dismukes <dismukes@adacore.com> |
4127 | ||
4128 | * exp_ch9.adb: Minor reformatting. | |
4129 | ||
4130 | 2012-06-14 Thomas Quinot <quinot@adacore.com> | |
4131 | ||
4132 | * freeze.adb (Freeze_Record_Type): Warn about useless bit order | |
4133 | specification [when there's no component clause] regardless | |
4134 | of whether the specified bit order is reversed or not. | |
4135 | ||
4136 | 2012-06-14 Tristan Gingold <gingold@adacore.com> | |
4137 | ||
4138 | * raise-gcc.c (__gnat_personality_seh0): New function. | |
4139 | ||
4140 | 2012-06-14 Tristan Gingold <gingold@adacore.com> | |
4141 | ||
4142 | * gnatname.adb (Gnatname): Make sure that dynamic table | |
4143 | argument_data is initialized. | |
4144 | ||
4145 | 2012-06-14 Robert Dewar <dewar@adacore.com> | |
4146 | ||
4147 | * sem_aux.adb: Minor code reorganization. | |
4148 | ||
89b3b365 | 4149 | 2012-06-14 Vincent Pucci <pucci@adacore.com> |
4150 | ||
4151 | * einfo.adb einfo.ads (Get_Rep_Item): Removed. | |
4152 | (Get_Rep_Item_For_Entity): Removed. | |
4153 | (Get_Rep_Pragma): Removed. | |
4154 | (Get_Rep_Pragma_For_Entity): Removed. | |
4155 | (Has_Rep_Item): Removed. | |
4156 | (Has_Rep_Pragma): Removed. | |
4157 | (Has_Rep_Pragma_For_Entity): Removed. | |
4158 | * exp_ch9.adb (Expand_N_Task_Type_Declaration): | |
4159 | Has_Rep_Pragma_For_Entity replaced by Has_Rep_Pragma | |
4160 | and Get_Rep_Pragma_For_Entity replaced by Get_Rep_Pragma. | |
4161 | (Make_Task_Create_Call): Has_Rep_Pragma_For_Entity replaced | |
4162 | by Has_Rep_Pragma and Get_Rep_Pragma_For_Entity replaced by | |
4163 | Get_Rep_Pragma. | |
4164 | * exp_intr.adb: Dependency to Sem_Aux added for call to Get_Rep_Pragma. | |
4165 | * sem_aux.adb (Get_Rep_Item): New routine. | |
4166 | (Get_Rep_Pragma): New routine. | |
4167 | (Has_Rep_Item): New routine. | |
4168 | (Has_Rep_Pragma): New routine. | |
4169 | (Nearest_Ancestor): Minor reformatting. | |
4170 | * sem_aux.ads (Get_Rep_Item): New routine. | |
4171 | (Get_Rep_Pragma): New routine. | |
4172 | (Has_Rep_Item): New routine. | |
4173 | (Has_Rep_Pragma): New routine. | |
4174 | * sem_ch13.adb (Duplicate_Clause): Restore original error messages. | |
4175 | * sem_eval.adb (Subtypes_Statically_Match): Get_Rep_Item_For_Entity | |
4176 | replaced by Get_Rep_Item. | |
4177 | * sem_prag.adb (Analyze_Pragma): Restore original error messages. | |
4178 | (Check_Duplicate_Pragma): Restore original error messages. | |
4179 | ||
714e7f2d | 4180 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> |
4181 | ||
4182 | * sem_util.adb (Is_Object_Reference): in Ada 2012, qualified | |
4183 | expressions are valid names. | |
4184 | ||
4185 | 2012-06-14 Ed Schonberg <schonberg@adacore.com> | |
4186 | ||
4187 | * sem_ch10.adb (Analyze_Compilation_Unit): If the unit is an | |
4188 | instantiation do not emit warnings for obsolescent units. The | |
4189 | warnings belong on the corresponding generic. | |
4190 | ||
4191 | 2012-06-14 Hristian Kirtchev <kirtchev@adacore.com> | |
4192 | ||
4193 | * einfo.adb: Update the usage of Node15. | |
4194 | (Return_Flag_Or_Transient_Decl): Removed. | |
4195 | (Set_Return_Flag_Or_Transient_Decl): Removed. | |
4196 | (Set_Status_Flag_Or_Transient_Decl): New routine. | |
4197 | (Status_Flag_Or_Transient_Decl): New routine. | |
4198 | (Write_Field15_Name): Update the output for variables and constants. | |
4199 | * einfo.ads: Remove attribute | |
4200 | Return_Flag_Or_Transient_Decl along with occurrences in nodes. | |
4201 | (Return_Flag_Or_Transient_Decl): Removed along with pragma Inline. | |
4202 | (Set_Return_Flag_Or_Transient_Decl): Removed along with pragma Inline. | |
4203 | (Set_Status_Flag_Or_Transient_Decl): New routine along with pragma | |
4204 | Inline. | |
4205 | (Status_Flag_Or_Transient_Decl): New routine along with pragma Inline. | |
4206 | * exp_ch4.adb (Create_Alternative): New routine. | |
4207 | (Expand_N_Conditional_Expression): Handle the case | |
4208 | where at least one of the conditional expression | |
4209 | alternatives prodices a controlled temporary by means of a function | |
4210 | call. | |
4211 | (Is_Controlled_Function_Call): New routine. | |
4212 | (Process_Transient_Object): Update the call to | |
4213 | Set_Return_Flag_Or_Transient_Decl. | |
4214 | * exp_ch6.adb (Enclosing_Context): New routine. | |
4215 | (Expand_N_Extended_Return_Statement): Update all calls to | |
4216 | Set_Return_Flag_Or_Transient_Decl. | |
4217 | (Expand_Ctrl_Function_Call): Prohibit the finalization of a controlled | |
4218 | function result when the context is a conditional expression. | |
4219 | * exp_ch7.adb (Process_Declarations): Update all calls to | |
4220 | Return_Flag_Or_Transient_Decl. Add processing for intermediate | |
4221 | results of conditional expressions where one of the alternatives | |
4222 | uses a controlled function call. | |
4223 | (Process_Object_Declaration): Update all calls to | |
4224 | Return_Flag_Or_Transient_Decl and rearrange the logic to process | |
4225 | "hook" objects first. | |
4226 | (Process_Transient_Objects): Update the call to | |
4227 | Set_Return_Flag_Or_Transient_Decl. | |
4228 | * exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, | |
4229 | Boolean)): Update all calls to Return_Flag_Or_Transient_Decl. Add | |
4230 | detection for intermediate results of conditional expressions | |
4231 | where one of the alternatives uses a controlled function call. | |
4232 | ||
39854e56 | 4233 | 2012-06-13 Eric Botcazou <ebotcazou@adacore.com> |
ab19f7e4 | 4234 | |
39854e56 | 4235 | Revert |
4236 | 2012-05-19 Eric Botcazou <ebotcazou@adacore.com> | |
4237 | ||
4238 | * gcc-interface/decl.c (Has_Thiscall_Convention): New macro. | |
4239 | (gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall | |
4240 | calling convention | |
4241 | (get_minimal_subprog_decl): Likewise. | |
4242 | (gnat_first_param_is_class): New predicate. | |
ab19f7e4 | 4243 | |
17631aa0 | 4244 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4245 | ||
4246 | * gcc-interface/Make-lang.in: Update dependencies. | |
4247 | * sem_ch9.ads, einfo.adb, einfo.ads, sem_prag.adb, freeze.adb, | |
4248 | sem_util.adb, sem_ch13.adb, sem_ch13.ads, exp_ch3.adb: Add comments. | |
4249 | Minor reformatting. | |
4250 | ||
4251 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> | |
4252 | ||
4253 | * sem_ch12.adb (Instantiate_Formal_Subprogram): Remove code that | |
4254 | implements AI05-0296, because the actual may be overloaded. | |
4255 | * sem_ch8.adb (Analyze_Subprogram_Renaming): and move it here, | |
4256 | to be applied once the actual subprogram is properly resolved. | |
4257 | ||
89f1e35c | 4258 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4259 | ||
4260 | * switch-c.adb, a-exexpr-gcc.adb: Minor reformatting. | |
4261 | ||
4262 | 2012-06-12 Vincent Pucci <pucci@adacore.com> | |
4263 | ||
4264 | * checks.adb (Tag_Checks_Suppressed): Remove Kill_Tag_Checks check. | |
4265 | * einfo.adb (Universal_Aliasing): Apply to the implementation | |
4266 | base type instead of the base type. | |
4267 | (Get_Rep_Item_For_Entity): | |
4268 | Return a pragma if the pragma node is not present in the Rep | |
4269 | Item chain of the parent. | |
4270 | (Kill_Tag_Checks): Removed (unused flag). | |
4271 | (Set_Kill_Tag_Checks): Removed. | |
4272 | (Get_First_Rep_Item): New routine. | |
4273 | (Get_Rep_Pragma_For_Entity): New routine. | |
4274 | (Has_Rep_Item): New routine. | |
4275 | (Has_Rep_Pragma_For_Entity): New routine. | |
4276 | (Present_In_Rep_Item): New routine. | |
4277 | * einfo.ads (Kill_Tag_Checks): Removed. | |
4278 | (Set_Kill_Tag_Checks): Removed. | |
4279 | (Get_First_Rep_Item): New routine. | |
4280 | (Get_Rep_Pragma_For_Entity): New routine. | |
4281 | (Has_Rep_Item): New routine. | |
4282 | (Has_Rep_Pragma_For_Entity): New routine. | |
4283 | (Present_In_Rep_Item): New routine. | |
4284 | * exp_attr.adb, sem_attr.adb: Attribute_CPU, | |
4285 | Attribute_Dispatching_Domain and Attribute_Interrupt_Priority | |
4286 | case added. | |
4287 | * exp_ch13.adb (Expand_N_Attribute_Definition_Clause): For | |
4288 | attribute Storage_Size, insert the new assignement statement | |
4289 | after the Size variable declaration. | |
4290 | * exp_ch3.adb (Build_Init_Statements): Fill the CPU, | |
4291 | Dispatching_Domain, Priority and Size components with the Rep | |
4292 | Item expression (if any). | |
4293 | * exp_ch9.adb (Expand_N_Task_Type_Declaration): _CPU, | |
4294 | _Priority, _Domain fields are always present in the | |
4295 | corresponding record type. | |
4296 | (Find_Task_Or_Protected_Pragma): Removed. | |
4297 | (Get_Relative_Deadline_Pragma): New routine. | |
4298 | (Make_Initialize_Protection): Find_Task_Or_Protected_Pragma removed. | |
4299 | (Make_Task_Create_Call): Check CPU, Size or | |
4300 | Dispatching_Domain Rep Item is present using new routine Has_Rep_Item. | |
4301 | * freeze.adb (Freeze_All): Push_Scope_And_Install_Discriminants | |
4302 | and Uninstall_Discriminants_And_Pop_Scope calls added. | |
4303 | (Freeze_Entity): Evaluate_Aspects_At_Freeze_Point call added. | |
4304 | * sem_aux.adb (Nearest_Ancestor): Retrieve the nearest ancestor | |
4305 | for private derived types. | |
4306 | * sem_ch13.adb (Analyze_Aspect_Specifications): Clean-up | |
4307 | and reordering. Delay analysis for all aspects (except some | |
4308 | peculiar cases). | |
4309 | (Analyze_Attribute_Definition_Clause): | |
4310 | Attribute_CPU, Attribute_Dispatching_Domain, | |
4311 | Interrupt_Priority and Attribute_Priority cases added. | |
4312 | (Analyze_Freeze_Entity): Push_Scope_And_Install_Discriminants | |
4313 | and Uninstall_Discriminants_And_Pop_Scope calls added. | |
4314 | (Check_Aspect_At_Freeze_Point): Reordering and clean-up. | |
4315 | (Duplicate_Clause): Issue an explicit error msg when the current | |
4316 | clause duplicates an aspect specification, an attribute definition | |
4317 | clause or a pragma. | |
4318 | (Evaluate_Aspects_At_Freeze_Point): New routine. | |
4319 | * sem_ch13.ads (Evaluate_Aspects_At_Freeze_Point): New routine. | |
4320 | * sem_ch9.adb, sem_ch9.ads (Install_Discriminants): New routine. | |
4321 | (Push_Scope_And_Install_Discriminants): New routine. | |
4322 | (Uninstall_Discriminants): New routine. | |
4323 | (Uninstall_Discriminants_And_Pop_Scope): New routine. | |
4324 | * sem_prag.adb (Check_Duplicate_Pragma): Issue an explicit error | |
4325 | msg when the current pragma duplicates an aspect specification, | |
4326 | an attribute definition clause or a pragma. | |
4327 | (Analyze_Pragma): Remove use of flags Has_Pragma_CPU, | |
4328 | Has_Pragma_Priority and Has_Pragma_Dispatching_Domain. | |
4329 | * sem_util.adb (Compile_Time_Constraint_Error): Don't complain | |
4330 | about the type if the corresponding concurrent type doesn't come | |
4331 | from source. | |
4332 | * sinfo.adb, sinfo.ads (Has_Pragma_CPU): Removed. | |
4333 | (Has_Pragma_Dispatching_Domain): Removed. | |
4334 | (Has_Pragma_Priority): Removed. | |
4335 | (Has_Task_Info_Pragma): Removed. | |
4336 | (Has_Task_Name_Pragma): Removed. | |
4337 | (Set_Has_Pragma_CPU): Removed. | |
4338 | (Set_Has_Pragma_Dispatching_Domain): Removed. | |
4339 | (Set_Has_Pragma_Priority): Removed. | |
4340 | (Set_Has_Task_Info_Pragma): Removed. | |
4341 | (Set_Has_Task_Name_Pragma): Removed. | |
4342 | * snames.adb-tmpl (Get_Pragma_Id): Pragma_CPU, | |
4343 | Pragma_Dispatching_Domain and Pragma_Interrupt_Priority added. | |
4344 | (Is_Pragma_Name): Name_CPU, Name_Dispatching_Domain and | |
4345 | Name_Interrupt_Priority added. | |
4346 | * snames.ads-tmpl: Name_Dispatching_Domain, Name_CPU | |
4347 | and Name_Interrupt_Priority moved to the list of | |
4348 | Attribute_Name. Attribute_CPU, Attribute_Dispatching_Domain and | |
4349 | Attribute_Interrupt_Priority added. Pragma_Dispatching_Domain, | |
4350 | Pragma_CPU and Pragma_Interrupt_Priority moved to the end of | |
4351 | the Pragma_Name list. | |
4352 | ||
a5e7b481 | 4353 | 2012-06-12 Arnaud Charlet <charlet@adacore.com> |
4354 | ||
4355 | * xref_lib.adb (Get_Full_Type): Add support for 'G'. | |
4356 | ||
4357 | 2012-06-12 Tristan Gingold <gingold@adacore.com> | |
4358 | ||
4359 | * a-exexpr-gcc.adb (Unwind_Exception): Add 4 more private fields. | |
4360 | ||
4361 | 2012-06-12 Fedor Rybin <frybin@adacore.com> | |
4362 | ||
4363 | * gnat_ugn.texi: Update doc on gnattest. | |
4364 | ||
4365 | 2012-06-12 Robert Dewar <dewar@adacore.com> | |
4366 | ||
4367 | * sem_ch12.adb: Add comments. | |
4368 | ||
3e031dbf | 4369 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4370 | ||
4371 | * switch-c.adb, inline.adb, usage.adb, opt.ads: Minor reformatting. | |
4372 | ||
6a8773aa | 4373 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4374 | ||
4375 | * sem_ch12.adb: Minor reformatting. | |
4376 | ||
4377 | 2012-06-12 Eric Botcazou <ebotcazou@adacore.com> | |
4378 | ||
4379 | * opt.ads (Inline_Level): New variable. | |
4380 | * gnat1drv.adb (Adjust_Global_Switches): Set it based on optimization | |
4381 | level if it has not been set by the user. | |
4382 | * switch-c.adb (Scan_Front_End_Switches): Accept -gnatn1 and -gnatn2 | |
4383 | and set Inline_Level accordingly. | |
4384 | * inline.adb (Add_Inlined_Body): Declate new Inline_Level_Type type. | |
4385 | (Must_Inline): Return Inline_Level_T instead of Boolean to indicate | |
4386 | whether the package of the inlined subprogram must be compiled. | |
4387 | If Inline_Level is set to 1, only compile packages of subprograms | |
4388 | directly called from the main unit. | |
4389 | * usage.adb (Usage): Adjust line for -gnatn switch. | |
4390 | * gnat_ugn.texi (Switches for gcc): Document -gnatn1 and -gnatn2. | |
4391 | ||
56381e22 | 4392 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> |
4393 | ||
4394 | * sem_ch12.adb (Instantiate_Formal_Subprogram): Do not apply | |
4395 | AI05-296 if the actual is overloaded. In this case The rule must | |
4396 | be applied after resolution, in Analyze_Subprogram_Renaming. | |
4397 | ||
a96d5239 | 4398 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4399 | ||
4400 | * stringt.adb: Minor reformatting. | |
4401 | ||
4402 | 2012-06-12 Robert Dewar <dewar@adacore.com> | |
4403 | ||
4404 | * ali-util.adb, stringt.ads: Minor reformatting. | |
4405 | ||
4406 | 2012-06-12 Hristian Kirtchev <kirtchev@adacore.com> | |
4407 | ||
4408 | * exp_ch7.adb (Process_Declarations): Handle the case where | |
4409 | the original context has been wrapped in a block to avoid | |
4410 | interference between exception handlers and At_End handlers. | |
4411 | (Wrap_HSS_In_Block): Mark the block which contains the original | |
4412 | statements of the context as being a finalization wrapper. | |
4413 | * sinfo.adb (Is_Finalization_Wrapper): New routine. | |
4414 | (Set_Is_Finalization_Wrapper): New routine. | |
4415 | ||
4416 | * sinfo.ads: Add new attribute Is_Finalization_Wrapper applicable | |
4417 | to block statemnts. | |
4418 | (Is_Finalization_Wrapper): New routine with corresponding pragma Inline. | |
4419 | (Set_Is_Finalization_Wrapper): New routine with corresponding pragma | |
4420 | Inline. | |
4421 | ||
4422 | 2012-06-12 Steve Baird <baird@adacore.com> | |
4423 | ||
4424 | * gnat1drv.adb (Adjust_Global_Switches): No longer need to set | |
4425 | Exception_Extra_Info in CodePeer_Mode. | |
4426 | ||
37d19a65 | 4427 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4428 | ||
4429 | * sem_dist.adb, exp_ch7.adb, sem_type.adb, exp_attr.adb, | |
4430 | sinfo.ads, sem_ch7.adb, exp_alfa.adb, sem_scil.adb, sem_ch12.adb, | |
4431 | sem_util.adb, sem_res.adb, sem_attr.adb, sem_elab.adb, exp_ch6.adb, | |
4432 | sem_ch4.adb, sem_warn.adb, scil_ll.adb, exp_cg.adb: Minor code | |
4433 | reorganization. | |
4434 | ||
4435 | 2012-06-12 Eric Botcazou <ebotcazou@adacore.com> | |
4436 | ||
4437 | * s-tasini.ads: Minor fix in comment. | |
4438 | ||
4439 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4440 | ||
4441 | * freeze.adb (Freeze_Record_Type): Warn on record with | |
4442 | Scalar_Storage_Order if there is no placed component. | |
4443 | ||
4444 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4445 | ||
4446 | * sem_ch3.adb: Minor comment fix. | |
4447 | ||
4448 | 2012-06-12 Vincent Celier <celier@adacore.com> | |
4449 | ||
4450 | * ali-util.adb (Time_Stamp_Mismatch): In minimal recompilation | |
4451 | mode, use Stringt Mark and Release to avoid growing the Stringt | |
4452 | internal tables uselessly. | |
4453 | * stringt.adb (Strings_Last): New global variable | |
4454 | (String_Chars_Last): New global variable. | |
4455 | (Mark, Release): New procedures. | |
4456 | * stringt.ads (Mark, Release) New procedures. | |
4457 | ||
f0224186 | 4458 | 2012-06-12 Hristian Kirtchev <kirtchev@adacore.com> |
4459 | ||
4460 | * exp_ch7.adb (Process_Transient_Objects): Renamed constant | |
4461 | Requires_Hooking to Must_Hook and replace all occurrences of the name. | |
4462 | (Requires_Hooking): New routine. Detect all contexts that require | |
4463 | transient variable export to the outer finalizer due to a potential | |
4464 | exception. | |
4465 | ||
73c6a422 | 4466 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> |
4467 | ||
4468 | * sem_ch12.adb: Small adjustment. | |
4469 | ||
4470 | 2012-06-12 Vincent Celier <celier@adacore.com> | |
4471 | ||
4472 | * vms_cmds.ads (Command_Type): New enumeration value Test | |
4473 | * vms_conv.adb (Initialize): Add component at index Test in | |
4474 | Command_List | |
4475 | * vms_data.ads (Test_Switches): New global variable for the | |
4476 | switches of gnattest, currently empty. | |
4477 | ||
eb827c82 | 4478 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> |
4479 | ||
4480 | * sem_ch3.adb (Analyze_Subtype_Declaration): if an incomplete | |
4481 | type is tagged, so is a subtype of it. | |
4482 | * sem_ch12.adb (Validate_Actual_Subprogram): implement AI05-0296, | |
4483 | concerning freeze rules in the presence of formal incomplete | |
4484 | types: a formal abstract subprogram cannot have an incomplete | |
4485 | controlling type, and the profile of the actual subprogram does | |
4486 | not freeze if it includes an incomplete untagged type. | |
4487 | ||
41d55ffb | 4488 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4489 | ||
4490 | * a-direct.adb: Minor reformatting. | |
4491 | ||
4492 | 2012-06-12 Robert Dewar <dewar@adacore.com> | |
4493 | ||
4494 | * gnat_ugn.texi: Add missing documentation for -gnatw.v and | |
4495 | -gnatw.V. | |
4496 | ||
4497 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4498 | ||
4499 | * sem_ch7.adb, sem_prag.adb, sem_ch12.adb, sem_ch4.adb, | |
4500 | sem_ch13.adb: Minor rewording of error messages for unchecked unions. | |
4501 | ||
1d8c4b77 | 4502 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4503 | ||
4504 | * lib-xref.ads: Minor reformatting. | |
4505 | ||
4506 | 2012-06-12 Pascal Obry <obry@adacore.com> | |
4507 | ||
4508 | * a-direct.adb (Delete_File): Delete symbolic links silently | |
4509 | instead of raising the Name_Error exception when the symbolic | |
4510 | link is pointing to a non existent file. | |
4511 | ||
b11ac6d5 | 4512 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4513 | ||
4514 | * xref_lib.adb, sem_ch13.adb, lib-xref.adb: Minor reformatting. | |
4515 | ||
4516 | 2012-06-12 Javier Miranda <miranda@adacore.com> | |
4517 | ||
4518 | * lib-xref.ads Adding missing documentation. | |
4519 | ||
fc211e7d | 4520 | 2012-06-12 Hristian Kirtchev <kirtchev@adacore.com> |
4521 | ||
4522 | * exp_ch7.adb (Create_Finalizer): Add the | |
4523 | exception reraise mechanism at the very end of the finalizer | |
4524 | statements. This placement ensures that all objects are finalized, | |
4525 | the secondary stack mark released and aborts undeferred before | |
4526 | propagating an exception. | |
4527 | ||
4528 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> | |
4529 | ||
4530 | * sem_ch10.adb (Remove_Unit_From_Visibility): if the unit is a | |
4531 | wrapper package. remove from visibility the original subprogram | |
4532 | instance. | |
4533 | ||
4534 | 2012-06-12 Javier Miranda <miranda@adacore.com> | |
4535 | ||
4536 | * sem_prag.adb (Process_Convention): Generate reference to entity | |
4537 | exported to foreign language. Needed for GPS navigation. | |
4538 | * xref_lib.adb (Parse_Identifier_Info): Parse exported entities. | |
4539 | * lib-xref (Output_References): Output exported entities. | |
4540 | ||
4541 | 2012-06-12 Pascal Obry <obry@adacore.com> | |
4542 | ||
4543 | * prj-attr.adb: Add install package and corresponding attributes. | |
4544 | * snames.ads-tmpl (Name_Active): New constant. | |
4545 | (Name_Exec_Subdir): Likewise. | |
4546 | (Name_Install): Likewise. | |
4547 | (Name_Lib_Subdir): Likewise. | |
4548 | (Name_Project_Subdir): Likewise. | |
4549 | (Name_Sources_Subdir): Likewise. | |
4550 | ||
4551 | 2012-06-12 Bob Duff <duff@adacore.com> | |
4552 | ||
4553 | * sem_res.adb (Check_Infinite_Recursion): | |
4554 | Suppress spurious warning on recursion after "raise with ...". | |
4555 | ||
608b54ce | 4556 | 2012-06-12 Thomas Quinot <quinot@adacore.com> |
4557 | ||
4558 | * sem_prag.adb (Analyze_Pragma, case Unchecked_Union): Do | |
4559 | not crash on illegal unchecked union that is a null record. | |
4560 | ||
4561 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4562 | ||
4563 | * exp_ch4.adb (Has_Inferable_Discriminants): Reorganize code to | |
4564 | treat implicit dereferences with a constrained unchecked union | |
4565 | nominal subtype as having inferable discriminants. | |
4566 | ||
b6a174b7 | 4567 | 2012-06-12 Robert Dewar <dewar@adacore.com> |
4568 | ||
4569 | * sem_ch6.adb: Minor reformatting. | |
4570 | ||
4571 | 2012-06-12 Eric Botcazou <ebotcazou@adacore.com> | |
4572 | ||
4573 | * gnat_ugn.texi: Couple of minor corrections. | |
4574 | ||
4575 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4576 | ||
4577 | * sem_prag.adb (Check_Variant): An empty component list is not | |
4578 | illegal in an unchecked union variant. | |
4579 | ||
5bf9d771 | 4580 | 2012-06-12 Gary Dismukes <dismukes@adacore.com> |
4581 | ||
4582 | * projects.texi: Remove comments. | |
4583 | ||
4584 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4585 | ||
4586 | * back_end.adb (Scan_Back_End_Switches): Treat -fdump-scos as | |
4587 | synonym of -gnateS. | |
4588 | (gnat_post_options): Disable gimple-based SCO generator. | |
4589 | * gnat_ugn.texi: Document that -gnateS is an obsolete synonym | |
4590 | of -fdump-scos. | |
4591 | ||
4592 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> | |
4593 | ||
4594 | * sem_ch6.adb (Different_Generic_Profile): new predicate for | |
4595 | Find_Corresponding_Spec, to handle a rare case of accidental | |
4596 | overloading in an instance, when the profile of a subprogram body | |
4597 | that depends on a formal type becomes compatible with that of | |
4598 | a homonym whose profile in the generic mentions the actual type. | |
4599 | ||
4600 | 2012-06-12 Thomas Quinot <quinot@adacore.com> | |
4601 | ||
4602 | * gnat1drv.adb: Minor reformatting. | |
4603 | ||
f4f8b6b5 | 4604 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> |
4605 | ||
4606 | * sem_util.adb (Build_Explicit_Dereference): If the expression | |
4607 | is an entity, ensure that the type of the expression is the same | |
4608 | as that of the entity. | |
4609 | ||
4610 | 2012-06-12 Pat Rogers <rogers@adacore.com> | |
4611 | ||
4612 | * projects.texi: Corrected instances of the word "build" that | |
4613 | should be "built" instead. Other similar changes and minor | |
4614 | punctuation changes. | |
4615 | ||
a5a64273 | 4616 | 2012-06-12 Eric Botcazou <ebotcazou@adacore.com> |
4617 | ||
4618 | * sem_util.adb (Is_Atomic_Object): Return true for an atomic | |
4619 | component as well as a prefix which is an atomic component. | |
4620 | ||
4621 | 2012-06-12 Ed Schonberg <schonberg@adacore.com> | |
4622 | ||
4623 | * exp_prag.adb (Expand_Pragma_Import_Or_Interface): revert previous | |
4624 | patch. The processing of interfacing aspects now generates a | |
4625 | proper Ada 2005 pragma. | |
4626 | * sem_prag.adb (Analyze_Pragma, cases Pragma_Export and | |
4627 | Pragma_Import): revert previous patch. The processing of | |
4628 | interfacing aspects now generates a proper Ada 2005 pragma. | |
4629 | * sem_ch13.adb (Analyze_Aspect_Specifications): generate proper | |
4630 | pragam for aspects Convention, Import and Export. Scan list | |
4631 | of aspects to collect link name and external name if present, | |
4632 | and verify that a complete pragma can be generated. | |
4633 | ||
39854e56 | 4634 | 2012-06-11 Olivier Hainque <hainque@adacore.com> |
4635 | ||
4636 | * gcc-interface/Makefile.in (GNATLIBCFLAGS_FOR_C): Remove | |
4637 | $(PIC_FLAG_FOR_TARGET). | |
4638 | (gnatlib-shared-default): Add $(PIC_FLAG_FOR_TARGET) to | |
4639 | GNATLIBCFLAGS_FOR_C passed to gnatlib. | |
4640 | (gnatlib-shared-win32): Likewise. | |
4641 | (gnatlib-shared-darwin): Likewise. | |
4642 | (gnatlib-shared-dual-win32): Pass PIC_FLAG_FOR_TARGET to | |
4643 | gnatlib-shared-win32. | |
4644 | ||
7016287f | 4645 | 2012-06-11 Eric Botcazou <ebotcazou@adacore.com> |
4646 | ||
4647 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Convert GNU_SIZE | |
4648 | to units before invoking allocatable_size_p on it. | |
4649 | Remove orphaned comment. Do not use ssize_int. | |
4650 | <E_Record_Subtype>: Traverse list in original order. Minor tweak. | |
4651 | (allocatable_size_p): Adjust and simplify. | |
4652 | (build_subst_list): Use consistent terminology throughout. | |
4653 | (build_variant_list): Likewise. Traverse list in original order. | |
4654 | (create_field_decl_from): Likewise. | |
4655 | (copy_and_substitute_in_size): Likewise. | |
4656 | (create_variant_part_from): Add comment about field list order. | |
4657 | * gcc-interface/utils.c (build_vms_descriptor): Do not use ssize_int. | |
4658 | * gcc-interface/utils2.c (build_allocator): Likewise. | |
4659 | ||
e45f3812 | 4660 | 2012-06-11 Eric Botcazou <ebotcazou@adacore.com> |
4661 | ||
4662 | * gcc-interface/trans.c (Identifier_to_gnu): Test Is_Elementary_Type | |
4663 | instead of Is_Scalar_Type for a constant with an address clause. | |
4664 | Do not return the underlying constant for a constant used by reference | |
4665 | if it holds the address of a constant and an lvalue is required. | |
4666 | ||
f29f9ff7 | 4667 | 2012-06-11 Eric Botcazou <ebotcazou@adacore.com> |
4668 | ||
4669 | * gcc-interface/decl.c (gnat_to_gnu_entity): Do not specifically deal | |
4670 | with external constants wrt force_global here... | |
4671 | <E_Constant>: ...but here instead. | |
4672 | * gcc-interface/utils.c (gnat_pushdecl): Do not put external DECLs onto | |
4673 | the list of global DECLs. | |
4674 | ||
5382f1dd | 4675 | 2012-06-11 Eric Botcazou <ebotcazou@adacore.com> |
4676 | ||
4677 | * gcc-interface/decl.c (gnat_to_gnu_entity): Translate the Esize on | |
4678 | entry only for elementary types and abort if it is too large. | |
4679 | <E_Record_Type>: Make sure the Esize is known before using it. | |
4680 | ||
dff12c10 | 4681 | 2012-06-04 Steven Bosscher <steven@gcc.gnu.org> |
4682 | ||
4683 | * gcc-interface/utils2.c: Do not include output.h. | |
4684 | * gcc-interface/Make-lang.in: Fix dependencies. | |
4685 | ||
7843e4bc | 4686 | 2012-05-29 Michael Matz <matz@suse.de> |
4687 | ||
4688 | * gcc-interface/utils.c (create_var_decl_1): Don't call expand_decl. | |
4689 | ||
b429b8a7 | 4690 | 2012-05-26 Eric Botcazou <ebotcazou@adacore.com> |
4691 | ||
4692 | * gcc-interface/decl.c (variant_desc): Rename 'record' to 'new_type'. | |
4693 | (build_variant_list): Adjust to above renaming. | |
4694 | (gnat_to_gnu_entity) <E_Record_Subtype>: Likewise. Give a unique name | |
4695 | to the type of the variant containers. | |
4696 | (create_variant_part_from): Likewise. Give a unique name to the type | |
4697 | of the variant part. | |
4698 | ||
8ffcff2e | 4699 | 2012-05-25 Eric Botcazou <ebotcazou@adacore.com> |
4700 | ||
4701 | PR ada/52362 | |
4702 | * link.c (__gnat_object_file_option): Set to "-Wl,@" for GNU linker. | |
4703 | (__gnat_using_gnu_linker): Delete. | |
4704 | * gnatlink.adb (Gnatlink): Declare Object_File_Option_Ptr here... | |
4705 | Declare Object_File_Option string constant and Using_GNU_response_file | |
4706 | boolean constant. | |
be3c7aa1 | 4707 | (Process_Binder_File): ...instead of here. Delete Using_GNU_Linker, |
4708 | Opening and Closing local variables. Do not handle the GNU linker | |
8ffcff2e | 4709 | specially. |
be3c7aa1 | 4710 | (Write_RF): New procedure to write into the response file. Escape some |
4711 | characters if a GNU response file is used. Keep track of error status. | |
4712 | Invoke Write_RF to write into the response file. Delete the file only | |
8ffcff2e | 4713 | if the link was successful. |
4714 | * mlib-utl.adb: Do not `with' package System. | |
be3c7aa1 | 4715 | (Gcc): Likewise. Declare Object_File_Option string constant and |
8ffcff2e | 4716 | Using_GNU_response_file boolean constant. |
be3c7aa1 | 4717 | (Write_RF): Take a string instead of address and length. Escape some |
8ffcff2e | 4718 | characters if a GNU response file is used. |
be3c7aa1 | 4719 | Invoke Write_RF to write into the response file. Delete the file only |
4720 | if the link was successful. Do not warn if it cannot be deleted. | |
8ffcff2e | 4721 | |
a7688838 | 4722 | 2012-05-20 Eric Botcazou <ebotcazou@adacore.com> |
4723 | ||
4724 | * gcc-interface/utils.c (gnat_write_global_declarations): Put a name | |
4725 | on the dummy global variable. | |
4726 | ||
20a8df10 | 4727 | 2012-05-19 Eric Botcazou <ebotcazou@adacore.com> |
4728 | ||
4729 | * gcc-interface/decl.c (Has_Thiscall_Convention): New macro. | |
4730 | (gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall | |
4731 | calling convention | |
4732 | (get_minimal_subprog_decl): Likewise. | |
4733 | (gnat_first_param_is_class): New predicate. | |
4734 | ||
4735 | * gcc-interface/misc.c (gnat_handle_option): Fix formatting. | |
4736 | * gcc-interface/Makefile.in: Likewise. | |
4737 | ||
4b1fdfcc | 4738 | 2012-05-18 Eric Botcazou <ebotcazou@adacore.com> |
4739 | ||
4740 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: For an object at | |
4741 | global level with unconstrained nominal subtype and a non-fixed size, | |
4742 | make a variable for the size. | |
4743 | ||
5b4a2ac8 | 4744 | 2012-05-15 Andris Pavenis <andris.pavenis@iki.fi> |
4745 | ||
4746 | PR ada/52494 | |
4747 | * s-taprop-dummy.adb (Specific): New package. | |
4748 | ||
0b105f04 | 4749 | 2012-05-15 Olivier Hainque <hainque@adacore.com> |
4750 | ||
4751 | * gcc-interface/Make-lang.in (COMMON_FLAGS_TO_PASS): Use WARN_CFLAGS | |
4752 | instead of trying to mimic it. | |
4753 | ||
7eb0e22f | 4754 | 2012-05-15 Robert Dewar <dewar@adacore.com> |
4755 | ||
4756 | * sem_ch5.adb, sem_util.adb, s-stposu.adb, exp_ch4.adb: Minor | |
4757 | reformatting. | |
4758 | ||
4759 | 2012-05-15 Geert Bosch <bosch@adacore.com> | |
4760 | ||
4761 | * uintp.adb (UI_Rem): Remove optimizations, as they are complex and are | |
4762 | not needed. | |
4763 | (Sum_Digits): Remove, no longer used. | |
4764 | (Sum_Double_Digits): Likewise. | |
4765 | ||
4766 | 2012-05-15 Yannick Moy <moy@adacore.com> | |
4767 | ||
4768 | * aspects.ads: Minor typo. | |
4769 | ||
4770 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4771 | ||
4772 | * gnat_rm.texi (Scalar_Storage_Order): Fix RM reference. | |
4773 | * sem_ch13.adb: Minor comment fix: incorrect RM reference. | |
4774 | ||
4775 | 2012-05-15 Eric Botcazou <ebotcazou@adacore.com> | |
4776 | ||
4777 | * sem_prag.adb (Process_Atomic_Shared_Volatile): Propagate | |
4778 | atomicity from an object to its underlying type only if it | |
4779 | is composite. | |
4780 | ||
18923d61 | 4781 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> |
4782 | ||
4783 | * sem_ch5.adb (Analyze_Iterator_Specification): Set kind of | |
4784 | loop variable after pre-analysis of iterator name, to prevent | |
4785 | premature usage of loop variable. | |
4786 | ||
4787 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> | |
4788 | ||
4789 | * sem_util.adb (Is_Variable): In Ada 2012, an explicit | |
4790 | dereference that is a rewriting of an expression whose type has | |
4791 | a declared Implicit_Derenference aspect is a variable. | |
4792 | ||
30d0732d | 4793 | 2012-05-15 Hristian Kirtchev <kirtchev@adacore.com> |
4794 | ||
4795 | * exp_ch4.adb (Insert_Dereference_Action): Reimplemented. The | |
4796 | routine performs address and size adjustments for dereferences | |
4797 | of heap-allocated controlled objects. This manipulation is needed | |
4798 | in order to restore the original state of the memory at the time | |
4799 | it was allocated by the finalization machinery. | |
4800 | * rtsfind.ads: Add RE_Adjust_Controlled_Dereference to tables | |
4801 | RE_Id and RE_Unit_Table. | |
4802 | * sinfo.adb (Has_Dereference_Action): New routine. | |
4803 | (Set_Has_Dereference_Action): New routine. | |
4804 | * sinfo.ads: Add new semantic flag Has_Dereference_Action along | |
4805 | its association in nodes. | |
4806 | (Has_Dereference_Action): New routine and pragma Inline. | |
4807 | (Set_Has_Dereference_Action): New routine and pragma Inline. | |
4808 | * s-stposu.ads, s-stposu.adb (Adjust_Controlled_Dereference): New | |
4809 | routine. | |
4810 | ||
b98fca2b | 4811 | 2012-05-15 Thomas Quinot <quinot@adacore.com> |
4812 | ||
4813 | * uintp.adb (Image_Uint): Use UI_Div_Rem to get quotient and | |
4814 | remainder of U / Base in a single operation. | |
4815 | ||
4816 | 2012-05-15 Robert Dewar <dewar@adacore.com> | |
4817 | ||
4818 | * exp_ch5.adb, inline.adb, sem_ch10.adb, prj.ads, sem_util.adb, | |
4819 | a-ngelfu.ads, exp_ch4.adb, exp_ch6.adb, aspects.ads, sem_ch6.adb, | |
4820 | vms_data.ads, exp_ch3.adb, prj-env.adb: Minor reformatting. | |
4821 | ||
7dc534ca | 4822 | 2012-05-15 Thomas Quinot <quinot@adacore.com> |
4823 | ||
4824 | * exp_ch4.adb (Has_Inferable_Discriminants): For a qualified | |
4825 | expression, use correct node for test on the subtype denoted by | |
4826 | the subtype mark. | |
4827 | ||
4828 | 2012-05-15 Eric Botcazou <ebotcazou@adacore.com> | |
4829 | ||
4830 | * inline.adb (Scope_In_Main_Unit): Rename into... | |
4831 | (In_Main_Unit_Or_Subunit): ...this. Also return | |
4832 | true if the subprogram is within a subunit of the | |
4833 | main unit. | |
4834 | (Add_Inlined_Body): Adjust for above renaming. | |
4835 | (Add_Inlined_Subprogram): Likewise. Pass the subprogram directly. | |
4836 | (Analyze_Inlined_Bodies): Really set aside inlined subprograms | |
4837 | not handled by Add_Inlined_Body. | |
4838 | ||
984d005d | 4839 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> |
4840 | ||
4841 | * sem_ch10.adb (Expand_With_Clause): In the context of a generic | |
4842 | package declaration, a private with-clause on a child unit implies | |
4843 | that the implicit with clauses on its parents are private as well. | |
4844 | ||
4845 | 2012-05-15 Javier Miranda <miranda@adacore.com> | |
4846 | ||
4847 | * sem_ch6.adb (Is_Interface_Conformant): Add missing call to | |
4848 | Base_Type to handle subtypes. | |
4849 | * exp_ch6.adb (Expand_Call): For calls located in thunks handle | |
4850 | unchecked conversions of access types found in actuals. | |
4851 | * exp_disp.adb (Expand_Interface_Thunk): Add missing unchecked | |
4852 | conversion to actuals whose type is an access type. Done to | |
4853 | avoid reporting spurious errors. | |
4854 | ||
4855 | 2012-05-15 Vincent Celier <celier@adacore.com> | |
4856 | ||
4857 | * prj-env.adb (Create_Mapping): Ignore sources that are | |
4858 | suppressed (Create_Mapping_File.Process): Ditto | |
4859 | * prj-nmsc.adb (Add_Source): Update to take into | |
4860 | account suppressed files that may hide inherited sources. | |
4861 | (Mark_Excluded_Sources): Mark excluded sources of the current | |
4862 | project as suppressed. | |
4863 | * prj.ads (Source_Data): New Boolean component Suppressed, | |
4864 | defaulted to False | |
4865 | ||
4866 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4867 | ||
4868 | * exp_intr.adb: Minor reformatting. | |
4869 | ||
4870 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4871 | ||
4872 | * gnat_rm.texi: Document attribute Scalar_Storage_Order. | |
4873 | ||
4874 | 2012-05-15 Javier Miranda <miranda@adacore.com> | |
4875 | ||
4876 | * exp_ch3.adb (Build_Offset_To_Top): Modify the | |
4877 | expansion of the offset_to_top functions to ensure that their | |
4878 | profile is conformant with the profile specified in Ada.Tags. No | |
4879 | change in functionality. | |
4880 | ||
4881 | 2012-05-15 Eric Botcazou <ebotcazou@adacore.com> | |
4882 | ||
4883 | * inline.adb (Subp_Info): Remove Count and Next_Nopred | |
4884 | components, add Processed component and move around Next component. | |
4885 | (Add_Call): Reverse meaning of Successors table to the natural one. | |
4886 | (Add_Inlined_Body): Do not inline a package if it is in the main unit. | |
4887 | (Add_Inlined_Subprogram): Do not add the subprogram to the list if the | |
4888 | package is in the main unit. Do not recurse on the successors. | |
4889 | (Add_Subp): Adjust to new contents of Subp_Info. | |
4890 | (Analyze_Inlined_Bodies): Do not attempt | |
4891 | to compute a topological order on the list of inlined subprograms, | |
4892 | but compute the transitive closure from the main unit instead. | |
4893 | (Get_Code_Unit_Entity): Always return the spec for a package. | |
4894 | ||
77416989 | 4895 | 2012-05-15 Yannick Moy <moy@adacore.com> |
4896 | ||
4897 | * aspects.ads: Minor addition of comments to provide info on | |
4898 | how to add new aspects. | |
4899 | ||
4900 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4901 | ||
4902 | * osint.ads: Minor reformatting. | |
4903 | ||
4904 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4905 | ||
4906 | * exp_ch5.adb, exp_pakd.adb, sem_util.adb, sem_util.ads | |
4907 | (Expand_Assign_Array): Handle the case of a packed bit array within a | |
4908 | record with reverse storage order (assign element by element in that | |
4909 | case). | |
4910 | (In_Reverse_Storage_Order_Record): New subprogram, | |
4911 | code extracted from Exp_Pakd. | |
4912 | ||
4913 | 2012-05-15 Yannick Moy <moy@adacore.com> | |
4914 | ||
4915 | * a-ngelfu.ads: Add postconditions using Ada 2012 | |
4916 | aspect syntax, reflecting some of the RM requirements for these | |
4917 | functions, from Annex A.5.1 or G.2.4. | |
4918 | ||
4919 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4920 | ||
4921 | * adaint.c: Minor fix: move misplaced comment. | |
4922 | ||
4923 | 2012-05-15 Doug Rupp <rupp@adacore.com> | |
4924 | ||
4925 | * vms_data.ads: Enhance help for /IMMEDIATE_ERRORS to discourage | |
4926 | use by customers. | |
4927 | ||
e1cedbae | 4928 | 2012-05-15 Tristan Gingold <gingold@adacore.com> |
4929 | ||
4930 | * a-exextr.adb: Add comment. | |
4931 | ||
4932 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> | |
4933 | ||
4934 | * sem_ch3.adb: Minor reformatting (remove long dead code). | |
4935 | ||
4936 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> | |
4937 | ||
4938 | * aspects.adb, aspects.ads: Add aspects for Convention, Export, | |
4939 | External_Name, Import, and Link_Name. | |
4940 | * exp_prag.adb (Expand_Pragma_Import_Or_Interface): if the | |
4941 | pragma comes from an aspect specification, the entity is the | |
4942 | first argument. | |
4943 | * sem_prag.adb (Analyze_Pragma, cases Pragma_Export and | |
4944 | Pragma_Import): if the pragma comes from an aspect specification, | |
4945 | the entity is the first argument, and the second has the value | |
4946 | True by default. | |
4947 | * sem_ch13.adb (Analyze_Aspect_Specifications): generate pragam | |
4948 | for aspect Convention. Add placeholders for Link_Name and | |
4949 | External_Name. | |
4950 | ||
0703c8dc | 4951 | 2012-05-15 Hristian Kirtchev <kirtchev@adacore.com> |
4952 | ||
4953 | * exp_ch9.adb (Expand_N_Asynchronous_Select): Extract the statements | |
4954 | of the abortable part and triggering alternative after being processed | |
4955 | for controlled objects. | |
4956 | (Expand_N_Timed_Entry_Call): Code and comment reformatting. | |
4957 | ||
4958 | 2012-05-15 Robert Dewar <dewar@adacore.com> | |
4959 | ||
4960 | * sem_util.adb: Minor code reorganization. | |
4961 | ||
6121886e | 4962 | 2012-05-15 Robert Dewar <dewar@adacore.com> |
4963 | ||
4964 | * exp_ch7.adb, exp_ch11.adb, exp_ch11.ads: Minor reformatting. | |
4965 | ||
4966 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4967 | ||
4968 | * sem_res.adb (Resolve): Enforce E.2.2(11/2) and E.2.2(12) for | |
4969 | 'Unrestricted_Access and 'Unchecked_Access (not just 'Access): | |
4970 | even in those cases, a remote access type may only designate a | |
4971 | remote subprogram. | |
4972 | ||
4973 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
4974 | ||
4975 | * sem_util.adb, sem_util.ads, sem_cat.adb: Minor refactoring. | |
4976 | (Enclosing_Lib_Unit_Node): Rename to Enclosing_Comp_Unit_Node. | |
4977 | ||
4978 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> | |
4979 | ||
4980 | * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Remove obsolete | |
4981 | checks on nested inlined subprograms. | |
4982 | ||
4983 | 2012-05-15 Tristan Gingold <gingold@adacore.com> | |
4984 | ||
4985 | * fe.h (Get_RT_Exception_Name): Declare. | |
4986 | ||
4987 | 2012-05-15 Tristan Gingold <gingold@adacore.com> | |
4988 | ||
4989 | * raise-gcc.c (db_region_for): Use %p + cast to avoid warnings. | |
4990 | (get_region_description_for): Likewise. | |
4991 | (db_action_for): Likewise. | |
4992 | (get_call_site_action_for): Likewise. | |
4993 | (get_ttype_entry_for): Remove useless 'const'. | |
4994 | (PERSONALITY_FUNCTION): Add ATTRIBUTE_UNUSED on uw_exception_class. | |
4995 | ||
4996 | 2012-05-15 Tristan Gingold <gingold@adacore.com> | |
4997 | ||
4998 | * a-exextr.adb (Unhandled_Exception_Terminate): Save occurrence | |
4999 | on the stack to avoid a dynamic memory allocation. | |
5000 | ||
5001 | 2012-05-15 Bob Duff <duff@adacore.com> | |
5002 | ||
5003 | * exp_ch9.adb (Expand_N_Timed_Entry_Call): Move initialization of | |
5004 | E_Stats and D_Stats after Process_Statements_For_Controlled_Objects, | |
5005 | because those calls can destroy the Statements list. | |
5006 | ||
f92ebffb | 5007 | 2012-05-15 Tristan Gingold <gingold@adacore.com> |
5008 | ||
5009 | * fe.h (Get_RT_Exception_Name): Define. | |
5010 | * types.ads (RT_Exception_Code): Update comment. | |
5011 | * exp_ch11.adb, exp_ch11.ads (Get_RT_Exception_Name): New | |
5012 | procedure to get the name of the rcheck subprograms. | |
5013 | * a-except-2005.adb (Rcheck_xx): Rename. | |
5014 | * a-except.adb Likewise, but also keep the old Rcheck_nn routines | |
5015 | for bootstrap. | |
5016 | * arith64.c (__gnat_mulv64): Use __gnat_rcheck_CE_Overflow_Check | |
5017 | instead of __gnat_rcheck_10. | |
5018 | * gcc-interface/trans.c (build_raise_check): Use Get_RT_Exception_Name | |
5019 | to create the __gnat_rcheck routines name. | |
5020 | * gcc-interface/Make-lang.in: Update dependencies. | |
5021 | ||
c075f76a | 5022 | 2012-05-15 Tristan Gingold <gingold@adacore.com> |
5023 | ||
5024 | * exp_ch7.adb (Build_Exception_Handler): Save current | |
5025 | occurrence only if -gnateE. | |
5026 | (Build_Object_Declaration): Declare E_Id only if -gnateE. | |
5027 | (Build_Raise_Statement): Call Raise_From_Controlled_Operation only if | |
5028 | -gnateE (else raise PE). | |
5029 | * s-soflin.adb (Save_Library_Occurrence): Handle null occurrence | |
5030 | access. | |
5031 | * a-except-2005.adb (Reraise_Library_Exception_If_Any): Call | |
5032 | Raise_From_Controlled_Operation only if the saved occurrence is | |
5033 | not null, otherwise raise PE. | |
5034 | ||
5035 | 2012-05-15 Yannick Moy <moy@adacore.com> | |
5036 | ||
5037 | * exp_alfa.ads: Add comments describing the Alfa mode. | |
5038 | ||
504c14e8 | 5039 | 2012-05-15 Tristan Gingold <gingold@adacore.com> |
5040 | ||
5041 | * s-soflin.ads, s-soflin.adb (Save_Library_Occurrence): Parameter | |
5042 | E is now of type Exception_Occurrence_Access. | |
5043 | * exp_ch7.ads, exp_ch7.adb (Build_Exception_Handler): Adjust generated | |
5044 | call to Save_Library_Occurrence. | |
5045 | ||
5046 | 2012-05-15 Thomas Quinot <quinot@adacore.com> | |
5047 | ||
5048 | * exp_ch4.adb (Rewrite_Coextension): Use Insert_Action to | |
5049 | insert temporary variable decl at the proper place in the tree. | |
5050 | ||
e3489cff | 5051 | 2012-05-15 Hristian Kirtchev <kirtchev@adacore.com> |
5052 | ||
5053 | * g-calend.adb (Split_At_Locale): New routine. | |
5054 | (Time_Of_At_Locale): New routine. | |
5055 | * g-calend.ads (Split_At_Locale): New routine. | |
5056 | (Time_Of_At_Locale): New routine. | |
5057 | ||
5058 | 2012-05-15 Gary Dismukes <dismukes@adacore.com> | |
5059 | ||
5060 | * a-except.ads: Minor reformatting. | |
5061 | ||
5062 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> | |
5063 | ||
5064 | * sem_ch5.adb (Analyze_Loop_Parameter_Specification): If the loop | |
5065 | parameter specification is part of a quantified expression, and it | |
5066 | already carries a type, do not repeat the analysis to preserve | |
5067 | type information: a range attribute reference may have been | |
5068 | rewritten as a range with static bounds, and its re-analysis may | |
5069 | type it as Integer by default, instead of the original index type. | |
5070 | ||
5071 | 2012-05-15 Robert Dewar <dewar@adacore.com> | |
5072 | ||
5073 | * s-osprim-mingw.adb: Minor reformatting. | |
5074 | ||
3c7975d3 | 5075 | 2012-05-15 Arnaud Charlet <charlet@adacore.com> |
5076 | ||
5077 | * a-except.adb, a-except.ads (Reraise_Library_Exception_If_Any): New. | |
5078 | Mark this unit preelaborate. | |
5079 | * s-soflin.ads: Make package Preelaborate. | |
5080 | ||
1825e275 | 5081 | 2012-05-15 Robert Dewar <dewar@adacore.com> |
5082 | ||
5083 | * s-osprim-mingw.adb, sem_eval.adb, a-calend-vms.ads: Minor reformatting | |
5084 | ||
fa5c1550 | 5085 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> |
5086 | ||
5087 | * sem_eval.adb (Subtypes_Statically_Match): In Ada 2012, static | |
5088 | matching requires matching of static subtype predicates as well. | |
5089 | ||
5090 | 2012-05-15 Ed Schonberg <schonberg@adacore.com> | |
5091 | ||
5092 | * sem_case.adb (Analyze_Choices): If the subtype of the | |
5093 | expression has a non-static predicate, the case alternatives | |
5094 | must cover the base type. | |
5095 | ||
5096 | 2012-05-15 Tristan Gingold <gingold@adacore.com> | |
5097 | ||
5098 | * a-calend-vms.ads: Add pragma export to Split and Time_Of. | |
5099 | Merge comments from a-calend.ads to minimize differences. | |
5100 | ||
5101 | 2012-05-15 Sergey Rybin <rybin@adacore.com frybin> | |
5102 | ||
5103 | * gnat_ugn.texi: gnatmetric: add a small example that demonstrates | |
5104 | the difference between control coupling and unit coupling. | |
5105 | ||
5106 | 2012-05-15 Tristan Gingold <gingold@adacore.com> | |
5107 | ||
5108 | * bindgen.adb (Gen_Header): Remove code to emit LE_Set. | |
5109 | (Gen_Finalize_Library): Replace test with | |
5110 | a call to __gnat_reraise_library_exception_if_any. | |
5111 | * s-soflin.ads (Library_Exception): Do not export. | |
5112 | (Library_Exception_Set): Likewise. | |
5113 | * a-except-2005.ads, a-except-2005.adb | |
5114 | (Reraise_Library_Exception_If_Any): New procedure. | |
5115 | ||
f39ac8d7 | 5116 | 2012-05-15 Geert Bosch <bosch@adacore.com> |
5117 | ||
5118 | * sem_ch9.adb (Allows_Lock_Free_Implementation): out or in out | |
5119 | parameters can be access types as well, not just scalar types, | |
5120 | so relax the test to Is_Elementary_Type. | |
5121 | ||
5122 | 2012-05-15 Bob Duff <duff@adacore.com> | |
5123 | ||
5124 | * s-atacco.ads s-atacco.adb: Replace pragma Elaborate_Body | |
5125 | with pragma No_Body. | |
5126 | (Xyz): Remove Xyz, which is apparently unnecessary. | |
5127 | ||
5128 | 2012-05-15 Tristan Gingold <gingold@adacore.com> | |
5129 | ||
5130 | * a-calend-vms.adb: Complete previous change. | |
5131 | ||
5132 | 2012-05-15 Bob Duff <duff@adacore.com> | |
5133 | ||
5134 | * s-win32.ads: Minor comment fix. | |
5135 | * s-osprim-mingw.adb: Minor editing. | |
5136 | ||
a16536f8 | 5137 | 2012-05-15 Robert Dewar <dewar@adacore.com> |
5138 | ||
5139 | * exp_ch9.adb, sem_ch9.adb, sem_ch13.adb: Minor reformatting. | |
5140 | ||
7413d80d | 5141 | 2012-05-15 Robert Dewar <dewar@adacore.com> |
5142 | ||
5143 | * g-comlin.adb, g-comlin.ads: Minor reformatting. | |
5144 | ||
5145 | 2012-05-15 Vincent Pucci <pucci@adacore.com> | |
5146 | ||
5147 | * aspects.adb, aspects.adb: Reordering of the Aspect_Idi list. New | |
5148 | aspect Aspect_Lock_Free. | |
5149 | * einfo.adb, einfo.ads: New flag Uses_Lock_Free (flag 188). | |
5150 | (Set_Uses_Lock_Free): New routine. | |
5151 | (Uses_Lock_Free): New routine. | |
5152 | * exp_ch7.adb (Is_Simple_Protected_Type): Return False for | |
5153 | lock-free implementation. | |
5154 | * exp_ch9.adb (Allows_Lock_Free_Implementation): Moved to Sem_Ch9. | |
5155 | (Build_Lock_Free_Unprotected_Subprogram_Body): Protected | |
5156 | procedure uses __sync_synchronise. Check both Object_Size | |
5157 | and Value_Size. | |
5158 | (Expand_N_Protected_Body): Lock_Free_Active | |
5159 | renames Lock_Free_On. | |
5160 | (Expand_N_Protected_Type_Declaration): | |
5161 | _Object field removed for lock-free implementation. | |
5162 | (Install_Private_Data_Declarations): Protection object removed | |
5163 | for lock-free implementation. | |
5164 | (Make_Initialize_Protection): | |
5165 | Protection object initialization removed for lock-free implementation. | |
5166 | * rtsfind.ads: RE_Atomic_Synchronize and RE_Relaxed added. | |
5167 | * sem_ch13.adb (Analyze_Aspect_Specifications): Aspect_Lock_Free | |
5168 | analysis added. | |
5169 | * sem_ch9.adb (Allows_Lock_Free_Implementation): New routine. | |
5170 | (Analyze_Protected_Body): Allows_Lock_Free_Implementation call added. | |
5171 | (Analyze_Protected_Type_Declaration): | |
5172 | Allows_Lock_Free_Implementation call added. | |
5173 | (Analyze_Single_Protected_Declaration): Second analysis of | |
5174 | aspects removed. | |
5175 | * s-atopri.ads: Header added. | |
5176 | (Atomic_Synchronize): New routine. | |
5177 | ||
5178 | 2012-05-15 Robert Dewar <dewar@adacore.com> | |
5179 | ||
5180 | * exp_ch7.ads: Add comment. | |
5181 | ||
f74ffaae | 5182 | 2012-05-15 Hristian Kirtchev <kirtchev@adacore.com> |
5183 | ||
5184 | * a-calend.adb (Day_Of_Week): The routine once again treats | |
5185 | all dates as historic. (Formatting_Operations.Split): All | |
5186 | calls to UTC_Time_Offset are now controlled through formal | |
5187 | parameter Is_Historic. (Formatting_Operations.Time_Of): | |
5188 | All calls to UTC_Time_Offset are now handled through | |
5189 | formal parameter Is_Historic. | |
5190 | (Split): Update the call to Formatting_Operations.Split. | |
5191 | (Time_Of): Update the call to Formatting_Operations.Time_Of. | |
5192 | (To_Ada_Time): Update the call to Formatting_Operations.Time_Of. | |
5193 | (To_Strict_Tm): Update the call to Formatting_Operations.Split. | |
5194 | * a-calend.ads (Split): Add new formal Is_Historic along with | |
5195 | comment on usage. This routine is now exported for the purposes | |
5196 | of GNAT.Calendar.Locale. | |
5197 | (Time_Of): Remove defaults. Add new | |
5198 | formal Is_Historic along with comment on usage. This routine is | |
5199 | now exported for the purposes of GNAT.Calendar.Locale. | |
5200 | * a-calend-vms.adb (Split): Update the call to | |
5201 | Formatting_Operations.Split. | |
5202 | (Time_Of): Update the call to Formatting_Operations.Time_Of. | |
5203 | * a-calend-vms.ads (Split): Add new formal Is_Historic along | |
5204 | with comment on usage. (Time_Of): Remove defaults. Add new | |
5205 | formal Is_Historic along with comment on usage. | |
5206 | * a-calfor.adb (Split): Update the call to | |
5207 | Formatting_Operations.Split. | |
5208 | (Time_Of): Update the call to Formatting_Operations.Time_Of. | |
f74ffaae | 5209 | |
5210 | 2012-05-15 Vincent Celier <celier@adacore.com> | |
5211 | ||
5212 | * prj-nmsc.adb (Add_Source): Always add the source if it is | |
5213 | excluded, to avoid incorrect duplicate checks. | |
5214 | ||
5215 | 2012-05-15 Yannick Moy <moy@adacore.com> | |
5216 | ||
5217 | * sem_aux.ads: Correct typo. | |
5218 | * sem_eval.adb (Compile_Time_Known_Value): Return False in Alfa | |
5219 | mode for a deferred constant when outside of the scope of its | |
5220 | full view. | |
5221 | ||
5222 | 2012-05-15 Emmanuel Briot <briot@adacore.com> | |
5223 | ||
5224 | * g-comlin.adb, g-comlin.ads (Define_Switch): Allow specifying the name | |
5225 | of the argument, for the automatic help message. | |
5226 | (Getopt): do not systematically initialize switches with string values | |
5227 | to the empty string, when the user has already specified a default. | |
5228 | ||
258a168d | 5229 | 2012-05-14 Bernd Schmidt <bernds@codesourcery.com> |
5230 | ||
5231 | * gcc-interface/utils.c (DEF_ATTR_STRING): New. | |
5232 | ||
d3b7ee7c | 5233 | 2012-05-14 Manuel López-Ibáñez <manu@gcc.gnu.org> |
5234 | ||
5235 | PR 53063 | |
5236 | * gcc-interface/misc.c: Include opts.h and options.h before tm.h. | |
5237 | (gnat_handle_option): Call lang-specific generated function. | |
5238 | ||
4584d89f | 5239 | 2012-05-13 Manuel López-Ibáñez <manu@gcc.gnu.org> |
5240 | ||
5241 | * gcc-interface/lang.opt (I): Comment out help text with no effect. | |
5242 | (nostdinc): Comment out help text with no effect. | |
5243 | ||
bcd59a2b | 5244 | 2012-05-12 Eric Botcazou <ebotcazou@adacore.com> |
5245 | ||
5246 | * gcc-interface/Makefile.in (TOOLS_LIBS): Add ../../ggc-none.o. | |
5247 | ||
fbb6fbd8 | 5248 | 2012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org> |
5249 | ||
5250 | PR 53063 | |
5251 | * gcc-interface/misc.c (gnat_parse_file): Move before ... | |
5252 | (gnat_handle_option): ... this. Use handle_generated_option. | |
5253 | ||
5a1fe2db | 5254 | 2012-05-10 Richard Guenther <rguenther@suse.de> |
5255 | ||
5256 | * gcc-interface/cuintp.c (UI_From_gnu): Remove TYPE_IS_SIZETYPE use. | |
5257 | ||
d349f8a8 | 5258 | 2012-05-06 Tristan Gingold <gingold@adacore.com> |
5259 | ||
5260 | * gcc-interface/trans.c (gigi): Decorate reraise_zcx_decl. | |
5261 | ||
647b2843 | 5262 | 2012-05-06 Eric Botcazou <ebotcazou@adacore.com> |
5263 | ||
5264 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: In the renaming | |
5265 | case, use the padded type if the renamed object has an unconstrained | |
5266 | type with default discriminant. | |
5267 | ||
7e48d3e6 | 5268 | 2012-05-06 Eric Botcazou <ebotcazou@adacore.com> |
5269 | ||
5270 | * gcc-interface/trans.c (Loop_Statement_to_gnu): Also handle invariant | |
5271 | conditions with only one bound. | |
647b2843 | 5272 | (Raise_Error_to_gnu): Likewise. New function extracted from... |
5273 | (gnat_to_gnu) <N_Raise_Constraint_Error>: ...here. Call above function | |
7e48d3e6 | 5274 | in regular mode only. |
5275 | ||
cd3ef822 | 5276 | 2012-05-06 Eric Botcazou <ebotcazou@adacore.com> |
5277 | ||
5278 | * gcc-interface/misc.c (gnat_post_options): Disable caret by default. | |
5279 | ||
76cb9822 | 5280 | 2012-05-06 Eric Botcazou <ebotcazou@adacore.com> |
5281 | ||
5282 | * gcc-interface/gigi.h (make_packable_type): Declare. | |
5283 | (make_type_from_size): Likewise. | |
5284 | (relate_alias_sets): Likewise. | |
5285 | (maybe_pad_type): Adjust. | |
5286 | (init_gnat_to_gnu): Delete. | |
5287 | (destroy_gnat_to_gnu): Likewise. | |
5288 | (init_dummy_type): Likewise. | |
5289 | (destroy_dummy_type): Likewise. | |
5290 | (init_gnat_utils): Declare. | |
5291 | (destroy_gnat_utils): Likewise. | |
5292 | (ceil_pow2): New inline function. | |
5293 | * gcc-interface/decl.c (gnat_to_gnu_entity): Use ceil_pow2. | |
5294 | <object>: Pass True for the final processing of alignment and size. | |
5295 | <E_Subprogram_Type>: Only create the TYPE_DECL for a padded return | |
5296 | type if necessary. | |
5297 | (round_up_to_align): Delete. | |
5298 | (ceil_alignment): Likewise. | |
5299 | (relate_alias_sets): Move to... | |
5300 | (make_aligning_type): Likewise. | |
5301 | (make_packable_type): Likewise. | |
5302 | (maybe_pad_type): Likewise. | |
5303 | (make_type_from_size): Likewise. | |
5304 | * gcc-interface/utils.c (MAX_BITS_PER_WORD): Delete. | |
5305 | (struct pad_type_hash): New type. | |
5306 | (pad_type_hash_table): New static variable. | |
5307 | (init_gnat_to_gnu): Merge into... | |
5308 | (init_dummy_type): Likewise. | |
5309 | (init_gnat_utils): ...this. New function. | |
5310 | (destroy_gnat_to_gnu): Merge into... | |
5311 | (destroy_dummy_type): Likewise. | |
5312 | (destroy_gnat_utils): ...this. New function. | |
5313 | (pad_type_hash_marked_p): New function. | |
5314 | (pad_type_hash_hash): Likewise. | |
5315 | (pad_type_hash_eq): Likewise. | |
5316 | (relate_alias_sets): ...here. | |
5317 | (make_aligning_type): Likewise. | |
5318 | (make_packable_type): Likewise. | |
5319 | (maybe_pad_type): Likewise. Change same_rm_size parameter into | |
5320 | set_rm_size; do not set TYPE_ADA_SIZE if it is false. Do not set | |
5321 | null as Ada size. Do not set TYPE_VOLATILE on the padded type. If it | |
5322 | is complete and has constant size, canonicalize it. Bail out earlier | |
5323 | if a warning need not be issued. | |
5324 | (make_type_from_size): Likewise. | |
5325 | <INTEGER_TYPE>: Bail out if size is too large | |
5326 | (gnat_types_compatible_p): Do not deal with padded types. | |
5327 | (convert): Compare main variants for padded types. | |
5328 | * gcc-interface/trans.c (gigi): Call {init|destroy}_gnat_utils. | |
5329 | (gnat_to_gnu): Do not convert at the end for a call to a function that | |
5330 | returns an unconstrained type with default discriminant. | |
5331 | (Attribute_to_gnu) <Attr_Size>: Simplify handling of padded objects. | |
5332 | * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Likewise. | |
5333 | Do not use the padded type if it is BLKmode and the inner type is | |
5334 | non-BLKmode. | |
5335 | ||
38b1f0b0 | 5336 | 2012-05-02 Pascal Obry <obry@adacore.com> |
5337 | ||
5338 | Revert | |
5339 | 2012-02-24 Dave Korn <dave.korn.cygwin@gmail.com> | |
5340 | ||
fb824021 | 5341 | * gcc-interface/Makefile.in (WIN_SO_PREFIX [windows targets]): New |
5342 | Windows-specific make variable. | |
5343 | (WIN_SO_INSTALL_DIR [windows targets]): Likewise. | |
5344 | (install-gnatlib): Respect the above during installation when set, | |
5345 | and also install any windows import library that has been built. | |
5346 | (gnatlib-shared-win32): Use WIN_SO_PREFIX to name output DLL and also | |
5347 | build a corresponding import library. | |
5348 | ||
cf951b1a | 5349 | 2012-04-30 Jan Hubicka <jh@suse.cz> |
5350 | ||
5351 | * gcc-interface/utils.c (rest_of_subprog_body_compilation): Update | |
5352 | comment. | |
5353 | (gnat_write_global_declarations): Use finalize_compilation_unit. | |
5354 | ||
147e3036 | 5355 | 2012-04-30 Eric Botcazou <ebotcazou@adacore.com> |
5356 | ||
5357 | * gcc-interface/decl.c (gnat_to_gnu_entity): In type annotation mode, | |
5358 | do not adjust the size of a tagged type if there is a representation | |
5359 | clause on it. Otherwise, round the adjustment up to the alignment | |
5360 | of the first field and use the appropriate helper routine. | |
5361 | (maybe_pad_type): Do not warn in type annotation mode on a tagged type. | |
5362 | (gnat_to_gnu_field): Do not error out under the same circumstances. | |
5363 | (annotate_rep): In type annotation mode, do not adjust the offset of | |
5364 | components of a tagged type with representation clause. Otherwise, | |
5365 | round the adjustment up to the alignment of the first field. | |
5366 | ||
81f9f420 | 5367 | 2012-04-30 Eric Botcazou <ebotcazou@adacore.com> |
5368 | ||
5369 | * gcc-interface/utils.c (finish_record_type): Force the traditional GCC | |
5370 | layout for bitfields on the type if it is packed or has a representation | |
5371 | clause and an alternate layout is available. | |
5372 | ||
5154a747 | 5373 | 2012-04-30 Eric Botcazou <ebotcazou@adacore.com> |
5374 | ||
5375 | * gcc-interface/gigi.h (mark_out_of_scope): Delete. | |
5376 | (destroy_gnat_to_gnu): Declare. | |
5377 | (destroy_dummy_type): Likewise. | |
5378 | * gcc-interface/decl.c (mark_out_of_scope): Delete. | |
5379 | * gcc-interface/utils.c (destroy_gnat_to_gnu): New function. | |
5380 | (destroy_dummy_type): Likewise. | |
5381 | * gcc-interface/trans.c (gnat_validate_uc_list): New variable. | |
5382 | (gigi): Call validate_unchecked_conversion on gnat_validate_uc_list | |
147e3036 | 5383 | after the translation is completed. Call destroy_gnat_to_gnu and |
5154a747 | 5384 | destroy_dummy_type at the end. |
5385 | (Subprogram_Body_to_gnu): Do not call mark_out_of_scope. | |
5386 | (gnat_to_gnu) <N_Block_Statement>: Likewise. | |
5387 | <N_Validate_Unchecked_Conversion>: Do not process the node, only push | |
5388 | it onto gnat_validate_uc_list. | |
5389 | (validate_unchecked_conversion): New function. | |
5390 | ||
a18430a0 | 5391 | 2012-04-26 Tristan Gingold <gingold@adacore.com> |
5392 | ||
5393 | * gcc-interface/Make-lang.in: Update dependencies. | |
5394 | Remove s-traceb and tracebak objects from gnat1 and gnatbind (not used). | |
5395 | Remove s-tasdeb and s-vaflop rules (not used). | |
5396 | ||
5397 | 2012-04-26 Olivier Hainque <hainque@adacore.com> | |
5398 | ||
5399 | * gcc-interface/targtyps.c (WIDEST_HARDWARE_FP_SIZE): Default to | |
5400 | DOUBLE_TYPE_SIZE instead of LONG_DOUBLE_TYPE_SIZE. | |
5401 | ||
5402 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> | |
5403 | ||
5404 | * a-calend.adb (Day_Of_Week): Keep the internal | |
5405 | usage of UTC_Time_Offset consistent with Time_Of and Split. | |
5406 | ||
ce3e25d6 | 5407 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> |
5408 | ||
5409 | * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Do not freeze | |
5410 | the loop variable while preanalyzing a quantified expression. | |
5411 | ||
5412 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> | |
5413 | ||
5414 | * a-calend.adb (Split, Time_Of): Rename parameter Is_Ada_05 | |
5415 | to Use_TZ to better illustrate its function. Update all | |
5416 | references to the parameter. | |
5417 | (To_Ada_Time): Update the call to Formatting_Operations.Time_Of. | |
5418 | * a-calend.ads (Split, Time_Of): Rename parameter Is_Ada_05 | |
5419 | to Use_TZ to better illustrate its function. Update the related | |
5420 | comment on usage. | |
5421 | * a-calend-vms.adb (Split, Time_Of): Rename parameter | |
5422 | Is_Ada_05 to Use_TZ to better illustrate its function. Update | |
5423 | all references to the parameter. | |
5424 | (To_Ada_Time): Update the call to Formatting_Operations.Time_Of. | |
5425 | * a-calend-vms.ads (Split, Time_Of): Rename parameter Is_Ada_05 | |
5426 | to Use_TZ to better illustrate its function. Update the related | |
5427 | comment on usage. | |
5428 | * a-calfor.adb (Split, Time_Of): Update the call to | |
5429 | Formatting_Operations.Time_Of. | |
5430 | * sysdep.c (__gnat_localtime_tzoff): Dereference pointer | |
5431 | "is_historic" and rewrite the check as a comparison. Add a | |
5432 | comment on flag values. | |
5433 | ||
5434 | 2012-04-26 Robert Dewar <dewar@adacore.com> | |
5435 | ||
5436 | * exp_ch2.adb, sem_ch8.adb: Minor reformatting. | |
5437 | ||
5438 | 2012-04-26 Vasiliy Fofanov <fofanov@adacore.com> | |
5439 | ||
5440 | * a-stzunb-shared.adb, gnat_ugn.texi, a-strunb-shared.adb, | |
5441 | a-strunb-shared.ads, uintp.adb, a-stwiun-shared.adb, | |
5442 | a-stwiun-shared.ads, a-cbhama.ads, vms_data.ads, a-cobove.adb, | |
5443 | a-convec.adb, sem_ch13.adb, a-cbhase.ads: Fix common misuses of the | |
5444 | word "then" where "than" should be used in English. | |
5445 | ||
75f7f24d | 5446 | 2012-04-26 Robert Dewar <dewar@adacore.com> |
5447 | ||
5448 | * sem_ch5.adb (Check_Unreachable_Code): Skip past pragmas. | |
5449 | ||
5450 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> | |
5451 | ||
5452 | * s-finroo.ads: Remove with clause for | |
5453 | Ada.Streams. Type Root_Controlled is now abstract tagged null | |
5454 | record. Remove internal package Stream_Attributes. Root_Controlled | |
5455 | doesn't need stream attribute redeclaration and avoids the | |
5456 | dependency on streams. | |
5457 | ||
5458 | 2012-04-26 Tristan Gingold <gingold@adacore.com> | |
5459 | ||
5460 | * adaint.c (to_host_path_spec): Removed (unused). | |
5461 | Minor reformatting. | |
5462 | ||
5463 | 2012-04-26 Steve Baird <baird@adacore.com> | |
5464 | ||
5465 | * gnat_rm.texi Improve description of Valid_Scalars attribute. | |
5466 | ||
5467 | 2012-04-26 Ed Schonberg <schonberg@adacore.com> | |
5468 | ||
5469 | * sem_ch6.adb (Can_Override_Operator): If the formal is a | |
5470 | generic type the operator cannot be overriding. | |
5471 | ||
5472 | 2012-04-26 Ed Schonberg <schonberg@adacore.com> | |
5473 | ||
5474 | * sem_ch8.adb (Spec_Reloaded_For_Body): Check whether the type | |
5475 | is declared in a package specification, and current unit is the | |
5476 | corresponding package body. The use clauses themselves may be | |
5477 | within a nested package. | |
5478 | ||
5479 | 2012-04-26 Bob Duff <duff@adacore.com> | |
5480 | ||
5481 | * exp_ch2.adb (Param_Entity): Take into account the case where | |
5482 | the type of the entry parameter has a representation clause. | |
5483 | ||
a9469533 | 5484 | 2012-04-26 Ed Schonberg <schonberg@adacore.com> |
5485 | ||
5486 | * gnat_ugn.texi: Tweak dimensionality doc. | |
5487 | ||
5488 | 2012-04-26 Robert Dewar <dewar@adacore.com> | |
5489 | ||
5490 | * sem_eval.adb: Minor reformatting. | |
5491 | ||
0a4dc67b | 5492 | 2012-04-26 Robert Dewar <dewar@adacore.com> |
5493 | ||
5494 | * einfo.adb, einfo.ads, sem_res.adb, sem_ch4.adb, | |
5495 | sem_eval.adb: Minor reformatting. | |
5496 | ||
5497 | 2012-04-26 Thomas Quinot <quinot@adacore.com> | |
5498 | ||
5499 | * freeze.adb: Minor change in error wording. | |
5500 | ||
5501 | 2012-04-26 Ed Schonberg <schonberg@adacore.com> | |
5502 | ||
5503 | * gnat_ugn.texi: Documentation on dimensional analysis. | |
5504 | ||
5505 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> | |
5506 | ||
5507 | * einfo.adb, einfo.ads: Remove synthesized attribute | |
5508 | Proper_First_Index along with its associations in various nodes. | |
5509 | (Proper_First_Index): Removed. | |
5510 | * sem_ch4.adb (Analyze_Slice): Alphabetize constants. Add new | |
5511 | local variable Index_Type. The index type of a string literal | |
5512 | subtype is that of the stored low bound. | |
5513 | * sem_eval (Get_Static_Length): Remove the use of Proper_First_Index. | |
5514 | * sem_res.adb (Resolve_Slice): Alphabetize constants. Add | |
5515 | new local variable Index_Type. The index type of a | |
5516 | string literal subtype is that of the stored low bound. | |
5517 | (Set_String_Literal_Subtype): Code reformatting. | |
5518 | ||
cae6218b | 5519 | 2012-04-26 Robert Dewar <dewar@adacore.com> |
5520 | ||
5521 | * exp_aggr.adb: Minor reformatting. | |
5522 | ||
5523 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> | |
5524 | ||
5525 | * exp_ch7.adb (Expand_Cleanup_Actions): Update the call to | |
5526 | Requires_Cleanup_Actions. | |
5527 | * exp_util.adb (Requires_Cleanup_Actions (List_Id; Boolean; | |
5528 | Boolean)): Rename formal parameter For_Package to Lib_Level to | |
5529 | better reflect its purpose. Update the related comment and all | |
5530 | occurrences of For_Package in the body. | |
5531 | (Requires_Cleanup_Actions | |
5532 | (Node_Id; Boolean)): Add new formal parameter Lib_Level. Add | |
5533 | local constant At_Lib_Level to keep monitor whether the path | |
5534 | taken from the top-most context to the current construct involves | |
5535 | package constructs. Update all calls to Requires_Cleanup_Actions. | |
5536 | * exp_util.ads (Requires_Cleanup_Actions): Add new formal | |
5537 | parameter Lib_Level and associated comment. | |
5538 | ||
5539 | 2012-04-26 Ed Schonberg <schonberg@adacore.com> | |
5540 | ||
5541 | * sem_ch6.adb (Process_Formals): If the type of the formal is | |
5542 | a non null access type, mark the generated subtype as having a | |
5543 | delayed freeze only if the designated type is not frozen yet. | |
5544 | ||
5545 | 2012-04-26 Vincent Celier <celier@adacore.com> | |
5546 | ||
5547 | * prj-attr.adb: New package Clean with attributes | |
5548 | Object_Artifact_Extensions and Source_Artifact_Extensions. | |
5549 | * prj-nmsc.adb (Process_Clean): Process new package Clean | |
5550 | * prj.ads (Language_Config): New components | |
5551 | Clean_Object_Artifacts and Clean_Source_Artifacts. | |
5552 | * snames.ads-tmpl: New standard names Clean, | |
5553 | Object_Artifact_Extensions and Source_Artifact_Extensions. | |
5554 | ||
a60794e6 | 5555 | 2012-04-26 Hristian Kirtchev <kirtchev@adacore.com> |
5556 | ||
5557 | * einfo.adb (Proper_First_Index): Moved from Sem_Util. | |
5558 | * einfo.ads: Add new synthesized attribute Proper_First_Index | |
5559 | along with usage in nodes. | |
5560 | (Proper_First_Index): Moved from Sem_Util. | |
5561 | * sem_util.ads, sem_util.adb (Proper_First_Index): Moved to Einfo. | |
5562 | ||
5563 | 2012-04-26 Gary Dismukes <dismukes@adacore.com> | |
5564 | ||
5565 | * layout.adb (Layout_Component_List): Test for the case of a | |
5566 | single variant and the size of its component list was computed | |
5567 | as an integer literal, and use that size (which is in bits) | |
5568 | as is rather than converting to storage units. | |
5569 | ||
5570 | 2012-04-26 Robert Dewar <dewar@adacore.com> | |
5571 | ||
5572 | * exp_aggr.adb: Minor reformatting. | |
5573 | ||
2884c9d1 | 5574 | 2012-04-26 Robert Dewar <dewar@adacore.com> |
5575 | ||
5576 | * sem_util.adb: Minor reformatting. | |
5577 | ||
5578 | 2012-04-26 Thomas Quinot <quinot@adacore.com> | |
5579 | ||
5580 | * exp_aggr.adb, exp_pakd.adb (Setup_Inline_Packed_Array_Reference, | |
5581 | Packed_Array_Aggregate_Handled.Get_Component_Val): | |
5582 | Reverse bit numbering within PAT when Reverse_Storage_Order | |
5583 | applies to the enclosing record. | |
5584 | ||
5585 | 2012-04-26 Thomas Quinot <quinot@adacore.com> | |
5586 | ||
5587 | * freeze.adb (Freeze_Record_Type): Improve error message for | |
5588 | Scalar_Storage_Order inconsistent with Bit_Order. | |
5589 | ||
f572eafb | 5590 | 2012-04-25 Gary Dismukes <dismukes@adacore.com> |
5591 | ||
5592 | * exp_ch9.adb: Add comments on the usage of the | |
5593 | lock-free data structures. | |
5594 | ||
5595 | 2012-04-25 Vincent Pucci <pucci@adacore.com> | |
5596 | ||
5597 | * exp_intr.adb (Expand_Shift): Convert the left | |
5598 | operand and the operator when the type of the call differs from | |
5599 | the type of the operator. | |
5600 | ||
5601 | 2012-04-25 Geert Bosch <bosch@adacore.com> | |
5602 | ||
5603 | * stand.ads: Minor comment fix. | |
5604 | ||
5605 | 2012-04-25 Hristian Kirtchev <kirtchev@adacore.com> | |
5606 | ||
5607 | * sem_ch4.adb (Analyze_Slice): Handle the case where the prefix | |
5608 | is a string literal. Retrieve the first index from the base type | |
5609 | when slicing a string literal. | |
5610 | * sem_ch12.adb (Check_Private_View): Move the initialization | |
5611 | of the type inside the loop to reflect the changing index. | |
5612 | * sem_eval.adb (Eval_Relational_Op): Retrieve the first index | |
5613 | from the base type when dealing with a string literal. | |
5614 | * sem_res.adb (Resolve_Slice): Retrieve the first index from | |
5615 | the base type when slicing a string literal. | |
5616 | * sem_util.adb (Is_Internally_Generated_Renaming): New routine. | |
5617 | (Is_Object_Reference): String literals may act | |
5618 | as object references only when they are renamed internally. | |
5619 | (Proper_First_Index): New routine. | |
5620 | * sem_util.ads (Proper_First_Index): New routine. | |
5621 | ||
e12ab46d | 5622 | 2012-04-25 Robert Dewar <dewar@adacore.com> |
5623 | ||
5624 | * sem_ch3.adb, csinfo.adb, lib-writ.adb, sem_ch12.adb, | |
5625 | lib-xref.adb: Minor reformatting. | |
5626 | ||
5627 | 2012-04-25 Hristian Kirtchev <kirtchev@adacore.com> | |
5628 | ||
5629 | * exp_ch9.adb: Rename Lock_Free_Sub_Type | |
5630 | to Lock_Free_Subprogram. Remove type Subprogram_Id. | |
5631 | Rename LF_Sub_Table to Lock_Free_Subprogram_Table. | |
5632 | (Allow_Lock_Free_Implementation): Renamed to | |
5633 | Allows_Lock_Free_Implementation. Update the comment on | |
5634 | lock-free restrictions. Code clean up and restructuring. | |
5635 | (Build_Lock_Free_Protected_Subprogram_Body): Update the | |
5636 | profile and related comments. Code clean up and restructuring. | |
5637 | (Build_Lock_Free_Unprotected_Subprogram_Body): Update the | |
5638 | profile and related comments. Code clean up and restructuring. | |
5639 | (Comp_Of): Removed. | |
5640 | ||
841fbb5a | 5641 | 2012-04-25 Vincent Celier <celier@adacore.com> |
5642 | ||
5643 | * sem_ch12.adb (Inherit_Context): Compare library units, not | |
5644 | names of units, when checking if a unit is already in the context. | |
5645 | ||
5646 | 2012-04-25 Thomas Quinot <quinot@adacore.com> | |
5647 | ||
5648 | * sem_ch3.adb: Reverse_Storage_Order must be propagated to | |
5649 | untagged derived record types. | |
5650 | ||
5651 | 2012-04-25 Ed Schonberg <schonberg@adacore.com> | |
5652 | ||
5653 | * lib-xref.adb: Adjust position of end label. | |
5654 | ||
ff2a5ada | 5655 | 2012-04-22 Jan Hubicka <jh@suse.cz> |
5656 | ||
5657 | * gcc-interface/utils.c (gnat_write_global_declarations): Do not mark | |
5658 | needed node. | |
5659 | ||
8efa224a | 5660 | 2012-04-20 Jan Hubicka <jh@suse.cz> |
5661 | ||
5662 | * gcc-interface/utils.c (gnat_write_global_declarations): Update for new | |
5663 | force_output placement. | |
5664 | ||
7d0d0ce1 | 5665 | 2012-04-14 Jan Hubicka <jh@suse.cz> |
5666 | ||
5667 | * gcc-interface/trans.c (finalize_nrv): Update field referenced for new | |
5668 | cgraph/varpool layout. | |
5669 | ||
e6b3ff04 | 5670 | 2012-04-09 Mike Stump <mikestump@comcast.net> |
5671 | ||
5672 | * a-assert.ads: Remove execute permission. | |
5673 | * a-chacon.ads: Likewise. | |
5674 | * a-coteio.ads: Likewise. | |
5675 | * a-envvar.ads: Likewise. | |
5676 | * a-exetim-mingw.ads: Likewise. | |
5677 | * a-fzteio.ads: Likewise. | |
5678 | * a-izteio.ads: Likewise. | |
5679 | * a-lcteio.ads: Likewise. | |
5680 | * a-llctio.ads: Likewise. | |
5681 | * a-scteio.ads: Likewise. | |
5682 | * a-suenco.ads: Likewise. | |
5683 | * a-suenst.ads: Likewise. | |
5684 | * a-suewst.ads: Likewise. | |
5685 | * a-suezst.ads: Likewise. | |
5686 | * a-tirsfi.ads: Likewise. | |
5687 | * a-wichha.ads: Likewise. | |
5688 | * a-zchara.ads: Likewise. | |
5689 | * a-zchhan.ads: Likewise. | |
5690 | * a-zchuni.ads: Likewise. | |
5691 | * a-zrstfi.ads: Likewise. | |
5692 | * aspects.ads: Likewise. | |
5693 | * g-byorma.ads: Likewise. | |
5694 | * g-decstr.ads: Likewise. | |
5695 | * g-encstr.ads: Likewise. | |
5696 | * g-spchge.ads: Likewise. | |
5697 | * g-u3spch.ads: Likewise. | |
5698 | * g-wispch.ads: Likewise. | |
5699 | * g-zspche.ads: Likewise. | |
5700 | * namet-sp.ads: Likewise. | |
5701 | * s-os_lib.ads: Likewise. | |
5702 | * s-regexp.ads: Likewise. | |
5703 | * s-regpat.ads: Likewise. | |
5704 | * s-string.ads: Likewise. | |
5705 | * s-tasloc.ads: Likewise. | |
5706 | * s-utf_32.ads: Likewise. | |
5707 | * sem_aux.ads: Likewise. | |
5708 | * a-assert.adb: Likewise. | |
5709 | * a-chacon.adb: Likewise. | |
5710 | * a-envvar.adb: Likewise. | |
5711 | * a-exetim-mingw.adb: Likewise. | |
5712 | * a-suenco.adb: Likewise. | |
5713 | * a-suenst.adb: Likewise. | |
5714 | * a-suewst.adb: Likewise. | |
5715 | * a-suezst.adb: Likewise. | |
5716 | * a-tirsfi.adb: Likewise. | |
5717 | * a-wichha.adb: Likewise. | |
5718 | * a-zchhan.adb: Likewise. | |
5719 | * a-zchuni.adb: Likewise. | |
5720 | * a-zrstfi.adb: Likewise. | |
5721 | * aspects.adb: Likewise. | |
5722 | * g-byorma.adb: Likewise. | |
5723 | * g-decstr.adb: Likewise. | |
5724 | * g-encstr.adb: Likewise. | |
5725 | * g-spchge.adb: Likewise. | |
5726 | * g-u3spch.adb: Likewise. | |
5727 | * g-wispch.adb: Likewise. | |
5728 | * g-zspche.adb: Likewise. | |
5729 | * namet-sp.adb: Likewise. | |
5730 | * s-except.adb: Likewise. | |
5731 | * s-inmaop-vxworks.adb: Likewise. | |
5732 | * s-os_lib.adb: Likewise. | |
5733 | * s-regexp.adb: Likewise. | |
5734 | * s-regpat.adb: Likewise. | |
5735 | * s-string.adb: Likewise. | |
5736 | * s-tasloc.adb: Likewise. | |
5737 | * s-utf_32.adb: Likewise. | |
5738 | * s-wchcon.adb: Likewise. | |
5739 | * sem_aux.adb: Likewise. | |
5740 | ||
2a9b01cb | 5741 | 2012-04-02 Robert Dewar <dewar@adacore.com> |
5742 | ||
5743 | * s-atopri.ads: Minor reformatting. | |
5744 | ||
5745 | 2012-04-02 Thomas Quinot <quinot@adacore.com> | |
5746 | ||
5747 | * sem_util.adb: Minor reformatting, minor code cleanup. | |
5748 | ||
5749 | 2012-04-02 Ed Schonberg <schonberg@adacore.com> | |
5750 | ||
5751 | * lib-xref.adb (Generate_Reference): For a reference to an | |
5752 | operator symbol, set the sloc to point to the first character | |
5753 | of the operator name, and not to the initial quaote. | |
5754 | (Output_References): Ditto for the definition of an operator | |
5755 | symbol. | |
5756 | ||
5757 | 2012-04-02 Vincent Celier <celier@adacore.com> | |
5758 | ||
5759 | * ali.adb (Scan_Ali): Recognize Z lines. Set | |
5760 | Implicit_With_From_Instantiation to True in the With_Record for | |
5761 | Z lines. | |
5762 | * ali.ads (With_Record): New Boolean component | |
5763 | Implicit_With_From_Instantiation, defaulted to False. | |
5764 | * csinfo.adb: Indicate that Implicit_With_From_Instantiation | |
5765 | is special | |
5766 | * lib-writ.adb (Write_ALI): New array Implicit_With. | |
5767 | (Collect_Withs): Set Implicit_With for the unit is it is not Yes. | |
5768 | (Write_With_Lines): Write a Z line instead of a W line if | |
5769 | Implicit_With is Yes for the unit. | |
5770 | * sem_ch12.adb (Inherit_Context): Only add a unit in the context | |
5771 | if it is not there yet. | |
5772 | * sinfo.ads: New flag Implicit_With_From_Instantiation (Flag12) | |
5773 | added. | |
5774 | ||
7a19298b | 5775 | 2012-04-02 Yannick Moy <moy@adacore.com> |
5776 | ||
5777 | * osint.adb, osint.ads (Add_Default_Search_Dirs): Add library | |
5778 | search dirs in file specified with option -gnateO. | |
5779 | ||
5780 | 2012-04-02 Robert Dewar <dewar@adacore.com> | |
5781 | ||
5782 | * sem_ch5.adb, exp_util.adb, sem_util.adb, exp_ch4.adb: Minor | |
5783 | reformatting. | |
5784 | ||
5785 | 2012-04-02 Olivier Hainque <hainque@adacore.com> | |
5786 | ||
5787 | * g-sse.ads: Add x86-solaris and x86_64-darwin to the set of | |
5788 | platforms where the use of this spec is supported. Add current | |
5789 | year to the copyright notice. | |
5790 | * gcc-interfaces/Makefile.in: Add g-sse.o and g-ssvety.o to | |
5791 | EXTRA_GNATRTL_NONTASKING_OBJS on x86 32/64 targets that support | |
5792 | it and where they were missing (x86-solaris, x86-freebsd, | |
5793 | x86_64-freebsd, and x86-darwin). | |
5794 | ||
5795 | 2012-04-02 Gary Dismukes <dismukes@adacore.com> | |
5796 | ||
5797 | * bindgen.adb (Gen_Ada_Init): When compiling for the AAMP small | |
5798 | library, where we no longer suppress the Standard_Library, | |
5799 | generate an empty body rather than the usual generation of | |
5800 | assignments to imported globals, since those aren't present in | |
5801 | the small library. | |
5802 | ||
5803 | 2012-04-02 Ed Schonberg <schonberg@adacore.com> | |
5804 | ||
5805 | * sinfo.ads: Minor documentation fix. | |
5806 | ||
5807 | 2012-04-02 Hristian Kirtchev <kirtchev@adacore.com> | |
5808 | ||
5809 | * sem_res.adb (Resolve_Conditional_Expression): Add local variables | |
5810 | Else_Typ and Then_Typ. Add missing type conversions to the "then" and | |
5811 | "else" expressions when their respective types are scalar. | |
5812 | ||
5813 | 2012-04-02 Vincent Pucci <pucci@adacore.com> | |
5814 | ||
5815 | * exp_ch9.adb: Reordering of the local subprograms. New Table | |
5816 | for the lock free implementation that maps each protected | |
5817 | subprograms with the protected component it references. | |
5818 | (Allow_Lock_Free_Implementation): New routine. Check if | |
5819 | the protected body enables the lock free implementation. | |
5820 | (Build_Lock_Free_Protected_Subprogram_Body): New routine. | |
5821 | (Build_Lock_Free_Unprotected_Subprogram_Body): New routine. | |
5822 | (Comp_Of): New routine. | |
5823 | * Makefile.rtl: Add s-atopri.o | |
5824 | * debug.adb: New compiler debug flag -gnatd9 for lock free | |
5825 | implementation. | |
5826 | * rtsfind.ads: RE_Atomic_Compare_Exchange_8, | |
5827 | RE_Atomic_Compare_Exchange_16, RE_Atomic_Compare_Exchange_32, | |
5828 | RE_Atomic_Compare_Exchange_64, RE_Atomic_Load_8, | |
5829 | RE_Atomic_Load_16, RE_Atomic_Load_32, RE_Atomic_Load_64, RE_Uint8, | |
5830 | RE_Uint16, RE_Uint32, RE_Uint64 added. | |
5831 | * s-atropi.ads: New file. Defines atomic primitives used | |
5832 | by the lock free implementation. | |
5833 | ||
0baac39e | 5834 | 2012-04-02 Emmanuel Briot <briot@adacore.com> |
5835 | ||
5836 | * g-expect.adb (Expect_Internal): Fix leak of the input file descriptor. | |
5837 | ||
5838 | 2012-04-02 Hristian Kirtchev <kirtchev@adacore.com> | |
5839 | ||
5840 | * exp_ch4.adb (Expand_N_Quantified_Expression): Reimplemented. | |
5841 | The expansion no longer uses the copy of the original QE created | |
5842 | during analysis. | |
5843 | * sem.adb (Analyze): Add processing for loop parameter specifications. | |
5844 | * sem_ch4.adb (Analyze_Quantified_Expression): Reimplemented. The | |
5845 | routine no longer creates a copy of the original QE. All | |
5846 | constituents of a QE are now preanalyzed and resolved. | |
5847 | * sem_ch5.adb (Analyze_Iteration_Scheme): Remove the guard which | |
5848 | bypasses all processing when the iteration scheme is related to a | |
5849 | QE. Relovate the code which analyzes loop parameter specifications | |
5850 | to a separate routine. (Analyze_Iterator_Specification): | |
5851 | Preanalyze the iterator name. This action was originally | |
5852 | done in Analyze_Iteration_Scheme. Update the check which | |
5853 | detects an iterator specification in the context of a QE. | |
5854 | (Analyze_Loop_Parameter_Specification): New routine. This | |
5855 | procedure allows for a stand-alone analysis of a loop parameter | |
5856 | specification without the need of a parent iteration scheme. Add | |
5857 | code to update the type of the loop variable when the range | |
5858 | generates an itype and the context is a QE. | |
5859 | (Pre_Analyze_Range): Renamed to Preanalyze_Range. Update all references | |
5860 | to the routine. | |
5861 | * sem_ch5.ads: Code reformatting. | |
5862 | (Analyze_Loop_Parameter_Specification): New routine. | |
5863 | * sem_ch6.adb (Fully_Conformant_Expressions): Detect a case | |
5864 | when establishing conformance between two QEs utilizing different | |
5865 | specifications. | |
5866 | * sem_res.adb (Proper_Current_Scope): New routine. | |
5867 | (Resolve): Do not resolve a QE as there is nothing to be done now. | |
5868 | Ignore any loop scopes generated for QEs when detecting an expression | |
5869 | function as the scopes are cosmetic and do not appear in the tree. | |
5870 | (Resolve_Quantified_Expression): Removed. All resolution of | |
5871 | QE constituents is now performed during analysis. This ensures | |
5872 | that loop variables appearing in array aggregates are properly | |
5873 | resolved. | |
5874 | ||
5875 | 2012-04-02 Ed Schonberg <schonberg@adacore.com> | |
5876 | ||
5877 | * sem_util.adb (Build_Default_Subtype): If the base type is | |
5878 | private and its full view is available, use the full view in | |
5879 | the subtype declaration. | |
5880 | ||
d94b1a63 | 5881 | 2012-04-02 Jose Ruiz <ruiz@adacore.com> |
5882 | ||
5883 | * gnat_ugn.texi: Add some minimal documentation about how to | |
5884 | use GNATtest for cross platforms. | |
5885 | ||
5886 | 2012-04-02 Vincent Celier <celier@adacore.com> | |
5887 | ||
5888 | * opt.ads (Object_Path_File_Name): New variable. | |
5889 | * prj-attr.adb: New Compiler attribute Object_Path_Switches. | |
5890 | * prj-nmsc.adb (Process_Compiler): Recognize new attribute | |
5891 | Object_Path_Switches. | |
5892 | * snames.ads-tmpl: New standard name Object_Path_Switches. | |
5893 | * switch-c.adb (Scan_Front_End_Switches): Recognize new switch | |
5894 | -gnateO= and put its value in Opt.Object_Path_File_Name. | |
5895 | ||
849f127a | 5896 | 2012-04-02 Hristian Kirtchev <kirtchev@adacore.com> |
5897 | ||
5898 | * exp_ch7.adb (Process_Declarations): Detect a case where | |
5899 | a source object was initialized by another source object, | |
5900 | but the expression was rewritten as a class-wide conversion | |
5901 | of Ada.Tags.Displace. | |
5902 | * exp_util.adb (Initialized_By_Ctrl_Function): Removed. | |
5903 | (Is_Controlled_Function_Call): New routine. | |
5904 | (Is_Displacement_Of_Ctrl_Function_Result): Removed. | |
5905 | (Is_Displacement_Of_Object_Or_Function_Result): New routine. | |
5906 | (Is_Source_Object): New routine. | |
5907 | (Requires_Cleanup_Actions): Detect a case where a source object was | |
5908 | initialized by another source object, but the expression was rewritten | |
5909 | as a class-wide conversion of Ada.Tags.Displace. | |
5910 | * exp_util.ads (Is_Displacement_Of_Ctrl_Function_Result): Removed. | |
5911 | (Is_Displacement_Of_Object_Or_Function_Result): New routine. | |
5912 | ||
5913 | 2012-04-02 Ed Schonberg <schonberg@adacore.com> | |
5914 | ||
5915 | * sem_res.adb (Resolve_Call): A call to an expression function | |
5916 | does not freeze if it appears in a different scope from the | |
5917 | expression function itself. Such calls appear in the generated | |
5918 | bodies of other expression functions, or in pre/postconditions | |
5919 | of subsequent subprograms. | |
5920 | ||
98564bfc | 5921 | 2012-04-02 Yannick Moy <moy@adacore.com> |
5922 | ||
5923 | * lib-xref-alfa.adb: Code clean up. | |
5924 | ||
5925 | 2012-04-02 Ed Schonberg <schonberg@adacore.com> | |
5926 | ||
5927 | * sem_ch12.adb (Analyze_Subprogram_Instantiation): Do not suppress | |
5928 | style checks, because the subprogram instance itself may contain | |
5929 | violations of syle rules. | |
5930 | * style.adb (Missing_Overriding): Check for missing overriding | |
5931 | indicator on a subprogram instance. | |
5932 | ||
5933 | 2012-04-02 Hristian Kirtchev <kirtchev@adacore.com> | |
5934 | ||
5935 | * sem_ch6.adb (Last_Implicit_Declaration): New routine. | |
5936 | (Process_PPCs): Insert the body of _postconditions after the | |
5937 | last internally generated declaration. This ensures that actual | |
5938 | subtypes created for formal parameters are visible and properly | |
5939 | frozen as _postconditions may reference them. | |
5940 | ||
d52c146a | 5941 | 2012-04-02 Robert Dewar <dewar@adacore.com> |
5942 | ||
5943 | * einfo.adb (First_Component_Or_Discriminant) Now applies to | |
5944 | all types with discriminants, not just records. | |
5945 | * exp_attr.adb (Expand_N_Attribute): Add Scalar_Values handling | |
5946 | for arrays, scalars and non-variant records. | |
5947 | * sem_attr.adb (Analyze_Attribute): Handle Valid_Scalars | |
5948 | * sem_attr.ads (Valid_Scalars): Update description | |
5949 | * sem_util.ads, sem_util.adb (No_Scalar_Parts): New function. | |
5950 | ||
af403aef | 5951 | 2012-03-31 Eric Botcazou <ebotcazou@adacore.com> |
5952 | ||
5953 | Revert | |
5954 | 2012-03-25 Eric Botcazou <ebotcazou@adacore.com> | |
5955 | ||
5956 | * gcc-interface/decl.c (SS_MARK_NAME): New define. | |
5957 | (gnat_to_gnu_entity) <E_Function>: Prepend leaf attribute on entities | |
5958 | whose name is SS_MARK_NAME. | |
5959 | ||
d5be9f38 | 5960 | 2012-03-30 Robert Dewar <dewar@adacore.com> |
5961 | ||
5962 | * exp_ch5.adb, sem_util.adb, exp_ch4.adb: Minor comment updates. | |
5963 | ||
5964 | 2012-03-30 Yannick Moy <moy@adacore.com> | |
5965 | ||
5966 | * lib-xref-alfa.adb (Add_Alfa_File): Treat possibly 2 units at the same | |
5967 | time, putting all scopes in the same Alfa file. | |
5968 | (Add_Alfa_Xrefs): Correct errors in comparison function. Correct value | |
5969 | of Def component. | |
5970 | (Collect_Alfa): Possibly pass 2 units to Add_Alfa_File. | |
5971 | ||
81dd521a | 5972 | 2012-03-30 Hristian Kirtchev <kirtchev@adacore.com> |
5973 | ||
5974 | * exp_util.adb (Is_Secondary_Stack_BIP_Func_Call): Handle a case where | |
5975 | a build-in-place call appears as Prefix'Reference'Reference. | |
5976 | ||
5977 | 2012-03-30 Yannick Moy <moy@adacore.com> | |
5978 | ||
5979 | * lib-xref-alfa.adb: Minor refactoring to remove internal package. | |
5980 | ||
5981 | 2012-03-30 Hristian Kirtchev <kirtchev@adacore.com> | |
5982 | ||
5983 | * sem_ch5.adb (Analyze_Iteration_Scheme): Preanalyze the subtype | |
5984 | definition of a loop when the context is a quantified expression. | |
5985 | ||
5986 | 2012-03-30 Vincent Celier <celier@adacore.com> | |
5987 | ||
5988 | * prj.ads: Minor comment update. | |
5989 | ||
8b22ebf6 | 5990 | 2012-03-30 Yannick Moy <moy@adacore.com> |
5991 | ||
5992 | * lib-xref-alfa.adb, alloc.ads, lib-xref.ads: Minor addition of | |
5993 | comments and refactoring. | |
5994 | ||
6ab9aa28 | 5995 | 2012-03-30 Robert Dewar <dewar@adacore.com> |
5996 | ||
5997 | * lib-xref.adb, lib-xref-alfa.adb: Minor reformatting & code | |
5998 | reorganization. | |
5999 | ||
96b0dd1e | 6000 | 2012-03-30 Yannick Moy <moy@adacore.com> |
6001 | ||
6002 | * lib-xref-alfa.adb (Generate_Dereference): Use Get_Code_Unit | |
6003 | instead of Get_Source_Unit to get file for reference. | |
6004 | (Traverse_Compilation_Unit): Do not add scopes for generic units. | |
6005 | * lib-xref.adb (Generate_Reference): Use Get_Code_Unit instead | |
6006 | of Get_Source_Unit to get file for reference. | |
6007 | * sem_ch12.adb (Analyze_Package_Instantiation): Enable | |
6008 | instantiation in Alfa mode. | |
6009 | ||
14980c45 | 6010 | 2012-03-30 Hristian Kirtchev <kirtchev@adacore.com> |
6011 | ||
6012 | * exp_ch7.adb (Process_Declarations): Replace | |
6013 | the call to Is_Null_Access_BIP_Func_Call with | |
6014 | Is_Secondary_Stack_BIP_Func_Call. Update the related comment. | |
6015 | * exp_util.adb (Is_Null_Access_BIP_Func_Call): Removed. | |
6016 | (Is_Secondary_Stack_BIP_Func_Call): New routine. | |
6017 | (Requires_Cleanup_Actions): Replace | |
6018 | the call to Is_Null_Access_BIP_Func_Call with | |
6019 | Is_Secondary_Stack_BIP_Func_Call. Update the related comment. | |
6020 | * exp_util.ads (Is_Null_Access_BIP_Func_Call): Removed. | |
6021 | (Is_Secondary_Stack_BIP_Func_Call): New routine. | |
6022 | ||
6023 | 2012-03-30 Yannick Moy <moy@adacore.com> | |
6024 | ||
6025 | * lib-xref-alfa.adb, lib-xref.adb: Code clean ups. | |
6026 | ||
b4d9f546 | 6027 | 2012-03-30 Gary Dismukes <dismukes@adacore.com> |
6028 | ||
6029 | * exp_ch5.adb (Expand_Iterator_Loop_Over_Array): For the case of a | |
6030 | loop entity which is rewritten as a renaming | |
6031 | of the indexed array, explicitly mark the entity as needing | |
6032 | debug info so that Materialize entity will be set later by | |
6033 | Debug_Renaming_Declaration when the renaming is expanded. | |
6034 | ||
6035 | 2012-03-30 Robert Dewar <dewar@adacore.com> | |
6036 | ||
6037 | * sem_attr.ads: Update comment. | |
6038 | ||
d0d085af | 6039 | 2012-03-30 Vincent Celier <celier@adacore.com> |
6040 | ||
6041 | * prj.ads: New Dependency_Kind: ALI_Closure. | |
6042 | ||
6043 | 2012-03-30 Thomas Quinot <quinot@adacore.com> | |
6044 | ||
6045 | * exp_pakd.adb: Minor reformatting. | |
6046 | ||
00a8e50e | 6047 | 2012-03-30 Yannick Moy <moy@adacore.com> |
6048 | ||
6049 | * lib-xref-alfa.adb (Add_Alfa_File): Take into account possible absence | |
6050 | of compilation unit for unit in Sdep_Table. | |
6051 | ||
9f071888 | 6052 | 2012-03-30 Thomas Quinot <quinot@adacore.com> |
6053 | ||
6054 | * freeze.adb (Freeze_Record_Type): For a type with reversed bit | |
6055 | order and reversed storage order, disable front-end relayout. | |
6056 | ||
db056468 | 6057 | 2012-03-25 Eric Botcazou <ebotcazou@adacore.com> |
6058 | ||
6059 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Copy | |
6060 | the TYPE_PACKED flag from the base type. | |
6061 | ||
3a4b0b99 | 6062 | 2012-03-25 Eric Botcazou <ebotcazou@adacore.com> |
6063 | ||
6064 | * gcc-interface/decl.c (SS_MARK_NAME): New define. | |
6065 | (gnat_to_gnu_entity) <E_Function>: Prepend leaf attribute on entities | |
6066 | whose name is SS_MARK_NAME. | |
6067 | ||
ae16f71d | 6068 | 2012-03-25 Eric Botcazou <ebotcazou@adacore.com> |
6069 | ||
6070 | * gcc-interface/utils.c (add_parallel_type): Take a TYPE instead of a | |
6071 | DECL and adjust. Move around. | |
6072 | (has_parallel_type): New predicate. | |
6073 | (rest_of_record_type_compilation): Return early if the type already | |
6074 | has a parallel type. | |
6075 | * gcc-interface/gigi.h (add_parallel_type): Adjust. | |
6076 | * gcc-interface/decl.c (gnat_to_gnu_entity): Adjust for above changes. | |
6077 | ||
96e7147a | 6078 | 2012-03-25 Eric Botcazou <ebotcazou@adacore.com> |
6079 | ||
6080 | * gcc-interface/utils.c (finish_record_type): Return early for padded | |
6081 | types and tidy up. | |
6082 | ||
fbd95193 | 6083 | 2012-03-20 Arnaud Charlet <charlet@adacore.com> |
6084 | ||
6085 | * hlo.ads, hlo.adb: Removed, no longer used. | |
6086 | * gcc-interface/Make-lang.in: Remove hlo.o. Update dependencies. | |
6087 | * gcc-interface/Makefile.in: Remove EXTRA_LIBGNAT_SRCS (temporarly) | |
6088 | and compute it from EXTRA_LIBGNAT_OBJS. | |
6089 | Clean up comments, reorder LIBGNAT_SRCS and LIBGNAT_OBJS. | |
6090 | ||
0a13aca8 | 6091 | 2012-03-20 Yannick Moy <moy@adacore.com> |
6092 | ||
6093 | * gnat_rm.texi, sem_attr.ads: Update documentation. | |
6094 | ||
9b8df6be | 6095 | 2012-03-19 Yannick Moy <moy@adacore.com> |
6096 | ||
6097 | * sem_ch6.adb: Minor code clean up. | |
6098 | ||
6099 | 2012-03-19 Vincent Celier <celier@adacore.com> | |
6100 | ||
6101 | * make.adb (Scan_Make_Arg): Make sure all significant -m switches | |
6102 | on the command line are counted. | |
6103 | ||
6104 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6105 | ||
6106 | * sem_elab.adb (Generate_Elab_Warnings): Fix spec, fix attribute | |
6107 | reference case | |
6108 | ||
6109 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6110 | ||
6111 | * par-ch4.adb (Check_Bad_Exp): New procedure | |
6112 | ||
6113 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6114 | ||
6115 | * exp_attr.adb, sem_attr.adb, sem_attr.ads, snames.ads-tmpl: Add | |
6116 | initial framework for Valid_Scalars attribute. | |
6117 | ||
6118 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6119 | ||
6120 | * scng.adb (Scan): Recognize incorrect preprocessor directive | |
6121 | ||
6122 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6123 | ||
6124 | * atree.adb (Allocate_Initialize_Node): Use Num_Extension_Nodes | |
6125 | * atree.ads (Num_Extension_Nodes): New variable | |
6126 | * debug.adb: New debug flag -gnatd.N | |
6127 | * gnat1drv.adb (Adjust_Global_Switches): Adjust | |
6128 | Num_Extension_Nodes if -gnatd.N set | |
6129 | ||
6130 | 2012-03-19 Eric Botcazou <ebotcazou@adacore.com> | |
6131 | ||
6132 | * einfo.ads: Minor update to First_Rep_Item and Has_Gigi_Rep_Item | |
6133 | descriptions. | |
6134 | ||
6135 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6136 | ||
6137 | * opt.ads: Remove HLO_Active flag. | |
6138 | * sem.adb: Remove call of high level optimizer. | |
6139 | * sem.ads (New_Nodes_OK): Removed. | |
6140 | * sem_ch10.adb: Remove references to New_Nodes_OK. | |
6141 | * switch-c.adb: Remove handling of -gnatH switch. | |
6142 | ||
e6ae24fa | 6143 | 2012-03-19 Yannick Moy <moy@adacore.com> |
6144 | ||
6145 | * sem_ch6.adb (Check_Subprogram_Contract): Do not emit warnings | |
6146 | on trivially True or False postconditions and Ensures components | |
6147 | of contract-cases. | |
6148 | ||
6149 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6150 | ||
6151 | * gnat_ugn.texi: Fix index entry for -gnatei (now we have | |
6152 | ug_words entry). | |
6153 | ||
eede3b44 | 6154 | 2012-03-19 Hristian Kirtchev <kirtchev@adacore.com> |
6155 | ||
6156 | * sem_ch3.adb (Get_Discriminant_Value): Instead of looking | |
6157 | at the immediate correcponsing discriminant, traverse a | |
6158 | potential chain of discriminants produced by type derivations. | |
6159 | (Root_Corresponding_Discriminant): Traverse a chain of inherited | |
6160 | discriminants and return the topmost discriminant. | |
6161 | ||
6162 | 2012-03-19 Bob Duff <duff@adacore.com> | |
6163 | ||
6164 | * debug.adb: Minor comment change. | |
6165 | * gnat_ugn.texi: Update documentation for elaboration regarding | |
6166 | indirect calls. | |
6167 | ||
6168 | 2012-03-19 Gary Dismukes <dismukes@adacore.com> | |
6169 | ||
6170 | * exp_ch3.adb (Expand_N_Object_Declaration): In | |
6171 | the case of an object of a class-wide interface type, where the | |
6172 | declaration is rewritten as a renaming, call Set_Debug_Info_Needed | |
6173 | on the renaming entity so that Materialize_Entity will be | |
6174 | set. Also, change existing call (for other than interface cases) | |
6175 | to call Set_Debug_Info_Needed rather than Set_Needs_Debug_Info | |
6176 | (as specified for that flag). | |
6177 | ||
efe1035c | 6178 | 2012-03-19 Hristian Kirtchev <kirtchev@adacore.com> |
6179 | ||
6180 | * sem_ch4.adb (Analyze_Allocator): Detect an allocator generated | |
6181 | by the build-in-place machinery where the designated type is | |
6182 | indefinite, but the underlying type is not. Do not emit errors | |
6183 | related to missing initialization in this case. | |
6184 | ||
6185 | 2012-03-19 Robert Dewar <dewar@adacore.com> | |
6186 | ||
6187 | * gnat_ugn.texi: Add documentation for -gnateinnn switch. | |
6188 | * sem_elab.adb, put_alfa.adb, lib-xref-alfa.adb: Minor reformatting. | |
6189 | * sem_prag.adb: Minor comment update. | |
6190 | ||
de2e6464 | 6191 | 2012-03-15 Robert Dewar <dewar@adacore.com> |
6192 | ||
6193 | * errout.ads: Add entry for translating -gnateinn to | |
6194 | /MAX_INSTANTIATIONS for VMS. | |
6195 | * hostparm.ads (Max_Instantiations): Moved to Opt. | |
6196 | * opt.ads (Maximum_Instantiations): Moved from Hostparm, and renamed. | |
6197 | * sem_ch12.adb (Maximum_Instantiations): New name of | |
6198 | Max_Instantiations (Analyze_Package_Instantiation): Change error | |
6199 | msg for too many instantiations (mention -gnateinn switch). | |
6200 | * switch-c.adb (Scan_Front_End_Switches): Implement -gnateinn switch. | |
6201 | * switch.ads: Minor comment update. | |
6202 | * usage.adb (Usage): Output line for -maxeinn switch. | |
6203 | * vms_data.ads: Add entry for MAX_INSTANTIATIONS (-gnateinn). | |
6204 | ||
6205 | 2012-03-15 Yannick Moy <moy@adacore.com> | |
6206 | ||
6207 | * alfa.ads Update the decription of ALI sections. | |
6208 | (Alfa_File_Record): Add a component Unit_File_Name to store the | |
6209 | unit file name for subunits. | |
6210 | * get_alfa.adb, put_alfa.adb Adapt to the possible presence of | |
6211 | a unit file name. | |
6212 | * lib-xref-alfa.adb (Add_Alfa_File): For subunits, retrieve the | |
6213 | file name of the unit. | |
6214 | ||
6215 | 2012-03-15 Yannick Moy <moy@adacore.com> | |
6216 | ||
6217 | * sem_ch6.adb (Check_Subprogram_Contract): Do | |
6218 | not issue warning on missing 'Result in postcondition if all | |
6219 | postconditions and contract-cases already get a warning for only | |
6220 | referring to pre-state. | |
6221 | ||
6222 | 2012-03-15 Bob Duff <duff@adacore.com> | |
6223 | ||
6224 | * debug.adb: Add new debug switch -gnatd.U, which disables the | |
6225 | support added below, in case someone trips over a cycle, and needs | |
6226 | to disable this. | |
6227 | * sem_attr.adb (Analyze_Access_Attribute): | |
6228 | Treat Subp'Access as a call for elaboration purposes. | |
6229 | * sem_elab.ads, sem_elab.adb (Check_Elab_Call): Add support | |
6230 | for Subp'Access. | |
6231 | ||
239fc533 | 6232 | 2012-03-15 Vincent Pucci <pucci@adacore.com> |
6233 | ||
6234 | * sem.ads, sem.adb (Preanalyze): New routine. | |
6235 | * sem_ch4.adb (Analyze_Quantified_Expression): Call to the | |
6236 | Preanalyze routine in Sem added. Renaming of Needs_Expansion | |
6237 | into Need_Preanalysis. | |
6238 | * sem_ch6.adb (Preanalyze): Removed. | |
6239 | ||
fc859004 | 6240 | 2012-03-15 Robert Dewar <dewar@adacore.com> |
6241 | ||
6242 | * sem_ch4.adb (Analyze_Quantified_Expression): Add comment. | |
6243 | * sem_prag.adb: Minor comment additions. | |
6244 | * sem_attr.adb (Check_First_Last_Valid): Make sure prefix type | |
6245 | is frozen. | |
6246 | ||
ef3d7c7d | 6247 | 2012-03-15 Vincent Pucci <pucci@adacore.com> |
6248 | ||
6249 | * sem_ch4.adb (Analyze_Quantified_Expression): | |
6250 | Preanalyze the condition when the quantified expression will be | |
6251 | further expanded. | |
6252 | ||
6253 | 2012-03-15 Yannick Moy <moy@adacore.com> | |
6254 | ||
6255 | * sem_prag.adb, sem_util.adb, sem_util.ads, sem_attr.adb, sem_ch6.adb, | |
6256 | sem_warn.adb: Minor refactoring, renaming Case_Pragma in CTC_Pragma, | |
6257 | to refer to both Test_Case pragma and Contract_Case pragma (same | |
6258 | acronym as in Spec_CTC_List). | |
6259 | ||
defed25d | 6260 | 2012-03-15 Robert Dewar <dewar@adacore.com> |
6261 | ||
6262 | * sem_prag.adb, sem_prag.ads, sem_util.ads, sem_attr.adb, sem_ch6.adb, | |
6263 | sem_warn.adb: Minor reformatting. | |
6264 | ||
469bbc18 | 6265 | 2012-03-15 Hristian Kirtchev <kirtchev@adacore.com> |
6266 | ||
6267 | * exp_util.adb (Initialized_By_Ctrl_Function): Do not loop over | |
6268 | selector names as the function call always appears at the top selected | |
6269 | component. | |
6270 | ||
6271 | 2012-03-15 Ed Schonberg <schonberg@adacore.com> | |
6272 | ||
6273 | * sem_ch12.adb (Validate_Access_Subprogram_Instance): keep | |
6274 | Mode_Conformance check for older versions of the language. | |
6275 | ||
6276 | 2012-03-15 Yannick Moy <moy@adacore.com> | |
6277 | ||
6278 | * gnat_ugn.texi Document the extension of option -gnatw.t. | |
6279 | * sem_ch3.adb (Analyze_Declaration): Check for suspicious | |
6280 | contracts only after contract cases have been semantically | |
6281 | analyzed. | |
6282 | * sem_ch6.adb (Check_Subprogram_Contract): Consider also Ensures | |
6283 | components of contract cases for detecting suspicious contracts. | |
6284 | ||
fad014fe | 6285 | 2012-03-15 Yannick Moy <moy@adacore.com> |
6286 | ||
6287 | * aspects.adb, aspects.ads (Aspect_Id): New GNAT aspect | |
6288 | Aspect_Contract_Case. | |
6289 | * gnat_rm.texi Document the new pragma/aspect | |
6290 | Contract_Case. Correct the documentation of the existing | |
6291 | pragma/aspect Test_Case with the new semantics. | |
6292 | * sem_attr.adb (Analyze_Attribute): Allow use of 'Result in the | |
6293 | Ensures component of a Contract_Case pragma. | |
6294 | * sem_ch13.adb (Analyze_Aspect_Specifications): Check new aspect | |
6295 | and translate it into a pragma. | |
6296 | (Check_Aspect_At_Freeze_Point): Take into account the new aspect. | |
6297 | * sem_ch3.adb, sinfo.adb, sinfo.ads Renaming of TC (for test case) | |
6298 | into CTC (for contract and test case). | |
6299 | * sem_ch6.adb (Process_PPCs): Generate Check pragmas from | |
6300 | Contract_Case pragmas, similarly to what is done already for | |
6301 | postconditions. | |
6302 | * sem_prag.adb, sem_prag.ads (Check_Contract_Or_Test_Case): | |
6303 | Renaming of Check_Test_Case. | |
6304 | (Analyze_Pragma, Sig_Flags): Take into account the new pragma. | |
6305 | * sem_util.adb, sem_util.ads Renaming to take into account the | |
6306 | new pragma, so that functions which applied only to Test_Case | |
6307 | now apply to both Test_Case and Contract_Case. | |
6308 | * par-prag.adb, sem_warn.adb, snames.ads-tmpl Take into account | |
6309 | the new pragma. | |
6310 | ||
3b8208fd | 6311 | 2012-03-15 Robert Dewar <dewar@adacore.com> |
6312 | ||
6313 | * sem_ch6.ads: Minor comment updates. | |
6314 | * sem_ch12.adb: Minor comment clarification. | |
6315 | ||
ad3ac5aa | 6316 | 2012-03-15 Robert Dewar <dewar@adacore.com> |
6317 | ||
6318 | * sem_ch5.adb: Minor reformatting. | |
6319 | ||
6320 | 2012-03-15 Ed Schonberg <schonberg@adacore.com> | |
6321 | ||
6322 | * exp_ch3.adb (Expand_N_Object_Declaration): When rewriting the | |
6323 | declaration of a class-wide object, retain the Ekind to prevent | |
6324 | subsequent misuse of constants. | |
6325 | ||
6326 | 2012-03-15 Yannick Moy <moy@adacore.com> | |
6327 | ||
6328 | * gnat_rm.texi, gnat_ugn.texi: Minor correction of invariant | |
6329 | terminology. | |
6330 | ||
6331 | 2012-03-15 Hristian Kirtchev <kirtchev@adacore.com> | |
6332 | ||
6333 | * exp_util.adb (Initialized_By_Ctrl_Function): Add code to | |
6334 | process the case when a function call appears in object.operation | |
6335 | format. | |
6336 | ||
6337 | 2012-03-15 Ed Schonberg <schonberg@adacore.com> | |
6338 | ||
6339 | * sem_ch6.ads, sem_ch6.adb (Check_Subtype_Conformant): add | |
6340 | Get_Inst formal, so that conformance within an instantiation | |
6341 | follows renamings of formals. This is similar to what is already | |
6342 | done in Check_Mode_conformant. | |
6343 | * sem_ch12.adb (Vailidate_Access_Subprogram_Instance): check that | |
6344 | formal and actual are subtype conformant. Previously only mode | |
6345 | conformance was required. | |
6346 | ||
1b24a6cb | 6347 | 2012-03-15 Robert Dewar <dewar@adacore.com> |
6348 | ||
6349 | * par-ch6.adb, einfo.ads, sem_eval.adb, sem_eval.ads, | |
6350 | sem_case.adb: Minor reformatting. | |
6351 | ||
6352 | 2012-03-15 Robert Dewar <dewar@adacore.com> | |
6353 | ||
6354 | * exp_attr.adb (Expand_N_Attribute_Reference): Add handling | |
6355 | of First_Valid/Last_Valid. | |
6356 | * sem_attr.adb (Check_First_Last_Valid): New procedure | |
6357 | (Analyze_Attribute): Add handling of First_Valid and Last_Valid | |
6358 | (Eval_Attribute): ditto. | |
6359 | * snames.ads-tmpl: Add entries for First_Valid and Last_Valid. | |
6360 | ||
6361 | 2012-03-15 Ed Schonberg <schonberg@adacore.com> | |
6362 | ||
6363 | * exp_ch5.adb (Expand_Predicated_Loop): Suppress warnings on | |
6364 | loop variable, for the unusual case where the range has a single | |
6365 | element and the loop variable has no visible assignment to it. | |
6366 | ||
6367 | 2012-03-15 Vincent Pucci <pucci@adacore.com> | |
6368 | ||
6369 | * exp_ch4.adb (Expand_N_Quantified_Expression): Expand the | |
6370 | original quantified expression node. | |
6371 | * sem_ch4.adb (Analyze_Quantified_Expression): Properly analyze | |
6372 | the quantified expression and preserve the original non-analyzed | |
6373 | quantified expression when an expansion is needed. | |
6374 | * sem_ch5.adb (Analyze_Iteration_Scheme): Special treatment | |
6375 | for quantified expressions. | |
6376 | (Analyze_Iterator_Specification): Special treatment for quantified | |
6377 | expressions. | |
6378 | ||
6379 | 2012-03-15 Ed Falis <falis@adacore.com> | |
6380 | ||
6381 | * s-vxwork-ppc.ads: Update FP_CONTEXT so name of former pad | |
6382 | field matches VxWorks headers. | |
6383 | ||
5641963c | 6384 | 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
6385 | ||
6386 | * gcc-interface/Makefile.in (mips-sgi-irix6*): Remove. | |
6387 | ||
6388 | * a-intnam-irix.ads, mlib-tgt-specific-irix.adb, | |
6389 | s-intman-irix.adb, s-mastop-irix.adb, s-osinte-irix.adb, | |
6390 | s-osinte-irix.ads, s-proinf-irix-athread.adb, | |
6391 | s-proinf-irix-athread.ads, s-taprop-irix.adb, s-tasinf-irix.ads, | |
6392 | system-irix-n32.ads, system-irix-n64.ads, system-irix-o32.ads: | |
6393 | Remove. | |
6394 | ||
6395 | * adaint.c [__mips && __sgi]: Remove. | |
6396 | (__gnat_number_of_cpus) [__mips && __sgi]: Remove. | |
6397 | [IS_CROSS && !(__mips && __sgi)]: Remove. | |
6398 | * adaint.h [sgi && _LFAPI]: Remove. | |
6399 | * cstreams.c (__gnat_full_name) [sgi]: Remove. | |
6400 | * env.c (__gnat_unsetenv) [__mips && __sgi]: Remove. | |
6401 | (__gnat_clearenv) [__mips && __sgi]: Remove. | |
6402 | * errno.c (_SGI_MP_SOURCE): Remove. | |
6403 | * gsocket.h [sgi]: Remove. | |
6404 | * init.c: Remove IRIX reference. | |
6405 | [sgi]: Remove. | |
6406 | * link.c [sgi]: Remove. | |
6407 | * s-oscons-tmplt.c [__mips && __sgi] (IOV_MAX): Don't define. | |
6408 | (main) [__mips && __sgi] (MAX_tv_sec): Don't define. | |
6409 | (CLOCK_SGI_FAST, CLOCK_SGI_CYCLE): Remove. | |
6410 | * sysdep.c [sgi]: Remove. | |
6411 | (getc_immediate_common) [sgi]: Remove. | |
6412 | (__gnat_localtime_tzoff) [sgi]: Remove. | |
6413 | * terminals.c [__mips && __sgi] (IRIX): Don't define. | |
6414 | [IRIX] (USE_GETPTY): Don't define. | |
6415 | (allocate_pty_desc) [USE_GETPTY]: Remove. | |
6416 | ||
6417 | * g-traceb.ads: Remove IRIX reference. | |
6418 | * g-trasym.ads: Likewise. | |
6419 | * memtrack.adb: Likewise. | |
6420 | * s-interr-sigaction.adb: Likewise. | |
6421 | ||
6422 | * gnat_rm.texi (Implementation Advice): Remove SGI info. | |
6423 | (Implementation Defined Characteristics): Likewise. | |
6424 | * gnat_ugn.texi (Summary of Run-Time Configurations, mips-irix): | |
6425 | Remove. | |
6426 | (Irix-Specific Considerations): Remove. | |
6427 | ||
cb30e799 | 6428 | 2012-03-13 Tristan Gingold <gingold@adacore.com> |
6429 | ||
6430 | * gcc-interface/gigi.h (flag_vms_malloc64): Refine condition. | |
6431 | ||
1e958bb8 | 6432 | 2012-03-13 Tristan Gingold <gingold@adacore.com> |
6433 | ||
6434 | * sysdep.c: Adjust condition after removal of __osf__. | |
6435 | ||
dd0cd1e4 | 6436 | 2012-03-12 Eric Botcazou <ebotcazou@adacore.com> |
6437 | ||
6438 | * gcc-interface/gigi.h (shift_unc_components_for_thin_pointers): Kill. | |
6439 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Remove call | |
6440 | to above function. | |
6441 | * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Pool_Address>: Adjust | |
6442 | handling of thin pointers. | |
6443 | <Attr_Descriptor_Size>: Likewise. | |
6444 | (gnat_to_gnu) <N_Free_Statement>: Likewise. | |
6445 | * gcc-interface/utils.c (shift_unc_components_for_thin_pointers): Kill. | |
6446 | (convert_to_fat_pointer): Adjust handling of thin pointers. | |
6447 | (convert) <POINTER_TYPE>: Likewise. | |
6448 | * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: Likewise. | |
6449 | ||
126b6848 | 6450 | 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
6451 | ||
6452 | * gcc-interface/Makefile.in (alpha*-dec-osf*): Remove. | |
6453 | * a-intnam-tru64.ads, mlib-tgt-specific-tru64.adb, | |
6454 | s-mastop-tru64.adb, s-osinte-tru64.adb, s-osinte-tru64.ads, | |
6455 | s-taprop-tru64.adb, s-tasinf-tru64.ads, s-taspri-tru64.ads, | |
6456 | system-tru64.ads: Remove. | |
6457 | ||
6458 | * adaint.c (__gnat_number_of_cpus) [__alpha__ && __osf__]: | |
6459 | Remove. | |
6460 | [IS_CROSS] [!(__alpha__ && __osf__)]: Remove. | |
6461 | * env.c [__alpha__ && __osf__]: Remove. | |
6462 | * gsocket.h (_OSF_SOURCE): Remove. | |
6463 | (HAVE_THREAD_SAFE_GETxxxBYyyy) [__osf__]: Remove. | |
6464 | * init.c [__alpha__ && __osf__]: Remove. | |
6465 | * link.c [__osf__]: Remove. | |
6466 | * s-oscons-tmplt.c [__alpha__ && __osf__]: Remove. | |
6467 | [__osf__ && !_SS_MAXSIZE]: Remove. | |
6468 | * sysdep.c [__osf__]: Remove. | |
6469 | * terminals.c [__alpha__ && __osf__]: Remove. | |
6470 | [OSF1]: Remove. | |
6471 | ||
6472 | * g-traceb.ads: Remove Tru64 reference. | |
6473 | * g-trasym.ads: Likewise. | |
6474 | * gnat_ugn.texi (Linking a Mixed C++ & Ada Program): Likewise. | |
6475 | (Summary of Run-Time Configurations): Likewise. | |
6476 | * memtrack.adb: Likewise. | |
6477 | ||
8f852c44 | 6478 | 2012-03-12 Tristan Gingold <gingold@adacore.com> |
6479 | ||
6480 | * gcc-interface/decl.c (gnat_to_gnu_param): Use flag_vms_malloc64 | |
6481 | instead of TARGET_MALLOC64. | |
6482 | * gcc-interface/gigi.h (flag_vms_malloc64): Define instead | |
6483 | of TARGET_MALLOC64. | |
6484 | ||
1b989431 | 6485 | 2012-03-09 Robert Dewar <dewar@adacore.com> |
6486 | ||
6487 | * a-direct.adb, comperr.adb, freeze.adb: Minor reformatting. | |
6488 | ||
6489 | 2012-03-09 Arnaud Charlet <charlet@adacore.com> | |
6490 | ||
6491 | * s-taskin.adb (Initialize_ATCB): Set Task_Image_Len to | |
6492 | 0 so that we never access this field uninitialized (e.g. in | |
6493 | Task_Primitives.Operations.Enter_Task for the environment task). | |
6494 | ||
6495 | 2012-03-09 Vincent Pucci <pucci@adacore.com> | |
6496 | ||
6497 | * exp_ch5.adb (Expand_Iterator_Loop): | |
6498 | Call to Expand_Iterator_Loop_Over_Array added. | |
6499 | (Expand_Iterator_Loop_Over_Array): New routine. Expansion of | |
6500 | "of" iterator loop over arrays. Multidimensional array case added. | |
6501 | ||
6502 | 2012-03-09 Eric Botcazou <ebotcazou@adacore.com> | |
6503 | ||
6504 | * uintp.ads: Fix minor pasto in comment. | |
6505 | ||
b7b74740 | 6506 | 2012-03-09 Vasiliy Fofanov <fofanov@adacore.com> |
6507 | ||
6508 | * a-direct.adb: Do not strip the trailing directory separator | |
6509 | from path, as this is already done inside Normalize_Pathname; | |
6510 | doing it again produces the wrong result on Windows for the | |
6511 | drive's root dir (i.e. "X:\" becomes "X:"). | |
6512 | ||
6513 | 2012-03-09 Thomas Quinot <quinot@adacore.com> | |
6514 | ||
6515 | * exp_attr.adb, freeze.adb, sem_attr.adb, aspects.adb, aspects.ads, | |
6516 | sem_ch13.adb, snames.ads-tmpl (Exp_Attr.Expand_N_Attribute_Reference): | |
6517 | Add Attribute_Scalar_Storage_Order. | |
6518 | (Sem_Attr.Analyze_Attribute, Eval_Attribute): Ditto. | |
6519 | (Aspects): Add Aspect_Scalar_Storage_Order (Snames): Add | |
6520 | Name_Scalar_Storage_Order and Attribute_Scalar_Storage_Order. | |
6521 | (Sem_Ch13.Analyze_Attribute_Definition_Clause): Add processing | |
6522 | for Scalar_Storage_Order. | |
6523 | (Freeze): If Scalar_Storage_Order is specified, check that it | |
6524 | is compatible with Bit_Order. | |
6525 | ||
385d80fe | 6526 | 2012-03-09 Robert Dewar <dewar@adacore.com> |
6527 | ||
6528 | * s-osinte-linux.ads, sem_util.adb, s-taprop-linux.adb, exp_ch4.adb, | |
6529 | a-strsup.ads, sem_ch6.adb, a-stwisu.ads, exp_ch3.adb, | |
6530 | a-stzsup.ads: Minor reformatting. | |
6531 | ||
6532 | 2012-03-09 Thomas Quinot <quinot@adacore.com> | |
6533 | ||
6534 | * s-ransee-vms.adb: Minor reformatting. | |
6535 | ||
6536 | 2012-03-09 Arnaud Charlet <charlet@adacore.com> | |
6537 | ||
6538 | * comperr.adb (Delete_SCIL_Files): Fix handling of | |
6539 | N_Package_Renaming_Declaration and N_Generic_Package_Declaration. | |
6540 | ||
2608e824 | 6541 | 2012-03-09 Javier Miranda <miranda@adacore.com> |
6542 | ||
6543 | * sem_ch6.adb (Check_Body_To_Inline): In AAMP and VM targets | |
6544 | use frontend inlining at all optimization levels. | |
6545 | * sem_util.adb (Must_Inline): In AAMP and VM targets, given that | |
6546 | there is no inlining support in the backend, use also frontend | |
6547 | inlining when compiling with optimizations enabled. | |
6548 | * exp_ch6.adb (Expand_Call): Minor code reorganization. | |
6549 | ||
7b4b0e11 | 6550 | 2012-03-09 Eric Botcazou <ebotcazou@adacore.com> |
6551 | ||
6552 | * gcc-interface/ada-tree.h (TYPE_VAX_FLOATING_POINT_P): Move around. | |
6553 | (TYPE_UNCONSTRAINED_ARRAY): Adjust comment. | |
6554 | * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Pool_Address>: Tidy | |
6555 | up. Add comment and use canonical predicate for thin pointers. | |
6556 | (gnat_to_gnu) <N_Free_Statement>: Tidy up and reorder. Add comment | |
6557 | and use canonical predicate for thin pointers. | |
6558 | * gcc-interface/utils.c (convert_to_fat_pointer): Remove superfluous | |
6559 | 'else' and use standard name. | |
6560 | (convert_to_thin_pointer): Delete. | |
6561 | (convert) <POINTER_TYPE>: Do the difference in sizetype directly and | |
6562 | change obsolete idioms. Do not call above function. | |
6563 | (unchecked_convert): Fix formatting. | |
6564 | * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: In the thin | |
6565 | pointer case, use byte_position to get the field position. | |
6566 | ||
a9e7ff04 | 6567 | 2012-03-07 Eric Botcazou <ebotcazou@adacore.com> |
6568 | ||
6569 | * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set flags on the | |
6570 | DECL node built for a type which has a non-trivial equivalent type. | |
6571 | ||
3fb9f0d4 | 6572 | 2012-03-07 Eric Botcazou <ebotcazou@adacore.com> |
6573 | ||
6574 | * gcc-interface/gigi.h (rest_of_type_decl_compilation): Delete. | |
6575 | * gcc-interface/decl.c (defer_finalize_level): Likewise. | |
6576 | (defer_finalize_list): Likewise. | |
6577 | (gnat_to_gnu_entity): Delete references to above variables and do not | |
6578 | call rest_of_type_decl_compilation. | |
6579 | (rest_of_type_decl_compilation): Delete. | |
6580 | (rest_of_type_decl_compilation_no_defer): Likewise. | |
6581 | * gcc-interface/utils.c (rest_of_record_type_compilation): Do not call | |
6582 | rest_of_type_decl_compilation. | |
6583 | (create_type_decl): Likewise. | |
6584 | (update_pointer_to): Likewise. | |
6585 | ||
97995ac1 | 6586 | 2012-03-07 Eric Botcazou <ebotcazou@adacore.com> |
6587 | ||
6588 | * gcc-interface/trans.c (Identifier_to_gnu): Don't unshare initializer. | |
6589 | (add_decl_expr): Mark external DECLs as used. | |
6590 | * gcc-interface/utils.c (convert) <CONSTRUCTOR>: Copy the vector. | |
6591 | ||
4e2b92f6 | 6592 | 2012-03-07 Tristan Gingold <gingold@adacore.com> |
6593 | ||
6594 | * s-ransee-vms.adb: New file. | |
6595 | * gcc-interface/Makefile.in: Use s-ransee-vms.adb on VMS. | |
6596 | * gcc-interface/Make-lang.in: Update dependencies. | |
6597 | ||
de4993fc | 6598 | 2012-03-07 Bob Duff <duff@adacore.com> |
6599 | ||
6600 | * rtsfind.ads: Add support for finding Super_String types. | |
6601 | * sem_util.ads, sem_util.adb (Is_Bounded_String): New function | |
6602 | to determine whether a given type is a bounded string type. | |
6603 | (Is_Fully_Initialized_Type): Return True for bounded | |
6604 | string types, to suppress bogus warnings. | |
6605 | * exp_ch4.adb (Expand_Composite_Equality): Special case for bounded | |
6606 | strings: equality composes. This allows us to remove default values in | |
6607 | super strings. | |
6608 | * a-strsup.ads, a-stwisu.ads, a-stzsup.ads: Update comments. | |
6609 | * exp_ch3.adb (Expand_Freeze_Record_Type): Comment. | |
6610 | ||
019bce56 | 6611 | 2012-03-07 Robert Dewar <dewar@adacore.com> |
6612 | ||
6613 | * sem_util.adb, exp_ch4.adb, exp_ch6.adb, sem_ch6.adb: Minor | |
6614 | reformatting. | |
6615 | ||
6616 | 2012-03-07 Sergey Rybin <rybin@adacore.com frybin> | |
6617 | ||
6618 | * gnat_ugn.texi: gnatpp: fix paragraph about sources with | |
6619 | preprocessor directives. | |
6620 | ||
6621 | 2012-03-07 Arnaud Charlet <charlet@adacore.com> | |
6622 | ||
6623 | * s-osinte-linux.ads, s-taprop-linux.adb (prctl): New function. | |
6624 | (Enter_Task): Call prctl when relevant. | |
6625 | ||
6626 | 2012-03-07 Tristan Gingold <gingold@adacore.com> | |
6627 | ||
6628 | * s-osinte-vms.ads: pthread_mutex_setname_np: new function. | |
6629 | ||
50cab70b | 6630 | 2012-03-07 Ed Schonberg <schonberg@adacore.com> |
6631 | ||
6632 | * sem_ch6.adb (Process_Formals): a generic subprogram with | |
6633 | a formal incomplete type does not require a freeze node. | |
6634 | ||
6635 | 2012-03-07 Bob Duff <duff@adacore.com> | |
6636 | ||
6637 | * sem_util.ads: Minor reformatting. | |
6638 | ||
6639 | 2012-03-07 Geert Bosch <bosch@adacore.com> | |
6640 | ||
6641 | * targparm.ads: New target parameter Atomic_Sync_Default, | |
6642 | defaulting to True. | |
6643 | * targparm.adb (Get_Target_Parameters): Add processing for | |
6644 | Atomic_Sync_Default. | |
6645 | * gnat1drv.adb (Adjust_Global_Switches): Adjust Supress_Options | |
6646 | based on ASD. | |
6647 | ||
9ef23ec9 | 6648 | 2012-03-07 Javier Miranda <miranda@adacore.com> |
6649 | ||
6650 | * sem_ch3.adb (Analyze_Object_Declaration): If the object | |
6651 | declaration has an init expression then stop the analysis of the | |
6652 | object declaration if the expression which initializes the object | |
6653 | is a call to an inlined function which returns an unconstrained | |
6654 | and has been expanded into a procedure call. | |
6655 | * sem_ch5.adb (Has_Call_Using_Secondary_Stack): Add missing | |
6656 | support to handle selected components. | |
6657 | * sem_ch6.ads (Cannot_Inline): Adding parameter Is_Serious plus | |
6658 | documentation. | |
6659 | * sem_ch6.adb (Check_And_Build_Body_To_Inline): New | |
6660 | subprogram which implements the checks required by the | |
6661 | new rules for frontend inlining and builds the body to inline. | |
6662 | (Analyze_Subprogram_Body_Helper): Move code that | |
6663 | checks inlining of subprogram that has nested subprogram | |
6664 | to Check_And_Build_Body_To_Inline. Replace call to | |
6665 | Build_Body_To_Inline by call to the new subprogram | |
6666 | Check_And_Build_Body_To_Inline. | |
6667 | (Cannot_Inline): New implementation. | |
6668 | * sem_ch12.adb (Analyze_Package_Instantiation.Must_Inline_Subp): | |
6669 | New subprogram. | |
6670 | * sem_util.ad[sb] (Must_Inline): New subprogram. | |
6671 | (Returns_Unconstrained_Type): New subprogram. | |
6672 | * sem_res.adb (Resolve_Call): Do not create a transient scope | |
6673 | for inlined calls. | |
6674 | * inline.ads (Analyzing_Inlined_Bodies): Remove unreferenced variable. | |
6675 | * inline.adb (Analyze_Inlined_Bodies, Initialize): Remove setting | |
6676 | to false the variable Analyzing_Inlined_Bodies. Fix comments. | |
6677 | * exp_ch4.adb (Expand_N_Allocator): Fix handling of finalization master. | |
6678 | * exp_ch6.ads (List_Inlining_Info): New subprogram. | |
6679 | * exp_ch6.adb (Expand_Call.Do_Inline): New subprogram. | |
6680 | (Expand_Call.Do_Inline_Always): New subprogram. | |
6681 | (In_Unfrozen_Instance): Move the declaration of this subprogram. | |
6682 | (Expand_Inlined_Call.Reset_Dispatching_Calls): New subprogram. | |
6683 | (Expand_Inlined_Call): Adding new support for inlining functions | |
6684 | that return unconstrained types. | |
6685 | (List_Inlining_Info): New subprogram. | |
6686 | * debug.adb Document flags -gnatd.j and -gnatd.k | |
6687 | * gnat1drv.adb Add call to generate the new listing of inlined | |
6688 | calls and calls passed to the backend. | |
6689 | ||
73692538 | 6690 | 2012-03-07 Robert Dewar <dewar@adacore.com> |
6691 | ||
6692 | * sem_ch5.adb, s-vaflop.adb, s-taprop-vms.adb, exp_ch6.adb, | |
6693 | s-gearop.adb, sem_ch6.adb, g-trasym.adb: Minor reformatting. | |
6694 | ||
6695 | 2012-03-07 Javier Miranda <miranda@adacore.com> | |
6696 | ||
6697 | * a-ngrear.ads: Add documentation. | |
6698 | ||
3ae6bcd5 | 6699 | 2012-03-07 Tristan Gingold <gingold@adacore.com> |
6700 | ||
6701 | * s-taprop-vms.adb (Create_Task): set thread name. | |
6702 | * s-osinte-vms.ads (pthread_attr_setname_np): Declare. | |
6703 | ||
6704 | 2012-03-07 Arnaud Charlet <charlet@adacore.com> | |
6705 | ||
6706 | * g-trasym.adb: Minor reformatting. | |
6707 | ||
6708 | 2012-03-07 Robert Dewar <dewar@adacore.com> | |
6709 | ||
6710 | * a-ngrear.ads: Minor addition of ??? comment. | |
6711 | ||
44e15e2b | 6712 | 2012-03-07 Gary Dismukes <dismukes@adacore.com> |
6713 | ||
6714 | * exp_ch4.adb (Apply_Accessibility_Check): Call | |
6715 | Remove_Side_Effects in the build-in-place case, to ensure that | |
6716 | we capture the call and don't end up with two calls. | |
6717 | ||
6718 | 2012-03-07 Javier Miranda <miranda@adacore.com> | |
6719 | ||
6720 | * exp_ch6.adb (Expand_Inlined_Call): Skip inlining of functions | |
6721 | that return unconstrained types using an extended return statement | |
6722 | since the support for inlining these functions has not been yet | |
6723 | added to the frontend. | |
6724 | * s-vaflop.adb, s-vaflop-vms-alpha.adb: Code reorganization. | |
6725 | * a-ngrear.ads: Replace all the Inline_Always pragmas by pragma | |
6726 | Inline. | |
6727 | * a-ngrear.adb (Eigenvalues, Transpose): Restructured to use | |
6728 | extended return statement. | |
6729 | * a-strsup.adb, a-stzsup.adb, a-stwisu.adb (Concat, Super_Slice, | |
6730 | Super_To_String): Restructured to use extended return statement. | |
6731 | * a-chahan.adb (To_Basic, To_Lower, To_Upper): Restructured to | |
6732 | use extended return statement. | |
6733 | * s-gearop.adb (Diagonal, Matrix_Elementwise_Operation, | |
6734 | Vector_Elementwise_Operation, Matrix_Elementwise_Operation, | |
6735 | Matrix_Matrix_Scalar_Elementwise_Operation, | |
6736 | Vector_Vector_Elementwise_Operation, | |
6737 | Vector_Vector_Scalar_Elementwise_Operation, | |
6738 | Matrix_Scalar_Elementwise_Operation, | |
6739 | Vector_Scalar_Elementwise_Operation, | |
6740 | Scalar_Matrix_Elementwise_Operation, | |
6741 | Scalar_Vector_Elementwise_Operation, Matrix_Matrix_Product, | |
6742 | Matrix_Vector_Product, Outer_Product, Unit_Matrix, Unit_Vector, | |
6743 | Vector_Matrix_Product): Restructured to use extended return | |
6744 | statement. | |
6745 | ||
6746 | 2012-03-07 Vincent Pucci <pucci@adacore.com> | |
6747 | ||
6748 | * sem_ch5.adb (One_Bound): Minor reformatting. | |
6749 | ||
6750 | 2012-03-07 Tristan Gingold <gingold@adacore.com> | |
6751 | ||
6752 | * s-osinte-vms-ia64.adb, s-osinte-vms-ia64.ads, s-osinte-vms.adb, | |
6753 | s-osinte-vms.ads, gcc-interface/Makefile.in: Merge s-osinte-vms and | |
6754 | s-osinte-vms-ia64. | |
6755 | ||
301d5ec3 | 6756 | 2012-03-07 Ed Schonberg <schonberg@adacore.com> |
6757 | ||
6758 | * checks.adb (Apply_Predicate_Check): Do not generate a predicate | |
6759 | check is the context is an internally generated type-specific | |
6760 | function. | |
6761 | * sem_ch6.adb (Process_PPCs); the formals of internally generated | |
6762 | type-specific functions do not get assertion checks. | |
6763 | ||
6764 | 2012-03-07 Yannick Moy <moy@adacore.com> | |
6765 | ||
6766 | * gnat_rm.texi: Minor renaming of title. | |
6767 | * gnat_ugn.texi: Minor correction. | |
6768 | ||
6769 | 2012-03-07 Vincent Pucci <pucci@adacore.com> | |
6770 | ||
6771 | * exp_ch4.adb (Expand_N_Quantified_Expression): Minor | |
6772 | reformating. | |
6773 | * sem_ch4.adb (Analyze_Quantified_Expression): Creation and | |
6774 | analysis of the iteration scheme added in all cases. | |
6775 | * sem_ch5.adb (Analyze_Iteration_Scheme): Minor reformating. | |
6776 | (Analyze_Iterator_Specification): Minor reformating. | |
6777 | * sem_res.adb (Resolve_Quantified_Expression): Resolution of | |
6778 | the condition added in all cases. | |
6779 | ||
19a5cf04 | 6780 | 2012-03-07 Thomas Quinot <quinot@adacore.com> |
6781 | ||
6782 | * einfo.adb, einfo.ads: Add flag Reverse_Storage_Order. | |
6783 | ||
6784 | 2012-03-07 Yannick Moy <moy@adacore.com> | |
6785 | ||
6786 | * gnat_rm.texi, gnat_ugn.texi: Rewording of GNAT UG and GNAT RM to | |
6787 | account for Ada 2012 assertions, and their pragma counterparts in GNAT. | |
6788 | ||
6789 | 2012-03-07 Thomas Quinot <quinot@adacore.com> | |
6790 | ||
6791 | * exp_attr.adb, sem_attr.adb: Minor reformatting. | |
6792 | ||
6793 | 2012-03-07 Bob Duff <duff@adacore.com> | |
6794 | ||
6795 | * hostparm.ads (Max_Instantiations): Increase parameter. | |
6796 | ||
6797 | 2012-03-07 Bob Duff <duff@adacore.com> | |
6798 | ||
6799 | * par-prag.adb: Minor code rearrangement. | |
6800 | ||
6801 | 2012-03-07 Bob Duff <duff@adacore.com> | |
6802 | ||
6803 | * a-strsup.ads, a-stwisu.ads, a-stzsup.ads (Super_String): | |
6804 | Remove default initial value for Data. It is no longer needed | |
6805 | because "=" now composes properly for untagged records. This | |
6806 | default has caused efficiency problems. | |
6807 | ||
6808 | 2012-03-07 Ed Schonberg <schonberg@adacore.com> | |
6809 | ||
6810 | * sem_res.adb (Resolve_Actuals): If the actual is a selected | |
6811 | component of an anonymous access type, whose prefix is a variable, | |
6812 | treat the variable as if it may be modified by the call, to | |
6813 | suppress spurious warnings that a variable might be declared as | |
6814 | a constant. | |
6815 | ||
7f93d5de | 6816 | 2012-03-07 Thomas Quinot <quinot@adacore.com> |
6817 | ||
6818 | * einfo.adb, einfo.ads: Remove unused entity flags. | |
6819 | ||
dc9027bc | 6820 | 2012-03-07 Eric Botcazou <ebotcazou@adacore.com> |
6821 | ||
6822 | * gnat_ugn.texi (Inline Assembler): Fix swapping of Input and | |
6823 | Output operands throughout. | |
6824 | ||
6825 | 2012-03-07 Hristian Kirtchev <kirtchev@adacore.com> | |
6826 | ||
6827 | * sem_ch12.adb (Earlier): When two nodes come from the same | |
6828 | generic instantiation, compare their locations. Otherwise always | |
6829 | use the top level locations of the nodes. | |
6830 | ||
6831 | 2012-03-07 Thomas Quinot <quinot@adacore.com> | |
6832 | ||
6833 | * einfo.ads, sem_prag.adb: Minor reformatting. | |
6834 | ||
581134a4 | 6835 | 2012-03-05 Jason Merrill <jason@redhat.com> |
6836 | ||
6837 | * gcc-interface/Make-lang.in (doc/gnat_ugn.texi): Build xgnatugn | |
6838 | before using it. | |
6839 | ||
4b7b019d | 6840 | 2012-03-04 Eric Botcazou <ebotcazou@adacore.com> |
6841 | ||
6842 | * gnatvsn.ads (Library_Version): Bump to 4.8. | |
6843 | ||
70d595c8 | 6844 | 2012-03-03 H.J. Lu <hongjiu.lu@intel.com> |
6845 | ||
6846 | * init.c (__gnat_adjust_context_for_raise): Also check | |
6847 | "orq $0x0,(%esp)" for x32. | |
6848 | ||
4b7b019d | 6849 | * link.c (__gnat_default_libgcc_subdir): Set to libx32 for x32. |
70d595c8 | 6850 | |
6851 | * gcc-interface/Makefile.in (arch): Set to x32 if MULTISUBDIR | |
4b7b019d | 6852 | is /x32 and add support for x32. |
70d595c8 | 6853 | |
ffb4f309 | 6854 | 2012-02-29 Eric Botcazou <ebotcazou@adacore.com> |
6855 | ||
6856 | * gcc-interface/decl.c (components_to_record): Add ARTIFICIAL parameter | |
6f9d8b76 | 6857 | and set TYPE_ARTIFICIAL according to it. Adjust recursive call. |
ffb4f309 | 6858 | (gnat_to_gnu_entity) <E_Record_Type>: Adjust call to above function. |
6859 | * gcc-interface/utils.c (rest_of_record_type_compilation): Do not | |
6860 | invoke rest_of_type_decl_compilation on the parallel type, if any. | |
6861 | ||
a2862f76 | 6862 | 2012-02-29 Eric Botcazou <ebotcazou@adacore.com> |
6863 | ||
6864 | * gcc-interface/utils.c (gnat_write_global_declarations): Make sure the | |
6865 | dummy global built for global types is preserved. | |
6866 | ||
e770c5fc | 6867 | 2012-02-27 Tristan Gingold <gingold@adacore.com> |
6868 | ||
6869 | * gcc-interface/decl.c (gnat_to_gnu_entity) [E_String_Type, | |
6870 | E_Array_Type]: Reuse dummy fat type for gnu_ptr_template and | |
6871 | gnu_template_type. | |
6872 | ||
a3b35344 | 6873 | 2012-02-27 Eric Botcazou <ebotcazou@adacore.com> |
6874 | ||
6875 | * gcc-interface/ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Add checking. | |
6876 | (TYPE_BY_REFERENCE_P): New flag. | |
6877 | (TYPE_IS_BY_REFERENCE_P): New macro. | |
6878 | (TYPE_DUMMY_P): Add checking and remove VOID_TYPE. | |
6879 | (TYPE_IS_DUMMY_P): Adjust for above change. | |
6880 | * gcc-interface/decl.c (gnat_to_gnu_entity): Use TYPE_BY_REFERENCE_P | |
6881 | and TYPE_IS_BY_REFERENCE_P instead of TREE_ADDRESSABLE. | |
6882 | (gnat_to_gnu_param): Likewise. | |
6883 | (maybe_pad_type): Likewise. | |
6884 | (make_type_from_size): Use TYPE_IS_PACKED_ARRAY_TYPE_P. | |
6885 | * gcc-interface/misc.c (must_pass_by_ref): Use TYPE_IS_BY_REFERENCE_P | |
6886 | instead of TREE_ADDRESSABLE. | |
6887 | * gcc-interface/trans.c (finalize_nrv): Likewise. | |
6888 | (call_to_gnu): Likewise. Do not create a temporary for return values | |
6889 | with by-reference type here. | |
6890 | (gnat_to_gnu): Test TYPE_IS_DUMMY_P instead of TYPE_DUMMY_P. | |
6891 | (gnat_gimplify_expr) <ADDR_EXPR>: Don't do anything for non-constant | |
6892 | CONSTRUCTORs and calls. | |
6893 | * gcc-interface/utils.c (make_dummy_type): Get the equivalent type of | |
6894 | the underlying type and use it throughout. Use TYPE_IS_BY_REFERENCE_P | |
6895 | instead of TREE_ADDRESSABLE. | |
6896 | * gcc-interface/utils2.c (build_cond_expr): Deal with by-reference | |
6897 | types explicitly. | |
6898 | ||
6b5f97e1 | 6899 | 2012-02-27 Eric Botcazou <ebotcazou@adacore.com> |
6900 | ||
6901 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Revert previous | |
6902 | change that creates a special VAR_DECL for debugging purposes. For an | |
6903 | aliased object with an unconstrained nominal subtype, make its type a | |
6904 | thin reference to the underlying object. | |
6905 | * gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: Deal with | |
6906 | expressions built for the initialization of above objects. | |
6907 | ||
7ef88902 | 6908 | 2012-02-24 Dave Korn <dave.korn.cygwin@gmail.com> |
6909 | ||
6910 | * gcc-interface/Makefile.in (WIN_SO_PREFIX [windows targets]): New | |
6911 | Windows-specific make variable. | |
6912 | (WIN_SO_INSTALL_DIR [windows targets]): Likewise. | |
6913 | (install-gnatlib): Respect the above during installation when set, | |
6914 | and also install any windows import library that has been built. | |
6915 | (gnatlib-shared-win32): Use WIN_SO_PREFIX to name output DLL and also | |
6916 | build a corresponding import library. | |
6917 | ||
ad6b44d8 | 6918 | 2012-02-22 Robert Dewar <dewar@adacore.com> |
6919 | ||
6920 | * exp_util.adb, make.adb, sem_dim.adb, sem_ch4.adb, exp_disp.adb: Minor | |
6921 | reformatting. | |
6922 | ||
6923 | 2012-02-22 Geert Bosch <bosch@adacore.com> | |
6924 | ||
6925 | * g-bytswa-x86.adb, g-bytswa.adb, gcc-interface/Makefile.in: Remove | |
6926 | x86-specific version of byteswap and use GCC builtins instead. | |
6927 | ||
6928 | 2012-02-22 Tristan Gingold <gingold@adacore.com> | |
6929 | ||
6930 | * gcc-interface/decl.c (gnat_to_gnu_entity) [E_String_Type, | |
6931 | E_Array_Type]: Translate component ealier. | |
6932 | ||
6933 | 2012-02-22 Robert Dewar <dewar@adacore.com> | |
6934 | ||
6935 | * par-ch3.adb (P_Signed_Integer_Type_Definition): Specialize | |
6936 | error message for 'Range. | |
6937 | ||
110e0530 | 6938 | 2012-02-22 Pascal Obry <obry@adacore.com> |
6939 | ||
6940 | * s-taprop-mingw.adb (Finalize_TCB): Do not wait on thread handle as | |
6941 | this is our own thread. | |
6942 | ||
6943 | 2012-02-22 Sergey Rybin <rybin@adacore.com frybin> | |
6944 | ||
6945 | * tree_io.ads: Update ASIS_Version_Number because of the changes | |
6946 | in Snames. | |
6947 | ||
6948 | 2012-02-22 Hristian Kirtchev <kirtchev@adacore.com> | |
6949 | ||
38b1f0b0 | 6950 | * exp_ch7.adb (Create_Finalizer): Suppress elaboration checks on |
110e0530 | 6951 | stack-related finalizers. |
6952 | ||
6953 | 2012-02-22 Ed Schonberg <schonberg@adacore.com> | |
6954 | ||
6955 | * sem_ch6.adb (Analyze_Expression_Function): If the construct | |
6956 | is a completion, indicate that its formals are the formals of | |
6957 | a completion, and as such do not get a cross- reference entry. | |
6958 | (Analyze_Subprogram_Specification): Do not generate a definition | |
6959 | for the entity of an expression function, because it may be a | |
6960 | completion. Definition will be generated if needed when analyzing | |
6961 | the generated subprogram declaration. | |
6962 | ||
6963 | 2012-02-22 Vincent Celier <celier@adacore.com> | |
6964 | ||
6965 | * make.adb (Check): When checking if an object file is in the | |
6966 | correct object directory, get the unit name from a previous call | |
6967 | to Check_Source_Info_In_ALI. | |
6968 | * makeutl.adb (Check_Source_Info_In_ALI): Return the name of | |
6969 | the unit when everything is OK, otherwise return No_Name. | |
6970 | * makeutl.ads (Check_Source_Info_In_ALI): Return Name_Id instead | |
6971 | of Boolean | |
6972 | ||
6973 | 2012-02-22 Ed Schonberg <schonberg@adacore.com> | |
6974 | ||
6975 | * sem_ch4.adb (Find_Equality_Types, Try_One_Interp): In an | |
6976 | instance, the operator is visible if an operand is of some | |
6977 | numeric type which is not in use or directly visible, and the | |
6978 | other operand is a numeric literal. | |
6979 | ||
6980 | 2012-02-22 Tristan Gingold <gingold@adacore.com> | |
6981 | ||
6982 | * init.c: Minor code clean up. | |
6983 | * gcc-interface/Make-lang.in: Update dependencies. | |
6984 | ||
6985 | 2012-02-22 Arnaud Charlet <charlet@adacore.com> | |
6986 | ||
6987 | * gnatlink.adb (Gnatlink): Use -gnatcC in CodePeer_Node, | |
6988 | otherwise GCC will generate an object file. | |
6989 | ||
6990 | 2012-02-22 Vincent Celier <celier@adacore.com> | |
6991 | ||
6992 | * projects.texi: Correct typo related to "**" in Source_Dirs. | |
6993 | ||
61aeebff | 6994 | 2012-02-22 Steve Baird <baird@adacore.com> |
6995 | ||
6996 | * sem_prag.adb (Analyze_PPC_In_Decl_Part): Clean up generation of | |
6997 | error message text. | |
6998 | ||
bb5dfacc | 6999 | 2012-02-22 Vincent Pucci <pucci@adacore.com> |
7000 | ||
7001 | * rtsfind.adb (Get_Unit_Name): Ada_Numerics_Child and | |
7002 | System_Dim_Child cases added. | |
7003 | * rtsfind.ads: Ada_Numerics, | |
7004 | Ada_Numerics_Generic_Elementary_Functions, System_Dim, | |
7005 | System_Dim_Float_IO and System_Dim_Integer_IO added to the list | |
7006 | of RTU_Id. Ada_Numerics_Child and System_Dim_Child added as | |
7007 | new RTU_Id subtypes. | |
7008 | * sem_dim.adb (Is_Dim_IO_Package_Entity): Use of | |
7009 | Rtsfind to verify the package entity is located either | |
7010 | in System.Dim.Integer_IO or in System.Dim.Float_IO. | |
7011 | (Is_Dim_IO_Package_Instantiation): Minor | |
7012 | changes. (Is_Elementary_Function_Call): Removed. | |
7013 | (Is_Elementary_Function_Entity): New routine. | |
7014 | (Is_Procedure_Put_Call): Is_Dim_IO_Package_Entity call added. | |
7015 | * snames.ads-tmpl: Name_Dim and Name_Generic_Elementary_Functions | |
7016 | removed. | |
7017 | ||
7018 | 2012-02-22 Vincent Pucci <pucci@adacore.com> | |
7019 | ||
7020 | * sem_prag.adb: Minor reformatting. | |
7021 | ||
7022 | 2012-02-22 Ed Schonberg <schonberg@adacore.com> | |
7023 | ||
7024 | * sem_ch3.adb (Find_Type_Name): When analyzing a private type | |
7025 | declaration that is the completion of a tagged incomplete type, do | |
7026 | not associate the class-wide type already created with the private | |
7027 | type to prevent order-of-elaboration issues in the back-end. | |
7028 | * exp_disp.adb (Find_Specific_Type): Find specific type of | |
7029 | a class-wide type, and handle the case of an incomplete type | |
7030 | coming either from a limited_with clause or from an incomplete | |
7031 | type declaration. Used when expanding a dispatchin call and | |
7032 | generating tag checks (minor refactoring). | |
7033 | ||
a58d632f | 7034 | 2012-02-22 Robert Dewar <dewar@adacore.com> |
7035 | ||
7036 | * exp_ch5.adb: Add comment. | |
7037 | * sem_ch12.adb, exp_ch6.adb: minor reformatting | |
7038 | ||
4e104ca3 | 7039 | 2012-02-22 Ed Schonberg <schonberg@adacore.com> |
7040 | ||
7041 | * freeze.adb (Freeze_Entity): Do not perform type layout within | |
7042 | a generic unit. | |
7043 | ||
7044 | 2012-02-22 Eric Botcazou <ebotcazou@adacore.com> | |
7045 | ||
7046 | * init.c (__gnat_error_handler) [Linux]: Map SIGBUS to | |
7047 | Storage_Error. | |
7048 | ||
7049 | 2012-02-22 Ed Schonberg <schonberg@adacore.com> | |
7050 | ||
7051 | * exp_ch5.adb (Expand_N_Assignment_Statement): Reject an | |
7052 | assignment to a classwide type whose type is limited, as | |
7053 | can happen in an instantiation in programs that run afoul or | |
7054 | AI05-0087. | |
7055 | ||
b3ba409d | 7056 | 2012-02-17 Ed Schonberg <schonberg@adacore.com> |
7057 | ||
7058 | * exp_ch6.adb (Legal_Copy): If layout is not | |
7059 | determined in the front-end, do not emit error message when | |
7060 | by-reference actual is potentially unaligned. | |
7061 | * gcc-interface/decl.c (gnat_to_gnu_field): Better error message for | |
7062 | illegal representation clause on tagged or aliased component, or on | |
7063 | by-reference type with forced alignment. | |
7064 | ||
7065 | 2012-02-17 Nicolas Roche <roche@adacore.com> | |
7066 | ||
7067 | * gcc-interface/Makefile.in: Ensure FORCE_DEBUG_ADAFLAGS variables is | |
7068 | propagated by gnatlib-sjlj and gnatlib-zcx targets. | |
7069 | * gcc-interface/Make-lang.in: Update dependencies. | |
7070 | ||
7071 | 2012-02-17 Thomas Quinot <quinot@adacore.com> | |
7072 | ||
7073 | * sem_ch12.adb (Analyze_Package_Instantiation): For an | |
7074 | instantiation in an RCI library unit, omit the instance body | |
7075 | if the RCI library unit is the instance itself (E.2.3(18)), | |
7076 | but include the body if the instantiation is within the RCI | |
7077 | declaration (12.3(12)). | |
7078 | ||
0fe91713 | 7079 | 2012-02-17 Steve Baird <baird@adacore.com> |
7080 | ||
7081 | * sem_prag.adb (Analyze_PPC_In_Decl_Part): Pre'Class and | |
7082 | Post'Class aspects can only be specified for a primitive operation | |
7083 | of a tagged type. | |
7084 | ||
0b0eb1f6 | 7085 | 2012-02-17 Yannick Moy <moy@adacore.com> |
7086 | ||
7087 | * gnat_rm.texi: Minor shuffling. | |
7088 | ||
7089 | 2012-02-17 Ed Schonberg <schonberg@adacore.com> | |
7090 | ||
7091 | * aspects.adb: Expression functions can carry pre/postconditions. | |
7092 | * par-ch6.adb (P_Subprogram): look for optional pre/postconditions | |
7093 | in an expression function. | |
7094 | * sem_prag (Check_Precondition_Postcondition): legal on expression | |
7095 | functions. | |
7096 | ||
7097 | 2012-02-17 Vincent Pucci <pucci@adacore.com> | |
7098 | ||
7099 | * a-cdlili.adb, a-cidlli.adb, a-cihama.adb, a-cimutr.adb, | |
7100 | * a-ciorma.adb, a-cohama.adb, a-coinve.adb, a-comutr.adb, | |
7101 | * a-convec.adb, a-coorma.adb (Adjust): New routine. | |
7102 | (Constant_Reference): Increment Busy and Lock counters. | |
7103 | (Reference): Increase Busy and Lock counters. | |
7104 | (Finalize): New routine. | |
7105 | * a-cihase.adb, a-ciorse.adb, a-cohase.adb, a-coorse.adb: | |
7106 | (Adjust): New routine. (Constant_Reference): Increment Busy | |
7107 | and Lock counters. | |
7108 | (Finalize): New routine. | |
7109 | * a-cdlili.ads, a-cidlli.ads, a-cihama.ads, a-cihase.ads, | |
7110 | * a-cimutr.ads, a-ciorma.ads, a-ciorse.ads, a-cohama.ads, | |
7111 | * a-cohase.ads, a-coinve.ads, a-comutr.ads, a-convec.ads, | |
7112 | * a-coorma.ads, a-coorse: Controlled component added to the | |
7113 | reference types. | |
7114 | ||
7115 | 2012-02-17 Robert Dewar <dewar@adacore.com> | |
7116 | ||
7117 | * restrict.adb (Check_Restriction): Add special handling for | |
7118 | No_Obsolescent_Features. | |
7119 | ||
7120 | 2012-02-17 Hristian Kirtchev <kirtchev@adacore.com> | |
7121 | ||
7122 | * exp_util.adb (Find_Finalize_Address): When dealing with an | |
7123 | internally built full view for a type with unknown discriminants, | |
7124 | use the original record type. | |
7125 | ||
5491cb1c | 7126 | 2012-02-17 Robert Dewar <dewar@adacore.com> |
7127 | ||
7128 | * sem_dim.adb: Minor reformatting. | |
7129 | ||
7130 | 2012-02-17 Yannick Moy <moy@adacore.com> | |
7131 | ||
7132 | * gnat_rm.texi: Minor rewording. | |
7133 | ||
6a84a367 | 7134 | 2012-02-17 Thomas Quinot <quinot@adacore.com> |
7135 | ||
7136 | * sem_aggr.adb: Minor reformatting. | |
7137 | ||
7138 | 2012-02-17 Robert Dewar <dewar@adacore.com> | |
7139 | ||
7140 | * gnat_ugn.texi: Update doc for -gnatw.m to include 2*x case. | |
7141 | ||
7142 | 2012-02-17 Vincent Pucci <pucci@adacore.com> | |
7143 | ||
7144 | * sem_dim.adb (Is_Dim_IO_Package_Entity): New routine. | |
7145 | (Is_Dim_IO_Package_Instantiation): Is_Dim_IO_Package_Entity | |
7146 | call added. | |
7147 | (Is_Procedure_Put_Call): Is_Dim_IO_Package_Entity | |
7148 | call added. | |
7149 | * s-dim.ads: Make package Pure. | |
7150 | ||
7151 | 2012-02-17 Gary Dismukes <dismukes@adacore.com> | |
7152 | ||
7153 | * prj-nmsc.adb: Minor reformatting. | |
7154 | ||
7155 | 2012-02-17 Yannick Moy <moy@adacore.com> | |
7156 | ||
7157 | * gnat_rm.texi: Update GNAT RM with a separate chapter on restrictions. | |
7158 | ||
5f31c6f3 | 7159 | 2012-02-17 Yannick Moy <moy@adacore.com> |
7160 | ||
7161 | * gnat_ugn.texi: Fix typos. | |
7162 | ||
7163 | 2012-02-17 Pascal Obry <obry@adacore.com> | |
7164 | ||
7165 | * prj-nmsc.adb: prj-nmsc.adb (Check_Aggregated): Check that an | |
7166 | aggregate is not Externally_Built. | |
7167 | ||
7168 | 2012-02-17 Ed Schonberg <schonberg@adacore.com> | |
7169 | ||
7170 | * sem_aggr.adb (Resolve_Record_Aggregate): If a composite | |
7171 | component has a box association, copy the default value using | |
7172 | the current scope as the scope of internal types, to prevent | |
7173 | scoping anomalies in gigi. | |
7174 | ||
09ad6da2 | 7175 | 2012-02-17 Robert Dewar <dewar@adacore.com> |
7176 | ||
7177 | * sem_dim.adb, sem_dim.ads, s-tasren.adb, prj.adb, prj.ads, freeze.adb, | |
7178 | sem_res.adb, exp_ch4.adb, sinput.adb, sinput.ads, exp_aggr.adb, | |
7179 | exp_intr.adb, s-os_lib.adb: Minor reformatting. | |
7180 | ||
7181 | 2012-02-17 Ed Schonberg <schonberg@adacore.com> | |
7182 | ||
7183 | * sem_ch6.adb (Is_Non_Overriding_Operation): Add warning if the | |
7184 | old operation is abstract, the relevant type is not abstract, | |
7185 | and the new subprogram fails to override. | |
7186 | ||
09188bfe | 7187 | 2012-02-15 Eric Botcazou <ebotcazou@adacore.com> |
7188 | ||
7189 | * gcc-interface/trans.c (Identifier_to_gnu): Move block retrieving the | |
7190 | type of the result to the end and execute it for a deferred constant of | |
7191 | a discriminated type whose full view can be elaborated statically. | |
7192 | ||
47219e5b | 7193 | 2012-02-15 Eric Botcazou <ebotcazou@adacore.com> |
7194 | ||
7195 | * gcc-interface/trans.c (gnat_to_gnu) <N_Qualified_Expression>: If the | |
7196 | type is tagged, mark it as used for debugging purposes. | |
7197 | <N_Allocator>: Likewise for a qualified expression. | |
7198 | ||
824ae42b | 7199 | 2012-02-15 Eric Botcazou <ebotcazou@adacore.com> |
7200 | ||
7201 | * gcc-interface/trans.c (call_to_gnu): Create the temporary for the | |
7202 | return value in the by-reference return type case if this isn't the | |
47219e5b | 7203 | expression of an object declaration. Tidy up. |
824ae42b | 7204 | |
f4a78d12 | 7205 | 2012-02-09 Tristan Gingold <gingold@adacore.com> |
7206 | ||
7207 | * gcc-interface/Makefile.in: Remove .sym rule (not used). | |
7208 | Remove adamsg.o object (requires native message compiler). | |
7209 | * init.c (CMA$_EXIT_THREAD, MTH$_FLOOVEMAT, SS$_INTDIV): Define as a | |
7210 | macro instead of as extern int. | |
7211 | (ADA$_ALREADY_OPEN, ADA$_CONSTRAINT_ERRO, ADA$_DATA_ERROR) | |
7212 | (ADA$_DEVICE_ERROR, ADA$_END_ERROR, ADA$_FAC_MODE_MISMAT) | |
7213 | (ADA$_IOSYSFAILED, ADA$_KEYSIZERR, ADA$_KEY_MISMATCH) | |
7214 | (ADA$_LAYOUT_ERROR, ADA$_LINEXCMRS, ADA$_MAXLINEXC) | |
7215 | (ADA$_MODE_ERROR, ADA$_MRN_MISMATCH, ADA$_MRS_MISMATCH) | |
7216 | (ADA$_NAME_ERROR, ADA$_NOT_OPEN, ADA$_ORG_MISMATCH) | |
7217 | (ADA$_PROGRAM_ERROR, ADA$_RAT_MISMATCH, ADA$_RFM_MISMATCH) | |
7218 | (ADA$_STAOVF, ADA$_STATUS_ERROR, ADA$_STORAGE_ERROR) | |
7219 | (ADA$_UNSUPPORTED, ADA$_USE_ERROR): Likewise. | |
7220 | (struct cond_except): Field cond is now an unsigned int. | |
7221 | (dec_ada_cond_except_table): Adjust. | |
7222 | (cond_except_table): Likewise. | |
7223 | (cond_resignal_table): Likewise. | |
7224 | (__gnat_default_resignal_p): Fix style. | |
7225 | ||
70db3df9 | 7226 | 2012-02-08 Vincent Celier <celier@adacore.com> |
7227 | ||
7228 | * gcc-interface/Make-lang.in: Add g-byorma.o to gnatbind objects | |
7229 | (g-buorma is now imported by sinput). | |
7230 | Update dependencies. | |
7231 | * scn.adb (Initialize_Scanner): Call Check_For_BOM | |
7232 | * sinput-p.adb (Source_File_Is_Subunit): Call Check_For_BOM | |
7233 | * sinput.adb: New procedure Check_For_BOM | |
7234 | * sinput.ads: New procedure Check_For_BOM | |
7235 | ||
7236 | 2012-02-08 Vincent Pucci <pucci@adacore.com> | |
7237 | ||
7238 | * impunit.adb: Dimension package names updated | |
7239 | * Makefile.rtl: s-dim added | |
7240 | * sem_dim.adb (Is_Procedure_Put_Call): minor changes | |
7241 | (Is_Dim_IO_Package_Instantiation): minor changes | |
7242 | * sem_dim.ads: minor changes in comments | |
7243 | * snames.ads-tmpl: Name_Dim added Name_Dim_Float_IO and | |
7244 | Name_Dim_Integer_IO removed | |
7245 | * s-dim.ads: New package. Define the dimension terminology. | |
7246 | * s-diflio.adb, s-diinio.adb, s-dimkio.ads, s-dimmks.ads, | |
7247 | * s-dmotpr.ads: Package names updated. | |
7248 | * s-diflio.ads, s-diinio.ads: Documentation added and package | |
7249 | names updated. | |
7250 | ||
7251 | 2012-02-08 Gary Dismukes <dismukes@adacore.com> | |
7252 | ||
7253 | * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): Revise test | |
7254 | for storage pools to test for an underlying record type rather than | |
7255 | testing Is_Tagged_Type, so that simple storage pools will be handled | |
7256 | the same as normal Ada storage pools. | |
7257 | ||
b15003c3 | 7258 | 2012-02-08 Yannick Moy <moy@adacore.com> |
7259 | ||
7260 | * gnat_rm.texi: Minor reshuffling to place restriction at | |
7261 | appropriate place. | |
7262 | ||
7263 | 2012-02-08 Bob Duff <duff@adacore.com> | |
7264 | ||
7265 | * warnsw.adb (Set_Warning_Switch): Set Warn_On_Suspicious_Modulus_Value | |
7266 | False for '-gnatwA', to suppress these warnings. | |
7267 | ||
7268 | 2012-02-08 Vincent Celier <celier@adacore.com> | |
7269 | ||
7270 | * sinput-p.adb (Source_File_Is_Subunit): Check for BOM before | |
7271 | starting to scan, so that UTF8 encoding is taken into account. | |
7272 | ||
7273 | 2012-02-08 Arnaud Charlet <charlet@adacore.com> | |
7274 | ||
7275 | * s-tasren.adb, s-tasren.ads (Internal_Complete_Rendezvous): New | |
7276 | function. | |
7277 | (Complete_Rendezvous): Now call Internal_Complete_Rendezvous. | |
7278 | (Exceptional_Complete_Rendezvous): Mark No_Return. | |
7279 | ||
7280 | 2012-02-08 Eric Botcazou <ebotcazou@adacore.com> | |
7281 | ||
7282 | * exp_aggr.adb (Compile_Time_Known_Composite_Value): | |
7283 | New predicate to compute whether a composite value can be | |
7284 | evaluated at compile time. | |
7285 | (Component_Not_OK_For_Backend): Use Compile_Time_Known_Value for all | |
7286 | expressions of elementary type and Compile_Time_Known_Composite_Value | |
7287 | for all other expressions. | |
7288 | (Expand_Record_Aggregate): Convert to assignments in the case | |
7289 | of a type with mutable components if the aggregate cannot be | |
7290 | built statically. | |
7291 | ||
7292 | 2012-02-08 Gary Dismukes <dismukes@adacore.com> | |
7293 | ||
7294 | * aspects.ads (type Aspect_Id): Add Simple_Storage_Pool_Type. | |
7295 | (Impl_Defined_Aspects): Add association for | |
7296 | Aspect_Simple_Storage_Pool_Type. | |
7297 | (Aspect_Names): Add | |
7298 | association for Aspect_Simple_Storage_Pool_Type. | |
7299 | * aspects.adb: | |
7300 | (Canonical_Aspect): Add association for Simple_Storage_Pool_Type. | |
7301 | * exp_attr.adb (Expand_N_Attribute_Reference): | |
7302 | Change name to Name_Simple_Storage_Pool_Type. | |
7303 | * exp_ch4.adb (Expand_N_Allocator): Change | |
7304 | name to Name_Simple_Storage_Pool_Type. | |
7305 | * exp_intr.adb (Expand_Unc_Deallocation): Change name to | |
7306 | Name_Simple_Storage_Pool_Type. * freeze.adb (Freeze_Entity): | |
7307 | Change names to Name_Simple_Storage_Pool_Type. * par-prag.adb: | |
7308 | Change names to Name_Simple_Storage_Pool_Type. * sem_attr.adb: | |
7309 | (Analyze_Attribute): Change name to Name_Simple_Storage_Pool_Type. | |
7310 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause): | |
7311 | Change name to Name_Simple_Storage_Pool_Type. | |
7312 | * sem_prag.adb: | |
7313 | (Analyze_Pragma): Change name to Name_Simple_Storage_Pool_Type. | |
7314 | (Sig_Flags): Change name to Name_Simple_Storage_Pool_Type. | |
7315 | * sem_res.adb (Resolve_Allocator): Change name to | |
7316 | Name_Simple_Storage_Pool_Type. * snames.ads-tmpl: | |
7317 | (Name_Simple_Storage_Pool_Type): New name constant. | |
7318 | (type Pragma_Id): Change name to Name_Simple_Storage_Pool_Type and | |
7319 | move to main pragma section because it no longer matches the | |
7320 | attribute name. | |
7321 | * snames.adb-tmpl (Get_Pragma_Id): Remove test for | |
7322 | Name_Simple_Storage_Pool. | |
7323 | (Is_Pragma_Name): Remove test for Name_Simple_Storage_Pool. | |
7324 | ||
7325 | 2012-02-08 Robert Dewar <dewar@adacore.com> | |
7326 | ||
7327 | * gnat_ugn.texi: Add some clarification to -gnatwA and -gnatws. | |
7328 | ||
2006ed41 | 7329 | 2012-02-08 Pascal Obry <obry@adacore.com> |
7330 | ||
7331 | * prj.adb (Compute_All_Imported_Projects): Use new | |
7332 | For_Project_And_Aggregated_Context to ensure proper context is | |
7333 | used for encapsulated aggregate libraries. | |
7334 | * prj-proc.adb (Recursive_Process): Call | |
7335 | Process_Aggregated_Projects earlier to ensure that all dependent | |
7336 | projects are set with the proper encapsulated status. | |
7337 | ||
7338 | 2012-02-08 Pascal Obry <obry@adacore.com> | |
7339 | ||
7340 | * s-os_lib.adb (Normalize_Arguments): Properly escape last \ in null | |
7341 | terminated string. | |
7342 | ||
51d8eafc | 7343 | 2012-02-08 Pascal Obry <obry@adacore.com> |
7344 | ||
7345 | * prj.ads, prj.adb (For_Project_And_Aggregated_Context): New | |
7346 | generic routine with a context parameter. | |
7347 | ||
b55f7641 | 7348 | 2012-02-08 Robert Dewar <dewar@adacore.com> |
7349 | ||
7350 | * a-coinve.adb, sem_util.adb, sem_ch8.adb, a-cobove.adb, | |
7351 | a-convec.adb: Minor reformatting and code reorganization. | |
7352 | ||
7353 | 2012-02-08 Steve Baird <baird@adacore.com> | |
7354 | ||
7355 | * sem_cat.adb (In_Preelaborated_Unit): A child | |
7356 | unit instantiation does not inherit preelaboration requirements | |
7357 | from its parent. | |
7358 | ||
7359 | 2012-02-08 Gary Dismukes <dismukes@adacore.com> | |
7360 | ||
7361 | * aspects.ads (type Aspect_Id): Add Aspect_Simple_Storage_Pool. | |
7362 | (Impl_Defined_Aspects): Add entry for Aspect_Simple_Storage_Pool. | |
7363 | (Aspect_Argument): Add Name entry for Aspect_Simple_Storage_Pool. | |
7364 | (Aspect_Names): Add entry for Aspect_Simple_Storage_Pool. | |
7365 | * aspects.adb (Canonical_Aspect): Add entry for | |
7366 | Aspect_Simple_Storage_Pool. | |
7367 | * exp_attr.adb (Expand_N_Attribute_Reference): Handle case of | |
7368 | Attribute_Simple_Storage_Pool in the same way as Storage_Pool | |
7369 | (add conversion, analyze/resolve). For the Storage_Size attribute, | |
7370 | for the simple pool case, locate and use the simple pool type's | |
7371 | Storage_Size function (if any), otherwise evaluate to zero. | |
7372 | * exp_ch4.adb (Expand_N_Allocator): In the case of an allocator | |
7373 | for an access type with an associated simple storage pool, | |
7374 | locate and use the pool type's Allocate. | |
7375 | * exp_intr.adb (Expand_Unc_Deallocation): In the case where the | |
7376 | access type has a simple storage pool, locate the pool type's | |
7377 | Deallocate procedure (if present) and use it as the procedure | |
7378 | to call on the Free operation. | |
7379 | * freeze.adb (Freeze_Entity): In the case of a full type for | |
7380 | a private type defined with pragma Simple_Storage_Pool, check | |
7381 | that the full type is also appropriate for the pragma. For | |
7382 | a simple storage pool type, validate that the operations | |
7383 | Allocate, Deallocate (if present), and Storage_Size | |
7384 | (if present) are defined with appropriate expected profiles. | |
7385 | (Validate_Simple_Pool_Op_Formal): New procedure | |
7386 | (Validate_Simple_Pool_Operation): New procedure Add with and | |
7387 | use of Rtsfind. | |
7388 | * par-prag.adb: Add Pragma_Simple_Storage_Pool to case statement | |
7389 | (no action required). | |
7390 | * sem_attr.adb (Analyze_Attribute): For the case of the | |
7391 | Storage_Pool attribute, give a warning if the prefix type has an | |
7392 | associated simple storage pool, and rewrite the attribute as a | |
7393 | raise of Program_Error. In the case of the Simple_Storage_Pool | |
7394 | attribute, check that the prefix type has an associated simple | |
7395 | storage pool, and set the attribute type to the pool's type. | |
7396 | * sem_ch13.adb (Analyze_Aspect_Specifications): Add | |
7397 | Aspect_Simple_Storage_Pool case choice. | |
7398 | (Analyze_Attribute_Definition_Clause): Add | |
7399 | Aspect_Simple_Storage_Pool to case for Ignore_Rep_Clauses | |
7400 | (no action). Add handling for Simple_Storage_Pool attribute | |
7401 | definition, requiring the name to denote a simple storage pool | |
7402 | object. | |
7403 | (Check_Aspect_At_Freeze_Point): For a simple storage pool | |
7404 | aspect, set the type to that of the name specified for the aspect. | |
7405 | * sem_prag.adb (Analyze_Pragma): Add handling for pragma | |
7406 | Simple_Storage_Pool, requiring that it applies to a library-level | |
7407 | type declared in a package declaration that is a limited private | |
7408 | or limited record type. | |
7409 | * sem_res.adb (Resolve_Allocator): Flag an attempt to call a | |
7410 | build-in-place function in an allocator for an access type with | |
7411 | a simple storage pool as unsupported. | |
7412 | * snames.ads-tmpl: Add Name_Simple_Storage_Pool. | |
7413 | (type Attribute_Id): Add Attribute_Simple_Storage_Pool. | |
7414 | (type Pragma_Id): Add Pragma_Simple_Storage_Pool. | |
7415 | * snames.adb-tmpl (Get_Pragma_Id): Handle case of | |
7416 | Name_Simple_Storage_Pool. | |
7417 | (Is_Pragma_Name): Return True for Name_Simple_Storage_Pool. | |
7418 | ||
7419 | 2012-02-08 Cyrille Comar <comar@adacore.com> | |
7420 | ||
7421 | * projects.texi: Clarify doc for interfaces. | |
7422 | ||
346b8434 | 7423 | 2012-02-07 Eric Botcazou <ebotcazou@adacore.com> |
7424 | ||
7425 | * gcc-interface/Make-lang.in (GCC_LINKERFLAGS): New variable. | |
7426 | (GCC_LINK): Use it. | |
7427 | ||
2a0abb3a | 7428 | 2012-02-01 Tristan Gingold <gingold@adacore.com> |
7429 | ||
7430 | * gcc-interface/trans.c (Loop_Statement_to_gnu): Use sizetype | |
7431 | instead of size_type_node. | |
7432 | ||
62b2aa7d | 7433 | 2012-01-30 Nicolas Roche <roche@adacore.com> |
7434 | ||
7435 | * gcc-interface/Make-lang.in: Update dependencies. | |
7436 | * gcc-interface/Makefile.in: Use system-vxworks-system-ppc-mils.ads | |
7437 | when needed. | |
7438 | Remove Linker_Options -crtbe when building sjlj run-time. | |
7439 | ||
9deff044 | 7440 | 2012-01-30 Robert Dewar <dewar@adacore.com> |
7441 | ||
7442 | * sem.adb (Analyze): Call Analyze_Mod for N_Op_Mod mode. | |
7443 | * sem_ch3.adb (Modular_Type_Declaration): Warn on mod value of | |
7444 | form 2 * small-literal. | |
7445 | * sem_ch4.adb (Analyze_Mod): New procedure (warn on suspicious | |
7446 | mod value). | |
7447 | * sem_ch4.ads (Analyze_Mod): New procedure. | |
7448 | ||
7449 | 2012-01-30 Ed Schonberg <schonberg@adacore.com> | |
7450 | ||
7451 | * sem_ch6.adb: sem_ch6.adb (Analyze_Expression_Function): Copy | |
7452 | types and return expression when building spec for implicit | |
7453 | body, to preserve global references that may be present in an | |
7454 | instantiation. | |
7455 | ||
7456 | 2012-01-30 Matthew Heaney <heaney@adacore.com> | |
7457 | ||
7458 | * a-convec.adb, a-coinve.adb, a-cobove.adb (Sort, | |
7459 | Reverse_Elements): Check for cursor tampering. | |
7460 | ||
7461 | 2012-01-30 Ed Schonberg <schonberg@adacore.com> | |
7462 | ||
7463 | * sem_util.adb (Is_Fully_Initialized_Type): In Ada 2012, a | |
7464 | type with aspect Default_Value or Default_Component_Value is | |
7465 | fully initialized, and use of variables of such types do not | |
7466 | generate warnings. | |
7467 | ||
7468 | 2012-01-30 Javier Miranda <miranda@adacore.com> | |
7469 | ||
7470 | PR ada/15846 | |
7471 | * sem_ch8.adb (Analyze_Subprogram_Renaming): | |
7472 | Handle self-renaming when the renamed entity is referenced using | |
7473 | its expanded name. | |
7474 | ||
7475 | 2012-01-30 Vincent Celier <celier@adacore.com> | |
7476 | ||
7477 | * projects.texi: Add documentation for attribute Interfaces. | |
7478 | ||
516da07f | 7479 | 2012-01-30 Hristian Kirtchev <kirtchev@adacore.com> |
7480 | ||
7481 | * exp_ch7.adb (Build_Finalizer_Call): Set loc again. | |
7482 | * exp_ch11.adb (Expand_At_End_Handler): Do not provide a source | |
7483 | location for the wrapped call to the original AT_END routine | |
7484 | and the subsequent return statement. | |
7485 | ||
7486 | 2012-01-30 Pascal Obry <obry@adacore.com> | |
7487 | ||
7488 | * s-rannum.adb: Minor reformatting. | |
7489 | ||
7490 | 2012-01-30 Hristian Kirtchev <kirtchev@adacore.com> | |
7491 | ||
7492 | * a-calend-vms.adb, a-calend.adb: Increment the number of leap seconds | |
7493 | to 25 and add the hard time value for 2012-06-30. | |
7494 | ||
30fe3fdc | 7495 | 2012-01-30 Robert Dewar <dewar@adacore.com> |
7496 | ||
7497 | * a-strhas.ads, einfo.adb, einfo.ads, exp_ch7.adb, exp_ch9.adb, | |
7498 | freeze.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-proc.adb, s-llflex.ads, | |
7499 | s-ransee.adb, s-ransee.ads, sem_ch13.adb, sem_dim.adb, sem_prag.adb: | |
7500 | Minor reformatting/code reorganization. | |
7501 | ||
27121718 | 7502 | 2012-01-30 Thomas Quinot <quinot@adacore.com> |
7503 | ||
7504 | * s-rannum.adb, s-ransee.adb, s-ransee.ads (Get_Seed): Return | |
7505 | Unsigned_64 rather than Duration. | |
7506 | (System.Random_Numbers.Reset): Use full value of seed | |
7507 | (do not truncate sub-second bits). | |
7508 | ||
7509 | 2012-01-30 Thomas Quinot <quinot@adacore.com> | |
7510 | ||
7511 | * sem_cat.adb, sem_ch12.adb: Minor reformatting. | |
7512 | ||
7b9b2f05 | 7513 | 2012-01-30 Yannick Moy <moy@adacore.com> |
7514 | ||
7515 | * gnat_ugn.texi: Minor correction of GNAT UG, to take into | |
7516 | account changes to -gnatwa and more recent warnings. | |
7517 | ||
7518 | 2012-01-30 Hristian Kirtchev <kirtchev@adacore.com> | |
7519 | ||
7520 | * exp_ch7.adb (Build_Finalizer_Call): Do not provide a source | |
7521 | location when creating a call to a finalizer. | |
7522 | * exp_ch11.adb (Expand_Exception_Handlers): Do not provide | |
7523 | a source location for the first actual of Save_Occurrence for | |
7524 | consistency sake. | |
7525 | ||
7526 | 2012-01-30 Ed Schonberg <schonberg@adacore.com> | |
7527 | ||
7528 | * einfo.ads, einfo,adb: New attribute on scalar types: | |
7529 | Default_Aspect_Value New attribute on array types: | |
7530 | Default_Aspect_Component_Value Move attribute Related_Array_Object | |
7531 | to a different position to accomodate new aspect attributes. | |
7532 | * freeze.adb (Freeze_Entity): Use new attributes to retrieve value | |
7533 | of defaults set with an aspect specification, rather than using | |
7534 | the list of aspects attached to the type, to prevent issues with | |
7535 | partial views. | |
7536 | * sem_ch13.adb (Analyze_Aspect_Specifications): For aspects | |
7537 | Default_Value and Default_Component _Value, store corresponding | |
7538 | expression in type entity. | |
7539 | (Check_Aspect_At_End_Of_Declaration): If the default aspects | |
7540 | are declared on the full view, use the full view to resolve the | |
7541 | correseponding expression. | |
7542 | * exp_ch3.adb (Init_Component): Use attribute | |
7543 | Default_Aspect_Component_Value to perform default initialization, | |
7544 | rather than relying on the rep item list for the type. | |
7545 | (Get_Simple_Init_Val): Ditto. | |
7546 | ||
013c9832 | 7547 | 2012-01-30 Thomas Quinot <quinot@adacore.com> |
7548 | ||
7549 | * a-strhas.ads: Document risk of collision attack. | |
7550 | ||
7551 | 2012-01-30 Yannick Moy <moy@adacore.com> | |
7552 | ||
7553 | * gnat_ugn.texi: Minor update wrt warning switches. | |
7554 | ||
9f64ee09 | 7555 | 2012-01-30 Vincent Celier <celier@adacore.com> |
7556 | ||
7557 | * prj-nmsc.adb (Check_Interfaces): Report an error when a | |
7558 | unit from Library_Interface is not a unit of the project. | |
7559 | ||
7560 | 2012-01-30 Vincent Pucci <pucci@adacore.com> | |
7561 | ||
7562 | * sem_prag.adb (Make_Aspect_For_PPC_In_Gen_Sub_Decl): Parent | |
7563 | links fixed inside PPC pragmas. | |
7564 | * sem_ch12.adb: Move call to Make_Aspect_For_PPC_In_Gen_Sub_Decl. | |
7565 | ||
7566 | 2012-01-30 Thomas Quinot <quinot@adacore.com> | |
7567 | ||
7568 | * s-ransee.ads: Minor reformatting. | |
7569 | ||
9f269bd8 | 7570 | 2012-01-30 Pascal Obry <obry@adacore.com> |
7571 | ||
7572 | * prj.ads, prj.adb (For_Each_Source): Add support for skipping | |
7573 | sources coming from an encapsulated library. | |
7574 | ||
7575 | 2012-01-30 Ed Schonberg <schonberg@adacore.com> | |
7576 | ||
7577 | * sem_ch3.adb (Process-Full_View): fix typo. | |
7578 | * sem_ch13.adb (Aalyze_Aspect_Specifications): if predicates | |
7579 | appear on a private type and the full view is available, ensure | |
7580 | existence of freeze node for full view. | |
7581 | (Build_Predicate_Function): Attach predicate function to both | |
7582 | views of a private type. | |
7583 | ||
7584 | 2012-01-30 Vincent Celier <celier@adacore.com> | |
7585 | ||
7586 | * prj-nmsc.adb (Check_Interfaces): Compute the Lib_Interface_ALIs | |
7587 | for the project if either attribute Library_Interface or | |
7588 | Interfaces is declared. | |
7589 | (Check_Stand_Alone_Library): Use Lib_Interface_ALIs computed in | |
7590 | Check_Interfaces. | |
7591 | ||
a82d9bf4 | 7592 | 2012-01-30 Pascal Obry <obry@adacore.com> |
7593 | ||
7594 | * prj-proc.adb (Recursive_Process): Set From_Encapsulated_Lib | |
7595 | boolean value to true in the process list created by this routine. | |
7596 | * prj.ads (Project_List_Element): New field From_Encapsulated_Lib. | |
7597 | Continued work for KA06-021. | |
7598 | * prj.adb (Compute_All_Imported_Projects): Set | |
7599 | From_Encapsulated_Lib boolean flag. | |
7600 | ||
caad910a | 7601 | 2012-01-30 Vincent Pucci <pucci@adacore.com> |
7602 | ||
7603 | * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Minor | |
7604 | code clean up. | |
7605 | * s-diflio.ads: Minor change. | |
7606 | ||
7607 | 2012-01-30 Javier Miranda <miranda@adacore.com> | |
7608 | ||
7609 | * exp_ch9.adb (Build_Dispatching_Requeue): Add missing call | |
7610 | to Get_Entry_Index. Required to generate code which provides | |
7611 | the correct value of Entry_Index in the target entry. | |
7612 | ||
7613 | 2012-01-30 Nicolas Roche <roche@adacore.com> | |
7614 | ||
7615 | * system-vxworks-ppc.ads: Add pragma Linker_Options -crtbe to | |
7616 | fix issue with zcx on VxWorks5. | |
7617 | ||
7618 | 2012-01-30 Pascal Obry <obry@adacore.com> | |
7619 | ||
7620 | * prj.ads, prj.adb (For_Every_Project_Imported): Remove | |
7621 | In_Aggregate_Lib. | |
7622 | (For_Every_Project_Imported_Context): New generic routine with | |
7623 | a context parameter. | |
7624 | * prj-nmsc.adb: Revert to use For_Every_Project_Imported Avoid | |
7625 | distributed complexity. | |
7626 | * prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb: Ditto. | |
7627 | ||
04e29e1d | 7628 | 2012-01-30 Thomas Quinot <quinot@adacore.com> |
7629 | ||
7630 | * exp_aggr.adb (Expand_Record_Aggregate): After creating the | |
7631 | _parent aggregate for an extension aggregate, check whether it | |
7632 | requires delayed (top-down) expansion. | |
7633 | ||
7634 | 2012-01-30 Vincent Pucci <pucci@adacore.com> | |
7635 | ||
7636 | * sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Rewritten. | |
7637 | * snames.ads-tmpl: Name_Item and Name_Symbols added. | |
7638 | * s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads: Rename | |
7639 | and change the position of parameter Symbols in every Put routine. | |
7640 | * s-dimmks.ads: Convert long float type Mks_Type into long | |
7641 | long float. | |
7642 | * s-llflex.ads: Modifications in comments. | |
7643 | ||
7644 | 2012-01-30 Hristian Kirtchev <kirtchev@adacore.com> | |
7645 | ||
7646 | * sem_ch12.adb (Earlier): Do not use the | |
7647 | top level source locations of the two input nodes. | |
7648 | ||
daa6a3ae | 7649 | 2012-01-30 Robert Dewar <dewar@adacore.com> |
7650 | ||
7651 | * einfo.ads, sem_prag.adb, sem_attr.adb, aspects.ads, | |
7652 | sem_cat.adb, sem_aggr.adb, exp_aggr.adb: Minor reformatting. | |
7653 | ||
14cf7fa7 | 7654 | 2012-01-30 Robert Dewar <dewar@adacore.com> |
7655 | ||
7656 | * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting. | |
7657 | ||
7658 | 2012-01-30 Olivier Hainque <hainque@adacore.com> | |
7659 | ||
7660 | * sigtramp-ppcvxw.c (CFI_COMMON_REGS): Add rule for r1 back + | |
7661 | comments. | |
7662 | ||
7663 | 2012-01-30 Thomas Quinot <quinot@adacore.com> | |
7664 | ||
7665 | * gnat_rm.texi, sem_dist.adb, sem_dist.ads, einfo.ads, sem_prag.adb, | |
7666 | sem_ch12.adb, sem_attr.adb, aspects.adb, aspects.ads, par-prag.adb, | |
7667 | sem_cat.adb, snames.ads-tmpl (Sem_Dist.Is_Valid_Remote_Object_Type): | |
7668 | New subprogram (extracted from | |
7669 | Sem_Cat.Validate_Remote_Access_Object_Type_Declaration). | |
7670 | (Einfo.Is_Remote_Types): Now applies to generic types. Update | |
7671 | documentation accordingly. | |
7672 | (Sem_Ch12.Analyze_Associations): A RACW type is acceptable as | |
7673 | actual for a formal type to which a pragma Remote_Access_Type | |
7674 | applies. | |
7675 | (Aspects, Par.Prag, Sem_Prag): Support for new pramga/aspect | |
7676 | Remote_Access_Type. | |
7677 | (Sem_Attr.Analyze_Attribute, case Stub_Type): Attribute can | |
7678 | be applied to a generic type if pragma Remote_Access_Type | |
7679 | applies, in which case the type of the attribute is | |
7680 | System.Partition_Interface.RACW_Stub_Type. | |
7681 | ||
bfa2a0ba | 7682 | 2012-01-27 Eric Botcazou <ebotcazou@adacore.com> |
7683 | ||
7684 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Do not set | |
7685 | an alignment on fields of the RETURN type built for the CICO mechanism. | |
7686 | ||
0c1dfc4b | 7687 | 2012-01-27 Eric Botcazou <ebotcazou@adacore.com> |
7688 | ||
7689 | * gcc-interface/trans.c (gnat_to_gnu): Avoid making a SAVE_EXPR for | |
7690 | a call to a function that returns an unconstrained type with default | |
bfa2a0ba | 7691 | discriminant. Similarly, avoid doing the conversion to the nominal |
0c1dfc4b | 7692 | result type in this case. |
7693 | ||
587b5d75 | 7694 | 2012-01-27 Eric Botcazou <ebotcazou@adacore.com> |
7695 | ||
7696 | * gcc-interface/ada-tree.h (DECL_ALIASED_P): New flag. | |
7697 | * gcc-interface/decl.c (is_variable_size): Rename to... | |
7698 | (type_has_variable_size): ...this. | |
7699 | (adjust_packed): Adjust to above renaming. | |
7700 | (gnat_to_gnu_field): Set DECL_ALIASED_P on the field. | |
7701 | (field_is_artificial): New predicate. | |
7702 | (field_is_aliased): Likewise. | |
7703 | (field_has_self_size): Likewise. | |
7704 | (field_has_variable_size): Likewise. | |
7705 | (components_to_record): Record information for the final layout during | |
7706 | the first pass on fields. | |
7707 | If there is an aliased field placed after a field whose length depends | |
7708 | on discriminants, put all the fields of the latter sort, last. | |
7709 | ||
15bd2796 | 7710 | 2012-01-27 Eric Botcazou <ebotcazou@adacore.com> |
7711 | ||
7712 | * gcc-interface/gigi.h (get_minimal_subprog_decl): Declare. | |
7713 | * gcc-interface/decl.c (get_minimal_subprog_decl): New function. | |
7714 | * gcc-interface/trans.c (Attribute_to_gnu): Use it for the prefix of an | |
7715 | Access-like attribute in a dispatch table if the subprogram is public. | |
7716 | ||
7e9d30ae | 7717 | 2012-01-27 Eric Botcazou <ebotcazou@adacore.com> |
7718 | ||
7719 | * gcc-interface/gigi.h (create_label_decl): Adjust. | |
7720 | * gcc-interface/utils.c (create_label_decl): Add GNAT_NODE parameter | |
7721 | and invoke gnat_pushdecl on it. Remove obsolete settings. | |
7722 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Label>: Adjust call to | |
7723 | create_label_decl. | |
7724 | * gcc-interface/trans.c (gnat_to_gnu) <N_Null): Likewise. Ignore the | |
7725 | label for debugging purposes. | |
7726 | ||
48954d78 | 7727 | 2012-01-27 Eric Botcazou <ebotcazou@adacore.com> |
7728 | ||
7729 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: For an aliased | |
7730 | object with an unconstrained nominal subtype and if optimization isn't | |
7731 | enabled, create a special VAR_DECL for debugging purposes. | |
7732 | ||
4db325e6 | 7733 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7734 | ||
7735 | * sem_prag.ads, sem_prag.adb: Minor reformatting. | |
7736 | ||
7737 | 2012-01-23 Robert Dewar <dewar@adacore.com> | |
7738 | ||
7739 | * sem_ch13.adb (Analyze_Aspect_Specifications): Check for | |
7740 | language defined aspect applied to renaming or formal type | |
7741 | declaration (not permitted) | |
7742 | ||
7743 | 2012-01-23 Matthew Heaney <heaney@adacore.com> | |
7744 | ||
7745 | * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb (Vet): Replaced | |
7746 | comment with pragma Assert. | |
7747 | ||
cf46479c | 7748 | 2012-01-23 Vincent Pucci <pucci@adacore.com> |
7749 | ||
7750 | * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Call | |
7751 | to Make_Aspect_For_PPC_In_Gen_Sub_Decl added in ASIS mode. | |
7752 | * sem_prag.adb, sem_prag.ads (Make_Aspect_For_PPC_In_Gen_Sub_Decl): New | |
7753 | routine. In ASIS mode, convert any PPC pragmas into aspects in generic | |
7754 | subprogram declaration in order to enable the analysis of PPC boolean | |
7755 | expressions. | |
7756 | ||
24f0ba72 | 7757 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7758 | ||
7759 | * sem_ch3.adb (Analyze_Object_Declaration): Properly | |
7760 | handle Current_Value for volatile variables (also propagate | |
7761 | Treat_As_Volatile from type to object). | |
7762 | ||
7763 | 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com> | |
7764 | ||
7765 | * sem_ch12.adb (Install_Body): Detect the case | |
7766 | where the enclosing context is a package with a stub body that | |
7767 | has already been replaced by the actual body. In such cases, | |
7768 | the freeze node for the enclosing context must be inserted after | |
7769 | the real body. | |
7770 | ||
7771 | 2012-01-23 Ed Schonberg <schonberg@adacore.com> | |
7772 | ||
7773 | * sem_prag.adb (Analyze_Pragma, case Debug): Freeze the called | |
7774 | subprogram before expanding the pragma into an if-statement with | |
7775 | a block, to ensure that when the subprogram is null its body is | |
7776 | properly generated before expansion. | |
7777 | ||
362e5ece | 7778 | 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com> |
7779 | ||
7780 | * sem_ch12.adb (Analyze_Associations): Alphabetize local variables and | |
7781 | constants. Rename Actual_Types to Actuals_To_Freeze. Rename Next_Formal | |
7782 | to Saved_Formal. | |
7783 | Freeze all eligible subprograms which appear as actuals in | |
7784 | the instantiation. | |
7785 | (Has_Fully_Defined_Profile): New routine. | |
7786 | (Renames_Standard_Subprogram): New routine. | |
7787 | (Earlier): Add local variable N. Comment update. Do not use source | |
7788 | locations when trying to determine whether one node precedes another. | |
7789 | ||
7790 | 2012-01-23 Gary Dismukes <dismukes@adacore.com> | |
7791 | ||
7792 | * exp_ch4.adb (Expand_Concatenate): In the case | |
7793 | where the result of a concatentation can be null, set the to | |
7794 | result have both the low and high bounds of the right operand (not | |
7795 | just the high bound, as was the case prior to this fix). Also, | |
7796 | fix the saved high bound setting (Last_Opnd_High_Bound) in the | |
7797 | empty string literal case (should have been low bound minus one, | |
7798 | rather than plus one). | |
7799 | ||
7800 | 2012-01-23 Thomas Quinot <quinot@adacore.com> | |
7801 | ||
7802 | * scos.ads, put_scos.adb, get_scos.adb (Get_SCOs, Put_SCOs): Do not | |
7803 | omit statement SCOs for disabled pragmas. | |
7804 | ||
dee4c239 | 7805 | 2012-01-23 Matthew Heaney <heaney@adacore.com> |
7806 | ||
7807 | * a-cohase.ads, a-cihase.ads, a-cbhase.ads, a-coorse.ads, | |
7808 | a-ciorse.ads, a-cborse.ads, a-cohama.ads, a-cihama.ads, a-cbhama.ads, | |
7809 | a-coorma.ads, a-ciorma.ads, a-cborma.ads, a-cdlili.ads, a-cidlli.ads, | |
7810 | a-cbdlli.ads, a-convec.ads, a-coinve.ads, a-cobove.ads (Cursor'Read, | |
7811 | Cursor'Write): Declare in private part. | |
7812 | (Reference_Type'Read, Reference_Type'Write): Ditto. | |
7813 | (Constant_Reference_Type'Read, Constant_Reference_Type'Write): Ditto. | |
7814 | ||
25122b4c | 7815 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7816 | ||
7817 | * a-catizo.ads, a-calend.adb, a-calend.ads, par-ch13.adb: Minor | |
7818 | reformatting. | |
7819 | ||
98108069 | 7820 | 2012-01-23 Ed Schonberg <schonberg@adacore.com> |
7821 | ||
7822 | * sem_ch6.adb (Analyze_Subprogram_Declaration): Do not set the | |
7823 | Corresponding_Body on a defaulted null formal subprogram. | |
7824 | * sem_ch12.adb (Check_Formal_Package_Instance): No check needed | |
7825 | on a defaulted formal subprogram that is a null procedure. | |
7826 | ||
7827 | 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com> | |
7828 | ||
7829 | * exp_ch9.adb: Update the comments involving pragma Implemented. | |
7830 | * sem_ch3.adb (Check_Pragma_Implemented (Entity_Id)): Add local | |
7831 | constant Subp_Alias and local variable Impl_Subp. Properly | |
7832 | handle aliases of synchronized wrappers. Code cleanup. | |
7833 | (Check_Pragma_Implemented (Entity_Id; Entity_Id)): Add | |
7834 | Name_Optional as part of the condition. | |
7835 | * sem_prag.adb (Analyze_Pragma): Add "Optional" as one of the | |
7836 | valid choices of implementation kind. | |
7837 | (Check_Arg_Is_One_Of): New routine. | |
7838 | * snames.ads-tmlp: Add Name_Optional. | |
7839 | ||
7840 | 2012-01-23 Ed Schonberg <schonberg@adacore.com> | |
7841 | ||
7842 | * par-ch13.adb: Better error recovery in illegal aspect | |
7843 | specification. | |
7844 | ||
7845 | 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com> | |
7846 | ||
7847 | * a-calend.adb: Add with clause for Interfaces.C. Add constant | |
7848 | Unix_Max. | |
7849 | (Day_Of_Week): Call the internal UTC_Time_Offset. | |
7850 | (Split): Call the internal UTC_Time_Offset. | |
7851 | (Time_Of): Call the internal UTC_Time_Offset. | |
7852 | (Time_Zone_Operations.UTC_Time_Offset): Call internal UTC_Time_Offset. | |
7853 | (UTC_Time_Offset): New library-level routine. | |
7854 | * a-calend.ads (UTC_Time_Offset): Remove parameter | |
7855 | Is_Historic. Update related comment on usage. | |
7856 | * a-catizo.adb (UTC_Time_Offset): Removed. | |
7857 | (UTC_Time_Offset (Time)): Call Time_Zone_Operations.UTC_Time_Offset. | |
7858 | * a-caltizo.ads (UTC_Time_Offset): Removed. | |
7859 | (UTC_Time_Offset (Time)): Add back the default expression of parameter | |
7860 | Date. | |
7861 | ||
f65e883c | 7862 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7863 | ||
7864 | * sprint.ads, sprint.adb (Sprint_Node_List): Add New_Lines parameter | |
7865 | (pg,po,ps): Make sure each entry starts on new line. | |
7866 | ||
7867 | 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com> | |
7868 | ||
7869 | * a-calend.ads, a-calend.adb: Define types int and int_Pointer. Update | |
7870 | the parameter profile of procedure localtime_tzoff and its associated | |
7871 | comment. | |
7872 | (Day_Of_Week): Do not treat the input date as historical | |
7873 | with respect to time zones. | |
7874 | (Split): Do not treat the input | |
7875 | date as historical with respect to time zones. (Time_Of): Do | |
7876 | not treat the input constituents as forming a historical date | |
7877 | with respect to time zones. | |
7878 | (UTC_Time_Offset): Add new formal | |
7879 | parameter Is_Historic. Add local variable Flag. Update the call | |
7880 | to localtime_tzoff. | |
7881 | * a-catizo.ads, a-catizo.adb (UTC_Time_Offset): New routine. | |
7882 | (UTC_Time_Offset (Time)): Update the call to | |
7883 | Time_Zone_Operations.UTC_Time_Offset. | |
7884 | * sysdep.c (__gnat_localtime_tzoff): Update parameter | |
7885 | profile. Split the processing of offsets on Windows into two - one | |
7886 | part of historic time stamps and the other for the current time. | |
7887 | ||
6d852e2b | 7888 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7889 | ||
7890 | * a-calend.adb: Minor reformatting. | |
7891 | ||
7892 | 2012-01-23 Ed Schonberg <schonberg@adacore.com> | |
7893 | ||
7894 | * exp_ch9.adb, sem_ch9.adb: Handle array of access to synchronized | |
7895 | interface in requeue statement. | |
7896 | ||
7897 | 2012-01-23 Cyrille Comar <comar@adacore.com> | |
7898 | ||
7899 | * projects.texi: Remove references to main units and replace | |
7900 | with references to main programs to be coherent with the | |
7901 | documentation. | |
7902 | ||
cb9cb2d7 | 7903 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7904 | ||
7905 | * s-utf_32.adb: Minor reformatting. | |
7906 | ||
7907 | 2012-01-23 Vincent Celier <celier@adacore.com> | |
7908 | ||
7909 | * snames.ads-tmpl: Minor comment addition Indicate that | |
7910 | Name_Library_Encapsulated_Options is only used in gprbuild. | |
7911 | ||
49213728 | 7912 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7913 | ||
7914 | * sem_ch10.adb (Analyze_Subunit): Properly save/restore cunit | |
7915 | restrictions. | |
7916 | ||
7917 | 2012-01-23 Ed Schonberg <schonberg@adacore.com> | |
7918 | ||
7919 | * snames.ads-tmpl: Add Name_Synchronization. | |
7920 | * aspects.ads, aspects.adb: Add Aspect_Synchronization to | |
7921 | enumeration type and related maps. | |
7922 | * sem_ch13.adb (Analyze_Aspect_Specifications): Handle Aspect | |
7923 | Synchronization, build corresponding pragma Implemented. | |
7924 | * sem_util.adb (Implementation_Kind): Handle both explicit and | |
7925 | implicit pragma_argument association to retrieve the given | |
7926 | synchronization mode. | |
7927 | ||
bc3646ef | 7928 | 2012-01-23 Robert Dewar <dewar@adacore.com> |
7929 | ||
7930 | * sem_ch10.adb, errout.adb: Minor reformatting. | |
7931 | ||
7932 | 2012-01-23 Ed Schonberg <schonberg@adacore.com> | |
7933 | ||
7934 | * sem_res.adb (Resolve_Actuals): An actual in a call to an | |
7935 | Ada 2012 Reference function does not lead to a dangerous order | |
7936 | dependence. | |
7937 | ||
6daf2e31 | 7938 | 2012-01-23 Gary Dismukes <dismukes@adacore.com> |
7939 | ||
7940 | * exp_util.adb (Is_Iterated_Container): Test | |
7941 | Is_Entity_Name when searching for calls to the default iterator, | |
7942 | to avoid blowing up on indirect calls which have an explicit | |
7943 | dereference as the call name. | |
7944 | ||
7945 | 2012-01-23 Thomas Quinot <quinot@adacore.com> | |
7946 | ||
7947 | * errout.adb (Set_Msg_Node): For an N_Expanded_Name, output | |
7948 | the complete expanded name, rather than just its Selector_Name. | |
7949 | ||
7950 | 2012-01-23 Thomas Quinot <quinot@adacore.com> | |
7951 | ||
7952 | * a-textio.adb (Put): Rewrite one-parameter Character version to | |
7953 | just call the two-parameter one with Current_Out. | |
7954 | ||
2691091b | 7955 | 2012-01-23 Hristian Kirtchev <kirtchev@adacore.com> |
7956 | ||
7957 | * freeze.adb (Check_Current_Instance): Issue an | |
7958 | error when the prefix of 'Unchecked_Access or 'Access does not | |
7959 | denote a legal aliased view of a type. | |
7960 | (Freeze_Record_Type): Do not halt the processing of record components | |
7961 | once the Has_Controlled_Component is set as this bypasses the remaining | |
7962 | checks. | |
7963 | (Is_Aliased_View_Of_Type): New routine. | |
7964 | ||
7965 | 2012-01-23 Thomas Quinot <quinot@adacore.com> | |
7966 | ||
7967 | * errout.ads, freeze.adb: Minor reformatting. | |
7968 | ||
7969 | 2012-01-23 Thomas Quinot <quinot@adacore.com> | |
7970 | ||
7971 | * sem_ch10.adb, sem_prag.adb: Remove redundant apostrophes in error | |
7972 | messages. | |
7973 | ||
7974 | 2012-01-23 Olivier Hainque <hainque@adacore.com> | |
7975 | ||
7976 | * adadecode.c (__gnat_decode): Deal with empty input early, | |
7977 | preventing potential erroneous memory access later on. | |
7978 | ||
465cee25 | 7979 | 2012-01-21 Eric Botcazou <ebotcazou@adacore.com> |
7980 | ||
7981 | PR ada/46192 | |
7982 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: In the case of a | |
7983 | renaming, preserve the volatileness through the indirection, if any. | |
7984 | ||
cfe97a8d | 7985 | 2012-01-14 Andreas Schwab <schwab@linux-m68k.org> |
7986 | ||
7987 | * gcc-interface/Makefile.in (OSCONS_EXTRACT): Add | |
7988 | $(GNATLIBCFLAGS). | |
7989 | ||
ae8e99a3 | 7990 | 2012-01-10 Pascal Obry <obry@adacore.com> |
7991 | ||
7992 | * prj-nmsc.adb (Check_Library_Attributes): | |
7993 | Kill check for object/source directories for aggregate libraries. | |
7994 | ||
7995 | 2012-01-10 Matthew Heaney <heaney@adacore.com> | |
7996 | ||
7997 | * a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb, | |
7998 | a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads, | |
7999 | a-cborma.adb, a-cborma.ads, a-cidlli.adb, a-cidlli.ads, a-cimutr.adb, | |
8000 | a-cimutr.ads, a-cihase.adb, a-cihase.ads, a-cohama.adb, a-cohama.ads, | |
8001 | a-coorse.adb, a-coorse.ads, a-cbhama.adb, a-cbhama.ads, a-cborse.adb, | |
8002 | a-cborse.ads, a-comutr.adb, a-comutr.ads, a-ciorma.adb, a-cobove.adb, | |
8003 | a-ciorma.ads, a-cobove.ads, a-convec.adb, a-convec.ads, a-cohase.adb, | |
8004 | a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbmutr.adb, a-cbmutr.ads, | |
8005 | a-cbhase.adb, a-cbhase.ads (Reference, Constant_Reference): Declare | |
8006 | container parameter as aliased in/in out. | |
8007 | Code clean ups. | |
8008 | ||
8009 | 2012-01-10 Bob Duff <duff@adacore.com> | |
8010 | ||
8011 | * s-os_lib.ads: Improve comment. | |
8012 | ||
8013 | 2012-01-10 Geert Bosch <bosch@adacore.com> | |
8014 | ||
8015 | * s-gearop.adb (Forward_Eliminate): Avoid improper aliasing | |
8016 | for complex Scalar. | |
8017 | ||
43537c96 | 8018 | 2012-01-10 Bob Duff <duff@adacore.com> |
8019 | ||
8020 | * sem_intr.adb (Check_Shift): Use RM_Size instead of Esize, when | |
8021 | checking that the 'Size is correct. If the type is "mod 2**12", | |
8022 | for example, it's illegal, but Esize is the 'Object_Size, which | |
8023 | will be something like 16 or 32, so the error ('Size = 12) was | |
8024 | not detected. | |
8025 | * gnat_rm.texi: Improve documentation of shift | |
8026 | and rotate intrinsics. | |
8027 | ||
8028 | 2012-01-10 Pascal Obry <obry@adacore.com> | |
8029 | ||
8030 | * prj.adb (For_Every_Project_Imported): Fix | |
8031 | implementation to make sure we return each project only once | |
8032 | for aggragte libraries. It is fine to return a project twice for | |
8033 | aggregate projects, this was the case as a Project_Id is different | |
8034 | in each project tree. The new implementation use a table based on | |
8035 | the project name to ensure proper detection of duplicate project | |
8036 | in aggregate library. A new context is then created to continue | |
8037 | retrurning duplicate project for aggregate libraries. | |
8038 | ||
5c0db21d | 8039 | 2012-01-09 Eric Botcazou <ebotcazou@adacore.com> |
8040 | ||
8041 | * gcc-interface/trans.c (call_to_gnu): Create the temporary for the | |
8042 | return value in the variable-sized return type case if the target is | |
8043 | an array with fixed size. However, do not create it if this is the | |
8044 | expression of an object declaration. | |
8045 | ||
2f7233cb | 8046 | 2012-01-09 Eric Botcazou <ebotcazou@adacore.com> |
8047 | ||
8048 | * gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko. | |
8049 | ||
c8e4bf42 | 8050 | 2012-01-06 Robert Dewar <dewar@adacore.com> |
8051 | ||
8052 | * a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads, | |
8053 | s-utf_32.ads: Add pragma Pure | |
8054 | * s-utf_32.adb: Suppress warnings on non-static constants (now | |
8055 | that this is Pure). | |
8056 | ||
8057 | 2012-01-06 Bob Duff <duff@adacore.com> | |
8058 | ||
8059 | * s-rpc.ads (Read, Write): Add overriding indicators. | |
8060 | ||
8061 | 2012-01-06 Robert Dewar <dewar@adacore.com> | |
8062 | ||
8063 | * gnat_rm.texi: Add documentation for conventions | |
8064 | Ada_Pass_By_Copy and Ada_Pass_By_Reference. | |
8065 | ||
8066 | 2012-01-06 Gary Dismukes <dismukes@adacore.com> | |
8067 | ||
8068 | * a-tienio.adb (Put): Add exception message on | |
8069 | raise statements. Remove unneeded blocks and object declarations. | |
8070 | ||
8071 | 2012-01-06 Robert Dewar <dewar@adacore.com> | |
8072 | ||
8073 | * sem_prag.adb: Minor reformatting. | |
8074 | ||
8075 | 2012-01-06 Ed Schonberg <schonberg@adacore.com> | |
8076 | ||
8077 | * sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate | |
8078 | that a selected component within a generic unit has been resolved | |
8079 | as a prefixed call with local references. | |
8080 | * sem_ch3.adb (Is_Visible_Component): In an instance body a selected | |
8081 | component is always visible. | |
8082 | * sem_ch4.adb (Analyze_Selected_Component): If the node is a | |
8083 | prefixed call in an instance, do not look for visible components | |
8084 | of the type. | |
8085 | * sem_ch12.adb (Reset_Entity): If a selected component has resolved | |
8086 | to a prefixed call, mark the node accordingly when prefix and | |
8087 | selector are local references. | |
8088 | ||
4e6fa7c5 | 8089 | 2012-01-02 Eric Botcazou <ebotcazou@adacore.com> |
8090 | ||
8091 | * gnatvsn.ads (Current_Year): Bump to 2012. | |
7dfbd804 | 8092 | \f |
8dfa851a | 8093 | Copyright (C) 2012 Free Software Foundation, Inc. |
7dfbd804 | 8094 | |
8095 | Copying and distribution of this file, with or without modification, | |
8096 | are permitted in any medium without royalty provided the copyright | |
8097 | notice and this notice are preserved. |