]>
Commit | Line | Data |
---|---|---|
2907036d TQ |
1 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
2 | ||
3 | * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads, | |
4 | s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads, | |
5 | g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well, | |
6 | since HP-UX supports neither inet_aton nor inet_pton (altough the | |
7 | latter is part of the Single UNIX Specification!). | |
8 | So reorganize code, and share C implementation based on inet_addr(3) | |
9 | with VMS (instead of having a VMS specific Ada implementation in | |
10 | g-socthi-vms.adb). | |
11 | ||
d5063351 AC |
12 | 2009-04-20 Gary Dismukes <dismukes@adacore.com> |
13 | ||
14 | * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function | |
15 | to return the object file name saved by Set_Object_Output_File_Name. | |
16 | ||
17 | 2009-04-20 Emmanuel Briot <briot@adacore.com> | |
18 | ||
19 | * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers | |
20 | for the standard command line, when argc has been modified since the | |
21 | start of the application. | |
22 | ||
23 | 2009-04-20 Thomas Quinot <quinot@adacore.com> | |
24 | ||
25 | * socket.c (__gnat_inet_pton, Windows case): Adjust return value. | |
26 | WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure. | |
27 | ||
3edf2f76 AC |
28 | 2009-04-20 Bob Duff <duff@adacore.com> |
29 | ||
30 | * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside | |
31 | pragma Debug. | |
32 | ||
33 | 2009-04-20 Ed Schonberg <schonberg@adacore.com> | |
34 | ||
35 | * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated | |
36 | subprogram as Eliminated when source operation is. | |
37 | (Expand_N_Protected_Type_Declaration): Generate protected and | |
38 | unprotected specs for the internal operations, even if the source | |
39 | operation is eliminated. | |
40 | ||
41 | 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com> | |
42 | ||
43 | * exp_ch3.adb (Make_Predefined_Primitive_Specs, | |
44 | Predefined_Primitive_Bodies): Do not create the declarations and bodies | |
45 | of the primitive subprograms associated with dispatching select | |
46 | statements when the runtime is in configurable mode. | |
47 | ||
48 | 2009-04-20 Ed Falis <falis@adacore.com> | |
49 | ||
50 | * s-vxwext-kernel.ads (tickGet): Use tick64Get. | |
51 | ||
4fd1e8b0 AC |
52 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
53 | ||
54 | * s-oscons-tmplt.c: Add support for generating a dummy version of | |
55 | s-oscons.ads providing all possible constants. | |
56 | ||
57 | * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton. | |
58 | ||
59 | * socket.c (__gnat_inet_pton): On Windows make sure we always use the | |
60 | ANSI version (not the UNICODE version) of WSAStringToAddress. | |
61 | ||
62 | 2009-04-20 Pascal Obry <obry@adacore.com> | |
63 | ||
64 | * adaint.c (__gnat_set_OWNER_ACL): properly free memory | |
65 | allocated for the security descriptor and make sure all | |
66 | handles are closed before leaving this procedure. | |
67 | ||
9013065b AC |
68 | 2009-04-20 Javier Miranda <miranda@adacore.com> |
69 | ||
70 | * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram | |
71 | (Set_Is_Underlying_Record_View): New subprogram | |
72 | ||
73 | * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of | |
74 | private types with unknown discriminants use the underlying record view | |
75 | if available. | |
76 | ||
77 | * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the | |
78 | underlying record view in the full view of private types whose parent | |
79 | has unknown discriminants. | |
80 | (Build_Derived_Record_Type): Avoid generating the class-wide entity | |
81 | associated with an underlying record view. | |
82 | (Derived_Type_Declaration): Avoid deriving parent primitives in | |
83 | underlying record views. | |
84 | ||
85 | * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for | |
86 | records with unknown discriminants. | |
87 | ||
88 | * sem_type.adb (Covers): Handle underlying record views. | |
89 | (Is_Ancestor): Add support for underlying record views. | |
90 | ||
91 | * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a | |
92 | dispatching call if the type of the target object is tagged and has | |
93 | unknown discriminants. | |
94 | ||
95 | * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with | |
96 | unknown discriminants. | |
97 | ||
98 | * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch | |
99 | tables for internally built underlying record views. | |
100 | ||
101 | * sprint.adb (sprint_node_actual): Improve output of aggregates with an | |
102 | empty list of component associations. | |
103 | ||
104 | 2009-04-20 Thomas Quinot <quinot@adacore.com> | |
105 | ||
106 | * sem_ch10.adb: Minor reformatting | |
107 | ||
108 | * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads, | |
109 | g-socthi-mingw.ads, g-socthi.ads, g-socket.adb | |
110 | (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use | |
111 | standard inet_pton API (and emulate it on platforms that do not | |
112 | support it). | |
113 | (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of | |
114 | DECC$INET_ADDR, imported in Ada. | |
115 | (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C | |
116 | implementation provided by GNAT runtime. | |
117 | (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and | |
118 | Windows. | |
119 | ||
7289b80c AC |
120 | 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> |
121 | ||
122 | * gnat_ugn.texi: Add documentation for -fno-ivopts. | |
123 | ||
124 | 2009-04-20 Ed Schonberg <schonberg@adacore.com> | |
125 | ||
126 | * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a | |
127 | with_clause if it is the main unit. | |
128 | ||
c09a557e AC |
129 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
130 | ||
131 | * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization | |
132 | (no behaviour change): Use Append instead of Increment_Last followed | |
133 | by assignment. | |
134 | ||
135 | 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com> | |
136 | ||
137 | * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the | |
138 | declarations of all primitives associated with dispatching asynchronous, | |
139 | conditional and timed selects when dispaching calls are forbidden and | |
140 | select statements are not allowed (such as in Ravenscar). | |
141 | (Predefined_Primitive_Bodies): Ditto for bodies. | |
142 | ||
143 | * exp_disp.ad (Make_DT): Do not create and populate the | |
144 | Select_Specific_Data of the dispatch table when dispatching calls are | |
145 | forbidden and select statements are not allowed (such as in Ravenscar). | |
146 | ||
147 | 2009-04-20 Robert Dewar <dewar@adacore.com> | |
148 | ||
149 | * a-tifiio.adb: Minor reformatting | |
150 | ||
151 | 2009-04-20 Thomas Quinot <quinot@adacore.com> | |
152 | ||
153 | * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike | |
154 | other C library functions, report *failure* with a zero status, and | |
155 | success with a non-zero status. | |
156 | ||
157 | 2009-04-20 Bob Duff <duff@adacore.com> | |
158 | ||
159 | * sem.ads, sem.adb (Walk_Library_Items): New generic procedure. | |
160 | (Semantics): After analyzing each unit, Append it to the | |
161 | Comp_Unit_List, if appropriate. | |
162 | ||
163 | * gnat1drv.adb (Check_Library_Items): New procedure for debugging | |
164 | purposes. | |
165 | (Gnat1drv): Correct comment regarding Back_End_Mode. | |
166 | ||
167 | 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> | |
168 | ||
169 | * gnat_ugn.texi: Add documentation for -fno-inline-small-functions. | |
170 | ||
7e728b0f TQ |
171 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
172 | ||
173 | * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb, | |
174 | output.adb, output.ads, s-taprop-hpux-dce.adb, | |
175 | s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor | |
176 | reformatting. | |
177 | ||
5e39baa6 TQ |
178 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
179 | ||
180 | * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb, | |
181 | g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads | |
182 | (GNAT.Sockets.Thin.C_Inet_Addr): Remove. | |
183 | (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library | |
184 | except for VMS where it is reimplemented in Ada using DECC$INET_ADDR. | |
185 | (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3). | |
186 | ||
187 | * debug.adb: Fix typo | |
188 | ||
189 | * gnat_rm.texi: Minor doc fix. | |
190 | ||
191 | * sem_ch7.adb, freeze.adb: Minor reformatting | |
192 | ||
3568b271 AC |
193 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
194 | ||
195 | * g-socket.ads: Add new constants: | |
196 | Loopback_Inet_Addr | |
197 | Unspecified_Group_Inet_Addr | |
198 | All_Hosts_Group_Inet_Addr | |
199 | All_Routers_Group_Inet_Addr | |
200 | ||
201 | * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add | |
202 | ERANGE (Result too large). | |
203 | (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing | |
204 | propagation of errno to caller. | |
205 | ||
206 | 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com> | |
207 | ||
208 | * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds | |
209 | to 24. Increment Leap_Seconds_Count and add an entry to aggregate | |
210 | Leap_Second_Times. | |
211 | ||
212 | 2009-04-20 Gary Dismukes <dismukes@adacore.com> | |
213 | ||
214 | * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for | |
215 | checking for references to eliminated subprograms that should be | |
216 | flagged. | |
217 | (Eliminate_Error_Message): Update comment to say "references" rather | |
218 | than "calls" (since attribute cases are handled here as well). | |
219 | ||
220 | * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for | |
221 | checking for references to eliminated subprograms that should be | |
222 | flagged. Add with and use of Sem and Sem_Util. | |
223 | ||
224 | * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms. | |
225 | Add with and use of Sem_Elim. | |
226 | ||
227 | * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes | |
228 | applied to eliminated subprograms. | |
229 | (Analyze_Attribute): Reject 'Address and 'Code_Address applied to | |
230 | eliminated subprograms. | |
231 | Add with and use of Sem_Elim. | |
232 | ||
233 | * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls | |
234 | to eliminated subprograms, now handled during Resolve_Call. | |
235 | Remove with and use of Sem_Elim. | |
236 | ||
237 | * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before | |
238 | testing Is_Eliminated, for proper handling of primitive derived from | |
239 | eliminated subprograms. | |
240 | ||
241 | 2009-04-20 Vincent Celier <celier@adacore.com> | |
242 | ||
243 | * mlib-prj.adb (Build_Library): Use the shared library linker, if one | |
244 | has been declared (Library_GCC or Linker'Driver), for the driver name. | |
245 | ||
246 | * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and | |
247 | Linker'Driver is, use Linker'Driver as the shared library linker. | |
248 | (Process_Project_Level_Simple_Attributes): Issue a warning if attribute | |
249 | Library_GCC is declared. | |
250 | (Check_Library_Attributes): Set up the shared linker driver: either | |
251 | Library_GCC or Linker'Driver. Issue a warning if Library_GCC is | |
252 | declared. | |
253 | ||
6e55ac7a TQ |
254 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
255 | ||
256 | * g-socket.ads (Send_Socket): Fix misleading comment. | |
257 | ||
68218f7c AC |
258 | 2009-04-20 Arnaud Charlet <charlet@adacore.com> |
259 | ||
260 | * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in | |
261 | ASIS mode. | |
262 | ||
263 | 2009-04-20 Geert Bosch <bosch@adacore.com> | |
264 | ||
265 | * a-tifiio.adb (Put): Avoid generating too many digits for certain | |
266 | fixed types with smalls that are neither integer or the reciprocal | |
267 | of an integer. | |
268 | ||
269 | 2009-04-20 Bob Duff <duff@adacore.com> | |
270 | ||
271 | * uname.ads: Minor comment fix. | |
272 | ||
273 | * types.ads: Minor comment fix. | |
274 | ||
262991d8 PO |
275 | 2009-04-20 Pascal Obry <obry@adacore.com> |
276 | ||
277 | * adaint.c (__gnat_get_libraries_from_registry): Fix code to | |
278 | avoid warning. At the same time fix a memory leak. | |
279 | ||
280 | * osint.adb (Get_Libraries_From_Registry): Properly free memory | |
281 | returned by the above routine. | |
282 | ||
d0f8d157 AC |
283 | 2009-04-20 Robert Dewar <dewar@adacore.com> |
284 | ||
285 | * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb, | |
286 | s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb, | |
287 | s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads, | |
288 | s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions. | |
289 | ||
290 | * exp_ch4.adb (Expand_Concatenate): Minor code reorganization | |
291 | ||
292 | 2009-04-20 Pascal Obry <obry@adacore.com> | |
293 | ||
294 | * initialize.c (__gnat_initialize): Add braces to kill warning. | |
295 | ||
262991d8 | 296 | * adaint.c: Minor reformatting, remove trailing spaces. |
d0f8d157 | 297 | |
34c25b32 AC |
298 | 2009-04-17 Arnaud Charlet <charlet@adacore.com> |
299 | ||
300 | * gcc-interface/Make-lang.in: Update dependencies. | |
301 | ||
9549767b AC |
302 | 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> |
303 | ||
304 | * adaint.h (__gnat_lwp_self): Declare on Linux. | |
305 | ||
306 | * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'. | |
307 | ||
308 | 2009-04-20 Robert Dewar <dewar@adacore.com> | |
309 | ||
310 | * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement | |
311 | front-end part of -fpreserve-control-flow switch. | |
312 | ||
d7f94401 AC |
313 | 2009-04-20 Bob Duff <duff@adacore.com> |
314 | ||
315 | * rtsfind.adb: Minor comment fix | |
316 | ||
317 | 2009-04-20 Robert Dewar <dewar@adacore.com> | |
318 | ||
319 | * exp_aggr.adb: Minor reformatting | |
320 | Minor code reorganization (use Nkind_In) | |
321 | ||
322 | * g-socket.adb: Minor reformatting | |
323 | ||
324 | * g-socket.ads: Minor comment fix | |
325 | ||
326 | * s-auxdec.ads: Minor comment and organization update. | |
327 | ||
328 | * s-auxdec-vms_64.ads: Minor comment and organization update. | |
329 | ||
330 | * sem_ch10.adb: Minor addition of ??? comment | |
331 | ||
332 | * sem_disp.adb: Minor reformatting | |
333 | ||
f8b86c2d AC |
334 | 2009-04-20 Ed Schonberg <schonberg@adacore.com> |
335 | ||
336 | * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end | |
337 | list a caller of an inlined subprogram, if the caller itself is not | |
338 | called. | |
339 | ||
340 | 2009-04-20 Pascal Obry <obry@adacore.com> | |
341 | ||
342 | * adaint.c: Disable use of ACL on network drives. | |
343 | ||
344 | 2009-04-20 Arnaud Charlet <charlet@adacore.com> | |
345 | ||
346 | * gnat_ugn.texi: Add examples. | |
347 | ||
efec4f2a TQ |
348 | 2009-04-20 Thomas Quinot <quinot@adacore.com> |
349 | ||
350 | * g-socket.ads (Abort_Selector): Clarify documentation. | |
351 | ||
ff2e7c1e AC |
352 | 2009-04-20 Arnaud Charlet <charlet@adacore.com> |
353 | ||
354 | * opt.ads (Inspector_Mode): Update documentation of this flag. | |
355 | ||
356 | 2009-04-20 Thomas Quinot <quinot@adacore.com> | |
357 | ||
358 | * g-socket.ads: Minor reformatting | |
359 | ||
360 | * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to | |
361 | consider S_resolvLib error codes since we only use the hostLib wrappers. | |
362 | ||
363 | 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> | |
364 | ||
365 | * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration | |
366 | of the Underlying_Record_View after that of the derived type. | |
367 | ||
26a43556 AC |
368 | 2009-04-20 Arnaud Charlet <charlet@adacore.com> |
369 | ||
370 | * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining | |
371 | in inspector mode. | |
372 | ||
373 | 2009-04-20 Javier Miranda <miranda@adacore.com> | |
374 | ||
375 | * sem_ch6.adb (New_Overloaded_Entity): Minor reformating. | |
376 | ||
377 | * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing | |
378 | documentation. | |
379 | ||
380 | * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup. | |
381 | ||
382 | * sem_disp.adb | |
383 | (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation | |
384 | in internally built overriding subprograms. | |
385 | ||
386 | 2009-04-20 Doug Rupp <rupp@adacore.com> | |
387 | ||
388 | * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types. | |
389 | ||
390 | * s-auxdec.ads: Likewise | |
391 | ||
392 | 2009-04-20 Ed Schonberg <schonberg@adacore.com> | |
393 | ||
394 | * sem_ch3.adb (Find_Type_Name): Reject the completion of a private | |
395 | type by an interface. | |
396 | ||
397 | * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to | |
398 | minimze difference in expanded tree when compiled as spec of the main | |
399 | unit, or as a spec in the context of another unit. | |
400 | ||
3f25c54d AC |
401 | 2009-04-20 Hristian Kirtchev <kirtchev@adacore.com> |
402 | ||
403 | * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer. | |
404 | (localtime_tzoff): This routine no longer accepts an actual of type | |
405 | tm_Pointer. | |
406 | (UTC_Time_Offset): Remove local variable Secs_TM. | |
407 | ||
408 | * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an | |
409 | actual of type struct tm*. Add local variable of type struct tm for all | |
410 | targets that provide localtime_r and need to invoke it. | |
411 | ||
412 | 2009-04-20 Thomas Quinot <quinot@adacore.com> | |
413 | ||
414 | * s-oscons-tmplt.c, g-socket.adb, g-socket.ads | |
415 | (GNAT.Sockets.Resolve_Error): Add case of EPIPE | |
416 | Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK | |
417 | ||
8dbf3473 AC |
418 | 2009-04-20 Robert Dewar <dewar@adacore.com> |
419 | ||
420 | * sem_ch3.adb: Minor reformatting | |
421 | ||
422 | * lib-load.adb: Minor reformatting | |
423 | ||
424 | * sem_ch4.adb: Minor reformatting | |
425 | ||
426 | 2009-04-20 Robert Dewar <dewar@adacore.com> | |
427 | ||
428 | * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec | |
429 | (equal values => False). | |
430 | ||
431 | 2009-04-20 Ed Schonberg <schonberg@adacore.com> | |
432 | ||
433 | * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls | |
434 | to null procedures can be inlined unconditionally. | |
435 | ||
56fe7b05 EB |
436 | 2009-04-20 Eric Botcazou <ebotcazou@adacore.com> |
437 | ||
438 | * gcc-interface/trans.c (call_to_gnu): When creating the copy for a | |
439 | non-addressable parameter passed by reference, do not convert the | |
440 | actual if its type is already the nominal type, unless it is of | |
441 | self-referential size. | |
442 | ||
9fcf2a0b AC |
443 | 2009-04-20 Arnaud Charlet <charlet@adacore.com> |
444 | ||
445 | * gnat_ugn.texi: Fix typos. | |
446 | ||
447 | 2009-04-20 Robert Dewar <dewar@adacore.com> | |
448 | ||
449 | * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to | |
450 | Validate_Unchecked_Warnings to suppress warnings about size or | |
451 | alignment or extra bits if either type involved has pragma Warnings | |
452 | (Off) set for the type entity. | |
453 | ||
f7ebc6a8 EB |
454 | 2009-04-19 Eric Botcazou <ebotcazou@adacore.com> |
455 | ||
456 | * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type | |
457 | a builtin type and give it a name. | |
458 | ||
105ab5db DN |
459 | 2009-04-17 Diego Novillo <dnovillo@google.com> |
460 | ||
461 | * gcc-interface/misc.c (gnat_expand_expr): Remove. | |
462 | (LANG_HOOKS_EXPAND_EXPR): Remove. | |
463 | ||
03b64787 AC |
464 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
465 | ||
466 | * sem_ch3.adb: Minor reformatting | |
467 | ||
468 | 2009-04-17 Pascal Obry <obry@adacore.com> | |
469 | ||
470 | * adaint.c: Add __gnat_use_acl global variable to control use of ACL. | |
471 | ||
054275e4 ES |
472 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> |
473 | ||
474 | * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly | |
475 | illegal constraints on type derived from formal discrete types. | |
476 | ||
aed6fda8 TQ |
477 | 2009-04-17 Thomas Quinot <quinot@adacore.com> |
478 | ||
479 | PR ada/35953 | |
480 | ||
481 | * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, | |
482 | g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads, | |
483 | g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb, | |
484 | g-socket.ads (GNAT.Sockets.Thin.C_Send, | |
485 | GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms. | |
486 | Replace calls to send(2) with equivalent sendto(2) calls. | |
487 | (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram. | |
488 | (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not | |
489 | report an error in that case. Factor code common to the two versions | |
490 | (datagram and stream) in common routine Stream_Write. | |
491 | ||
c5d91669 AC |
492 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
493 | ||
494 | * exp_disp.adb: Minor reformatting | |
495 | Minor code reorganization (use Nkind_In) | |
496 | ||
497 | * prepcomp.adb: Minor reformatting | |
498 | ||
499 | * sem_ch3.adb: Minor reformatting | |
500 | ||
501 | * sem_res.adb: Minor comment addition | |
502 | ||
503 | * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test | |
504 | for address clause | |
505 | ||
506 | * lib-xref.adb (Generate_Reference): Exclude recursive calls from | |
507 | setting Is_Referenced | |
508 | ||
509 | * types.ads: Minor reformatting | |
510 | ||
511 | 2009-04-17 Arnaud Charlet <charlet@adacore.com> | |
512 | ||
513 | * gnat_ugn.texi: Initial documentation on binding generator. | |
514 | ||
39f346aa ES |
515 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> |
516 | ||
517 | * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle | |
518 | type extensions whose parent is a type with unknown discriminants. | |
519 | ||
520 | * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension | |
521 | aggregate has unknown discriminants, use the Underlying_Record_View to | |
522 | obtain the discriminants of the ancestor part. | |
523 | ||
524 | * exp_disp.adb (Build_Dispatch_Tables): Types that are | |
525 | Underlying_Record_Views share the dispatching information of the | |
526 | original record extension. | |
527 | ||
528 | * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown | |
529 | discriminants, propagate dispach table information to the | |
530 | Underlying_Record_View. | |
531 | ||
532 | * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown | |
533 | discriminants and declaration is not a completion, generate | |
534 | Underlying_Record_View to provide proper discriminant information to | |
535 | the front-end and to gigi. | |
536 | ||
8c64de1e RD |
537 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
538 | ||
539 | * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb, | |
540 | s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads, | |
541 | s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads, | |
542 | g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads, | |
543 | s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads, | |
544 | s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads, | |
545 | g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb, | |
546 | s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads, | |
547 | g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb, | |
548 | s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb, | |
549 | s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb, | |
550 | s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb, | |
551 | s-conca3.ads: Remove unneeded pragma Warnings | |
552 | ||
74e63df1 RD |
553 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
554 | ||
555 | * g-moreex.adb: Add comments. | |
556 | ||
557 | * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off) | |
558 | ||
559 | * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma | |
560 | Warnings (Off) | |
561 | ||
562 | * prepcomp.adb: Add ??? comment | |
563 | ||
564 | * a-tasatt.adb: Minor reformatting | |
565 | ||
566 | * g-trasym-vms-alpha.adb: Add ??? comment | |
567 | ||
568 | * g-trasym-vms-ia64.adb: Add ??? comment | |
569 | ||
570 | * xoscons.adb: Minor reformatting | |
571 | ||
572 | * s-tassta.adb: Minor reformatting | |
573 | ||
574 | * s-scaval.adb: Add ??? comment | |
575 | ||
576 | * stand.ads: Minor code clean up (remove junk with of Namet) | |
577 | ||
578 | * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb, | |
579 | s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads, | |
580 | s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb, | |
581 | s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads, | |
582 | s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb, | |
583 | s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads, | |
584 | s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb, | |
585 | s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed | |
586 | Warnings off pragmas. | |
587 | ||
df416fb0 AC |
588 | 2009-04-17 Pascal Obry <obry@adacore.com> |
589 | ||
590 | * initialize.c: Fix test for reallocating the arguments array. | |
591 | ||
592 | 2009-04-17 Geert Bosch <bosch@adacore.com> | |
593 | ||
594 | * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed | |
595 | conversion truncate only for decimal fixed point types. | |
596 | ||
597 | 2009-04-17 Jerome Lambourg <lambourg@adacore.com> | |
598 | ||
599 | * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are | |
600 | reinitialized. | |
601 | ||
01cd0938 AC |
602 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
603 | ||
604 | * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and | |
605 | Backwards_OK if either operand has an address clause. | |
606 | ||
607 | 2009-04-17 Pascal Obry <obry@adacore.com> | |
608 | ||
609 | * initialize.c: Code clean up, use realloc. | |
610 | ||
46e26fe3 PO |
611 | 2009-04-17 Pascal Obry <obry@adacore.com> |
612 | ||
613 | * initialize.c: Do not get Unicode command line if Unicode support not | |
614 | activated. | |
615 | Add support for wildcard expansion for Unicode parameters on Win32. | |
616 | ||
617 | * mingw32.h: Add missing macros when Unicode support not activated. | |
618 | ||
b20de9b9 AC |
619 | 2009-04-17 Javier Miranda <miranda@adacore.com> |
620 | ||
621 | * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to | |
622 | avoid generating code that references the Current_Master | |
623 | when compiling without tasks. | |
624 | ||
625 | 2009-04-17 Vincent Celier <celier@adacore.com> | |
626 | ||
627 | * prj-attr.adb: New project level attribute Target | |
628 | ||
629 | * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process | |
630 | attribute Target | |
631 | ||
632 | * prj.ads (Project_Configuration): New component Target | |
633 | ||
a8f59a33 AC |
634 | 2009-04-17 Thomas Quinot <quinot@adacore.com> |
635 | ||
636 | * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special | |
637 | case for the case of an aggregate component, the attach call for the | |
638 | result is actually needed. | |
639 | ||
640 | * exp_aggr.adb (Backend_Processing_Possible): Backend processing for | |
641 | an array aggregate must be disabled if the component type requires | |
642 | controlled actions. | |
643 | ||
644 | * exp_ch3.adb: Minor reformatting | |
645 | ||
646 | 2009-04-17 Bob Duff <duff@adacore.com> | |
647 | ||
648 | * output.ads (Indent,Outdent): New procedures for indenting the output. | |
649 | (Write_Char): Correct comment -- LF _is_ allowed. | |
650 | ||
651 | * output.adb (Indent,Outdent): New procedures for indenting the output. | |
652 | Keep track of the indentation level, and make sure it doesn't get too | |
653 | high. | |
654 | (Flush_Buffer): Insert spaces at the beginning of each line, if | |
655 | indentation level is nonzero. | |
656 | (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current | |
657 | indentation level. | |
658 | (Set_Standard_Error,Set_Standard_Output): Remove superfluous | |
659 | "Next_Col := 1;". Flush_Buffer does that. | |
660 | ||
661 | * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output | |
662 | controlled by the -gnatdc switch. It now occurs on entry/exit to the | |
663 | relevant analysis routines, and calls Indent/Outdent to make the | |
664 | indentation reflect the nesting level. Add "helper" routines, since | |
665 | otherwise lots of "return;" statements would skip the debugging output. | |
666 | ||
667 | 2009-04-17 Arnaud Charlet <charlet@adacore.com> | |
668 | ||
669 | * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb, | |
670 | s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb, | |
671 | s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup. | |
672 | ||
32beb1f3 AC |
673 | 2009-04-17 Thomas Quinot <quinot@adacore.com> |
674 | ||
675 | * exp_aggr.adb: Minor code reorganization, no behaviour change. | |
676 | ||
677 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> | |
678 | ||
679 | * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type | |
680 | clause in a unit that is a package body or a subunit, when the previous | |
681 | clause appears in a spec or a parent. | |
682 | ||
36c73552 AC |
683 | 2009-04-17 Thomas Quinot <quinot@adacore.com> |
684 | ||
685 | * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting | |
686 | ||
687 | * exp_ch7.adb: Minor reformatting | |
688 | ||
689 | 2009-04-17 Bob Duff <duff@adacore.com> | |
690 | ||
691 | * exp_ch4.adb (Expand_Allocator_Expression): In an initialized | |
692 | allocator, check that the expression of the qualified expression obeys | |
693 | the constraints of the subtype of the qualified expression. | |
694 | ||
695 | 2009-04-17 Thomas Quinot <quinot@adacore.com> | |
696 | ||
697 | * sprint.adb (Write_Itype): Add handling of enumeration subtypes. | |
698 | ||
cac5a801 AC |
699 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> |
700 | ||
701 | * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to | |
702 | aggregate, using context imposed by subtype mark in allocator. | |
703 | ||
704 | 2009-04-17 Pascal Obry <obry@adacore.com> | |
705 | ||
706 | * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable | |
707 | ||
03f050b6 AC |
708 | 2009-04-17 Nicolas Roche <roche@adacore.com> |
709 | ||
710 | * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each | |
711 | argument length. | |
712 | ||
713 | 2009-04-17 Gary Dismukes <dismukes@adacore.com> | |
714 | ||
715 | * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to | |
716 | cover both calls and attribute references ("call" => "reference"). | |
717 | ||
718 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> | |
719 | ||
720 | * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access | |
721 | type for which Storage_Size is set to 0 is legal in a pure unit. | |
722 | ||
bf327c92 AC |
723 | 2009-04-17 Thomas Quinot <quinot@adacore.com> |
724 | ||
725 | * exp_ch7.adb: Minor reformatting | |
726 | ||
727 | 2009-04-17 Robert Dewar <dewar@adacore.com> | |
728 | ||
729 | * restrict.adb (Check_Restriction_No_Dependence): Don't check | |
730 | restriction if outside main extended source unit. | |
731 | ||
732 | * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction | |
733 | for parents of child units as well as the child unit itself. | |
734 | ||
735 | 2009-04-17 Bob Duff <duff@adacore.com> | |
736 | ||
737 | * checks.ads: Minor comment fix | |
738 | ||
739 | * exp_aggr.ads: Minor comment fix | |
740 | ||
741 | 2009-04-17 Nicolas Roche <roche@adacore.com> | |
742 | ||
743 | * adaint.c: Improve cross compiler detection and handling. | |
744 | ||
ffec8e81 AC |
745 | 2009-04-17 Eric Botcazou <ebotcazou@adacore.com> |
746 | ||
747 | * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os. | |
748 | ||
749 | 2009-04-17 Pascal Obry <obry@adacore.com> | |
750 | ||
751 | * mingw32.h: Add S2WSC and WS2SC macros to convert to/from | |
752 | CurrentCodePage. | |
753 | ||
754 | * adaint.h: Encoding_Unspecified is now defined. Corresponds to the | |
755 | value when no encoding form paramter is set on Text_IO services. | |
756 | ||
757 | * adaint.c: CurrentCodePage new variable on Windows. | |
758 | Use new macros S2WSC and WS2SC instead of the UTF-8 oriented | |
759 | ones. | |
760 | ||
761 | * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented | |
762 | ones. | |
763 | ||
764 | * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE | |
765 | environment variable value. Default is UTF-8. | |
766 | ||
767 | * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type. | |
768 | fopen and freopen encoding parameter is now set to Unspecified. | |
769 | The default value is in this case UTF-8 (as it was before) but | |
770 | use the new macros that convert to/from the code page set | |
771 | at runtime (CurrentCodePage). | |
772 | ||
773 | * s-fileio.adb: When no encoding specified use Unspecified value. | |
774 | ||
775 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> | |
776 | ||
777 | * atree.adb, atree.ads: Remove dead code. | |
778 | ||
432e3422 AC |
779 | 2009-04-17 Arnaud Charlet <charlet@adacore.com> |
780 | ||
781 | * gcc-interface/Make-lang.in: Update dependencies. | |
782 | ||
f3b01cd9 AC |
783 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> |
784 | ||
785 | * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on | |
786 | illegal uses of incomplete types in formal parts and return types. | |
787 | ||
788 | * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in | |
789 | access to subprograms. | |
790 | ||
791 | * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use | |
792 | Taft-amendment types as the return type of an access_to_function type. | |
793 | ||
794 | * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete | |
795 | type for access_to_subprograms. The check is performed on package exit. | |
796 | ||
797 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> | |
798 | ||
799 | * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util. | |
800 | ||
801 | * nlists.ads, nlists.adb: Move New_Copy_List to sem_util. | |
802 | ||
803 | * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree | |
804 | ||
805 | * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in | |
806 | semantic units, because the handling of itypes in the copied tree | |
807 | requires semantic information that does not belong in atree. | |
808 | ||
809 | 2009-04-17 Robert Dewar <dewar@adacore.com> | |
810 | ||
811 | * par-ch6.adb: Minor reformatting | |
812 | ||
813 | * prj.adb: Minor reformatting | |
814 | ||
618fb570 AC |
815 | 2009-04-17 Gary Dismukes <dismukes@adacore.com> |
816 | ||
817 | * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed | |
818 | on protected subprogram bodies, so exclude the case where Pf_Flags is | |
819 | Pf_Decl_Pbod from the error check. | |
820 | ||
821 | * par-ch9.adb (P_Protected_Operation_Items): Permit overriding | |
822 | indicators on subprograms in protected bodies, and proceed with parsing | |
823 | the subprogram. | |
824 | ||
825 | * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected | |
826 | subprograms from the check for primitiveness on subprograms with | |
827 | overriding indicators. | |
828 | (Check_Overriding_Indicator): Include protected subprograms in the | |
829 | style check for missing overriding indicators. | |
830 | ||
831 | 2009-04-17 Tristan Gingold <gingold@adacore.com> | |
832 | ||
833 | * init.c: Fix stack checking for x86 Darwin. | |
834 | ||
835 | 2009-04-17 Vincent Celier <celier@adacore.com> | |
836 | ||
837 | * prj-attr.adb: New project level attribute Object_File_Suffix | |
838 | (<language>). | |
839 | ||
840 | * prj-nmsc.adb (Add_Source): Use the object file suffix to get the | |
841 | object file name | |
842 | (Process_Compiler): Process attribute Object_File_Suffix | |
843 | ||
844 | * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of | |
845 | platform suffix, when specified. | |
846 | ||
847 | * prj.ads (Language_Config): New component Object_File_Suffix, | |
848 | defaulted to No_Name. | |
849 | (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name | |
850 | ||
851 | * snames.ads-tmpl: New standard name Object_File_Suffix | |
852 | ||
93bcda23 AC |
853 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
854 | ||
855 | * gnat_rm.texi: Add documentation about No_Streams restriction | |
856 | ||
857 | * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream | |
858 | attributes when checking No_Streams restriction. | |
859 | ||
860 | 2009-04-17 Thomas Quinot <quinot@adacore.com> | |
861 | ||
862 | * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity. | |
863 | ||
864 | * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add | |
865 | missing calls to RE_Request_Destroy to deallocate request objects after | |
866 | use. | |
867 | ||
868 | 2009-04-17 Nicolas Setton <setton@adacore.com> | |
869 | ||
870 | * link.c: Fix support for passing a response file under Darwin. | |
871 | ||
872 | 2009-04-17 Emmanuel Briot <briot@adacore.com> | |
873 | ||
874 | * prj.adb (Free): new subprogram. | |
875 | ||
876 | 2009-04-17 Ed Schonberg <schonberg@adacore.com> | |
877 | ||
878 | * sem_ch3.adb: additional initialization on incomplete subtypes. | |
879 | ||
880 | * sem_ch6.adb (Process_Formals): if the subprogram is in the private | |
881 | part and one of the formals is an incomplete tagged type, attach to | |
882 | list of private dependends of the type for later validation. | |
883 | ||
884 | * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare | |
885 | primitive operations of a Taft-amendmment type. | |
886 | ||
887 | * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete | |
888 | type. The check is performed on package exit, possibly after the | |
889 | subprogram is frozen. | |
890 | ||
891 | 2009-04-17 Vincent Celier <celier@adacore.com> | |
892 | ||
893 | * prj-nmsc.adb (Get_Directories): Get the object and exec directory | |
894 | before looking for source directories, but make sure that there are nil | |
895 | if they are not explicitely declared and there is explicitely no | |
896 | sources in the project. | |
897 | ||
ba4a2f78 | 898 | 2009-04-17 Pascal Obry <obry@adacore.com> |
78246a6e | 899 | |
ba4a2f78 | 900 | * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows. |
78246a6e | 901 | |
ba4a2f78 | 902 | * init.c: Fix minor typo and style fix. |
ee00428a | 903 | |
ba4a2f78 | 904 | 2009-04-17 Robert Dewar <dewar@adacore.com> |
ee00428a | 905 | |
ba4a2f78 | 906 | * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic |
ee00428a | 907 | |
ba4a2f78 AC |
908 | * sem_attr.adb (Analyze_Attribute, case Address): Use |
909 | PE_Address_Of_Intrinsic. | |
910 | ||
911 | * types.ads: Add PE_Address_Of_Intrinsic | |
912 | ||
913 | * types.h: Add PE_Address_Of_Intrinsic | |
914 | ||
915 | 2009-04-17 Nicolas Setton <setton@adacore.com> | |
916 | ||
917 | * gcc-interface/Makefile.in: Under darwin, build shared libraries | |
918 | with install_name starting with "@rpath/". | |
ee00428a AC |
919 | |
920 | 2009-04-17 Nicolas Setton <setton@adacore.com> | |
921 | ||
922 | * link.c: Add darwin section | |
923 | ||
9fbb3ae6 AC |
924 | 2009-04-16 Robert Dewar <dewar@adacore.com> |
925 | ||
926 | * g-pehage.adb: Minor reformatting | |
927 | ||
928 | * sem_ch12.adb: Minor reformatting | |
929 | ||
930 | * exp_dist.adb: Minor reformatting | |
931 | ||
932 | * bindgen.adb: Minor style fixes. | |
933 | ||
934 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> | |
935 | ||
936 | * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of | |
937 | indexed components to the case where the prefix is a static string | |
938 | literal. | |
939 | ||
940 | 2009-04-16 Javier Miranda <miranda@adacore.com> | |
941 | ||
942 | * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place | |
943 | objects avoid any further expansion of the expression initializing the | |
944 | object. | |
945 | ||
c1c5e0fa AC |
946 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> |
947 | ||
948 | * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit | |
949 | that hides an outer homograph, make that homograph invisible when | |
950 | analyzing the actuals, to to prevent illegal direct visibility on it. | |
951 | ||
952 | 2009-04-16 Eric Botcazou <ebotcazou@adacore.com> | |
953 | ||
954 | * g-pehage.adb (Initialize): Fix off-by-one error. | |
955 | ||
d15d61c6 AC |
956 | 2009-04-16 Tristan Gingold <gingold@adacore.com> |
957 | ||
958 | * init.c: Detect real stack overflow on Darwin. | |
959 | ||
960 | * system-darwin-x86.ads: Use stack probing on darwin x86. | |
961 | ||
962 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> | |
963 | ||
964 | * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to | |
965 | take the address of an intrinsic subprogram. | |
966 | ||
0a0a18c3 AC |
967 | 2009-04-16 Arnaud Charlet <charlet@adacore.com> |
968 | ||
969 | * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented | |
970 | for the targets where GNAT.Traceback.Symbolic is not supported. | |
971 | ||
d15d61c6 AC |
972 | 2009-04-16 Vincent Celier <celier@adacore.com> |
973 | ||
974 | * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file. | |
975 | ||
976 | * g-trasym.ads: Update comments. | |
977 | ||
978 | 2009-04-16 Vasiliy Fofanov <fofanov@adacore.com> | |
979 | ||
980 | * tracebak.c (STOP_FRAME): Verify validity of the current address | |
981 | before dereferencing. | |
982 | ||
b61ebe4f AC |
983 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> |
984 | ||
985 | * sprint.adb (Write_Itype): If the itype is an array subtype, preserve | |
986 | the original location of the index expressions and the index subtypes, | |
987 | to prevent spurious out-of-scope references in gigi. | |
988 | ||
989 | 2009-04-16 Tristan Gingold <gingold@adacore.com> | |
990 | ||
991 | * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads: | |
992 | Add support for stack checking on darwin. | |
993 | ||
994 | 2009-04-16 Vincent Celier <celier@adacore.com> | |
995 | ||
996 | * prj-attr.adb: New attribute Runtime_Source_Dir | |
997 | ||
998 | * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process | |
999 | attribute Runtime_Source_Dir. | |
1000 | (Check_Naming_Schemes): Give default values to out parameters to avoid | |
1001 | invalid data. | |
1002 | ||
1003 | * prj.ads (Language_Config): New component Runtime_Source_Dir | |
1004 | ||
1005 | * snames.ads-tmpl: New standard name Runtime_Source_Dir | |
1006 | ||
468ee337 PO |
1007 | 2009-04-16 Pascal Obry <obry@adacore.com> |
1008 | ||
1009 | * adaint.h, adaint.c (__gnat_rmdir): New routine. | |
1010 | Simple wrapper routines used to convert to proper encoding on | |
1011 | Windows. | |
1012 | ||
1013 | * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library. | |
1014 | ||
1015 | * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed | |
1016 | twice. | |
1017 | ||
bca17d51 PO |
1018 | 2009-04-16 Pascal Obry <obry@adacore.com> |
1019 | ||
1020 | * s-crtl.ads, s-os_lib.adb: Minor code clean-up. | |
1021 | ||
4e0079cc AC |
1022 | 2009-04-16 Thomas Quinot <quinot@adacore.com> |
1023 | ||
1024 | * snames.ads-tmpl (Name_Defined): New predefined name for use by the | |
1025 | integrated preprocessor. | |
1026 | ||
1027 | * prep.ads, prep.adb (Setup_Hooks): New subprogram. | |
1028 | (Initialize): Split into two subprograms, Initialize (to be called | |
1029 | prior to compiler command line processing) and Setup_Hooks (to be called | |
1030 | later on when the first source file is loaded). | |
1031 | ||
1032 | * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks. | |
1033 | Add call to Prep.Initialize. | |
1034 | ||
1035 | * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call | |
1036 | to Prep.Setup_Hooks. | |
1037 | ||
1038 | 2009-04-16 Pascal Obry <obry@adacore.com> | |
1039 | ||
1040 | * adaint.h, adaint.c (__gnat_chdir): New routine. | |
1041 | Simple wrapper routines used to convert to proper encoding on | |
1042 | Windows. | |
1043 | ||
1044 | * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library. | |
1045 | ||
1046 | * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL. | |
1047 | ||
cbbdee52 AC |
1048 | 2009-04-16 Quentin Ochem <ochem@adacore.com> |
1049 | ||
1050 | * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead | |
1051 | of Source.Init. | |
1052 | ||
1053 | 2009-04-16 Eric Botcazou <ebotcazou@adacore.com> | |
1054 | ||
1055 | * a-convec.ads (Is_Empty): Mark inline. | |
1056 | ||
1057 | 2009-04-16 Nicolas Roche <roche@adacore.com> | |
1058 | ||
1059 | * init.c (__gnat_init_float): Initialize FPU on x86_64 windows | |
1060 | ||
1061 | 2009-04-16 Thomas Quinot <quinot@adacore.com> | |
1062 | ||
1063 | * prepcomp.adb: Minor reformatting | |
1064 | ||
7e8ed0a6 AC |
1065 | 2009-04-16 Jerome Lambourg <lambourg@adacore.com> |
1066 | ||
1067 | * sem_prag.adb (Process_Import_Or_Interface): With .NET, | |
1068 | Access_Subprogram types can also be imported. | |
1069 | (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL | |
1070 | names. | |
1071 | ||
1072 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> | |
1073 | ||
1074 | * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): | |
1075 | preserve homonym chain when the declaration is rewritten into a | |
1076 | renaming declaration, in order to preserve visibility structure. | |
1077 | ||
540b5d9c AC |
1078 | 2009-04-16 Jerome Lambourg <lambourg@adacore.com> |
1079 | ||
1080 | * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not | |
1081 | taken into account for VM targets. | |
1082 | ||
1083 | 2009-04-16 Hristian Kirtchev <kirtchev@adacore.com> | |
1084 | ||
1085 | * g-calend.ads, g-calend.adb (Week_In_Year): Now calls | |
1086 | Year_Week_In_Year. | |
1087 | (Year_Week_In_Year): New routine which contains the original code from | |
1088 | Week_In_Year. Add the missing special case for January 1st falling on | |
1089 | a Monday. | |
1090 | ||
dae4faf2 TQ |
1091 | 2009-04-16 Thomas Quinot <quinot@adacore.com> |
1092 | ||
1093 | * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic | |
1094 | actual type, use the base type to build the To_Any function. | |
1095 | (Build_From_Any_Function): Remove junk, useless subtype conversion. | |
1096 | ||
1097 | 2009-04-16 Thomas Quinot <quinot@adacore.com> | |
1098 | ||
1099 | * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb, | |
1100 | restrict.adb: Minor code reorganization (use | |
1101 | Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand). | |
1102 | ||
2794f022 AC |
1103 | 2009-04-16 Bob Duff <duff@adacore.com> |
1104 | ||
1105 | * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove, | |
1106 | unused. | |
1107 | ||
1108 | 2009-04-16 Thomas Quinot <quinot@adacore.com> | |
1109 | ||
1110 | * sem_ch4.adb: Minor reformatting | |
1111 | ||
1112 | * adaint.c: Remove junk duplicated code. | |
1113 | ||
1114 | * sem_ch3.adb: Minor reformatting | |
1115 | ||
1116 | * exp_dist.adb: Minor comment rewording | |
1117 | ||
a8e65aa5 AC |
1118 | 2009-04-16 Robert Dewar <dewar@adacore.com> |
1119 | ||
1120 | * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa | |
1121 | used together. | |
1122 | ||
1123 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> | |
1124 | ||
1125 | * sem_ch4.adb (Find_Equality_Types): Filter out types that are not | |
1126 | usable before calling Add_One_Interp, to resolve spurious ambiguities. | |
1127 | ||
bded454f RD |
1128 | 2009-04-16 Robert Dewar <dewar@adacore.com> |
1129 | ||
b0fbf3c0 RD |
1130 | * Make-lang.in: Add entries for s-conca?.o |
1131 | ||
bded454f RD |
1132 | * Makefile.rtl: Add entries for s-conca? |
1133 | ||
1134 | * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior | |
1135 | of concatenation expansion | |
1136 | ||
1137 | * exp_ch4.adb (Expand_Concatenation): Generate calls for certain | |
1138 | string cases instead of expanding assignments inline. | |
1139 | ||
1140 | * opt.ads (Optimize_Size): New flag | |
1141 | ||
1142 | * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads, | |
1143 | s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb, | |
1144 | s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads, | |
1145 | s-conca9.adb, s-conca9.ads: New file. | |
1146 | ||
4a3b249c RD |
1147 | 2009-04-16 Robert Dewar <dewar@adacore.com> |
1148 | ||
1149 | * exp_ch6.adb: Add comments | |
1150 | ||
1151 | * rtsfind.ads: Add entries for s-conca? routines | |
1152 | ||
e8e028cb | 1153 | 2009-04-16 Arnaud Charlet <charlet@adacore.com> |
14814170 AC |
1154 | |
1155 | * gcc-interface/Make-lang.in: Update dependencies. | |
1156 | ||
1157 | * gcc-interface/Makefile.in: Update translation for vms. | |
1158 | ||
3204b9cd AC |
1159 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> |
1160 | ||
1161 | * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities | |
1162 | and made global, to be used when installing parents of a child | |
1163 | instance, to provide mappings for entities declared in formal packages | |
1164 | of ancestor units. Now called from Install_Formal_Packages. | |
1165 | ||
1166 | 2009-04-16 Doug Rupp <rupp@adacore.com> | |
1167 | ||
1168 | * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others | |
1169 | notation for clarity. | |
1170 | ||
1171 | * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb, | |
1172 | s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb, | |
1173 | s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb | |
1174 | (Initialize): Initialize Known_Tasks with Environment task. | |
1175 | ||
1176 | * s-taskin.ads (Task_States): Move new states to end for the sake of | |
1177 | GDB compatibility. | |
1178 | ||
1179 | * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task. | |
1180 | ||
f17f3601 ES |
1181 | 2009-04-16 Ed Schonberg <schonberg@adacore.com> |
1182 | ||
1183 | * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected | |
1184 | operation has an inline pragma, propagate the flag to the internal | |
1185 | unprotected subprogram. | |
1186 | ||
5e44c5ea DR |
1187 | 2009-04-16 Doug Rupp <rupp@adacore.com> |
1188 | ||
1189 | * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb, | |
1190 | s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb, | |
1191 | s-taprop-hpux-dce.adb, s-taprop-posix.adb | |
1192 | (Enter_Task): Move Known_Tasks initialization to s-tassta.adb | |
1193 | ||
1194 | * s-taprop-vms.adb (Enter_Task): Likewise. | |
1195 | (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback. | |
1196 | ||
1197 | * s-tassta.adb (Activate_Tasks): After task creation set state to | |
1198 | Activating, vice Runnable. Initialize Known_Tasks, moved here from | |
1199 | s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger. | |
1200 | Set state to Runnable after above. | |
1201 | (Task_Wrapper): Set Debug_Event_Run. In exception block set | |
1202 | Debug_Event_Terminated. | |
1203 | ||
1204 | * s-taskin.ads (Task_States): Add new states Activiting and | |
1205 | Activator_Delay_Sleep. | |
1206 | (Bit_Array, Debug_Event_Array): New types. | |
1207 | (Global_Task_Debug_Event_Set: New flag. | |
1208 | (Common_ATCB): New field Debug_Events. | |
1209 | ||
1210 | * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events. | |
1211 | ||
1212 | * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice | |
1213 | Activator_Sleep. | |
1214 | ||
1215 | * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when | |
1216 | Activating and when Acceptor_Delay_Sleep. | |
1217 | ||
1218 | * s-tasdeb.ads: Add constants for Debug_Events. | |
1219 | (Debug_Event_Kind_Type): New subtype. | |
1220 | (Signal_Debug_Event): New subprogram. | |
1221 | ||
1222 | * s-tasdeb.adb (Signal_Debug_Event): New null subprogram. | |
1223 | ||
205c14b0 TQ |
1224 | 2009-04-16 Thomas Quinot <quinot@adacore.com> |
1225 | ||
1226 | * sem_elim.adb: Minor reformatting | |
1227 | ||
1228 | * freeze.adb: Minor reformatting | |
1229 | ||
1230 | * exp_ch4.adb: Minor reformatting | |
1231 | ||
b4763f5c AC |
1232 | 2009-04-16 Emmanuel Briot <briot@adacore.com> |
1233 | ||
1234 | * prj-nmsc.adb (Path_Name_Of): fix memory leak | |
1235 | ||
1236 | 2009-04-16 Robert Dewar <dewar@adacore.com> | |
1237 | ||
1238 | * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation | |
1239 | ||
1240 | 2009-04-16 Vincent Celier <celier@adacore.com> | |
1241 | ||
1242 | * fmap.adb (Initialize): Show the current line when the mapping file | |
1243 | is detected as "incorrectly formatted". | |
1244 | ||
1245 | 2009-04-16 Robert Dewar <dewar@adacore.com> | |
1246 | ||
1247 | * sem_ch12.adb: Minor reformatting | |
1248 | ||
1249 | * sem_ch5.adb: Minor comment addition | |
1250 | ||
1251 | * sem_util.adb: Minor reformatting | |
1252 | ||
1253 | * sinput-p.adb: Minor reformatting | |
1254 | Add missing pragma Warnings (On) | |
1255 | ||
0c72247e AC |
1256 | 2009-04-16 Ed Falis <falis@adacore.com> |
1257 | ||
1258 | * s-vxwext-kernel.adb: (ERROR): deleted unused constant | |
1259 | ||
1260 | 2009-04-16 Vincent Celier <celier@adacore.com> | |
1261 | ||
1262 | * ali-util.adb: Minor comment spelling error fix | |
1263 | ||
014caddb EB |
1264 | 2009-04-16 Eric Botcazou <ebotcazou@adacore.com> |
1265 | ||
1266 | * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not | |
1267 | generate an assignment loop in case of overlap. | |
1268 | ||
b2ed7a03 AC |
1269 | 2009-04-16 Olivier Hainque <hainque@adacore.com> |
1270 | ||
1271 | * gnat_ugn.texi (gnatmem description): Make it explicit that | |
1272 | gnatmem is designed to work in association with static runtime | |
1273 | library only. | |
1274 | ||
1275 | 2009-04-16 Thomas Quinot <quinot@adacore.com> | |
1276 | ||
1277 | * sem_type.adb: Minor reformatting | |
1278 | ||
1279 | 2009-04-16 Hristian Kirtchev <kirtchev@adacore.com> | |
1280 | ||
1281 | * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment | |
1282 | concerning return codes of gettimeofday and return value check. | |
1283 | ||
1284 | 2009-04-16 Ed Falis <falis@adacore.com> | |
1285 | ||
1286 | * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so | |
1287 | body can be renaming of imported routines. | |
1288 | ||
1289 | 2009-04-16 Vasiliy Fofanov <fofanov@adacore.com> | |
1290 | ||
1291 | * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more | |
1292 | targeted fashion. | |
1293 | ||
8a912a6e AC |
1294 | 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> |
1295 | ||
1296 | * exp_ch9.adb: Comment improvements. | |
1297 | (Build_Entry_Family_Name): Add parentheses around the index of a entry | |
1298 | family member. | |
1299 | ||
1300 | 2009-04-15 Bob Duff <duff@adacore.com> | |
1301 | ||
1302 | * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like | |
1303 | "while X /= null loop" where X is unchanged inside the loop. We were | |
1304 | not warning in this case, because of the pointers -- we feared that the | |
1305 | loop variable could be updated via a pointer, if there are any pointers | |
1306 | around the place. But that is impossible in this case. | |
1307 | ||
1308 | * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in | |
1309 | the case of dereferences. In X.all, X cannot be an l-value. We now | |
1310 | catch that case (and implicit dereferences, too). | |
1311 | ||
1312 | 2009-04-15 Vincent Celier <celier@adacore.com> | |
1313 | ||
1314 | * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure | |
1315 | ||
1316 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1317 | ||
1318 | * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive. | |
1319 | From code reading. | |
1320 | (Analyze_Package_Instantiation): If generic unit in child instance is | |
1321 | the same as generic unit in parent instance, look for an outer homonym | |
1322 | to locate the desired generic. | |
1323 | ||
4a13695c AC |
1324 | 2009-04-15 Bob Duff <duff@adacore.com> |
1325 | ||
1326 | * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop | |
1327 | warnings unless the loop comes from source, because checking generated | |
1328 | loops is a waste of time, and makes it harder to debug | |
1329 | Check_Infinite_Loop_Warning. | |
1330 | ||
1331 | * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable | |
1332 | tested in the while loop is a renaming, do not warn. Otherwise, we get | |
1333 | false alarms, because it's usually renaming something that we can't | |
1334 | deal with (an indexed component, a global variable, ...). | |
1335 | ||
1336 | * gnat_rm.texi: Fix typo | |
1337 | ||
1338 | 2009-04-15 Thomas Quinot <quinot@adacore.com> | |
1339 | ||
1340 | * sem_ch6.adb: Minor reformatting | |
1341 | ||
c3b36d48 AC |
1342 | 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> |
1343 | ||
1344 | * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the | |
1345 | immediate parent of the controlled function call is a component | |
1346 | association. | |
1347 | ||
1348 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1349 | ||
1350 | * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the | |
1351 | corresponding class-wide type is also in use. | |
1352 | ||
1353 | 2009-04-15 Thomas Quinot <quinot@adacore.com> | |
1354 | ||
1355 | * frontend.adb: Minor comment fix | |
1356 | ||
1f07382d AC |
1357 | 2009-04-15 Robert Dewar <dewar@adacore.com> |
1358 | ||
1359 | * gnatchop.adb (BOM_Length): New global variable | |
1360 | (Write_Unit): Add new parameter Write_BOM | |
1361 | (Write_Chopped_Files): Check for BOM and set Write_BOM for call | |
1362 | to Write_Unit | |
1363 | ||
1364 | * gnat_ugn.texi: Add note on propagation of BOM by gnatchop | |
1365 | ||
1366 | 2009-04-15 Geert Bosch <bosch@adacore.com> | |
1367 | ||
1368 | * system-mingw-x86_64.ads, system-darwin-x86_64.ads | |
1369 | (Backend_Overflow_Checks): Set to True. | |
1370 | ||
1371 | 2009-04-15 Gary Dismukes <dismukes@adacore.com> | |
1372 | ||
1373 | * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized | |
1374 | keyword is given in a record extension. | |
1375 | ||
1376 | 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> | |
1377 | ||
1378 | * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion | |
1379 | of a controlled function call in the context of a record aggregate. | |
1380 | This does not apply to array aggregates since the call will be expanded | |
1381 | into assignments. | |
1382 | ||
1383 | 2009-04-15 Ed Falis <falis@adacore.com> | |
1384 | ||
1385 | * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb, | |
1386 | s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb, | |
3405870d EF |
1387 | s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize |
1388 | s-osinte-vxworks* and s-vxwext*. | |
1f07382d | 1389 | |
6cc60200 AC |
1390 | 2009-04-15 Arnaud Charlet <charlet@adacore.com> |
1391 | ||
1392 | * gcc-interface/Make-lang.in: Update dependencies. | |
1393 | ||
1394 | * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks* | |
1395 | and s-vxwext*. | |
1396 | ||
f66d46ec AC |
1397 | 2009-04-15 Robert Dewar <dewar@adacore.com> |
1398 | ||
1399 | * sem_ch13.adb (Unchecked_Conversions): Store source location instead | |
1400 | of node for location for warning messages. | |
1401 | ||
1402 | * gnatchop.adb: Minor reformatting | |
1403 | ||
1404 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1405 | ||
1406 | * exp_ch6.adb: additional guard for renaming declarations for in | |
1407 | parameters of an array type. | |
1408 | ||
bafc9e1d AC |
1409 | 2009-04-15 Robert Dewar <dewar@adacore.com> |
1410 | ||
1411 | * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds | |
1412 | in case they were rewritten by expander (Force_Evaluation). | |
1413 | ||
1414 | * targparm.adb (Get_Target_Parameters): Correct check for | |
1415 | Suppress_Exception_Locations. | |
1416 | ||
1417 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1418 | ||
1419 | * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be | |
1420 | inlined is of an array type that is not bit-packed, use a renaming | |
1421 | declaration to capture its value, rather than a constant declaration. | |
1422 | ||
443614e3 AC |
1423 | 2009-04-15 Robert Dewar <dewar@adacore.com> |
1424 | ||
1425 | * rtsfind.adb: Minor reformatting. | |
1426 | ||
1427 | 2009-04-15 Emmanuel Briot <briot@adacore.com> | |
1428 | ||
1429 | * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames | |
1430 | Restore, and free the saved context. | |
1431 | ||
1432 | 2009-04-15 Gary Dismukes <dismukes@adacore.com> | |
1433 | ||
1434 | * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check | |
1435 | for illegal private extension from a synchronized interface parent in | |
1436 | front of check for illegal limited extension so that limited extension | |
1437 | from a synchronized interface will be rejected. | |
1438 | (Check_Ifaces): Check that a private extension that has a synchronized | |
1439 | interface as a progenitor must be explicitly declared synchronized. | |
1440 | Also check that a record extension cannot derive from a synchronized | |
1441 | interface. | |
1442 | ||
991395ab AC |
1443 | 2009-04-15 Pascal Obry <obry@adacore.com> |
1444 | ||
1445 | * adaint.h (__gnat_unlink): Add spec. | |
1446 | (__gnat_rename): Likewise. | |
1447 | ||
1448 | 2009-04-15 Vincent Celier <celier@adacore.com> | |
1449 | ||
1450 | * prj-nmsc.adb: Minor spelling error corrections in error messages | |
1451 | ||
1452 | 2009-04-15 Robert Dewar <dewar@adacore.com> | |
1453 | ||
1454 | * sinfo.ads: Minor comment update | |
1455 | ||
1456 | * opt.ads: Minor comment updates | |
1457 | ||
1458 | * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for | |
1459 | modular type. | |
1460 | ||
1461 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1462 | ||
1463 | * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function | |
1464 | that generates the code needed to update a dispatch table when a | |
1465 | primitive operation is declared with a subprogram body without previous | |
1466 | spec. Insertion of the generated code is responsibility of the caller. | |
1467 | (Make_DT): When building static tables, append the code created by | |
1468 | Register_Primitive to update a secondary table after it has been | |
1469 | constructed. | |
1470 | ||
1471 | * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive. | |
1472 | ||
1473 | * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive | |
1474 | on an overriding operation that implements an interface operation only | |
1475 | if not building static dispatch tables. | |
1476 | ||
1477 | 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> | |
1478 | ||
1479 | * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which | |
1480 | does not cause overflow when converted to Duration. Use the safe value | |
1481 | as the maximum allowable time delay.. | |
1482 | ||
1483 | 2009-04-15 Jerome Lambourg <lambourg@adacore.com> | |
1484 | ||
1485 | * g-comlin.adb (Set_Command_Line): When adding a switch with attached | |
1486 | parameter, specify that the delimiter is NUL, otherwise "-j2" will be | |
1487 | translated to "-j 2". | |
1488 | ||
1489 | 2009-04-15 Bob Duff <duff@adacore.com> | |
1490 | ||
1491 | * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit | |
1492 | with_clauses, to avoid code duplication. Change this processing so we | |
1493 | always add a with_clause on the main unit if needed. | |
1494 | ||
55cc1a05 AC |
1495 | 2009-04-15 Pascal Obry <obry@adacore.com> |
1496 | ||
1497 | Add support for Win32 native encoding for delete/rename routines. | |
1498 | ||
1499 | * adaint.c (__gnat_unlink): New routine. | |
1500 | (__gnat_rename): New routine. | |
1501 | Simple wrapper routines used to convert to proper encoding on | |
1502 | Windows. | |
1503 | ||
1504 | * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct | |
1505 | call to the C library. | |
1506 | ||
1507 | * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding. | |
1508 | ||
1509 | 2009-04-15 Robert Dewar <dewar@adacore.com> | |
1510 | ||
1511 | * s-tassta.adb: Minor reformatting | |
1512 | ||
1f6821b4 AC |
1513 | 2009-04-15 Robert Dewar <dewar@adacore.com> |
1514 | ||
1515 | * frontend.adb (Frontend): Set proper default for | |
1516 | Warn_On_Non_Local_Exception. | |
1517 | ||
1518 | * opt.ads (Exception_Handler_Encountered): New flag | |
1519 | (No_Warn_On_Non_Local_Exception): New flag | |
1520 | ||
1521 | * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered | |
1522 | ||
1523 | * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception | |
1524 | (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception | |
1525 | ||
1526 | 2009-04-15 Cyrille Comar <comar@adacore.com> | |
1527 | ||
1528 | * s-tassta.adb, a-exextr.adb, a-elchha.adb | |
1529 | (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception | |
1530 | message when exception traces are active since it would generate | |
1531 | redundant information. | |
1532 | (Exception_Traces.Notify_Exception): put message output by a critical | |
1533 | section to avoid unsynchronized output. | |
1534 | (Trace_Unhandled_Exception_In_Task): put message output by a critical | |
1535 | section to avoid unsynchronized output. | |
1536 | ||
1537 | 2009-04-15 Emmanuel Briot <briot@adacore.com> | |
1538 | ||
1539 | * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads | |
1540 | (Free): New subprogram. | |
1541 | ||
8aec446b AC |
1542 | 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> |
1543 | ||
1544 | * a-calend.adb: Add new constant Nanos_In_Four_Years. | |
1545 | (Formatting_Operations.Time_Of): Change the way four year chunks of | |
1546 | nanoseconds are added to the intermediate result. | |
1547 | ||
1548 | 2009-04-15 Nicolas Setton <setton@adacore.com> | |
1549 | ||
1550 | * sysdep.c: Add __APPLE__ in the list of systems where get_immediate | |
1551 | does not need to wait for a carriage return. | |
1552 | ||
1553 | 2009-04-15 Tristan Gingold <gingold@adacore.com> | |
1554 | ||
1555 | * bindgen.adb: Do not generate adafinal if No_Finalization restriction | |
1556 | is set. | |
1557 | ||
1558 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1559 | ||
1560 | * freeze.adb (Freeze_Entity): improve error message for improper use of | |
1561 | incomplete types. | |
1562 | Diagnose additional illegal uses of incomplete types in formal parts. | |
1563 | appearing in formal parts. | |
1564 | ||
1565 | * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto. | |
1566 | ||
1567 | 2009-04-15 Robert Dewar <dewar@adacore.com> | |
1568 | ||
1569 | * exp_ch4.adb (Expand_N_Allocator): Install test for object too large. | |
1570 | ||
442dd5fb NR |
1571 | 2009-04-15 Nicolas Roche <roche@adacore.com> |
1572 | ||
1573 | * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the | |
1574 | current thread. | |
1575 | ||
1576 | * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self | |
1577 | ||
1578 | * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB | |
1579 | ||
61bee0e3 AC |
1580 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> |
1581 | ||
1582 | * sem_ch4.adb: improve error message on exponentiation. | |
1583 | ||
1584 | 2009-04-15 Hristian Kirtchev <kirtchev@adacore.com> | |
1585 | ||
1586 | * a-calend.adb: Move constant Epoch_Offset from package | |
1587 | Conversion_Operations to top level. | |
1588 | (Delay_Operations.To_Duration): Define a constant which represents | |
1589 | "end of time" and use it as a guard against very distant delay dates. | |
1590 | Protect the code against overflow when performing the origin shift to | |
1591 | Unix time. | |
1592 | ||
361effb1 AC |
1593 | 2009-04-15 Robert Dewar <dewar@adacore.com> |
1594 | ||
1595 | * sem_prag.adb: Minor reformatting. | |
1596 | ||
1597 | * sem_type.adb: Minor reformatting | |
1598 | ||
1599 | 2009-04-15 Javier Miranda <miranda@adacore.com> | |
1600 | ||
1601 | * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing | |
1602 | support to check eliminated subprograms. | |
1603 | ||
1604 | * sem_elim.ads (Eliminate_Error_Msg): Update documentation. | |
1605 | ||
1606 | * sem_elim.adb (Set_Eliminated): Add support for elimination of | |
1607 | dispatching subprograms. | |
1608 | ||
1609 | * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive | |
1610 | operations. Initialize with "null" the slots of eliminated dispaching | |
1611 | primitives. | |
1612 | (Write_DT): Add output for eliminated primitives. | |
1613 | ||
1614 | * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives. | |
1615 | ||
f7ca1d04 AC |
1616 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> |
1617 | ||
1618 | * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit, | |
1619 | the second is redundant, regardless of scopes. | |
1620 | ||
1621 | 2009-04-15 Vincent Celier <celier@adacore.com> | |
1622 | ||
1623 | * prj-nmsc.adb (Get_Directories): Check for sources before checking | |
1624 | the object directory as when there are no sources, they may not be any | |
1625 | object directory. | |
1626 | ||
1627 | * make.adb (Gnatmake): Do not attempt to get the path name of the exec | |
1628 | directory, when there are no exec directory. | |
1629 | ||
1630 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1631 | ||
1632 | * sem_type.adb (Remove_Conversions): In order to resolve spurious | |
1633 | ambiguities, refine removal of universal interpretations from complex | |
1634 | expressions with literal arguments, when some numeric operators have | |
1635 | been declared abstract. | |
1636 | ||
1637 | 2009-04-15 Ed Falis <falis@adacore.com> | |
1638 | ||
1639 | * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity | |
1640 | and backward compatibility for targets using probing for stack overflow | |
1641 | ||
1642 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1643 | ||
1644 | * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal | |
1645 | after any declaration, including renaming declarations. | |
1646 | ||
4bffd4e0 AC |
1647 | 2009-04-15 Arnaud Charlet <charlet@adacore.com> |
1648 | ||
1649 | * gcc-interface/Make-lang.in: Update dependencies. | |
1650 | ||
1651 | * gcc-interface/Makefile.in: Fix VxWorks target pairs. | |
cbd8be94 | 1652 | Update xenomai target pairs. |
4bffd4e0 | 1653 | |
a523b302 JM |
1654 | 2009-04-15 Javier Miranda <miranda@adacore.com> |
1655 | ||
1656 | * exp_ch4.adb (Expand_N_Allocator): Code cleanup. | |
1657 | ||
1658 | * sem_ch6.adb (Check_Anonymous_Return): Add missing support for | |
1659 | functions returning anonymous access to class-wide limited types. Mark | |
1660 | also the containing scope as a task master. | |
1661 | ||
1662 | * sem_ch8.adb (Restore_Scope_Stack): Add missing management for | |
1663 | limited-withed packages. Required to restore their visibility after | |
1664 | processing packages associated with implicit with-clauses. | |
1665 | ||
1666 | * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters | |
1667 | associated with return statements because this work is now done by | |
1668 | Check_Anonymous_Return. | |
1669 | (Build_Master): Code cleanup. | |
1670 | ||
e358346d AC |
1671 | 2009-04-15 Thomas Quinot <quinot@adacore.com> |
1672 | ||
1673 | * sem_warn.ads: Minor reformatting | |
1674 | ||
1675 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1676 | ||
1677 | * sem_ch3.adb: better error message for illegal interfaces | |
1678 | ||
1679 | * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a | |
1680 | formal is an incomplete type from a limited_with clause. | |
1681 | ||
a9872a59 VC |
1682 | 2009-04-15 Vincent Celier <celier@adacore.com> |
1683 | ||
1684 | * prj-nmsc.adb (Locate_Directory): New Boolean parameter | |
1685 | Externally_Built indicating if the project is externally built. If it | |
1686 | is, and --subdirs is specified, but the subdir does not exist, look | |
1687 | for the specified directory, without the subdir. | |
1688 | ||
b8aadf01 AC |
1689 | 2009-04-15 Gary Dismukes <dismukes@adacore.com> |
1690 | ||
1691 | * a-tasatt.adb: Fix typo, plus minor reformatting | |
1692 | ||
1693 | * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide"). | |
1694 | ||
1695 | * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible"). | |
1696 | ||
1697 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> | |
1698 | ||
1699 | * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a | |
1700 | private extension whose parent is a synchronized interface carries an | |
1701 | explicit synchronized keyword. | |
1702 | ||
a808ba1b TQ |
1703 | 2009-04-15 Thomas Quinot <quinot@adacore.com> |
1704 | ||
1705 | * exp_smem.adb (Make_Shared_Var_Procs): For a protected type, | |
1706 | instantiate generic shared object package with the corresponding | |
1707 | record type. | |
1708 | ||
e0568eec AC |
1709 | 2009-04-15 Arnaud Charlet <charlet@adacore.com> |
1710 | ||
1711 | * system-linux-sparc.ads: Remove obsolete entries. | |
1712 | ||
1713 | 2009-04-15 Thomas Quinot <quinot@adacore.com> | |
1714 | ||
1715 | * s-tasuti.ads: Add ??? comment | |
1716 | ||
28450a75 ES |
1717 | 2009-04-15 Ed Schonberg <schonberg@adacore.com> |
1718 | ||
1719 | * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access | |
1720 | type even if the designated type comes from a limited_with clause, to | |
1721 | ensure that the symbol for the finalization list of the access type is | |
1722 | created. | |
1723 | ||
b0d3b11d AC |
1724 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1725 | ||
1726 | * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases | |
1727 | for warning suppression. | |
1728 | ||
1729 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
1730 | ||
1731 | * sem_ch8.adb (Use_One_Type): If the two use_type clauses are | |
1732 | identical, there is no redudancy to check. | |
1733 | ||
1734 | 2009-04-10 Gary Dismukes <dismukes@adacore.com> | |
1735 | ||
1736 | * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant | |
1737 | calls initializing SS_Allocator (which is initialized in following | |
1738 | code). | |
1739 | (Expand_Simple_Function_Return): Add comment about False value for | |
1740 | Comes_From_Source on secondary-stack allocator. | |
1741 | ||
1742 | * exp_ch9.adb (Build_Entry_Family_Name): Add comment. | |
1743 | (Build_Entry_Name): Add comment. | |
1744 | ||
fad0600d AC |
1745 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1746 | ||
1747 | * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known | |
1748 | ||
1749 | * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower | |
1750 | bound tested, since this is now done more generally in Sem_Res. | |
1751 | ||
1752 | * sem_res.adb (Resolve_Comparison_Op): Add call to | |
1753 | Check_Lower_Bound_Tested. | |
1754 | (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested | |
1755 | ||
1756 | * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure | |
1757 | (Low_Bound_Tested): New name for Low_Bound_Known flag | |
1758 | ||
1759 | * exp_ch5.adb: Minor reformatting | |
1760 | ||
1761 | * exp_ch4.adb: | |
1762 | Add comments on copying the Comes_From_Source flag for allocators | |
1763 | ||
1764 | * sinfo.ads: | |
1765 | Add comments on copying the Comes_From_Source flag for allocators | |
1766 | ||
1767 | * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy | |
1768 | Comes_From_Source flag from old allocator to new one. | |
1769 | ||
1770 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
1771 | ||
1772 | * sem_ch6.ads: Address missing documentation query | |
1773 | ||
1774 | 2009-04-10 Vincent Celier <celier@adacore.com> | |
1775 | ||
1776 | * prj-attr.adb: | |
1777 | Add new Linker attributes Max_Command_Line_Length, Response_File_Format | |
1778 | and Response_File_Switches. | |
1779 | ||
1780 | * prj-nmsc.adb (Process_Linker): Process new attributes | |
1781 | Max_Command_Line_Length, Response_File_Format and | |
1782 | Response_File_Switches. | |
1783 | ||
1784 | * prj.ads (Response_File_Format): New enumeration type | |
1785 | (Project_Configuration): New componants Max_Command_Line_Length, | |
1786 | Resp_File_Format and Resp_File_Options. | |
1787 | ||
1788 | * snames.ads-tmpl: Add new standard names for linking response files | |
1789 | for gprbuild: GNU, None, Object_List, Option_List, | |
1790 | Max_Command_Line_Length, Response_File_Format and | |
1791 | Response_File_Switches. | |
1792 | ||
1793 | 2009-04-10 Geert Bosch <bosch@adacore.com> | |
1794 | ||
1795 | * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads, | |
1796 | system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads, | |
1797 | system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads, | |
1798 | system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads, | |
1799 | system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads, | |
1800 | system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads, | |
1801 | system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads, | |
1802 | system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads, | |
1803 | system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads, | |
1804 | system-vxworks-arm.ads, system-vxworks-m68k.ads, | |
1805 | system-vxworks-mips.ads, system-vxworks-ppc.ads, | |
1806 | system-vxworks-sparcv9.ads, system-vxworks-x86.ads | |
1807 | (Backend_Overflow_Checks): Set to True. | |
1808 | ||
934a3a25 AC |
1809 | 2009-04-10 Thomas Quinot <quinot@adacore.com> |
1810 | ||
1811 | * exp_attr.adb: Minor reformatting | |
1812 | ||
1813 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
1814 | ||
1815 | * sem_prag.adb (Check_Precondition_Postcondition): Within a generic, | |
1816 | analyze the expression for a postcondition, even if the compiler mode | |
1817 | is Generate_Code. | |
1818 | ||
ab8e1b35 RD |
1819 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1820 | ||
1821 | * sem_aux.adb: Minor reformatting | |
1822 | ||
2c880bdf EF |
1823 | 2009-04-10 Ed Falis <falis@adacore.com> |
1824 | ||
1825 | * init.c: Change VxWorks 6 stack overflow checking for kernel apps. | |
1826 | ||
1827 | * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header. | |
1828 | ||
d8221f45 TQ |
1829 | 2009-04-10 Thomas Quinot <quinot@adacore.com> |
1830 | ||
1831 | * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for | |
1832 | undocumented formal. | |
1833 | Minor reformatting | |
1834 | ||
1835 | * a-direio.ads: Fix typo in comment | |
1836 | ||
1837 | * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb, | |
1838 | errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb: | |
1839 | Use uniform phrasing for comment at start of subprogram body. | |
1840 | ||
1841 | * xsnamest.adb: Add note to explain why we use specific names for the | |
1842 | newly generated files instead of generating snames.{ads,adb,h} directly | |
1843 | ||
f559e62f AC |
1844 | 2009-04-10 Sergey Rybin <rybin@adacore.com> |
1845 | ||
1846 | * vms_data.ads: | |
1847 | Add qualifier for new gnatstub option '--no-exception' | |
1848 | ||
1849 | * gnat_ugn.texi: | |
1850 | Add the description of the new gnatstub option '--no-exception' | |
1851 | ||
1852 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
1853 | ||
1854 | * rtsfind.adb: Minor reformatting | |
1855 | ||
1856 | 2009-04-10 Thomas Quinot <quinot@adacore.com> | |
1857 | ||
1858 | * sem_disp.adb: Minor reformatting. | |
1859 | Add comment pointing to RM clause for the case of warning against a | |
1860 | (failed) attempt at declaring a primitive operation elsewhere than in a | |
1861 | package spec. | |
1862 | ||
1863 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
1864 | ||
1865 | * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is | |
1866 | an actual for a previous formal package of the current instance. | |
1867 | ||
e50e1c5e AC |
1868 | 2009-04-10 Bob Duff <duff@adacore.com> |
1869 | ||
1870 | * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs | |
1871 | them first, rather than on the extended main unit. | |
1872 | ||
1873 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
1874 | ||
1875 | * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant | |
1876 | specification of full view carries a null exclusion indicator, create | |
1877 | an itype for it, to check for conformance with partial view. | |
1878 | ||
cb736868 AC |
1879 | 2009-04-10 Bob Duff <duff@adacore.com> |
1880 | ||
1881 | * rtsfind.ads: Minor code change: make RE_Unit_Table constant. | |
1882 | ||
1883 | * rtsfind.adb: Minor comment changes, and remove useless code. | |
1884 | ||
1885 | * sinfo.ads: Add ??? comment. | |
1886 | ||
1887 | 2009-04-10 Vincent Celier <celier@adacore.com> | |
1888 | ||
1889 | * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U | |
1890 | ||
8a78c50d AC |
1891 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> |
1892 | ||
1893 | * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged | |
1894 | type is a synchronized type, retrieve tag information from the | |
1895 | corresponding record, which has the dispatch table link. | |
1896 | ||
1897 | 2009-04-10 Jerome Lambourg <lambourg@adacore.com> | |
1898 | ||
1899 | * g-comlin.adb (Group_Analysis): Take care of switches that might be | |
1900 | decomposed afterwards, but are present as-is in the command line | |
1901 | configuration, and thus should be kept as-is. | |
1902 | ||
b66c3ff4 AC |
1903 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1904 | ||
1905 | * gnat_rm.texi: Document that postconditions are tested on implicit | |
1906 | returns. | |
1907 | ||
1908 | * sem_aux.adb: Minor reformatting | |
1909 | ||
1910 | 2009-04-10 Gary Dismukes <dismukes@adacore.com> | |
1911 | ||
1912 | * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when | |
1913 | setting Etype. | |
1914 | ||
1915 | * par-ch3.adb (P_Access_Type_Definition): Set new attribute | |
1916 | Null_Exclusion_In_Return_Present when an access-to-function type has a | |
1917 | result type with an explicit not null. | |
1918 | ||
1919 | * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is | |
1920 | given on the result type, then create a null-excluding itype for the | |
1921 | function. | |
1922 | ||
1923 | * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in | |
1924 | the case where a null exclusion is imposed on a named access type. | |
1925 | (Analyze_Subprogram_Specification): Push and pop the scope of the | |
1926 | function around the call to Analyze_Return_Type in the case of no | |
1927 | formals, for consistency with handling when formals are present | |
1928 | (Process_Formals does this). Ensures that any itype created for the | |
1929 | return type will be associated with the proper scope. | |
1930 | ||
1931 | * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null | |
1932 | exclusion is given on a generic function's result type, then create a | |
1933 | null-excluding itype for the generic function. | |
1934 | (Instantiate_Object): Set Null_Exclusion_Present of a constant created | |
1935 | for an actual for a formal in object according to the setting on the | |
1936 | formal. Ensures null exclusion checks are done when the association is | |
1937 | elaborated. | |
1938 | ||
1939 | * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on | |
1940 | N_Access_Function_Definition. | |
1941 | ||
1942 | * sinfo.adb: Add Get_ and Set_ operations for | |
1943 | Null_Exclusion_In_Return_Present. | |
1944 | ||
5334d18f BD |
1945 | 2009-04-10 Bob Duff <duff@adacore.com> |
1946 | ||
1947 | * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a | |
1948 | call to the _Postconditions procedure in the case of implicit returns | |
1949 | from analysis to expansion. This eliminates some duplicated code. Use | |
1950 | the Postcondition_Proc to find the identity of this procedure during | |
1951 | expansion. | |
1952 | ||
701b7fbb RD |
1953 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1954 | ||
1955 | * sem_ch6.adb: Minor code clean up. | |
1956 | ||
1957 | * einfo.ads, sem_attr.adb: Minor comment fixes. | |
1958 | ||
1959 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
1960 | ||
1961 | * sem_ch8.adb: Minor reformatting | |
1962 | ||
7ca78bba RD |
1963 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1964 | ||
1965 | * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for | |
1966 | procedures. | |
1967 | ||
1968 | * sem_ch6.adb: Minor code clean up. | |
1969 | ||
043ce308 AC |
1970 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
1971 | ||
1972 | * mlib-tgt-specific-xi.adb: Minor reformatting | |
1973 | ||
1974 | 2009-04-10 Bob Duff <duff@adacore.com> | |
1975 | ||
1976 | * einfo.ads: Minor comment fixes | |
1977 | ||
1978 | 2009-04-10 Vincent Celier <celier@adacore.com> | |
1979 | ||
1980 | * snames.ads-tmpl: Remove names that are no longer used in the | |
1981 | Project Manager. | |
1982 | Mark specifically those that are used only in gprbuild | |
1983 | ||
1984 | 2009-04-10 Eric Botcazou <ebotcazou@adacore.com> | |
1985 | ||
1986 | * init.c: Adjust EH support code on Alpha/Tru64. | |
1987 | ||
1988 | 2009-04-10 Bob Duff <duff@adacore.com> | |
1989 | ||
1990 | * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions | |
1991 | procedure on every path that could return implicitly (not via a return | |
1992 | statement) from a procedure. | |
1993 | ||
1994 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
1995 | ||
1996 | * exp_ch9.adb (Build_Master_Entity): An extended return statement is a | |
1997 | valid scope for a task declarations and therefore for a master id. | |
1998 | ||
1999 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
2000 | ||
2001 | * sem_aux.adb: Minor reformatting | |
2002 | ||
2003 | 2009-04-10 Vincent Celier <celier@adacore.com> | |
2004 | ||
2005 | * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to | |
2006 | True. | |
2007 | (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False | |
2008 | (Set_Obsolescent_Check): New procedure to change the value of | |
2009 | Obsolescent_Check_Flag. | |
2010 | ||
2011 | * scn.ads (Set_Obsolescent_Check): New procedure to control | |
2012 | Obsolescent_Check. | |
2013 | ||
2014 | * sinput-l.adb (Load_File): Do not check for pragma Restrictions on | |
2015 | obsolescent features while preprocessing. | |
2016 | ||
550f4135 AC |
2017 | 2009-04-10 Thomas Quinot <quinot@adacore.com> |
2018 | ||
2019 | * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in | |
2020 | generated files on all platforms. | |
2021 | ||
2022 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
2023 | ||
2024 | * sem_aux.adb: Minor reformatting | |
2025 | ||
2026 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
2027 | ||
2028 | * sem_ch3.adb (Access_Definition): Handle properly the case of a | |
2029 | protected function with formals that returns an anonymous access type. | |
2030 | ||
2031 | 2009-04-10 Thomas Quinot <quinot@adacore.com> | |
2032 | ||
2033 | * sem_disp.adb: Minor reformatting | |
2034 | ||
2035 | 2009-04-10 Vasiliy Fofanov <fofanov@adacore.com> | |
2036 | ||
2037 | * seh_init.c: Do not use the 32-bit specific implementation of | |
2038 | __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific | |
2039 | version TBD). | |
2040 | ||
2041 | 2009-04-10 Jose Ruiz <ruiz@adacore.com> | |
2042 | ||
2043 | * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain | |
2044 | a '/' at the end so we better use the complete target name to determine | |
2045 | whether it is a PowerPC 55xx target. | |
2046 | ||
3996951a TQ |
2047 | 2009-04-10 Thomas Quinot <quinot@adacore.com> |
2048 | ||
2049 | * sem_eval.adb: Minor reformatting | |
2050 | ||
b62a90f2 AC |
2051 | 2009-04-10 Thomas Quinot <quinot@adacore.com> |
2052 | ||
2053 | * snames.h, snames.ads, snames.adb: Remove files, now generated from | |
2054 | templates. | |
2055 | ||
2056 | * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the | |
2057 | above. | |
2058 | ||
2059 | * xsnamest.adb: New file. | |
2060 | ||
2061 | * gcc-interface/Make-lang.in: New target for automated generation of | |
2062 | snames.ads, snames.adb and snames.h | |
2063 | ||
62298c61 TG |
2064 | 2009-04-10 Tristan Gingold <gingold@adacore.com> |
2065 | ||
2066 | * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to | |
2067 | avoid compile time warnings. | |
2068 | Do not add gcc/config in include search list while compiling the RTS. | |
2069 | Pragma Thread_Local_Storage is available on any target. | |
2070 | ||
3764bb00 BD |
2071 | 2009-04-10 Bob Duff <duff@adacore.com> |
2072 | ||
2073 | * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes. | |
2074 | ||
b3b9865d AC |
2075 | 2009-04-10 Tristan Gingold <gingold@adacore.com> |
2076 | ||
2077 | * init.c: Install signal handler on Darwin. | |
2078 | ||
2079 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
2080 | ||
2081 | * sem_prag.adb: Minor reformatting | |
2082 | ||
2083 | * exp_util.adb (Make_Non_Empty_Check): New function | |
2084 | (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check | |
2085 | (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check | |
2086 | ||
2087 | 2009-04-10 Arnaud Charlet <charlet@adacore.com> | |
2088 | ||
2089 | * make.adb, gnatlink.adb: Rename JGNAT toolchain. | |
2090 | ||
2091 | 2009-04-10 Jose Ruiz <ruiz@adacore.com> | |
2092 | ||
2093 | * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate | |
2094 | tool prefix for AVR and PowerPC 55xx targets. | |
2095 | ||
2096 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
2097 | ||
2098 | * sem_warn.adb (Within_Postcondition): New function | |
2099 | (Check_Unset_Reference): Use Within_Postcondition to stop bad warning | |
2100 | ||
c5288c90 AC |
2101 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
2102 | ||
2103 | * sem_warn.adb: Minor reformatting | |
2104 | ||
2105 | * make.adb: Minor reformatting. | |
2106 | ||
2107 | 2009-04-10 Gary Dismukes <dismukes@adacore.com> | |
2108 | ||
2109 | * exp_ch7.adb (Find_Final_List): When creating a finalization-chain | |
2110 | entity and the scope is a subprogram, retrieve the Sloc of the | |
2111 | subprogram's body rather than using the sloc of the spec, for better | |
2112 | line-stepping behavior in gdb. | |
2113 | (Wrap_Transient_Declaration): For the Sloc of nodes created with a list | |
2114 | controller, use the Sloc of the first declaration of the containing list | |
2115 | rather than that of the node that triggered creation of the list | |
2116 | controller. | |
2117 | ||
2844b330 AC |
2118 | 2009-04-10 Vincent Celier <celier@adacore.com> |
2119 | ||
2120 | * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing | |
2121 | to avoid gcc warning. | |
2122 | ||
2123 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
2124 | ||
2125 | * g-comlin.adb: Add ??? comment | |
2126 | ||
2127 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> | |
2128 | ||
2129 | * sem_warn.adb (Check_Unused_Withs): Do not emit message about | |
2130 | unreferenced entities for a package with no visible declarations. | |
2131 | ||
2132 | 2009-04-10 Robert Dewar <dewar@adacore.com> | |
2133 | ||
2134 | * exp_ch9.adb: Minor reformatting | |
2135 | ||
be21e9d8 AC |
2136 | 2009-04-10 Thomas Quinot <quinot@adacore.com> |
2137 | ||
2138 | * sem_prag.adb: Minor reformatting | |
2139 | ||
2140 | 2009-04-10 Vincent Celier <celier@adacore.com> | |
2141 | ||
2142 | * prj-nmsc.adb: | |
2143 | (Check_Library_Attributes): For a project qualified as a library project | |
2144 | that is not a library project, indicate in the error message which | |
2145 | attributes are missing (Library_Dir and/or Library_Name). | |
2146 | ||
4a7dedcb BD |
2147 | 2009-04-10 Bob Duff <duff@adacore.com> |
2148 | ||
2149 | * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of | |
2150 | generated nodes, because it might confuse various circuits in the FE. | |
2151 | ||
4017021b AC |
2152 | 2009-04-10 Ed Schonberg <schonberg@adacore.com> |
2153 | ||
2154 | * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument | |
2155 | of pragma. It will be recopied and analyzed when used in call to | |
2156 | Create_Task. | |
2157 | ||
2158 | * sem_res.adb (Resolve_Call): Clarify use of secondary stack within | |
2159 | initialization operations and recognize use of it in procedure calls | |
2160 | within init_procs. | |
2161 | ||
2162 | * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name | |
2163 | argument, because it may have side-effects. | |
2164 | ||
2165 | * exp_ch2.adb: Remove obsolete comments on default functions | |
2166 | ||
2167 | 2009-04-10 Jose Ruiz <ruiz@adacore.com> | |
2168 | ||
2169 | * adaint.c (RTX section): Do for RTX the same thing as we do for | |
2170 | Windows (include ctype.h and define a fallback ISALPHA if IN_RTS). | |
2171 | ||
24357840 RD |
2172 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
2173 | ||
2174 | * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function. | |
2175 | ||
2176 | * sem_res.adb (Resolve_Call): Fix test for | |
2177 | Suppress_Value_Tracking_On_Call (was wrong for the case of a call from | |
2178 | a non-dynamic scope). | |
2179 | ||
4f64abad AC |
2180 | 2009-04-10 Robert Dewar <dewar@adacore.com> |
2181 | ||
2182 | * make.adb: Add comment. | |
2183 | Minor reformatting | |
2184 | ||
2185 | 2009-04-10 Nicolas Setton <setton@adacore.com> | |
2186 | ||
2187 | * s-osprim-darwin.adb: New file. | |
2188 | ||
2189 | * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec. | |
2190 | ||
2191 | 2009-04-10 Thomas Quinot <quinot@adacore.com> | |
2192 | ||
2193 | * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set | |
2194 | ||
748086b7 JJ |
2195 | 2009-04-09 Nick Clifton <nickc@redhat.com> |
2196 | ||
2197 | * adadecode.h: Change copyright header to refer to version | |
2198 | 3 of the GNU General Public License with version 3.1 of the | |
2199 | GCC Runtime Library Exception and to point readers at the | |
2200 | COPYING3 and COPYING3.RUNTIME files and the FSF's license web | |
2201 | page. | |
2202 | * 9drpc.adb: Likewise. | |
2203 | * a-assert.adb: Likewise. | |
2204 | * a-astaco.adb: Likewise. | |
2205 | * a-calari.adb: Likewise. | |
2206 | * a-calcon.adb: Likewise. | |
2207 | * a-calcon.ads: Likewise. | |
2208 | * a-caldel.ads: Likewise. | |
2209 | * a-calend-vms.adb: Likewise. | |
2210 | * a-calend-vms.ads: Likewise. | |
2211 | * a-calend.adb: Likewise. | |
2212 | * a-calend.ads: Likewise. | |
2213 | * a-calfor.adb: Likewise. | |
2214 | * a-catizo.adb: Likewise. | |
2215 | * a-cdlili.adb: Likewise. | |
2216 | * a-cdlili.ads: Likewise. | |
2217 | * a-cgaaso.adb: Likewise. | |
2218 | * a-cgaaso.ads: Likewise. | |
2219 | * a-cgarso.adb: Likewise. | |
2220 | * a-cgcaso.adb: Likewise. | |
2221 | * a-chacon.adb: Likewise. | |
2222 | * a-chacon.ads: Likewise. | |
2223 | * a-chahan.adb: Likewise. | |
2224 | * a-chahan.ads: Likewise. | |
2225 | * a-chlat9.ads: Likewise. | |
2226 | * a-chtgke.adb: Likewise. | |
2227 | * a-chtgke.ads: Likewise. | |
2228 | * a-chtgop.adb: Likewise. | |
2229 | * a-chtgop.ads: Likewise. | |
2230 | * a-chzla1.ads: Likewise. | |
2231 | * a-chzla9.ads: Likewise. | |
2232 | * a-cidlli.adb: Likewise. | |
2233 | * a-cidlli.ads: Likewise. | |
2234 | * a-cihama.adb: Likewise. | |
2235 | * a-cihama.ads: Likewise. | |
2236 | * a-cihase.adb: Likewise. | |
2237 | * a-cihase.ads: Likewise. | |
2238 | * a-ciorma.adb: Likewise. | |
2239 | * a-ciorma.ads: Likewise. | |
2240 | * a-ciormu.adb: Likewise. | |
2241 | * a-ciormu.ads: Likewise. | |
2242 | * a-ciorse.adb: Likewise. | |
2243 | * a-ciorse.ads: Likewise. | |
2244 | * a-clrefi.adb: Likewise. | |
2245 | * a-clrefi.ads: Likewise. | |
2246 | * a-cohama.adb: Likewise. | |
2247 | * a-cohama.ads: Likewise. | |
2248 | * a-cohase.adb: Likewise. | |
2249 | * a-cohase.ads: Likewise. | |
2250 | * a-cohata.ads: Likewise. | |
2251 | * a-coinve.adb: Likewise. | |
2252 | * a-coinve.ads: Likewise. | |
2253 | * a-colien.adb: Likewise. | |
2254 | * a-colien.ads: Likewise. | |
2255 | * a-colire.adb: Likewise. | |
2256 | * a-colire.ads: Likewise. | |
2257 | * a-comlin.adb: Likewise. | |
2258 | * a-comlin.ads: Likewise. | |
2259 | * a-convec.adb: Likewise. | |
2260 | * a-convec.ads: Likewise. | |
2261 | * a-coorma.adb: Likewise. | |
2262 | * a-coorma.ads: Likewise. | |
2263 | * a-coormu.adb: Likewise. | |
2264 | * a-coormu.ads: Likewise. | |
2265 | * a-coorse.adb: Likewise. | |
2266 | * a-coorse.ads: Likewise. | |
2267 | * a-coprnu.adb: Likewise. | |
2268 | * a-coprnu.ads: Likewise. | |
2269 | * a-crbltr.ads: Likewise. | |
2270 | * a-crbtgk.adb: Likewise. | |
2271 | * a-crbtgk.ads: Likewise. | |
2272 | * a-crbtgo.adb: Likewise. | |
2273 | * a-crbtgo.ads: Likewise. | |
2274 | * a-crdlli.adb: Likewise. | |
2275 | * a-crdlli.ads: Likewise. | |
2276 | * a-cwila1.ads: Likewise. | |
2277 | * a-cwila9.ads: Likewise. | |
2278 | * a-decima.adb: Likewise. | |
2279 | * a-decima.ads: Likewise. | |
2280 | * a-diocst.adb: Likewise. | |
2281 | * a-diocst.ads: Likewise. | |
2282 | * a-direct.adb: Likewise. | |
2283 | * a-direct.ads: Likewise. | |
2284 | * a-direio.adb: Likewise. | |
2285 | * a-direio.ads: Likewise. | |
2286 | * a-dirval-mingw.adb: Likewise. | |
2287 | * a-dirval-vms.adb: Likewise. | |
2288 | * a-dirval.adb: Likewise. | |
2289 | * a-dirval.ads: Likewise. | |
2290 | * a-dynpri.adb: Likewise. | |
2291 | * a-einuoc.adb: Likewise. | |
2292 | * a-einuoc.ads: Likewise. | |
2293 | * a-elchha.adb: Likewise. | |
2294 | * a-elchha.ads: Likewise. | |
2295 | * a-envvar.adb: Likewise. | |
2296 | * a-excach.adb: Likewise. | |
2297 | * a-except-2005.adb: Likewise. | |
2298 | * a-except-2005.ads: Likewise. | |
2299 | * a-except.adb: Likewise. | |
2300 | * a-except.ads: Likewise. | |
2301 | * a-excpol-abort.adb: Likewise. | |
2302 | * a-excpol.adb: Likewise. | |
2303 | * a-exctra.adb: Likewise. | |
2304 | * a-exctra.ads: Likewise. | |
2305 | * a-exetim-mingw.adb: Likewise. | |
2306 | * a-exetim-mingw.ads: Likewise. | |
2307 | * a-exexda.adb: Likewise. | |
2308 | * a-exexpr-gcc.adb: Likewise. | |
2309 | * a-exexpr.adb: Likewise. | |
2310 | * a-exextr.adb: Likewise. | |
2311 | * a-exstat.adb: Likewise. | |
2312 | * a-filico.adb: Likewise. | |
2313 | * a-filico.ads: Likewise. | |
2314 | * a-finali.adb: Likewise. | |
2315 | * a-finali.ads: Likewise. | |
2316 | * a-interr.ads: Likewise. | |
2317 | * a-intnam-aix.ads: Likewise. | |
2318 | * a-intnam-darwin.ads: Likewise. | |
2319 | * a-intnam-dummy.ads: Likewise. | |
2320 | * a-intnam-freebsd.ads: Likewise. | |
2321 | * a-intnam-hpux.ads: Likewise. | |
2322 | * a-intnam-irix.ads: Likewise. | |
2323 | * a-intnam-linux.ads: Likewise. | |
2324 | * a-intnam-lynxos.ads: Likewise. | |
2325 | * a-intnam-mingw.ads: Likewise. | |
2326 | * a-intnam-rtems.ads: Likewise. | |
2327 | * a-intnam-solaris.ads: Likewise. | |
2328 | * a-intnam-tru64.ads: Likewise. | |
2329 | * a-intnam-vms.ads: Likewise. | |
2330 | * a-intnam-vxworks.ads: Likewise. | |
2331 | * a-intsig.adb: Likewise. | |
2332 | * a-intsig.ads: Likewise. | |
2333 | * a-ngcefu.adb: Likewise. | |
2334 | * a-ngcoar.adb: Likewise. | |
2335 | * a-ngcoty.adb: Likewise. | |
2336 | * a-ngcoty.ads: Likewise. | |
2337 | * a-ngelfu.adb: Likewise. | |
2338 | * a-ngrear.adb: Likewise. | |
2339 | * a-ngrear.ads: Likewise. | |
2340 | * a-nudira.adb: Likewise. | |
2341 | * a-nudira.ads: Likewise. | |
2342 | * a-nuflra.adb: Likewise. | |
2343 | * a-nuflra.ads: Likewise. | |
2344 | * a-numaux-darwin.adb: Likewise. | |
2345 | * a-numaux-darwin.ads: Likewise. | |
2346 | * a-numaux-libc-x86.ads: Likewise. | |
2347 | * a-numaux-vxworks.ads: Likewise. | |
2348 | * a-numaux-x86.adb: Likewise. | |
2349 | * a-numaux-x86.ads: Likewise. | |
2350 | * a-numaux.ads: Likewise. | |
2351 | * a-rbtgso.adb: Likewise. | |
2352 | * a-rbtgso.ads: Likewise. | |
2353 | * a-reatim.ads: Likewise. | |
2354 | * a-retide.adb: Likewise. | |
2355 | * a-retide.ads: Likewise. | |
2356 | * a-rttiev.adb: Likewise. | |
2357 | * a-rttiev.ads: Likewise. | |
2358 | * a-secain.adb: Likewise. | |
2359 | * a-secain.ads: Likewise. | |
2360 | * a-sequio.adb: Likewise. | |
2361 | * a-sequio.ads: Likewise. | |
2362 | * a-shcain.adb: Likewise. | |
2363 | * a-shcain.ads: Likewise. | |
2364 | * a-siocst.adb: Likewise. | |
2365 | * a-siocst.ads: Likewise. | |
2366 | * a-slcain.adb: Likewise. | |
2367 | * a-slcain.ads: Likewise. | |
2368 | * a-ssicst.adb: Likewise. | |
2369 | * a-ssicst.ads: Likewise. | |
2370 | * a-stboha.adb: Likewise. | |
2371 | * a-stmaco.ads: Likewise. | |
2372 | * a-storio.adb: Likewise. | |
2373 | * a-strbou.adb: Likewise. | |
2374 | * a-strbou.ads: Likewise. | |
2375 | * a-stream.ads: Likewise. | |
2376 | * a-strfix.adb: Likewise. | |
2377 | * a-strhas.adb: Likewise. | |
2378 | * a-strmap.adb: Likewise. | |
2379 | * a-strmap.ads: Likewise. | |
2380 | * a-strsea.adb: Likewise. | |
2381 | * a-strsea.ads: Likewise. | |
2382 | * a-strsup.adb: Likewise. | |
2383 | * a-strsup.ads: Likewise. | |
2384 | * a-strunb.adb: Likewise. | |
2385 | * a-strunb.ads: Likewise. | |
2386 | * a-ststio.adb: Likewise. | |
2387 | * a-ststio.ads: Likewise. | |
2388 | * a-stunau.adb: Likewise. | |
2389 | * a-stunau.ads: Likewise. | |
2390 | * a-stunha.adb: Likewise. | |
2391 | * a-stwibo.adb: Likewise. | |
2392 | * a-stwibo.ads: Likewise. | |
2393 | * a-stwifi.adb: Likewise. | |
2394 | * a-stwiha.adb: Likewise. | |
2395 | * a-stwima.adb: Likewise. | |
2396 | * a-stwima.ads: Likewise. | |
2397 | * a-stwise.adb: Likewise. | |
2398 | * a-stwise.ads: Likewise. | |
2399 | * a-stwisu.adb: Likewise. | |
2400 | * a-stwisu.ads: Likewise. | |
2401 | * a-stwiun.adb: Likewise. | |
2402 | * a-stwiun.ads: Likewise. | |
2403 | * a-stzbou.adb: Likewise. | |
2404 | * a-stzbou.ads: Likewise. | |
2405 | * a-stzfix.adb: Likewise. | |
2406 | * a-stzhas.adb: Likewise. | |
2407 | * a-stzmap.adb: Likewise. | |
2408 | * a-stzmap.ads: Likewise. | |
2409 | * a-stzsea.adb: Likewise. | |
2410 | * a-stzsea.ads: Likewise. | |
2411 | * a-stzsup.adb: Likewise. | |
2412 | * a-stzsup.ads: Likewise. | |
2413 | * a-stzunb.adb: Likewise. | |
2414 | * a-stzunb.ads: Likewise. | |
2415 | * a-suteio.adb: Likewise. | |
2416 | * a-suteio.ads: Likewise. | |
2417 | * a-swbwha.adb: Likewise. | |
2418 | * a-swmwco.ads: Likewise. | |
2419 | * a-swunau.adb: Likewise. | |
2420 | * a-swunau.ads: Likewise. | |
2421 | * a-swuwha.adb: Likewise. | |
2422 | * a-swuwti.adb: Likewise. | |
2423 | * a-swuwti.ads: Likewise. | |
2424 | * a-sytaco.adb: Likewise. | |
2425 | * a-sytaco.ads: Likewise. | |
2426 | * a-szbzha.adb: Likewise. | |
2427 | * a-szmzco.ads: Likewise. | |
2428 | * a-szunau.adb: Likewise. | |
2429 | * a-szunau.ads: Likewise. | |
2430 | * a-szuzha.adb: Likewise. | |
2431 | * a-szuzti.adb: Likewise. | |
2432 | * a-szuzti.ads: Likewise. | |
2433 | * a-tags.adb: Likewise. | |
2434 | * a-tags.ads: Likewise. | |
2435 | * a-tasatt.ads: Likewise. | |
2436 | * a-taside.adb: Likewise. | |
2437 | * a-taside.ads: Likewise. | |
2438 | * a-taster.adb: Likewise. | |
2439 | * a-teioed.adb: Likewise. | |
2440 | * a-teioed.ads: Likewise. | |
2441 | * a-textio.adb: Likewise. | |
2442 | * a-textio.ads: Likewise. | |
2443 | * a-tiboio.adb: Likewise. | |
2444 | * a-ticoau.adb: Likewise. | |
2445 | * a-ticoau.ads: Likewise. | |
2446 | * a-ticoio.adb: Likewise. | |
2447 | * a-ticoio.ads: Likewise. | |
2448 | * a-tideau.adb: Likewise. | |
2449 | * a-tideau.ads: Likewise. | |
2450 | * a-tideio.adb: Likewise. | |
2451 | * a-tideio.ads: Likewise. | |
2452 | * a-tienau.adb: Likewise. | |
2453 | * a-tienau.ads: Likewise. | |
2454 | * a-tienio.adb: Likewise. | |
2455 | * a-tienio.ads: Likewise. | |
2456 | * a-tifiio.adb: Likewise. | |
2457 | * a-tifiio.ads: Likewise. | |
2458 | * a-tiflau.adb: Likewise. | |
2459 | * a-tiflau.ads: Likewise. | |
2460 | * a-tiflio.adb: Likewise. | |
2461 | * a-tiflio.ads: Likewise. | |
2462 | * a-tigeau.adb: Likewise. | |
2463 | * a-tigeau.ads: Likewise. | |
2464 | * a-tiinau.adb: Likewise. | |
2465 | * a-tiinau.ads: Likewise. | |
2466 | * a-tiinio.adb: Likewise. | |
2467 | * a-tiinio.ads: Likewise. | |
2468 | * a-timoau.adb: Likewise. | |
2469 | * a-timoau.ads: Likewise. | |
2470 | * a-timoio.adb: Likewise. | |
2471 | * a-timoio.ads: Likewise. | |
2472 | * a-tiocst.adb: Likewise. | |
2473 | * a-tiocst.ads: Likewise. | |
2474 | * a-titest.adb: Likewise. | |
2475 | * a-wichun.adb: Likewise. | |
2476 | * a-wichun.ads: Likewise. | |
2477 | * a-witeio.adb: Likewise. | |
2478 | * a-witeio.ads: Likewise. | |
2479 | * a-wtcoau.adb: Likewise. | |
2480 | * a-wtcoau.ads: Likewise. | |
2481 | * a-wtcoio.adb: Likewise. | |
2482 | * a-wtcstr.adb: Likewise. | |
2483 | * a-wtcstr.ads: Likewise. | |
2484 | * a-wtdeau.adb: Likewise. | |
2485 | * a-wtdeau.ads: Likewise. | |
2486 | * a-wtdeio.adb: Likewise. | |
2487 | * a-wtdeio.ads: Likewise. | |
2488 | * a-wtedit.adb: Likewise. | |
2489 | * a-wtedit.ads: Likewise. | |
2490 | * a-wtenau.adb: Likewise. | |
2491 | * a-wtenau.ads: Likewise. | |
2492 | * a-wtenio.adb: Likewise. | |
2493 | * a-wtenio.ads: Likewise. | |
2494 | * a-wtfiio.adb: Likewise. | |
2495 | * a-wtfiio.ads: Likewise. | |
2496 | * a-wtflau.adb: Likewise. | |
2497 | * a-wtflau.ads: Likewise. | |
2498 | * a-wtflio.adb: Likewise. | |
2499 | * a-wtflio.ads: Likewise. | |
2500 | * a-wtgeau.adb: Likewise. | |
2501 | * a-wtgeau.ads: Likewise. | |
2502 | * a-wtinau.adb: Likewise. | |
2503 | * a-wtinau.ads: Likewise. | |
2504 | * a-wtinio.adb: Likewise. | |
2505 | * a-wtmoau.adb: Likewise. | |
2506 | * a-wtmoau.ads: Likewise. | |
2507 | * a-wtmoio.adb: Likewise. | |
2508 | * a-wtmoio.ads: Likewise. | |
2509 | * a-wttest.adb: Likewise. | |
2510 | * a-wwboio.adb: Likewise. | |
2511 | * a-zchuni.adb: Likewise. | |
2512 | * a-zchuni.ads: Likewise. | |
2513 | * a-ztcoau.adb: Likewise. | |
2514 | * a-ztcoau.ads: Likewise. | |
2515 | * a-ztcoio.adb: Likewise. | |
2516 | * a-ztcstr.adb: Likewise. | |
2517 | * a-ztcstr.ads: Likewise. | |
2518 | * a-ztdeau.adb: Likewise. | |
2519 | * a-ztdeau.ads: Likewise. | |
2520 | * a-ztdeio.adb: Likewise. | |
2521 | * a-ztdeio.ads: Likewise. | |
2522 | * a-ztedit.adb: Likewise. | |
2523 | * a-ztedit.ads: Likewise. | |
2524 | * a-ztenau.adb: Likewise. | |
2525 | * a-ztenau.ads: Likewise. | |
2526 | * a-ztenio.adb: Likewise. | |
2527 | * a-ztenio.ads: Likewise. | |
2528 | * a-ztexio.adb: Likewise. | |
2529 | * a-ztexio.ads: Likewise. | |
2530 | * a-ztfiio.adb: Likewise. | |
2531 | * a-ztfiio.ads: Likewise. | |
2532 | * a-ztflau.adb: Likewise. | |
2533 | * a-ztflau.ads: Likewise. | |
2534 | * a-ztflio.adb: Likewise. | |
2535 | * a-ztflio.ads: Likewise. | |
2536 | * a-ztgeau.adb: Likewise. | |
2537 | * a-ztgeau.ads: Likewise. | |
2538 | * a-ztinau.adb: Likewise. | |
2539 | * a-ztinau.ads: Likewise. | |
2540 | * a-ztinio.adb: Likewise. | |
2541 | * a-ztmoau.adb: Likewise. | |
2542 | * a-ztmoau.ads: Likewise. | |
2543 | * a-ztmoio.adb: Likewise. | |
2544 | * a-ztmoio.ads: Likewise. | |
2545 | * a-zttest.adb: Likewise. | |
2546 | * a-zzboio.adb: Likewise. | |
2547 | * adadecode.c: Likewise. | |
2548 | * adaint.c: Likewise. | |
2549 | * adaint.h: Likewise. | |
2550 | * alloc.ads: Likewise. | |
2551 | * argv.c: Likewise. | |
2552 | * arit64.c: Likewise. | |
2553 | * atree.adb: Likewise. | |
2554 | * atree.ads: Likewise. | |
2555 | * aux-io.c: Likewise. | |
2556 | * cal.c: Likewise. | |
2557 | * casing.adb: Likewise. | |
2558 | * casing.ads: Likewise. | |
2559 | * cio.c: Likewise. | |
2560 | * csets.adb: Likewise. | |
2561 | * csets.ads: Likewise. | |
2562 | * cstreams.c: Likewise. | |
2563 | * ctrl_c.c: Likewise. | |
2564 | * debug.adb: Likewise. | |
2565 | * debug.ads: Likewise. | |
2566 | * dec.ads: Likewise. | |
2567 | * einfo.adb: Likewise. | |
2568 | * einfo.ads: Likewise. | |
2569 | * elists.adb: Likewise. | |
2570 | * elists.ads: Likewise. | |
2571 | * env.c: Likewise. | |
2572 | * env.h: Likewise. | |
2573 | * errno.c: Likewise. | |
2574 | * exit.c: Likewise. | |
2575 | * fe.h: Likewise. | |
2576 | * final.c: Likewise. | |
2577 | * fname.adb: Likewise. | |
2578 | * fname.ads: Likewise. | |
2579 | * g-allein.ads: Likewise. | |
2580 | * g-alleve.adb: Likewise. | |
2581 | * g-alleve.ads: Likewise. | |
2582 | * g-altcon.adb: Likewise. | |
2583 | * g-altcon.ads: Likewise. | |
2584 | * g-altive.ads: Likewise. | |
2585 | * g-alveop.adb: Likewise. | |
2586 | * g-alveop.ads: Likewise. | |
2587 | * g-alvety.ads: Likewise. | |
2588 | * g-alvevi.ads: Likewise. | |
2589 | * g-arrspl.adb: Likewise. | |
2590 | * g-arrspl.ads: Likewise. | |
2591 | * g-calend.ads: Likewise. | |
2592 | * g-comlin.adb: Likewise. | |
2593 | * g-debpoo.adb: Likewise. | |
2594 | * g-debpoo.ads: Likewise. | |
2595 | * g-eacodu-vms.adb: Likewise. | |
2596 | * g-eacodu.adb: Likewise. | |
2597 | * g-excact.adb: Likewise. | |
2598 | * g-excact.ads: Likewise. | |
2599 | * g-locfil.adb: Likewise. | |
2600 | * g-os_lib.ads: Likewise. | |
2601 | * g-rannum.adb: Likewise. | |
2602 | * g-rannum.ads: Likewise. | |
2603 | * g-regist.adb: Likewise. | |
2604 | * g-regist.ads: Likewise. | |
2605 | * g-signal.adb: Likewise. | |
2606 | * g-signal.ads: Likewise. | |
2607 | * g-soccon.ads: Likewise. | |
2608 | * g-string.adb: Likewise. | |
2609 | * g-string.ads: Likewise. | |
2610 | * g-strspl.ads: Likewise. | |
2611 | * g-timsta.adb: Likewise. | |
2612 | * g-timsta.ads: Likewise. | |
2613 | * g-trasym-vms-alpha.adb: Likewise. | |
2614 | * g-trasym-vms-ia64.adb: Likewise. | |
2615 | * g-utf_32.adb: Likewise. | |
2616 | * g-utf_32.ads: Likewise. | |
2617 | * g-wistsp.ads: Likewise. | |
2618 | * g-zstspl.ads: Likewise. | |
2619 | * gmem.c: Likewise. | |
2620 | * gnatvsn.adb: Likewise. | |
2621 | * gnatvsn.ads: Likewise. | |
2622 | * gsocket.h: Likewise. | |
2623 | * hostparm.ads: Likewise. | |
2624 | * i-c.adb: Likewise. | |
2625 | * i-cexten.ads: Likewise. | |
2626 | * i-cobol.adb: Likewise. | |
2627 | * i-cobol.ads: Likewise. | |
2628 | * i-cpoint.adb: Likewise. | |
2629 | * i-cpoint.ads: Likewise. | |
2630 | * i-cpp.adb: Likewise. | |
2631 | * i-cpp.ads: Likewise. | |
2632 | * i-cstrea-vms.adb: Likewise. | |
2633 | * i-cstrea.adb: Likewise. | |
2634 | * i-cstrea.ads: Likewise. | |
2635 | * i-cstrin.adb: Likewise. | |
2636 | * i-cstrin.ads: Likewise. | |
2637 | * i-forbla-darwin.adb: Likewise. | |
2638 | * i-forbla-unimplemented.ads: Likewise. | |
2639 | * i-forbla.adb: Likewise. | |
2640 | * i-forbla.ads: Likewise. | |
2641 | * i-forlap.ads: Likewise. | |
2642 | * i-fortra.adb: Likewise. | |
2643 | * i-pacdec.adb: Likewise. | |
2644 | * i-pacdec.ads: Likewise. | |
2645 | * i-vxwoio.adb: Likewise. | |
2646 | * i-vxwoio.ads: Likewise. | |
2647 | * indepsw-aix.adb: Likewise. | |
2648 | * indepsw-gnu.adb: Likewise. | |
2649 | * indepsw-mingw.adb: Likewise. | |
2650 | * indepsw.adb: Likewise. | |
2651 | * indepsw.ads: Likewise. | |
2652 | * init.c: Likewise. | |
2653 | * initialize.c: Likewise. | |
2654 | * interfac.ads: Likewise. | |
2655 | * krunch.adb: Likewise. | |
2656 | * krunch.ads: Likewise. | |
2657 | * lib-list.adb: Likewise. | |
2658 | * lib-sort.adb: Likewise. | |
2659 | * lib.adb: Likewise. | |
2660 | * lib.ads: Likewise. | |
2661 | * link.c: Likewise. | |
2662 | * math_lib.adb: Likewise. | |
2663 | * memtrack.adb: Likewise. | |
2664 | * mingw32.h: Likewise. | |
2665 | * mkdir.c: Likewise. | |
2666 | * namet-sp.adb: Likewise. | |
2667 | * namet-sp.ads: Likewise. | |
2668 | * namet.adb: Likewise. | |
2669 | * namet.ads: Likewise. | |
2670 | * nlists.adb: Likewise. | |
2671 | * nlists.ads: Likewise. | |
2672 | * opt.adb: Likewise. | |
2673 | * opt.ads: Likewise. | |
2674 | * output.adb: Likewise. | |
2675 | * output.ads: Likewise. | |
2676 | * raise-gcc.c: Likewise. | |
2677 | * raise.c: Likewise. | |
2678 | * raise.h: Likewise. | |
2679 | * repinfo.adb: Likewise. | |
2680 | * repinfo.ads: Likewise. | |
2681 | * repinfo.h: Likewise. | |
2682 | * rident.ads: Likewise. | |
2683 | * s-addima.adb: Likewise. | |
2684 | * s-addima.ads: Likewise. | |
2685 | * s-addope.adb: Likewise. | |
2686 | * s-addope.ads: Likewise. | |
2687 | * s-arit64.adb: Likewise. | |
2688 | * s-arit64.ads: Likewise. | |
2689 | * s-assert.adb: Likewise. | |
2690 | * s-assert.ads: Likewise. | |
2691 | * s-asthan-vms-alpha.adb: Likewise. | |
2692 | * s-asthan.adb: Likewise. | |
2693 | * s-asthan.ads: Likewise. | |
2694 | * s-atacco.adb: Likewise. | |
2695 | * s-atacco.ads: Likewise. | |
2696 | * s-auxdec-empty.adb: Likewise. | |
2697 | * s-auxdec-empty.ads: Likewise. | |
2698 | * s-auxdec-vms_64.ads: Likewise. | |
2699 | * s-auxdec.adb: Likewise. | |
2700 | * s-auxdec.ads: Likewise. | |
2701 | * s-bitops.adb: Likewise. | |
2702 | * s-bitops.ads: Likewise. | |
2703 | * s-boarop.ads: Likewise. | |
2704 | * s-carsi8.adb: Likewise. | |
2705 | * s-carsi8.ads: Likewise. | |
2706 | * s-carun8.adb: Likewise. | |
2707 | * s-carun8.ads: Likewise. | |
2708 | * s-casi16.adb: Likewise. | |
2709 | * s-casi16.ads: Likewise. | |
2710 | * s-casi32.adb: Likewise. | |
2711 | * s-casi32.ads: Likewise. | |
2712 | * s-casi64.adb: Likewise. | |
2713 | * s-casi64.ads: Likewise. | |
2714 | * s-casuti.ads: Likewise. | |
2715 | * s-caun16.adb: Likewise. | |
2716 | * s-caun16.ads: Likewise. | |
2717 | * s-caun32.adb: Likewise. | |
2718 | * s-caun32.ads: Likewise. | |
2719 | * s-caun64.adb: Likewise. | |
2720 | * s-caun64.ads: Likewise. | |
2721 | * s-chepoo.ads: Likewise. | |
2722 | * s-crc32.adb: Likewise. | |
2723 | * s-crc32.ads: Likewise. | |
2724 | * s-crtl.ads: Likewise. | |
2725 | * s-direio.adb: Likewise. | |
2726 | * s-direio.ads: Likewise. | |
2727 | * s-dsaser.ads: Likewise. | |
2728 | * s-except.adb: Likewise. | |
2729 | * s-except.ads: Likewise. | |
2730 | * s-exctab.adb: Likewise. | |
2731 | * s-exctab.ads: Likewise. | |
2732 | * s-exnint.adb: Likewise. | |
2733 | * s-exnint.ads: Likewise. | |
2734 | * s-exnllf.adb: Likewise. | |
2735 | * s-exnllf.ads: Likewise. | |
2736 | * s-exnlli.adb: Likewise. | |
2737 | * s-exnlli.ads: Likewise. | |
2738 | * s-expint.adb: Likewise. | |
2739 | * s-expint.ads: Likewise. | |
2740 | * s-explli.adb: Likewise. | |
2741 | * s-explli.ads: Likewise. | |
2742 | * s-expllu.adb: Likewise. | |
2743 | * s-expllu.ads: Likewise. | |
2744 | * s-expmod.adb: Likewise. | |
2745 | * s-expmod.ads: Likewise. | |
2746 | * s-expuns.adb: Likewise. | |
2747 | * s-expuns.ads: Likewise. | |
2748 | * s-fatflt.ads: Likewise. | |
2749 | * s-fatgen.adb: Likewise. | |
2750 | * s-fatgen.ads: Likewise. | |
2751 | * s-fatlfl.ads: Likewise. | |
2752 | * s-fatllf.ads: Likewise. | |
2753 | * s-fatsfl.ads: Likewise. | |
2754 | * s-ficobl.ads: Likewise. | |
2755 | * s-fileio.adb: Likewise. | |
2756 | * s-fileio.ads: Likewise. | |
2757 | * s-filofl.ads: Likewise. | |
2758 | * s-finimp.adb: Likewise. | |
2759 | * s-finimp.ads: Likewise. | |
2760 | * s-finroo.adb: Likewise. | |
2761 | * s-finroo.ads: Likewise. | |
2762 | * s-fishfl.ads: Likewise. | |
2763 | * s-fore.adb: Likewise. | |
2764 | * s-fore.ads: Likewise. | |
2765 | * s-fvadfl.ads: Likewise. | |
2766 | * s-fvaffl.ads: Likewise. | |
2767 | * s-fvagfl.ads: Likewise. | |
2768 | * s-gearop.adb: Likewise. | |
2769 | * s-gearop.ads: Likewise. | |
2770 | * s-gecobl.adb: Likewise. | |
2771 | * s-gecobl.ads: Likewise. | |
2772 | * s-gecola.adb: Likewise. | |
2773 | * s-gecola.ads: Likewise. | |
2774 | * s-gerebl.adb: Likewise. | |
2775 | * s-gerebl.ads: Likewise. | |
2776 | * s-gerela.adb: Likewise. | |
2777 | * s-gerela.ads: Likewise. | |
2778 | * s-geveop.adb: Likewise. | |
2779 | * s-geveop.ads: Likewise. | |
2780 | * s-gloloc.adb: Likewise. | |
2781 | * s-gloloc.ads: Likewise. | |
2782 | * s-hibaen.ads: Likewise. | |
2783 | * s-imenne.adb: Likewise. | |
2784 | * s-imenne.ads: Likewise. | |
2785 | * s-imgbiu.adb: Likewise. | |
2786 | * s-imgbiu.ads: Likewise. | |
2787 | * s-imgboo.adb: Likewise. | |
2788 | * s-imgboo.ads: Likewise. | |
2789 | * s-imgcha.adb: Likewise. | |
2790 | * s-imgcha.ads: Likewise. | |
2791 | * s-imgdec.adb: Likewise. | |
2792 | * s-imgdec.ads: Likewise. | |
2793 | * s-imgenu.adb: Likewise. | |
2794 | * s-imgenu.ads: Likewise. | |
2795 | * s-imgint.adb: Likewise. | |
2796 | * s-imgint.ads: Likewise. | |
2797 | * s-imgllb.adb: Likewise. | |
2798 | * s-imgllb.ads: Likewise. | |
2799 | * s-imglld.adb: Likewise. | |
2800 | * s-imglld.ads: Likewise. | |
2801 | * s-imglli.adb: Likewise. | |
2802 | * s-imglli.ads: Likewise. | |
2803 | * s-imgllu.adb: Likewise. | |
2804 | * s-imgllu.ads: Likewise. | |
2805 | * s-imgllw.adb: Likewise. | |
2806 | * s-imgllw.ads: Likewise. | |
2807 | * s-imgrea.adb: Likewise. | |
2808 | * s-imgrea.ads: Likewise. | |
2809 | * s-imguns.adb: Likewise. | |
2810 | * s-imguns.ads: Likewise. | |
2811 | * s-imgwch.adb: Likewise. | |
2812 | * s-imgwch.ads: Likewise. | |
2813 | * s-imgwiu.adb: Likewise. | |
2814 | * s-imgwiu.ads: Likewise. | |
2815 | * s-inmaop-dummy.adb: Likewise. | |
2816 | * s-inmaop-vms.adb: Likewise. | |
2817 | * s-inmaop.ads: Likewise. | |
2818 | * s-interr-hwint.adb: Likewise. | |
2819 | * s-interr-sigaction.adb: Likewise. | |
2820 | * s-interr-vms.adb: Likewise. | |
2821 | * s-interr.adb: Likewise. | |
2822 | * s-interr.ads: Likewise. | |
2823 | * s-intman-dummy.adb: Likewise. | |
2824 | * s-intman-mingw.adb: Likewise. | |
2825 | * s-intman-posix.adb: Likewise. | |
2826 | * s-intman-solaris.adb: Likewise. | |
2827 | * s-intman-vms.adb: Likewise. | |
2828 | * s-intman-vms.ads: Likewise. | |
2829 | * s-intman-vxworks.adb: Likewise. | |
2830 | * s-intman-vxworks.ads: Likewise. | |
2831 | * s-intman.ads: Likewise. | |
2832 | * s-io.adb: Likewise. | |
2833 | * s-io.ads: Likewise. | |
2834 | * s-linux-alpha.ads: Likewise. | |
2835 | * s-linux-hppa.ads: Likewise. | |
2836 | * s-linux.ads: Likewise. | |
2837 | * s-maccod.ads: Likewise. | |
2838 | * s-mantis.adb: Likewise. | |
2839 | * s-mantis.ads: Likewise. | |
2840 | * s-mastop-irix.adb: Likewise. | |
2841 | * s-mastop.adb: Likewise. | |
2842 | * s-mastop.ads: Likewise. | |
2843 | * s-memcop.ads: Likewise. | |
2844 | * s-memory-mingw.adb: Likewise. | |
2845 | * s-memory.adb: Likewise. | |
2846 | * s-memory.ads: Likewise. | |
2847 | * s-os_lib.ads: Likewise. | |
2848 | * s-oscons-tmplt.c: Likewise. | |
2849 | * s-osinte-aix.adb: Likewise. | |
2850 | * s-osinte-darwin.adb: Likewise. | |
2851 | * s-osinte-freebsd.adb: Likewise. | |
2852 | * s-osinte-irix.adb: Likewise. | |
2853 | * s-osinte-lynxos-3.adb: Likewise. | |
2854 | * s-osinte-rtems.ads: Likewise. | |
2855 | * s-osinte-tru64.adb: Likewise. | |
2856 | * s-osinte-vxworks-kernel.adb: Likewise. | |
2857 | * s-osinte-vxworks.adb: Likewise. | |
2858 | * s-osprim-mingw.adb: Likewise. | |
2859 | * s-osprim-posix.adb: Likewise. | |
2860 | * s-osprim-solaris.adb: Likewise. | |
2861 | * s-osprim-unix.adb: Likewise. | |
2862 | * s-osprim-vms.adb: Likewise. | |
2863 | * s-osprim-vms.ads: Likewise. | |
2864 | * s-osprim-vxworks.adb: Likewise. | |
2865 | * s-osprim.ads: Likewise. | |
2866 | * s-pack03.adb: Likewise. | |
2867 | * s-pack03.ads: Likewise. | |
2868 | * s-pack05.adb: Likewise. | |
2869 | * s-pack05.ads: Likewise. | |
2870 | * s-pack06.adb: Likewise. | |
2871 | * s-pack06.ads: Likewise. | |
2872 | * s-pack07.adb: Likewise. | |
2873 | * s-pack07.ads: Likewise. | |
2874 | * s-pack09.adb: Likewise. | |
2875 | * s-pack09.ads: Likewise. | |
2876 | * s-pack10.adb: Likewise. | |
2877 | * s-pack10.ads: Likewise. | |
2878 | * s-pack11.adb: Likewise. | |
2879 | * s-pack11.ads: Likewise. | |
2880 | * s-pack12.adb: Likewise. | |
2881 | * s-pack12.ads: Likewise. | |
2882 | * s-pack13.adb: Likewise. | |
2883 | * s-pack13.ads: Likewise. | |
2884 | * s-pack14.adb: Likewise. | |
2885 | * s-pack14.ads: Likewise. | |
2886 | * s-pack15.adb: Likewise. | |
2887 | * s-pack15.ads: Likewise. | |
2888 | * s-pack17.adb: Likewise. | |
2889 | * s-pack17.ads: Likewise. | |
2890 | * s-pack18.adb: Likewise. | |
2891 | * s-pack18.ads: Likewise. | |
2892 | * s-pack19.adb: Likewise. | |
2893 | * s-pack19.ads: Likewise. | |
2894 | * s-pack20.adb: Likewise. | |
2895 | * s-pack20.ads: Likewise. | |
2896 | * s-pack21.adb: Likewise. | |
2897 | * s-pack21.ads: Likewise. | |
2898 | * s-pack22.adb: Likewise. | |
2899 | * s-pack22.ads: Likewise. | |
2900 | * s-pack23.adb: Likewise. | |
2901 | * s-pack23.ads: Likewise. | |
2902 | * s-pack24.adb: Likewise. | |
2903 | * s-pack24.ads: Likewise. | |
2904 | * s-pack25.adb: Likewise. | |
2905 | * s-pack25.ads: Likewise. | |
2906 | * s-pack26.adb: Likewise. | |
2907 | * s-pack26.ads: Likewise. | |
2908 | * s-pack27.adb: Likewise. | |
2909 | * s-pack27.ads: Likewise. | |
2910 | * s-pack28.adb: Likewise. | |
2911 | * s-pack28.ads: Likewise. | |
2912 | * s-pack29.adb: Likewise. | |
2913 | * s-pack29.ads: Likewise. | |
2914 | * s-pack30.adb: Likewise. | |
2915 | * s-pack30.ads: Likewise. | |
2916 | * s-pack31.adb: Likewise. | |
2917 | * s-pack31.ads: Likewise. | |
2918 | * s-pack33.adb: Likewise. | |
2919 | * s-pack33.ads: Likewise. | |
2920 | * s-pack34.adb: Likewise. | |
2921 | * s-pack34.ads: Likewise. | |
2922 | * s-pack35.adb: Likewise. | |
2923 | * s-pack35.ads: Likewise. | |
2924 | * s-pack36.adb: Likewise. | |
2925 | * s-pack36.ads: Likewise. | |
2926 | * s-pack37.adb: Likewise. | |
2927 | * s-pack37.ads: Likewise. | |
2928 | * s-pack38.adb: Likewise. | |
2929 | * s-pack38.ads: Likewise. | |
2930 | * s-pack39.adb: Likewise. | |
2931 | * s-pack39.ads: Likewise. | |
2932 | * s-pack40.adb: Likewise. | |
2933 | * s-pack40.ads: Likewise. | |
2934 | * s-pack41.adb: Likewise. | |
2935 | * s-pack41.ads: Likewise. | |
2936 | * s-pack42.adb: Likewise. | |
2937 | * s-pack42.ads: Likewise. | |
2938 | * s-pack43.adb: Likewise. | |
2939 | * s-pack43.ads: Likewise. | |
2940 | * s-pack44.adb: Likewise. | |
2941 | * s-pack44.ads: Likewise. | |
2942 | * s-pack45.adb: Likewise. | |
2943 | * s-pack45.ads: Likewise. | |
2944 | * s-pack46.adb: Likewise. | |
2945 | * s-pack46.ads: Likewise. | |
2946 | * s-pack47.adb: Likewise. | |
2947 | * s-pack47.ads: Likewise. | |
2948 | * s-pack48.adb: Likewise. | |
2949 | * s-pack48.ads: Likewise. | |
2950 | * s-pack49.adb: Likewise. | |
2951 | * s-pack49.ads: Likewise. | |
2952 | * s-pack50.adb: Likewise. | |
2953 | * s-pack50.ads: Likewise. | |
2954 | * s-pack51.adb: Likewise. | |
2955 | * s-pack51.ads: Likewise. | |
2956 | * s-pack52.adb: Likewise. | |
2957 | * s-pack52.ads: Likewise. | |
2958 | * s-pack53.adb: Likewise. | |
2959 | * s-pack53.ads: Likewise. | |
2960 | * s-pack54.adb: Likewise. | |
2961 | * s-pack54.ads: Likewise. | |
2962 | * s-pack55.adb: Likewise. | |
2963 | * s-pack55.ads: Likewise. | |
2964 | * s-pack56.adb: Likewise. | |
2965 | * s-pack56.ads: Likewise. | |
2966 | * s-pack57.adb: Likewise. | |
2967 | * s-pack57.ads: Likewise. | |
2968 | * s-pack58.adb: Likewise. | |
2969 | * s-pack58.ads: Likewise. | |
2970 | * s-pack59.adb: Likewise. | |
2971 | * s-pack59.ads: Likewise. | |
2972 | * s-pack60.adb: Likewise. | |
2973 | * s-pack60.ads: Likewise. | |
2974 | * s-pack61.adb: Likewise. | |
2975 | * s-pack61.ads: Likewise. | |
2976 | * s-pack62.adb: Likewise. | |
2977 | * s-pack62.ads: Likewise. | |
2978 | * s-pack63.adb: Likewise. | |
2979 | * s-pack63.ads: Likewise. | |
2980 | * s-parame-ae653.ads: Likewise. | |
2981 | * s-parame-hpux.ads: Likewise. | |
2982 | * s-parame-rtems.adb: Likewise. | |
2983 | * s-parame-vms-alpha.ads: Likewise. | |
2984 | * s-parame-vms-ia64.ads: Likewise. | |
2985 | * s-parame-vms-restrict.ads: Likewise. | |
2986 | * s-parame-vxworks.adb: Likewise. | |
2987 | * s-parame-vxworks.ads: Likewise. | |
2988 | * s-parame.adb: Likewise. | |
2989 | * s-parame.ads: Likewise. | |
2990 | * s-parint.adb: Likewise. | |
2991 | * s-parint.ads: Likewise. | |
2992 | * s-pooglo.adb: Likewise. | |
2993 | * s-pooglo.ads: Likewise. | |
2994 | * s-pooloc.adb: Likewise. | |
2995 | * s-pooloc.ads: Likewise. | |
2996 | * s-poosiz.adb: Likewise. | |
2997 | * s-poosiz.ads: Likewise. | |
2998 | * s-powtab.ads: Likewise. | |
2999 | * s-proinf-irix-athread.adb: Likewise. | |
3000 | * s-proinf-irix-athread.ads: Likewise. | |
3001 | * s-proinf.adb: Likewise. | |
3002 | * s-proinf.ads: Likewise. | |
3003 | * s-purexc.ads: Likewise. | |
3004 | * s-rannum.adb: Likewise. | |
3005 | * s-rannum.ads: Likewise. | |
3006 | * s-restri.adb: Likewise. | |
3007 | * s-restri.ads: Likewise. | |
3008 | * s-rident.ads: Likewise. | |
3009 | * s-rpc.adb: Likewise. | |
3010 | * s-rpc.ads: Likewise. | |
3011 | * s-scaval.adb: Likewise. | |
3012 | * s-scaval.ads: Likewise. | |
3013 | * s-secsta.adb: Likewise. | |
3014 | * s-secsta.ads: Likewise. | |
3015 | * s-sequio.adb: Likewise. | |
3016 | * s-sequio.ads: Likewise. | |
3017 | * s-shasto.adb: Likewise. | |
3018 | * s-shasto.ads: Likewise. | |
3019 | * s-soflin.adb: Likewise. | |
3020 | * s-soflin.ads: Likewise. | |
3021 | * s-solita.adb: Likewise. | |
3022 | * s-solita.ads: Likewise. | |
3023 | * s-sopco3.adb: Likewise. | |
3024 | * s-sopco3.ads: Likewise. | |
3025 | * s-sopco4.adb: Likewise. | |
3026 | * s-sopco4.ads: Likewise. | |
3027 | * s-sopco5.adb: Likewise. | |
3028 | * s-sopco5.ads: Likewise. | |
3029 | * s-stache.adb: Likewise. | |
3030 | * s-stache.ads: Likewise. | |
3031 | * s-stalib.adb: Likewise. | |
3032 | * s-stalib.ads: Likewise. | |
3033 | * s-stausa.adb: Likewise. | |
3034 | * s-stausa.ads: Likewise. | |
3035 | * s-stchop-limit.ads: Likewise. | |
3036 | * s-stchop-rtems.adb: Likewise. | |
3037 | * s-stchop-vxworks.adb: Likewise. | |
3038 | * s-stchop.adb: Likewise. | |
3039 | * s-stchop.ads: Likewise. | |
3040 | * s-stoele.adb: Likewise. | |
3041 | * s-stoele.ads: Likewise. | |
3042 | * s-stopoo.adb: Likewise. | |
3043 | * s-stopoo.ads: Likewise. | |
3044 | * s-stratt.adb: Likewise. | |
3045 | * s-stratt.ads: Likewise. | |
3046 | * s-strcom.adb: Likewise. | |
3047 | * s-strcom.ads: Likewise. | |
3048 | * s-string.adb: Likewise. | |
3049 | * s-string.ads: Likewise. | |
3050 | * s-strops.adb: Likewise. | |
3051 | * s-strops.ads: Likewise. | |
3052 | * s-strxdr.adb: Likewise. | |
3053 | * s-ststop.adb: Likewise. | |
3054 | * s-ststop.ads: Likewise. | |
3055 | * s-taasde.adb: Likewise. | |
3056 | * s-taasde.ads: Likewise. | |
3057 | * s-tadeca.adb: Likewise. | |
3058 | * s-tadeca.ads: Likewise. | |
3059 | * s-tadert.adb: Likewise. | |
3060 | * s-tadert.ads: Likewise. | |
3061 | * s-taenca.adb: Likewise. | |
3062 | * s-taenca.ads: Likewise. | |
3063 | * s-taprob.ads: Likewise. | |
3064 | * s-taprop-dummy.adb: Likewise. | |
3065 | * s-taprop-hpux-dce.adb: Likewise. | |
3066 | * s-taprop-irix.adb: Likewise. | |
3067 | * s-taprop-linux.adb: Likewise. | |
3068 | * s-taprop-lynxos.adb: Likewise. | |
3069 | * s-taprop-mingw.adb: Likewise. | |
3070 | * s-taprop-posix.adb: Likewise. | |
3071 | * s-taprop-solaris.adb: Likewise. | |
3072 | * s-taprop-tru64.adb: Likewise. | |
3073 | * s-taprop-vms.adb: Likewise. | |
3074 | * s-taprop-vxworks.adb: Likewise. | |
3075 | * s-taprop.ads: Likewise. | |
3076 | * s-tarest.adb: Likewise. | |
3077 | * s-tarest.ads: Likewise. | |
3078 | * s-tasdeb.adb: Likewise. | |
3079 | * s-tasdeb.ads: Likewise. | |
3080 | * s-tasinf-irix.ads: Likewise. | |
3081 | * s-tasinf-linux.adb: Likewise. | |
3082 | * s-tasinf-linux.ads: Likewise. | |
3083 | * s-tasinf-mingw.adb: Likewise. | |
3084 | * s-tasinf-mingw.ads: Likewise. | |
3085 | * s-tasinf-solaris.adb: Likewise. | |
3086 | * s-tasinf-solaris.ads: Likewise. | |
3087 | * s-tasinf-tru64.ads: Likewise. | |
3088 | * s-tasinf.adb: Likewise. | |
3089 | * s-tasinf.ads: Likewise. | |
3090 | * s-tasini.adb: Likewise. | |
3091 | * s-tasini.ads: Likewise. | |
3092 | * s-taskin.adb: Likewise. | |
3093 | * s-taskin.ads: Likewise. | |
3094 | * s-taspri-dummy.ads: Likewise. | |
3095 | * s-taspri-hpux-dce.ads: Likewise. | |
3096 | * s-taspri-mingw.ads: Likewise. | |
3097 | * s-taspri-solaris.ads: Likewise. | |
3098 | * s-taspri-tru64.ads: Likewise. | |
3099 | * s-taspri-vms.ads: Likewise. | |
3100 | * s-taspri-vxworks.ads: Likewise. | |
3101 | * s-tasque.adb: Likewise. | |
3102 | * s-tasque.ads: Likewise. | |
3103 | * s-tasren.adb: Likewise. | |
3104 | * s-tasren.ads: Likewise. | |
3105 | * s-tasres.ads: Likewise. | |
3106 | * s-tassta.adb: Likewise. | |
3107 | * s-tassta.ads: Likewise. | |
3108 | * s-tasuti.adb: Likewise. | |
3109 | * s-tasuti.ads: Likewise. | |
3110 | * s-tfsetr-default.adb: Likewise. | |
3111 | * s-tfsetr-vxworks.adb: Likewise. | |
3112 | * s-tpinop.adb: Likewise. | |
3113 | * s-tpinop.ads: Likewise. | |
3114 | * s-tpoben.adb: Likewise. | |
3115 | * s-tpoben.ads: Likewise. | |
3116 | * s-tpobop.adb: Likewise. | |
3117 | * s-tpobop.ads: Likewise. | |
3118 | * s-tpopde-vms.adb: Likewise. | |
3119 | * s-tpopde-vms.ads: Likewise. | |
3120 | * s-tpopsp-lynxos.adb: Likewise. | |
3121 | * s-tpopsp-posix-foreign.adb: Likewise. | |
3122 | * s-tpopsp-posix.adb: Likewise. | |
3123 | * s-tpopsp-solaris.adb: Likewise. | |
3124 | * s-tpopsp-vxworks.adb: Likewise. | |
3125 | * s-tporft.adb: Likewise. | |
3126 | * s-tposen.adb: Likewise. | |
3127 | * s-tposen.ads: Likewise. | |
3128 | * s-traceb.adb: Likewise. | |
3129 | * s-traceb.ads: Likewise. | |
3130 | * s-traces-default.adb: Likewise. | |
3131 | * s-traces.adb: Likewise. | |
3132 | * s-traces.ads: Likewise. | |
3133 | * s-traent-vms.adb: Likewise. | |
3134 | * s-traent-vms.ads: Likewise. | |
3135 | * s-traent.adb: Likewise. | |
3136 | * s-traent.ads: Likewise. | |
3137 | * s-trafor-default.adb: Likewise. | |
3138 | * s-trafor-default.ads: Likewise. | |
3139 | * s-tratas-default.adb: Likewise. | |
3140 | * s-tratas.adb: Likewise. | |
3141 | * s-tratas.ads: Likewise. | |
3142 | * s-unstyp.ads: Likewise. | |
3143 | * s-utf_32.adb: Likewise. | |
3144 | * s-utf_32.ads: Likewise. | |
3145 | * s-vaflop-vms-alpha.adb: Likewise. | |
3146 | * s-vaflop.adb: Likewise. | |
3147 | * s-vaflop.ads: Likewise. | |
3148 | * s-valboo.adb: Likewise. | |
3149 | * s-valboo.ads: Likewise. | |
3150 | * s-valcha.adb: Likewise. | |
3151 | * s-valcha.ads: Likewise. | |
3152 | * s-valdec.adb: Likewise. | |
3153 | * s-valdec.ads: Likewise. | |
3154 | * s-valenu.adb: Likewise. | |
3155 | * s-valenu.ads: Likewise. | |
3156 | * s-valint.adb: Likewise. | |
3157 | * s-valint.ads: Likewise. | |
3158 | * s-vallld.adb: Likewise. | |
3159 | * s-vallld.ads: Likewise. | |
3160 | * s-vallli.adb: Likewise. | |
3161 | * s-vallli.ads: Likewise. | |
3162 | * s-valllu.adb: Likewise. | |
3163 | * s-valllu.ads: Likewise. | |
3164 | * s-valrea.adb: Likewise. | |
3165 | * s-valrea.ads: Likewise. | |
3166 | * s-valuns.adb: Likewise. | |
3167 | * s-valuns.ads: Likewise. | |
3168 | * s-valuti.adb: Likewise. | |
3169 | * s-valuti.ads: Likewise. | |
3170 | * s-valwch.adb: Likewise. | |
3171 | * s-valwch.ads: Likewise. | |
3172 | * s-veboop.adb: Likewise. | |
3173 | * s-veboop.ads: Likewise. | |
3174 | * s-vector.ads: Likewise. | |
3175 | * s-vercon.adb: Likewise. | |
3176 | * s-vercon.ads: Likewise. | |
3177 | * s-vmexta.adb: Likewise. | |
3178 | * s-vmexta.ads: Likewise. | |
3179 | * s-vxwext-kernel.ads: Likewise. | |
3180 | * s-vxwext-rtp.adb: Likewise. | |
3181 | * s-vxwext-rtp.ads: Likewise. | |
3182 | * s-vxwext.ads: Likewise. | |
3183 | * s-vxwork-arm.ads: Likewise. | |
3184 | * s-vxwork-m68k.ads: Likewise. | |
3185 | * s-vxwork-mips.ads: Likewise. | |
3186 | * s-vxwork-ppc.ads: Likewise. | |
3187 | * s-vxwork-sparcv9.ads: Likewise. | |
3188 | * s-vxwork-x86.ads: Likewise. | |
3189 | * s-wchcnv.adb: Likewise. | |
3190 | * s-wchcnv.ads: Likewise. | |
3191 | * s-wchcon.adb: Likewise. | |
3192 | * s-wchcon.ads: Likewise. | |
3193 | * s-wchjis.adb: Likewise. | |
3194 | * s-wchjis.ads: Likewise. | |
3195 | * s-wchstw.adb: Likewise. | |
3196 | * s-wchstw.ads: Likewise. | |
3197 | * s-wchwts.adb: Likewise. | |
3198 | * s-wchwts.ads: Likewise. | |
3199 | * s-widboo.adb: Likewise. | |
3200 | * s-widboo.ads: Likewise. | |
3201 | * s-widcha.adb: Likewise. | |
3202 | * s-widcha.ads: Likewise. | |
3203 | * s-widenu.adb: Likewise. | |
3204 | * s-widenu.ads: Likewise. | |
3205 | * s-widlli.adb: Likewise. | |
3206 | * s-widlli.ads: Likewise. | |
3207 | * s-widllu.adb: Likewise. | |
3208 | * s-widllu.ads: Likewise. | |
3209 | * s-widwch.adb: Likewise. | |
3210 | * s-widwch.ads: Likewise. | |
3211 | * s-win32.ads: Likewise. | |
3212 | * s-winext.ads: Likewise. | |
3213 | * s-wwdcha.adb: Likewise. | |
3214 | * s-wwdcha.ads: Likewise. | |
3215 | * s-wwdenu.adb: Likewise. | |
3216 | * s-wwdenu.ads: Likewise. | |
3217 | * s-wwdwch.adb: Likewise. | |
3218 | * s-wwdwch.ads: Likewise. | |
3219 | * scans.adb: Likewise. | |
3220 | * scans.ads: Likewise. | |
3221 | * seh_init.c: Likewise. | |
3222 | * sfn_scan.adb: Likewise. | |
3223 | * sinfo.adb: Likewise. | |
3224 | * sinfo.ads: Likewise. | |
3225 | * sinput.adb: Likewise. | |
3226 | * sinput.ads: Likewise. | |
3227 | * snames.adb: Likewise. | |
3228 | * snames.ads: Likewise. | |
3229 | * socket.c: Likewise. | |
3230 | * stand.adb: Likewise. | |
3231 | * stand.ads: Likewise. | |
3232 | * stringt.adb: Likewise. | |
3233 | * stringt.ads: Likewise. | |
3234 | * sysdep.c: Likewise. | |
3235 | * system-aix.ads: Likewise. | |
3236 | * system-darwin-ppc.ads: Likewise. | |
3237 | * system-darwin-x86.ads: Likewise. | |
3238 | * system-darwin-x86_64.ads: Likewise. | |
3239 | * system-freebsd-x86.ads: Likewise. | |
3240 | * system-hpux-ia64.ads: Likewise. | |
3241 | * system-hpux.ads: Likewise. | |
3242 | * system-irix-n32.ads: Likewise. | |
3243 | * system-irix-n64.ads: Likewise. | |
3244 | * system-irix-o32.ads: Likewise. | |
3245 | * system-linux-alpha.ads: Likewise. | |
3246 | * system-linux-hppa.ads: Likewise. | |
3247 | * system-linux-ia64.ads: Likewise. | |
3248 | * system-linux-mips.ads: Likewise. | |
3249 | * system-linux-mipsel.ads: Likewise. | |
3250 | * system-linux-ppc.ads: Likewise. | |
3251 | * system-linux-ppc64.ads: Likewise. | |
3252 | * system-linux-s390.ads: Likewise. | |
3253 | * system-linux-s390x.ads: Likewise. | |
3254 | * system-linux-sh4.ads: Likewise. | |
3255 | * system-linux-sparc.ads: Likewise. | |
3256 | * system-linux-sparcv9.ads: Likewise. | |
3257 | * system-linux-x86.ads: Likewise. | |
3258 | * system-linux-x86_64.ads: Likewise. | |
3259 | * system-lynxos-ppc.ads: Likewise. | |
3260 | * system-lynxos-x86.ads: Likewise. | |
3261 | * system-mingw-x86_64.ads: Likewise. | |
3262 | * system-mingw.ads: Likewise. | |
3263 | * system-rtems.ads: Likewise. | |
3264 | * system-solaris-sparc.ads: Likewise. | |
3265 | * system-solaris-sparcv9.ads: Likewise. | |
3266 | * system-solaris-x86.ads: Likewise. | |
3267 | * system-solaris-x86_64.ads: Likewise. | |
3268 | * system-tru64.ads: Likewise. | |
3269 | * system-vms-ia64.ads: Likewise. | |
3270 | * system-vms-zcx.ads: Likewise. | |
3271 | * system-vms.ads: Likewise. | |
3272 | * system-vms_64.ads: Likewise. | |
3273 | * system-vxworks-arm.ads: Likewise. | |
3274 | * system-vxworks-m68k.ads: Likewise. | |
3275 | * system-vxworks-mips.ads: Likewise. | |
3276 | * system-vxworks-ppc.ads: Likewise. | |
3277 | * system-vxworks-sparcv9.ads: Likewise. | |
3278 | * system-vxworks-x86.ads: Likewise. | |
3279 | * system.ads: Likewise. | |
3280 | * table.adb: Likewise. | |
3281 | * table.ads: Likewise. | |
3282 | * targext.c: Likewise. | |
3283 | * targparm.ads: Likewise. | |
3284 | * tree_in.adb: Likewise. | |
3285 | * tree_in.ads: Likewise. | |
3286 | * tree_io.adb: Likewise. | |
3287 | * tree_io.ads: Likewise. | |
3288 | * types.adb: Likewise. | |
3289 | * types.ads: Likewise. | |
3290 | * uintp.adb: Likewise. | |
3291 | * uintp.ads: Likewise. | |
3292 | * uname.adb: Likewise. | |
3293 | * uname.ads: Likewise. | |
3294 | * urealp.adb: Likewise. | |
3295 | * urealp.ads: Likewise. | |
3296 | * vx_stack_info.c: Likewise. | |
3297 | * widechar.adb: Likewise. | |
3298 | * widechar.ads: Likewise. | |
3299 | * exp_attr.adb: Change copyright header to refer to version | |
3300 | 3 of the GNU General Public License and to point readers at the | |
3301 | COPYING3 file and the FSF's license web page. | |
3302 | * sem.adb: Likewise. | |
3303 | * sem_attr.ads: Likewise. | |
3304 | * freeze.adb: Likewise. | |
3305 | * freeze.ads: Likewise. | |
3306 | * errout.ads: Likewise. | |
3307 | * erroutc.adb: Likewise. | |
3308 | * exp_ch11.ads: Likewise. | |
3309 | ||
3310 | 2009-04-09 Jakub Jelinek <jakub@redhat.com> | |
3311 | ||
3312 | * config-lang.in: Change copyright header to refer to version | |
3313 | 3 of the GNU General Public License and to point readers at the | |
3314 | COPYING3 file and the FSF's license web page. | |
3315 | * gcc-interface/trans.c: Likewise. | |
3316 | * gnathtml.pl: Likewise. | |
3317 | * gcc-interface/ada.h: Likewise. Remove runtime exception. | |
3318 | * gcc-interface/gigi.h: Likewise. | |
3319 | * gcc-interface/misc.c: Likewise. | |
3320 | * gcc-interface/targtyps.c: Likewise. | |
3321 | ||
dd8cfe3a AC |
3322 | 2009-04-09 Nicolas Setton <setton@adacore.com> |
3323 | ||
3324 | * s-osinte-darwin.ads: Fix wrong binding to struc timeval. | |
3325 | ||
3326 | * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of | |
3327 | struct_timeval. | |
3328 | ||
3329 | 2009-04-09 Bob Duff <duff@adacore.com> | |
3330 | ||
3331 | * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in | |
3332 | internally-generated nodes related to select statements to avoid | |
3333 | confusing the debugger. | |
3334 | ||
3335 | 2009-04-09 Pascal Obry <obry@adacore.com> | |
3336 | ||
3337 | * make.adb: Ensure that all linker arguments are duplicated. | |
3338 | ||
59f3dd0a AC |
3339 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3340 | ||
3341 | * sem_ch5.adb: Minor reformatting | |
3342 | ||
3343 | 2009-04-09 Vincent Celier <celier@adacore.com> | |
3344 | ||
3345 | * vms_data.ads: | |
3346 | Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT | |
3347 | New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn | |
3348 | New qualifier /LXDEBUG=nnn for -gnatDnnn | |
3349 | For H820-010 | |
3350 | ||
3351 | * gnat_ugn.texi: | |
3352 | Update documentation for VMS qualifiers equivalent to -gnatGnn and | |
3353 | -gnatDnn | |
3354 | ||
3355 | 2009-04-09 Nicolas Setton <setton@adacore.com> | |
3356 | ||
3357 | * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long, | |
3358 | to match layout of siginfo_t in sys/signal.h. | |
3359 | ||
3360 | * gcc-interface/Makefile.in: Add section for x86_64 darwin. | |
3361 | ||
3362 | 2009-04-09 Thomas Quinot <quinot@adacore.com> | |
3363 | ||
3364 | * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment. | |
3365 | ||
3366 | 2009-04-09 Nicolas Setton <setton@adacore.com> | |
3367 | ||
3368 | * s-oscons-tmplt.c: Allow long lines in the generated spec. | |
3369 | Add generation of Darwin-specific constants needed when binding to the | |
3370 | pthread library. | |
3371 | ||
3372 | 2009-04-09 Robert Dewar <dewar@adacore.com> | |
3373 | ||
3374 | * checks.adb: | |
3375 | (Insert_Valid_Check): Avoid unnecessary generation of junk declaration | |
3376 | when no invalid values exist, Avoid duplicate read of atomic variable. | |
3377 | ||
3378 | * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid | |
3379 | (Standard_Unsigned): Set Is_Known_Valid | |
3380 | ||
3381 | * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on | |
3382 | subtype declaration if no constraint. | |
3383 | (Set_Modular_Size): Set Is_Known_Valid if appropriate | |
3384 | (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint | |
3385 | ||
f7d7bb51 AC |
3386 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3387 | ||
3388 | * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb, | |
3389 | switch.ads: for numeric switches, an optional equal sign is always | |
3390 | allowed. | |
3391 | ||
3392 | 2009-04-09 Vincent Celier <celier@adacore.com> | |
3393 | ||
3394 | * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where | |
3395 | the case of file names is not significant. | |
3396 | ||
c75c4293 AC |
3397 | 2009-04-09 Vincent Celier <celier@adacore.com> |
3398 | ||
3399 | * errout.adb: Remove dependency on package Style | |
3400 | ||
3401 | * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function, | |
3402 | moved to Stylesw. | |
3403 | ||
3404 | * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from | |
3405 | Styleg. | |
3406 | ||
3407 | * errutil.adb, par.adb: Import Stylesw | |
3408 | ||
3409 | 2009-04-09 Arnaud Charlet <charlet@adacore.com> | |
3410 | ||
3411 | * opt.ads: Fix typos. | |
3412 | ||
3413 | 2009-04-09 Robert Dewar <dewar@adacore.com> | |
3414 | ||
3415 | * einfo.adb: Minor reformatting | |
3416 | ||
e7aea0fa RD |
3417 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3418 | ||
3419 | * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style | |
3420 | units. | |
3421 | ||
3422 | * styleg-c.ads, styleg-c.adb: Removed, no longer used. | |
3423 | ||
1c383b4c AC |
3424 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3425 | ||
3426 | * g-comver.adb: Minor reformatting. | |
3427 | ||
3428 | 2009-04-09 Thomas Quinot <quinot@adacore.com> | |
3429 | ||
3430 | * lib-load.ads (Load_Unit): Update documentation. | |
3431 | ||
3432 | 2009-04-09 Ed Schonberg <schonberg@adacore.com> | |
3433 | ||
3434 | * lib-load.adb (Load_Unit): When loading the parent of a child unit | |
3435 | named in a with_clause, retain the with_clause to preserve a | |
3436 | limited_with indication. | |
3437 | ||
d7ba4df4 RD |
3438 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3439 | ||
3440 | * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb, | |
3441 | exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb, | |
3442 | sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where | |
3443 | possible to replace an OR of two separate tests. | |
3444 | ||
923e6ff3 RD |
3445 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3446 | ||
3447 | * binderr.adb, errout.adb, errutil.adb: New circuitry for handling | |
3448 | Maximum_Messages. | |
3449 | ||
3450 | * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global | |
3451 | warning status as well. | |
3452 | ||
3453 | * opt.ads (Maximum_Messages): New name for Maximum_Errors. | |
3454 | ||
3455 | * switch-b.adb, switch-c.adb: Change name Maximum_Errors to | |
3456 | Maximum_Messages. | |
3457 | ||
3458 | * bindusg.adb, usage.adb: Update line for -gnatm switch | |
3459 | ||
3460 | * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and | |
3461 | -mnn binder switch. | |
3462 | ||
3463 | 2009-04-09 Robert Dewar <dewar@adacore.com> | |
3464 | ||
3465 | * sem_ch10.adb: Minor reformatting. | |
3466 | ||
beb50807 AC |
3467 | 2009-04-09 Bob Duff <duff@adacore.com> |
3468 | ||
3469 | * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler): | |
3470 | Set Sloc of generated nodes for calls to Undefer_Aborts and | |
3471 | Save_Occurrence to No_Location, so the debugger ignores them and | |
3472 | therefore does not jump back and forth when single stepping. | |
3473 | ||
3474 | 2009-04-09 Robert Dewar <dewar@adacore.com> | |
3475 | ||
3476 | * switch-b.adb: Minor reformatting. | |
3477 | ||
a4100e55 RD |
3478 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3479 | ||
3480 | * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb, | |
3481 | sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb, | |
3482 | exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb, | |
3483 | sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb, | |
3484 | einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb, | |
3485 | tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb, | |
3486 | exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb, | |
3487 | sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb, | |
3488 | sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb, | |
3489 | sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb: | |
3490 | Reorganize einfo/sem_aux, moving routines from einfo to sem_aux | |
3491 | ||
f17889b3 RD |
3492 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3493 | ||
3494 | * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code. | |
3495 | ||
3496 | * atree.h: Add Elist26 | |
3497 | ||
3498 | * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc | |
3499 | backends. | |
3500 | ||
b16d9747 JM |
3501 | 2009-04-09 Javier Miranda <miranda@adacore.com> |
3502 | ||
3503 | * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to | |
3504 | retrieve from the Dispatch_Table_Wrappers list the external name. | |
3505 | Addition of documentation. | |
3506 | (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is | |
3507 | used to export secondary dispatch tables (in the previous version of | |
3508 | the frontend only primary dispatch tables were exported). Addition of | |
3509 | documentation. | |
3510 | (Import_DT): New subprogram (internal of Make_Tags). Used to import a | |
3511 | dispatch table of a given tagged type. | |
3512 | (Make_Tags): Modified to import secondary dispatch tables. | |
3513 | ||
3514 | * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup. | |
3515 | (Constant_Redeclaration): Code cleanup. | |
3516 | ||
3517 | * einfo.ads (Dispatch_Table_Wrapper): Renamed to | |
3518 | Dispatch_Table_Wrappers. Update documentation. | |
3519 | ||
3520 | * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper): | |
3521 | Renamed to Dispatch_Table_Wrappers. | |
3522 | ||
3523 | * sem_util.adb (Collect_Interface_Components): Improve handling of | |
3524 | private types. | |
3525 | ||
3526 | * atree.ads (Elist26, Set_Elist26): New subprograms | |
3527 | ||
3528 | * atree.adb (Elist26, Set_Elist26): New subprograms | |
3529 | ||
59262ebb AC |
3530 | 2009-04-09 Javier Miranda <miranda@adacore.com> |
3531 | ||
3532 | * sem_ch3.adb (Build_Derived_Record_Type): Fix typo. | |
3533 | (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of | |
3534 | tagged types. | |
3535 | ||
3536 | 2009-04-09 Robert Dewar <dewar@adacore.com> | |
3537 | ||
3538 | * s-direio.adb: Minor reformatting | |
3539 | ||
3540 | * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String | |
3541 | ||
fa969310 AC |
3542 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3543 | ||
3544 | * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases | |
3545 | ||
3546 | 2009-04-09 Pascal Obry <obry@adacore.com> | |
3547 | ||
3548 | * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads, | |
3549 | s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads, | |
3550 | a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads, | |
3551 | a-filico.ads: Add some missing overriding keywords. | |
3552 | ||
3c25856a AC |
3553 | 2009-04-09 Pascal Obry <obry@adacore.com> |
3554 | ||
3555 | * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb, | |
3556 | a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads, | |
3557 | a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor | |
3558 | reformatting. | |
3559 | ||
3560 | 2009-04-09 Ed Schonberg <schonberg@adacore.com> | |
3561 | ||
3562 | * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on | |
3563 | missing overriding indicator if the new declaration is not seen as | |
3564 | primitive. | |
3565 | ||
76c597a1 AC |
3566 | 2009-04-09 Thomas Quinot <quinot@adacore.com> |
3567 | ||
3568 | * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle | |
3569 | overflows in computation of bounds. | |
3570 | ||
3571 | 2009-04-09 Pascal Obry <obry@adacore.com> | |
3572 | ||
3573 | * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some | |
3574 | typos in comment. | |
3575 | ||
95b89f1b AC |
3576 | 2009-04-09 Robert Dewar <dewar@adacore.com> |
3577 | ||
3578 | * sem_attr.adb (Check_Stream_Attribute): Check violation of | |
3579 | restriction No_Streams | |
3580 | ||
3581 | * gnat_rm.texi: Clarify No_Streams restriction | |
3582 | ||
3583 | * g-socket.adb: Minor reformatting. | |
3584 | ||
3585 | 2009-04-09 Thomas Quinot <quinot@adacore.com> | |
3586 | ||
3587 | * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces. | |
3588 | ||
3589 | 2009-04-09 Geert Bosch <bosch@adacore.com> | |
3590 | ||
3591 | * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument. | |
3592 | (Set_Result): Likewise. | |
3593 | (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the | |
3594 | conversion, as required by RM 4.6(31). | |
3595 | ||
3d5952be AC |
3596 | 2009-04-08 Robert Dewar <dewar@adacore.com> |
3597 | ||
3598 | * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks | |
3599 | suppressed. | |
3600 | ||
3601 | * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all | |
3602 | resolution steps. | |
3603 | ||
3604 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3605 | ||
3606 | * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for | |
3607 | No_Local_Allocators restriction preventing local instantiation. | |
3608 | ||
3609 | 2009-04-08 Thomas Quinot <quinot@adacore.com> | |
3610 | ||
3611 | * sem_eval.adb: Minor comment fix | |
3612 | ||
3613 | 2009-04-08 Thomas Quinot <quinot@adacore.com> | |
3614 | ||
3615 | * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller): | |
3616 | New limited controlled type used to automate the initialization and | |
3617 | finalization of the sockets implementation. | |
3618 | (GNAT.Sockets.Initialize, Finalize): Make these no-ops | |
3619 | ||
3620 | 2009-04-08 Vincent Celier <celier@adacore.com> | |
3621 | ||
3622 | * prj-attr.adb: New read-only project-level attribute Project_Dir | |
3623 | ||
3624 | * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of | |
3625 | read-only attribute of the same name. | |
3626 | (Process_Declarative_Items): Call Add_Attributes with Project_Dir | |
3627 | (Recursive_Process): Ditto | |
3628 | ||
3629 | * snames.adb: Add new standard name Project_Dir | |
3630 | ||
3631 | * snames.ads: Add new standard name Project_Dir | |
3632 | ||
b568955d AC |
3633 | 2009-04-08 Thomas Quinot <quinot@adacore.com> |
3634 | ||
3635 | * checks.adb: Minor reformatting | |
3636 | ||
3637 | 2009-04-08 Vincent Celier <celier@adacore.com> | |
3638 | ||
3639 | * vms_data.ads: Add documentation for new style keyword | |
3640 | OVERRIDING_INDICATORS | |
3641 | ||
3642 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3643 | ||
3644 | * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the | |
3645 | spec is in the current unit. | |
3646 | ||
ed57136d AC |
3647 | 2009-04-08 Ed Schonberg <schonberg@adacore.com> |
3648 | ||
3649 | * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for | |
3650 | presence of entity. | |
3651 | ||
3652 | * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators | |
3653 | ||
3654 | 2009-04-08 Vincent Celier <celier@adacore.com> | |
3655 | ||
3656 | * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS) | |
3657 | ||
3658 | 2009-04-08 Thomas Quinot <quinot@adacore.com> | |
3659 | ||
3660 | * checks.ads: Minor reformatting | |
3661 | ||
3662 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3663 | ||
3664 | * gnat_rm.texi: Update documentation of pragma Obsolescent | |
3665 | ||
3666 | * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to | |
3667 | be omitted, and allow Entity parameter to be omitted. | |
3668 | ||
ef7c5692 AC |
3669 | 2009-04-08 Thomas Quinot <quinot@adacore.com> |
3670 | ||
3671 | * exp_util.adb: Minor comment fix | |
3672 | ||
3673 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3674 | ||
3675 | * g-socket.ads: Fix bad syntax in pragma Obsolescent | |
3676 | ||
3677 | * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of | |
3678 | argument with no identifier following one that has an identifier. Was | |
3679 | missed in some cases. | |
3680 | ||
3681 | * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy | |
3682 | identifier. | |
3683 | (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers | |
3684 | ||
3685 | * snames.adb: Add Name_Policy | |
3686 | ||
3687 | * snames.ads: Add Name_Policy | |
3688 | ||
0c7f5241 RD |
3689 | 2009-04-08 Robert Dewar <dewar@adacore.com> |
3690 | ||
3691 | * gnat_rm.texi: Minor reformatting | |
3692 | ||
3693 | * par-ch2.adb: Minor reformatting | |
3694 | ||
ae8c7d87 RD |
3695 | 2009-04-08 Robert Dewar <dewar@adacore.com> |
3696 | ||
3697 | * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up. | |
3698 | ||
ff69f95a RD |
3699 | 2009-04-08 Robert Dewar <dewar@adacore.com> |
3700 | ||
3701 | * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate | |
3702 | properly in the presence of Remote_Types or Remote_Call_Interface. | |
3703 | ||
3704 | * sem_util.adb: Add comment. | |
3705 | ||
2db15b1d AC |
3706 | 2009-04-08 Robert Dewar <dewar@adacore.com> |
3707 | ||
3708 | * ug_words: Add /ASSUME_VALID for -gnatB | |
3709 | ||
3710 | * vms_data.ads: Add /ASSUME_VALID for -gnatB | |
3711 | ||
3712 | * sem_cat.adb: Add clarifying commment | |
3713 | ||
3714 | * a-direio.ads (Bytes): Make sure value is non-zero | |
3715 | ||
3716 | 2009-04-08 Ed Schonberg <schonberg@adacore.com> | |
3717 | ||
3718 | * sem_util.adb (Is_Variable): If the prefix is an explicit dereference | |
3719 | that does not come from source, check for a rewritten function call in | |
3720 | prefixed notation before other forms of rewriting. | |
3721 | ||
3722 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3723 | ||
3724 | * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since | |
3725 | these are now obsolescent units used only for bootrapping with an | |
3726 | older compiler. | |
3727 | ||
94fd3dc6 AC |
3728 | 2009-04-08 Robert Dewar <dewar@adacore.com> |
3729 | ||
3730 | * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage | |
3731 | ||
3732 | * sem_ch3.adb: Minor comment updates | |
3733 | ||
3734 | 2009-04-08 Ed Schonberg <schonberg@adacore.com> | |
3735 | ||
3736 | * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms | |
3737 | that come from source. | |
3738 | ||
40a14772 TG |
3739 | 2009-04-08 Tristan Gingold <gingold@adacore.com> |
3740 | ||
cac9d8d6 EB |
3741 | * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE. |
3742 | * gcc-interface/decl.c (prepend_attributes): New case | |
3743 | Pragma_Thread_Local_Storage. | |
3744 | * gcc-interface/utils.c (process_attributes): New case | |
3745 | ATTR_THREAD_LOCAL_STORAGE. | |
3746 | ||
46ff89f3 AC |
3747 | 2009-04-08 Ed Schonberg <schonberg@adacore.com> |
3748 | ||
3749 | * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable | |
3750 | by the back-end if it contains a call to a subprogram without a | |
3751 | previous spec that is declared in the same unit. | |
3752 | ||
3753 | * errout.ads: Update comments on uses of dirs | |
3754 | ||
3755 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3756 | ||
3757 | * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed | |
3758 | ||
812f574f AC |
3759 | 2009-04-08 Tristan Gingold <gingold@adacore.com> |
3760 | ||
3761 | * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level | |
3762 | variables. | |
3763 | Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work). | |
3764 | ||
3765 | 2009-04-08 Vincent Celier <celier@adacore.com> | |
3766 | ||
3767 | * prj-nmsc.adb: | |
3768 | (Add_Source): Add the mapping of the unit name to source file name in | |
3769 | the Unit_Sources_HT hash table, if the unit name is not null. | |
3770 | ||
3771 | * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT | |
3772 | ||
3773 | * prj.ads (Unit_Sources_Htable): New hash table instantiation | |
3774 | (Project_Tree_Data): New component Unit_Sources_HT | |
3775 | ||
4c8a5bb8 AC |
3776 | 2009-04-08 Thomas Quinot <quinot@adacore.com> |
3777 | ||
3778 | * sem_ch8.adb: Minor reformatting. | |
3779 | Minor code reorganization. | |
3780 | ||
3781 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3782 | ||
3783 | * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb, | |
3784 | snames.ads, freeze.adb, par-prag.adb: Add implementation of | |
3785 | pragma Thread_Local_Storage, setting new flag | |
3786 | Has_Pragma_Thread_Local_Storage in corresponding entities. | |
3787 | ||
ecc4ddde AC |
3788 | 2009-04-08 Emmanuel Briot <briot@adacore.com> |
3789 | ||
3790 | * prj.ads: Update comment on switches file | |
3791 | ||
3792 | * prj-nmsc.adb: Code clean up. Use renaming clauses. | |
3793 | ||
3794 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3795 | ||
3796 | * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling | |
3797 | ||
3798 | 2009-04-08 Thomas Quinot <quinot@adacore.com> | |
3799 | ||
3800 | * ali-util.adb: Minor comment fix | |
3801 | ||
3802 | 2009-04-08 Ed Schonberg <schonberg@adacore.com> | |
3803 | ||
3804 | * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause | |
3805 | appears in a context clause, and the enclosing package is mentioned in | |
3806 | a limited_with_clause. | |
3807 | (Use_One_Type): Reject clause if type is still incomplete. | |
3808 | ||
a29262fd AC |
3809 | 2009-04-08 Emmanuel Briot <briot@adacore.com> |
3810 | ||
3811 | * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode): | |
3812 | avoid copies of Source_Data variables when possible, since these | |
3813 | involve calls to memcpy() which are done too many times. | |
3814 | ||
3815 | 2009-04-08 Robert Dewar <dewar@adacore.com> | |
3816 | ||
3817 | * exp_ch4.adb (Expand_Concatenate): Clean up code | |
3818 | ||
a2dc5812 AC |
3819 | 2009-04-07 Thomas Quinot <quinot@adacore.com> |
3820 | ||
3821 | * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index | |
3822 | type for the case of concatenating a constrained array indexed by an | |
3823 | enumeration type. | |
3824 | ||
3825 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
3826 | ||
3827 | * sem_ch6.adb (Check_Conformance): when checking conformance of an | |
3828 | operation that overrides an abstract operation inherited from an | |
3829 | interface, return False if only one of the controlling formals is an | |
3830 | access parameter. | |
3831 | ||
3832 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
3833 | ||
3834 | * sem_ch8.adb (Analyze_Object_Renaming): additional error messages | |
3835 | mandated by AI05-105. | |
3836 | ||
3837 | 2009-04-07 Vincent Celier <celier@adacore.com> | |
3838 | ||
3839 | * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string | |
3840 | ||
3841 | 2009-04-07 Thomas Quinot <quinot@adacore.com> | |
3842 | ||
3843 | * usage.adb: Minor fix in usage message. | |
3844 | ||
3845 | * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to | |
3846 | match declaration; the correct subtype is Node_Id, not Entity_Id, | |
3847 | because the expected node kind is an identifier, not a defining | |
3848 | identifier. | |
3849 | ||
3850 | * switch-c.adb: Minor reformatting. | |
3851 | ||
3852 | * uintp.adb: Minor reformatting. | |
3853 | ||
3854 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
3855 | ||
3856 | * exp_ch13.adb: Minor reformatting | |
3857 | ||
0ac73189 AC |
3858 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
3859 | ||
3860 | * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence | |
3861 | against missing parent. | |
3862 | ||
3863 | 2009-04-07 Thomas Quinot <quinot@adacore.com> | |
3864 | ||
3865 | * xoscons.adb: Minor reformatting | |
3866 | ||
3867 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
3868 | ||
3869 | * rtsfind.ads: Remove obsolete string concatenation entries | |
3870 | ||
3871 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
3872 | ||
3873 | * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds | |
3874 | ||
3875 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
3876 | ||
3877 | * sem_ch10.adb (Check_Body_Required): Handle properly imported | |
3878 | subprograms. | |
3879 | ||
3880 | 2009-04-07 Gary Dismukes <dismukes@adacore.com> | |
3881 | ||
3882 | * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case | |
3883 | Attribute_Address): When Init_Or_Norm_Scalars is True and the object | |
3884 | is of a scalar or string type then suppress the setting of the | |
3885 | expression to Empty. | |
3886 | ||
3887 | * freeze.adb (Warn_Overlay): Also emit the warnings about default | |
3888 | initialization for the cases of scalar and string objects when | |
3889 | Init_Or_Norm_Scalars is True. | |
3890 | ||
1732c156 AC |
3891 | 2009-04-07 Bob Duff <duff@adacore.com> |
3892 | ||
3893 | * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes | |
3894 | ||
3895 | 2009-04-07 Bob Duff <duff@adacore.com> | |
3896 | ||
3897 | * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A | |
3898 | Form parameter of Text_Translation=No allows binary mode for Text_IO | |
3899 | files. | |
3900 | ||
3901 | * gnat_rm.texi: Document Form parameter Text_Translation=xxx. | |
3902 | ||
3903 | 2009-04-07 Javier Miranda <miranda@adacore.com> | |
3904 | ||
3905 | * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when | |
3906 | processing the bounds for bit packed arrays or VM target machines. | |
3907 | ||
f16d05d9 AC |
3908 | 2009-04-07 Thomas Quinot <quinot@adacore.com> |
3909 | ||
3910 | * g-sothco.ads (Int_Access): Remove extraneous access type (use | |
3911 | anonymous access instead). | |
3912 | (Get_Socket_From_Set): Fix incorrectly reverted formals | |
3913 | Last and Socket to match the underlying C routine. | |
3914 | ||
ad1536a1 | 3915 | * g-socket.adb, g-socket.ads |
f16d05d9 AC |
3916 | (Get): Use named parameter associations instead of positional ones in |
3917 | call go Get_Socket_From_Set, since this routine has two formals of the | |
3918 | same type. | |
ad1536a1 | 3919 | (Image): New procedure. |
f16d05d9 AC |
3920 | |
3921 | * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, | |
3922 | g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads: | |
3923 | (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access" | |
3924 | for type of Arg formal. | |
3925 | ||
3926 | * sem_warn.adb: Minor reformatting | |
3927 | ||
3928 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
3929 | ||
3930 | * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates | |
3931 | over record components. | |
3932 | ||
3933 | 2009-04-07 Nicolas Roche <roche@adacore.com> | |
3934 | ||
3935 | * gsocket.h: | |
3936 | Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library | |
3937 | has disappeared between VxWorks 6.4 and VxWorks 6.5 | |
3938 | In RTP mode use time.h instead of times.h | |
3939 | ||
3940 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
3941 | ||
3942 | * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling | |
3943 | ||
3944 | 2009-04-07 Kevin Pouget <pouget@adacore.com> | |
3945 | ||
3946 | * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct | |
3947 | expanded code for constrained types. | |
3948 | ||
3949 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
3950 | ||
3951 | * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement | |
3952 | AI05-105: in an object renaming declaration, anonymousness is a name | |
3953 | resolution rule. | |
3954 | ||
3955 | * sem_ch8.adb (Analyze_Object_Renaming): Ditto. | |
3956 | ||
3957 | 2009-04-07 Arnaud Charlet <charlet@adacore.com> | |
3958 | ||
3959 | * g-comlin.adb (Expansion): Fix old regression: also return directory | |
3960 | names when matching. | |
3961 | ||
2fc05e3d AC |
3962 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
3963 | ||
3964 | * exp_ch4.adb: | |
3965 | (Expand_N_Op_Concat): Call Expand_Concatenate for all cases | |
3966 | (Expand_Concatenate): New name for Expand_Concatenate_String which has | |
3967 | been rewritten to handle all types. | |
3968 | (Expand_Concatenate_Other): Remove | |
3969 | ||
3970 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
3971 | ||
3972 | * lib-xref.adb (Generate_Reference): A default subprogram in an | |
3973 | instance appears within the tree for the instance, but generates an | |
3974 | implicit reference in the ALI. | |
3975 | ||
fdac1f80 AC |
3976 | 2009-04-07 Javier Miranda <miranda@adacore.com> |
3977 | ||
3978 | * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged | |
3979 | derived type that has discriminants, propagate the list of interfaces | |
3980 | to the corresponding new base type. In addition, propagate also | |
3981 | attribute Limited_Present (found working in this patch). | |
3982 | ||
3983 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
3984 | ||
3985 | * exp_ch4.adb: Rewrite concatenation expansion. | |
3986 | ||
8dbd1460 AC |
3987 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> |
3988 | ||
3989 | * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only | |
3990 | relevant to packages. | |
3991 | ||
3992 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
3993 | ||
3994 | * sem_attr.adb: Minor reformatting | |
3995 | ||
3996 | * sem_ch6.adb: Minor reformatting | |
3997 | ||
2ddc2000 AC |
3998 | 2009-04-07 Tristan Gingold <gingold@adacore.com> |
3999 | ||
4000 | * socket.c: Add more protections against S_resolvLib_ macros. | |
4001 | ||
4002 | 2009-04-07 Thomas Quinot <quinot@adacore.com> | |
4003 | ||
4004 | * sem_attr.adb: Minor reformatting | |
4005 | ||
4006 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
4007 | ||
4008 | * sem_ch6.adb (New_Overloaded_Entity): New predicate | |
4009 | Is_Overriding_Alias to handle properly types that inherit two homonym | |
4010 | operations that have distinct dispatch table entries. | |
4011 | ||
06a16f58 AC |
4012 | 2009-04-07 Emmanuel Briot <briot@adacore.com> |
4013 | ||
4014 | * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when | |
4015 | looking for the end of a parenthesis group | |
4016 | ||
4017 | 2009-04-07 Tristan Gingold <gingold@adacore.com> | |
4018 | ||
4019 | * gsocket.h Don't #include resolvLib.h if __RTP__ is defined. | |
4020 | ||
4021 | * socket.c Don't use resolvLib_ macros if not defined. | |
4022 | ||
df46b832 AC |
4023 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
4024 | ||
4025 | * g-socket.adb: Minor reformatting. | |
4026 | ||
4027 | * g-socthi-mingw.adb: Minor reformatting | |
4028 | ||
4029 | * g-sothco.ads: Minor reformatting | |
4030 | ||
4031 | * exp_ch4.adb: | |
4032 | (Expand_Concatenate_String): Complete rewrite to generate efficient code | |
4033 | inline instead of relying on external library routines. | |
4034 | ||
4035 | * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb, | |
4036 | s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now | |
4037 | obsolescent | |
4038 | ||
4039 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
4040 | ||
4041 | * sem_attr.adb: | |
4042 | (Eval_Attribute): for attributes of array objects that are not strings, | |
4043 | attributes are not static if nominal subtype of object is unconstrained. | |
4044 | ||
4045 | 2009-04-07 Ed Schonberg <schonberg@adacore.com> | |
4046 | ||
4047 | * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym | |
4048 | operations for a type T in an instance do not override each other, | |
4049 | when T is derived from a formal private type, the corresponding | |
4050 | operations inherited by a type derived from T outside | |
4051 | of the instance do not override each other either. | |
4052 | ||
3dd9959c AC |
4053 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
4054 | ||
4055 | (Osint.Fail): Change calling sequence to have one string arg | |
4056 | (Make.Make_Failed): Same change | |
4057 | All callers are adjusted to use concatenation | |
4058 | ||
4059 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4060 | ||
4061 | * exp_ch4.adb: Fix documentation typo | |
4062 | ||
4063 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4064 | ||
4065 | * tbuild.ads: Minor reformatting | |
4066 | ||
4067 | 2009-04-07 Javier Miranda <miranda@adacore.com> | |
4068 | ||
4069 | * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table | |
4070 | when compiling under ZFP runtime. | |
4071 | ||
4072 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4073 | ||
4074 | * g-comlin.adb: Minor reformatting | |
4075 | ||
4076 | 2009-04-07 Thomas Quinot <quinot@adacore.com> | |
4077 | ||
4078 | * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb, | |
4079 | g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads, | |
4080 | g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads: | |
4081 | Remove dynamic allocation of Fd_Set in Socket_Set_Type objects. | |
4082 | ||
dcd8728b RD |
4083 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
4084 | ||
4085 | * gnat_ugn.texi: Document -gnatDnn/-gnatGnn | |
4086 | ||
4087 | * opt.ads (Sprint_Line_Limit): New parameter | |
4088 | ||
4089 | * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout | |
4090 | ||
4091 | * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches | |
4092 | ||
4093 | * usage.adb: Output information for -gnatGnn -gnatDnn | |
4094 | ||
4095 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4096 | ||
4097 | * make.adb: Minor reformatting | |
4098 | ||
4099 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4100 | ||
4101 | * mlib-tgt-specific-vms-alpha.adb: Minor reformatting | |
4102 | ||
4103 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4104 | ||
4105 | * mlib-tgt-specific-vms-ia64.adb: Minor reformatting | |
4106 | ||
c27f2f15 RD |
4107 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
4108 | ||
4109 | * checks.adb: | |
4110 | Remove Assume_Valid parameter from In_Subrange_Of calls | |
4111 | ||
4112 | * sem_eval.adb: | |
4113 | (Is_Subrange_Of): Remove Assume_Valid parameter, not needed | |
4114 | (Is_In_Range): Remove incorrect use of Assume_Valid | |
4115 | (Is_Out_Of_Range): Remove incorrect use of Assume_Valid | |
4116 | ||
4117 | * sem_eval.ads: | |
4118 | (Is_Subrange_Of): Remove Assume_Valid parameter, not needed | |
4119 | (Is_In_Range): Documentation cleanup | |
4120 | (Is_Out_Of_Range): Documentation cleanup | |
4121 | ||
4122 | * gnat_rm.texi: | |
4123 | Add documentation for Assume_No_Invalid_Values pragma | |
4124 | ||
4125 | * sem_ch12.adb: Minor reformatting | |
4126 | ||
4127 | * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors | |
4128 | ||
4129 | * sem_prag.adb: Improve error message. | |
4130 | ||
4131 | * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb: | |
4132 | LF/CR no longer recognized as line terminator | |
4133 | ||
4134 | * switch.ads: Minor documentation improvement | |
4135 | ||
4136 | * vms_data.ads: Minor reformatting | |
4137 | ||
c800f862 RD |
4138 | 2009-04-07 Robert Dewar <dewar@adacore.com> |
4139 | ||
4140 | * checks.adb (Determine_Range): Add Assume_Valid parameter | |
4141 | ||
4142 | * checks.ads (Determine_Range): Add Assume_Valid parameter | |
4143 | ||
4144 | * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than | |
4145 | Is_Null_Loop to suppress warnings in a loop body. | |
4146 | ||
4147 | * exp_ch4.adb: | |
4148 | (Rewrite_Comparison): Major rewrite to accomodate invalid values | |
4149 | ||
4150 | * exp_ch5.adb: | |
4151 | (Expand_N_Loop_Statement): Delete loop known not to execute | |
4152 | ||
4153 | * opt.ads: | |
4154 | (Assume_No_Invalid_Values): Now set to False, and as documented, this | |
4155 | fully enables the proper handling of invalid values. | |
4156 | ||
4157 | * sem_attr.adb: | |
4158 | New calling sequence for Is_In_Range | |
4159 | ||
4160 | * sem_ch5.adb: | |
4161 | (Analyze_Iteration_Scheme): Accomodate possible invalid values | |
4162 | in determining if a loop range is null. | |
4163 | ||
4164 | * sem_eval.adb: | |
4165 | (Is_In_Range): Add Assume_Valid parameter | |
4166 | (Is_Out_Of_Range): Add Assume_Valid_Parameter | |
4167 | (Compile_Time_Compare): Major rewrite to accomodate invalid values and | |
4168 | also to do more accurate and complete range analysis, catching more | |
4169 | cases. | |
4170 | ||
4171 | * sem_eval.ads: | |
4172 | (Is_In_Range): Add Assume_Valid parameter | |
4173 | (Is_Out_Of_Range): Add Assume_Valid_Parameter | |
4174 | ||
4175 | * sem_util.adb: | |
4176 | New calling sequence for Is_In_Range | |
4177 | ||
4178 | * sinfo.adb: | |
4179 | (Suppress_Loop_Warnings): New flag | |
4180 | ||
4181 | * sinfo.ads: | |
4182 | (Is_Null_Loop): Update documentation | |
4183 | (Suppress_Loop_Warnings): New flag | |
4184 | ||
4185 | * gnat_ugn.texi: Document -gnatB switch | |
4186 | ||
9d00840d AC |
4187 | 2009-04-07 Arnaud Charlet <charlet@adacore.com> |
4188 | ||
4189 | * gnatvsn.ads: Bump version number. | |
4190 | ||
5f143024 AC |
4191 | 2009-04-07 Thomas Quinot <quinot@adacore.com> |
4192 | ||
4193 | * exp_ch3.adb: Minor rewording (comments) | |
4194 | ||
4195 | 2009-04-07 Robert Dewar <dewar@adacore.com> | |
4196 | ||
4197 | * exp_disp.adb: Minor reformatting | |
4198 | ||
d5859bf4 EB |
4199 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> |
4200 | ||
4201 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the | |
4202 | underlying type. | |
4203 | * gcc-interface/trans.c (lvalue_required_p): Likewise. | |
4204 | ||
c86f07f6 EB |
4205 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> |
4206 | ||
4207 | * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>: | |
4208 | Do not convert the result. Remove obsolete comment. | |
4209 | ||
2d5be6c1 EB |
4210 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> |
4211 | ||
4212 | * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear | |
4213 | DECL_CONTEXT. | |
4214 | (Subprogram_Body_to_gnu): Fix pasto. | |
4215 | ||
10069d53 EB |
4216 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> |
4217 | ||
4218 | * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl. | |
4219 | (void_type_decl_node): Remove. | |
4220 | (init_gigi_decls): Likewise. | |
4221 | (gnat_install_builtins): Declare. | |
4222 | (record_builtin_type): Likewise. | |
4223 | (create_type_stub_decl): Likewise. | |
4224 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type. | |
4225 | (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types | |
4226 | artificial. | |
4227 | <E_Array_Subtype>: Use the index types, not only their name, in the | |
4228 | record giving the names of the bounds, if any. | |
4229 | For a packed array type, make it artificial only if the base type | |
4230 | was artificial as well. Remove redundant statement. | |
4231 | (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for | |
4232 | dummy types. | |
4233 | Use create_type_stub_decl to build the TYPE_STUB_DECL of types. | |
4234 | (rest_of_type_decl_compilation_no_defer): Likewise. | |
4235 | * gcc-interface/misc.c (gnat_printable_name): Add missing guard. | |
4236 | * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL | |
4237 | and use create_type_stub_decl to build it. | |
4238 | (gnat_pushdecl): Rewrite condition. | |
4239 | (gnat_install_builtins): Remove bogus declaration. | |
4240 | (record_builtin_type): New function. | |
4241 | (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL | |
4242 | of types. | |
4243 | (create_type_stub_decl): New function. | |
4244 | (create_type_decl): Assert that the type is not dummy. If the type | |
4245 | hasn't been named yet, equate the TYPE_STUB_DECL to the created node. | |
4246 | (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor. | |
4247 | (build_vms_descriptor): Likewise. | |
4248 | (init_gigi_decls): Delete and move bulk of code to... | |
4249 | * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type. | |
4250 | (emit_range_check): Add gnat_node parameter. | |
4251 | (emit_index_check): Likewise. | |
4252 | (emit_check): Likewise. | |
4253 | (build_unary_op_trapv): Likewise. | |
4254 | (build_binary_op_trapv): Likewise. | |
4255 | (convert_with_check): Likewise. | |
4256 | (Attribute_to_gnu): Adjust calls for above changes. | |
4257 | (call_to_gnu): Likewise. | |
4258 | (gnat_to_gnu): Likewise. | |
4259 | (assoc_to_constructor): Likewise. | |
4260 | (pos_to_constructor): Likewise. | |
4261 | (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes. | |
4262 | (process_type): Do not create TYPE_DECL for dummy types. | |
4263 | ||
229077b0 EB |
4264 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> |
4265 | ||
1e17ef87 EB |
4266 | * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables. |
4267 | * gcc-interface/trans.c: Fix formatting throughout. Fix comments. | |
4268 | * gcc-interface/utils.c: Fix comments. | |
4269 | ||
4270 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> | |
4271 | ||
4272 | * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and | |
4273 | move around. | |
229077b0 EB |
4274 | (gnat_to_gnu_type): Move around. |
4275 | (get_unpadded_type): Likewise. | |
1e17ef87 EB |
4276 | * gcc-interface/utils.c (update_pointer_to): Use synthetic macro. |
4277 | Tidy comments. | |
229077b0 | 4278 | |
aa1aa786 EB |
4279 | 2009-04-07 Eric Botcazou <ebotcazou@adacore.com> |
4280 | ||
4281 | * gcc-interface/trans.c (check_for_eliminated_entity): New function. | |
4282 | (Attribute_to_gnu): Invoke it for Access- and Address-like attributes. | |
4283 | (call_to_gnu): Invoke it instead of manually checking. | |
4284 | ||
63787194 EB |
4285 | 2009-04-04 Eric Botcazou <ebotcazou@adacore.com> |
4286 | ||
4287 | * gcc-interface/utils.c (finish_record_type): Force structural equality | |
4288 | checks if the record type is discriminated. | |
4289 | ||
d236ace7 EB |
4290 | 2009-03-31 Eric Botcazou <ebotcazou@adacore.com> |
4291 | ||
4292 | * system-linux-alpha.ads (Functions_Return_By_DSP): Remove. | |
4293 | * system-linux-mips.ads (Functions_Return_By_DSP): Likewise. | |
4294 | * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise. | |
4295 | * system-linux-s390.ads (Functions_Return_By_DSP): Likewise. | |
4296 | * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise. | |
4297 | * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise. | |
4298 | * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise. | |
4299 | ||
bd9f68e0 PB |
4300 | 2009-03-30 Paolo Bonzini <bonzini@gnu.org> |
4301 | ||
d7be99f1 EB |
4302 | * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead |
4303 | of TREE_CONSTANT_OVERFLOW. | |
bd9f68e0 | 4304 | |
8ce94e44 JM |
4305 | 2009-03-30 Joseph Myers <joseph@codesourcery.com> |
4306 | ||
4307 | PR rtl-optimization/323 | |
4308 | * gcc-interface/misc.c (gnat_post_options): Set | |
4309 | flag_excess_precision_cmdline. Give an error for | |
4310 | -fexcess-precision=standard for processors where the option is | |
4311 | significant. | |
4312 | ||
d9223014 L |
4313 | 2009-03-27 H.J. Lu <hongjiu.lu@intel.com> |
4314 | ||
4315 | PR c/39323 | |
4316 | * gcc-interface/utils.c (create_field_decl): Use "unsigned int" | |
4317 | on bit_align. | |
4318 | ||
76761bbd OH |
4319 | 2009-03-11 Olivier Hainque <hainque@adacore.com> |
4320 | ||
4321 | * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range | |
4322 | checks processing, remove unintended TREE_TYPE walk on index type. | |
4323 | ||
39ae51e0 EB |
4324 | 2009-03-01 Eric Botcazou <ebotcazou@adacore.com> |
4325 | ||
4326 | PR ada/39264 | |
4327 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no | |
4328 | call make_packable_type on fat pointer types. | |
4329 | <E_Array_Subtype>: Likewise. | |
4330 | <E_Record_Subtype>: Call make_packable_type on all record types | |
4331 | except for fat pointer types. | |
4332 | (make_packable_type): Likewise. | |
4333 | (gnat_to_gnu_field): Likewise. | |
4334 | ||
7d01864f EB |
4335 | 2009-02-28 Eric Botcazou <ebotcazou@adacore.com> |
4336 | ||
4337 | * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental | |
67901d32 | 4338 | EH_MECHANISM change made on 2007-12-06. |
7d01864f | 4339 | |
a760c977 AS |
4340 | 2009-02-26 Andreas Schwab <schwab@suse.de> |
4341 | ||
4c354194 | 4342 | PR ada/39172 |
a760c977 | 4343 | * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@. |
a760c977 AS |
4344 | * gcc-interface/Makefile.in: Change all uses of $(srcdir), |
4345 | $(fsrcdir) and $(fsrcpfx) to add ada subdir. | |
4346 | (AWK): Substitute. | |
4347 | (target_cpu_default): Substitute. | |
4348 | ||
054efbba LG |
4349 | 2009-02-25 Laurent GUERBY <laurent@guerby.net> |
4350 | ||
975a4fd6 | 4351 | PR ada/39221 |
a760c977 AS |
4352 | * a-teioed.adb (Expand): Fix Result overflow. |
4353 | ||
2692d7f5 LG |
4354 | 2009-02-25 Laurent GUERBY <laurent@guerby.net> |
4355 | ||
a760c977 AS |
4356 | * gcc-interface/Makefile.in: Fix multilib handling for |
4357 | sparc64-linux. | |
4358 | ||
ea675ec3 RO |
4359 | 2009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
4360 | ||
4361 | * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6. | |
4362 | ||
e98c0739 L |
4363 | 2009-02-18 H.J. Lu <hongjiu.lu@intel.com> |
4364 | ||
4365 | * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi. | |
4366 | ||
70f5fc7c EB |
4367 | 2009-02-16 Eric Botcazou <ebotcazou@adacore.com> |
4368 | ||
4369 | * gcc-interface/deftarg.c: Remove. | |
4370 | ||
794511d2 | 4371 | 2009-02-10 Olivier Hainque <hainque@adacore.com> |
e98c0739 | 4372 | Eric Botcazou <ebotcazou@adacore.com> |
794511d2 EB |
4373 | |
4374 | * gcc-interface/decl.c (enum alias_set_op): New enumeration. | |
4375 | (copy_alias_set): Rename into... | |
4376 | (relate_alias_sets): ...this. Add third parameter OP. Retrieve the | |
4377 | underlying array of unconstrained arrays for the new type as well. | |
4378 | If the old and new alias sets don't conflict, make one a subset of | |
4379 | the other as per the OP parameter. | |
4380 | (gnat_to_gnu_entity): Adjust calls to copy_alias_set. | |
4381 | <E_Record_Type>: Do not copy the alias set for derived types. | |
4382 | For all types, make the alias set of derived types a superset of | |
4383 | that of their parent type. | |
4384 | (make_aligning_type): Adjust calls to copy_alias_set. | |
4385 | (make_packable_type): Likewise. | |
4386 | * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>: | |
4387 | Check for alias set conflict instead of strict equality to issue the | |
4388 | warning. | |
4389 | ||
c3734896 EB |
4390 | 2009-02-09 Eric Botcazou <ebotcazou@adacore.com> |
4391 | ||
4392 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>: | |
4393 | Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate. | |
4394 | (copy_alias_set): Assert that arrays have the same aliasing settings. | |
4395 | (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT. | |
4396 | ||
9a58d4d2 EB |
4397 | 2009-02-08 Eric Botcazou <ebotcazou@adacore.com> |
4398 | ||
4399 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>: | |
4400 | Set TYPE_NONALIASED_COMPONENT on the array type. | |
4401 | ||
d0ec4c99 LG |
4402 | 2009-01-31 Laurent GUERBY <laurent@guerby.net> |
4403 | ||
4404 | * gcc-interface/Makefile.in: Fix mipsel linux handling. | |
a760c977 | 4405 | |
4dcb8fd1 JJ |
4406 | 2009-01-16 Jakub Jelinek <jakub@redhat.com> |
4407 | ||
4408 | * gcc-interface/Makefile.in: Fix multilib handling for | |
4409 | powerpc64-linux. | |
4410 | ||
3b9c1abd EB |
4411 | 2009-01-12 Eric Botcazou <ebotcazou@adacore.com> |
4412 | ||
4413 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip | |
4414 | only useless conversions around renamed objects. | |
4415 | ||
13318d2f EB |
4416 | 2009-01-11 Eric Botcazou <ebotcazou@adacore.com> |
4417 | ||
4418 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put | |
4419 | the _Tag field before any discriminants in the field list. | |
4420 | (components_to_record): Remove obsolete comment. | |
4421 | ||
6f9f0ce3 JJ |
4422 | 2008-12-09 Jakub Jelinek <jakub@redhat.com> |
4423 | ||
4424 | PR ada/38450 | |
4425 | * gcc-interface/utils.c (finish_record_type): Use SET_TYPE_MODE. | |
4426 | * gcc-interface/decl.c (gnat_to_gnu_entity, make_aligning_type): | |
4427 | Likewise. | |
4428 | ||
9ff4a9da | 4429 | 2008-12-05 Sebastian Pop <sebastian.pop@amd.com> |
250d2fb5 JJ |
4430 | |
4431 | PR bootstrap/38262 | |
4432 | * gcc-interface/Make-lang.in (gnat1): Add BACKENDLIBS, remove GMPLIBS. | |
4433 | ||
f9805f52 EB |
4434 | 2008-11-29 Eric Botcazou <ebotcazou@adacore.com> |
4435 | ||
4436 | PR ada/30827 | |
4437 | * g-comver.adb (Ver_Len_Max): Fix inconsistency. | |
4438 | ||
2ddc34ba EB |
4439 | 2008-11-27 Eric Botcazou <ebotcazou@adacore.com> |
4440 | ||
4441 | * gcc-interface/decl.c: Fix various nits. | |
4442 | ||
58612565 EB |
4443 | 2008-11-20 Eric Botcazou <ebotcazou@adacore.com> |
4444 | ||
4445 | * gcc-interface/utils.c (init_gigi_decls): Fix type mismatch. | |
4446 | ||
e66e5d9e EB |
4447 | 2008-11-16 Eric Botcazou <ebotcazou@adacore.com> |
4448 | ||
4449 | PR ada/38127 | |
d74b4b00 EB |
4450 | * gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Do not |
4451 | special-case boolean types. Propagate the name. | |
e66e5d9e EB |
4452 | * gcc-interface/targtyps.c: Tweak comment. |
4453 | ||
7348f18c GB |
4454 | 2008-11-15 Geert Bosch <bosch@adacore.com> |
4455 | ||
4456 | * gcc-interface/trans.c (emit_check): Put back a final save_expr | |
4457 | to prevent exponential expansion during gimplification. | |
4458 | ||
708bceb7 EB |
4459 | 2008-11-15 Eric Botcazou <ebotcazou@adacore.com> |
4460 | ||
4461 | * gcc-interface/lang-specs.h: Expand -coverage and reorder switches. | |
4462 | ||
a5b8aacd EB |
4463 | 2008-11-15 Eric Botcazou <ebotcazou@adacore.com> |
4464 | ||
4465 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Force constants | |
4466 | initialized to a static constant to be statically allocated even if | |
4467 | they are of a padding type, provided the original type also has | |
4468 | constant size. | |
4469 | ||
4364e851 LG |
4470 | 2008-11-15 Laurent Guerby <laurent@guerby.net> |
4471 | ||
4472 | PR ada/37993 | |
4473 | * gcc-interface/Makefile.in: Add multilib handling for x86_64 | |
4474 | on darwin. | |
4475 | * system-darwin-x86_64.ads: New file. | |
4476 | ||
255e5b04 OH |
4477 | 2008-11-13 Olivier Hainque <hainque@adacore.com> |
4478 | ||
4479 | * gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Function>: | |
4480 | Turn Ada Pure on subprograms back into GCC CONST when eh constructs | |
4481 | are explicit to the middle-end. Tidy. | |
4482 | ||
82d3b03a EB |
4483 | 2008-11-09 Eric Botcazou <ebotcazou@adacore.com> |
4484 | ||
4485 | * gcc-interface/ada-tree.def (PLUS_NOMOD_EXPR): New tree code. | |
4486 | (MINUS_NOMOD_EXPR): Likewise. | |
4487 | * gcc-interface/utils2.c (build_binary_op) <PREINCREMENT_EXPR>: Make | |
4488 | unreachable. | |
4489 | <PLUS_NOMOD_EXPR>: New case. | |
4490 | <MINUS_NOMOD_EXPR>: Likewise. | |
4491 | * gcc-interface/trans.c (Loop_Statement_to_gnu): Build increment-and- | |
4492 | assignment statement instead of using an increment operator. | |
4493 | ||
f5026442 RO |
4494 | 2008-11-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
4495 | ||
4496 | * system-irix-n64.ads: New file. | |
4497 | * gcc-interface/Makefile.in (mips-sgi-irix6*): Support O32 and N64 | |
4498 | multilibs. | |
4499 | ||
4500 | 2008-11-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
4501 | ||
4502 | PR ada/37681 | |
4503 | * system-solaris-x86_64.ads: New file. | |
4504 | * gcc-interface/Makefile.in (*86-solaris2*): Support x86_64 multilib. | |
4505 | ||
7fee6a39 | 4506 | 2008-11-07 Bechir Zalila <bechir.zalila@gmail.com> |
e98c0739 | 4507 | Eric Botcazou <ebotcazou@adacore.com> |
7fee6a39 BZ |
4508 | |
4509 | PR ada/34289 | |
4510 | * lib.ads: (Enable_Switch_Storing): Declare. | |
4511 | * lib.adb: (Enable_Switch_Storing): New procedure. | |
4512 | * switch-c.adb (Scan_Front_End_Switches): Add support for -gnatea. | |
4513 | * make.adb: (Compile_Sources.Compile): Add -gnatea as first option. | |
4514 | (Display): Never display -gnatea | |
4515 | * gcc-interface/lang-specs.h: If -gnatea is present, pass -gnatez. | |
4516 | ||
9ed0e483 TQ |
4517 | 2008-11-07 Thomas Quinot <quinot@adacore.com> |
4518 | ||
4519 | * gcc-interface/trans.c (Attribute_to_gnu, case Attr_Length): Check | |
4520 | for empty range in original base type, not converted result type. | |
4521 | ||
58e94443 GB |
4522 | 2008-11-07 Geert Bosch <bosch@adacore.com> |
4523 | ||
4524 | * gcc-interface/trans.c (build_binary_op_trapv): Convert arguments | |
4525 | and result for call to __gnat_mulv64. | |
4526 | ||
a7c43bbc EB |
4527 | 2008-11-07 Eric Botcazou <ebotcazou@adacore.com> |
4528 | ||
4529 | * gcc-interface/trans.c: Fix formatting nits. | |
4530 | ||
2575024c GB |
4531 | 2008-11-07 Geert Bosch <bosch@adacore.com> |
4532 | ||
4533 | * gcc-interface/trans.c (build_binary_op_trapv): Avoid emitting | |
4534 | overflow check for constant result. | |
4535 | ||
4ae39383 GB |
4536 | 2008-11-07 Geert Bosch <bosch@adacore.com> |
4537 | ||
4538 | * gcc-interface/trans.c (build_binary_op_trapv): Use more efficient | |
4539 | overflow check for addition/subtraction if neither operand is constant. | |
4540 | ||
6818f0fc EB |
4541 | 2008-11-06 Eric Botcazou <ebotcazou@adacore.com> |
4542 | ||
4543 | * gcc-interface/Makefile.in (SPARC/Solaris): Use a common set of | |
4544 | files for the target-dependent part of the runtime. | |
4545 | (SPARC/Linux): Likewise. | |
4546 | ||
8d3323de EB |
4547 | 2008-11-06 Eric Botcazou <ebotcazou@adacore.com> |
4548 | ||
4549 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Out_Parameter>: If not | |
4550 | optimizing, create a PARM_DECL pointing to the VAR_DECL for debugging | |
4551 | purposes. | |
4552 | ||
baf6e6a8 EB |
4553 | 2008-11-06 Eric Botcazou <ebotcazou@adacore.com> |
4554 | ||
4555 | * gcc-interface/misc.c (gnat_printable_name): Always return a copy | |
4556 | in GC memory. | |
4557 | ||
8b659f79 EB |
4558 | 2008-11-06 Eric Botcazou <ebotcazou@adacore.com> |
4559 | ||
4560 | PR ada/19419 | |
4561 | * gcc-interface/trans.c (gnat_to_gnu) <N_Assignment_Statement>: | |
4562 | Generate a call to memmove for an assignment between overlapping | |
4563 | array slices. | |
4564 | ||
358ef7fb AK |
4565 | 2008-11-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
4566 | ||
4567 | PR target/37977 | |
4568 | * gcc-interface/Makefile.in: Add multilib handling for | |
4569 | s390-linux and s390x-linux. | |
4570 | ||
7134e605 JJ |
4571 | 2008-10-24 Jakub Jelinek <jakub@redhat.com> |
4572 | ||
4573 | * gcc-interface/Make-lang.in (check-ada-subtargets): Depend on | |
4574 | check-acats-subtargets and check-gnat-subtargets. | |
4575 | (check_acats_targets): New variable. | |
4576 | (check-acats-subtargets, check-acats%): New targets. | |
4577 | (check-acats): If -j is used and CHAPTERS is empty, run the testing | |
4578 | in multiple make goals, possibly parallel, and afterwards run | |
4579 | dg-extract-results.sh to merge the sum and log files. | |
4580 | ||
82f7c45f GB |
4581 | 2008-10-17 Geert Bosch <bosch@adacore.com> |
4582 | ||
4583 | * gcc-interface/trans.c (gnat_to_gnu) <N_Slice>: Simplify expansion | |
4584 | to use only a single check instead of three, and avoid unnecessary | |
4585 | COMPOUND_EXPR. | |
4586 | (emit_check): Avoid useless COMPOUND_EXPRs and SAVE_EXPRs, sometimes | |
4587 | creating more opportunities for optimizations. | |
4588 | ||
0adef32b JJ |
4589 | 2008-10-13 Jakub Jelinek <jakub@redhat.com> |
4590 | ||
4591 | PR middle-end/37601 | |
4592 | * gcc-interface/utils.c (gnat_types_compatible_p): Handle | |
4593 | NULL TYPE_DOMAIN. | |
4594 | ||
9cf18af8 EB |
4595 | 2008-10-07 Eric Botcazou <ebotcazou@adacore.com> |
4596 | ||
4597 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Move code | |
4598 | dealing with volatileness to after code dealing with renaming. | |
4599 | ||
e84319a3 EB |
4600 | 2008-10-06 Eric Botcazou <ebotcazou@adacore.com> |
4601 | ||
4602 | * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Minor tweaks. | |
4603 | * gcc-interface/trans.c (Pragma_to_gnu): Likewise. | |
4604 | ||
afcea859 EB |
4605 | 2008-10-06 Eric Botcazou <ebotcazou@adacore.com> |
4606 | ||
4607 | * gcc-interface/utils.c (can_fold_for_view_convert_p): New predicate. | |
4608 | (unchecked_convert): Use it to disable problematic folding with | |
4609 | VIEW_CONVERT_EXPR in the general case. Always disable it for the | |
4610 | special VIEW_CONVERT_EXPR built for integral types and cope with | |
4611 | its addressability issues by preserving the first conversion. | |
4612 | ||
9e81dbc7 AS |
4613 | 2008-10-01 Andreas Schwab <schwab@suse.de> |
4614 | ||
4615 | * system-linux-ppc64.ads: New file. | |
4616 | * gcc-interface/Makefile.in: Add multilib handling for | |
4617 | powerpc-linux. | |
4618 | ||
bb3da4f2 EB |
4619 | 2008-09-26 Eric Botcazou <ebotcazou@adacore.com> |
4620 | ||
4621 | * decl.c (gnat_to_gnu_entity) <object>: Cap the alignment promotion | |
4622 | to that of ptr_mode instead of word_mode. | |
4623 | ||
8f5730b9 EB |
4624 | 2008-09-26 Eric Botcazou <ebotcazou@adacore.com> |
4625 | ||
4626 | PR ada/5911 | |
4627 | * gcc-interface/Makefile.in (SPARC/Solaris): Add multilib support. | |
4628 | ||
3ca37eb7 ST |
4629 | 2008-09-25 Samuel Tardieu <sam@rfc1149.net> |
4630 | ||
4631 | PR ada/37641 | |
4632 | * adaint.c (__gnat_set_non_writable): Use FILE_WRITE_EA | |
4633 | instead of deprecated FILE_WRITE_PROPERTIES. | |
4634 | ||
22868cbf OH |
4635 | 2008-09-22 Olivier Hainque <hainque@adacore.com> |
4636 | ||
4637 | * gcc-interface/decl.c (gnat_to_gnu_entity): Even when they | |
4638 | are never assigned, volatile entities are not constant for code | |
4639 | generation purposes. | |
4640 | ||
7193e639 LG |
4641 | 2008-09-21 Laurent Guerby <laurent@guerby.net> |
4642 | ||
9e81dbc7 | 4643 | PR ada/5911 |
7193e639 LG |
4644 | * gcc-interface/Makefile.in: Add multilib handling for x86_64 |
4645 | and sparc. | |
4646 | * system-linux-sparcv9.ads: New file. | |
9e81dbc7 | 4647 | |
7fda1596 EB |
4648 | 2008-09-20 Eric Botcazou <ebotcazou@adacore.com> |
4649 | ||
4650 | * exp_dbug.ads: Document new convention for the XVZ variable. | |
4651 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Generate | |
4652 | debug info if necessary for the type padding the component type. | |
4653 | <E_Array_Subtype>: Likewise. | |
4654 | (maybe_pad_type): Emit the XVZ variable in units. | |
4655 | * gcc-interface/trans.c (Loop_Statement_to_gnu): Fix formatting nits. | |
4656 | (Subprogram_Body_to_gnu): Set the source line of the subprogram's node | |
4657 | on statements generated to initialize the parameter attributes cache. | |
4658 | Set the source line of the end label of the body on the special return | |
4659 | statement built for a procedure with copy-in copy-out parameters. | |
4660 | ||
d84b344a EB |
4661 | 2008-09-20 Eric Botcazou <ebotcazou@adacore.com> |
4662 | ||
4663 | PR ada/37585 | |
4664 | * gcc-interface/utils.c (create_subprog_decl): Disable inlining for | |
4665 | inlined external functions if they contain a nested function not | |
4666 | declared inline. | |
4667 | ||
4db26d6c JH |
4668 | 2008-09-18 Jan Hubicka <jh@suse.cz> |
4669 | ||
4670 | * gcc-interface/utils.c (create_subprog_decl): Use DECL_DECLARED_INLINE_P. | |
4671 | (end_subprog_body): Do not set DECL_INLINE. | |
4672 | ||
03e74118 PR |
4673 | 2008-09-17 Pascal Rigaux <pixel@mandriva.com> |
4674 | ||
4675 | PR ada/21327 | |
4676 | * gnat_ugn.texi: Use proper format in direntry. | |
4677 | ||
6a7a3f31 EB |
4678 | 2008-09-15 Eric Botcazou <ebotcazou@adacore.com> |
4679 | ||
4680 | * gcc-interface/trans.c (gigi): Declare the name of the compilation | |
4681 | unit as the first global name. | |
4682 | ||
f67894ed JH |
4683 | 2008-09-14 Jan Hubicka <jh@suse.cz> |
4684 | ||
6a7a3f31 | 4685 | * gcc-interface/Make-lang.in (gnat1): Add CFLAGS. |
f67894ed | 4686 | |
16b05213 RW |
4687 | 2008-09-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
4688 | ||
4689 | * a-crbtgk.adb, a-direct.ads, a-tasatt.adb, ali.ads, | |
4690 | bindgen.adb, checks.adb, einfo.ads, exp_aggr.adb, exp_ch11.adb, | |
4691 | exp_ch3.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_ch9.adb, | |
4692 | exp_dbug.ads, exp_disp.adb, exp_dist.adb, exp_pakd.adb, | |
4693 | exp_util.adb, g-alveop.ads, g-comlin.adb, g-comlin.ads, | |
4694 | g-diopit.adb, g-socket.ads, gcc-interface/decl.c, | |
4695 | gcc-interface/gigi.h, gcc-interface/trans.c, | |
4696 | lib-load.adb, lib-xref.ads, make.adb, mlib-prj.adb, nlists.ads, | |
4697 | opt.ads, par-ch10.adb, par-ch5.adb, par.adb, s-os_lib.ads, | |
4698 | s-oscons-tmplt.c, s-parint.ads, s-regpat.ads, s-shasto.ads, | |
4699 | s-stausa.ads, s-taprop-vms.adb, sem.adb, sem_ch10.adb, | |
4700 | sem_ch11.adb, sem_ch12.adb, sem_ch13.adb, sem_ch3.adb, | |
4701 | sem_ch3.ads, sem_ch4.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, | |
4702 | sem_elim.adb, sem_prag.adb, sem_util.adb, sem_util.ads, | |
4703 | sem_warn.adb, sinfo.ads, styleg.adb, vms_data.ads: Fix typos in | |
4704 | comments. | |
4705 | * gnathtml.pl: Fix typos. | |
4706 | ||
1011d8a2 JS |
4707 | 2008-09-10 Joel Sherrill <joel.sherrill@oarcorp.com> |
4708 | ||
4709 | * gcc-interface/Makefile.in: Switch RTEMS to s-interr-hwint.adb. | |
4710 | * s-osinte-rtems.ads: Add shared hardware interrupt adapter | |
4711 | layer. RTEMS binds to OS provided adapter routines so there are | |
4712 | no modifications to s-osinte-rtems.adb. | |
4713 | ||
e5c73177 AC |
4714 | 2008-09-09 Arnaud Charlet <charlet@adacore.com> |
4715 | Joel Sherrill <joel.sherrill@oarcorp.com> | |
4716 | ||
4717 | * gcc-interface/Makefile.in: Switch VxWorks to s-interr-hwint.adb. | |
4718 | ||
4719 | * s-interr-vxworks.adb: Renamed to s-interr-hwint.adb | |
4720 | ||
4721 | * s-interr-hwint.adb: New file. | |
4722 | ||
4723 | * s-osinte-vxworks.ads, s-osinte-vxworks.adb: Add new functions | |
4724 | needed by s-interr-hwint.adb. | |
4725 | ||
4726 | * s-osinte-vxworks-kernel.adb: New file. | |
4727 | ||
56cc5928 JS |
4728 | 2008-09-05 Joel Sherrill <joel.sherrill@oarcorp.com> |
4729 | ||
4730 | * s-stchop-rtems.adb: Add file missed in early commit. Already | |
4731 | referenced in gcc-interface/Makefile.in. | |
4732 | ||
21bacb7e TQ |
4733 | 2008-08-30 Thomas Quinot <quinot@adacore.com> |
4734 | ||
4735 | * gcc-interface/Make-lang.in: Allow s-oscons.{o,ali} to | |
4736 | be built even without a separate libada directory. | |
4737 | ||
5b2da948 AC |
4738 | 2008-08-22 Arnaud Charlet <charlet@adacore.com> |
4739 | ||
4740 | * lib-xref.ads: Fix typo in subprogram reference definition. | |
4741 | ||
4742 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4743 | ||
c9f1fdfe RD |
4744 | * s-sopco3.adb, s-sopco4.adb, s-sopco5.adb, s-strops.adb: Minor code fix |
4745 | to avoid warning. | |
5b2da948 | 4746 | |
c9f1fdfe | 4747 | * g-trasym.adb: Ditto |
5b2da948 AC |
4748 | |
4749 | * s-utf_32.adb (Get_Category): Fix obvious typo | |
4750 | ||
4751 | * s-wwdcha.adb: Minor code reorganization | |
4752 | Remove dead code | |
4753 | ||
4351c21b AC |
4754 | 2008-08-22 Robert Dewar <dewar@adacore.com> |
4755 | ||
4756 | * checks.adb (Determine_Range): Deal with values that might be invalid | |
4757 | ||
e5c73177 AC |
4758 | * opt.adb, opt.ads (Assume_No_Invalid_Values[_Config]): New |
4759 | configuration switches. | |
4351c21b AC |
4760 | |
4761 | * par-prag.adb: Dummy entry for pragma Assume_No_Invalid_Values | |
4762 | ||
4763 | * sem_prag.adb: Implement pragma Assume_No_Default_Values | |
4764 | ||
4765 | * snames.adb, snames.ads, snames.h: | |
4766 | Add entries for pragma Assume_No_Invalid_Values | |
4767 | ||
4768 | * switch-c.adb: Add processing for -gnatB switch | |
4769 | ||
4770 | * usage.adb: Add entry for flag -gnatB (no bad invalid values) | |
4771 | ||
4772 | 2008-08-22 Javier Miranda <miranda@adacore.com> | |
4773 | ||
4774 | * exp_ch3.adb (Build_Init_Statements): Transfer to the body of the | |
4775 | init procedure all the expanded code associated with the spec of | |
4776 | task types and protected types. | |
4777 | ||
2743d81d AC |
4778 | 2008-08-22 Gary Dismukes <dismukes@adacore.com> |
4779 | ||
4780 | * exp_aggr.adb (Static_Array_Aggregate): Call Analyze_And_Resolve on the | |
4781 | component expression copies rather than directly setting Etype and | |
4782 | Is_Static_Expression. | |
4783 | ||
4784 | 2008-08-22 Gary Dismukes <dismukes@adacore.com> | |
4785 | ||
4786 | * sem_util.adb (Has_Preelaborable_Initialization): Revise checking of | |
4787 | private types to allow for types derived from a private type with | |
4788 | preelaborable initialization, but return False for a private extension | |
4789 | (unless it has the pragma). | |
4790 | ||
4791 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4792 | ||
4793 | * opt.ads: Minor code reorganization (put entries in alpha order) | |
4794 | ||
a5ad3248 AC |
4795 | 2008-08-22 Pascal Obry <obry@adacore.com> |
4796 | ||
4797 | * initialize.c, adaint.c: Use Lock_Task and Unlock_Task for non-blocking | |
4798 | spawn. | |
4799 | ||
6eca32ba GB |
4800 | 2008-08-22 Geert Bosch <bosch@adacore.com> |
4801 | ||
4802 | * gcc-interface/trans.c: Define FP_ARITH_MAY_WIDEN | |
4803 | (convert_with_check): Only use longest_float_type if FP_ARITH_MAY_WIDEN is 0 | |
4804 | ||
1c7717c3 AC |
4805 | 2008-08-22 Doug Rupp <rupp@adacore.com> |
4806 | ||
4807 | * bindgen.adb [VMS] (Gen_Adainit_Ada, Gen_Adainit_C): Import and call | |
4808 | __gnat_set_features. | |
4809 | ||
4810 | * init.c | |
4811 | (__gnat_set_features): New function. | |
4812 | (__gnat_features_set): New tracking variable. | |
4813 | (__gl_no_malloc_64): New feature global variable | |
4814 | ||
4815 | 2008-08-22 Ed Schonberg <schonberg@adacore.com> | |
4816 | ||
4817 | * sem_ch8.adb (Use_One_Type): Do not emit warning message about redundant | |
4818 | use_type_clause in an instance. | |
4819 | ||
4820 | 2008-08-22 Bob Duff <duff@adacore.com> | |
4821 | ||
4822 | * exp_ch6.ads: Remove pragma Precondition, since it breaks some builds. | |
4823 | ||
4824 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4825 | ||
4826 | * exp_ch6.adb: Minor reformatting | |
4827 | ||
4828 | * exp_ch7.adb: Minor reformatting | |
4829 | ||
4830 | * exp_ch7.ads: Put routines in proper alpha order | |
4831 | ||
4832 | * exp_dist.adb: Minor reformatting | |
4833 | ||
4834 | 2008-08-22 Vincent Celier <celier@adacore.com> | |
4835 | ||
4836 | * prj.ads: Minor comment update | |
4837 | ||
4838 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4839 | ||
4840 | * sem_ch5.adb (One_Bound): Fix latent bug involving secondary stack | |
4841 | ||
4842 | 2008-08-22 Ed Schonberg <schonberg@adacore.com> | |
4843 | ||
4844 | * exp_tss.adb: | |
4845 | (Base_Init_Proc): For a protected subtype, use the base type of the | |
4846 | corresponding record to locate the propoer initialization procedure. | |
4847 | ||
4848 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4849 | ||
4850 | * checks.adb: | |
4851 | (In_Subrange_Of): New calling sequence | |
4852 | (Determine_Range): Prepare for new processing using base type | |
4853 | ||
4854 | * exp_ch4.adb: | |
4855 | (Compile_Time_Compare): Use new calling sequence | |
4856 | ||
4857 | * exp_ch5.adb: | |
4858 | (Compile_Time_Compare): Use new calling sequence | |
4859 | ||
4860 | * sem_eval.adb: | |
4861 | (Compile_Time_Compare): New calling sequence allows dealing with | |
4862 | invalid values. | |
4863 | (In_Subrange_Of): Ditto | |
4864 | ||
4865 | * sem_eval.ads: | |
4866 | (Compile_Time_Compare): New calling sequence allows dealing with | |
4867 | invalid values. | |
4868 | (In_Subrange_Of): Ditto | |
4869 | ||
4870 | 2008-08-22 Pascal Obry <obry@adacore.com> | |
4871 | ||
4872 | * adaint.c: Fix possible race condition on win32_wait(). | |
4873 | ||
048e5cef BD |
4874 | 2008-08-22 Bob Duff <duff@adacore.com> |
4875 | ||
4876 | * exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, exp_util.adb, freeze.adb, | |
4877 | exp_ch4.adb, exp_ch6.ads, exp_ch6.adb, sem_ch6.adb, exp_aggr.adb, | |
4878 | exp_intr.adb, exp_ch3.adb: Rename: | |
4879 | Exp_Ch7.Controlled_Type => Needs_Finalization | |
4880 | Exp_Ch7.CW_Or_Controlled_Type => CW_Or_Has_Controlled_Part | |
4881 | Exp_Ch5.Expand_N_Extended_Return_Statement.Controlled_Type => | |
4882 | Has_Controlled_Parts | |
4883 | (Has_Some_Controlled_Component): Fix bug in array case. | |
4884 | ||
da2f5d14 AC |
4885 | 2008-08-22 Robert Dewar <dewar@adacore.com> |
4886 | ||
4887 | * sem_ch8.adb: Minor reformatting | |
4888 | ||
4889 | 2008-08-22 Kevin Pouget <pouget@adacore.com> | |
4890 | ||
4891 | * s-shasto.ads, s-shasto.adb: Move Shared_Var_ROpen, Shared_Var_WOpen and | |
4892 | Shared_Var_Close procedure specifications from package spec to package body. | |
4893 | ||
4894 | * rtsfind.ads: Remove RE_Shared_Var_Close, RE_Shared_Var_ROpen, | |
4895 | RE_Shared_Var_WOpen entries. | |
4896 | ||
4897 | * exp_dist.adb: Update RE_Any_Content_Ptr to RE_Any_Container_Ptr in | |
4898 | Build_To_Any_Call, Build_TypeCode_Call and Build_From_Any_Call procedures. | |
4899 | ||
4900 | 2008-08-22 Eric Botcazou <ebotcazou@adacore.com> | |
4901 | ||
4902 | * init.c: adjust EH support code on Alpha/Tru64 as well. | |
4903 | ||
4904 | * raise-gcc.c: Add back a couple of comments. | |
4905 | ||
4906 | 2008-08-22 Ed Schonberg <schonberg@adacore.com> | |
4907 | ||
4908 | * exp_ch5.adb (Expand_Simple_Function_Return): If secondary stack is | |
4909 | involved and the return type is class-wide, use the type of the expression | |
4910 | for the generated access type. Suppress useless discriminant checks on the | |
4911 | allocator. | |
4912 | ||
4913 | 2008-08-22 Bob Duff <duff@adacore.com> | |
4914 | ||
4915 | * exp_ch7.adb: Minor comment fix | |
4916 | ||
4917 | * exp_ch6.ads: Minor comment fix | |
4918 | ||
1dcdbfab AC |
4919 | 2008-08-22 Thomas Quinot <quinot@adacore.com> |
4920 | ||
4921 | * sem_ch8.adb: Minor reformatting | |
4922 | Minor code reorganization (introduce subprogram to factor duplicated | |
4923 | code). | |
4924 | ||
4925 | 2008-08-22 Sergey Rybin <rybin@adacore.com> | |
4926 | ||
4927 | * gnat_ugn.texi: Change the description of gnatcheck default rule | |
4928 | settings. | |
4929 | ||
4930 | 2008-08-22 Eric Botcazou <ebotcazou@adacore.com> | |
4931 | ||
4932 | * init.c (__gnat_adjust_context_for_raise): Delete for AIX, HP-UX, | |
4933 | Solaris, FreeBSD, VxWorks and PowerPC/Linux. For x86{-64}/Linux, | |
4934 | do not adjust the PC anymore. | |
4935 | (__gnat_error_handler): Do not call __gnat_adjust_context_for_raise | |
4936 | on AIX, HP-UX, Solaris, FreeBSD and VxWorks. | |
4937 | ||
4938 | * raise-gcc.c (get_call_site_action_for): Use _Unwind_GetIPInfo | |
4939 | instead of _Unwind_GetIP. | |
4940 | ||
4941 | 2008-08-22 Gary Dismukes <dismukes@adacore.com> | |
4942 | ||
4943 | * exp_aggr.adb (Static_Array_Aggregate): When a static array aggregate | |
4944 | with a range is transformed into a positional aggregate, any copied | |
4945 | component literals should be marked Is_Static_Expression. | |
4946 | ||
4947 | * sem_eval.adb (Compile_Time_Known_Value): Don't treat null literals as | |
4948 | not being known at at compile time when Configurable_Run_Time_Mode is | |
4949 | true. | |
4950 | ||
4951 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4952 | ||
4953 | * exp_attr.adb: | |
4954 | (Expand_N_Attribute_Reference): No validity checking on OUT parameter of | |
4955 | Read or Input attribute. | |
4956 | ||
0d4aed99 AC |
4957 | 2008-08-22 Ed Schonberg <schonberg@adacore.com> |
4958 | ||
4959 | * sem_ch8.adb (Use_One_Type): when checking which of two use_type | |
4960 | clauses in related units is redundant, if one of the units is a package | |
4961 | instantiation, use its instance_spec to determine which unit is the | |
4962 | ancestor of the other. | |
4963 | ||
4964 | 2008-08-22 Javier Miranda <miranda@adacore.com> | |
4965 | ||
4966 | * exp_attr.adb (Expand_N_Attribute_Reference): In case of access | |
4967 | attributes add missing support to handle designated types that come | |
4968 | from the limited view. | |
4969 | ||
4970 | * exp_disp.adb (Expand_Interface_Conversion): Remove wrong assertion. | |
4971 | ||
4972 | 2008-08-22 Sergey Rybin <rybin@adacore.com> | |
4973 | ||
4974 | * vms_data.ads: Add entry for new gnatcheck -mNNN option | |
4975 | ||
4976 | * gnat_ugn.texi: Add description for gnatcheck option '-m' | |
4977 | ||
5d41bf55 AC |
4978 | 2008-08-22 Sergey Rybin <rybin@adacore.com> |
4979 | ||
4980 | * gnat_ugn.texi: Update the gnatcheck subsection for metric rules | |
4981 | acoording to the latest changes in the metric rule interface | |
4982 | ||
4983 | 2008-08-22 Vincent Celier <celier@adacore.com> | |
4984 | ||
4985 | * make.adb (Check.File_Not_A_Source_Of): New Boolean function | |
4986 | (Check): Check if the file names registered in the ALI file for the | |
4987 | spec, the body and each of the subunits are the ones expected. | |
4988 | ||
4989 | 2008-08-22 Robert Dewar <dewar@adacore.com> | |
4990 | ||
4991 | * g-catiio.adb: Code cleanup. | |
4992 | ||
9299a27c AC |
4993 | 2008-08-20 Vincent Celier <celier@adacore.com> |
4994 | ||
4995 | * make.adb (Gnatmake): Remove extra space in version line | |
4996 | ||
4997 | * ali.adb: | |
4998 | (Scan_ALI): Use Name_Find, not Name_Enter to get the name of a subunit, | |
4999 | as the name may already have been entered in the table by the Project | |
5000 | Manager. | |
5001 | ||
5002 | 2008-08-20 Jose Ruiz <ruiz@adacore.com> | |
5003 | ||
5004 | * errno.c (__get_errno, __set_errno for MaRTE): Transform then into | |
5005 | weak symbols so we use the version provided by MaRTE when available. | |
5006 | ||
5007 | 2008-08-20 Emmanuel Briot <briot@adacore.com> | |
5008 | ||
5009 | * g-catiio.ads, g-catiio.adb: | |
5010 | (Value): Avoid an unnecessary system call to Clock in most cases. | |
5011 | This call is only needed when only the time is provided in the string, | |
5012 | and ignored in all other cases. This is more efficient. | |
5013 | ||
5014 | 2008-08-20 Eric Botcazou <ebotcazou@adacore.com> | |
5015 | ||
5016 | * raise-gcc.c: Fix formatting nits. | |
5017 | ||
5e5dc75a RD |
5018 | 2008-08-20 Robert Dewar <dewar@adacore.com> |
5019 | ||
5020 | * sem_ch13.adb: | |
5021 | (Adjust_Record_For_Reverse_Bit_Order): Do not access First_Bit for | |
5022 | non-existing component clause. | |
5023 | ||
5024 | * exp_ch5.adb: Minor reformatting | |
5025 | ||
5026 | * g-comlin.adb: Minor reformatting | |
5027 | ||
5028 | * make.adb: Minor reformatting | |
5029 | ||
5030 | * prj-proc.adb: Minor reformatting | |
5031 | ||
5032 | * stylesw.ads: Minor reformatting | |
5033 | ||
235f4375 AC |
5034 | 2008-08-20 Vincent Celier <celier@adacore.com> |
5035 | ||
5036 | * make.adb (Gnatmake_Switch_Found): New Boolean global variable | |
5037 | (Switch_May_Be_Passed_To_The_Compiler): New Boolean global variable | |
5038 | (Add_Switches): New Boolean parameter Unknown_Switches_To_The_Compiler | |
5039 | defaulted to True. Fail when Unknown_Switches_To_The_Compiler is False | |
5040 | and a switch is not recognized by gnatmake. | |
5041 | (Gnatmake): Implement new scheme for gnatmake switches and global | |
5042 | compilation switches. | |
5043 | (Switches_Of): Try successively Switches (<file name>), | |
5044 | Switches ("Ada"), Switches (others) and Default_Switches ("Ada"). | |
5045 | ||
5046 | 2008-08-20 Ed Schonberg <schonberg@adacore.com> | |
5047 | ||
5048 | * styleg-c.ads, styleg-c.adb (Missing_Overriding): new procedure to | |
5049 | implement style check that overriding operations are explicitly marked | |
5050 | at such. | |
5051 | ||
5052 | * style.ads (Missing_Overriding): new procedure that provides interface | |
5053 | to previous one. | |
5054 | ||
5055 | * stylesw.ads, stylesw.adb: New style switch -gnatyO, to enable check | |
5056 | that the declaration or body of overriding operations carries an | |
5057 | explicit overriding indicator. | |
5058 | ||
5059 | * sem_ch8.adb | |
5060 | (Analyze_Subprogram_Renaming): if operation is overriding, check whether | |
5061 | explicit indicator should be present. | |
5062 | ||
5063 | * sem_ch6.adb (Verify_Overriding_Indicator, | |
5064 | Check_Overriding_Indicator): If operation is overriding, check whether | |
5065 | declaration and/or body of subprogram should be present | |
5066 | ||
7486d8e0 AC |
5067 | 2008-08-20 Vincent Celier <celier@adacore.com> |
5068 | ||
5069 | * prj-nmsc.adb (Check_Naming_Schemes): Accept source file names for | |
5070 | gprbuild when casing is MixedCase, whatever the casing of the letters | |
5071 | in the file name. | |
5072 | ||
5073 | 2008-08-20 Gary Dismukes <dismukes@adacore.com> | |
5074 | ||
5075 | * exp_ch3.adb (Build_Array_Init_Proc): Clarify comment related to | |
5076 | creating dummy init proc. | |
5077 | (Requires_Init_Proc): Return False in the case No_Default_Initialization | |
5078 | is in force and the type does not have associated default | |
5079 | initialization. Move test of Is_Public (with tests of restrictions | |
5080 | No_Initialize_Scalars and No_Default_Initialization) to end, past tests | |
5081 | for default initialization. | |
5082 | ||
5083 | 2008-08-20 Jerome Lambourg <lambourg@adacore.com> | |
5084 | ||
5085 | * g-comlin.adb (For_Each_Simple_Switch): Take care of switches not part | |
5086 | of any alias or prefix but having attached parameters (as \"-O2\"). | |
5087 | ||
fe5dbc2c AC |
5088 | 2008-08-20 Robert Dewar <dewar@adacore.com> |
5089 | ||
5090 | * s-fileio.adb: Minor reformatting | |
5091 | ||
5092 | 2008-08-20 Thomas Quinot <quinot@adacore.com> | |
5093 | ||
5094 | * exp_strm.adb (Build_Elementary_Input_Call, | |
5095 | Build_Elementary_Write_Call): Fix incorrect condition in circuitry that | |
5096 | selects the stream attribute routines for long float types. | |
5097 | ||
5098 | 2008-08-20 Vincent Celier <celier@adacore.com> | |
5099 | ||
5100 | * prj-proc.adb (Process_Declarative_Items): Add Location for Array_Data | |
5101 | ||
5102 | * prj.ads (Array_Data): Add a component Location | |
5103 | ||
5104 | 2008-08-20 Ed Schonberg <schonberg@adacore.com> | |
5105 | ||
5106 | * sem_prag.adb: | |
5107 | (Analyze_Pragma, case Obsolescent): Add entity information on the pragma | |
5108 | argument for ASIS and navigation use. | |
5109 | ||
5110 | 2008-08-20 Ed Schonberg <schonberg@adacore.com> | |
5111 | ||
5112 | * einfo.ads: Add comment. | |
5113 | ||
5114 | 2008-08-20 Bob Duff <duff@adacore.com> | |
5115 | ||
5116 | * sem_eval.ads: Minor comment fix. | |
5117 | ||
5118 | 2008-08-20 Bob Duff <duff@adacore.com> | |
5119 | ||
5120 | * exp_ch4.adb (Expand_N_And_Then, Expand_N_Or_Else): Improve constant | |
5121 | folding. We were folding things like "False and then ...", but not | |
5122 | "X and then ..." where X is a constant whose value is known at compile | |
5123 | time. | |
5124 | ||
5125 | 2008-08-20 Hristian Kirtchev <kirtchev@adacore.com> | |
5126 | ||
5127 | * exp_ch5.adb (Controlled_Type): New routine. | |
5128 | (Expand_N_Extended_Return_Statement): When generating a move of the | |
5129 | final list in extended return statements, check the type of the | |
5130 | function and in the case of double expanded return statements, the type | |
5131 | of the returned object. | |
5132 | (Expand_Simple_Function_Return): Perform an interface conversion when | |
5133 | the type of the returned object is an interface and the context is an | |
5134 | extended return statement. | |
5135 | ||
5136 | 2008-08-20 Ed Schonberg <schonberg@adacore.com> | |
5137 | ||
5138 | * sem_util.adb (Set_Debug_Info_Needed): If the entity is a private type | |
5139 | and the full view is visible, set flag on full view as well. | |
5140 | ||
5141 | 2008-08-20 Thomas Quinot <quinot@adacore.com> | |
5142 | ||
5143 | * g-comlin.adb: Minor reformatting | |
5144 | Minor code reorganization. | |
5145 | ||
5146 | * freeze.adb: Minor reformatting | |
5147 | ||
5148 | 2008-08-20 Vincent Celier <celier@adacore.com> | |
5149 | ||
5150 | * prj-nmsc.adb (Check_File): An excluded Ada source file may be a | |
5151 | source of another project. | |
5152 | ||
5153 | 2008-08-20 Pascal Obry <obry@adacore.com> | |
5154 | ||
5155 | * s-os_lib.ads: Minor reformatting. | |
5156 | ||
c4075a15 AC |
5157 | 2008-08-20 Arnaud Charlet <charlet@adacore.com> |
5158 | ||
5159 | * gnatvsn.ads: Minor reformatting. | |
5160 | ||
0dd8a0b1 AC |
5161 | 2008-08-20 Arnaud Charlet <charlet@adacore.com> |
5162 | ||
5163 | * a-crbtgk.adb, repinfo.adb, g-traceb.ads, repinfo.ads, | |
5164 | system-linux-s390x.ads, s-fatflt.ads, s-parame-ae653.ads, g-spipat.adb, | |
5165 | g-spipat.ads, g-tasloc.adb, g-debpoo.adb, g-except.ads, g-debpoo.ads, | |
5166 | mdll-utl.adb, g-string.adb, g-soliop-solaris.ads, par-sync.adb, | |
5167 | exp_ch6.ads, a-cihama.ads, g-curexc.ads, system-linux-sh4.ads, | |
5168 | g-utf_32.adb, g-hesorg.adb, s-proinf-irix-athread.ads, s-parint.adb, | |
5169 | s-parint.ads, exp_ch7.ads, system-linux-alpha.ads, g-dirope.adb, | |
5170 | sinfo-cn.adb, par-labl.adb, a-ciorse.adb, g-calend.adb, | |
5171 | s-parame-vms-alpha.ads, nlists.h, exp_imgv.adb, exp_fixd.ads, | |
5172 | g-calend.ads, gnatcmd.ads, g-table.adb, s-memory-mingw.adb, | |
5173 | g-alveop.ads, g-memdum.ads, g-altive.ads, initialize.c, g-regpat.adb, | |
5174 | g-busorg.ads, g-regpat.ads, g-encstr.ads, g-regexp.adb, g-regexp.ads, | |
5175 | live.ads, g-dyntab.adb, prj-nmsc.ads, par-ch12.adb, 9drpc.adb, | |
5176 | g-alvevi.ads, s-memory.adb, math_lib.adb, s-parame.ads, s-memory.ads, | |
5177 | s-regexp.adb, a-exexda.adb, i-cstrea-vms.adb, a-exexpr.adb, | |
5178 | g-soliop-mingw.ads, s-imgrea.adb, namet.adb, system-vms.ads, | |
5179 | s-inmaop-dummy.adb, s-finroo.ads, a-ngcefu.adb, s-hibaen.ads, | |
5180 | g-soliop.ads, s-auxdec.adb, g-locfil.ads, gnatxref.adb, memroot.adb, | |
5181 | osint-b.ads, memroot.ads, s-parame-hpux.ads, errutil.adb, | |
5182 | system-linux-s390.ads, par-util.adb, osint-c.ads, exp_pakd.ads, | |
5183 | i-pacdec.ads, par-endh.adb, mlib-tgt.ads, prj-strt.ads, | |
5184 | s-osprim-vms.adb, s-proinf.ads, output.ads, g-moreex.ads, | |
5185 | a-finali.ads, s-fatlfl.ads, namet.h, mdll.ads, g-dynhta.ads, | |
5186 | s-imgenu.ads, par-tchk.adb, g-excact.ads, memtrack.adb, s-fatgen.adb, | |
5187 | a-exexpr-gcc.adb, g-arrspl.adb, par-ch4.adb, g-cgideb.adb, freeze.ads, | |
5188 | g-altcon.adb, s-fatllf.ads, gnatfind.adb, s-osinte-lynxos-3.adb, | |
5189 | a-exextr.adb, g-htable.ads, a-calfor.adb, s-imgcha.adb, argv.c, | |
5190 | a-chahan.ads, g-hesora.adb, system-vms_64.ads, par-ch5.adb, g-md5.adb, | |
5191 | lib-xref.ads, g-md5.ads, g-casuti.ads, s-fatsfl.ads, exp_dbug.ads, | |
5192 | s-htable.ads, a-ngcoar.adb, s-arit64.ads, a-ngelfu.adb, a-filico.ads, | |
5193 | par-ch6.adb, s-inmaop.ads, s-parame-vxworks.ads, s-casuti.ads, | |
5194 | a-numaux-darwin.adb, a-cohama.ads, system-linux-sparc.ads, g-os_lib.adb, | |
5195 | system-vms-ia64.ads, s-parame-vms-restrict.ads, a-clrefi.ads, | |
5196 | s-parame-vms-ia64.ads, a-strfix.adb, a-coorse.adb, a-comlin.ads, | |
5197 | a-chtgke.adb, s-imgint.adb, g-expect.ads, exp_ch4.ads, s-finimp.adb, | |
5198 | mingw32.h, g-heasor.adb, g-alleve.adb, a-ngrear.adb, s-mastop-irix.adb, | |
5199 | s-poosiz.adb, link.c: Fix copyright notice. | |
5200 | ||
f4857d6e AC |
5201 | 2008-08-20 Arnaud Charlet <charlet@adacore.com> |
5202 | ||
5203 | * g-comlin.ads: Update comments. | |
5204 | ||
8b4261b3 AC |
5205 | 2008-08-20 Ed Schonberg <schonberg@adacore.com> |
5206 | ||
5207 | * sem_ch8.adb (Analyze_Subprogram_Renaming): Inherit Is_Imported flag. | |
5208 | ||
5209 | 2008-08-20 Gary Dismukes <dismukes@adacore.com> | |
5210 | ||
5211 | * exp_ch11.adb: | |
5212 | (Expand_Exception_Handlers): Call Make_Exception_Handler instead of | |
5213 | Make_Implicit_Exception_Handler when rewriting an exception handler with | |
5214 | a choice parameter, and pass the handler's Sloc instead of that of the | |
5215 | handled sequence of statements. Make_Implicit_Exception_Handler sets the | |
5216 | Sloc to No_Location (unless debugging generated code), which we don't | |
5217 | want for the case of a user handler. | |
5218 | ||
c6084ae0 AC |
5219 | 2008-08-20 Robert Dewar <dewar@adacore.com> |
5220 | ||
5221 | * freeze.adb (Freeze_Record_Type): Improve msg for non-contiguous field | |
9e81dbc7 | 5222 | |
c6084ae0 AC |
5223 | * sem_ch13.adb: |
5224 | (Adjust_Record_For_Reverse_Bit_Order): Messages about layout are | |
5225 | now labeled as info msgs, not warnings. | |
5226 | ||
5227 | * tbuild.ads: Clarify documentation of Make_Implicit_Exception_Handler | |
5228 | ||
5229 | * usage.adb: Minor change to avoid overlong line for -gnatwz/Z | |
5230 | ||
5231 | * a-textio.adb: Remove redundant test. | |
5232 | ||
5233 | * a-witeio.adb: Minor code reorganization | |
5234 | Remove redundant test found working on another issue | |
5235 | ||
5236 | * a-ztexio.adb: Minor code reorganization | |
5237 | Remove redundant test found working on another issue | |
5238 | ||
5239 | 2008-08-20 Thomas Quinot <quinot@adacore.com> | |
5240 | ||
5241 | * s-fileio.adb (Open) Use C helper function to determine whether a | |
5242 | given errno value corresponds to a "file not found" error. | |
5243 | ||
5244 | * sysdep.c (__gnat_is_file_not_found_error): New C helper function. | |
5245 | ||
5246 | 2008-08-20 Jose Ruiz <ruiz@adacore.com> | |
5247 | ||
5248 | * errno.c (__get_errno for MaRTE): Use the MaRTE function pthread_errno | |
5249 | to get access to the per-task errno variable. | |
5250 | (__set_errno for MaRTE): Do not redefine this function here since it is | |
5251 | already defined in MaRTE. | |
5252 | ||
5253 | 2008-08-20 Tristan Gingold <gingold@adacore.com> | |
5254 | ||
5255 | * gnat_ugn.texi: Gcov is not supported on static library on AIX. | |
5256 | ||
6e7f835f AC |
5257 | 2008-08-20 Robert Dewar <dewar@adacore.com> |
5258 | ||
5259 | * freeze.adb: Minor reformatting | |
5260 | ||
5261 | * g-comlin.adb: Minor reformatting | |
5262 | ||
5263 | * g-socket.adb: Minor reformatting | |
5264 | ||
5265 | * g-socthi-mingw.adb: Minor reformatting | |
5266 | ||
5267 | * g-stheme.adb: Minor reformatting | |
5268 | ||
2af92e28 ES |
5269 | 2008-08-20 Ed Schonberg <schonberg@adacore.com> |
5270 | ||
5271 | * sem_aggr.adb, sem_type.adb, exp_ch9.ads, einfo.ads, | |
5272 | exp_ch6.adb, exp_aggr.adb (Valid_Ancestor): Resolve | |
5273 | confusion between partial and full views of an ancestor of the context | |
5274 | type when the parent is a private extension declared in a parent unit, | |
5275 | and full views are available for the context type. | |
5276 | ||
79a14178 | 5277 | 2008-08-18 Samuel Tardieu <sam@rfc1149.net> |
9e81dbc7 | 5278 | Robert Dewar <dewar@adacore.com> |
79a14178 ST |
5279 | |
5280 | PR ada/30827 | |
5281 | * bindgen.adb (Gen_Output_File_Ada): Zero-terminate the | |
5282 | version string. | |
5283 | Move comment in the right place. | |
5284 | * g-comver.adb (Version): Look for a zero-termination in | |
5285 | addition to a closing parenthesis. | |
5286 | ||
b9b2405f ST |
5287 | 2008-08-18 Samuel Tardieu <sam@rfc1149.net> |
5288 | ||
5289 | * exp_ch13.adb, exp_disp.adb, sem_cat.adb, sem_ch10.adb, | |
5290 | * sem_ch12.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, | |
5291 | * sem_prag.adb, sem_util.adb, sem_warn.adb: Use | |
5292 | Is_Package_Or_Generic_Package instead of hand-crafted tests. | |
5293 | ||
51c16e29 ST |
5294 | 2008-08-18 Samuel Tardieu <sam@rfc1149.net> |
5295 | ||
5296 | PR ada/15808 | |
5297 | * sem_ch6.adb (Check_Private_Overriding): Check for generic packages | |
5298 | as well. | |
5299 | ||
c8bbc9ef AL |
5300 | 2008-08-17 Aaron W. LaFramboise <aaronavay62@aaronwl.com> |
5301 | ||
5302 | * adaint.c (_gnat_set_close_on_exec) [_WIN32]: Implement. | |
5303 | ||
e650b83a EB |
5304 | 2008-08-16 Eric Botcazou <ebotcazou@adacore.com> |
5305 | ||
5306 | * gcc-interface/trans.c (call_to_gnu): Use the Sloc of the call | |
5307 | for back-copy statements in lieu of that of the actual. | |
5308 | ||
b38f3813 EB |
5309 | 2008-08-16 Eric Botcazou <ebotcazou@adacore.com> |
5310 | ||
5311 | PR ada/20548 | |
5312 | * gcc-interface/decl.c (gnat_to_gnu_entity): Use DECL_SIZE_UNIT in the | |
12f89f6c | 5313 | setjmp test consistently. Adjust for new behavior of flag_stack_check. |
b38f3813 | 5314 | * gcc-interface/utils2.c (build_call_alloc_dealloc): Remove redundant |
12f89f6c | 5315 | test of flag_stack_check. Adjust for new behavior of flag_stack_check. |
b38f3813 | 5316 | |
2d14501c ST |
5317 | 2008-08-13 Samuel Tardieu <sam@rfc1149.net> |
5318 | ||
5319 | PR ada/36777 | |
5320 | * sem_util.ads, sem_util.adb (Is_Protected_Self_Reference): New. | |
5321 | * sem_attr.adb (Check_Type): The current instance of a protected | |
5322 | object is not a type name. | |
5323 | (Analyze_Access_Attribute): Accept instances of protected objects. | |
5324 | (Analyze_Attribute, Attribute_Address clause): Ditto. | |
5325 | * exp_attr.adb (Expand_N_Attribute_Reference): Rewrite | |
5326 | the prefix as being the current instance if needed. | |
5327 | ||
62641193 DS |
5328 | 2008-08-12 Danny Smith <danyssmith@users.sourceforge.net> |
5329 | ||
0490fbb8 EB |
5330 | * gcc-interface/Makefile.in (EXTRA_GNATRTL_NONTASKING_OBJS) [WINDOWS]: |
5331 | Remove duplicate s-win32.o. Add s-winext.o. | |
62641193 | 5332 | |
2a04ce75 DS |
5333 | 2008-08-12 Danny Smith <danyssmith@users.sourceforge.net> |
5334 | ||
5335 | * g-stsifd-sockets.adb (Create): Replace Constants.SOCK_STREAM | |
5336 | with SOSC.SOCK__STREAM. | |
5337 | * g-socthi-mingw.adb (C_Select) Replace Constants.MSG_OOB with | |
5338 | SOSC.MSG_OOB. | |
5339 | ||
269b85b7 JS |
5340 | 2008-08-11 Joel Sherrill <joel.sherrill@oarcorp.com> |
5341 | ||
5342 | * s-oscons-tmplt.c: RTEMS defines AF_INET6 but does support it. | |
5343 | * gsocket.h, socket.c: Update to support RTEMS. | |
5344 | * gcc-interface/Make-lang.in: Include CFLAGS_FOR_TARGET when cross. | |
5345 | ||
abcbd24c | 5346 | 2008-08-10 Samuel Tardieu <sam@rfc1149.net> |
9e81dbc7 | 5347 | Robert Dewar <dewar@adacore.com> |
abcbd24c ST |
5348 | |
5349 | * exp_ch4.adb (Expand_N_Op_Expon): Force evaluation of | |
5350 | left argument even when right argument is 0. | |
5351 | (Expand_N_Op_Mod): Ditto when right argument is 1. | |
5352 | (Expand_N_Op_Multiply): Ditto when any argument is 0. | |
5353 | (Expand_N_Op_Rem): Ditto when right argument is 1. | |
5354 | ||
98e48a7f MLI |
5355 | 2008-08-09 Manuel Lopez-Ibanez <manu@gcc.gnu.org> |
5356 | ||
5357 | * gcc-interface/misc.c (gnat_handle_option): Replace set_Wunused | |
5358 | by warn_unused. | |
9e81dbc7 | 5359 | |
70d904ca ES |
5360 | 2008-08-08 Ed Schonberg <schonberg@adacore.com> |
5361 | ||
5362 | * freeze.adb (Generate_Prim_Op_References): New procedure, abstracted | |
5363 | from Freeze_Entity. Used to generate cross-reference information for | |
5364 | types declared in generic packages. | |
5365 | ||
cfb53555 TQ |
5366 | 2008-08-08 Thomas Quinot <quinot@adacore.com> |
5367 | ||
5368 | * gcc-interface/Makefile.in: Reintroduce g-soccon.ads as a | |
5369 | compatibility shim. | |
5370 | ||
a3ea9137 AC |
5371 | 2008-08-08 Thomas Quinot <quinot@adacore.com> |
5372 | ||
5373 | * gsocket.h: | |
5374 | On Windows, include <errno.h> and redefine only selected errno values | |
5375 | from their <winsock2.h> definitions. | |
5376 | ||
5377 | * s-osinte-freebsd.ads: Minor reformatting | |
5378 | ||
5379 | * s-osinte-hpux.ads, s-osinte-irix.ads: Minor reformatting | |
5380 | ||
5381 | * g-soccon.ads: New file. | |
5382 | ||
5383 | * g-stheme.adb, g-socthi-vms.adb, g-socthi-vxworks.adb, | |
5384 | g-socthi-mingw.adb, g-sttsne-vxworks.adb, g-socthi.adb, | |
5385 | g-stsifd-sockets.adb, g-socket.adb, g-socket.ads, | |
5386 | g-sothco.adb, g-sothco.ads: Add back GNAT.Sockets.Constants as a child | |
5387 | unit, to allow building software that depends on this internal unit | |
5388 | with both older and newer compilers. | |
5389 | ||
5390 | 2008-08-08 Robert Dewar <dewar@adacore.com> | |
5391 | ||
5392 | * s-strxdr.adb: Minor reformatting | |
5393 | ||
5394 | 2008-08-08 Bob Duff <duff@adacore.com> | |
5395 | ||
5396 | * gnat_ugn.texi: The "Run-Time Checks" section said "arithmetic overflow | |
5397 | checking for integer operations (including division by zero)", which | |
5398 | is wrong -- divide by zero is not part of overflow checking. | |
5399 | Also added misc clarification about what check-suppression means. | |
5400 | ||
5401 | * gnat_rm.texi: Clarify the meaning of pragma Suppress. | |
5402 | ||
5403 | 2008-08-08 Jerome Lambourg <lambourg@adacore.com> | |
5404 | ||
5405 | * g-comlin.adb (Add_Switch): Handle addition of switches at the | |
5406 | begining of the command line. | |
5407 | (Append, Add): Renaming of Append to Add as this now allows addition | |
5408 | at the begining of the list. | |
9e81dbc7 | 5409 | |
a3ea9137 AC |
5410 | * g-comlin.ads (Add_Switch): Handle addition of switches at the |
5411 | begining of the command line. | |
5412 | ||
5413 | 2008-08-08 Thomas Quinot <quinot@adacore.com> | |
5414 | ||
5415 | * g-sercom.ads: | |
5416 | (Name): Document application scope (only legacy PC serial ports on | |
5417 | Linux and Windows). | |
5418 | ||
15d2e2d4 TQ |
5419 | 2008-08-08 Thomas Quinot <quinot@adacore.com> |
5420 | ||
5421 | * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Revert | |
5422 | previous change, not needed after all. | |
5423 | ||
51e4c4b9 AC |
5424 | 2008-08-08 Ed Schonberg <schonberg@adacore.com> |
5425 | ||
5426 | * exp_ch4.adb (Expand_Allocator_Expression): add check if null | |
5427 | exclusion indicator is present | |
5428 | ||
5429 | 2008-08-08 Robert Dewar <dewar@adacore.com> | |
5430 | ||
5431 | * g-comlin.adb: Minor code reorganization | |
5432 | Minor reformatting | |
5433 | ||
5434 | * g-comlin.ads: Minor reformatting | |
5435 | ||
5436 | * s-fileio.adb: Minor reformatting | |
5437 | ||
5438 | * sem_attr.adb: Minor code reorganization (use Nkind_In) | |
5439 | Minor reformatting | |
5440 | ||
6f371a2e ST |
5441 | 2008-08-06 Samuel Tardieu <sam@rfc1149.net> |
5442 | ||
5443 | * gcc-interface/Make-lang.in: Use GCC_FOR_TARGET when dealing | |
5444 | with s-oscons-tmplt.i. | |
5445 | ||
6a69bcf4 ST |
5446 | 2008-08-06 Samuel Tardieu <sam@rfc1149.net> |
5447 | ||
5448 | * gcc-interface/Make-lang.in (OSCONS_CPPFLAGS): Remove. | |
5449 | ||
ef9e1eff AC |
5450 | 2008-08-06 Ed Schonberg <schonberg@adacore.com> |
5451 | ||
5452 | * sem_ch3.adb (Analyze_Component_Declaration): Protect against misuse | |
5453 | of incomplete type. | |
5454 | ||
5455 | * sem_ch8.adb (Analyze_Object_Renaming): Diagnose properly a renaming | |
5456 | of a formal parameter of an incomplete type. Improve error message for | |
5457 | other improper uses of incomplete types. | |
5458 | ||
5459 | 2008-08-06 Robert Dewar <dewar@adacore.com> | |
5460 | ||
5461 | * gnat_ugn.texi: Clarify -gnato documentation | |
5462 | ||
5463 | 2008-08-06 Thomas Quinot <quinot@adacore.com> | |
5464 | ||
5465 | * gcc-interface/Makefile.in, | |
5466 | g-socthi-vxworks.adb, g-socthi-mingw.adb, g-sttsne-vxworks.adb, | |
5467 | g-socthi.adb, g-socket.adb, g-socket.ads, g-sothco.ads, | |
5468 | g-soccon-linux-x86.ads, g-soccon-vxworks.ads, g-soccon-mingw.ads, | |
5469 | g-soccon-hpux-ia64.ads, g-soccon-irix.ads, g-soccon-linux-64.ads, | |
5470 | g-soccon-aix.ads, g-soccon-solaris.ads, g-soccon-lynxos.ads, | |
5471 | g-soccon-vms.ads, g-soccon.ads, g-soccon-freebsd.ads, | |
5472 | g-soccon-linux-ppc.ads, g-soccon-tru64.ads, g-soccon-hpux.ads, | |
5473 | g-soccon-solaris-64.ads, gen-oscons.c, g-soccon-darwin.ads, | |
5474 | g-soccon-mingw-64.ads, g-soccon-linux-mips.ads, g-soccon-rtems.ads: | |
5475 | Remove GNAT.Sockets.Constants. This internal package is replaced by | |
5476 | System.OS_Constants. | |
5477 | ||
e93d146b TQ |
5478 | 2008-08-06 Thomas Quinot <quinot@adacore.com> |
5479 | ||
5480 | * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: | |
5481 | Remove obsolete targets referencing gen-soccon | |
5482 | When generating s-oscons.ads, use a file name that includes the | |
5483 | THREAD_KIND, to ensure that the (potentially different) version from a | |
5484 | previous build with a different threads flavour does not get reused. | |
5485 | ||
c6aecf3b AC |
5486 | 2008-08-06 Thomas Quinot <quinot@adacore.com> |
5487 | ||
5488 | * sem_res.adb: Minor reformatting | |
5489 | ||
5490 | * s-fileio.adb (Open): When file open operation fails, raise Name_Error | |
5491 | only when the operating system reports a non-existing file or directory | |
5492 | (ENOENT), otherwise raise Name_Error. | |
5493 | ||
5494 | * exp_ch11.adb: Minor reformatting | |
5495 | ||
5496 | 2008-08-06 Ed Schonberg <schonberg@adacore.com> | |
5497 | ||
5498 | * sem_ch3.adb (Access_Subprogram_Declaration): If the return type is | |
5499 | incomplete, add the access_to_subprogram type to the list of private | |
5500 | dependents only if the incomplete type will be completed in the current | |
5501 | scope. | |
5502 | (Build_Discriminant_Constraints): If the type of the discriminant is | |
5503 | access_to_variable, reject a constraint that is access_to_constant. | |
5504 | ||
6594c0f3 AC |
5505 | 2008-08-06 Thomas Quinot <quinot@adacore.com> |
5506 | ||
5507 | * g-socket-dummy.adb, g-socket-dummy.ads, g-sothco-dummy.adb, | |
5508 | g-sothco-dummy.ads, g-socthi-dummy.adb, g-socthi-dummy.ads, | |
5509 | g-sttsne-dummy.ads: New files. | |
5510 | ||
5511 | * gcc-interface/Makefile.in, Makefile.rtl: Use placeholder sources | |
5512 | with pragma Unimplemented_Unit for sockets packages on Nucleus. | |
5513 | ||
5514 | 2008-08-06 Pascal Obry <obry@adacore.com> | |
5515 | ||
5516 | * adaint.c: Another fix for ACL support on Windows. | |
5517 | ||
5518 | 2008-08-06 Javier Miranda <miranda@adacore.com> | |
5519 | ||
5520 | * exp_disp (Expand_Interface_Actuals): Adds missing support for | |
5521 | expansion of calls to subprograms using selected components. | |
5522 | ||
5523 | 2008-08-06 Ed Schonberg <schonberg@adacore.com> | |
5524 | ||
5525 | * sem_res.adb (Resolve_Call): Use base type to determine whether a | |
5526 | dereference is needed because a subtype of an access_to_subprogram is | |
5527 | simply an access-subtype | |
5528 | ||
5529 | 2008-08-06 Jerome Lambourg <lambourg@adacore.com> | |
5530 | ||
5531 | * g-comlin.adb (Set_Command_Line): Now that aliases can contain | |
5532 | parameters, always specify the expected separator. | |
5533 | ||
f9325b03 AC |
5534 | 2008-08-06 Thomas Quinot <quinot@adacore.com> |
5535 | ||
5536 | * xnmake.adb: Use new XUtil package for platform independent text | |
5537 | output. | |
5538 | ||
5539 | 2008-08-06 Vincent Celier <celier@adacore.com> | |
5540 | ||
5541 | * gnat_ugn.texi: Document compiler switch -gnateG | |
5542 | ||
5543 | 2008-08-06 Quentin Ochem <ochem@adacore.com> | |
5544 | ||
5545 | * s-stausa.adb (Fill_Stack): Fixed pragma assert and top pattern mark | |
5546 | in the case of an empty pattern size. | |
5547 | (Compute_Result): Do not do any computation in the case of an empty | |
5548 | pattern size. | |
5549 | (Report_Result): Fixed computation of the overflow guard. | |
5550 | ||
5551 | 2008-08-06 Ed Schonberg <schonberg@adacore.com> | |
5552 | ||
5553 | * g-awk.adb (Finalize): Do not use directly objects of the type in the | |
5554 | finalization routine to prevent elaboration order anomalies in new | |
5555 | finalization scheme. | |
5556 | ||
5557 | 2008-08-06 Ed Schonberg <schonberg@adacore.com> | |
5558 | ||
5559 | * sem_ch3.adb (Find_Type_Name): protect against duplicate incomplete | |
5560 | declaration for the same type. | |
5561 | ||
5562 | 2008-08-06 Thomas Quinot <quinot@adacore.com> | |
5563 | ||
5564 | * sem.adb: Minor rewording (comment) | |
5565 | ||
5566 | 2008-08-06 Jerome Lambourg <lambourg@adacore.com> | |
5567 | ||
5568 | * g-comlin.adb (Define_Switch, Get_Switches): New. | |
5569 | (Can_Have_Parameter, Require_Parameter, Actual_Switch): New, used when | |
5570 | ungrouping switches. | |
5571 | (For_Each_Simple_Switch): Allow more control over parameters handling. | |
5572 | This generic method now allows ungrouping of switches with parameters | |
5573 | and switches with more than one letter after the prefix. | |
5574 | (Set_Command_Line): Take care of switches that are prefixed with a | |
5575 | switch handling parameters without delimiter (-gnatya and -gnaty3 for | |
5576 | example). | |
5577 | (Add_Switch, Remove_Switch): Handle parameters possibly present inside | |
5578 | a group, as in gnaty3aM80 (3 and 80 are parameters). Report status of | |
5579 | the operation. | |
5580 | (Start, Alias_Switches, Group_Switches): Take care of parameters | |
5581 | possibly present inside a group. | |
5582 | ||
5583 | * g-comlin.ads (Define_Switch): New method used to define a list of | |
5584 | expected switches, that are necessary for correctly ungrouping switches | |
5585 | with more that one character after the prefix. | |
5586 | (Get_Switches): Method that builds a getopt string from the list of | |
5587 | switches as set previously by Define_Switch. | |
5588 | (Add_Switch, Remove_Switch): New versions of the methods, reporting the | |
5589 | status of the operation. Also allow the removal of switches with | |
5590 | parameters only. | |
5591 | (Command_Line_Configuration_Record): Maintain a list of expected | |
5592 | switches. | |
5593 | ||
f0a631aa DR |
5594 | 2008-08-06 Doug Rupp <rupp@adacore.com> |
5595 | ||
5596 | * gcc-interface/decl.c (gnat_to_gnu_param): Force 32bit descriptor if | |
5597 | TARGET_MALLOC64 clear. | |
5598 | ||
5599 | * gcc-interface/utils2.c (build_call_alloc_dealloc): Force 32bit malloc | |
5600 | if TARGET_MALLOC64 clear. | |
5601 | ||
5602 | * gcc-interface/gigi.h (TARGET_ABI_OPEN_VMS): Move here from utils2.c | |
5603 | (TARGET_MALLC64): New macro. Default to clear. | |
5604 | ||
31fcb30f DR |
5605 | 2008-08-06 Doug Rupp <rupp@adacore.com> |
5606 | ||
5607 | * gcc-interface/utils2.c (snames.h) Include | |
5608 | (TARGET_ABI_OPEN_VMS): Initialize. | |
5609 | (build_call_alloc_dealloc); [TARGET_ABI_OPEN_VMS] Allocate on 32bit heap | |
5610 | for Convention C. | |
5611 | ||
ea08fcdc AC |
5612 | 2008-08-06 Ed Schonberg <schonberg@adacore.com> |
5613 | ||
5614 | * sem_ch3.adb (Process_Discriminants): diagnose redundant or improper | |
5615 | null exclusion in a discriminant declaration | |
5616 | ||
5617 | * sem_ch8.adb (Analyze_Object_Renaming): diagnose null exclusion | |
5618 | indicators when type is not an access type. | |
5619 | ||
5620 | * sem_ch12.adb (Formal_Object_Declaration): diagnose null exclusion | |
5621 | indicators when type is not an access type. | |
5622 | ||
5623 | 2008-08-06 Javier Miranda <miranda@adacore.com> | |
5624 | ||
5625 | * exp_disp (Expand_Interface_Conversion): Freeze the entity associated | |
5626 | with the target interface before expanding the code of the interface | |
5627 | conversion. | |
5628 | ||
aecf0203 AC |
5629 | 2008-08-05 Ed Schonberg <schonberg@adacore.com> |
5630 | ||
5631 | * freeze.adb: | |
5632 | (Freeze_Entity): A deferred constant does not violate the restriction | |
9e81dbc7 | 5633 | No_Default_Initialization, |
aecf0203 AC |
5634 | |
5635 | * sem_ch3.adb (Process_Subtype): An allocator is a valid construct that | |
5636 | can carry a null exclusion indicator, and on which an error may be | |
5637 | posted if the indicator is redundant. | |
5638 | ||
5639 | * sem_ch8.adb (Analyze_Object_Renaming): Verify that a null exclusion | |
5640 | does not apply to a subtype mark that already excludes null. | |
5641 | ||
5642 | * sem_ch12.adb (Formal_Object_Declaration): Verify that a null | |
5643 | exclusion does not apply to a subtype mark that already excludes null. | |
5644 | ||
5645 | 2008-08-05 Thomas Quinot <quinot@adacore.com> | |
5646 | ||
5647 | * Makefile.rtl: Compile s-oscons.ads as part of the runtime library. | |
5648 | ||
5649 | 2008-08-05 Doug Rupp <rupp@adacore.com> | |
5650 | ||
5651 | * vms_data.ads: Translation for /POINTER_SIZE qualifier. | |
5652 | ||
434d3cf1 AC |
5653 | 2008-08-05 Thomas Quinot <quinot@adacore.com> |
5654 | ||
5655 | * gsocket.h: Make this file includable in a Nucleus environment, which | |
5656 | does not support sockets. | |
5657 | ||
5658 | * socket.c: Remove Nucleus-specific hack. | |
5659 | ||
5660 | 2008-08-05 Pascal Obry <obry@adacore.com> | |
5661 | ||
5662 | * adaint.c: Remove support for readable attribute on vxworks and nucleus | |
5663 | ||
5664 | 2008-08-05 Ed Schonberg <schonberg@adacore.com> | |
5665 | ||
5666 | * sem_attr.adb: | |
5667 | (Analyze_Attribute, case 'Result): handle properly the case where some | |
5668 | operand of the expression in a post-condition generates a transient | |
5669 | block. | |
5670 | ||
5671 | * sem_ch5.adb (Analyze_Assignment_Statement): Apply conversion to | |
5672 | right-hand side when it is an anonymous access_to_subprogram, to force | |
5673 | static accessibility check when needed. | |
5674 | ||
49331b42 AC |
5675 | 2008-08-05 Sergey Rybin <rybin@adacore.com> |
5676 | ||
5677 | * gnat_ugn.texi: Changing the description of the gnatcheck metrics | |
5678 | rule according to the change in the rule option. | |
5679 | Add documentation for -gnatw.b/-gnatw.B | |
5680 | ||
5681 | 2008-08-05 Robert Dewar <dewar@adacore.com> | |
5682 | ||
5683 | * ug_words: Add entries for -gnatw.b/-gnatw.B | |
5684 | ||
5685 | * vms_data.ads: Add entries for -gnatw.b/-gnatw.B | |
5686 | ||
21f560ba VC |
5687 | 2008-08-05 Vincent Celier <celier@adacore.com> |
5688 | ||
5689 | * a-wtdeio.adb (Put (Current_Output)): Use Fore in the call to Put | |
5690 | (File). | |
9e81dbc7 | 5691 | |
21f560ba VC |
5692 | * a-ztdeio.adb: Ditto. |
5693 | ||
43540ec6 AC |
5694 | 2008-08-05 Pascal Obry <obry@adacore.com> |
5695 | ||
5696 | * adaint.c, adaint.h, s-os_lib.adb, s-os_lib.ads: Add support for the | |
5697 | readable attribute. | |
5698 | ||
5699 | 2008-08-05 Vincent Celier <celier@adacore.com> | |
5700 | ||
5701 | * s-wchwts.adb: | |
5702 | (Wide_String_To_String): Returns a String with the same 'First as its | |
5703 | parameter S. | |
5704 | (Wide_Wide_String_To_String): Ditto | |
9e81dbc7 | 5705 | |
43540ec6 AC |
5706 | * s-wchwts.ads: |
5707 | (Wide_String_To_String): Document that the lowest index of the returned | |
5708 | String is equal to S'First. | |
5709 | ||
2d4d7e29 TQ |
5710 | 2008-08-05 Thomas Quinot <quinot@adacore.com> |
5711 | ||
5712 | * xoscons.adb, xutil.ads, xutil.adb, s-oscons-tmplt.c: New files. | |
5713 | ||
5714 | * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Generate | |
5715 | s-oscons.ads | |
5716 | ||
4ae23b62 AC |
5717 | 2008-08-05 Robert Dewar <dewar@adacore.com> |
5718 | ||
5719 | * opt.ads (Warn_On_Biased_Representation): New flag | |
9e81dbc7 | 5720 | |
4ae23b62 AC |
5721 | * sem_ch13.adb: |
5722 | (Analyze_Attribute_Definition_Clause): Issue warning when biased | |
5723 | representation is required. | |
5724 | (Minimum_Size): Don't allow biasing if enum rep clause case | |
9e81dbc7 | 5725 | |
4ae23b62 AC |
5726 | * sem_warn.adb: |
5727 | (Set_Dot_Warning_Switch): Add handling of -gnatw.b/B switches | |
5728 | (Set_Warning_Switch): Include -gnatw.b in -gnatwa, -gnatw.B in gnatws | |
9e81dbc7 | 5729 | |
4ae23b62 AC |
5730 | * usage.adb: Add lines for -gnatw.b/B switches |
5731 | ||
5732 | 2008-08-05 Pascal Obry <obry@adacore.com> | |
5733 | ||
5734 | * a-coinve.adb: Reorder the code to avoid uninitialized warning. | |
5735 | ||
5736 | * adaint.c: In UNIX cases do not call __gnat_stat but stat directly. | |
5737 | ||
5738 | 2008-08-05 Thomas Quinot <quinot@adacore.com> | |
5739 | ||
5740 | * socket.c: Minor reformatting. | |
5741 | ||
ba3fa650 AC |
5742 | 2008-08-05 Robert Dewar <dewar@adacore.com> |
5743 | ||
5744 | * sem_ch3.adb: Minor reformatting | |
5745 | ||
5746 | * prj-nmsc.adb: Minor reformatting | |
5747 | ||
5748 | 2008-08-05 Ed Schonberg <schonberg@adacore.com> | |
5749 | ||
5750 | * sem_ch12.adb (Validate_Array_Type_Instance): Only apply complex | |
5751 | visibility check on the component type if the simple test fails. | |
5752 | ||
c775e4a1 AC |
5753 | 2008-08-05 Jose Ruiz <ruiz@adacore.com> |
5754 | ||
5755 | * init.c (__gnat_install_handler for linux): If we are building the | |
5756 | Xenomai run time then we need to do two additional things: avoid | |
5757 | memory swapping and transform the Linux environment task into a native | |
5758 | Xenomai task. | |
5759 | ||
5760 | * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for xenomai run | |
5761 | time): Use interface to Xenomai native skin and avoid linux-specific | |
5762 | way of setting CPU affinity. | |
5763 | (EH_MECHANISM for the xenomai run time): Use sjlj exception mechanism. | |
5764 | ||
5765 | 2008-08-05 Bob Duff <duff@adacore.com> | |
5766 | ||
5767 | * checks.ads: Minor comment fix | |
5768 | ||
5769 | 2008-08-05 Thomas Quinot <quinot@adacore.com> | |
5770 | ||
5771 | * g-sercom.adb, g-sercom.ads, g-sercom-mingw.adb, | |
5772 | g-sercom-linux.adb (Data_Bits): Change literals B7 and B8 to CS7 and | |
5773 | CS8. | |
5774 | ||
5775 | 2008-08-05 Robert Dewar <dewar@adacore.com> | |
5776 | ||
5777 | * mlib.adb: Minor code reorganization | |
5778 | Minor reformatting | |
5779 | ||
5780 | * make.adb: Minor reformatting | |
5781 | ||
5782 | * prj-attr.ads: Minor reformatting | |
5783 | ||
5784 | * s-os_lib.adb: Minor reformatting | |
5785 | ||
5786 | * s-fileio.adb: Minor code reorganization | |
5787 | Minor reformatting | |
5788 | ||
5789 | * prj.ads: Minor reformatting | |
5790 | ||
5791 | 2008-08-05 Bob Duff <duff@adacore.com> | |
5792 | ||
5793 | * sem_ch3.adb (Analyze_Object_Declaration): Avoid type Any_Access in | |
5794 | unresolved initial value of "null", because it causes implicitly | |
5795 | generated "=" operators to be ambiguous, and because this type should | |
5796 | not be passed to gigi. | |
5797 | ||
0df218a9 AC |
5798 | 2008-08-05 Vincent Celier <celier@adacore.com> |
5799 | ||
5800 | * mlib.adb: Update comments. | |
5801 | ||
5802 | * make.adb (Switches_Of): Check for Switches (others), before checking | |
5803 | for Default_Switches ("Ada"). | |
5804 | (Gnatmake): Use Builder'Switches (others) in preference to | |
5805 | Builder'Default_Switches ("Ada") if there are several mains. | |
5806 | ||
5807 | * prj-attr-pm.adb: | |
5808 | (Add_Attribute): Add component Others_Allowed in Attribute_Record | |
5809 | aggregate. | |
5810 | ||
5811 | * prj-attr.adb: | |
5812 | Add markers to indicates that attributes Switches allow others as index | |
5813 | (Others_Allowed_For): New Boolean function, returning True for | |
5814 | attributes with the mark. | |
5815 | (Initialize): Recognize optional letter 'O' as the marker for | |
5816 | associative array attributes where others is allowed as the index. | |
5817 | ||
5818 | * prj-attr.ads: | |
5819 | (Others_Allowed_For): New Boolean function | |
5820 | (Attribute_Record): New Boolean component Others_Allowed | |
9e81dbc7 | 5821 | |
0df218a9 AC |
5822 | * prj-dect.adb: |
5823 | (Parse_Attribute_Declaration): For associative array attribute where | |
5824 | others is allowed as the index, allow others as an index. | |
5825 | ||
5826 | * prj-nmsc.adb: | |
5827 | (Process_Binder): Skip associative array attributes with index others | |
5828 | (Process_Compiler): Ditto | |
5829 | ||
5830 | * prj-util.adb: | |
5831 | (Value_Of (Index, In_Array)): Make no attempt to put in lower case when | |
5832 | index is All_Other_Names. | |
5833 | ||
5834 | * prj.ads: | |
5835 | (All_Other_Names): New constant | |
5836 | ||
5837 | * prj-proc.adb: | |
5838 | (Process_Declarative_Items): Skip associative array attribute when index | |
5839 | is reserved word "others". | |
5840 | ||
5841 | 2008-08-05 Vasiliy Fofanov <fofanov@adacore.com> | |
5842 | ||
5843 | * gen-oscons.c: Adapt for VMS where termios.h is not available. | |
5844 | ||
c7d920ad TQ |
5845 | 2008-08-05 Thomas Quinot <quinot@adacore.com> |
5846 | ||
5847 | * a-rttiev.adb: Minor reformatting (comments) | |
5848 | ||
5849 | * gen-soccon.c: Rename to gen-oscons.c | |
5850 | ||
5851 | * gen-oscons.c: New file. Now generate System.OS_Constants instead of | |
5852 | GNAT.Sockets.Constants. | |
5853 | Add new constants for GNAT.Serial_Communications and System.File_IO. | |
5854 | ||
8b79ad42 AC |
5855 | 2008-08-05 Javier Miranda <miranda@adacore.com> |
5856 | ||
5857 | * sem_util.adb (Collect_Interfaces_Info): Minor reformating. | |
5858 | * exp_ch3.adb (Build_Offset_To_Top_Functions): Code cleanup: the | |
5859 | implementation of this routine has been simplified. | |
5860 | ||
5861 | 2008-08-05 Pascal Obry <obry@adacore.com> | |
5862 | ||
5863 | * adaint.c, adaint.h, s-os_lib.adb, s-os_lib.ads: Fix the | |
5864 | Set_Read_Only Win32 implementation. | |
5865 | ||
99e81db6 TQ |
5866 | 2008-08-05 Thomas Quinot <quinot@adacore.com> |
5867 | ||
5868 | * exp_strm.adb: Minor reformatting (comments) | |
5869 | ||
5870 | * sem_ch12.adb: Minor reformatting. | |
5871 | ||
dce86910 AC |
5872 | 2008-08-05 Robert Dewar <dewar@adacore.com> |
5873 | ||
5874 | * sem_ch3.adb: Minor reformatting | |
5875 | ||
5876 | * checks.adb: Minor reformatting | |
5877 | ||
5878 | 2008-08-05 Thomas Quinot <quinot@adacore.com> | |
5879 | ||
5880 | * tbuild.ads (New_External_Name): Update spec to reflect relaxed | |
5881 | restriction on Prefix. | |
5882 | ||
5883 | 2008-08-05 Jerome Lambourg <lambourg@adacore.com> | |
5884 | ||
5885 | * g-comlin.adb (Sort_Sections, Group_Switches): New/Modified internal | |
5886 | methods needed to handle switch sections when building a command line. | |
5887 | (Define_Section, Add_Switch, Remove_Switch, Is_New_Section, | |
5888 | Current_Section): New public methods or methods modified to handle | |
5889 | building command lines with sections. | |
5890 | (Set_Command_Line): Take into account sections when analysing a switch | |
5891 | string. | |
5892 | (Start): Sort the switches by sections before iterating the command line | |
5893 | elements. | |
9e81dbc7 | 5894 | |
dce86910 AC |
5895 | * g-comlin.ads (Define_Section, Add_Switch, Remove_Switch, |
5896 | Is_New_Section, Current_Section): New methods or methods modified to | |
5897 | handle building command lines with sections. | |
5898 | ||
5899 | 2008-08-05 Ed Schonberg <schonberg@adacore.com> | |
5900 | ||
5901 | * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): For access | |
5902 | discriminants, indicate that the corresponding object declaration has | |
5903 | no initialization, to prevent spurious warnings when the access type is | |
5904 | null-excluding. | |
5905 | ||
5906 | 2008-08-05 Ed Schonberg <schonberg@adacore.com> | |
5907 | ||
5908 | * sem_res.adb (Resolve_Call): If this is a call to the predefined | |
5909 | Abort_Task, warn if the call appears within a protected operation. | |
5910 | ||
52fb73c2 AC |
5911 | 2008-08-04 Robert Dewar <dewar@adacore.com> |
5912 | ||
5913 | * exp_ch4.adb (Expand_N_In): Suppress range warnings in instances | |
5914 | ||
5915 | 2008-08-04 Ed Schonberg <schonberg@adacore.com> | |
5916 | ||
5917 | * sem_ch3.adb: | |
5918 | (Replace_Anonymous_Access_To_Protected_Subprogram): Handle properly an | |
5919 | anonymous access to protected subprogram that is the return type of the | |
5920 | specification of a subprogram body. | |
5921 | ||
5922 | * sem_ch6.adb: | |
5923 | (Analyze_Subprogram_Body): if the return type is an anonymous access to | |
5924 | subprogram, freeze it now to prevent access anomalies in the back-end. | |
5925 | ||
5926 | * exp_ch9.adb: Minor code cleanup. | |
5927 | Make sure that new declarations are inserted into the tree before | |
5928 | analysis (from code reading). | |
5929 | ||
5930 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
5931 | ||
5932 | * exp_ch5.adb: | |
5933 | (Expand_Simple_Function_Return): Check No_Secondary_Stack restriction | |
5934 | at point of return. | |
5935 | ||
367a9e66 AC |
5936 | 2008-08-04 Thomas Quinot <quinot@adacore.com> |
5937 | ||
5938 | * sem_type.adb, sem_ch4.adb, sprint.adb, exp_ch3.adb: Minor reformatting | |
5939 | ||
5940 | 2008-08-04 Vasiliy Fofanov <fofanov@adacore.com> | |
5941 | ||
5942 | * g-soccon-mingw.ads: Fix value for MSG_WAITALL | |
5943 | ||
5944 | 2008-08-04 Javier Miranda <miranda@adacore.com> | |
5945 | ||
5946 | * sem_prag.adb (Process_Convention): Add missing support for | |
5947 | N_Private_Extension_Declaration nodes. | |
5948 | ||
5949 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
5950 | ||
5951 | * exp_ch4.adb: Minor reformatting | |
5952 | ||
a07c3593 AC |
5953 | 2008-08-04 Pascal Obry <obry@adacore.com> |
5954 | ||
5955 | * adaint.h: Add missing prototype. | |
5956 | ||
5957 | * adaint.c: Refine support for Windows file attributes. | |
5958 | ||
5959 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
5960 | ||
5961 | * sem_res.adb: | |
5962 | (Valid_Conversion): Catch case of designated types having different | |
5963 | sizes, even though they statically match. | |
5964 | ||
5965 | 2008-08-04 Javier Miranda <miranda@adacore.com> | |
5966 | ||
5967 | * sem_eval.adb (Subtypes_Statically_Match): Remove superfluous patch | |
5968 | added in previous patch to handle access to subprograms. | |
5969 | ||
5970 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
5971 | ||
5972 | * freeze.adb: | |
5973 | (Freeze_Entity): Only check No_Default_Initialization restriction for | |
5974 | constructs that come from source | |
5975 | ||
5976 | 2008-08-04 Thomas Quinot <quinot@adacore.com> | |
5977 | ||
5978 | * exp_ch6.adb: Minor comment fix. | |
5979 | ||
5980 | * sem_ch4.adb: Minor reformatting. | |
5981 | ||
d559d5c6 AC |
5982 | 2008-08-04 Robert Dewar <dewar@adacore.com> |
5983 | ||
5984 | * sem_res.adb: (Large_Storage_Type): Improve previous change. | |
5985 | ||
5986 | 2008-08-04 Pascal Obry <obry@adacore.com> | |
5987 | ||
5988 | * adaint.c, s-os_lib.adb, s-os_lib.ads: Use Windows ACL to deal with | |
5989 | file attributes. | |
5990 | ||
b1c11e0e JM |
5991 | 2008-08-04 Javier Miranda <miranda@adacore.com> |
5992 | ||
5993 | * sem_ch3.adb (Access_Subprogram_Declaration): Adding missing support | |
5994 | for N_Formal_Object_Declaration nodes. Adding kludge required by | |
5995 | First_Formal to provide its functionality with access to functions. | |
5996 | (Replace_Anonymous_Access_To_Protected_Subprogram): Add missing support | |
5997 | for anonymous access types returned by functions. | |
5998 | ||
5999 | * sem_ch5.adb (Analyze_Assignment): Code cleanup to avoid duplicate | |
6000 | conversion of null-excluding access types (required only once to force | |
6001 | the generation of the required runtime check). | |
6002 | ||
6003 | * sem_type.adb (Covers): minor reformating | |
6004 | ||
6005 | * checks.adb (Null_Exclusion_Static_Checks): Avoid reporting errors | |
6006 | with internally generated nodes. Avoid generating the error inside init | |
6007 | procs. | |
6008 | ||
6009 | * sem_res.adb (Resolve_Membership_Test): Minor reformating. | |
6010 | (Resolve_Null): Generate the null-excluding check in case of assignment | |
6011 | to a null-excluding object. | |
6012 | (Valid_Conversion): Add missing support for anonymous access to | |
6013 | subprograms. | |
6014 | ||
6015 | * sem_ch6.adb (Check_Return_Subtype_Indication): Add missing support for | |
6016 | anonymous access types whose designated type is an itype. This case | |
6017 | occurs with anonymous access to protected subprograms types. | |
6018 | (Analyze_Return_Type): Add missing support for anonymous access to | |
6019 | protected subprogram. | |
6020 | ||
6021 | * sem_eval.adb (Subtypes_Statically_Match): In case of access to | |
6022 | subprograms addition of missing check on matching convention. Required | |
6023 | to properly handle access to protected subprogram types. | |
6024 | ||
6025 | * exp_ch3 (Build_Assignment): Code cleanup removing duplicated check on | |
6026 | null excluding access types. | |
6027 | ||
b282ab37 AC |
6028 | 2008-08-04 Ed Schonberg <schonberg@adacore.com> |
6029 | ||
6030 | * sem_ch12.adb: Add comments | |
6031 | ||
6032 | * sem_ch4.adb (Analyze_Allocator): If the designated type is a non-null | |
6033 | access type and the allocator is not initialized, warn rather than | |
6034 | reporting an error. | |
6035 | ||
6036 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
6037 | ||
6038 | * exp_ch4.adb: Minor reformatting | |
6039 | ||
6040 | * exp_dist.adb: Minor reformatting | |
6041 | ||
6042 | * g-comlin.adb: Minor reformatting | |
6043 | ||
6044 | 2008-08-04 Gary Dismukes <dismukes@adacore.com> | |
6045 | ||
6046 | * exp_aggr.adb (Build_Record_Aggr_Code): Perform a conversion of the | |
6047 | target to the type of the aggregate in the case where the target object | |
6048 | is class-wide. | |
6049 | ||
6050 | * exp_ch5.adb (Expand_Simple_Function_Return): When the function's | |
6051 | result type is class-wide and inherently limited, and the expression | |
6052 | has a specific type, create a return object of the specific type, for | |
6053 | more efficient handling of returns of build-in-place aggregates (avoids | |
6054 | conversions of the class-wide return object to the specific type on | |
6055 | component assignments). | |
6056 | ||
6057 | * sem_ch6.adb (Check_Return_Subtype_Indication): Suppress the error | |
6058 | about a type mismatch for a class-wide function with a return object | |
6059 | having a specific type when the object declaration doesn't come from | |
6060 | source. Such an object can result from the expansion of a simple return. | |
6061 | ||
6062 | 2008-08-04 Vasiliy Fofanov <fofanov@adacore.com> | |
6063 | ||
6064 | * g-soccon-mingw-64.ads, system-mingw-x86_64.ads: New files. | |
6065 | ||
6066 | * gcc-interface/Makefile.in: Use 64bit-specific system files when | |
6067 | compiling for 64bit windows. | |
6068 | ||
54838d1f AC |
6069 | 2008-08-04 Jerome Lambourg <lambourg@adacore.com> |
6070 | ||
6071 | * g-comlin.adb (Group_Switches): Preserve the switch order when | |
6072 | grouping and allow switch grouping of switches with more than one | |
6073 | character extension (e.g. gnatw.x). | |
6074 | (Args_From_Expanded): Remove this now obsolete method. | |
6075 | ||
6076 | 2008-08-04 Ed Schonberg <schonberg@adacore.com> | |
6077 | ||
6078 | * exp_ch4.adb (Get_Allocator_Final_List): Freeze anonymous type for | |
6079 | chain at once, to ensure that type is properly decorated for back-end, | |
6080 | when allocator appears within a loop. | |
6081 | ||
6082 | 2008-08-04 Kevin Pouget <pouget@adacore.com> | |
6083 | ||
6084 | * snames.h, snames.adb, snames.ads: | |
6085 | Add Attr_To_Any, Attr_From_Any and Attr_TypeCode defines. | |
6086 | ||
6087 | * exp_dist.ads, exp_dist.adb: Add Build_From_Any_Call, | |
6088 | Build_To_Any_Call and Build_TypeCode_Call procedures. | |
6089 | ||
6090 | * exp_attr.adb, sem_attr.adb: Add corresponding cases. | |
6091 | ||
6092 | * rtsfind.ads: Add corresponding names. | |
6093 | ||
6094 | * tbuild.adb: Update prefix restrictions to allow '_' character. | |
6095 | ||
819fad69 AC |
6096 | 2008-08-04 Doug Rupp <rupp@adacore.com> |
6097 | ||
6098 | * gigi.h (fill_vms_descriptor): Add third parameter gnat_actual | |
6099 | * trans.c (call_to_gnu): Call fill_vms_descriptor with new parameter. | |
6100 | * utils2.c (fill_vms_descriptor): Add third parameter for error sloc and | |
6101 | use it. Calculate pointer range overflow using 64bit types. | |
6102 | ||
6103 | 2008-08-04 Ed Schonberg <schonberg@adacore.com> | |
6104 | ||
6105 | * sem_ch3.adb (Access_Definition): A formal object declaration is a | |
6106 | legal context for an anonymous access to subprogram. | |
6107 | ||
6108 | * sem_ch4.adb (Analyze_One_Call): If the call can be interpreted as an | |
6109 | indirect call, report success to the caller to include possible | |
6110 | interpretation. | |
6111 | ||
6112 | * sem_ch6.adb (Check_Return_Type_Indication): Apply proper conformance | |
6113 | check when the type | |
6114 | of the extended return is an anonymous access_to_subprogram type. | |
6115 | ||
6116 | * sem_res.adb: | |
6117 | (Resolve_Call): Insert a dereference if the type of the subprogram is an | |
6118 | access_to_subprogram and the context requires its return type, and a | |
6119 | dereference has not been introduced previously. | |
6120 | ||
6121 | 2008-08-04 Arnaud Charlet <charlet@adacore.com> | |
6122 | ||
6123 | * usage.adb (Usage): Minor rewording of -gnatwz switch, to improve | |
6124 | gnatcheck support in GPS. | |
6125 | ||
6126 | 2008-08-04 Vincent Celier <celier@adacore.com> | |
6127 | ||
6128 | * mlib.adb (Create_Sym_Links): Create relative symbolic links when | |
6129 | requested | |
6130 | ||
a037f912 VC |
6131 | 2008-08-04 Vincent Celier <celier@adacore.com> |
6132 | ||
6133 | * gprep.adb (Process_One_File): Call Prep.Preprocess with a Boolean | |
6134 | variable, but don't check the resulting value as it has no impact on | |
6135 | the processing. | |
9e81dbc7 | 6136 | |
a037f912 VC |
6137 | * opt.ads: |
6138 | (Generate_Processed_File): New Boolean flag, set to True in the compiler | |
6139 | when switch -gnateG is used. | |
9e81dbc7 | 6140 | |
a037f912 VC |
6141 | * prep.adb: |
6142 | (Preprocess): new Boolean out parameter Source_Modified. Set it to True | |
6143 | when the source is modified by the preprocessor and there is no | |
6144 | preprocessing errors. | |
9e81dbc7 | 6145 | |
a037f912 | 6146 | * prep.ads (Preprocess): new Boolean out parameter Source_Modified |
9e81dbc7 | 6147 | |
a037f912 VC |
6148 | * sinput-l.adb: |
6149 | (Load_File): Output the result of preprocessing if the source text was | |
6150 | modified. | |
9e81dbc7 | 6151 | |
a037f912 | 6152 | * switch-c.adb (Scan_Front_End_Switches): Recognize switch -gnateG |
9e81dbc7 | 6153 | |
a037f912 | 6154 | * switch-m.adb (Normalize_Compiler_Switches): Normalize switch -gnateG |
9e81dbc7 | 6155 | |
a037f912 | 6156 | * ug_words: Add VMS equivalent for -gnateG |
9e81dbc7 | 6157 | |
a037f912 VC |
6158 | * vms_data.ads: |
6159 | Add VMS option /GENERATE_PROCESSED_SOURCE, equivalent to switch -gnateG | |
6160 | ||
bdc33a55 AC |
6161 | 2008-08-04 Doug Rupp <rupp@adacore.com> |
6162 | ||
6163 | * gcc-interface/utils2.c: | |
6164 | (fill_vms_descriptor): Raise CE if attempt made to pass 64bit pointer | |
6165 | in 32bit descriptor. | |
6166 | ||
6167 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
6168 | ||
6169 | * par-ch10.adb: Minor reformatting | |
6170 | ||
6171 | * i-cobol.adb: Minor reformatting. | |
6172 | ||
6173 | 2008-08-04 Ed Schonberg <schonberg@adacore.com> | |
6174 | ||
6175 | * sem_ch3.adb (Access_Definition): Create an itype reference for an | |
6176 | anonymous access return type of a regular function that is not a | |
6177 | compilation unit. | |
6178 | ||
6179 | 2008-08-04 Vincent Celier <celier@adacore.com> | |
6180 | ||
6181 | * prj-attr.adb: New Builder attribute Global_Compilation_Switches | |
9e81dbc7 | 6182 | |
bdc33a55 | 6183 | * snames.adb: New standard name Global_Compilation_Switches |
9e81dbc7 | 6184 | |
bdc33a55 AC |
6185 | * snames.ads: New standard name Global_Compilation_Switches |
6186 | ||
6187 | * make.adb: Correct spelling error in comment | |
6188 | ||
6189 | 2008-08-04 Arnaud Charlet <charlet@adacore.com> | |
6190 | ||
6191 | * sem_prag.adb (Check_Form_Of_Interface_Name): Fix handling for CLI | |
6192 | target. | |
6193 | ||
6194 | 2008-08-04 Thomas Quinot <quinot@adacore.com> | |
6195 | ||
6196 | * sem_ch10.adb: Minor comment fix. | |
6197 | ||
fc1b906a AC |
6198 | 2008-08-04 Robert Dewar <dewar@adacore.com> |
6199 | ||
6200 | * restrict.adb: Improved messages for restriction warnings | |
6201 | ||
6202 | * restrict.ads: Improved messages for restriction messages | |
6203 | ||
6204 | * s-rident.ads (Profile_Name): Add No_Profile | |
6205 | ||
6206 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
6207 | ||
6208 | * system-darwin-x86.ads: Correct bad definition of Max_Nonbinary_Modulus | |
6209 | ||
6210 | 2008-08-04 Robert Dewar <dewar@adacore.com> | |
6211 | ||
6212 | * freeze.adb (Freeze_Entity): Check for size clause for boolean warning | |
6213 | ||
6214 | 2008-08-04 Vincent Celier <celier@adacore.com> | |
6215 | ||
6216 | * prj-proc.adb: | |
6217 | (Copy_Package_Declarations): When inheriting package Naming from a | |
6218 | project being extended, do not inherit source exception names. | |
6219 | ||
6220 | 2008-08-04 Ed Schonberg <schonberg@adacore.com> | |
6221 | ||
6222 | * sem_prag.adb (Check_Precondition_Postcondition): When scanning the | |
6223 | list of declaration to find previous subprogram, do not go to the | |
6224 | original node of a generic unit. | |
6225 | ||
d2143736 EB |
6226 | 2008-08-02 Eric Botcazou <ebotcazou@adacore.com> |
6227 | ||
6228 | * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR, MINUS_EXPR>: | |
6229 | New case. Convert BOOLEAN_TYPE operation to the default integer type. | |
6230 | ||
a981c964 EB |
6231 | 2008-08-01 Eric Botcazou <ebotcazou@adacore.com> |
6232 | ||
6233 | * gcc-interface/ada-tree.h (DECL_PARM_ALT): Now DECL_PARM_ALT_TYPE. | |
6234 | * gcc-interface/decl.c (gnat_to_gnu_param): Fix formatting, simplify | |
6235 | and adjust for above renaming. | |
6236 | * gcc-interface/utils.c (convert_vms_descriptor): Likewise. Add new | |
6237 | gnu_expr_alt_type parameter. Convert the expression to it instead | |
6238 | of changing its type in place. | |
6239 | (build_function_stub): Adjust call to above function. | |
6240 | ||
8df2e902 EB |
6241 | 2008-08-01 Eric Botcazou <ebotcazou@adacore.com> |
6242 | ||
6243 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Remove dead | |
6244 | code. Do not get full definition of deferred constants with address | |
6245 | clause for a use. Do not ignore deferred constant definitions with | |
6246 | address clause. Ignore constant definitions already marked with the | |
6247 | error node. | |
6248 | <object>: Remove obsolete comment. For a deferred constant with | |
6249 | address clause, get the initializer from the full view. | |
6250 | * gcc-interface/trans.c (gnat_to_gnu) <N_Attribute_Definition_Clause>: | |
6251 | Rework and remove obsolete comment. | |
6252 | <N_Object_Declaration>: For a deferred constant with address clause, | |
6253 | mark the full view with the error node. | |
6254 | * gcc-interface/utils.c (convert_to_fat_pointer): Rework and fix | |
6255 | formatting nits. | |
6256 | ||
585df50b AC |
6257 | 2008-08-01 Hristian Kirtchev <kirtchev@adacore.com> |
6258 | ||
6259 | * rtsfind.ads: Add block IO versions of stream routines for Strings. | |
9e81dbc7 | 6260 | |
585df50b AC |
6261 | * bindgen.adb, gnat_rm.texi, gnat_ugn.texi, opt.ads, |
6262 | sem_prag.adb, snames.adb, snames.ads, snames.h, | |
6263 | par-prag.adb: Undo previous stream related changes. | |
9e81dbc7 | 6264 | |
585df50b | 6265 | * s-rident.ads: Add new restriction No_Stream_Optimizations. |
9e81dbc7 | 6266 | |
585df50b AC |
6267 | * s-ststop.ads, s-ststop.adb: Comment reformatting. |
6268 | Define enumeration type to designate different IO mechanisms. | |
6269 | Enchance generic package Stream_Ops_Internal to include an | |
6270 | implementation of Input and Output. | |
6271 | ||
6272 | * exp_attr.adb (Find_Stream_Subprogram): If restriction | |
6273 | No_Stream_Optimization is active, choose the default byte IO | |
6274 | implementations of stream attributes for Strings. | |
6275 | Otherwise use the corresponding block IO version. | |
6276 | ||
2eee5152 | 6277 | 2008-08-01 Olivier Hainque <hainque@adacore.com> |
9e81dbc7 | 6278 | |
585df50b AC |
6279 | * gcc-interface/decl.c (gnat_to_gnu_entity) <case E_Function>: Do not |
6280 | turn Ada Pure into GCC const, now implicitely implying nothrow as well. | |
6281 | ||
6282 | 2008-08-01 Robert Dewar <dewar@adacore.com> | |
6283 | ||
6284 | * par-ch3.adb (P_Defining_Identifier): Avoid repeated attempt to | |
6285 | convert plain identifier into defining identifier. | |
2eee5152 | 6286 | |
2b747305 AC |
6287 | 2008-08-01 Robert Dewar <dewar@adacore.com> |
6288 | ||
6289 | * sem_prag.adb (Check_Form_Of_Interface_Name): Refine and improve | |
6290 | warnings | |
6291 | ||
6292 | * lib-xref.adb: Add error defense. | |
6293 | ||
6294 | 2008-08-01 Bob Duff <duff@adacore.com> | |
6295 | ||
6296 | * ioexcept.ads, sequenio.ads, directio.ads: Correct comment. | |
6297 | ||
0c246603 AC |
6298 | 2008-08-01 Gary Dismukes <dismukes@adacore.com> |
6299 | ||
6300 | * exp_ch6.adb (Expand_Call): Adjustment to previous fix for passing | |
6301 | correct accessibility levels. In the "when others" case, retrieve the | |
6302 | access level of the Etype of Prev rather than Prev_Orig, because the | |
6303 | original exression has not always been analyzed. | |
6304 | ||
6305 | 2008-08-01 Robert Dewar <dewar@adacore.com> | |
6306 | ||
6307 | * prj-nmsc.adb: Minor reformatting | |
6308 | ||
6309 | * sem_ch4.adb: Minor reformatting | |
6310 | Minor code reorganization | |
6311 | ||
6312 | * prj.ads: Minor reformatting | |
6313 | ||
6314 | * s-os_lib.adb: Minor reformatting | |
6315 | ||
6316 | * par-prag.adb (Prag, case Wide_Character_Encoding): Deal with upper | |
6317 | half encodings | |
6318 | ||
6319 | * scans.ads: Minor reformatting. | |
6320 | ||
6321 | * sem_prag.adb (Analyze_Pragma): Put entries in alpha order | |
6322 | (Analyze_Pragma): Make sure all GNAT pragmas call GNAT_Pragma | |
6323 | ||
6324 | * sem_res.adb: | |
6325 | (Resolve_Call): Check violation of No_Specific_Termination_Handlers | |
6326 | ||
6327 | * sem_ch12.adb: Minor comment reformatting | |
6328 | ||
6329 | * par-ch3.adb (P_Type_Declaration): Properly handle missing type | |
6330 | keyword | |
6331 | ||
1cb17b78 AC |
6332 | 2008-08-01 Robert Dewar <dewar@adacore.com> |
6333 | ||
6334 | * sem_ch6.adb (Process_PPCs): Don't copy spec PPC to body if not | |
6335 | generating code | |
6336 | ||
6337 | 2008-08-01 Ed Schonberg <schonberg@adacore.com> | |
6338 | ||
6339 | * checks.adb (Apply_Float_Conversion_Check): If the expression to be | |
6340 | converted is a real literal and the target type has static bounds, | |
6341 | perform the conversion exactly to prevent floating-point anomalies on | |
6342 | some targets. | |
6343 | ||
6344 | 2008-08-01 Vincent Celier <celier@adacore.com> | |
6345 | ||
6346 | * prj-attr.adb: New attribute Compiler'Name_Syntax (<lang>) | |
9e81dbc7 | 6347 | |
1cb17b78 | 6348 | * prj-nmsc.adb (Process_Compiler): Recognize attribute Name_Syntax |
9e81dbc7 | 6349 | |
1cb17b78 AC |
6350 | * prj.adb (Object_Exist_For): Use Object_Generated, not |
6351 | Objects_Generated that is removed and was never modified anyway. | |
6352 | ||
6353 | * prj.ads: | |
6354 | (Path_Syntax_Kind): New enumeration type | |
6355 | (Language_Config): New component Path_Syntax, defaulted to Host. | |
6356 | Components PIC_Option and Objects_Generated removed, as they are not | |
6357 | used. | |
6358 | ||
6359 | * snames.adb: New standard name Path_Syntax | |
9e81dbc7 | 6360 | |
1cb17b78 AC |
6361 | * snames.ads: New standard name Path_Syntax |
6362 | ||
6363 | 2008-08-01 Vincent Celier <celier@adacore.com> | |
6364 | ||
6365 | * mlib-utl.adb: | |
6366 | (Adalib_Path): New variable to store the path of the adalib directory | |
6367 | when procedure Specify_Adalib_Dir is called. | |
6368 | (Lib_Directory): If Adalib_Path is not null, return its value | |
6369 | (Specify_Adalib_Dir): New procedure | |
9e81dbc7 | 6370 | |
1cb17b78 AC |
6371 | * mlib-utl.ads (Specify_Adalib_Dir): New procedure |
6372 | ||
6373 | 2008-08-01 Ed Schonberg <schonberg@adacore.com> | |
6374 | ||
6375 | * sem_prag.adb: | |
6376 | (Check_Precondition_Postcondition): If not generating code, analyze the | |
6377 | expression in a postcondition that appears in a subprogram body, so that | |
6378 | it is properly decorated for ASIS use. | |
6379 | ||
6380 | 2008-08-01 Gary Dismukes <dismukes@adacore.com> | |
6381 | ||
6382 | * exp_ch6.adb (Expand_Call): Remove ugly special-case code that resets | |
6383 | Orig_Prev to Prev in the case where the actual is N_Function_Call or | |
6384 | N_Identifier. This was interfering with other cases that are rewritten | |
6385 | as N_Identifier, such as allocators, resulting in passing of the wrong | |
6386 | accessibility level, and based on testing this code is apparently no | |
6387 | longer needed at all. | |
6388 | ||
6389 | 2008-08-01 Ed Schonberg <schonberg@adacore.com> | |
6390 | ||
6391 | * sem_ch4.adb (Analyze_One_Call): Handle complex overloading of a | |
6392 | procedure call whose prefix | |
6393 | is a parameterless function call that returns an access_to_procedure. | |
6394 | ||
d1b4f87d AC |
6395 | 2008-08-01 Jose Ruiz <ruiz@adacore.com> |
6396 | ||
6397 | * adaint.c (__gnat_tmp_name): Refine the generation of temporary names | |
6398 | for RTX. Adding a suffix that is incremented at each iteration. | |
6399 | ||
6400 | 2008-08-01 Robert Dewar <dewar@adacore.com> | |
6401 | ||
6402 | * sem_ch6.adb (Analyze_Subprogram_Body): Remove special casing of | |
6403 | Raise_Exception | |
6404 | ||
6405 | 2008-08-01 Jerome Lambourg <lambourg@adacore.com> | |
6406 | ||
6407 | * s-os_lib.adb (Normalize_Pathname): Take care of double-quotes in | |
6408 | paths, which are authorized by Windows but can lead to errors when used | |
6409 | elsewhere. | |
6410 | ||
cfb02ad1 AC |
6411 | 2008-08-01 Ed Schonberg <schonberg@adacore.com> |
6412 | ||
6413 | * sem_ch12.ads (Need_Subprogram_Instance_Body): new function, to create | |
6414 | a pending instantiation for the body of a subprogram that is to be | |
6415 | inlined. | |
6416 | ||
6417 | * sem_ch12.adb: | |
6418 | (Analyze_Subprogram_Instantiation): use Need_Subprogram_Instance_Body. | |
6419 | ||
6420 | * sem_prag.adb (Make_Inline): If the pragma applies to an instance, | |
6421 | create a pending instance for its body, so that calls to the subprogram | |
6422 | can be inlined by the back-end. | |
6423 | ||
6424 | 2008-08-01 Jose Ruiz <ruiz@adacore.com> | |
6425 | ||
6426 | * gnat_ugn.texi: Document the RTX run times (rts-rtx-rtss and | |
6427 | rts-rtx-w32). | |
6428 | ||
e1bb4e71 AC |
6429 | 2008-08-01 Robert Dewar <dewar@adacore.com> |
6430 | ||
6431 | * scng.adb (Error_Illegal_Wide_Character): Bump scan pointer | |
6432 | ||
6433 | 2008-08-01 Doug Rupp <rupp@adacore.com> | |
6434 | ||
6435 | * gnat_rm.texi: Document new mechanism Short_Descriptor. | |
9e81dbc7 | 6436 | |
e1bb4e71 AC |
6437 | * types.ads (Mechanism_Type): Modify range for new Short_Descriptor |
6438 | mechanism values. | |
6439 | ||
6440 | * sem_prag.adb (Set_Mechanism_Value): Enhance for Short_Descriptor | |
6441 | mechanism and Short_Descriptor mechanism values. | |
6442 | ||
6443 | * snames.adb (preset_names): Add short_descriptor entry. | |
6444 | ||
6445 | * snames.ads: Add Name_Short_Descriptor. | |
6446 | ||
6447 | * types.h: Add new By_Short_Descriptor mechanism values. | |
6448 | ||
6449 | * sem_mech.adb (Set_Mechanism_Value): Enhance for Short_Descriptor | |
6450 | mechanism and Short_Descriptor mechanism values. | |
6451 | ||
6452 | * sem_mech.ads (Mechanism_Type): Add new By_Short_Descriptor mechanism | |
6453 | values. | |
6454 | (Descriptor_Codes): Modify range for new mechanism values. | |
6455 | ||
6456 | * treepr.adb (Print_Entity_Enfo): Handle new By_Short_Descriptor | |
6457 | mechanism values. | |
6458 | ||
6459 | * gcc-interface/decl.c (gnat_to_gnu_entity): Handle By_Short_Descriptor. | |
6460 | (gnat_to_gnu_param): Handle By_Short_Descriptor. | |
6461 | ||
6462 | * gcc-interface/gigi.h (build_vms_descriptor64): Remove prototype. | |
6463 | (build_vms_descriptor32): New prototype. | |
6464 | (fill_vms_descriptor): Remove unneeded gnat_actual parameter. | |
6465 | ||
6466 | * gcc-interface/trans.c (call_to_gnu): Removed unneeded gnat_actual | |
6467 | argument in call fill_vms_descriptor. | |
6468 | ||
6469 | * gcc-interface/utils.c (build_vms_descriptor32): Renamed from | |
6470 | build_vms_descriptor and enhanced to hande Short_Descriptor mechanism. | |
9e81dbc7 | 6471 | (build_vms_descriptor): Renamed from build_vms_descriptor64. |
e1bb4e71 AC |
6472 | (convert_vms_descriptor32): New function. |
6473 | (convert_vms_descriptor64): New function. | |
6474 | (convert_vms_descriptor): Rewrite to handle both 32bit and 64bit | |
6475 | descriptors. | |
6476 | ||
6477 | * gcc-interface/utils2.c (fill_vms_descriptor): Revert previous changes, | |
6478 | no longer needed. | |
6479 | ||
6480 | 2008-08-01 Jose Ruiz <ruiz@adacore.com> | |
6481 | ||
6482 | * adaint.c (__gnat_tmp_name): RTSS applications do not support tempnam | |
6483 | nor tmpnam, so we always use c:\WINDOWS\Temp\gnat-XXXXXX as temporary | |
6484 | name. | |
6485 | ||
bca3ab79 AC |
6486 | 2008-08-01 Jose Ruiz <ruiz@adacore.com> |
6487 | ||
6488 | * cstreams.c (__gnat_full_name): RTSS applications cannot ask for the | |
6489 | current directory so only fully qualified names are allowed. | |
6490 | ||
6491 | 2008-08-01 Robert Dewar <dewar@adacore.com> | |
6492 | ||
6493 | * gnat_ugn.texi: | |
6494 | Minor editing, remove uncomfortable use of semicolon | |
6495 | ||
6496 | * s-ststop.adb: Add some ??? comments | |
6497 | ||
6498 | * sem_ch10.adb: Minor reformatting | |
6499 | ||
6500 | * snames.ads: | |
6501 | Minor comment fixes, some pragmas were not properly | |
6502 | categorized in the comments, documentation change only | |
6503 | ||
6504 | * xref_lib.adb: Minor reformatting | |
6505 | ||
6506 | * sinput.adb: Minor reformatting | |
6507 | ||
6508 | * gnatchop.adb: Minor reformatting | |
6509 | ||
6510 | * sem_util.ads: Minor reformatting. | |
6511 | ||
6512 | * opt.ads: Minor documentation fix | |
6513 | ||
6514 | * scng.adb: Minor reformatting | |
6515 | ||
6516 | * prj-part.adb: Update comments | |
6517 | ||
6518 | 2008-08-01 Ed Schonberg <schonberg@adacore.com> | |
6519 | ||
6520 | * exp_disp.adb (Expand_Interface_Conversion): If the target type is a | |
6521 | tagged synchronized type, use corresponding record type. | |
6522 | ||
6523 | 2008-08-01 Doug Rupp <rupp@adacore.com> | |
6524 | ||
6525 | * mlib-tgt-specific-vms-alpha.adb (Build_Dynamic_Library): Output a | |
6526 | dummy transfer address for debugging. | |
9e81dbc7 | 6527 | |
bca3ab79 AC |
6528 | * mlib-tgt-specific-vms-ia64.adb (Build_Dynamic_Library): Likewise. |
6529 | ||
6530 | * vms_data.ads: vms_data.ads: New qualfier /MACHINE_CODE_LISTING | |
6531 | ||
4c5a0615 EB |
6532 | 2008-07-31 Eric Botcazou <ebotcazou@adacore.com> |
6533 | ||
6534 | * gcc-interface/decl.c (gnat_to_gnu_entity): Fix formatting. | |
6535 | * gcc-interface/utils.c (create_field_decl): Avoid superfluous work. | |
6536 | ||
964771d9 AC |
6537 | 2008-07-31 Pascal Obry <obry@adacore.com> |
6538 | ||
6539 | * prj-nmsc.adb: Keep Object and Exec directory casing. | |
6540 | ||
6541 | 2008-07-31 Jose Ruiz <ruiz@adacore.com> | |
6542 | ||
6543 | * system-rtx-rtss.ads | |
6544 | Change the default stack size. It is important to set the commit part. | |
9e81dbc7 | 6545 | |
964771d9 AC |
6546 | * s-taprop-rtx.adb |
6547 | (Initialize): Get the clock resolution. | |
6548 | (RT_Resolution): Return the clock resolution that is indicated by the | |
6549 | system. | |
6550 | ||
6551 | * s-parame-vxworks.adb | |
6552 | Document that this body is used for RTX in RTSS (kernel) mode. | |
6553 | ||
6554 | * gcc-interface/Makefile.in | |
6555 | (LIBGNAT_TARGET_PAIRS for the rtx_rtss run time): Use the | |
6556 | s-parame-vxworks.adb body in order to have reasonable stack sizes in | |
6557 | RTX RTSS kernel mode. Virtual memory is not used in that case, so we | |
6558 | cannot ask for too big values. | |
6559 | ||
6560 | 2008-07-31 Robert Dewar <dewar@adacore.com> | |
6561 | ||
6562 | * exp_aggr.adb: Minor reformatting | |
6563 | ||
6564 | * makeutl.adb: Minor reformatting | |
6565 | ||
6566 | * prj-env.adb: Minor reformatting | |
6567 | ||
1e0f7ffb AC |
6568 | 2008-07-31 Hristian Kirtchev <kirtchev@adacore.com> |
6569 | ||
6570 | * exp_disp.adb (Prim_Op_Kind): Retrieve the full view when a private | |
6571 | tagged type is completed by a concurrent type. | |
6572 | ||
6573 | 2008-07-31 Gary Dismukes <dismukes@adacore.com> | |
6574 | ||
6575 | * sem_aggr.adb: | |
6576 | (Resolve_Record_Aggregate): Bypass error that a type without | |
6577 | components must have a "null record" aggregate when compiling for Ada | |
6578 | 2005, since it's legal to give an aggregate of form (others => <>) | |
6579 | for such a type. | |
6580 | ||
fa4bc5ab AC |
6581 | 2008-07-31 Javier Miranda <miranda@adacore.com> |
6582 | ||
6583 | * sem_ch4.adb (Valid_First_Argument_Of): Complete its functionality to | |
6584 | handle synchronized types. Required to handle well the object.operation | |
6585 | notation applied to synchronized types. | |
6586 | ||
6587 | 2008-07-31 Quentin Ochem <ochem@adacore.com> | |
6588 | ||
6589 | * s-stausa.adb (Fill_Stack): Stack_Used_When_Filling is now stored | |
6590 | anymore - just used internally. | |
6591 | Added handling of very small tasks - when the theoretical size is | |
6592 | already full at the point of the call. | |
6593 | (Report_Result): Fixed result computation, Stack_Used_When_Filling does | |
6594 | not need to be added to the result. | |
6595 | ||
6596 | 2008-07-31 Hristian Kirtchev <kirtchev@adacore.com> | |
6597 | ||
6598 | * sem_ch6.adb (Disambiguate_Spec): Continue the disambiguation if the | |
6599 | corresponding spec is a primitive wrapper. Update comment. | |
6600 | ||
6601 | 2008-07-31 Hristian Kirtchev <kirtchev@adacore.com> | |
6602 | ||
6603 | * bindgen.adb Comment reformatting. Update the list of run-time globals. | |
6604 | (Gen_Adainit_Ada): Add the declaration, import and value set for | |
6605 | configuration flag Canonical_Streams. | |
6606 | (Gen_Adainit_C): Add the declaration and initial value of external | |
6607 | symbol __gl_canonical_streams. | |
9e81dbc7 | 6608 | |
fa4bc5ab | 6609 | * init.c: Update the list of global values computed by the binder. |
9e81dbc7 | 6610 | |
fa4bc5ab | 6611 | * opt.ads: Add flag Canonical_Streams. |
9e81dbc7 | 6612 | |
fa4bc5ab AC |
6613 | * par-prag.adb (Prag): Include Pragma_Canonical_Streams to the list of |
6614 | semantically handled pragmas. | |
9e81dbc7 | 6615 | |
fa4bc5ab AC |
6616 | * sem_prag.adb: Add an entry into enumeration type Sig_Flags. |
6617 | (Analyze_Pragma): Add case for pragma Canonical_Streams. | |
9e81dbc7 | 6618 | |
fa4bc5ab | 6619 | * snames.adb: Add character value for name Canonical_Streams. |
9e81dbc7 | 6620 | |
fa4bc5ab AC |
6621 | * snames.ads: |
6622 | Add Name_Canonical_Streams to the list of configuration pragmas. | |
6623 | Add Pragma_Canonical_Streams to enumeration type Pragma_Id. | |
9e81dbc7 | 6624 | |
fa4bc5ab | 6625 | * snames.h: Add a definition for Pragma_Canonical_Streams. |
9e81dbc7 | 6626 | |
fa4bc5ab AC |
6627 | * s-ststop.adb: |
6628 | Add a flag and import to seize the value of external symbol | |
6629 | __gl_canonical_streams. Update comment and initial value of constant | |
6630 | Use_Block_IO. | |
9e81dbc7 | 6631 | |
fa4bc5ab | 6632 | * gnat_rm.texi: Add section of pragma Canonical_Streams. |
9e81dbc7 | 6633 | |
fa4bc5ab AC |
6634 | * gnat_ugn.texi: |
6635 | Add pragma Canonical_Streams to the list of configuration pragmas. | |
6636 | ||
6637 | 2008-07-31 Ed Schonberg <schonberg@adacore.com> | |
6638 | ||
6639 | * sem_ch10.adb (Build_Unit_Name): If the unit name in a with_clause | |
6640 | has the form A.B.C and B is a unit renaming, analyze its compilation | |
6641 | unit and add a with_clause on A.b to the context. | |
6642 | ||
f32b9cd1 AC |
6643 | 2008-07-31 Vincent Celier <celier@adacore.com> |
6644 | ||
6645 | * makeutl.adb (Executable_Prefix_Path): If Locate_Exec_On_Path fails, | |
6646 | return the empty string, instead of raising Constraint_Error. | |
6647 | ||
6648 | 2008-07-31 Gary Dismukes <dismukes@adacore.com> | |
6649 | ||
6650 | * checks.ads (Apply_Accessibility_Check): Add parameter Insert_Node. | |
9e81dbc7 | 6651 | |
f32b9cd1 AC |
6652 | * checks.adb (Apply_Accessibility_Check): Insert the check on |
6653 | Insert_Node. | |
9e81dbc7 | 6654 | |
f32b9cd1 AC |
6655 | * exp_attr.adb: |
6656 | (Expand_N_Attribute_Refernce, Attribute_Access): Pass attribute node | |
6657 | to new parameter Insert_Node on call to Apply_Accessibility_Check. | |
6658 | Necessary to distinguish the insertion node because the dereferenced | |
6659 | formal may come from a rename, but the check must be inserted in | |
6660 | front of the attribute. | |
9e81dbc7 | 6661 | |
f32b9cd1 AC |
6662 | * exp_ch4.adb: |
6663 | (Expand_N_Allocator): Pass actual for new Insert_Node parameter on | |
6664 | call to Apply_Accessibility_Check. | |
6665 | (Expand_N_Type_Conversion): Pass actual for new Insert_Node parameter | |
6666 | on call to Apply_Accessibility_Check. | |
6667 | Minor reformatting | |
6668 | ||
6669 | 2008-07-31 Javier Miranda <miranda@adacore.com> | |
6670 | ||
6671 | * sem_type.adb (Has_Compatible_Type): Complete support for synchronized | |
6672 | types when the candidate type is a synchronized type. | |
9e81dbc7 | 6673 | |
f32b9cd1 AC |
6674 | * sem_res.adb (Resolve_Actuals): Reorganize code handling synchronized |
6675 | types, and complete management of synchronized types adding missing | |
6676 | code to handle formal that is a synchronized type. | |
9e81dbc7 | 6677 | |
f32b9cd1 AC |
6678 | * sem_ch4.adb (Try_Primitive_Operation): Avoid testing attributes that |
6679 | are not available and cause the compiler to blowup. Found compiling | |
6680 | test with switch -gnatc | |
9e81dbc7 | 6681 | |
f32b9cd1 AC |
6682 | * sem_ch6.adb (Check_Synchronized_Overriding): Remove local subprogram |
6683 | Has_Correct_Formal_Mode plus code cleanup. | |
6684 | ||
e92c92b2 AC |
6685 | 2008-07-31 Bob Duff <duff@adacore.com> |
6686 | ||
6687 | * sinput.adb (Skip_Line_Terminators): Fix handling of LF/CR -- it was | |
6688 | recognized as two end-of-lines, but it should be just one. | |
6689 | ||
6690 | 2008-07-31 Thomas Quinot <quinot@adacore.com> | |
6691 | ||
6692 | * exp_ch9.adb: Minor reformatting | |
6693 | ||
6694 | * tbuild.ads: Fix several occurrences of incorrectly referring to | |
6695 | Name_Find as Find_Name. | |
6696 | ||
6697 | 2008-07-31 Ed Schonberg <schonberg@adacore.com> | |
6698 | ||
6699 | * exp_aggr.adb (Aggr_Size_OK): If the aggregate has a single component | |
6700 | and the context is an object declaration with non-static bounds, treat | |
6701 | the aggregate as non-static. | |
6702 | ||
6703 | 2008-07-31 Vincent Celier <celier@adacore.com> | |
6704 | ||
6705 | * prj-part.adb, prj-part.ads, prj.adb, prj.ads, prj-env.adb: | |
6706 | Move back spec of Parse_Single_Project to body, as it is not called | |
6707 | outside of package Prj.Part. | |
6708 | (Project_Data): Remove components Linker_Name, Linker_Path and | |
6709 | Minimum_Linker_Options as they are no longer set. | |
6710 | Remove function There_Are_Ada_Sources from package Prj and move code | |
6711 | in the only place it was used, in Prj.Env.Set_Ada_Paths. | |
6712 | ||
ee5d7272 AC |
6713 | 2008-07-31 Arnaud Charlet <charlet@adacore.com> |
6714 | ||
6715 | * mlib-utl.ads: Fix typo. | |
6716 | ||
6717 | 2008-07-31 Robert Dewar <dewar@adacore.com> | |
6718 | ||
6719 | * sem_ch12.adb: Minor reformatting | |
6720 | ||
6721 | 2008-07-31 Sergey Rybin <rybin@adacore.com> | |
6722 | ||
6723 | * gnat_ugn.texi: Change the description of the | |
6724 | Overly_Nested_Control_Structures: now the rule always requires a | |
6725 | positive parameter for '+R' option | |
6726 | ||
6727 | 2008-07-31 Thomas Quinot <quinot@adacore.com> | |
6728 | ||
6729 | * g-pehage.adb: Minor reformatting | |
6730 | ||
6731 | 2008-07-31 Pascal Obry <obry@adacore.com> | |
6732 | ||
6733 | * s-finimp.ads: Minor reformatting. | |
6734 | ||
6735 | 2008-07-31 Vincent Celier <celier@adacore.com> | |
6736 | ||
6737 | * s-regexp.ads: Minor comment fix | |
6738 | ||
6739 | 2008-07-31 Arnaud Charlet <charlet@adacore.com> | |
6740 | ||
6741 | * s-direio.adb (Reset): Replace pragma Unmodified by Warnings (Off), | |
6742 | so that we can compile this file successfully with -gnatc. | |
6743 | ||
6744 | 2008-07-31 Hristian Kirtchev <kirtchev@adacore.com> | |
6745 | ||
6746 | * exp_attr.adb (Find_Stream_Subprogram): Check the base type instead | |
6747 | of the type when looking for stream subprograms for type String, | |
6748 | Wide_String and Wide_Wide_String. | |
9e81dbc7 | 6749 | |
ee5d7272 AC |
6750 | * s-ststop.adb: Change the initialization expression of constant |
6751 | Use_Block_IO. | |
6752 | ||
6753 | 2008-07-31 Geert Bosch <bosch@adacore.com> | |
6754 | ||
6755 | * arit64.c: | |
6756 | New file implementing __gnat_mulv64 signed integer multiplication with | |
6757 | overflow checking | |
6758 | ||
6759 | * fe.h (Backend_Overflow_Checks_On_Target): Define for use by Gigi | |
6760 | ||
6761 | * gcc-interface/gigi.h: | |
6762 | (standard_types): Add ADT_mulv64_decl | |
6763 | (mulv64_decl): Define subprogram declaration for __gnat_mulv64 | |
6764 | ||
6765 | * gcc-interface/utils.c: | |
6766 | (init_gigi_decls): Add initialization of mulv64_decl | |
6767 | ||
6768 | * gcc-interface/trans.c: | |
6769 | (build_unary_op_trapv): New function | |
6770 | (build_binary_op_trapv): New function | |
6771 | (gnat_to_gnu): Use the above functions instead of | |
6772 | build_{unary,binary}_op | |
6773 | ||
6774 | * gcc-interface/Makefile.in | |
6775 | (LIBGNAT_SRCS): Add arit64.c | |
6776 | (LIBGNAT_OBJS): Add arit64.o | |
6777 | ||
6778 | 2008-07-31 Vincent Celier <celier@adacore.com> | |
6779 | ||
6780 | * prj-nmsc.adb (Check_Library_Attributes): Check if Linker'Switches or | |
6781 | Linker'Default_Switches are declared. Warn if they are declared. | |
6782 | ||
6783 | 2008-07-31 Ed Schonberg <schonberg@adacore.com> | |
6784 | ||
6785 | * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Use | |
6786 | Insert_Actions to place the pointer declaration in the code, rather | |
6787 | than Insert_Before_And_Analyze, so that insertions of temporaries are | |
6788 | kept in the proper order when transient scopes are present. | |
6789 | ||
6790 | ||
b38c3c9e AC |
6791 | 2008-07-31 Robert Dewar <dewar@adacore.com> |
6792 | ||
6793 | * einfo.adb (Spec_PPC): Now defined for generic subprograms | |
9e81dbc7 | 6794 | |
b38c3c9e | 6795 | * einfo.ads (Spec_PPC): Now defined for generic subprograms |
9e81dbc7 | 6796 | |
b38c3c9e AC |
6797 | * sem_prag.adb (Check_Precondition_Postcondition): Handle generic |
6798 | subprogram case | |
6799 | ||
6800 | 2008-07-31 Vincent Celier <celier@adacore.com> | |
6801 | ||
6802 | * s-os_lib.adb: Minor comment fix | |
6803 | ||
6804 | 2008-07-31 Ed Schonberg <schonberg@adacore.com> | |
6805 | ||
6806 | * sem_ch6.adb (Analyze_Generic_Subprogram_Body): After analysis, | |
6807 | transfer pre/postconditions from generic copy to original tree, so that | |
6808 | they will appear in each instance. | |
6809 | (Process_PPCs): Do not transform postconditions into a procedure in a | |
6810 | generic context, to prevent double expansion of check pragmas. | |
9e81dbc7 | 6811 | |
b38c3c9e AC |
6812 | * sem_attr.adb: In an instance, the prefix of the 'result attribute |
6813 | can be the renaming of the | |
6814 | current instance, so check validity of the name accordingly. | |
6815 | ||
024238a2 AC |
6816 | 2008-07-31 Robert Dewar <dewar@adacore.com> |
6817 | ||
6818 | * mlib-utl.ads: Minor reformatting | |
6819 | ||
6820 | 2008-07-31 Ed Schonberg <schonberg@adacore.com> | |
6821 | ||
6822 | sem_attr.adb: 'Result can have an ambiguous prefix, and is resolved | |
6823 | from context. This attribute must be usable in Ada95 mode. | |
6824 | The attribute can appear in the body of a function marked | |
6825 | Inline_Always, but in this case the postocondition is not enforced. | |
9e81dbc7 | 6826 | |
024238a2 AC |
6827 | sem_prag.adb (Check_Precondition_Postcondition): within the expansion |
6828 | of an inlined call pre- and postconditions are legal | |
6829 | ||
6830 | 2008-07-31 Vincent Celier <celier@adacore.com> | |
6831 | ||
6832 | * prj.adb, prj.ads, clean.adb, prj-nmsc.adb: Remove declarations that | |
6833 | were for gprmake only | |
6834 | ||
6835 | 2008-07-31 Robert Dewar <dewar@adacore.com> | |
6836 | ||
6837 | * gnat_ugn.texi: Update -gnatN documentation. | |
6838 | ||
6839 | * gnat_rm.texi: Add note about pre/postcondition | |
6840 | pragmas not checked in conjunction with front-end inlining. | |
6841 | ||
035b2a77 AC |
6842 | 2008-07-31 Robert Dewar <dewar@adacore.com> |
6843 | ||
6844 | * g-pehage.adb, g-pehage.ads: Minor reformatting | |
6845 | ||
6846 | 2008-07-31 Arnaud Charlet <charlet@adacore.com> | |
6847 | ||
6848 | * mlib-utl.ads, prj-makr.ads: Add comments. | |
6849 | ||
636b71b9 AL |
6850 | 2008-07-30 Aaron W. LaFramboise <aaronavay62@aaronwl.com> |
6851 | ||
9e81dbc7 | 6852 | * gcc-interface/Makefile.in (EXTRA_GNATRTL_NONTASKING_OBJS) |
636b71b9 AL |
6853 | [WINDOWS]: Add s-winext.o. |
6854 | ||
01ddebf2 EB |
6855 | 2008-07-30 Eric Botcazou <ebotcazou@adacore.com> |
6856 | ||
6857 | PR ada/36554 | |
6858 | * back_end.adb (Call_Back_End): Pass Standard_Boolean to gigi. | |
6859 | * gcc-interface/gigi.h (gigi): Take new standard_boolean parameter. | |
6860 | * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Subtype>: | |
6861 | Set precision to 1 for subtype of BOOLEAN_TYPE. | |
6862 | (set_rm_size): Set TYPE_RM_SIZE_NUM for BOOLEAN_TYPE. | |
6863 | (make_type_from_size): Deal with BOOLEAN_TYPE. | |
6864 | * gcc-interface/misc.c (gnat_print_type): Likewise. | |
6865 | * gcc-interface/trans.c (gigi): Take new standard_boolean parameter. | |
6866 | Set boolean_type_node as its translation in the table, as well | |
6867 | as boolean_false_node for False and boolean_true_node for True. | |
6868 | * gcc-interface/utils.c (gnat_init_decl_processing): Create custom | |
6869 | 8-bit boolean_type_node and set its TYPE_RM_SIZE_NUM. | |
6870 | (create_param_decl): Deal with BOOLEAN_TYPE. | |
6871 | (build_vms_descriptor): Likewise. | |
6872 | (build_vms_descriptor64): Likewise. | |
6873 | (convert): Deal with BOOLEAN_TYPE like with ENUMERAL_TYPE. | |
6874 | ||
2a9cc4de AC |
6875 | 2008-07-30 Robert Dewar <dewar@adacore.com> |
6876 | ||
6877 | * exp_ch9.adb: Minor reformatting | |
6878 | ||
6879 | * exp_util.ads (Find_Prim_Op): Document that Program_Error is raised | |
6880 | if no primitive operation is found. | |
6881 | ||
6882 | * exp_util.adb: (Find_Prim_Op): Add comments for previous change | |
6883 | ||
6884 | * sem_ch8.adb: Minor reformatting | |
6885 | ||
6886 | 2008-07-30 Laurent Pautet <pautet@adacore.com> | |
6887 | ||
6888 | * g-pehage.adb: | |
6889 | Remove a limitation on the length of the words handled by the minimal | |
6890 | perfect hash function generator. | |
6891 | ||
6892 | * g-pehage.ads: | |
6893 | Detail the use of subprograms Insert, Initialize, Compute and Finalize. | |
6894 | Fix some typos. | |
6895 | ||
5cc6fa41 AC |
6896 | 2008-07-30 Robert Dewar <dewar@adacore.com> |
6897 | ||
6898 | * gnatlink.adb: Minor reformatting | |
6899 | ||
6900 | 2008-07-30 Thomas Quinot <quinot@adacore.com> | |
6901 | ||
6902 | * rtsfind.adb (Check_RPC): Check version consistency even when not | |
6903 | generating RCI stubs. Provide more detailed error message in case of | |
6904 | mismatch. | |
6905 | ||
6906 | 2008-07-30 Ed Schonberg <schonberg@adacore.com> | |
6907 | ||
6908 | * sem_ch8.adb (Analyze_Subprogram_Renaming): When renaming an attribute | |
6909 | as a actual in an instance, check for a missing attribute to prevent | |
6910 | program_error on an illegal program. | |
9e81dbc7 | 6911 | |
5cc6fa41 AC |
6912 | * exp_util.adb (Find_Prim_Op): Rather than Assert (False), raise program |
6913 | error if primitive is not found, so that exception can be handled | |
6914 | elsewhere on illegal programs. | |
6915 | ||
6916 | 2008-07-30 Robert Dewar <dewar@adacore.com> | |
6917 | ||
6918 | * uintp.adb (UI_GCD): Fix potential overflow | |
6919 | ||
6920 | 2008-07-30 Hristian Kirtchev <kirtchev@adacore.com> | |
6921 | ||
6922 | * einfo.adb: Flag245 is now used. | |
6923 | (Is_Primitive_Wrapper, Set_Is_Primitive_Wrapper): Relax the assertion | |
6924 | check to include functions. | |
6925 | (Is_Private_Primitive, Set_Is_Private_Primitive): New subprograms. | |
6926 | (Wrapped_Entity, Set_Wrapped_Entity): Relax the assertion check to | |
6927 | include functions. | |
6928 | (Write_Entity_Flags): Move flag Is_Primitive, add Is_Private_Primitive | |
6929 | to the list of displayed flags. | |
6930 | ||
6931 | * einfo.ads: Update comment on the usage of Is_Primitive_Wrapper and | |
6932 | Wrapped_Entity. These two flags are now present in functions. | |
6933 | New flag Is_Private_Primitive. | |
6934 | (Is_Private_Primitive, Set_Is_Private_Primitive): New subprograms. | |
6935 | ||
6936 | * exp_ch9.adb: | |
6937 | (Build_Wrapper_Bodies): New subprogram. | |
6938 | (Build_Wrapper_Body): The spec and body have been moved to in | |
6939 | Build_Wrapper_ Bodies. Code cleanup. | |
6940 | (Build_Wrapper_Spec): Moved to the spec of Exp_Ch9. Code cleanup. | |
6941 | Wrappers are now generated for primitives declared between the private | |
6942 | and full view of a concurrent type that implements an interface. | |
6943 | (Build_Wrapper_Specs): New subprogram. | |
6944 | (Expand_N_Protected_Body): Code reformatting. Replace the wrapper body | |
6945 | creation mechanism with a call to Build_Wrapper_Bodies. | |
6946 | (Expand_N_Protected_Type_Declaration): Code reformatting. Replace the | |
6947 | wrapper spec creation mechanism with a call to Build_Wrapper_Specs. | |
6948 | (Expand_N_Task_Body): Replace the wrapper body creation | |
6949 | mechanism with a call to Build_Wrapper_Bodies. | |
6950 | (Expand_N_Task_Type_Declaration): Replace the wrapper spec | |
6951 | creation mechanism with a call to Build_Wrapper_Specs. | |
6952 | (Is_Private_Primitive_Subprogram): New subprogram. | |
6953 | (Overriding_Possible): Code cleanup. | |
6954 | (Replicate_Entry_Formals): Renamed to Replicate_Formals, code cleanup. | |
6955 | ||
6956 | * exp_ch9.ads (Build_Wrapper_Spec): Moved from the body of Exp_Ch9. | |
6957 | ||
6958 | * sem_ch3.adb: Add with and use clause for Exp_Ch9. | |
6959 | (Process_Full_View): Build wrapper specs for all primitives | |
6960 | that belong to a private view completed by a concurrent type | |
6961 | implementing an interface. | |
9e81dbc7 | 6962 | |
5cc6fa41 AC |
6963 | * sem_ch6.adb (Analyze_Subprogram_Body): When the current subprogram |
6964 | is a primitive of a | |
6965 | concurrent type with a private view that implements an interface, try to | |
6966 | find the proper spec. | |
6967 | (Analyze_Subprogram_Declaration): Mark a subprogram as a private | |
6968 | primitive if the type of its first parameter is a non-generic tagged | |
6969 | private type. | |
6970 | (Analyze_Subprogram_Specification): Code reformatting. | |
6971 | (Disambiguate_Spec): New routine. | |
6972 | (Find_Corresponding_Spec): Add a flag to controll the output of errors. | |
6973 | (Is_Private_Concurrent_Primitive): New routine. | |
6974 | ||
6975 | * sem_ch6.ads: | |
6976 | (Find_Corresponding_Spec): Add a formal to control the output of errors. | |
6977 | ||
6ca2b0a0 DR |
6978 | 2008-07-30 Doug Rupp <rupp@adacore.com> |
6979 | ||
6980 | * gigi.h (build_vms_descriptor64): New function prototype. | |
6981 | (fill_vms_descriptor): Modified function prototype. | |
6982 | ||
6983 | * utils.c (build_vms_descriptor64): New function. | |
6984 | ||
6985 | * utils2.c (fill_vms_descriptor): Fix handling on 32bit systems. | |
6986 | ||
6987 | * trans.c (call_to_gnu): Call fill_vms_descriptor with new third | |
6988 | argument. | |
6989 | ||
6990 | * decl.c (gnat_to_gnu_tree): For By_Descriptor mech, build both a | |
6991 | 64bit and 32bit descriptor and save the 64bit version as an alternate | |
6992 | TREE_TYPE in the parameter. | |
6993 | (make_type_from_size) <RECORD_TYPE>: Use the appropriate mode for the | |
6994 | thin pointer. | |
6995 | ||
6996 | * ada-tree.h (DECL_PARM_ALT, SET_DECL_PARM_ALT): New macros. | |
6997 | ||
002b2ad6 AC |
6998 | 2008-07-30 Robert Dewar <dewar@adacore.com> |
6999 | ||
7000 | * make.adb: Minor reformatting | |
7001 | ||
7002 | * mlib-utl.adb: Minor reformatting | |
7003 | ||
7004 | * osint.ads: Minor reformatting | |
7005 | ||
7006 | 2008-07-30 Jose Ruiz <ruiz@adacore.com> | |
7007 | ||
7008 | * adaint.c | |
7009 | (__gnat_file_exists): Do not use __gnat_stat for RTX. | |
7010 | (__main for RTX in RTSS mode): Create this dummy procedure symbol to | |
7011 | avoid the use of this symbol from libgcc.a in RTX kernel mode. | |
7012 | ||
7013 | * cio.c | |
7014 | (put_int, put_int_stderr, put_char, put_char_stderr): For RTX we call | |
7015 | the function RtPrintf for console output. | |
9e81dbc7 | 7016 | |
002b2ad6 | 7017 | * argv.c Do not use the environ variable for RTX. |
9e81dbc7 | 7018 | |
002b2ad6 AC |
7019 | * gnatlink.adb (gnatlink): The part that handles the --RTS option has |
7020 | been moved before the call to Osint.Add_Default_Search_Dirs in order | |
7021 | to take into account the flags in system.ads (RTX_RTSS_Kernel_Module) | |
7022 | from the appropriate run time. | |
9e81dbc7 | 7023 | |
002b2ad6 AC |
7024 | * targparm.ads |
7025 | (RTX_RTSS_Kernel_Module_On_Target): Add this flag that is set to True if | |
7026 | target is a RTSS module for RTX. | |
9e81dbc7 | 7027 | |
002b2ad6 AC |
7028 | * targparm.adb (Targparm_Tags, RTX_Str, Targparm_Str): Add tag RTX for |
7029 | RTX_RTSS_Kernel_Module | |
7030 | (Get_Target_Parameters): Add processing of RTX_RTSS_Kernel_Module flag. | |
7031 | ||
7032 | * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for RTX): Use gcc | |
7033 | exception handling mechanism for Windows and RTX in Win32 mode, but | |
7034 | not for RTX in kernel mode (RTSS). | |
7035 | (LIBGNAT_SRCS): Remove ada.h | |
7036 | ||
00afcaa0 PB |
7037 | 2008-07-30 Paolo Bonzini <bonzini@gnu.org> |
7038 | ||
7039 | * gcc-interface/Make-lang.in (ALL_ADAFLAGS): Remove X_ADAFLAGS and | |
7040 | T_ADAFLAGS, replace ALL_ADA_CFLAGS with ADA_CFLAGS. | |
7041 | (ALL_ADA_CFLAGS): Remove, replace throughout with ADA_CFLAGS. | |
7042 | * gcc-interface/Makefile.in (XCFLAGS, X_CFLAGS, X_CPPFLAGS, T_CPPFLAGS, | |
7043 | X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS, ADA_CFLAGS, | |
7044 | ALL_ADA_CFLAGS): Remove. | |
7045 | (ALL_ADAFLAGS, MOST_ADAFLAGS): Remove X_ADAFLAGS and T_ADAFLAGS, | |
7046 | replace ALL_ADA_CFLAGS with ADA_CFLAGS. | |
7047 | (GCC_CFLAGS): Remove X_CFLAGS. | |
7048 | (LOOSE_CFLAGS): Remove X_CFLAGS and XCFLAGS. | |
7049 | (ALL_CPPFLAGS): Remove X_CPPFLAGS and T_CPPFLAGS. | |
7050 | (ADA_CFLAGS): Substitute. | |
7051 | ||
a7dafa20 LG |
7052 | 2008-07-30 Laurent Guerby <laurent@guerby.net> |
7053 | ||
9e81dbc7 AS |
7054 | PR ada/5911 |
7055 | * gcc-interface/Makefile.in (MULTISUBDIR, RTSDIR): New variables. | |
7056 | Pass MULTISUBDIR to recursive make. Use $(RTSDIR) instead of rts. | |
7057 | Replace stamp-gnatlib* by stamp-gnatlib*-rts. | |
7058 | * gcc-interface/Make-lang.in: Replace stamp-gnatlib2 | |
7059 | by stamp-gnatlib2-rts. | |
7060 | ||
70b1e376 RW |
7061 | 2008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
7062 | ||
7063 | PR documentation/15479 | |
7064 | * gnat-style.texi: Remove AdaCore copyright statement and GPL | |
7065 | statement for GNAT. Add @copying stanza, use it. Update to | |
7066 | GFDL 1.2. Do not list GFDL as Invariant Section, do not list | |
7067 | title as Front-Cover Text. | |
7068 | * gnat_rm.texi: Likewise. | |
7069 | * gnat_ugn.texi: Likewise. | |
7070 | ||
343eba42 JH |
7071 | 2008-07-29 Jan Hubicka <jh@suse.cz> |
7072 | ||
7073 | * trans.c (process_inlined_subprograms): Remove tree_really_inline | |
7074 | check. | |
7075 | ||
ebf5ba04 AC |
7076 | 2008-07-29 Arnaud Charlet <charlet@adacore.com> |
7077 | ||
7078 | * gcc-interface: New directory. | |
7079 | ||
7080 | * ada-tree.def, cuintp.c, gigi.h, Makefile.in, targtyps.c, ada.h, | |
7081 | utils.c, ada-tree.h, decl.c, lang.opt, Make-lang.in, trans.c, | |
7082 | config-lang.in, deftarg.c, lang-specs.h, misc.c, utils2.c: Moved | |
7083 | to gcc-interface subdirectory. | |
7084 | ||
46897370 AL |
7085 | 2008-07-29 Aaron W. LaFramboise <aaronavay62@aaronwl.com> |
7086 | ||
7087 | * Makefile.in (EXTRA_GNATRTL_NONTASKING_OBJS): Remove extra s-win32.o. | |
7088 | ||
e90acd93 JH |
7089 | 2008-07-28 Jan Hubicka <jh@suse.cz> |
7090 | ||
7091 | * misc.c (gnat_post_options): Do not set flag_no_inline. | |
7092 | ||
726a989a RB |
7093 | 2008-07-28 Richard Guenther <rguenther@suse.de> |
7094 | ||
7095 | Merge from gimple-tuples-branch. | |
7096 | ||
7097 | 2008-07-22 Olivier Hainque <hainque@adacore.com> | |
7098 | ||
7099 | * gigi.h (end_subprog_body): New ELAB_P argument, saying if | |
7100 | this is called for an elab proc to be discarded if empty. | |
7101 | * utils.c (end_subprog_body): Honor ELAB_P. | |
7102 | (build_function_stub): Adjust call to end_subprog_body. | |
7103 | * trans.c (Subprogram_Body_to_gnu): Likewise. | |
7104 | (gigi): Reorganize processing of elab procs to prevent | |
7105 | gimplifying twice, using the new end_subprog_body argument. | |
7106 | ||
7107 | 2008-07-19 Richard Guenther <rguenther@suse.de> | |
7108 | ||
7109 | * Make-lang.in (trans.o): Add tree-iterator.h dependency. | |
7110 | (utils.o): Likewise. | |
7111 | * trans.c: Include tree-iterator.h. | |
7112 | (gnat_gimplify_expr): Adjust prototype. Fix typo. | |
7113 | (gnat_gimplify_stmt): Use SET_EXPR_LOCATION. | |
7114 | (set_expr_location_from_node): Likewise. | |
7115 | (gigi): Tuplify. | |
7116 | * ada-tree.h (union lang_tree_node): Use TREE_CHAIN instead | |
7117 | of GENERIC_NEXT. | |
7118 | * utils.c: Include tree-iterator.h. | |
7119 | * gigi.h (gnat_gimplify_expr): Adjust prototype. | |
7120 | ||
7121 | 2008-07-18 Aldy Hernandez <aldyh@redhat.com> | |
7122 | ||
7123 | * trans.c: Include gimple.h instead of tree-gimple.h. | |
7124 | * utils.c: Same. | |
7125 | ||
7126 | 2008-07-14 Aldy Hernandez <aldyh@redhat.com> | |
7127 | ||
7128 | * trans.c (gnat_gimplify_expr): Use gimplify_assign. | |
7129 | ||
8ae3959e | 7130 | 2008-07-25 Jan Hubicka <jh@suse.cz> |
7e8b322a | 7131 | |
8ae3959e EB |
7132 | * utils.c (end_subprog_body): Remove inline trees check. |
7133 | * misc.c (gnat_post_options): Do not set flag_inline_trees. | |
7e8b322a | 7134 | |
4a7bb85b RO |
7135 | 2008-07-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
7136 | ||
7137 | * raise-gcc.c: Move tsystem.h before tm.h. | |
7138 | ||
ec45d105 AC |
7139 | 2008-07-20 Arnaud Charlet <charlet@adacore.com> |
7140 | ||
7141 | * gnathtml.pl: New file. | |
7142 | ||
95331614 | 7143 | 2008-07-19 Olivier Hainque <hainque@adacore.com> |
8ae3959e | 7144 | |
95331614 OH |
7145 | * targtyps.c (get_target_default_allocator_alignment): Use |
7146 | MALLOC_ABI_ALIGNMENT. | |
7147 | ||
dd7ac716 OH |
7148 | 2008-07-17 Olivier Hainque <hainque@adacore.com> |
7149 | ||
7150 | * adaint.c (__MINGW32__ section): Include ctype.h and define | |
7151 | a fallback ISALPHA if IN_RTS. | |
9e81dbc7 | 7152 | (__gnat_is_absolute_path): Use ISALPHA instead of isalpha. |
dd7ac716 | 7153 | |
a7a46bb2 OH |
7154 | 2008-07-17 Olivier Hainque <hainque@adacore.com> |
7155 | ||
7156 | * utils.c (create_var_decl_1): Relax expectations on the PUBLIC_FLAG | |
7157 | argument, to apply to references in addition to definitions. Prevent | |
7158 | setting TREE_STATIC on externals. | |
7159 | (gnat_pushdecl): Always clear DECL_CONTEXT on public externals. | |
7160 | ||
66bfd481 RW |
7161 | 2008-07-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
7162 | ||
7163 | PR documentation/15479 | |
7164 | * gnat_ugn.texi (@ovar): New macro, from autoconf.texi. | |
7165 | Replace backets around optional parameters with @ovar | |
7166 | where possible, use @r{[}, @r{]} otherwise. | |
7167 | Replace some @r, @i, and @emph with @var where appropriate. | |
7168 | ||
7a803dd8 EB |
7169 | 2008-07-02 Eric Botcazou <ebotcazou@adacore.com> |
7170 | ||
7171 | * decl.c (make_type_from_size) <INTEGER_TYPE>: Fix typo and tidy up. | |
7172 | ||
7d71283c KG |
7173 | 2008-06-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7174 | ||
7175 | * ada-tree.h (SET_TYPE_LANG_SPECIFIC, SET_DECL_LANG_SPECIFIC): Fix | |
7176 | -Wc++-compat warnings. | |
7177 | * adaint.c (__gnat_locate_regular_file, __gnat_locate_exec, | |
7178 | __gnat_locate_exec_on_path): Likewise. | |
7179 | * decl.c (annotate_value): Likewise. | |
7180 | * misc.c (gnat_handle_option): Likewise. | |
7181 | * trans.c (gnat_to_gnu, extract_encoding, decode_name, | |
7182 | post_error_ne_tree): Likewise. | |
7183 | ||
d9338c67 EB |
7184 | 2008-06-27 Eric Botcazou <ebotcazou@adacore.com> |
7185 | ||
7186 | * utils.c (convert) <CONSTRUCTOR>: When converting it to a packable | |
7187 | version of its type, attempt to first convert its elements. | |
7188 | ||
b4b010ad CP |
7189 | 2008-06-26 Chris Proctor <chrisp_42@bigpond.com> |
7190 | ||
7191 | * Makefile.in: Fix *86 kfreebsd target specific pairs. | |
7192 | ||
0ee61065 ST |
7193 | 2008-06-25 Samuel Tardieu <sam@rfc1149.net> |
7194 | ||
7195 | * Makefile.in: Use mlib-tgt-specific-linux.adb for sh4 as well. | |
7196 | ||
324ed5a6 EB |
7197 | 2008-06-24 Eric Botcazou <ebotcazou@adacore.com> |
7198 | ||
7199 | * utils2.c (known_alignment): Derive the alignment from pointed-to | |
7200 | types only if it is otherwise unknown. | |
7201 | <INTEGER_CST>: Tidy. | |
7202 | <MULT_EXPR>: Likewise. | |
7203 | <POINTER_PLUS_EXPR>: If the alignment of the offset is unknown, use | |
7204 | that of the base. | |
7205 | ||
2d31e498 JDA |
7206 | 2008-06-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
7207 | ||
7208 | PR ada/36573 | |
7209 | * s-osinte-hpux-dce.ads (SA_ONSTACK): Define. | |
7210 | ||
6ccde948 RW |
7211 | 2008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
7212 | ||
7213 | * gnat_rm.texi (Implementation Defined Characteristics) | |
7214 | (Standard Library Routines): Use @smallexample for indented | |
7215 | text. Drop Indentation outside examples. | |
7216 | * gnat_ugn.texi: Likewise. | |
7217 | ||
d8612af2 OH |
7218 | 2008-06-13 Olivier Hainque <hainque@adacore.com> |
7219 | ||
7220 | * decl.c (FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN): Define to 0 | |
7221 | if undefined. | |
7222 | (gnat_to_gnu_entity) <case E_Function/Procedure>: Request stack | |
7223 | realignment with force_align_arg_pointer attribute on foreign | |
7224 | convention subprograms if FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN. | |
9e81dbc7 | 7225 | |
ca789c7f OH |
7226 | 2008-06-13 Olivier Hainque <hainque@adacore.com> |
7227 | ||
7228 | * utils.c (rest_of_record_type_compilation): When computing | |
7229 | encodings for the components of a variable size type, early | |
7230 | strip conversions on the current position expression to make | |
7231 | sure it's shape is visible. Use remove_conversions for this | |
7232 | purpose. | |
7233 | ||
1dd4a3e6 EB |
7234 | 2008-06-12 Eric Botcazou <ebotcazou@adacore.com> |
7235 | ||
7236 | * decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: In the case of a | |
7237 | constrained subtype of a discriminated type, discard the fields that | |
7238 | are beyond its limits according to its size. | |
7239 | ||
12ae9b26 OH |
7240 | 2008-06-10 Olivier Hainque <hainque@adacore.com> |
7241 | ||
7242 | * utils.c (create_subprog_decl): If this is for the 'main' entry | |
7243 | point according to the asm name, redirect main_identifier_node. | |
7244 | ||
912cb442 EB |
7245 | 2008-06-09 Eric Botcazou <ebotcazou@adacore.com> |
7246 | ||
7247 | * decl.c (components_to_record): Adjust the packedness for the | |
7248 | qualified union as well. | |
7249 | ||
4a598c32 AC |
7250 | 2008-06-09 Arnaud Charlet <charlet@adacore.com> |
7251 | ||
7252 | * Make-lang.in: Use -gnatwns instead of -gnatws to make sytyle | |
7253 | checks non fatal. | |
7254 | ||
4b92fd3c ST |
7255 | 2008-06-07 Samuel Tardieu <sam@rfc1149.net> |
7256 | ||
7257 | * sem_res.adb (Large_Storage_Type): A type is large if it | |
7258 | requires as many bits as Positive to store its values and its | |
7259 | bounds are known at compile time. | |
7260 | * sem_ch13.adb (Minimum_Size): Note that this function returns | |
7261 | 0 if the size is not known at compile time. | |
7262 | ||
968c8001 OH |
7263 | 2008-06-06 Nicolas Setton <setton@adacore.com> |
7264 | Olivier Hainque <hainque@adacore.com> | |
7265 | ||
7266 | * ada-tree.h (DECL_PARALLEL_TYPE): New language specific | |
7267 | attribute, parallel descriptive type attached to another | |
7268 | type for debug info generation purposes. | |
7269 | * utils.c (add_parallel_type): New function, register | |
7270 | parallel type to be attached to a type. | |
7271 | (get_parallel_type): New function, fetch a registered | |
7272 | parallel type, if any. | |
7273 | (rest_of_record_type_compilation): Register the parallel | |
7274 | type we make for variable size records. | |
7275 | * gigi.h (add_parallel_type, get_parallel_type): Declare. | |
7276 | * decl.c (gnat_to_gnu_entity, maybe_pad_type): Register the | |
7277 | parallel debug types we make. | |
7278 | * trans.c (extract_encoding, decode_name): New functions. | |
7279 | (gigi): If the DWARF attribute extensions are available, setup | |
7280 | to use them. | |
7281 | * lang.opt: Register language specific processing request | |
7282 | for -gdwarf+. | |
7283 | * misc.c (gnat_dwarf_extensions): New global variable. How much | |
7284 | do we want of our DWARF extensions. 0 by default. | |
7285 | (gnat_handle_option) <OPT_gdwarf_>: Increment gnat_dwarf_extensions. | |
7286 | (gnat_post_options): Map gnat_dwarf_extensions to the | |
7287 | commonuse_gnu_debug_info_extensions for later processing. | |
9e81dbc7 | 7288 | |
b30199b8 ST |
7289 | 2008-06-04 Samuel Tardieu <sam@rfc1149.net> |
7290 | ||
7291 | * einfo.ads, einfo.adb: Remove unused flag Function_Returns_With_DSP. | |
7292 | ||
30783513 RW |
7293 | 2008-06-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
7294 | ||
7295 | * Makefile.in (common_tools): Fix typos in $(exeext) extension. | |
7296 | * gnat_ugn.texi (Style Checking) | |
7297 | (Adding the Results of Compiler Checks to gnatcheck Output) | |
7298 | (Example of Binder Output File): Fix typos. | |
7299 | * ali.ads, einfo.ads, exp_ch4.adb, exp_ch6.adb, | |
7300 | exp_dbug.ads, exp_dist.adb, exp_smem.adb, g-socket.ads, | |
7301 | s-osinte-rtems.ads, s-shasto.ads, s-stausa.adb, | |
7302 | s-stausa.ads, sem_cat.adb, sem_ch12.adb, sem_ch3.adb, | |
7303 | sem_ch4.adb, sem_ch6.adb, sem_ch8.adb, sem_util.ads, | |
7304 | sinfo.ads, utils.c: Fix typos in comments. | |
7305 | * sem_ch6.adb, vms_data.ads: Fix typos in strings. | |
7306 | ||
fb8368fd AC |
7307 | 2008-05-29 Thomas Quinot <quinot@adacore.com> |
7308 | ||
7309 | * sem_eval.adb: Minor reformatting | |
7310 | ||
7311 | 2008-05-29 Ed Schonberg <schonberg@adacore.com> | |
7312 | ||
7313 | * sem_ch6.adb (Analyze_Subprogram_Specification): if the return type | |
7314 | is abstract, do not apply abstractness check on subprogram if this is | |
7315 | a renaming declaration. | |
7316 | ||
7317 | 2008-05-29 Arnaud Charlet <charlet@adacore.com> | |
7318 | ||
7319 | PR ada/864 | |
7320 | * osint.ads, osint.adb (Program_Name): New parameter "Prog" to | |
7321 | allow recognition of program suffix in addition to prefix. | |
9e81dbc7 | 7322 | |
fb8368fd | 7323 | * gnatchop.adb (Locate_Executable): Add support for prefix. |
9e81dbc7 | 7324 | |
fb8368fd AC |
7325 | * make.adb, gnatcmd.adb, gnatlink.adb, prj-makr.adb, |
7326 | mlib-utl.adb: Adjust calls to Program_Name. | |
7327 | ||
fff3f472 AC |
7328 | 2008-05-29 Robert Dewar <dewar@adacore.com> |
7329 | ||
7330 | * sem_ch3.adb: Minor reformatting | |
7331 | * sem_prag.adb: Minor reformatting | |
7332 | * sem_res.adb: Minor reformatting | |
7333 | * sinput-p.ads: Minor reformatting | |
7334 | ||
7335 | 2008-05-29 Javier Miranda <miranda@adacore.com> | |
7336 | ||
7337 | * sem_util.adb: | |
7338 | (Abstract_Interface_List): Add missing support for full type-declaration | |
7339 | associated with synchronized types. | |
7340 | ||
7341 | 2008-05-29 Robert Dewar <dewar@adacore.com> | |
7342 | ||
7343 | * sem_eval.adb (Is_Same_Value): Take care of several more cases | |
7344 | ||
acca98c0 AC |
7345 | 2008-05-28 Ed Schonberg <schonberg@adacore.com> |
7346 | ||
7347 | * sem_ch5.adb (Analyze_Assignment): If the name is of a local anonymous | |
7348 | access type, wrap the expression in a conversion to force an | |
7349 | accessibility check. | |
7350 | ||
7351 | * sem_aggr.adb (Aggegate_Constraint_Checks): Apply conversion to force | |
7352 | accessibility checks even when expansion is disabled in order to | |
7353 | generate messages in the presence of previous errors or in | |
7354 | semantics-only mode. | |
7355 | ||
7356 | 2008-05-28 Eric Botcazou <ebotcazou@adacore.com> | |
7357 | ||
7358 | * system-lynxos-ppc.ads (Always_Compatible_Rep): Set to False. | |
7359 | * system-lynxos-x86.ads (Always_Compatible_Rep): Set to False. | |
7360 | ||
7361 | 2008-05-28 Vincent Celier <celier@adacore.com> | |
7362 | ||
7363 | PR ada/34446 | |
7364 | * gnat_ugn.texi: Document restriction introduced on 2007-04-20 in | |
7365 | preprocessing expressions | |
7366 | ||
7367 | 2008-05-28 Vincent Celier <celier@adacore.com> | |
7368 | ||
7369 | * sinput-p.adb (Source_File_Is_Subunit): Allow special character used | |
7370 | for preprocessing | |
9e81dbc7 | 7371 | |
acca98c0 AC |
7372 | * sinput-p.ads: Minor comment update and reformatting |
7373 | ||
7374 | 2008-05-28 Ed Schonberg <schonberg@adacore.com> | |
7375 | ||
7376 | * sem_res.adb (Valid_Conversion): An anonymous access_to_subprogram | |
7377 | type has a deeper level than any master only when it is the type of an | |
7378 | access parameter. | |
7379 | ||
8250171b AC |
7380 | 2008-05-28 Javier Miranda <miranda@adacore.com> |
7381 | ||
7382 | * sem_ch3.adb (Derive_Progenitor_Subprograms): Add documentation. | |
7383 | ||
7384 | 2008-05-28 Javier Miranda <miranda@adacore.com> | |
7385 | ||
7386 | * sem_util.ads (Find_Overridden_Synchronized_Primitive): Removed. | |
7387 | * sem_util.adb (Find_Overridden_Synchronized_Primitive): Removed. | |
7388 | * sem_ch6.adb (Check_Synchronized_Overriding): Remove one formal. | |
7389 | Add code that was previously located in | |
7390 | Find_Overridden_Synchronized_Primitive because it is only used here. | |
7391 | ||
7392 | 2008-05-28 Sergey Rybin <rybin@adacore.com> | |
7393 | ||
7394 | * sem_prag.adb (Process_Extended_Import_Export_Subprogram_Pragma): Set | |
7395 | Entity field for formal_parameter_NAME in MECHANISM_ASSOCIATION. | |
7396 | ||
00ea9517 RD |
7397 | 2008-05-28 Robert Dewar <dewar@adacore.com> |
7398 | ||
7399 | * restrict.ads: | |
7400 | Add missing restrictions, and properly label all GNAT defined ones | |
9e81dbc7 | 7401 | |
00ea9517 RD |
7402 | * rtsfind.ads: |
7403 | Add entry for Ada_Real_Time.Timing_Events.Timing_Event | |
7404 | Add entry for Ada.Task_Termination.Set_Specific_Handler | |
7405 | Add entry for Ada.Task_Termination.Specific_Handler | |
9e81dbc7 | 7406 | |
00ea9517 RD |
7407 | * s-rident.ads: |
7408 | Add missing restrictions and properly mark all gnat defined ones | |
9e81dbc7 | 7409 | |
00ea9517 RD |
7410 | * sem_ch3.adb: |
7411 | (Analyze_Object_Declaration): Check No_Local_Timing_Events restriction | |
9e81dbc7 | 7412 | |
00ea9517 RD |
7413 | * sem_res.adb: |
7414 | (Resolve_Call): Check violation of No_Specific_Termination_Handlers | |
7415 | ||
7416 | * gnat_rm.texi: Add missing restrictions, and properly label all | |
7417 | GNAT defined ones | |
7418 | ||
7419 | 2008-05-28 Robert Dewar <dewar@adacore.com> | |
7420 | ||
7421 | * restrict.adb: | |
7422 | (Check_Restriction): violation of restriction No_Finalization is | |
7423 | treated as a serious error to stop expansion | |
7424 | ||
7425 | 2008-05-28 Robert Dewar <dewar@adacore.com> | |
7426 | ||
7427 | * exp_util.adb: Minor reformatting | |
7428 | * exp_util.ads: Minor reformatting. | |
7429 | ||
0b795892 AC |
7430 | 2008-05-28 Arnaud Charlet <charlet@adacore.com> |
7431 | ||
7432 | * Make-lang.in: Remove gprmake. | |
7433 | ||
7434 | * gprmake.adb, makegpr.ads, makegpr.adb: Removed. | |
7435 | ||
5840819a AC |
7436 | 2008-05-28 Ed Schonberg <schonberg@adacore.com> |
7437 | ||
7438 | * sem_ch3.adb (Diagnose_Interface): Cleanup error messages involving | |
7439 | improper progenitor names, and avoid cascaded errors. | |
7440 | ||
7441 | 2008-05-28 Robert Dewar <dewar@adacore.com> | |
7442 | ||
7443 | * gnat_rm.texi: Add note on Old giving warning when applied to constant | |
7444 | ||
7445 | * sem_attr.adb (Analyze_Attribute, case Old): Give warning if prefix is | |
7446 | a constant | |
7447 | ||
7448 | 2008-05-28 Robert Dewar <dewar@adacore.com> | |
7449 | ||
7450 | * exp_fixd.adb (Build_Multiply): Correct one-off error in computing | |
7451 | size | |
7452 | ||
7453 | 2008-05-28 Robert Dewar <dewar@adacore.com> | |
7454 | ||
7455 | * exp_ch5.adb: | |
7456 | (Expand_Simple_Function_Return): Copy unaligned result into temporary | |
7457 | ||
8c3dd7a8 JM |
7458 | 2008-05-28 Javier Miranda <miranda@adacore.com> |
7459 | ||
7460 | * sem_ch3.adb (Derive_Progenitor_Primitives): Add missing support | |
7461 | for user-defined predefined primitives. | |
9e81dbc7 | 7462 | |
8c3dd7a8 JM |
7463 | * sem_util.adb (Matches_Prefixed_View_Profile): Ditto. |
7464 | (Find_Overridden_Synchronized_Primitive): Ditto. | |
7465 | ||
7466 | * sem_ch6.adb (Check_Synchronized_Overriding): Ditto. | |
7467 | ||
35b80405 AC |
7468 | 2008-05-27 Arnaud Charlet <charlet@adacore.com> |
7469 | ||
7470 | * a-ststio.adb, s-direio.adb: | |
7471 | Further code clean up of previous change. | |
7472 | Update comments. | |
7473 | ||
7474 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7475 | ||
7476 | * prj-nmsc.adb: Minor reformatting | |
7477 | ||
7478 | 2008-05-27 Bob Duff <duff@adacore.com> | |
7479 | ||
7480 | * sem_ch3.adb (Build_Incomplete_Type_Declaration): In the case of an | |
7481 | untagged private type with a tagged full type, where the full type has | |
7482 | a self reference, create the corresponding class-wide type early, in | |
7483 | case the self reference is "access T'Class". | |
7484 | ||
7485 | 2008-05-27 Ed Schonberg <schonberg@adacore.com> | |
7486 | ||
7487 | * exp_aggr.adb (Build_Array_Aggr_Code): If component type includes | |
7488 | tasks and context is an object declaration. create master entity before | |
7489 | expansion. | |
7490 | ||
7491 | 2008-05-27 Robert Dewar <dewar@adacore.com> | |
7492 | ||
7493 | * mlib-prj.adb: Minor reformatting | |
7494 | ||
7495 | * prj-part.adb: Minor reformatting | |
7496 | ||
7497 | * prj.ads: Minor reformatting | |
7498 | ||
7499 | * exp_ch3.adb: Minor reformatting. | |
7500 | ||
7501 | * sem_ch3.ads: Minor reformatting | |
7502 | ||
7503 | * sem_eval.adb: Minor reformatting | |
7504 | ||
d5c998a9 AC |
7505 | 2008-05-27 Vincent Celier <celier@adacore.com> |
7506 | ||
7507 | * gnatcmd.adb: | |
7508 | <prefix>-gnat stack spawns gnatstack, not <prefix>-gnatstack | |
7509 | ||
7510 | 2008-05-27 Ed Schonberg <schonberg@adacore.com> | |
7511 | ||
7512 | * exp_aggr.adb (Expand_Array_Aggregate): If the aggregate contains | |
7513 | tasks, create an activation chain now, before the expansion into | |
7514 | assignments and build-in-place calls that require the presence of an | |
7515 | activation chain. | |
7516 | (Backend_Processing_Possible): If the component type is inherently | |
7517 | limited, the aggregate must be expanded into individual built-in-place | |
7518 | assignments. | |
7519 | ||
7520 | * sem_ch6.adb (Build_Extra_Formals): Use underlying type of result to | |
7521 | determine whether an allocation extra parameter must be built, to | |
7522 | handle case of a private type whose full type is a discriminated type | |
7523 | with defaults. | |
7524 | ||
7525 | 2008-05-27 Bob Duff <duff@adacore.com> | |
7526 | ||
7527 | * gnat_rm.texi: | |
7528 | Document the new behavior regarding trampolines. | |
7529 | ||
7530 | 2008-05-27 Arnaud Charlet <charlet@adacore.com> | |
7531 | ||
7532 | * a-direio.adb, a-sequio.adb: Replace address clause by | |
7533 | unrestricted_access, simpler and compatible with .NET. | |
7534 | ||
7535 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7536 | ||
7537 | * prj-part.adb: | |
7538 | (Project_Path_Name_Of.Try_Path): Do not use Locate_Regular_File to find | |
7539 | a project file, so that symbolic links are not resolved. | |
7540 | ||
7541 | 2008-05-27 Arnaud Charlet <charlet@adacore.com> | |
7542 | ||
7543 | * a-ztexio.adb, a-textio.adb, a-witeio.adb, s-direio.adb: | |
7544 | Replace heavy address clause by 'Unrestricted_Access, cleaner and more | |
7545 | portable across GNAT targets, since this kind of address clause is not | |
7546 | supported by VM back-ends (.NET/JGNAT). | |
7547 | ||
79d2a727 AC |
7548 | 2008-05-27 Arnaud Charlet <charlet@adacore.com> |
7549 | ||
7550 | * bindgen.adb: Update comments. | |
9e81dbc7 | 7551 | |
79d2a727 AC |
7552 | * s-tasinf-mingw.adb: Add "with" of System.OS_Interface |
7553 | ||
7554 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7555 | ||
7556 | * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, | |
7557 | prj.ads, makegpr.adb, makeutl.adb, clean.adb, prj-nmsc.adb, | |
7558 | mlib-tgt.adb, prj-env.adb, prj-env.ads: | |
7559 | (Path_Information): New record type | |
7560 | Use component of type Path_Information when there are two paths, one in | |
7561 | canonical format and one in display format. | |
7562 | Update the project manager to these new components. | |
7563 | ||
0f99f391 AC |
7564 | 2008-05-27 Robert Dewar <dewar@adacore.com> |
7565 | ||
7566 | * makeutl.adb: Minor reformatting | |
7567 | * prj-nmsc.adb: Minor reformatting | |
7568 | * s-stausa.adb: Minor reformatting | |
7569 | * s-stausa.ads: Minor reformatting | |
7570 | * sem_ch6.adb: Minor reformatting | |
7571 | ||
7572 | 2008-05-27 Thomas Quinot <quinot@adacore.com> | |
7573 | ||
7574 | * sem_res.adb: Minor comment fixes | |
7575 | ||
d18af35f AC |
7576 | 2008-05-27 Thomas Quinot <quinot@adacore.com> |
7577 | ||
7578 | * makeutl.adb: Minor code reorganization | |
7579 | ||
7580 | * exp_aggr.adb: Add ??? comment | |
7581 | Fix typo | |
7582 | ||
7583 | * exp_ch6.adb: Minor reformatting | |
7584 | ||
7585 | 2008-05-27 Quentin Ochem <ochem@adacore.com> | |
7586 | ||
7587 | * s-stausa.adb (Initialize): Updated result initialization, and | |
7588 | initialization of environment stack. | |
7589 | (Fill_Stack): Improved computation of the pattern zone, taking into | |
7590 | account already filled at the calling point. | |
7591 | (Get_Usage_Range): Now uses Min_Measure and Max_Measure instead of | |
7592 | Measure and Overflow_Guard. | |
7593 | (Report_Result): Fixed computation of the result using new fields of | |
7594 | Stack_Analyzer. | |
9e81dbc7 | 7595 | |
d18af35f AC |
7596 | * s-stausa.ads (Initialize_Analyzer): Replaced Size / Overflow_Guard |
7597 | params by more explicit Stack_Size / Max_Pattern_Size params. | |
7598 | (Stack_Analyzer): Added distinct Stack_Size & Pattern_Size fields. | |
7599 | Added Stack_Used_When_Filling field. | |
7600 | (Task_Result): Replaced Measure / Overflow_Guard by more explicit | |
7601 | Min_Measure and Max_Measure fields. | |
9e81dbc7 | 7602 | |
d18af35f AC |
7603 | * s-tassta.adb (Task_Wrapper): Updated call to Initialize_Analyzer. |
7604 | ||
7605 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7606 | ||
7607 | * prj-nmsc.adb: | |
7608 | (Check_File): Make sure that a unit that replaces the same unit in a | |
7609 | project being extended is properly processed. | |
7610 | ||
7611 | 2008-05-27 Ed Schonberg <schonberg@adacore.com> | |
7612 | ||
7613 | * sem_ch3.adb: | |
7614 | (Get_Discr_Value): Remove obsolete code that failed to find the value | |
7615 | of a discriminant for an inherited task component appearing in a type | |
7616 | extension. | |
7617 | ||
7618 | 2008-05-27 Thomas Quinot <quinot@adacore.com> | |
7619 | ||
7620 | (System.File_IO.{Close, Delete, Reset}): | |
7621 | Change File parameter from "in out AFCB_Ptr" to "access AFCB_Ptr". | |
9e81dbc7 | 7622 | |
d18af35f AC |
7623 | (Ada.*_IO.{Close, Delete, Reset, Set_Mode}): |
7624 | Pass File parameter by reference. | |
7625 | ||
aeff280b AC |
7626 | 2008-05-27 Vincent Celier <celier@adacore.com> |
7627 | ||
7628 | * prj-nmsc.adb: | |
7629 | (Process_Sources_In_Multi_Language_Mode): Check that there are not two | |
7630 | sources of the same project that have the same object file name. | |
7631 | (Find_Explicit_Sources): Always remove a source exception that was not | |
7632 | found. | |
7633 | ||
7634 | 2008-05-27 Thomas Quinot <quinot@adacore.com> | |
7635 | ||
7636 | * sem_ch3.adb: Minor reformatting | |
7637 | ||
7638 | 2008-05-27 Ed Schonberg <schonberg@adacore.com> | |
7639 | ||
7640 | * sem_ch6.adb: | |
7641 | (Is_Interface_Conformant): Handle properly a primitive operation that | |
7642 | overrides an interface function with a controlling access result. | |
7643 | (Type_Conformance): If Skip_Controlling_Formals is true, when matching | |
7644 | inherited and overriding operations, omit as well the conformance check | |
7645 | on result types, to prevent spurious errors. | |
7646 | ||
7647 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7648 | ||
7649 | * makeutl.ads, makeutl.adb: | |
7650 | (Set_Location): New procedure | |
7651 | (Get_Location): New function | |
7652 | (Update_Main): New procedure | |
7653 | ||
7bf402c1 AC |
7654 | 2008-05-27 Vincent Celier <celier@adacore.com> |
7655 | ||
7656 | * prj-nmsc.adb: | |
7657 | (Check_Library): Allow standard project to be extended as a static | |
7658 | library project. | |
7659 | (Get_Mains): Do not inherit attribute Main in an extending library | |
7660 | project. | |
7661 | ||
7662 | 2008-05-27 Eric Botcazou <ebotcazou@adacore.com> | |
7663 | ||
7664 | * system-darwin-ppc.ads (Always_Compatible_Rep): Set to False. | |
7665 | * system-darwin-x86.ads (Always_Compatible_Rep): Likewise. | |
7666 | * system-freebsd-x86.ads (Always_Compatible_Rep): Likewise. | |
7667 | * system-linux-ppc.ads (Always_Compatible_Rep): Likewise. | |
7668 | * system-linux-x86_64.ads (Always_Compatible_Rep): Likewise. | |
7669 | * system-linux-x86.ads (Always_Compatible_Rep): Likewise. | |
7670 | * system-mingw.ads (Always_Compatible_Rep): Likewise. | |
7671 | * system-solaris-sparc.ads (Always_Compatible_Rep): Likewise. | |
7672 | * system-solaris-sparcv9.ads (Always_Compatible_Rep): Likewise. | |
7673 | * system-solaris-x86.ads (Always_Compatible_Rep): Likewise. | |
9e81dbc7 | 7674 | |
52268145 AC |
7675 | 2008-05-27 Ed Schonberg <schonberg@adacore.com> |
7676 | ||
7677 | * sem_attr.adb: add guard to previous patch. | |
7678 | ||
7679 | 2008-05-27 Ed Schonberg <schonberg@adacore.com> | |
7680 | ||
7681 | * exp_disp.adb (Build_Dispatch_Tables): For a private type completed by | |
7682 | a synchronized tagged type, do not attempt to build dispatch table for | |
7683 | full view. The table is built for the corresponding record type, which | |
7684 | has its own declaration. | |
7685 | ||
7686 | 2008-05-27 Gary Dismukes <dismukes@adacore.com> | |
7687 | ||
7688 | * sem_ch3.adb (Fixup_Bad_Constraint): Set the Etype on the bad subtype | |
7689 | to the known type entity E, rather than setting it to Any_Type. Fixes | |
7690 | possible blowup in function Base_Init_Proc, as called from Freeze_Entity | |
7691 | for objects whose type had an illegal constraint. | |
7692 | ||
7693 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7694 | ||
7695 | * gnat_ugn.texi: | |
7696 | Add succinct documentation for attribute Excluded_Source_List_File | |
7697 | ||
7698 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7699 | ||
7700 | * prj-attr.adb: Add new project level attribute Map_File_Option | |
9e81dbc7 | 7701 | |
52268145 | 7702 | * prj-nmsc.adb (Process_Linker): Process new attribute Map_File_Option |
9e81dbc7 | 7703 | |
52268145 AC |
7704 | * prj.ads: Minor reformatting and comment update |
7705 | (Project_Configuration): New component Map_File_Option | |
9e81dbc7 | 7706 | |
52268145 | 7707 | * snames.adb: New standard name Map_File_Option |
9e81dbc7 | 7708 | |
52268145 AC |
7709 | * snames.ads: New standard name Map_File_Option |
7710 | ||
7711 | 2008-05-27 Vincent Celier <celier@adacore.com> | |
7712 | ||
7713 | * xsnames.adb: Remove unused variable Oname | |
7714 | ||
7715 | 2008-05-27 Doug Rupp <rupp@adacore.com> | |
7716 | ||
7717 | * exp_ch6.adb: | |
7718 | (Expand_N_Function_Call): Fix comments. Minor reformatting. | |
7719 | ||
7720 | * exp_vfpt.ads: | |
7721 | (Expand_Vax_Foreign_Return): Fix comments. | |
7722 | ||
7723 | 2008-05-27 Thomas Quinot <quinot@adacore.com> | |
7724 | ||
7725 | * exp_dist.adb: Minor reformating | |
7726 | ||
094d7cfa AC |
7727 | 2008-05-26 Gary Dismukes <dismukes@adacore.com> |
7728 | ||
7729 | * exp_ch3.adb (Expand_N_Object_Declaration): Remove checks for | |
7730 | No_Default_Initialization, which is now delayed until the freeze point | |
7731 | of the object. Add a comment about deferral of the check. | |
9e81dbc7 | 7732 | |
094d7cfa AC |
7733 | * freeze.adb (Freeze_Entity): The check for No_Default_Initialization |
7734 | on objects is moved here. | |
7735 | ||
7736 | 2008-05-26 Eric Botcazou <ebotcazou@adacore.com> | |
7737 | ||
7738 | * s-casi16.adb (Uhalf): Rewrite it as integer with small alignment. | |
7739 | (Compare_Array_S16): Adjust for above change. | |
7740 | * s-casi32.adb (Uword): Likewise. | |
7741 | (Compare_Array_S32): Likewise. | |
7742 | * s-casi64.adb (Uword): Likewise. | |
7743 | (Compare_Array_S64): Likewise. | |
7744 | * s-caun16.adb (Uhalf): Likewise. | |
7745 | (Compare_Array_U16): Likewise. | |
7746 | * s-caun32.adb (Uword): Likewise. | |
7747 | (Compare_Array_U32): Likewise. | |
7748 | * s-caun64.adb (Uword): Likewise. | |
7749 | (Compare_Array_U64): Likewise. | |
9e81dbc7 | 7750 | |
094d7cfa AC |
7751 | 2008-05-26 Robert Dewar <dewar@adacore.com> |
7752 | ||
7753 | * exp_ch6.adb: Add ??? comment for previous change | |
7754 | ||
7755 | * exp_vfpt.adb: Minor reformatting | |
7756 | ||
7757 | * exp_vfpt.ads: Add ??? comment for last change | |
7758 | ||
7759 | * sem_attr.adb: Add some ??? comments for previous change | |
7760 | ||
7761 | * s-vaflop.ads: Add comments for previous change | |
7762 | ||
7763 | 2008-05-26 Doug Rupp <rupp@adacore.com> | |
7764 | ||
7765 | * s-vaflop-vms-alpha.adb: | |
7766 | Remove System.IO use clause, to prevent spurious ambiguities when | |
7767 | package is access through rtsfind. | |
7768 | ||
7769 | 2008-05-26 Sergey Rybin <rybin@adacore.com> | |
7770 | ||
7771 | * tree_io.ads (ASIS_Version_Number): Update because of the changes | |
7772 | made in front-end | |
7773 | ||
9019f3fc AC |
7774 | 2008-05-26 Ed Schonberg <schonberg@adacore.com> |
7775 | ||
7776 | * sem_attr.adb: | |
7777 | (Resolve_Attribute, case 'address): S (A .. B)' address can be safely | |
7778 | converted to S (A)'address only if A .. B is known to be a non-null | |
7779 | range. | |
7780 | ||
7781 | 2008-05-26 Doug Rupp <rupp@adacore.com> | |
7782 | ||
7783 | * s-vaflop.adb: | |
7784 | (Return_D, Return_F, Return_G): New functions. | |
7785 | ||
7786 | * s-vaflop.ads: | |
7787 | (Return_D, Return_F, Return_G): New functions. | |
7788 | ||
7789 | * exp_vfpt.adb: | |
7790 | (Expand_Vax_Foreign_Return): New procedure | |
7791 | ||
7792 | * exp_vfpt.ads: | |
7793 | (Expand_Vax_Foreign_Return): New procedure | |
7794 | ||
7795 | * rtsfind.ads: | |
7796 | (RE_Return_D, RE_Return_F, RE_Return_G): New RE_Ids | |
7797 | (RE_Return_D, RE_Return_F, RE_Return_G): New RE_Unit_Table elements | |
7798 | ||
7799 | * exp_ch6.adb: | |
7800 | Import Exp_Vfpt | |
7801 | (Expand_N_Function_Call): Call Expand_Vax_Foreign_Return. | |
7802 | ||
7803 | * s-vaflop-vms-alpha.adb: | |
7804 | (Return_D, Return_F, Return_G): New functions. | |
7805 | ||
7806 | 2008-05-26 Gary Dismukes <dismukes@adacore.com> | |
7807 | ||
7808 | * exp_ch3.adb (Build_Array_Init_Proc): Only set Init_Proc to a dummy | |
7809 | init proc entity when there is actual default initialization associated | |
7810 | with the component type, to avoid spurious errors on objects of scalar | |
7811 | array types that are marked Is_Public when No_Default_Initialization | |
7812 | applies. | |
7813 | ||
d693e39d TQ |
7814 | 2008-05-26 Thomas Quinot <quinot@adacore.com> |
7815 | ||
7816 | * rtsfind.ads, rtsfind.adb: | |
7817 | (RE_Get_RACW): New runtime library entity provided by PolyORB s-parint. | |
7818 | (Check_RPC): Support per-PCS-kind API versioning. | |
9e81dbc7 | 7819 | |
d693e39d TQ |
7820 | exp_dist.ads, exp_dist.adb: |
7821 | (Build_Stub_Tag, Get_Stub_Elements): New utility subprograms. | |
7822 | (PolyORB_Support.Add_RACW_From_Any): Offload common code to new runtime | |
7823 | library function Get_RACW. | |
7824 | (PolyORB_Support.Add_RACW_To_Any): Offload common code to new runtime | |
7825 | library function Get_Reference. | |
7826 | (PolyORB_Support.Add_RACW_Read_Attribute): Use Get_RACW instead of going | |
7827 | through an intermediate Any. | |
7828 | (PolyORB_Support.Add_RACW_Write_Attribute): Use Get_Reference instead of | |
7829 | going through an intermediate Any. | |
9e81dbc7 | 7830 | |
d693e39d TQ |
7831 | * sem_dist.adb: Minor reformatting. |
7832 | ||
ad89bc8d AC |
7833 | 2008-05-26 Javier Miranda <miranda@adacore.com> |
7834 | ||
7835 | * einfo.ads (Abstract_Interface_Alias): Renamed as Interface_Alias. | |
7836 | (Set_Abstract_Interface_Alias): Renamed as Set_Interface_Alias. | |
7837 | (Is_Internal): Adding documentation on internal entities that have | |
7838 | attribute Interface_Alias (old attribute Abstract_Interface_Alias) | |
7839 | ||
7840 | * einfo.adb (Abstract_Interface_Alias): Renamed as Interface_Alias. | |
7841 | (Set_Abstract_Interface_Alias): Renamed as Set_Interface_Alias. | |
7842 | Added assertion to force entities with this attribute to have | |
7843 | attribute Is_Internal set to True. | |
7844 | (Next_Tag_Component): Simplify assertion using attribute Is_Tag. | |
7845 | ||
7846 | * sem_ch3.adb (Derive_Interface_Subprograms): This subprogram has been | |
7847 | renamed as Derive_Progenitor_Subprograms. In addition, its code is | |
7848 | a new implementation. | |
7849 | (Add_Interface_Tag_Components): Remove special management of | |
7850 | synchronized interfaces. | |
7851 | (Analyze_Interface_Declaration): Minor reformating | |
7852 | (Build_Derived_Record_Type): Minor reformating | |
7853 | (Check_Abstract_Overriding): Avoid reporting error in case of abstract | |
7854 | predefined primitive inherited from interface type because the body of | |
7855 | internally generated predefined primitives of tagged types are generated | |
7856 | later by Freeze_Type | |
7857 | (Derive_Subprogram): Avoid generating an internal name if the parent | |
7858 | subprogram overrides an interface primitive. | |
7859 | (Derive_Subprograms): New implementation that keeps separate the | |
7860 | management of tagged types not implementing interfaces, from tagged | |
7861 | types that implement interfaces. | |
7862 | (Is_Progenitor): New implementation. | |
7863 | (Process_Full_View): Add documentation | |
7864 | (Record_Type_Declaration): Replace call to Derive_Interface_Subprograms | |
7865 | by call to Derive_Progenitor_Subprograms. | |
7866 | ||
7867 | * sem_ch6.ads (Is_Interface_Conformant): New subprogram. | |
7868 | (Check_Subtype_Conformant, Subtype_Conformant): Adding new argument | |
7869 | Skip_Controlling_Formals. | |
7870 | ||
7871 | * sem_ch6.adb (Is_Interface_Conformant): New subprogram. | |
7872 | (Check_Conventions): New implementation. Remove local subprogram | |
7873 | Skip_Check. Remove formal Search_From of routine Check_Convention. | |
7874 | (Check_Subtype_Conformant, Subtype_Conformant): Adding new argument | |
7875 | Skip_Controlling_Formals. | |
7876 | (New_Overloaded_Entity): Enable addition of predefined dispatching | |
7877 | operations. | |
7878 | ||
7879 | * sem_disp.ads | |
7880 | (Find_Primitive_Covering_Interface): New subprogram. | |
7881 | ||
7882 | * sem_disp.adb (Check_Dispatching_Operation): Disable registering | |
7883 | the task body procedure as a primitive of the corresponding tagged | |
7884 | type. | |
7885 | (Check_Operation_From_Private_Type): Avoid adding twice an entity | |
7886 | to the list of primitives. | |
7887 | (Find_Primitive_Covering_Interface): New subprogram. | |
7888 | (Override_Dispatching_Operation): Add documentation. | |
7889 | ||
7890 | * sem_type.adb (Covers): Minor reformatings | |
7891 | ||
7892 | * sem_util.ads (Collect_Abstract_Interfaces): Renamed as | |
7893 | Collect_Interfaces. | |
7894 | Rename formal. | |
7895 | (Has_Abstract_Interfaces): Renamed as Has_Interfaces. | |
7896 | (Implements_Interface): New subprogram. | |
7897 | (Is_Parent): Removed. | |
7898 | (Primitive_Names_Match): New subprogram. | |
7899 | (Remove_Homonym): Moved here from Derive_Interface_Subprograms. | |
7900 | (Ultimate_Alias): New subprogram. | |
7901 | ||
7902 | * sem_util.adb (Collect_Abstract_Interfaces): Renamed as | |
7903 | Collect_Interfaces. | |
7904 | Remove special management for synchronized types. Rename formal. Remove | |
7905 | internal subprograms Interface_Present_In_Parent and Add_Interface. | |
7906 | (Has_Abstract_Interfaces): Renamed as Has_Interfaces. Replace assertion | |
7907 | on non-record types by code to return false in such case. | |
7908 | (Implements_Interface): New subprogram. | |
7909 | (Is_Parent): Removed. No special management is now required for | |
7910 | synchronized types covering interfaces. | |
7911 | (Primitive_Names_Match): New subprogram. | |
7912 | (Remove_Homonym): Moved here from Derive_Interface_Subprograms. | |
7913 | (Ultimate_Alias): New subprogram. | |
7914 | ||
7915 | * exp_ch3.adb (Add_Internal_Interface_Entities): New subprogram. | |
7916 | Add internal entities associated with secondary dispatch tables to | |
7917 | the list of tagged type primitives that are not interfaces. | |
7918 | (Freeze_Record_Type): Add new call to Add_Internal_Interface_Entities | |
7919 | (Make_Predefined_Primitive_Specs): Code reorganization to improve | |
7920 | the management of predefined equality operator. In addition, if | |
7921 | the type has an equality function corresponding with a primitive | |
7922 | defined in an interface type, the inherited equality is abstract | |
7923 | as well, and no body can be created for it. | |
7924 | ||
7925 | * exp_disp.ads (Is_Predefined_Dispatching_Operation): Moved from | |
7926 | exp_util to exp_disp. | |
7927 | (Is_Predefined_Interface_Primitive): New subprogram. Returns True if | |
7928 | an entity corresponds with one of the predefined primitives required | |
7929 | to implement interfaces. | |
7930 | Update copyright notice. | |
7931 | ||
7932 | * exp_disp.adb (Set_All_DT_Position): Add assertion. Exclude from the | |
7933 | final check on abstract subprograms all the primitives associated with | |
7934 | interface primitives because they must be visible in the public and | |
7935 | private part. | |
7936 | (Write_DT): Use Find_Dispatching_Type to locate the name of the | |
7937 | interface type. This allows the use of this routine, for debugging | |
7938 | purposes, when the tagged type is not fully decorated. | |
7939 | (Is_Predefined_Dispatching_Operation): Moved from exp_util to exp_disp. | |
7940 | Factorize code calling new subprogram Is_Predefined_Interface_Primitive. | |
7941 | (Is_Predefined_Interface_Primitive): New subprogram. Returns True if an | |
7942 | entity corresponds with one of the predefined primitives required to | |
7943 | implement interfaces. | |
7944 | ||
7945 | * exp_util.adb (Find_Interface_ADT): New implementation | |
7946 | (Find_Interface): Removed. | |
7947 | ||
7948 | * sprint.adb (Sprint_Node_Actual): Generate missing output for the | |
7949 | list of interfaces associated with nodes | |
7950 | N_Formal_Derived_Type_Definition and N_Private_Extension_Declaration. | |
7951 | ||
7952 | 2008-05-26 Thomas Quinot <quinot@adacore.com> | |
7953 | ||
7954 | * exp_ch5.adb (Make_Tag_Ctrl_Assignment): Add missing guard on | |
7955 | condition for assignment to temporary. | |
7956 | ||
c878b2ef AC |
7957 | 2008-05-26 Ed Schonberg <schonberg@adacore.com> |
7958 | ||
7959 | * exp_ch4.adb (Expand_Concatenate_Other): Add explicit constraint | |
7960 | checks on the upper bound if the index type is a modular type, to | |
7961 | prevent wrap-around computations when size is close to upper bound of | |
7962 | type. | |
7963 | ||
7964 | 2008-05-26 Robert Dewar <dewar@adacore.com> | |
7965 | ||
7966 | * sem_ch3.adb: Minor reformatting | |
7967 | ||
39281edf AC |
7968 | 2008-05-26 Ed Schonberg <schonberg@adacore.com> |
7969 | ||
7970 | * sem_ch12.adb (Remove_Parent): Use specification of instance | |
7971 | to retrieve generic parent, | |
7972 | to handle properly the case where the instance is a child unit. | |
7973 | Add guard to handle properly wrapper packages. | |
7974 | Minor reformatting | |
7975 | ||
7976 | 2008-05-26 Thomas Quinot <quinot@adacore.com> | |
7977 | ||
7978 | * sinfo.ads: Minor reformatting | |
7979 | ||
7980 | 2008-05-26 Hristian Kirtchev <kirtchev@adacore.com> | |
7981 | ||
7982 | * exp_ch4.adb (Expand_N_Type_Conversion): Minor code reformatting. | |
7983 | Generate a tag check when the result subtype of a function, defined by | |
7984 | an access definition, designates a specific tagged type. | |
7985 | (Make_Tag_Check): New routine. | |
7986 | ||
d6ca724c AC |
7987 | 2008-05-26 Arnaud Charlet <charlet@adacore.com> |
7988 | ||
7989 | * ceinfo.adb, csinfo.adb: Remove warnings. Update headers. | |
7990 | ||
c654b659 EB |
7991 | 2008-05-26 Eric Botcazou <ebotcazou@adacore.com> |
7992 | ||
7993 | * gigi.h (gigi): Remove bogus ATTRIBUTE_UNUSED marker. | |
7994 | (builtin_decl_for): Likewise. | |
7995 | * trans.c (gigi): Likewise. | |
7996 | * utils.c (def_builtin_1): Fix formatting. | |
7997 | ||
1c331d2d AC |
7998 | 2008-05-26 Hristian Kirtchev <kirtchev@adacore.com> |
7999 | ||
8000 | * exp_ch3.adb (Build_Init_Statements): Alphabetize local variables. | |
8001 | Create the statements which map a string name to protected or task | |
8002 | entry indix. | |
8003 | ||
8004 | * exp_ch9.adb: Add with and use clause for Stringt. | |
8005 | Minor code reformatting. | |
8006 | (Build_Entry_Names): New routine. | |
8007 | (Make_Initialize_Protection, Make_Task_Create_Call): Generate a value | |
8008 | for flag Build_Entry_Names which controls the allocation of the data | |
8009 | structure for the string names of entries. | |
8010 | ||
8011 | * exp_ch9.ads (Build_Entry_Names): New subprogram. | |
8012 | ||
8013 | * exp_util.adb (Entry_Names_OK): New function. | |
8014 | ||
8015 | * exp_util.ads (Entry_Names_OK): New function. | |
8016 | ||
8017 | * rtsfind.ads: Add RO_PE_Set_Entry_Name and RO_TS_Set_Entry_Name to | |
8018 | enumerations RE_Id and RE_Unit_Table. | |
8019 | ||
8020 | * s-taskin.adb Add with and use clause for Ada.Unchecked_Deallocation. | |
8021 | (Free_Entry_Names_Array): New routine. | |
8022 | ||
8023 | * s-taskin.ads: Comment reformatting. | |
8024 | Add types String_Access, Entry_Names_Array, Entry_Names_Array_Access. | |
8025 | Add component Entry_Names to record Ada_Task_Control_Block. | |
8026 | (Free_Entry_Names_Array): New routine. | |
8027 | ||
8028 | * s-tassta.adb (Create_Task): If flag Build_Entry_Names is set, | |
8029 | dynamically allocate an array | |
8030 | of string pointers. This structure holds string entry names. | |
8031 | (Free_Entry_Names): New routine. | |
8032 | (Free_Task, Vulnerable_Free_Task): Deallocate the entry names array. | |
8033 | (Set_Entry_Names): New routine. | |
8034 | ||
8035 | * s-tassta.ads: | |
8036 | (Create_Task): Add formal Build_Entry_Names. The flag is used to | |
8037 | control the allocation of the data structure which stores entry names. | |
8038 | (Set_Entry_Name): New routine. | |
8039 | ||
8040 | * s-tpoben.adb: | |
8041 | Add with and use clause for Ada.Unchecked_Conversion. | |
8042 | (Finalize): Deallocate the entry names array. | |
8043 | (Free_Entry_Names): New routine. | |
8044 | (Initialize_Protection_Entries): When flag Build_Entry_Names is set, | |
8045 | create an array of string pointers to hold the entry names. | |
8046 | (Set_Entry_Name): New routine. | |
8047 | ||
8048 | * s-tpoben.ads: | |
8049 | Add field Entry_Names to record Protection_Entries. | |
8050 | (Initialize_Protection_Entries): Add formal Build_Entry_Names. | |
8051 | (Set_Entry_Name): New routine. | |
8052 | ||
8053 | 2008-05-26 Vincent Celier <celier@adacore.com> | |
8054 | ||
8055 | * prj-nmsc.adb: | |
8056 | (Process_Project_Level_Simple_Attributes): process attribute Library_GCC | |
8057 | ||
8058 | * prj.ads: | |
8059 | (Project_Configuration): New component Shared_Lib_Driver | |
8060 | ||
8061 | 2008-05-26 Ed Schonberg <schonberg@adacore.com> | |
8062 | ||
8063 | * inline.adb: | |
8064 | (Cleanup_Scopes): For a protected operation, transfer finalization list | |
8065 | to protected body subprogram, to force cleanup actions when needed. | |
8066 | ||
8067 | 2008-05-26 Robert Dewar <dewar@adacore.com> | |
8068 | ||
8069 | * sem_cat.adb: Minor reformatting | |
8070 | ||
8071 | * gnatname.adb: Minor reformatting | |
8072 | ||
8073 | * osint.ads: Minor reformatting | |
8074 | ||
8075 | * s-carun8.ads: Minor reformatting | |
8076 | ||
8077 | * g-heasor.ads: Minor comment fix (unit is now pure) | |
8078 | ||
8079 | 2008-05-26 Robert Dewar <dewar@adacore.com> | |
8080 | ||
8081 | * exp_ch2.adb: | |
8082 | (Expand_Current_Value): Properly type generated integer literal | |
8083 | ||
8084 | 2008-05-26 Sergey Rybin <rybin@adacore.com> | |
8085 | ||
8086 | * gnat_ugn.texi: Add description for the new gnatcheck rule - | |
8087 | Separate_Numeric_Error_Handlers. | |
8088 | ||
8089 | 2008-05-26 Pascal Obry <obry@adacore.com> | |
8090 | ||
8091 | * sem_aggr.adb: Minor reformatting. | |
8092 | ||
8093 | 2008-05-26 Jose Ruiz <ruiz@adacore.com> | |
8094 | ||
8095 | * s-osinte-aix.adb: | |
8096 | (To_Target_Priority): Setting the time slice value to 0 or greater sets | |
8097 | the scheduling policy to FIFO within priorities or round-robin | |
8098 | respectively. | |
8099 | Hence, the priority must be set in this case to the one selected by the | |
8100 | user. | |
9e81dbc7 | 8101 | |
1c331d2d AC |
8102 | 2008-05-26 Ed Schonberg <schonberg@adacore.com> |
8103 | ||
8104 | * sem_ch12.adb: | |
8105 | (Remove_Parent): If the enclosing scope is an instance whose generic | |
8106 | parent is declared within some parent scope of the just completed | |
8107 | instance, make full views of the entities in that parent visible, when | |
8108 | applicable. | |
9e81dbc7 | 8109 | |
a28e8f45 KT |
8110 | 2008-05-26 Kai Tietz <kai.tietz@onevision.com> |
8111 | ||
8112 | * mingw32.h (STD_MINGW): Set to true for target w64. | |
8113 | ||
3651f7ad EB |
8114 | 2008-05-25 Eric Botcazou <ebotcazou@adacore.com> |
8115 | ||
8116 | * trans.c (Attribute_to_gnu) <Code_Address>: Set TREE_NO_TRAMPOLINE | |
8117 | instead of TREE_STATIC on the ADDR_EXPR. | |
8118 | ||
58272d79 EB |
8119 | 2008-05-24 Eric Botcazou <ebotcazou@adacore.com> |
8120 | ||
8121 | * trans.c (gnat_to_gnu): Do not set source location info on NOP_EXPRs. | |
8122 | (Sloc_to_locus): Do not overwrite known GCC locations when translating | |
8123 | GNAT standard locations. | |
8124 | ||
4c8125f4 EB |
8125 | 2008-05-23 Eric Botcazou <ebotcazou@adacore.com> |
8126 | ||
8127 | * gigi.h (mark_visited): Declare. | |
8128 | * decl.c (gnat_to_gnu_entity): Use mark_visited instead of marking | |
8129 | only the topmost node of expressions. | |
b86c6d94 | 8130 | (elaborate_expression_1): Look deeper for read-only variables. |
4c8125f4 EB |
8131 | * trans.c (add_decl_expr): Use mark_visited instead of marking by hand. |
8132 | (mark_visited): Move logic to mark_visited_r. Invoke walk_tree. | |
8133 | (mark_visited_r): New function. | |
8134 | ||
d1ba4e42 AC |
8135 | 2008-05-23 Vincent Celier <celier@adacore.com> |
8136 | ||
b86c6d94 | 8137 | * snames.adb: New standard name Excluded_Source_List_File. |
d1ba4e42 | 8138 | |
b86c6d94 | 8139 | * snames.ads: New standard name Excluded_Source_List_File. |
d1ba4e42 | 8140 | |
b86c6d94 | 8141 | * prj-attr.adb: New project level attribute Excluded_Source_List_File. |
d1ba4e42 | 8142 | |
b86c6d94 | 8143 | * prj-nmsc.adb: (Find_Excluded_Sources): New parameter Project. |
d1ba4e42 AC |
8144 | Get excluded sources from |
8145 | file indicated by attribute Excluded_Source_List_File, when present and | |
8146 | neither Excluded_Source_Files nor Locally_Removed_Files are declared. | |
8147 | ||
8148 | 2008-05-23 Robert Dewar <dewar@adacore.com> | |
8149 | ||
8150 | * exp_dist.adb: Minor reformatting | |
8151 | ||
8152 | 2008-05-23 Ed Schonberg <schonberg@adacore.com> | |
8153 | ||
8154 | * sem_attr.adb (Resolve_Attribute, case 'address): If the prefix is a | |
8155 | slice, convert it to an indexed component, which is equivalent, more | |
8156 | efficient, and usable even if the slice itself is not addressable. | |
8157 | ||
8158 | 2008-05-23 Olivier Hainque <hainque@adacore.com> | |
8159 | ||
8160 | * gnat_ugn.texi (Calling Conventions): Document that the Intrinsic | |
8161 | convention also allows access to named compiler built-in subprograms | |
8162 | such as the GCC __builtin family. | |
8163 | ||
ffd0dd6c AC |
8164 | 2008-05-23 Vincent Celier <celier@adacore.com> |
8165 | ||
8166 | * prj-nmsc.adb (Check_Naming_Schemes): Check a file for spec, body and | |
8167 | sep. If there are several possibilities, choose the one with the | |
8168 | longer prefix. | |
8169 | ||
8170 | 2008-05-23 Vincent Celier <celier@adacore.com> | |
8171 | ||
8172 | * gnatlink.adb (Process_Args): Do not disable scanning of ALI file for | |
8173 | back end switches when executable specified with --GCC= is same as | |
8174 | default, even if there are additional options. | |
8175 | ||
8176 | * gnat_ugn.texi: | |
8177 | Document when the back end switches from the ALI file are taken into | |
8178 | account when gnatlink is invoked with --GCC= | |
8179 | ||
8180 | 2008-05-23 Thomas Quinot <quinot@adacore.com> | |
8181 | ||
8182 | * s-os_lib.adb: | |
8183 | (copy_File): Do not open destination file if source file is unreadable. | |
8184 | ||
3fda3252 EB |
8185 | 2008-05-23 Eric Botcazou <ebotcazou@adacore.com> |
8186 | ||
8187 | * utils.c (handle_type_generic_attribute): Adjust to accept | |
8188 | fixed arguments before an elipsis. | |
8189 | ||
92c708d2 TQ |
8190 | 2008-05-21 Thomas Quinot <quinot@adacore.com> |
8191 | ||
8192 | * g-sothco.ads, g-sothco.adb: New files. | |
8193 | ||
93a7c573 AC |
8194 | 2008-05-20 Thomas Quinot <quinot@adacore.com> |
8195 | ||
8196 | * Makefile.rtl (GNAT.Sockets.Thin_Common): New unit. | |
8197 | ||
8198 | * g-sttsne-vxworks.adb: Add missing dependency on Sockets.Constants. | |
8199 | Add missing "with" of Ada.Unchecked_Conversion | |
8200 | ||
9e81dbc7 AS |
8201 | * g-soccon-linux-ppc.ads, g-soccon-linux-64.ads, g-soccon-lynxos.ads, |
8202 | g-soccon-linux-x86.ads, g-soccon-hpux-ia64.ads, | |
8203 | g-soccon-solaris-64.ads, g-soccon-tru64.ads, g-soccon-aix.ads, | |
8204 | g-soccon-irix.ads, g-soccon-hpux.ads, g-soccon-solaris.ads, | |
8205 | g-soccon-vms.ads, g-soccon-mingw.ads, g-soccon-vxworks.ads, | |
8206 | g-socthi-vxworks.adb, g-soccon-freebsd.ads, g-soccon.ads: | |
93a7c573 AC |
8207 | Move common code out of GNAT.Sockets.Thin implementations and into |
8208 | Thin_Common. | |
8209 | New constant SIZEOF_fd_set | |
8210 | New flag Has_Sockaddr_Len | |
8211 | New constants SIZEOF_sockaddr_in, SIZEOF_sockaddr_in6 | |
8212 | ||
8213 | * g-stsifd-sockets.adb | |
8214 | (Create): Remove call to Set_Length; use Set_Family to set the family | |
8215 | and (on appropriate platforms) length fields in struct sockaddr. | |
8216 | ||
9e81dbc7 AS |
8217 | * g-socthi.adb, g-socthi.ads, g-socthi-vms.ads, g-socthi-vms.adb, |
8218 | g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vxworks.adb, | |
93a7c573 AC |
8219 | g-soccon-darwin.ads, g-soccon-darwin.ads: New constant SIZEOF_fd_set |
8220 | Move common code out of GNAT.Sockets.Thin implementations and into | |
8221 | Thin_Common. | |
8222 | ||
9e81dbc7 | 8223 | * g-socket.ads, g-socket.adb: |
93a7c573 AC |
8224 | Move common code out of GNAT.Sockets.Thin implementations and into |
8225 | Thin_Common. | |
8226 | (Connect_Socket, Accept_Socket): Provide new versions of these two | |
8227 | routines that operate with a user specified timeout. | |
8228 | (Bind_Socket, Connect_Socket, Send_Socket): Remove calls to Set_Length, | |
8229 | this is now handled automatically by Set_Family on platforms that | |
8230 | require it. | |
8231 | ||
9e81dbc7 | 8232 | * gen-soccon.c: |
93a7c573 AC |
8233 | Move common code out of GNAT.Sockets.Thin implementations and into |
8234 | Thin_Common. | |
8235 | (SIZEOF_sockaddr_in6): On platforms where IPv6 is not supported, define | |
8236 | this constant to 0 (not -1) because we use it to initialize an | |
8237 | unsigned_char value. | |
8238 | Align values for numeric constants only. | |
8239 | Handle the case of systems that do not support AF_INET6. | |
8240 | New constant SIZEOF_fd_set | |
8241 | New flag Has_Sockaddr_Len | |
8242 | New constants SIZEOF_sockaddr_in, SIZEOF_sockaddr_in6 | |
8243 | ||
8244 | * gsocket.h: New flag Has_Sockaddr_Len | |
8245 | New constants SIZEOF_sockaddr_in, SIZEOF_sockaddr_in6 | |
8246 | ||
8247 | 2008-05-20 Santiago Uruena <uruena@adacore.com> | |
8248 | ||
8249 | * i-cobol.ads: Interfaces.COBOL should be preelaborate. | |
8250 | ||
8251 | 2008-05-20 Arnaud Charlet <charlet@adacore.com> | |
8252 | ||
8253 | * s-linux-hppa.ads (atomic_lock_t): Put back proper alignment now that | |
8254 | the underlying issue with malloc/free has been fixed. Remove associated | |
8255 | comments. | |
8256 | Minor reformatting. | |
8257 | Related to PR ada/24533 | |
8258 | ||
8259 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8260 | ||
8261 | * ali.adb: Correct casing of ASCII.NUL | |
8262 | ||
8263 | * styleg-c.adb (Check_Identifier): Handle case of names in ASCII | |
8264 | properly. | |
8265 | ||
8266 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8267 | Gary Dismukes <dismukes@adacore.com> | |
8268 | ||
8269 | * checks.adb (Apply_Arithmetic_Overflow_Check): Avoid intermediate | |
8270 | overflow if result converted to wider integer type. | |
8271 | (Apply_Type_Conversion_Checks): Don't emit checks on conversions to | |
8272 | discriminated types when discriminant checks are suppressed. | |
8273 | ||
8274 | 2008-05-20 Vincent Celier <celier@adacore.com> | |
8275 | ||
8276 | * cstand.adb (Print_Standard): Issue the correct Size clause for type | |
8277 | Wide_Wide_Character. | |
8278 | ||
8279 | 2008-05-20 Tristan Gingold <gingold@adacore.com> | |
8280 | ||
8281 | * decl.c: Do not emit a variable for a object that has an address | |
8282 | representation clause whose value is known at compile time. | |
8283 | When a variable has an address clause whose value is known at compile | |
8284 | time, refer to this variable by using directly the address instead of | |
8285 | dereferencing a pointer. | |
8286 | ||
8287 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8288 | ||
8289 | PR ada/30740 | |
8290 | * einfo.ads, einfo.adb (Non_Binary_Modulus): Applies to all types and | |
8291 | subtypes, always False for non-modular types. | |
8292 | Shared_Var_Assign_Proc (node22) and Shared_Var_Read_Proc (node 15) | |
8293 | entry nodes have been replaced by Shared_Var_Procs_Instance (node22) | |
8294 | for Shared_Storage package. | |
8295 | (Is_RACW_Stub_Type): New entity flag. | |
8296 | ||
8297 | * exp_ch4.adb | |
8298 | (Expand_N_Op_Expon): Avoid incorrect optimization of a*(2**b) in the | |
8299 | case where we have a modular type with a non-binary modules. | |
8300 | Comments reformattings. | |
8301 | ||
8302 | * sem_intr.adb: Simplify code not that Non_Binary_Modulus applies to | |
8303 | all types. | |
8304 | ||
8305 | 2008-05-20 Javier Miranda <miranda@adacore.com> | |
8306 | ||
8307 | * exp_aggr.adb | |
8308 | (Build_Record_Aggr_Code): Fix wrong tests checking progenitors. Previous | |
8309 | tests did not covered the case in which the type of the aggregate has | |
8310 | no progenitors but some its parents has progenitors. | |
8311 | ||
8312 | 2008-05-20 Gary Dismukes <dismukes@adacore.com> | |
8313 | Hristian Kirtchev <kirtchev@adacore.com> | |
8314 | ||
8315 | * exp_ch3.adb | |
8316 | (Expand_N_Object_Declaration): Correct the condition which triggers the | |
8317 | generation of a call to Displace when initializing a class-wide object. | |
8318 | (Build_Dcheck_Functions): Build discriminant-checking for null variants | |
8319 | when Frontend_Layout_On_Target is true to ensure that they're available | |
8320 | for calling when a record variant size function is built in Layout. | |
8321 | ||
8322 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8323 | ||
8324 | * exp_ch5.adb (Expand_Assign_Record): Within an initialization | |
8325 | procedure for a derived type retrieve the discriminant values from the | |
8326 | parent using the corresponding discriminant. | |
8327 | (Expand_N_Assignment_Statement): Skip generation of implicit | |
8328 | if-statement associated with controlled types if we are | |
8329 | compiling with restriction No_Finalization. | |
8330 | ||
8331 | 2008-05-20 Vincent Celier <celier@adacore.com> | |
8332 | ||
8333 | * prj.adb (Hash (Project_Id)): New function | |
8334 | (Project_Empty): Add new component Interfaces_Defined | |
8335 | ||
8336 | * prj.ads (Source_Data): New component Object_Linked | |
8337 | (Language_Config): New components Object_Generated and Objects_Linked | |
8338 | (Hash (Project_Id)): New function | |
8339 | (Source_Data): New Boolean components In_Interfaces and | |
8340 | Declared_In_Interfaces. | |
8341 | (Project_Data): New Boolean component Interfaces_Defined | |
8342 | ||
9e81dbc7 | 8343 | * prj-attr.adb: |
93a7c573 AC |
8344 | New project level attribute Object_Generated and Objects_Linked |
8345 | Add new project level attribute Interfaces | |
8346 | ||
8347 | * prj-dect.adb: Use functions Present and No throughout | |
8348 | (Parse_Variable_Declaration): If a string type is specified as a simple | |
8349 | name and is not found in the current project, look for it also in the | |
8350 | ancestors of the project. | |
8351 | ||
9e81dbc7 | 8352 | * prj-makr.adb: |
93a7c573 AC |
8353 | Replace procedure Make with procedures Initialize, Process and Finalize |
8354 | to implement H414-023: process different directories with different | |
8355 | patterns. | |
8356 | Use functions Present and No throughout | |
8357 | ||
9e81dbc7 | 8358 | * prj-makr.ads: |
93a7c573 AC |
8359 | Replace procedure Make with procedures Initialize, Process and Finalize |
8360 | ||
8361 | * prj-nmsc.adb | |
8362 | (Add_Source): Set component Object_Exists and Object_Linked accordnig to | |
8363 | the language configuration. | |
8364 | (Process_Project_Level_Array_Attributes): Process new attributes | |
8365 | Object_Generated and Object_Linked. | |
8366 | (Report_No_Sources): New Boolean parameter Continuation, defaulted to | |
8367 | False, to indicate that the erreor/warning is a continuation. | |
8368 | (Check): Call Report_No_Sources with Contnuation = True after the first | |
8369 | call. | |
8370 | (Error_Msg): Process successively contnuation character and warning | |
8371 | character. | |
8372 | (Find_Explicit_Sources): Check that all declared sources have been found | |
8373 | (Check_File): Indicate in hash table Source_Names when a declared source | |
8374 | is found. | |
8375 | (Check_File): Set Other_Part when found | |
8376 | (Find_Explicit_Sources): In multi language mode, check if all exceptions | |
8377 | to the naming scheme have been found. For Ada, report an error if an | |
8378 | exception has not been found. Otherwise, disregard the exception. | |
8379 | (Check_Interfaces): New procedure | |
8380 | (Add_Source): When Other_Part is defined, set mutual pointers in spec | |
8381 | and body. | |
8382 | (Check): In multi-language mode, call Check_Interfaces | |
8383 | (Process_Sources_In_Multi_Language_Mode): Set In_Interfaces to False | |
8384 | for an excluded source. | |
8385 | (Remove_Source): A source replacing a source in the interfaces is also | |
8386 | in the interfaces. | |
8387 | ||
8388 | * prj-pars.adb: Use function Present | |
8389 | ||
8390 | * prj-part.adb: Use functions Present and No throughout | |
8391 | (Parse_Single_Project): Set the parent project for child projects | |
8392 | (Create_Virtual_Extending_Project): Register project with no qualifier | |
8393 | (Parse_Single_Project): Allow an abstract project to be extend several | |
8394 | times. Do not allow an abstract project to extend a non abstract | |
8395 | project. | |
8396 | ||
8397 | * prj-pp.adb: Use functions Present and No throughout | |
8398 | (Print): Take into account the full associative array attribute | |
8399 | declarations. | |
8400 | ||
8401 | * prj-proc.adb: Use functions Present and No throughout | |
8402 | (Expression): Call itself with the same From_Project_Node for the | |
8403 | default value of an external reference. | |
8404 | ||
8405 | * prj-strt.adb: Use functions Present and No throughout | |
8406 | (Parse_Variable_Reference): If a variable is specified as a simple name | |
8407 | and is not found in the current project, look for it also in the | |
8408 | ancestors of the project. | |
8409 | ||
8410 | * prj-tree.ads, prj-tree.adb (Present): New function | |
8411 | (No): New function | |
8412 | Use functions Present and No throughout | |
8413 | (Parent_Project_Of): New function | |
8414 | (Set_Parent_Project_Of): New procedure | |
8415 | ||
9e81dbc7 | 8416 | * snames.ads, snames.adb: |
93a7c573 AC |
8417 | Add new standard names Object_Generated and Objects_Linked |
8418 | ||
8419 | 2008-05-20 Hristian Kirtchev <kirtchev@adacore.com> | |
8420 | ||
8421 | * exp_ch6.adb (Expand_Call): Add guard to ensure that both the parent | |
8422 | and the derived type are of the same kind. | |
8423 | (Expand_Call): Generate type conversions for actuals of | |
8424 | record or array types when the parent and the derived types differ in | |
8425 | size and/or packed status. | |
8426 | ||
8427 | 2008-05-20 Javier Miranda <miranda@adacore.com> | |
8428 | Ed Schonberg <schonberg@adacore.com> | |
8429 | ||
8430 | * exp_disp.adb (Make_DT, Make_Secondary_DT, Make_Tags): Avoid | |
8431 | generating dispatch tables of locally defined tagged types statically. | |
8432 | Remove implicit if-statement that is no longer required. | |
8433 | (Expand_Dispatching_Call): If this is a call to an instance of the | |
8434 | generic dispatching constructor, the type of the first argument may be | |
8435 | a subtype of Tag, so always use the base type to recognize this case. | |
8436 | ||
8437 | 2008-05-20 Thomas Quinot <quinot@adacore.com> | |
8438 | ||
8439 | * exp_dist.adb | |
8440 | (GARLIC_Support.Add_RACW_Read_Attribute): When a zero value is received, | |
8441 | and the RACW is null-excluding, raise CONSTRAINT_ERROR instead of | |
8442 | assigning NULL into the result, to avoid a spurious warning. | |
8443 | (Add_RACW_Features, case Same_Scope): Add assertion that designated type | |
8444 | is not frozen. | |
8445 | (Add_Stub_Type): Set entity flag Is_RACW_Stub_Type on generated stub | |
8446 | type. | |
8447 | (Build_From_Any_Function, Build_To_Any_Function, | |
8448 | Build_TypeCode_Function): For a type that has user-specified stream | |
8449 | attributes, use an opaque sequence of octets as the representation. | |
8450 | ||
8451 | 2008-05-20 Kevin Pouget <pouget@adacore.com> | |
8452 | ||
8453 | * exp_smem.ads, exp_smem.adb: Construction of access and assign | |
8454 | routines has been replaced by an instantiation of | |
8455 | System.Shared_Storage.Shared_Var_Procs generic package, while expanding | |
8456 | shared variable declaration. | |
8457 | Calls to access and assign routines have been replaced by calls to | |
8458 | Read/Write routines of System.Shared_Storage.Shared_Var_Procs | |
8459 | instantiated package. | |
9e81dbc7 | 8460 | |
93a7c573 AC |
8461 | * rtsfind.ads: RE_Shared_Var_Procs entry has been added in RE_Unit_Table |
8462 | It identifies the new generic package added in s-shasto. | |
8463 | ||
8464 | * s-shasto.adb, s-shasto.ads: A new generic package has been added, it | |
8465 | is instantiated for each shared passive variable. It provides | |
8466 | supporting procedures called upon each read or write access by the | |
8467 | expanded code. | |
8468 | ||
8469 | * sem_attr.adb: | |
8470 | For this runtime unit (always compiled in GNAT mode), we allow | |
8471 | stream attributes references for limited types for the case where | |
8472 | shared passive objects are implemented using stream attributes, | |
8473 | which is the default in GNAT's persistent storage implementation. | |
8474 | ||
8475 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8476 | ||
8477 | * freeze.adb | |
8478 | (Freeze_Enumeration_Type): For a subtype that inherits a foreign | |
8479 | convention from its base type, do not set the type to that of integer, | |
8480 | because it may inherit a size clause. | |
8481 | Warn on a size clause with a size different | |
8482 | from that of Integer, if the type has convention C. | |
8483 | ||
8484 | 2008-05-20 Vincent Celier <celier@adacore.com> | |
8485 | ||
8486 | * gnatname.adb | |
8487 | (Scan_Args): Rewrite to take into account new switch --and to separate | |
8488 | arguments into sections. | |
8489 | (Gnatname): Call Prj.Makr.Initialize, then Prj.Makr.Process for each | |
8490 | section, then Finalize. | |
8491 | ||
8492 | 2008-05-20 Tristan Gingold <gingold@adacore.com> | |
8493 | ||
8494 | * init.c: Enable stack probing on ppc-linux. | |
8495 | ||
8496 | * tracebak.c: Add symbolic traceback for ppc-linux. | |
8497 | ||
8498 | * system-linux-ppc.ads: Enable stack probing on ppc-linux. | |
8499 | ||
8500 | 2008-05-20 Arnaud Charlet <charlet@adacore.com> | |
8501 | ||
8502 | * Makefile.in | |
8503 | (common-tools): New rule, to avoid parallel build failure on gnat tools. | |
8504 | Reenable parallel builds on this Makefile. | |
8505 | ||
8506 | * Make-lang.in: Update dependencies. | |
8507 | ||
8508 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8509 | ||
8510 | * opt.ads (Treat_Restrictions_As_Warnings): New switch | |
8511 | ||
8512 | * sem_prag.adb, par-prag.adb, restrict.ads: Implement flag | |
8513 | Treat_Restrictions_As_Warnings. | |
8514 | ||
8515 | * switch-c.adb: Recognize new switch -gnatr | |
8516 | ||
8517 | * usage.adb: Add line for -gnatr | |
8518 | ||
8519 | 2008-05-20 Hristian Kirtchev <kirtchev@adacore.com> | |
8520 | ||
8521 | * par-ch3.adb | |
8522 | (P_Access_Definition): Change the error message when parsing "access | |
8523 | all" in Ada 95 mode. The message no longer forces the user to recompile | |
8524 | in 05 mode only to discover that anonymous access types are not allowed | |
8525 | to have "all". | |
8526 | ||
8527 | 2008-05-20 Hristian Kirtchev <kirtchev@adacore.com> | |
8528 | ||
8529 | * par-ch9.adb | |
8530 | (P_Protected): Update the error message on missing "-gnat05" switch when | |
8531 | using interfaces in conjunction with protected types. Remove the | |
8532 | incorrect error message associated with the presence of "private" after | |
8533 | a "with". | |
8534 | ||
8535 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8536 | ||
8537 | * sem_aggr.adb: Update comments. | |
8538 | Improve previous change for PR ada/17985 | |
8539 | ||
8540 | 2008-05-20 Thomas Quinot <quinot@adacore.com> | |
8541 | ||
8542 | * sem_cat.adb | |
8543 | (Set_Categorization_From_Scope): Do not set In_Remote_Types unless in | |
8544 | the visible part of the spec of a remote types unit. | |
8545 | (Validate_Remote_Access_Object_Type_Declaration): | |
8546 | New local subprogram Is_Valid_Remote_Object_Type, replaces | |
8547 | Is_Recursively_Limited_Private. | |
8548 | (Validate_RACW_Primitives): Enforce E.2.2(14) rules: the types of all | |
8549 | non-controlling formals (and the return type, even though this is not | |
8550 | explicit in the standard) must support external streaming. | |
8551 | (Validate_RCI_Subprogram_Declaration): Enforce E.2.3(14) rules: same | |
8552 | as above for of RAS types and RCI subprograms. (The return type is not | |
8553 | checked yet). | |
8554 | Update comments related to RACWs designating limited interfaces per | |
8555 | ARG ruling on AI05-060. | |
8556 | ||
8557 | * sem_util.ads, sem_util.adb | |
8558 | (Is_Remote_Access_To_Class_Wide_Type): Only rely on Is_Remote_Types and | |
8559 | Is_Remote_Call_Interface to identify RACW types in a stable and | |
8560 | consistent way. We used to rely in this predicate on the privateness of | |
8561 | the designated type and its ancestors, but depending on the currently | |
8562 | visible private parts, this caused false negatives. We now uniformly | |
8563 | rely on checks made at the point where the RACW type is declared. | |
8564 | (Inspect_Deferred_Constant_Completion): Moved from Sem_Ch7. | |
8565 | ||
8566 | 2008-05-20 Javier Miranda <miranda@adacore.com> | |
8567 | Ed Schonberg <schonberg@adacore.com> | |
8568 | Hristian Kirtchev <kirtchev@adacore.com> | |
8569 | ||
8570 | * sem_ch3.adb | |
8571 | (Analyze_Object_Declaration): Fix over-conservative condition | |
8572 | restricting use of predefined assignment with tagged types that have | |
8573 | convention CPP. | |
8574 | (Analyze_Object_Declaration): Relax the check regarding deferred | |
8575 | constants declared in scopes other than packages since they can be | |
8576 | completed with pragma Import. | |
8577 | Add missing escaping of all-caps word 'CPP' in error messages. | |
8578 | (Build_Discriminated_Subtype): Do not inherit representation clauses | |
8579 | from parent type if subtype already carries them, because they are | |
8580 | inherited earlier during derivation and already include those that may | |
8581 | come from a partial view. | |
8582 | ||
8583 | * sem_ch9.adb, sem_ch5.adb, sem_ch6.adb (Analyze_Subprogram_Body): | |
8584 | Check the declarations of a subprogram body for proper deferred | |
8585 | constant completion. | |
8586 | ||
8587 | * sem_ch7.ads, sem_ch7.adb | |
8588 | (Inspect_Deferred_Constant_Completion): Moved to sem_util. | |
8589 | ||
8590 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8591 | Thomas Quinot <quinot@adacore.com> | |
8592 | ||
8593 | * sem_ch4.adb | |
8594 | (Try_Indexed_Call): Handle properly a construct of the form F(S) where | |
8595 | F is a parameterless function that returns an array, and S is a subtype | |
8596 | mark. | |
8597 | (Analyze_Call): Insert dereference when the prefix is a parameterless | |
8598 | function that returns an access to subprogram and the call has | |
8599 | parameters. | |
8600 | Reject a non-overloaded call whose name resolves to denote | |
8601 | a primitive operation of the stub type generated to support a remote | |
8602 | access-to-class-wide type. | |
8603 | ||
8604 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8605 | ||
8606 | * sem_ch8.adb | |
8607 | (Note_Redundant_Use): Diagnose a redundant use within a subprogram body | |
8608 | when there is a use clause for the same entity in the context. | |
8609 | (Analyze_Subprogram_Renaming): A renaming_as_body is legal if it is | |
8610 | created for a stream attribute of an abstract type or interface type. | |
8611 | ||
8612 | 2008-05-20 Thomas Quinot <quinot@adacore.com> | |
8613 | ||
8614 | * sem_dist.ads, sem_dist.adb (Is_RACW_Stub_Type_Operation): New | |
8615 | subprogram. | |
8616 | ||
8617 | * sem_type.adb | |
8618 | (Add_One_Interp): Ignore any interpretation that is a primitive | |
8619 | operation of an RACW stub type (these primitives are only executed | |
8620 | through dispatching, never through static calls). | |
8621 | (Collect_Interps): When only one interpretation has been found, set N's | |
8622 | Entity and Etype to that interpretation, otherwise Entity and Etype may | |
8623 | still refer to an interpretation that was ignored by Add_One_Interp, | |
8624 | in which case would end up with being marked as not overloaded but with | |
8625 | an Entity attribute not pointing to its (unique) correct interpretation. | |
8626 | ||
8627 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8628 | ||
8629 | * sem_eval.adb | |
8630 | (Eval_Slice): Warn when a slice whose discrete range is a subtype name | |
8631 | denotes the whole array of its prefix. | |
8632 | ||
8633 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8634 | ||
8635 | * sem_res.adb (Resolve_Op_Not): Warn on double negation | |
8636 | ||
8637 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8638 | ||
8639 | * sprint.adb | |
8640 | (Print_Itype): Do not modify the sloc of the component type of a | |
8641 | (packed) array itype, because it is an unrelated type whose source | |
8642 | location is independent of the point of creation of the itype itself. | |
8643 | ||
8644 | 2008-05-20 Thomas Quinot <quinot@adacore.com> | |
8645 | ||
8646 | * uintp.adb, urealp.adb: Replace calls to Increment_Last + Set with | |
8647 | Append. | |
8648 | ||
8649 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8650 | Vincent Celier <celier@adacore.com> | |
8651 | ||
8652 | * vms_data.ads: Add entry for -gnatr | |
8653 | Put GNAT SYNC section in proper alpha order | |
8654 | Add VMS qualifier /DISPLAY_PROGRESS equivalent to gnatmake switch -d | |
8655 | ||
8656 | * gnat_ugn.texi: Add documentation for new gnatname switch --and | |
8657 | Update the style checks section | |
8658 | Add documentation of -gnatr | |
8659 | Add to the "Adding the Results of Compiler Checks to gnatcheck Output" | |
8660 | subsection the explanation how compiler checks should be disabled for | |
8661 | gnatcheck. | |
8662 | Update the list of Ada 95 reserved words used by in the project language | |
8663 | Add documentation for project qualifiers. | |
8664 | Document that abstract projects may be extended by different projects in | |
8665 | the same project tree. | |
8666 | Add documentation for gnatmake switch -d | |
8667 | ||
8668 | * ug_words: Add -gnatyy VMS equivalence string. | |
8669 | Add entry for -gnatr | |
8670 | ||
8671 | 2008-05-20 Bob Duff <duff@adacore.com> | |
8672 | ||
8673 | * a-rttiev.adb | |
8674 | (Set_Handler): Remove code from both of these that implements | |
8675 | RM-D.15(15/2), because it causes a race condition and potential | |
8676 | deadlock. | |
8677 | (Process_Queued_Events): Add comment explaining "exception when others | |
8678 | => null". Add clarifying ".all", even though implicit .all is legal | |
8679 | here. | |
8680 | ||
8681 | 2008-05-20 Arnaud Charlet <charlet@adacore.com> | |
8682 | ||
8683 | * s-winext.ads: Replace representation clause by pragma Pack. Gives | |
8684 | equivalent representation, but has the advantage of allowing | |
8685 | compilation of this file under 64 bits platforms. | |
8686 | ||
8687 | * s-os_lib.adb (Normalize_Pathname): Mark Cur_Dir constant. | |
8688 | ||
8689 | * s-osinte-irix.ads: (Alternate_Stack_Size): Add dummy declaration. | |
8690 | ||
9e81dbc7 | 8691 | * adaint.c: |
93a7c573 AC |
8692 | Don't define dummy implementation of convert_addresses on ppc-linux. |
8693 | ||
8694 | 2008-05-20 Ed Schonberg <schonberg@adacore.com> | |
8695 | ||
8696 | * exp_ch7.adb | |
8697 | (Expand_Ctrl_Function_Call): Do not attach result to finalization list | |
8698 | if expression is aggregate component. | |
8699 | ||
8700 | 2008-05-20 Robert Dewar <dewar@adacore.com> | |
8701 | ||
8702 | * g-byorma.adb, gnatlink.adb, prepcomp.adb, sinfo.ads, | |
8703 | sem_ch12.adb: Update comments. Minor reformatting. | |
8704 | ||
8705 | * exp_ch2.adb: Typo | |
8706 | ||
8707 | * s-unstyp.ads: Fixed some typos in comments. | |
8708 | ||
1b686dc4 AC |
8709 | 2008-05-20 Arnaud Charlet <charlet@adacore.com> |
8710 | ||
8711 | * s-taspri-vxworks.ads (Task_Address, Task_Address_Size): New | |
8712 | type/constant. | |
8713 | ||
8714 | * g-socthi-vxworks.ads: Update to latest socket changes. | |
8715 | ||
8716 | * a-caldel-vms.adb: Resync with a-caldel spec. | |
8717 | ||
6357e162 AC |
8718 | * exp_ch9.ads, sem_ch8.ads, inline.adb: Minor reformatting. |
8719 | Update comments. | |
8720 | ||
74c11a6c EB |
8721 | 2008-05-17 Eric Botcazou <ebotcazou@adacore.com> |
8722 | ||
8723 | * trans.c (gnat_to_gnu) <N_Validate_Unchecked_Conversion>: Account | |
8724 | for dummy types pointed to by the converted pointer types. | |
8725 | ||
f730e42f EB |
8726 | 2008-05-15 Eric Botcazou <ebotcazou@adacore.com> |
8727 | ||
8728 | * trans.c (add_decl_expr): At toplevel, mark the TYPE_ADA_SIZE field | |
8729 | of records and unions. | |
8730 | (gnat_to_gnu) <N_Validate_Unchecked_Conversion>: Fix formatting. | |
8731 | ||
eaa2f8c7 | 8732 | 2008-05-14 Samuel Tardieu <sam@rfc1149.net> |
9e81dbc7 | 8733 | Robert Dewar <dewar@adacore.com> |
eaa2f8c7 ST |
8734 | |
8735 | * sem_attr.adb (Analyze_Attribute, Attribute_Old case): Add | |
8736 | restrictions to the prefix of 'Old. | |
8737 | * sem_util.ads, sem_util.adb (In_Parameter_Specification): New. | |
8738 | * gnat_rm.texi ('Old): Note that 'Old cannot be applied to local | |
8739 | variables. | |
8740 | ||
f80cddcb EB |
8741 | 2008-05-13 Eric Botcazou <ebotcazou@adacore.com> |
8742 | ||
8743 | PR ada/24880 | |
8744 | PR ada/26635 | |
8745 | * utils.c (convert) <INTEGER_TYPE>: When converting an additive | |
8746 | expression to an integral type with lower precision, use NOP_EXPR | |
8747 | directly in a couple of special cases. | |
8748 | ||
ea0a7f39 | 8749 | 2008-05-12 Samuel Tardieu <sam@rfc1149.net> |
9e81dbc7 | 8750 | Ed Schonberg <schonberg@adacore.com> |
ea0a7f39 ST |
8751 | |
8752 | * sem_ch3.adb (Build_Derived_Record_Type): Accept statically matching | |
8753 | constraint expressions. | |
8754 | ||
751d1520 TB |
8755 | 2008-05-12 Tomas Bily <tbily@suse.cz> |
8756 | ||
ea0a7f39 ST |
8757 | * utils2.c (known_alignment, contains_save_expr_p) |
8758 | (gnat_mark_addressable): Use CASE_CONVERT. | |
8759 | * decl.c (annotate_value): Likewise. | |
8760 | * trans.c (maybe_stabilize_reference): Likewise. | |
8761 | * utils2.c (build_binary_op): Use CONVERT_EXPR_P. | |
8762 | * utils.c (rest_of_record_type_compilation): Likewise. | |
8763 | * trans.c (protect_multiple_eval, Attribute_to_gnu) | |
8764 | (protect_multiple_eval): Likewise. | |
751d1520 | 8765 | |
a1b66071 AS |
8766 | 2008-05-08 Andreas Schwab <schwab@suse.de> |
8767 | ||
8768 | * utils.c (handle_pure_attribute, init_gigi_decls): Rename | |
8769 | DECL_IS_PURE to DECL_PURE_P. | |
8770 | ||
bba74577 EB |
8771 | 2008-05-05 Eric Botcazou <ebotcazou@adacore.com> |
8772 | ||
8773 | * decl.c (maybe_pad_type): Add ??? comment. | |
8774 | ||
8f85525e EB |
8775 | 2008-05-03 Eric Botcazou <ebotcazou@adacore.com> |
8776 | ||
8777 | * decl.c (components_to_record): Zero the alignment of the qualified | |
8778 | union built for the variant part upon creating it. | |
8779 | ||
88f36b7e EB |
8780 | 2008-05-03 Eric Botcazou <ebotcazou@adacore.com> |
8781 | ||
8782 | * decl.c (maybe_pad_type): Try to get a form of the type with integral | |
8783 | mode even if the alignment is not a factor of the original size. But | |
8784 | make sure to create the inner field with the original size. Reorder. | |
8785 | * trans.c (addressable_p) <COMPONENT_REF>: Treat the field of a padding | |
8786 | record as always addressable. | |
8787 | * utils.c (convert): Deal specially with conversions between original | |
8788 | and packable versions of a record type. | |
8789 | * utils2.c (build_binary_op) <MODIFY_EXPR>: Be more restrictive when | |
8790 | recognizing an assignment between padded objects. | |
8791 | ||
8665c7ca EB |
8792 | 2008-05-01 Eric Botcazou <ebotcazou@adacore.com> |
8793 | ||
8794 | * decl.c (make_packable_type): Resize the last component to its RM size | |
8795 | only if it is of an aggregate type. | |
8796 | * trans.c (call_to_gnu): Fix nit in comment. | |
8797 | (gnat_to_gnu): Likewise. | |
8798 | ||
ea342909 ST |
8799 | 2008-04-30 Samuel Tardieu <sam@rfc1149.net> |
8800 | ||
8801 | * Makefile.in: Adapt sh4-linux target. | |
8802 | ||
af4133b2 ST |
8803 | 2008-04-29 Ed Schonberg <schonberg@adacore.com> |
8804 | ||
8805 | PR ada/35792 | |
8806 | * sem_ch3.adb (Find_Type_Name): Refuse completion of an incomplete | |
8807 | tagged type by an untagged protected or task type. | |
8808 | ||
805100b5 | 8809 | 2008-04-28 Eric Botcazou <ebotcazou@adacore.com> |
9e81dbc7 | 8810 | Tristan Gingold <gingold@adacore.com> |
805100b5 EB |
8811 | |
8812 | PR ada/36007 | |
8813 | * decl.c (gnat_to_gnu_entity) <object>: Do not promote alignment | |
8814 | of aliased objects with an unconstrained nominal subtype. | |
8815 | Cap the promotion to the effective alignment of the word mode. | |
8816 | ||
99c2eec1 RW |
8817 | 2008-04-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
8818 | ||
8819 | * Make-lang.in (ada.tags, check-acats, ada/treeprs.ads) | |
8820 | (ada/einfo.h, ada/sinfo.h, ada/nmake.adb, ada/nmake.ads): | |
8821 | Use '&&' instead of ';'. | |
8822 | ||
22a81267 OH |
8823 | 2008-04-24 Olivier Hainque <hainque@adacore.com> |
8824 | ||
8825 | * trans.c (Attribute_to_gnu) <case Attr_Length>: Length computation | |
8826 | doesn't require signed arithmetic anymore. | |
8827 | ||
51eed280 PB |
8828 | 2008-04-23 Paolo Bonzini <bonzini@gnu.org> |
8829 | ||
8830 | * trans.c (Attribute_to_gnu): Don't set TREE_INVARIANT. | |
8831 | (call_to_gnu): Don't set TREE_INVARIANT. | |
8832 | * utils2.c (gnat_build_constructor): Don't set TREE_INVARIANT. | |
8833 | ||
d9126ef8 JS |
8834 | 2008-04-22 Joel Sherrill <joel.sherrill@oarcorp.com> |
8835 | ||
8836 | * s-osinte-rtems.adb: Add sigalstack function. | |
8837 | * s-osinte-rtems.ads: Add SO_ONSTACK and sigalstack | |
8838 | function. Add Alternate_Stack and Alternate_Stack_Size. | |
8839 | Add missing process_shared field to pthread_condattr_t | |
8840 | and change ss_low_priority to int from timespec. | |
8841 | ||
0a58c87e ST |
8842 | 2008-04-22 Samuel Tardieu <sam@rfc1149.net> |
8843 | ||
8844 | * i-forbla.adb: Link against -llapack and -lblas by default | |
8845 | instead of the private -lgnalasup. | |
8846 | ||
009890be OH |
8847 | 2008-04-21 Olivier Hainque <hainque@adacore.com> |
8848 | ||
8849 | Access to most C builtins from Ada | |
8850 | * utils.c: #include "langhooks.h" and define GCC_DIAG_STYLE. | |
8851 | (handle_pure_attribute, handle_novops_attribute, | |
8852 | handle_nonnull_attribute, handle_sentinel_attribute, | |
8853 | handle_noreturn_attribute, handle_malloc_attribute, | |
8854 | handle_type_generic_attribute): New attribute handlers, from C fe. | |
8855 | (gnat_internal_attribute_table): Map the new handlers. | |
8856 | (gnat_init_decl_processing): Move call to gnat_install_builtins to ... | |
8857 | (init_gigi_decls): ... here. | |
8858 | (handle_const_attribute, handle_nothrow_attribute, builtin_decl_for): | |
8859 | Move to a section dedicated to builtins processing. | |
8860 | (build_void_list_node, builtin_type_for_size): New functions. | |
8861 | (def_fn_type, get_nonnull_operand): Likewise. | |
8862 | (install_builtin_elementary_type, install_builtin_function_types, | |
8863 | install_builtin_attributes): Likewise. | |
8864 | (fake_attribute_handler): Fake handler for attributes we don't | |
8865 | support in Ada. | |
8866 | (def_builtin_1): New function, worker for DEF_BUILTIN. | |
8867 | (install_builtin_functions): New function. | |
8868 | (gnat_install_builtins): Move to the builtins processing section. | |
8869 | Now calling the newly introduced installers. | |
8870 | ||
e871a873 EB |
8871 | 2008-04-20 Eric Botcazou <ebotcazou@adacore.com> |
8872 | ||
8873 | * decl.c (gnat_to_gnu_entity) <object>: Also promote the alignment of | |
8874 | constant objects, but not exceptions. | |
8875 | * trans.c (add_decl_expr): Use gnat_types_compatible_p for type | |
8876 | compatibility test. | |
8877 | * utils.c (create_var_decl_1): Likewise. | |
8878 | * utils2.c (build_binary_op) <MODIFY_EXPR>: Also use the padded view of | |
8879 | the type when copying to padded object and the source is a constructor. | |
8880 | ||
98ae7998 EB |
8881 | 2008-04-18 Eric Botcazou <ebotcazou@adacore.com> |
8882 | ||
8883 | * decl.c (gnat_to_gnu_entity) <object>: When trying to promote the | |
8884 | alignment, reset it to zero if it would end up not being greater | |
8885 | than that of the type. | |
8886 | ||
3569056b EB |
8887 | 2008-04-18 Eric Botcazou <ebotcazou@adacore.com> |
8888 | ||
8889 | * decl.c (maybe_pad_type): Only generate the XVS parallel type if | |
8890 | the padded type has a variable size. | |
8891 | ||
9a089d8b EB |
8892 | 2008-04-18 Eric Botcazou <ebotcazou@adacore.com> |
8893 | ||
8894 | * decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Use the return by | |
8895 | target pointer mechanism as soon as the size is not constant. | |
8896 | ||
0cb5c2a7 EB |
8897 | 2008-04-18 Eric Botcazou <ebotcazou@adacore.com> |
8898 | ||
8899 | * gigi.h (create_var_decl_1): Declare. | |
8900 | (create_var_decl): Turn into a macro invoking create_var_decl_1. | |
8901 | (create_true_var_decl): Likewise. | |
8902 | * utils.c (create_var_decl_1): Make global and reorder parameters. | |
8903 | (create_var_decl): Delete. | |
8904 | (create_true_var_decl): Likewise. | |
8905 | ||
90d6701e EB |
8906 | 2008-04-17 Eric Botcazou <ebotcazou@adacore.com> |
8907 | ||
8908 | * decl.c (gnat_to_gnu_entity) <object>: Promote the alignment of | |
8909 | objects by default. | |
8910 | * fe.h (Debug_Flag_Dot_A): Delete. | |
8911 | * debug.adb (-gnatd.a): Update documentation. | |
8912 | ||
35485e12 ST |
8913 | 2008-04-17 Samuel Tardieu <sam@rfc1149.net> |
8914 | ||
8915 | * g-socket.ads, g-socket.adb (Get_Address): Make Stream a | |
8916 | "not null" parameter. | |
8917 | ||
111c1cd9 ST |
8918 | 2008-04-17 Samuel Tardieu <sam@rfc1149.net> |
8919 | ||
8920 | * g-socket.adb: Add a message "IPv6 not supported" to the | |
8921 | Socket_Error exception. | |
8922 | ||
35c91e05 ST |
8923 | 2008-04-16 Samuel Tardieu <sam@rfc1149.net> |
8924 | ||
8925 | PR ada/29015 | |
8926 | * sem_ch12.adb (Instantiate_Type): Check whether the full view of | |
8927 | the type is known instead of the underlying type. | |
8928 | ||
b48a6531 ST |
8929 | 2008-04-15 Ed Schonberg <schonberg@adacore.com> |
8930 | ||
8931 | PR ada/22387 | |
8932 | * exp_ch5.adb (Expand_Assign_Record): Within an initialization | |
8933 | procedure for a derived type retrieve the discriminant values from | |
8934 | the parent using the corresponding discriminant. | |
8935 | ||
462c31ef | 8936 | 2008-04-15 Samuel Tardieu <sam@rfc1149.net> |
9e81dbc7 | 8937 | Gary Dismukes <dismukes@adacore.com> |
462c31ef ST |
8938 | |
8939 | PR ada/28733 | |
8940 | * sem_ch8.adb (Analyze_Use_Package): Do not allow "use" of something | |
8941 | which is not an entity (and hence not a package). | |
8942 | (End_Use_Package): Ditto. | |
8943 | ||
8abe457a ST |
8944 | 2008-04-15 Ed Schonberg <schonberg@adacore.com> |
8945 | ||
8946 | PR ada/16086 | |
8947 | * sem_ch12.adb (Analyze_Formal_Subprogram): The default can be any | |
8948 | protected operation that matches the signature, not only an entry, a | |
8949 | regular subprogram or a literal. | |
8950 | ||
29f4754f EB |
8951 | 2008-04-15 Eric Botcazou <ebotcazou@adacore.com> |
8952 | ||
8953 | * ada-tree.h (DECL_BY_COMPONENT_PTR_P): Use DECL_LANG_FLAG_3. | |
8954 | * decl.c (gnat_to_gnu_entity) <object>: Call maybe_pad_type only | |
8955 | if a size or alignment is specified. Do not take into account | |
8956 | alignment promotions for the computation of the object's size. | |
8957 | <type>: Call maybe_pad_type only if a size or alignment is specified. | |
8958 | (maybe_pad_type): Really reuse the RM_Size of the original type if | |
8959 | requested. | |
8960 | * trans.c (Attribute_to_gnu): Fix a couple of nits. | |
8961 | * utils2.c (build_binary_op) <MODIFY_EXPR>: Merge related conditional | |
8962 | statements. Use the padded view of the type when copying between | |
8963 | padded objects of the same underlying type. | |
8964 | ||
f3d0f304 RW |
8965 | 2008-04-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
8966 | ||
8967 | * vms_data.ads: Fix typo in constant. | |
8968 | * gen-soccon.c: Fix typo in error string. | |
8969 | * gnat_rm.texi (Pragma Optimize_Alignment, Pragma Postcondition): | |
8970 | Fix typos. | |
8971 | * a-calcon.ads, a-calend-vms.adb, a-calend.adb, a-crdlli.ads, | |
8972 | bcheck.adb, checks.adb, einfo.ads, errout.adb, erroutc.adb, | |
8973 | erroutc.ads, exp_attr.adb, exp_ch11.adb, exp_ch2.adb, | |
8974 | exp_ch5.adb, exp_ch9.adb, exp_ch9.ads, exp_pakd.adb, | |
8975 | exp_util.adb, fmap.adb, g-soccon-linux-mips.ads, | |
8976 | g-soccon-rtems.ads, g-timsta.adb, g-timsta.ads, lib-writ.ads, | |
8977 | mlib-tgt-specific-linux.adb, mlib-tgt-specific-tru64.adb, | |
8978 | s-interr-vxworks.adb, s-interr.adb, s-osinte-lynxos.ads, | |
8979 | s-rident.ads, s-taprop-solaris.adb, s-tassta.adb, s-win32.ads, | |
8980 | sem_aggr.adb, sem_attr.ads, sem_ch10.adb, sem_ch13.ads, | |
8981 | sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, | |
8982 | sem_prag.ads, sem_res.adb, sem_util.adb, sem_util.ads, | |
8983 | sinfo.ads: Fix typos in comments. | |
8984 | ||
2efcad9f RD |
8985 | 2008-04-14 Robert Dewar <dewar@adacore.com> |
8986 | ||
8987 | * sem_prag.adb (Analyze_Pragma, Linker_Section case): Extend error | |
8988 | to every non-object and change error message. | |
8989 | ||
8f3723e0 RD |
8990 | 2008-04-14 Robert Dewar <dewar@adacore.com> |
8991 | ||
8992 | * sem_util.ads, sem_util.adb (In_Subprogram): Remove. | |
8993 | * sem_attr.adb (Anayze_Attribute): Check for Current_Subprogram | |
8994 | directly. | |
8995 | ||
32f7efe1 ST |
8996 | 2008-04-14 Samuel Tardieu <sam@rfc1149.net> |
8997 | ||
8998 | PR ada/18680 | |
8999 | * sem_prag.adb (Analyze_Pragma, Linker_Section case): Refuse to | |
9000 | apply pragma Linker_Section on type. | |
9001 | ||
b039b10e ST |
9002 | 2008-04-14 Samuel Tardieu <sam@rfc1149.net> |
9003 | ||
9004 | PR ada/16098 | |
9005 | * sem_prag.adb (Error_Pragma_Ref): New. | |
9006 | (Process_Convention): Specialized message for non-local | |
9007 | subprogram renaming. Detect the problem in homonyms as well. | |
9008 | ||
cb572b75 ST |
9009 | 2008-04-14 Samuel Tardieu <sam@rfc1149.net> |
9010 | ||
9011 | PR ada/15915 | |
9012 | * sem_util.ads, sem_util.adb (Denotes_Variable): New function. | |
9013 | * sem_ch12.adb (Instantiate_Object): Use it. | |
9014 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Ensure that | |
9015 | storage pool denotes a variable as per RM 13.11(15). | |
9016 | ||
17972da7 ST |
9017 | 2008-04-14 Samuel Tardieu <sam@rfc1149.net> |
9018 | ||
9019 | * sem_util.ads, sem_util.adb (In_Subprogram): New function. | |
9020 | * sem_attr.adb (Analyze_Attribute, Attribute_Old case): Use it. | |
9021 | ||
57f80aa9 RE |
9022 | 2008-04-14 Rolf Ebert <rolf.ebert.gcc@gmx.de> |
9023 | ||
9024 | PR ada/20822 | |
9025 | * xgnatugn.adb (Put_Line): New procedure, ensuring Unix | |
9026 | line endings even on non-Unix platforms. | |
9027 | ||
9ff231e2 ST |
9028 | 2008-04-14 Samuel Tardieu <sam@rfc1149.net> |
9029 | ||
9030 | PR ada/35050 | |
9031 | * xref_lib.adb (Parse_Identifier_Info): Correctly parse and ignore the | |
9032 | renaming information. | |
9033 | ||
9e81dbc7 | 9034 | 2008-04-13 Samuel Tardieu <sam@rfc1149.net> |
92d4508a ST |
9035 | |
9036 | PR ada/17985 | |
9037 | * sem_aggr.adb (Valid_Ancestor_Type): A type is not an ancestor of | |
9038 | itself. | |
9039 | ||
12a13f01 RW |
9040 | 2008-04-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
9041 | ||
3354f96d RW |
9042 | * sfn_scan.adb, sfn_scan.ads, sinfo.ads, |
9043 | sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput.ads, | |
9044 | snames.ads, sprint.adb, stand.ads, stringt.ads, | |
9045 | styleg.adb, styleg.ads, stylesw.adb, stylesw.ads, | |
9046 | switch.ads, sysdep.c, table.adb, table.ads, | |
9047 | targparm.ads, tb-gcc.c, tbuild.ads, tracebak.c, | |
9048 | trans.c, tree_io.adb, treepr.adb, types.adb, types.ads, | |
9049 | uintp.adb, uintp.ads, utils.c, utils2.c, validsw.ads, | |
9050 | vms_conv.adb, vms_conv.ads, vms_data.ads, widechar.adb, | |
9051 | widechar.ads, xeinfo.adb, xgnatugn.adb, xr_tabls.adb, | |
9052 | xr_tabls.ads, xref_lib.adb, xref_lib.ads, xsinfo.adb: | |
9053 | Fix comment typos. | |
9054 | ||
f3d57416 RW |
9055 | * sem_ch10.adb, sem_ch10.ads, |
9056 | sem_ch12.adb, sem_ch12.ads, sem_ch13.adb, sem_ch13.ads, | |
9057 | sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, | |
9058 | sem_ch6.ads, sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, | |
9059 | sem_elab.adb, sem_elab.ads, sem_elim.ads, sem_eval.adb, | |
9060 | sem_eval.ads, sem_intr.adb, sem_mech.adb, sem_mech.ads, | |
9061 | sem_prag.adb, sem_prag.ads, sem_res.adb, sem_res.ads, | |
9062 | sem_type.adb, sem_util.adb, sem_util.ads, sem_warn.adb, | |
9063 | sem_warn.ads: Fix comment typos. | |
9064 | ||
12a13f01 RW |
9065 | * s-secsta.adb, s-sequio.ads, s-shasto.ads, |
9066 | s-soflin.ads, s-stalib.ads, s-stausa.adb, | |
9067 | s-stausa.ads, s-strxdr.adb, s-taenca.adb, s-taenca.ads, | |
9068 | s-taprob.adb, s-taprop-hpux-dce.adb, s-taprop-irix.adb, | |
9069 | s-taprop-linux.adb, s-taprop-mingw.adb, s-taprop-posix.adb, | |
9070 | s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb, | |
9071 | s-taprop-vxworks.adb, s-taprop.ads, s-tarest.adb, | |
9072 | s-tarest.ads, s-tasini.adb, s-tasini.ads, s-taskin.ads, | |
9073 | s-tasque.ads, s-tassta.adb, s-tassta.ads, s-tasuti.ads, | |
9074 | s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, | |
9075 | s-tpopsp-posix.adb, s-tpopsp-rtems.adb, s-tposen.adb, | |
9076 | s-tposen.ads, s-traceb-hpux.adb, s-traces.ads, | |
9077 | s-trafor-default.ads, s-unstyp.ads, s-utf_32.ads, | |
9078 | s-vaflop.adb, s-vaflop.ads, s-valrea.adb, s-valuti.adb, | |
9079 | s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, scans.ads, | |
9080 | scn.adb, scng.adb, seh_init.c, sem.ads, sem_aggr.adb, | |
9081 | sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads, | |
9082 | sem_cat.adb, sem_cat.ads: Fix comment typos. | |
9083 | ||
2b699ab1 JS |
9084 | 2008-04-12 Joel Sherrill <joel@oarcorp.com> |
9085 | ||
9086 | PR ada/35825 | |
9087 | * g-soccon-rtems.ads: Add IP_PKTINFO as unsupported. | |
9088 | ||
1e273538 AC |
9089 | 2008-04-12 Arnaud Charlet <charlet@adacore.com> |
9090 | ||
9091 | * s-linux-hppa.ads: Fix syntax errors. | |
9092 | ||
276e95ca RW |
9093 | 2008-04-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
9094 | ||
9095 | * gnat_ugn.texi: Fix typos. | |
9096 | * raise-gcc.c, repinfo.adb, repinfo.ads, restrict.adb, | |
9097 | restrict.ads, rtsfind.adb, rtsfind.ads, s-arit64.ads, | |
9098 | s-asthan-vms-alpha.adb, s-auxdec.ads, s-casuti.ads, | |
9099 | s-fatflt.ads, s-fatgen.adb, s-fatlfl.ads, | |
9100 | s-fatllf.ads, s-fatsfl.ads, s-filofl.ads, | |
9101 | s-finimp.adb, s-finroo.ads, s-fishfl.ads, | |
9102 | s-fvadfl.ads, s-fvaffl.ads, s-fvagfl.ads, | |
9103 | s-hibaen.ads, s-htable.ads, s-imgcha.adb, | |
9104 | s-imgenu.ads, s-imgint.adb, s-imgrea.adb, | |
9105 | s-inmaop-dummy.adb, s-inmaop.ads, s-interr-vms.adb, | |
9106 | s-interr-vxworks.adb, s-interr.adb, s-interr.ads, | |
9107 | s-intman-vxworks.ads, s-intman.ads, s-mastop-irix.adb, | |
9108 | s-os_lib.adb, s-os_lib.ads, s-osinte-aix.ads, | |
9109 | s-osinte-darwin.ads, s-osinte-freebsd.ads, | |
9110 | s-osinte-hpux.ads, s-osinte-lynxos-3.adb, | |
9111 | s-osinte-lynxos-3.ads, s-osinte-lynxos.ads, | |
9112 | s-osinte-rtems.ads, s-osinte-solaris-posix.ads, | |
9113 | s-osprim-mingw.adb, s-osprim-vms.adb, s-parame-ae653.ads, | |
9114 | s-parame-hpux.ads, s-parame-vms-alpha.ads, | |
9115 | s-parame-vms-ia64.ads, s-parame-vms-restrict.ads, | |
9116 | s-parame-vxworks.ads, s-parame.ads, s-parint.adb, | |
9117 | s-parint.ads, s-poosiz.adb, s-proinf-irix-athread.ads, | |
9118 | s-proinf.ads, s-regexp.adb, s-regpat.adb, s-regpat.ads, | |
9119 | s-rident.ads: Fix comment typos. | |
9120 | ||
ce4e59c4 ST |
9121 | 2008-04-09 Samuel Tardieu <sam@rfc1149.net> |
9122 | ||
9123 | PR ada/28305 | |
9124 | * sem_ch6.adb (Build_Body_To_Inline): Do not save and restore | |
9125 | environment if generic instance is a top-level one. | |
9126 | ||
6d21c8af DR |
9127 | 2008-04-09 Doug Rupp <rupp@adacore.com> |
9128 | ||
9129 | * decl.c (validate_size): Set minimum size for fat pointers same as | |
9130 | access types. Code clean ups. | |
9131 | ||
9132 | * gmem.c (xstrdup32): New macro for 32bit dup on VMS, noop otherwise | |
9133 | (__gnat_gmem_a2l_initialize): Dup exename into 32 bit memory on VMS | |
9134 | ||
9135 | * s-auxdec-vms_64.ads, s-auxdec.ads (Short_Address_Size): New constant | |
9136 | ||
9137 | * s-crtl.ads (malloc32) New function, alias for malloc | |
9138 | (realloc32) New function, alias for realloc | |
9139 | ||
9140 | * socket.c (__gnat_new_socket_set): Malloc fd_set in 32 bits on VMS | |
9141 | ||
9142 | * utils2.c (build_call_alloc_dealloc): Return call to short malloc if | |
9143 | allocator size is 32 and default pointer size is 64. | |
9144 | (find_common_type): Document assumption on t1/t2 vs lhs/rhs. Force use of | |
9145 | lhs type if smaller, whatever the modes. | |
9146 | ||
9147 | * gigi.h (malloc32_decl): New macro definition | |
9148 | ||
9149 | * utils.c (init_gigi_decls): New malloc32_decl | |
9150 | Various code clean ups. | |
9151 | ||
9152 | * s-asthan-vms-alpha.adb (Process_AST.To_Address): Unchecked convert to | |
9153 | Task_Address vice System.Address. | |
9154 | ||
9155 | * s-taspri-vms.ads: Import System.Aux_DEC | |
9156 | (Task_Address): New subtype of System.Aux_DEC.Short_Address | |
9157 | (Task_Address_Size): New constant size of System.Aux_DEC.Short_Address | |
9158 | ||
9159 | * s-asthan-vms-alpha.adb (Process_AST.To_Address): Unchecked convert to | |
9160 | Task_Address vice System.Address. | |
9161 | ||
9162 | * s-inmaop-vms.adb: Import System.Task_Primitives | |
9163 | (To_Address): Unchecked convert to Task_Address vice System.Address | |
9164 | ||
9165 | * s-taprop-vms.adb (Timed_Delay): Always set the timer even if delay | |
9166 | expires now. | |
9167 | (To_Task_ID) Unchecked convert from Task_Adddress vice System.Address | |
9168 | (To_Address) Unchecked convert to Task_Address vice System.Address | |
9169 | ||
9170 | * s-tpopde-vms.adb: Remove unnecessary warning pragmas | |
9171 | ||
9172 | * g-socthi-vms.ads: Add 32bit size clauses on socket access types. | |
9173 | ||
581edf92 EB |
9174 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> |
9175 | ||
9176 | * gigi.h (standard_datatypes): Add ADT_fdesc_type and ADT_null_fdesc. | |
9177 | (fdesc_type_node): Define. | |
9178 | (null_fdesc_node): Likewise. | |
9179 | * decl.c (gnat_to_gnu_entity) <E_Access_Subprogram_Type>: If the target | |
9180 | uses descriptors for vtables and the type comes from a dispatch table, | |
9181 | return the descriptor type. | |
9182 | * trans.c (Attribute_to_gnu) <Attr_Unrestricted_Access>: If the target | |
9183 | uses descriptors for vtables and the type comes from a dispatch table, | |
9184 | build a descriptor in the static case and copy the existing one in the | |
9185 | non-static case. | |
9186 | (gnat_to_gnu) <N_Null>: If the target uses descriptors for vtables and | |
9187 | the type is a pointer-to-subprogram coming from a dispatch table, | |
9188 | return the null descriptor. | |
9189 | <N_Unchecked_Type_Conversion>: If the target uses descriptors for | |
9190 | vtables, the source type is the descriptor type and the target type | |
9191 | is a pointer type, first build the pointer. | |
9192 | * utils.c (init_gigi_decls): If the target uses descriptors for vtables | |
9193 | build the descriptor type and the null descriptor. | |
9194 | ||
e1da2b17 EB |
9195 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> |
9196 | ||
9197 | * decl.c (prepend_attributes): Fix typo. | |
9198 | * trans.c (Pragma_to_gnu): Likewise. | |
9199 | * utils.c (gnat_genericize): Likewise. | |
9200 | ||
2b3dffa6 | 9201 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> |
9e81dbc7 | 9202 | Richard Kenner <kenner@adacore.com> |
2b3dffa6 EB |
9203 | |
9204 | * ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Only set it when bit-packed. | |
9205 | * decl.c (gnat_to_gnu_entity): Adjust for above change. | |
9206 | <E_Record_Type>: Try to get a better form of the component for | |
9207 | packing, even if it has an integral mode. | |
9208 | <E_Record_Subtype>: Likewise. | |
9209 | * trans.c (gnat_to_gnu): Do not require BLKmode for the special | |
9210 | exception suppressing the final conversion between record types. | |
9211 | ||
ba3f46d0 EB |
9212 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> |
9213 | ||
9214 | * decl.c (gnat_to_gnu_entity) <object>: If -gnatd.a and not optimizing | |
9215 | alignment for space, promote the alignment of non-scalar variables with | |
9216 | no size and alignment. | |
9217 | * gigi.h (gnat_types_compatible_p): Declare. | |
9218 | * misc.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Set to above predicate. | |
9219 | * trans.c (gnat_to_gnu): Revert revision 129339 change. Minor cleanup. | |
9220 | * utils.c (gnat_types_compatible_p) : New predicate. | |
9221 | (convert): Use it throughout to test for cases where a mere view | |
9222 | conversion is sufficient. | |
9223 | * utils2.c (build_binary_op): Minor tweaks. | |
9224 | (build_unary_op): Likewise. | |
9225 | ||
373140ef EB |
9226 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> |
9227 | ||
9228 | * decl.c (adjust_packed): Expand comment. | |
9229 | ||
ea081ad7 AC |
9230 | 2008-04-08 Arnaud Charlet <charlet@adacore.com> |
9231 | ||
9232 | * s-tasuti.ads: Use Task_Address instead of System.Address. | |
9233 | ||
9234 | * makeutl.adb (Path_Or_File_Name): New function | |
9235 | ||
9236 | * nlists.ads, itypes.ads: Update comments. | |
9237 | ||
9238 | * s-crtl.ads (malloc32, realloc32): New functions. | |
9239 | ||
9240 | * s-auxdec.ads (Short_Address_Size): New constant. | |
9241 | ||
9242 | * a-taside.adb, s-tasdeb.adb: Use Task_Address. | |
9243 | ||
9244 | * s-ststop.ads, s-ststop.adb: New file. | |
9245 | ||
9246 | * exp_tss.ads, s-taprop-lynxos.adb: Update comments. | |
9247 | Minor reformatting. | |
9248 | ||
d563d3f0 AC |
9249 | 2008-04-08 Pascal Obry <obry@adacore.com> |
9250 | ||
9251 | * g-sercom.ads, g-sercom.adb (Data_Rate): Add B115200. | |
9252 | (Stop_Bits_Number): New type. | |
9253 | (Parity_Check): Likewise. | |
9254 | (Set): Add parameter to set the number of stop bits and | |
9255 | the parity. Parameter timeout is now a duration instead | |
9256 | of a plain integer. | |
9257 | ||
9258 | * g-sercom-linux.adb: | |
9259 | Implement the stop bits and parity support for GNU/Linux. | |
9260 | Fix handling of timeout, it must be given in tenth of seconds. | |
9e81dbc7 | 9261 | |
d563d3f0 AC |
9262 | * g-sercom-mingw.adb: |
9263 | Implement the stop bits and parity support for Windows. | |
9264 | Use new s-win32.ads unit instead of declaring Win32 services | |
9265 | directly into this body. | |
9266 | Update handling of timeout as now a duration. | |
9267 | ||
9268 | * s-win32.ads, s-winext.ads: New files. | |
9269 | ||
9270 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> | |
9271 | Arnaud Charlet <charlet@adacore.com> | |
9272 | ||
9273 | * s-osinte-linux-alpha.ads, s-osinte-linux-hppa.ads: Removed. | |
9274 | ||
9275 | s-taspri-posix-noaltstack.ads, s-linux.ads, s-linux-alpha.ads, | |
9276 | s-linux-hppa.ads: New files. Disable alternate stack on ia64-hpux. | |
9277 | ||
9278 | * s-osinte-lynxos-3.ads, | |
9279 | (Alternate_Stack): Remove when not needed. Simplify declaration | |
9280 | otherwise. | |
9281 | (Alternate_Stack_Size): New constant. | |
9282 | ||
9283 | s-osinte-mingw.ads, s-taprop-mingw.adb: Code clean up: avoid use of | |
9284 | 'Unrestricted_Access. | |
9285 | ||
9286 | * s-osinte-hpux.ads, s-osinte-solaris-posix.ads, s-osinte-aix.ads, | |
9287 | s-osinte-lynxos.ads, s-osinte-freebsd.ads s-osinte-darwin.ads, | |
9288 | s-osinte-tru64.ads, s-osinte-irix.ads, s-osinte-linux.ads, | |
9289 | s-osinte-solaris.ads, s-osinte-vms.ads | |
9290 | (SA_ONSTACK): New constant. | |
9291 | (stack_t): New record type. | |
9292 | (sigaltstack): New imported function. | |
9293 | (Alternate_Stack): New imported variable. | |
9294 | (Alternate_Stack_Size): New constant. | |
9295 | ||
9296 | * system-linux-x86_64.ads: (Stack_Check_Probes): Set to True. | |
9297 | ||
9298 | * s-taspri-lynxos.ads, s-taspri-solaris.ads, s-taspri-tru64.ads, | |
ea081ad7 AC |
9299 | s-taspri-hpux-dce.ads, s-taspri-dummy.ads, s-taspri-posix.ads, |
9300 | s-taspri-vms.ads (Task_Address): New subtype of System.Address | |
d563d3f0 AC |
9301 | (Task_Address_Size): New constant size of System.Address |
9302 | (Alternate_Stack_Size): New constant. | |
9303 | ||
9304 | * s-taprop-posix.adb, s-taprop-linux.adb (Get_Stack_Attributes): Delete. | |
9305 | (Enter_Task): Do not notify stack to System.Stack_Checking.Operations. | |
9306 | Establish the alternate stack if the platform makes use of n alternate | |
9307 | signal stack for stack overflows. | |
9308 | (Create_Task): Take into account the alternate stack in the stack size. | |
9309 | (Initialize): Save the address of the alternate stack into the ATCB for | |
9310 | the environment task. | |
9311 | (Create_Task): Fix assertions for NPTL library (vs old LinuxThreads). | |
9312 | ||
ea081ad7 | 9313 | * s-parame.adb (Minimum_Stack_Size): Increase value to 16K |
d563d3f0 AC |
9314 | |
9315 | * system-linux-x86.ads: (Stack_Check_Probes): Set to True. | |
9316 | ||
9e81dbc7 | 9317 | * s-intman-posix.adb: |
d563d3f0 AC |
9318 | (Initialize): Set SA_ONSTACK for SIGSEGV if the platform makes use of an |
9319 | alternate signal stack for stack overflows. | |
9320 | ||
9321 | * init.c (__gnat_adjust_context_for_raise, Linux version): On i386 and | |
9322 | x86-64, adjust the saved value of the stack pointer if the signal was | |
9323 | raised by a stack checking probe. | |
9324 | (HP-UX section): Use global __gnat_alternate_stack as signal handler | |
9325 | stack and only for SIGSEGV. | |
9326 | (Linux section): Likewise on x86 and x86-64. | |
9327 | [VxWorks section] | |
9328 | (__gnat_map_signal): Now static. | |
9329 | (__gnat_error_handler): Not static any more. | |
9330 | (__gnat_adjust_context_for_raise): New function. Signal context | |
9331 | adjustment for PPC && !VTHREADS && !RTP, as required by the zcx | |
9332 | propagation circuitry. | |
9333 | (__gnat_error_handler): Second argument of a sigaction handler is a | |
9334 | pointer, not an int, and is unused. | |
9335 | Adjust signal context before mapping to exception. | |
9336 | Install signal handlers for LynxOS case. | |
9337 | ||
9338 | * s-taskin.ads (Common_ATCB): New field Task_Alternate_Stack. | |
9339 | (Task_Id): Set size to Task_Address_Size | |
9340 | (To_Task_id): Unchecked convert from Task_Address vice System.Address | |
9341 | (To_Address): Unchecked convert to Task_Address vice System.Address | |
9342 | ||
9343 | * s-tassta.adb (Task_Wrapper): Define the alternate stack and save its | |
9344 | address into the ATCB if the platform makes use of an alternate signal | |
9345 | stack for stack overflows. | |
9346 | (Free_Task): Add call to Finalize_Attributes_Link. | |
9347 | Add argument Relative_Deadline to pass the value specified for | |
9348 | the task. This is not yet used for any target. | |
9349 | ||
9350 | * s-tassta.ads (Create_Task): Add argument Relative_Deadline to pass | |
9351 | the value specified for the task. | |
9352 | ||
9353 | 2008-04-08 Arnaud Charlet <charlet@adacore.com> | |
9354 | ||
9355 | (s-osinte-vxworks6.ads): Removed, merged with s-osinte-vxworks.ads/.adb | |
9356 | (s-vxwext.ads, s-vxwext-kernel.ads, s-vxwext-rtp.ads, | |
9357 | s-vxwext-rtp.adb): New files. | |
9358 | ||
9e81dbc7 | 9359 | * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-osinte-vxworks.adb: |
d563d3f0 AC |
9360 | Minor updates to accomodate changes above. |
9361 | ||
9362 | 2008-04-08 Pascal Obry <obry@adacore.com> | |
9363 | ||
9364 | * a-exetim-mingw.adb, s-gloloc-mingw.adb, s-taprop-mingw.adb, | |
9365 | s-tasinf-mingw.ad{s,b}, s-taspri-mingw.ads: | |
9366 | Use new s-win32.ads unit instead of declaration | |
9367 | from s-osinte-mingw.ads. | |
9e81dbc7 | 9368 | |
d563d3f0 AC |
9369 | * s-osinte-mingw.ads: |
9370 | Move all non tasking based interface to s-win32.ads. | |
9e81dbc7 | 9371 | |
d563d3f0 AC |
9372 | * s-osprim-mingw.adb: |
9373 | Remove duplicated declarations and use s-win32.ads | |
9374 | unit instead. | |
9375 | ||
9376 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
9377 | Arnaud Charlet <charlet@adacore.com> | |
9378 | ||
9379 | * mlib-tgt-aix.adb, mlib-tgt-darwin.adb, mlib-tgt-hpux.adb, | |
9380 | mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-lynxos.adb, | |
9381 | mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb, | |
9382 | mlib-tgt-vms.ads, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, | |
9383 | mlib-tgt-vxworks.adb, mlib-tgt-mingw.adb: Renamed into... | |
9384 | ||
9385 | * mlib-tgt-specific-aix.adb, mlib-tgt-specific-darwin.adb, | |
9386 | mlib-tgt-specific-hpux.adb, mlib-tgt-specific-irix.adb, | |
9387 | mlib-tgt-specific-linux.adb, mlib-tgt-specific-lynxos.adb, | |
9388 | mlib-tgt-specific-solaris.adb, mlib-tgt-specific-tru64.adb, | |
9389 | mlib-tgt-vms_common.adb, mlib-tgt-vms_common.ads, | |
9390 | mlib-tgt-specific-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb, | |
9391 | mlib-tgt-specific-vxworks.adb, mlib-tgt-specific-xi.adb, | |
9392 | mlib-tgt-specific-mingw.adb: New names. | |
9393 | ||
9e81dbc7 | 9394 | * Makefile.in: |
d563d3f0 AC |
9395 | On VxWorks platforms use s-stchop-limit.ads for s-stchop.ads |
9396 | Get rid of gnatbl. | |
9397 | (EXTRA_GNATRTL_NONTASKING_OBJS): Add s-win32.o | |
9398 | Files mlib-tgt-*.adb have been renamed mlib-tgt-specific-*.adb | |
9399 | Minor updates for VMS | |
9400 | ||
ea081ad7 AC |
9401 | * gnatbl.c: Removed. |
9402 | ||
d563d3f0 AC |
9403 | 2008-04-08 Thomas Quinot <quinot@adacore.com> |
9404 | ||
9405 | * g-expect-vms.adb, a-textio.adb, a-witeio.adb, exp_dbug.adb, | |
9406 | g-expect.adb, g-locfil.adb, gnatchop.adb, gnatdll.adb, gnatlbr.adb, | |
9407 | gnatmem.adb, g-regist.adb, i-vxwork.ads, mlib-utl.adb, i-vxwork-x86.ads, | |
9408 | a-ztexio.adb, g-enblsp-vms-alpha.adb, g-enblsp-vms-ia64.adb, | |
9409 | s-os_lib.adb, s-regpat.adb, s-regpat.ads: Fix incorrect casing of | |
9410 | ASCII.NUL throughout. | |
9411 | ||
9412 | 2008-04-08 Arnaud Charlet <charlet@adacore.com> | |
9413 | Matthew Heaney <heaney@adacore.com> | |
9414 | ||
9415 | * a-cgcaso.adb, a-convec.adb: (Swap, Sift): Avoid use of complex | |
9416 | renaming. | |
9417 | ||
9e81dbc7 | 9418 | * a-cgaaso.ads, a-secain.ads, a-slcain.ads, a-shcain.ads, |
d563d3f0 AC |
9419 | a-crdlli.ads, a-coormu.ads, a-ciormu.ads: modified header to conform |
9420 | to convention for non-RM specs. | |
9421 | Add descriptive header, and documented each operation | |
9422 | document each operation | |
9423 | ||
9424 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
9425 | Bob Duff <duff@adacore.com> | |
9426 | Gary Dismukes <dismukes@adacore.com> | |
9427 | Ed Schonberg <schonberg@adacore.com> | |
9428 | ||
9429 | * alloc.ads: Add entries for Obsolescent_Warnings table | |
9430 | ||
9431 | * einfo.ads, einfo.adb: Minor reformatting. | |
9432 | (Is_Discriminal): New subprogram. | |
9433 | (Is_Prival): New subprogram. | |
9434 | (Is_Protected_Component): New subprogram. | |
9435 | (Is_Protected_Private): Removed. | |
9436 | (Object_Ref, Set_Object_Ref): Removed. | |
9437 | (Prival, Set_Prival): Change assertion. | |
9438 | (Privals_Chain, Set_Privals_Chain): Removed. | |
9439 | (Prival_Link, Set_Prival_Link): New subprogram. | |
9440 | (Protected_Operation, Set_Protected_Operation): Removed. | |
9441 | (Protection_Object, Set_Protection_Object): New subprogram. | |
9442 | (Write_Field17_Name): Remove case for Object_Ref. | |
9443 | (Write_Field20_Name): Add case for Prival_Link. | |
9444 | (Write_Field22_Name): Remove case for Protected_Operation, | |
9445 | Privals_Chain. | |
9446 | Add case for Protection_Object. | |
9447 | (Can_Use_Internal_Rep): Make this into a [base type only] attribute, | |
9448 | so clients | |
9449 | (Overlays_Constant): New flag | |
9450 | (Is_Constant_Object): New predicate | |
9451 | (Is_Standard_Character_Type): New predicate | |
9452 | (Optimize_Alignment_Space): New flag | |
9453 | (Optimize_Alignment_Time): New flag | |
9454 | (Has_Postconditions): New flag | |
9455 | (Obsolescent_Warrning): Field removed | |
9456 | (Spec_PPC_List): New field | |
9457 | (Relative_Deadline_Variable, Set_Relative_Deadline_Variable): Add | |
9458 | subprograms to get and set the relative deadline associated to a task. | |
9459 | ||
9460 | * exp_attr.adb (May_Be_External_Call): Account for the case where the | |
9461 | Access attribute is part of a named parameter association. | |
9462 | (Expand_Access_To_Protected_Op): Test for the attribute occurring | |
9463 | within an init proc and use that directly as the scope rather than | |
9464 | traversing up to the protected operation's enclosing scope. Only apply | |
9465 | assertion on Is_Open_Scopes in the case the scope traversal is done. | |
9466 | For the init proc case use the address of the first formal (_init) as | |
9467 | the protected object reference. | |
9468 | Implement Invalid_Value attribute | |
9469 | (Expand_N_Attribute_Reference): Case Attribute_Unrestricted_Access. | |
9470 | contents of the dispatch table there is no need to duplicate the | |
9471 | itypes associated with record types (i.e. the implicit full view | |
9472 | of private types). | |
9473 | Implement Enum_Val attribute | |
9474 | (Expand_N_Attribute_Reference, case Old): Properly handle appearence | |
9475 | within _Postconditions procedure | |
9476 | (Expand_N_Attribute_Reference, case Result): Implement new attribute | |
9477 | ||
9478 | * exp_ch5.adb (Expand_N_Simple_Return_Statement): Handle case in which | |
9479 | a return statement calls a function that is not available in | |
9480 | configurable runtime. | |
9481 | (Analyze_If_Statement): don't optimize simple True/False cases in -O0 | |
9482 | (Expand_Non_Function_Return): Generate call to _Postconditions proc | |
9483 | (Expand_Simple_Function_Return): Ditto | |
9484 | ||
9485 | * frontend.adb: Add call to Sem_Aux.Initialize | |
9486 | ||
9487 | * sem_aux.ads, sem_aux.adb: New file. | |
9488 | ||
9489 | * par-prag.adb: Add entries for pragmas Precondition/Postcondition | |
9490 | Add new Pragma_Relative_Deadline. | |
9491 | Add support for pragmas Check and Check_Policy | |
9492 | ||
9493 | * sem_attr.ads, sem_attr.adb (Check_Not_CPP_Type): New subprogram. | |
9494 | (Check_Stream_Attribute): Add missing check (not allowed in CPP types) | |
9495 | (Analyze_Attribute): In case of attributes 'Alignment and 'size add | |
9496 | missing check because they are not allowed in CPP tagged types. | |
9497 | Add Sure parameter to Note_Possible_Modification calls | |
9498 | Add implementation of Invalid_Value attribute | |
9499 | Implement new attribute Has_Tagged_Values | |
9500 | Implement Enum_Val attribute | |
9501 | (Analyze_Attribute, case Range): Set Name_Req True for prefix of | |
9502 | generated attributes. | |
9503 | (Analyze_Attribute, case Result): If prefix of the attribute is | |
9504 | overloaded, it always resolves to the enclosing function. | |
9505 | (Analyze_Attribute, case Result): Properly deal with analysis when | |
9506 | Postconditions are not active. | |
9507 | (Resolve_Attribute, case Result): Properly deal with appearence during | |
9508 | preanalysis in spec. | |
9509 | Add processing for attribute Result | |
9510 | ||
9511 | * sem_ch6.ads, sem_ch6.adb (Check_Overriding_Indicator): Code cleanup | |
9512 | for operators. | |
9513 | (Analyze_Subprogram_Body): Install private_with_clauses when the body | |
9514 | acts as a spec. | |
9515 | (Check_Inline_Pragma): recognize an inline pragma that appears within | |
9516 | the subprogram body to which it applies. | |
9517 | (Analyze_Function_Return): Check that type of the expression of a return | |
9518 | statement in a function with a class-wide result is not declared at a | |
9519 | deeper level than the function. | |
9520 | (Process_PPCs): Deal with enabling/disabling, using PPC_Enabled flag | |
9521 | (Verify_Overriding_Indicator): Handle properly subprogram bodies for | |
9522 | user- defined operators. | |
9523 | (Install_Formals): Moved to spec to allow use from Sem_Prag for | |
9524 | analysis of precondition/postcondition pragmas. | |
9525 | (Analyze_Subprogram_Body.Last_Real_Spec_Entity): New name for | |
9526 | Last_Formal, along with lots of comments on what this is about | |
9527 | (Analyze_Subprogram_Body): Fix case where we move entities from the | |
9528 | spec to the body when there are no body entities (now possible with | |
9529 | precondition and postcondition pragmas). | |
9530 | (Process_PPCs): New procedure | |
9531 | (Analyze_Subprogram_Body): Add call to Process_PPCs | |
9532 | ||
9533 | * sem_ch8.adb (Use_One_Type): refine warning on a redundant use_type | |
9534 | clause. | |
9535 | (Pop_Scope): Restore Check_Policy_List on scope exit | |
9536 | (Push_Scope): Save Check_Policy_List on scope entry | |
9537 | Change name In_Default_Expression => In_Spec_Expression | |
9538 | Change name Analyze_Per_Use_Expression => Preanalyze_Spec_Expression | |
9539 | Change name Pre_Analyze_And_Resolve => Preanalyze_And_Resolve | |
9540 | (Analyze_Object_Renaming): Allow 'Reference as object | |
9541 | (Analyze_Pragma, case Restriction_Warnings): Call GNAT_Pragma | |
9542 | (Process_Restrictions_Or_Restriction_Warnings): Check for bad spelling | |
9543 | of restriction identifier. | |
9544 | Add Sure parameter to Note_Possible_Modication calls | |
9545 | ||
9546 | * sem_prag.ads, sem_prag.adb (Analyze_Pragma, case Stream_Convert): | |
9547 | Don't check for primitive operations when calling Rep_Item_Too_Late. | |
9548 | (Process_Import_Or_Interface): Do not place flag on formal | |
9549 | subprograms. | |
9550 | (Analyze_Pragma, case Export): If the entity is a deferred constant, | |
9551 | propagate information to full view, which is the one elaborated by the | |
9552 | back-end. | |
9553 | (Make_Inline): the pragma is effective if it applies to an internally | |
9554 | generated subprogram declaration for a body that carries the pragma. | |
9555 | (Analyze_Pragma, case Optimize_Alignment): Set new flag | |
9556 | Optimize_Alignment_Local. | |
9557 | (Analyze_PPC_In_Decl_Part): New procedure | |
9558 | (Get_Pragma_Arg): Moved to outer level | |
9559 | (Check_Precondition_Postcondition): Change to allow new visibility | |
9560 | rules for package spec | |
9561 | (Analyze_Pragma, case Check_Policy): Change placement rules to be | |
9562 | same as pragma Suppress/Unsuppress. | |
9563 | Change name In_Default_Expression => In_Spec_Expression | |
9564 | Change name Analyze_Per_Use_Expression => Preanalyze_Spec_Expression | |
9565 | Change name Pre_Analyze_And_Resolve => Preanalyze_And_Resolve | |
9566 | (Check_Precondition_Postcondition): Do proper visibility preanalysis | |
9567 | for the case of these pragmas appearing in the spec. | |
9568 | (Check_Enabled): New function | |
9569 | (Initialize): New procedure | |
9570 | (Tree_Read): New procedure | |
9571 | (Tree_Write): New procedure | |
9572 | (Check_Precondition_Postcondition): New procedure | |
9573 | Implement pragmas Check and Check_Policy | |
9574 | Merge Assert processing with Check | |
9575 | ||
9576 | * sem_warn.adb (Warn_On_Known_Condition): Handle pragma Check | |
9577 | New warning flag -gnatw.e | |
9578 | ||
9579 | * sinfo.ads, sinfo.adb (Has_Relative_Deadline_Pragma): New function | |
9580 | returning whether a task (or main procedure) has a pragma | |
9581 | Relative_Deadline. | |
9582 | (Set_Has_Relative_Deadline_Pragma): Procedure to indicate that a task | |
9583 | (or main procedure) has a pragma Relative_Deadline. | |
9584 | Add Next_Pragma field to N_Pragma node | |
9585 | (PPC_Enabled): New flag | |
9586 | (Next_Pragma): Now used for Pre/Postcondition processing | |
9587 | ||
9588 | * snames.h, snames.ads, snames.adb: New standard name | |
9589 | Inherit_Source_Path | |
9590 | Add entry for 'Invalid_Value attribute | |
9591 | Add entry for new attribute Has_Tagged_Values | |
9592 | Add entry for Enum_Val attribute | |
9593 | Add new standard names Aggregate, Configuration and Library. | |
9594 | Add _Postconditions | |
9595 | Add _Result | |
9596 | Add Pragma_Precondition | |
9597 | Add Pragma_Postcondition | |
9598 | Add Attribute_Result | |
9599 | New standard name Archive_Builder_Append_Option | |
9600 | (Preset_Names): Add _relative_deadline and relative_deadline definitions | |
9601 | There was also a missing non_preemptive_within_priorities. | |
9602 | (Get_Pragma_Id, Is_Pragma_Name): Add support for pragma | |
9603 | Relative_Deadline. | |
9604 | Add support for pragmas Check and Check_Policy | |
9605 | ||
9606 | * tree_gen.adb: Call Sem_Aux.Tree_Write | |
9607 | ||
9608 | * tree_in.adb: Call Sem_Aux.Tree_Read | |
9609 | ||
9610 | * exp_ch11.adb (Expand_N_Raise_Statement): New Build_Location calling | |
9611 | sequence | |
9612 | ||
9613 | * exp_intr.adb (Expand_Source_Info): New Build_Location calling | |
9614 | sequence | |
9615 | ||
9616 | * exp_prag.adb (Expand_Pragma_Relative_Deadline): New procedure. | |
9617 | (Expand_N_Pragma): Call the appropriate procedure for expanding pragma | |
9618 | Relative_Deadline. | |
9619 | (Expand_Pragma_Check): New procedure | |
9620 | ||
9621 | * sinput.ads, sinput.adb (Build_Location_String): Now appends to name | |
9622 | buffer. | |
9623 | ||
9624 | * sinfo.adb (PPC_Enabled): New flag | |
9625 | ||
9626 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
9627 | Gary Dismukes <dismukes@adacore.com> | |
9628 | Javier Miranda <miranda@adacore.com> | |
9629 | Ed Schonberg <schonberg@adacore.com> | |
9630 | ||
9631 | * fe.h: Remove global Optimize_Alignment flag, no longer used | |
9632 | ||
9633 | * layout.adb: Test Optimize_Alignment flags rather than global switch | |
9634 | ||
9635 | * lib.ads, lib.adb: New OA_Setting field in library record | |
9636 | ||
9637 | * lib-load.adb: New OA_Setting field in library record | |
9638 | ||
9639 | * lib-writ.ads, lib-writ.adb (Collect_Withs, Write_With_Lines): Place | |
9640 | units mentioned in limited_with_ clauses in the ali file, with an | |
9641 | 'Y' marker. | |
9642 | New Ox fields in U line | |
9643 | ||
9644 | * opt.adb: New flag Optimize_Alignment_Local | |
9645 | (Check_Policy_List[_Config]): New flags | |
9646 | ||
9647 | * opt.ads (Invalid_Value_Used): New flag | |
9648 | New switch Optimize_Alignment_Local | |
9649 | (Warn_On_Parameter_Order): New flag | |
9650 | (Check_Policy_List[_Config]): New flags | |
9651 | ||
9652 | * ali.ads, ali.adb: Add indicator 'Y' to mark mark the presence of | |
9653 | limited_with clauses. | |
9654 | New data structures for Optimize_Alignment | |
9655 | ||
9656 | * bcheck.adb (Check_Consistent_Restriction_No_Default_Initialization): | |
9657 | New procedure | |
9658 | (Check_Consistent_Optimize_Alignment): Rework for new structure | |
9659 | (Check_Consistent_Restrictions): Fix incorrect error message | |
9660 | ||
9661 | sem_ch10.adb (Decorate_Tagged_Type): Set the Parent field of a newly | |
9662 | created class-wide type (to the Parent field of the specific type). | |
9663 | (Install_Siblings): Handle properly private_with_clauses on subprogram | |
9664 | bodies and on generic units. | |
9665 | (Analyze_With_Clause, Install_Limited_Withed_Unit): Guard against an | |
9666 | illegal limited_with_clause that names a non-existent package. | |
9667 | (Check_Body_Required): Determine whether a unit named a limited_with | |
9668 | clause needs a body. | |
9669 | (Analyze_Context): A limited_with_clause is illegal on a unit_renaming. | |
9670 | Capture Optimize_Alignment settings to set new OA_Setting field in | |
9671 | library record. | |
9672 | (Build_Limited_Views): Include task and protected type declarations. | |
9673 | ||
9674 | * sem_ch3.ads, sem_ch3.adb (Analyze_Object_Declaration): Handle the | |
9675 | case of a possible constant redeclaration where the current object is | |
9676 | an entry index constant. | |
9677 | (Analyze_Object_Declaration): Generate an error in case of CPP | |
9678 | class-wide object initialization. | |
9679 | (Analyze_Object_Declaration): Add extra information on warnings for | |
9680 | declaration of unconstrained objects. | |
9681 | (Access_Type_Declaration): Set Associated_Final_Chain to Empty, to avoid | |
9682 | conflicts with the setting of Stored_Constraint in the case where the | |
9683 | access type entity has already been created as an E_Incomplete_Type due | |
9684 | to a limited with clause. | |
9685 | Use new Is_Standard_Character_Type predicate | |
9686 | (Analyze_Object_Declaration): Apply access_constant check only after | |
9687 | expression has been resolved, given that it may be overloaded with | |
9688 | several access types. | |
9689 | (Constant_Redeclaration): Additional legality checks for deferred | |
9690 | constant declarations tha involve anonymous access types and/or null | |
9691 | exclusion indicators. | |
9692 | (Analyze_Type_Declaration): Set Optimize_Alignment flags | |
9693 | (Analyze_Subtype_Declaration): Ditto | |
9694 | (Analyze_Object_Declaration): Ditto | |
9695 | (Analyze_Object_Declaration): Don't count tasks in generics | |
9696 | Change name In_Default_Expression => In_Spec_Expression | |
9697 | Change name Analyze_Per_Use_Expression => Preanalyze_Spec_Expression | |
9698 | Change name Pre_Analyze_And_Resolve => Preanalyze_And_Resolve | |
9699 | (Process_Discriminants): Additional check for illegal use of default | |
9700 | expressions in access discriminant specifications in a type that is not | |
9701 | explicitly limited. | |
9702 | (Check_Abstract_Overriding): If an inherited function dispaches on an | |
9703 | access result, it must be overridden, even if the type is a null | |
9704 | extension. | |
9705 | (Derive_Subprogram): The formals of the derived subprogram have the | |
9706 | names and defaults of the parent subprogram, even if the type is | |
9707 | obtained from the actual subprogram. | |
9708 | (Derive_Subprogram): In the presence of interfaces, a formal of an | |
9709 | inherited operation has the derived type not only if it descends from | |
9710 | the type of the formal of the parent operation, but also if it | |
9711 | implements it. This is relevant for the renamings created for the | |
9712 | primitive operations of the actual for a formal derived type. | |
9713 | (Is_Progenitor): New predicate, to determine whether the type of a | |
9714 | formal in the parent operation must be replaced by the derived type. | |
9715 | ||
9716 | * sem_util.ads, sem_util.adb (Has_Overriding_Initialize): Make | |
9717 | predicate recursive to handle components that have a user-defined | |
9718 | Initialize procedure. Handle controlled derived types whose ancestor | |
9719 | has a user-defined Initialize procedured. | |
9720 | (Note_Possible_Modification): Add Sure parameter, generate warning if | |
9721 | sure modification of constant | |
9722 | Use new Is_Standard_Character_Type predicate | |
9723 | (Find_Parameter_Type): when determining whether a protected operation | |
9724 | implements an interface operation, retrieve the type of the formal from | |
9725 | the entity when the formal is an access parameter or an | |
9726 | anonymous-access-to-subprogram. | |
9727 | Move Copy_Parameter_List to sem_util, for use when building stubbed | |
9728 | subprogram bodies. | |
9729 | (Has_Access_Values): Tagged types now return False | |
9730 | (Within_HSS_Or_If): New procedure | |
9731 | (Set_Optimize_Alignment_Flags): New procedure | |
9732 | Change name In_Default_Expression => In_Spec_Expression | |
9733 | Change name Analyze_Per_Use_Expression => Preanalyze_Spec_Expression | |
9734 | Change name Pre_Analyze_And_Resolve => Preanalyze_And_Resolve | |
9735 | ||
9736 | 2008-04-08 Tristan Gingold <gingold@adacore.com> | |
9737 | ||
9738 | * s-fileio.adb: Name_Error shouldn't be raised for a tempory file. | |
9739 | ||
9740 | 2008-04-08 Tristan Gingold <gingold@adacore.com> | |
9741 | ||
9742 | PR ada/10768 | |
9743 | ||
9744 | * cuintp.c: Fix 16 bits issue for AVR. | |
9745 | On AVR, integer is 16 bits, so it can't be used to do math with | |
9746 | Base (=32768). | |
9747 | So use long_integer instead. | |
9748 | ||
9749 | 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> | |
9750 | ||
9751 | * a-calend-vms.ads, a-calend-vms.adb: Add with and use clause for | |
9752 | System.OS_Primitives. | |
9753 | Change type of various constants, parameters and local variables from | |
9754 | Time to representation type OS_Time. | |
9755 | (To_Ada_Time, To_Unix_Time): Correct sign of origin shift. | |
9756 | Remove the declaration of constant Mili_F from several routines. New | |
9757 | body for internal package Conversions_Operations. | |
9758 | (Time_Of): Add default parameters for several formals. | |
9759 | ||
9760 | * a-caldel.adb: Minor reformatting | |
9761 | ||
9762 | * a-calend.ads, a-calend.adb: New body for internal package | |
9763 | Conversions_Operations. | |
9764 | (Time_Of): Add default parameters for several formals. | |
9765 | ||
9766 | * Makefile.rtl: Add a-ststop | |
9767 | Add Ada.Calendar.Conversions to the list of runtime files. | |
9768 | Add g-timsta | |
9769 | ||
9770 | * a-calcon.adb, a-calcon.ads: New files. | |
9771 | ||
9772 | 2008-04-08 Jose Ruiz <ruiz@adacore.com> | |
9773 | Tristan Gingold <gingold@adacore.com> | |
9774 | ||
9775 | * s-interr-dummy.adb, s-interr-vms.adb, s-interr-sigaction.adb | |
9776 | (Install_Restricted_Handlers): New procedure | |
9777 | which is a simplified version of Install_Handlers that does not store | |
9778 | previously installed. | |
9779 | ||
9780 | * s-interr-vxworks.adb: Fix ACATS cxc3001 | |
9781 | On VxWorks interrupts can't be detached. | |
9782 | (Install_Restricted_Handlers): New procedure. | |
9783 | ||
9784 | * s-interr.ads, s-interr.adb (Install_Restricted_Handlers): New | |
9785 | procedure. | |
9786 | ||
9787 | 2008-04-08 Olivier Hainque <hainque@adacore.com> | |
9788 | ||
9789 | * s-intman-vxworks.ads, s-intman-vxworks.adb | |
9790 | (Map_And_Raise_Exception): Remove. Was an import of only part of the | |
9791 | required services already implemented elsewhere. | |
9792 | (Notify_Exception): Delete body, import __gnat_error_handler instead. | |
9793 | (Initialize): Add SA_SIGINFO to the sa_flags, to get the sigcontext | |
9794 | argument passed to the handler, which we need for ZCX propagation | |
9795 | purposes. | |
9796 | ||
9797 | 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> | |
9798 | ||
9799 | * adaint.h, adaint.c (__gnat_current_time_string): New routine. | |
9800 | ||
9801 | * g-timsta.adb, g-timsta.ads: New files. | |
9802 | ||
9803 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
9804 | ||
9805 | * a-except-2005.ads, a-except-2005.adb, a-except.ads, a-except.adb | |
9806 | (Raise_Exception): In accordance with AI-446, raise CE for Null_Id | |
9807 | (Raise_Exception_Always): Fix documentation accordingly | |
9808 | ||
9809 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
9810 | ||
9811 | * a-strbou.ads, a-strbou.adb (From_String): New procedure (for use by | |
9812 | Stream_Convert) | |
9813 | ||
9814 | * sem_ch13.ads (Rep_Item_Too_Late): Document that Stream_Convert sets | |
9815 | FOnly | |
9816 | ||
9817 | 2008-04-08 Javier Miranda <miranda@adacore.com> | |
9818 | Robert Dewar <dewar@adacore.com> | |
9819 | Ed Schonberg <schonberg@adacore.com> | |
9820 | ||
9821 | * a-tags.adb (Register_Interface_Offset): New subprogram. | |
9822 | (Set_Dynamic_Offset_To_Top): New subprogram (see previous comment). | |
9823 | (To_Predef_Prims_Table_Ptr): Removed. | |
9824 | (Acc_Size): Removed. | |
9825 | (To_Acc_Size): Removed. | |
9826 | (Parent_Size): Modified to the call the subprogram returning the size of | |
9827 | the parent by means of the new TSD component Size_Func. | |
9828 | ||
9829 | * a-tags.ads (Offset_To_Top_Ptr): New access type declaration. | |
9830 | (DT_Offset_To_Top_Offset): New constant value that is used to generate | |
9831 | code referencing the Offset_To_Top component of the dispatch table's | |
9832 | prologue. | |
9833 | (Prim_Ptr): New declaration of access to procedure. Used to avoid the | |
9834 | use of 'address to initialize dispatch table slots. | |
9835 | (Size_Func): New component of the TSD. Used by the run-time to call the | |
9836 | size primitive of the tagged type. | |
9837 | ||
9838 | * checks.adb (Apply_Access_Check): Avoid check when accessing the | |
9839 | Offset_To_Top component of a dispatch table. | |
9840 | (Null_Exclusion_Static_Checks): If the non-null access type appears in a | |
9841 | deferred constant declaration. do not add a null expression, to prevent | |
9842 | spurious errors when full declaration is analyzed. | |
9843 | (Apply_Discriminant_Check): If both discriminant constraints share a | |
9844 | node which is not static but has no side effects, do not generate a | |
9845 | check for that discriminant. | |
9846 | (Generate_Index_Checks): Set Name_Req to true in call to duplicate | |
9847 | subexpr, since the prefix of an attribute is a name. | |
9848 | ||
9849 | * checks.ads: Fix nit in comment. | |
9850 | ||
9851 | * exp_ch3.ads, exp_ch3.adb (Freeze_Record_Type): Do not add the spec | |
9852 | and body of predefined primitives in case of CPP tagged type | |
9853 | derivations. | |
9854 | (Freeze_Type): Deal properly with no storage pool case | |
9855 | (Make_Predefined_Primitive_Specs): Generate specification of abstract | |
9856 | primitive Deep_Adjust if a nonlimited interface is derived from a | |
9857 | limited interface. | |
9858 | (Build_Dcheck_Functions): Create discriminant-checking functions only | |
9859 | for variants that have some component(s). | |
9860 | (Build_Slice_Assignment): In expanded code for slice assignment, handle | |
9861 | properly the case where the slice bounds extend to the last value of the | |
9862 | underlying representation. | |
9863 | (Get_Simple_Init_Val): New calling sequence, accomodate Invalid_Value | |
9864 | (Is_Variable_Size_Record): An array component has a static size if | |
9865 | index bounds are enumeration literals. | |
9866 | ||
9867 | * exp_disp.adb (Make_DT): Use the first subtype to determine whether | |
9868 | an external tag has been specified for the type. | |
9869 | (Building_Static_DT): Add missing support for private types. | |
9870 | (Make_DT): Add declaration of Parent_Typ to ensure consistent access | |
9871 | to the entity associated with the parent of Typ. This is done to | |
9872 | avoid wrong access when the parent is a private type. | |
9873 | (Expand_Interface_Conversion): Improve error message when the | |
9874 | configurable runtime has no support for dynamic interface conversion. | |
9875 | (Expand_Interface_Thunk): Add missing support to interface types in | |
9876 | configurable runtime. | |
9877 | (Expand_Dispatching_Call): remove obsolete code. | |
9878 | (Make_DT): Replace occurrences of RE_Address by RE_Prim_Ptr, and | |
9879 | ensure that all subtypes and aggregates associated with dispatch | |
9880 | tables have the attribute Is_Dispatch_Table_Entity set to true. | |
9881 | (Register_Primitive): Rename one variable to improve code reading. | |
9882 | Replace occurrences of RE_Addres by RE_Prim_Ptr. Register copy o | |
9883 | of the pointer to the 'size primitive in the TSD. | |
9884 | ||
9885 | * rtsfind.ads (RE_DT_Offset_To_Top_Offset): New entity. | |
9886 | (RE_Offset_To_Top_Ptr): New entity. | |
9887 | (RE_Register_Interface_Offset): New entity. | |
9888 | (RE_Set_Dynamic_Offset_To_Top): New entity. | |
9889 | (RE_Set_Offset_To_Top): Removed entity. | |
9890 | (RE_Prim_Ptr): New entity | |
9891 | (RE_Size_Func): New entity | |
9892 | (RE_Size_Ptr): New entity | |
9893 | (RTU_Id): Add Ada_Dispatching and Ada_Dispatching_EDF. | |
9894 | (Ada_Dispatching_Child): Define this new subrange. | |
9895 | (RE_Id): Add new required run-time calls (RE_Set_Deadline, RE_Clock, | |
9896 | RE_Time_Span, and RE_Time_Span_Zero). | |
9897 | (RE_Unit_Table): Add new required run-time calls | |
9898 | ||
9899 | * rtsfind.adb (Get_Unit_Name): Add processing for Ada.Dispatching | |
9900 | children. | |
9901 | ||
9902 | * exp_atag.ads, exp_atag.adb (Build_Offset_To_Top): New subprogram. | |
9903 | (Build_Set_Static_Offset_To_Top): New subprogram. Generates code that | |
9904 | initializes the Offset_To_Top component of a dispatch table. | |
9905 | (Build_Predef_Prims): Removed. | |
9906 | (Build_Get_Predefined_Prim_Op_Address): Replace call to Predef_Prims by | |
9907 | its actual code. | |
9908 | (Build_Set_Size_Function): New subprogram. | |
9909 | ||
9910 | * exp_ch13.adb: Do not generate storage variable for storage_size zero | |
9911 | (Expand): Handle setting/restoring flag Inside_Freezing_Actions | |
9912 | ||
9913 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
9914 | ||
9915 | * a-ztdeau.adb, a-tideau.adb, a-wtdeau.adb (Puts_Dec): Fix error in | |
9916 | computing Fore when Exp > 0 | |
9917 | ||
9918 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
9919 | ||
9920 | * back_end.adb: Remove Big_String_Ptr declarations (now in Types) | |
9921 | ||
9922 | * errout.adb: Remove Big_String_Ptr declarations (now in Types) | |
9923 | Change name Is_Style_Msg to Is_Style_Or_Info_Msg | |
9924 | ||
9925 | * fmap.adb: Remove Big_String declarations (now in Types) | |
9926 | (No_Mapping_File): New Boolean global variable | |
9927 | (Initialize): When mapping file cannot be read, set No_Mapping_File to | |
9928 | False. | |
9929 | (Update_Mapping_File): Do nothing if No_Mapping_File is True. If the | |
9930 | tables were empty before adding entries, open the mapping file | |
9931 | with Truncate = True, instead of delete/re-create. | |
9932 | ||
9933 | * fname-sf.adb: Remove Big_String declarations (now in Types) | |
9934 | ||
9935 | * s-strcom.adb, g-dyntab.ads, g-table.ads, s-carsi8.adb, | |
9e81dbc7 | 9936 | s-stalib.ads, s-carun8.adb: Add zero size Storage_Size clauses for |
d563d3f0 AC |
9937 | big pointer types |
9938 | ||
9939 | * table.ads: Add for Table_Ptr'Storage_Size use 0 | |
9940 | ||
9941 | * types.ads: Add Big_String declarations | |
9942 | Add Size_Clause of zero for big pointer types | |
9943 | ||
9944 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
9945 | ||
9946 | * clean.adb (Parse_Cmd_Line): Recognize switch --subdirs= | |
9947 | (Usage): Add line for switch --subdirs= | |
9948 | Add new switch -eL, to follow symbolic links when processing project | |
9949 | files. | |
9950 | ||
9951 | * gnatcmd.adb: Process switches -eL and --subdirs= | |
9952 | (Non_VMS_Usage): Output "gnaampcmd" instead of "gnat", and call | |
9953 | Program_Name to get proper tool names when AAMP_On_Target is set. | |
9954 | (Gnatcmd): Call Add_Default_Search_Dirs and Get_Target_Parameters to get | |
9955 | AAMP_On_Target set properly for use of GNAAMP tools (this is needed by | |
9956 | Osint.Program_Name). | |
9957 | ||
9958 | * gnatname.adb: (Scan_Args): Recognize switches -eL and --subdirs= | |
9959 | (Usage): Add lines for switches -eL and --subdirs= | |
9960 | ||
9961 | * makeusg.adb: Add line for switch --subdirs= | |
9962 | ||
9e81dbc7 | 9963 | * prj.ads: |
d563d3f0 AC |
9964 | (Source_Data): New Boolean component Compiled, defaulted to True |
9965 | (Empty_File_Name: New global variable in private part, initialized in | |
9966 | procedure Initialize. | |
9967 | (Subdirs_Option): New constant string | |
9968 | (Subdirs): New String_Ptr global variable | |
9969 | (Language_Config): New component Include_Compatible_Languages | |
9970 | (Project_Qualifier): New type for project qualifiers | |
9971 | (Project_Data): New component Qualifier | |
9972 | (Project_Configuration): New component Archive_Builder_Append_Option | |
9973 | ||
9974 | * prj-nmsc.adb (Get_Unit_Exceptions): When a unit is already in | |
9975 | another imported project indicate the name of this imported project. | |
9976 | (Check_File): When a unit is in two project files, indicate the project | |
9977 | names and the paths of the source files for each project. | |
9978 | (Add_Source): Set Compiled to False if compiler driver is empty. Only | |
9979 | set object, dependency and switches file names if Compiled is True. | |
9980 | (Process_Compiler): Allow the empty string for value of attribute Driver | |
9981 | (Get_Directories): When Subdirs is not null and Object_Dir is not | |
9982 | specified, locate and create if necessary the actual object dir. | |
9983 | (Locate_Directory): When Subdirs is not empty and Create is not the | |
9984 | empty string, locate and create if necessary the actual directory | |
9985 | as a subdirectory of directory Name. | |
9986 | (Check_Library_Attributes.Check_Library): Allow a project where the only | |
9987 | "sources" are header files of file based languages to be imported by | |
9988 | library projects, in multi-language mode (gprbuild). | |
9989 | (Check_Library_Attributes.Check_Library): In multi-language mode | |
9990 | (gprbuild), allow a library project to import a project with no | |
9991 | sources, even when this is not declared explicitly. | |
9992 | (Check_If_Externally_Built): A virtual project extending an externally | |
9993 | built project is also externally built. | |
9994 | (Check_Library_Attributes): For a virtual project extending a library | |
9995 | project, inherit the library directory. | |
9996 | (Process_Project_Level_Array_Attributes): Process new attribute | |
9997 | Inherit_Source_Path. | |
9998 | For projects with specified qualifiers "standard", "library" or | |
9999 | "abstract", check that the project conforms to the qualifier. | |
10000 | (Process_Project_Level_Simple_Attributes): Process new attribute | |
10001 | Archive_Builder_Append_Option. | |
10002 | ||
10003 | * switch-m.adb: (Scan_Make_Switches): Process switch --subdirs= | |
10004 | (Normalize_Compiler_Switches): Only keep compiler switches that are | |
10005 | passed to gnat1 by the gcc driver and that are stored in the ALI file | |
10006 | by gnat1. | |
10007 | Do not take into account switc -save-temps | |
10008 | ||
10009 | * makegpr.adb (Compile_Link_With_Gnatmake): Transmit switch -eL if | |
10010 | gprmake is called with -eL. | |
10011 | (Scan_Arg): Recognize switch -eL | |
10012 | (Usage): Add line for switch -eL | |
10013 | ||
10014 | * prj.adb (Initialize): Initialize Empty_File_Name | |
10015 | (Project_Empty): New component Qualifier | |
10016 | ||
10017 | * prj-attr.ads, prj-attr.adb: New project level attribute | |
10018 | Inherit_Source_Path. | |
10019 | New project level attribute Archive_Builder_Append_Option | |
10020 | ||
10021 | * prj-dect.adb: Replace System.Strings by GNAT.Strings. | |
10022 | ||
10023 | * prj-ext.adb (Initialize_Project_Path): In Multi_Language mode, add | |
10024 | <prefix>/lib/gnat in the project path, after <prefix>/share/gpr, for | |
10025 | upward compatibility. | |
10026 | ||
10027 | * prj-part.adb (Project_Path_Name_Of.Try_Path): In high verbosity, put | |
10028 | each Trying ..." on different lines. | |
10029 | (Parse_Single_Project): Recognize project qualifiers. Fail in qualifier | |
10030 | is "configuration" when not in configuration. Fail when in configuration | |
10031 | when a specified qualifier is other than "configuration". | |
10032 | ||
10033 | * prj-proc.adb (Process_Declarative_Items): Link new elements of copied | |
10034 | full associative array together. | |
10035 | (Recursive_Process): Put the project qualifier in the project data | |
9e81dbc7 | 10036 | |
d563d3f0 AC |
10037 | * prj-tree.ads, prj-tree.adb: (Project_Qualifier_Of): New function |
10038 | (Set_Project_Qualifier_Of): New procedure | |
10039 | ||
10040 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10041 | ||
10042 | * errout.ads: Update comments for new handling of info: messages | |
10043 | ||
10044 | * erroutc.adb (Matches): New procedure | |
10045 | (Warning_Specifically_Suppressed): Modified to handle multiple * chars | |
10046 | (Is_Style_Or_Info_Msg): New name for Is_Style_Msg, now set for | |
10047 | info messages as well as style messages. | |
10048 | ||
10049 | * erroutc.ads: Remove unneeded fields from Specific_Warning_Entry | |
10050 | ||
10051 | * sem_elab.adb (Supply_Bodies): Create actual bodies for stubbed | |
10052 | subprograms. | |
10053 | (Check_A_Call): Special "info: " warnings now have ? in the text | |
10054 | (Elab_Warning): Use info message in static case | |
10055 | ||
10056 | 2008-04-08 Ed Schonberg <schonberg@adacore.com> | |
10057 | ||
10058 | * exp_aggr.adb (Static_Array_Aggregate): Use Max_Aggr_Size to determine | |
10059 | whether an array aggregate with static bounds and scalar components | |
10060 | should be expanded into a static constant. | |
10061 | ||
10062 | 2008-04-08 Gary Dismukes <dismukes@adacore.com> | |
10063 | Ed Schonberg <schonberg@adacore.com> | |
10064 | Robert Dewar <dewar@adacore.com> | |
10065 | ||
10066 | * sem_cat.adb (Validate_RCI_Subprogram_Declaration): Add tests of | |
10067 | Has_Stream_Attribute_ Definition when checking for available stream | |
10068 | attributes on parameters of a limited type in Ada 2005. Necessary for | |
10069 | proper recognition of visible stream attribute clauses. | |
10070 | (Has_Stream_Attribute_Definition): If the type is derived from a | |
10071 | private type, then use the derived type's underlying type for checking | |
10072 | whether it has stream attributes. | |
10073 | (Validate_Object_Declaration): The check for a user-defined Initialize | |
10074 | procedure applies also to types with controlled components or a | |
10075 | controlled ancestor. | |
10076 | Reject an object declaration in a preelaborated unit if the type is a | |
10077 | controlled type with an overriding Initialize procedure. | |
10078 | (Validate_Remote_Access_To_Class_Wide_Type): Return without further | |
10079 | checking when the parent of a dereference is a selected component and | |
10080 | the name has not been analyzed. | |
10081 | ||
10082 | * sem_ch4.adb (Analyze_Selected_Component): Add checking for selected | |
10083 | prefixes that are invalid explicit dereferences of remote | |
10084 | access-to-class-wide values, first checking whether the selected | |
10085 | component is a prefixed form of call to a tagged operation. | |
10086 | (Analyze_Call): Remove code that issues an error for limited function | |
10087 | calls in illegal contexts, as we now support all of the contexts that | |
10088 | were forbidden here. | |
10089 | Allow a function call that returns a task.and appears as the | |
10090 | prefix of a selected component. | |
10091 | (Analyze_Reference): Give error message if we try to make a 'Reference | |
10092 | for an object that is atomic/aliased without its type having the | |
10093 | corresponding attribute. | |
10094 | (Analyze_Call): Remove condition checking for attributes to allow | |
10095 | calls to functions with inherently limited results as prefixes of | |
10096 | attributes. Remove related comment about Class attributes. | |
10097 | (Analyze_Selected_Component): If the prefix is a remote type, check | |
10098 | whether this is a prefixed call before reporting an error. | |
10099 | (Complete_Object_Operation): If the controlling formal is an access to | |
10100 | variable reject an actual that is a constant or an access to one. | |
10101 | (Try_Object_Operation): If prefix is a tagged protected object,retrieve | |
10102 | primitive operations from base type. | |
10103 | ||
10104 | * exp_ch4.adb (Expand_N_Indexed_Component): Test for prefix that is a | |
10105 | build-in-place | |
10106 | function call and call Make_Build_In_Place_Call_In_Anonymous_Context. | |
10107 | (Expand_N_Selected_Component): Test for prefix that is a build-in-place | |
10108 | function call and call Make_Build_In_Place_Call_In_Anonymous_Context. | |
10109 | (Expand_N_Slice): Test for prefix that is a build-in-place function call | |
10110 | and call Make_Build_In_Place_Call_In_Anonymous_Context. | |
10111 | (Analyze_Call): Remove code that issues an error for limited function | |
10112 | calls in illegal contexts, as we now support all of the contexts that | |
10113 | were forbidden here. | |
10114 | New calling sequence for Get_Simple_Init_Val | |
10115 | (Expand_Boolean_Operator): Add call to Silly_Boolean_Array_Xor_Test | |
10116 | (Expand_N_Op_Not): Add call to Silly_Boolan_Array_Not_Test | |
10117 | ||
10118 | 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> | |
10119 | Ed Schonberg <schonberg@adacore.com> | |
10120 | Robert Dewar <dewar@adacore.com> | |
10121 | ||
10122 | * exp_ch2.adb: Minor reformatting. | |
10123 | (Expand_Entry_Index_Parameter): Set the type of the identifier. | |
10124 | (Expand_Entry_Reference): Add call to Expand_Protected_Component. | |
10125 | (Expand_Protected_Component): New routine. | |
10126 | (Expand_Protected_Private): Removed. | |
10127 | Add Sure parameter to Note_Possible_Modification calls | |
10128 | ||
10129 | * sem_ch12.ads, sem_ch12.adb (Analyze_Subprogram_Instantiation): The | |
10130 | generated subprogram declaration must inherit the overriding indicator | |
10131 | from the instantiation node. | |
10132 | (Validate_Access_Type_Instance): If the designated type of the actual is | |
10133 | a limited view, use the available view in all cases, not only if the | |
10134 | type is an incomplete type. | |
10135 | (Instantiate_Object): Actual is illegal if the formal is null-excluding | |
10136 | and the actual subtype does not exclude null. | |
10137 | (Process_Default): Handle properly abstract formal subprograms. | |
10138 | (Check_Formal_Package_Instance): Handle properly defaulted formal | |
10139 | subprograms in a partially parameterized formal package. | |
10140 | Add Sure parameter to Note_Possible_Modification calls | |
10141 | (Validate_Derived_Type_Instance): if the formal is non-limited, the | |
10142 | actual cannot be limited. | |
10143 | (Collect_Previous_Instances): Generate instance bodies for subprograms | |
10144 | as well. | |
10145 | ||
10146 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Small): Don't | |
10147 | try to set RM_Size. | |
10148 | Add Sure parameter to Note_Possible_Modification calls | |
10149 | (Analyze_At_Clause): Preserve Comes_From_Source on Rewrite call | |
10150 | (Analyze_Attribute_Definition_Clause, case Attribute_Address): Check for | |
10151 | constant overlaid by variable and issue warning. | |
10152 | Use new Is_Standard_Character_Type predicate | |
10153 | (Analyze_Record_Representation_Clause): Check that the specified | |
10154 | Last_Bit is not less than First_Bit - 1. | |
10155 | (Analyze_Attribute_Definition_Clause, case Address): Check for | |
10156 | self-referential address clause | |
10157 | ||
10158 | * sem_ch5.ads, sem_ch5.adb (Diagnose_Non_Variable_Lhs): Rewrite the | |
10159 | detection mechanism when the lhs is a prival. | |
10160 | (Analyze_Assignment): Call Check_Unprotected_Access to detect | |
10161 | assignment of a pointer to protected data, to an object declared | |
10162 | outside of the protected object. | |
10163 | (Analyze_Loop_Statement): Check for unreachable code after loop | |
10164 | Add Sure parameter to Note_Possible_Modication calls | |
10165 | Protect analysis from previous syntax error such as a scope mismatch | |
10166 | or a missing begin. | |
10167 | (Analyze_Assignment_Statement): The assignment is illegal if the | |
10168 | left-hand is an interface. | |
10169 | ||
ea081ad7 AC |
10170 | * sem_res.ads, sem_res.adb (Resolve_Arithmetic_Op): For mod/rem check |
10171 | violation of restriction No_Implicit_Conditionals | |
d563d3f0 AC |
10172 | Add Sure parameter to Note_Possible_Modication calls |
10173 | Use new Is_Standard_Character_Type predicate | |
10174 | (Make_Call_Into_Operator): Preserve Comes_From_Source when rewriting | |
10175 | call as operator. Fixes problems (e.g. validity checking) which | |
10176 | come from the result looking as though it does not come from source). | |
10177 | (Resolve_Call): Check case of name in named parameter if style checks | |
10178 | are enabled. | |
10179 | (Resolve_Call): Exclude calls to Current_Task as entry formal defaults | |
10180 | from the checking that such calls should not occur from an entry body. | |
10181 | (Resolve_Call): If the return type of an Inline_Always function | |
10182 | requires the secondary stack, create a transient scope for the call | |
10183 | if the body of the function is not available for inlining. | |
10184 | (Resolve_Actuals): Apply Ada2005 checks to view conversions of arrays | |
10185 | that are actuals for in-out formals. | |
10186 | (Try_Object_Operation): If prefix is a tagged protected object,retrieve | |
10187 | primitive operations from base type. | |
10188 | (Analyze_Selected_Component): If the context is a call to a protected | |
10189 | operation the parent may be an indexed component prior to expansion. | |
10190 | (Resolve_Actuals): If an actual is of a protected subtype, use its | |
10191 | base type to determine whether a conversion to the corresponding record | |
10192 | is needed. | |
10193 | (Resolve_Short_Circuit): Handle pragma Check | |
10194 | ||
10195 | * sem_eval.adb: Minor code reorganization (usea Is_Constant_Object) | |
10196 | Use new Is_Standard_Character_Type predicate | |
10197 | (Eval_Relational_Op): Catch more cases of string comparison | |
10198 | ||
10199 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10200 | Gary Dismukes <dismukes@adacore.com> | |
10201 | ||
10202 | * s-rident.ads: Add No_Default_Initialization restriction | |
10203 | ||
9e81dbc7 | 10204 | * exp_tss.adb: |
d563d3f0 AC |
10205 | (Has_Non_Null_Base_Init_Proc): Handle No_Default_Initialization case |
10206 | (Set_TSS): Handle No_Default_Initialization case | |
10207 | ||
10208 | * exp_ch6.adb (Expand_N_Subprogram_Body): Handle restriction | |
10209 | No_Default_Initialization | |
10210 | (Expand_N_Subprogram_Body): Remove redundant initialization of out | |
10211 | parameters when Normalize_Scalars is active. | |
10212 | (Add_Final_List_Actual_To_Build_In_Place_Call): Add formal Sel_Comp | |
10213 | Fix casing error in formal parameter name in call | |
10214 | (Register_Predefined_DT_Entry): Replace occurrences of RE_Address by | |
10215 | (Expand_Call, Propagate_Tag): Call Kill_Current_Values when processing a | |
10216 | dispatching call on VM targets. | |
10217 | ||
10218 | 2008-04-08 Gary Dismukes <dismukes@adacore.com> | |
10219 | Thomas Quinot <quinot@adacore.com> | |
10220 | ||
10221 | * exp_ch7.adb (Find_Final_List): Change the test for generating a | |
10222 | selected component from an access type's Associated_Final_Chain to | |
10223 | check for the presence of that field, rather than assuming it exists | |
10224 | for all named access types. | |
10225 | (Make_Clean): New formal Chained_Cleanup_Action allowing to specify a | |
10226 | procedure to call at the end of the generated cleanup procedure. | |
10227 | (Expand_Cleanup_Actions): When a new cleanup procedure is generated, and | |
10228 | and an At_End_Proc already exists in the handled sequence of statements | |
10229 | for which cleanup actions are being expanded, the original cleanup | |
10230 | action must be preserved. | |
10231 | ||
10232 | 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> | |
10233 | Ed Schonberg <schonberg@adacore.com> | |
10234 | Robert Dewar <dewar@adacore.com> | |
10235 | Gary Dismukes <dismukes@adacore.com> | |
10236 | ||
10237 | * exp_ch9.ads, exp_ch9.adb (Build_Protected_Entry, | |
10238 | Build_Unprotected_Subprogram_Body): Generate debug info for | |
10239 | declarations related to the handling of private data in task and | |
10240 | protected types. | |
10241 | (Debug_Private_Data_Declarations): New subprogram. | |
10242 | (Install_Private_Data_Declarations): Remove all debug info flagging. | |
10243 | This is now done by Debug_Private_Data_Declarations at the correct | |
10244 | stage of expansion. | |
10245 | (Build_Simple_Entry_Call): If the task name is a function call, expand | |
10246 | the prefix into an object declaration, and make the surrounding block a | |
10247 | task master. | |
10248 | (Build_Master_Entity): An internal block is a master if it wraps a call. | |
10249 | Code reformatting, update comments. Code clean up. | |
10250 | (Make_Task_Create_Call): Use 'Unrestricted_Access instead of 'Address. | |
10251 | (Replicate_Entry_Formals): If the formal is an access parameter or | |
10252 | anonymous access to subprogram, copy the original tree to create new | |
10253 | entities for the formals of the subprogram. | |
10254 | (Expand_N_Task_Type_Declaration): Create a Relative_Deadline variable | |
10255 | for tasks to store the value passed using pragma Relative_Deadline. | |
10256 | (Make_Task_Create_Call): Add the Relative_Deadline argument to the | |
10257 | run-time call to create a task. | |
10258 | (Build_Wrapper_Spec): If the controlling argument of the interface | |
10259 | operation is an access parameter with a non-null indicator, use the | |
10260 | non-null indicator on the wrapper. | |
10261 | ||
10262 | * sem_ch9.adb (Analyze_Protected_Type): Only retrieve the full view when | |
10263 | present, which it may not be in the case where the type entity is an | |
10264 | incomplete view brought in by a limited with. | |
10265 | (Analyze_Task_Type): Only retrieve the full view when present, which it | |
10266 | may not be in the case where the type entity is an incomplete view brought | |
10267 | in by a limited with. | |
10268 | (Analyze_Protected_Definition): Set Is_Frozen on all itypes generated for | |
10269 | private components of a protected type, to prevent the generation of freeze | |
10270 | nodes for which there is no proper scope of elaboration. | |
10271 | ||
10272 | * exp_util.ads, exp_util.adb | |
10273 | (Remove_Side_Effects): If the expression is a function call that returns a | |
10274 | task, expand into a declaration to invoke the build_in_place machinery. | |
10275 | (Find_Protection_Object): New routine. | |
10276 | (Remove_Side_Effects): Also make a copy of the value | |
10277 | for attributes whose result is of an elementary type. | |
10278 | (Silly_Boolean_Array_Not_Test): New procedure | |
10279 | (Silly_Boolean_Array_Xor_Test): New procedure | |
10280 | (Is_Volatile_Reference): New function | |
10281 | (Remove_Side_Effects): Use Is_Volatile_Reference | |
10282 | (Possible_Bit_Aligned_Component): Handle slice case properly | |
10283 | ||
10284 | * exp_pakd.adb (Expand_Packed_Not): Move silly true/true or false/false | |
10285 | case test to Exp_Util | |
10286 | (Expand_Packed_Xor): Move silly true/true case test to Exp_Util | |
10287 | ||
10288 | 2008-04-08 Thomas Quinot <quinot@adacore.com> | |
10289 | ||
10290 | * exp_dist.ads, exp_dist.adb: Fix casing error in formal parameter name | |
10291 | in call | |
10292 | (Add_RACW_Features): When processing an RACW in another unit than the | |
10293 | main unit, set Body_Decls to No_List to indicate that the bodies of | |
10294 | the type's TSS must not be generated. | |
10295 | (GARLIC_Support.Add_RACW_Read_Attribute, | |
10296 | GARLIC_Support.Add_RACW_Write_Attribute): Do not generate bodies if | |
10297 | Body_Decls is No_List. | |
10298 | (PolyORB_Support.Add_RACW_Read_Attribute, | |
10299 | PolyORB_Support.Add_RACW_Write_Attribute, | |
10300 | PolyORB_Support.Add_RACW_From_Any, | |
10301 | PolyORB_Support.Add_RACW_To_Any, | |
10302 | PolyORB_Support.Add_RACW_TypeCode): Same. | |
10303 | (Transmit_As_Unconstrained): New function. | |
10304 | (Build_Ordered_Parameters_List): Use the above to order parameters. | |
10305 | (GARLIC_Support.Build_General_Calling_Stubs): | |
10306 | Use the above to determine which parameters to unmarshall using 'Input | |
10307 | at the point where their temporary is declared (as opposed to later on | |
10308 | with a 'Read call). | |
10309 | (PolyORB_Support.Build_General_Calling_Stubs): | |
10310 | Use the above to determine which parameters to unmarshall using From_Any | |
10311 | at the point where their temporary is declared (as opposed to later on | |
10312 | with an assignment). | |
10313 | ||
10314 | 2008-04-08 Ed Schonberg <schonberg@adacore.com> | |
10315 | ||
10316 | * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): If this is | |
10317 | an Input function for an access type, do not perform default | |
10318 | initialization on the local variable that receives the value, to | |
10319 | prevent spurious warnings when the type is null-excluding. | |
10320 | ||
10321 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10322 | Ed Schonberg <schonberg@adacore.com> | |
10323 | ||
10324 | * freeze.adb (Freeze_Entity): Improve warnings on access types in pure | |
10325 | units. | |
10326 | (Size_Known): Generic formal scalar types have known at compile | |
10327 | time size, so remove check. | |
10328 | Fix casing error in formal parameter name in call | |
10329 | (Freeze_Subprogram): If the subprogram is a user-defined operator, | |
10330 | recheck its overriding indication. | |
10331 | ||
10332 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
10333 | ||
10334 | * gnat1drv.adb: Send all messages indicating an error to standard error | |
10335 | ||
10336 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10337 | ||
10338 | * gnatbind.adb (Restriction_Could_Be_Set): New procedure | |
10339 | (List_Applicable_Restrictions): Do not list existing restrictions | |
10340 | ||
10341 | 2008-04-08 Thomas Quinot <quinot@adacore.com> | |
10342 | ||
10343 | * g-socket.ads, g-socket.adb: Improve documentation of GNAT.Sockets: | |
10344 | add a pointer to generic sockets literature | |
10345 | do not mention that the given example is "typical" usage. | |
10346 | Remove obsolete comment about multicast not being supported on Windows. | |
10347 | (Connect_Socket): Make Server mode IN rather than IN OUT | |
10348 | since this formal is never modified. | |
10349 | ||
10350 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10351 | ||
10352 | * sprint.adb (Write_Itype): Handle Itypes whose Parent field points to | |
10353 | the declaration for some different entity. | |
10354 | (Sprint_Node_Actual, case N_Derived_Type_Definition): When an interface | |
10355 | list is precent (following the parent subtype indication), display | |
10356 | appropriate "and" keyword. | |
10357 | ||
10358 | * itypes.adb: Remove unnecessary calls to Init_Size_Align and Init_Esize | |
10359 | Remove unnecessary calls to Init_Size_Align and Init_Esize. | |
10360 | Add notes on use of Parent field of an Itype | |
10361 | ||
10362 | 2008-04-08 Ed Schonberg <schonberg@adacore.com> | |
10363 | Robert Dewar <dewar@adacore.com> | |
10364 | Gary Dismukes <dismukes@adacore.com> | |
10365 | ||
10366 | * lib-xref.adb (Is_On_LHS): Remove dead code | |
10367 | (Output_Overriden_Op): If the overridden operation is itself inherited, | |
10368 | list the ancestor operation, which is the one whose body or absstract | |
10369 | specification is actually being overridden. For source navigation | |
10370 | purposes. | |
10371 | ||
10372 | * sem_ch7.adb (Is_Primitive_Of): use base type to determine whether | |
10373 | operation is primitive for the type. | |
10374 | (Declare_Inherited_Private_Subprograms): If the new operation overrides | |
10375 | an inherited private subprogram, set properly the Overridden_Operation | |
10376 | attribute, for better cross-reference information. | |
10377 | (Analyze_Package_Specification): Do late analysis of spec PPCs | |
10378 | (Install_Private_Declaration, Uninstall_Declarations): Save/restore | |
10379 | properly the full view and underlying full views of a private type in a | |
10380 | child unit, whose full view is derived from a private type in a parent | |
10381 | unit, and whose own full view becomes visible in the child body. | |
10382 | ||
10383 | * sem_disp.adb (Check_Dispatching_Operation): When a body declares a | |
10384 | primitive operation after the type has been frozen, add an explicit | |
10385 | reference to the type and the operation, because other primitive | |
10386 | references have been emitted already. | |
10387 | (Expand_Call, Propagate_Tag): Call Kill_Current_Values when processing a | |
10388 | dispatching call on VM targets. | |
10389 | ||
10390 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
10391 | Thomas Quinot <quinot@adacore.com> | |
10392 | ||
10393 | * make.adb: (Gnatmake_Called): Remove, no longer necessary | |
10394 | (Compile_Surces): Call Delete_Temp_Config_Files only if Gnatmake_Called | |
10395 | is True and Debug_Flag_N is False. Debug_Flag_N means "keep temp files". | |
10396 | (Insert_Project_Sources): Take into account index in multi-unit source | |
10397 | files. | |
10398 | After building a library project, delete all temporary files. | |
10399 | (Initialize): Reset current output after parsing project file. | |
10400 | (Collect_Arguments_And_Compile): Never insert in the queue the sources | |
10401 | of library projects that are externally built. | |
10402 | Put file name in error and inform messages if -df is used | |
10403 | (Display): If invoked with -d7, do not display path names, but only | |
10404 | file names. | |
10405 | ||
10406 | * makeutl.ads (Path_Or_File_Name): New function | |
10407 | (Path_Or_File_Name): New function | |
10408 | ||
10409 | 2008-04-08 Arnaud Charlet <charlet@adacore.com> | |
10410 | ||
10411 | * Make-lang.in: Disable warnings during first stage of bootstrap | |
10412 | Get rid of gnatbl. | |
10413 | Update dependencies. | |
10414 | ||
10415 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
10416 | ||
10417 | * mlib-prj.adb (Build_Library): Compare with ALI file name in canonical | |
10418 | case to decide if ALI object file is included in library. | |
10419 | (Build_Library): Never attempt to build a library if the project is | |
10420 | externally built. | |
10421 | ||
10422 | 2008-04-08 Thomas Quinot <quinot@adacore.com> | |
10423 | ||
10424 | * nlists.adb (Is_Non_Empty_List): Remove redundant test. First | |
10425 | (No_List) is defined to return Empty. | |
10426 | ||
10427 | 2008-04-08 Jose Ruiz <ruiz@adacore.com> | |
10428 | ||
10429 | * osint.ads, osint.adb (Get_Libraries_From_Registry): Improve | |
10430 | documentation. | |
10431 | Update comments. | |
10432 | (Read_Default_Search_Dirs): Do not consider spaces as path separators | |
10433 | because spaces may be part of legal paths. | |
10434 | ||
10435 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10436 | ||
10437 | * par-ch11.adb (P_Exception_Handler): Check indentation level for | |
10438 | handler | |
10439 | ||
10440 | 2008-04-08 Ed Schonberg <schonberg@adacore.com> | |
10441 | ||
10442 | * par-ch3.adb (P_Type_Declaration) Reject the keyword "synchronized" | |
10443 | in a type declaration, if this is not an interface declaration or | |
10444 | private type extension. | |
10445 | ||
10446 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
10447 | ||
10448 | * prj-util.adb (Executable_Of): New String parameter Language. When | |
10449 | Ada_Main is False and Language is not empty, attempt to remove the body | |
10450 | suffix or the spec suffix of the language to get the base of the | |
10451 | executable file name. | |
10452 | (Put): New Boolean parameter Lower_Case, defauilted to False. When | |
10453 | Lower_Case is True, put the value in lower case in the name list. | |
10454 | (Executable_Of): If there is no executable suffix in the configuration, | |
10455 | then do not modify Executable_Extension_On_Target. | |
10456 | ||
10457 | * prj-util.ads (Executable_Of): New String parameter Language, | |
10458 | defaulted to the empty string. | |
10459 | (Put): New Boolean parameter Lower_Case, defauilted to False | |
10460 | ||
10461 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10462 | ||
10463 | * scng.adb (Scan_Identifier): Handle case of identifier starting with | |
10464 | wide character using UTF-8 encoding. | |
10465 | ||
10466 | 2008-04-08 Javier Miranda <miranda@adacore.com> | |
10467 | ||
10468 | * sem.adb (Analyze): Consider case in which we analyze an empty node | |
10469 | that was generated by a call to a runtime function that is not | |
10470 | available under the configurable runtime. | |
10471 | ||
10472 | * sem.ads (Inside_Freezing_Actions): New flag. | |
10473 | (Save_Check_Policy_List): New field in scope stack entry | |
10474 | ||
10475 | 2008-04-08 Ed Schonberg <schonberg@adacore.com> | |
10476 | Robert Dewar <dewar@adacore.com> | |
10477 | ||
10478 | * sem_aggr.adb (Analyze_N_Extension_Aggregate): Add legality checks for | |
10479 | the ancestor part of an extension aggregate for a limited type. | |
10480 | (Resolve_Array_Aggregate): Issue warning for sliding of aggregate with | |
10481 | enumeration index bounds. | |
10482 | (Resolve_Array_Aggregate): Add circuit for diagnosing missing choices | |
10483 | when array is too short. | |
10484 | (Check_Expr_OK_In_Limited_Aggregate): Move function | |
10485 | Check_Non_Limited_Type from Resolve_Record_Aggregate to top level (and | |
10486 | change name). | |
10487 | (Resolve_Array_Aggregate.Resolve_Aggr_Expr): | |
10488 | Check_Expr_OK_In_Limited_Aggregates called to check for illegal limited | |
10489 | component associations. | |
10490 | (Check_Non_Limited_Type): Moved to outer level and renamed. | |
10491 | (Resolve_Record_Aggregate): In an extension aggregate, an association | |
10492 | with a box initialization can only designate a component of the | |
10493 | extension, not a component inherited from the given ancestor | |
10494 | ||
10495 | * sem_case.adb: Use new Is_Standard_Character_Type predicate | |
10496 | ||
10497 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10498 | ||
10499 | * s-imgdec.adb (Set_Decimal_Digits): Fix error when input is zero with | |
10500 | negative scale | |
10501 | (Set_Decimal_Digits): Properly handle Aft=0 (equivalent to Aft=1) | |
10502 | Properly handle case where Aft > Scale and input number is less than | |
10503 | one. | |
10504 | ||
10505 | 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> | |
10506 | ||
10507 | * s-stoele.ads, s-soflin.ads: Move the location of | |
10508 | Dummy_Communication_Block from System.Storage_Elements to | |
10509 | System.Soft_Links. | |
10510 | ||
10511 | * s-tpobop.ads: Add comment on usage of Dummy_Communication_Block to | |
10512 | emulate Communication_Block in certain scenarios. | |
10513 | ||
10514 | 2008-04-08 Hristian Kirtchev <kirtchev@adacore.com> | |
10515 | ||
10516 | * s-strxdr.adb, s-stratt.ads, s-stratt.adb (Block_IO_OK): New | |
10517 | subprogram. | |
10518 | Add new subtype S_WWC, unchecked conversion routines From_WWC and | |
10519 | To_WWC. | |
10520 | (I_WWC, O_WWC): New routines for input and output of | |
10521 | Wide_Wide_Character. | |
10522 | ||
10523 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10524 | ||
10525 | * stringt.adb (Write_String_Table_Entry): Handle wide characters | |
10526 | properly | |
10527 | ||
10528 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10529 | ||
10530 | * styleg.adb (Check_Comment): Allow special char after -- in | |
10531 | non-end-of-line case | |
10532 | ||
10533 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10534 | ||
10535 | * stylesw.adb: Implement -gnaty + - y options | |
10536 | (Set_GNAT_Style_Check_Options): Includ I in style check string | |
10537 | ||
10538 | * stylesw.ads: Add comments for new style switch options | |
10539 | ||
10540 | 2008-04-08 Sergey Rybin <rybin@adacore.com> | |
10541 | ||
10542 | * tree_io.ads: Increase ASIS_Version_Number because of adding Sem_Aux | |
10543 | to the set of the GNAT components needed by ASIS. | |
10544 | ||
10545 | 2008-04-08 Bob Duff <duff@adacore.com> | |
10546 | ||
10547 | * types.h: Change CE_Null_Exception_Id to the correct value (8, was 9). | |
10548 | ||
10549 | 2008-04-08 Tristan Gingold <gingold@adacore.com> | |
10550 | ||
10551 | * vxaddr2line.adb: Use Unsigned_32 instead of Integer for address type. | |
10552 | Improve error message generation. | |
10553 | ||
10554 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
10555 | ||
10556 | * a-direct.adb (Start_Search): Check for Name_Error before checking for | |
10557 | Use_Error, as specified in the RM. Check if directory is open and raise | |
10558 | Use_Error if it is not. | |
10559 | ||
10560 | 2008-04-08 Vincent Celier <celier@adacore.com> | |
10561 | Robert Dewar <dewar@adacore.com> | |
10562 | ||
10563 | * vms_conv.adb (Output_Version): Print "GNAAMP" instead of "GNAT when | |
10564 | AAMP_On_Target is set. | |
10565 | ||
10566 | * vms_data.ads: Add NOxxx to style check switch list | |
10567 | Add entry COMPONENTS for -gnatVe | |
10568 | Add VMS qualifiers for -eL (/FOLLOW_LINKS_FOR_FILES) and --subdirs= | |
10569 | (/SUBDIRS=). | |
10570 | (GCC_Switches): Add /ALL_BACK_END_WARNINGS. | |
10571 | Add qualifiers for gnatmetric coupling options | |
10572 | Add note that -gnata enables all checks | |
10573 | Add entries [NO]PARAMETER_ORDER for -gnatw.p[P] | |
10574 | Fix inconsistency for VMS qualifier for the gnatpp '-rnb' option | |
10575 | New warning flag -gnatw.e | |
10576 | ||
10577 | * usage.adb: Add entries for -gnaty+ -gnaty- -gnatyy | |
10578 | Add entry for -gnatyN (forgotten before) | |
10579 | Line for new warning switch -gnatw.p | |
10580 | New warning flag -gnatw.e | |
10581 | ||
10582 | * gnat_ugn.texi: Add documentation fpr project file switch -aP | |
10583 | Document -gnaty - + y | |
10584 | Replace occurences of "package specification" with "package spec" | |
10585 | Define preprocessing symbols in documentation of gnatprep | |
10586 | Clarify reason for distinguishing overflow checking | |
10587 | Add documentation for project-aware tool switches -eL and --subdirs= | |
10588 | Complete list of configuration pragmas | |
10589 | Specify that, even when gnatmake switch -x is used, mains on the command | |
10590 | line need to be sources of project files. | |
10591 | Editing of gnatcheck/gnatmetric doc. | |
10592 | Add documentation for -gnatw.p/-gnatw.P | |
10593 | Add missing documentation for -fno-inline-functions. | |
10594 | Add documentation for -gnatw.e | |
10595 | ||
10596 | * gnat_rm.texi: Add documentation for No_Default_Initialization | |
10597 | Replace occurences of "package specification" with "package spec" | |
10598 | Document use of * in Warnings Off string | |
10599 | Update documentation of alignment/component clauses. | |
10600 | Add documentation for Invalid_Value | |
10601 | Document new consistency rule for Optimize_Alignment | |
10602 | Add documentation for Precondition and Postcondition pragmas | |
10603 | Add documentation for Check and Check_Policy pragmas | |
10604 | Document new Enum_Val attribute | |
10605 | Remove requirement for static string in pragma Assert | |
10606 | Add documentation on GNAT.Time_Stamp | |
10607 | ||
10608 | * ug_words: add entry for -gnatVe | |
10609 | Add entries for -gnat.p[P] /WARNINGS=[NO]PARAMETER_ORDER | |
10610 | Add entry for -gnatw.e | |
10611 | ||
10612 | * debug.adb: Add missing documentation for d.a flag | |
10613 | Document new -gnatd.a switch. | |
10614 | Add documentation for new gnatmake debug switch -df | |
10615 | ||
10616 | 2008-04-08 Thomas Quinot <quinot@adacore.com> | |
10617 | ||
10618 | * gen-soccon.c: Bump year in copyright notices. | |
10619 | ||
10620 | * g-soccon-vxworks.ads: Add new constant IP_PKTINFO | |
10621 | ||
10622 | 2008-04-08 Eric Botcazou <ebotcazou@adacore.com> | |
10623 | ||
10624 | * ctrl_c.c: Improve handling of ctrl-c on LynxOS and Windows. | |
10625 | Minor reformatting. | |
10626 | ||
10627 | 2008-04-08 Robert Dewar <dewar@adacore.com> | |
10628 | Bob Duff <duff@adacore.com> | |
10629 | ||
10630 | * impunit.adb: Add Interfaces.Java.JNI, System.Strings.Stream_Ops, | |
10631 | Ada.Calendar.Conversions, Ada.Dispatching.EDF, GNAT.Time_Stamp | |
10632 | ||
10633 | * s-intman-mingw.adb: Minor comment fix -- spell 'explicitly' correctly | |
10634 | ||
10635 | * g-trasym.adb: Minor comment fix -- spell 'explicitly' correctly | |
10636 | ||
10637 | * g-trasym.ads: Minor comment improvements | |
10638 | ||
10639 | * s-stalib.adb: Minor comment fix -- spell 'explicitly' correctly | |
10640 | ||
10641 | * a-sequio.ads, a-direio.ads: improve message for tagged type | |
10642 | ||
10643 | * a-strunb.ads: Minor reformatting | |
10644 | ||
10645 | * a-tifiio.adb: Minor reformatting | |
10646 | ||
10647 | * atree.adb (Fix_Parents): Use clearer names for formals | |
10648 | Cleanup and simplify code | |
10649 | Use named notation in calls | |
10650 | ||
10651 | * exp_fixd.adb (Do_Multiply_Fixed_Universal): Use named notation in | |
10652 | confusing calls | |
10653 | ||
10654 | * uintp.adb: Used named notation for some confusing calls | |
10655 | ||
10656 | * bindusg.adb: Minor change in one line of output | |
10657 | ||
10658 | * cstand.adb: Minor reformatting of src representation of Standard | |
10659 | ||
10660 | * a-assert.ads: Add comment. | |
10661 | ||
10662 | * g-decstr.adb: Fix bad indentation | |
10663 | ||
10664 | * expander.ads, expander.adb: Code clean up. | |
10665 | ||
10666 | * sem_dist.ads: Minor comment improvement | |
10667 | ||
10668 | * sem_type.adb, g-dirope.ads, g-exctra.ads, s-valwch.adb, | |
10669 | s-wchstw.adb, targparm.ads, widechar.adb: Minor reformatting | |
10670 | ||
10671 | * i-cstrin.adb: Fix casing error in formal parameter name in call | |
10672 | ||
10673 | 2008-04-08 Ed Schonberg <schonberg@adacore.com> | |
10674 | ||
10675 | * binde.adb (Gather_All_Links, Gather_Dependencies): units that are | |
10676 | mentioned in limited_with_clauses to do create semantic dependencies | |
10677 | even though they appear in the ali file. | |
10678 | ||
10679 | 2008-04-08 Emmanuel Briot <briot@adacore.com> | |
10680 | ||
10681 | * g-comlin.ads, g-comlin.adb (Expansion): Remove unreachable return | |
10682 | statement. | |
10683 | (Get_Configuration): New subprogram. | |
10684 | ||
10685 | * prj-pp.ads, prj-pp.adb (Pretty_Print): new parameters Id and Id_Tree | |
10686 | These optional parameters help preserve the casing of the project's name | |
10687 | when pretty-printing. | |
10688 | ||
10689 | 2008-04-08 Jerome Lambourg <lambourg@adacore.com> | |
10690 | Arnaud Charlet <charlet@adacore.com> | |
10691 | ||
10692 | * bindgen.adb (Gen_Adainit_Ada): If the main program is a CIL function, | |
10693 | then use __gnat_set_exit_status to report the returned status code. | |
10694 | ||
10695 | * comperr.adb (Compiler_Abort): Convert most bug boxes into clean error | |
10696 | messages on .NET, since some constructs of the language are not | |
10697 | properly supported. | |
10698 | ||
10699 | * gnatlink.adb (Gnatlink): In case the command line is too long for the | |
10700 | .NET linker, gnatlink now concatenate all .il files and pass this to | |
10701 | ilasm. | |
10702 | ||
d8ec5bf2 | 10703 | 2008-04-07 Aurelien Jarno <aurelien@aurel32.net> |
9e81dbc7 | 10704 | Xavier Grave <grave@ipno.in2p3.fr> |
d8ec5bf2 AJ |
10705 | |
10706 | * Makefile.in: Add make ifeq define for mips/mipsel support. | |
9e81dbc7 | 10707 | * g-soccon-linux-mips.ads, system-linux-mipsel.ads, |
d8ec5bf2 AJ |
10708 | system-linux-mips.ads: New files. |
10709 | ||
7437c8d4 AJ |
10710 | 2008-04-07 Aurelien Jarno <aurelien@aurel32.net> |
10711 | ||
9e81dbc7 | 10712 | * sysdep.c: add __GLIBC__ to the #ifdef preprocessor macros to |
7437c8d4 AJ |
10713 | detect systems using GNU libc. |
10714 | * gsocket.h: ditto. | |
10715 | * socket.c: ditto. | |
10716 | * adaint.c: ditto. | |
10717 | * link.c: ditto. | |
10718 | ||
1dab7b35 AJ |
10719 | 2008-04-07 Aurelien Jarno <aurelien@aurel32.net> |
10720 | ||
9e81dbc7 | 10721 | * s-osinte-linux-kfreebsd.ads (SC_NPROCESSORS_ONLN): New |
1dab7b35 AJ |
10722 | constant constant for sysconf call. |
10723 | (bit_field): New packed boolean type used by cpu_set_t. | |
10724 | (cpu_set_t): New type corresponding to the C type with | |
10725 | the same name. Note that on the Ada side we use a bit | |
10726 | field array for the affinity mask. There is not need | |
10727 | for the C macro for setting individual bit. | |
10728 | (pthread_setaffinity_np): New imported routine. | |
10729 | * Makefile.in: Use s-tasinf-linux.ads and s-tasinf-linux.adb | |
10730 | on GNU/kFreeBSD. | |
10731 | ||
39fcde8f EB |
10732 | 2008-04-07 Eric Botcazou <ebotcazou@adacore.com> |
10733 | ||
10734 | * utils2.c (build_binary_op): Fold ARRAY_REF and ARRAY_RANGE_REF too. | |
10735 | ||
9dd9bf80 EB |
10736 | 2008-04-07 Eric Botcazou <ebotcazou@adacore.com> |
10737 | ||
10738 | * gigi.h (create_subprog_type): Remove returns_with_dsp parameter. | |
10739 | * decl.c (gnat_to_gnu_entity): Adjust for above new prototype. | |
10740 | * utils.c (create_subprog_type): Remove returns_with_dsp parameter. | |
10741 | * trans.c (gnat_to_gnu) <N_Return_Statement>: Remove code dealing with | |
10742 | Return by Depressed Stack Pointer. | |
10743 | ||
2d091b12 EB |
10744 | 2008-04-06 Eric Botcazou <ebotcazou@adacore.com> |
10745 | ||
10746 | * decl.c (is_variable_size): Do not unconditionally return false | |
10747 | on non-strict alignment platforms. | |
10748 | ||
1bde5bc4 EB |
10749 | 2008-04-06 Eric Botcazou <ebotcazou@adacore.com> |
10750 | ||
10751 | * decl.c (rest_of_type_decl_compilation_no_defer): New local function | |
10752 | used to process all the variants of the specified type. | |
10753 | (gnat_to_gnu_entity): Invoke rest_of_type_decl_compilation for enumeral | |
10754 | types too. Call rest_of_type_decl_compilation_no_defer if undeferring. | |
10755 | (rest_of_type_decl_compilation): Likewise. | |
10756 | * utils.c (gnat_pushdecl): Propagate the name to all variants of type. | |
10757 | ||
9ff420f1 PB |
10758 | 2008-04-03 Paolo Bonzini <bonzini@gnu.org> |
10759 | ||
1bde5bc4 EB |
10760 | * gigi.h (insert_block): Kill. |
10761 | * utils.c (insert_block): Kill. | |
9ff420f1 | 10762 | |
bf1e48d1 EB |
10763 | 2008-04-02 Eric Botcazou <ebotcazou@adacore.com> |
10764 | ||
10765 | * decl.c (gnat_to_gnu_entity) <object>: For a constant object whose | |
10766 | type has self-referential size, get the size from the initializing | |
10767 | expression directly if it is also a constant whose nominal type | |
10768 | has self-referential size. | |
10769 | ||
a6a0635e JDA |
10770 | 2008-04-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
10771 | ||
51e5c7b5 JDA |
10772 | PR ada/33688 |
10773 | * g-soccon-darwin.ads: Define new constant IP_PKTINFO. | |
10774 | ||
a6a0635e JDA |
10775 | PR ada/33857 |
10776 | * env.c: Always include crt_externs.h if __APPLE__ is defined. | |
10777 | (__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined. | |
10778 | ||
4d22f5b1 AJ |
10779 | 2008-04-01 Andreas Jaeger <aj@suse.de> |
10780 | ||
10781 | * g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and | |
10782 | IP_PKTINFO. | |
10783 | ||
dec55d76 RW |
10784 | 2008-03-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
10785 | ||
10786 | * g-table.adb, g-tasloc.adb, g-traceb.ads, | |
10787 | g-trasym.adb, g-utf_32.adb, gen-soccon.c, gigi.h, gmem.c, | |
10788 | gnatbind.adb, gnatchop.adb, gnatcmd.adb, | |
10789 | gnatcmd.ads, gnatdll.adb, gnatfind.adb, | |
10790 | gnatlink.adb, gnatmem.adb, gprep.adb, | |
10791 | i-cstrea-vms.adb, i-cstrin.adb, i-pacdec.ads, | |
10792 | i-vxwork.ads, impunit.adb, init.c, initialize.c, inline.adb, | |
10793 | layout.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb, | |
10794 | lib-xref.ads, lib.adb, link.c, live.ads, | |
10795 | make.adb, makegpr.adb, makeutl.adb, math_lib.adb, | |
10796 | mdll-utl.adb, mdll.ads, memroot.adb, memroot.ads, | |
10797 | misc.c, mlib-prj.adb, mlib-tgt-hpux.adb, | |
10798 | mlib-tgt-linux.adb, mlib-tgt-tru64.adb, mlib-tgt.ads, | |
10799 | namet.adb, namet.h, nlists.adb, nlists.ads, | |
10800 | nlists.h, opt.ads, osint-b.ads, osint-c.adb, | |
10801 | osint-c.ads, osint.adb, osint.ads, output.ads, | |
10802 | par-ch10.adb, par-ch12.adb, par-ch2.adb, par-ch3.adb, | |
10803 | par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch9.adb, | |
10804 | par-endh.adb, par-labl.adb, par-prag.adb, | |
10805 | par-sync.adb, par-tchk.adb, par-util.adb, | |
10806 | par.adb, prep.adb, prep.ads, prepcomp.adb, prj-attr.ads, | |
10807 | prj-dect.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb, | |
10808 | prj-nmsc.ads, prj-pp.adb, prj-proc.adb, | |
10809 | prj-strt.ads, prj-tree.ads, prj.adb, prj.ads: Fix comment typos. | |
10810 | ||
5a864002 EB |
10811 | 2008-03-31 Eric Botcazou <ebotcazou@adacore.com> |
10812 | ||
10813 | * decl.c (gnat_to_gnu_entity) <object>: Do not force a non-null | |
10814 | size if it has overflowed. | |
10815 | ||
2566855a | 10816 | 2008-03-31 Olivier Hainque <hainque@adacore.com> |
9e81dbc7 | 10817 | Eric Botcazou <ebotcazou@adacore.com> |
2566855a OH |
10818 | |
10819 | * utils2.c (find_common_type): Document assumption on t1/t2 vs | |
10820 | lhs/rhs. Force use of lhs type if smaller, whatever the modes. | |
10821 | ||
e14c931f RW |
10822 | 2008-03-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
10823 | ||
10824 | * a-textio.ads, a-witeio.ads, a-ztexio.ads, ali.ads, | |
10825 | einfo.ads, erroutc.adb, erroutc.ads, exp_attr.adb, | |
10826 | exp_imgv.adb, exp_intr.adb, exp_pakd.adb, | |
10827 | exp_pakd.ads, exp_prag.adb, exp_smem.adb, | |
10828 | exp_tss.ads, exp_util.adb, exp_util.ads, | |
10829 | exp_vfpt.adb, freeze.adb, freeze.ads, | |
10830 | frontend.adb, g-alleve.adb, g-altcon.adb, | |
10831 | g-altive.ads, g-alveop.ads, g-alvevi.ads, | |
10832 | g-arrspl.adb, g-busorg.ads, g-calend.adb, | |
10833 | g-calend.ads, g-casuti.ads, g-cgideb.adb, | |
10834 | g-comlin.adb, g-comlin.ads, g-curexc.ads, | |
10835 | g-debpoo.adb, g-debpoo.ads, g-decstr.adb, | |
10836 | g-dirope.adb, g-dirope.ads, g-dynhta.ads, | |
10837 | g-dyntab.adb, g-encstr.ads, g-excact.ads, | |
10838 | g-except.ads, g-expect.ads, g-heasor.adb, | |
10839 | g-hesora.adb, g-hesorg.adb, g-htable.ads, | |
10840 | g-locfil.ads, g-md5.adb, g-md5.ads, | |
10841 | g-memdum.ads, g-moreex.ads, g-os_lib.adb, | |
10842 | g-pehage.adb, g-pehage.ads, g-regexp.adb, | |
10843 | g-regexp.ads, g-regpat.adb, g-regpat.ads, | |
10844 | g-soccon-aix.ads, g-soccon-darwin.ads, | |
10845 | g-soccon-freebsd.ads, g-soccon-hpux-ia64.ads, | |
10846 | g-soccon-hpux.ads, g-soccon-irix.ads, | |
10847 | g-soccon-linux-64.ads, g-soccon-linux-ppc.ads, | |
10848 | g-soccon-linux-x86.ads, g-soccon-lynxos.ads, | |
10849 | g-soccon-mingw.ads, g-soccon-solaris-64.ads, | |
10850 | g-soccon-solaris.ads, g-soccon-tru64.ads, | |
10851 | g-soccon-vms.ads, g-soccon-vxworks.ads, | |
10852 | g-soccon.ads, g-socket.adb, g-socket.ads, | |
10853 | g-socthi-mingw.adb, g-socthi-vms.adb, | |
10854 | g-socthi-vxworks.adb, g-soliop-mingw.ads, | |
10855 | g-soliop-solaris.ads, g-soliop.ads, g-spipat.adb, | |
10856 | g-spipat.ads, g-string.adb, g-stsifd-sockets.adb: Fix comment | |
10857 | typos. | |
10858 | ||
2bc894d9 EB |
10859 | 2008-03-27 Eric Botcazou <ebotcazou@adacore.com> |
10860 | ||
10861 | * decl.c (gnat_to_gnu_entity) <E_Procedure>: Also set the public flag | |
10862 | if the procedure is imported. | |
10863 | ||
640bd0bf AC |
10864 | 2008-03-26 Arnaud Charlet <charlet@adacore.com> |
10865 | ||
10866 | * adaint.c: Fix warnings. | |
10867 | ||
0afae63b AC |
10868 | 2008-03-26 Arnaud Charlet <charlet@adacore.com> |
10869 | ||
10870 | * g-dirope.ads, g-dirope.adb: (Dir_Type_Value): Moved to spec. | |
10871 | ||
afc5f979 AC |
10872 | 2008-03-26 Arnaud Charlet <charlet@adacore.com> |
10873 | ||
10874 | * a-witeio.adb: Fix problem with Current_Output (introduce Self). | |
10875 | Fix problem of status check for null file | |
10876 | ||
c5d31169 AC |
10877 | 2008-03-26 Arnaud Charlet <charlet@adacore.com> |
10878 | ||
10879 | * s-proinf-irix-athread.ads, s-vxwork-mips.ads, | |
10880 | s-traces.ads, s-vxwork-arm.ads, s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, | |
10881 | s-tasinf-mingw.ads, s-tasinf-linux.ads, s-tasdeb.ads, mlib-tgt.ads, | |
10882 | i-cstrin.ads, uintp.adb, g-catiio.adb, s-vmexta.ads, | |
10883 | s-trafor-default.ads, s-vxwork-m68k.ads: Minor reformatting. Update | |
10884 | comments. | |
10885 | ||
b501b251 AC |
10886 | 2008-03-26 Thomas Quinot <quinot@adacore.com> |
10887 | ||
2bc894d9 | 10888 | PR ada/33688 |
b501b251 AC |
10889 | * g-socket.ads, g-socket.adb (Options, Set_Socket_Option, |
10890 | Get_Socket_Option): Add support for Receive_Packet_Info. | |
10891 | ||
10892 | * g-soccon.ads, g-soccon-tru64.ads, g-soccon-aix.ads, | |
10893 | g-soccon-irix.ads, g-soccon-hpux.ads, g-soccon-solaris.ads, | |
10894 | g-soccon-vms.ads, g-soccon-mingw.ads, g-soccon-freebsd.ads, | |
10895 | g-soccon-hpux-ia64.ads, g-soccon-solaris-64.ads, g-soccon-darwin.ads, | |
10896 | g-soccon-lynxos.ads, g-soccon-linux-64.ads, g-soccon-linux-x86.ads: Add | |
10897 | new constants SO_REUSEPORT and IP_PKTINFO | |
10898 | ||
10899 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
10900 | ||
10901 | * a-taster.adb, s-shasto.adb, s-soflin.adb, s-taasde.adb, s-taenca.adb, | |
10902 | a-sytaco.adb, a-sytaco.ads, a-tasatt.adb, a-taside.adb, | |
10903 | a-intnam-lynxos.ads, a-retide.adb, a-intnam-tru64.ads, a-intnam-aix.ads, | |
10904 | a-intnam-irix.ads, a-intnam-hpux.ads, a-intnam-linux.ads, | |
10905 | a-intnam-solaris.ads, a-caldel-vms.adb, a-intnam-vms.ads, | |
10906 | a-excpol-abort.adb, a-intnam-mingw.ads, s-interr.adb, s-interr.ads, | |
10907 | s-intman.ads, s-gloloc.adb, s-osinte-lynxos-3.ads, | |
10908 | s-interr-sigaction.adb, s-osinte-hpux.ads, s-osinte-solaris-posix.ads, | |
10909 | a-intnam-freebsd.ads, s-osinte-freebsd.ads, s-osinte-lynxos.ads, | |
10910 | s-taspri-lynxos.ads, s-osinte-tru64.ads, s-osinte-tru64.ads, | |
10911 | s-taspri-tru64.ads, s-osinte-aix.ads, s-osinte-irix.ads, | |
10912 | s-osinte-hpux-dce.ads, s-taprop-hpux-dce.adb, s-taspri-hpux-dce.ads, | |
10913 | s-osinte-linux.ads, s-osinte-dummy.ads, s-taprop-dummy.adb, | |
10914 | s-taspri-dummy.ads, s-interr-dummy.adb, s-osinte-solaris.ads, | |
10915 | s-osinte-mingw.ads, s-taprop-solaris.adb, s-taspri-solaris.ads, | |
10916 | s-inmaop-vms.adb, s-interr-vms.adb, s-intman-vms.ads, s-osinte-vms.ads, | |
10917 | s-osinte-vms.ads, s-taprop-vms.adb, s-taspri-vms.ads, | |
10918 | s-taspri-mingw.ads, s-interr-vxworks.adb, s-inmaop-posix.adb, | |
10919 | s-intman-vxworks.ads, s-osinte-vxworks.ads, s-osprim-vxworks.adb, | |
10920 | s-taspri-vxworks.ads, s-taspri-posix.ads, a-caldel.adb, a-calend.adb, | |
10921 | a-elchha.adb, a-dynpri.adb, a-except.adb, a-except.ads, a-interr.ads, | |
10922 | a-textio.adb, a-tigeau.ads, atree.adb, s-taprob.adb, s-taprop.ads, | |
10923 | s-tarest.adb, s-tarest.ads, s-tasini.adb, s-taskin.adb, s-taskin.ads, | |
10924 | s-tasque.adb, s-tasren.adb, s-tasren.ads, s-tassta.adb, s-tassta.ads, | |
10925 | s-tasuti.adb, s-tataat.adb, s-tataat.ads, s-tpoben.adb, s-tpoben.ads, | |
10926 | s-tpobop.adb, s-tpobop.ads, s-tposen.adb, s-tposen.ads, s-valrea.adb, | |
10927 | s-valuti.adb, a-intnam-darwin.ads, s-osinte-darwin.ads, s-solita.adb, | |
10928 | a-ztinau.ads, s-osinte-linux-hppa.ads, a-except-2005.adb, | |
10929 | a-except-2005.ads, a-rttiev.adb, s-osinte-vxworks6.ads, s-regexp.adb, | |
10930 | s-tasloc.adb: Minor reformatting. | |
10931 | Update comments. | |
10932 | Remove "used for" sections from comments. | |
10933 | ||
10934 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
10935 | ||
10936 | * s-tpopsp-posix.adb, s-tpopsp-solaris.adb, s-tpopsp-posix-foreign.adb, | |
10937 | s-tpopsp-lynxos.adb, s-tpopde-vms.ads, s-tpopde-vms.adb, | |
10938 | s-tpopsp-vxworks.adb, s-casi16.adb, s-caun16.adb, s-inmaop.ads, | |
10939 | s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-tpinop.adb, | |
10940 | s-tpinop.ads, s-tporft.adb, a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb, | |
10941 | a-crbtgk.ads, a-crbtgk.adb, a-ciorse.adb, a-cihama.ads, a-cihama.adb, | |
10942 | a-cidlli.ads, a-cidlli.adb, a-chtgop.ads, a-chtgop.adb, a-cgcaso.ads, | |
10943 | a-cgcaso.adb, a-cgaaso.adb, a-ciormu.adb, a-cihase.adb, a-swuwha.ads, | |
10944 | a-rbtgso.ads, a-cgaaso.ads, a-cgaaso.ads, a-ciorma.adb, a-chtgke.ads, | |
10945 | a-chtgke.adb, a-llfzti.ads, a-ztenau.adb, a-ztenau.ads, a-stzhas.ads, | |
10946 | a-szbzha.ads, a-szbzha.adb, a-crdlli.ads, a-crdlli.ads, a-crdlli.adb, | |
10947 | i-forbla-darwin.adb, i-forbla.ads, s-regexp.adb, a-nllrar.ads, | |
10948 | a-nlrear.ads, a-nucoar.ads, a-nurear.ads, i-forlap.ads, s-gearop.adb, | |
10949 | s-gearop.ads, s-gecobl.adb, s-gecobl.ads, s-gecola.adb, s-gecola.ads, | |
10950 | s-gerebl.adb, s-gerela.ads, a-swuwha.adb, i-forbla-unimplemented.ads, | |
10951 | double spaced if it fits on one line and otherwise single spaced. | |
10952 | ||
10953 | 2008-03-26 Arnaud Charlet <charlet@adacore.com> | |
10954 | ||
9e81dbc7 AS |
10955 | * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-lynxos.adb, |
10956 | s-taprop-linux.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb, | |
b501b251 AC |
10957 | s-taprop-posix.adb (Create_Task): Do not attempt to set task priority |
10958 | or task info if the thread could not be created. | |
10959 | ||
10960 | 2008-03-26 Arnaud Charlet <charlet@adacore.com> | |
10961 | ||
10962 | * gnatvsn.ads (Library_Version): Bump to 4.4. | |
10963 | (Current_Year): Bump to 2008. | |
10964 | ||
10965 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
10966 | ||
10967 | * ali.ads, ali.adb (Optimize_Alignment_Setting): New field in ALI record | |
10968 | ||
10969 | * bcheck.adb (Check_Consistent_Optimize_Alignment): New procedure | |
10970 | ||
10971 | * debug.adb: Add debug flags d.r and d.v | |
10972 | Add debug flag .T (Optimize_Alignment (Time)) | |
10973 | Add debug flag .S (Optimize_Alignment (Space)) | |
10974 | ||
10975 | * freeze.adb (Freeze_Record_Type): Set OK_To_Reorder_Components | |
10976 | depending on setting of relevant debug flags. | |
10977 | Replace use of Warnings_Off by Has_Warnings_Off | |
10978 | (Freeze_Entity): In circuit for warning on suspicious convention | |
10979 | actuals, do not give warning if subprogram has same entity as formal | |
10980 | type, or if subprogram does not come from source. | |
10981 | (Freeze_Entity): Don't reset Is_Packed for fully rep speced record | |
10982 | if Optimize_Alignment set to Space. | |
10983 | ||
10984 | * frontend.adb: Add call to Sem_Warn.Initialize | |
10985 | Add call to Sem_Warn.Output_Unused_Warnings_Off_Warnings | |
10986 | Reset Optimize_Alignment mode from debug switches .S and .T | |
10987 | ||
10988 | * layout.adb (Layout_Composite_Object): Rewritten for | |
10989 | Optimize_Aligment pragma. | |
10990 | ||
10991 | * lib-writ.ads, lib-writ.adb: New Ox parameter for Optimize_Alignment | |
10992 | mode. | |
10993 | ||
10994 | * opt.ads, opt.adb: (Optimize_Alignment): New global switch | |
10995 | ||
10996 | * par-prag.adb (N_Pragma): Chars field removed, use Chars | |
10997 | (Pragma_Identifier (.. instead, adjustments throughout to accomodate | |
10998 | this change. Add entry for pragma Optimize_Alignment | |
10999 | ||
11000 | * sem_prag.adb (N_Pragma): Chars field removed, use Chars | |
11001 | (Pragma_Identifier (.. | |
11002 | instead, adjustments throughout to accomodate this change. | |
11003 | (Process_Compile_Time_Warning_Or_Error): Use !! for generated msg | |
11004 | (Favor_Top_Level): Use new function Is_Access_Subprogram_Type | |
11005 | Add implementation of pragma Optimize_Alignment | |
11006 | ||
11007 | 2008-03-26 Vincent Celier <celier@adacore.com> | |
11008 | ||
11009 | * a-szuzti.adb, a-swuwti.adb, a-suteio.adb (functions Get_Line): | |
11010 | Improve memory usage to avoid use of stack. | |
11011 | ||
11012 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11013 | ||
11014 | * a-teioed.ads: Correct value of Default_Fill | |
11015 | ||
11016 | * a-teioed.adb (Image): Use Fill_Character instead of '*' to fill | |
11017 | ||
11018 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11019 | ||
11020 | * a-ztexio.adb, a-ztexio.ads, a-witeio.ads, a-witeio.adb: Fix problem | |
11021 | with Current_Output (introduce Self). | |
11022 | ||
11023 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11024 | ||
11025 | * checks.adb (Ensure_Valid): Capture valid status if possible | |
11026 | (eliminate checks) | |
11027 | ||
11028 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11029 | ||
11030 | * stand.ads: Deal with reordering of package standard declarations | |
11031 | ||
11032 | * cstand.adb: Put package Standard declarations in proper order | |
11033 | ||
11034 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11035 | ||
11036 | * einfo.ads, einfo.adb (N_Pragma): Chars field removed, use Chars | |
11037 | (Pragma_Identifier (.. instead. | |
11038 | (OK_To_Reorder_Components): New flag | |
11039 | (Has_Entries): Code cleanup. | |
11040 | (Warnings_Off_Used): New flag | |
11041 | (Warnings_Off_Used_Unmodified): New flag | |
11042 | (Warnings_Off_Used_Unreferenced): New flag | |
11043 | (Has_Warnings_Off): New function | |
11044 | (Has_Unmodified): New function | |
11045 | (Has_Unreferenced): New function | |
11046 | (Is_Trivial_Subprogram): New flag | |
11047 | (Is_Static_Dispatch_Table_Entity): New attribute. | |
11048 | Change name Access_Subprogram_Type_Kind to Access_Subprogram_Kind | |
11049 | (more consistent with other similar names) | |
11050 | (Access_Subprogram_Type): New classification function | |
11051 | ||
11052 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11053 | ||
11054 | * errout.ads: Document new !! insertion sequence | |
11055 | ||
11056 | * errout.adb (N_Pragma): Chars field removed, use Chars | |
11057 | (Pragma_Identifier (.. instead. | |
11058 | Replace use of Warnings_Off by Has_Warnings_Off | |
11059 | (Error_Msg_Internal): Don't delete warning ending in !! | |
11060 | ||
11061 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11062 | ||
11063 | * par.adb (Check_No_Right_Paren): Removed no longer used | |
11064 | ||
11065 | * par-ch10.adb (N_Pragma): Chars field removed, use Chars | |
11066 | (Pragma_Identifier (.. instead. | |
11067 | ||
11068 | * par-ch10.adb (P_Subunit): Improvement in error recovery and message | |
11069 | ||
11070 | * par-tchk.adb, par-ch5.adb, par-ch6.adb, par-ch3.adb, | |
11071 | par-ch4.adb: Minor improvements in error recovery and messages. | |
11072 | ||
11073 | * erroutc.adb (Test_Style_Warning_Serious_Msg): Treat style msgs as | |
11074 | non-serious | |
11075 | ||
11076 | * par-ch9.adb: Minor improvements in error recovery and messages | |
11077 | (P_Protected): Better error recovery for "protected type x;" | |
11078 | ||
11079 | * par-util.adb: Minor improvements in error recovery and messages | |
11080 | (Check_No_Right_Paren): Removed no longer used | |
11081 | ||
11082 | 2008-03-26 Ed Schonberg <schonberg@adacore.com> | |
11083 | ||
11084 | * exp_aggr.adb (Replace_Type): When checking for self-reference, verify | |
11085 | that the prefix of an attribute is the type of the aggregate being | |
11086 | expanded. | |
11087 | ||
11088 | 2008-03-26 Javier Miranda <miranda@adacore.com> | |
11089 | Robert Dewar <dewar@adacore.com> | |
11090 | ||
11091 | * exp_attr.adb (N_Pragma): Chars field removed. | |
11092 | (Expand_N_Attribute_Reference): If the designated type associated with | |
11093 | attribute 'Unrestricted_Access is a subprogram entity then replace it | |
11094 | by an E_Subprogram_Type itype. | |
11095 | Implement attribute Old | |
11096 | ||
11097 | * sem_attr.ads (Attribute_Class_Array): Move to snames.ads | |
11098 | ||
11099 | * sem_attr.adb (Build_Access_Subprogram_Itype): Add documentation. | |
11100 | Replace call to | |
11101 | New_Internal_Entity by call to Create_Itype to centralize calls | |
11102 | building itypes, ad propagate the convention of the designated | |
11103 | subprogram. In addition, disable the machinery cleaning constant | |
11104 | indications from all entities in current scope when 'Unrestricted_Access | |
11105 | corresponds with a node initializing a dispatch table slot. | |
11106 | (Analyze_Attribute): Parameterless attributes returning a string or a | |
11107 | type will not be called with improper arguments, so we can remove junk | |
11108 | code that was dealing with this case. | |
11109 | Implement attribute Old | |
11110 | ||
11111 | * snames.ads, snames.h, snames.adb: Add entries for attribute Old | |
11112 | Add entry for pragma Optimize_Alignment | |
11113 | New standard names Sync and Synchronize | |
11114 | ||
11115 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11116 | Arnaud Charlet <charlet@adacore.com> | |
11117 | ||
11118 | * exp_ch11.adb (Expand_At_End_Handler): Set From_At_End flag on raise | |
11119 | stmt. | |
11120 | (No_Exception_Propagation_Active): New function. | |
11121 | (Expand_Exception_Handlers): Use No_Exception_Propagation_Active. | |
11122 | Update comments, and review all uses of No_Exception_Propagation, which | |
11123 | are now correct and in sync with what gigi expects. | |
11124 | ||
11125 | * restrict.ads, restrict.adb (No_Exception_Propagation_Active): New | |
11126 | function. | |
11127 | (Expand_Exception_Handlers): Use No_Exception_Propagation_Active. | |
11128 | Update comments, and review all uses of No_Exception_Propagation, which | |
11129 | are now correct and in sync with what gigi expects. | |
11130 | ||
11131 | 2008-03-26 Ed Schonberg <schonberg@adacore.com> | |
11132 | ||
11133 | * sem_ch3.adb (Access_Definition): If the access type is the return | |
11134 | result of a protected function, create an itype reference for it | |
11135 | because usage will be in an inner scope from the point of declaration. | |
11136 | (Build_Derived_Record_Type): Inherit Reverse_Bit_Order and | |
11137 | OK_To_Reorder_Components. | |
11138 | (Make_Index): If an overloaded range includes a universal integer | |
11139 | interpretation, resolve to Standard.Integer. | |
11140 | (Analyze_Subtype_Indication): Copy Convention to subtype | |
11141 | (Check_Abstract_Interfaces): Complete semantic checks on the legality of | |
11142 | limited an synchronized progenitors in type declaration and private | |
11143 | extension declarations. | |
11144 | ||
11145 | * exp_ch13.adb (Expand_N_Freeze_Entity): If the scope of the entity is a | |
11146 | protected subprogram body, determine proper scope from subprogram | |
11147 | declaration. | |
11148 | ||
11149 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11150 | ||
11151 | * exp_ch4.adb (Expand_N_Op_Concat): Remove special tests for | |
11152 | No_Run_Time_Mode | |
11153 | ||
11154 | 2008-03-26 Gary Dismukes <dismukes@adacore.com> | |
11155 | ||
11156 | * exp_ch5.adb (Expand_N_Extended_Return_Statement): Suppress generation | |
11157 | of a heap allocator for a limited unconstrained function return when | |
11158 | resstriction No_Allocators is active. | |
11159 | (Analyze_Allocator): The restriction No_Allocators is now only checked | |
11160 | on allocators that have Comes_From_Source set, as per RM-H.4(7). | |
11161 | ||
11162 | * sem_ch4.adb (Expand_N_Extended_Return_Statement): Suppress generation | |
11163 | of a heap allocator for a limited unconstrained function return when | |
11164 | resstriction No_Allocators is active. | |
11165 | (Analyze_Allocator): The restriction No_Allocators is now only checked | |
11166 | on allocators that have Comes_From_Source set, as per RM-H.4(7). | |
11167 | (Has_Fixed_Op): If the name in a function call is Standard."*" and the | |
11168 | operands are fixed-point types, the universal_fixed predefined operation | |
11169 | is used, regardless of whether the operand type (s) have a primitive | |
11170 | operation of the same name. | |
11171 | ||
11172 | 2008-03-26 Javier Miranda <miranda@adacore.com> | |
11173 | ||
11174 | * exp_disp.adb (Make_DT, Make_Secondary_DT): Set attribute | |
11175 | Is_Static_Dispatch_Table | |
11176 | (Build_Dispatch_Tables): Replace calls to Exchange_Entities() by calls | |
11177 | to Exchange_Declarations to exchange the private and full-view. Bug | |
11178 | found working in this issue. | |
11179 | (Expand_Dispatching_Call): Propagate the convention of the subprogram | |
11180 | to the subprogram pointer type. | |
11181 | (Make_Secondary_DT): Replace generation of Prim'Address by | |
11182 | Address (Prim'Unrestricted_Access) | |
11183 | (Make_DT): Replace generation of Prim'Address by | |
11184 | Address (Prim'Unrestricted_Access) | |
11185 | (Make_Disp_*_Bodies): When compiling for a restricted profile, use | |
11186 | simple call form for single entry. | |
11187 | (Make_DT): Handle new contents of Access_Disp_Table (access to dispatch | |
11188 | tables of predefined primitives). | |
11189 | (Make_Secondary_DT): Add support to handle access to dispatch tables of | |
11190 | predefined primitives. | |
11191 | (Make_Tags): Add entities to Access_Dispatch_Table associated with | |
11192 | access to dispatch tables containing predefined primitives. | |
11193 | ||
11194 | * exp_ch6.adb (N_Pragma): Chars field removed, use Chars | |
11195 | (Pragma_Identifier (.. instead, adjustments throughout to accomodate | |
11196 | this change. | |
11197 | (Register_Predefined_DT_Entry): Updated to handle the new contents | |
11198 | of attribute Access_Disp_Table (pointers to dispatch tables containing | |
11199 | predefined primitives). | |
11200 | ||
11201 | * exp_util.ads, exp_util.adb (Corresponding_Runtime_Package): New | |
11202 | subprogram. | |
11203 | (Find_Interface_ADT): Updated to skip the new contents of attribute | |
11204 | Access_Dispatch_Table (pointers to dispatch tables containing predefined | |
11205 | primitives). | |
11206 | ||
11207 | * sem_util.adb (Has_Abstract_Interfaces): Add missing support for | |
11208 | concurrent types. | |
11209 | (Set_Convention): Use new function Is_Access_Subprogram_Type | |
11210 | (Collect_Interfaces_Info): Updated to skip the new contents of attribute | |
11211 | Access_Dispatch_Table (pointers to dispatch tables containing predefined | |
11212 | primitives). | |
11213 | ||
11214 | * exp_atag.ads, exp_atag.adb (Build_Inherit_Predefined_Prims): Improve | |
11215 | expanded code avoiding calls to Build_Predef_Prims. | |
11216 | (Build_Set_Predefined_Prim_Op_Address): Improve expanded code avoiding | |
11217 | call to Build_Get_Predefined_Prim_Op_Address. | |
11218 | ||
11219 | 2008-03-26 Javier Miranda <miranda@adacore.com> | |
11220 | ||
11221 | * exp_ch7.adb (Make_Clean): Code cleanup using the new centralized | |
11222 | subprogram Corresponding_Runtime_Package to know the runtime package | |
11223 | that will provide support to a given protected type. | |
11224 | ||
11225 | * exp_ch9.adb (Add_Private_Declarations, | |
11226 | Build_Protected_Subprogram_Call, | |
11227 | Build_Protected_Entry, Build_Simple_Entry_Call, | |
11228 | Expand_N_Protected_Body, Expand_N_Protected_Type_Declaration, | |
11229 | Expand_N_Timed_Entry_Call, Make_Initialize_Protection): Code | |
11230 | cleanup using the new centralized subprogram Corresponding_Runtime | |
11231 | Package to know the runtime package that provides support to | |
11232 | a given protected type. | |
11233 | ||
11234 | 2008-03-26 Ed Schonberg <schonberg@adacore.com> | |
11235 | ||
11236 | * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If the component | |
11237 | assignment is within the initialization procedure for a packed array, | |
11238 | and Initialize_Scalars is enabled, compile right-hand side with checks | |
11239 | off, because the value is purposely out of range. | |
11240 | ||
11241 | 2008-03-26 Vincent Celier <celier@adacore.com> | |
11242 | ||
11243 | * gnatcmd.adb: Add processing for GNAT SYNC | |
11244 | ||
11245 | * vms_conv.ads: (Command_Type): Add command Sync | |
11246 | ||
11247 | * vms_conv.adb (Initialize): Add Command_List data for new command Sync | |
11248 | ||
11249 | * vms_data.ads: Add entries for -gnatw.w | |
11250 | Add qualifier for gnatstub --header-file option | |
11251 | Add switches for GNAT SYNC | |
11252 | ||
11253 | * prj-attr.ads, prj-attr.adb: Add new package Synchronize for GNAT SYNC | |
11254 | (Add_Package_Name): New procedure | |
11255 | (Package_Name_List): New function | |
11256 | (Initialize): Add known package names to the list | |
11257 | (Register_New_Package): Add the new package name to the list | |
11258 | ||
11259 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11260 | ||
11261 | * g-pehage.adb, g-regist.adb, g-spipat.ads, g-spipat.adb, | |
11262 | s-asthan.adb, s-parint.adb, s-rpc.adb, s-stchop.adb: Replace | |
11263 | Raise_Exception by "raise with" construct. | |
11264 | ||
11265 | 2008-03-26 Pascal Obry <obry@adacore.com> | |
11266 | ||
11267 | * Makefile.in: Add proper GNAT.Serial_Communications implementation on | |
11268 | supported platforms. | |
9e81dbc7 | 11269 | |
b501b251 | 11270 | * Makefile.rtl: Add g-sercom.o. |
9e81dbc7 | 11271 | |
b501b251 | 11272 | * impunit.adb: Add g-sercom.adb. |
9e81dbc7 | 11273 | |
b501b251 AC |
11274 | * s-crtl.ads (open): New routine. |
11275 | (close): Likewise. | |
11276 | (write): Likewise. | |
9e81dbc7 | 11277 | |
b501b251 AC |
11278 | * s-osinte-mingw.ads (BYTE): New type. |
11279 | (CHAR): Likewise. | |
11280 | (OVERLAPPED): Likewise. | |
11281 | (GENERIC_READ): New constant. | |
11282 | (GENERIC_WRITE): Likewise. | |
11283 | (OPEN_EXISTING): Likewise. | |
11284 | (PSECURITY_ATTRIBUTES): Removed this type, use anonymous access | |
11285 | type instead. | |
11286 | (CreateFile): New routine. | |
11287 | (WriteFile): Likewise. | |
11288 | (ReadFile): Likewise. | |
11289 | (CloseHandle): Move next to the other file oriented routines. | |
11290 | ||
11291 | * g-sercom.ads: New unit. | |
11292 | ||
11293 | * g-sercom.adb: Default implementation, calls to this unit will raise | |
11294 | a program error exception. | |
9e81dbc7 | 11295 | |
b501b251 AC |
11296 | * g-sercom-mingw.adb, g-sercom-linux.adb: Windows and |
11297 | GNU/Linux implementations. | |
11298 | ||
11299 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11300 | ||
11301 | * itypes.adb (Create_Itype): Use new name Access_Subprogram_Kind | |
11302 | ||
11303 | * sem_ch13.adb (Validate_Unchecked_Conversion): Give warning for | |
11304 | unchecked conversion for different conventions only for subprogram | |
11305 | pointers or on VMS. | |
11306 | ||
11307 | 2008-03-26 Vincent Celier <celier@adacore.com> | |
11308 | ||
11309 | * osint-c.adb (Set_Library_Info_Name): Use canonical case file names | |
11310 | to check if the specified object file is correct. | |
11311 | ||
11312 | 2008-03-26 Thomas Quinot <quinot@adacore.com> | |
11313 | ||
11314 | * sem_cat.adb (Validate_RACW_Primitives): Do not rely on | |
11315 | Comes_From_Source to exclude primitives from being checked. We want to | |
11316 | exclude predefined primitives only, so use the appropriate specific | |
11317 | predicate. Also, flag a formal parameter of an anonymous | |
11318 | access-to-subprogram type as illegal for a primitive operation of a | |
11319 | remote access to class-wide type. | |
11320 | ||
11321 | 2008-03-26 Vincent Celier <celier@adacore.com> | |
11322 | ||
11323 | * prj-dect.adb (Parse_Package_Declaration): When a package name is not | |
11324 | known, check if it may be a missspelling of a known package name. In | |
11325 | not verbose, not mode, issue warnings only if the package name is a | |
11326 | possible misspelling. | |
11327 | In verbose mode, always issue a warning for a not known package name, | |
11328 | plus a warning if the name is a misspelling of a known package name. | |
11329 | ||
11330 | * prj-part.adb (Post_Parse_Context_Clause): Modify so that only non | |
11331 | limited withs or limited withs are parse during one call. | |
11332 | (Parse_Single_Project): Post parse context clause in two passes: non | |
11333 | limited withs before current project and limited withs after current | |
11334 | project. | |
11335 | ||
11336 | * prj-proc.adb (Imported_Or_Extended_Project_From): Returns an extended | |
11337 | project with the name With_Name, even if it is only extended indirectly. | |
11338 | (Recursive_Process): Process projects in order: first single withs, then | |
11339 | current project, then limited withs. | |
11340 | ||
11341 | * prj-tree.adb (Imported_Or_Extended_Project_Of): Returns an extended | |
11342 | project with the name With_Name, even if it is only extended indirectly. | |
11343 | ||
11344 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11345 | ||
11346 | * scn.adb (Initialize_Scanner): Format messages belong on standard error | |
11347 | ||
11348 | 2008-03-26 Ed Schonberg <schonberg@adacore.com> | |
11349 | ||
11350 | * sem_ch10.adb (Analyze_Compilation_Unit): if a unit in the context is | |
11351 | a generic subprogram that is imported, do not attempt to compile | |
11352 | non-existent body. | |
11353 | ||
11354 | * sem_ch12.adb (Instantiate_Subprogram_Body): if the generic is | |
11355 | imported, do not generate a raise_program_error for the non-existent | |
11356 | body. | |
11357 | (Pre_Analyze_Actuals): If an error is detected during pre-analysis, | |
11358 | perform minimal name resolution on the generic to avoid spurious | |
11359 | warnings. | |
11360 | (Find_Actual_Type): the designated type of the actual in a child unit | |
11361 | may be declared in a parent unit without being an actual. | |
11362 | ||
11363 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11364 | ||
11365 | * sem_ch11.adb: Fix No_Exception_Restriction violation for SJLJ | |
11366 | * sinfo.ads, sinfo.adb (From_At_End): New flag | |
11367 | ||
11368 | 2008-03-26 Ed Schonberg <schonberg@adacore.com> | |
11369 | ||
11370 | * sem_ch6.adb (Analyze_Subprogram_Body): Remove spurious check on | |
11371 | operations that have an interface parameter. | |
11372 | (Analyze_Subprogram_Body): Set Is_Trivial_Subprogram flag | |
11373 | Don't treat No_Return call as raise. | |
11374 | ||
11375 | * sem_disp.adb (Check_Dispatching_Operations): apply check for | |
11376 | non-primitive interface primitives to access parameters, not to all | |
11377 | parameters of an access type. | |
11378 | ||
11379 | 2008-03-26 Ed Schonberg <schonberg@adacore.com> | |
11380 | ||
11381 | * sem_ch7.adb (Install_Parent_Private_Declarations): If the private | |
11382 | declarations of a parent unit are made visible when compiling a child | |
11383 | instance, the parent is not a hidden open scope, even though it may | |
11384 | contain other pending instance. | |
9e81dbc7 | 11385 | |
b501b251 AC |
11386 | * sem_ch8.adb (Restore_Scope_Stack): If an entry on the stack is a |
11387 | hidden open scope for some child instance, it does affect the | |
11388 | visibility status of other stach entries. | |
11389 | (Analyze_Object_Renaming): Check that a class-wide object cannot be | |
11390 | renamed as an object of a specific type. | |
11391 | ||
11392 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11393 | ||
11394 | * sem_res.adb (Check_Infinite_Recursion): Diagnose definite infinite | |
11395 | recursion and raise SE directly. | |
11396 | (Resolve_Actuals): Reset Never_Set_In_Source if warnings off is | |
11397 | set for formal type for IN mode parameter. | |
11398 | ||
11399 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11400 | ||
11401 | * sem_warn.ads, sem_warn.adb (Warnings_Off_Pragmas): New table | |
11402 | (Initialize): New procedure | |
11403 | (Output_Warnings_Off_Warnings): New procedure | |
11404 | (Check_References): Suppress certain msgs if Is_Trivial_Subprogram | |
11405 | (Output_Non_Modifed_In_Out_Warnings): Ditto | |
11406 | (Warn_On_Unreferenced_Entity): Ditto | |
11407 | ||
11408 | 2008-03-26 Vincent Celier <celier@adacore.com> | |
11409 | ||
11410 | * a-direct.adb (Start_Search): Raise Use_Error if the directory is not | |
11411 | readable. | |
11412 | ||
11413 | 2008-03-26 Matthew Heaney <heaney@adacore.com> | |
11414 | ||
9e81dbc7 | 11415 | * a-ciorse.ads, a-cidlli.ads, a-cdlili.ads, a-cihase.ads, a-cohase.ads, |
b501b251 AC |
11416 | a-ciorma.ads, a-coorma.ads, a-ciormu.ads, a-coormu.ads, a-coorse.ads: |
11417 | Marked with clauses as private, and controlled operations as overriding | |
11418 | ||
11419 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11420 | ||
11421 | * g-byorma.adb (Read_BOM): Reorder tests so that UTF_32 is recognized | |
11422 | ||
11423 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11424 | ||
11425 | * back_end.adb, back_end.ads: Minor reformatting | |
11426 | ||
11427 | * bindgen.adb: Minor clarification of comments | |
11428 | ||
11429 | * fname.ads: Minor comment fixes | |
11430 | ||
11431 | * g-altive.ads, g-catiio.ads, g-trasym.ads, prj.ads, | |
11432 | prj-nmsc.adb, sem_aggr.adb: Minor reformatting | |
11433 | ||
11434 | * xeinfo.adb, xnmake.adb, xsinfo.adb, xtreeprs.adb, | |
11435 | xsnames.adb: Remove warnings off pragma no longer needed | |
11436 | ||
11437 | * a-catizo.ads, a-calari.ads, a-calfor.adb, | |
11438 | a-calfor.ads: Fix header. | |
11439 | ||
11440 | 2008-03-26 Tristan Gingold <gingold@adacore.com> | |
11441 | ||
11442 | * init.c: Do not adjust pc for HPARITH on alpha/vms. | |
11443 | ||
11444 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11445 | ||
11446 | * lib-xref.adb: (OK_To_Set_Reference): New function | |
11447 | (Generate_Reference): Don't set referenced from occurrence in Warnings, | |
11448 | Unmodified, or Unreferenced pragma | |
11449 | ||
11450 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11451 | ||
11452 | * alloc.ads: Add entries for Warnings_Off_Pragmas table | |
11453 | ||
11454 | 2008-03-26 GNAT Script <nobody@adacore.com> | |
11455 | ||
11456 | * Make-lang.in: Makefile automatically updated | |
11457 | ||
11458 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11459 | ||
11460 | * tbuild.ads, tbuild.adb, trans.c, sprint.adb, exp_prag.adb, decl.c, | |
11461 | par-ch2.adb, sem_elab.adb, sem_util.ads (N_Pragma): Chars field | |
11462 | removed, use Chars (Pragma_Identifier (.. instead, adjustments | |
11463 | throughout to accomodate this change. | |
11464 | ||
11465 | * s-pooglo.ads, s-pooloc.ads: Minor comment updates | |
11466 | ||
11467 | * exp_dbug.adb: Use Sem_Util.Set_Debug_Info_Needed (not | |
11468 | Einfo.Set_Needs_Debug_Info) | |
11469 | ||
11470 | 2008-03-26 Robert Dewar <dewar@adacore.com> | |
11471 | ||
11472 | * gnat_ugn.texi: Add documentation for -gnatw.w/-gnatw.W | |
11473 | Add description for the new gnatstub option '--header-file' | |
11474 | clarification of -gnatwz/-gnatwZ | |
11475 | Add a "Irix-Specific Considerations" section to document the need to | |
11476 | set LD_LIBRARY_PATH when using the default shared runtime library. | |
11477 | Added documentation for both gcov and gprof. | |
11478 | ||
11479 | * gnat_rm.texi: Document that pragma Compile_Time_Warning generates | |
11480 | messages that are not suppressed when clients are compiled. | |
11481 | Add documentation of s-pooglo s-pooloc | |
11482 | Document the new GNAT.Serial_Communications API. | |
11483 | Add documentation for 'Old attribute | |
11484 | Add description of pragma Optimize_Alignment | |
11485 | ||
11486 | * ug_words: Add entries for -gnatw.w -gnatw.W | |
11487 | ||
11488 | * usage.adb: Add line for -gnatw.w (warn on warnings off) | |
11489 | ||
3a9634be EB |
11490 | 2008-03-25 Eric Botcazou <ebotcazou@adacore.com> |
11491 | ||
11492 | Revert | |
11493 | 2008-03-05 Eric Botcazou <ebotcazou@adacore.com> | |
11494 | PR ada/35186 | |
11495 | * decl.c (maybe_pad_type): Avoid padding an integral type when | |
11496 | bumping its alignment is sufficient. | |
11497 | ||
53b308f6 AC |
11498 | 2008-03-25 Arnaud Charlet <charlet@adacore.com> |
11499 | ||
11500 | * exp_ch6.adb, exp_disp.adb: Update copyright notice. | |
11501 | Fix wrong formatting (lines too long) | |
11502 | ||
8fc789c8 RW |
11503 | 2008-03-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11504 | ||
11505 | * 9drpc.adb, a-caldel-vms.adb, a-caldel.adb, | |
11506 | a-calend-vms.adb, a-calend.adb, a-calend.ads, | |
11507 | a-calfor.adb, a-chahan.ads, a-chtgke.adb, | |
11508 | a-cihama.ads, a-ciorse.adb, a-clrefi.ads, | |
11509 | a-cohama.ads, a-comlin.ads, a-coorse.adb, | |
11510 | a-crbtgk.adb, a-direct.adb, a-except-2005.adb, | |
11511 | a-except-2005.ads, a-except.adb, a-except.ads, | |
11512 | a-exexda.adb, a-exexpr-gcc.adb, a-exexpr.adb, | |
11513 | a-exextr.adb, a-filico.ads, a-finali.ads, | |
11514 | a-intnam-aix.ads, a-intnam-solaris.ads, a-ngcefu.adb, | |
11515 | a-ngelfu.adb, a-numaux-darwin.adb, a-numeri.ads, | |
11516 | a-sequio.ads, a-strbou.ads, a-strfix.adb, | |
11517 | checks.adb, exp_ch3.adb, exp_ch4.adb, | |
11518 | exp_ch4.ads, exp_ch5.adb, exp_ch6.adb, | |
11519 | exp_ch6.ads, exp_ch7.adb, exp_ch7.ads, | |
11520 | exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, | |
11521 | exp_dbug.ads, exp_disp.adb, exp_dist.adb, | |
11522 | exp_dist.ads, exp_fixd.adb, exp_fixd.ads: Fix comment typos. | |
11523 | ||
15f6d6e7 RD |
11524 | 2008-03-24 Robert Dewar <dewar@adacore.com> |
11525 | ||
11526 | * s-tpopsp-posix.adb, s-tpopsp-solaris.adb, s-tpopsp-posix-foreign.adb, | |
11527 | s-tpopsp-lynxos.adb, s-tpopde-vms.ads, s-tpopde-vms.adb, | |
11528 | s-tpopsp-vxworks.adb, s-casi16.adb, s-caun16.adb, s-inmaop.ads, | |
11529 | s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-tpinop.adb, | |
11530 | s-tpinop.ads, s-tporft.adb, a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb, | |
11531 | a-crbtgk.ads, a-crbtgk.adb, a-ciorse.adb, a-cihama.ads, a-cihama.adb, | |
11532 | a-cidlli.ads, a-cidlli.adb, a-chtgop.ads, a-chtgop.adb, a-cgcaso.ads, | |
11533 | a-cgcaso.adb, a-cgaaso.adb, a-ciormu.adb, a-cihase.adb, a-swuwha.ads, | |
11534 | a-rbtgso.ads, a-cgaaso.ads, a-cgaaso.ads, a-ciorma.adb, a-chtgke.ads, | |
11535 | a-chtgke.adb, a-llfzti.ads, a-ztenau.adb, a-ztenau.ads, a-stzhas.ads, | |
11536 | a-szbzha.ads, a-szbzha.adb, a-crdlli.ads, a-crdlli.ads, a-crdlli.adb, | |
11537 | i-forbla-darwin.adb, i-forbla.ads, s-regexp.adb, a-nllrar.ads, | |
11538 | a-nlrear.ads, a-nucoar.ads, a-nurear.ads, i-forlap.ads, s-gearop.adb, | |
11539 | s-gearop.ads, s-gecobl.adb, s-gecobl.ads, s-gecola.adb, s-gecola.ads, | |
11540 | s-gerebl.adb, s-gerela.ads, a-swuwha.adb, i-forbla-unimplemented.ads, | |
11541 | double spaced if it fits on one line and otherwise single spaced. | |
11542 | ||
b2e74434 RW |
11543 | 2008-03-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11544 | ||
11545 | PR documentation/15479 | |
11546 | * Make-lang.in (doc/gnat_ugn.texi) Renamed from ... | |
11547 | (doc/gnat_ugn_unw.texi): ... this, and adjusted. | |
11548 | (doc/gnat_ugn.info): Renamed from ... | |
11549 | (doc/gnat_ugn_unw.info): ... this. | |
11550 | (doc/gnat_ugn.dvi): Renamed from ... | |
11551 | (doc/gnat_ugn_unw.dvi): ... this. | |
11552 | (doc/gnat_ugn.pdf): Renamed from ... | |
11553 | (doc/gnat_ugn_unw.pdf): ... this. | |
11554 | (ADA_INFOFILES, ADA_PDFFILES, ada.install-info, ada.dvi): | |
11555 | Adjusted. | |
11556 | * gnat_ugn.texi (FILE): Hard-code gnat_ugn; set filename | |
11557 | unconditionally to gnat_ugn.info. Fix cross references to the | |
11558 | GNAT Reference Manual. Convert links to the GCC, GDB, Emacs, | |
11559 | and GNU make manuals to be proper texinfo links. | |
11560 | * gnat_rm.texi: Fix cross references to the GNAT User's Guide. | |
11561 | ||
f4351641 OH |
11562 | 2008-03-21 Olivier Hainque <hainque@adacore.com> |
11563 | ||
11564 | * trans.c (Attribute_to_gnu) <'length>: Compute as (hb < lb) | |
11565 | ? 0 : hb - lb + 1 instead of max (hb - lb + 1, 0). | |
11566 | ||
10c5d1a0 EB |
11567 | 2008-03-21 Eric Botcazou <ebotcazou@adacore.com> |
11568 | ||
11569 | * trans.c (addressable_p): Add notes on addressability issues. | |
11570 | ||
457b629a | 11571 | 2008-03-21 Olivier Hainque <hainque@adacore.com> |
9e81dbc7 | 11572 | Ed Schonberg <schonberg@adacore.com> |
457b629a OH |
11573 | |
11574 | * trans.c (addressable_p): Accept COND_EXPR when both arms | |
11575 | are addressable. | |
11576 | (gnat_gimplify_expr): Let the gimplifier handle &COND_EXPR. | |
11577 | (call_to_gnu): Do not use name reference in the error message | |
11578 | for a misaligned by_reference_parameter. The actual may be a | |
11579 | general expression. | |
11580 | ||
ac5dc795 PB |
11581 | 2008-03-18 Paolo Bonzini <bonzini@gnu.org> |
11582 | ||
e1da2b17 EB |
11583 | * misc.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Delete. |
11584 | ||
79f34d07 RW |
11585 | 2008-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11586 | ||
11587 | * gnat_rm.texi (Implementation Defined Characteristics) | |
11588 | (Wide_Text_IO, Wide_Wide_Text_IO): Add @var annotations where | |
11589 | appropriate. | |
11590 | * gnat_ugn.texi (Wide Character Encodings, Switches for gnatbind) | |
11591 | (Switches for gnatchop, Installing a library): Likewise. | |
11592 | ||
e1e7141c EB |
11593 | 2008-03-10 Eric Botcazou <ebotcazou@adacore.com> |
11594 | ||
11595 | * trans.c (emit_range_check): Do not emit the check if the base type | |
11596 | of the expression is the type against which its range must be checked. | |
11597 | ||
892f6e65 EB |
11598 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11599 | ||
11600 | * decl.c (maybe_pad_type): Use value_factor_p. | |
11601 | ||
7934d781 EB |
11602 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11603 | ||
11604 | * lang.opt (nostdlib): Move around. | |
11605 | * misc.c (gnat_handle_option): Fix formatting. | |
11606 | (gnat_dwarf_name): Move around. | |
11607 | * trans.c (Case_Statement_to_gnu): Fix formatting. | |
11608 | (gnat_to_gnu): Likewise. | |
11609 | * utils.c (aggregate_type_contains_array_p): Likewise. | |
11610 | (create_subprog_decl): Likewise. | |
11611 | ||
8f5893ab EB |
11612 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11613 | ||
11614 | * decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Do not | |
11615 | bother propagating the TYPE_USER_ALIGN flag when creating a JM type. | |
11616 | ||
ba436c3b EB |
11617 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11618 | ||
11619 | * decl.c (gnat_to_gnu_entity) <E_Record_Type>: Do not force | |
11620 | BIGGEST_ALIGNMENT when capping the alignment of records with | |
11621 | strict alignment and size clause. | |
11622 | ||
6ab36dac EB |
11623 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11624 | ||
11625 | * lang-specs.h: Pass -gnatwa if -Wall is passed. | |
11626 | * misc.c (gnat_handle_option) <OPT_Wall>: Expand into -Wunused | |
11627 | and -Wuninitialized. | |
11628 | (gnat_post_options): Clear warn_unused_parameter. | |
11629 | ||
8853cb0b EB |
11630 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11631 | ||
11632 | * utils.c (finish_record_type): Clear DECL_BIT_FIELD on sufficiently | |
11633 | aligned bit-fields, bumping the alignment of the record type if deemed | |
11634 | profitable. | |
11635 | (value_factor_p): Return false instead of 0. | |
11636 | ||
66abe22c EB |
11637 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11638 | ||
11639 | * decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Add support | |
11640 | for scalar types with small alignment. | |
11641 | ||
563569be EB |
11642 | 2008-03-08 Eric Botcazou <ebotcazou@adacore.com> |
11643 | ||
11644 | * trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label | |
11645 | from that of the front-end's end label. | |
11646 | (gnat_gimplify_stmt) <LOOP_STMT>: Set the SLOC of the backward goto | |
11647 | from that of the loop label. | |
11648 | ||
b49a1a1e EB |
11649 | 2008-03-07 Eric Botcazou <ebotcazou@adacore.com> |
11650 | ||
11651 | * decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Add | |
11652 | comment for the packed array type case. | |
11653 | * utils.c (build_template): Use a loop to strip padding or | |
11654 | containing records for justified modular types. | |
11655 | ||
fd5c81e9 EB |
11656 | 2008-03-07 Eric Botcazou <ebotcazou@adacore.com> |
11657 | ||
11658 | * decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously | |
11659 | large alignments specified for types. | |
11660 | (validate_alignment): Minor cleanup. | |
11661 | ||
7f42aa36 EB |
11662 | 2008-03-07 Eric Botcazou <ebotcazou@adacore.com> |
11663 | ||
11664 | * decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined. | |
11665 | (gnat_to_gnu_entity) <E_Record_Type>: Try to get a smaller form of | |
11666 | the component for packing, if possible, as well as if a component | |
11667 | size clause is specified. | |
11668 | <E_Record_Subtype>: For an array type used to implement a packed | |
11669 | array, get the component type from the original array type. | |
11670 | Try to get a smaller form of the component for packing, if possible, | |
11671 | as well as if a component size clause is specified. | |
11672 | (round_up_to_align): New function. | |
11673 | (make_packable_type): Add in_record parameter. | |
11674 | For a padding record, preserve the size. If not in_record and the | |
11675 | size is too large for an integral mode, attempt to shrink the size | |
11676 | by lowering the alignment. | |
11677 | Ditch the padding bits of the last component. | |
11678 | Compute sizes and mode manually, and propagate the RM size. | |
11679 | Return a BLKmode record type if its size has shrunk. | |
11680 | (maybe_pad_type): Use MAX_FIXED_MODE_SIZE instead of BIGGEST_ALIGNMENT. | |
11681 | Use Original_Array_Type to retrieve the type in case of an error. | |
11682 | Adjust call to make_packable_type. | |
11683 | (gnat_to_gnu_field): Likewise. | |
11684 | (concat_id_with_name): Minor tweak. | |
11685 | * trans.c (larger_record_type_p): New predicate. | |
11686 | (call_to_gnu): Compute the nominal type of the object only if the | |
11687 | parameter is by-reference. Do the conversion actual type -> nominal | |
11688 | type if the nominal type is a larger record. | |
11689 | (gnat_to_gnu): Do not require integral modes on the source type to | |
11690 | avoid the conversion for types with identical names. | |
11691 | (addressable_p): Add gnu_type parameter. If it is specified, do not | |
11692 | return true if the expression is not addressable in gnu_type. | |
11693 | Adjust recursive calls. | |
11694 | * utils.c (finish_record_type): Remove dead code. | |
11695 | ||
2f76571e EB |
11696 | 2008-03-05 Eric Botcazou <ebotcazou@adacore.com> |
11697 | ||
11698 | PR ada/35186 | |
11699 | * decl.c (maybe_pad_type): Avoid padding an integral type when | |
11700 | bumping its alignment is sufficient. | |
11701 | ||
4d0e4612 RW |
11702 | 2008-03-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11703 | ||
ad6b5b00 RW |
11704 | * gnatfind.adb, gnatxref.adb: Fix argument parsing typos. |
11705 | * s-auxdec-empty.adb, s-auxdec.adb: Fix typos in copyright | |
11706 | statement. | |
11707 | * a-ngcoar.adb, a-ngrear.adb, g-awk.adb, g-debpoo.adb, | |
11708 | gprep.adb, make.adb, makegpr.adb, par-ch6.adb, prj-nmsc.adb, | |
11709 | sem_attr.adb, sem_ch4.adb, sem_ch8.adb: Fix typos in ada source | |
11710 | code output strings. | |
11711 | * sem_type.adb, system-vms-ia64.ads, system-vms.ads, | |
11712 | system-vms_64.ads: Fix typos in ada source code comments. | |
11713 | * sinfo-cn.adb: Remove incomplete sentence. | |
11714 | ||
4d0e4612 RW |
11715 | PR documentation/15479 |
11716 | * gnat_rm.texi, gnat_ugn.texi: Avoid standalone `non' word. | |
11717 | ||
acf6b7ab ST |
11718 | 2008-02-27 Samuel Tardieu <sam@rfc1149.net> |
11719 | ||
11720 | PR ada/22255 | |
11721 | * s-fileio.adb (Reset): Do not raise Use_Error if mode isn't changed. | |
11722 | ||
f5c064ab ST |
11723 | 2008-02-27 Samuel Tardieu <sam@rfc1149.net> |
11724 | ||
11725 | PR ada/34799 | |
11726 | * sem_ch13.adb (Analyze_Record_Representation_Clause): Check | |
11727 | that underlying type is present. | |
11728 | ||
2d593c86 TT |
11729 | 2008-02-26 Tom Tromey <tromey@redhat.com> |
11730 | ||
11731 | * misc.c (internal_error_function): Remove test of | |
11732 | USE_MAPPED_LOCATION. | |
11733 | * trans.c (gigi): Remove test of USE_MAPPED_LOCATION. | |
11734 | (Sloc_to_locus): Remove old location code. | |
11735 | ||
443b3472 RW |
11736 | 2008-02-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11737 | ||
8dd07840 RW |
11738 | * gnat_rm.texi, gnat_ugn.texi: Fix spacing after `e.g.' and |
11739 | `i.e.' by adding comma or `@:' as appropriate. | |
11740 | * gnat_rm.texi (Pragma Wide_Character_Encoding): Instead of | |
11741 | plain characters `C', use `@samp{C}'. | |
11742 | * gnat_ugn.texi (File Naming Rules, About gnatkr) | |
11743 | (Krunching Method): Likewise. | |
11744 | ||
443b3472 RW |
11745 | * gnat_ugn.texi (Conventions): List environment variables and |
11746 | metasyntactic variables. | |
11747 | (Compiling Programs): Fix notation of metasyntactic variables. | |
11748 | Add @file where appropriate. Use @file for file extensions, | |
11749 | @samp for strings. | |
11750 | * gnat_rm.texi, gnat_ugn.texi: Where appropriate, use @samp | |
11751 | instead of @file, @env instead of @code. | |
11752 | ||
9538dfb9 RW |
11753 | 2008-02-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11754 | ||
d488f6ea RW |
11755 | PR documentation/15479 |
11756 | * gnat_rm.texi, gnat_ugn.texi: Where appropriate, replace `..' | |
11757 | and `...' with `@dots{}' or `@enddots{}'. | |
11758 | ||
1992bbd9 RW |
11759 | PR documentation/15479 |
11760 | * gnat_rm.texi, gnat_ugn.texi: Where appropriate, add @command, | |
11761 | use @command instead of @code, @option instead of @samp or @code, | |
11762 | @code instead of @var, @samp instead of @file. | |
11763 | ||
9538dfb9 RW |
11764 | PR documentation/15479 |
11765 | * gnat_ugn.texi (Using gnatmake in a Makefile): Do not ignore errors | |
11766 | in Makefile rules, by using `&&' rather than `;'. | |
11767 | ||
e69044cb RW |
11768 | 2008-02-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> |
11769 | ||
11770 | PR documentation/15479 | |
11771 | * gnat_ugn.texi: In non-code, avoid space before colon. | |
11772 | (Regular Expressions in gnatfind and gnatxref): Fix indentation. | |
11773 | (Examples of gnatxref Usage): Use @command{vi} instead of | |
11774 | @file{vi}. | |
11775 | (Character Set Control): Do not use @code for UTF-8. | |
11776 | (Validity Checking): Fix typo "NaNs" instead of "NaN's". Do not | |
11777 | use @code for IEEE. | |
11778 | * gnat_rm.texi (Aggregates with static bounds): Fix typo in code | |
11779 | sample. | |
11780 | * gnat_rm.texi, gnat_ugn.texi: Fix typos. Bump copyright years. | |
11781 | ||
9e94c78f | 11782 | 2008-02-11 Joel Sherrill <joel.sherrill@oarcorp.com> |
6a333ca0 JS |
11783 | |
11784 | PR ada/35143 | |
11785 | * env.c: Add __rtems__ to if defined. | |
11786 | * s-osinte-rtems.adb: Add To_Target_Priority. Fix formatting. | |
11787 | * s-osinte-rtems.ads: Add To_Target_Priority prototype and | |
11788 | PTHREAD_SCOPE_PROCESS/PTHREAD_SCOPE_SYSTEM constants. Add | |
11789 | pragma Convention as required. | |
11790 | * gsocket.h: Make compile in and out of RTS. | |
11791 | * Makefile.in: Add system-rtems.ads. Build DEC extensions. | |
11792 | Use g-soccon-rtems.ads. | |
11793 | * g-soccon-rtems.ads, system-rtems.ads: New files. | |
11794 | ||
72fb133f KG |
11795 | 2008-02-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
11796 | ||
11797 | PR other/35107 | |
11798 | * Make-lang.in (gnat1): Add $(GMPLIBS). | |
11799 | ||
8fa07a56 EB |
11800 | 2008-01-26 Eric Botcazou <ebotcazou@adacore.com> |
11801 | ||
11802 | * decl.c (components_to_record): Improve comment. | |
11803 | ||
0bf38239 EB |
11804 | 2008-01-22 Eric Botcazou <ebotcazou@adacore.com> |
11805 | ||
11806 | * decl.c (components_to_record): Do not reuse the empty union type | |
11807 | if there is a representation clause on the record. | |
11808 | * trans.c (addressable_p): Return true for INTEGER_CST. | |
11809 | ||
461d6eb3 EB |
11810 | 2008-01-21 Eric Botcazou <ebotcazou@adacore.com> |
11811 | ||
11812 | * trans.c (gnat_to_gnu) <N_Free_Statement>: Use POINTER_PLUS_EXPR | |
11813 | in pointer arithmetics. | |
11814 | * utils2.c (build_allocator): Likewise. | |
11815 | ||
9328dd57 EB |
11816 | 2008-01-17 Eric Botcazou <ebotcazou@adacore.com> |
11817 | ||
11818 | * utils.c (build_function_stub): Properly build the call expression. | |
11819 | ||
052cec9b EB |
11820 | 2008-01-14 Eric Botcazou <ebotcazou@adacore.com> |
11821 | ||
11822 | * decl.c (gnat_to_gnu_entity) <object>: Process renamings | |
11823 | before converting the expression to the type of the object. | |
11824 | * trans.c (maybe_stabilize_reference) <CONSTRUCTOR>: New case. | |
11825 | Stabilize constructors for special wrapping types. | |
11826 | ||
08ffbdad EB |
11827 | 2008-01-13 Eric Botcazou <ebotcazou@adacore.com> |
11828 | ||
9e94c78f | 11829 | * trans.c (call_to_gnu): Invoke the addressable_p predicate only |
6bf4cbe8 | 11830 | when necessary. Merge some conditional statements. Update comments. |
08ffbdad EB |
11831 | Rename unchecked_convert_p local variable to suppress_type_conversion. |
11832 | Do not suppress conversions in the In case. | |
11833 | (addressable_p) <VIEW_CONVERT_EXPR>: Do not take alignment issues | |
11834 | into account on non strict-alignment platforms. | |
11835 | ||
7219c2c7 EB |
11836 | 2008-01-12 Eric Botcazou <ebotcazou@adacore.com> |
11837 | ||
11838 | * utils.c (aggregate_type_contains_array_p): New predicate. | |
11839 | (create_field_decl): In a packed record, force byte alignment | |
11840 | for fields without specified position that contain an array. | |
11841 | ||
52ef2874 EB |
11842 | 2008-01-12 Eric Botcazou <ebotcazou@adacore.com> |
11843 | ||
11844 | * utils.c (unchecked_convert): Fold the VIEW_CONVERT_EXPR expression. | |
11845 | ||
3fa87ef8 JDA |
11846 | 2008-01-10 John David Anglin <dave.anglin.@nrc-cnrc.gc.ca> |
11847 | ||
11848 | PR ada/34466 | |
11849 | * s-osinte-linux-hppa.ads (SC_NPROCESSORS_ONLN): New constant for | |
11850 | sysconf call. | |
11851 | (bit_field): New packed boolean type used by cpu_set_t. | |
11852 | (cpu_set_t): New type corresponding to the C type with | |
11853 | the same name. Note that on the Ada side we use a bit | |
11854 | field array for the affinity mask. There is not need | |
11855 | for the C macro for setting individual bit. | |
11856 | (pthread_setaffinity_np): New imported routine. | |
11857 | ||
9e94c78f | 11858 | 2008-01-03 Tero Koskinen <tero.koskinen@iki.fi> |
e0658eda TK |
11859 | |
11860 | PR ada/34647 | |
11861 | * adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp() | |
11862 | on OpenBSD as is done on other BSD systems. | |
11863 | ||
11864 | PR ada/34645 | |
11865 | * sysdep.c (__gnat_ttyname, getc_immediate_nowait, | |
11866 | getc_immediate_common): Treat OpenBSD as FreeBSD regarding immediate | |
11867 | I/O. | |
11868 | ||
11869 | PR ada/34644 | |
11870 | * env.c (__gnat_clearenv): Treat OpenBSD as other BSD systems missing | |
11871 | clearenv(). | |
11872 | ||
11873 | PR ada/34646 | |
11874 | * init.c (__gnat_error_handler, __gnat_install_handler, | |
11875 | __gnat_init_float): Define for OpenBSD. | |
11876 | ||
11877 | * initialize.c (__gnat_initialize): Define for OpenBSD. | |
11878 | ||
18bc9cca ST |
11879 | 2007-12-27 Samuel Tardieu <sam@rfc1149.net> |
11880 | ||
11881 | PR ada/34553 | |
11882 | * adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp() | |
11883 | instead of mktemp() or tmpnam() on NetBSD. | |
11884 | ||
f0bf503e EB |
11885 | 2007-12-23 Eric Botcazou <ebotcazou@adacore.com> |
11886 | ||
11887 | * trans.c (call_to_gnu): Make the temporary for non-addressable | |
11888 | In parameters passed by reference. | |
11889 | (addressable_p): Return true for STRING_CST and CALL_EXPR. | |
11890 | ||
7469b7bc AC |
11891 | 2007-12-19 Robert Dewar <dewar@adacore.com> |
11892 | ||
9e81dbc7 | 11893 | * g-expect-vms.adb, g-expect.adb, s-poosiz.adb: |
7469b7bc AC |
11894 | Add pragma Warnings (Off) for unassigned IN OUT arguments |
11895 | ||
11896 | * sem_warn.adb (Output_Reference): Suppress messages for internal names | |
11897 | (Check_References): Extensive changes to tune up warnings | |
11898 | (Output_Non_Modifed_In_Out_Warnings): Changes to tune up warnings | |
11899 | (Has_Pragma_Unmodifed_Check_Spec): New function | |
11900 | (Check_References): Implement pragma Unmodified | |
11901 | (Warn_On_Unassigned_Out_Parameter): Implement pragma Unmodified | |
11902 | ||
11903 | * par-prag.adb: Dummy entry for pragma Unmodified | |
11904 | ||
11905 | * sem_prag.adb: Implement pragma Unmodified | |
11906 | ||
11907 | * einfo.ads, einfo.adb: (Has_Pragma_Unmodified): New flag | |
11908 | (Proc_Next_Component_Or_Discriminant): Fix typo. | |
11909 | Update comments. | |
11910 | ||
11911 | * sem_util.adb (Note_Possible_Modification): Add processinng for pragma | |
11912 | Unmodified. | |
11913 | (Reset_Analyzed_Flags): Use Traverse_Proc instead of Traverse_Func, | |
11914 | because the former already takes care of discarding the result. | |
11915 | (Mark_Coextensions): Remove ununused initial value from Is_Dynamic. | |
11916 | Add comment. | |
11917 | ||
11918 | * snames.h, snames.ads, snames.adb: Add entry for pragma Unmodified | |
11919 | ||
11920 | 2007-12-19 Eric Botcazou <ebotcazou@adacore.com> | |
11921 | ||
11922 | * targparm.adb, targparm.ads, system.ads, system-darwin-ppc.ads, | |
11923 | system-vxworks-x86.ads, system-linux-ppc.ads, system-linux-hppa.ads, | |
11924 | system-hpux-ia64.ads, system-vxworks-arm.ads, system-darwin-x86.ads, | |
11925 | system-vms_64.ads, system-vms-ia64.ads, system-linux-ia64.ads, | |
11926 | system-freebsd-x86.ads, system-linux-x86_64.ads, system-tru64.ads, | |
11927 | system-aix.ads, system-vxworks-sparcv9.ads, system-solaris-x86.ads, | |
11928 | system-irix-o32.ads, system-irix-n32.ads, system-hpux.ads, | |
11929 | system-vxworks-m68k.ads, system-linux-x86.ads, system-vxworks-mips.ads, | |
11930 | system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads, | |
11931 | system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads | |
11932 | (Dynamic_Trampolines_Used): Delete. | |
11933 | ||
11934 | * system-lynxos-x86.ads, system-lynxos-ppc.ads: Ditto. | |
11935 | Turn on stack probing mechanism on LynxOS. | |
11936 | ||
11937 | 2007-12-19 Bob Duff <duff@adacore.com> | |
11938 | ||
11939 | * atree.ads, atree.adb (Traverse_Func): Walk Field2 last, and eliminate | |
11940 | the resulting tail recursion by hand. This prevents running out of | |
11941 | memory on deeply nested concatenations, since Field2 is where the left | |
11942 | operand of concatenations is stored. | |
11943 | Fix bug (was returning OK_Orig in some cases). Fix return subtype to | |
11944 | clarify that it can only return OK or Abandon. | |
11945 | ||
11946 | * sem_res.adb (Resolve_Op_Concat): Replace the recursion on the left | |
11947 | operand by iteration, in order to avoid running out of memory on | |
11948 | deeply-nested concatenations. Use the Parent pointer to get back up the | |
11949 | tree. | |
11950 | (Resolve_Op_Concat_Arg, Resolve_Op_Concat_First, | |
11951 | Resolve_Op_Concat_Rest): New procedures split out of | |
11952 | Resolve_Op_Concat, so the iterative algorithm in Resolve_Op_Concat is | |
11953 | clearer. | |
11954 | ||
11955 | * checks.adb (Remove_Checks): Use Traverse_Proc instead of | |
11956 | Traverse_Func, because the former already takes care of discarding the | |
11957 | result. | |
11958 | ||
11959 | * errout.adb (First_Node): Use Traverse_Proc instead of Traverse_Func, | |
11960 | because the former already takes care of discarding the result. | |
11961 | (Remove_Warning_Messages): Use appropriate subtype for Status and | |
9e81dbc7 | 11962 | Discard |
7469b7bc AC |
11963 | |
11964 | 2007-12-19 Ed Schonberg <schonberg@adacore.com> | |
11965 | ||
11966 | * exp_aggr.adb (Not_OK_For_Backend): A component of a private type with | |
11967 | discriminants forces expansion of the aggregate into assignments. | |
11968 | (Init_Record_Controller): If the type of the aggregate is untagged and | |
11969 | is not inherently limited, the record controller is not limited either. | |
11970 | ||
11971 | 2007-12-19 Robert Dewar <dewar@adacore.com> | |
11972 | ||
11973 | * exp_attr.adb (Expand_N_Attribute_Reference, case Size): Fix error in | |
11974 | handling compile time known size of record or array (case of front end | |
11975 | layout active, e.g. in GNAAMP). | |
11976 | ||
11977 | 2007-12-19 Javier Miranda <miranda@adacore.com> | |
11978 | ||
11979 | * exp_ch3.adb (Expand_N_Object_Declaration): Complete the circuitry | |
11980 | that forces the construction of static dispatch tables in case of | |
11981 | record subtypes. | |
11982 | ||
11983 | 2007-12-19 Robert Dewar <dewar@adacore.com> | |
11984 | ||
11985 | * exp_ch9.adb (Null_Statements): Moved to library level | |
11986 | (Trivial_Accept_OK): New function | |
11987 | (Expand_Accept_Declaration): Use Trivial_Accept_OK | |
11988 | (Expand_N_Accept_Statement): Use Trivial_Accept_OK | |
11989 | ||
11990 | 2007-12-19 Robert Dewar <dewar@adacore.com> | |
11991 | ||
11992 | * exp_pakd.adb (Expand_Bit_Packed_Element_Set): Fix packed array type | |
11993 | in complex case where array is Volatile. | |
11994 | ||
11995 | 2007-12-19 Ed Schonberg <schonberg@adacore.com> | |
11996 | ||
11997 | * freeze.adb (Freeze_Record_Type, Check_Current_Instance): Implement | |
11998 | properly the Ada2005 rules concerning when the current instance of a | |
11999 | record type is aliased. | |
12000 | ||
12001 | 2007-12-19 Ed Schonberg <schonberg@adacore.com> | |
12002 | ||
12003 | * par-ch3.adb (P_Record_Declaration): Guard against cascaded errors in | |
12004 | mangled declaration | |
12005 | (P_Type_Declaration): Diagnose misuse of "abstract" in untagged record | |
12006 | declarations. | |
12007 | (P_Variant_Part): Cleaner patch for parenthesized discriminant | |
12008 | ||
12009 | 2007-12-19 Vincent Celier <celier@adacore.com> | |
12010 | ||
12011 | * prj-attr.adb (Package_Node_Id_Of): Returns Unknown_Package when | |
12012 | package is not known | |
12013 | ||
12014 | * prj-attr.ads (Unknown_Package): New constant | |
12015 | Do not crash when an unknown package is in several projects | |
12016 | ||
12017 | * prj-dect.adb (Parse_Package_Declaration): Mark an unknown package as | |
12018 | ignored | |
12019 | ||
12020 | * prj-nmsc.adb (Check): Remove obsolete code related to no longer | |
12021 | existing package Language_Processing. | |
12022 | ||
12023 | 2007-12-19 Ed Schonberg <schonberg@adacore.com> | |
12024 | Gary Dismukes <dismukes@adacore.com> | |
44914a04 | 12025 | Samuel Tardieu <sam@rfc1149.net> |
7469b7bc AC |
12026 | |
12027 | PR ada/15803, ada/15805 | |
12028 | * sem_ch6.adb, sem_ch3.adb (Constrain_Access): In Ada2005, diagnose | |
12029 | illegal access subtypes when there is a constrained partial view. | |
12030 | (Check_For_Premature_Usage): New procedure inside | |
12031 | Access_Subprogram_Declaration for checking that an access-to-subprogram | |
12032 | type doesn't reference its own name within any formal parameters or | |
12033 | result type (including within nested anonymous access types). | |
12034 | (Access_Subprogram_Declaration): Add call to Check_For_Premature_Usage. | |
12035 | (Sem_Ch3.Analyze_Object_Declaration, Sem_ch6.Process_Formals): if the | |
12036 | context is an access_to_variable, the expression cannot be an | |
12037 | access_to_constant. | |
12038 | ||
12039 | 2007-12-19 Bob Duff <duff@adacore.com> | |
12040 | ||
12041 | * sem_ch4.adb (Analyze_Concatenation_Rest): New procedure. | |
12042 | (Analyze_Concatenation): Use iteration instead of recursion in order | |
12043 | to avoid running out of stack space for deeply nested concatenations. | |
12044 | ||
12045 | 2007-12-19 Ed Schonberg <schonberg@adacore.com> | |
12046 | Gary Dismukes <dismukes@adacore.com> | |
12047 | ||
12048 | * sem_ch8.adb (Analyze_Subprogram_Renaming): Diagnose illegal renamings | |
12049 | whose renamed entity is a subprogram that requires overriding. | |
12050 | (Premature_Usage): Test for the case of N_Full_Type_Declaration when | |
12051 | issuing an error for premature usage and issue a message that says | |
12052 | 'type' rather than 'object'. | |
12053 | ||
12054 | 2007-12-19 Gary Dismukes <dismukes@adacore.com> | |
12055 | ||
12056 | PR ada/34149 | |
12057 | * sem_disp.adb (Check_Dispatching_Call): Augment existing test for | |
12058 | presence of a statically tagged operand (Present (Static_Tag)) with | |
12059 | test for Indeterm_Ancestor_Call when determining whether to propagate | |
12060 | the static tag to tag-indeterminate operands (which forces dispatching | |
12061 | on such calls). | |
12062 | (Check_Controlling_Formals): Ada2005, access parameters can have | |
12063 | defaults. | |
12064 | (Add_Dispatching_Operation, Check_Operation_From_Private_View): do | |
12065 | not insert subprogram in list of primitive operations if already there. | |
12066 | ||
12067 | 2007-12-19 Tristan Gingold <gingold@adacore.com> | |
12068 | ||
12069 | * utils.c (create_var_decl_1): call rest_of_decl_compilation only for | |
12070 | global variable. | |
12071 | ||
12072 | 2007-12-19 Thomas Quinot <quinot@adacore.com> | |
12073 | ||
12074 | Part of PR ada/33688 | |
12075 | * gen-soccon.c: Add constant IP_PKTINFO to allow getting ancillary | |
12076 | datagram info on Linux. | |
12077 | ||
12078 | 2007-12-19 Vincent Celier <celier@adacore.com> | |
12079 | ||
12080 | * makegpr.adb (Check_Compilation_Needed): Normalize C_Source_Path so | |
12081 | that the source path name is always found in the dependencies. | |
12082 | ||
12083 | 2007-12-19 Robert Dewar <dewar@adacore.com> | |
12084 | ||
12085 | * gnat_rm.texi, gnat_ugn.texi: Update documentation of -gnatw.o | |
12086 | Fix name of Wide_Wide_Latin_1/9 file names | |
12087 | Add documentation for Ada.Exceptions.Last_Chance_Handler (a-elchha.ads) | |
12088 | Add missing documentation for Ada.Wide_[Wide_]Characters.Unicode | |
12089 | Add missing documentation for Ada.Command_Line.Response_File | |
12090 | Update list of warning letters for Warnings pragma | |
12091 | Add documentation for pragma Unmodified | |
12092 | ||
43779dea ST |
12093 | 2007-12-19 Samuel Tardieu <sam@rfc1149.net> |
12094 | ||
12095 | * Makefile.in: Add s-tasinf.ad[bs] substitutions for sh4-linux target. | |
12096 | ||
5287c2bc AC |
12097 | 2007-12-17 Arnaud Charlet <charlet@adacore.com> |
12098 | ||
12099 | * s-vxwork-alpha.ads: Removed, no longer used. | |
12100 | ||
6343804d JJ |
12101 | 2007-12-15 Jakub Jelinek <jakub@redhat.com> |
12102 | ||
12103 | * Make-lang.in (gnat1, gnatbind): Pass ALL_CFLAGS on the link line. | |
12104 | ||
3958c9c8 ST |
12105 | 2007-12-13 Samuel Tardieu <sam@rfc1149.net> |
12106 | ||
12107 | PR ada/34360 | |
12108 | * Makefile.in: Change two occurrences of mlib-tgt.adb by correct name | |
12109 | mlib-tgt-specific.adb. | |
12110 | ||
78185974 BD |
12111 | 2007-12-13 Bob Duff <duff@adacore.com> |
12112 | ||
12113 | * trans.c (Attribute_to_gnu): Check for violations of the | |
12114 | No_Implicit_Dynamic_Code restriction. This checking used to be done in | |
12115 | the front end, but is moved here so we can make it more accurate. | |
12116 | ||
e9b54d64 AC |
12117 | 2007-12-13 Pascal Obry <obry@adacore.com> |
12118 | ||
12119 | * adaint.c (__gnat_pthread_setaffinity_np): New routine. A dummy | |
12120 | version is provided for older GNU/Linux distribution not | |
12121 | supporting thread affinity sets. | |
9e81dbc7 | 12122 | |
e9b54d64 AC |
12123 | * s-osinte-linux.ads (SC_NPROCESSORS_ONLN): New constant for sysconf |
12124 | call. | |
12125 | (bit_field): New packed boolean type used by cpu_set_t. | |
12126 | (cpu_set_t): New type corresponding to the C type with | |
12127 | the same name. Note that on the Ada side we use a bit | |
12128 | field array for the affinity mask. There is not need | |
12129 | for the C macro for setting individual bit. | |
12130 | (pthread_setaffinity_np): New imported routine. | |
9e81dbc7 | 12131 | |
e9b54d64 AC |
12132 | * s-taprop-linux.adb (Enter_Task): Check that the CPU affinity mask is |
12133 | no null. | |
12134 | (Create_Task): Set the processor affinity mask if information | |
12135 | is present. | |
9e81dbc7 | 12136 | |
e9b54d64 | 12137 | * s-tasinf-linux.ads, s-tasinf-linux.adb: New files. |
9e81dbc7 | 12138 | |
e9b54d64 AC |
12139 | 2007-12-13 Robert Dewar <dewar@adacore.com> |
12140 | ||
9e81dbc7 AS |
12141 | * s-osinte-lynxos-3.ads, s-osinte-hpux.ads, s-osinte-solaris-posix.ads, |
12142 | s-osinte-freebsd.ads, s-osinte-lynxos.ads, s-osinte-tru64.ads, | |
12143 | s-osinte-mingw.ads, s-osinte-aix.ads, s-osinte-hpux-dce.ads, | |
e9b54d64 AC |
12144 | s-osinte-irix.ads, s-osinte-solaris.ads, s-intman-vms.adb, |
12145 | s-osinte-vms.ads, s-osinte-vxworks6.ads, s-osinte-vxworks.ads, | |
9e81dbc7 AS |
12146 | s-auxdec.ads, s-auxdec-vms_64.ads, s-osinte-darwin.ads, |
12147 | s-taprop-vms.adb, s-interr-sigaction.adb, s-osinte-linux-hppa.ads, | |
e9b54d64 AC |
12148 | i-vxwork-x86.ads, s-tpopde-vms.ads: Add missing pragma Convention C |
12149 | for subprogram pointers. | |
12150 | ||
12151 | * g-ctrl_c.adb: New file. | |
12152 | ||
12153 | * g-ctrl_c.ads (Install_Handler): New body. | |
12154 | ||
12155 | * freeze.adb (Freeze_Subprogram): Use new flag Has_Pragma_Inline_Always | |
12156 | instead of obsolete function Is_Always_Inlined. | |
12157 | (Freeze_Entity): check for tagged type in imported C subprogram | |
12158 | (Freeze_Entity): check for 8-bit boolean in imported C subprogram | |
12159 | (Freeze_Entity): check for convention Ada subprogram pointer in | |
12160 | imported C subprogram. | |
12161 | (Freeze_Fixed_Point_Type): In the case of a base type where the low | |
12162 | bound would be chopped off and go from negative to zero, force | |
12163 | Loval_Excl_EP to be the same as Loval_Incl_EP (the included lower | |
12164 | bound) so that the size computation for the base type will take | |
12165 | negative values into account. | |
12166 | ||
12167 | 2007-12-13 Eric Botcazou <ebotcazou@adacore.com> | |
12168 | Bob Duff <duff@adacore.com> | |
12169 | Tristan Gingold <gingold@adacore.com> | |
12170 | ||
9e81dbc7 AS |
12171 | * system-linux-ia64.ads, system-freebsd-x86.ads, system-lynxos-ppc.ads, |
12172 | system-lynxos-x86.ads, system-linux-x86_64.ads, system-tru64.ads, | |
12173 | system-aix.ads, system-vxworks-sparcv9.ads, system-solaris-x86.ads, | |
12174 | system-irix-o32.ads, system-irix-n32.ads, system-hpux.ads, | |
12175 | system-vxworks-m68k.ads, system-linux-x86.ads, system-vxworks-mips.ads, | |
12176 | system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads, | |
12177 | system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads, | |
e9b54d64 | 12178 | system-vxworks-arm.ads, system-darwin-x86.ads, system.ads, |
9e81dbc7 | 12179 | system-vms_64.ads, system-darwin-ppc.ads, system-vxworks-x86.ads, |
e9b54d64 AC |
12180 | system-linux-ppc.ads, system-linux-hppa.ads, system-hpux-ia64.ads, |
12181 | system-vms-ia64.ads (Stack_Check_Limits): New target parameter. | |
12182 | (Always_Compatible_Rep): New flag to control trampolines globally. | |
12183 | (Dynamic_Trampolines_Used): New flag for implementing the | |
12184 | No_Implicit_Dynamic_Code restriction more correctly (not yet used, | |
12185 | and not yet set correctly for some targets). | |
12186 | ||
12187 | * s-taprop-vxworks.adb: Use stack limit method of stack checking. | |
12188 | Simply indirectly call s-stchop when a task is created. | |
12189 | ||
9e81dbc7 | 12190 | * ali.ads: |
e9b54d64 AC |
12191 | New flag added: Stack_Check_Switch_Set which is set when '-fstack-check' |
12192 | appears as an argument (entries A) in an ALI file. | |
12193 | ||
12194 | * fe.h (Stack_Check_Limits): Declare new target parameter. | |
12195 | (Check_Implicit_Dynamic_Code_Allowed): New procedure. | |
12196 | ||
12197 | * init.c: Declare __gnat_set_stack_limit_hook for VxWorks kernel RTS. | |
12198 | This variable is declared in C to be sure not subject to elaboration | |
12199 | code. | |
12200 | (__gnat_map_signal, VxWorks): In kernel mode, map SIGILL to | |
12201 | Storage_Error. | |
12202 | ||
12203 | * targparm.ads, targparm.adb (Stack_Check_Limits): New parameter. | |
12204 | (Always_Compatible_Rep, Dynamic_Trampolines_Used): New parameters. | |
12205 | ||
12206 | * s-stchop.ads: Add comments. | |
12207 | ||
12208 | * s-stchop-vxworks.adb: Package almost fully rewritten to use stack | |
12209 | limit method of stack checking. | |
12210 | ||
12211 | * s-stchop-limit.ads: New file. | |
12212 | ||
12213 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12214 | ||
9e81dbc7 AS |
12215 | * sem_ch5.adb, s-taskin.adb, a-ciorma.adb, a-coorma.adb, a-cohama.adb, |
12216 | a-cihama.adb, g-awk.adb, | |
e9b54d64 AC |
12217 | s-inmaop-posix.adb: Update handling of assigned value/unreferenced |
12218 | warnings | |
12219 | ||
12220 | * exp_smem.adb: Update handling of assigned value/unreferenced warnings | |
12221 | ||
12222 | * sem.adb: Update handling of assigned value/unreferenced warnings | |
12223 | ||
12224 | * a-exexpr-gcc.adb: Add a pragma warnings off for boolean return | |
12225 | ||
12226 | * lib-xref.ads: Improve documentation for k xref type | |
12227 | ||
9e81dbc7 | 12228 | * lib-xref.adb: |
e9b54d64 AC |
12229 | Update handling of assigned value/unreferenced warnings |
12230 | (Generate_Reference): Warning for reference to entity for which a | |
12231 | pragma Unreferenced has been given should be unconditional. | |
12232 | If the entity is a discriminal, mark the original | |
12233 | discriminant as referenced. | |
12234 | ||
12235 | * sem_warn.ads, sem_warn.adb | |
12236 | (Check_One_Unit): Test Renamed_In_Spec to control giving warning for | |
12237 | no entities referenced in package | |
12238 | (Check_One_Unit): Don't give message about no entities referenced in | |
12239 | a package if a pragma Unreferenced has appeared. | |
12240 | Handle new warning flag -gnatw.a/-gnatw.A | |
12241 | Update handling of assigned value/unreferenced warnings | |
12242 | ||
12243 | * atree.h: Add flags up to Flag247 | |
12244 | (Flag231): New macro. | |
12245 | ||
12246 | 2007-12-13 Jose Ruiz <ruiz@adacore.com> | |
12247 | ||
12248 | * adaint.h: (__gnat_plist_init): Not defined for RTX. | |
12249 | ||
12250 | * initialize.c (__gnat_initialize): Do not call __gnat_plist_init for | |
12251 | RTX systems. | |
12252 | ||
12253 | * Makefile.in: Add new files s-tasinf-linux.ads and s-tasinf-linux.adb. | |
12254 | (LIBGNAT_TARGET_PAIRS, MISCLIB, THREADSLIB, | |
12255 | EXTRA_GNATRTL_NONTASKING_OBJS, EXTRA_GNATRTL_TASKING_OBJS, | |
12256 | GNATLIB_SHARED for RTX run time): Use the versions required by RTX. | |
12257 | ||
9e81dbc7 | 12258 | * mingw32.h: |
e9b54d64 AC |
12259 | Do not define GNAT_UNICODE_SUPPORT for RTX since it is not supported. |
12260 | ||
12261 | * sysdep.c (winflush_function for RTX): Procedure that does nothing | |
12262 | since we only have problems with Windows 95/98, which are not | |
12263 | supported by RTX. | |
12264 | (__gnat_ttyname): Return the empty string on Nucleus, just as | |
12265 | done on vxworks. | |
12266 | ||
12267 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12268 | ||
9e81dbc7 | 12269 | * a-textio.adb, a-textio.ads: |
e9b54d64 AC |
12270 | Extensive changes to private part for wide character encoding |
12271 | ||
12272 | * a-witeio.adb, a-witeio.ads, a-ztexio.ads, a-ztexio.adb | |
12273 | (Look_Ahead): Fix mishandling of encoded sequences | |
12274 | Move declaration of Wch_Con to private part (should not be visible) | |
12275 | ||
12276 | * ali.adb (Scan_ALI): Set default encoding method to brackets instead of | |
12277 | UTF-8. Probably this is never used, but if it is, brackets is | |
12278 | clearly correct. | |
12279 | ||
12280 | * bindgen.adb (Get_WC_Encoding): New procedure to properly handle | |
12281 | setting wide character encoding for no main program case and when | |
12282 | encoding is specified using -W? | |
12283 | Initialize stack limit of environment task if stack limit method of | |
12284 | stack checking is enabled. | |
12285 | (Gen_Adainit_Ada): Use Get_WC_Encoding to output encoding method | |
12286 | (Gen_Adainit_C): Use Get_WC_Encoding to output encoding method | |
12287 | (Get_Main_Unit_Name): New function. | |
12288 | (Gen_Adainit_Ada): Add call to main program for .NET when needed. | |
12289 | (Gen_Output_File): Set Bind_Main_Program to True for .NET | |
12290 | ||
12291 | * bindusg.adb: Add line for -Wx switch | |
12292 | ||
12293 | * s-wchcon.adb, s-wchcon.ads: (Is_Start_Of_Encoding): New function | |
12294 | Add comments | |
12295 | Add new useful constant WC_Longest_Sequences | |
12296 | ||
12297 | * switch-b.adb: Clean up handling of -Wx switch | |
12298 | For -gnatWx, set Wide_Character_Encoding_Method_Specified | |
12299 | ||
12300 | * switch-c.adb: -gnatg activates warning on assertion errors | |
12301 | For -gnatWx, set Wide_Character_Encoding_Method_Specified | |
12302 | ||
12303 | * s-wchcon.adb: (Is_Start_Of_Encoding): New function | |
12304 | ||
12305 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12306 | Ed Schonberg <schonberg@adacore.com> | |
12307 | ||
12308 | * a-ngcoty.adb: New pragma Fast_Math | |
12309 | ||
12310 | * opt.adb: New pragma Fast_Math | |
12311 | ||
9e81dbc7 | 12312 | * par-prag.adb: |
e9b54d64 AC |
12313 | Add Implemented_By_Entry to the list of pragmas which do not require any |
12314 | special processing. | |
12315 | (Favor_Top_Level): New pragma. | |
12316 | New pragma Fast_Math | |
12317 | ||
12318 | * exp_attr.adb: Move Wide_[Wide_]Image routines to Exp_Imgv | |
12319 | (Expand_N_Attribute_Reference, Displace_Allocator_Pointer, | |
12320 | Expand_Allocator_Expression): Take into account VM_Target | |
12321 | (Expand_Attribute, case 'Identity): Handle properly the case where | |
12322 | the prefix is a task interface. | |
12323 | New pragma Fast_Math | |
12324 | ||
12325 | * par.adb (Next_Token_Is): New function | |
12326 | (P_Pragma): Add Skipping parameter | |
12327 | (U_Left_Paren): New procedure | |
12328 | (U_Right_Paren): New procedure | |
12329 | New pragma Fast_Math | |
12330 | ||
12331 | * par-ch10.adb (P_Subunit): Unconditional msg for missing ) after | |
12332 | subunit | |
12333 | New pragma Fast_Math | |
12334 | ||
12335 | * sem_prag.adb: Add significance value to table Sig_Flag for pragma | |
12336 | Implemented_By_Entry. | |
12337 | (Analyze_Pragma): Add case for Ada 2005 pragma Implemented_By_Entry. | |
12338 | (Set_Inline_Flags): Do not try to link pragma Inline onto chain of rep | |
12339 | items, since it can apply to more than one overloadable entity. Set | |
12340 | new flag Has_Pragma_Inline_Always for Inline_Always case. | |
12341 | (Analyze_Pragma, case Complex_Representation): Improve error message. | |
12342 | (Analyze_Pragma, case Assert): When assertions are disabled build the | |
12343 | rewritten code with Sloc of expression rather than pragma, so new | |
12344 | warning about failing is not deleted. | |
12345 | (Analyze_Pragma): Allow pragma Preelaborable_Initialization to apply to | |
12346 | protected types and update error message to reflect that. Test whether | |
12347 | the protected type is allowed for the pragma (an error is issued if the | |
12348 | type has any entries, or components that do not have preelaborable | |
12349 | initialization). | |
12350 | New pragma Fast_Math | |
12351 | (Analyze_Pragma, case No_Return): Handle generic instance | |
12352 | ||
9e81dbc7 | 12353 | * snames.h, snames.ads, snames.adb: |
e9b54d64 AC |
12354 | Add new predefined name for interface primitive _Disp_Requeue. |
12355 | New pragma Fast_Math | |
12356 | ||
12357 | * a-tags.ads, a-tags.adb: New calling sequence for | |
12358 | String_To_Wide_[Wide_]String | |
12359 | (Secondary_Tag): New subprogram. | |
12360 | ||
12361 | * exp_imgv.ads, exp_imgv.adb: Move Wide_[Wide_]Image routines here | |
12362 | from Exp_Attr | |
12363 | New calling sequence for String_To_Wide_[Wide_]String | |
12364 | (Expand_Image_Attribute): Major rewrite. New calling sequence avoids | |
12365 | the use of the secondary stack for image routines. | |
12366 | ||
12367 | * a-except-2005.adb, s-wchstw.ads, s-wchstw.adb, s-wwdenu.adb: New | |
12368 | calling sequence for String_To_Wide_[Wide_]String | |
12369 | ||
12370 | * par-ch3.adb (P_Declarative_Items): Recognize use of Overriding in | |
12371 | Ada 95 mode | |
12372 | (P_Unknown_Discriminant_Part_Opt): Handle missing parens gracefully | |
12373 | Remove Atree.Delete_Tree/Delete_Node and Nlist.Delete_List | |
12374 | ||
12375 | * par-ch6.adb (P_Subprogram): Recognize use of Overriding in Ada 95 mode | |
12376 | (P_Formal_Part): Use Skipping parameter in P_Pragma call | |
12377 | to improve error recovery | |
12378 | ||
12379 | * par-util.adb (Next_Token_Is): New function | |
12380 | (Signal_Bad_Attribute): Use new Namet.Is_Bad_Spelling_Of function | |
12381 | ||
12382 | * par-ch2.adb (Skip_Pragma_Semicolon): Do not resynchronize to | |
12383 | semicolon if missing | |
12384 | (P_Pragma): Implement new Skipping parameter | |
12385 | Remove Atree.Delete_Tree/Delete_Node and Nlist.Delete_List | |
12386 | Fix location of flag for unrecognized pragma message | |
12387 | ||
12388 | * par-tchk.adb (U_Left_Paren): New procedure | |
12389 | (U_Right_Paren): New procedure | |
12390 | ||
12391 | 2007-12-13 Geert Bosch <bosch@adacore.com> | |
12392 | ||
9e81dbc7 | 12393 | * a-tifiio.adb: |
e9b54d64 AC |
12394 | (Put_Int64): Use Put_Digit to advance Pos. This fixes a case where |
12395 | the second or later Scaled_Divide would omit leading zeroes, | |
12396 | resulting in too few digits produced and a Layout_Error as result. | |
12397 | (Put): Initialize Pos. | |
12398 | ||
12399 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12400 | ||
12401 | atree.ads, atree.adb (Flag231..Flag247): New functions | |
12402 | (Set_Flag231..Set_Flag247): New procedures | |
12403 | (Basic_Set_Convention): Rename Set_Convention to be | |
12404 | Basic_Set_Convention | |
12405 | (Nkind_In): New functions | |
12406 | Remove Atree.Delete_Tree/Delete_Node and Nlist.Delete_List | |
12407 | ||
12408 | * exp_ch6.adb (Expand_Call): Use new flag Has_Pragma_Inline_Always | |
12409 | instead | |
12410 | of obsolete function Is_Always_Inlined | |
12411 | (Register_Predefined_DT_Entry): Initialize slots of the second | |
12412 | secondary dispatch table. | |
12413 | Remove Atree.Delete_Tree/Delete_Node and Nlist.Delete_List | |
12414 | (Expand_N_Function_Call): Remove special provision for stack checking. | |
12415 | ||
12416 | * exp_util.ads, exp_util.adb (Is_Predefined_Dispatching_Operation): | |
12417 | Include _Disp_Requeue in the list of predefined operations. | |
12418 | (Find_Interface_ADT): Modified to fulfill the new specification. | |
12419 | Remove Atree.Delete_Tree/Delete_Node and Nlist.Delete_List | |
12420 | ||
9e81dbc7 | 12421 | * par-ch4.adb, nlists.ads, nlists.adb: |
e9b54d64 AC |
12422 | Remove Atree.Delete_Tree/Delete_Node and Nlist.Delete_List |
12423 | ||
12424 | * sinfo.ads, sinfo.adb: (Nkind_In): New functions | |
12425 | Fix location of flag for unrecognized pragma message | |
12426 | ||
12427 | * sem_ch7.adb: Use Nkind_In | |
12428 | ||
12429 | 2007-12-13 Vincent Celier <celier@adacore.com> | |
12430 | ||
9e81dbc7 | 12431 | * opt.ads: |
e9b54d64 AC |
12432 | Indicate what flags are used by the Project Manager, gprbuild and |
12433 | gprclean. | |
12434 | (Opt.Follow_Links_For_Dirs): New flag | |
12435 | (Warn_On_Assertion_Failure): New flag | |
12436 | (Wide_Character_Encoding_Method_Specified): New flag | |
12437 | (Suppress_All_Inlining): New switch set by -fno-inline | |
12438 | (Real_VMS_Target): New flag | |
12439 | New pragma Fast_Math | |
12440 | ||
12441 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12442 | ||
12443 | * back_end.adb: Recognize -fno-inline | |
12444 | ||
12445 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12446 | ||
12447 | * checks.adb: Fix optimization problem with short-circuited form | |
12448 | ||
12449 | 2007-12-13 Bob Duff <duff@adacore.com> | |
12450 | ||
12451 | * clean.adb (Usage): Add line for -aP | |
12452 | (Check_Version_And_Help): Change Check_Version_And_Help to be generic, | |
12453 | with a parameter "procedure Usage", instead of passing a pointer to a | |
12454 | procedure. This is to eliminate trampolines (since the Usage procedure | |
12455 | is often nested in a main procedure, and it would be inconvenient to | |
12456 | unnest it). | |
12457 | ||
12458 | * g-comlin.adb (For_Each_Simple_Switch): Change For_Each_Simple_Switch | |
12459 | to be generic, with a parameter "procedure Callback (...)", instead of | |
12460 | passing a pointer to a procedure. This is to eliminate trampolines | |
12461 | (since the Callback procedure is usually nested). | |
12462 | ||
9e81dbc7 | 12463 | * gnatfind.adb, switch.adb, switch.ads, gnatlink.adb, gnatls.adb, |
e9b54d64 AC |
12464 | gnatname.adb, gnatxref.adb, gnatchop.adb, gprep.adb, gnatbind.adb |
12465 | (Check_Version_And_Help): Change Check_Version_And_Help to be generic. | |
12466 | ||
12467 | * g-pehage.adb (Compute_Edges_And_Vertices, Build_Identical_Key_Sets): | |
12468 | Use the generic Heap_Sort_G instead of Heap_Sort_A. | |
12469 | ||
12470 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
12471 | ||
12472 | * einfo.ads, einfo.adb: Flag 232 is now Implemented_By_Entry. | |
12473 | (Implemented_By_Entry, Set_Implemented_By_Entry): New routines. | |
12474 | (Write_Entry_Flags): Add an entry for Implemented_By_Entry. | |
12475 | (Renamed_In_Spec): New flag | |
12476 | (Has_Pragma_Inline_Always): New flag | |
12477 | Add missing doc for pragma Obsolescent_Warning | |
12478 | Add missing doc for 17 additional unused flags (230-247) | |
12479 | (Is_Derived_Type): Remove condition "not Is_Generic_Type". | |
12480 | Alphabetize with clauses. | |
12481 | Separate Is_Thunk and Has_Thunks flags | |
12482 | (Write_Entity_Flags): Add forgotten entry for Has_Thunks | |
12483 | (Related_Interface): Renamed to Related_Type. | |
12484 | (Has_Thunks/Set_Has_Thunks): Subprograms of new attribute. | |
12485 | (Set_Is_Flag): Restrict the assertion. | |
12486 | ||
12487 | 2007-12-13 Vincent Celier <celier@adacore.com> | |
12488 | ||
12489 | * errout.adb (Output_Source_Line): Do not keep a trailing space after | |
12490 | the source line number if the source line is empty. | |
12491 | ||
12492 | 2007-12-13 Geert Bosch <bosch@adacore.com> | |
12493 | ||
12494 | * eval_fat.adb (Decompose_Int): Handle argument of zero. | |
12495 | (Compose): Remove special casing of zero. | |
12496 | (Exponent): Likewise. | |
12497 | (Fraction): Likewise. | |
12498 | (Machine): Likewise. | |
12499 | (Decompose): Update comment. | |
12500 | ||
12501 | 2007-12-13 Ed Schonberg <schonberg@adacore.com> | |
12502 | ||
12503 | * exp_aggr.adb (Build_Record_Aggr_Code): If there is an aggregate for a | |
12504 | limited ancestor part, initialize controllers of enclosing record | |
12505 | before expanding ancestor aggregate. | |
12506 | (Gen_Assign): If a component of the aggregate is box-initialized, add | |
12507 | code to call Initialize if the component is controlled, and explicit | |
12508 | assignment of null if the component is an access type. | |
12509 | ||
12510 | Handle properly aggregates for limited types that appear in object | |
12511 | declarations when the aggregate contains controlled values such as | |
12512 | protected types. | |
12513 | When expanding limited aggregates into individual components, do not | |
12514 | call Adjust on controlled components that are limited. | |
12515 | ||
12516 | 2007-12-13 Ed Schonberg <schonberg@adacore.com> | |
12517 | ||
12518 | * expander.adb: Take into account N_Subprogram_Renaming_Declaration | |
12519 | ||
12520 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
12521 | ||
12522 | * exp_ch3.adb (Predefined_Primitive_Bodies): Generate the body of | |
12523 | predefined primitive _Disp_Requeue. | |
12524 | (Make_Predefined_Primitive_Specs): Create the spec for predefined | |
12525 | primitive _Disp_Requeue. | |
12526 | (Make_Predefined_Primitive_Specs/Predefined_Primitive_Bodies): Set the | |
12527 | type of formal Renamed_Eq to Entity_Id (instead of Node_Id). | |
12528 | (Make_Predefined_Primitive_Specs): Spec of "=" needed if the parent is | |
12529 | an interface type. In case of limited interfaces we now declare all the | |
12530 | predefined primitives associated with synchronized interfaces as | |
12531 | abstract. | |
12532 | (Predef_Spec_Or_Body): For interface types generate abstract subprogram | |
12533 | declarations. | |
12534 | (Predefined_Primitive_Bodies): Add body of "=" if the parent of the | |
12535 | tagged type is an interface type and there is no user-defined equality | |
12536 | function. | |
12537 | Add also bodies of predefined primitives associated with synchronized | |
12538 | interfaces. | |
12539 | (Freeze_Record_Type): Do not build bodies of predefined primitives of | |
12540 | interface types because they are now defined abstract. | |
12541 | Add missing documentation. | |
12542 | (Expand_Record_Controller): Update occurrence of Related_Interface | |
12543 | to Related_Type. | |
12544 | (Build_Offset_To_Top_Functions): Do nothing in case of VM. | |
12545 | (Expand_N_Object_Declaration): Take into account VM_Target when handling | |
12546 | class wide interface object declaration. | |
12547 | (Expand_Previous_Access_Type): Do not create a duplicate master entity | |
12548 | if the access type already has one. | |
12549 | (Expand_N_Object_Declaration): Defend against attempt to validity check | |
12550 | generic types. Noticed for -gnatVcf specified with previous errors. | |
12551 | ||
12552 | 2007-12-13 Arnaud Charlet <charlet@adacore.com> | |
12553 | ||
12554 | * exp_ch4.adb (Expand_N_Attribute_Reference, Displace_Allocator_Pointer, | |
12555 | Expand_Allocator_Expression): Take into account VM_Target | |
12556 | ||
12557 | * exp_ch5.adb (Expand_N_Extended_Return_Statement): Do not use | |
12558 | secondary stack when VM_Target /= No_VM | |
12559 | ||
12560 | 2007-12-13 Javier Miranda <miranda@adacore.com> | |
12561 | Ed Schonberg <schonberg@adacore.com> | |
12562 | ||
12563 | * exp_ch7.adb (Expand_N_Package_Body): Replace occurrence of attribute | |
12564 | Is_Complation_Unit by Is_Library_Level_Entity in the code | |
12565 | that decides if the static dispatch tables need to be built. | |
12566 | (Wrap_Transient_Declaration): Do not generate a finalization call if | |
12567 | this is a renaming declaration and the renamed object is a component | |
12568 | of a controlled type. | |
12569 | ||
12570 | 2007-12-13 Gary Dismukes <dismukes@adacore.com> | |
12571 | ||
12572 | * exp_ch8.ads, exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): | |
12573 | In the case where the renamed subprogram is a dereference, call | |
12574 | Force_Evaluation on the prefix. | |
12575 | ||
12576 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
12577 | Ed Schonberg <schonberg@adacore.com> | |
12578 | ||
12579 | * exp_ch9.adb (Expand_N_Asynchronous_Select, | |
12580 | Expand_N_Conditional_Entry_Call, Expand_N_Timed_Entry_Call): Code and | |
12581 | comment reformatting. | |
12582 | (Set_Privals): Inherit aliased flag from formal. From code reading. | |
12583 | (Build_Simple_Entry_Call): Out parameters of an access type are passed | |
12584 | by copy and initialized from the actual. This includes entry parameters. | |
12585 | (Expand_N_Requeue_Statement): Reimplement in order to handle both Ada 95 | |
12586 | and Ada 2005 models of requeue. | |
12587 | (Null_Statements): Still connsider do-end block null if it contains | |
12588 | Unreferenced and Warnings pragmas. | |
12589 | (Expand_N_Accept_Statement): Do not optimize away null do end if | |
12590 | dispatching policy is other than defaulted. | |
12591 | (Expand_N_Timed_Entry_Call): When the triggering statement is a | |
12592 | dispatching call, manually analyze the delay statement. | |
12593 | (Find_Parameter_Type): Move subprogram to Sem_Util. | |
12594 | ||
12595 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
12596 | Javier Miranda <miranda@adacore.com> | |
12597 | ||
12598 | * exp_disp.ads, exp_disp.adb (Default_Prim_Op_Position): Primitive | |
12599 | _Disp_Requeue occupies dispatch table slot number 15. Move | |
12600 | _Disp_Timed_Select to slot 16. | |
12601 | (Make_Disp_Requeue_Body, Make_Disp_Requeue_Spec): New routines which | |
12602 | generate the spec and body of _Disp_Reqeueue. | |
12603 | (Make_DT): Build and initialize the second dispatch table. | |
12604 | Handle initialization of RC_Offset when the parent | |
12605 | is a private type with variable size components. | |
12606 | (Make_Secondary_DT): Complete documentation. Add support to | |
12607 | initialize the second dispatch table. | |
12608 | (Make_Tags): Generate the tag of the second dispatch table. | |
12609 | (Register_Primitive): Add support to register primitives in the | |
12610 | second dispatch table. | |
12611 | ||
12612 | 2007-12-13 Pascal Obry <obry@adacore.com> | |
12613 | ||
12614 | * expect.c (__gnat_kill) [WIN32]: Implement the SIGINT signal on | |
12615 | Windows. This signal is used by gnatmake to kill child processes for | |
12616 | example. | |
12617 | ||
12618 | 2007-12-13 Javier Miranda <miranda@adacore.com> | |
12619 | ||
12620 | * exp_intr.adb (Expand_Dispatching_Constructor_Call): Add missing | |
12621 | support for generic dispatching constructor calls in which we need to | |
12622 | locate the tag of a secondary dispatch table associated with an | |
12623 | interface type to properly dispatch the call. | |
12624 | (Expand_N_Attribute_Reference [case Address], | |
12625 | Expand_Dispatching_Constructor_Call, Expand_Unc_Deallocation): Fix | |
12626 | handling of VM targets. | |
12627 | ||
12628 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12629 | Ed Schonberg <schonberg@adacore.com> | |
12630 | ||
12631 | * exp_prag.adb (Expand_Pragma_Assert): Recognize new warning flag for | |
12632 | assert fail | |
12633 | ||
12634 | * ug_words: Add entries for -gnatw.a -gnatw.A | |
12635 | ||
12636 | * sem_res.adb (Set_String_Literal_Subtype): If the context of the | |
12637 | literal is a subtype with non-static constraints, use the base type of | |
12638 | the context as the base of the string subtype, to prevent type | |
12639 | mismatches in gigi. | |
12640 | (Resolve_Actuals): If the actual is an entity name, generate a | |
12641 | reference before the actual is resolved and expanded, to prevent | |
12642 | spurious warnings on formals of enclosing protected operations. | |
12643 | (Analyze_Overloaded_Selected_Component): If type of prefix if | |
12644 | class-wide, use visible components of base type. | |
12645 | (Resolve_Selected_Component): Ditto. | |
12646 | (Resolve_Short_Circuit): Detect case of pragma Assert argument | |
12647 | evaluating to False, and issue warning message. | |
12648 | ||
12649 | * usage.adb: Add lines for -gnatw.a and -gnatw.A | |
12650 | ||
12651 | 2007-12-13 Emmanuel Briot <briot@adacore.com> | |
12652 | ||
12653 | * g-calend.ads (No_Time): New constant, to represent an uninitialized | |
12654 | time value | |
12655 | ||
12656 | * g-catiio.ads, g-catiio.adb (Value): Added support for more date | |
12657 | formats. | |
12658 | (Month_Name_To_Number): New subprogram | |
12659 | ||
12660 | * g-dirope.adb (Get_Current_Dir): On windows, normalize the drive | |
12661 | letter to upper-case. | |
12662 | ||
12663 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12664 | Ed Schonberg <schonberg@adacore.com> | |
12665 | ||
12666 | * gnat1drv.adb (Gnat1drv): Properly set new flag Opt.Real_VMS_Target | |
12667 | ||
12668 | * layout.adb (Resolve_Attribute, case 'Access): If designated type of | |
12669 | context is a limited view, use non-limited view when available. If the | |
12670 | non-limited view is an unconstrained array, this enforces consistency | |
12671 | requirements in 3.10.2 (27). | |
12672 | (Layout_Type): For an access type whose designated type is a limited | |
12673 | view, examine its declaration to determine if it is an unconstrained | |
12674 | array, and size the access type accordingly. | |
12675 | (Layout_Type): Do not force 32-bits for convention c subprogram | |
12676 | pointers in -gnatdm mode, only if real vms target. | |
12677 | ||
12678 | * sem_attr.adb (Analyze_Access_Attribute): Use new flag | |
12679 | Has_Pragma_Inline_Always instead of obsolete function Is_Always_Inlined | |
12680 | (Analyze_Access_Attribute,Attribute_Address): Remove checks for | |
12681 | violations of the No_Implicit_Dynamic_Code restriction. | |
12682 | (Resolve_Attribute, case 'Access): If designated type of context is a | |
12683 | limited view, use non-limited view when available. If the non-limited | |
12684 | view is an unconstrained array, this enforces consistency requirements | |
12685 | in 3.10.2 (27). | |
12686 | (Layout_Type): For an access type whose designated type is a limited | |
12687 | view, examine its declaration to determine if it is an unconstrained | |
12688 | array, and size the access type accordingly. | |
12689 | ||
12690 | 2007-12-13 Vincent Celier <celier@adacore.com> | |
12691 | ||
12692 | * gnatcmd.adb (GNATCmd): Do not issue -d= switch to gnatmetric when | |
12693 | object directory of main project does not exist. | |
12694 | On VMS, correctly set then environment variable for the source | |
12695 | directories. | |
12696 | ||
12697 | 2007-12-13 Vasiliy Fofanov <fofanov@adacore.com> | |
12698 | ||
12699 | * g-regist.ads, g-regist.adb (Set_Value): new parameter Expand; when | |
12700 | set to True this procedure will create the value of type REG_EXPAND_SZ. | |
12701 | It was only possible to create REG_SZ values before. | |
12702 | ||
12703 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12704 | ||
12705 | * g-spchge.ads, g-spchge.adb, g-u3spch.adb, g-u3spch.ads, | |
12706 | g-wispch.adb, g-wispch.ads, g-zspche.adb, g-zspche.ads, | |
12707 | namet-sp.adb, namet-sp.ads: New files. | |
12708 | ||
12709 | * g-speche.adb: Use generic routine in g-spchge | |
12710 | ||
9e81dbc7 | 12711 | * s-wchcnv.ads, s-wchcnv.adb: |
e9b54d64 AC |
12712 | Minor code cleanup (make formal type consistent with spec) |
12713 | ||
12714 | * namet.adb: Update comments. | |
12715 | ||
12716 | * par-endh.adb (Evaluate_End_Entry): Use new | |
12717 | Namet.Sp.Is_Bad_Spelling_Of function | |
12718 | ||
12719 | * par-load.adb (Load): Use new Namet.Sp.Is_Bad_Spelling_Of function | |
12720 | ||
12721 | * sem_aggr.adb (Resolve_Record_Aggregate): If a component of an | |
12722 | ancestor is an access type initialized with a box, set its type | |
12723 | explicitly, for use in subsequent expansion. | |
12724 | (Check_Misspelled_Component): Use new Namet.Sp.Is_Bad_Spelling_Of | |
12725 | function | |
12726 | ||
12727 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12728 | ||
12729 | * g-spipat.adb (Break): Fix accessibility error (vsn taking not null | |
12730 | access Vstring) | |
12731 | ||
12732 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12733 | ||
12734 | * inline.adb (Back_End_Cannot_Inline): Use new flag | |
12735 | Has_Pragma_Inline_Always instead of obsolete function Is_Always_Inlined | |
12736 | ||
12737 | * sem_ch6.ads, sem_ch6.adb (Analyze_Subprogram_Body): Use new flag | |
12738 | Has_Pragma_Inline_Always instead. | |
12739 | of obsolete function Is_Always_Inlined | |
12740 | (Build_Body_To_Inline): Same change | |
12741 | (Cannot_Inline): Same change | |
12742 | Do not give warning on exception raise in No_Return function | |
12743 | ||
12744 | * sem_ch13.adb (Analyze_Record_Representation_Clause): If an inherited | |
12745 | component has two inconsistent component clauses in the same record | |
12746 | representation clause, favor the message that complains about | |
12747 | duplication rather than inconsistency. | |
12748 | Update comments. | |
12749 | (Record_Representation_Clause): Do not warn on missing component | |
12750 | clauses for inherited components of a type extension. | |
12751 | (Rep_Item_Too_Late): Do not attempt to link pragma into rep chain for | |
12752 | an overloadable item if it is a pragma that can apply to multiple | |
12753 | overloadable entities (e.g. Inline) because a pragma cannot be on | |
12754 | more than one chain at a time. | |
12755 | (Validate_Unchecked_Conversion): Add code to warn on unchecked | |
12756 | conversion where one of the operands is Ada.Calendar.Time. | |
12757 | (Analyze_Attribute_Definition_Clause): Fix typo in error message. | |
12758 | For now, ignore Component_Size clause on VM targets, as done for | |
12759 | pragma Pack. | |
12760 | ||
12761 | 2007-12-13 Emmanuel Briot <briot@adacore.com> | |
12762 | Vincent Celier <celier@adacore.com> | |
12763 | ||
12764 | * prj.ads, prj.adb (Is_A_Language): Now takes a Name_Id instead of a | |
12765 | string | |
12766 | (Must_Check_Configuration, Default_Language_Is_Ada): new flags in | |
12767 | prj.ads | |
12768 | (Hash): Move instantiation of System.HTable.Hash from spec to body | |
12769 | (prj-nmsc.adb): Optimize calls to Name_Find when on case sensitive | |
12770 | systems, since we do not need to recompute the Name_Id for the canonical | |
12771 | file name. | |
12772 | (Body_Suffix_Id_Of, Spec_Suffix_Id_Of): new version that takes a name_id | |
12773 | as a parameter. This parameter is in fact always "ada" in all calls, and | |
12774 | we were doing 160560 extra calls to Name_Find to convert it to Name_Ada | |
12775 | while loading a project with 40000 files | |
12776 | ||
12777 | * prj-attr.adb: Fix name of attribute Dependency_Driver | |
12778 | Change the kind of indexing for attribute Root | |
12779 | ||
12780 | * prj-dect.adb (Parse_Declarative_Items): Allow redeclarations of | |
12781 | variables already declared, in case constructions. | |
12782 | ||
12783 | * prj-env.adb (Initialize): Reset Current_Source_Path_File and | |
12784 | Current_Object_Path_File to No_Path. | |
12785 | ||
12786 | * prj-ext.adb (Initialize_Project_Path): In multi language mode, use | |
12787 | ADA_PROJECT_PATH if value of GPR_PROJECT_PATH is empty. | |
12788 | ||
12789 | * prj-makr.adb: new parameter Current_Dir | |
12790 | ||
12791 | * prj-nmsc.ads, prj-nmsc.adb (Find_Explicit_Sources): Do not look for | |
12792 | Ada sources when language is not Ada. | |
12793 | Change Opt.Follow_Links to Opt.Follow_Links_For_Files. | |
12794 | (Find_Excluded_Sources, Find_Explicit_Sources): new subprograms | |
12795 | (Must_Check_Configuration, Default_Language_Is_Ada): new flags. | |
12796 | (Locate_Directory): Always resolve links when computing Canonical_Path | |
12797 | (Look_For_Sources): Make sure that Name_Buffer contains the file name | |
12798 | in Source_Files before checking for the presence of a directory | |
12799 | separator. | |
12800 | Optimize calls to Name_Find when on case sensitive systems. | |
12801 | (Body_Suffix_Id_Of, Spec_Suffix_Id_Of): new version that takes a name_id | |
12802 | as a parameter. | |
12803 | (Prj.Nmsc.Check): new parameter Current_Dir | |
12804 | (Check_Ada_Naming_Schemes): Restrictions on suffixes are relaxed. They | |
12805 | cannot be empty and the spec suffix cannot be the same as the body or | |
12806 | separate suffix. | |
12807 | (Get_Unit): When a file name can be of several unit kinds (spec, body or | |
12808 | subunit), always consider the longest suffix. | |
12809 | (Check_Configuration): Do not issue an error if there is no compiler | |
12810 | for a language. Just issue a warning and ignore the sources for the | |
12811 | language. | |
12812 | (Check_Library_Attributes): Only check Library_Dir if Library_Name is | |
12813 | not empty. | |
12814 | (Check_Naming_Schemes.Maked_Unit): Only output message if high verbosity | |
12815 | (Unit_Exceptions): New hash table | |
12816 | (Check_Naming_Schemes): Check if a file that could be a unit because of | |
12817 | the naming scheme is not in fact a source because there is an exception | |
12818 | for the unit. | |
12819 | (Look_For_Sources): Put the unit exceptions in hash table | |
12820 | Unit_Exceptions | |
12821 | (Get_Unit_Exceptions): Give initial value No_Source to local variable | |
12822 | Other_Part to avoid exception when code is compiled with validity | |
12823 | checking. | |
12824 | (Get_Sources_From_File): Check that there is no directory information | |
12825 | in the file names. | |
12826 | (Look_For_Sources): Check that there is no directory information in the | |
12827 | list of file names in Source_Files. | |
12828 | (Look_For_Sources): In multi-language mode, do not allow exception file | |
12829 | names that are excluded. | |
12830 | (Excluded_Sources_Htable): New hash table | |
12831 | (Search_Directories.Check_File): New procedure to simplify | |
12832 | Search_Directories. | |
12833 | (Search_Directories): Do not consider excluded sources | |
12834 | (Look_For_Sources): Populate Excluded_Sources_Htable before calling | |
12835 | Search_Directories. | |
12836 | (Get_Exceptions): Set component Lang_Kind of Source_Data | |
12837 | (Get_Unit_Exceptions): Ditto | |
12838 | (Search_Directories): Ditto | |
12839 | ||
12840 | * prj-pars.adb: new parameter Current_Dir | |
12841 | ||
9e81dbc7 | 12842 | * prj-part.ads, prj-part.adb: |
e9b54d64 AC |
12843 | Change Opt.Follow_Links to Opt.Follow_Links_For_Files. |
12844 | (Opt.Follow_Links_For_Dirs): New flag | |
12845 | (Project_Path_Name_Of): Cache information returned by this routine as | |
12846 | Locate_Regular_File is a costly routine. The code to output a log | |
12847 | information and the effective call to Locate_Regular_File is now | |
12848 | factorized into a routine (code clean-up). | |
12849 | (Parse, Parse_Single_Project): new parameter Current_Dir | |
12850 | When main project file cannot be found, indicate in the error | |
12851 | message the project path that was used to do the search. | |
12852 | ||
12853 | * prj-proc.ads, prj-proc.adb (Opt.Follow_Links_For_Dirs): New flag | |
12854 | (Prj.Proc.Process*): new parameter Current_Dir | |
12855 | ||
12856 | * switch-m.adb: Change Opt.Follow_Links to Opt.Follow_Links_For_Files | |
12857 | ||
12858 | 2007-12-13 Bob Duff <duff@adacore.com> | |
12859 | ||
12860 | * restrict.ads, restrict.adb (Check_Implicit_Dynamic_Code_Allowed): New | |
12861 | procedure to be called from the back end to check the | |
12862 | No_Implicit_Dynamic_Code restriction. | |
12863 | ||
12864 | 2007-12-13 Arnaud Charlet <charlet@adacore.com> | |
12865 | ||
12866 | * rtsfind.adb (Check_CRT): Take into account RTE_Available_Call | |
12867 | Fixes another case where RTE_Available_Call was ignored instead of being | |
12868 | taken into account. | |
12869 | (Load_Fail): Ditto. | |
12870 | ||
12871 | * rtsfind.ads: Add new entries. | |
12872 | ||
12873 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12874 | ||
12875 | * g-byorma.adb, g-byorma.ads, g-decstr.adb, g-decstr.ads, | |
12876 | g-deutst.ads, g-encstr.adb, g-encstr.ads, g-enutst.ads: New files. | |
12877 | ||
12878 | * scn.adb: Implement BOM recognition | |
12879 | ||
12880 | 2007-12-13 Thomas Quinot <quinot@adacore.com> | |
12881 | Ed Schonberg <schonberg@adacore.com> | |
12882 | ||
12883 | * sem_ch10.adb (Check_Private_Child_Unit): A non-private library level | |
12884 | subprogram body that acts as its own spec may not have a non-private | |
12885 | WITH clause on a private sibling. | |
12886 | (Build_Unit_Name): If the parent unit in the name in a with_clause on a | |
12887 | child unit is a renaming, create an implicit with_clause on that | |
12888 | parent, and not on the unit it renames, to prevent visibility errors | |
12889 | in the current unit. | |
12890 | ||
12891 | 2007-12-13 Ed Schonberg <schonberg@adacore.com> | |
12892 | ||
12893 | * sem_ch12.adb (Instantiate_Formal_Subprogram): In the subprogram | |
12894 | renaming declaration, use the Slocs of the formal parameters from the | |
12895 | declaration of the formal subprogram when creating the formal parameter | |
12896 | entities in the renaming declaration. | |
12897 | (Analyze_Formal_Type_Declaration): Change the placement of the error | |
12898 | message concerning illegal known discriminants. It is now posted on the | |
12899 | type rather than on the first discriminant. This change ensures early | |
12900 | error report. | |
12901 | (Freeze_Subprogram_Body): If the generic subprogram is nested within | |
12902 | the package body that contains the instance, do not generate an | |
12903 | out-of-place freeze node for the enclosing package. | |
12904 | (Collect_Previous_Instantiations): Ignore internal instantiations | |
12905 | generated for formal packages. | |
12906 | (Validate_Derived_Type_Instance): Add a check that when a formal | |
12907 | derived type is Known_To_Have_Preelab_Init then the actual type must | |
12908 | have preelaborable initialization, and issue an error when this | |
12909 | condition is violated. | |
12910 | ||
12911 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12912 | ||
12913 | * s-imenne.adb, s-imenne.ads: New files. | |
12914 | ||
9e81dbc7 AS |
12915 | * s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads, s-imgdec.adb, |
12916 | s-imgdec.ads, s-imgenu.ads, s-imgint.adb, s-imgint.ads, s-imglld.adb, | |
12917 | s-imglld.ads, s-imglli.adb, s-imglli.ads, s-imgllu.adb, s-imgllu.ads, | |
12918 | s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads, s-imgwch.adb, | |
e9b54d64 AC |
12919 | s-imgwch.ads: New calling sequence for Image routines to avoid sec |
12920 | stack usage. | |
12921 | ||
12922 | 2007-12-13 Javier Miranda <miranda@adacore.com> | |
12923 | Ed Schonberg <schonberg@adacore.com> | |
12924 | ||
12925 | * sem_ch3.ads, sem_ch3.adb (Check_Abstract_Overriding): Avoid | |
12926 | generation of spurious error if parent is an interface type; caused | |
12927 | because predefined primitive bodies will be generated later by | |
12928 | Freeze_Record_Type. | |
12929 | (Process_Subtype): The subtype inherits the Known_To_Have_Preelab_Init | |
12930 | flag. | |
12931 | (Derive_Subprograms): Handle derivations of predefined primitives | |
12932 | after all the user-defined primitives to ensure that they are | |
12933 | found in proper order in instantiations. | |
12934 | (Add_Interface_Tag_Components, Inherit_Components): Update occurrences | |
12935 | of Related_Interface to Related_Type. | |
12936 | (Record_Type_Declaration): Minor reordering of calls to decorate the | |
12937 | Tag component because the entity must have set its Ekind attribute | |
12938 | before setting its Is_Tag attribute. | |
12939 | (Analyze_Subtype_Declaration): In the case of subtypes with | |
12940 | Private_Kind, inherit Known_To_Have_Preelab_Init from the parent. | |
12941 | ||
12942 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
12943 | Ed Schonberg <schonberg@adacore.com> | |
12944 | ||
12945 | * sem_ch4.adb (Analyze_Selected_Component): Include the requeue | |
12946 | statement to the list of contexts where a selected component with a | |
12947 | concurrent tagged type prefix should yield a primitive operation. | |
12948 | (Find_Primitive_Operation): Handle case of class-wide types. | |
12949 | (Analyze_Overloaded_Selected_Component): If type of prefix is | |
12950 | class-wide, use visible components of base type. | |
12951 | (Resolve_Selected_Component): Ditto. | |
12952 | (Try_Primitive_Operation, Collect_Generic_Type_Ops): If the type is a | |
12953 | formal of a generic subprogram. find candidate interpretations by | |
12954 | scanning the list of generic formal declarations.: | |
12955 | (Process_Implicit_Dereference_Prefix): If the prefix has an incomplete | |
12956 | type from a limited_with_clause, and the full view is available, use it | |
12957 | for subsequent semantic checks. | |
12958 | (Check_Misspelled_Selector): Use Namet.Sp.Is_Bad_Spelling_Of function | |
12959 | (Find_Primitive_Operation): New function. | |
12960 | (Analyze_Overloaded_Selected_Component): insert explicit dereference | |
12961 | only once if several interpretations of the prefix yield an access type. | |
12962 | (Try_Object_Operation): Code and comment cleanup. | |
12963 | (Analyze_Selected_Component): Reorder local variables. Minot comment and | |
12964 | code reformatting. When the type of the prefix is tagged concurrent, a | |
12965 | correct interpretation might be available in the primitive and | |
12966 | class-wide operations of the type. | |
12967 | ||
12968 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
12969 | Ed Schonberg <schonberg@adacore.com> | |
12970 | ||
12971 | * sem_ch8.adb (Analyze_Subprogram_Renaming): Special error message for | |
12972 | renaming entry as subprogram using rename-as-body if subprogram spec | |
12973 | frozen. | |
12974 | (Use_One_Type): The clause is legal on an access type whose designated | |
12975 | type has a limited view. | |
12976 | (Find_Direct_Name): Use Namet.Sp.Is_Bad_Spelling_Of function | |
12977 | (Find_Expanded_Name): Use Namet.Sp.Is_Bad_Spelling_Of function | |
12978 | (Analyze_Renamed_Primitive_Operation): new procedure to determine the | |
12979 | operation denoted by a selected component. | |
12980 | (Analyze_Renamed_Entry): Resolve the prefix of the entry name, because | |
12981 | it can be an expression, possibly overloaded, that returns a task or | |
12982 | an access to one. | |
12983 | ||
12984 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
12985 | Gary Dismukes <dismukes@adacore.com> | |
12986 | ||
12987 | * sem_ch9.adb (Analyze_Requeue): Add a local flag to capture whether a | |
12988 | requeue statement is dispatching. Do not emit an error when the name is | |
12989 | not an entry and the context is a dispatching select. Add code to | |
12990 | perform subtype conformance between the formals of the current entry | |
12991 | and those of the target interface primitive. | |
12992 | (Analyze_Asynchronous_Select, Analyze_Conditional_Entry_Call, Analyze_ | |
12993 | Timed_Entry_Call): Analyze the triggering statement as the first step of | |
12994 | the processing. If this is a dispatching select, postpone the analysis | |
12995 | of all select statements until the Expander transforms the select. This | |
12996 | approach avoids generating duplicate identifiers after the Expander has | |
12997 | replicated some of the select statements. In case the Expander is | |
12998 | disabled, perform regular analysis. | |
12999 | (Check_Triggering_Statement): New routine. | |
13000 | (Analyze_Requeue): Exclude any interpretations that are not entries when | |
13001 | checking overloaded names in a requeue. Also test type conformance for | |
13002 | matching interpretations rather than requiring subtype conformance at | |
13003 | that point to conform with the RM's resolution rule for requeues. | |
13004 | ||
13005 | 2007-12-13 Ed Schonberg <schonberg@adacore.com> | |
13006 | ||
13007 | * sem_disp.adb (Check_Dispatching_Call): If an actual in a call to an | |
13008 | inherited operation is a defaulted tag-indeterminate call, and there is | |
13009 | a statically tagged actual, use the static tag as a controlling actual | |
13010 | for the defaulted actual. | |
13011 | ||
13012 | 2007-12-13 Geert Bosch <bosch@adacore.com> | |
13013 | ||
13014 | * sem_eval.adb (Eval_Real_Literal): N_Constant_Declaration is a static | |
13015 | context, so do not call Check_Non_Static_Context. | |
13016 | ||
13017 | 2007-12-13 Hristian Kirtchev <kirtchev@adacore.com> | |
13018 | ||
13019 | * sem_type.adb (Function_Interp_Has_Abstract_Op): Add guard to check | |
13020 | whether formal E is an entity which may have parameters. | |
13021 | ||
13022 | 2007-12-13 Bob Duff <duff@adacore.com> | |
13023 | Javier Miranda <miranda@adacore.com> | |
13024 | Robert Dewar <dewar@adacore.com> | |
13025 | ||
13026 | * sem_util.ads, sem_util.adb (Is_Concurrent_Interface): New routine. | |
13027 | (Set_Convention): New procedure to set the Convention flag, and in | |
13028 | addition make sure the Favor_Top_Level flag is kept in sync (all | |
13029 | foreign-language conventions require Favor_Top_Level = True). | |
13030 | (Collect_Abstract_Interfaces): Update occurrences of Related_Interface | |
13031 | to Related_Type. | |
13032 | (Collect_Interfaces_Info): Minor update to handle the two secondary | |
13033 | dispatch tables. Update occurrence of Related_Interface to Related_Type. | |
13034 | (Generate_Parent_Ref): Add parameter to specify entity to check | |
13035 | (Is_Preelaborable_Expression): Allow the name of a discriminant to | |
13036 | initialize a component of a type with preelaborable initialization. | |
13037 | This includes the case of a discriminal used in such a context. | |
13038 | (Is_Dependent_Component_Of_Mutable_Object): Take into account the | |
13039 | latest Ada 2005 rules about renaming and 'Access of | |
13040 | discriminant-dependent components. | |
13041 | (Check_Nested_Access): Add handling when there are no enclosing | |
13042 | subprograms (e.g. case of a package body). | |
13043 | (Find_Parameter_Type): Factor routine from several other compiler files. | |
13044 | Remove routine from Find_Overridden_Synchronized_Primitive. | |
13045 | ||
13046 | 2007-12-13 Thomas Quinot <quinot@adacore.com> | |
13047 | ||
13048 | * sinput.adb (Get_Source_File_Index): Add assertion to guard against | |
13049 | an invalid access to an uninitialized slot in the | |
13050 | Source_File_Index_Table. | |
13051 | ||
13052 | 2007-12-13 Thomas Quinot <quinot@adacore.com> | |
13053 | ||
13054 | * sinput-l.adb (Load_File): Disable style checks when preprocessing. | |
13055 | ||
13056 | 2007-12-13 Bob Duff <duff@adacore.com> | |
13057 | ||
13058 | * s-soflin.ads: Apply new pragma Favor_Top_Level to all | |
13059 | access-to-subprogram types in this package. | |
13060 | ||
13061 | 2007-12-13 Olivier Hainque <hainque@adacore.com> | |
13062 | ||
13063 | * s-stausa.ads (Stack_Analyzer): Remove First_Is_Topmost, redundant | |
13064 | with Stack_Grows_Down in System.Parameters. Rename Array_Address into | |
13065 | Stack_Overlay_Address and document that we are using an internal | |
13066 | abstraction. | |
13067 | (Byte_Size, Unsigned_32_Size): Remove, now useless. | |
13068 | (Pattern_Type, Bytes_Per_Pattern): New subtype and constant, to be used | |
13069 | consistently throughout the various implementation pieces. | |
13070 | ||
13071 | * s-stausa.adb (Stack_Slots): New type, abstraction for the stack | |
13072 | overlay we are using to fill the stack area with patterns. | |
13073 | (Top_Slot_Index_In, Bottom_Slot_Index_In): Operations on Stack_Slots. | |
13074 | (Push_Index_Step_For, Pop_Index_Step_For): Likewise. | |
13075 | (Fill_Stack, Compute_Result): Use the Stack_Slots abstraction. | |
13076 | ||
13077 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13078 | ||
13079 | * s-stoele.adb ("mod"): mod negative value raises Constraint_Error | |
13080 | ||
13081 | 2007-12-13 Arnaud Charlet <charlet@adacore.com> | |
13082 | ||
9e81dbc7 | 13083 | * s-tassta.adb: |
e9b54d64 AC |
13084 | (Create_Task): Take into account tasks created by foreign threads. |
13085 | Code clean up: use constants instead of hard coded values. | |
13086 | ||
13087 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13088 | ||
13089 | * styleg.adb (Check_Comment): More liberal rules for comment placement | |
13090 | ||
13091 | 2007-12-13 Olivier Hainque <hainque@adacore.com> | |
13092 | ||
13093 | * tb-alvms.c (struct tb_entry_t, __gnat_backtrace): Revert back to use | |
13094 | of Procedure Value instead of Frame Pointer as the invocation | |
13095 | identifier associated with the instruction pointer in each traceback | |
13096 | entry. | |
13097 | ||
13098 | * g-trasym-vms-alpha.adb (Traceback_Entry, PV_For, FP_For, | |
13099 | TB_Entry_For): Revert back to use of Procedure Value instead of Frame | |
13100 | Pointer as the invocation identifier passed to tbk$symbolize. | |
13101 | ||
13102 | * s-traent-vms.ads, s-traent-vms.adb | |
13103 | (Traceback_Entry, PV_For, FP_For, TB_Entry_For): Revert back to use of | |
13104 | Procedure Value instead of Frame Pointer as the invocation identifier | |
13105 | passed to tbk$symbolize. | |
13106 | ||
13107 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13108 | ||
9e81dbc7 | 13109 | * tbuild.ads, tbuild.adb: |
e9b54d64 AC |
13110 | Fix location of flag for unrecognized pragma message |
13111 | ||
13112 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13113 | ||
13114 | * treepr.ads, treepr.adb: (pl): implement use of positive value | |
13115 | shorthands | |
13116 | ||
13117 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13118 | ||
13119 | * xeinfo.adb: Remove warnings | |
13120 | * xnmake.adb: Remove warnings | |
13121 | * xsinfo.adb: Remove warnings | |
13122 | * xtreeprs.adb: Remove warnings | |
13123 | * xsnames.adb: Remove warnings | |
13124 | ||
13125 | * a-ngcoar.adb: Fix typo. | |
13126 | * s-interr.adb: Minor reformatting | |
13127 | * env.c: Minor reformatting. | |
13128 | * g-bytswa.adb: Minor reformatting. | |
13129 | * g-rannum.ads: Minor documentation improvements | |
13130 | * s-tasinf-mingw.adb: Minor header fix | |
13131 | * a-clrefi.adb: Minor reformatting | |
13132 | * g-sttsne.ads: Minor documentation improvement | |
13133 | * g-sttsne-locking.ads: Minor documentation improvement | |
13134 | * g-soliop-solaris.ads: Minor documentation improvement | |
13135 | * g-soliop-mingw.ads: Minor documentation improvement | |
13136 | * g-soliop.ads: Minor documentation improvement | |
13137 | * exp_aggr.ads: Minor reformatting | |
13138 | * debug.adb: Add documentation for the gprbuild debug flags | |
13139 | * exp_ch2.adb: Use Nkind_In to simplify code throughout | |
13140 | * exp_pakd.adb: Minor reformatting | |
13141 | ||
13142 | * g-altive.ads, g-alleve.adb: Remove assertions. | |
13143 | Add comment about minor differences between targets regarding | |
13144 | floating-point operations. | |
13145 | ||
13146 | * g-thread.adb: Remove pragma unreferenced. | |
13147 | * lib.ads: Minor reformatting | |
13148 | * par-ch9.adb: Minor reformatting of error messages | |
13149 | * sem_case.adb: Minor reformatting | |
13150 | * s-fileio.adb: Minor reformattinng | |
13151 | * s-vmexta.ads: Minor typo | |
9e81dbc7 | 13152 | * vxaddr2line.adb: |
e9b54d64 AC |
13153 | Take into account 'Success' value as per new GNAT warning. |
13154 | ||
13155 | 2007-12-13 Vincent Celier <celier@adacore.com> | |
13156 | ||
13157 | * a-direct.adb (Create_Path): Always take '/' as a directory separator, | |
13158 | even on Windows | |
13159 | ||
13160 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13161 | Bob Duff <duff@adacore.com> | |
13162 | ||
13163 | * gnat_ugn.texi: Dcoument new rules for style check comment alignment | |
13164 | Document that suffixes may be terminations of each others | |
13165 | Add doc for -gnatw.a and -gnatw.A | |
13166 | Document gnatbind -Wx switch | |
13167 | Document BOM recognition | |
13168 | Document pragma Implemented_By_Entry. | |
13169 | Document new units. | |
13170 | ||
13171 | * gnat_rm.texi: (Favor_Top_Level): Document new pragma. | |
13172 | Add doc for pragma Unreferenced suppressing no entities referenced msg | |
13173 | Add documentation of GNAT.Directory_Operations.Iteration | |
13174 | Add documentation of GNAT.Random_Numbers | |
13175 | Add documentation for pragma Shared. | |
13176 | Correct documentation for Bit_Order | |
13177 | Add documentation for the Pool_Address attribute. | |
13178 | Fix and improve documentation of pragma machine_attribute. | |
13179 | New pragma Fast_Math | |
13180 | Document BOM recognition | |
13181 | ||
13182 | * vms_data.ads: Add entries for -gnatw.a -gnatw.A | |
13183 | Add /Wide_Character_Encoding for binder | |
13184 | Add qualifier for the new gnatpp option --no-separate-loop-then | |
13185 | ||
13186 | 2007-12-13 Matthew Heaney <heaney@adacore.com> | |
13187 | ||
13188 | * a-cohase.ads, a-cihama.ads, a-cihase.ads, a-cohama.ads: Document | |
13189 | which generic formal operations are called for each operation. | |
13190 | ||
13191 | 2007-12-13 Olivier Hainque <hainque@adacore.com> | |
13192 | ||
13193 | * tb-gcc.c (uw_data_t, trace_callback): Only define if not GCC-SJLJ eh. | |
13194 | (__gnat_backtrace): Early return 0 if using GCC-SJLJ eh. | |
13195 | ||
13196 | 2007-12-13 Emmanuel Briot <briot@adacore.com> | |
13197 | ||
13198 | * s-os_lib.ads, s-os_lib.adb (Normalize_Pathname): Do not compute | |
13199 | Reference_Dir unless we actually need it. | |
13200 | ||
13201 | 2007-12-13 Vasiliy Fofanov <fofanov@adacore.com> | |
13202 | Tristan Gingold <gingold@adacore.com> | |
13203 | ||
13204 | * g-socthi-vms.ads (Fd_Set_Access): make it 32-bit. | |
13205 | ||
13206 | * s-osprim-vms.adb, | |
13207 | a-calend-vms.adb: Remove pragma warning off and add pragma | |
13208 | unreferenced. | |
13209 | ||
13210 | 2007-12-13 Robert Dewar <dewar@adacore.com> | |
13211 | ||
13212 | * impunit.adb: Add entries for missing units | |
13213 | ||
13214 | * Makefile.rtl: Add new run-time units. | |
13215 | ||
13216 | * Make-lang.in: Update dependencies. | |
13217 | ||
13218 | 2007-12-13 Bob Duff <duff@adacore.com> | |
13219 | ||
13220 | * itypes.ads, itypes.adb (Create_Itype): For access-to-subprogram | |
13221 | types, set Can_Use_Internal_Rep appropriately, based on | |
13222 | Always_Compatible_Rep_On_Target. | |
13223 | ||
13224 | 2007-12-13 Gary Dismukes <dismukes@adacore.com> | |
13225 | Arnaud Charlet <charlet@adacore.com> | |
13226 | ||
13227 | * make.adb (Scan_Make_Arg): Add test for -aamp_target switch, passing | |
13228 | it to the front end and setting the aamp_target environment variable | |
13229 | to the switch's argument to ensure that gnaampbind and gnaamplink will | |
13230 | take the specified library into account. | |
13231 | (Make): Only set Check_Object_Consistency to False for JVM, not for CIL | |
13232 | target, since the CIL compiler supports an "object" file (.il files). | |
13233 | ||
13234 | 2007-12-13 Vincent Celier <celier@adacore.com> | |
13235 | ||
13236 | * symbols-processing-vms-ia64.adb (Process.Skip_Half): New procedure | |
13237 | (Process.H): Remove variable. Replace Read_Half (H) with Skip_Half. | |
13238 | ||
13239 | 2007-12-13 Geert Bosch <bosch@adacore.com> | |
13240 | ||
9e81dbc7 | 13241 | * s-parame-vxworks.adb: |
e9b54d64 AC |
13242 | Update comments to reflect usage of this package by Nucleus. |
13243 | ||
13244 | 2007-12-13 Arnaud Charlet <charlet@adacore.com> | |
13245 | ||
13246 | * i-vxwork.ads: Kill new warning on Convention C, since changing the | |
13247 | spec would break code. | |
13248 | ||
13249 | * i-forbla-unimplemented.ads, vx_stack_info.c: New files. | |
13250 | ||
13251 | * system-vxworks-alpha.ads: Removed. | |
13252 | ||
e74a122e EB |
13253 | 2007-12-10 Eric Botcazou <ebotcazou@adacore.com> |
13254 | ||
13255 | * ada-tree.h (TYPE_RETURNS_BY_TARGET_PTR_P): Move around. | |
13256 | ||
5320014a ST |
13257 | 2007-12-09 Samuel Tardieu <sam@rfc1149.net> |
13258 | ||
13259 | PR ada/34366 | |
13260 | * sem_ch3.adb (Designates_T): New function. | |
13261 | (Mentions_T): Factor reusable part of the logic into Designates_T. | |
13262 | Consider non-access parameters and access and non-access result. | |
13263 | (Check_Anonymous_Access_Components): Set ekind of anonymous access to | |
13264 | E_Subprogram_Type to E_Anonymous_Access_Subprogram_Type. | |
13265 | ||
13266 | * einfo.ads: Update comment for E_Anonymous_Access_Subprogram_Type. | |
13267 | ||
da746f77 LB |
13268 | 2007-12-07 Ludovic Brenta <ludovic@ludovic-brenta.org> |
13269 | ||
9d651736 | 13270 | PR ada/34361 |
da746f77 LB |
13271 | * mlib-tgt.adb, mlib-tgt.ads: Fix comments at the top to reflect |
13272 | the new implementation of target-specific calls. | |
13273 | ||
ebe0660b OH |
13274 | 2007-12-07 Olivier Hainque <hainque@adacore.com> |
13275 | ||
13276 | * decl.c (gnat_to_gnu_entity) <case E_Access_Type>: When computing | |
13277 | the designated full view, only follow a second level Full_View link | |
13278 | for Non_Limited_Views of from_limited_with references. | |
9e81dbc7 | 13279 | |
2eb160f2 ST |
13280 | 2007-12-07 Samuel Tardieu <sam@rfc1149.net> |
13281 | ||
13282 | PR ada/15805 | |
13283 | * sem_ch6.adb (Process_Formals): Prevent an access type formal | |
13284 | to be initialized with an access to constant object. | |
13285 | ||
9cc11b58 ST |
13286 | * sem_ch3.adb (Analyze_Object_Declaration): Signal an error |
13287 | when an access to constant is used to initialize an access | |
13288 | value. | |
13289 | ||
72f69ddf ST |
13290 | PR ada/21346 |
13291 | * a-direct.adb (Compose): Containing_Directory can be an empty string. | |
13292 | ||
5a2fe31a OH |
13293 | 2007-12-07 Olivier Hainque <hainque@adacore.com> |
13294 | ||
13295 | PR ada/34173 | |
13296 | * decl.c (gnat_to_gnu_entity) <case E_Array_Type>: When setting | |
13297 | the alignment on the GCC XUA array type, set TYPE_USER_ALIGN if | |
13298 | this is from an alignment clause on the GNAT entity. | |
13299 | * utils.c (create_field_decl): Rewrite the computation of DECL_ALIGN | |
13300 | to distinguish the case where we set it from the type's alignment. | |
13301 | When so, propagate TYPE_USER_ALIGN into DECL_USER_ALIGN to indicate | |
13302 | whether this alignment was set from an explicit alignment clause. | |
13303 | ||
4039fb35 EB |
13304 | 2007-12-06 Eric Botcazou <ebotcazou@adacore.com> |
13305 | ||
13306 | * decl.c (make_packable_type): Revert last change. | |
13307 | (gnat_to_gnu_field): Avoid setting size and position multiple times. | |
13308 | * utils.c (finish_record_type): Retrieve the real name of the type. | |
13309 | ||
0ec479dc EB |
13310 | 2007-12-05 Eric Botcazou <ebotcazou@adacore.com> |
13311 | ||
13312 | * trans.c (lvalue_required_p): Take base node directly instead | |
13313 | of its parent. Rename second parameter to 'gnu_type'. | |
13314 | <N_Indexed_Component>: Return 0 if the node isn't the prefix. | |
13315 | <N_Slice>: Likewise. | |
13316 | (Identifier_to_gnu): Rename parent_requires_lvalue to require_lvalue. | |
13317 | Adjust calls to lvalue_required_p. | |
13318 | ||
07c7262e ST |
13319 | 2007-12-05 Samuel Tardieu <sam@rfc1149.net> |
13320 | ||
13321 | PR ada/21489 | |
13322 | * exp_ch9.adb (Build_Simple_Entry_Call): Initialize OUT access type | |
13323 | parameters of an entry call. | |
13324 | ||
9e94c78f | 13325 | 2007-12-03 Robert Dewar <dewar@adacore.com> |
9e81dbc7 | 13326 | Samuel Tardieu <sam@rfc1149.net> |
403fd939 RD |
13327 | |
13328 | PR ada/34287 | |
13329 | * sem_util.adb (Safe_To_Capture_Value): Do not capture values | |
13330 | of variables declared in a library-level package. | |
9e81dbc7 | 13331 | |
0bcb4d2a ST |
13332 | 2007-12-02 Samuel Tardieu <sam@rfc1149.net> |
13333 | ||
13334 | * clean.adb (Clean_Library_Directory): Use Empty_String'Access intead | |
13335 | of Empty_String'Unchecked_Access. | |
13336 | ||
dd9c642a ST |
13337 | * Makefile.in: Add support for sh4-linux. |
13338 | ||
13339 | * system-linux-sh4.ads: New file. | |
13340 | ||
35330114 KB |
13341 | 2007-12-01 Kostik Belousov <kostikbel@ukr.net> |
13342 | ||
13343 | PR ada/33722 | |
13344 | * env.c (__gnat_setenv): FreeBSD 7 has a POSIX conformant putenv() | |
13345 | and its argument must not be free()ed. | |
13346 | ||
a6dcb051 EB |
13347 | 2007-11-29 Eric Botcazou <ebotcazou@adacore.com> |
13348 | ||
13349 | * decl.c (make_packable_type): Retrieve the real name of the type. | |
13350 | (maybe_pad_type): Simplify similar code. | |
13351 | ||
39a97416 ST |
13352 | 2007-11-28 Samuel Tardieu <sam@rfc1149.net> |
13353 | ||
a6968b8b | 13354 | PR ada/15804 |
39a97416 ST |
13355 | * par-ch3.adb (P_Variant_Part): Signal an error when anything other |
13356 | than an identifier is used after "case" in a variant_part. | |
13357 | ||
b99dfeb3 | 13358 | PR ada/17318 |
9c5a3a8d ST |
13359 | * par-ch4.adb (Is_Parameterless_Attribute): New map. |
13360 | (P_Name, Scan_Apostrophe block): Parse left parenthesis following | |
13361 | attribute name or not depending on the new map. | |
13362 | ||
13363 | * sem-attr.adb (Analyze_Attribute): Parameterless attributes | |
13364 | returning a string or a type will not be called with improper | |
13365 | arguments. | |
13366 | ||
13367 | * sem-attr.ads (Attribute_Class_Array): Move to snames.ads. | |
13368 | ||
13369 | * snames.ads (Attribute_Class_Array): Moved from sem-attr.ads. | |
13370 | ||
5a218498 ST |
13371 | PR ada/32792 |
13372 | * sem_attr.adb (Analyze_Attribute, Attribute_Integer_Value clause): | |
13373 | Signal an error when attribute argument is a fixed-point value of | |
13374 | an unknown type. | |
13375 | ||
7bde4677 ST |
13376 | PR ada/22559 |
13377 | * sem_ch3.adb (Build_Derived_Numeric_Type): Do not set RM_Size on | |
13378 | a derived ordinary fixed point type. | |
13379 | ||
13380 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Recompute | |
13381 | RM_Size when a Small clause is found. | |
13382 | ||
182e0d71 AK |
13383 | 2007-11-26 Andreas Krebbel <krebbel1@de.ibm.com> |
13384 | ||
9e81dbc7 AS |
13385 | PR 34081/C++ |
13386 | * trans.c (Subprogram_Body_to_gnu, Compilation_Unit_to_gnu): | |
13387 | Pass 'false' for the new allocate_struct_function parameter. | |
13388 | * utils.c (build_function_stub): Likewise. | |
182e0d71 | 13389 | |
87caf699 RG |
13390 | 2007-11-25 Richard Guenther <rguenther@suse.de> |
13391 | ||
4039fb35 | 13392 | * utils.c (gnat_pushlevel): Use BLOCK_CHAIN. |
87caf699 RG |
13393 | (gnat_poplevel): Likewise. |
13394 | ||
f1c8c7ee EB |
13395 | 2007-11-25 Eric Botcazou <ebotcazou@adacore.com> |
13396 | ||
13397 | * decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the type has | |
13398 | strict alignment, no alignment clause and a known static size, cap | |
13399 | the type alignment to the greatest power of 2 factor of the size. | |
13400 | (gnat_to_gnu_field): If the field has a component clause, is aliased | |
13401 | or of a type with strict alignment, require that its size be equal to | |
13402 | that of the type. | |
13403 | (validate_size): Use the type size as the minimum size for a type with | |
13404 | strict alignment. | |
13405 | ||
bb1f5840 ST |
13406 | 2007-11-23 Samuel Tardieu <sam@rfc1149.net> |
13407 | ||
13408 | * s-inmaop-posix.adb, s-intman-vxworks.adb, s-taprop-hpux-dce.adb, | |
13409 | s-taprop-irix.adb, s-taprop-linux.adb, s-taprop-lynxos.adb, | |
13410 | s-taprop-posix.adb, s-taprop-tru64.adb, s-taprop-vxworks.adb: | |
13411 | Use 'Access instead of 'Unchecked_Access in second and third | |
13412 | arguments of pthread_sigmask. | |
13413 | ||
5102fac5 EB |
13414 | 2007-11-23 Eric Botcazou <ebotcazou@adacore.com> |
13415 | ||
13416 | * decl.c (ceil_alignment): New function. | |
13417 | (gnat_to_gnu_entity): Use it to set the alignment on atomic types. | |
13418 | (make_packable_type): Likewise. | |
13419 | ||
1fa4dfc6 OH |
13420 | 2007-11-22 Olivier Hainque <hainque@adacore.com> |
13421 | ||
13422 | * trans.c (gnat_to_gnu) <case N_Free_Statement>: Reformat lines | |
13423 | to fit in 80 columns. | |
13424 | ||
9e94c78f | 13425 | 2007-11-21 Aurelien Jarno <aurelien@aurel32.net> |
5f45b299 AJ |
13426 | |
13427 | * s-osinte-kfreebsd-gnu.ads (To_Target_Priority): New function. | |
13428 | * Makefile.in: Add EH_MECHANISM=-gcc to kfreebsd-gnu. Remove SYMLIB. | |
13429 | ||
7634135a EB |
13430 | 2007-11-19 Eric Botcazou <ebotcazou@adacore.com> |
13431 | ||
13432 | PR ada/34098 | |
13433 | * misc.c (gnat_adjust_rli): Delete. | |
13434 | (gnat_init): Do not initialize the translation code here. | |
13435 | Do not call set_lang_adjust_rli. | |
13436 | * trans.c (init_code_table): Make static. | |
13437 | (gnat_init_stmt_group): Delete. | |
13438 | (gigi): Initialize the translation code entirely here. | |
13439 | Emit debug info for the common types here instead of... | |
13440 | * utils.c (gnat_init_decl_processing): ...here. | |
13441 | * gigi.h (init_code_table): Delete. | |
13442 | (gnat_init_stmt_group): Likewise. | |
13443 | ||
b2c3bcf4 OH |
13444 | 2007-11-16 Olivier Hainque <hainque@adacore.com> |
13445 | ||
13446 | * utils2.c (build_call_alloc_dealloc) <if gnu_obj>: Move the code | |
13447 | retrieving an allocator return value from a super-aligned address from | |
13448 | here to ... | |
13449 | * trans.c (gnat_to_gnu) <case N_Free_Statement>: ... here, and don't | |
13450 | expect a super-aligned address for a fat or thin pointer. | |
9e81dbc7 | 13451 | |
a01e283f EB |
13452 | 2007-11-14 Eric Botcazou <ebotcazou@adacore.com> |
13453 | ||
13454 | * trans.c (call_to_gnu): Always set the source location on the call | |
13455 | expression. If the function returns-by-target, also set it on the | |
13456 | address expression. | |
13457 | ||
713c3145 ST |
13458 | 2007-11-14 Samuel Tardieu <sam@rfc1149.net> |
13459 | ||
356d8961 | 13460 | * adaint.c, init.c, initialize.c, link.c: Remove system-specific |
713c3145 ST |
13461 | sections of non-supported Interix target. |
13462 | ||
13463 | * s-osinte-interix.ads: Removed. | |
13464 | ||
1e992e16 ST |
13465 | * i-cstrin.ads (chars_ptr): Make it a C convention type. |
13466 | ||
0e506c4b ST |
13467 | 2007-11-13 Samuel Tardieu <sam@rfc1149.net> |
13468 | ||
13469 | * a-tasatt.adb: Add a comment at the beginning of the package | |
13470 | explaining why in general 'Unchecked_Access must be used instead | |
13471 | of 'Access. | |
13472 | ||
66beb09b ST |
13473 | * sem_prag.adb (Process_Convention): Move the test for the |
13474 | entity on which the Convention pragma applies down to also | |
13475 | forbid pragma Convention on enumeration literals reached | |
13476 | through renamings. | |
13477 | ||
14678e46 ST |
13478 | 2007-11-10 Samuel Tardieu <sam@rfc1149.net> |
13479 | ||
13480 | * a-tasatt.adb: Revert previous change for this file as it will | |
13481 | generate an error when this package is instantiated from a | |
13482 | local context. | |
13483 | ||
f9d806de ST |
13484 | 2007-11-07 Samuel Tardieu <sam@rfc1149.net> |
13485 | ||
13486 | * a-tasatt.adb: Type Wrapper should be declared in comment instead | |
13487 | of already declared type Node_Access. | |
dcbd752d ST |
13488 | Use 'Access instead of 'Unchecked_Access when applicable. Local |
13489 | lifetime is the one of the package. | |
13490 | (Set_Value): W is allocated on the heap. | |
13491 | ||
13492 | * g-socket.adb: Use 'Access instead of 'Unchecked_Access when | |
13493 | applicable. | |
13494 | (Get_Socket_Option): Optlen formal of C_Getsockopt is of an anonymous | |
13495 | access type. | |
13496 | (Receive_Socket): Fromlen formal of C_Recvfrom is of an anonymous | |
13497 | access type. | |
13498 | ||
13499 | * s-taasde.adb: Use 'Access instead of 'Unchecked_Access when | |
13500 | applicable. | |
13501 | (elaboration code): Timer_Queue lifetime is the one of the | |
13502 | package. | |
f9d806de | 13503 | |
bc01690e ST |
13504 | * tracebak.c (i386 alternative): Remove useless comparaison |
13505 | which is always false; LOWEST_ADDRESS is 0 and is never greater | |
13506 | than an unsigned integer. | |
13507 | ||
d9c1dc68 ST |
13508 | * sem_attr.adb (Analyze_Attribute): Remove duplicate identical |
13509 | embedded check for "Ada_Version >= Ada_05". | |
13510 | ||
cb88a3ea OH |
13511 | 2007-11-07 Olivier Hainque <hainque@adacore.com> |
13512 | ||
13513 | * decl.c (make_aligning_type): Set the mode of the RECORD_TYPE we | |
13514 | craft and expand comment. | |
13515 | ||
233a722b EB |
13516 | 2007-11-01 Eric Botcazou <ebotcazou@adacore.com> |
13517 | ||
13518 | * lang-specs.h: Move translation of -fRTS= after -gnatez switch. | |
13519 | ||
6d1e8bff EB |
13520 | 2007-10-23 Eric Botcazou <ebotcazou@adacore.com> |
13521 | ||
13522 | * misc.c (gnat_handle_option): Replace call to abort with | |
13523 | call to gcc_unreachable. | |
13524 | (gnat_init): Likewise. | |
13525 | (gnat_expand_expr): Likewise. | |
13526 | (fp_prec_to_size): Likewise. | |
13527 | (fp_size_to_prec): Likewise. | |
13528 | ||
262e7125 RG |
13529 | 2007-10-23 Richard Guenther <rguenther@suse.de> |
13530 | ||
13531 | PR bootstrap/33608 | |
13532 | * tracebak.c: #undef abort after including system.h. | |
13533 | ||
9e94c78f | 13534 | 2007-10-20 Danny Smith <dannysmith@users.sourceforge.net> |
c8f499a9 DS |
13535 | |
13536 | * Makefile.in (LIBGNAT_TARGET_PAIRS) Add s-tasinf-mingw.adb, | |
13537 | s-tasinf-mingw.ads, a-exetim-mingw.adb, a-exetim-mingw.ads | |
13538 | for win32 targets. | |
13539 | (EXTRA_GNATRTL_TASKING_OBJS): Add a-exetim.o for win32 targets. | |
13540 | ||
f0e1e807 AC |
13541 | 2007-10-15 Eric Botcazou <ebotcazou@adacore.com> |
13542 | ||
13543 | * s-osinte-tru64.adb: (Hide_Yellow_Zone): Add On parameter. | |
13544 | Set the protection status of the guard page based on the value of On. | |
13545 | ||
13546 | * s-osinte-tru64.ads: (Hide_Yellow_Zone): Add On parameter. | |
13547 | ||
13548 | * s-taprop-tru64.adb: (Enter_Task): Pass True to Hide_Yellow_Zone. | |
13549 | (Exit_Task): Pass False to Hide_Yellow_Zone. | |
13550 | ||
13551 | 2007-10-15 Robert Dewar <dewar@adacore.com> | |
13552 | ||
9e81dbc7 | 13553 | * s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb, |
f0e1e807 | 13554 | s-taprop-vxworks.adb, s-taprop-posix.adb, a-calend-vms.adb, |
9e81dbc7 AS |
13555 | a-calend.adb, a-nuflra.adb, a-tigeau.adb, a-wtgeau.adb, |
13556 | checks.adb, bindgen.adb, eval_fat.adb, exp_fixd.adb, fmap.adb, | |
13557 | freeze.adb, g-awk.adb, g-calend.adb, g-diopit.adb, g-expect.adb, | |
13558 | gnatchop.adb, gnatlink.adb, g-spipat.adb, g-thread.adb, make.adb, | |
13559 | mdll.adb, mlib.adb, mlib-prj.adb, osint.adb, par-ch3.adb, prj.adb, | |
13560 | prj-makr.adb, sem_prag.adb, sem_type.adb, s-fatgen.adb, s-fileio.adb, | |
13561 | sinfo.ads, sinput-d.adb, s-taasde.adb, s-tasdeb.ads, s-tasren.adb, | |
f0e1e807 | 13562 | s-tassta.adb, s-tpobop.adb, s-tposen.adb, stylesw.adb, types.ads, |
9e81dbc7 AS |
13563 | uintp.adb, validsw.adb, makegpr.adb, a-rbtgso.adb, a-crbtgo.adb, |
13564 | a-coorse.adb, a-convec.adb, a-coinve.adb, a-cohama.adb, a-ciorse.adb, | |
13565 | a-cihama.adb, a-cidlli.adb, a-chtgop.adb, a-cdlili.adb, a-cdlili.adb, | |
13566 | a-coormu.adb, a-ciormu.adb, a-cihase.adb, a-cohase.adb, a-ciorma.adb, | |
13567 | a-coorma.adb, a-ztgeau.adb, symbols-vms.adb, a-crdlli.adb, | |
f0e1e807 AC |
13568 | a-calari.adb, a-calfor.adb, s-os_lib.adb, s-regpat.adb, a-ngrear.adb: |
13569 | Minor reformatting. | |
13570 | Add Unreferenced and Warnings (Off) pragmas for cases of | |
13571 | variables modified calls where they are IN OUT or OUT parameters and | |
13572 | the resulting values are not subsequently referenced. In a few cases, | |
13573 | we also remove redundant code found by the new warnings. | |
13574 | ||
9e81dbc7 | 13575 | * ug_words, vms_data.ads, usage.adb, sem_util.adb, sem_util.ads, |
f0e1e807 AC |
13576 | sem_warn.adb, sem_warn.ads, sem_res.adb, sem_ch7.adb, sem_ch8.adb, |
13577 | sem_ch5.adb, opt.ads, lib-xref.adb, lib-xref.ads, exp_smem.adb, | |
13578 | sem_ch11.adb, exp_ch6.adb, einfo.ads, einfo.adb: implement a new | |
13579 | warning controlled by -gnatw.o that warns on cases of out parameter | |
13580 | values being ignored. | |
13581 | ||
13582 | 2007-10-15 Geert Bosch <bosch@adacore.com> | |
13583 | ||
13584 | * adaint.c, socket.c, cal.c: Initial port to arm-mentor-nucleus. | |
13585 | ||
13586 | * expect.c: Initial port to arm-mentor-nucleus. | |
13587 | Use kill for __gnat_kill() on VMS. | |
13588 | ||
13589 | 2007-10-15 Emmanuel Briot <briot@adacore.com> | |
13590 | ||
13591 | * ali.ads, ali.adb (Scan_ALI): Initialize XE.Tref to a known default | |
13592 | value. | |
13593 | (Xref_Record): Change type for Line, since in the case of a reference to | |
13594 | a predefined entity (as happens for array index types), the line is set | |
13595 | to 0. | |
13596 | Add support for parsing multiple array index types info, or | |
13597 | multiple inherited interfaces info. This information cannot be stored | |
13598 | in Xref_Entity_Record, which only supports a single instance of Tref_*, | |
13599 | and is therefore stored in the list of references instead. It has a | |
13600 | special treatement later on in tools that use this information. | |
13601 | ||
13602 | 2007-10-15 Tristan Gingold <gingold@adacore.com> | |
13603 | ||
13604 | * debug.adb: Document use of -gnatd.a and -gnatd.I | |
13605 | ||
13606 | * layout.adb: On OpenVMS -gnatd.a disables alignment optimization. | |
13607 | ||
13608 | 2007-10-15 Javier Miranda <miranda@adacore.com> | |
13609 | ||
13610 | * exp_attr.adb (Expand_N_Attribute_Reference): Case Access, | |
13611 | Unchecked_Access, and Unrestricted_Access. Cleanup code that takes | |
13612 | care of access to class-wide interface types plus removal of bizarre | |
13613 | conversion of tagged object to access type (reported by Gary | |
13614 | Dismukes). After this patch there is no need to perform any | |
13615 | additional management on these nodes in Expand_Interface_Actuals. | |
13616 | ||
13617 | * exp_disp.adb (Expand_Interface_Actuals): Code cleanup. Remove code | |
13618 | that handles use of 'Access and 'Unchecked_Access applied to | |
13619 | actuals covering interface types. Such code is now | |
13620 | centralized in Expand_N_Attribute_Reference. | |
13621 | ||
13622 | 2007-10-15 Ed Schonberg <schonberg@adacore.com> | |
13623 | ||
13624 | * exp_ch3.adb (Build_Init_Procedure): Keep separate the initialization | |
13625 | of tagged types whose ultimate ancestor is a CPP type. | |
13626 | (Freeze_Array_Type): For a packed array type, generate an initialization | |
13627 | procedure if the type is public, to handle properly a client that | |
13628 | specifies Normalize_Scalars. | |
13629 | ||
13630 | 2007-10-15 Hristian Kirtchev <kirtchev@adacore.com> | |
13631 | ||
13632 | * exp_ch9.adb (Actual_Index_Expression): When the expansion occurs | |
13633 | inside a generic body, retrieve the full view of the entry family | |
13634 | discrete subtype if available. | |
13635 | ||
13636 | 2007-10-15 Thomas Quinot <quinot@adacore.com> | |
13637 | ||
13638 | * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): Do not | |
13639 | attempt to generate stubs for hidden primitive operations. | |
13640 | ||
13641 | 2007-10-15 Vincent Celier <celier@adacore.com> | |
13642 | ||
13643 | * mlib-tgt-specific.adb (Support_For_Libraries): New function, | |
13644 | returning None, used when there is no platform specific body for | |
13645 | MLib.Tgt.Specific. | |
13646 | ||
13647 | 2007-10-15 Bob Duff <duff@adacore.com> | |
13648 | ||
13649 | * sem_case.adb, sem_ch13.adb, lib-sort.adb: Replace use of Heap_Sort_A | |
13650 | (passing'Unrestricted_Access of nested subprograms to Sort) with use of | |
13651 | the generic Heap_Sort_G, in order to avoid trampolines. | |
13652 | ||
13653 | 2007-10-15 Vasiliy Fofanov <fofanov@adacore.com> | |
13654 | Jose Ruiz <ruiz@adacore.com> | |
13655 | ||
13656 | * vx_stack_info.c: New file. | |
13657 | ||
13658 | * i-forbla-unimplemented.ads: New file. | |
13659 | ||
13660 | * Makefile.in: i-forbla-unimplemented.ads: a variant of i-forbla.ads | |
13661 | for unsupported configurations; use it on VMS targets instead of the | |
13662 | real one. | |
13663 | (EXTRA_LIBGNAT_SRCS,EXTRA_LIBGNAT_OBJS for VxWorks): Include | |
13664 | vx_stack_info.{c,o} that contains the routine __gnat_get_stack_info | |
13665 | used by VxWorks targets to have access to task-specific data and be | |
13666 | able to extract the stack boundaries for stack checking. | |
13667 | Use system-vms-ia64.ads on ivms. | |
13668 | ||
13669 | * Make-lang.in: Update dependencies. | |
13670 | ||
13671 | * sysdep.c (__gnat_get_stack_info): Move to a standalone file | |
13672 | (vx_stack_info.c). | |
13673 | ||
13674 | 2007-10-15 Vincent Celier <celier@adacore.com> | |
13675 | ||
13676 | * snames.adb, snames.ads: Add new standard name runtime_library_dir | |
13677 | ||
13678 | * prj.ads (Language_Config): Add new component Runtime_Library_Dir | |
13679 | ||
13680 | * prj-attr.adb: Add project level attribute Runtime_Library_Dir | |
13681 | ||
13682 | * prj-env.adb (Create_Mapping_File): Do not put an entry if the path of | |
13683 | the source is unknown. | |
13684 | ||
13685 | * prj-ext.adb: Spelling error fix | |
13686 | ||
13687 | * prj-nmsc.adb (Check_Ada_Name): Reject any unit that includes an Ada | |
13688 | 95 reserved word in its name. | |
13689 | (Process_Project_Level_Array_Attributes): Process new attribute | |
13690 | Runtime_Library_Dir. | |
13691 | ||
13692 | * prj-part.adb (Parse_Single_Project): Do not check the name of the | |
13693 | config project against the user project names. | |
13694 | ||
13695 | * prj-proc.adb (Expression): In multi-language mode, indexes that do | |
13696 | not include a dot are always case insensitive. | |
13697 | (Process_Declarative_Items): Ditto | |
13698 | (Process_Project_Tree_Phase_1): Set Success to False in case an error is | |
13699 | detected. | |
13700 | ||
13701 | * prj-util.adb (Value_Of (In_Array)): When Force_Lower_Case_Index is | |
13702 | True, compare both indexes in lower case. | |
13703 | ||
13704 | 2007-10-15 Robert Dewar <dewar@adacore.com> | |
13705 | ||
13706 | * rtsfind.adb: (Load_RTU): Turn off style checks for Load call | |
13707 | ||
13708 | 2007-10-15 Gary Dismukes <dismukes@adacore.com> | |
13709 | ||
13710 | * sem_aggr.adb (Resolve_Record_Aggregate): In the case of a box | |
13711 | association for an access component, add an association with null as | |
13712 | the expression. Remove testing for array subtypes and the setting in | |
13713 | that case of Ctyp to the array component type, which prevented proper | |
13714 | inclusion of an association for null-initialized arrays. Collapse | |
13715 | condition that tests for array subtypes into just a test of | |
13716 | Is_Partially_Initialized_Type (which already covers arrays anyway). | |
13717 | ||
13718 | 2007-10-15 Hristian Kirtchev <kirtchev@adacore.com> | |
13719 | ||
13720 | * sem_ch12.adb: Minor code reformatting. | |
13721 | (Check_Generic_Child_Unit): Iterate over the homonym chain in order to | |
13722 | find the parent package which may have been hidden by local | |
13723 | declarations. | |
13724 | ||
13725 | 2007-10-15 Gary Dismukes <dismukes@adacore.com> | |
13726 | ||
13727 | * sem_ch3.adb (Build_Derived_Concurrent_Type): Set the Is_Constrained | |
13728 | flag of derived concurrent types, taking into account the flag setting | |
13729 | on the parent subtype and any new set of discriminants. | |
13730 | ||
13731 | 2007-10-15 Hristian Kirtchev <kirtchev@adacore.com> | |
13732 | ||
13733 | * sem_ch4.adb: Minor code and comment reformatting. | |
13734 | (Analyze_Allocator): When the designated type of an unconstrained | |
13735 | allocator is a record with unknown discriminants or an array with | |
13736 | unknown range bounds, emit a detailed error message depending on the | |
13737 | compilation mode and whether the designated type is limited. | |
13738 | ||
13739 | 2007-10-15 Tristan Gingold <gingold@adacore.com> | |
13740 | ||
13741 | * system-vms-ia64.ads: New file. | |
13742 | ||
13743 | * system-vms_64.ads: Minor comment fix. | |
13744 | ||
13745 | 2007-10-15 Ed Schonberg <schonberg@adacore.com> | |
13746 | ||
13747 | * sem_ch6.adb (Find_Corresponding_Spec): If the previous entity is a | |
13748 | body generated for a function with a controlling result that is a null | |
13749 | extension, discard the generated body in favor of the current explicit | |
13750 | one. | |
13751 | ||
13752 | 2007-10-15 Ed Schonberg <schonberg@adacore.com> | |
13753 | ||
13754 | * sem_disp.adb (Find_Controlling_Arg): Examine the call node before | |
13755 | examining its original form, to handle properly operator calls that | |
13756 | have been rewritten. | |
13757 | ||
13758 | 2007-10-15 Olivier Hainque <hainque@adacore.com> | |
13759 | ||
13760 | * tb-alvms.c (tb_entry_t, __gnat_backtrace): Store a frame pointer | |
13761 | instead of a procedure value in each traceback entry. | |
13762 | ||
13763 | * g-trasym-vms-alpha.adb (Symbolic_Traceback): Pass frame pointer | |
13764 | instead of procedure value to TBK$SYMBOLIZE. | |
13765 | ||
13766 | * s-traent-vms.adb (PV_For): Rename as FP_For and access the proper | |
13767 | field. | |
13768 | (TB_Entry_For): Account for the PV/FP renaming. | |
13769 | ||
13770 | * s-traent-vms.ads (Traceback_Entry): Rename PV component into FP and | |
13771 | add comment. | |
13772 | (Null_TB_Entry): Account for change of component name. | |
13773 | (PV_For): Rename as FP_For. | |
13774 | ||
13775 | 2007-10-15 Tristan Gingold <gingold@adacore.com> | |
13776 | ||
13777 | * trans.c (gnat_to_gnu): Remove the padding structure more often. | |
13778 | This optimize assignment to over-aligned record. | |
13779 | ||
13780 | 2007-10-15 Emmanuel Briot <briot@adacore.com> | |
13781 | ||
13782 | * xref_lib.adb (Get_Full_Type): Add support for the 'h' entity type, ie | |
13783 | interfaces. | |
13784 | ||
13785 | * xr_tabls.adb (Add_Reference): Add support for the new 'R' reference | |
13786 | type, for dispatching calls. | |
13787 | ||
13788 | 2007-10-15 Vincent Celier <celier@adacore.com> | |
13789 | Robert Dewar <dewar@adacore.com> | |
13790 | ||
13791 | * gnat_ugn.texi: Add documentation for switches --version and --help | |
13792 | for the GNAT tools gnatbind, gnatlink, gnatmake, gnatchop, gnatname, | |
13793 | gnatxref, gnatfind, gnatls, and gnatclean. | |
13794 | Document -gnatw.o. | |
13795 | Mention attribute Excluded_Source_Dirs | |
13796 | Replace obsolescent attribute Locally_Removed_Files with attribute | |
13797 | Excluded_Source_Files. | |
13798 | Improve documentation of -u (gnatbind) | |
13799 | Document how to do reliable stack checking for the environmental task | |
13800 | on iVMS. | |
13801 | ||
13802 | * gnat_rm.texi: Rewrite section about No_Implicit_Dynamic_Code. | |
13803 | Document attribute Excluded_Source_Files and indicate that attribute | |
13804 | Locally_Removed_Files is obsolescent. | |
13805 | ||
13806 | 2007-10-15 Thomas Quinot <quinot@adacore.com> | |
13807 | ||
13808 | * g-soccon-vms.ads: Fix value of MSG_WAITALL. | |
13809 | ||
9e81dbc7 | 13810 | * gen-soccon.c: |
f0e1e807 AC |
13811 | Update documentation to note that OpenVMS 8.3 or later must be used |
13812 | to generate g-soccon-vms.ads. | |
13813 | ||
13814 | * atree.adb: Add ??? comment | |
13815 | ||
13816 | * exp_util.adb: Minor reformatting. | |
13817 | Add ??? comment in Kill_Dead_Code. | |
13818 | ||
13819 | 2007-10-15 Robert Dewar <dewar@adacore.com> | |
13820 | ||
13821 | * errout.ads: Comment clarification | |
13822 | ||
13823 | * exp_ch4.adb (Expand_N_Allocator): Code cleanup. | |
13824 | (Expand_N_Op_Eq): Improve handling of array equality with -gnatVa | |
13825 | ||
13826 | * lib.ads: Comment update | |
13827 | ||
13828 | * init.c: Minor reformatting. | |
13829 | ||
13830 | * sem_attr.adb: Minor formatting | |
13831 | ||
13832 | * osint-b.ads: Minor reformatting | |
13833 | ||
13834 | * sem_ch9.adb: Implement -gnatd.I switch | |
13835 | ||
13836 | * g-comlin.adb: (Start): Fix handling of empty command line. | |
13837 | ||
13838 | * gnatcmd.adb (GNATCmd): Do not put the -rules in the -cargs section, | |
13839 | even when -rules follows the -cargs section. | |
13840 | ||
6524147c OW |
13841 | 2007-10-08 Ollie Wild <aaw@google.com> |
13842 | ||
13843 | * misc.c (LANG_HOOKS_PUSHDECL): Replaced lhd_return_tree with | |
13844 | gnat_return_tree. | |
13845 | (gnat_init_gcc_eh): Replaced gnat_eh_runtime_type with | |
13846 | gnat_return_tree. | |
13847 | (gnat_eh_runtime_type): Removed. | |
13848 | (gnat_return_tree): New function. | |
13849 | ||
dff6abb2 BE |
13850 | 2007-10-08 Ben Elliston <bje@au.ibm.com> |
13851 | ||
13852 | PR ada/33454 | |
13853 | Revert: | |
13854 | 2007-08-31 Ben Elliston <bje@au.ibm.com> | |
13855 | ||
13856 | * Makefile.in (LIBGNAT_TARGET_PAIRS): Use system-linux-ppc64.ads | |
13857 | when compiling for powerpc64-*-linux. | |
13858 | * system-linux-ppc64.ads: New file. | |
13859 | ||
c3048783 EB |
13860 | 2007-09-27 Eric Botcazou <ebotcazou@adacore.com> |
13861 | ||
13862 | Mapped location support | |
13863 | * back_end.adb (Call_Back_End): Pass information about source | |
13864 | files instead of units to gigi. | |
13865 | * gigi.h (struct File_Info_Type): New. | |
13866 | (gigi): Rename and change type of number_units parameter, change | |
13867 | type of file_info_ptr parameter. | |
13868 | * trans.c (number_files): New global variable. | |
13869 | (gigi): Rename and change type of number_units parameter, change | |
13870 | type of file_info_ptr parameter. | |
13871 | If mapped location support is enabled, create the isomorphic mapping | |
13872 | between source files and line maps. | |
13873 | (Sloc_to_locus): If mapped location support is enabled, translate | |
13874 | source location into mapped location. | |
13875 | (annotate_with_node): Rename into set_expr_location_from_node. | |
13876 | Call set_expr_location instead of annotate_with_locus. | |
13877 | (Pragma_to_gnu): Adjust for above change. | |
13878 | (Loop_Statement_to_gnu): Likewise. | |
13879 | (call_to_gnu): Likewise. | |
13880 | (Handled_Sequence_Of_Statements_to_gnu): Likewise. | |
13881 | (gnat_to_gnu): Likewise. | |
13882 | (add_stmt_with_node): Likewise. | |
13883 | (add_cleanup): Likewise. | |
13884 | * utils.c (gnat_init_decl_processing): Do not set input_line. | |
13885 | ||
68b72a44 AC |
13886 | 2007-09-26 Hristian Kirtchev <kirtchev@adacore.com> |
13887 | ||
13888 | * sem_ch8.adb (Analyze_Use_Type): Code cleanup. | |
13889 | (Applicable_Use): Emit a warning when a package tries to use itself. | |
13890 | (Use_One_Type): Add variable Is_Known_Used. Emit a warning when a type | |
13891 | is already in use or the package where it is declared is in use or is | |
13892 | declared in the current package. | |
13893 | (Spec_Reloaded_For_Body): New subsidiary routine for Use_One_Type. | |
13894 | ||
13895 | * a-tasatt.adb, s-osprim-vxworks.adb, g-socthi-mingw.adb, | |
13896 | s-intman-vms.adb, g-socket.adb, g-thread.adb, s-tarest.adb, | |
13897 | s-tassta.adb, s-tporft.adb: Remove redundant 'use type' clause. | |
13898 | ||
13899 | 2007-09-26 Hristian Kirtchev <kirtchev@adacore.com> | |
13900 | ||
9e81dbc7 | 13901 | * a-calend-vms.adb, a-calend.adb: |
68b72a44 AC |
13902 | Add a section on leap seconds control along with two entities used to |
13903 | enable and disable leap seconds support. The array Leap_Second_Times is | |
13904 | now constant and contains hard time values pre-generated. Remove | |
13905 | all elaboration code used to populate the table of leap seconds. | |
13906 | ||
9e81dbc7 | 13907 | * bindgen.adb: |
68b72a44 AC |
13908 | Add entity Leap_Seconds_Support to the list of global run-time variables |
13909 | along with a comment on its usage and values. | |
13910 | (Gen_Adainit_Ada): Add code to generate the declaration and import of | |
13911 | Integer variable Leap_Seconds_Support. Set its value to zero (disabled) | |
13912 | or one (enabled) depending on the presence of binder switch "-y". | |
13913 | (Gen_Adainit_C): Add code to generate the declaration of external int | |
13914 | __gl_leap_seconds_support. Set is value to zero (disabled) or one | |
13915 | (enabled) depending on the presence of binder switch "-y". | |
13916 | ||
13917 | * init.c: Add __gl_leap_seconds_support to the list of global values | |
13918 | computed by the binder. | |
13919 | ||
13920 | 2007-09-26 Jerome Guitton <guitton@adacore.com> | |
13921 | ||
13922 | * s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb, | |
13923 | s-taprop-hpux-dce.adb, s-taprop-linux.adb, s-taprop-dummy.adb, | |
13924 | s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb, | |
13925 | s-taprop-posix.adb (Stop_Task): New function, dummy implementation. | |
13926 | ||
13927 | * s-taprop.ads, s-taprop-vxworks.adb (Stop_Task): New function. | |
13928 | ||
13929 | * s-tasdeb.adb (Stop_All_Tasks): New function, implementing a run-time | |
13930 | function which can be called by the debugger to interrupt the tasks of | |
13931 | an Ada application asynchronously, as needed on VxWorks. | |
13932 | (Stop_All_Tasks_Handler): Renamed from Stop_All_Tasks. | |
13933 | ||
13934 | * s-tasdeb.ads (Stop_All_Tasks_Handler): New function declaration, | |
13935 | renamed from Stop_All_Tasks. Update comments. | |
13936 | (Stop_All_tasks): New function declaration. | |
13937 | ||
13938 | 2007-09-26 Olivier Hainque <hainque@adacore.com> | |
13939 | ||
13940 | * adaint.c (if defined (__Lynx__)): Wrap #def/#undef VMOS_DEV around | |
13941 | #include <utime.h> and #define GCC_RESOURCE_H before | |
13942 | #include <sys/wait.h>. | |
13943 | Add more protections in __gnat_translate_vms. | |
13944 | ||
13945 | * expect.c (if defined (__Lynx__)): #define GCC_RESOURCE_H before | |
13946 | #include <sys/wait.h>. | |
13947 | ||
13948 | 2007-09-26 Thomas Quinot <quinot@adacore.com> | |
13949 | Sergey Rybin <rybin@adacore.com> | |
13950 | ||
13951 | * gnatvsn.ads (PCS_Version_Number, ASIS_Version_Number): Removed. | |
13952 | ||
13953 | * exp_dist.ads (PCS_Version_Number): Move from Gnatvsn to Exp_Dist, | |
13954 | where it belongs. | |
13955 | ||
13956 | * opt.ads: Move ASIS_Version_Number from Gnatvsn into Tree_IO. | |
13957 | ||
13958 | * rtsfind.adb (PCS_Version_Number): Move from Gnatvsn to Exp_Dist, | |
13959 | where it belongs. | |
13960 | ||
13961 | * sem_dist.ads: Minor comment fix | |
13962 | ||
13963 | * tree_io.ads: Move ASIS_Version_Number from Gnatvsn into Tree_IO. | |
13964 | ||
13965 | 2007-09-26 Javier Miranda <miranda@adacore.com> | |
13966 | Eric Botcazou <ebotcazou@adacore.com> | |
13967 | ||
9e81dbc7 | 13968 | * a-tags.adb: |
68b72a44 AC |
13969 | (Get_HT_Link/Set_HT_Link): Updated to handle the additional level of |
13970 | indirection added to the HT_Link component of the TSD. This is required | |
13971 | to statically allocate the TSD. | |
13972 | ||
9e81dbc7 | 13973 | * a-tags.ads: |
68b72a44 AC |
13974 | Minor reordering of the declarations in the private part. Required to |
13975 | add a level of indirection to the contents of the TSD component HT_Link. | |
13976 | This is required to statically allocate the TSD. | |
13977 | ||
13978 | * decl.c (gnat_to_gnu_entity) <object>: Do not exclude objects with | |
13979 | Is_Statically_Allocated set from constant objects. | |
13980 | Do not make exported constants created by the compiler volatile. | |
13981 | (gnat_to_gnu_param): Do not treat an IN parameter whose address is taken | |
13982 | as read-only. | |
13983 | ||
13984 | * trans.c (Identifier_to_gnu): For constants, unshare initializers | |
13985 | before returning them. | |
13986 | ||
13987 | * exp_disp.ads, exp_disp.adb (Building_Static_DT): Spec moved to the | |
13988 | public part of the package. | |
13989 | (Make_DT): Move HT_Link component out of the TSD record. For this | |
13990 | purpose Make_DT now declares a separate object that stores the | |
13991 | HT_Link value, and initializes the TSD component with the address | |
13992 | of this new object. The addition of this level of indirection is | |
13993 | required to statically allocate the TSD because the TSD cannot | |
13994 | have variable components. | |
13995 | (Expand_Interface_Conversion): Improve the expanded code. | |
13996 | (Expand_Interface_Thunk): Set Is_Thunk in the thunk entity. | |
13997 | ||
13998 | * sem_disp.adb (Check_Dispatching_Operation): In case of a body | |
13999 | declaring a primitive operation ---allowed by RM 3.9.2 (13.e/2)---, | |
14000 | if we are building static dispatch tables then we must not generate | |
14001 | extra code to register the primitive because the dispatch table will | |
14002 | be built at the end of the library package; otherwise we notify that | |
14003 | we cannot build the static dispatch table. | |
14004 | ||
14005 | 2007-09-26 Robert Dewar <dewar@adacore.com> | |
14006 | ||
14007 | * checks.adb, gnat1drv.adb, sem_util.ads: Improve warnings for address | |
14008 | overlays. | |
14009 | ||
14010 | * sem_ch13.ads, sem_ch13.adb: Improve warnings for address overlays | |
14011 | (Analyze_Record_Representation_Clause): Suppress junk warning for | |
14012 | missing component clause. | |
14013 | (Analyze_Attribute_Definition_Clause, case Address): Apply the special | |
14014 | tests for controlled type overlay to composites with controlled | |
14015 | components. | |
14016 | (Analyze_Record_Representation_Clause): Add reference for component name | |
14017 | ||
14018 | 2007-09-26 Javier Miranda <miranda@adacore.com> | |
14019 | Gary Dismukes <dismukes@adacore.com> | |
14020 | ||
14021 | * einfo.adb (Is_Thunk): New attribute applicable to subprograms. True | |
14022 | for thunks associated with interface types. | |
14023 | ||
14024 | * einfo.ads: Improve documentatation of Is_Internal | |
14025 | (Is_Thunk): New attribute applicable to subprograms. True for thunks | |
14026 | associated with interface types. | |
14027 | Extensive comment fixes regarding flags that appear in all entities. The | |
14028 | documentation is now consistent for all such flags (there were a number | |
14029 | of errors in the documentation in this regard). | |
14030 | ||
14031 | * exp_attr.adb (Expand_N_Attribute_Reference): Minor code cleanup. | |
14032 | ||
14033 | * exp_ch6.adb (Make_Build_In_Place_Call_*): Return immediately if any | |
14034 | of these procedures are passed a function call that already has | |
14035 | build-in-place actuals (testing new flag | |
14036 | Is_Expanded_Build_In_Place_Call). Set the flag on the function call in | |
14037 | the case where processing continues. | |
14038 | (Expand_Call): If the call is generated from a thunk body then we | |
14039 | propagate the extra actuals associated with the accessibility | |
14040 | level of the access type actuals. | |
14041 | ||
14042 | * sem_ch6.adb (Analyze_Subprogram_Body): Set the Protected_Formal field | |
14043 | of each extra formal of a protected operation to reference the | |
14044 | corresponding extra formal of the subprogram denoted by the | |
14045 | operation's Protected_Body_Subprogram. | |
9e81dbc7 | 14046 | |
68b72a44 AC |
14047 | * sinfo.ads, sinfo.adb (Is_Expanded_Build_In_Place_Call): New flag on |
14048 | N_Function_Call nodes. | |
14049 | ||
14050 | 2007-09-26 Robert Dewar <dewar@adacore.com> | |
14051 | ||
14052 | * exp_ch5.adb: Activate memmove type processing if debug flag d.s is set | |
14053 | ||
14054 | * debug.adb: Add d.s flag. | |
14055 | ||
14056 | 2007-09-26 Gary Dismukes <dismukes@adacore.com> | |
14057 | ||
14058 | * exp_dbug.adb (Debug_Renaming_Declaration): Set Is_Internal on the | |
14059 | debug variable so that it won't be initialized when pragma | |
14060 | Initialize_Scalars is in effect. | |
14061 | ||
14062 | 2007-09-26 Gary Dismukes <dismukes@adacore.com> | |
14063 | ||
14064 | * freeze.adb (Freeze_Entity): Remove check for preelaborable | |
14065 | initialization of a full view. This is moved to | |
14066 | Analyze_Package_Specification. | |
14067 | ||
14068 | * sem_ch7.adb (Analyze_Package_Specification): Add check for | |
14069 | preelaborable initialization of a full view in entity loop. | |
14070 | (Uninstall_Declarations): If entity is a use-visible compilation unit, | |
14071 | its child units are use-visible only if they are visible child units. | |
14072 | ||
14073 | * sem_util.adb (Is_Preelaborable_Expression): New function to determine | |
14074 | whether an expression can be used within a type declaration that | |
14075 | requires preelaborable init. | |
14076 | (Check_Components): Replace inline code that does partial checking for | |
14077 | preelaborable default expressions with call to | |
14078 | Is_Preelaborable_Expression. | |
14079 | (Has_Preelaborable_Initialization): In the case of a generic actual | |
14080 | subtype, (that is, Is_Generic_Actual is True), return the result of | |
14081 | applying Has_Preelaborable_Initialization to the generic actual's base | |
14082 | type. | |
14083 | ||
14084 | 2007-09-26 Hristian Kirtchev <kirtchev@adacore.com> | |
14085 | ||
14086 | * g-calend.adb (Has_53_Weeks): Rename to Last_Year_Has_53_Weeks. Add a | |
14087 | call to Jan_1_Day _Of_Week to optimize its performance. | |
14088 | (Is_Leap): Move the routine to the scope of Week_In_Year. | |
14089 | (Jan_1_Day_Of_Week): New routine in Week_In_Year which calculates the | |
14090 | weekday on which January 1 falls of Year - 1 and Year + 1. This function | |
14091 | avoids calling Time_Of and Split, thus making it more efficent. | |
14092 | (Week_In_Year): Reimplemented in oder to follow ISO 8601. | |
14093 | ||
14094 | * g-calend.ads (Week_In_Year): Change comment to reflect new | |
14095 | implementation. | |
14096 | ||
14097 | 2007-09-26 Emmanuel Briot <briot@adacore.com> | |
14098 | ||
14099 | * g-comlin.ads, g-comlin.adb (Command_Line_Configuration, | |
14100 | Command_Line): New types | |
14101 | (Define_Alias, Define_Prefix, Free): New subprograms. These provide | |
14102 | support for defining how switches can be grouped on a command line (as | |
14103 | is the case for -gnatw... for GNAT), and how simple switches can be | |
14104 | used as aliases for more complex switches (-gnatwa is same as | |
14105 | -gnatwbcef...) | |
14106 | (Set_Command_Line, Add_Switch, Remove_Switch): New subprogram | |
14107 | (Start, Current_*): New subprograms | |
14108 | Added support for parsing an array of strings in addition to the real | |
14109 | command line. | |
14110 | (Opt_Parser, Opt_Parser_Data): New type. As a result, some types had to | |
14111 | be moved from the body to the private part of the spec. | |
14112 | (*): All subprograms now have an extra parameter with default value to | |
14113 | specify which parser should be used. For backward compatibility, it | |
14114 | defaults to parsing the command line of the application. They were also | |
14115 | modified to properly handle cases where each of the argument does not | |
14116 | start at index 1 (which is always true for Ada.Command_Line, but not | |
14117 | when processing any Argument_List). | |
14118 | (Free): New subprogram | |
14119 | (Internal_Initialize_Option_Scan, Find_Longuest_Matching_Switch, | |
14120 | Argument): New subprograms | |
14121 | (Switch_Parameter_Type): New enum, which clarifies the code. The extra | |
14122 | special characters like ':', '=',... are now handled in a single place, | |
14123 | which makes the code more extensible eventually. | |
14124 | (Getopt, Full_Switch): When the switch was returned as part of the | |
14125 | special character '*', make sure it is prepended by the switch character | |
14126 | ('-' in general), so that the application knows whether "foo" or "-foo" | |
14127 | was specified on the command line. | |
14128 | ||
14129 | 2007-09-26 Florian Villoing <villoing@adacore.com> | |
14130 | ||
14131 | * g-dirope.adb (Remove_Dir): In case we are removing directories | |
14132 | recursively, make sure that if an exception is raised during the | |
14133 | processing, the current working directory is reset to its initial | |
14134 | value before propagating the exception. | |
14135 | ||
14136 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14137 | ||
14138 | * gnatbind.adb: If there are several ALI files specified and there is | |
14139 | a main program to bind, the first ALI is expected to contain the main | |
14140 | subprogram and the names of the binder generated files will be derived | |
14141 | from the first ALI file name. | |
14142 | (Gnatbind): Fix insertion character in invocation of Error_Msg | |
14143 | ||
14144 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14145 | ||
14146 | * gnatcmd.adb (Check_Files): Do not include sources that have been | |
14147 | removed by attributes Exclude_Source_Files or Locally_Removed_Files. | |
14148 | ||
14149 | 2007-09-26 Ed Schonberg <schonberg@adacore.com> | |
14150 | ||
14151 | * lib-xref.ads, lib-xref.adb: The entry for array types now carries | |
14152 | information about each of its index types, following the type | |
14153 | reference for its component type. | |
14154 | ||
14155 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14156 | ||
14157 | * make.adb: (Kill): New procedure (__gnat_kill imported) | |
14158 | (Running_Compile, Outstanding_Compiles): Global variables that | |
14159 | were previously local to procedure Compile_Sources. | |
14160 | (Sigint_Intercepted): Send signal SIGINT to all outstanding | |
14161 | compilation processes. | |
14162 | ||
14163 | (Gnatmake): If project files are used, create the mapping of all the | |
14164 | sources, so that the correct paths will be found. | |
14165 | ||
14166 | * prj-env.ads, prj-env.adb (Create_Mapping): New procedure | |
14167 | ||
14168 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14169 | ||
14170 | * makeutl.ads (Main_Config_Project): Moved to gpr_util.ads | |
14171 | ||
14172 | * prj.ads, prj.adb (Default_Language): Remove function, no longer used | |
14173 | Replace components Compiler_Min_Options and Binder_Min_Options with | |
14174 | Compiler_Required_Switches and Binder_Required_Switches in record | |
14175 | Language_Config. | |
14176 | Remove components Default_Language and Config in Project_Tree_Data, | |
14177 | no longer used. | |
14178 | ||
14179 | * prj-attr.adb: New attributes Required_Switches (<language>) in | |
14180 | packages Compiler and Binder. | |
14181 | ||
14182 | * prj-nmsc.adb: Major rewrite of the processing of configuration | |
14183 | attributes for gprbuild. No impact on GNAT tools. | |
14184 | ||
14185 | * prj-proc.ads, prj-proc.adb (Process_Project_Tree_Phase_2): No longer | |
14186 | process configuration attributes: this is done in Prj.Nmsc.Check. | |
14187 | (Recursive_Process): Make a full copy of packages inherited from project | |
14188 | being extended, instead of a shallow copy. | |
14189 | (Process_Project_Tree_Phase_1): New procedure | |
14190 | (Process_Project_Tree_Phase_1): New procedure | |
14191 | (Process): Implementation now uses the two new procedures | |
14192 | ||
14193 | * prj-util.adb (Executable_Of): Get the suffix and the default suffix | |
14194 | from the project config, not the tree config that no longer exists. | |
14195 | ||
14196 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14197 | ||
14198 | * Make-lang.in: Update dependencies.. | |
14199 | ||
14200 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14201 | ||
14202 | * osint.adb, osint.ads: Minor reformatting | |
14203 | ||
14204 | * osint-b.adb, osint-b.ads (Set_Current_File_Name_Index): New procedure | |
14205 | ||
14206 | 2007-09-26 Gary Dismukes <dismukes@adacore.com> | |
14207 | ||
14208 | * par-ch4.adb (P_Record_Or_Array_Component_Association): Change Ada 95 | |
14209 | message to cite use of <> in aggregate component associations rather | |
14210 | than wrongly indicating use of limited aggregates. | |
14211 | ||
14212 | 2007-09-26 Robert Dewar <dewar@adacore.com> | |
14213 | ||
14214 | * sem_attr.adb (Analyze_Access_Attribute): Fix missing set of | |
14215 | Address_Taken. | |
14216 | ||
14217 | 2007-09-26 Ed Schonberg <schonberg@adacore.com> | |
14218 | ||
14219 | * sem_ch3.adb (Derive_Subprograms): If the interface parent is a direct | |
14220 | ancestor of the derived type, the operations are inherited from the | |
14221 | primary dispatch table of the parent. | |
14222 | (OK_For_Limited_Init_In_05): Remove old comment. Reject in-place calls | |
14223 | when the context is an explicit type conversion. | |
14224 | ||
14225 | 2007-09-26 Ed Schonberg <schonberg@adacore.com> | |
14226 | ||
14227 | * sem_ch4.adb (Analyze_Qualified_Expression): Apply name resolution | |
14228 | rule for qualified expressions properly, to detect improper conversions | |
14229 | and resolve some cases of overloading. | |
14230 | ||
14231 | 2007-09-26 Ed Schonberg <schonberg@adacore.com> | |
14232 | ||
14233 | * sem_res.adb (Resolve_Call): If the call is dispatching, generate the | |
14234 | proper kind of reference to the primitive operation, for better source | |
14235 | navigation. | |
14236 | (Valid_Conversion): A tagged conversion is legal if both operands are | |
14237 | tagged. | |
14238 | ||
14239 | 2007-09-26 Robert Dewar <dewar@adacore.com> | |
14240 | ||
14241 | * sem_warn.adb (Check_References): Catch more cases of unreferenced | |
14242 | packages. | |
14243 | ||
14244 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14245 | ||
14246 | * snames.adb, snames.ads: Change Include_Option to Include_Switches | |
14247 | ||
14248 | 2007-09-26 Robert Dewar <dewar@adacore.com> | |
14249 | ||
14250 | * s-wchstw.adb: provide messages for run time unit exceptions | |
14251 | ||
14252 | * a-witeio.adb: Minor reformatting | |
14253 | ||
14254 | * exp_ch13.adb: Minor reformatting | |
14255 | ||
14256 | 2007-09-26 Sergey Rybin <rybin@adacore.com> | |
14257 | ||
14258 | * vms_data.ads: Revise gnatmetric qualifiers. | |
14259 | Add qualified for the new gnatbind option '-y' | |
14260 | ||
14261 | * gnat_ugn.texi: Revise the gnatmetric section. | |
14262 | Add entry for new gnatbind option '-y'. | |
14263 | ||
14264 | * gnat_rm.texi: Minor spelling correction. | |
14265 | Document restriction on overlaying controlled types | |
14266 | ||
14267 | 2007-09-26 Vincent Celier <celier@adacore.com> | |
14268 | ||
14269 | * makegpr.adb (Link_Executables): Do not fail when the root project has | |
14270 | no sources, but is an extending project. | |
14271 | ||
0a86bcc9 EB |
14272 | 2007-09-25 Eric Botcazou <ebotcazou@adacore.com> |
14273 | ||
14274 | * trans.c: Fix misplaced #define. | |
14275 | ||
b235734c EB |
14276 | 2007-09-22 Eric Botcazou <ebotcazou@adacore.com> |
14277 | ||
14278 | * utils2.c (build_unary_op) <ADDR_EXPR> [INDIRECT_REF]: Propagate | |
14279 | the TYPE_REF_CAN_ALIAS_ALL flag to the result. | |
14280 | ||
97237784 OH |
14281 | 2007-09-21 Olivier Hainque <hainque@adacore.com> |
14282 | ||
14283 | * utils.c (type_for_nonaliased_component_p): Return false for | |
14284 | all AGGREGATE_TYPEs. | |
14285 | ||
2adde4ff EB |
14286 | 2007-09-17 Eric Botcazou <ebotcazou@adacore.com> |
14287 | ||
14288 | * decl.c (gnat_to_gnu_entity) <object>: Make again the type of an | |
14289 | object covered by 13.3(19) volatile. | |
14290 | ||
b693daa7 EB |
14291 | 2007-09-12 Eric Botcazou <ebotcazou@adacore.com> |
14292 | ||
14293 | PR ada/26797 | |
14294 | PR ada/32407 | |
14295 | * utils.c (unchecked_convert): Use a subtype as the intermediate type | |
14296 | in the special VIEW_CONVERT_EXPR case. | |
14297 | ||
82da9a90 AC |
14298 | 2007-09-12 Robert Dewar <dewar@adacore.com> |
14299 | ||
14300 | * types.ads, a-charac.ads, freeze.adb: Minor reformatting. | |
14301 | ||
14302 | * a-except.adb, g-hesora.adb, g-speche.adb, lib.adb, lib.ads, | |
14303 | lib-load.adb, lib-writ.adb, s-assert.adb, s-carun8.adb, | |
14304 | s-casuti.adb, s-crc32.adb, s-exctab.adb, s-htable.adb, s-imgenu.adb, | |
14305 | s-mastop.adb, s-memory.adb, s-memory.ads, s-secsta.adb, s-soflin.adb, | |
14306 | s-sopco3.adb, s-sopco4.adb, s-sopco5.adb, s-stache.adb, s-stalib.adb, | |
14307 | s-stoele.adb, s-strcom.adb, s-strops.adb, s-traceb.adb, s-traent.adb, | |
14308 | s-wchcnv.adb, s-wchcon.adb, s-wchjis.adb, s-addope.adb, s-except.adb, | |
160c5065 | 14309 | s-os_lib.adb, s-string.adb, s-utf_32.adb, a-elchha.adb, |
9e81dbc7 AS |
14310 | a-chlat1.ads, a-elchha.ads, a-except.ads, g-hesora.ads, g-htable.ads, |
14311 | g-speche.ads, par-prag.adb, restrict.adb, restrict.ads, s-assert.ads, | |
14312 | s-carun8.ads, s-casuti.ads, s-crc32.ads, sem_ch11.adb, sem_prag.adb, | |
14313 | s-exctab.ads, s-htable.ads, s-imgenu.ads, s-mastop.ads, snames.adb, | |
14314 | snames.ads, snames.h, s-purexc.ads, s-secsta.ads, s-soflin.ads, | |
14315 | s-sopco3.ads, s-sopco4.ads, s-sopco5.ads, s-stache.ads, s-stalib.ads, | |
14316 | s-stoele.ads, s-strcom.ads, s-strops.ads, s-traceb.ads, s-traent.ads, | |
14317 | s-unstyp.ads, s-wchcnv.ads, s-wchcon.ads, s-wchjis.ads, s-addope.ads, | |
82da9a90 AC |
14318 | s-except.ads, s-os_lib.ads, s-string.ads, s-utf_32.ads: Implement |
14319 | pragma Compiler_Unit and adds it to relevant library units. | |
14320 | ||
14321 | 2007-09-12 Ed Schonberg <schonberg@adacore.com> | |
14322 | ||
14323 | * sem_aggr.adb (Resolve_Record_Aggregate): An others association with | |
14324 | a box need not correspond to any component. | |
14325 | ||
14326 | 2007-09-12 Robert Dewar <dewar@adacore.com> | |
14327 | ||
14328 | * g-thread.ads: Document use of "with GNAT.Threads" to ensure loading | |
14329 | the tasking version of the Ada run time when foreign threads are | |
14330 | present and there are no explicit Ada tasks or tasking constructs. | |
14331 | ||
14332 | * gnat_rm.texi: Clarify documentation of GNAT.Threads. | |
14333 | ||
14334 | 2007-09-12 Hristian Kirtchev <kirtchev@adacore.com> | |
14335 | ||
14336 | * bindusg.adb (Display): Correct comment for switch -X. Add a line for | |
14337 | the usage of switch -y. | |
14338 | ||
14339 | * switch-b.adb (Scan_Binder_Switches): Set flag Leap_Seconds_Support | |
14340 | when switch -y is present. | |
14341 | ||
14342 | * opt.ads: Add binder flag Leap_Seconds_Support used to enable/disable | |
14343 | leap seconds in Ada.Calendar and its children. | |
14344 | ||
14345 | 2007-09-12 Jose Ruiz <ruiz@adacore.com> | |
14346 | ||
14347 | * a-extiti.ads (Timer): The discriminant is a "not null access | |
14348 | constant" in the Reference Manual. | |
14349 | (Cancel_Handler): Cancelled is an out parameter in the Reference Manual. | |
14350 | ||
14351 | 2007-09-12 Robert Dewar <dewar@adacore.com> | |
14352 | ||
14353 | * a-swuwha.adb: Remove junk RM header | |
14354 | ||
14355 | 2007-09-12 Vincent Celier <celier@adacore.com> | |
14356 | ||
14357 | * g-bytswa-x86.adb (Swap2, Swap4, Swap8): Remove explicit "in" mode | |
14358 | indicator | |
14359 | ||
14360 | * g-bytswa.ads: Minor reformatting | |
14361 | ||
14362 | 2007-09-12 Thomas Quinot <quinot@adacore.com> | |
14363 | ||
9e81dbc7 | 14364 | * g-soccon-solaris-64.ads, g-soccon-hpux-ia64.ads: |
82da9a90 AC |
14365 | Add new constant Thread_Blocking_IO, always True by default, set False |
14366 | on a per-runtime basis. | |
14367 | (Need_Netdb_Buffer): New constant. | |
14368 | ||
14369 | 2007-09-12 Arnaud Charlet <charlet@adacore.com> | |
14370 | ||
14371 | * s-dsaser.ads (Get_Local_Partition_Id, Get_Passive_Partition_Id): | |
14372 | Added renames for corresponding functions in System.Partition_Interface. | |
14373 | ||
14374 | 2007-09-12 Doug Rupp <rupp@adacore.com> | |
14375 | ||
14376 | * Makefile.in: Remove VMS specific System.CRTL packages which are no | |
14377 | longer needed. | |
14378 | ||
14379 | * s-crtl-vms64.ads: Removed. | |
14380 | ||
09528ed9 OH |
14381 | 2007-09-12 Olivier Hainque <hainque@adacore.com> |
14382 | ||
14383 | * decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: For a subtype | |
14384 | with discriminant constraints, generalize the code for BIT_FIELDs | |
14385 | to PACKED fields of constant size and propagate DECL_PACKED. | |
14386 | ||
fa89b6ec EB |
14387 | 2007-09-11 Eric Botcazou <ebotcazou@adacore.com> |
14388 | ||
14389 | * decl.c (array_type_has_nonaliased_component): New predicate. | |
14390 | (gnat_to_gnu_field) <E_Array_Type>: Invoke the above predicate to | |
14391 | set the TYPE_NONALIASED_COMPONENT flag on the type. | |
14392 | <E_Array_Subtype>: Likewise. | |
14393 | * gigi.h (type_for_nonaliased_component_p): Declare. | |
14394 | * utils.c (type_for_nonaliased_component_p): New predicate. | |
14395 | (create_field_decl): Invoke the above predicate to set the | |
14396 | DECL_NONADDRESSABLE_P flag on the field. | |
14397 | ||
e18d6a15 JM |
14398 | 2007-09-11 Javier Miranda <miranda@adacore.com> |
14399 | ||
14400 | * einfo.ads, einfo.adb (Dispatch_Table_Wrapper): New attribute. Present | |
14401 | in library level record type entities if we are generating statically | |
14402 | allocated dispatch tables. | |
14403 | ||
14404 | * exp_disp.adb (Make_Tags/Make_DT): Replace previous code | |
14405 | importing/exporting the _tag declaration by new code | |
14406 | importing/exporting the dispatch table wrapper. This change allows us | |
14407 | to statically allocate of the TSD. | |
14408 | (Make_DT.Export_DT): New procedure. | |
14409 | (Build_Static_DT): New function. | |
14410 | (Has_DT): New function. | |
14411 | ||
14412 | * freeze.adb (Freeze_Static_Object): Code cleanup: Do not reset flags | |
14413 | True_Constant and Current_Value. Required to statically | |
14414 | allocate the dispatch tables. | |
14415 | (Check_Allocator): Make function iterative instead of recursive. | |
14416 | Also return inner allocator node, when present, so that we do not have | |
14417 | to look for that node again in the caller. | |
14418 | ||
9e94c78f | 14419 | 2007-09-11 Jan Hubicka <jh@suse.cz> |
e89d6010 JH |
14420 | |
14421 | * misc.c (gnat_expand_body): Kill. | |
14422 | (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill. | |
14423 | ||
281b604e AC |
14424 | 2007-09-10 Robert Dewar <dewar@adacore.com> |
14425 | ||
14426 | * exp_atag.ads, exp_atag.adb, mlib-tgt-tru64.adb, mlib-tgt-aix.adb, | |
14427 | mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb, | |
14428 | mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, | |
14429 | mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb, ali.adb, ali.ads, | |
14430 | ali-util.adb, ali-util.ads, atree.h, back_end.adb, back_end.ads, | |
14431 | bcheck.adb, bcheck.ads, binde.adb, binde.ads, binderr.adb, binderr.ads, | |
14432 | bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads, butil.adb, | |
14433 | butil.ads, checks.adb, checks.ads, clean.adb, clean.ads, comperr.adb, | |
14434 | comperr.ads, cstand.adb, cstand.ads, debug_a.adb, debug_a.ads, | |
14435 | elists.h, errout.adb, erroutc.ads, errutil.adb, errutil.ads, | |
14436 | err_vars.ads, eval_fat.adb, eval_fat.ads, exp_sel.ads, exp_sel.adb, | |
14437 | exp_aggr.adb, exp_aggr.ads, expander.adb, expander.ads, exp_attr.ads, | |
14438 | exp_ch10.ads, exp_ch11.adb, exp_ch12.adb, exp_ch12.ads, exp_ch13.adb, | |
14439 | exp_ch13.ads, exp_ch2.adb, exp_ch2.ads, exp_ch3.ads, exp_ch4.adb, | |
14440 | exp_ch4.ads, exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads, | |
14441 | exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads, exp_ch9.adb, | |
14442 | exp_ch9.ads, exp_code.adb, exp_code.ads, exp_dbug.adb, exp_dbug.ads, | |
14443 | exp_disp.ads, exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads, | |
14444 | exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads, exp_pakd.adb, | |
14445 | exp_pakd.ads, exp_prag.adb, exp_prag.ads, exp_smem.adb, exp_strm.adb, | |
14446 | exp_strm.ads, exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads, | |
14447 | exp_vfpt.adb, exp_vfpt.ads, fmap.adb, fmap.ads, fname-sf.adb, | |
14448 | fname-sf.ads, fname-uf.adb, fname-uf.ads, frontend.adb, frontend.ads, | |
14449 | get_targ.adb, get_targ.ads, gnat1drv.adb, gnat1drv.ads, gnatbind.adb, | |
14450 | gnatbind.ads, gnatbl.c, gnatchop.adb, gnatclean.adb, gnatcmd.adb, | |
14451 | gnatcmd.ads, gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads, | |
14452 | gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb, gnatls.ads, | |
14453 | gnatmake.adb, gnatmake.ads, gnatmem.adb, gnatname.adb, gnatname.ads, | |
14454 | gnatprep.adb, gnatprep.ads, gnatsym.adb, gnatxref.adb, | |
14455 | gprep.adb, gprep.ads, hlo.adb, hlo.ads, impunit.adb, impunit.ads, | |
14456 | inline.adb, inline.ads, itypes.adb, itypes.ads, layout.adb, layout.ads, | |
14457 | lib-load.adb, lib-load.ads, lib-util.adb, lib-util.ads, lib-writ.adb, | |
14458 | lib-writ.ads, lib-xref.adb, lib-xref.ads, live.adb, live.ads, | |
14459 | make.adb, make.ads, makeutl.ads, makeutl.adb, makeusg.adb, makeusg.ads, | |
14460 | mdll.adb, mdll.ads, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, | |
14461 | mdll-utl.ads, memroot.adb, memroot.ads, mlib.adb, mlib.ads, | |
14462 | mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb, | |
14463 | mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, namet.h, nmake.adt, | |
14464 | osint.adb, osint.ads, osint-b.adb, osint-b.ads, osint-c.adb, | |
14465 | osint-c.ads, osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads, | |
14466 | par.adb, par.ads, par-ch10.adb, par-ch11.adb, par-ch12.adb, | |
14467 | par-ch13.adb, par-ch2.adb, par-ch3.adb, par-ch4.adb, par-ch5.adb, | |
14468 | par-ch6.adb, par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb, | |
14469 | par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb, par-tchk.adb, | |
14470 | par-util.adb, prep.adb, prep.ads, prepcomp.adb, prepcomp.ads, | |
14471 | prj.adb, prj.ads, prj-attr.adb, prj-attr.ads, prj-com.ads, | |
14472 | prj-dect.adb, prj-dect.ads, prj-err.adb, prj-err.ads, prj-ext.adb, | |
14473 | prj-ext.ads, prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads, | |
14474 | prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads, | |
14475 | prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads, | |
14476 | prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads, | |
14477 | prj-util.adb, prj-util.ads, restrict.adb, restrict.ads, | |
14478 | rtsfind.adb, rtsfind.ads, scn.adb, scn.ads, | |
14479 | scng.adb, scng.ads, sdefault.ads, sem.ads, sem_aggr.ads, sem_attr.adb, | |
14480 | sem_case.adb, sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb, | |
14481 | sem_ch10.ads, sem_ch11.adb, sem_ch11.ads, sem_ch12.ads, sem_ch13.adb, | |
14482 | sem_ch13.ads, sem_ch2.adb, sem_ch2.ads, sem_ch3.adb, sem_ch3.ads, | |
14483 | sem_ch4.ads, sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads, | |
14484 | sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, | |
14485 | sem_ch9.ads, sem_disp.adb, sem_disp.ads, sem_dist.adb, sem_dist.ads, | |
14486 | sem_elab.adb, sem_elab.ads, sem_elim.adb, sem_elim.ads, sem_eval.adb, | |
14487 | sem_eval.ads, sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads, | |
14488 | sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads, sem_res.adb, | |
14489 | sem_res.ads, sem_smem.adb, sem_smem.ads, sem_type.adb, sem_type.ads, | |
14490 | sem_util.adb, sem_util.ads, sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, | |
14491 | sem_warn.ads, sfn_scan.ads, sinfo-cn.adb, sinfo-cn.ads, sinput-c.adb, | |
14492 | sinput-c.ads, sinput-d.adb, sinput-d.ads, sinput-l.adb, sinput-l.ads, | |
14493 | sinput-p.adb, sinput-p.ads, snames.h, sprint.adb, sprint.ads, | |
14494 | stringt.h, style.ads, styleg.adb, styleg.ads, styleg-c.adb, | |
14495 | styleg-c.ads, stylesw.adb, stylesw.ads, switch.adb, switch.ads, | |
14496 | switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb, | |
14497 | switch-m.ads, symbols.adb, symbols.ads, targparm.adb, tbuild.adb, | |
14498 | tbuild.ads, tempdir.adb, tempdir.ads, tree_gen.adb, tree_gen.ads, | |
14499 | treepr.adb, treepr.ads, treeprs.adt, ttypef.ads, ttypes.ads, | |
14500 | types.h, uintp.h, urealp.h, usage.adb, usage.ads, | |
14501 | validsw.adb, validsw.ads, vxaddr2line.adb, xeinfo.adb, xnmake.adb, | |
14502 | xref_lib.adb, xref_lib.ads, xr_tabls.adb, xr_tabls.ads, xsinfo.adb, | |
14503 | xtreeprs.adb, xsnames.adb, vms_conv.ads, vms_conv.adb, xgnatugn.adb, | |
14504 | gprmake.adb, makegpr.ads, makegpr.adb, prj-attr-pm.ads, prj-attr-pm.adb, | |
14505 | mlib-tgt-lynxos.adb, mlib-tgt-darwin.adb, symbols-vms.adb, | |
14506 | symbols-processing-vms-alpha.adb, symbols-processing-vms-ia64.adb, | |
14507 | mlib-tgt-specific.adb, mlib-tgt-specific.ads, mlib-tgt-vms.adb, | |
14508 | mlib-tgt-vms.ads: Replace headers with GPL v3 headers. | |
14509 | ||
14510 | 2007-09-10 Emmanuel Briot <briot@adacore.com> | |
14511 | ||
14512 | * s-regpat.adb (Parse_Character_Class): Fix handling of empty character | |
14513 | classes ("[]"). | |
14514 | ||
14515 | 2007-09-10 Vasiliy Fofanov <fofanov@adacore.com> | |
14516 | ||
14517 | * adaint.c (__gnat_translate_vms): new function. | |
14518 | ||
14519 | 2007-09-10 Gary Dismukes <dismukes@adacore.com> | |
14520 | Thomas Quinot <quinot@adacore.com> | |
14521 | ||
14522 | * exp_ch3.adb (Predef_Spec_Or_Body): When the type is abstract, only | |
14523 | create an abstract subprogram in the case of 'Input. For 'Output we now | |
14524 | create a real spec/body when the type is abstract, since it can | |
14525 | potentially be called. | |
14526 | (Predefined_Primitive_Bodies): Now allow the creation of a predefined | |
14527 | body for 'Output when the type is abstract (only the creation of the | |
14528 | body for 'Input is excluded when the type is abstract). | |
14529 | (Stream_Operation_OK): Add an additional condition in the return | |
14530 | statement, so that False will be returned for TTS_Stream_Input if the | |
14531 | associated tagged type is an abstract extension. Add comments for | |
14532 | return statement. | |
14533 | (Expand_N_Object_Declaration): For the case of a shared passive | |
14534 | variable, insert init proc call only after the shared variable | |
14535 | procedures have been processed, because the IP call needs to undergo | |
14536 | shared passive variable reference expansion, which requires these | |
14537 | procedures to be available (and elaborated). | |
14538 | ||
14539 | 2007-09-10 Vincent Celier <celier@adacore.com> | |
14540 | ||
14541 | * prj-env.ads, prj-env.adb (Create_Mapping_File (Language)): Remove | |
14542 | parameter Runtime_Project. | |
14543 | ||
14544 | 2007-09-10 Ed Schonberg <schonberg@adacore.com> | |
14545 | ||
14546 | * sem_aggr.adb (Build_Record_Aggr_Code): If an aggregate component is | |
14547 | given a box association, the type of the component is discriminated, | |
14548 | and the value of the discriminant is the discriminant of the enclosing | |
14549 | type, retrieve its value from the aggregate itself, where it must have | |
14550 | been supplied. | |
14551 | ||
14552 | * sem_ch4.adb (Analyze_One_Call): Further refinement to previous fix, | |
14553 | to remove other spurious ambiguities on arithmetic operations involving | |
14554 | literals and addresses, on systems where Address is a visible integer | |
14555 | type, when the operator is called in functional notation. | |
14556 | (Try_Primitive_Operation): Within an instance, a call in prefixed form | |
14557 | is legal when the types match, even if the operation is currently | |
14558 | hidden. | |
14559 | ||
14560 | 2007-09-10 Ed Schonberg <schonberg@adacore.com> | |
14561 | ||
14562 | * sem_ch12.adb (Build_Local_Package): A formal package with no | |
14563 | associations is legal if all formals have defaults. It is not | |
14564 | equivalent to a formal declared with a box. | |
14565 | ||
14566 | 2007-09-10 Sergey Rybin <rybin@adacore.com> | |
14567 | ||
14568 | * vms_data.ads: Add qualifier for the new gnatmetric '-lratio' option | |
14569 | ||
14570 | 2007-09-10 Sergey Rybin <rybin@adacore.com> | |
14571 | ||
14572 | * gnat_ugn.texi: Add description of the new '-lratio' option | |
14573 | Update 7.3.1 section about availability of the feature. | |
14574 | ||
14575 | 2007-09-10 Thomas Quinot <quinot@adacore.com> | |
14576 | ||
14577 | * exp_smem.ads, exp_smem.adb (Make_Shared_Var_Procs): Return last | |
14578 | inserted node. | |
14579 | ||
14580 | 2007-09-10 Olivier Hainque <hainque@adacore.com> | |
14581 | ||
14582 | * Makefile.in: (mips-irix section): Activate build of libgmem. | |
14583 | ||
a56955b1 EB |
14584 | 2007-09-10 Eric Botcazou <ebotcazou@adacore.com> |
14585 | ||
14586 | * a-numaux-x86.adb (Logarithmic_Pow): Do not silently clobber | |
14587 | x87 registers. | |
14588 | ||
c03550f6 EB |
14589 | 2007-09-10 Eric Botcazou <ebotcazou@adacore.com> |
14590 | ||
14591 | * decl.c (gnat_to_gnu_entity) <object>: Deal with variable built for | |
14592 | a debug renaming declaration specially. | |
14593 | ||
79646678 EB |
14594 | 2007-09-08 Eric Botcazou <ebotcazou@adacore.com> |
14595 | ||
14596 | * decl.c (gnat_to_gnu_entity) <Object>: Simplify the condition under | |
14597 | which a constant renaming is treated as a normal object declaration. | |
14598 | * trans.c (lvalue_required_p) <N_Slice>: New case, extracted from | |
14599 | the N_Indexed_Component case. | |
14600 | <N_Indexed_Component>: Fall through to above case. | |
14601 | <N_Object_Renaming_Declaration>: Return true for all composite types. | |
14602 | ||
d9e161ce EB |
14603 | 2007-09-08 Eric Botcazou <ebotcazou@adacore.com> |
14604 | ||
14605 | * decl.c (make_packable_type): If the new type has been given BLKmode, | |
14606 | try again to get an integral mode for it. | |
14607 | ||
0ab29e91 | 14608 | 2007-09-07 Eric Botcazou <ebotcazou@adacore.com> |
6ef9a246 | 14609 | |
0ab29e91 | 14610 | Re-apply accidentally reverted change: |
6ef9a246 | 14611 | |
0ab29e91 | 14612 | 2007-02-07 Andreas Krebbel <krebbel1@de.ibm.com> |
6ef9a246 | 14613 | |
0ab29e91 | 14614 | * raise-gcc.c (get_region_description_for, get_call_site_action_for, |
9e81dbc7 | 14615 | get_action_description_for): Replace _Unwind_Word with _uleb128_t |
0ab29e91 | 14616 | and _Unwind_SWord with _sleb128_t. |
4b459ae4 | 14617 | |
38f1f8cb EB |
14618 | 2007-09-06 Eric Botcazou <ebotcazou@adacore.com> |
14619 | ||
14620 | * trans.c (convert_with_check): Update call to real_2expN. | |
14621 | ||
db2960f4 SL |
14622 | 2007-09-05 Sandra Loosemore <sandra@codesourcery.com> |
14623 | ||
14624 | * trans.c (Compilation_unit_to_gnu): Use set_cfun. | |
14625 | * utils.c (end_subprog_body): Likewise. | |
14626 | ||
d70c0bd6 NC |
14627 | 2007-09-03 Nick Clifton <nickc@redhat.com> |
14628 | ||
14629 | * Make-lang.in: Change copyright header to refer to version 3 of | |
14630 | the GNU General Public License and to point readers at the | |
14631 | COPYING3 file and the FSF's license web page. | |
14632 | * ada-tree.def, nmake.adt, nlists.h, snames.h, utils.c, | |
14633 | Makefile.rtl, Makefile.in, config-lang.in, uintp.h, urealp.h, | |
14634 | namet.h, decl.c, utils2.c, lang.opt, elists.h, atree.h, types.h, | |
14635 | treeprs.adt, lang-specs.h, cuintp.c, stringt.h, gnatbl.c: | |
14636 | Likewise. | |
14637 | ||
8a26ebb6 AC |
14638 | 2007-08-31 Vincent Celier <celier@adacore.com> |
14639 | ||
14640 | PR ada/4720 | |
14641 | ||
9e81dbc7 | 14642 | * gnatchop.adb, gnatfind.adb, gnatlink.adb, gnatls.adb, |
8a26ebb6 AC |
14643 | gnatname.adb, gnatxref.adb, gprep.adb, clean.adb gnatbind.adb |
14644 | (Check_Version_And_Help): New procedure in package Switch to process | |
14645 | switches --version and --help. | |
14646 | Use Check_Version_And_Help in GNAT tools | |
14647 | ||
14648 | * make.adb: Ditto. | |
14649 | (Compile_Sources): Make sure that sources that are "excluded" are not | |
14650 | compiled. | |
14651 | (Gnatmake): Do not issue -aO. to gnatbind and only issue -I- if a | |
14652 | project file is used. | |
14653 | (Version_Switch): Remove, moved to Switch | |
14654 | (Help_Switch): Remove, moved to Switch | |
14655 | (Display_Version): Remove, moved to Switch | |
14656 | ||
14657 | * switch.ads, switch.adb (Check_Version_And_Help): New procedure in | |
14658 | package Switch to process switches --version and --help. | |
14659 | (Display_Version): New procedure | |
14660 | ||
14661 | * gnatvsn.ads, gnatvsn.adb (Copyright_Holder): New function. | |
14662 | ||
14663 | 2007-08-31 Javier Miranda <miranda@adacore.com> | |
14664 | ||
14665 | * a-tags.adb (Internal_Tag): Protect the run-time against wrong | |
14666 | internal tags. | |
14667 | ||
14668 | 2007-08-31 Hristian Kirtchev <kirtchev@adacore.com> | |
14669 | ||
14670 | * checks.adb (In_Declarative_Region_Of_Subprogram_Body): New routine. | |
14671 | (Mark_Non_Null): If the node for which we just generated an access check | |
14672 | is a reference to an *in* parameter and the reference appears in the | |
14673 | declarative part of a subprogram body, mark the node as known non null. | |
14674 | ||
14675 | 2007-08-31 Hristian Kirtchev <kirtchev@adacore.com> | |
14676 | ||
14677 | * einfo.ads, einfo.adb: New flag Is_Raised (Flag224). Update the | |
14678 | structure of E_Exception to reflect the new flag. | |
14679 | (Is_Raised, Set_Is_Raised): New inlined routines. | |
14680 | Update the usage of available flag to reflect the addition of Is_Raised. | |
14681 | (Is_Raised, Set_Is_Raised): Bodies of new routines. | |
14682 | (Write_Entity_Flags): Write the status of flag Is_Raised. | |
14683 | (Is_Descendent_Of_Address): New entity flag, to simplify handling of | |
14684 | spurious ambiguities when integer literals appear in the context of an | |
14685 | address type that is a visible integer type. | |
14686 | ||
14687 | * sem_ch11.adb (Analyze_Exception_Handler): Add code to warn on local | |
14688 | exceptions never being raised. | |
14689 | (Analyze_Raise_Statement): When analyzing an exception, mark it as being | |
14690 | explicitly raised. | |
14691 | ||
14692 | 2007-08-31 Javier Miranda <miranda@adacore.com> | |
14693 | ||
14694 | * exp_ch11.adb (Expand_At_End_Handler): Avoid generation of raise | |
14695 | statement when compiling under restriction No_Exceptions_Proparation. | |
14696 | ||
14697 | 2007-08-31 Ed Schonberg <schonberg@adacore.com> | |
14698 | ||
14699 | * exp_ch3.adb (Build_Record_Init_Proc): If there is a static | |
14700 | initialization aggregate for the type, generate itype references for | |
14701 | thetypes of its (sub)components, to prevent out-of-scope errors in gigi. | |
14702 | ||
14703 | 2007-08-31 Gary Dismukes <dismukes@adacore.com> | |
14704 | ||
14705 | * exp_ch8.adb (Expand_N_Package_Renaming_Declaration): In the case of a | |
14706 | library-level package renaming, pass the declaration associated with | |
14707 | the renaming's special debug variable to Qualify_Entity_Names to ensure | |
14708 | that its encoded name is properly qualified. | |
14709 | ||
14710 | * exp_dbug.adb (Qualify_All_Entity_Names): Check for a variable entity | |
14711 | occurring in the list of entities to qualify, and do not attempt to | |
14712 | traverse an entity list in that case. Variables associated with | |
14713 | ` library-level package renamings can now occur in the table. | |
14714 | ||
14715 | * exp_dbug.ads: Revise documentation of the encoding for renaming | |
14716 | declarations. | |
14717 | ||
14718 | 2007-08-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
14719 | ||
14720 | * layout.adb (Layout_Type): Use Underlying_Type to determine whether an | |
14721 | access type points to an unconstrained array. | |
14722 | ||
14723 | 2007-08-31 Hristian Kirtchev <kirtchev@adacore.com> | |
14724 | ||
9e81dbc7 | 14725 | * restrict.adb, namet.adb, par-util.adb: Remove redundant type |
8a26ebb6 AC |
14726 | conversion. |
14727 | ||
14728 | * sem_res.adb (Resolve_Qualified_Expression): Add machinery to detect | |
14729 | simple redundant qualifications. The check is performed whenever the | |
14730 | expression is a non-overloaded identifier. | |
14731 | (Resolve_Type_Conversion): Enchance the redundant type conversion check | |
14732 | to include loop parameters. | |
14733 | (Valid_Conversion): Avoid generation of spurious error message. | |
14734 | ||
14735 | 2007-08-31 Bob Duff <duff@adacore.com> | |
14736 | ||
14737 | * par-ch4.adb (P_Simple_Expression): Fold long sequences of | |
14738 | concatenations of string literals into a single literal, in order to | |
14739 | avoid very deep recursion in the front end, which was causing stack | |
14740 | overflow. | |
14741 | ||
14742 | * sem_eval.adb (Eval_Concatenation): If the left operand is the empty | |
14743 | string, and the right operand is a string literal (the case of "" & | |
14744 | "..."), optimize by avoiding copying the right operand -- just use the | |
14745 | value of the right operand directly. | |
14746 | ||
14747 | * stringt.adb (Store_String_Chars): Optimize by growing the | |
14748 | String_Chars table all at once, rather than appending characters one by | |
14749 | one. | |
14750 | (Write_String_Table_Entry): If the string to be printed is very long, | |
14751 | just print the first few characters, followed by the length. Otherwise, | |
14752 | doing "pn(n)" in the debugger can take an extremely long time. | |
14753 | ||
14754 | * sem_prag.adb (Process_Interface_Name): Replace loop doing | |
14755 | Store_String_Char with Store_String_Chars. | |
14756 | ||
14757 | 2007-08-31 Vincent Celier <celier@adacore.com> | |
14758 | ||
14759 | * prj-attr.adb: Add new attribute Excluded_Source_Files | |
14760 | ||
14761 | * prj-nmsc.adb: Use attribute Excluded_Source_Files before | |
14762 | Locally_Removed_Files. | |
14763 | ||
14764 | * snames.ads, snames.adb: New standard name Excluded_Source_Files | |
14765 | ||
14766 | 2007-08-31 Ed Schonberg <schonberg@adacore.com> | |
14767 | ||
14768 | * sem_ch10.adb (Analyze_Subunit_Context): When analyzing context | |
14769 | clauses of subunits, ignore limited_with_clauses that are illegal and | |
14770 | have not been fully analyzed. | |
14771 | ||
14772 | 2007-08-31 Ed Schonberg <schonberg@adacore.com> | |
14773 | ||
14774 | * sem_ch3.adb: The predicate Is_Descendent_Of_Address is now an entity | |
14775 | flag, for effiency. It is called when analyzing arithmetic operators | |
14776 | and also for actuals in calls that are universal_integers. The flag is | |
14777 | set for the predefined type address, and for any type or subtype | |
14778 | derived from it. | |
14779 | ||
14780 | * sem_ch4.adb (Analyze_One_Call): Reject an actual that is a | |
14781 | Universal_Integer, when the formal is a descendent of address and the | |
14782 | call appears in user code. | |
14783 | (Analyze_Selected_Component): if the prefix is a private extension, the | |
14784 | tag component is visible. | |
14785 | ||
14786 | * sem_util.ads, sem_util.adb: Remove Is_Descendent_Of_Address, now an | |
14787 | entity flag. | |
14788 | ||
14789 | 2007-08-31 Robert Dewar <dewar@adacore.com> | |
14790 | ||
14791 | * s-fileio.adb (Open): Normalize file name to lower case in non-case | |
14792 | sensitive file name systems to avoid unexpected mismatch in Vista. | |
14793 | ||
14794 | 2007-08-31 Vincent Celier <celier@adacore.com> | |
14795 | ||
14796 | * tempdir.adb: On VMS, take into account GNUTMPDIR before TMPDIR | |
14797 | ||
14798 | 2007-08-31 Vincent Celier <celier@adacore.com> | |
14799 | ||
14800 | * symbols-vms.adb (Initialize): Read symbol files with continuation | |
14801 | lines | |
14802 | (Finalize): If symbol is long, split the line | |
14803 | ||
14804 | 2007-08-31 Vincent Celier <celier@adacore.com> | |
14805 | ||
14806 | * fmap.ads: Minor comment updates | |
14807 | ||
14808 | 2007-08-31 GNAT Script <nobody@adacore.com> | |
14809 | ||
14810 | * Make-lang.in: Makefile automatically updated | |
14811 | ||
14812 | 2007-08-31 Bob Duff <duff@adacore.com> | |
14813 | ||
14814 | * sinfo.ads: Minor comment fix. | |
14815 | ||
14816 | 2007-08-31 Thomas Quinot <quinot@adacore.com> | |
14817 | ||
14818 | * stand.ads: (Standard_Debug_Renaming_Type): Make comment consistent | |
14819 | with implementation. | |
14820 | Documentation cleanup only. | |
14821 | ||
14822 | 2007-08-31 Sergey Rybin <rybin@adacore.com> | |
14823 | ||
14824 | * vms_data.ads: Add new qualifier /STMT_NAME_ON_NEW_LINE for the new | |
14825 | gnatpp '--separate-stmt-name' option. | |
14826 | Add new qualifier /USE_ON_NEW_LIN for the new gnatpp '--use-on-new-line' | |
14827 | option. | |
14828 | ||
14829 | * gnat_ugn.texi: Add description for the new gnatpp | |
14830 | '--separate-stmt-name' and '--use-on-new-line' options. | |
14831 | ||
22d2aa96 BE |
14832 | 2007-08-31 Ben Elliston <bje@au.ibm.com> |
14833 | ||
14834 | * Makefile.in (LIBGNAT_TARGET_PAIRS): Use system-linux-ppc64.ads | |
14835 | when compiling for powerpc64-*-linux. | |
14836 | * system-linux-ppc64.ads: New file. | |
14837 | ||
51743df8 KW |
14838 | 2007-08-22 Krister Walfridsson <cato@df.lth.se> |
14839 | ||
14840 | * env.c ( __gnat_clearenv): Use the __gnat_unsetenv mechanism for | |
14841 | NetBSD. | |
14842 | ||
ac7d7749 KG |
14843 | 2007-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
14844 | ||
14845 | * misc.c (gnat_type_max_size): Constify. | |
14846 | ||
833eddff AC |
14847 | 2007-08-16 Gary Dismukes <dismukes@adacore.com> |
14848 | ||
14849 | * cstand.adb (Create_Standard): Create an entity for a zero-sized type | |
14850 | associated with Standard_Debug_Renaming_Type, to be used as the type of | |
14851 | the special variables whose names provide debugger encodings for | |
14852 | renaming declarations. | |
14853 | ||
14854 | * einfo.ads, einfo.adb (Debug_Renaming_Link): Change to return Node25. | |
14855 | (Set_Debug_Renaming_Link): Change to set Node25. | |
14856 | (Write_Field13_Name): Remove case for E_Enumeration_Literal. | |
14857 | (Write_Field25_Name): Add case for E_Variable to output | |
14858 | "Debug_Renaming_Link". | |
14859 | (Write_Field23_Name): Correct the output string for "Limited_View". | |
14860 | ||
14861 | * exp_dbug.adb: Add with and use of Tbuild. | |
14862 | (Debug_Renaming_Declaration): Replace creation of an enumeration type | |
14863 | and literal with creation of a variable of type | |
14864 | Standard_Debug_Renaming_Type whose name encodes both the renamed object | |
14865 | and the entity of the renaming declaration. | |
14866 | (Qualify_Entity_Name): Add the delayed qualification of the entity name | |
14867 | part of the name of a variable that has a Debug_Renaming_Link. | |
14868 | ||
14869 | * stand.ads (Standard_Debug_Renaming_Type): New Entity_Id denoting a | |
14870 | special type to be associated with variables that provide debugger | |
14871 | encodings for renaming declarations. | |
14872 | ||
14873 | 2007-08-16 Gary Dismukes <dismukes@adacore.com> | |
14874 | Ed Schonberg <schonberg@adacore.com> | |
14875 | Javier Miranda <miranda@adacore.com> | |
14876 | ||
14877 | * exp_aggr.adb (Build_Record_Aggr_Code): Extend the test for an | |
14878 | ancestor part given by an aggregate to test for an unchecked conversion, | |
14879 | since this can occur in some cases when the ancestor part is a function | |
14880 | call, and we don't want to fall into the recursive call to this | |
14881 | procedure in that case. | |
14882 | ||
14883 | * exp_ch3.adb (Stream_Operation_OK): Revise tests for availability of | |
14884 | stream attributes on limited types to account for user-specified | |
14885 | attributes as well as whether Input (resp. Output) becomes available | |
14886 | due to Read (resp. Write) being available for the type. Change Boolean | |
14887 | variable to the more accurate name | |
14888 | Has_Predefined_Or_Specified_Stream_Attribute. Change convoluted | |
14889 | double-"not" predicate at beginning of return statement to more | |
14890 | understandable form. | |
14891 | ||
14892 | * exp_ch5.adb (Expand_N_Extended_Return_Statement): If the extended | |
14893 | return has an associated N_Handled_Sequence_Of_Statements, then wrap it | |
14894 | in a block statement and use that as the first statement of the | |
14895 | expanded return rather than incorrectly using the handled sequence as | |
14896 | the first statement. | |
14897 | ||
14898 | * exp_ch6.adb (Expand_N_Subprogram_Declaration): If this is a protected | |
14899 | operation, generate an explicit freeze node for it rather than | |
14900 | generating extra formals, to ensure that gigi has the proper order of | |
14901 | elaboration for anonymous subtypes in the signature of the subprograms. | |
14902 | (Build_In_Place_Formal): Move assertion to beginning of loop. | |
14903 | (Is_Build_In_Place_Function_Call): Allow for an unchecked conversion | |
14904 | applied to a function call (occurs for some cases of 'Input). | |
14905 | (Make_Build_In_Place_Call_In_*): Allow for an unchecked conversion | |
14906 | applied to a function call (occurs for some cases of 'Input). | |
14907 | ||
14908 | * exp_strm.adb (Build_Record_Or_Elementary_Input_Function): For Ada | |
14909 | 2005, generate an extended return statement enclosing the result object | |
14910 | and 'Read call. | |
14911 | ||
14912 | * freeze.adb (Freeze_Record_Type): Extend the current management of | |
14913 | components that are access type with an allocator as default value: add | |
14914 | missing support to the use of qualified expressions of the | |
14915 | allocator (which also cause freezing of the designated type!) | |
14916 | (Freeze_Entity): Call Freeze_Subprogram in the case of a predefined | |
14917 | dispatching operation, since extra formals may be needed by calls to | |
14918 | build-in-place functions (such as stream 'Input). | |
14919 | ||
14920 | * sem_ch6.adb (Create_Extra_Formals): Skip creation of the extra | |
14921 | formals for 'Constrained and accessibility level in the case of a | |
14922 | predefined dispatching operation. | |
14923 | ||
14924 | * exp_util.adb (Insert_Actions): A protected body is a valid insertion | |
14925 | point, no need to find the parent node. | |
14926 | ||
14927 | 2007-08-16 Javier Miranda <miranda@adacore.com> | |
14928 | ||
14929 | * exp_attr.adb (Attribute_Priority): Add missing support for entries | |
14930 | and entry barriers. | |
14931 | ||
14932 | 2007-08-16 Javier Miranda <miranda@adacore.com> | |
14933 | ||
14934 | * exp_ch9.adb (Build_Protected_Entry): Undo previous change because it | |
14935 | is not really required and can introduce regression with the debugger. | |
14936 | The original problem is fixed with the patch written for checks.adb. | |
14937 | ||
14938 | 2007-08-16 Thomas Quinot <quinot@adacore.com> | |
14939 | ||
14940 | * g-dyntab.adb, g-table.adb, table.adb: (Set_Item): Suppress | |
14941 | Range_Check on Allocated_Table. | |
14942 | ||
14943 | 2007-08-16 Vincent Celier <celier@adacore.com> | |
14944 | ||
14945 | * make.adb (Collect_Arguments): Call Test_If_Relative_Path with | |
14946 | Including_Non_Switch set to False. | |
14947 | (Gnatmake): For the compiler, call Test_If_Relative_Path with | |
14948 | Including_Non_Switch set to False. | |
14949 | ||
14950 | * makeutl.adb, makeutl.ads (Test_If_Relative_Path): New Boolean | |
14951 | parameter Including_Non_Switch, defaulted to True. When | |
14952 | Including_Non_Switch is False, options that are not switches and | |
14953 | appear as relative path are not converted to absolute paths. | |
14954 | ||
14955 | 2007-08-16 Nicolas Roche <roche@adacore.com> | |
14956 | ||
14957 | * Makefile.in (gnatlib): Propagate FORCE_DEBUG_ADAFLAGS value to sub | |
14958 | makefiles | |
14959 | ||
14960 | * Make-lang.in: Update dependencies | |
14961 | ||
14962 | 2007-08-16 Hristian Kirtchev <kirtchev@adacore.com> | |
14963 | ||
14964 | * sem_ch10.adb (Has_With_Clause): If the name of the with clause | |
14965 | currently inspected is a selected component, retrieve the entity of | |
14966 | its selector. | |
14967 | (Install_Limited_Withed_Unit): Call Has_Limited_With_Clause starting | |
14968 | from the immediate ancestor of Main_Unit_Entity. | |
14969 | (Install_Limited_Withed_Unit): Do not install the limited view of | |
14970 | package P if P is reachable through an ancestor chain from package C | |
14971 | and C also has a with clause for P in its body. | |
14972 | (Has_Limited_With_Clause): New routine. | |
14973 | (Has_With_Clause): New routine. | |
14974 | ||
14975 | 2007-08-16 Ed Schonberg <schonberg@adacore.com> | |
14976 | ||
14977 | * sem_ch12.adb (Copy_Generic_Node): A reference to a child unit of the | |
14978 | generic for an enclosing instance is a global reference, even though | |
14979 | its scope is the enclosing instance. | |
14980 | ||
14981 | 2007-08-16 Gary Dismukes <dismukes@adacore.com> | |
14982 | Javier Miranda <miranda@adacore.com> | |
14983 | ||
14984 | * sem_ch3.adb (OK_For_Limited_Init_In_05): Allow calls to 'Input to | |
14985 | initialize a limited object. | |
14986 | (Build_Derived_Record_Type): Add missing check of rules ARM 3.9.4 | |
14987 | 13/2 and 14/2. | |
14988 | Make sure Has_Complex_Representation is inherited by derived type. | |
14989 | ||
14990 | 2007-08-16 Robert Dewar <dewar@adacore.com> | |
14991 | ||
14992 | * sem_ch5.adb (Analyze_Assignment): Make sure we still note update in | |
14993 | exception case | |
14994 | ||
14995 | 2007-08-16 Ed Schonberg <schonberg@adacore.com> | |
14996 | ||
14997 | * sem_disp.adb (Check_Dispatching_Operation): If the operation | |
14998 | implements an operation inherited from a progenitor interface, verify | |
14999 | that they are subtype-conformant. | |
15000 | ||
15001 | 2007-08-16 Hristian Kirtchev <kirtchev@adacore.com> | |
15002 | Bob Duff <duff@adacore.com> | |
15003 | Nicolas Setton <setton@adacore.com> | |
15004 | ||
15005 | * sem_res.adb (Comes_From_Predefined_Lib_Unit): New. | |
15006 | (Resolve): Alphabetize local variables. Add new variable From_Lib. When | |
15007 | the statement which is being resolved comes from a predefined library | |
15008 | unit, all non-predefined library interpretations are skipped. | |
15009 | (Resolve_Op_Concat): If string concatenation was folded in the parser, | |
15010 | but the "&" is user defined, give an error, because the folding would | |
15011 | be wrong. | |
15012 | ||
15013 | * sinfo.ads, sinfo.adb (Is_Folded_In_Parser): New flag to indicate that | |
15014 | the parser has folded a long sequence of concatenations of string | |
15015 | literals. | |
15016 | ||
15017 | * trans.c (Handled_Sequence_Of_Statements_to_gnu): Mark "JMPBUF_SAVE" | |
15018 | and "JMP_BUF" variables as artificial. | |
15019 | (N_String_Literal): Do not use alloca for very long string literals. Use | |
15020 | xmalloc/free instead. Otherwise the stack might overflow. | |
15021 | ||
15022 | * utils.c (init_gigi_decls): Mark "JMPBUF_T" type as created by the | |
15023 | compiler. | |
15024 | ||
15025 | 2007-08-16 Vincent Celier <celier@adacore.com> | |
15026 | ||
15027 | * vms_conv.adb (Process_Argument): Ensure that project related options | |
15028 | are not put in the -cargs section when using GNAT COMPILE. | |
15029 | ||
15030 | 2007-08-16 Robert Dewar <dewar@adacore.com> | |
15031 | ||
15032 | * gnat_ugn.texi: Add note on preprocessing (output file not written) | |
15033 | ||
15034 | 2007-08-16 Thomas Quinot <quinot@adacore.com> | |
15035 | ||
15036 | * a-tags.adb: Minor reformatting. | |
15037 | ||
15038 | 2007-08-16 Bob Duff <duff@adacore.com> | |
15039 | ||
15040 | * sem_type.ads, sem_ch4.adb: Minor reformatting. | |
15041 | ||
ab6328d0 AC |
15042 | 2007-08-14 Thomas Quinot <quinot@adacore.com> |
15043 | ||
9e81dbc7 | 15044 | * g-soccon-interix.ads, a-excpol-interix.adb, a-intnam-interix.ads, |
ab6328d0 AC |
15045 | s-osinte-interix.ads, system-interix.ads: Removed. |
15046 | ||
15047 | 2007-08-14 Hristian Kirtchev <kirtchev@adacore.com> | |
15048 | ||
15049 | * a-calend-vms.adb, a-calend.adb ("+", "-", Add, Subtract): Remove | |
15050 | calls to Check_Within_Time_Bounds. | |
15051 | ("+", "-", Add, Subtract): Remove calls to Check_Within_Time_Bounds. | |
15052 | (Difference): Account for possible rounding of the resulting difference | |
15053 | ||
15054 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15055 | ||
15056 | * uintp.adb, a-ztedit.adb, s-wchcon.adb, xnmake.adb, s-wchcon.adb, | |
15057 | par-ch5.adb, par-ch10.adb, get_targ.adb, a-wtedit.adb, a-teioed.adb, | |
15058 | s-osinte-solaris.adb, s-osinte-solaris.ads, | |
15059 | s-osinte-freebsd.ads, s-osinte-freebsd.adb: Minor reformatting. | |
15060 | ||
15061 | * styleg.adb, styleg.ads, stylesw.adb, stylesw.ads: implement style | |
15062 | switch -gnatyS. Enable -gnatyS in GNAT style check mode | |
15063 | ||
15064 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15065 | Ed Schonberg <schonberg@adacore.com> | |
15066 | ||
9e81dbc7 | 15067 | * inline.adb, types.ads, inline.ads, frontend.adb, alloc.ads: |
ab6328d0 AC |
15068 | Suppress unmodified in-out parameter warning in some cases |
15069 | This patch is a also fairly significant change to the way suppressible | |
15070 | checks are handled. | |
15071 | ||
15072 | * checks.ads, checks.adb (Install_Null_Excluding_Check): No check | |
15073 | needed for access to concurrent record types generated by the expander. | |
15074 | (Generate_Range_Check): When generating a temporary to capture the | |
15075 | value of a conversion that requires a range check, set the type of the | |
15076 | temporary before rewriting the node, so that the type is always | |
15077 | properly placed for back-end use. | |
15078 | (Apply_Float_Conversion_Check): Handle case where the conversion is | |
15079 | truncating. | |
15080 | (Get_Discriminal): Code reformatting. Climb the scope stack looking | |
15081 | for a protected type in order to examine its discriminants. | |
15082 | ||
15083 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15084 | Gary Dismukes <dismukes@adacore.com> | |
15085 | Ed Schonberg <schonberg@adacore.com> | |
15086 | Thomas Quinot <quinot@adacore.com> | |
15087 | ||
9e81dbc7 | 15088 | * a-stzsup.adb, nlists.adb, lib-util.adb, treepr.adb, |
ab6328d0 AC |
15089 | a-stwisu.adb, a-strsup.adb: Fix warnings for range |
15090 | tests optimized out. | |
15091 | ||
15092 | * exp_ch4.adb (Expand_N_In): Add warnings for range tests optimized out. | |
15093 | (Get_Allocator_Final_List): For the case of an anonymous access type | |
15094 | that has a specified Associated_Final_Chain, do not go up to the | |
15095 | enclosing scope. | |
15096 | (Expand_N_Type_Conversion): Test for the case of renamings of access | |
15097 | parameters when deciding whether to apply a run-time accessibility | |
15098 | check. | |
15099 | (Convert_Aggr_In_Allocator): Use Insert_Actions to place expanded | |
15100 | aggregate code before allocator, and ahead of declaration for | |
15101 | temporary, to prevent access before elaboration when the allocator is | |
15102 | an actual for an access parameter. | |
15103 | (Expand_N_Type_Conversion): On an access type conversion involving an | |
15104 | access parameter, do not apply an accessibility check when the | |
15105 | operand's original node was an attribute other than 'Access. We now | |
15106 | create access conversions for the expansion of 'Unchecked_Access and | |
15107 | 'Unrestricted_Access in certain cases and clearly accessibility should | |
15108 | not be checked for those. | |
15109 | ||
15110 | * exp_ch6.ads, exp_ch6.adb (Add_Call_By_Copy_Code): For an actual that | |
15111 | includes a type conversion of a packed component that has been expanded, | |
15112 | recover the original expression for the object, and use this expression | |
15113 | in the post-call assignment statement, so that the assignment is made | |
15114 | to the object and not to a back-end temporary. | |
15115 | (Freeze_Subprogram): In case of primitives of tagged types not defined | |
15116 | at the library level force generation of code to register the primitive | |
15117 | in the dispatch table. In addition some code reorganization has been | |
15118 | done to leave the implementation clear. | |
15119 | (Expand_Call): When expanding an inherited implicit conversion, | |
15120 | preserve the type of the inherited function after the intrinsic | |
15121 | operation has been expanded. | |
15122 | ||
15123 | * exp_ch2.ads, exp_ch2.adb | |
15124 | (Expand_Entry_Parameter.In_Assignment_Context): An implicit dereference | |
15125 | of an entry formal appearing in an assignment statement does not assign | |
15126 | to the formal. | |
15127 | (Expand_Current_Value): Instead of calling a routine to determine | |
15128 | whether the prefix of an attribute reference should be optimized or | |
15129 | not, prevent the optimization of such prefixes all together. | |
15130 | ||
15131 | * lib-xref.adb (Generate_Reference.Is_On_LHS): An indexed or selected | |
15132 | component whose prefix is known to be of an access type is an implicit | |
15133 | dereference and does not assign to the prefix. | |
15134 | ||
15135 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
15136 | Robert Dewar <dewar@adacore.com> | |
15137 | ||
15138 | * atree.ads, atree.adb (New_Copy_Tree): If hash table is being used and | |
15139 | itype is visited, make an entry into table to link associated node and | |
15140 | new itype. | |
15141 | Add comments and correct harmless error in Build_NCT_Hash_Tables | |
15142 | (Array_Aggr_Subtype): Associate each itype created for an index type to | |
15143 | the corresponding range construct, and not to the aggregate itself. to | |
15144 | maintain a one-to-one correspondence between itype and its associated | |
15145 | node, to prevent errors when complex expression is copied. | |
15146 | Fix mishandling of multiple levels of parens | |
15147 | ||
15148 | * sem_aggr.adb: Create a limited view of an incomplete type, to make | |
15149 | treatment of limited views uniform for all visible declarations in a | |
15150 | limited_withed package. | |
15151 | (New_Copy_Tree): If hash table is being used and itype is visited, | |
15152 | make an entry into table to link associated node and new itype. | |
15153 | (Resolve_Record_Aggregate): Do not add an others box association for a | |
15154 | discriminated record component that has only discriminants, when there | |
15155 | is a box association for the component itself. | |
15156 | ||
15157 | * par-ch4.adb: Fix mishandling of multiple levels of parens | |
15158 | ||
15159 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15160 | ||
15161 | * comperr.adb: Fix problem with suppressing warning messages from gigi | |
15162 | ||
9e81dbc7 | 15163 | * erroutc.ads, erroutc.adb, errout.ads, |
ab6328d0 AC |
15164 | errout.adb (Write_Eol): Remove trailing spaces before writing the line |
15165 | (Write_Eol_Keep_Blanks): New procedure to write a line, including | |
15166 | possible trailing spaces. | |
15167 | (Output_Source_Line): Call Write_Eol_Keep_Blanks to output a source line | |
15168 | Fix problem with suppressing warning messages from back end | |
15169 | Improve handling of deleted warnings | |
15170 | ||
9e81dbc7 | 15171 | * gnat1drv.adb: |
ab6328d0 AC |
15172 | Fix problem with suppressing warning messages from back end |
15173 | Handle setting of Static_Dispatch_Tables flag. | |
15174 | ||
9e81dbc7 | 15175 | * prepcomp.adb: |
ab6328d0 AC |
15176 | Fix problem with suppressing warning messages from back end |
15177 | ||
15178 | * exp_intr.adb: Improve handling of deleted warnings | |
15179 | ||
15180 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15181 | ||
15182 | * debug.adb: Improve -gnatdI to cover all cases of serialization | |
15183 | Add documentation of dZ, d.t | |
15184 | ||
15185 | * sprint.ads, sprint.adb: Improve -gnatdI to cover all cases of | |
15186 | serialization. | |
15187 | (Sprint_Node_Actual): Generate new output associated with implicit | |
15188 | importation and implicit exportation of object declarations. | |
15189 | ||
15190 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
15191 | Robert Dewar <dewar@adacore.com> | |
15192 | Javier Miranda <miranda@adacore.com> | |
15193 | Gary Dismukes <dismukes@adacore.com> | |
15194 | ||
15195 | * einfo.ads, einfo.adb: Create a limited view of an incomplete type, | |
15196 | to make treatment of limited views uniform for all visible declarations | |
15197 | in a limited_withed package. | |
15198 | Improve warnings for in out parameters | |
15199 | (Set_Related_Interaface/Related_Interface): Allow the use of this | |
15200 | attribute with constants. | |
15201 | (Write_Field26_Name): Handle attribute Related_Interface in constants. | |
15202 | Warn on duplicate pragma Preelaborable_Initialialization | |
15203 | ||
15204 | * sem_ch6.ads, sem_ch6.adb (Analyze_Subprogram_Body): Force the | |
15205 | generation of a freezing node to ensure proper management of null | |
15206 | excluding access types in the backend. | |
15207 | (Create_Extra_Formals): Test base type of the formal when checking for | |
15208 | the need to add an extra accessibility-level formal. Pass the entity E | |
15209 | on all calls to Add_Extra_Formal (rather than Scope (Formal) as was | |
15210 | originally being done in a couple of cases), to ensure that the | |
15211 | Extra_Formals list gets set on the entity E when the first entity is | |
15212 | added. | |
15213 | (Conforming_Types): Add missing calls to Base_Type to the code that | |
15214 | handles anonymous access types. This is required to handle the | |
15215 | general case because Process_Formals builds internal subtype entities | |
15216 | to handle null-excluding access types. | |
15217 | (Make_Controlling_Function_Wrappers): Create wrappers for constructor | |
15218 | functions that need it, even when not marked Requires_Overriding. | |
15219 | Improve warnings for in out parameters | |
15220 | (Analyze_Function_Return): Warn for disallowed null return | |
15221 | Warn on return from procedure with unset out parameter | |
15222 | Ensure consistent use of # in error messages | |
15223 | (Check_Overriding_Indicator): Add in parameter Is_Primitive. | |
15224 | (Analyze_Function_Return): Move call to Apply_Constraint_Check before | |
15225 | the implicit conversion of the expression done for anonymous access | |
15226 | types. This is required to generate the code of the null excluding | |
15227 | check (if required). | |
15228 | ||
15229 | * sem_warn.ads, sem_warn.adb (Check_References.Publicly_Referenceable): | |
15230 | A formal parameter is never publicly referenceable outside of its body. | |
15231 | (Check_References): For an unreferenced formal parameter in an accept | |
15232 | statement, use the same warning circuitry as for subprogram formal | |
15233 | parameters. | |
15234 | (Warn_On_Unreferenced_Entity): New subprogram, taken from | |
15235 | Output_Unreferenced_Messages, containing the part of that routine that | |
15236 | is now reused for entry formals as described above. | |
15237 | (Goto_Spec_Entity): New function | |
15238 | (Check_References): Do not give IN OUT warning for dispatching operation | |
15239 | Improve warnings for in out parameters | |
15240 | (Test_Ref): Check that the entity is not undefinite before calling | |
15241 | Scope_Within, in order to avoid infinite loops. | |
15242 | Warn on return from procedure with unset out parameter | |
15243 | Improved warnings for unused variables | |
15244 | ||
15245 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15246 | Javier Miranda <miranda@adacore.com> | |
15247 | Gary Dismukes <dismukes@adacore.com> | |
15248 | ||
15249 | * exp_attr.adb (Expand_N_Attribute_Reference): Handle case of child unit | |
15250 | (Expand_N_Attribute_Reference): Further unify the handling of the | |
15251 | three forms of access attributes, using common code now for all three | |
15252 | cases. Add a test for the case of applying an access attribute to | |
15253 | an explicit dereference when the context is an access-to-interface | |
15254 | type. In that case we need to apply the conversion to the prefix | |
15255 | of the explicit dereference rather than the prefix of the attribute. | |
15256 | (Attribute_Version, UET_Address): Set entity as internal to ensure | |
15257 | proper dg output of implicit importation. | |
15258 | (Expand_Access_To_Type): Removed. | |
15259 | (Expand_N_Attribute_Reference): Merge the code from the three cases | |
15260 | of access attributes, since the processing is largely identical for | |
15261 | these cases. The substantive fix here is to process the case of a | |
15262 | type name prefix (current instance case) before handling the case | |
15263 | of interface prefixes. | |
15264 | ||
15265 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
15266 | Ed Schonberg <schonberg@adacore.com> | |
15267 | Javier Miranda <miranda@adacore.com> | |
15268 | Robert Dewar <dewar@adacore.com> | |
15269 | ||
15270 | * exp_ch3.ads, exp_ch3.adb (Add_Final_Chain): New subprogram. | |
15271 | (Freeze_Array_Type, Freeze_Record_Type): For the case of a component | |
15272 | type that is an anonymous access to controlled object, establish | |
15273 | an associated finalization chain to avoid corrupting the global | |
15274 | finalization list when a dynamically allocated object designated | |
15275 | by such a component is deallocated. | |
15276 | (Make_Controlling_Function_Wrappers): Create wrappers for constructor | |
15277 | functions that need it, even when not marked Requires_Overriding. | |
15278 | (Initialize_Tag): Replace call to has_discriminants by call to | |
15279 | Is_Variable_Size_Record in the circuitry that handles the | |
15280 | initialization of secondary tags. | |
15281 | (Is_Variable_Size_Record): New implementation. | |
15282 | (Expand_N_Object_Declaration): Suppress call to init proc if there is a | |
15283 | Suppress_Initialization pragma for a derived type. | |
15284 | (Is_Variable_Size_Record): New subprogram. | |
15285 | (Build_Offset_To_Top_Functions): New implementation that simplifies the | |
15286 | initial version of this routine and also fixes problems causing | |
15287 | incomplete initialization of the table of interfaces. | |
15288 | (Build_Init_Procedure): Improve the generation of code to initialize the | |
15289 | the tag components of secondary dispatch tables. | |
15290 | (Init_Secondary_Tags): New implementation that simplifies the previous | |
15291 | version of this routine. | |
15292 | (Make_DT): Add parameter to indicate when type has been frozen by an | |
15293 | object declaration, for diagnostic purposes. | |
15294 | (Check_Premature_Freezing): New subsidiary procedure of Make_DT, to | |
15295 | diagnose attemps to freeze a subprogram when some untagged type of its | |
15296 | profile is a private type whose full view has not been analyzed yet. | |
15297 | (Freeze_Array_Type): Generate init proc for packed array if either | |
15298 | Initialize or Normalize_Scalars is set. | |
15299 | (Make_Controlling_Function_Wrappers, Make_Null_Procedure_Specs): when | |
15300 | constructing the new profile, copy the null_exclusion indicator for each | |
15301 | parameter, to ensure full conformance of the new body with the spec. | |
15302 | ||
15303 | * sem_type.ads, sem_type.adb (Make_Controlling_Function_Wrappers): | |
15304 | Create wrappers for constructor functions that need it, even when not | |
15305 | marked Requires_Overriding. | |
15306 | (Covers): Handle properly designated types of anonymous access types, | |
15307 | whose non-limited views are themselves incomplete types. | |
15308 | (Add_Entry): Use an entity to store the abstract operation which hides | |
15309 | an interpretation. | |
15310 | (Binary_Op_May_Be_Hidden): Rename to Binary_Op_Interp_Has_Abstract_Op. | |
15311 | (Collect_Interps): Use Empty as an actual for Abstract_Op in the | |
15312 | initialization aggregate. | |
15313 | (Function_Interp_May_Be_Hidden): Rename to | |
15314 | Function_Interp_Has_Abstract_Op. | |
15315 | (Has_Compatible_Type): Remove machinery that skips interpretations if | |
15316 | they are labeled as potentially hidden by an abstract operator. | |
15317 | (Has_Hidden_Interp): Rename to Has_Abstract_Op. | |
15318 | (Set_May_Be_Hidden): Rename to Set_Abstract_Op. | |
15319 | (Write_Overloads): Output the abstract operator if present. | |
15320 | (Add_Entry): Before inserting a new entry into the interpretation table | |
15321 | for a node, determine whether the entry will be disabled by an abstract | |
15322 | operator. | |
15323 | (Binary_Op_Interp_May_Be_Hidden): New routine. | |
15324 | (Collect_Interps): Add value for flag May_Be_Hidden in initialization | |
15325 | aggregate. | |
15326 | (Function_Interp_May_Be_Hidden): New routine. | |
15327 | (Has_Compatible_Type): Do not consider interpretations hidden by | |
15328 | abstract operators when trying to determine whether two types are | |
15329 | compatible. | |
15330 | (Has_Hidden_Interp): New routine. | |
15331 | (Set_May_Be_Hidden_Interp): New routine. | |
15332 | (Write_Overloads): Write the status of flag May_Be_Hidden. | |
15333 | ||
15334 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
15335 | Javier Miranda <miranda@adacore.com> | |
15336 | ||
15337 | * exp_disp.ads, exp_disp.adb (Build_Dispatch_Tables): Handle tagged | |
15338 | types declared in the declarative part of a nested package body or in | |
15339 | the proper body of a stub. | |
15340 | (Set_All_DT_Position): Add missing check to avoid wrong assignation | |
15341 | of the same dispatch table slot to renamed primitives. | |
15342 | (Make_Select_Specific_Data_Table): Handle private types. | |
15343 | (Tagged_Kind): Handle private types. | |
15344 | (Make_Tags, Make_DT): Set tag entity as internal to ensure proper dg | |
15345 | output of implicit importation and exportation. | |
15346 | (Expand_Interface_Thunk): Fix bug in the expansion assuming that the | |
15347 | first formal of the thunk is always associated with the controlling | |
15348 | type. In addition perform the following code cleanup: remove formal | |
15349 | Thunk_Alias which is no longer required, cleanup evaluation of the | |
15350 | the controlling type, and update the documentation. | |
15351 | Replace occurrence of Default_Prim_Op_Count by | |
15352 | Max_Predef_Prims. Addition of compile-time check to verify | |
15353 | that the value of Max_Predef_Prims is correct. | |
15354 | (Check_Premature_Freezing): Apply check in Ada95 mode as well. | |
15355 | (Make_DT): Add parameter to indicate when type has been frozen by an | |
15356 | object declaration, for diagnostic purposes. | |
15357 | (Build_Static_Dispatch_Tables): New subprogram that takes care of the | |
15358 | construction of statically allocated dispatch tables. | |
15359 | (Make_DT): In case of library-level tagged types export the declaration | |
15360 | of the primary tag. Remove generation of tags (now done by Make_Tags). | |
15361 | Additional modifications to handle non-static generation of dispatch | |
15362 | tables. Take care of building tables for asynchronous interface types | |
15363 | (Make_Tags): New subprogram that generates the entities associated with | |
15364 | the primary and secondary tags of Typ and fills the contents of Access_ | |
15365 | Disp_Table. In case of library-level tagged types imports the forward | |
15366 | declaration of the primary tag that will be declared later by Make_DT. | |
15367 | (Expand_Interface_Conversion): In case of access types to interfaces | |
15368 | replace an itype declaration by an explicit type declaration to avoid | |
15369 | problems associated with the scope of such itype in transient blocks. | |
15370 | ||
15371 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15372 | Ed Schonberg <schonberg@adacore.com> | |
15373 | Javier Miranda <miranda@adacore.com> | |
15374 | ||
9e81dbc7 | 15375 | * exp_util.ads, exp_util.adb: |
ab6328d0 AC |
15376 | This patch replaces a number of occurrences of explicit tests for N_Null |
15377 | with calls to Known_Null. This improves tracking of null values, since | |
15378 | Known_Null also catches null constants, and variables currently known to | |
15379 | be null, so we get better tracking. | |
15380 | (Ensure_Defined): create an itype reference only in the scope of the | |
15381 | itype. | |
15382 | (Side_Effect_Free): A selected component of an access type that | |
15383 | denotes a component with a rep clause must be treated as not | |
15384 | side-effect free, because if it is part of a linked structure its | |
15385 | value may be affected by a renaming. | |
15386 | (Expand_Subtype_From_Expr): For limited objects initialized with build | |
15387 | in place function calls, do nothing; otherwise we prematurely introduce | |
15388 | an N_Reference node in the expression initializing the object, which | |
15389 | breaks the circuitry that detects and adds the additional arguments to | |
15390 | the called function. Bug found working in the new patch for statically | |
15391 | allocated dispatch tables. | |
15392 | (Is_Library_Level_Tagged_Type): New subprogram. | |
15393 | (Remove_Side_Effects): If the expression of an elementary type is an | |
15394 | operator treat as a function call. | |
15395 | (Make_Literal_Range): If the index type of the array is not integer, use | |
15396 | attributes properly to compute the constraint on the resulting aggregate | |
15397 | which is a string. | |
15398 | ||
15399 | * freeze.ads, freeze.adb (Freeze_Entity): If the entity is a | |
15400 | class-wide type whose base type is an incomplete private type, leave | |
15401 | class-wide type unfrozen so that freeze nodes can be generated | |
15402 | properly at a later point. | |
15403 | (Freeze_Entity, array case): Handle case of pragma Pack and component | |
15404 | size attributre clause for same array. | |
15405 | ||
15406 | 2007-08-14 Vincent Celier <celier@adacore.com> | |
15407 | ||
15408 | * prj.ads, prj.adb: Update Project Manager to new attribute names for | |
15409 | gprbuild. | |
15410 | Allow all valid declarations in configuration project files | |
15411 | (Reset): Initialize all tables and hash tables in the project tree data | |
15412 | Major update of the Project Manager and of the project aware tools, | |
15413 | including gprmake, so that the same sources in the GNAT repository | |
15414 | can be used by gprbuild. | |
15415 | (Slash_Id): Change type to be Path_Name_Type | |
15416 | (Slash): Return a Path_Name_Type instead of a File_Name_Type | |
15417 | ||
15418 | * prj-attr.ads, prj-attr.adb: Remove attributes no longer used by | |
15419 | gprbuild. | |
15420 | Update Project Manager to new attribute names for ghprbuild | |
15421 | Allow all valid declarations in configuration project files | |
15422 | Major update of the Project Manager and of the project aware tools, | |
15423 | including gprmake, so that the same sources in the GNAT repository | |
15424 | can be used by gprbuild. | |
15425 | ||
9e81dbc7 | 15426 | * prj-com.ads: |
ab6328d0 AC |
15427 | Major update of the Project Manager and of the project aware tools, |
15428 | including gprmake, so that the same sources in the GNAT repository | |
15429 | can be used by gprbuild. | |
15430 | ||
15431 | * prj-dect.adb (Prj.Strt.Attribute_Reference): Set correctly the case | |
15432 | insensitive flag for attributes with optional index. | |
15433 | (Prj.Dect.Parse_Attribute_Declaration): For case insensitive associative | |
15434 | array attribute, put the index in lower case. | |
15435 | Update Project Manager to new attribute names for ghprbuild | |
15436 | Allow all valid declarations in configuration project files | |
15437 | Major update of the Project Manager and of the project aware tools, | |
15438 | including gprmake, so that the same sources in the GNAT repository | |
15439 | can be used by gprbuild. | |
15440 | ||
9e81dbc7 | 15441 | * prj-env.ads, prj-env.adb: |
ab6328d0 AC |
15442 | Major update of the Project Manager and of the project aware tools, |
15443 | including gprmake, so that the same sources in the GNAT repository | |
15444 | can be used by gprbuild. | |
15445 | (Get_Reference): Change type of parameter Path to Path_Name_Type | |
15446 | ||
15447 | * prj-ext.ads, prj-ext.adb (Initialize_Project_Path): Make sure, after | |
15448 | removing '-' from the path to start with the first character of the | |
15449 | next directory. | |
15450 | Major update of the Project Manager and of the project aware tools, | |
15451 | including gprmake, so that the same sources in the GNAT repository | |
15452 | can be used by gprbuild. | |
15453 | Major update of the Project Manager and of the project aware tools, | |
15454 | including gprmake, so that the same sources in the GNAT repository | |
15455 | can be used by gprbuild. | |
15456 | ||
9e81dbc7 | 15457 | * prj-nmsc.ads, prj-nmsc.adb: |
ab6328d0 AC |
15458 | Update Project Manager to new attribute names for ghprbuild |
15459 | Allow all valid declarations in configuration project files | |
15460 | (Search_Directories): Detect subunits that are specified with an | |
15461 | attribute Body in package Naming. Do not replace a source/unit in the | |
15462 | same project when the order of the source dirs are known. Detect | |
15463 | duplicate sources/units in the same project when the order of the | |
15464 | source dirs are not known. | |
15465 | (Check_Ada_Name): Allow all identifiers that are not reserved words | |
15466 | in Ada 95. | |
15467 | Major update of the Project Manager and of the project aware tools, | |
15468 | including gprmake, so that the same sources in the GNAT repository | |
15469 | can be used by gprbuild. | |
15470 | (Look_For_Sources): If the list of sources is empty, set the object | |
15471 | directory of non extending project to nil. | |
15472 | Change type of path name variables to be Path_Name_Type | |
15473 | (Locate_Directory): Make sure that on Windows '/' is converted to '\', | |
15474 | otherwise creating missing directories will fail. | |
15475 | ||
9e81dbc7 | 15476 | * prj-attr-pm.adb, prj-tree.ads, prj-proc.ads, prj-proc.adb, |
ab6328d0 AC |
15477 | prj-part.ads, prj-part.adb: |
15478 | Major update of the Project Manager and of the project aware tools, | |
15479 | including gprmake, so that the same sources in the GNAT repository | |
15480 | can be used by gprbuild. | |
15481 | ||
15482 | * prj-strt.adb (Prj.Strt.Attribute_Reference): Set correctly the case | |
15483 | insensitive flag for attributes with optional index. | |
15484 | (Prj.Dect.Parse_Attribute_Declaration): For case insensitive associative | |
15485 | array attribute, put the index in lower case. | |
15486 | (Parse_Variable_Reference): Allow the current project name to be used in | |
15487 | the prefix of an attribute reference. | |
15488 | ||
15489 | * prj-util.ads, prj-util.adb | |
15490 | (Value_Of (for arrays)): New Boolean parameter Force_Lower_Case_Index, | |
15491 | defaulted to False. When True, always check against indexes in lower | |
15492 | case. | |
15493 | ||
9e81dbc7 | 15494 | * snames.ads, snames.h, snames.adb: |
ab6328d0 AC |
15495 | Update Project Manager to new attribute names for gprbuild |
15496 | Allow all valid declarations in configuration project files | |
15497 | ||
15498 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15499 | Ed Schonberg <schonberg@adacore.com> | |
15500 | ||
15501 | * opt.ads: Warning for non-local exception propagation now off by | |
15502 | default | |
15503 | New switch -gnatI to disable representation clauses | |
15504 | Implement new pragma Implicit_Packing | |
15505 | ||
9e81dbc7 | 15506 | * usage.adb: |
ab6328d0 AC |
15507 | Warning for non-local exception propagation now off by default |
15508 | Add warning for unchecked conversion of pointers wi different | |
15509 | conventions. | |
15510 | New switch -gnatI to disable representation clauses | |
15511 | ||
15512 | * usage.adb: new switch -gnatyS | |
15513 | ||
15514 | * gnat_ugn.texi: For the gnatcheck Non_Qualified_Aggregates rule add a | |
15515 | note that aggregates of anonymous array types are not flagged. | |
15516 | -gnatwc now includes membership tests optimized away | |
15517 | -gnatw.x warnings are now off by default | |
15518 | Added conditional compilation Appendix | |
15519 | Add documentation of -gnatI | |
15520 | Add documentation for new -gnatyS style check | |
15521 | Update documentation about SAL and auto-init on Windows. | |
15522 | ||
9e81dbc7 | 15523 | * gnat_rm.texi: |
ab6328d0 AC |
15524 | Add documentation for pragma Check_Name and 'Enabled attribute |
15525 | Document that Eliminate on dispatching operation is ignored | |
15526 | Document IDE attributes VCS_Repository_Root and VCS_Patch_Root. | |
15527 | Document pragma Main | |
15528 | Document pragma Implicit_Packing | |
15529 | ||
15530 | * sem_ch13.adb: Add warning for unchecked conversion of pointers wi | |
15531 | different conventions | |
15532 | New switch -gnatI to disable representation clauses | |
15533 | ||
15534 | * switch-c.adb (Scan_Front_End_Switches): When a -gnat switch is not | |
15535 | recognized, report the invalid characters including "-gnat" instead of | |
15536 | just the first character in the switch. | |
15537 | New switch -gnatI to disable representation clauses | |
15538 | Set Warn_On_Object_Renames_Function true for -gnatg | |
15539 | ||
15540 | * vms_data.ads: Add doc for /IGNORE_REP_CLAUSES | |
15541 | Add STATEMENTS_AFTER_THEN_ELSE as synonym for -gnatyS | |
15542 | Add qualifier /ADD_PROJECT_SEARCH_DIR= for different tools, equivalent | |
15543 | to switch -aP (add directory to project search dir). | |
15544 | ||
15545 | * par-prag.adb: Implement new pragma Implicit_Packing | |
15546 | ||
15547 | * sem_prag.adb (Analyze_Pragma, case Complex_Representation): Mark the | |
15548 | type as having a non-standard representation, to force expansion on | |
15549 | conversion to related types. | |
15550 | (Analyze_Pragma): Warn on misspelled pragma | |
15551 | (Analyze_Pragma, case Convention_Identifier): Fix checking of second arg | |
15552 | Ensure consistent use of # in error messages | |
15553 | Implement pragma Implicit_Packing | |
15554 | ||
15555 | 2007-08-14 Olivier Hainque <hainque@adacore.com> | |
15556 | Eric Botcazou <ebotcazou@adacore.com> | |
15557 | ||
15558 | * targtyps.c (get_target_maximum_default_alignment): New function. | |
15559 | Maximum alignment | |
15560 | that the compiler might choose by default for a type or object. | |
15561 | (get_target_default_allocator_alignment): New function. Alignment known | |
15562 | to be honored by the target default allocator. | |
15563 | (get_target_maximum_allowed_alignment): New function. Maximum alignment | |
15564 | we might accept for any type or object on the target. | |
15565 | (get_target_maximum_alignment): Now synonym of maximum_default_alignment | |
15566 | ||
15567 | * gigi.h (get_target_maximum_default_alignment): Declare new function. | |
15568 | (get_target_default_allocator_alignment): Likewise. | |
15569 | (get_target_maximum_allowed_alignment): Likewise. | |
15570 | ||
15571 | PR ada/19037 | |
15572 | * decl.c (gnat_to_gnu_entity) <object>: Except for the renaming of the | |
15573 | result of a function call, first try to use a stabilized reference for | |
15574 | a constant renaming too. | |
15575 | (validate_alignment): Use target_maximum_allowed_alignment instead of | |
15576 | MAX_OFILE_ALIGNMENT as the upper bound to what we accept. | |
15577 | (gnat_to_gnu_entity): Use common nodes directly. | |
15578 | (gnat_to_gnu_entity) <object>: Pick the values of the type to annotate | |
15579 | alignment and size for the object. | |
15580 | (lvalue_required_p): Handle N_Parameter_Association like N_Function_Call | |
15581 | and N_Procedure_Call_Statement. | |
15582 | (takes_address): Rename to lvalue_required_p, add third parameter | |
15583 | 'aliased' and adjust recursive calls. | |
15584 | <N_Indexed_Component>: Update 'aliased' from the array type. | |
15585 | <N_Selected_Component>: New case. | |
15586 | <N_Object_Renaming_Declaration>: New Likewise. | |
15587 | (Identifier_to_gnu): Adjust for above changes. | |
15588 | (maybe_stabilize_reference) <CONST_DECL>: New case. | |
15589 | ||
15590 | * utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Look through conversion | |
15591 | between type variants. | |
15592 | (build_simple_component_ref): Likewise. | |
15593 | (build_call_alloc_dealloc): Use target_default_allocator_alignment | |
15594 | instead of BIGGEST_ALIGNMENT as the threshold to trigger the super | |
15595 | aligning type circuitry for allocations from the default storage pool. | |
15596 | (build_allocator): Likewise. | |
15597 | (build_simple_component_ref): Manually fold the reference for a | |
15598 | constructor if the record type contains a template. | |
15599 | ||
15600 | * utils.c (value_zerop): Delete. | |
15601 | (gnat_init_decl_processing): Emit debug info for common types. | |
15602 | (rest_of_record_type_compilation): If a union contains a field | |
15603 | with a non-constant qualifier, treat it as variable-sized. | |
15604 | (finish_record_type): Give the stub TYPE_DECL a name. | |
15605 | (rest_of_record_type_compilation): Likewise. | |
15606 | (convert) <CONSTRUCTOR>: New case. Build a new constructor if | |
15607 | types are equivalent array types. | |
15608 | (create_field_decl): Claim fields of any ARRAY_TYPE are addressable, | |
15609 | even if the type is not passed by reference. | |
15610 | (static_ctors, static_dtors): Delete. | |
15611 | (end_subprog_body): Do not record constructors and destructors. | |
15612 | (build_global_cdtor): Delete. | |
15613 | (gnat_write_global_declarations): Do not call build_global_cdtor. | |
15614 | ||
0ab29e91 | 15615 | * lang-spARGET_VXWORKS_RTP is defined, append -mrtp when |
ab6328d0 AC |
15616 | -fRTS=rtp is specified. |
15617 | If CONFIG_DUAL_EXCEPTIONS is 1, append -fsjlj when -fRTS=sjlj is | |
15618 | specified. | |
15619 | ||
15620 | * misc.c (gnat_init_gcc_eh): Use __gnat_eh_personality_sj for the name | |
15621 | of the personality function with SJLJ exceptions. | |
15622 | ||
9e81dbc7 | 15623 | * raise-gcc.c (PERSONALITY_FUNCTION): Use __gnat_eh_personality_sj for |
ab6328d0 AC |
15624 | the name of the personality function with SJLJ exceptions. |
15625 | ||
15626 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15627 | Ed Schonberg <schonberg@adacore.com> | |
15628 | ||
15629 | * par.ads, par.adb: Improve handling of extra right parens. | |
15630 | (Par): Remove flag From_Limited_With_Clause. | |
15631 | ||
15632 | * par-util.adb, par-ch3.adb: Improve error recovery for bad constraint | |
15633 | Improve handling of extra right parens. | |
15634 | ||
15635 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15636 | ||
15637 | * par-tchk.adb (TF_Semicolon): Improve error recovery | |
15638 | ||
15639 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15640 | Ed Schonberg <schonberg@adacore.com> | |
15641 | ||
15642 | * sem_attr.ads, sem_attr.adb (Analyze_Attribute, case Value): For | |
15643 | enumeration type, mark all literals as referenced. | |
15644 | (Eval_Attribute, case 'Image): If the argument is an enumeration | |
15645 | literal and names are available, constant-fold but mark nevertheless as | |
15646 | non-static. | |
15647 | Clean up function names. | |
15648 | (Name_Modifies_Prefix): Rename to Name_Implies_Lvalue_Prefix. Clarify | |
15649 | comment. | |
15650 | (Requires_Simple_Name_Prefix): Removed. | |
15651 | ||
15652 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15653 | Ed Schonberg <schonberg@adacore.com> | |
15654 | ||
15655 | * sem_ch11.adb: Improved warnings for unused variables | |
15656 | ||
15657 | * sem_ch3.ads, sem_ch3.adb (Build_Derived_Record_Type): If the ancestor | |
15658 | is a synchronized interface, the derived type is limited. | |
15659 | (Analyze_Object_Declaration): Mark the potential coextensions in the | |
15660 | definition and expression of an object declaration node. | |
15661 | (Build_Derived_Type): For the completion of a private type declaration | |
15662 | with a derived type declaration, chain the parent type's representation | |
15663 | items to the last representation item of the derived type (not the | |
15664 | first one) if they are not present already. | |
15665 | (Analyze_Object_Declaration, Constant_Redeclaration): Allow incomplete | |
15666 | object declaration of forward references to tags. | |
15667 | (Access_Subprogram_Declaration): In Ada2005, anonymous access to | |
15668 | subprogram types can appear as access discriminants of synchronized | |
15669 | types. | |
15670 | (OK_For_Limited_Init_In_05): The initialization is legal is it is a call | |
15671 | given in prefixed form as a selected component. | |
15672 | (Process_Discriminants): If not all discriminants have defaults, place | |
15673 | error message on a default that is present. | |
15674 | (Analyze_Private_Extension_Declaration): Diagnose properly an attempt to | |
15675 | extend a synchronized tagged type. | |
15676 | Improved warnings for unused variables | |
15677 | (Is_Visible_Component): Fix a visibility hole on a component inherited | |
15678 | by a private extension when parent is itself declared as a private | |
15679 | extension, and the derivation is in a child unit. | |
15680 | (Find_Hidden_Interface): Move spec from the package body. | |
15681 | ||
15682 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15683 | Ed Schonberg <schonberg@adacore.com> | |
15684 | ||
15685 | * sem_ch5.adb: Improve warnings on redundant assignments | |
15686 | ||
15687 | * sem_util.ads, sem_util.adb: (Is_Variable): Add defense against junk | |
15688 | parameter | |
15689 | (Is_Synchronized_Tagged_Type): New subprogram that returns true | |
15690 | in case of synchronized tagged types (AARM 3.9.4 (6/2)). | |
15691 | (Safe_To_Capture_Value): Can now return True for constants, even if Cond | |
15692 | is set to False. Improves handling of Known_[Not_]Null. | |
15693 | (Wrong_Type): Special case address arithmetic attempt | |
15694 | (Collect_Abstract_Interfaces): Add new formal to allow collecting | |
15695 | abstract interfaces just using the partial view of private types. | |
15696 | (Has_Abstract_Interfaces): Add new formal to allow checking types | |
15697 | covering interfaces using the partial view of private types. | |
15698 | (Is_Fully_Initialized_Type): Special VM case for uTag component. This | |
15699 | component still needs to be defined in this case, but is never | |
15700 | initialized as VMs are using other dispatching mechanisms. | |
15701 | (Abstract_Interface_List): For a protected type, use base type to get | |
15702 | proper declaration. | |
15703 | Improve warnings on redundant assignments | |
15704 | (Is_Variable): Handle properly an implicit dereference of a prefixed | |
15705 | function call. | |
15706 | (Build_Actual_Subtype): If this is an actual subtype for an | |
15707 | unconstrained formal parameter, use the sloc of the body for the new | |
15708 | declaration, to prevent anomalises in the debugger. | |
15709 | ||
15710 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15711 | ||
15712 | * sem_elim.adb (Set_Eliminated): Ignore pragma Eliminate for | |
15713 | dispatching operation | |
15714 | ||
15715 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
15716 | Gary Dismukes <dismukes@adacore.com> | |
15717 | ||
9e81dbc7 | 15718 | * exp_aggr.ads, |
ab6328d0 AC |
15719 | exp_aggr.adb (Convert_Aggr_In_Allocator): Use Insert_Actions to place |
15720 | expanded aggregate code before allocator, and ahead of declaration for | |
15721 | temporary, to prevent access before elaboration when the allocator is | |
15722 | an actual for an access parameter. | |
15723 | (Is_Static_Dispatch_Table_Aggregate): Handle aggregates initializing | |
15724 | the TSD and the table of interfaces. | |
15725 | (Convert_To_Assignments): Augment the test for delaying aggregate | |
15726 | expansion for limited return statements to include the case of extended | |
15727 | returns, to prevent creation of an unwanted transient scope. | |
15728 | (Is_Static_Dispatch_Table_Aggregate): New subprogram. | |
15729 | (Expand_Array_Aggregate): Handle aggregates associated with | |
15730 | statically allocated dispatch tables. | |
15731 | (Expand_Record_Aggregate): Handle aggregates associated with | |
15732 | statically allocated dispatch tables. | |
15733 | (Gen_Ctrl_Actions_For_Aggr): Generate a finalization list for allocators | |
15734 | of anonymous access type. | |
15735 | ||
15736 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
15737 | ||
15738 | * exp_ch5.adb (Expand_Assign_Array): If source or target of assignment | |
15739 | is a variable that renames a slice, use the variable itself in the | |
15740 | expannsion when the renamed expression itself may be modified between | |
15741 | the declaration of the renaming and the array assignment. | |
15742 | ||
15743 | 2007-08-14 Jerome Guitton <guitton@adacore.com> | |
15744 | ||
9e81dbc7 AS |
15745 | * s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb, |
15746 | s-taprop-hpux-dce.adb, s-taprop-dummy.adb, s-taprop-solaris.adb, | |
ab6328d0 AC |
15747 | s-taprop-vms.adb, s-taprop-posix.adb (Continue_Task, Stop_All_Tasks): |
15748 | New functions; dummy implementations. | |
15749 | ||
15750 | * s-osinte-vxworks.ads (Task_Stop, Task_Cont, Int_Lock, Int_Unlock): New | |
15751 | functions, used to implement the multi-tasks mode routines on VxWorks. | |
15752 | ||
15753 | * s-osinte-vxworks.adb, s-osinte-vxworks6.adb (Task_Cont, Task_Stop): | |
15754 | New functions, thin | |
15755 | binding to the VxWorks routines which have changed between VxWorks 5 | |
15756 | and 6. | |
15757 | (Int_Lock, Int_Unlock): New function, thin binding to kernel routines | |
15758 | which are not callable from a RTP. | |
15759 | ||
15760 | * s-taprop-vxworks.adb (Stop_All_Tasks, Continue_Task): New functions, | |
15761 | implemented for the multi-tasks mode on VxWorks 5 and 6. | |
15762 | ||
15763 | * s-taprop.ads (Stop_All_Tasks, Continue_Task): New functions. | |
15764 | ||
15765 | * s-tasdeb.ads, s-tasdeb.adb (Continue_All_Tasks, Stop_All_Tasks): New | |
15766 | functions. | |
15767 | ||
15768 | 2007-08-14 Vincent Celier <celier@adacore.com> | |
15769 | ||
9e81dbc7 | 15770 | * clean.adb, fmap.adb, sinput-p.adb, sinput-p.ads, gnatcmd.adb, |
ab6328d0 | 15771 | gnatname.adb, makeutl.ads, makeutl.adb, makegpr.adb, mlib-tgt-vms.adb |
9e81dbc7 AS |
15772 | mlib-tgt-darwin.adb, mlib-tgt-lynxos.adb, mlib-prj.adb, mlib-tgt.adb, |
15773 | mlib-tgt.ads, mlib-tgt-irix.adb mlib-tgt-hpux.adb, mlib-tgt-linux.adb, | |
15774 | mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, | |
ab6328d0 AC |
15775 | mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb, mlib-tgt-aix.adb, |
15776 | mlib-tgt-tru64.adb, mlib.ads, mlib.adb (Create_Sym_Links): New | |
15777 | procedure. | |
15778 | (Major_Id_Name): New function. | |
15779 | mlib-tgt.ads/mlib.tgt.adb: | |
15780 | (Library_Major_Minor_Id_Supported): New function, default returns True | |
15781 | Most mlib-tgt-*.adb that support shared libraries and symbolic links: | |
15782 | (Build_Dynamic_Library): Add support for major/minor ids for shared libs | |
15783 | Other mlib-tgt-*.adb (aix, mingw, vms, vxworks, xi): | |
15784 | Implementation of Library_Major_Minor_Id_Supported returns False | |
15785 | clean.adb: | |
15786 | (Clean_Library_Directory): If major/minor ids are supported, clean all | |
15787 | library files. | |
15788 | Major update of the Project Manager and of the project aware tools, | |
15789 | including gprmake, so that the same sources in the GNAT repository | |
15790 | can be used by gprbuild. | |
15791 | ||
15792 | 2007-08-14 Olivier Hainque <hainque@adacore.com> | |
15793 | ||
15794 | * system-solaris-x86.ads (ZCX_By_Default): Switch to True. | |
15795 | (GCC_ZCX_Support): Switch to True. | |
9e81dbc7 | 15796 | |
ab6328d0 AC |
15797 | * s-intman-solaris.adb (Notify_Exception): Call |
15798 | Adjust_Context_For_Raise before raising, as expected for signal | |
15799 | handlers in general. | |
9e81dbc7 | 15800 | |
ab6328d0 AC |
15801 | * s-intman-posix.adb (Notify_Exception): Remove declaration of |
15802 | Adjust_Context_For_Raise, moved to the spec of this unit to be visible | |
15803 | to other implementation bodies. | |
9e81dbc7 | 15804 | |
ab6328d0 AC |
15805 | * s-intman.ads (Adjust_Context_For_Raise): Declare and import here, to |
15806 | be visible by multiple implementation bodies. | |
9e81dbc7 | 15807 | |
ab6328d0 AC |
15808 | * init.c [VMS section] (__gnat_handle_vms_condition): Adjust context |
15809 | only for conditions coming from hardware. | |
15810 | [alpha-tru64 section] (__gnat_adjust_context_for_raise): Implement, | |
15811 | adjustments to signal context prior to exception raise from signal | |
15812 | handler. | |
15813 | (__gnat_map_signal for VxWorks): Map SIGSEGV to Storage_Error in RTP | |
15814 | mode. | |
15815 | Solaris section: (__gnat_adjust_context_for_raise): New function. | |
15816 | Implementation of the machine context adjustments to perform prior to | |
15817 | raise from a signal handler. Version for both sparc and x86. | |
15818 | (HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE): Define. | |
15819 | (__gnat_error_handler): Expect a third argument, ucontext_t *. Adjust it | |
15820 | prior to raising as expected for any handler, before possible nested | |
15821 | faults to make sure all the contexts in a chain have been adjusted by | |
15822 | the time we propagate. | |
15823 | ||
15824 | 2007-08-14 Pascal Obry <obry@adacore.com> | |
15825 | ||
15826 | * s-osinte-mingw.ads: Add support for Ada.Execution_Time on Windows. | |
15827 | (SYSTEM_INFO): New record. | |
15828 | (SetThreadIdealProcessor): New imported routine needed for supporting | |
15829 | task_info pragma on Windows. | |
15830 | ||
15831 | * s-taprop-mingw.adb (Enter_Task): Check if CPU number given in task | |
15832 | info can be applied to the current host. | |
15833 | (Create_Task): Set the ideal processor if information is present. | |
15834 | ||
15835 | * s-tasinf-mingw.adb, s-tasinf-mingw.ads, | |
15836 | a-exetim-mingw.adb, a-exetim-mingw.ads: New files. | |
15837 | ||
15838 | 2007-08-14 Olivier Hainque <hainque@adacore.com> | |
15839 | ||
15840 | * s-taprop-linux.adb (Get_Stack_Attributes): New subprogram. Fetch the | |
15841 | stack size and initial stack pointer value for a given task. | |
15842 | (Enter_Task): Get the stack attributes of the task we are entering and | |
15843 | let the stack checking engine know about them. | |
15844 | ||
15845 | * s-stchop.adb, s-stchop.ads (Notify_Stack_Attributes): New subprogram. | |
15846 | Let the stack-checking engine know about the initial sp value and stack | |
15847 | size associated with the current task. | |
15848 | (Set_Stack_Info): If a stack base has been notified for the current | |
15849 | task, honor it. Fallback to the previous less accurate method otherwise. | |
15850 | ||
15851 | * s-stchop-vxworks.adb (Notify_Stack_Attributes): Dummy body. | |
15852 | ||
15853 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
15854 | ||
15855 | * sem_ch10.adb: Create a limited view of an incomplete type, to make | |
15856 | treatment of limited views uniform for all visible declarations in a | |
15857 | limited_withed package. | |
15858 | Set flag indicating that a subprogram body for a child unit has a | |
15859 | generated spec. | |
15860 | (Analyze_Compilation_Unit): If unit is a subprogram body that has no | |
15861 | separate declaration, remove the unit name from visibility after | |
15862 | compilation, so that environment is clean for subsequent compilations. | |
15863 | (Install_Limited_Context_Clauses): Do not install a | |
15864 | limited_private_with_clause unless the current unit is a body or a | |
15865 | private child unit. | |
15866 | (Analyze_Subunit, Install_Parents): Treat generic and non-generic units | |
15867 | in the same fashion. | |
15868 | (Install_Limited_Withed_Unit): Do not install a limited with clause if | |
15869 | it applies to the declaration of the current package body. | |
15870 | (Remove_Private_With_Clauses): If there is a regular with_clause for | |
15871 | the unit, delete Private_With_Clause from context, to prevent improper | |
15872 | hiding when processing subsequent nested packages and instantiations. | |
15873 | ||
15874 | 2007-08-14 Jose Ruiz <ruiz@adacore.com> | |
15875 | ||
15876 | * adaint.c (__gnat_is_absolute_path): For VxWorks systems we accept | |
15877 | dir/file, device:/dir/file, and device:drive_letter:/dir/file as | |
15878 | representing absolute path names. | |
15879 | __gnat_set_file_time_name [VMS]: Fix some 64/32 bit issues. | |
15880 | ||
15881 | * cstreams.c (__gnat_full_name for VxWorks): Use | |
15882 | __gnat_is_absolute_path to detect whether we need to add the current | |
15883 | directory to normalize the path. | |
15884 | ||
15885 | 2007-08-14 Javier Miranda <miranda@adacore.com> | |
15886 | ||
9e81dbc7 | 15887 | * a-tags.ads, |
ab6328d0 AC |
15888 | a-tags.adb (Displace): Associate a message with the raised CE |
15889 | exception. | |
15890 | (To_Addr_Ptr, To_Address, To_Dispatch_Table_Ptr, | |
15891 | To_Object_Specific_Data_Ptr To_Predef_Prims_Ptr, | |
15892 | To_Tag_Ptr, To_Type_Specific_Data_Ptr): Moved here from the package | |
15893 | spec. | |
15894 | (Default_Prim_Op_Count): Removed. | |
15895 | (IW_Membership, Get_Entry_Index, Get_Offset_Index, Get_Prim_Op_Kind, | |
15896 | Register_Tag, Set_Entry_Index, Set_Offset_To_Top, Set_Prim_Op_Kind): | |
15897 | Remove pragma Inline_Always. | |
15898 | ||
15899 | * rtsfind.ads (Default_Prim_Op_Count): Removed | |
15900 | (Max_Predef_Prims): New entity | |
15901 | (RE_Expanded_Name): Removed | |
15902 | (RE_HT_Link): Removed | |
15903 | (RE_Iface_Tag): Remmoved | |
15904 | (RE_Ifaces_Table): Removed | |
15905 | (RE_Interfaces_Array): Removed | |
15906 | (RE_Interface_Data_Element): Removed | |
15907 | (RE_Nb_Ifaces): Removed | |
15908 | (RE_RC_Offset): Removed | |
15909 | (RE_Static_Offset_To_Top): Removed | |
15910 | ||
15911 | * exp_atag.ads, exp_atag.adb (Build_Inherit_Prims): Addition of a new | |
15912 | formal. | |
15913 | (Build_Inherit_Predefined_Prims): Replace occurrences of Default_ | |
15914 | Prim_Op_Count by Max_Predef_Prims. | |
15915 | ||
15916 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
15917 | Vincent Celier <celier@adacore.com> | |
15918 | ||
15919 | * binde.adb (Elab_All_Links): Remove unnecessary call to | |
15920 | Generic_Separately_Compiled (if a unit satisfies this predicate, there | |
15921 | won't be an associated Afile). | |
15922 | (Elab_All_Links): Fail if a referenced unit cannot be found | |
15923 | ||
9e81dbc7 | 15924 | * bindgen.adb: |
ab6328d0 AC |
15925 | Fix comments in bindgen regarding consistency checks done in Bcheck: |
15926 | the checks are made across units within a partition, not across several | |
15927 | partitions. | |
15928 | Fix generation of C binder file for VxWorks. | |
15929 | ||
15930 | * lib.ads, lib.adb (Generic_Separately_Compiled): Rename to | |
15931 | Generic_May_Lack_ALI, more descriptive of the current use of the | |
15932 | predicate, and update documentation. | |
15933 | ||
15934 | * lib-writ.ads, lib-writ.adb (Write_With_Lines): Minor code | |
15935 | reorganization and documentation update for the case of predefined | |
15936 | library generics (for which we do not reference an Afile). | |
15937 | ||
15938 | 2007-08-14 Robert Dewar <dewar@adacore.com> | |
15939 | ||
15940 | * s-intman-irix.adb, s-osinte-irix.adb, s-osinte-irix.ads, | |
15941 | s-proinf-irix-athread.ads, s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, | |
15942 | s-parame-hpux.ads, s-intman-dummy.adb, s-tasinf-solaris.adb, | |
15943 | s-tasinf-solaris.ads, s-asthan-vms-alpha.adb, s-inmaop-vms.adb, | |
15944 | s-intman-vms.adb, s-intman-vms.ads, s-osprim-mingw.adb, | |
15945 | s-parame-vms-restrict.ads, s-parame-ae653.ads, s-intman-vxworks.ads, | |
15946 | s-intman-vxworks.ads, s-intman-vxworks.adb, s-parame-vxworks.ads, | |
15947 | s-tfsetr-vxworks.adb, s-interr.adb, s-interr.ads, a-tasatt.adb, | |
15948 | exp_ch13.adb, s-htable.ads, s-imgboo.ads, s-imglli.ads, s-imgllu.ads, | |
15949 | s-imguns.ads, g-eacodu.adb, par-ch12.adb, s-stache.ads, s-stausa.adb, | |
15950 | s-poosiz.adb, s-parame.ads, s-mastop.ads, s-osinte-darwin.ads, | |
15951 | a-chtgke.adb, s-asthan-vms-alpha.adb, s-parame-vms-alpha.ads, | |
15952 | s-parame-vms-ia64.ads, s-parame-vxworks.adb, s-except.ads, | |
15953 | g-altcon.adb: Minor reformatting | |
15954 | ||
15955 | ada-tree.h: Delete empty line. | |
15956 | ||
15957 | ali.ads: Minor reformatting | |
15958 | Clarification of comments. | |
15959 | Minor spelling correction | |
15960 | ||
15961 | * exp_dbug.adb: Add Warnings Off to suppress new warning | |
15962 | ||
15963 | * a-witeio.adb (Write): Add Warnings (Off) for unneeded IN OUT mode | |
15964 | formal | |
15965 | ||
15966 | * a-strunb.adb (Set_Unbounded_String): Avoid memory leak by freeing old | |
15967 | value | |
15968 | ||
15969 | * a-textio.adb (Write): Remove an unnecessary IN OUT mode from | |
15970 | ||
15971 | * a-textio.ads: Reorder the standard input/output/error declarations | |
15972 | for consistency. | |
15973 | ||
15974 | * g-dirope.adb, g-dirope.ads: Change Dir to mode IN for Open call | |
15975 | ||
15976 | * par-ch2.adb: Recognize RM specially in errout | |
15977 | Change 'R'M to RM in all error messages | |
15978 | ||
15979 | * scng.adb: Recognize RM specially in errout | |
15980 | ||
15981 | * sem.ads, sem.adb, exp_strm.adb, exp_ch5.ads, expander.adb: Rename | |
15982 | N_Return node to be N_Simple_Return, to reflect Ada 2005 terminology. | |
15983 | ||
15984 | * s-direio.adb: Add missing routine header box. | |
15985 | ||
15986 | * sem_attr.ads: Add ??? comments | |
15987 | ||
15988 | * sem_eval.adb: Recognize RM specially in errout | |
15989 | Change 'R'M to RM in all error messages | |
15990 | ||
15991 | * sem_maps.adb, sem_maps.ads: Remove some unnecessary IN OUT modes | |
15992 | ||
15993 | * s-tasinf.ads: Fix minor comment typo. | |
15994 | ||
15995 | * a-cihama.adb: Minor comment addition | |
15996 | ||
15997 | * a-ztexio.adb (Write): Add Warnings (Off) for unneeded IN OUT mode | |
15998 | formal | |
15999 | ||
16000 | * s-tasinf-tru64.ads: Fix minor comment typo. | |
16001 | ||
16002 | * itypes.ads: Comment update. | |
16003 | ||
16004 | * ali-util.adb: Remove Generic_Separately_Compiled guard, not needed | |
16005 | anymore. | |
16006 | ||
16007 | * argv.c: Added protection against null gnat_argv and gnat_envp. | |
16008 | ||
16009 | * bcheck.adb (Check_Consistency): Use correct markup character ({) in | |
16010 | warning message when Tolerate_Consistency_Errors is True. | |
16011 | ||
16012 | * cstand.adb (Create_Standard): Do not call Init_Size_Alignment for | |
16013 | Any_Id, as this subprogram is only applicable to *type* entities (it | |
16014 | sets RM_Size). Instead initialize just Esize and Alignment. | |
16015 | ||
16016 | 2007-08-14 Bob Duff <duff@adacore.com> | |
16017 | ||
9e81dbc7 AS |
16018 | * a-cihama.ads, a-cidlli.ads, a-chtgop.ads, a-chtgop.adb, a-cdlili.ads, |
16019 | a-cihase.adb, a-cihase.ads, a-cohase.adb, a-cohase.ads, a-ciorma.ads, | |
16020 | a-coorma.ads, a-ciormu.ads, a-coormu.ads, a-ciorse.ads, a-cohama.ads, | |
ab6328d0 AC |
16021 | a-cohata.ads, a-convec.adb, a-coinve.ads, a-coinve.adb, a-convec.ads, |
16022 | a-coorse.ads (Next): Applied pragma Inline. | |
16023 | Make all Containers packages Remote_Types (unless they are already | |
16024 | Pure). | |
16025 | (Previous): applied pragma Inline | |
16026 | (Elements_Type): is now a record instead of an array | |
16027 | ||
16028 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
16029 | ||
16030 | * table.adb, g-table.adb, g-dyntab.adb (Append): Reimplement in terms | |
16031 | of Set_Item. | |
16032 | (Set_Item): When the new item is an element of the currently allocated | |
16033 | table passed by reference, save a copy on the stack if we're going | |
16034 | to reallocate. Also, in Table.Set_Item, make sure we test the proper | |
16035 | variable to determine whether to call Set_Last. | |
16036 | ||
16037 | * sinput-d.adb, sinput-l.adb, stringt.adb, switch-m.adb, | |
16038 | symbols-vms.adb, symbols-processing-vms-alpha.adb, | |
16039 | symbols-processing-vms-ia64.adb, sem_elab.adb, repinfo.adb: Replace | |
16040 | some occurrences of the pattern | |
16041 | T.Increment_Last; | |
16042 | T.Table (T.Last) := Value; | |
16043 | with a cleaner call to | |
16044 | T.Append (Value); | |
16045 | ||
16046 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
16047 | Gary Dismukes <dismukes@adacore.com> | |
16048 | Thomas Quinot <quinot@adacore.com> | |
16049 | ||
16050 | * sem_ch12.ads, sem_ch12.adb (Instantiate_Type): If the formal is a | |
16051 | derived type with interface progenitors use the analyzed formal as the | |
16052 | parent of the actual, to create renamings for all the inherited | |
16053 | operations in Derive_Subprograms. | |
16054 | (Collect_Previous_Instances): new procedure within of | |
16055 | Load_Parent_Of_Generic, to instantiate all bodies in the compilation | |
16056 | unit being loaded, to ensure that the generation of global symbols is | |
16057 | consistent in different compilation modes. | |
16058 | (Is_Tagged_Ancestor): New function testing the ancestor relation that | |
16059 | takes progenitor types into account. | |
16060 | (Validate_Derived_Type_Instance): Enforce the rule of 3.9.3(9) by | |
16061 | traversing over the primitives of the formal and actual types to locate | |
16062 | any abstract subprograms of the actual type that correspond to a | |
16063 | nonabstract subprogram of the formal type's ancestor type(s), and issue | |
16064 | an error if such is found. | |
16065 | (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation, | |
16066 | Instantiate_Package_Body, Instantiate_Subprogram_Body): | |
16067 | Remove bogus guard around calls to Inherit_Context. | |
16068 | (Reset_Entity): If the entity is the selector of a selected component | |
16069 | that denotes a named number, propagate constant-folding to the generic | |
16070 | template only if the named number is global to the generic unit. | |
16071 | (Set_Instance_Env): Only reset the compilation switches when compiling | |
16072 | a predefined or internal unit. | |
16073 | ||
16074 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
16075 | ||
16076 | * sem_ch4.adb (Try_Class_Wide_Operation): use base type of first | |
16077 | parameter to determine whether operation applies to the prefix. | |
16078 | (Complete_Object_Operation): If actual has an access type and | |
16079 | controlling formal is not an in_parameter, reject the actual if it is | |
16080 | an access_to_constant type. | |
16081 | (Try_Primitive_Operation): If the type of the prefix is a formal tagged | |
16082 | type, the candidate operations are found in the scope of declaration of | |
16083 | the type, because the type has no primitive subprograms. | |
16084 | (Analyze_Selected_Component): If prefix is class-wide, and root type is | |
16085 | a private extension, only examine visible components before trying to | |
16086 | analyze as a prefixed call. | |
16087 | Change Entity_List to Type_To_Use, for better readability. | |
16088 | (Has_Fixed_Op): Use base type when checking whether the type of an | |
16089 | operator has a user-defined multiplication/division | |
16090 | (Check_Arithmetic_Pair): Use Ada 2005 rules to remove ambiguities when | |
16091 | user-defined operators are available for fixed-point types. | |
16092 | ||
16093 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
16094 | Ed Schonberg <schonberg@adacore.com> | |
16095 | ||
16096 | * sem_cat.ads, sem_cat.adb (Has_Stream_Attribute_Definition): New | |
16097 | formal At_Any_Place indicating, when True, that we want to test for | |
16098 | availability of the stream attribute at any place (as opposed to the | |
16099 | current visibility context only). | |
16100 | (Missing_Read_Write_Attributes): A stream attribute is missing for the | |
16101 | purpose of enforcing E.2.2(8) only if it is not available at any place. | |
16102 | Take into account the Ada2005 pragma Has_Preelaborable_Initialization | |
16103 | when checking the legality of an extension aggregate in a preelaborable | |
16104 | package. Treat the literal null as a valid default expression in a | |
16105 | component declaration for a type with preelaborable initialization. | |
16106 | A limited interface is a legal progenitor for the designated type of a | |
16107 | remote access to class-wide type. | |
16108 | ||
16109 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
16110 | Ed Schonberg <schonberg@adacore.com> | |
16111 | ||
16112 | * sem_ch8.ads, sem_ch8.adb (Find_Type, case of a 'Base attribute | |
16113 | reference): Use correct entity as denoted entity for the selector of | |
16114 | the rewritten node. | |
16115 | (Find_Direct_Name): Add comment about Generate_Reference incorrectly | |
16116 | setting the Referenced_As_LHS flag for entities that are implicitly | |
16117 | dereferenced. | |
16118 | (Find_Type): If the type is an internally generated incomplete type, | |
16119 | mark the full view as referenced, to prevent spurious warnings. | |
16120 | (Find_Selected_Component, Has_Components): Handle properly non-limited | |
16121 | views that are themselves incomplete types. | |
16122 | Handle interfaces visible through limited-with clauses. | |
16123 | (Analyze_Subprogram_Renaming): Disambiguate and set the entity of a | |
16124 | subprogram generic actual for which we have generated a renaming. | |
16125 | Warn when the renaming introduces a homonym of | |
16126 | the renamed entity, and the renamed entity is directly visible. | |
16127 | ||
16128 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
16129 | Hristian Kirtchev <kirtchev@adacore.com> | |
16130 | ||
16131 | * sem_res.adb (Resolve_Allocator): Propagate any coextensions that | |
16132 | appear in the subtree to the current allocator if it is not a static | |
16133 | coextension. | |
16134 | (Resolve_Allocator): Perform cleanup if resolution has determined that | |
16135 | the allocator is not a coextension. | |
16136 | (Resolve): Skip an interpretation hidden by an abstract operator only | |
16137 | when the type of the interpretation matches that of the context. | |
16138 | (Resolve): When looping through all possible interpretations of a node, | |
16139 | do not consider those that are hidden by abstract operators. | |
16140 | (Resolve_Actuals): When verifying that an access to class-wide object | |
16141 | is an actual for a controlling formal, ignore anonymous access to | |
16142 | subprograms whose return type is an access to class_wide type. | |
16143 | (Resolve_Slice): If the prefix of the slice is a selected component | |
16144 | whose type depends on discriminants, build its actual subtype before | |
16145 | applying range checks on the bounds of the slice. | |
16146 | (Valid_Conversion): In an instance or inlined body, compare root types, | |
16147 | to prevent anomalies between private and public views. | |
16148 | (Resolve): Improve error message for ambiguous fixed multiplication | |
16149 | expressions that involve universal_fixed multiplying operations. | |
16150 | ||
16151 | 2007-08-14 Javier Miranda <miranda@adacore.com> | |
16152 | Hristian Kirtchev <kirtchev@adacore.com> | |
16153 | ||
16154 | * exp_ch9.adb (Build_Protected_Entry): Propagate the original source | |
16155 | location to allow the correct generation of errors in case of | |
16156 | restrictions applied to the expanded code. | |
16157 | (Expand_Entry_Barrier): Remove all generated renamings for a barrier | |
16158 | function if the condition does not reference them. | |
16159 | (Expand_Entry_Body_Declarations): Mark the index constant as having a | |
16160 | valid value. | |
16161 | ||
16162 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
8a57e48f | 16163 | Pablo Oliveira <oliveira@adacore.com> |
ab6328d0 AC |
16164 | |
16165 | * exp_dist.adb (PolyORB_Support.Build_TypeCode_Function): When creating | |
16166 | typecode parameters for a union (in a variant record), remove | |
16167 | extraneous layer of Any wrapping for member label. | |
16168 | (Expand_Receiving_Stubs_Bodies): For an RCI package body that has | |
16169 | elabration statements, register the package with the name server | |
16170 | at the beginning, not at the end, of the elaboration statements so | |
16171 | that they can create remote access to subprogram values that designate | |
16172 | remote subprograms from the package. | |
16173 | ||
16174 | 2007-08-14 Hristian Kirtchev <kirtchev@adacore.com> | |
16175 | ||
16176 | * g-catiio.adb (Image): For the case of %s, use Ada.Calendar.Time | |
16177 | values to compute the number of seconds since the Unix Epoc in order to | |
16178 | account for Daylight Savings Time. Perform special processing for dates | |
16179 | that are earlier than the Unix Epoc to obtain a negative number. | |
16180 | ||
16181 | 2007-08-14 Emmanuel Briot <briot@adacore.com> | |
16182 | ||
16183 | * g-comlin.adb (Getopt): Fix handling of "*" switch when not collapsing | |
16184 | switches. | |
16185 | ||
16186 | 2007-08-14 Eric Botcazou <ebotcazou@adacore.com> | |
16187 | ||
16188 | * gnatlink.adb (Gnatlink): Pass switches to the linker even if the | |
16189 | binder-generated file is not in Ada. | |
16190 | Pass -mrtp to the linker if it is GCC and --RTS=rtp has been | |
16191 | recorded in the ALI file. | |
16192 | Pass -fsjlj to the linker if it is GCC and --RTS=sjlj has been recorded. | |
16193 | ||
16194 | 2007-08-14 Vincent Celier <celier@adacore.com> | |
16195 | ||
16196 | * gnatls.adb: (Corresponding_Sdep_Entry): Always return a value | |
16197 | (Output_Source): Do nothing if parameter is No_Sdep_Id | |
16198 | ||
16199 | * make.adb (Gnatmake): Do not rebuild an archive simply because a | |
16200 | shared library it imports has a later time stamp. | |
16201 | (Check): Resolve the symbolic links in the path name of the object | |
16202 | directory. | |
16203 | Check that the ALI file is in the correct object directory | |
16204 | Check if a file name does not correspond to the mapping of units | |
16205 | to file names. | |
16206 | (Display_Version): New procedure | |
16207 | (Initialize): Process switches --version and --help | |
16208 | Use type Path_Name_Type for path name | |
16209 | ||
16210 | 2007-08-14 Paul Hilfinger <hilfinger@adacore.com> | |
16211 | ||
16212 | * impunit.adb: Re-organize System.Random_Numbers and | |
16213 | GNAT.Random_Numbers and add to builds. | |
16214 | ||
16215 | * Makefile.rtl: Add s-rannum.ad* and g-rannum.ad*, a-assert* | |
16216 | ||
16217 | * s-rannum.ads, s-rannum.adb, g-rannum.ads, g-rannum.adb: New files. | |
16218 | ||
16219 | * a-assert.ads, a-assert.adb: New files. | |
16220 | ||
16221 | 2007-08-14 Gary Dismukes <dismukes@adacore.com> | |
16222 | ||
16223 | * layout.adb (Layout_Type): In the case of access-to-subprogram types, | |
16224 | if AAMP_On_Target is True, then the size of the type encompasses two | |
16225 | addresses (a static link and a subprogram address), except in the case | |
16226 | of library-level access types. | |
16227 | ||
16228 | 2007-08-14 Vincent Celier <celier@adacore.com> | |
16229 | ||
16230 | * output.ads, output.adb (Write_Eol): Remove trailing spaces before | |
16231 | writing the line. | |
16232 | (Write_Eol_Keep_Blanks): New procedure to write a line, including | |
16233 | possible trailing spaces. | |
16234 | (Output_Source_Line): Call Write_Eol_Keep_Blanks to output a source line | |
16235 | ||
16236 | 2007-08-14 Javier Miranda <miranda@adacore.com> | |
16237 | ||
16238 | * par-ch6.adb (P_Formal_Part): Fix wrong error message associated with | |
16239 | null-excluding access types. | |
16240 | ||
16241 | 2007-08-14 Javier Miranda <miranda@adacore.com> | |
16242 | ||
16243 | * sem_ch9.adb (Check_Interfaces): New subprogram that factorizes code | |
16244 | that is common to Analyze_Protected_Type and Analyze_Task_Type. In case | |
16245 | of private types add missing check on matching interfaces in the | |
16246 | partial and full declarations. | |
16247 | (Analyze_Protected_Type): Code cleanup. | |
16248 | (Analyze_Task_Type): Code cleanup. | |
16249 | ||
16250 | 2007-08-14 Javier Miranda <miranda@adacore.com> | |
16251 | ||
16252 | * sem_disp.adb (Check_Dispatching_Operation): Do not emit warning on a | |
16253 | generated interface thunk. | |
16254 | ||
16255 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
16256 | ||
16257 | * s-ficobl.ads: Declare AFCB as a tagged incomplete type, to prevent | |
16258 | obsolescent warning on application of 'Class to an incomplete type. | |
16259 | ||
16260 | * s-finroo.ads: Declare Root_Controlled as a tagged incomplete type, to | |
16261 | prevent obsolescent warning on application of 'Class to an incomplete | |
16262 | type. | |
16263 | ||
16264 | 2007-08-14 Pascal Obry <obry@adacore.com> | |
16265 | ||
16266 | * s-fileio.adb (Is_Open): Add check for usability of the underlying | |
16267 | file stream. | |
16268 | ||
16269 | 2007-08-14 Cyrille Comar <comar@adacore.com> | |
16270 | ||
16271 | * s-finimp.adb (Detach_From_Final_List): make this procedure idempotent | |
16272 | since it is potentially used in cases implying double finalization of | |
16273 | the same object. | |
16274 | ||
16275 | 2007-08-14 Jose Ruiz <ruiz@adacore.com> | |
16276 | ||
16277 | * s-tasini.adb (Get_Stack_Info): Move this function to | |
16278 | System.Soft_Links.Tasking because it is common to the full and the | |
16279 | restricted run times. | |
16280 | (Init_RTS): Do not set the Get_Stack_Info soft link because it is done | |
16281 | in SSL.Tasking.Init_Tasking_Soft_Links. | |
16282 | ||
16283 | * s-solita.adb (Get_Stack_Info): Function moved from | |
16284 | System.Tasking.Initialization because it is common to the full and the | |
16285 | restricted run times. | |
16286 | (Init_Tasking_Soft_Links): Set the tasking soft link for Get_Stack_Info. | |
16287 | ||
16288 | 2007-08-14 Arnaud Charlet <charlet@adacore.com> | |
16289 | ||
16290 | * s-tpobop.ads, s-tpobop.adb, s-tasren.ads, s-tasren.adb, | |
16291 | s-taskin.ads (Requeue_With_Abort): Rename field With_Abort. | |
16292 | (PO_Do_Or_Queue, Task_Do_Or_Queue, Requeue_Call): Remove With_Abort | |
16293 | parameter. | |
16294 | ||
16295 | * s-tassta.adb (Task_Wrapper): Increased value of the small overflow | |
16296 | guard to 12K. | |
16297 | ||
16298 | 2007-08-14 Gary Dismukes <dismukes@adacore.com> | |
16299 | ||
16300 | * s-veboop.adb (SU): New named number initialized to | |
16301 | System.Storage_Unit. | |
16302 | (True_Val): The initialization expression is revised to use SU (= | |
16303 | Storage_Unit) rather than assuming 8 for the component size of an | |
16304 | unpacked Boolean array. | |
16305 | ||
16306 | 2007-08-14 Tristan Gingold <gingold@adacore.com> | |
16307 | ||
16308 | * tracebak.c: Use tb-ivms.c on OpenVMS Itanium. | |
16309 | ||
16310 | * tb-ivms.c: New file. | |
16311 | ||
16312 | * g-trasym-vms-ia64.adb: Fixed for OpenVMS version 8.2 | |
16313 | ||
16314 | 2007-08-14 Geert Bosch <bosch@adacore.com> | |
16315 | ||
16316 | * i-forbla.ads, i-forbla.adb, a-ngcoar.adb, a-ngcoar.ads, i-forlap.ads, | |
16317 | s-gearop.adb, s-gecobl.adb, s-gecobl.ads, s-gerela.adb, s-gerela.ads: | |
16318 | Add required linker pragmas for automatically linking with the gnalasup | |
16319 | linear algebra support library, and the systems math library. | |
16320 | Rename cdot to cdotu and zdot to zdotu. | |
16321 | Update header comment to describe purpose of package. | |
16322 | ||
16323 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
16324 | ||
16325 | * exp_ch7.adb (Find_Final_List): For an anonymous access type that has | |
16326 | an explicitly specified Associated_Final_Chain, use that list. | |
16327 | (Expand_N_Package_Body): Build dispatch tables of library level tagged | |
16328 | types. | |
16329 | (Expand_N_Package_Declaration): Build dispatch tables of library level | |
16330 | tagged types. Minor code cleanup. | |
16331 | ||
16332 | 2007-08-14 Vincent Celier <celier@adacore.com> | |
16333 | ||
16334 | * gnatchop.adb (Terminate_Program): Remove exception and use | |
16335 | Types.Terminate_Program instead. | |
16336 | ||
16337 | * osint.ads, osint.adb (Current_Exit_Status): New global variable | |
16338 | (Find_Program_Name): Added protection against empty name. | |
16339 | (OS_Exit_Through_Exception): New procedure | |
16340 | ||
16341 | * s-os_lib.ads, s-os_lib.adb (OS_Exit): New procedure body | |
16342 | (OS_Exit_Default): New procedure that contains the previous | |
16343 | implementation of procedure OS_Exit. | |
16344 | (Final_Value): Remove obsolete Interix stuff. | |
16345 | ||
16346 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
16347 | ||
16348 | * g-socket.ads: Reorganize example code so that it also works on | |
16349 | Windows XP. | |
16350 | ||
16351 | 2007-08-14 Tristan Gingold <gingold@adacore.com> | |
16352 | ||
16353 | * g-trasym.ads: AIX now supports symbolic backtraces. | |
16354 | ||
16355 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
16356 | ||
16357 | * lib-load.adb (From_Limited_With_Chain): Always scan the stack of | |
16358 | units being loaded to detect circularities. A circularity may be | |
16359 | present even if the current chain of pending units to load starts from | |
16360 | a limited_with_clause. | |
16361 | ||
16362 | * lib-load.ads: Change profile of Load_Unit to use a with_clause | |
16363 | rather than a boolean flag, in order to detect circularities in | |
16364 | with_clauses. | |
16365 | ||
16366 | * par-load.adb: Use current with_clause in calls to Load_Unit, rather | |
16367 | than propagating the From_Limited_With flag, in order to handle | |
16368 | properly circularities involving with_clauses. | |
16369 | ||
16370 | 2007-08-14 Nicolas Setton <setton@adacore.com> | |
16371 | ||
16372 | * link.c (FreeBSD): Add "const" keyword where needed, to eliminate | |
16373 | warnings. | |
16374 | ||
16375 | 2007-08-14 Arnaud Charlet <charlet@adacore.com> | |
16376 | ||
16377 | * Makefile.in: GNATRTL_LINEARALGEBRA_OBJS: New variable holding objects | |
16378 | to build for libgnala. | |
16379 | libgnat: Add rules to build libgnala.a | |
16380 | (LIBGNAT_TARGET_PAIRS for VxWorks): Remove s-osinte-vxworks.adb from | |
16381 | target pairs of the VxWorks 6 kernel runtime, use it only for VxWorks 5. | |
16382 | Add s-osinte-vxworks-kernel.adb to the target pairs of the | |
16383 | kernel run-time lib for VxWorks 6, which would provide a different | |
16384 | implementation for Task_Cont and Task_Stop than the VxWorks 5 version. | |
16385 | x86-solaris section (EH_MECHANISM): Set to -gcc, as this port is now | |
16386 | running ZCX by default. | |
16387 | Add g-sttsne-locking to LynxOS version. | |
16388 | Remove g-sttsne-vxworks.ads; use g-sttsne-locking.ads instead. | |
16389 | On x86/darwin, use a-numaux-x86.ad? and system-darwin-x86.ads. | |
16390 | ||
16391 | * system-darwin-x86.ads: New file. | |
16392 | ||
16393 | * Make-lang.in: Delete files before copying onto them, so if they are | |
16394 | read-only, the copy won't fail. | |
16395 | Update dependencies | |
16396 | ||
16397 | 2007-08-14 Pascal Obry <obry@adacore.com> | |
16398 | ||
16399 | * mdll-fil.adb, * mdll.adb: Implement a more consistent libraries | |
16400 | naming scheme. | |
16401 | ||
16402 | 2007-08-14 Vincent Celier <celier@adacore.com> | |
16403 | ||
16404 | * mlib-utl.adb (Gcc_Name): Change from constant String to String_Access | |
16405 | (Gcc): Initialize Gcc_Name at the first call | |
16406 | ||
16407 | 2007-08-14 Ed Schonberg <schonberg@adacore.com> | |
16408 | ||
16409 | * sem_ch7.adb (Analyze_Package_Specification): Do not install private | |
16410 | with_clauses of the enclosing unit when analyzing the package | |
16411 | specification of a nested instance. | |
16412 | ||
16413 | 2007-08-14 Hristian Kirtchev <kirtchev@adacore.com> | |
16414 | ||
16415 | * sinfo.ads, sinfo.adb (Is_Coextension, Set_Is_Coextension): Removed. | |
16416 | (Is_Dynamic_Coextension, Set_Is_Dynamic_Coextension): New routines. | |
16417 | Remove flag Is_Coextension. Add flag Is_Dynamic_Coextension. Update the | |
16418 | layout of N_Allocator. | |
16419 | ||
16420 | 2007-08-14 Thomas Quinot <quinot@adacore.com> | |
16421 | ||
16422 | * rtsfind.adb (Check_RPC): Add PCS version check. | |
16423 | ||
16424 | * gnatvsn.ads, gnatvsn.adb: Add PCS version. | |
16425 | (Gnat_Free_Software): New function. | |
16426 | ||
16427 | * sem_dist.ads, sem_dist.adb (Get_PCS_Version): New subprogram. Returns | |
16428 | the PCS_Version value from s-parint, used to check that it is consistent | |
16429 | with what exp_dist expects. | |
16430 | ||
16431 | * s-parint.ads (PCS_Version): New entity for checking consistency | |
16432 | between exp_dist and PCS. | |
16433 | ||
16434 | * gen-soccon.c: (SO_REUSEPORT): New constant. | |
16435 | ||
16436 | 2007-08-14 Hristian Kirtchev <kirtchev@adacore.com> | |
16437 | ||
16438 | * a-calfor.adb (Image (Duration; Boolean)): Change type of local | |
16439 | variable Sub_Second to Duration in order to accomodate a larger range | |
16440 | of arithmetic operations. | |
16441 | ||
16442 | 2007-08-14 Bob Duff <duff@adacore.com> | |
16443 | ||
16444 | * g-sttsne-locking.ads: Move comments from spec to body. | |
16445 | * g-sttsne-locking.adb: Move comments from spec to body. | |
16446 | * g-sttsne-vxworks.ads: Removed. | |
16447 | * g-sttsne-vxworks.adb: Removed. | |
16448 | ||
4862826d ILT |
16449 | 2007-08-11 Ian Lance Taylor <iant@google.com> |
16450 | ||
16451 | * misc.c (gnat_get_alias_set): Change return type to | |
16452 | alias_set_type. | |
16453 | ||
4d8a9bfe KG |
16454 | 2007-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
16455 | ||
16456 | * decl.c, utils2.c: Fix whitespace in last change. | |
16457 | ||
39595763 KG |
16458 | 2007-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
16459 | ||
16460 | * decl.c (compare_field_bitpos): Constify. | |
16461 | * utils2.c (compare_elmt_bitpos): Likewise. | |
16462 | ||
08e7e8cb AJ |
16463 | 2007-07-27 Aurelien Jarno <aurelien@aurel32.net> |
16464 | ||
9e81dbc7 | 16465 | * s-osinte-kfreebsd-gnu.ads ((sigset_t_ptr): Removed, replaced by |
08e7e8cb AJ |
16466 | anonymous access type. |
16467 | (pthread_sigmask): Now take an access sigset_t. | |
16468 | ||
9e94c78f | 16469 | 2007-07-05 Joel Sherrill <joel.sherrill@oarcorp.com> |
83983455 | 16470 | |
9e81dbc7 AS |
16471 | * s-osinte-rtems.ads: Correct prototype of pthread_sigmask. |
16472 | ||
a8257e58 EB |
16473 | 2007-06-21 Eric Botcazou <ebotcazou@adacore.com> |
16474 | ||
16475 | PR tree-optimization/25737 | |
16476 | * misc.c (gnat_post_options): Do not force flag_tree_salias to 0. | |
16477 | ||
5be014d5 AP |
16478 | 2007-06-15 Andrew Pinski <andrew_pinski@playstation.sony.com> |
16479 | ||
16480 | * trans.c (Attribute_to_gnu): When subtracting an | |
16481 | offset from a pointer, use POINTER_PLUS_EXPR with | |
16482 | NEGATE_EXPR instead of MINUS_EXPR. | |
16483 | (gnat_to_gnu): Likewise. | |
16484 | * utils.c (convert): When converting between | |
16485 | thin pointers, use POINTER_PLUS_EXPR and sizetype | |
16486 | for the offset. | |
16487 | * utils2.c (known_alignment): POINTER_PLUS_EXPR | |
16488 | have the same semantics as PLUS_EXPR for alignment. | |
16489 | (build_binary_op): Add support for the semantics of | |
16490 | POINTER_PLUS_EXPR's operands. | |
16491 | When adding an offset to a pointer, use POINTER_PLUS_EXPR. | |
16492 | ||
719bb4e3 | 16493 | 2007-06-11 Rafael Ávila de Espíndola <espindola@google.com> |
b0464c88 | 16494 | |
a472f546 EB |
16495 | * trans.c (Attribute_to_gnu): Use signed_or_unsigned_type_for instead |
16496 | of get_signed_or_unsigned_type. | |
b0464c88 RE |
16497 | * misc.c (LANG_HOOKS_SIGNED_TYPE): Remove. |
16498 | ||
93e17a25 | 16499 | 2007-06-11 Bob Duff <duff@adacore.com> |
9e81dbc7 | 16500 | Thomas Quinot <quinot@adacore.com> |
93e17a25 BD |
16501 | |
16502 | * g-stsifd-sockets.adb (Create): Work around strange behavior of | |
16503 | 'bind' on windows that causes 'connect' to fail intermittently, by | |
16504 | retrying the 'bind'. | |
16505 | (GNAT.Sockets.Thin.Signalling_Fds): New procedure Close. | |
16506 | ||
1bbf8502 DS |
16507 | 2007-06-10 Duncan Sands <baldrick@free.fr> |
16508 | ||
16509 | * decl.c (gnat_to_gnu_entity): Use pointers to dummy nodes, rather | |
16510 | than to void, for the fields when making a new fat pointer type. | |
16511 | (gnat_substitute_in_type): Now substitute_in_type. | |
a472f546 | 16512 | * gigi.h (gnat_substitute_in_type): Likewise. Adjust recursive calls. |
1bbf8502 DS |
16513 | * trans.c (gnat_gimplify_expr): Remove COMPONENT_REF kludge. |
16514 | * utils.c (update_pointer_to): Update fat pointers by updating the | |
16515 | dummy node pointers used for the fields. | |
16516 | ||
ec11296f AC |
16517 | 2007-06-06 Thomas Quinot <quinot@adacore.com> |
16518 | Bob Duff <duff@adacore.com> | |
16519 | ||
9e81dbc7 AS |
16520 | * g-soccon-freebsd.ads, g-soccon-vxworks.ads:, |
16521 | g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads, | |
ec11296f AC |
16522 | g-soccon-solaris.ads, g-soccon-vms.ads, g-soccon-tru64.ads: Add new |
16523 | constant Thread_Blocking_IO, always True by default, set False | |
16524 | on a per-runtime basis. | |
16525 | (Need_Netdb_Buffer): New constant. | |
16526 | ||
16527 | * g-stheme.adb, g-sttsne.ads, g-sttsne-locking.ads, | |
16528 | g-sttsne-locking.adb, g-sttsne-vxworks.ads, g-sttsne-vxworks.adb: New | |
16529 | files. | |
16530 | ||
16531 | * g-socthi-vxworks.ads, g-socthi-vxworks.adb, | |
16532 | g-socthi-vms.ads, g-socthi-vms.adb (Safe_Gethostbyname, | |
16533 | Safe_Gethostbyaddr, Safe_Getservbyname, Safe_Getservbyport): Use new | |
16534 | child package Task_Safe_NetDB | |
16535 | (Host_Error_Messages): Add stub body. | |
16536 | (GNAT.Sockets.Thin.Signalling_Fds): New procedure Close. | |
16537 | ||
16538 | * g-soccon-mingw.ads: Add Windows-specific constants. | |
16539 | (Need_Netdb_Buffer): New constant. | |
16540 | (GNAT.Sockets.Thin.C_Inet_Addr, Windows version): Remove useless Ada | |
16541 | wrapper and import inet_addr(3) from the standard sockets library | |
16542 | directly instead. | |
16543 | (In_Addr): Add alignment clause. | |
16544 | (GNAT.Sockets.Thin.Signalling_Fds): New procedure Close. | |
16545 | ||
16546 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
16547 | ||
16548 | * a-taster.adb, s-osinte-hpux.ads, s-osinte-solaris-posix.ads, | |
16549 | s-osinte-irix.ads, s-interr-sigaction.adb, s-mastop-irix.adb, | |
16550 | s-osinte-hpux-dce.ads, s-osinte-interix.ads, s-osinte-solaris.ads, | |
16551 | s-taspri-solaris.ads, s-inmaop-vms.adb, s-interr-vms.adb, | |
16552 | s-mastop-vms.adb, s-osinte-vms.ads, s-tpopde-vms.adb, | |
16553 | s-osinte-mingw.ads, s-interr-vxworks.adb, i-cstrea-vms.adb, | |
16554 | a-diocst.adb, a-direio.adb, a-interr.adb, a-sequio.adb, a-siocst.adb, | |
16555 | a-ssicst.adb, a-storio.adb, a-ststio.adb, a-stwima.adb, a-tasatt.adb, | |
16556 | a-taside.adb, a-tiocst.adb, a-witeio.adb, a-wtcstr.adb, g-crc32.adb, | |
16557 | g-dirope.adb, g-dyntab.adb, g-memdum.adb, g-regexp.adb, g-spipat.adb, | |
16558 | g-spitbo.adb, g-string.adb, g-string.ads, g-table.adb, g-thread.adb, | |
16559 | i-cobol.adb, i-cpoint.adb, i-cstrea.adb, i-cstrin.adb, i-pacdec.adb, | |
16560 | s-addima.adb, s-arit64.adb, s-auxdec.adb, s-auxdec.ads, | |
16561 | s-auxdec-vms_64.ads, s-carsi8.adb, s-carun8.adb, s-casi16.adb, | |
16562 | s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb, | |
16563 | s-direio.adb, s-fileio.adb, s-finimp.ads, s-geveop.adb, s-imgenu.adb, | |
16564 | s-pack03.adb, s-pack05.adb, s-pack06.adb, s-pack07.adb, s-pack09.adb, | |
16565 | s-pack10.adb, s-pack11.adb, s-pack12.adb, s-pack13.adb, s-pack14.adb, | |
16566 | s-pack15.adb, s-pack17.adb, s-pack18.adb, s-pack19.adb, s-pack20.adb, | |
16567 | s-pack21.adb, s-pack22.adb, s-pack23.adb, s-pack24.adb, s-pack25.adb, | |
16568 | s-pack26.adb, s-pack27.adb, s-pack28.adb, s-pack29.adb, s-pack30.adb, | |
16569 | s-pack31.adb, s-pack33.adb, s-pack34.adb, s-pack35.adb, s-pack36.adb, | |
16570 | s-pack37.adb, s-pack38.adb, s-pack39.adb, s-pack40.adb, s-pack41.adb, | |
16571 | s-pack42.adb, s-pack43.adb, s-pack44.adb, s-pack45.adb, s-pack46.adb, | |
16572 | s-pack47.adb, s-pack48.adb, s-pack49.adb, s-pack50.adb, s-pack51.adb, | |
16573 | s-pack52.adb, s-pack53.adb, s-pack54.adb, s-pack55.adb, s-pack56.adb, | |
16574 | s-pack57.adb, s-pack58.adb, s-pack59.adb, s-pack60.adb, s-pack61.adb, | |
16575 | s-pack62.adb, s-pack63.adb, s-pooloc.adb, s-poosiz.adb, s-scaval.adb, | |
16576 | s-sequio.adb, s-shasto.adb, s-stalib.ads, s-stratt.adb, s-strcom.adb, | |
16577 | s-taasde.adb, s-tasdeb.adb, s-tasuti.ads, s-tataat.ads, s-tpoben.ads, | |
16578 | s-valenu.adb, s-widenu.adb, s-wwdenu.adb, s-addope.adb, a-stzmap.adb, | |
16579 | a-ztcstr.adb, a-ztexio.adb, s-osinte-linux-hppa.ads: Replace | |
16580 | Unchecked_* by Ada.Unchecked_* | |
16581 | ||
16582 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
16583 | ||
16584 | * g-string.adb, s-proinf-irix-athread.adb, s-gloloc-mingw.adb, | |
16585 | s-tfsetr-default.adb, gnatfind.adb, gnatxref.adb, gprep.adb, | |
16586 | g-regexp.adb, g-regexp.ads, g-regpat.ads, g-tasloc.adb, g-tasloc.ads, | |
16587 | output.adb, switch-m.ads, tree_in.ads, tree_io.ads, indepsw.ads, | |
16588 | g-utf_32.adb, g-utf_32.ads, a-wichun.adb, a-wichun.ads, a-zchuni.adb, | |
16589 | a-zchuni.ads: Replace GNAT.xxx by System.xxx when appropriate. | |
16590 | ||
16591 | * s-utf_32.adb, s-utf_32.ads, s-os_lib.adb, s-os_lib.ads, s-regexp.adb, | |
16592 | s-regexp.ads, s-regpat.adb, s-regpat.ads, s-string.adb, s-string.ads, | |
16593 | s-tasloc.adb, s-tasloc.ads: New files. | |
16594 | ||
16595 | 2007-06-06 Bob Duff <duff@adacore.com> | |
16596 | ||
9e81dbc7 | 16597 | * g-expect-vms.adb: |
ec11296f AC |
16598 | (Send_Signal, Close): Raise Invalid_Process if the process id is invalid. |
16599 | * g-expect.ads, g-expect.adb (Send): Avoid useless copy of the string. | |
16600 | (Send_Signal, Close): Raise Invalid_Process if the process id is | |
16601 | invalid. | |
16602 | (Pattern_Matcher_Access): Is now a general access type to be able to | |
16603 | use aliased string. | |
16604 | ||
16605 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
16606 | Arnaud Charlet <charlet@adacore.com> | |
16607 | ||
a472f546 EB |
16608 | * a-intnam-aix.ads: Adjust comment to account for SIGADAABORT change |
16609 | (SIGEMT is now used instead of SIGTERM on AIX). | |
ec11296f AC |
16610 | |
16611 | * s-osinte-aix.ads (Linker_Options): Use -pthread instead of -lpthreads. | |
16612 | (Time_Slice_Supported): Set to True. | |
a472f546 | 16613 | Use SIGEMT instead of SIGTERM as SIGADAABORT. |
ec11296f AC |
16614 | |
16615 | 2007-06-06 Hristian Kirtchev <kirtchev@adacore.com> | |
16616 | ||
16617 | * a-calend.ads, a-calend.adb, a-calend-vms.ads, a-calend-vms.adb ("-" | |
16618 | (Time, Time)): Use To_Relative_Time rather than manual calculation to | |
16619 | express the bounds of Duration as Time. Raise Time_Error when the | |
16620 | result is greater or equal to the higher bound of Duration (on the | |
16621 | margin case). | |
16622 | ("+" (Time, Duration)): Reorder code. Remove the declaration of constant | |
16623 | Ada_High_And_Leaps. | |
16624 | ("-" (Time, Duration)): Reorder code. Remove the declaration of constant | |
16625 | Ada_High_And_Leaps. | |
16626 | ("-" (Time, Time)): Reorder code. | |
16627 | (All_Leap_Seconds): Removed. | |
16628 | (Arithmetic_Operations.Add): Remove sign related kludge. | |
16629 | (Arithmetic_Operations.Difference): Control the leaps seconds processing | |
16630 | with flag Leap_Support. | |
16631 | (Arithmetic_Operations.Subtract): Remove sign related kludge. | |
16632 | (Check_Within_Time_Bounds): New procedure. | |
16633 | (Clock): Control the leap seconds processing with flag Leap_Support. | |
16634 | (Cumulative_Leap_Seconds): Assert that the target supports leap seconds. | |
16635 | (Formatting_Operations.Split): Control the leap seconds processing with | |
16636 | flag Leap_Support. | |
16637 | (Formatting_Operations.Time_Of): Control the leaps seconds processing | |
16638 | with flag Leap_Support. Adjust the year, month and day (if applicable) | |
16639 | when the value of day seconds designates a new day. | |
16640 | (Split): Use parameter associations for better readability. Integrate | |
16641 | flag Is_Ada_05. | |
16642 | (Time_Of): Use parameter associations for better readability. Integrate | |
16643 | flag Is_Ada_05. | |
16644 | ||
16645 | * a-calfor.adb (Split): Use parameter associations for better | |
16646 | readability. Integrate flag Is_Ada_05. | |
16647 | (Time_Of): Remove flag Leap_Checks. Use parameter associations for | |
16648 | better readability. Integrate flag Is_Ada_05. | |
16649 | ||
16650 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
16651 | ||
9e81dbc7 AS |
16652 | * s-taprop-vms.adb, s-taprop-hpux-dce.adb, s-taprop-vxworks.adb, |
16653 | s-osprim-posix.adb, s-taprop-posix.adb, s-osprim-vxworks.adb, | |
16654 | s-taprop-solaris.adb, s-osprim-solaris.adb, s-taprop-dummy.adb, | |
16655 | s-osprim-unix.adb, s-osinte-freebsd.adb, s-osinte-freebsd.ads, | |
16656 | s-osinte-lynxos.adb, s-osinte-lynxos.ads, s-taprop-tru64.adb, | |
16657 | s-taprop-lynxos.adb, s-taprop-irix.adb, s-osinte-tru64.adb, | |
16658 | s-osinte-tru64.ads, s-taprop-linux.adb, s-parame.ads, | |
16659 | s-parame-vms-alpha.ads, s-parame-vms-ia64.ads, s-parame-hpux.ads, | |
16660 | s-parame-vms-restrict.ads, s-parame-ae653.ads, s-parame-vxworks.ads, | |
ec11296f | 16661 | s-taprop-mingw.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos-3.adb, |
9e81dbc7 | 16662 | s-osprim-mingw.adb (Timed_Delay, Timed_Sleep): Register the base |
ec11296f AC |
16663 | time when entering this routine to detect a backward clock setting |
16664 | (manual setting or DST adjustment), to avoid waiting for a longer delay | |
16665 | than needed. | |
16666 | (Time_Duration, To_Timeval, struct_timeval): Removed when not relevant. | |
16667 | Remove handling of deferred priority change, and replace by setting the | |
16668 | task priority directly, as required by AI-188. | |
16669 | Update comments. | |
16670 | (Max_Task_Image_Length): New constant. | |
16671 | Replace Warnings (Off) by Unreferenced pragma, cleaner. | |
16672 | (Dynamic_Priority_Support): Removed, no longer needed. | |
16673 | (Poll_Base_Priority_Change): Ditto. | |
16674 | (Set_Ceiling): Add this procedure to change the ceiling priority | |
16675 | associated to a lock. This is a dummy implementation because dynamic | |
16676 | priority ceilings are not supported by the underlying system. | |
16677 | ||
16678 | * a-dynpri.adb (Set_Priority): Take into account case where Target is | |
16679 | accepting a RV with its priority boosted. | |
16680 | Remove handling of deferred priority change, and replace by setting the | |
16681 | task priority directly, as required by AI-188. | |
16682 | ||
16683 | * s-taenca.adb (Try_To_Cancel_Entry_Call): Remove special case for | |
16684 | Succeeded = True. | |
16685 | Remove handling of deferred priority change, and replace by setting the | |
16686 | task priority directly, as required by AI-188. | |
16687 | (Wait_For_Completion, Wait_For_Call, Timed_Selective_Wait): Change state | |
16688 | of Self_Id earlier. | |
16689 | ||
16690 | * s-tasini.ads, s-tasini.adb (Wakeup_Entry_Caller): Relax assertion. | |
16691 | (Poll_Base_Priority_Change): Removed. | |
16692 | Code clean up: use SSL.Current_Target_Exception. | |
16693 | ||
16694 | * s-tasren.adb (Task_Count): Call Yield to let a chance to other tasks | |
16695 | to run as this is a potentially dispatching point. | |
16696 | (Call_Synchronous): Use Local_Defer_Abort. | |
16697 | (Callable): Relax assertion. | |
16698 | (Selective_Wait): Relax assertion in case abort is not allowed. | |
16699 | Remove handling of deferred priority change, and replace by setting the | |
16700 | task priority directly, as required by AI-188. | |
16701 | ||
16702 | * s-tasuti.adb (Make_Passive): Adjust assertions. | |
16703 | Remove handling of deferred priority change, and replace by setting the | |
16704 | task priority directly, as required by AI-188. | |
16705 | ||
16706 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
16707 | ||
9e81dbc7 AS |
16708 | * system-vxworks-sparcv9.ads, system-solaris-x86.ads, |
16709 | system-irix-o32.ads, system-freebsd-x86.ads, system-lynxos-ppc.ads, | |
16710 | system-lynxos-x86.ads, system-vxworks-m68k.ads, system-linux-x86.ads, | |
16711 | system-vxworks-mips.ads, system-vxworks-alpha.ads, | |
16712 | system-vxworks-x86.ads, system-linux-ppc.ads, system-mingw.ads, | |
16713 | system-vms-zcx.ads, system-darwin-ppc.ads, system-vxworks-ppc.ads, | |
16714 | system-interix.ads, system-linux-hppa.ads, system-tru64.ads, | |
16715 | system-hpux.ads, system-irix-n32.ads, system-solaris-sparc.ads, | |
ec11296f AC |
16716 | system-solaris-sparcv9.ads, system-vms.ads, system.ads, |
16717 | system-vms_64.ads, system-hpux-ia64.ads, system-linux-x86_64.ads, | |
16718 | system-linux-ia64.ads: Document mapping between Ada and OS priorities. | |
16719 | This patch changes the largest non-binary modulus from 2**31-1 to | |
16720 | 2**32-1. | |
16721 | (Compiler_System_Version): Removed, no longer used. | |
16722 | Clean up system files by removing flags only used on a single target. | |
16723 | Also remove obsolete flags, only used during bootstrap from system.ads | |
16724 | (Address): Add a pragma Preelaborable_Initialization. | |
16725 | ||
16726 | * system-aix.ads: Ditto. | |
16727 | (GCC_ZCX_Support): Set to true. | |
16728 | Update priority range on AIX and map Ada priorities to target | |
16729 | priorities appropriately for different scheduling policies. | |
16730 | ||
16731 | * ttypes.ads: set largest non-binary modulus from 2**31-1 to 2**32-1 | |
16732 | ||
16733 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
16734 | ||
16735 | * mlib-tgt-specific.adb, mlib-tgt-specific.ads, | |
16736 | mlib-tgt-vms.adb, mlib-tgt-vms.ads: New files. | |
16737 | ||
9e81dbc7 AS |
16738 | * mlib-tgt.adb, mlib-tgt.ads, mlib-tgt-darwin.adb, |
16739 | mlib-tgt-vxworks.adb, mlib-tgt-mingw.adb, mlib-tgt-lynxos.adb, | |
16740 | mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, | |
16741 | mlib-tgt-vms-ia64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, | |
ec11296f | 16742 | mlib-tgt-hpux.adb, mlib-tgt-tru64.adb: Make a common body for package |
a472f546 EB |
16743 | MLib.Tgt, containing the default versions of the exported subprograms. |
16744 | For each platform, create a specific version of the body of new child | |
16745 | package MLib.Tgt.Specific that contains only the body of subprograms | |
16746 | that are different from the default. | |
16747 | (Archive_Builder_Append_Options): New function. | |
ec11296f AC |
16748 | |
16749 | 2007-06-06 Matthew Gingell <gingell@adacore.com> | |
16750 | ||
a472f546 EB |
16751 | * s-osinte-aix.adb: Map Ada priorities to target priorities |
16752 | appropriately for different scheduling policies. | |
ec11296f AC |
16753 | |
16754 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
16755 | ||
16756 | * s-osinte-linux.ads (sigset_t): Bump alignment to match more closely | |
16757 | its C counterpart. | |
16758 | Remove references to Unchecked_Conversion, and use Ada.xxx instead. | |
9e81dbc7 | 16759 | Replace Unchecked_Conversion by Ada.Unchecked_Conversion. |
ec11296f AC |
16760 | |
16761 | 2007-06-06 Vasiliy Fofanov <fofanov@adacore.com> | |
16762 | ||
a472f546 EB |
16763 | * s-osprim-vms.ads, s-osprim-vms.adb (Initialize): New procedure. |
16764 | Noop on VMS, added for interface commonality. | |
ec11296f AC |
16765 | |
16766 | 2007-06-06 Eric Botcazou <ebotcazou@adacore.com> | |
16767 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
16768 | Olivier Hainque <hainque@adacore.com> | |
16769 | ||
16770 | * decl.c (gnat_to_gnu_entity) <object>: Manually mark the top of the | |
16771 | renamed expression of a full renaming at toplevel. | |
16772 | (gnat_to_gnu_entity, case object): If not defining, do not look inside | |
16773 | the values the constant is initialized to if it is an N_Allocator. | |
16774 | (gnat_to_gnu_entity) <E_Array_Subtype>: Manually mark the top of the | |
16775 | TYPE_SIZE_UNIT of inner types after the stride is elaborated. | |
16776 | (make_aligning_type): Accept an extra ROOM argument for storage to be | |
16777 | made available before the aligned field, and an extra BASE_ALIGN | |
16778 | argument for callers to pass the alignment guaranteed to be honored for | |
16779 | the whole aligning object. Avoid call to finish_record_type, which only | |
16780 | interferes with the sizes we want to set. | |
16781 | (gnat_to_gnu_entity) <E_Variable>: Pass the required extra arguments to | |
16782 | make_aligning_type for super-aligned objects on stack. | |
16783 | (components_to_record): Pass the adjusted size of the type when creating | |
16784 | fields in the qualified union for the variant part. | |
16785 | (gnat_substitute_in_type): Copy TYPE_USER_ALIGN. | |
16786 | (gnat_to_gnu_entity, case E_Signed_Integer_Subtype): Likewise for | |
16787 | packed array type. | |
16788 | (maybe_pad_type): Set TYPE_USER_ALIGN. | |
16789 | (make_aligning_type): Likewise. | |
16790 | ALIGN argument is unsigned int. | |
16791 | (gnat_to_gnu_entity, case E_Function): Back annotate return mechanism. | |
16792 | (gnat_to_gnu_param): Likewise, for parameters. | |
16793 | (gnat_to_gnu_entity) <object>: Always instantiate the renaming object | |
16794 | if it is constant and stems from a function call. | |
16795 | (gnat_to_gnu_entity) <E_Record_Type>: Set packed to -2 if the alignment | |
16796 | of the record is specified. Adjust accordingly. | |
16797 | (adjust_packed): New static function. | |
16798 | (gnat_to_gnu_field): Use it to adjust the packedness setting. | |
16799 | (components_to_record): Likewise. | |
16800 | (gnat_to_gnu_entity) <object>: Do not test the renamed expression for | |
16801 | side-effects if the object is deemed constant. | |
16802 | (gnat_to_gnu_entity) <E_Array_Type>: Create a name for the fat pointer | |
16803 | type instead of merely finalizing it. Tidy. | |
16804 | <E_Access_Subprogram_Type>: Retrieve the type from the TYPE_DECL. | |
16805 | <E_Access_Type>: Likewise. | |
16806 | (defer_debug_incomplete_list): Rename to defer_finalize_list. | |
16807 | (defer_debug_level): Delete. | |
16808 | (gnat_to_gnu_entity) <debug_deferred>: Likewise | |
16809 | <E_Array_Type>: Call rest_of_record_type_compilation on the fat pointer | |
16810 | type. | |
16811 | <E_Record_Type>: Do not explicitly defer finalizing the type. | |
16812 | Adjust for write_record_type_debug_info renaming. | |
16813 | <E_Subprogram_Type>: Likewise. | |
16814 | Finalize deferred types right after deferred incomplete types are | |
16815 | expanded. | |
16816 | (rest_of_type_decl_compilation): New global function. | |
16817 | (components_to_record): Rename defer_debug parameter to do_not_finalize. | |
16818 | (components_to_record): Propagate the packedness to the fields of the | |
16819 | qualified union type if there is a variant part. | |
16820 | (gnat_to_gnu_entity) <E_Array_Type>: Use new function | |
16821 | instead of inline code to adjust the XUT field offsets. | |
16822 | (gnat_to_gnu_entity): Adjust for new prototype of finish_record_type. | |
16823 | <E_Record_Subtype>: Do not let finish_record_type compute the sizes | |
16824 | and write the debug info if the type derives from a discriminated one. | |
16825 | (gnat_to_gnu_entity) <E_Array_Type>: Adjust call to create_index_type. | |
16826 | <E_Array_Subtype>: Likewise. | |
16827 | <E_String_Literal_Subtype>: Likewise. | |
16828 | (gnat_to_gnu_entity): Set TYPE_USER_ALIGN on types only if they have | |
16829 | an alignment clause. | |
16830 | (maybe_pad_type): Update ORIG_SIZE to the minimum required to meet ALIGN | |
16831 | before giving warning. | |
16832 | (prepend_one_attribute_to): New function, helper to prepend an attribute | |
16833 | to an attribute list. | |
16834 | (gnat_to_gnu_entity) <E_Procedure>: Use it. | |
16835 | (prepend_attributes): Likewise. | |
16836 | (gnat_to_gnu_entity) <E_Variable>: Use constants of the proper type. | |
16837 | <E_Array_Type>: Declare the padding type for the element type, if any. | |
16838 | <E_Array_Subtype>: Likewise. | |
16839 | (defer_limited_with): New variable. | |
16840 | (Gigi_Equivalent_Type): New function. | |
16841 | (gnat_to_gnu_entity): Use it at start and use result throughout. | |
16842 | (gnat_to_gnu_entity, case E_Access_Type): Rework to use | |
16843 | Gigi_Equivalent_Type, support Limited_With, allow two levels of | |
16844 | indirection, precompute if unconstrained array to simplify logic, and | |
16845 | use defer_limited_with to defer elaboration of some types from limited | |
16846 | with. | |
16847 | (finalize_from_with_types): New function. | |
16848 | ||
16849 | 2007-06-06 Gary Dismukes <dismukes@adacore.com> | |
16850 | Eric Botcazou <ebotcazou@adacore.com> | |
16851 | Tristan Gingold <gingold@adacore.com> | |
16852 | Olivier Hainque <hainque@adacore.com> | |
16853 | ||
a472f546 EB |
16854 | * trans.c (Identifier_to_gnu): Change test for deferred constant by |
16855 | adding guard that the entity is an E_Constant before testing presence | |
16856 | of Full_view (and remove unnecessary test that entity is not a type). | |
ec11296f AC |
16857 | For a CONST_DECL used by reference, manually retrieve |
16858 | the DECL_INITIAL. Do not invoke fold in the other DECL_P cases either. | |
16859 | (struct language_function): Move from utils.c to here. | |
16860 | (struct parm_attr): New structure. | |
16861 | (parm_attr, parm_attr vector, parm_attr GC vector): New types. | |
16862 | (f_parm_attr_cache): New macro. | |
16863 | (Attribute_to_gnu) <Attr_Length>: When not optimizing, cache the | |
16864 | expressions for the 'First, 'Last and 'Length attributes of the | |
16865 | unconstrained array IN parameters. | |
16866 | (Subprogram_Body_to_gnu): Use gnu_subprog_decl throughout. | |
16867 | Allocate the information structure for the function earlier, as well | |
16868 | as the language-specific part. | |
16869 | If the parameter attributes cache has been populated, evaluate the | |
16870 | cached expressions on entry. | |
16871 | (takes_address): Add OPERAND_TYPE parameter. Handle N_Function_Call, | |
16872 | N_Procedure_Call_Statement and N_Indexed_Component. | |
16873 | (Pragma_to_gnu): Translate inspection_point to an asm statement | |
16874 | containaing a comment and a reference to the object (either its address | |
16875 | for BLKmode or its value). | |
16876 | (Identifier_to_gnu): Use TREE_CONSTANT instead of CONST_DECL to decide | |
16877 | to go to DECL_INITIAL. Together with the size constraint relaxation | |
16878 | in create_var_decl, enlarges the set of situations in which an | |
16879 | identifier may be used as an initializer without implying elaboration | |
16880 | code. | |
16881 | (Subprogram_Body_to_gnu): Do not fiddle with the debug interface but set | |
16882 | DECL_IGNORED_P on the function if Needs_Debug_Info is not set on the | |
16883 | node. | |
16884 | (maybe_stabilize_reference): Remove lvalues_only parameter. | |
16885 | (gnat_stabilize_reference): Adjust for above change. | |
16886 | (gnat_to_gnu): Do not set location information on the result | |
16887 | if it is a reference. | |
16888 | (add_cleanup): Add gnat_node parameter and set the location of the | |
16889 | cleanup to it. | |
16890 | (Handled_Sequence_Of_Statements_to_gnu): Adjust calls to add_cleanup. | |
16891 | (Exception_Handler_to_gnu_zcx): Likewise. | |
16892 | (gigi): Remove the cgraph node if the elaboration procedure is empty. | |
16893 | (Subprogram_Body_to_gnu): If a stub is attached to the subprogram, emit | |
16894 | the former right after the latter. | |
16895 | (start_stmt_group): Make global. | |
16896 | (end_stmt_group): Likewise. | |
16897 | (gnu_constraint_error_label_stack, gnu_storage_error_label_stack): New | |
16898 | vars. | |
16899 | (gnu_program_error_label_stack): Likewise. | |
16900 | (gigi): Initialize them. | |
16901 | (call_to_gnu, gnat_to_gnu, emit_check): Add new arg to build_call_raise. | |
16902 | (gnat_to_gnu, N_{Push,Pop}_{Constraint,Storage,Program}_Error_Label): | |
16903 | New cases. | |
16904 | (push_exception_label_stack): New function. | |
16905 | (takes_address): New function. | |
16906 | ||
16907 | * utils.c (struct language_function): Move to trans.c from here. | |
16908 | (unchecked_convert): Do not wrap up integer constants in | |
16909 | VIEW_CONVERT_EXPRs. | |
16910 | (create_var_decl_1): Decouple TREE_CONSTANT from CONST_DECL. Prevent | |
16911 | the latter for aggregate types, unexpected by later passes, and relax an | |
16912 | arbitrary size constraint on the former. | |
16913 | (create_field_decl): Use tree_int_cst_equal instead of operand_equal_p | |
16914 | to compare the sizes. | |
16915 | (convert_vms_descriptor): When converting to a fat pointer type, be | |
16916 | prepared for a S descriptor at runtime in spite of a SB specification. | |
16917 | (shift_unc_components_for_thin_pointers): New function. | |
16918 | (write_record_type_debug_info): For variable-sized fields, cap the | |
16919 | alignment of the pointer to the computed alignment. | |
16920 | (finish_record_type): Change HAS_REP parameter into REP_LEVEL. | |
16921 | If REP_LEVEL is 2, do not compute the sizes. | |
16922 | (build_vms_descriptor): Adjust for new prototype of finish_record_type. | |
16923 | (build_unc_object_type): Likewise. | |
16924 | (declare_debug_type): New function. | |
16925 | ||
9e81dbc7 | 16926 | * ada-tree.def: USE_STMT: removed (not emitted anymore). |
ec11296f | 16927 | |
9e81dbc7 AS |
16928 | * misc.c (gnat_expand_expr): Call to gnat_expand_stmt removed because |
16929 | no statement is expandable anymore. | |
16930 | (gnat_init_gcc_eh): Do not initialize the DWARF-2 CFI machinery twice. | |
16931 | (gnat_handle_option): Only allow flag_eliminate_debug_types to be set | |
16932 | when the user requested it explicitely. | |
16933 | (gnat_post_options): By default, set flag_eliminate_unused_debug_types | |
16934 | to 0 for Ada. | |
16935 | (get_alias_set): Return alias set 0 for a type if | |
16936 | TYPE_UNIVERSAL_ALIASING_P is set on its main variant. | |
ec11296f | 16937 | |
9e81dbc7 AS |
16938 | * ada-tree.h: (TYPE_UNIVERSAL_ALIASING_P): New macro. |
16939 | (DECL_FUNCTION_STUB): New accessor macro. | |
16940 | (SET_DECL_FUNCTION_STUB): New setter macro. | |
ec11296f | 16941 | |
9e81dbc7 | 16942 | * lang.opt (feliminate-unused-debug-types): Intercept this flag for Ada. |
ec11296f AC |
16943 | |
16944 | * fe.h (Get_Local_Raise_Call_Entity, Get_RT_Exception_Entity): New | |
16945 | declarations. | |
16946 | ||
16947 | 2007-06-06 Jose Ruiz <ruiz@adacore.com> | |
16948 | ||
16949 | * s-intman-vxworks.ads, s-intman-vxworks.adb (Abort_Task_Signal): | |
16950 | Rename to Abort_Task_Interrupt to be able to keep the same interface | |
16951 | as the rest of the targets. | |
16952 | ||
16953 | * s-osinte-vxworks.ads s-osinte-vxworks.adb | |
16954 | (To_VxWorks_Priority): Remove explicit "in" mode indicator | |
16955 | ||
16956 | * s-osinte-vxworks6.ads, s-vxwork-arm.ads, system-vxworks-arm.ads: | |
16957 | New files. | |
16958 | ||
16959 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
16960 | ||
16961 | * a-chahan.ads: Remove obsolescent pragmas | |
16962 | ||
16963 | * a-chlat1.ads: Minor reformatting | |
16964 | ||
16965 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
16966 | ||
16967 | * comperr.adb (Compiler_Abort): New Finalize/Output_Messages interface | |
16968 | for Errout | |
16969 | ||
16970 | * errout.adb: New Finalize/Compilation_Errors/Output_Messages | |
16971 | implementation | |
16972 | ||
16973 | * errout.ads (Finalize): Changed interface | |
16974 | (Output_Messages): New procedure | |
16975 | (Compilation_Errors): New Interface | |
16976 | ||
16977 | * prepcomp.ads, prepcomp.adb (Parse_Preprocessing_Data_File): New | |
16978 | Finalize/Output_Messages interface for Errout | |
16979 | (Prepare_To_Preprocess): New Finalize/Output_Messages interface for | |
16980 | Errout. | |
16981 | ||
16982 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
16983 | Olivier Hainque <hainque@adacore.com> | |
16984 | Robert Dewar <dewar@adacore.com> | |
16985 | ||
16986 | * a-except.ads, a-except.adb: (Rmsg_28): Fix description for E.4(18) | |
16987 | check. | |
16988 | (Raise_Current_Excep): Call Debug_Raise_Exception just before | |
16989 | propagation starts, to let debuggers know about the event in a reliable | |
16990 | fashion. | |
16991 | (Local_Raise): Moved to System.Exceptions | |
16992 | More convenient to have this as a separate unit | |
16993 | ||
16994 | * s-except.adb, s-except.ads: New files. | |
16995 | ||
16996 | * a-exextr.adb (Unhandled_Exception): Delete - replaced by | |
16997 | Debug_Unhandled_Exception in System.Exceptions where it belongs | |
16998 | together with a couple of other debug helpers. | |
16999 | (Notify_Unhandled_Exception): Use Debug_Unhandled_Exception instead of | |
17000 | the former Unhandled_Exception. | |
17001 | ||
17002 | * exp_ch11.ads, exp_ch11.adb: (Possible_Local_Raise): New procedure | |
17003 | (Warn_No_Exception_Propagation): New procedure | |
17004 | (Warn_If_No_Propagation): Rewritten for new warning generation | |
17005 | (Expand_Exception_Handlers): New warning generation | |
17006 | (Expand_N_Raise_xxx_Error): Rewritten for new warnings | |
17007 | (Add_Exception_Label): Use Special_Exception_Package_Used for test | |
17008 | instead of Most_Recent_Exception_Used (accomodates Exception_Traces) | |
17009 | (Expand_Local_Exception_Handlers): Unconditionally add extra block wrap | |
17010 | even if restriction is set (makes life easier in Check_Returns) | |
17011 | (Expand_Local_Exception_Handlers): Follow renamed entity chain when | |
17012 | checking exception identities. | |
17013 | (Expand_Local_Exception_Handlers): Do not optimize when all others case | |
17014 | (Expand_Local_Exception_Handlers): Set Exception_Junk flag on generated | |
17015 | block for handler (used by Check_Returns) | |
17016 | (Expand_Local_Exception_Handlers): Local_Raise now takes an address | |
17017 | (Expand_N_Handled_Sequence_Of_Statements): Properly handle -gnatd.x to | |
17018 | remove all exception handlers when optimizing local raise statements. | |
17019 | (Find_Local_Handler): Use Get_Renamed_Entity | |
17020 | (Expand_N_Handled_Sequence_Of_Statements): If the handled sequence is | |
17021 | marked analyzed after expanding exception handlers, do not generate | |
17022 | redundant cleanup actions, because they have been constructed already. | |
17023 | ||
17024 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
17025 | ||
17026 | * a-finali.ads (Ada.Finalization): Add missing pragma Remote_Types. The | |
17027 | presence of this categorization pragma is mandated by the language. | |
17028 | (Limited_Controlled): Add missing pragma Preelaborable_Initialization | |
17029 | for this type. | |
17030 | ||
17031 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
17032 | Robert Dewar <dewar@adacore.com> | |
17033 | ||
9e81dbc7 AS |
17034 | * bcheck.adb, binde.adb, binderr.adb, binderr.ads, butil.adb, |
17035 | butil.ads, erroutc.adb, erroutc.ads, errutil.adb, errutil.ads, | |
17036 | err_vars.ads, exp_tss.adb, exp_tss.ads, fmap.adb, fmap.ads, | |
17037 | fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads, | |
17038 | lib-sort.adb, lib-util.adb, lib-util.ads, lib-xref.adb, makeutl.ads, | |
17039 | makeutl.adb, nmake.adt, osint.adb, osint.ads, osint-b.adb, | |
17040 | par-load.adb, prj-attr.adb, prj-dect.adb, prj-err.adb, prj-makr.adb, | |
17041 | prj-part.adb, prj-pp.adb, prj-proc.adb, prj-tree.adb, prj-tree.ads, | |
17042 | prj-util.adb, prj-util.ads, scans.adb, scans.ads, sem_ch2.adb, | |
17043 | sinput-c.adb, styleg-c.adb, tempdir.adb, tempdir.ads, uname.adb, | |
ec11296f | 17044 | uname.ads, atree.h, atree.ads, atree.adb, ali-util.ads, ali-util.adb, |
9e81dbc7 | 17045 | ali.ads, ali.adb: |
ec11296f AC |
17046 | Move Name_Id, File_Name_Type and Unit_Name_Type from package Types to |
17047 | package Namet. Make File_Name_Type and Unit_Name_Type types derived from | |
17048 | Mame_Id. Add new type Path_Name_Type, also derived from Name_Id. | |
17049 | Use variables of types File_Name_Type and Unit_Name_Type in error | |
17050 | messages. | |
17051 | (Get_Name): Add parameter Ignore_Special, and set it reading file name | |
17052 | (New_Copy): When debugging the compiler, call New_Node_Debugging_Output | |
17053 | here. | |
17054 | Define flags Flag217-Flag230 with associated subprograms | |
17055 | (Flag_Word5): New record type. | |
17056 | (Flag_Word5_Ptr): New access type. | |
17057 | (To_Flag_Word5): New unchecked conversion. | |
17058 | (To_Flag_Word5_Ptr): Likewise. | |
17059 | (Flag216): New function. | |
17060 | (Set_Flag216): New procedure. | |
17061 | ||
17062 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
17063 | ||
17064 | * a-stzunb.adb, a-stwiun.adb, a-strunb.adb: (Insert): Use 'Length | |
17065 | instead of 'Size. | |
17066 | ||
17067 | * a-stwifi.ads, a-stzfix.ads: Minor reformatting | |
17068 | ||
17069 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17070 | ||
17071 | * a-tags.ads, a-tags.adb (Tag_Size): This constant is now internal to | |
17072 | the package. | |
17073 | (Object_Specific_Data_Array): This is now internal to the package. | |
17074 | (Object_Specific_Data): This is now internal to the package. | |
17075 | (Select_Specific_Data_Element): This is now internal to the package. | |
17076 | (Select_Specific_Data_Array): This is now internal to the package. | |
17077 | (Select_Specific_Data): This is now internal to the package. | |
17078 | (Offset_To_Top_Function_Ptr): This is now public. | |
17079 | (To_Offset_To_Top_Function_Ptr): Removed. | |
17080 | (Storage_Offset_Ptr,To_Storage_Offset_Ptr): These declarations are now | |
17081 | local to subprogram Offset_To_Top. | |
17082 | (Predefined_DT): Removed. | |
17083 | (Typeinfo_Ptr): Removed. | |
17084 | (OSD): This function is now internal to this package. | |
17085 | (SSD): This function is now internal to this package. | |
17086 | (DT): New function that displaces the pointer to the table of primitives | |
17087 | to get access to the enclosing wrapper record. | |
17088 | (IW_Membership): Code cleanup. | |
17089 | (Offset_To_Top): Code cleanup. | |
17090 | (Predefined_DT): Removed. | |
17091 | (Register_Interface_Tag): Removed. | |
17092 | (Set_Interface_Table): Removed. | |
17093 | (Set_Offset_Index): Removed. | |
17094 | (Set_Offset_To_Top): Code cleanup. | |
17095 | (Set_OSD): Removed. | |
17096 | (Set_Signature): Removed. | |
17097 | (Set_SSD): Removed. | |
17098 | (Set_Tagged_Kind): Removed. | |
17099 | (Typeinfo_Ptr): Removed. | |
17100 | (TSD): Removed. | |
17101 | (Displace): Add missing check on null actual. | |
17102 | ||
17103 | * exp_disp.ads, exp_disp.adb | |
17104 | (Select_Expansion_Utilities): Removed. | |
17105 | (Build_Common_Dispatching_Select_Statements): Moved to exp_atags. | |
17106 | (Expand_Dispatching_Call): Update calls to Get_Prim_Op_Address because | |
17107 | the interface requires a new parameter. | |
17108 | (Make_Disp_Asynchronous_Select_Spec, Make_Disp_Conditional_Select_Spec, | |
17109 | Make_Disp_Get_Prim_Op_Kind_Spec, Make_Disp_Timed_Select_Spec): Replace | |
17110 | calls to subprograms Build_T, Build_S, etc. by the corresponding code. | |
17111 | Done to remove package Select_Expansion_Utilities. | |
17112 | (Make_DT): New implementation for statically allocated dispatch tables. | |
17113 | (Make_Secondary_DT): Moved to the scope of Make_DT. | |
17114 | (Register_Primitive): Code cleanup plus incoporate the use of the new | |
17115 | function DT_Address_Attribute. | |
17116 | (Expand_Interface_Thunk): The profile of this subprogram has been | |
17117 | changed to return the Thunk_Id and the corresponding code. | |
17118 | (Fill_DT_Entry): Removed. Its functionality is now provided by | |
17119 | subprogram Register_Primitive. | |
17120 | (Fill_Secondary_DT_Entry): Removed. Its functionality is now provided by | |
17121 | subprogram Register_Primitive. | |
17122 | (Register_Primitive): New subprogram that incorporates the previous | |
17123 | functionalities of Fill_DT_Entry and Fill_Secondary_DT_Entry. | |
17124 | (Build_Common_Dispatching_Select_Statements): Remove formal Typ. This | |
17125 | was only required to call Make_DT_Access_Action, which is now removed. | |
17126 | (Ada_Actions): Removed | |
17127 | (Action_Is_Proc): Removed | |
17128 | (Action_Nb_Arg): Removed | |
17129 | Replace all the calls to Make_DT_Access_Action by direct calls to | |
17130 | Make_Procedure_Call_Statement or Make_Function_Call. | |
17131 | (Set_DTC_Entity_Value): New subprogram. | |
17132 | (Set_All_DT_Position): Add call to new subprogram Set_DTC_Entity_Value. | |
17133 | (Expand_Interface_Thunk): Add missing support for primitives that are | |
17134 | functions with a controlling result (case in which there is no need | |
17135 | to generate the thunk). | |
17136 | ||
17137 | * exp_atag.ads, exp_atag.adb | |
17138 | (Build_DT): New subprogram that displaces the pointer to reference the | |
17139 | base of the wrapper record. | |
17140 | (Build_Typeinfo_Offset): Removed. | |
17141 | (RTE_Tag_Node): Removed. | |
17142 | (Build_Common_Dispatching_Select_Statements): Moved here from exp_disp | |
17143 | (Build_Get_RC_Offset): Removed. | |
17144 | (Build_Inherit_Predefined_Prims): Removed. | |
17145 | (Build_Inherit_TSD: Removed. | |
17146 | (Build_New_TSD): Removed. | |
17147 | (Build_Set_External_Tag): Removed. | |
17148 | (Build_Set_Predefined_Prim_Op_Address): Add documentation. | |
17149 | (Build_Set_Prim_Op_Address): Add documentation. | |
17150 | (Build_Set_TSD): Removed. | |
17151 | ||
17152 | * rtsfind.ads, rtsfind.adb | |
17153 | (Load_Fail): If load fails and we are not in configurable run-time | |
17154 | mode, then raise Unrecoverable_Error. | |
17155 | (Text_IO_Kludge): Generate an error message if a run-time library is | |
17156 | not available in a given run-time (ie. zfp run-time). | |
17157 | (RTE_Record_Component): Add code to check that the component we search | |
17158 | for is not found in two records in the given run-time package. | |
17159 | (RE_DT_Offset_To_Top_Size, RE_DT_Predef_Prims_Size): Removed | |
17160 | (RE_DT_Predef_Prims_Offset): New entity | |
17161 | (RE_Static_Offset_To_Top): New entity | |
17162 | (RE_HT_Link): New entity. | |
17163 | (System_Address_Image): Addition of this run-time package. | |
17164 | (RE_Address_Image): New entity. | |
17165 | (RE_Abstract_Interface): Removed. | |
17166 | (RE_Default_Prim_Op_Count): Removed. | |
17167 | (RE_DT_Entry_Size): Removed. | |
17168 | (RE_DT_Min_Prologue_Size): Removed. | |
17169 | (RE_DT_Prologue_Size): Removed. | |
17170 | (RE_Ifaces_Table_Ptr): Removed. | |
17171 | (RE_Interface_Data_Ptr): Removed. | |
17172 | (RE_Type_Specific_Data): Removed. | |
17173 | (RE_Primary_DT): Removed. | |
17174 | (RE_Register_Interface_Tag): Removed. | |
17175 | (RE_Set_Offset_Index): Removed. | |
17176 | (RE_Set_OSD): Removed. | |
17177 | (RE_Set_SSD): Removed. | |
17178 | (RE_Set_Signature): Removed. | |
17179 | (RE_Set_Tagged_Kind): Removed. | |
17180 | (RE_Address_Array): New entity. | |
17181 | (RE_DT): New entity. | |
17182 | (RE_Iface_Tag): New entity. | |
17183 | (RE_Interfaces_Table): New entity. | |
17184 | (RE_No_Dispatch_Table): New entity. | |
17185 | (RE_NDT_Prims_Ptr): New entity. | |
17186 | (RE_NDT_TSD): New entity. | |
17187 | (RE_Num_Prims): New entity. | |
17188 | (RE_Offset_To_Top_Function_Ptr): New entity. | |
17189 | (RE_OSD_Table): New entity. | |
17190 | (RE_OSD_Num_Prims): New entity. | |
17191 | (RE_Predef_Prims): New entity | |
17192 | (RE_Predef_Prims_Table_Ptr): New entity. | |
17193 | (RE_Primary_DT): New entity. | |
17194 | (RE_Signature): New entity. | |
17195 | (RE_SSD): New entity. | |
17196 | (RE_TSD): New entity. | |
17197 | (RE_Type_Specific_Data): New entity. | |
17198 | (RE_Tag_Kind): New entity. | |
17199 | ||
17200 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
17201 | ||
17202 | * a-textio.ads, a-textio.adb (Write): Add explicit size clause for the | |
17203 | C imported variable. | |
17204 | (Skip_Line): Do not reset Before_LM_PM immediately when Before_LM is set | |
17205 | on entry. | |
17206 | ||
17207 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
17208 | ||
17209 | * a-tienio.adb (Get): Adjust buffer size to accomodate one extra | |
17210 | character | |
17211 | ||
17212 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
17213 | ||
17214 | * a-tifiio.adb (Put, internal): For negative numbers, check that there | |
17215 | is room for at least one digit and the minus sign. | |
17216 | (Put.Put_Character): Never put a character outside of the range of | |
17217 | string To. | |
17218 | ||
17219 | 2007-06-06 Olivier Hainque <hainque@adacore.com> | |
17220 | Eric Botcazou <ebotcazou@adacore.com> | |
17221 | ||
17222 | * utils2.c (build_allocator): Provide the extra arguments to | |
17223 | make_aligning_type for super-aligned objects allocated from the default | |
17224 | pool. Leave enough room for a pointer before the aligning field, and | |
17225 | store the system's allocator return value there. | |
17226 | (build_call_alloc_dealloc): When releasing a super-aligned object, | |
17227 | retrieve the system's allocator return value from where build_allocator | |
17228 | has stored it, just ahead of the adjusted address we are passed. | |
17229 | (build_call_raise): Handle properly the generation of line numbers when | |
17230 | the node is marked No_Location. | |
17231 | (compare_elmt_bitpos): Use tree_int_cst_compare. Stabilize the sort | |
17232 | by using DECL_UID on ties. | |
17233 | (build_binary_op) <EQ_EXPR>: Accept fat pointer types with the same | |
17234 | main variant. | |
17235 | (build_call_raise): Handle converting exception into goto; support new | |
17236 | argument KIND. | |
17237 | (build_component_ref): Add new arg to build_call_raise. | |
17238 | ||
17239 | 2007-06-06 Hristian Kirtchev <kirtchev@adacore.com> | |
17240 | ||
17241 | * a-ztflau.adb, a-wtflau.adb, a-tiflau.adb (Load_Real): Do not parse | |
17242 | "." in the case of nnn.xxx when nnn terminates with an underscore. | |
17243 | Parse the remaining "#" or ":" in the case of nnn#.xxx# | |
17244 | ||
17245 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
17246 | ||
17247 | * a-tigeau.ads, a-tigeau.adb: (Store_Char): Change Buf to IN OUT | |
17248 | ||
17249 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
17250 | Vincent Celier <celier@adacore.com> | |
17251 | Robert Dewar <dewar@adacore.com> | |
17252 | ||
17253 | * bindgen.adb (Gen_Output_File_Ada): Generate pragma No_Run_Time when | |
17254 | needed. | |
17255 | (Gen_Output_File_Ada, Gen_Output_File_C): Never use __attribute | |
17256 | ((destructor)) for adafinal, even when switch -a is used. | |
17257 | Do not issue pragma Linker_Destructor for adafinal when switch -a is | |
17258 | used. | |
17259 | (Gen_Object_Files_Options): Add formatting of Linker Options, when | |
17260 | Output_Linker_Option_List is set. Suppress this formatting when | |
17261 | Zero_Formatting is set. | |
17262 | Add case for CLI_Target. | |
17263 | (System_Restrictions_Used): New flag, used to avoid generating with of | |
17264 | System_Restrictions and initialization of the data unless there is | |
17265 | some use of System.Restrictions in the partition. | |
17266 | (Check_System_Restrictions_Used): New procedure | |
17267 | ||
9e81dbc7 | 17268 | * s-stalib.adb: Remove with of System.Restrictions. No longer needed |
ec11296f AC |
17269 | since we only with this unit in the binder file if it is used elsewhere |
17270 | in the partition. | |
17271 | ||
17272 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
17273 | ||
17274 | * bindusg.adb: Add line for @<response file> | |
17275 | Add lines for new switches -R and -Z | |
17276 | ||
17277 | * gnatbind.adb (Gnatbind): Do not include sources from the GNAT | |
17278 | hierarchy in the list of files of the closure when -R is used | |
17279 | (Gnatbind): Accept arguments starting with '@' to indicate response | |
17280 | files and take the arguments from the response files. | |
17281 | If List_Closure is set, display the referenced files | |
17282 | ||
17283 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17284 | Robert Dewar <dewar@adacore.com> | |
17285 | Ed Schonberg <schonberg@adacore.com> | |
17286 | ||
17287 | * checks.ads, checks.adb (Apply_Address_Clause_Check): Handle case in | |
17288 | which the address-clause is applied to in-mode actuals (allowed by | |
17289 | 13.1(22)). | |
17290 | (Apply_Discriminant_Check): Do not generate a check if the type is | |
17291 | constrained by a current instance. | |
17292 | (Activate_Division_Check): New procedure | |
17293 | (Activate_Overflow_Check): New procedure | |
17294 | (Activate_Range_Check): New procedure | |
17295 | Call these new Activate procedures instead of setting flags directly | |
17296 | (Apply_Array_Size_Check): Removed, no longer needed. | |
17297 | Code clean up: remove obsolete code related to GCC 2. | |
17298 | (Get_E_Length): Protect against bomb in case scope is standard | |
17299 | (Selected_Range_Checks): If the node to be checked is a conversion to | |
17300 | an unconstrained array type, and the expression is a slice, use the | |
17301 | bounds of the slice to construct the required constraint checks. | |
17302 | Improve NOT NULL error messages | |
17303 | (Apply_Constraint_Check): If the context is a null-excluding access | |
17304 | type, diagnose properly the literal null. | |
17305 | ||
17306 | 2007-06-06 Pascal Obry <obry@adacore.com> | |
17307 | ||
17308 | * clean.adb (Clean_Archive): Use untouched casing for the archive name | |
17309 | and the corresponding .deps file. | |
17310 | (Clean_Interface_Copy_Directory): Use untouched casing for the library | |
17311 | src directory. Minor code-clean-up. Use untouched casing for files | |
17312 | read into the library src dir. | |
17313 | (Clean_Library_Directory): Idem. | |
17314 | (Parse_Cmd_Line): Accept new switch -aP | |
17315 | ||
17316 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17317 | Ed Schonberg <schonberg@adacore.com> | |
17318 | Robert Dewar <dewar@adacore.com> | |
17319 | Eric Botcazou <ebotcazou@adacore.com> | |
17320 | Arnaud Charlet <charlet@adacore.com> | |
17321 | ||
17322 | * einfo.ads, einfo.adb (Available_View): New synthesized attribute | |
17323 | applicable to types that have the With_Type flag set. Returns the | |
17324 | non-limited view of the type, if available, otherwise the type itself. | |
17325 | For class-wide types, there is no direct link in the tree, so we have | |
17326 | to retrieve the class-wide type of the non-limited view of the Etype. | |
17327 | New attributes Static_Initialization and Static_Elaboration_Desired. | |
17328 | Remove the pragma Thread_Body, and the associated flag | |
17329 | Is_Thread_Body in entities, and all related code. | |
17330 | (Suppress_Value_Tracking_On_Call): New flag | |
17331 | E_Exception has Esize and Alignment fields | |
17332 | (Universal_Aliasing): New function. | |
17333 | (Set_Universal_Aliasing): New procedure. | |
17334 | (Write_Entity_Flags): Deal with Universal_Aliasing flag. | |
17335 | (Check_Nested_Access): New procedure. | |
17336 | (Has_Up_Level_Access, Set_Has_Up_Level_Access): New procedures. | |
17337 | (Find_Direct_Name, Note_Possible_Modification): Use Check_Nested_Access. | |
17338 | (Related_Interface): New attribute. Present in dispatch table pointer | |
17339 | components of records. Set to point to the entity of the corresponding | |
17340 | interface type. | |
17341 | (Is_By_Reference_Type): Recurse on the full view of an incomplete type. | |
17342 | (Original_Access_Type): Remove, not needed. | |
17343 | (Root_Type): Handle properly subtypes of class-wide-types. | |
17344 | Update comments. | |
17345 | ||
17346 | * sem_ch4.adb (Analyze_Explicit_Dereference): Add support for | |
17347 | class-wide types visible through limited-with clauses. | |
17348 | (Try_Primitive_Operation): When examining all primitive operations of a | |
17349 | tagged type, do not consider subprograms labeled as hidden unless they | |
17350 | belong to a private generic type with a tagged parent. | |
17351 | (Try_Object_Operation): Extensive rewriting, to handle properly various | |
17352 | overloading cases, when several ancestors may have class-wide operations | |
17353 | that are possible candidates, and when the overloaded functions return | |
17354 | array types and have defaulted parameters so that the call may be | |
17355 | interpreted as an indexing. | |
17356 | (Analyze_Allocator): Remove Mark_Allocator and its invocation. | |
17357 | (Process_Function_Call): use Next, rather than Next_Actual, to analyze | |
17358 | successive actuals before analyzing the call itself. | |
17359 | (Try_Primitive_Operation): A primitive operation is compatible with the | |
17360 | prefix if the prefix has a synchronized type and the type of the formal | |
17361 | is its corresponding record, as can be the case when the primitive | |
17362 | operation is declared outside of the body of the type. | |
17363 | (Traverse_Homonyms): New subprocedure of Try_Class_Wide_Operation, to | |
17364 | perform homonym traversal, looking for class-wide operation matches | |
17365 | (formerly done in statements of Try_Class_Wide_Operation). Matches on | |
17366 | access parameters are now restricted to anonymous access types. | |
17367 | (Mark_Allocator): An allocator with a discriminant association parent is | |
17368 | a coextension. | |
17369 | (Try_One_Prefix_Interpretation): If the type of the object is | |
17370 | incomplete, as can be happen when it is a limited view obtained through | |
17371 | a limited_with_clause, the selected component is not part of a prefixed | |
17372 | call. | |
17373 | (Complete_Object_Operation): Diagnose properly an object that is not | |
17374 | aliased when the corresponding controlling formal is an access | |
17375 | parameter. | |
17376 | (Try_Primitive_Operation, Try_Class_Wide_Operation): Diagnose properly | |
17377 | ambiguous calls in prefixed notation, where two primitives differ only | |
17378 | in that the controlling argument of one is an access parameter. | |
17379 | ||
17380 | * sem_ch6.adb (Has_Single_Return): Add guard in code that determines | |
17381 | whether a function that returns an unconstrained type can be inlined. | |
17382 | (Process_Formals): Diagnose properly the illegal use of an incomplete | |
17383 | type in the profile of an access_to_subprogram declaration. | |
17384 | (Check_Synchronized_Overriding): Nothing check for concurrent types, the | |
17385 | operations are attached to the corresponding record. | |
17386 | (Analyze_Subprogram_Specification): Add variables Formal and Formal_Typ. | |
17387 | When processing a primitive of a concurrent type which implements an | |
17388 | interface change the type of all controlling formals to that of the | |
17389 | corresponding record type. | |
17390 | (Check_Synchronized_Overriding): Relax the conditional logic when trying | |
17391 | to determine the tagged type to which a primitive belongs. | |
17392 | (Check_Conventions): Capture condition to ignore a primitive operation | |
17393 | (which is shared between the loop in Check_Conventions and the one in | |
17394 | Check_Convention) in a new local function Skip_Check. | |
17395 | (Check_Convention): Rename Prim_Op to Second_Prim_Op to avoid possible | |
17396 | confusion with Check_Conventions' own Prim_Op local variable. | |
17397 | (Create_Extra_Formals): Test for a tagged result type rather than a | |
17398 | controlling result when determining whether to add a BIP_Alloc_Form | |
17399 | formal and a BIP_Final_List formal to the function. | |
17400 | (Check_Conformance); For parameters that are anonymous access types, | |
17401 | subtype conformance requires that the not null and the constant | |
17402 | indicators must match | |
17403 | (Check_Synchronized_Overriding): New parameter Formal_Typ. Add machinery | |
17404 | to retrieve the appropriate type when processing a concurrent type | |
17405 | declared within a generic. Minor comment reformatting. Change invocation | |
17406 | of Overrides_Synchronized_Primitive to Find_Overridden_Synchronized_Pri- | |
17407 | mitive. | |
17408 | (Analyze_Subprogram_Body): If the return type of a function is an | |
17409 | anonymous access to the limited view of a class-wide type, and the | |
17410 | non-limited view of the type is available, update the type of the | |
17411 | function so that code can be generated. | |
17412 | (Process_Formals): In case of access-subtype itype whose designated | |
17413 | type is also an itype (situation that happens now with access to | |
17414 | subprograms) we mark the access-type itype with the Has_Delayed_Freeze | |
17415 | attribute to avoid backend problems. | |
17416 | (Check_Return_Subtype_Indication): Replace R_Type with R_Stm_Type in | |
17417 | init of R_Stm_Type_Is_Anon_Access. Also check that base types of the | |
17418 | anonymous types' designated types are same before testing | |
17419 | Subtypes_Statically_Match. | |
17420 | (Create_Extra_Formals): Test for a named access parameter that is a | |
17421 | controlling formal as an additional condition for adding an | |
17422 | accessibility level formal. This can occur in the subp type created for | |
17423 | dispatching calls in Expand_Dispatching_Call, and allows calling | |
17424 | Create_Extra_Formals from that procedure rather than special-casing the | |
17425 | extra formals there. | |
17426 | (Create_Extra_Formals): Add BIP_Alloc_Form and BIP_Final_List formals | |
17427 | when the function has a controlling result. | |
17428 | (Check_Returns): Add much more knowledge of the optimization of local | |
17429 | raise statements to gotos, to retain proper warnings in this case. | |
17430 | (Check_Statement_Sequence): Ignore N_Push_xxx_Label and N_Pop_xxx_Label | |
17431 | nodes when looking for last statement. | |
17432 | ||
17433 | * sem_type.ads, sem_type.adb (Specific_Type): Add support for | |
17434 | class-wide types visible through limited with clauses. | |
17435 | (Add_One_Interp): If the operands are anonymous access types, the | |
17436 | predefined operator on universal_access is immediately visibles | |
17437 | (Find_Unique_Type): Handle anonymous access to subprogram types just as | |
17438 | other anonymous access types. | |
17439 | (Disambiguate): Take into account CIL convention. | |
17440 | (Interface_Present_In_Ancestor): Add support for class-wide interfaces. | |
17441 | ||
17442 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
17443 | ||
17444 | * sinput.ads, sinput.adb, uintp.ads, urealp.adb, stringt.adb, | |
17445 | sem_elim.adb, prj-strt.adb, repinfo.ads, repinfo.adb, namet.ads, | |
17446 | elists.ads, elists.adb, lib.ads, lib.adb (Unlock): New procedure. | |
17447 | Fix lower bound of tables. | |
17448 | Add rep clauses. | |
17449 | ||
17450 | * nlists.adb: Ditto. | |
17451 | (Prev_Node, Next_Node): Change index type to Int so that it properly | |
17452 | covers the range First_Node_Id - 1 up. | |
17453 | ||
17454 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17455 | Ed Schonberg <schonberg@adacore.com> | |
17456 | Bob Duff <duff@adacore.com> | |
17457 | Hristian Kirtchev <kirtchev@adacore.com> | |
17458 | ||
9e81dbc7 | 17459 | * exp_aggr.ads, exp_aggr.adb: |
ec11296f AC |
17460 | (Build_Record_Aggr_Code): Add missing initialization of secondary tags |
17461 | in extension aggregates. | |
17462 | (Flatten): Other conditions being met, an aggregate is static if the | |
17463 | low bound given by component associations is different from the low | |
17464 | bound of the base index type. | |
17465 | (Packed_Array_Aggregate_Handled): If the component type is itself a | |
17466 | packed array or record, the front-end must expand into assignments. | |
17467 | (Gen_Ctrl_Actions_For_Aggr): In call to Init_Controller, pass False to | |
17468 | Init_Pr, instead of Ancestor_Is_Expression. | |
17469 | (Gen_Ctrl_Actions_For_Aggr): When processing an aggregate of a | |
17470 | coextension chain root, either generate a list controller or use the | |
17471 | already existing one. | |
17472 | (Static_Array_Aggregate): New procedure to construct a positional | |
17473 | aggregate that can be handled by the backend, when all bounds and | |
17474 | components are compile-time known constants. | |
17475 | (Expand_Record_Aggregate): Force conversion of aggregates of tagged | |
17476 | types covering interface types into assignments. | |
17477 | (Replace_Type): move to Build_Record_Aggr_Code. | |
17478 | (Expand_Record_Aggr_Code): if the target of the aggregate is an | |
17479 | interface type, convert to the definite type of the aggregate itself, | |
17480 | so that needed components are visible. | |
17481 | (Convert_Aggr_In_Object_Decl): If the aggregate has controlled | |
17482 | components and the context is an extended return statement do not | |
17483 | create a transient block for it, to prevent premature finalization | |
17484 | before the return is executed. | |
17485 | (Gen_Assign): Do not generate a call to deep adjust routine if the | |
17486 | component type is itself an array of controlled (sub)-components | |
17487 | initialized with an inner aggregate. | |
17488 | (Component_Check): New name for Static_Check. This name is now more | |
17489 | appropriate, and documentation is added which was missing. | |
17490 | (Component_Check): Add test for bit aligned component value | |
17491 | (Component_Not_OK_For_Backend): Renames Has_Delayed_Nested_Aggregate_Or_ | |
17492 | Tagged_Comps, name is more appropriate given added function below. | |
17493 | (Component_Not_OK_For_Backend): Check for bit aligned component ref. | |
17494 | ||
17495 | 2007-06-06 Hristian Kirtchev <kirtchev@adacore.com> | |
17496 | Javier Miranda <miranda@adacore.com> | |
17497 | Robert Dewar <dewar@adacore.com> | |
17498 | ||
17499 | * exp_attr.adb (Expand_N_Attribute_Reference): Case Callable and | |
17500 | Terminated: Add unchecked type conversion from System.Address to | |
17501 | System.Tasking.Task_Id when calling the predefined primitive | |
17502 | _disp_get_task_id. | |
17503 | Disable new Ada 05 accessibility check for JVM.NET targets, which | |
17504 | cannot be implemented in a practical way. | |
17505 | (Expand_N_Attribute_Reference: case Attribute_Tag): The use of 'Tag in | |
17506 | the sources always references the tag of the actual object. Therefore, | |
17507 | if 'Tag is applied in the sources to class-wide interface objects we | |
17508 | generate code that displaces "this" to reference the base of the object. | |
17509 | (Expand_N_Attribute_Reference, case Size): Return specified size if | |
17510 | known to front end. | |
17511 | (Expand_N_Attribute_Reference): The expansion of the 'Address attribute | |
17512 | has code that displaces the pointer of the object to manage interface | |
17513 | types. However this code must not be executed when the prefix is a | |
17514 | subprogram. This bug caused the wrong expansion of the internally | |
17515 | generated assignment that fills the dispatch table when the primitive | |
17516 | is a function returning a class-wide interface type. | |
17517 | (Expand_N_Attribute_Reference:Attribute_Valid): Remove incorrect call to | |
17518 | Set_Attribute_Name for Name_Unaligned_Valid. | |
17519 | ||
17520 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17521 | Gary Dismukes <dismukes@adacore.com> | |
17522 | ||
17523 | * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case 'Address): | |
17524 | If the initialization is the equivalent aggregate of the initialization | |
17525 | procedure of the type, do not remove it. | |
17526 | (Expand_N_Attribute_Definition_Clause): Exclude access variables | |
17527 | initialized to null from having their expression reset to empty and | |
17528 | note this exception in the comment. | |
17529 | ||
17530 | 2007-06-06 Hristian Kirtchev <kirtchev@adacore.com> | |
17531 | Robert Dewar <dewar@adacore.com> | |
17532 | Ed Schonberg <schonberg@adacore.com> | |
17533 | Gary Dismukes <dismukes@adacore.com> | |
17534 | ||
17535 | * exp_ch2.adb: Remove "with" and "use" clauses for Namet and Snames. | |
17536 | Add "with" and "use" clauses for Sem_Attr. | |
17537 | (Expand_Current_Value): Do not replace occurences of attribute | |
17538 | references where the prefix must be a simple name. | |
17539 | ||
17540 | * sem_attr.ads, sem_attr.adb: Remove "with" and "use" clauses for | |
17541 | Namet. Add new arrays Attribute_Name_Modifies_Prefix and | |
17542 | Attribute_Requires_Simple_Name_Prefix. | |
17543 | (Name_Modifies_Prefix): Body of new function. | |
17544 | (Requires_Simple_Name_Prefix): Body of new function. | |
17545 | (Resolve_Attribute, case Access): Improve error message for case of | |
17546 | mismatched conventions. | |
17547 | (Analyze_Attribute, case 'Tag): The prefix the attribute cannot be of an | |
17548 | incomplete type. | |
17549 | (Analyze_Attribute, case 'Access): If the type of the prefix is a | |
17550 | constrained subtype for a nominal unconstrained type, use its base type | |
17551 | to check for conformance with the context. | |
17552 | (Resolve_Attribute): Remove test of the access type being associated | |
17553 | with a return statement from condition for performing accessibility | |
17554 | checks on access attributes, since this case is now captured by | |
17555 | Is_Local_Anonymous_Access. | |
17556 | (Analyze_Access_Attribute): Set Address_Taken on entity | |
17557 | (Analyze_Attribute, case Address): Set Address_Taken on entity | |
17558 | (OK_Self_Reference): Traverse tree to locate enclosing aggregate when | |
17559 | validating an access attribute whose prefix is a current instance. | |
17560 | (Resolve_Attribute): In case of attributes 'Code_Address and 'Address | |
17561 | applied to dispatching operations, if freezing is required then we set | |
17562 | the attribute Has_Delayed_Freeze in the prefix's entity. | |
17563 | (Check_Local_Access): Set flag Suppress_Value_Tracking_On_Call in | |
17564 | current scope if access of local subprogram taken | |
17565 | (Analyze_Access_Attribute): Check legality of self-reference even if the | |
17566 | expression comes from source, as when a single component association in | |
17567 | an aggregate has a box association. | |
17568 | (Resolve_Attribute, case 'Access): Do not apply accessibility checks to | |
17569 | the prefix if it is a protected operation and the attribute is | |
17570 | Unrestricted_Access. | |
17571 | (Resolve_Attribute, case 'Access): Set the Etype of the attribute | |
17572 | reference to the base type of the context, to force a constraint check | |
17573 | when the context is an access subtype with an explicit constraint. | |
17574 | (Analyze_Attribute, case 'Class): If the prefix is an interface and the | |
17575 | node is rewritten as an interface conversion. leave unanalyzed after | |
17576 | resolution, to ensure that type checking against the context will take | |
17577 | place. | |
17578 | ||
17579 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17580 | Javier Miranda <miranda@adacore.com> | |
17581 | Robert Dewar <dewar@adacore.com> | |
17582 | ||
17583 | * exp_ch3.adb (Make_Controlling_Function_Wrappers): generate wrapper a | |
17584 | wrapper when the full view of the controlling type of an inherited | |
17585 | function that dispatches on result implements interfaces. | |
17586 | (Expand_N_Object_Declaration): In cases where the type of the | |
17587 | declaration is anonymous access, create finalization list for it. | |
17588 | (Expand_N_Object_Declaration): Generate a persistent_bss directive only | |
17589 | if the object has no explicit initialization, to match description of | |
17590 | functionality of pragam Persistent_BSS. | |
17591 | (Build_Equivalent_Array_Aggregate, Build_Equivalent_Record_Aggregate): | |
17592 | new function to build static aggregates, to replace initialization call | |
17593 | when static initialization is desired. | |
17594 | (Freeze_Type): Generate a list controller for an access type whenever | |
17595 | its designated type has controlled anonymous access discriminants. | |
17596 | (Build_Equivalent_Aggregate): New procedure to compute a static | |
17597 | aggregate to be used as default initialization for composite types, | |
17598 | instead of a generating a call to the initialization procedure for the | |
17599 | type. | |
17600 | (Build_Initialization_Call): When available, replace a call to the | |
17601 | initialization procedure with a copy of the equivalent static aggregate | |
17602 | for the type. | |
17603 | (Expand_N_Object_Declaration): Use New_Occurrence_Of in generated | |
17604 | declarations for objects of a class-wide interface type, rather than | |
17605 | just identifiers, to prevent visibility problems. | |
17606 | (Expand_N_Object_Declaration): When expanding the declaration for an | |
17607 | object of a class-wide interface type, preserve the homonym chain of | |
17608 | the original entity before exchanging it with that of the generated | |
17609 | renaming declaration. | |
17610 | (Freeze_Enumeration_Type): Don't raise CE if No_Exception_Propagation | |
17611 | active, because there is no way to handle the exception. | |
17612 | (Freeze_Record_Type): In case of CPP_Class types add a call to Make_DT | |
17613 | to do a minimum decoration of the Access_Disp_Table list. | |
17614 | (Expand_Record_Controller): Avoid the addition of the controller between | |
17615 | the component containing the tag of a secondary dispatch table and its | |
17616 | adjacent component that stores the offset to the base of the object. | |
17617 | This latter component is only generated when the parent type has | |
17618 | discriminants ---documented in Add_Interface_Tag_Components). | |
17619 | (Apply_Array_Size_Check): Removed, no longer needed. | |
17620 | (Expand_N_Full_Type_Declaration): If the type has anonymous access | |
17621 | components, create a Master_Entity for it only if it contains tasks. | |
17622 | (Build_Init_Procedure): Suppress the tag assignment compiling under | |
17623 | no run-time mode. | |
17624 | (Freeze_Record_Type): Remove code associated with creation of dispatch | |
17625 | table. | |
17626 | (Init_Secondary_Tags): Update type of actuals when generating calls to | |
17627 | Ada.Tags.Set_Offset_To_Top | |
17628 | (Stream_Operation_OK): Disable use of streams compiling under no | |
17629 | run-time mode | |
17630 | (Expand_N_Object_Declaration): Don't do Initialize_Scalars initalization | |
17631 | if Has_Init_Expression set. | |
17632 | (Build_Init_Procedure): Replace call to Fill_DT_Entry by call to | |
17633 | Register_Primitive, which provides the same functionality. | |
17634 | (Requires_Init_Proc): Return false in case of interface types. | |
17635 | (Add_Secondary_Tables): Use the new attribute Related_Interface to | |
17636 | cleanup the code. | |
17637 | (Predefined_Primitive_Freeze): Do not assume that an internal entity | |
17638 | is always associated with a predefined primitive because the internal | |
17639 | entities associated with interface types are not predefined primitives. | |
17640 | Therefore, the call to Is_Internal is replaced by a call to the | |
17641 | function Is_Predefined_Dispatching_Operation. | |
17642 | (Make_Eq_If): When generating the list of comparisons for the | |
17643 | components of a given variant, omit the controller component that is | |
17644 | present if the variant has controlled components. | |
17645 | ||
17646 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17647 | Hristian Kirtchev <kirtchev@adacore.com> | |
17648 | Bob Duff <duff@adacore.com> | |
17649 | ||
17650 | * exp_ch4.adb (Complete_Coextension_Finalization): Add machinery to | |
17651 | handle the creation of finalization lists and calls for nested | |
17652 | coextensions when the root of the chains is part of a return statement. | |
17653 | (Inside_A_Return_Statement): New function inside Complete_Coextension_ | |
17654 | Finalization. | |
17655 | (Expand_Record_Equality): Skip components that are interface types. | |
17656 | (Displace_Allocator_Pointer): Add missing support for interface subtypes | |
17657 | (Expand_N_Allocator): Replace invocation of Is_Local_Access_Discriminant | |
17658 | with Rewrite_Coextension. Change the condition for detecting coextension | |
17659 | root nodes. | |
17660 | (Is_Local_Access_Discriminant): Removed. | |
17661 | (Rewrite_Coextension): New routine which rewrites a static coextension | |
17662 | as a temporary and uses its unrestricted access in the construction of | |
17663 | the outer object. | |
17664 | (Complete_Coextension_Finalization): New routine. Generate finalization | |
17665 | attachment calls to all delayed coextensions. | |
17666 | (Expand_N_Allocator): Call Complete_Coextension_Finalization whenever | |
17667 | the allocator is not a coextension itself and has delayed coextensions. | |
17668 | If the current allocator is controlled, but also a coextension, delay | |
17669 | the generation of the finalization attachment call. | |
17670 | Rename local variable "Node" to "Nod" in order to avoid confusion with | |
17671 | "Elists.Node". | |
17672 | (Expand_Allocator_Expression): Call Adjust for initialized allocators of | |
17673 | limited types that are not inherently limited. Such an allocator is | |
17674 | illegal, but is generated by the expander for a return statement, to | |
17675 | copy the result onto the secondary stack. This is the only case where a | |
17676 | limited object can be copied. Generate code to displace the pointer | |
17677 | to the object if the qualified expression is a class-wide interface | |
17678 | object. Such displacement was missing and hence the copy of the object | |
17679 | was wrong. | |
17680 | (Apply_Accessibility_Check): Handle allocated objects initialized in | |
17681 | place. | |
17682 | (Displace_Allocator_Pointer): Subsidiary procedure to Expand_N_Allocator | |
17683 | and Expand_Allocator_Expression. Allocating class-wide interface objects | |
17684 | this routine displaces the pointer to the allocated object to reference | |
17685 | the component referencing the corresponding secondary dispatch table. | |
17686 | Expand_Allocator_Expression): Add missing support to allocate class-wide | |
17687 | interface objects initialized with a qualified expression. | |
17688 | (Get_Allocator_Final_List): Test for an anonymous access type that is a | |
17689 | function result type, and use the finalization list associated with the | |
17690 | function scope in that case (such an anonymous type should not be | |
17691 | treated like an access parameter's type). | |
17692 | ||
17693 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17694 | Gary Dismukes <dismukes@adacore.com> | |
17695 | Javier Miranda <miranda@adacore.com> | |
17696 | ||
17697 | * exp_ch5.adb (Expand_N_Assignment_Statement): For the assignment of a | |
17698 | controlled type, use Make_Handler_For_Ctrl_Operation to construct the | |
17699 | required exception handler. | |
17700 | (Expand_Simple_Function_Return, Expand_N_Return_Statement): Handle | |
17701 | properly the case of a function whose return type is a limited | |
17702 | class-wide interface type. Modify the code of the accessibility | |
17703 | check to handle class-wide interface objects. In this case we need to | |
17704 | displace "this" to reference the primary dispatch table to get access | |
17705 | to the TSD of the object (to evaluate its accessibility level). | |
17706 | (Expand_N_Extended_Return_Statement): Test for a tagged result type | |
17707 | rather than a controlling result as one of the conditions for | |
17708 | generating tests of the implicit BIP_Alloc_Form formal. The | |
17709 | initialization assignment is also handled according to whether the | |
17710 | result is tagged instead of controlling. | |
17711 | In the case where the init assignment is inserted in the "then" part of | |
17712 | the allocation conditional, rewrite the target to be a dereference of | |
17713 | the implicit BIP_Object_Access formal. | |
17714 | If the returned value is unconstrained and created on the secondary | |
17715 | stack, mark the enclosing block and function so that the secondary | |
17716 | stack is not reclaimed on return. | |
17717 | Treat returns from functions with controlling results similarly to | |
17718 | returns from functions with unconstrained result subtypes. | |
17719 | If the object returned is unconstrained, and an allocator must be | |
17720 | created for it, analyze the allocator once the block for the extended | |
17721 | return is installed, to ensure that finalizable components | |
17722 | of the expression use the proper finalization list. Guard the call to | |
17723 | Move_Final_List with a check that there is something to finalize. | |
17724 | (Make_Tag_Ctrl_Assignment): Use "old" handling | |
17725 | of controlled type assignment for virtual machines, since new code uses | |
17726 | unsupported features (such as direct access to bytes in memory). | |
17727 | ||
17728 | 2007-06-06 Gary Dismukes <dismukes@adacore.com> | |
17729 | Ed Schonberg <schonberg@adacore.com> | |
17730 | ||
17731 | * exp_ch6.ads, exp_ch6.adb (Expand_Call): When adding an extra | |
17732 | accessibility actual, check for the case of an aliased object that has | |
17733 | been rewritten as an Access attribute, and assign Prev to Prev_Orig so | |
17734 | we fall into processing for the attribute rather than the name of the | |
17735 | object. | |
17736 | (Expand_Inline_Call): If an actual is a literal, and the corresponding | |
17737 | formal has its address taken in the body, create a temporary to capture | |
17738 | value. If the return type is a limited interface, do not treat the | |
17739 | return value as Controlled. | |
17740 | (Is_In_Place_Function): If the return type is a limited interface, | |
17741 | treat as returning in place. The actual returned object may not always | |
17742 | be limited, but the caller has to assume that it is returned in place. | |
17743 | (Add_Final_List_Actual_To_Build_In_Place_Call): If the call is the | |
17744 | context of an allocator, use the correct finalization chain (that is, | |
17745 | the chain belonging to the access type, rather than the chain belonging | |
17746 | to the current scope). | |
17747 | (Add_Alloc_Form_Actual_To_Build_In_Place_Call): Test for a tagged | |
17748 | result type rather than a controlling result as a precondition for | |
17749 | adding an allocation form actual to a build-in-place call. | |
17750 | (Add_Final_List_Actual_To_Build_In_Place_Call): Ditto. | |
17751 | (Freeze_Subprogram): Code cleanup. Remove all the code that register the | |
17752 | primitive in the dispatch tables. This work is now done by Make_DT when | |
17753 | the type is frozen. | |
17754 | (Register_Predefined_DT_Entry): Removed. | |
17755 | (Add_Return): If end label is not present, use sloc of last statement | |
17756 | for generated return statement in procedure, for better gdb behavior | |
17757 | on expanded code. | |
17758 | (Add_Access_Actual_To_Build_In_Place_Call): Set parent fields of the | |
17759 | object address nodes to ensure proper processing by routines like | |
17760 | Insert_After*. | |
17761 | (Expand_Call): Fix generation of validity check for parameter | |
17762 | (Add_Alloc_Form_Actual_To_Build_In_Place_Call): Return without passing | |
17763 | the allocation form parameter if the result subtype is constrained, | |
17764 | except when the function has a controlling result. | |
17765 | (Add_Final_List_Actual_To_Build_In_Place_Call): Test Controlled_Type | |
17766 | rather than Is_Controlled and Has_Controlled_Component, since we want to | |
17767 | include class-wide result types in this treatment. Also test for a | |
17768 | controlling result, since that also requires passing a finalization | |
17769 | list. | |
17770 | (Make_Build_In_Place_Call_In_Allocator): Call Add_Alloc_Form_Actual_* | |
17771 | even when the result subtype is constrained, to handle calls involving | |
17772 | controlling results. | |
17773 | (Make_Build_In_Place_Call_In_Anonymous_Context): Add_Alloc_Form_Actual_* | |
17774 | is now called even when the result subtype is constrained, to handle | |
17775 | calls involving controlling results. | |
17776 | (Make_Build_In_Place_Call_In_Assignment): Remove test for Is_Constrained | |
17777 | on call to Add_Alloc_Form_Actual_To_Build_In_Place_Call (that procedure | |
17778 | now performs the test). | |
17779 | (Make_Build_In_Place_Call_In_Object_Declaration): | |
17780 | Add_Alloc_Form_Actual_* is now called even when the result subtype is | |
17781 | constrained, to handle calls involving controlling results. | |
17782 | (Add_Return): Accomodate rewritten pattern from local raise to goto | |
17783 | transformation, so that we still recognize an transfer statement | |
17784 | and do the right thing here in that case. | |
17785 | (Expand_N_Subprogram_Body): Add dummy Push/Pop_xxx_Label nodes at start | |
17786 | and end of subprogram code. | |
17787 | (Register_Interface_DT_Entry, Register_Predefined_DT_Entry): Add missing | |
17788 | support for primitives that are functions (without formals) with a | |
17789 | controlling result. | |
17790 | (Inherited_From_Formal): If the actual subtype has not generic parent | |
17791 | type, it is not an actual for a formal derived type, and there is no | |
17792 | operation to inherit from the formal. | |
17793 | ||
17794 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17795 | Thomas Quinot <quinot@adacore.com> | |
17796 | ||
17797 | * exp_ch7.ads, exp_ch7.adb (Expand_Cleanup_Actions): Set Sloc of | |
17798 | inserted cleanup code appropriately for GDB use. | |
17799 | (Make_Deep_Proc): Use Make_Handler_For_Ctrl_Operation to create | |
17800 | exception handler for Deep_Adjust or Deep_Finalize. | |
17801 | (Make_Handler_For_Ctrl_Operation): New subprogram. When runtime entity | |
17802 | Raise_From_Controlled_Operation is available, use a call to that | |
17803 | subprogram instead of a plain "raise Program_Error" node to raise | |
17804 | Program_Error if an exception is propagated from an Adjust or Finalize | |
17805 | operation. | |
17806 | (Insert_Actions_In_Scope_Around): If the statement to be wrapped | |
17807 | appears in the optional statement list of a triggering alternative, the | |
17808 | scope actions can be inserted directly there, and not in the list that | |
17809 | includes the asynchronous select itself. | |
17810 | ||
17811 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17812 | Robert Dewar <dewar@adacore.com> | |
17813 | Hristian Kirtchev <kirtchev@adacore.com> | |
17814 | ||
17815 | * exp_ch9.ads, exp_ch9.adb (Build_Protected_Entry): Set sloc of | |
17816 | generated exception handler appropriately when debugging generated code. | |
17817 | Deal properly with No_Exception_Propagation restriction mode. | |
17818 | (Expand_N_Abort_Statement): Add an unchecked type conversion from | |
17819 | System.Address to System.Tasking.Task_Id when processing the result of | |
17820 | the predefined primitive _disp_get_task_id. | |
17821 | (Expand_N_Asynchronous_Select): Clarify comment. | |
17822 | (Expand_N_Protected_Type_Declaration): Minor code cleanup. | |
17823 | (Find_Parameter_Type): New routine inside Type_Conformant_Parameters. | |
17824 | (Type_Conformant_Parameters): New parameter Prim_Op_Typ. Code cleanup. | |
17825 | (Add_Private_Declarations, Build_Protected_Body): Use proper slocs for | |
17826 | privals and for generated call to Complete_Entry_Body, for better gdb | |
17827 | behavior. | |
17828 | (Copy_Result_Type): Utility to construct a parameter and result profile | |
17829 | for protected functions whose return type is an anonymous access to | |
17830 | subprogram. | |
17831 | (Build_Protected_Sub_Spec and Expand_Access_Protected_Subprogram_Type): | |
17832 | call the above. | |
17833 | (Build_Task_Activation_Call): Insert Activate_Tasks call at proper | |
17834 | point when the local-raise-to-goto transformation has taken place. | |
17835 | ||
17836 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17837 | Nicolas Setton <setton@adacore.com> | |
17838 | ||
17839 | * exp_dbug.adb (Get_Encoded_Name): Modified to continue providing its | |
17840 | functionality when the backend is generating code. | |
17841 | Otherwise any serious error | |
17842 | reported by the backend calling the frontend routine Error_Msg | |
17843 | changes the Compilation_Mode to Check_Semantics, disables the | |
17844 | functionality of this routine and causes the generation of | |
17845 | spureous additional errors. | |
17846 | ||
17847 | * exp_dbug.ads (Pointers to Unconstrained Arrays): Document the | |
17848 | debugging information now generated by the compiler for fat-pointer | |
17849 | types. | |
17850 | Document the contents of DW_AT_producer in the GNAT Vendor extensions to | |
17851 | DWARF2/3. | |
17852 | Document GNAT Vendor extensions to DWARF 2/3 and the "-gdwarf+" switch. | |
17853 | ||
17854 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
17855 | ||
17856 | * exp_dist.ads, exp_dist.adb (Make_Transportable_Check): New subprogram | |
17857 | (GARLIC_Support.Build_Subprogram_Receiving_Stubs, | |
17858 | PolyORB_Support.Build_Subprogram_Receiving_Stubs): | |
17859 | For a remote call to a function with a classwide return type, apply an | |
17860 | E.4(18) check to the returned value. | |
17861 | (Add_RACW_Primitive_Declarations_And_Bodies): Do not generate stubs for | |
17862 | stream attributes of the designated type of an RACW, as they are not | |
17863 | dispatching primitive operations. | |
17864 | ||
17865 | 2007-06-06 Geert Bosch <bosch@adacore.com> | |
17866 | ||
17867 | * exp_fixd.adb (Integer_Literal): Add optional argument to construct a | |
17868 | negative literal | |
17869 | (Do_Divide_Fixed_Fixed): Add comments to indicate Frac is always | |
17870 | positive | |
17871 | (Do_Divide_Fixed_Universal): Handle case of negative Frac. | |
17872 | (Do_Multiply_Fixed_Fixed): Add coments to indicate Frac is always | |
17873 | positive | |
17874 | (Do_Multiply_Fixed_Universal): Handle case of negative Frac. | |
17875 | ||
17876 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17877 | ||
17878 | * exp_imgv.adb (Expand_Value_Attribute): Disable compilation of this | |
17879 | attribute compiling package Ada.Tags under No_Run_Time_Mode. | |
17880 | ||
17881 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
17882 | ||
17883 | * exp_intr.adb (Expand_Unc_Deallocation): Add missing support for | |
17884 | deallocation of class-wide interface objects. | |
17885 | (Expand_Dispatching_Constructor_Call): Take into account that if the | |
17886 | result of the dispatching constructor is an interface type, the | |
17887 | function returns a class-wide interface type; otherwise the returned | |
17888 | object would be actual. The frontend previously accepted returning | |
17889 | interface types because Expand_Interface_Actuals silently performed | |
17890 | the management of the returned type "as if" it were a class-wide | |
17891 | interface type. | |
17892 | (Expand_Dispatching_Constructor_Call): Replace call to | |
17893 | Make_DT_Access_Action by direct call to Make_Function_Call. | |
17894 | ||
17895 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
17896 | Ed Schonberg <schonberg@adacore.com> | |
17897 | ||
17898 | * exp_pakd.adb (Expand_Packed_Not): Use RM_Size rather than ESize to | |
17899 | compute masking constant, since we now set Esize properly to the | |
17900 | underlying size. | |
17901 | (Create_Packed_Array_Type): Set proper Esize value adjusted as required | |
17902 | to match the alignment. | |
17903 | (Create_Packed_Array_Type): Use Short_Short_Unsigned as base type for | |
17904 | packed arrays of 8 bits or less. | |
17905 | ||
17906 | * freeze.adb (Freeze_Entity): When freezing the formals of a | |
17907 | subprogram, freeze the designated type of a parameter of an access type | |
17908 | only if it is an access parameter. | |
17909 | Increase size of C convention enumeration object | |
17910 | (Freeze_Entity, array type case): Make sure Esize value is properly | |
17911 | adjusted for the alignment if it is known. | |
17912 | (Freeze_Entity, array type case): When checking bit packed arrays for | |
17913 | the size being incorrect, check RM_Size, not Esize. | |
17914 | (Freeze_Record_Type): Check for bad discriminated record convention | |
17915 | (In_Exp_Body): Return true if the body is generated for a subprogram | |
17916 | renaming, either an attribute renaming or a renaming as body. | |
17917 | (Check_Itype): If the designated type of an anonymous access component | |
17918 | is a non-protected subprogram type, indicate that it is frozen, to | |
17919 | prevent out-of-scope freeze node at some subsequent call. | |
17920 | (Freeze_Subprogram): On OpenVMS, reject descriptor passing mechanism | |
17921 | only if the subprogram is neither imported nor exported, as well as the | |
17922 | NCA descriptor class if the subprogram is exported. | |
17923 | ||
17924 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17925 | Arnaud Charlet <charlet@adacore.com> | |
17926 | Robert Dewar <dewar@adacore.com> | |
17927 | Gary Dismukes <dismukes@adacore.com> | |
17928 | ||
17929 | * exp_prag.adb (Expand_Pragma_Import_Or_Interface): Remove properly a | |
17930 | default initialization on an imported object, when there is no | |
17931 | initialization call generated for it. | |
17932 | (Expand_Pragma_Assert): Add handling of No_Exception_Propagation | |
17933 | restriction | |
17934 | ||
17935 | * snames.h, snames.ads, snames.adb, par-prag.adb: New pragma | |
17936 | Static_Elaboration_Desired. | |
17937 | Remove pragma Thread_Body. | |
17938 | Implement a new pragma No_Body | |
17939 | Removes the Explicit_Overriding pragma | |
17940 | Remove Optional_Overriding pragma | |
17941 | (Prag): Deal with Universal_Aliasing. | |
17942 | (Name_CIL, Name_CIL_Constructor, Convention_CIL, | |
17943 | Pragma_CIL_Constructor): New names. | |
17944 | ||
17945 | * sem_cat.adb (Validate_Object_Declaration): An initialization that | |
17946 | uses the equivalent aggregate of a type must be treated as an implicit | |
17947 | initialization. | |
17948 | (Get_Categorization): Check a unit for pragma Preelaborate only if it | |
17949 | has none of the other categories. | |
17950 | (Process_Import_Or_Interface_Pragma): Report an error for an attempt | |
17951 | to apply Import to an object renaming declaration. | |
17952 | ||
17953 | * sem_prag.adb (Process_Import_Or_Interface): Warn that a type imported | |
17954 | from a C++ class should be declared as limited and that it will be | |
17955 | considererd limited. | |
17956 | (Analyze_Pragma): Warn that a type specified with pragma CPP_Class | |
17957 | should be declared as limited and that it will be considererd limited. | |
17958 | (Ada_2005_Pragma): New procedure, used to deal with Ada 2005 pragmas | |
17959 | (Analyze_Pragma, case Export): Diagnose export of enumeration literal | |
17960 | (Analyze_Pragma): Deal with Universal_Aliasing. | |
17961 | (Sig_Flags): Likewise. | |
17962 | (Set_Encoded_Interface_Name): Suppress encoding when compiling for AAMP. | |
17963 | (Overflow_Checks_Unsuppressed): New flag. | |
17964 | (Process_Suppress_Unsuppress): Set Overflow_Checks_Unsuppressed. | |
17965 | (Analyze_Pragma [case Pack]): Ignore pragma Pack and post warning in | |
17966 | case of JVM or .NET targets, and compiling user code. | |
17967 | Add debugging convenience routine rv | |
17968 | ||
17969 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
17970 | ||
17971 | * exp_strm.adb (Make_Field_Attributes): Avoid _Parent components that | |
17972 | are interface type. | |
17973 | (Build_Elementary_Input_Call): For floating-point use right type in the | |
17974 | absence of strange size or stream size clauses. | |
17975 | (Build_Elementary_Write_Call): Same fix | |
17976 | (Has_Stream_Standard_Rep): Returns False if Stream_Size attribute | |
17977 | set to value that does not match base type size. | |
17978 | ||
17979 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
17980 | ||
17981 | * exp_util.ads, exp_util.adb (Expand_Subtype_From_Expr): In Ada2005, an | |
17982 | object of a limited type can be initialized with a call to a function | |
17983 | that returns in place. If the limited type has unknown discriminants, | |
17984 | and the underlying type is a constrained composite type, build an actual | |
17985 | subtype from the function call, as is done for private types. | |
17986 | (Side_Effect_Free): An expression that is the renaming of an object or | |
17987 | whose prefix is the renaming of a object, is not side-effect free | |
17988 | because it may be assigned through the renaming and its value must be | |
17989 | captured in a temporary. | |
17990 | (Has_Controlled_Coextensions): New routine. | |
17991 | (Expand_Subtype_From_Expr): Do nothing if type is a limited interface, | |
17992 | as is done for other limited types. | |
17993 | (Non_Limited_Designated_Type): new predicate. | |
17994 | (Make_CW_Equivalent_Type): Modified to handle class-wide interface | |
17995 | objects. | |
17996 | Remove all handling of with_type clauses. | |
17997 | ||
9e81dbc7 | 17998 | * par-ch10.adb: Remove all handling of with_type clauses. |
ec11296f AC |
17999 | |
18000 | * lib-load.ads, lib-load.adb (Load_Main_Source): Do not get the | |
18001 | checksum if the main source could not be parsed. | |
18002 | (Loat_Unit): When processing a child unit, determine properly whether | |
18003 | the parent unit is a renaming when the parent is itself a child unit. | |
18004 | Remove handling of with_type clauses. | |
18005 | ||
18006 | * sinfo.ads, sinfo.adb (Is_Static_Coextension): New function. | |
18007 | (Set_Is_Static_Coextension): New procedure. | |
18008 | (Has_Local_Raise): New function | |
18009 | (Set_Has_Local_Raise): New procedure | |
18010 | (Renaming_Exception): New field | |
18011 | (Has_Init_Expression): New flag | |
18012 | (Delay_Finalize_Attach): Remove because flag is obsolete. | |
18013 | (Set_Delay_Finalize_Attach): Remove because flag is obsolete. | |
18014 | Remove all handling of with_type clauses. | |
18015 | (Exception_Junk): Can now be set in N_Block_Statement | |
18016 | ||
18017 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18018 | Robert Dewar <dewar@adacore.com> | |
18019 | ||
18020 | * frontend.adb (Frontend): Return immediately if the main source could | |
18021 | not be parsed, because of preprocessing errors. | |
18022 | ||
18023 | * gnat1drv.adb (gnat1drv): Handle RE_Not_Available gracefully. | |
18024 | (Gnat1drv): Exit with errors if the main source could not be parsed, | |
18025 | because of preprocessing errors. | |
18026 | (Check_Rep_Info): New procedure | |
18027 | ||
18028 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18029 | ||
18030 | * g-hesorg.ads, g-heasor.ads, | |
18031 | g-busorg.ads, g-bubsor.ads: Update documentation | |
18032 | GNAT.Heap/Bubble_Sort_G is now pure | |
18033 | ||
18034 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18035 | ||
18036 | * g-catiio.ads, g-catiio.adb (Image): Check for null picture string | |
18037 | ||
18038 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18039 | Ed Schonberg <schonberg@adacore.com> | |
18040 | ||
9e81dbc7 | 18041 | * g-comlin.ads, g-comlin.adb: |
ec11296f AC |
18042 | Add new warning for renaming of function return objects |
18043 | ||
18044 | * opt.adb (Tree_Write, Tree_Read): Use proper expressions for size | |
18045 | (Tree_Read): Use size of object instead of type'object_size, since the | |
18046 | latter is incorrect for packed array types. | |
18047 | (Tree_Write): Same fix | |
18048 | ||
18049 | * opt.ads: Add new warning for renaming of function return objects | |
18050 | (Generating_Code): New boolean variable used to indicate that the | |
18051 | frontend as finished its work and has called the backend to process | |
18052 | the tree and generate the object file. | |
18053 | (GCC_Version): Is now private | |
18054 | (Static_Dispatch_Tables): New constant declaration. | |
18055 | (Overflow_Checks_Unsuppressed): New flag. | |
18056 | (Process_Suppress_Unsuppress): Set Overflow_Checks_Unsuppressed. | |
18057 | (List_Closure): New flag for gnatbind (-R) | |
18058 | Zero_Formatting: New flag for gnatbind (-Z) | |
18059 | (Special_Exception_Package_Used): New flag. | |
18060 | (Warn_On_Unrepped_Components): New flag. | |
18061 | ||
18062 | * sem_ch8.adb (Check_Library_Unit_Renaming): Check that the renamed | |
18063 | unit is a compilation unit, rather than relying on its scope, so that | |
18064 | Standard can be renamed. | |
18065 | (Analyze_Object_Renaming): Add new warning for renaming of function | |
18066 | return objects. | |
18067 | Also reject attempt to rename function return object in Ada 83 mode. | |
18068 | (Attribute_Renaming): In case of tagged types, add the body of the | |
18069 | generated function to the freezing actions of the type. | |
18070 | (Find_Type): A protected type is visible right after the reserved word | |
18071 | "is" is encountered in its type declaration. Set the entity and type | |
18072 | rather than emitting an error message. | |
18073 | (New_Scope): Properly propagate Discard_Names to inner scopes | |
18074 | (Check_Nested_Access): New procedure. | |
18075 | (Has_Nested_Access, Set_Has_Nested_Access): New procedures. | |
18076 | (Find_Direct_Name, Note_Possible_Modification): Use Check_Nested_Access. | |
18077 | ||
18078 | * sem_warn.ads, sem_warn.adb: Improvements to infinite loop warning | |
18079 | Add new warning for renaming of function return objects | |
18080 | (Check_References): Suppress warnings for objects whose type or | |
18081 | base type has Warnings suppressed. | |
18082 | (Set_Dot_Warning_Switch): Add processing for -gnatw.c/C | |
18083 | (Set_Warning_Switch): Include new -gnatwc in -gnatwa | |
18084 | ||
18085 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18086 | Emmanuel Briot <briot@adacore.com> | |
18087 | Olivier Hainque <hainque@adacore.com> | |
18088 | ||
18089 | * g-debpoo.ads, g-debpoo.adb (Free_Physically.Free_Blocks): Use the | |
18090 | absolute value of Header.Block_Size when displaying the freed physical | |
18091 | memory in traces. | |
18092 | (Allocate): Compute Storage_Address using Integer_Address, not | |
18093 | Storage_Offset, because the range of Storage_Offset may not be large | |
18094 | enough. | |
18095 | (Configure): New parameter Low_Level_Traces | |
18096 | (Allocate, Deallocation, Free_Physically): Added low-level traces | |
18097 | (Configure): new parameter Errors_To_Stdout. | |
18098 | (Output_File): new subprogram | |
18099 | (Deallocate, Dereference): Send error messages to the proper stream | |
18100 | (Print_Pool, Print_Info_Stdout): Make sure the output goes to stdout, as | |
18101 | documented. Previous code would send it to the current output file | |
18102 | defined in GNAT.IO, which might not be stdout | |
18103 | (Is_Valid): Adjust comment to mention that a positive reply means that | |
18104 | Header_Of may be used to retrieve the allocation header associated with | |
18105 | the subprogram Storage address argument. Return False early if this | |
18106 | address argument is misaligned. | |
18107 | ||
18108 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18109 | ||
18110 | * gnatcmd.adb (GNATCmd): Accept switch -aP for commands that accept | |
18111 | switch -P | |
18112 | (ASIS_Main): New global variable | |
18113 | (Get_Closure): New procedure | |
18114 | (GNATCmd): Set ASIS_Main when -P and -U with a main is used for gnat | |
18115 | check, metric or pretty. Call Get_Closure in this case. | |
18116 | (Check_Files): For GNAT LIST, check all sources of all projects when | |
18117 | All_Projects is True. | |
18118 | (GNATCmd): Accept -U for GNAT LIST | |
18119 | ||
18120 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18121 | ||
18122 | * gnatlink.adb (Gnatlink): Do not specify -static-libgcc when --LINK= | |
18123 | has been specified | |
18124 | Correct error message when invocation of the linker fails | |
18125 | Add explicit size clause for the C imported variables | |
18126 | Object_List_File_Supported and Using_GNU_Linker to emphasize that | |
18127 | we expect char size. | |
18128 | Read target parameters earlier, since this is needed to set | |
18129 | Target_VM properly. Also do not use -static/shared-libgcc for non GCC | |
18130 | targets. | |
18131 | ||
18132 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18133 | ||
9e81dbc7 | 18134 | * gnatls.adb: |
ec11296f AC |
18135 | Add 3 spaces before the default project directory when displaying |
18136 | the project search path. | |
18137 | Add new command line switch '-l' to display license information. | |
18138 | ||
18139 | 2007-06-06 Vasiliy Fofanov <fofanov@adacore.com> | |
18140 | ||
18141 | * gmem.c: Add support for timestamps on memory operations. | |
18142 | ||
18143 | * memtrack.adb, gnatmem.adb: Add support for timestamps on memory | |
18144 | operations (not used currently, just foundation for future | |
18145 | enhancements). Add possibility to perform full dump of gmem.out file. | |
18146 | (Print_Back_Traces): Declare accesses to root arrays constants since | |
18147 | they aren't modified. | |
18148 | (Print_Back_Traces): allocate root arrays on the heap rather than stack. | |
18149 | ||
18150 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18151 | ||
18152 | * gnatsym.adb: Update Copyright notice | |
18153 | (Parse_Cmd_Line): Accept new switch -D | |
18154 | (Gnatsym): In Direct policy (switch -D) copy reference file to symbol | |
18155 | file. | |
18156 | ||
18157 | * prj.ads (Policy): New policy Direct | |
18158 | (Yes_No_Unknown): New enumeration type | |
18159 | (Project_Data): New component Libgnarl_Needed | |
18160 | ||
18161 | * prj-nmsc.adb (Check_For_Source): When recording a source file make | |
18162 | use the untouched pathname casing. | |
18163 | (Get_Directories): Ensure that the Display_Exec_Directory is using the | |
18164 | proper casing on non case-sensitive platforms like Windows. | |
18165 | (Get_Unit): Accept file names x__... and x~... (where x = a, g, i or s) | |
18166 | on all platforms, as it is not possible to know which one is allowed | |
18167 | before processing the project files. | |
18168 | (Check_Stand_Alone_Library): Check that Library_Reference_Symbol_File is | |
18169 | specified when symbol policy is Direct. Check that when there is a | |
18170 | symbol file defined (either by default or with attribute | |
18171 | Library_Symbol_File) it is not the same as the reference symbol file. | |
18172 | (Check_Stand_Alone_Library): Recognize new symbol policy Direct. | |
18173 | (Look_For_Sources): Allow Locally_Removed_Files to be declare in non | |
18174 | extending projects. | |
18175 | (Record_Ada_Source): Record a source that has been locally removed in an | |
18176 | imported project. | |
18177 | ||
18178 | * symbols.ads (Policy): New policy Direct | |
18179 | ||
18180 | * symbols-vms.adb (Initialize): Take new policy Direct in case | |
18181 | statement | |
18182 | ||
18183 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18184 | ||
18185 | * g-os_lib.ads, g-os_lib.adb (Normalize_Pathname.Get_Directory): | |
18186 | Correct obvious bug (return Dir; instead of return Directory;). | |
18187 | (Normalize_Pathname): Use Reference_Dir'Length, not Reference_Dir'Last | |
18188 | ||
18189 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
18190 | ||
18191 | * g-pehage.adb (Produce): Open output files in Binary mode, so that | |
18192 | they have UNIX line endings (LF only) even on Windows, and thus pass | |
18193 | all GNAT style checks. | |
18194 | ||
18195 | 2007-06-06 Emmanuel Briot <briot@adacore.com> | |
18196 | ||
18197 | * g-regpat.adb (Quote): Fix improper quoting of '.' | |
18198 | ||
18199 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
18200 | ||
18201 | * g-soccon.ads: Add new constant Thread_Blocking_IO, always True by | |
18202 | default, set False on a per-runtime basis. | |
18203 | (Need_Netdb_Buffer): New constant. | |
18204 | ||
18205 | * g-socket.ads, g-socket.adb: Import new package | |
18206 | GNAT.Sockets.Thin.Task_Safe_NetDB. | |
18207 | (Raise_Host_Error): Use Host_Error_Message from platform-specific thin | |
18208 | binding to obtain proper message. | |
18209 | (Close_Selector): Use GNAT.Sockets.Thin.Signalling_Fds.Close. | |
18210 | Replace various occurrences of Arry (Arry'First)'Address with the | |
18211 | equivalent Arry'Address (GNAT always follows implementation advice from | |
18212 | 13.3(14)). | |
18213 | (Get_Host_By_Address, Get_Host_By_Name, | |
18214 | Get_Service_By_Name, Get_Service_By_Port): Do not use GNAT.Task_Lock; | |
18215 | instead, rely on platform-specific task safe netdb operations provided | |
18216 | by g-socthi. | |
18217 | ||
18218 | * g-socthi.ads, g-socthi.adb (Initialize): Remove obsolete formal | |
18219 | parameter Process_Blocking_IO. | |
18220 | (Host_Error_Messages): Add stub body. | |
18221 | (GNAT.Sockets.Thin.Signalling_Fds): New procedure Close. | |
18222 | (Safe_Gethostbyname, Safe_Gethostbyaddr, Safe_Getservbyname, | |
18223 | Safe_Getservbyport): Move functions into new child package | |
18224 | Task_Safe_NetDB. | |
18225 | (Nonreentrant_Gethostbyname, Nonreentrant_Gethostbyaddr, | |
18226 | Nonreentrant_Getservbyname, Nonreentrant_Getservbyport): New routines. | |
18227 | (In_Addr): Add alignment clause. | |
18228 | ||
18229 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18230 | ||
18231 | * g-trasym.ads, g-traceb.ads: Update list of supported targets | |
18232 | Add note about symbolic traceback | |
18233 | ||
18234 | 2007-06-06 Pascal Obry <obry@adacore.com> | |
18235 | ||
18236 | * hostparm.ads (Normalized_CWD): Use the host directory separator | |
18237 | instead of the hardcoded forward slash which is not the proper | |
18238 | character on Windows for example. | |
18239 | (Java_VM): Removed. | |
18240 | ||
18241 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18242 | Arnaud Charlet <charlet@adacore.com> | |
18243 | ||
18244 | * a-clrefi.adb, a-clrefi.ads: New files | |
18245 | ||
18246 | * impunit.adb: Add s-os_lib in the list of user visible units. | |
18247 | (Non_Imp_File_Names_95): Add a-clrefi to this list | |
18248 | Remove obsolete run-time entries. | |
18249 | (Non_Imp_File_Names_05): Add Ada 2005 entries for: | |
18250 | "a-exetim" -- Ada.Execution_Time | |
18251 | "a-extiti" -- Ada.Execution_Time.Timers | |
18252 | ||
18253 | * mlib-prj.ads, mlib-prj.adb | |
18254 | (Build_Library): Use untouched object dir and library dir. At the | |
18255 | same time makes sure that the checks are done using the canonical | |
18256 | form. Removes hard-coded directory separator and use the proper host | |
18257 | one instead. | |
18258 | (Process_Project): Do not look in object directory to check if libgnarl | |
18259 | is needed for a library, if there is no object directory. | |
18260 | (Build_Library): Scan the ALI files to decide if libgnarl is needed for | |
18261 | linking. | |
18262 | (Build_Library): When invoking gnatbind, use a response file if the | |
18263 | total size of the arguments is too large. | |
18264 | ||
18265 | * Makefile.rtl: (g-sttsne): New object file. | |
18266 | Add entry for a-clrefi, s-utf_32, System.Exceptions | |
18267 | ||
18268 | * Make-lang.in: Remove bogus dependency of s-memory.o on memtrack.o. | |
18269 | (GNAT_ADA_OBJS, GNATBIND_OBJS): Add s-except.o. | |
18270 | (GNATBIND_OBJS): Add new objects a-clrefi.o and a-comlin.o | |
18271 | Change g-string to s-string, g-os_lib to s-os_lib | |
18272 | Change all g-utf_32 references to s-utf_32 | |
18273 | ||
18274 | 2007-06-06 Tristan Gingold <gingold@adacore.com> | |
18275 | Olivier Hainque <hainque@adacore.com> | |
18276 | ||
18277 | * init.c: Do not adjust IP of an imported VMS exception of ia64. | |
18278 | LIB$STOP is called to raise an exception and the IP of the exception | |
18279 | is the instruction right after the call. | |
18280 | (__gnat_adjust_context_for_raise, AIX): Implement. | |
18281 | (__gnat_error_handler, AIX): Accept SIGINFO related arguments and call | |
18282 | adjust_context_for_raise before Raise_From_Signal_Hanler. | |
18283 | (__gnat_install_handler, AIX): Add SA_SIGINFO to the sa_flags, to ensure | |
18284 | siginfo is passed to the handler, necessary to let the zcx propagation | |
18285 | engine unwind past it. | |
18286 | ||
18287 | 2007-06-06 Olivier Hainque <hainque@adacore.com> | |
18288 | ||
18289 | * initialize.c (__gnat_initialize for vxworks): Update documentation | |
18290 | on the ZCX support, using different sets of crtstuff objects than with | |
18291 | GCC 3.4. | |
18292 | ||
18293 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18294 | ||
18295 | * layout.ads, layout.adb (Adjust_Esize_Alignment): Move spec to package | |
18296 | spec from body | |
18297 | (Layout_Type): Fix recomputation of size from alignment. | |
18298 | ||
18299 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
18300 | Javier Miranda <miranda@adacore.com> | |
18301 | ||
18302 | * sem_ch12.adb (Analyze_Associations): Diagnose use of an others | |
18303 | association in an instance. | |
18304 | (Copy_Generic_Node): If the node is a string literal, no need to copy | |
18305 | its descendants. | |
18306 | (Is_Generic_Formal): For a formal subprogram, the declaration is the | |
18307 | grandparent of the entity. | |
18308 | (Analyze_Formal_Interface_Type): Transform into a full type declaration, | |
18309 | to simplify handling of formal interfaces that derive from other formal | |
18310 | interfaces. | |
18311 | (Instantiate_Subprogram_Body): The defining unit name of the body of | |
18312 | the instance should be a defining identifier. | |
18313 | (Install_Formal_Packages): make global to the package, for use in | |
18314 | instantiations of child units. | |
18315 | (Analyze_Package_Instantiation): Do not attempt to set information on an | |
18316 | enclosing master of an entry when expansion is disabled. | |
18317 | (Instantiate_Type): If the actual is a tagged synchronized type and the | |
18318 | generic ancestor is an interface, create a generic actual for the | |
18319 | corresponding record. | |
18320 | (Analyze_Formal_Derived_Interface_Type): Rewrite as a derived type | |
18321 | declaration, to ensure that the interface list is processed correctly. | |
18322 | (Inline_Instance_Body): If enclosing scope is an instance body, remove | |
18323 | its entities from visibiility as well. | |
18324 | (Pre_Analyze_Actuals): if the actual is an allocator with constraints | |
18325 | given with a named association, analyze the expression only, not the | |
18326 | discriminant association itself. | |
18327 | (Reset_Entity): If the analysis of a selected component is transformed | |
18328 | into an expanded name in the prefix of a call with parameters, do not | |
18329 | transform the original node into an expanded name, to prevent visibility | |
18330 | errors in the case of nested generics. | |
18331 | (Check_Private_View): For an array type, check whether the index types | |
18332 | may need exchanging. | |
18333 | ||
18334 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
18335 | Vincent Celier <celier@adacore.com> | |
18336 | ||
18337 | * lib-writ.adb: Handle Convention_CIL in addition to Convention_Java, | |
18338 | since both are separated. | |
18339 | Add support for imported CIL packages. | |
18340 | Add further special handling of "value_type" for CIL. | |
18341 | Add special handling of pragma Import for CIL. | |
18342 | ||
18343 | * make.ads, make.adb: When switch -eS is used, direct all outputs to | |
18344 | standard output instead of standard error, except errors. | |
18345 | (Absolute_Path): Use untouched casing for the parent directory. | |
18346 | (Add_Library_Search_Dir): Use the untouched directory name. | |
18347 | (Add_Source_Search_Dir): Idem. | |
18348 | (Change_To_Object_Directory): Update output to use proper casing. | |
18349 | (Create_Binder_Mapping_File): Use the untouched filename to set | |
18350 | ALI_Name. | |
18351 | (Gnatmake): Use untouched library and executable directory names. | |
18352 | (Insert_Project_Sources): Use untouched filename for spec and body. | |
18353 | (Is_In_Object_Directory): Use untouched object directory. | |
18354 | (Mark_Directory): Idem. | |
18355 | (Collect_Arguments_And_Compile): Ensure that Full_Source_File always | |
18356 | contains the non-canonical filename in all cases. | |
18357 | (Change_To_Object_Directory): In verbose mode, display the name of the | |
18358 | object directory we're changing to. | |
18359 | (Compile_Sources): Make sure, when a project file is used, to compile | |
18360 | the body of the unit, when there is one, even when only the spec is | |
18361 | recorded in an ALI file. | |
18362 | (Gcc_Switches, Binder_Switches, Linker_Switches): Tables moved from the | |
18363 | spec to the body. | |
18364 | (Report_Compilation_Failed): New procedure | |
18365 | (Bind, Display_Commands, Compile_Sources, Initialize, Scan_Make_Arg): | |
18366 | procedures moved from the spec to the body. | |
18367 | (Extract_Failure): Removed, not used | |
18368 | Replace explicit raises of exception Bind_Failed and Link_Failed with | |
18369 | calls to Make_Failed with the proper message. | |
18370 | Replace explicit raises of exception Compilation_Failed with calls to | |
18371 | procedure Report_Compilation_Failed. | |
18372 | (Initialize): Create mapping files unconditionally when using project | |
18373 | files. | |
18374 | ||
18375 | * sem_mech.adb: (Name_CIL, Name_CIL_Constructor, Convention_CIL, | |
18376 | Pragma_CIL_Constructor): New names. | |
18377 | ||
18378 | * targparm.ads, targparm.adb | |
18379 | (Compiler_System_Version): Removed, no longer used. | |
18380 | (Get_Target_Parameters): Relax checks on system.ads validity. Add | |
18381 | handling of two new system flags: JVM and CLI. | |
18382 | ||
18383 | 2007-06-06 Jose Ruiz <ruiz@adacore.com> | |
18384 | Arnaud Charlet <charlet@adacore.com> | |
18385 | ||
18386 | * Makefile.in (LIBGNAT_TARGET_PAIRS for VxWorks 6): For the RTP run | |
18387 | time, use the default s-interr body that provides interrupt support | |
18388 | based on signals. | |
18389 | (LIBGNAT_TARGET_PAIRS for x86-linux): Use specialized versions of | |
18390 | a-exetim.ad{s,b}, a-extiti.ad{s,b}, a-rttiev.ad{s,b}, s-osinte.ad{s,b}, | |
18391 | g-soccon.ads, and s-taprop.adb for the marte run time. | |
18392 | (EXTRA_GNATRTL_TASKING_OBJS for x86-linux): Execution time clocks and | |
18393 | timers are supported on marte. | |
18394 | (EH_MECHANISM for marte): Do not use ZCX. | |
18395 | (THREADSLIB for marte): Use -lmarte. | |
18396 | Add mlib-tgt-vms.o to the list of objects for gnatmake for VMS | |
18397 | Add mlib-tgt-specific.o to gnatmake objects | |
18398 | mlib-tgt-<platforms>.adb is now the body of MLib.Tgt.Specific, no | |
18399 | longer of MLib.Tgt. | |
18400 | (LIBGNAT_TARGET_PAIRS for vxworks): When building a run time for VxWorks | |
18401 | 6, either kernel or rtp, use a specialized version of s-osinte.ads. | |
18402 | ||
18403 | 2007-06-06 Pascal Obry <obry@adacore.com> | |
18404 | ||
18405 | * mkdir.c (__gnat_mkdir): Add support for UTF-8. | |
18406 | ||
18407 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18408 | ||
18409 | * mlib.ads, mlib.adb (Build_Library): Do not use hard-coded directory | |
18410 | separator, use instead the proper host directory separator. | |
18411 | (Copy_ALI_Files): Make sure that an already existing ALI file in the | |
18412 | ALI copy dir is writable, before doing the copy. | |
18413 | ||
9e81dbc7 | 18414 | * mlib-utl.ads, mlib-utl.adb: |
ec11296f AC |
18415 | (Gcc): If length of command line is too long, put the list of object |
18416 | files in a response file, if this is supported by the platform. | |
18417 | (Ar): If invocation of the archive builder is allowed to be done in | |
18418 | chunks and building it in one shot would go above an OS dependent | |
18419 | limit on the number of characters on the command line, build the archive | |
18420 | in chunks. | |
18421 | ||
18422 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18423 | ||
18424 | * osinte-c.ads, osint-c.adb (Set_Library_Info_Name): Fail if base name | |
18425 | of specified object file is not equal to base name of source. | |
18426 | ||
18427 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
18428 | Hristian Kirtchev <kirtchev@adacore.com> | |
18429 | Ed Schonberg <schonberg@adacore.com> | |
18430 | ||
18431 | * sem_ch3.adb (Process_Full_View): Propagate the CPP_Class attribute to | |
18432 | the full type declaration. | |
18433 | (Analyze_Component_Declaration): Add local variable E to capture the | |
18434 | initialization expression of the declaration. Replace the occurences of | |
18435 | Expression (N) with E. | |
18436 | (OK_For_Limited_Init_In_05): Allow initialization of class-wide | |
18437 | limited interface object with a function call. | |
18438 | (Array_Type_Declaration): If the declaration lacks subtype marks for | |
18439 | indices, create a simple index list to prevent cascaded errors. | |
18440 | (Is_Null_Extension): Ignore internal components created for secondary | |
18441 | tags when checking whether a record extension is a null extension. | |
18442 | (Check_Abstract_Interfaces): Add missing support for interface subtypes | |
18443 | and generic formals. | |
18444 | (Derived_Type_Declaration): Add missing support for interface subtypes | |
18445 | and generic formals. | |
18446 | (Analyze_Object_Declaration): If an initialization expression is | |
18447 | present, traverse its subtree and mark all allocators as static | |
18448 | coextensions. | |
18449 | (Add_Interface_Tag_Component): When looking for components that may be | |
18450 | secondary tags, ignore pragmas that can appear within a record | |
18451 | declaration. | |
18452 | (Check_Abstract_Overriding): an inherited function that dispatches on | |
18453 | result does not need to be overriden if the controlling type is a null | |
18454 | extension. | |
18455 | (Mentions_T): Handle properly a 'class attribute in an anonymous access | |
18456 | component declaration, when the prefix is an expanded name. | |
18457 | (Inherit_Component): If the derivation is for a private extension, | |
18458 | inherited components remain visible and their ekind should not be set | |
18459 | to Void. | |
18460 | (Find_Type_Of_Object): In the case of an access definition, always set | |
18461 | Is_Local_Anonymous_Access. We were previously not marking the anonymous | |
18462 | access type of a return object as a local anonymous type. | |
18463 | (Make_Index): Use Ambiguous_Character to report ambiguity on a discrete | |
18464 | range with character literal bounds. | |
18465 | (Constrain_Array): Initialize the Packed_Array_Type field to Empty. | |
18466 | (Access_Subprogram_Declaration): Indicate that the type declaration | |
18467 | depends on an incomplete type only if the incomplete type is declared | |
18468 | in an open scope. | |
18469 | (Analyze_Subtype_Declaration): Handle properly subtypes of | |
18470 | synchronized types that are tagged, and that may appear as generic | |
18471 | actuals. | |
18472 | (Access_Subprogram_Declaration): An anonymous access to subprogram can | |
18473 | appear as an access discriminant in a private type declaration. | |
18474 | (Add_Interface_Tag_Components): Complete decoration of the component | |
18475 | containing the tag of a secondary dispatch table and the component | |
18476 | containing the offset to the base of the object (this latter component | |
18477 | is only generated when the parent type has discriminants --as documented | |
18478 | in this routine). | |
18479 | (Inherit_Components): Use the new decoration of the tag components to | |
18480 | improve the condition that avoids inheriting the components associated | |
18481 | with secondary tags of the parent. | |
18482 | (Build_Discriminanted_Subtype): Indicate to the backend that the | |
18483 | size of record types associated with dispatch tables is known at | |
18484 | compile time. | |
18485 | (Analyze_Subtype_Declaration): Propagate Is_Interface flag when needed. | |
18486 | (Analyze_Interface_Declaration): Change setting of Is_Limited_Interface | |
18487 | to include task, protected, and synchronized interfaces as limited | |
18488 | interfaces. | |
18489 | (Process_Discriminants): Remove the setting of | |
18490 | Is_Local_Anonymous_Access on the type of (anonymous) access | |
18491 | discriminants of nonlimited types. | |
18492 | (Analyze_Interface_Type_Declaration): Complete the decoration of the | |
18493 | class-wide entity it is is already present. This situation occurs if | |
18494 | the limited-view has been previously built. | |
18495 | (Enumeration_Type_Declaration): Initialize properly the Enum_Pos_To_Rep | |
18496 | field. | |
18497 | (Add_Interface_Tag_Components.Add_Tag): Set the value of the attribute | |
18498 | Related_Interface. | |
18499 | ||
18500 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
18501 | ||
18502 | * sem_aggr.adb (Resolve_Record_Aggregate): Ignore internal components | |
18503 | of the type that specify the position of interface tags when the type | |
18504 | inherits discriminated array components from the parent type. | |
18505 | If a component is initialized with a box, check for the presence of a | |
18506 | default expression in its declaration before using its default | |
18507 | initialization procedure. | |
18508 | (Resolve_Record_Aggregate): If a component is box-initialized, and the | |
18509 | component type has a discriminants, create a partial aggregate for it | |
18510 | by copying the discriminants of the component subtype. | |
18511 | Reject attempt to initialize a discriminant with a box. | |
18512 | (Array_Aggr_Subtype): Indicate to the backend that the size of arrays | |
18513 | associated with dispatch tables is known at compile time. | |
18514 | (Get_Value): If an association in a record aggregate has a box | |
18515 | association, and the corresponding record component has a default | |
18516 | expression, always copy the default expression, even when the | |
18517 | association has a single choice, in order to create a proper | |
18518 | association for the expanded aggregate. | |
18519 | ||
18520 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
18521 | Robert Dewar <dewar@adacore.com> | |
18522 | ||
18523 | * par-ch12.adb (P_Generic_Associations): The source position of an | |
18524 | Others association is that of the others keyword, not that of the token | |
18525 | that follows the box. | |
18526 | (P_Formal_Type_Definition): Handle formal access types that carry a | |
18527 | not null indicator. | |
18528 | ||
18529 | * par-ch3.adb (P_Known_Discriminant_Part_Opt, P_Component_Items): If | |
18530 | multiple identifier are present, save Scan_State before scanning the | |
18531 | colon, to ensure that separate trees are constructed for each | |
18532 | declaration. | |
18533 | (P_Identifier_Declarations): For object declaration, set new flag | |
18534 | Has_Init_Expression if initialization expression present. | |
18535 | (P_Null_Exclusion): Properly diagnose NOT NULL coming before NULL | |
18536 | Improve NOT NULL error messages | |
18537 | ||
18538 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18539 | ||
18540 | * par-ch4.adb: (P_Name): Recover from literal used as name | |
18541 | ||
18542 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18543 | ||
18544 | * prep.ads, prep.adb (Expression): New Boolean parameter Complemented, | |
18545 | defaulted to False. | |
18546 | In the "not" case, recursive call with Complemented set to True. | |
18547 | Do not allow "or" or "and" operators when Complemented is True. | |
18548 | ||
18549 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18550 | ||
18551 | * prj.adb (Project_Empty): Gives default value for new component | |
18552 | Libgnarl_Needed | |
18553 | ||
18554 | * prj-attr.ads: Minor reformatting | |
18555 | ||
18556 | * prj-env.ads, prj-env.adb (For_All_Object_Dirs): Register object | |
18557 | directory using the untouched casing. | |
18558 | (For_All_Source_Dirs): Idem. | |
18559 | ||
18560 | * prj-ext.ads, prj-ext.adb (Search_Directories): New table to record | |
18561 | directories specified with switches -aP. | |
18562 | (Add_Search_Project_Directory): New procedure | |
18563 | (Initialize_Project_Path): Put the directories in table | |
18564 | Search_Directories in the project search path. | |
18565 | (Initialize_Project_Path): For VMS, transform into canonical form the | |
18566 | project path. | |
18567 | ||
18568 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
18569 | ||
18570 | * restrict.ads, restrict.adb (No_Exception_Handlers_Set): Only return | |
18571 | true if configurable run-time or No_Run_Time is set. | |
18572 | (Set_Restriction): Avoid setting restriction No_Elaboration_Code when | |
18573 | processing an unit which is not the one being compiled. | |
18574 | ||
18575 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
18576 | ||
18577 | * s-arit64.adb: Replace System.Pure_Exceptions by Ada 05 syntax. | |
18578 | Replace UC by Ada.UC | |
18579 | ||
18580 | * s-bitops.adb: Get rid of System.Pure_Exceptions. | |
18581 | Replace UC by Ada.UC | |
18582 | ||
18583 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18584 | ||
18585 | * scng.adb: (Check_End_Of_Line): Deal with very long lines | |
18586 | ||
18587 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18588 | ||
18589 | * sem.ads, sem.adb (Semantics): Save and restore Global_Discard_Names | |
18590 | Remove no longer used nodes. | |
18591 | ||
18592 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
18593 | Ed Schonberg <schonberg@adacore.com> | |
18594 | Robert Dewar <dewar@adacore.com> | |
18595 | ||
18596 | * sem_ch10.ads, sem_ch10.adb (Analyze_Compilation_Unit): Disable check | |
18597 | on obsolescent withed unit in case of limited-withed units. | |
18598 | (Analyze_Compilation_Unit): Add guard to code that removed an | |
18599 | instantiation from visibility, to prevent compiler aborts when | |
18600 | instantiation is abandoned early on. | |
18601 | (Install_Limited_Withed_Unit): Recognize a limited-with clause on the | |
18602 | current unit being analyzed, and Distinguish local incomplete types | |
18603 | from limited views of types declared elsewhere. | |
18604 | (Build_Limited_Views.Decorate_Tagged_Type): Add documentation | |
18605 | to state that the class-wide entity is shared by the limited-view | |
18606 | and the full-view. | |
18607 | (Analyze_With_Clause): Improve placement of flag for case of | |
18608 | unimplemented unit. | |
18609 | (Analyze_With_Clause): Recognize use of GNAT.Exception_Traces in a | |
18610 | manner similar to GNAT.Current_Exception. This is a violation of | |
18611 | restriction (No_Exception_Propagation), and also inhibits the | |
18612 | optimization of local raise to goto. | |
18613 | (Analyze_With_Clause): Check for Most_Recent_Exception being with'ed, | |
18614 | and if so set Most_Recent_Exception_Used flag in Opt, and also check | |
18615 | for violation of restriction No_Exception_Propagation. | |
18616 | ||
18617 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
18618 | Hristian Kirtchev <kirtchev@adacore.com> | |
18619 | Gary Dismukes <dismukes@adacore.com> | |
18620 | ||
18621 | * sem_ch11.adb (Analyze_Exception_Handlers): Add barrier to avoid the | |
18622 | use of entity Exception_Occurrence if it is not available in the | |
18623 | target run-time. | |
18624 | ||
18625 | * sem_ch9.adb (Analyze_Protected_Type, Analyze_Task_Type): When | |
18626 | concurrent types are declared within an Ada 2005 generic, build their | |
18627 | corresponding record types since they are needed for overriding-related | |
18628 | semantic checks. | |
18629 | (Analyze_Protected_Type): Rearrange and simplify code for testing that a | |
18630 | protected type does not implement a task interface or a nonlimited | |
18631 | interface. | |
18632 | (Analyze_Task_Type): Rearrange and simplify code for testing that a task | |
18633 | type does not implement a protected interface or a nonlimited interface. | |
18634 | (Single_Task_Declaration, Single_Protected_Declaration): use original | |
18635 | entity for variable declaration, to ensure that debugging information | |
18636 | is correcty generated. | |
18637 | (Analyze_Protected_Type, Analyze_Task_Type): Do not call expander | |
18638 | routines if the expander is not active. | |
18639 | (Analyze_Task_Body): Mark all handlers to stop optimization of local | |
18640 | raise, since special things happen for task exception handlers. | |
18641 | ||
18642 | * sem_disp.adb (Check_Controlling_Formals): Add type retrieval for | |
18643 | concurrent types declared within a generic. | |
18644 | (Check_Dispatching_Operation): Do not emit warning about late interface | |
18645 | operations in the context of an instance. | |
18646 | (Check_Dispatching_Call): Remove restriction against calling a | |
18647 | dispatching operation with a limited controlling result. | |
18648 | (Check_Dispatching_Operation): Replace calls to Fill_DT_Entry and | |
18649 | Register_Interface_DT_Entry by calls to Register_Primitive. | |
18650 | (Check_Dispatching_Formals): Handle properly a function with a | |
18651 | controlling access result. | |
18652 | ||
18653 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18654 | Arnaud Charlet <charlet@adacore.com> | |
18655 | ||
18656 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Stream_Size): | |
18657 | Check for restriction No_Implementation_Attributes if in Ada 95 mode. | |
18658 | (Storage_Pool): Do not crash when RE_Stack_Bounded_Pool is not available | |
18659 | (Analyze_Attribute_Definition_Clause [External_Tag]): Generate error | |
18660 | message when using a VM, since this attribute is not supported. | |
18661 | (Analyze_Record_Representation_Clause): Give unrepped component warnings | |
18662 | ||
18663 | * usage.adb: Add new warning for renaming of function return objects | |
18664 | Indicate that -gnatwp and -gnatwP concern front-end inlining | |
18665 | Add line for -gnatyg | |
18666 | Add usage information for -gnatw.c/C | |
18667 | ||
18668 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18669 | Ed Schonberg <schonberg@adacore.com> | |
18670 | ||
18671 | * sem_ch5.adb | |
18672 | (Find_Var): Do not consider function call in test for infinite loop | |
18673 | warning if warnings set off for function entity. | |
18674 | (One_Bound): Do not create a temporary for a loop bound if it is a | |
18675 | character literal. | |
18676 | (Analyze_Assignment): Traverse the right hand side of an assignment and | |
18677 | mark all allocators as static coextensions. | |
18678 | (Analyze_Assignment): Exempt assignments involving a dispatching call | |
18679 | to a function with a controlling access result from the check requiring | |
18680 | the target to be class-wide. | |
18681 | ||
18682 | 2007-06-06 Hristian Kirtchev <kirtchev@adacore.com> | |
18683 | Ed Schonberg <schonberg@adacore.com> | |
18684 | Robert Dewar <dewar@adacore.com> | |
18685 | Javier Miranda <miranda@adacore.com> | |
18686 | ||
18687 | * sem_res.ads, sem_res.adb (Process_Allocator): Do not propagate the | |
18688 | chain of coextensions when an allocator serves as the root of such a | |
18689 | chain. | |
18690 | (Propagate_Coextensions): Remove the test for the root being an | |
18691 | allocator. | |
18692 | (Resolve_Allocator): Add condition to ensure that all future decoration | |
18693 | occurs on an allocator node. Add processing and cleanup for static | |
18694 | coextensions. | |
18695 | (Valid_Conversion): If the operand type is the limited view of a | |
18696 | class-wide type, use the non-limited view is available to determine | |
18697 | legality of operation. | |
18698 | (Ambiguous_Character): move to spec, for use elsewhere. | |
18699 | (Ambiguous_Character): Handle Wide_Wide_Character in Ada 2005 mode | |
18700 | (Resolve_Range): Diagnose properly an ambiguous range whose bounds are | |
18701 | character literals. | |
18702 | (Resolve_Arithmetic_Op): Call Activate_Division_Check instead of setting | |
18703 | Do_Division_Check flag explicitly. | |
18704 | (Resolve_Actuals): If the actual is of a synchronized type, and the | |
18705 | formal is of the corresponding record type, this is a call to a | |
18706 | primitive operation of the type, that is declared outside of the type; | |
18707 | the actual must be unchecked-converted to the type of the actual | |
18708 | (Resolve_Call): Kill all current values for any subprogram call if | |
18709 | flag Suppress_Value_Tracking_On_Call is set. | |
18710 | (Resolve_Type_Conversion): Generate error message the the operand | |
18711 | or target of interface conversions come from a limited view. | |
18712 | (Check_Infinite_Recursion): Ignore generated calls | |
18713 | (Check_Allocator_Discrim_Accessibility): New procedure for checking | |
18714 | that an expression that constrains an access discriminant in an | |
18715 | allocator does not denote an object with a deeper level than the | |
18716 | allocator's access type. | |
18717 | (Resolve_Allocator): In the case of an allocator initialized by an | |
18718 | aggregate of a discriminated type, check that associations for any | |
18719 | access discriminants satisfy accessibility requirements by calling | |
18720 | Check_Allocator_Discrim_Accessibility. | |
18721 | (Resolve_Equality_Op): Handle comparisons of anonymous access to | |
18722 | subprogram types in the same fashion as other anonymous access types. | |
18723 | (Resolve_Concatenation_Arg): Remove initial character '\' in an error | |
18724 | message that is not a continuation message. | |
18725 | (Resolve_Type_Conversion): Add missing support for conversion to | |
18726 | interface type. | |
18727 | (Resolve_Actuals): Introduce a transient scope around the call if an | |
18728 | actual is a call to a function returning a limited type, because the | |
18729 | resulting value must be finalized after the call. | |
18730 | (Resolve_Actuals): If the call was given in prefix notations, check | |
18731 | whether an implicit 'Access reference or implicit dereference must be | |
18732 | added to make the actual conform to the controlling formal. | |
18733 | ||
18734 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18735 | Javier Miranda <miranda@adacore.com> | |
18736 | ||
18737 | * sem_ch7.adb (Check_Anonymous_Access_Types): Fix error for null body | |
18738 | (Derive_Inherited_Private_Subprogram): Code cleanup. In case of explicit | |
18739 | overriding of an inherited private subprogram now there is no need to | |
18740 | inherit its dispatching slot and reduce the size of the dispatch table. | |
18741 | Set_All_DT_Position now ensures that the same slot is now assigned to | |
18742 | both entities. This is required to statically build the dispatch table. | |
18743 | (Declare_Inherited_Private_Subprograms): Rewriten to avoid the need | |
18744 | of calling Set_All_DT_Position to re-evaluate the position of the | |
18745 | entries in the dispatch table. Such reevaluation is not desired if | |
18746 | the tagged type is already frozen. | |
18747 | ||
18748 | 2007-06-06 Hristian Kirtchev <kirtchev@adacore.com> | |
18749 | Gary Dismukes <dismukes@adacore.com> | |
18750 | Robert Dewar <dewar@adacore.com> | |
18751 | Javier Miranda <miranda@adacore.com> | |
18752 | ||
18753 | * sem_util.ads, sem_util.adb (May_Be_Lvalue): A prefix of an attribute | |
18754 | reference acts as an lvalue when the attribute name modifies the prefix | |
18755 | (Is_Coextension_Root): New routine. | |
18756 | (Mark_Static_Coextensions): New routine. | |
18757 | (Type_Access_Level): Revise code for checking the level of the | |
18758 | anonymous access type of a return object. | |
18759 | (Safe_To_Capture_Value): Not safe to capture if Address_Taken | |
18760 | (Matches_Prefixed_View_Profile): Remove the no longer necessary | |
18761 | retrieval of the corresponding controlling record type. | |
18762 | (Find_Overridden_Synchronized_Primitive): Code cleanup. Add handling of | |
18763 | concurrent types declared within a generic as well as class wide types. | |
18764 | Emit a mode incompatibility error whenever a protected entry or routine | |
18765 | override an interface routine whose first parameter is not of mode | |
18766 | "out", "in out" or access to variable. | |
18767 | (Overrides_Synchronized_Primitive): Rename to | |
18768 | Find_Overridden_Synchronized_Primitive. | |
18769 | (Collect_Interface_Components): New subprogram that collects all the | |
18770 | components of a tagged record containing tags of secondary dispatch | |
18771 | tables. | |
18772 | (Add_Global_Declaration): New procedure | |
18773 | (Abstract_Interface_List): Handle properly the case of a subtype of a | |
18774 | private extension. | |
18775 | (Type_Access_Level): In the case of a type whose parent scope is a | |
18776 | return statement, call Type_Access_Level recursively on the enclosing | |
18777 | function's result type to determine the level of the return object's | |
18778 | type. | |
18779 | (Build_Elaboration_Entity): Build name of elaboration entity from the | |
18780 | scope chain of the entity, rather than the unit name of the file name. | |
18781 | (Check_Nested_Access): New procedure. | |
18782 | (Has_Up_Level_Access, Set_Has_Up_Level_Access): New procedures. | |
18783 | (Find_Direct_Name, Note_Possible_Modification): Use Check_Nested_Access. | |
18784 | (Get_Renamed_Entity): Utility routine for performing common operation | |
18785 | of chasing the Renamed_Entity field of an entity. | |
18786 | ||
18787 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18788 | ||
18789 | * sem_elab.adb (Check_A_Call): Specialize elaboration warnings on | |
18790 | elaboration model | |
18791 | (Check_A_Call): Add check for entry call which was causing blowup | |
18792 | ||
18793 | 2007-06-06 Olivier Hainque <hainque@adacore.com> | |
18794 | ||
18795 | * raise-gcc.c (__gnat_eh_personality): Tweak the signature and add | |
18796 | special code on ia64-vms to handle major incompatibilities between the | |
18797 | GCC unwinding ABI and the VMS Condition Handling Facility, both calling | |
18798 | this routine with a very different set of arguments and expectations on | |
18799 | the return value. | |
18800 | ||
18801 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
18802 | ||
18803 | * socket.c (__gnat_close_signalling_fd): New function. | |
18804 | (__gnat_safe_gethostbyaddr, __gnat_safe_gethostbyname, | |
18805 | __gnat_safe_getservbyname, __gnat_safe_getservbyport): | |
18806 | New supporting functions for task safe Netdb operations. | |
18807 | ||
18808 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
18809 | Olivier Hainque <hainque@adacore.com> | |
18810 | ||
18811 | * a-except-2005.ads, a-except-2005.adb | |
18812 | (Raise_From_Controlled_Operation): New procedure in | |
18813 | (private part of) Ada.Exceptions (standard runtime version). Used to | |
18814 | provide informational exception message when Program_Error is raised as | |
18815 | a result of an Adjust or Finalize operation propagating an exception. | |
18816 | (Rmsg_28): Fix description for E.4(18) check. | |
18817 | (Raise_Current_Excep): Call Debug_Raise_Exception just before | |
18818 | propagation starts, to let debuggers know about the event in a reliable | |
18819 | fashion. | |
18820 | Take the address of E and dereference to make sure it is homed on stack | |
18821 | and prevent the stores from being deleted, necessary for proper | |
18822 | debugger behavior on "break exception" hits. | |
18823 | (Local_Raise): Moved to System.Exceptions | |
18824 | ||
18825 | * s-finimp.adb (Raise_From_Finalize): Code to construct an appropriate | |
18826 | exception message from the current occurrence and raise Program_Error | |
18827 | has been moved to Ada.Exceptions.Raise_From_Controlled_Operation. | |
18828 | ||
18829 | 2007-06-06 Jose Ruiz <ruiz@adacore.com> | |
18830 | Arnaud Charlet <charlet@adacore.com> | |
18831 | ||
18832 | * s-taprob.adb (Unlock): Change the ceiling priority of the underlying | |
18833 | lock, if needed. | |
18834 | ||
18835 | * s-taprop.ads (Set_Ceiling): Add this procedure to change the ceiling | |
18836 | priority associated to a lock. | |
18837 | ||
18838 | * s-tpoben.adb ([Vulnerable_]Complete_Task, Lock_Entries): Relax | |
18839 | assertion to take into account case of no abort restriction. | |
18840 | (Initialize_Protection_Entries): Add initialization for the field | |
18841 | New_Ceiling associated to the protected object. | |
18842 | (Unlock_Entries): Change the ceiling priority of the underlying lock, if | |
18843 | needed. | |
18844 | ||
18845 | * s-solita.adb (Get_Current_Excep): Moved back to s-tasini/s-tarest, | |
18846 | since this function needs to be set consistently with Update_Exception. | |
18847 | ||
18848 | * s-tarest.adb (Get_Current_Excep): Moved back to s-tasini/s-tarest, | |
18849 | since this function needs to be set consistently with Update_Exception. | |
18850 | ||
18851 | * s-taskin.ads: Update comments on | |
18852 | Interrupt_Server_Blocked_On_Event_Flag. | |
18853 | (Unbind_Handler): Fix handling of server_task wakeup | |
18854 | (Server_Task): Set self's state so that Unbind_Handler can take | |
18855 | appropriate actions. | |
18856 | (Common_ATCB): Now use a constant from System.Parameters to determine | |
18857 | the max size of the Task_Image field. | |
18858 | ||
18859 | * s-tassta.adb (Task_Wrapper): Now pass the overflow guard to the | |
18860 | Initialize_Analyzer function. | |
18861 | ([Vulnerable_]Complete_Task, Lock_Entries): Relax assertion to | |
18862 | take into account case of no abort restriction. | |
18863 | ([Vulnerable_]Complete_Master): Modify assertion. | |
18864 | ||
18865 | * s-tataat.adb (Finalize): Use the nestable versions of | |
18866 | Defer/Undefer_Abort. | |
18867 | ||
18868 | * s-tpobop.adb (Protected_Entry_Call): Relax assertion. | |
18869 | ||
18870 | * s-tpobop.ads: Update comments. | |
18871 | ||
18872 | * s-tposen.adb (Protected_Single_Entry_Call): Call Lock_Entry instead | |
18873 | of locking the object manually, to avoid inconsistencies between | |
18874 | Lock/Unlock_Entry assertions. | |
18875 | ||
18876 | * s-interr.ads, s-interr.adb (Server_Task): Fix race condition when | |
18877 | terminating | |
18878 | application and System.Parameters.No_Abort is True. | |
18879 | Update comments on Interrupt_Server_Blocked_On_Event_Flag. | |
18880 | (Unbind_Handler): Fix handling of server_task wakeup | |
18881 | (Server_Task): Set self's state so that Unbind_Handler can take | |
18882 | appropriate actions. | |
18883 | ||
18884 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
18885 | ||
18886 | * s-finroo.ads, s-finroo.adb (Read, Write): Use null procedure | |
18887 | declarations instead of an explicit null body, for conciseness. | |
18888 | ||
18889 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18890 | ||
18891 | * sem_eval.adb (Eval_Relational_Op): nothing to do if an operand is an | |
18892 | illegal aggregate and the type is still Any_Composite. | |
18893 | (Subtypes_Statically_Match): Fix problem of empty discriminant list | |
18894 | ||
18895 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
18896 | ||
18897 | * sem_smem.adb (Check_Shared_Var): Check explicitly for as task object, | |
18898 | to prevent subsequent expansion. | |
18899 | ||
18900 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18901 | ||
18902 | * sinput-l.ads, sinput-l.adb: implement a new pragma No_Body | |
18903 | ||
18904 | 2007-06-06 Ed Schonberg <schonberg@adacore.com> | |
18905 | Robert Dewar <dewar@adacore.com> | |
18906 | ||
18907 | * sprint.ads, sprint.adb (Sprint_Node_Actual): Output aggregate for | |
18908 | exceptions. | |
18909 | (Write_Itype): Handle case of string literal subtype, which | |
18910 | comes up in this context. | |
18911 | (Update_Itype): when debugging expanded code, update sloc of itypes | |
18912 | associated with defining_identifiers and ranges, for gdb use. | |
18913 | (Sprint_Node_Actual): Add static keyword to object or exception | |
18914 | declaration output if Is_Statically_Allocated is True. | |
18915 | (Sprint_End_Label): Set entity of end marker for a subprogram, package, | |
18916 | or task body, so that the tree carries the proper Sloc information for | |
18917 | debugging use. | |
18918 | (Write_Indent): In Dump_Source_Text mode, ignore implicit label nodes | |
18919 | ||
18920 | 2007-06-06 Arnaud Charlet <charlet@adacore.com> | |
18921 | ||
18922 | * s-secsta.adb (Chunk): Ensure this object has a static size known at | |
18923 | compile time, to avoid dynamic memory allocation | |
18924 | (Elaboration code): Only use dynamic memory allocation when needed. | |
18925 | ||
18926 | 2007-06-06 Quentin Ochem <ochem@adacore.com> | |
18927 | ||
18928 | * s-stausa.ads, s-stausa.adb (Initialize_Analyzer): Added parameter | |
18929 | "Overflow_Guard". | |
18930 | (Stack_Analyzer): Added field "Overflow_Guard" | |
18931 | (Task_Result): Added field "Overflow_Guard". | |
18932 | (Index_Str): New constant. | |
18933 | (Task_Name_Str): New constant. | |
18934 | (Actual_Size_Str): New constant. | |
18935 | (Pattern_Array_Element_Size): New constant. | |
18936 | (Get_Usage_Range): New subprogram. | |
18937 | (Output_Result): Added parameter Max_Size_Len and Max_Actual_Use_Len. | |
18938 | Now align the output. | |
18939 | Added comments. | |
18940 | (Initialize): Added value for Overflow_Guard. | |
18941 | (Fill_Stack): Use constant Pattern_Array_Elem_Size when relevant. | |
18942 | Update the value of the overflow guard according to the actual | |
18943 | beginning of the pattern array. | |
18944 | (Initialize_Analyzer): Added parameter Overflow_Guard. | |
18945 | Take this parameter into accound when computing the max size. | |
18946 | (Compute_Result): Use constant Pattern_Array_Elem_Size when relevant. | |
18947 | (Report_Result): Removed extra useless procedure. | |
18948 | Updated call to Output_Result. | |
18949 | Moved full computation of the Task_Result here. | |
18950 | ||
18951 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
18952 | ||
18953 | * g-soccon-darwin.ads, gen-soccon.c: Add new constant | |
18954 | Thread_Blocking_IO, always True by default, set False on a per-runtime | |
18955 | basis. | |
18956 | Add Windows-specific constants | |
18957 | Add new constant Need_Netdb_Buffer. | |
18958 | Add new macros to indicate whether getXXXbyYYY is thread safe and, if | |
18959 | not, whether to use getXXXbyYYY_r. | |
18960 | ||
18961 | * gsocket.h: Add new constant Need_Netdb_Buffer. | |
18962 | Add new macros to indicate whether getXXXbyYYY is thread safe and, if | |
18963 | not, whether to use getXXXbyYYY_r. | |
18964 | ||
18965 | 2007-06-06 Eric Botcazou <ebotcazou@adacore.com> | |
18966 | ||
18967 | * s-stoele.ads, s-stoele.adb: Move inline_always subprograms earlier | |
18968 | than their first call. | |
18969 | Add type Dummy_Communication_Block used in the generation of the pre- | |
18970 | defined dispatching primitive _disp_asynchronous_select. | |
18971 | (Storage_Element): Put Pragma Universal_Aliasing on it. | |
18972 | ||
18973 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
18974 | ||
18975 | * a-dirval-vms.adb, a-dirval.ads, a-dirval.adb (Windows): New Boolean | |
18976 | function. | |
18977 | ||
18978 | * a-dirval-mingw.adb (Is_Valid_Path_Name): Forbid a path with a drive | |
18979 | letter if it is not followed by a '/' or a '\'. | |
18980 | (Windows): New Boolean function | |
18981 | ||
18982 | * a-direct.ads, a-direct.adb: Remove unnecessary and misplaced pragma | |
18983 | Ada 2005. | |
18984 | (Containing_Directory): On Windows, keep at least one '/' or '\' after a | |
18985 | drive letter. | |
18986 | (Containing_Directory): Raise Use_Error when the directory is a root | |
18987 | directory. | |
18988 | (Extension): When returning the result, use a conversion to Result_Type, | |
18989 | not a qualification. | |
18990 | ||
18991 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
18992 | ||
18993 | * stylesw.ads, stylesw.adb (Set_GNAT_Style_Check): New procedure | |
18994 | (Set_Style_Check_Options): Recognize new -gnatyg style switch | |
18995 | ||
18996 | * switch-c.adb (Scan_Front_End_Switches, case -gnatg): Set | |
18997 | Warn_On_Non_Local_Exception to False, to turn off warnings for | |
18998 | No_Exception_Propagation in ZFP runtime. | |
18999 | (Scan_Front_End_Switches): Fix handling of --RTS switch for non GCC | |
19000 | back-ends. | |
19001 | (Scan_Front_End_Switches): For 'g', call Set_GNAT_Style_Checks | |
19002 | ||
19003 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
19004 | ||
19005 | * switch-b.adb (Scan_Binder_Switches): Add processing for new | |
19006 | switches -R and -Z | |
19007 | ||
19008 | * switch-m.adb (Normalize_Compiler_Switches): Do not record switch -E | |
19009 | (Scan_Make_Switches): Recognize new switch -aP | |
19010 | ||
19011 | 2007-06-06 Matthew Gingell <gingell@adacore.com> | |
19012 | Jose Ruiz <ruiz@adacore.com> | |
19013 | ||
19014 | * s-stchop-vxworks.adb (Set_Stack_Info): Instead of trying to map the | |
19015 | VxWorks task descriptor in the Ada run time, call a C subprogram | |
19016 | (__gnat_get_stack_info) that extracts the required information. | |
19017 | ||
19018 | * sysdep.c: Back out temporary lynxos workaround. | |
19019 | (__gnat_get_stack_info): Add this procedure that passes to the Ada run | |
19020 | time the stack information associated to the currently executing task. | |
19021 | Only VxWorks systems require this function. | |
19022 | ||
19023 | 2007-06-06 Eric Botcazou <ebotcazou@adacore.com> | |
19024 | ||
19025 | * tracebak.c (FRAME_OFFSET): Add parameter FP. On SPARC/Solaris, do not | |
19026 | add the stack bias if the offset is computed from a frame address. | |
19027 | (__gnat_backtrace): Adjust for above change. | |
19028 | ||
19029 | 2007-06-06 Thomas Quinot <quinot@adacore.com> | |
19030 | ||
19031 | * types.h, types.ads: Rename PE_Illegal_CW_Actual_E_4_18 to | |
19032 | PE_Non_Transportable_Actual. | |
19033 | (By_Descriptor_Last): New constant. | |
19034 | (By_Copy_Return): Likewise. | |
19035 | ||
19036 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
19037 | ||
19038 | * vms_conv.adb (Process_Argument): Keep arguments starting with '+' as | |
19039 | is. | |
19040 | ||
19041 | * vms_data.ads: Add entries for -gnatw.x and -gnatw.X | |
19042 | /STYLE_CHECKS=GNAT: Change meaning to -gnatyg | |
19043 | /GNAT_INTERNAL: New compiler qualifier corresponding to -gnatg | |
19044 | Add missing comment for /OPTIMIZE=SPACE | |
19045 | Add entry for OPTIMIZE=SPACE | |
19046 | Add new qualifier /ALL_PROJECTS (= -U) for GNAT LIST | |
19047 | Add documentation for new qualifiers corresponding to -gnatw.c/.C | |
19048 | ||
19049 | 2007-06-06 Vincent Celier <celier@adacore.com> | |
19050 | Robert Dewar <dewar@adacore.com> | |
19051 | ||
19052 | * xgnatugn.adb: Allow dots to be used in ug_words (-gnatw.c and | |
19053 | -gnatw.C) | |
19054 | ||
19055 | * gnat_ugn.texi: Fix ordering of -g switch for gnatmake | |
19056 | Document gnatbind switch -a | |
19057 | (case Constructions): Document that variables declarations are allowed | |
19058 | for previously declared variables. | |
19059 | Fix external lib project example | |
19060 | -gnatg: Indicate new VMS qualifier /GNAT_INTERNAL | |
19061 | Indicate that "#if not X or Y then" is not allowed in input files to | |
19062 | gnatprep. | |
19063 | Document gnatw.x and gnatw.X warning flags | |
19064 | Mention -Winline switch to activate warnings when back-end inlining is | |
19065 | ineffective. | |
19066 | Add gnatcheck rule descriptions | |
19067 | Describe how to use the GNAT driver to call a tool on a closure. | |
19068 | Describe how to run project-wide checks or metrics. | |
19069 | Document gnatbind's -R option | |
19070 | Updated to account for Ada 2005 support | |
19071 | ||
19072 | * gnat_rm.texi (Case Construction): Allow variable declarations for | |
19073 | previously declared variables. | |
19074 | (Representation Clauses and Pragmas): Lift restriction on alignment | |
19075 | clauses for record types. | |
19076 | (Ada.Characters.*): Fix typo in reference to A.3.3(27). | |
19077 | Document No_Exception_Propagation restriction | |
19078 | Document No_Body pragma | |
19079 | Updated to account for Ada 2005 support; corrected some typos | |
19080 | (Implementation Defined Pragmas): Document pragma Universal_Aliasing. | |
19081 | ||
19082 | * gnat-style.texi: Make it clear that we never use mode IN for | |
19083 | procedures or functions | |
19084 | ||
19085 | * ug_words: Add entries for -gnatw.x and -gnatw.X | |
19086 | Add entries for -gnatw.c/.C | |
19087 | ||
19088 | 2007-06-06 Pascal Obry <obry@adacore.com> | |
19089 | Vincent Celier <celier@adacore.com> | |
19090 | ||
19091 | * makegpr.adb (Add_Archive_Path): Use untouched object and library | |
19092 | dirs and library name. | |
19093 | (Build_Global_Archive): Idem. Minor code clean-up. Removes duplicate | |
19094 | comments. | |
19095 | (Build_Library): Idem. | |
19096 | (Compile_Individual_Sources): Idem. | |
19097 | (Compile_Link_With_Gnatmake): Idem. | |
19098 | (Compile_Sources): Idem. | |
19099 | (Get_Imported_Directories): Idem. | |
19100 | (Link_Executables): Idem. Same change for the executable dir. | |
19101 | (Check_Compilation_Needed): C_Source_Path new variable containing | |
19102 | the canonical form of Source_Path to check against the source names | |
19103 | in the dependency file. | |
19104 | (Build_Global_Archive, Compile_Individual_Sources, Compile_Sources): In | |
19105 | verbose mode, display the name of the object directory we're changing | |
19106 | to. | |
19107 | (Saved_Switches): New name of table X_Switches | |
19108 | (Scan_Arg): Recognize new switch -aP and save in table Saved_Switches | |
19109 | (Usage): New line for switch -aP | |
19110 | (Get_Imported_Directories.Add): Make sure that Add_Arg is True before | |
19111 | testing if a directory should be added to the search path. | |
19112 | ||
19113 | 2007-06-06 Javier Miranda <miranda@adacore.com> | |
19114 | ||
9e81dbc7 | 19115 | * a-cidlli.ads, a-cdlili.ads, a-cohama.ads, a-coinve.ads, |
ec11296f AC |
19116 | a-convec.ads (Empty_Vector, Empty_Map, Empty_List): Move this object |
19117 | declaration after freezing point of all its associated tagged types; | |
19118 | otherwise such types are frozen too early. | |
19119 | ||
19120 | 2007-06-06 Robert Dewar <dewar@adacore.com> | |
19121 | ||
19122 | * a-reatim.adb: Documentation addition | |
19123 | ||
19124 | * g-cgideb.adb: Minor code reorganization | |
19125 | ||
19126 | * tree_io.adb, treepr.adb, cstand.adb, krunch.adb, par.adb, | |
19127 | mdll-utl.adb, par-ch5.adb, par-tchk.adb, s-exctab.ads, s-memory.ads, | |
19128 | s-osprim.ads, s-restri.ads, s-soflin.ads: Minor reformatting. | |
19129 | ||
19130 | * debug.ads, debug.adb (Get_Debug_Flag_K): Remove unused obsolete | |
19131 | function. Change name New_Scope to Push_Scope | |
19132 | (Get_Debug_Flag_K): Remove unused obsolete function. | |
19133 | ||
19134 | * exp_ch8.adb, inline.adb, sem_ch8.ads: Change name New_Scope to | |
19135 | Push_Scope. | |
19136 | ||
19137 | * makeusg.adb: Update Copyright notice | |
19138 | Add line for switch -aP | |
19139 | ||
19140 | * makeusg.adb: Fix wording of some usage messages | |
19141 | ||
19142 | * s-assert.adb (Raise_Assert_Failure): Add call to | |
19143 | Debug_Raise_Assert_Failure. | |
19144 | ||
19145 | * s-unstyp.ads (type Packed_Bytes2): Change alignment to use 'Min | |
19146 | (2, Standard'Alignment) for compatibility with AAMP (where alignment | |
19147 | is restricted to 1). | |
19148 | ||
19149 | * s-wchjis.adb: Remove use of System.Pure_Exceptions | |
19150 | ||
19151 | * tbuild.ads, tbuild.adb (Make_Implicit_Exception_Handler): Set the | |
19152 | node location to No_Location when we're not debugging the expanded | |
19153 | code. | |
19154 | ||
dbc30a96 AO |
19155 | 2007-05-22 Alexandre Oliva <aoliva@redhat.com> |
19156 | ||
19157 | * misc.c (enumerate_modes): Consider log2_b to always be one. | |
19158 | ||
719bb4e3 | 19159 | 2007-05-14 Rafael Ávila de Espíndola <espindola@google.com> |
ca5ba2a3 RAE |
19160 | |
19161 | * misc.c (LANG_HOOKS_UNSIGNED_TYPE): Remove. | |
19162 | ||
d7598e11 PO |
19163 | 2007-05-02 Pascal Obry <obry@adacore.com> |
19164 | ||
19165 | * gnatchop.adb (Write_Source_Reference_Pragma): Change implementation | |
19166 | to use Stream_IO.File_Type. This is needed to make use of the UTF-8 | |
19167 | encoding support of Stream_IO. | |
19168 | (Write_Unit): Idem. | |
19169 | ||
19170 | * adaint.h, adaint.c (__gnat_os_filename): New routine. Returns the | |
19171 | filename and corresponding encoding to match the OS requirement. | |
19172 | (__gnat_file_exists): Do not call __gnat_stat() on Windows as this | |
19173 | routine will fail on specific devices like CON: AUX: ... | |
19174 | ||
19175 | PR ada/29856: Add missing braces | |
19176 | ||
1be52f61 AP |
19177 | 2007-04-22 Andrew Pinski <andrew_pinski@playstation.sony.com> |
19178 | ||
19179 | PR ada/31660 | |
19180 | * ada-tree.h (lang_tree_node): Fix typo in chain_next. | |
19181 | ||
395a40e0 JH |
19182 | 2007-04-21 Jan Hubicka <jh@suse.cz> |
19183 | ||
19184 | * misc.c (gnat_expand_body): Don't call target for destructors, | |
19185 | avoid redundant check on syntax errors. | |
19186 | ||
3d95caa4 AP |
19187 | 2007-04-21 Andrew Pinski <andrew_pinski@playstation.sony.com> |
19188 | ||
19189 | * ada-tree.h (lang_tree_node): Use GENERIC_NEXT | |
19190 | instead of checking GIMPLE_STMT_P in chain_next. | |
19191 | ||
ea30850a AK |
19192 | 2007-04-17 Andreas Krebbel <krebbel1@de.ibm.com> |
19193 | ||
19194 | PR ada/31576 | |
19195 | * system-linux-alpha.ads: Disable constant condition warning for the | |
19196 | Default_Bit_Order variable. | |
19197 | * system-linux-s390.ads: Likewise. | |
19198 | * system-linux-s390x.ads: Likewise. | |
19199 | * system-linux-sparc.ads: Likewise. | |
19200 | ||
4b437c6b AC |
19201 | 2007-04-06 Javier Miranda <miranda@adacore.com> |
19202 | Matt Heaney <heaney@adacore.com> | |
19203 | Robert Dewar <dewar@adacore.com> | |
19204 | ||
19205 | a-coprnu.ads, a-cohata.ads, a-chtgop.ads, a-chtgop.adb, a-cgcaso.ads, | |
19206 | a-cgarso.ads, a-secain.ads, a-slcain.ads, a-shcain.ads, a-chtgke.ads, | |
19207 | a-chtgke.ads, a-coprnu.ads, a-contai.ads, a-chtgke.ads, a-chtgke.adb, | |
19208 | a-stwiha.ads, a-strhas.ads, a-lfztio.ads, a-liztio.ads, a-llfzti.ads, | |
19209 | a-llizti.ads, a-sfztio.ads, a-siztio.ads, a-ssizti.ads, a-stzfix.ads, | |
19210 | a-stzhas.ads, a-szuzha.ads, a-tiunio.ads, a-wwunio.ads, a-ztcoio.ads, | |
19211 | a-ztinio.ads, a-zttest.ads, a-zzunio.ads, a-astaco.ads, a-charac.ads, | |
19212 | a-chlat1.ads, ada.ads, a-dynpri.ads, a-flteio.ads, a-fwteio.ads, | |
19213 | a-inteio.ads, a-intnam.ads, a-ioexce.ads, a-iwteio.ads, a-lfteio.ads, | |
19214 | a-lfwtio.ads, a-liteio.ads, a-liwtio.ads, a-llftio.ads, a-llfwti.ads, | |
19215 | a-llitio.ads, a-lliwti.ads, a-ncelfu.ads, a-ngcefu.ads, a-ngelfu.ads, | |
19216 | a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads, a-nllcty.ads, | |
19217 | a-nllefu.ads, a-nscefu.ads, a-nscoty.ads, a-nselfu.ads, a-nucoty.ads, | |
19218 | a-nuelfu.ads, a-numeri.ads, a-sfteio.ads, a-sfwtio.ads, a-siteio.ads, | |
19219 | a-siwtio.ads, a-ssitio.ads, a-ssiwti.ads, a-storio.ads, a-strfix.ads, | |
19220 | a-string.ads, a-stwifi.ads, a-titest.ads, a-unccon.ads, a-uncdea.ads, | |
19221 | a-wtcoio.ads, a-wtinio.ads, a-wttest.ads, calendar.ads, directio.ads, | |
19222 | i-c.ads, ioexcept.ads, machcode.ads, sequenio.ads, text_io.ads, | |
19223 | unchconv.ads, unchdeal.ads, a-widcha.ads, a-zchara.ads, a-stboha.ads, | |
19224 | a-stfiha.ads, a-coteio.ads, a-envvar.ads, a-lcteio.ads, a-llctio.ads, | |
19225 | a-scteio.ads, a-swbwha.ads, a-swfwha.ads, a-szbzha.ads, a-szfzha.ads, | |
19226 | a-tiboio.ads, a-wwboio.ads, a-zzboio.ads, a-dispat.ads, a-tgdico.ads, | |
19227 | expander.adb, g-socket.ads, par-labl.adb, sinput-c.adb, s-tarest.ads, | |
19228 | s-stchop.ads, g-expect-vms.adb, s-taprop-lynxos.adb, | |
19229 | s-taprop-tru64.adb, s-taprop-irix.adb, | |
19230 | s-taprop-hpux-dce.adb, s-traceb-hpux.adb, | |
19231 | s-taprop-linux.adb, s-taprop-dummy.adb, s-osprim-unix.adb, | |
19232 | s-osprim-solaris.adb, s-taprop-solaris.adb, s-taprop-vms.adb, | |
9e81dbc7 AS |
19233 | s-osprim-mingw.adb, s-taprop-mingw.adb, s-osprim-posix.adb, |
19234 | s-taprop-posix.adb, a-exexpr-gcc.adb, a-ststio.adb, a-ststio.ads, | |
19235 | a-textio.adb, a-textio.ads, a-tideau.adb, a-tideau.ads, a-witeio.adb, | |
19236 | a-witeio.ads, a-wtdeau.adb, a-wtdeau.ads, g-calend.adb, g-calend.ads, | |
19237 | g-dirope.adb, g-expect.ads, gnatchop.adb, g-spipat.adb, g-spipat.ads, | |
19238 | s-direio.adb, s-direio.ads, s-fatgen.adb, s-fatgen.ads, s-parint.adb, | |
19239 | s-sequio.adb, s-sequio.ads, s-taprop.ads, s-valdec.adb, s-valdec.ads, | |
19240 | s-valint.adb, s-valint.ads, s-vallld.adb, s-vallld.ads, s-vallli.adb, | |
19241 | s-vallli.ads, s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads, | |
19242 | s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads, xref_lib.adb, | |
19243 | s-stchop.adb, i-vxwork-x86.ads, a-crbtgo.ads, a-crbtgo.adb, | |
19244 | a-coorse.ads, a-coorse.adb, a-cohama.ads, a-cohama.adb, a-ciorse.ads, | |
19245 | a-ciorse.adb, a-cihama.ads, a-cihama.adb, a-chtgop.ads, a-chtgop.ads, | |
19246 | a-coormu.adb, a-ciormu.adb, a-cihase.adb, a-cihase.ads, a-cohase.adb, | |
4b437c6b | 19247 | a-cohase.ads, a-swuwha.ads, a-ciormu.ads, a-coormu.ads, a-rbtgso.ads, |
9e81dbc7 | 19248 | a-stunha.ads, a-ciorma.adb, a-coorma.adb, a-ztdeau.adb, a-ztdeau.ads, |
4b437c6b AC |
19249 | a-ztexio.adb, a-ztexio.ads: Addition of null-exclusion to anonymous |
19250 | access types. | |
19251 | Update documentation. | |
19252 | Minor rewording. | |
19253 | ||
19254 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
19255 | ||
19256 | * system-linux-ia64.ads, system-freebsd-x86.ads, system-lynxos-ppc.ads, | |
19257 | system-lynxos-x86.ads, system-linux-x86_64.ads, system-tru64.ads, | |
19258 | system-vxworks-sparcv9.ads, system-solaris-x86.ads, system-irix-o32.ads, | |
19259 | system-irix-n32.ads, system-hpux.ads, system-vxworks-m68k.ads, | |
19260 | system-linux-x86.ads, system-vxworks-mips.ads, system-interix.ads, | |
19261 | system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads, | |
19262 | system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads, | |
19263 | system-vxworks-alpha.ads, system-vms_64.ads, system-darwin-ppc.ads, | |
19264 | system-vxworks-x86.ads, system-linux-ppc.ads, system-linux-hppa.ads, | |
9e81dbc7 | 19265 | system-hpux-ia64.ads, targparm.adb, |
4b437c6b AC |
19266 | targparm.ads (Functions_Return_By_DSP_On_Target): Removed |
19267 | ||
19268 | * system.ads: Move Functions_Return_By_DSP to obsolete section, | |
19269 | kept for bootstrap purposes only. | |
19270 | ||
19271 | 2007-04-06 Arnaud Charlet <charlet@adacore.com> | |
19272 | ||
19273 | * s-osinte-lynxos-3.ads, s-osinte-hpux.ads, s-osinte-solaris-posix.ads, | |
19274 | s-osinte-freebsd.ads, s-osinte-aix.ads, s-osinte-darwin.ads, | |
19275 | s-taprop-posix.adb (Create_Task): Fix handling of Task_Info. | |
19276 | (PTHREAD_SCOPE_PROCESS, PTHREAD_SCOPE_SYSTEM): New constants. | |
19277 | ||
19278 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
19279 | ||
19280 | * a-except.adb, a-except.ads, a-except-2005.ads, a-except-2005.adb | |
19281 | (Local_Raise): New dummy procedure called when a raise is converted | |
19282 | to a local goto. Used for debugger to detect that the exception | |
19283 | is raised. | |
19284 | ||
19285 | * debug.adb: Document new d.g flag (expand local raise statements to | |
19286 | gotos even if pragma Restriction (No_Exception_Propagation) is not set) | |
19287 | ||
19288 | * exp_sel.adb: Use Make_Implicit_Exception_Handler | |
19289 | ||
19290 | * exp_ch11.adb (Expand_Exception_Handlers): Use new flag -gnatw.x to | |
19291 | suppress warnings for unused handlers. | |
19292 | (Warn_If_No_Propagation): Use new flag -gnatw.x to suppress | |
19293 | warnings for raise statements not handled locally. | |
19294 | (Get_RT_Exception_Entity): New function | |
19295 | (Get_Local_Call_Entity): New function | |
19296 | (Find_Local_Handler): New function | |
19297 | (Warn_If_No_Propagation): New procedure | |
19298 | (Expand_At_End_Handler): Call Make_Implicit_Handler | |
19299 | (Expand_Exception_Handlers): Major additions to deal with local handlers | |
19300 | (Expand_N_Raise_Constraint_Error, Expand_N_Raise_Program_Error, | |
19301 | Expand_N_Raise_Storage_Error, (Expand_N_Raise_Statement): Add handling | |
19302 | for local raise | |
19303 | ||
19304 | * exp_ch11.ads (Get_RT_Exception_Entity): New function | |
19305 | (Get_Local_Call_Entity): New function | |
19306 | ||
19307 | * gnatbind.adb (Restriction_List): Add No_Exception_Propagation to list | |
19308 | of restrictions that the binder will never suggest adding. | |
19309 | ||
19310 | * par-ch11.adb (P_Exception_Handler): Set Local_Raise_Statements field | |
19311 | to No_Elist. | |
19312 | ||
19313 | * restrict.adb (Check_Restricted_Unit): GNAT.Current_Exception may not | |
19314 | be with'ed in the presence of pragma Restriction | |
19315 | (No_Exception_Propagation). | |
19316 | ||
19317 | * sem.adb (Analyze): Add entries for N_Push and N_Pop nodes | |
19318 | ||
19319 | * sem_ch11.adb (Analyze_Exception_Handler): If there is a choice | |
19320 | parameter, then the handler is not a suitable target for a local raise, | |
19321 | and this is a violation of restriction No_Exception_Propagation. | |
19322 | (Analyze_Handled_Statements): Analyze choice parameters in exception | |
19323 | handlers before analyzing statement sequence (needed for proper | |
19324 | detection of local raise statements). | |
19325 | (Analyze_Raise_Statement): Reraise statement is a violation of the | |
19326 | No_Exception_Propagation restriction. | |
19327 | ||
19328 | * s-rident.ads: Add new restriction No_Exception_Propagation | |
19329 | ||
19330 | * tbuild.ads, tbuild.adb (Make_Implicit_Exception_Handler): New | |
19331 | function, like Make_Exception_Handler but sets Local_Raise_Statements | |
19332 | to No_List. | |
19333 | (Add_Unique_Serial_Number): Deal with case where this is called during | |
19334 | processing of configuration pragmas. | |
19335 | ||
19336 | 2007-04-06 Thomas Quinot <quinot@adacore.com> | |
19337 | Pat Rogers <rogers@adacore.com> | |
19338 | Pascal Obry <obry@adacore.com> | |
19339 | ||
19340 | * g-stsifd-sockets.adb: New file. | |
19341 | ||
19342 | * g-socthi.ads, g-socket.adb, g-socthi-vxworks.adb, | |
19343 | g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi-vms.ads, | |
19344 | g-socthi-vms.adb: Move signalling | |
19345 | fd management to a nested package, so that they can conveniently be | |
19346 | moved to a subunit that is shared across Windows, VMS, and VxWorks | |
19347 | (Ada implementation) or completed with imported bodies from socket.c | |
19348 | (UNIX case). | |
19349 | (Read_Signalling_Fd, Write_Signalling_Fd, Create_Signalling_Fds): New | |
19350 | subprograms. | |
19351 | (Check_Selector): Use Read_Signalling_Fd to read and discard data from | |
19352 | the signalling file descriptor. | |
19353 | (Abort_Selector): Use Write_Signalling_Fd to write dummy data to the | |
19354 | signalling file descriptor. | |
19355 | (Create_Selector): Use new C-imported subprogram Create_Signalling_Fds | |
19356 | instead of creating a pair of sockets for signalling here. | |
19357 | ||
19358 | * g-socthi.adb: Ditto. | |
19359 | Set the runtime process to ignore SIGPIPEs on platforms that support | |
19360 | neither SO_NOSIGPIPE nor MSG_NOSIGNAL functionality. | |
19361 | ||
19362 | * g-socthi-mingw.adb: Ditto. | |
19363 | (WS_Version): Use Windows 2.2. | |
19364 | Use Winsock 2.2 (instead of 1.1) for the GNAT.Socket API. | |
19365 | ||
19366 | * g-soliop-mingw.ads: Link with ws2_32 for Windows 2.x support. | |
19367 | Use Winsock 2.2 (instead of 1.1) for the GNAT.Socket API. | |
19368 | ||
19369 | * Makefile.in: New libgnat pair g-stsifd.adb<g-stsifd-sockets.adb. | |
19370 | added GNAT byte swapping facility | |
19371 | Update FreeBSD THREADSLIB from -lc_r to -lpthread, for FreeBSD 6. | |
19372 | ||
19373 | * g-bytswa.adb, g-bytswa-x86.adb, g-bytswa.ads: New files. | |
19374 | ||
19375 | * socket.c (__gnat_read_signalling_fd, __gnat_write_controlling_fd): | |
19376 | New subprograms. | |
19377 | (__gnat_create_signalling_fds): New subprogram. | |
19378 | Set the runtime process to ignore SIGPIPEs on platforms that support | |
19379 | neither SO_NOSIGPIPE nor MSG_NOSIGNAL functionality. | |
19380 | ||
19381 | 2007-04-06 Hristian Kirtchev <kirtchev@adacore.com> | |
19382 | Vincent Celier <celier@adacore.com> | |
19383 | ||
19384 | * a-calend-vms.ads, a-calend.ads, a-calend.adb, a-calend-vms.adb: | |
19385 | New version of Ada.Calendar which supports the new upper bound of Ada | |
19386 | time (2399-12-31 86_399.999999999). | |
19387 | The following modifications have been made to the package: | |
19388 | - New representation of time as count of nanoseconds since the start of | |
19389 | Ada time (1901-1-1 0.0). | |
19390 | - Target independent Split and Time_Of routines which service both | |
19391 | Ada 95 and Ada 2005 code. | |
19392 | - Target independent interface to the Ada 2005 children of Calendar. | |
19393 | - Integrated leap seconds into Ada 95 and Ada 2005 mode. | |
19394 | - Handling of non-leap centenial years. | |
19395 | - Updated clock function. | |
19396 | - Updated arithmetic and comparison operators. | |
19397 | ||
19398 | * a-caldel.adb (To_Duration): Add call to target independent routine in | |
19399 | Ada.Calendar to handle the conversion of time to duration. | |
19400 | ||
19401 | * sysdep.c (__gnat_localtime_tzoff): Test timezone before setting off | |
19402 | (UTC Offset). | |
19403 | If timezone is obviously incorrect (outside of -14 hours .. 14 hours), | |
19404 | set off to 0. | |
19405 | (__gnat_localtime_tzoff for Lynx and VxWorks): Even though these | |
19406 | targets do not have a natural time zone, GMT is used as a default. | |
19407 | (__gnat_get_task_options): New. | |
19408 | ||
19409 | * a-direct.adb (Modification_Time): Add with and use clauses for | |
19410 | Ada.Calendar and Ada. | |
19411 | Calendar.Formatting. Remove with clause for Ada.Unchecked_Conversion | |
19412 | since it is no longer needed. | |
19413 | (Duration_To_Time): Removed. | |
19414 | (OS_Time_To_Long_Integer): Removed. | |
19415 | (Modification_Time): Rewritten to use Ada.Calendar and Ada.Calendar. | |
19416 | Formatting Time_Of routines which automatically handle time zones, | |
19417 | buffer periods and leap seconds. | |
19418 | ||
19419 | * a-calari.ads, a-calari.adb ("+", "-", Difference): Add calls to | |
19420 | target independent routines in Ada.Calendar. | |
19421 | ||
9e81dbc7 | 19422 | * a-calfor.ads, a-calfor.adb: |
4b437c6b AC |
19423 | Code cleanup and addition of validity checks in various routines. |
19424 | (Day_Of_Week, Split, Time_Of): Add call to target independent routine in | |
19425 | Ada.Calendar. | |
19426 | ||
19427 | * a-catizo.ads, a-catizo.adb (UTC_Time_Offset): Add call to target | |
19428 | independent routine in Ada.Calendar. | |
19429 | ||
19430 | 2007-04-06 Olivier Hainque <hainque@adacore.com> | |
19431 | ||
9e81dbc7 | 19432 | * adaint.c: |
4b437c6b AC |
19433 | (convert_addresses): Adjust prototype and dummy definition to expect an |
19434 | extra file_name argument. | |
19435 | ||
19436 | * gmem.c (__gnat_convert_addresses): Wrapper to convert_addresses, | |
19437 | filling the now expected file_name argument with the appropriate | |
19438 | argv[0] expansion. | |
19439 | (__gnat_gmem_a2l_initialize, __gnat_gmem_read_next_frame): Use it. | |
19440 | (tracebk): Array of void * instead of char *, corresponding to what | |
19441 | convert_addresses expects. | |
19442 | (exename): New static global, to hold the executable file name to be | |
19443 | used in all convert_addresses invocations. | |
19444 | (gmem_read_backtrace, __gnat_gmem_symbolic): Account for tracebk type | |
19445 | change. | |
19446 | (__gnat_gmem_a2l_initialize): Resolve exename. | |
19447 | (__gnat_convert_addresses): Use exename as the convert_addresses | |
19448 | file_name argument. | |
19449 | ||
19450 | * g-trasym.adb (Symbolic_Traceback): Adjust signature of imported | |
19451 | "convert_addresses", now expecting a filename argument. Import the | |
19452 | necessary entities to compute the filename to use and pass it to | |
19453 | convert_addresses. | |
19454 | ||
19455 | 2007-04-06 Matt Gingell <gingell@adacore.com> | |
19456 | ||
19457 | * system-aix.ads: Back out previous change. | |
19458 | (Functions_Return_By_DSP): Removed | |
19459 | ||
19460 | 2007-04-06 Pascal Obry <obry@adacore.com> | |
19461 | ||
19462 | * s-osprim-mingw.adb (Timed_Delay): Use the right clock (standard one | |
19463 | or the monotonic used by Ada.Real_Time) to compute the sleep duration | |
19464 | on Windows. | |
19465 | ||
19466 | 2007-04-06 Jose Ruiz <ruiz@adacore.com> | |
19467 | ||
19468 | * s-osinte-vxworks.ads, s-osinte-vxworks.adb (VX_FP_TASK): Remove this | |
19469 | function. Its value changes in different VxWorks versions, and it is | |
19470 | now handled by the function __gnat_get_task_options. | |
19471 | ||
19472 | * s-taprop-vxworks.adb (Create_Task): Call the function | |
19473 | __gnat_get_task_options to get the required options for creating a task. | |
19474 | ||
19475 | 2007-04-06 Pascal Obry <obry@adacore.com> | |
19476 | Thomas Quinot <quinot@adacore.com> | |
19477 | ||
19478 | * adaint.c: Replace all occurences of S2WS to S2WSU (Unicode) when | |
19479 | dealing with filename. | |
19480 | (__gnat_fopen): Call the proper macro (8bits or UTF8) to convert the | |
19481 | filename from a standard string to a wide-string depending on the | |
19482 | encoding value. | |
19483 | (__gnat_freopen): Idem. | |
19484 | (__gnat_current_time): New function (wrapper for time(3) standard C | |
19485 | function). | |
19486 | ||
19487 | * g-os_lib.ads (Current_Time): New function. Returns the current | |
19488 | system time as an OS_Time value. | |
19489 | ||
19490 | * s-osprim.ads (Clock): Add more precise definition of UNIX epoch. | |
19491 | (Monotonic_Clock): Same. | |
19492 | ||
19493 | 2007-04-06 Quentin Ochem <ochem@adacore.com> | |
19494 | ||
19495 | * ali.ads, ali.adb (Get_Nat): Raise an exception if the file cursor is | |
19496 | not on a natural. | |
19497 | (Scan_ALI): Cancel the xref line if there has been a reading ALI error. | |
19498 | ||
19499 | 2007-04-06 Jose Ruiz <ruiz@adacore.com> | |
19500 | ||
19501 | * a-retide.adb: Add elaboration code to ensure that the tasking run | |
19502 | time is initialized when using delay operations even when no task is | |
19503 | created. | |
19504 | ||
19505 | 2007-04-06 Javier Miranda <miranda@adacore.com> | |
19506 | ||
19507 | * a-tags.ads, a-tags.adb (Object_Specific_Data): Remove | |
19508 | component Num_Prim_Ops. | |
19509 | (Set_Num_Prim_Ops): Removed. | |
19510 | Remove all the assertions because all the routines of this | |
19511 | package are inline always. | |
19512 | (Get_Offset_Index): Add support to primary dispatch tables. | |
19513 | Move the documentation about the dispatch table to a-tags.ads | |
19514 | (Set_External_Tag): Removed | |
19515 | (Inherit_TSD): Removed. | |
19516 | (Interface_Data_Element, Interfaces_Array, Interface_Data): Declarations | |
19517 | moved to a-tags.ads | |
19518 | (Displace, IW_Membership, Inherit_TSD, Interface_Ancestor_Tags, | |
19519 | Register_Interface_Tag, Set_Offset_To_Top): Update all the occurrences | |
19520 | of the TSD field "Table" because this field has been renamed to | |
19521 | "Ifaces_Table". | |
19522 | (Inherit_CPP_DT): Removed. | |
19523 | (K_Typeinfo, K_Offset_To_Top, K_Tagged_Kind, K_Signature, | |
19524 | Cstring, Tag_Table, Type_Specific_Data, Dispatch_Table): These | |
19525 | declarations have been moved to a-tags.ads | |
19526 | (Check_Size): Removed. | |
19527 | (Expanded_Name): Updated to get access to the new field of TSD | |
19528 | containing the address of the expanded name. | |
19529 | (Get_Access_Level/Set_Access_Level): Removed. | |
19530 | (Get_Predefined_Prim_Op_Address): Removed. | |
19531 | (Set_Predefined_Prim_Op_Address): Removed. | |
19532 | (Get_Prim_Op_Address/Set_Prim_Op_Address): Removed. | |
19533 | (Get_Remotely_Callable/Set_Remotely_Callable): Removed. | |
19534 | (Set_Expanded_Name): Removed. | |
19535 | (Inherit_DT): Removed. | |
19536 | (Inherit_CPP_DT): Removed. | |
19537 | (Set_RC_Offset): Removed. | |
19538 | (Set_TSD): Removed. | |
19539 | (Base_Address): New function that displaces "this" to point to the base | |
19540 | of the object (that is, to point to the primary tag of the object). | |
19541 | ||
19542 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
19543 | Javier Miranda <miranda@adacore.com> | |
19544 | ||
19545 | * exp_ch3.ads, exp_ch3.adb (Analyze_N_Full_Type_Declaration): For an | |
19546 | anonymous access component, do not create a master_id if type already | |
19547 | has one, as may happen if the type is a subcomponent of a packed array | |
19548 | type. | |
19549 | (Build_Init_Procedure, Component_Needs_Simple_Initialization, | |
19550 | Initialize_Tag): Remove code associated with the old CPP pragmas. | |
19551 | CPP_Virtual and CPP_Vtable are no longer supported. | |
19552 | (Build_Offset_To_Top_Internal): Add support for concurrent record types | |
19553 | (Build_Offset_To_Top_Functions): Add support for concurrent record types | |
19554 | (Freeze_Record_Type): Remove call to | |
19555 | Init_Predefined_Interface_Primitives. | |
19556 | (Init_Secondary_Tags.Initialize_Tag): New subprogram containing all the | |
19557 | code required to initialize the tags of the secondary dispatch tables. | |
19558 | This leaves the algoritm more clear. | |
19559 | (Init_Secondary_Tags): Add support for concurrent record types | |
19560 | (Make_Predefined_Primitive_Specs): Code cleanup. | |
19561 | (Predefined_Primitive_Bodies): Code cleanup. | |
19562 | (Build_Master_Renaming): New local subprogram. | |
19563 | (Expand_N_Full_Type_Declaration): Build the master_id associated with | |
19564 | anonymous access to task type components. | |
19565 | (Expand_N_Subtype_Indication): The bounds of a range constraint in a | |
19566 | subtype indication are resolved during analysis, and must not be done | |
19567 | here. | |
19568 | (Stream_Operation_OK): Check Restriction_Active before RTE_Available. | |
19569 | ||
19570 | 2007-04-06 Geert Bosch <bosch@adacore.com> | |
19571 | Ed Schonberg <schonberg@adacore.com> | |
19572 | Javier Miranda <miranda@adacore.com> | |
19573 | Bob Duff <duff@adacore.com> | |
19574 | ||
19575 | * exp_ch4.adb (Expand_N_Type_Conversion): Remove special processing | |
19576 | for conversion of a Float_Type'Truncation to integer. | |
19577 | ||
19578 | * exp_attr.adb (Is_Inline_Floating_Point_Attribute): New function to | |
19579 | check if a node is an attribute that can be handled directly by the | |
19580 | back end. | |
19581 | (Expand_N_Attribute_Reference): Suppress expansion of floating-point | |
19582 | attributes that can be handled directly by the back end. | |
19583 | (Expand_N_Attribute_Reference, case 'Access and 'Unchecked_Access): | |
19584 | use new predicate Is_Access_Protected_Subprogram_Type. | |
19585 | (Expand_N_Attribute_Reference, case 'Write): The reference is legal for | |
19586 | and Unchecked_Union if it is generated as part of the default Output | |
19587 | procedure for a type with default discriminants. | |
19588 | (Expand_N_Attribute_Reference): Avoid the expansion of dispatching calls | |
19589 | if we are compiling under restriction No_Dispatching_Calls. | |
19590 | (Constrained): Use Underlying_Type, in case the type is private without | |
19591 | discriminants, but the full type has discriminants. | |
19592 | (Expand_N_Attribute_Reference): Replace call to Get_Access_Level by | |
19593 | call to Build_Get_Access_Level. | |
19594 | (Expand_N_Attribute_Reference): The use of 'Address with class-wide | |
19595 | interface objects requires a call to the run-time subprogram that | |
19596 | returns the base address of the object. | |
19597 | (Valid_Conversion): Improve error message on illegal attempt to store | |
19598 | an anonymous access to subprogram value into a record component. | |
19599 | ||
19600 | * sem_res.adb (Resolve_Equality_Op): Detect ambiguity for "X'Access = | |
19601 | null". | |
19602 | (Simplify_Type_Conversion): New procedure that performs simplification | |
19603 | of Int_Type (Float_Type'Truncation (X)). | |
19604 | (Resolve_Type_Conversion): Call above procedure after resolving operand | |
19605 | and before performing checks. This replaces the existing ineffective | |
19606 | code in Exp_Ch4. | |
19607 | (Set_String_Literal_Subtype): When creating the internal static lower | |
19608 | bound subtype for a string literal, use a newly created copy of the | |
19609 | subtree representing the lower bound. | |
19610 | (Resolve_Call): Exclude build-in-place function calls from transient | |
19611 | scope treatment. Update comments to describe this exception. | |
19612 | (Resolve_Equality_Op): In case of dispatching call check violation of | |
19613 | restriction No_Dispatching_Calls. | |
19614 | (Resolve_Call): If the call returns an array, the context imposes the | |
19615 | component type of the array, and the function has one non-defaulted | |
19616 | parameter, rewrite the call as the indexing of a call with a single | |
19617 | parameter, to handle an Ada 2005 syntactic ambiguity for calls written | |
19618 | in prefix form. | |
19619 | (Resolve_Actuals): If an actual is an allocator for an access parameter, | |
19620 | the master of the created object is the innermost enclosing statement. | |
19621 | (Remove_Conversions): For a binary operator, check if type of second | |
19622 | formal is numeric, to check if an abstract interpretation is present | |
19623 | in the case of exponentiation as well. | |
19624 | ||
19625 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
19626 | Bob Duff <duff@adacore.com> | |
19627 | ||
19628 | * atree.h, atree.ads, atree.adb (Copy_Node_With_Replacement): When | |
19629 | copying a parameter list in a call, set properly the First_Named_Formal | |
19630 | and Next_Named_Formal fields in the new list and in the enclosing call. | |
19631 | (Watch_Node,New_Node_Breakpoint,New_Node_Debugging_Output): Shorten | |
19632 | names, to ease typing in the debugger. Improve comments. | |
19633 | (Watch_Node): New variable, intended to be set in the debugger. | |
19634 | (New_Node_Breakpoint): New do-nothing procedure to set a breakpoint on, | |
19635 | called when the watched node is created. | |
19636 | (New_Node_Debugging_Output): Combined version of local procedures | |
19637 | New_Node_Debugging_Output and New_Entity_Debugging_Output, now global, | |
19638 | with a parameter so that conditional breakpoints like "if Node = 12345" | |
19639 | work. | |
19640 | (New_Node, New_Entity): Call the global New_Node_Debugging_Output. | |
19641 | Add Elist1 function | |
19642 | ||
19643 | 2007-04-06 Thomas Quinot <quinot@adacore.com> | |
19644 | Ed Schonberg <schonberg@adacore.com> | |
19645 | Gary Dismukes <dismukes@adacore.com> | |
19646 | ||
19647 | * checks.ads, checks.adb (Selected_Range_Checks): No range check is | |
19648 | required for a conversion between two access-to-unconstrained-array | |
19649 | types. | |
19650 | (Expr_Known_Valid): Validity checks do not apply to discriminants, but | |
19651 | to discriminant constraints on discriminant objects. This rule must | |
19652 | apply as well to discriminants of protected types in private components. | |
19653 | (Null_Exclusion_Static_Checks): If No_Initialization is set on an | |
19654 | object of a null-excluding access type then don't require the | |
19655 | the object declaration to have an expression and don't emit a | |
19656 | run-time check. | |
19657 | ||
19658 | 2007-04-06 Arnaud Charlet <charlet@adacore.com> | |
9e94c78f | 19659 | Eric Botcazou <botcazou@adacore.com> |
4b437c6b AC |
19660 | |
19661 | * gnatvsn.ads, comperr.adb (Get_Gnat_build_Type): Renamed Build_Type | |
19662 | and made constant. | |
19663 | ||
19664 | * comperr.ads, comperr.adb (Compiler_Abort): Add third parameter | |
19665 | Fallback_Loc. Use it as the sloc info when Current_Error_Node doesn't | |
19666 | carry any. | |
19667 | ||
19668 | * fe.h (Compiler_Abort): Add third parameter. | |
19669 | ||
19670 | * misc.c (internal_error_function): Build third argument from current | |
19671 | input location and pass it to Compiler_Abort. | |
19672 | ||
19673 | 2007-04-06 Gary Dismukes <dismukes@adacore.com> | |
19674 | ||
19675 | * cstand.adb (Create_Standard): When the target's storage unit size is | |
19676 | greater than a byte, set Has_Non_Standard_Rep and Has_Pragma_Pack on | |
19677 | Standard_String. | |
19678 | ||
19679 | 2007-04-06 Nicolas Roche <roche@adacore.com> | |
19680 | ||
19681 | * cstreams.c (__gnat_full_name): Fix issues on VxWorks 6.x for which | |
19682 | absolute path can have the following form: device:/a/b. In this case | |
19683 | '/' should be inserted between the path and the filename. | |
19684 | ||
19685 | 2007-04-06 Olivier Hainque <hainque@adacore.com> | |
9e94c78f | 19686 | Eric Botcazou <botcazou@adacore.com> |
4b437c6b AC |
19687 | |
19688 | * decl.c (gnat_to_gnu_entity) <E_Constant>: Associate an external | |
19689 | VAR_DECL to a CONST_DECL we make for a public constant when we know the | |
19690 | corresponding definition has created the so made visible variable. | |
19691 | Handle anonymous access to protected subprogram. | |
19692 | (gnat_to_gnu_entity) <E_Variable>: Do not make the underlying type of an | |
19693 | object with an address clause volatile. Re-enable original fix. | |
19694 | <E_Subprogram_Type>: Set TYPE_REF_CAN_ALIAS_ALL on the reference type | |
19695 | too. | |
19696 | (gnat_to_gnu_entity) <E_Class_Wide_Type>: Retrieve the TYPE_DECL | |
19697 | associated with either the Equivalent or Root type, instead of the | |
19698 | naked type node. | |
19699 | (gnat_to_gnu_entity): Manually mark the top of the DECL_FIELD_OFFSET | |
19700 | subtree for every field of a global record type. | |
19701 | (gnat_to_gnu_entity) <E_Record_Subtype>: If the subtype has | |
19702 | discriminants, invoke again variable_size on its newly computed sizes. | |
19703 | ||
19704 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
19705 | Thomas Quinot <quinot@adacore.com> | |
19706 | Ed Schonberg <schonberg@adacore.com> | |
19707 | Bob Duff <duff@adacore.com> | |
19708 | ||
19709 | * einfo.ads, einfo.adb: (First_Component_Or_Discriminant): New function | |
19710 | (Next_Component_Or_Discriminant): New function and procedure | |
19711 | (First_Index, First_Literal, Master_Id, | |
19712 | Set_First_Index, Set_First_Literal, Set_Master_Id): | |
19713 | Add missing Ekind assertions. | |
19714 | (Is_Access_Protected_Subprogram_Type): New predicate. | |
19715 | (Has_RACW): New entity flag, set on package entities to indicate that | |
19716 | the package contains the declaration of a remote accecss-to-classwide | |
19717 | type. | |
19718 | (E_Return_Statement): This node type has the Finalization_Chain_Entity | |
19719 | attribute, in case the result type has controlled parts. | |
19720 | (Requires_Overriding): Add this new flag, because "requires | |
19721 | overriding" is subtly different from "is abstract" (see AI-228). | |
19722 | (Is_Abstract): Split Is_Abstract flag into Is_Abstract_Subprogram and | |
19723 | Is_Abstract_Type. Make sure these are called only when appropriate. | |
19724 | (Has_Pragma_Unreferenced_Objects): New flag | |
19725 | ||
19726 | * exp_ch5.adb (Expand_N_Assignment_Statement): If the left-hand side is | |
19727 | class-wide, the tag of the right-hand side must be an exact match, not | |
19728 | an ancestor of that of the object on left-hand side. | |
19729 | (Move_Activation_Chain): New procedure to create the call to | |
19730 | System.Tasking.Stages.Move_Activation_Chain. | |
19731 | (Expand_N_Extended_Return_Statement): Generate code to call | |
19732 | System.Finalization_Implementation.Move_Final_List at the end of a | |
19733 | return statement if the function's result type has controlled parts. | |
19734 | Move asserts to Build_In_Place_Formal. | |
19735 | (Move_Final_List): New function to create the call statement. | |
19736 | (Expand_N_Assignment_Statement): In case of assignment to a class-wide | |
19737 | tagged type, replace generation of call to the run-time subprogram | |
19738 | CW_Membership by call to Build_CW_Membership. | |
19739 | (Expand_N_Return_Statement): Replace generation of call to the run-time | |
19740 | subprogram Get_Access_Level by call to Build_Get_Access_Level. | |
19741 | (Expand_N_Simple_Function_Return): Replace generation of call to the | |
19742 | run-time subprogram Get_Access_Level by call to Build_Get_Access_Level. | |
19743 | ||
19744 | * exp_ch6.ads, exp_ch6.adb (Expand_Call): Use new predicate | |
19745 | Is_Access_Protected_Subprogram_Type, to handle both named and anonymous | |
19746 | access to protected operations. | |
19747 | (Add_Task_Actuals_To_Build_In_Place_Call): New procedure to add the | |
19748 | master and chain actual parameters to a build-in-place function call | |
19749 | involving tasks. | |
19750 | (BIP_Formal_Suffix): Add new enumeration literals to complete the case | |
19751 | statement. | |
19752 | (Make_Build_In_Place_Call_In_Allocator, | |
19753 | Make_Build_In_Place_Call_In_Anonymous_Context, | |
19754 | Make_Build_In_Place_Call_In_Assignment, | |
19755 | Make_Build_In_Place_Call_In_Object_Declaration): Call | |
19756 | Add_Task_Actuals_To_Build_In_Place_Call with the appropriate master. | |
19757 | (Expand_Inlined_Call): If the subprogram is a null procedure, or a | |
19758 | stubbed procedure with a null body, replace the call with a null | |
19759 | statement without using the full inlining machinery, for efficiency | |
19760 | and to avoid invalid values in source file table entries. | |
19761 | ||
19762 | * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Add support for | |
19763 | renamings of calls to build-in-place functions. | |
19764 | ||
19765 | * rtsfind.adb (RTE_Record_Component_Available): New subprogram that | |
19766 | provides the functionality of RTE_Available to record components. | |
19767 | (RTU_Entity): The function Entity has been renamed to RTU_Entity | |
19768 | to avoid undesired overloading. | |
19769 | (Entity): New subprogram that returns the entity for the referened | |
19770 | unit. If this unit has not been loaded, it returns Empty. | |
19771 | (RE_Activation_Chain_Access, RE_Move_Activation_Chain): New entities. | |
19772 | Remove no longer used entities. | |
19773 | (RE_Finalizable_Ptr_Ptr, RE_Move_Final_List): New entities. | |
19774 | (RE_Type_Specific_Data): New entity. | |
19775 | (RE_Move_Any_Value): New entity. | |
19776 | (RE_TA_A, RE_Get_Any_Type): New entities. | |
19777 | (RE_Access_Level, RE_Dispatch_Table, E_Default_Prim_Op_Count, | |
19778 | RE_Prims_Ptr, RE_RC_Offset, RE_Remotely_Callable, | |
19779 | RE_DT_Typeinfo_Ptr_Size, RE_Cstring_Ptr, RE_DT_Expanded_Name): Added. | |
19780 | (Entity): New subprogram that returns the entity for the referened | |
19781 | unit. If this unit has not been loaded, it returns Empty. | |
19782 | (RTE): Addition of a new formal that extends the search to the scopes | |
19783 | of the record types found in the chain of the package. | |
19784 | ||
19785 | * sem_ch6.ads, sem_ch6.adb (Check_Overriding_Indicator): Print | |
19786 | "abstract subprograms must be visible" message, whether or not the type | |
19787 | is an interface; that is, remove the special case for interface types. | |
19788 | (Analyze_Function_Return): Remove error message "return of task objects | |
19789 | is not yet implemented" because this is now implemented. | |
19790 | (Create_Extra_Formals): Add the extra master and activation chain | |
19791 | formals in case the result type has tasks. | |
19792 | Remove error message "return of limited controlled objects is not yet | |
19793 | implemented". | |
19794 | (Create_Extra_Formals): Add the extra caller's finalization list formal | |
19795 | in case the result type has controlled parts. | |
19796 | (Process_Formals): In case of access formal types there is no need | |
19797 | to continue with the analysis of the formals if we already notified | |
19798 | errors. | |
19799 | (Check_Overriding_Indicator): Add code to check overriding of predefined | |
19800 | operators. | |
19801 | (Create_Extra_Formals): Prevent creation of useless Extra_Constrained | |
19802 | flags for formals that do not require them,. | |
19803 | (Enter_Overloaded_Entity): Do not give -gnatwh warning message unless | |
19804 | hidden entity is use visible or directly visible. | |
19805 | (Analyze_Abstract_Subprogram_Declaration,Analyze_Subprogram_Body, | |
19806 | Analyze_Subprogram_Declaration,Analyze_Subprogram_Specification, | |
19807 | Check_Conventions,Check_Delayed_Subprogram,Make_Inequality_Operator, | |
19808 | New_Overloaded_Entity): Split Is_Abstract flag into | |
19809 | Is_Abstract_Subprogram and Is_Abstract_Type. | |
19810 | ||
19811 | * s-finimp.ads, s-finimp.adb (Move_Final_List): New procedure to move | |
19812 | a return statement's finalization list to the caller's list, used for | |
19813 | build-in-place functions with result type with controlled parts. | |
19814 | Remove no longer used entities. | |
19815 | ||
19816 | * s-taskin.ads (Activation_Chain): Remove pragma Volatile. It is no | |
19817 | longer needed, because the full type is now limited, and therefore a | |
19818 | pass-by-reference type. | |
19819 | (Foreign_Task_Level): New constant. | |
19820 | ||
19821 | * s-tassta.ads, s-tassta.adb (Move_Activation_Chain): New procedure to | |
19822 | move tasks from the activation chain belonging to a return statement to | |
19823 | the one passed in by the caller, and update the master to the one | |
19824 | passed in by the caller. | |
19825 | (Vulnerable_Complete_Master, Check_Unactivated_Tasks): Check the master | |
19826 | of unactivated tasks, so we don't kill the ones that are being returned | |
19827 | by a build-in-place function. | |
19828 | (Create_Task): Ignore AI-280 for foreign threads. | |
19829 | ||
19830 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
19831 | Robert Dewar <dewar@adacore.com> | |
19832 | Bob Duff <duff@adacore.com> | |
19833 | Gary Dismukes <dismukes@adacore.com> | |
19834 | ||
19835 | * errout.adb (Unwind_Internal_Type): Use predicate | |
19836 | Is_Access__Protected_Subprogram_Type. | |
19837 | ||
19838 | * freeze.adb (Size_Known): Use First/Next_Component_Or_Discriminant | |
19839 | (Freeze_Entity, packed array case): Do not override explicitly set | |
19840 | alignment and size clauses. | |
19841 | (Freeze_Entity): An entity declared in an outer scope can be frozen if | |
19842 | the enclosing subprogram is a child unit body that acts as a spec. | |
19843 | (Freeze_Entity): Use new predicate Is_Access_Protected_Subprogram_Type. | |
19844 | (Freeze_Record_Type): New Ada 2005 processing for reverse bit order | |
19845 | Remove all code for DSP option | |
19846 | ||
19847 | * layout.adb (Layout_Record_Type): Use First/ | |
19848 | Next_Component_Or_Discriminant | |
19849 | (Layout_Type): Use new predicate Is_Access_Protected_Subprogram_Type, | |
19850 | to handle properly the anonymous access case. | |
19851 | ||
19852 | * sem_attr.adb (Build_Access_Object_Type): Use E_Access_Attribute_Type | |
19853 | for all access attributes, because overload resolution should work the | |
19854 | same for 'Access, 'Unchecked_Access, and 'Unrestricted_Access. This | |
19855 | causes the error message for the ambiguous "X'Access = Y'Access" and | |
19856 | "X'Unrestricted_Access = Y'Access" and so forth to match. | |
19857 | (Resolve_Attribute, case 'Access): Remove use of Original_Access_Type, | |
19858 | now that anonymous access to protected operations have their own kind. | |
19859 | (Resolve_Attribute): In case of dispatching call check the violation of | |
19860 | restriction No_Dispatching_Calls. | |
19861 | (Check_Array_Type): Check new -gnatyA array index style option | |
19862 | ||
19863 | * sem_ch3.ads, sem_ch3.adb (Derived_Type_Declaration): Reject an | |
19864 | attempt to derive from a synchronized tagged type. | |
19865 | (Analyze_Type_Declaration): If there is a incomplete tagged view of the | |
19866 | type, inherit the class-wide type already created, because it may | |
19867 | already have been used in a self-referential anonymous access component. | |
19868 | (Mentions_T): Recognize self-referential anonymous access components | |
19869 | that use (a subtype of) the class-wide type of the enclosing type. | |
19870 | (Build_Derived_Record_Type): Add earlier setting of Is_Tagged_Type. Pass | |
19871 | Derived_Type for Prev formal on call to | |
19872 | Check_Anonymous_Access_Components rather than Empty. | |
19873 | (Make_Incomplete_Type_Declaration): Add test for case where the type has | |
19874 | a record extension in deciding whether to create a class-wide type, | |
19875 | rather than just checking Tagged_Present. | |
19876 | (Replace_Anonymous_Access_To_Protected_Subprogram): Procedure applies | |
19877 | to stand-alone object declarations as well as component declarations. | |
19878 | (Array_Type_Declaration): Initialize Packed_Array_Type to Empty, to | |
19879 | prevent accidental overwriting when enclosing package appears in | |
19880 | a limited_with_clause. | |
19881 | (Array_Type_Declaration): If the component type is an anonymous access, | |
19882 | the associated_node for the itype is the type declaration itself. | |
19883 | (Add_Interface_Tag_Components): Modified to support concurrent | |
19884 | types with abstract interfaces. | |
19885 | (Check_Abstract_Interfaces): New subprogram that verifies the ARM | |
19886 | rules 3.9.4 (15/2), 9.1 (9.d/2) and 9.4 (11.d/2). | |
19887 | (Build_Derived_Record_Type): Add call to Analyze_Interface_Declaration | |
19888 | to complete the decoration of synchronized interface types. Add also | |
19889 | a call to Check_Abstract_Interfaces to verify the ARM rules. | |
19890 | (Derive_Interface_Subprograms): Modified to support concurrent types | |
19891 | with abstract interfaces. | |
19892 | (Analyze_Subtype_Indication): Resolve the range with the given subtype | |
19893 | mark, rather than delaying the full resolution depending on context. | |
19894 | (Analyze_Component_Declaration,Analyze_Interface_Declaration, | |
19895 | Analyze_Object_Declaration,Analyze_Subtype_Declaration, | |
19896 | Array_Type_Declaration,Build_Derived_Record_Type, | |
19897 | Build_Discriminated_Subtype,Check_Abstract_Overriding,Check_Completion, | |
19898 | Derive_Interface_Subprograms,Derive_Subprogram,Make_Class_Wide_Type, | |
19899 | Process_Full_View,Record_Type_Declaration): Split Is_Abstract flag into | |
19900 | Is_Abstract_Subprogram and Is_Abstract_Type. Make sure these are | |
19901 | called only when appropriate. | |
19902 | (Copy_And_Swap): Copy Has_Unreferenced_Objects flag from full type | |
19903 | to private type. | |
19904 | (Analyze_Subtype_Declaration): For an access subtype declaration, create | |
19905 | an itype reference for the anonymous designated subtype, to prevent | |
19906 | scope anonmalies in gigi. | |
19907 | (Build_Itype_Reference): New utility, to simplify construction of such | |
19908 | references. | |
19909 | ||
19910 | 2007-04-06 Vincent Celier <celier@adacore.com> | |
19911 | ||
19912 | * errutil.adb (Initialize): Initialize warnings table, if all warnings | |
19913 | are suppressed, supply an initial dummy entry covering all possible | |
19914 | source locations. | |
19915 | ||
19916 | * make.adb (Scan_Make_Arg): Reject options that should start with "--" | |
19917 | and start with only one, such as "-RTS=none". | |
19918 | (Collect_Arguments): Do not check for sources outside of projects. | |
19919 | Do not collect arguments if project is externally built. | |
19920 | (Compile_Sources): Do nothing, not even check if the source is up to | |
19921 | date, if its project is externally built. | |
19922 | (Compile): When compiling a predefined source, add -gnatpg | |
19923 | as the second switch, after -c. | |
19924 | (Compile_Sources): Allow compilation of Annex J renames without -a | |
19925 | (Is_In_Object_Directory): Check if the ALI file is in the object | |
19926 | even if there is no project extension. | |
19927 | (Create_Binder_Mapping_File): Only put a unit in the mapping file for | |
19928 | gnatbind if the ALI file effectively exists. | |
19929 | (Initialize): Add the directory where gnatmake is invoked in front of | |
19930 | the path if it is invoked from a bin directory, even without directory | |
19931 | information, so that the correct GNAT tools will be used when spawned | |
19932 | without directory information. | |
19933 | ||
19934 | * makeusg.adb: Change switch -S to -eS | |
19935 | Add lines for new switches -we, -wn and -ws | |
19936 | Add line for new switch -p | |
19937 | ||
19938 | * prj-proc.adb (Process): Set Success to False when Warning_Mode is | |
19939 | Treat_As_Error and there are warnings. | |
19940 | ||
19941 | * switch-m.ads, switch-m.adb (Normalize_Compiler_Switches): Do not skip | |
19942 | -gnatww Change gnatmake switch -S to -eS | |
19943 | (Scan_Make_Switches): Code reorganisation. Process separately multi | |
19944 | character switches and single character switches. | |
19945 | (Scan_Make_Switches): New Boolean out parameter Success. Set Success to | |
19946 | False when switch is not recognized by gnatmake. | |
19947 | (Scan_Make_Switches): Set Setup_Projects True when -p or | |
19948 | --create-missing-dirs is specified. | |
19949 | ||
19950 | * fname.adb (Is_Predefined_File_Name): Return True for annex J | |
19951 | renamings Calendar, Machine_Code, Unchecked_Conversion and | |
19952 | Unchecked_Deallocation only when Renamings_Included is True. | |
19953 | ||
19954 | * par.adb: Allow library units Calendar, Machine_Code, | |
19955 | Unchecked_Conversion and Unchecked_Deallocation to be recompiled even | |
19956 | when -gnatg is not specified. | |
19957 | (P_Interface_Type_Definition): Remove the formal Is_Synchronized because | |
19958 | there is no need to generate always a record_definition_node in case | |
19959 | of synchronized interface types. | |
19960 | (SIS_Entry_Active): Initialize global variable to False | |
19961 | (P_Null_Exclusion): For AI-447: Add parameter Allow_Anonymous_In_95 to | |
19962 | indicate cases where AI-447 says "not null" is legal. | |
19963 | ||
19964 | * makeutl.ads, makeutil.adb (Executable_Prefix_Path): New function | |
19965 | ||
19966 | * makegpr.adb (Check_Compilation_Needed): Take into account dependency | |
19967 | files with with several lines starting with the object fileb name. | |
19968 | (Scan_Arg): Set Setup_Projects True when -p or --create-missing-dirs | |
19969 | is specified. | |
19970 | (Initialize): Add the directory where gprmake is invoked in front of the | |
19971 | path, if it is invoked from a bin directory or with directory | |
19972 | information, so that the correct GNAT tools will be used when invoked | |
19973 | directly. | |
19974 | (Check_Compilation_Needed): Process correctly backslashes on Windows. | |
19975 | ||
19976 | * vms_data.ads: Update switches/qualifiers | |
19977 | ||
19978 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
19979 | Thomas Quinot <quinot@adacore.com> | |
19980 | ||
19981 | * exp_aggr.adb: | |
19982 | If the array component is a discriminated record, the array aggregate | |
19983 | is non-static even if the component is given by an aggregate with | |
19984 | static components. | |
19985 | (Expand_Record_Aggregate): Use First/Next_Component_Or_Discriminant | |
19986 | (Convert_Aggr_In_Allocator): If the allocator is for an access | |
19987 | discriminant and the type is controlled. do not place on a finalization | |
19988 | list at this point. The proper list will be determined from the | |
19989 | enclosing object. | |
19990 | (Build_Record_Aggr_Code): If aggregate has box-initialized components, | |
19991 | initialize record controller if needed, before the components, to ensure | |
19992 | that they are properly finalized. | |
19993 | (Build_Record_Aggr_Code): For the case of an array component that has a | |
19994 | corresponding array aggregate in the record aggregate, perform sliding | |
19995 | if required. | |
19996 | ||
19997 | 2007-04-06 Javier Miranda <miranda@adacore.com> | |
19998 | Gary Dismukes <dismukes@adacore.com> | |
19999 | Ed Schonberg <schonberg@adacore.com> | |
20000 | ||
20001 | * exp_ch13.adb (Expand_External_Tag_Definition): Replace call to the | |
20002 | run-time subprogram Set_External_Tag by call to Build_Set_External_Tag. | |
20003 | ||
20004 | * exp_ch4.adb (Expand_Allocator_Expression): Don't perform a run-time | |
20005 | accessibility on class-wide allocators if the allocator occurs at the | |
20006 | same scope level as the allocator's type. The check is guaranteed to | |
20007 | succeed in that case, even when the expression originates from a | |
20008 | parameter of the containing subprogram. | |
20009 | (Expand_N_Op_Eq): Do nothing in case of dispatching call if compiling | |
20010 | under No_Dispatching_Calls restriction. During the semantic analysis | |
20011 | we already notified such violation. | |
20012 | (Tagged_Membership): Constant folding. There is no need to check | |
20013 | the tag at run-time if the type of the right operand is non | |
20014 | class-wide abstract. | |
20015 | Replace call to Is_Ancestor by call to Is_Parent | |
20016 | to support concurrent types with interface types. | |
20017 | (Expand_N_Allocator): Add an assertion associated with the generation | |
20018 | of the master_id. | |
20019 | (Expand_N_Slice): Do not enable range check to nodes associated | |
20020 | with the frontend expansion of the dispatch table. | |
20021 | (Is_Local_Access_Discriminant): Subsidiary function to | |
20022 | Expand_N_Allocator. | |
20023 | (Tagged_Membership): Replace generation of call to the run-time | |
20024 | subprogram CW_Membership by call to Build_CW_Membership. | |
20025 | (Expand_Allocator_Expression): Replace generation of call to the | |
20026 | run-time subprogram Get_Access_Level by call to Build_Get_Access_Level. | |
20027 | ||
20028 | * exp_disp.ads, exp_disp.adb (Make_DT): Code reorganization to | |
20029 | initialize most the TSD components by means of an aggregate. | |
20030 | Modify the declaration of the object containing the TSD | |
20031 | because we now expand code that has a higher level of abstraction. | |
20032 | The TSD has a discriminant containing the Inheritance Depth Level, | |
20033 | value that is used in the membership test but also to fix the size | |
20034 | of the table of ancestors. | |
20035 | (Expand_Interface_Conversion): Insert function body at the closest place | |
20036 | to the conversion expression, to prevent access-before-elaboration | |
20037 | errors in the backend. | |
20038 | Code improved to reduce the size of the dispatch table if | |
20039 | compiling under restriction No_Dispatching_Calls plus code cleanup. | |
20040 | Code reorganization plus removal of calls to Set_Num_Prim_Ops | |
20041 | (Make_Secondary_DT): Remove call to Set_Num_Prim_Ops. | |
20042 | (Expand_Dispatching_Call): Minor code reorganization plus addition of | |
20043 | code to return immediately if compiling under No_Dispatching_Calls | |
20044 | restriction. | |
20045 | (Set_All_DT_Position): Remove code associated with the old CPP pragmas. | |
20046 | CPP_Virtual and CPP_Vtable are no longer supported. | |
20047 | (Expand_Interface_Conversion): Add missing support for interface type | |
20048 | derivations. | |
20049 | (Expand_Interface_Actuals): Replace calls to Is_Ancestor by calls to | |
20050 | Is_Parent to support concurrent types with interfaces. | |
20051 | (Init_Predefined_Interface_Primitives): Removed. | |
20052 | (Make_Secondary_DT): Modified to support concurrent record types. | |
20053 | (Set_All_DT_Position): Modified to support concurrent record types. | |
20054 | (Ada_Actions, Action_Is_Proc, Action_Nb_Arg): Remove entries associated | |
20055 | with Get_External_Tag, Inherit_TSD, Set_External_Tag. | |
20056 | (Ada_Actions, Action_Is_Proc, Action_Nb_Arg): Remove entry associated | |
20057 | with CW_Membership. | |
20058 | (Ada_Actions, Action_Is_Proc, Action_Nb_Arg): Remove entries associated | |
20059 | with Get_Access_Level, Get_Predefined_Prim_Op_Address, | |
20060 | Get_Prim_Op_Address Get_RC_Offset, Get_Remotely_Callable, Inherit_DT, | |
20061 | Set_Access_Level, Set_Expanded_Name, Set_Predefined_Prim_Op_Address, | |
20062 | Set_Prim_Op_Address, Set_RC_Offset, Set_Remotely_Callable, Set_TSD. | |
20063 | (Expand_Dispatching_Call): Replace generation of call to the run-time | |
20064 | subprograms Get_Predefined_Prim_Op_Address and Get_Prim_Op_Address by | |
20065 | calls to Build_Get_Predefined_Prim_Op_Address, and Build_Get_Prim_Op_ | |
20066 | Address. | |
20067 | (Fill_DT_Entry, Fill_Secondary_DT_Entry): Replace generation of call to | |
20068 | the run-time subprograms Set_Predefined_Prim_Op_Address and Set_Prim_ | |
20069 | Op_Address by calls to Build_Set_Predefined_Prim_Op_Address, and | |
20070 | Build_Set_Prim_Op_Address. | |
20071 | (Get_Remotely_Callable): Subprogram removed. | |
20072 | (Init_Predefined_Interface_Primitives): Replace generation of call to | |
20073 | the run-time subprograms Inherit_DT by call to Build_Inherit_Predefined_ | |
20074 | Prims. | |
20075 | ||
20076 | * sem_elab.adb (Set_Elaboration_Constraint): Replace the call to | |
20077 | First (Parameter_Associations ()) with the call to First_Actual that | |
20078 | returns an actual parameter expression for both named and positional | |
20079 | associations. | |
20080 | ||
20081 | * sem_disp.adb (Check_Dispatching_Call): In case of dispatching call | |
20082 | check violation of restriction No_Dispatching_Calls. | |
20083 | (Check_Controlling_Type): A formal of a tagged incomplete type is a | |
20084 | controlling argument. | |
20085 | ||
20086 | * exp_util.ads, exp_util.adb (Type_May_Have_Bit_Aligned_Components): Use | |
20087 | First/Next_Component_Or_Discriminant | |
20088 | (Insert_Actions): Add entries for new N_Push and N_Pop nodes | |
20089 | (Find_Implemented_Interface): Removed. All the calls to this subprogram | |
20090 | specify Any_Limited_Interface, and this functionality is already | |
20091 | provided by the function Has_Abstract_Interfaces. | |
20092 | (Find_Interface, Find_Interface_Tag, Find_Interface_ADT): Modified to | |
20093 | support concurrent types implementing interfaces. | |
20094 | (Find_Implemented_Interface): Removed. All the calls to this subprogram | |
20095 | specify kind Any_Limited_Interface, and this functionality is already | |
20096 | provided by the function Has_Abstract_Interfaces. | |
20097 | (Remove_Side_Effects): replace Controlled_Type by | |
20098 | CW_Or_Controlled_Type whenever the issue is related to | |
20099 | using or not the secondary stack. | |
20100 | ||
20101 | * par-ch12.adb (P_Formal_Type_Definition): Update calls to | |
20102 | P_Interface_Type_Definition to fulfill the new interface (the formal | |
20103 | Is_Synchronized is no longer required). | |
20104 | ||
20105 | * Make-lang.in (GNAT_ADA_OBJS): Addition of exp_atag.o | |
20106 | Update dependencies. | |
20107 | ||
20108 | * exp_atag.ads, exp_atag.adb: New file | |
20109 | ||
20110 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20111 | Bob Duff <duff@adacore.com> | |
20112 | Cyrille Comar <comar@adacore.com> | |
20113 | ||
20114 | * exp_ch7.ads, exp_ch7.adb (Find_Final_List): If the access type is | |
20115 | anonymous, use finalization list of enclosing dynamic scope. | |
20116 | (Expand_N_Package_Declaration): For a library package declaration | |
20117 | without a corresponding body, generate RACW subprogram bodies in the | |
20118 | spec (just as we do for the task activation call). | |
20119 | (Convert_View): Split Is_Abstract flag into Is_Abstract_Subprogram and | |
20120 | Is_Abstract_Type. Make sure these are called only when appropriate. | |
20121 | Remove all code for DSP option | |
20122 | (CW_Or_Controlled_Type): new subprogram. | |
20123 | ||
9e94c78f | 20124 | 2007-04-06 Eric Botcazou <botcazou@adacore.com> |
4b437c6b AC |
20125 | Ed Schonberg <schonberg@adacore.com> |
20126 | Gary Dismukes <dismukes@adacore.com> | |
20127 | ||
20128 | * exp_ch9.ads, exp_ch9.adb (Family_Offset): Add new 'Cap' boolean | |
20129 | parameter. If it is set to true, return a result capped according to | |
20130 | the global upper bound for the index of an entry family. | |
20131 | (Family_Size): Add new 'Cap' boolean parameter. Pass it to Family_Offset | |
20132 | (Build_Find_Body_Index): Adjust for above change. | |
20133 | (Entry_Index_Expression): Likewise. | |
20134 | (Is_Potentially_Large_Family): New function extracted from... | |
20135 | (Collect_Entry_Families): ...here. Call it to detect whether the family | |
20136 | is potentially large. | |
20137 | (Build_Entry_Count_Expression): If the family is potentially large, call | |
20138 | Family_Size with 'Cap' set to true. | |
20139 | (Expand_N_Protected_Type_Declaration, Expand_N_Protected_Body): Generate | |
20140 | a protected version of an operation declared in the private part of | |
20141 | a protected object, because they may be invoked through a callback. | |
20142 | (Set_Privals): If the type of a private component is an anonymous access | |
20143 | type, do not create a new itype for each protected body. | |
20144 | If the body of a protected operation creates | |
20145 | controlled types (including allocators for class-widetypes), the | |
20146 | body of the corresponding protected subprogram must include a | |
20147 | finalization list. | |
20148 | (Build_Activation_Chain_Entity): Build the chain entity for extended | |
20149 | return statements. | |
20150 | (Type_Conformant_Parameters): Use common predicate Conforming_Types | |
20151 | to determine whether operation overrides an inherited primitive. | |
20152 | (Build_Wrapper_Spec): Add code to examine the parents while looking | |
20153 | for a possible overriding candidate. | |
20154 | (Build_Simple_Entry_Call): Set No_Initialization on the object used to | |
20155 | hold an actual parameter value since its initialization is separated | |
20156 | from the the declaration. Prevents errors on null-excluding access | |
20157 | formals. | |
20158 | ||
20159 | 2007-04-06 Thomas Quinot <quinot@adacore.com> | |
8a57e48f | 20160 | Pablo Oliveira <oliveira@adacore.com> |
4b437c6b AC |
20161 | |
20162 | * exp_dist.ads, exp_dist.adb (Build_To_Any_Call, Build_From_Any_Call): | |
20163 | Do an Unchecked_Conversion to handle the passage from the Underlying | |
20164 | Type to the Base Type when calling Build_To_Any_Call and | |
20165 | Build_From_Any_Call. | |
20166 | (Build_Actual_Object_Declaration): Set Object's Ekind to E_Variable or | |
20167 | E_Constant, depending upon Variable formal. | |
20168 | (GARLIC_Support.Build_Subprogram_Receiving_Stubs, | |
20169 | PolyORB_Support.Build_Subprogram_Receiving_Stubs): For a formal | |
20170 | parameter that requires an extra constrained parameter, declare | |
20171 | temporary for actual as a variable, not a constant. | |
20172 | (Add_RACW_Primitive_Declarations_And_Bodies): Generate bodies only when | |
20173 | the unit being compiled is the one that contains the stub type. | |
20174 | Change primitive operation name for the RACW associated with a RAS | |
20175 | from Call to _Call so it cannot clash with any legal identifier. | |
20176 | (PolyORB_Support.Add_RACW_Write_Attribute): Remove unused constant | |
20177 | Is_RAS. | |
20178 | (Append_RACW_Bodies): New subprogram. | |
20179 | (Expand_Receiving_Stubs_Bodies): Pass a 'Stmts' list to | |
20180 | Add_Receiving_Stubs_To_Declarations functions. | |
20181 | When expanding a package body, this list correspond to the | |
20182 | statements in the HSS at the end of the pacakge. | |
20183 | When expanding a package spec, this list correspond to the | |
20184 | spec declarations. | |
20185 | (Add_Receiving_Stubs_To_Declarations): Append the function | |
20186 | registering the receiving stubs at the end of the 'Stmts' list. | |
20187 | (RCI_Package_Locator): Pass the new Version generic formal when | |
20188 | instantiating a RCI_Locator package. | |
20189 | (Build_From_Any_Function): To compute the High bound for an | |
20190 | unconstrained array actual, we add the Low bound with the length. | |
20191 | Thus we must convert the low bound and the length to an appropriate | |
20192 | type before doing the sum. | |
20193 | (Build_Subprogram_Receiving_Stubs, PolyORB): | |
20194 | * Retrieve the extra formals parameters at the | |
20195 | end of the parameter stream. | |
20196 | * Use Move_Any_Value to write back out parameters | |
20197 | after executing the request as it is more efficient | |
20198 | than Copy_Any_Value. | |
20199 | * Build the any containing Extra Formals with the | |
20200 | appropriate typecode. | |
20201 | (PolyORB_Support.Helpers.Append_Record_Traversal): Nothing to do for an | |
20202 | empty Component_List. | |
20203 | (Build_Actual_Object_Declaration): New subprogram. Build and insert into | |
20204 | the tree the declaration for an object that serves as actual parameter | |
20205 | in server-side stubs. | |
20206 | (GARLIC_Support.Build_Subprogram_Receiving_Stubs, | |
20207 | PolyORB_Support.Build_Subprogram_Receiving_Stubs): | |
20208 | Use Build_Actual_Object_Declaration to prepare the actuals. | |
20209 | (Add_Parameter_To_NVList): Set the parameter mode to In for | |
20210 | Extra Constrained Parameters. | |
20211 | (Build_General_Calling_Stubs): Set the parameter type to boolean for | |
20212 | Extra Constrained parameters. | |
20213 | (Build_To_Any_Function, Build_From_Any_Function, | |
20214 | Built_TypeCode_Function): When Typ is implicit, call the correct | |
20215 | function with the first not implicit parent type. | |
20216 | (TC_Rec_Add_Process_Element, FA_Rec_Add_Process_Element, | |
20217 | (FA_Ary_Add_Process_Element): When Datum is an Any, we cannot infer the | |
20218 | typecode from the Etype. Therefore we retrieve the correct typecode | |
20219 | with a call to Get_Any_Type. | |
20220 | (Copy_Specification): Do controlling formal type substitution based on | |
20221 | Is_Controlling_Formal flag, instead of caller-provided object type. | |
20222 | (Build_Subprogram_Calling_Stubs): When retrieveing the original spec for | |
20223 | a RACW primitive operation, we might get a subprogram declaration for an | |
20224 | ancestor of the RACW designated type (not for the designated type | |
20225 | itself), in the case where this operation is inherited. In this case we | |
20226 | have no easy means of determining the original tagged type for which | |
20227 | the primitive was declared, so instead we now rely on | |
20228 | Copy_Specification to use the Is_Controlling_Formal flag to determine | |
20229 | which formals require type substitution. | |
20230 | ||
20231 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20232 | Ed Schonberg <schonberg@adacore.com> | |
20233 | ||
20234 | * exp_intr.adb (Expand_Exception_Call): Calls to subprograms in | |
20235 | GNAT.Current_Exception are not allowed if pragma Restrictions | |
20236 | (No_Exception_Propagation) is set and in any case make the associated | |
20237 | handler unsuitable as a target for a local raise statement. | |
20238 | (Expand_Dispatching_Constructor_Call): Replace generation of call to the | |
20239 | run-time subprogram CW_Membership by call to Build_CW_Membership. | |
20240 | (Expand_Dispatching_Constructor_Call): If the dispatching tag is given | |
20241 | by a function call, a temporary must be created before expanding the | |
20242 | Constructor_Call itself, to prevent out-of-order elaboration in the | |
20243 | back-end when stack checking is enabled.. | |
20244 | ||
20245 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20246 | ||
20247 | * exp_pakd.adb (Expand_Packed_Boolean_Operator): The bounds of the | |
20248 | result are the bounds of the left operand, not the right. | |
20249 | ||
20250 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20251 | ||
20252 | * exp_strm.adb | |
20253 | (Build_Mutable_Record_Write_Procedure): For an Unchecked_Union type, use | |
20254 | discriminant defaults. | |
20255 | (Build_Record_Or_Elementary_Output_Procedure): Ditto. | |
20256 | (Make_Component_List_Attributes): Ditto. | |
20257 | ||
20258 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20259 | Bob Duff <duff@adacore.com> | |
20260 | ||
20261 | * sem_aggr.adb (Resolve_Record_Aggregate): In semantics-only mode treat | |
20262 | an association with a box as providing a value even though the | |
20263 | initialization procedure for the type is not available. | |
20264 | (Resolve_Record_Aggregate): Check that a choice of an association with a | |
20265 | box corresponds to a component of the type. | |
20266 | (Resolve_Record_Aggregate): Split Is_Abstract flag into | |
20267 | Is_Abstract_Subprogram and Is_Abstract_Type. | |
20268 | ||
20269 | * exp_tss.adb (Base_Init_Proc): Use Is_Type instead of Type_Kind for | |
20270 | assert. | |
20271 | ||
20272 | * inline.adb (Add_Inlined_Body): Split Is_Abstract flag into | |
20273 | Is_Abstract_Subprogram and Is_Abstract_Type. Make sure these are | |
20274 | called only when appropriate. | |
20275 | ||
20276 | 2007-04-06 Olivier Hainque <hainque@adacore.com> | |
20277 | ||
20278 | * g-alleve.ads (Low Level Vector type definitions): Map each to the | |
20279 | associated vector view instead of all to the unsigned char view. | |
20280 | ||
20281 | * g-altcon.adb (Generic_Conversions): New internal generic package, | |
20282 | offering facilities for all the Vector/View conversion routines | |
20283 | implemented by this unit. | |
20284 | (To_View/To_Vector - all versions): Reimplemented in a systematic | |
20285 | manner, using the internal Generic_Conversions facilities. | |
20286 | ||
20287 | 2007-04-06 Pascal Obry <obry@adacore.com> | |
20288 | ||
20289 | * g-arrspl.adb (Free) [Element_Access]: New routine to free the source | |
20290 | string. | |
20291 | (Create): Free the source string before storing the new one. | |
20292 | ||
20293 | 2007-04-06 Vincent Celier <celier@adacore.com> | |
20294 | ||
20295 | * g-debpoo.adb (Validity): New package with a complete new | |
20296 | implementation of subprograms Is_Valid and Set_Valid. | |
20297 | (Is_Valid): Move to local package Validity | |
20298 | (Set_Valid): Move to local package Validity | |
20299 | ||
20300 | 2007-04-06 Arnaud Charlet <charlet@adacore.com> | |
8a57e48f | 20301 | Pablo Oliveira <oliveira@adacore.com> |
4b437c6b AC |
20302 | |
20303 | * g-expect.adb (Get_Command_Output): When expanding the output buffer | |
20304 | we must ensure that there is enough place for the new data we are going | |
20305 | to copy in. | |
20306 | ||
20307 | 2007-04-06 Thomas Quinot <quinot@adacore.com> | |
20308 | ||
20309 | * g-md5.ads, g-md5.adb (Digest): Fix off-by-one error in padding | |
20310 | computation. | |
20311 | ||
20312 | 2007-04-06 Jose Ruiz <ruiz@adacore.com> | |
20313 | Vincent Celier <celier@adacore.com> | |
20314 | ||
20315 | * gnatcmd.adb (B_Start): Add prefix of binder generated file. | |
20316 | (Stack_String): Add this String that contains the name of the Stack | |
20317 | package in the project file. | |
20318 | (Packages_To_Check_By_Stack): Add this list that contains the packages | |
20319 | to be checked by gnatstack, which are the naming and the stack packages. | |
20320 | (Check_Files): If no .ci files were specified for gnatstack we add all | |
20321 | the .ci files belonging to the projects, including binder generated | |
20322 | files. | |
20323 | (Non_VMS_Usage): Document that gnatstack accept project file switches. | |
20324 | (GNATCmd): Update the B_Start variable if we are in a VMS environment. | |
20325 | Add gnatstack to the list of commands that use project file related | |
20326 | switches, and get the single attribute Switches from the stack package | |
20327 | in a project file when calling gnatstack. Parse the -U flag for | |
20328 | processing files belonging to all projects in the project tree. | |
20329 | Remove all processing for command Setup | |
20330 | ||
20331 | * prj-attr.adb: Add new package Stack with single attribute Switches | |
20332 | ||
20333 | * vms_conv.ads (Command_Type): Add command Stack. | |
20334 | Move to body declarations that are only used in the body: types Item_Id, | |
20335 | Translation_Type, Item_Ptr, Item and its subtypes. | |
20336 | ||
20337 | * vms_conv.adb: (Initialize): Add data for new command Stack. | |
20338 | Add declarations moved from the spec: types Item_Id, Translation_Type, | |
20339 | Item_Ptr, Item and its subtypes. | |
20340 | (Cargs_Buffer): New table | |
20341 | (Cargs): New Boolean global variable | |
20342 | (Process_Buffer): New procedure to create arguments | |
20343 | (Place): Put character in table Buffer or Cargs_Buffer depending on the | |
20344 | value of Cargs. | |
20345 | (Process_Argument): Set Cargs when processing qualifiers for GNAT | |
20346 | COMPILE | |
20347 | (VMS_Conversion): Call Process_Buffer for table Buffer and, if it is not | |
20348 | empty, for table Cargs_Buffer. | |
20349 | (Initialize): Remove component Setup in Command_List | |
20350 | ||
20351 | 2007-04-06 Vincent Celier <celier@adacore.com> | |
20352 | ||
20353 | * gprep.adb (Process_Files.Process_One_File): Use full file name when | |
20354 | issuing pragma Source_Reference. | |
20355 | ||
20356 | 2007-04-06 Emmanuel Briot <briot@adacore.com> | |
20357 | ||
20358 | * g-regpat.adb (Parse_Posix_Character_Class): Fix handling of | |
20359 | [[:xdigit:]] character class. | |
20360 | Also raise an exception when an invalid character class is used. | |
20361 | ||
20362 | 2007-04-06 Pascal Obry <obry@adacore.com> | |
20363 | ||
20364 | * i-cstrea.ads: (fopen): Add encoding parameter. | |
20365 | (freopen): Idem. | |
20366 | Change reference from a-sysdep.c to sysdep.c in comment. | |
20367 | Update copyright notice. | |
20368 | This set of patch add support for the encoding form parameter. | |
20369 | ||
20370 | * mingw32.h (S2WSU): New macro to convert from a string to a | |
20371 | wide-string using the UTF-8 encoding. The S2WS macro supports now only | |
20372 | standard 8bits encoding. | |
20373 | (WS2SU): As above but converting from wide-sring to string. | |
20374 | This is needed as it is necessary to have access to both versions in the | |
20375 | runtime for the form parameter encoding support. | |
20376 | This set of patch add support for the encoding form parameter. | |
20377 | (S2WS): Improve implementation to handle cases where the filename is not | |
20378 | UTF-8 encoded. In this case we default to using the current code page | |
20379 | for the conversion. | |
20380 | ||
20381 | * s-crtl-vms64.ads, s-crtl.ads (Filename_Encoding): New enumeration | |
20382 | type (UTF8, ASCII_8bits). This enumeration has a rep clause to match | |
20383 | the constants defined in adaint.h. | |
20384 | (fopen): Add encoding parameter. | |
20385 | (freopen): Idem. | |
20386 | ||
20387 | * s-ficobl.ads (AFCB): Add Encoding field to record the filename | |
20388 | encoding. This is needed for the Reset routine (freopen low level-call). | |
20389 | ||
20390 | * s-fileio.adb (Open): Decode encoding form parameter and set the | |
20391 | corresponding encoding value into AFCB structure. | |
20392 | (Reset): Pass the encoding value to freopen. | |
20393 | (Close): Move the call to Lock_Task to the beginning of the procedure. | |
20394 | ||
20395 | 2007-04-06 Geert Bosch <bosch@adacore.com> | |
20396 | Robert Dewar <dewar@adacore.com> | |
20397 | ||
20398 | * i-fortra.ads: Add Double_Complex type. | |
20399 | ||
20400 | * impunit.adb: (Is_Known_Unit): New function | |
20401 | Add Gnat.Byte_Swapping | |
20402 | Add GNAT.SHA1 | |
20403 | Add new Ada 2005 units | |
20404 | Ada.Numerics.Generic_Complex_Arrays, Ada.Numerics.Generic_Real_Arrays, | |
20405 | Ada.Numerics.Complex_Arrays, Ada.Numerics.Real_Arrays, | |
20406 | Ada.Numerics.Long_Complex_Arrays, Ada.Numerics.Long_Long_Complex_Arrays, | |
20407 | Ada.Numerics.Long_Long_Real_Arrays and Ada.Numerics.Long_Real_Arrays | |
20408 | ||
20409 | * impunit.ads (Is_Known_Unit): New function | |
20410 | ||
20411 | * a-ngcoar.adb, a-ngcoar.ads, a-ngrear.adb, | |
20412 | a-ngrear.ads, a-nlcoar.ads, a-nllcar.ads, a-nllrar.ads, a-nlrear.ads, | |
20413 | a-nucoar.ads, a-nurear.ads, g-bytswa.adb, g-bytswa-x86.adb, | |
20414 | g-bytswa.ads, g-sha1.adb, g-sha1.ads, i-forbla.ads, i-forlap.ads, | |
20415 | s-gearop.adb, s-gearop.ads, s-gecobl.adb, s-gecobl.ads, s-gecola.adb, | |
20416 | s-gecola.ads, s-gerebl.adb, s-gerebl.ads, s-gerela.adb, s-gerela.ads: | |
20417 | New files. | |
20418 | ||
20419 | * Makefile.rtl: Add g-bytswa, g-sha1, a-fzteio and a-izteio | |
20420 | ||
20421 | * a-fzteio.ads, a-izteio.ads: New Ada 2005 run-time units. | |
20422 | ||
9e94c78f | 20423 | 2007-04-06 Eric Botcazou <botcazou@adacore.com> |
4b437c6b AC |
20424 | Arnaud Charlet <charlet@adacore.com> |
20425 | ||
20426 | * init.c: Reuse PA/HP-UX code for IA-64/HP-UX, except | |
20427 | __gnat_adjust_context_for_raise. | |
20428 | (__gnat_init_float): on x86 vxworks 5.x and 6.x, we use the same | |
20429 | implementation of floating point operations as native x86 targets. | |
20430 | So the FPU should be initialized in the same way using finit. Fix | |
20431 | floating point operations accuracy issues. | |
20432 | (__gnat_install_handler, case FreeBSD): Use proper type for sa_sigaction | |
20433 | member in struct sigaction, so as to avoid warning for incompatible | |
20434 | pointer types. | |
20435 | ||
9e94c78f | 20436 | 2007-04-06 Serguei Rybin <rybin@adacore.com> |
4b437c6b AC |
20437 | |
20438 | * lib.ads, lib.adb (Tree_Read): Release the memory occupied by the | |
20439 | switches from previously loaded tree | |
20440 | ||
20441 | 2007-04-06 Thomas Quinot <quinot@adacore.com> | |
20442 | ||
20443 | * lib-writ.adb (Write_With_Lines): Factor duplicated code between the | |
20444 | cases where a given dependency has a body or not. | |
20445 | (Write_With_File_Names): New subprogram, common code for the two cases | |
20446 | above. | |
20447 | ||
20448 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20449 | Javier Miranda <miranda@adacore.com> | |
20450 | ||
9e81dbc7 | 20451 | * lib-xref.ads, lib-xref.adb: |
4b437c6b AC |
20452 | Modify the loop that collects type references, to include interface |
20453 | types that the type implements. List each of these interfaces when | |
20454 | building the entry for the type. | |
20455 | (Generate_Definition): Initialize component Def and Typ of new entry | |
20456 | in table Xrefs, to avoid to have these components unitialized. | |
20457 | (Output_References): Split Is_Abstract flag into | |
20458 | Is_Abstract_Subprogram and Is_Abstract_Type. | |
20459 | (Generate_Reference): Add barrier to do not generate the warning | |
20460 | associated with Ada 2005 entities with entities generated by the | |
20461 | expander. | |
20462 | ||
20463 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20464 | Arnaud Charlet <charlet@adacore.com> | |
20465 | Vincent Celier <celier@adacore.com> | |
20466 | ||
20467 | * gnat_rm.texi, gnat_ugn.texi: Add -gnatyl documentation | |
20468 | Update 'Exception Handling Control' chapter which was outdated. | |
20469 | Minor fix to documentation of -gnatwq | |
20470 | Remove section "Adapting the Run Time to a New C++ Compiler" because | |
20471 | it is now obsolete. | |
20472 | Add passage on need of -nostart-files in some non-ada-main cases. | |
20473 | Document new switch -eS (/STANDARD_OUTPUT_FOR_COMMANDS) for gnatmake | |
20474 | Update documentation about Interfacing with C++ | |
20475 | Add documentation for new gnatmake switch -p | |
20476 | Add missing protocol part in URLs. | |
20477 | Document -gnatyA | |
20478 | Document pragma Compile_Time_Error | |
20479 | Add documentation for Object_Size indicating that stand alone | |
20480 | objects can have a larger size in some cases. | |
20481 | Add node for GNAT.Byte_Swapping, GNAT.SHA1 | |
20482 | Update reference to the Ravenscar profile. | |
20483 | Document pragma Unreferenced_Objects | |
20484 | ||
20485 | * gnat-style.texi: Fix typo | |
20486 | ||
20487 | 2007-04-06 Vincent Celier <celier@adacore.com> | |
20488 | ||
20489 | * mlib.adb (Building_Library): Only output "building a library..." in | |
20490 | verbose mode | |
20491 | ||
20492 | * mlib-prj.adb (Build_Library): Only output lists of object and ALI | |
20493 | files in verbose mode. | |
20494 | ||
20495 | * mlib-utl.adb (Ar): Only output the first object files when not in | |
20496 | verbose mode. | |
20497 | (Gcc): Do not display all the object files if not in verbose mode, only | |
20498 | the first one. | |
20499 | ||
20500 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20501 | ||
20502 | * namet.ads, namet.adb (wn): Improve this debugging routine. Calling | |
20503 | it no longer destroys the contents of Name_Buffer or Name_Len and | |
20504 | non-standard and invalid names are handled better. | |
20505 | (Get_Decoded_Name_String): Improve performance by using | |
20506 | Name_Has_No_Encodings flag in the name table. | |
20507 | (Is_Valid_Name): New function to determine whether a Name_Id is valid. | |
20508 | Used for debugging printouts. | |
20509 | ||
20510 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20511 | Javier Miranda <miranda@adacore.com> | |
20512 | Bob Duff <duff@adacore.com> | |
20513 | ||
20514 | * par-ch3.adb: (P_Type_Declaration): Set Type_Token_Location | |
20515 | (P_Interface_Type_Definition): Remove the formal Is_Synchronized because | |
20516 | there is no need to generate always a record_definition_node in case | |
20517 | of synchronized interface types. | |
20518 | (P_Type_Declaration): Update calls to P_Interface_Type_Definition. | |
20519 | (P_Null_Exclusion): For AI-447: Remove warnings about "not null" being | |
20520 | illegal in Ada 95, in cases where it is legal. Change the warnings to | |
20521 | errors in other cases. Don't give the error unless the "not null" | |
20522 | parses properly. Correct the source position at which the error occurs. | |
20523 | (P_Known_Discriminant_Part_Opt): Pass Allow_Anonymous_In_95 => True to | |
20524 | P_Null_Exclusion, to suppress "not null" warnings. | |
20525 | (P_Identifier_Declarations): Code cleanup. Removed unrequired label and | |
20526 | associated goto statements. | |
20527 | ||
20528 | * par-endh.adb (Pop_End_Context): Allow more flexibility in placement | |
20529 | of END RECORD | |
20530 | ||
20531 | * scans.ads (Type_Token_Location): New flag | |
20532 | ||
20533 | * par-ch6.adb (P_Mode): Check specifically for case of IN ACCESS | |
20534 | (P_Formal_Part): Pass Allow_Anonymous_In_95 => True to | |
20535 | P_Null_Exclusion, to suppress "not null" warnings. | |
20536 | ||
20537 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20538 | Javier Miranda <miranda@adacore.com> | |
20539 | Bob Duff <duff@adacore.com> | |
20540 | Vincent Celier <celier@adacore.com> | |
20541 | ||
20542 | * par-prag.adb (Prag): Add dummy entry for pragma Compile_Time_Error | |
20543 | (Extensions_Allowed): No longer sets Ada_Version | |
20544 | Entry for pragma Unreferenced_Objects | |
20545 | ||
20546 | * sem_prag.adb (Analyze_Pragma, case Priority): Force with of | |
20547 | system.tasking if pragma priority used in a procedure | |
20548 | (Analyze_Pragma, case Warning): Handle dot warning switches | |
20549 | (Process_Compile_Time_Warning_Or_Error): New procedure | |
20550 | (Analyze_Pragma): Add processing for Compile_Time_Error | |
20551 | Add support for extra arguments External_Name and Link_Name. | |
20552 | Remove code associated with pragmas CPP_Virtual and CPP_Vtable. | |
20553 | (Process_Import_Or_Interface): Add support for the use of pragma Import | |
20554 | with tagged types. | |
20555 | (Extensions_Allowed): No longer affects Ada_Version | |
20556 | (Analyze_Pragma): Split Is_Abstract flag into Is_Abstract_Subprogram and | |
20557 | Is_Abstract_Type. Make sure these are called only when appropriate. | |
20558 | Add processing for pragma Unreferenced_Objects | |
20559 | ||
20560 | * snames.h, snames.ads, snames.adb: Add entry for pragma | |
20561 | Compile_Time_Error | |
20562 | Add new standard name Minimum_Binder_Options for new gprmake | |
20563 | Add new standard names for gprmake: Archive_Suffix, | |
20564 | Library_Auto_Init_Supported, Library_Major_Minor_Id_Supported, | |
20565 | Library_Support, Library_Version_Options, | |
20566 | Shared_Library_Minimum_Options, | |
20567 | Shared_Library_Prefix, Shared_Library_Suffix, Symbolic_Link_Supported. | |
20568 | Change Name_Call to Name_uCall so that it cannot clash with a legal | |
20569 | subprogram name. | |
20570 | Add new standard names Mapping_Spec_Suffix and Mapping_Body_Suffix | |
20571 | Append C_Plus_Plus to convention identifiers as synonym for CPP | |
20572 | Add new standard names Stack and Builder_Switches | |
20573 | Add new standard names: Compiler_Minimum_Options, Global_Config_File, | |
20574 | Library_Builder, Local_Config_File, Objects_Path, Objects_Path_File, | |
20575 | Run_Path_Option, Toolchain_Version. | |
20576 | Entry for pragma Unreferenced_Objects | |
20577 | ||
20578 | * switch-c.adb (Scan_Front_End_Switches): Store correct -gnateD | |
20579 | switches, without repetition of "eD". Make sure that last character of | |
20580 | -gnatep= switch is not taken as -gnat switch character. | |
20581 | Complete rewrite of circuit for handling saving compilation options | |
20582 | Occasioned by need to support dot switchs for -gnatw, but cleans up | |
20583 | things in general. | |
20584 | -gnatX does not affect Ada_Version | |
20585 | Include -gnatyA in -gnatg style switches | |
20586 | ||
20587 | * sem_warn.ads, sem_warn.adb (Output_Unreferenced_Messages): Exclude | |
20588 | warnings on return objects. | |
20589 | (Warn_On_Useless_Assignment): Exclude warnings on return objects | |
20590 | (Set_Dot_Warning_Switch): New procedure | |
20591 | (Check_References): Add missing case of test for | |
20592 | Has_Pragma_Unreferenced_Objects | |
20593 | (Output_Unreferenced_Messages): Implement effect of new pragma | |
20594 | Unreferenced_Objects, remove special casing of limited controlled | |
20595 | variables. | |
20596 | ||
20597 | 2007-04-06 Vincent Celier <celier@adacore.com> | |
20598 | ||
20599 | * prj-ext.adb (Initialize_Project_Path): New procedure that initialize | |
20600 | the default project path, initially done during elaboration of the | |
20601 | package. | |
20602 | If the prefix returned by Sdefault is null, get the prefix from a call | |
20603 | to Executable_Prefix_Path. | |
20604 | (Project_Path): Call Initialize_Project_Path if Current_Project_Path is | |
20605 | null. | |
20606 | ||
20607 | * prj-nmsc.adb (Get_Path_Names_And_Record_Sources): Use the non | |
20608 | canonical directory name to open the directory from which files are | |
20609 | retrieved. | |
20610 | (Record_Other_Sources): Idem. | |
20611 | (Locate_Directory): Add the possibility to create automatically missing | |
20612 | directories when Setup_Projects is True. | |
20613 | Call Locate_Directory so that the directory will be created when | |
20614 | Setup_Projects is True, for object dir, library dir, library ALI dir, | |
20615 | library source copy dir and exec dir. | |
20616 | ||
20617 | * prj-pp.adb (Max_Line_Length): Set to 255 for compatibility with older | |
20618 | versions of GNAT. | |
20619 | ||
20620 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20621 | ||
20622 | * sem_ch13.ads, sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): | |
20623 | Use First/Next_Component_Or_Discriminant | |
20624 | (Analyze_Record_Representation_Clause): | |
20625 | Use First/Next_Component_Or_Discriminant | |
20626 | (Check_Component_Overlap): Use First/Next_Component_Or_Discriminant | |
20627 | (Analyze_Attribute_Definition_Clause, case Value_Size): Reject | |
20628 | definition if type is unconstrained. | |
20629 | (Adjust_Record_For_Reverse_Bit_Order): New procedure | |
20630 | (Analyze_Attribute_Definition_Clause): Split Is_Abstract flag into | |
20631 | Is_Abstract_Subprogram and Is_Abstract_Type. | |
20632 | (Adjust_Record_For_Reverse_Bit_Order): New procedure | |
20633 | ||
20634 | * repinfo.adb (List_Record_Info): Use First/ | |
20635 | Next_Component_Or_Discriminant. | |
20636 | ||
20637 | * style.ads, styleg-c.adb, styleg-c.ads (Check_Array_Attribute_Index): | |
20638 | New procedure. | |
20639 | ||
20640 | * stylesw.ads, stylesw.adb: Recognize new -gnatyA style switch | |
20641 | Include -gnatyA in default switches | |
20642 | ||
20643 | * opt.ads: (Warn_On_Non_Local_Exception): New flag | |
20644 | (Warn_On_Reverse_Bit_Order): New flag | |
20645 | (Extensions_Allowed): Update the documentation. | |
20646 | (Warn_On_Questionable_Missing_Parens): Now on by default | |
20647 | ||
20648 | * usage.adb: Add documentation of -gnatw.x/X switches | |
20649 | Document new -gnatyA style switch | |
20650 | -gnatq warnings are on by default | |
20651 | ||
20652 | 2007-04-06 Ed Falis <falis@adacore.com> | |
20653 | ||
20654 | * s-carun8.adb, s-carsi8.adb (Compare_Array_?8): modify so that last | |
20655 | full word is no longer compared twice. | |
20656 | ||
20657 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20658 | ||
20659 | * sem_ch10.adb (Install_Limited_Context_Clauses. | |
20660 | Expand_Limited_With_Clause): Use a new copy of selector name in the | |
20661 | call to Make_With_Clause. This fixes the tree structure for ASIS | |
20662 | purposes. Nothing is changed in the compiler behaviour. | |
20663 | (Process_Body_Clauses): Handle properly use clauses whose prefix is | |
20664 | a package renaming. | |
20665 | (Install_Limited_With_Clauses): Do not install non-limited view when it | |
20666 | is still incomplete. | |
20667 | ||
20668 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20669 | Gary Dismukes <dismukes@adacore.com> | |
20670 | ||
20671 | * sem_ch12.adb (Check_Generic_Actuals): Use first subtype of actual | |
20672 | when capturing size information, instead of base type, which for a | |
20673 | formal array type will be the unconstrained type. | |
20674 | (Analyze_Formal_Object_Declaration): Add check for illegal default | |
20675 | expressions for a formal in object of a limited type. | |
20676 | (Instantiate_Object): Ditto. | |
20677 | (Check_Formal_Package_Instance): Skip entities that are formal objects, | |
20678 | because they were defaulted in the formal package and no check applies | |
20679 | to them. | |
20680 | (Check_Formal_Package_Instance): Extend conformance check to other | |
20681 | discrete types beyond Integer. | |
20682 | (Process_Default): Copy directly the unmatched formal. A generic copy | |
20683 | has already been performed in Analyze_Formal_Package. | |
20684 | (Analyze_Associations): If a formal subprogram has no match, check for | |
20685 | partial parametrization before looking for a default, to prevent | |
20686 | spurious errors. | |
20687 | (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): Do | |
20688 | not set the instantiation environment before analyzing the actuals. | |
20689 | Fixes regression on 8515-003 with implementation of AI-133. | |
20690 | Set_Instance_Env checks whether the generic unit is a predefined | |
20691 | unit, in which case the instance must be analyzed with the latest Ada | |
20692 | mode. This setting must take place after analysis of the actuals, | |
20693 | because the actuals must be analyzed and frozen in the Ada mode extant | |
20694 | outside of the current instantiation. | |
20695 | (Save_Env, Restore_Env): Preserve and restore the configuration | |
20696 | parameters so that predefined units can be compiled in the proper Ada | |
20697 | mode. | |
20698 | (Analyze_Formal_Object_Declaration,Analyze_Formal_Subprogram, | |
20699 | Instantiate_Type): Split Is_Abstract flag into Is_Abstract_Subprogram | |
20700 | and Is_Abstract_Type. | |
20701 | (Analyze_Formal_Package): For better error recovery, Add exception | |
20702 | handler to catch Instantion_Error, which can be raised in | |
20703 | Analyze_Associations | |
20704 | ||
20705 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20706 | Bob Duff <duff@adacore.com> | |
20707 | Gary Dismukes <dismukes@adacore.com> | |
20708 | ||
20709 | * sem_ch4.adb (Try_Primitive_Operation): The call is legal if the | |
20710 | prefix type is a discriminated subtype of the type of the formal. | |
20711 | (Analyze_Allocator): Collect all coextensions regardless of the context. | |
20712 | Whether they can be allocated statically is determined in exp_ch4. | |
20713 | (Analyze_Selected_Component): If the prefix is a limited view and the | |
20714 | non-limited view is available, use the non-limited one. | |
20715 | (Operator_Check): For "X'Access = Y'Access" (which is ambiguous, and | |
20716 | therefore illegal), suggest a qualified expression rather than a type | |
20717 | conversion, because a type conversion would be illegal in this context. | |
20718 | (Anayze_Allocator): Trace recursively all nested allocators so that all | |
20719 | coextensions are on the corresponding list for the root. Do no mark | |
20720 | coextensions if the root allocator is within a declaration for a stack- | |
20721 | allocated object, because the access discriminants will be allocated on | |
20722 | the stack as well. | |
20723 | (Analyze_Call): Remove restriction on calls to limited functions for the | |
20724 | cases of generic actuals for formal objects, defaults for formal objects | |
20725 | and defaults for record components. | |
20726 | (Analyze_Allocator): Before analysis, chain coextensions on the proper | |
20727 | element list. Their expansion is delayed until the enclosing allocator | |
20728 | is processed and its finalization list constructed. | |
20729 | (Try_Primitive_Operation): If the prefix is a concurrent type, looks | |
20730 | for an operation with the given name among the primitive operations of | |
20731 | the corresponding record type. | |
20732 | (Analyze_Selected_Component): If the prefix is a task type that | |
20733 | implements an interface, and there is no entry with the given name, | |
20734 | check whether there is another primitive operation (e.g. a function) | |
20735 | with that name. | |
20736 | (Try_Object_Operation, Analyze_One_Call, Try_Indexed_Call): Handle | |
20737 | properly the indexing of a function call written in prefix form, where | |
20738 | the function returns an array type, and all parameters of the function | |
20739 | except the first have defaults. | |
20740 | (Analyze_Equality_Op): If this is a call to an implicit inequality, keep | |
20741 | the original operands, rather than relocating them, for efficiency and | |
20742 | to work properly when an operand is overloaded. | |
20743 | (Analyze_Allocator,Operator_Check,Remove_Abstract_Operations): Split | |
20744 | Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. | |
20745 | (Analyze_Selected_Component): If the prefix is a private extension, only | |
20746 | scan the visible components, not those of the full view. | |
20747 | (Try_Primitive_Operation): If the operation is a procedure, collect all | |
20748 | possible interpretations, as for a function, because in the presence of | |
20749 | classwide parameters several primitive operations of the type can match | |
20750 | the given arguments. | |
20751 | ||
20752 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20753 | Robert Dewar <dewar@adacore.com> | |
20754 | ||
20755 | * sem_ch5.adb (Analyze_Assignment): Reject a right-hand side that is a | |
20756 | tag-indeterminate call to an abstract function, when the left-hand side | |
20757 | is not classwide. | |
20758 | (Analyze_Loop_Statement): Improve detection of infinite loops | |
20759 | ||
20760 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20761 | Thomas Quinot <quinot@adacore.com> | |
20762 | ||
20763 | * sem_ch7.ads, sem_ch7.adb (Inspect_Deferred_Constant_Completion): Move | |
20764 | out of Analyze_Package_Declaration, because processing must be applied | |
20765 | to package bodies as well, for deferred constants completed by pragmas. | |
20766 | (Analyze_Package_Declaration): When the package declaration being | |
20767 | analyzed does not require an explicit body, call Check_Completion. | |
20768 | (May_Need_Implicit_Body): An implicit body is required when a package | |
20769 | spec contains the declaration of a remote access-to-classwide type. | |
20770 | (Analyze_Package_Body): If the package contains RACWs, append the | |
20771 | pending subprogram bodies generated by exp_dist at the end of the body. | |
20772 | (New_Private_Type,Unit_Requires_Body): Split Is_Abstract flag into | |
20773 | Is_Abstract_Subprogram and Is_Abstract_Type. | |
20774 | (Preserve_Full_Attributes): The full entity list is not an attribute | |
20775 | that must be preserved from full to partial view. | |
20776 | ||
9e81dbc7 AS |
20777 | * sem_dist.adb (Add_RAS_Dereference_TSS): |
20778 | Change primitive name to _Call so it cannot clash with any legal | |
20779 | identifier, and be special-cased in Check_Completion. | |
20780 | Mark the full view of the designated type for the RACW associated with | |
20781 | a RAS as Comes_From_Source to get proper view switching when installing | |
20782 | private declarations. | |
20783 | Provite a placeholder nested package body along with the nested spec | |
20784 | to have a place for Append_RACW_Bodies to generate the calling stubs | |
20785 | and stream attributes. | |
4b437c6b AC |
20786 | |
20787 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20788 | Robert Dewar <dewar@adacore.com> | |
20789 | ||
20790 | * sem_ch8.adb (Has_Components): If the argument is an incomplete type | |
20791 | that is a limited view, check the non-limited view if available. | |
20792 | (Undefined): Refine error message for missing with of Text_IO | |
20793 | (Find_Expanded_Name): Use Is_Known_Unit for more accurate error message | |
20794 | to distinguish real missing with cases. | |
20795 | Fix format of all missing with messages | |
20796 | (Analyze_Subprogram_Renaming): Emit proper error message on illegal | |
20797 | renaming as body when renamed entity is abstract. | |
20798 | ||
20799 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20800 | Javier Miranda <miranda@adacore.com> | |
20801 | ||
20802 | * sem_type.ads, sem_type.adb (Has_Abstract_Interpretation): Make | |
20803 | predicate recursive, to handle complex expressions on literals whose | |
20804 | spurious ambiguity comes from the abstract interpretation of some | |
20805 | subexpression. | |
20806 | (Interface_Present_In_Ancestor): Add support to concurrent record | |
20807 | types. | |
20808 | (Add_One_Interp,Disambiguate): Split Is_Abstract flag into | |
20809 | Is_Abstract_Subprogram and Is_Abstract_Type. | |
20810 | ||
20811 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20812 | Javier Miranda <miranda@adacore.com> | |
20813 | ||
20814 | * sem_util.ads, sem_util.adb (Object_Access_Level): If the object is a | |
20815 | dereference of a local object R created as a reference to another | |
20816 | object O, use the access level of O. | |
20817 | (Matches_Prefixed_View_Profile): Use common predicate Conforming_Types, | |
20818 | rather than local Same_Formal_Type, to check whether protected operation | |
20819 | overrides an inherited one. | |
20820 | (Same_Formal_Type): New predicate, used when matching signatures of | |
20821 | overriding synchronized operations, to handle the case when a formal | |
20822 | has a type that is a generic actual. | |
20823 | (Is_Aliased_View): Replace check on E_Task_Type and E_Protected_Type by | |
20824 | predicate Is_Concurrent_Type. This ensures supportin case of subtypes. | |
20825 | (Needs_One_Actual): New predicate, for Ada 2005 use, to resolve | |
20826 | syntactic ambiguities involving indexing of function calls that return | |
20827 | arrays. | |
20828 | (Abstract_Interface_List): New subprogram that returns the list of | |
20829 | abstract interfaces associated with a concurrent type or a | |
20830 | concurrent record type. | |
20831 | (Interface_Present_In_Parent): New subprogram used to check if a | |
20832 | given type or some of its parents implement a given interface. | |
20833 | (Collect_Abstract_Interfaces): Add support for concurrent types | |
20834 | with interface types. | |
20835 | (Has_Abstract_Interfaces): Add support for concurrent types with | |
20836 | interface types. | |
20837 | (Is_Parent): New subprogram that determines whether E1 is a parent | |
20838 | of E2. For a concurrent type its parent is the first element of its | |
20839 | list of interface types; for other types this function provides the | |
20840 | same result than Is_Ancestor. | |
20841 | (Enclosing_Subprogram): Add test for N_Extended_Return_Statement. | |
20842 | (Collect_Synchronized_Interfaces): Removed because the subprogram | |
20843 | Collect_Abstract_Interfaces provides this functionality. | |
20844 | (Collect_Abstract_Interfaces): Minor update to give support to | |
20845 | concurrent types and thus avoid undesired code duplication. | |
20846 | (Get_Subprogram_Entity): Handle entry calls. | |
20847 | (May_Be_Lvalue): Include actuals that appear as in-out parameters in | |
20848 | entry calls. | |
20849 | (Enter_Name): Do not give -gnatwh hiding warning for record component | |
20850 | entities, they never result in hiding. | |
20851 | ||
20852 | 2007-04-06 Ed Schonberg <schonberg@adacore.com> | |
20853 | Robert Dewar <dewar@adacore.com> | |
20854 | ||
20855 | * sinfo.ads, sinfo.adb (Coextensions): New element list for allocators, | |
20856 | to chain nested components that are allocators for access discriminants | |
20857 | of the enclosing object. | |
20858 | Add N_Push and N_Pop nodes | |
20859 | New field Exception_Label added | |
20860 | (Local_Raise_Statements): New field in N_Exception_Handler_Node | |
20861 | (Local_Raise_Not_OK): New flag in N_Exception_Handler_Node | |
20862 | (Is_Coextension): New flag for allocators, to mark allocators that | |
20863 | correspond to access discriminants of dynamically allocated objects. | |
20864 | (N_Block_Statement): Document the fact that the corresponding entity | |
20865 | can be an E_Return_Statement. | |
20866 | (Is_Coextension): New flag for allocators. | |
20867 | Remove all code for DSP option | |
20868 | ||
20869 | * sprint.ads, sprint.adb: Display basic information for class_wide | |
20870 | subtypes. Add handling of N_Push and N_Pop nodes | |
20871 | ||
20872 | 2007-04-06 Arnaud Charlet <charlet@adacore.com> | |
20873 | ||
20874 | * s-tpobop.adb (Exceptional_Complete_Entry_Body): Undefer abortion | |
20875 | before propagating exception. | |
20876 | ||
20877 | 2007-04-06 Olivier Hainque <hainque@adacore.com> | |
20878 | ||
20879 | * tracebak.c (PC_ADJUST - ia64): -4 instead of -16, expected to yield | |
20880 | an address always within the call instruction from a return address. | |
20881 | ||
20882 | 2007-04-06 Olivier Hainque <hainque@adacore.com> | |
9e94c78f | 20883 | Eric Botcazou <botcazou@adacore.com> |
4b437c6b AC |
20884 | |
20885 | * trans.c (call_to_gnu) <TYPE_RETURNS_BY_TARGET_PTR_P>: Return an | |
20886 | expression with a COMPOUND_EXPR including the call instead of emitting | |
20887 | the call directly here. | |
20888 | (gnat_to_gnu) <N_Slice>: Do not return a non-constant low bound if the | |
20889 | high bound is constant and the slice is empty. Tidy. | |
20890 | (tree_transform, case N_Op_Not): Handle properly the case where the | |
20891 | operation applies to a private type whose full view is a modular type. | |
20892 | (Case_Statement_To_gnu): If an alternative is an E_Constant with an | |
20893 | Address_Clause, use the associated Expression as the GNAT tree | |
20894 | representing the choice value to ensure the corresponding GCC tree is | |
20895 | of the proper kind. | |
20896 | (maybe_stabilize_reference): Stabilize COMPOUND_EXPRs as a whole | |
20897 | instead of just the operands, as the base GCC stabilize_reference does. | |
20898 | <CALL_EXPR>: New case. Directly stabilize the call if an lvalue is not | |
20899 | requested; otherwise fail. | |
20900 | (addressable_p) <COMPONENT_REF>: Do not test DECL_NONADDRESSABLE_P. | |
20901 | ||
20902 | 2007-04-06 Thomas Quinot <quinot@adacore.com> | |
20903 | ||
20904 | * uintp.ads, uintp.adb (UI_Div_Rem): New subprogram, extending previous | |
20905 | implementation of UI_Div. | |
20906 | (UI_Div): Reimplement as a call to UI_Div_Rem. | |
20907 | (UI_Rem): Take advantage of the fact that UI_Div_Rem provides the | |
20908 | remainder, avoiding the cost of a multiplication and a subtraction. | |
20909 | (UI_Modular_Inverse): Take advantage of the fact that UI_Div_Rem | |
20910 | provides both quotient and remainder in a single computation. | |
20911 | (UI_Modular_Exponentiation, UI_Modular_Inverse): New modular arithmetic | |
20912 | functions for uint. | |
20913 | (UI_Modular_Inverse): Add a note that the behaviour of this subprogram | |
20914 | is undefined if the given n is not inversible. | |
20915 | ||
20916 | 2007-04-06 Olivier Hainque <hainque@adacore.com> | |
20917 | ||
20918 | * utils2.c (known_alignment): Handle COMPOUND_EXPR, COND_EXPR and | |
20919 | BIT_AND_EXPR. Handle also VIEW_CONVERT_EXPR, as the other conversion | |
20920 | opcodes. | |
20921 | ||
9e94c78f | 20922 | 2007-04-06 Eric Botcazou <botcazou@adacore.com> |
4b437c6b AC |
20923 | Olivier Hainque <hainque@adacore.com> |
20924 | ||
20925 | * utils.c (update_pointer_to): Make a copy of the couple of FIELD_DECLs | |
20926 | when updating the contents of the old pointer to an unconstrained array. | |
20927 | (end_subprog_body): Set error_gnat_node to Empty. | |
20928 | (write_record_type_debug_info): Do not be unduly sparing with our bytes. | |
20929 | (unchecked_convert): For subtype to base type conversions, require that | |
20930 | the source be a subtype if it is an integer type. | |
20931 | (builtin_decls): New global, vector of available builtin functions. | |
20932 | (gnat_pushdecl): Add global builtin function declaration nodes to the | |
20933 | builtin_decls list. | |
20934 | (gnat_install_builtins): Adjust comments. | |
20935 | (builtin_function): Set DECL_BUILTIN_CLASS and DECL_FUNCTION_CODE before | |
20936 | calling gnat_pushdecl, so that it knows when it handed a builtin | |
20937 | function declaration node. | |
20938 | (builtin_decl_for): Search the builtin_decls list. | |
20939 | ||
9e94c78f | 20940 | 2007-04-06 Eric Botcazou <botcazou@adacore.com> |
4b437c6b | 20941 | |
9e81dbc7 | 20942 | * s-stchop-vxworks.adb: |
4b437c6b AC |
20943 | (Stack_Check): Raise Storage_Error if the argument has wrapped around. |
20944 | ||
20945 | 2007-04-06 Robert Dewar <dewar@adacore.com> | |
20946 | Arnaud Charlet <charlet@adacore.com> | |
20947 | ||
20948 | * a-diroro.ads: Inserted the pragma Unimplemented_Unit | |
20949 | ||
20950 | * bindgen.adb (Gen_Output_File_Ada): Generate pragma Ada_95 at start | |
20951 | of files | |
20952 | Add mention of -Sev (set initialize_scalars option from environment | |
20953 | variable at run time) in gnatbind usage message. | |
20954 | ||
20955 | * elists.ads, elists.adb: (Append_Unique_Elmt): New procedure | |
20956 | ||
20957 | * fname-uf.ads: Minor comment fix | |
20958 | ||
20959 | * osint.ads: Change pragma Elaborate to Elaborate_All | |
20960 | ||
20961 | * par-load.adb: Add documentation. | |
20962 | ||
20963 | * sem_cat.ads, sem_cat.adb: Minor code reorganization | |
20964 | ||
20965 | * s-parint.ads (RCI_Locator) : Add 'Version' generic formal | |
20966 | ||
20967 | * s-secsta.ads: Extra comments | |
20968 | ||
20969 | * s-soflin.ads: Minor comment fixes | |
20970 | ||
20971 | * s-stratt.ads (Block_Stream_Ops_OK): Removed. | |
20972 | ||
20973 | * s-wchcon.ads: Minor comment addition | |
20974 | ||
20975 | * treepr.adb: Minor change in message | |
20976 | (Print_Name,Print_Node): Make these debug printouts more robust: print | |
20977 | "no such..." instead of crashing on bad input. | |
20978 | ||
719bb4e3 | 20979 | 2007-03-30 Rafael Ávila de Espíndola <espindola@google.com> |
47ecd38d RAE |
20980 | |
20981 | * trans.c (Attribute_to_gnu): Use get_signed_or_unsigned_type | |
20982 | instead of gnat_signed_or_unsigned_type. | |
20983 | * utils.c (gnat_signed_or_unsigned_type): Remove. | |
20984 | * misc.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove | |
20985 | * gigi.h (gnat_signed_or_unsigned_type): Remove | |
20986 | ||
9645c3c5 RS |
20987 | 2007-03-09 Roger Sayle <roger@eyesopen.com> |
20988 | ||
20989 | * cuintp.c (UI_To_gnu): Use fold_buildN calls instead of calling | |
20990 | fold with the result of buildN. | |
20991 | * decl.c (gnat_to_gnu_entity): Likewise. | |
20992 | * trans.c (Attribute_to_gnu, gnat_to_gnu, emit_check): Likewise. | |
20993 | * utils.c (finish_record_type, merge_sizes, max_size, convert): | |
20994 | Likewise. | |
20995 | * utils2.c (gnat_truthvalue_conversion, compare_arrays, | |
20996 | nonbinary_modular_operation, build_binary_op, build_unary_op, | |
20997 | build_cond_expr): Likewise. | |
20998 | ||
20999 | * utils.c (convert): Use fold_build1 when casting values to void. | |
21000 | * utils2.c (gnat_truthvalue_conversion): Use build_int_cst and | |
21001 | fold_convert instead of convert when appropriate. | |
21002 | ||
c279aa90 BM |
21003 | 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com> |
21004 | ||
21005 | * Make-lang.in: Add install-pdf target as copied from | |
21006 | automake v1.10 rules. | |
21007 | ||
c2615f30 AS |
21008 | 2007-02-28 Andreas Schwab <schwab@suse.de> |
21009 | ||
21010 | * Make-lang.in (doc/gnat_ugn_unw.texi): Depend on | |
21011 | $(gcc_docdir)/include/gcc-common.texi and gcc-vers.texi. | |
21012 | (doc/gnat-style.info): Likewise. | |
21013 | ||
7771bb62 BM |
21014 | 2007-02-26 Brooks Moses <brooks.moses@codesourcery.com> |
21015 | ||
21016 | * gnat-style.texi: Standardize title page. | |
21017 | * gnat_rm.texi: Likewise. | |
21018 | * gnat_ugn.texi: Likewise. | |
21019 | ||
ae19c041 MM |
21020 | 2007-02-25 Mark Mitchell <mark@codesourcery.com> |
21021 | ||
21022 | * decl.c (annotate_value): Adjust for refactoring of tree_map | |
21023 | hierarchy. | |
21024 | ||
fc8600f9 MM |
21025 | 2007-02-24 Mark Mitchell <mark@codesourcery.com> |
21026 | ||
21027 | * decl.c (annotate_value): Adjust for refactoring of tree_map | |
21028 | hierarchy. | |
21029 | ||
c0bca7e1 EB |
21030 | 2007-02-21 Ed Schonberg <schonberg@adacore.com> |
21031 | ||
21032 | PR ada/18819 | |
21033 | * sem_ch3.adb (Create_Constrained_Components): for a subtype of an | |
21034 | untagged derived type, add hidden components to keep discriminant | |
21035 | layout consistent, when a given discriminant of the derived type | |
21036 | constraints several discriminants of the parent type. | |
21037 | ||
9f3432b8 | 21038 | 2007-02-16 Eric Botcazou <ebotcazou@adacore.com> |
6f7f72f9 | 21039 | Sandra Loosemore <sandra@codesourcery.com> |
9f3432b8 EB |
21040 | |
21041 | * trans.c (call_to_gnu): Use build_call_list instead of build3 to | |
21042 | build the call expression. | |
21043 | (gnat_stabilize_reference_1): Handle tcc_vl_exp. | |
21044 | * utils.c (max_size) <tcc_exceptional>: Delete. | |
21045 | <tcc_vl_exp>: New case. | |
21046 | <tcc_expression>: Delete CALL_EXPR subcase. | |
21047 | (build_global_cdtor): Use build_call_nary instead of build3. | |
21048 | * utils2.c (build_call_1_expr): Likewise. | |
21049 | (build_call_2_expr): Likewise. | |
21050 | (build_call_0_expr): Likewise. | |
21051 | (build_call_alloc_dealloc): Likewise. | |
21052 | ||
8438091f AK |
21053 | 2007-02-07 Andreas Krebbel <krebbel1@de.ibm.com> |
21054 | ||
21055 | * raise-gcc.c (get_region_description_for, get_call_site_action_for, | |
9e81dbc7 | 21056 | get_action_description_for): Replace _Unwind_Word with _uleb128_t |
8438091f AK |
21057 | and _Unwind_SWord with _sleb128_t. |
21058 | ||
0802f6a2 PB |
21059 | 2007-02-06 Paolo Bonzini <bonzini@gnu.org> |
21060 | ||
21061 | * Make-lang.in (ada/decl.o): Add gt-ada-decl.h dependency. | |
21062 | * decl.c: Include gt-ada-decl.h. | |
21063 | (annotate_value_cache): New. | |
21064 | (annotate_value): Use it instead of TREE_COMPLEXITY. | |
21065 | ||
326f9a75 KH |
21066 | 2007-02-03 Kazu Hirata <kazu@codesourcery.com> |
21067 | ||
21068 | * misc.c, utils2.c: Fix comment typos. | |
21069 | ||
cd259a98 RS |
21070 | 2007-01-24 Roger Sayle <roger@eyesopen.com> |
21071 | ||
21072 | * decl.c (gnat_to_gnu_entity): Use TREE_OVERFLOW instead of | |
21073 | TREE_CONSTANT_OVERFLOW. | |
21074 | (allocatable_size_p, annotate_value): Likewise. | |
21075 | * trans.c (gnat_to_gnu): Likewise. | |
21076 | * utils.c (unchecked_convert): Likewise. | |
21077 | * utils2.c (build_simple_component_ref): Likewise. | |
21078 | ||
5305be7e RG |
21079 | 2007-01-23 Richard Guenther <rguenther@suse.de> |
21080 | ||
21081 | PR bootstrap/30541 | |
21082 | * Make-lang.in: Replace invocations of gnatmake with $(GNATMAKE). | |
21083 | (gnatboot2): Pass staged GNATMAKE instead of STAGE_PREFIX. | |
21084 | (gnatboot3): Likewise. | |
21085 | (GNATBIND): Do not define. | |
21086 | * Makefile.in (GNATBIND): Do not define. | |
21087 | ||
2ac7cbb5 RG |
21088 | 2007-01-08 Richard Guenther <rguenther@suse.de> |
21089 | ||
21090 | * cuintp.c (build_cst_from_int): Use built_int_cst_type. | |
21091 | * trans.c (gnat_to_gnu): Likewise. | |
21092 | ||
2989d30c GK |
21093 | 2006-12-07 Geoffrey Keating <geoffk@apple.com> |
21094 | ||
21095 | * Makefile.in: Replace CROSS_COMPILE with CROSS_DIRECTORY_STRUCTURE. | |
21096 | * adaint.c: Likewise. | |
21097 | ||
5848e34a EB |
21098 | 2006-12-05 Aldy Hernandez <aldyh@redhat.com> |
21099 | ||
6f7f72f9 | 21100 | Merge from gimple-tuples-branch: |
5848e34a | 21101 | 2006-11-02 Aldy Hernandez <aldyh@redhat.com> |
6f7f72f9 | 21102 | |
5848e34a EB |
21103 | * ada-tree.h (lang_tree_node): Handle gimple tuples. |
21104 | * trans.c (gnat_gimplify_expr): Replace MODIFY_EXPR with | |
21105 | GIMPLE_MODIFY_STMT. | |
21106 | ||
d3c56bc8 KH |
21107 | 2006-12-02 Kazu Hirata <kazu@codesourcery.com> |
21108 | ||
21109 | * Makefile.in, mingw32.h, trans.c: Fix comment typos. | |
21110 | * gnat_rm.texi, gnat_ugn.texi: Follow spelling conventions. | |
21111 | Fix typos. | |
21112 | ||
9fa25ead EB |
21113 | 2006-11-17 Eric Botcazou <ebotcazou@adacore.com> |
21114 | ||
21115 | PR ada/27936 | |
21116 | * trans.c (add_decl_expr): Do not dynamically elaborate padded objects | |
21117 | if the initializer takes into account the padding. | |
21118 | ||
f9f770a8 RG |
21119 | 2006-11-11 Richard Guenther <rguenther@suse.de> |
21120 | ||
21121 | * trans.c (maybe_stabilize_reference): Remove handling of | |
21122 | FIX_CEIL_EXPR, FIX_FLOOR_EXPR and FIX_ROUND_EXPR. | |
21123 | ||
75c0ed05 AC |
21124 | 2006-11-05 Arnaud Charlet <charlet@adacore.com> |
21125 | ||
ed41063a | 21126 | PR ada/29707 |
75c0ed05 AC |
21127 | * s-osinte-linux-alpha.ads, s-osinte-linux-hppa.ads |
21128 | (To_Target_Priority): New function. | |
75c0ed05 | 21129 | |
70198b9f AC |
21130 | 2006-10-31 Robert Dewar <dewar@adacore.com> |
21131 | ||
21132 | * a-taster.adb, s-traent-vms.adb, a-elchha.ads, a-elchha.adb, | |
21133 | a-exctra.adb, ali-util.adb, exp_disp.ads, s-stalib.ads, s-traent.adb, | |
21134 | s-addope.ads, s-addope.adb, a-rbtgso.adb, a-crbltr.ads, a-coprnu.adb, | |
21135 | a-cgcaso.adb, a-cgarso.adb, a-cgaaso.adb, a-coormu.adb, a-ciormu.adb, | |
21136 | a-rbtgso.ads, a-stunha.adb, a-stunha.adb, a-ciorma.adb, a-coorma.adb, | |
21137 | a-secain.adb, a-slcain.adb, a-shcain.adb, a-stwiha.adb, a-stwiha.adb, | |
21138 | a-strhas.adb, a-strhas.adb, a-stzhas.adb, a-stzhas.adb, a-szuzha.adb, | |
21139 | a-chacon.adb, a-chacon.adb, a-chacon.ads, a-stboha.adb, a-swbwha.adb, | |
21140 | a-szbzha.adb: Minor reformatting. Fix header. | |
21141 | ||
21142 | * a-numaux-x86.adb: Add parentheses for use of unary minus | |
21143 | * a-ngcefu.adb: Supply missing parentheses for unary minus | |
21144 | * a-ngcoty.adb: Add parens for use of unary minus | |
21145 | * a-ngelfu.adb: Add missing parens for unary minus | |
21146 | * a-tifiio.adb: Add parentheses for uses of unary minus | |
21147 | ||
21148 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21149 | Bob Duff <duff@adacore.com> | |
21150 | Ed Schonberg <schonberg@adacore.com> | |
21151 | ||
6f7f72f9 | 21152 | * sem_res.adb (Resolve_Unary_Op): Add warning for use of unary minus |
70198b9f AC |
21153 | with multiplying operator. |
21154 | (Expected_Type_Is_Any_Real): New function to determine from the Parent | |
21155 | pointer whether the context expects "any real type". | |
21156 | (Resolve_Arithmetic_Op): Do not give an error on calls to the | |
21157 | universal_fixed "*" and "/" operators when they are used in a context | |
21158 | that expects any real type. Also set the type of the node to | |
21159 | Universal_Real in this case, because downstream processing requires it | |
21160 | (mainly static expression evaluation). | |
21161 | Reword some continuation messages | |
21162 | Add some \\ sequences to continuation messages | |
21163 | (Resolve_Call): Refine infinite recursion case. The test has been | |
21164 | sharpened to eliminate some false positives. | |
21165 | Check for Current_Task usage now includes entry barrier, and is now a | |
21166 | warning, not an error. | |
21167 | (Resolve): If the call is ambiguous, indicate whether an interpretation | |
21168 | is an inherited operation. | |
21169 | (Check_Aggr): When resolving aggregates, skip associations with a box, | |
21170 | which are priori correct, and will be replaced by an actual default | |
21171 | expression in the course of expansion. | |
21172 | (Resolve_Type_Conversion): Add missing support for conversion from | |
21173 | a class-wide interface to a tagged type. Minor code cleanup. | |
21174 | (Valid_Tagged_Converion): Add support for abstact interface type | |
21175 | conversions. | |
21176 | (Resolve_Selected_Component): Call Generate_Reference here rather than | |
21177 | during analysis, and use May_Be_Lvalue to distinguish read/write. | |
21178 | (Valid_Array_Conversion): New procedure, abstracted from | |
21179 | Valid_Conversion, to incorporate accessibility checks for arrays of | |
21180 | anonymous access types. | |
21181 | (Valid_Conversion): For a conversion to a numeric type occurring in an | |
21182 | instance or inlined body, no need to check that the operand type is | |
21183 | numeric, since this has been checked during analysis of the template. | |
21184 | Remove legacy test for scope name Unchecked_Conversion. | |
21185 | ||
21186 | * sem_res.ads: Minor reformatting | |
21187 | ||
21188 | * a-except.adb, a-except-2005.adb: Turn off subprogram ordering | |
21189 | (PE_Current_Task_In_Entry_Body): New exception code | |
21190 | (SE_Restriction_Violation): Removed, not used | |
21191 | ||
21192 | * a-except.ads: Update comments. | |
21193 | ||
21194 | * types.h, types.ads: Add definition for Validity_Check | |
21195 | (PE_Current_Task_In_Entry_Body): New exception code | |
21196 | (SE_Restriction_Violation): Removed, not used | |
21197 | ||
21198 | 2006-10-31 Thomas Quinot <quinot@adacore.com> | |
21199 | ||
21200 | * g-socthi-vxworks.adb (C_Gethostbyname): Fix wrong test for returned | |
21201 | error status. | |
21202 | ||
21203 | 2006-10-31 Hristian Kirtchev <kirtchev@adacore.com> | |
21204 | Jose Ruiz <ruiz@adacore.com> | |
21205 | ||
21206 | * a-calend-vms.adb (Leap_Sec_Ops): Temp body for package in private | |
21207 | part of Ada.Calendar: all subprogram raise Unimplemented. | |
21208 | (Split_W_Offset): Temp function body, raising Unimplemented | |
21209 | ||
9e81dbc7 | 21210 | * a-calend.ads, a-calend-vms.ads: |
70198b9f AC |
21211 | Add imported variable Invalid_TZ_Offset used to designate targets unable |
21212 | to support time zones. | |
21213 | (Unimplemented): Temporary function raised by the body of new | |
21214 | subprograms below. | |
21215 | (Leap_Sec_Ops): New package in the private part of Ada.Calendar. This | |
21216 | unit provides handling of leap seconds and is used by the new Ada 2005 | |
21217 | packages Ada.Calendar.Arithmetic and Ada.Calendar.Formatting. | |
21218 | (Split_W_Offset): Identical spec to that of Ada.Calendar.Split. This | |
21219 | version returns an extra value which is the offset to UTC. | |
21220 | ||
21221 | * a-calend.adb (Split_W_Offset): Add call to localtime_tzoff. | |
21222 | (Leap_Sec_Ops): New body for package in private part of Ada.Calendar. | |
21223 | (Split_W_Offset): New function body. | |
21224 | (Time_Of): When a date is close to UNIX epoch, compute the time for | |
21225 | that date plus one day (that amount is later substracted after | |
21226 | executing mktime) so there are no problems with time zone adjustments. | |
21227 | ||
21228 | * a-calend-mingw.adb: Remove Windows specific version no longer needed. | |
21229 | ||
21230 | * a-calari.ads, a-calari.adb, a-calfor.ads, a-calfor.adb, | |
21231 | a-catizo.ads, a-catizo.adb: New files. | |
21232 | ||
6f7f72f9 | 21233 | * impunit.adb: Add new Ada 2005 entries |
70198b9f AC |
21234 | |
21235 | * sysdep.c: Add external variable __gnat_invalid_tz_offset. | |
21236 | Rename all occurences of "__gnat_localtime_r" to | |
21237 | "__gnat_localtime_tzoff". | |
21238 | (__gnat_localtime_tzoff for Windows): Add logic to retrieve the time | |
21239 | zone data and calculate the GMT offset. | |
21240 | (__gnat_localtime_tzoff for Darwin, Free BSD, Linux, Lynx and Tru64): | |
21241 | Use the field "tm_gmtoff" to extract the GMT offset. | |
21242 | (__gnat_localtime_tzoff for AIX, HPUX, SGI Irix and Sun Solaris): Use | |
21243 | the external variable "timezone" to calculate the GMT offset. | |
21244 | ||
21245 | 2006-10-31 Arnaud Charlet <charlet@adacore.com> | |
21246 | Jose Ruiz <ruiz@adacore.com> | |
21247 | ||
9e81dbc7 AS |
21248 | * s-osinte-posix.adb, s-osinte-linux.ads, s-osinte-freebsd.adb, |
21249 | s-osinte-freebsd.ads, s-osinte-solaris-posix.ads, s-osinte-hpux.ads, | |
70198b9f AC |
21250 | s-osinte-darwin.adb, s-osinte-darwin.ads, s-osinte-lynxos-3.ads, |
21251 | s-osinte-lynxos-3.adb (To_Target_Priority): New function maps from | |
21252 | System.Any_Priority to a POSIX priority on the target. | |
21253 | ||
9e81dbc7 | 21254 | * system-linux-ia64.ads: |
70198b9f AC |
21255 | Extend range of Priority types on Linux to use the whole range made |
21256 | available by the system. | |
21257 | ||
21258 | * s-osinte-aix.adb, s-osinte-aix.ads (To_Target_Priority): New | |
21259 | function maps from System.Any_Priority to a POSIX priority on the | |
21260 | target. | |
21261 | (PTHREAD_PRIO_PROTECT): Set real value. | |
21262 | (PTHREAD_PRIO_INHERIT): Now a function. | |
21263 | (SIGCPUFAIL): New signal. | |
21264 | (Reserved): Add SIGALRM1, SIGWAITING, SIGCPUFAIL, since these signals | |
21265 | are documented as reserved by the OS. | |
21266 | ||
21267 | * system-aix.ads: Use the full range of priorities provided by the | |
21268 | system on AIX. | |
21269 | ||
21270 | * s-taprop-posix.adb: Call new function To_Target_Priority. | |
21271 | (Set_Priority): Take into account Task_Dispatching_Policy and | |
21272 | Priority_Specific_Dispatching pragmas when determining if Round Robin | |
21273 | must be used for scheduling the task. | |
21274 | ||
9e81dbc7 | 21275 | * system-linux-x86_64.ads, system-linux-x86.ads, |
70198b9f AC |
21276 | system-linux-ppc.ads: Extend range of Priority types on Linux to use |
21277 | the whole range made available by the system. | |
21278 | ||
9e81dbc7 AS |
21279 | * s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-irix.adb, |
21280 | s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-hpux-dce.adb, | |
70198b9f AC |
21281 | s-taprop-lynxos.adb (Finalize_TCB): invalidate the stack-check cache |
21282 | when deallocating the TCB in order to avoid potential references to | |
21283 | deallocated data. | |
21284 | (Set_Priority): Take into account Task_Dispatching_Policy and | |
21285 | Priority_Specific_Dispatching pragmas when determining if Round Robin | |
21286 | or FIFO within priorities must be used for scheduling the task. | |
21287 | ||
21288 | * s-taprop-vxworks.adb (Enter_Task): Store the user-level task id in | |
21289 | the Thread field (to be used internally by the run-time system) and the | |
21290 | kernel-level task id in the LWP field (to be used by the debugger). | |
21291 | (Create_Task): Reorganize to unify the calls to taskSpawn into a single | |
21292 | instance, and propagate the current task options to the spawned task. | |
21293 | (Set_Priority): Take into account Priority_Specific_Dispatching pragmas. | |
21294 | (Initialize): Set Round Robin dispatching when the corresponding pragma | |
21295 | is in effect. | |
21296 | ||
21297 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21298 | ||
9e81dbc7 AS |
21299 | * system-vms_64.ads, system-darwin-ppc.ads, system-vxworks-x86.ads, |
21300 | system-linux-hppa.ads, system-hpux-ia64.ads, | |
21301 | system-lynxos-ppc.ads, system-lynxos-x86.ads, system-tru64.ads, | |
21302 | system-vxworks-sparcv9.ads, system-solaris-x86.ads, | |
21303 | system-irix-o32.ads, system-irix-n32.ads, system-hpux.ads, | |
21304 | system-vxworks-m68k.ads, system-vxworks-mips.ads, system-interix.ads, | |
21305 | system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads, | |
21306 | system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads, | |
70198b9f AC |
21307 | system-vxworks-alpha.ads, system.ads: Add pragma Warnings(Off, |
21308 | Default_Bit_Order) to kill constant condition warnings for references | |
21309 | to this switch. | |
21310 | ||
21311 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
21312 | Eric Botcazou <ebotcazou@adacore.com> | |
21313 | ||
21314 | * mlib-tgt-lynxos.adb, mlib-tgt-mingw.adb, mlib-tgt-tru64.adb, | |
21315 | mlib-tgt-aix.adb, mlib-tgt-irix.adb, mlib-tgt-hpux.adb, | |
21316 | mlib-tgt-linux.adb, mlib-tgt-solaris.adb: Use Append_To, instead of | |
21317 | Ext_To, when building the library file name | |
21318 | ||
21319 | * mlib-tgt-vxworks.adb: ditto. | |
21320 | (Get_Target_Suffix): Add support for x86 targets. | |
21321 | ||
21322 | * mlib-fil.ads, mlib-fil.adb: (Append_To): New function | |
21323 | ||
9e81dbc7 | 21324 | * mlib-tgt-darwin.adb: |
70198b9f AC |
21325 | Use Append_To, instead of Ext_To, when building the library file name |
21326 | (Flat_Namespace): New global variable. | |
21327 | (No_Shared_Libgcc_Switch): Rename to No_Shared_Libgcc_Options. | |
21328 | (Shared_Libgcc_Switch): Rename to With_Shared_Libgcc_Options. | |
21329 | (Link_Shared_Libgcc): Delete. | |
21330 | (Build_Dynamic_Library): Adjust for above changes. | |
21331 | Use Opt package. | |
21332 | (Build_Dynamic_Library): Pass -shared-libgcc if GCC 4 or later. | |
21333 | ||
21334 | 2006-10-31 Eric Botcazou <ebotcazou@adacore.com> | |
21335 | ||
21336 | * s-taprop-solaris.adb: (Time_Slice_Val): Change type to Integer. | |
21337 | (Initialize): Add type conversions required by above change. | |
21338 | ||
21339 | 2006-10-31 Jose Ruiz <ruiz@adacore.com> | |
21340 | ||
9e81dbc7 | 21341 | * s-osinte-vxworks.ads, s-osinte-vxworks.adb: |
70198b9f AC |
21342 | (getpid): New body for this function that uses the underlying taskIdSelf |
21343 | function for VxWorks 5 and VxWorks 6 in kernel mode. | |
21344 | (unsigned_int): New type, modular to allow logical bit operations. | |
21345 | (taskOptionsGet): New imported function. | |
21346 | ||
21347 | * s-taspri-vxworks.ads (Private_Data): Change the type for the LWP | |
21348 | field to be compliant with the type used by the corresponding operating | |
21349 | system primitive. | |
21350 | ||
21351 | 2006-10-31 Pascal Obry <obry@adacore.com> | |
21352 | Eric Botcazou <ebotcazou@adacore.com> | |
21353 | Vincent Celier <celier@adacore.com> | |
21354 | ||
21355 | * adaint.c (__gnat_get_libraries_from_registry): Call explicitly the | |
21356 | ASCII version of the registry API. This is needed as the GNAT runtime | |
21357 | is now UNICODE by default. | |
21358 | Include version.h. | |
21359 | (get_gcc_version): Do not hardcode the return value. | |
21360 | (__gnat_file_time_name): On Windows properly set the default returned | |
21361 | value to -1 which corresponds to Invalid_Time. | |
21362 | (__gnat_fopen): New routine. A simple wrapper on all plateforms | |
21363 | except on Windows where it does conversion for unicode support. | |
21364 | (__gnat_freopen): Idem. | |
21365 | (__gnat_locate_exec_on_path): If environment variable PATH does not | |
21366 | exist, return a NULL pointer | |
21367 | ||
21368 | * adaint.h: (__gnat_fopen): Declare. | |
21369 | (__gnat_freopen): Likewise. | |
21370 | ||
21371 | * mingw32.h (_tfreopen): Define this macro here for older MingW | |
21372 | version. | |
21373 | Activate the unicode support on platforms using a MingW runtime | |
21374 | version 3.9 or newer. | |
21375 | ||
21376 | * s-crtl.ads (fopen): Is now an import to the wrapper __gnat_freopen. | |
21377 | This is needed for proper unicode support on Windows. | |
21378 | (freopen): Idem. | |
21379 | ||
21380 | 2006-10-31 Eric Botcazou <ebotcazou@adacore.com> | |
21381 | Nicolas Setton <setton@adacore.com> | |
21382 | Olivier Hainque <hainque@adacore.com> | |
21383 | Gary Dismukes <dismukes@adacore.com> | |
21384 | ||
21385 | * gigi.h: (tree_code_for_record_type): Declare. | |
21386 | (add_global_renaming_pointer): Rename to record_global_renaming_pointer. | |
21387 | (get_global_renaming_pointers): Rename to | |
21388 | invalidate_global_renaming_pointers. | |
21389 | (static_ctors): Delete. | |
21390 | (static_dtors): Likewise. | |
21391 | (gnat_write_global_declarations): Declare. | |
21392 | (create_var_decl): Adjust descriptive comment to indicate that the | |
21393 | subprogram may return a CONST_DECL node. | |
21394 | (create_true_var_decl): Declare new function, similar to | |
21395 | create_var_decl but forcing the creation of a VAR_DECL node. | |
21396 | (get_global_renaming_pointers): Declare. | |
21397 | (add_global_renaming_pointer): Likewise. | |
21398 | ||
21399 | * ada-tree.h (DECL_READONLY_ONCE_ELAB): New macro. | |
21400 | ||
21401 | * decl.c (gnat_to_gnu_entity) <case E_Function>: Don't copy the type | |
21402 | tree before setting TREE_ADDRESSABLE for by-reference return mechanism | |
21403 | processing. | |
21404 | (gnat_to_gnu_entity): Remove From_With_Type from computation for | |
21405 | imported_p. | |
21406 | <E_Access_Type>: Use the Non_Limited_View as the full view of the | |
21407 | designated type if the pointer comes from a limited_with clause. Make | |
21408 | incomplete designated type if it is in the main unit and has a freeze | |
21409 | node. | |
21410 | <E_Incomplete_Type>: Rework to treat Non_Limited_View, Full_View, and | |
21411 | Underlying_Full_View similarly. Return earlier if the full view already | |
21412 | has an associated tree. | |
21413 | (gnat_to_gnu_entity) <E_Record_Type>: Restore comment. | |
21414 | (gnat_to_gnu_entity) <E_Record_Type>: Do not use a dummy type. | |
21415 | (gnat_to_gnu_entity) <E_Variable>: Set TYPE_REF_CAN_ALIAS_ALL on the | |
21416 | reference type built for objects with an address clause. | |
21417 | Use create_true_var_decl with const_flag set for | |
21418 | DECL_CONST_CORRESPONDING_VARs, ensuring a VAR_DECL is created with | |
21419 | TREE_READONLY set. | |
21420 | (gnat_to_gnu_entity, case E_Enumeration_Type): Set TYPE_NAME | |
21421 | for Character and Wide_Character types. This info is read by the | |
21422 | dwarf-2 writer, and is needed to be able to use the command "ptype | |
21423 | character" in the debugger. | |
21424 | (gnat_to_gnu_entity): When generating a type representing | |
21425 | a Character or Wide_Character type, set the flag TYPE_STRING_FLAG, | |
21426 | so that debug writers can distinguish it from ordinary integers. | |
21427 | (elaborate_expression_1): Test the DECL_READONLY_ONCE_ELAB flag in | |
21428 | addition to TREE_READONLY to assert the constantness of variables for | |
21429 | elaboration purposes. | |
21430 | (gnat_to_gnu_entity, subprogram cases): Change loops on formal | |
21431 | parameters to call new Einfo function First_Formal_With_Extras. | |
21432 | (gnat_to_gnu_entity): In type_annotate mode, replace a discriminant of a | |
21433 | protected type with its corresponding discriminant, to obtain a usable | |
21434 | declaration | |
21435 | (gnat_to_gnu_entity) <E_Access_Protected_Subprogram_Type>: Be prepared | |
21436 | for a multiple elaboration of the "equivalent" type. | |
21437 | (gnat_to_gnu_entity): Adjust for renaming of add_global_renaming_pointer | |
21438 | into record_global_renaming_pointer. | |
21439 | (gnat_to_gnu_entity) <E_Array_Type>: Do not force | |
21440 | TYPE_NONALIASED_COMPONENT to 0 if the element type is an aggregate. | |
21441 | <E_Array_Subtype>: Likewise. | |
21442 | (gnat_to_gnu_entity) <E_Incomplete_Subtype>: Add support for regular | |
21443 | incomplete subtypes and incomplete subtypes of incomplete types visible | |
21444 | through a limited with clause. | |
21445 | (gnat_to_gnu_entity) <E_Array_Subtype>: Take into account the bounds of | |
21446 | the base index type for the maximum size of the array only if they are | |
21447 | constant. | |
21448 | (gnat_to_gnu_entity, renaming object case): Do not wrap up the | |
21449 | expression into a SAVE_EXPR if stabilization failed. | |
21450 | ||
21451 | * utils.c (create_subprog_decl): Turn TREE_ADDRESSABLE on the type of | |
21452 | a result decl into DECL_BY_REFERENCE on this decl, now what is expected | |
21453 | by lower level compilation passes. | |
21454 | (gnat_genericize): New function, lowering a function body to GENERIC. | |
21455 | Turn the type of RESULT_DECL into a real reference type if the decl | |
21456 | has been marked DECL_BY_REFERENCE, and adjust references to the latter | |
21457 | accordingly. | |
21458 | (gnat_genericize_r): New function. Tree walking callback for | |
21459 | gnat_genericize. | |
21460 | (convert_from_reference, is_byref_result): New functions. Helpers for | |
21461 | gnat_genericize_r. | |
21462 | (create_type_decl): Call gnat_pushdecl before calling | |
21463 | rest_of_decl_compilation, to make sure that field TYPE_NAME of | |
21464 | type_decl is properly set before calling the debug information writers. | |
21465 | (write_record_type_debug_info): The heuristics which compute the | |
21466 | alignment of a field in a variant record might not be accurate. Add a | |
21467 | safety test to make sure no alignment is set to a smaller value than | |
21468 | the alignment of the field type. | |
21469 | (make_dummy_type): Use the Non_Limited_View as the underlying type if | |
21470 | the type comes from a limited_with clause. Do not loop on the full view. | |
21471 | (GET_GNU_TREE, SET_GNU_TREE, PRESENT_GNU_TREE): New macros. | |
21472 | (dummy_node_table): New global variable, moved from decl.c. | |
21473 | (GET_DUMMY_NODE, SET_DUMMY_NODE, PRESENT_DUMMY_NODE): New macros. | |
21474 | (save_gnu_tree): Use above macros. | |
21475 | (get_gnu_tree): Likewise. | |
21476 | (present_gnu_tree): Likewise. | |
21477 | (init_dummy_type): New function, moved from decl.c. Use above macros. | |
21478 | (make_dummy_type): Likewise. | |
21479 | (tree_code_for_record_type): New function extracted from make_dummy_type | |
21480 | (init_gigi_decls): Set DECL_IS_MALLOC on gnat_malloc. | |
21481 | (static_ctors): Change it to a vector, make static. | |
21482 | (static_dtors): Likewise. | |
21483 | (end_subprog_body): Adjust for above change. | |
21484 | (build_global_cdtor): Moved from trans.c. | |
21485 | (gnat_write_global_declarations): Emit global constructor and | |
21486 | destructor, and call cgraph_optimize before emitting debug info for | |
21487 | global declarations. | |
21488 | (global_decls): New global variable. | |
21489 | (gnat_pushdecl): Store the global declarations in global_decls, for | |
21490 | later use. | |
21491 | (gnat_write_global_declarations): Emit debug information for global | |
21492 | declarations. | |
21493 | (create_var_decl_1): Former create_var_decl, with an extra argument to | |
21494 | state whether the creation of a CONST_DECL is allowed. | |
21495 | (create_var_decl): Behavior unchanged. Now a wrapper around | |
21496 | create_var_decl_1 allowing CONST_DECL creation. | |
21497 | (create_true_var_decl): New function, similar to create_var_decl but | |
21498 | forcing the creation of a VAR_DECL node (CONST_DECL not allowed). | |
21499 | (create_field_decl): Do not always mark the field as addressable | |
21500 | if its type is an aggregate. | |
21501 | (global_renaming_pointers): New static variable. | |
21502 | (add_global_renaming_pointer): New function. | |
21503 | (get_global_renaming_pointers): Likewise. | |
21504 | ||
21505 | * misc.c (gnat_dwarf_name): New function. | |
21506 | (LANG_HOOKS_DWARF_NAME): Define to gnat_dwarf_name. | |
21507 | (gnat_post_options): Add comment about structural alias analysis. | |
21508 | (gnat_parse_file): Do not call cgraph_optimize here. | |
21509 | (LANG_HOOKS_WRITE_GLOBALS): Define to gnat_write_global_declarations. | |
21510 | ||
21511 | * trans.c (process_freeze_entity): Don't abort if we already have a | |
21512 | non dummy GCC tree for a Concurrent_Record_Type, as it might | |
21513 | legitimately have been elaborated while processing the associated | |
21514 | Concurrent_Type prior to this explicit freeze node. | |
21515 | (Identifier_to_gnu): Do not make a variable referenced in a SJLJ | |
21516 | exception handler volatile if it is of variable size. | |
21517 | (process_type): Remove bypass for types coming from a limited_with | |
21518 | clause. | |
21519 | (call_to_gnu): When processing the copy-out of a N_Type_Conversion GNAT | |
21520 | actual, convert the corresponding gnu_actual to the real destination | |
21521 | type when necessary. | |
21522 | (add_decl_expr): Set the DECL_READONLY_ONCE_ELAB flag on variables | |
21523 | originally TREE_READONLY but whose elaboration cannot be performed | |
21524 | statically. | |
21525 | Part of fix for F504-021. | |
21526 | (tree_transform, subprogram cases): Change loops on formal parameters to | |
21527 | call new Einfo function First_Formal_With_Extras. | |
21528 | (gnat_to_gnu) <N_Op_Shift_Right_Arithmetic>: Ignore constant overflow | |
21529 | stemming from type conversion for the lhs. | |
21530 | (Attribute_to_gnu) <Attr_Alignment>: Also divide the alignment by the | |
21531 | number of bits per unit for components of records. | |
21532 | (gnat_to_gnu) <N_Code_Statement>: Mark operands addressable if needed. | |
21533 | (Handled_Sequence_Of_Statements_to_gnu): Register the cleanup associated | |
21534 | with At_End_Proc after the SJLJ EH cleanup. | |
21535 | (Compilation_Unit_to_gnu): Call elaborate_all_entities only on the main | |
21536 | compilation unit. | |
21537 | (elaborate_all_entities): Do not retest type_annotate_only. | |
21538 | (tree_transform) <N_Abstract_Subprogram_Declaration>: Process the | |
21539 | result type of an abstract subprogram, which may be an itype associated | |
21540 | with an anonymous access result (related to AI-318-02). | |
21541 | (build_global_cdtor): Move to utils.c. | |
21542 | (Case_Statement_to_gnu): Avoid adding the choice of a when statement if | |
21543 | this choice is not a null tree nor an integer constant. | |
21544 | (gigi): Run unshare_save_expr via walk_tree_without_duplicates | |
21545 | on the body of elaboration routines instead of mark_unvisited. | |
21546 | (add_stmt): Do not mark the tree. | |
21547 | (add_decl_expr): Tweak comment. | |
21548 | (mark_unvisited): Delete. | |
21549 | (unshare_save_expr): New static function. | |
21550 | (call_to_gnu): Issue an error when making a temporary around a | |
21551 | procedure call because of non-addressable actual parameter if the | |
21552 | type of the formal is by_reference. | |
21553 | (Compilation_Unit_to_gnu): Invalidate the global renaming pointers | |
21554 | after building the elaboration routine. | |
21555 | ||
21556 | 2006-10-31 Bob Duff <duff@adacore.com> | |
21557 | ||
21558 | * a-filico.adb (Finalize(List_Controller)): Mark the finalization list | |
21559 | as finalization-started, so we can raise Program_Error on 'new'. | |
21560 | ||
21561 | * s-finimp.adb: Raise Program_Error on 'new' if finalization of the | |
21562 | collection has already started. | |
21563 | ||
21564 | * s-finimp.ads (Collection_Finalization_Started): Added new special | |
21565 | flag value for indicating that a collection's finalization has started. | |
21566 | ||
21567 | * s-tassta.adb (Create_Task): Raise Program_Error on an attempt to | |
21568 | create a task whose master has already waited for dependent tasks. | |
21569 | ||
21570 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21571 | ||
21572 | * lib.adb, lib.ads: (In_Predefined_Unit): New functions | |
21573 | ||
9e81dbc7 AS |
21574 | * a-finali.ads, a-ngcoty.ads, a-strbou.ads, a-stream.ads, a-strmap.ads, |
21575 | a-strunb.ads, a-stwibo.ads, a-stwima.ads, a-stwiun.ads, a-taside.ads, | |
21576 | a-coorse.ads, a-convec.ads, a-coinve.ads, a-cohama.ads, a-ciorse.ads, | |
21577 | a-cihama.ads, a-cihase.ads, a-cohase.ads, a-ciorma.ads, a-coorma.ads, | |
21578 | a-ciormu.ads, a-coormu.ads, a-stzbou.ads, a-stzmap.ads, a-stzunb.ads, | |
70198b9f AC |
21579 | a-except-2005.ads: Add pragma Preelaborable_Warning |
21580 | ||
21581 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21582 | Jose Ruiz <ruiz@adacore.com> | |
21583 | ||
21584 | * a-dispat.ads, a-dispat.adb, a-diroro.ads, a-diroro.adb: New files. | |
21585 | ||
21586 | * ali.adb (Get_Name): Properly handle scanning of wide character names | |
21587 | encoded with brackets notation. | |
21588 | (Known_ALI_Lines): Add S lines to this list. | |
21589 | (Scan_ALI): Acquire S (priority specific dispatching) lines. | |
21590 | New flag Elaborate_All_Desirable in unit table | |
21591 | ||
21592 | * ali.ads (Priority_Specific_Dispatching): Add this range of | |
21593 | identifiers to be used for Priority_Specific_Dispatching table entries. | |
21594 | (ALIs_Record): Add First_Specific_Dispatching and | |
21595 | Last_Specific_Dispatching that point to the first and last entries | |
21596 | respectively in the priority specific dispatching table for this unit. | |
21597 | (Specific_Dispatching): Add this table for storing each S (priority | |
21598 | specific dispatching) line encountered in the input ALI file. | |
21599 | New flag Elaborate_All_Desirable in unit table | |
21600 | ||
21601 | * bcheck.adb: (Check_Configuration_Consistency): Add call to | |
21602 | Check_Consistent_Dispatching_Policy. | |
21603 | (Check_Consistent_Dispatching_Policy): Add this procedure in charge of | |
21604 | verifying that the use of Priority_Specific_Dispatching, | |
21605 | Task_Dispatching_Policy, and Locking_Policy is consistent across the | |
21606 | partition. | |
21607 | ||
21608 | * bindgen.adb: (Public_Version_Warning): function removed. | |
21609 | (Set_PSD_Pragma_Table): Add this procedure in charge of getting the | |
21610 | required information from ALI files in order to initialize the table | |
21611 | containing the specific dispatching policy. | |
21612 | (Gen_Adainit_Ada): Generate the variables required for priority specific | |
21613 | dispatching entries (__gl_priority_specific_dispatching and | |
21614 | __gl_num_specific_dispatching). | |
21615 | (Gen_Adainit_C): Generate the variables required for priority specific | |
21616 | dispatching entries (__gl_priority_specific_dispatching and | |
21617 | __gl_num_specific_dispatching). | |
21618 | (Gen_Output_File): Acquire settings for Priority_Specific_Dispatching | |
21619 | pragma entries. | |
21620 | (Gen_Restrictions_String_1, Gen_Restrictions_String_2): Removed. | |
21621 | (Gen_Restrictions_Ada, Gen_Restrictions_C, Set_Boolean): New procedures. | |
21622 | (Tab_To): Removed. | |
21623 | (Gen_Output_File_Ada/_C): Set directly __gl_xxx variables instead of | |
21624 | a call to gnat_set_globals. | |
21625 | Generate a string containing settings from | |
21626 | Priority_Specific_Dispatching pragma entries. | |
21627 | (Gen_Object_Files_Options): Do not include the runtime libraries when | |
21628 | pragma No_Run_Time is specified. | |
21629 | ||
21630 | * init.c (__gnat_install_handler, case FreeBSD): Use SA_SIGINFO, for | |
21631 | consistency with s-intman-posix.adb. | |
21632 | (__gnat_error_handler, case FreeBSD): Account for the fact that the | |
21633 | handler is installed with SA_SIGINFO. | |
21634 | (__gnat_adjust_context_for_raise, FreeBSD case): New function for | |
21635 | FreeBSD ZCX support, copied from Linux version. | |
21636 | Add MaRTE-specific definitions for the linux target. Redefine sigaction, | |
21637 | sigfillset, and sigemptyset so the routines defined by MaRTE. | |
21638 | (__gl_priority_specific_dispatching): Add this variable that stores the | |
21639 | string containing priority specific dispatching policies in the | |
21640 | partition. | |
21641 | (__gl_num_specific_dispatching): Add this variable that indicates the | |
21642 | highest priority for which a priority specific dispatching pragma | |
21643 | applies. | |
21644 | (__gnat_get_specific_dispatching): Add this routine that returns the | |
21645 | priority specific dispatching policy, as set by a | |
21646 | Priority_Specific_Dispatching pragma appearing anywhere in the current | |
21647 | partition. The input argument is the priority number, and the result | |
21648 | is the upper case first character of the policy name. | |
21649 | (__gnat_set_globals): Now a dummy function. | |
21650 | (__gnat_handle_vms_condition): Feed adjust_context_for_raise with | |
21651 | mechargs instead of sigargs, as the latter can be retrieved from the | |
21652 | former and sigargs is not what we want on ia64. | |
21653 | (__gnat_adjust_context_for_raise, alpha-vms): Fetch sigargs from the | |
21654 | mechargs argument. | |
21655 | (__gnat_adjust_context_for_raise, ia64-vms): New function. | |
21656 | (tasking_error): Remove unused symbol. | |
21657 | (_abort_signal): Move this symbol to the IRIX specific part since this | |
21658 | is the only target that uses this definition. | |
21659 | (Check_Abort_Status): Move this symbol to the IRIX specific part since | |
21660 | this is the only target that uses this definition. | |
21661 | (Lock_Task): Remove unused symbol. | |
21662 | (Unlock_Task): Remove unused symbol. | |
21663 | ||
21664 | * lib-writ.adb (Write_ALI): Output new S lines for | |
21665 | Priority_Specific_Dispatching pragmas. | |
21666 | Implement new flag BD for elaborate body desirable | |
21667 | ||
21668 | * lib-writ.ads: Document S lines for Priority Specific Dispatching. | |
21669 | (Specific_Dispatching): Add this table for storing the entries | |
21670 | corresponding to Priority_Specific_Dispatching pragmas. | |
21671 | Document new BD flag for elaborate body desirable | |
21672 | ||
21673 | * par-prag.adb (Prag): Add Priority_Specific_Dispatching to the list | |
21674 | of known pragmas. | |
21675 | ||
21676 | 2006-10-31 Javier Miranda <miranda@adacore.com> | |
21677 | ||
9e81dbc7 | 21678 | * a-tags.ads, a-tags.adb: |
70198b9f AC |
21679 | (Predefined_DT): New function that improves readability of the code. |
21680 | (Get_Predefined_Prim_Op_Address, Set_Predefined_Prim_Op_Address, | |
21681 | Inherit_DT): Use the new function Predefined_DT to improve code | |
21682 | readability. | |
21683 | (Register_Interface_Tag): Update assertion. | |
21684 | (Set_Interface_Table): Update assertion. | |
21685 | (Interface_Ancestor_Tags): New subprogram required to implement AI-405: | |
21686 | determining progenitor interfaces in Tags. | |
21687 | (Inherit_CPP_DT): New subprogram. | |
21688 | ||
6f7f72f9 | 21689 | * exp_disp.adb (Expand_Interface_Thunk): Suppress checks during the |
70198b9f | 21690 | analysis of the thunk code. |
6f7f72f9 EB |
21691 | (Expand_Interface_Conversion): Handle run-time conversion of |
21692 | access to class wide types. | |
70198b9f AC |
21693 | (Expand_Dispatching_Call): When generating the profile for the |
21694 | subprogram itype for a dispatching operation, properly terminate the | |
21695 | formal parameters chaind list (set the Next_Entity of the last formal | |
21696 | to Empty). | |
21697 | (Collect_All_Interfaces): Removed. This routine has been moved to | |
21698 | sem_util and renamed as Collect_All_Abstract_Interfaces. | |
21699 | (Set_All_DT_Position): Hidden entities associated with abstract | |
21700 | interface primitives are not taken into account in the check for | |
21701 | 3.9.3(10); this check is done with the aliased entity. | |
21702 | (Make_DT, Set_All_DT_Position): Enable full ABI compatibility for | |
21703 | interfacing with CPP by default. | |
21704 | (Expand_Interface_Conversion): Add missing support for static conversion | |
21705 | from an interface to a tagged type. | |
21706 | (Collect_All_Interfaces): Add new out formal containing the list of | |
21707 | abstract interface types to cleanup the subprogram Make_DT. | |
21708 | (Make_DT): Update the code to generate the table of interfaces in case | |
21709 | of abstract interface types. | |
21710 | (Is_Predefined_Dispatching_Alias): New function that returns true if | |
21711 | a primitive is not a predefined dispatching primitive but it is an | |
21712 | alias of a predefined dispatching primitive. | |
21713 | (Make_DT): If the ancestor of the type is a CPP_Class and we are | |
21714 | compiling under full ABI compatibility mode we avoid the generation of | |
21715 | calls to run-time services that fill the dispatch tables because under | |
21716 | this mode we currently inherit the dispatch tables in the IP subprogram. | |
21717 | (Write_DT): Emit an "is null" indication for a null procedure primitive. | |
21718 | (Expand_Interface_Conversion): Use an address as the type of the formal | |
21719 | of the internally built function that handles the case in which the | |
21720 | target type is an access type. | |
21721 | ||
21722 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21723 | ||
21724 | * binde.adb (Better_Choice, Worse_Choice): Implement new preferences. | |
21725 | ||
21726 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21727 | ||
21728 | * bindusg.ads, bindusg.adb: | |
21729 | Change to package and rename procedure as Display, which | |
21730 | now ensures that it only outputs usage information once. | |
21731 | ||
21732 | 2006-10-31 Jose Ruiz <ruiz@adacore.com> | |
21733 | ||
21734 | * cal.c: Use the header sys/time.h for VxWorks 6.2 or greater when | |
21735 | using RTPs. | |
21736 | ||
21737 | * mkdir.c: Use a different version of mkdir for VxWorks 6.2 or greater | |
21738 | when using RTPs. | |
21739 | ||
21740 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21741 | Ed Schonberg <schonberg@adacore.com> | |
21742 | ||
21743 | * treepr.adb: Use new subtype N_Membership_Test | |
21744 | ||
6f7f72f9 EB |
21745 | * checks.ads, checks.adb: Add definition for Validity_Check |
21746 | (Range_Or_Validity_Checks_Suppressed): New function | |
21747 | (Ensure_Valid): Test Validity_Check suppressed | |
21748 | (Insert_Valid_Check): Test Validity_Check suppressed | |
21749 | (Insert_Valid_Check): Preserve Do_Range_Check flag | |
70198b9f AC |
21750 | (Validity_Check_Range): New procedure |
21751 | (Expr_Known_Valid): Result of membership test is always valid | |
21752 | (Selected_Range_Checks): Range checks cannot be applied to discriminants | |
21753 | by themselves. Disabling those checks must also be done for task types, | |
21754 | where discriminants may be used for the bounds of entry families. | |
21755 | (Apply_Address_Clause_Check): Remove side-effects if address expression | |
21756 | is non-static and is not the name of a declared constant. | |
21757 | (Null_Exclusion_Static_Checks): Extend to handle Function_Specification. | |
21758 | Code cleanup and new error messages. | |
21759 | (Enable_Range_Check): Test for some cases of suppressed checks | |
21760 | (Generate_Index_Checks): Suppress index checks if index checks are | |
21761 | suppressed for array object or array type. | |
21762 | (Apply_Selected_Length_Checks): Give warning for compile-time detected | |
21763 | length check failure, even if checks are off. | |
21764 | (Ensure_Valid): Do not generate a check on an indexed component whose | |
21765 | prefix is a packed boolean array. | |
21766 | * checks.adb: (Alignment_Checks_Suppressed): New function | |
21767 | (Apply_Address_Clause_Check): New procedure, this is a completely | |
21768 | rewritten replacement for Apply_Alignment_Check | |
21769 | (Get_E_Length/Get_E_First_Or_Last): Add missing barrier to ensure that | |
21770 | we request a discriminal value only in case of discriminants. | |
21771 | (Apply_Discriminant_Check): For Ada_05, only call Get_Actual_Subtype for | |
21772 | assignments where the target subtype is unconstrained and the target | |
21773 | object is a parameter or dereference (other aliased cases are known | |
21774 | to be unconstrained). | |
21775 | ||
21776 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21777 | ||
21778 | * clean.adb, gnatname.adb, gnatsym.adb, prep.adb, prep.ads, | |
21779 | prepcomp.adb, prj.ads, prj-strt.adb, sem_maps.ads, | |
21780 | vms_conv.adb: Fix bad table increment values (much too small) | |
21781 | ||
21782 | * table.adb (Realloc): Make sure we get at least some new elements | |
21783 | Defends against silly small values for table increment | |
21784 | ||
21785 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21786 | Ed Schonberg <schonberg@adacore.com> | |
21787 | Bob Duff <duff@adacore.com> | |
21788 | ||
21789 | * einfo.ads, einfo.adb (Obsolescent_Warning): Now defined on all | |
21790 | entities. Move other fields around to make this possible | |
21791 | (Is_Derived_Type): Add missing call to Is_Type. | |
21792 | (Extra_Formals): New function for subprograms, entries, subprogram | |
21793 | types. | |
21794 | (Set_Extra_Formals): New procedure for subprograms, entries, subp types. | |
21795 | (First_Formal_With_Extras): New function for subprogs, entries, subp | |
21796 | types. | |
21797 | (Write_Field28_Name): New procedure for node display of "Extra_Formals". | |
21798 | Add node information for E_Return_Statement. | |
21799 | (Elaborate_Body_Desirable): New flag | |
21800 | (Is_Return_By_Reference_Type): Rename Is_Return_By_Reference_Type | |
21801 | to be Is_Inherently_Limited_Type, because return-by-reference has | |
21802 | no meaning in Ada 2005. | |
21803 | (E_Return_Statement): New entity kind. | |
21804 | (Return_Applies_To): Field of E_Return_Statement. | |
21805 | (Is_Return_Object): New flag in object entities. | |
21806 | (Is_Dynamic_Scope): Make it True for E_Return_Statement. | |
21807 | (Must_Have_Preelab_Init): New flag | |
21808 | (Known_To_Have_Preelab_Init): New flag | |
21809 | (Is_Formal_Object): Move from Sem_Ch8 body to Einfo | |
21810 | (Is_Visible_Formal): New flag on entities in formal packages. | |
21811 | (Low_Bound_Known): New flag | |
21812 | (Non_Limited_View, Set_Non_Limited_View): Add membership test agains | |
21813 | Incomplete_Kind. | |
21814 | (Write_Field17_Name): Correct spelling of Non_Limited_View. Add name | |
21815 | output when Id is an incomplete subtype. | |
21816 | ||
21817 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21818 | ||
21819 | * errout.ads, errout.adb (Finalize): Implement switch -gnatd.m | |
21820 | Avoid abbreviation Creat | |
21821 | (Finalize): List all sources in extended mail source if -gnatl | |
21822 | switch is active. | |
21823 | Suppress copyright notice to file in -gnatl=f mode if -gnatd7 set | |
21824 | (Finalize): Implement new -gnatl=xxx switch to output listing to file | |
21825 | (Set_Specific_Warning_On): New procedure | |
21826 | (Set_Specific_Warning_Off): New procedure | |
21827 | Add implementation of new insertion \\ | |
21828 | (Error_Msg_Internal): Add handling for Error_Msg_Line_Length | |
21829 | (Unwind_Internal_Type): Improve report on anonymous access_to_subprogram | |
21830 | types. | |
21831 | (Error_Msg_Internal): Make sure that we set Last_Killed to | |
21832 | True when a message from another package is suppressed. | |
21833 | Implement insertion character ~ (insert string) | |
21834 | (First_Node): Minor adjustments to get better placement. | |
21835 | ||
9e81dbc7 | 21836 | * frontend.adb: |
70198b9f AC |
21837 | Implement new -gnatl=xxx switch to output listing to file |
21838 | ||
9e81dbc7 | 21839 | * gnat1drv.adb: |
70198b9f AC |
21840 | Implement new -gnatl=xxx switch to output listing to file |
21841 | ||
6f7f72f9 | 21842 | * opt.ads: (Warn_On_Questionable_Missing_Paren): New switch |
70198b9f AC |
21843 | (Commands_To_Stdout): New flag |
21844 | Implement new -gnatl=xxx switch to output listing to file | |
21845 | New switch Dump_Source_Text | |
21846 | (Warn_On_Deleted_Code): New warning flag for -gnatwt | |
21847 | Define Error_Msg_Line_Length | |
21848 | (Warn_On_Assumed_Low_Bound): New switch | |
21849 | ||
21850 | * osint.ads, osint.adb | |
21851 | (Normalize_Directory_Name): Fix bug. | |
21852 | Implement new -gnatl=xxx switch to output listing to file | |
21853 | (Concat): Removed, replaced by real concatenation | |
21854 | Make use of concatenation now allowed in compiler | |
21855 | (Executable_Prefix.Get_Install_Dir): First get the full path, so that | |
21856 | we find the 'lib' or 'bin' directory even when the tool has been | |
21857 | invoked with a relative path. | |
21858 | (Executable_Name): New function taking string parameters. | |
21859 | ||
9e81dbc7 | 21860 | * osint-c.ads, osint-c.adb: |
70198b9f AC |
21861 | Implement new -gnatl=xxx switch to output listing to file |
21862 | ||
21863 | * sinput-d.adb: Change name Creat_Debug_File to Create_Debug_File | |
21864 | ||
9e81dbc7 | 21865 | * switch-c.adb: |
70198b9f AC |
21866 | Implement new -gnatl=xxx switch to output listing to file |
21867 | Recognize new -gnatL switch | |
21868 | (no longer keep in old warning about old style usage) | |
21869 | Use concatenation to simplify code | |
21870 | Recognize -gnatjnn switch | |
21871 | (Scan_Front_End_Switches): Clean up handling of -gnatW | |
21872 | (Scan_Front_End_Switches): Include Warn_On_Assumed_Low_Bound for -gnatg | |
21873 | ||
21874 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21875 | ||
21876 | * erroutc.ads, erroutc.adb (Set_Specific_Warning_On): New procedure | |
21877 | (Set_Specific_Warning_Off): New procedure | |
21878 | (Warning_Specifically_Suppressed): New function | |
21879 | (Validate_Specific_Warnings): New procedure | |
21880 | (Output_Msg_Text): Complete rewrite to support -gnatjnn | |
21881 | ||
21882 | * err_vars.ads: Implement insertion character ~ (insert string) | |
21883 | ||
21884 | 2006-10-31 Bob Duff <duff@adacore.com> | |
21885 | Ed Schonberg <schonberg@adacore.com> | |
21886 | ||
21887 | * exp_aggr.adb (Build_Record_Aggr_Code): For extension aggregates, if | |
21888 | the parent part is a build-in-place function call, generate assignments. | |
21889 | (Expand_Record_Aggregate): Call Convert_To_Assignments if any components | |
21890 | are build-in-place function calls. | |
21891 | (Replace_Self_Reference): New subsidiary of | |
21892 | Make_OK_Assignment_Statement, to replace an access attribute that is a | |
21893 | self-reference into an access to the appropriate component of the | |
21894 | target object. Generalizes previous mechanism to handle self-references | |
21895 | nested at any level. | |
21896 | (Is_Self_Referential_Init): Remove, not needed. | |
21897 | (Is_Self_Referential_Init): New predicate to simplify handling of self | |
21898 | referential components in record aggregates. | |
21899 | (Has_Default_Init_Comps, Make_OK_Assignment_Statement): Add guard to | |
21900 | check for presence of entity before checking for self-reference. | |
21901 | (Has_Default_Init_Comps): Return True if a component association is a | |
21902 | self-reference to the enclosing type, which can only come from a | |
21903 | default initialization. | |
21904 | (Make_OK_Assignment_Statement): If the expression is of the form | |
21905 | Typ'Acc, where Acc is an access attribute, the expression comes from a | |
21906 | default initialized self-referential component. | |
21907 | (Build_Record_Aggr_Code): If the type of the aggregate is a tagged type | |
21908 | that has been derived from several abstract interfaces we must also | |
21909 | initialize the tags of the secondary dispatch tables. | |
21910 | ||
21911 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
21912 | Thomas Quinot <quinot@adacore.com> | |
21913 | Javier Miranda <miranda@adacore.com> | |
21914 | Robert Dewar <dewar@adacore.com> | |
6f7f72f9 | 21915 | |
9e81dbc7 | 21916 | * exp_attr.adb: |
6f7f72f9 EB |
21917 | (Expand_Access_To_Protected_Op): If the context indicates that an access |
21918 | to a local operation may be transfered outside of the object, create an | |
21919 | access to the wrapper operation that must be used in an external call. | |
70198b9f AC |
21920 | (Expand_N_Attribute_Reference, case Attribute_Valid): For the AAMP |
21921 | target, pass the Valid attribute applied to a floating-point prefix on | |
21922 | to the back end without expansion. | |
21923 | (Storage_Size): Use the new run-time function Storage_Size to retrieve | |
21924 | the allocated storage when it is specified by a per-object expression. | |
21925 | (Expand_N_Attribute_Reference): Add case for Attribute_Stub_Type. | |
21926 | Nothing to do here, the attribute has been rewritten during semantic | |
21927 | analysis. | |
21928 | (Expand_Attribute_Reference): Handle expansion of the new Priority | |
21929 | attribute | |
21930 | (Find_Fat_Info): Handle case of universal real | |
21931 | (Expand_Access_To_Protected_Op): Fix use of access to protected | |
21932 | subprogram from inside the body of a protected entry. | |
21933 | (Expand_Access_To_Protected_Op): Common procedure for the expansion of | |
21934 | 'Access and 'Unrestricted_Access, to transform the attribute reference | |
21935 | into a fat pointer. | |
21936 | (Is_Constrained_Aliased_View): New predicate to help determine whether a | |
21937 | subcomponent's enclosing variable is aliased with a constrained subtype. | |
21938 | (Expand_N_Attribute_Reference, case Attribute_Constrained): For Ada_05, | |
21939 | test Is_Constrained_Aliased_View rather than Is_Aliased_View, because | |
21940 | an aliased prefix must be known to be constrained in order to use True | |
21941 | for the attribute value, and now it's possible for some aliased views | |
21942 | to be unconstrained. | |
21943 | ||
21944 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
21945 | ||
21946 | * exp_ch2.adb: Change Is_Lvalue to May_Be_Lvalue | |
21947 | (Expand_Entity_Reference): Correct error of not handling subprogram | |
21948 | formals in current_value processing. | |
21949 | ||
21950 | 2006-10-31 Javier Miranda <miranda@adacore.com> | |
21951 | Robert Dewar <dewar@adacore.com> | |
21952 | Ed Schonberg <schonberg@adacore.com> | |
21953 | Gary Dismukes <dismukes@adacore.com> | |
21954 | ||
6f7f72f9 | 21955 | * exp_ch3.ads, exp_ch3.adb (Expand_N_Object_Declaration): Do not |
70198b9f AC |
21956 | register in the final list objects containing class-wide interfaces; |
21957 | otherwise we incorrectly register the tag of the interface in the final | |
21958 | list. | |
6f7f72f9 EB |
21959 | (Make_Controlling_Function_Wrappers): Add missing barrier to do not |
21960 | generate the wrapper if the parent primitive is abstract. This is | |
21961 | required to report the correct error message. | |
21962 | (Expand_N_Subtype_Indication): Do validity checks on range | |
70198b9f AC |
21963 | (Clean_Task_Names): If an initialization procedure includes a call to |
21964 | initialize a task (sub)component, indicate that the procedure will use | |
21965 | the secondary stack. | |
21966 | (Build_Init_Procedure, Init_Secondary_Tags): Enable full ABI | |
21967 | compatibility for interfacing with CPP by default. | |
21968 | (Expand_N_Object_Declaration): Only build an Adjust call when the | |
21969 | object's type is a nonlimited controlled type. | |
21970 | * exp_ch3.adb: Add with and use of Exp_Ch6. | |
21971 | (Expand_N_Object_Declaration): Check for object initialization that is a | |
21972 | call to build-in-place function and apply Make_Build_In_Place_Call_In_ | |
21973 | Object_Declaration to the call. | |
21974 | (Freeze_Type): When the designated type of an RACW was not frozen at the | |
21975 | point where the RACW was declared, validate the primitive operations | |
21976 | with respect to E.2.2(14) when it finally is frozen. | |
21977 | (Build_Initialization_Call,Expand_Record_Controller): Rename | |
21978 | Is_Return_By_Reference_Type to be Is_Inherently_Limited_Type, because | |
21979 | return-by-reference has no meaning in Ada 2005. | |
21980 | (Init_Secondary_Tags): Add missing call to Set_Offset_To_Top | |
21981 | to register tag of the immediate ancestor interfaces in the | |
21982 | run-time structure. | |
21983 | (Init_Secondary_Tags): Moved to the specification to allow the | |
21984 | initialization of extension aggregates with abstract interfaces. | |
21985 | (Build_Master_Renaming): Make public, for use by function declarations | |
21986 | whose return type is an anonymous access type. | |
21987 | (Freeze_Record_Type): Replace call to Insert_List_Before by call to | |
21988 | Insert_List_Before_And_Analyze after the generation of the specs | |
21989 | associated with null procedures. | |
21990 | (Expand_Tagged_Root): Update documentation in its specification. | |
21991 | (Init_Secondary_Tags): Update documentation. | |
21992 | (Build_Init_Procedure): If we are compiling under CPP full ABI compa- | |
21993 | tibility mode and the immediate ancestor is a CPP_Pragma tagged type | |
21994 | then generate code to inherit the contents of the dispatch table | |
21995 | directly from the ancestor. | |
21996 | (Expand_Record_Controller): Insert controller component after tags of | |
21997 | implemented interfaces. | |
21998 | (Freeze_Record_Type): Call new procedure Make_Null_Procedure_Specs to | |
21999 | create null procedure overridings when null procedures are inherited | |
22000 | from interfaces. | |
22001 | (Make_Null_Procedure_Specs): New procedure to generate null procedure | |
22002 | declarations for overriding null primitives inherited from interfaces. | |
22003 | (Is_Null_Interface_Procedure): New function in | |
22004 | Make_Null_Procedure_Specs. | |
22005 | (Make_Predefined_Primitive_Specs/Predefined_Primitive_Bodies): If the | |
22006 | immediate ancestor of a tagged type is an abstract interface type we | |
22007 | must generate the specification of the predefined primitives associated | |
22008 | with controlled types (because the dispatch table of the ancestor is | |
22009 | null and hence these entries cannot be inherited). This is required to | |
22010 | elaborate well the dispatch table. | |
22011 | ||
22012 | 2006-10-31 Javier Miranda <miranda@adacore.com> | |
22013 | Ed Schonberg <schonberg@adacore.com> | |
22014 | Bob Duff <duff@adacore.com> | |
22015 | Gary Dismukes <dismukes@adacore.com> | |
22016 | Robert Dewar <dewar@adacore.com> | |
6f7f72f9 EB |
22017 | |
22018 | * exp_ch4.adb (Expand_N_Type_Conversion): Handle missing interface type | |
70198b9f | 22019 | conversion. |
6f7f72f9 | 22020 | (Expand_N_In): Do validity checks on range |
70198b9f AC |
22021 | (Expand_Selected_Component): Use updated for of Denotes_Discriminant. |
22022 | (Expand_N_Allocator): For "new T", if the object is constrained by | |
22023 | discriminant defaults, allocate the right amount of memory, rather than | |
22024 | the maximum for type T. | |
22025 | (Expand_Allocator_Expression): Suppress the call to Remove_Side_Effects | |
22026 | when the allocator is initialized by a build-in-place call, since the | |
22027 | allocator is already rewritten as a reference to the function result, | |
22028 | and this prevents an unwanted duplication of the function call. | |
22029 | Add with and use of Exp_Ch6. | |
22030 | (Expand_Allocator_Expresssion): Check for an allocator whose expression | |
22031 | is a call to build-in-place function and apply | |
22032 | Make_Build_In_Place_Call_In_Allocator to the call (for both tagged and | |
22033 | untagged designated types). | |
22034 | (Expand_N_Unchecked_Type_Conversion): Do not do integer literal | |
22035 | optimization if source or target is biased. | |
22036 | (Expand_N_Allocator): Add comments for case of an allocator within a | |
22037 | function that returns an anonymous access type designating tasks. | |
22038 | (Expand_N_Allocator): apply discriminant checks for access | |
22039 | discriminants of anonymous access types (AI-402, AI-416) | |
22040 | ||
22041 | 2006-10-31 Bob Duff <duff@adacore.com> | |
22042 | Robert Dewar <dewar@adacore.com> | |
22043 | Gary Dismukes <dismukes@adacore.com> | |
22044 | Ed Schonberg <schonberg@adacore.com> | |
22045 | ||
22046 | * exp_ch5.ads (Expand_N_Extended_Return_Statement): New procedure. | |
22047 | ||
6f7f72f9 | 22048 | * exp_ch5.adb (Expand_N_Loop_Statement): Do validity checks on range |
70198b9f AC |
22049 | (Expand_N_Assignment_Statement): Call |
22050 | Make_Build_In_Place_Call_In_Assignment if the right-hand side is a | |
22051 | build-in-place function call. Currently, this can happen only for | |
22052 | assignments that come from aggregates. | |
22053 | Add -gnatd.l --Use Ada 95 semantics for limited function returns, | |
22054 | in order to alleviate the upward compatibility introduced by AI-318. | |
22055 | (Expand_N_Extended_Return_Statement): Add support for handling the | |
22056 | return object as a build-in-place result. | |
22057 | (Expand_Non_Function_Return): Implement simple return statements nested | |
22058 | within an extended return. | |
22059 | (Enable_New_Return_Processing): Turn on the new processing of return | |
22060 | statements. | |
22061 | (Expand_Non_Function_Return): For a return within an extended return, | |
22062 | don't raise Program_Error, because Sem_Ch6 now gives a warning. | |
22063 | (Expand_N_Extended_Return_Statement): Implement AI-318 | |
22064 | (Expand_Simple_Function_Return): Ditto. | |
22065 | (Expand_N_If_Statement): Handle new -gnatwt warning | |
22066 | (Expand_N_Case_Statement): Handle new -gnatwt warning | |
22067 | (Expand_N_Assignment): Handle assignment to the Priority attribute of | |
22068 | a protected object. | |
22069 | (Expand_N_Assignment_Statement): Implement -gnatVe/E to control | |
22070 | validity checking of assignments to elementary record components. | |
22071 | (Expand_N_Return_Statement): return Class Wide types on the secondary | |
22072 | stack independantly of their controlled status since with HIE runtimes, | |
22073 | class wide types are not potentially controlled anymore. | |
22074 | ||
22075 | * expander.adb (Expand): Add case for new N_Extended_Return_Statement | |
22076 | node kind. | |
22077 | ||
22078 | * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Avoid | |
22079 | Expand_Cleanup_Actions in case of N_Extended_Return_Statement, because | |
22080 | it expects a block, procedure, or task. The return statement will get | |
22081 | turned into a block, and Expand_Cleanup_Actions will happen then. | |
22082 | ||
22083 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22084 | Ed Schonberg <schonberg@adacore.com> | |
22085 | Bob Duff <duff@adacore.com> | |
22086 | Gary Dismukes <dismukes@adacore.com> | |
22087 | ||
22088 | * exp_ch6.ads, exp_ch6.adb: Use new Validity_Check suppression | |
22089 | capability. | |
22090 | (Expand_Inlined_Call): Tagged types are by-reference types, and | |
22091 | therefore should be replaced by a renaming declaration in the expanded | |
22092 | body, as is done for limited types. | |
22093 | (Expand_Call): If this is a call to a function with dispatching access | |
22094 | result, propagate tag from context. | |
22095 | (Freeze_Subprogram): Enable full ABI compatibility for interfacing with | |
22096 | CPP by default. | |
22097 | (Make_Build_In_Place_Call_In_Assignment): New procedure to do | |
22098 | build-in-place when the right-hand side of an assignment is a | |
22099 | build-in-place function call. | |
22100 | (Make_Build_In_Place_Call_In_Allocator): Apply an unchecked conversion | |
22101 | of the explicit dereference of the allocator to the result subtype of | |
22102 | the build-in-place function. This is needed to satisfy type checking | |
22103 | in cases where the caller's return object is created by an allocator for | |
22104 | a class-wide access type and the type named in the allocator is a | |
22105 | specific type. | |
22106 | (Make_Build_In_Place_Call_In_Object_Declaration): Apply an unchecked | |
22107 | conversion of the reference to the declared object to the result subtype | |
22108 | of the build-in-place function. This is needed to satisfy type checking | |
22109 | in cases where the declared object has a class-wide type. Also, in the | |
22110 | class-wide case, change the type of the object entity to the specific | |
22111 | result subtype of the function, to avoid passing a class-wide object | |
22112 | without explicit initialization to the back end. | |
22113 | (Register_Interface_DT_Entry): Moved outside the body of | |
22114 | Freeze_Subprogram because this routine is now public; it is called from | |
22115 | Check_Dispatching_Overriding to handle late overriding of abstract | |
22116 | interface primitives. | |
22117 | (Add_Access_Actual_To_Build_In_Place_Call): New utility procedure for | |
22118 | adding an implicit access actual on a call to a build-in-place function. | |
22119 | (Expand_Actuals): Test for an actual parameter that is a call to a | |
22120 | build-in-place function and apply | |
22121 | Make_Build_In_Place_Call_In_Anonymous_Context to the call. | |
22122 | (Is_Build_In_Place_Function): New function to determine whether an | |
22123 | entity is a function whose calls should be handled as build-in-place. | |
22124 | (Is_Build_In_Place_Function_Call): New function to determine whether an | |
22125 | expression is a function call that should handled as build-in-place. | |
22126 | (Make_Build_In_Place_Call_In_Allocator): New procedure for handling | |
22127 | calls to build-in-place functions as the initialization of an allocator. | |
22128 | (Make_Build_In_Place_Call_In_Anonymous_Context): New procedure for | |
22129 | handling calls to build-in-place functions in contexts that do not | |
22130 | involve init of a separate object (for example, actuals of subprogram | |
22131 | calls). | |
22132 | (Make_Build_In_Place_Call_In_Object_Declaration): New procedure for | |
22133 | handling calls to build-in-place functions as the initialization of an | |
22134 | object declaration. | |
22135 | (Detect_Infinite_Recursion): Add explicit parameter Process to | |
22136 | instantiation of Traverse_Body to avoid unreferenced warning. | |
22137 | (Check_Overriding_Inherited_Interfaces): Removed. | |
22138 | (Register_Interface_DT_Entry): Code cleanup. | |
22139 | (Register_Predefined_DT_Entry): Code cleanup. | |
22140 | (Expand_Inlined_Call.Rewrite_Procedure_Call): Do not omit block around | |
22141 | inlined statements if within a transient scope. | |
22142 | (Expand_Inlined_Call.Process_Formals): When replacing occurrences of | |
22143 | formal parameters with occurrences of actuals in inlined body, establish | |
22144 | visibility on the proper view of the actual's subtype for the body's | |
22145 | context. | |
22146 | (Freeze_Subprogram): Do nothing if we are compiling under full ABI | |
22147 | compatibility mode and we have an imported CPP subprogram because | |
22148 | for now we assume that imported CPP primitives correspond with | |
22149 | objects whose constructor is in the CPP side (and therefore we | |
22150 | don't need to generate code to register them in the dispatch table). | |
22151 | (Expand_Actuals): Introduce copy of actual, only if it might be a bit- | |
22152 | aligned selected component. | |
22153 | (Add_Call_By_Copy_Node): Add missing code to handle the case in which | |
22154 | the actual of an in-mode parameter is a type conversion. | |
22155 | (Expand_Actuals): If the call does not come from source and the actual | |
22156 | is potentially misaligned, let gigi handle it rather than rejecting the | |
22157 | (Expand_N_Subprogram_Body, Freeze_Subprogram): set subprograms returning | |
22158 | Class Wide types as returning by reference independantly of their | |
22159 | controlled status since with HIE runtimes class wide types are not | |
22160 | potentially controlled anymore. | |
22161 | ||
6f7f72f9 | 22162 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> |
70198b9f | 22163 | |
6f7f72f9 | 22164 | * exp_ch9.adb (Update_Prival_Types): Simplify code for entity |
70198b9f AC |
22165 | references that are private components of the protected object. |
22166 | (Build_Barrier_Function): Set flag Is_Entry_Barrier_Function | |
22167 | (Update_Prival_Subtypes): Add explicit Process argument to Traverse_Proc | |
22168 | instantiation to deal with warnings. | |
22169 | (Initialize_Protection): If expression for priority is non-static, use | |
22170 | System_Priority as its expected type, in case the expression has not | |
22171 | been analyzed yet. | |
22172 | ||
22173 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22174 | ||
22175 | * exp_dbug.ads, exp_dbug.adb (Get_External_Name): Add missing | |
22176 | initialization of Homonym_Len. | |
22177 | (Fully_Qualify_Name): Remove kludge to eliminate anonymous block | |
22178 | names from fully qualified name. Fixes problem of duplicate | |
22179 | external names differing only in the presence of such a block name. | |
22180 | ||
22181 | 2006-10-31 Thomas Quinot <quinot@adacore.com> | |
22182 | Pablo Oliveira <oliveira@adacore.com> | |
6f7f72f9 EB |
22183 | |
22184 | * exp_dist.adb (Get_Subprogram_Ids): This function will no more assign | |
70198b9f AC |
22185 | subprogram Ids, even if they are not yet assigned. |
22186 | (Build_Subprogram_Id): It is now this function that will take care of | |
22187 | calling Assign_Subprogram_Ids if necessary. | |
22188 | (Add_Receiving_Stubs_To_Declarations): Checking the subprograms ids | |
22189 | should be done only once they are assigned. | |
22190 | (Build_From_Any_Function, case of tagged types): Add missing call to | |
22191 | Allocate_Buffer. | |
22192 | (Corresponding_Stub_Type): New subprogram. Returns the associated stub | |
22193 | type for an RACW type. | |
22194 | (Add_RACW_Features): When processing an RACW declaration for which the | |
22195 | designated type is already frozen, enforce E.2.2(14) rules immediately. | |
22196 | (GARLIC_Support.Build_Subprogram_Receiving_Stubs): Do not perform any | |
22197 | special reordering of controlling formals. | |
22198 | ||
22199 | * exp_dist.ads (Corresponding_Stub_Type): New subprogram. Returns the | |
22200 | associated stub type for an RACW type. | |
22201 | ||
22202 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
22203 | ||
22204 | * exp_fixd.adb (Rounded_Result_Set): For multiplication and division of | |
22205 | fixed-point operations in an integer context, i.e. as operands of a | |
22206 | conversion to an integer type, indicate that result must be rounded. | |
22207 | ||
22208 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22209 | ||
22210 | * exp_imgv.adb (Expand_Image_Attribute): For Wide_[Wide_]Character | |
22211 | cases, pass the encoding method, since it is now required by the run | |
22212 | time. | |
22213 | ||
22214 | * s-valwch.ads, s-valwch.adb (Value_Wide_Wide_Character): Avoid | |
22215 | assumption that Str'First = 1. | |
22216 | (Value_Wide_Character): Takes EM (encoding method) parameter and passes | |
22217 | it on to the Value_Wide_Wide_Character call. | |
22218 | (Value_Wide_Wide_Character): Takes EM (encoding method) parameter and | |
22219 | properly handles a string of the form quote-encoded_wide_char-quote. | |
22220 | ||
22221 | * s-wchcnv.adb: Minor reformatting | |
22222 | ||
22223 | 2006-10-31 Javier Miranda <miranda@adacore.com> | |
6f7f72f9 | 22224 | |
70198b9f AC |
22225 | * exp_intr.adb (Expand_Dispatching_Constructor_Call): Add missing |
22226 | run-time membership test to ensure that the constructed object | |
22227 | implements the target abstract interface. | |
22228 | ||
22229 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22230 | ||
22231 | * exp_prag.adb (Expand_Pragma_Common_Object): Use a single | |
22232 | Machine_Attribute pragma internally to implement the user pragma. | |
22233 | Add processing for pragma Interface so that it is now completely | |
22234 | equivalent to pragma Import. | |
22235 | ||
22236 | * sem_prag.adb (Analyze_Pragma, case Obsolescent): Extend this pragma | |
22237 | so that it can be applied to all entities, including record components | |
22238 | and enumeration literals. | |
22239 | (Analyze_Pragma, case Priority_Specific_Dispatching): Check whether | |
22240 | priority ranges are correct, verify compatibility against task | |
22241 | dispatching and locking policies, and if everything is correct an entry | |
22242 | is added to the table containing priority specific dispatching entries | |
22243 | for this compilation unit. | |
22244 | (Delay_Config_Pragma_Analyze): Delay processing | |
22245 | Priority_Specific_Dispatching pragmas because when processing the | |
22246 | pragma we need to access run-time data, such as the range of | |
22247 | System.Any_Priority. | |
22248 | (Sig_Flags): Add Pragma_Priority_Specific_Dispatching. | |
22249 | Allow pragma Unreferenced as a context item | |
22250 | Add pragma Preelaborable_Initialization | |
22251 | (Analyze_Pragma, case Interface): Interface is extended so that it is | |
22252 | now syntactically and semantically equivalent to Import. | |
22253 | (Analyze_Pragma, case Compile_Time_Warning): Fix error of blowups on | |
22254 | insertion characters. | |
22255 | Add handling for Pragma_Wide_Character_Encoding | |
22256 | (Process_Restrictions_Restriction_Warnings): Ensure that a warning | |
22257 | never supercedes a real restriction, and that a real restriction | |
22258 | always supercedes a warning. | |
22259 | (Analyze_Pragma, case Assert): Set Low_Bound_Known if assert is of | |
22260 | appropriate form. | |
22261 | ||
22262 | 2006-10-31 Bob Duff <duff@adacore.com> | |
22263 | Ed Schonberg <schonberg@adacore.com> | |
22264 | Robert Dewar <dewar@adacore.com> | |
22265 | ||
22266 | * exp_ch7.adb (Build_Array_Deep_Procs, Build_Record_Deep_Procs, | |
22267 | Make_Deep_Record_Body): Rename Is_Return_By_Reference_Type to be | |
22268 | Is_Inherently_Limited_Type, because return-by-reference has no meaning | |
22269 | in Ada 2005. | |
22270 | (Find_Node_To_Be_Wrapped): Use new method of determining the result | |
22271 | type of the function containing a return statement, because the | |
22272 | Return_Type field was removed. We now use the Return_Applies_To field. | |
22273 | ||
6f7f72f9 | 22274 | * exp_util.ads, exp_util.adb: Use new subtype N_Membership_Test |
70198b9f AC |
22275 | (Build_Task_Image_Decl): If procedure is not called from an |
22276 | initialization procedure, indicate that function that builds task name | |
22277 | uses the sec. stack. Otherwise the enclosing initialization procedure | |
22278 | will carry the indication. | |
22279 | (Insert_Actions): Remove N_Return_Object_Declaration. We now use | |
22280 | N_Object_Declaration instead. | |
22281 | (Kill_Dead_Code): New interface to implement -gnatwt warning for | |
22282 | conditional dead code killed, and change implementation accordingly. | |
22283 | (Insert_Actions): Add N_Return_Object_Declaration case. | |
22284 | Correct comment to mention N_Extension_Aggregate node. | |
22285 | (Set_Current_Value_Condition): Call Safe_To_Capture_Value to avoid bad | |
22286 | attempts to save information for global variables which cannot be | |
22287 | safely tracked. | |
22288 | (Get_Current_Value_Condition): Handle conditions the other way round | |
22289 | (constant on left). Also handle right operand of AND and AND THEN | |
22290 | (Set_Current_Value_Condition): Corresponding changes | |
22291 | (Append_Freeze_Action): Remove unnecessary initialization of Fnode. | |
22292 | (Get_Current_Value_Condition): Handle simple boolean operands | |
22293 | (Get_Current_Value_Condition): Handle left operand of AND or AND THEN | |
22294 | (Get_Current_Value_Condition): If the variable reference is within an | |
22295 | if-statement, does not appear in the list of then_statments, and does | |
22296 | not come from source, treat it as being at unknown location. | |
22297 | (Get_Current_Value_Condition): Enhance to allow while statements to be | |
22298 | processed as well as if statements. | |
22299 | (New_Class_Wide_Subtype): The entity for a class-wide subtype does not | |
22300 | come from source. | |
22301 | (OK_To_Do_Constant_Replacement): Allow constant replacement within body | |
22302 | of loop. This is safe now that we fixed Kill_Current_Values. | |
22303 | (OK_To_Do_Constant_Replacement): Check whether current scope is | |
22304 | Standard, before examining outer scopes. | |
22305 | ||
22306 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22307 | ||
22308 | * krunch.ads, krunch.adb (Krunch): New Boolean parameter VMS_On_Target. | |
22309 | When True, apply VMS treatment to children of packages A, G, I and S. | |
22310 | For F320-016 | |
22311 | ||
22312 | * fname-uf.adb (Get_File_Name): Call Krunch with OpenVMS_On_Target | |
22313 | ||
22314 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22315 | Ed Schonberg <schonberg@adacore.com> | |
22316 | ||
22317 | * freeze.adb: Add handling of Last_Assignment field | |
22318 | (Warn_Overlay): Supply missing continuation marks in error msgs | |
22319 | (Freeze_Entity): Add check for Preelaborable_Initialization | |
22320 | ||
22321 | * g-comlin.adb: Add Warnings (Off) to prevent new warning | |
22322 | ||
22323 | * g-expect.adb: Add Warnings (Off) to prevent new warning | |
22324 | ||
22325 | * lib-xref.adb: Add handling of Last_Assignment field | |
22326 | (Generate_Reference): Centralize handling of pragma Obsolescent here | |
22327 | (Generate_Reference): Accept an implicit reference generated for a | |
22328 | default in an instance. | |
22329 | (Generate_Reference): Accept a reference for a node that is not in the | |
22330 | main unit, if it is the generic body corresponding to an subprogram | |
22331 | instantiation. | |
22332 | ||
22333 | * xref_lib.adb: Add pragma Warnings (Off) to avoid new warnings | |
22334 | ||
6f7f72f9 | 22335 | * sem_warn.ads, sem_warn.adb (Set_Warning_Switch): Add processing for |
70198b9f AC |
22336 | -gnatwq/Q. |
22337 | (Warn_On_Useless_Assignment): Suppress warning if enclosing inner | |
22338 | exception handler. | |
22339 | (Output_Obsolescent_Entity_Warnings): Rewrite to avoid any messages on | |
22340 | use clauses, to avoid messages on packages used to qualify, and also | |
22341 | to avoid messages from obsolescent units. | |
22342 | (Warn_On_Useless_Assignments): Don't generate messages for imported | |
22343 | and exported variables. | |
22344 | (Warn_On_Useless_Assignments): New procedure | |
22345 | (Output_Obsolescent_Entity_Warnings): New procedure | |
22346 | (Check_Code_Statement): New procedure | |
22347 | ||
6f7f72f9 | 22348 | * einfo.ads, einfo.adb (Has_Static_Discriminants): New flag |
70198b9f AC |
22349 | Change name Is_Ada_2005 to Is_Ada_2005_Only |
22350 | (Last_Assignment): New field for useless assignment warning | |
22351 | ||
22352 | 2006-10-31 Olivier Hainque <hainque@adacore.com> | |
22353 | ||
22354 | * g-alleve.adb (lvx, stvx): Ceil-Round the Effective Address to the | |
22355 | closest multiple of VECTOR_ALIGNMENT and not the closest multiple of 16. | |
22356 | ||
22357 | 2006-10-31 Bob Duff <duff@adacore.com> | |
22358 | Robert Dewar <dewar@adacore.com> | |
22359 | Ed Schonberg <schonberg@adacore.com> | |
22360 | ||
22361 | * g-awk.adb (Default_Session, Current_Session): Compile this file in | |
22362 | Ada 95 mode, because it violates the new rules for AI-318. | |
22363 | ||
22364 | * g-awk.ads: Use overloaded subprograms in every case where we used to | |
22365 | have a default of Current_Session. This makes the code closer to be | |
22366 | correct for both Ada 95 and 2005. | |
22367 | ||
22368 | * g-moreex.adb (Occurrence): Turn off warnings for illegal-in-Ada-2005 | |
22369 | code, relying on the fact that the compiler generates a warning | |
22370 | instead of an error in -gnatg mode. | |
22371 | ||
22372 | * lib-xref.ads (Xref_Entity_Letters): Add entry for new | |
22373 | E_Return_Statement entity kind. | |
22374 | Add an entry for E_Incomplete_Subtype in Xref_Entity_Letters. | |
22375 | ||
22376 | * par.adb (P_Interface_Type_Definition): Addition of one formal to | |
22377 | report an error if the reserved word abstract has been previously found. | |
22378 | (SS_End_Type): Add E_Return for new extended_return_statement syntax. | |
6f7f72f9 EB |
22379 | |
22380 | * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve message for | |
70198b9f AC |
22381 | parenthesized range attribute usage |
22382 | (P_Expression_No_Right_Paren): Add missing comment about error recovery. | |
22383 | ||
22384 | * par-ch6.adb (P_Return_Object_Declaration): AI-318: Allow "constant" | |
22385 | in the syntax for extended_return_statement. This is not in the latest | |
22386 | RM, but the ARG is expected to issue an AI allowing this. | |
22387 | (P_Return_Subtype_Indication,P_Return_Subtype_Indication): Remove | |
22388 | N_Return_Object_Declaration. We now use N_Object_Declaration instead. | |
22389 | (P_Return_Object_Declaration, P_Return_Subtype_Indication, | |
22390 | P_Return_Statement): Parse the new syntax for extended_return_statement. | |
22391 | ||
22392 | * par-endh.adb (Check_End, Output_End_Deleted, Output_End_Expected, | |
22393 | Output_End_Missing): Add error-recovery code for the new | |
22394 | extended_return_statement syntax; that is, the new E_Return entry on | |
22395 | the scope stack. | |
22396 | ||
22397 | * s-auxdec-vms_64.ads, s-auxdec.ads (AST_Handler): Change type from | |
22398 | limited to nonlimited, because otherwise we violate the new Ada 2005 | |
22399 | rules about returning limited types in function Create_AST_Handler in | |
22400 | s-asthan.adb. | |
22401 | ||
22402 | * sem.adb (Analyze): Add cases for new node kinds | |
22403 | N_Extended_Return_Statement and N_Return_Object_Declaration. | |
22404 | ||
22405 | * sem_aggr.adb (Aggregate_Constraint_Checks): Verify that component | |
22406 | type is in the same category as type of context before applying check, | |
22407 | to prevent anomalies in instantiations. | |
22408 | (Resolve_Aggregate): Remove test for limited components in aggregates. | |
22409 | It's unnecessary in Ada 95, because if it has limited components, then | |
22410 | it must be limited. It's wrong in Ada 2005, because limited aggregates | |
22411 | are now allowed. | |
22412 | (Resolve_Record_Aggregate): Move check for limited types later, because | |
22413 | OK_For_Limited_Init requires its argument to have been resolved. | |
22414 | (Get_Value): When copying the component default expression for a | |
22415 | defaulted association in an aggregate, use the sloc of the aggregate | |
22416 | and not that of the original expression, to prevent spurious | |
22417 | elaboration errors, when the expression includes function calls. | |
22418 | (Check_Non_Limited_Type): Correct code for AI-287, extension aggregates | |
22419 | were missing. We also didn't handle qualified expressions. Now also | |
22420 | allow function calls. Use new common routine OK_For_Limited_Init. | |
22421 | (Resolve_Extension_Aggregate): Minor fix to bad error message (started | |
22422 | with space can upper case letter). | |
22423 | ||
6f7f72f9 | 22424 | * sem_ch3.ads, sem_ch3.adb (Create_Constrained_Components): Set |
70198b9f | 22425 | Has_Static_Discriminants flag |
6f7f72f9 EB |
22426 | (Record_Type_Declaration): Diagnose an attempt to declare an interface |
22427 | type with discriminants. | |
22428 | (Process_Range_Expr_In_Decl): Do validity checks on range | |
70198b9f AC |
22429 | (Build_Discriminant_Constraints): Use updated form of |
22430 | Denotes_Discriminant. | |
22431 | (Process_Subtype): If the subtype is a private subtype whose full view | |
22432 | is a concurrent subtype, introduce an itype reference to prevent scope | |
22433 | anomalies in gigi. | |
22434 | (Build_Derived_Record_Type, Collect_Interface_Primitives, | |
22435 | Record_Type_Declaration): The functionality of the subprograms | |
22436 | Collect_Abstract_Interfaces and Collect_All_Abstract_Interfaces | |
22437 | is now performed by a single routine. | |
22438 | (Build_Derived_Record_Type): If the type definition includes an explicit | |
22439 | indication of limitedness, then the type must be marked as limited here | |
22440 | to ensure that any access discriminants will not be treated as having | |
22441 | a local anonymous access type. | |
22442 | (Check_Abstract_Overriding): Issue a detailed error message when an | |
22443 | abstract subprogram was not overridden due to incorrect mode of its | |
22444 | first parameter. | |
22445 | (Analyze_Private_Extension_Declaration): Add support for the analysis of | |
22446 | synchronized private extension declarations. Verify that the ancestor is | |
22447 | a limited or synchronized interface or in the generic case, the ancestor | |
22448 | is a tagged limited type or synchronized interface and all progenitors | |
22449 | are either limited or synchronized interfaces. | |
22450 | Derived_Type_Declaration): Check for presence of private extension when | |
22451 | dealing with synchronized formal derived types. | |
22452 | Process_Full_View): Enchance the check done on the usage of "limited" by | |
22453 | testing whether the private view is synchronized. | |
22454 | Verify that a synchronized private view is completed by a protected or | |
22455 | task type. | |
22456 | (OK_For_Limited_Init_In_05): New function. | |
22457 | (Analyze_Object_Declaration): Move check for limited types later, | |
22458 | because OK_For_Limited_Init requires its argument to have been resolved. | |
22459 | Add -gnatd.l --Use Ada 95 semantics for limited function returns, | |
22460 | in order to alleviate the upward compatibility introduced by AI-318. | |
22461 | (Constrain_Corresponding_Record): If the constraint is for a component | |
22462 | subtype, mark the itype as frozen, to avoid out-of-scope references to | |
22463 | discriminants in the back-end. | |
22464 | (Collect_Implemented_Interfaces): Protect the recursive algorithm of | |
22465 | this subprogram against wrong sources. | |
22466 | (Get_Discr_Value, Is_Discriminant): Handle properly references to a | |
22467 | discriminant of limited type completed with a protected type, when the | |
22468 | discriminant is used to constrain a private component of the type, and | |
22469 | expansion is disabled. | |
22470 | (Find_Type_Of_Object): Do not treat a return subtype that is an | |
22471 | anonymous subtype as a local_anonymous_type, because its accessibility | |
22472 | level is the return type of the enclosing function. | |
22473 | (Check_Initialization): In -gnatg mode, turn the error "cannot | |
22474 | initialize entities of limited type" into a warning. | |
22475 | (OK_For_Limited_Init): Return true for generated nodes, since it | |
22476 | sometimes violates the legality rules. | |
22477 | (Make_Incomplete_Declaration): If the type for which an incomplete | |
22478 | declaration is created happens to be the currently visible entity, | |
22479 | preserve the homonym chain when removing it from visibility. | |
22480 | (Check_Conventions): Add support for Ada 2005 (AI-430): Conventions of | |
22481 | inherited subprograms. | |
22482 | (Access_Definition): If this is an access to function that is the return | |
22483 | type of an access_to_function definition, context is a type declaration | |
22484 | and the scope of the anonymous type is the current one. | |
22485 | (Analyze_Subtype_Declaration): Add the defining identifier of a regular | |
22486 | incomplete subtype to the set of private dependents of the original | |
22487 | incomplete type. | |
22488 | (Constrain_Discriminated_Type): Emit an error message whenever an | |
22489 | incomplete subtype is being constrained. | |
22490 | (Process_Incomplete_Dependents): Transform an incomplete subtype into a | |
22491 | corresponding subtype of the full view of the original incomplete type. | |
22492 | (Check_Incomplete): Properly detect invalid usage of incomplete types | |
22493 | and subtypes. | |
22494 | ||
22495 | 2006-10-31 Hristian Kirtchev <kirtchev@adacore.com> | |
22496 | ||
22497 | * g-catiio.ads, g-catiio.adb (Value): New function. | |
22498 | Given an input String, try and parse a valid Time value. | |
22499 | ||
22500 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22501 | ||
22502 | * g-debpoo.adb (Is_Valid): Correctly compute Offset using | |
22503 | Integer_Address arithmetic, as in Set_Valid. | |
22504 | ||
22505 | 2006-10-31 Arnaud Charlet <charlet@adacore.com> | |
22506 | Robert Dewar <dewar@adacore.com> | |
22507 | ||
22508 | * gnatcmd.adb (Process_Link): Use Osint.Executable_Name instead of | |
22509 | handling executable extension manually and duplicating code. | |
22510 | ||
22511 | * make.adb: Implement new -S switch | |
22512 | (Gnatmake): Use new function Osint.Executable_Name instead | |
22513 | of handling executable extension manually. | |
22514 | ||
22515 | * prj-util.adb (Executable_Of): Make sure that if an Executable_Suffix | |
22516 | is specified, the executable name ends with this suffix. | |
22517 | Take advantage of Osint.Executable_Name instead of duplicating code. | |
22518 | ||
22519 | * switch-m.adb: Recognize new gnatmake -S switch | |
22520 | ||
22521 | * targparm.ads, targparm.adb (Executable_Extension_On_Target): New | |
22522 | variable. | |
22523 | (Get_Target_Parameters): Set Executable_Extension_On_Target if | |
22524 | available. | |
22525 | ||
22526 | * makeusg.adb: Add line for gnatmake -S switch | |
22527 | ||
22528 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22529 | ||
22530 | * gnatlink.adb (Gnatlink): If gcc is not called with -shared-libgcc, | |
22531 | call it with -static-libgcc, as there are some platforms, such as | |
22532 | Darwin, where one of these two switches is compulsory to link. | |
22533 | ||
22534 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
6f7f72f9 | 22535 | |
70198b9f AC |
22536 | * gnatls.adb: Take into account GPR_PROJECT_PATH, when it is defined, |
22537 | instead of ADA_PROJECT_PATH, for the project path. | |
22538 | (Gnatls): When displaying the project path directories, use host dir | |
22539 | specs. | |
22540 | ||
22541 | * prj-ext.adb (Prj.Ext elaboration): On VMS, only expand relative path | |
22542 | names in the project path, as absolute paths may correspond to | |
22543 | multi-valued VMS logical names. | |
22544 | ||
22545 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22546 | ||
22547 | * g-os_lib.ads, g-os_lib.adb (Locate_Exec_On_Path): Always return an | |
22548 | absolute path name. | |
22549 | (Locate_Regular_File): Ditto | |
22550 | (Change_Dir): Remove, no longer used | |
22551 | (Normalize_Pathname): Do not use Change_Dir to get the drive letter | |
22552 | on Windows. Get it calling Get_Current_Dir. | |
22553 | (OpenVMS): Remove imported boolean, no longer needed. | |
22554 | (Normalize_Pathname)[VMS]: Do not resolve directory names. | |
22555 | (Pid_To_Integer): New function to convert a Process_Id to Integer | |
22556 | ||
22557 | 2006-10-31 Thomas Quinot <quinot@adacore.com> | |
22558 | ||
22559 | * g-socket.ads, g-socket.adb (Close_Selector): Once the signalling | |
22560 | sockets are closed, reset the R_Sig_Socket and W_Sig_Socket components | |
22561 | to No_Socket. | |
22562 | (Selector_Type): Add default value of No_Socket for R_Sig_Socket and | |
22563 | W_Sig_Socket. | |
22564 | ||
22565 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22566 | ||
22567 | * g-speche.ads, g-speche.adb: Add special case to recognize misspelling | |
22568 | initial letter o as a zero. | |
22569 | ||
22570 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22571 | ||
22572 | * g-spipat.adb (S_To_PE): Remove incorrect use of 0 instead of Str'First | |
22573 | ||
22574 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22575 | ||
6f7f72f9 EB |
22576 | * layout.adb (Layout_Record_Type): Deal with non-static subtypes of |
22577 | variant records | |
22578 | (Layout_Variant_Record): Retrieve the discriminants from the entity | |
70198b9f AC |
22579 | rather than from the type definition, because in the case of a full |
22580 | type for a private type we need to take the discriminants from the | |
22581 | partial view. | |
6f7f72f9 EB |
22582 | (Layout_Component_List): When applying the Max operator to variants with |
22583 | a nonstatic size, check whether either operand is static and scale that | |
22584 | operand from bits to storage units before applying Max. | |
70198b9f AC |
22585 | (Layout_Type): In VMS, if a C-convention access type has no explicit |
22586 | size clause (and does not inherit one in the case of a derived type), | |
22587 | then the size is reset to 32 from 64. | |
22588 | ||
22589 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22590 | ||
22591 | * lib-load.adb (Load_Unit): Skip the test for a unit not found when | |
22592 | its file has already been loaded, according to the unit being loaded, | |
22593 | not to the current value of Multiple_Unit_Index. | |
22594 | ||
22595 | 2006-10-31 Thomas Quinot <quinot@adacore.com> | |
22596 | Eric Botcazou <ebotcazou@adacore.com> | |
22597 | Arnaud Charlet <charlet@adacore.com> | |
22598 | ||
22599 | * Makefile.in: Set EH mechanism to ZCX for FreeBSD. | |
22600 | (NO_REORDER_ADAFLAGS): New var defined to -fno-toplevel-reorder if | |
22601 | possible. | |
22602 | (a-except.o): Pass it to the compiler. | |
22603 | (gnatlib-shared-vms): Removed -nostartfiles switch in link step. | |
22604 | (LIBGNAT_TARGET_PAIRS for Windows): Avoid the use of the specific | |
22605 | a-calend-mingw.adb version. | |
22606 | ||
6f7f72f9 | 22607 | * Makefile.rtl: Added s-dsaser. |
70198b9f AC |
22608 | Add object entries for Ada.Calendar.[Arithmetic/Formatting/Time_Zones] |
22609 | (GNATRTL_TASKING_OBJS): Add Ada.Dispatching and | |
22610 | Ada.Dispatching.Round_Robin. | |
22611 | Added new unit Ada.Containers.Restricted_Bounded_Doubly_Linked_Lists | |
22612 | ||
22613 | * Make-lang.in: Remove all references to gt-ada-decl.h. | |
22614 | Add concatenation (s-strops/s-sopco3/s-sopco4/s-sopco5) to compiler | |
22615 | sources. | |
22616 | Add dependency on ada/s-restri.o for GNAT1 and GNATBIND objects. | |
22617 | Update dependencies. | |
22618 | ||
22619 | * system-freebsd-x86.ads: Make ZCX the default EH mechanism for FreeBSD | |
22620 | ||
22621 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22622 | ||
22623 | * mlib-utl.adb (Initialized): Remove, no longer used | |
22624 | (Initialize): Remove, no longer used | |
22625 | (Ar): If Ar_Exec is null, get the location of the archive builder and, | |
22626 | if there is one, the archive indexer. Fail if the archive builder cannot | |
22627 | be found. | |
22628 | (Gcc): If the driver path is unknown, get it. Fail if the driver cannot | |
22629 | be found. | |
22630 | ||
22631 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
22632 | ||
22633 | * sem_ch10.ads, sem_ch10.adb (Check_Redundant_Withs, | |
22634 | Process_Body_Clauses): If the context of a body includes a use clause | |
22635 | for P.Q then a with_clause for P in the same body is not redundant, | |
22636 | even if the spec also has a with_clause on P. | |
22637 | Add missing continuation mark to error msg | |
22638 | (Build_Limited_Views): A limited view of a type is tagged if its | |
22639 | declaration includes a record extension. | |
22640 | (Analyze_Proper_Body): Set Corresponding_Stub field in N_Subunit | |
22641 | node, even if the subunit has errors. This avoids malfunction by | |
22642 | Lib.Check_Same_Extended_Unit in the presence of syntax errors. | |
22643 | (Analyze_Compilation_Unit): Add circuit to make sure we get proper | |
22644 | generation of obsolescent messages for with statements (cannot do | |
22645 | this too early, or we cannot implement avoiding the messages in the | |
22646 | case of obsolescent units withing obsolescent units). | |
22647 | (Install_Siblings): If the with_clause is on a remote descendant of | |
22648 | an ancestor of the current compilation unit, find whether there is | |
22649 | a sibling child unit that is immediately visible. | |
22650 | (Remove_Private_With_Clauses): New procedure, invoked after completing | |
22651 | the analysis of the private part of a nested package, to remove from | |
22652 | visibility the private with_clauses of the enclosing package | |
22653 | declaration. | |
22654 | (Analyze_With_Clause): Remove Check_Obsolescent call, this checking is | |
22655 | now centralized in Generate_Reference. | |
22656 | (Install_Limited_Context_Clauses): Remove superfluous error | |
22657 | message associated with unlimited view visible through use | |
22658 | and renamings. In addition, at the point in which the error | |
22659 | is reported, we add the backslash to the text of the error | |
22660 | to ensure that it is reported as a single error message. | |
22661 | Use new // insertion for some continuation messages | |
22662 | (Expand_Limited_With_Clause): Use copy of name rather than name itself, | |
22663 | to create implicit with_clause for parent unit mentioned in original | |
22664 | limited_with_clause. | |
22665 | (Install_Limited_With_Unit): Set entity of parent identifiers if the | |
22666 | unit is a child unit. For ASIS queries. | |
22667 | (Analyze_Subunit): If the subunit appears within a child unit, make all | |
22668 | ancestor child units directly visible again. | |
22669 | ||
22670 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22671 | ||
22672 | * par-ch10.adb (P_Context_Clause): Minor error message fix | |
22673 | ||
22674 | 2006-10-31 Hristian Kirtchev <kirtchev@adacore.com> | |
22675 | Javier Miranda <miranda@adacore.com> | |
22676 | ||
22677 | * par-ch12.adb: Grammar update and cleanup. | |
22678 | (P_Formal_Type_Definition, P_Formal_Derived_Type_Definition): Add | |
22679 | support for synchronized derived type definitions. | |
22680 | Add the new actual Abstract_Present to every call to | |
22681 | P_Interface_Type_Definition. | |
22682 | (P_Formal_Object_Declarations): Update grammar rules. Handle parsing of | |
22683 | a formal object declaration with an access definition or a subtype mark | |
22684 | with a null exclusion. | |
22685 | (P_Generic_Association): Handle association with box, and others_choice | |
22686 | with box, to support Ada 2005 partially parametrized formal packages. | |
22687 | ||
22688 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22689 | Javier Miranda <miranda@adacore.com> | |
6f7f72f9 | 22690 | |
70198b9f AC |
22691 | * par-ch3.adb (P_Range_Or_Subtype_Mark): Check for bad parentheses |
22692 | (P_Type_Declaration): Remove barrier against the reserved word "limited" | |
22693 | after "abstract" to give support to the new syntax of AARM 3.4 (2/2). | |
22694 | (P_Type_Declaration): Minor code cleanup. Add support for synchronized | |
22695 | private extensions. | |
22696 | (P_Type_Declaration): Add the new actual Abstract_Present to every call | |
22697 | to P_Interface_Type_Definition. | |
22698 | (P_Interface_Type_Definition): Addition of one formal to report an error | |
22699 | if the reserved word abstract has been previously found. | |
22700 | (P_Identifier_Declarations): Update grammar rules. Handle parsing of an | |
22701 | object renaming declaration with an access definition or subtype mark | |
22702 | with a possible null exclusion. | |
22703 | ||
22704 | * par-ch9.adb: Minor error msg fix | |
22705 | ||
22706 | * par-load.adb: Add missing continuation mark to error msg | |
22707 | ||
22708 | * par-tchk.adb: (Wrong_Token): Code cleanup, use concatenation | |
22709 | ||
22710 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22711 | ||
22712 | * prj-dect.adb (Parse_Attribute_Declaration): Do not issue warning for | |
22713 | unknown attribute in unknown package or in package that does not need | |
22714 | to be checked. | |
22715 | (Parse_Package_Declaration): Do not issue warning for unknown package in | |
22716 | quiet output. | |
22717 | ||
22718 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22719 | ||
22720 | * prj-makr.adb (Packages_To_Check_By_Gnatname): New global constant | |
22721 | (Make): Call Parse with Packages_To_Check_By_Gnatname for parameter | |
22722 | Packages_To_Check. | |
22723 | ||
22724 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
22725 | ||
22726 | * prj-nmsc.adb (Check_Ada_Name): For children of package A, G, I and S | |
22727 | on VMS, change "__" to '.' before checking the name. | |
22728 | (Record_Ada_Source): Always add the source file name in the list of | |
22729 | of sources, even if it is not the first time, as it is for another | |
22730 | source index. | |
22731 | (Get_Unit): Replace both '_' (after 'a', 'g', 'i' or 's') with a single | |
22732 | dot, instead of replacing only the first '_'. | |
22733 | ||
22734 | * prj-part.adb (Parse): Convert project file path to canonical form | |
22735 | ||
22736 | * prj-proc.adb (Recursive_Process): Make sure that, when a project is | |
22737 | extended, the project id of the project extending it is recorded in its | |
22738 | data, even when it has already been processed as an imported project. | |
22739 | ||
22740 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22741 | ||
22742 | * repinfo.adb (List_Entities): Don't list entities from renaming | |
22743 | declarations. | |
22744 | ||
22745 | 2006-10-31 Arnaud Charlet <charlet@adacore.com> | |
22746 | Robert Dewar <dewar@adacore.com> | |
22747 | ||
22748 | * restrict.ads, restrict.adb (Restriction_Active): Now returns False if | |
22749 | only a restriction warning is active for the given restriction. This is | |
22750 | desirable because we do not want to modify code in the case where only | |
22751 | a warning is set. | |
22752 | (Set_Profile_Restrictions): Make sure that a Profile_Warnings never | |
22753 | causes overriding of real restrictions. | |
22754 | Take advantage of new No_Restrictions constant. | |
22755 | ||
22756 | * raise.h: (__gnat_set_globals): Change profile. | |
22757 | ||
22758 | 2006-10-31 Arnaud Charlet <charlet@adacore.com> | |
70198b9f | 22759 | |
6f7f72f9 EB |
22760 | * rtsfind.adb: Remove s-polint from comment as it exists no more. |
22761 | ||
9e81dbc7 | 22762 | * rtsfind.ads: |
6f7f72f9 EB |
22763 | Move entity RE_Get_Active_Partition_Id to package System.DSA_Services. |
22764 | Move all the entities in obsolete package System.PolyORB_Interface to | |
22765 | System.Partition_Interface. | |
70198b9f AC |
22766 | (RE_Storage_Size): New function in System.Tasking. |
22767 | (RE_Get_Ceiling): New entity. | |
22768 | (RE_Set_Ceiling): New entity. | |
22769 | (RO_PE_Get_Ceiling): New entity. | |
22770 | (RO_RE_Set_Ceiling): New entity. | |
22771 | (Inherit_CPP_DT): New entity | |
22772 | ||
22773 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22774 | ||
22775 | * scng.adb (Scan, case of numeric literal): Better msg for identifier | |
22776 | starting with a digit. | |
22777 | ||
22778 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
22779 | Thomas Quinot <quinot@adacore.com> | |
22780 | Javier Miranda <miranda@adacore.com> | |
22781 | Gary Dismukes <dismukes@adacore.com> | |
22782 | ||
22783 | * sem_attr.ads, sem_attr.adb (Analyze_Access_Attribute): Diagnose | |
22784 | properly an attempt to apply Unchecked_Access to a protected operation. | |
22785 | (OK_Self_Reference): New subprogram to check the legality of an access | |
22786 | attribute whose prefix is the type of an enclosing aggregate. | |
22787 | Generalizes previous mechanism to handle attribute references nested | |
22788 | arbitrarily deep within the aggregate. | |
22789 | (Analyze_Access_Attribute): An access attribute whose prefix is a type | |
22790 | can appear in an aggregate if this is a default-initialized aggregate | |
22791 | for a self-referential type. | |
22792 | (Resolve_Attribute, case Access): Ditto. | |
22793 | Add support for new implementation defined attribute Stub_Type. | |
22794 | (Eval_Attribute, case Attribute_Stub_Type): New case. | |
22795 | (Analyze_Attribute, case Attribute_Stub_Type): New case. | |
22796 | (Stream_Attribute_Available): Implement using new subprogram from | |
22797 | sem_cat, Has_Stream_Attribute_Definition, instead of incorrect | |
22798 | Has_Specified_Stream_Attribute flag. | |
22799 | Disallow Storage_Size and Storage_Pool for access to subprogram | |
22800 | (Resolve_Attribute, case 'Access et al): Take into account anonymous | |
22801 | access types of return subtypes in extended return statements. Remove | |
22802 | accessibility checks on anonymous access types when Unchecked_Access is | |
22803 | used. | |
22804 | (Analyze_Attribute): Add support for the use of 'Class to convert | |
22805 | a class-wide interface to a tagged type. | |
22806 | Add support for the attribute Priority. | |
22807 | (Resolve_Attribute, case Attribute_Access): For Ada_05, add test for | |
22808 | whether the designated type is discriminated with a constrained partial | |
22809 | view and require static matching in that case. | |
22810 | Add local variable Des_Btyp. The Designated_Type | |
22811 | of an access to incomplete subtype is either its non-limited view if | |
22812 | coming from a limited with or its etype if regular incomplete subtype. | |
22813 | ||
22814 | * sem_cat.ads, sem_cat.adb (Validate_Remote_Access_To_Class_Wide_Type): | |
22815 | Fix predicate to identify and allow cases of (expander-generated) | |
22816 | references to tag of designated object of a RACW. | |
22817 | (Validate_Static_Object_Name): In Ada 2005, a formal object is | |
22818 | non-static, and therefore cannot appear as a primary in a preelaborable | |
22819 | package. | |
22820 | (Has_Stream_Attribute_Definition): New subprogram, abstracted from | |
22821 | Has_Read_Write_Attributes. | |
22822 | (Has_Read_Write_Attributes): Reimplement in termes of | |
22823 | Has_Stream_Attribute_Definition. | |
22824 | (Missing_Read_Write_Attributes): When checking component types in a | |
22825 | record, unconditionally call Missing_Read_Write_Attributes recursively | |
22826 | (remove guard checking for Is_Record_Type / Is_Access_Type). | |
22827 | ||
22828 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22829 | ||
22830 | * sem_ch11.adb (Analyze_Handled_Statements): Move final test for | |
22831 | useless assignments here and conditionalize it on absence of exception | |
22832 | handlers. | |
22833 | (Analyze_Exception_Handlers): Small code reorganization of error | |
22834 | detection code, for new handling of formal packages. | |
22835 | ||
22836 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
22837 | Hristian Kirtchev <kirtchev@adacore.com> | |
6f7f72f9 EB |
22838 | |
22839 | * sem_ch12.ads, sem_ch12.adb (Save_References): If node is an operator | |
70198b9f AC |
22840 | that has been constant-folded, preserve information of original tree, |
22841 | for ASIS uses. | |
22842 | (Analyze_Formal_Derived_Type): Set the limited present flag of the newly | |
22843 | generated private extension declaration if the formal derived type is | |
22844 | synchronized. Carry synchronized present over to the generated private | |
22845 | extension. | |
22846 | (Validate_Derived_Type_Instance): Ensure that the actual of a | |
22847 | synchronized formal derived type is a synchronized tagged type. | |
22848 | (Instantiate_Formal_Package): When creating the instantiation used to | |
22849 | validate the actual package of a formal declared without a box, check | |
22850 | whether the formal itself depends on a prior actual. | |
22851 | (Instantiate_Formal_Subprogram): Create new entities for the defining | |
22852 | identifiers of the formals in the renaming declaration, for ASIS use. | |
22853 | (Instantiate_Formal_Subprogram, Instantiate_Formal_Type): When creating | |
22854 | a renaming declaration or a subtype declaration for an actual in an | |
22855 | instance, capture location information of declaration in generic, for | |
22856 | ASIS use. | |
22857 | (Instantiate_Formal_Package): Add comments on needed additional tests. | |
22858 | AI-317 (partial parametrization) is fully implemented. | |
22859 | (Validate_Private_Type_Instance): Add check for actual which | |
22860 | must have preelaborable initialization | |
22861 | Use new // insertion for some continuation messages | |
22862 | (Analyze_Formal_Object_Declaration): Change usage of Expression to | |
22863 | Default_Expression. Add type retrieval when the declaration has an | |
22864 | access definition. Update premature usage of incomplete type check. | |
22865 | (Check_Access_Definition): New subsidiary routine. Check whether the | |
22866 | current compilation version is Ada 05 and the supplied node has an | |
22867 | access definition. | |
22868 | (Instantiate object): Alphabetize local variables. Handle the creation | |
22869 | of new renaming declarations with respect to the kind of definition | |
22870 | used - either an access definition or a subtype mark. Guard against | |
22871 | unnecessary error message in the context of anonymous access types after | |
22872 | they have been resolved. Add check for required null exclusion in a | |
22873 | formal object declaration. | |
22874 | (Switch_View): A private subtype of a non-private type needs to be | |
22875 | switched (the base type can have been switched without its private | |
22876 | dependents because of the last branch of Check_Private_View. | |
22877 | (Check_Private_View): Do not recompute Base_Type (T), instead use cached | |
22878 | value from BT. | |
22879 | (Instantiate_Type): Emit an error message whenever a class-wide type of | |
22880 | a tagged incomplete type is used as a generic actual. | |
22881 | (Find_Actual_Type): Extend routine to handle a component type in a child | |
22882 | unit that is imported from a formal package in a parent. | |
22883 | (Validate_Derived_Type_Instance): Check that analyzed formal and actual | |
22884 | agree on constrainedness, rather than checking against ultimate ancestor | |
22885 | (Instantiate_Subprogram_Body): Create a cross-reference link to the | |
22886 | generic body, for navigation purposes. | |
22887 | ||
22888 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22889 | Thomas Quinot <quinot@adacore.com> | |
22890 | ||
22891 | * sem_ch13.adb: Storage pool cannot be given for access to subprogram | |
22892 | type. | |
22893 | (New_Stream_Subprogram): When processing an attribute definition clause | |
22894 | for a stream-oriented subprogram, record an entity node occurring at | |
22895 | the point of clause to use for checking the visibility of the clause, | |
22896 | as defined by 8.3(23) as amended by AI-195. | |
22897 | (New_Stream_Subprogram): New procedure, factoring behaviour from both | |
22898 | New_Stream_Function and New_Stream_Procedure. | |
22899 | (New_Stream_Function, New_Stream_Procedure): Removed. | |
22900 | (Analyze_Attribute_Definition_Clause, case Address): Check new | |
22901 | Alignment_Check check | |
22902 | ||
22903 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
22904 | Javier Miranda <miranda@adacore.com> | |
22905 | Robert Dewar <dewar@adacore.com> | |
22906 | ||
22907 | * sem_ch4.adb (Try_Primitive_Operation): Code cleanup to ensure that we | |
22908 | generate the same errors compiling under -gnatc. | |
22909 | (Try_Object_Operation): If no candidate interpretation succeeds, but | |
22910 | there is at least one primitive operation with the right name, report | |
22911 | error in call rather than on a malformed selected component. | |
22912 | (Analyze_Selected_Component): If the prefix is an incomplete type from | |
22913 | a limited view, and the full view is available, use the full view to | |
22914 | determine whether this is a prefixed call to a primitive operation. | |
22915 | (Operator_Check): Verify that a candidate interpretation is a binary | |
22916 | operation before checking the type of its second formal. | |
22917 | (Analyze_Call): Add additional warnings for function call contexts not | |
22918 | yet supported. | |
22919 | (Analyze_Allocator): Move the check for "initialization not allowed for | |
22920 | limited types" after analyzing the expression. This is necessary, | |
22921 | because OK_For_Limited_Init looks at the structure of the expression. | |
22922 | Before analysis, we don't necessarily know what sort of expression it | |
22923 | is. For example, we don't know whether F(X) is a function call or an | |
22924 | indexed component; the former is legal in Ada 2005; the latter is not. | |
22925 | (Analyze_Allocator): Correct code for AI-287 -- extension aggregates | |
22926 | were missing. We also didn't handle qualified expressions. Now also | |
22927 | allow function calls. Use new common routine OK_For_Limited_Init. | |
22928 | (Analyze_Type_Conversion): Do not perform some legality checks in an | |
22929 | instance, because the error message will be redundant or spurious. | |
22930 | (Analyze_Overloaded_Selected_Component): Do not do style check when | |
22931 | setting an entity, since we do not know it is the right entity yet. | |
22932 | (Analyze_Selected_Component): Move Generate_Reference call to Sem_Res | |
22933 | (Analyze_Overloaded_Selected_Component): Same change | |
22934 | (Analyze_Selected_Component): Remove unnecessary prefix type retrieval | |
22935 | since regular incomplete subtypes are transformed into corresponding | |
22936 | subtypes of their full views. | |
22937 | (Complete_Object_Operation): Treat name of transformed subprogram call | |
22938 | as coming from source, for browsing purposes. | |
22939 | (Try_Primitive_Operation): If formal is an access parameter, compare | |
22940 | with base type of object to determine whether it is a primitive | |
22941 | operation. | |
22942 | (Operator_Check): If no interpretation of the operator matches, check | |
22943 | whether a use clause on any candidate might make the operation legal. | |
22944 | (Try_Class_Wide_Operation): Check whether the first parameter is an | |
22945 | access type whose designated type is class-wide. | |
22946 | ||
22947 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
22948 | Ed Schonberg <schonberg@adacore.com> | |
22949 | Gary Dismukes <dismukes@adacore.com> | |
22950 | ||
22951 | * sem_ch5.ads, sem_ch5.adb (Analyze_Loop_Statement): Add circuit to | |
22952 | warn on infinite loops. | |
22953 | Add \\ to some continuation messages | |
22954 | (Analyze_Assignment_Statement): Call Warn_On_Useless_Assignment | |
22955 | (Process_Bounds): If the bounds are integer literals that result from | |
22956 | constant-folding, and they carry a user-defined type, preserve that type | |
22957 | rather than treating this as an integer range. | |
22958 | (Analyze_Exit_Statement): Test for E_Return_Statement in legality check. | |
22959 | (Analyze_Goto_Statement): Test for E_Return_Stateemnt in legality check. | |
22960 | (Analyze_Assignment_Statement): Add call to Check_Elab_Assign for | |
22961 | left hand side of assignment. | |
22962 | (Analyze_Assignment): Add suport to manage assigments to the attribute | |
22963 | priority of a protected object. | |
22964 | (Check_Possible_Current_Value_Condition): Allow fully qualified names | |
22965 | not just identifiers. | |
22966 | (Check_Possible_Current_Value_Condition): Acquire left operand of AND | |
22967 | or AND THEN for possible tracking. | |
22968 | (Analyze_Iteration_Scheme): Check for setting Current_Value for the | |
22969 | case of while loops so we can track values in the loop body. | |
22970 | ||
22971 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
22972 | Hristian Kirtchev <kirtchev@adacore.com> | |
22973 | Bob Duff <duff@adacore.com> | |
6f7f72f9 | 22974 | |
70198b9f AC |
22975 | * sem_ch6.ads, sem_ch6.adb (Analyze_Subprogram_Declaration): A null |
22976 | procedure cannot be a protected operation (it is a basic_declaration, | |
22977 | not a subprogram_declaration). | |
22978 | (Check_Overriding_Indicator): Rename formal Does_Override to Overridden_ | |
22979 | Subp. Add logic for entry processing. | |
22980 | (Check_Synchronized_Overriding): New procedure in New_Overloaded_Entity. | |
22981 | Determine whether an entry or subprogram of a protected or task type | |
22982 | override an inherited primitive of an implemented interface. | |
22983 | (New_Overloaded_Entity): Add calls to Check_Synchronized_Overriding. | |
22984 | Update the actual used in calls to Check_Overriding_Indicator. | |
22985 | (Analyze_Generic_Subprogram_Body): If the subprogram is a child unit, | |
22986 | generate the proper reference to the parent unit, for cross-reference. | |
22987 | (Analyze_Subprogram_Declaration): Protect Is_Controlling_Formal with | |
22988 | Is_Formal. | |
22989 | Add -gnatd.l --Use Ada 95 semantics for limited function returns, | |
22990 | (Add_Extra_Formal): Revise procedure to allow passing in associated | |
22991 | entity, scope, and name suffix, and handle setting of the new | |
22992 | Extra_Formals field. | |
22993 | (Create_Extra_Formals): Change existing calls to Add_Extra_Formal to | |
22994 | pass new parameters. Add support for adding the new extra access formal | |
22995 | for functions whose calls are treated as build-in-place. | |
22996 | (Analyze_A_Return_Statement): Correct casing in error message. | |
22997 | Move Pop_Scope to after Analyze_Function_Return, because an extended | |
22998 | return statement really is a full-fledged scope. Otherwise, visibility | |
22999 | doesn't work right. Correct use of "\" for continuation messages. | |
23000 | (Analyze_Function_Return): Call Analyze on the Obj_Decl, rather than | |
23001 | evilly trying to call Analyze_Object_Declaration directly. Otherwise, | |
23002 | the node doesn't get properly marked as analyzed. | |
23003 | (Analyze_Subprogram_Body): If subprogram is a function that returns | |
23004 | an anonymous access type that denotes a task, build a Master Entity | |
23005 | for it. | |
23006 | (Analyze_Return_Type): Add call to Null_Exclusion_Static_Checks. Verify | |
23007 | proper usage of null exclusion in a result definition. | |
23008 | (Process_Formals): Code cleanup and new error message. | |
23009 | (Process_Formals): Detect incorrect application of null exclusion to | |
23010 | non-access types. | |
23011 | (Conforming_Types): Handle conformance between [sub]types and itypes | |
23012 | generated for entities that have null exclusions applied to them. | |
23013 | (Maybe_Primitive_Operation): Add an additional type retrieval when the | |
23014 | base type is an access subtype. This case arrises with null exclusions. | |
23015 | (New_Overloaded_Entity): Do not remove the overriden entity from the | |
23016 | homonym chain if it corresponds with an abstract interface primitive. | |
23017 | (Process_Formals): Replace membership test agains Incomplete_Kind with a | |
23018 | call to the synthesized predicate Is_Incomplete_Type. | |
23019 | (Analyze_Subprogram_Body): Check wrong placement of abstract interface | |
23020 | primitives. | |
23021 | (Analyze_Subprogram_Declaration): Check that abstract interface | |
23022 | primitives are abstract or null. | |
23023 | (Analyze_Subprogram_Specification): Remove previous check for abstract | |
23024 | interfaces because it was not complete. | |
23025 | (Has_Interface_Formals): Removed. | |
23026 | ||
23027 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
23028 | Javier Miranda <miranda@adacore.com> | |
23029 | ||
23030 | * sem_ch7.adb (Check_Anonymous_Access_Types): New procedure, subsidiary | |
23031 | of Analyze_Package_Body, to create Itype references for anonymous | |
23032 | access types created in the package declaration, whose designated types | |
23033 | may have only a limited view. | |
23034 | (Analyze_Package_Specification): For the private part of a nested | |
23035 | package, install private_with_clauses of enclosing compilation unit if | |
23036 | we are in its visible part. | |
23037 | (Declare_Inherited_Private_Subprograms): Complete barrier | |
23038 | to ensure that the primitive operation has an alias to some parent | |
23039 | primitive. This is now required because, after the changes done for the | |
23040 | implementation of abstract interfaces, the contents of the list of | |
23041 | primitives has entities whose alias attribute references entities of | |
23042 | such list of primitives. | |
23043 | (Analyze_Package_Specification): Simplify code that handles parent units | |
23044 | of instances and formal packages. | |
23045 | (Uninstall_Declarations): Check the convention consistency among | |
23046 | primitive overriding operations of a tagged record type. | |
23047 | ||
23048 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23049 | Hristian Kirtchev <kirtchev@adacore.com> | |
23050 | Javier Miranda <miranda@adacore.com> | |
23051 | Ed Schonberg <schonberg@adacore.com> | |
6f7f72f9 | 23052 | |
70198b9f AC |
23053 | * sem_ch8.adb: Minor error msg rewording |
23054 | (Undefined): When checking for misspellings, invert arguments (to get | |
23055 | expected and found set right) | |
23056 | (Analyze_Subprogram_Renaming): Propagate Is_Pure, Is_Preelaborated | |
23057 | (Analyze_Generic_Renaming): Same fix | |
23058 | (Use_One_Package): Do not take into account the internal entities of | |
23059 | abstract interfaces during the analysis of entities that are marked | |
23060 | as potentially use-visible. | |
23061 | (Find_Type): Handle the case of an attribute reference for | |
23062 | implementation defined attribute Stub_Type (simply let the analysis of | |
23063 | the attribute reference rewrite it). | |
23064 | (Use_One_Type, End_Use_Type): Reject a reference to a limited view of a | |
23065 | type that appears in a Use_Type clause. | |
23066 | (Analyze_Object_Renaming): Add support for renaming of the Priority | |
23067 | attribute. | |
23068 | (Find_Type): In Ada 2005, a task type can be used within its own body, | |
23069 | when it appears in an access definition. | |
23070 | (Analyze_Object_Renaming): Remove warning on null_exclusion. | |
23071 | (Analyze_Object_Renaming): Introduce checks for required null exclusion | |
23072 | in a formal object declaration or in a subtype declaration. | |
23073 | (Analyze_Subprogram_Renaming): Add call to Check_Null_Exclusion. | |
23074 | (Check_Null_Exclusion): New local routine to | |
23075 | Analyze_Subprogram_Renaming. Check whether the formals and return | |
23076 | profile of a renamed subprogram have required null exclusions when | |
23077 | their counterparts of the renaming already impose them. | |
23078 | (In_Generic_Scope): New local routine to Analyze_Object_Renaming. | |
23079 | Determine whether an entity is inside a generic scope. | |
23080 | (In_Open_Scope): First pass of documentation update. | |
23081 | (Find_Expanded_Name): Add support for shadow entities associated with | |
23082 | limited withed packages. This is required to handle nested packages. | |
23083 | (Analyze_Package_Renaming): Remove the restriction imposed by AI-217 | |
23084 | that makes a renaming of a limited withed package illegal. | |
23085 | ||
23086 | 2006-10-31 Hristian Kirtchev <kirtchev@adacore.com> | |
23087 | Ed Schonberg <schonberg@adacore.com> | |
23088 | ||
23089 | * sem_ch9.adb (Analyze_Protected_Definition): Remove call to | |
23090 | Check_Overriding_Indicator. | |
23091 | (Analyze_Task_Definition): Ditto. | |
23092 | (Analyze_Protected_Type, Analyze_Task_Type): Code cleanup. | |
23093 | (Check_Overriding_Indicator): To find overridden interface operation, | |
23094 | examine only homonyms that have an explicit subprogram declaration, not | |
23095 | inherited operations created by an unrelated type derivation. | |
23096 | (Check_Overriding_Indicator): When checking for the presence of "null" | |
23097 | in a procedure, ensure that the queried node is a procedure | |
23098 | specification. | |
23099 | (Matches_Prefixed_View_Profile): Add mechanism to retrieve the parameter | |
23100 | type when the formal is an access to variable. | |
23101 | (Analyze_Protected_Type): Add check for Preelaborable_Initialization | |
23102 | (Analyze_Task_Type): Same addition | |
23103 | (Analyze_Entry_Declaration): Call Generate_Reference_To_Formals, to | |
23104 | provide navigation capabilities for entries. | |
23105 | ||
23106 | 2006-10-31 Hristian Kirtchev <kirtchev@adacore.com> | |
23107 | Ed Schonberg <schonberg@adacore.com> | |
23108 | Javier Miranda <miranda@adacore.com> | |
23109 | Gary Dismukes <dismukes@adacore.com> | |
23110 | ||
23111 | * sem_disp.adb (Check_Dispatching_Operation): Do not flag subprograms | |
23112 | inherited from an interface ancestor by another interface in the | |
23113 | context of an instance as 'late'. | |
23114 | (Is_Tag_Indeterminate, Propagate_Tag): Handle properly the dereference | |
23115 | of a call to a function that dispatches on access result. | |
23116 | (Check_Dispatching_Operation): In case of late overriding of a primitive | |
23117 | that covers abstract interface subprograms we register it in all the | |
23118 | secondary dispatch tables associated with abstract interfaces. | |
23119 | (Check_Dispatching_Call): Add check that a dispatching call is not made | |
23120 | to a function with a controlling result of a limited type. This is a | |
23121 | current implementation restriction. | |
23122 | (Check_Controlling_Formal): Remove bogus checks for E.2.2(14). | |
23123 | (Check_Dispatching_Operation): Do no emit a warning if the controlling | |
23124 | argument is an interface type that is a generic formal. | |
23125 | (Is_Interface_Subprogram): Removed. | |
23126 | (Check_Dispatching_Operation): If the subprogram is not a dispatching | |
23127 | operation, check the formals to handle the case in which it is | |
23128 | associated with an abstract interface type. | |
23129 | ||
23130 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23131 | Ed Schonberg <schonberg@adacore.com> | |
23132 | ||
23133 | * sem_elab.ads, sem_elab.adb (Check_Elab_Assign): New procedure | |
23134 | Add new calls to this procedure during traversal | |
23135 | (Activate_Elaborate_All_Desirable): Do not set elaboration flag on | |
23136 | another unit if expansion is disabled. | |
23137 | ||
23138 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23139 | ||
23140 | * sem_eval.adb (Compile_Time_Compare): Make use of information from | |
23141 | Current_Value in the conditional case, to evaluate additional | |
23142 | comparisons at compile time. | |
23143 | ||
23144 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
23145 | Hristian Kirtchev <kirtchev@adacore.com> | |
23146 | Javier Miranda <miranda@adacore.com> | |
23147 | ||
23148 | * sem_type.adb (Add_One_Interp): If node is an indirect call, preserve | |
23149 | subprogram type to provide better diagnostics in case of ambiguity. | |
23150 | (Covers): Handle coverage of formal and actual anonymous access types in | |
23151 | the context of generic instantiation. | |
23152 | (Covers/Interface_Present_In_Ancestors): Use the base type to manage | |
23153 | abstract interface types; this is required to handle concurrent types | |
23154 | with discriminants and abstract interface types. | |
23155 | (Covers): Include type coverage of both regular incomplete subtypes and | |
23156 | incomplete subtypes of incomplete type visibles through a limited with | |
23157 | clause. | |
23158 | ||
23159 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23160 | Hristian Kirtchev <kirtchev@adacore.com> | |
23161 | Ed Schonberg <schonberg@adacore.com> | |
6f7f72f9 EB |
23162 | |
23163 | * sem_util.ads, sem_util.adb (Enter_Name): Exclude -gnatwh warning | |
70198b9f AC |
23164 | messages for entities in packages which are not used. |
23165 | (Collect_Synchronized_Interfaces): New procedure. | |
23166 | (Overrides_Synchronized_Primitive): New function. | |
23167 | (Denotes_Discriminant): Extend predicate to apply to task types. | |
23168 | Add missing continuation marks in error msgs | |
23169 | (Unqualify): New function for removing zero or more levels of | |
23170 | qualification from an expression. There are numerous places where this | |
23171 | ought to be used, but we currently only deal properly with zero or one | |
23172 | level. | |
23173 | (In_Instance); The analysis of the actuals in the instantiation of a | |
23174 | child unit is not within an instantiation, even though the parent | |
23175 | instance is on the scope stack. | |
23176 | (Safe_To_Capture_Value): Exclude the case of variables that are | |
23177 | renamings. | |
23178 | (Check_Obsolescent): Removed | |
23179 | (Is_Aliased_View): A reference to an enclosing instance in an aggregate | |
23180 | is an aliased view, even when rewritten as a reference to the target | |
23181 | object in an assignment. | |
23182 | (Get_Subprogram_Entity): New function | |
23183 | (Known_To_Be_Assigned): New function | |
23184 | (Type_Access_Level): Compute properly the access level of a return | |
23185 | subtype that is an anonymous access type. | |
23186 | (Explain_Limited_Type): Correct use of "\" for continuation messages. | |
23187 | (Is_Transfer): The new extended_return_statement causes a transfer of | |
23188 | control. | |
23189 | (Has_Preelaborable_Initialization): New function | |
23190 | (Has_Null_Exclusion): New function. Given a node N, determine whether it | |
23191 | has a null exclusion depending on its Nkind. | |
23192 | Change Is_Lvalue to May_Be_Lvalue | |
23193 | (May_Be_Lvalue): Extensive additional code to deal with subprogram | |
23194 | arguments (IN parameters are not Lvalues, IN OUT parameters are). | |
23195 | (Safe_To_Capture_Value): Extend functionality so it can be used for | |
23196 | the current value condition case. | |
23197 | (Has_Compatible_Alignment): New function | |
23198 | (Is_Dependent_Component_Of_Mutable_Object): Revise the tests for mutable | |
23199 | objects to handle the Ada 2005 case, where aliasedness no longer implies | |
23200 | that the object is constrained. In particular, for dereferenced names, | |
23201 | the designated object must be assumed to be unconstrained. | |
23202 | (Kill_Current_Values): Properly deal with the case where we encounter | |
23203 | a loop in the scope chain. | |
23204 | (Safe_To_Capture_Value): Do not let a loop stop us from capturing | |
23205 | a value. | |
23206 | (Compile_Time_Constraint_Error): Improve error message in error case | |
23207 | ||
23208 | * exp_ch13.adb (Expand_N_Freeze_Entity): Remove the freezing node | |
23209 | associated with entities of abstract interface primitives. | |
23210 | Call Apply_Address_Clause_Check instead of Apply_Alignment_Check | |
23211 | ||
23212 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23213 | ||
9e81dbc7 | 23214 | * s-osinte-tru64.adb: |
70198b9f AC |
23215 | Mark Asm statements Volatile to prevent warnings (seems a |
23216 | reasonable change anyway) | |
23217 | Fixes new warnings | |
23218 | ||
23219 | * s-mastop-irix.adb: Add Volatile to Asm statements | |
23220 | Suppresses warning, and seems appropriate in any case | |
23221 | ||
23222 | * s-osinte-vms.adb: Add Volatile to Asm statement | |
23223 | ||
23224 | * s-vaflop-vms-alpha.adb: Add Volatile to Asm statements | |
23225 | ||
23226 | * exp_code.ads, exp_code.adb (Asm_Input_Value): Note that Error can be | |
23227 | returned. | |
23228 | Add call to Check_Code_Statement | |
23229 | ||
23230 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23231 | Ed Schonberg <schonberg@adacore.com> | |
23232 | Bob Duff <duff@adacore.com> | |
23233 | ||
23234 | * sinfo.ads, sinfo.adb (Set_Synchronized_Present, | |
23235 | Synchronized_Present): Add Formal_Derived_Type_Definition and | |
23236 | Private_Extension_Declaration to the list of assertions. | |
23237 | (Is_Entry_Barrier_Function): New flag | |
23238 | (Has_Self_Reference): New flag on aggregates, to indicate that they | |
23239 | contain a reference to the enclosing type, inserted through a default | |
23240 | initialization. | |
23241 | (Next_Rep_Item): Move from Node4 to Node5. | |
23242 | (Entity): Add this field for N_Attribute_Definition_Clause. | |
23243 | (Comes_From_Extended_Return_Statement): New flag on N_Return_Statement | |
23244 | (N_Return_Object_Declaration): Remove this node kind. We now use | |
23245 | N_Object_Declaration instead. | |
23246 | (Actual_Designated_Subtype): Move to a different place to make room in | |
23247 | N_Extended_Return_Statement. | |
23248 | (Procedure_To_Call): Move to a different place to make room in | |
23249 | N_Extended_Return_Statement. | |
23250 | (Return_Type): Removed this field to make room in return statements | |
23251 | (both kinds). | |
23252 | (Return_Statement_Entity): New field in return statements, in part to | |
23253 | replace Return_Type, and in part to support the fact that return | |
23254 | statements are now pushed on the scope stack during semantic analysis. | |
23255 | (Return_Object_Declarations): New field to support extended return | |
23256 | statements. | |
23257 | (N_Extended_Return_Statement): New node for extended_return_statement | |
23258 | nonterminal. | |
23259 | (N_Return_Object_Declaration): New node for part of | |
23260 | extended_return_statement nonterminal. Needed because all the necessary | |
23261 | fields won't fit in N_Extended_Return_Statement. | |
23262 | Generic_associations now carry the Box_Present flag, to indicate a | |
23263 | default for an actual in a partially parametrized formal package. | |
23264 | ||
6f7f72f9 | 23265 | * snames.h, snames.ads, snames.adb: Add definition for Validity_Check |
70198b9f AC |
23266 | (Preset_Names): Add entries for Priority_Specific_Dispatching pragma |
23267 | and for the new predefined dispatching policies: EDF_Across_Priorities, | |
23268 | Non_Preemptive_Within_Priorities, and Round_Robin_Within_Priorities. | |
23269 | Introduce new name Stub_Type for implementation defined attribute. | |
23270 | Add pragma Preelaborable_Initialization | |
23271 | Add entry for Priority attribute. | |
23272 | Add Pragma_Wide_Character_Encoding | |
23273 | (Get_Convention_Name): Given a convention id, this function returns the | |
23274 | corresponding name id from the names table. | |
23275 | ||
23276 | 2006-10-31 Ed Schonberg <schonberg@adacore.com> | |
23277 | Robert Dewar <dewar@adacore.com> | |
23278 | Bob Duff <duff@adacore.com> | |
23279 | ||
23280 | * sprint.adb (Sprint_Node_Actual, case Parameter_Specification): Do not | |
23281 | print null exclusion twice in the case of an access definition, | |
23282 | Implement new -gnatL switch | |
23283 | Remove N_Return_Object_Declaration. We now use | |
23284 | N_Object_Declaration instead. Implement the case for | |
23285 | N_Extended_Return_Statement. Alphabetize the cases. | |
23286 | Add cases for new nodes N_Extended_Return_Statement and | |
23287 | N_Return_Object_Declaration. The code is not yet written. | |
23288 | Update the output for N_Formal_Object_Declaration | |
23289 | and N_Object_Renaming_Declaration. | |
23290 | (Write_Itype): Account for the case of a modular integer subtype whose | |
23291 | base type is private. | |
23292 | ||
23293 | 2006-10-31 Arnaud Charlet <charlet@adacore.com> | |
23294 | ||
23295 | * s-restri.ads, s-restri.adb: Mark this package as Preelaborate. | |
23296 | Remove elaboration code, now done in the binder. | |
23297 | ||
23298 | * s-rident.ads: Make this unit Preelaborate. | |
23299 | (No_Restrictions): New constant used to clean up code and follow | |
23300 | preelaborate constraints. | |
23301 | ||
9e81dbc7 | 23302 | * s-stalib.adb: |
70198b9f AC |
23303 | Add System.Restrictions dependence, referenced directly from the |
23304 | binder generated file. | |
23305 | ||
23306 | 2006-10-31 Gary Dismukes <dismukes@adacore.com> | |
23307 | ||
23308 | * s-scaval.adb (Initialize): Add new Boolean flag AFloat that is set | |
23309 | True when AAMP extended floating-point is in use (48-bit). Change type | |
23310 | ByteLF to ByteLLF, add new array type ByteLF and condition the size of | |
23311 | the two byte array types on AFloat. Change type of IV_Ilf overlay | |
23312 | variable from Byte8 to ByteLF. Add appropriate initializations of | |
23313 | floating-point overlays for AAMP cases. | |
23314 | ||
23315 | 2006-10-31 Javier Miranda <miranda@adacore.com> | |
23316 | ||
23317 | * s-tpoben.ads, s-tpoben.adb, s-taprob.ads, s-taprob.adb | |
23318 | (Get_Ceiling): New subprogram that returns | |
23319 | the ceiling priority of the protected object. | |
23320 | (Set_Ceiling): New subprogram that sets the new ceiling priority of | |
23321 | the protected object. | |
23322 | ||
23323 | * s-tarest.adb: (Create_Restricted_Task): Fix potential CE. | |
23324 | ||
23325 | * s-taskin.ads, s-taskin.adb: (Storage_Size): New function. | |
23326 | ||
23327 | 2006-10-31 Jose Ruiz <ruiz@adacore.com> | |
23328 | ||
23329 | * s-tpobop.adb (Requeue_Call): Introduce a dispatching point when | |
23330 | requeuing to the same protected object to give higher priority tasks | |
23331 | the opportunity to execute. | |
23332 | ||
23333 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23334 | ||
23335 | * widechar.adb (Is_Start_Of_Wide_Char): In case of brackets encoding, | |
23336 | add more precise check for the character sequence that follows '[' to | |
23337 | avoid possible confusion in case if '[' is the last character of a | |
23338 | string literals. | |
23339 | (Scan_Wide): Always allow brackets encoding | |
23340 | ||
23341 | 2006-10-31 Olivier Hainque <hainque@adacore.com> | |
23342 | ||
23343 | * s-stchop.ads: make this unit preelaborate. This is desirable in | |
23344 | general and made mandatory by the use of this unit by s-taprop which | |
23345 | is itself preelaborate. | |
23346 | ||
23347 | * s-stchop-vxworks.adb (Set_Stack_Info, Task_Descriptor type): Add | |
23348 | Td_Events component. | |
23349 | ||
23350 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
23351 | ||
23352 | * a-dirval-vms.adb (Invalid_Character): Specify that digits are allowed | |
23353 | in file names. | |
23354 | ||
23355 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
23356 | ||
23357 | * a-direct.ads, a-direct.adb (Search): New procedure in Ada 2005 | |
23358 | ||
23359 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
23360 | ||
23361 | * makegpr.adb (Check_Compilation_Needed): Take into account path names | |
23362 | with spaces. | |
23363 | (Check_Compilation_Needed): When checking a C or C++ source, do not | |
23364 | resolve symbolic links. | |
23365 | (Display_Command): New Boolean parameter Ellipse, defaulted to False. | |
23366 | When not in verbose mode and Ellipse is True, display "..." for the | |
23367 | first argument with Display set to False. | |
23368 | (Build_Global_Archive): Always set Display True for the first object | |
23369 | file. Call Display_Command with Ellipse set to True. | |
23370 | ||
23371 | 2006-10-31 Matt Heaney <heaney@adacore.com> | |
23372 | ||
23373 | * a-crbtgo.ads: Commented each subprogram | |
23374 | ||
23375 | * a-crbtgo.adb: Added reference to book from which algorithms were | |
23376 | adapted. | |
23377 | ||
6f7f72f9 | 23378 | * a-crbtgk.ads, a-crbtgk.adb (Generic_Insert_Post): pass flag to |
70198b9f AC |
23379 | indicate which child. |
23380 | (Generic_Conditional_Insert): changed parameter name from "Success" to | |
23381 | "Inserted". | |
23382 | (Generic_Unconditional_Insert_With_Hint): improved algorithm | |
23383 | ||
23384 | * a-coorse.adb (Replace_Element): changed parameter name in call to | |
23385 | conditional insert operation. | |
23386 | ||
23387 | * a-convec.adb, a-coinve.adb (Insert): removed obsolete comment | |
23388 | ||
23389 | * a-cohama.adb (Iterate): manipulate busy-bit here, instead of in | |
23390 | Generic_Iteration | |
23391 | ||
23392 | * a-ciorse.adb (Replace_Element): changed parameter name in call to | |
23393 | conditional insert operation. | |
23394 | ||
23395 | * a-cihama.adb (Iterate): manipulate busy-bit here, instead of in | |
23396 | Generic_Iteration. | |
23397 | ||
23398 | * a-cidlli.ads, a-cidlli.adb (Splice): Position param is now mode in | |
23399 | instead of mode inout. | |
23400 | ||
23401 | * a-chtgop.adb (Adjust): modified comments to reflect current AI-302 | |
23402 | draft | |
23403 | (Generic_Read): preserve existing buckets array if possible | |
23404 | (Generic_Write): don't send buckets array length anymore | |
23405 | ||
23406 | * a-cdlili.ads, a-cdlili.adb (Splice): Position param is now mode in | |
23407 | instead of mode inout. | |
23408 | ||
23409 | * a-cihase.adb (Difference): iterate over smaller of Tgt and Src sets | |
23410 | (Iterate): manipulate busy-bit here, instead of in Generic_Iteration | |
23411 | ||
23412 | * a-cohase.adb (Difference): iterate over smaller of Tgt and Src sets | |
23413 | (Iterate): manipulate busy-bit here, instead of in Generic_Iteration | |
23414 | (Replace_Element): local operation is now an instantiation | |
23415 | ||
23416 | * a-chtgke.ads, a-chtgke.adb (Generic_Conditional_Insert): manually | |
23417 | check current length. | |
23418 | (Generic_Replace_Element): new operation | |
23419 | ||
23420 | 2006-10-31 Doug Rupp <rupp@adacore.com> | |
23421 | ||
23422 | * g-trasym-vms-alpha.adb: Dummy_User_Act_Proc: New function. | |
23423 | Call TBK$SYMBOLIZE without omitting parameters. | |
23424 | ||
23425 | 2006-10-31 Vincent Celier <celier@adacore.com> | |
23426 | ||
23427 | * symbols-processing-vms-ia64.adb, | |
23428 | symbols-processing-vms-alpha.adb (Process): Do not include symbols | |
23429 | that come from generic instantiations in bodies. | |
23430 | ||
23431 | 2006-10-31 Pat Rogers <rogers@adacore.com> | |
23432 | ||
9e81dbc7 | 23433 | * a-rttiev.ads, a-rttiev.adb: |
70198b9f AC |
23434 | This is a significant redesign primarily for the sake of automatic |
23435 | timer task termination but also to fix a design flaw. | |
23436 | Therefore we are now using an RTS lock, instead of a protected | |
23437 | object, to provide mutual exclusion to the queue of pending events | |
23438 | and the type Timing_Event is no longer a protected type. | |
23439 | ||
23440 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23441 | Cyrille Comar <comar@adacore.com> | |
23442 | Ben Brosgol <brosgol@adacore.com> | |
23443 | ||
23444 | * debug.adb: Update flags documentation | |
23445 | ||
6f7f72f9 EB |
23446 | * gnat_ugn.texi: Add documentation for new -gnatwq switch |
23447 | Clean up documentation for several other warning switches | |
23448 | Clarify how task stack size can be specified with various | |
23449 | versions of Windows. | |
23450 | Add note that -gnatVo includes ranges including loops | |
70198b9f AC |
23451 | Add documentation for -gnatL switch |
23452 | Add note on elaboration warning for initializing variables | |
23453 | Add documentation for new -gnatwt warning switch | |
23454 | Document new form of pragma Warnings (On|Off, string) | |
23455 | Add comment on use of pragma Warnings to control warnings | |
23456 | Add documentation for -gnatjnn switch | |
23457 | Modify section on interfacing with C for VMS 64-bit. | |
23458 | Add doc for -gnatVe/E | |
23459 | Add documentation of new warning flags -gnatww/-gnatwW | |
23460 | Add warnings about address clause overlays to list of warnings | |
23461 | (Exception Handling Control): Document that the option --RTS must be | |
23462 | used consistently for gcc and gnatbind. | |
23463 | Clarify that inlining is not always possible | |
23464 | Update documentation on pragma Unchecked_Union. | |
23465 | ||
9e81dbc7 | 23466 | * gnat_rm.texi: |
70198b9f AC |
23467 | Add documentation for new extended version of pragma Obsolescent |
23468 | Add documentation for implementation defined attribute 'Stub_Type. | |
23469 | Add note on use of Volatile in asm statements | |
23470 | Add documentation on use of pragma Unreferenced in context clause | |
23471 | Document new form of pragma Warnings (On|Off, pattern) | |
23472 | Document pragma Wide_Character_Encoding | |
23473 | Add note that pragma Restrictions (No_Elaboration_Code) is only fully | |
23474 | enforced if code generation is active. | |
23475 | Add section on pragma Suppress to document GNAT specific check | |
23476 | Alignment_Check | |
23477 | Clarify difference between No_Dispatching_Calls & No_Dispatch. | |
23478 | Add documentation for pragma Restrictions (No_Elaboration_Code) | |
23479 | ||
9e81dbc7 | 23480 | * gnat-style.texi: |
70198b9f AC |
23481 | Add comments on layout of subprogram local variables in the |
23482 | presence of nested subprograms. | |
23483 | ||
6f7f72f9 | 23484 | * ug_words: Resync. |
70198b9f AC |
23485 | |
23486 | * elists.ads: Minor reformatting | |
23487 | Node returns Node_Or_Entity_Id (doc change only) | |
23488 | ||
23489 | * xgnatugn.adb: Replace ACADEMICEDITION with GPLEDITION | |
23490 | ||
23491 | * g-arrspl.ads (Create): Update comments. | |
23492 | ||
23493 | * sem.ads: Add details on the handling of the scope stack. | |
23494 | ||
6f7f72f9 | 23495 | * usage.adb: Update documentation. |
70198b9f | 23496 | |
9e81dbc7 | 23497 | * validsw.ads, validsw.adb: |
70198b9f AC |
23498 | Add definition of Validity_Check_Components and implement -gnatVe/E |
23499 | ||
6f7f72f9 | 23500 | * vms_data.ads: Add missing VMS qualifiers. |
70198b9f AC |
23501 | |
23502 | * s-addope.ads: Add documentation on overflow and divide by zero | |
23503 | ||
23504 | 2006-10-31 Robert Dewar <dewar@adacore.com> | |
23505 | Thomas Quinot <quinot@adacore.com> | |
23506 | Arnaud Charlet <charlet@adacore.com> | |
23507 | ||
23508 | * fmap.adb: Put routines in alpha order | |
23509 | ||
23510 | * g-boumai.ads: Remove redundant 'in' keywords | |
23511 | ||
23512 | * g-cgi.adb: Minor reformatting | |
23513 | ||
23514 | * g-cgi.ads: Remove redundant 'in' keywords | |
23515 | ||
23516 | * get_targ.adb: Put routines in alpha order | |
23517 | ||
23518 | * prj-attr.ads: Minor reformatting | |
23519 | ||
23520 | * s-atacco.ads: Minor reformatting | |
23521 | ||
23522 | * scn.adb: Put routines in alpha order | |
23523 | ||
23524 | * sinput-l.adb: Minor comment fix | |
23525 | ||
23526 | * sinput-p.adb: Minor comment fix | |
23527 | ||
23528 | * s-maccod.ads: Minor reformatting | |
23529 | ||
23530 | * s-memory.adb: Minor reformatting | |
23531 | ||
23532 | * s-htable.adb: Fix typo in comment. | |
23533 | ||
23534 | * s-secsta.adb: Minor comment update. | |
23535 | ||
23536 | * s-soflin.adb: Minor reformatting | |
23537 | ||
9e81dbc7 | 23538 | * s-stoele.ads: |
70198b9f AC |
23539 | Add comment about odd qualification in Storage_Offset declaration |
23540 | ||
9e81dbc7 | 23541 | * s-strxdr.adb: |
70198b9f AC |
23542 | Remove unnecessary 'in' keywords for formal parameters. |
23543 | ||
23544 | * treeprs.adt: Minor reformatting | |
23545 | ||
23546 | * urealp.adb: Put routines in alpha order | |
23547 | ||
23548 | * s-wchcon.ads, s-wchcon.adb (Get_WC_Encoding_Method): New version | |
23549 | taking string. | |
23550 | ||
23551 | * s-asthan-vms-alpha.adb: Remove redundant 'in' keywords | |
23552 | ||
23553 | * g-trasym-vms-ia64.adb: Remove redundant 'in' keywords | |
23554 | ||
23555 | * env.c (__gnat_unsetenv): Unsetenv is unavailable on LynxOS, so | |
23556 | workaround as on other platforms. | |
23557 | ||
23558 | * g-eacodu-vms.adb: Remove redundant 'in' keywords | |
23559 | * g-expect-vms.adb: Remove redundant 'in' keywords | |
23560 | ||
23561 | * gnatdll.adb (Add_Files_From_List): Handle Name_Error and report a | |
23562 | clear error message if the list-of-files file cannot be opened. | |
23563 | ||
23564 | * g-thread.adb (Unregister_Thread_Id): Add use type Thread_Id so the | |
23565 | equality operator is always visible. | |
23566 | ||
23567 | * lang.opt: Woverlength-strings: New option. | |
23568 | ||
9e81dbc7 | 23569 | * nmake.adt: |
70198b9f AC |
23570 | Update copyright, since nmake.ads and nmake.adb have changed. |
23571 | ||
23572 | * osint-b.ads, osint-b.adb (Time_From_Last_Bind): removed function . | |
23573 | (Binder_Output_Time_Stamps_Set): removed. | |
23574 | (Old_Binder_Output_Time_Stamp): idem. | |
23575 | (New_Binder_Output_Time_Stamp): idem. | |
23576 | (Recording_Time_From_Last_Bind): idem. | |
23577 | (Recording_Time_From_Last_Bind): Make constant. | |
23578 | ||
23579 | * output.ads, output.adb (Write_Str): Allow LF characters | |
23580 | (Write_Spaces): New procedure | |
23581 | ||
23582 | * prepcomp.adb (Preproc_Data_Table): Change Increment from 5% to 100% | |
23583 | ||
23584 | * inline.adb: Minor reformatting | |
23585 | ||
23586 | * s-asthan-vms-alpha.adb: Remove redundant 'in' keywords | |
23587 | ||
23588 | * s-mastop-vms.adb: Remove redundant 'in' keywords | |
23589 | ||
23590 | * s-osprim-vms.adb: Remove redundant 'in' keywords | |
23591 | ||
23592 | * s-trafor-default.adb: Remove redundant 'in' keywords | |
23593 | ||
23594 | * 9drpc.adb: Remove redundant 'in' keywords | |
23595 | ||
23596 | * s-osinte-mingw.ads: Minor reformatting | |
23597 | ||
23598 | * s-inmaop-posix.adb: Minor reformatting | |
23599 | ||
23600 | * a-direio.ads: Remove quotes from Compile_Time_Warning message | |
23601 | ||
23602 | * a-exexda.adb: Minor code reorganization | |
23603 | ||
23604 | * a-filico.adb: Minor reformatting | |
23605 | ||
23606 | * a-finali.adb: Minor reformatting | |
23607 | ||
23608 | * a-nudira.ads: Remove quote from Compile_Time_Warning message | |
23609 | ||
23610 | * a-numeri.ads: Minor reformatting | |
23611 | ||
23612 | * a-sequio.ads: Remove quotes from Compile_Time_Warning message | |
23613 | ||
23614 | * exp_pakd.ads: Fix obsolete comment | |
23615 | ||
23616 | * a-ztenau.adb, a-ztenio.adb, a-wtenau.adb, a-tienau.adb, | |
23617 | a-wtenio.adb (Put): Avoid assuming low bound of string is 1. | |
23618 | Probably not a bug, but certainly neater and more efficient. | |
23619 | ||
23620 | * a-tienio.adb: Minor reformatting | |
23621 | ||
23622 | * comperr.adb (Compiler_Abort): Call Cancel_Special_Output at start | |
23623 | Avoid assuming low bound of string is 1. | |
23624 | ||
23625 | * gnatbind.adb: Change Bindusg to package and rename procedure as | |
23626 | Display, which now ensures that it only outputs usage information once. | |
23627 | (Scan_Bind_Arg): Avoid assuming low bound of string is 1. | |
23628 | ||
23629 | * g-pehage.adb (Build_Identical_Keysets): Replace use of 1 by | |
23630 | Table'First. | |
23631 | ||
23632 | * g-regpat.adb (Insert_Operator): Add pragma Warnings (Off) to kill | |
23633 | warning. | |
23634 | (Match): Add pragma Assert to ensure that Matches'First is zero | |
23635 | ||
23636 | * g-regpat.ads (Match): Document that Matches lower bound must be zero | |
23637 | ||
23638 | * makeutl.adb (Is_External_Assignment): Add pragma Assert's to check | |
23639 | documented preconditions (also kills warnings about bad indexes). | |
23640 | ||
23641 | * mdll.adb (Build_Dynamic_Library): Avoid assumption that Afiles'First | |
23642 | is 1. | |
23643 | (Build_Import_Library): Ditto; | |
23644 | ||
23645 | * mdll-utl.adb: (Gnatbind): Avoid assumption that Alis'First = 1 | |
23646 | ||
23647 | * rtsfind.adb (RTE_Error_Msg): Avoid assuming low bound of string is 1. | |
23648 | ||
23649 | * sem_case.adb (Analyze_Choices): Add pragma Assert to check that | |
23650 | lower bound of choice table is 1. | |
23651 | ||
23652 | * sem_case.ads (Analyze_Choices): Document that lower bound of | |
23653 | Choice_Table is 1. | |
23654 | ||
23655 | * s-imgdec.adb (Set_Decimal_Digits): Avoid assuming low bound of | |
23656 | string is 1. | |
23657 | ||
23658 | * uintp.adb (Init_Operand): Document that low bound of Vec is always 1, | |
23659 | and add appropriate Assert pragma to suppress warnings. | |
23660 | ||
23661 | * atree.h, atree.ads, atree.adb | |
23662 | Change Elist24 to Elist25 | |
23663 | Add definitions of Field28 and Node28 | |
23664 | (Traverse_Field): Use new syntactic parent table in sinfo. | |
23665 | ||
23666 | * cstand.adb: Change name Is_Ada_2005 to Is_Ada_2005_Only | |
23667 | ||
23668 | * itypes.adb: Change name Is_Ada_2005 to Is_Ada_2005_Only | |
23669 | ||
23670 | * exp_tss.adb: Put routines in alpha order | |
23671 | ||
23672 | * fe.h: Remove redundant declarations. | |
23673 | ||
719bb4e3 | 23674 | 2006-10-23 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
ed41063a | 23675 | |
c79efc4d RÁE |
23676 | * utils.c (builtin_function): Rename to gnat_builtin_function. |
23677 | Move common code to add_builtin_function. | |
23678 | * misc.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as | |
23679 | gnat_builtin_function. | |
23680 | * gigi.h (builtin_function): Rename to gnat_builtin_function. | |
23681 | Change the signature. | |
23682 | ||
a8384928 BM |
23683 | 2006-10-16 Brooks Moses <bmoses@stanford.edu> |
23684 | ||
23685 | * Makefile.in: Add TEXI2PDF definition. | |
23686 | * Make-lang.in: Add "ada.pdf" target. | |
23687 | ||
2285b053 KH |
23688 | 2006-10-03 Kazu Hirata <kazu@codesourcery.com> |
23689 | ||
23690 | * decl.c, utils.c: Fix comment typos. | |
c0a69967 KH |
23691 | * utils.c: Fix a typo. |
23692 | ||
b55e7f34 EB |
23693 | 2006-09-28 Eric Botcazou <ebotcazou@adacore.com> |
23694 | ||
23695 | * decl.c (gnat_to_gnu_entity) <E_Procedure>: Do not set "const" flag | |
23696 | on "pure" Ada subprograms if SJLJ exceptions are used. | |
23697 | * trans.c (Handled_Sequence_Of_Statements_to_gnu): Set TREE_NO_WARNING | |
23698 | on the declaration node of JMPBUF_SAVE. | |
23699 | * utils.c (init_gigi_decls): Set DECL_IS_PURE on the declaration nodes | |
23700 | of Get_Jmpbuf_Address_Soft and Get_GNAT_Exception. | |
23701 | * utils2.c (build_call_0_expr): Do not set TREE_SIDE_EFFECTS. | |
23702 | ||
9e94c78f | 23703 | 2006-08-20 Laurent Guerby <laurent@guerby.net> |
d2b40c09 | 23704 | |
7a197678 EB |
23705 | PR ada/28716 |
23706 | g-socket.adb (Bind_Socket): Call Set_Address. | |
23707 | ||
41d9adc7 EB |
23708 | 2006-09-15 Eric Botcazou <ebotcazou@adacore.com> |
23709 | ||
23710 | PR ada/15802 | |
23711 | * decl.c (same_discriminant_p): New static function. | |
23712 | (gnat_to_gnu_entity) <E_Record_Type>: When there is a parent | |
23713 | subtype and we have discriminants, fix up the COMPONENT_REFs | |
23714 | for the discriminants to make them reference the corresponding | |
23715 | fields of the parent subtype after it has been built. | |
23716 | ||
21cc3719 RS |
23717 | 2006-09-15 Roger Sayle <roger@eyesopen.com> |
23718 | ||
23719 | PR ada/18817 | |
23720 | * utils.c (max_size): Perform constant folding of (A ? B : C) - D | |
23721 | into A ? B - D : C - D when calculating the size of a MINUS_EXPR. | |
23722 | ||
6f2789da OH |
23723 | 2006-09-13 Olivier Hainque <hainque@adacore.com> |
23724 | ||
23725 | PR ada/29025 | |
23726 | * trans.c (gnat_gimplify_expr) <ADDR_EXPR>: When taking the address | |
23727 | of a SAVE_EXPR, just make the operand addressable/not-readonly and | |
23728 | let the common gimplifier code make and propagate a temporary copy. | |
23729 | (call_to_gnu): Clarify the use of SAVE_EXPR for not addressable | |
23730 | out/in-out actuals and defer setting the addressable/readonly bits | |
23731 | to the gimplifier. | |
23732 | ||
efaa616e EB |
23733 | 2006-09-13 Eric Botcazou <ebotcazou@adacore.com> |
23734 | ||
23735 | PR ada/28591 | |
23736 | * decl.c (components_to_record): Defer emitting debug info for the | |
23737 | record type associated with the variant until after we are sure to | |
23738 | actually use it. | |
23739 | ||
2655f1c6 EB |
23740 | 2006-09-13 Eric Botcazou <ebotcazou@adacore.com> |
23741 | ||
23742 | PR ada/21952 | |
23743 | * gigi.h (gnat_internal_attribute_table): Declare. | |
23744 | * misc.c (LANG_HOOKS_ATTRIBUTE_TABLE): Define to above. | |
23745 | * utils.c (gnat_internal_attribute_table): New global variable. | |
23746 | (builtin_function): Always call decl_attributes on the builtin. | |
23747 | (handle_const_attribute): New static function. | |
23748 | (handle_nothrow_attribute): Likewise. | |
23749 | ||
48779194 VR |
23750 | 2006-07-28 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
23751 | ||
23752 | * Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies. | |
23753 | ||
8df7d439 EB |
23754 | 2006-06-23 Olivier Hainque <hainque@adacore.com> |
23755 | ||
23756 | * misc.c (gnat_type_max_size): Look at TYPE_ADA_SIZE if we have | |
23757 | not been able to get a constant upper bound from TYPE_SIZE_UNIT. | |
23758 | ||
83fdc7c4 | 23759 | 2006-06-20 James A. Morrison <phython@gcc.gnu.org> |
6f7f72f9 | 23760 | Eric Botcazou <ebotcazou@adacore.com> |
83fdc7c4 JM |
23761 | |
23762 | PR ada/18692 | |
23763 | * Make-lang.in: Add check-gnat to lang_checks. Rename existing | |
23764 | check-gnat into check-acats. | |
23765 | ||
5f516f59 KB |
23766 | 2006-06-17 Karl Berry <karl@gnu.org> |
23767 | ||
6f7f72f9 | 23768 | * gnat-style.texi (@dircategory): Use "Software development" |
5f516f59 KB |
23769 | instead of "Programming", following the Free Software Directory. |
23770 | ||
ce0d1b88 JDA |
23771 | 2006-06-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
23772 | ||
23773 | PR ada/27944 | |
23774 | * s-taprop-hpux-dce.adb: Delete redundant 'with System.Parameters'. | |
23775 | ||
9e94c78f | 23776 | 2006-06-06 Laurent Guerby <laurent@guerby.net> |
8c60f779 | 23777 | |
6f7f72f9 EB |
23778 | PR ada/27769 |
23779 | mlib-utl.adb: Use Program_Name. | |
23780 | ||
ce2e12c2 KH |
23781 | 2006-05-28 Kazu Hirata <kazu@codesourcery.com> |
23782 | ||
23783 | * decl.c, env.c, gigi.h, init.c, initialize.c, raise-gcc.c, | |
23784 | sem_ch13.adb, sysdep.c, targtyps.c, tb-alvxw.c, tracebak.c, | |
23785 | trans.c, utils.c: Fix comment typos. Follow spelling | |
23786 | conventions. | |
23787 | * gnat_rm.texi, gnat_ugn.texi, : Fix typos. Follow spelling | |
23788 | conventions. | |
23789 | ||
ba4ac682 EB |
23790 | 2006-05-19 Nicolas Setton <setton@adacore.com> |
23791 | ||
23792 | * misc.c (gnat_dwarf_name): New function. | |
23793 | (LANG_HOOKS_DWARF_NAME): Define to it. | |
23794 | ||
05b44921 L |
23795 | 2006-05-14 H.J. Lu <hongjiu.lu@intel.com> |
23796 | ||
23797 | * Make-lang.in (ada/decl.o): Replace target.h with $(TARGET_H). | |
23798 | (ada/misc.o): Likewise. | |
23799 | (ada/utils.o): Likewise. | |
23800 | ||
a3bd7058 AJ |
23801 | 2006-04-08 Aurelien Jarno <aurel32@debian.org> |
23802 | ||
23803 | * Makefile.in: Add Ada support for GNU/kFreeBSD. | |
23804 | * s-osinte-kfreebsd-gnu.ads: New file. | |
23805 | ||
ad3a7ce3 CD |
23806 | 2006-03-29 Carlos O'Donell <carlos@codesourcery.com> |
23807 | ||
23808 | * Make-lang.in: Rename docdir to gcc_docdir. | |
23809 | ||
936a6fa7 EB |
23810 | 2006-03-04 Eric Botcazou <ebotcazou@adacore.com> |
23811 | ||
23812 | * gigi.h (get_ada_base_type): Delete. | |
23813 | * utils2.c (get_ada_base_type): Likewise. | |
23814 | * trans.c (convert_with_check): Operate in the real base type. | |
23815 | ||
93f978b7 RK |
23816 | 2006-03-03 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
23817 | ||
23818 | * uintp.adb (Num_Bits): Handle Uint_Int_First specially. | |
23819 | ||
434aeebb RS |
23820 | 2006-03-02 Richard Sandiford <richard@codesourcery.com> |
23821 | ||
23822 | * utils.c (create_var_decl): Use have_global_bss_p when deciding | |
23823 | whether to make the decl common. | |
23824 | ||
719bb4e3 | 23825 | 2006-02-20 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
93f978b7 | 23826 | |
ed41063a | 23827 | * Make-lang.in (Ada): Remove. |
9d29a5b7 RE |
23828 | (.PHONY): Remove Ada |
23829 | ||
c63f730e AC |
23830 | 2006-02-17 Ed Schonberg <schonberg@adacore.com> |
23831 | ||
23832 | * sem_ch4.adb (Find_Boolean_Types): If one of the operands is an | |
23833 | aggregate, check the interpretations of the other operand to find one | |
23834 | that may be a boolean array. | |
23835 | ||
23836 | (Analyze_Selected_Component): Fix flow-of-control typo in case where | |
23837 | the prefix is a private extension. | |
23838 | ||
23839 | 2006-02-17 Eric Botcazou <botcazou@adacore.com> | |
23840 | ||
23841 | PR ada/26315 | |
c63f730e AC |
23842 | * utils2.c (find_common_type): If both input types are BLKmode and |
23843 | have the same constant size, keep using the first one. | |
23844 | ||
23845 | * bindgen.adb: (Gen_Versions_Ada): Revert previous workaround. | |
23846 | ||
23847 | * decl.c (gnat_to_gnu_entity): Only check TREE_OVERFLOW for a constant. | |
23848 | ||
23849 | * misc.c (gnat_handle_option): New case for -Woverlength-strings. | |
23850 | ||
23851 | 2006-02-17 Jose Ruiz <ruiz@adacore.com> | |
23852 | ||
9e81dbc7 AS |
23853 | * s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb, |
23854 | s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb, | |
23855 | s-taprop-posix.adb, s-taprop-vxworks.adb, s-taprop-lynxos.adb, | |
c63f730e AC |
23856 | s-taprop-tru64.adb (Set_False, Set_True, Suspend_Until_True): Add |
23857 | Abort_Defer/Undefer pairs to avoid the possibility of a task being | |
23858 | aborted while owning a lock. | |
23859 | ||
23860 | 2006-02-17 Javier Miranda <miranda@adacore.com> | |
23861 | Robert Dewar <dewar@adacore.com> | |
23862 | ||
23863 | * exp_ch4.adb (Expand_N_Allocator): If the allocated object is accessed | |
23864 | through an access to class-wide interface we force the displacement of | |
23865 | the pointer to the allocated object to reference the corresponding | |
23866 | secondary dispatch table. | |
23867 | (Expand_N_Op_Divide): Allow 64 bit divisions by small power of 2, | |
23868 | if Long_Shifts are supported on the target, even if 64 bit divides | |
23869 | are not supported (configurable run time mode). | |
23870 | (Expand_N_Type_Conversion): Do validity check if validity checks on | |
23871 | operands are enabled. | |
23872 | (Expand_N_Qualified_Expression): Do validity check if validity checks | |
23873 | on operands are enabled. | |
23874 | ||
23875 | 2006-02-17 Ed Schonberg <schonberg@adacore.com> | |
23876 | ||
23877 | * exp_dbug.adb (Debug_Renaming_Declaration): Indicate that the entity | |
23878 | must be materialized when the renamed expression is an explicit | |
23879 | dereference. | |
23880 | ||
23881 | 2006-02-17 Ed Schonberg <schonberg@adacore.com> | |
23882 | ||
23883 | * freeze.adb (Statically_Discriminated_Components): Return false if | |
23884 | the bounds of the type of the discriminant are not static expressions. | |
23885 | ||
23886 | * sem_aggr.adb (Check_Static_Discriminated_Subtype): Return false if | |
23887 | the bounds of the discriminant type are not static. | |
23888 | ||
23889 | 2006-02-17 Robert Dewar <dewar@adacore.com> | |
23890 | ||
23891 | * g-os_lib.adb (Copy_File): Make sure that if From has an Invalid_FD, | |
23892 | then we close To if it is valid. | |
23893 | ||
23894 | 2006-02-17 Vasiliy Fofanov <fofanov@adacore.com> | |
23895 | ||
23896 | * init.c (facility_resignal_table): new array | |
23897 | (__gnat_default_resignal_p): enhance default predicate to resignal if | |
23898 | VMS condition has one of the predefined facility codes. | |
23899 | ||
23900 | 2006-02-17 Vasiliy Fofanov <fofanov@adacore.com> | |
23901 | ||
23902 | * Makefile.in: Use VMS64 specialized versions of several units in | |
23903 | Interfaces.C hierarchy to be compatible with HP C default size choices. | |
23904 | Use the default version of Ada.Synchronous_Task_Control for VxWorks 653. | |
23905 | ||
23906 | 2006-02-17 Ed Schonberg <schonberg@adacore.com> | |
23907 | ||
23908 | * sem_ch10.adb (Analyze_With_Clause): If the unit is a subprogram | |
23909 | instantiation, the corresponding entity is the related_instance of the | |
23910 | wrapper package created for the instance. | |
23911 | ||
23912 | 2006-02-17 Ed Schonberg <schonberg@adacore.com> | |
23913 | ||
23914 | * sem_ch12.adb (Analyze_Package_Instantiation): Inline_Now is false if | |
23915 | the current instance is nested within another instance in a child unit. | |
23916 | ||
23917 | 2006-02-17 Javier Miranda <miranda@adacore.com> | |
23918 | Ed Schonberg <schonberg@adacore.com> | |
23919 | ||
23920 | * sem_ch3.adb (Build_Discriminated_Subtype): In case of concurrent | |
23921 | type we cannot inherit the primitive operations; we inherit the | |
23922 | Corresponding_Record_Type (which has the list of primitive operations). | |
23923 | (Check_Anonymous_Access_Types): When creating anonymous access types for | |
23924 | access components, use Rewrite in order to preserve the tree structure, | |
23925 | for ASIS use. | |
23926 | (Analyze_Object_Declaration): For limited types with access | |
23927 | discriminants with defaults initialized by an aggregate, obtain | |
23928 | subtype from aggregate as for other mutable types. | |
23929 | (Derived_Type_Declaration): If the derived type is a limited interface, | |
23930 | set the corresponding flag (Is_Limited_Record is not sufficient). | |
23931 | ||
23932 | 2006-02-17 Ed Schonberg <schonberg@adacore.com> | |
23933 | ||
23934 | * sem_ch6.adb (Build_Body_To_Inline): Enforce the rule that in order | |
23935 | to inline a function that returns an unconstrained type, the return | |
23936 | expression must be the first variable declared in the body of the | |
23937 | function. | |
23938 | ||
23939 | 2006-02-17 Javier Miranda <miranda@adacore.com> | |
23940 | ||
23941 | * sem_res.adb (Resolve_Type_Conversion): In case of conversion to an | |
23942 | abstract interface type, the static analysis is not enough to know if | |
23943 | the interface is implemented or not by the source tagged type. Hence | |
23944 | we must pass the work to the expander to generate the required code to | |
23945 | evaluate the conversion at run-time. | |
23946 | (Resolve_Equality_Op): Do not apply previous | |
23947 | transformation if expansion is disasbled, to prevent anomalies when | |
23948 | locating global references in a generic unit. | |
23949 | ||
23950 | 2006-02-17 Vincent Celier <celier@adacore.com> | |
23951 | ||
23952 | * snames.ads, snames.adb: New standard names for new project attributes: | |
23953 | archive_builder, archive_indexer, compiler_pic_option, | |
23954 | config_body_file_name, config_body_file_name_pattern, | |
23955 | config_file_switches, config_file_unique, config_spec_file_name, | |
23956 | config_spec_file_name_pattern, default_builder_switches, | |
23957 | default_global_compiler_switches, default_language, | |
23958 | dependency_file_kind, global_compiler_switches, include_path, | |
23959 | include_path_file, language_kind, linker_executable_option, | |
23960 | linker_lib_dir_option, linker_lib_name_option, mapping_file_switches, | |
23961 | roots, runtime_project. | |
23962 | ||
23963 | 2006-02-17 Matthew Heaney <heaney@adacore.com> | |
23964 | ||
9e81dbc7 | 23965 | * a-convec.ads, a-convec.adb: |
c63f730e AC |
23966 | (operator "&"): handle potential overflow for large index types |
23967 | (Insert): removed Contraint_Error when using large index types | |
23968 | (Insert_Space): removed Constraint_Error for large index types | |
23969 | (Length): moved constraint check from Length to Insert | |
23970 | ||
23971 | * a-coinve.ads, a-coinve.adb: Stream attribute procedures are declared | |
23972 | as not null access. | |
23973 | Explicit raise statements now include an exception message. | |
23974 | (operator "&"): handle potential overflow for large index types | |
23975 | (Insert): removed Contraint_Error when using large index types | |
23976 | (Insert_Space): removed Constraint_Error for large index types | |
23977 | (Length): moved constraint check from Length to Insert | |
23978 | ||
23979 | 2006-02-17 Robert Dewar <dewar@adacore.com> | |
23980 | ||
23981 | * s-wchcnv.adb: Document handling of [ on output (we do not change | |
23982 | this to ["5B"] and the new comments say why not. | |
23983 | ||
9e81dbc7 | 23984 | * gnat_ugn.texi: |
c63f730e AC |
23985 | Add note for -gnatVo that this now includes the cases of type |
23986 | conversions and qualified expressions. | |
23987 | Add comments on handling of brackets encoding for Text_IO | |
23988 | ||
23989 | 2006-02-17 Ramon Fernandez <fernandez@adacore.com> | |
23990 | Thomas Quinot <quinot@adacore.com> | |
23991 | Robert Dewar <dewar@adacore.com> | |
23992 | Javier Miranda <miranda@adacore.com> | |
23993 | ||
23994 | * expander.adb: Fix typo in comment | |
23995 | ||
23996 | * exp_pakd.adb: Fix typo | |
23997 | Minor comment reformatting. | |
23998 | ||
23999 | * g-dyntab.adb: Minor reformatting | |
24000 | ||
24001 | * exp_ch6.adb (Register_Interface_DT_Entry): Traverse the list of | |
24002 | aliased subprograms to look for the abstract interface subprogram. | |
24003 | ||
fd7927cd EB |
24004 | 2006-02-16 Eric Botcazou <ebotcazou@adacore.com> |
24005 | ||
24006 | * env.c (__gnat_setenv): Use size_t. | |
24007 | (__gnat_unsetenv): Likewise. | |
24008 | (__gnat_clearenv): Likewise. | |
24009 | ||
3f806915 AC |
24010 | 2006-02-16 Arnaud Charlet <charlet@adacore.com> |
24011 | ||
24012 | * opt.ads (Ada_Version_Default): Set to Ada 2005 by default. | |
24013 | ||
cc26ad97 AC |
24014 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> |
24015 | ||
24016 | * a-intnam-os2.ads, a-intnam-unixware.ads, g-soccon-unixware.ads, | |
24017 | g-soliop-unixware.ads, i-os2err.ads, i-os2lib.adb, i-os2lib.ads, | |
24018 | i-os2syn.ads, i-os2thr.ads, s-intman-irix-athread.adb, | |
24019 | s-osinte-aix-fsu.ads, s-osinte-fsu.adb, s-parame-os2.adb, | |
24020 | s-osinte-irix-athread.ads, s-osinte-linux-fsu.ads, s-osinte-os2.adb, | |
24021 | s-osinte-os2.ads, s-osinte-solaris-fsu.ads, s-osinte-unixware.adb, | |
24022 | s-osinte-unixware.ads, s-osprim-os2.adb, s-taprop-irix-athread.adb, | |
24023 | s-taprop-os2.adb, s-tasinf-irix-athread.adb, s-tasinf-irix-athread.ads, | |
24024 | s-taspri-os2.ads, system-os2.ads, system-unixware.ads: Removed, | |
24025 | no longer used. | |
24026 | ||
24027 | 2006-02-13 Jose Ruiz <ruiz@adacore.com> | |
24028 | ||
24029 | * a-taster.adb (Current_Task_Fallback_Handler): Document why explicit | |
24030 | protection against race conditions is not needed. | |
24031 | (Set_Dependents_Fallback_Handler): Add mutual exclusive access to the | |
24032 | fallback handler. | |
24033 | (Set_Specific_Handler): Add mutual exclusive access to the specific | |
24034 | handler. | |
24035 | (Specific_Handler): Add mutual exclusive access for retrieving the | |
24036 | specific handler. | |
24037 | ||
24038 | * s-tarest.adb (Task_Wrapper): Add mutual exclusive access to the fall | |
24039 | back handler. | |
24040 | ||
24041 | * s-taskin.ads (Common_ATCB): Remove pragma Atomic for | |
24042 | Fall_Back_Handler and Specific_Handler. | |
24043 | ||
24044 | * s-tassta.adb (Task_Wrapper): Add mutual exclusive access to the task | |
24045 | termination handlers. | |
24046 | Set two different owerflow depending on the maximal stack size. | |
24047 | ||
24048 | * s-solita.adb (Task_Termination_Handler_T): Document why explicit | |
24049 | protection against race conditions is not needed when executing the | |
24050 | task termination handler. | |
24051 | ||
24052 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24053 | ||
24054 | * s-gloloc-mingw.adb, a-cgaaso.ads, a-stzmap.adb, a-stzmap.adb, | |
24055 | a-stzmap.ads, a-ztcoio.adb, a-ztedit.adb, a-ztedit.ads, a-ztenau.adb, | |
24056 | a-ztenau.ads, a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads, | |
24057 | a-comlin.adb, a-decima.adb, a-decima.ads, a-direio.adb, a-direio.adb, | |
24058 | a-direio.adb, a-direio.ads, a-ngcoty.adb, a-ngcoty.ads, a-nuflra.adb, | |
24059 | a-nuflra.ads, a-sequio.adb, a-sequio.ads, a-sequio.ads, a-storio.ads, | |
24060 | a-stream.ads, a-ststio.adb, a-ststio.adb, a-ststio.ads, a-ststio.ads, | |
24061 | a-stwima.adb, a-stwima.adb, a-stwima.ads, a-stwise.adb, a-teioed.adb, | |
24062 | a-teioed.ads, a-ticoau.adb, a-ticoau.ads, a-ticoio.adb, a-tasatt.ads, | |
24063 | a-tideau.adb, a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb, | |
24064 | a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.ads, a-tiflau.adb, | |
24065 | a-tiflau.ads, a-tiflio.adb, a-tiflio.adb, a-tiflio.ads, a-tigeau.ads, | |
24066 | a-tiinau.adb, a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoio.adb, | |
24067 | a-timoio.ads, a-titest.adb, a-titest.ads, a-wtcoio.adb, a-wtdeau.adb, | |
24068 | a-wtdeau.ads, a-wtdeio.adb, a-wtdeio.ads, a-wtedit.adb, a-wtedit.adb, | |
24069 | a-wtedit.ads, a-wtenau.adb, a-wtenau.ads, a-wtenau.ads, a-wtenio.adb, | |
24070 | a-wtenio.ads, a-wtfiio.adb, a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, | |
24071 | a-wtflio.adb, a-wtflio.adb, a-wtflio.ads, a-wtgeau.ads, a-wtinau.adb, | |
24072 | a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb, a-wtmoau.ads, | |
24073 | a-wtmoio.adb, a-wtmoio.ads, xref_lib.adb, xref_lib.ads, xr_tabls.adb, | |
24074 | g-boubuf.adb, g-boubuf.ads, g-cgideb.adb, g-io.adb, gnatdll.adb, | |
24075 | g-pehage.adb, i-c.ads, g-spitbo.adb, g-spitbo.ads, mdll.adb, | |
24076 | mlib-fil.adb, mlib-utl.adb, mlib-utl.ads, prj-env.adb, prj-tree.adb, | |
24077 | prj-tree.ads, prj-util.adb, s-arit64.adb, s-asthan.ads, s-auxdec.adb, | |
24078 | s-auxdec.ads, s-chepoo.ads, s-direio.adb, s-direio.ads, s-errrep.adb, | |
24079 | s-errrep.ads, s-fileio.adb, s-fileio.ads, s-finroo.adb, s-finroo.ads, | |
24080 | s-gloloc.adb, s-gloloc.ads, s-io.adb, s-io.ads, s-rpc.adb, | |
24081 | s-rpc.ads, s-shasto.ads, s-sequio.adb, s-stopoo.ads, s-stratt.adb, | |
24082 | s-stratt.ads, s-taasde.adb, s-taasde.ads, s-tadert.adb, s-sequio.ads, | |
24083 | s-taskin.adb, s-tasque.adb, s-tasque.ads, s-wchjis.ads, makegpr.adb, | |
24084 | a-coinve.adb, a-cidlli.adb, eval_fat.adb, exp_dist.ads, exp_smem.adb, | |
24085 | fmap.adb, g-dyntab.ads, g-expect.adb, lib-xref.ads, osint.adb, | |
24086 | par-load.adb, restrict.adb, sinput-c.ads, a-cdlili.adb, | |
24087 | system-vms.ads, system-vms-zcx.ads, system-vms_64.ads: Minor | |
24088 | reformatting. | |
24089 | ||
24090 | 2006-02-13 Hristian Kirtchev <kirtchev@adacore.com> | |
24091 | ||
24092 | * a-tasatt.adb, s-osinte-lynxos-3.adb, s-osinte-lynxos.adb, | |
24093 | s-osinte-aix.adb, s-interr-sigaction.adb, s-asthan-vms-alpha.adb, | |
24094 | s-interr-vms.adb, s-intman-vms.adb, s-interr-vxworks.adb, | |
24095 | s-intman-vxworks.adb, s-asthan-vms-alpha.adb, a-ztexio.adb, | |
24096 | a-reatim.adb, a-taside.adb, a-textio.adb, a-witeio.adb, prj-attr.adb, | |
24097 | s-intman-irix.adb, s-intman-solaris.adb, s-intman-posix.adb, | |
24098 | a-dynpri.adb, a-interr.adb, g-dynhta.adb, s-asthan.adb, s-interr.adb, | |
24099 | s-pooglo.adb, s-pooloc.adb, s-poosiz.adb, s-tasren.adb, s-tasuti.adb, | |
24100 | s-tataat.adb, s-tpobop.adb: Remove redundant with clauses. | |
24101 | ||
24102 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> | |
24103 | ||
9e81dbc7 AS |
24104 | * s-osinte-darwin.adb, s-osinte-darwin.ads, s-osinte-vxworks.ads, |
24105 | s-osinte-solaris.ads, s-osinte-linux.ads, s-osinte-freebsd.ads, | |
24106 | s-osinte-solaris-posix.ads, s-osinte-lynxos-3.ads, s-osinte-lynxos.ads, | |
24107 | s-osinte-tru64.ads, s-osinte-aix.ads, s-osinte-irix.ads, | |
24108 | s-osinte-hpux-dce.ads, s-osinte-linux-hppa.ads, | |
cc26ad97 AC |
24109 | s-osinte-linux-alpha.ads, s-inmaop-posix.adb (sigset_t_ptr): Removed, |
24110 | replaced by anonymous access type. | |
24111 | (pthread_sigmask): Now take an access sigset_t | |
24112 | ||
24113 | * s-osinte-hpux.ads: Ditto. | |
24114 | (pthread_mutex_t, pthread_cond_t): Update definitions to support | |
24115 | properly 32 and 64 bit ABIs. | |
24116 | ||
24117 | 2006-02-13 Pascal Obry <obry@adacore.com> | |
24118 | ||
9e81dbc7 AS |
24119 | * s-taprop-posix.adb, s-taprop-vxworks.adb, s-taprop-tru64.adb, |
24120 | s-taprop-lynxos.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb, | |
cc26ad97 AC |
24121 | s-taprop-linux.adb, s-taprop-solaris.adb, |
24122 | s-taprop-vms.adb (Create_Task): Remove task adjustment code. This | |
24123 | adjustement is already done when calling this routine. | |
24124 | ||
24125 | 2006-02-13 Pascal Obry <obry@adacore.com> | |
24126 | ||
24127 | * system-mingw.ads (Underlying_Priorities): Update the priority mapping | |
24128 | table to take advantage of the 16 priority levels available on Windows | |
24129 | 2000 and XP. On NT4 there are only 7 priority levels, this is properly | |
24130 | supported by this new mapping. | |
24131 | ||
24132 | 2006-02-13 Nicolas Setton <setton@adacore.com> | |
24133 | ||
24134 | * adadecode.h, adadecode.c: (__gnat_decode): Improve support of types. | |
24135 | (get_encoding): New subprogram. Extracts the encodings from an encoded | |
24136 | Ada name. | |
24137 | ||
24138 | 2006-02-13 Pascal Obry <obry@adacore.com> | |
24139 | Nicolas Roche <roche@adacore.com> | |
24140 | Arnaud Charlet <charlet@adacore.com> | |
24141 | ||
24142 | * adaint.h, adaint.c (DIR_SEPARATOR): Use _T() macro for Unicode | |
24143 | support. | |
24144 | (__gnat_try_lock): Add unicode support by using a specific section on | |
24145 | Windows. | |
24146 | (__gnat_get_current_dir): Idem. | |
24147 | (__gnat_open_read): Idem. | |
24148 | (__gnat_open_rw): Idem. | |
24149 | (__gnat_open_create): Idem. | |
24150 | (__gnat_create_output_file): Idem. | |
24151 | (__gnat_open_append): Idem. | |
24152 | (__gnat_open_new): Idem. | |
24153 | (__gnat_file_time_name): Idem. | |
24154 | (__gnat_set_file_time_name): Idem. | |
24155 | (__gnat_stat): Idem. | |
24156 | (win32_no_block_spawn): Idem. | |
24157 | (__gnat_locate_exec_on_path): Idem. | |
24158 | (__gnat_opendir): New routine. | |
24159 | (__gnat_closedir): Idem. | |
24160 | (__gnat_readdir): Add new parameter length (pointer to int). Update | |
24161 | implementation to use it and add specific Win32 code for Unicode | |
24162 | support. | |
24163 | (__gnat_get_env_value_ptr): Remove. Replaced by __gnat_getenv in env.c | |
24164 | (__gnat_set_env_value): Remove. Replaced by __gnat_setenv in env.c | |
24165 | (convert_addresses): Do not define this dummy routine on VMS. | |
24166 | ||
24167 | * mingw32.h (GNAT_UNICODE_SUPPORT): New definition, if set the GNAT | |
24168 | runtime Unicode support will be activated. | |
24169 | (S2WS): String to Wide-String conversion. This version just copy a | |
24170 | string in non Unicode version. | |
24171 | (WS2S): Wide-String to String conversion. This version just copy a | |
24172 | string in non Unicode version. | |
24173 | ||
24174 | * g-dirope.adb: (Close): Now import __gnat_closedir from adaint.c. | |
24175 | (Open): Now import __gnat_opendir from adaint.c. | |
24176 | (Read): Change the implementation to support unicode characters. It is | |
24177 | not possible to use strlen() on Windows as this version supports only | |
24178 | standard ASCII characters. So the length of the directory entry is now | |
24179 | returned from the imported __gnat_readdir routine. | |
24180 | Update copyright notice. | |
24181 | ||
24182 | * s-crtl-vms64.ads, s-crtl.ads: (closedir): Moved to adaint.c. | |
24183 | (opendir): Moved to adaint.c. | |
24184 | ||
24185 | * g-os_lib.adb (Copy_Time_Stamp): Fix off-by-one range computation. | |
24186 | (Get_Directory): Fix wrong indexing. | |
24187 | (Getenv): replace __gnat_get_env_value_ptr from adaint.c by | |
24188 | __gnat_getenv from env.c | |
24189 | (Setenv): replace __gnat_set_env_value from adaint.c by __gnat_setenv | |
24190 | from env.c | |
24191 | ||
24192 | * env.h, env.c: New file. | |
24193 | ||
24194 | * s-scaval.adb (Initialize): Replace __gnat_get_env_value_ptr from | |
24195 | adaint.c by __gnat_getenv from env.c | |
24196 | ||
24197 | * s-shasto.adb (Initialize): replace __gnat_get_env_value_ptr from | |
24198 | adaint.c by __gnat_getenv from env.c | |
24199 | ||
24200 | * Make-lang.in: Add env.o in the list of C object needed by gnat1 | |
24201 | and gnatbind. | |
24202 | Update dependencies. | |
24203 | ||
24204 | 2006-02-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
24205 | Olivier Hainque <hainque@adacore.com> | |
24206 | Eric Botcazou <ebotcazou@adacore.com> | |
24207 | ||
24208 | * ada-tree.h: (TYPE_UNCHECKED_UNION_P): Deleted. | |
9e81dbc7 | 24209 | |
cc26ad97 AC |
24210 | * gigi.h (value_factor_p): Add prototype and description, now public. |
24211 | ||
24212 | * decl.c (gnat_to_gnu_field): Don't attempt BLKmode to integral type | |
24213 | promotion for field with rep clause if the associated size was proven | |
24214 | to be in error. | |
24215 | Expand comments describing attempts to use a packable type. | |
24216 | (gnat_to_gnu_entity) <E_Signed_Integer_Subtype, | |
24217 | E_Floating_Point_Subtype>: Inherit alias set of what we are making a | |
24218 | subtype of to ensure conflicts amongst all subtypes in a hierarchy, | |
24219 | necessary since these are not different types and pointers may | |
24220 | actually designate any subtype in this hierarchy. | |
24221 | (gnat_to_gnu_entity, case E_Record_Type): Always make fields for | |
24222 | discriminants but put them into record only if not Unchecked_Union; | |
24223 | pass flag to components_to_record showing Unchecked_Union. | |
24224 | (make_dummy_type): Use UNION_TYPE only if Unchecked_Union and no | |
24225 | components before variants; don't set TYPE_UNCHECKED_UNION_P. | |
24226 | (components_to_record): New argument UNCHECKED_UNION. | |
24227 | Remove special case code for Unchecked_Union and instead use main code | |
24228 | with small changes. | |
24229 | ||
24230 | PR ada/26096 | |
ed41063a EB |
24231 | (gnat_to_gnu_entity) <E_Variable>: Do not initialize the aligning |
24232 | variable with the expression being built, only its inner field. | |
cc26ad97 AC |
24233 | |
24234 | * trans.c (Handled_Sequence_Of_Statements_to_gnu): Remove call to | |
24235 | emit_sequence_entry_statements. | |
24236 | (emit_sequence_entry_statements, body_with_handlers_p): Delete. | |
24237 | (establish_gnat_vms_condition_handler): Move before | |
24238 | Subprogram_Body_to_gnu. | |
24239 | (Subprogram_Body_to_gnu): On VMS, establish_gnat_vms_condition_handler | |
24240 | for a subprogram if it has a foreign convention or is exported. | |
24241 | (Identifier_to_gnu): Manually unshare the DECL_INITIAL tree when it is | |
24242 | substituted for a CONST_DECL. | |
24243 | (tree_transform, case N_Aggregate): Remove code for UNION_TYPE and pass | |
24244 | Etype to assoc_to_constructor. | |
24245 | (assoc_to_constructor): New argument, GNAT_ENTITY; use it to ignore | |
24246 | discriminants of Unchecked_Union. | |
24247 | (TARGET_ABI_OPEN_VMS): Define to 0 if not defined, so that later uses | |
24248 | don't need cluttering preprocessor directives. | |
24249 | (establish_gnat_vms_condition_handler): New function. Establish the GNAT | |
24250 | condition handler as current in the compiled function. | |
24251 | (body_with_handlers_p): New function. Tell whether a given sequence of | |
24252 | statements node is attached to a package or subprogram body and involves | |
24253 | exception handlers possibly nested within inner block statements. | |
24254 | (emit_sequence_entry_statements): New function, to emit special | |
24255 | statements on entry of sequences when necessary. Establish GNAT | |
24256 | condition handler in the proper cases for VMS. | |
24257 | (Handled_Sequence_Of_Statements_to_gnu): Start block code with | |
24258 | emit_sequence_entry_statements. | |
24259 | ||
24260 | * utils2.c (find_common_type): If both input types are BLKmode and | |
24261 | have a constant size, use the smaller one. | |
24262 | (build_simple_component_ref): Also match if FIELD and NEW_FIELD are | |
24263 | the same. | |
24264 | ||
24265 | * utils.c (value_factor_p): Make public, to allow uses from other gigi | |
24266 | units. | |
24267 | (create_type_decl): Do not set the flag DECL_IGNORED_P for dummy types. | |
24268 | (convert, case UNION_TYPE): Remove special treatment for unchecked | |
24269 | unions. | |
24270 | ||
24271 | PR ada/18659 | |
ed41063a EB |
24272 | (update_pointer_to): Update variants of pointer types to unconstrained |
24273 | arrays by attaching the list of fields of the main variant. | |
cc26ad97 AC |
24274 | |
24275 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> | |
24276 | Robert Dewar <dewar@adacore.com> | |
24277 | ||
24278 | * a-exexpr.adb, a-exexpr-gcc.adb | |
24279 | (Process_Raise_Exception): Removed, merged with Propagate_Exception. | |
24280 | (Propagate_Exception): Now take extra From_Signal_Handler parameter. | |
24281 | Remove code unused for exception propagation for the compiler itself | |
24282 | from a-except.adb and update to still share separate packages. | |
24283 | ||
24284 | * a-except.ads, a-except.adb: Ditto. | |
24285 | Add comments that this version is now used only by the compiler and | |
24286 | other basic tools. The full version that includes the Ada 2005 stuff | |
24287 | is in separate files a-except-2005.ads/adb. The reason is that we do | |
24288 | not want to cause bootstrap problems with compilers not recognizing | |
24289 | Wide_Wide_String. | |
24290 | Add exception reason code PE_Implicit_Return | |
24291 | Add new exception reason code (Null Exception_Id) | |
24292 | ||
24293 | * a-except-2005.adb, a-except-2005.ads: New files. | |
24294 | ||
24295 | * s-wchcon.ads: (Get_WC_Encoding_Method): New function. | |
24296 | ||
24297 | * s-wchcon.adb: New file. | |
24298 | ||
24299 | * Makefile.in (LIBGNAT_SRCS): Add tb-gcc.c. | |
24300 | (traceback.o deps): Likewise. | |
24301 | (SPARC/Solaris): Accept sparc[64|v9]-sun-solaris. | |
24302 | Activate build of GMEM instrumentation library on VMS targets. | |
24303 | (gnatlib-sjlj, gnatlib-zcx): Pass EH_MECHANISM to make gnatlib. | |
24304 | Use a-except-2005.ads/adb for all run-time library builds unless | |
24305 | specified otherwise. | |
24306 | [VMS] (LIBGNAT_TARGET_PAIRS_AUX1,2): Rename s-parame-vms.ads to | |
24307 | s-parame-vms-alpha.ads and add s-parame-vms-ia64.ads. | |
24308 | Use s-parame.adb on all native platforms. | |
24309 | Use s-parame-vxworks.adb on all vxworks platforms. | |
24310 | Add env.c env.h in LIBGNAT_SRCS | |
24311 | Add env.o in LIBGNAT_OBJS | |
24312 | (GNATMAKE_OBJS): Remove ctrl_c.o object. | |
24313 | (LIBGNAT_TARGET_PAIRS for x86-vxworks): Use an specialized version of | |
24314 | s-osinte.adb, s-tpopsp.adb, and system.ads for the run time that | |
24315 | supports VxWorks 6 RTPs. | |
24316 | (EXTRA_GNATRTL_NONTASKING_OBJS for x86-vxworks): Remove the use of | |
24317 | i-vxworks and i-vxwoio from the run time that supports VxWorks 6 RTPs. | |
24318 | ||
24319 | * types.h, types.ads (Terminate_Program): New exception | |
24320 | Add comment on modifying multiple versions of a-except.adb when the | |
24321 | table of exception reasons is modified. | |
24322 | Add exception reason code PE_Implicit_Return | |
24323 | Add new exception reason code (Null Exception_Id) | |
24324 | ||
6f7f72f9 EB |
24325 | * clean.adb (Initialize): Get the target parameters before checking |
24326 | if target is OpenVMS. Move the OpenVMS specific code here from package | |
24327 | body elaboration code. | |
cc26ad97 AC |
24328 | |
24329 | 2006-02-13 Thomas Quinot <quinot@adacore.com> | |
24330 | Vincent Celier <celier@adacore.com> | |
24331 | Robert Dewar <dewar@adacore.com> | |
24332 | ||
24333 | * ali-util.adb (Get_File_Checksum): Update to account for change in | |
24334 | profile of Initialize_Scanner. | |
24335 | ||
24336 | * gprep.adb (Gnatprep): Update to account for change in profile of | |
24337 | Initialize_Scanner. | |
24338 | (Process_One_File): Same. | |
24339 | ||
24340 | * lib.adb (Get_Code_Or_Source_Unit): New subprogram factoring the | |
24341 | common code between Get_Code_Unit and Get_Source_Unit. Reimplement | |
24342 | that behaviour using the new Unit information recorded in the source | |
24343 | files table, rather than going through all units every time. | |
24344 | (Get_Code_Unit): Reimplement in terms of Get_Code_Or_Source_Unit. | |
24345 | (Get_Source_Unit): Same. | |
24346 | ||
24347 | * prepcomp.adb (Parse_Preprocessing_Data_File): Update to account for | |
24348 | change in profile of Initialize_Scanner. | |
24349 | (Prepare_To_Preprocess): Same. | |
24350 | ||
24351 | * lib.ads: Fix typo in comment (templace -> template). | |
24352 | ||
24353 | * prj-part.adb (Parse_Single_Project): Update to account for change in | |
24354 | profile of Initialize_Scanner. | |
24355 | ||
24356 | * scn.adb (Initialize_Scanner): Account for change in profile of | |
24357 | Scng.Initialize_Scanner: set Current_Source_Unit in Scn instead of Scng. | |
24358 | Also record the association of the given Source_File_Index to the | |
24359 | corresponding Unit_Number_Type. | |
24360 | ||
24361 | * scng.ads, scng.adb (Initialize_Scanner.Set_Reserved): Remove | |
24362 | procedure. | |
24363 | (Initialize_Scanner): Call Scans.Initialize_Ada_Keywords. | |
24364 | Remove Unit formal for generic scanner: this formal | |
24365 | is only relevant to Scn (the scanner instance used to parse Ada source | |
24366 | files), not to other instances. Update comment accordingly. | |
24367 | (Scan): Use new function Snames.Is_Keyword_Name. | |
24368 | ||
24369 | * sinfo-cn.adb: Fix typo in comment. | |
24370 | ||
24371 | * sinput.adb (Unit, Set_Unit): Accessors for new source file attribute | |
24372 | Unit. | |
24373 | ||
24374 | * sinput.ads (Source_File_Record): New component Unit, used to capture | |
24375 | the unit identifier (if any) associated to a source file. | |
24376 | ||
24377 | * sinput-c.adb, sinput-l.adb (Load_File): Initialize new component | |
24378 | Unit in Source_File_Record. | |
24379 | ||
24380 | * sinput-p.adb (Source_File_Is_Subunit): Update to account for change | |
24381 | in profile of Initialize_Scanner. | |
24382 | ||
24383 | * scans.adb (Initialize_Ada_Keywords): New procedure | |
24384 | ||
24385 | * scans.ads (Initialize_Ada_Keywords): New procedure to initialize the | |
24386 | Ada keywords in the Namet table, without the need to call | |
24387 | Initialize_Scanner. | |
24388 | ||
24389 | * snames.adb: Add pragma Ada_2005 (synonym for Ada_05) | |
24390 | (Is_Keyword_Name): New function | |
24391 | ||
24392 | * snames.ads: Add subtype Configuration_Pragma_Names | |
24393 | Add pragma Ada_2005 (synonym for Ada_05) | |
24394 | (Is_Keyword_Name): New function | |
24395 | ||
24396 | * snames.h: Add pragma Ada_2005 (synonym for Ada_05) | |
24397 | ||
24398 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> | |
24399 | ||
24400 | * a-stwisu.adb, a-strsup.adb, a-stzsup.adb (Super_Slice): Fix slice | |
24401 | index. | |
24402 | ||
24403 | * a-stwima.adb (To_Set): Add extra check when N = 0. | |
24404 | ||
24405 | * g-regpat.adb: (Match_Simple_Operator): Avoid possible overflow. | |
24406 | ||
24407 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> | |
24408 | ||
24409 | * s-parame-mingw.adb, s-parame-linux.adb, | |
24410 | s-parame-solaris.adb: Removed, replaced by s-parame.adb | |
24411 | ||
24412 | * s-parame-vxworks.ads: Fix typo. | |
24413 | ||
24414 | * s-parame-vxworks.adb: New file. | |
24415 | ||
24416 | * s-parame.adb: Version now used by all native platforms. | |
24417 | (Default_Stack_Size): Use 2 megs for default stack size and use | |
24418 | __gl_default_stack_size when available. | |
24419 | (Minimum_Stack_Size): Use 12K. | |
24420 | ||
24421 | * s-taprop-mingw.adb: Set default stack size linker switch to 2megs. | |
24422 | (Create_Task): Refine implementation taking advantage of the XP stack | |
24423 | size support. On XP, we now create the thread using the flag | |
24424 | STACK_SIZE_PARAM_IS_A_RESERVATION. | |
24425 | ||
24426 | * s-osinte-mingw.ads (Stack_Size_Param_Is_A_Reservation): New constant. | |
24427 | ||
24428 | * sysdep.c (__gnat_is_windows_xp): New routine, returns 1 on Windows | |
24429 | XP and 0 on older Windows versions. | |
24430 | ||
24431 | * interfac-vms.ads: Removed, no longer used. | |
24432 | ||
24433 | 2006-02-13 Matthew Heaney <heaney@adacore.com> | |
24434 | ||
9e81dbc7 AS |
24435 | * a-rbtgso.adb, a-crbtgo.adb, a-crbtgk.adb, a-coorse.adb, |
24436 | a-cohama.adb, a-ciorse.adb, a-cihama.adb, a-cihase.adb, | |
cc26ad97 AC |
24437 | a-cohase.adb: All explicit raise statements now include an exception |
24438 | message. | |
24439 | ||
24440 | * a-ciormu.ads, a-ciormu.adb, a-coormu.ads, a-coormu.adb | |
24441 | (Update_Element_Preserving_Key): renamed op to just Update_Element. | |
24442 | Explicit raise statements now include an exception message | |
24443 | ||
24444 | * a-cihase.ads, a-cohase.ads: Removed comment. | |
24445 | ||
24446 | * a-stboha.ads, a-stboha.adb, a-stfiha.ads, a-envvar.adb, | |
24447 | a-envvar.ads, a-swbwha.ads, a-swbwha.adb, a-swfwha.ads, a-szbzha.ads, | |
24448 | a-szbzha.adb, a-szfzha.ads: New files. | |
24449 | ||
24450 | 2006-02-13 Matthew Heaney <heaney@adacore.com> | |
24451 | ||
24452 | * a-cgcaso.adb, a-cgaaso.adb: Implemented using heapsort instead of | |
24453 | quicksort. | |
24454 | ||
24455 | 2006-02-13 Eric Botcazou <ebotcazou@adacore.com> | |
24456 | ||
24457 | * lang.opt: Wvariadic-macros: New option. | |
24458 | Wold-style-definition: Likewise. | |
24459 | Wmissing-format-attribute: Likewise. | |
24460 | ||
24461 | * misc.c (gnat_handle_option): New cases for -Wvariadic-macros, | |
24462 | -Wold-style-definition and -Wmissing-format-attribute. | |
24463 | ||
24464 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24465 | ||
24466 | * a-ticoio.ads, a-ticoio.adb: Add use clause (moved here from spec) | |
24467 | ||
24468 | * a-coteio.ads, a-lcteio.ads, a-llctio.ads, a-scteio.ads: New files. | |
24469 | ||
24470 | 2006-02-13 Nicolas Roche <roche@adacore.com> | |
24471 | ||
24472 | * a-envvar.adb, a-envvar.ads: New files. | |
24473 | ||
24474 | 2006-02-13 Douglas Rupp <rupp@adacore.com> | |
24475 | ||
24476 | * s-parame-vms.ads: Renamed to s-parame-vms-alpha.ads | |
24477 | ||
24478 | * s-parame-vms-alpha.ads, s-parame-vms-ia64.ads: New files. | |
24479 | ||
24480 | 2006-02-13 Pat Rogers <rogers@adacore.com> | |
24481 | ||
24482 | * a-rttiev.adb, a-rttiev.ads: New files. | |
24483 | ||
24484 | 2006-02-13 Hristian Kirtchev <kirtchev@adacore.com> | |
24485 | ||
24486 | * a-tiboio.adb, a-tiboio.ads, a-wwboio.adb, | |
24487 | a-wwboio.ads, a-zzboio.adb, a-zzboio.ads: New files. | |
24488 | ||
24489 | * impunit.adb, Makefile.rtl: Added new Ada 2005 units. | |
24490 | ||
24491 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24492 | ||
9e81dbc7 | 24493 | * rtsfind.adb, exp_prag.adb, lib-writ.adb, par-labl.adb, |
cc26ad97 AC |
24494 | sem_case.adb: Minor code reorganization (not Present should be No) |
24495 | ||
24496 | 2006-02-13 Geert Bosch <bosch@adacore.com> | |
24497 | Gary Dismukes <dismukes@adacore.com> | |
24498 | ||
24499 | * a-tifiio.adb (Put_Digits): Test Last against To'First - 1 instead of | |
24500 | 0, since the lower bound of the actual string may be greater than one. | |
24501 | ||
24502 | PR ada/20753 | |
ed41063a | 24503 | * a-tifiio.adb (Put): Fix condition to raise Layout_Error when invalid |
cc26ad97 AC |
24504 | layout is requested. |
24505 | ||
24506 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
24507 | ||
24508 | * back_end.adb (Scan_Compiler_Arguments): Check if | |
24509 | Search_Directory_Present is True and, if it is, add the argument in | |
24510 | the source search directory path. | |
24511 | ||
24512 | * switch-c.adb (Scan_Front_End_Switches): Accept switch "-I". Set | |
24513 | Search_Directory_Present to True. | |
24514 | ||
24515 | 2006-02-13 Joel Brobecker <brobecke@adacore.com> | |
24516 | ||
24517 | * bindgen.adb (Gen_Main_C): declare the ensure_reference variable as | |
24518 | volatile, to tell the compiler to preserve this variable at any level | |
24519 | of optimization. | |
24520 | (Gen_Versions_Ada): Temporarily work around codegen bug. | |
24521 | ||
24522 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
24523 | ||
24524 | * gnatlink.adb (Process_Binder_File): If -shared is specified, invoke | |
24525 | gcc to link with option -shared-libgcc. | |
24526 | (Gnatlink): Remove duplicate switches -shared-libgcc | |
24527 | ||
24528 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24529 | ||
24530 | * gnatvsn.ads (Current_Year): New constant, used to easily update | |
24531 | copyright on all GNAT tools. | |
24532 | ||
24533 | * gnatls.adb, gnatname.adb, vms_conv.adb: Add 2006 to displayed | |
24534 | copyright notice. | |
24535 | ||
24536 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24537 | ||
24538 | * erroutc.ads, erroutc.adb (Set_Message_Blank): Don't insert space | |
24539 | after hyphen (small aesthetic change useful for a range of numbers | |
24540 | using ^-^. | |
24541 | Suppress range checks for a couple of assignments which otherwise | |
24542 | cause validity checks with validity checking turned on. | |
24543 | ||
24544 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Size): | |
24545 | Improvement in error message for object. | |
24546 | (Rep_Item_Too_Late): Remove '!' in warning message. | |
24547 | ||
24548 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24549 | Eric Botcazou <ebotcazou@adacore.com> | |
24550 | ||
24551 | * err_vars.ads: Suppress range checks for a couple of assignments | |
24552 | which otherwise cause validity checks with validity checking turned on. | |
24553 | Update comments. | |
24554 | ||
24555 | * errout.adb (Error_Msg_Internal): Do not suppress warning messages. | |
24556 | Make message unconditional if it is a warning. | |
24557 | (Error_Msg_NEL): Always output warning messages. | |
24558 | Suppress range checks for a couple of assignments which otherwise | |
24559 | cause validity checks with validity checking turned on. | |
24560 | ||
24561 | * errout.ads (Message Insertion Characters): Document that '!' is | |
24562 | implied by '?' in error messages. | |
24563 | ||
24564 | * gnat1drv.adb: (Bad_Body): Remove '!' in warning message. | |
24565 | (Gnat1drv): Use a goto to end of main subprogram instead of | |
24566 | Exit_Program (E_Success) so that finalization can occur normally. | |
24567 | ||
24568 | 2006-02-13 Eric Botcazou <ebotcazou@adacore.com> | |
24569 | ||
24570 | * s-stchop.adb (Stack_Check): Raise Storage_Error if the argument has | |
24571 | wrapped around. | |
24572 | ||
24573 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
24574 | ||
24575 | * a-direct.adb (Duration_To_Time, OS_Time_To_Long_Integer): New | |
24576 | Unchecked_Conversion functions. | |
24577 | (Modification_Time): Use direct conversion of OS_Time to Calendar time | |
24578 | when OpenVMS returns False. | |
24579 | ||
24580 | * a-dirval-mingw.adb, a-dirval-vms.adb, a-dirval.ads, | |
24581 | a-dirval.adb (OpenVMS): New Boolean function | |
24582 | ||
24583 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24584 | Thomas Quinot <quinot@adacore.com> | |
24585 | ||
24586 | * checks.adb (Build_Discriminant_Checks): If the expression being | |
24587 | checks is an aggregate retrieve the values of its discriminants to | |
24588 | generate the check, rather than creating a temporary and a reference | |
24589 | to it. | |
24590 | (Apply_Access_Check): Rewritten to handle new Is_Known_Null flag | |
24591 | (Install_Null_Excluding_Check): Ditto | |
24592 | (Selected_Length_Checks): Build actual subtype for the original Ck_Node, | |
24593 | not for the renamed object, so that the actual itype is attached in the | |
24594 | proper context. | |
24595 | ||
24596 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24597 | Vincent Celier <celier@adacore.com> | |
24598 | ||
24599 | * debug.adb: Eliminate numeric switches for binder/gnatmake | |
24600 | ||
24601 | * switch-m.adb (Normalize_Compiler_Switches): Record numeric debug | |
24602 | switches for the compiler. | |
24603 | (Scan_Make_Switches): Do not allow numeric debug switches for gnatmake | |
24604 | (Scan_Make_Switches): When failing with an illegal switch, output an | |
24605 | error message with the full switch. | |
24606 | Eliminate numeric switches for binder/gnatmake | |
24607 | ||
24608 | * switch.ads, switch.adb (Bad_Switch): New procedure | |
24609 | ||
24610 | * switch-b.adb (Scan_Binder_Switches): Do not accept combined switches. | |
24611 | Remove 0-9 as debug flag character possibilities | |
24612 | -d is now controlling the primary stack size when its value is a | |
24613 | positive. Also add checks against invalid values, and support for kb, | |
24614 | mb. Ditto for -D switch. | |
24615 | ||
24616 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24617 | Serguei Rybin <rybin@adacore.com> | |
24618 | ||
24619 | * opt.ads opt.adb: Add Ada_Version_Explicit_Config along with | |
24620 | save/restore routines. | |
24621 | Properly handle Ada_Version_Explicit and Ada_Version_Config, which | |
24622 | were not always properly handled previously. | |
24623 | Since we are changing the tree format anyway, also get rid of the | |
24624 | junk obsolete Immediate_Errors flag. | |
24625 | (Tree_Read): Change the way of reading Tree_Version_String - now we | |
24626 | read the version string from the tree even if its length is not the | |
24627 | same as the length of the version string computed from Gnatvsn. | |
24628 | (Search_Directory_Present): New Boolean flag for the compiler. | |
24629 | Define Tree_Version_String as a dynamic string. | |
24630 | (Default_Stack_Size): new variable, used to handle switch -d. | |
24631 | ||
9e81dbc7 | 24632 | * par-prag.adb: |
cc26ad97 AC |
24633 | For pragma Ada_2005, remove stuff about setting Ada_Version_Explicit |
24634 | only for main unit. | |
24635 | Add pragma Ada_2005 (synonym for Ada_05) | |
24636 | Properly handle Ada_Version_Explicit and Ada_Version_Config, which | |
24637 | were not always properly handled previously. | |
24638 | ||
24639 | * directio.ads, ioexcept.ads, sequenio.ads, text_io.ads: Change | |
24640 | explicit Ada_95 to Ada_2005. | |
24641 | ||
24642 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
24643 | Robert Dewar <dewar@adacore.com> | |
24644 | Ed Schonberg <schonberg@adacore.com> | |
24645 | ||
24646 | * einfo.ads, einfo.adb (First_Tag_Component): Protect the frontend | |
24647 | against errors in the source program: a private types for which the | |
24648 | corresponding full type declaration is missing and pragma CPP_Virtual | |
24649 | is used. | |
24650 | (Is_Unchecked_Union): Check flag on Implementation_Base_Type. | |
24651 | (Is_Known_Null): New flag | |
24652 | (Has_Pragma_Pure): New flag | |
24653 | (No_Return): Present in all entities, set only for procedures | |
24654 | (Is_Limited_Type): A type whose ancestor is an interface is limited if | |
24655 | explicitly declared limited. | |
24656 | (DT_Offset_To_Top_Func): New attribute that is present in E_Component | |
24657 | entities. Only used for component marked Is_Tag. If present it stores | |
24658 | the Offset_To_Top function used to provide this value in tagged types | |
24659 | whose ancestor has discriminants. | |
24660 | ||
24661 | * exp_ch2.adb: Update status of new Is_Known_Null flag | |
24662 | ||
24663 | * sem_ch7.adb: Maintain status of new Is_Known_Null flag | |
24664 | ||
24665 | * sem_cat.adb (Get_Categorization): Don't treat function as Pure in | |
24666 | the categorization sense if Is_Pure was set by pragma Pure_Function. | |
24667 | ||
24668 | 2006-02-13 Quentin Ochem <ochem@adacore.com> | |
24669 | Olivier Hainque <hainque@adacore.com> | |
24670 | ||
24671 | * bindusg.adb: Updated documentation for -d and -D switches. | |
24672 | ||
24673 | * raise.h (__gnat_set_globals): added new parameter for | |
24674 | Default_Stack_Size. | |
24675 | ||
24676 | * init.c (__gnat_adjust_context_for_raise) <alpha-vms case>: Implement. | |
24677 | (__gnat_handle_vms_condition): Adjust context before raise. | |
24678 | (__gnat_install_handler): Restore the global vector setup for GCC | |
24679 | versions before 3.4, as the frame based circtuitry is not available | |
24680 | in this case. | |
24681 | (__gnat_set_globals): added a parameter default_stack_size | |
24682 | (__gl_default_stack_size): new variable. | |
24683 | ||
24684 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24685 | ||
24686 | * exp_aggr.adb (Build_Array_Aggr_Code): Rename variable | |
24687 | "Others_Mbox_Present" to "Others_Box_Present" because the mbox concept | |
24688 | does not exist in the Ada RM. | |
24689 | (Compatible_Int_Bounds): Determine whether two integer range bounds | |
24690 | are of equal length and have the same start and end values. | |
24691 | (Is_Int_Range_Bounds): Determine whether a node is an integer range. | |
24692 | (Build_Record_Aggr_Code): Perform proper sliding of a nested array | |
24693 | aggregate when it is part of an object declaration. | |
24694 | (Build_Record_Aggr_Code) If the aggregate ttype is a derived type that | |
24695 | constrains discriminants of its parent, add explicitly the discriminant | |
24696 | constraints of the ancestor by retrieving them from the | |
24697 | stored_constraint of the parent. | |
24698 | ||
24699 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24700 | ||
24701 | * exp_attr.adb (Expand_N_Attribute_Reference, case Mechanism_Code): If | |
24702 | attribute Mechanism_Code is applied to renamed subprogram, modify | |
24703 | prefix to point to base subprogram. | |
24704 | Max/Min attributes now violate Restriction No_Implicit_Conditionals | |
24705 | ||
24706 | * sinfo.ads: Document that Mechanism_Code cannot be applied to | |
24707 | renamed subprograms so that the front-end must replace the prefix | |
24708 | appropriately. | |
24709 | ||
24710 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
24711 | Gary Dismukes <dismukes@adacore.com> | |
24712 | ||
24713 | * exp_ch3.adb (Component_Needs_Simple_Initialization): Add check for | |
24714 | availability of RE_Interface_Tag. | |
24715 | (Build_Initialization_Call): Fix wrong access to the discriminant value. | |
24716 | (Freeze_Record_Type): Do not generate the tables associated with | |
24717 | timed and conditional dispatching calls through synchronized | |
24718 | interfaces if compiling under No_Dispatching_Calls restriction. | |
24719 | When compiling for Ada 2005, for a nonabstract | |
24720 | type with a null extension, call Make_Controlling_Function_Wrappers | |
24721 | and insert the wrapper function declarations and bodies (the latter | |
24722 | being appended as freeze actions). | |
24723 | (Predefined_Primitive_Bodies): Do not generate the bodies of the | |
24724 | predefined primitives associated with timed and conditional | |
24725 | dispatching calls through synchronized interfaces if we are | |
24726 | compiling under No_Dispatching_Calls. | |
24727 | (Build_Init_Procedure): Use RTE_Available to check if a run-time | |
24728 | service is available before generating a call. | |
24729 | (Make_Controlling_Function_Wrappers): New procedure. | |
24730 | (Expand_N_Full_Type_Declaration): Create a class-wide master for | |
24731 | access-to-limited-interfaces because they can be used to reference | |
24732 | tasks that implement such limited interface. | |
24733 | (Build_Offset_To_Top_Functions): Build the tree corresponding to the | |
24734 | procedure spec and body of the Offset_To_Top function that is generated | |
24735 | when the parent of a type with discriminants has secondary dispatch | |
24736 | tables. | |
24737 | (Init_Secondary_Tags): Handle the case in which the parent of the type | |
24738 | containing secondary dispatch tables has discriminants to generate the | |
24739 | correct arguments to call Set_Offset_To_Top. | |
24740 | (Build_Record_Init_Proc): Add call to Build_Offset_To_Top_Functions. | |
24741 | ||
24742 | * a-tags.ads, a-tags.adb: (Check_Index): Removed. | |
24743 | Add Wide_[Wide_]Expanded_Name. | |
24744 | (Get_Predefined_Prim_Op_Address): New subprogram that provides exactly | |
24745 | the same functionality of Get_Prim_Op_Address but applied to predefined | |
24746 | primitive operations because the pointers to the predefined primitives | |
24747 | are now saved in a separate table. | |
24748 | (Parent_Size): Modified to get access to the separate table of primitive | |
24749 | operations or the parent type. | |
24750 | (Set_Predefined_Prim_Op_Address): New subprogram that provides the same | |
24751 | functionality of Set_Prim_Op_Address but applied to predefined primitive | |
24752 | operations. | |
24753 | (Set_Signature): New subprogram used to store the signature of a DT. | |
24754 | (Displace): If the Offset_To_Top value is not static then call the | |
24755 | function generated by the expander to get such value; otherwise use | |
24756 | the value stored in the table of interfaces. | |
24757 | (Offset_To_Top): The type of the actual has been changed to Address to | |
24758 | give the correct support to tagged types with discriminants. In this | |
24759 | case this value is stored just immediately after the tag field. | |
24760 | (Set_Offset_To_Top): Two new formals have been added to indicate if the | |
24761 | offset_to_top value is static and hence pass this value to the run-time | |
24762 | to store it in the table of interfaces, or else if this value is dynamic | |
24763 | and then pass to the run-time the address of a function that is | |
24764 | generated by the expander to provide this value for each object of the | |
24765 | type. | |
24766 | ||
24767 | * rtsfind.ads (Default_Prin_Op_Count): Removed. | |
24768 | (Default_Prim_Op_Count): New entity | |
24769 | (Get_Predefined_Prim_Op_Address): New entity | |
24770 | (Set_Predefined_Prim_Op_Address): New entity | |
24771 | (RE_Set_Signature): New entity | |
24772 | ||
24773 | 2006-02-13 Thomas Quinot <quinot@adacore.com> | |
24774 | Ed Schonberg <schonberg@adacore.com> | |
24775 | ||
24776 | * exp_ch4.adb (Expand_Allocator_Expression): Pass Allocator => True to | |
24777 | Make_Adjust_Call done for a newly-allocated object. | |
24778 | ||
24779 | * exp_ch7.ads, exp_ch7.adb (Expand_Cleanup_Actions): If the statements | |
24780 | in a subprogram are wrapped in a cleanup block, indicate that the | |
24781 | subprogram contains an inner block with an exception handler. | |
24782 | (Make_Adjust_Call): New Boolean formal Allocator indicating whether the | |
24783 | Adjust call is for a newly-allocated object. In that case we must not | |
24784 | assume that the finalization list chain pointers are correct (since they | |
24785 | come from a bit-for-bit copy of the original object's pointers) so if | |
24786 | the attach level would otherwise be zero (no change), we set it to 4 | |
24787 | instead to cause the pointers to be reset to null. | |
24788 | ||
24789 | * s-finimp.adb (Attach_To_Final_List): New attach level: 4, meaning | |
24790 | reset chain pointers to null. | |
24791 | ||
24792 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24793 | ||
24794 | * exp_ch5.adb (Expand_Assign_Array): If the right-hand side is a | |
24795 | string, and the context requires a loop for the assignment (e.g. | |
24796 | because the left-hand side is packed), generate a unique name for the | |
24797 | temporary that holds the string, to prevent spurious name clashes. | |
24798 | ||
24799 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24800 | Javier Miranda <miranda@adacore.com> | |
24801 | Robert Dewar <dewar@adacore.com> | |
24802 | Gary Dismukes <dismukes@adacore.com> | |
24803 | ||
24804 | * exp_ch6.adb (Expand_Inlined_Call): Handle calls to functions that | |
24805 | return unconstrained arrays. | |
24806 | Update comments. | |
24807 | (Expand_Call): An indirect call through an access parameter of a | |
24808 | protected operation is not a protected call. | |
24809 | Add circuit to raise CE in Ada 2005 mode following call | |
24810 | to Raise_Exception. | |
24811 | (Register_DT_Entry): Do nothing if | |
24812 | the run-time does not give support to abstract interfaces. | |
24813 | (Freeze_Subprogram): In case of dispatching operations, do not generate | |
24814 | code to register the operation in the dispatch table if the source | |
24815 | is compiled with No_Dispatching_Calls. | |
24816 | (Register_Predefined_DT_Entry): Generate code that calls the new | |
24817 | run-time subprogram Set_Predefined_Prim_Op_Address instead of | |
24818 | Set_Prim_Op_Address. | |
24819 | ||
24820 | * sem_ch5.adb (Analyze_Assignment_Statement): Do not apply length checks | |
24821 | on array assignments if the right-hand side is a function call that has | |
24822 | been inlined. Check is performed on the assignment in the block. | |
24823 | (Process_Bounds): If bounds and range are overloaded, apply preference | |
24824 | rule for root operations to disambiguate, and diagnose true ambiguity. | |
24825 | (Analyze_Assignment): Propagate the tag for a class-wide assignment with | |
24826 | a tag-indeterminate right-hand side even when Expander_Active is True. | |
24827 | Needed to ensure that dispatching calls to T'Input are allowed and | |
24828 | get the tag of the target class-wide object. | |
24829 | ||
24830 | * sem_ch6.adb (New_Overloaded_Entity): Handle entities that override | |
24831 | an inherited primitive operation that already overrides several | |
24832 | abstract interface primitives. For transitivity, the new entity must | |
24833 | also override all the abstract interface primitives covered by the | |
24834 | inherited overriden primitive. | |
24835 | Emit warning if new entity differs from homograph in same scope only in | |
24836 | that one has an access parameter and the other one has a parameter of | |
24837 | a general access type with the same designated type, at the same | |
24838 | position in the signature. | |
24839 | (Make_Inequality_Operator): Use source locations of parameters and | |
24840 | subtype marks from corresponding equality operator when creating the | |
24841 | tree structure for the implicit declaration of "/=". This does not | |
24842 | change anything in behaviour except that the decoration of the | |
24843 | components of the subtree created for "/=" allows ASIS to get the | |
24844 | string images of the corresponding identifiers. | |
24845 | (Analyze_Return_Statement): Remove '!' in warning message. | |
24846 | (Check_Statement_Sequence): Likewise. | |
24847 | (Analyze_Subprogram_Body): For an access parameter whose designated type | |
24848 | is an incomplete type imported through a limited_with clause, use the | |
24849 | type of the corresponding formal in the body. | |
24850 | (Check_Returns): Implicit return in No_Return procedure now raises | |
24851 | Program_Error with a compile time warning, instead of beging illegal. | |
24852 | (Has_Single_Return): Function returning unconstrained type cannot be | |
24853 | inlined if expression in unique return statement is not an identifier. | |
24854 | (Build_Body_To_Inline): It is possible to inline a function call that | |
24855 | returns an unconstrained type if all return statements in the function | |
24856 | return the same local variable. Subsidiary procedure Has_Single_Return | |
24857 | verifies that the body conforms to this restriction. | |
24858 | ||
24859 | * sem_res.adb (Resolve_Equality_Op): If the operands do not have the | |
24860 | same type, and one of them is of an anonymous access type, convert | |
24861 | the other operand to it, so that this is a valid binary operation for | |
24862 | gigi. | |
24863 | (Resolve_Type_Conversion): Handle subtypes of protected types and | |
24864 | task types when accessing to the corresponding record type. | |
24865 | (Resolve_Allocator): Add '\' in 2-line warning message. | |
24866 | Remove '!' in warning message. | |
24867 | (Resolve_Call): Add '\' in 2-line warning message. | |
24868 | (Valid_Conversion): Likewise. | |
24869 | (Resolve_Overloaded_Selected_Component): If disambiguation succeeds, the | |
24870 | resulting type may be an access type with an implicit dereference. | |
24871 | Obtain the proper component from the designated type. | |
24872 | (Make_Call_Into_Operator): Handle properly a call to predefined equality | |
24873 | given by an expanded name with prefix Standard, when the operands are | |
24874 | of an anonymous access type. | |
24875 | (Check_Fully_Declared_Prefix): New procedure, subsidiary of Resolve_ | |
24876 | Explicit_Dereference and Resolve_Selected_Component, to verify that the | |
24877 | prefix of the expression is not of an incomplete type. Allows full | |
24878 | diagnoses of all semantic errors. | |
24879 | (Resolve_Actuals): If the actual is an allocator whose directly | |
24880 | designated type is a class-wide interface we build an anonymous | |
24881 | access type to use it as the type of the allocator. Later, when | |
24882 | the subprogram call is expanded, if the interface has a secondary | |
24883 | dispatch table the expander will add a type conversion to force | |
24884 | the displacement of the pointer. | |
24885 | (Resolve_Call): If a function that returns an unconstrained type is | |
24886 | marked Inlined_Always and inlined, the call will be inlined and does | |
24887 | not require the creation of a transient scope. | |
24888 | (Check_Direct_Boolean_Op): Removed | |
24889 | (Resolve_Comparison_Op): Remove call to above | |
24890 | (Resolve_Equality_Op): Remove call to above | |
24891 | (Resolve_Logical_Op): Inline above, since this is only call. | |
24892 | (Valid_Conversion): Handle properly conversions between arrays of | |
24893 | convertible anonymous access types. | |
24894 | ||
24895 | PR ada/25885 | |
cc26ad97 AC |
24896 | (Set_Literal_String_Subtype): If the lower bound is not static, wrap |
24897 | the literal in an unchecked conversion, because GCC 4.x needs a static | |
24898 | value for a string bound. | |
24899 | ||
24900 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24901 | Hristian Kirtchev <kirtchev@adacore.com> | |
24902 | ||
24903 | * exp_ch9.adb (Expand_N_Protected_Type_Declaration): When creating the | |
24904 | components of the corresponding record, take into account component | |
24905 | definitions that are access definitions. | |
24906 | (Expand_N_Asynchronous_Select): A delay unit statement rewritten as a | |
24907 | procedure is not considered a dispatching call and will be expanded | |
24908 | properly. | |
24909 | ||
24910 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
24911 | ||
24912 | * exp_disp.ads, exp_disp.adb (Expand_Dispatching_Call): If the | |
24913 | controlling argument of the dispatching call is an abstract interface | |
24914 | class-wide type then we use it directly. | |
24915 | Check No_Dispatching_Calls restriction. | |
24916 | (Default_Prim_Op_Position): Remove the code that looks for the last | |
24917 | entity in the list of aliased subprograms. This code was wrong in | |
24918 | case of renamings. | |
24919 | (Fill_DT_Entry): Add assertion to avoid the use of this subprogram | |
24920 | when the source is compiled with the No_Dispatching_Calls restriction. | |
24921 | (Init_Predefined_Interface_Primitives): No need to inherit primitives | |
24922 | if we are compiling with restriction No_Dispatching_Calls. | |
24923 | (Make_Disp_XXX): Addition of assertion to avoid the use of all these | |
24924 | subprograms if we are compiling under No_Dispatching_Calls restriction. | |
24925 | (Make_DT): Generate a dispatch table with a single dummy entry if | |
24926 | we are compiling with the No_Dispatching_Calls restriction. In | |
24927 | addition, in this case we don't generate code that calls to the | |
24928 | following run-time subprograms: Set_Type_Kind, Inherit_DT. | |
24929 | (Make_Select_Specific_Data_Table): Add assertion to avoid the use | |
24930 | of this subprogram if compiling with the No_Dispatching_Calls | |
24931 | restriction. | |
24932 | (Expand_Type_Conversion): Instead of using the actual parameter, | |
24933 | the argument passed as parameter to the conversion function was | |
24934 | erroneously referenced by the expander. | |
24935 | (Ada_Actions): Addition of Get_Predefined_Prim_Op_Address, | |
24936 | Set_Predefined_Primitive_Op_Address and Set_Signature. | |
24937 | (Expand_Dispatching_Call): Generate call to | |
24938 | Get_Predefined_Prim_Op_Address for predefined primitives. | |
24939 | (Fill_DT_Entry): Generate call to Set_Predefined_Prim_Op_Address for | |
24940 | predefined primitives. | |
24941 | (Make_DT, Make_Secondary_DT): If the tagged type has no user defined | |
24942 | primitives we reserve one dummy entry to ensure that the tag does not | |
24943 | point to some memory that is associated with some other object. In | |
24944 | addition, remove all the old code that generated the assignments | |
24945 | associated with the signature of the dispatch table and replace them | |
24946 | by a call to the new subprogram Set_Signature. | |
24947 | (Set_All_DT_Position): Change the algorithm because now we have a | |
24948 | separate dispatch table associated with predefined primitive operations. | |
24949 | (Expand_Interface_Conversion): In case of non-static offset_to_top | |
24950 | add explicit dereference to get access to the object after the call | |
24951 | to displace the pointer to the object. | |
24952 | (Expand_Interface_Thunk): Modify the generation of the actual used | |
24953 | in the calls to the run-time function Offset_To_Top to fulfil its | |
24954 | new interface. | |
24955 | (Make_DT): Add the new actuals required to call Set_Offset_To_Top. | |
24956 | ||
24957 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24958 | ||
24959 | * exp_dist.adb (Copy_Specification): For access parameters, copy | |
24960 | Null_Exclusion flag, which will have been set for stream subprograms | |
24961 | in Ada2005 mode. | |
24962 | ||
24963 | 2006-02-13 Pascal Obry <obry@adacore.com> | |
24964 | ||
24965 | * expect.c (__gnat_expect_portable_execvp): New implementation. The | |
24966 | previous implementation was using the C runtime spawnve routine but | |
24967 | the corresponding wait was using directly the Win32 API. This was | |
24968 | causing some times a lock when waiting for an event using | |
24969 | WaitForSingleObject in __gnat_waitpid. This new implementation uses | |
24970 | the Win32 CreateProcess routine. Avoiding mixing C runtime and Win32 | |
24971 | API fixes this problem. | |
24972 | ||
24973 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
24974 | ||
24975 | * exp_intr.adb (Expand_Unc_Deallocation): Correct error of bad analyze | |
24976 | call. | |
24977 | ||
24978 | 2006-02-13 Thomas Quinot <quinot@adacore.com> | |
24979 | ||
24980 | * exp_pakd.ads: Fix typos in comments. | |
24981 | ||
24982 | * exp_pakd.adb (Convert_To_PAT_Type): For the case of a bit packed | |
24983 | array reference that is an explicit dereference, mark the converted | |
24984 | (packed) array reference as analyzed to prevent a forthcoming | |
24985 | reanalysis from resetting its type to the original (non-packed) array | |
24986 | type. | |
24987 | ||
24988 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
24989 | Javier Miranda <miranda@adacore.com> | |
24990 | Eric Botcazou <ebotcazou@adacore.com> | |
24991 | ||
24992 | * exp_util.ads, exp_util.adb (Find_Prim_Op, | |
24993 | Is_Predefined_Primitive_Operation): When | |
24994 | searching for the predefined equality operator, verify that operands | |
24995 | have the same type. | |
24996 | (Is_Predefined_Dispatching_Operation): Remove the code that looks | |
24997 | for the last entity in the list of aliased subprograms. This code | |
24998 | was wrong in case of renamings. | |
24999 | (Set_Renamed_Subprogram): New procedure | |
25000 | (Remove_Side_Effects): Replace calls to Etype (Exp) with use of the | |
25001 | Exp_Type constant computed when entering this subprogram. | |
25002 | (Known_Null): New function | |
25003 | (OK_To_Do_Constant_Replacement): New function | |
25004 | (Known_Non_Null): Check scope before believing Is_Known_Non_Null flag | |
25005 | (Side_Effect_Free): An attribute reference 'Input is not free of | |
25006 | side effect, unlike other attributes that are functions. (from code | |
25007 | reading). | |
25008 | (Remove_Side_Effects): Expressions that involve packed arrays or records | |
25009 | are copied at the point of reference, and therefore must be marked as | |
25010 | renamings of objects. | |
25011 | (Is_Predefined_Dispatching_Operation): Return false if the operation is | |
25012 | not a dispatching operation. | |
25013 | ||
25014 | PR ada/18819 | |
25015 | (Remove_Side_Effects): Lift enclosing type conversion nodes for | |
25016 | elementary types in all cases. | |
25017 | ||
25018 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25019 | ||
25020 | * freeze.adb (Freeze_Entity): Handle subtypes of protected types and | |
25021 | task types when accessing to the corresponding record type. | |
25022 | Remove '!' in warning message. | |
25023 | ||
25024 | 2006-02-13 Olivier Hainque <hainque@adacore.com> | |
25025 | ||
25026 | * g-altive.ads (VECTOR_ALIGNMENT): Set to Min (16, Max_Alignment), | |
25027 | to avoid useless and space inefficient overalignments on targets where | |
25028 | Max_Alignment is larger than 16. | |
25029 | ||
25030 | 2006-02-13 Pascal Obry <obry@adacore.com> | |
25031 | ||
25032 | * g-catiio.adb (Sec_Number): New type used to compute the number of | |
25033 | seconds since 1-1-1970. | |
25034 | (Image) [Natural]: The parameter was an Integer, as we can't deal with | |
25035 | negative numbers (years, months...) it is better to have a Natural here. | |
25036 | Code clean-up. | |
25037 | (Image) [Number]: Change parameter from Long_Integer to Number. | |
25038 | (Image): Use Number type to compute the seconds since 1-1-1970 to fix an | |
25039 | overflow for dates past year 2038. | |
25040 | ||
25041 | 2006-02-13 Matthew Heaney <heaney@adacore.com> | |
25042 | ||
25043 | * g-dyntab.adb (Index_Of): conversion from Natural can no longer raise | |
25044 | Constraint_Error. | |
25045 | ||
25046 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> | |
25047 | ||
25048 | * gnatbind.adb (Scan_Bind_Arg): Replace error by warning on -M and | |
25049 | native platforms. | |
25050 | (Gnatbind): Do not call Exit_Program (E_Success) at the end, so that | |
25051 | finalization can occur normally. | |
25052 | ||
25053 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
25054 | ||
25055 | * gnatcmd.adb (Rules_Switches): New table | |
25056 | (Add_To_Rules_Switches): New procedure | |
25057 | (GNATCmd): For command CHECK, put all options following "-rules" in the | |
25058 | Rules_Switches table. Append these -rules switches after the -cargs | |
25059 | switches. | |
25060 | ||
25061 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
25062 | ||
25063 | * g-spipat.adb (Image, case PC_Assign_Imm and case PC_Assign_OnM): | |
25064 | These two cases were generating incorrect output, and if this unit | |
25065 | was built with checks on, generated a discriminant mismatch constraint | |
25066 | error. | |
25067 | ||
25068 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
25069 | Robert Dewar <dewar@adacore.com> | |
25070 | ||
25071 | * lib-xref.adb (Get_Type_Reference): For a private type whose full | |
25072 | view is an array type, indicate the component type as well, for | |
25073 | navigation purposes. | |
25074 | (Generate_Reference): Don't consider array ref on LHS to be a case | |
25075 | of violating pragma Unreferenced. | |
25076 | Do not give Ada 2005 warning except on real reference. | |
25077 | ||
25078 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
25079 | ||
25080 | * make.adb (Collect_Arguments_And_Compile): For VMS, when compiling the | |
25081 | main source, add switch -mdebug-main=_ada_ so that the executable can | |
25082 | be debugged by the standard VMS debugger. | |
25083 | (Gnatmake): Set No_Main_Subprogram to True when there is no main | |
25084 | subprogram, to avoid issuing -mdebug-main=_ada_ for VMS uselessly. | |
25085 | Exit the Multi_Main_Loop when Unique_Compile is True after compilation | |
25086 | of the last source, as the binding and linking phases are never | |
25087 | performed. | |
25088 | Set all executable obsolete when rebuilding a library. | |
25089 | ||
25090 | * makeutl.adb (Linker_Options_Switches): Do not process empty linker | |
25091 | options. | |
25092 | ||
25093 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25094 | ||
25095 | PR ada/23973 | |
cc26ad97 AC |
25096 | * par-ch3.adb (P_Derived_Type_Def_Or_Private_Ext_Decl): Reorganize the |
25097 | code to improve the error message reported when the program has | |
25098 | declarations of abstract interface types and it is not compiled with | |
25099 | the -gnat05 switch. | |
25100 | (P_Access_Definition): Reorganize the code to improve the error | |
25101 | message reported when the new Ada 2005 syntax for anonymous | |
25102 | access types is used and the program is not compiled with the | |
25103 | -gnat05 switch. | |
25104 | ||
25105 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
25106 | ||
25107 | * par-ch6.adb, style.ads, styleg.adb, styleg.ads, stylesw.adb, | |
25108 | stylesw.ads, usage.adb, vms_data.ads: Implement -gnatyI switch | |
25109 | (MODE_IN) | |
25110 | ||
25111 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25112 | ||
25113 | * par-endh.adb (Explicit_Start_Label): Add code to protect the parser | |
25114 | against source containing syntax errors. | |
25115 | ||
25116 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
25117 | ||
25118 | * prj.adb (Reset): Initialize the first element of table Namings with | |
25119 | the standard naming data. | |
25120 | ||
25121 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
25122 | ||
25123 | * prj.ads (Error_Warning): New enumeration type | |
25124 | ||
25125 | * prj-nmsc.ads, prj-nmsc.adb (Error_Msg): If location parameter is | |
25126 | unknown, use the location of the project to report the error. | |
25127 | (When_No_Sources): New global variable | |
25128 | (Report_No_Ada_Sources): New procedure | |
25129 | (Check): New parameter When_No_Sources. Set value of global variable | |
25130 | When_No_Sources, | |
25131 | (Find_Sources): Call Report_No_Ada_Sources when appropriate | |
25132 | (Get_Sources_From_File): Ditto | |
25133 | (Warn_If_Not_Sources): Better warning messages indicating the unit name | |
25134 | and the file name. | |
25135 | ||
25136 | * prj-pars.ads, prj-pars.adb (Parse): New parameter When_No_Sources. | |
25137 | Call Prj.Proc.Process with parameter When_No_Sources. | |
25138 | ||
25139 | * prj-proc.ads, prj-proc.adb (Check): New parameter When_No_Sources. | |
25140 | Call Recursive_Check with parameter When_No_Sources. | |
25141 | (Recursive_Check): New parameter When_No_Sources. Call itself and | |
25142 | Prj.Nmsc.Check with parameter When_No_Sources. | |
25143 | (Process): New parameter When_No_Sources. Call Check with parameter | |
25144 | When_No_Sources. | |
25145 | (Copy_Package_Declarations): New procedure to copy renamed parameters | |
25146 | and setting the location of the declared attributes to the location | |
25147 | of the renamed package. | |
25148 | (Process_Declarative_Items): Call Copy_Package_Declarations for renamed | |
25149 | packages. | |
25150 | ||
25151 | 2006-02-13 Vincent Celier <celier@adacore.com> | |
25152 | ||
25153 | * prj-makr.adb (Make): Preserve the comments from the original project | |
25154 | file. | |
25155 | When removing nodes (attributes Source_Dirs, Source_Files, | |
25156 | Source_List_File and package Naming), save the comments and attach the | |
25157 | saved comments to the newly created nodes. | |
25158 | Do not add a with clause for the naming package if one already exists. | |
25159 | ||
25160 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25161 | Gary Dismukes <dismukes@adacore.com> | |
25162 | Robert Dewar <dewar@adacore.com> | |
25163 | ||
25164 | * restrict.ads (No_Dispatching_Calls): New GNAT restriction. | |
25165 | ||
25166 | * sem_disp.adb (Override_Dispatching_Operation): Traverse the list of | |
25167 | aliased entities to look for the overriden abstract interface | |
25168 | subprogram. | |
25169 | (Is_Interface_Subprogram): Complete documentation. | |
25170 | (Check_Dispatching_Operation): Do not generate code to register the | |
25171 | operation in the dispatch table if the source is compiled with | |
25172 | restriction No_Dispatching_Calls. | |
25173 | (Override_Dispatching_Operation): Check for illegal attempt to override | |
25174 | No_Return procedure with procedure that is not No_Return | |
25175 | (Check_Dispatching_Call): Suppress the check for an abstract operation | |
25176 | when the original node of an actual is a tag-indeterminate attribute | |
25177 | call, since the attribute, which must be 'Input, can never be abstract. | |
25178 | (Is_Tag_Indeterminate): Handle checking of tag indeterminacy of a | |
25179 | call to the Input attribute (even when rewritten). | |
25180 | (Propagate_Tag): Augment comment to indicate the possibility of a call | |
25181 | to an Input attribute. | |
25182 | ||
25183 | * sem_disp.ads (Override_Dispatching_Operation): Moved to spec to allow | |
25184 | calling it from Exp_Ch3.Make_Controlling_Function_Wrappers. | |
25185 | ||
25186 | * s-rident.ads: (No_Dispatching_Calls): New GNAT restriction. | |
25187 | No_Wide_Characters is no longer partition-wide | |
25188 | No_Implementation_Attributes/Pragmas are now Ada 2005 (AI-257) | |
25189 | rather than GNAT | |
25190 | ||
25191 | 2006-02-13 Douglas Rupp <rupp@adacore.com> | |
25192 | ||
25193 | * s-auxdec-vms_64.ads (Short_Address): Wrap it in a type. | |
25194 | ||
25195 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25196 | ||
25197 | * sem_aggr.adb (Resolve_Record_Aggregate): Restructure the code that | |
25198 | handles default-initialized components to keep separate the management | |
25199 | of this feature but also avoid the unrequired resolution and | |
25200 | expansion of components that do not have partially initialized | |
25201 | values. | |
25202 | (Collect_Aggr_Bounds): Add '\' in 2-line warning message. | |
25203 | (Check_Bounds): Likewise. | |
25204 | (Check_Length): Likewise. | |
25205 | ||
25206 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25207 | Ed Schonberg <schonberg@adacore.com> | |
25208 | ||
25209 | * sem_attr.adb (Analyze_Attribute): In case of 'Class applied to an | |
25210 | abstract interface type call analyze_and_resolve to expand the type | |
25211 | conversion into the corresponding displacement of the | |
25212 | reference to the base of the object. | |
25213 | (Eval_Attribute, case Width): For systems where IEEE extended precision | |
25214 | is supported, the maximum exponent occupies 4 decimal digits. | |
25215 | (Accessibility_Message): Add '\' in 2-line warning message. | |
25216 | (Resolve_Attribute): Likewise. | |
25217 | (case Attribute_Access): Significantly revise checks | |
25218 | for illegal access-to-subprogram Access attributes to properly enforce | |
25219 | the rules of 3.10.2(32/2). | |
25220 | Diagnose use of current instance with an illegal attribute. | |
25221 | ||
6f7f72f9 EB |
25222 | * sem_util.ads, sem_util.adb (Enclosing_Generic_Body): Change formal |
25223 | to a Node_Id. | |
25224 | (Enclosing_Generic_Unit): New function to return a node's innermost | |
25225 | enclosing generic declaration node. | |
25226 | (Compile_Time_Constraint_Error): Remove '!' in warning messages. | |
25227 | (Type_Access_Level): The accessibility level of anonymous acccess types | |
25228 | associated with discriminants is that of the current instance of the | |
25229 | type, and that's deeper than the type itself (AARM 3.10.2 (12.3.21)). | |
25230 | (Compile_Time_Constraint_Error): Handle case of conditional expression. | |
25231 | (Kill_Current_Values_For_Entity): New function | |
25232 | (Enter_Name): Change formal type to Entity_Id | |
cc26ad97 AC |
25233 | |
25234 | 2006-02-13 Hristian Kirtchev <kirtchev@adacore.com> | |
25235 | Ed Schonberg <schonberg@adacore.com> | |
25236 | Gary Dismukes <dismukes@adacore.com> | |
25237 | ||
25238 | * sem_ch10.adb (Check_Redundant_Withs): New procedure in | |
25239 | Analyze_Compilation_Unit. | |
25240 | Detect and warn on redundant with clauses detected in a package spec | |
25241 | and/or body when -gnatwr is used. | |
25242 | (Analyze_Context): Analyze config pragmas before other items | |
25243 | (Install_Context_Items): Don't analyze config pragmas here | |
25244 | (Install_Limited_Withed_Unit): Set limited entity of package in | |
25245 | with_clause so that cross-reference information or warning messages on | |
25246 | unused packages can be properly generated | |
25247 | (Is_Visible_Through_Renamings): Return false if the limited_with_clause | |
25248 | has Error_Posted set. Prevent infinite loops in illegal programs. | |
25249 | (Check_Private_Child_Unit): Move test for a nonprivate with clause down | |
25250 | to the point of the error test requiring the current unit to be private. | |
25251 | This ensures that private with clauses are not exempted from the basic | |
25252 | checking for being a descendant of the same library unit parent as a | |
25253 | withed private descendant unit. | |
25254 | (Check_Private_Limited_Withed_Unit): Revise the checking algorithm to | |
25255 | handle private with clauses properly, as well as to account for cases | |
25256 | where the withed unit is a public descendant of a private ancestor | |
25257 | (in which case the current unit must be a descendant of the private | |
25258 | ancestor's parent). The spec comments were updated accordingly. Also, | |
25259 | the old error message in this subprogram was replaced with error | |
25260 | messages that mirror the errors tested and reported by | |
25261 | Check_Private_Child_Unit. | |
25262 | Parameter and variable names improved for readability. | |
25263 | (Install_Limited_Context_Clauses): Remove test for a withed unit being | |
25264 | private as the precondition for calling | |
25265 | Check_Private_Limited_Withed_Unit since that subprogram has been | |
25266 | revised to test public units as well as private units. | |
25267 | ||
25268 | 2006-02-13 Thomas Quinot <quinot@adacore.com> | |
25269 | Robert Dewar <dewar@adacore.com> | |
25270 | Ed Schonberg <schonberg@adacore.com> | |
25271 | Javier Miranda <miranda@adacore.com> | |
25272 | ||
25273 | * sem_ch12.adb (Inline_Instance_Body): Remove erroneous assumption | |
25274 | that Scope_Stack.First = 1. | |
25275 | Properly handle Ada_Version_Explicit and Ada_Version_Config, which | |
25276 | were not always properly handled previously. | |
25277 | (Formal_Entity): Complete rewrite, to handle properly some complex case | |
25278 | with multiple levels of parametrization by formal packages. | |
25279 | (Analyze_Formal_Derived_Type): Propagate Ada 2005 "limited" indicator | |
25280 | to the corresponding derived type declaration for proper semantics. | |
25281 | ||
25282 | * sem_prag.adb (Analyze_Pragma): Remove '!' in warning message. | |
25283 | (Check_Component): Enforce restriction on components of | |
25284 | unchecked_unions: a component in a variant cannot contain tasks or | |
25285 | controlled types. | |
25286 | (Unchecked_Union): Allow nested variants and multiple discriminants, to | |
25287 | conform to AI-216. | |
25288 | Add pragma Ada_2005 (synonym for Ada_05) | |
25289 | Properly handle Ada_Version_Explicit and Ada_Version_Config, which | |
25290 | were not always properly handled previously. | |
25291 | Document that pragma Propagate_Exceptions has no effect | |
25292 | (Analyze_Pragma, case Pure): Set new flag Has_Pragma_Pure | |
25293 | (Set_Convention_From_Pragma): Check that if a convention is | |
25294 | specified for a dispatching operation, then it must be | |
25295 | consistent with the existing convention for the operation. | |
25296 | (CPP_Class): Because of the C++ ABI compatibility, the programmer is no | |
25297 | longer required to specify an vtable-ptr component in the record. For | |
25298 | compatibility reasons we leave the support for the previous definition. | |
25299 | (Analyze_Pragma, case No_Return): Allow multiple arguments | |
25300 | ||
25301 | * sem_ch3.ads, sem_ch3.adb (Check_Abstract_Overriding): Flag a | |
25302 | non-overrideen inherited operation with a controlling result as | |
25303 | illegal only its implicit declaration comes from the derived type | |
25304 | declaration of its result's type. | |
25305 | (Check_Possible_Deferred_Completion): Relocate the object definition | |
25306 | node of the subtype indication of a deferred constant completion rather | |
25307 | than directly analyzing it. The analysis of the generated subtype will | |
25308 | correctly decorate the GNAT tree. | |
25309 | (Record_Type_Declaration): Check whether this is a declaration for a | |
25310 | limited derived record before analyzing components. | |
25311 | (Analyze_Component_Declaration): Diagnose record types not explicitly | |
25312 | declared limited when a component has a limited type. | |
25313 | (Build_Derived_Record_Type): Code reorganization to check if some of | |
25314 | the inherited subprograms of a tagged type cover interface primitives. | |
25315 | This check was missing in case of a full-type associated with a private | |
25316 | type declaration. | |
25317 | (Constant_Redeclaration): Check that the subtypes of the partial and the | |
25318 | full view of a constrained deferred constant statically match. | |
25319 | (Mentions_T): A reference to the current type in an anonymous access | |
25320 | component declaration must be an entity name. | |
25321 | (Make_Incomplete_Type_Declaration): If type is tagged, set type of | |
25322 | class_wide type to refer to full type, not to the incomplete one. | |
25323 | (Add_Interface_Tag_Components): Do nothing if RE_Interface_Tag is not | |
25324 | available. Required to give support to the certified run-time. | |
25325 | (Analyze_Component_Declaration): In case of anonymous access components | |
25326 | perform missing checks for AARM 3.9.2(9) and 3.10.2 (12.2). | |
25327 | (Process_Discriminants): For an access discriminant, use the | |
25328 | discriminant specification as the associated_node_for_itype, to | |
25329 | simplify accessibility checks. | |
25330 | ||
25331 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
25332 | Javier Miranda <miranda@adacore.com> | |
25333 | ||
25334 | * sem_ch4.adb (Remove_Abstract_Interpretations): Even if there are no | |
25335 | abstract interpretations on an operator, remove interpretations that | |
25336 | yield Address or a type derived from it, if one of the operands is an | |
25337 | integer literal. | |
25338 | (Try_Object_Operation.Try_Primitive_Operation, | |
25339 | Try_Object_Operation.Try_Class_Wide_Operation): Set proper source | |
25340 | location when creating the new reference to a primitive or class-wide | |
25341 | operation as a part of rewriting a subprogram call. | |
25342 | (Try_Primitive_Operations): If context requires a function, collect all | |
25343 | interpretations after the first match, because there may be primitive | |
25344 | operations of the same type with the same profile and different return | |
25345 | types. From code reading. | |
25346 | (Try_Primitive_Operation): Use the node kind to choose the proper | |
25347 | operation when a function and a procedure have the same parameter | |
25348 | profile. | |
25349 | (Complete_Object_Operation): If formal is an access parameter and prefix | |
25350 | is an object, rewrite as an Access reference, to match signature of | |
25351 | primitive operation. | |
25352 | (Find_Equality_Type, Find_One_Interp): Handle properly equality given | |
25353 | by an expanded name with prefix Standard, when the operands are of an | |
25354 | anonymous access type. | |
25355 | (Remove_Abstract_Operations): If the operation is abstract because it is | |
25356 | inherited by a user-defined type derived from Address, remove it as | |
25357 | well from the set of candidate interpretations of an overloaded node. | |
25358 | (Analyze_Membership_Op): Membership test not applicable to cpp-class | |
25359 | types. | |
25360 | ||
25361 | 2006-02-13 Bob Duff <duff@adacore.com> | |
25362 | ||
25363 | * sem_ch8.adb (Note_Redundant_Use): Suppress unhelpful warning about | |
25364 | redundant use clauses. | |
25365 | In particular, if the scope of two use clauses overlaps, but one is not | |
25366 | entirely included in the other, we should not warn. This can happen | |
25367 | with nested packages. | |
25368 | (Analyze_Subprogram_Renaming): Protect the compiler against previously | |
25369 | reported errors. The bug was reported when the compiler was built | |
25370 | with assertions enabled. | |
25371 | (Find_Type): If the node is a 'Class reference and the prefix is a | |
25372 | synchronized type without a corresponding record, return the type | |
25373 | itself. | |
25374 | ||
25375 | 2006-02-13 Javier Miranda <miranda@adacore.com> | |
25376 | ||
25377 | * sem_ch9.adb (Analyze_Protected_Type, Analyze_Task_Type): Check that | |
25378 | if this is the full-declaration associated with a private declaration | |
25379 | that implement interfaces, then the private type declaration must be | |
25380 | limited. | |
25381 | (Analyze_Single_Protected, Analyze_Single_Task): Do not mark the object | |
25382 | as aliased. The use of the 'access attribute is not available for such | |
25383 | object (for this purpose the object should be explicitly marked as | |
25384 | aliased, but being an anonymous type this is not possible). | |
25385 | ||
25386 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
25387 | Robert Dewar <dewar@adacore.com> | |
25388 | ||
25389 | * sem_elab.adb (Same_Elaboration_Scope): A package that is a | |
25390 | compilation unit is an elaboration scope. | |
25391 | (Add_Task_Proc): Add '\' in 2-line warning message. | |
25392 | (Activate_All_Desirable): Deal with case of unit with'ed by parent | |
25393 | ||
25394 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
25395 | Javier Miranda <miranda@adacore.com> | |
25396 | ||
25397 | * sem_type.adb (Write_Overloads): Improve display of candidate | |
25398 | interpretations. | |
25399 | (Add_One_Interp): Do not add to the list of interpretations aliased | |
25400 | entities corresponding with an abstract interface type that is an | |
25401 | immediate ancestor of a tagged type; otherwise we have a dummy | |
25402 | conflict between this entity and the aliased entity. | |
25403 | (Disambiguate): The predefined equality on universal_access is not | |
25404 | usable if there is a user-defined equality with the proper signature, | |
25405 | declared in the same declarative part as the designated type. | |
25406 | (Find_Unique_Type): The universal_access equality operator defined under | |
25407 | AI-230 does not cover pool specific access types. | |
25408 | (Covers): If one of the types is a generic actual subtype, check whether | |
25409 | it matches the partial view of the other type. | |
25410 | ||
25411 | 2006-02-13 Thomas Quinot <quinot@adacore.com> | |
25412 | ||
25413 | * sinput-d.adb (Write_Line): Update the Source_Index_Table after each | |
25414 | line. This is necessary to allow In_Extended_Main_Unit to provide | |
25415 | correct results for itypes while writing out expanded source. | |
25416 | (Close_File): No need to update the source_index_table here since it's | |
25417 | now done for each line. | |
25418 | ||
25419 | 2006-02-13 Ed Schonberg <schonberg@adacore.com> | |
25420 | Robert Dewar <dewar@adacore.com> | |
25421 | ||
25422 | * sprint.adb (Write_Itype): Preserve Sloc of declaration, if any, to | |
25423 | preserve the source unit where the itype is declared, and prevent a | |
25424 | backend abort. | |
25425 | (Note_Implicit_Run_Time_Call): New procedure | |
25426 | (Write_Itype): Handle missing cases (E_Class_Wide_Type and | |
25427 | E_Subprogram_Type) | |
25428 | ||
25429 | * sprint.ads: Document use of $ for implicit run time routine call | |
25430 | ||
25431 | 2006-02-13 Quentin Ochem <ochem@adacore.com> | |
25432 | ||
25433 | * s-stausa.adb (Initialize_Analyzer): fixed error in assignment of | |
25434 | task name. | |
25435 | ||
25436 | 2006-02-13 Bob Duff <duff@adacore.com> | |
25437 | ||
25438 | * s-valint.adb (Scan_Integer): Call Scan_Raw_Unsigned instead of | |
25439 | Scan_Unsigned, so we do not scan leading blanks and sign twice. | |
25440 | Integer'Value("- 5") and Integer'Value("-+5") now correctly | |
25441 | raise Constraint_Error. | |
25442 | ||
25443 | * s-vallli.adb (Scan_Long_Long_Integer): Call | |
25444 | Scan_Raw_Long_Long_Unsigned instead of Scan_Long_Long_Unsigned, so we | |
25445 | do not scan leading blanks and sign twice. | |
25446 | Integer'Value("- 5") and Integer'Value("-+5") now correctly | |
25447 | raise Constraint_Error. | |
25448 | ||
25449 | * s-valllu.ads, s-valllu.adb (Scan_Raw_Long_Long_Unsigned, | |
25450 | Scan_Long_Long_Unsigned): Split out most of the processing from | |
25451 | Scan_Long_Long_Unsigned out into | |
25452 | Scan_Raw_Long_Long_Unsigned, so that Val_LLI can call the Raw_ version. | |
25453 | This prevents scanning leading blanks and sign twice. | |
25454 | Also fixed a bug: Modular'Value("-0") should raise Constraint_Error | |
25455 | See RM-3.5(44). | |
25456 | ||
25457 | * s-valuns.ads, s-valuns.adb (Scan_Raw_Unsigned, Scan_Unsigned): Split | |
25458 | out most of the processing from Scan_Unsigned out into | |
25459 | Scan_Raw_Unsigned, so that Val_LLI can call the Raw_ version. | |
25460 | This prevents scanning leading blanks and sign twice. | |
25461 | ||
25462 | * s-valuti.ads, s-valuti.adb (Scan_Plus_Sign): Add Scan_Plus_Sign, for | |
25463 | use with Modular'Value attribute. | |
25464 | (Scan_Plus_Sign): Add Scan_Plus_Sign, for use with Modular'Value | |
25465 | attribute. | |
25466 | ||
25467 | 2006-02-13 Robert Dewar <dewar@adacore.com> | |
25468 | ||
25469 | * s-wchjis.adb (JIS_To_EUC): Raise Constraint_Error for invalid value | |
25470 | ||
25471 | 2006-02-13 Eric Botcazou <ebotcazou@adacore.com> | |
25472 | ||
25473 | * tracebak.c (PPC AIX/Darwin): Define FORCE_CALL to 1. | |
25474 | (PPC VxWorks): Likewise. | |
25475 | (Generic unwinder): Define FORCE_CALL to 0 if not already defined. | |
25476 | (forced_callee): Make non-inlinable and non-pure. | |
25477 | (__gnat_backtrace): Call forced_callee if FORCE_CALL is set to 1. | |
25478 | ||
25479 | 2006-02-13 Arnaud Charlet <charlet@adacore.com> | |
25480 | Ben Brosgol <brosgol@adacore.com> | |
25481 | Robert Dewar <dewar@adacore.com> | |
25482 | ||
25483 | * gnat_rm.texi, gnat_ugn.texi: Remove limitations with sparc m64 | |
25484 | support. | |
25485 | Document that gnatbind -M option is for cross environments only. | |
25486 | Added description of using gnatmem to trace gnat rtl allocs and deallocs | |
25487 | Add note on use of $ to label implicit run time calls | |
25488 | Add documentation for -gnatyI (check mode IN) | |
25489 | Updated chapter on compatibility with HP Ada | |
25490 | VMS-oriented edits. | |
25491 | Ran spell and corrected errors | |
25492 | Add documentation for gnatbind -d and rework documentation of -D | |
25493 | at the same time. | |
25494 | Add subprogram/data elimination section. | |
25495 | Minor editing of annex A. | |
25496 | Add section for gnatcheck. | |
25497 | Add documentation for restriction No_Dispatching_Calls | |
25498 | Add documentation for pragma Ada_2005 | |
25499 | Remove mention of obsolete pragma Propagate_Exceptions | |
25500 | Document that pragma Unreferenced can appear after DO in ACCEPT | |
25501 | Clarify Pure_Function for library level units | |
25502 | Mention Max/Min in connection with No_Implicit_Conditionals | |
25503 | No_Wide_Characters restriction is no longer partition-wide | |
25504 | Add a nice example for Universal_Literal_String attribute | |
25505 | Document that pragma No_Return can take multiple arguments | |
25506 | ||
25507 | * ug_words: Added entry for gnatcheck | |
25508 | ||
25509 | * g-ctrl_c.ads (Install_Handler): Enhance comments | |
25510 | ||
25511 | * g-os_lib.ads: Add comments to OS_Exit that it is abrupt termination | |
25512 | ||
25513 | * g-trasym.ads: Add documentation on how to do off line symbolic | |
25514 | traceback computation. | |
25515 | ||
25516 | * s-fatgen.adb: Add comments for Unaligned_Valid | |
25517 | ||
25518 | * stand.ads: Fix typo in comment | |
25519 | ||
0e692cc0 RO |
25520 | 2006-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
25521 | ||
25522 | * Make-lang.in (check-gnat): Run run_acats with $(SHELL). | |
25523 | ||
f44013ae RS |
25524 | 2006-02-06 Roger Sayle <roger@eyesopen.com> |
25525 | ||
25526 | * decl.c (gnat_substitute_in_type): Don't handle CHAR_TYPE. | |
25527 | ||
3df6582b JDA |
25528 | 2006-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
25529 | ||
25530 | PR target/25926 | |
25531 | * initialize.c (__gnat_initialize): Provide HP-UX 10 host and target | |
25532 | implementation that calls __main. | |
25533 | ||
f57a2203 PG |
25534 | 2006-01-25 Peter O'Gorman <peter@pogma.com> |
25535 | ||
25536 | PR bootstrap/25859 | |
25537 | * Makefile.in (GCC_LINK): Remove quotes. | |
25538 | (tools targets): Link with either $(GNATLINK) --GCC="$(GCC_LINK)" | |
25539 | or $(GCC_LINK). | |
25540 | ||
25541 | (powerpc-darwin): Pass -shared-libgcc when building shared library. | |
25542 | ||
4bf2d473 JDA |
25543 | 2006-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
25544 | ||
25545 | PR ada/24533 | |
25546 | * s-osinte-linux-hppa.ads: Reduce alignment of atomic_lock_t to 8. | |
25547 | ||
4580c9a6 JDA |
25548 | 2005-12-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
25549 | ||
25550 | * s-osinte-linux-hppa.ads: Correct alignment of atomic_lock_t. | |
25551 | ||
e5c681b3 AC |
25552 | 2005-12-12 Arnaud Charlet <charlet@adacore.com> |
25553 | ||
25554 | * Makefile.in: Remove dummy setting of GCC_FOR_TARGET, no longer | |
25555 | needed. | |
25556 | ||
b0b8e176 AC |
25557 | 2005-12-12 Arnaud Charlet <charlet@adacore.com> |
25558 | ||
25559 | * Make-lang.in: Update dependencies | |
25560 | ||
53fcb103 AC |
25561 | 2005-12-12 Arnaud Charlet <charlet@adacore.com> |
25562 | ||
25563 | * Make-lang.in: Add rule for ada/exp_sel.o | |
25564 | ||
25b06cda AC |
25565 | 2005-12-12 Arnaud Charlet <charlet@adacore.com> |
25566 | ||
25567 | * Makefile.in (mingw section): Remove EH_MECHANISM setting. | |
25568 | ||
aedc2c2b AC |
25569 | 2005-12-09 Arnaud Charlet <charlet@adacore.com> |
25570 | ||
25571 | * gnatvsn.ads (Library_Version): Bump to version 4.2 | |
25572 | (ASIS_Version_Number): Bumped. | |
25573 | ||
25574 | 2005-12-09 Doug Rupp <rupp@adacore.com> | |
25575 | ||
25576 | * mlib-tgt-vms-ia64.adb, mlib-tgt-vms-alpha.adb (Is_Interface): Change | |
25577 | Ada bind file prefix on VMS from b$ to b__. | |
25578 | (Build_Dynamic_Library): Change Init file suffix on VMS from $init to | |
25579 | __init. | |
25580 | ||
25581 | * prj-nmsc.adb: Change some Hostparm.OpenVMS checks to | |
25582 | Targparm.OpenVMS_On_Target. | |
25583 | (Object_Suffix): Initialize with target object suffix. | |
25584 | (Get_Unit): Change Ada bind file prefix on VMS from b$ to b__. | |
25585 | ||
25586 | * butil.adb: Change some Hostparm.OpenVMS checks to | |
25587 | Targparm.OpenVMS_On_Target. | |
25588 | ||
25589 | * clean.adb: Change some Hostparm.OpenVMS checks to | |
25590 | Targparm.OpenVMS_On_Target. | |
25591 | (Object_Suffix): Initialize with call to Get_Target_Object_Suffix. | |
25592 | ({declaraction},Delete_Binder_Generated_Files,{initialization}): Change | |
25593 | Ada bind file prefix on VMS from b$ to b__. | |
25594 | ||
25595 | * gnatlink.adb (Process_Args): Call Add_Src_Search_Dir for -I in | |
25596 | --GCC so that Get_Target_Parameters can find system.ads. | |
25597 | (Gnatlink): Call Get_Target_Parameters in mainline. | |
25598 | Initialize standard packages for Targparm. | |
25599 | Change some Hostparm.OpenVMS checks to Targparm.OpenVMS_On_Target. | |
25600 | (Process_Args): Also Check for object files with target object | |
25601 | extension. | |
25602 | (Make_Binder_File_Names): Create with target object extension. | |
25603 | (Make_Binder_File_Names): Change Ada bind file prefix on VMS from b$ | |
25604 | to b__. | |
25605 | ||
25606 | * mlib-prj.adb: Change some Hostparm.OpenVMS checks to | |
25607 | Targparm.OpenVMS_On_Target. | |
25608 | ({declaration},Build_Library,Check_Library): Change Ada bind file | |
25609 | prefix on VMS from b$ to b__. | |
25610 | ||
25611 | * osint-b.adb: Change some Hostparm.OpenVMS checks to | |
25612 | Targparm.OpenVMS_On_Target. | |
25613 | (Create_Binder_Output): Change Ada bind file prefix on VMS from b$ to | |
25614 | b__. | |
25615 | ||
25616 | * targext.c: New file. | |
25617 | ||
25618 | * Makefile.in: add support for vxworks653 builds | |
25619 | (../../vxaddr2line): gnatlink with targext.o. | |
25620 | (TOOLS_LIBS): Move targext.o to precede libgnat. | |
25621 | (init.o, initialize.o): Minor clean up in dependencies. | |
25622 | (GNATLINK_OBJS): Add targparm.o, snames.o | |
25623 | Add rules fo building targext.o and linking it explicitly with all | |
25624 | tools. | |
25625 | Also add targext.o to gnatlib. | |
25626 | ||
25627 | * Make-lang.in: Add rules for building targext.o and linking it in | |
25628 | with gnat1 and gnatbind. | |
25629 | Add entry for exp_sel.o. | |
25630 | ||
25631 | * osint.adb Change some Hostparm.OpenVMS checks to | |
25632 | Targparm.OpenVMS_On_Target. | |
25633 | (Object_File_Name): Use target object suffix. | |
25634 | ||
25635 | * osint.ads (Object_Suffix): Remove, no longer used. | |
25636 | (Target_Object_Suffix): Initialize with target object suffix. | |
25637 | ||
25638 | * rident.ads: Add special exception to license. | |
25639 | ||
25640 | * targparm.adb (Get_Target_Parameters): Set the value of | |
25641 | Multi_Unit_Index_Character after OpenVMS_On_Target gets its definitive | |
25642 | value. | |
25643 | (Get_Target_Parameters): Set OpenVMS_On_Target if openvms. | |
9e81dbc7 | 25644 | |
aedc2c2b AC |
25645 | * targparm.ads: Add special exception to license. |
25646 | ||
25647 | * g-os_lib.ads, g-os_lib.adb (Get_Target_Debuggable_Suffix): New | |
25648 | function. | |
25649 | (Copy_File): Make sure from file is closed if error on to file | |
25650 | (Get_Target_Executable_Suffix, Get_Target_Object_Suffix): New functions. | |
25651 | ||
25652 | * make.adb (Object_Suffix): Intialize with Get_Target_Object_Suffix. | |
25653 | (Executable_Suffix): Intialize with Get_Target_Executable_Suffix. | |
25654 | ||
25655 | * osint-c.adb (Set_Output_Object_File_Name): Initialize extension with | |
25656 | target object suffix. | |
25657 | ||
25658 | 2005-12-09 Jose Ruiz <ruiz@adacore.com> | |
25659 | Quentin Ochem <ochem@adacore.com> | |
25660 | Florian Villoing <villoing@adacore.com> | |
25661 | ||
6f7f72f9 | 25662 | * a-taster.ads, a-taster.adb: New files. |
aedc2c2b AC |
25663 | |
25664 | * a-elchha.adb (Last_Chance_Handler): Change the task termination soft | |
25665 | link to the version that does nothing. This way the task termination | |
25666 | routine is not executed twice for the environment task when finishing | |
25667 | because of an unhandled exception. | |
25668 | ||
25669 | * a-exextr.adb (Notify_Unhandled_Exception): Call the task termination | |
25670 | handler because of an unhandled exception. | |
25671 | ||
25672 | * a-taside.adb (Abort_Tasks): Call the Abort_Tasks procedure from | |
25673 | System.Tasking.Utilities instead of that in System.Tasking.Stages. | |
25674 | ||
25675 | * s-finimp.adb (initialization code): Modify the soft link for the | |
25676 | finalization of the global list instead of Adafinal. | |
25677 | ||
25678 | * s-soflin.ads, s-soflin.adb (Task_Termination_NT): Add this | |
25679 | non-tasking version of the soft link for task termination. We do | |
25680 | nothing since if we are using the non-tasking version it | |
25681 | means that the task termination functionality is not used. | |
25682 | (Null_Finalize_Global_List): Add this null version for the procedure | |
25683 | in charge of finalizing the global list for controlled objects. | |
25684 | (Null_Adafinal): Remove this procedure. Adafinal_NT has been created | |
25685 | instead for handling run-time termination in a more flexible way. | |
25686 | (Adafinal_NT): This new procedure will take care of finalizing the | |
25687 | global list for controlled objects if needed, but no tasking | |
25688 | finalization. | |
25689 | ||
25690 | * s-tarest.adb (Task_Lock): Do not try to lock again the | |
25691 | Global_Task_Lock if we already own it. Otherwise, we get blocked in | |
25692 | some run-time operations. | |
25693 | (Task_Unlock): Do not try to actually unlock the Global_Task_Lock | |
25694 | until all nested locks have been released. | |
25695 | (Task_Wrapper): Call the fall-back task termination handler. It | |
25696 | applies to all tasks but the environment task. | |
25697 | (Finalize_Global_Tasks): Add the call for the task termination | |
25698 | procedure for the environment task. | |
25699 | (Task_Wrapper): suppress warnings around declaration of | |
25700 | Secondary_Stack_Address. | |
25701 | ||
25702 | * s-tasini.adb (Final_Task_Unlock): Global_Task_Lock_Nesting has been | |
25703 | moved to the Common_ATCB record. | |
25704 | (Task_Lock): Global_Task_Lock_Nesting has been moved to the | |
25705 | Common_ATCB record. | |
25706 | (Task_Unlock): Global_Task_Lock_Nesting has been moved to the | |
25707 | Common_ATCB record. | |
25708 | ||
25709 | * s-taskin.adb (Initialize_ATCB): Initialize Global_Task_Lock_Nesting, | |
25710 | Fall_Back_Handler, and Specific_Handler. | |
25711 | ||
25712 | * s-taskin.ads (Cause_Of_Termination): Redefine this type here, already | |
25713 | defined in Ada.Task_Termination, to avoid circular dependencies. | |
25714 | (Termination_Handler): Redefine this type here, alredy defined in | |
25715 | Ada.Task_Termination, for avoiding circular dependencies. | |
25716 | (Common_ATCB): Add the Fall_Back_Handler and Specific_Handler required | |
25717 | for storing task termination handlers. In addition, | |
25718 | Global_Task_Lock_Nesting has been moved from Ada_Task_Control_Block to | |
25719 | Common_ATCB because it is used by both the regular and the restricted | |
25720 | run times. | |
25721 | (Ada_Task_Control_Block): Move Global_Task_Lock_Nesting from here to | |
25722 | Common_ATCB because it is used by both the regular and the restricted | |
25723 | run times. | |
25724 | (Common_ATCB): Added a dynamic task analyzer field. | |
25725 | ||
25726 | * s-tassta.adb (Abort_Tasks): Move the code in charge of checking | |
25727 | potentially blocking operations to System.Tasking.Utilities.Abort_Tasks. | |
25728 | (Task_Wrapper): Call the task termination handler. It applies to all | |
25729 | tasks but the environment task. | |
25730 | (Finalize_Global_Tasks): Call the task termination procedure for the | |
25731 | environment task. The call to Finalize_Global_List is now performed | |
25732 | using the soft links mechanism. | |
25733 | (Task_Wrapper): added dynamic stack analysis. | |
25734 | ||
25735 | * s-tasuti.adb (Abort_Tasks): The code in charge of checking | |
25736 | potentially blocking operations has been moved from | |
25737 | System.Tasking.Stages.Abort_Tasks to this procedure. There can be | |
25738 | direct calls to System.Tasking.Utilities.Abort_Tasks that do not pass | |
25739 | through System.Tasking.Stages.Abort_Tasks, and we do not want to miss | |
25740 | this run-time check. | |
25741 | ||
25742 | * s-solita.adb (Task_Termination_Handler_T): Add this task-safe version | |
25743 | of task termination procedure. | |
25744 | (Init_Tasking_Soft_Links): Install the task-safe version of the soft | |
25745 | link for the task termination procedure. | |
25746 | ||
25747 | * bindusg.adb: (Bindusg): Added documentation for -u option. | |
25748 | ||
25749 | * bindgen.adb (Get_Main_Ada) Added handling of dynamic stack analysis. | |
25750 | (Get_Main_C): Add handling of dynamic stack analysis. | |
25751 | (Gen_Output_File_C): Add external functions for dynamic stack analysis. | |
25752 | ||
25753 | * Makefile.rtl: Add entry for a-taster (Ada.Task_Termination). | |
25754 | (GNATRTL_NONTASKING_OBJS) Added entries for dynamic stack analysis | |
25755 | (GNATRTL_NONTASKING_OBJS): Add AltiVec files. | |
25756 | ||
25757 | * opt.ads: Added flags used by dynamic stack measurement. | |
25758 | (Max_Line_Length): Remove (not used anymore) | |
25759 | ||
25760 | * s-io.ads, s-io.adb (Standard_Error): new subprogram | |
25761 | (Standart_Output): new subprogram | |
25762 | (Set_Output): new subprogram | |
25763 | (Put): now uses the value of Current_Out to know if the output has to be | |
25764 | send to stderr or stdout. | |
9e81dbc7 | 25765 | |
aedc2c2b AC |
25766 | * s-stausa.ads: Complete implementation. |
25767 | ||
25768 | * switch-b.adb: Added handling of -u switch for dynamic stack analysis. | |
9e81dbc7 | 25769 | |
aedc2c2b AC |
25770 | * impunit.adb (Non_Imp_File_Names_05): Add Ada.Task_Termination to the |
25771 | list of Ada 05 files. | |
25772 | (GNAT Library Units): Add AltiVec files. | |
25773 | ||
25774 | * g-allein.ads, g-alleve.adb, g-alleve.ads, g-altcon.adb, | |
25775 | g-altcon.ads, g-altive.ads, g-alveop.adb, g-alveop.ads | |
25776 | g-alvety.ads, g-alvevi.ads: New files providing altivec API. | |
25777 | ||
25778 | 2005-12-09 Nicolas Setton <setton@adacore.com> | |
25779 | ||
25780 | * adaint.c (__gnat_locate_regular_file): Return immediately if | |
25781 | file_name is empty. | |
25782 | ||
25783 | 2005-12-09 Javier Miranda <miranda@adacore.com> | |
25784 | Hristian Kirtchev <kirtchev@adacore.com> | |
25785 | ||
25786 | * a-tags.ads, a-tags.adb (Offset_To_Top): Moved from the package body | |
25787 | to the specification because the frontend generates code that uses this | |
25788 | subprogram. | |
25789 | (Set_Interface_Table): Add missing assertion. | |
25790 | Update documentation describing the run-time structure. | |
25791 | (Displace): New subprogram that displaces the pointer to the object | |
25792 | to reference one of its secondary dispatch tables. | |
25793 | (IW_Membership): Modified to use the new table of interfaces. | |
25794 | (Inherit_TSD): Modified to use the new table of interfaces. | |
25795 | (Register_Interface_Tag): Use the additional formal to fill the | |
25796 | contents of the new table of interfaces. | |
25797 | (Set_Interface_Table): New subprogram that stores in the TSD the | |
25798 | pointer to the table of interfaces. | |
25799 | (Set_Offset_To_Top): Use the additional formal to save copy of | |
25800 | the offset value in the table of interfaces. | |
25801 | Update structure of GNAT Primary and Secondary dispatch table diagram. | |
25802 | Add comment section on GNAT dispatch table prologue. | |
25803 | (Offset_To_Signature): Update the constant value of the Signature field. | |
25804 | (Dispatch_Table): Update comment on hidden fields in the prologue. | |
25805 | (Get_Entry_Index, Get_Prim_Op_Kind, Get_Offset_Index, OSD, | |
25806 | Set_Entry_Index, Set_Offset_Index, Set_Prim_Op_Kind, SSD, TSD): Change | |
25807 | the type of formal parameter T to Tag, introduce additional assertions. | |
25808 | (Get_Num_Prim_Ops, Set_Num_Prim_Ops): Remove an unnecessary type | |
25809 | conversion. | |
25810 | (Get_Tagged_Kind, Set_Tagged_Kind): New bodies. | |
25811 | ||
25812 | * exp_ch6.adb (Register_Interface_DT_Entry): Remove the Thunk_Id actual | |
25813 | in all the calls to Expand_Interface_Thunk. Instead of referencing the | |
25814 | record component containing the tag of the secondary dispatch table we | |
25815 | have to use the Offset_To_Top run-time function to get this information; | |
25816 | otherwise if the pointer to the base of the object has been displace | |
25817 | we get a wrong value if we use the 'position attribute. | |
25818 | ||
25819 | * exp_disp.adb (Expand_Interface_Thunk): Remove the Thunk_Id actual in | |
25820 | all the calls to Expand_Interface_Thunk. | |
25821 | (Make_Secondary_DT): Secondary dispatch tables do not have a table of | |
25822 | interfaces; hence the call to Set_Interface_Table was clearly wrong. | |
25823 | (Collect_All_Interfaces): Modify the internal subprogram Collect to | |
25824 | ensure that the interfaces implemented by the ancestors are placed | |
25825 | at the header of the generated list. | |
25826 | (Expand_Interface_Conversion): Handle the case in which the displacement | |
25827 | associated with the interface conversion is not statically known. In | |
25828 | this case we generate a call to the new run-time subprogram Displace. | |
25829 | (Make_DT): Generate and fill the new table of interfaces. | |
25830 | (Ada_Actions, Action_Is_Proc, Action_Nb_Arg): Add entries for | |
25831 | Get_Tagged_Kind and Set_Tagged_Kind. | |
25832 | (Tagged_Kind): New function that determines the tagged kind of a type | |
25833 | with respect to limitedness and concurrency and returns a reference to | |
25834 | RE_Tagged_Kind. | |
25835 | (Make_Disp_Asynchronous_Select_Body, Make_Disp_Conditional_Select_Body, | |
25836 | Make_Disp_Timed_Select_Body): Correctly retrieve the pointer to the | |
25837 | primary dispatch table for a type. | |
25838 | (Make_DT, Make_Secondary_DT): Set the tagged kind in the primary and | |
25839 | secondary dispatch table respectively of a tagged type. | |
25840 | ||
25841 | * exp_disp.ads (Expand_Interface_Thunk): Remove Thunk_Id formal. | |
25842 | (Expand_Interface_Conversion): New subprogram to indicate if the | |
25843 | displacement of the type conversion is statically known. | |
25844 | (DT_Access_Action): Add values Get_Tagged_Kind and Set_Tagged_Kind. | |
25845 | ||
25846 | * rtsfind.ads (RE_Offset_To_Top): New entity | |
25847 | (RTU_Id): Add Ada_Task_Termination to the list so that it is made | |
25848 | accessible to users. | |
25849 | (Re_Displace): New entity | |
25850 | (RE_Interface_Data): New entity | |
25851 | (RE_Set_Interface_Data): New_Entity | |
25852 | (RE_Id, RE_Unit_Table): Add entry for RE_Get_Tagged_Kind, | |
25853 | Set_Tagged_Kind, RE_Tagged_Kind, RE_TK_Abstract_Limited_Tagged, | |
25854 | RE_TK_Abstract_Tagged, RE_TK_Limited_Tagged, RE_TK_Protected, | |
25855 | RE_TK_Tagged, RE_TK_Task. | |
25856 | ||
25857 | * exp_ch3.adb (Init_Secondary_Tags): Modify the subprogram | |
25858 | Init_Secondary_Tags_Internal to allow its use with interface types and | |
25859 | also to generate the code for the new additional actual required | |
25860 | by Set_Offset_To_Top. | |
25861 | (Build_Init_Statements): In case of components associated with abstract | |
25862 | interface types there is no need to generate a call to its IP. | |
25863 | (Freeze_Record_Type): Generate Select Specific Data tables only for | |
25864 | concurrent types. | |
25865 | (Make_Predefined_Primitive_Specs, Predefined_Primitive_Bodies): Generate | |
25866 | the bodies and specifications of the predefined primitive operations | |
25867 | dealing with dispatching selects and abort, 'Callable, 'Terminated only | |
25868 | for concurrent types. | |
25869 | ||
6f7f72f9 | 25870 | * exp_sel.ads, exp_sel.adb: New files. |
aedc2c2b AC |
25871 | |
25872 | * exp_ch9.adb (Build_Protected_Entry, Expand_N_Protected_Body, | |
25873 | Expand_N_Protected_Type_Declaration, Make_Initialize_Protection): Handle | |
25874 | properly protected objects and attach handler in the case of the | |
25875 | restricted profile. | |
25876 | Move embeded package Select_Expansion_Utilities into a separate external | |
25877 | package. | |
25878 | (Expand_N_Asynchronous_Select, Expand_N_Conditional_Select, | |
25879 | Expand_N_Timed_Entry_Call): Correct calls external package Exp_Sel. | |
25880 | (Build_K, Build_S_Assignment): New subprograms, part of the select | |
25881 | expansion utilities. | |
25882 | (Expand_N_Asynchronous_Select, Expand_N_Conditional_Entry_Call, | |
25883 | Expand_N_Timed_Entry_Call): Optimize expansion of select statements | |
25884 | where the trigger is a dispatching procedure of a limited tagged type. | |
25885 | ||
25886 | 2005-12-09 Olivier Hainque <hainque@adacore.com> | |
25887 | ||
25888 | * decl.c (gnat_to_gnu_entity, renaming object case): Don't early expand | |
25889 | pointer initialization values. Make a SAVE_EXPR instead. Add comments | |
25890 | about the use and expansion of SAVE_EXPRs in the various possible | |
25891 | renaming handling cases. | |
25892 | (components_to_record, compare_field_bitpos): Sort by DECL_UID, not by | |
25893 | abusing DECL_FCONTEXT. | |
25894 | ||
25895 | 2005-12-09 Matthew Heaney <heaney@adacore.com> | |
25896 | ||
25897 | * a-convec.adb (Merge): Added assertions to check whether vector params | |
25898 | are sorted. | |
25899 | ||
25900 | * a-coinve.adb (Merge): Added assertions to check whether vector params | |
25901 | are sorted. | |
25902 | ||
25903 | * a-cohama.ads (Cursor'Write): raises Program_Error per latest AI-302 | |
25904 | draft. | |
25905 | (Cursor'Read): raises PE | |
25906 | ||
25907 | * a-cohama.adb (Insert.New_Node): Uses box-style syntax to init elem | |
25908 | to its default value. | |
25909 | ||
25910 | * a-cihama.adb: Manually check whether cursor's key and elem are | |
25911 | non-null | |
25912 | ||
25913 | * a-cidlli.ads, a-cidlli.adb (Splice): Changed param name and param mode | |
25914 | (Merge): Assert that target and source lists are in order | |
25915 | (Swap): Declare non-const temporaries, to pass to Splice | |
25916 | ||
25917 | * a-cdlili.ads: (Splice): Changed param name and param mode | |
25918 | ||
25919 | * a-cdlili.adb: (Splice): Changed param name and param mode | |
25920 | (Merge): Assert that target and source lists are in order | |
25921 | (Swap): Declare non-const temporaries, to pass to Splice | |
25922 | ||
25923 | * a-ciorma.ads, a-coorma.ads: (Read): declare Stream param as not null | |
25924 | (Write): declare Stream param as not null | |
25925 | ||
25926 | * a-ciorma.adb, a-coorma.adb: All explicit raise statements now include | |
25927 | an exception message. | |
25928 | ||
25929 | 2005-12-09 Thomas Quinot <quinot@adacore.com> | |
25930 | Robert Dewar <dewar@adacore.com> | |
25931 | ||
25932 | * hostparm.ads (Max_Line_Length): Set to Types.Column_Number'Last - 1, | |
25933 | which is the absolute maximum length we can support. | |
25934 | ||
25935 | * frontend.adb: For the processing of configuration pragma files, | |
25936 | remove references to Opt.Max_Line_Length, which is not checked anymore. | |
25937 | ||
25938 | * namet.ads (Name_Buffer): Adjust size to reflect increase on max line | |
25939 | length. | |
25940 | ||
9e81dbc7 | 25941 | * scn.adb, scng.adb: |
aedc2c2b AC |
25942 | Always check line length against the absolute supported maximum, |
25943 | Hostparm.Max_Line_Length. | |
25944 | ||
25945 | * stylesw.adb (Set_Style_Check_Options, case M): The maximum supported | |
25946 | value for the maximum line length is Max_Line_Length (not | |
25947 | Column_Number'Last). | |
25948 | Minor error msg update | |
25949 | (Set_Style_Check_Options): New interface returning error msg | |
25950 | Minor code reorganization (processing for 'M' was out of alpha order) | |
25951 | ||
25952 | * switch-c.adb: New interface for Set_Style_Check_Options | |
25953 | ||
25954 | * stylesw.ads (Set_Style_Check_Options): New interface returning error | |
25955 | msg. | |
25956 | ||
25957 | 2005-12-09 Javier Miranda <miranda@adacore.com> | |
25958 | ||
25959 | * exp_aggr.adb (Build_Record_Aggr_Code): Default-initialialized records | |
25960 | with IP subprogram were only supported if there were limited types. | |
25961 | ||
25962 | * sem_aggr.adb (Resolve_Record_Aggregate): Default-initialialized | |
25963 | records with IP subprogram were only supported if there were limited | |
25964 | types. | |
25965 | ||
25966 | 2005-12-09 Olivier Hainque <hainque@adacore.com> | |
25967 | Eric Botcazou <ebotcazou@adacore.com> | |
25968 | ||
25969 | * trans.c (tree_transform, emit_check): Adjust calls to | |
25970 | build_call_raise, passing the now expected GNAT_NODE argument. | |
25971 | ||
25972 | * gigi.h (build_call_raise): Add a GNAT_NODE argument to convey better | |
25973 | source line information than what the current global locus indicates | |
25974 | when appropriate. | |
25975 | ||
25976 | * utils2.c (build_simple_component_ref): Return 0 if the offset of the | |
25977 | field has overflowed. | |
25978 | (build_call_raise): Add a GNAT_NODE argument to convey better source | |
25979 | line information than what the current global locus indicates when | |
25980 | appropriate. | |
25981 | (build_component_ref): Adjust call to build_call_raise. | |
25982 | ||
25983 | 2005-12-09 Pascal Obry <obry@adacore.com> | |
25984 | ||
25985 | * g-diopit.adb (Find): Fix test to exit the iterator and make sure that | |
25986 | the iterator is quitting iteration on parent directory. | |
25987 | ||
25988 | 2005-12-09 Javier Miranda <miranda@adacore.com> | |
25989 | ||
25990 | * exp_ch5.adb (Expand_N_Assignment_Statement): In case of tagged types | |
25991 | and the assignment to a class-wide object, before the assignment we | |
25992 | generate a run-time check to ensure that the tag of the Target is | |
25993 | covered by the tag of the source. | |
25994 | ||
25995 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
25996 | ||
25997 | * exp_imgv.adb (Expand_Image_Attribute): Generate extra boolean | |
25998 | parameter in call to Image_Wide_Character. | |
25999 | ||
26000 | * s-imgwch.ads, s-imgwch.adb (Image_Wide_Character): Add boolean | |
26001 | parameter Ada_2005 to deal with annoying FFFE/FFFF inconsistency. | |
26002 | (Image_Wide_Character): Add boolean parameter Ada_2005 to deal with | |
26003 | annoying FFFE/FFFF inconsistency. | |
26004 | ||
26005 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26006 | Javier Miranda <miranda@adacore.com> | |
26007 | Ed Schonberg <schonberg@adacore.com> | |
26008 | ||
26009 | * exp_util.ads, exp_util.adb (Is_Ref_To_Bit_Packed_Slice): Handle case | |
26010 | of type conversion. | |
26011 | (Find_Interface): New subprogram that given a tagged type and one of its | |
26012 | component associated with the secondary table of an abstract interface | |
26013 | type, return the entity associated with such abstract interface type. | |
26014 | (Make_Subtype_From_Expr): If type has unknown discriminants, always use | |
26015 | base type to create anonymous subtype, because entity may be a locally | |
26016 | declared subtype or generic actual. | |
26017 | (Find_Interface): New subprogram that given a tagged type and one of its | |
26018 | component associated with the secondary table of an abstract interface | |
26019 | type, return the entity associated with such abstract interface type. | |
26020 | ||
26021 | * sem_res.adb (Resolve_Type_Conversion): Handle the case in which the | |
26022 | conversion cannot be handled at compile time. In this case we pass this | |
26023 | information to the expander to generate the appropriate code. | |
26024 | ||
26025 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26026 | Ed Schonberg <schonberg@adacore.com> | |
26027 | Gary Dismukes <dismukes@adacore.com> | |
26028 | Javier Miranda <miranda@adacore.com> | |
26029 | Hristian Kirtchev <kirtchev@adacore.com> | |
26030 | ||
26031 | * einfo.adb (Itype_Printed): New flag | |
26032 | (Is_Limited_Type): Derived types do not inherit limitedness from | |
26033 | interface progenitors. | |
26034 | (Is_Return_By_Reference_Type): Predicate does not apply to limited | |
26035 | interfaces. | |
26036 | ||
26037 | * einfo.ads (Itype_Printed): New flag | |
26038 | Move Is_Wrapper_Package to proper section | |
26039 | Add missing Inline for Is_Volatile | |
26040 | ||
26041 | * output.ads, output.adb (Write_Erase_Char): New procedure | |
26042 | (Save/Restore_Output_Buffer): New procedures | |
26043 | (Save/Restore_Output_Buffer): New procedures | |
26044 | ||
26045 | * sprint.ads, sprint.adb (Write_Itype): Handle case of record itypes | |
26046 | Add missing support for anonymous access type | |
26047 | (Write_Id): Insert calls to Write_Itype | |
26048 | (Write_Itype): New procedure to output itypes | |
26049 | ||
26050 | * par-ch12.adb (P_Formal_Derived_Type_Definition): In Ada 2005, handle | |
26051 | use of "limited" in declaration. | |
26052 | ||
9e81dbc7 | 26053 | * sinfo.ads, sinfo.adb: |
aedc2c2b AC |
26054 | Formal derived types can carry an explicit "limited" indication. |
26055 | ||
26056 | * sem_ch3.adb: Add with and use of Targparm. | |
26057 | (Create_Component): If Frontend_Layout_On_Target is True and the | |
26058 | copied component does not have a known static Esize, then reset | |
26059 | the size and positional fields of the new component. | |
26060 | (Analyze_Component_Declaration): A limited component is | |
26061 | legal within a protected type that implements an interface. | |
26062 | (Collect_Interfaces): Do not add to the list the interfaces that | |
26063 | are implemented by the ancestors. | |
26064 | (Derived_Type_Declaration): If the parent of the full-view is an | |
26065 | interface perform a transformation of the tree to ensure that it has | |
26066 | the same parent than the partial-view. This simplifies the job of the | |
26067 | expander in order to generate the correct object layout, and it is | |
26068 | needed because the list of interfaces of the full-view can be given in | |
26069 | any order. | |
26070 | (Process_Full_View): The parent of the full-view does not need to be | |
26071 | a descendant of the parent of the partial view if both parents are | |
26072 | interfaces. | |
26073 | (Analyze_Private_Extension_Declaration): If declaration has an explicit | |
26074 | "limited" the parent must be a limited type. | |
26075 | (Build_Derived_Record_Type): A derived type that is explicitly limited | |
26076 | must have limited ancestor and progenitors. | |
26077 | (Build_Derived_Type): Ditto. | |
26078 | (Process_Full_View): Verify that explicit uses of "limited" in partial | |
26079 | and full declarations are consistent. | |
26080 | (Find_Ancestor_Interface): Remove function. | |
26081 | (Collect_Implemented_Interfaces): New procedure used to gather all | |
26082 | implemented interfaces by a type. | |
26083 | (Contain_Interface): New function used to check whether an interface is | |
26084 | present in a list. | |
26085 | (Find_Hidden_Interface): New function used to determine whether two | |
26086 | lists of interfaces constitute a set equality. If not, the first | |
26087 | differing interface is returned. | |
26088 | (Process_Full_View): Improve the check for the "no hidden interface" | |
26089 | rule as defined by AI-396. | |
26090 | ||
26091 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26092 | ||
26093 | * freeze.adb (Freeze_Record_Type): Only test for useless pack on record | |
26094 | types, not on record subtypes. | |
26095 | (Freeze_Entity): Code cleanup. Add barrier to the loop | |
26096 | that generates the references for primitive operations. This allows to | |
26097 | remove an unnecessary exception handler. | |
26098 | Code reformatting and comment clean ups. | |
26099 | ||
26100 | 2005-12-09 Vincent Celier <celier@adacore.com> | |
26101 | ||
26102 | * gnatcmd.adb (GNATCmd): GNAT CHECK accepts switch -U | |
26103 | If GNAT CHECK is called with a project file, but with no | |
26104 | source on the command line, call gnatcheck with all the compilable | |
26105 | sources of the project. | |
26106 | Take into account the new command Check, for gnatcheck. Treat as for | |
26107 | other ASIS tools: take into account project, specific package Check and | |
26108 | Compiler switches. | |
26109 | For ASIS tools, add the switches in package Compiler for | |
26110 | the invocation of the compiler. | |
26111 | ||
26112 | * prj-attr.adb: Add package Check and its attributes | |
26113 | ||
26114 | * vms_conv.ads (Command_Type): New command Check, for gnatcheck | |
26115 | ||
26116 | * vms_conv.adb (Initialize): Change Params of command Check to | |
26117 | unlimited files. | |
26118 | Change some Hostparm.OpenVMS checks to Targparm.OpenVMS_On_Target. | |
26119 | Add data for new command Check | |
26120 | ||
26121 | * vms_data.ads: Add project related qualifiers for GNAT CHECK and GNAT | |
26122 | ELIM. | |
26123 | Add qualifiers for Check command options | |
26124 | (Command_Type): New command Check | |
26125 | ||
26126 | 2005-12-09 Thomas Quinot <quinot@adacore.com> | |
26127 | ||
26128 | * mlib-utl.adb (Ar): Use Output.Buffer_Max to determine whether a | |
26129 | command line switch overruns the output buffer. | |
26130 | ||
26131 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26132 | ||
26133 | * sem_prag.adb: Processing for new pragma Complete_Representation | |
26134 | (Analyze_Pragma, case Debug): Implement two argument form. | |
26135 | ||
26136 | * par-prag.adb: Entry for new pragma Complete_Representation | |
26137 | (Prag, case Debug): Recognize two argument form of pragma Debug | |
26138 | New interface for Set_Style_Check_Options. | |
26139 | ||
26140 | * sem_ch13.adb: Implement new pragma Complete_Representation. | |
26141 | ||
26142 | * snames.adb, snames.ads, snames.h: Entry for new pragma | |
26143 | Complete_Representation. | |
26144 | ||
26145 | 2005-12-09 Gary Dismukes <dismukes@adacore.com> | |
26146 | ||
26147 | * sem_cat.adb (Validate_RCI_Subprogram_Declaration): Revise test for | |
26148 | available user-specified stream attributes on limited parameters to | |
26149 | also test the type directly rather than only its underlying type (for | |
26150 | Ada 95) and, in the case of Ada 2005, to check that the user-specified | |
26151 | attributes are visible at the point of the subprogram declaration. | |
26152 | For Ada 2005, the error message is modified to indicate that the | |
26153 | type's stream attributes must be visible (again, only for -gnat05). | |
26154 | ||
26155 | 2005-12-09 Ed Schonberg <schonberg@adacore.com> | |
26156 | ||
26157 | * sem_ch12.adb (Subtypes_Match): Handle properly Ada05 arrays of | |
26158 | anonymous access types. | |
26159 | ||
26160 | * sem_eval.adb (Subtypes_Statically_Match): Implement new rules for | |
26161 | matching of anonymous access types and anonymous access to subprogram | |
26162 | types. 'R'M 4.9.1 (2/2). | |
26163 | ||
26164 | 2005-12-09 Ed Schonberg <schonberg@adacore.com> | |
26165 | ||
26166 | * sem_ch4.adb (Remove_Abstract_Operations): Do not apply preference | |
26167 | rule prematurely when operands are universal, remaining ambiguities | |
26168 | will be removed during resolution. | |
26169 | Code cleanup. | |
26170 | ||
26171 | * sem_type.adb (Disambiguate): In Ada95 mode, discard interpretations | |
26172 | that are Ada 2005 functions. | |
26173 | (Has_Abstract_Interpretation): Subsidiary to | |
26174 | Remove_Conversions, to remove ambiguities caused by abstract operations | |
26175 | on numeric types when operands are universal. | |
26176 | ||
26177 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26178 | ||
26179 | * sem_ch6.adb (Analyze_Subprogram_Body): Properly check categorization | |
26180 | for case where spec is categorized. | |
26181 | ||
26182 | 2005-12-09 Javier Miranda <miranda@adacore.com> | |
26183 | ||
26184 | * sem_ch8.adb (Find_Type): In case of tagged types that are concurrent | |
26185 | types use the corresponding record type. This was not needed before | |
26186 | the implementation of Ada 2005 synchronized types because | |
26187 | concurrent types were never tagged types in Ada 95. | |
26188 | ||
26189 | 2005-12-09 Ed Schonberg <schonberg@adacore.com> | |
26190 | ||
26191 | * sem_ch9.adb (Analyze_Delay_Alternative, Analyze_Delay_Until): Use the | |
26192 | first subtype of the type of the expression to verify that it is a | |
26193 | legal Time type. | |
26194 | ||
26195 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26196 | ||
26197 | * sem_util.ads, sem_util.adb (Full_Qualified_Name): Now provides | |
26198 | decoded names. | |
26199 | ||
26200 | 2005-12-09 Quentin Ochem <ochem@adacore.com> | |
26201 | Robert Dewar <dewar@adacore.com> | |
26202 | Ed Falis <falis@adacore.com> | |
26203 | Florian Villoing <villoing@adacore.com> | |
26204 | Thomas Quinot <quinot@adacore.com> | |
26205 | Arnaud Charlet <charlet@adacore.com> | |
26206 | ||
26207 | * gnat_ugn.texi: Created section "Stack Related Tools" | |
26208 | Moved "Stack Overflow Checking" subsection from "Switches for gcc" to | |
26209 | "Stack Related Tools" | |
26210 | Added subsection "Static Stack Usage Analysis" | |
26211 | Added subsection "Dynamic Stack Usage Analysis" | |
26212 | Include documentation of itypes in sprint listing (-gnatG) | |
26213 | Documented gnatbind -D switch (default sec stack size for fixed sec | |
26214 | stacks). | |
26215 | Added Interrupt_State and Persistent_BSS to list of configuration | |
26216 | pragmas. | |
26217 | Add missing doc for maximum value of nnn in -gnatyMnnn | |
26218 | ||
26219 | * gnat_rm.texi: Document the AltiVec binding. | |
26220 | Add documentation for pragma Complete_Representation | |
26221 | Shortened an overly long line (> 79 chars) | |
26222 | Clarify documentation of unchecked conversion in implementation | |
26223 | defined cases. | |
26224 | Document two argument form of pragma Debug | |
26225 | ||
26226 | * types.ads (Column_Number): Update documentation. | |
26227 | ||
26228 | * exp_ch7.ads (Make_Adjust_Call): Document the special processing for | |
26229 | library level Finalize_Storage_Only objects (these are not attached to | |
26230 | any finalization list). | |
26231 | ||
26232 | * system-mingw.ads: (Underlying_Priorities): Update comment. | |
26233 | ||
26234 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26235 | ||
26236 | * i-c.adb, i-cexten.ads, i-cobol.adb, i-cobol.ads, i-cpoint.ads, | |
6f7f72f9 | 26237 | i-cpp.adb, i-cpp.ads, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads, |
aedc2c2b AC |
26238 | inline.adb, interfac.ads, i-os2err.ads, i-os2lib.ads, i-os2syn.ads, |
26239 | i-os2thr.ads, itypes.adb, itypes.adb, itypes.ads, krunch.ads, | |
26240 | krunch.adb, lib.adb, lib.ads, lib-list.adb, lib-load.adb, | |
26241 | lib-load.ads, lib-sort.adb, live.adb, make.ads, i-cstrea-vms.adb, | |
26242 | interfac-vms.ads, makegpr.adb, indepsw-gnu.adb, indepsw.ads, | |
26243 | s-wchcon.ads, sdefault.ads, sem_ch10.adb, sem_eval.ads: Minor | |
26244 | reformatting. | |
26245 | ||
26246 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26247 | ||
26248 | * s-vaflop-vms-alpha.adb: (Ne_F): New function | |
26249 | (Ne_G): New function | |
26250 | ||
26251 | * exp_ch4.adb (Expand_Allocator_Expression): Factor duplicated code | |
26252 | for tag assignment. | |
26253 | (Rewrite_Comparison): Handle case where operation is not a comparison | |
26254 | and ignore, and also handle type conversion case. | |
26255 | ||
26256 | 2005-12-09 Thomas Quinot <quinot@adacore.com> | |
26257 | ||
26258 | * exp_aggr.ads: Fix typo in comment. | |
26259 | ???-mark Convert_Aggr_In_Assignment as needing documentation. | |
26260 | ||
26261 | 2005-12-09 Gary Dismukes <dismukes@adacore.com> | |
26262 | ||
26263 | * layout.adb: Replace various uses of byte by storage unit throughout. | |
26264 | (Get_Max_SU_Size): Name changed from Get_Max_Size. In the case of a | |
26265 | static size, convert to storage units before returning, to conform to | |
26266 | spec. | |
26267 | ||
26268 | 2005-12-09 Matthew Gingell <gingell@adacore.com> | |
26269 | ||
26270 | * g-exctra.ads: Fix typo in comment. | |
26271 | ||
26272 | 2005-12-09 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
26273 | ||
26274 | * utils.c: Minor reformatting. | |
26275 | ||
26276 | 2005-12-09 Robert Dewar <dewar@adacore.com> | |
26277 | ||
9e81dbc7 | 26278 | * g-soccon.ads: |
aedc2c2b AC |
26279 | Further comment fixes to make the status of the default file clear |
26280 | ||
26281 | * s-bitops.adb: Clarify comment for Bits_Array | |
26282 | ||
719bb4e3 | 26283 | 2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
bd97af06 RÁE |
26284 | |
26285 | * Make-lang.in (ada.install-normal): Remove. | |
26286 | ||
719bb4e3 | 26287 | 2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
2f4d2d18 AM |
26288 | |
26289 | * Make-lang.in: Remove all dependencies on s-gtype. | |
26290 | ||
53917868 RG |
26291 | 2005-12-05 Richard Guenther <rguenther@suse.de> |
26292 | ||
26293 | * utils.c (convert): Use fold_convert where appropriate. | |
26294 | ||
40077270 PB |
26295 | 2005-12-05 Paolo Bonzini <bonzini@gnu.org> |
26296 | ||
6f7f72f9 | 26297 | * Makefile.in (gnatlib): Fix regex, using \. instead of . when |
40077270 PB |
26298 | a period is meant. |
26299 | ||
a380cd0a RG |
26300 | 2005-12-02 Richard Guenther <rguenther@suse.de> |
26301 | ||
26302 | * trans.c (gnat_gimplify_expr): Use buildN instead of build. | |
26303 | ||
87f2a9f5 RS |
26304 | 2005-12-01 Roger Sayle <roger@eyesopen.com> |
26305 | ||
26306 | * utils.c (max_size): Only test for TREE_OVERFLOW on INTEGER_CST | |
26307 | nodes. | |
26308 | ||
9e94c78f | 26309 | 2005-11-23 Laurent Guerby <laurent@guerby.net> |
f8d15f14 | 26310 | |
6f7f72f9 | 26311 | * mlib-prj.adb (Build_Library): Initialize Delete. |
f8d15f14 | 26312 | |
9e94c78f | 26313 | 2005-11-21 Joel Sherrill <joel.sherrill@oarcorp.com> |
04b5d587 JS |
26314 | |
26315 | * socket.c: Add extern int h_errno for rtems since networking header | |
26316 | files are not available at this point in a tool bootstrap. Newlib | |
26317 | only has basic C library header files. | |
26318 | ||
452b5b1e RG |
26319 | 2005-11-19 Richard Guenther <rguenther@suse.de> |
26320 | Roger Sayle <roger@eyesopen.com> | |
26321 | ||
26322 | PR ada/23717 | |
26323 | * misc.c (internal_error_function): Don't use vsprintf to format | |
26324 | the error message text, instead use pp_format_text and the new | |
26325 | pretty printer APIs. This allows handling of %qs, %w, etc. | |
26326 | ||
9e94c78f | 26327 | 2005-11-18 Laurent Guerby <laurent@guerby.net> |
e0709888 | 26328 | |
6f7f72f9 EB |
26329 | PR ada/24857 |
26330 | * Makefile.in: Use s-auxdec-empty for RTEMS. | |
e0709888 | 26331 | |
115a82d3 RK |
26332 | 2005-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
26333 | ||
26334 | PR ada/22333 | |
26335 | * trans.c (gnat_gimplify_expr, case ADDR_EXPR): Always make | |
26336 | a temporary if taking the address of something that is neither | |
26337 | reference, declaration, or constant, since the gimplifier | |
26338 | can't handle that case. | |
26339 | ||
9e94c78f | 26340 | 2005-11-17 Laurent Guerby <laurent@guerby.net> |
f92af607 LG |
26341 | |
26342 | PR ada/24857 | |
26343 | * s-auxdec-empty.ads, s-auxdec-empty.adb: New files. | |
6f7f72f9 | 26344 | |
0678ec6b RG |
26345 | 2005-11-16 Richard Guenther <rguenther@suse.de> |
26346 | ||
26347 | * Makefile.in: Add EH_MECHANISM=-gcc to s390(x) linux. | |
26348 | ||
9e94c78f | 26349 | 2005-11-16 Joel Sherrill <joel.sherrill@oarcorp.com> |
b381d30b | 26350 | |
6f7f72f9 EB |
26351 | PR ada/24855 |
26352 | * raise-gcc.c: Add missing stdarg.h include. | |
9e81dbc7 | 26353 | |
1367ca38 RG |
26354 | 2005-11-16 Richard Guenther <rguenther@suse.de> |
26355 | ||
26356 | * Make-lang.in (ada/decl.o): Add $(EXPR_H) dependency. | |
26357 | (ada/misc.o): Likewise. | |
26358 | ||
5de923eb AC |
26359 | 2005-11-14 Thomas Quinot <quinot@adacore.com> |
26360 | ||
26361 | * g-soccon.ads: Minor reformatting. Update comments. | |
26362 | ||
26363 | * gsocket.h: Include <sys/times.h> in the VxWorks case, in order to | |
26364 | gain visibility on the declaration of struct timeval. | |
26365 | ||
26366 | * g-soccon-freebsd.ads, | |
26367 | g-soccon-darwin.ads, | |
26368 | g-soccon-tru64.ads, | |
26369 | g-soccon-aix.ads, | |
26370 | g-soccon-irix.ads, | |
26371 | g-soccon-hpux.ads, | |
26372 | g-soccon-solaris.ads, | |
26373 | g-soccon-vms.ads, | |
26374 | g-soccon-mingw.ads, | |
26375 | g-soccon-vxworks.ads (SIZEOF_tv_sec, SIZEOF_tv_usec): New constants. | |
26376 | ||
26377 | * g-soccon-hpux-ia64.ads, g-soccon-linux-ppc.ads, | |
26378 | g-soccon-solaris-64.ads, g-soccon-linux-64.ads, | |
26379 | g-soccon-linux-x86.ads: New files. | |
26380 | ||
9e81dbc7 | 26381 | * g-socthi-mingw.adb: |
5de923eb AC |
26382 | (Socket_Error_Message): Remove redundant use of GNAT.Sockets.Constants |
26383 | ||
26384 | * g-socthi-vxworks.ads, g-socthi-vms.ads, g-socthi-mingw.ads | |
26385 | (time_t, suseconds_t): New types constructed to match the tv_sec | |
26386 | and tv_usec fields of C struct timeval. | |
26387 | (Timeval): Construct structure in terms of the new types. | |
26388 | (Host_Errno): New function (imported from socket.c), returns last hosts | |
26389 | database error. | |
26390 | ||
26391 | * g-socthi-vxworks.adb: Add error handling circuitry. | |
26392 | ||
26393 | * g-socket.ads, g-socket.adb (To_Timeval): Reflect change of type for | |
26394 | components of struct timeval. | |
26395 | (Get_Host_By_Name, Get_Host_By_Address): Fix error reporting circuitry. | |
26396 | (Check_Selector): In error conditions, clear internal socket sets to | |
26397 | avoid a memory leak. | |
26398 | (Get_Socket_Option, Set_Socket_Option): Support for Multicast_If, | |
26399 | Send_Timeout, Receive_Timeout. | |
26400 | ||
26401 | * g-socthi.ads (time_t, suseconds_t): New types constructed to match | |
26402 | the tv_sec and tv_usec fields of C struct timeval. | |
26403 | (Timeval): Construct structure in terms of the new types. | |
26404 | (Host_Errno): New function (imported from socket.c), returns last hosts | |
26405 | database error. | |
26406 | ||
26407 | * socket.c (__gnat_get_h_errno): New function to retrieve h_errno, the | |
26408 | hosts database last error code. | |
26409 | ||
26410 | * gen-soccon.c: Complete value expansion should not be performed on | |
26411 | TARGET, as it has the form of a math expression, and some components | |
26412 | may be platform-defined macros. | |
26413 | For VxWorks, generate the OK and ERROR values. | |
26414 | New constants giving the sizes of the components of C struct timeval. | |
26415 | ||
26416 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
26417 | Ed Schonberg <schonberg@adacore.com> | |
26418 | ||
26419 | PR ada/18434 | |
5de923eb AC |
26420 | * types.ads: Include All_Checks in Suppress_Array |
26421 | ||
26422 | * checks.adb (Check_Needed): Remove kludge for a/=b rewritten as | |
26423 | not(a=b), since we no longer do this rewriting, and hence it is not | |
26424 | needed. | |
26425 | (Elaboration_Checks_Suppressed): Add special casing to | |
26426 | deal with different cases of static and dynamic elaboration checks (all | |
26427 | checks does not count in the first case, but does in the second). | |
26428 | (Expr_Known_Valid): Do not assume that the result of any arbitrary | |
26429 | function call is valid, since this is not the case. | |
26430 | (Ensure_Valid): Do not apply validity check to a real literal | |
26431 | in a universal or fixed context | |
26432 | ||
26433 | * exp_ch4.adb (Expand_N_Op_Ne): Don't expand a/=b to not(a=b) for | |
26434 | elementary types using the operator in standard. It is cleaner not to | |
26435 | modify the programmers intent, especially in the case of floating-point. | |
26436 | (Rewrite_Comparison): Fix handling of /= (this was always wrong, but | |
26437 | it did not matter because we always rewrote a/=b to not(a=b). | |
26438 | (Expand_Allocator_Expression): For an allocator expression whose nominal | |
26439 | subtype is an unconstrained packed type, convert the expression to its | |
26440 | actual constrained subtype. | |
26441 | Implement warning for <= or >= where < or > not possible | |
26442 | Fix to Vax_Float tests (too early in many routines, causing premature | |
26443 | Vax_Float expansions. | |
26444 | ||
26445 | * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow this pragma | |
26446 | to be used with packages and generic packages as well as with | |
26447 | subprograms. | |
26448 | (Suppress): Set All_Checks, but not Elaboration_Check, for case | |
26449 | of pragma Suppress (All_Checks) | |
26450 | (Analyze_Pragma, case Warnings): Implement first argument allowed to be | |
26451 | a string literal for precise control over warnings. | |
26452 | Avoid raise of pragma in case of unrecognized pragma and just return | |
26453 | instead. | |
26454 | ||
26455 | * sem_prag.ads: Minor reformatting | |
26456 | ||
26457 | * switch-c.adb (Scan_Front_End_Switches): Replace "raise Bad_Switch;" | |
26458 | with call to new procedure Bad_Switch. Call Scan_Pos with new parameter | |
26459 | Switch. Do not handle any exception. | |
26460 | Include -gnatwx as part of -gnatg (warn on redundant parens) | |
26461 | Allow optional = after -gnatm | |
26462 | (Scan_Front_End_Switches): The -gnatp switch sets All_Checks, but no | |
26463 | longer sets Elaboration_Checks. | |
26464 | Code to set warning mode moved to Sem_Warn | |
26465 | so that it can be shared by pragma processing. | |
26466 | ||
26467 | * s-mastop-tru64.adb (Pop_Frame): Remove redundant parentheses in if | |
26468 | statement. | |
26469 | ||
9e81dbc7 | 26470 | * s-taprop-solaris.adb: |
5de923eb AC |
26471 | Change some <= to =, to avoid new warning |
26472 | ||
9e81dbc7 | 26473 | * a-exexda.adb, prj-proc.adb: |
5de923eb AC |
26474 | Fix obvious typo (Num_Tracebacks compared <= 0 instead of < 0) |
26475 | Fix obvious typo (Total_Errors_Detected <= 0 should be = 0) | |
26476 | ||
26477 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
26478 | ||
26479 | * exp_vfpt.adb: Handle /= case | |
26480 | (Expand_Vax_Conversion): Properly recognize Conversion_OK flag | |
26481 | so that we do not get duplicate scaling for fixed point conversions. | |
26482 | ||
26483 | * s-vaflop.ads, s-vaflop.adb: (Ne_F): New function | |
26484 | ||
26485 | 2005-11-14 Matthew Gingell <gingell@adacore.com> | |
26486 | ||
9e81dbc7 | 26487 | * system-lynxos-ppc.ads, system-lynxos-x86.ads: |
5de923eb AC |
26488 | Increase default priority on Lynx from 15 to 17, and meet the Ada |
26489 | requirement that Default_Priority be ((Priority'First + | |
26490 | Priority'Last) / 2) by increasing the range of Interrupt_Priority. | |
26491 | ||
26492 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
26493 | ||
26494 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, | |
26495 | mlib-tgt-hpux.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb, | |
26496 | mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, | |
26497 | mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb, | |
26498 | mlib-tgt-darwin.adb, mlib-tgt.adb, mlib-tgt.ads, | |
26499 | mlib-tgt-lynxos.adb (DLL_Prefix): New function | |
26500 | ||
26501 | 2005-11-14 Doug Rupp <rupp@adacore.com> | |
26502 | ||
26503 | * system-vms.ads, system-vms_64.ads: ADA$GNAT: New exported object in | |
26504 | private part. | |
26505 | ||
26506 | 2005-11-14 Arnaud Charlet <charlet@adacore.com> | |
26507 | ||
26508 | * s-traces-default.adb, s-trafor-default.ads, | |
26509 | s-tratas-default.adb: Fix compilation errors. | |
26510 | ||
26511 | 2005-11-14 Jose Ruiz <ruiz@adacore.com> | |
26512 | ||
26513 | * s-taprop-posix.adb (Initialize_Lock): Destroy mutex attribute before | |
26514 | raising the exception so the memory used is freed. | |
26515 | ||
26516 | 2005-11-14 Arnaud Charlet <charlet@adacore.com> | |
26517 | ||
26518 | * adaint.h, adaint.c (__gnat_is_cross_compiler): New constant. | |
26519 | (Gnat_Install_Locks, __gnatlib_install_locks): Removed, no longer used. | |
26520 | (convert_address): Update comments and list of platforms using this. | |
26521 | ||
26522 | * s-tasini.adb (Gnat_Install_Locks, __gnatlib_install_locks): Removed, | |
26523 | no longer used. | |
26524 | ||
26525 | 2005-11-14 Pascal Obry <obry@adacore.com> | |
26526 | Vincent Celier <celier@adacore.com> | |
26527 | ||
26528 | * gnatdll.adb (Parse_Command_Line): Remove redundant use of | |
26529 | GNAT.Command_Line. | |
26530 | ||
26531 | * memroot.adb: Remove redundant with/use clause on | |
26532 | System.Storage_Elements. | |
26533 | ||
26534 | 2005-11-14 Arnaud Charlet <charlet@adacore.com> | |
26535 | ||
26536 | * a-except.adb (Zero_Cost_Exceptions): Removed, no longer used. | |
26537 | (builtin_longjmp, Process_Raise_Exceeption): Move setjmp/longjmp | |
26538 | related code to a-exexpr.adb | |
26539 | (Save_Occurrence_And_Private): Move GCC EH related code to | |
26540 | a-exexpr-gcc.adb | |
26541 | (Raise_Current_Excep): Add new variable Id with pragma | |
6f7f72f9 | 26542 | volatile, to ensure that the variable lives on stack. |
5de923eb AC |
26543 | |
26544 | * a-exexpr-gcc.adb, raise-gcc.c: New file. | |
26545 | ||
26546 | * a-exexpr.adb (builtin_longjmp, Propagate_Exception): Moved here code | |
26547 | from a-except.adb. | |
26548 | Move GCC EH related code to a-exexpr-gcc.adb | |
26549 | ||
26550 | * Makefile.in: Add or update g-soccon LIBGNAT pairs for Linux/PPC and | |
26551 | 64-bit Solaris | |
26552 | Split the Linux version of g-soccon into separate variants for 32 and 64 | |
26553 | bit platforms. | |
26554 | (gnatlib): Use $(AR_FOR_TARGET) and $(RANLIB_FOR_TARGET) | |
26555 | vice $(AR) and $(RANLIB). Remove use of host variable $(RANLIB_FLAGS). | |
26556 | install-gnatlib: Use $(RANLIB_FOR_TARGET) vice $(RANLIB). Remove use | |
26557 | of host variable $(RANLIB_FLAGS). | |
26558 | (alpha64-dec-*vms*): Fix translations for 64 bit compiler. | |
26559 | Code clean up: remove unused/obsolete targets. | |
26560 | (EH_MECHANISM): New variable introduced to differenciate between the | |
26561 | two EH mechanisms statically. | |
26562 | (gnatlib-zcx, gnatlib-sjlj): Force EH_MECHANISM manually. | |
26563 | (LIBGNAT_OBJS): Add raise-gcc.o | |
26564 | (LIBGNAT_TARGET_PAIRS for ppc-vxworks): Use an specialized version of | |
26565 | s-osinte.adb, s-tpopsp.adb, and system.ads for the run time that | |
26566 | supports VxWorks 6 RTPs. | |
26567 | (EXTRA_GNATRTL_NONTASKING_OBJS for ppc-vxworks): Remove the use of | |
26568 | i-vxworks and i-vxwoio from the run time that supports VxWorks 6 RTPs. | |
26569 | ||
26570 | * raise.c: Move all GCC EH-related routines to raise-gcc.c | |
26571 | ||
26572 | 2005-11-14 Jose Ruiz <ruiz@adacore.com> | |
26573 | ||
26574 | * s-tassta.adb (Create_Task): Move the code in charge of resetting the | |
26575 | deferral level, when abort is not allowed, to a later stage (the | |
26576 | Task_Wrapper). | |
26577 | (Task_Wrapper): If Abort is not allowed, reset the deferral level since | |
26578 | it will not get changed by the generated code. It was previously done | |
26579 | in Create_Task. | |
26580 | ||
26581 | 2005-11-14 Thomas Quinot <quinot@adacore.com> | |
26582 | Olivier Hainque <hainque@adacore.com> | |
26583 | Eric Botcazou <ebotcazou@adacore.com> | |
26584 | ||
26585 | * decl.c: | |
26586 | Factor common code to build a storage type for an unconstrained object | |
26587 | from a fat or thin pointer type and a constrained object type. | |
26588 | (annotate_value): Handle BIT_AND_EXPR. | |
26589 | (annotate_rep): Don't restrict the back annotation of inherited | |
26590 | components to the type_annotate_only case. | |
26591 | (gnat_to_gnu_entity) <E_Array_Type>: Do not invoke create_type_decl if | |
26592 | we are not defining the type. | |
26593 | <E_Record_Type>: Likewise. | |
26594 | (gnat_to_gnu_entity) <object, renaming>: Adjust comments and structure | |
26595 | to get advantage of the new maybe_stabilize_reference interface, to | |
26596 | ensure that what we reference is indeed stabilized instead of relying | |
26597 | on assumptions on what the stabilizer does. | |
26598 | (gnat_to_gnu_entity) <E_Incomplete_Type>: If the entity is an incomplete | |
26599 | type imported through a limited_with clause, use its non-limited view. | |
26600 | (Has_Stdcall_Convention): New macro, to centralize the Windows vs others | |
26601 | differentiation. | |
26602 | (gnat_to_gnu_entity): Use Has_Stdcall_Convention instead of a spread mix | |
26603 | of #if sections + explicit comparisons of convention identifiers. | |
26604 | (gnat_to_gnu_entity) <E_Variable>: Decrement force_global if necessary | |
26605 | before early-returning for certain types when code generation is | |
26606 | disabled. | |
26607 | (gnat_to_gnu_entity) <object>: Adjust comment attached to the | |
26608 | nullification of gnu_expr we do for objects with address clause and | |
26609 | that we are not defining. | |
26610 | (elaborate_expression_1): Do not create constants when creating | |
26611 | variables needed by the debug info: the dwarf2 writer considers that | |
26612 | CONST_DECLs is used only to represent enumeration constants, and emits | |
26613 | nothing for them. | |
26614 | (gnat_to_gnu_entity) <object>: When turning a non-definition of an | |
26615 | object with an address clause into an indirect reference, drop the | |
26616 | initializing expression. | |
26617 | Include "expr.h". | |
26618 | (STACK_CHECK_BUILTIN): Delete. | |
26619 | (STACK_CHECK_PROBE_INTERVAL): Likewise. | |
26620 | (STACK_CHECK_MAX_FRAME_SIZE): Likewise. | |
26621 | (STACK_CHECK_MAX_VAR_SIZE): Likewise. | |
26622 | (gnat_to_gnu_entity): If gnat_entity is a renaming, do not mark the tree | |
26623 | corresponding to the renamed object as ignored for debugging purposes. | |
26624 | ||
26625 | * trans.c (tree_transform, case N_Attribute_Reference, case Attr_Size & | |
26626 | related): For a prefix that is a dereference of a fat or thin pointer, | |
26627 | if there is an actual subtype provided by the front-end, use that | |
26628 | subtype to build an actual type with bounds template. | |
26629 | (tree_transform, case N_Free_Statement): If an Actual_Designated_Subtype | |
26630 | is provided by the front-end, use that subtype to compute the size of | |
26631 | the deallocated object. | |
26632 | (gnat_to_gnu): When adding a statement into an elaboration procedure, | |
26633 | check for a potential violation of a No_Elaboration_Code restriction. | |
26634 | (maybe_stabilize_reference): New function, like gnat_stabilize_reference | |
26635 | with extra arguments to control whether to recurse through non-values | |
26636 | and to let the caller know if the stabilization has succeeded. | |
26637 | (gnat_stabilize_reference): Now a simple wrapper around | |
26638 | maybe_stabilize, for common uses without restriction on lvalues and | |
26639 | without need to check for the success indication. | |
26640 | (gnat_to_gnu, call_to_gnu): Adjust calls to gnat_stabilize_reference, to | |
26641 | pass false instead of 0 as the FORCE argument which is a bool. | |
26642 | (Identifier_to_gnu): Remove checks ensuring that an renamed object | |
26643 | attached to a renaming pointer has been properly stabilized, as no such | |
26644 | object is attached otherwise. | |
26645 | (call_to_gnu): Invoke create_var_decl to create the temporary when the | |
26646 | function uses the "target pointer" return mechanism. | |
26647 | Reinstate conversion of the actual to the type of the formal | |
26648 | parameter before any other specific treatment based on the passing | |
26649 | mechanism. This turns out to be necessary in order for PLACEHOLDER | |
26650 | substitution to work properly when the latter type is unconstrained. | |
26651 | ||
26652 | * gigi.h (build_unc_object_type_from_ptr): New subprogram, factoring a | |
26653 | common pattern. | |
26654 | (maybe_stabilize_reference): New function, like gnat_stabilize_reference | |
26655 | with extra arguments to control whether to recurse through non-values | |
26656 | and to let the caller know if the stabilization has succeeded. | |
26657 | ||
26658 | * utils2.c (gnat_build_constructor): Only sort the fields for possible | |
26659 | static output of record constructor if all the components are constant. | |
26660 | (gnat_build_constructor): For a record type, sort the list of field | |
26661 | initializers in increasing bit position order. | |
26662 | Factor common code to build a storage type for an unconstrained object | |
26663 | from a fat or thin pointer type and a constrained object type. | |
26664 | (build_unary_op) <ADDR_EXPR>: Always recurse down conversions between | |
26665 | types variants, and process special cases of VIEW_CONVERT expressions | |
26666 | as their NOP_EXPR counterpart to ensure we get to the | |
26667 | CORRESPONDING_VARs associated with CONST_DECls. | |
26668 | (build_binary_op) <MODIFY_EXPR>: Do not strip VIEW_CONVERT_EXPRs | |
26669 | on the right-hand side. | |
26670 | ||
26671 | * utils.c (build_unc_object_type_from_ptr): New subprogram, factoring | |
26672 | a common pattern. | |
26673 | (convert) <VIEW_CONVERT_EXPR>: Return the inner operand directly if we | |
26674 | are converting back to its original type. | |
26675 | (convert) <JM input>: Fallthrough regular conversion code instead of | |
26676 | extracting the object if converting to a type variant. | |
26677 | (create_var_decl): When a variable has an initializer requiring code | |
26678 | generation and we are at the top level, check for a potential violation | |
26679 | of a No_Elaboration_Code restriction. | |
26680 | (create_var_decl): call expand_decl for CONST_DECLs, to set MODE, ALIGN | |
26681 | SIZE and SIZE_UNIT which we need for later back-annotations. | |
26682 | * utils.c: (convert) <STRING_CST>: Remove obsolete code. | |
26683 | <VIEW_CONVERT_EXPR>: Do not lift the conversion if the target type | |
26684 | is an unchecked union. | |
26685 | (pushdecl): Set DECL_NO_STATIC_CHAIN on imported nested functions. | |
26686 | (convert) <VIEW_CONVERT_EXPR>: When the types have the same | |
26687 | main variant, just replace the VIEW_CONVERT_EXPR. | |
26688 | <UNION_TYPE>: Revert 2005-03-02 change. | |
26689 | ||
26690 | * repinfo.h, repinfo.ads: Add tcode for BIT_AND_EXPR. | |
26691 | ||
26692 | * repinfo.adb (Print_Expr, Rep_Value): Handle Bit_And_Expressions. | |
26693 | ||
26694 | 2005-11-14 Matthew Heaney <heaney@adacore.com> | |
26695 | ||
9e81dbc7 AS |
26696 | * a-crbtgo.ads, a-crbtgo.adb, a-coorse.ads, a-coorse.adb, a-convec.ads, |
26697 | a-convec.adb, a-coinve.ads, a-coinve.adb, a-cohama.ads, a-cohama.adb, | |
26698 | a-ciorse.ads, a-ciorse.adb, a-cihama.ads, a-cihama.adb, a-cidlli.ads, | |
26699 | a-cidlli.adb, a-cdlili.ads, a-cdlili.adb, a-coormu.adb, a-ciormu.adb, | |
26700 | a-cihase.adb, a-cihase.ads, a-cohase.adb, a-cohase.ads, a-ciorma.ads, | |
26701 | a-coorma.ads, a-ciormu.ads, a-coormu.ads, a-ciorma.adb, a-coorma.adb: | |
5de923eb AC |
26702 | Compiles against the spec for ordered maps described in sections |
26703 | A.18.6 of the most recent (August 2005) AI-302 draft. | |
26704 | ||
26705 | 2005-11-14 Olivier Hainque <hainque@adacore.com> | |
26706 | ||
26707 | * cuintp.c (UI_To_gnu): Use a proper type for intermediate computations | |
26708 | to ensure bias adjustments take place when need be and to prevent | |
26709 | occurrences of intermediate overflows. | |
26710 | ||
26711 | 2005-11-14 Matthew Gingell <gingell@adacore.com> | |
26712 | Olivier Hainque <hainque@adacore.com> | |
26713 | ||
26714 | * tb-gcc.c (trace_callback): Work around problem with _Unwind_GetIP on | |
26715 | ia64 HP-UX. | |
26716 | ||
26717 | * tracebak.c (ia64 configuration): Enable _Unwind_Backtrace driven | |
26718 | tracebacks on ia64 HP-UX and provide explanatory comment. | |
26719 | Enable backtraces on ia64 GNU/Linux. | |
26720 | (x86 configuration): Bump FRAME_LEVEL to 1 to ensure we retrieve a real | |
26721 | base pointer from builtin_frame_address. Adjust BASE_SKIP accordingly. | |
26722 | ||
26723 | 2005-11-14 Hristian Kirtchev <kirtchev@adacore.com> | |
26724 | Javier Miranda <miranda@adacore.com> | |
26725 | ||
26726 | * rtsfind.ads, exp_util.adb, exp_util.ads, exp_disp.adb, exp_disp.ads, | |
26727 | exp_ch7.adb, sem_ch9.adb, snames.adb, snames.ads, | |
26728 | exp_ch9.adb, exp_ch9.ads, exp_ch6.adb, exp_ch3.adb, exp_ch3.ads, | |
26729 | einfo.ads, einfo.adb: Complete support for Ada 2005 interfaces. | |
26730 | ||
26731 | * a-tags.ads, a-tags.adb: Major rewrite and additions to implement | |
26732 | properly new Ada 2005 interfaces (AI-345) and add run-time checks (via | |
26733 | assertions). | |
26734 | ||
26735 | * exp_dbug.ads, exp_dbug.adb (Get_Secondary_DT_External_Name): New | |
26736 | subprogram that generates the external name associated with a | |
26737 | secondary dispatch table. | |
26738 | (Get_Secondary_DT_External_Name): New subprogram that generates the | |
26739 | external name associated with a secondary dispatch table. | |
26740 | ||
26741 | 2005-11-14 Emmanuel Briot <briot@adacore.com> | |
26742 | ||
26743 | * xref_lib.adb (Parse_Identifier_Info): It is possible for an entity | |
26744 | line in the ALI file to include both an instantiation reference, and a | |
26745 | returned value. | |
26746 | ||
26747 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
26748 | ||
26749 | * clean.adb (Check_Project): Look for Ada code in extending project, | |
26750 | even if Ada is not specified as a language. | |
26751 | Use new function DLL_Prefix for DLL_Name | |
26752 | (Clean_Interface_Copy_Directory): New procedure | |
26753 | (Clean_Library_Directory): New procedure | |
26754 | (Clean_Directory): Remove procedure, no longer used | |
26755 | (Clean_Project): Do not delete any file in an externally built project | |
26756 | ||
26757 | * prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Add the object | |
26758 | directory of an extending project, even when there are no Ada source | |
26759 | present. | |
26760 | (Ada_Objects_Path.Add): Add Library_ALI_Dir, not Library_Dir to the path | |
26761 | (Set_Ada_Paths.Add.Recursive_Add): Ditto | |
26762 | ||
26763 | * mlib-prj.adb (Check_Library): For all library projects, get the | |
26764 | library file timestamp. | |
26765 | (Build_Library): Copy ALI files in Library_ALI_Dir, not in Library_Dir | |
26766 | (Build_Library): Use new function DLL_Prefix for the DLL_Name | |
26767 | (Clean): Remove procedure, no longer used | |
26768 | (Ultimate_Extension_Of): New function | |
26769 | (Build_Library): When cleaning the library directory, only remove an | |
26770 | existing library file and any ALI file of a source of the project. | |
26771 | When cleaning the interface copy directory, remove any source that | |
26772 | could be a source of the project. | |
26773 | ||
26774 | * prj.ads, prj.adb (Project_Empty): Add values of new components | |
26775 | Library_TS and All_Imported_Projects. | |
26776 | (Project_Empty): Add values for new components of Project_Data: | |
26777 | Library_ALI_Dir and Display_Library_ALI_Dir | |
26778 | ||
26779 | * prj-attr.adb: New project level attribute name Library_ALI_Dir | |
26780 | ||
26781 | * prj-nmsc.adb (Check_Library_Attributes): Take into account new | |
26782 | attribute Library_ALI_Dir. | |
26783 | (Check_Library_Attributes): The library directory cannot be the same as | |
26784 | any source directory of the project tree. | |
26785 | (Check_Stand_Alone_Library): The interface copy directory cannot be | |
26786 | the same as any source directory of the project tree. | |
26787 | ||
26788 | * mlib.adb: Use Prj.Com.Fail, instead of Osint.Fail directly, to delete | |
26789 | all temporary files. | |
26790 | ||
26791 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
26792 | Ed Schonberg <schonberg@adacore.com> | |
26793 | ||
26794 | * sem_elab.adb: Change name Is_Package to Is_Package_Or_Generic_Package | |
26795 | (Check_Elab_Call): A call within a protected body is never an | |
26796 | elaboration call, and does not require checking. | |
26797 | (Same_Elaboration_Scope): Take into account protected types for both | |
26798 | entities. | |
26799 | (Activate_Elaborate_All_Desirable): New procedure | |
26800 | ||
26801 | * ali.ads, ali.adb: Implement new AD/ED for Elaborate_All/Elaborate | |
26802 | desirable | |
26803 | ||
26804 | * binde.adb: Implement new AD/ED for Elaborate_All/Elaborate desirable | |
26805 | (Elab_Error_Msg): Use -da to include internal unit links, not -de. | |
26806 | ||
9e81dbc7 | 26807 | * lib-writ.ads, lib-writ.adb: |
5de923eb AC |
26808 | Implement new AD/ED for Elaborate_All/Elaborate desirable |
26809 | Use new Elaborate_All_Desirable flag in N_With_Clause node | |
26810 | ||
26811 | * sinfo.ads, sinfo.adb (Actual_Designated_Subtype): New attribute for | |
26812 | N_Free_Statement nodes. | |
26813 | Define new class N_Subprogram_Instantiation | |
26814 | Add Elaborate_Desirable flag to N_With_Clause node | |
26815 | Add N_Delay_Statement (covering two kinds of delay) | |
26816 | ||
26817 | * debug.adb: Introduce d.f flag for compiler | |
26818 | Add -da switch for binder | |
26819 | ||
26820 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
26821 | Cyrille Comar <comar@adacore.com> | |
26822 | ||
26823 | * exp_aggr.adb (Build_Record_Aggr_Code): Do not create master entity | |
26824 | for task component, in the case of a limited aggregate. The enclosed | |
26825 | object declaration will create it earlier. Otherwise, in the case of a | |
26826 | nested aggregate, the object may appear in the wrong scope. | |
26827 | (Convert_Aggr_In_Object_Decl): Create a transient scope when needed. | |
26828 | (Gen_Assign): If the component being assigned is an array type and the | |
26829 | expression is itself an aggregate, wrap the assignment in a block to | |
26830 | force finalization actions on the temporary created for each row of the | |
26831 | enclosing object. | |
26832 | (Build_Record_Aggr_Code): Significant rewrite insuring that ctrl | |
26833 | structures are initialized after all discriminants are set so that | |
26834 | they can be accessed even when their offset is dynamic. | |
26835 | ||
26836 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
26837 | Hristian Kirtchev <kirtchev@adacore.com> | |
26838 | ||
26839 | * sem_attr.adb: Implement Machine_Rounding attribute | |
26840 | (Analyze_Access_Attribute): The access attribute may appear within an | |
26841 | aggregate that has been expanded into a loop. | |
26842 | (Check_Task_Prefix): Add semantic check for attribute 'Callable and | |
26843 | 'Terminated whenever the prefix is of a task interface class-wide type. | |
26844 | (Analyze_Attribute): Add semantic check for attribute 'Identity whenever | |
26845 | the prefix is of a task interface class-wide type. | |
26846 | ||
26847 | * s-vaflop-vms-alpha.adb: Valid_D, Valid_F, Valid_G: Make Val constant | |
26848 | to avoid warnings. | |
26849 | ||
26850 | * s-fatgen.ads, s-fatgen.adb (Machine_Rounding): New function | |
26851 | Remove pragma Inline for [Unaligned_]Valid. | |
26852 | Add comments that Valid routines do not work for Vax_Float | |
26853 | ||
26854 | * exp_attr.adb: Implement Machine_Rounding attribute | |
26855 | ||
26856 | * snames.h: Add entry for Machine_Rounding attribute | |
26857 | ||
26858 | 2005-11-14 Javier Miranda <miranda@adacore.com> | |
26859 | Robert Dewar <dewar@adacore.com> | |
26860 | Hristian Kirtchev <kirtchev@adacore.com> | |
26861 | ||
26862 | * exp_attr.adb (Expand_N_Attribute_Reference, cases of Attribute_Size | |
26863 | and related): For a prefix that is an explicit dereference of an | |
26864 | access to unconstrained packed array type, annotate the dereference | |
26865 | with an actual subtype so GIGI can make a correct size computation. | |
26866 | (Expand_N_Attribute_Reference): In case of 'Unchecked_Access and | |
26867 | 'Unrestricted_Access, if the designated type is an interface we | |
26868 | add a type conversion to force the displacement of the pointer | |
26869 | to the secondary dispatch table. | |
26870 | Use Universal_Real instead of Long_Long_Float when we need a high | |
26871 | precision float type for the generated code (prevents gratuitous | |
26872 | Vax_Float stuff when pragma Float_Representation (Vax_Float) used) | |
26873 | (Expand_N_Attribute_Reference): Add support for attribute 'Callable and | |
26874 | 'Terminated for task interface class-wide objects. Generate a call to | |
26875 | the predefined dispatching routine used to retrieve the _task_id from | |
26876 | a task corresponding record. | |
26877 | (Expand_Fpt_Attribute): Major change to properly handle Vax_Float | |
26878 | ||
26879 | * sem_disp.adb: Change name Is_Package to Is_Package_Or_Generic_Package | |
26880 | (Check_Dispatching_Operation): Protect the frontend againts | |
26881 | previously detected errors. | |
26882 | ||
26883 | * Makefile.rtl: Add new instantiations of system.fat_gen | |
26884 | ||
9e81dbc7 | 26885 | * s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads: |
5de923eb AC |
26886 | Change name of instantiated package for better consistency |
26887 | with newly added system.fat_gen instantiations. | |
26888 | ||
26889 | * s-filofl.ads, s-fishfl.ads, s-fvadfl.ads, s-fvaffl.ads, | |
26890 | s-fvagfl.ads: New files. | |
26891 | ||
26892 | 2005-11-14 Cyrille Comar <comar@adacore.com> | |
26893 | Thomas Quinot <quinot@adacore.com> | |
26894 | ||
26895 | * exp_ch5.adb (Expand_N_Assignment_Statement, Tagged_Case): For an | |
26896 | assignment of a value of a tagged type that has been rewritten to a | |
26897 | block statement, it is known by construction that no checks are | |
26898 | necessary for the statements within the block: analyze it with checks | |
26899 | suppressed. | |
26900 | (Expand_N_If_Statement): When killing a dead then-branch in an | |
26901 | if-statement that has elsif_parts, recompute the Current_Value node | |
26902 | for any entity whose value is known from the condition of the first | |
26903 | elsif_part. | |
26904 | (Expand_N_Return_Statement): When returning a mutable record, convert | |
26905 | the return value into its actual subtype in order to help the backend | |
26906 | to return the actual size instead of the maximum. This is another | |
26907 | aftermath of not returning mutable records on the sec-stack anymore. | |
26908 | ||
26909 | * sem_ch5.ads, sem_ch5.adb (Analyze_Iteration_Scheme): Minor change to | |
26910 | handling of error msg for suspicious reverse range iteration. | |
26911 | (Check_Possible_Current_Value_Condition): Move declaration from body to | |
26912 | spec, to allow this subprogram to be called from exp_ch5. | |
26913 | ||
26914 | 2005-11-14 Thomas Quinot <quinot@adacore.com> | |
26915 | ||
26916 | * exp_dist.adb (Append_Array_Traversal): Modify constrained case to | |
26917 | generate a set of nested array aggregates instead of a single flat | |
26918 | aggregate for multi-dimensional arrays. | |
26919 | ||
26920 | 2005-11-14 Pascal Obry <obry@adacore.com> | |
26921 | ||
26922 | * expect.c (__gnat_kill) [Win32]: Fix implementation, the pid returned | |
26923 | by spawnve is a process handle, no need to convert. Add a parameter | |
26924 | close to control wether the process handle must be closed. | |
26925 | (__gnat_waitpid): Fix implementation, the pid returned by spawnve is | |
26926 | a process handle, not need to convert. | |
26927 | (__gnat_kill) [*]: Add dummy parameter close to match the Win32 spec. | |
26928 | ||
26929 | * g-expect.adb: (Kill): Document the new close parameter. | |
26930 | (Close): Do not release the process handle in the kill there as | |
26931 | waitpid() is using it. | |
26932 | (Send_Signal): Release the process handle. | |
26933 | ||
26934 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
26935 | ||
26936 | * exp_fixd.adb: Use Universal_Real instead of Long_Long_Float when we | |
26937 | need a high precision float type for the generated code (prevents | |
26938 | gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) | |
26939 | used). | |
26940 | ||
26941 | * exp_imgv.adb: Use Universal_Real instead of Long_Long_Float when we | |
26942 | need a high precision float type for the generated code (prevents | |
26943 | gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float) | |
26944 | used). | |
26945 | (Expand_Width_Attribute): In configurable run-time, the attribute is not | |
26946 | allowed on non-static enumeration subtypes. Force a load error to emit | |
26947 | the correct diagnostic. | |
26948 | ||
26949 | 2005-11-14 Thomas Quinot <quinot@adacore.com> | |
26950 | Robert Dewar <dewar@adacore.com> | |
26951 | Ed Schonberg <schonberg@adacore.com> | |
26952 | ||
26953 | * exp_intr.adb (Expand_Unc_Deallocation): If GIGI needs an actual | |
26954 | subtype to compute the size of the designated object at run-time, | |
26955 | create such a subtype and store it in the Actual_Designated_Subtype | |
26956 | attribute of the N_Free_Statement. | |
26957 | Generate itype for classwide designated object in both cases of | |
26958 | user-specified storage pool: specific and class-wide, not only in the | |
26959 | specific case. | |
26960 | Raise CE when trying to set a not null access type object to null. | |
26961 | (Expand_Dispatching_Constructor_Call): Retrieve subprogram actual with | |
26962 | an explicit loop, because freeze nodes make its position variable. | |
26963 | ||
26964 | * sem_intr.adb (Check_Intrinsic_Call): Given warning for freeing not | |
26965 | null object. | |
26966 | ||
26967 | 2005-11-14 Javier Miranda <miranda@adacore.com> | |
26968 | ||
26969 | * exp_strm.adb (Build_Stream_Attr_Profile, Build_Stream_Function, | |
26970 | Build_Stream_Procedure): Add the null-excluding attribute to the first | |
26971 | formal. | |
26972 | This has no semantic meaning under Ada95 mode but it is a | |
26973 | requirement under Ada05 mode. | |
26974 | ||
26975 | * par-ch3.adb (P_Access_Definition): Addition of warning message if | |
26976 | the null exclusion is used under Ada95 mode | |
26977 | (P_Null_Exclusion): The qualifier has no semantic meaning in Ada 95. | |
26978 | (P_Access_Definition): Remove assertion that forbids the use of | |
26979 | the null-exclusion feature in Ada95. | |
26980 | ||
26981 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
26982 | ||
26983 | * impunit.adb: Exclude container helper units not intended for use by | |
26984 | users. | |
26985 | ||
26986 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
26987 | ||
26988 | * freeze.adb (Freeze_Entity): For an access formal that is an access | |
26989 | to subprogram, freeze the anonymous subprogram type at the same time, | |
26990 | to prevent later freezing in the wrong scope, such as the enclosing | |
26991 | subprogram body. | |
26992 | (Freeze_Entity): Freeze the equivalent_type of an access_to_protected_ | |
26993 | subprogram whenever available. | |
26994 | ||
26995 | 2005-11-14 Arnaud Charlet <charlet@adacore.com> | |
26996 | ||
26997 | PR ada/23732 | |
26998 | * gnatvsn.ads (Library_Version): Bump to 4.1 | |
26999 | ||
27000 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27001 | ||
27002 | * g-debpoo.adb (Set_Valid): Use Integer_Address instead of | |
27003 | Storage_Offset to avoid wrap around causing invalid results. | |
27004 | ||
27005 | 2005-11-14 Pascal Obry <obry@adacore.com> | |
27006 | ||
27007 | * gnatbind.adb (Is_Cross_Compiler): New function returning True for | |
27008 | cross-compiler. | |
27009 | (Scan_Bind_Arg): Fail with an error message if -M option is used | |
27010 | on a native compiler. | |
27011 | ||
27012 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27013 | Vincent Celier <celier@adacore.com> | |
27014 | ||
27015 | * gprep.adb: Implement -C switch to scan comments | |
27016 | ||
27017 | * scng.adb: Scan comment symbol separately if Replace_In_Comments set | |
27018 | ||
27019 | * scans.ads: Comment updates (including new use of Tok_Comment in | |
27020 | preprocessing) | |
27021 | ||
27022 | * opt.ads: Add documentation for flags that are used by gprmake, | |
27023 | currently and in the next version of gprmake. | |
27024 | (Verbosity_Level): New variable | |
27025 | Add Replace_In_Comments switch | |
27026 | ||
27027 | * vms_data.ads: Add VMS equivalent for new gnatmake switches -vl, -vm | |
27028 | and -vm. | |
27029 | Add /REPLACE_IN_COMMENTS for gnatprep -C switch | |
27030 | ||
27031 | 2005-11-14 Arnaud Charlet <charlet@adacore.com> | |
27032 | ||
27033 | * g-regpat.adb (Fail): raise Expression_Error including the diagnostic | |
27034 | message, friendlier. | |
27035 | ||
27036 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27037 | ||
27038 | * g-spitbo.adb: (Hash): Rotate by 3 instead of 1 | |
27039 | ||
27040 | 2005-11-14 Doug Rupp <rupp@adacore.com> | |
27041 | ||
27042 | * init.c [VMS]: Don't install __gnat_error_handler if DBG$TDBG defined. | |
27043 | ||
27044 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27045 | ||
27046 | * interfac.ads: Change declarations of IEEE float types so that we no | |
27047 | longer need a separate version of this package for VMS. | |
27048 | ||
27049 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
27050 | ||
27051 | * lib-xref.adb (Generate_Definition, Generate_Reference): Treat the | |
27052 | internal entity created for the declaration of a child subprogram body | |
27053 | with no spec as coming from source, to generate proper cross-reference | |
27054 | information. | |
27055 | ||
27056 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27057 | ||
27058 | * make.adb (Compile_Sources): Change verbose message to minimum | |
27059 | verbosity level High for "is in an Ada library", "is a read-only | |
27060 | library" and "is an internal library", | |
27061 | (Create_Binder_Mapping_File): Path name of ALI file for library project | |
27062 | must include the library directory, not the object directory. | |
27063 | (Scan_Make_Arg): Make sure that Switch.M.Scan_Make_Switches is called | |
27064 | for new switches -vl, -vm and -vh. | |
27065 | (Verbose_Msg): Add new defaulted parameter Minimum_Verbosity | |
27066 | (Check): Use minimum verbosity Medium for some Verbose_Msg calls | |
27067 | (Compile_Sources): Do not attempt to compile if an ALI file is missing | |
27068 | in a project that is externally built. | |
27069 | (Compute_All_Imported_Projects): New procedure | |
27070 | (Gnatmake): Check if importing libraries should be regenerated because | |
27071 | at least an imported library is more recent. | |
27072 | (Initialize): For each project compute the list of the projects it | |
27073 | imports directly or indirectly. | |
27074 | (Add_Library_Search_Dir): New procedure, used in place of | |
27075 | Add_Lib_Search_Dir in procedure Scan_Make_Arg so that absolute paths are | |
27076 | put in the search paths. | |
27077 | (Add_Source_Search_Dir): New procedure, used in place of | |
27078 | Add_Src_Search_Dir in procedure Scan_Make_Arg so that absolute paths are | |
27079 | put in the search paths. | |
27080 | (Mark_Directory): Resolve the absolute path the directory before marking | |
27081 | it. | |
27082 | ||
27083 | * switch-m.adb (Scan_Make_Switches): Replace "raise Bad_Switch;" with | |
27084 | call to new procedure Bad_Switch. Call Scan_Pos with new parameter | |
27085 | Switch. Do not handle any exception. | |
27086 | (Scan_Make_Switches): Increment Ptr for new switches -vl, -vm and -vh | |
27087 | so that the switch is recognized as valid. | |
27088 | (Scan_Make_Switches): Implement new switches -vl, -vm and -vh. | |
27089 | ||
27090 | 2005-11-14 GNAT Script <nobody@adacore.com> | |
27091 | ||
27092 | * Make-lang.in: Makefile automatically updated | |
27093 | ||
27094 | 2005-11-14 Pascal Obry <obry@adacore.com> | |
27095 | ||
27096 | * mdll.adb (Build_Reloc_DLL): Fix parameter handling when a map file is | |
27097 | used. | |
27098 | (Ada_Build_Reloc_DLL): Fix parameter handling when a map file is used. | |
27099 | In both cases the last argument was dropped. | |
27100 | ||
27101 | 2005-11-14 Eric Botcazou <ebotcazou@adacore.com> | |
27102 | ||
27103 | * namet.h: (Column_Numbe): New type. | |
27104 | (Get_Column_Number): Define to sinput__get_column_number. | |
27105 | (Instantiation): Define to sinput__instantiation. | |
27106 | (Get_Column_Number): Declare. | |
27107 | (Instantiation): Likewise. | |
27108 | ||
27109 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27110 | ||
27111 | * par-ch10.adb (P_Compilation_Unit): Add defenses against junk unit | |
27112 | syntax, which could cause compiler hangs. | |
27113 | ||
27114 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27115 | ||
27116 | * prj-ext.adb: Take into account new environment variable | |
27117 | GPR_PROJECT_PATH. Warn if both GPR_PROJECT_PATH and ADA_PROJECT_PATH | |
27118 | are defined. | |
27119 | (Prj.Ext elaboration): For each directory in the ADA_PROJECT_PATH, | |
27120 | normalize its path name, making it absolute and resolving symbolic | |
27121 | links, and replace the original if resolved path is different. | |
27122 | ||
27123 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27124 | ||
27125 | * prj-part.adb (Create_Virtual_Extending_Project): Put virtual project | |
27126 | into Prj.Tree.Tree_Private_Part.Projects_Htable for GPS. | |
27127 | ||
27128 | 2005-11-14 Emmanuel Briot <briot@adacore.com> | |
27129 | ||
27130 | * prj-pp.adb (Print): Do not output the with statement if the | |
27131 | associated name is empty, which happens for virtual extending projects. | |
27132 | (Print): Preserve the "extends all" attribute when printing the project. | |
27133 | ||
27134 | * prj-tree.ads (String_Value_Of): Add comment about returned value for | |
27135 | a virtual extending project. | |
27136 | ||
27137 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
27138 | ||
27139 | * sem_aggr.adb (Resolve_Aggregate): An others choice is legal on the | |
27140 | rhs of an assignment even if the type is unconstrained, when the | |
27141 | context is non-expanding. | |
27142 | In an inlined body, if the context type is private, | |
27143 | resolve with its full view, which must be a composite type. | |
27144 | ||
27145 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27146 | Ed Schonberg <schonberg@adacore.com> | |
27147 | ||
27148 | * sem_ch10.adb: Change name Is_Package to Is_Package_Or_Generic_Package | |
27149 | Do not give obsolescent warning on with of subprogram (since we | |
27150 | diagnose calls) | |
27151 | (Analyze_With_Clause): Add test for obsolescent package | |
27152 | (Install_Context_Clauses): If the unit is the body of a child unit, do | |
27153 | not install twice the private declarations of the parents, to prevent | |
27154 | circular lists of Use_Clauses in a parent. | |
27155 | (Implicit_With_On_Parent): Do add duplicate with_clause on parent when | |
27156 | compiling body of child unit. | |
27157 | Use new class N_Subprogram_Instantiation | |
27158 | (Expand_With_Clause): If this is a private with_clause for a child unit, | |
27159 | appearing in the context of a package declaration, then the implicit | |
27160 | with_clauses generated for parent units are private as well. | |
27161 | (License_Check): Do not generate message if with'ed unit is internal | |
27162 | ||
27163 | 2005-11-14 Gary Dismukes <dismukes@adacore.com> | |
27164 | Ed Schonberg <schonberg@adacore.com> | |
27165 | Thomas Quinot <quinot@adacore.com> | |
27166 | ||
27167 | * sem_ch12.ads, sem_ch12.adb (Map_Entities): Exclude entities whose | |
27168 | names are internal, because they will not have a corresponding partner | |
27169 | in the actual package. | |
27170 | (Analyze_Formal_Package): Move the setting of the formal package spec's | |
27171 | Generic_Parent field so that it occurs prior to analyzing the package, | |
27172 | to allow proper operation of Install_Parent_Private_Declarations. | |
27173 | (Analyze_Package_Instantiation): Set the instantiated package entity's | |
27174 | Package_Instantiation field. | |
27175 | (Get_Package_Instantiation_Node): Move declaration to package spec. | |
27176 | Retrieve the N_Package_Instantiation node when the Package_Instantiation | |
27177 | field is present. | |
27178 | (Check_Generic_Child_Unit): Within an inlined call, the only possible | |
27179 | instantiation is Unchecked_Conversion, for which no parents are needed. | |
27180 | (Inline_Instance_Body): Deinstall and record the use_clauses for all | |
27181 | parent scopes of a scope being removed prior to inlining an instance | |
27182 | body. | |
27183 | (Analyze_Package_Instantiation): Do not perform front-end inlining when | |
27184 | the current context is itself an instance within a non-instance child | |
27185 | unit, to prevent scope stack errors. | |
27186 | (Save_References): If the node is an aggregate that is an actual in a | |
27187 | call, rewrite as a qualified expression to preserve some type | |
27188 | information, to resolve possible ambiguities in the instance. | |
27189 | (Instance_Parent_Unit): New global variable to record the ultimate | |
27190 | parent unit associated with a generic child unit instance (associated | |
27191 | with the existing Parent_Unit_Visible flag). | |
27192 | (type Instance_Env): New component Instance_Parent_Unit for stacking | |
27193 | parents recorded in the global Instance_Parent_Unit. | |
27194 | (Init_Env): Save value of Instance_Parent_Unit in the Instance_Env | |
27195 | stack. | |
27196 | (Install_Spec): Save the parent unit entity in Instance_Parent_Unit when | |
27197 | it's not a top-level unit, and only do this if Instance_Parent_Unit is | |
27198 | not already set. Replace test of Is_Child_Unit with test of parent's | |
27199 | scope against package Standard. Add comments and a ??? comment. | |
27200 | (Remove_Parent): Revise condition for resetting Is_Immediately_Visible | |
27201 | on a child instance parent to test that the parent equals | |
27202 | Instance_Parent rather than simply checking that the unit is not a | |
27203 | child unit. | |
27204 | (Restore_Env): Restore value of Instance_Parent_Unit from Instance_Env. | |
27205 | (Validate_Derived_Interface_Type_Instance): Verify that all ancestors of | |
27206 | a formal interface are ancestors of the corresponding actual. | |
27207 | (Validate_Formal_Interface_Type): Additional legality checks. | |
27208 | (Analyze_Formal_Derived_Interface_Type): New procedure to handle formal | |
27209 | interface types with ancestors. | |
27210 | (Analyze_Formal_Package): If formal is a renaming, use renamed entity | |
27211 | to diagnose attempts to use generic within its own declaration. | |
27212 | ||
27213 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
27214 | Javier Miranda <miranda@adacore.com> | |
27215 | ||
27216 | * sem_ch3.ads, sem_ch3.adb (Build_Discriminal): Add link to original | |
27217 | discriminant. | |
27218 | (Build_Private_Derived_Type): The entity of the created full view of the | |
27219 | derived type does not come from source. If after installing the private | |
27220 | declarations of the parent scope the parent is still private, use its | |
27221 | full view to construct the full declaration of the derived type. | |
27222 | (Build_Derived_Record_Type): Relax the condition that controls the | |
27223 | execution of the check that verifies that the partial view and | |
27224 | the full view agree in the set of implemented interfaces. In | |
27225 | addition, this test now only takes into account the progenitors. | |
27226 | (Derive_Interface_Subprograms): No need to derive subprograms | |
27227 | of ancestors that are interfaces. | |
27228 | (Derive_Subprograms): Remove formal No_Predefined_Prims and the | |
27229 | associated code. | |
27230 | Change name Is_Package to Is_Package_Or_Generic_Package | |
27231 | (Complete_Subprograms_Derivation): Handle the case in which the full | |
27232 | view is a transitive derivation of the ancestor of the partial view. | |
27233 | (Process_Full_View): Rename local subprogram Find_Interface_In_ | |
27234 | Descendant to Find_Ancestor_Interface to leave the code more clear. | |
27235 | Remove wrong code that avoids the generation of an error message | |
27236 | when the immediate ancestor of the partial view is an interface. | |
27237 | In addition some minor reorganization of the code has been done to | |
27238 | leave it more clear. | |
27239 | (Analyze_Type_Declaration): If type has previous incomplete tagged | |
27240 | partial view, inherit properly its primitive operations. | |
27241 | (Collect_Interfaces): Make public, for analysis of formal | |
27242 | interfaces. | |
27243 | (Analyze_Interface_Declaration): New procedure for use for regular and | |
27244 | formal interface declarations. | |
27245 | (Build_Derived_Record_Type): Add support for private types to the code | |
27246 | that checks if a tagged type implements abstract interfaces. | |
27247 | (Check_Aliased_Component_Type): The test applies in the spec of an | |
27248 | instance as well. | |
27249 | (Access_Type_Declaration): Clean up declaration of malformed type | |
27250 | declared as an access to its own classwide type, to prevent cascaded | |
27251 | crash. | |
27252 | (Collect_Interfaces): For private extensions and for derived task types | |
27253 | and derived protected types, the parent may be an interface that must | |
27254 | be included in the interface list. | |
27255 | (Access_Definition): If the designated type is an interface that may | |
27256 | contain tasks, create Master_Id for it before analyzing the expression | |
27257 | of the declaration, which may be an allocator. | |
27258 | (Record_Type_Declaration): Set properly the interface kind, for use | |
27259 | in allocators, the creation of master id's for task interfaces, etc. | |
27260 | ||
27261 | 2005-11-14 Javier Miranda <miranda@adacore.com> | |
27262 | Ed Schonberg <schonberg@adacore.com> | |
27263 | ||
27264 | * sem_ch6.adb (Check_Conformance): The null-exclusion feature can be | |
27265 | omitted in case of stream attribute subprograms. | |
27266 | (Check_Inline_Pragma): Handle Inline and Inline_Always pragmas that | |
27267 | appear immediately after a subprogram body, when there is no previous | |
27268 | subprogram declaration. | |
27269 | Change name Is_Package to Is_Package_Or_Generic_Package | |
27270 | (Process_Formals): A non null qualifier on a non null named access | |
27271 | type is not an error, and is a warning only if Redundant_Constructs | |
27272 | are flagged. | |
27273 | ||
27274 | 2005-11-14 Gary Dismukes <dismukes@adacore.com> | |
27275 | Ed Schonberg <schonberg@adacore.com> | |
27276 | ||
27277 | * sem_ch7.adb (Install_Parent_Private_Declarations): New procedure | |
27278 | nested within Analyze_Package_Specification to install the private | |
27279 | declarations and use clauses within each of the parent units of a | |
27280 | package instance of a generic child package. | |
27281 | (Analyze_Package_Specification): When entering a private part of a | |
27282 | package associated with a generic instance or formal package, the | |
27283 | private declarations of the parent must be installed (by calling new | |
27284 | procedure Install_Parent_Private_Declarations). | |
27285 | Change name Is_Package to Is_Package_Or_Generic_Package | |
27286 | (Preserve_Full_Attributes): For a synchronized type, the corresponding | |
27287 | record is absent in a generic context, which does not indicate a | |
27288 | compiler error. | |
27289 | ||
27290 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
27291 | ||
27292 | * sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic context, do | |
27293 | not try to rewrite a renamed stream attribute, because the operations | |
27294 | on the type may not have been generated. | |
27295 | Handle properly a renaming_as_body generated for a stream operation | |
27296 | whose default is abstract because the object type itself is abstract. | |
27297 | (Find_Type): If the type is incomplete and appears as the prefix of a | |
27298 | 'Class reference, it is tagged, and its list of primitive operations | |
27299 | must be initialized properly. | |
27300 | (Chain_Use_Clauses): When chaining the use clauses that appear in the | |
27301 | private declaration of a parent unit, prior to compiling the private | |
27302 | part of a child unit, find on the scope stack the proper parent entity | |
27303 | on which to link the use clause. | |
27304 | (Note_Redundant_Use): Emit a warning when a redundant use clause is | |
27305 | detected. | |
27306 | (Analyze_Object_Renaming): An attribute reference is not a legal object | |
27307 | if it is not a function call. | |
27308 | ||
27309 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27310 | Ed Schonberg <schonberg@adacore.com> | |
27311 | ||
27312 | * sem_eval.adb: Implement d.f flag | |
27313 | (Subtype_Statically_Match): A generic actual type has unknown | |
27314 | discriminants when the corresponding actual has a similar partial view. | |
27315 | If the routine is called to validate the signature of an inherited | |
27316 | operation in a child instance, the generic actual matches the full view, | |
27317 | ||
27318 | 2005-11-14 Hristian Kirtchev <kirtchev@adacore.com> | |
27319 | Ed Schonberg <schonberg@adacore.com> | |
27320 | Robert Dewar <dewar@adacore.com> | |
27321 | Thomas Quinot <quinot@adacore.com> | |
27322 | ||
27323 | * sem_res.adb (Resolve_Call): Provide a better error message whenever | |
27324 | a procedure call is used as a select statement trigger and is not an | |
27325 | entry renaming or a primitive of a limited interface. | |
27326 | (Valid_Conversion): If the operand has a single interpretation do not | |
27327 | remove address operations. | |
27328 | (Check_Infinite_Recursion): Skip freeze nodes when looking for a raise | |
27329 | statement to inhibit warning. | |
27330 | (Resolve_Unary_Op): Do not produce a warning when | |
27331 | processing an expression of the form -(A mod B) | |
27332 | Use Universal_Real instead of Long_Long_Float when we need a high | |
27333 | precision float type for the generated code (prevents gratuitous | |
27334 | Vax_Float stuff when pragma Float_Representation (Vax_Float) used) | |
27335 | (Resolve_Concatenation_Arg): Improve error message when argument is an | |
27336 | ambiguous call to a function that returns an array. | |
27337 | (Make_Call_Into_Operator, Operand_Type_In_Scope): Do not check that | |
27338 | there is an implicit operator in the given scope if we are within an | |
27339 | instance: legality check has been performed on the generic. | |
27340 | (Resolve_Unary_Op): Apply warnings checks on argument of Abs operator | |
27341 | after resolving operand, to avoid false warnings on overloaded calls. | |
27342 | ||
27343 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
27344 | Javier Miranda <miranda@adacore.com> | |
27345 | ||
27346 | PR ada/15604 | |
5de923eb AC |
27347 | * sem_type.adb (Covers): In an inlined body, a composite type matches |
27348 | a private type whose full view is a composite type. | |
27349 | (Interface_Present_In_Ancestor): Protect the frontend against | |
27350 | previously detected errors to ensure that its compilation | |
27351 | with assertions enabled gives the same output that its | |
27352 | compilation without assertions. | |
27353 | (Interface_Present_In_Ancestor): Add support for private types. | |
27354 | Change name In_Actual to In_Generic_Actual (clean up) | |
27355 | (Disambiguate): New predicate In_Actual, to recognize expressions that | |
27356 | appear in the renaming declaration generated for generic actuals, and | |
27357 | which must be resolved in the outer context. | |
27358 | ||
27359 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27360 | Thomas Quinot <quinot@adacore.com> | |
27361 | Hristian Kirtchev <kirtchev@adacore.com> | |
27362 | Ed Schonberg <schonberg@adacore.com> | |
27363 | ||
27364 | * sem_util.ads, sem_util.adb: Change name Is_Package to | |
27365 | Is_Package_Or_Generic_Package. | |
27366 | (Check_Obsolescent): New procedure. | |
27367 | (Set_Is_Public): Remove obsolete junk test. | |
27368 | (Set_Public_Status): Do not set Is_Public on an object whose declaration | |
27369 | occurs within a handled_sequence_of_statemets. | |
27370 | (Is_Controlling_Limited_Procedure): Factor some of the logic, account | |
27371 | for a parameterless procedure. | |
27372 | (Enter_Name): Recognize renaming declarations created for private | |
27373 | component of a protected type within protected operations, so that | |
27374 | the source name of the component can be used in the debugger. | |
27375 | ||
27376 | 2005-11-14 Ed Schonberg <schonberg@adacore.com> | |
27377 | Robert Dewar <dewar@adacore.com> | |
27378 | ||
27379 | * sem_warn.ads, sem_warn.adb (Publicly_Referenceable): Generic formals | |
27380 | of a generic subprogram are not visible outside the body. | |
27381 | (Set_Warning_Switch): New procedure (code to set warning mode moved | |
27382 | here from Switch.C so that it can be shared by pragma processing. | |
27383 | (Check_References): Special case warning for non-modified non-imported | |
27384 | volatile objects. | |
27385 | * par-prag.adb: Modify processing of pragma Warnings to accomodate new | |
27386 | form with a string literal argument | |
27387 | ||
27388 | 2005-11-14 Javier Miranda <miranda@adacore.com> | |
27389 | ||
27390 | * s-finroo.ads, s-finroo.adb (Read): Addition of "not null" to the | |
27391 | anonymous access. | |
27392 | (Write): Addition of "not null" to the anonymous access. | |
27393 | (Read): Addition of "not null" to the anonymous access. | |
27394 | (Write): Addition of "not null" to the anonymous access. | |
27395 | ||
27396 | * s-strxdr.adb, s-stratt.ads, s-stratt.adb (I_AD, I_AS, I_B, I_C, I_F, | |
27397 | I_I, I_LF, I_LI, I_LLF, I_LLI, I_LLU, I_LU, I_SF, I_SI, I_SSI, I_SSU, | |
27398 | I_SU, I_U, I_WC): Addition of "not null" to the anonymous access. | |
27399 | (W_AD, W_AS, W_B, W_C, W_F, W_I, W_LF, W_LI, W_LLF, W_LLI, W_LLU, | |
27400 | W_LU, W_SF, W_SI, W_SSI, W_SSU, W_SU, W_U, W_WC): Addition of | |
27401 | "not null" to the anonymous access. | |
27402 | ||
27403 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27404 | ||
27405 | * s-stoele.adb: Fix code for Address mod Storage_Offset for negative | |
27406 | offset values | |
27407 | ||
27408 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27409 | ||
27410 | * switch.adb (Bad_Switch): New procedure | |
27411 | (Scan_Nat, Scan_Pos): Directly call Osint.Fail with the appropriate | |
27412 | message when in error. | |
27413 | ||
27414 | * switch.ads (Bad_Switch, Bad_Switch_Value, Missing_Switch_Value, | |
27415 | Too_Many_Output_Files): Remove declarations, no longer used. | |
27416 | (Scan_Nat): New parameter Switch | |
27417 | (Scan_Pos): Ditto | |
27418 | (Bad_Switch): New procedure | |
27419 | ||
27420 | * switch-b.adb (Scan_Binder_Switches): Replace "raise Bad_Switch;" | |
27421 | with call to new procedure Bad_Switch. Call Scan_Pos and Scan_Natwith | |
27422 | new parameter Switch. Replace "raise Too_Many_Output_Files;" with call | |
27423 | to Osint.Fail. Do not handle any exception. | |
27424 | ||
27425 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27426 | ||
27427 | * tempdir.adb (Tempdir): Do not use environment variable TMPDIR if it | |
27428 | designates a non existent directory. | |
27429 | ||
27430 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27431 | ||
27432 | * xgnatugn.adb: Replace invalid membership test by 'Valid | |
27433 | ||
27434 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27435 | ||
27436 | * makegpr.adb (Gprmake): Do not attempt to build the global archive if | |
27437 | there is no object directory. | |
27438 | ||
27439 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27440 | ||
27441 | * usage.adb: Minor adjustment to output format, use nn instead of nnn | |
27442 | (so that -gnateInnn does not run into next column) | |
27443 | ||
27444 | 2005-11-14 Ed Falis <falis@adacore.com> | |
27445 | ||
27446 | * s-bitops.adb (Bits_Array): corrected comment: "unconstrained" => | |
27447 | "constrained" | |
27448 | ||
27449 | 2005-11-14 Cyrille Comar <comar@adacore.com> | |
27450 | ||
27451 | * s-chepoo.ads: Add comments on Dereference. | |
27452 | Remove unnecessary inherited abstract primitives. | |
27453 | Cosmetic cleanup. | |
27454 | ||
27455 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27456 | ||
27457 | * sem_cat.ads (Validate_Access_Type_Declaration): Remove declaration | |
27458 | node parameter, not needed, since it is available as Declaration_Node. | |
27459 | ||
27460 | 2005-11-14 Geert Bosch <bosch@adacore.com> | |
27461 | ||
27462 | * s-exnllf.adb (Exn_LLF): Fix comment to be more precise and | |
27463 | grammatically correct. | |
27464 | ||
27465 | 2005-11-14 Vincent Celier <celier@adacore.com> | |
27466 | ||
27467 | * s-fileio.ads: Correct spelling error in comment | |
27468 | ||
27469 | 2005-11-14 Cyrille Comar <comar@adacore.com> | |
27470 | Robert Dewar <dewar@adacore.com> | |
27471 | Vincent Celier <celier@adacore.com> | |
27472 | Ben Brosgol <brosgol@adacore.com> | |
27473 | Jose Ruiz <ruiz@adacore.com> | |
27474 | Pascal Obry <obry@adacore.com> | |
27475 | ||
9e81dbc7 | 27476 | * gnat_ugn.texi: |
5de923eb AC |
27477 | Document that -fstack-check is needed for strict compliance with the |
27478 | Ada 95 Reference Manual. | |
27479 | Correct reference to VAX systems to meet HP guidelines | |
27480 | Add documentation for new gnatmake switches -vl, -vm and -vh | |
27481 | Replace DEC Ada by HP Ada | |
27482 | Replace DIGITAL by HP | |
27483 | Remove empty section on tools in compatibility section | |
27484 | Clarify the Windows convention semantics. | |
27485 | Document the Win32 calling convention. | |
27486 | The Stdcall, Win32 and DLL convention are synonyms. | |
27487 | Add a note in -gnatR description about zero size record components | |
27488 | Note on new >= and <= warnings for -gnatwc | |
27489 | Document that equal sign after -gnatm is optional. | |
27490 | Note that strip is working fine on DLL built with a Library | |
27491 | Project. The restriction apply only to DLL built with gnatdll. | |
27492 | Update section about the way to debug a DLL. | |
27493 | Update information about the DLL convention. | |
27494 | Document -C switch for gnatprep | |
27495 | Document new attribute Library_ALI_Dir | |
27496 | Update elaboration doc to include implicit Elaborate pragmas now | |
27497 | generated for subprogram instantiations. | |
27498 | Document limitation on executable names that include spaces for --GCC, | |
27499 | --GNATBIND, and --GNATLINK switches. | |
27500 | Document that -w causes -gnatws to be added at start of gcc switches | |
27501 | ||
27502 | * gnat_rm.texi: Document that -mieee is needed for generating infinite | |
27503 | and NaN values in case of overflow on machines that are not fully | |
27504 | compliant with the IEEE floating-point standard. | |
27505 | Create a section describing the set of compiler options needed for | |
27506 | strict compliance with the Ada 95 Reference Manual. | |
27507 | Add documentation for pragma Obsolescent applied to a package | |
27508 | Clarify potential issues of mixed language programs related to the | |
27509 | I/O buffering enabling in the elaboration of the GNAT runtime. | |
27510 | Add extra documentation for pragma Restrictions (No_Elaboration_Code) | |
27511 | This documentation only patch adds extra documentsion for pragma | |
27512 | Restrictions (No_Elaboration_Code), explaining why it is not possible | |
27513 | to document this restriction in terms of allowed source constructs. | |
27514 | Document string literal form of pragma Warnings | |
27515 | Document new attribute Library_ALI_Dir | |
27516 | Add documentation on stable attributes in project files that was missing | |
27517 | ||
27518 | * gnat-style.texi: Indicate that paragraphs within a single comment | |
27519 | should be separated by empty comment lines | |
27520 | ||
27521 | * ug_words: Added replacements for -gnat95 and -gnat05 (/95 and | |
27522 | /05 respectively) | |
27523 | ||
27524 | * bindusg.adb: Minor cleanup, put -m before -M for consistency | |
27525 | ||
27526 | 2005-11-14 Robert Dewar <dewar@adacore.com> | |
27527 | ||
27528 | * a-secain.adb, a-slcain.adb, a-shcain.adb, a-chtgke.ads, a-chtgke.adb, | |
27529 | a-stwiha.adb, a-strhas.adb, a-chzla1.ads, a-chzla9.ads, a-stzbou.adb, | |
27530 | a-stzbou.ads, a-stzfix.adb, a-stzhas.adb, a-stzmap.adb, a-stzmap.ads, | |
27531 | a-stzsea.adb, a-stzsea.ads, a-stzsup.adb, a-stzsup.ads, a-stzunb.adb, | |
27532 | a-stzunb.ads, a-szuzha.adb, a-szuzha.ads, a-szuzti.adb, a-szuzti.ads, | |
27533 | a-ztcoau.adb, a-ztcoau.ads, a-ztcoio.adb, a-ztcstr.adb, a-ztcstr.ads, | |
27534 | a-ztdeau.adb, a-ztdeau.ads, a-ztdeio.adb, a-ztdeio.ads, a-ztedit.adb, | |
27535 | a-ztedit.ads, a-ztenau.ads, a-ztenio.adb, a-ztenio.ads, a-ztexio.adb, | |
27536 | a-ztexio.ads, a-ztfiio.adb, a-ztfiio.ads, a-ztflau.adb, a-ztflau.ads, | |
27537 | a-ztflio.adb, a-ztflio.ads, a-ztgeau.adb, a-ztgeau.ads, a-ztinau.adb, | |
27538 | a-ztinau.ads, a-ztinio.adb, a-ztmoau.ads, a-ztmoio.adb, a-ztmoio.ads, | |
27539 | a-zttest.adb, g-enblsp-vms-alpha.adb, g-enblsp-vms-alpha.adb, | |
27540 | g-enblsp-vms-ia64.adb, g-enblsp-vms-ia64.adb, system-linux-hppa.ads, | |
27541 | a-chacon.adb, a-chacon.ads, a-wichun.adb, a-wichun.ads, a-zchuni.adb, | |
27542 | a-zchuni.ads, g-trasym-vms-alpha.adb, g-trasym-vms-ia64.adb, | |
27543 | system-hpux-ia64.ads, g-soccon-unixware.ads, g-soliop-unixware.ads, | |
27544 | g-soccon-interix.ads, g-soliop-solaris.ads, g-eacodu-vms.adb, | |
27545 | g-expect-vms.adb, g-socthi-vms.adb, g-soliop-mingw.ads, | |
27546 | a-intnam-unixware.ads, a-intnam-lynxos.ads, a-intnam-tru64.ads, | |
27547 | a-intnam-aix.ads, a-intnam-linux.ads, a-intnam-linux.ads, | |
27548 | a-intnam-dummy.ads, a-numaux-libc-x86.ads, a-intnam-interix.ads, | |
27549 | a-intnam-solaris.ads, a-calend-vms.adb, a-calend-vms.ads, | |
27550 | a-intnam-vms.ads, a-calend-mingw.adb, a-intnam-mingw.ads, | |
27551 | a-intnam-vxworks.ads, a-numaux-vxworks.ads, system-unixware.ads, | |
27552 | system-linux-ia64.ads, a-intnam-freebsd.ads, system-freebsd-x86.ads, | |
27553 | system-lynxos-ppc.ads, system-linux-x86_64.ads, a-stunha.adb, | |
27554 | a-cgaaso.ads, a-cgaaso.adb, a-chtgop.adb, a-cgcaso.adb, a-cgarso.adb, | |
27555 | a-cohata.ads, a-crbtgk.adb, a-crbltr.ads, a-coprnu.adb, a-rbtgso.adb, | |
27556 | a-intnam-darwin.ads, system-darwin-ppc.ads, gprmake.adb, makegpr.ads, | |
27557 | system-tru64.ads, system-aix.ads, system-solaris-x86.ads, | |
27558 | system-irix-o32.ads, s-interr-sigaction.adb, system-irix-n32.ads, | |
27559 | s-parame-mingw.adb, system-hpux.ads, s-traceb-hpux.adb, | |
27560 | system-linux-x86.ads, s-inmaop-dummy.adb, system-os2.ads, | |
27561 | system-interix.ads, system-solaris-sparc.ads, | |
27562 | system-solaris-sparcv9.ads, s-inmaop-vms.adb, | |
27563 | s-mastop-vms.adb, expander.adb, expander.ads, s-gloloc-mingw.adb, | |
27564 | system-mingw.ads, system-vms-zcx.ads, s-osinte-fsu.adb, | |
27565 | s-traceb-mastop.adb, a-exextr.adb, a-exstat.adb, a-filico.ads, | |
27566 | a-finali.ads, a-interr.ads, a-intsig.adb, a-intsig.ads, | |
27567 | a-except.ads, a-numaux-x86.ads, a-astaco.adb, a-calend.adb, | |
27568 | a-calend.ads, a-chahan.adb, a-chahan.ads, a-chlat9.ads, | |
27569 | a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads, | |
27570 | a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads, | |
27571 | a-elchha.adb, a-decima.adb, a-decima.ads, a-diocst.ads, | |
27572 | a-direio.adb, a-direio.ads, a-excach.adb, a-excach.adb, | |
27573 | a-exctra.ads, ali-util.adb, a-ngcefu.adb, a-ngcoty.adb, | |
27574 | a-ngcoty.ads, a-nudira.adb, a-nudira.ads, a-nuflra.adb, | |
27575 | a-numaux.ads, a-reatim.ads, a-sequio.adb, a-sequio.ads, | |
27576 | a-siocst.ads, a-ssicst.ads, a-stmaco.ads, a-storio.adb, | |
27577 | a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb, | |
27578 | a-strmap.adb, a-strmap.ads, a-strsea.adb, a-strsea.ads, | |
27579 | a-strsup.adb, a-strsup.ads, a-strunb.adb, a-strunb.ads, | |
27580 | a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwima.adb, | |
27581 | a-stwima.ads, a-stwise.adb, a-stwise.ads, a-stwisu.adb, | |
27582 | a-stwisu.ads, a-stwiun.adb, a-stwiun.ads, a-suteio.adb, | |
27583 | a-suteio.ads, a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, | |
27584 | a-sytaco.adb, a-sytaco.ads, a-tasatt.adb, a-taside.adb, | |
27585 | a-taside.ads, a-teioed.adb, a-textio.adb, a-textio.ads, | |
27586 | a-ticoau.adb, a-ticoau.ads, a-ticoio.adb, a-tideau.adb, | |
27587 | a-tideio.adb, a-tienau.adb, a-tienio.adb, a-tifiio.adb, | |
27588 | a-tiflio.adb, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb, | |
27589 | a-tiinio.adb, a-timoau.adb, a-timoio.adb, a-timoio.ads, | |
27590 | a-tiocst.ads, a-titest.adb, atree.adb, a-witeio.adb, | |
27591 | a-witeio.ads, a-wtcoau.adb, a-wtcoau.ads, a-wtcoio.adb, | |
27592 | a-wtcstr.ads, a-wtdeau.adb, a-wtdeio.adb, a-wtedit.adb, | |
27593 | a-wtedit.ads, a-wtenau.adb, a-wtenio.adb, a-wtfiio.adb, | |
27594 | a-wtflio.adb, a-wtgeau.adb, a-wtinau.adb, a-wtinio.adb, | |
27595 | a-wtmoau.adb, a-wtmoio.adb, a-wttest.adb, back_end.adb, | |
27596 | bindgen.adb, butil.adb, butil.ads, checks.ads, cio.c, comperr.adb, | |
27597 | csets.ads, cstand.adb, debug.ads, elists.ads, errno.c, errout.adb, | |
27598 | errout.ads, erroutc.adb, erroutc.ads, errutil.adb, errutil.ads, | |
27599 | errutil.ads, err_vars.ads, eval_fat.adb, exp_ch11.adb, exp_ch11.ads, | |
27600 | exp_ch2.adb, exp_ch7.ads, exp_imgv.ads, exp_pakd.adb, exp_prag.adb, | |
27601 | exp_prag.ads, exp_tss.adb, exp_tss.ads, exp_vfpt.ads, fe.h, fmap.adb, | |
27602 | freeze.ads, frontend.adb, frontend.ads, g-arrspl.adb, g-arrspl.ads, | |
27603 | g-awk.adb, g-awk.ads, g-boumai.ads, g-calend.adb, g-calend.ads, | |
27604 | g-catiio.adb, g-comlin.adb, g-comlin.ads, g-comlin.ads, g-comlin.ads, | |
27605 | g-comver.adb, g-crc32.adb, g-crc32.ads, g-ctrl_c.ads, g-curexc.ads, | |
27606 | g-debpoo.ads, g-debuti.adb, g-diopit.adb, g-diopit.ads, g-dirope.adb, | |
27607 | g-dirope.ads, g-dyntab.adb, g-dyntab.ads, g-excact.adb, g-excact.ads, | |
27608 | g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.ads, g-flocon.ads, | |
27609 | g-hesorg.ads, g-io.adb, g-locfil.ads, g-md5.adb, g-md5.ads, g-md5.ads, | |
27610 | g-moreex.adb, g-signal.ads, g-signal.adb, gnatbind.ads, gnatchop.adb, | |
27611 | gnatcmd.adb, gnatfind.adb, gnatlbr.adb, gnatmake.ads, gnatmem.adb, | |
27612 | gnatprep.adb, gnatprep.ads, gnatsym.adb, gnatxref.adb, g-os_lib.adb, | |
27613 | g-os_lib.ads, g-pehage.adb, g-pehage.ads, gprep.ads, g-regexp.adb, | |
27614 | g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.ads, g-semaph.adb, | |
27615 | g-socthi.adb, g-soliop.ads, g-spipat.adb, g-spipat.ads, g-sptabo.ads, | |
27616 | g-sptain.ads, g-sptavs.ads, g-string.ads, g-tasloc.adb, g-tasloc.ads, | |
27617 | g-trasym.adb, g-trasym.ads, i-fortra.adb, i-fortra.ads, inline.adb, | |
27618 | layout.adb, live.adb, make.ads, makeutl.ads, makeutl.adb, mdll-fil.adb, | |
27619 | mdll-fil.ads, mdll-utl.ads, memroot.ads, memtrack.adb, mlib.ads, | |
27620 | mlib-fil.adb, mlib-fil.ads, mlib-prj.ads, mlib-utl.adb, mlib-utl.ads, | |
27621 | nlists.adb, nlists.ads, osint.adb, osint.ads, osint-c.adb, osint-l.adb, | |
27622 | osint-l.ads, osint-m.ads, output.adb, par.adb, par.adb, par.ads, | |
27623 | par-ch11.adb, par-ch12.adb, par-ch2.adb, par-ch4.adb, par-ch5.adb, | |
27624 | par-ch6.adb, par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb, | |
27625 | par-tchk.adb, prep.adb, prepcomp.adb, prepcomp.ads, prj-attr.ads, | |
27626 | prj-com.ads, prj-dect.adb, prj-dect.ads, prj-env.ads, prj-err.ads, | |
27627 | prj-ext.ads, prj-makr.adb, prj-makr.ads, prj-nmsc.ads, prj-pars.adb, | |
27628 | prj-pars.ads, prj-part.ads, prj-pp.ads, prj-proc.ads, prj-strt.adb, | |
27629 | prj-strt.ads, prj-tree.adb, prj-util.adb, prj-util.ads, rtsfind.adb, | |
27630 | sem.adb, sem.ads, sem_case.adb, sem_case.ads, sem_ch11.adb, | |
27631 | sem_ch4.adb, sem_ch6.ads, sem_ch7.ads, sem_dist.ads, sem_elab.ads, | |
27632 | sem_elim.ads, sem_eval.ads, sem_intr.ads, sem_maps.adb, sem_maps.ads, | |
27633 | sem_maps.ads, sem_res.ads, sem_type.ads, sfn_scan.adb, sfn_scan.ads, | |
27634 | s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads, s-inmaop.ads, sinput.adb, | |
27635 | sinput.ads, s-pack03.adb, s-pack03.ads, s-pack05.adb, s-pack05.ads, | |
27636 | s-pack06.adb, s-pack06.ads, s-pack07.adb, s-pack07.ads, s-pack09.adb, | |
27637 | s-pack09.ads, s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads, | |
27638 | s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads, s-pack14.adb, | |
27639 | s-pack14.ads, s-pack15.adb, s-pack15.ads, s-pack17.adb, s-pack17.ads, | |
27640 | s-pack18.adb, s-pack18.ads, s-pack19.adb, s-pack19.ads, s-pack20.adb, | |
27641 | s-pack20.ads, s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads, | |
27642 | s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads, s-pack25.adb, | |
27643 | s-pack25.ads, s-pack26.adb, s-pack26.ads, s-pack27.adb, s-pack27.ads, | |
27644 | s-pack28.adb, s-pack28.ads, s-pack29.adb, s-pack29.ads, s-pack30.adb, | |
27645 | s-pack30.ads, s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads, | |
27646 | s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads, s-pack36.adb, | |
27647 | s-pack36.ads, s-pack37.adb, s-pack37.ads, s-pack38.adb, s-pack38.ads, | |
27648 | s-pack39.adb, s-pack39.ads, s-pack40.adb, s-pack40.ads, s-pack41.adb, | |
27649 | s-pack41.ads, s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads, | |
27650 | s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads, s-pack46.adb, | |
27651 | s-pack46.ads, s-pack47.adb, s-pack47.ads, s-pack48.adb, s-pack48.ads, | |
27652 | s-pack49.adb, s-pack49.ads, s-pack50.adb, s-pack50.ads, s-pack51.adb, | |
27653 | s-pack51.ads, s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads, | |
27654 | s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads, s-pack56.adb, | |
27655 | s-pack56.ads, s-pack57.adb, s-pack57.ads, s-pack58.adb, s-pack58.ads, | |
27656 | s-pack59.adb, s-pack59.ads, s-pack60.adb, s-pack60.adb, s-pack60.ads, | |
27657 | s-pack61.adb, s-pack61.ads, s-pack62.adb, s-pack62.ads, s-pack63.adb, | |
27658 | s-pack63.ads, s-parint.adb, s-parint.adb, s-parint.ads, sprint.ads, | |
27659 | s-purexc.ads, s-restri.ads, s-restri.adb, s-scaval.adb, s-scaval.ads, | |
27660 | s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads, stand.ads, | |
27661 | s-tasuti.adb, s-traceb.adb, s-traceb.ads, stringt.adb, stringt.ads, | |
27662 | styleg.ads, s-valboo.adb, s-valboo.ads, s-valcha.adb, s-valcha.ads, | |
27663 | s-valdec.adb, s-valdec.ads, s-valint.adb, s-valint.ads, s-valint.ads, | |
27664 | s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads, s-valllu.adb, | |
27665 | s-valllu.ads, s-valrea.adb, s-valrea.ads, s-valuns.adb, s-valuns.ads, | |
27666 | s-valuti.adb, s-valuti.ads, s-valwch.ads, s-veboop.adb, s-veboop.ads, | |
27667 | s-vercon.adb, s-vercon.ads, s-wchcnv.adb, s-wchcnv.ads, s-wchcon.ads, | |
27668 | s-wchjis.adb, s-wchjis.ads, s-wchstw.adb, s-wchstw.adb, s-wchstw.ads, | |
27669 | s-wchwts.adb, s-wchwts.ads, s-widboo.adb, s-widboo.ads, s-widcha.adb, | |
27670 | s-widcha.ads, s-widenu.adb, s-widenu.ads, s-widlli.adb, s-widlli.ads, | |
27671 | s-widllu.adb, s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb, | |
27672 | s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, symbols.adb, symbols.ads, | |
27673 | table.ads, targparm.adb, targparm.ads, tb-alvms.c, tb-alvxw.c, | |
27674 | tbuild.adb, tree_io.ads, treepr.adb, treeprs.adt, ttypef.ads, | |
27675 | ttypes.ads, types.adb, uintp.adb, uintp.ads, uname.ads, urealp.ads, | |
27676 | usage.ads, validsw.ads, vxaddr2line.adb, widechar.adb, widechar.ads, | |
27677 | xeinfo.adb, xnmake.adb, xref_lib.ads, xr_tabls.adb, xr_tabls.ads, | |
27678 | xsinfo.adb, xtreeprs.adb, xsnames.adb, vms_conv.ads, vms_conv.adb, | |
27679 | a-dirval.ads, a-dirval.adb, a-dirval-mingw.adb, a-direct.ads, | |
27680 | a-direct.adb, indepsw.ads, prj-attr-pm.ads, system-linux-ppc.ads, | |
27681 | a-numaux-darwin.ads, a-numaux-darwin.adb, | |
27682 | a-swuwha.ads, a-stunha.ads: Minor reformatting | |
27683 | ||
e0ac6309 RD |
27684 | 2005-11-14 Robert Dewar <dewar@adacore.com> |
27685 | ||
27686 | PR ada/18434 | |
27687 | * osint-m.adb: Add pragma Elaborate_All for Osint | |
27688 | ||
f45ddfe0 EB |
27689 | 2005-11-10 Eric Botcazou <ebotcazou@adacore.com> |
27690 | ||
27691 | PR ada/23995 | |
27692 | * trans.c (call_to_gnu): Restore statement lost in translation. | |
27693 | ||
13bb031a EB |
27694 | 2005-11-08 Eric Botcazou <ebotcazou@adacore.com> |
27695 | ||
27696 | * init.c: Use the Linux-specific section for the IA-64/Linux target. | |
27697 | (__gnat_adjust_context_for_raise): Add conditional code so that the | |
27698 | IA-64 is also supported. | |
27699 | ||
72098128 JW |
27700 | 2005-11-03 James E Wilson <wilson@specifix.com> |
27701 | ||
27702 | PR ada/23427 | |
13bb031a EB |
27703 | * trans.c (gnat_to_gnu): Use TYPE_SIZE_UNIT not TYPE_SIZE in |
27704 | TREE_OVERFLOW check. | |
72098128 | 27705 | |
8fafe21d OH |
27706 | 2005-09-21 Olivier Hainque <hainque@adacore.com> |
27707 | ||
27708 | PR ada/22418 | |
27709 | * decl.c (maybe_pad_type): Use proper bitsizetype for XVZ objects, | |
27710 | as we create them to store a size in bits. | |
27711 | ||
552725e3 EB |
27712 | 2005-10-21 Eric Botcazou <ebotcazou@adacore.com> |
27713 | ||
27714 | PR ada/21937 | |
27715 | PR ada/22328 | |
27716 | PR ada/22381 | |
27717 | PR ada/22383 | |
27718 | PR ada/22419 | |
27719 | PR ada/22420 | |
27720 | * utils2.c (build_return_expr): New helper function. | |
27721 | * gigi.h (build_return_expr): Declare it. | |
27722 | * trans.c (Subprogram_Body_to_gnu): Use build_return_expr instead | |
27723 | of manually building the RETURN_EXPR tree. | |
27724 | (call_to_gnu): Pass MODIFY_EXPR through build_binary_op. | |
27725 | (gnat_to_gnu) <N_Return_Statement>: Pass MODIFY_EXPR through | |
8fafe21d | 27726 | build_binary_op for the "target pointer" case. Use build_return_expr |
552725e3 EB |
27727 | instead of manually building the RETURN_EXPR tree. |
27728 | ||
9e94c78f | 27729 | 2005-09-16 Laurent Guerby <laurent@guerby.net> |
ccdeca37 LG |
27730 | |
27731 | PR ada/23788 | |
27732 | * s-tpinop.ads: Make this unit Preelaborate. | |
27733 | ||
da8f5fd9 AJ |
27734 | 2005-09-16 Andreas Jaeger <aj@suse.de> |
27735 | ||
27736 | * socket.c: Add string.h for memcpy. | |
27737 | ||
98b40956 AC |
27738 | 2005-09-05 Arnaud Charlet <charlet@adacore.com> |
27739 | ||
27740 | * dec-io.ads, dec-io.adb: Removed, no longer used. | |
27741 | ||
27742 | 2005-09-01 Arnaud Charlet <charlet@adacore.com> | |
27743 | ||
27744 | * a-calend-mingw.adb: Add call to OS_Primitives.Initialize; | |
27745 | ||
27746 | * s-taprop-mingw.adb, s-taprop-vms.adb, s-taprop-solaris.adb, | |
27747 | s-taprop-os2.adb, s-taprop-irix-athread.adb, s-taprop-linux.adb, | |
27748 | s-taprop-hpux-dce.adb, s-taprop-irix.adb, s-taprop-tru64.adb, | |
27749 | s-taprop-lynxos.adb: Move with clauses outside Warnings Off now that | |
27750 | dependent units are Preelaborate. | |
27751 | (Initialize): Call Interrupt_Managemeent.Initialize and | |
27752 | OS_Primitives.Initialize to ensure proper initialization of this unit. | |
27753 | Remove use of System.Soft_Links | |
27754 | Make this unit Preelaborate. | |
27755 | ||
27756 | * s-stache.ads, s-taspri-vxworks.ads, s-taspri-mingw.ads, | |
27757 | s-taspri-vms.ads, s-tasinf-solaris.ads, s-taspri-os2.ads, | |
27758 | s-taspri-lynxos.ads, s-taspri-hpux-dce.ads, s-taspri-tru64.ads, | |
27759 | s-tasinf-tru64.ads, s-tasinf-irix.ads, s-tasinf-irix-athread.ads, | |
27760 | s-proinf-irix-athread.adb, s-proinf-irix-athread.ads, | |
27761 | s-tratas.ads, s-tasinf.ads: Minor reformatting. | |
27762 | Add pragma Preelaborate, since these packages are suitable for this | |
27763 | categorization. | |
27764 | Update comments. | |
27765 | ||
27766 | * s-traent-vms.ads, s-intman-dummy.adb, | |
27767 | s-taprop-dummy.adb: Make this unit Preelaborate. | |
27768 | ||
27769 | * s-osprim-vxworks.adb, s-osprim-vms.adb, s-osprim-vms.ads, | |
da8f5fd9 | 27770 | s-osprim-mingw.adb, s-intman-vxworks.ads, s-intman-vxworks.adb, |
98b40956 AC |
27771 | s-intman-vms.adb, s-intman-mingw.adb, s-intman-vms.ads, |
27772 | s-osprim-unix.adb, s-osprim-os2.adb, s-osprim-solaris.adb, | |
27773 | s-intman-solaris.adb, s-intman-irix-athread.adb, | |
27774 | s-intman-irix.adb: Mark this unit Preelaborate. | |
27775 | (Initialize): New procedure. | |
27776 | Update comments. | |
27777 | ||
27778 | * s-taspri-linux.ads: Removed. | |
27779 | ||
27780 | * s-tpopsp-solaris.adb (Initialize): Create the key in this procedure, | |
27781 | as done by other implementations (e.g. posix). | |
27782 | ||
27783 | * s-taprop.ads (Timed_Delay): Update spec since the caller now is | |
27784 | responsible for deferring abort. | |
27785 | Mark this unit Preelaborate. | |
27786 | ||
27787 | * s-taprob.adb, s-tarest.adb: Call System.Tasking.Initialize to ensure | |
27788 | proper initialization of the tasking run-time. | |
27789 | ||
27790 | * s-tasdeb.ads: Mark this unit Preelaborate. | |
27791 | (Known_Tasks): Add explicit default value to avoid elaboration code. | |
27792 | ||
27793 | * s-inmaop-vms.adb (Elaboration code): Add call to | |
27794 | Interrupt_Management.Initialize since the elaboration code depends on | |
27795 | proper initialization of this package. | |
27796 | ||
27797 | * s-intman.ads, s-inmaop-posix.adb, s-intman-posix.adb, | |
27798 | s-osprim.ads, s-taprop-posix.adb, s-taspri-posix.ads, | |
27799 | s-osprim-posix.adb: Make this unit Preelaborate. | |
27800 | ||
27801 | * a-calend.adb: Add call to OS_Primitives.Initialize | |
27802 | ||
27803 | * a-elchha.adb: Update use of Except.Id.Full_Name. | |
27804 | Minor reformatting. | |
27805 | Remove use of Ada.Exceptions.Traceback when possible, cleaner. | |
27806 | ||
27807 | * a-dynpri.adb, a-sytaco.adb, a-sytaco.ads: | |
27808 | Move with clauses outside Warnings Off now that dependent units are | |
27809 | Preelaborate. | |
27810 | Use raise xxx with "..."; Ada 2005 form. | |
27811 | ||
da8f5fd9 | 27812 | * a-taside.ads, a-taside.adb: |
98b40956 AC |
27813 | Remove some dependencies, to make it easier to make this unit truly |
27814 | Preelaborate. | |
27815 | Rewrite some code to be conformant with Preelaborate rules. | |
27816 | ||
27817 | * g-os_lib.adb: Remove non-preelaborate code so that this unit can be | |
27818 | marked Preelaborate in the future. | |
27819 | ||
27820 | * s-proinf.ads, g-string.ads, s-auxdec.ads, s-auxdec-vms_64.ads: Make | |
27821 | these units Preelaborate. | |
27822 | ||
27823 | * s-exctab.adb: Update use of Except.Id.Full_Name. | |
27824 | ||
27825 | * s-soflin.ads, s-soflin.adb: Mark this unit Preelaborate_05. | |
27826 | (Set_Exc_Stack_Addr_Soft, Get_Exc_Stack_Addr_NT, Set_Exc_Stack_Addr_NT, | |
27827 | Set_Exc_Stack_Addr): Removed, no longer used. | |
27828 | Remove reference to *Machine_State_Addr*, no longer needed. | |
27829 | ||
27830 | * s-stalib.ads: Mark this unit as Preelaborate[_05]. | |
27831 | (Exception_Data): Full_Name is now a System.Address so that this unit | |
27832 | can be made Preelaborate. | |
27833 | Clean up/simplify code thanks to Full_Name being a System.Address. | |
27834 | Remove obsolete pragma Suppress (All_Checks), no longer needed. | |
27835 | ||
da8f5fd9 | 27836 | * s-taskin.ads, s-taskin.adb: |
98b40956 AC |
27837 | Move with clauses outside Warnings Off now that dependent units are |
27838 | Preelaborate. | |
27839 | Make this unit Preelaborate. | |
27840 | (Initialize): New proceduure, replace elaboration code and makes the | |
27841 | set up of the tasking run-time cleaner. | |
27842 | (Detect_Blocking): Now a function instead of a deferred boolean, to | |
27843 | obey Preelaborate rules. | |
27844 | ||
27845 | * s-tassta.adb (Finalize_Global_Tasks): Remove Get/Set_Exc_Stack_Addr | |
27846 | soft links, no longer used. | |
27847 | ||
27848 | * s-traces.ads, s-traent.ads: Add pragma Preelaborate, since these | |
27849 | packages are suitable for this categorization. | |
27850 | ||
27851 | * s-solita.adb: Replace use of Ada.Exception by raise xxx with "..." | |
27852 | since we compile run-time sources in Ada 2005 mode. | |
27853 | (Timed_Delay_T): Call Abort_Defer/Undefer around Timed_Delay, to | |
27854 | avoid having s-taprop*.adb depend on s-soflin and to avoid code | |
27855 | duplication. | |
27856 | Remove reference to *Machine_State_Addr*, no longer needed. | |
27857 | ||
27858 | 2005-09-01 Arnaud Charlet <charlet@adacore.com> | |
27859 | ||
27860 | * s-mastop-tru64.adb, s-mastop-irix.adb, s-mastop-vms.adb | |
27861 | (Enter_Handler, Set_Signal_Machine_State): Removed, no longer used. | |
27862 | Remove reference to System.Exceptions. | |
27863 | ||
27864 | * s-mastop-x86.adb: Removed, no longer used. | |
27865 | ||
27866 | * s-traceb-mastop.adb: Adjust calls to Pop_Frame. | |
27867 | ||
27868 | * a-excach.adb: Minor reformatting. | |
27869 | ||
27870 | * a-except.ads, a-except.adb: Remove global Warnings (Off) pragma, and | |
27871 | instead fix new warnings that were hidden by this change. | |
27872 | (AAA, ZZZ): Removed, replaced by... | |
27873 | (Code_Address_For_AAA, Code_Address_For_ZZZ): ... these functions, who | |
27874 | are used instead of constants, to help make Ada.Exception truly | |
27875 | preelaborate. | |
27876 | (Rcheck_*, Raise_Constraint_Error, Raise_Program_Error, | |
27877 | Raise_Storage_Error): File is now a System.Address, to simplify code. | |
27878 | (Elab code): Removed, no longer used. | |
27879 | (Null_Occurrence): Remove Warnings Off and make this construct | |
27880 | preelaborate. | |
27881 | Remove code related to front-end zero cost exception handling, since | |
27882 | it is no longer used. | |
27883 | Remove -gnatL/-gnatZ switches. | |
27884 | ||
27885 | * a-exexda.adb (Append_Info_Exception_Name, Set_Exception_C_Msg): | |
27886 | Update use of Except.Msg. | |
27887 | ||
27888 | * gnat1drv.adb, inline.adb, bindgen.adb, debug.adb, exp_ch11.ads, | |
27889 | freeze.adb, frontend.adb, lib.adb, exp_ch11.adb: Remove code related | |
27890 | to front-end zero cost exception handling, since it is no longer used. | |
27891 | Remove -gnatL/-gnatZ switches. | |
27892 | ||
27893 | * lib-writ.ads: Minor reformatting | |
27894 | Remove doc of UX | |
27895 | ||
27896 | * Makefile.rtl: Remove references to s-except*, s-mastop-x86* | |
27897 | ||
27898 | * Make-lang.in: Remove references to s-except.ads | |
27899 | ||
27900 | * s-except.ads: Removed, no longer used. | |
27901 | ||
da8f5fd9 | 27902 | * s-mastop.ads, s-mastop.adb: |
98b40956 AC |
27903 | (Enter_Handler, Set_Signal_Machine_State): Removed, no longer used. |
27904 | Remove reference to System.Exceptions. | |
27905 | ||
27906 | * raise.h, usage.adb, targparm.adb, targparm.ads, switch-m.adb, | |
27907 | switch-b.adb: Remove code related to front-end zero cost exception | |
27908 | handling, since it is no longer used. | |
27909 | Remove -gnatL/-gnatZ switches. | |
27910 | ||
27911 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
27912 | Gary Dismukes <dismukes@adacore.com> | |
27913 | Javier Miranda <miranda@adacore.com> | |
27914 | ||
27915 | * exp_ch4.adb (Expand_N_In): Replace test of expression in its own | |
27916 | type by valid test and generate warning. | |
27917 | (Tagged_Membership): Generate call to the run-time | |
27918 | subprogram IW_Membership in case of "Iface_CW_Typ in Typ'Class" | |
27919 | Change formal name Subtype_Mark to Result_Definition in several calls to | |
27920 | Make_Function_Specification. | |
27921 | (Expand_Allocator_Expression): Add tests for suppression of the AI-344 | |
27922 | check for proper accessibility of the operand of a class-wide allocator. | |
27923 | The check can be left out if checks are suppressed or if the expression | |
27924 | has a specific tagged type whose level is known to be safe. | |
27925 | ||
27926 | * exp_ch5.adb (Expand_N_Assignment_Statement): Simplify the code that | |
27927 | generates the run-time check associated with null-excluding entities. | |
27928 | (Expand_N_Return_Statement): Add tests to determine if the accessibility | |
27929 | check on the level of the return expression of a class-wide function | |
27930 | can be elided. The check usually isn't needed if the expression has a | |
27931 | specific type (unless it's a conversion or a formal parameter). Also | |
27932 | add a test for whether accessibility checks are suppressed. Augment | |
27933 | the comments to describe the conditions for performing the check. | |
27934 | ||
27935 | 2005-09-01 Hristian Kirtchev <kirtchev@adacore.com> | |
27936 | Javier Miranda <miranda@adacore.com> | |
27937 | Gary Dismukes <dismukes@adacore.com> | |
27938 | Ed Schonberg <schonberg@adacore.com> | |
27939 | ||
27940 | * a-tags.adb (IW_Membership): Give support to | |
27941 | "Iface_CW_Typ in T'Class". For this purpose the functionality of this | |
27942 | subprogram has been extended to look for the tag in the ancestors tag | |
27943 | table. | |
27944 | Update the structure of the GNAT Dispatch Table to reflect the | |
27945 | additional two tables used in dispatching selects. | |
27946 | Introduce appropriate array types and record components in | |
27947 | Type_Specific_Data to reflect the two tables. | |
27948 | (Get_Entry_Index, Set_Entry_Index): Retrieve and set the entry index in | |
27949 | the TSD of a tag, indexed by position. | |
27950 | (Get_Prim_Op_Kind, Set_Prim_Op_Kind): Retrieve and set the primitive | |
27951 | operation kind in the TSD of a tag, indexed by position. | |
27952 | ||
27953 | * a-tags.ads: Introduce an enumeration type to capture different | |
27954 | primitive operation kinds. Define a constant reflecting the number of | |
27955 | predefined primitive operations. | |
27956 | (Get_Entry_Index, Set_Entry_Index): Set and retrieve the entry index | |
27957 | of an entry wrapper. | |
27958 | (Get_Prim_Op_Kind, Set_Prim_Op_Kind): Set and retrieve the kind of | |
27959 | callable entity of a primitive operation. | |
27960 | ||
27961 | * exp_ch3.adb (Freeze_Record_Type): Generate the declarations of the | |
27962 | primitive operations used in dispatching selects for limited | |
27963 | interfaces, limited tagged, task and protected types what implement a | |
27964 | limited interface. | |
27965 | (Freeze_Type): Generate the bodies of the primitive operations used in | |
27966 | dispatching selects for limited tagged, task and protected types that | |
27967 | implement a limited interface. Generate statements to populate the two | |
27968 | auxiliary tables used for dispatching in select statements. | |
27969 | (Freeze_Record_Type): Add call to initialize the dispatch table entries | |
27970 | associated with predefined interface primitive operations. | |
27971 | (Build_Dcheck_Function): Change Set_Subtype_Mark to | |
27972 | Set_Result_Definition. | |
27973 | (Build_Variant_Record_Equality): Change Subtype_Mark to | |
27974 | Result_Definition. | |
27975 | (Freeze_Enumeration_Type): Change Subtype_Mark to Result_Definition. | |
27976 | (Predef_Spec_Or_Body): Change Subtype_Mark to Result_Definition. | |
27977 | (Build_Assignment): Simplify the code that adds the run-time-check. | |
27978 | (Expand_N_Object_Declaration): Code cleanup. | |
27979 | ||
27980 | * exp_ch7.adb (Make_Clean): Select the appropriate type for locking | |
27981 | entries when there is a protected type that implements a limited | |
27982 | interface. | |
27983 | ||
27984 | * exp_ch9.adb: Add package Select_Expansion_Utilities that contains | |
27985 | common routines used in expansion of dispatching selects. | |
27986 | (Add_Private_Declarations): Select the appropriate protection type when | |
27987 | there is a protected type that implements a limited interface. | |
27988 | (Build_Parameter_Block): Generate a wrapped parameter block. | |
27989 | (Build_Protected_Subprogram_Body): Select the appropriate type for | |
27990 | locking entries when there is a protected type that implements a | |
27991 | limited interface. | |
27992 | (Build_Wrapper_Spec): Set the flag and wrapped entity for procedures | |
27993 | classified as entry wrappers. | |
27994 | (Expand_N_Asynchronous_Select): Add support for expansion of dispatching | |
27995 | asynchronous selects. | |
27996 | (Expand_N_Conditional_Entry_Call): Add support for expansion of | |
27997 | dispatching conditional selects. | |
27998 | (Expand_N_Protected_Type_Declaration): Select the appropriate type for | |
27999 | protection when there is a protected type that implements limited | |
28000 | interfaces. | |
28001 | (Expand_N_Timed_Entry_Call): Add support for expansion of dispatching | |
28002 | timed selects. | |
28003 | (Extract_Dispatching_Call): Extract the entity of the name of a | |
28004 | dispatching call, the object parameter, actual parameters and | |
28005 | corresponding formals. | |
28006 | (Make_Initialize_Protection): Correct logic of protection initialization | |
28007 | when there is a protected type that implements a limited interface. | |
28008 | (Parameter_Block_Pack): Populate a wrapped parameter block with the | |
28009 | values of actual parameters. | |
28010 | (Parameter_Block_Unpack): Retrieve the values from a wrapped parameter | |
28011 | block and assign them to the original actual parameters. | |
28012 | ||
28013 | * exp_ch9.ads (Subprogram_Protection_Mode): New type. | |
28014 | (Build_Protected_Sub_Specification): Change the type and name of the | |
28015 | last formal to account for the increased variety of protection modes. | |
28016 | ||
28017 | * einfo.ads, einfo.adb (Was_Hidden): New attribute. Present in all | |
28018 | entities. Used to save the value of the Is_Hidden attribute when the | |
28019 | limited-view is installed. | |
28020 | (Is_Primitive_Wrapper, Set_Is_Primitive_Wrapper): Retrieve and change | |
28021 | the attribute of procedures classified as entry wrappers. | |
28022 | (Wrapped_Entity, Set_Wrapped_Entity): Retrieve and change the wrapped | |
28023 | entity of a primitive wrapper. | |
28024 | (Write_Entity_Flags): Output the name and value of the | |
28025 | Is_Primitive_Wrapper attribute. | |
28026 | (Write_Field27_Name): Output the name and entity of the field Wrapped_ | |
28027 | Entity. | |
28028 | (Underlying_Type): If we have an incomplete entity that comes from | |
28029 | the limited view then we return the Underlying_Type of its non-limited | |
28030 | view if it is already available. | |
28031 | (Abstract_Interface_Alias): Flag applies to all subrogram kinds, | |
28032 | including operators. | |
28033 | (Write_Field26_Name): Add entry for Overridden_Operation | |
28034 | (Overridden_Operation): New attribute of functions and procedures. | |
28035 | ||
28036 | * exp_disp.ads, exp_disp.adb (Default_Prim_Op_Position): Return a | |
28037 | predefined position in the dispatch table for the primitive operations | |
28038 | used in dispatching selects. | |
28039 | (Init_Predefined_Interface_Primitives): Remove the hardcoded number of | |
28040 | predefined primitive operations and replace it with | |
28041 | Default_Prim_Op_Count. | |
28042 | (Make_Disp_Asynchronous_Select_Spec, Make_Disp_Conditional_Select_Spec, | |
28043 | Make_Disp_Get_Prim_Op_Kind_Spec, Make_Disp_Timed_Select_Spec): Update | |
28044 | the names of the generated primitive operations used in dispatching | |
28045 | selects. | |
28046 | (Init_Predefined_Interface_Primitives): No need to inherit primitives in | |
28047 | case of abstract interface types. They will be inherit by the objects | |
28048 | implementing the interface. | |
28049 | (Make_DT): There is no need to inherit the dispatch table of the | |
28050 | ancestor interface for the elaboration of abstract interface types. | |
28051 | The dispatch table will be inherited by the object implementing the | |
28052 | interface. | |
28053 | (Copy_Secondary_DTs): Add documentation. | |
28054 | (Validate_Position): Improve this static check in case of | |
28055 | aliased subprograms because aliased subprograms must have | |
28056 | the same position. | |
28057 | (Init_Predefined_Interface_Primitives): New subprogram that initializes | |
28058 | the entries associated with predefined primitives of all the secondary | |
28059 | dispatch tables. | |
28060 | (Build_Anonymous_Access_Type): Removed. | |
28061 | (Expand_Interface_Actuals): With the previous cleanup there is no need | |
28062 | to build an anonymous access type. This allows further cleanup in the | |
28063 | code generated by the expander. | |
28064 | (Expand_Interface_Conversion): If the actual is an access type then | |
28065 | build an internal function to handle the displacement. If the actual | |
28066 | is null this function returns null because no displacement is | |
28067 | required; otherwise performs a type conversion that will be | |
28068 | expanded in the code that returns the value of the displaced actual. | |
28069 | (Expand_Interface_Actuals): Avoid the generation of unnecessary type | |
28070 | conversions that have no effect in the generated code because no | |
28071 | displacement is required. Code cleanup; use local variables to | |
28072 | avoid repeated calls to the subprogram directly_designated_type(). | |
28073 | ||
28074 | * exp_util.ads, exp_util.adb (Is_Predefined_Dispatching_Operation): | |
28075 | Classify the primitive operations used in dispatching selects as | |
28076 | predefined. | |
28077 | (Implements_Limited_Interface): Determine whether some type either | |
28078 | directly implements a limited interface or extends a type that | |
28079 | implements a limited interface. | |
28080 | (Build_Task_Image_Function): Change Subtype_Mark to Result_Definition. | |
28081 | (Expand_Subtype_From_Expr): Do not build actual subtype if the | |
28082 | expression is limited. | |
28083 | (Find_Interface_Tag): Add code to handle class-wide types and | |
28084 | entities from the limited-view. | |
28085 | ||
28086 | * rtsfind.ads: Add entries in RE_Id and RE_Unit_Table for | |
28087 | Get_Entry_Index, Get_Prim_Op_Kind, POK_Function, POK_Procedure, | |
28088 | POK_Protected_Entry, POK_Protected_Function, POK_Protected_Procedure, | |
28089 | POK_Task_Entry, POK_Task_Procedure, Prim_Op_Kind, Set_Entry_Index, | |
28090 | Set_Prim_Op_Kind. | |
28091 | ||
28092 | * sem_ch9.adb (Analyze_Triggering_Alternative): Check for legal type | |
28093 | of procedure name or prefix that appears as a trigger in a triggering | |
28094 | alternative. | |
28095 | ||
28096 | * uintp.ads: Introduce constants Uint_11 and Uint_13. | |
28097 | ||
28098 | 2005-09-01 Arnaud Charlet <charlet@adacore.com> | |
28099 | ||
28100 | * s-tataat.adb, a-tasatt.adb: | |
28101 | Replace calls to Defer/Undefer_Abortion by Defer/Undefer_Abort. | |
28102 | ||
28103 | * s-tasini.ads, s-tasini.adb (Defer_Abortion, Undefer_Abortion): Moved | |
28104 | these procedures to body, and renamed Abort_Defer, Abort_Undefer. | |
28105 | (Get_Exc_Stack_Addr, Set_Exc_Stack_Addr): Removed, no | |
28106 | longer used. | |
28107 | ||
28108 | 2005-09-01 Arnaud Charlet <charlet@adacore.com> | |
28109 | Jose Ruiz <ruiz@adacore.com> | |
28110 | ||
da8f5fd9 | 28111 | * s-taprop-vxworks.adb: |
98b40956 AC |
28112 | Move with clauses outside Warnings Off now that dependent units are |
28113 | Preelaborate. | |
28114 | (Initialize): Call Interrupt_Managemeent.Initialize to ensure proper | |
28115 | initialization of this unit. | |
28116 | (Specific): Add new procedures Initialize and Delete so that this | |
28117 | package can be used for VxWorks 5.x and 6.x | |
28118 | (ATCB_Key, ATCB_Key_Address): Moved to Specific package body to hide | |
28119 | differences between VxWorks 5.x and 6.x | |
28120 | Minor reformatting. | |
28121 | (Timed_Delay): Remove calls to Defer/Undefer_Abort, now performed by | |
28122 | caller. | |
28123 | Use only Preelaborate-compatible constructs. | |
28124 | ||
28125 | * s-tpopsp-vxworks.adb (ATBC_Key, ATCB_Key_Addr): Moved from | |
28126 | Primitives.Operations. | |
28127 | (Delete, Initialize): New procedures. | |
28128 | ||
28129 | * s-osinte-vxworks.adb: Body used to handle differences between | |
28130 | VxWorks 5.x and 6.x | |
28131 | (kill, Set_Time_Slice, VX_FP_TASK): New functions. | |
28132 | ||
28133 | * s-osinte-vxworks.ads: Minor reformatting. | |
28134 | Add VxWworks 6.x specific functions (only called from VxWorks 6 files). | |
28135 | (VX_FP_TASK): Now a function, to handle differences between VxWorks 5 | |
28136 | and 6. | |
28137 | (Set_Time_Slice): New function, replacing kerneltimeSlice to share code | |
28138 | between Vxworks 5 and 6. | |
28139 | (taskLock, taskUnlock): Removeed, no longer used. | |
28140 | ||
28141 | * adaint.c: The wait.h header is not located in the sys directory on | |
28142 | VxWorks when using RTPs. | |
28143 | (__gnat_set_env_value): Use setenv instead of putenv on VxWorks when | |
28144 | using RTPs. | |
28145 | (__gnat_dup): dup is available on Vxworks when using RTPs. | |
28146 | (__gnat_dup2): dup2 is available on Vxworks when using RTPs. | |
28147 | ||
28148 | * cal.c: Use the header time.h for Vxworks 6.0 when using RTPs. | |
28149 | ||
28150 | * expect.c: The wait.h header is not located in the sys directory on | |
28151 | VxWorks when using RTPs. | |
28152 | ||
28153 | 2005-09-01 Thomas Quinot <quinot@adacore.com> | |
28154 | ||
28155 | * g-soccon-vms.adb: Renamed to g-soccon-vms.ads | |
28156 | ||
28157 | * g-soccon-vms.ads: Renamed from g-soccon-vms.adb | |
28158 | ||
28159 | * g-soccon.ads, g-soccon-tru64.ads, g-soccon-aix.ads, | |
28160 | g-soccon-darwin.ads, g-soccon-irix.ads, g-soccon-hpux.ads, | |
28161 | g-soccon-solaris.ads, g-soccon-mingw.ads, g-soccon-vxworks.ads, | |
28162 | g-soccon-freebsd.ads: Add new constants: | |
28163 | IP_MULTICAST_IF | |
28164 | SO_RCVTIMEO/SO_SNDTIMEO | |
28165 | IOV_MAX | |
28166 | ||
da8f5fd9 | 28167 | * gen-soccon.c: |
98b40956 AC |
28168 | Move all target-specific file inclusions and macro definitions to |
28169 | gsocket.h, in order to ensure that any C code in socket.c will see a | |
28170 | set of constants that is consistent with the contents of g-soccon.ads. | |
28171 | ||
28172 | * gsocket.h: Code imported from gen-soccon.c: | |
28173 | Move all target-specific file inclusions and macro definitions to | |
28174 | gsocket.h, in order to ensure that any C code in socket.c will see a set | |
28175 | of constants that is consistent with the contents of g-soccon.ads. | |
28176 | This change also makes gen-soccon self-contained (removing dependencies | |
28177 | upon GCC internal headers). | |
28178 | ||
28179 | * g-socket.adb (Send_Vector): Make calls to Writev at most IOV_MAX | |
28180 | iovecs at a time. | |
28181 | (To_Inet_Addr): Now a procedure instead of a function, more efficient. | |
28182 | ||
28183 | * socket.c: Minor reformatting. | |
28184 | ||
28185 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28186 | Thomas Quinot <quinot@adacore.com> | |
28187 | ||
28188 | * fname-sf.adb, mlib-tgt.ads, | |
28189 | back_end.adb, casing.adb, g-debpoo.adb, g-excact.adb, g-spipat.adb, | |
28190 | g-spipat.ads, g-thread.adb, lib-list.adb, makeutl.adb, mlib.adb, | |
28191 | osint.adb, par-ch10.adb, par-load.adb, prep.adb, prj.adb, prj-attr.ads, | |
28192 | prj-env.ads, prj-err.adb, prj-err.ads, prj-ext.adb, prj-ext.ads, | |
28193 | prj-makr.adb, prj-makr.ads, prj-pars.ads, prj-part.adb, prj-strt.adb, | |
28194 | prj-tree.ads, prj-util.ads, sem_dist.adb, sinput-c.ads, sinput-l.ads, | |
28195 | sinput-p.ads, styleg-c.ads, xr_tabls.adb, prj-attr-pm.ads, | |
28196 | makegpr.adb: Remove redundant use_clauses. | |
28197 | ||
28198 | 2005-09-01 Arnaud Charlet <charlet@adacore.com> | |
28199 | ||
da8f5fd9 AJ |
28200 | * s-stoele.ads, s-stopoo.ads, s-stratt.ads, s-strops.ads, s-unstyp.ads, |
28201 | s-valboo.ads, s-valcha.ads, s-valdec.ads, s-valenu.ads, s-valint.ads, | |
28202 | s-vallld.ads, s-vallli.ads, s-valllu.ads, s-valrea.ads, s-valuns.ads, | |
28203 | s-valuti.ads, s-valwch.ads, s-veboop.ads, s-vector.ads, s-vercon.ads, | |
28204 | s-wchcnv.ads, s-wchcon.ads, s-wchjis.ads, s-wchstw.ads, s-wchwts.ads, | |
28205 | s-widboo.ads, s-widcha.ads, s-widenu.ads, s-widlli.ads, s-widllu.ads, | |
28206 | s-widwch.ads, s-wwdcha.ads, s-wwdenu.ads, s-wwdwch.ads, system.ads, | |
28207 | table.ads, types.ads, system-vms_64.ads, s-crtl-vms64.ads, | |
28208 | s-addope.ads, system-darwin-ppc.ads, system-vxworks-x86.ads, | |
28209 | s-vxwork-x86.ads, system-linux-ppc.ads, i-vxwork-x86.ads, | |
28210 | a-numaux-darwin.ads, a-crbtgo.ads, a-crbtgk.ads, a-crbltr.ads, | |
28211 | a-coprnu.ads, a-convec.ads, a-contai.ads, a-coinve.ads, a-cohata.ads, | |
28212 | a-cohama.ads, a-cihama.ads, a-cidlli.ads, a-cdlili.ads, | |
28213 | a-numaux-libc-x86.ads, a-numaux-vxworks.ads, system-linux-ia64.ads, | |
28214 | system-freebsd-x86.ads, system-unixware.ads, system-lynxos-ppc.ads, | |
98b40956 | 28215 | system-lynxos-x86.ads, system-linux-x86_64.ads, system-tru64.ads, |
da8f5fd9 AJ |
28216 | s-vxwork-alpha.ads, system-aix.ads, system-vxworks-sparcv9.ads, |
28217 | system-solaris-x86.ads, system-irix-o32.ads, system-irix-n32.ads, | |
28218 | s-parame-hpux.ads, system-hpux.ads, system-vxworks-m68k.ads, | |
28219 | s-vxwork-m68k.ads, system-linux-x86.ads, system-vxworks-mips.ads, | |
28220 | s-vxwork-mips.ads, system-os2.ads, system-interix.ads, | |
28221 | s-vxwork-ppc.ads, system-solaris-sparc.ads, s-vxwork-sparcv9.ads, | |
28222 | system-solaris-sparcv9.ads, s-parame-vms.ads, system-vms.ads, | |
28223 | s-osinte-mingw.ads, system-mingw.ads, s-parame-vms-restrict.ads, | |
28224 | system-vms-zcx.ads, s-parame-ae653.ads, system-vxworks-ppc.ads, | |
28225 | s-parame-vxworks.ads, system-vxworks-alpha.ads, interfac-vms.ads, | |
28226 | a-numaux-x86.ads, a-astaco.ads, a-chahan.ads, a-charac.ads, | |
28227 | a-chlat1.ads, a-chlat9.ads, a-colire.adb, a-colire.ads, a-comlin.ads, | |
98b40956 AC |
28228 | a-cwila1.ads, a-cwila9.ads, ada.ads, a-decima.ads, a-exextr.adb, |
28229 | a-filico.ads, a-finali.ads, a-interr.ads, a-ioexce.ads, a-dynpri.ads, | |
da8f5fd9 AJ |
28230 | a-ngcefu.ads, a-ngcefu.adb, a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.ads, |
28231 | a-nudira.adb, a-nudira.ads, a-nuflra.adb, a-numaux.ads, a-numeri.ads, | |
28232 | a-reatim.adb, a-stmaco.ads, a-storio.ads, a-strbou.ads, a-stream.ads, | |
28233 | a-strfix.ads, a-string.ads, a-strmap.ads, a-strsea.ads, a-strsup.ads, | |
28234 | a-strunb.ads, a-stunau.ads, a-stwibo.ads, a-stwifi.ads, a-stwima.ads, | |
28235 | a-stwise.ads, a-stwisu.ads, a-stwiun.ads, a-swmwco.ads, a-textio.ads, | |
28236 | csets.ads, debug.ads, dec.ads, g-curexc.ads, get_targ.ads, | |
28237 | g-except.ads, system-linux-hppa.ads, a-chacon.ads, a-widcha.ads, | |
28238 | a-zchara.ads, system-hpux-ia64.ads, a-ciorma.ads, a-coorma.ads, | |
28239 | a-ciormu.ads, a-coormu.ads, a-rbtgso.ads, a-chzla1.ads, a-chzla9.ads, | |
28240 | a-stzbou.ads, a-stzfix.ads, a-stzmap.ads, a-stzsea.ads, a-stzsup.ads, | |
28241 | a-stzunb.ads, a-swunau.ads, a-szunau.ads, gnat.ads, g-regpat.ads, | |
28242 | g-speche.ads, g-spitbo.ads, g-table.ads, g-tasloc.ads, g-trasym.ads, | |
28243 | i-c.ads, i-cpoint.ads, i-cpp.ads, i-cstrin.ads, i-fortra.ads, | |
28244 | interfac.ads, i-os2err.ads, i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, | |
28245 | i-vxwork.ads, output.ads, s-arit64.ads, s-atacco.ads, s-boarop.ads, | |
28246 | s-casuti.ads, s-crtl.ads, s-exctab.ads, s-exnint.ads, s-exnllf.ads, | |
28247 | s-exnlli.ads, s-expint.ads, s-explli.ads, s-expllu.ads, s-expmod.ads, | |
28248 | s-expuns.ads, s-fatflt.ads, s-fatgen.ads, s-fatlfl.ads, s-fatllf.ads, | |
28249 | s-fatsfl.ads, s-finimp.ads, s-finroo.ads, s-fore.ads, s-geveop.ads, | |
28250 | s-htable.ads, s-imgbiu.ads, s-imgboo.ads, s-imgcha.ads, s-imgdec.ads, | |
28251 | s-imgenu.ads, s-imgint.ads, s-imgllb.ads, s-imglld.ads, s-imglli.ads, | |
28252 | s-imgllu.ads, s-imgllw.ads, s-imgrea.ads, s-imguns.ads, s-imgwch.ads, | |
28253 | s-imgwiu.ads, s-io.ads, s-maccod.ads, s-mantis.ads, s-memcop.ads, | |
28254 | s-pack03.ads, s-pack05.ads, s-pack06.ads, s-pack07.ads, s-pack09.ads, | |
28255 | s-pack10.ads, s-pack11.ads, s-pack12.ads, s-pack13.ads, s-pack14.ads, | |
28256 | s-pack15.ads, s-pack17.ads, s-pack18.ads, s-pack19.ads, s-pack20.ads, | |
28257 | s-pack21.ads, s-pack22.ads, s-pack23.ads, s-pack24.ads, s-pack25.ads, | |
28258 | s-pack26.ads, s-pack27.ads, s-pack28.ads, s-pack29.ads, s-pack30.ads, | |
28259 | s-pack31.ads, s-pack33.ads, s-pack34.ads, s-pack35.ads, s-pack36.ads, | |
28260 | s-pack37.ads, s-pack38.ads, s-pack39.ads, s-pack40.ads, s-pack41.ads, | |
28261 | s-pack42.ads, s-pack43.ads, s-pack44.ads, s-pack45.ads, s-pack46.ads, | |
28262 | s-pack47.ads, s-pack48.ads, s-pack49.ads, s-pack50.ads, s-pack51.ads, | |
28263 | s-pack52.ads, s-pack53.ads, s-pack54.ads, s-pack55.ads, s-pack56.ads, | |
28264 | s-pack57.ads, s-pack58.ads, s-pack59.ads, s-pack60.ads, s-pack61.ads, | |
28265 | s-pack62.ads, s-pack63.ads, s-parame.ads, s-pooglo.ads, s-pooloc.ads, | |
28266 | s-poosiz.ads, s-powtab.ads, s-purexc.ads, s-sopco3.ads, s-sopco4.ads, | |
98b40956 AC |
28267 | s-sopco5.ads: Minor reformatting: reindent pragma Pure/Preelaborate |
28268 | and always use the no parameter form for consistency. | |
28269 | ||
28270 | * gnat-style.texi: Document rules about Preelaborate/Pure pragmas. | |
28271 | ||
28272 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28273 | ||
28274 | * binde.adb: Minor reformatting | |
28275 | (Find_Elab_Order): Output warning if -p used with static elab order | |
28276 | ||
28277 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28278 | ||
28279 | * checks.adb (Check_Needed): New procedure, deals with removing checks | |
28280 | based on analysis of short-circuited forms. Also generates warnings for | |
28281 | improper use of non-short-circuited forms. | |
28282 | Code clean ups. | |
28283 | ||
28284 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28285 | ||
28286 | * a-ztexio.adb, a-textio.adb, a-witeio.adb: Replace bad range checks | |
28287 | with 'Valid tests. | |
28288 | ||
28289 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28290 | ||
28291 | * errout.ads, errout.adb (Fix Error_Msg_F): Fix implementation to meet | |
28292 | spec. | |
28293 | Implement new insertion char < (conditional warning) | |
28294 | * errutil.adb, erroutc.adb: Implement new insertion char < | |
28295 | (conditional warning). | |
28296 | * sem_elab.adb, prj-dect.adb, erroutc.ads, err_vars.ads | |
28297 | (Error_Msg_Warn): New variable for < insertion char. | |
28298 | * prj-nmsc.adb: Implement new errout insertion char < (conditional | |
28299 | warning). | |
28300 | (Check_For_Source): Change value of Source_Id only after the current | |
28301 | source has been dealt with. | |
28302 | ||
28303 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28304 | Doug Rupp <rupp@adacore.com> | |
28305 | ||
28306 | * exp_attr.adb: Handle vax fpt for 'Valid attribute | |
28307 | * exp_vfpt.ads, exp_vfpt.adb: (Expand_Vax_Valid): New procedure | |
28308 | * s-vaflop-vms-alpha.adb, s-vaflop.ads, s-vaflop.adb | |
28309 | (Valid_D, Valid_F, Valid_G): New functions | |
28310 | ||
28311 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28312 | Hristian Kirtchev <kirtchev@adacore.com> | |
28313 | Javier Miranda <miranda@adacore.com> | |
28314 | ||
28315 | * exp_ch6.adb (Expand_Call): If an actual is a function call rewritten | |
28316 | from object notation, the original node is unanalyzed and carries no | |
28317 | semantic information, so that accessiblity checks must be performed on | |
28318 | the type of the actual itself. | |
28319 | (Expand_N_Subprogram_Declaration): Change last actual parameter for | |
28320 | compatibility with Build_Protected_Sub_Specification. | |
28321 | (Check_Overriding_Inherited_Interfaces): Add suport to handle | |
28322 | overloaded primitives. | |
28323 | (Register_Interface_DT_Entry): Use the new name of the formal | |
28324 | the the calls to Expand_Interface_Thunk | |
28325 | ||
28326 | * exp_dbug.ads: Augment comments on encoding of protected types to | |
28327 | include the generation of dispatching subprograms when the type | |
28328 | implements at least one interface. | |
28329 | ||
28330 | * lib.ads: Extend information in Load_Stack to include whether a given | |
28331 | load comes from a Limited_With_Clause. | |
28332 | ||
28333 | * lib-load.adb (From_Limited_With_Chain): New predicate to determine | |
28334 | whether a potential circularity is harmless, because it includes units | |
28335 | loaded through a limited_with clause. Extends previous treatment which | |
28336 | did not handle properly arbitrary combinations of limited and | |
28337 | non-limited clauses. | |
28338 | ||
28339 | 2005-09-01 Nicolas Setton <setton@adacore.com> | |
28340 | ||
28341 | * exp_dbug.adb (Get_Encoded_Name): Fixed bug that caused biaised types | |
28342 | to be encoded as typ___XBLU_lowerbound__upperbound instead of | |
28343 | typ___XB_lowerbound__upperbound. | |
28344 | ||
28345 | 2005-09-01 Thomas Quinot <quinot@adacore.com> | |
28346 | ||
28347 | * exp_dist.adb (Add_RACW_TypeCode, Add_RAS_TypeCode): Do not generate | |
28348 | dummy access formal for RACW/RAS TypeCode TSS. | |
28349 | (Build_TypeCode_Call): Do not generate dummy null access actual for | |
28350 | calls to the TypeCode TSS. | |
28351 | ||
28352 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28353 | ||
28354 | * exp_intr.adb (Expand_Source_Name): For Enclosing_Entity, generate | |
28355 | fully qualified name, to distinguish instances with the same local name. | |
28356 | ||
28357 | * g-souinf.ads (Enclosing_Entity): Document that entity name is now | |
28358 | fully qualified. | |
28359 | ||
28360 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28361 | ||
28362 | * exp_pakd.adb (Create_Packed_Array_Type): Properly handle very large | |
28363 | packed arrays. | |
28364 | ||
28365 | 2005-09-01 Jerome Lambourg <lambourg@adacore.com> | |
28366 | ||
28367 | * g-expect.adb (Non_Blocking_Spawn): Initialize the filters field to | |
28368 | (Free): New deallocation procedure for filter elements | |
28369 | (Close): Deallocate any existing filter for the concerned connection | |
28370 | ||
28371 | 2005-09-01 Laurent Pautet <pautet@adacore.com> | |
28372 | ||
28373 | * g-pehage.ads, g-pehage.adb (Select_Char_Position): When no character | |
28374 | position set is provided, we compute one in order to reduce the maximum | |
28375 | length of the keys. This computation first selects a character | |
28376 | position between 1 and the minimum length of the keys in order to | |
28377 | avoid reducing one of the keys to an empty string. | |
28378 | (Initialize, Compute): When the ratio V to K is too low, the algorithm | |
28379 | does not converge. The initialization procedure now comes with a | |
28380 | maximum number of iterations such that when exceeded, an exception is | |
28381 | raised in Compute. The user can initialize this ratio to another value | |
28382 | and try again | |
28383 | Reformating and updated headers. | |
28384 | ||
28385 | 2005-09-01 Javier Miranda <miranda@adacore.com> | |
28386 | ||
28387 | * itypes.ads, itypes.adb (Create_Null_Excluding_Itype): New subprogram | |
28388 | that given an entity T creates and returns an Itype that duplicates the | |
28389 | contents of T. The returned Itype has the null-exclusion | |
28390 | attribute set to True, and its Etype attribute references T | |
28391 | to keep the association between the two entities. | |
28392 | Update copyright notice | |
28393 | ||
28394 | * sem_aggr.adb (Check_Can_Never_Be_Null, | |
28395 | Aggregate_Constraint_Checks, Resolve_Aggregate, | |
28396 | Resolve_Array_Aggregate, Resolve_Record_Aggregate): Code cleanup. | |
28397 | ||
28398 | * sem_ch5.adb (Analyze_Assignment): Code cleanup. | |
28399 | ||
28400 | 2005-09-01 Gary Dismukes <dismukes@adacore.com> | |
28401 | Robert Dewar <dewar@adacore.com> | |
28402 | Hristian Kirtchev <kirtchev@adacore.com> | |
28403 | ||
28404 | * layout.adb (SO_Ref_From_Expr): Change Subtype_Mark to | |
28405 | Result_Definition. | |
28406 | ||
28407 | * par-ch6.adb (P_Subprogram): Handle parsing of Access_Definitions in | |
28408 | function specs. | |
28409 | Call Set_Result_Definition instead of Set_Subtype_Mark. | |
28410 | (P_Subprogram_Specification): Add parsing of anonymous access result | |
28411 | plus null exclusions. Call Set_Result_Definition instead of | |
28412 | Set_Subtype_Mark. | |
28413 | ||
28414 | * par-ch3.adb: Add support for LIMITED NEW for Ada 2005 AI-419 | |
28415 | (P_Access_Type_Definition): Add parsing for an anonymous access result | |
28416 | subtype, plus parsing for null exclusions. Call Set_Result_Definition | |
28417 | instead of Set_Subtype_Mark. | |
28418 | ||
28419 | * sinfo.adb: Add support for LIMITED NEW for Ada 2005 AI-419 | |
28420 | (Null_Exclusion_Present): Allow this flag for N_Function_Specification. | |
28421 | (Result_Definition): New function for N_Function_Specifications. | |
28422 | (Subtype_Mark): No longer allowed for N_Access_Function_Definition and | |
28423 | N_Function_Specification. | |
28424 | (Set_Null_Exclusion_Present): Allow this flag for | |
28425 | N_Function_Specification. | |
28426 | (Set_Result_Definition): New procedure for N_Function_Specifications. | |
28427 | (Set_Subtype_Mark): No longer allowed for N_Access_Function_Definition | |
28428 | and N_Function_Specification. | |
28429 | ||
28430 | * sinfo.ads: Update grammar rules for 9.7.2: Entry_Call_Alternative, | |
28431 | Procedure_Or_Entry_Call; 9.7.4: Triggering_Statement. | |
28432 | Add support for LIMITED NEW for Ada 2005 AI-419 | |
28433 | Update the syntax of PARAMETER_AND_RESULT_PROFILE to reflect the new | |
28434 | syntax for anonymous access results. | |
28435 | Replace Subtype_Mark field by Result_Definition in | |
28436 | N_Function_Specification and N_Access_Definition specs. | |
28437 | Add Null_Exclusion_Present to spec of N_Function_Specification. | |
28438 | (Result_Definition): New function for N_Function_Specification and | |
28439 | N_Access_Function_Definition. | |
28440 | (Set_Result_Definition): New procedure for N_Function_Specification and | |
28441 | N_Access_Function_Definition. | |
28442 | ||
28443 | * sprint.adb (S_Print_Node_Actual): Change Subtype_Mark calls to | |
28444 | Result_Definition for cases of N_Access_Function_Definition and | |
28445 | N_Function_Specification. | |
28446 | Print "not null" if Null_Exclusion_Present on N_Function_Specification. | |
28447 | ||
28448 | 2005-09-01 Vincent Celier <celier@adacore.com> | |
28449 | ||
28450 | * lib-writ.adb: Update Copyright notice | |
28451 | (Write_With_Lines): On platforms where file names are case-insensitive, | |
28452 | record the file names in lower case. | |
28453 | (Write_ALI): For D lines, on platforms where file names are | |
28454 | case-insensitive, record the file names in lower case. | |
28455 | ||
28456 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28457 | Emmanuel Briot <briot@adacore.com> | |
28458 | ||
28459 | * lib-xref.adb (Output_Overridden_Op): Display information on | |
28460 | overridden operation. | |
28461 | ||
28462 | * lib-xref.ads: Add documentation on overridden operations. | |
28463 | ||
28464 | * ali.ads (Xref_Entity_Record): Add support for storing the overriding | |
28465 | information. | |
28466 | ||
28467 | * ali.adb (Get_Typeref): New subprogram. Adds support for parsing the | |
28468 | overriding entity information. | |
28469 | ||
28470 | 2005-09-01 Vincent Celier <celier@adacore.com> | |
28471 | ||
28472 | * mlib-prj.adb (Copy_Interface_Sources): Copy all interface sources, | |
28473 | including those that are inherited. | |
28474 | ||
28475 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28476 | ||
28477 | * opt.ads, opt.adb: Add new switches Debug_Pragmas_Enabled[_Config] | |
28478 | ||
28479 | * par-prag.adb: Implement new pragma Debug_Policy | |
28480 | ||
28481 | * sem_prag.adb Implement new pragma Debug_Policy | |
28482 | (Analyze_Pragma, case Pack): do not let pragma Pack override an explicit | |
28483 | Component_Size attribute specification. Give warning for ignored pragma | |
28484 | Pack. | |
28485 | ||
28486 | * snames.h, snames.ads, snames.adb: Introduce entries in | |
28487 | Preset_Names for Name_Disp_Asynchronous_Select, | |
28488 | Name_Disp_Conditional_Select, Name_Disp_Get_Prim_Op_Kind, | |
28489 | Name_Disp_Timed_Select. | |
28490 | New pragma Debug_Policy | |
28491 | ||
28492 | * switch-c.adb (Scan_Front_End_Switches): Set Ada 2005 mode | |
28493 | explicitly. | |
28494 | Switch -gnata also sets Debug_Pragmas_Enabled | |
28495 | ||
28496 | * sem.adb, par.adb (Set_Opt_Config_Switch): Add parameter Main_Unit to | |
28497 | handle an explicit -gnata when compiling predefined files. | |
28498 | ||
28499 | 2005-09-01 Vincent Celier <celier@adacore.com> | |
28500 | ||
28501 | * prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not add the object | |
28502 | directories of projects that have no Ada sources. | |
28503 | ||
28504 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28505 | ||
28506 | * scng.adb (Check_End_Of_Line): Count characters, rather than bytes | |
28507 | (makes a difference for wide characters) | |
28508 | ||
da8f5fd9 | 28509 | * widechar.adb, widechar.ads: |
98b40956 AC |
28510 | Add Wide_Char_Byte_Count feature to count chars vs bytes |
28511 | ||
28512 | 2005-09-01 Thomas Quinot <quinot@adacore.com> | |
28513 | Ed Schonberg <schonberg@adacore.com> | |
28514 | Robert Dewar <dewar@adacore.com> | |
28515 | ||
28516 | * sem_attr.adb (Resolve_Attribute, case 'Address): For an illegal | |
28517 | 'Address attribute reference with an overloaded prefix, use the | |
28518 | location of the prefix (not the location of the attribute reference) as | |
28519 | the error location. | |
28520 | (Analyze_Attribute, case 'Size): The name of an enumeration literal, or | |
28521 | a function renaming thereof, is a valid prefix for 'Size (where it is | |
28522 | intepreted as a function call). | |
28523 | (Statically_Denotes_Entity): New predicate to determine whether the | |
28524 | prefix of an array attribute can be considered static. | |
28525 | ||
28526 | PR ada/9087 | |
28527 | (Eval_Attr): Fix failure to evaluate Component_Size for | |
28528 | unconstrained arrays (resulted in wrong value in packed case, since | |
28529 | back end cannot handle this case) | |
28530 | ||
28531 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28532 | ||
28533 | * sem_cat.adb (Check_Categorization_Dependencies): Add more detail to | |
28534 | error msgs for most common cases. | |
28535 | Use new errout insertion char < (conditional warning) | |
28536 | ||
28537 | 2005-09-01 Javier Miranda <miranda@adacore.com> | |
28538 | Ed Schonberg <schonberg@adacore.com> | |
28539 | ||
28540 | * sem_ch10.adb (In_Chain): Moved from the scope of a subprogram to | |
28541 | become local to the whole package. | |
28542 | (Install_Limited_Withed_Unit): Instead of unchaining real entities if | |
28543 | the package was already analyzed the new algorithm "replaces" the | |
28544 | real entities by the shadow ones. This is required to ensure that | |
28545 | the order of these entities in the homonym chains does not change; | |
28546 | otherwise we can have undefined references at linking time because | |
28547 | in case of conflicts the external name of the entities will have | |
28548 | a suffix that depends on the order of the entities in the chain. | |
28549 | (Remove_Limited_With_Clause): Complementary code that completes the | |
28550 | new algorithm and replaces the shadow entities by the real ones. | |
28551 | (Install_Limited_Withed_Unit): When unchaining entities before the | |
28552 | installation of the shadow entities, only regular entities of the | |
28553 | public part must be taken into account. This is required to | |
28554 | keep this routine in synch with the work done by Remove_Limited_ | |
28555 | With_Clause | |
28556 | (Install_Limited_With_Clause): Introduce implicit limited_with_clause | |
28557 | even if unit is analyzed, because the analysis of the unit is | |
28558 | idempotent in any case, and the limited view of the unit may have to | |
28559 | be installed for proper visibility. | |
28560 | (Expand_Limited_With_Clause): Even if the unit in the implicit | |
28561 | with_clause has been analyzed already, a limited view of the package | |
28562 | must be built for the current context, if it does not exist yet. | |
28563 | ||
28564 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28565 | Javier Miranda <miranda@adacore.com> | |
28566 | Gary Dismukes <dismukes@adacore.com> | |
28567 | ||
28568 | * sem_ch12.adb (Instantiate_Subprogram_Body): When creating the | |
28569 | defining entity for the instance body, make a new defining identifier | |
28570 | rather than copying the entity of the spec, to prevent accidental | |
28571 | sharing of the entity list. | |
28572 | (Check_Private_View): When exchanging views of private types, build the | |
28573 | list of exchanged views as a stack, to ensure that on exit the exchanges | |
28574 | are undone in the proper order. | |
28575 | (Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation): | |
28576 | Restore the compilation environment in case of instantiation_error. | |
28577 | (Analyze_Generic_Subprogram_Declaration): Handle creation of type entity | |
28578 | for an anonymous access result. | |
28579 | (Instantiate_Generic_Subprogram): Subtype_Mark => Result_Definition | |
28580 | (Formal_Entity): Handle properly the case of a formal package that | |
28581 | denotes a generic package renaming. | |
28582 | ||
28583 | 2005-09-01 Thomas Quinot <quinot@adacore.com> | |
28584 | ||
28585 | * sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Reject the | |
28586 | clause if the array aggregate is surrounded by parentheses. | |
28587 | ||
28588 | 2005-09-01 Cyrille Comar <comar@adacore.com> | |
28589 | Gary Dismukes <dismukes@adacore.com> | |
28590 | Ed Schonberg <schonberg@adacore.com> | |
28591 | Javier Miranda <miranda@adacore.com> | |
28592 | ||
28593 | * sem_ch3.ads, sem_ch3.adb (Analyze_Object_Declaration): Go to the | |
28594 | underlying type | |
28595 | to check if a type is Constrained in cases related to code generation | |
28596 | (rather than semantic checking) since otherwise we do not generate | |
28597 | similar code for mutable private types depending if their | |
28598 | discriminants are visible or not. | |
28599 | (Check_Abstract_Overriding): Do not complain about failure to override | |
28600 | the primitive operations used in dispatching selects since they will | |
28601 | always be overriden at the freeze point of the type. | |
28602 | (Access_Definition): Separate out handling for resetting the scope | |
28603 | of an anonymous access function result type. Retrieve the scope | |
28604 | of the associated function rather than using Current_Scope, which | |
28605 | does not have a consistent value (depends on whether we're in the | |
28606 | middle of analyzing formal parameters). Add ??? comment about | |
28607 | finding a cleaner way to handle the special cases of scope setting. | |
28608 | (Process_Incomplete_Dependents): A protected operation is never a | |
28609 | dispatching operation (only its wrapper may be). | |
28610 | (Build_Derived_Record_Type): In case of tagged private types that | |
28611 | implement interfaces add derivation of predefined primitive | |
28612 | operations. | |
28613 | (Derive_Subprograms): Replace the Is_Interface_Derivation parameter | |
28614 | by two parameters that are used in case of derivation from abstract | |
28615 | interface types: No_Predefined_Prims is used to avoid the derivation | |
28616 | of predefined primitives from the interface, and Predefined | |
28617 | Prims_Only is used to complete the derivation predefined primitives | |
28618 | in case of private tagged types implementing interfaces. | |
28619 | Fix typo in comments | |
28620 | (Find_Interface_In_Descendant): Protect the frontend against | |
28621 | wrong code with large circularity chains. | |
28622 | (Is_Private_Overriding): Add support for entities overriding interface | |
28623 | subprograms. The test failed because Entities associated with overriden | |
28624 | interface subprograms are always marked as hidden (and used to build | |
28625 | the secondary dispatch table); in this case the overriden entity is | |
28626 | available through the field abstract_interface_alias (cf. override_ | |
28627 | dispatching_operation) | |
28628 | (Access_Definition): Set the scope of the type to Current_Scope for the | |
28629 | case of a function with an anonymous access result type. | |
28630 | (Access_Subprogram_Declaration): Handle creation of the type entity for | |
28631 | an access-to-function type with an anonymous access result. | |
28632 | (Check_Anonymous_Access_Types): Change Subtype_Mark to Result_Definition | |
28633 | in handling for N_Access_Function_Definition. | |
28634 | (Analyze_Subtype_Declaration): Modify the text of error message. | |
28635 | (Derived_Type_Declaration): Modify the text of error message. | |
28636 | (Process_Subtype): Modify the text of error message plus cleanup | |
28637 | of one redundant error message. | |
28638 | (Analyze_Component_Declaration): Code cleanup. | |
28639 | (Analyze_Object_Declaration): Code cleanup. | |
28640 | (Analyze_Subtype_Declaration): Propagate the null-exclusion | |
28641 | attribute in case of access types. Code cleanup. | |
28642 | (Array_Type_Declaration): Code cleanup. | |
28643 | (Process_Discriminants): Create the new null-excluding itype | |
28644 | if required. Code cleanup. | |
28645 | (Process_Subtype): Create the new null-excluding itype if | |
28646 | required. Code cleanup. | |
28647 | (Build_Derived_Record_Type): Code cleanup to avoid calling | |
28648 | twice the subprogram derive_subprograms in case of private | |
28649 | types that implement interfaces. In this particular case the | |
28650 | subprogram Complete_Subprograms_Derivation already does the | |
28651 | job associated with the second call. | |
28652 | ||
6f7f72f9 EB |
28653 | * exp_strm.adb (Build_Elementary_Input_Call): Add an explicit |
28654 | conversion to the full view when generating an operation for a | |
28655 | discriminant whose type may currently be private. | |
98b40956 AC |
28656 | |
28657 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28658 | Javier Miranda <miranda@adacore.com> | |
28659 | ||
28660 | * sem_ch4.adb (Transform_Object_Operation): In a context off the form | |
28661 | V (Obj.F), the rewriting does not involve the indexed component, but | |
28662 | only the selected component itself. | |
28663 | Do not apply the transformation if the analyzed node is an actual of a | |
28664 | call to another subprogram. | |
28665 | (Complete_Object_Operation): Retain the entity of the | |
28666 | dispatching operation in the selector of the rewritten node. The | |
28667 | entity will be used in the expansion of dispatching selects. | |
28668 | (Analyze_One_Call): Improve location of the error message associated | |
28669 | with interface. | |
28670 | (Analyze_Selected_Component): No need to resolve prefix when it is a | |
28671 | function call, resolution is done when parent node is resolved, as | |
28672 | usual. | |
28673 | (Analyze_One_Call): Add a flag to suppress analysis of the first actual, | |
28674 | when attempting to resolve a call transformed from its object notation. | |
28675 | (Try_Object_Operation, Transform_Object_Operastion): Avoid makind copies | |
28676 | of the argument list for each interpretation of the operation. | |
28677 | (Try_Object_Operation): The designated type of an access parameter may | |
28678 | be an incomplete type obtained through a limited_with clause, in which | |
28679 | case the primitive operations of the type are retrieved from its full | |
28680 | view. | |
28681 | (Analyze_Call): If this is an indirect call, and the return type of the | |
28682 | access_to_subprogram is incomplete, use its full view if available. | |
28683 | ||
28684 | 2005-09-01 Javier Miranda <miranda@adacore.com> | |
28685 | Gary Dismukes <dismukes@adacore.com> | |
28686 | ||
28687 | * sem_ch6.ads, sem_ch6.adb (Check_Conformance): In case of anonymous | |
28688 | access types the null-exclusion and access-to-constant attributes must | |
28689 | also match. | |
28690 | (Analyze_Return_Statement): When the result type is an anonymous access | |
28691 | type, apply a conversion of the return expression to the access type | |
28692 | to ensure that appropriate accessibility checks are performed. | |
28693 | (Analyze_Return_Type): For the case of an anonymous access result type, | |
28694 | generate the Itype and set Is_Local_Anonymous_Access on the type. | |
28695 | Add ??? placeholder for check to disallow returning a limited object | |
28696 | in Ada 2005 unless it's an aggregate or a result of a function call. | |
28697 | Change calls from Subtype_Mark to Result_Definition. | |
28698 | (Analyze_Subprogram_Body): Change formal Subtype_Mark to | |
28699 | Result_Definition in call to Make_Function_Specification. | |
28700 | (Build_Body_To_Inline): Change Set_Subtype_Mark to | |
28701 | Set_Result_Definition. | |
28702 | (Make_Inequality_Operator): Change formal Subtype_Mark to | |
28703 | Result_Definition in call to Make_Function_Specification. | |
28704 | (Process_Formals): Create the new null-excluding itype if required. | |
28705 | (New_Overloaded_Entity): For an entity overriding an interface primitive | |
28706 | check if the entity also covers other abstract subprograms in the same | |
28707 | scope. This is required to handle the general case, that is, overriding | |
28708 | other interface primitives and overriding abstract subprograms inherited | |
28709 | from some abstract ancestor type. | |
28710 | (New_Overloaded_Entity): For an overriding entity that comes from | |
28711 | source, note the operation that it overrides. | |
28712 | (Check_Conformance, Type_Conformant): Addition of one new formal | |
28713 | to skip controlling formals in the analysis. This is used to | |
28714 | handle overloading of abstract interfaces. | |
28715 | (Base_Types_Match): Add missing case for types imported from | |
28716 | limited-with clauses | |
28717 | (New_Overloaded_Entity): Add barrier to protect the use of | |
28718 | the "alias" attribute. | |
28719 | ||
28720 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28721 | ||
28722 | * sem_ch8.adb (Analyze_Renamed_Entry): For a renaming_as_declaration, | |
28723 | verify that the procedure and the entry are mode conformant. | |
28724 | (Analyze_Subprogram_Renaming): Emit a warning if an operator is renamed | |
28725 | as a different operator, which is often a cut-and-paste error. | |
28726 | ||
28727 | 2005-09-01 Javier Miranda <miranda@adacore.com> | |
28728 | Ed Schonberg <schonberg@adacore.com> | |
28729 | ||
28730 | * sem_disp.adb (Check_Controlling_Formals): Anonymous access types | |
28731 | used in controlling parameters exclude null because it is necessary to | |
28732 | read the tag to dispatch, and null has no tag. | |
28733 | (Override_Dispatching_Operation): If the previous operation is inherited | |
28734 | from an interface, it becomes hidden and does not participate in later | |
28735 | name resolution. | |
28736 | ||
28737 | 2005-09-01 Javier Miranda <miranda@adacore.com> | |
28738 | Ed Schonberg <schonberg@adacore.com> | |
28739 | Gary Dismukes <dismukes@adacore.com> | |
28740 | ||
28741 | * sem_res.adb (Resolve_Membership_Op): In case of the membership test | |
28742 | "Iface_CW_Typ in T'Class" we have nothing else to do in the frontend; | |
28743 | the expander will generate the corresponding run-time check to evaluate | |
28744 | the expression. | |
28745 | (Resolve_Call): Check for legal type of procedure name or prefix that | |
28746 | appears as a trigger in a triggering alternative. | |
28747 | (Valid_Conversion): If expression is ambiguous and the context involves | |
28748 | an extension of System, remove System.Address interpretations. | |
28749 | (Resolve_Qualified_Expression): Reject the case of a specific-type | |
28750 | qualification applied to a class-wide argument. Enhance comment | |
28751 | to explain checking of Original_Node. | |
28752 | (Resolve_Type_Conversion): The location of the error message was not | |
28753 | general enough to handle the general case and hence it has been removed. | |
28754 | In addition, this patch improves the text of the message. | |
28755 | (Resolve_Type_Conversion): Add missing support for access to interface | |
28756 | types. | |
28757 | (Resolve_Type_Conversion): If the target is a class-wide interface type, | |
28758 | do not expand if the expression is the actual in a call, because proper | |
28759 | expansion will take place when the call itself is expanded. | |
28760 | (Resolve_Allocator): If the context is an unchecked conversion, the | |
28761 | allocator inherits its storage pool, if any, from the target type of | |
28762 | the conversion. | |
28763 | ||
28764 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28765 | Javier Miranda <miranda@adacore.com> | |
28766 | ||
28767 | * sem_type.adb (Add_One_Interp): If a candidate operation is an | |
28768 | inherited interface operation that has an implementation, use the | |
28769 | implementation to avoid spurious ambiguities. | |
28770 | (Interface_Present_In_Ancestor): In case of concurrent types we can't | |
28771 | use the Corresponding_Record_Typ attribute to look for the interface | |
28772 | because it is set by the expander (and hence it is not always | |
28773 | available). For this reason we traverse the list of interfaces | |
28774 | (available in the parent of the concurrent type). | |
28775 | (Interface_Present_In_Ancestor): Handle entities from the limited view | |
28776 | ||
28777 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28778 | ||
28779 | * sem_util.ads, sem_util.adb (Gather_Components): Omit interface tags | |
28780 | from the list of required components. | |
28781 | (Is_Controlling_Limited_Procedure): Determine whether an entity is a | |
28782 | primitive procedure of a limited interface with a controlling first | |
28783 | parameter. | |
28784 | (Is_Renamed_Entry): Determine whether an entry is a procedure renaming | |
28785 | of an entry. | |
28786 | (Safe_To_Capture_Value): A value (such as non_null) is not safe to | |
28787 | capture if it is generated in the second operand of a short-circuit | |
28788 | operation. | |
28789 | Do not capture values for variables with address clauses. | |
28790 | (Is_Object_Reference): Treat a function call as an object reference only | |
28791 | if its type is not Standard_Void_Type. | |
28792 | ||
28793 | 2005-09-01 Ed Schonberg <schonberg@adacore.com> | |
28794 | ||
28795 | * sem_warn.adb (Warn_On_Known_Condition): Refine warning when applied | |
28796 | to a variable that is statically known to be constant. | |
28797 | ||
28798 | 2005-09-01 Geert Bosch <bosch@adacore.com> | |
28799 | Robert Dewar <dewar@adacore.com> | |
28800 | ||
28801 | * ttypef.ads (VAXDF_Safe_First): Use correct value for constant. | |
28802 | (VAXGF_Safe_First): Idem. | |
28803 | ||
28804 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28805 | Arnaud Charlet <charlet@adacore.com> | |
28806 | ||
28807 | * g-dirope.ads: Minor reformatting | |
28808 | Document that bounds of result of Base_Name match the input index | |
28809 | positions. | |
28810 | Add documentation on environment variable syntax for Expand_Path | |
28811 | ||
28812 | * gnat_ugn.texi: Update documentation to include mention of -m switches | |
28813 | Document new treatment of wide characters in max line length | |
28814 | style check. | |
28815 | Remove -gnatL/-gnatZ switches, no longer used. | |
28816 | Add note on pragmas Assertion_Policy and Debug_Policy in discussion | |
28817 | of -gnata switch. | |
28818 | ||
28819 | * gnat_rm.texi: Add doc for two argument form of pragma | |
28820 | Float_Representation. | |
28821 | Add documentation for pragma No_Strict_Aliasing | |
28822 | Add note that explicit component clause overrides pragma Pack. | |
28823 | Add documentation of pragma Debug_Policy | |
28824 | ||
28825 | 2005-09-01 Matthew Heaney <heaney@adacore.com> | |
28826 | ||
da8f5fd9 AJ |
28827 | * a-cihase.adb, a-coorse.ads, a-coorse.adb, a-cohama.adb, |
28828 | a-ciorse.ads, a-ciorse.adb, a-cihama.adb, a-cdlili.adb, | |
28829 | a-cidlli.adb, a-chtgop.adb, a-cihase.adb, a-cihase.ads, | |
98b40956 AC |
28830 | a-cohase.adb, a-cohase.adb, a-cohase.ads: Synchronized with latest |
28831 | draft (Draft 13, August 2005) of Ada Amendment 1. | |
28832 | ||
28833 | 2005-09-01 Arnaud Charlet <charlet@adacore.com> | |
28834 | ||
28835 | * Makefile.in: Adjust the libgnat target pairs for Xscale to ARM. | |
28836 | Note that the platform-specific version of g-soccon.ads for VMS is now | |
28837 | named g-soccon-vms.ads (it was previously g-soccon-vms.adb, although it | |
28838 | really is a package spec). | |
28839 | Replace s-taspri-linux.ads by s-taspri-posix.ads | |
28840 | Remove references to s-mastop-x86.adb | |
28841 | ||
28842 | * system-vxworks-xscale.ads: Removed, no longer used. | |
28843 | * s-vxwork-xscale.ads: Removed, no longer used. | |
28844 | ||
28845 | 2005-09-01 Robert Dewar <dewar@adacore.com> | |
28846 | ||
28847 | * a-dirval-mingw.adb, a-direct.adb, a-coinve.adb, | |
28848 | g-dynhta.adb, g-dynhta.ads, cstand.adb, exp_smem.adb, g-debuti.ads, | |
28849 | g-dirope.adb, g-table.adb, lib-sort.adb, sem_maps.adb, | |
28850 | exp_fixd.adb, exp_aggr.adb, a-intnam-mingw.ads, a-intnam-vxworks.ads, | |
28851 | g-arrspl.adb, g-arrspl.ads, g-awk.adb, g-awk.ads, g-boubuf.ads, | |
28852 | g-boubuf.ads, g-boubuf.ads, g-bubsor.ads, g-bubsor.adb, g-busora.adb, | |
28853 | g-busora.ads, g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads, | |
28854 | g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads, g-cgi.adb, | |
28855 | g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads, g-cgideb.adb, g-cgideb.ads, | |
28856 | g-comlin.adb, g-comver.ads, g-semaph.ads, g-socthi.ads, | |
28857 | sem_ch7.adb, a-direio.adb, a-caldel.ads, i-cstrea-vms.adb, | |
28858 | a-ztedit.adb, a-ztenau.adb, g-socthi-vms.adb, g-socthi-vms.ads, | |
28859 | g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vxworks.ads, | |
28860 | a-intnam-irix.ads, a-intnam-irix.ads, a-intnam-hpux.ads, | |
28861 | a-intnam-os2.ads, a-intnam-os2.ads, a-caldel-vms.adb, a-calend-vms.adb, | |
28862 | a-calend-vms.ads, g-heasor.adb, g-heasor.ads, g-hesora.adb, | |
28863 | g-hesora.ads, g-hesorg.adb, g-hesorg.ads, g-htable.adb, g-htable.ads, | |
28864 | g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads, g-locfil.ads, | |
28865 | g-memdum.adb, g-memdum.ads, g-traceb.adb, g-traceb.ads, i-cobol.adb, | |
28866 | i-cobol.ads, i-cstrea.ads, i-cstrin.adb, a-wtedit.adb, a-tifiio.adb, | |
28867 | a-wtenau.adb, a-wtenau.adb, a-teioed.adb: Minor reformatting | |
28868 | ||
332a1c2e AC |
28869 | 2005-08-29 Arnaud Charlet <charlet@adacore.com> |
28870 | ||
28871 | PR ada/23187 | |
28872 | * adaint.c | |
da8f5fd9 | 28873 | (GNAT_MAXPATH_LEN): Use default value if MAXPATHLEN is undefined. |
332a1c2e AC |
28874 | |
28875 | 2005-08-29 Arnaud Charlet <charlet@adacore.com> | |
28876 | Doug Rupp <rupp@adacore.com> | |
28877 | ||
28878 | * s-stalib.adb: Add missing pragma Warnings (On) to reenable Warnings | |
28879 | when needed. | |
28880 | (Inside_Elab_Final_Code): Moved to init.c to avoid having to keep | |
28881 | this code in the GNAT run-time. | |
28882 | ||
28883 | * decl.c, fe.h: Replace GCC_ZCX by Back_End_Exceptions. | |
28884 | ||
28885 | PR ada/21053 | |
28886 | * init.c (__gnat_error_handler [many]): Mark "msg" as const | |
28887 | (__gnat_error_handler [HPUX]): Mark siginfo parameter as unused | |
28888 | ||
28889 | (__gnat_inside_elab_final_code): Moved here from | |
28890 | Standard_Library and only defined for the compiler. | |
28891 | __gnat_error_handler [VMS]: Adjust sigargs to account for PC & PSL. | |
28892 | (__gnat_inum_to_ivec): Do not define this function on VxWorks when | |
28893 | using RTPs because directly vectored Interrupt routines are not | |
28894 | supported on this configuration. | |
28895 | (getpid): Do not redefine this function on VxWorks when using RTPs | |
28896 | because this primitive is well supported by the RTP libraries. | |
28897 | (copy_msg): Correct the code that checks for buffer overflow. | |
28898 | Discovered during code reading. | |
28899 | ||
28900 | 2005-08-29 Olivier Hainque <hainque@adacore.com> | |
28901 | ||
28902 | * decl.c (gnat_to_gnu_entity) <E_Variable>: When allocating storage for | |
28903 | a library level mutable variable with an initializer, tell | |
28904 | build_allocator to ignore the initializer's size. It may not be large | |
28905 | enough for all the values that might be assigned to the variable later | |
28906 | on. | |
28907 | ||
28908 | 2005-08-29 Arnaud Charlet <charlet@adacore.com> | |
28909 | Eric Botcazou <ebotcazou@adacore.com> | |
28910 | ||
28911 | * trans.c: Protect < in error msg with quote | |
28912 | Replace GCC_ZCX by Back_End_Exceptions. | |
28913 | (addressable_p) <COMPONENT_REF>: Also return 1 if the field | |
28914 | has been sufficiently aligned in the record. | |
28915 | ||
35fd1d77 JW |
28916 | 2005-08-15 James E. Wilson <wilson@specifix.com> |
28917 | ||
28918 | * system-linux-alpha.ads: Change ia64 to alpha. | |
28919 | ||
b15341b8 KH |
28920 | 2005-08-01 Kazu Hirata <kazu@codesourcery.com> |
28921 | ||
28922 | * decl.c, utils.c: Fix comment typos. | |
28923 | ||
9e4eb559 KH |
28924 | 2005-07-29 Kazu Hirata <kazu@codesourcery.com> |
28925 | ||
28926 | * decl.c, init.c, initialize.c: Fix comment typos. | |
28927 | ||
4038c495 GB |
28928 | 2005-07-20 Giovanni Bajo <giovannibajo@libero.it> |
28929 | ||
28930 | Make CONSTRUCTOR use VEC to store initializers. | |
28931 | * decl.c (gnat_to_gnu_entity): Update to cope with VEC in | |
28932 | CONSTRUCTOR_ELTS. | |
28933 | * trans.c (extract_values): Likewise. | |
28934 | * utils.c (convert, remove_conversions): Likewise. | |
28935 | * utils2.c (contains_save_expr_p, build_binary_op, build_unary_op, | |
28936 | gnat_build_constructor): Likewise. | |
28937 | ||
f685a2e6 AP |
28938 | 2005-07-09 Andrew Pinski <pinskia@physics.uc.edu> |
28939 | ||
28940 | * decl.c (components_to_record): Use DECL_FCONTEXT instead of | |
28941 | DECL_SECTION_NAME. | |
28942 | (compare_field_bitpos): Likewise. | |
28943 | ||
7c6ef73e AP |
28944 | 2005-07-09 Andrew Pinski <pinskia@physics.uc.edu> |
28945 | ||
28946 | * utils.c (create_var_decl): Only set DECL_COMMON on | |
28947 | VAR_DECLs. Only set SET_DECL_ASSEMBLER_NAME on | |
28948 | VAR_OR_FUNCTION_DECL_P. | |
28949 | ||
820cc88f | 28950 | 2005-07-08 Daniel Berlin <dberlin@dberlin.org> |
da8f5fd9 | 28951 | |
820cc88f DB |
28952 | * utils.c (create_param_decl): DECL_ARG_TYPE_AS_WRITTEN is |
28953 | removed. | |
28954 | ||
1a9cb483 AC |
28955 | 2005-07-07 Pascal Obry <obry@adacore.com> |
28956 | ||
28957 | * g-socthi-mingw.adb (C_Inet_Addr): New body used to convert the | |
28958 | returned type on Windows. | |
28959 | ||
28960 | * g-socthi-mingw.ads (C_Inet_Addr): Remove pragma Import for this | |
28961 | routine. | |
28962 | ||
28963 | * g-socket.adb (Inet_Addr): Check for empty Image and raises an | |
28964 | exception in this case. | |
28965 | Simplify the code as "Image (Image'Range)" = "Image". | |
28966 | ||
28967 | 2005-07-07 Vincent Celier <celier@adacore.com> | |
28968 | ||
28969 | * bindgen.adb (Gen_Output_File_C): When switch -a was specified, put | |
28970 | the destructor/constructor attributes for <lib>final/<lib>init. | |
28971 | ||
28972 | * gnatbind.adb (Gnatbind): Allow -a to be used in conjunction with -C | |
28973 | ||
28974 | 2005-07-07 Eric Botcazou <ebotcazou@adacore.com> | |
28975 | ||
28976 | * decl.c (gnat_to_gnu_entity) <E_Procedure>: Do not strip the padding | |
28977 | type if the parameter is not passed by copy but reference by default. | |
28978 | ||
28979 | 2005-07-07 Javier Miranda <miranda@adacore.com> | |
28980 | ||
28981 | * exp_ch3.adb (Build_Record_Init_Proc/Freeze_Record_Type): | |
28982 | Reimplementation of the support for abstract interface types in order | |
28983 | to leave the code more clear and easy to maintain. | |
28984 | ||
28985 | * exp_ch6.adb (Freeze_Subprogram): Reimplementation of the support for | |
28986 | abstract interface types in order to leave the code clearer and easier | |
28987 | to maintain. | |
28988 | ||
28989 | * exp_disp.ads, exp_disp.adb (Fill_DT_Entry): Part of its functionality | |
28990 | is now implemented by the new subprogram Fill_Secondary_DT_Entry. | |
28991 | (Fill_Secondary_DT_Entry): Generate the code necessary to fill the | |
28992 | appropriate entry of the secondary dispatch table. | |
28993 | (Make_DT): Add code to inherit the secondary dispatch tables of | |
28994 | the ancestors. | |
28995 | ||
28996 | * exp_util.adb (Find_Interface_Tag/Find_Interface_ADT): Instead of | |
28997 | implementing both functionalities by means of a common routine, each | |
28998 | routine has its own code. | |
28999 | ||
29000 | 2005-07-07 Javier Miranda <miranda@adacore.com> | |
29001 | ||
29002 | * freeze.adb (Freeze_Entity): Check wrong uses of tag incomplete types. | |
29003 | ||
29004 | * par-ch3.adb (P_Type_Declaration): Give support to tagged incomplete | |
29005 | types: | |
29006 | -- | |
29007 | type DEFINING_IDENTIFIER [DISCRIMINANT_PART] [IS TAGGED]; | |
29008 | -- | |
29009 | ||
29010 | * sem_attr.adb (Check_Not_Incomplete_Type): Additional checks for wrong | |
29011 | use of tag incomplete types. | |
29012 | ||
29013 | * sem_ch3.adb (Analyze_Incomplete_Type): Add mininum decoration to | |
29014 | give support to tagged incomplete types. | |
29015 | ||
29016 | * sem_ch5.adb (Analyze_Case_Statement): In generated code, if the | |
29017 | expression is a discriminant reference and its type is private, as can | |
29018 | happen within a stream operation for a mutable record, use the full | |
29019 | view of the type to resolve the case alternatives. | |
29020 | (Analyze_Assignment): Check wrong dereference of incomplete types. | |
29021 | ||
29022 | * sem_ch6.adb (Process_Formals): Allow the use of tagged incomplete | |
29023 | types. | |
29024 | ||
29025 | * sem_res.adb (Resolve_Explicit_Dereference): Allow the use of tagged | |
29026 | incomplete types. | |
29027 | ||
29028 | * sinfo.adb (Taggged_Present/Set_Taggged_Present): Applicable to | |
29029 | N_Incomplete_Type_Declaration nodes. | |
29030 | ||
29031 | * sinfo.ads (N_Incomplete_Type_Declaration): Addition of attribute | |
29032 | Tag_Present to give support to tagged incomplete types: | |
29033 | -- | |
29034 | type DEFINING_IDENTIFIER [DISCRIMINANT_PART] [IS TAGGED]; | |
29035 | -- | |
29036 | ||
29037 | 2005-07-07 Olivier Hainque <hainque@adacore.com> | |
29038 | ||
29039 | PR ada/22301 | |
1a9cb483 AC |
29040 | * raise.c: Only include unwind.h if IN_RTS, and provide dummy type |
29041 | definitions for the Unwind wrappers in the compiler case. | |
29042 | ||
29043 | 2005-07-07 Ed Schonberg <schonberg@adacore.com> | |
29044 | Javier Miranda <miranda@adacore.com> | |
29045 | ||
29046 | * par-load.adb (Load): If a child unit is loaded through a limited_with | |
29047 | clause, each parent must be loaded as a limited unit as well. | |
29048 | ||
29049 | * sem_ch10.adb (Previous_Withed_Unit): Better name for | |
29050 | Check_Withed_Unit. Return true if there is a previous with_clause for | |
29051 | this unit, whether limited or not. | |
29052 | (Expand_Limited_With_Clause): Do not generate a limited_with_clause on | |
29053 | the current unit. | |
29054 | (Is_Visible_Through_Renamings): New local subprogram of install_limited | |
29055 | _withed_unit that checks if some package installed through normal with | |
29056 | clauses has a renaming declaration of package whose limited-view is | |
29057 | ready to be installed. This enforces the check of the rule 10.1.2 (21/2) | |
29058 | of the current Draft document for Ada 2005. | |
29059 | (Analyze_Context): Complete the list of compilation units that | |
29060 | are allowed to contain limited-with clauses. It also contains | |
29061 | checks that were previously done by Install_Limited_Context_Clauses. | |
29062 | This makes the code more clear and easy to maintain. | |
29063 | (Expand_Limited_With_Clause) It is now a local subprogram of | |
29064 | Install_Limited_Context_Clauses, and contains the code that adds | |
29065 | the implicit limited-with clauses for parents of child units. | |
29066 | This functionality was prevously done by Analyze_Context. | |
29067 | ||
29068 | * sem_ch4.adb (Analyze_Selected_Component): Check wrong use of | |
29069 | incomplete type. | |
29070 | ||
29071 | * sem_ch7.adb (Analyze_Package_Declaration): Check if the package has | |
29072 | been erroneously named in a limited-with clause of its own context. | |
29073 | In this case the error has been previously notified by Analyze_Context. | |
29074 | ||
29075 | 2005-07-07 Ed Schonberg <schonberg@adacore.com> | |
29076 | ||
29077 | * sem_ch8.adb (Find_Direct_Name): Handle properly the case of a | |
29078 | generic package that contains local declarations with the same name. | |
29079 | (Analyze_Object_Renaming): Check wrong renaming of incomplete type. | |
29080 | ||
29081 | 2005-07-07 Bernard Banner <banner@adacore.com> | |
29082 | ||
29083 | * tracebak.c: Refine tracebacks to use Unwind_Backtrace scheme on | |
29084 | ia64 platform only on platforms that you the GCC unwind library | |
29085 | rather than the system unwind library. | |
29086 | ||
29087 | 2005-07-07 Thomas Quinot <quinot@adacore.com> | |
29088 | ||
29089 | * expect.c: Minor reformatting | |
29090 | ||
29091 | 2005-07-07 Sergey Rybin <rybin@adacore.com> | |
29092 | ||
29093 | * vms_data.ads: Add VMS qualifiers for new gnatpp switch | |
29094 | --no-separate-is | |
29095 | ||
29096 | * gnat_ugn.texi: Add description for new gnatpp option | |
29097 | (--no-separate-is) | |
29098 | ||
7d300a99 AC |
29099 | 2005-07-04 Thomas Quinot <quinot@adacore.com> |
29100 | ||
29101 | * g-expect-vms.adb, g-expect.ads, g-expect.adb | |
29102 | (Get_Command_Output): New subprogram to launch a process and get its | |
29103 | standard output as a string. | |
29104 | ||
29105 | 2005-07-04 Eric Botcazou <ebotcazou@adacore.com> | |
9bae2797 | 29106 | Olivier Hainque <hainque@adacore.com> |
7d300a99 AC |
29107 | |
29108 | * s-mastop-tru64.adb (Pop_Frame): Use exc_lookup_function_entry to | |
29109 | fetch a code-range descriptor associated with the machine state. On | |
29110 | failure set the machine state's PC to 0; on success, pass the | |
29111 | descriptor to exc_virtual_unwind. | |
29112 | ||
29113 | * init.c (Tru64 section): New function __gnat_set_code_loc. | |
29114 | ||
29115 | 2005-07-04 Vincent Celier <celier@adacore.com> | |
29116 | ||
da8f5fd9 AJ |
29117 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, |
29118 | mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, | |
7d300a99 AC |
29119 | mlib-tgt-mingw.adb, mlib-tgt-darwin.adb (Build_Dynamic_Library): |
29120 | Remove all auto-initialization code, as this is now done through the | |
29121 | constructor mechanism. | |
29122 | ||
29123 | * adaint.h, adaint.c (__gnat_binder_supports_auto_init, | |
29124 | __gnat_sals_init_using_constructors): New functions. | |
29125 | ||
29126 | * bindgen.adb (Gen_Output_File_Ada): Generate pragmas | |
29127 | Linker_Constructor and Linker_Destructor when switch -a is used. | |
29128 | ||
29129 | * bindusg.adb: Add line for new switch -a | |
29130 | ||
29131 | * gnatbind.adb (Gnatbind_Supports_Auto_Init): New Boolean function | |
29132 | (Gnatbind): When switch -a is used, check if it is allowed | |
29133 | ||
29134 | * switch-b.adb (Scan_Binder_Switches): Process new switch -a | |
29135 | ||
29136 | 2005-07-04 Joel Brobecker <brobecker@adacore.com> | |
29137 | ||
29138 | * a-tags.adb (Type_Specific_Data): Define Tags_Table as a small array. | |
29139 | This prevents us from hitting a limitation during the debug info | |
29140 | generation when using stabs. | |
29141 | (Prims_Ptr): Likewise. | |
29142 | ||
29143 | 2005-07-04 Gary Dismukes <dismukes@adacore.com> | |
29144 | Ed Schonberg <schonberg@adacore.com> | |
29145 | Javier Miranda <miranda@adacore.com> | |
29146 | ||
29147 | * checks.adb (Null_Exclusion_Static_Checks): In the case of | |
29148 | N_Object_Declaration, only perform the checks if the Object_Definition | |
29149 | is not an Access_Definition. | |
29150 | ||
6f7f72f9 EB |
29151 | * sem_ch3.adb (Access_Subprogram_Declaration): Add test for the case |
29152 | where the parent of an the access definition is an N_Object_Declaration | |
29153 | when determining the Associated_Node_For_Itype and scope of an | |
29154 | anonymous access-to-subprogram type. | |
7d300a99 AC |
29155 | |
29156 | * exp_ch6.adb (Expand_N_Subprogram_Declaration): Set the | |
29157 | Corresponding_Spec on the body created for a null procedure. Add ??? | |
29158 | comment. Remove New_Copy_Tree call on body argument to | |
29159 | Set_Body_To_Inline. | |
29160 | ||
29161 | * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): For an out parameter with | |
29162 | discriminants, use the type of the actual as well, because the | |
29163 | discriminants may be read by the called subprogram. | |
29164 | ||
29165 | * sem_ch3.adb (Access_Type_Declaration): If the designated type is an | |
29166 | access type we do not need to handle non-limited views. | |
29167 | (Build_Derived_Record_Type): Additional check to check that in case of | |
29168 | private types, interfaces are only allowed in private extensions. | |
29169 | ||
29170 | 2005-07-04 Eric Botcazou <ebotcazou@adacore.com> | |
29171 | ||
29172 | * decl.c (prepend_attributes) <Pragma_Linker_Constructor>: New case. | |
29173 | <Pragma_Linker_Destructor>: Likewise. | |
29174 | ||
29175 | * einfo.ads (Has_Gigi_Rep_Item): Document Pragma_Linker_Constructor and | |
29176 | Pragma_Linker_Destructor. | |
29177 | ||
29178 | * gigi.h (attr_type): Add ATTR_LINK_CONSTRUCTOR and | |
29179 | ATTR_LINK_DESTRUCTOR. | |
29180 | (static_ctors, static_dtors): New variables. | |
29181 | ||
29182 | * misc.c (gnat_expand_body): Output current function as constructor | |
29183 | and destructor if requested. | |
29184 | ||
29185 | * par-prag.adb: Add processing for pragma Linker_Constructor and | |
29186 | Linker_Destructor. | |
29187 | ||
29188 | * sem_prag.adb (Find_Unique_Parameterless_Procedure): New function | |
29189 | extracted from Check_Interrupt_Or_Attach_Handler. | |
29190 | (Check_Interrupt_Or_Attach_Handler): Invoke it. | |
29191 | Implement pragma Linker_Constructor and Linker_Destructor with the | |
29192 | help of Find_Unique_Parameterless_Procedure. | |
29193 | Replace Name_Alias with Name_Target for pragma Linker_Alias. | |
29194 | ||
da8f5fd9 | 29195 | * snames.h, snames.ads, snames.adb: |
7d300a99 AC |
29196 | Add Name_Linker_Constructor and Name_Linker_Destructor. |
29197 | Add Pragma_Linker_Constructor and Pragma_Linker_Destructor. | |
29198 | * snames.adb: Remove Name_Alias. | |
29199 | ||
29200 | * trans.c: Include cgraph.h. | |
29201 | (build_global_cdtor): New function. | |
29202 | (Compilation_Unit_to_gnu): Build global constructor and destructor if | |
29203 | needed. | |
29204 | (tree_transform) <N_Identifier>: Substitute renaming of view-conversions | |
29205 | of objects too. | |
29206 | (addressable_p) <COMPONENT_REF>: Unconditionally test | |
29207 | DECL_NONADDRESSABLE_P on STRICT_ALIGNMENT platforms. | |
29208 | ||
29209 | * utils.c (process_attributes) <ATTR_LINK_ALIAS>: Do not assemble the | |
29210 | variable if it is external. | |
29211 | ||
29212 | (static_ctors, static_dtors): New global variables. | |
29213 | (process_attributes) <ATTR_LINK_CONSTRUCTOR>: New case. | |
29214 | <ATTR_LINK_DESTRUCTOR>: Likewise. | |
29215 | (end_subprog_body): Chain function as constructor and destructor | |
29216 | if requested. | |
29217 | ||
29218 | * exp_util.adb (Force_Evaluation): Unconditionally invoke | |
29219 | Remove_Side_Effects with Variable_Ref set to true. | |
29220 | (Remove_Side_Effects): Handle scalar types first. Use a renaming | |
29221 | for non-scalar types even if Variable_Ref is true and for class-wide | |
29222 | expressions. | |
29223 | ||
29224 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29225 | ||
29226 | * exp_attr.adb (Mod): Evaluate condition expression with checks off, | |
29227 | to prevent spurious warnings. | |
29228 | ||
29229 | 2005-07-04 Thomas Quinot <quinot@adacore.com> | |
29230 | ||
29231 | * exp_dist.adb (Build_TypeCode_Call): Remove incorrect processing for | |
29232 | Itypes. Itypes are really unexpected there. | |
29233 | (Build_TypeCode_Function): Generalise special processing for Itypes to | |
29234 | handle the case of numeric implicit base types as well as enumerated | |
29235 | ones. | |
29236 | ||
29237 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29238 | ||
29239 | * exp_intr.adb (Expand_Unc_Deallocation): If the designated type is | |
29240 | controlled, indicate the expected type of the dereference that is | |
29241 | created for the call to Deep_Finalize, to prevent spurious errors when | |
29242 | the designated type is private and completed with a derivation from | |
29243 | another private type. | |
29244 | ||
29245 | 2005-07-04 Vincent Celier <celier@adacore.com> | |
29246 | ||
29247 | * make.adb (Change_To_Object_Directory): When unable to change the | |
29248 | current dir to the object directory, output the full path of the | |
29249 | directory. | |
29250 | ||
29251 | 2005-07-04 Matthew Gingell <gingell@adacore.com> | |
29252 | ||
29253 | * Makefile.in: Replace indepsw-linux.adb by indepsw-gnu.adb | |
29254 | ||
29255 | * indepsw-linux.adb: Replace by... | |
29256 | ||
29257 | * indepsw-gnu.adb: ...this new file | |
29258 | ||
29259 | 2005-07-04 Vincent Celier <celier@adacore.com> | |
29260 | ||
29261 | * mlib-prj.adb (Auto_Initialize): New constant String | |
29262 | (SALs_Use_Constructors): New Boolean function | |
29263 | (Build_Library): Call gnatbind with Auto_Initialize switch when | |
29264 | SALs_Use_Constructors returns True. | |
29265 | ||
29266 | * mlib-tgt.ads: Minor reformatting | |
29267 | ||
29268 | * mlib-utl.ads: Minor reformatting | |
29269 | ||
29270 | * opt.ads: (Use_Pragma_Linker_Constructor): New Boolean flag | |
29271 | ||
29272 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29273 | ||
29274 | * par-ch9.adb (P_Task, P_Protected): Indicate that single task and | |
29275 | single protected declarations can have an interface list. | |
29276 | (P_Entry_Declaration): Add handler for Error_Resync, which can be raised | |
29277 | with seriously malformed entry declarations, and lead to compilation | |
29278 | abandoned messages. | |
29279 | ||
29280 | 2005-07-04 Javier Miranda <miranda@adacore.com> | |
29281 | ||
29282 | * par-load.adb: Load the context items in two rounds. | |
29283 | ||
29284 | 2005-07-04 Robert Dewar <dewar@adacore.com> | |
29285 | ||
29286 | * scng.adb: Do not consider Mod used as an attribute to be a keyword | |
29287 | ||
29288 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29289 | Javier Miranda <miranda@adacore.com> | |
29290 | ||
29291 | * sem_ch10.adb (Build_Limited_Views): A type declared with a private | |
29292 | type extension needs a limited view. | |
29293 | Remove previous restriction on private types available through the | |
29294 | limited-view (only tagged private types were previously allowed). | |
29295 | (Install_Withed_Unit): In the code that implements the | |
29296 | legality rule given in AI-377, exclude a child unit with the name | |
29297 | Standard, because it is a homonym of the Standard environment package. | |
29298 | ||
29299 | 2005-07-04 Thomas Quinot <quinot@adacore.com> | |
29300 | ||
29301 | * sem_ch4.adb (Transform_Object_Operation): For an actual that is an | |
29302 | overloaded function call, carry interpretations from the original tree | |
29303 | to the copy. | |
29304 | ||
29305 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29306 | ||
29307 | * sem_ch6.adb (Conforming_Types): If the types are anonymous access | |
29308 | types check whether some designated type is a limited view, and use | |
29309 | the non-limited view if available. | |
29310 | ||
29311 | 2005-07-04 Gary Dismukes <dismukes@adacore.com> | |
29312 | ||
29313 | * sem_eval.adb (Subtypes_Statically_Match): Use the discriminant | |
29314 | constraint of full view of a private view T1 if present, when T2 is a | |
29315 | discriminated full view. | |
29316 | ||
29317 | 2005-07-04 Thomas Quinot <quinot@adacore.com> | |
29318 | ||
29319 | * sem_res.adb (Resolve_Actuals): Do not resolve the expression of an | |
29320 | actual that is a view conversion of a bit packed array reference. | |
29321 | ||
29322 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29323 | ||
29324 | * sem_type.adb (Covers): Verify that Corresponding_Record_Type is | |
29325 | present before checking whether an interface type covers a synchronized | |
29326 | type. | |
29327 | ||
29328 | 2005-07-04 Ed Schonberg <schonberg@adacore.com> | |
29329 | ||
29330 | * sem_util.adb (Is_Object_Reference): An indexed or selected component | |
29331 | whose prefix is an implicit dereference is an object reference. Removes | |
29332 | spurious errors when compiling with -gnatc. | |
29333 | ||
29334 | 2005-07-04 Robert Dewar <dewar@adacore.com> | |
29335 | ||
29336 | PR ada/22039 | |
7d300a99 AC |
29337 | * s-sopco3.ads, s-sopco4.ads, s-sopco5.ads: Minor documentation fix |
29338 | ||
29339 | 2005-07-04 Matthew Gingell <gingell@adacore.com> | |
29340 | ||
29341 | * tracebak.c: Enable tracebacks on ia64 platforms | |
29342 | ||
29343 | 2005-07-04 Vincent Celier <celier@adacore.com> | |
29344 | ||
29345 | * vms_conv.adb (Initialize): Allow multiple ALI files to be given to | |
29346 | the GNAT BIND command, as gnatbind accepts multiples ALI files with | |
29347 | the -L or -n switches. | |
29348 | ||
29349 | 2005-07-04 Vincent Celier <celier@adacore.com> | |
29350 | ||
29351 | * makegpr.adb (Build_Global_Archive): Make sure the list of sources is | |
29352 | correctly computed and the main project data is not modified while | |
29353 | doing so. | |
29354 | (Add_C_Plus_Plus_Link_For_Gnatmake): Always link with the C++ compiler | |
29355 | (Choose_C_Plus_Plus_Link_Process): Do not generate shell script | |
29356 | c++linker as this does not work on some platforms. | |
29357 | ||
29358 | 2005-07-04 Matthew Heaney <heaney@adacore.com> | |
29359 | ||
29360 | * a-convec.ads, a-coinve.ads: Declaration of subtype Extended_Index | |
29361 | was changed. | |
29362 | * a-coinve.adb: Perform constraint checks explicitly. | |
29363 | ||
29364 | 2005-07-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
29365 | Thomas Quinot <quinot@adacore.com> | |
29366 | ||
29367 | * Make-lang.in: (ada/targtyps.o): Add missing TREE_H dependency. | |
29368 | new target gen-soccon. | |
29369 | ||
29370 | 2005-07-04 Robert Dewar <dewar@adacore.com> | |
29371 | ||
29372 | * s-mastop-irix.adb, s-mastop-vms.adb: Minor reformatting | |
29373 | ||
29374 | 2005-07-04 Thomas Quinot <quinot@adacore.com> | |
29375 | ||
29376 | * g-socket.ads (Check_Selector): Minor rewording of comment. | |
29377 | ||
29378 | 2005-07-04 Vincent Celier <celier@adacore.com> | |
29379 | ||
29380 | * vms_data.ads: Add VMS qualifiers for new gnatpp switch --eol= | |
29381 | ||
29382 | 2005-07-04 Thomas Quinot <quinot@adacore.com> | |
29383 | ||
29384 | * gen-soccon.c: Add constants SO_SNDTIMEO and SO_RCVTIMEO. | |
29385 | ||
29386 | 2005-07-04 Sergey Rybin <rybin@adacore.com> | |
29387 | ||
6f7f72f9 | 29388 | * gnat_ugn.texi: Add description of --eol gnatpp option |
7d300a99 AC |
29389 | |
29390 | 2005-07-04 Eric Botcazou <ebotcazou@adacore.com> | |
29391 | Thomas Quinot <quinot@adacore.com> | |
29392 | ||
6f7f72f9 | 29393 | * gnat_rm.texi: Add a note that pragma Unreferenced is not appropriate |
7d300a99 AC |
29394 | if the user wants all calls of a subprogram to be flagged, |
29395 | independently of whether they are made from within the same unit or | |
29396 | another unit. | |
6f7f72f9 EB |
29397 | Mention restriction for pragma Linker_Alias on some platforms. |
29398 | Document pragma Linker_Constructor and Linker_Destructor. | |
29399 | Rewrite documentation of Weak_External, Linker_Section and | |
29400 | Linker_Alias pragmas. | |
7d300a99 | 29401 | |
fc64d83c AC |
29402 | 2005-07-04 Arnaud Charlet <charlet@adacore.com> |
29403 | ||
29404 | * s-stausa.ads, s-stausa.adb: New files. | |
29405 | ||
cb5fee25 KC |
29406 | 2005-06-30 Kelley Cook |
29407 | ||
29408 | * all files: Update FSF address in copyright headers. | |
29409 | * gen-soccon.co (main): Output new FSF address in generated files. | |
29410 | ||
617a1b71 PB |
29411 | 2005-06-28 Paul Brook <paul@codesourcery.com> |
29412 | ||
29413 | * misc.c (gnat_init_gcc_eh): Call default_init_unwind_resume_libfunc. | |
29414 | ||
0adcdb66 AC |
29415 | 2005-06-14 Olivier Hainque <hainque@adacore.com> |
29416 | Eric Botcazou <ebotcazou@adacore.com> | |
29417 | ||
29418 | * s-mastop-irix.adb (Pop_Frame): Revert shorcuts avoiding calls to | |
29419 | exc_unwind, now that we are generating proper .debug_frame output for | |
29420 | that target. | |
29421 | ||
29422 | * tracebak.c: Remove the mips-irix section, as we are now using the | |
29423 | s-mastop based unwinder again. | |
29424 | Under SPARC/Solaris, take into account the stack bias to compute the | |
29425 | frame offset. The stack bias is 0 for the V8 ABI and 2047 for the V9 | |
29426 | ABI. | |
29427 | ||
29428 | 2005-06-14 Doug Rupp <rupp@adacore.com> | |
29429 | ||
29430 | * g-trasym-vms.adb: renamed g-trasym-vms-alpha.adb | |
29431 | ||
29432 | * g-trasym-vms-alpha.adb, g-trasym-vms-ia64.adb: New files | |
29433 | ||
29434 | 2005-06-14 Pascal Obry <obry@adacore.com> | |
29435 | ||
29436 | * a-strhas.ads, a-secain.adb, a-secain.ads, a-rbtgso.ads, a-cgaaso.adb, | |
29437 | a-cgaaso.ads, a-cgarso.adb, a-cgcaso.adb, a-cgarso.ads, a-cgcaso.ads, | |
29438 | a-contai.ads, a-coprnu.ads, a-coprnu.adb: Fix header style (spaces in | |
29439 | package name). | |
29440 | ||
da8f5fd9 AJ |
29441 | * a-intnam-lynxos.ads, a-intnam-unixware.ads, a-intnam-tru64.ads, |
29442 | a-intnam-aix.ads, a-intnam-irix.ads, a-excpol-interix.adb, | |
29443 | a-intnam-hpux.ads, a-intnam-linux.ads, a-intnam-dummy.ads, | |
29444 | a-intnam-os2.ads, a-numaux-libc-x86.ads, a-intnam-interix.ads, | |
0adcdb66 | 29445 | a-intnam-solaris.ads, a-caldel-vms.adb, a-calend-vms.ads, |
da8f5fd9 AJ |
29446 | a-intnam-vms.ads, a-excpol-abort.adb, a-intnam-mingw.ads, |
29447 | a-intnam-vxworks.ads, a-numaux-vxworks.ads, s-osinte-unixware.adb, | |
29448 | s-osinte-unixware.ads, s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, | |
29449 | s-osinte-hpux.ads, s-osinte-solaris-posix.ads, a-intnam-freebsd.ads, | |
29450 | s-osinte-freebsd.adb, s-osinte-freebsd.ads, s-osinte-lynxos.adb, | |
29451 | s-osinte-lynxos.ads, s-tpopsp-lynxos.adb, s-osinte-tru64.adb, | |
29452 | s-osinte-tru64.ads, s-tpopsp-posix-foreign.adb, s-vxwork-alpha.ads, | |
29453 | s-osinte-aix.adb, s-osinte-aix.ads, s-osinte-aix-fsu.ads, | |
29454 | s-osinte-irix.adb, s-osinte-irix.ads, s-interr-sigaction.adb, | |
29455 | s-osinte-irix-athread.ads, s-osinte-hpux-dce.adb, | |
29456 | s-osinte-hpux-dce.ads, s-osinte-posix.adb, s-osinte-linux.ads, | |
29457 | s-vxwork-m68k.ads, s-osinte-linux-fsu.ads, s-vxwork-mips.ads, | |
29458 | s-osinte-dummy.ads, s-interr-dummy.adb, s-osinte-os2.adb, | |
29459 | s-osinte-os2.ads, s-osprim-os2.adb, s-osinte-interix.ads, | |
29460 | s-osprim-unix.adb, s-vxwork-ppc.ads, s-osinte-solaris.adb, | |
29461 | s-osinte-solaris.ads, s-osprim-solaris.adb, s-tpopsp-solaris.adb, | |
29462 | s-vxwork-sparcv9.ads, s-osinte-solaris-fsu.ads, s-interr-vms.adb, | |
29463 | s-osinte-vms.adb, s-osinte-vms.ads, s-osprim-vms.adb, | |
29464 | s-osprim-vms.ads, s-tpopde-vms.adb, s-tpopde-vms.ads, | |
29465 | s-osprim-mingw.adb, s-vxwork-xscale.ads, s-interr-vxworks.adb, | |
29466 | s-osinte-vxworks.adb, s-osinte-vxworks.ads, s-osprim-vxworks.adb, | |
29467 | s-tfsetr-vxworks.adb, s-tpopsp-vxworks.adb, s-intman-posix.adb, | |
29468 | s-osinte-fsu.adb, s-osprim-posix.adb, s-tfsetr-default.adb, | |
29469 | s-tpopsp-posix.adb, s-traces-default.adb, s-trafor-default.adb, | |
0adcdb66 AC |
29470 | s-trafor-default.ads, s-tratas-default.adb, a-numaux-x86.adb, |
29471 | a-numaux-x86.ads, a-astaco.adb, a-astaco.ads, a-caldel.adb, | |
29472 | a-caldel.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads, a-colien.adb, | |
29473 | a-colien.ads, a-colire.adb, a-colire.ads, a-comlin.adb, a-cwila1.ads, | |
29474 | a-cwila9.ads, ada.ads, a-decima.adb, a-diocst.ads, a-direio.adb, | |
29475 | a-dynpri.adb, a-dynpri.ads, a-excpol.adb, a-flteio.ads, a-fwteio.ads, | |
29476 | a-inteio.ads, a-interr.adb, a-intnam.ads, a-intsig.adb, a-intsig.ads, | |
29477 | a-ioexce.ads, a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads, | |
29478 | a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads, a-lliwti.ads, | |
29479 | a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads, a-ngcoty.adb, a-ngelfu.adb, | |
29480 | a-ngelfu.ads, a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads, | |
29481 | a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads, a-nselfu.ads, | |
29482 | a-nucoty.ads, a-nudira.adb, a-nuelfu.ads, a-nuflra.adb, a-numaux.ads, | |
29483 | a-numeri.ads, a-reatim.adb, a-retide.adb, a-retide.ads, a-sequio.adb, | |
29484 | a-sequio.ads, a-sfteio.ads, a-sfwtio.ads, a-siocst.ads, a-siteio.ads, | |
29485 | a-siwtio.ads, a-ssicst.ads, a-ssitio.ads, a-ssiwti.ads, a-stmaco.ads, | |
29486 | a-storio.adb, a-strbou.adb, a-strfix.adb, a-string.ads, a-strmap.adb, | |
29487 | a-strsea.adb, a-strsup.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb, | |
29488 | a-stunau.ads, a-stwibo.adb, a-stwifi.adb, a-stwifi.ads, a-stwima.adb, | |
29489 | a-stwise.adb, a-stwisu.adb, a-suteio.adb, a-suteio.ads, a-swuwti.adb, | |
29490 | a-swuwti.ads, a-teioed.adb, a-ticoau.adb, a-ticoau.ads, a-ticoio.adb, | |
29491 | a-tideau.adb, a-tideio.adb, a-tienau.adb, a-tienio.adb, a-tifiio.adb, | |
29492 | a-tiflio.adb, a-tigeau.adb, a-tigeau.ads, a-tiinio.adb, a-timoau.adb, | |
29493 | a-timoio.adb, a-timoio.ads, a-tiocst.ads, a-titest.adb, a-titest.ads, | |
29494 | a-witeio.adb, a-wtcoau.adb, a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, | |
29495 | a-wtcstr.ads, a-wtdeau.adb, a-wtdeio.adb, a-wtenau.adb, a-wtenio.adb, | |
29496 | a-wtfiio.adb, a-wtflio.adb, a-wtgeau.adb, a-wtinau.adb, a-wtinio.adb, | |
29497 | a-wtinio.ads, a-wtmoau.adb, a-wtmoio.adb, a-wttest.adb, calendar.ads, | |
29498 | dec.ads, dec-io.adb, dec-io.ads, directio.ads, errno.c, g-bubsor.adb, | |
29499 | g-bubsor.ads, g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads, | |
29500 | g-casuti.adb, g-casuti.ads, g-debuti.ads, g-heasor.adb, g-heasor.ads, | |
29501 | g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads, g-htable.adb, | |
29502 | g-htable.ads, g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads, | |
29503 | g-memdum.adb, g-memdum.ads, g-sestin.ads, g-signal.ads, g-signal.adb, | |
29504 | gnat.ads, g-souinf.ads, g-speche.adb, g-speche.ads, g-table.adb, | |
29505 | g-table.ads, g-thread.adb, g-thread.ads, ioexcept.ads, i-vxwoio.adb, | |
29506 | i-vxwoio.ads, math_lib.adb, s-assert.adb, s-assert.ads, s-asthan.ads, | |
da8f5fd9 AJ |
29507 | s-bitops.adb, s-bitops.ads, s-boarop.ads, s-carsi8.adb, s-carsi8.ads, |
29508 | s-carun8.adb, s-carun8.ads, s-casi16.adb, s-casi16.ads, s-casi32.adb, | |
0adcdb66 | 29509 | s-casi32.ads, s-casi64.adb, s-casi64.ads, s-casuti.adb, s-casuti.ads, |
da8f5fd9 | 29510 | s-caun16.adb, s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb, |
0adcdb66 AC |
29511 | s-caun64.ads, s-direio.adb, s-direio.ads, sequenio.ads, s-errrep.adb, |
29512 | s-errrep.ads, s-exnint.adb, s-exnint.ads, s-exnllf.adb, s-exnllf.ads, | |
29513 | s-exnlli.adb, s-exnlli.ads, s-expint.adb, s-expint.ads, s-explli.adb, | |
29514 | s-explli.ads, s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads, | |
29515 | s-expuns.adb, s-expuns.ads, s-fore.adb, s-fore.ads, s-geveop.adb, | |
29516 | s-geveop.ads, s-htable.adb, s-htable.ads, s-imgbiu.adb, s-imgbiu.ads, | |
29517 | s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads, s-imgdec.adb, | |
29518 | s-imgdec.ads, s-imgenu.adb, s-imgenu.ads, s-imgint.adb, s-imgint.ads, | |
29519 | s-imgllb.adb, s-imgllb.ads, s-imglld.adb, s-imglld.ads, s-imglli.adb, | |
29520 | s-imglli.ads, s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads, | |
29521 | s-imgrea.ads, s-imguns.adb, s-imguns.ads, s-imgwiu.adb, s-imgwiu.ads | |
29522 | s-interr.ads, s-io.adb, s-mantis.adb, s-mantis.ads, s-osprim.ads, | |
29523 | s-pack03.adb, s-pack03.ads, s-pack05.adb, s-pack05.ads, s-pack06.adb, | |
29524 | s-pack06.ads, s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads, | |
29525 | s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads, s-pack12.adb, | |
29526 | s-pack12.ads, s-pack13.adb, s-pack13.ads, s-pack14.adb, s-pack14.ads, | |
29527 | s-pack15.adb, s-pack15.ads, s-pack17.adb, s-pack17.ads, s-pack18.adb, | |
29528 | s-pack18.ads, s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads, | |
29529 | s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads, s-pack23.adb, | |
29530 | s-pack23.ads, s-pack24.adb, s-pack24.ads, s-pack25.adb, s-pack25.ads, | |
29531 | s-pack26.adb, s-pack26.ads, s-pack27.adb, s-pack27.ads, s-pack28.adb, | |
29532 | s-pack28.ads, s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads, | |
29533 | s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads, s-pack34.adb, | |
29534 | s-pack34.ads, s-pack35.adb, s-pack35.ads, s-pack36.adb, s-pack36.ads, | |
29535 | s-pack37.adb, s-pack37.ads, s-pack38.adb, s-pack38.ads, s-pack39.adb, | |
29536 | s-pack39.ads, s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads, | |
29537 | s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads, s-pack44.adb, | |
29538 | s-pack44.ads, s-pack45.adb, s-pack45.ads, s-pack46.adb, s-pack46.ads, | |
29539 | s-pack47.adb, s-pack47.ads, s-pack48.adb, s-pack48.ads, s-pack49.adb, | |
29540 | s-pack49.ads, s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads, | |
29541 | s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads, s-pack54.adb, | |
29542 | s-pack54.ads, s-pack55.adb, s-pack55.ads, s-pack56.adb, s-pack56.ads, | |
29543 | s-pack57.adb, s-pack57.ads, s-pack58.adb, s-pack58.ads, s-pack59.adb, | |
29544 | s-pack59.ads, s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads, | |
29545 | s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads, s-scaval.adb, | |
29546 | s-scaval.ads, s-sequio.adb, s-sequio.ads, s-stache.adb, s-stache.ads, | |
29547 | s-stratt.adb, s-stratt.ads, s-strcom.adb, s-strcom.ads, s-strops.adb, | |
da8f5fd9 AJ |
29548 | s-strops.ads, s-taasde.ads, s-tadeca.adb, s-tadeca.ads, s-tadert.adb, |
29549 | s-tadert.ads, s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads, | |
29550 | s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads, s-tasini.adb, | |
29551 | s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads, | |
29552 | s-tasren.ads, s-tasres.ads, s-tassta.adb, s-tassta.ads, s-tasuti.adb, | |
29553 | s-tasuti.ads, s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads, | |
29554 | s-tpoben.adb, s-tpoben.ads, s-tpobop.ads, s-tporft.adb, s-tposen.ads, | |
0adcdb66 AC |
29555 | s-traces.adb, s-traces.ads, s-tratas.adb, s-tratas.ads, s-valint.ads, |
29556 | s-unstyp.ads, s-veboop.adb, s-veboop.ads, s-vector.ads, s-vercon.adb, | |
29557 | s-vercon.ads, s-wchcnv.adb, s-wchcnv.ads, s-wchjis.adb, s-wchjis.ads, | |
29558 | s-wchstw.adb, s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb, | |
29559 | s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb, s-widenu.ads, | |
29560 | s-widlli.adb, s-widlli.ads, s-widllu.adb, s-widllu.ads, s-wwdcha.ads, | |
da8f5fd9 AJ |
29561 | s-wwdenu.adb, s-wwdwch.ads, text_io.ads, s-stchop.ads, s-stchop.adb, |
29562 | s-stchop-vxworks.adb, a-intnam-darwin.ads, s-osinte-darwin.adb, | |
0adcdb66 AC |
29563 | s-osinte-darwin.ads, s-vxwork-x86.ads, a-numaux-darwin.ads, |
29564 | a-numaux-darwin.adb, a-chzla1.ads, a-chzla9.ads, a-lfztio.ads, | |
29565 | a-liztio.ads, a-llfzti.ads, a-llizti.ads, a-sfztio.ads, a-siztio.ads, | |
29566 | a-ssizti.ads, a-stzbou.adb, a-stzfix.adb, a-stzfix.ads, a-stzmap.adb, | |
29567 | a-stzsea.adb, a-stzsup.adb, a-swunau.adb, a-swunau.ads, a-szuzti.adb, | |
29568 | a-szuzti.ads, a-tiunio.ads, a-wwunio.ads, a-ztcoau.adb, a-ztcoau.ads, | |
29569 | a-ztcoio.adb, a-ztcoio.ads, a-ztcstr.ads, a-ztdeau.adb, a-ztdeio.adb, | |
29570 | a-ztenio.adb, a-ztexio.adb, a-ztfiio.adb, a-ztflio.adb, a-ztgeau.adb, | |
29571 | a-ztinau.adb, a-ztinio.adb, a-ztinio.ads, a-ztmoau.adb, a-ztmoio.adb, | |
29572 | a-zttest.adb, a-zzunio.ads, g-utf_32.adb: Fix header style. | |
29573 | "GNU Ada" to GNAT, use proper casing for RUN-TIME. | |
29574 | ||
29575 | 2005-06-14 Jose Ruiz <ruiz@adacore.com> | |
29576 | Arnaud Charlet <charlet@adacore.com> | |
29577 | ||
29578 | * a-sytaco.ads, a-sytaco.adb (Suspension_Object): These objects are no | |
29579 | longer protected objects. They have been replaced by lower-level | |
29580 | suspension objects made up by a mutex and a condition variable (or | |
29581 | their equivalent given a particular OS) plus some internal data to | |
29582 | reflect the state of the suspension object. | |
29583 | (Initialize, Finalize): Add this initialization procedure for | |
29584 | Suspension_Object, which is a controlled type. | |
29585 | (Finalize): Add the finalization procedure for Suspension_Object, | |
29586 | which is a controlled type. | |
29587 | ||
29588 | * a-sytaco-vxworks.ads, a-sytaco-vxworks.adb: Remove this version of | |
29589 | Ada.Synchronous_Task_Control because there is no longer a need for a | |
29590 | VxWorks specific version of this package. Target dependencies | |
29591 | has been moved to System.Task_Primitives.Operations. | |
29592 | ||
29593 | * s-osinte-mingw.ads (pCRITICAL_SECTION): Remove this type which is no | |
29594 | longer needed. | |
29595 | (InitializeCriticalSection, EnterCriticalSection, | |
29596 | LeaveCriticalSection, DeleteCriticalSection): Replace the type | |
29597 | pCriticalSection by an anonymous access type so that we avoid problems | |
29598 | of accessibility to local objects. | |
29599 | ||
29600 | * s-taprop.ads, s-taprop-posix.adb, s-taprop-vxworks.adb, | |
29601 | s-taprop-mingw.adb, s-taprop-vms.adb, s-taprop-solaris.adb, | |
29602 | s-taprop-os2.adb, s-taprop-dummy.adb, s-taprop-hpux-dce.adb, | |
29603 | s-taprop-linux.adb, s-taprop-irix.adb, s-taprop-irix-athread.adb, | |
29604 | s-taprop-tru64.adb, s-taprop-lynxos.adb (Elaboration Code): No longer | |
29605 | set the environment task mask here. | |
29606 | (Current_State): Add this function that returns the state of the | |
29607 | suspension object. | |
29608 | (Set_False): Add this procedure that sets the state of the suspension | |
29609 | object to False. | |
29610 | (Set_True): Add this procedure that sets the state of the suspension | |
29611 | object to True, releasing the task that was suspended, if any. | |
29612 | (Suspend_Until_True): Add this procedure that blocks the calling task | |
29613 | until the state of the object is True. Program_Error is raised if | |
29614 | another task is already waiting on that suspension object. | |
29615 | (Initialize): Add this procedure for initializing the suspension | |
29616 | object. It initializes the mutex and the condition variable which are | |
29617 | used for synchronization and queuing, and it sets the internal state | |
29618 | to False. | |
29619 | (Finalize): Add this procedure for finalizing the suspension object, | |
29620 | destroying the mutex and the condition variable. | |
29621 | ||
29622 | * s-taspri-posix.ads, s-taspri-vxworks.ads, s-taspri-mingw.ads, | |
29623 | s-taspri-vms.ads, s-taspri-solaris.ads, s-taspri-os2.ads, | |
29624 | s-taspri-dummy.ads, s-taspri-hpux-dce.ads, s-taspri-linux.ads, | |
29625 | s-taspri-tru64.ads, s-taspri-lynxos.ads (Suspension_Object): New object | |
29626 | which provides a low-level abstraction (using operating system | |
29627 | primitives) for Ada.Synchronous_Task_Control. | |
29628 | This object is made up by a mutex (for ensuring mutual exclusion), a | |
29629 | condition variable (for queuing threads until the condition is | |
29630 | signaled), a Boolean (State) indicating whether the object is open, | |
29631 | and a Boolean (Waiting) reflecting whether there is a task already | |
29632 | suspended on this object. | |
29633 | ||
29634 | * s-intman.ads, s-intman-irix.adb, s-intman-irix-athread.adb, | |
29635 | s-intman-dummy.adb, s-intman-solaris.adb, s-intman-vms.adb, | |
29636 | s-intman-vms.ads, s-intman-mingw.adb, | |
29637 | (Initialize_Interrupts): Removed, no longer used. | |
29638 | ||
29639 | * s-inmaop-posix.adb, s-inmaop-vms.adb, s-inmaop-dummy.adb, | |
29640 | (Setup_Interrupt_Mask): New procedure. | |
29641 | ||
29642 | * s-intman-vxworks.ads, s-intman-vxworks.adb: Update comments. | |
29643 | ||
29644 | * s-inmaop.ads (Setup_Interrupt_Mask): New procedure | |
29645 | ||
29646 | * s-interr.adb: Add explicit call to Setup_Interrupt_Mask now that | |
29647 | this is no longer done in the body of s-taprop | |
29648 | (Server_Task): Explicitely test for Pending_Action in case | |
29649 | System.Parameters.No_Abort is True. | |
29650 | ||
29651 | * s-taasde.adb: Add explicit call to Setup_Interrupt_Mask now that this | |
29652 | is no longer done in the body of s-taprop | |
29653 | ||
29654 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
29655 | ||
29656 | * system-unixware.ads, system-linux-ia64.ads, system-freebsd-x86.ads, | |
29657 | system-lynxos-ppc.ads, system-lynxos-x86.ads, system-linux-x86_64.ads, | |
29658 | system-tru64.ads, system-aix.ads, system-vxworks-sparcv9.ads, | |
29659 | system-vxworks-xscale.ads, system-solaris-x86.ads, system-irix-o32.ads, | |
29660 | system-irix-n32.ads, system-hpux.ads, system-vxworks-m68k.ads, | |
29661 | system-linux-x86.ads, system-vxworks-mips.ads, system-vxworks-mips.ads, | |
29662 | system-os2.ads, system-interix.ads, system-solaris-sparc.ads, | |
29663 | system-solaris-sparcv9.ads, system-vms.ads, system-mingw.ads, | |
29664 | system-vms-zcx.ads, system-vxworks-ppc.ads, system.ads, | |
29665 | system-darwin-ppc.ads, system-vxworks-x86.ads, system-linux-ppc.ads, | |
29666 | system-linux-hppa.ads, system-vms_64.ads, | |
29667 | system-vxworks-alpha.ads: Minor comment update for | |
29668 | AI-362 (unit is Pure). | |
29669 | ||
29670 | * a-chahan.ads, a-chahan.adb: Move Wide_Wide functions to Conversions | |
29671 | Add pragma Pure_05 for AI-362 | |
29672 | Make remaining conversion functions obsolescent in Ada 95 | |
29673 | ||
29674 | * impunit.adb: Change a-swunha to a-swuwha and a-szunha to a-szuzha | |
29675 | Make Ada.Wide_Characters[.Unicode] available in Ada 95 mode | |
29676 | Add entries for a-wichun and a-zchuni | |
29677 | Add a-widcha a-zchara for AI-395 | |
29678 | Add a-chacon (Ada.Characters.Conversions) to list of Ada 2005 routines | |
29679 | ||
29680 | * Makefile.rtl: Change a-swunha to a-swuwha and a-szunha to a-szuzha | |
29681 | Add entries for a-wichun.o and a-zchuni.o | |
29682 | Entries for a-widcha.o and a-zchara.o | |
29683 | Add entry for a-chacon.o | |
29684 | ||
29685 | * a-ztenau.adb: Add with of Ada.Characters.Conversions | |
29686 | ||
29687 | * a-chacon.ads, a-chacon.adb: New files. | |
29688 | ||
29689 | * a-taside.adb, a-exstat.adb, a-excach.adb: Add warnings off to allow | |
29690 | categorization violations. | |
29691 | ||
29692 | * a-strmap.ads: Add pragma Pure_05 for AI-362 | |
29693 | * a-strmap.ads: Add note on implicit categorization for AI-362 | |
29694 | ||
29695 | * a-tgdico.ads, a-taside.ads: Add pragma Preelaborate_05 for AI-362 | |
29696 | ||
29697 | * par-prag.adb: Dummy entry for pragma Persistent_BSS | |
29698 | Set Ada_Version_Explicit, for implementation of AI-362 | |
29699 | Add processing for pragma Pure_05 and Preelaborate_05 | |
29700 | Add entry for Assertion_Policy pragma | |
29701 | ||
29702 | * sem.adb: Make sure predefined units are compiled with GNAT_Mode true | |
29703 | when needed for proper processing of categorization stuff | |
29704 | ||
da8f5fd9 | 29705 | * sem_cat.adb: |
0adcdb66 AC |
29706 | For several cases, make errors in preealborate units warnings, |
29707 | instead of errors, if GNAT_Mode is set. For AI-362. | |
29708 | ||
29709 | * sem_elab.adb (Check_Elab_Call): Call to non-static subprogram in | |
29710 | preelaborate unit is now warning if in GNAT mode | |
29711 | ||
29712 | * s-stoele.ads: Document AI-362 for pragma preelaborate | |
29713 | ||
29714 | 2005-06-14 Doug Rupp <rupp@adacore.com> | |
29715 | ||
29716 | * s-parame-vms.ads, s-parame-hpux.ads, s-parame-vms-restrict.ads, | |
29717 | s-parame-ae653.ads, s-parame.ads, s-parame-vxworks.ads: | |
29718 | Default_Exception_Msg_Max_Length: new parameter. | |
29719 | ||
29720 | * a-except.ads: (Exception_Msg_Max_Length): Set to | |
29721 | System.Parameters.Default_Exception_Msg_Max_Length | |
29722 | Add pragma Preelaborate_05 for AI-362 | |
29723 | Add warnings off to allow categorization violations for AI-362 | |
29724 | ||
29725 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
29726 | ||
29727 | * gnatsym.adb: Adapt to modification of package Symbols: procedure | |
29728 | Process is now in package Processing. | |
29729 | ||
29730 | * symbols.ads, symbols.adb: | |
29731 | (Processing): New package, containing procedure Process | |
29732 | ||
da8f5fd9 | 29733 | * symbols-vms-alpha.adb: |
0adcdb66 AC |
29734 | Replaced by symbols-vms.adb and symbols-processing-vms-alpha.adb |
29735 | ||
29736 | * symbols-vms.adb, symbols-processing-vms-alpha.adb, | |
29737 | symbols-processing-vms-ia64.adb: New files. | |
29738 | ||
29739 | 2005-06-14 Pascal Obry <obry@adacore.com> | |
29740 | ||
29741 | * mlib-tgt-mingw.adb (Build_Dynamic_Library): Replace the previous | |
29742 | implementation. This new version generates the proper DllMain routine | |
29743 | to initialize the SAL. The DllMain is generated in Ada and compiled | |
29744 | before being added as option to the library build command. | |
29745 | ||
29746 | 2005-06-14 Doug Rupp <rupp@adacore.com> | |
29747 | Pascal Obry <obry@adacore.com> | |
29748 | ||
29749 | * adaint.c (__gnat_to_canonical_file_spec): Check for error returns in | |
29750 | call to decc$translate_vms. | |
29751 | (__gnat_locate_regular_file): Check if the path_val contains quotes. We | |
29752 | need to remove those quotes before catenating the filename. | |
29753 | (__gnat_locate_exec_on_path): improvements to the Win32 section: | |
29754 | * avoid allocating the memory twice for better efficiency; | |
29755 | * allocate 32K buffer for environment expansion as suggested by MSDN; | |
29756 | * prepend ".;" to the path so that current directory is searched too. | |
29757 | ||
29758 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
29759 | ||
29760 | * a-except.adb (Exception_Identity): return Null_Id for null occurrence | |
29761 | instead of raising CE (AI-241) | |
29762 | Add warnings off to allow categorization violations for AI-362 | |
29763 | ||
29764 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
29765 | ||
29766 | * ali-util.adb, gnatbind.adb: Remove references to | |
29767 | Force_RM_Elaboration_Order. | |
29768 | ||
29769 | * switch-b.adb: Remove recognition of -f switch | |
29770 | ||
29771 | 2005-06-14 Pascal Obry <obry@adacore.com> | |
29772 | ||
29773 | * a-stzunb.adb, a-stwiun.adb, a-strunb.adb (Realloc_For_Chunk): New | |
29774 | implementation which is slightly more efficient. | |
29775 | ||
29776 | 2005-06-14 Gary Dismukes <dismukes@adacore.com> | |
29777 | Javier Miranda <miranda@adacore.com> | |
29778 | Ed Schonberg <schonberg@adacore.com> | |
29779 | Hristian Kirtchev <kirtchev@adacore.com> | |
29780 | ||
29781 | * exp_ch4.adb (Expand_Allocator_Expression): When an initialized | |
29782 | allocator's designated type is a class-wide type, and compiling for | |
29783 | Ada 2005, emit a run-time check that the accessibility level of the | |
29784 | type given in the allocator's expression is not deeper than the level | |
29785 | of the allocator's access type. | |
29786 | ||
29787 | (Tagged_Membership): Modified to gives support to abstract interface | |
29788 | types. | |
29789 | ||
29790 | * a-tags.ads, a-tags.adb (type Type_Specific_Data): Add component | |
29791 | Access_Level. | |
29792 | (Descendant_Tag): New predefined function | |
29793 | (Is_Descendant_At_Same_Level): New predefined function | |
29794 | (Get_Access_Level): New private function | |
29795 | (Set_Access_Level): New private procedure | |
29796 | (IW_Membership): New function. Given the tag of an object and the tag | |
29797 | associated with an interface, evaluate if the object implements the | |
29798 | interface. | |
29799 | (Register_Interface_Tag): New procedure used to initialize the table of | |
29800 | interfaces used by the IW_Membership function. | |
29801 | (Set_Offset_To_Top): Initialize the Offset_To_Top field in the prologue | |
29802 | of the dispatch table. | |
29803 | (Inherit_TSD): Modified to copy the table of ancestor tags plus the | |
29804 | table of interfaces of the parent. | |
29805 | (Expanded_Name): Raise Tag_Error if the passed tag equals No_Tag. | |
29806 | (External_Tag): Raise Tag_Error if the passed tag equals No_Tag. | |
29807 | (Parent_Tag): Return No_Tag in the case of a root-level tagged type, | |
29808 | and raise Tag_Error if the passed tag equalis No_Tag, to conform with | |
29809 | Ada 2005 semantics for the new predefined function. | |
29810 | ||
29811 | * exp_attr.adb (Expand_N_Attribute, case Attribute_Input): Generate | |
29812 | call to Descendant_Tag rather than Internal_Tag. | |
29813 | (Expand_N_Attribute, case Attribute_Output): Emit a check to ensure that | |
29814 | the accessibility level of the attribute's Item parameter is not deeper | |
29815 | than the level of the attribute's prefix type. Tag_Error is raised if | |
29816 | the check fails. The check is only emitted for Ada_05. | |
29817 | (Find_Stream_Subprogram): If a TSS exists on the type itself for the | |
29818 | requested stream attribute, use it. | |
29819 | (Expand_N_Attribute_Reference): If the designated type is an interface | |
29820 | then rewrite the referenced object as a conversion to force the | |
29821 | displacement of the pointer to the secondary dispatch table. | |
29822 | (Expand_N_Attribute_Reference, case 'Constrained): Return false if this | |
29823 | is a dereference of an object with a constrained partial view. | |
29824 | ||
29825 | * exp_ch5.adb (Expand_N_Return_Statement): When a function's result | |
29826 | type is a class-wide type, emit a run-time check that the accessibility | |
29827 | level of the returned object is not deeper than the level of the | |
29828 | function's master (only when compiling for Ada 2005). | |
29829 | ||
29830 | * exp_disp.ads, exp_disp.adb (Ada_Actions, Action_Is_Proc, | |
29831 | Action_Nb_Arg): Add entries for new Get_Access_Level and | |
29832 | Set_Access_Level routines in these tables. | |
29833 | (Make_DT): Generate a call to set the accessibility level of the | |
29834 | tagged type in its TSD. | |
29835 | (Make_DT): Code cleanup. The functionality of generating all the | |
29836 | secondary dispatch tables has been moved to freeze_record_type. | |
29837 | (Make_Abstract_Interface_DT): Minor code cleanup. | |
29838 | (Set_All_DT_Position): Code cleanup. As part of the code cleanup | |
29839 | this subprogram implements a new algorithm that provides the | |
29840 | same functionality and it is more clear in case of primitives | |
29841 | associated with abstract interfaces. | |
29842 | (Set_All_Interfaces_DTC_Entity): Removed. As part of the code | |
29843 | clean up, the functionality of this subprogram is now provided | |
29844 | by Set_All_DT_Position. | |
29845 | (Write_DT): New subprogram: a debugging procedure designed to be called | |
29846 | within gdb to display the dispatch tables associated with a tagged | |
29847 | type. | |
29848 | (Collect_All_Interfaces): New subprogram that collects the whole list | |
29849 | of interfaces that are directly or indirectly implemented by a tagged | |
29850 | type. | |
29851 | (Default_Prim_Op_Position): New subprogram that returns the fixed | |
29852 | position in the dispatch table of the default primitive operations. | |
29853 | (Expand_Interface_Actuals): New subprogram to generate code that | |
29854 | displaces all the actuals corresponding to class-wide interfaces to | |
29855 | reference the interface tag of the actual object. | |
29856 | (Expand_Interface_Conversion): New subprogram. Reference the base of | |
29857 | the object to give access to the interface tag associated with the | |
29858 | secondary dispatch table. | |
29859 | (Expand_Interface_Thunk): New subprogram that generates the code of the | |
29860 | thunk. This is required for compatibility with the C+ ABI. | |
29861 | (Make_Abstract_Interface_DT): New subprogram that generate the | |
29862 | declarations for the secondary dispatch tables associated with an | |
29863 | abstract interface. | |
29864 | (Set_All_Interfaces_DTC_Entity): New subprogram that sets the DTC_Entity | |
29865 | attribute for each primitive operation covering interface subprograms | |
29866 | (Expand_Dispatching_Call, Fill_DT_Entry, Make_DT, Set_All_DT_Position): | |
29867 | These subprograms were upgraded to give support to abstract interfaces | |
29868 | ||
29869 | * rtsfind.ads (type RE_Id): Add RE_Descendant_Tag, | |
29870 | RE_Is_Descendant_At_Same_Level, RE_Get_Access_Level, and | |
29871 | RE_Set_Access_Level. | |
29872 | (RE_Unit_Table): Add entries for new Ada.Tags operations. | |
29873 | Add support to call the followig new run-time subprograms: | |
29874 | IW_Membership, Register_Interface_Tag, and Set_Offset_To_Top | |
29875 | ||
29876 | * sem_ch3.adb (Constant_Redeclaration): Allow a deferred constant to | |
29877 | match its full declaration when both have an access definition with | |
29878 | statically matching designated subtypes. | |
29879 | (Analyze_Component_Declaration): Delete commented out code that was | |
29880 | incorrectly setting the scope of an anonymous access component's type. | |
29881 | (Process_Discriminants): Set Is_Local_Anonymous_Access for the type of | |
29882 | an access discriminant when the containing type is nonlimited. | |
29883 | (Make_Incomplete_Type_Declaration): Create an incomplete type | |
29884 | declaration for a record type that includes self-referential access | |
29885 | components. | |
29886 | (Check_Anonymous_Access_Types): Before full analysis of a record type | |
29887 | declaration, create anonymous access types for each self-referential | |
29888 | access component. | |
29889 | (Analyze_Component_Declaration, Array_Type_Declaration): Indicate that | |
29890 | an access component in this context is a Local_Anonymous_Access, for | |
29891 | proper accessibility checks. | |
29892 | (Access_Definition): Set properly the scope of the anonymous access type | |
29893 | created for a stand-alone access object. | |
29894 | (Find_Type_Of_Object): An object declaration may be given with an access | |
29895 | definition. | |
29896 | (Complete_Subprograms_Derivation): New subprogram used to complete | |
29897 | type derivation of private tagged types implementing interfaces. | |
29898 | In this case some interface primitives may have been overriden | |
29899 | with the partial-view and, instead of re-calculating them, they | |
29900 | are included in the list of primitive operations of the full-view. | |
29901 | (Build_Derived_Record_Type): Modified to give support to private | |
29902 | types implemening interfaces. | |
29903 | (Access_Definition): Reject ALL on anonymous access types. | |
29904 | (Build_Derived_Record_Type): In the case of Ada 2005, allow a tagged | |
29905 | type derivation to occur at a deeper accessibility level than the | |
29906 | parent type. | |
29907 | For the case of derivation within a generic body however, disallow the | |
29908 | derivation if the derived type has an ancestor that is a formal type | |
29909 | declared in the formal part of an enclosing generic. | |
29910 | (Analyze_Object_Declaration): For protected objects, remove the check | |
29911 | that they cannot contain interrupt handlers if not declared at library | |
29912 | level. | |
29913 | (Add_Interface_Tag_Components): New subprogram to add the tag components | |
29914 | corresponding to all the abstract interface types implemented by a | |
29915 | record type or a derived record type. | |
29916 | (Analyze_Private_Extension_Declaration, Build_Derived_Record_Type, | |
29917 | Derived_Type_Declaration, Find_Type_Name, Inherit_Components, | |
29918 | Process_Full_View, Record_Type_Declaration): Modified to give | |
29919 | support to abstract interface types | |
29920 | (Collect_Interfaces): New subprogram that collects the list of | |
29921 | interfaces that are not already implemented by the ancestors | |
29922 | (Process_Full_View): Set flag Has_Partial_Constrained_View appropriately | |
29923 | when partial view has no discriminants and full view has defaults. | |
29924 | (Constrain_Access): Reject a constraint on a general access type | |
29925 | if the discriminants of the designated type have defaults. | |
29926 | (Access_Subprogram_Declaration): Associate the Itype node with the inner | |
29927 | full-type declaration or subprogram spec. This is required to handle | |
29928 | nested anonymous declarations. | |
29929 | (Analyze_Private_Extension_Declaration, Build_Derived_Record_Type, | |
29930 | Derived_Type_Declaration, Find_Type_Name, Inherit_Components, | |
29931 | Process_Full_View, Record_Type_Declaration): Modified to give | |
29932 | support to abstract interface types | |
29933 | (Derive_Subprograms): Addition of a new formal to indicate if | |
29934 | we are in the case of an abstact-interface derivation | |
29935 | (Find_Type_Of_Subtype_Indic): Moved from the body of the package | |
29936 | to the specification because it is requied to analyze all the | |
29937 | identifiers found in a list of interfaces | |
29938 | ||
29939 | * debug.adb: Complete documentation of flag "-gnatdZ" | |
29940 | ||
29941 | * exp_ch3.adb: Implement config version of persistent_bss pragma | |
29942 | (Check_Stream_Attributes): Use Stream_Attribute_Available instead of | |
29943 | testing for TSS presence to properly enforce visibility rules. | |
29944 | (Freeze_Record_Type): Code cleanup. Modified to call the subprogram | |
29945 | Make_Abstract_Interfaces_DT to generate the secondary tables | |
29946 | associated with abstract interfaces. | |
29947 | (Build_Init_Procedure): Modified to initialize all the tags | |
29948 | corresponding. | |
29949 | (Component_Needs_Simple_Initialization): Similar to other tags, | |
29950 | interface tags do not need initialization. | |
29951 | (Freeze_Record_Type): Modified to give support to abstract interface | |
29952 | types. | |
29953 | (Expand_N_Object_Declaration): Do not generate an initialization for | |
29954 | a scalar temporary marked as internal. | |
29955 | ||
29956 | * exp_ch6.adb (Add_Simple_Call_By_Copy_Code): Handle properly an | |
29957 | in-out parameter that is a component in an initialization procedure, | |
29958 | whose constraint might depend on discriminants, and that may be | |
29959 | misaligned because of packing or representation clauses. | |
29960 | (Is_Legal_Copy): New predicate to determine whether a possibly | |
29961 | misaligned in-out actual can actually be passed by copy/return. This | |
29962 | is an error in case the type is by_reference, and a warning if this is | |
29963 | the consequence of a DEC import pragma on the subprogram. | |
29964 | (Expand_Call, Freeze_Subprogram): Modified to give support to abstract | |
29965 | interface types | |
29966 | (Expand_Inlined_Call): Mark temporary generated for the return value as | |
29967 | internal, so that no useless scalar normalization is generated for it. | |
29968 | (Expand_N_Subprogram_Declaration): Save unanalyzed body so calls to | |
29969 | null procedure can always be inlined. | |
29970 | (Expand_N_Subprogram_Declaration): If this is the declaration of a null | |
29971 | procedure, generate an explicit empty body for it. | |
29972 | ||
29973 | * exp_util.ads, exp_util.adb (Find_Interface_ADT): New subprogram. | |
29974 | Given a type implementing an interface, returns the corresponding | |
29975 | access_disp_table value. | |
29976 | (Find_Interface_Tag): New subprogram. Given a type implementing an | |
29977 | interface, returns the record component containing the tag of the | |
29978 | interface. | |
29979 | (Find_Interface_Tag): New overloaded subprogram. Subsidiary to the | |
29980 | previous ones that return the corresponding tag and access_disp_table | |
29981 | entities. | |
29982 | (Is_Predefined_Dispatching_Operation): Determines if a subprogram | |
29983 | is a predefined primitive operation. | |
29984 | (Expand_Subtype_From_Expr): If the expression is a selected component | |
29985 | within an initialization procedure, compute its actual subtype, because | |
29986 | the component may depend on the discriminants of the enclosing record. | |
29987 | ||
da8f5fd9 | 29988 | * i-cpp.ads, i-cpp.adb: |
0adcdb66 AC |
29989 | This package has been left available for compatibility with previous |
29990 | versions of the frontend. As part of the new layout this is now a | |
29991 | dummy package that uses declarations available at a-tags.ads | |
29992 | ||
29993 | * par-ch3.adb (P_Identifier_Declarations): Give an error for use of | |
29994 | "constant access" and "aliased [constant] access" when not compiling | |
29995 | with -gnat05. | |
29996 | Suppress Ada 2005 keyword warning if -gnatwY used | |
29997 | (P_Identifier_Declarations): Add support for object declarations with | |
29998 | access definitions. | |
29999 | (Private_Extension_Declaration): Complete the documentation | |
30000 | (P_Derived_Type_Def_Or_Private_Ext_Decl): Fill the inteface_list | |
30001 | attribute in case of private extension declaration | |
30002 | (P_Type_Declaration): Mark as "abstract" the type declarations | |
30003 | corresponding with protected, synchronized and task interfaces | |
30004 | (P_Declarative_Items): "not" and "overriding" are overriding indicators | |
30005 | for a subprogram or instance declaration. | |
30006 | ||
30007 | * sem_ch12.adb (Analyze_Subprogram_Instantiation): Verify that an | |
30008 | instantiation that is a dispatching operation has controlling access | |
30009 | parameters that are null excluding. | |
30010 | Save and restore Ada_Version_Explicit, for implementation of AI-362 | |
30011 | (Validate_Derived_Type_Instance): Add check for abstract interface | |
30012 | types. | |
30013 | (Analyze_Formal_Package): Establish Instantiation source for the copy of | |
30014 | the generic that is created to represent the formal package. | |
30015 | (Analyze_Package_Instantiation): Instantiate body immediately if the | |
30016 | package is a predefined unit that contains inlined subprograms, and | |
30017 | we are compiling for a Configurable_Run_Time. | |
30018 | (Instantiate_Formal_Subprogram): Indicate that null default subprogram | |
30019 | If the program has a null default, generate an empty body for it. | |
30020 | ||
30021 | * sem_ch6.adb, sem_ch9.adb (Analyze_Subprograms_Declaration): Update | |
30022 | error message condition, null procedures are correctly detected now. | |
30023 | (New_Overloaded_Entity): Bypass trivial overriding indicator check | |
30024 | for subprograms in the context of protected types. Instead, the | |
30025 | indicator is examined in Sem_Ch9 while analysing the subprogram | |
30026 | declaration. | |
30027 | (Check_Overriding_Indicator): Check consistency of overriding indicator | |
30028 | on subprogram stubs as well. | |
30029 | (Analyze_Subprogram_Declaration): Diagnose null procedures declared at | |
30030 | the library level. | |
30031 | (Analize_Subprogram_Specification): When analyzing a subprogram in which | |
30032 | the type of the first formal is a concurrent type, replace this type | |
30033 | by the corresponding record type. | |
30034 | (Analyze_Subprogram_Body): Undo the previous work. | |
30035 | (Analyze_Procedure_Call): If the call has the form Object.Op, the | |
30036 | analysis of the prefix ends up analyzing the call itself, after which | |
30037 | we are done. | |
30038 | (Has_Interface_Formals): New subprogram subsidiary to analyze | |
30039 | subprogram_specification that returns true if some non | |
30040 | class-wide interface subprogram is found | |
30041 | (New_Overloaded_Entity): Modified to give support to abstract | |
30042 | interface types | |
30043 | (Conforming_Types): In Ada 2005 mode, conformance checking of anonymous | |
30044 | access to subprograms must be recursive. | |
30045 | (Is_Unchecked_Conversion): Improve the test that recognizes | |
30046 | instantiations of Unchecked_Conversion, and allows them in bodies that | |
30047 | are to be inlined by the front-end. When the body comes from an | |
30048 | instantiation, a reference to Unchecked_Conversion will be an | |
30049 | Expanded_Name, even though the body has not been analyzed yet. | |
30050 | Replace Is_Overriding and Not_Overriding in subprogram_indication with | |
30051 | Must_Override and Must_Not_Override, to better express intent of AI. | |
30052 | (Analyze_Subprogram_Body): If an overriding indicator is given, check | |
30053 | that it is consistent with the overrinding status of the subprogram | |
30054 | at this point. | |
30055 | (Analyze_Subprogram_Declaration): Indicate that a null procedure is | |
30056 | always inlined. | |
30057 | If the subprogram is a null procedure, indicate that it does not need | |
30058 | a completion. | |
30059 | ||
30060 | * sem_disp.adb (Check_Controlling_Type): Give support to entities | |
30061 | available through limited-with clauses. | |
30062 | (Check_Dispatching_Operation): A stub acts like a body, and therefore is | |
30063 | allowed as the last primitive of a tagged type if it has no previous | |
30064 | spec. | |
30065 | (Override_Dispatching_Operation, Check_Dispatching_Operation): Modified | |
30066 | to give support to abstract interface types | |
30067 | ||
30068 | * sem_res.adb (Valid_Conversion): Perform an accessibility level check | |
30069 | in the case where the target type is an anonymous access type of an | |
30070 | object or component (that is, when Is_Local_Anonymous_Access is true). | |
30071 | Prevent the special checks for conversions of access discriminants in | |
30072 | the case where the discriminant belongs to a nonlimited type, since | |
30073 | such discriminants have their accessibility level defined in the same | |
30074 | way as a normal component of an anonymous access type. | |
30075 | (Resolve_Allocator): When an allocator's designated type is a class-wide | |
30076 | type, check that the accessibility level of type given in the | |
30077 | allocator's expression or subtype indication is not statically deeper | |
30078 | than the level of the allocator's access type. | |
30079 | (Check_Discriminant_Use): Diagnose discriminant given by an expanded | |
30080 | name in a discriminant constraint of a record component. | |
30081 | (Resolve_Explicit_Dereference): Do not check whether the type is | |
30082 | incomplete when the dereference is a use of an access discriminant in | |
30083 | an initialization procedure. | |
30084 | (Resolve_Type_Conversion): Handle conversions to abstract interface | |
30085 | types. | |
30086 | (Valid_Tagged_Conversion): The conversion of a tagged type to an | |
30087 | abstract interface type is always valid. | |
30088 | (Valid_Conversion): Modified to give support to abstract interface types | |
30089 | (Resolve_Actuals): Enable full error reporting on view conversions | |
30090 | between unrelated by_reference array types. | |
30091 | The rule for view conversions of arrays with aliased components is | |
30092 | weakened in Ada 2005. | |
30093 | Call to obsolescent subprogram is now considered to be a violation of | |
30094 | pragma Restrictions (No_Obsolescent_Features). | |
30095 | (Check_Direct_Boolean_Operator): If the boolean operation has been | |
30096 | constant-folded, there is nothing to check. | |
30097 | (Resolve_Comparison_Op, Resolve_Equality_Op, Resolve_Boolean_Op): Defer | |
30098 | check on possible violation of restriction No_Direct_Boolean_Operators | |
30099 | until after expansion of operands, to prevent spurious errors when | |
30100 | operation is constant-folded. | |
30101 | ||
30102 | * sem_type.ads, sem_type.adb (Covers, Intersect_Types, Specific_Type, | |
30103 | Has_Compatible_Type): Modified to give support to abstract interface | |
30104 | types. | |
30105 | (Interface_Present_In_Ancestor): New function to theck if some ancestor | |
30106 | of a given type implements a given interface | |
30107 | ||
30108 | * sem_ch4.adb (Analyze_Call): Handle properly an indirect call whose | |
30109 | prefix is a parameterless function that returns an access_to_procedure. | |
30110 | (Transform_Object_Operation): Handle properly function calls of the | |
30111 | form Obj.Op (X), which prior to analysis appear as indexed components. | |
30112 | (Analyze_One_Call): Complete the error notification to help new Ada | |
30113 | 2005 users. | |
30114 | (Analyze_Allocator): For an allocator without an initial value, where | |
30115 | the designated type has a constrained partial view, a discriminant | |
30116 | constraint is illegal. | |
30117 | ||
30118 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30119 | ||
30120 | * a-textio.adb (Set_Col): Fix two errors noticed recently, having to | |
30121 | do with treatment of Set_Col when positioned at end of line character. | |
30122 | ||
30123 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30124 | ||
30125 | * atree.adb: (Elist*): Protect against uninitialized field | |
30126 | ||
30127 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30128 | ||
30129 | * checks.adb (Install_Null_Excluding_Check): Do not generate checks | |
30130 | for an attribute reference that returns an access type. | |
30131 | (Apply_Discriminant_Check): No need for check if (designated) type has | |
30132 | constrained partial view. | |
30133 | ||
30134 | (Apply_Float_Conversion_Check): Generate a short-circuit expression for | |
30135 | both bound checks, rather than a conjunction. | |
30136 | (Insert_Valid_Check): If the expression is an actual that is an indexed | |
30137 | component of a bit-packed array, force expansion of the packed element | |
30138 | reference, because it is specifically inhibited elsewhere. | |
30139 | ||
30140 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30141 | ||
30142 | * clean.adb (Clean_Project): Correctly delete executable specified as | |
30143 | absolute path names. | |
30144 | ||
30145 | * make.adb (Gnatmake): Allow relative executable path names with | |
30146 | directory information even when project files are used. | |
30147 | (Change_To_Object_Directory): Fail gracefully when unable to change | |
30148 | current working directory to object directory of a project. | |
30149 | (Gnatmake): Remove exception handler that could no longer be exercized | |
30150 | (Compile_Sources.Compile): Use deep copies of arguments, as some of them | |
30151 | may be deallocated by Normalize_Arguments. | |
30152 | (Collect_Arguments): Eliminate empty arguments | |
30153 | ||
30154 | * gnatcmd.adb (All_Projects): New Boolean flag, initialized to False, | |
30155 | and set to True when -U is used for GNAT PRETTY or GNAT METRIC. | |
30156 | (Check_Project): Return False when Project is No_Project. Return True | |
30157 | when All_Projects is True. | |
30158 | (GNATCmd): Recognize switch -U for GNAT PRETTY and GNAT METRIC and set | |
30159 | All_Projects to True. | |
30160 | Minor reformatting | |
30161 | ||
30162 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30163 | Javier Miranda <miranda@adacore.com> | |
30164 | Thomas Quinot <quinot@adacore.com> | |
30165 | Robert Dewar <dewar@adacore.com> | |
30166 | Hristian Kirtchev <kirtchev@adacore.com> | |
30167 | Gary Dismukes <dismukes@adacore.com> | |
30168 | ||
30169 | * einfo.ads, einfo.adb (Is_Local_Anonymous_Access): New flag on | |
30170 | anonymous access types, to indicate that the accessibility level of | |
30171 | the type is determined by that of the enclosing declaration. | |
30172 | (Has_Persistent_BSS): New flag | |
30173 | (Set_Is_Primitive_Wrapper): Upgrade the barrier to allow the usage | |
30174 | of this attribute with functions. | |
30175 | (Is_Primitive_Wrapper): Remove the barrier. | |
30176 | (Has_Specified_Stream_Input, Has_Specified_Stream_Output, | |
30177 | Has_Specified_Stream_Read, Has_Specified_Stream_Write): | |
30178 | New subprograms. | |
30179 | (Set_Has_Specified_Stream_Input, Set_Has_Specified_Stream_Output, | |
30180 | Set_Has_Specified_Stream_Read, Set_Has_Specified_Stream_Write): | |
30181 | New subprograms. | |
30182 | (Is_Pure_Unit_Access_Type): New flag | |
30183 | (Abstract_Interfaces): Complete the assertion to cover all usages. | |
30184 | (Set_Is_Interface): Complete the assertion to cover all usages. | |
30185 | (Is_Primitive_Wrapper): New attribute. | |
30186 | (Is_Obsolescent): Now applies to all entities (though it is only set | |
30187 | for subprograms currently) | |
30188 | New flag: Has_Constrained_Partial_View, to implemente Ada 2005 AI-363, | |
30189 | which solves various problems concerning access subtypes. | |
30190 | (Has_Persistent_BSS): New flag | |
30191 | (Is_Primitive_Wrapper, Set_Primitive_Wrapper): Code cleanup. | |
30192 | Remove these subprograms because this attribute is currently | |
30193 | not used. | |
30194 | New entity flags: | |
30195 | Has_Specified_Stream_Input (Flag190) | |
30196 | Has_Specified_Stream_Output (Flag191) | |
30197 | Has_Specified_Stream_Read (Flag192) | |
30198 | Has_Specified_Stream_Write (Flag193) | |
30199 | Present in all type and subtype entities. Set for a given view if the | |
30200 | corresponding stream-oriented attribute has been defined by an | |
30201 | attribute definition clause. When such a clause occurs, a TSS is set | |
30202 | on the underlying full view; the flags are used to track visibility of | |
30203 | the attribute definition clause for partial or incomplete views. | |
30204 | (Is_Pure_Unit_Access_Type): New flag | |
30205 | Clarify use of Is_Internal. | |
30206 | (Is_Primitive_Wrapper): New attribute present in primitive subprograms | |
30207 | internally generated to wrap the invocation of tasks and protected | |
30208 | types that implement interfaces. | |
30209 | (Implementation_Base_Type): Documentation correction | |
30210 | (Is_Obsolescent): Now applies to all entities (though it is only set | |
30211 | for subprograms currently) | |
30212 | New flag: Has_Constrained_Partial_View, to implement Ada 2005 AI-363, | |
30213 | which solves various problems concerning access subtypes. | |
30214 | ||
30215 | * exp_ch9.adb (Type_Conformant_Parameters): Introduce mode conformance | |
30216 | for examined parameters. Identify unequal parameter list lengths as | |
30217 | non-conformant parameters. | |
30218 | (Overriding_Possible): Do not check for "All" qualifier in declaration | |
30219 | of controlling access parameter, following prescription of AI-404. | |
30220 | (Build_Entry_Wrapper_Spec, Build_Entry_Wrapper_Body): New subprograms | |
30221 | that build the procedure body that wraps an entry invocation | |
30222 | (Build_Corresponding_Record, Build_Protected_Sub_Specification, | |
30223 | Expand_N_Protected_Body, Expand_N_Protected_Type_Declaration, | |
30224 | Expand_N_Task_Body, Expand_N_Task_Type_Declaration): Modified to | |
30225 | give support to abstract interface types | |
30226 | ||
30227 | * freeze.adb (Freeze_Entity): Issue error message if | |
30228 | Is_Pure_Unit_Access_Type set, unless we are in Ada 2005 mode and the | |
30229 | type has no storage pool (Ada 2005) AI-366. | |
30230 | Also modified to give support to abstract interface types | |
30231 | (Freeze_Subprogram): Issue an error for a dispatching subprogram with an | |
30232 | Inline_Always pragma. | |
30233 | ||
30234 | * par-ch9.adb (P_Task_Items): Reserved words "not" or "overriding" may | |
30235 | now begin an entry declaration. | |
30236 | (P_Entry_Or_Subprogram_With_Indicator): New procedure in | |
30237 | P_Protected_Operation_Declaration_Opt. Parse an entry declaration or | |
30238 | a subprogram declaration preceded by an overriding indicator. | |
30239 | (P_Protected_Operation_Declaration_Opt): Add case for parsing entry | |
30240 | declarations or subprogram declarations preceded by reserved words | |
30241 | "not" or "overriding". | |
30242 | (P_Entry_Declaration): Update comment. Parse and check overriding | |
30243 | indicator, set semantic flags of entry declarations. | |
30244 | (P_Task): New error message in case of private applied | |
30245 | to a task type declaration. | |
30246 | (P_Protected): New error message in case of private applied | |
30247 | to a task type declaration. | |
30248 | ||
30249 | * sem_ch7.adb (Preserve_Full_Attributes): Modified to handle the case | |
30250 | in which the full view of a type implementing an interface is a | |
30251 | concurrent type. | |
30252 | (Has_Overriding_Pragma): Remove obsolete implementation of AI-218. | |
30253 | Declare_Inherited_Private_Subprograms): If an explicit operation | |
30254 | overrides an operation that is inherited in the private part, mark the | |
30255 | explicit one as overriding, to enable overriding indicator checks. | |
30256 | (Preserve_Full_Attributes): Propagate Is_Unchecked_Union attribute from | |
30257 | full view to partial view, to simplify handling in back-end. | |
30258 | ||
30259 | * sprint.adb: Print interface lists where needed: derived types, | |
30260 | protected types, task types. | |
30261 | output "is null" for null procedures. Part of implementation of | |
30262 | ||
30263 | * sem_cat.adb (Validate_Access_Type_Declaration): Implement AI-366 | |
30264 | relaxation of rules for access types in pure, shared passive partitions. | |
30265 | ||
30266 | * exp_strm.adb (Build_Mutable_Record_Read_Procedure): Reorganize to | |
30267 | first read discriminants into temporary objects, performing checks on | |
30268 | the read values, then possibly performing discriminant checks on the | |
30269 | actual (if it is constrained), and only finally reading the components | |
30270 | into a constrained temporary object. | |
30271 | (Build_Elementary_Input_Call): Adjust the specific circuitry for the | |
30272 | case of reading discriminants of a mutable record type to recognize | |
30273 | the new form of the code generated by | |
30274 | Build_Mutable_Record_Read_Procedure. | |
30275 | ||
30276 | * exp_tss.ads, exp_tss.adb (Make_Init_Proc_Name): Reimplement in terms | |
30277 | of a simple call to Make_TSS_Name. | |
30278 | (Make_TSS_Name_Local): Add the TSS name as the last thing in the name | |
30279 | buffer, in order for Is_TSS to work correctly on local TSS names. | |
30280 | ||
30281 | * sem_attr.ads, sem_attr.adb (Resolve_Attribute, case 'Access): Use flag | |
30282 | Is_Local_Anonymous_Access to check legaliy of attributes in the | |
30283 | context of access components and stand-alone access objects. | |
30284 | (Stream_Attribute_Available): In Ada 95 mode, a stream attribute is | |
30285 | treated as available for a limited private type if there is an | |
30286 | attribute_definition_clause that applies to its full view, but not in | |
30287 | other cases where the attribute is available for the full view | |
30288 | (specifically, the sole fact that the full view is non-limited does not | |
30289 | make the attribute available for the partial view). | |
30290 | (Build_Access_Subprogram_Type): Diagnose attempt to apply 'access to a | |
30291 | non-overloaded intrinsic subprogram. | |
30292 | (Check_Stream_Attribute): Reject an attribute reference for an | |
30293 | unavailable stream attribute even if the prefix is not a limited type | |
30294 | (case of a 'Input attribute reference for an abstract, non-classwide | |
30295 | type) | |
30296 | (Stream_Attribute_Available): New function to determine whether a stream | |
30297 | attribute is available at a place. | |
30298 | (Check_Attribute): Use Stream_Attribute_Available instead of just | |
30299 | testing for TSS presence on the implementation base type. | |
30300 | (Analyze_Attribute): Modified to give support to task interfaces. | |
30301 | (Analyze_Access_Attribute): Add error check for use of an Access (or | |
30302 | Unrestricted_Access) attribute with a subprogram marked as | |
30303 | Inline_Always. | |
30304 | (Analyze_Attribute, case Attribute_Address): Add error check for use of | |
30305 | an Address attribute with a subprogram marked as Inline_Always. | |
30306 | Update Eval_Attribute to handle new value of Width from AI-395 | |
30307 | ||
30308 | * sem_ch13.adb (Analyze_Stream_TSS_Definition): New subprogram. | |
30309 | (Analyze_Attribute_Definition_Clause, cases Input, Output, Read, Write): | |
30310 | Factor common code across the stream-oriented attribute circcuits into | |
30311 | a new subprogram, Analyze_Stream_TSS_Definition. The new uniform | |
30312 | processing is functionally identical to the previous duplicated one, | |
30313 | except that an expression that denotes an abstract subprogram will now | |
30314 | be rejected, as mandated by AI-195 item 5. | |
30315 | ||
30316 | * sem_util.ads, sem_util.adb (Type_Access_Level): Use flag | |
30317 | Is_Local_Anonymous_Access to apply accessibility checks to access | |
30318 | components and stand-alone access objects. | |
30319 | (Has_Discriminant_Dependent_Constraint): Moved to spec for use | |
30320 | elsewhere. | |
30321 | (Is_Potentially_Persistent_Type): New function | |
30322 | (Is_Dependent_Component_Of_Mutable_Object): If the enclosing object is | |
30323 | a heap-object whose type has a constrained partial view, the object is | |
30324 | unconstrained and the component may depend on a discriminant, making its | |
30325 | renaming illegal. | |
30326 | ||
30327 | * sinfo.ads, sinfo.adb | |
30328 | (Must_Not_Override): Flag applicable to N_Entry_Declaration. | |
30329 | (Must_Override): Flag applicable to N_Entry_Declaration. | |
30330 | Indicate that interface_list can appear in single task and single | |
30331 | protected declarations. | |
30332 | Replace Is_Overriding and Not_Overriding with Must_Override and | |
30333 | Must_Not_Override, to better express intent of AI. | |
30334 | Is_Overriding, Not_Overriding: Ada2005 flags that indicate the presence | |
30335 | of an overriding indicator in a subprogram or instance. | |
30336 | Ada 2005 (AI-248) Null_Present can appear in a procedure specification. | |
30337 | Add the overriding indicator [[not] overriding] construct to the | |
30338 | following grammar productions: | |
30339 | ENTRY_DECLARATION | |
30340 | GENERIC_INSTANTIATION | |
30341 | SUBPROGRAM_SPECIFICATION | |
30342 | ||
30343 | * par-ch10.adb (P_Compilation_Unit): Subprogram declaration or body | |
30344 | can start with an overriding indicator. | |
30345 | ||
30346 | * par-ch6.adb (P_Subprogram): Recognize overriding indicator, and set | |
30347 | flags accordingly on subrogram specifications or instances. | |
30348 | ||
da8f5fd9 | 30349 | * sem_ch8.adb: |
0adcdb66 AC |
30350 | (Analyze_Subprogram_Renaming): For a renaming_as_body, verify that the |
30351 | overriding_indicator, if present, is consistent with status of spec. | |
30352 | Improve error message for null-excluding checks on controlling access | |
30353 | parameters. | |
30354 | (Check_In_Previous_With_Clause): Protect the frontend against | |
30355 | previously reported critical errors in the context clauses. | |
30356 | Save and restore Ada_Version_Explicit, for implementation of AI-362 | |
30357 | (Analyze_Subprogram_Renaming): If the new entity is a dispatching | |
30358 | operation verify that controlling formals of the renamed entity that | |
30359 | are access parameters are explicitly non-null. | |
30360 | (Find_Expanded_Name): Improve error message when prefix is an illegal | |
30361 | reference to a private child unit. | |
30362 | ||
30363 | * exp_imgv.adb, s-imgwch.ads, s-imgwch.adb, s-valwch.adb, | |
da8f5fd9 | 30364 | s-valwch.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdwch.adb: |
0adcdb66 AC |
30365 | Rewrite to correspond to new wide character names in AI-395 |
30366 | ||
6f7f72f9 EB |
30367 | * par-ch12.adb (P_Formal_Subprogram_Declaration): Recognize null |
30368 | default procedures. | |
0adcdb66 AC |
30369 | |
30370 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30371 | Robert Dewar <dewar@adacore.com> | |
30372 | ||
30373 | * errout.ads, errout.adb (Error_Msg_NW): Only emit warning on user | |
30374 | code, not on the bodies of predefined operations, to cut down on | |
30375 | spurious noise. | |
30376 | ||
30377 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30378 | ||
30379 | * exp_aggr.adb (Aggr_Size_OK): An array with no components can always | |
30380 | be expanded in place. The size computation does not require a | |
30381 | subtraction, which would raise an exception on a compiler built with | |
30382 | assertions when the upper bound is Integer'first. | |
30383 | (Flatten): For an array of composite components, take into account the | |
30384 | size of the components to determine whether it is safe to expand the | |
30385 | array into a purely positional representation. | |
30386 | ||
30387 | 2005-06-14 Thomas Quinot <quinot@adacore.com> | |
30388 | ||
30389 | * exp_ch2.adb (Param_Entity): Take the case of an expanded_name | |
30390 | denoting a formal parameter into account. | |
30391 | ||
30392 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30393 | ||
30394 | * exp_ch7.adb (Find_Node_To_Be_Wrapped): If the node appears within | |
30395 | the entry_call alternative of a conditional entry call, wrap the | |
30396 | conditional entry call itself. | |
30397 | ||
30398 | 2005-06-14 Nicolas Setton <setton@adacore.com> | |
30399 | Ed Schonberg <schonberg@adacore.com> | |
30400 | ||
30401 | * exp_dbug.ads, exp_dbug.adb (Get_Variant_Part): Fix the encoding of | |
30402 | the "simple_choice" member in a variant record, in accordance with the | |
30403 | description in the package spec: the information output for a constant | |
30404 | should be "S number", not "SS number". | |
30405 | (Get_Encoded_Name): Return at once if not generating code. Avoids name | |
30406 | overflow problem when compiling with -gnatct, for ASIS/gnatmetrics. | |
30407 | ||
30408 | 2005-06-14 Thomas Quinot <quinot@adacore.com> | |
30409 | ||
30410 | * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies): For an | |
30411 | RACW without any primitives, do not generate the if statement for | |
30412 | dispatching by name in the PolyORB/DSA case, as it would be malformed | |
30413 | (it would have an Elsif_Parts list that is not No_List, but with a | |
30414 | length of 0). | |
30415 | ||
30416 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30417 | ||
30418 | * exp_intr.adb, par-ch5.adb: Minor fix to error message text | |
30419 | ||
30420 | 2005-06-14 Jose Ruiz <ruiz@adacore.com> | |
30421 | ||
30422 | * fe.h: Add entry for Opt.Exception_Locations_Suppressed so that gigi | |
30423 | can determine whether pragma Suppress_Exception_Locations is in effect. | |
30424 | ||
30425 | * utils2.c (build_call_raise): Do not pass the file name to the | |
30426 | exception handler if pragma Suppress_Exception_Locations is in effect. | |
30427 | (build_allocator): Add and process arg IGNORE_INIT_TYPE. | |
30428 | ||
30429 | 2005-06-14 Emmanuel Briot <briot@adacore.com> | |
30430 | ||
30431 | * g-debpoo.adb (Deallocate, Dereference): Improve output. | |
30432 | ||
30433 | 2005-06-14 Nicolas Roche <roche@adacore.com> | |
30434 | ||
30435 | * g-diopit.adb (Wildcard_Iterator): Return directly if Path is equal | |
30436 | to "" | |
30437 | (Next_Level): Fix minor bug in handling of ../dir case | |
30438 | (Read): Add dir separator to Directory name so that "" is understood as | |
30439 | "/" | |
30440 | ||
30441 | 2005-06-14 Pascal Obry <obry@adacore.com> | |
30442 | ||
30443 | * g-dynhta.ads, g-dynhta.adb (Reset): Free the table itself after | |
30444 | releasing the items. | |
30445 | ||
30446 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30447 | Cyrille Comar <comar@adacore.com> | |
30448 | ||
30449 | * g-os_lib.ads, g-os_lib.adb (Non_Blocking_Spawn): Two new versions | |
30450 | with output file descriptor and with output file name. | |
30451 | (Dup, Dup2): Now global procedures as they are used by two subprograms | |
30452 | (Copy): Allocate the 200K buffer on the heap rather than on the stack. | |
30453 | ||
30454 | 2005-06-14 Thomas Quinot <quinot@adacore.com> | |
30455 | ||
30456 | PR ada/6717 | |
0adcdb66 AC |
30457 | * g-socket.ads, g-socket.adb (Inet_Addr): Special case the all-ones |
30458 | broadcast address. | |
30459 | (Create_Selector): Bind listening socket used to create the signalling | |
30460 | socket pair to 127.0.0.1 to limit the scope for 'theft' of connection. | |
30461 | Set listen backlog to 1 to ensure that we detect socket theft by a | |
30462 | failure of our own connect(2) call. | |
30463 | (Check_Selector): Improve documentation of the selector mechanism. | |
30464 | (Broadcast_Inet_Addr): New constant. | |
30465 | ||
30466 | 2005-06-14 Gary Dismukes <dismukes@adacore.com> | |
30467 | ||
30468 | * layout.adb (Discrimify): Remove resetting of Vtype to the underlying | |
30469 | type which turns out to be an incomplete and incorrect fix. | |
30470 | (Layout_Array_Type): Use Underlying_Type when checking whether the scope | |
30471 | of the type is declared in a record (for determination of insertion | |
30472 | type). | |
30473 | (SO_Ref_From_Expr): Test whether Vtype denotes a partial or full view of | |
30474 | a private type and ensure that the primary entity is used for the type | |
30475 | of the newly created function's V formal by taking the Etype of the | |
30476 | view. | |
30477 | ||
30478 | 2005-06-14 Javier Miranda <miranda@adacore.com> | |
30479 | Jose Ruiz <ruiz@adacore.com> | |
30480 | Robert Dewar <dewar@adacore.com> | |
30481 | Ed Schonberg <schonberg@adacore.com> | |
30482 | ||
30483 | * lib-load.ads, lib-load.adb (Load_Unit): Addition of a new parameter | |
30484 | that indicates if we are parsing a compilation unit found in a | |
30485 | limited-with clause. | |
30486 | It is use to avoid the circularity check. | |
30487 | ||
30488 | * par.ads, par.adb (Par): Addition of a new parameter to indicate if | |
30489 | we are parsing a compilation unit found in a limited-with clause. This | |
30490 | is use to avoid the circularity check. | |
30491 | ||
30492 | * par-load.adb (Load): Indicate Lib.Load_Unit if we are loading the | |
30493 | unit as a consequence of parsing a limited-with clause. This is used | |
30494 | to avoid the circularity check. | |
30495 | ||
30496 | * sem_ch10.adb: Suppress Ada 2005 unit warning if -gnatwY used | |
30497 | (Analyze_Context): Limited-with clauses are now allowed | |
30498 | in more compilation units. | |
30499 | (Analyze_Subunit_Context, Check_Parent): Protect the frontend | |
30500 | againts previously reported critical errors in context clauses | |
30501 | (Install_Limited_Withed_Unit): Code cleanup plus static detection | |
30502 | of two further errors: renamed subprograms and renamed packages | |
30503 | are not allowed in limited with clauses. | |
30504 | (Install_Siblings): Do not install private_with_clauses on the package | |
30505 | declaration for a non-private child unit. | |
30506 | (Re_Install_Parents): When a parent of the subunit is reinstalled, | |
30507 | reset visibility of child units properly. | |
30508 | (Install_Withed_Unit): When a child unit appears in a with_clause of its | |
30509 | parent, it is immediately visible. | |
30510 | ||
30511 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30512 | Emmanuel Briot <briot@adacore.com> | |
30513 | ||
30514 | * lib-xref.ads, lib-xref.adb (Generate_Definition): Treat any entity | |
30515 | declared within an inlined body as referenced, to prevent spurious | |
30516 | warnings. | |
30517 | (Output_One_Ref): If an entity renames an array component, indicate in | |
30518 | the ALI file that this aliases (renames) the array. Capture as well | |
30519 | function renamings that rename predefined operations. | |
30520 | Add information about generic parent for package and subprogram | |
30521 | instances. | |
30522 | (Get_Type_Reference): For a subtype that is the renaming of an actual in | |
30523 | an instantiation, use the first_subtype to ensure that we don't generate | |
30524 | cross-reference information for internal types. | |
30525 | For objects and parameters of a generic private type, retain the '*' | |
30526 | indicator to distinguish such an entity from its type. | |
30527 | ||
6f7f72f9 EB |
30528 | * ali.ads (Xref_Entity_Record): New fields Iref_File_Num and Iref_Line, |
30529 | to store information about instantiated entities. | |
0adcdb66 | 30530 | |
6f7f72f9 EB |
30531 | * ali.adb (Scan_ALI): Add support for parsing the reference to the |
30532 | generic parent | |
0adcdb66 | 30533 | |
6f7f72f9 EB |
30534 | * xref_lib.adb (Skip_To_Matching_Closing_Bracket): New subprogram |
30535 | (Parse_Identifier_Info, Parse_Token): Add support for the generic parent | |
30536 | information. | |
0adcdb66 AC |
30537 | |
30538 | 2005-06-10 Doug Rupp <rupp@adacore.com> | |
30539 | Arnaud Charlet <charlet@adacore.com> | |
30540 | Olivier Hainque <hainque@adacore.com> | |
30541 | Jose Ruiz <ruiz@adacore.com> | |
30542 | ||
30543 | * Make-lang.in: Add initialize.o when needed. | |
30544 | Remove obsolete references to RT_FLAGS. | |
30545 | Add missing dependencies for sdefault.o | |
30546 | ||
30547 | * initialize.c: New file. | |
30548 | ||
30549 | * init.c [VMS] Declare ADA$ externs weak to fix build problem in IVMS. | |
30550 | [VMS] cond_signal_table: Fix problem in declaration. | |
30551 | [VMS] __gnat_error_handler: rewrite. | |
30552 | Move all __gnat_initialize() routines to initialize.c | |
30553 | Specialize the former "hpux" section to "hppa hpux", as this is what the | |
30554 | section really is here for and we now have other hpux ports that need | |
30555 | different contents. | |
30556 | (__gnat_adjust_context_for_raise) i386-linux: First version of this | |
30557 | function for this target. Adjust PC by one in the machine context. This | |
30558 | adjustment was previously done in the MD_FALLBACK_FRAME_STATE_FOR, but | |
30559 | it is more reliable to do that in the signal handler itself. | |
30560 | (__gnat_install_handler) i386-linux: Set SA_SIGINFO in the sigaction | |
30561 | flags, so that the handler is passed the context structure to adjust | |
30562 | prior to the raise. | |
30563 | (__gnat_error_handler) i386-linux: Adjust the signature to match what a | |
30564 | SA_SIGINFO sigaction should look like. Call | |
30565 | __gnat_adjust_context_for_raise before actually raising. Cleanup unused | |
30566 | Machine_State_Operations stuff. | |
30567 | Add conditional code so that the x86_64 is also supported. | |
30568 | ||
30569 | 2005-06-14 Pascal Obry <obry@adacore.com> | |
30570 | ||
30571 | * mdll.adb (Get_Dll_Name): New routine that returns the DLL name given | |
30572 | the library name. | |
30573 | ||
30574 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30575 | ||
30576 | * opt.ads, opt.adb: New flags for persistent_bss mode | |
30577 | Add Ada_Version_Explicit, for implementation of AI-362 | |
30578 | Add Assertions_Enabled_Config and associated handling | |
30579 | Needed since setting can be changed with Assertion_Policy pragma | |
30580 | Add new flag Warn_On_Ada_2005_Compatibility | |
30581 | ||
30582 | * switch-c.adb: Recognize -gnatwy/Y | |
30583 | Set Ada_Version_Explicit, for implementation of AI-362 | |
30584 | The -gnatg switch now includes -gnatyu | |
30585 | ||
30586 | * usage.adb: Add -gnatwy/Y | |
30587 | Remove wrong asterisk on -gnatwX line | |
30588 | Add line for -gnatyu switch | |
30589 | ||
30590 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30591 | ||
30592 | * osint.adb (Add_Default_Search_Dirs): Put source and object | |
30593 | directories of project files before directories coming from | |
30594 | ADA_INCLUDE_PATH and ADA_OBJECTS_PATH. | |
30595 | ||
30596 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30597 | ||
30598 | PR ada/15613 | |
0adcdb66 AC |
30599 | * par-ch2.adb (Scan_Pragma_Argument): New procedure |
30600 | (P_Pragma): Implement RM 2.8(4) check for no pos args after named args | |
30601 | ||
30602 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30603 | ||
30604 | * prep.adb (Preprocess): Ignore error when scanning the first token of | |
30605 | a line. | |
30606 | ||
30607 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30608 | ||
30609 | * prj-nmsc.adb (Suffix_For): Change default suffix for C++ to ".cpp" | |
30610 | (Check_Stand_Alone_Library): If the specified reference symbol file does | |
30611 | not exist, only issue a warning when the symbol policy is not | |
30612 | Controlled. And, when symbol policy is Compliant, set the symbol | |
30613 | policy to Autonomous. | |
30614 | ||
30615 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30616 | ||
30617 | * prj-part.adb (Pre_Parse_Context_Clause): Call Set_Is_Not_Last_In_List | |
30618 | when the project file in a with clause is not the last one, that is the | |
30619 | project file name is followed by a comma. | |
30620 | * prj-pp.adb: (First_With_In_List): New Boolean global variable | |
30621 | (Print): Issue list of project files separated by commas in with clauses | |
30622 | according to the values returned by Is_Not_Last_In_List. | |
30623 | * prj-tree.ads, prj-tree.adb: (Is_Not_Last_In_List): New function | |
30624 | (Set_Is_Not_Last_In_List): New procedure | |
30625 | ||
30626 | 2005-06-14 Eric Botcazou <ebotcazou@adacore.com> | |
30627 | ||
30628 | * s-atacco.ads: Put a pragma No_Strict_Aliasing on Object_Pointer. | |
30629 | ||
30630 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30631 | ||
30632 | * scng.adb: Add call to new Check_EOF routine | |
30633 | (Accumulate_Checksum): Properly handle wide wide char >= 2 ** 24 | |
30634 | Add some comments regarding wide character handling | |
30635 | ||
30636 | * style.ads, styleg.ads, styleg.adb: Implement new style switch -gnatyu | |
30637 | ||
30638 | * stylesw.ads, stylesw.adb: Implement new style switch -gnatyu | |
30639 | ||
30640 | * g-utf_32.ads, g-utf_32.adb (Is_UTF_32_Non_Graphic): Other_Format | |
30641 | characters are now considered graphic characters and hence yield false | |
30642 | in this call. | |
30643 | ||
6f7f72f9 EB |
30644 | * nmake.adt: Modify header so that xnmake does not generate output |
30645 | files with multiple blank lines. | |
0adcdb66 | 30646 | |
6f7f72f9 EB |
30647 | * treeprs.adt: Remove a blank line so that output from xtreeprs does |
30648 | not have an extra blank line | |
0adcdb66 AC |
30649 | |
30650 | 2005-06-14 Gary Dismukes <dismukes@adacore.com> | |
30651 | ||
30652 | * sem_aggr.adb (Aggregate_Constraint_Checks): Apply a conversion to the | |
30653 | expression when the component type is an anonymous access type to | |
30654 | ensure that appropriate accessibility checks are done. | |
30655 | ||
30656 | * sem_ch5.adb (Analyze_Assignment): Apply a implicit conversion to the | |
30657 | expression of an assignment when the target object is of an anonymous | |
30658 | access type. This ensures that required accessibility checks are done. | |
30659 | (One_Bound): Move the check for type Universal_Integer to | |
30660 | Process_Bounds. | |
30661 | (Process_Bounds): Check whether the type of the preanalyzed range is | |
30662 | Universal_Integer, and in that case set Typ to Integer_Type prior | |
30663 | to setting the type of the original range and the calls to One_Bound. | |
30664 | ||
30665 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30666 | ||
30667 | * sem_case.adb (Expand_Others_Choice): Improve warning. | |
30668 | ||
30669 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30670 | ||
30671 | * sem_eval.adb (Subtypes_Statically_Match): Use discriminant | |
30672 | constraint of full view if present, when other type is discriminated. | |
30673 | (Eval_Relational_Op): Recognize tests of pointer values against Null, | |
30674 | when the pointer is known to be non-null, and emit appropriate warning. | |
30675 | ||
30676 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30677 | Ed Schonberg <schonberg@adacore.com> | |
30678 | ||
30679 | PR ada/10671 | |
0adcdb66 AC |
30680 | * sem_prag.adb: Implement pragma Persistent_BSS |
30681 | Remove obsolete pragma Persistent_Data, Persistent_Object | |
30682 | Set Ada_Version_Explicit, for implementation of AI-362 | |
30683 | Test Ada_Version_Explicit for Preelaborate_05 and Pure_05 | |
30684 | Add processing for pragma Pure_05 and Preelaborate_05 | |
30685 | Add processing for Assertion_Policy pragma | |
30686 | Add pragma identifiers for Assert | |
30687 | (Analyze_Pragma, case Assert): Check number of arguments | |
30688 | (Process_Inline): Additional guard against an illegal program, where the | |
30689 | argument of the pragma is undefined, and warnings on redundant | |
30690 | constructs are enabled. | |
30691 | (Analyze_Pragma, case Obsolescent): Allow an optional second argument | |
30692 | Ada_05 to this pragma, specifying that the pragma is only active in | |
30693 | Ada_05 mode. | |
30694 | (Check_Arg_Order): New procedure | |
30695 | Add appropriate calls to this procedure throughout | |
30696 | Also throughout, check entity name before doing any other checks | |
30697 | ||
30698 | * snames.h snames.ads, snames.adb: Add pragma Persistent_BSS | |
30699 | Remove obsolete pragma Persistent_Data, Persistent_Object | |
30700 | Add entries for pragma Pure_05 and Preelaborate_05 | |
30701 | Add entries for Assertion_Policy pragma and associated names | |
30702 | Add some names for pragma argument processing | |
30703 | ||
30704 | * tbuild.ads, tbuild.adb: (Make_Linker_Section_Pragma): New function | |
30705 | ||
30706 | 2005-06-14 Ed Schonberg <schonberg@adacore.com> | |
30707 | ||
30708 | * sem_warn.adb (Warn_On_Known_Condition): If the constant expression | |
30709 | appears within a negation (either from source or as a rewriting of | |
30710 | inequality) adjust text of warning accordingly. | |
30711 | ||
30712 | 2005-06-14 Thomas Quinot <quinot@adacore.com> | |
30713 | ||
30714 | * s-strxdr.adb: Follow AI95-00132 | |
30715 | ||
30716 | 2005-06-14 Arnaud Charlet <charlet@adacore.com> | |
30717 | ||
30718 | * s-tasren.adb (Exceptional_Complete_Rendezvous): Fix race condition. | |
30719 | ||
30720 | 2005-06-14 Arnaud Charlet <charlet@adacore.com> | |
30721 | Jose Ruiz <ruiz@adacore.com> | |
30722 | ||
30723 | * s-tposen.adb, s-tpobop.adb | |
30724 | (Exceptional_Complete_Rendezvous): Save the occurrence and not only | |
30725 | the exception id. | |
30726 | (PO_Do_Or_Queue): Before queuing a task on an entry queue we check that | |
30727 | there is no violation of the Max_Entry_Queue_Length restriction (if it | |
30728 | has been set); Program_Error is raised otherwise. | |
30729 | (Requeue_Call): Before requeuing the task on the target entry queue we | |
30730 | check that there is no violation of the Max_Entry_Queue_Length | |
30731 | restriction (if it has been set); Program_Error is raised otherwise. | |
30732 | ||
30733 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30734 | ||
30735 | * styleg.adb: Fix several remaining problems in -gnatyu switch | |
30736 | Blank line count not reset at start | |
30737 | Scanning outside source buffer in some cases | |
30738 | Confusing message for blanks at end of file | |
30739 | Non-empty blank lines not recognized | |
30740 | ||
30741 | * nmake.adt: Modify header so that xnmake does not generate output | |
30742 | files with multiple blank lines. | |
30743 | ||
6f7f72f9 EB |
30744 | * treeprs.adt: Remove a blank line so that output from xtreeprs does |
30745 | not have an extra blank line | |
0adcdb66 AC |
30746 | |
30747 | 2005-06-14 Sergey Rybin <rybin@adacore.com> | |
30748 | ||
30749 | * styleg-c.adb (Body_With_No_Spec): Remove ':' from warning message. | |
30750 | ||
30751 | 2005-06-14 Doug Rupp <rupp@adacore.com> | |
30752 | Vincent Celier <celier@adacore.com> | |
30753 | ||
30754 | * vms_conv.ads, vms_conv.adb: Remove "Library" command. | |
30755 | Update copyright. | |
30756 | ||
30757 | * vms_data.ads: Add entry for -gnaty/Y [NO]ADA_2005_COMPATIBILITY | |
30758 | Remove "Library" command. | |
30759 | Change keyword for style check -gnatyd from NOCRLF to | |
30760 | DOS_LINE_ENDINGS. | |
30761 | Remove useless second style check keyword NONE | |
30762 | Remove help documentation for inexistent style check keyword | |
30763 | RM_COLUMN_LAYOUT. | |
30764 | Add help documentation for style check keywords DOS_LINE_ENDINGS, | |
30765 | UNNECESSARY_BLANK_LINES and XTRA_PARENS | |
30766 | Add UNNECESSARY_BLANK_LINES for -gnatyu | |
30767 | Add qualifiers /ALL_PROJECTS (-U) for GNAT PRETTY and GNAT METRIC | |
30768 | ||
6f7f72f9 | 30769 | * ug_words: Add entry for -gnaty/Y [NO]ADA_2005_COMPATIBILITY |
0adcdb66 AC |
30770 | |
30771 | 2005-06-14 Vincent Celier <celier@adacore.com> | |
30772 | ||
30773 | * makegpr.adb (Compile_Link_With_Gnatmake): Invoke gnatmake with -d if | |
30774 | gprmake was invoked with -d. | |
30775 | (Compile_Sources): If -d was used, output the "completed ..." message | |
30776 | for each compilation. | |
30777 | (Scan_Arg): Recognize new switch -d | |
30778 | When -c and at least one main is specified, set | |
30779 | Unique_Compile to True to guarantee that no other sources will be | |
30780 | compiled. | |
30781 | ||
30782 | 2005-06-14 Matthew Heaney <heaney@adacore.com> | |
30783 | ||
30784 | * a-swunha.ads, a-swunha.adb: Removed. Replaced by a-swuwha.ad[sb] | |
30785 | * a-swuwha.ads, a-swuwha.adb: New files | |
30786 | ||
30787 | * a-szunha.ads, a-szunha.adb: Removed, replaced by a-szuzha.ad[sb] | |
30788 | * a-szuzha.ads, a-szuzha.adb: New files. | |
30789 | ||
30790 | * a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb, a-crbtgk.ads, | |
da8f5fd9 AJ |
30791 | a-crbtgk.adb, a-crbltr.ads, a-coorse.ads, a-coorse.adb, a-convec.ads, |
30792 | a-convec.adb, a-coinve.ads, a-coinve.adb, a-cohata.ads, a-cohama.ads, | |
30793 | a-cohama.adb, a-ciorse.ads, a-ciorse.adb, a-cihama.ads, a-cihama.adb, | |
30794 | a-cidlli.ads, a-cidlli.adb, a-chtgop.ads, a-chtgop.adb, a-cdlili.ads, | |
0adcdb66 | 30795 | a-cdlili.adb, a-coormu.adb, a-ciormu.adb, a-cihase.adb, a-cohase.adb, |
da8f5fd9 | 30796 | a-cohase.ads, a-ciorma.ads, a-coorma.ads, a-ciormu.ads, a-coormu.ads, |
0adcdb66 AC |
30797 | a-swunha.adb, a-stunha.adb, a-ciorma.adb, a-coorma.adb, a-shcain.ads, |
30798 | a-shcain.adb, a-chtgke.ads, a-chtgke.adb, a-stwiha.ads, a-stwiha.adb, | |
30799 | a-strhas.adb, a-stzhas.adb: synchronized to the latest version of the | |
30800 | Ada 2005 RM. | |
30801 | ||
30802 | 2005-06-10 Eric Botcazou <ebotcazou@adacore.com> | |
30803 | Olivier Hainque <hainque@adacore.com> | |
30804 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
30805 | Pascal Obry <obry@adacore.com> | |
30806 | ||
30807 | * gigi.h: (build_allocator): Add arg IGNORE_INIT_TYPE. | |
30808 | ||
30809 | * trans.c (call_to_gnu): Issue a warning for users of Starlet when | |
30810 | making a temporary around a procedure call because of non-addressable | |
30811 | actual parameter. | |
30812 | (process_freeze_entity): If entity is a private type, capture size | |
30813 | information that may have been computed for the full view. | |
30814 | (tree_transform, case N_Allocator): If have initializing expression, | |
30815 | check type for Has_Constrained_Partial_View and pass that to | |
30816 | build_allocator. | |
30817 | (tree_transform, case N_Return_Statement): Pass extra arg to | |
30818 | build_allocator. | |
30819 | ||
30820 | * decl.c (annotate_value): Remove early return if -gnatR is not | |
30821 | specified. | |
30822 | (gnat_to_gnu_field): Don't make a packable type for a component clause | |
30823 | if the position is byte aligned, the field is aliased, and the clause | |
30824 | size isn't a multiple of the packable alignment. It serves no useful | |
30825 | purpose packing-wise and would be rejected later on. | |
30826 | (gnat_to_gnu_entity, case object): Pass extra arg to build_allocator. | |
30827 | ||
30828 | PR ada/20515 | |
30829 | (gnat_to_gnu_entity): Remove use of macro _WIN32 which is wrong in the | |
30830 | context of cross compilers. We use TARGET_DLLIMPORT_DECL_ATTRIBUTES | |
30831 | instead. | |
30832 | (create_concat_name): Idem. | |
30833 | ||
30834 | 2005-06-10 Robert Dewar <dewar@adacore.com> | |
30835 | Eric Botcazou <ebotcazou@adacore.com> | |
30836 | Ben Brosgol <brosgol@adacore.com> | |
30837 | Cyrille Comar <comar@adacore.com> | |
30838 | Sergey Rybin <rybin@adacore.com> | |
30839 | Pascal Obry <obry@adacore.com> | |
30840 | ||
30841 | * gnat_rm.texi: Add documentation for pragma Persistent_BSS | |
30842 | Document second argument (Ada_05) of pragma Obsolescent | |
30843 | Add note that call to subprogram marked with pragma Obsolescent | |
30844 | is now considered to be a violation of program Restrictions | |
30845 | (No_Obsolescent_Features). | |
30846 | (Implementation Defined Pragmas) <Machine_Attribute>: Make it clear | |
30847 | that only machine-dependent attributes are supported. | |
30848 | ||
da8f5fd9 | 30849 | * gnat_ugn.texi: |
0adcdb66 AC |
30850 | Commented out menu lines and empty section for gnatclean examples |
30851 | Document -gnatwy/Y | |
30852 | Fix some over long lines | |
30853 | Clarify and enhance documentation of ADA_PROJECT_PATH. | |
30854 | Rework section 2.11.2(3) about linking with a non-GNU compiler. | |
30855 | Mention new switch -fcallgraph-info. | |
30856 | Mention new switch -fstack-usage. | |
30857 | For gnatpp, replace '-notab' with '-N' and add this option to Index | |
30858 | Corrected VMS example. | |
30859 | VMS keyword for style check -gnatyd is DOS_LINE_ENDINGS, no NOCRLF | |
30860 | Minor reformatting | |
30861 | Add documentation for -gnatyu switch (unnecessary blank lines) | |
30862 | Document new switch -U for GNAT PRETTY and GNAT METRIC | |
30863 | Add note about Stdcall being handled as C convention on non Windows OS. | |
30864 | Remove some junk typo in description of gnatbind -S switch | |
30865 | Remove reference to Extensions_Allowed pragma | |
30866 | Document the new order of the directories to be searched (source and | |
30867 | object directories of project files before directories in ADA_*_PATH | |
30868 | environment variables. | |
30869 | ||
6f7f72f9 | 30870 | * g-trasym.ads: Document that IRIX is supported |
0adcdb66 AC |
30871 | |
30872 | 2005-06-10 Arnaud Charlet <charlet@adacore.com> | |
30873 | ||
30874 | * Makefile.in: Add initialize.o when needed. | |
30875 | Adapt to new VMS package body Symbols and subunits | |
30876 | No specialized version of a-sytaco is needed for VxWorks. | |
30877 | ||
30878 | * a-wichun.ads, a-wichun.adb, a-zchuni.ads, a-zchuni.adb: New files. | |
30879 | * a-zchara.ads, a-widcha.ads: New files. | |
30880 | ||
30881 | * system-hpux-ia64.ads: New file. | |
30882 | ||
30883 | * i-vxwork-x86.ads, i-vxwork.ads (intContext): Add this function which | |
30884 | is imported from the VxWorks kernel. | |
30885 | ||
30886 | 2005-06-14 Robert Dewar <dewar@adacore.com> | |
30887 | ||
30888 | * g-soliop-mingw.ads, g-soccon-vms.adb, a-swmwco.ads, exp_smem.adb, | |
30889 | fmap.adb, a-szmzco.ads, s-traent-vms.adb, s-traent-vms.ads, | |
30890 | a-direio.ads, a-exctra.ads, a-exexda.adb, a-exextr.adb, a-stream.ads, | |
30891 | s-restri.ads, s-restri.adb, s-traent.adb, s-traent.ads, a-slcain.adb, | |
30892 | a-stzhas.ads, a-tiinau.adb, comperr.adb, exp_ch11.adb, g-boubuf.adb, | |
30893 | g-calend.adb, g-debpoo.ads, g-moreex.ads, gprep.adb, g-regpat.ads, | |
30894 | i-cexten.ads, i-os2thr.ads, makeutl.ads, memroot.adb, mlib-prj.adb, | |
30895 | namet.adb, namet.ads, prj-makr.adb, prj-proc.adb, sem_dist.adb, | |
30896 | sem_elim.ads, s-valint.adb, s-vallli.adb, s-vallli.adb, s-vallli.ads, | |
30897 | s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads, scn.adb, | |
30898 | s-tasinf.adb, targparm.adb, uname.adb, uname.ads, xnmake.adb, | |
30899 | xsinfo.adb, a-direct.ads: Remove extra blank lines. Minor reformatting. | |
30900 | ||
30901 | 2005-06-14 Thomas Quinot <quinot@adacore.com> | |
30902 | ||
30903 | * xeinfo.adb: Fix typo in comment | |
30904 | ||
30905 | 2005-06-14 Javier Miranda <miranda@adacore.com> | |
30906 | ||
30907 | * repinfo.ads: Fix typo in comment | |
30908 | ||
30909 | 2005-06-14 Gary Dismukes <dismukes@adacore.com> | |
30910 | ||
30911 | * s-finimp.adb (Parent_Tag): Delete this imported function (function | |
30912 | Parent_Tag is now in the visible part of Ada.Tags). | |
30913 | (Get_Deep_Controller): Call Ada.Tags.Parent_Tag directly instead of | |
30914 | using imported function. | |
30915 | ||
30916 | 2005-06-14 Bernard Banner <banner@adacore.com> | |
30917 | ||
30918 | * vxaddr2line.adb: Add support for Windows hosted x86 vxworks. Should | |
30919 | also apply for handling support for VxSim 653. | |
30920 | ||
30921 | 2005-06-14 Eric Botcazou <ebotcazou@adacore.com> | |
30922 | ||
30923 | * xsnames.adb: Add automatic generation of snames.h. | |
30924 | ||
30925 | 2005-06-14 Thomas Quinot <quinot@adacore.com> | |
30926 | ||
30927 | * gen-soccon.c: Add IP_MULTICAST_IF constant | |
30928 | Minor reformatting and adjustments to prevent warnings. | |
30929 | ||
30930 | 2005-06-14 Pascal Obry <obry@adacore.com> | |
30931 | ||
30932 | * seh_init.c: Do not include <sys/stat.h>. This is not needed. | |
30933 | ||
e0d161cf AP |
30934 | 2005-06-03 Andrew Pinski <pinskia@physics.uc.edu> |
30935 | ||
30936 | * trans.c (gnat_gimplify_expr): Call | |
30937 | recompute_tree_invarant_for_addr_expr when we change | |
30938 | the operand of the ADDR_EXPR. | |
30939 | ||
4c714dd4 KG |
30940 | 2005-05-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
30941 | ||
30942 | * misc.c: Don't include errors.h. | |
30943 | ||
7b9997f3 KG |
30944 | 2005-05-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
30945 | ||
30946 | * raise.c (db): Add ATTRIBUTE_PRINTF_2. | |
30947 | ||
5ff62c2e KH |
30948 | 2005-05-29 Kazu Hirata <kazu@cs.umass.edu> |
30949 | ||
30950 | * cal.c, decl.c, init.c, raise.c, trans.c, utils2.c: Fix | |
30951 | comment typos. | |
30952 | * gnat_rm.texi, gnat_ugn.texi: Fix typos. | |
30953 | ||
9e94c78f | 30954 | 2005-05-16 Nathanael Nerode <neroden@gcc.gnu.org> |
8b37cc64 NN |
30955 | |
30956 | PR ada/20270 | |
30957 | * Makefile.in: Make TGT_LIB behave correctly. | |
30958 | ||
d4ee4d25 DD |
30959 | 2005-04-23 DJ Delorie <dj@redhat.com> |
30960 | ||
30961 | * misc.c: Adjust warning() callers. | |
30962 | ||
9e94c78f | 30963 | 2005-04-16 Laurent Guerby <laurent@guerby.net> |
159921c0 | 30964 | |
6f7f72f9 EB |
30965 | PR ada/18847 |
30966 | * a-nudira.adb (Value): Check for valid string. | |
30967 | * a-nuflra.adb (Value): Likewise. | |
159921c0 | 30968 | |
0b026622 RS |
30969 | 2005-04-11 Richard Sandiford <rsandifo@redhat.com> |
30970 | ||
30971 | * lang.opt: Refer to the GCC internals documentation instead of c.opt. | |
30972 | ||
bde83138 KH |
30973 | 2005-04-10 Kazu Hirata <kazu@cs.umass.edu> |
30974 | ||
30975 | * adaint.c, init.c, tracebak.c: Fix comment typos. | |
30976 | * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Fix typos. | |
30977 | ||
9e94c78f | 30978 | 2005-04-07 Laurent Guerby <laurent@guerby.net> |
ad9945b5 LG |
30979 | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
30980 | ||
30981 | * Makefile.in: Add make ifeq define for hppa linux tasking support. | |
30982 | * system-hpux.ads: Define Signed_Zeros to be True. | |
30983 | * system-linux-hppa.ads, s-osinte-linux-hppa.ads: New files. | |
30984 | ||
45f7cb60 KH |
30985 | 2005-04-01 Kazu Hirata <kazu@cs.umass.edu> |
30986 | ||
30987 | * adaint.c, cal.c, decl.c, gigi.h, gmem.c, init.c, link.c, | |
30988 | raise.c, tracebak.c, trans.c, utils2.c, utils.c: Fix comment | |
30989 | typos. | |
30990 | ||
5662a50d TT |
30991 | 2005-03-30 Tom Tromey <tromey@redhat.com> |
30992 | ||
30993 | * decl.c (gnat_substitute_in_type): Don't handle FILE_TYPE. | |
30994 | ||
e6e375cc AL |
30995 | 2005-03-30 Aaron W. LaFramboise <aaronavay62@aaronwl.com> |
30996 | ||
30997 | * adaint.c (_gnat_set_close_on_exec): Mark parameters unused. | |
30998 | ||
5db8bc34 AC |
30999 | 2005-03-29 Robert Dewar <dewar@adacore.com> |
31000 | ||
31001 | * sem_res.adb (Resolve_Real_Literal): Generate warning if static | |
31002 | fixed-point expression has value that is not a multiple of the Small | |
31003 | value. | |
31004 | ||
31005 | * opt.ads (Warn_On_Bad_Fixed_Value): New flag | |
31006 | ||
31007 | * s-taprop-tru64.adb (RT_Resolution): Return an integer number of | |
31008 | nanoseconds. | |
31009 | ||
31010 | * ug_words: Add entry for [NO_]BAD_FIXED_VALUES for -gnatwb/-gnatwB | |
31011 | ||
31012 | 2005-03-29 Vincent Celier <celier@adacore.com> | |
31013 | ||
31014 | * mlib-tgt-vms-ia64.adb, mlib-tgt-vms-alpha.adb | |
31015 | (Build_Dynamic_Library.Version_String): Return the empty string when | |
31016 | Lib_Version is empty or when the symbol policy is not Autonomous. | |
31017 | ||
31018 | * symbols-vms-alpha.adb (Finalize): For symbol policy Compliant, when | |
31019 | a symbol is not in the reference symbol file, increase the Major ID | |
31020 | and set the Minor ID to 0. | |
31021 | Use gsmatch=lequal instead of gsmatch=equal | |
31022 | ||
31023 | 2005-03-29 Doug Rupp <rupp@adacore.com> | |
31024 | ||
31025 | * adaint.c (__gnat_to_canonical_file_spec [VMS]): Check for logical | |
31026 | name and translate. | |
31027 | ||
31028 | 2005-03-29 Javier Miranda <miranda@adacore.com> | |
31029 | ||
31030 | * a-tags.ads, a-tags.adb (Get_TSD): Subprogram removed. | |
31031 | (Inherit_DT): The first formal has been redefined as a Tag. | |
31032 | This allows us the removal of the subprogram Get_TSD. | |
31033 | (TSD): Replace the call to Get_TSD by the actual code. | |
31034 | ||
31035 | * exp_disp.ads, exp_disp.adb: Remove support to call Get_TSD. | |
31036 | (Make_DT): Upgrade the call to Inherit_TSD according to the | |
31037 | new interface: the first formal is now a Tag. | |
31038 | ||
31039 | * i-cpp.ads, i-cpp.adb (CPP_Inherit_DT): The first formal has been | |
31040 | redefined as a Tag. | |
31041 | This change allows us to remove the subprogram Get_TSD. | |
31042 | (CPP_Get_TSD): Subprogram removed. | |
31043 | (TSD): Replace the call to CPP_Get_TSD by the actual code. | |
31044 | ||
31045 | * rtsfind.ads: Remove support to call the run-time | |
31046 | subprogram Get_TSD | |
31047 | ||
31048 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31049 | ||
da8f5fd9 | 31050 | * errutil.adb, errout.adb: |
5db8bc34 AC |
31051 | Minor comment updates on Line_Terminator references |
31052 | ||
31053 | * par-ch10.adb: Add ??? comment about line terminator | |
31054 | ||
31055 | * styleg.adb (Check_Line_Terminator): Add check for new switch -gnatyd | |
31056 | (check dos line terminator). | |
31057 | (Check_Line_Max_Length): New procedure, split off from the existing | |
31058 | Check_Line_Terminator routine. Separating this out allows -gnatyf to | |
31059 | be properly recognized. | |
31060 | ||
31061 | * styleg.adb: Add ??? comment for line terminator reference | |
31062 | ||
31063 | * scng.adb (Check_End_Of_Line): Fix bug of -gnatyf being ignored | |
31064 | (Check_End_Of_Line): Add -gnatyd handling (check dos line terminators) | |
31065 | ||
31066 | * styleg.ads (Check_Line_Terminator): Add check for new switch -gnatyd | |
31067 | (check dos line terminator). | |
31068 | (Check_Line_Max_Length): New procedure, split off from the existing | |
31069 | Check_Line_Terminator routine. Separating this out allows -gnatyf to | |
31070 | be properly recognized. | |
31071 | ||
da8f5fd9 | 31072 | * stylesw.ads, stylesw.adb: |
5db8bc34 AC |
31073 | Add handling for new -gnatyd switch (check dos line terminator) |
31074 | ||
31075 | * switch-c.adb: Recognize new -gnatyd switch (check dos line terminator) | |
31076 | Recognize -gnatwb/-gnatwB switches | |
31077 | Include Warn_On_Bad_Fixed_Value for -gnatg | |
31078 | ||
da8f5fd9 | 31079 | * usage.adb: |
5db8bc34 AC |
31080 | Add line for new -gnatyd switch (check dos line terminator) |
31081 | ||
31082 | * usage.adb: Add lines for -gnatwb/-gnatwB | |
31083 | ||
31084 | * vms_data.ads: Add entry for NOCRLF (-gnatyd) | |
31085 | ||
31086 | * vms_data.ads: [NO_]BAD_FIXED_VALUES synonym for -gnatwb/-gnatwB | |
31087 | ||
31088 | * gnat_ugn.texi: Fix overlong lines | |
31089 | Document new -gnatyd switch | |
31090 | Document new -gnatwb/-gnatwB switches | |
31091 | ||
31092 | 2005-03-29 Ed Schonberg <schonberg@adacore.com> | |
31093 | ||
31094 | * exp_ch4.adb (Has_Unconstrained_UU_Component): Use the base type in | |
31095 | order to retrieve the component list of the type, before examining | |
31096 | individual components. | |
31097 | ||
31098 | * sem_type.adb (Covers): Types are compatible if one is the base type | |
31099 | of the other, even though their base types might differ when private | |
31100 | views are involved. | |
31101 | ||
31102 | 2005-03-29 Thomas Quinot <quinot@adacore.com> | |
31103 | ||
31104 | * exp_dist.adb (Add_RAST_Features, PolyORB version): Set the From_Any, | |
31105 | To_Any and TypeCode TSSs on RAS types directly using Set_TSS, instead | |
31106 | of using Set_Renaming_TSS. This ensures that the TSS bodies are not | |
31107 | analyzed if expansion is disabled (which could otherwise cause spurious | |
31108 | error messages if expansion has been disabled due to previous | |
31109 | (unrelated) errors). | |
31110 | ||
31111 | * sem_prag.adb (Analyze_Pragma, case Asynchronous): If RAS expansion | |
31112 | is disabled, the entity denoted by the argument is the access type | |
31113 | itself, not an underlying record type, so there is no need to go back | |
31114 | to the Corresponding_Remote_Type. | |
31115 | ||
31116 | 2005-03-29 Gary Dismukes <dismukes@adacore.com> | |
31117 | Robert Dewar <dewar@adacore.com> | |
31118 | ||
31119 | * exp_intr.adb (Expand_Dispatching_Constructor_Call): New procedure to | |
31120 | expand a call to an instance of | |
31121 | Ada.Tags.Generic_Dispatching_Constructor into a dispatching call to the | |
31122 | Constructor actual of the instance. A class-wide membership | |
31123 | check is also generated, to ensure that the tag passed to the instance | |
31124 | denotes a type in the class. | |
31125 | (Expand_Intrinsic_Call): Call Expand_Dispatching_Constructor in the case | |
31126 | of Name_Generic_Dispatching_Constructor. | |
31127 | ||
31128 | * Makefile.rtl: Add a-tgdico.ads to the list of library units (new Ada | |
31129 | 05 unit for AI-260-02). | |
31130 | ||
31131 | * a-tgdico.ads: New file. | |
31132 | ||
31133 | * impunit.adb (Non_Imp_File_Names_05): Add entry "a-tgdico" for new | |
31134 | predefined Ada 05 generic unit Ada.Tags.Generic_Dispatching_Constructor. | |
31135 | ||
31136 | * snames.ads, snames.adb (Preset_Names): Add entry for | |
31137 | Generic_Dispatching_Constructor. | |
31138 | ||
31139 | PR ada/20300 | |
5db8bc34 AC |
31140 | * sem_ch8.adb (Find_Direct_Name): Go to root type for check of |
31141 | character type cases. | |
31142 | (Analyze_Subprogram_Renaming): Add special handling for | |
31143 | the case of renaming of stream attributes when the renaming denotes a | |
31144 | generic formal subprogram association for an abstract formal subprogram. | |
31145 | Check that the attribute is a primitive stream attribute (and not | |
31146 | a class-wide stream attribute) and then rewrite the attribute name | |
31147 | as the name of the appropriate compiler-generated stream primitive. | |
31148 | ||
31149 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31150 | ||
31151 | * exp_util.adb (Remove_Side_Effects): Properly propagate arguments to | |
31152 | recursive calls. | |
31153 | (Is_Possibly_Unaligned_Object): Correct typo that | |
31154 | resulted in inaccurate result for unaligned scalars within records. | |
31155 | ||
31156 | 2005-03-29 Ed Schonberg <schonberg@adacore.com> | |
31157 | ||
31158 | * freeze.adb (Freeze_Record_Type): If the type of the component is an | |
31159 | itype whose parent is controlled and not yet frozen, do not create a | |
31160 | freeze node for the itype if expansion is disabled. | |
31161 | ||
31162 | 2005-03-29 Vincent Celier <celier@adacore.com> | |
31163 | ||
31164 | * make.adb (Gnatmake): Don't fail if the main project file is declared | |
31165 | as having no Ada sources. Do not display message "no sources to | |
31166 | compile" in quiet output. | |
31167 | ||
31168 | 2005-03-29 Doug Rupp <rupp@adacore.com> | |
31169 | ||
31170 | * Makefile.in [VMS] (EXTRA_GNATTOOLS): Add vms_help and gnat.hlp as | |
31171 | extra tools. | |
31172 | ||
31173 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31174 | ||
31175 | * par-ch12.adb (P_Generic): Give better msg for illegal private generic | |
31176 | child. | |
31177 | ||
31178 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31179 | ||
31180 | * par-ch3.adb (P_Type_Declaration): Fix bad error recovery after | |
31181 | missing TYPE Improve the error message generated when compiling a | |
31182 | limited interface in Ada83 or Ada95 mode. | |
31183 | ||
31184 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31185 | ||
31186 | * par-ch4.adb (P_Name): When a bad attribute is returned, return error, | |
31187 | rather than proceed ahead using a junk attribute name. | |
31188 | ||
31189 | 2005-03-29 Vincent Celier <celier@adacore.com> | |
31190 | ||
31191 | * prj.ads, prj.adb: (Project_Data): Add new component Display_Name | |
31192 | ||
31193 | * prj-part.adb (Parse_Single_Project): Set the location of a project | |
31194 | on its defining identifier, rather than on the reserved word "project". | |
31195 | ||
31196 | * prj-proc.adb (Expression): Adapt to the fact that default of external | |
31197 | references may be string expressions, not always literal strings. | |
31198 | (Recursive_Process): Set Display_Name equal to Name | |
31199 | when Location is No_Location, that is when there is no actual file. | |
31200 | Get the Display_Name of the project from the source, when it is not a | |
31201 | virtual project. | |
31202 | (Process): Use the Display_Name in error messages | |
31203 | ||
31204 | * prj-strt.adb (External_Reference): Allow default to be string | |
31205 | expressions, not only literal strings. | |
31206 | ||
31207 | 2005-03-29 Vincent Celier <celier@adacore.com> | |
31208 | ||
31209 | * prj-nmsc.adb (Check_Stand_Alone_Library): Do not forbid the symbol | |
31210 | file and the reference symbol file to be the same file. | |
31211 | ||
31212 | 2005-03-29 Thomas Quinot <quinot@adacore.com> | |
31213 | ||
31214 | * sem_cat.adb (Validate_Remote_Types_Type_Conversion): Perform check to | |
31215 | forbid conversion of a local access-to-subprogram type to a remote one. | |
31216 | ||
31217 | * sem_util.adb (Wrong_Type): For a record type that is the expanded | |
31218 | equivalent type for a remote access-to-subprogram type, go back to the | |
31219 | original RAS entity when displaying an error message, so the casing is | |
31220 | the original source casing. | |
31221 | ||
31222 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31223 | ||
31224 | * sem_ch11.adb (Analyze_Raise_Statement): Change message for warning | |
31225 | on param update. | |
31226 | ||
31227 | 2005-03-29 Ed Schonberg <schonberg@adacore.com> | |
31228 | ||
31229 | * sem_ch4.adb (Analyze_Selected_Component): Do not generate an actual | |
31230 | subtype if code is being pre-analyzed, to prevent un-expanded | |
31231 | references to protected formals, among others. | |
31232 | (Analyze_Explicit_Dereference): If the overloaded prefix includes some | |
31233 | interpretation that can be a call, include the result of the call as a | |
31234 | possible interpretation of the dereference. | |
31235 | ||
31236 | * sem_ch5.adb (Process_Bounds): Determine type of range by | |
31237 | pre-analyzing a copy of the original range, and then analyze the range | |
31238 | with the expected type. | |
31239 | ||
31240 | * sem_res.adb (Check_Parameterless_Call): For an explicit dereference | |
31241 | with an overloaded prefix where not all interpretations yield an | |
31242 | access to subprogram, do not rewrite node as a call. | |
31243 | (Resolve_Explicit_Dereference): Recognize the previous case and rewrite | |
31244 | the node as a call once the context identifies the interpretation of | |
31245 | the prefix whose call yields the context type. | |
31246 | (Valid_Conversion): For the case of a conversion between | |
31247 | local access-to-subprogram types, check subtype conformance using | |
31248 | Check_Subtype_Conformant instead of Subtype_Conformant, to have a more | |
31249 | detailed error message. | |
31250 | ||
31251 | 2005-03-29 Ed Schonberg <schonberg@adacore.com> | |
31252 | ||
31253 | * sem_ch6.adb (Set_Formal_Mode): If the subtype has a non_null | |
31254 | indicator, indicate that the formal can never be null. | |
31255 | (Process_Formals): If a formal has a non_null indicator, insert the | |
31256 | resulting subtype immediately before the enclosing subprogram decl, | |
31257 | and not at the beginning of the corresponding declarative part, to | |
31258 | prevent access before elaboration (Ada2005). | |
31259 | ||
31260 | 2005-03-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
31261 | ||
31262 | PR ada/19956 | |
31263 | * utils.c (finish_record_type): Use variable_size when setting sizes. | |
31264 | ||
31265 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31266 | ||
31267 | * xtreeprs.adb, xnmake.adb: Use Stream_IO instead of Text_IO to | |
31268 | guarantee Unix style line terminators for the output files, even when | |
31269 | running on windows. | |
31270 | ||
31271 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31272 | ||
31273 | * a-direct.ads, a-direct.adb (Start_Search): Free allocated search | |
31274 | buffer if an exception is raised. | |
31275 | ||
31276 | 2005-03-29 Ed Falis <falis@adacore.com> | |
31277 | ||
31278 | * cio.c: Undefine putchar and getchar for VTHREADS: incompatible with | |
31279 | VxWorks 653 1.4 | |
31280 | ||
31281 | 2005-03-29 Robert Dewar <dewar@adacore.com> | |
31282 | ||
31283 | * sem_util.ads: Minor reformatting | |
31284 | * gnat_rm.texi: Minor editing. | |
31285 | ||
31286 | 2005-03-29 Eric Botcazou <ebotcazou@adacore.com> | |
31287 | ||
31288 | * decl.c (gnat_to_gnu_entity) <E_Variable>: Rework comment. | |
31289 | * trans.c (tree_transform) <N_Identifier>: Use correct predicates. | |
31290 | ||
aad9ff31 AL |
31291 | 2005-03-24 Aaron W. LaFramboise <aaronavay62@aaronwl.com> |
31292 | ||
31293 | * adaint.c (__gnat_portable_spawn): Adjust cast. | |
31294 | ||
d101034c JM |
31295 | 2005-03-23 Joseph S. Myers <joseph@codesourcery.com> |
31296 | ||
31297 | * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove. | |
31298 | ||
3a0c4f5a AC |
31299 | 2005-03-17 Pascal Obry <obry@adacore.com> |
31300 | ||
31301 | * adaint.h, adaint.c (__gnat_waitpid): Moved to expect.c where it is | |
31302 | used. | |
31303 | ||
31304 | * expect.c (__gnat_waitpid): Moved here from adaint.c. | |
31305 | Reimplement under Win32 using Win32 API. | |
31306 | ||
31307 | (__gnat_kill) [Win32]: Properly close the process handle before leaving | |
31308 | this routine. | |
31309 | ||
31310 | 2005-03-17 Eric Botcazou <ebotcazou@adacore.com> | |
31311 | ||
31312 | * ada-tree.h: (DECL_RENAMING_GLOBAL_P): New predicate. | |
31313 | (DECL_RENAMED_OBJECT): New accessor macro. | |
31314 | (SET_DECL_RENAMED_OBJECT): New setter macro. | |
31315 | ||
31316 | * decl.c (gnat_to_gnu_entity) <E_Variable>: Stabilize the renamed | |
31317 | object in all cases. Attach the renamed object to the VAR_DECL. | |
31318 | (gnat_to_gnu_field): Do not lift the record wrapper if the size of the | |
31319 | field is not prescribed. | |
31320 | ||
31321 | * misc.c (gnat_handle_option): Handle -gnatO separately. | |
31322 | (gnat_print_decl) <VAR_DECL>: New case. | |
31323 | Print the DECL_RENAMED_OBJECT node. | |
31324 | ||
31325 | * lang.opt: Declare separate -gnatO option. | |
31326 | ||
31327 | * trans.c (tree_transform) <N_Identifier>: If the object is a renaming | |
31328 | pointer, replace it with the renamed object. | |
31329 | <N_Validate_Unchecked_Conversion>: Warn for a conversion to a fat | |
31330 | pointer type if the source is not a fat pointer type whose underlying | |
31331 | array has the same non-zero alias set as that of the destination array. | |
31332 | ||
31333 | 2005-03-17 Javier Miranda <miranda@adacore.com> | |
31334 | ||
31335 | * a-tags.ads, a-tags.adb (Get_Expanded_Name): Removed. | |
31336 | (Get_Inheritance_Depth): Removed. | |
31337 | (Set_Inheritance_Depth): Removed. | |
31338 | ||
31339 | * rtsfind.ads, exp_disp.ads, exp_disp.adb: Remove support to call the | |
31340 | subprogram Get_Expanded_Name because it is not referenced by the | |
31341 | frontend. | |
31342 | ||
31343 | * i-cpp.ads, i-cpp.adb (CPP_Get_Expanded_Name): Removed. | |
31344 | (CPP_Get_Inheritance_Depth): Removed. | |
31345 | (CPP_Set_Inheritance_Depth): Removed. | |
31346 | ||
31347 | * tbuild.ads, tbuild.adb (Make_DT_Component): Removed. | |
31348 | ||
31349 | 2005-03-17 Robert Dewar <dewar@adacore.com> | |
31350 | ||
31351 | * checks.adb (Apply_Array_Size_Check): Completely remove this for GCC | |
31352 | 3, since we now expect GCC 3 to do all the work. | |
31353 | ||
31354 | 2005-03-17 Javier Miranda <miranda@adacore.com> | |
31355 | ||
31356 | * einfo.adb (First_Private_Entity, Set_First_Private_Entity): Addition | |
31357 | of one barrier to avoid wrong usage of this attribute. | |
31358 | ||
31359 | * sem_ch12.adb (Formal_Entity): Fix erroneous usage of the attribute | |
31360 | First_Private_Entity. | |
31361 | ||
31362 | * sem_ch7.adb (Install_Visible_Declarations): Add a barrier to protect | |
31363 | the subprogram against wrong usage. | |
31364 | Adapt the code to traverse the entities in the | |
31365 | scope of a record_type because in addition to its usage regarding | |
31366 | packages, this subprogram is also called by Expand_N_Freeze_Entity | |
31367 | to install the visible declarations of the enclosing scope of a | |
31368 | record_type_with_private to establish the proper visibility before | |
31369 | freezing the entity and related subprograms. | |
31370 | ||
31371 | 2005-03-17 Ed Schonberg <schonberg@adacore.com> | |
31372 | ||
31373 | * exp_ch2.adb (In_Assignment_Context): Recognize slice assignments to | |
31374 | entry formals. | |
31375 | ||
31376 | 2005-03-17 Thomas Quinot <quinot@adacore.com> | |
31377 | ||
31378 | * exp_ch3.adb (Check_Attr): New subprogram. | |
31379 | (Check_Stream_Attribute): Move the code for 13.13.2(9/1) enforcement | |
31380 | into a new Check_Attr subprogram, in order to provide a more | |
31381 | explanatory error message (including the name of the missing attribute). | |
31382 | (Stream_Operation_OK): Renamed from Stream_Operations_OK. This | |
31383 | subprogram determines whether a default implementation exists for a | |
31384 | given stream attribute. | |
31385 | (Make_Predefined_Primitive_Specs, Predefined_Primitive_Bodies): | |
31386 | Determine whether to generate a default implementation for each stream | |
31387 | attribute separately, as this depends on the specific attribute. | |
31388 | ||
31389 | * exp_strm.adb (Make_Field_Attribute): For the case of an illegal | |
31390 | limited extension where a stream attribute is missing for a limited | |
31391 | component (which will have been flagged in Exp_Ch3.Sem_Attr), do not | |
31392 | generate a bogus reference to the missing attribute to prevent | |
31393 | cascaded errors. Instead, generate a null statement. | |
31394 | ||
31395 | * sem_attr.adb (Check_Stream_Attribute): A stream attribute is | |
31396 | available for a limited type if it has been specified for an ancestor | |
31397 | of the type. | |
31398 | ||
31399 | 2005-03-17 Ed Schonberg <schonberg@adacore.com> | |
31400 | ||
31401 | * exp_ch6.adb (Expand_Inlined_Call): handle the case when the renamed | |
31402 | entity is an operator. | |
31403 | ||
31404 | 2005-03-17 Thomas Quinot <quinot@adacore.com> | |
31405 | ||
31406 | * exp_dist.adb (Get_PCS_Name): Move from Exp_Dist body to Sem_Dist | |
31407 | spec, to make this predicate available to other units. | |
31408 | ||
31409 | * rtsfind.adb (Check_RPC): Use Sem_Dist.Get_PCS_Name instead of | |
31410 | reimplementing it. | |
31411 | ||
31412 | * sem_ch8.adb: Disable expansion of remote access-to-subprogram types | |
31413 | when no distribution runtime library is available. | |
31414 | ||
31415 | * sem_res.adb, sem_dist.adb: Disable expansion of remote | |
31416 | access-to-subprogram types when no distribution runtime library is | |
31417 | available. | |
31418 | (Get_PCS_Name): Move from Exp_Dist body to Sem_Dist spec, to make this | |
31419 | predicate available to other units. | |
31420 | ||
31421 | * sem_dist.ads (Get_PCS_Name): Move from Exp_Dist body to Sem_Dist | |
31422 | spec, to make this predicate available to other units. | |
31423 | ||
31424 | 2005-03-17 Vincent Celier <celier@adacore.com> | |
31425 | ||
31426 | * make.adb (Insert_Project_Sources): Make sure the Q is always | |
31427 | initialized. | |
31428 | ||
31429 | * prj-nmsc.adb (Check_Ada_Naming_Scheme_Validity): Check Naming against | |
31430 | the default for the tree, not the global default naming. | |
31431 | ||
31432 | * prj-proc.adb (Recursive_Process): No need to put the default naming | |
31433 | in the project data, it's already there. | |
31434 | ||
31435 | 2005-03-17 Doug Rupp <rupp@adacore.com> | |
31436 | ||
31437 | * Makefile.in: (ia64-hp-*vms*): Use s-crtl-vms64.ads. | |
31438 | ||
6f7f72f9 EB |
31439 | * 5xcrtl.ads: Renamed to... |
31440 | * s-crtl-vms64.ads: ...this new file | |
3a0c4f5a AC |
31441 | |
31442 | 2005-03-17 Robert Dewar <dewar@adacore.com> | |
31443 | ||
31444 | PR ada/19519 | |
3a0c4f5a AC |
31445 | * namet.adb (Copy_One_Character): Set proper wide character encoding |
31446 | for upper half character if we have upper half encoding. | |
31447 | ||
31448 | 2005-03-17 Robert Dewar <dewar@adacore.com> | |
31449 | ||
31450 | * par.adb (Par): Improved msg for attempt to recompile predefined unit | |
31451 | ||
31452 | 2005-03-17 Thomas Quinot <quinot@adacore.com> | |
31453 | ||
31454 | * sem_ch13.adb (New_Stream_Function, New_Stream_Procedure): For a | |
31455 | tagged limited type, the TSS is a newly built renaming declaration: | |
31456 | insert it using Set_TSS, not Copy_TSS. | |
31457 | ||
31458 | 2005-03-17 Javier Miranda <miranda@adacore.com> | |
31459 | ||
31460 | * sem_ch4.adb (Try_Primitive_Operation, Class_Wide_Operation and | |
31461 | Try_Object_Operation): Analyze the object that is accessible | |
31462 | through the prefix of the subprogram call before we apply | |
31463 | the transformation of the object-operation notation. | |
31464 | ||
31465 | 2005-03-17 Jose Ruiz <ruiz@adacore.com> | |
31466 | ||
31467 | * s-taprob.adb (Initialize_Protection): Initialize the protected | |
31468 | object's owner to Null_Task. | |
31469 | (Lock): If pragma Detect_Blocking is in effect and the caller of this | |
31470 | procedure is already the protected object's owner then Program_Error | |
31471 | is raised. In addition the protected object's owner is updated. | |
31472 | (Lock_Read_Only): If pragma Detect_Blocking is in effect and the caller | |
31473 | of this procedure is already the protected object's owner then | |
31474 | Program_Error is raised. | |
31475 | In addition the protected object's owner is updated. | |
31476 | (Unlock): Remove the ownership of the protected object. | |
31477 | ||
31478 | * s-taprob.ads (Protection): Add the field Owner, used to store the | |
31479 | protected object's owner. | |
31480 | This component is needed for detecting one type of potentially blocking | |
31481 | operations (external calls on a protected subprogram with the same | |
31482 | target object as that of the protected action). Document the rest of | |
31483 | the components. | |
31484 | ||
31485 | * s-tposen.adb, s-tpoben.adb (Initialize_Protection_Entries): | |
31486 | Initialize the protected object's owner to Null_Task. | |
31487 | (Lock_Read_Only_Entries): If pragma Detect_Blocking is in effect and the | |
31488 | caller of this procedure is already the protected object's owner then | |
31489 | Program_Error is raised. | |
31490 | Do not raise Program_Error when this procedure is called from a | |
31491 | protected action. | |
31492 | (Unlock_Entries): Remove the ownership of the protected object. | |
31493 | (Lock_Entries): If pragma Detect_Blocking is in effect and the caller | |
31494 | of this procedure is already the protected object's owner then | |
31495 | Program_Error is raised. | |
31496 | Do not raise Program_Error when this procedure is called from | |
31497 | a protected action. | |
31498 | ||
31499 | * s-tposen.ads, s-tpoben.ads (Protection_Entries): Add the field Owner, | |
31500 | used to store the protected object's owner. | |
31501 | ||
31502 | * s-tpobop.adb (Protected_Entry_Call): If pragma Detect_Blocking is in | |
31503 | effect and this procedure (a potentially blocking operation) is called | |
31504 | from whithin a protected action, Program_Error is raised. | |
31505 | (Timed_Protected_Entry_Call): If pragma Detect_Blocking is in effect | |
31506 | and this procedure (a potentially blocking operation) is called from | |
31507 | whithin a protected action, Program_Error is raised. | |
31508 | ||
31509 | 2005-03-17 Vincent Celier <celier@adacore.com> | |
31510 | Nicolas Setton <setton@adacore.com> | |
31511 | ||
31512 | * mlib-tgt-darwin.adb (Build_Dynamic_Library): Remove the "-fini" | |
31513 | switch, not supported by the linker on Darwin. Add '_' before | |
31514 | <library>init, as this character is added unconditionally by the | |
31515 | compiler. | |
31516 | (Is_Archive_Ext): Replace the wrong library extension ".dyld" by the | |
31517 | correct one ".dylib". This fixes detection of the archive files when | |
31518 | building library projects. | |
31519 | ||
31520 | 2005-03-17 Vincent Celier <celier@adacore.com> | |
31521 | ||
31522 | * switch-m.adb (Normalize_Compiler_Switches): Recognize switches | |
31523 | -gnat83, -gnat95 and -gnat05. | |
31524 | ||
31525 | 2005-03-17 Vasiliy Fofanov <fofanov@adacore.com> | |
31526 | ||
31527 | * gnat_ugn.texi: Document gnatmem restriction | |
31528 | ||
31529 | 2005-03-17 Thomas Quinot <quinot@adacore.com> | |
31530 | ||
31531 | * snames.adb: Document new TSS names introduced by exp_dist/exp_tss | |
31532 | cleanup | |
31533 | ||
31534 | 2005-03-17 Robert Dewar <dewar@adacore.com> | |
31535 | ||
31536 | * s-interr.ads, s-interr.adb, sem_ch3.adb, prj.ads, prj.adb, | |
31537 | a-interr.adb, a-interr.ads, s-interr-sigaction.adb, s-interr-dummy.adb, | |
31538 | s-interr-vms.adb, s-interr-vxworks.adb: Minor reformatting | |
31539 | ||
31540 | * casing.adb: Comment improvements | |
31541 | ||
31542 | 2005-03-17 Pascal Obry <obry@adacore.com> | |
31543 | ||
31544 | * g-expect.adb: Minor reformatting. | |
31545 | ||
a1286ef5 ZW |
31546 | 2005-03-15 Zack Weinberg <zack@codesourcery.com> |
31547 | ||
31548 | * Make-lang.in (doc/gnat_ugn_unw.info, doc/gnat_rm.info) | |
31549 | (doc/gnat_ugn_unw.dvi, doc/gnat_rm.dvi): Add gcc-vers.texi | |
31550 | to dependencies. | |
31551 | ||
2532808d VC |
31552 | 2005-03-15 Vincent Celier <celier@adacore.com> |
31553 | ||
a1286ef5 ZW |
31554 | * mlib-tgt-darwin.adb (Library_Exist_For, Library_File_Name_For): |
31555 | Add new parameter In_Tree to specify the project tree: needed | |
31556 | by the project manager. Adapt to changes in project manager | |
31557 | using new parameter In_Tree. | |
2532808d | 31558 | |
e2d6b9b9 JJ |
31559 | 2005-03-15 Jakub Jelinek <jakub@redhat.com> |
31560 | ||
31561 | * Make-lang.in (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, | |
31562 | ada/nmake.adb, ada/nmake.ads): Use unique subdirectories of | |
31563 | ada/bldtools to avoid make -jN failures. | |
31564 | ||
813edff1 EB |
31565 | 2005-03-15 Eric Botcazou <ebotcazou@adacore.com> |
31566 | ||
31567 | * trans.c (gnat_to_gnu) <N_Return_Statement>: Set gnu_result | |
31568 | to NULL_TREE on entry. | |
31569 | ||
4f51c6e7 AC |
31570 | 2005-03-15 Robert Dewar <dewar@adacore.com> |
31571 | ||
31572 | * system-unixware.ads, system-linux-ia64.ads, system-freebsd-x86.ads, | |
31573 | system-lynxos-ppc.ads, system-lynxos-x86.ads, system-linux-x86_64.ads, | |
31574 | system-tru64.ads, system-aix.ads, system-vxworks-sparcv9.ads, | |
31575 | system-vxworks-xscale.ads, system-solaris-x86.ads, system-irix-o32.ads, | |
31576 | system-irix-n32.ads, system-hpux.ads, system-vxworks-m68k.ads, | |
31577 | system-linux-x86.ads, system-vxworks-mips.ads, system-os2.ads, | |
31578 | system-interix.ads, system-solaris-sparc.ads, | |
31579 | system-solaris-sparcv9.ads, system-vms.ads, system-mingw.ads, | |
31580 | system-vms-zcx.ads, system-vxworks-ppc.ads, system-vxworks-alpha.ads, | |
31581 | system-vms_64.ads, system-darwin-ppc.ads, system-vxworks-x86.ads, | |
31582 | system-linux-ppc.ads, system-linux-alpha.ads, system-linux-sparc.ads, | |
31583 | system-linux-s390.ads, system-linux-s390x.ads: Add line defining | |
31584 | Compiler_System_Version to be False. | |
31585 | ||
31586 | * opt.ads: Add new flag Opt.Address_Is_Private | |
31587 | ||
31588 | * targparm.ads, targparm.adb: Set new flag Opt.Address_Is_Private | |
31589 | Add new parameter Compiler_System_Version to avoid checking for | |
31590 | completeness of parameters when compiler is compiling itself. | |
31591 | Allows old versions of GNAT to be compiled with new compiler. | |
31592 | ||
31593 | 2005-03-15 Eric Botcazou <ebotcazou@adacore.com> | |
31594 | ||
31595 | * s-osinte-tru64.ads, s-osinte-tru64.adb (Get_Stack_Base): New function | |
31596 | (Hide_Yellow_Zone): New procedure to hide the Yellow Zone of the | |
31597 | calling thread. | |
31598 | (Stack_Base_Available): New flag. | |
31599 | (Get_Page_Size): New overloaded functions imported from C. | |
31600 | (PROT_NONE, PROT_READ, PROT_WRITE, PROT_EXEC, PROT_ALL, | |
31601 | PROT_ON, PROT_OFF): New constants. | |
31602 | (mprotect): New function imported from C. | |
31603 | (pthread_teb_t): New record type. | |
31604 | ||
31605 | * s-taprop-tru64.adb: (Enter_Task): Invoke Hide_Yellow_Zone. | |
31606 | (Create_Task): Account for the Yellow Zone and the guard page. | |
31607 | ||
31608 | 2005-03-15 Vincent Celier <celier@adacore.com> | |
31609 | ||
31610 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, | |
31611 | mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, | |
31612 | mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb, | |
31613 | mlib-tgt-vxworks.adb, mlib-tgt-lynxos.adb (Library_Exist_For, | |
31614 | Library_File_Name_For): Add new parameter In_Tree | |
31615 | to specify the project tree: needed by the project manager. | |
31616 | Adapt to changes in project manager using new parameter In_Tree. | |
31617 | Remove local imports, use functions in System.CRTL. | |
31618 | ||
31619 | * make.adb, clean.adb, gnatcmd.adb (Project_Tree): New constant needed | |
31620 | to use the project manager. | |
31621 | ||
31622 | * makeutl.ads, makeutl.adb (Linker_Options_Switches): New parameter | |
31623 | In_Tree to designate the project tree. Adapt to changes in the project | |
31624 | manager, using In_Tree. | |
31625 | ||
31626 | * mlib-prj.ads, mlib-prj.adb (Build_Library, Check_Library, | |
31627 | Copy_Interface_Sources): Add new parameter In_Tree to specify the | |
31628 | project tree: needed by the project manager. | |
31629 | (Build_Library): Check that Arg'Length >= 6 before checking if it | |
31630 | contains "--RTS=...". | |
31631 | ||
31632 | * mlib-tgt.ads, mlib-tgt.adb (Library_Exist_For, | |
31633 | Library_File_Name_For): Add new parameter In_Tree to specify the | |
31634 | project tree: needed by the project manager. | |
31635 | ||
31636 | * prj.ads, prj.adb: Major modifications to allow several project trees | |
31637 | in memory at the same time. | |
31638 | Change tables to dynamic tables and hash tables to dynamic hash | |
31639 | tables. Move tables and hash tables from Prj.Com (in the visible part) | |
31640 | and Prj.Env (in the private part). Move some constants from the visible | |
31641 | part to the private part. Make other constants deferred. | |
31642 | (Project_Empty): Make it a variable, not a function | |
31643 | (Empty_Project): Add parameter Tree. Returns the data with the default | |
31644 | naming data of the project tree Tree. | |
31645 | (Initialize): After updating Std_Naming_Data, copy its value to the | |
31646 | component Naming of Project Empty. | |
31647 | (Register_Default_Naming_Scheme): Use and update the default naming | |
31648 | component of the project tree, instead of the global variable | |
31649 | Std_Naming_Data. | |
31650 | (Standard_Naming_Data): Add defaulted parameter Tree. If project tree | |
31651 | Tree is not defaulted, return the default naming data of the Tree. | |
31652 | (Initial_Buffer_Size): Constant moved from private part | |
31653 | (Default_Ada_Spec_Suffix_Id, Default_Ada_Body_Suffix_Id, Slash_Id); new | |
31654 | variables initialized in procedure Initialize. | |
31655 | (Add_To_Buffer): Add two in out parameters to replace global variables | |
31656 | Buffer and Buffer_Last. | |
31657 | (Default_Ada_Spec_Suffix, Default_Body_Spec_Suffix, Slash): New | |
31658 | functions. | |
31659 | Adapt to changes to use new type Project_Tree_Ref and dynamic tables and | |
31660 | hash tables. | |
31661 | (Initialize, Reset, register-Default_Namng-Scheme): Add a new parameter | |
31662 | for the project tree. | |
31663 | (Project_Tree_Data, Project_Tree_Ref, No_Project): Declare types and | |
31664 | constant at the beginning of the package spec, so that they cane be used | |
31665 | in subprograms before their full declarations. | |
31666 | (Standard_Naming_Data): Add defaulted parameter of type Project_Node_Ref | |
31667 | (Empty_Project): Add parameter of type Project_Node_Ref | |
31668 | (Private_Project_Tree_Data): Add component Default_Naming of type | |
31669 | Naming_Data. | |
31670 | (Buffer, Buffer_Last): remove global variables | |
31671 | (Add_To_Buffer): Add two in out parameters to replace global variables | |
31672 | Buffer and Buffer_Last. | |
31673 | (Current_Packages_To_Check): Remove global variable | |
31674 | (Empty_Name): Move to private part | |
31675 | (No-Symbols): Make it a constant | |
31676 | (Private_Project_Tree_Data): New type for the private part of the | |
31677 | project tree data. | |
31678 | (Project_Tree_Data): New type for the data of a project tree | |
31679 | (Project_Tree_Ref): New type to designate a project tree | |
31680 | (Initialize, Reset, register-Default_Namng-Scheme): Add a new parameter | |
31681 | for the project tree. | |
31682 | ||
31683 | * prj-attr.ads: Add with Table; needed, as package Prj no longer | |
31684 | imports package Table. | |
31685 | ||
31686 | * prj-com.adb: Remove empty, no longer needed body | |
31687 | ||
31688 | * prj-com.ads: Move most of the content of this package to package Prj. | |
31689 | ||
31690 | * prj-dect.ads, prj-dect.adb (Parse): New parameters In_Tree to | |
31691 | designate the project node tree and Packages_To_Check to replace | |
31692 | global variable Current_Packages_To_Check. | |
31693 | Add new parameters In_Tree and Packages_To_Check to local subprograms, | |
31694 | when needed. Adapt to changes in project manager with project node tree | |
31695 | In_Tree. | |
31696 | ||
31697 | * prj-env.ads, prj-env.adb: Add new parameter In_Tree to designate the | |
31698 | project tree to most subprograms. Move tables and hash tables to | |
31699 | private part of package Prj. | |
31700 | Adapt to changes in project manager using project tree In_Tree. | |
31701 | ||
31702 | * prj-makr.adb (Tree): New constant to designate the project node tree | |
31703 | Adapt to change in project manager using project node tree Tree | |
31704 | ||
31705 | * prj-nmsc.ads, prj-nmsc.adb (Check_Stand_Alone_Library): Correctly | |
31706 | display the Library_Src_Dir and the Library_Dir. | |
31707 | Add new parameter In_Tree to designate the project node tree to most | |
31708 | subprograms. Adapt to changes in the project manager, using project tree | |
31709 | In_Tree. | |
31710 | (Check_Naming_Scheme): Do not alter the casing on platforms where | |
31711 | the casing of file names is not significant. | |
31712 | (Check): Add new parameter In_Tree to designate the | |
31713 | ||
31714 | * prj-pars.ads, prj-pars.adb (Parse): Add new parameter In_Tree to | |
31715 | designate the project tree. | |
31716 | Declare a project node tree to call Prj.Part.Parse and Prj.Proc.Process | |
31717 | ||
31718 | * prj-part.ads, prj-part.adb (Buffer, Buffer_Last): Global variables, | |
31719 | to replace those that were in the private part of package Prj. | |
31720 | Add new parameter In__Tree to designate the project node tree to most | |
31721 | subprograms. Adapt to change in Prj.Tree with project node tree In_Tree. | |
31722 | (Post_Parse_Context_Clause): When specifying the project node of a with | |
31723 | clause, indicate that it is a limited with only if there is "limited" | |
31724 | in the with clause, not necessarily when In_Limited is True. | |
31725 | (Parse): Add new parameter In_Tree to designate the project node tree | |
31726 | ||
31727 | * prj-pp.ads, prj-pp.adb (Pretty_Print): Add new parameter In_Tree to | |
31728 | designate the project node tree. Adapt to change in Prj.Tree with | |
31729 | project node tree In_Tree. | |
31730 | ||
31731 | * prj-proc.ads, prj-proc.adb (Recursive_Process): Specify the project | |
31732 | tree In_Tree in the call to function Empty_Process to give its initial | |
31733 | value to the project data Processed_Data. | |
31734 | Add new parameters In_Tree to designate the project tree and | |
31735 | From_Project_Node_Tree to designate the project node tree to several | |
31736 | subprograms. Adapt to change in project manager with project tree | |
31737 | In_Tree and project node tree From_Project_Node_Tree. | |
31738 | ||
31739 | * prj-strt.ads, prj-strt.adb (Buffer, Buffer_Last): Global variables, | |
31740 | to replace those that were in the private part of package Prj. | |
31741 | Add new parameter In_Tree to designate the project node tree to most | |
31742 | subprograms. Adapt to change in Prj.Tree with project node tree In_Tree. | |
31743 | ||
31744 | * prj-tree.ads, prj-tree.adb: Add new parameter of type | |
31745 | Project_Node_Tree_Ref to most subprograms. | |
31746 | Use this new parameter to store project nodes in the designated project | |
31747 | node tree. | |
31748 | (Project_Node_Tree_Ref): New type to designate a project node tree | |
31749 | (Tree_Private_Part): Change table to dynamic table and hash tables to | |
31750 | dynamic hash tables. | |
31751 | ||
31752 | * prj-util.ads, prj-util.adb: Add new parameter In_Tree to designate | |
31753 | the project tree to most subprograms. Adapt to changes in project | |
31754 | manager using project tree In_Tree. | |
31755 | ||
31756 | * makegpr.adb (Project_Tree): New constant needed to use project | |
31757 | manager. | |
31758 | ||
31759 | 2005-03-15 Olivier Hainque <hainque@adacore.com> | |
31760 | ||
31761 | * s-intman-posix.adb (Notify_Exception): Adjust signature, as handler | |
31762 | for sigactions with SA_SIGINFO set. Call | |
31763 | __gnat_adjust_context_for_raise before raising, to perform the | |
31764 | potentially required adjustments to the machine context for the GCC | |
31765 | unwinder. | |
31766 | ||
31767 | * raise.h (__gnat_adjust_context_for_raise): New prototype. | |
31768 | ||
31769 | * init.c (__gnat_adjust_context_for_raise) HPUX: Initial revision. | |
31770 | Adjust PC by one in the provided machine context. | |
31771 | (__gnat_install_handler) HPUX: Set SA_SIGINFO in the sigaction flags, | |
31772 | so that the handler is passed the context structure to adjust prior to | |
31773 | the raise. | |
31774 | (__gnat_error_handler) HPUX: Adjust the signature to match what an | |
31775 | SA_SIGINFO sigaction should look like. Call | |
31776 | __gnat_adjust_context_for_raise before actually raising. | |
31777 | (__gnat_adjust_context_for_raise): Default noop to help PC | |
31778 | adjustments before raise from signal handlers. | |
31779 | (__gnat_error_handler): Indirectly call a predicate function to | |
31780 | determine if a condition should be resignaled or not. | |
31781 | (__gnat_set_resignal_predicate): User interface to modify the predicate. | |
31782 | (__gnat_default_resignal_p): Default GNAT predicate. | |
31783 | ||
31784 | 2005-03-15 Doug Rupp <rupp@adacore.com> | |
31785 | ||
31786 | * adaint.c: Prefix #include of VMS system header files with vms/ | |
31787 | [VMS] (HOST_EXECUTABLE_SUFFIX, HOST_OBJECT_SUFFIX): Define for VMS. | |
31788 | Do not define a dummy function "convert_addresses" under Darwin, | |
31789 | not needed. | |
31790 | ||
31791 | * tb-alvms.c, expect.c: Prefix #include of VMS system header files | |
31792 | with vms/ | |
31793 | ||
31794 | 2005-03-15 Nicolas Setton <setton@adacore.com> | |
31795 | ||
31796 | * tracebak.c: Under Darwin, use the same unwinding mechanisms as under | |
31797 | PPC/AIX. | |
31798 | ||
31799 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
31800 | ||
31801 | * a-reatim.ads, a-reatim.adb: Add functions Minutes and Seconds for | |
31802 | AI-386. | |
31803 | ||
31804 | * a-retide.ads: Minor comment changes | |
31805 | ||
31806 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
31807 | ||
31808 | * a-stzunb.adb, a-stzunb.adb a-stzunb.ads, a-stzunb.ads, | |
31809 | a-stwiun.ads, a-stwiun.adb, a-strunb.ads, a-strunb.adb: Move | |
31810 | Realloc_For_Chunk to private part of package. | |
31811 | New subprograms for AI-301 | |
31812 | ||
31813 | * a-szuzti.adb, a-suteio.adb, a-swuwti.adb: Improve efficiency of | |
31814 | Get_Line procedure. | |
31815 | Avoid unnecessary use of Get/Set_Wide_String | |
31816 | ||
31817 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
31818 | ||
31819 | PR ada/13470 | |
a1286ef5 | 31820 | * a-stunau.ads, a-stunau.adb: |
4f51c6e7 AC |
31821 | Change interface to allow efficient (and correct) implementation |
31822 | The previous changes to allow extra space in unbounded strings had | |
31823 | left this interface a bit broken. | |
31824 | ||
31825 | * a-suteio.adb: Avoid unnecessary use of Get/Set_String | |
31826 | ||
31827 | * g-spipat.ads, g-spipat.adb: New interface for Get_String | |
31828 | Minor reformatting (function specs) | |
31829 | ||
31830 | * g-spitbo.adb: New interface for Get_String | |
31831 | ||
31832 | * g-spitbo.ads: Minor reformatting | |
31833 | ||
31834 | * a-swunau.ads, a-swunau.adb: New interface for Get_Wide_String | |
31835 | ||
31836 | * a-szunau.ads, a-szunau.adb: New interface for Get_Wide_Wide_String | |
31837 | ||
31838 | 2005-03-15 Javier Miranda <miranda@adacore.com> | |
31839 | Robert Dewar <dewar@adacore.com> | |
31840 | Thomas Quinot <quinot@adacore.com> | |
31841 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
31842 | ||
31843 | * atree.ads, atree.adb: Add support for Elist24 field | |
31844 | ||
31845 | * atree.h: Fix wrong definition of Field27 | |
31846 | Add support for Elist16 field | |
31847 | Add support for Elist24 field | |
31848 | ||
31849 | * einfo.ads, einfo.adb (Abstract_Interfaces, | |
31850 | Set_Abstract_Interfaces): New subprograms. | |
31851 | (Abstract_Interface_Alias, Set_Abstract_Interface_Alias): New | |
31852 | subprograms. | |
31853 | (Access_Disp_Table, Set_Access_Disp_Table): Modified to handle a list of | |
31854 | entities rather than a single node. | |
31855 | (Is_Interface, Set_Is_Interface): New subprogram | |
31856 | (First_Tag_Component): New syntesized attribute | |
31857 | (Next_Tag_Component): New synthesized attribute | |
31858 | (Write_Entity_Flags): Upgraded to write Is_Interface | |
31859 | (Write_Field24_Name): Upgraded to write Abstract_Interfaces | |
31860 | (Write_Field25_Name): Upgraded to write Abstract_Interface_Alias | |
31861 | (Task_Body_Procedure): New subprogram to read this attribute. | |
31862 | (Set_Task_Body_Procedure): New subprogram to set this attribute. | |
31863 | (Has_Controlled_Component): Now applies to all entities. | |
31864 | This is only a documentation change, since it always worked to apply | |
31865 | this to other than composite types (yielding false), but now this is | |
31866 | official. | |
31867 | Update documentation on Must_Be_Byte_Aligned for new spec | |
31868 | ||
31869 | * tbuild.adb, exp_dist.adb, exp_disp.adb, exp_ch3.ads, exp_ch3.adb, | |
31870 | exp_attr.adb, exp_aggr.adb, exp_ch4.adb, exp_ch5.adb: Upgrade all the | |
31871 | uses of the Access_Disp_Table attribute to reference the first dispatch | |
31872 | table associated with a tagged type. As | |
31873 | part of the implementation of abstract interface types, | |
31874 | Access_Disp_Table has been redefined to contain a list of dispatch | |
31875 | tables (rather than a single dispatch table). | |
31876 | Similarly, upgrade all the references to Tag_Component by the | |
31877 | new attribute First_Tag_Component. | |
31878 | (Find_Inherited_TSS): Moved to exp_tss. | |
31879 | Clean up test in Expand_N_Object_Declaration for cases | |
31880 | where we need to do a separate assignment of the initial value. | |
31881 | (Expand_N_Object_Declaration): If the expression in the | |
31882 | declaration of a tagged type is an aggregate, no need to generate an | |
31883 | additional tag assignment. | |
31884 | (Freeze_Type): Now a function that returns True if the N_Freeze_Entity | |
31885 | is to be deleted. | |
31886 | Bit packed array ops are only called if operands are known to be | |
31887 | aligned. | |
31888 | (Component_Equality): When returning an N_Raise_Program_Error statement, | |
31889 | ensure that its Etype is set to Empty to avoid confusing GIGI (which | |
31890 | expects that only expressions have a bona fide type). | |
31891 | (Make_Tag_Ctrl_Assignment): Use Build_Actual_Subtype to correctly | |
31892 | determine the amount of data to be copied. | |
31893 | ||
31894 | * par.adb (P_Interface_Type_Definition): New subprogram that parses the | |
31895 | new syntax rule of Ada 2005 interfaces (for AI-251 and AI-345): | |
31896 | INTERFACE_TYPE_DEFINITION ::= | |
31897 | [limited | task | protected | synchronized] interface | |
a1286ef5 | 31898 | [AND interface_list] |
4f51c6e7 AC |
31899 | |
31900 | * par-ch3.adb (P_Type_Declaration): Modified to give support to | |
31901 | interfaces. | |
31902 | (P_Derived_Type_Def_Or_Private_Ext_Decl): Modified to give support to | |
31903 | interfaces. | |
31904 | (P_Interface_Type_Definition): New subprogram that parses the new | |
31905 | syntax rule of Ada 2005 interfaces | |
31906 | (P_Identifier_Declarations): fix two occurrences of 'RENAMES' in error | |
31907 | messages by the correct RENAMES (quotes removed). | |
31908 | ||
31909 | * sem_prag.adb: Upgrade all the references to Tag_Component by the new | |
31910 | attribute First_Tag_Component. | |
31911 | ||
31912 | * sinfo.ads, sinfo.adb: Remove OK_For_Stream flag, not used, not needed | |
31913 | (Interface_List, Set_Interface_List): New subprograms. | |
31914 | (Interface_Present, Set_Interface_Present): New subprograms. | |
31915 | (Limited_Present, Set_Limited_Present): Available also in derived | |
31916 | type definition nodes. | |
31917 | (Protected_Present, Set_Protected_Present): Available also in | |
31918 | record type definition and | |
31919 | derived type definition nodes. | |
31920 | (Synchronized_Present, Set_Synchronized_Present): New subprograms. | |
31921 | (Task_Present, Set_Task_Present): New subprogram. | |
31922 | (Task_Body_Procedure): Removed. | |
31923 | (Set_Task_Body_Procedure): Removed. | |
31924 | These subprogram have been removed because the attribute | |
31925 | Task_Body_Procedure has been moved to the corresponding task type | |
31926 | or task subtype entity to leave a field free to store the list | |
31927 | of interfaces implemented by a task (for AI-345) | |
31928 | Add Expression field to N_Raise_Statement node for Ada 2005 AI-361 | |
31929 | (Null_Exclusion_Present): Change to Flag11, to avoid conflict with | |
31930 | expression flag Do_Range_Check | |
31931 | (Exception_Junk): Change to Flag7 to accomodate above change | |
31932 | (Box_Present, Default_Name, Specification, Set_Box_Present, | |
31933 | Set_Default_Name, Set_Specification): Expand the expression | |
31934 | "X in N_Formal_Subprogram_Declaration" into the corresponding | |
31935 | two comparisons. Required to use the csinfo tool. | |
31936 | ||
31937 | * exp_ch11.adb (Expand_N_Raise_Statement): Deal with case where | |
31938 | "with string" given. | |
31939 | ||
a1286ef5 ZW |
31940 | * sem_ch11.adb (Analyze_Raise_Statement): Handle case where string |
31941 | expression given. | |
4f51c6e7 AC |
31942 | |
31943 | * par-ch11.adb (P_Raise_Statement): Recognize with string expression | |
31944 | in 2005 mode | |
31945 | ||
31946 | * exp_ch9.adb (Build_Task_Proc_Specification): Modified to use entity | |
31947 | attribute Task_Body_Procedure rather than the old semantic field that | |
31948 | was available in the task_type_declaration node. | |
31949 | ||
31950 | * par-ch12.adb (P_Formal_Type_Definition): Modified to handle formal | |
31951 | interface type definitions. | |
31952 | (P_Formal_Derived_Type_Definition): Modified to handle the list of | |
31953 | interfaces. | |
31954 | ||
31955 | * par-ch9.adb (P_Task): Modified to handle the list of interfaces in a | |
31956 | task type declaration. | |
31957 | (P_Protected): Modified to handle the list of interfaces in a | |
31958 | protected type declaration. | |
31959 | ||
31960 | 2005-03-15 Doug Rupp <rupp@adacore.com> | |
31961 | Vincent Celier <celier@adacore.com> | |
31962 | ||
31963 | * bindgen.adb (Gen_Main_C): Change WBI __posix_exit to decc$posix_exit | |
31964 | (Gen_Output_File_C): Likewise. | |
31965 | (Gen_Main_C): Issue #include <stdlib.h> to avoid warning | |
31966 | ||
31967 | 2005-03-15 Thomas Quinot <quinot@adacore.com> | |
31968 | ||
31969 | * checks.adb (Get_E_First_Or_Last): When the expression being retrieved | |
31970 | is an N_Raise_Constraint_Error node, create a new copy of it without | |
31971 | going through a call to Duplicate_Subexpr. | |
31972 | ||
31973 | 2005-03-15 Eric Botcazou <ebotcazou@adacore.com> | |
31974 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
31975 | Nicolas Setton <setton@adacore.com> | |
31976 | Ed Schonberg <schonberg@adacore.com> | |
31977 | ||
31978 | PR ada/19900 | |
31979 | PR ada/19408 | |
31980 | PR ada/19140 | |
31981 | PR ada/20255 | |
4f51c6e7 AC |
31982 | * decl.c (gnat_to_gnu_field): Reject aliased components with a |
31983 | representation clause that prescribes a size not equal to the rounded | |
31984 | size of their types. | |
31985 | (gnat_to_gnu_entity, case E_Component): Always look at | |
31986 | Original_Record_Component if Present and not the entity. | |
31987 | (gnat_to_gnu_entity, case E_Record_Subtype): Rework handling of subtypes | |
31988 | of tagged extension types by not making field for components that are | |
31989 | inside the parent. | |
31990 | (gnat_to_gnu_entity) <E_Record_Type>: Fix typo in the alignment formula | |
31991 | (gnat_to_gnu_entity) <E_Variable>: Do not convert again the | |
31992 | expression to the type of the object when the object is constant. | |
31993 | Reverse defer_debug_incomplete_list before traversing it, so that trees | |
31994 | are processed in the order at which they were added to the list. This | |
31995 | order is important when using the stabs debug format. | |
31996 | If we are deferring the output of debug information, also defer this | |
31997 | output for a function return type. | |
31998 | When adding fields to a record, prevent emitting debug information | |
31999 | for incomplete records, emit the information only when the record is | |
32000 | complete. | |
32001 | (components_to_record): New parameter defer_debug. | |
32002 | (gnat_to_gnu_entity, case E_Array_Subtype): Call copy_alias_set. | |
32003 | (gnat_to_gnu_field_decl): New function. | |
32004 | (substitution_list, annotate_rep): Call it. | |
32005 | (gnat_to_gnu_entity, case E_Record_Subtype): Likewise. | |
32006 | (gnat_to_gnu_entity, case E_Record_Type): Likewise. | |
32007 | No longer update discriminants to not be a COMPONENT_REF. | |
32008 | (copy_alias_set): Strip padding from input type; also handle | |
32009 | unconstrained arrays properly. | |
32010 | ||
32011 | * gigi.h (write_record_type_debug_info): New function. | |
32012 | Convert to use ANSI-style prototypes. Remove unused | |
32013 | declarations for emit_stack_check, elab_all_gnat and | |
32014 | set_second_error_entity. | |
32015 | (gnat_to_gnu_field_decl): New decl. | |
32016 | ||
32017 | * utils.c (write_record_type_debug_info): New function. | |
32018 | (finish_record_type): Delegate generation of debug information to | |
32019 | write_record_type_debug_info. | |
32020 | (update_pointer_to): Remove unneeded calls to rest_of_decl_compilation. | |
32021 | (update_pointer_to): Fix pasto. | |
32022 | (convert) <UNION_TYPE>: Accept slight type variations when | |
32023 | converting to an unchecked union type. | |
32024 | ||
32025 | * exp_ch13.adb (Expand_N_Freeze_Entity): If Freeze_Type returns True, | |
32026 | replace the N_Freeze_Entity with a null statement. | |
32027 | ||
32028 | * freeze.adb (Freeze_Expression): If the freeze nodes are generated | |
32029 | within a constrained subcomponent of an enclosing record, place the | |
32030 | freeze nodes in the scope stack entry for the enclosing record. | |
32031 | (Undelay_Type): New Subprogram. | |
32032 | (Set_Small_Size): Pass T, the type to modify; all callers changed. | |
32033 | (Freeze_Entity, Freeze_Record_Type): Change the way we handle types | |
32034 | within records; allow them to have freeze nodes if their base types | |
32035 | aren't frozen yet. | |
32036 | ||
017205f5 EB |
32037 | * exp_util.adb (Remove_Side_Effects): Properly test for |
32038 | Expansion_Delayed and handle case when it's inside an | |
32039 | N_Qualified_Expression. | |
32040 | ||
4f51c6e7 AC |
32041 | * sem_ch3.adb (Derived_Type_Declaration): New predicate |
32042 | Comes_From_Generic, to recognize accurately that the parent type in a | |
32043 | derived type declaration can be traced back to a formal type, because | |
32044 | it is one or is derived from one, or because its completion is derived | |
32045 | from one. | |
32046 | (Constrain_Component_Type): If component comes from source and has no | |
32047 | explicit constraint, no need to constrain in in a subtype of the | |
32048 | enclosing record. | |
32049 | (Constrain_Access, Constrain_Array): Allow itypes to be delayed. | |
32050 | Minor change to propagate Is_Ada_2005 flag | |
32051 | ||
32052 | * trans.c (gnat_to_gnu, case N_Aggregate): Verify that | |
32053 | Expansion_Delayed is False. | |
32054 | (assoc_to_constructor): Ignore fields that have a | |
32055 | Corresponding_Discriminant. | |
32056 | (gnat_to_gnu) <N_Return_Statement>: Restructure. If the | |
32057 | function returns "by target", dereference the target pointer using the | |
32058 | type of the actual return value. | |
32059 | <all>: Be prepared for a null gnu_result. | |
32060 | (processed_inline_subprograms): Check flag_really_no_inline | |
32061 | instead of flag_no_inline. | |
32062 | (set_second_error_entity): Remove unused function. | |
32063 | (gnat_to_gnu, case N_Selected_Component): Call | |
32064 | gnat_to_gnu_field_decl. | |
32065 | (assoc_to_constructor): Likewise. | |
32066 | ||
32067 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
32068 | Ed Schonberg <schonberg@adacore.com> | |
32069 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
32070 | ||
4f51c6e7 AC |
32071 | * exp_pakd.adb (Create_Packed_Array_Type): Do not set |
32072 | Must_Be_Byte_Aligned for cases where we do not need to use a | |
32073 | System.Pack_nn unit. | |
32074 | ||
32075 | * exp_ch6.adb (Expand_Call): Call Expand_Actuals for functions as well | |
32076 | as procedures. | |
32077 | Needed now that we do some processing for IN parameters as well. This | |
32078 | may well fix some unrelated errors. | |
32079 | (Expand_Call): Handle case of unaligned objects (in particular those | |
32080 | that come from packed arrays). | |
32081 | (Expand_Inlined_Call): If the subprogram is a renaming as body, and the | |
32082 | renamed entity is an inherited operation, re-expand the call using the | |
32083 | original operation, which is the one to call. | |
32084 | Detect attempt to inline parameterless recursive subprogram. | |
32085 | (Represented_As_Scalar): Fix to work properly with private types | |
32086 | (Is_Possibly_Unaligned_Object): Major rewrite to get a much more | |
32087 | accurate estimate. Yields True in far fewer cases than before, | |
32088 | improving the quality of code that depends on this test. | |
4f51c6e7 AC |
32089 | |
32090 | * exp_util.adb (Kill_Dead_Code): For a package declaration, iterate | |
32091 | over both visible and private declarations to remove them from tree, | |
32092 | and mark subprograms declared in package as eliminated, to prevent | |
32093 | spurious use in subsequent compilation of generic units in the context. | |
32094 | ||
32095 | * exp_util.ads: Minor cleanup in variable names | |
32096 | ||
32097 | * sem_eval.ads, sem_eval.adb: Minor reformatting | |
32098 | (Compile_Time_Known_Bounds): New function | |
32099 | ||
32100 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32101 | ||
32102 | * exp_ch7.adb (Convert_View): Use base types of underlying types when | |
32103 | determining whether an unchecked conversion is needed for the argument | |
32104 | of an initialization call. | |
32105 | ||
32106 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32107 | ||
32108 | * exp_intr.adb (Expand_Unc_Conversion): As a target type, use the type | |
32109 | that appears in the instantiation rather than the internal subtype | |
32110 | generated in the wrapper package, to avoid anomalies in gigi when the | |
32111 | target is derived from a private type whose full view is an access type. | |
32112 | ||
32113 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
32114 | ||
32115 | * exp_smem.adb, sem_attr.adb: Remove OK_For_Stream flag, not used, | |
32116 | not needed. | |
32117 | Add documentation to replace the use of this flag | |
32118 | Fix kludge for Maximum_Alignment on x86 so that it does not apply to | |
32119 | the x86_64. | |
32120 | ||
32121 | 2005-03-15 Thomas Quinot <quinot@adacore.com> | |
32122 | ||
32123 | * exp_tss.ads, exp_tss.adb (Find_Inherited_TSS): New subprogram, moved | |
32124 | here from exp_attr so it can be shared between exp_attr and exp_dist. | |
32125 | (TSS_Names): Renamed from OK_TSS_Names. This array contains the list of | |
32126 | all TSS names, not a subset thereof, and the previous name introduced | |
32127 | an unnecessarily confusion that a distinction might exist between | |
32128 | "OK" TSS names and some "not OK" TSS names. | |
32129 | ||
32130 | 2005-03-15 Doug Rupp <rupp@adacore.com> | |
32131 | ||
32132 | * gnatchop.adb (Locate_Executable): Normalize the possibly VMS style | |
32133 | Command_Name. | |
32134 | ||
32135 | 2005-03-15 Pascal Obry <obry@adacore.com> | |
32136 | Eric Botcazou <ebotcazou@adacore.com> | |
32137 | ||
32138 | PR ada/20226 | |
32139 | PR ada/20344 | |
4f51c6e7 AC |
32140 | * init.c (__gnat_initialize): Do not call __gnat_install_SEH_handler() |
32141 | when IN_RTS. This is to work around a bootstrap path problem. | |
32142 | ||
32143 | * misc.c (gnat_parse_file): Create a SEH (Structured Exception Handler) | |
32144 | table and pass it to __gnat_install_SEH_handler(). | |
32145 | (gnat_handle_option): Accept OPT_fRTS_, not OPT_fRTS. | |
32146 | ||
32147 | * lang.opt: Fix specification of -fRTS=. | |
32148 | ||
32149 | 2005-03-15 Doug Rupp <rupp@adacore.com> | |
32150 | Bernard Banner <banner@adacore.com> | |
32151 | Vincent Celier <celier@adacore.com> | |
32152 | Arnaud Charlet <charlet@adacore.com> | |
32153 | ||
32154 | PR ada/6852 | |
32155 | This change works fine when gnatlib is built from the gcc directory, | |
32156 | but does not work when using the libada Makefile, since GCC_FOR_TARGET | |
32157 | is not passed to ada/Makefile.in, so more work is needed by a | |
32158 | Makefile/configure expert. | |
32159 | ||
32160 | * Makefile.in(gnatlib): Use $(GCC_FOR_TARGET) for compiling library. | |
32161 | set GMEM_LIB on ia64 linux to add optional support for gnatmem. | |
32162 | Setup gnatlink switch -M for x86_64 linux, as it is already setup | |
32163 | for Linux x86. | |
32164 | (gnatlib-shared-default): Use GNATLIBCFLAGS as well. | |
32165 | Run ranlib on libgccprefix.a | |
32166 | Define PREFIX_OBJS for Darwin, to build libgccprefix. | |
32167 | (ADA_INCLUDE_SRCS): Split Ada packages. | |
32168 | ||
32169 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
32170 | ||
32171 | * Make-lang.in: Add g-utf_32 unit for gnat and gnatbind | |
32172 | ||
32173 | * impunit.adb: Add GNAT.UTF_32 | |
32174 | ||
32175 | * scng.adb: Use gnat.utf_32 instead of widechar for utf_32 stuff | |
32176 | ||
32177 | * widechar.ads, widechar.adb: Remove redundant UTF-32 tables (scng | |
32178 | now uses GNAT.UTF_32). | |
32179 | ||
32180 | * g-utf_32.ads, g-utf_32.adb: This is a new unit with full | |
32181 | capabilities for categorizing characters using Unicode categories | |
32182 | ||
32183 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32184 | ||
32185 | * sem_ch10.adb (Build_Ancestor_Name): If the ancestor is an | |
32186 | instantiation that has been rewritten as a package body, retrieve spec | |
32187 | to generate proper name for implicit_with_clause. | |
32188 | (Install_Parents): Recognize a parent that is an instantiation but has | |
32189 | been rewritten as a package declaration during analysis. | |
32190 | ||
32191 | 2005-03-15 Javier Miranda <miranda@adacore.com> | |
32192 | Ed Schonberg <schonberg@adacore.com> | |
32193 | ||
32194 | * sem_ch12.adb (Instantiate_Object): If the analysis of the actual | |
32195 | parameter reported some error we immediately return. This improves the | |
32196 | behaviour of the frontend in case of errors. | |
32197 | (Install_Parent, Remove_Parent): Introduce new flag | |
32198 | Parent_Unit_Visible, to preserve the proper visibility of the ultimate | |
32199 | ancestor of a generic child unit, when the child is being instantiated. | |
32200 | (Inline_Instance_Body): If we are compiling the private | |
32201 | part or the body of a child unit, restore the proper visibility of the | |
32202 | parents after compiling the instance body. | |
32203 | ||
32204 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32205 | Javier Miranda <miranda@adacore.com> | |
32206 | ||
32207 | PR ada/15608 | |
32208 | * sem_util.adb (Get_Task_Body_Procedure): Type may be the completion | |
32209 | of a private type, in which case it is underlying_type that denotes | |
32210 | the proper task. Also modified to use the new entity attribute | |
32211 | that is directly available in the task type and task subtype entities | |
32212 | (Build_Actual_Subtype_Of_Component): Handle properly multidimensional | |
32213 | arrays when other dimensions than the first are constrained by | |
32214 | discriminants of an enclosing record. | |
32215 | (Insert_Explicit_Dereference): If the prefix is an indexed component or | |
32216 | a combination of indexed and selected components, find ultimate entity | |
32217 | and generate the appropriate reference for it, to suppress spurious | |
32218 | warnings. | |
32219 | (Note_Possible_Modification): If an entity name has no entity, return. | |
32220 | (Is_Variable): A function call never denotes a variable. | |
32221 | (Requires_Transient_Scope): For record types, recurse only on | |
32222 | components, not on internal subtypes that may have been generated for | |
32223 | constrained components. | |
32224 | ||
32225 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32226 | ||
32227 | * sem_ch4.adb (Analyze_Concatenation): Do not consider operators marked | |
32228 | Eliminated as candidates for resolution. Both efficient, and avoids | |
32229 | anomalies with operators declared in deleted code. | |
32230 | (Process_Implicit_Dereference_Prefix): Use this procedure whenever | |
32231 | expansion is disabled (as when compiling a generic) to prevent spurious | |
32232 | warnings on prefixes of selected components. | |
32233 | ||
32234 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32235 | ||
32236 | * sem_ch6.adb (Is_Private_Declaration): Verify that the declaration is | |
32237 | attached to a list before checking whether it appears in the private | |
32238 | declarations of the current package. | |
32239 | (Make_Inequality_Operator): Insert declaration in proper declarative | |
32240 | list rather than just setting the Parent field, so that | |
32241 | Is_Private_Declaration can handle it properly. | |
32242 | ||
32243 | 2005-03-15 Ed Schonberg <schonberg@adacore.com> | |
32244 | ||
32245 | * sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic, if this is | |
32246 | a renaming a body, check that the renamed subprogram in not intrinsic. | |
32247 | (Find_Direct_Name): If several use_visible entities hide | |
32248 | each other, and the context is a predefined file compiled through | |
32249 | rtsfind, keep only the entity that comes from a predefined file. | |
32250 | ||
32251 | 2005-03-15 Geert Bosch <bosch@adacore.com> | |
32252 | ||
32253 | * s-fatgen.adb (Valid): Extend special exceptions to account for long | |
32254 | long float padding to also cover AMD64 and IA64. | |
32255 | ||
32256 | 2005-03-15 Gary Dismukes <dismukes@adacore.com> | |
32257 | ||
32258 | * s-imgwch.adb: Add with and use of Interfaces. | |
32259 | (Img_Wide_Character): Change type of Val to Unsigned_16. | |
32260 | (Img_Wide_Wide_Character): Change type of Val to Unsigned_32. | |
32261 | ||
32262 | 2005-03-15 Matthew Gingell <gingell@adacore.com> | |
32263 | ||
32264 | * sysdep.c: Implement __gnat_localtime_r as call to localtime_r on AIX. | |
32265 | ||
32266 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
32267 | ||
32268 | * usage.adb: Add missing lines for -gnat95 and -gnat05 switches | |
32269 | ||
32270 | * sem_ch7.adb: Minor change to propagate Is_Ada_2005 flag | |
32271 | ||
32272 | * i-c.adb: Clarify that AI-258 behavior is also intended in Ada 95 | |
32273 | ||
32274 | 2005-03-15 Robert Dewar <dewar@adacore.com> | |
32275 | ||
32276 | * s-bitops.adb, s-bitops.ads, | |
32277 | s-taprop-os2.adb, s-intman-vms.ads, s-intman-vxworks.ads, | |
32278 | s-taprop-vxworks.adb, a-caldel.ads, a-calend.adb, a-tasatt.adb, | |
32279 | tbuild.ads, s-finimp.adb, s-imgwch.adb, s-intman.ads, s-intman.ads, | |
32280 | s-memory.adb, s-soflin.ads, s-taasde.ads, s-taprob.adb, s-taprop.ads, | |
32281 | s-taprop.ads, s-tasini.adb, s-tasini.ads, s-tasini.ads, s-tasini.ads, | |
32282 | s-taskin.ads, s-tasren.adb, s-tassta.adb, s-tassta.ads, s-tassta.ads, | |
32283 | s-tasuti.ads, s-tataat.ads, s-tataat.ads, s-tataat.ads, s-tataat.ads, | |
32284 | s-tpoben.adb, s-tpoben.adb, s-tpobop.ads: Update comments. Minor | |
32285 | reformatting. | |
32286 | ||
32287 | 2005-03-15 Eric Botcazou <ebotcazou@adacore.com> | |
32288 | ||
32289 | * utils2.c (build_binary_op): Fix typo. | |
32290 | ||
32291 | 2005-03-15 Doug Rupp <rupp@adacore.com> | |
32292 | ||
32293 | * s-crtl.ads (popen,pclose): New imports. | |
32294 | ||
32295 | 2005-03-15 Cyrille Comar <comar@adacore.com> | |
32296 | ||
32297 | * comperr.adb (Compiler_Abort): remove references to obsolete | |
32298 | procedures in the bug boxes for various GNAT builds. | |
32299 | ||
32300 | 2005-03-15 Vincent Celier <celier@adacore.com> | |
32301 | ||
32302 | * snames.ads, snames.adb: Save as Unix text file, not as DOS text file | |
32303 | ||
32304 | 2005-03-15 Geert Bosch <bosch@adacore.com> | |
32305 | Arnaud Charlet <charlet@adacore.com> | |
32306 | Robert Dewar <dewar@adacore.com> | |
32307 | Cyrille Comar <comar@adacore.com> | |
32308 | Sergey Rybin <rybin@adacore.com> | |
32309 | ||
32310 | * gnat_ugn.texi: Remove extended inline assembly example, as it was far | |
32311 | too specific and long-winded to be appropriate for the GNAT User's | |
32312 | Guide. | |
32313 | Warn about use of GCC switches not documented in the GNAT User's Guide, | |
32314 | as these may cause generated code to not conform to Ada semantics. | |
32315 | Remove mention of -gdwarf-2 for sparc64, since this is now the default. | |
32316 | Add documentation for -gnat95 and -gnat05 switches | |
32317 | Remove paragraph documenting obsolete way to refer to third party | |
32318 | libraries. | |
32319 | Add a few references to Ada_05 that were missing. | |
32320 | Update documentation on -gnatZ/-gnatL. | |
32321 | Document limitation when using -m64 under Solaris. | |
32322 | Change the "Name Casing" subsection of the pretty-printer section | |
32323 | according to the changes in the dictionary processing. | |
32324 | ||
32325 | * gnat_rm.texi: Document the Ada_05 pragma. | |
32326 | Section on record representation clauses describes the new more | |
32327 | relaxed rules about placement of large packed bit array components. | |
32328 | Add documentation of GNAT.UTF_32 | |
32329 | ||
9e94c78f | 32330 | 2005-03-12 Daniel Berlin <dberlin@dberlin.org> |
c75ab022 DB |
32331 | |
32332 | * misc.c (gnat_post_options): Turn off structural | |
32333 | aliasing for now. | |
4f51c6e7 | 32334 | |
9e94c78f | 32335 | 2005-03-08 Laurent Guerby <laurent@guerby.net> |
391bdf45 LG |
32336 | |
32337 | * system-linux-sparc.ads: Fix typo in previous commit. | |
32338 | ||
9e94c78f EB |
32339 | 2005-03-07 James A. Morrison <phython@gcc.gnu.org> |
32340 | Laurent Guerby <laurent@guerby.net> | |
fe8a06f2 | 32341 | |
a1286ef5 ZW |
32342 | PR ada/20035 |
32343 | * system-linux-sparc.ads: New. | |
32344 | * Makefile.in: Add sparc linux entry. | |
fe8a06f2 | 32345 | |
a1286ef5 | 32346 | 2005-02-27 Danny Smith <dannysmith@users.sourceforge.net> |
9811fd17 | 32347 | |
a1286ef5 | 32348 | * seh_init.c (__gnat_SEH_error_handler): Mark third and fourth |
9811fd17 DS |
32349 | parameters as unused. |
32350 | ||
5395b47b NN |
32351 | 2005-02-26 Nathanael Nerode <neroden@gcc.gnu.org> |
32352 | Partial merge from libada-gnattools-branch: | |
32353 | ||
32354 | 2004-12-02 Nathanael Nerode <neroden@gcc.gnu.org> | |
a1286ef5 ZW |
32355 | * Makefile.in: Move gnattools{1,1re,2,3,4} and corresponding flags |
32356 | into code in gnattools/Makefile.in. Remove direct dependencies on | |
32357 | stamp-tools by tools clauses. | |
5395b47b | 32358 | 2004-12-02 Nathanael Nerode <neroden@gcc.gnu.org> |
a1286ef5 | 32359 | * config-lang.in: Add gnattools to $lang_dirs. |
5395b47b | 32360 | |
4fa0972f AP |
32361 | 2005-02-13 Andrew Pinski <pinskia@physics.uc.edu> |
32362 | ||
32363 | PR ada/19942 | |
2532808d | 32364 | * utils.c (gnat_type_for_mode): Return null instead of ICE because |
a1286ef5 | 32365 | we asked for an unknown mode. |
4fa0972f | 32366 | |
bd0b34a8 RH |
32367 | 2005-02-12 Richard Henderson <rth@redhat.com> |
32368 | ||
32369 | * utils.c (gnat_type_for_mode): Return NULL for COMPLEX modes; | |
32370 | validate SCALAR_INT_MODE_P before calling gnat_type_for_size. | |
32371 | ||
0ebbef54 AJ |
32372 | 2005-02-10 Andreas Jaeger <aj@suse.de> |
32373 | ||
32374 | * init.c (__gnat_initialize): Mark parameter as unused. | |
32375 | ||
fc5a191d AC |
32376 | 2005-02-09 Doug Rupp <rupp@adacore.com> |
32377 | ||
32378 | * g-expect-vms.adb (Non_Blocking_Spawn): Separate out. | |
32379 | * g-enblsp-vms-alpha.adb g-enblsp-vms-ia64.adb: New subunits. | |
32380 | ||
32381 | 2005-02-09 Doug Rupp <rupp@adacore.com> | |
32382 | ||
32383 | * gnatchop.adb (dup, dup2), | |
32384 | g-dirope.adb (closedir, opendir, rmdir): Reference via System.CRTL. | |
32385 | ||
32386 | * gnatlbr.adb (mkdir), | |
32387 | mlib-tgt-vms-ia64.adb (popen, plose): Import with decc$ prefix. | |
32388 | ||
32389 | * s-crtl.ads (closdir, dup, dup2, opendir, rmdir): Import. | |
32390 | ||
32391 | 2005-02-09 Doug Rupp <rupp@adacore.com> | |
32392 | ||
32393 | * s-tpopde-vms.adb: Add pragma Warnings (Off) for Task_Id conversions. | |
32394 | ||
32395 | 2005-02-09 Robert Dewar <dewar@adacore.com> | |
32396 | Thomas Quinot <quinot@adacore.com> | |
32397 | Javier Miranda <miranda@adacore.com> | |
32398 | Pascal Obry <obry@adacore.com> | |
32399 | Ed Schonberg <schonberg@adacore.com> | |
32400 | Doug Rupp <rupp@adacore.com> | |
32401 | Gary Dismukes <dismukes@adacore.com> | |
32402 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
32403 | ||
32404 | * g-zstspl.ads: New file. | |
32405 | ||
32406 | * a-chahan.ads, a-chahan.adb: Add declarations from AI-285 | |
32407 | ||
32408 | * a-string.ads: Add pragma Ada_05 for wide_wide_space to get warning in | |
32409 | Ada 95 mode | |
32410 | Add definition of Wide_Wide_Space for AI-285 | |
32411 | ||
32412 | * impunit.ads, impunit.adb, sem_ch10.adb: Complete rewrite and new | |
32413 | interface (to support Ada 95 and Ada 2005 units). | |
32414 | Add Unbounded_IO files | |
32415 | Add entries for Wide_Wide packages for AI-285 | |
32416 | Add list of containers packages to Ada 2005 unit list | |
32417 | ||
32418 | * a-swuwti.ads, a-swuwti.adb, a-suteio.ads, a-suteio.adb: Updates to | |
32419 | support new Unbounded_IO package cleanly. | |
32420 | ||
32421 | * g-utf_32.ads, g-utf_32.adb: New files. | |
32422 | ||
32423 | * Makefile.rtl: Add entry for g-utf_32 | |
32424 | Add new files for Unbounded_IO | |
32425 | Adjust make file for new AI-285 wide wide packages | |
32426 | Add AI-302 containers to the run time. | |
32427 | ||
32428 | * a-stwibo.adb, a-stwibo.ads, a-stwisu.adb, a-stwisu.ads, | |
32429 | a-strbou.ads, a-strbou.adb, a-strsup.ads, a-strsup.adb: New | |
32430 | subprograms for AI-301. | |
32431 | ||
32432 | * a-stwiun.adb, a-stwiun.ads: Minor reformatting. | |
32433 | ||
32434 | * a-stunau.ads: Minor comment correction | |
32435 | ||
32436 | * rtsfind.ads, rtsfind.adb: Add definitions for Wide_Wide attributes | |
32437 | etc. | |
32438 | Also extend Text_IO_Kludge to support Wide_Wide_Text_IO | |
32439 | (Check_RPC): Update to match changes in expanded code. | |
32440 | Clean up unused entity. | |
32441 | ||
32442 | * exp_ch3.ads, exp_ch3.adb: Fix various places where Wide_Wide_String | |
32443 | was not taken into account. | |
32444 | This includes proper initialization with Normalize_Scalars. | |
32445 | (Get_Simple_Init_Val): Major rewrite for initialize scalars and | |
32446 | normalize scalars cases (particularly the latter) to do a better job | |
32447 | of finding invalid representations. | |
32448 | ||
32449 | * s-scaval.ads, s-scaval.adb: Add values for zero invalid values | |
32450 | ||
32451 | * s-strops.ads, s-strops.adb: Remove string normalize routines, never | |
32452 | used | |
32453 | ||
32454 | * exp_dist.adb: Add support for wide wide character type | |
32455 | (Expand_Receiving_Stubs_Bodies): For a package declaration that has a | |
32456 | private part, generate stub bodies at the end of the private part, | |
32457 | not the visible part. | |
32458 | (Add_RACW_Primitive_Operations_And_Bodies): Add last missing code for | |
32459 | PolyORB support. | |
32460 | (Add_Obj_RPC_Receiver_Completion): Add PCS-specific subprograms and | |
32461 | generic wrapper to execute final processing after completing the | |
32462 | expansion of the RPC receiver for an RACW. | |
32463 | ||
32464 | * snames.h, snames.ads, snames.adb: Add definitions for wide_wide | |
32465 | packages and attributes. | |
32466 | (Preset_Names): Addition of the new reserved words of Ada 2005, | |
32467 | that is interface, overriding and synchronized. | |
32468 | (Get_Pragma_Id): Give support to the use of the new reserved word | |
32469 | "interface" as a pragma name. | |
32470 | (Is_Pragma_Name): Give support to the use of the new reserved word | |
32471 | "interface" as a pragma name. | |
32472 | (Preset_Names): Add stream_size string for the Stream_Size Ada2005 | |
32473 | attribute implementation. | |
32474 | ||
32475 | * exp_attr.adb (Expand_Attribute_Reference): Do not apply validity | |
32476 | checks to entities that are output parameters of Asm operations. | |
32477 | Handle the Stream_Size attribute. | |
32478 | Add implementation of Wide_Wide_Value, Wide_Wide_Image, Wide_Wide_Width | |
32479 | ||
32480 | * exp_imgv.ads, exp_imgv.adb: Add support for wide wide character type | |
32481 | ||
32482 | * sem_attr.adb (Eval_Attribute): Raise compile-time constraint error | |
32483 | for second parameter being 0.0. | |
32484 | Add support for wide wide character type. | |
32485 | (Analyze_Attribute, Eval_Attribute): Handle the Stream_Size attribute. | |
32486 | ||
32487 | * s-valwch.adb, s-valwch.ads, s-imgwch.ads, s-imgwch.adb, | |
32488 | s-wchstw.ads, s-wchstw.adb, s-wchwts.adb, s-wchwts.ads, | |
32489 | s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdcha.ads, | |
32490 | s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb, s-wwdwch.ads: Add support | |
32491 | for wide wide character cases. | |
32492 | ||
32493 | * cstand.adb: Create entities for Wide_Wide_Character and | |
32494 | Wide_Wide_String. | |
32495 | ||
32496 | * i-c.ads, i-c.adb: Fix not raising CE for null wide strings in | |
32497 | accordance with AI-258. | |
32498 | Add new declarations for 16/32 bit C character types (Part of AI285) | |
32499 | ||
32500 | * einfo.ads, einfo.adb (Is_Obsolescent, Is_Ada_2005): New flag | |
32501 | (Obsolescent_Warning): New field | |
32502 | (Rep_Clause): New local subprogram used to share code. Returns the rep | |
32503 | clause for which the name is given in parameter. | |
32504 | (Has_Stream_Size_Clause): New routine. | |
32505 | (Stream_Size_Clause): Idem. Implementation is based on Rep_Clause. | |
32506 | (Address_Clause): Implementation is now using Rep_Clause. | |
32507 | (Alignment_Clause): Idem. | |
32508 | (Size_Clause): Idem. | |
32509 | ||
32510 | * lib-xref.adb (Generate_Reference): Test for reference to Ada 2005 | |
32511 | entity in non-Ada 2005 mode and generate warning. | |
32512 | ||
32513 | * par-prag.adb: Add handling of one argument form for pragma Ada_05. | |
32514 | (Prag): Code cleanup. Remove old gnat pragma "overriding" | |
32515 | ||
32516 | * sem_prag.adb: Add handling of one argument form for pragma Ada_05 | |
32517 | (Analyze_Pragma, case Elaborate, Elaborate_All): Do not disable warnings | |
32518 | on the named unit if the pragma is not in the current compilation unit, | |
32519 | so that elaboration calls in the current unit can set up an elaboration | |
32520 | dependency on the named unit, as needed. | |
32521 | (Analyze_Pragma, case Obsolescent): Allow pragma to be used for library | |
32522 | subprogram as well as for subprograms declared within a package. | |
32523 | (Analyze_Pragma, Sig_Flags): Code cleanup. Remove support for the GNAT | |
32524 | pragma overriding. | |
32525 | ||
32526 | * krunch.ads, krunch.adb: Add special handling of Wide_Wide (krunched | |
32527 | to z) to avoid some instances of duplication for Wide_Wide packages. | |
32528 | ||
32529 | * namet.ads, namet.adb: Implement encoding (WWhhhhhhhh) for wide wide | |
32530 | characters. | |
32531 | ||
32532 | * scn.adb: Char_Literal_Value field is now a Uint | |
32533 | ||
32534 | * scng.adb: Significant rewrite to handle new Ada 2005 features | |
32535 | allowing wide and wide wide characters in program text, e.g. for | |
32536 | identifiers, as described in AI-285. | |
32537 | (Set_Reserved): New procedure, makes setting up keywords cleaner. | |
32538 | (Initialize_Scanner): Register the new reserved words of Ada 2005. | |
32539 | (Scan): Give support to the new reserved words. | |
32540 | ||
32541 | * par-ch2.adb (P_Identifier): Compiling in Ada95 mode, generate a | |
32542 | warning notifying that interface, overriding, and synchronized are | |
32543 | new reserved words. | |
32544 | (P_Pragma): Allow the use of the new reserved word "interface" as | |
32545 | a pragma name. | |
32546 | ||
32547 | * gnatls.adb, gnatbind.adb, | |
32548 | ali-util.adb, binde.adb, ali.ads, ali.adb: Code cleanup. Rename | |
32549 | identifiers named "interface" to "SAL_Interface". | |
32550 | ||
32551 | * bindgen.adb (Gen_Main_Ada): Add support for the new SEH | |
32552 | (Structured Exception handling). | |
32553 | (Gen_Main_C): Idem. | |
32554 | ||
a1286ef5 | 32555 | * bindgen.adb: |
fc5a191d AC |
32556 | (Gen_Main_Ada): Set the default exit code if specified. |
32557 | (Gen_Main_C): Likewise. | |
32558 | Part of *DC20-006. | |
32559 | (Gen_Output_File_C): Remove redundant output of gnat_exit_status. | |
32560 | Code cleanup. Rename identifiers named "interface" to "SAL_Interface" | |
32561 | ||
32562 | * switch-b.adb, bindusg.adb, opt.ads, vms_data.ads: Add handling of | |
32563 | new -Xnnn switch. | |
32564 | ||
32565 | * mlib-prj.adb, mlib.adb: Code cleanup. Rename one identifier that | |
32566 | has a collision with the new Ada 2005 "interface" reserved word. | |
32567 | ||
32568 | * par-ch3.adb (P_Defining_Identifier): Compiling in Ada95 mode, | |
32569 | generate a warning notifying that interface, overriding, and | |
32570 | synchronized are new reserved words. | |
32571 | ||
32572 | * scans.ads (Token_Type): Addition of the tokens corresponding to the | |
32573 | new reserved words of Ada 2005: Tok_Interface, Tok_Overriding | |
32574 | and Tok_Synchronized. | |
32575 | ||
32576 | * sem_res.adb (Resolve_Actuals): Change error messages to refer to | |
32577 | "dispatching" rather than "primitive" operations, since dispatching | |
32578 | calls are now allowed to abstract formal subprograms (which are not | |
32579 | primitive). | |
32580 | Char_Literal_Value field is now a Uint | |
32581 | (Resolve_Slice): If the prefix is an access to an unconstrained array, | |
32582 | compute the actual subtype of the designated object to impose the proper | |
32583 | index constraints. | |
32584 | (Resolve_Selected_Component): Do not insert an access check if the | |
32585 | prefix is an access type: such a node is expanded into an explicit | |
32586 | dereference, on which the access check is performed anyway. Removes | |
32587 | expensive duplicate checks. | |
32588 | (Resolve_Call): Use new flag Is_Obsolescent and field | |
32589 | Obsolescent_Warning so that pragma Obsolescent works on library | |
32590 | subprograms. | |
32591 | Add support for wide wide character type | |
32592 | (Resolve_Allocator): Replace the error message on wrong null-exclusion | |
32593 | value by a warning message. | |
32594 | (Resolve_Type_Conversion): If the mixed-mode expression is interpreted | |
32595 | as fixed-point, and one of the operands is non-static and universal, it | |
32596 | can only be an illegal exponentiation operation, in which case there is | |
32597 | no real value to retrieve. | |
32598 | ||
32599 | * exp_strm.adb: Add support for wide wide character type | |
32600 | (Build_Elementary_Input_Call): Compute the size of the stream element by | |
32601 | querying the rep chain to find the Stream_Attribute attribute value. | |
32602 | (Build_Elementary_Write_Call): Ditto. | |
32603 | ||
32604 | * sem_aggr.adb: Char_Literal_Value field is now a Uint | |
32605 | Add support for wide wide character type | |
32606 | Replace the error messages on wrong null-exclusion value by warnings | |
32607 | as described in Ada 2005. | |
32608 | (Resolve_Extension_Aggregate): Document the fact that the error | |
32609 | message on class-wide expressions in extensions aggregates. | |
32610 | ||
32611 | * sem_case.adb: Add support for wide wide character type | |
32612 | ||
32613 | * sem_ch13.adb: Add support for wide wide character type | |
32614 | (Analyze_Attribute_Definition_Clause): Handle the Stream_Size attribute. | |
32615 | ||
32616 | * sem_ch3.adb: Add support for wide wide character type | |
32617 | (Process_Subtype): If constraint is illegal for the type, set Ekind of | |
32618 | now-useless Itype, to prevent cascaded errors on a compiler built | |
32619 | without -gnatp. | |
32620 | ||
32621 | * sem_ch8.adb: Add with and use of Sem_Disp. | |
32622 | (Analyze_Subprogram_Renaming): Replace unclean uses of | |
32623 | Corresponding_Spec with Corresponding_Formal_Spec (and delete setting | |
32624 | of Corresponding_Spec to Empty). | |
32625 | (Attribute_Renaming): Replace use of Corresponding_Spec with | |
32626 | Corresponding_ Formal_Spec and simplify condition. | |
32627 | (Use_One_Package): Check that scope of homonym of identifier is defined, | |
32628 | before checking whether it is a wrapper package. | |
32629 | Add support for wide wide character type | |
32630 | ||
32631 | * sem_eval.adb: Add support for wide wide character type. | |
32632 | (Eval_Arithmetic_Op): Check for compile time known signed integer | |
32633 | overflow in the non-static case. | |
32634 | (Subtypes_Statically_Match): A formal scalar type and its base type do | |
32635 | not statically match. | |
32636 | ||
32637 | * sem_util.adb (Collect_Primitive_Operations): Minor change of "/=" to | |
32638 | "not in" for test of N_Formal_Subprogram_Declaration (which is now a | |
32639 | subtype). | |
32640 | (Unit_Declaration_Node): Ditto. | |
32641 | (Is_Variable_Prefix): For the case of an indexed component whose prefix | |
32642 | has a packed array type, the prefix has been rewritten into a type | |
32643 | conversion. Determine variable-ness from the converted expression. | |
32644 | Handle wide wide character cases. | |
32645 | ||
32646 | * stand.ads: Add types Wide_Wide_Character and Wide_Wide_String | |
32647 | ||
32648 | * stringt.ads, stringt.adb: Handle full UTF-32 range. | |
32649 | Remove ["0A"] from comment, since it can look like a line terminator. | |
32650 | Currently we don't permit this, but this is under discussion by the | |
32651 | ARG, and it is easy enough to use a different example. | |
32652 | ||
32653 | * s-wchcon.ads, s-wchcnv.ads, s-wchcnv.adb: Add new subprograms for | |
32654 | handling UTF-32 encoding for wide wide character. | |
32655 | Implement new brackets coding ["hhhhhhhh"] | |
32656 | Add UTF-8 encodings for full UTF-32 range | |
32657 | ||
32658 | * ttypes.ads: Add definition of Standard_Wide_Wide_Character_Size | |
32659 | ||
32660 | * types.h, types.ads, types.adb: Wide_Wide_Character now has full 31 | |
32661 | bit range Add full UTF-32 support. | |
32662 | (RT_Exception_Code): Addition of CE_Null_Not_Allowed; used to | |
32663 | notify that constraint error will be raised at run-time | |
32664 | because a null value is assigned to a null-excluding object. | |
32665 | Remove some obsolete declarations and make Char_Code | |
32666 | unsigned. | |
32667 | ||
32668 | * a-except.adb (Rcheck_30): New subprogram. Addition of the message | |
32669 | corresponding to CE_Null_Not_Allowed, and adjust the output of all the | |
32670 | Rcheck subprograms. | |
32671 | ||
32672 | * checks.adb (Check_Null_Not_Allowed): Replace the error message on | |
32673 | wrong null-exclusion value by a warning message. | |
32674 | (Enable_Range_Check): Do range check if the prefix is an | |
32675 | explicit dereference whose designated object is an unconstrained array. | |
32676 | Current algorithm for removing duplicate checks is over-eager in this | |
32677 | case. | |
32678 | ||
32679 | * sem_ch5.adb (Analyze_Assignment): Replace the error messages on wrong | |
32680 | null-exclusion value by a warning message | |
32681 | ||
32682 | * atree.h, atree.ads, atree.adb: Remove Char_Code field support | |
32683 | completely. Add support for Uint2 field | |
32684 | ||
32685 | sem_ch2.adb, exp_ch11.adb, exp_dbug.adb, | |
32686 | exp_prag.adb: Char_Literal_Value field is now a Uint. | |
32687 | ||
32688 | * exp_util.adb (Insert_Actions): Replace | |
32689 | N_Formal_Subprogram_Declaration by | |
32690 | N_Formal_{Abstract|Concrete}_Subprogram_Declaration. | |
32691 | Char_Literal_Value field is now a Uint. | |
32692 | ||
32693 | * sinfo.ads, sinfo.adb (Corresponding_Formal_Spec): New function | |
32694 | defined for subprogram renaming declarations. When set, the field | |
32695 | indicates the defining entity of a corresponding formal subprogram | |
32696 | when the renaming corresponds to a formal subprogram association in an | |
32697 | instantiation. | |
32698 | (Set_Corresponding_Formal_Spec): New procedure to return | |
32699 | Corresponding_Formal_Spec field. | |
32700 | Minor changes of "=" to "in" in tests of N_Formal_Subprogram_Declaration | |
32701 | (which is now a subtype). | |
32702 | Char_Literal_Value field is now a Uint | |
32703 | ||
32704 | * exp_disp.ads, exp_disp.adb (Make_DT): Generate code that moves the | |
32705 | pointer to the base of the dispatch table. | |
32706 | Minor changes to comments. | |
32707 | (Controlling_Type): New function for determining the tagged type | |
32708 | associated with a tagged primitive subprogram. | |
32709 | (Expand_Dispatching_Call): Add support for a controlling actual that is | |
32710 | directly a value of type Ada.Tag rather than a tagged object. | |
32711 | ||
32712 | * i-cpp.ads, i-cpp.adb, a-tags.ads, a-tags.adb: Update documentation | |
32713 | describing the new layout. | |
32714 | (Dispatch_Table): The expander computes the actual array size, allocates | |
32715 | the Dispatch_Table record accordingly, and generates code that displaces | |
32716 | the base of the record after the Typeinfo_Ptr component. The access to | |
32717 | these components is done by means of local functions. | |
32718 | (Offset_To_Top): New function. | |
32719 | (Typeinfo_Ptr): New function. | |
32720 | (Get_TSD): Modified to access the new position of the TSD. | |
32721 | (Set_TSD): Modified to save the TSD in its new position. | |
32722 | ||
32723 | * par-ch12.adb (P_Formal_Subprogram_Declaration): Add parsing for the | |
32724 | case of formal abstract subprograms. Add check and message for -gnat05. | |
32725 | Update comments. | |
32726 | ||
32727 | * sem_ch12.adb: Add with and use for Sem_Disp. | |
32728 | (Analyze_Associations): Minor change from "=" to "in" for use of | |
32729 | N_Formal_Subtype_Declaration (which is now a subtype). | |
32730 | (Set_Analyzed_Formal): Minor changes from "=" to "in" for uses of | |
32731 | N_Formal_Subtype_Declaration (which is now a subtype). | |
32732 | (Analyze_Formal_Subprogram): Add handling for | |
32733 | N_Formal_Abstract_Subprogram, marking the formal as abstract and | |
32734 | dispatching, setting the controlling status of the formal parameters | |
32735 | and result, and issuing an error if there is no controlling type for | |
32736 | the formal subprogram. | |
32737 | (Instantiate_Formal_Subprogram): Rather than setting Corresponding_Spec, | |
32738 | which is an unclean use of that field, we set the new field | |
32739 | Corresponding_Formal_Spec to make the formal subprogram available to | |
32740 | processing in Analyze_Subprogram_Declaration. | |
32741 | (Analyze_Formal_{Discrete, Decimal_Fixed_Point, Fixed_Point, | |
32742 | Floating_Point, Modular_Integer, Signed_Integer}_Type: Make formal type | |
32743 | Constrained, so that it is is does not statically match its anonymous | |
32744 | base type. | |
32745 | ||
32746 | * sem_ch6.adb (Analyze_Subprogram_Specification): Include test for | |
32747 | abstract formal subprograms in error check for functions returning | |
32748 | abstract types. Set scope of new designator for | |
32749 | a parameterless subprogram, so that it is available when checking the | |
32750 | body for nested subprograms, before full analysis of said body. | |
32751 | (Analyze_Subprogram_Body): Warn on inlining bodies with nested | |
32752 | subprogram only if inner one comes from source. | |
32753 | (Analyze_Function_Call): If the call is given in object notation, the | |
32754 | analysis of the name rewrites the node and analyzes it with the proper | |
32755 | argument list. After analyzing the name, if the call has been rewritten | |
32756 | and the result type is set, no further analysis is needed. | |
32757 | (Analyze_Return_Type): Subsidiary to Process_Formals: analyze subtype | |
32758 | mark in function specification, in a context where the formals are | |
32759 | visible and hide outer homographs. | |
32760 | ||
32761 | * sem_disp.adb (Check_Controlling_Type): Relax the check for same scope | |
32762 | as the tagged type for the cases of abstract formal subprograms and | |
32763 | renamings of those. Clean up spec comments. | |
32764 | (Check_Dispatching_Context): Add error message to indicate "abstract | |
32765 | procedure", covering the case of a call to a formal abstract procedure | |
32766 | that has statically tagged operands. | |
32767 | (Check_Dispatching_Call): Check for the case of an actual given by | |
32768 | a tag-indeterminate function call whose type is an ancestor of the | |
32769 | containing call's associated tagged type. This situation can occur | |
32770 | for inherited primitives with function defaults. In this case we | |
32771 | use the tagged type's tag directly as the controlling argument for | |
32772 | the calls. | |
32773 | (Expand_Call): Name change on call to Expand_Dispatch_Call. | |
32774 | ||
32775 | * sprint.adb (Sprint_Node_Actual): Split | |
32776 | N_Formal_Subprogram_Declaration into two alternatives for the new | |
32777 | cases N_Formal_Abstract_Subprogram_Declaration and | |
32778 | N_Formal_Concrete_Subprogram_Declaration. | |
32779 | Char_Literal_Value field is now a Uint. | |
32780 | ||
32781 | * trans.c: Get rid of junk Uint2 reference. | |
32782 | Char_Literal_Value field is now a Uint. | |
32783 | (gnat_to_gnu, case N_Aggregate): Check TYPE_UNCHECKED_UNION_P. | |
32784 | (gigi): Correct third arg to gimplify_body. | |
32785 | ||
32786 | * ada-tree.h: (TYPE_UNCHECKED_UNION_P): New flag. | |
32787 | (TYPE_LANG_FLAG_0): Check for record or union. | |
32788 | ||
32789 | * treepr.adb: Char_Literal_Value field is now a Uint | |
32790 | ||
32791 | * uintp.h, uintp.ads, uintp.adb: Add new routines UI_To_CC and | |
32792 | UI_From_CC. | |
32793 | ||
32794 | * widechar.ads, widechar.adb (Is_UTF_32_Non_Graphic): New function | |
32795 | Add full UTF-32 support | |
32796 | Char_Code is now 32 bits | |
32797 | ||
32798 | * sinput.ads, sinput.adb (Skip_Line_Terminators): Extend to deal with | |
32799 | wide character UTF_32 line terminators. | |
32800 | Initialize Main_Source_File to avoid error when no main | |
32801 | source is loaded. | |
32802 | ||
32803 | * errout.adb (Finalize): Do not check Num_SRef_Pragmas | |
32804 | (Main_Source_File) when no main source has been loaded, to avoid | |
32805 | potential crash. | |
32806 | ||
32807 | 2005-02-09 Robert Dewar <dewar@adacore.com> | |
32808 | ||
a1286ef5 ZW |
32809 | * a-strunb.ads, a-strunb.adb: Add missing pragma Ada_05 statements |
32810 | Fix name of Set routine | |
fc5a191d AC |
32811 | |
32812 | * a-strfix.ads, a-strfix.adb: Add new index functions from AI-301 to | |
32813 | fixed packages. | |
32814 | ||
32815 | * a-stwise.ads, a-stwise.adb, a-stwifi.ads, a-stwifi.adb, | |
32816 | a-strsea.ads, a-strsea.adb: Add new index functions from AI-301 to | |
32817 | fixed packages | |
32818 | ||
32819 | * a-witeio.ads, a-witeio.adb, a-textio.ads, a-textio.adb: New function | |
32820 | forms of Get_Line subprograms for AI-301. | |
32821 | ||
32822 | * a-wtcoau.adb, a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, | |
32823 | a-wtedit.adb, a-wtedit.adb, a-wtedit.ads, a-wttest.adb, | |
32824 | a-wttest.ads, a-strmap.ads, a-strmap.adb, a-stwima.adb, | |
32825 | a-stwima.ads: Minor reformatting. | |
32826 | ||
32827 | 2005-02-09 Doug Rupp <rupp@adacore.com> | |
32828 | Thomas Quinot <quinot@adacore.com> | |
32829 | ||
32830 | * adaint.c, adaint.h | |
32831 | [VMS] (to_ptr32): New function. | |
32832 | (MAYBE_TO_PTR32): New macro. | |
32833 | (__gnat_portable_spawn,__gnat_portable_no_block_spawn): Adjust argv | |
32834 | for pointer size. | |
32835 | [VMS] (descriptor_s, ile_s): Use __char_ptr32 for adr field. | |
32836 | [VMS] (#define fork()): Remove since unneccessary. | |
32837 | (__gnat_set_close_on_exec): New routine to support | |
32838 | GNAT.OS_Lib.Set_Close_On_Exec. | |
32839 | ||
32840 | * g-expect.adb (Set_Up_Communications): Mark the pipe descriptors for | |
32841 | the parent side as close-on-exec so that they are not inherited by the | |
32842 | child. | |
32843 | ||
32844 | * g-os_lib.ads, g-os_lib.adb (Set_Close_On_Exec): New subprogram to | |
32845 | set or clear the FD_CLOEXEC flag on a file descriptor. | |
32846 | ||
32847 | 2005-02-09 Eric Botcazou <ebotcazou@adacore.com> | |
32848 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
32849 | ||
6f7f72f9 | 32850 | PR ada/19386 |
a1286ef5 | 32851 | * decl.c: |
fc5a191d AC |
32852 | (gnat_to_gnu_field): Do not necessarily invoke make_packable_type |
32853 | on the field if Pragma Component_Alignment (Storage_Unit). | |
32854 | (gnat_to_gnu_entity, case object): Do not treat a renaming that has | |
32855 | side-effects as if it were a constant; also make SAVE_EXPR to protect | |
32856 | side-effects. | |
32857 | (gnat_to_gnu_entity, case E_Record_Subtype): If have _Parent, make a | |
32858 | UNION_TYPE. | |
32859 | (make_dummy_type): Set TYPE_UNCHECKED_UNION_P. | |
32860 | (components_to_record): Test it. | |
32861 | Fix improper usage of REFERENCE_CLASS_P. | |
32862 | ||
32863 | * utils2.c (build_binary_op, case MODIFY_EXPRP): Treat UNION_TYPE as | |
32864 | RECORD_TYPE. | |
32865 | ||
32866 | * utils2.c: Minor reformatting. | |
32867 | ||
32868 | * utils.c (convert, case UNION_TYPE): Check TYPE_UNCHECKED_UNION; | |
32869 | handle other cases like RECORD_TYPE. | |
32870 | ||
32871 | * utils.c (gnat_pushdecl): Set TREE_NO_WARNING. | |
32872 | ||
32873 | 2005-02-09 Ed Schonberg <schonberg@adacore.com> | |
32874 | ||
32875 | * exp_aggr.adb (Gen_Assign): If the expression is an aggregate for a | |
32876 | component of an array of arrays in an assignment context, and the | |
32877 | aggregate has component associations that require sliding on | |
32878 | assignment, force reanalysis of the aggregate to generate a temporary | |
32879 | before the assignment. | |
32880 | (Must_Slide): Make global to the package, for use in Gen_Assign. | |
32881 | ||
32882 | 2005-02-09 Ed Schonberg <schonberg@adacore.com> | |
32883 | ||
32884 | * exp_ch4.adb (Expand_Composite_Equality): If a component is an | |
32885 | unchecked union with no inferable discriminants, return a | |
32886 | Raise_Program_Error node, rather than inserting it at the point the | |
32887 | type is frozen. | |
32888 | (Expand_Record_Equality, Component_Equality): Handle properly the case | |
32889 | where some subcomponent is an unchecked union whose generated equality | |
32890 | code raises program error. | |
32891 | ||
32892 | 2005-02-09 Doug Rupp <rupp@adacore.com> | |
32893 | ||
32894 | * gnatbl.c: [VMS] (_POSIX_EXIT): Define. | |
32895 | [VMS] (#define exit hack): Remove. | |
32896 | ||
32897 | 2005-02-09 Pascal Obry <obry@adacore.com> | |
9e94c78f | 32898 | Arnaud Charlet <charlet@adacore.com> |
fc5a191d AC |
32899 | |
32900 | * init.c (__gnat_initialize): Add a new parameter eh which contains the | |
32901 | address of the exception registration. The Win32 version of this | |
32902 | routine calls __gnat_install_SEH_handler() to initialize the SEH | |
32903 | (Structured Exception Handling) handler. | |
32904 | (__gnat_error_handler) [Win32]: Removed. Not needed as we use | |
32905 | SEH (Structured Exception Handling) now. | |
32906 | (__gnat_install_handler) [Win32]: Nothing to do now as we use SEH. | |
32907 | (__gnat_initialize for ppc-vxworks): Adjust comments and the | |
32908 | preprocessor condition protecting the call to the extra eh setup | |
32909 | subprogram, which is only available for the ppc target. | |
32910 | (__gnat_clear_exception_count): replaced reference to | |
32911 | variable taskIdCurrent by call to taskIdSelf(), cleaner. | |
32912 | ||
32913 | * seh_init.c: New file. | |
32914 | ||
32915 | * Make-lang.in: (GNAT_ADA_OBJS): Add seh_init.o. | |
32916 | (GNATBIND_OBJS): Idem. | |
32917 | ||
32918 | * misc.c (gnat_parse_file): Update call to __gnat_initialize. This | |
32919 | routine takes a new parameter (a pointer to the exception registration | |
32920 | for the SEH (Structured Exception Handling) support. | |
32921 | ||
32922 | * raise.h: (__gnat_install_SEH_handler): New prototype. | |
32923 | Update copyright notice. | |
32924 | ||
32925 | * s-tassta.adb (Task_Wrapper): Declare the exception registration | |
32926 | record and initialize it by calling __gnat_install_SEH_handler. | |
32927 | ||
32928 | 2005-02-09 Vincent Celier <celier@adacore.com> | |
32929 | ||
32930 | * make.adb (Gnatmake): Do not fail when the main project has no object | |
32931 | directory. | |
32932 | ||
32933 | 2005-02-09 Doug Rupp <rupp@adacore.com> | |
32934 | ||
32935 | * Makefile.in [VMS] (LN,LN_S): Define as cp -p | |
32936 | Rename s-asthan-vms.adb to s-asthan-vms-alpha.adb. | |
32937 | [VMS]: Add translations for g-enblsp.adb. | |
32938 | ||
32939 | * s-asthan-vms.adb: Removed. | |
32940 | * s-asthan-vms-alpha.adb: Added. | |
32941 | ||
32942 | 2005-02-09 Pascal Obry <obry@adacore.com> | |
32943 | ||
32944 | * Makefile.in (LIBGNAT_SRCS): Add seh_init.c. | |
32945 | (LIBGNAT_OBJS): Add seh_init.o. | |
32946 | ||
32947 | 2005-02-09 Arnaud Charlet <charlet@adacore.com> | |
32948 | ||
32949 | PR ada/16592 | |
fc5a191d AC |
32950 | * Makefile.in: Link all gnat tools with -static-libgcc, since |
32951 | -shared-libgcc is now used by default on some systems (e.g. linux with | |
32952 | recent binutils). | |
32953 | Remove references to Makefile.prolog/generic, no longer used. | |
32954 | ||
32955 | 2005-02-09 Vincent Celier <celier@adacore.com> | |
32956 | ||
32957 | * prj-makr.adb (Process_Directory): Put file name in canonical case | |
32958 | before matching against the patterns. | |
32959 | If gnatname has been invoked as <prefix>-gnatname | |
32960 | then invoke the compiler as <prefix>-gcc, not just "gcc". | |
32961 | ||
32962 | 2005-02-09 Ed Schonberg <schonberg@adacore.com> | |
32963 | ||
32964 | * sem_ch4.adb (Analyze_Selected_Component): Create Actual_Subtype even | |
32965 | with expansion disabled. The actual subtype is needed among other | |
32966 | places when the selected component appears in the context of a loop | |
32967 | bound, and denotes a packed array. | |
32968 | (Operator_Check): Always use the first subtype in the | |
32969 | error message, to avoid the appearance of internal base types. | |
32970 | (Transform_Object_Operation): Copy each actual in full | |
32971 | to the parameter associations of the constructed call, rather than | |
32972 | using the shallow copy mechanism of New_Copy_List. This ensures that | |
32973 | the chaining of named associations is done properly. | |
32974 | (Complete_Object_Operation): Rewrite node, rather than | |
32975 | replacing it, so that we can trace back to the original selected | |
32976 | component. | |
32977 | ||
32978 | * sem_elab.adb (Set_Elaboration_Constraint): For initialization calls, | |
32979 | and calls that use object notation, if the called function is not | |
32980 | declared in a withed unit, place the elaboration constraint on the | |
32981 | unit in the context that makes the function accessible. | |
32982 | (Check_Elab_Subtype_Declaration): Check whether a subtype declaration | |
32983 | imposes an elaboration constraint between two packages. | |
32984 | ||
32985 | 2005-02-09 Ed Schonberg <schonberg@adacore.com> | |
32986 | ||
32987 | * sem_ch7.adb (Uninstall_Declarations): Exchange full and private | |
32988 | views of a private type after handling its private dependents, to | |
32989 | maintain proper stack discipline between entry and exit from the | |
32990 | package. | |
32991 | ||
32992 | 2005-02-09 Cyrille Comar <comar@adacore.com> | |
32993 | ||
32994 | * s-finimp.adb: (Finalize_List): Optimize in the no-abort case. | |
32995 | Minor reformatting. | |
32996 | ||
32997 | 2005-02-09 Arnaud Charlet <charlet@adacore.com> | |
32998 | ||
32999 | * s-tporft.adb (Register_Foreign_Thread): Initialize Task_Image[_Len] | |
33000 | fields for foreign threads. | |
33001 | ||
33002 | 2005-02-09 Doug Rupp <rupp@adacore.com> | |
33003 | ||
33004 | * s-vaflop.adb: Add pragma Warnings (Off) to eliminate infinite | |
33005 | recursion warnings when compiled with -gnatdm. | |
33006 | ||
33007 | 2005-02-09 Robert Dewar <dewar@adacore.com> | |
33008 | ||
33009 | * usage.adb: Add line for switch -gnat05 (allow Ada 2005 extensions) | |
33010 | Slight fix to documentation of -gnaty with no parameters | |
33011 | ||
33012 | * xr_tabls.ads: Add ??? comment for missing overall comment | |
33013 | ||
33014 | * xsinfo.adb: Make default file name be sinfo.h, since this is what | |
33015 | we now use by default. | |
33016 | ||
33017 | * xsnames.adb: Adjust end of file test to look for five space followed | |
33018 | by '#' instead of six spaces. The format of xsnames.adb was modified | |
33019 | in the last update. | |
33020 | ||
33021 | * a-numeri.ads: Add reference to AI-388 for greek letter pi | |
33022 | identifier. | |
33023 | ||
33024 | * clean.adb: Minor reformatting. | |
33025 | ||
33026 | * gnat1drv.adb, gnatfind.adb, gnatlink.adb, gnatmem.adb, | |
33027 | gnatname.adb: Minor reformatting | |
33028 | Add 2005 to copyright output when utility is run | |
33029 | ||
33030 | * csets.adb: Eliminate obsolete comment | |
33031 | ||
33032 | * debug.adb, g-socket.ads, i-cobol.adb: Minor reformatting throughout | |
33033 | Update comments. | |
33034 | ||
33035 | * sem_eval.ads (Eval_Integer_Literal): Do not inline this, not useful. | |
33036 | ||
33037 | 2005-02-09 Sergey Rybin <rybin@adacore.com> | |
33038 | ||
33039 | * gnat_ugn.texi: Add to the gnatpp section the paragraph describing | |
33040 | the difference between compact and incompact layout and add the record | |
33041 | representation clause to the example illustrating different layouts. | |
33042 | Add the description of '-A5' gnatpp option ("align 'AT' keywords in | |
33043 | component clauses"). | |
33044 | ||
33045 | 2005-02-09 Florian Villoing <villoing@adacore.com> | |
33046 | ||
33047 | * gnat_ugn.texi: Fix typos. | |
33048 | Use @command to display 'gcc', 'gnatbind', etc. insted of @code or | |
33049 | @file. | |
33050 | Make proper use of @ref, @xref and @pxref to avoid duplication of "see" | |
33051 | in the generated documentation. | |
33052 | ||
33053 | 2005-02-09 Arnaud Charlet <charlet@adacore.com> | |
33054 | ||
33055 | * gnat_ugn.texi: Remove all mentions of FSU threads, which are no | |
33056 | longer supported. | |
33057 | Update linker wrapper when linking with non GNU C++. | |
33058 | ||
33059 | 2005-02-09 Pascal Obry <obry@adacore.com> | |
33060 | ||
a1286ef5 | 33061 | * gnat_ugn.texi: |
fc5a191d AC |
33062 | Document the procedure to debug the DllMain routine on Windows. |
33063 | Add note about -funwind-tables and mixed Ada and C/C++ programming in | |
33064 | ZCX mode. | |
33065 | Document new BIND qualifer /RETURN_CODES=VMS. | |
33066 | ||
33067 | 2005-02-09 Ben Brosgol <brosgol@adacore.com> | |
33068 | ||
33069 | * gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter | |
33070 | Edited gnatmetric chapter | |
33071 | ||
33072 | 2005-02-09 Robert Dewar <dewar@adacore.com> | |
33073 | ||
a1286ef5 | 33074 | * gnat_rm.texi: |
fc5a191d AC |
33075 | Changes to document new wide wide character support |
33076 | For AI-285 | |
33077 | Update documentation on Normalize_Scalars and Initialize_Scalars | |
33078 | ||
33079 | 2005-02-09 Pascal Obry <obry@adacore.com> | |
33080 | ||
33081 | * s-taprop-mingw.adb, s-soflin.ads: Minor reformatting. | |
33082 | ||
33083 | 2005-02-09 Jose Ruiz <ruiz@adacore.com> | |
33084 | ||
33085 | * s-osinte-vxworks.ads (taskPriorityGet): Add this function (imported | |
33086 | from the VxWorks kernel) that is needed for getting the active | |
33087 | priority of the different tasks. | |
33088 | ||
33089 | * s-atacco.ads, s-atacco.adb (Nothing): Remove this dummy procedure. | |
33090 | Use a pragma Elaborate_Body in the spec file instead. | |
33091 | Noticed by code reading. | |
33092 | ||
33093 | 2005-02-09 Thomas Quinot <quinot@adacore.com> | |
33094 | ||
33095 | * exp_util.ads: Minor correction in comment. | |
33096 | ||
33097 | 2005-02-09 Arnaud Charlet <charlet@adacore.com> | |
33098 | ||
33099 | * s-taprop.ads (Initialize): Update comments. Remove pragma Inline, | |
33100 | since this procedure is now too complex to be worth inlining. | |
33101 | ||
c6a912da RH |
33102 | 2005-02-09 Richard Henderson <rth@redhat.com> |
33103 | ||
33104 | * utils.c (gnat_define_builtin): Remove. | |
33105 | (gnat_install_builtins): Use build_common_builtin_nodes. | |
33106 | ||
4c2d6a70 AC |
33107 | 2005-02-09 Arnaud Charlet <charlet@adacore.com> |
33108 | ||
33109 | * a-rbtgso.adb, a-crbtgo.ads, a-crbtgo.adb, a-crbtgk.ads, | |
33110 | a-crbtgk.adb, a-crbltr.ads, a-coprnu.ads, a-coprnu.adb, | |
33111 | a-coorse.ads, a-coorse.adb, a-convec.ads, a-convec.adb, | |
33112 | a-contai.ads, a-coinve.ads, a-coinve.adb, a-cohata.ads, | |
33113 | a-cohama.ads, a-cohama.adb, a-ciorse.ads, a-ciorse.adb, | |
33114 | a-cihama.ads, a-cihama.adb, a-cidlli.ads, a-cidlli.adb, | |
33115 | a-chtgop.ads, a-chtgop.adb, a-cgcaso.ads, a-cgcaso.adb, | |
33116 | a-cgarso.ads, a-cgarso.adb, a-cdlili.ads, a-cdlili.adb, | |
33117 | a-cgaaso.adb, a-coormu.adb, a-ciormu.adb, a-cihase.adb, | |
33118 | a-cihase.ads, a-cohase.adb, a-cohase.ads, a-ciorma.ads, | |
33119 | a-coorma.ads, a-swunha.ads, a-stunha.ads, a-ciormu.ads, | |
33120 | a-coormu.ads, a-rbtgso.ads, a-swunha.adb, a-stunha.adb, | |
33121 | a-cgaaso.ads, a-ciorma.adb, a-coorma.adb, a-secain.adb, | |
33122 | a-secain.ads, a-slcain.ads, a-slcain.adb, a-shcain.ads, | |
33123 | a-shcain.adb, a-chtgke.ads, a-chtgke.adb, a-stwiha.ads, | |
33124 | a-stwiha.adb, a-strhas.ads, a-strhas.adb, a-chzla1.ads, | |
33125 | a-chzla9.ads, a-lfztio.ads, a-liztio.ads, a-llfzti.ads, | |
33126 | a-llizti.ads, a-sfztio.ads, a-siztio.ads, a-ssizti.ads, | |
33127 | a-stzbou.adb, a-stzbou.ads, a-stzfix.adb, a-stzfix.ads, | |
33128 | a-stzhas.adb, a-stzhas.ads, a-stzmap.adb, a-stzmap.ads, | |
33129 | a-stzsea.adb, a-stzsea.ads, a-stzsup.adb, a-stzsup.ads, | |
33130 | a-stzunb.adb, a-stzunb.ads, a-swunau.adb, a-swunau.ads, | |
33131 | a-szmzco.ads, a-szunau.adb, a-szunau.ads, a-szunha.adb, | |
33132 | a-szunha.ads, a-szuzti.adb, a-szuzti.ads, a-tiunio.ads, | |
33133 | a-wwunio.ads, a-ztcoau.adb, a-ztcoau.ads, a-ztcoio.adb, | |
33134 | a-ztcoio.ads, a-ztcstr.adb, a-ztcstr.ads, a-ztdeau.adb, | |
33135 | a-ztdeau.ads, a-ztdeio.adb, a-ztdeio.ads, a-ztedit.adb, | |
33136 | a-ztedit.ads, a-ztenau.adb, a-ztenau.ads, a-ztenio.adb, | |
33137 | a-ztenio.ads, a-ztexio.adb, a-ztexio.ads, a-ztfiio.adb, | |
33138 | a-ztfiio.ads, a-ztflau.adb, a-ztflau.ads, a-ztflio.adb, | |
33139 | a-ztflio.ads, a-ztgeau.adb, a-ztgeau.ads, a-ztinau.adb, | |
33140 | a-ztinau.ads, a-ztinio.adb, a-ztinio.ads, a-ztmoau.adb, | |
33141 | a-ztmoau.ads, a-ztmoio.adb, a-ztmoio.ads, a-zttest.adb, | |
33142 | a-zttest.ads, a-zzunio.ads: New files. Part of new Ada 2005 | |
33143 | library. | |
33144 | ||
9e94c78f | 33145 | 2005-01-27 Laurent Guerby <laurent@guerby.net> |
74a22497 LG |
33146 | |
33147 | * Makefile.in: Fix a-intnam.ads from previous commit, | |
33148 | add 2005 to copyright. | |
33149 | * a-intman-rtems.ads: Renamed to... | |
33150 | * a-intnam-rtems.ads: | |
33151 | ||
9e94c78f | 33152 | 2005-01-27 Laurent Guerby <laurent@guerby.net> |
7d921ba4 LG |
33153 | |
33154 | * Makefile.in: Rename GNAT RTEMS specific files. | |
a1286ef5 | 33155 | * 5rtpopsp.adb, 4rintnam.ads, 5rosinte.adb, |
da8f5fd9 | 33156 | 5rosinte.ads, 5rparame.adb: Replaced by files below. |
7d921ba4 LG |
33157 | * s-tpopsp-rtems.adb, a-intman-rtems.ads, s-osinte-rtems.adb, |
33158 | s-osinte-rtems.ads, s-parame-rtems.adb: Replace files above. | |
33159 | ||
9e94c78f EB |
33160 | 2005-01-27 Joel Sherrill <joel.sherrill@oarcorp.com> |
33161 | Laurent Guerby <laurent@guerby.net> | |
9011d4bb JS |
33162 | |
33163 | PR ada/19488 | |
33164 | * 5rosinte.ads: Add No_Key constant. | |
a1286ef5 ZW |
33165 | * 5rtpopsp.adb: Initialize ATCB_Key with No_Key and fix style. |
33166 | * gsocket.h: Do not include <sys/socket.h> with RTEMS either. | |
9011d4bb | 33167 | |
9e94c78f | 33168 | 2005-01-26 Laurent Guerby <laurent@guerby.net> |
d487e3c1 LG |
33169 | |
33170 | PR ada/19414 | |
33171 | * i-cobol.adb (Valid_Numeric): Handle zero length case. | |
a1286ef5 | 33172 | |
3f38e738 RH |
33173 | 2005-01-20 Richard Henderson <rth@redhat.com> |
33174 | ||
33175 | * Makefile.in (alpha-linux, LIBGNAT_TARGET_PAIRS): Use | |
33176 | a-intnam-linux.ads and system-linux-alpha.ads. | |
33177 | * a-intnam-linux-alpha.ads: Remove file. | |
33178 | * s-osinte-linux-alpha.ads (SIGUNUSED, SIGSTKFLT, SIGLOST): New. | |
33179 | * system-linux-alpha.ads: New file. | |
33180 | ||
4d960a7e JJ |
33181 | 2005-01-18 Jakub Jelinek <jakub@redhat.com> |
33182 | ||
33183 | PR ada/13470 | |
33184 | * a-stunau.adb (Get_String): Don't return U.Reference, but Ret that is | |
33185 | set to the new string. | |
33186 | ||
b4c6a3a2 TM |
33187 | 2005-01-18 Toon Moene <toon@moene.indiv.nluug.nl> |
33188 | ||
33189 | * system-linux-ppc.ads: Set ZCX_By_Default and GCC_ZCX_Support | |
33190 | to True. | |
33191 | ||
8d5e1df2 RH |
33192 | 2005-01-18 Richard Henderson <rth@redhat.com> |
33193 | ||
33194 | * Makefile.in (LIBGNAT_TARGET_PAIRS, TOOLS_TARGET_PAIRS, MISCLIB, | |
33195 | THREADSLIB, GNATLIB_SHARED, PREFIX_OBJS, LIBRARY_VERSION): Specialize | |
33196 | for alpha-linux. | |
33197 | * s-osinte-linux-alpha.ads, a-intnam-linux-alpha.ads: New files. | |
33198 | ||
03eef11c AP |
33199 | 2005-01-14 Andrew Pinski <pinskia@physics.uc.edu> |
33200 | ||
33201 | * system-darwin-ppc.ads (ZCX_By_Default): Change to True. | |
33202 | (GCC_ZCX_Support): Likewise. | |
33203 | ||
bc7566ca BB |
33204 | 2005-01-11 Bastian Blank <waldi@debian.org> |
33205 | ||
33206 | * system-linux-s390.ads: Define Preallocated_Stacks. | |
33207 | * system-linux-s390x.ads: Likewise. | |
33208 | ||
e550819c AC |
33209 | 2005-01-04 Arnaud Charlet <charlet@adacore.com> |
33210 | ||
33211 | * gnat_ugn.texi: Fix texi errors with null variables. | |
33212 | ||
376a74d4 AC |
33213 | 2005-01-03 Thomas Quinot <quinot@adacore.com> |
33214 | ||
33215 | * gen-soccon.c: New utility program to generate g-soccon.ads | |
33216 | automatically. | |
33217 | ||
33218 | * socket.c, gsocket.h: Split inclusion of system header files into a | |
33219 | gsocket.h file separated from socket.c, to allow reuse in gen-soccon.c. | |
33220 | ||
33221 | * g-soccon.ads, g-soccon-unixware.ads, g-soccon-tru64.ads, | |
33222 | g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads, | |
33223 | g-soccon-interix.ads, g-soccon-solaris.ads, g-soccon-mingw.ads, | |
33224 | g-soccon-vxworks.ads, g-soccon-freebsd.ads: Note that these files | |
33225 | should not be edited by hand anymore, but should be regenerated using | |
33226 | gen-soccon. | |
33227 | ||
33228 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33229 | Ed Schonberg <schonberg@adacore.com> | |
33230 | Vincent Celier <celier@adacore.com> | |
33231 | ||
33232 | * s-atacco.ads, a-direio.adb: Protect use of 'Constrained by warnings | |
33233 | on/off, since this is an obsolescent feature, for which we now generate | |
33234 | a warning. | |
33235 | ||
33236 | * sem_attr.adb (Analyze_Attribute, case Constrained): Issue warning if | |
33237 | warning mode is set and obsolescent usage of this attribute occurs. | |
33238 | (Resolve_Access, case 'Access): Note that GNAT uses the context type to | |
33239 | disambiguate overloaded prefixes, in accordance with AI-235. GNAT code | |
33240 | predates, and partly motivates, the adoption of the AI. | |
33241 | Implement new Ada 2005 attribute Mod | |
33242 | ||
33243 | * exp_attr.adb (Expand_N_Attribute_Reference): Implement Ada 2005 | |
33244 | attribute Mod. | |
33245 | ||
33246 | * par-ch4.adb (P_Name): In Ada 2005 mode, recognize new attribute Mod | |
33247 | ||
33248 | * snames.h, snames.ads, snames.adb: Add entry for No_Dependence for | |
33249 | pragma restrictions. | |
33250 | New entry for Ada 2005 attribute Mod. | |
33251 | ||
a1286ef5 | 33252 | * par-prag.adb: |
376a74d4 AC |
33253 | Add recognition of new pragma Restrictions No_Dependence |
33254 | Recognize restriction No_Obsolescent_Features at parse time | |
33255 | ||
33256 | * bcheck.adb: Add circuitry for checking for consistency of | |
33257 | No_Dependence restrictions. | |
33258 | ||
33259 | * lib-writ.ads, lib-writ.adb: Output new R lines for No_Dependence | |
33260 | restrictions. | |
33261 | ||
33262 | * restrict.ads, restrict.adb: Add subprograms to deal with | |
33263 | No_Dependence restrictions. | |
33264 | ||
33265 | * rtsfind.adb: Check that implicit with's do not violate No_Dependence | |
33266 | restrictions. | |
33267 | ||
33268 | * sem_ch3.adb, sem_ch11.adb, sem_ch13.adb, lib-xref.adb, | |
33269 | sem_attr.adb: Add check for new restriction No_Obsolescent_Features | |
33270 | ||
33271 | * scn.ads, prj-err.ads, prj-err.adb, ali-util.adb, gprep.adb: Add new | |
33272 | dummy parameter to scng instantiation. | |
33273 | Needed for new restriction No_Obsolescent_Features | |
33274 | ||
33275 | * scn.adb: (Obsolescent_Check): New procedure | |
33276 | Needed for new restriction No_Obsolescent_Features | |
33277 | ||
33278 | * scng.ads, scng.adb: Always allow wide characters in Ada 2005 mode, as | |
33279 | specified by AI-285, needed for implementation of AI-388 (adding greek | |
33280 | pi to Ada.Numerics). | |
33281 | Add new generic formal to scng, needed for new restriction | |
33282 | No_Obsolescent_Features. | |
33283 | ||
33284 | * s-rident.ads: Add new restriction No_Obsolescent_Features. | |
33285 | ||
33286 | * ali.ads, ali.adb: Adjustments for reading new No_Dependence | |
33287 | restrictions lines. | |
33288 | (Scan_ALI): When finding an unexpected character on an R line, raise | |
33289 | exception Bad_R_Line, instead of calling Fatal_Error, so that, when | |
33290 | Ignore_Errors is True, default restrictions are set and scanning of the | |
33291 | ALI file continues with the next line. Also, when Bad_R_Line is raised | |
33292 | and Ignore_Errors is True, skip to the end of le line. | |
33293 | ||
33294 | * sem_ch10.adb: Check that explicit with's do not violate | |
33295 | No_Dependence restrictions. | |
33296 | (Install_Withed_Unit): Add code to implement AI-377 and diagnose | |
33297 | illegal context clauses containing child units of instance. | |
33298 | ||
33299 | * sem_prag.adb: Processing and checking for new No_Dependence | |
33300 | restrictions. | |
33301 | (Analyze_Pragma, case Psect_Object): Call Check_Arg_Is_External_Name to | |
33302 | analyze and check the External argument. | |
33303 | ||
33304 | * a-numeri.ads: Add greek letter pi as alternative spelling of Pi | |
33305 | ||
33306 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33307 | ||
33308 | * atree.adb: Add a fifth component to entities | |
33309 | This allows us to add 32 flags and four new fields | |
33310 | ||
33311 | * atree.ads: Add a fifth component to entities | |
33312 | This allows us to add 32 flags and four new fields | |
33313 | ||
33314 | * einfo.ads, einfo.adb: Document new fields and new flags now available | |
33315 | Add routines for printing new fields | |
33316 | ||
33317 | * treepr.adb: Call routines to print out additional fields if present | |
33318 | ||
33319 | 2005-01-03 Arnaud Charlet <charlet@adacore.com> | |
33320 | ||
33321 | * bld.ads, bld.adb, bld-io.ads, bld-io.adb, gprcmd.adb, | |
33322 | gpr2make.ads, gpr2make.adb: Remove gpr2make, replaced by gprmake. | |
33323 | ||
33324 | * Makefile.in: Add support to build shared Ada libraries on solaris x86 | |
33325 | Remove gpr2make, replaced by gprmake. | |
33326 | Remove references to gnatmem and libaddr2line. | |
33327 | Add indepsw.adb<indepsw-linux.adb to TOOLS_TARGET_PAIRS for IA64 linux. | |
33328 | (gnatlib-shared-darwin): Add "-fno-common" to GNATLIBCFLAGS. | |
33329 | Add support for specialized version of Ada.Numerics.Aux for Darwin: use | |
33330 | a-numaux-darwin.ads and a-numaux-darwin.adb | |
33331 | Enable mlib-tgt-lynxos.adb on lynxos. | |
33332 | ||
33333 | * Make-lang.in: Remove rules for gpr2make. | |
33334 | When generating sdefault.adb, do not call Relocate_Path | |
33335 | on S3 for function Target_Name, as it is not a path. | |
33336 | Remove references to gnatmem and libaddr2line. | |
33337 | ||
33338 | * a-numaux-darwin.ads, a-numaux-darwin.adb, g-soccon-darwin.ads: New | |
33339 | files. | |
33340 | ||
33341 | 2005-01-03 Samuel Tardieu <tardieu@adacore.com> | |
33342 | ||
33343 | * checks.adb (Apply_Alignment_Check): Generate a warning if an object | |
33344 | address is incompatible with its base type alignment constraints when | |
33345 | this can be decided statically. | |
33346 | ||
33347 | 2005-01-03 Olivier Hainque <hainque@adacore.com> | |
33348 | ||
33349 | * decl.c (compatible_signatures_p): New function. The intended purpose | |
33350 | is to check if two function signatures for a call-site and a callee are | |
33351 | compatible enough for the call to be valid. The underlying purpose is | |
33352 | to check if a call to a mapped builtin is using the right interface. | |
33353 | The current code actually does not check antyhing - this a placeholder | |
33354 | for future refinements. | |
33355 | (gnat_to_gnu_entity) <E_Subprogram_Call>: Add preliminary bits to handle | |
33356 | builtin calls for convention Intrinsic. | |
33357 | ||
33358 | * gigi.h (builtin_decl_for): Declare (new function). | |
33359 | ||
33360 | * utils.c (gnat_install_builtins): Install the target specific builtins. | |
33361 | (builtin_decl_for): New function, provide a dummy body for now. | |
33362 | ||
33363 | 2005-01-03 Geert Bosch <bosch@adacore.com> | |
33364 | ||
33365 | * eval_fat.adb: (Eps_Model,Eps_Denorm): Remove, no longer used. | |
33366 | (Succ): Re-implement using Scaling, Exponent and Ceiling attributes. | |
33367 | (Pred): Implement in terms of Succ. | |
a1286ef5 | 33368 | |
376a74d4 AC |
33369 | * trans.c (convert_with_check): Reimplement conversion of float to |
33370 | integer. | |
33371 | ||
33372 | 2005-01-03 Ed Schonberg <schonberg@adacore.com> | |
33373 | Vincent Celier <celier@adacore.com> | |
33374 | ||
33375 | * exp_aggr.adb (Packed_Array_Aggregate_Handled): The values of the | |
33376 | bounds can be negative, and must be declared Int, not Nat. | |
33377 | ||
33378 | * sem_elim.adb (Line_Num_Match): Correct wrong code when index in an | |
33379 | array is checked after using the index in the array. | |
33380 | ||
33381 | * makegpr.adb (Add_Switches): Check if there is a package for the | |
33382 | processor. If there is no package, do not look for switches. | |
33383 | ||
33384 | 2005-01-03 Ed Schonberg <schonberg@adacore.com> | |
33385 | ||
33386 | * exp_ch3.adb (Stream_Operations_OK): Predicate to determine when the | |
33387 | generation of predefined stream operations (specs and bodies) should | |
33388 | proceed. Under various restrictions these subprograms must not be | |
33389 | generated. | |
33390 | ||
33391 | 2005-01-03 Thomas Quinot <quinot@adacore.com> | |
33392 | ||
a1286ef5 | 33393 | * exp_dist.adb: |
376a74d4 AC |
33394 | Declare subprogram index in Build_RPC_Receiver_Body, to reduce the |
33395 | amount of PCS-specific code in RACW stubs generation. | |
33396 | (Copy_Specification): Set Etype on copied formal parameter entities, as | |
33397 | this information is needed for PolyORB stubs generation. | |
33398 | (PolyORB_Support.Build_Subprogram_Receiving_Stubs): Remove unused | |
33399 | variable Dynamic_Async. | |
33400 | (Build_Subprogram_Receiving_Stubs): Make PCS-specific | |
33401 | (Build_RPC_Receiver_Specification): Make generic again, as recent | |
33402 | changes have allowed RPC receivers to have the same profile for both | |
33403 | variants of the PCS. | |
33404 | Reorganise RPC receiver generation to reduce differences between the | |
33405 | structure of GARLIC and PolyORB RPC receivers. | |
33406 | (Add_Receiving_Stubs_To_Declarations): Make this subprogram | |
33407 | PCS-specific. | |
33408 | Simplify elaboration code for RCI packages. | |
33409 | ||
33410 | * s-parint.ads, s-parint.adb, rtsfind.ads: Reorganise RPC receiver | |
33411 | generation to reduce differences between the structure of GARLIC and | |
33412 | PolyORB RPC receivers. | |
33413 | ||
33414 | * s-stratt.adb: Fix typo in comment. | |
33415 | ||
33416 | 2005-01-03 Thomas Quinot <quinot@adacore.com> | |
33417 | ||
33418 | * exp_ch7.ads (Make_Final_Call): Rewrite comment (was incorrectly | |
33419 | copied from Make_Init_Call). | |
33420 | ||
33421 | * exp_strm.adb (Build_Mutable_Record_Read_Procedure): Do component | |
33422 | reads and assignments on a temporary variable declared with appropriate | |
33423 | discriminants. | |
33424 | ||
33425 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33426 | ||
33427 | * i-c.adb (To_C): Raise CE if string is null and Append_Null | |
33428 | ||
33429 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33430 | ||
33431 | * i-cstrin.adb (Update): Do not append a null in form called with a | |
33432 | String. This avoids unintended behavior. | |
33433 | ||
33434 | 2005-01-03 Arnaud Charlet <charlet@adacore.com> | |
33435 | ||
33436 | PR ada/17527 | |
33437 | * init.c: Fix warnings on Free BSD section. | |
33438 | ||
33439 | 2005-01-03 Arnaud Charlet <charlet@adacore.com> | |
33440 | ||
33441 | PR ada/16949 | |
33442 | * sinfo.ads: Fix obsolete reference to xsinfo.spt (replaced by | |
33443 | xsinfo.adb). | |
33444 | ||
33445 | 2005-01-03 Vincent Celier <celier@adacore.com> | |
33446 | ||
33447 | * make.adb (Collect_Arguments_And_Compile): Do not attempt to build | |
33448 | libraries when Unique_Compile is True (-u switch). | |
33449 | (Gnatmake): ditto. | |
33450 | ||
33451 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33452 | ||
33453 | * namet.adb (Get_Decoded_Name_With_Brackets): Fix case of not allowing | |
33454 | upper case letter or underscore after W, as allowed by spec. | |
33455 | ||
33456 | 2005-01-03 Arnaud Charlet <charlet@adacore.com> | |
33457 | ||
33458 | * s-osinte-darwin.ads, s-osinte-darwin.adb: Clean up | |
33459 | darwin port by using proper type definitions from header files. | |
33460 | Use SIGTERM instead of SIGABRT for SIGADAABORT. | |
33461 | ||
33462 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33463 | ||
33464 | * par.adb: Enhance error message handling for configuration file | |
33465 | pragmas. | |
33466 | ||
33467 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33468 | ||
33469 | * s-arit64.adb (Double_Divide): Put back changes that got accidentally | |
33470 | removed during the previous update (test properly for case of dividing | |
33471 | largest negative number by -1, which generates overflow). | |
33472 | ||
33473 | 2005-01-03 Ed Schonberg <schonberg@adacore.com> | |
33474 | Sergey Rybin <rybin@adacore.com> | |
33475 | ||
33476 | * sem_ch12.adb (Analyze_Package_Instantiation): Create a separate node | |
33477 | to use as the defining identifier for a formal package. | |
33478 | (Remove_Parent): If the instance takes place within (an instance of) | |
33479 | a sibling, preserve private declarations of common parent. | |
33480 | ||
33481 | 2005-01-03 Ed Schonberg <schonberg@adacore.com> | |
33482 | ||
33483 | * sem_ch4.adb (Has_Fixed_Op): New predicate in Check_Arithmetic_Pair, | |
33484 | to determine whether one of the operands is a fixed-point type for | |
33485 | which a user-defined multiplication or division operation might be | |
33486 | defined. | |
33487 | ||
33488 | * sem_res.adb (Valid_Conversion): The legality rules for conversions | |
33489 | of access types are symmetric in Ada 2005: either designated type can | |
33490 | be unconstrained. | |
33491 | ||
33492 | 2005-01-03 Vincent Celier <celier@adacore.com> | |
33493 | ||
33494 | * s-fileio.adb (Temp_File_Record): Change length of string component | |
33495 | Name from L_tmpnam + 1 to max_path_len + 1. | |
33496 | ||
33497 | 2005-01-03 Arnaud Charlet <charlet@adacore.com> | |
33498 | ||
33499 | * s-tasini.ads, s-tasini.adb (Undefer_Abortion): Handle case of | |
33500 | Self_Id.Deferral_Level = 0. | |
33501 | (Do_Pending_Action): Move this function to the spec. | |
33502 | ||
33503 | * s-tasren.adb (Selective_Wait [Terminate_Selected]): Call | |
33504 | Do_Pending_Action explicitely when needed, in case we're using | |
33505 | No_Abort restrictions. | |
33506 | ||
33507 | * s-tassta.adb (Create_Task): If Abort is not allowed, reset the | |
33508 | deferral level since it will not get changed by the generated code. | |
33509 | Keeping a default value of 1 would prevent some operations (e.g. | |
33510 | select or delay) to proceed successfully. | |
33511 | ||
33512 | 2005-01-03 Ben Brosgol <brosgol@adacore.com> | |
33513 | Robert Dewar <dewar@adacore.com> | |
33514 | Cyrille Comar <comar@adacore.com> | |
33515 | ||
33516 | * ug_words, gnat_ugn.texi: Added alpha-ivms transitioning section to | |
33517 | porting guide chapter (vms version). | |
33518 | Revised doc title (removed "for native platforms") and subtitle. | |
33519 | Add discussion on warning flag for obsolescent features. First we | |
33520 | note that it applies to obsolete GNAT features, which was previously | |
33521 | omitted. Second we contrast the behavior with that of the new | |
33522 | Ada 2005 AI-368 restriction No_Obsolescent_Features. | |
33523 | Preliminary rewriting of GNAT & libraries chapter in order to take | |
33524 | into account default project locations & new project manager | |
33525 | capabilities. | |
33526 | ||
33527 | 2005-01-03 Robert Dewar <dewar@adacore.com> | |
33528 | ||
33529 | * cstand.adb (Create_Operators): Clean up format and documentation of | |
33530 | unary and binary operator result tables. No change in code, just | |
33531 | reformatting and addition of comments. | |
33532 | ||
33533 | * errout.ads, gnatfind.adb, s-maccod.ads, sem.adb, | |
33534 | sem_ch2.adb: Minor reformatting | |
33535 | ||
33536 | * atree.ads, elists.ads, lib.ads, namet.ads, nlists.ads, repinfo.ads, | |
33537 | sinput.ads, stringt.ads, uintp.ads, urealp.ads: Minor clarification to | |
33538 | comments for Tree_Read and Tree_Write. | |
33539 | ||
33540 | 2005-01-03 Pascal Obry <obry@adacore.com> | |
33541 | ||
33542 | * exp_attr.ads: Minor reformatting. | |
33543 | ||
33544 | 2005-01-03 Romain Berrendonner <berrendo@adacore.com> | |
33545 | ||
33546 | * comperr.adb (Compiler_Abort): Add specialized message for GAP | |
33547 | versions. | |
33548 | ||
33549 | 2005-01-03 Ed Schonberg <schonberg@adacore.com> | |
33550 | ||
33551 | * exp_pakd.adb (Create_Packed_Array_Type): Add a guard to check | |
33552 | whether the ancestor type is private, as may be the case with nested | |
33553 | instantiations. | |
33554 | ||
9e94c78f | 33555 | 2004-12-30 Sohail Somani <sohail@sohailsomani.com> |
15cd18b9 SS |
33556 | |
33557 | PR ada/19128 | |
33558 | * trans.c (gnat_to_gnu): Fix typo: Use correct return variable. | |
33559 | ||
2614034e | 33560 | 2004-12-23 Eric Botcazou <ebotcazou@libertysurf.fr> |
15cd18b9 | 33561 | |
2614034e EB |
33562 | * trans.c (Attribute_to_gnu): Adjust call to get_inner_reference. |
33563 | * utils2.c (build_unary_op): Likewise. | |
33564 | ||
ad50bc8d RH |
33565 | 2004-12-22 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
33566 | ||
33567 | * trans.c (mark_visited): Set TYPE_SIZES_GIMPLIFIED. | |
33568 | ||
ed9c846c RH |
33569 | 2004-12-19 Richard Henderson <rth@redhat.com> |
33570 | ||
33571 | * trans.c (gigi): Update gimplify_body call. | |
33572 | ||
08f2586c NS |
33573 | 2004-12-09 Nathan Sidwell <nathan@codesourcery.com> |
33574 | ||
33575 | * decl.c (gnat_substitute_in_type): Remove SET_TYPE case. | |
33576 | ||
180684eb AC |
33577 | 2004-12-07 Ed Falis <falis@adacore.com> |
33578 | ||
33579 | * s-intman-vxworks.adb (Notify_Exception): removed useless check for | |
33580 | current task being suspended. | |
33581 | ||
33582 | * init.c (__gnat_clear_exception): added to reset VxWorks exception | |
33583 | count. | |
33584 | (__gnat_map_signal): removed test for current task being suspended. | |
33585 | ||
33586 | 2004-12-07 Gary Dismukes <dismukes@adacore.com> | |
33587 | ||
33588 | * a-exexpr.adb (Others_Value, All_Others_Value): Change initial values | |
33589 | from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last on 16-bit | |
33590 | targets (such as AAMP). | |
33591 | ||
33592 | 2004-12-07 Ed Schonberg <schonberg@adacore.com> | |
33593 | ||
33594 | * atree.adb (Visit_Itype): Create a new name for the generated itype, | |
33595 | because the back-end may otherwise treat it as a redefinition of the | |
33596 | old symbol. | |
33597 | ||
33598 | 2004-12-07 Eric Botcazou <ebotcazou@adacore.com> | |
33599 | ||
33600 | * back_end.adb (Scan_Back_End_Switches): Accept --param. | |
33601 | ||
33602 | * lang-specs.h: Accept --param. | |
33603 | ||
33604 | 2004-12-07 Vincent Celier <celier@adacore.com> | |
33605 | ||
33606 | * make.adb (Check_Mains, Switches_Of): Adapt to name changes in | |
33607 | package Prj (Current_Spec_Suffix => Ada_Spec_Suffix, | |
33608 | Current_Body_Suffix => Ada_Body_Suffix). | |
33609 | Take into account Externally_Built attribute. | |
33610 | ||
33611 | * clean.adb (In_Extension_Chain): Always return False when one of the | |
33612 | parameter is No_Project. | |
33613 | (Clean_Project): Adapt to changes in package Prj (Lang_Ada => | |
33614 | Ada_Language_Index). | |
33615 | (Gnatclean): Adapt to change in package Prj.Pars (no parameter | |
33616 | Process_Languages for procedure Parse). | |
33617 | ||
33618 | * gnatcmd.adb (Carg_Switches): New table. | |
33619 | (GNATCmd): Put all switches following -cargs in the Carg_Switches table. | |
33620 | Adapt to name changes in package Prj (Current_Spec_Suffix => | |
33621 | Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix). | |
33622 | ||
33623 | * mlib-prj.adb: Adapt to changes in packages Prj and Prj.Com: type | |
33624 | Header_Num and function Hash are now declared in package Prj, | |
33625 | not Prj.Com. | |
33626 | ||
33627 | * prj.adb (Suffix_Of): New function. | |
33628 | (Set (Suffix)): New procedure. | |
33629 | (Hash): One function moved from Prj.Com | |
33630 | (Is_Present, Language_Processing_Data_Of): New functions | |
33631 | (Set): Two new procedures | |
33632 | (Add_Language_Name, Display_Language_Name): New procedures | |
33633 | ||
33634 | * prj.ads: (Suffix_Of): New function | |
33635 | (Set (Suffix)): New procedure | |
33636 | Add several types and tables for multi-language support. | |
33637 | (Header_Num): Type moved from Prj.Com | |
33638 | (Hash): Two functions moved from Prj.Com | |
33639 | (Is_Present, Language_Processing_Data_Of): New functions | |
33640 | (Set): Two new procedures | |
33641 | (Add_Language_Name, Display_Language_Name): New procedures | |
33642 | (Naming): Component name changes: | |
33643 | Current_Spec_Suffix => Ada_Spec_Suffix, | |
33644 | Current_Body_Suffix => Ada_Body_Suffix. Add new components: | |
33645 | Impl_Suffixes, Supp_Suffixes. | |
33646 | (Project_Data): New components: Externally_Built, Supp_Languages, | |
33647 | First_Language_Processing, Supp_Language_Processing, Default_Linker, | |
33648 | Default_Linker_Path. | |
33649 | ||
33650 | * prj-attr.adb: Add new attributes Ada_Roots and Externally_Built and | |
33651 | new package Language_Processing with its attributes (Compiler_Driver, | |
33652 | Compiler_Kind, Dependency_Option, Compute_Dependency, Include_Option, | |
33653 | Binder_Driver, Default_Linker). | |
33654 | ||
33655 | * prj-com.ads, prj-com.adb (Hash): Function moved to package Prj. | |
33656 | (Header_Num): Type moved to package Prj | |
33657 | ||
33658 | * prj-env.adb: Adapt to name changes in package Prj | |
33659 | (Current_Spec_Suffix => Ada_Spec_Suffix, | |
33660 | Current_Body_Suffix => Ada_Body_Suffix). | |
33661 | ||
33662 | * prj-ext.adb: Add the default project dir (<prefix>/log/gnat) by | |
33663 | default to the project path, except the "-" is one of the directories | |
33664 | in env var ADA_PROJECT_PATH. | |
33665 | (Current_Project_Path): Global variable, replacing Project_Path | |
33666 | that was in the body of Prj.Part. | |
33667 | (Project_Path): New function | |
33668 | (Set_Project_Path): New procedure | |
33669 | Initialize Current_Project_Path during elaboration of the package | |
33670 | Remove dependency on Prj.Com, no longer needed | |
33671 | ||
33672 | * prj-ext.ads (Project_Path): New function | |
33673 | (Set_Project_Path): New procedure | |
33674 | ||
33675 | * prj-nmsc.adb (Body_Suffix_Of): New function. Returns .<lang> when no | |
33676 | suffix is defined for language <lang>. | |
33677 | (Find_Sources, Record_Other_Sources): Use Body_Suffix_Of, instead of | |
33678 | accessing directly the components of Naming. | |
33679 | (Look_For_Sources): Use Set (Suffix) to set the suffix of a language. | |
33680 | Reorganise of this package. | |
33681 | Break procedure Check in several procedures. | |
33682 | ||
33683 | * prj-nmsc.ads: Replace all procedures (Ada_Check, | |
33684 | Other_Languages_Check and Language_Independent_Check) with a single | |
33685 | procedure Check. | |
33686 | ||
33687 | * prj-pars.ads, prj-pars.adb (Parse): Remove parameter | |
33688 | Process_Languages, no longer needed. | |
33689 | ||
33690 | * prj-part.adb (Project_Path): Move to the body of Prj.Ext as | |
33691 | Current_Project_Path. | |
33692 | Remove elaboration code, moved to the body of Prj.Ext | |
33693 | Use new function Prj.Ext.Project_Path instead of old variable | |
33694 | Project_Path. | |
33695 | (Post_Parse_Context_Clause): Get Resolved_Path as a case-sensitive path. | |
33696 | When comparing with project paths on the stack, first put the resolved | |
33697 | path in canonical case. | |
33698 | (Parse_Single_Project): Set the path name of the project file in the | |
33699 | tree to the normalized path. | |
33700 | ||
33701 | * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): Remove | |
33702 | parameter Process_Languages, no longer needed. | |
33703 | (Recursive_Check): Call Prj.Nmsc.Check, instead of Ada_Check and | |
33704 | Other_Languages_Check. | |
33705 | ||
33706 | * prj-tree.ads (Project_Name_And_Node): New component Canonical_Path | |
33707 | to store the resolved canonical path of the project file. | |
33708 | Remove dependency to Prj.Com, no longer needed | |
33709 | ||
33710 | * prj-util.adb: Adapt to name changes in package Prj | |
33711 | (Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix => | |
33712 | Ada_Body_Suffix). | |
33713 | ||
33714 | * snames.ads, snames.adb: New standard names: Ada_Roots, Binder_Driver, | |
33715 | Compiler_Driver, Compiler_Kind, Compute_Dependency, Default_Linker, | |
33716 | Externally_Built, Include_Option, Language_Processing. | |
33717 | ||
33718 | * makegpr.adb: Numerous changes due to changes in packages | |
33719 | Prj and Prj.Nmsc. | |
33720 | ||
33721 | * gnatls.adb: Add the default project dir (<prefix>/log/gnat) by | |
33722 | default to the project path, except whe "-" is one of the directories | |
33723 | in env var ADA_PROJECT_PATH. | |
33724 | (Gnatls): In verbose mode, add the new section "Project Search Path:" | |
33725 | ||
33726 | 2004-12-07 Robert Dewar <dewar@adacore.com> | |
33727 | ||
33728 | * debug.adb: Document that -gnatdA automatically sets -gnatR3m | |
33729 | ||
33730 | * gnat1drv.adb (Gnat1drv): If debug flag A set, then automatically | |
33731 | set -gnatR3m mode. | |
33732 | ||
33733 | * repinfo.adb (List_Rep_Info): Remove special handling of -gnatdA | |
33734 | flag. No longer needed now that we handle this in gnat1drv.adb. | |
33735 | ||
33736 | * repinfo.ads: Minor reformatting | |
33737 | ||
33738 | 2004-12-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
33739 | Olivier Hainque <hainque@adacore.com> | |
33740 | Eric Botcazou <ebotcazou@adacore.com> | |
33741 | ||
33742 | * decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for | |
33743 | TYPE_SIZE_UNIT of result type if SIZE is not specified. | |
33744 | (make_aligning_type): Pass -1 as ADDRESSABLE to prevent the creation | |
33745 | of a bitfield, which we know is useless and causes trouble because of | |
33746 | alignment implications. | |
33747 | ||
33748 | * utils.c (create_var_decl): Set DECL_COMMON again on targets without | |
33749 | BSS sections. | |
33750 | (process_attributes): Clear DECL_COMMON again when a section attribute | |
33751 | is present. | |
33752 | (finish_record_type): Independently track if RECORD_TYPE has SIZE and/or | |
33753 | SIZE_UNIT already set and use to compute final SIZE and SIZE_UNIT. | |
33754 | (create_field_decl): Special case ADDRESSABLE negative to mean | |
33755 | "no bitfield creation", to be used by make_aligning_type. Don't | |
33756 | restrict bitfield creation to !ADDRESSABLE any more, as some BLKmode | |
33757 | fields claimed addressable still have to be bitfields. Use | |
33758 | value_factor_p instead of a raw binop construction to check for the | |
33759 | position's alignment. | |
33760 | ||
33761 | 2004-12-07 Geert Bosch <bosch@adacore.com> | |
33762 | ||
33763 | * eval_fat.adb: Revert previous change. | |
33764 | ||
33765 | 2004-12-07 Thomas Quinot <quinot@adacore.com> | |
33766 | Ed Schonberg <schonberg@adacore.com> | |
33767 | ||
33768 | * exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component | |
33769 | with an implicit dereference as its prefix, use | |
33770 | Insert_Explicit_Dereference instead of merely rewriting the prefix into | |
33771 | an explicit dereference. This ensures that a reference to the original | |
33772 | prefix is generated, if appropriate. | |
33773 | ||
33774 | * sem_util.adb (Insert_Explicit_Dereference): When an implicit | |
33775 | dereference is rewritten to an explicit one, generate a reference to | |
33776 | the entity denoted by its prefix using the original prefix node, so | |
33777 | the dereference can be properly recorded as a read of the denoted | |
33778 | access value, if appropriate. | |
33779 | ||
33780 | * sem_warn.adb (Output_Unreferenced_Messages): Do not abstain from | |
33781 | emitting 'assigned but never read' warning on a variable on the basis | |
33782 | that it has an access type. | |
33783 | (Check_References): Emit unreferenced warning when the scope is a | |
33784 | subprogram body. | |
33785 | ||
33786 | 2004-12-07 Robert Dewar <dewar@adacore.com> | |
33787 | Ed Schonberg <schonberg@adacore.com> | |
33788 | ||
33789 | * exp_ch6.adb (Expand_Call): Add comment on handling of back end | |
33790 | intrinsic | |
33791 | ||
33792 | * exp_intr.adb (Expand_Intrinsic_Call): Ignore unrecognized intrinsic, | |
33793 | leaving call unchanged. | |
33794 | This deals with the case where the pragma Import specified | |
33795 | an external name, to be handled by the back end. | |
33796 | ||
33797 | * sem_prag.adb (Process_Import_Or_Interface): Do not check validity of | |
33798 | subprogram which is Imported with convention Intrinsic if an | |
33799 | External_Name argument is specified. | |
33800 | (Process_Import_Or_Interface): Properly diagnose link name argument. | |
33801 | (Inlining_Not_Possible): New name for Cannot_Inline, to avoid confusion | |
33802 | with Sem_Ch6.Cannot_Inline. | |
33803 | (Process_Inline): Provide separate warning for inapplicable inline | |
33804 | pragma. | |
33805 | (Cannot_Inline): Reject subprograms that have an at_end handler, so that | |
33806 | treatment is uniform on different targets. | |
33807 | ||
33808 | 2004-12-07 Ed Schonberg <schonberg@adacore.com> | |
33809 | ||
33810 | * exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of | |
33811 | construct is rewritten, preserve end label to permit source navigation. | |
33812 | ||
33813 | 2004-12-07 Thomas Quinot <quinot@adacore.com> | |
33814 | ||
33815 | * exp_dist.adb (Specific_Build_General_Calling_Stubs, | |
33816 | Specific_Build_Stub_Target): New subprograms. | |
33817 | (Build_Subprogram_Calling_Stubs): Make this procedure independent from | |
33818 | the PCS implementation used, using the above PCS-customized subprograms. | |
33819 | Minor reformatting. | |
33820 | (PolyORB_Support.Helpers): New subunit containing supporting subprograms | |
33821 | for generation of DSA code targeted to the PolyORB PCS. | |
33822 | (Add_Stub_Type): Rewrite to isolate the parts that are specific to one | |
33823 | implementation of the partition communication subsystem in ancillary | |
33824 | subprograms. | |
33825 | (Specific_Build_Stub_Type, GARLIC_Support.Build_Stub_Type, | |
33826 | PolyORB_Support.Build_Stub_Type): New subrograms containing the | |
33827 | PCS-specific part of Add_Stub_Type. | |
33828 | (Insert_Partition_Check): Use runtime library function to perform | |
33829 | E.4(19) check. | |
33830 | ||
a1286ef5 ZW |
33831 | * rtsfind.ads: New entity System.PolyORB_Interface.Make_Ref |
33832 | (RE_Same_Partition): New entity, from s-parint. | |
180684eb | 33833 | |
a1286ef5 | 33834 | * s-parint.ads, s-parint.adb (Same_Partition): New subprogram. |
180684eb AC |
33835 | |
33836 | 2004-12-07 Gary Dismukes <dismukes@adacore.com> | |
33837 | ||
33838 | * gnatmem.adb, gnatname.adb, gnatsym.adb, gprcmd.adb, vms_conv.adb: | |
33839 | Output the copyright message on a separate line from the version | |
33840 | message. | |
33841 | ||
33842 | 2004-12-07 Joel Brobecker <brobecker@adacore.com> | |
33843 | ||
33844 | * g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a | |
33845 | compile-time warning. | |
33846 | ||
33847 | 2004-12-07 Robert Dewar <dewar@adacore.com> | |
33848 | ||
33849 | * g-regpat.adb: (Match): Change a misuse of or to or else | |
33850 | ||
33851 | 2004-12-07 Ed Schonberg <schonberg@adacore.com> | |
33852 | ||
15cd18b9 | 33853 | * lib-xref.adb: |
180684eb AC |
33854 | (Generate_Reference): Handle properly a reference to an entry formal, |
33855 | when an accept statement has a pragma Unreferenced for it. | |
33856 | ||
33857 | * sem_ch9.adb (Analyze_Accept_Statement): Reset the Is_Referenced flag | |
33858 | and the Has_Pragma_Unreferenced flag for each formal before analyzing | |
33859 | the body, to ensure that warnings are properly emitted for each accept | |
33860 | statement of a given task entry. | |
33861 | ||
33862 | 2004-12-07 Vasiliy Fofanov <fofanov@adacore.com> | |
33863 | ||
33864 | * Makefile.in: Add support for foreign threads on VMS. | |
33865 | ||
33866 | 2004-12-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
33867 | ||
33868 | * misc.c (gnat_types_compatible_p, LANG_HOOKS_TYPES_COMPATIBLE_P): | |
33869 | Remove. | |
33870 | (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): New. | |
33871 | ||
33872 | * adaint.h: (__gnat_dup, __gnat_dup2): Add missing decls. | |
33873 | ||
33874 | * trans.c (Exception_Handler_to_gnu_sjlj): Also handle renamed | |
33875 | exception. | |
33876 | (call_to_gnu): Convert to actual DECL_ARG_TYPE, not variant of it. | |
33877 | ||
33878 | 2004-12-07 Robert Dewar <dewar@adacore.com> | |
33879 | ||
33880 | * nlists.adb (Prepend_Debug): Remove parameters and nest within | |
33881 | Prepend. | |
33882 | (Remove_Next_Debug): Same fix | |
33883 | ||
33884 | * nlists.ads: Correct bad comments for Prev and Prev_Non_Pragma (we do | |
33885 | maintain back pointers now, though we did not used to, and comments | |
33886 | were out of date). | |
33887 | (Prepend): Remove pragma Inline. | |
33888 | (Remove_Next): Same cleanup | |
33889 | ||
33890 | 2004-12-07 Thomas Quinot <quinot@adacore.com> | |
33891 | ||
33892 | * sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram | |
33893 | used to record an implicit dereference as a read operation on its | |
33894 | prefix when operating under -gnatc. Necessary to avoid spurious | |
33895 | 'variable assigned but never read' warnings in that mode. | |
33896 | (Process_Indexed_Component, Analyze_Selected_Component): When the prefix | |
33897 | is a non-overloaded implicit dereference, call the above subprogram to | |
33898 | ensure proper recording of references. | |
33899 | ||
33900 | 2004-12-07 Gary Dismukes <dismukes@adacore.com> | |
33901 | ||
33902 | * sem_ch5.adb (One_Bound): Remove call to Resolve, as the bound needs | |
33903 | to be resolved later as part of Analyze_Iteration_Scheme's call to | |
33904 | Make_Index. | |
33905 | ||
33906 | 2004-12-07 Ed Schonberg <schonberg@adacore.com> | |
33907 | ||
33908 | * sem_ch8.adb (Find_Type): If node is a reference to 'Base and the | |
33909 | prefix is not a scalar type, place error message on prefix, not on | |
33910 | type entity. | |
33911 | ||
33912 | 2004-12-07 Bernard Banner <banner@adacore.com> | |
33913 | ||
33914 | * vxaddr2line.adb: Add support for x86 vxworks | |
33915 | ||
33916 | 2004-12-07 Thomas Quinot <quinot@adacore.com> | |
33917 | ||
33918 | * g-socket.ads (Get_Host_By_Address, Get_Host_By_Name): Clarify | |
33919 | documentation of the behaviour of these functions when passed an IP | |
33920 | address that has no record in the system hosts database and no reverse | |
33921 | record in the DNS. | |
33922 | ||
33923 | * cstand.adb, a-tags.ads: Fix typos in comment. | |
33924 | ||
33925 | 2004-12-07 Robert Dewar <dewar@adacore.com> | |
33926 | ||
33927 | * exp_ch2.adb, exp_ch3.adb, exp_ch5.adb, exp_ch8.adb, | |
33928 | exp_ch9.adb, exp_pakd.adb, interfac.ads, sem_ch6.adb, | |
33929 | sem_ch7.adb, sem_ch10.adb, sem_ch13.adb, sem_ch3.adb, | |
33930 | s-poosiz.ads: Minor reformatting | |
33931 | ||
33932 | * make.adb: Minor reformatting | |
33933 | Add some ??? comments asking for more comments | |
33934 | ||
33935 | * s-poosiz.adb: Minor reformatting | |
33936 | Add comments on alignment requirement | |
33937 | ||
33938 | * sinfo.ads: Remove obsolete comment and fix typo. | |
33939 | ||
33940 | 2004-12-07 Vincent Celier <celier@adacore.com> | |
33941 | Sergey Rybin <rybin@adacore.com> | |
33942 | ||
33943 | * gnat_ugn.texi: Update the section "The GNAT Driver and Project | |
33944 | Files" with the new tool and package names. | |
33945 | Reformatting to suppress most of the warnings for line too long | |
33946 | Document the new section "Project Search Path:" in the output of | |
33947 | gnatls -v. | |
33948 | Add gnatmetric section | |
33949 | ||
33950 | 2004-12-07 Vincent Celier <celier@adacore.com> | |
33951 | ||
33952 | * vms_data.ads: Correct GNAT METRIC qualifiers: -I-, -Idir and | |
33953 | -gnatec= are not direct switches of gnatmetric. Changed -eis to -eps | |
33954 | and -eit to -ept. Added qualifier | |
33955 | /ELEMENT_METRICS=CONSTRUCT_NESTING_MAX for new switch -ec. | |
33956 | ||
ed986c8e AS |
33957 | 2004-11-27 Andreas Schwab <schwab@suse.de> |
33958 | ||
33959 | * Make-lang.in (ada/trans.o): Depend on $(EXPR_H). | |
33960 | ||
3c13948a AC |
33961 | 2004-11-25 Arnaud Charlet <charlet@adacore.com> |
33962 | ||
33963 | * g-socthi-mingw.ads, g-socthi-vms.ads: Remove C_Read and C_Write from | |
33964 | internal implementation unit GNAT.Sockets.Thin, | |
33965 | as their usage for sockets is non-portable (using the read and write | |
33966 | functions from the system runtime library is fine on UNIX but won't | |
33967 | work under Windows). | |
33968 | ||
33969 | * mingw32.h: Update copyright notice. | |
33970 | ||
061fd2bf AC |
33971 | 2004-11-25 Arnaud Charlet <charlet@adacore.com> |
33972 | ||
33973 | * ada-tree.h: Minor reformatting of previous change to avoid lines | |
33974 | longer than 79 characters. | |
33975 | ||
e850e1f4 OH |
33976 | 2004-11-25 Olivier Hainque <hainque@adacore.com> |
33977 | ||
33978 | * tb-gcc.c: GCC infrastructure based implementation of | |
33979 | __gnat_backtrace. | |
33980 | ||
39afeb1a SB |
33981 | 2004-11-24 Steven Bosscher <stevenb@suse.de> |
33982 | ||
33983 | * misc.c (gnat_post_options): Don't clear | |
33984 | flag_inline_functions. | |
33985 | ||
9633a6ac AP |
33986 | 2004-11-22 Andrew Pinski <pinskia@physics.uc.edu> |
33987 | ||
33988 | PR ada/17986 | |
33989 | * ada-tree.h (lang_tree_node): Set chain_next to be the chain of the | |
33990 | tree. | |
33991 | ||
7fe16580 AJ |
33992 | 2004-11-21 Andreas Jaeger <aj@suse.de> |
33993 | ||
33994 | * stylesw.adb: Change Style_Check_Subprogram_Order to | |
33995 | Style_Check_Order_Subprograms. | |
33996 | ||
9716416b AC |
33997 | 2004-11-18 Arnaud Charlet <charlet@adacore.com> |
33998 | ||
33999 | * adaint.h, adaint.c | |
34000 | (__gnat_portable_spawn): Fix cast of spawnvp third parameter | |
34001 | to avoid warnings. | |
34002 | Add also a cast to kill another warning. | |
34003 | (win32_no_block_spawn): Initialize CreateProcess's dwCreationFlags | |
34004 | parameter with the priority class of the parent process instead of | |
34005 | always using the NORMAL_PRIORITY_CLASS. | |
34006 | (__gnat_dup): New function. | |
34007 | (__gnat_dup2): New function. | |
34008 | (__gnat_is_symbolic_link): Enable the effective body of this | |
34009 | function when __APPLE__ is defined. | |
34010 | ||
34011 | * g-os_lib.ads, g-os_lib.adb (Spawn): Two new procedures. | |
34012 | Update comments. | |
34013 | ||
34014 | 2004-11-18 Olivier Hainque <hainque@adacore.com> | |
34015 | ||
34016 | * a-exexpr.adb (Others_Value, All_Others_Value): New variables, the | |
34017 | address of which may be used to represent "others" and "all others" | |
34018 | choices in exception tables, instead of the current harcoded | |
34019 | (void *)0 and (void *)1. | |
34020 | (Setup_Exception): Do nothing in the GNAT SJLJ case. | |
34021 | ||
34022 | * gigi.h (others_decl, all_others_decl): New decls representing the | |
34023 | new Others_Value and All_Others_Value objects. | |
34024 | (struct attrib): Rename "arg" component as "args", since GCC expects a | |
34025 | list of arguments in there. | |
34026 | ||
34027 | * raise.c (GNAT_OTHERS, GNAT_ALL_OTHERS): Are now the address of the | |
34028 | corresponding objects exported by a-exexpr, instead of hardcoded dummy | |
34029 | addresses. | |
34030 | ||
34031 | * trans.c (Exception_Handler_to_gnu_zcx): Use the address of | |
34032 | others_decl and all_others_decl instead of hardcoded dummy addresses | |
34033 | to represent "others" and "all others" choices, which is cleaner and | |
34034 | more flexible with respect to the possible eh pointer encoding policies. | |
34035 | ||
34036 | * utils.c (init_gigi_decls): Initialize others_decl and all_others_decl. | |
34037 | (process_attributes): Account for the naming change of the "args" | |
34038 | attribute list entry component. | |
34039 | ||
34040 | * decl.c (build_attr_list): Rename into prepend_attributes to allow | |
34041 | cumulating attributes for different entities into a single list. | |
34042 | (gnat_to_gnu_entity): Use prepend_attributes to build the list of | |
34043 | attributes for the current entity and propagate first subtype | |
34044 | attributes to other subtypes. | |
34045 | <E_Procedure>: Attribute arguments are attr->args and not | |
34046 | attr->arg any more. | |
34047 | (build_attr_list): Ditto. Make attr->args a TREE_LIST when there is an | |
34048 | argument provided, as this is what GCC expects. Use NULL_TREE instead | |
34049 | of 0 for trees. | |
34050 | ||
34051 | 2004-11-18 Robert Dewar <dewar@adacore.com> | |
34052 | ||
15cd18b9 | 34053 | * a-stmaco.ads, exp_util.ads, exp_util.adb, i-cpp.ads, i-cpp.adb: |
9716416b AC |
34054 | Minor reformatting througout (including new function specs) |
34055 | Add ??? comments asking for clarification. | |
34056 | ||
34057 | 2004-11-18 Thomas Quinot <quinot@adacore.com> | |
34058 | ||
34059 | * butil.ads, butil.adb, bindgen.adb (Get_Unit_Name_String): Remove | |
34060 | incomplete duplicate implementation of this subprogram from butil. | |
34061 | ||
34062 | 2004-11-18 Thomas Quinot <quinot@adacore.com> | |
34063 | ||
34064 | * exp_dist.adb (Build_RPC_Receiver_Body): New subprogram. This | |
34065 | procedures factors the common processing for building an RPC receiver | |
34066 | for an RCI package or an RACW type. | |
34067 | Stylistic cleanup: change '/= Empty' to 'Present ()'; move body of | |
34068 | Build_Remote_Subprogram_Proxy_Type into proper alphabetical order. | |
34069 | (Get_PCS_Name): New subprogram. Returns the name of the PCS currently | |
34070 | in use. | |
34071 | (Specific_Add_RACW_Features): New subprogram. PCS-specific part of | |
34072 | Add_RACW_Features. | |
34073 | (Specific_Add_RAST_Features): New subprogram. PCS-specific part of | |
34074 | Add_RAST_Features. | |
34075 | (Assign_Subprogram_Identifier): New subprogram. Provision for assigning | |
34076 | distribution subprogram identifiers that are either subprogram numbers | |
34077 | or strings. | |
34078 | (Get_Subprogram_Ids): New subprogram. Retrieve both the numeric and | |
34079 | string distribution identifiers assigned to a given subprogram. | |
34080 | (Get_Subprogram_Id): Reimplement in terms of Get_Subprogram_Ids. | |
34081 | (Add_RAS_Dereference_TSS): Add comments. | |
34082 | (Build_General_Calling_Stubs): Note that the RACW_Type formal parameter | |
34083 | is not referenced yet because it will be used by the PolyORB DSA | |
34084 | implementation. | |
34085 | (Insert_Partition_Check): Remove fossile code. | |
34086 | (First_RCI_Subprogram_Id): Document this constant. | |
34087 | (Add_RAS_Access_TSS): Correct the setting of the Etype of the | |
34088 | RAS_Access TSS. | |
34089 | (Get_Pkg_Name_String): Remove subprogram. Usage occurrences are | |
34090 | replaced with calls to Get_Library_Unit_Name_String. Previously there | |
34091 | were several instances of the same code in different locations in the | |
34092 | compiler; this checkin completes the replacement of all of these | |
34093 | instances with calls to a common subprogram. | |
34094 | Minor reformatting. | |
34095 | ||
34096 | * sem_dist.adb: Remove comment noting that RPC receiver generation | |
34097 | should be disabled for RACWs that implement RASs. | |
34098 | (Process_Partition_Id): Use new subprogram Get_Library_Unit_Name_String. | |
34099 | ||
34100 | * sem_util.ads, sem_util.adb (Has_Stream): New function | |
34101 | (Get_Library_Unit_Name_String): New subprogram to retrieve the fully | |
34102 | qualified name of a library unit into the name buffer. | |
34103 | (Note_Possible_Modification): Generate a reference only | |
34104 | if the context comes from source. | |
34105 | ||
34106 | * snames.ads (PCS_Names): New subtype corresponding to names of | |
34107 | supported implementations of the Partition Communication Subsystem | |
34108 | (PCS) (i.e. the runtime library support modules for the distributed | |
34109 | systems annex). | |
34110 | ||
34111 | 2004-11-18 Robert Dewar <dewar@adacore.com> | |
34112 | Ed Schonberg <schonberg@adacore.com> | |
34113 | ||
34114 | * einfo.ads, einfo.adb: Remove Is_Psected flag, no longer used | |
34115 | (Has_Rep_Pragma): New function | |
34116 | (Has_Attribute_Definition_Clause): New function | |
34117 | (Record_Rep_Pragma): Moved here from sem_ch13.adb | |
34118 | (Get_Rep_Pragma): Remove junk kludge for Stream_Convert pragma | |
34119 | ||
34120 | * sem_ch13.ads, sem_ch13.adb (Record_Rep_Pragma): Moved to einfo.adb | |
34121 | ||
34122 | * exp_prag.adb: (Expand_Pragma_Common_Object): New procedure | |
34123 | (Expand_Pragma_Psect_Object): New procedure | |
34124 | These procedures contain the revised and cleaned up processing for | |
34125 | these two pragmas. This processing was formerly in Sem_Prag, but | |
34126 | is more appropriately moved here. The cleanup involves making sure | |
34127 | that the pragmas are properly attached to the tree, and that no | |
34128 | nodes are improperly shared. | |
34129 | ||
34130 | * sem_prag.adb: Move expansion of Common_Object and Psect_Object | |
34131 | pragmas to Exp_Prag, which is more appropriate. | |
34132 | Attach these two pragmas to the Rep_Item chain Use Rep_Item chain to | |
34133 | check for duplicates Remove use of Is_Psected flag, no longer needed. | |
34134 | Use new Make_String_Literal function with string. | |
34135 | ||
34136 | * exp_attr.adb (Expand_Fpt_Attribute): The floating-point attributes | |
34137 | that are functions return universal values, that have to be converted | |
34138 | to the context type. | |
34139 | Use new Make_String_Literal function with string. | |
34140 | (Get_Stream_Convert_Pragma): New function, replaces the use of | |
34141 | Get_Rep_Pragma, which had to be kludged to work in this case. | |
34142 | ||
34143 | * freeze.adb: Use new Has_Rep_Pragma function | |
34144 | ||
34145 | * exp_intr.adb, exp_ch3.adb, sem_attr.adb: Use new Make_String_Literal | |
34146 | function with string. | |
34147 | Use new Has_Rep_Pragma function. | |
34148 | ||
34149 | * tbuild.ads, tbuild.adb (Make_String_Literal): New function, takes | |
34150 | string argument. | |
34151 | ||
34152 | 2004-11-18 Robert Dewar <dewar@adacore.com> | |
34153 | ||
34154 | * errout.ads, errout.adb: (First_Sloc): New function | |
34155 | ||
34156 | * par-ch5.adb (P_Condition): Check for redundant parens is now a style | |
34157 | check (-gnatyx) instead of being included as a redundant construct | |
34158 | warning. | |
34159 | ||
34160 | * sem_ch6.adb: Change name Style_Check_Subprogram_Order to | |
34161 | Style_Check_Order_Subprograms. | |
34162 | ||
34163 | * style.ads, styleg.ads, styleg.adb, styleg-c.adb, stylesw.ads, | |
34164 | stylesw.adb: Add Style_Check_Xtra_Parens | |
34165 | ||
34166 | * usage.adb: Add line for -gnatyx (check extra parens) | |
34167 | ||
34168 | * vms_data.ads: Add entry for STYLE_CHECKS=XTRA_PARENS => -gnatyx | |
34169 | ||
34170 | 2004-11-18 Ed Schonberg <schonberg@adacore.com> | |
34171 | Robert Dewar <dewar@adacore.com> | |
34172 | ||
34173 | * exp_ch4.adb (Expand_N_Selected_Component): If the component is the | |
34174 | discriminant of a constrained subtype, analyze the copy of the | |
34175 | corresponding constraint, because in some cases it may be only | |
34176 | partially analyzed. | |
34177 | Removes long-lived ??? comments. | |
34178 | ||
34179 | * exp_ch7.adb (Establish_Transient_Scope): Remove complex code that | |
34180 | handled controlled or secondary-stack expressions within the | |
34181 | iteration_scheme of a loop. | |
34182 | ||
34183 | * sem_ch5.adb (Analyze_Iteration_Scheme): Build a block to evaluate | |
34184 | bounds that may contain functions calls, to prevent memory leaks when | |
34185 | the bound contains a call to a function that uses the secondary stack. | |
34186 | (Check_Complex_Bounds): Subsidiary of Analyze_Iteration_Scheme, to | |
34187 | generate temporaries for loop bounds that might contain function calls | |
34188 | that require secondary stack and/or finalization actions. | |
34189 | ||
34190 | * sem_ch4.adb (Analyze_Indexed_Component_Form): If the prefix is a | |
34191 | selected component and the selector is overloadable (not just a | |
34192 | function) treat as function call, Analyze_Call will disambiguate if | |
34193 | necessary. | |
34194 | (Analyze_Selected_Component): Do not generate an actual subtype for the | |
34195 | selected component if expansion is disabled. The actual subtype is only | |
34196 | needed for constraint checks. | |
34197 | (Analyze_Allocator): If restriction No_Streams is set, then do | |
34198 | not permit objects to be declared of a stream type, or of a | |
34199 | composite type containing a stream. | |
34200 | ||
34201 | * restrict.ads: Remove the a-stream entry from Unit_Array, since | |
34202 | No_Streams no longer prohibits with'ing this package. | |
34203 | ||
34204 | * sem_ch3.adb (Build_Derived_Record_Type): If the parent type has | |
34205 | discriminants, but the parent base has unknown discriminants, there is | |
34206 | no discriminant constraint to inherit. Such a discrepancy can arise | |
34207 | when the actual for a formal type with unknown discriminants is a | |
34208 | similar private type whose full view has discriminants. | |
34209 | (Analyze_Object_Declaration): If restriction No_Streams is set, then | |
34210 | do not permit objects to be declared of a stream type, or of a | |
34211 | composite type containing a stream. | |
34212 | ||
34213 | 2004-11-18 Ed Schonberg <schonberg@adacore.com> | |
34214 | ||
34215 | * exp_dbug.ads: Update documentation to reflect simpler encoding for | |
34216 | protected operations. | |
34217 | ||
34218 | * exp_ch9.adb (Build_Selected_Name): Do not include "PT" suffix in | |
34219 | generated name, it complicates decoding in gdb and hinders debugging | |
34220 | of protected operations. | |
34221 | (Build_Barrier_Function_Specification): Set the Needs_Debug_Info | |
34222 | flag for the protected entry barrier function. | |
34223 | (Build_Protected_Entry_Specification): Set the Needs_Debug_Info | |
34224 | flag for the protected entry function. | |
34225 | ||
34226 | 2004-11-18 Nicolas Setton <setton@adacore.com> | |
34227 | ||
34228 | * expect.c: Define __unix__ when __APPLE__ is defined. | |
34229 | ||
34230 | * Makefile.in: Inform the value of the variable GMEM_LIB in the | |
34231 | Darwin-specific section. | |
34232 | ||
34233 | * lang-specs.h: Change the placement of the %1 marker. | |
34234 | Works around the fact that gcc adds -fPIC by default under Darwin. | |
34235 | ||
34236 | 2004-11-18 Ed Schonberg <schonberg@adacore.com> | |
34237 | ||
34238 | * exp_pakd.adb (Convert_To_PAT_Type): After replacing the original | |
34239 | type of the object with the packed array type, set the Analyzed flag | |
34240 | on the object if it is an entity or simple indexed component, to avoid | |
34241 | spurious type errors. | |
34242 | ||
34243 | 2004-11-18 Gary Dismukes <dismukes@adacore.com> | |
34244 | ||
34245 | * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb, gnatlink.adb, | |
34246 | gnatls.adb, gnatxref.adb, gprep.adb: Output the copyright message on a | |
34247 | separate line from the version message. | |
34248 | ||
34249 | 2004-11-18 Ed Falis <falis@adacore.com> | |
34250 | ||
34251 | * init.c (__gnat_map_signal): map SIGSEGV to Storage_Error for AE653 | |
34252 | vthreads. | |
34253 | (init_float): Eliminate initialization of floating point status for | |
34254 | AE653. The instructions have no effect for vThreads. | |
34255 | ||
34256 | 2004-11-18 Vincent Celier <celier@adacore.com> | |
34257 | ||
34258 | * make.adb (Gnatmake): Invoke gnatlink with -shared-libgcc when | |
34259 | gnatbind is invoked with -shared. | |
34260 | ||
34261 | 2004-11-18 Jose Ruiz <ruiz@adacore.com> | |
34262 | ||
34263 | * s-tposen.adb (Lock_Entry): Remove the code for raising Program_Error | |
34264 | for Detect_Blocking which is redundant with the check done within the | |
34265 | procedure Protected_Single_Entry_Call. | |
34266 | (Lock_Read_Only_Entry): Remove the code for raising Program_Error for | |
34267 | Detect_Blocking which is redundant with the check done within the | |
34268 | procedure Protected_Single_Entry_Call. | |
34269 | ||
34270 | 2004-11-18 Vincent Celier <celier@adacore.com> | |
34271 | ||
34272 | * makegpr.adb (Compile): Put the compiling switches (in package | |
34273 | Compiler and on the command line) immediately after "-c", instead of | |
34274 | at the end of the command line invocation of the compiler, when | |
34275 | compiling a non-Ada file. | |
34276 | (Build_Global_Archive): When there is no need to rebuild the archive, | |
34277 | set Global_Archive_Exists, so that the archive is passed to the linker | |
34278 | if one is needed. | |
34279 | ||
34280 | 2004-11-18 Robert Dewar <dewar@adacore.com> | |
34281 | Sergey Rybin <rybin@adacore.com> | |
34282 | ||
15cd18b9 | 34283 | * gnat_ugn.texi: |
9716416b AC |
34284 | Remove extra paren check from list of checks for redundant constructs |
34285 | Add documentation of new -gnatyx style check (check extra parens) | |
34286 | Remove paragraph about gnatelim debug options. | |
34287 | ||
34288 | * gnat_rm.texi: Document that Ada.Streams now forbids creating stream | |
34289 | objects rather than forbidding dependencies on the package Ada.Streams. | |
34290 | ||
34291 | * sinfo.ads: Add ??? note that we should document pragmas passed to | |
34292 | back end. | |
34293 | ||
34294 | * g-expect.ads: Fix a few typos in the comments. | |
34295 | ||
9e637a26 JM |
34296 | 2004-11-09 Joseph S. Myers <joseph@codesourcery.com> |
34297 | ||
34298 | * misc.c (gnat_handle_option): Use %< and %> for quoting in | |
34299 | warning message. | |
34300 | ||
0506cb1c RO |
34301 | 2004-11-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
34302 | ||
34303 | * a-numaux-x86.adb (Tan): Fix fdivp syntax. | |
34304 | ||
426e7d28 AS |
34305 | 2004-11-07 Andreas Schwab <schwab@suse.de> |
34306 | ||
34307 | * Makefile.in (install-gnatlib): Remove spurious hyphen. | |
34308 | ||
8785609e | 34309 | 2004-11-02 Andrew Pinski <pinskia@physics.uc.edu> |
bb342a77 AP |
34310 | |
34311 | PR ada/18228 | |
34312 | * Makefile.in (darwin): Set soext to .dylib. | |
34313 | ||
0ca5fab2 AC |
34314 | 2004-10-26 Vincent Celier <celier@gnat.com> |
34315 | Thomas Quinot <quinot@act-europe.fr> | |
34316 | ||
34317 | * g-socthi-vms.adb, g-socthi-mingw.adb, g-socthi-vxworks.ads: | |
34318 | (C_Writev): Change MSG_Forced_Flags to Constants.MSG_Forced_Flags as | |
34319 | there is no use of GNAT.Sockets.Constants. | |
34320 | Remove remaining pragma Import for C_Write | |
34321 | Remove C_Read and C_Write from internal implementation unit | |
34322 | GNAT.Sockets.Thin, as their usage for sockets is non-portable (using | |
34323 | the read and write functions from the system runtime library is fine | |
34324 | on UNIX but won't work under Windows). | |
34325 | ||
34326 | * g-socket.adb: (Abort_Selector): Use C_Send instead of C_Write. | |
34327 | (Check_Selector): Use C_Recv instead of C_Read. | |
34328 | Selectors are the GNAT.Sockets abstraction to perform a select() | |
34329 | call on a set of descriptors. To allow abortion of an ongoing | |
34330 | select operation, some data is written to a dedicated socket that | |
34331 | is always monitored. | |
34332 | Under Windows, the write and read library functions cannot operate | |
34333 | on sockets, so we need to use send and recv instead, which is portable | |
34334 | across all supported platforms. | |
34335 | ||
34336 | * g-socthi.ads: Remove C_Read and C_Write from internal implementation | |
34337 | unit GNAT.Sockets.Thin, as their usage for sockets is non-portable | |
34338 | (using the read and write functions from the system runtime library is | |
34339 | fine on UNIX but won't work under Windows). | |
34340 | ||
34341 | 2004-10-26 Nicolas Setton <setton@act-europe.fr> | |
34342 | ||
34343 | * mlib-tgt-darwin.adb: New file. | |
34344 | ||
34345 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, | |
34346 | mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, | |
34347 | mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, | |
34348 | mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb (Archive_Indexer_Options): New | |
34349 | subprogram body. | |
34350 | ||
34351 | * Makefile.in: Add support for building shared libraries under Darwin. | |
34352 | (EXTRA_GNATRTL_NONTASKING_OBJS, ppc-vxworks): Add s-vxwexc.o, containing | |
34353 | the low level EH init subprogram to be called from __gnat_initialize. | |
34354 | ||
34355 | * mlib-tgt.ads, mlib-tgt.adb (Archive_Indexer_Options): New subprogram, | |
34356 | indicates which options to pass to the archive indexer. | |
34357 | ||
34358 | * mlib-utl.adb: Add support for calling ranlib with additional | |
34359 | options. This is needed for instance under Mac OS X. | |
34360 | (Ranlib_Options): New global variable, used to store the potential | |
34361 | options to pass to ranlib. | |
34362 | (Ar): Use Ranlib_Options when spawning ranlib. | |
34363 | (Initialize): Set the value of ranlib option. | |
34364 | ||
34365 | 2004-10-26 Olivier Hainque <hainque@act-europe.fr> | |
34366 | ||
34367 | * s-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K | |
34368 | instead of 8K, to reflect the real potential needs for stack-checking | |
34369 | in the ZCX case. | |
34370 | ||
34371 | 2004-10-26 Pascal Obry <obry@gnat.com> | |
34372 | ||
34373 | * s-parame-mingw.adb (Default_Stack_Size): Add some comments. | |
34374 | ||
34375 | * s-taprop-mingw.adb (Create_Task): Set initial stack size to 1024. On | |
34376 | Windows only the initial thread stack size can be set so it is good to | |
34377 | start we a low stack size. | |
34378 | The OS will adjust the size as needed. | |
34379 | ||
34380 | 2004-10-26 Olivier Hainque <hainque@act-europe.fr> | |
34381 | Nicolas Setton <setton@act-europe.fr> | |
34382 | ||
34383 | * expect.c, adaint.c, link.c, sysdep.c (unix sections): Guard with | |
34384 | "__unix__" instead of "unix". | |
34385 | The latter is implicitly defined by gcc3.2 but not by gcc >= 3.4, so the | |
34386 | sections were just mistakenly ignored. The former is | |
34387 | implicitely defined by gcc2.8, gcc3.2 and gcc3.4. | |
34388 | Update #ifdef preprocessor macro to detect the symbol __hpux__ instead | |
34389 | of hpux. This prevents an unwanted definition of the symbol | |
34390 | convert_addresses in adaint.o. | |
34391 | ||
34392 | 2004-10-26 Gary Dismukes <dismukes@gnat.com> | |
34393 | ||
34394 | * a-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#, for | |
34395 | compatibility with type Unwind_Word on 16-bit targets such as AAMP. | |
34396 | ||
34397 | 2004-10-26 Cyrille Comar <comar@act-europe.fr> | |
34398 | ||
34399 | * a-filico.ads, a-filico.adb: fix incorrect header. | |
34400 | ||
34401 | 2004-10-26 Javier Miranda <miranda@gnat.com> | |
34402 | ||
34403 | * a-ststio.ads: Fix typo in identifier | |
34404 | ||
34405 | 2004-10-26 Thomas Quinot <quinot@act-europe.fr> | |
34406 | ||
34407 | * sem_ch4.adb: Minor reformatting. | |
34408 | ||
34409 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34410 | ||
34411 | * checks.adb (Expr_Known_Valid): If floating-point validity checks are | |
34412 | enabled, check the result of unary and binary operations when the | |
34413 | expression is the right-hand side of an assignment. | |
34414 | ||
34415 | 2004-10-26 Vincent Celier <celier@gnat.com> | |
34416 | ||
34417 | * clean.adb (Delete): Do not output warnings when in quiet output and | |
34418 | not in verbose mode. | |
34419 | (Force_Deletions): New Boolean flag, defaulted to False | |
34420 | (Delete): Only delete a file if it is writable, and when | |
34421 | Force_Deletions is True. | |
34422 | (Parse_Cmd_Line): New switch -f: set Force_Deletions to True | |
34423 | (Usage): Line for new switch -f | |
34424 | (Clean_Directory): Use GNAT.OS_Lib.Set_Writable instead of rolling our | |
34425 | own. | |
34426 | ||
34427 | 2004-10-26 Eric Botcazou <ebotcazou@act-europe.fr> | |
34428 | ||
34429 | * decl.c (gnat_to_gnu_field): Use the type of the inner object for a | |
34430 | JM type only if its size matches that of the wrapper. When a size is | |
34431 | prescribed and the field is not aliased, remove the wrapper of a JM | |
34432 | type only if the size is not greater than that of the packed array. | |
34433 | (gnat_to_gnu_entity): Change the extension of packed array wrappers | |
34434 | from LJM to JM. | |
34435 | ||
34436 | 2004-10-26 Geert Bosch <bosch@gnat.com> | |
34437 | ||
34438 | * eval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used. | |
34439 | (Succ): Re-implement using Scaling, Exponent and Ceiling attributes. | |
34440 | (Pred): Implement in terms of Succ. | |
34441 | ||
34442 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34443 | ||
34444 | * exp_aggr.adb (Safe_Component): An aggregate component that is an | |
34445 | unchecked conversion is safe for in-place use if the expression of the | |
34446 | conversion is safe. | |
34447 | (Expand_Array_Aggregate): An aggregate that initializes an allocator may | |
34448 | be expandable in place even if the aggregate does not come from source. | |
34449 | (Convert_Array_Aggr_In_Allocator): New procedure to initialize the | |
34450 | designated object of an allocator in place, rather than building it | |
34451 | first on the stack. The previous scheme forces a full copy of the array, | |
34452 | and may be altogether unsusable if the size of the array is too large | |
34453 | for stack allocation. | |
34454 | ||
34455 | 2004-10-26 Robert Dewar <dewar@gnat.com> | |
34456 | ||
34457 | * exp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array | |
34458 | compares if the component is atomic. | |
34459 | ||
34460 | * exp_ch5.adb (Expand_Assign_Array): Make sure we expand a loop for | |
34461 | array assignment if the component type is atomic. | |
34462 | ||
34463 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34464 | Eric Botcazou <ebotcazou@act-europe.fr> | |
34465 | ||
34466 | * exp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter | |
34467 | is aliased and is a by_reference type, do not pass by copy. | |
34468 | (Expand_N_Function_Call) <Rhs_Of_Assign_Or_Decl>: New function to | |
34469 | detect whether the call is in the right side of an assignment or | |
34470 | the expression of an object declaration. Recurse on component | |
34471 | association within aggregates. | |
34472 | Call it in the condition that determines whether the temporary is | |
34473 | necessary for correct stack-checking. | |
34474 | ||
34475 | 2004-10-26 Thomas Quinot <quinot@act-europe.fr> | |
34476 | ||
34477 | * exp_dist.adb (Build_General_Calling_Stubs): New formal parameter | |
34478 | RACW_Type, used in the PolyORB version. | |
34479 | Rename RCI_Info to RCI_Locator, for consistency between the PolyORB | |
34480 | version and the GARLIC version. | |
34481 | ||
15cd18b9 | 34482 | * snames.ads, snames.adb, s-parint.ads, s-parint.adb: |
0ca5fab2 AC |
34483 | Rename RCI_Info to RCI_Locator for better consistency between the |
34484 | GARLIC and PolyORB versions of the distributed systems annex. | |
34485 | (DSA_Implementation_Name): This enumeration lists the possible | |
34486 | implementations of the Partition Communication Subsystem for the | |
34487 | Distributed Systems Annex (DSA). The three available implementations | |
34488 | are the dummy stub implementation (No_DSA), and two versions based on | |
34489 | two different distribution runtime libraries: GARLIC and PolyORB. Both | |
34490 | the GARLIC PCS and the PolyORB PCS are part of the GLADE distribution | |
34491 | technology. | |
34492 | Change the literal GLADE_DSA to GARLIC_DSA to accurately describe | |
34493 | that organization. | |
34494 | ||
34495 | * rtsfind.ads: Rename RCI_Info to RCI_Locator for better consistency | |
34496 | between the GARLIC and PolyORB versions of the distributed systems | |
34497 | annex. | |
34498 | Remove RE_Unbounded_Reclaim_Pool since it is unused. | |
34499 | ||
34500 | 2004-10-26 Gary Dismukes <dismukes@gnat.com> | |
34501 | ||
34502 | * gnat1drv.adb: Suppress calling the back end when | |
34503 | Frontend_Layout_On_Target is true. | |
34504 | ||
34505 | 2004-10-26 Thomas Quinot <quinot@act-europe.fr> | |
34506 | ||
34507 | * g-os_lib.ads, g-os_lib.adb (Set_Executable, Set_Writable, | |
34508 | Set_Read_Only): New subprograms. | |
34509 | These new routines allow the user to set or unset the Owner execute | |
34510 | and Owner write permission flags on a file. | |
34511 | ||
34512 | * makegpr.adb, mlib.adb, mlib-prj.adb: Use | |
34513 | GNAT.OS_Lib.Set_Executable instead of rolling our own. | |
34514 | ||
34515 | 2004-10-26 Matthew Gingell <gingell@gnat.com> | |
34516 | ||
34517 | * i-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI. | |
34518 | ||
34519 | 2004-10-26 Pascal Obry <obry@gnat.com> | |
34520 | ||
34521 | * init.c (__gnat_error_handler) [Win32]: Instead of trying to read the | |
34522 | memory before the faulting page we properly test the process read | |
34523 | access for this address using appropriate Win32 routine. | |
34524 | (HPUX sections): guard with "__hpux__" instead of "hpux". | |
34525 | ||
34526 | 2004-10-26 Robert Dewar <dewar@gnat.com> | |
34527 | ||
34528 | * lib-xref.adb (Generate_Reference): Don't complain about reference to | |
34529 | entry parameter if pragma Unreferenced set, since we do not properly | |
34530 | handle the case of multiple parameters. | |
34531 | ||
34532 | 2004-10-26 Vincent Celier <celier@gnat.com> | |
34533 | ||
34534 | * prj-env.adb: (Contains_ALI_Files): New Boolean function | |
34535 | (Ada_Objects_Path.Add): For a library project, add to the object path | |
34536 | the library directory only if there is no object directory or if the | |
34537 | library directory contains ALI files. | |
34538 | (Set_Ada_Paths.Add.Recursive_Add): Ditto | |
34539 | ||
34540 | 2004-10-26 Vincent Celier <celier@gnat.com> | |
34541 | ||
34542 | * prj-nmsc.adb (Language_Independent_Check): Do not forbid virtual | |
34543 | extension of library projects. | |
34544 | ||
34545 | * prj-part.adb: If env var ADA_PROJECT_PATH is not defined, project | |
34546 | path defaults to ".:<prefix>/lib/gnat". | |
34547 | (Parse): For an extending all project, allow direct import of a project | |
34548 | that is virtually extended. | |
34549 | ||
34550 | * prj-proc.adb (Imported_Or_Extended_Project_From): If a project with | |
34551 | the specified name is directly imported, return its ID. Otherwise, if | |
34552 | an extension of this project is imported, return the ID of the | |
34553 | extension. | |
34554 | ||
34555 | 2004-10-26 Robert Dewar <dewar@gnat.com> | |
34556 | ||
34557 | * s-arit64.adb: (Le3): New function, used by Scaled_Divide | |
34558 | (Sub3): New procedure, used by Scaled_Divide | |
34559 | (Scaled_Divide): Substantial rewrite, avoid duplicated code, and also | |
34560 | correct more than one instance of failure to propagate carries | |
34561 | correctly. | |
34562 | (Double_Divide): Handle overflow case of largest negative number | |
34563 | divided by minus one. | |
34564 | ||
34565 | * s-arit64.ads (Double_Divide): Document that overflow can occur in | |
34566 | the case of a quotient value out of range. | |
34567 | Fix comments. | |
34568 | ||
34569 | 2004-10-26 Robert Dewar <dewar@gnat.com> | |
34570 | ||
34571 | * s-bitops.adb (Bit_Eq): Remove redundant check. | |
34572 | ||
34573 | * s-bitops.ads: Minor comment updates | |
34574 | Change some occurrences of Address to System.Address | |
34575 | ||
34576 | * s-carsi8.ads: Fix minor cut-and-paste error in comments | |
34577 | ||
34578 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34579 | ||
34580 | * sem_attr.adb (Resolve_Attribute, case 'Access): Apply proper | |
34581 | accessibility check to prefix that is a protected operation. | |
34582 | ||
34583 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34584 | ||
34585 | * sem_ch10.adb (Optional_Subunit): If file of expected subunit is | |
34586 | empty, post message on stub. | |
34587 | ||
34588 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34589 | Javier Miranda <miranda@gnat.com> | |
34590 | ||
34591 | * sem_ch12.adb (In_Main_Context): Predicate to determine whether the | |
34592 | current instance appears within a unit that is directly in the context | |
34593 | of the main unit. | |
34594 | Used to determine whether the body of the instance should be analyzed | |
34595 | immediately after its spec, to make its subprogram bodies available | |
34596 | for front-end inlining. | |
34597 | (Analyze_Formal_Array_Type): Cleanup condition that checks that range | |
34598 | constraint is not allowed on the component type (AARM 12.5.3(3)) | |
34599 | ||
34600 | 2004-10-26 Cyrille Comar <comar@act-europe.fr> | |
34601 | ||
34602 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case | |
34603 | 'Storage_Pool): enhance, document & limit detection of non-sharable | |
34604 | internal pools. | |
34605 | ||
34606 | * impunit.adb: Make System.Pool_Global and System.Pool_Local visible. | |
34607 | ||
34608 | * s-pooglo.ads: Add more documentation now that this pool is properly | |
34609 | documented. | |
34610 | ||
34611 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34612 | ||
34613 | * sem_ch3.adb (Complete_Private_Subtype): If the full view is a task | |
34614 | or protected type with discriminants, do not constrain the | |
34615 | corresponding record type if the subtype declaration has no | |
34616 | discriminant constraints. This can be the case in source code, or in | |
34617 | the subtype declaration created to rename an actual type within an | |
34618 | instantiation. | |
34619 | ||
34620 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34621 | ||
34622 | * sem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a | |
34623 | different kind of stub (possibly wrong name for file), do not check | |
34624 | for conformance. | |
34625 | (Uses_Secondary_Stack): New subsidiary to Build_Body_To_Inline. If body | |
34626 | includes call to some function that returns an unconstrained type, do | |
34627 | not inline. | |
34628 | ||
34629 | 2004-10-26 Ed Schonberg <schonberg@gnat.com> | |
34630 | ||
34631 | * sem_elab.adb (Check_Elab_Call): Do not check a call that does not | |
34632 | appear in the code for the main unit. Dependencies among units in the | |
34633 | context of the main unit are established when those other units are | |
34634 | compiled. Otherwise spurious elaboration constraints can generate | |
34635 | incorrect elaboration circularities. | |
34636 | ||
34637 | 2004-10-26 Thomas Quinot <quinot@act-europe.fr> | |
34638 | Ed Schonberg <schonberg@gnat.com> | |
34639 | ||
34640 | * sem_util.adb (Is_Aliased_View): Defend against the case where this | |
34641 | subprogram is called with a parameter that is not an object name. This | |
34642 | situation arises for some cases of illegal code, which is diagnosed | |
34643 | later, and in this case it is wrong to call Is_Aliased, as that might | |
34644 | cause a compiler crash. | |
34645 | (Explain_Limited_Type): Refine previous fix to include | |
34646 | inherited components of derived types, to provide complete information. | |
34647 | ||
34648 | * exp_ch9.adb (Set_Privals): Set the Ekind of the actual object that | |
34649 | is the prival for a protected object. | |
34650 | It is necessary to mark this entity as a variable, in addition to | |
34651 | flagging it as Aliased, because Sem_Util.Is_Aliased_View has been | |
34652 | modified to avoid checking the Aliased flag on entities that are not | |
34653 | objects. (Checking that flag for non-objects is erroneous and could | |
34654 | lead to a compiler crash). | |
34655 | ||
34656 | 2004-10-26 Robert Dewar <dewar@gnat.com> | |
34657 | ||
34658 | * s-fatgen.adb (Pred): Fix redundant test for X > 0.0, since if | |
34659 | X_Frac = 0.5, then we know that the number X must be positive. | |
34660 | (Succ): Remove the same redundant test, and also fix the primary test | |
34661 | to test for X_Frac = -0.5 (used to be 0.5) which is clearly wrong. | |
34662 | Minor reformatting | |
34663 | (Decompose): Add fuller comments to spec | |
34664 | ||
34665 | 2004-10-26 Pascal Obry <obry@gnat.com> | |
34666 | ||
34667 | * tracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr | |
34668 | validity (process must have read access). Set to 0 in all other cases. | |
34669 | (STOP_FRAME): Now check for ptr validity to avoid a segmentation | |
34670 | violation on Win32. | |
34671 | (VALID_STACK_FRAME): Check for ptr validity on Win32 to avoid a | |
34672 | segmentation violation. | |
34673 | ||
34674 | 2004-10-26 Eric Botcazou <ebotcazou@act-europe.fr> | |
34675 | ||
34676 | * trans.c (call_to_gnu): For an (in-)out parameter passed by reference | |
34677 | whose type is a constructed subtype of an aliased object with an | |
34678 | unconstrained nominal subtype, convert the actual to the constructed | |
34679 | subtype before taking its address. | |
34680 | ||
34681 | 2004-10-26 Vincent Celier <celier@gnat.com> | |
34682 | ||
34683 | * a-dirval.ads, a-dirval.adb, a-dirval-vms.adb, a-dirval-mingw.adb | |
34684 | (Is_Path_Name_Case_Sensitive): New function | |
34685 | ||
34686 | * a-direct.adb (To_Lower_If_Case_Insensitive): New procedure | |
34687 | (Base_Name, Simple_Name, Current_Directory, Compose, | |
34688 | Containing_Directory, Full_Name): Call To_Lower_If_Case_Insensitive on | |
34689 | the result. | |
34690 | ||
34691 | 2004-10-26 Cyrille Comar <comar@act-europe.fr> | |
34692 | Vasiliy Fofanov <fofanov@act-europe.fr> | |
34693 | Vincent Celier <celier@gnat.com> | |
34694 | ||
34695 | * gnat_ugn.texi: Generalize "finding memory problems" section into a | |
34696 | "memory management issues" section and document some of the useful | |
34697 | memory pools provided as part of the GNAT library. | |
34698 | Remove "virtual" from declaration of A::method2 in | |
34699 | the simple example of Ada/C++ mixed system. | |
34700 | Library Projects may be virtually extended: their virtual extensions | |
34701 | are not Library Projects. | |
34702 | Added section on extending project hierarchies. | |
34703 | ||
d65c6710 | 34704 | 2004-10-19 Aaron W. LaFramboise <aaronavay62@aaronwl.com> |
aa75e737 AL |
34705 | |
34706 | * adaint.c (__gnat_get_libraries_from_registry): Cast value | |
34707 | to LPBYTE. | |
34708 | (__gnat_portable_spawn): Remove const. | |
34709 | ||
34710 | * mingw32.h (MAXPATHLEN): Check for previous definition. | |
34711 | ||
95e19580 MK |
34712 | 2004-10-17 Matthias Klose <doko@debian.org> |
34713 | ||
34714 | * gnatvsn.ads: Set gnat library version to 4.0. | |
34715 | ||
88a6ecb6 VC |
34716 | 2004-10-05 Vincent Celier <celier@gnat.com> |
34717 | ||
a1286ef5 | 34718 | * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Options_2 |
88a6ecb6 | 34719 | |
9e94c78f | 34720 | 2004-10-04 Laurent Guerby <laurent@guerby.net> |
110aba14 LG |
34721 | |
34722 | PR ada/15156 | |
34723 | * Makefile.in: Define and use RANLIB_FLAGS. | |
88a6ecb6 | 34724 | |
09552763 PO |
34725 | 2004-10-04 Pascal Obry <obry@gnat.com> |
34726 | ||
34727 | * tracebak.c: Always set LOWEST_ADDR to 0 on Win32 (as done on all | |
34728 | other x86 platforms). | |
34729 | ||
a8e490b7 OH |
34730 | 2004-10-04 Olivier Hainque <hainque@act-europe.fr> |
34731 | ||
34732 | * s-tassta.adb (Task_Wrapper): Make it Convention C, which makes sense | |
34733 | in general and triggers stack alignment adjustment for thread entry | |
34734 | points on targets where this is necessary. | |
34735 | ||
71c10a83 BB |
34736 | 2004-10-04 Bernard Banner <banner@gnat.com> |
34737 | ||
34738 | PR ada/13897 | |
71c10a83 BB |
34739 | * Makefile.in: Add section for powerpc linux |
34740 | Add variant i-vxwork-x86.ads | |
34741 | ||
34742 | * i-vxwork-x86.ads, system-linux-ppc.ads: New files. | |
34743 | ||
9a03df55 OH |
34744 | 2004-10-04 Olivier Hainque <hainque@act-europe.fr> |
34745 | ||
34746 | * init.c (__gnat_initialize): Call an Ada subprogram to perform the | |
34747 | table registration calls when need be. Ensures no reference to the crt | |
34748 | ctors symbol are issued in the SJLJ case, which avoids possible | |
34749 | undefined symbol errors in the case of modules to be statically linked | |
34750 | with the kernel. | |
34751 | ||
28d6470f JM |
34752 | 2004-10-04 Javier Miranda <miranda@gnat.com> |
34753 | ||
34754 | * sem_ch4.adb (Try_Object_Operation): Reformat the code to expand | |
34755 | in-line the code corresponding to subprogram Analyze_Actuals. In | |
34756 | addition, analyze the actuals only in case of subprogram call. | |
34757 | ||
06237875 EF |
34758 | 2004-10-04 Ed Falis <falis@gnat.com> |
34759 | ||
34760 | * s-vxwork-x86.ads: (FP_CONTEXT): Defined to be correct size | |
34761 | ||
259d6c3a SR |
34762 | 2004-10-04 Sergey Rybin <rybin@act-europe.fr> |
34763 | ||
34764 | * g-dirope.ads (Base_Name): Clarify the meaning of the Suffix parameter | |
34765 | in the documentation. | |
34766 | ||
6f21ed26 RD |
34767 | 2004-10-04 Robert Dewar <dewar@gnat.com> |
34768 | ||
34769 | * sem_ch5.adb (Unblocked_Exit_Count): Now used for blocks as well as | |
34770 | IF and CASE. | |
34771 | (Analyze_Block_Statement): Add circuitry to detect following dead code | |
34772 | (Check_Unreachable_Code): Handle case of block exit | |
34773 | ||
4cded177 RD |
34774 | 2004-10-04 Robert Dewar <dewar@gnat.com> |
34775 | ||
34776 | * g-spipat.adb: (XMatch): Avoid warning for Logic_Error call | |
34777 | (XMatchD): Avoid warning for Logic_Error call | |
34778 | ||
c6a60aa1 RD |
34779 | 2004-10-04 Robert Dewar <dewar@gnat.com> |
34780 | ||
34781 | * exp_ch4.adb (Is_Procedure_Actual): Correct so that this does not | |
34782 | consider expressions buried within a procedure actual to be an actual. | |
34783 | This caused some blowups with uses of packed slices within a procedure | |
34784 | actual. | |
34785 | ||
1fdebfe5 RD |
34786 | 2004-10-04 Robert Dewar <dewar@gnat.com> |
34787 | ||
34788 | * exp_ch3.adb (Needs_Simple_Initialization): Modular packed arrays no | |
34789 | longer need to be initialized to zero. | |
34790 | (Get_Simple_Init_Val): Modular packed arrays no longer need to be | |
34791 | initialized to zero. | |
34792 | ||
34793 | * checks.adb (Expr_Known_Valid): Packed arrays are now always | |
34794 | considered valid, even if the representation is modular. That's correct | |
34795 | now that we no longer initialize packed modular arrays to zero. | |
34796 | ||
34797 | * exp_dbug.ads: Clarify documentation on handling of PAD and JM | |
34798 | suffixes. These are now documented as the only cases in which the | |
34799 | debugger ignores outer records. | |
34800 | Previously, the spec allowed arbitrary suffixes for this purpose. | |
34801 | Change name of LJM to JM for packed array pad records | |
34802 | Create separate section on packed array handling, and add a whole new | |
34803 | set of comments to this section describing the situation with packed | |
34804 | modular types and justification requirements depending on endianness. | |
34805 | ||
cd91501c RD |
34806 | 2004-10-04 Robert Dewar <dewar@gnat.com> |
34807 | ||
34808 | * a-except.adb: Add a comment for last change | |
34809 | ||
34810 | * einfo.ads: Minor spelling correction in comment | |
34811 | ||
34812 | * exp_pakd.adb, gnatdll.adb, prj-attr.ads: Minor reformatting | |
34813 | ||
34814 | * sem_ch11.adb: Fix a case of using | instead of \ for continuation | |
34815 | messages. | |
34816 | ||
34817 | * sem_util.ads: Minor comment update | |
34818 | ||
c71c53a8 ES |
34819 | 2004-10-04 Ed Schonberg <schonberg@gnat.com> |
34820 | ||
34821 | * sem_ch6.adb (Analyze_Subprogram_Body): Do not treat Inline as | |
34822 | Inline_Always when in Configurable_Run_Time mode. | |
34823 | ||
34824 | * sem_prag.adb (Process_Convention): If entity is an inherited | |
34825 | subprogram, apply convention to parent subprogram if in same scope. | |
34826 | (Analyze_Pragma, case Inline): Do not treat Inline as Inline_Always | |
34827 | when in Configurable_Run_Time mode. | |
34828 | ||
71d9e9f2 ES |
34829 | 2004-10-04 Ed Schonberg <schonberg@gnat.com> |
34830 | ||
34831 | * sem_ch3.adb (Build_Derived_Record_Type): Set First/Last entity of | |
34832 | class_wide type after component list has been inherited. | |
34833 | ||
0b525bee ES |
34834 | 2004-10-04 Ed Schonberg <schonberg@gnat.com> |
34835 | ||
34836 | * sem_ch12.adb (Check_Generic_Actuals): New predicate | |
34837 | Denotes_Previous_Actual, to handle properly the case of a private | |
34838 | actual that is also the component type of a subsequent array actual. | |
34839 | The visibility status of the first actual is not affected when the | |
34840 | second is installed. | |
34841 | (Process_Nested_Formal): Subsidiary of Instantiate_Formal_Package, to | |
34842 | make fully recursive the treatment of formals of packages declared | |
34843 | with a box. | |
34844 | (Restore_Nested_Formal): Subsidiary of Restore_Private_Views, to undo | |
34845 | the above on exit from an instantiation. | |
34846 | (Denotes_Formal_Package): When called from Restore_Private_Views, ignore | |
34847 | current instantiation which is now complete. | |
34848 | (Analyze_Package_Instantiation): No instantiated body is needed if the | |
34849 | main unit is generic. Efficient, and avoid anomalies when a instance | |
34850 | appears in a package accessed through rtsfind. | |
34851 | ||
27ad9660 ES |
34852 | 2004-10-04 Ed Schonberg <schonberg@gnat.com> |
34853 | ||
34854 | * exp_ch6.adb (Expand_N_Function_Call): If stack checking is enabled, | |
34855 | do not generate a declaration for a temporary if the call is part of a | |
34856 | library-level instantiation. | |
34857 | ||
1c6c6771 ES |
34858 | 2004-10-04 Ed Schonberg <schonberg@gnat.com> |
34859 | ||
34860 | * sem_util.adb (Explain_Limited_Type): Ignore internal components when | |
34861 | searching for a limited component to flag. | |
34862 | ||
34863 | * exp_attr.adb (Freeze_Stream_Subprogram): Subsidiary procedure to | |
34864 | expansion of Input, to account for the fact that the implicit call | |
34865 | generated by the attribute reference must freeze the user-defined | |
34866 | stream subprogram. This is only relevant to 'Input, because it can | |
34867 | appear in an object declaration, prior to the body of the subprogram. | |
34868 | ||
34869 | * sem_ch13.adb (Rep_Item_Too_Late): Make the error non-serious, so that | |
34870 | expansion can proceed and further errors uncovered. | |
34871 | (Minor clean up): Fix cases of using | instead of \ for continuation | |
34872 | messages. | |
34873 | ||
8005f3e5 RK |
34874 | 2004-10-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
34875 | ||
34876 | * cuintp.c, decl.c, utils2.c: Use gcc_assert and gcc_unreachable. | |
34877 | ||
34878 | * trans.c (assoc_to_constructor): Fix unused var warning if no checking. | |
34879 | (gnat_gimplify_expr, case ADDR_EXPR): Fix error in last change. | |
34880 | Use gcc_assert and gcc_unreachable. | |
34881 | ||
34882 | * decl.c (gnat_to_gnu_entity, case object): Check and process a | |
34883 | specified alignment before validating size. | |
34884 | (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Create a | |
34885 | stripped-down declaration for the type of the inner field when making | |
34886 | a JM type. | |
34887 | ||
34888 | * utils.c (finish_record_type): Do not compute the size in units | |
34889 | incrementally. Instead compute it once for the rep clause case. | |
34890 | Use gcc_assert and gcc_unreachable. | |
34891 | ||
6a294a29 VC |
34892 | 2004-10-04 Vincent Celier <celier@gnat.com> |
34893 | ||
34894 | * a-dirval-mingw.adb (Invalid_Character): Add '\' as invalid character | |
34895 | in file name. | |
34896 | (Is_Valid_Path_Name): Take '/' as a directory separator. | |
34897 | ||
9a080ea3 VC |
34898 | 2004-10-04 Vincent Celier <celier@gnat.com> |
34899 | ||
34900 | * prj-part.adb (Parse_Single_Project): Call Is_Extending_All | |
34901 | (Extended_Project) only if Extended_Project is defined, to avoid | |
34902 | assertion error. | |
34903 | (Post_Parse_Context_Clause): Always call Set_Path_Name_Of with a | |
34904 | resolved path. | |
34905 | (Parse_Single_Project): Ditto. | |
34906 | ||
34907 | * prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not call | |
34908 | Add_To_Project_Path for virtual projects. | |
34909 | ||
51004cb5 VC |
34910 | 2004-10-04 Vincent Celier <celier@gnat.com> |
34911 | ||
15cd18b9 SS |
34912 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, |
34913 | mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, | |
34914 | mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb, | |
51004cb5 VC |
34915 | mlib-tgt-vxworks.adb, mlib-tgt.adb (Build_Dynamic_Library): New |
34916 | parameter Options_2. | |
34917 | ||
34918 | * mlib-prj.ads, mlib-prj.adb (Build_Library): Call | |
34919 | Build_Dynamic_Library with an empty Options_2. | |
34920 | ||
34921 | * mlib-utl.ads, mlib-utl.adb (Gcc): Parameter Options_2 has no | |
34922 | default anymore. | |
34923 | ||
34924 | * makegpr.adb (Get_Imported_Directories.add): Remove trailing | |
34925 | directory separator, if any. | |
34926 | (Gprmake): Do not allow mains on the command line for library projects. | |
34927 | Do not attempt to link when the project is a library project. | |
34928 | (Library_Opts): New table to store Library_Options. | |
34929 | (Build_Library): If Library_Options is specified, pass these options | |
34930 | when building a shared library. | |
34931 | ||
3b37ffbf JR |
34932 | 2004-10-04 Jose Ruiz <ruiz@act-europe.fr> |
34933 | ||
34934 | * s-tposen.adb (Service_Entry): The object must be always unlocked at | |
34935 | the end of this procedure now that the unlock operation was inserted | |
34936 | by the expander. | |
34937 | ||
b23e28d5 JR |
34938 | 2004-10-04 Jose Ruiz <ruiz@act-europe.fr> |
34939 | ||
34940 | * targparm.ads, targparm.adb (Targparm_Tags): Add PAS value | |
34941 | corresponding to the Preallocated_Stacks flags in System. | |
34942 | (Get_Target_Parameters): Including the processing for | |
34943 | Preallocated_Stacks. | |
34944 | ||
15cd18b9 SS |
34945 | * system.ads, system-vxworks-x86.ads, system-darwin-ppc.ads, |
34946 | system-vms_64.ads, system-unixware.ads, system-linux-ia64.ads, | |
34947 | system-freebsd-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads, | |
34948 | system-linux-x86_64.ads, system-tru64.ads, system-aix.ads, | |
34949 | system-vxworks-sparcv9.ads, system-vxworks-xscale.ads, | |
34950 | system-solaris-x86.ads, system-irix-o32.ads, system-irix-n32.ads, | |
34951 | system-hpux.ads, system-vxworks-m68k.ads, system-linux-x86.ads, | |
34952 | system-vxworks-mips.ads, system-os2.ads, system-interix.ads, | |
34953 | system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads, | |
34954 | system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads, | |
b23e28d5 JR |
34955 | system-vxworks-alpha.ads: Add the flag Preallocated_Stacks, that is |
34956 | used to signal whether the compiler creates the required stacks and | |
34957 | descriptors for the different tasks (when True) or it is done by the | |
34958 | underlying operating system at run time (when False). | |
34959 | It is initially set to False in all targets. | |
34960 | ||
34961 | * exp_ch9.adb (Expand_N_Task_Type_Declaration): Create the task stack | |
34962 | if it is supported by the target. | |
34963 | (Make_Task_Create_Call): Pass the stack address if it has been | |
34964 | previously created. Otherwise pass a Null_Address. | |
34965 | ||
34966 | * snames.adb: Add _stack. | |
34967 | ||
34968 | * snames.ads: Add Name_uStack. Required to allow the expander to | |
34969 | statically allocated task stacks. | |
34970 | ||
34971 | * s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Add | |
34972 | Stack_Address argument. | |
34973 | Check that its value is equal to Null_Address because this target does | |
34974 | not support the static stack allocation. | |
34975 | ||
6fd459bb TQ |
34976 | 2004-10-04 Thomas Quinot <quinot@act-europe.fr> |
34977 | ||
34978 | * usage.adb: Change "pragma inline" to "pragma Inline" in information | |
34979 | and error messages | |
34980 | ||
5885facb TQ |
34981 | 2004-10-04 Thomas Quinot <quinot@act-europe.fr> |
34982 | ||
34983 | * exp_dist.adb: Split declaration of asynchronous flag out of | |
34984 | Add_RACW_Read_Attribute. | |
34985 | Minor reformatting for better alignment with PolyORB version. | |
34986 | Store the entity for the asynchronous flag of an RACW, rather than the | |
34987 | expression, in the asynchronous flags table. This will allow this flag | |
34988 | to be used in other subprograms beside Add_RACW_Read_Attribute. | |
34989 | ||
d6c7ed50 TQ |
34990 | 2004-10-04 Thomas Quinot <quinot@act-europe.fr> |
34991 | ||
34992 | * g-socket.ads, g-socket.adb, g-socthi.adb, socket.c, | |
15cd18b9 SS |
34993 | g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads, |
34994 | g-soccon-interix.ads, g-soccon-solaris.ads, g-soccon-vms.adb, | |
34995 | g-soccon-mingw.ads, g-soccon-vxworks.ads, g-soccon-freebsd.ads, | |
d6c7ed50 TQ |
34996 | g-soccon.ads, g-soccon-unixware.ads, g-soccon-tru64.ads: Add new |
34997 | sockets constant MSG_NOSIGNAL (Linux-specific). | |
34998 | Add new sockets constant MSG_Forced_Flags, list of flags to be set on | |
34999 | all Send operations. | |
35000 | For Linux, set MSG_NOSIGNAL on all send operations to prevent them | |
35001 | from trigerring SIGPIPE. | |
35002 | Rename components to avoid clash with Ada 2005 possible reserved | |
35003 | word 'interface'. | |
35004 | (Check_Selector): When the select system call returns with an error | |
35005 | condition, propagate Socket_Error to the caller. | |
35006 | ||
0f0377f6 JH |
35007 | 2004-10-01 Jan Hubicka <jh@suse.cz> |
35008 | ||
35009 | * misc.c (gnat_expand_body): Update call of tree_rest_of_compilation. | |
35010 | ||
2c9beb8a RD |
35011 | 2004-09-23 Robert Dewar <dewar@gnat.com> |
35012 | ||
35013 | PR ada/17540 | |
2c9beb8a RD |
35014 | * sem_prag.adb (Process_Import_Or_Interface): Don't set Is_Public here, |
35015 | instead do this at freeze time (we won't do it if there is an address | |
35016 | clause). | |
35017 | Change "pragma inline" to "pragma Inline" in information and error | |
35018 | messages. | |
35019 | Minor reformatting. | |
35020 | ||
35021 | * freeze.adb (Check_Address_Clause): Remove previous change, not the | |
35022 | right way of doing things after all. | |
35023 | (Freeze_Entity): For object, set Is_Public for imported entities | |
35024 | unless there is an address clause present. | |
35025 | ||
2494e673 OH |
35026 | 2004-09-21 Olivier Hainque <hainque@act-europe.fr> |
35027 | ||
35028 | * decl.c (gnat_to_gnu_entity) <E_General_Access_Type>: Check for a | |
35029 | dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. This | |
35030 | ensures proper handling of types with rep clauses, which might have | |
35031 | their TYPE_SIZE set already. | |
35032 | ||
910d20fc RD |
35033 | 2004-09-21 Robert Dewar <dewar@gnat.com> |
35034 | ||
35035 | * decl.c (gnat_to_gnu_type, case E_Modular_Integer_Type): Wrap modular | |
35036 | packed array types in both little- and big-endian cases. This change | |
35037 | ensures that we no longer count on the unused bits being initialized | |
35038 | for such types (and in particular ensures that equality testing will | |
35039 | only read the relevant bits). | |
35040 | Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P | |
35041 | These changes mean that we no longer need to initialize small packed | |
35042 | arrays. | |
35043 | (gnat_to_gnu_entity) <E_Record_Subtype>: Apply the same | |
35044 | optimization to an LJM field as to its parent field. | |
35045 | ||
35046 | * ada-tree.h, trans.c, utils.c, utils2.c: | |
35047 | Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P | |
35048 | ||
8f235343 JH |
35049 | 2004-09-20 Jan Hubicka <jh@suse.cz> |
35050 | ||
35051 | * utils.c (gnat_finalize): Remove. | |
35052 | (end_subprog_body): Directly call cgraph_finalize_function; | |
35053 | do not lower the nested functions. | |
35054 | ||
bb9be5eb RD |
35055 | 2004-09-20 Robert Dewar <dewar@gnat.com> |
35056 | ||
35057 | PR ada/17540 | |
bb9be5eb RD |
35058 | * freeze.adb (Check_Address_Clause): Reset Is_Imported and Is_Public |
35059 | if an address clause is present, since that means that the Import | |
35060 | should be ignored. | |
35061 | ||
796ef2e2 AC |
35062 | 2004-09-20 Arnaud Charlet <charlet@act-europe.fr> |
35063 | ||
35064 | * 5tsystem.ads: Removed, no longer used. | |
35065 | ||
6615c446 JO |
35066 | 2004-09-17 Jeffrey D. Oldham <oldham@codesourcery.com> |
35067 | Zack Weinberg <zack@codesourcery.com> | |
35068 | ||
35069 | * ada-tree.def: Use tree_code_class enumeration constants | |
35070 | instead of code letters. | |
35071 | * ada-tree.h, decl.c, misc.c, trans.c, utils.c, utils2.c: | |
35072 | Update for new tree-class enumeration constants. | |
35073 | ||
93ed8a01 VC |
35074 | 2004-09-17 Vincent Celier <celier@gnat.com> |
35075 | ||
35076 | * prj-attr-pm.ads, prj-attr-pm.adb: New files, to split some private | |
35077 | capabilities of the general project manager. | |
35078 | ||
c885d7a1 AC |
35079 | 2004-09-09 Vincent Celier <celier@gnat.com> |
35080 | ||
35081 | * a-direct.ads: Add pragma Ada_05 | |
35082 | (Directory_Entry_Type): Give default value to component Kind to avoid | |
35083 | not initialized warnings. | |
35084 | ||
35085 | * a-direct.adb (Current_Directory): Remove directory separator at the | |
35086 | end. | |
35087 | (Delete_Directory, Delete_Tree): Raise Name_Error if Directory is not | |
35088 | an existing directory. | |
35089 | (Fetch_Next_Entry): Give default value to variable Kind to avoid warning | |
35090 | (Size (String)): Function C_Size returns Long_Integer, not File_Size. | |
35091 | Convert the result to File_Size. | |
35092 | ||
35093 | * prj.ads: (Project_Error): New exception | |
35094 | ||
35095 | * prj-attr.adb: Except in procedure Initialize, Fail comes from | |
35096 | Prj.Com, not from Osint. | |
35097 | (Attrs, Package_Attributes): Tables moved to private part of spec | |
35098 | (Add_Attribute, Add_Unknown_Package): Moved to new child package | |
35099 | Prj.Attr.PM. | |
35100 | (Register_New_Package (Name, Attributes), Register_New_Attribute): Raise | |
35101 | Prj.Project_Error after call to Fail. | |
35102 | (Register_New_Package (Name, Id)): Set Id to Empty_Package after calling | |
35103 | Fail. Check that package name is not already in use. | |
35104 | ||
35105 | * prj-attr.ads: Comment updates to indicate that all subprograms may be | |
35106 | used by tools, not only by the project manager, and to indicate that | |
35107 | exception Prj.Prj_Error may be raised in case of problem. | |
35108 | (Add_Unknown_Package, Add_Attribute): Moved to new child package | |
35109 | Prj.Attr.PM. | |
35110 | (Attrs, Package_Attributes): Table instantiations moved from the body to | |
35111 | the private part to be accessible from Prj.Attr.PM body. | |
35112 | ||
35113 | * prj-dect.adb (Parse_Package_Declaration): Call Add_Unknown_Package | |
35114 | from new package Prj.Attr.PM. | |
35115 | (Parse_Attribute_Declaration): Call Add_Attribute from new package | |
35116 | Prj.Attr.PM. | |
35117 | ||
35118 | * Makefile.in: Add prj-attr-pm.o to gnatmake object list | |
35119 | ||
35120 | * gnatbind.adb (Gnatbind): Correct warning message (Elaboration_Check | |
35121 | instead of Elaboration_Checks). | |
35122 | ||
35123 | * a-calend.adb: Minor reformatting | |
35124 | ||
35125 | 2004-09-09 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
35126 | ||
35127 | * gigi.h (maybe_pad_type): New declaration. | |
35128 | (create_subprog_type): New arg RETURNS_BY_TARGET_PTR. | |
35129 | ||
35130 | * ada-tree.h: (TYPE_RETURNS_BY_TARGET_PTR_P): New macro. | |
35131 | ||
35132 | * cuintp.c: Convert to use buildN. | |
35133 | ||
35134 | * decl.c (maybe_pad_type): No longer static. | |
35135 | (gnat_to_gnu_entity, case E_Function): Handle case of returning by | |
35136 | target pointer. | |
35137 | Convert to use buildN. | |
35138 | ||
35139 | * trans.c (call_to_gnu): Add arg GNU_TARGET; support | |
35140 | TYPE_RETURNS_BY_TARGET_PTR_P. All callers changed. | |
35141 | (gnat_to_gnu, case N_Assignment_Statement): Call call_to_gnu if call on | |
35142 | RHS. | |
35143 | (gnat_to_gnu, case N_Return): Handle TYPE_RETURN_BY_TARGET_PTR_P. | |
35144 | (gnat_gimplify_expr, case ADDR_EXPR): New case. | |
35145 | Convert to use buildN. | |
35146 | ||
35147 | * utils2.c (gnat_build_constructor): Also set TREE_INVARIANT and | |
35148 | TREE_READONLY for const. | |
35149 | Convert to use buildN. | |
35150 | ||
35151 | * utils.c (create_subprog_type): New operand RETURNS_BY_TARGET_PTR. | |
35152 | (create_var_decl): Refine when TREE_STATIC is set. | |
35153 | Convert to use buildN. | |
35154 | ||
35155 | 2004-09-09 Gary Dismukes <dismukes@gnat.com> | |
35156 | ||
35157 | * gnat_ugn.texi: Delete text relating to checking of ali and object | |
35158 | consistency. | |
35159 | ||
35160 | * a-except.adb (Rcheck_*): Add pragmas No_Return for each of these | |
35161 | routines. | |
35162 | ||
35163 | 2004-09-09 Jose Ruiz <ruiz@act-europe.fr> | |
35164 | ||
35165 | * gnat_ugn.texi: Add Detect_Blocking to the list of configuration | |
35166 | pragmas recognized by GNAT. | |
35167 | ||
35168 | * gnat_rm.texi: Document pragma Detect_Blocking. | |
35169 | ||
35170 | * s-solita.adb (Timed_Delay_T): When pragma Detect_Blocking is active, | |
35171 | raise Program_Error if called from a protected operation. | |
35172 | ||
35173 | * s-taprob.adb (Lock): When pragma Detect_Blocking is active increase | |
35174 | the protected action nesting level. | |
35175 | (Lock_Read_Only): When pragma Detect_Blocking is active increase the | |
35176 | protected action nesting level. | |
35177 | (Unlock): When pragma Detect_Blocking is active decrease the protected | |
35178 | action nesting level. | |
35179 | ||
35180 | * s-taskin.adb (Initialize_ATCB): Initialize to 0 the | |
35181 | Protected_Action_Nesting. | |
35182 | ||
35183 | * s-taskin.ads: Adding the field Protected_Action_Nesting to the | |
35184 | Common_ATCB record. It contains the dynamic level of protected action | |
35185 | nesting for each task. It is needed for checking whether potentially | |
35186 | blocking operations are called from protected operations. | |
35187 | (Detect_Blocking): Adding a Boolean constant reflecting whether pragma | |
35188 | Detect_Blocking is active or not in the partition. | |
35189 | ||
35190 | * s-tasren.adb (Call_Simple): When pragma Detect_Blocking is active, | |
35191 | raise Program_Error if called from a protected operation. | |
35192 | (Task_Entry_Call): When pragma Detect_Blocking is active, raise | |
35193 | Program_Error if called from a protected operation. | |
35194 | (Timed_Task_Entry_Call): When pragma Detect_Blocking is active, raise | |
35195 | Program_Error if called from a protected operation. | |
35196 | ||
35197 | * s-tassta.adb (Abort_Tasks): When pragma Detect_Blocking is active, | |
35198 | raise Program_Error if called from a protected operation. | |
35199 | ||
35200 | * s-tpoben.adb (Lock_Entries): When pragma Detect_Blocking is active, | |
35201 | raise Program_Error if called from a protected operation, and increase | |
35202 | the protected action nesting level. | |
35203 | (Lock_Read_Only_Entries): When pragma Detect_Blocking is active, raise | |
35204 | Program_Error if called from a protected operation, and increase the | |
35205 | protected action nesting level. | |
35206 | (Unlock_Entries): When pragma Detect_Blocking is active decrease the | |
35207 | protected action nesting level. | |
35208 | ||
35209 | * s-tposen.adb (Lock_Entry): When pragma Detect_Blocking is active, | |
35210 | raise Program_Error if called from a protected operation, and increase | |
35211 | the protected action nesting level. | |
35212 | (Lock_Read_Only_Entry): When pragma Detect_Blocking is active, raise | |
35213 | Program_Error if called from a protected operation, and increase the | |
35214 | protected action nesting level. | |
35215 | (Protected_Single_Entry_Call): When pragma Detect_Blocking is active, | |
35216 | raise Program_Error if called from a protected operation. | |
35217 | (Timed_Protected_Single_Entry_Call): When pragma Detect_Blocking is | |
35218 | active, raise Program_Error if called from a protected operation. | |
35219 | (Unlock_Entry): When pragma Detect_Blocking is active decrease the | |
35220 | protected action nesting level. | |
35221 | ||
35222 | * sem_util.adb (Check_Potentially_Blocking_Operation): Remove the | |
35223 | insertion of the statement raising Program_Error. The run time | |
35224 | contains the required machinery for handling that. | |
35225 | ||
35226 | * sem_util.ads: Change comment associated to procedure | |
35227 | Check_Potentially_Blocking_Operation. | |
35228 | This procedure does not insert a call for raising the exception because | |
35229 | that is currently done by the run time. | |
35230 | ||
35231 | * raise.h (__gnat_set_globals): Pass the detect_blocking parameter. | |
35232 | ||
35233 | * init.c: Add the global variable __gl_detect_blocking that indicates | |
35234 | whether pragma Detect_Blocking is active (1) or not (0). Needed for | |
35235 | making the pragma available at run time. | |
35236 | (__gnat_set_globals): Pass and update the detect_blocking parameter. | |
35237 | ||
35238 | * lib-writ.adb (Write_ALI): Set the DB flag in the ali file if | |
35239 | pragma Detect_Blocking is active. | |
35240 | ||
35241 | * lib-writ.ads: Document the Detect_Blocking flag (DB) in ali files. | |
35242 | ||
35243 | * ali.adb (Scan_ALI): Set the Detect_Blocking value to true if the flag | |
35244 | DB is found in the ali file. Any unit compiled with pragma | |
35245 | Detect_Blocking active forces its effect in the whole partition. | |
35246 | ||
35247 | * a-retide.adb (Delay_Until): Raise Program_Error if pragma | |
35248 | Detect_Blocking is active and delay is called from a protected | |
35249 | operation. | |
35250 | ||
35251 | * bindgen.adb (Gen_Adainit_Ada): When generating the call to | |
35252 | __gnat_set_globals, pass 1 as Detect_Blocking parameter if pragma | |
35253 | Detect_Blocking is active (0 otherwise). | |
35254 | (Gen_Adainit_C): When generating the call to __gnat_set_globals, pass 1 | |
35255 | as Detect_Blocking parameter if pragma Detect_Blocking is active (0 | |
35256 | otherwise). | |
35257 | ||
35258 | 2004-09-09 Thomas Quinot <quinot@act-europe.fr> | |
35259 | ||
35260 | * gnat_rm.texi: Rename GNAT.Perfect_Hash.Generators to | |
35261 | GNAT.Perfect_Hash_Generators, and remove the empty GNAT.Perfect_Hash | |
35262 | package. | |
35263 | ||
35264 | * s-parint.ads, s-parint.adb (Get_RAS_Info): New subprogram. | |
35265 | (Register_Receiving_Stub): Add Subp_Info formal parameter. | |
35266 | Update API in placeholder implemetation of s-parint to reflect changes | |
35267 | in distribution runtime library. | |
35268 | ||
35269 | * sem_ch3.adb (Expand_Derived_Record): Rename to | |
35270 | Expand_Record_Extension. | |
35271 | ||
35272 | * sem_disp.adb (Check_Controlling_Formals): Improve error message for | |
35273 | primitive operations of potentially distributed object types that have | |
35274 | non-controlling anonymous access formals. | |
35275 | ||
35276 | * sem_dist.ads, sem_dist.adb (Build_RAS_Primitive_Specification): New | |
35277 | subprogram. | |
35278 | New implementation of expansion for remote access-to-subprogram types, | |
35279 | based on the RACW infrastructure. | |
35280 | This version of sem_dist is compatible with PolyORB/DSA as well as | |
35281 | GLADE. | |
35282 | ||
35283 | * sem_prag.adb (Analyze_Pragma, case Pragma_Asynchronous): For a pragma | |
35284 | Asynchrronous that applies to a remote access-to-subprogram type, mark | |
35285 | the underlying RACW type as asynchronous. | |
35286 | ||
35287 | * link.c: FreeBSD uses GNU ld: set __gnat_objlist_file_supported and | |
35288 | __gnat_using_gnu_linker to 1. | |
35289 | ||
35290 | * Makefile.rtl, impunit.adb, g-perhas.ads, g-pehage.ads, | |
35291 | g-pehage.adb: Rename GNAT.Perfect_Hash.Generators to | |
35292 | GNAT.Perfect_Hash_Generators, and remove the empty | |
35293 | GNAT.Perfect_Hash package. | |
35294 | ||
35295 | * atree.adb: Minor reformatting | |
35296 | ||
35297 | * exp_ch3.adb (Expand_Derived_Record): Rename to | |
35298 | Expand_Record_Extension. | |
35299 | (Build_Record_Init_Proc.Build_Assignment): The default expression in | |
35300 | a component declaration must remain attached at that point in the | |
35301 | tree so New_Copy_Tree copies it if the enclosing record type is derived. | |
35302 | It is therefore necessary to take a copy of the expression when building | |
35303 | the corresponding assignment statement in the init proc. | |
35304 | As a side effect, in the case of a derived record type, we now see the | |
35305 | original expression, without any rewriting that could have occurred | |
35306 | during expansion of the ancestor type's init proc, and we do not need | |
35307 | to go back to Original_Node. | |
35308 | ||
35309 | * exp_ch3.ads (Expand_Derived_Record): Rename to | |
35310 | Expand_Record_Extension. | |
35311 | ||
35312 | * exp_dist.ads, exp_dist.adb (Underlying_RACW_Type): New subprogram. | |
35313 | Returns the RACW type used to implement a remote access-to-subprogram | |
35314 | type. | |
35315 | (Add_RAS_Proxy_And_Analyze, Build_Remote_Subprogram_Proxy_Type): | |
35316 | New subprograms. Used to create a proxy tagged object for a remote | |
35317 | subprogram. The proxy object is used as the designated object | |
35318 | for RAS values on the same partition (unless All_Calls_Remote applies). | |
35319 | (Build_Get_Unique_RP_Call): New subprogram. Build a call to | |
35320 | System.Partition_Interface.Get_Unique_Remote_Pointer. | |
35321 | (Add_RAS_Access_TSS, Add_RAS_Dereference_TSS): | |
35322 | Renamed from Add_RAS_*_Attribute. | |
35323 | (Add_Receiving_Stubs_To_Declarations): Generate a table of local | |
35324 | subprograms. | |
35325 | New implementation of expansion for remote access-to-subprogram types, | |
35326 | based on the RACW infrastructure. | |
35327 | ||
35328 | * exp_dist.ads (Copy_Specification): Update comment to note that this | |
35329 | function can copy the specification from either a subprogram | |
35330 | specification or an access-to-subprogram type definition. | |
35331 | ||
35332 | 2004-09-09 Ed Schonberg <schonberg@gnat.com> | |
35333 | ||
35334 | * sem_type.adb (Disambiguate): Handle properly an accidental ambiguity | |
35335 | in an instance, between an explicit subprogram an one inherited from a | |
35336 | type derived from an actual. | |
35337 | ||
35338 | * exp_ch6.adb (Expand_N_Subprogram_Body): If polling is enabled, do not | |
35339 | add a polling call if the subprogram is to be inlined by the back-end, | |
35340 | to avoid repeated calls with multiple inlinings. | |
35341 | ||
35342 | * checks.adb (Apply_Alignment_Check): If the expression in the address | |
35343 | clause is a call whose name is not a static entity (e.g. a dispatching | |
35344 | call), treat as dynamic. | |
35345 | ||
35346 | 2004-09-09 Robert Dewar <dewar@gnat.com> | |
35347 | ||
35348 | * g-trasym.ads: Minor reformatting | |
35349 | ||
35350 | * exp_ch3.adb (Component_Needs_Simple_Initialization): Don't except | |
35351 | packed arrays, since unused bits are expected to be zero for a | |
35352 | comparison. | |
35353 | ||
35354 | 2004-09-09 Eric Botcazou <ebotcazou@act-europe.fr> | |
35355 | ||
35356 | * exp_pakd.ads: Fix an inacurracy and a couple of typos in the head | |
35357 | comment. | |
35358 | ||
35359 | 2004-09-09 Pascal Obry <obry@gnat.com> | |
35360 | ||
35361 | * mdll.ads, mdll.adb (Build_Dynamic_Library): New parameter Map_File to | |
35362 | enable map file generation. Add the right option to generate the map | |
35363 | file if Map_File is set to True. | |
35364 | ||
35365 | * gnatdll.adb (Gen_Map_File): New variable. | |
35366 | (Syntax): Add info about new -m (Map_File) option. | |
35367 | (Parse_Command_Line): Add support for -m option. | |
35368 | (gnatdll): Pass Gen_Map_File to Build_Dynamic_Library calls. | |
35369 | Minor reformatting. | |
35370 | ||
35371 | 2004-09-09 Laurent Pautet <pautet@act-europe.fr> | |
35372 | ||
35373 | * gnatls.adb: Add a very verbose mode -V. Such mode is required by the | |
35374 | new gnatdist implementation. | |
35375 | Define a subpackage isolating the output routines specific to this | |
35376 | verbose mode. | |
35377 | ||
35378 | 2004-09-09 Joel Brobecker <brobecker@gnat.com> | |
35379 | ||
35380 | * Makefile.rtl: (GNATRTL_NONTASKING_OBJS): Add g-dynhta. | |
35381 | ||
35382 | * gnat_ugn.texi (Main Subprograms): Fix typo. Deduced, not deducted. | |
35383 | ||
35384 | 2004-09-09 Cyrille Comar <comar@act-europe.fr> | |
35385 | ||
35386 | * opt.adb (Set_Opt_Config_Switches): Use Ada_Version_Runtime to compile | |
35387 | internal unit. | |
35388 | ||
35389 | * opt.ads: Add Ada_Version_Runtime constant used to decide which | |
35390 | version of the language is used to compile the run time. | |
35391 | ||
35392 | 2004-09-09 Arnaud Charlet <charlet@act-europe.fr> | |
35393 | ||
35394 | * sem_util.adb (Requires_Transient_Scope): Re-enable handling | |
35395 | of variable length temporaries for function return now that the | |
35396 | back-end and gigi support it. | |
35397 | ||
23c7b149 | 35398 | 2004-09-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6cdb2c6e AC |
35399 | |
35400 | * misc.c (gnat_print_type): Use TYPE_RM_SIZE_NUM. | |
35401 | ||
35402 | * trans.c (struct stmt_group): Delete field GLOBAL. | |
35403 | (gnat_init_stmt_group): Do not initialize it. | |
35404 | (call_to_gnu): Use save_expr, not protect_multiple_eval. | |
35405 | (Exception_Handler_to_gnu_sjlj): Call build_int_cst, not build_int_2 | |
35406 | (gnat_to_gnu, case N_Character_Literal, N_String_Literal): Likewise. | |
35407 | (gnat_to_gnu, case N_Compilation_Unit): Do not set GLOBAL in stmt group. | |
35408 | (start_stmt_group): Likewise. | |
35409 | (add_stmt, add_decl_expr): Rework handling of global DECL_EXPRs. | |
35410 | ||
35411 | * utils2.c (ggc.h): Include. | |
35412 | (build_call_raise): Call build_int_cst, not build_int_2. | |
35413 | ||
35414 | * utils.c (gnat_init_decl_processing): Fix arg to | |
35415 | build_common_tree_nodes. | |
35416 | (create_subprog_type): Do not use SET_TYPE_CI_CO_LIST. | |
35417 | (gnat_define_builtin): Set built_in_decls. | |
35418 | (init_gigi_decls): Call build_int_cst, not build_int_2. | |
35419 | ||
35420 | * ada-tree.h (struct lang_decl, struct lang_type): Field is type tree. | |
35421 | (GET_TYPE_LANG_SPECIFIC, SET_TYPE_LANG_SPECIFIC): New macros. | |
35422 | (GET_DECL_LANG_SPECIFIC, SET_DECL_LANG_SPECIFIC): Likewise. | |
35423 | (TYPE_CI_CO_LIST, SET_TYPE_CI_CO_LIST, TYPE_MODULE, | |
35424 | SET_TYPE_MODULE): Use them. | |
35425 | (TYPE_INDEX_TYPE, SET_TYPE_INDEX_TYPE, TYPE_DIGITS_VALUE): Likewise. | |
35426 | (SET_TYPE_DIGITS_VALUE, TYPE_UNCONSTRAINED_ARRAY): Likewise. | |
35427 | (SET_TYPE_UNCONSTRAINED_ARRAY, TYPE_ADA_SIZE, | |
35428 | SET_TYPE_ADA_SIZE): Likewise. | |
35429 | (TYPE_ACTUAL_BOUNDS, SET_TYPE_ACTUAL_BOUNDS): Likewise. | |
35430 | (DECL_CONST_CORRESPONDING_VAR, | |
35431 | SET_DECL_CONST_CORRESPONDING_VAR): Likewise. | |
35432 | (DECL_ORIGINAL_FIELD, SET_DECL_ORIGINAL_FIELD): Likewise. | |
35433 | (TYPE_RM_SIZE_INT, TYPE_RM_SIZE_ENUM, SET_TYPE_RM_SIZE_ENUM): Deleted. | |
35434 | (TYPE_RM_SIZE_NUM): New macro. | |
35435 | (TYPE_RM_SIZE): Modified to use above. | |
35436 | ||
35437 | * cuintp.c: (build_cst_from_int): New function. | |
35438 | (UI_To_gnu): Use it. | |
35439 | ||
35440 | * decl.c (gnat_to_gnu_entity): Use TYPE_RM_SIZE_NUM. | |
35441 | (make_type_from_size): Avoid changing TYPE_UNSIGNED of a type. | |
35442 | (gnat_substitute_in_type, case ARRAY_TYPE): If old had a | |
35443 | MIN_EXPR for the size, copy it into new. | |
35444 | ||
23c7b149 | 35445 | 2004-09-01 Robert Dewar <dewar@gnat.com> |
6cdb2c6e AC |
35446 | |
35447 | * exp_ch6.adb (Expand_Call): Properly handle validity checks for | |
35448 | packed indexed component where array is an IN OUT formal. This | |
35449 | generated garbage code previously. | |
35450 | ||
35451 | * gnat_ugn.texi: Document -fverbose-asm | |
35452 | ||
35453 | * gnat-style.texi: Minor updates (note that boolean constants and | |
35454 | variables are joined with AND/OR rather than short circuit forms). | |
35455 | ||
23c7b149 | 35456 | 2004-09-01 Ed Schonberg <schonberg@gnat.com> |
6cdb2c6e AC |
35457 | |
35458 | * exp_util.adb (Safe_Unchecked_Type_Conversion): Conversion is safe if | |
35459 | it is an upward conversion of an untagged type with no representation | |
35460 | change. | |
35461 | ||
23c7b149 | 35462 | 2004-09-01 Thomas Quinot <quinot@act-europe.fr> |
6cdb2c6e AC |
35463 | |
35464 | * rtsfind.ads: Move RCI_Subp_Info and RCI_Subp_Info_Array to | |
35465 | System.Partition_Interface. | |
35466 | ||
35467 | * checks.adb (Apply_Access_Checks): Do not generate checks when | |
35468 | expander is not active (but check for unset reference to prefix of | |
35469 | dereference). | |
35470 | ||
35471 | * sem_prag.adb (Analyze_Pragma, case Pragma_Debug): Uniformly rewrite | |
35472 | pragma Debug as an if statement with a constant condition, for | |
35473 | consistent treatment of entity references contained within the | |
35474 | enclosed procedure call. | |
35475 | ||
23c7b149 | 35476 | 2004-09-01 Vincent Celier <celier@gnat.com> |
6cdb2c6e AC |
35477 | |
35478 | * bindgen.adb: (Set_EA_Last): New procedure | |
35479 | (Gen_Exception_Table_Ada, Gen_Exception_Table_C): Use new procedure | |
35480 | Set_EA_Last. | |
35481 | (Gen_Adafinal_Ada): If no finalization, adafinal does nothing | |
35482 | (Gen_Output_File_Ada): Always call Gen_Adafinal_Ada, so that SAL can be | |
35483 | linked without errors. | |
35484 | (Gen_Exception_Table_Ada): Correct bugs when generating code for arrays | |
35485 | ST and EA. | |
35486 | (Gen_Exception_Table_C): Correct same bugs | |
35487 | ||
35488 | * vms_data.ads: Add new qualifier /VERBOSE_ASM to GCC_Switches | |
35489 | ||
35490 | * g-os_lib.adb (Normalize_Pathname.Get_Directory): When Dir is empty, | |
35491 | on Windows, make sure that the drive letter is in upper case. | |
35492 | ||
35493 | * g-os_lib.ads (Normalize_Pathname): Add a comment to indicate that on | |
35494 | Windows, when the drive letter is added and Case_Sensitive is True, the | |
35495 | drive letter is forced to upper case. | |
35496 | ||
35497 | * mlib-tgt-irix.adb (Build_Dynamic_Library): Transfer all -lxxx options | |
35498 | to Options_2 for the call to MLib.Utl.Gcc. | |
35499 | ||
35500 | * bld.adb (Put_Include_Project): Use '/', not '\' on Windows as | |
35501 | directory separator when defining BASE_DIR. | |
35502 | ||
23c7b149 | 35503 | 2004-09-01 Pascal Obry <obry@gnat.com> |
6cdb2c6e AC |
35504 | |
35505 | * gprcmd.adb (Extend): Do not output trailing directory separator. This | |
35506 | is not needed and it confuses Windows GNU/make which does not report | |
35507 | directory terminated by a slash as a directory. | |
35508 | (gprcmd): Idem for "pwd" internal command. | |
35509 | ||
35510 | * Makefile.generic: Use __GPRCOLON__ instead of pipe character in | |
35511 | target names rewrite to fix regressions with recent version of | |
35512 | GNU/make. Starting with GNU/make 3.80 the pipe character was not | |
35513 | handled properly anymore. | |
35514 | ||
4eb104c1 AS |
35515 | 2004-09-01 Andreas Schwab <schwab@suse.de> |
35516 | ||
35517 | * Make-lang.in (EXTRA_GNATBIND_OBJS): Revert last change. | |
35518 | * raise.c [!IN_RTS]: Undef abort. | |
35519 | ||
6a6bfc8e NS |
35520 | 2004-08-27 Nathan Sidwell <nathan@codesourcery.com> |
35521 | ||
ce552f75 NS |
35522 | * utils2.c (build_allocator): Use ssize_int. |
35523 | ||
6a6bfc8e NS |
35524 | * utils.c (gnat_init_decl_processing): Ada has a signed sizetype. |
35525 | ||
f8b7bf58 AS |
35526 | 2004-08-27 Andreas Schwab <schwab@suse.de> |
35527 | ||
35528 | * Make-lang.in (EXTRA_GNATBIND_OBJS): Add errors.o. | |
35529 | ||
15793d0c NS |
35530 | 2004-08-25 Nathan Sidwell <nathan@codesourcery.com> |
35531 | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
6615c446 | 35532 | |
15793d0c NS |
35533 | * ada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1. |
35534 | ||
7d60be94 NS |
35535 | 2004-08-25 Nathan Sidwell <nathan@codesourcery.com> |
35536 | ||
35537 | * cuintp.c (UI_To_gnu): Adjust build_int_cst calls. | |
35538 | * trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise. | |
35539 | * utils.c (init_gigi_decls): Likewise. | |
35540 | * utils2.c (build_call_raise, build_allocator): Likewise. | |
6615c446 | 35541 | |
8c1d6d62 NS |
35542 | 2004-08-24 Nathan Sidwell <nathan@codesourcery.com> |
35543 | ||
7d60be94 | 35544 | * utils.c (gnat_init_decl_processing): Adjust |
8c1d6d62 NS |
35545 | build_common_tree_nodes call. |
35546 | ||
3224bead NS |
35547 | 2004-08-20 Nathan Sidwell <nathan@codesourcery.com> |
35548 | ||
35549 | * utils2.c (build_allocator): Use build_int_cst for negative | |
35550 | size types. | |
35551 | ||
4766261d RH |
35552 | 2004-08-18 Richard Henderson <rth@redhat.com> |
35553 | ||
35554 | * misc.c (LANG_HOOKS_HONOR_READONLY): Remove. | |
35555 | ||
1f6c00df NS |
35556 | 2004-08-16 Nathan Sidwell <nathan@codesourcery.com> |
35557 | ||
35558 | * cuintp.c (UI_To_gnu): Be more conservative with build_int_cst | |
35559 | call.s | |
35560 | * trans.c (Exception_Handler_to_gnu_sjlj): Likewise. | |
35561 | (gnat_to_gnu): Likewise. | |
35562 | ||
4c46b835 AC |
35563 | 2004-08-16 Pascal Obry <obry@gnat.com> |
35564 | ||
35565 | * adaint.c (__gnat_prj_add_obj_files): Set to 0 only on Win32 for GCC | |
35566 | backend prior to GCC 3.4. With GCC 3.4 we are using the GCC's shared | |
35567 | option and not mdll anymore. Update comment. | |
35568 | ||
35569 | 2004-08-16 Pascal Obry <obry@gnat.com> | |
35570 | ||
35571 | * bld.adb (Put_Include_Project): Properly handle directory separators | |
35572 | on Windows. | |
35573 | ||
35574 | 2004-08-16 Ed Schonberg <schonberg@gnat.com> | |
35575 | ||
35576 | * sem_ch4.adb (Try_Object_Operation): Restructure code. Optimize by | |
35577 | decreasing the number of allocated junk nodes while searching for the | |
35578 | appropriate subprogram. | |
35579 | ||
4a90aeeb NS |
35580 | 2004-08-15 Nathan Sidwell <nathan@codesourcery.com> |
35581 | ||
35582 | * cuintp.c (UI_To_gnu): Use build_int_cst.. | |
35583 | * trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise. | |
35584 | * utils.c (init_gigi_decls): Likewise. | |
35585 | * utils2.c (build_call_raise): Likewise. | |
35586 | ||
244e5a2c AC |
35587 | 2004-08-13 Olivier Hainque <hainque@act-europe.fr> |
35588 | ||
35589 | * decl.c (gnat_to_gnu_entity) <E_Variable>: When building an allocator | |
35590 | for a global aliased object with a variable size and an unconstrained | |
35591 | nominal subtype, pretend there is no initializer if the one we have is | |
35592 | incomplete, and avoid referencing an inexistant component in there. The | |
35593 | part we have will be rebuilt anyway and the reference may confuse | |
35594 | further operations. | |
35595 | ||
35596 | 2004-08-13 Thomas Quinot <quinot@act-europe.fr> | |
35597 | ||
35598 | * einfo.ads: Minor reformatting | |
35599 | ||
35600 | * lib-writ.adb (Output_Main_Program_Line): Do not set parameter | |
35601 | restrictions in the ALI if we only want to warn about violations. | |
35602 | ||
35603 | 2004-08-13 Vincent Celier <celier@gnat.com> | |
35604 | ||
35605 | * ali.adb (Scan_ALI): Initialize component Body_Needed_For_SAL to False | |
35606 | when creating a new Unit_Record in table Units. | |
35607 | ||
35608 | * gnatls.adb (Output_Unit): In verbose mode, output the restrictions | |
35609 | that are violated, if any. | |
35610 | ||
35611 | * prj-nmsc.adb (Ada_Check.Get_Path_Names_And_Record_Sources): Do not | |
35612 | add directory separator if path already ends with a directory separator. | |
35613 | ||
35614 | 2004-08-13 Ed Schonberg <schonberg@gnat.com> | |
35615 | ||
35616 | * rtsfind.adb (Entity_Not_Defined): If the error ocurrs in a predefined | |
35617 | unit, this is an attempt to inline a construct that is not available in | |
35618 | the current restricted mode, so abort rather than trying to continue. | |
35619 | ||
35620 | * sem_ch3.adb (Build_Underlying_Full_View): If the new type has | |
35621 | discriminants that rename those of the parent, recover names of | |
35622 | original discriminants for the constraint on the full view of the | |
35623 | parent. | |
35624 | (Complete_Private_Subtype): Do not create a subtype declaration if the | |
35625 | subtype is an itype. | |
35626 | ||
35627 | * gnat_rm.texi: Added section on implementation of discriminated | |
35628 | records with default values for discriminants. | |
35629 | ||
35630 | 2004-08-13 Ed Schonberg <schonberg@gnat.com> | |
35631 | ||
35632 | PR ada/15601 | |
35633 | * sem_res.adb (Make_Call_Into_Operator): Handle properly the case where | |
35634 | the second operand is overloaded. | |
35635 | ||
1a186ec5 RH |
35636 | 2004-08-10 Richard Henderson <rth@redhat.com> |
35637 | ||
35638 | * utils.c (gnat_install_builtins): Remove __builtin_stack_alloc, | |
35639 | add __builtin_alloca. | |
35640 | ||
89f1a702 RH |
35641 | 2004-08-10 Richard Henderson <rth@redhat.com> |
35642 | ||
35643 | * config-lang.in (boot_language): Yes. | |
35644 | ||
5d09245e AC |
35645 | 2004-08-09 Thomas Quinot <quinot@act-europe.fr> |
35646 | ||
35647 | * g-socket.adb (Abort_Selector): Initialize Buf to prevent valgrind | |
35648 | from complaining on potential uninitialized reference. | |
35649 | Change calls to GNAT.Sockets.Thin.Is_Socket_In_Set to account for | |
35650 | new specification and test explicitly for non-zero return value. | |
35651 | ||
35652 | * g-socthi.ads (Is_Socket_In_Set): Declare imported function as | |
35653 | returning C.int, to avoid using a derived boolean type. | |
35654 | ||
35655 | * exp_ch5.adb (Make_Tag_Ctrl_Assignments): Use | |
35656 | Duplicate_Subexpr_No_Checks in preference to direct use of | |
35657 | Remove_Side_Effects and New_Copy_Tree. | |
35658 | Clear Comes_From_Source on prefix of 'Size attribute reference. | |
35659 | ||
35660 | * g-socthi.adb, g-socthi-vms.adb, g-socthi-mingw.adb, | |
35661 | g-socthi-vxworks.adb: Change calls to | |
35662 | GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification | |
35663 | and test explicitly for non-zero return value. | |
35664 | ||
6615c446 | 35665 | * g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads: |
5d09245e AC |
35666 | (Is_Socket_In_Set): Declare imported function as returning C.int, to |
35667 | avoid using a derived boolean type. | |
35668 | ||
35669 | 2004-08-09 Albert Lee <lee@gnat.com> | |
35670 | ||
35671 | * system-irix-n32.ads: Refine tasking priority constants for IRIX. | |
35672 | ||
35673 | 2004-08-09 Pascal Obry <obry@gnat.com> | |
35674 | ||
35675 | * gnat_ugn.texi: Document new way to build DLLs on Windows using | |
35676 | GCC's -shared option. | |
35677 | ||
35678 | * mlib-tgt-mingw.adb (Build_Dynamic_Library): Pass GCC's options into | |
35679 | Options_2 parameter (options put after object files). | |
35680 | ||
35681 | 2004-08-09 Olivier Hainque <hainque@act-europe.fr> | |
35682 | ||
35683 | * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Adjust condition to | |
35684 | ignore overflows on low and high bounds of an index to also account for | |
35685 | differences in signedness between sizetype and gnu_index_subtype. | |
35686 | These are as legitimate as the ones caused by a lower TYPE_PRECISION | |
35687 | on sizetype. | |
35688 | ||
35689 | 2004-08-09 Robert Dewar <dewar@gnat.com> | |
35690 | ||
35691 | * s-solita.ads, s-solita.adb: Minor reformatting | |
35692 | ||
35693 | * gnat_rm.texi: Add documentation for pragma Profile (Restricted) | |
35694 | Move pragma Restricted_Run_Time, No_Run_Time, Ravenscar to new | |
35695 | obsolescent section | |
35696 | Add note that No_Implicit_Conditionals does not suppress | |
35697 | run time constraint checks. | |
35698 | ||
35699 | * vms_conv.ads: Minor reformatting | |
35700 | ||
35701 | * s-secsta.adb: Use SS_Ptr instead of Mark_Id as stack pointer (cleanup | |
35702 | and necessary for following change). | |
35703 | (Mark): Return new format Mark_Id containing sec stack address | |
35704 | (Release): Use sec stack address from Mark_Id avoiding Self call | |
35705 | ||
35706 | * s-secsta.ads: Define SS_Ptr to be used instead of Mark_Id as stack | |
35707 | pointer (cleanup and necessary for following change). | |
35708 | Define Mark_Id as record containing address of secondary stack, that way | |
35709 | Release does not need to find the stack again, decreasing the number of | |
35710 | calls to Self and improving efficiency. | |
35711 | ||
35712 | * sem_util.ads: Add a ??? comment for Is_Local_Variable_Reference | |
35713 | ||
35714 | * sem_ch5.adb (Analyze_Case_Statement): Add circuitry to track value of | |
35715 | case variable into the individual case branches when possible. | |
35716 | ||
35717 | * sem_ch11.adb: Minor reformatting | |
35718 | ||
35719 | * prj.ads: Correct spelling of suffixs | |
35720 | ||
35721 | * prj-nmsc.adb: Minor reformatting | |
35722 | Correct spelling suffixs throughout (also in identifiers) | |
35723 | ||
35724 | * freeze.adb: Minor spelling correction | |
35725 | ||
35726 | * exp_ch2.adb: Cleanups to handling of Current_Value | |
35727 | (no functional effect). | |
35728 | ||
35729 | * bld.adb: Correct spelling of suffixs | |
35730 | ||
35731 | * einfo.adb (Enclosing_Dynamic_Scope): Defend against junk argument | |
35732 | ||
35733 | 2004-08-09 Ed Schonberg <schonberg@gnat.com> | |
35734 | ||
35735 | PR ada/15408 | |
5d09245e AC |
35736 | * sem_ch7.adb (Install_Private_Declarations): In the body of the |
35737 | package or of a child, private entities are both immediately_visible | |
35738 | and not hidden. | |
35739 | ||
35740 | 2004-08-09 Ed Schonberg <schonberg@gnat.com> | |
35741 | ||
35742 | * sem_eval.adb (Eval_Integer_Literal): If the context is Any_Integer, | |
35743 | there are no range checks on the value of the literal. | |
35744 | ||
35745 | * exp_ch7.adb (Insert_Actions_In_Scope_Around): If the node being | |
35746 | wrapped is the triggering alternative of an asynchronous select, action | |
35747 | statements mustbe inserted before the select itself. | |
35748 | ||
35749 | * sem_attr.adb (Analyze_Attribute, case 'Size): Handle properly the | |
35750 | case where the prefix is a protected function call. | |
35751 | (Resolve_Attribute, case 'Access): The attribute reference on a | |
35752 | subprogram is legal in a generic body if the subprogram is declared | |
35753 | elsewhere. | |
35754 | ||
35755 | 2004-08-09 Vincent Celier <celier@gnat.com> | |
35756 | ||
35757 | * makegpr.adb (Build_Library): Link with g++ if C++ is one of the | |
35758 | languages, otherwise building the library may fail with unresolved | |
35759 | symbols. | |
35760 | (Compile_Sources): Do not build libraries if -c switch is used | |
35761 | ||
35762 | * gnatlink.adb (Process_Args): New switches -M and -Mmap | |
35763 | (Write_Usage): If map file creation is supported, output new switches | |
35764 | -M and -Mmap. | |
35765 | (Gnatlink): When -M is specified, add the necessary switch(es) to the | |
35766 | gcc call, when supported. | |
35767 | ||
35768 | * Makefile.in: Added indepsw.o to the object list for gnatlink | |
35769 | Specified the AIX, GNU/Linux and Windows versions of indepsw.adb | |
35770 | ||
35771 | * indepsw-aix.adb, indepsw-linux.adb, indepsw-mingw.adb, | |
35772 | indepsw.adb, indepsw.ads: New files. | |
35773 | ||
35774 | 2004-08-09 Bernard Banner <banner@gnat.com> | |
35775 | ||
35776 | * system-vxworks-x86.ads, s-vxwork-x86.ads: New files. | |
35777 | ||
35778 | * Makefile.in: add section for vxworks x86 | |
35779 | ||
35780 | 2004-08-09 Hristian Kirtchev <kirtchev@gnat.com> | |
35781 | ||
35782 | * exp_ch3.adb (Build_Init_Statements): Add extra condition to deal with | |
35783 | per-object constrained components where the discriminant is of an | |
35784 | Access type. | |
35785 | (Build_Record_Init_Proc): Add condition to prevent the inheritance of | |
35786 | the parent initialization procedure for derived Unchecked_Unions. | |
35787 | Instead, derived Unchecked_Unions build their own initialization | |
35788 | procedure. | |
35789 | (Build_Variant_Record_Equality): Implement Unchecked_Union equality. | |
35790 | Check the body of the subprogram for details. | |
35791 | (Freeze_Record_Type): Prevent the inheritance of discriminant checking | |
35792 | functions for derived Unchecked_Union types by introducing a condition. | |
35793 | Allow the creation of TSS equality functions for Unchecked_Unions. | |
35794 | (Make_Eq_Case): Rename formal parameter Node to E in function signature. | |
35795 | Add formal parameter Discr to function signature. Discr is used to | |
35796 | control the generated case statement for Unchecked_Union types. | |
35797 | (Make_Eq_If): Rename formal parameter Node to E in function signature. | |
35798 | ||
35799 | * exp_ch4.adb (Build_Equality_Call): Implement equality calls for | |
35800 | Unchecked_Unions. | |
35801 | Check the body of the subprogram for details. | |
35802 | (Expand_Composite_Equality): Augment composite type equality to include | |
35803 | correct handling of Unchecked_Union components. | |
35804 | (Expand_N_In): Add condition to detect illegal membership tests when the | |
35805 | subtype mark is a constrained Unchecked_Union and the expression lacks | |
35806 | inferable discriminants, and build a Raise_Program_Error node. | |
35807 | (Expand_N_Op_Eq): Add function Has_Unconstrained_UU_Component. Used | |
35808 | to detect types that contain components of unconstrained Unchecked_Union | |
35809 | subtype. Add condition to detect equality between types that have an | |
35810 | unconstrained Unchecked_Union component, and build a Raise_Program_Error | |
35811 | node. Add condition to detect equality between Unchecked_Union types | |
35812 | that lack inferable discriminants, and build a Raise_Program_Error node. | |
35813 | Otherwise build a TSS equality function call. | |
35814 | (Expand_N_Type_Conversion): Add condition to detect illegal conversions | |
35815 | from a derived Unchecked_Union to an unconstrained non-Unchecked_Union | |
35816 | with the operand lacking inferable discriminants, and build a Raise_ | |
35817 | Program_Error node. | |
35818 | (Expand_Record_Equality): Remove guard that prevents Unchecked_Union | |
35819 | composite equality. | |
35820 | (Has_Inferable_Discriminants): Implement new predicate for objects and | |
35821 | expressions of Unchecked_Union type. Check the body of subprogram for | |
35822 | details. | |
35823 | (Has_Unconstrained_UU_Components): Add function | |
35824 | Component_Is_Unconstrained_UU. It is used to detect whether a single | |
35825 | component is of an unconstrained Unchecked_Union subtype. Add function | |
35826 | Variant_Is_Unconstrained_UU. It is used to detect whether a single | |
35827 | component inside a variant is of an unconstrained Unchecked_Union type. | |
35828 | ||
35829 | * exp_ch5.adb (Expand_Assign_Record): Add condition to copy the | |
35830 | inferred discriminant values. Add condition to generate a case | |
35831 | statement with an inferred discriminant as the switch. | |
35832 | (Make_Component_List_Assign): Introduce a Boolean flag that determines | |
35833 | the behaviour of the subprogram in the presence of an Unchecked_Union. | |
35834 | Add condition to trigger the usage of the inferred discriminant value | |
35835 | as the generated case statement switch. | |
35836 | (Make_Field_Assign): Introduce a Boolean flag that determines the | |
35837 | behaviour of the subprogram in the presence of an Unchecked_Union. Add | |
35838 | condition to trigger the usage of the inferred discriminant value as | |
35839 | the right-hand side of the generated assignment. | |
35840 | ||
35841 | * exp_ch6.adb (Expand_Call): Add condition to skip extra actual | |
35842 | parameter generation when dealing with Unchecked_Unions. | |
35843 | ||
35844 | * checks.adb (Apply_Discriminant_Check): Do not apply discriminant | |
35845 | checks for Unchecked_Unions. | |
35846 | ||
35847 | * einfo.ads: Update comment on usage of flag Has_Per_Object_Constraint | |
35848 | ||
35849 | * exp_attr.adb (Expand_N_Attribute_Reference): Produce | |
35850 | Raise_Program_Error nodes for the execution of Read and Write | |
35851 | attributes of Unchecked_Union types and the execution of Input and | |
35852 | Output attributes of Unchecked_Union types that lack default | |
35853 | discriminant values. | |
35854 | ||
35855 | * sem_prag.adb (Analyze_Pragma): Remodel the analysis of pragma | |
35856 | Unchecked_Union. Add procedure Check_Component. It is used to inspect | |
35857 | per-object constrained components of Unchecked_Unions for being | |
35858 | Unchecked_Unions themselves. Add procedure Check_Variant. It is used to | |
35859 | check individual components withing a variant. | |
35860 | ||
35861 | * sem_res.adb (Resolve_Comparison_Op): Remove guard that prevents | |
35862 | comparison of Unchecked_Unions. | |
35863 | (Resolve_Equality_OP): Remove guard that prevents equality between | |
35864 | Unchecked_Unions. | |
35865 | ||
35866 | * sem_util.adb (Build_Component_Subtype): Add guard to prevent creation | |
35867 | of component subtypes for Unchecked_Union components. | |
35868 | (Get_Actual_Subtype): Add condition that returs the Unchecked_Union type | |
35869 | since it is the actual subtype. | |
35870 | ||
35871 | * sem_ch12.adb (Instantiate_Type): Add condition to detect the correct | |
35872 | pass of Unchecked_Union subtypes as generic actuals to formal types | |
35873 | that lack known_discriminant_parts or that are derived Unchecked_Union | |
35874 | types, and do nothing. In any other case, produce an error message. | |
35875 | ||
35876 | * sem_ch3.adb (Analyze_Component_Declaration): Add function | |
35877 | Contains_POC. It determines whether a constraint uses the discriminant | |
35878 | of an enclosing record type. | |
35879 | Add condition to detect per-object constrained component and set the | |
35880 | appropriate flag. | |
35881 | (Derived_Type_Declaration): Remove guard that prevents derivation from | |
35882 | Unchecked_Union types. | |
35883 | (Process_Subtype): Remove quard that prevents the creation of Unchecked_ | |
35884 | Union subtypes. | |
35885 | ||
35886 | * sem_ch4.adb (Analyze_Selected_Component): Correct the detection of | |
35887 | references to Unchecked_Union discriminants. | |
35888 | ||
35889 | * sem_ch6.adb (Create_Extra_Formals): Add condition to skip extra | |
35890 | formal generation when dealing with Unchecked_Unions. | |
35891 | (Set_Actual_Subtypes): Add condition to prevent generation of actual | |
35892 | subtypes for Unchecked_Unions. | |
35893 | ||
35894 | * sem_ch7.adb (Analyze_Package_Specification): Add procedure | |
35895 | Inspect_Unchecked_Union_Completion. It is used to detect incorrect | |
35896 | completions of discriminated partial views by Unchecked_Unions and | |
35897 | produce an error message. | |
35898 | ||
35899 | 2004-08-09 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
35900 | ||
35901 | * trans.c (struct stmt_group): New field, GLOBAL. | |
35902 | (global_stmt_group, gnu_elab_proc_decl, build_unit_elab): Deleted. | |
35903 | (struct elab_info): New struct. | |
35904 | (elab_info_list, gnu_elab_proc_stack): New variables. | |
35905 | (Compilation_Unit_to_gnu): New procedure. | |
35906 | (gigi): Call it and also handle elaboration procs we've saved. | |
35907 | (gnat_init_stmt_group): Don't set global_stmt_group; instead initialize | |
35908 | global field from parent. | |
35909 | (gnat_to_gnu): Get decl from gnu_elab_proc_stack. | |
35910 | (gnat_to_gnu, case N_Compilation_Unit): Call Compilation_Unit_to_gnu. | |
35911 | (start_stmt_group): Initialize global field from parent. | |
35912 | (add_decl_expr): Set to global for current statement group. | |
35913 | (gnat_gimplify_expr, case NULL_EXPR): Add operand 0 to pre list, not | |
35914 | post. | |
35915 | ||
35916 | * utils.c (global_bindings_p): True when no current_function_decl; no | |
35917 | longer check current_binding_level. | |
35918 | ||
35919 | 2004-08-09 Ben Brosgol <brosgol@gnat.com> | |
35920 | ||
35921 | * xgnatugn.adb: Added logic to deal with @ifset/@ifclear for edition | |
35922 | choice. | |
35923 | ||
35924 | * gnat_rm.texi, gnat_ugn.texi: Added edition conditionalization logic. | |
35925 | ||
160ff372 AS |
35926 | 2004-08-06 Andreas Schwab <schwab@suse.de> |
35927 | ||
35928 | * utils.c (gnat_define_builtin): Remove second parameter of | |
35929 | make_decl_rtl. | |
35930 | (begin_subprog_body): Likewise. | |
35931 | ||
615cbd95 AC |
35932 | 2004-07-26 Arnaud Charlet <charlet@act-europe.fr> |
35933 | ||
35934 | * sem_util.adb (Requires_Transient_Scope): Temporarily disable | |
35935 | optimization, not supported by the tree-ssa back-end. | |
35936 | ||
35937 | 2004-07-26 Olivier Hainque <hainque@act-europe.fr> | |
35938 | ||
35939 | * s-mastop-irix.adb: Update comments. | |
35940 | ||
35941 | * a-except.adb (Exception_Information): Raise Constraint_Error if | |
35942 | exception Id is Null_Id. | |
35943 | This is required behavior, which is more reliably and clearly checked | |
35944 | at the top level interface level. | |
35945 | ||
35946 | 2004-07-26 Javier Miranda <miranda@gnat.com> | |
35947 | ||
35948 | * exp_aggr.adb (Build_Array_Aggr_Code): Do not build the initialization | |
35949 | call if a component has no default_expression and the box is used. | |
35950 | ||
35951 | * sem_aggr.adb (Resolve_Array_Aggregate): If a component has no | |
35952 | default_expression and you use box, it behaves as if you had declared a | |
35953 | stand-alone object. | |
35954 | (Resolve_Record_Aggregate): If a component has no default_expression and | |
35955 | you use box, it behaves as if you had declared a stand-alone object. | |
35956 | ||
35957 | * sem_ch10.adb (Install_Siblings): Do not make visible the private | |
35958 | entities of private-with siblings. | |
35959 | ||
35960 | 2004-07-26 Ed Schonberg <schonberg@gnat.com> | |
35961 | ||
35962 | * sem_ch3.adb (Build_Underlying_Full_View): If this is the full view | |
35963 | for a component of an itype, set the parent pointer for analysis, | |
35964 | there is no list in which to insert it. | |
35965 | ||
35966 | * sem_res.adb (Resolve): Call Rewrite_Renamed_Operator only for | |
35967 | bona-fide renamings, not for inherited operations. | |
35968 | ||
35969 | * exp_ch4.adb (Expand_Allocator_Expression): If the allocator is an | |
35970 | actual for a formal that is an access parameter, create local | |
35971 | finalization list even if the expression is not an aggregate. | |
35972 | ||
35973 | 2004-07-26 Ed Schonberg <schonberg@gnat.com> | |
35974 | ||
35975 | PR ada/16213 | |
35976 | * sem_ch8.adb (Attribute_Renaming, Check_Library_Level_Renaming): | |
35977 | Diagnose properly illegal subprogram renamings that are library units. | |
35978 | ||
35979 | 2004-07-26 Ed Schonberg <schonberg@gnat.com> | |
35980 | ||
35981 | PR ada/15588 | |
35982 | * sem_util.adb (Is_OK_Variable_For_Out_Formal): If actual is a type | |
35983 | conversion rewritten as an unchecked conversion, check that original | |
35984 | expression is a variable. | |
35985 | ||
35986 | * exp_ch4.adb (Expand_N_Type_Conversion): If rewriting as an | |
35987 | unchecked_conversion, create new node rather than rewriting in place, | |
35988 | to preserve original construct. | |
35989 | ||
35990 | 2004-07-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
35991 | ||
35992 | * gigi.h (gnat_expand_body): Deleted. | |
35993 | ||
35994 | * Make-lang.in: (trans.o): Depends on function.h. | |
35995 | ||
35996 | * misc.c: (gnat_expand_body): Moved to here. | |
35997 | ||
35998 | * trans.c (gnat_expand_body_1): Deleted. | |
35999 | (gnat_expand_body): Moved from here. | |
36000 | (gnat_to_gnu): N_Implicit_Label_Declaration forces being in elab proc. | |
36001 | (add_stmt): Check for marked visited with global_bindings_p. | |
36002 | (gnat_gimplify_expr, case COMPONENT_REF): New case. | |
36003 | (gnat_gimplify_expr, case NULL_EXPR): Set TREE_NO_WARNING for temp. | |
36004 | ||
36005 | * utils2.c (build_binary_op, case MODIFY_EXPR): Put LHS in a | |
36006 | VIEW_CONVERT_EXPR if not operation type. | |
36007 | ||
36008 | * utils.c (update_pointer_to): Set DECL_ORIGINAL_FIELD for | |
36009 | fat pointer. | |
36010 | ||
36011 | * decl.c, cuintp.c, gigi.h, misc.c, trans.c, utils.c, utils2.c: Minor | |
36012 | changes: reformatting of negation operators, removing unneeded | |
36013 | inequality comparison with zero, converting equality comparisons with | |
36014 | zero to negations, changing int/0/1 to bool/false/true, replace calls | |
36015 | to gigi_abort with abort, and various other similar changes. | |
36016 | ||
36017 | 2004-07-26 Vincent Celier <celier@gnat.com> | |
36018 | ||
36019 | * gnatcmd.adb (GNATCmd): Add processing for new built-in command | |
36020 | "setup". | |
36021 | ||
36022 | * make.adb (Gnatmake): Fail when a library is not present and there is | |
36023 | no object directory. | |
36024 | ||
36025 | * mlib-prj.adb (Check_Library): No need to check if the library needs | |
36026 | to be rebuilt if there is no object directory, hence no object files | |
36027 | to build the library. | |
36028 | ||
36029 | * opt.ads (Setup_Projects): New Boolean flag. | |
36030 | ||
36031 | * prj-nmsc.adb (Locate_Directory): New parameter Project, Kind and | |
36032 | Location. | |
36033 | Create directory when Kind /= "" and in "gnat setup". Report error if | |
36034 | directory cannot be created. | |
36035 | (Ada_Check): Create library interface copy dir if it does not exist | |
36036 | and we are in "gnat setup". | |
36037 | (Find_Sources): No error if in "gnat setup" and no Ada sources were | |
36038 | found. | |
36039 | (Language_Independent_Check): Create object directory, exec directory | |
36040 | and/or library directory if they do not exist and we are in | |
36041 | "gnat setup". | |
36042 | ||
36043 | * vms_conv.ads: (Command_Type): New command Setup. | |
36044 | ||
36045 | * vms_conv.adb (Initialize): Add Setup component of Cammand_List. | |
36046 | ||
36047 | * vms_data.ads: Add qualifiers/switches for new built-in command | |
36048 | "setup". | |
36049 | ||
b785f485 RH |
36050 | 2004-07-25 Richard Henderson <rth@redhat.com> |
36051 | ||
36052 | * utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and | |
36053 | DECL_IGNORED_P on RESULT_DECL. | |
36054 | ||
35ae2ed8 AC |
36055 | 2004-07-20 Olivier Hainque <hainque@act-europe.fr> |
36056 | ||
36057 | * a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic | |
36058 | allocation and potentially overflowing update with | |
36059 | Tailored_Exception_Information. Use the sec-stack free procedural | |
36060 | interface to output Exception_Information instead. | |
36061 | ||
36062 | * a-except.adb (To_Stderr): New subprogram for character, and string | |
36063 | version moved from a-exextr to be visible from other separate units. | |
36064 | (Tailored_Exception_Information): Remove the procedural version, | |
36065 | previously used by the default Last_Chance_Handler and not any more. | |
36066 | Adjust various comments. | |
36067 | ||
36068 | * a-exexda.adb: Generalize the exception information procedural | |
36069 | interface, to minimize the use of secondary stack and the need for | |
36070 | local buffers when the info is to be output to stderr: | |
36071 | (Address_Image): Removed. | |
36072 | (Append_Info_Character): New subprogram, checking for overflows and | |
36073 | outputing to stderr if buffer to fill is of length 0. | |
36074 | (Append_Info_String): Output to stderr if buffer to fill is of length 0. | |
36075 | (Append_Info_Address, Append_Info_Exception_Name, | |
36076 | Append_Info_Exception_Message, Append_Info_Basic_Exception_Information, | |
36077 | Append_Info_Basic_Exception_Traceback, | |
36078 | Append_Info_Exception_Information): New subprograms. | |
36079 | (Append_Info_Nat, Append_Info_NL): Use Append_Info_Character. | |
36080 | (Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength, | |
36081 | Exception_Info_Maxlength, Exception_Name_Length, | |
36082 | Exception_Message_Length): New subprograms. | |
36083 | (Exception_Information): Use Append_Info_Exception_Information. | |
36084 | (Tailored_Exception_Information): Use | |
36085 | Append_Info_Basic_Exception_Information. | |
36086 | Export services for the default Last_Chance_Handler. | |
36087 | ||
36088 | * a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by | |
36089 | other separate units. | |
36090 | ||
36091 | 2004-07-20 Vincent Celier <celier@gnat.com> | |
36092 | ||
36093 | * clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting. | |
36094 | ||
36095 | 2004-07-20 Ed Schonberg <schonberg@gnat.com> | |
36096 | ||
36097 | * freeze.adb (Freeze_Entity): If entity is a discriminated record type, | |
36098 | emit itype references for the designated types of component types that | |
36099 | are declared outside of the full record declaration, and that may | |
36100 | denote a partial view of that record type. | |
36101 | ||
36102 | 2004-07-20 Ed Schonberg <schonberg@gnat.com> | |
36103 | ||
36104 | PR ada/15607 | |
36105 | * sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype | |
36106 | which is the designated type in an access component declaration, to the | |
36107 | list of incomplete dependents of the parent type, to avoid elaboration | |
36108 | issues with out-of-scope subtypes. | |
36109 | (Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the | |
36110 | full view of the parent. | |
36111 | ||
36112 | 2004-07-20 Ed Schonberg <schonberg@gnat.com> | |
36113 | ||
36114 | PR ada/15610 | |
36115 | * sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject | |
36116 | entities that are hidden, such as references to generic actuals | |
36117 | outside an instance. | |
36118 | ||
36119 | 2004-07-20 Javier Miranda <miranda@gnat.com> | |
36120 | ||
36121 | * sem_ch4.adb (Try_Object_Operation): New subprogram that gives | |
36122 | support to the new notation. | |
36123 | (Analyze_Selected_Component): Add call to Try_Object_Operation. | |
36124 | ||
36125 | 2004-07-20 Jose Ruiz <ruiz@act-europe.fr> | |
36126 | ||
36127 | * s-taprob.adb: Adding the elaboration code required for initializing | |
36128 | the tasking soft links that are common to the full and the restricted | |
36129 | run times. | |
36130 | ||
36131 | * s-tarest.adb (Init_RTS): Tasking soft links that are shared with the | |
36132 | restricted run time has been moved to the package | |
36133 | System.Soft_Links.Tasking. | |
36134 | ||
36135 | * s-tasini.adb (Init_RTS): Tasking soft links that are shared with the | |
36136 | restricted run time has been moved to the package | |
36137 | System.Soft_Links.Tasking. | |
36138 | ||
36139 | * Makefile.rtl: Add entry for s-solita.o in run-time library list. | |
36140 | ||
36141 | * s-solita.ads, s-solita.adb: New files. | |
36142 | ||
36143 | 2004-07-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
36144 | ||
36145 | * trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu, | |
36146 | Case_Statement_to_gnu): Split off from gnat_to_gnu. | |
36147 | (Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu, | |
36148 | Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj, | |
36149 | Exception_Handler_to_gnu_zcx): Likewise. | |
36150 | ||
6e34d3a3 JM |
36151 | 2004-07-17 Joseph S. Myers <jsm@polyomino.org.uk> |
36152 | ||
36153 | * gigi.h (builtin_function): Declare. | |
36154 | ||
523456db AC |
36155 | 2004-07-15 Robert Dewar <dewar@gnat.com> |
36156 | ||
36157 | * makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor | |
36158 | reformatting | |
36159 | ||
36160 | * gnat_ugn.texi: Add instantiation of direct_io or sequential_io with | |
36161 | access values as an example of a warning. | |
36162 | ||
36163 | * gnat_rm.texi: Document new attribute Has_Access_Values | |
36164 | ||
36165 | * gnat-style.texi: Document that box comments belong on nested | |
36166 | subprograms | |
36167 | ||
36168 | * sem_util.ads (Has_Access_Values): Improved documentation | |
36169 | ||
36170 | * s-finimp.ads, s-finimp.adb: Fix spelling error in comment | |
36171 | ||
36172 | * sem_prag.adb (Check_Duplicated_Export_Name): New procedure | |
36173 | (Process_Interface_Name): Call to this new procedure | |
36174 | (Set_Extended_Import_Export_External_Name): Call to this new procedure | |
36175 | ||
36176 | * s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment | |
36177 | ||
36178 | * a-direio.ads, a-sequio.ads: Warn if Element_Type has access values | |
36179 | ||
36180 | * einfo.ads: Minor comment typo fixed | |
36181 | ||
36182 | 2004-07-15 Jose Ruiz <ruiz@act-europe.fr> | |
36183 | ||
36184 | * snames.adb: Add _atcb. | |
36185 | ||
36186 | * snames.ads: Add Name_uATCB. | |
36187 | ||
36188 | * s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated | |
36189 | (in the expanded code) when using the restricted run time. | |
36190 | ||
36191 | * s-tarest.ads (Create_Restricted_Task): Created_Task transformed into | |
36192 | a in parameter in order to allow ATCBs to be preallocated (in the | |
36193 | expanded code). | |
36194 | ||
36195 | * s-taskin.adb (Initialize_ATCB): T converted into a in parameter in | |
36196 | order to allow ATCBs to be preallocated. In case of error, the ATCB is | |
36197 | deallocated in System.Tasking.Stages. | |
36198 | ||
36199 | * s-taskin.ads (Initialize_ATCB): T converted into a in parameter in | |
36200 | order to allow ATCBs to be preallocated. | |
36201 | ||
36202 | * s-tassta.adb (Create_Task): In case of error the ATCB is deallocated | |
36203 | here. It was previously done in Initialize_ATCB. | |
36204 | ||
36205 | * rtsfind.ads: Make the Ada_Task_Control_Block visible. | |
36206 | ||
36207 | * exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the | |
36208 | Restricted run time. | |
36209 | ||
36210 | * exp_ch3.adb: When using the Restricted run time, pass the | |
36211 | preallocated Ada_Task_Control_Block when creating a task. | |
36212 | ||
36213 | 2004-07-15 Ed Schonberg <schonberg@gnat.com> | |
36214 | ||
36215 | * sem_util.adb (Normalize_Actuals): If there are no actuals on a | |
36216 | function call that is itself an actual in an enclosing call, diagnose | |
36217 | problem here rather than assuming that resolution will catch it. | |
36218 | ||
36219 | * sem_ch7.adb (Analyze_Package_Specification): If the specification is | |
36220 | the local copy of a generic unit for a formal package, and the generic | |
36221 | is a child unit, install private part of ancestors before compiling | |
36222 | private part of spec. | |
36223 | ||
36224 | * sem_cat.adb (Validate_Categorization_Dependency): Simplify code to | |
36225 | use scope entities rather than tree structures, to handle properly | |
36226 | parent units that are instances rewritten as bodies for inlining | |
36227 | purposes. | |
36228 | ||
36229 | * sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent, | |
36230 | Remove_Parents): Handle properly a parent unit that is an | |
36231 | instantiation, when the unit has been rewritten as a body for inlining | |
36232 | purposes. | |
36233 | ||
36234 | * par.adb (Goto_List): Global variable to collect goto statements in a | |
36235 | given unit, for use in detecting natural loops. | |
36236 | ||
36237 | * par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for | |
36238 | use in detecting natural loops. | |
36239 | ||
36240 | * par-labl.adb (Find_Natural_Loops): Recognize loops create by | |
36241 | backwards goto's, and rewrite as a infinite loop, to improve locality | |
36242 | of temporaries. | |
36243 | ||
36244 | * exp_util.adb (Force_Evaluation): Recognize a left-hand side | |
36245 | subcomponent that includes an indexed reference, to prevent the | |
36246 | generation of copies that would miscompile the desired assignment | |
36247 | statement. | |
36248 | (Build_Task_Image_Decls): Add a numeric suffix to | |
36249 | generated name for string variable, to avoid spurious conflicts with | |
36250 | the name of the type of a single protected object. | |
36251 | ||
36252 | * exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a | |
36253 | loop with an explicit exit statement, to avoid generating an | |
36254 | out-of-range value with 'Succ leading to spurious constraint_errors | |
36255 | when compiling with -gnatVo. | |
36256 | ||
36257 | 2004-07-15 Thomas Quinot <quinot@act-europe.fr> | |
36258 | ||
36259 | * sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it | |
36260 | might not be analyzed yet, even if its Etype is already set (case of an | |
36261 | unchecked conversion built using Unchecked_Convert_To, for example). | |
36262 | If the prefix has already been analyzed, this will be a nop anyway. | |
36263 | ||
36264 | * exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a | |
36265 | controller type, or an assignment of a record type with controlled | |
36266 | components, copy only user data, and leave the finalization chain | |
36267 | pointers untouched. | |
36268 | ||
36269 | 2004-07-15 Vincent Celier <celier@gnat.com> | |
36270 | ||
36271 | * make.adb (Collect_Arguments): Improve error message when attempting | |
36272 | to compile a source not part of any project, when -x is not used. | |
36273 | ||
36274 | * prj.ads: (Defined_Variable_Kind): New subtype | |
36275 | ||
36276 | * prj-attr.adb (Register_New_Package): Two new procedures to register | |
36277 | a package with or without its attributes. | |
36278 | (Register_New_Attribute): Mew procedure to register a new attribute in a | |
36279 | package. | |
36280 | New attribute oriented subprograms: Attribute_Node_Id_Of, | |
36281 | Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of, | |
36282 | Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of, | |
36283 | Next_Attribute. | |
36284 | New package oriented subprograms: Package_Node_Id_Of, | |
36285 | Add_Unknown_Package, First_Attribute_Of, Add_Attribute. | |
36286 | ||
36287 | * prj-attr.ads (Attribute_Node_Id): Now a private, self initialized | |
36288 | type. | |
36289 | (Package_Node_Id): Now a private, self initialized type | |
36290 | (Register_New_Package): New procedure to register a package with its | |
36291 | attributes. | |
36292 | New attribute oriented subprograms: Attribute_Node_Id_Of, | |
36293 | Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of, | |
36294 | Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of, | |
36295 | Next_Attribute. | |
36296 | New package oriented subprograms: Package_Node_Id_Of, | |
36297 | Add_Unknown_Package, First_Attribute_Of, Add_Attribute. | |
36298 | ||
36299 | * prj-dect.adb (Parse_Attribute_Declaration, | |
36300 | Parse_Package_Declaration): Adapt to new spec of Prj.Attr. | |
36301 | ||
36302 | * prj-makr.adb (Make): Parse existing project file before creating | |
36303 | other files. Fail if there was an error during parsing. | |
36304 | ||
36305 | * prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to | |
36306 | new spec of Prj.Attr. | |
36307 | ||
36308 | * prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt | |
36309 | to new spec of Prj.Attr. | |
36310 | ||
36311 | 2004-07-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
36312 | ||
36313 | * utils2.c: Fix typo in comment. | |
36314 | ||
36315 | 2004-07-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
54805e13 RK |
36316 | |
36317 | * trans.c (add_decl_expr): Clear TREE_READONLY if clear DECL_INITIAL. | |
36318 | * utils.c (unchecked_convert): Don't do two VIEW_CONVERT_EXPRs. | |
36319 | ||
a1c7af89 AS |
36320 | 2004-07-14 Andreas Schwab <schwab@suse.de> |
36321 | ||
36322 | * trans.c (gnat_init_stmt_group): Remove duplicate definition. | |
36323 | ||
a5cb3b30 AC |
36324 | 2004-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
36325 | ||
36326 | * decl.c: (gnat_to_gnu_entity, object case): Convert initializer to | |
36327 | object type. | |
36328 | (gnat_to_gnu_entity, case E_Record_Subtype): Properly set | |
36329 | TYPE_STUB_DECL. | |
36330 | ||
36331 | * misc.c (gnat_types_compatible_p): New function. | |
36332 | (LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it. | |
36333 | (LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New. | |
36334 | ||
36335 | * trans.c (gigi): Move processing of main N_Compilation_Unit here. | |
36336 | (gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here. | |
36337 | (add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR. | |
36338 | (mark_visited): Don't mark dummy type. | |
6615c446 | 36339 | (tree_transform <N_Procedure_Call_Statement>): Unless this is an In |
a5cb3b30 AC |
36340 | parameter, we must remove any LJM building from GNU_NAME. |
36341 | (gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR. | |
36342 | (pos_to_constructor): Use int_const_binop. | |
36343 | (gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of | |
36344 | PARM_DECL. | |
36345 | ||
36346 | * utils.c (gnat_init_decl_processing): Don't make two "void" decls. | |
36347 | (gnat_pushlevel): Set TREE_USE on BLOCK node. | |
36348 | (gnat_install_builtins): Add __builtin_memset. | |
36349 | ||
36350 | 2004-07-13 Olivier Hainque <hainque@act-europe.fr> | |
36351 | ||
36352 | * decl.c (gnat_to_gnu_entity <E_Variable>): If we are making a pointer | |
36353 | for a renaming, stabilize the initialization expression if we are at a | |
36354 | local level. At the local level, uses of the renaming may be performed | |
36355 | by a direct dereference of the initializing expression, and we don't | |
36356 | want possible variables there to be evaluated for every use. | |
36357 | ||
36358 | * trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1): | |
36359 | Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing | |
36360 | them on the way. Account for the fact that we may introduce side | |
36361 | effects in the process. | |
36362 | ||
0976078c RH |
36363 | 2004-07-13 Richard Henderson <rth@redhat.com> |
36364 | ||
36365 | * misc.c (default_pass_by_ref): Use pass_by_reference. | |
36366 | ||
9dcf6e73 JM |
36367 | 2004-07-11 Joseph S. Myers <jsm@polyomino.org.uk> |
36368 | ||
36369 | * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL, | |
36370 | LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove. | |
36371 | ||
ac45df5d RH |
36372 | 2004-07-08 Richard Henderson <rth@redhat.com> |
36373 | ||
36374 | * trans.c (gnat_to_gnu <N_Handled_Sequence_Of_Statements>): Update | |
36375 | commentary. | |
36376 | ||
15ce9ca2 AC |
36377 | 2004-07-06 Vincent Celier <celier@gnat.com> |
36378 | ||
36379 | * vms_conv.ads: Minor reformatting. | |
36380 | Alphabetical order for enumerated values of type Command_Type, to have | |
36381 | the command in alphabetical order for the usage. | |
36382 | ||
36383 | * vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for | |
36384 | the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters). | |
36385 | ||
36386 | * gnat_ugn.texi: Document new switch -dn for the GNAT driver. | |
36387 | ||
36388 | * makegpr.adb (Global_Archive_Exists): New global Boolean variable | |
36389 | (Add_Archive_Path): Only add the global archive if there is one. | |
36390 | (Build_Global_Archive): Set Global_Archive_Exists depending if there is | |
36391 | or not any object file to put in the global archive, and don't build | |
36392 | a global archive if there is none. | |
36393 | (X_Switches): New table | |
36394 | (Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored | |
36395 | in the X_Switches table, if any. | |
36396 | (Initialize): Make sure the X_Switches table is empty | |
36397 | (Scan_Arg): Record -X switches in table X_Switches | |
36398 | ||
36399 | * opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False. | |
36400 | ||
36401 | * make.adb: Minor comment fix | |
36402 | ||
36403 | * gnatname.adb (Gnatname): When not on VMS, and gnatname has been | |
36404 | invoked with directory information, add the directory in front of the | |
36405 | path. | |
36406 | ||
36407 | * gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been | |
36408 | invoked with directory information, add the directory in front of the | |
36409 | path. | |
36410 | ||
36411 | * gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files | |
36412 | when Keep_Temporary_Files is False. | |
36413 | (GNATCmd): When not on VMS, and the GNAT driver has been invoked with | |
36414 | directory information, add the directory in front of the path. | |
36415 | When not on VMS, handle new switch -dn before the command to set | |
36416 | Keep_Temporary_Files to True. | |
36417 | (Non_VMS_Usage): Use lower case for the non VMS usage: this is valid | |
36418 | everywhere. | |
36419 | ||
36420 | * gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been | |
36421 | invoked with directory information, add the directory in front of the | |
36422 | path. | |
36423 | ||
36424 | 2004-07-06 Thomas Quinot <quinot@act-europe.fr> | |
36425 | ||
36426 | * snames.ads, snames.adb (Name_Stub): New name for the distributed | |
36427 | systems annex. | |
36428 | ||
36429 | * rtsfind.ads: New RTE TC_Object, for DSA/PolyORB. | |
36430 | New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA. | |
36431 | ||
36432 | * g-socket.adb (To_Timeval): Fix incorrect conversion of | |
36433 | Selector_Duration to Timeval for the case of 0.0. | |
36434 | ||
36435 | * exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of | |
36436 | documentation from Evolve_And_Then. | |
36437 | ||
36438 | 2004-07-06 Jose Ruiz <ruiz@act-europe.fr> | |
36439 | ||
36440 | * s-taprop-tru64.adb, s-taprop-os2.adb, | |
36441 | s-taprop-mingw.adb, s-taprop-posix.adb: Update comment. | |
36442 | ||
36443 | 2004-07-06 Robert Dewar <dewar@gnat.com> | |
36444 | ||
36445 | * s-osinte-hpux.ads, s-osinte-freebsd.ads, | |
36446 | s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads, | |
36447 | s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb, | |
36448 | s-interr-sigaction.adb, s-taprop-irix-athread.adb, | |
36449 | s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb, | |
36450 | s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb, | |
36451 | s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb, | |
36452 | s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb, | |
36453 | a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb, | |
36454 | a-tags.ads, bindgen.ads, checks.adb, checks.adb, | |
36455 | csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb, | |
36456 | exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb, | |
36457 | g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb, | |
36458 | i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb, | |
36459 | sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb, | |
36460 | sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb, | |
36461 | sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads, | |
36462 | s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads, | |
36463 | s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb, | |
36464 | s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb, | |
36465 | vms_data.ads: Minor reformatting, | |
36466 | Fix bad box comment format. | |
36467 | ||
36468 | * gnat_rm.texi: Fix minor grammatical error | |
36469 | ||
36470 | * sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values | |
36471 | ||
36472 | * sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many | |
36473 | more cases of discriminated records to be recognized as not needing a | |
36474 | secondary stack. | |
36475 | (Has_Access_Values): New function. | |
36476 | ||
36477 | * snames.h, snames.adb, snames.ads: New attribute Has_Access_Values | |
36478 | ||
36479 | * cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name | |
36480 | Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence | |
36481 | with LRM terminology). | |
36482 | Change terminology in comments primitive type => elementary type. | |
36483 | ||
36484 | 2004-07-06 Ed Schonberg <schonberg@gnat.com> | |
36485 | ||
36486 | PR ada/15602 | |
36487 | * sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal | |
36488 | parameters do not impose any requirements on the presence of a body. | |
36489 | ||
36490 | 2004-07-06 Ed Schonberg <schonberg@gnat.com> | |
36491 | ||
36492 | PR ada/15593 | |
36493 | * sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a | |
36494 | compilation unit and is in an open scope at the point of instantiation, | |
36495 | assume that a body may be present later. | |
36496 | ||
36497 | 2004-07-06 Ed Schonberg <schonberg@gnat.com> | |
36498 | ||
36499 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size): | |
36500 | Improve error message when specified size is not supported. | |
36501 | ||
36502 | * sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram | |
36503 | is never a primitive operation. | |
36504 | ||
cb42deba AS |
36505 | 2004-07-05 Andreas Schwab <schwab@suse.de> |
36506 | ||
36507 | * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use | |
36508 | RECORD_OR_UNION_CHECK. | |
36509 | (TYPE_CONTAINS_TEMPLATE_P): Likewise. | |
36510 | ||
98877933 KC |
36511 | 2004-07-04 Kelley Cook <kcook@gcc.gnu.org> |
36512 | ||
36513 | * Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit | |
36514 | dependency on xgnatugn, instead build it via a submake. | |
36515 | (ADA_INFOFILES): Add doc/gnat_ugn_unw.texi. | |
36516 | ||
8fff4fc1 RH |
36517 | 2004-07-04 Richard Henderson <rth@redhat.com> |
36518 | ||
36519 | * utils2.c (gnat_mark_addressable): Don't put_var_into_stack. | |
36520 | ||
4dfa0342 RH |
36521 | 2004-07-01 Richard Henderson <rth@redhat.com> |
36522 | ||
36523 | * trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR. | |
36524 | * utils.c (max_size): Likewise. | |
36525 | ||
909f21b3 RK |
36526 | 2004-06-28 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
36527 | ||
36528 | * decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation, | |
36529 | and rest_of_type_compilation; add arg to create_*_decl. | |
15cd18b9 | 36530 | (annotate_decl_with_node): Deleted. |
909f21b3 RK |
36531 | (gnat_to_gnu_entity, case E_Array_Type): Set location of fields. |
36532 | * gigi.h (get_decls, block_has_vars, pushdecl): Deleted. | |
36533 | (get_current_block_context, gnat_pushdecl): New declarations. | |
36534 | (gnat_init_stmt_group): Likewise. | |
36535 | (create_var_decl, create_type_decl, create_subprog_decl): Add new arg. | |
36536 | * misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted. | |
36537 | (LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted. | |
36538 | (gnat_init): Call gnat_init_stmt_group. | |
36539 | * trans.c (global_stmt_group, gnu_elab_proc_decl): New variables. | |
36540 | (gnu_pending_elaboration_list): Deleted. | |
36541 | (mark_visited, mark_unvisited, gnat_init_stmt_group): New functions. | |
36542 | (gigi): Rearrange initialization calls and move some to last above. | |
36543 | (gnat_to_gnu): If statement and not in procedure, go into elab proc. | |
36544 | Delete calls to add_decl_expr; add arg to create_*_decl. | |
36545 | (gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR. | |
6615c446 | 36546 | (gnat_to_gnu, case N_Subprogram_Body): Move some code to |
909f21b3 RK |
36547 | begin_subprog_body and call it. |
36548 | Don't push and pop ggc context. | |
36549 | (gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc. | |
36550 | (add_stmt): Remove handling of DECL_EXPR from here. | |
36551 | If not in function, mark visited. | |
36552 | (add_decl_expr): Put global at top level. | |
36553 | Check for cases of DECL_INITIAL we have to handle here. | |
36554 | (process_type): Add extra arg to create_type_decl. | |
36555 | (build_unit_elab): Rework to just gimplify. | |
36556 | * utils.c (pending_elaborations, elist_stack, getdecls): Deleted. | |
36557 | (block_has_vars, mark_visited, add_pending_elaborations): Likewise. | |
36558 | (get_pending_elaborations, pending_elaborations_p): Likewise. | |
36559 | (push_pending_elaborations, pop_pending_elaborations): Likewise. | |
36560 | (get_elaboration_location, insert_elaboration_list): Likewise. | |
36561 | (gnat_binding_level): Renamed from ada_binding_level. | |
36562 | (init_gnat_to_gnu): Don't clear pending_elaborations. | |
36563 | (global_bindings_p): Treat as global if no current_binding_level. | |
36564 | (set_current_block_context): New function. | |
36565 | (gnat_pushdecl): Renamed from pushdecl; major rework. | |
36566 | All callers changed. | |
36567 | (create_type_decl, create_var_decl, create_subprog_decl): Add new arg. | |
36568 | (finish_record_type): Call call pushdecl for stub decl. | |
36569 | (function_nesting_depth): Deleted. | |
36570 | (begin_subprog_body): Delete obsolete code. | |
36571 | * utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl. | |
6615c446 | 36572 | |
246d2ceb AC |
36573 | 2004-06-28 Robert Dewar <dewar@gnat.com> |
36574 | ||
36575 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, | |
36576 | mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb, | |
36577 | mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb, | |
36578 | mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, | |
36579 | a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting | |
36580 | ||
36581 | * exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to | |
36582 | deal with problem of inefficient slices on machines with strict | |
36583 | alignment, when the slice is a component of a composite. | |
36584 | ||
36585 | * checks.adb (Apply_Array_Size_Check): Do not special case 64-bit | |
36586 | machines, we need the check there as well. | |
36587 | ||
36588 | 2004-06-28 Ed Schonberg <schonberg@gnat.com> | |
36589 | ||
36590 | * exp_ch5.adb (Expand_Assign_Array): Use correct condition to | |
36591 | determine safe copying direction for overlapping slice assignments | |
36592 | when component is controlled. | |
36593 | ||
36594 | * sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a | |
36595 | formal derived type in the actual for a formal package are visible in | |
36596 | the enclosing instance. | |
36597 | ||
36598 | 2004-06-28 Ed Schonberg <schonberg@gnat.com> | |
36599 | ||
36600 | PR ada/15600 | |
36601 | * sem_util.adb (Trace_Components): Diagnose properly an illegal | |
36602 | circularity involving a private type whose completion includes a | |
36603 | self-referential component. | |
36604 | (Enter_Name): Use Is_Inherited_Operation to distinguish a source | |
36605 | renaming or an instantiation from an implicit derived operation. | |
36606 | ||
36607 | 2004-06-28 Pascal Obry <obry@gnat.com> | |
36608 | ||
36609 | * mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from | |
36610 | DLL. | |
36611 | (Library_File_Name_For): Idem. | |
36612 | ||
36613 | 2004-06-28 Matthew Gingell <gingell@gnat.com> | |
36614 | ||
36615 | * g-traceb.ads: Add explanatory note on the format of addresses | |
36616 | expected by addr2line. | |
36617 | ||
36618 | 2004-06-28 Jerome Guitton <guitton@act-europe.fr> | |
36619 | ||
36620 | * Makefile.in: Force debugging information on s-tasdeb.adb, | |
36621 | a-except.adb and s-assert.adb needed by the debugger. | |
36622 | ||
36623 | 2004-06-28 Vincent Celier <celier@gnat.com> | |
36624 | ||
36625 | * make.adb (Collect_Arguments_And_Compile): Change Flag1 to | |
36626 | Need_To_Build_Lib. | |
36627 | (Gnatmake): Ditto. | |
36628 | ||
36629 | * mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib | |
36630 | ||
36631 | * prj.adb: Minor reformatting | |
36632 | (Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2. | |
36633 | ||
36634 | * prj.ads: Comment updates | |
36635 | Minor reformatting | |
36636 | (Project_Data): Change Flag1 to Need_To_Build_Lib. | |
36637 | Remove Flag2: not used. | |
36638 | ||
36639 | * prj-dect.adb (Parse_Declarative_Items): Accept "null" as a | |
36640 | declaration. | |
36641 | ||
36642 | * gnat_ugn.texi: Put a "null;" declaration in one project file example | |
36643 | ||
36644 | * gnat_rm.texi: Document Empty declarations "null;". | |
36645 | ||
36646 | * makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in | |
36647 | front of the linker options. | |
36648 | (Link_Foreign): Put the global archives and the libraries in front of | |
36649 | the linker options. | |
36650 | ||
36651 | 2004-06-28 Javier Miranda <miranda@gnat.com> | |
36652 | ||
36653 | * rtsfind.adb: (Get_Unit_Name): Fix typo in comment | |
36654 | (RTU_Loaded): Code cleanup | |
36655 | (Set_RTU_Loaded): New procedure to register as *loaded* explicitly | |
36656 | withed predefined units. | |
36657 | ||
36658 | * rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded* | |
36659 | explicitly withed predefined units. | |
36660 | Fix typo in comment | |
36661 | ||
36662 | * sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded* | |
36663 | explicitly withed predefined units. | |
36664 | ||
bce3da32 RK |
36665 | 2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
36666 | ||
36667 | * ada-tree.def (DECL_STMT): Deleted. | |
36668 | * ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT. | |
36669 | (DECL_STMT_VAR): Deleted. | |
36670 | * decl.c: add_decl_stmt now add_decl_expr. | |
36671 | * gigi.h: Likewise. | |
36672 | * trans.c: Likewise. | |
15cd18b9 | 36673 | (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted. |
bce3da32 RK |
36674 | (gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus. |
36675 | (add_stmt): Only handle padded type here. | |
36676 | (add_stmt_with_node): Allow gnat_node to not be present. | |
36677 | (gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null. | |
36678 | (gnat_gimplify_stmt, case DECL_STMT): Deleted. | |
36679 | (gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer, | |
36680 | make a SAVE_EXPR for the entire fat pointer. | |
36681 | * utils.c (pushdecl): Walk a DECL_EXPR in global case. | |
36682 | (create_index_type): Make a DECL_EXPR. | |
36683 | (end_subprog_body): Don't call allocate_struct_function here but | |
36684 | do clear cfun. | |
36685 | ||
0da2c8ac AC |
36686 | 2004-06-25 Pascal Obry <obry@gnat.com> |
36687 | ||
36688 | * makegpr.adb (Build_Library): Remove parameter Lib_Address and | |
36689 | Relocatable from Build_Dynamic_Library call. | |
36690 | ||
36691 | * gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and | |
36692 | Relocatable are now synonym. | |
36693 | ||
36694 | * Makefile.in: Use s-parame-mingw.adb on MingW platform. | |
36695 | ||
36696 | * mlib-prj.adb (Build_Library): Remove DLL_Address constant definition. | |
36697 | Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library | |
36698 | call. | |
36699 | ||
36700 | * mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter | |
36701 | Lib_Address and Relocatable. | |
36702 | (Default_DLL_Address): Removed. | |
36703 | ||
6615c446 JO |
36704 | * mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, |
36705 | mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, | |
0da2c8ac AC |
36706 | mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb: |
36707 | (Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable. | |
36708 | (Default_DLL_Address): Removed. | |
36709 | ||
36710 | * mlib-tgt-mingw.adb: Ditto. | |
36711 | (Build_Dynamic_Library): Do not add "lib" prefix to the DLL name. | |
36712 | ||
36713 | * s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute | |
36714 | the initial thread stack size. | |
36715 | ||
36716 | * a-strmap.ads: Move package L to private part as it is not used in | |
36717 | the spec. Found while reading code. | |
36718 | ||
36719 | 2004-06-25 Olivier Hainque <hainque@act-europe.fr> | |
36720 | ||
36721 | * tracebak.c: Introduce support for a GCC infrastructure based | |
36722 | implementation of __gnat_backtrace. | |
36723 | ||
36724 | * raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record | |
36725 | any more. Use accessors instead. This eases maintenance and relaxes | |
36726 | some alignment constraints. | |
36727 | (_GNAT_Exception structure): Remove the Ada specific fields | |
36728 | (EID_For, Adjust_N_Cleanups_For): New accessors, exported by | |
36729 | a-exexpr.adb. | |
36730 | (is_handled_by, __gnat_eh_personality): Replace component references to | |
36731 | exception structure by use of the new accessors. | |
36732 | ||
36733 | * init.c (__gnat_initialize): Adjust comments to match the just | |
36734 | reverted meaning of the -static link-time option. | |
36735 | ||
36736 | * adaint.c (convert_addresses): Arrange not to define a stub for | |
36737 | mips-irix any more, as we now want to rely on a real version from a | |
36738 | recent libaddr2line. | |
36739 | ||
36740 | * a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that | |
36741 | the personality routine can use them and not have to rely on a C | |
36742 | counterpart of the record anymore. This simplifies maintenance and | |
36743 | relaxes the constraint of having Standard'Maximum_Alignment match | |
36744 | BIGGEST_ALIGNMENT. | |
36745 | Update comments, and add a section on the common header alignment issue. | |
36746 | ||
36747 | 2004-06-25 Geert Bosch <bosch@gnat.com> | |
36748 | ||
36749 | * a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in | |
36750 | polynomial approximation. Fixes inconsistency with Cody/Waite algorithm. | |
36751 | ||
36752 | 2004-06-25 Robert Dewar <dewar@gnat.com> | |
36753 | ||
36754 | * gnat_rm.texi: Fix section on component clauses to indicate that the | |
36755 | restriction on byte boundary placement still applies for bit packed | |
36756 | arrays. | |
36757 | Add comment on stack usage from Initialize_Scalars | |
36758 | ||
36759 | * gnat_ugn.texi: Add documentation for -gnatyLnnn | |
36760 | ||
36761 | * stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for | |
36762 | limiting nesting level. | |
36763 | ||
36764 | * usage.adb: Add line for -gnatyLnnn switch | |
36765 | ||
36766 | * g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads, | |
36767 | sem_ch13.adb, exp_aggr.adb: Minor reformatting | |
36768 | ||
36769 | * sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base | |
36770 | type as well as on the subtype. This corrects a problem in freeze in | |
36771 | setting alignments of atomic types. | |
36772 | ||
36773 | * sem_eval.ads: Minor comment typo fixed | |
36774 | ||
36775 | * par-util.adb (Push_Scope_Stack): Check for violation of max nesting | |
36776 | level. Minor reformatting. | |
36777 | ||
36778 | * fname.adb (Is_Predefined_File_Name): Require a letter after the | |
36779 | minus sign. This means that file names like a--b.adb will not be | |
36780 | considered predefined. | |
36781 | ||
36782 | * freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing | |
36783 | record Test new flag and give diagnostic for bad component clause. | |
36784 | (Freeze_Entity): Set alignment of array from component alignment in | |
36785 | cases where this is safe to do. | |
36786 | ||
36787 | * exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed | |
36788 | arrays. | |
36789 | ||
36790 | * cstand.adb: (Create_Standard): Set alignment of String to 1 | |
36791 | ||
36792 | * einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary | |
36793 | ||
36794 | * exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated | |
36795 | code in the common constrained array cases. | |
36796 | ||
36797 | * a-storio.adb: Change implementation to avoid possible alignment | |
36798 | problems on machines requiring strict alignment (data should be moved | |
36799 | as type Buffer, not type Elmt). | |
36800 | ||
36801 | * checks.adb (Apply_Array_Size_Check): Improve these checks by | |
36802 | killing the overflow checks which we really do not need (64-bits is | |
36803 | enough). | |
36804 | ||
36805 | 2004-06-25 Vincent Celier <celier@gnat.com> | |
36806 | ||
36807 | * makegpr.adb (Is_Included_In_Global_Archive): New Boolean function | |
36808 | (Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path | |
36809 | inconditionally for the main project. | |
36810 | (Recursive_Add_Archives.Add_Archive_Path): New procedure | |
36811 | (Link_Executables.Check_Time_Stamps): New procedure | |
36812 | (Link_Executables.Link_Foreign): New procedure | |
36813 | Changes made to reduce nesting level of this package | |
36814 | (Check): New procedure | |
36815 | (Add_Switches): When not in quiet output, check that a switch is not | |
36816 | the concatenation of several valid switches. If it is, issue a warning. | |
36817 | (Build_Global_Archive): If the global archive is rebuilt, linking need | |
36818 | to be done. | |
36819 | (Compile_Sources): Rebuilding a library archive does not imply | |
36820 | rebuilding the global archive. | |
36821 | (Build_Global_Archive): New procedure | |
36822 | (Build_Library): New name for Build_Archive, now only for library | |
36823 | project | |
36824 | (Check_Archive_Builder): New procedure | |
36825 | (Create_Global_Archive_Dependency_File): New procedure | |
36826 | (Gprmake): Call Build_Global_Archive before linking | |
36827 | * makegpr.adb: Use Other_Sources_Present instead of Sources_Present | |
36828 | throughout. | |
36829 | (Scan_Arg): Display the Copyright notice when -v is used | |
36830 | ||
36831 | * gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=) | |
36832 | for gnatls. | |
36833 | ||
36834 | * vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT | |
36835 | COMPILE. | |
36836 | Add new GNAT LIST qualifier /FILES= | |
36837 | Added qualifier /DIRECTORY= to GNAT METRIC | |
36838 | Added qualifier /FILES= to GNAT METRIC | |
36839 | Added qualifier /FILES to GNAT PRETTY | |
36840 | ||
36841 | * switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS, | |
36842 | to take into account both versions of the switch. | |
36843 | ||
36844 | * switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should | |
36845 | always be the last switch to the gcc driver. Disable switch storing so | |
36846 | that switches automatically added by the gcc driver are not put in the | |
36847 | ALI file. | |
36848 | ||
36849 | * prj.adb (Project_Empty): Take into account changes in components of | |
36850 | Project_Data. | |
36851 | ||
36852 | * prj.ads (Languages_Processed): New enumaration value All_Languages. | |
36853 | ||
36854 | * prj.ads (Project_Data): Remove component Lib_Elaboration: never | |
36855 | used. Split Boolean component Ada_Sources_Present in two Boolean | |
36856 | components Ada_Sources_Present and Other_Sources_Present. | |
36857 | Minor reformatting | |
36858 | ||
36859 | * prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present | |
36860 | instead of Sources_Present. | |
36861 | (Set_Ada_Paths.Add.Recursive_Add): Ditto | |
36862 | ||
36863 | * prj-nmsc.adb: Minor reformatting | |
36864 | (Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme | |
36865 | (Check_Ada_Naming_Scheme_Validity): New name of previous procedure | |
36866 | Check_Ada_Naming_Scheme. | |
36867 | Change Sources_Present to Ada_Sources_Present or Other_Sources_Present | |
36868 | throughout. | |
36869 | ||
36870 | * prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter | |
36871 | In_Limited. | |
36872 | Make sure that all cycles where there is at least one "limited with" | |
36873 | are detected. | |
36874 | (Parse_Single_Project): New Boolean parameter In_Limited | |
36875 | ||
36876 | * prj-proc.adb (Recursive_Check): When Process_Languages is | |
36877 | All_Languages, call first Prj.Nmsc.Ada_Check, then | |
36878 | Prj.Nmsc.Other_Languages_Check. | |
36879 | ||
36880 | * prj-proc.adb (Process): Use Ada_Sources_Present or | |
36881 | Other_Sources_Present (instead of Sources_Present) depending on | |
36882 | Process_Languages. | |
36883 | ||
36884 | * lang-specs.h: Keep -g and -m switches in the same order, and as the | |
36885 | last switches. | |
36886 | ||
36887 | * lib.adb (Switch_Storing_Enabled): New global Boolean flag | |
36888 | (Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to | |
36889 | False. | |
36890 | (Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is | |
36891 | False. | |
36892 | ||
36893 | * lib.ads (Disable_Switch_Storing): New procedure. | |
36894 | ||
36895 | * make.adb: Modifications to reduce nesting level of this package. | |
36896 | (Check_Standard_Library): New procedure | |
36897 | (Gnatmake.Check_Mains): New procedure | |
36898 | (Gnatmake.Create_Binder_Mapping_File): New procedure | |
36899 | (Compile_Sources.Compile): Add switch -gnatez as the last option | |
36900 | (Display): Never display -gnatez | |
36901 | ||
6615c446 | 36902 | * Makefile.generic: |
0da2c8ac AC |
36903 | When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT) |
36904 | ||
36905 | * gnatcmd.adb (Check_Project): New function | |
36906 | (Process_Link): New procedure to reduce nesting depth | |
36907 | (Check_Files): New procedure to reduce the nesting depth. | |
36908 | For GNAT METRIC, include the inherited sources in extending projects. | |
36909 | (GNATCmd): When GNAT LS is invoked with a project file and no files, | |
36910 | add the list of files from the sources of the project file. If this list | |
36911 | is too long, put it in a temp text files and use switch -files= | |
36912 | (Delete_Temp_Config_Files): Delete the temp text file that contains | |
36913 | a list of source for gnatpp or gnatmetric, if one has been created. | |
36914 | (GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources | |
36915 | in the project file is too large, create a temporary text file that | |
36916 | list them and pass it to the tool with "-files=<temp text file>". | |
36917 | (GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch | |
36918 | ||
36919 | * gnatlink.adb (Gnatlink): Do not compile with --RTS= when the | |
36920 | generated file is in not in Ada. | |
36921 | ||
36922 | * gnatls.adb: Remove all parameters And_Save that are no longer used. | |
36923 | (Scan_Ls_Arg): Add processing for -files= | |
36924 | (Usage): Add line for -files= | |
36925 | ||
36926 | * g-os_lib.adb (On_Windows): New global constant Boolean flag | |
36927 | (Normalize_Pathname): When on Windows and the path starts with a | |
36928 | directory separator, make sure that the resulting path will start with | |
36929 | a drive letter. | |
36930 | ||
36931 | * clean.adb (Clean_Archive): New procedure | |
36932 | (Clean_Project): When there is non-Ada code, delete the global archive, | |
36933 | the archive dependency files, the object files and their dependency | |
36934 | files, if they exist. | |
36935 | (Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only. | |
36936 | ||
36937 | 2004-06-25 Thomas Quinot <quinot@act-europe.fr> | |
36938 | ||
36939 | * sinfo.ads: Fix typo in comment. | |
36940 | ||
36941 | * sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses | |
36942 | the TSS for remote access-to-subprogram types, since these TSS are | |
36943 | always present once the type has been analyzed. | |
36944 | (RAS_E_Dereference): Same. | |
36945 | ||
36946 | * sem_attr.adb (Analyze_Attribute): When analysis of an attribute | |
36947 | reference raises Bad_Attribute, mark the reference as analyzed so the | |
36948 | node (and any children resulting from rewrites that could have occurred | |
36949 | during the analysis that ultimately failed) is not analyzed again. | |
36950 | ||
36951 | * exp_ch7.ads (Find_Final_List): Fix misaligned comment. | |
36952 | ||
36953 | * exp_dist.adb: Minor comment fix. | |
36954 | ||
36955 | * exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected | |
36956 | type is an anonymous access type, no unchecked deallocation of the | |
36957 | allocated object can occur. If the object is controlled, attach it with | |
36958 | a count of 1. This allows attachment to the Global_Final_List, if | |
36959 | no other relevant list is available. | |
36960 | (Get_Allocator_Final_List): For an anonymous access type that is | |
36961 | the type of a discriminant or record component, the corresponding | |
36962 | finalisation list is the one of the scope of the type. | |
36963 | ||
36964 | 2004-06-25 Ed Schonberg <schonberg@gnat.com> | |
36965 | ||
36966 | * sem_ch3.adb (Replace_Type): When computing the signature of an | |
36967 | inherited subprogram, use the first subtype if the derived type | |
36968 | declaration has no constraint. | |
36969 | ||
36970 | * exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array | |
36971 | before applying previous optimization. Minor code cleanup. | |
36972 | ||
36973 | * exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is | |
36974 | placed at the beginning of an unpacked record without explicit | |
36975 | alignment, a slice of it will be aligned and does not need a copy when | |
36976 | used as an actual. | |
36977 | ||
36978 | 2004-06-25 Ed Schonberg <schonberg@gnat.com> | |
36979 | ||
36980 | PR ada/15591 | |
36981 | PR ada/15592 | |
36982 | * sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute | |
36983 | reference is written with expressions mimicking parameters. | |
36984 | ||
36985 | 2004-06-25 Hristian Kirtchev <kirtchev@gnat.com> | |
36986 | ||
36987 | PR ada/15589 | |
36988 | * sem_ch3.adb (Build_Derived_Record_Type): Add additional check to | |
36989 | STEP 2a. The constraints of a full type declaration of a derived record | |
36990 | type are checked for conformance with those declared in the | |
36991 | corresponding private extension declaration. The message | |
36992 | "not conformant with previous declaration" is emitted if an error is | |
36993 | detected. | |
36994 | ||
36995 | 2004-06-25 Vasiliy Fofanov <fofanov@act-europe.fr> | |
36996 | ||
36997 | * g-traceb.ads: Document the need for -E binder switch in the spec. | |
36998 | ||
36999 | * g-trasym.ads: Document the need for -E binder switch in the spec. | |
37000 | ||
37001 | 2004-06-25 Jose Ruiz <ruiz@act-europe.fr> | |
37002 | ||
37003 | * sem_prag.adb: Add handling of pragma Detect_Blocking. | |
37004 | ||
37005 | * snames.h, snames.ads, snames.adb: Add entry for pragma | |
37006 | Detect_Blocking. | |
37007 | ||
37008 | * s-rident.ads: Change reference to pragma Detect_Blocking. | |
37009 | ||
37010 | * targparm.ads, targparm.adb: Allow pragma Detect_Blocking in | |
37011 | system.ads. | |
37012 | ||
37013 | * opt.ads (Detect_Blocking): New Boolean variable (defaulted to False) | |
37014 | to indicate whether pragma Detect_Blocking is active. | |
37015 | ||
37016 | * par-prag.adb: Add entry for pragma Detect_Blocking. | |
37017 | ||
37018 | * rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug | |
37019 | of not handling WITH. | |
37020 | Note that this replaces the previous update which was incorrect. | |
37021 | ||
37022 | 2004-06-25 Javier Miranda <miranda@gnat.com> | |
37023 | ||
37024 | * sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the | |
37025 | use-clauses to have a clean environment. | |
37026 | ||
37027 | * sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force | |
37028 | the installation of the use-clauses to stablish a clean environment in | |
37029 | case of compilation of a separate unit; otherwise the call to | |
37030 | use_one_package is protected by the barrier Applicable_Use. | |
37031 | ||
37032 | * sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force | |
37033 | the installation of the use-clauses to stablish a clean environment in | |
37034 | case of compilation of a separate unit. | |
37035 | (End_Use_Clauses): Minor comment cleanup. | |
37036 | ||
37037 | 2004-06-25 Sergey Rybin <rybin@act-europe.fr> | |
37038 | ||
37039 | * gnat_ugn.texi: Add description of the gnatpp 'files' switch | |
37040 | ||
65355d53 RH |
37041 | 2004-06-23 Richard Henderson <rth@redhat.com> |
37042 | ||
37043 | * trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call. | |
37044 | ||
c0e3aa48 RK |
37045 | 2004-06-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
37046 | ||
37047 | * decl.c (elaborate_expression, elaborate_expression_1): Arguments | |
37048 | now bool instead of int. | |
37049 | (gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF. | |
37050 | * trans.c (gnu_switch_label_stack): New function. | |
37051 | (gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the | |
37052 | elaboration of renamed entity returns. | |
37053 | (gnat_to_gnu, case N_Case_Statement): Add branches to end label. | |
37054 | (add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE. | |
37055 | (gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt. | |
37056 | (gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and | |
37057 | DECL_SIZE_UNIT and simplify variable-sized case. | |
37058 | (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted. | |
37059 | Callers changes to call gimplify_type_sizes and gimplify_one_sizepos. | |
37060 | (gnat_stabilize_reference): Add arg to COMPONENT_REF. | |
37061 | (build_unit_elab): Disable for now. | |
37062 | * utils.c (mark_visited): New function. | |
37063 | (pushdecl): Walk tree to call it for global decl. | |
37064 | (update_pointer_to): Update all variants of pointer and ref types. | |
37065 | Add arg to COMPONENT_REF. | |
37066 | (convert): Likewise. | |
37067 | Move check for converting between variants lower down. | |
37068 | * utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF. | |
37069 | (build_allocator): Don't force type of MODIFY_EXPR. | |
37070 | (gnat_mark_addressable, case VAR_DECL): Unconditionally call | |
37071 | put_var_into_stack. | |
37072 | ||
966389ee RK |
37073 | 2004-06-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
37074 | ||
37075 | * ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation. | |
37076 | * ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP. | |
37077 | * decl.c (gnat_to_gnu_entity): Also set force_global for imported | |
37078 | subprograms. | |
37079 | * trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack; | |
37080 | all callers changed. | |
37081 | (gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change | |
37082 | the way that EXIT_STMT finds the loop label. | |
37083 | (gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise. | |
37084 | (gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here. | |
37085 | (add_stmt): Use annotate_with_locus insted of setting directly. | |
37086 | (pos_to_construct): Set TREE_PURPOSE of each entry to index. | |
37087 | (gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF. | |
37088 | * utils.c (gnat_install_builtins): Install __builtin_memcmp. | |
37089 | (build_vms_descriptor): Add extra args to ARRAY_REF. | |
37090 | (convert): Use VIEW_CONVERT_EXPR between aggregate types. | |
37091 | * utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST): | |
37092 | New cases. | |
37093 | (build_binary_op): Don't make explicit CONVERT_EXPR. | |
37094 | Add extra rgs to ARRAY_REF. | |
37095 | ||
cc335f43 AC |
37096 | 2004-06-14 Pascal Obry <obry@gnat.com> |
37097 | ||
37098 | * gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on | |
37099 | Windows. Fix minor typo. | |
37100 | ||
37101 | * mlib-tgt-mingw.adb: New implementation using the GCC -shared option | |
37102 | which is now supported on Windows. With this implementation using the | |
37103 | Library Project feature is no different on Windows than on UNIX. | |
37104 | ||
37105 | 2004-06-14 Vincent Celier <celier@gnat.com> | |
37106 | ||
37107 | * makegpr.adb (Compile_Sources): Nothing to do when there are no | |
37108 | non-Ada sources. | |
37109 | ||
37110 | * mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment | |
37111 | ||
37112 | * prj-part.adb (Parse_Single_Project): When a duplicate project name is | |
37113 | found, show the project name and the path of the previously parsed | |
37114 | project file. | |
37115 | ||
37116 | 2004-06-14 Ed Schonberg <schonberg@gnat.com> | |
37117 | ||
37118 | * exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an | |
37119 | array, avoid copying the actual before the call. | |
37120 | ||
37121 | 2004-06-14 Thomas Quinot <quinot@act-europe.fr> | |
37122 | ||
37123 | * g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools. | |
37124 | Instead, allocate memory on worst-case alignment assumptions, and then | |
37125 | return an aligned address within the allocated zone. | |
37126 | ||
37127 | 2004-06-14 Robert Dewar <dewar@gnat.com> | |
37128 | ||
37129 | * bindgen.adb (Gen_Adainit_Ada): Do not generate external references to | |
37130 | elab entities in predefined units in No_Run_Time_Mode. | |
37131 | (Gen_Adainit_C): Same fix | |
37132 | (Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined | |
37133 | units in No_Run_Time_Mode | |
37134 | (Gen_Elab_Calls_C): Same fix | |
37135 | ||
37136 | * symbols-vms-alpha.adb: Minor reformatting | |
37137 | ||
37138 | * g-debpoo.ads: Minor reformatting | |
37139 | ||
37140 | * lib.adb (In_Same_Extended_Unit): Version working on node id's | |
37141 | ||
37142 | * lib.ads (In_Same_Extended_Unit): Version working on node id's | |
37143 | ||
37144 | * lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit | |
37145 | working on nodes. | |
37146 | ||
37147 | * make.adb: Minor reformatting | |
37148 | ||
37149 | * par-ch12.adb: Minor reformatting | |
37150 | ||
37151 | * par-prag.adb: Add dummy entry for pragma Profile_Warnings | |
37152 | ||
37153 | * prj-strt.adb: Minor reformatting | |
37154 | ||
37155 | * restrict.ads, restrict.adb: Redo handling of profile restrictions to | |
37156 | be more general. | |
37157 | ||
37158 | * sem_attr.adb: Minor reformatting | |
37159 | ||
37160 | * sem_ch7.adb: Minor reformatting | |
37161 | ||
37162 | * sem_elab.adb (Check_A_Call): Deal with problem of calling init proc | |
37163 | for type in the same unit as the object declaration. | |
37164 | ||
37165 | * sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows | |
37166 | static string expressions and not just string literals. | |
37167 | Minor reformatting | |
37168 | (Set_Warning): Reset restriction warning flag for restriction pragma | |
37169 | Implement pragma Profile_Warnings | |
37170 | Implement pragma Profile (Restricted) | |
37171 | Give obolescent messages for old restrictions and pragmas | |
37172 | ||
37173 | * snames.h, snames.ads, snames.adb: Add new entry for pragma | |
37174 | Profile_Warnings. | |
37175 | ||
37176 | * s-rident.ads: Add declarations for restrictions required by profile | |
37177 | Restricted and profile Ravenscar. | |
37178 | ||
37179 | * targparm.ads, targparm.adb: Allow pragma Profile in system.ads | |
37180 | ||
37181 | * gnat_ugn.texi: Correct some missing entries in the list of GNAT | |
37182 | configuration pragmas. | |
37183 | ||
5453d5bd AC |
37184 | 2004-06-11 Vincent Celier <celier@gnat.com> |
37185 | ||
37186 | * mlib-tgt-vms-alpha.adb (Build_Dynamic_Library): Issue switch -R to | |
37187 | gnatsym, when symbol policy is Restricted. | |
37188 | ||
37189 | * mlib-tgt-vms-ia64.adb (Build_Dynamic_Library): Issue switch -R to | |
37190 | gnatsym, when symbol policy is Restricted. | |
37191 | ||
37192 | * symbols-vms-alpha.adb (Initialize): When symbol policy is Restricted, | |
37193 | read the symbol file. | |
37194 | (Finalize): Fail in symbol policy Restricted if a symbol in the original | |
37195 | symbol file is not in the object files. Do not create a new symbol file | |
37196 | when symbol policy is Restricted. | |
37197 | ||
37198 | * gnatbind.adb (Gnatbind): Initialize Snames, because Snames is used | |
37199 | in Scng. | |
37200 | ||
37201 | * gnatsym.adb (Parse_Vmd_Line): Process new switch -R for symbol policy | |
37202 | Restricted. | |
37203 | (Usage): Line for new switch -R | |
37204 | ||
37205 | * make.adb (Initialize): When the platform is not VMS, add the | |
37206 | directory where gnatmake is invoked in the front of the path, if | |
37207 | gnatmake is invoked with directory information. Change the Scan_Args | |
37208 | while loop to a for loop. | |
37209 | (Recursive_Compute_Depth): Remove parameter Visited. Improve efficiency: | |
37210 | if Depth is equal or greater than the proposed depth, there is nothing | |
37211 | to do. | |
37212 | (Initialize): Call Recursive_Compute_Depth with initial Depth equal to 1 | |
37213 | instead of 0. | |
37214 | ||
37215 | * prj.ads: Add new symbol policy Restricted. | |
37216 | ||
37217 | * prj-dect.adb (Parse_Case_Construction): Call End_Case_Construction | |
37218 | with the new parameters Check_All_Labels and Case_Location. | |
37219 | ||
37220 | * prj-nmsc.adb (Ada_Check): Process new symbol policy Restricted | |
37221 | (Library_Symbol_File needs to be defined). | |
37222 | ||
37223 | * prj-strt.adb (End_Case_Construction): New parameters Check_All_Labels | |
37224 | and Case_Location If Check_All_Labels is True, check that all values of | |
37225 | the string type are used, and output warning(s) if they are not. | |
37226 | ||
37227 | * prj-strt.ads (End_Case_Construction): New parameters Check_All_Labels | |
37228 | and Case_Location. | |
37229 | ||
37230 | * gnat_ugn.texi: Reorder subclauses in menus "Switches for gcc" | |
37231 | ||
37232 | * gnat_ugn.texi: Update documentation about the library directory in | |
37233 | Library Projects. | |
37234 | ||
37235 | * makegpr.adb (Display_Command): In verbose mode, also display the | |
37236 | value of the CPATH env var, when the compiler is gcc. | |
37237 | (Initialize): Change the Scan_Args while loop to a for loop | |
37238 | (Compile_Individual_Sources): Change directory to object directory | |
37239 | before compilations. | |
37240 | ||
37241 | * symbols.ads: New symbol policy Restricted. | |
37242 | ||
37243 | 2004-06-11 Olivier Hainque <hainque@act-europe.fr> | |
37244 | ||
37245 | * a-except.adb (Raise_After_Setup family): Remove. The responsibility | |
37246 | is now taken care of internally in the Exception_Propagation package | |
37247 | and does not require clients assistance any more. | |
37248 | ||
37249 | * a-exexpr.adb (Is_Setup_And_Not_Propagated, | |
37250 | Set_Setup_And_Not_Propagated, and Clear_Setup_And_Not_Propagated): New | |
37251 | functions. Helpers to maintain a predicate required in the handling of | |
37252 | occurrence transfer between tasks. | |
37253 | This is now handled internally and does not require clients assistance | |
37254 | for the setup/propagate separation anymore. | |
37255 | (Setup_Exception, Propagate_Exception): Simplify the Private_Data | |
37256 | allocation strategy, handle the Setup_And_Not_Propagated predicate and | |
37257 | document. | |
37258 | ||
37259 | * s-taenca.adb (Check_Exception): Use raise_with_msg instead of | |
37260 | raise_after_setup, now that everything is handled internally within the | |
37261 | setup/propagation engine. | |
37262 | ||
37263 | 2004-06-11 Hristian Kirtchev <kirtchev@gnat.com> | |
37264 | ||
37265 | * exp_ch6.adb (Expand_Inlined_Call): Add function Formal_Is_Used_Once. | |
37266 | Add additional conditions for the case of an actual being a simple | |
37267 | name or literal. Improve inlining by preventing the generation | |
37268 | of temporaries with a short lifetime (one use). | |
37269 | ||
37270 | 2004-06-11 Hristian Kirtchev <kirtchev@gnat.com> | |
37271 | ||
37272 | PR ada/15587 | |
5453d5bd AC |
37273 | * einfo.ads: Minor comment updates for Has_Completion and |
37274 | E_Constant list of flags. | |
37275 | ||
37276 | * sem_ch3.adb (Analyze_Object_Declaration): Full constant declarations | |
37277 | and constant redeclarations now set the Has_Completion flag of their | |
37278 | defining identifiers. | |
37279 | ||
37280 | * sem_ch7.adb (Analyze_Package_Spec): Add procedure | |
37281 | Inspect_Deferred_Constant_Completion. | |
37282 | Used to detect private deferred constants that have not been completed | |
37283 | either by a constant redeclaration or pragma Import. Emits error message | |
37284 | "constant declaration requires initialization expression". | |
37285 | ||
37286 | * sem_prag.adb (Process_Import_Or_Interface): An Import pragma now | |
37287 | completes a deferred constant. | |
37288 | ||
37289 | 2004-06-11 Geert Bosch <bosch@gnat.com> | |
37290 | ||
37291 | * eval_fat.adb (Decompose_Int): Fix rounding of negative numbers. | |
37292 | ||
37293 | * s-fatgen.adb (Gradual_Scaling): Correct off-by-one error in | |
37294 | calculating exponent for scaling denormal numbers. | |
37295 | (Leading_Part): Properly raise Constraint_Error for zero or negative | |
37296 | Adjustment. | |
37297 | (Remainder): Properly raise Constraint_Error for zero divisor. | |
37298 | ||
37299 | 2004-06-11 Thomas Quinot <quinot@act-europe.fr> | |
37300 | ||
37301 | * sem_util.adb: Minor reformatting. | |
37302 | ||
37303 | * exp_ch2.adb (Expand_Entry_Parameter): Generate an explicit | |
37304 | dereference when accessing the entry parameter record. | |
37305 | (Check_Array_Type): Always check for possible implicit dereference. | |
37306 | (maybe_implicit_dereference): Rename to check_no_implicit_derefence. | |
37307 | Abort if a pointer is still present (denoting that an implicit | |
37308 | dereference was left in the tree by the front-end). | |
37309 | ||
37310 | * sem_attr.adb (Expand_Entry_Parameter): Generate an explicit | |
37311 | dereference when accessing the entry parameter record. | |
37312 | (Check_Array_Type): Always check for possible implicit dereference. | |
37313 | (maybe_implicit_dereference): Rename to check_no_implicit_derefence. | |
37314 | Abort if a pointer is still present (denoting that an implicit | |
37315 | dereference was left in the tree by the front-end). | |
37316 | ||
37317 | 2004-06-11 Emmanuel Briot <briot@act-europe.fr> | |
37318 | ||
37319 | * g-debpoo.adb (Deallocate, Dereference): Add prefix "error:" to error | |
37320 | message, like the compiler itself does. Easier to parse the output. | |
37321 | ||
37322 | * g-debpoo.ads: (Allocate, Deallocate, Dereference): Add comments. | |
37323 | ||
37324 | * gnat_ugn.texi (gnatxref, gnatfind): Clarify that source names should | |
37325 | be base names, and not includes directories. | |
37326 | ||
37327 | 2004-06-11 Arnaud Charlet <charlet@act-europe.fr> | |
37328 | ||
37329 | * Makefile.generic ($(EXEC)): Depend on $(OBJECTS), not $(OBJ_FILES), | |
37330 | so that dependencies are properly taken into account by make. | |
37331 | ||
37332 | 2004-06-11 Arnaud Charlet <charlet@act-europe.fr> | |
37333 | ||
37334 | PR ada/15622 | |
37335 | * s-unstyp.ads, s-maccod.ads, sem_ch8.adb, s-auxdec.ads, | |
37336 | exp_intr.adb, s-auxdec-vms_64.ads: Fix typo: instrinsic -> intrinsic | |
37337 | ||
37338 | 2004-06-11 Jerome Guitton <guitton@act-europe.fr> | |
37339 | ||
37340 | * Makefile.in (install-gnatlib): install target-specific run-time files. | |
37341 | ||
37342 | * Make-lang.in: Remove obsolete targets. | |
37343 | ||
37344 | 2004-06-11 Ed Schonberg <schonberg@gnat.com> | |
37345 | ||
37346 | * par-ch12.adb (P_Generic): Add scope before analyzing subprogram | |
37347 | specification, to catch misuses of program unit names. | |
37348 | ||
37349 | * sem_res.adb (Resolve_Type_Conversion): Do not emit warnings on | |
37350 | superfluous conversions in an instance. | |
37351 | ||
37352 | 2004-06-11 Ed Schonberg <schonberg@gnat.com> | |
37353 | ||
37354 | PR ada/15403 | |
5453d5bd AC |
37355 | * sem_ch12.adb (Save_References): If operator node has been folded to |
37356 | enumeration literal, associated_node must be discarded. | |
37357 | ||
37358 | 2004-06-11 Jose Ruiz <ruiz@act-europe.fr> | |
37359 | ||
37360 | * s-stchop-vxworks.adb: Add required pragma Convention to | |
37361 | Task_Descriptor because it is updated by a C function. | |
37362 | ||
a98f59be AC |
37363 | 2004-06-08 Arnaud Charlet <charlet@act-europe.fr> |
37364 | ||
37365 | PR ada/15568 | |
a98f59be AC |
37366 | * Makefile.in: Remove target specific SO_OPT on IRIX |
37367 | ||
821e1ea1 RK |
37368 | 2004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
37369 | ||
37370 | * ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted. | |
37371 | (GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise. | |
37372 | (BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise. | |
37373 | (ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise. | |
37374 | (STMT_STMT, USE_STMT): New statement codes. | |
37375 | (LOOP_STMT, EXIT_STMT): Make slight semantic changes. | |
37376 | * ada-tree.h: Reflect above changes. | |
15cd18b9 | 37377 | (struct tree_loop_id): Deleted. |
821e1ea1 RK |
37378 | (union lang_tree_node, struct lang_decl, struct lang_type): |
37379 | Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC | |
37380 | and DECL_LANGUAGE_SPECIFIC to reflect these changes. | |
37381 | (DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted. | |
37382 | (IS_ADA_STMT): New macro. | |
37383 | * decl.c (annotate_decl_with_node): New function. | |
37384 | (gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno. | |
37385 | (gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR. | |
37386 | Call add_stmt_with_node to do needed assignments. | |
37387 | Add call to update setjmp buffer directly, not via EXPR_STMT. | |
37388 | (maybe_variable): Argment GNAT_NODE deleted. | |
37389 | * gigi.h (maybe_variable): Likewise. | |
37390 | (make_transform, add_stmt_with_node, set_block_for_group): New. | |
37391 | (gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise. | |
37392 | (set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise. | |
37393 | (discard_file_names, gnu_block_stack, gnat_to_code): Deleted. | |
37394 | (set_lineno, set_lineno_from_sloc): Likewise. | |
37395 | (record_code_position, insert_code_for): Likewise. | |
37396 | (gnat_poplevel): Now returns void. | |
37397 | (end_subprog_body): Now takes argument. | |
37398 | * misc.c (cgraph.h, tree-inline.h): New includes. | |
37399 | (gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted. | |
37400 | (gnat_post_options, LANG_HOOKS_POST_OPTIONS): New. | |
37401 | (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise. | |
37402 | (LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise. | |
37403 | (gnat_parse_file): Don't set immediate_size_expand. | |
37404 | Call cgraph functions. | |
37405 | (gnat_expand_expr): Remove most cases. | |
37406 | (record_code_position, insert_code_for): Remove from here. | |
37407 | * trans.c (toplev.h, tree-gimple.h): Now included. | |
37408 | (discard_file_names): Deleted. | |
37409 | (gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del. | |
37410 | (first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise. | |
37411 | (struct stmt_group, current_stmt_group, stmt_group_free_list): New. | |
37412 | (gnu_stack_free_list, record_cost_position, insert_code_for): Likewise. | |
37413 | (add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise. | |
37414 | (gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise. | |
37415 | (gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise. | |
37416 | (set_block_for_group, add_stmt_list): Likewise. | |
37417 | (start_stmt_group): Renamed from start_block_stmt. | |
37418 | (end_stmt_group): Likewise, from end_block_stmt. | |
37419 | (build_stmt_group): Likewise, from build_block_stmt, also add arg. | |
37420 | (gigi): Don't set discard_file_names or call set_lineno. | |
37421 | Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code. | |
37422 | (tree_transform): Deleted, now renamed to be gnat_to_gnu. | |
37423 | Numerous changes throughout to reflect new names and complete | |
37424 | function-at-a-time implementation. | |
37425 | (gnat_expand_stmt): Delete or comment out all cases. | |
37426 | (process_inlined_subprograms): Use add_stmt. | |
37427 | (process_decls): Use gnat_to_gnu, not gnat_to_code, and don't | |
37428 | call set_lineno; also remove unneeded block handling. | |
37429 | (process_type): Remove unneeded block handling. | |
37430 | (build_unit_elab): Remove calls to deleted functions. | |
37431 | * utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include. | |
37432 | (tree-dump.h): Likewise. | |
37433 | (struct ada_binding_level): Add field jmpbuf_decl. | |
37434 | (gnat_define_builtin, gnat_install_builtins): New. | |
37435 | (gnat_gimplify_function, gnat_finalize): Likewise. | |
37436 | (gnat_poplevel): No longer return BLOCK, set it instead. | |
37437 | Remove code dealing with nested functions. | |
37438 | (gnat_init_decl_processing): Also set size_type_node. | |
37439 | Call gnat_install_builtins. | |
37440 | (create_var_decl): Don't set DECL_INIT_BY_ASSIGN. | |
37441 | (create_subprog_decl): Change handling of inline_flag; set TREE_STATIC. | |
37442 | Remove special-case for "main". | |
37443 | (end_subprog_body): Add arg and rework for tree-ssa. | |
37444 | (convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR. | |
37445 | Add case for BOOLEAN_TYPE. | |
37446 | * utils2.c (rtl.h): Now include. | |
37447 | (build_call_raise): Test Debug_Flag_NN directly. | |
37448 | (build_call_alloc_dealloc): Don't use local stack allocation for now. | |
37449 | (gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted. | |
37450 | (gnat_mark_addressable, case VAR_DECL): Handle both early & late cases. | |
37451 | ||
0ab80019 AC |
37452 | 2004-06-07 Robert Dewar <dewar@gnat.com> |
37453 | ||
37454 | * a-direct.ads, einfo.ads: Minor comment updates | |
37455 | ||
37456 | * s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb, | |
37457 | s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb, | |
37458 | s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb, | |
37459 | s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb, | |
37460 | s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting. | |
37461 | ||
37462 | * s-interr-sigaction.adb: Remove unreferenced variable | |
37463 | (Attached_Interrupts). Minor reformatting. | |
37464 | Avoid use of variable I (replace by J). | |
37465 | ||
37466 | * par-ch10.adb: Fix text of one error message | |
37467 | ||
37468 | * checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads, | |
37469 | exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb, | |
37470 | exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb, | |
37471 | opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb, | |
37472 | par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb, | |
37473 | par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb, | |
6615c446 | 37474 | sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb, |
0ab80019 AC |
37475 | sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, |
37476 | sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb, | |
37477 | sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb, | |
37478 | snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada | |
37479 | 2005 support. | |
37480 | ||
37481 | 2004-06-07 Doug Rupp <rupp@gnat.com> | |
37482 | ||
37483 | * mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb | |
37484 | ||
37485 | * s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb | |
37486 | ||
37487 | * mlib-tgt-vms-ia64.adb: New file. | |
37488 | ||
37489 | * Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb | |
37490 | Add mlib-tgt-vms-ia64.adb | |
37491 | Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb. | |
37492 | Move to alpha specific ifeq section. | |
37493 | Add VMS specific versions of symbols.adb | |
37494 | Renaming of 5q vms files. | |
37495 | ||
37496 | * 5qsystem.ads renamed to system-vms_64.ads. | |
37497 | ||
37498 | 2004-06-07 Vincent Celier <celier@gnat.com> | |
37499 | ||
37500 | * a-calend.ads: Add a GNAT Note comment after function Time_Of to | |
37501 | explain that when a time of day corresponding to the non existing hour | |
37502 | on the day switching to DST is specified, Split may return a different | |
37503 | value for Seconds. | |
37504 | ||
37505 | * gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar | |
37506 | to GNAT PRETTY. | |
37507 | ||
37508 | * g-os_lib.adb (OpenVMS): New Boolean value imported from System. | |
37509 | (Normalize_Pathname): Only resolve VMS logical names when on VMS. | |
37510 | ||
37511 | * mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize | |
37512 | to False. | |
37513 | If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to | |
37514 | the linking options. | |
37515 | (Build_Library.Check_Libs): On VMS, if there is a dependency on | |
37516 | g-trasym.ads, set Gtrasymobj_Needed to True. | |
37517 | ||
37518 | * prj-attr.adb: Add new package Metrics for gnatmetric | |
37519 | ||
37520 | * prj-nmsc.adb (Record_Other_Sources): Put source file names in | |
37521 | canonical case to take into account files with upper case characters on | |
37522 | Windows. | |
37523 | (Ada_Check): Load the reference symbol file name in the name buffer to | |
37524 | check it, not the symbol file name. | |
37525 | ||
37526 | * snames.ads, snames.adb: Add standard name Metrics (name of project | |
37527 | file package for gnatmetric). | |
37528 | ||
37529 | * vms_conv.ads: Add Metric to Comment_Type | |
37530 | ||
37531 | * vms_conv.adb (Initialize): Add component dor Metric in Command_List | |
37532 | ||
37533 | * vms_data.ads: Add qualifiers for GNAT METRIC | |
37534 | ||
37535 | * makegpr.adb (Link_Executables): Take into account the switches | |
37536 | specified in package Linker of the main project. | |
37537 | ||
37538 | 2004-06-07 Thomas Quinot <quinot@act-europe.fr> | |
37539 | ||
37540 | * bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so | |
37541 | the index of the last element is Units.Last, not Units.Table'Last | |
37542 | (which is usually not a valid index within the actually allocated | |
37543 | storage for the table). | |
37544 | ||
37545 | * exp_ch4.adb (Insert_Dereference_Action): Change predicate that | |
37546 | determines whether to generate a call to a checked storage pool | |
37547 | Dereference action. | |
37548 | Generate such a call only for a dereference that either comes from | |
37549 | source, or is the result of rewriting a dereference that comes from | |
37550 | source. | |
37551 | ||
37552 | 2004-06-07 Romain Berrendonner <berrendo@act-europe.fr> | |
37553 | ||
37554 | * bindgen.adb (Gen_Output_File): Add support for GAP builds. | |
37555 | ||
37556 | 2004-06-07 Eric Botcazou <ebotcazou@act-europe.fr> | |
37557 | ||
37558 | (gnat_to_gnu_entity) <E_Array_Subtype>: For multi-dimensional arrays at | |
37559 | file level, elaborate the stride for inner dimensions in alignment | |
37560 | units, not bytes. | |
37561 | ||
37562 | * exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned | |
37563 | in a comment. | |
37564 | ||
37565 | 2004-06-07 Javier Miranda <miranda@gnat.com> | |
37566 | ||
37567 | * exp_ch6.adb: Correct wrong modification in previous patch | |
37568 | ||
37569 | 2004-06-07 Vasiliy Fofanov <fofanov@act-europe.fr> | |
37570 | ||
37571 | * g-trasym.ads: Corrected comment to properly reflect level of support | |
37572 | on VMS. | |
37573 | ||
37574 | 2004-06-07 Hristian Kirtchev <kirtchev@gnat.com> | |
37575 | ||
37576 | * lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It | |
37577 | includes case of a variable referenced on the left hand side of an | |
37578 | assignment, therefore remove redundant code. Variables and prefixes of | |
37579 | indexed or selected components are now marked as referenced on left | |
37580 | hand side. Warnings are now properly emitted when variables or prefixes | |
37581 | are assigned but not read. | |
37582 | ||
37583 | * sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to | |
37584 | left hand side referenced variables. Private access types do not | |
37585 | produce the warning "variable ... is assigned but never read". | |
37586 | Add also additional checks to left hand side referenced variables. | |
37587 | Aliased, renamed objects and access types do not produce the warning | |
37588 | "variable ... is assigned but never read" since other entities may read | |
37589 | the memory location. | |
37590 | ||
37591 | 2004-06-07 Jerome Guitton <guitton@act-europe.fr> | |
37592 | ||
37593 | * Makefile.in: In the powerpc/vxworks-specific section, restore | |
37594 | EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed | |
37595 | by mistake). | |
37596 | ||
37597 | 2004-06-07 Ed Schonberg <schonberg@gnat.com> | |
37598 | ||
37599 | * sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of | |
37600 | predefined operators. | |
37601 | Removes spurious type errors from g-trasym-vms.adb. | |
37602 | ||
37603 | * sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is | |
37604 | distinct from the operator appearing in the source, call appropriate | |
37605 | routine to insert conversions when needed, and complete resolution of | |
37606 | node. | |
37607 | (Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of | |
37608 | interpretations for rewritten right operand. | |
37609 | (Set_Mixed_Mode_Operand): Handle properly a universal real operand when | |
37610 | the other operand is overloaded and the context is a type conversion. | |
37611 | ||
37612 | 2004-06-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
37613 | ||
37614 | * ada-tree.def (BLOCK_STMT): Now has two operands. | |
37615 | (BREAK_STMT): New. | |
37616 | ||
37617 | * ada-tree.h: (BLOCK_STMT_BLOCK): New macro. | |
37618 | ||
37619 | * gigi.h: (gnat_poplevel): Now returns a tree. | |
37620 | ||
37621 | * trans.c (end_block_stmt): Add arg; all callers changed. | |
37622 | (tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN. | |
37623 | (start_block_stmt): Clear BLOCK_STMT_BLOCK. | |
37624 | (add_stmt): Set TREE_TYPE. | |
37625 | (gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK. | |
37626 | (gnat_expand_stmt, case BREAK_STMT): New case. | |
37627 | ||
37628 | * utils.c (gnat_poplevel): Return a BLOCK, if we made one. | |
37629 | ||
37630 | 2004-06-07 Jose Ruiz <ruiz@act-europe.fr> | |
37631 | ||
37632 | * s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the | |
37633 | procedure Set_Stack_Size that is not needed. | |
37634 | ||
37635 | 2004-06-07 Sergey Rybin <rybin@act-europe.fr> | |
37636 | ||
37637 | * gnat_ugn.texi: Clarify the case when non-standard naming scheme is | |
37638 | used for gnatpp input file and for the files upon which it depends | |
37639 | ||
37640 | 2004-06-07 Ben Brosgol <brosgol@gnat.com> | |
37641 | ||
37642 | * gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter | |
37643 | ||
37644 | 2004-06-07 Arnaud Charlet <charlet@act-europe.fr> | |
37645 | ||
37646 | * gnatvsn.ads: Bump version numbers appropriately. | |
37647 | Add new build type. | |
37648 | ||
37649 | 2004-06-07 Pascal Obry <obry@gnat.com> | |
37650 | ||
37651 | * gnat_ugn.texi: Improve comments about imported names and link names | |
37652 | on Windows. Add a note about the requirement to use -k gnatdll's option | |
37653 | when working with a DLL which has stripped stdcall symbols (no @nn | |
37654 | suffix). | |
37655 | ||
8a36a0cc AC |
37656 | 2004-05-27 Vincent Celier <celier@gnat.com> |
37657 | ||
37658 | * vms_data.ads: Add new GNAT PRETTY qualifiers /NO_BACKUP and | |
37659 | COMMENTS_LAYOUT=UNTOUCHED | |
37660 | ||
37661 | * symbols-vms.adb, symbols-vms-alpha.adb: Renamed symbols-vms.adb to | |
37662 | symbols-vms-alpha.adb | |
37663 | ||
37664 | 2004-05-27 Thomas Quinot <quinot@act-europe.fr> | |
37665 | ||
37666 | * sem.ads: Clarify documentation on checks suppression. | |
37667 | ||
37668 | * einfo.ads (Is_Known_Non_Null): Minor comment typo fix and rephrasing. | |
37669 | ||
37670 | 2004-05-27 Ed Schonberg <schonberg@gnat.com> | |
37671 | ||
37672 | * sem_util.adb (Is_Descendent_Of): Examine properly all ancestors in | |
37673 | the case of multiple derivations. | |
37674 | (Is_Object_Reference): For a selected component, verify that the prefix | |
37675 | is itself an object and not a value. | |
37676 | ||
37677 | * sem_ch12.adb (Same_Instantiated_Constant): New name for | |
37678 | Same_Instantiated_Entity. | |
37679 | (Same_Instantiated_Variable): Subsidiary to | |
37680 | Check_Formal_Package_Instance, to recognize actuals for in-out generic | |
37681 | formals that are obtained from a previous formal package. | |
37682 | (Instantiate_Subprogram_Body): Emit proper error when | |
37683 | generating code and the proper body of a stub is missing. | |
37684 | ||
37685 | * sem_ch4.adb (Remove_Address_Interpretations): If the operation still | |
37686 | has a universal interpretation, do the disambiguation here. | |
37687 | ||
37688 | * exp_ch4.adb (Expand_N_Type_Conversion, | |
37689 | Expand_N_Unchecked_Type_Conversion): Special handling when target type | |
37690 | is Address, to avoid typing anomalies when Address is a visible integer | |
37691 | type. | |
37692 | ||
37693 | * exp_ch6.adb (Expand_N_Subprogram_Body): Use Is_Descendent_Of_Address | |
37694 | to determine whether a subprogram should not be marked Pure, even when | |
37695 | declared in a pure package. | |
37696 | ||
37697 | 2004-05-27 Jose Ruiz <ruiz@act-europe.fr> | |
37698 | ||
37699 | * gnat_ugn.texi: Replace pragma Ravenscar by pragma Profile. | |
37700 | ||
37701 | * gnat_rm.texi: Replace Max_Entry_Queue_Depth by Max_Entry_Queue_Length | |
37702 | Document No_Dynamic_Attachment, that supersedes No_Dynamic_Interrupts. | |
37703 | Update the documentation about the Ravenscar profile, following the | |
37704 | definition found in AI-249. | |
37705 | ||
37706 | * sem_prag.adb: Use FIFO_Within_Priorities and Ceiling_Locking when | |
37707 | setting the Profile (Ravenscar). This must be done in addition to | |
37708 | setting the required restrictions. | |
37709 | ||
37710 | * rtsfind.ads: Add the set of operations defined in package | |
37711 | Ada.Interrupts. | |
37712 | ||
37713 | * exp_ch6.adb: Check whether we are violating the No_Dynamic_Attachment | |
37714 | restriction. | |
37715 | ||
37716 | 2004-05-27 Eric Botcazou <ebotcazou@act-europe.fr> | |
37717 | ||
37718 | lang-specs.h: Always require -c or -S and always redirect to /dev/null | |
37719 | if -gnatc or -gnats is passed. | |
37720 | ||
37721 | 2004-05-27 Hristian Kirtchev <kirtchev@gnat.com> | |
37722 | ||
37723 | * sem_prag.adb (Sig_Flags): A Pragma_Unchecked_Union does not count as | |
37724 | a significant reference. Warnings are now properly emitted when a | |
37725 | discriminated type is not referenced. | |
37726 | ||
37727 | * lib-xref.adb (Generate_Reference): A deferred constant completion, | |
37728 | record representation clause or record type discriminant does not | |
37729 | produce a reference to its corresponding entity. Warnings are now | |
37730 | properly emitted when deferred constants and record types are not | |
37731 | referenced. | |
37732 | ||
37733 | 2004-05-27 Geert Bosch <bosch@gnat.com> | |
37734 | ||
37735 | * Makefile.in: Use long version of libm routines on ia64 gnu/linux. | |
37736 | Fixes ACATS Annex G tests. | |
37737 | ||
37738 | 2004-05-27 Robert Dewar <dewar@gnat.com> | |
37739 | ||
37740 | * rtsfind.adb (RTU_Loaded): Temporary kludge to get past bug of not | |
37741 | handling WITH | |
37742 | ||
37743 | 2004-05-27 Arnaud Charlet <charlet@act-europe.fr> | |
37744 | ||
37745 | * s-interr.adb (Server_Task): Take into account case of early return | |
37746 | from sigwait under e.g. linux. | |
37747 | ||
37748 | 2004-05-27 Sergey Rybin <rybin@act-europe.fr> | |
37749 | ||
37750 | * gnat_ugn.texi: Add description for the new gnatpp options: | |
37751 | -rnb - replace the original source without creating its backup copy | |
37752 | -c0 - do not format comments | |
37753 | ||
0fb2ea01 AC |
37754 | 2004-05-24 Geert Bosch <bosch@gnat.com> |
37755 | ||
37756 | * a-numaux-x86.adb (Reduce): Reimplement using an approximation of Pi | |
37757 | with 192 bits of precision, sufficient to reduce a double-extended | |
37758 | arguments X with a maximum relative error of T'Machine_Epsilon, for X | |
37759 | in -2.0**32 .. 2.0**32. | |
37760 | (Cos, Sin): Always reduce arguments of 1/4 Pi or larger, to prevent | |
37761 | reduction by the processor, which only uses a 68-bit approximation of | |
37762 | Pi. | |
37763 | (Tan): Always reduce arguments and compute function either using | |
37764 | the processor's fptan instruction, or by dividing sin and cos as needed. | |
37765 | ||
37766 | 2004-05-24 Doug Rupp <rupp@gnat.com> | |
37767 | ||
37768 | * adaint.c (__gnat_readdir): Cast CRTL function retun value to avoid | |
37769 | gcc error on 32/64 bit VMS. | |
37770 | ||
37771 | 2004-05-24 Olivier Hainque <hainque@act-europe.fr> | |
37772 | ||
37773 | * init.c (__gnat_error_handler): Handle EEXIST as EACCES for SIGSEGVs, | |
37774 | since this is what we get for stack overflows although not documented | |
37775 | as such. | |
37776 | Document the issues which may require adjustments to our signal | |
37777 | handlers. | |
37778 | ||
37779 | 2004-05-24 Ed Schonberg <schonberg@gnat.com> | |
37780 | ||
37781 | * inline.adb (Add_Scope_To_Clean): Do not add cleanup actions to the | |
37782 | enclosing dynamic scope if the instantiation is within a generic unit. | |
37783 | ||
37784 | 2004-05-24 Arnaud Charlet <charlet@act-europe.fr> | |
37785 | ||
37786 | * exp_dbug.ads: Fix typo. | |
37787 | ||
37788 | * Makefile.in: s-osinte-linux-ia64.ads was misnamed. | |
37789 | Rename it to its proper name: system-linux-ia64.ads | |
37790 | (stamp-gnatlib1): Remove extra target specific run time files when | |
37791 | setting up the rts directory. | |
37792 | ||
37793 | 2004-05-24 Javier Miranda <miranda@gnat.com> | |
37794 | ||
37795 | * einfo.ads, einfo.adb (Limited_Views): Removed. | |
37796 | (Limited_View): New attribute that replaces the previous one. It is | |
37797 | now a bona fide package with the limited-view list through the | |
37798 | first_entity and first_private attributes. | |
37799 | ||
37800 | * sem_ch10.adb (Install_Private_With_Clauses): Give support to | |
37801 | limited-private-with clause. | |
37802 | (Install_Limited_Withed_Unit): Install the private declarations of a | |
37803 | limited-private-withed package. Update the installation of the shadow | |
37804 | entities according to the new structure (see Build_Limited_Views) | |
37805 | (Build_Limited_Views): Replace the previous implementation of the | |
37806 | limited view by a package entity that references the first shadow | |
37807 | entity plus the first shadow private entity (required for limited- | |
37808 | private-with clause) | |
37809 | (New_Internal_Shadow_Entity): Code cleanup. | |
37810 | (Remove_Limited_With_Clause): Update the implementation to undo the | |
37811 | new work carried out by Build_Limited_Views. | |
37812 | (Build_Chain): Complete documentation. | |
37813 | Replace Ada0Y by Ada 0Y in comments | |
37814 | Minor reformating | |
37815 | ||
37816 | * sem_ch3.adb (Array_Type_Declaration): In case of anonymous access | |
37817 | types the level of accessibility depends on the enclosing type | |
37818 | declaration. | |
37819 | ||
37820 | * sem_ch8.adb (Find_Expanded_Name): Fix condition to detect shadow | |
37821 | entities. Complete documentation of previous change. | |
37822 | ||
37823 | 2004-05-24 Robert Dewar <dewar@gnat.com> | |
37824 | ||
37825 | * namet.adb: Minor reformatting | |
37826 | Avoid use of name I (replace by J) | |
37827 | Minor code restructuring | |
37828 | ||
37829 | * sem_ch6.adb: Minor reformatting | |
37830 | ||
37831 | * lib-writ.adb: Do not set restriction as active if this is a | |
37832 | Restriction_Warning case. | |
37833 | ||
37834 | * sem_prag.adb: Reset restriction warning flag if real pragma | |
37835 | restriction encountered. | |
37836 | ||
37837 | * s-htable.adb: Minor reformatting | |
37838 | Change rotate count to 3 in Hash (improves hash for small strings) | |
37839 | ||
37840 | * 5qsystem.ads: Add comments for type Address (no literals allowed). | |
37841 | ||
37842 | * gnat_ugn.texi: Add new section of documentation "Code Generation | |
37843 | Control", which describes the use of -m switches. | |
37844 | ||
37845 | 2004-05-24 Eric Botcazou <ebotcazou@act-europe.fr> | |
37846 | ||
a1db9d9c AC |
37847 | trans.c (tree_transform) <N_Identifier>: Do the dereference directly |
37848 | through the DECL_INITIAL for renamed variables. | |
0fb2ea01 | 37849 | |
7599f1b0 AC |
37850 | 2004-05-24 Arnaud Charlet <charlet@act-europe.fr> |
37851 | ||
37852 | * s-osinte-linux-ia64.ads: Renamed system-linux-ia64.ads | |
37853 | ||
c37bb106 AC |
37854 | 2004-05-19 Joel Brobecker <brobecker@gnat.com> |
37855 | ||
37856 | * exp_dbug.ads: Correct comments concerning handling of overloading, | |
37857 | since we no longer use $ anymore. | |
37858 | ||
37859 | 2004-05-19 Sergey Rybin <rybin@act-europe.fr> | |
37860 | ||
37861 | * sem_ch10.adb (Optional_Subunit): When loading a subunit, do not | |
37862 | ignore errors if ASIS_Mode is set. This prevents creating ASIS trees | |
37863 | with illegal subunits. | |
37864 | ||
37865 | 2004-05-19 Ed Schonberg <schonberg@gnat.com> | |
37866 | ||
37867 | * sem_ch6.adb (Check_Following_Pragma): When compiling a subprogram | |
37868 | body with front-end inlining enabled, check whether an inline pragma | |
37869 | appears immediately after the body and applies to it. | |
37870 | ||
37871 | * sem_prag.adb (Cannot_Inline): Emit warning if front-end inlining is | |
37872 | enabled and the pragma appears after the body of the subprogram. | |
37873 | ||
b5e792e2 AC |
37874 | 2004-05-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
37875 | ||
37876 | Part of function-at-a-time conversion | |
37877 | ||
37878 | * misc.c (adjust_decl_rtl): Deleted. | |
37879 | (LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): | |
37880 | Define. | |
37881 | ||
37882 | * gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted. | |
37883 | (add_decl_stmt, add_stmt, block_has_vars): New functions. | |
37884 | (gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel. | |
37885 | ||
37886 | * decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt | |
37887 | when making a decl. | |
37888 | (gnat_to_gnu_entity): Likewise. | |
37889 | Use add_stmt to update setjmp buffer. | |
37890 | Set TREE_ADDRESSABLE instead of calling put_var_into_stack and | |
37891 | flush_addressof. | |
37892 | No longer call adjust_decl_rtl. | |
37893 | (DECL_INIT_BY_ASSIGN_P): New macro. | |
37894 | (DECL_STMT_VAR): Likewise. | |
37895 | ||
37896 | * trans.c (gigi): Call start_block_stmt to make the outermost | |
37897 | BLOCK_STMT. | |
37898 | (gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type): | |
37899 | Call start_block_stmt and end_block_stmt temporarily. | |
37900 | Use gnat_expand_stmt instead of expand_expr_stmt. | |
37901 | (add_decl_stmt): New function. | |
37902 | (tree_transform): Call it. | |
37903 | (add_stmt): Also emit initializing assignment for DECL_STMT if needed. | |
37904 | (end_block_stmt): Set type and NULL_STMT. | |
37905 | (gnat_expand_stmt): Make recursize call instead of calling | |
37906 | expand_expr_stmt. | |
37907 | (gnat_expand_stmt, case DECL_STMT): New case. | |
37908 | (set_lineno_from_sloc): Do nothing if global. | |
37909 | (gnu_block_stmt_node, gnu_block_stmt_free_list): New variables. | |
37910 | (start_block_stmt, add_stmt, end_block_stmt): New functions. | |
37911 | (build_block_stmt): Call them. | |
37912 | (gnat_to_code): Don't expand NULL_STMT. | |
37913 | (build_unit_elab): Rename pushlevel and poplevel to gnat_* and change | |
37914 | args. | |
37915 | (tree_transform): Likewise. | |
37916 | (tree_transform, case N_Null_Statement): Return NULL_STMT. | |
37917 | (gnat_expand_stmt, case NULL_STMT): New case. | |
37918 | (gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no | |
37919 | IF_STMT_TRUE. | |
37920 | ||
37921 | * utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set | |
37922 | TREE_ADDRESSABLE. | |
37923 | ||
37924 | * utils.c (create_var_decl): Do not call expand_decl or | |
37925 | expand_decl_init. | |
37926 | Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable. | |
37927 | Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR | |
37928 | here. | |
37929 | (struct e_stack): Add chain_next to GTY. | |
37930 | (struct binding_level): Deleted. | |
37931 | (struct ada_binding_level): New struct. | |
37932 | (free_block_chain): New. | |
37933 | (global_binding_level, clear_binding_level): Deleted. | |
37934 | (global_bindings_p): Rework to see if no chain. | |
37935 | (kept_level_p, set_block): Deleted. | |
37936 | (gnat_pushlevel): Renamed from pushlevel and extensive reworked to use | |
37937 | new data structure and work directly on BLOCK node. | |
37938 | (gnat_poplevel): Similarly. | |
37939 | (get_decls): Look at BLOCK_VARS. | |
37940 | (insert_block): Work directly on BLOCK node. | |
37941 | (block_has_var): New function. | |
37942 | (pushdecl): Rework for new binding structures. | |
37943 | (gnat_init_decl_processing): Rename and rework calls to pushlevel and | |
37944 | poplevel. | |
37945 | (build_subprog_body): Likewise. | |
37946 | (end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL. | |
37947 | ||
37948 | * ada-tree.def (DECL_STMT, NULL_STMT): New codes. | |
37949 | ||
37950 | * ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro. | |
37951 | (DECL_STMT_VAR): Likewise. | |
37952 | ||
37953 | 2004-05-17 Robert Dewar <dewar@gnat.com> | |
37954 | ||
37955 | * restrict.ads, restrict.adb (Process_Restriction_Synonym): New | |
37956 | procedure | |
37957 | ||
37958 | * sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling | |
37959 | of restriction synonyums by using | |
37960 | Restrict.Process_Restriction_Synonyms. | |
37961 | ||
37962 | * snames.ads, snames.adb: Add entries for Process_Restriction_Synonym | |
37963 | ||
37964 | * s-restri.ads (Tasking_Allowed): Correct missing comment | |
37965 | ||
37966 | * s-rident.ads: Add entries for restriction synonyms | |
37967 | ||
37968 | * ali.adb: Fix some problems with badly formatted ALI files that can | |
37969 | result in infinite loops. | |
37970 | ||
37971 | * s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb, | |
37972 | s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb, | |
37973 | s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb, | |
37974 | s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb, | |
37975 | s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb, | |
37976 | s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb, | |
37977 | s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb, | |
37978 | s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb, | |
37979 | s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb, | |
37980 | a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb, | |
37981 | exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb, | |
37982 | s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb, | |
37983 | s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads, | |
37984 | s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads, | |
37985 | s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads, | |
37986 | s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads, | |
37987 | s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads, | |
37988 | s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads, | |
37989 | s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb, | |
37990 | s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID | |
37991 | to Task_Id (minor cleanup). | |
37992 | ||
37993 | 2004-05-17 Vincent Celier <celier@gnat.com> | |
37994 | ||
37995 | * g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing | |
37996 | directory separator. | |
37997 | ||
37998 | * prj-proc.adb (Recursive_Process): Inherit attribute Languages from | |
37999 | project being extended, if Languages is not declared in extending | |
38000 | project. | |
38001 | ||
38002 | 2004-05-17 Javier Miranda <miranda@gnat.com> | |
38003 | ||
38004 | * sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the | |
38005 | limited view of a visible sibling. | |
38006 | ||
9bc856dd AC |
38007 | 2004-05-14 Robert Dewar <dewar@gnat.com> |
38008 | ||
38009 | * gnat_ugn.texi: Minor change to -gnatS documentation | |
38010 | ||
38011 | * sprint.adb: Remove some instances of Assert (False) and for this | |
38012 | purpose replace them by output of a ??? string. | |
38013 | ||
38014 | * checks.adb, exp_aggr.adb, sem_elim.adb: Remove useless pragma | |
38015 | Assert (False). | |
38016 | ||
38017 | * lib-writ.adb, lib-load.adb, lib.ads, lib.adb: Remove Dependent_Unit | |
38018 | flag processing. This was suppressing required dependencies in | |
38019 | No_Run_Time mode and is not needed since the binder does not generate | |
38020 | references for things in libgnat anyway. | |
38021 | ||
38022 | * sem_ch3.adb (Access_Type_Declaration): Reorganize code to avoid GCC | |
38023 | warning. | |
38024 | ||
38025 | 2004-05-14 Thomas Quinot <quinot@act-europe.fr> | |
38026 | ||
38027 | * gnat_ugn.texi: Document AIX-specific issue with initialization of | |
38028 | resolver library. | |
38029 | ||
38030 | * exp_ch4.adb (Insert_Dereference_Action): Do not generate dereference | |
38031 | action for the case of an actual parameter in an init proc call. | |
38032 | ||
38033 | 2004-05-14 Ed Schonberg <schonberg@gnat.com> | |
38034 | ||
38035 | * sem_ch4.adb (Analyze_Selected_Component): If prefix is a protected | |
38036 | subtype, check visible entities in base type. | |
38037 | ||
38038 | * exp_ch7.adb (Clean_Simple_Protected_Objects): Do not generate cleanup | |
38039 | actions if the object is a renaming. | |
38040 | ||
38041 | * sem_ch12.adb (Same_Instantiated_Entity): Predicate for | |
38042 | Check_Formal_Package_Instance, to determine more precisely when the | |
38043 | formal and the actual denote the same entity. | |
38044 | ||
38045 | 2004-05-14 Javier Miranda <miranda@gnat.com> | |
38046 | ||
38047 | * par-ch10.adb (P_Context_Clause): Complete documentation on AI-262 | |
38048 | ||
38049 | * sem_ch10.adb (Analyze_With_Clause): After analyzed, the entity | |
38050 | corresponding to a private_with must be removed from visibility; it | |
38051 | will be made visible later, just before we analyze the private part of | |
38052 | the package. | |
38053 | (Check_Private_Child_Unit): Allow private_with clauses in public | |
38054 | siblings. | |
38055 | (Install_Siblings): Make visible the private entities of private-withed | |
38056 | siblings. | |
38057 | (Install_Withed_Unit): Do not install the private withed unit if we | |
38058 | are compiling a package declaration and the Private_With_OK flag was | |
38059 | not set by the caller. These declarations will be installed later, | |
38060 | just before we analyze the private part of the package. | |
38061 | ||
38062 | * sem_ch3.adb (Analyze_Object_Declaration): In case of errors detected | |
38063 | during the evaluation of the expression that initializes the object, | |
38064 | decorate it with the expected type to avoid cascade errors. | |
38065 | Code cleanup. | |
38066 | ||
38067 | * sem_ch6.adb (Analyze_Subprogram_Body): If we are compiling a library | |
38068 | subprogram we have to install the private_with clauses after its | |
38069 | specification has been analyzed (as documented in AI-262.TXT). | |
38070 | ||
38071 | * sem_ch8.adb (Has_Private_With): New function. Determines if the | |
38072 | current compilation unit has a private with on a given entity. | |
38073 | (Find_Direct_Name): Detect the Beaujolais problem described in | |
38074 | AI-262.TXT | |
38075 | ||
38076 | * sem_utils.ads, sem_util.adb (Is_Ancestor_Package): New function. It | |
38077 | provides the functionality of the function Is_Ancestor that was | |
38078 | previously available in sem_ch10. It has been renamed to avoid | |
38079 | overloading. | |
38080 | ||
38081 | * sprint.adb (Sprint_Node_Actual): Print limited_with clauses | |
38082 | ||
38083 | 2004-05-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
38084 | ||
38085 | * utils.c (build_vms_descriptor): Use SImode pointers. | |
38086 | ||
38087 | 2004-05-14 Vasiliy Fofanov <fofanov@act-europe.fr> | |
38088 | ||
38089 | * gnat_ugn.texi: Revised chapter "GNAT and Libraries". | |
38090 | ||
38091 | 2004-05-14 GNAT Script <nobody@gnat.com> | |
38092 | ||
38093 | * Make-lang.in: Makefile automatically updated | |
38094 | ||
084c663c AC |
38095 | 2004-05-14 Arnaud Charlet <charlet@act-europe.fr> |
38096 | ||
38097 | Renaming of target specific files for clarity | |
38098 | ||
6615c446 | 38099 | * Makefile.in: Rename GNAT target specific files. |
084c663c AC |
38100 | |
38101 | * 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads, | |
38102 | 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads, | |
38103 | 3ssoccon.ads, 3ssoliop.ads, 3veacodu.adb, 3vexpect.adb, | |
38104 | 3vsoccon.ads, 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, | |
38105 | 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, 3wsoliop.ads, | |
38106 | 3zsoccon.ads, 3zsocthi.adb, 3zsocthi.ads, 41intnam.ads, | |
38107 | 42intnam.ads, 45intnam.ads, 4aintnam.ads, 4cintnam.ads, | |
38108 | 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, 4lintnam.ads, | |
38109 | 4nintnam.ads, 4ointnam.ads, 4onumaux.ads, 4pintnam.ads, | |
38110 | 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, 4vcalend.ads, | |
38111 | 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, 4wintnam.ads, | |
38112 | 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, 4zsytaco.ads, | |
38113 | 51osinte.adb, 51osinte.ads, 51system.ads, | |
38114 | 52osinte.adb, 52osinte.ads, 53osinte.ads, 54osinte.ads, | |
38115 | 55osinte.adb, 55osinte.ads, 55system.ads, 56osinte.adb, | |
38116 | 56osinte.ads, 56system.ads, 56taprop.adb, 56taspri.ads, | |
38117 | 56tpopsp.adb, 57system.ads, 58system.ads, | |
38118 | 5amastop.adb, 5aml-tgt.adb, 5aosinte.adb, 5aosinte.ads, | |
38119 | 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads, | |
38120 | 5atpopsp.adb, 5avxwork.ads, 5bml-tgt.adb, 5bosinte.adb, | |
38121 | 5bosinte.ads, 5bsystem.ads, 5cosinte.ads, 5csystem.ads, | |
38122 | 5dsystem.ads, 5esystem.ads, 5fintman.adb, 5fosinte.adb, | |
38123 | 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads, | |
38124 | 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gml-tgt.adb, | |
38125 | 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads, | |
38126 | 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb, | |
38127 | 5hml-tgt.adb, 5hosinte.adb, 5hosinte.ads, 5hparame.ads, | |
38128 | 5hsystem.ads, 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, | |
38129 | 5iosinte.adb, 5iosinte.ads, 5itaprop.adb, 5itaspri.ads, | |
38130 | 5ksystem.ads, 5kvxwork.ads, 5lml-tgt.adb, 5losinte.ads, | |
38131 | 5lparame.adb, 5lsystem.ads, 5msystem.ads, 5mvxwork.ads, | |
38132 | 5ninmaop.adb, 5nintman.adb, 5nosinte.ads, 5nsystem.ads, | |
38133 | 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb, | |
38134 | 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb, | |
38135 | 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads, | |
38136 | 5posprim.adb, 5psystem.ads, 5pvxwork.ads, 5sintman.adb, | |
38137 | 5sml-tgt.adb, 5sosinte.adb, 5sosinte.ads, 5sosprim.adb, | |
38138 | 5sparame.adb, 5ssystem.ads, 5staprop.adb, 5stasinf.adb, | |
38139 | 5stasinf.ads, 5staspri.ads, 5stpopsp.adb, 5svxwork.ads, | |
38140 | 5tosinte.ads, 5usystem.ads, 5vasthan.adb, 5vdirval.adb, | |
38141 | 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads, | |
38142 | 5vmastop.adb, 5vml-tgt.adb, 5vosinte.adb, 5vosinte.ads, | |
38143 | 5vosprim.adb, 5vosprim.ads, 5vparame.ads, 5vsymbol.adb, | |
38144 | 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb, | |
38145 | 5vtpopde.ads, 5vtraent.adb, 5vtraent.ads, 5vvaflop.adb, | |
38146 | 5wdirval.adb, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb, | |
38147 | 5wml-tgt.adb, 5wosinte.ads, 5wosprim.adb, 5wsystem.ads, | |
38148 | 5wtaprop.adb, 5wtaspri.ads, 5xparame.ads, 5xsystem.ads, | |
38149 | 5xvxwork.ads, 5yparame.ads, 5ysystem.ads, 5zinterr.adb, | |
38150 | 5zintman.adb, 5zintman.ads, 5zml-tgt.adb, 5zosinte.adb, | |
38151 | 5zosinte.ads, 5zosprim.adb, 5zparame.ads, 5zstchop.adb, | |
38152 | 5zsystem.ads, 5ztaprop.adb, 5ztaspri.ads, 5ztfsetr.adb, | |
38153 | 5ztpopsp.adb, 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, | |
38154 | 7sinmaop.adb, 7sintman.adb, 7sosinte.adb, 7sosprim.adb, | |
38155 | 7staprop.adb, 7staspri.ads, 7stfsetr.adb, 7stpopsp.adb, | |
38156 | 7straceb.adb, 7straces.adb, 7strafor.adb, 7strafor.ads, | |
38157 | 7stratas.adb, 86numaux.adb, 86numaux.ads: Replaced by files below. | |
38158 | ||
38159 | * a-caldel-vms.adb, a-calend-mingw.adb, a-calend-vms.adb, | |
38160 | a-calend-vms.ads, a-dirval-mingw.adb, a-dirval-vms.adb, | |
38161 | a-excpol-abort.adb, a-excpol-interix.adb, a-intnam-aix.ads, | |
38162 | a-intnam-dummy.ads, a-intnam-freebsd.ads, a-intnam-hpux.ads, | |
38163 | a-intnam-interix.ads, a-intnam-irix.ads, a-intnam-linux.ads, | |
38164 | a-intnam-lynxos.ads, a-intnam-mingw.ads, a-intnam-os2.ads, | |
38165 | a-intnam-solaris.ads, a-intnam-tru64.ads, a-intnam-unixware.ads, | |
38166 | a-intnam-vms.ads, a-intnam-vxworks.ads, a-numaux-libc-x86.ads, | |
38167 | a-numaux-vxworks.ads, a-numaux-x86.adb, a-numaux-x86.ads, | |
38168 | a-sytaco-vxworks.adb, a-sytaco-vxworks.ads, g-eacodu-vms.adb, | |
38169 | g-expect-vms.adb, g-soccon-aix.ads, g-soccon-freebsd.ads, | |
38170 | g-soccon-hpux.ads, g-soccon-interix.ads, g-soccon-irix.ads, | |
38171 | g-soccon-mingw.ads, g-soccon-solaris.ads, g-soccon-tru64.ads, | |
38172 | g-soccon-unixware.ads, g-soccon-vms.adb, g-soccon-vxworks.ads, | |
38173 | g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vms.adb, | |
38174 | g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads, | |
38175 | g-soliop-mingw.ads, g-soliop-solaris.ads, g-soliop-unixware.ads, | |
38176 | g-trasym-vms.adb, i-cpp-vms.adb, i-cstrea-vms.adb, | |
38177 | interfac-vms.ads, mlib-tgt-aix.adb, mlib-tgt-hpux.adb, | |
38178 | mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-mingw.adb, | |
38179 | mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb, | |
38180 | mlib-tgt-vxworks.adb, s-asthan-vms.adb, s-gloloc-mingw.adb, | |
38181 | s-inmaop-dummy.adb, s-inmaop-posix.adb, s-inmaop-vms.adb, | |
38182 | s-interr-dummy.adb, s-interr-sigaction.adb, s-interr-vms.adb, | |
38183 | s-interr-vxworks.adb, s-intman-dummy.adb, s-intman-irix.adb, | |
38184 | s-intman-irix-athread.adb, s-intman-mingw.adb, s-intman-posix.adb, | |
38185 | s-intman-solaris.adb, s-intman-vms.adb, s-intman-vms.ads, | |
38186 | s-intman-vxworks.adb, s-intman-vxworks.ads, s-mastop-irix.adb, | |
38187 | s-mastop-tru64.adb, s-mastop-vms.adb, s-mastop-x86.adb, | |
38188 | s-memory-mingw.adb, s-osinte-aix.adb, s-osinte-aix.ads, | |
38189 | s-osinte-aix-fsu.ads, s-osinte-dummy.ads, s-osinte-freebsd.adb, | |
38190 | s-osinte-freebsd.ads, s-osinte-fsu.adb, s-osinte-hpux.ads, | |
38191 | s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, s-osinte-interix.ads, | |
38192 | s-osinte-irix.adb, s-osinte-irix.ads, s-osinte-irix-athread.ads, | |
38193 | s-osinte-linux.ads, s-osinte-linux-fsu.ads, s-osinte-linux-ia64.ads, | |
38194 | s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.adb, | |
38195 | s-osinte-lynxos.ads, s-osinte-mingw.ads, s-osinte-os2.adb, | |
38196 | s-osinte-os2.ads, s-osinte-posix.adb, s-osinte-solaris.adb, | |
38197 | s-osinte-solaris.ads, s-osinte-solaris-fsu.ads, | |
38198 | s-osinte-solaris-posix.ads, s-osinte-tru64.adb, s-osinte-tru64.ads, | |
38199 | s-osinte-unixware.adb, s-osinte-unixware.ads, s-osinte-vms.adb, | |
38200 | s-osinte-vms.ads, s-osinte-vxworks.adb, | |
38201 | s-osinte-vxworks.ads, s-osprim-mingw.adb, | |
38202 | s-osprim-os2.adb, s-osprim-posix.adb, s-osprim-solaris.adb, | |
38203 | s-osprim-unix.adb, s-osprim-vms.adb, s-osprim-vms.ads, | |
38204 | s-osprim-vxworks.adb, s-parame-ae653.ads, s-parame-hpux.ads, | |
38205 | s-parame-linux.adb, s-parame-os2.adb, s-parame-solaris.adb, | |
38206 | s-parame-vms.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads, | |
38207 | s-proinf-irix-athread.adb, s-proinf-irix-athread.ads, | |
38208 | s-stchop-vxworks.adb, s-taprop-dummy.adb, | |
38209 | s-taprop-hpux-dce.adb, s-taprop-irix.adb, | |
38210 | s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-lynxos.adb, | |
38211 | s-taprop-mingw.adb, s-taprop-os2.adb, s-taprop-posix.adb, | |
38212 | s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb, | |
38213 | s-taprop-vxworks.adb, s-tasinf-irix.ads, s-tasinf-irix-athread.adb, | |
38214 | s-tasinf-irix-athread.ads, s-tasinf-solaris.adb, s-tasinf-solaris.ads, | |
38215 | s-tasinf-tru64.ads, s-taspri-dummy.ads, s-taspri-hpux-dce.ads, | |
38216 | s-taspri-linux.ads, s-taspri-lynxos.ads, s-taspri-mingw.ads, | |
38217 | s-taspri-os2.ads, s-taspri-posix.ads, s-taspri-solaris.ads, | |
38218 | s-taspri-tru64.ads, s-taspri-vms.ads, s-taspri-vxworks.ads, | |
38219 | s-tfsetr-default.adb, s-tfsetr-vxworks.adb, s-tpopde-vms.adb, | |
38220 | s-tpopde-vms.ads, s-tpopsp-lynxos.adb, s-tpopsp-posix.adb, | |
38221 | s-tpopsp-posix-foreign.adb, s-tpopsp-solaris.adb, s-tpopsp-vxworks.adb, | |
38222 | s-traceb-hpux.adb, s-traceb-mastop.adb, s-traces-default.adb, | |
38223 | s-traent-vms.adb, s-traent-vms.ads, s-trafor-default.adb, | |
38224 | s-trafor-default.ads, s-tratas-default.adb, s-vaflop-vms.adb, | |
38225 | s-vxwork-alpha.ads, s-vxwork-m68k.ads, s-vxwork-mips.ads, | |
38226 | s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, s-vxwork-xscale.ads, | |
38227 | symbols-vms.adb, system-aix.ads, system-freebsd-x86.ads, | |
38228 | system-hpux.ads, system-interix.ads, system-irix-n32.ads, | |
38229 | system-irix-o32.ads, system-linux-x86_64.ads, | |
38230 | system-linux-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads, | |
38231 | system-mingw.ads, system-os2.ads, system-solaris-sparc.ads, | |
38232 | system-solaris-sparcv9.ads, system-solaris-x86.ads, system-tru64.ads, | |
38233 | system-unixware.ads, system-vms.ads, system-vms-zcx.ads, | |
38234 | system-vxworks-alpha.ads, system-vxworks-m68k.ads, | |
38235 | system-vxworks-mips.ads, system-vxworks-ppc.ads, | |
38236 | system-vxworks-sparcv9.ads, system-vxworks-xscale.ads: Replace files | |
38237 | above. | |
38238 | ||
90afe2c9 ZW |
38239 | 2004-05-13 Zack Weinberg <zack@codesourcery.com> |
38240 | ||
38241 | * trans.c (gnat_stabilize_reference_1): Remove case 'b'. | |
38242 | ||
6de9cd9a DN |
38243 | 2004-05-13 Diego Novillo <dnovillo@redhat.com> |
38244 | ||
38245 | Merge from tree-ssa-20020619-branch. | |
38246 | ||
38247 | * config-lang.in (boot_language, build_by_default): Set | |
38248 | to no. | |
38249 | * utils.c (unchecked_convert): Use OEP_ONLY_CONST. | |
38250 | (max_size): Add static chain op for call_expr. | |
38251 | ||
f5657d67 RS |
38252 | 2004-05-12 Richard Sandiford <rsandifo@redhat.com> |
38253 | ||
38254 | PR target/15331 | |
38255 | * 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '. | |
38256 | ||
4413b636 RS |
38257 | 2004-05-11 Roger Sayle <roger@eyesopen.com> |
38258 | ||
38259 | * utils.c (max_size): Use MIN_EXPR to find the minimum value of a | |
38260 | COND_EXPR. | |
38261 | ||
5950a3ac AC |
38262 | 2004-05-10 Doug Rupp <rupp@gnat.com> |
38263 | ||
38264 | * 5qsystem.ads: Remove Short_Address subtype declaration. Moved to | |
38265 | system.aux_dec. | |
38266 | ||
38267 | * s-auxdec.ads: Add Short_Address subtype (moved here from System). | |
38268 | ||
38269 | * Makefile.in: [VMS]: Add translation for 5qauxdec.ads. | |
38270 | ||
38271 | * init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha. | |
38272 | Fixes undefined symbols in IA64 gnatlib. | |
38273 | ||
38274 | * 5vinmaop.adb: Reference s-auxdec for Short_Address. | |
38275 | ||
38276 | * 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype | |
38277 | Short_Address). This will be moved to system.auxdec. | |
38278 | ||
38279 | 2004-05-10 Thomas Quinot <quinot@act-europe.fr> | |
38280 | ||
38281 | * sem_util.adb: Replace test for presence of a node that is always | |
38282 | present with a call to Discard_Node. | |
38283 | ||
38284 | * sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to | |
38285 | Analyze on the library unit node after generation of distribution stub | |
38286 | constructs. The call was a no-op because Unit_Node has already been | |
38287 | Analyzed, and the tree fragments for the distribution stubs are | |
38288 | analyzed as they are inserted in Exp_Dist. | |
38289 | Update comment regarding to distribution stubs to reflect that we | |
38290 | do not generate stub in separate files anymore. | |
38291 | ||
38292 | * einfo.ads: Clarify the fact that a tagged private type has the | |
38293 | E_Record_Type_With_Private Ekind. | |
38294 | ||
38295 | * erroutc.adb: Minor reformatting | |
38296 | ||
38297 | * erroutc.ads (Max_Msg_Length): Increase to cover possible larger | |
38298 | values if line length is increased using -gnatyM (noticed during code | |
38299 | reading). | |
38300 | ||
38301 | * eval_fat.adb: Minor reformatting | |
38302 | Put spaces around exponentiation operator | |
38303 | ||
38304 | 2004-05-10 Ed Schonberg <schonberg@gnat.com> | |
38305 | ||
38306 | PR ada/15005 | |
38307 | * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix | |
38308 | has been rewritten as an explicit dereference, retrieve type of | |
38309 | original node to check for possibly unconstrained record type. | |
38310 | ||
38311 | 2004-05-10 Ed Schonberg <schonberg@gnat.com> | |
38312 | ||
38313 | * exp_ch7.adb (Check_Visibly_Controlled): If given operation is not | |
38314 | overriding, use the operation of the parent unconditionally. | |
38315 | ||
38316 | * sem_ch4.adb (Remove_Address_Interpretations): Remove address | |
38317 | operation when either operand is a literal, to avoid further | |
38318 | ambiguities. | |
38319 | ||
38320 | * sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and | |
38321 | overridden by a previous explicit declaration, mark the previous entity | |
38322 | as overriding. | |
38323 | ||
38324 | * sem_disp.adb (Check_Dispatching_Operation): New predicate | |
38325 | Is_Visibly_Controlled, to determine whether a declaration of a | |
38326 | primitive control operation for a derived type overrides an inherited | |
38327 | one. Add warning if the explicit declaration does not override. | |
38328 | ||
38329 | 2004-05-10 Vincent Celier <celier@gnat.com> | |
38330 | ||
38331 | * gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in | |
38332 | some cases when the sources are no longer present. | |
38333 | ||
38334 | * make.adb (Collect_Arguments): Fail if an external source, not part | |
38335 | of any project need to be compiled, when switch -x has not been | |
38336 | specified. | |
38337 | ||
38338 | * makeusg.adb: Document new switch -x | |
38339 | ||
38340 | * opt.ads (External_Unit_Compilation_Allowed): New Boolean flag, | |
38341 | defaulted to False. | |
38342 | ||
38343 | * switch-m.adb (Scan_Make_Switches): New switch -x | |
38344 | ||
38345 | * vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for | |
38346 | gnatmake switch -x. | |
38347 | ||
38348 | * gnat_ugn.texi: Document new gnatmake switch -x | |
38349 | ||
38350 | 2004-05-10 Eric Botcazou <ebotcazou@act-europe.fr> | |
38351 | ||
38352 | * misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0. | |
38353 | ||
38354 | * utils.c (create_var_decl): Do not modify the DECL_COMMON flag. | |
38355 | (process_attributes): Likewise. | |
38356 | ||
38357 | 2004-05-10 Joel Brobecker <brobecker@gnat.com> | |
38358 | ||
38359 | * s-inmaop.ads: Fix spelling mistake in one of the comments. | |
38360 | ||
38361 | 2004-05-10 Robert Dewar <dewar@gnat.com> | |
38362 | ||
38363 | * gnat_ugn.texi: Document that for config pragma files, the maximum | |
38364 | line length is always 32767. | |
38365 | ||
38366 | * gnat_rm.texi: For pragma Eliminate, note that concatenation of string | |
38367 | literals is now allowed. | |
38368 | ||
38369 | * gnat-style.texi: Remove statement about splitting long lines before | |
38370 | an operator rather than after, since we do not follow this rule at all. | |
38371 | Clarify rule (really lack of rule) for spaces around exponentiation | |
38372 | ||
38373 | * sem_elim.adb: Allow concatenation of string literals as well as a | |
38374 | single string literal for pragma arguments. | |
38375 | ||
38376 | * sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function | |
38377 | ||
38378 | * a-textio.adb (Terminate_Line): Do not add line feed if nothing | |
38379 | written for append case. | |
38380 | ||
38381 | * frontend.adb: Changes to avoid checking max line length in config | |
38382 | pragma files. | |
38383 | ||
38384 | * g-os_lib.ads: Minor reformatting | |
38385 | ||
38386 | * mlib-utl.adb: Do not define Max_Line_Length locally (definition was | |
38387 | wrong in any case. Instead use standard value. Noticed during code | |
38388 | reading. | |
38389 | ||
38390 | * opt.ads (Max_Line_Length): New field, used to implement removal of | |
38391 | limitation on length of lines when scanning config pragma files. | |
38392 | ||
38393 | * osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb, | |
38394 | makeutl.ads, makeutl.adb: Minor reformatting | |
38395 | ||
38396 | * scn.adb: Do not check line length while scanning config pragma files | |
38397 | Do not check line length while scanning out license information | |
38398 | ||
38399 | * scng.adb: Changes to avoid line length checks while parsing config | |
38400 | pragma files. | |
38401 | ||
38402 | 2004-05-10 GNAT Script <nobody@gnat.com> | |
38403 | ||
38404 | * Make-lang.in: Makefile automatically updated | |
38405 | ||
48664302 AC |
38406 | 2004-05-05 Arnaud Charlet <charlet@act-europe.fr> |
38407 | ||
38408 | * osint.adb (Find_Program_Name): Fix handling of VMS version | |
38409 | number. | |
38410 | ||
aa720a54 AC |
38411 | 2004-05-05 Emmanuel Briot <briot@act-europe.fr> |
38412 | ||
38413 | * g-os_lib.ads (Invalid_Time): New constant | |
38414 | ||
38415 | * adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now | |
38416 | return OS_Time instead of time_t to match what is imported by Ada. | |
38417 | Now return -1 if the file doesn't exist, instead of a random value | |
38418 | ||
38419 | 2004-05-05 Robert Dewar <dewar@gnat.com> | |
38420 | ||
38421 | * usage.adb: Add line for -gnatR?s switch | |
38422 | ||
38423 | * sem_ch13.adb, exp_ch2.adb: Minor reformatting | |
38424 | ||
38425 | * g-regpat.ads, g-regpat.adb: Add documentation on handling of Size | |
38426 | and for Match (Data_First, Data_last) | |
38427 | ||
38428 | * lib-writ.adb (Write_With_Lines): Ensure that correct index number is | |
38429 | written when we are dealing with multi-unit files. | |
38430 | ||
38431 | 2004-05-05 Jerome Guitton <guitton@act-europe.fr> | |
38432 | ||
38433 | * Makefile.in: Remove unused targets and variables. | |
38434 | ||
38435 | 2004-05-05 Vincent Celier <celier@gnat.com> | |
38436 | ||
38437 | * switch-m.adb: New gnatmake switch -eI | |
38438 | ||
38439 | * vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and | |
38440 | of new gnatmake switch -eInnn. | |
38441 | ||
38442 | * makegpr.adb: Take into account new parameters Index and Src_Index in | |
38443 | Prj.Util. | |
38444 | ||
38445 | * clean.adb: Implement support for multi-unit sources, including new | |
38446 | switch -i. | |
38447 | ||
38448 | * gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter | |
38449 | Src_Index. | |
38450 | ||
38451 | * make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0 | |
38452 | (Extract_From_Q): New out parameter Index | |
38453 | (Mark, Is_Marked): Subprograms moved to Makeutl | |
38454 | (Switches_Of): New parameter Source_Index | |
38455 | (Add_Switch): New parameter Index | |
38456 | (Check): New parameter Source_Index | |
38457 | (Collect_Arguments): New parameter Source_Index | |
38458 | (Collect_Arguments_And_Compile): New parameter Source_Index | |
38459 | (Compile): New parameter Source_Index | |
38460 | Put subprograms in alphabetical order | |
38461 | Add support for multi-source sources, including in project files. | |
38462 | ||
38463 | * makeutl.ads, makeutl.adb (Unit_Index_Of): New function | |
38464 | (Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from | |
38465 | Make. | |
38466 | ||
38467 | * makeusg.adb: New gnatmake switch -eInnn | |
38468 | ||
38469 | * mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to | |
38470 | Prj.Util.Value_Of. | |
38471 | ||
38472 | * opt.ads (Main_Index): New variable, defaulted to 0. | |
38473 | ||
38474 | * osint.ads, osinte.adb (Add_File): New parameter Index | |
38475 | (Current_Source_Index): New function | |
38476 | ||
38477 | * prj.adb: Take into account new components Index and Src_Index | |
38478 | ||
38479 | * prj.ads (String_Element): New component Index | |
38480 | (Variable_Value): New component Index | |
38481 | (Array_Element): New component Src_Index | |
38482 | ||
38483 | * prj-attr.adb: Indicate that optional index may be specified for | |
38484 | attributes Main, Executable, Spec, Body and some of Switches. | |
38485 | ||
38486 | * prj-attr.ads (Attribute_Kind): New values for optional indexes | |
38487 | (Attribute_Record): New component Optional_Index | |
38488 | ||
38489 | * prj-com.ads (File_Name_Data): New component Index | |
38490 | ||
38491 | * prj-dect.adb (Parse_Attribute_Declaration): Process optional index | |
38492 | ||
38493 | * prj-env.adb (Put): Output optional index | |
38494 | ||
38495 | * prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and | |
38496 | attributes Spec and Body. | |
38497 | ||
38498 | * prj-nmsc.adb: Process optional indexes | |
38499 | ||
38500 | * prj-pp.adb: Ouput "at" for optional indexes | |
38501 | ||
38502 | * prj-proc.adb: Take into account optional indexes | |
38503 | ||
38504 | * prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter | |
38505 | Optional_Index. For string literal, | |
38506 | process optional index when Optional_Index is True. | |
38507 | (Parse_Expresion): New Boolean parameter Optional_Index | |
38508 | ||
38509 | * prj-tree.ads, prj-tree.adb (Source_Index_Of): New function | |
38510 | (Set_Source_Index_Of): New procedure | |
38511 | ||
38512 | * prj-util.adb (Executable_Of, Value_Of): Take into account optional | |
38513 | index. | |
38514 | ||
38515 | * prj-util.ads (Executable_Of): New parameter Index | |
38516 | (Value_Of (Name_Id, Array_Element_Id) returning Variable_Value): | |
38517 | New parameter Src_Index, defaulted to 0. | |
38518 | ||
38519 | 2004-05-05 Ed Schonberg <schonberg@gnat.com> | |
38520 | ||
38521 | PR ada/15257 | |
38522 | * sem_ch3.adb (Access_Definition): If this is an access parameter | |
38523 | whose designated type is imported through a limited_with clause, do | |
38524 | not add the enclosing subprogram to the list of private dependents of | |
38525 | the type. | |
38526 | ||
38527 | 2004-05-05 Ed Schonberg <schonberg@gnat.com> | |
38528 | ||
38529 | PR ada/15258 | |
38530 | * sem_ch6.adb (Base_Types_Match): True if one type is imported through | |
38531 | a limited_with clause, and the other is its non-limited view. | |
38532 | ||
38533 | 2004-05-05 Thomas Quinot <quinot@act-europe.fr> | |
38534 | ||
38535 | * cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals. | |
38536 | ||
90afe2c9 | 38537 | * exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb, |
aa720a54 AC |
38538 | exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use |
38539 | Stand.Boolean_Literals to produce references to entities | |
38540 | Standard_False and Standard_True from compile-time computed boolean | |
38541 | values. | |
38542 | ||
38543 | * stand.ads (Boolean_Literals): New variable, provides the entity | |
38544 | values for False and True, for use by the expander. | |
38545 | ||
38546 | 2004-05-05 Doug Rupp <rupp@gnat.com> | |
38547 | ||
38548 | * 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype | |
38549 | 5vinmaop.adb: Unchecked convert Short_Address vice Address | |
38550 | ||
38551 | * adaint.c, raise.c: Caste CRTL function return value | |
38552 | to avoid gcc error on 32/64 bit IVMS. | |
38553 | ||
38554 | * Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and | |
38555 | target = IA64/VMS. | |
38556 | ||
38557 | * init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS. | |
38558 | ||
38559 | * 5qsystem.ads (Address): Declare as Long_Integer | |
38560 | (Short_Address): Declare as 32 bit subtype of Address | |
38561 | Declare abstract address operations to avoid gratuitous ambiguities. | |
38562 | ||
38563 | 2004-05-05 Jose Ruiz <ruiz@act-europe.fr> | |
38564 | ||
38565 | * gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249) | |
38566 | instead of the old Boolean_Entry_Barriers. | |
38567 | Ditto for No_Task_Attributes_Package instead of No_Task_Attributes. | |
38568 | ||
38569 | 2004-05-05 GNAT Script <nobody@gnat.com> | |
38570 | ||
38571 | * Make-lang.in: Makefile automatically updated | |
38572 | ||
1ab2888d AC |
38573 | 2004-05-03 Arnaud Charlet <charlet@act-europe.fr> |
38574 | ||
38575 | * 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used. | |
38576 | ||
9f4fd324 AC |
38577 | 2004-05-03 Olivier Hainque <hainque@act-europe.fr> |
38578 | ||
38579 | PR ada/15152 | |
9f4fd324 AC |
38580 | * exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments |
38581 | alone. Replacing object references by literals is inappropriate in a | |
38582 | so low level context. | |
38583 | ||
38584 | 2004-05-03 Arnaud Charlet <charlet@act-europe.fr> | |
38585 | ||
38586 | * a-exexpr.adb: Add comments | |
38587 | ||
38588 | 2004-05-03 Joel Brobecker <brobecker@gnat.com> | |
38589 | ||
38590 | * a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to | |
38591 | declare the Ancestor_Tags array in Type_Specific_Data with a small size | |
38592 | without risking a bounds check error when accessing one of its | |
38593 | components. | |
38594 | (Type_Specific_Data): Define Ancestor_Tags as a small array. | |
38595 | This prevents us from hitting a limitation during the debug info | |
38596 | generation when using stabs. | |
38597 | ||
38598 | * a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a | |
38599 | small array. | |
38600 | This prevents us from hitting a limitation during the debug info | |
38601 | generation when using stabs. | |
38602 | ||
38603 | 2004-05-03 Eric Botcazou <ebotcazou@act-europe.fr> | |
38604 | ||
38605 | lang-specs.h: Remove -gnatz* from specs. | |
38606 | ||
38607 | 2004-05-03 Vincent Celier <celier@gnat.com> | |
38608 | ||
38609 | * gprmake.adb, makegpr.ads, makegpr.adb: New files. | |
38610 | ||
38611 | * Make-lang.in, Makefile.in: Add gprmake | |
38612 | ||
38613 | 2004-05-03 Thomas Quinot <quinot@act-europe.fr> | |
38614 | ||
38615 | * sem_aggr.adb: Fix typo in comment. | |
38616 | ||
38617 | 2004-05-03 Robert Dewar <dewar@gnat.com> | |
38618 | ||
38619 | * make.adb: Minor reformatting | |
38620 | ||
38621 | * rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function | |
38622 | ||
38623 | * sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address | |
38624 | so that it works when address is not a private type. | |
38625 | ||
38626 | * sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal | |
38627 | properly with rewritten unchecked conversions. This prevents | |
38628 | order-of-elaboration issues that can otherwise arise. | |
38629 | (Minimum_Size): Don't check size of access types under VMS | |
38630 | ||
38631 | * sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove | |
38632 | interpretations of integer literals as type System.Address. | |
38633 | ||
38634 | * sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function | |
38635 | (Is_Descendent_Of): New function | |
38636 | ||
38637 | 2004-05-03 Jose Ruiz <ruiz@act-europe.fr> | |
38638 | ||
38639 | * sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers. | |
38640 | Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length. | |
38641 | No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment. | |
38642 | ||
38643 | * sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead | |
38644 | of the old Max_Entry_Queue_Depth. | |
38645 | ||
38646 | * snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers. | |
38647 | Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length | |
38648 | No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment | |
38649 | ||
38650 | * snames.ads: New entry for proper handling of Boolean_Entry_Barriers. | |
38651 | New entry for proper handling of Max_Entry_Queue_Depth. | |
38652 | New entry for proper handling of No_Dynamic_Interrupts. | |
38653 | ||
38654 | * s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that | |
38655 | supersedes the GNAT specific restriction Boolean_Entry_Barriers. | |
38656 | Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes | |
38657 | the GNAT specific restriction Max_Entry_Queue_Depth. | |
38658 | Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes | |
38659 | the GNAT specific restriction No_Dynamic_Interrupts. | |
38660 | ||
38661 | * restrict.ads, restrict.adb: Use the new restriction Simple_Barriers | |
38662 | instead of the old Boolean_Entry_Barriers. | |
38663 | Use the new restriction No_Dynamic_Attachment instead of the old | |
38664 | No_Dynamic_Interrupts. | |
38665 | ||
38666 | * exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that | |
38667 | supersedes the GNAT specific restriction Boolean_Entry_Barriers. | |
38668 | ||
38669 | * gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead | |
38670 | of the old Max_Entry_Queue_Depth. | |
38671 | ||
38672 | 2004-05-03 GNAT Script <nobody@gnat.com> | |
38673 | ||
38674 | * Make-lang.in: Makefile automatically updated | |
38675 | ||
d935a36e AC |
38676 | 2004-04-29 Ed Schonberg <schonberg@gnat.com> |
38677 | ||
38678 | * checks.adb (Enable_Range_Check): If the prefix of an index component | |
38679 | is an access to an unconstrained array, perform check unconditionally. | |
38680 | ||
38681 | 2004-04-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
38682 | ||
38683 | * decl.c (gnat_to_gnu_field): Also call make_packable_type if | |
38684 | Component_Clause. | |
38685 | ||
38686 | 2004-04-29 Olivier Hainque <hainque@act-europe.fr> | |
38687 | ||
38688 | * init.c (__gnat_install_handler, __gnat_error_handler): Remove | |
38689 | alternate stack setting. There was no support for the tasking cases | |
38690 | and the changes eventually caused a number of side-effect failures in | |
38691 | the non-tasking case too. | |
38692 | ||
38693 | 2004-04-29 Eric Botcazou <ebotcazou@act-europe.fr> | |
38694 | ||
38695 | lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or | |
38696 | -gnats is passed. | |
38697 | ||
38698 | 2004-04-29 Vincent Celier <celier@gnat.com> | |
38699 | ||
38700 | * make.adb (Gnatmake): Increase max size of argument array for | |
38701 | gnatbind for the potential addition of -F. | |
38702 | If there are Stand-Alone Library projects, invoke gnatbind with -F to | |
38703 | be sure that elaboration flags will be checked. | |
38704 | ||
38705 | * switch-c.adb: Correct call to Scan_Pos for -gnateI | |
38706 | ||
38707 | 2004-04-29 Thomas Quinot <quinot@act-europe.fr> | |
38708 | ||
38709 | * sem_warn.adb (Check_References): Move '<access-variable> may be | |
38710 | null' warning out of under Warn_On_No_Value_Assigned. | |
38711 | ||
38712 | 2004-04-29 Ed Falis <falis@gnat.com> | |
38713 | ||
38714 | * gnat_ugn.texi: Fixed texi error | |
38715 | ||
38716 | 2004-04-29 Robert Dewar <dewar@gnat.com> | |
38717 | ||
38718 | * sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove | |
38719 | abstract operations if they come from predefined files. | |
38720 | ||
38721 | * gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be | |
38722 | Dynamic, not RM). | |
38723 | ||
38724 | * s-addope.adb: Correct obvious error in mod function | |
38725 | ||
38726 | 2004-04-28 Andrew W. Reynolds <awreynolds@mac.com> | |
38727 | ||
38728 | * Makefile.in: Add target pairs for powerpc darwin* | |
38729 | tasking support. | |
38730 | ||
38731 | * a-intnam-darwin.ads, s-osinte-darwin.adb, | |
38732 | s-osinte-darwin.ads, system-darwin-ppc.ads: New files. | |
38733 | ||
ea16c81b UW |
38734 | 2004-04-28 Ulrich Weigand <uweigand@de.ibm.com> |
38735 | ||
38736 | * Makefile.in: Add target macro definitions for s390*-linux*. | |
38737 | * system-linux-s390.ads: New file. | |
38738 | * system-linux-s390x.ads: New file. | |
38739 | ||
f0e6f845 JM |
38740 | 2004-04-28 Joseph S. Myers <jsm@polyomino.org.uk> |
38741 | ||
38742 | * gnat_ugn.texi: Correct argument to @setfilename. | |
38743 | ||
e8c2eedc UW |
38744 | 2004-04-28 Ulrich Weigand <uweigand@de.ibm.com> |
38745 | ||
38746 | * a-exexpr.adb (Unwind_Word): New data type. | |
38747 | (Unwind_Exception): Use it as type of Private1 and Private2. | |
38748 | ||
38749 | * raise.c (db_action_for): Fix debug printf. | |
38750 | ||
f2c9e65a AC |
38751 | 2004-04-27 Ed Schonberg <schonberg@gnat.com> |
38752 | ||
38753 | * a-wtmoio.ads: Formal type must be a modular type, not a signed | |
38754 | integer type. | |
38755 | ||
38756 | 2004-04-27 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
38757 | ||
38758 | * decl.c (gnat_to_gnu_entity, case object): Call | |
38759 | __builtin_update_setjmp_buf. | |
38760 | ||
38761 | * gigi.h (update_setjmp_buf): Deleted. | |
38762 | (ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New. | |
38763 | ||
38764 | * misc.c: (update_setjmp_buf): Deleted. | |
38765 | ||
38766 | * trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue | |
38767 | around block of RTL. | |
38768 | ||
38769 | * utils.c (init_gigi_decls): Initialize update_setjmp_buf. | |
38770 | ||
35b7fa6a AC |
38771 | 2004-04-26 Thomas Quinot <quinot@act-europe.fr> |
38772 | ||
38773 | * sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local | |
38774 | subprogram for which no pragma All_Calls_Remote applies, store the | |
38775 | address of the real subprogram in the underlying record type, so local | |
38776 | dereferences do not go through the PCS. | |
38777 | ||
38778 | 2004-04-26 Robert Dewar <dewar@gnat.com> | |
38779 | ||
38780 | * i-c.ads: Add some type qualifications to avoid ambiguities when | |
38781 | compiling with s-auxdec.ads and a non-private address type. | |
38782 | ||
38783 | 2004-04-26 Arnaud Charlet <charlet@act-europe.fr> | |
38784 | ||
38785 | * Makefile.rtl: Fix error in previous check-in: | |
38786 | Add s-addope.o to non tasking object list (rather than tasking object | |
38787 | list). | |
38788 | ||
38789 | 2004-04-26 Javier Miranda <miranda@gnat.com> | |
38790 | ||
38791 | * sem_aggr.adb: Fix typo in comments | |
38792 | (Resolve_Aggr_Expr): Propagate the type to the nested aggregate. | |
38793 | Required to check the null-exclusion attribute. | |
38794 | ||
38795 | * sem_attr.adb (Resolve_Attribute): Check the accessibility level in | |
38796 | case of anonymous access types in record and array components. For a | |
38797 | component definition the level is the same of the enclosing composite | |
38798 | type. | |
38799 | ||
38800 | * sem_ch3.adb (Analyze_Component_Declaration): In case of components | |
38801 | that are anonymous access types the level of accessibility depends on | |
38802 | the enclosing type declaration. In order to have this information, set | |
38803 | the scope of the anonymous access type to the enclosing record type | |
38804 | declaration. | |
38805 | (Array_Type_Declaration): In case of components that are anonymous | |
38806 | access types the level of accessibility depends on the enclosing type | |
38807 | declaration. In order to have this information, set the scope of the | |
38808 | anonymous access type to the enclosing array type declaration. | |
38809 | ||
38810 | * sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous | |
38811 | access type. | |
38812 | ||
38813 | * sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that | |
38814 | renaming of anonymous access-to-constant types allowed if and only if | |
38815 | the renamed object is access-to-constant. | |
38816 | ||
38817 | * sem_util.adb (Type_Access_Level): In case of anonymous access types | |
38818 | that are component_definition or discriminants of a nonlimited type, | |
38819 | the level is the same as that of the enclosing component type. | |
38820 | ||
38821 | 2004-04-26 Sergey Rybin <rybin@act-europe.fr> | |
38822 | ||
38823 | * sem_elim.adb: Some minor code reorganization from code reading. Fix | |
38824 | misprint in the function name (File_Name_Match). | |
38825 | ||
9e94c78f | 38826 | 2004-04-23 Laurent Guerby <laurent@guerby.net> |
5a944040 | 38827 | |
90afe2c9 | 38828 | * Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after |
5a944040 | 38829 | install. |
90afe2c9 | 38830 | |
d0fd1344 RO |
38831 | 2004-04-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
38832 | ||
38833 | * Make-lang.in (GNATBIND_OBJS): Add s-addope.o. | |
38834 | ||
cc4f0de1 AC |
38835 | 2004-04-23 Emmanuel Briot <briot@act-europe.fr> |
38836 | ||
38837 | * adaint.c (__gnat_try_lock): No longer requires that the parent | |
38838 | directory be writable, the directory itself is enough. | |
38839 | (gnat_is_absolute_path): Change profile, so that the call from | |
38840 | GNAT.OS_Lib can be made more efficient. | |
38841 | ||
38842 | * adaint.h (gnat_is_absolute_path): Change profile, so that the call | |
38843 | from GNAT.OS_Lib can be made more efficient. | |
38844 | ||
38845 | * g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid | |
38846 | one copy of the file name. Found by code reading. | |
38847 | ||
38848 | 2004-04-23 Vincent Celier <celier@gnat.com> | |
38849 | ||
38850 | * gnat_ugn.texi: Add documentation for gnatmake switch -eL | |
38851 | Correct documentation on gnatmake switches transmitted to the compiler | |
38852 | ||
38853 | * ali.ads: Minor comment fix | |
38854 | ||
38855 | 2004-04-23 Javier Miranda <miranda@gnat.com> | |
38856 | ||
38857 | * sem_ch6.adb: (Confirming Types): Code cleanup | |
38858 | ||
38859 | * decl.c (gnat_to_gnu_entity): Give support to anonymous access to | |
38860 | subprogram types: E_Anonymous_Access_Subprogram_Type and | |
38861 | E_Anonymous_Access_Protected_Subprogram_Type. | |
38862 | ||
38863 | 2004-04-23 Thomas Quinot <quinot@act-europe.fr> | |
38864 | ||
38865 | * sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating | |
38866 | whether a pragma All_Calls_Remote applies to the subprogram on which | |
38867 | 'Access is taken. | |
38868 | No functional change is introduced by this revision; the new parameter | |
38869 | will be used to allow calls to local RCI subprograms to be optimized | |
38870 | to not use the PCS in the case where no pragma All_Calls_Remote applies, | |
38871 | as is already done in the PolyORB implementation of the DSA. | |
38872 | ||
38873 | * exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating | |
38874 | whether a pragma All_Calls_Remote applies to the subprogram on which | |
38875 | 'Access is taken. | |
38876 | No functional change is introduced by this revision; the new parameter | |
38877 | will be used to allow calls to local RCI subprograms to be optimized | |
38878 | to not use the PCS in the case where no pragma All_Calls_Remote applies, | |
38879 | as is already done in the PolyORB implementation of the DSA. | |
38880 | ||
38881 | 2004-04-23 Robert Dewar <dewar@gnat.com> | |
38882 | ||
38883 | * Makefile.rtl: Add entry for s-addope.o in run time library list | |
38884 | * Make-lang.in: Add entry for s-addope.o to GNAT1 objects | |
38885 | * s-addope.ads, s-addope.adb: New files. | |
38886 | ||
90afe2c9 ZW |
38887 | * s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb, |
38888 | s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb, | |
cc4f0de1 AC |
38889 | s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow |
38890 | System.Address to be non-private and signed. | |
38891 | ||
38892 | * sem_elim.adb: Minor reformatting (fairly extensive) | |
38893 | Some minor code reorganization from code reading | |
38894 | Add a couple of ??? comments | |
38895 | ||
38896 | 2004-04-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
38897 | ||
38898 | * trans.c (tree_transform, build_unit_elab): Don't call getdecls. | |
90afe2c9 | 38899 | (tree_transform, case N_If_Statement): Remove non-determinism. |
cc4f0de1 AC |
38900 | |
38901 | * utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL. | |
38902 | ||
38903 | 2004-04-23 Sergey Rybin <rybin@act-europe.fr> | |
38904 | ||
38905 | * gnat_rm.texi: Small fixes in the changes made in the 'pragma | |
38906 | Eliminate' section. | |
38907 | ||
38908 | * snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is | |
38909 | no longer used as a parameter name for Eliminate pragma). | |
38910 | ||
9e94c78f | 38911 | 2004-04-22 Laurent Guerby <laurent@guerby.net> |
78bad775 LG |
38912 | |
38913 | PR optimization/14984 | |
38914 | PR optimization/14985 | |
38915 | * trans.c (gigi): Fix non determinism leading to bootstrap | |
38916 | comparison failures. | |
38917 | ||
af4b9434 AC |
38918 | 2004-04-21 Pascal Obry <obry@gnat.com> |
38919 | ||
38920 | * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0]) | |
38921 | passed to spawnvp() to properly handle program pathname with spaces on | |
38922 | Win32. | |
38923 | ||
38924 | 2004-04-21 Emmanuel Briot <briot@act-europe.fr> | |
38925 | ||
38926 | * g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False. | |
38927 | (Allocate, Deallocate, Free_Physically): Make sure the tasks are | |
38928 | unlocked in case of exceptions. | |
38929 | ||
38930 | 2004-04-21 Joel Brobecker <brobecker@gnat.com> | |
38931 | ||
38932 | * gigi.h (get_target_no_dollar_in_label): Remove extern declaration. | |
38933 | This function does not exist anymore. | |
38934 | ||
38935 | 2004-04-21 Thomas Quinot <quinot@act-europe.fr> | |
38936 | ||
38937 | * gnatbind.adb, gnatlink.adb: Update name of imported C symbol. | |
38938 | ||
38939 | * link.c: Move variables to the __gnat name space. | |
38940 | ||
38941 | * Makefile.in: list link.o explicitly when needed. | |
38942 | ||
38943 | * mlib.adb: Remove pragma Linker_Option for "link.o" from mlib. | |
38944 | ||
38945 | 2004-04-21 Javier Miranda <miranda@gnat.com> | |
38946 | ||
38947 | * einfo.adb (Original_Access_Type): New subprogram | |
38948 | (Set_Original_Access_Type): New subprogram | |
38949 | (Write_Field21_Name): Write the name of the new field | |
38950 | ||
38951 | * einfo.ads (Original_Access_Type): New field present in access to | |
38952 | subprogram types. | |
38953 | Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and | |
38954 | E_Anonymous_Access_Protected_Subprogram_Type. | |
38955 | ||
38956 | * lib-xref.adb (Output_One_Ref): Give support to anonymous access to | |
38957 | subprogram types. | |
38958 | ||
38959 | * lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding | |
38960 | to anonymous access to subprogram types. | |
38961 | ||
38962 | * sem_attr.adb (Resolve_Attribute): Give support to anonymous access | |
38963 | to subprogram types. | |
38964 | ||
38965 | * sem_ch3.adb (Access_Definition): Complete decoration of entities | |
38966 | corresponding to anonymous access to subprogram types. | |
38967 | (Analyze_Component_Declaration): Add new actual to the call to | |
38968 | subprogram replace_anonymous_access_to_protected_subprogram. | |
38969 | (Array_Type_Declaration): Add new actual to the call to subprogram | |
38970 | replace_anonymous_access_to_protected_subprogram. | |
38971 | (Process_Discriminants): Add new actual to the call to subprogram | |
38972 | replace_anonymous_access_to_protected_subprogram. | |
38973 | (Replace_Anonymous_Access_To_Protected_Subprogram): New formal. | |
38974 | ||
38975 | * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New | |
38976 | formal. | |
38977 | ||
38978 | * sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous | |
38979 | access to subprogram types. | |
38980 | ||
38981 | * sem_util.adb (Has_Declarations): Addition of package_specification | |
38982 | nodes. | |
38983 | ||
38984 | 2004-04-21 Ed Schonberg <schonberg@gnat.com> | |
38985 | ||
38986 | * sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate | |
38987 | inlined flags to renamed entity only if in current unit. | |
38988 | ||
38989 | 2004-04-21 Thomas Quinot <quinot@act-europe.fr> | |
38990 | ||
38991 | * s-parint.ads: Add DSA implementation marker. | |
38992 | ||
38993 | * rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the | |
38994 | value of System.Partition_Interface.DSA_Implementation to determine | |
38995 | what version of the distributed systems annex is available (no | |
38996 | implementation, GLADE, or PolyORB). | |
38997 | ||
38998 | 2004-04-21 Joel Brobecker <brobecker@gnat.com> | |
38999 | ||
39000 | * targtyps.c (get_target_no_dollar_in_label): Remove, no longer used. | |
39001 | ||
39002 | 2004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
39003 | ||
39004 | * utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node | |
39005 | with new type if alias sets differ. | |
39006 | Fixes ACATS c41103b. | |
39007 | ||
39008 | 2004-04-21 Vincent Celier <celier@gnat.com> | |
39009 | ||
39010 | * prj.ads: Remove FORTRAN as an accepted language: not tested yet. | |
39011 | Add array Lang_Args for the language specific compiling argument | |
39012 | switches. | |
39013 | ||
39014 | * gnat_ugn.texi: Explain in more details when a library is rebuilt. | |
39015 | ||
39016 | 2004-04-21 Sergey Rybin <rybin@act-europe.fr> | |
39017 | ||
39018 | * gnat_rm.texi: Update the descripton of the Eliminate pragma | |
39019 | according to the recent changes in the format of the parameters of the | |
39020 | pragma (replacing Homonym_Number with Source_Location). | |
39021 | ||
7324bf49 AC |
39022 | 2004-04-19 Arnaud Charlet <charlet@act-europe.fr> |
39023 | ||
39024 | * 5isystem.ads: Removed, unused. | |
39025 | ||
39026 | * gnat_rm.texi: Redo 1.13 change. | |
39027 | ||
39028 | 2004-04-19 Robert Dewar <dewar@gnat.com> | |
39029 | ||
39030 | * s-stoele.ads: Clean up definition of Storage_Offset (the new | |
39031 | definition is cleaner, avoids the kludge of explicit Standard operator | |
39032 | references, and also is consistent with a visible System.Address with | |
39033 | no visible operations. | |
39034 | ||
39035 | * s-geveop.adb: Add declarations to avoid assumption of visible | |
39036 | operations on type System.Address (since these might not be available | |
39037 | if Address is a non-private type for which the operations | |
39038 | are made abstract). | |
39039 | ||
39040 | * sem_eval.adb: Minor reformatting | |
39041 | ||
39042 | * s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads, | |
39043 | s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor | |
39044 | reformatting (new function spec format). | |
39045 | ||
39046 | * s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb, | |
39047 | s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb, | |
39048 | s-caun64.adb: Add declarations to avoid assumption of visible | |
39049 | operations on type System.Address (since these might not be available | |
39050 | if Address is a non-private type for which the operations are made | |
39051 | abstract). | |
39052 | ||
39053 | * lib.ads, lib.adb (Synchronize_Serial_Number): New procedure. | |
39054 | ||
39055 | * exp_intr.adb: Minor comment update | |
39056 | ||
39057 | * exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting. | |
39058 | ||
39059 | * 5omastop.adb: Add declarations to avoid assumption of visible | |
39060 | operations on type System.Address (since these might not be available | |
39061 | if Address is a non-private type for which the operations | |
39062 | are made abstract). | |
39063 | ||
39064 | 2004-04-19 Vincent Celier <celier@gnat.com> | |
39065 | ||
39066 | * switch-m.adb: (Scan_Make_Switches): Process new switch -eL | |
39067 | ||
39068 | * prj-pars.ads (Parse): New Boolean parameter Process_Languages, | |
39069 | defaulted to Ada. | |
39070 | ||
39071 | * prj-proc.adb (Process): New Boolean parameter Process_Languages, | |
39072 | defaulted to Ada. | |
39073 | Call Check with Process_Languages. | |
39074 | (Check): New Boolean parameter Process_Languages. Call Recursive_Check | |
39075 | with Process_Languages. | |
39076 | (Recursive_Check): New Boolean parameter Process_Languages. Call | |
39077 | Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to | |
39078 | Process_Languages. | |
39079 | ||
39080 | * prj-proc.ads (Process): New Boolean parameter Process_Languages, | |
39081 | ||
39082 | * prj-util.ads, prj-util.adb (Executable_Of): New Boolean | |
39083 | parameter Ada_Main, defaulted to True. | |
39084 | Check for Ada specific characteristics only when Ada_Main is True. | |
39085 | ||
39086 | * opt.ads: (Follow_Links): New Boolean flag for gnatmake | |
39087 | ||
39088 | * prj.adb: (Project_Empty): Add new Project_Data components. | |
39089 | ||
39090 | * prj.ads: New types and tables for non Ada languages. | |
39091 | (Project_Data): New components Languages, Impl_Suffixes, | |
39092 | First_Other_Source, Last_Other_Source, Imported_Directories_Switches, | |
39093 | Include_Path, Include_Data_Set. | |
39094 | ||
39095 | * prj-env.ads, prj-env.adb: Minor reformatting | |
39096 | ||
39097 | * prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure | |
39098 | Put subprograms in alphabetical order | |
39099 | ||
39100 | * prj-pars.adb (Parse): New Boolean parameter Process_Languages, | |
39101 | defaulted to Ada; Call Prj.Proc.Process with Process_Languages and | |
39102 | Opt.Follow_Links. | |
39103 | ||
39104 | * mlib-prj.adb: Back out modification in last version, as they are | |
39105 | incorrect. | |
39106 | (Build_Library.Check_Libs): Remove useless pragma Warnings (Off) | |
39107 | ||
39108 | * make.adb: (Mains): Moved to package Makeutl | |
39109 | (Linker_Opts): Moved to package Makeutl | |
39110 | (Is_External_Assignment): Moved to package Makeutl | |
39111 | (Test_If_Relative_Path): Moved to package Makeutl | |
39112 | (Gnatmake): Move sorting of linker options to function | |
39113 | Makeutl.Linker_Options_Switches. | |
39114 | ||
8f9df7d8 VC |
39115 | * makeutl.ads, makeutl.adb: New files. |
39116 | ||
7324bf49 AC |
39117 | * Makefile.in: Add makeutl.o to the object files for gnatmake |
39118 | ||
39119 | * makeusg.adb: Add line for new switch -eL. | |
39120 | ||
39121 | * gnatls.adb (Image): New function. | |
39122 | (Output_Unit): If in verbose mode, output the list of restrictions | |
39123 | specified by pragmas Restrictions. | |
39124 | ||
39125 | * 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use | |
39126 | Text_IO. | |
39127 | ||
39128 | * a-calend.adb (Split): Shift the date by multiple of 56 years, if | |
39129 | needed, to put it in the range 1970 (included) - 2026 (excluded). | |
39130 | (Time_Of): Do not shift Unix_Min_Year (1970). | |
39131 | Shift the date by multiple of 56 years, if needed, to put it in the | |
39132 | range 1970 (included) - 2026 (excluded). | |
39133 | ||
39134 | * adaint.h, adaint.c (__gnat_set_executable): New function. | |
39135 | ||
39136 | 2004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
39137 | ||
39138 | * trans.c (tree_transform, case N_Subprogram_Body): Temporarily push | |
39139 | and pop GC context. | |
39140 | (tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE. | |
39141 | (tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH. | |
39142 | (tree_transform, case N_Procedure_Call_Statement): Build a tree. | |
39143 | (tree_transform, case N_Code_Statement): Likewise. | |
39144 | (gnat_expand_stmt, case LABEL_STMT): Don't look at | |
39145 | LABEL_STMT_FIRST_IN_EH. | |
39146 | (gnat_expand_stmt, case ASM_STMT): New case. | |
39147 | ||
39148 | * utils2.c (build_unary_op): Properly set TREE_READONLY of | |
39149 | UNCONSTRAINED_ARRAY_REF. | |
39150 | ||
39151 | * utils.c (poplevel): Temporarily push/pop GC context around inline | |
39152 | function expansion. | |
39153 | ||
39154 | * decl.c (maybe_variable): Properly set TREE_READONLY of | |
39155 | UNCONSTRAINED_ARRAY_REF. | |
39156 | (make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE. | |
39157 | ||
39158 | * ada-tree.def: (ASM_STMT): New. | |
39159 | ||
39160 | * ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted. | |
39161 | (ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT, | |
39162 | ASM_STMT_INPUT): New. | |
39163 | (ASM_STMT_CLOBBER): Likewise. | |
39164 | ||
39165 | 2004-04-19 Thomas Quinot <quinot@act-europe.fr> | |
39166 | ||
39167 | * a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use | |
39168 | general rcheck mechanism to raise Program_Error for E.4(18), instead | |
39169 | of a custom raiser in System.Partition_Interface. | |
39170 | Part of general cleanup work before PolyORB integration. | |
39171 | ||
39172 | * snames.ads, snames.adb: Add new runtime library entities and names | |
39173 | for PolyORB DSA. | |
39174 | ||
39175 | * sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to | |
39176 | exp_dist. | |
39177 | (Build_Subprogram_Id): New subprogram provided by exp_dist | |
39178 | Code reorganisation in preparation for PolyORB integration. | |
39179 | ||
39180 | * exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to | |
39181 | exp_dist. | |
39182 | (Build_Subprogram_Id): New subprogram provided by exp_dist | |
39183 | ||
39184 | * sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in | |
39185 | actual parameter types for call to dereference of an | |
39186 | access-to-subprogram type. | |
39187 | ||
39188 | * rtsfind.ads: Add new runtime library entities and names for PolyORB | |
39189 | DSA. | |
39190 | ||
39191 | * gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value | |
39192 | instead, which has the same behaviour here since we never pass it a | |
39193 | NULL pointer. | |
39194 | ||
39195 | * link.c (run_path_option, Solaris case): Use -Wl, as for other | |
39196 | platforms. | |
39197 | ||
39198 | * Makefile.in: adjust object file lists for gnatlink and gnatmake | |
39199 | to account for new dependency upon Interfaces.C.Strings + link.o | |
39200 | For x86 FreeBSD, use 86numaux. | |
39201 | ||
39202 | * make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up | |
39203 | from Mlib.Tgt to Mlib. | |
39204 | ||
39205 | * mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now | |
39206 | target-independent. | |
39207 | ||
39208 | * mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove | |
39209 | target-specific versions of this subprogram, now implemented as a | |
39210 | target-independent function in Mlib. | |
39211 | ||
39212 | * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb, | |
39213 | 5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb | |
39214 | (Linker_Library_Path_Option): Remove target-specific versions of this | |
39215 | subprogram, now implemented as a target-independent function in Mlib. | |
39216 | ||
39217 | * atree.adb: (Allocate_Initialize_Node): New subprogram. | |
39218 | Factors out node table slots allocation. | |
39219 | (Fix_Parents): New subprogram. | |
39220 | Encapsulate the pattern of fixing up parent pointers for syntactic | |
39221 | children of a rewritten node. | |
39222 | (New_Copy_Tree): Use New_Copy to copy non-entity nodes. | |
39223 | (Rewrite): Use New_Copy when creating saved copy of original node. | |
39224 | (Replace): Use Copy_Node to copy nodes. | |
39225 | ||
39226 | 2004-04-19 Javier Miranda <miranda@gnat.com> | |
39227 | ||
39228 | * sprint.adb (Sprint_Node_Actual): Give support to the new | |
39229 | Access_To_Subprogram node available in Access_Definition nodes. In | |
39230 | addition, give support to the AI-231 node fields: null-exclusion, | |
39231 | all-present, constant-present. | |
39232 | ||
39233 | * sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram | |
39234 | ||
90afe2c9 | 39235 | * sinfo.ads, sinfo.adb: |
7324bf49 AC |
39236 | New field Access_To_Subprogram_Definition in Access_Definition nodes |
39237 | ||
39238 | * sem_ch6.adb (Process_Formals): Move here the code that creates and | |
39239 | decorates internal subtype declaration corresponding to the | |
39240 | null-excluding formal. This code was previously in Set_Actual_Subtypes. | |
39241 | In addition, carry out some code cleanup on this code. In case of | |
39242 | access to protected subprogram call | |
39243 | Replace_Anonymous_Access_To_Protected_Subprogram. | |
39244 | (Set_Actual_Subtypes): Code cleanup. | |
39245 | ||
39246 | * sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to | |
39247 | Find_Type in case of anonymous access renamings. Add warning in case of | |
39248 | null-excluding attribute used in anonymous access renaming. | |
39249 | ||
39250 | * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New | |
39251 | subprogram | |
39252 | ||
39253 | * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New | |
39254 | subprogram. | |
39255 | (Access_Definition): In case of anonymous access to subprograms call | |
39256 | the corresponding semantic routine to decorate the node. | |
39257 | (Access_Subprogram_Declaration): Addition of some comments indicating | |
39258 | some code that probably should be added here. Detected by comparison | |
39259 | with the access_definition subprogram. | |
39260 | (Analyze_Component_Declaration): In case of access to protected | |
39261 | subprogram call Replace_Anonymous_Access_To_Protected. | |
39262 | (Array_Type_Declaration): In case of access to protected subprogram call | |
39263 | Replace_Anonymous_Access_To_Protected_Subprogram. | |
39264 | (Process_Discriminants): In case of access to protected subprogram call | |
39265 | Replace_Anonymous_Access_To_Protected_Subprogram. | |
39266 | ||
39267 | * par.adb (P_Access_Definition): New formal that indicates if the | |
39268 | null-exclusion part was present. | |
39269 | (P_Access_Type_Definition): New formal that indicates if the caller has | |
39270 | already parsed the null-excluding part. | |
39271 | ||
39272 | * par-ch3.adb (P_Subtype_Declaration): Code cleanup. | |
39273 | (P_Identifier_Declarations): Code cleanup and give support to renamings | |
39274 | of anonymous access to subprogram types. | |
39275 | (P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup. | |
39276 | (P_Array_Type_Definition): Give support to AI-254. | |
39277 | (P_Component_Items): Give support to AI-254. | |
39278 | (P_Access_Definition): New formal that indicates if the header was | |
39279 | already parsed by the caller. | |
39280 | (P_Access_Type_Definition): New formal that indicates if the caller has | |
39281 | already parsed the null-excluding part. | |
39282 | ||
39283 | * par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the | |
39284 | call to P_Access_Definition. | |
39285 | ||
39286 | 2004-04-19 Geert Bosch <bosch@gnat.com> | |
39287 | ||
39288 | * checks.adb (Apply_Float_Conversion_Check): New procedure to implement | |
39289 | the delicate semantics of floating-point to integer conversion. | |
39290 | (Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check. | |
39291 | ||
39292 | * eval_fat.adb (Machine_Mantissa): Moved to spec. | |
39293 | (Machine_Radix): New function. | |
39294 | ||
39295 | * eval_fat.ads (Machine_Mantissa): Moved from body for use in | |
39296 | conversion checks. | |
39297 | (Machine_Radix): New function also for use in conversion checks. | |
39298 | ||
39299 | 2004-04-19 Ed Schonberg <schonberg@gnat.com> | |
39300 | ||
39301 | * par-prag.adb (Source_File_Name_Project): Fix typo in error message. | |
39302 | ||
39303 | * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze | |
39304 | to decorate the access-to-protected subprogram and the equivalent type. | |
39305 | ||
39306 | * checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support | |
39307 | to anonymous access to subprogram types. | |
39308 | ||
39309 | * exp_ch4.adb (Expand_N_In): Preserve Static flag before | |
39310 | constant-folding, for legality checks in contexts that require an RM | |
39311 | static expression. | |
39312 | ||
39313 | * exp_ch6.adb (Expand_N_Function_Call): If call may generate large | |
39314 | temporary but stack checking is not enabled, increment serial number | |
39315 | to so that symbol generation is consistent with and without stack | |
39316 | checking. | |
39317 | ||
39318 | * exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is | |
39319 | independent on whether stack checking is enabled, caller must check | |
39320 | the corresponding flag. | |
39321 | ||
39322 | * sem_ch3.adb (Constrain_Index): Index bounds given by attributes need | |
39323 | range checks. | |
39324 | (Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from | |
39325 | parent if it has discriminants. | |
39326 | (Build_Derived_Private_Type): Constructed full view does | |
39327 | not come from source. | |
39328 | (Process_Discriminants): Default discriminants on a tagged type are | |
39329 | legal if this is the internal completion of a private untagged | |
39330 | derivation. | |
39331 | ||
39332 | * sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs | |
39333 | no constraint checks, because it corresponds to an existing object. | |
39334 | ||
39335 | * sem_prag.adb (Process_Convention): Pragma applies | |
39336 | only to subprograms in the same declarative part, i.e. the same unit, | |
39337 | not the same scope. | |
39338 | ||
39339 | * sem_res.adb (Valid_Conversion): In an instance or inlined body, | |
39340 | ignore type mismatch on a numeric conversion if expression comes from | |
39341 | expansion. | |
39342 | ||
39343 | 2004-04-19 Sergey Rybin <rybin@act-europe.fr> | |
39344 | ||
39345 | * sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for | |
39346 | Homonym_Number parameter, add processing for Source_Location parameter | |
39347 | corresponding. | |
39348 | (Check_Eliminated): Remove the check for homonym numbers, add the check | |
39349 | for source location traces. | |
39350 | ||
39351 | * sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number | |
39352 | with Arg_Source_Location corresponding to the changes in the format of | |
39353 | the pragma. | |
39354 | ||
39355 | * sem_prag.adb: (Analyze_Pragma): Changes in the processing of | |
39356 | Eliminate pragma corresponding to the changes in the format of the | |
39357 | pragma: Homonym_Number is replaced with Source_Location, two ways of | |
39358 | distinguishing homonyms are mutially-exclusive. | |
39359 | ||
39360 | 2004-04-19 Joel Brobecker <brobecker@gnat.com> | |
39361 | ||
39362 | * get_targ.ads (Get_No_Dollar_In_Label): Remove. | |
39363 | ||
39364 | * exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of | |
39365 | No_Dollar_In_Label, no longer necessary, as it is always True. | |
39366 | (Strip_Suffixes): Likewise. | |
39367 | ||
39368 | 2004-04-19 Gary Dismukes <dismukes@gnat.com> | |
39369 | ||
39370 | * s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of | |
39371 | modulus for compatibility with size clause on targets with 16-bit | |
39372 | Integer. | |
39373 | ||
39374 | * layout.adb (Discrimify): In the case of private types, set Vtyp to | |
39375 | full type to fix type mismatches on calls to size functions for | |
39376 | discriminant-dependent array components. | |
39377 | ||
39378 | 2004-04-19 Jerome Guitton <guitton@act-europe.fr> | |
39379 | ||
39380 | * Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time | |
39381 | lib. | |
39382 | ||
39383 | 2004-04-19 Pascal Obry <obry@gnat.com> | |
39384 | ||
39385 | * mdll-utl.adb (Locate): New version is idempotent. | |
39386 | ||
9e94c78f | 39387 | 2004-04-17 Laurent Guerby <laurent@guerby.net> |
fa795c69 LG |
39388 | |
39389 | PR ada/14988 (partial) | |
39390 | * impunit.adb: Fix typo. | |
90afe2c9 | 39391 | |
cce0244b NN |
39392 | 2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org> |
39393 | ||
39394 | * Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none, | |
39395 | and install-rts-cert targets. Remove all gnatlib and gnattools | |
39396 | targets and all other rts-* targets (moved to libada). Remove (now) | |
39397 | unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND, | |
39398 | TRACE, GNATLIBFLAGS, GNATLIBCFLAGS. | |
39399 | ||
af152989 AC |
39400 | 2004-04-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
39401 | ||
39402 | * trans.c (tree_transform): Shortcut returning error_mark_node for | |
39403 | statements in annotate_only_mode. | |
39404 | (tree_transform, case N_Label, case N_Return_Statement, | |
39405 | N_Goto_Statement): Make statement tree instead of generating code. | |
39406 | (tree_transform, case N_Assignment_Statement): No longer check | |
39407 | type_annotate_only. | |
39408 | (gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case | |
39409 | RETURN_STMT): New. | |
39410 | (first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl): | |
39411 | New fcns. | |
39412 | (gnat_to_gnu): Collect any RTL generated and deal with it. | |
39413 | (tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR. | |
39414 | (tree_transform case N_If_Statement): Rewrite to make IF_STMT. | |
39415 | (gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases. | |
39416 | ||
39417 | * ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes. | |
39418 | ||
39419 | * ada-tree.def (EXPR_STMT): Fix typo in name. | |
39420 | (BLOCK_STMT, IF_STMT): New nodes. | |
39421 | ||
39422 | * ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL, | |
39423 | LABEL_STMT_FIRST_IN_EH): New macros. | |
39424 | (RETURN_STMT_EXPR): Likewise. | |
39425 | ||
39426 | * ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE, | |
39427 | IF_STMT_ELSEIF, IF_STMT_ELSE): New macros. | |
39428 | ||
39429 | 2004-04-08 Thomas Quinot <quinot@act-europe.fr> | |
39430 | ||
39431 | * atree.ads: Correct documentation on extended nodes. | |
39432 | ||
39433 | * link.c: Set run_path_option for FreeBSD. | |
39434 | ||
39435 | 2004-04-08 Vincent Celier <celier@gnat.com> | |
39436 | ||
39437 | * mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is | |
39438 | one of the ALI file, do not link with DEC lib. | |
39439 | ||
39440 | * par.adb Remove the last two characters ("%s" or "%b") when checking | |
39441 | if a language defined unit may be recompiled. | |
39442 | ||
39443 | 2004-04-08 Ed Schonberg <schonberg@gnat.com> | |
39444 | ||
39445 | * sem_ch4.adb (Remove_Abstract_Operations): Improve error message when | |
39446 | removal of abstract operation leaves no possible interpretation for | |
39447 | expression. | |
39448 | ||
39449 | * sem_eval.adb (Eval_Qualified_Expression): Use | |
39450 | Set_Raises_Constraint_Error on node when needed, so that it does not | |
39451 | get optimized away by subsequent optimizations. | |
39452 | ||
39453 | * sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of | |
39454 | operands even when they are not wrapped in a type conversion. | |
39455 | ||
39456 | 2004-04-08 Olivier Hainque <hainque@act-europe.fr> | |
39457 | ||
39458 | * sem_prag.adb (Set_Exported): Warn about making static as result of | |
39459 | export only when the export is coming from source. This may be not | |
39460 | be true e.g. on VMS where we expand export pragmas for exception codes | |
39461 | together with imported or exported exceptions, and we don't want the | |
39462 | user to be warned about something he didn't write. | |
39463 | ||
39464 | 2004-04-08 Thomas Quinot <quinot@act-europe.fr> | |
39465 | ||
39466 | * sem_util.adb (Note_Possible_Modification): Reorganize to remove code | |
39467 | duplication between normal entities and those declared as renamings. | |
39468 | No functional change. | |
39469 | ||
90afe2c9 | 39470 | * s-fileio.ads (Form): Remove pragma Inline, as we cannot currently |
af152989 AC |
39471 | inline functions returning an unconstrained result. |
39472 | ||
39473 | 2004-04-08 Eric Botcazou <ebotcazou@act-europe.fr> | |
39474 | ||
39475 | * utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to | |
39476 | conform to what other front-ends do. | |
39477 | ||
39478 | 2004-04-08 Doug Rupp <rupp@gnat.com> | |
39479 | ||
39480 | * 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared | |
39481 | libraries. | |
39482 | ||
3984e89a AC |
39483 | 2004-04-06 Pascal Obry <obry@gnat.com> |
39484 | ||
39485 | * adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32. | |
39486 | ||
39487 | * osint.adb (Program_Name): Do not look past a directory separator. | |
39488 | ||
39489 | 2004-04-06 Thomas Quinot <quinot@act-europe.fr> | |
39490 | ||
39491 | * atree.adb: Update comment (Rewrite_Substitute_Node no longer exists). | |
39492 | ||
39493 | * exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of | |
39494 | requirement for preserving a copy of the original assignment node. | |
39495 | ||
39496 | * sinfo.ads: Update comment (Original_Tree -> Original_Node). | |
39497 | ||
39498 | 2004-04-06 Olivier Hainque <hainque@act-europe.fr> | |
39499 | ||
39500 | (__gnat_initialize [Vxworks]): Enable references to the crtstuff bits | |
39501 | when supported. | |
39502 | ||
39503 | 2004-04-06 Ed Schonberg <schonberg@gnat.com> | |
39504 | ||
39505 | * sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to | |
39506 | operator calls in functional notation, and apply | |
39507 | Universal_Interpretation to operands, not to their type. | |
39508 | ||
39509 | 2004-04-06 Robert Dewar <dewar@gnat.com> | |
39510 | ||
39511 | * 5wdirval.adb: Minor reformatting | |
39512 | ||
39513 | 2004-04-06 Ed Falis <falis@gnat.com> | |
39514 | ||
39515 | * gnat_rm.texi: Improve a reference to the GCC manual | |
39516 | ||
30c20106 AC |
39517 | 2004-04-05 Vincent Celier <celier@gnat.com> |
39518 | ||
39519 | * adaint.h, adaint.c: Add function __gnat_named_file_length | |
39520 | ||
39521 | * impunit.adb: Add Ada.Directories to the list | |
39522 | ||
39523 | * Makefile.in: Add VMS and Windows versions of | |
39524 | Ada.Directories.Validity package body. | |
39525 | ||
39526 | * Makefile.rtl: Add a-direct and a-dirval | |
39527 | ||
39528 | * mlib-tgt.ads: Minor comment update. | |
39529 | ||
39530 | * a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb, | |
39531 | a-direct.ads, a-direct.adb: New files. | |
39532 | ||
39533 | 2004-04-05 Vincent Celier <celier@gnat.com> | |
39534 | ||
39535 | PR ada/13620 | |
39536 | * make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not | |
39537 | just to the compiler. | |
39538 | ||
39539 | 2004-04-05 Robert Dewar <dewar@gnat.com> | |
39540 | ||
39541 | * a-except.adb (Exception_Name_Simple): Make sure lower bound of | |
39542 | returned string is 1. | |
39543 | ||
39544 | * ali-util.adb: Use proper specific form for Warnings (Off, entity) | |
39545 | ||
39546 | * eval_fat.ads: Minor reformatting | |
39547 | ||
39548 | * g-curexc.ads: Document that lower bound of returned string values | |
39549 | is always one. | |
39550 | ||
39551 | * gnatlink.adb: Add ??? comment for previous change | |
39552 | (need to document why this is VMS specific) | |
39553 | ||
39554 | * s-stoele.ads: Minor reformatting | |
39555 | ||
39556 | * tbuild.ads: Minor reformatting throughout (new function specs) | |
39557 | ||
39558 | * par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon | |
39559 | after WITH. | |
39560 | ||
39561 | * scng.adb: Minor reformatting | |
39562 | ||
39563 | 2004-04-05 Geert Bosch <bosch@gnat.com> | |
39564 | ||
39565 | * eval_fat.adb (Machine): Remove unnecessary suppression of warning. | |
39566 | (Leading_Part): Still perform truncation to machine number if the | |
39567 | specified radix_digits is greater or equal to machine_mantissa. | |
39568 | ||
39569 | 2004-04-05 Javier Miranda <miranda@gnat.com> | |
39570 | ||
39571 | * par-ch3.adb: Complete documentation of previous change | |
39572 | Correct wrong syntax documentation of the OBJECT_DECLARATION rule | |
39573 | (aliased must appear before constant). | |
39574 | ||
39575 | * par-ch4.adb: Complete documentation of previous change. | |
39576 | ||
39577 | * par-ch6.adb: Complete documentation of previous change. | |
39578 | ||
39579 | * sinfo.ads: Fix typo in commment. | |
39580 | ||
39581 | 2004-04-05 Ed Schonberg <schonberg@gnat.com> | |
39582 | ||
39583 | * sem_ch3.adb (Inherit_Components): If derived type is private and has | |
39584 | stored discriminants, use its discriminants to constrain parent type, | |
39585 | as is done for non-private derived record types. | |
39586 | ||
39587 | * sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement | |
39588 | Ada 2005 AI-310: an abstract non-dispatching operation is not a | |
39589 | candidate interpretation in an overloaded call. | |
39590 | ||
39591 | * tbuild.adb (Unchecked_Convert_To): Preserve conversion node if | |
39592 | expression is Null and target type is not an access type (e.g. a | |
39593 | non-private address type). | |
39594 | ||
39595 | 2004-04-05 Thomas Quinot <quinot@act-europe.fr> | |
39596 | ||
39597 | * exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment | |
39598 | statement whose right-hand side is an inlined call, save a copy of the | |
39599 | original assignment subtree to preserve enough consistency for | |
39600 | Analyze_Assignment to proceed. | |
39601 | ||
39602 | * sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the | |
39603 | complete assignment subtree which is now unnecessary, as the expansion | |
39604 | of inlined call has been improved to preserve a consistent assignment | |
39605 | tree. Note_Possible_Modification must be called only | |
39606 | after checks have been applied, or else unnecessary checks will | |
39607 | be generated. | |
39608 | ||
39609 | * sem_util.adb (Note_Possible_Modification): Reorganise the handling | |
39610 | of explicit dereferences that do not Come_From_Source: | |
39611 | - be selective on cases where we must go back to the dereferenced | |
39612 | pointer (an assignment to an implicit dereference must not be | |
39613 | recorded as modifying the pointer); | |
39614 | - do not rely on Original_Node being present (Analyze_Assignment | |
39615 | calls Note_Possible_Modification on a copied tree). | |
39616 | ||
39617 | * sem_warn.adb (Check_References): When an unset reference to a pointer | |
39618 | that is never assigned is encountered, prefer '<pointer> may be null' | |
39619 | warning over '<pointer> is never assigned a value'. | |
39620 | ||
39621 | 2004-04-05 Ramon Fernandez <fernandez@gnat.com> | |
39622 | ||
39623 | * tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with | |
39624 | the ABI. | |
39625 | ||
39626 | 2004-04-05 Olivier Hainque <hainque@act-europe.fr> | |
39627 | ||
39628 | * 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for | |
39629 | libexc. We currently don't reference anything in this library and | |
39630 | linking it in triggers linker warnings we don't want to see. | |
39631 | ||
39632 | * init.c: Update comments. | |
39633 | ||
4f976745 RK |
39634 | 2004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
39635 | ||
39636 | * decl.c (gnat_to_gnu_entity): Use TYPE_READONLY. | |
39637 | * utils.c (create_field_decl): Likewise. | |
39638 | * utils2.c (build_unary_op, gnat_build_constructor): Likewise. | |
39639 | ||
6da7d579 AC |
39640 | 2004-04-02 Arnaud Charlet <charlet@act-europe.fr> |
39641 | ||
39642 | * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags. | |
39643 | Replace ifinfo by ifnottex, to make makeinfo --html happy again. | |
39644 | Add info directory entry and category. | |
39645 | ||
18c6ada9 JH |
39646 | 2004-04-02 Jan Hubicka <jh@suse.cz> |
39647 | ||
39648 | * utils.c: Include function.h | |
39649 | (end_subprog_body): Clear DECL_STRUCT_FUNCTION. | |
39650 | ||
7cd4527e AC |
39651 | 2004-04-01 Arnaud Charlet <charlet@act-europe.fr> |
39652 | ||
39653 | PR ada/14150 | |
39654 | * Make-lang.in: Clean up generation of documentation | |
39655 | ||
39656 | * gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version | |
39657 | ||
39658 | * xgnatug.adb: Removed, replaced by xgnatugn.adb | |
39659 | ||
39660 | * xgnatugn.adb: Replaces xgnatug.adb | |
39661 | ||
39662 | * gnat_ug.texi: Removed, replaced by gnat_ugn.texi | |
39663 | ||
39664 | * gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version | |
39665 | ||
39666 | * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi, | |
39667 | gnat_ug_wnt.texi: Removed. | |
39668 | ||
0c250f07 AC |
39669 | 2004-04-01 Arnaud Charlet <charlet@act-europe.fr> |
39670 | ||
39671 | * utils2.c: Update copyright notice. | |
39672 | ||
6b6fcd3e AC |
39673 | 2004-04-01 Robert Dewar <dewar@gnat.com> |
39674 | ||
39675 | * checks.adb: Minor reformatting throughout | |
39676 | Note that prev checkin added RM reference to alignment warning | |
39677 | ||
39678 | 2004-04-01 Ed Schonberg <schonberg@gnat.com> | |
39679 | ||
39680 | * exp_aggr.adb (Get_Component_Val): Treat a string literal as | |
39681 | non-static when building aggregate for bit-packed array. | |
39682 | ||
39683 | * exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a | |
39684 | function call that is itself the actual in a procedure call, build | |
39685 | temporary for it. | |
39686 | ||
39687 | * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is | |
39688 | a string literal, create a temporary for it, constant folding only | |
39689 | handles scalars here. | |
39690 | ||
39691 | 2004-04-01 Vincent Celier <celier@gnat.com> | |
39692 | ||
39693 | * ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC, | |
39694 | Error_Msg_SP): New empty procedures to instantiate the Scanner. | |
39695 | (Style, Scanner): Instantiations of Styleg and Scng to be able to scan | |
39696 | tokens. | |
39697 | (Accumulate_Checksum, Initialize_Checksum): Remove procedures. | |
39698 | (Get_File_Checksum): Use the instantiated scanner to scan all the tokens | |
39699 | and get the checksum. | |
39700 | ||
39701 | * make.adb (Gnatmake): Do not insert into Q the Main_Source if it is | |
39702 | already in the Q. | |
39703 | Increase the Marking_Label at the end of the Multiple_Main_Loop, | |
39704 | instead of at the beginning. | |
39705 | ||
39706 | * osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~' | |
39707 | directly. | |
39708 | (Osint package elaboration): Change Multi_Unit_Index_Character to '$' if | |
39709 | on VMS. | |
39710 | ||
39711 | * osint.ads (Multi_Unit_Index_Character): New Character global variable | |
39712 | ||
39713 | * osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character, | |
39714 | not '~' directly. | |
39715 | ||
39716 | * par.adb: Remove test on file name to detect language defined units. | |
39717 | Add test on unit name, after parsing, to detect language defined units | |
39718 | that are not compiled with -gnatg (except System.RPC and its children) | |
39719 | ||
39720 | * par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the | |
39721 | following units without style checking. | |
39722 | ||
39723 | * switch-c.adb: Change -gnatC to -gnateI | |
39724 | ||
39725 | * usage.adb: Document new switch -gnateInnn | |
39726 | ||
39727 | * scng.adb (Accumulate_Token_Checksum): New procedure | |
39728 | (Scan): Call Accumulate_Token_Checksum after each identifier, reserved | |
39729 | word or literal number. | |
39730 | (Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral | |
39731 | numbers. | |
39732 | ||
39733 | 2004-04-01 Thomas Quinot <quinot@act-europe.fr> | |
39734 | ||
39735 | * a-tasatt.adb, | |
39736 | g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb, | |
39737 | switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb, | |
39738 | 5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, | |
39739 | 5vtpopde.adb: Add missing 'constant' keywords. | |
39740 | ||
39741 | 2004-04-01 Javier Miranda <miranda@gnat.com> | |
39742 | ||
39743 | * par-ch4.adb: (P_Allocator): Code cleanup | |
39744 | ||
39745 | * sem_ch3.adb (Access_Definition): Properly set the null-excluding | |
39746 | attribute. | |
39747 | ||
39748 | * sinfo.ads: Complete documentation of previous change | |
39749 | ||
39750 | 2004-04-01 Pascal Obry <obry@gnat.com> | |
39751 | ||
39752 | * gnatlink.adb (Process_Binder_File): Remove duplicate linker options | |
39753 | only on VMS. This special handling was done because an old GNU/ld bug | |
39754 | on Windows which has been fixed. | |
39755 | ||
39756 | 2004-04-01 GNAT Script <nobody@gnat.com> | |
39757 | ||
39758 | * Make-lang.in: Makefile automatically updated | |
39759 | ||
8df83eae RK |
39760 | 2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
39761 | ||
39762 | * decl.c (gnat_to_gnu_entity, make_type_from_size): | |
39763 | Use TYPE_UNSIGNED, not TREE_UNSIGNED. | |
39764 | * trans.c (tree_transform, convert_with_check): Likewise. | |
39765 | * utils.c (gnat_signed_or_unsigned_type): Likewise. | |
39766 | (build_vms_descriptor, unchecked_convert): Likewise. | |
39767 | * utils2.c (nonbinary_modular_operation): Likewise. | |
39768 | ||
2820d220 AC |
39769 | 2004-03-29 Javier Miranda <miranda@gnat.com> |
39770 | ||
39771 | * checks.adb (Null_Exclusion_Static_Checks): New subprogram | |
39772 | (Install_Null_Excluding_Check): Local subprogram that determines whether | |
39773 | an access node requires a runtime access check and if so inserts the | |
39774 | appropriate run-time check. | |
39775 | (Apply_Access_Check): Call Install_Null_Excluding check if required | |
39776 | (Apply_Constraint_Check): Call Install_Null_Excluding check if required | |
39777 | ||
39778 | * checks.ads: (Null_Exclusion_Static_Checks): New subprogram | |
39779 | ||
39780 | * einfo.ads: Fix typo in comment | |
39781 | ||
39782 | * exp_ch3.adb (Build_Assignment): Generate conversion to the | |
39783 | null-excluding type to force the corresponding run-time check. | |
39784 | (Expand_N_Object_Declaration): Generate conversion to the null-excluding | |
39785 | type to force the corresponding run-time check. | |
39786 | ||
39787 | * exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to | |
39788 | the null-excluding type to force the corresponding run-time check. | |
39789 | ||
39790 | * exp_ch6.adb (Expand_Call): Do not generate the run-time check in | |
39791 | case of access types unless they have the null-excluding attribute. | |
39792 | ||
39793 | * sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing | |
39794 | part. | |
39795 | ||
39796 | * exp_util.ads: Fix typo in comment | |
39797 | ||
39798 | * par.adb (P_Null_Exclusion): New subprogram | |
39799 | (P_Subtype_Indication): New formal that indicates if the null-excluding | |
39800 | part has been scanned-out and it was present | |
39801 | ||
39802 | * par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231 | |
39803 | ||
39804 | * sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram | |
39805 | (Aggregate_Constraint_Checks): Generate conversion to the null-excluding | |
39806 | type to force the corresponding run-time check | |
39807 | (Resolve_Aggregate): Propagate the null-excluding attribute to the array | |
39808 | components | |
39809 | (Resolve_Array_Aggregate): Carry out some static checks | |
39810 | (Resolve_Record_Aggregate.Get_Value): Carry out some static check | |
39811 | ||
39812 | * sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null | |
39813 | attribute must be set only if specified by means of the null-excluding | |
39814 | part. In addition, we must also propagate the access-constant attribute | |
39815 | if present. | |
39816 | (Access_Subprogram_Declaration, Access_Type_Declaration, | |
39817 | Analyze_Component_Declaration, Analyze_Object_Declaration, | |
39818 | Array_Type_Declaration, Process_Discriminants, | |
39819 | Analyze_Subtype_Declaration): Propagate the null-excluding attribute | |
39820 | and carry out some static checks. | |
39821 | (Build_Derived_Access_Type): Set the null-excluding attribute | |
39822 | (Derived_Type_Declaration, Process_Subtype): Carry out some static | |
39823 | checks. | |
39824 | ||
39825 | * sem_ch4.adb (Analyze_Allocator): Carry out some static checks | |
39826 | ||
39827 | * sem_ch5.adb (Analyze_Assignment): Carry out some static checks | |
39828 | ||
39829 | * sem_ch6.adb (Process_Formals): Carry out some static checks. | |
39830 | (Set_Actual_Subtypes): Generate null-excluding subtype if the | |
39831 | null-excluding part was present; it is not required to be done here in | |
39832 | case of anonymous access types. | |
39833 | (Set_Formal_Mode): Ada 0Y allows anonymous access to have the null | |
39834 | value. | |
39835 | ||
39836 | * sem_res.adb (Resolve_Actuals): Carry out some static check | |
39837 | (Resolve_Null): Allow null in anonymous access | |
39838 | ||
39839 | * sinfo.adb: New subprogram Null_Exclusion_Present | |
39840 | All_Present and Constant_Present available on access_definition nodes | |
39841 | ||
39842 | * sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration, | |
39843 | object_declaration, derived_type_definition, component_definition, | |
39844 | discriminant_specification, access_to_object_definition, | |
39845 | access_function_definition, allocator, access_procedure_definition, | |
39846 | access_definition, parameter_specification, All_Present and | |
39847 | Constant_Present flags available on access_definition nodes. | |
39848 | ||
39849 | 2004-03-29 Robert Dewar <dewar@gnat.com> | |
39850 | ||
39851 | * fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads, | |
39852 | gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb, | |
39853 | opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb, | |
39854 | par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb, | |
39855 | sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb, | |
39856 | sem_prag.adb: Updates to handle multiple units/file | |
39857 | ||
39858 | * par.adb: Change test for s-rpc to s-rp for detecting rpc and children | |
39859 | ||
39860 | * par.adb, memtrack.adb, prj-makr.adb, prj-part.adb, | |
39861 | sem_util.adb: Minor reformatting | |
39862 | ||
39863 | * sem_ch12.adb: Add comment for previous change | |
39864 | ||
39865 | 2004-03-29 Laurent Pautet <pautet@act-europe.fr> | |
39866 | ||
39867 | * osint.adb (Executable_Prefix): Set Exec_Name to the current | |
39868 | executable name when not initialized. Otherwise, use its current value. | |
39869 | ||
39870 | * osint.ads (Exec_Name): Move Exec_Name from body to spec in order to | |
39871 | initialize it to another executable name than the current one. This | |
39872 | allows to configure paths for an executable name (gnatmake) different | |
39873 | from the current one (gnatdist). | |
39874 | ||
39875 | 2004-03-29 Ed Schonberg <schonberg@gnat.com> | |
39876 | ||
39877 | * exp_ch6.adb (Expand_Call): A call to a function declared in the | |
39878 | current unit cannot be inlined if it appears in the body of a withed | |
39879 | unit, to avoid order of elaboration problems in gigi. | |
39880 | ||
39881 | * exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging | |
39882 | information for protected (wrapper) operation as well, to simplify gdb | |
39883 | use. | |
39884 | ||
39885 | * sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a | |
39886 | protected body, indicate that the entity for the generated spec comes | |
39887 | from source, to ensure that references are properly generated for it. | |
39888 | (Build_Body_To_Inline): Do not inline a function that returns a | |
39889 | controlled type. | |
39890 | ||
39891 | * sem_prag.adb (Process_Convention): If subprogram is overloaded, only | |
39892 | apply convention to homonyms that are declared explicitly. | |
39893 | ||
39894 | * sem_res.adb (Make_Call_Into_Operator): If the operation is a function | |
39895 | that renames an equality operator and the operands are overloaded, | |
39896 | resolve them with the declared formal types, before rewriting as an | |
39897 | operator. | |
39898 | ||
39899 | 2004-03-29 GNAT Script <nobody@gnat.com> | |
39900 | ||
39901 | * Make-lang.in: Makefile automatically updated | |
39902 | ||
6d11af89 AC |
39903 | 2004-03-25 Vasiliy Fofanov <fofanov@act-europe.fr> |
39904 | ||
39905 | * memtrack.adb: Log realloc calls, which are treated as free followed | |
39906 | by alloc. | |
39907 | ||
39908 | 2004-03-25 Vincent Celier <celier@gnat.com> | |
39909 | ||
39910 | * prj-makr.adb (Process_Directories): Detect when a file contains | |
39911 | several units. Do not include such files in the config pragmas or | |
39912 | in the naming scheme. | |
39913 | ||
39914 | * prj-nmsc.adb (Record_Source): New parameter Trusted_Mode. | |
39915 | Resolve links only when not in Trusted_Mode. | |
39916 | (Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory): | |
39917 | Do not resolve links for the display names. | |
39918 | ||
39919 | * prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not | |
39920 | resolve links when computing the display names. | |
39921 | ||
39922 | 2004-03-25 Thomas Quinot <quinot@act-europe.fr> | |
39923 | ||
39924 | * sem_attr.adb (Check_Dereference): When the prefix of a 'Tag | |
39925 | attribute reference does not denote a subtype, it can be any | |
39926 | expression that has a classwide type, potentially after an implicit | |
39927 | dereference. In particular, the prefix can be a view conversion for | |
39928 | a classwide type (for which Is_Object_Reference holds), but it can | |
39929 | also be a value conversion for an access-to-classwide type. In the | |
39930 | latter case, there is an implicit dereference, and the original node | |
39931 | for the prefix does not verify Is_Object_Reference. | |
39932 | ||
39933 | * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view | |
39934 | conversion of a discriminant-dependent component of a mutable object | |
39935 | is one itself. | |
39936 | ||
39937 | 2004-03-25 Ed Schonberg <schonberg@gnat.com> | |
39938 | ||
39939 | * freeze.adb (Freeze_Entity): When an inherited subprogram is | |
39940 | inherited, has convention C, and has unconstrained array parameters, | |
39941 | place the corresponding warning on the derived type declaration rather | |
39942 | than the original subprogram. | |
39943 | ||
39944 | * sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default | |
39945 | indication on renaming declaration, if formal has a box and actual | |
39946 | is absent. | |
39947 | ||
39948 | * sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to | |
39949 | determine whether to generate an implicit or explicit reference to | |
39950 | the renamed entity. | |
39951 | ||
39952 | * sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a | |
39953 | subprogram renaming comes from a defaulted formal subprogram in an | |
39954 | instance. | |
39955 | ||
39956 | 2004-03-25 Gary Dismukes <dismukes@gnat.com> | |
39957 | ||
39958 | * sem_elab.adb (Check_Elab_Call): Refine loop that checks for default | |
39959 | value expressions to ensure that calls within a component definition | |
39960 | will be checked (since those are evaluated during the record type's | |
39961 | elaboration). | |
39962 | ||
39963 | 2004-03-25 Arnaud Charlet <charlet@act-europe.fr> | |
39964 | ||
39965 | * s-tpobop.adb: Code clean up: | |
39966 | (Requeue_Call): Extract from PO_Service_Entries to remove duplicated | |
39967 | code. | |
39968 | (PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call. | |
39969 | ||
39970 | 2004-03-25 Jose Ruiz <ruiz@act-europe.fr> | |
39971 | ||
39972 | * Makefile.in: Clean up in the ravenscar run time. | |
39973 | ||
22421b79 RK |
39974 | 2004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
39975 | ||
39976 | * decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value | |
39977 | of No_Strict_Aliasing to build_pointer_type_for_mode. | |
39978 | * utils.c (update_pointer_to): Walk pointer and ref chains. | |
39979 | ||
24105bab AC |
39980 | 2004-03-22 Cyrille Comar <comar@act-europe.fr> |
39981 | ||
39982 | * ali.ads: Fix Comment about Dynamic_Elab. | |
39983 | ||
39984 | * gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab, | |
39985 | Has_RACW, Is_Generic, etc.) | |
39986 | (Output_Object, Gnatls): Take into account ALI files not attached to | |
39987 | an object. | |
39988 | ||
39989 | 2004-03-22 Vincent Celier <celier@gnat.com> | |
39990 | ||
39991 | * gprep.adb: Change all String_Access to Name_Id | |
39992 | (Is_ASCII_Letter): new function | |
39993 | (Double_File_Name_Buffer): New procedure | |
39994 | (Preprocess_Infile_Name): New procedure | |
39995 | (Process_Files): New procedure | |
39996 | (Gnatprep): Check if output and input are existing directories. | |
39997 | Call Process_Files to do the real job. | |
39998 | ||
39999 | 2004-03-22 Robert Dewar <dewar@gnat.com> | |
40000 | ||
40001 | * prj-env.adb, prj-nmsc.ads, prj-proc.ads, | |
40002 | s-stache.ads, s-stache.adb: Comment updates. Minor reformatting. | |
40003 | ||
40004 | 2004-03-22 Sergey Rybin <rybin@act-europe.fr> | |
40005 | ||
40006 | * scn.adb (Contains): Add check for EOF, is needed for a degenerated | |
40007 | case when the source contains only comments. | |
40008 | ||
40009 | 2004-03-22 Ed Schonberg <schonberg@gnat.com> | |
40010 | ||
40011 | * sem_ch10.adb (Analyze_Compilation_Unit): When generating a | |
40012 | declaration for a child subprogram body that acts as a spec, indicate | |
40013 | that the entity in the declaration needs debugging information. | |
40014 | ||
40015 | * sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying | |
40016 | full view if the subtype is created for a constrained record component; | |
40017 | gigi has enough information to construct the record, and there is no | |
40018 | place in the tree for the declaration. | |
40019 | ||
40020 | * sem_ch6.adb (Build_Body_To_Inline): Use an internal name without | |
40021 | serial number for the dummy body that is built for analysis, to avoid | |
40022 | inconsistencies in the generation of internal names when compiling | |
40023 | with -gnatN. | |
40024 | ||
40025 | 2004-03-22 Thomas Quinot <quinot@act-europe.fr> | |
40026 | ||
40027 | * sem_util.adb (Is_Object_Reference): A view conversion denotes an | |
40028 | object. | |
40029 | ||
40030 | 2004-03-22 GNAT Script <nobody@gnat.com> | |
40031 | ||
40032 | * Make-lang.in: Makefile automatically updated | |
40033 | ||
6fce44af RK |
40034 | 2004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
40035 | ||
40036 | * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR. | |
40037 | * trans.c (tree_transform, emit_index_check): Likewise. | |
40038 | * utils.c (build_template): Likewise. | |
40039 | (max_size, convert): Remove handling of WITH_RECORD_EXPR. | |
40040 | (maybe_unconstrained_array, unchecked_convert): Likewise. | |
40041 | * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise. | |
40042 | (build_unary_op): Likewise. | |
40043 | (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR. | |
40044 | (fill_vms_descriptor): Likewise. | |
40045 | (build_call_alloc_dealloc): Likewise. | |
40046 | ALIGN is unsigned. | |
40047 | * gigi.h (build_call_alloc_dealloc): Alignment is unsigned. | |
40048 | ||
802f6d4b JM |
40049 | 2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk> |
40050 | ||
40051 | PR other/14630 | |
40052 | * gnat_ug.texi: Add info directory category and entry. | |
40053 | * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi, | |
40054 | gnat_ug_wnt.texi: Regenerate. | |
40055 | ||
30f3b32b AC |
40056 | 2004-03-19 Arnaud Charlet <charlet@act-europe.fr> |
40057 | ||
40058 | * ada-tree.h: Update copyright notice. | |
40059 | Minor reformatting. | |
40060 | ||
40061 | 2004-03-19 Olivier Hainque <hainque@act-europe.fr> | |
40062 | ||
40063 | * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions | |
40064 | as regular exception objects and not as mere integers representing the | |
40065 | condition code. The latter approach required some dynamics to mask off | |
40066 | severity bits, which did not fit well into the GCC table based model. | |
40067 | (gnat_to_gnu_entity, objects): Don't supply an external name for VMS | |
40068 | exception data objects. We don't it and it would conflict with the other | |
40069 | external symbol we have to generate for such exceptions. | |
40070 | ||
40071 | * trans.c (tree_transform, case N_Exception_Handler): Remove part of | |
40072 | the special code for VMS exceptions, since these are now represented | |
40073 | as regular exceptions objects. | |
40074 | ||
7548281d RK |
40075 | 2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
40076 | ||
40077 | * decl.c (debug_no_type_hash): Remove. | |
40078 | (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it. | |
40079 | * misc.c (LANG_HOOK_HASH_TYPE): Redefine. | |
40080 | ||
9e94c78f | 40081 | 2004-03-19 Laurent Guerby <laurent@guerby.net> |
dbee7ab9 | 40082 | |
90afe2c9 | 40083 | * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of |
dbee7ab9 | 40084 | aggregate, allows bootstrap from 3.3 on powerpc-darwin. |
90afe2c9 | 40085 | |
eb34af89 RK |
40086 | 2004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
40087 | ||
40088 | * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking. | |
40089 | (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise. | |
40090 | (TYPE_RM_SIZE_INT): Directly use type.values. | |
40091 | (TREE_LOOP_ID): Clean up check. | |
40092 | * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use | |
40093 | TYPE_VALUES, not TYPE_FIELDS. | |
40094 | * trans.c (convert_with_check): Delay access of bounds of basetype | |
40095 | until sure is numeric. | |
40096 | ||
a336eaca AC |
40097 | 2004-03-18 Arnaud Charlet <charlet@act-europe.fr> |
40098 | ||
40099 | * 5atpopsp.adb: Remove RTEMS from list of platforms using this file. | |
40100 | ||
40101 | Code clean up: | |
40102 | * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb, | |
40103 | 5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use | |
40104 | Specific.Set instead of direct call to e.g pthread_setspecific. | |
40105 | ||
40106 | 2004-03-18 Thomas Quinot <quinot@act-europe.fr> | |
40107 | ||
40108 | * adaint.c: Update comments. | |
40109 | ||
40110 | * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and | |
40111 | GNATLIB_SHARED for FreeBSD. | |
40112 | ||
40113 | 2004-03-18 Jose Ruiz <ruiz@act-europe.fr> | |
40114 | ||
40115 | * init.c [VxWorks]: Do not fix the stack size for the environment task. | |
40116 | When needed (stack checking) the stack size is retrieved | |
40117 | from the VxWorks kernel. | |
40118 | ||
40119 | * Makefile.in: Flag -nostdinc is required when building the run time | |
40120 | for avoiding looking for files in the base compiler. | |
40121 | Add the VxWorks specific version of the package body for | |
40122 | System.Stack_checking.Operations (5zstchop.adb). | |
40123 | ||
40124 | * Make-lang.in: Add the object file for | |
40125 | System.Stack_Checking.Operations. | |
40126 | ||
40127 | * Makefile.rtl: Add object file for the package | |
40128 | System.Stack_Checking.Operations. | |
40129 | ||
40130 | * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files. | |
40131 | ||
40132 | * s-stache.ads, s-stache.adb: Move the operations related to stack | |
40133 | checking from this package to package System.Stack_Checking.Operations. | |
40134 | This way, stack checking operations are only linked in the final | |
40135 | executable when using the -fstack-check flag. | |
40136 | ||
40137 | 2004-03-18 Doug Rupp <rupp@gnat.com> | |
40138 | ||
40139 | * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads). | |
40140 | Reorganize ifeq's. | |
40141 | ||
40142 | * 5qsystem.ads, 5xcrtl.ads: New files. | |
40143 | ||
40144 | 2004-03-18 Vincent Celier <celier@gnat.com> | |
40145 | ||
40146 | * prj.adb (Reset): Reset hash table Files_Htable | |
40147 | ||
40148 | * prj-env.adb (Source_Paths, Object_Paths): New tables. | |
40149 | (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace | |
40150 | the procedures Add_To_Path_File. | |
40151 | (Set_Ada_Paths): Accumulate source and object dirs in the tables, | |
40152 | making sure that each directory is present only once and, for object | |
40153 | dirs, when a directory already present is added, the duplicate is | |
40154 | removed and the directory is always put as the last in the table. | |
40155 | Write the path files at the end of these accumulations. | |
40156 | ||
40157 | * prj-nmsc.adb (Record_Source): Add source file name in hash table | |
40158 | Files_Htable for all sources. | |
40159 | ||
40160 | * prj-proc.adb (Process): Remove restrictions between not directly | |
40161 | related extending projects. | |
40162 | ||
40163 | 2004-03-18 Emmanuel Briot <briot@act-europe.fr> | |
40164 | ||
40165 | * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode. | |
40166 | (Find_Sources): Minor speed optimization. | |
40167 | ||
40168 | * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New | |
40169 | parameter Trusted_Mode. | |
40170 | ||
40171 | 2004-03-18 Sergey Rybin <rybin@act-europe.fr> | |
40172 | ||
40173 | * scn.adb (Determine_License): Take into account a degenerated case | |
40174 | when the source contains only comments. | |
40175 | ||
40176 | 2004-03-18 Ed Schonberg <schonberg@gnat.com> | |
40177 | ||
40178 | * sem_warn.adb (Check_References): For a warning on a selected | |
40179 | component that does not come from source, locate an uninitialized | |
40180 | component of the record type to produce a more precise error message. | |
40181 | ||
e6f69614 AC |
40182 | 2004-03-15 Jerome Guitton <guitton@act-europe.fr> |
40183 | ||
40184 | * 3zsoccon.ads: Fix multicast options. | |
40185 | ||
40186 | * s-thread.ads: Move unchecked conversion from ATSD_Access to Address | |
40187 | in the spec. | |
40188 | ||
40189 | 2004-03-15 Robert Dewar <dewar@gnat.com> | |
40190 | ||
40191 | * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when | |
40192 | pragma used for a private type. | |
40193 | ||
40194 | * lib-xref.adb (Generate_Reference): Do not generate warning if | |
40195 | reference is in a different unit from the pragma Unreferenced. | |
40196 | ||
40197 | * 5vtpopde.adb: Minor reformatting | |
40198 | Fix casing of To_Task_ID | |
40199 | ||
40200 | * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing | |
40201 | flag if we have an unchecked conversion to an access type in the same | |
40202 | unit. | |
40203 | ||
40204 | 2004-03-15 Geert Bosch <bosch@gnat.com> | |
40205 | ||
40206 | * a-ngcoty.adb (Modulus): In alternate formula for large real or | |
40207 | imaginary parts, use Double precision throughout. | |
40208 | ||
40209 | * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only | |
40210 | we want to be able to compile run-time with -gnata for testing, but | |
40211 | this may also be instantiated in user code that is compiled with -gnata. | |
40212 | ||
40213 | 2004-03-15 Olivier Hainque <hainque@act-europe.fr> | |
40214 | ||
40215 | * s-stalib.ads (Exception_Code): New type, to represent Import/Export | |
40216 | codes. Having a separate type for this is useful to enforce consistency | |
40217 | throughout the various run-time units. | |
40218 | (Exception_Data): Use Exception_Code for Import_Code. | |
40219 | ||
40220 | * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of | |
40221 | Natural and Integer in various places. | |
40222 | (Register_VMS_Exception): Use Base_Code_In to compute the exception code | |
40223 | with the severity bits masked off. | |
40224 | (Register_VMS_Exception): Handle the additional exception data pointer | |
40225 | argument. | |
40226 | ||
40227 | * raise.c (_GNAT_Exception structure): Remove the handled_by_others | |
40228 | component, now reflected by an exported accessor. | |
40229 | (is_handled_by): New routine to compute whether the propagated | |
40230 | occurrence matches some handler choice specification. Extracted out of | |
40231 | get_action_description_for, and expanded to take care of the VMS | |
40232 | specifities. | |
40233 | (get_action_description_for): Use is_handled_by instead of an explicit | |
40234 | complex condition to decide if the current choice at hand catches the | |
40235 | propagated occurrence. | |
40236 | ||
40237 | * raise.h (Exception_Code): New type for C. | |
40238 | ||
40239 | * rtsfind.ads (RE_Id, RE_Unit_Table): Add | |
40240 | System.Standard_Library.Exception_Code, to allow references from the | |
40241 | pragma import/export expander. | |
40242 | ||
40243 | * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For): | |
40244 | New accessors to allow easy access to GNAT exception data | |
40245 | characteristics. | |
40246 | (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the | |
40247 | redundant Handled_By_Others component, helper for the personality | |
40248 | routine which will now be able to call the appropriate exception data | |
40249 | accessor instead. | |
40250 | ||
40251 | * cstand.adb (Create_Standard): Adjust the type of the Import_Code | |
40252 | component of Standard_Exception_Type to be the closest possible to | |
40253 | Exception_Code in System.Standard_Library, that we cannot get at this | |
40254 | point. Expand a ??? comment to notify that this type node should | |
40255 | probably be rewritten later on. | |
40256 | ||
40257 | * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the | |
40258 | registration call to include a pointer to the exception object in the | |
40259 | arguments. | |
40260 | ||
40261 | * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In | |
40262 | instead of int and explicit bitmasks. | |
40263 | ||
40264 | 2004-03-15 Vincent Celier <celier@gnat.com> | |
40265 | ||
40266 | * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED | |
40267 | equivalent to /STATIC and /NOSTATIC equivalent to /SHARED. | |
40268 | ||
40269 | * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no | |
40270 | longer needed now that it is in the spec of | |
40271 | System.Tasking.Task_Attributes. | |
40272 | ||
40273 | * adaint.h, adaint.c: (__gnat_create_output_file): New function | |
40274 | ||
40275 | * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of = | |
40276 | ||
40277 | * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function. | |
40278 | ||
40279 | * make.adb (Gnatmake): Do not check the executable suffix; it is being | |
40280 | taken care of in Scan_Make_Arg. | |
40281 | (Scan_Make_Arg): Add the executable suffix only if the argument | |
40282 | following -o, in canonical case, does not end with the executable | |
40283 | suffix. When in verbose mode and executable file name does not end | |
40284 | with executable suffix, output the executable name, in canonical case. | |
40285 | ||
40286 | * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing | |
40287 | to avoid warnings when instantiating Ada.Task_Attributes. | |
40288 | Minor reformating. | |
40289 | ||
40290 | * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries | |
40291 | in the correct order. | |
40292 | ||
40293 | * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but | |
40294 | redirect standard output and error to a file for the invocation of the | |
40295 | compiler, then read the file. | |
40296 | ||
40297 | * prj-nmsc.adb (Find_Sources): Use the Display_Value for each | |
40298 | directory, instead of the Value. | |
40299 | (Find_Source_Dirs): Remove useless code & comments. | |
40300 | ||
40301 | 2004-03-15 Ed Schonberg <schonberg@gnat.com> | |
40302 | ||
40303 | * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a | |
40304 | tagged type is inherited, and the parent operation is not frozen yet, | |
40305 | force generation of a freeze node for the inherited operation, so the | |
40306 | corresponding dispatch entry is properly initialized. | |
40307 | (Make_Predefined_Primitive_Specs): Check that return type is Boolean | |
40308 | when looking for user-defined equality operation. | |
40309 | ||
40310 | * exp_ch4.adb (Expand_Composite_Equality): Check that return type is | |
40311 | boolean when locating primitive equality of tagged component. | |
40312 | ||
40313 | * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a | |
40314 | bit-aligned field and the right-hand side a string literal, introduce | |
40315 | a temporary before expanding assignment into a loop. | |
40316 | ||
40317 | * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for | |
40318 | priority in full, to ensure that any expanded subepxressions of it are | |
40319 | elaborated in the scope of the init_proc. | |
40320 | ||
40321 | * exp_prag.adb (Expand_Pragma_Import): Search for initialization call | |
40322 | after object declaration, skipping over code that may have been | |
40323 | generated for validity checks. | |
40324 | ||
40325 | * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown | |
40326 | discriminants, ignore the known discriminants of its full view, if | |
40327 | any, to check legality. | |
40328 | ||
40329 | * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained | |
40330 | component if type has unknown discriminants. | |
40331 | (Analyze_Private_Extension_Declaration): Discriminant constraint is | |
40332 | null if type has unknown discriminants. | |
40333 | ||
40334 | * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference | |
40335 | for end label when present. | |
40336 | ||
40337 | * s-fileio.adb (Open): When called with a C_Stream, use given name for | |
40338 | temporary file, rather than an empty string. | |
40339 | ||
40340 | 2004-03-15 Ed Falis <falis@gnat.com> | |
40341 | ||
40342 | * s-thread.adb: Removed, no longer used. | |
40343 | ||
40344 | 2004-03-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
40345 | ||
40346 | * decl.c (target.h): Now include. | |
40347 | (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE | |
40348 | in new build_pointer_from_mode calls for non-fat/non-thin pointer. | |
40349 | (validate_size): For POINTER_TYPE, get smallest size permitted on | |
40350 | machine. | |
40351 | ||
40352 | * fe.h: Sort Einfo decls and add Set_Mechanism. | |
40353 | ||
40354 | * Makefile.in: (LIBGNAT_SRCS): Remove types.h. | |
40355 | (ada/decl.o): Depends on target.h. | |
40356 | ||
40357 | * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use | |
40358 | FUNCTION_BOUNDARY; always use TYPE_ALIGN. | |
40359 | ||
40360 | 2004-03-15 Thomas Quinot <quinot@act-europe.fr> | |
40361 | ||
40362 | * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID. | |
40363 | ||
40364 | * exp_ch4.adb (Expand_N_Indexed_Component): Do not call | |
40365 | Insert_Dereference_Action when rewriting an implicit dereference into | |
40366 | an explicit one, this will be taken care of during expansion of the | |
40367 | explicit dereference. | |
40368 | (Expand_N_Slice): Same. Always do the rewriting, even for the case | |
40369 | of non-packed slices, since the dereference action generated by | |
40370 | expansion of the explicit dereference is needed in any case. | |
40371 | (Expand_N_Selected_Component): When rewriting an implicit dereference, | |
40372 | analyze and resolve the rewritten explicit dereference so it is seen | |
40373 | by the expander. | |
40374 | (Insert_Dereference_Action): This procedure is now called only for the | |
40375 | expansion of an N_Explcit_Dereference_Node. Do insert a check even for | |
40376 | dereferences that do not come from source (including explicit | |
40377 | dereferences resulting from rewriting implicit ones), but do not | |
40378 | recursively insert a check for the dereference nodes contained within | |
40379 | the check. | |
40380 | (Insert_Dereference_Action): Clarify and correct comment. | |
40381 | ||
e4c9c075 PB |
40382 | 2004-03-08 Paolo Bonzini <bonzini@gnu.org> |
40383 | ||
40384 | PR ada/14131 | |
40385 | Move language detection to the top level. | |
40386 | * config-lang.in: Build by default. | |
40387 | ||
8a6a52dc AC |
40388 | 2004-03-05 Robert Dewar <dewar@gnat.com> |
40389 | ||
40390 | * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions | |
40391 | ||
40392 | * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads, | |
40393 | i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads, | |
90afe2c9 | 40394 | 5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb, |
8a6a52dc AC |
40395 | 5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move |
40396 | unchecked conversion to spec to avoid warnings. | |
40397 | ||
40398 | * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id | |
40399 | to Task_ID | |
40400 | ||
40401 | * 7stpopsp.adb: Correct casing in To_Task_ID call | |
40402 | ||
40403 | * a-strsea.ads, a-strsea.adb: Minor reformatting | |
40404 | ||
40405 | * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing | |
40406 | ||
40407 | * errout.ads: Switch for VMS is now NO_STRICT_ALIASING. | |
40408 | Adjust Max_Msg_Length to be clearly large enough. | |
40409 | ||
40410 | * fe.h: Define In_Same_Source_Unit | |
40411 | ||
40412 | * osint.adb: Add pragma Warnings Off to suppress warnings | |
40413 | * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill | |
40414 | aliasing warnings. | |
40415 | ||
40416 | * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing | |
40417 | ||
40418 | * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma | |
40419 | ||
40420 | * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc. | |
40421 | ||
40422 | * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set. | |
40423 | ||
40424 | * sem_prag.adb: Implement pragma No_Strict_Aliasing. | |
40425 | ||
40426 | * sinfo.ads: Remove obsolete comment on validate unchecked conversion | |
40427 | node. We now do generate them for gcc back end. | |
40428 | ||
40429 | * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing | |
40430 | warning. | |
40431 | ||
40432 | * sinput-c.adb: Fix bad name in header. | |
40433 | Add pragma Warnings Off to suppress aliasing warning. | |
40434 | ||
40435 | * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning. | |
40436 | ||
40437 | * snames.h, snames.ads, snames.adb: Add entry for pragma | |
40438 | No_Strict_Aliasing. | |
40439 | ||
40440 | 2004-03-05 Vincent Celier <celier@gnat.com> | |
40441 | ||
40442 | * prj-com.ads: Add hash table Files_Htable to check when a file name | |
40443 | is already a source of another project. | |
40444 | ||
40445 | * prj-nmsc.adb (Record_Source): Before recording a new source, check | |
40446 | if its file name is not already a source of another project. Report an | |
40447 | error if it is. | |
40448 | ||
40449 | * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no | |
40450 | source file name, call gnatpp with all the sources of the main project. | |
40451 | ||
40452 | * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number | |
40453 | of file names. | |
40454 | ||
40455 | * vms_data.ads: Correct documentation of new /OPTIMIZE keyword | |
40456 | NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY: | |
40457 | /RUNTIME_SYSTEM=, converted to --RTS= | |
40458 | /NOTABS, converted to -notabs | |
40459 | ||
40460 | 2004-03-05 Pascal Obry <obry@gnat.com> | |
40461 | ||
40462 | * make.adb: Minor reformatting. | |
40463 | ||
40464 | 2004-03-05 Ed Schonberg <schonberg@gnat.com> | |
40465 | ||
40466 | Part of implemention of AI-262. | |
40467 | * par-ch10.adb (P_Context_Clause): Recognize private with_clauses. | |
40468 | ||
40469 | * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New | |
40470 | procedure. | |
40471 | ||
40472 | * sem_ch3.adb (Analyze_Component_Declaration): Improve error message | |
40473 | when component type is a partially constrained class-wide subtype. | |
40474 | (Constrain_Discriminated_Type): If parent type has unknown | |
40475 | discriminants, a constraint is illegal, even if full view has | |
40476 | discriminants. | |
40477 | (Build_Derived_Record_Type): Inherit discriminants when deriving a type | |
40478 | with unknown discriminants whose full view is a discriminated record. | |
40479 | ||
40480 | * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants | |
40481 | flag, to handle properly derivations of tagged types with unknown | |
40482 | discriminants. | |
40483 | (Analyze_Package_Spec, Analyze_Package_Body): Install | |
40484 | Private_With_Clauses before analyzing private part or body. | |
40485 | ||
40486 | * einfo.ads: Indicate that both Has_Unknown_Discriminants and | |
40487 | Has_Discriminants can be true for a given type (documentation). | |
40488 | ||
40489 | 2004-03-05 Arnaud Charlet <charlet@act-europe.fr> | |
40490 | ||
40491 | * s-restri.ads: Fix license (GPL->GMGPL). | |
40492 | ||
40493 | * s-tassta.adb: Minor reformatting. | |
40494 | ||
40495 | * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level | |
40496 | by calls to Exit_One_ATC_Level, since additional clean up is performed | |
40497 | by this function. | |
40498 | ||
40499 | * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level | |
40500 | by calls to Exit_One_ATC_Level, since additional clean up is performed | |
40501 | by this function. | |
40502 | ||
40503 | 2004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
40504 | ||
40505 | * trans.c: Reflect GCC changes to fix bootstrap problem. | |
40506 | Add warning for suspicious aliasing unchecked conversion. | |
40507 | ||
40508 | 2004-03-05 GNAT Script <nobody@gnat.com> | |
40509 | ||
40510 | * Make-lang.in: Makefile automatically updated | |
40511 | ||
555360a5 AC |
40512 | 2004-03-02 Emmanuel Briot <briot@act-europe.fr> |
40513 | ||
40514 | * ali.adb (Read_Instantiation_Instance): Do not modify the | |
40515 | current_file_num when reading information about instantiations, since | |
40516 | this corrupts files in later references. | |
40517 | ||
40518 | 2004-03-02 Vincent Celier <celier@gnat.com> | |
40519 | ||
40520 | * bcheck.adb (Check_Consistency): Get the full path of an ALI file | |
40521 | before checking if it is read-only. | |
40522 | ||
40523 | * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front | |
40524 | of SRC_DIRS and eliminate duplicates. | |
40525 | ||
40526 | * gprcmd.adb: Replace command "path" with command "path_sep" to return | |
40527 | the path separator. | |
40528 | (Usage): Document path_sep | |
40529 | ||
40530 | * Makefile.generic: For Ada and GNU C++ cases, link directly with the | |
40531 | C++ compiler. No need for a script. | |
40532 | Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH. | |
40533 | Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function | |
40534 | subst. | |
40535 | ||
40536 | * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project | |
40537 | where there are Ada sources. | |
40538 | (Set_Ada_Paths): Only add to the include path the source dirs of project | |
40539 | with Ada sources. | |
40540 | (Add_To_Path): Add the Display_Values of the directories, not their | |
40541 | Values. | |
40542 | ||
40543 | * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project | |
40544 | data. | |
40545 | ||
40546 | * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value | |
40547 | is not No_Name. | |
40548 | (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only | |
40549 | Value is canonicalized. | |
40550 | (Language_Independent_Check): Do not copy Value to Display_Value when | |
40551 | canonicalizing Value. | |
40552 | ||
40553 | * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased | |
40554 | path to find limited with cycles. | |
40555 | (Parse_Single_Project): Use canonical cased path to find the end of a | |
40556 | with cycle. | |
40557 | ||
40558 | 2004-03-02 Ed Schonberg <schonberg@gnat.com> | |
40559 | ||
40560 | * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit | |
40561 | and not a child unit. | |
40562 | ||
40563 | * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can | |
40564 | appear in a with_clause. | |
40565 | ||
40566 | * decl.c (gnat_to_gnu_type): If entity is a generic type, which can | |
40567 | only happen in type_annotate mode, do not try to elaborate it. | |
40568 | ||
40569 | * exp_util.adb (Force_Evaluation): If expression is a selected | |
40570 | component on the left of an assignment, use a renaming rather than a | |
40571 | temporary to remove side effects. | |
40572 | ||
40573 | * freeze.adb (Freeze_Entity): Do not freeze a global entity within an | |
40574 | inlined instance body, which is analyzed before the end of the | |
40575 | enclosing scope. | |
40576 | ||
40577 | 2004-03-02 Robert Dewar <dewar@gnat.com> | |
40578 | ||
40579 | * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb, | |
40580 | sem_ch4.adb: Use new feature for substitution of keywords in VMS | |
40581 | ||
40582 | * errout.ads, errout.adb: Implement new circuit for substitution of | |
40583 | keywords in VMS. | |
40584 | ||
40585 | * sem_case.adb (Analyze_Choices): Place message properly when case is | |
40586 | a subtype reference rather than an explicit range. | |
40587 | ||
40588 | * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting | |
40589 | ||
40590 | 2004-03-02 Doug Rupp <rupp@gnat.com> | |
40591 | ||
40592 | * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF. | |
40593 | ||
40594 | 2004-03-02 Thomas Quinot <quinot@act-europe.fr> | |
40595 | ||
40596 | * s-tporft.adb: Add missing locking around call to Initialize_ATCB. | |
40597 | ||
40598 | 2004-03-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
40599 | ||
40600 | * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a | |
40601 | BLKmode bitfield. | |
40602 | ||
8a7988f5 AC |
40603 | 2004-02-25 Robert Dewar <dewar@gnat.com> |
40604 | ||
40605 | * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads, | |
40606 | 55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads, | |
40607 | 5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads, | |
40608 | 5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads, | |
40609 | 5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads, | |
40610 | 5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to | |
40611 | the defining instance of the type to avoid aliasing problems. | |
40612 | Fix copyright header. Fix bad comments in package header. | |
40613 | ||
40614 | * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting | |
40615 | ||
40616 | 2004-02-25 Ed Schonberg <schonberg@gnat.com> | |
40617 | ||
40618 | * exp_ch2.adb (Param_Entity): Handle properly formals that have been | |
40619 | rewritten as references when aliased through an address clause. | |
40620 | ||
40621 | * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking | |
40622 | whether call can be interpreted as an indirect call to the result of a | |
40623 | parameterless function call returning an access subprogram. | |
40624 | ||
40625 | 2004-02-25 Arnaud Charlet <charlet@act-europe.fr> | |
40626 | ||
40627 | Code clean up: | |
40628 | * exp_ch7.adb (Make_Clean): Remove generation of calls to | |
40629 | Unlock[_Entries], since this is now done by Service_Entries directly. | |
40630 | ||
40631 | * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto. | |
40632 | ||
40633 | * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure | |
40634 | Requeue_Call for better code readability. Change spec and update calls: | |
40635 | PO_Service_Entries now unlock the PO on exit. | |
40636 | (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to | |
40637 | PO_Service_Entries. | |
40638 | ||
40639 | * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit. | |
40640 | ||
40641 | * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries. | |
40642 | ||
40643 | 2004-02-25 Sergey Rybin <rybin@act-europe.fr> | |
40644 | ||
40645 | * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the | |
40646 | protected subprogram call and analyzing the result of such expanding | |
40647 | in case when the called protected subprogram is eliminated. | |
40648 | ||
40649 | * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope | |
40650 | names. | |
40651 | ||
40652 | 2004-02-25 Jerome Guitton <guitton@act-europe.fr> | |
40653 | ||
40654 | * Makefile.in: Clean ups. | |
40655 | ||
6871ba5f AC |
40656 | 2004-02-23 Ed Schonberg <schonberg@gnat.com> |
40657 | ||
40658 | * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create | |
40659 | protected operations if original subprogram is flagged as eliminated. | |
40660 | (Expand_N_Subprogram_Body): For a protected operation, create | |
40661 | discriminals for next operation before checking whether the operation | |
40662 | is eliminated. | |
40663 | ||
40664 | * exp_ch9.adb (Expand_N_Protected_Body, | |
40665 | Expand_N_Protected_Type_Declaration): Do not generate specs and bodies | |
40666 | for internal protected operations if the original subprogram is | |
40667 | eliminated. | |
40668 | ||
40669 | * sem_elim.adb (Check_Eliminated): Handle properly protected operations | |
40670 | declared in a single protected object. | |
40671 | ||
40672 | 2004-02-23 Vincent Celier <celier@gnat.com> | |
40673 | ||
40674 | * prj-attr.adb: Make attribute Builder'Executable an associative array, | |
40675 | case insensitive if file names are case insensitive, instead of a | |
40676 | standard associative array. | |
40677 | ||
40678 | * prj-attr.adb (Initialize): For 'b' associative arrays, do not set | |
40679 | them as case insensitive on platforms where the file names are case | |
40680 | sensitive. | |
40681 | ||
40682 | * prj-part.adb (Parse_Single_Project): Make sure, when checking if | |
40683 | project file has already been parsed that canonical path are compared. | |
40684 | ||
40685 | 2004-02-23 Robert Dewar <dewar@gnat.com> | |
40686 | ||
40687 | * sinput-c.ads: Correct bad unit title in header | |
40688 | ||
40689 | * freeze.adb: Minor reformatting | |
40690 | ||
40691 | 2004-02-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
40692 | ||
40693 | * trans.c (tree_transform, case N_Procedure_Call_Statement): For | |
40694 | nonaddressable COMPONENT_REF that is removing padding that we are | |
40695 | taking the address of, take the address of the padded record instead | |
40696 | if item is variable size. | |
40697 | ||
6e059adb AC |
40698 | 2004-02-20 Robert Dewar <dewar@gnat.com> |
40699 | ||
40700 | * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting | |
40701 | ||
40702 | 2004-02-20 Ed Schonberg <schonberg@gnat.com> | |
40703 | ||
40704 | * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates | |
40705 | itype references for the constrained designated type of a component | |
40706 | whose base type is already frozen. | |
40707 | ||
40708 | 2004-02-20 Arnaud Charlet <charlet@act-europe.fr> | |
40709 | ||
40710 | * init.c (__gnat_error_handler [tru64]): Rewrite previous change to | |
40711 | avoid GCC warnings. | |
40712 | ||
40713 | 2004-02-20 Sergey Rybin <rybin@act-europe.fr> | |
40714 | ||
40715 | * sem_ch12.adb (Analyze_Formal_Package): Create a new defining | |
40716 | identifier for a phantom package that rewrites the formal package | |
40717 | declaration with a box. The Add semantic decorations for the defining | |
40718 | identifier from the original node (that represents the formal package). | |
40719 | ||
88e3a2a3 MK |
40720 | 2004-02-19 Matt Kraai <kraai@alumni.cmu.edu> |
40721 | ||
40722 | * Make-lang.in (ada/stamp-sdefault): Use the top level | |
40723 | move-if-change. | |
40724 | ||
4221057e RH |
40725 | 2004-02-19 Richard Henderson <rth@redhat.com> |
40726 | ||
40727 | * misc.c (record_code_position): Add third build arg for RTL_EXPR. | |
40728 | ||
5c1c8a03 AC |
40729 | 2004-02-18 Emmanuel Briot <briot@act-europe.fr> |
40730 | ||
40731 | * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that | |
40732 | Scan_ALI can be used for multiple ALI files without reinitializing | |
40733 | between calls. | |
40734 | ||
40735 | 2004-02-18 Robert Dewar <dewar@gnat.com> | |
40736 | ||
40737 | * debug.adb: Minor reformatting. | |
40738 | ||
40739 | 2004-02-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
40740 | ||
40741 | * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET | |
40742 | to zero if there is an address clause. | |
40743 | ||
40744 | 2004-02-18 Thomas Quinot <quinot@act-europe.fr> | |
40745 | ||
40746 | * exp_util.adb (Side_Effect_Free): Any literal is side effects free. | |
40747 | ||
40748 | 2004-02-18 Gary Dismukes <dismukes@gnat.com> | |
40749 | ||
40750 | * layout.adb (Layout_Component_List): Revise generation of call to | |
40751 | discriminant-checking function to pass selections of all of the type's | |
40752 | discriminants rather than just the variant-controlling discriminant. | |
40753 | ||
40754 | 2004-02-18 Olivier Hainque <hainque@act-europe.fr> | |
40755 | ||
40756 | * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to | |
40757 | fail in the current setup and triggers spurious system error messages. | |
40758 | Pretend it occurred and failed instead. | |
40759 | ||
40760 | 2004-02-18 Vincent Celier <celier@gnat.com> | |
40761 | ||
40762 | * bld.adb: Mark FLDFLAGS as saved | |
40763 | (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when | |
40764 | it is not the root project. Put each directory to be | |
40765 | extended between double quotes to prevent it to be expanded on Windows. | |
40766 | (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing | |
40767 | the project file. Set them back to their initial values if they have not | |
40768 | been set in the project file. | |
40769 | ||
40770 | * gprcmd.adb: (Gprdebug, Debug): New global variables | |
40771 | (Display_Command): New procedure | |
40772 | (Usage): Document new command "linkopts" | |
40773 | Call Display_Command when env var GPRDEBUG has the value "TRUE" | |
40774 | Implement new command "linkopts" | |
40775 | Remove quotes that may be around arguments for "extend" | |
40776 | Always call Normalize_Pathname with arguments formatted for the platform | |
40777 | ||
40778 | * Makefile.generic: Link C/C++ mains with $(FLDFLAGS) | |
40779 | Change @echo to @$(display) in target clean to be able to clean silently | |
40780 | ||
40781 | * Makefile.prolog: Save FLDFLAGS and give it an initial empty value | |
40782 | ||
40783 | * prj-part.adb (Project_Path_Name_Of): Do not put final result in | |
40784 | canonical case. | |
40785 | ||
40786 | * prj-part.adb (Parse_Single_Project): Always call with From_Extended | |
40787 | = Extending_All when current project is an extending all project. | |
40788 | ||
40789 | * vms_conv.adb (Output_File_Expected): New Boolean global variable, | |
40790 | set to True only for LINK command, after Unix switch -o. | |
40791 | (Process_Arguments): Set Output_File_Expected to True for LINK command | |
40792 | after Unix switch -o. When Output_File_Expected is True, never add an | |
40793 | extension to a file name. | |
40794 | ||
40795 | * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the | |
40796 | option file name, only to the --for-linker= switch. | |
40797 | (Option_File_Name): If option file name do not end with ".opt", append | |
40798 | "/OPTIONS". | |
40799 | ||
40800 | 2004-02-18 GNAT Script <nobody@gnat.com> | |
40801 | ||
40802 | * Make-lang.in: Makefile automatically updated | |
40803 | ||
80bcb4d2 MK |
40804 | 2004-02-17 Matt Kraai <kraai@alumni.cmu.edu> |
40805 | ||
40806 | * Make-lang.in (stamp-sdefault): Do not depend on | |
40807 | move-if-change. | |
40808 | ||
1daa84b6 ZW |
40809 | 2004-02-12 Zack Weinberg <zack@codesourcery.com> |
40810 | ||
40811 | * config-lang.in: Disable Ada by default until probe logic for | |
40812 | a bootstrap Ada compiler can be moved to the top level configure | |
40813 | script. | |
40814 | ||
18c0ecbe AC |
40815 | 2004-02-12 Olivier Hainque <hainque@act-europe.fr> |
40816 | ||
40817 | * decl.c (components_to_record): Don't claim that the internal fields | |
40818 | we make to hold the variant parts are semantically addressable, because | |
40819 | they are not. | |
40820 | ||
40821 | * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and | |
40822 | adjust the comment describing the modular type form when we can use it. | |
40823 | (Install_PAT): Account for the Esiz renaming. | |
40824 | ||
40825 | * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the | |
40826 | sc_onstack context indication before raising the exception to which | |
40827 | the signal is mapped. Allows better handling of later signals possibly | |
40828 | triggered by the resumed user code if the exception is handled. | |
40829 | ||
40830 | 2004-02-12 Arnaud Charlet <charlet@act-europe.fr> | |
40831 | ||
40832 | * 5zinit.adb: Removed, no longer used. | |
40833 | ||
40834 | 2004-02-12 Robert Dewar <dewar@gnat.com> | |
40835 | ||
40836 | * ali.adb: Remove separating space between parameters on R line. Makes | |
40837 | format consistent with format used by the binder for Set_Globals call. | |
40838 | ||
40839 | * atree.ads, atree.adb: Minor reformatting (new function header format) | |
40840 | ||
40841 | * bindgen.adb: Add Run-Time Globals documentation section containing | |
40842 | detailed documentation of the globals passed from the binder file to | |
40843 | the run time. | |
40844 | ||
40845 | * gnatls.adb: Minor reformatting | |
40846 | ||
40847 | * init.c (__gnat_set_globals): Add note pointing to documentation in | |
40848 | bindgen. | |
40849 | ||
40850 | * lib-writ.ads, lib-writ.adb: Remove separating space between | |
40851 | parameters on R line. | |
40852 | Makes format consistent with format used by the binder for Set_Globals | |
40853 | call. | |
40854 | ||
40855 | * osint.ads: Add 2004 to copyright notice | |
40856 | Minor reformatting | |
40857 | ||
40858 | * snames.ads: Correct capitalization of FIFO_Within_Priorities | |
40859 | Noticed during code reading, documentation issue only | |
40860 | ||
40861 | * usage.adb: Remove junk line for obsolete C switch | |
40862 | Noticed during code reading | |
40863 | ||
40864 | 2004-02-12 Vincent Celier <celier@gnat.com> | |
40865 | ||
40866 | * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd | |
40867 | extend for each directory, so that multiple /** directories are | |
40868 | extended individually. | |
40869 | (Recursive_Process): Set the default for LANGUAGES to ada | |
40870 | ||
40871 | * gprcmd.adb: Define new command "ignore", to do nothing. | |
40872 | Implement new comment "path". | |
40873 | ||
40874 | * Makefile.generic: Suppress output when SILENT is set | |
40875 | Make sure that when compiler for C/C++ is gcc, the correct -x switch is | |
40876 | used, so that the correct compiler is invoked. | |
40877 | When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/ | |
40878 | CXX_INCLUDE_PATH, to avoid failure with too long command lines. | |
40879 | ||
40880 | 2004-02-12 Jerome Guitton <guitton@act-europe.fr> | |
40881 | ||
40882 | * Makefile.in: Clean ups and remove obsolete targets. | |
40883 | ||
40884 | 2004-02-12 Ed Schonberg <schonberg@gnat.com> | |
40885 | ||
40886 | * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar | |
40887 | predicate declared in exp_util. | |
40888 | ||
40889 | * exp_util.adb: Add comments. | |
40890 | ||
40891 | * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from | |
40892 | visibility before compiling context of the subunit. | |
40893 | ||
40894 | * sem_res.adb (Check_Parameterless_Call): If the context expects a | |
40895 | value but the name is a procedure, do not attempt to analyze as a call, | |
40896 | in order to obtain more telling diagnostics. | |
40897 | ||
40898 | * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing | |
40899 | 'Access on parameterless function calls. | |
40900 | (Normalize_Actuals): For a parameterless function call with missing | |
40901 | actuals, defer diagnostic until resolution of enclosing call. | |
40902 | ||
40903 | * sem_util.adb (Wrong_Type): If the context type is an access to | |
40904 | subprogram and the expression is a procedure name, suggest a missing | |
40905 | 'attribute. | |
40906 | ||
c1dcfa14 AC |
40907 | 2004-02-10 Arnaud Charlet <charlet@act-europe.fr>, |
40908 | Nathanael Nerode <neroden@gcc.gnu.org> | |
40909 | ||
6f7f72f9 EB |
40910 | PR ada/6637 |
40911 | PR ada/5911 | |
c1dcfa14 | 40912 | Merge with libada-branch: |
90afe2c9 | 40913 | * config-lang.in: Build libada only when ada is built. |
c1dcfa14 | 40914 | |
2e071734 AC |
40915 | 2004-02-09 Ed Schonberg <schonberg@gnat.com> |
40916 | ||
40917 | * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality | |
40918 | for a tagged type, verify that both formals have the same type. | |
40919 | ||
40920 | * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the | |
40921 | temporary when the formal is an in-parameter and the actual a possibly | |
40922 | unaligned slice. | |
40923 | ||
40924 | * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even | |
40925 | when expansion is disabled, to ensure proper name capture with | |
40926 | overloaded literals. Condition can be of any boolean type, resolve | |
40927 | accordingly. | |
40928 | ||
40929 | * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the | |
40930 | renaming is for a formal subprogram with a default operator name, and | |
40931 | there is a usable operator that is visible at the point of | |
40932 | instantiation. | |
40933 | ||
40934 | 2004-02-09 Robert Dewar <dewar@gnat.com> | |
40935 | ||
40936 | * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major | |
40937 | rewrite to ignore errors in ali files, intended to allow tools downward | |
40938 | compatibility with new versions of ali files. | |
40939 | ||
40940 | * ali.ads: Add new parameter Ignore_Errors | |
40941 | ||
40942 | * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes | |
40943 | duplicating the error message giving the file with restrictions. | |
40944 | ||
40945 | * debug.adb: Add debug flag I for gnatbind | |
40946 | ||
40947 | * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around | |
40948 | operators for the case where the operator is a defining operator. | |
40949 | ||
40950 | * exp_ch3.adb: Minor reformatting (new function spec format). | |
40951 | ||
40952 | * exp_ch4.adb: Add comment for previous change, and make minor | |
40953 | adjustment to loop to always check for improper loop termination. | |
40954 | Minor reformatting throughout (new function spec format). | |
40955 | ||
40956 | * gnatbind.adb: Implement -di debug flag for gnatbind | |
40957 | ||
40958 | * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True | |
40959 | ||
40960 | * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True | |
40961 | ||
40962 | * lib-load.adb: Fix bad assertion. | |
40963 | Found by testing and code reading. | |
40964 | Minor reformatting. | |
40965 | ||
40966 | * lib-load.ads: Minor reformatting. | |
40967 | ||
40968 | * lib-writ.adb: There is only one R line now. | |
40969 | ||
40970 | * lib-writ.ads: Add documentation on making downward compatible changes | |
40971 | to ali files so old tools work with new ali files. | |
40972 | There is only one R line now. | |
40973 | Add documentation on format incompatibilities (with special GPS note) | |
40974 | ||
40975 | * namet.ads, namet.adb: (Is_Operator_Name): New procedure | |
40976 | ||
40977 | * par-load.adb: Minor reformatting | |
40978 | ||
40979 | * sem_ch8.adb: Fix to error message from last update | |
40980 | Minor reformatting and restructuring of code from last update | |
40981 | ||
40982 | * par-prag.adb, snames.adb, snames.ads, snames.h, | |
40983 | sem_prag.adb: Implement pragma Profile. | |
40984 | ||
40985 | * stylesw.adb: Implement -gnatyN switch to turn off all style check | |
40986 | options. | |
40987 | ||
40988 | * usage.adb: Add line for -gnatyN switch | |
40989 | ||
40990 | * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN | |
40991 | ||
a41ea816 AC |
40992 | 2004-02-09 Albert Lee <lee@gnat.com> |
40993 | ||
40994 | * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX | |
40995 | ||
40996 | 2004-02-09 Ed Schonberg <schonberg@gnat.com> | |
40997 | ||
40998 | * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null | |
40999 | slices. | |
41000 | ||
41001 | * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram | |
41002 | is nested in an instance that is not frozen yet, to avoid | |
41003 | order-of-elaboration problems in gigi. | |
41004 | ||
41005 | * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined | |
41006 | body the attribute is legal. | |
41007 | ||
41008 | 2004-02-09 Robert Dewar <dewar@gnat.com> | |
41009 | ||
41010 | * s-rident.ads: Minor comment correction | |
41011 | ||
41012 | * targparm.adb: Remove dependence on uintp completely. There was | |
41013 | always a bug in Make in that it called Targparm before initializing | |
41014 | the Uint package. The old code appeared to get away with this, but | |
41015 | the new code did not! This caused an assertion error in gnatmake. | |
41016 | ||
41017 | * targparm.ads: Fix bad comment, restriction pragmas with parameters | |
41018 | are indeed fully supported. | |
41019 | ||
725c60f8 AM |
41020 | 2004-02-06 Alan Modra <amodra@bigpond.net.au> |
41021 | ||
41022 | * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call. | |
41023 | ||
136e64db KH |
41024 | 2004-02-05 Kazu Hirata <kazu@cs.umass.edu> |
41025 | ||
41026 | * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES | |
41027 | with targetm.calls.promote_prototypes. | |
41028 | ||
06effe87 AC |
41029 | 2004-02-04 Robert Dewar <dewar@gnat.com> |
41030 | ||
41031 | * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb, | |
41032 | ali.ads, gprcmd.adb: Minor reformatting | |
41033 | ||
41034 | * bindgen.adb: Output restrictions string for new style restrictions | |
41035 | handling | |
41036 | ||
41037 | * impunit.adb: Add s-rident.ads (System.Rident) and | |
41038 | s-restri (System.Restrictions) | |
41039 | ||
41040 | * lib-writ.adb: Fix bug in writing restrictions string (last few | |
41041 | entries wrong) | |
41042 | ||
41043 | * s-restri.ads, s-restri.adb: Change name Restrictions to | |
41044 | Run_Time_Restrictions to avoid conflict with package name. | |
41045 | Add circuit to read and acquire run time restrictions. | |
41046 | ||
41047 | 2004-02-04 Jose Ruiz <ruiz@act-europe.fr> | |
41048 | ||
41049 | * restrict.ads, restrict.adb: Use the new restriction | |
41050 | No_Task_Attributes_Package instead of the old No_Task_Attributes. | |
41051 | ||
41052 | * sem_prag.adb: No_Task_Attributes is a synonym of | |
41053 | No_Task_Attributes_Package. | |
41054 | ||
41055 | * snames.ads, snames.adb: New entry for proper handling of | |
41056 | No_Task_Attributes. | |
41057 | ||
41058 | * s-rident.ads: Adding restriction No_Task_Attributes_Package | |
41059 | (AI-00249) that supersedes the GNAT specific restriction | |
41060 | No_Task_Attributes. | |
41061 | ||
41062 | 2004-02-04 Ed Schonberg <schonberg@gnat.com> | |
41063 | ||
90afe2c9 | 41064 | * sem_prag.adb: |
06effe87 AC |
41065 | (Analyze_Pragma, case Warnings): In an inlined body, as in an instance |
41066 | body, an identifier may be wrapped in an unchecked conversion. | |
41067 | ||
41068 | 2004-02-04 Vincent Celier <celier@gnat.com> | |
41069 | ||
41070 | * lib-writ.ads: Comment update for the W lines | |
41071 | ||
41072 | * bld.adb: (Expression): An empty string list is static | |
41073 | ||
41074 | * fname-uf.adb: Minor comment update | |
41075 | ||
41076 | * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail | |
41077 | ||
41078 | * gnatbind.adb: Initialize Cumulative_Restrictions with the | |
41079 | restrictions on the target. | |
41080 | ||
2fb00d7f KH |
41081 | 2004-02-03 Kazu Hirata <kazu@cs.umass.edu> |
41082 | ||
41083 | * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of | |
41084 | gen_rtx. | |
41085 | ||
5ed23e25 AC |
41086 | 2004-02-02 Arnaud Charlet <charlet@gnat.com> |
41087 | ||
41088 | * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded. | |
41089 | ||
6e937c1c AC |
41090 | 2004-02-02 Vincent Celier <celier@gnat.com> |
41091 | ||
41092 | * gprcmd.adb (Check_Args): If condition is false, print the invoked | |
41093 | comment before the usage. | |
41094 | Gprcmd: Fail when command is not recognized. | |
41095 | (Usage): Document command "prefix" | |
41096 | ||
41097 | * g-md5.adb (Digest): Process last block. | |
41098 | (Update): Do not process last block. Store remaining characters and | |
41099 | length in Context. | |
41100 | ||
41101 | * g-md5.ads (Update): Document that several call to update are | |
41102 | equivalent to one call with the concatenated string. | |
41103 | (Context): Add fields to allow new Update behaviour. | |
41104 | ||
41105 | * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail, | |
41106 | defaulted to False. | |
41107 | When May_Fail is True and no existing file can be found, return No_File. | |
41108 | ||
41109 | * 6vcstrea.adb: Inlined functions are now wrappers to implementation | |
41110 | functions. | |
41111 | ||
41112 | * lib-writ.adb (Write_With_Lines): When body file does not exist, use | |
41113 | spec file name instead on the W line. | |
41114 | ||
41115 | 2004-02-02 Robert Dewar <dewar@gnat.com> | |
41116 | ||
41117 | * ali.adb: Read and acquire info from new format restrictions lines | |
41118 | ||
41119 | * bcheck.adb: Add circuits for checking restrictions with parameters | |
41120 | ||
41121 | * bindgen.adb: Output dummy restrictions data | |
41122 | To be changed later | |
41123 | ||
41124 | * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb, | |
41125 | exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb, | |
41126 | freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb, | |
41127 | sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb, | |
41128 | sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling. | |
41129 | ||
41130 | * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses | |
41131 | the warning message on access to possibly uninitialized variable S) | |
41132 | Minor changes for new restrictions handling. | |
41133 | ||
41134 | * gnatbind.adb: Minor reformatting | |
41135 | Minor changes for new restrictions handling | |
41136 | Move circuit for -r processing here from bcheck (cleaner) | |
41137 | ||
41138 | * gnatcmd.adb, gnatlink.adb: Minor reformatting | |
41139 | ||
41140 | * lib-writ.adb: Output new format restrictions lines | |
41141 | ||
41142 | * lib-writ.ads: Document new R format lines for new restrictions | |
41143 | handling. | |
41144 | ||
41145 | * s-restri.ads/adb: New files | |
41146 | ||
41147 | * Makefile.rtl: Add entry for s-restri.ads/adb | |
41148 | ||
41149 | * par-ch3.adb: Fix bad error messages starting with upper case letter | |
41150 | Minor reformatting | |
41151 | ||
41152 | * restrict.adb: Major rewrite throughout for new restrictions handling | |
41153 | Major point is to handle restrictions with parameters | |
41154 | ||
41155 | * restrict.ads: Major changes in interface to handle restrictions with | |
41156 | parameters. Also generally simplifies setting of restrictions. | |
41157 | ||
41158 | * snames.ads/adb: New entry for proper handling of No_Requeue | |
41159 | ||
41160 | * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks | |
41161 | restriction counting. | |
41162 | Other minor changes for new restrictions handling | |
41163 | ||
41164 | * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements. | |
41165 | Restriction_Warnings now allows full parameter notation | |
41166 | Major rewrite of Restrictions for new restrictions handling | |
41167 | ||
41168 | 2004-02-02 Javier Miranda <miranda@gnat.com> | |
41169 | ||
41170 | * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y | |
41171 | syntax rule for object renaming declarations. | |
41172 | (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for | |
41173 | component definitions. | |
41174 | ||
41175 | * sem_ch3.adb (Analyze_Component_Declaration): Give support to access | |
41176 | components. | |
41177 | (Array_Type_Declaration): Give support to access components. In addition | |
41178 | it was also modified to reflect the name of the object in anonymous | |
41179 | array types. The old code did not take into account that it is possible | |
41180 | to have an unconstrained anonymous array with an initial value. | |
41181 | (Check_Or_Process_Discriminants): Allow access discriminant in | |
41182 | non-limited types. | |
41183 | (Process_Discriminants): Allow access discriminant in non-limited types | |
41184 | Initialize the new Access_Definition field in N_Object_Renaming_Decl | |
41185 | node. Change Ada0Y to Ada 0Y in comments | |
41186 | ||
41187 | * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in | |
41188 | equality operators. | |
41189 | Change Ada0Y to Ada 0Y in comments | |
41190 | ||
41191 | * sem_ch8.adb (Analyze_Object_Renaming): Give support to access | |
41192 | renamings Change Ada0Y to Ada 0Y in comments | |
41193 | ||
41194 | * sem_type.adb (Find_Unique_Type): Give support to the equality | |
41195 | operators for universal access types | |
41196 | Change Ada0Y to Ada 0Y in comments | |
41197 | ||
41198 | * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms | |
41199 | ||
41200 | * sinfo.ads (N_Component_Definition): Addition of Access_Definition | |
41201 | field. | |
41202 | (N_Object_Renaming_Declaration): Addition of Access_Definition field | |
41203 | Change Ada0Y to Ada 0Y in comments | |
41204 | ||
41205 | * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for | |
41206 | component definition and object renaming nodes | |
41207 | Change Ada0Y to Ada 0Y in comments | |
41208 | ||
41209 | 2004-02-02 Jose Ruiz <ruiz@act-europe.fr> | |
41210 | ||
41211 | * restrict.adb: Use the new restriction identifier | |
41212 | No_Requeue_Statements instead of the old No_Requeue for defining the | |
41213 | restricted profile. | |
41214 | ||
41215 | * sem_ch9.adb (Analyze_Requeue): Check the new restriction | |
41216 | No_Requeue_Statements. | |
41217 | ||
41218 | * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249) | |
41219 | that supersedes the GNAT specific restriction No_Requeue. The later is | |
41220 | kept for backward compatibility. | |
41221 | ||
41222 | 2004-02-02 Ed Schonberg <schonberg@gnat.com> | |
41223 | ||
41224 | * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads, | |
41225 | 5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant | |
41226 | pragma and fix incorrect ones. | |
41227 | ||
41228 | * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a | |
41229 | warning if the pragma is redundant. | |
41230 | ||
41231 | 2004-02-02 Thomas Quinot <quinot@act-europe.fr> | |
41232 | ||
41233 | * 5staprop.adb: Add missing 'constant' keywords. | |
41234 | ||
41235 | * Makefile.in: use consistent value for SYMLIB on | |
41236 | platforms where libaddr2line is supported. | |
41237 | ||
41238 | 2004-02-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
41239 | ||
41240 | * utils.c (end_subprog_body): Do not call rest_of_compilation if just | |
41241 | annotating types. | |
41242 | ||
41243 | 2004-02-02 Olivier Hainque <hainque@act-europe.fr> | |
41244 | ||
41245 | * init.c (__gnat_install_handler): Setup an alternate stack for signal | |
41246 | handlers in the environment thread. This allows proper propagation of | |
41247 | an exception on stack overflows in this thread even when the builtin | |
41248 | ABI stack-checking scheme is used without support for a stack reserve | |
41249 | region. | |
41250 | ||
41251 | * utils.c (create_field_decl): Augment the head comment about bitfield | |
41252 | creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P | |
41253 | here, because the former is not accurate enough at this point. | |
41254 | Let finish_record_type decide instead. | |
41255 | Don't make a bitfield if the field is to be addressable. | |
41256 | Always set a size for the field if the record is packed, to ensure the | |
41257 | checks for bitfield creation are triggered. | |
41258 | (finish_record_type): During last pass over the fields, clear | |
41259 | DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is | |
41260 | not covered by the calls to layout_decl. Adjust DECL_NONADDRESSABLE_P | |
41261 | from DECL_BIT_FIELD. | |
41262 | ||
71cbe2c1 KC |
41263 | 2004-01-30 Kelley Cook <kcook@gcc.gnu.org> |
41264 | ||
90afe2c9 | 41265 | * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir). |
71cbe2c1 KC |
41266 | (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise. |
41267 | (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise. | |
41268 | ||
7f996f90 RO |
41269 | 2004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
41270 | ||
41271 | * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB. | |
41272 | ||
41273 | * 5fsystem.ads (Functions_Return_By_DSP): Set to False. | |
41274 | (ZCX_By_Default): Likewise. | |
41275 | (Front_End_ZCX_Support): Likewise. | |
41276 | ||
41277 | * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced. | |
41278 | (Initialize_Lock): Mark Level unreferenced. | |
41279 | (Sleep): Mark Reason unreferenced. | |
41280 | (Timed_Sleep): Likewise. | |
41281 | (Wakeup): Likewise. | |
41282 | (Exit_Task): Use Result. | |
41283 | (Check_No_Locks): Mark Self_ID unreferenced. | |
90afe2c9 | 41284 | |
7f996f90 RO |
41285 | * 5gtasinf.adb (New_Sproc): Make Attr constant. |
41286 | (Bound_Thread_Attributes): Make Sproc constant. | |
41287 | (New_Bound_Thread_Attributes): Likewise. | |
41288 | ||
26fd4eae AC |
41289 | 2004-01-26 Ed Schonberg <schonberg@gnat.com> |
41290 | ||
41291 | * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for | |
41292 | one-dimensional array an slice assignments, when component type is | |
41293 | controlled. | |
41294 | ||
41295 | * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional, | |
41296 | component type is controlled, and control_actions are in effect, use | |
41297 | TSS procedure rather than generating inline code. | |
41298 | ||
41299 | * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional | |
41300 | arrays with controlled components. | |
41301 | ||
41302 | 2004-01-26 Vincent Celier <celier@gnat.com> | |
41303 | ||
41304 | * gnatcmd.adb (GNATCmd): Add specification of argument file on the | |
41305 | command line for the non VMS case. | |
41306 | ||
41307 | * gnatlink.adb (Process_Binder_File): When building object file, if | |
41308 | GNU linker is used, put all object paths between quotes, to prevent ld | |
41309 | error when there are unusual characters (such as '!') in the paths. | |
41310 | ||
41311 | * Makefile.generic: When there are sources in Ada and the main is in | |
41312 | C/C++, invoke gnatmake with -B, instead of -z. | |
41313 | ||
41314 | * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted | |
41315 | from VMS_Conversion. | |
41316 | (Process_Argument): New procedure, extracted from VMS_Conversion. Add | |
41317 | specification of argument file on the command line. | |
41318 | ||
41319 | 2004-01-26 Bernard Banner <banner@gnat.com> | |
41320 | ||
41321 | * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64 | |
41322 | ||
41323 | 2004-01-26 Ed Schonberg <schonberg@gnat.com> | |
41324 | ||
41325 | * snames.adb: Update copyright notice. | |
41326 | Add info on slice assignment for controlled arrays. | |
41327 | ||
b7e429ab AC |
41328 | 2004-01-23 Robert Dewar <dewar@gnat.com> |
41329 | ||
41330 | * exp_aggr.adb: Minor reformatting | |
41331 | ||
41332 | * exp_ch9.adb: Minor code clean up | |
41333 | Minor reformatting | |
41334 | Fix bad character in comment | |
41335 | ||
41336 | PR ada/13471 | |
41337 | * targparm.adb (Get_Target_Parameters): Give clean abort error on | |
41338 | unexpected end of file, along with more detailed message. | |
41339 | ||
41340 | 2004-01-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
41341 | ||
41342 | * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of | |
41343 | PAT. | |
41344 | ||
41345 | * decl.c (copy_alias_set): New function. | |
41346 | (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it. | |
41347 | ||
41348 | 2004-01-23 Doug Rupp <rupp@gnat.com> | |
41349 | ||
41350 | * Makefile.in (install-gnatlib): Change occurrences of lib$$file to | |
41351 | lib$${file} in case subsequent character is not a separator. | |
41352 | ||
41353 | 2004-01-23 Vincent Celier <celier@gnat.com> | |
41354 | ||
41355 | * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc | |
41356 | when the GCC version is at least 3. | |
41357 | ||
41358 | * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches | |
41359 | Remove all "Opt.", to prepare for opt split | |
41360 | ||
41361 | * prj-part.adb (Parse_Single_Project): New Boolean out parameter | |
41362 | Extends_All. Set to True when the project parsed is an extending all | |
41363 | project. Fails for importing an extending all project only when the | |
41364 | imported project is an extending all project. | |
41365 | (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause, | |
41366 | depending on the value of Extends_All returned. | |
41367 | ||
41368 | * prj-proc.adb (Process): Check that no project shares its object | |
41369 | directory with a project that extends it, directly or indirectly, | |
41370 | including a virtual project. | |
41371 | Check that no project extended by another project shares its object | |
41372 | directory with another also extended project. | |
41373 | ||
41374 | * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for | |
41375 | Kind = N_With_Clause | |
41376 | ||
41377 | * prj-tree.ads: Minor reformatting | |
41378 | Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All). | |
41379 | ||
41380 | 2004-01-23 Ed Schonberg <schonberg@gnat.com> | |
41381 | ||
41382 | * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute | |
41383 | applies to a type with an incomplete view, use full view in Name of | |
41384 | clause, for consistency with uses of Get_Attribute_Definition_Clause. | |
41385 | ||
41386 | 2004-01-23 Arnaud Charlet <charlet@act-europe.fr> | |
41387 | ||
41388 | * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using | |
41389 | SCHED_RR, since other values are not supported by this policy. | |
41390 | (Initialize): Move initialization of mutex attribute to package | |
41391 | elaboration, to prevent early access to this variable. | |
41392 | ||
41393 | * Makefile.in: Remove mention of Makefile.adalib, unused. | |
41394 | ||
b291953f AC |
41395 | * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb, |
41396 | 1ssecsta.ads: Removed, unused. | |
b7e429ab | 41397 | |
adc04486 AC |
41398 | 2004-01-21 Javier Miranda <miranda@gnat.com> |
41399 | ||
41400 | * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master | |
41401 | entity if already built in the current scope. | |
41402 | ||
41403 | * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity | |
41404 | reminder in internal scopes. Required for nested limited aggregates. | |
41405 | ||
41406 | 2004-01-21 Doug Rupp <rupp@gnat.com> | |
41407 | ||
41408 | * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on | |
41409 | VMS. Replace all occurences of libgnat- and libgnarl- with | |
41410 | libgnat$(hyphen) and libgnarl$(hyphen). | |
41411 | Fixed shared library build problem on VMS. | |
41412 | ||
41413 | 2004-01-21 Robert Dewar <dewar@gnat.com> | |
41414 | ||
41415 | * mlib-prj.adb: Minor reformatting | |
41416 | ||
41417 | 2004-01-21 Thomas Quinot <quinot@act-europe.fr> | |
41418 | ||
41419 | * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing | |
41420 | 'constant' keywords for declaration of pointers that are not modified. | |
41421 | ||
41422 | * exp_pakd.adb: Fix English in comment. | |
41423 | ||
41424 | 2004-01-21 Ed Schonberg <schonberg@gnat.com> | |
41425 | ||
41426 | PR ada/10889 | |
41427 | * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype, | |
41428 | copy all attributes of the parent, including the foreign language | |
41429 | convention. | |
41430 | ||
41431 | 2004-01-21 Sergey Rybin <rybin@act-europe.fr> | |
41432 | ||
41433 | PR ada/10565 | |
41434 | * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check | |
41435 | for 'delay until' statement. | |
41436 | ||
a541f69d KC |
41437 | 2004-01-20 Kelley Cook <kcook@gcc.gnu.org> |
41438 | ||
41439 | * Make-lang.in: Replace $(docdir) with doc. | |
41440 | (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info | |
41441 | doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update | |
41442 | to use consistent MAKEINFO rule. | |
41443 | (ada.man, ada.srcman): Dummy entry. | |
41444 | (ADA_INFOFILES): Define. | |
41445 | (ada.info, ada.srcinfo): New rules. | |
41446 | ||
c01a9391 AC |
41447 | 2004-01-19 Arnaud Charlet <charlet@act-europe.fr> |
41448 | ||
41449 | * utils.c: Update copyright notice, missed in previous change. | |
41450 | ||
41451 | 2004-01-19 Vincent Celier <celier@gnat.com> | |
41452 | ||
41453 | * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the | |
41454 | args if Bind is True. Set First_ALI, if not already done. | |
41455 | (Build_Library): For Stand Alone Libraries, extract from one ALI file | |
41456 | an eventual --RTS switch, for gnatbind, and all backend switches + | |
41457 | --RTS, for linking. | |
41458 | ||
41459 | 2004-01-19 Robert Dewar <dewar@gnat.com> | |
41460 | ||
41461 | * sem_attr.adb, memtrack.adb: Minor reformatting | |
41462 | ||
41463 | 2004-01-19 Ed Schonberg <schonberg@gnat.com> | |
41464 | ||
41465 | * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions | |
41466 | that rename enumeration literals. This is properly done in sem_eval. | |
41467 | ||
41468 | * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls | |
41469 | to functions that rename enumeration literals. | |
41470 | ||
41471 | * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to | |
41472 | functions that rename enumeration literals. | |
41473 | ||
510d1e80 KH |
41474 | 2004-01-16 Kazu Hirata <kazu@cs.umass.edu> |
41475 | ||
41476 | * Make-lang.in (utils.o): Depend on target.h. | |
41477 | * utils.c: Include target.h. | |
41478 | (process_attributes): Use targetm.have_named_sections instead | |
41479 | of ASM_OUTPUT_SECTION_NAME. | |
41480 | ||
fbf3e0dd AJ |
41481 | 2004-01-16 Andreas Jaeger <aj@suse.de> |
41482 | ||
41483 | * Makefile.in: Add $(DESTDIR). | |
41484 | ||
acd47d2a AC |
41485 | 2004-01-15 Olivier Hainque <hainque@act-europe.fr> |
41486 | ||
41487 | * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size | |
41488 | also when not defining if a Size clause applies. That information is | |
41489 | not to be ignored. | |
41490 | ||
41491 | 2004-01-15 Arnaud Charlet <charlet@act-europe.fr> | |
41492 | ||
41493 | * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up | |
41494 | symbolic links for the shared gnat run time when needed. | |
41495 | ||
41496 | 2004-01-15 Vasiliy Fofanov <fofanov@act-europe.fr> | |
41497 | ||
41498 | * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened | |
41499 | for writing, and terminate with an error message if not. | |
41500 | ||
41501 | 2004-01-15 Ed Schonberg <schonberg@gnat.com> | |
41502 | ||
41503 | * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious | |
41504 | warning on an access to subprogram in an instance, when the target | |
41505 | type is declared in the same generic unit. | |
41506 | (Eval_Attribute): If 'access is known to fail accessibility check, | |
41507 | rewrite as a raise statement. | |
41508 | ||
41509 | 2004-01-15 GNAT Script <nobody@gnat.com> | |
41510 | ||
41511 | * Make-lang.in: Makefile automatically updated | |
41512 | ||
03787dfd KC |
41513 | 2004-01-15 Kelley Cook <kcook@gcc.gnu.org> |
41514 | ||
41515 | * Make-lang.in (ada.srcextra): Dummy entry. | |
41516 | ||
73e232f0 KC |
41517 | 2004-01-14 Kelley Cook <kcook@gcc.gnu.org> |
41518 | ||
41519 | * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode. | |
41520 | ||
9bc43c53 AC |
41521 | 2004-01-13 Ed Schonberg <schonberg@gnat.com> |
41522 | ||
41523 | * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled | |
41524 | components that are initialized with aggregates. | |
41525 | ||
41526 | 2004-01-13 Vincent Celier <celier@gnat.com> | |
41527 | ||
41528 | * gnatlink.adb (Process_Binder_File): To find directory of shared | |
41529 | libgcc, if "gcc-lib" is not a subdirectory, look for the last | |
41530 | subdirectory "lib" in the path of the shared libgnat or libgnarl. | |
41531 | ||
41532 | * make.adb (Gnatmake): If GCC version is at least 3, link with | |
41533 | -shared-libgcc, when there is at least one shared library project. | |
41534 | ||
41535 | * opt.ads (GCC_Version): New integer constant. | |
41536 | ||
41537 | * adaint.c (get_gcc_version): New function. | |
41538 | ||
41539 | 2004-01-13 Robert Dewar <dewar@gnat.com> | |
41540 | ||
41541 | * sem_dist.adb, sem_res.adb, sem_util.adb, | |
41542 | sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb, | |
41543 | exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting | |
41544 | ||
41545 | 2004-01-13 Thomas Quinot <quinot@act-europe.fr> | |
41546 | ||
41547 | * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb, | |
41548 | g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object | |
41549 | declarations. | |
41550 | ||
8b52de7b AC |
41551 | 2004-01-12 Arnaud Charlet <charlet@act-europe.fr> |
41552 | ||
f6ea0188 AC |
41553 | * misc.c: Remove trailing spaces. |
41554 | Update copyright notice missed in previous change. | |
41555 | ||
8b52de7b AC |
41556 | PR ada/13572 |
41557 | * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of | |
41558 | prefix/share/make | |
41559 | ||
41560 | * Makefile.generic: Update copyright. | |
41561 | Add license notice. | |
41562 | ||
41563 | * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead | |
41564 | of prefix/share/make. | |
41565 | ||
41566 | * Makefile.prolog: Update copyright. | |
41567 | Add license notice. | |
41568 | ||
41569 | 2004-01-12 Laurent Pautet <pautet@act-europe.fr> | |
41570 | ||
41571 | * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb, | |
41572 | 3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb, | |
41573 | g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr | |
41574 | instead of String. | |
41575 | ||
41576 | * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message | |
41577 | signature. | |
41578 | ||
41579 | 2004-01-12 Javier Miranda <miranda@gnat.com> | |
41580 | ||
41581 | * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb, | |
41582 | exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb, | |
41583 | sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb, | |
41584 | sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of | |
41585 | Component_Definition node. | |
41586 | ||
41587 | 2004-01-12 Ed Falis <falis@gnat.com> | |
41588 | ||
41589 | * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit | |
41590 | ||
41591 | 2004-01-12 Thomas Quinot <quinot@act-europe.fr> | |
41592 | ||
41593 | * link.c: Change default libgnat kind to STATIC for FreeBSD. | |
41594 | ||
41595 | 2004-01-12 Bernard Banner <banner@gnat.com> | |
41596 | ||
41597 | * Makefile.in: map 86numaux to a-numaux for x86_64 | |
41598 | ||
41599 | 2004-01-12 Ed Schonberg <schonberg@gnat.com> | |
41600 | ||
41601 | * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity | |
41602 | generated to rename a generic actual, go to the actual itself, the | |
41603 | subtype is not a user-visible entity. | |
41604 | ||
41605 | * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible | |
41606 | part is a private subtype, reset the visibility of its full view, if | |
41607 | any, to be consistent. | |
41608 | ||
41609 | PR ada/13417 | |
41610 | * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt | |
41611 | to use a generic package G as a formal package for another generic | |
41612 | declared within G. | |
41613 | ||
41614 | 2004-01-12 Robert Dewar <dewar@gnat.com> | |
41615 | ||
41616 | * trans.c (Eliminate_Error_Msg): New procedure called to generate msg | |
41617 | ||
41618 | * usage.adb: Remove mention of obsolete -gnatwb switch | |
41619 | Noticed during code reading | |
41620 | ||
41621 | 2004-01-12 Jerome Guitton <guitton@act-europe.fr> | |
41622 | ||
41623 | * 1ssecsta.adb: Minor changes for -gnatwa warnings | |
41624 | ||
41625 | 2004-01-12 GNAT Script <nobody@gnat.com> | |
41626 | ||
41627 | * Make-lang.in: Makefile automatically updated | |
41628 | ||
0fab64a3 MM |
41629 | 2004-01-09 Mark Mitchell <mark@codesourcery.com> |
41630 | ||
41631 | * misc.c (gnat_expand_expr): Add alt_rtl parameter. | |
41632 | ||
47527624 RO |
41633 | 2004-01-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
41634 | ||
41635 | * link.c [sgi] (shared_libgnat_default): Change to STATIC. | |
41636 | ||
dedebde1 KC |
41637 | 2004-01-05 Kelley Cook <kcook@gcc.gnu.org> |
41638 | ||
fbf3e0dd | 41639 | * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18. |
dedebde1 KC |
41640 | Update comment and copyright date. |
41641 | * stamp-xgnatug: Delete. | |
41642 | ||
91b1417d AC |
41643 | 2004-01-05 Robert Dewar <dewar@gnat.com> |
41644 | ||
41645 | * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may | |
41646 | be modified by the binder generated main program if the -D switch is | |
41647 | used. | |
41648 | ||
41649 | * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all | |
41650 | imported functions (since now we expect this to be done for imported | |
41651 | functions) | |
41652 | ||
41653 | * 5vtaprop.adb: Add several ??? for sections requiring more comments | |
41654 | Minor reformatting throughout | |
41655 | ||
41656 | * 5zinit.adb: Minor reformatting | |
41657 | Add 2004 to copyright date | |
41658 | Minor changes to avoid -gnatwa warnings | |
41659 | Correct some instances of using OR instead of OR ELSE (noted while | |
41660 | doing reformatting) | |
41661 | ||
41662 | * sprint.adb: Minor updates to avoid -gnatwa warnings | |
41663 | ||
fbf3e0dd | 41664 | * s-secsta.ads, s-secsta.adb: |
91b1417d AC |
41665 | (SS_Get_Max): New function to obtain high water mark for ss stack |
41666 | Default_Secondary_Stack is not a constant since it may be modified by | |
41667 | the binder generated main program if the -D switch is used. | |
41668 | ||
41669 | * switch-b.adb: New -Dnnn switch for binder | |
41670 | ||
fbf3e0dd | 41671 | * switch-c.adb: |
91b1417d AC |
41672 | Make -gnatg imply all warnings currently in -gnatwa |
41673 | ||
41674 | * vms_conv.adb: Minor reformatting | |
41675 | Add 2004 to copyright notice | |
41676 | Add 2004 to printed copyright notice | |
41677 | ||
41678 | * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb, | |
41679 | 3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb, | |
41680 | 5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb, | |
41681 | 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb, | |
41682 | 5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb, | |
41683 | 5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb, | |
41684 | 5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb, | |
41685 | 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb, | |
41686 | 5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb, | |
41687 | 5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb, | |
41688 | 6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb, | |
41689 | vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb, | |
41690 | xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads, | |
41691 | sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb, | |
41692 | checks.adb, clean.adb, cstand.adb, einfo.ads, | |
41693 | einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb, | |
41694 | exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb, | |
41695 | prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb, | |
41696 | sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb, | |
41697 | g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb, | |
41698 | lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb: | |
41699 | Minor reformatting and code clean ups. | |
41700 | Minor changes to prevent -gnatwa warnings | |
41701 | ||
41702 | * ali.adb: Minor reformatting and cleanup of code | |
41703 | Acquire new SS indication of secondary stack use from ali files | |
41704 | ||
41705 | * a-numaux.ads: Add Pure_Function pragmas for all imported functions | |
41706 | (since now we expect this to be done for imported functions) | |
41707 | ||
41708 | * bindgen.adb: Generate call to modify default secondary stack size if | |
41709 | -Dnnn switch given | |
41710 | ||
41711 | * bindusg.adb: Add line for new -D switch | |
41712 | ||
41713 | * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate | |
41714 | replacement name for Type_May_Have_Non_Bit_Aligned_Components! | |
41715 | Add circuitry for both records and arrays to avoid gigi | |
41716 | processing if the type involved has non-bit-aligned components | |
41717 | ||
41718 | * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that | |
41719 | N_String_Literal node always references an E_String_Literal_Subtype | |
41720 | entity. This may not be true in the future. | |
41721 | (Possible_Bit_Aligned_Component): Move processing of | |
41722 | Component_May_Be_Bit_Aligned from exp_ch5 to exp_util | |
41723 | ||
41724 | * exp_ch6.adb (Expand_Thread_Body): Pick up | |
41725 | Default_Secondary_Stack_Size as variable so that we get value modified | |
41726 | by possible -Dnnn binder parameter. | |
41727 | ||
41728 | * exp_util.adb (Component_May_Be_Bit_Aligned): New function. | |
41729 | (Type_May_Have_Bit_Aligned_Components): New function. | |
41730 | ||
41731 | * exp_util.ads (Component_May_Be_Bit_Aligned): New function. | |
41732 | (Type_May_Have_Bit_Aligned_Components): New function. | |
41733 | ||
41734 | * fe.h: (Set_Identifier_Casing): Fix prototype. | |
41735 | Add declaration for Sem_Elim.Eliminate_Error_Msg. | |
41736 | Minor reformatting. | |
41737 | ||
41738 | * freeze.adb (Freeze_Entity): Add RM reference to error message about | |
41739 | importing constant atomic/volatile objects. | |
41740 | (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram | |
41741 | unless explicit Pure_Function pragma given, to avoid insidious bug of | |
41742 | call to non-pure imported function getting eliminated. | |
41743 | ||
41744 | * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb, | |
41745 | gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb, | |
41746 | gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting | |
41747 | Add 2004 to printed copyright notice | |
41748 | ||
41749 | * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary | |
41750 | stack used. | |
41751 | ||
41752 | * Makefile.rtl: Add entry for g-sestin.o | |
41753 | g-sestin.ads: New file. | |
41754 | ||
41755 | * mdll.adb: Minor changes to avoid -gnatwa warnings | |
41756 | ||
41757 | * mlib-tgt.adb: Minor reformatting | |
41758 | ||
41759 | * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND) | |
41760 | New switch Sec_Stack_Used (GNAT, GNATBIND) | |
41761 | Make Default_Secondary_Stack_Size a variable instead of a constant, | |
41762 | so that it can be modified by the new -Dnnn bind switch. | |
41763 | ||
41764 | * rtsfind.adb (Load_Fail): Give full error message in configurable | |
41765 | run-time mode if all_errors mode is set. This was not done in the case | |
41766 | of a file not found, which was an oversight. | |
41767 | Note if secondary stack unit is used by compiler. | |
41768 | ||
41769 | * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put | |
41770 | ineffective elaborate all pragmas on non-visible packages (this | |
41771 | happened when a renamed subprogram was called). Now the elaborate all | |
41772 | always goes on the package containing the renaming rather than the one | |
41773 | containing the renamed subprogram. | |
41774 | ||
41775 | * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure | |
41776 | (Process_Eliminate_Pragma): Add parameter to capture pragma location. | |
41777 | ||
41778 | * sem_eval.adb (Eval_String_Literal): Do not assume that string literal | |
41779 | has an Etype that references an E_String_Literal. | |
41780 | (Eval_String_Literal): Avoid assumption that N_String_Literal node | |
41781 | always references an E_String_Literal_Subtype entity. This may not | |
41782 | be true in the future. | |
41783 | ||
41784 | * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture | |
41785 | pragma location. | |
41786 | ||
41787 | * sem_res.adb (Resolve): Specialize msg for function name used in proc | |
41788 | call. | |
41789 | ||
41790 | 2004-01-05 Ed Falis <falis@gnat.com> | |
41791 | ||
41792 | * g-debuti.adb: Replaced direct boolean operator with short-circuit | |
41793 | form. | |
41794 | ||
41795 | 2004-01-05 Vincent Celier <celier@gnat.com> | |
41796 | ||
41797 | * bld.adb: Minor comment updates | |
41798 | (Process_Declarative_Items): Correct incorrect name (Index_Name instead | |
41799 | of Item_Name). | |
41800 | ||
41801 | * make.adb (Gnatmake): Special process for files to compile/check when | |
41802 | -B is specified. Fail when there are only foreign mains in attribute | |
41803 | Main of the project file and -B is not specified. Do not skip bind/link | |
41804 | steps when -B is specified. | |
41805 | ||
41806 | * makeusg.adb: Document new switch -B | |
41807 | ||
41808 | * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag | |
41809 | ||
41810 | * switch-m.adb: (Scan_Make_Switches): Process -B switch | |
41811 | ||
41812 | * vms_data.ads: Add new GNAT PRETTY qualifier | |
41813 | /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff | |
41814 | ||
41815 | 2004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
41816 | ||
41817 | * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer | |
41818 | case. | |
41819 | ||
41820 | * misc.c (gnat_printable_name): If VERBOSITY is 2, call | |
41821 | Set_Identifier_Casing. | |
41822 | ||
41823 | * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type | |
41824 | has size that overflows. | |
41825 | ||
41826 | 2004-01-05 Gary Dismukes <dismukes@gnat.com> | |
41827 | ||
41828 | * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid | |
41829 | -gnatwa warning on static condition. | |
41830 | ||
41831 | 2004-01-05 Doug Rupp <rupp@gnat.com> | |
41832 | ||
41833 | * link.c: (shared_libgnat_default) [VMS]: Change to STATIC. | |
41834 | ||
41835 | 2004-01-05 Arnaud Charlet <charlet@act-europe.fr> | |
41836 | ||
41837 | * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve | |
41838 | all attributes, including read-only attribute. | |
41839 | ||
41840 | 2004-01-05 Pascal Obry <obry@gnat.com> | |
41841 | ||
41842 | * bindgen.adb (Gen_Object_Files_Options): Generate the new shared | |
41843 | library naming scheme. | |
41844 | ||
41845 | * mlib-prj.adb (Build_Library): Generate different names for the static | |
41846 | or dynamic version of the GNAT runtime. This is needed to support the | |
41847 | new shared library naming scheme. | |
41848 | (Process_Binder_File): Add detection of shared library in binder file | |
41849 | based on the new naming scheme. | |
41850 | ||
41851 | * gnatlink.adb (Process_Binder_File): Properly detect the new naming | |
41852 | scheme for the shared runtime libraries. | |
41853 | ||
41854 | * Makefile.in: | |
41855 | (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming | |
41856 | scheme. | |
41857 | (install-gnatlib): Do not create symlinks for shared libraries. | |
41858 | (gnatlib-shared-default): Idem. | |
41859 | (gnatlib-shared-dual-win32): New target. Not used for now as the | |
41860 | auto-import feature does not support arrays/records. | |
41861 | (gnatlib-shared-win32): Do not create copy for the shared libraries. | |
41862 | (gnatlib-shared-vms): Fix shared runtime libraries names. | |
41863 | ||
41864 | * osint.ads, osint.adb (Shared_Lib): New routine, returns the target | |
41865 | dependent runtime shared library name. | |
41866 | ||
41867 | 2004-01-05 Vasiliy Fofanov <fofanov@act-europe.fr> | |
41868 | ||
41869 | * osint.adb (Read_Library_Info): Remove bogus check if ALI is older | |
41870 | than the object. | |
41871 | ||
41872 | 2004-01-05 Ed Schonberg <schonberg@gnat.com> | |
41873 | ||
41874 | * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic | |
41875 | protected objects when allocator has a subtype indication, not a | |
41876 | qualified expression. Note that qualified expressions may have to be | |
41877 | checked when limited aggregates are implemented. | |
41878 | ||
41879 | * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is | |
41880 | pure, emit warning. | |
41881 | (Analyze_Pragma, case Pure_Function): If enclosing package is pure and | |
41882 | subprogram is imported, remove warning. | |
41883 | ||
41884 | 2004-01-05 Geert Bosch <bosch@gnat.com> | |
41885 | ||
41886 | * s-poosiz.adb: Update copyright notice. | |
41887 | (Allocate): Use Task_Lock to protect against concurrent access. | |
41888 | (Deallocate): Likewise. | |
41889 | ||
41890 | 2004-01-05 Joel Brobecker <brobecker@gnat.com> | |
41891 | ||
41892 | * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ??? | |
41893 | comment. | |
41894 | ||
2ab127f3 KC |
41895 | 2003-12-23 Kelley Cook <kcook@gcc.gnu.org> |
41896 | ||
41897 | * gnat_ug.texi: Force a CVS commit by updating copyright. | |
41898 | * gnat_ug_vxw.texi: Regenerate. | |
41899 | * gnat_ug_wnt.texi: Regenerate. | |
41900 | * gnat_ug_vms.texi: Regenerate. | |
41901 | * gnat_ug_unx.texi: Regenerate. | |
41902 | ||
aed8bfdc KH |
41903 | 2003-12-20 Kazu Hirata <kazu@cs.umass.edu> |
41904 | ||
41905 | * trans.c: Remove uses of "register" specifier in | |
41906 | declarations of local variables. | |
41907 | ||
90c2f1de KC |
41908 | 2003-12-18 Kelley Cook <kcook@gcc.gnu.org> |
41909 | ||
41910 | * stamp-xgnatug: New stamp file. | |
41911 | * Make-lang.in (stamp-xgnatug): New stamp file and comment. | |
41912 | (ada/doctools/xgnatug): Add $(build_exeext). | |
41913 | (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi | |
41914 | ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug. | |
41915 | ||
891a6e79 AC |
41916 | 2003-12-17 Ed Falis <falis@gnat.com> |
41917 | ||
41918 | * a-elchha.adb (Tailored_Exception_Information): made Info constant to | |
41919 | eliminate warning. | |
41920 | ||
41921 | * a-exextr.adb: Add context clause for | |
41922 | Ada.Exceptions.Last_Chance_Handler. | |
41923 | ||
41924 | 2003-12-17 Sergey Rybin <rybin@act-europe.fr> | |
41925 | ||
41926 | * cstand.adb (Create_Standard): Change the way how the declaration of | |
41927 | the Duration type is created (making it the same way as it is for all | |
41928 | the other standard types). | |
41929 | ||
41930 | 2003-12-17 Robert Dewar <dewar@gnat.com> | |
41931 | ||
41932 | * s-crtl.ads: Fix header format | |
41933 | Change Pure to Preelaborate | |
41934 | ||
41935 | 2003-12-17 Ed Schonberg <schonberg@gnat.com> | |
41936 | ||
41937 | * checks.adb (Selected_Length_Checks): Generate an Itype reference for | |
41938 | the expression type only if it is declared in the current unit. | |
41939 | ||
41940 | * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds | |
41941 | are universal and already analyzed, as can occur in constrained | |
41942 | subcomponents that depend on discriminants, when one constraint is a | |
41943 | subtype mark. | |
41944 | ||
41945 | * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of | |
41946 | type Any_Fixed is legal as the argument of a conversion, if only one | |
41947 | fixed-point type is in context. | |
41948 | ||
41949 | 2003-12-17 GNAT Script <nobody@gnat.com> | |
41950 | ||
41951 | * Make-lang.in: Makefile automatically updated | |
41952 | ||
209db2bf AC |
41953 | 2003-12-15 Robert Dewar <dewar@gnat.com> |
41954 | ||
41955 | * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default | |
41956 | sec stack size. | |
41957 | ||
41958 | 2003-12-15 Vincent Celier <celier@gnat.com> | |
41959 | ||
41960 | * gnatchop.adb: (Error_Msg): Do not exit on error for a warning | |
41961 | (Gnatchop): Do not set failure status when reporting the number of | |
41962 | warnings. | |
41963 | ||
41964 | 2003-12-15 Doug Rupp <rupp@gnat.com> | |
41965 | ||
41966 | * s-ctrl.ads: New file. | |
41967 | ||
41968 | * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext). | |
41969 | ||
41970 | * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o. | |
41971 | (GNATBIND_OBJS): Add ada/s-crtl.o. | |
41972 | ||
41973 | * Makefile.in [VMS]: Clean up ifeq rules. | |
41974 | ||
41975 | * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb, | |
41976 | a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb, | |
41977 | g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb, | |
41978 | s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb, | |
41979 | s-tasdeb.adb: Update copyright. | |
41980 | Import System.CRTL. | |
41981 | Make minor modifications to use System.CRTL declared functions instead | |
41982 | of importing locally. | |
41983 | ||
41984 | 2003-12-15 GNAT Script <nobody@gnat.com> | |
41985 | ||
41986 | * Make-lang.in: Makefile automatically updated | |
41987 | ||
a9f4e3d2 AC |
41988 | 2003-12-11 Ed Falis <falis@gnat.com> |
41989 | ||
41990 | * 5zinit.adb: Clean up. | |
41991 | ||
41992 | * 5zintman.adb (Notify_Exception): replaced case statement with a call | |
41993 | to __gnat_map_signal, imported from init.c to support | |
41994 | signal -> exception mappings that depend on the vxWorks version. | |
41995 | ||
fbf3e0dd | 41996 | * init.c: |
a9f4e3d2 AC |
41997 | Created and exported __gnat_map_signal to support signal -> exception |
41998 | mapping that is dependent on the VxWorks version. | |
41999 | Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks | |
42000 | ||
42001 | 2003-12-11 Vasiliy Fofanv <fofanov@act-europe.fr> | |
42002 | ||
42003 | * 5wosinte.ads: Link with -mthreads switch. | |
42004 | ||
42005 | 2003-12-11 Arnaud Charlet <charlet@act-europe.fr> | |
42006 | ||
42007 | * init.c (__gnat_install_handler [NetBSD]): Set | |
42008 | __gnat_handler_installed, as done on all other platforms. | |
42009 | Remove duplicated code. | |
42010 | ||
42011 | 2003-12-11 Jerome Guitton <guitton@act-europe.fr> | |
42012 | ||
42013 | * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a. | |
42014 | ||
42015 | 2003-12-11 Thomas Quinot <quinot@act-europe.fr> | |
42016 | ||
42017 | * sinfo.ads: Fix inconsistent example code in comment. | |
42018 | ||
42019 | 2003-12-11 Robert Dewar <dewar@gnat.com> | |
42020 | ||
42021 | * a-tiinau.adb: Add a couple of comments | |
42022 | ||
42023 | * sem_ch3.adb: Minor reformatting | |
42024 | ||
fbf3e0dd | 42025 | * sem_prag.adb: |
a9f4e3d2 AC |
42026 | Fix bad prototype of Same_Base_Type in body (code reading cleanup) |
42027 | Minor reformatting throughout | |
42028 | ||
42029 | 2003-12-11 Ed Schonberg <schonberg@gnat.com> | |
42030 | ||
42031 | * exp_ch7.adb (Establish_Transient_Scope): If the call is within the | |
42032 | bounds of a loop, create a separate block in order to generate proper | |
42033 | cleanup actions to prevent memory leaks. | |
42034 | ||
42035 | * sem_res.adb (Resolve_Call): After a call to | |
42036 | Establish_Transient_Scope, the call may be rewritten and relocated, in | |
42037 | which case no further processing is needed. | |
42038 | ||
42039 | * sem_util.adb: (Wrong_Type): Refine previous fix. | |
42040 | Fixes ACATS regressions. | |
42041 | ||
42042 | PR ada/13353 | |
a9f4e3d2 AC |
42043 | * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always |
42044 | be inlined. | |
42045 | ||
c45b6ae0 AC |
42046 | 2003-12-08 Jerome Guitton <guitton@act-europe.fr> |
42047 | ||
42048 | * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb, | |
42049 | i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of | |
42050 | obsolete files. | |
42051 | ||
42052 | * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a. | |
42053 | (rts-zfp): Ditto. | |
42054 | ||
42055 | 2003-12-08 Robert Dewar <dewar@gnat.com> | |
42056 | ||
42057 | * 7sintman.adb: Minor reformatting | |
42058 | ||
42059 | * bindgen.adb: Configurable_Run_Time mode no longer suppresses the | |
42060 | standard linker options to get standard libraries linked. We now plan | |
42061 | to provide dummy versions of these libraries to match the appropriate | |
42062 | configurable run-time (e.g. if a library is not needed at all, provide | |
42063 | a dummy empty library). | |
42064 | ||
42065 | * targparm.ads: Configurable_Run_Time mode no longer affects linker | |
42066 | options (-L parameters and standard libraries). What we plan to do is | |
42067 | to provide dummy libraries where the libraries are not required. | |
42068 | ||
42069 | * gnatbind.adb: Minor comment improvement | |
42070 | ||
42071 | 2003-12-08 Javier Miranda <miranda@gnat.com> | |
42072 | ||
42073 | * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded | |
42074 | aggregate in the parent. Otherwise constants with limited aggregates | |
42075 | are not supported. Add new formal to pass the component type (Ctype). | |
42076 | It is required to call the corresponding IP subprogram in case of | |
42077 | default initialized components. | |
42078 | (Gen_Assign): In case of default-initialized component, generate a | |
42079 | call to the IP subprogram associated with the component. | |
42080 | (Build_Record_Aggr_Code): Remove the aggregate from the parent in case | |
42081 | of aggregate with default initialized components. | |
42082 | (Has_Default_Init_Comps): Improve implementation to recursively check | |
42083 | all the present expressions. | |
42084 | ||
42085 | * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal | |
42086 | to indicate that the initialization call corresponds to a | |
42087 | default-initialized component of an aggregate. | |
42088 | In case of default initialized aggregate with tasks this parameter is | |
42089 | used to generate a null string (this is just a workaround that must be | |
42090 | improved later). In case of discriminants, this parameter is used to | |
42091 | generate a selected component node that gives access to the discriminant | |
42092 | value. | |
42093 | ||
42094 | * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New | |
42095 | subprogram, based on Build_Task_Allocate_Block, but adapted to expand | |
42096 | allocated aggregates with default-initialized components. | |
42097 | ||
42098 | * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if | |
42099 | the box notation is used in positional aggregates. | |
42100 | ||
42101 | 2003-12-08 Samuel Tardieu <tardieu@act-europe.fr> | |
42102 | ||
42103 | * lib.ads: Fix typo in comment | |
42104 | ||
42105 | 2003-12-08 Vincent Celier <celier@gnat.com> | |
42106 | ||
42107 | * prj.adb (Project_Empty): New component Unkept_Comments | |
42108 | (Scan): Remove procedure; moved to Prj.Err. | |
42109 | ||
42110 | * prj.ads (Project_Data): New Boolean component Unkept_Comments | |
42111 | (Scan): Remove procedure; moved to Prj.Err. | |
42112 | ||
42113 | * prj-dect.adb: Manage comments for the different declarations. | |
42114 | ||
42115 | * prj-part.adb (With_Record): New component Node | |
42116 | (Parse): New Boolean parameter Store_Comments, defaulted to False. | |
42117 | Set the scanner to return ends of line and comments as tokens, if | |
42118 | Store_Comments is True. | |
42119 | (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that | |
42120 | comments are associated with these nodes. Store the node IDs in the | |
42121 | With_Records. | |
42122 | (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the | |
42123 | With_Records. | |
42124 | (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating | |
42125 | the N_Project node. Call Tree.Save and Tree.Reset before scanning the | |
42126 | current project. Call Tree.Restore afterwards. Set the various nodes | |
42127 | for comment storage (Next_End, End_Of_Line, Previous_Line, | |
42128 | Previous_End). | |
42129 | ||
42130 | * prj-part.ads (Parse): New Boolean parameter Store_Comments, | |
42131 | defaulted to False. | |
42132 | ||
42133 | * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted | |
42134 | to False. When Truncated is True, truncate the string, never go to the | |
42135 | next line. | |
42136 | (Write_End_Of_Line_Comment): New procedure | |
42137 | (Print): Process comments for nodes N_With_Clause, | |
42138 | N_Package_Declaration, N_String_Type_Declaration, | |
42139 | N_Attribute_Declaration, N_Typed_Variable_Declaration, | |
42140 | N_Variable_Declaration, N_Case_Construction, N_Case_Item. | |
42141 | Process nodes N_Comment. | |
42142 | ||
42143 | * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node | |
42144 | without comments and there are some comments, set the flag | |
42145 | Unkept_Comments to True. | |
42146 | (Scan): If there are comments, set the flag Unkept_Comments to True and | |
42147 | clear the comments. | |
42148 | (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment | |
42149 | (Next_End_Nodes: New table | |
42150 | (Comment_Zones_Of): New function | |
42151 | (Scan): New procedure; moved from Prj. Accumulate comments in the | |
42152 | Comments table and set end of line comments, comments after, after end | |
42153 | and before end. | |
42154 | (Add_Comments): New procedure | |
42155 | (Save, Restore, Seset_State): New procedures | |
42156 | (There_Are_Unkept_Comments): New function | |
42157 | (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures | |
42158 | (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New | |
42159 | procedures. | |
42160 | (First_Comment_After, First_Comment_After_End): New functions | |
42161 | (First_Comment_Before, First_Comment_Before_End): New functions | |
42162 | (Next_Comment): New function | |
42163 | (End_Of_Line_Comment, Follows_Empty_Line, | |
42164 | Is_Followed_By_Empty_Line): New functions | |
42165 | (Set_First_Comment_After, Set_First_Comment_After_End): New procedures | |
42166 | (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures | |
42167 | (Set_Next_Comment): New procedure | |
42168 | (Default_Project_Node): Associate comment before if the node can store | |
42169 | comments. | |
42170 | ||
42171 | * scans.ads (Token_Type): New enumeration value Tok_Comment | |
42172 | (Comment_Id): New global variable | |
42173 | ||
42174 | * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable, | |
42175 | defaulted to False. | |
42176 | (Scan): Store position of start of comment. If comments are tokens, set | |
42177 | Comment_Id and set Token to Tok_Comment when scanning a comment. | |
42178 | (Set_Comment_As_Token): New procedure | |
42179 | ||
42180 | * sinput-p.adb: Update Copyright notice | |
42181 | (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan | |
42182 | that no longer exists. | |
42183 | ||
42184 | 2003-12-08 Javier Miranda <miranda@gnat.com> | |
42185 | ||
42186 | * sem_aggr.adb: Add dependence on Exp_Tss package | |
42187 | Correct typo in comment | |
42188 | (Resolve_Aggregate): In case of array aggregates set the estimated | |
42189 | type of the aggregate before calling resolve. This is needed to know | |
42190 | the name of the corresponding IP in case of limited array aggregates. | |
42191 | (Resolve_Array_Aggregate): Delay the resolution to the expansion phase | |
42192 | in case of default initialized array components. | |
42193 | ||
42194 | * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited | |
42195 | types. Required to give support to limited aggregates in generic | |
42196 | formals. | |
42197 | ||
42198 | 2003-12-08 Ed Schonberg <schonberg@gnat.com> | |
42199 | ||
42200 | * sem_ch3.adb (Check_Initialization): For legality purposes, an | |
42201 | inlined body functions like an instantiation. | |
42202 | (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype | |
42203 | until bounds are analyzed, to diagnose premature use of type. | |
42204 | ||
42205 | * sem_util.adb (Wrong_Type): Improve error message when the type of | |
42206 | the expression is used prematurely. | |
42207 | ||
42208 | 2003-12-08 GNAT Script <nobody@gnat.com> | |
42209 | ||
42210 | * Make-lang.in: Makefile automatically updated | |
42211 | ||
0875a894 AC |
42212 | 2003-12-08 Arnaud Charlet <charlet@act-europe.fr> |
42213 | ||
7618d510 AC |
42214 | * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since |
42215 | they are automatically generated by Make-lang.in and cause nothing but | |
0875a894 AC |
42216 | maintenance troubles. |
42217 | ||
5b4994bc AC |
42218 | 2003-12-05 Thomas Quinot <quinot@act-europe.fr> |
42219 | ||
42220 | * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare, | |
42221 | version of this unit). | |
42222 | ||
42223 | 2003-12-05 Olivier Hainque <hainque@act-europe.fr> | |
42224 | ||
42225 | * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads, | |
42226 | 5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads, | |
42227 | 5tosinte.ads: Define the SA_SIGINFO constant, to allow references from | |
42228 | the body of System.Interrupt_Management common to several targets. | |
42229 | Update copyright notice when appropriate. | |
42230 | ||
42231 | * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO | |
42232 | constant. | |
42233 | ||
42234 | * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags, | |
42235 | to ensure that the kernel fills in the interrupted context structure | |
42236 | before calling a signal handler, which is necessary to be able to | |
42237 | unwind past it. Update the copyright notice. | |
42238 | ||
42239 | 2003-12-05 Jerome Guitton <guitton@act-europe.fr> | |
42240 | ||
42241 | * a-elchha.ads: New file. | |
42242 | ||
42243 | * a-elchha.adb: New default last chance handler. Contents taken from | |
42244 | Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate. | |
42245 | ||
42246 | * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine | |
42247 | is moved to a-elchha.adb to provide a target-independent default last | |
42248 | chance handler. | |
42249 | ||
42250 | * Makefile.rtl: Add a-elchha.o | |
42251 | ||
42252 | * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o. | |
42253 | ||
42254 | 2003-12-05 Ed Schonberg <schonberg@gnat.com> | |
42255 | ||
42256 | * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is | |
42257 | declared in an instance, do not inline the call if the instance is not | |
42258 | frozen yet, to prevent order of elaboration problems. | |
42259 | ||
42260 | * sem_prag.adb: Add comments for previous fix. | |
42261 | ||
42262 | 2003-12-05 Samuel Tardieu <tardieu@act-europe.fr> | |
42263 | ||
42264 | * g-table.adb: Use the right variable in Set_Item. | |
42265 | Update copyright notice. | |
42266 | ||
42267 | 2003-12-05 Arnaud Charlet <charlet@act-europe.fr> | |
42268 | ||
42269 | * Makefile.in: Remove unused rules. | |
42270 | ||
42271 | 2003-12-05 Vincent Celier <celier@gnat.com> | |
42272 | ||
42273 | * switch-c.adb (Scan_Front_End_Switches): Remove processing of | |
42274 | -nostdlib. Not needed here after all. | |
42275 | ||
efdfd311 AC |
42276 | 2003-12-03 Thomas Quinot <quinot@act-europe.fr> |
42277 | ||
42278 | PR ada/11724 | |
fbf3e0dd | 42279 | * adaint.h, adaint.c, g-os_lib.ads: |
efdfd311 AC |
42280 | Do not assume that the offset argument to lseek(2) is a 32 bit integer, |
42281 | on some platforms (including FreeBSD), it is a 64 bit value. | |
42282 | Introduce a __gnat_lseek wrapper in adaint.c to allow for portability. | |
42283 | ||
42284 | 2003-12-03 Arnaud Charlet <charlet@act-europe.fr> | |
42285 | ||
42286 | * gnatvsn.ads (Library_Version): Now contain only the relevant | |
42287 | version info. | |
42288 | (Verbose_Library_Version): New constant. | |
42289 | ||
42290 | * g-spipat.adb, g-awk.adb, g-debpoo.adb, | |
42291 | g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb, | |
42292 | s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa. | |
42293 | ||
42294 | * gnatlbr.adb: Clean up: replace Library_Version by | |
42295 | Verbose_Library_Version. | |
42296 | ||
fbf3e0dd | 42297 | * make.adb, lib-writ.adb, exp_attr.adb: |
efdfd311 AC |
42298 | Clean up: replace Library_Version by Verbose_Library_Version. |
42299 | ||
42300 | * 5lintman.adb: Removed. | |
42301 | ||
fbf3e0dd | 42302 | * Makefile.in: |
efdfd311 AC |
42303 | Update and simplify computation of LIBRARY_VERSION. |
42304 | Fix computation of GSMATCH_VERSION. | |
42305 | 5lintman.adb is no longer used: replaced by 7sintman.adb. | |
42306 | ||
42307 | 2003-12-03 Robert Dewar <dewar@gnat.com> | |
42308 | ||
fbf3e0dd | 42309 | * exp_ch5.adb: |
efdfd311 AC |
42310 | (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new |
42311 | name. Modified to consider small non-bit-packed arrays as troublesome | |
42312 | and in need of component-by-component assigment expansion. | |
42313 | ||
42314 | 2003-12-03 Vincent Celier <celier@gnat.com> | |
42315 | ||
42316 | * lang-specs.h: Process nostdlib as nostdinc | |
42317 | ||
42318 | * back_end.adb: Update Copyright notice | |
42319 | (Scan_Compiler_Arguments): Process -nostdlib directly. | |
42320 | ||
42321 | 2003-12-03 Jose Ruiz <ruiz@act-europe.fr> | |
42322 | ||
fbf3e0dd | 42323 | * Makefile.in: |
efdfd311 AC |
42324 | When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the |
42325 | redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always | |
42326 | included in HIE_NONE_TARGET_PAIRS. | |
42327 | ||
42328 | 2003-12-03 Ed Schonberg <schonberg@gnat.com> | |
42329 | ||
fbf3e0dd | 42330 | * sem_attr.adb: |
efdfd311 AC |
42331 | (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it |
42332 | is legal in an instance, because legality is cheched in the template. | |
42333 | ||
fbf3e0dd | 42334 | * sem_prag.adb: |
efdfd311 AC |
42335 | (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be |
42336 | appplied to an unchecked conversion of a formal parameter. | |
42337 | ||
fbf3e0dd | 42338 | * sem_warn.adb: |
efdfd311 AC |
42339 | (Output_Unreferenced_Messages): Suppress "not read" warnings on imported |
42340 | variables. | |
42341 | ||
42342 | 2003-12-03 Olivier Hainque <hainque@act-europe.fr> | |
42343 | ||
42344 | * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New | |
42345 | routines. The second one is new functionality to deal with backtracing | |
42346 | through signal handlers. | |
42347 | (unwind): Split into the two separate subroutines above. | |
42348 | Update the documentation, and deal properly with sizeof (REG) different | |
42349 | from sizeof (void*). | |
42350 | ||
08aa9a4a AC |
42351 | 2003-12-01 Nicolas Setton <setton@act-europe.fr> |
42352 | ||
42353 | * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point, | |
42354 | so that the debugger can reliably access the value of the parameter, | |
42355 | and therefore is able to display the exception name when an exception | |
42356 | breakpoint is reached. | |
42357 | ||
42358 | 2003-12-01 Thomas Quinot <quinot@act-europe.fr> | |
42359 | ||
42360 | * fmap.adb: Fix typo in warning message. | |
42361 | ||
42362 | * g-socket.ads, g-socket.adb: Make Free a visible instance of | |
42363 | Ada.Unchecked_Deallocation (no need to wrap it in a subprogram). | |
42364 | ||
42365 | 2003-12-01 Vincent Celier <celier@gnat.com> | |
42366 | ||
42367 | * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if | |
42368 | ther is no Afile. | |
42369 | (Build_Library): Get the switches only if Default_Switches is declared | |
42370 | in package Binder. | |
42371 | ||
42372 | 2003-12-01 Ed Schonberg <schonberg@gnat.com> | |
42373 | ||
42374 | * exp_ch6.adb (Expand_Actuals): When applying validity checks to | |
42375 | actuals that are indexed components, reanalyze actual to ensure that | |
42376 | packed array references are properly expanded. | |
42377 | ||
42378 | * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for | |
42379 | attempted assignment to a discriminant. | |
42380 | ||
42381 | 2003-12-01 Robert Dewar <dewar@gnat.com> | |
42382 | ||
42383 | * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor | |
42384 | reformatting. | |
42385 | ||
42386 | * switch-c.adb: Minor reformatting of comments | |
42387 | ||
42388 | 2003-12-01 Arnaud Charlet <charlet@act-europe.fr> | |
42389 | ||
42390 | * Makefile.in: Clean ups. | |
42391 | ||
42392 | 2003-12-01 GNAT Script <nobody@gnat.com> | |
42393 | ||
42394 | * Make-lang.in: Makefile automatically updated | |
42395 | ||
c6135994 AC |
42396 | 2003-12-01 Arnaud Charlet <charlet@act-europe.fr> |
42397 | ||
42398 | * 5wsystem.ads: Disable zero cost exception, not ready yet. | |
42399 | ||
51a30506 UW |
42400 | 2003-11-29 Ulrich Weigand <uweigand@de.ibm.com> |
42401 | ||
42402 | * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb | |
42403 | to force serialization. | |
42404 | ||
81a5b587 AC |
42405 | 2003-11-26 Thomas Quinot <quinot@act-europe.fr> |
42406 | ||
fbf3e0dd | 42407 | * g-socket.ads, g-socket.adb: |
81a5b587 AC |
42408 | Clarify documentation of function Stream. Introduce a Free procedure |
42409 | to release the returned Stream once it becomes unused. | |
42410 | ||
42411 | * 5asystem.ads: For Alpha Tru64, enable ZCX by default. | |
42412 | ||
42413 | 2003-11-26 Arnaud Charlet <charlet@act-europe.fr> | |
42414 | ||
42415 | (Cond_Timed_Wait): Introduce new constant Time_Out_Max, | |
42416 | since NT 4 cannot handle timeout values that are too large, | |
42417 | e.g. DWORD'Last - 1. | |
42418 | ||
42419 | 2003-11-26 Ed Schonberg <schonberg@gnat.com> | |
42420 | ||
fbf3e0dd | 42421 | * exp_ch4.adb: |
81a5b587 AC |
42422 | (Expand_N_Slice): Recognize all cases of slices that appear as actuals |
42423 | in procedure calls and whose expansion must be deferred. | |
42424 | ||
42425 | * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix | |
42426 | is in exp_ch4. | |
42427 | ||
fbf3e0dd | 42428 | * sem_ch3.adb: |
81a5b587 AC |
42429 | (Build_Derived_Array_Type): Create operator for unconstrained type |
42430 | if ancestor is unconstrained. | |
42431 | ||
42432 | 2003-11-26 Vincent Celier <celier@gnat.com> | |
42433 | ||
42434 | * make.adb (Project_Object_Directory): New global variable | |
42435 | (Change_To_Object_Directory): New procedure | |
42436 | (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead | |
42437 | of Change_Dir directly. Do not change working directory to object | |
42438 | directory of main project after each compilation. | |
42439 | (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir | |
42440 | directly. | |
42441 | Change to object directory of main project before binding step. | |
42442 | (Initialize): Initialize Project_Object_Directory to No_Project | |
42443 | ||
fbf3e0dd | 42444 | * mlib-prj.adb: |
81a5b587 AC |
42445 | (Build_Library): Take into account Builder'Default_Switches ("Ada") when |
42446 | binding a Stand-Alone Library. | |
42447 | ||
42448 | * output.adb: Update Copyright notice | |
42449 | (Write_Char): Output buffer when full | |
42450 | ||
42451 | 2003-11-26 Robert Dewar <dewar@gnat.com> | |
42452 | ||
42453 | * sem_ch13.adb: (Check_Size): Reset size if size is too small | |
42454 | ||
fbf3e0dd | 42455 | * sem_ch13.ads: |
81a5b587 AC |
42456 | (Check_Size): Fix documentation to include bit-packed array case |
42457 | ||
42458 | * sem_res.adb: Implement restriction No_Direct_Boolean_Operators | |
42459 | ||
42460 | * s-rident.ads: Put No_Direct_Boolean_Operators in proper order | |
42461 | ||
42462 | * s-rident.ads: Add new restriction No_Direct_Boolean_Operators | |
42463 | ||
9e94c78f | 42464 | 2003-11-24 Arnaud Charlet <charlet@act-europe.fr> |
d4c47b51 AC |
42465 | |
42466 | PR ada/13142 | |
42467 | * utils.c (init_gigi_decls): Change name of built-in setjmp to | |
42468 | __builtin_setjmp, since this is apparently needed by recent | |
42469 | non Ada changes. | |
42470 | ||
7677e9e0 RO |
42471 | 2003-11-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
42472 | ||
d4c47b51 | 42473 | * adadecode.c: Only include ctype.h if not IN_GCC. |
7677e9e0 RO |
42474 | (__gnat_decode): Use ISDIGIT from safe-ctype.h. |
42475 | ||
6c1e24d3 AC |
42476 | 2003-11-24 Jose Ruiz <ruiz@act-europe.fr> |
42477 | ||
fbf3e0dd | 42478 | * Makefile.in: |
6c1e24d3 AC |
42479 | Use 5zintman.ads for VxWorks targets. This file avoid confusion between |
42480 | signals and interrupts. | |
42481 | ||
42482 | * 5zintman.ads: New File. | |
42483 | ||
42484 | * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and | |
42485 | add exception signals to the set of unmasked signals. | |
42486 | ||
fbf3e0dd | 42487 | * 5ztaprop.adb: |
6c1e24d3 AC |
42488 | Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion |
42489 | between signals and interrupts. | |
42490 | Add to Unblocked_Signal_Mask the set of signals that are in | |
42491 | Keep_Unmasked. | |
42492 | ||
fbf3e0dd | 42493 | * 7sinmaop.adb: |
6c1e24d3 AC |
42494 | Adding a check to see whether the Interrupt_ID we want to unmask is in |
42495 | the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The | |
42496 | reason is that the index type of the Keep_Unmasked array is not always | |
42497 | Interrupt_ID; it may be a subtype of Interrupt_ID. | |
42498 | ||
42499 | 2003-11-24 Gary Dismukes <dismukes@gnat.com> | |
42500 | ||
fbf3e0dd | 42501 | * exp_util.adb: |
6c1e24d3 AC |
42502 | (Remove_Side_Effects): Condition constantness of object created for a |
42503 | an unchecked type conversion on the constantness of the expression | |
42504 | to ensure the correct value for 'Constrained when passing components | |
42505 | of view-converted class-wide objects. | |
42506 | ||
42507 | 2003-11-24 Robert Dewar <dewar@gnat.com> | |
42508 | ||
42509 | * par-load.adb (Load): Improve handling of misspelled and missing units | |
42510 | Removes several cases of compilation abandoned messages | |
42511 | ||
42512 | * lib.adb: (Remove_Unit): New procedure | |
42513 | ||
42514 | * lib.ads: (Remove_Unit): New procedure | |
42515 | ||
42516 | * lib-load.adb: Minor reformatting | |
42517 | ||
42518 | 2003-11-24 Vincent Celier <celier@gnat.com> | |
42519 | ||
fbf3e0dd | 42520 | * make.adb: |
6c1e24d3 AC |
42521 | (Gnatmake, Initialize): Call Usage instead of Makeusg directly |
42522 | (Marking_Label): Label to mark processed source files. Incremented for | |
42523 | each executable. | |
42524 | (Gnatmake): Increase Marking_Labet for each executable | |
42525 | (Is_Marked): Compare against marking label | |
42526 | (Mark): Mark with marking label | |
42527 | ||
42528 | 2003-11-24 Jerome Guitton <guitton@act-europe.fr> | |
42529 | ||
fbf3e0dd | 42530 | * s-thread.ads: |
6c1e24d3 AC |
42531 | Move the declaration of the TSD for System.Threads to System.Soft_Links. |
42532 | Add some comments. | |
42533 | ||
42534 | * Makefile.in: Added target pair for s-thread.adb for cert runtime. | |
42535 | (rts-cert): build a single relocatable object for the run-time lib. | |
42536 | Fix perms. | |
42537 | ||
42538 | 2003-11-24 Vasiliy Fofanov <fofanov@act-europe.fr> | |
42539 | ||
fbf3e0dd | 42540 | * Make-lang.in: |
6c1e24d3 AC |
42541 | Use gnatls rather than gcc to obtain the location of GNAT RTL for |
42542 | crosstools build. | |
42543 | ||
42544 | 2003-11-24 Sergey Rybin <rybin@act-europe.fr> | |
42545 | ||
42546 | * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we | |
42547 | can not use it as before (that is, as a variable) when dumping it into | |
42548 | the tree file. Add a local variable to store the result of this | |
42549 | function and to be used as the string to be written into the tree. | |
42550 | ||
42551 | * scn.adb (Initialize_Scanner): Add comments explaining the recent | |
42552 | changes. | |
42553 | ||
42554 | * sinput.adb (Source_First, Source_Last): In case of | |
42555 | Internal_Source_File, replace returning attributes of | |
42556 | Internal_Source_Ptr (which is wrong) with returning attributes of | |
42557 | Internal_Source. | |
42558 | ||
42559 | 2003-11-24 Ed Schonberg <schonberg@gnat.com> | |
42560 | ||
fbf3e0dd | 42561 | * sem_ch3.adb: |
6c1e24d3 AC |
42562 | (New_Concatenation_Op): Proper name for New_Binary_Operator, only |
42563 | used for implicit concatenation operators. | |
42564 | Code cleanup. | |
42565 | ||
fbf3e0dd | 42566 | * sem_elab.adb: |
6c1e24d3 AC |
42567 | (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in |
42568 | task bodies that are in the scope of a Suppress pragma. | |
42569 | (Check_A Call): Use the flag to prevent spurious elaboration checks. | |
42570 | ||
fbf3e0dd | 42571 | * sinfo.ads, sinfo.adb: |
6c1e24d3 AC |
42572 | New flag No_Elaboration_Check on function/procedure calls, to properly |
42573 | suppress checks on calls in task bodies that are within a local suppress | |
42574 | pragma. | |
42575 | ||
fbf3e0dd | 42576 | * exp_ch4.adb: |
6c1e24d3 AC |
42577 | (Expand_Concatenate_Other): Use the proper integer type for the |
42578 | expression for the upper bound, to avoid universal_integer computations | |
42579 | when possible. | |
42580 | ||
6f2aeb72 KC |
42581 | 2003-11-21 Kelley Cook <kcook@gcc.gnu.org> |
42582 | ||
42583 | * .cvsignore: Delete. | |
42584 | ||
e9f85cd6 AS |
42585 | 2003-11-21 Andreas Schwab <schwab@suse.de> |
42586 | ||
42587 | * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True. | |
42588 | ||
4e074baf VF |
42589 | 2003-11-21 Vasiliy Fofanov <fofanov@act-europe.fr> |
42590 | ||
42591 | * 5wsystem.ads: Enable zero cost exception. | |
42592 | ||
f1f9fe30 AC |
42593 | 2003-11-21 Jerome Guitton <guitton@act-europe.fr> |
42594 | ||
42595 | * 5ztiitho.adb: Remove an unreferenced variable. | |
42596 | ||
42597 | 2003-11-21 Thomas Quinot <quinot@act-europe.fr> | |
42598 | ||
42599 | * adaint.c: For FreeBSD, use mkstemp. | |
42600 | ||
42601 | 2003-11-21 Arnaud Charlet <charlet@act-europe.fr> | |
42602 | ||
42603 | * gnatlbr.adb: Now reference Gnat_Static_Version_String. | |
42604 | ||
42605 | 2003-11-21 Robert Dewar <dewar@gnat.com> | |
42606 | ||
42607 | * bld.adb: Remove useless USE of gnatvsn | |
42608 | ||
42609 | * gnatchop.adb: Minor reformatting | |
42610 | Clean up version handling to be more consistent | |
42611 | ||
42612 | * gnatxref.adb: Minor reformatting | |
42613 | ||
42614 | * gprcmd.adb: Minor reformatting | |
42615 | Fix output of copyright to be more consistent with other tools | |
42616 | ||
42617 | 2003-11-21 Vincent Celier <celier@gnat.com> | |
42618 | ||
42619 | * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink | |
42620 | ||
42621 | 2003-11-21 Sergey Rybin <rybin@act-europe.fr> | |
42622 | ||
42623 | * atree.adb (Initialize): Add initializations for global variables | |
42624 | used in New_Copy_Tree. | |
42625 | ||
42626 | * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with | |
42627 | Internal_Source_File as the actual). | |
42628 | Put the set of statements creating Any_Character before the set of | |
42629 | statements creating Any_Array to have Any_Character fully initialized | |
42630 | when it is used in creating Any_Array. | |
42631 | ||
42632 | * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do | |
42633 | not call Scan in case if the actual is Internal_Source_File | |
42634 | Add 2003 to copyright note. | |
42635 | ||
42636 | * sinput.adb (Source_First, Source_Last, Source_Text): Add code for | |
42637 | processing Internal_Source_File. | |
42638 | ||
42639 | * types.ads: Add the constant Internal_Source_File representing the | |
42640 | source buffer for artificial source-code-like strings created within | |
42641 | the compiler (the definition of Source_File_Index is changed). | |
42642 | ||
c5b2a8ae AC |
42643 | 2003-11-20 Arnaud Charlet <charlet@act-europe.fr> |
42644 | ||
42645 | * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads, | |
42646 | 56system.ads: New file, FreeBSD version. | |
42647 | ||
a03ad584 JM |
42648 | 2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk> |
42649 | ||
42650 | * Make-lang.in (ada.extraclean): Delete. | |
42651 | ||
19f0526a AC |
42652 | 2003-11-19 Arnaud Charlet <charlet@act-europe.fr> |
42653 | ||
42654 | * gnatmem.adb: Clean up verbose output. | |
42655 | ||
42656 | * gprcmd.adb: Change copyright to FSF. | |
42657 | ||
42658 | 2003-11-19 Vincent Celier <celier@gnat.com> | |
42659 | ||
42660 | * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy | |
42661 | and Version (ignored). | |
42662 | ||
42663 | * symbols.ads: (Policy): New type | |
42664 | (Initialize): New parameter Reference, Symbol_Policy and | |
42665 | Library_Version. | |
42666 | Remove parameter Force. | |
42667 | Minor reformatting. | |
42668 | ||
42669 | * snames.ads, snames.adbadb: New standard names | |
42670 | Library_Reference_Symbol_File and Library_Symbol_Policy | |
42671 | ||
fbf3e0dd | 42672 | * mlib-prj.adb: |
19f0526a AC |
42673 | (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the |
42674 | project. | |
42675 | ||
fbf3e0dd | 42676 | * mlib-tgt.adb: |
19f0526a AC |
42677 | (Build_Dynamic_Library): New parameter Symbol_Data (ignored) |
42678 | ||
42679 | * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data | |
42680 | ||
42681 | * prj.adb: (Project_Empty): New component Symbol_Data | |
42682 | ||
42683 | * prj.ads: (Policy, Symbol_Record): New types | |
42684 | (Project_Data): New component Symbol_Data | |
42685 | ||
fbf3e0dd | 42686 | * prj-attr.adb: |
19f0526a AC |
42687 | New attributes Library_Symbol_File, Library_Symbol_Policy and |
42688 | Library_Reference_Symbol_File. | |
42689 | ||
fbf3e0dd | 42690 | * prj-nmsc.adb: |
19f0526a AC |
42691 | (Ada_Check): When project is a Stand-Alone library project, process |
42692 | attribute Library_Symbol_File, Library_Symbol_Policy and | |
42693 | Library_Reference_Symbol_File. | |
42694 | ||
42695 | * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, | |
42696 | 5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb, | |
42697 | 5sml-tgt.adb (Build_Dynamic_Library): New parameter | |
42698 | Symbol_Data (ignored). | |
42699 | ||
42700 | * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0 | |
42701 | (Build_Dynamic_Library): New parameter Symbol_Data. New internal | |
42702 | functions Option_File_Name and Version_String. Set new options of | |
42703 | gnatsym related to symbol file, symbol policy and reference symbol | |
42704 | file. | |
42705 | ||
fbf3e0dd | 42706 | * 5vsymbol.adb: |
19f0526a AC |
42707 | Extensive modifications to take into account the reference symbol file, |
42708 | the symbol policy, the library version and to put in the symbol file the | |
42709 | minor and major IDs. | |
42710 | ||
42711 | * bld.adb (Process_Declarative_Items): Put second argument of | |
42712 | gprcmd to_absolute between single quotes, to avoid problems with | |
42713 | Windows. | |
42714 | ||
42715 | * bld-io.adb: Update Copyright notice. | |
42716 | (Flush): Remove last character of a line, if it is a back slash, to | |
42717 | avoid make problems. | |
42718 | ||
fbf3e0dd | 42719 | * gnatsym.adb: |
19f0526a AC |
42720 | Implement new scheme with reference symbol file and symbol policy. |
42721 | ||
42722 | * g-os_lib.ads: (Is_Directory): Clarify comment | |
42723 | ||
42724 | 2003-11-19 Robert Dewar <dewar@gnat.com> | |
42725 | ||
42726 | * atree.adb: Move New_Copy_Tree global variables to head of package | |
42727 | ||
42728 | * errout.adb: Minor reformatting | |
42729 | ||
42730 | 2003-11-19 Javier Miranda <miranda@gnat.com> | |
42731 | ||
42732 | * sem_ch4.adb: (Diagnose_Call): Improve error message. | |
42733 | Add reference to Ada0Y (AI-50217) | |
42734 | ||
42735 | * sem_ch6.adb, sem_ch8.adb, sem_type.adb, | |
42736 | sem_util.adb: Add reference to AI-50217 | |
42737 | ||
42738 | * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217 | |
42739 | ||
42740 | * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287) | |
42741 | ||
42742 | * sem_aggr.adb: Complete documentation of AI-287 changes | |
42743 | ||
42744 | * par-ch4.adb: Document previous changes. | |
42745 | ||
42746 | * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb, | |
42747 | sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to | |
42748 | Ada0Y (AI-50217) | |
42749 | ||
42750 | * exp_aggr.adb: Add references to AI-287 in previous changes | |
42751 | ||
42752 | 2003-11-19 Ed Schonberg <schonberg@gnat.com> | |
42753 | ||
fbf3e0dd | 42754 | * exp_ch6.adb: |
19f0526a AC |
42755 | (Add_Call_By_Copy_Node): Do not original node of rewritten expression |
42756 | in the rewriting is the result of an inlined call. | |
42757 | ||
42758 | * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out | |
42759 | parameter is a type conversion, use original node to construct the | |
42760 | post-call assignment, because expression may have been rewritten, e.g. | |
42761 | if it is a packed array. | |
42762 | ||
fbf3e0dd | 42763 | * sem_attr.adb: |
19f0526a AC |
42764 | (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined |
42765 | body, just as it is in an instance. | |
42766 | Categorization routines | |
42767 | ||
42768 | * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram, | |
42769 | Instantiate_Object): Set proper sloc reference for message on missing | |
42770 | actual. | |
42771 | ||
42772 | 2003-11-19 Thomas Quinot <quinot@act-europe.fr> | |
42773 | ||
42774 | * Makefile.in: Add FreeBSD libgnat pairs. | |
42775 | ||
42776 | * usage.adb: Fix typo in usage message. | |
42777 | ||
42778 | 2003-11-19 Jerome Guitton <guitton@act-europe.fr> | |
42779 | ||
42780 | * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?, | |
42781 | s-thrini.ad? and s-tiitho.adb to the full runtime, to support the | |
42782 | pragma Thread_Body. | |
42783 | Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore. | |
42784 | ||
42785 | * s-thread.adb: This file is now a dummy implementation of | |
42786 | System.Thread. | |
42787 | ||
42788 | 2003-11-19 Sergey Rybin <rybin@act-europe.fr> | |
42789 | ||
42790 | * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available | |
42791 | ||
42792 | 2003-11-19 Emmanuel Briot <briot@act-europe.fr> | |
42793 | ||
42794 | * xref_lib.adb (Parse_Identifier_Info): Add handling of generic | |
42795 | instanciation references in the parent type description. | |
42796 | ||
0d77ab84 AC |
42797 | 2003-11-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
42798 | ||
42799 | * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s". | |
42800 | ||
42801 | * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set | |
42802 | TYPE_PRECISION directly from esize. | |
42803 | ||
42804 | 2003-11-18 Thomas Quinot <quinot@act-europe.fr> | |
42805 | ||
fbf3e0dd | 42806 | * cstreams.c: |
0d77ab84 AC |
42807 | Use realpath(3) on FreeBSD. Fix typo in comment while we are at it. |
42808 | ||
42809 | * init.c: Initialization routines for FreeBSD | |
42810 | ||
42811 | * link.c: Link info for FreeBSD | |
42812 | ||
42813 | * sysdep.c: Add the case of FreeBSD | |
42814 | ||
cb7a5092 AC |
42815 | 2003-11-17 Jerome Guitton <guitton@act-europe.fr> |
42816 | ||
42817 | * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is | |
42818 | already called in System.Threads. | |
42819 | ||
42820 | * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the | |
42821 | environment task, as it has been moved to System.Threads.Initialization. | |
42822 | ||
42823 | 2003-11-17 Arnaud Charlet <charlet@act-europe.fr> | |
42824 | ||
42825 | * adaint.c (__gnatlib_install_locks): Only reference | |
42826 | __gnat_install_locks on VMS, since other platforms can avoid using | |
42827 | --enable-threads=gnat | |
42828 | ||
42829 | 2003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
42830 | ||
42831 | * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro. | |
42832 | ||
42833 | * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set | |
42834 | TYPE_PACKED_ARRAY_TYPE_P. | |
42835 | (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P. | |
42836 | ||
42837 | Part of PR ada/12806 | |
42838 | * utils.c (float_type_for_precision): Renamed from float_type_for_size. | |
42839 | Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE. | |
42840 | ||
42841 | 2003-11-17 Vincent Celier <celier@gnat.com> | |
42842 | ||
42843 | * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted | |
42844 | to False. | |
42845 | Do not set exit status to Failure when Warning is True. | |
42846 | (Gnatchop): Make errors "no compilation units found" and | |
42847 | "no source files written" warnings only. | |
42848 | ||
42849 | * make.adb (Gnatmake): When using a project file, set | |
42850 | Look_In_Primary_Dir to False. | |
42851 | (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas | |
42852 | and Local_Configuration_Pragmas in the project where they are declared | |
42853 | not an extending project which might have inherited them. | |
42854 | ||
42855 | * osint.adb (Locate_File): If Name is already an absolute path, do not | |
42856 | look for a directory. | |
42857 | ||
42858 | * par-ch10.adb (P_Compilation_Unit): If source contains no token, and | |
42859 | -gnats (Check_Syntax) is used, issue only a warning, not an error. | |
42860 | ||
42861 | * prj.adb (Register_Default_Naming_Scheme): Add new component Project | |
42862 | in objects of type Variable_Value. | |
42863 | ||
42864 | * prj.ads: (Variable_Value): New component Project | |
42865 | ||
42866 | * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source | |
42867 | is in a project extended by Project. | |
42868 | ||
42869 | * prj-proc.adb (Add_Attributes): New parameter Project. Set component | |
42870 | Project of Variable_Values to this new parameter value. | |
42871 | (Expression): Set component Project of Variable_Values. | |
42872 | (Process_Declarative_Items): Call Add_Attributes with parameter Project. | |
42873 | Set the component Project in array elements. | |
42874 | ||
42875 | 2003-11-17 Sergey Rybin <rybin@act-europe.fr> | |
42876 | ||
42877 | * errout.adb: (Initialize): Add initialization for error nodes. | |
42878 | ||
42879 | * sem_ch12.adb (Initialize): Add missing initializations for | |
42880 | Exchanged_Views and Hidden_Entities. | |
42881 | ||
42882 | 2003-11-17 Ed Schonberg <schonberg@gnat.com> | |
42883 | ||
42884 | * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an | |
42885 | already instantiated tree for use in subsequent inlining. | |
42886 | (Analyze_Associations, Instantiate_Formal_Subprogram, | |
42887 | Instantiate_Object): improve error message for mismatch in | |
42888 | instantiations. | |
42889 | ||
42890 | * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle | |
42891 | instantiations of subprograms declared in instances. | |
42892 | ||
42893 | 2003-11-17 Javier Miranda <miranda@gnat.com> | |
42894 | ||
42895 | * sem_ch4.adb (Analyze_Allocator): Previous modification must be | |
42896 | executed only under the Extensions_Allowed flag. | |
42897 | ||
42898 | 2003-11-17 Robert Dewar <dewar@gnat.com> | |
42899 | ||
42900 | * a-exexda.adb (Address_Image): Fix documentation to indicate leading | |
42901 | zeroes suppressed. | |
42902 | (Address_Image): Fix bug of returning 0x instead of 0x0 | |
42903 | Minor reformatting (function specs). | |
42904 | ||
42905 | * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array | |
42906 | (missed case of 33-63) | |
42907 | ||
42908 | * freeze.adb, sem_ch13.adb: Properly check size of packed bit array | |
42909 | ||
42910 | * s-thread.adb: Add comments for pragma Restriction | |
42911 | ||
42912 | * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb, | |
42913 | sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting | |
42914 | ||
42915 | 2003-11-17 Ed Falis <falis@gnat.com> | |
42916 | ||
42917 | * s-thread.adb: Added No_Tasking restriction for this implementation. | |
42918 | ||
42919 | 2003-11-17 Emmanuel Briot <briot@act-europe.fr> | |
42920 | ||
42921 | * xref_lib.adb (Parse_Identifier_Info): Add handling of generic | |
42922 | instanciation references in the parent type description. | |
42923 | ||
42924 | 2003-11-17 GNAT Script <nobody@gnat.com> | |
42925 | ||
42926 | * Make-lang.in: Makefile automatically updated | |
42927 | ||
7d60db05 JM |
42928 | 2003-11-16 Jason Merrill <jason@redhat.com> |
42929 | ||
42930 | * Make-lang.in (ada.tags): Create TAGS.sub files in each directory | |
42931 | and TAGS files that include them for each front end. | |
42932 | ||
c0040397 AJ |
42933 | 2003-11-14 Andreas Jaeger <aj@suse.de> |
42934 | ||
a477ab83 | 42935 | * lang.opt: Change -Wno-long-long to -Wlong-long since the latter |
fbf3e0dd | 42936 | is the canonical version. |
a477ab83 AJ |
42937 | * misc.c (gnat_handle_option): Likewise. |
42938 | ||
c0040397 AJ |
42939 | * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux. |
42940 | ||
42941 | * 5nsystem.ads: New file for x86_64-linux-gnu. | |
42942 | ||
95a6aaf9 AC |
42943 | 2003-11-14 Arnaud Charlet <charlet@act-europe.fr> |
42944 | ||
262cc585 | 42945 | * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated. |
95a6aaf9 | 42946 | |
4a4fe537 AC |
42947 | * comperr.adb: Fix logic in previous change. |
42948 | ||
65356e64 AC |
42949 | 2003-11-13 Vincent Celier <celier@gnat.com> |
42950 | ||
42951 | * 5bml-tgt.adb (Build_Dynamic_Library): Use | |
42952 | Osint.Include_Dir_Default_Prefix instead of | |
42953 | Sdefault.Include_Dir_Default_Name. | |
42954 | ||
42955 | * gnatlbr.adb: Update Copyright notice | |
42956 | (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of | |
42957 | Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix | |
42958 | instead of Sdefault.Object_Dir_Default_Name | |
42959 | ||
c0040397 | 42960 | * gnatlink.adb: |
65356e64 AC |
42961 | (Process_Binder_File): Never suppress the option following -Xlinker |
42962 | ||
c0040397 | 42963 | * mdll-utl.adb: |
65356e64 AC |
42964 | (Gcc): Use Osint.Object_Dir_Default_Prefix instead of |
42965 | Sdefault.Object_Dir_Default_Name. | |
42966 | ||
c0040397 | 42967 | * osint.ads, osint.adb: |
65356e64 AC |
42968 | (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions |
42969 | Minor reformatting. | |
42970 | ||
42971 | * vms_conv.ads: Minor reformating | |
42972 | Remove GNAT STANDARD and GNAT PSTA | |
42973 | ||
c0040397 | 42974 | * vms_conv.adb: |
65356e64 AC |
42975 | Allow GNAT MAKE to have several files on the command line. |
42976 | (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of | |
42977 | Sdefault.Object_Dir_Default_Name. | |
42978 | Minor Reformating | |
42979 | Remove data for GNAT STANDARD | |
42980 | ||
c0040397 | 42981 | * vms_data.ads: |
65356e64 AC |
42982 | Add new compiler qualifier /PRINT_STANDARD (-gnatS) |
42983 | Remove data for GNAT STANDARD | |
42984 | Remove options and documentation for -gnatwb/-gnatwB: these warning | |
42985 | options no longer exist. | |
42986 | ||
42987 | 2003-11-13 Ed Falis <falis@gnat.com> | |
42988 | ||
42989 | * 5zthrini.adb: (Init_RTS): Made visible | |
42990 | ||
c0040397 | 42991 | * 5zthrini.adb: |
65356e64 AC |
42992 | (Register): Removed unnecessary call to taskVarGet that checked whether |
42993 | an ATSD was already set as a task var for the argument thread. | |
42994 | ||
c0040397 | 42995 | * s-thread.adb: |
65356e64 AC |
42996 | Updated comment to reflect that this is a VxWorks version |
42997 | Added context clause for System.Threads.Initialization | |
42998 | Added call to System.Threads.Initialization.Init_RTS | |
42999 | ||
43000 | 2003-11-13 Jerome Guitton <guitton@act-europe.fr> | |
43001 | ||
c0040397 | 43002 | * 5zthrini.adb: |
65356e64 AC |
43003 | (Init_RTS): New procedure, for the initialization of the run-time lib. |
43004 | ||
c0040397 | 43005 | * s-thread.adb: |
65356e64 AC |
43006 | Remove dependancy on System.Init, so that this file can be used in the |
43007 | AE653 sequential run-time lib. | |
43008 | ||
43009 | 2003-11-13 Robert Dewar <dewar@gnat.com> | |
43010 | ||
43011 | * bindgen.adb: Minor reformatting | |
43012 | ||
43013 | 2003-11-13 Ed Schonberg <schonberg@gnat.com> | |
43014 | ||
c0040397 | 43015 | * checks.adb: |
65356e64 AC |
43016 | (Apply_Discriminant_Check): Do no apply check if target type is derived |
43017 | from source type with no applicable constraint. | |
43018 | ||
c0040397 | 43019 | * lib-writ.adb: |
65356e64 AC |
43020 | (Ensure_System_Dependency): Do not apply the style checks that may have |
43021 | been specified for the main unit. | |
43022 | ||
c0040397 | 43023 | * sem_ch8.adb: |
65356e64 AC |
43024 | (Find_Selected_Component): Further improvement in error message, with |
43025 | RM reference. | |
43026 | ||
c0040397 | 43027 | * sem_res.adb: |
65356e64 AC |
43028 | (Resolve): Handle properly the case of an illegal overloaded protected |
43029 | procedure. | |
43030 | ||
43031 | 2003-11-13 Javier Miranda <miranda@gnat.com> | |
43032 | ||
c0040397 | 43033 | * exp_aggr.adb: |
65356e64 AC |
43034 | (Has_Default_Init_Comps): New function to check the presence of |
43035 | default initialization in an aggregate. | |
43036 | (Build_Record_Aggr_Code): Recursively expand the ancestor in case of | |
43037 | extension aggregate of a limited record. In addition, a new formal | |
43038 | was added to do not initialize the record controller (if any) during | |
43039 | this recursive expansion of ancestors. | |
43040 | (Init_Controller): Add support for limited record components. | |
43041 | (Expand_Record_Aggregate): In case of default initialized components | |
43042 | convert the aggregate into a set of assignments. | |
43043 | ||
43044 | * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment | |
43045 | describing the new syntax. | |
43046 | Nothing else needed to be done because this subprogram delegates part of | |
43047 | its work to P_Precord_Or_Array_Component_Association. | |
43048 | (P_Record_Or_Array_Component_Association): Give support to the new | |
43049 | syntax for default initialization of components. | |
43050 | ||
c0040397 | 43051 | * sem_aggr.adb: |
65356e64 AC |
43052 | (Resolve_Aggregate): Relax the strictness of the frontend in case of |
43053 | limited aggregates. | |
43054 | (Resolve_Record_Aggregate): Give support to default initialized | |
43055 | components. | |
43056 | (Get_Value): In case of default initialized components, duplicate | |
43057 | the corresponding default expression (from the record type | |
43058 | declaration). In case of default initialization in the *others* | |
43059 | choice, do not check that all components have the same type. | |
43060 | (Resolve_Extension_Aggregate): Give support to limited extension | |
43061 | aggregates. | |
43062 | ||
c0040397 | 43063 | * sem_ch3.adb: |
65356e64 AC |
43064 | (Check_Initialization): Relax the strictness of the front-end in case |
43065 | of aggregate and extension aggregates. This test is now done in | |
43066 | Get_Value in a per-component manner. | |
43067 | ||
43068 | * sem_ch4.adb (Analyze_Allocator): Don't post an error if the | |
43069 | expression corresponds to a limited aggregate. This test is now done | |
43070 | in Get_Value. | |
43071 | ||
43072 | * sinfo.ads, sinfo.adb (N_Component_Association): Addition of | |
43073 | Box_Present flag. | |
43074 | ||
43075 | * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if | |
43076 | present in an N_Component_Association node | |
43077 | ||
43078 | 2003-11-13 Thomas Quinot <quinot@act-europe.fr> | |
43079 | ||
43080 | * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a | |
43081 | type-conformant entry only if they are homographs. | |
43082 | ||
43083 | 2003-11-13 GNAT Script <nobody@gnat.com> | |
43084 | ||
43085 | * Make-lang.in: Makefile automatically updated | |
43086 | ||
49add53f RO |
43087 | 2003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
43088 | ||
43089 | * adadecode.c: Use <> form of include for ctype.h. | |
43090 | * sysdep.c [IN_RTS]: Use <> form of include for time.h. | |
43091 | ||
94bae1cc RO |
43092 | 2003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
43093 | ||
43094 | * 5gsystem.ads (Functions_Return_By_DSP): Set to False. | |
43095 | Works around PR middle-end/6552. | |
43096 | ||
463f452c AC |
43097 | 2003-11-10 Ed Falis <falis@gnat.com> |
43098 | ||
43099 | * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted | |
43100 | ||
43101 | * 5zinit.adb: (Install_Handler): Moved back to spec | |
43102 | (Install_Signal_Handlers): Deleted | |
43103 | ||
43104 | * 5zthrini.adb: Added context clause for System.Storage_Elements | |
43105 | (Register): Only handles creation of taskVar; initialization moved to | |
43106 | Thread_Body_Enter. | |
43107 | (Reset_TSD): Deleted; replaced by Thread_Body_Enter | |
43108 | Added declaration of environment task secondary stack and | |
43109 | initialization. | |
43110 | ||
43111 | * s-thread.adb: Implement bodies for thread body processing | |
43112 | ||
c0040397 | 43113 | * s-thread.ads: |
463f452c AC |
43114 | Added comment identifying supported targets for pragma Thread_Body. |
43115 | ||
43116 | 2003-11-10 Pascal Obry <obry@gnat.com> | |
43117 | ||
43118 | * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than | |
43119 | GNAT_MAX_PATH_LEN. | |
43120 | ||
c0040397 | 43121 | * s-fileio.adb: |
463f452c AC |
43122 | (Open): Properly check for string length before copying into the buffer. |
43123 | Raises Name_Error if buffer is too small. Note that this was a potential | |
43124 | buffer overflow. | |
43125 | ||
43126 | 2003-11-10 Romain Berrendonner <berrendo@act-europe.fr> | |
43127 | ||
43128 | * bindgen.adb, comperr.adb: Code clean ups. | |
43129 | * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function. | |
43130 | ||
43131 | 2003-11-10 Sergey Rybin <rybin@act-europe.fr> | |
43132 | ||
43133 | * gnat1drv.adb: Add call to Sem_Elim.Initialize. | |
43134 | ||
43135 | 2003-11-10 Vincent Celier <celier@gnat.com> | |
43136 | ||
c0040397 | 43137 | * gprcmd.adb: |
463f452c AC |
43138 | (Gprcmd): Add new command "prefix" to get the prefix of the GNAT |
43139 | installation. | |
43140 | ||
43141 | * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler | |
43142 | ||
43143 | * prj.adb: (Project_Empty): Add new boolean component Virtual | |
43144 | ||
43145 | * prj.ads: (Virtual_Prefix): New constant string | |
43146 | (Project_Data): New boolean component Virtual | |
43147 | ||
43148 | * prj-nmsc.adb (Language_Independent_Check): Adjust error message when | |
43149 | a library project is extended by a virtual extending project. | |
43150 | ||
c0040397 | 43151 | * prj-part.adb: |
463f452c AC |
43152 | Modifications throughout to implement extending-all project, including: |
43153 | (Virtual_Hash, Processed_Hash): New hash tables | |
43154 | (Create_Virtual_Extending_Project): New procedure | |
43155 | (Look_For_Virtual_Projects_For): New procedure | |
43156 | ||
c0040397 | 43157 | * prj-proc.adb: |
463f452c AC |
43158 | (Process): After checking the projects, if main project is an |
43159 | extending-all project, set the object directory of all virtual extending | |
43160 | project to the object directory of the main project. | |
43161 | Adjust error message when a virtual extending project has the same | |
43162 | object directory as an project being extended. | |
43163 | (Recursive_Process): If name starts with the virtual prefix, set Virtual | |
43164 | to True in the project data. | |
43165 | ||
c0040397 | 43166 | * prj-tree.adb: |
463f452c AC |
43167 | (Default_Project_Node): Add new boolean component Extending_All |
43168 | (Is_Extending_All): New function | |
43169 | (Set_Is_Extending_All): New procedure | |
43170 | ||
43171 | * prj-tree.ads: (Is_Extending_All): New function | |
43172 | (Set_Is_Extending_All): New procedure | |
43173 | (Project_Node_Record): New boolean component Extending_All | |
43174 | ||
43175 | * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib | |
43176 | ||
c0040397 | 43177 | * vms_data.ads: |
463f452c AC |
43178 | Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler |
43179 | ||
43180 | * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call | |
43181 | "gprcmd prefix" to define it. | |
43182 | ||
43183 | 2003-11-10 Thomas Quinot <quinot@act-europe.fr> | |
43184 | ||
43185 | * einfo.ads: Fix a typo and remove an extraneous word in comments. | |
43186 | ||
c0040397 | 43187 | * lib-load.adb: |
463f452c AC |
43188 | (Create_Dummy_Package_Unit): Set the scope of the entity for the |
43189 | created dummy package to Standard_Standard, not to itself, to | |
43190 | defend other parts of the front-end against encoutering a cycle in | |
43191 | the scope chain. | |
43192 | ||
c0040397 | 43193 | * sem_ch10.adb: |
463f452c AC |
43194 | (Analyze_With_Clause): When setting the entities for the successive |
43195 | N_Expanded_Names that constitute the name of a child unit, do not | |
43196 | attempt to go further than Standard_Standard in the chain of scopes. | |
43197 | This case arises from the placeholder units created by | |
43198 | Create_Dummy_Package_Unit in the case of a with_clause for a | |
43199 | nonexistent child unit. | |
43200 | ||
43201 | 2003-11-10 Ed Schonberg <schonberg@gnat.com> | |
43202 | ||
c0040397 | 43203 | * exp_ch6.adb: |
463f452c AC |
43204 | (Expand_Thread_Body): Place subprogram on scope stack, so that new |
43205 | declarations are given the proper scope. | |
43206 | ||
c0040397 | 43207 | * sem_ch13.adb: |
463f452c AC |
43208 | (Check_Expr_Constants): Reject an expression that contains a constant |
43209 | created during expansion, and that appears after the object to which | |
43210 | the address clause applies. | |
43211 | ||
43212 | * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of | |
43213 | Analyze_Iteration_Scheme, to rewrite a loop parameter specification | |
43214 | that uses 'Range of a function call with controlled components, so | |
43215 | that the function result can be finalized before starting the loop. | |
43216 | ||
c0040397 | 43217 | * sem_ch8.adb: |
463f452c AC |
43218 | (Find_Selected_Component): Improve error message when prefix is |
43219 | an implicit dereference of an incomplete type. | |
43220 | ||
43221 | 2003-11-10 Robert Dewar <dewar@gnat.com> | |
43222 | ||
43223 | * opt.ads: New Print_Standard flag for -gnatS switch | |
43224 | ||
43225 | * sem_ch13.adb: Remove some additional checks for unaligned arrays | |
43226 | ||
43227 | * cstand.adb (Create_Standard): Print out package standard if -gnatS | |
43228 | switch set | |
43229 | ||
43230 | * debug.adb: Update doc for -gnatds to discuss relationship with new | |
43231 | -gnatS flag | |
43232 | ||
43233 | * sinfo.adb: Add new field Entity_Or_Associated_Node | |
43234 | ||
43235 | * sinfo.ads: Add new field Entity_Or_Associated_Node | |
43236 | Update documentation for Associated_Node and Entity fields to clarify | |
43237 | relationship and usage. | |
43238 | ||
c0040397 | 43239 | * sprint.adb: |
463f452c AC |
43240 | (Write_Id): Properly process Associated_Node field in generic template |
43241 | ||
c0040397 | 43242 | * switch-c.adb: |
463f452c AC |
43243 | Recognize new -gnatS switch for printing package Standard |
43244 | This replaces gnatpsta | |
43245 | ||
c0040397 | 43246 | * usage.adb: |
463f452c AC |
43247 | Add line for new -gnatS switch for printing package Standard |
43248 | This replaces gnatpsta | |
43249 | ||
c77c5f2e AJ |
43250 | 2003-11-10 Andreas Jaeger <aj@suse.de> |
43251 | ||
43252 | * 7sosprim.adb: tv_usec of struct_timeval and time_t are long | |
43253 | integer. | |
43254 | ||
5c90f17f AC |
43255 | 2003-11-10 Arnaud Charlet <charlet@act-europe.fr> |
43256 | ||
43257 | * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed | |
43258 | by gnat1. | |
43259 | ||
139f0d1e AC |
43260 | 2003-11-10 Arnaud Charlet <charlet@act-europe.fr> |
43261 | ||
43262 | * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta, | |
43263 | no longer needed. | |
43264 | ||
43265 | * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed. | |
43266 | ||
43267 | * sysdep.c: Add handling of cygwin. | |
43268 | ||
f3e4c05c GS |
43269 | 2003-11-10 GNAT Script <nobody@gnat.com> |
43270 | ||
43271 | * Make-lang.in: Makefile automatically updated | |
43272 | ||
2cdc8909 AC |
43273 | 2003-11-10 Arnaud Charlet <charlet@act-europe.fr> |
43274 | ||
43275 | PR 12950 | |
43276 | * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New | |
43277 | functions. Used to handle dynamic prefix relocation, via set_std_prefix. | |
43278 | Replace GNAT_ROOT by GCC_ROOT. | |
43279 | ||
43280 | * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb | |
43281 | ||
37783865 ZW |
43282 | 2003-11-06 Zack Weinberg <zack@codesourcery.com> |
43283 | ||
43284 | * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION | |
43285 | and update for changed meaning of GET_MODE_BITSIZE. | |
43286 | ||
6bc1c519 AC |
43287 | 2003-11-04 Doug Rupp <rupp@gnat.com> |
43288 | ||
43289 | * sysdep.c: Problem discovered during IA64 VMS port. | |
43290 | [VMS] #include <unixio.h> to get proper prototypes. | |
43291 | ||
37783865 | 43292 | * adaint.c: |
6bc1c519 AC |
43293 | Issues discovered/problems fixed during IA64 VMS port. |
43294 | [VMS] #define _POSIX_EXIT for proper semantics. | |
43295 | [VMS] #include <unixio.h> for proper prototypes. | |
43296 | [VMS] (fork): #define IA64 version. | |
43297 | (__gnat_os_exit): Remove unnecessary VMS specific code. | |
43298 | ||
43299 | 2003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
43300 | ||
43301 | Part of PR ada/12806 | |
6bc1c519 AC |
43302 | * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as |
43303 | tree, not integer. | |
43304 | ||
37783865 | 43305 | * decl.c: |
6bc1c519 AC |
43306 | (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree, |
43307 | not integer. | |
43308 | ||
43309 | * targtyps.c, decl.c, misc.c, | |
43310 | gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary | |
43311 | routines to work around change in FP sizing semantics in GCC. | |
43312 | ||
37783865 | 43313 | * utils.c: |
6bc1c519 AC |
43314 | (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer. |
43315 | ||
43316 | * gigi.h: (enumerate_modes): New function. | |
43317 | ||
43318 | * Make-lang.in: (ada/misc.o): Add real.h. | |
43319 | ||
43320 | * misc.c: (enumerate_modes): New function. | |
43321 | ||
43322 | 2003-11-04 Robert Dewar <dewar@gnat.com> | |
43323 | ||
43324 | * 3vtrasym.adb: Minor reformatting | |
43325 | Use terminology encoded/decoded name, rather than C++ specific notion | |
43326 | of mangling (this is the terminology used throughout GNAT). | |
43327 | ||
43328 | * einfo.h: Regenerated | |
43329 | ||
43330 | * einfo.ads, einfo.adb: Add new flag Is_Thread_Body | |
43331 | ||
37783865 | 43332 | * exp_ch6.adb: |
6bc1c519 AC |
43333 | (Expand_N_Subprogram_Body): Handle expansion of thread body procedure |
43334 | ||
43335 | * par-prag.adb: Add dummy entry for Thread_Body pragma | |
43336 | ||
37783865 | 43337 | * rtsfind.ads: |
6bc1c519 AC |
43338 | Add entries for System.Threads entities for thread body processing |
43339 | ||
37783865 | 43340 | * sem_attr.adb: |
6bc1c519 AC |
43341 | (Analyze_Pragma, Access attributes): Check these are not applied to a |
43342 | thread body, since this is not permitted | |
43343 | ||
43344 | * sem_prag.adb: Add processing for Thread_Body pragma. | |
43345 | Minor comment fix. | |
43346 | ||
37783865 | 43347 | * sem_res.adb: |
6bc1c519 AC |
43348 | (Resolve_Call): Check for incorrect attempt to call a thread body |
43349 | procedure with a direct call. | |
43350 | ||
43351 | * snames.ads, snames.adb: Add entry for Thread_Body pragma | |
43352 | Add names associated with thread body expansion | |
43353 | ||
43354 | * snames.h: Add entry for Thread_Body pragma | |
43355 | ||
43356 | * s-thread.adb: Add entries for thread body processing | |
43357 | These are dummy bodies so far | |
43358 | ||
43359 | * s-thread.ads: Add documentation on thread body handling. | |
43360 | Add entries for thread body processing. | |
43361 | ||
43362 | 2003-11-04 Javier Miranda <miranda@gnat.com> | |
43363 | ||
37783865 | 43364 | * sem_ch10.adb: |
6bc1c519 AC |
43365 | (Build_Limited_Views): Return after posting an error in case of limited |
43366 | with_clause on subprograms, generics, instances or generic renamings | |
43367 | (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause | |
43368 | on subprograms, generics, instances or generic renamings | |
43369 | ||
43370 | 2003-11-04 Arnaud Charlet <charlet@act-europe.fr> | |
43371 | ||
43372 | * raise.c (setup_to_install): Correct mistake in last revision; two | |
43373 | arguments out of order. | |
43374 | ||
43375 | * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c, | |
43376 | gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright | |
43377 | notice, missed in previous change. | |
43378 | Remove trailing blanks and other style errors introduced in previous | |
43379 | change. | |
43380 | ||
43381 | 2003-11-04 Olivier Hainque <hainque@act-europe.fr> | |
43382 | ||
43383 | * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get | |
43384 | rid of the wrapper for a LJM type, ensuring we don't do that if the | |
43385 | field is addressable. This avoids potential low level type view | |
43386 | mismatches later on, for instance in a by-reference argument passing | |
43387 | process. | |
43388 | ||
43389 | 2003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
43390 | ||
43391 | * decl.c (gnat_to_gnu_field): No longer check for BLKmode being | |
43392 | aligned at byte boundary. | |
43393 | ||
43394 | 2003-11-04 Joel Brobecker <brobecker@gnat.com> | |
43395 | ||
43396 | * decl.c (components_to_record): Do not delete the empty variants from | |
43397 | the end of the union type. | |
43398 | ||
43399 | 2003-11-04 Ed Schonberg <schonberg@gnat.com> | |
43400 | ||
43401 | * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive | |
43402 | operation for a derived type, an explicit declaration may use a local | |
43403 | subtype of Boolean. | |
43404 | ||
43405 | 2003-11-04 Vincent Celier <celier@gnat.com> | |
43406 | ||
43407 | * make.adb (Gnatmake): Allow main sources on the command line with a | |
43408 | library project when it is only for compilation (no binding or | |
43409 | linking). | |
43410 | ||
487e9fff RO |
43411 | 2003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
43412 | ||
43413 | * Makefile.in: Remove many duplicate variables. | |
43414 | ||
63069342 KC |
43415 | 2003-11-03 Kelley Cook <kcook@gcc.gnu.org> |
43416 | ||
43417 | * Make-lang.in (dvi): Move targets to $(docobjdir). | |
43418 | (gnat_ug_vms.dvi): Simplify rule and adjust target. | |
43419 | (gnat_ug_wnt.dvi): Likewise. | |
43420 | (gnat_ug_unx.dvi): Likewise. | |
43421 | (gnat_ug_vxw.dvi): Likewise. | |
43422 | (gnat_rm.dvi): Likewise. | |
43423 | (gnat-style.dvi): Likewise. | |
43424 | ||
c2edc52b KC |
43425 | 2003-10-31 Kelley Cook <kcook@gcc.gnu.org> |
43426 | ||
43427 | * gigi.h: Missed commit from update for C90. | |
43428 | ||
14df9585 KC |
43429 | 2003-10-31 Kelley Cook <kcook@gcc.gnu.org> |
43430 | ||
43431 | * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error. | |
43432 | ||
acd8e984 AS |
43433 | 2003-10-31 Andreas Schwab <schwab@suse.de> |
43434 | ||
43435 | * raise.c (get_action_description_for): Fix typo in last change. | |
43436 | ||
b2c62c45 NN |
43437 | 2003-10-31 Nathanael Nerode <neroden@gcc.gnu.org> |
43438 | ||
43439 | PR ada/12761 | |
43440 | * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS, | |
43441 | T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in. | |
43442 | ||
9373164a KC |
43443 | 2003-10-30 Kelley Cook <kcook@gcc.gnu.org> |
43444 | ||
43445 | * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c, | |
43446 | ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c, | |
43447 | gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c, | |
43448 | sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c, | |
43449 | trans.c, utils.c, utils2.c: Convert function prototypes to C90. | |
43450 | ||
bde58e32 AC |
43451 | 2003-10-30 Vasiliy Fofanov <fofanov@act-europe.fr> |
43452 | ||
37783865 | 43453 | * 3vtrasym.adb: |
bde58e32 AC |
43454 | Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line |
43455 | numbers when symbol name is too long. | |
43456 | ||
43457 | 2003-10-30 Ed Falis <falis@gnat.com> | |
43458 | ||
43459 | * g-signal.ads, g-signal.adb: New files | |
43460 | ||
43461 | * impunit.adb: (Non_Imp_File_Names): Added "g-signal" | |
43462 | ||
43463 | * Makefile.rtl: Introduce GNAT.Signals | |
43464 | ||
43465 | 2003-10-30 Robert Dewar <dewar@gnat.com> | |
43466 | ||
43467 | * freeze.adb: Minor reformatting | |
43468 | ||
43469 | * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified | |
43470 | ||
37783865 ZW |
43471 | * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb, |
43472 | par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb: | |
bde58e32 AC |
43473 | New handling of Id_Check parameter to improve recognition of keywords |
43474 | used as identifiers. | |
43475 | Update copyright notice to include 2003 | |
43476 | ||
657a9dd9 AC |
43477 | 2003-10-29 Robert Dewar <dewar@gnat.com> |
43478 | ||
43479 | * 3vtrasym.adb, 5vtraent.ads, sprint.adb, | |
43480 | sem_ch10.adb: Minor reformatting | |
43481 | ||
43482 | * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands | |
43483 | (Expand_Assign_Record): Test right hand side for bit unaligned as well | |
43484 | ||
43485 | 2003-10-29 Vasiliy Fofanov <fofanov@act-europe.fr> | |
43486 | ||
37783865 | 43487 | * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c: |
657a9dd9 AC |
43488 | Support for TBK$SYMBOLIZE-based symbolic traceback. |
43489 | ||
43490 | 2003-10-29 Jose Ruiz <ruiz@act-europe.fr> | |
43491 | ||
37783865 | 43492 | * exp_disp.adb: |
657a9dd9 AC |
43493 | Revert previous change, that did not work well when pragma No_Run_Time |
43494 | was used in conjunction with a run-time other than ZFP. | |
43495 | ||
43496 | 2003-10-29 Vincent Celier <celier@gnat.com> | |
43497 | ||
37783865 | 43498 | * make.adb: |
657a9dd9 AC |
43499 | (Gnatmake): When there are no Ada mains in attribute Main, disable the |
43500 | bind and link steps only is switch -z is not used. | |
43501 | ||
43502 | 2003-10-29 Arnaud Charlet <charlet@act-europe.fr> | |
43503 | ||
43504 | * Makefile.generic: Remove duplicated setting of CC. | |
43505 | ||
43506 | * Makefile.prolog: Set CC to gcc by default, to override make's | |
43507 | default (cc). | |
43508 | ||
43509 | * einfo.h: Regenerated. | |
43510 | ||
43511 | 2003-10-29 Ed Schonberg <schonberg@gnat.com> | |
43512 | ||
43513 | * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for | |
43514 | current body, after compiling subunit. | |
43515 | ||
43516 | * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype | |
43517 | when in deleted code, because gigi needs properly ordered freeze | |
43518 | actions to annotate types. | |
43519 | ||
43520 | * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to | |
43521 | prevent the premature freezing of record type that contains | |
43522 | subcomponents with a private type that does not yet have a completion. | |
43523 | ||
43524 | 2003-10-29 Javier Miranda <miranda@gnat.com> | |
43525 | ||
37783865 | 43526 | * sem_ch12.adb: |
657a9dd9 AC |
43527 | (Analyze_Package_Instantiation): Check that instances can not be used in |
43528 | limited with_clauses. | |
43529 | ||
37783865 | 43530 | * sem_ch8.adb: |
657a9dd9 AC |
43531 | (Analyze_Package_Renaming): Check that limited withed packages cannot |
43532 | be renamed. Improve text on error messages related to limited | |
43533 | with_clauses. | |
43534 | ||
43535 | * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute. | |
43536 | ||
43537 | * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses. | |
43538 | Update copyright notice. | |
43539 | ||
43540 | * sem_ch10.adb: (Build_Limited_Views): Complete its documentation. | |
43541 | (Install_Limited_Context_Clauses): New subprogram that isolates all the | |
43542 | checks required for limited context_clauses and installs the limited | |
43543 | view. | |
43544 | (Install_Limited_Withed_Unit): Complete its documentation. | |
43545 | (Analyze_Context): Check that limited with_clauses are only allowed in | |
43546 | package specs. | |
43547 | (Install_Context): Call Install_Limited_Context_Clauses after the | |
43548 | parents have been installed. | |
43549 | (Install_Limited_Withed_Unit): Add documentation. Mark the installed | |
43550 | package as 'From_With_Type'; this mark indicates that the limited view | |
43551 | is installed. Used to check bad usages of limited with_clauses. | |
43552 | (Build_Limited_Views): Do not add shadow entities to the scope's list | |
43553 | of entities. Do not add real entities to the Non_Limited_Views chain. | |
43554 | Improve error notification. | |
43555 | (Remove_Context_Clauses): Remove context clauses in two phases: | |
43556 | limited views first and regular views later (to maintain the | |
43557 | stack model). | |
43558 | (Remove_Limited_With_Clause): If the package is analyzed then reinstall | |
43559 | its visible entities. | |
43560 | ||
43561 | 2003-10-29 Thomas Quinot <quinot@act-europe.fr> | |
43562 | ||
43563 | * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible | |
43564 | with any type that Is_Fixed_Point_Type. | |
43565 | ||
43566 | * sinfo.ads: Fix documentation for Associated_Node attribute. | |
43567 | ||
43568 | 2003-10-29 Sergey Rybin <rybin@act-europe.fr> | |
43569 | ||
43570 | * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when | |
43571 | both '-gnatc' and '-gnatt' are specified. | |
43572 | ||
43573 | * atree.adb (Initialize): Add initialization for Node_Count (set to | |
43574 | zero). | |
43575 | ||
43576 | 2003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
43577 | ||
43578 | * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value, | |
43579 | do not consider as Pure. | |
43580 | ||
43581 | Part of implementation of function-at-a-time: | |
43582 | ||
43583 | * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt. | |
43584 | (tree_transform): Add new argument to build_component_ref. | |
43585 | (tree_transform, case N_Assignment_Statement): Make and return an | |
43586 | EXPR_STMT. | |
43587 | (tree_transform): If result IS_STMT, set flags and return it. | |
43588 | (gnat_expand_stmt, set_lineno_from_sloc): New functions. | |
43589 | ||
43590 | * utils2.c (build_simple_component_ref, build_component_ref): Add new | |
43591 | arg, NO_FOLD_P. | |
43592 | (build_binary_op, case EQ_EXPR): Pass additional arg to it. | |
43593 | (build_allocator): Likewise. | |
43594 | ||
43595 | * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert): | |
43596 | Add new arg to build_component_ref. | |
43597 | (maybe_unconstrained_array, unchecked_convert): Likewise. | |
43598 | ||
43599 | * ada-tree.def (EXPR_STMT): New code. | |
43600 | ||
43601 | * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros. | |
43602 | ||
43603 | * decl.c (gnat_to_gnu_entity, case object): Add extra arg to | |
43604 | build_component_ref calls. | |
43605 | ||
43606 | * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt. | |
43607 | ||
43608 | * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions. | |
43609 | (build_component_ref): Add new argument, NO_FOLD_P. | |
43610 | ||
ecad994d AC |
43611 | 2003-10-27 Arnaud Charlet <charlet@act-europe.fr> |
43612 | ||
43613 | * Makefile.generic: Add missing substitution on object_deps handling. | |
43614 | ||
6f7f72f9 | 43615 | PR ada/5909 |
ecad994d AC |
43616 | * Make-lang.in (check-ada): Enable ACATS test suite. |
43617 | ||
43618 | 2003-10-27 Robert Dewar <dewar@gnat.com> | |
43619 | ||
37783865 | 43620 | * exp_ch3.adb: |
ecad994d AC |
43621 | (Freeze_Array_Type): We do not need an initialization routine for types |
43622 | derived from String or Wide_String. They should be treated the same | |
43623 | as String and Wide_String themselves. This caused problems with the | |
43624 | use of Initialize_Scalars. | |
43625 | ||
37783865 | 43626 | * exp_ch5.adb: |
ecad994d AC |
43627 | (Expand_Assign_Record): Do component-wise assignment of non-byte aligned |
43628 | composites. This allows use of component clauses that are not byte | |
43629 | aligned. | |
43630 | ||
37783865 | 43631 | * sem_prag.adb: |
ecad994d AC |
43632 | (Analyze_Pragma, case Pack): Generate warning and ignore pack if there |
43633 | is an attempt to pack an array of atomic objects. | |
43634 | ||
43635 | * make.adb, prj-env.adb, prj-env.ads: Minor reformatting | |
43636 | ||
43637 | 2003-10-27 Pascal Obry <obry@gnat.com> | |
43638 | ||
37783865 | 43639 | * g-dirope.adb: |
ecad994d AC |
43640 | (Basename): Check for drive letters in a pathname only on DOS based OS. |
43641 | ||
43642 | 2003-10-27 Vincent Celier <celier@gnat.com> | |
43643 | ||
37783865 | 43644 | * make.adb: |
ecad994d AC |
43645 | (Gnatmake): When unable to change dir to the object dir, display the |
43646 | content of the parent dir of the obj dir, to try to understand why this | |
43647 | happens. | |
43648 | ||
43649 | 2003-10-27 GNAT Script <nobody@gnat.com> | |
43650 | ||
43651 | * Make-lang.in: Makefile automatically updated | |
43652 | ||
43653 | 2003-10-27 Ed Schonberg <schonberg@gnat.com> | |
43654 | ||
37783865 | 43655 | * sem_ch12.adb: |
ecad994d AC |
43656 | (Inline_Instance_Body): Indicate that the save/restore of use_clauses |
43657 | should not be done in Save/Restore_Scope_Stack, because it is performed | |
43658 | locally. | |
43659 | ||
37783865 | 43660 | * sem_ch8.adb: |
ecad994d AC |
43661 | (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate |
43662 | whether use clauses should be removed/restored. | |
43663 | ||
37783865 | 43664 | * sem_ch8.ads: |
ecad994d AC |
43665 | (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate |
43666 | whether use clauses should be removed/restored. | |
43667 | ||
b6b3c138 AJ |
43668 | 2003-10-26 Andreas Jaeger <aj@suse.de> |
43669 | ||
43670 | * Makefile.in: Remove duplicated lines. | |
43671 | ||
b6d83931 AC |
43672 | 2003-10-24 Arnaud Charlet <charlet@act-europe.fr> |
43673 | ||
43674 | * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to | |
43675 | minimize the differences with ACT tree. | |
43676 | ||
43677 | * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb, | |
43678 | gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of | |
43679 | Gnatvsn.Gnat_Static_Version_String to reduce differences between | |
43680 | ACT and FSF trees. | |
43681 | ||
43682 | 2003-10-24 Pascal Obry <obry@gnat.com> | |
43683 | ||
6f7f72f9 | 43684 | PR ada/12014 |
b6d83931 AC |
43685 | * adadecode.c (ostrcpy): New function. |
43686 | (__gnat_decode): Use ostrcpy of strcpy. | |
43687 | (has_prefix): Set first parameter a const. | |
43688 | (has_suffix): Set first parameter a const. | |
43689 | Update copyright notice. Fix source name in header. | |
43690 | Removes a trailing space. | |
b6d83931 AC |
43691 | |
43692 | 2003-10-24 Jose Ruiz <ruiz@act-europe.fr> | |
43693 | ||
b6b3c138 | 43694 | * exp_disp.adb: |
b6d83931 AC |
43695 | Remove the test against being in No_Run_Time_Mode before generating a |
43696 | call to Register_Tag. It is redundant with the test against the | |
43697 | availability of the function Register_Tag. | |
43698 | ||
43699 | 2003-10-24 Vincent Celier <celier@gnat.com> | |
43700 | ||
43701 | * g-catiio.adb: (Month_Name): Correct spelling of February | |
43702 | ||
43703 | * make.adb: (Mains): New package | |
43704 | (Initialize): Call Mains.Delete | |
43705 | (Gnatmake): Check that each main on the command line is a source of a | |
43706 | project file and, if there are several mains, each of them is a source | |
43707 | of the same project file. | |
43708 | (Gnatmake): When a foreign language is specified in attribute Languages, | |
43709 | no main is specified on the command line and attribute Mains is not | |
43710 | empty, only build the Ada main. If there is no Ada main, just compile | |
43711 | the Ada sources and their closure. | |
43712 | (Gnatmake): If a main is specified on the command line with directory | |
43713 | information, check that the source exists and, if it does, that the path | |
43714 | is the actual path of a source of a project. | |
43715 | ||
b6b3c138 | 43716 | * prj-env.adb: |
b6d83931 AC |
43717 | (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When |
43718 | Full_Path is True, return the full path instead of the simple file name. | |
43719 | (Project_Of): New function | |
43720 | ||
b6b3c138 | 43721 | * prj-env.ads: |
b6d83931 AC |
43722 | (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path, |
43723 | defaulted to False. | |
43724 | (Project_Of): New function | |
43725 | ||
43726 | 2003-10-24 Arnaud Charlet <charlet@act-europe.fr> | |
43727 | ||
b6b3c138 | 43728 | * Makefile.generic: |
b6d83931 AC |
43729 | Ensure objects of main project are always checked and rebuilt if needed. |
43730 | Set CC to gcc by default. | |
43731 | Prepare new handling of link by creating a global archive (not activated | |
43732 | yet). | |
43733 | ||
43734 | * adadecode.h, atree.h, elists.h, nlists.h, raise.h, | |
43735 | stringt.h: Update copyright notice. Remove trailing blanks. | |
43736 | Fix source name in header. | |
43737 | ||
43738 | 2003-10-24 Robert Dewar <dewar@gnat.com> | |
43739 | ||
43740 | * sem_ch12.adb: Minor reformatting | |
43741 | ||
b6b3c138 | 43742 | * sem_ch3.adb: |
b6d83931 AC |
43743 | Minor reformatting (including new function return style throughout) |
43744 | ||
b6b3c138 | 43745 | * sem_ch3.ads: |
b6d83931 AC |
43746 | Minor reformatting (including new function return style throughout) |
43747 | ||
43748 | 2003-10-24 Arnaud Charlet <charlet@act-europe.fr> | |
43749 | ||
43750 | * adadecode.h, atree.h, elists.h, nlists.h, raise.h, | |
43751 | stringt.h: Update copyright notice. Remove trailing blanks. | |
43752 | Fix source name in header. | |
43753 | ||
43754 | 2003-10-24 GNAT Script <nobody@gnat.com> | |
43755 | ||
43756 | * Make-lang.in: Makefile automatically updated | |
43757 | ||
b4e2d709 NN |
43758 | 2003-10-23 Nathanael Nerode <neroden@gcc.gnu.org> |
43759 | ||
43760 | * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h, | |
43761 | stringt.h: Convert to ISO C90 declarations and definitions. | |
43762 | ||
9d7d51be AC |
43763 | 2003-10-23 Thomas Quinot <quinot@act-europe.fr> |
43764 | ||
6f7f72f9 | 43765 | PR ada/11978 |
9d7d51be AC |
43766 | * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited |
43767 | External_Tag attribute definition clauses. | |
43768 | ||
43769 | 2003-10-23 Ed Schonberg <schonberg@gnat.com> | |
43770 | ||
6f7f72f9 | 43771 | PR ada/7613 |
9d7d51be AC |
43772 | * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a |
43773 | child unit, generate a fully qualified name to avoid spurious errors | |
43774 | when the context contains renamings of different child units with | |
43775 | the same simple name. | |
43776 | ||
43777 | * exp_dbug.ads: Add documentation on name qualification for renamings | |
43778 | of child units. | |
43779 | ||
43780 | 2003-10-23 Robert Dewar <dewar@gnat.com> | |
43781 | ||
43782 | * g-regpat.ads, g-regpat.adb: Minor reformatting | |
43783 | ||
43784 | 2003-10-23 Jose Ruiz <ruiz@act-europe.fr> | |
43785 | ||
43786 | * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times. | |
43787 | ||
43788 | 2003-10-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | |
43789 | ||
43790 | * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to | |
43791 | Machine call. | |
43792 | ||
43793 | * urealp.h: (Machine): Update to proper definition. | |
43794 | ||
6d244bbe AC |
43795 | 2003-10-23 Arnaud Charlet <charlet@act-europe.fr> |
43796 | ||
43797 | * init.c, adaint.c: Minor reformatting. | |
43798 | ||
8f4eb34b DS |
43799 | 2003-10-23 Danny Smith <dannysmith@users.sourceforge.net> |
43800 | ||
6d244bbe | 43801 | * adaint.c (w32_epoch_offset): Define static const at file level. |
8f4eb34b DS |
43802 | (win32_filetime): Replace offset with w32_epoch_offset. Use NULL |
43803 | rather than t_create, t_access in call to GetFileTime. Use union | |
43804 | to convert between FILETIME and unsigned long long. | |
43805 | (__gnat_file_time_name): Test for invalid file handle. | |
43806 | (__gnat_set_filetime_name): Support win32 targets using | |
43807 | w32api SetFileTime. | |
43808 | ||
25412599 DS |
43809 | 2003-10-22 Danny Smith <dannysmith@users.sourceforge.net> |
43810 | ||
43811 | * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW. | |
43812 | ||
43813 | * ctrl_c.c (__gnat_int_handler): Remove declaration. | |
43814 | ||
43815 | * decl.c (creat_concat_name): Const-ify prefix. | |
43816 | ||
43817 | * adaint.c: Include ctype.h if __MINGW32__. | |
43818 | (__gnat_readlink): Mark arguments as possibly unused. | |
43819 | (__gnat_symlink): Likewise. | |
43820 | (__gnat_is_symbolic_link): Likewise. | |
43821 | (__gnat_portable_spawn): Likewise. Cast last arg of spawnvp to match | |
43822 | declaration | |
b6b3c138 | 43823 | (__gnat_file_time_name): Don't declare struct stat statbuf when |
25412599 DS |
43824 | not needed. |
43825 | (__gnat_is_absolute_path): Add parenthesis around condition of | |
43826 | 'if' statement to avoid warning. | |
43827 | (__gnat_plist_init): Specify void as parameter. | |
43828 | (plist_enter): Likewise. | |
43829 | (plist_leave): Likewise. | |
43830 | (remove_handle): Make static. Initialize prev. | |
43831 | ||
698a5e79 AC |
43832 | 2003-10-22 Arnaud Charlet <charlet@act-europe.fr> |
43833 | ||
6f7f72f9 EB |
43834 | PR ada/10110 |
43835 | * Makefile.in: Disable build of gnatpsta. | |
698a5e79 AC |
43836 | * cstreams.c (__gnat_full_name): Minor improvements and clean up |
43837 | of previous change. | |
43838 | ||
e97c30aa RO |
43839 | 2003-10-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
43840 | ||
43841 | * tracebak.c (MAX): Avoid redefinition warning. | |
43842 | ||
43843 | * init.c [sgi] (__gnat_error_handler): Remove i, unused. | |
43844 | Change msg to const char *. | |
43845 | (__gnat_install_handler): Remove ss, unused. | |
43846 | [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg | |
43847 | to const char *. | |
43848 | * cstreams.c (__gnat_full_name): Declare p only when used. | |
43849 | (__gnat_full_name) [sgi] Return buffer. | |
43850 | ||
65f1ebd1 AC |
43851 | 2003-10-22 Arnaud Charlet <charlet@act-europe.fr> |
43852 | ||
43853 | * mingw32.h: New file. | |
0c644933 AC |
43854 | * gnat_wrapper.adb: New file. |
43855 | ||
6d244bbe | 43856 | 2003-10-22 Jerome Roussel <roussel@act-europe.fr> |
0c644933 AC |
43857 | |
43858 | * g-regpat.ads, g-regpat.adb (Match): new function, to know if a | |
43859 | string match a pre compiled regular expression (the corresponding | |
43860 | version of the function working on a raw regular expression) | |
43861 | Fix typos in various comments | |
43862 | Update copyright notice in spec | |
43863 | ||
6d244bbe | 43864 | 2003-10-21 Gary Dismukes <dismukes@gnat.com> |
0c644933 | 43865 | |
b6b3c138 | 43866 | * exp_ch3.adb: |
0c644933 AC |
43867 | (Component_Needs_Simple_Initialization): Return False when the type is a |
43868 | packed bit array. Revise spec comments to document this case. | |
43869 | ||
b6b3c138 | 43870 | * exp_prag.adb: |
0c644933 AC |
43871 | (Expand_Pragma_Import): Set any expression on the imported object to |
43872 | empty to avoid initializing imported objects (in particular this | |
43873 | covers the case of zero-initialization of bit arrays). | |
43874 | Update copyright notice. | |
43875 | ||
6d244bbe | 43876 | 2003-10-21 Ed Schonberg <schonberg@gnat.com> |
0c644933 | 43877 | |
b6b3c138 | 43878 | * sem_ch12.adb: |
0c644933 AC |
43879 | (Load_Parent_Of_Generic): If parent is compilation unit, stop search, |
43880 | a subunit is missing. | |
43881 | (Instantiate_Subprogram_Body): If body of function is missing, set type | |
43882 | of return expression explicitly in dummy body, to prevent cascaded | |
43883 | errors when a subunit is missing. | |
43884 | Fixes PR 5677. | |
43885 | ||
b6b3c138 | 43886 | * sem_ch3.adb: |
0c644933 AC |
43887 | (Access_Subprogram_Declaration): Verify that return type is valid. |
43888 | Fixes PR 8693. | |
43889 | ||
b6b3c138 | 43890 | * sem_elab.adb: |
0c644933 AC |
43891 | (Check_Elab_Calls): Do not apply elaboration checks if the main unit is |
43892 | generic. | |
43893 | Fixes PR 12318. | |
43894 | ||
b6b3c138 | 43895 | * sem_util.adb: |
0c644933 AC |
43896 | (Corresponding_Discriminant): If the scope of the discriminant is a |
43897 | private type without discriminant, use its full view. | |
43898 | Fixes PR 8247. | |
65f1ebd1 | 43899 | |
fbf5a39b AC |
43900 | 2003-10-21 Arnaud Charlet <charlet@act-europe.fr> |
43901 | ||
43902 | * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads, | |
43903 | 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads, | |
43904 | 3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads, | |
43905 | 55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb, | |
43906 | 56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads, | |
43907 | 59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads, | |
43908 | 5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb, | |
43909 | 5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads, | |
43910 | 5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads, | |
43911 | 5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb, | |
43912 | 5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads, | |
43913 | 5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb, | |
43914 | 5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb, | |
43915 | 5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb, | |
43916 | 7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb, | |
43917 | a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb, | |
43918 | a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb, | |
43919 | a-stwisu.ads, bld.adb, bld.ads, bld-io.adb, | |
43920 | bld-io.ads, clean.adb, clean.ads, ctrl_c.c, | |
43921 | erroutc.adb, erroutc.ads, errutil.adb, errutil.ads, | |
43922 | err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads, | |
43923 | g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb, | |
43924 | g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads, | |
43925 | g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb, | |
43926 | g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb, | |
43927 | g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb, | |
43928 | g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads, | |
43929 | gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb, | |
43930 | g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads, | |
43931 | g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb, | |
43932 | i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl, | |
43933 | prep.adb, prep.ads, prepcomp.adb, prepcomp.ads, | |
43934 | prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb, | |
43935 | s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb, | |
43936 | s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb, | |
43937 | s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb, | |
43938 | s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb, | |
43939 | s-caun64.ads, scng.adb, scng.ads, s-exnint.adb, | |
43940 | s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb, | |
43941 | s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb, | |
43942 | s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads, | |
43943 | socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb, | |
43944 | s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads, | |
43945 | s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads, | |
43946 | s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb, | |
43947 | styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb, | |
43948 | s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads, | |
43949 | tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads, | |
43950 | vms_conv.ads, vms_conv.adb, vms_data.ads, | |
43951 | vxaddr2line.adb: Files added. Merge with ACT tree. | |
43952 | ||
43953 | * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads, | |
43954 | 5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb, | |
43955 | 5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads, | |
43956 | 5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c, | |
43957 | g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb, | |
43958 | s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads, | |
43959 | s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads, | |
43960 | s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads, | |
43961 | s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads, | |
43962 | s-expssi.ads, style.adb: Files removed. Merge with ACT tree. | |
43963 | ||
43964 | * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads, | |
43965 | 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads, | |
43966 | 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, | |
43967 | 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads, | |
43968 | 4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, | |
43969 | 4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads, | |
43970 | 4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, | |
43971 | 4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads, | |
43972 | 51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads, | |
43973 | 53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads, | |
43974 | 5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads, | |
43975 | 5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads, | |
43976 | 5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb, | |
43977 | 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads, | |
43978 | 5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads, | |
43979 | 5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads, | |
43980 | 5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads, | |
43981 | 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb, | |
43982 | 5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads, | |
43983 | 5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads, | |
43984 | 5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads, | |
43985 | 5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb, | |
43986 | 5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb, | |
43987 | 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads, | |
43988 | 5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb, | |
43989 | 5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads, | |
43990 | 5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb, | |
43991 | 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads, | |
43992 | 5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb, | |
43993 | 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb, | |
43994 | 5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb, | |
43995 | 5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, | |
43996 | 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb, | |
43997 | 5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, | |
43998 | 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, | |
43999 | 7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb, | |
44000 | 7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb, | |
44001 | a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads, | |
44002 | a-comlin.adb, adaint.c, adaint.h, ada-tree.def, | |
44003 | a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb, | |
44004 | a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads, | |
44005 | a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads, | |
44006 | ali.adb, ali.ads, ali-util.adb, ali-util.ads, | |
44007 | a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb, | |
44008 | a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb, | |
44009 | a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb, | |
44010 | a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb, | |
44011 | a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads, | |
44012 | a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb, | |
44013 | a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, | |
44014 | a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb, | |
44015 | a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb, | |
44016 | a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb, | |
44017 | a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads, | |
44018 | a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads, | |
44019 | atree.adb, atree.ads, a-witeio.adb, a-witeio.ads, | |
44020 | a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb, | |
44021 | a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb, | |
44022 | bcheck.adb, binde.adb, bindgen.adb, bindusg.adb, | |
44023 | checks.adb, checks.ads, cio.c, comperr.adb, | |
44024 | comperr.ads, csets.adb, cstand.adb, cstreams.c, | |
44025 | debug_a.adb, debug_a.ads, debug.adb, decl.c, | |
44026 | einfo.adb, einfo.ads, errout.adb, errout.ads, | |
44027 | eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb, | |
44028 | expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb, | |
44029 | exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, | |
44030 | exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads, | |
44031 | exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb, | |
44032 | exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c, | |
44033 | exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb, | |
44034 | exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb, | |
44035 | exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb, | |
44036 | fe.h, fmap.adb, fmap.ads, fname.adb, | |
44037 | fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb, | |
44038 | freeze.ads, frontend.adb, g-awk.adb, g-awk.ads, | |
44039 | g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads, | |
44040 | g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads, | |
44041 | g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads, | |
44042 | g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads, | |
44043 | g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads, | |
44044 | g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads, | |
44045 | g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads, | |
44046 | g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb, | |
44047 | g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb, | |
44048 | g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h, | |
44049 | g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads, | |
44050 | g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads, | |
44051 | gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb, | |
44052 | gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb, | |
44053 | gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb, | |
44054 | gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb, | |
44055 | gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb, | |
44056 | g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb, | |
44057 | g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads, | |
44058 | g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads, | |
44059 | g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads, | |
44060 | g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads, | |
44061 | g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb, | |
44062 | g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb, | |
44063 | g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads, | |
44064 | i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads, | |
44065 | i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c, | |
44066 | inline.adb, interfac.ads, i-pacdec.ads, itypes.adb, | |
44067 | itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h, | |
44068 | layout.adb, lib.adb, lib.ads, lib-list.adb, | |
44069 | lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb, | |
44070 | lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads, | |
44071 | link.c, live.adb, make.adb, make.ads, | |
44072 | Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb, | |
44073 | mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, | |
44074 | mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb, | |
44075 | misc.c, mkdir.c, mlib.adb, mlib.ads, | |
44076 | mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, | |
44077 | mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, | |
44078 | namet.adb, namet.ads, namet.h, nlists.ads, | |
44079 | nlists.h, nmake.adt, opt.adb, opt.ads, | |
44080 | osint.adb, osint.ads, osint-b.adb, osint-c.adb, | |
44081 | par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb, | |
44082 | par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, | |
44083 | par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb, | |
44084 | par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb, | |
44085 | prj.adb, prj.ads, prj-attr.adb, prj-attr.ads, | |
44086 | prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads, | |
44087 | prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads, | |
44088 | prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads, | |
44089 | prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads, | |
44090 | prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads, | |
44091 | prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads, | |
44092 | prj-util.adb, prj-util.ads, raise.c, raise.h, | |
44093 | repinfo.adb, repinfo.h, restrict.adb, restrict.ads, | |
44094 | rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads, | |
44095 | s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb, | |
44096 | s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb, | |
44097 | scans.ads, scn.adb, scn.ads, s-crc32.adb, | |
44098 | s-crc32.ads, s-direio.adb, sem.adb, sem.ads, | |
44099 | sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb, | |
44100 | sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb, | |
44101 | sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb, | |
44102 | sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, | |
44103 | sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads, | |
44104 | sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads, | |
44105 | sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb, | |
44106 | sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb, | |
44107 | sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads, | |
44108 | sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads, | |
44109 | sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb, | |
44110 | s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads, | |
44111 | s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads, | |
44112 | s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads, | |
44113 | s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb, | |
44114 | s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb, | |
44115 | s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads, | |
44116 | s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb, | |
44117 | sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb, | |
44118 | sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads, | |
44119 | sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads, | |
44120 | s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads, | |
44121 | s-memory.adb, s-memory.ads, snames.adb, snames.ads, | |
44122 | snames.h, s-osprim.ads, s-parame.ads, s-parint.ads, | |
44123 | s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb, | |
44124 | s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads, | |
44125 | s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads, | |
44126 | s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads, | |
44127 | s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads, | |
44128 | s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads, | |
44129 | s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads, | |
44130 | s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads, | |
44131 | s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb, | |
44132 | s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb, | |
44133 | s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb, | |
44134 | s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads, | |
44135 | s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads, | |
44136 | s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads, | |
44137 | s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, | |
44138 | s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads, | |
44139 | stringt.adb, stringt.ads, stringt.h, style.ads, | |
44140 | stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads, | |
44141 | s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb, | |
44142 | s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb, | |
44143 | switch.ads, switch-b.adb, switch-c.adb, switch-m.adb, | |
44144 | s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads, | |
44145 | table.adb, table.ads, targparm.adb, targparm.ads, | |
44146 | targtyps.c, tbuild.adb, tbuild.ads, tracebak.c, | |
44147 | trans.c, tree_io.adb, treepr.adb, treeprs.adt, | |
44148 | ttypes.ads, types.ads, types.h, uintp.adb, | |
44149 | uintp.ads, uintp.h, uname.adb, urealp.adb, | |
44150 | urealp.ads, urealp.h, usage.adb, utils2.c, | |
44151 | utils.c, validsw.adb, validsw.ads, widechar.adb, | |
44152 | xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads, | |
44153 | xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb, | |
44154 | einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb, | |
44155 | gnatvsn.ads: Merge with ACT tree. | |
44156 | ||
44157 | * gnatvsn.adb: Rewritten in a simpler and more efficient way. | |
44158 | ||
97ae108d MM |
44159 | 2003-10-20 Mark Mitchell <mark@codesourcery.com> |
44160 | ||
de696511 MM |
44161 | * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir. |
44162 | (gnat_ug_vmx.info): Likewise. | |
44163 | (gnat_ug_vxw.info): Likewise. | |
44164 | (gnat_ug_wnt.info): Likewise. | |
44165 | (gnat_rm.info): Likewise. | |
44166 | (gnat-style.info): Likewise. | |
44167 | ||
97ae108d MM |
44168 | * Make-lang.in (ada.install-info): Remove target. |
44169 | (info): New target. | |
44170 | (install-info): Likewise. | |
44171 | (gnat_ug_unx.info): Simplify rule. | |
44172 | (gnat_ug_vmx.info): Likewise. | |
44173 | (gnat_ug_vxw.info): Likewise. | |
44174 | (gnat_ug_wnt.info): Likewise. | |
44175 | (gnat_rm.info): Likewise. | |
44176 | (gnat-style.info): Likewise. | |
44177 | ||
43aba518 NN |
44178 | 2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org> |
44179 | ||
44180 | * Make-lang.in: Replace uses of $(target_alias) with | |
44181 | $(target_noncanonical). | |
44182 | * ada/Makefile.in: Remove unused mention of $(target_alias). | |
44183 | ||
62b81e45 MM |
44184 | 2003-10-06 Mark Mitchell <mark@codesourcery.com> |
44185 | ||
44186 | * Make-lang.in (ada.info): Replace with ... | |
44187 | (info): ... this. | |
44188 | (ada.dvi): Replace with ... | |
44189 | (dvi): ... this. | |
44190 | ||
783be936 ZW |
44191 | 2003-09-29 Zack Weinberg <zack@codesourcery.com> |
44192 | ||
44193 | * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to | |
44194 | initialize dconstp5 and dconstmp5. | |
44195 | ||
177560b2 RH |
44196 | 2003-09-28 Richard Henderson <rth@redhat.com> |
44197 | ||
44198 | * trans.c (tree_transform): Update call to expand_asm_operands. | |
44199 | ||
f31686a3 RH |
44200 | 2003-09-21 Richard Henderson <rth@redhat.com> |
44201 | ||
44202 | * trans.c, utils.c: Revert. | |
44203 | ||
7e2af53a RH |
44204 | 2003-09-21 Richard Henderson <rth@redhat.com> |
44205 | ||
44206 | * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and | |
44207 | change to const. | |
44208 | ||
5f1e32fa MM |
44209 | 2003-09-04 Michael Matz <matz@suse.de> |
44210 | ||
44211 | * misc.c: Include "target.h". | |
44212 | * Make-lang.in (misc.o): Add dependency on target.h. | |
44213 | ||
61f71b34 DD |
44214 | 2003-09-03 DJ Delorie <dj@redhat.com> |
44215 | ||
44216 | * misc.c (default_pass_by_ref): Convert to calls.return_in_memory | |
44217 | hook. | |
44218 | ||
2ed26f6b ZW |
44219 | 2003-08-30 Zack Weinberg <zack@codesourcery.com> |
44220 | ||
44221 | * Makefile.in: Update substitutions to match changes to | |
44222 | configure. Use include directives instead of @-insertions | |
44223 | to read in host and target fragments. Add a rule to | |
44224 | regenerate ada/Makefile. | |
44225 | ||
b2e608ca NB |
44226 | 2003-07-18 Neil Booth <neil@daikokuya.co.uk> |
44227 | ||
44228 | * lang-options.h: Remove. | |
44229 | * lang.opt: Add help text. | |
44230 | ||
0cea056b NS |
44231 | 2003-07-07 Nathan Sidwell <nathan@codesourcery.com> |
44232 | ||
44233 | * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note | |
44234 | calls. | |
44235 | ||
cb66e385 NB |
44236 | 2003-07-06 Neil Booth <neil@daikokuya.co.uk> |
44237 | ||
44238 | * misc.c (gnat_handle_option): Don't handle filenames. | |
44239 | ||
9e94c78f | 44240 | 2003-07-04 H.J. Lu <hongjiu.lu@intel.com> |
8c90b13a L |
44241 | |
44242 | * Make-lang.in: Replace PWD with PWD_COMMAND. | |
44243 | * Makefile.adalib: Likewise. | |
44244 | * Makefile.in: Likewise. | |
44245 | ||
9c286213 MK |
44246 | 2003-07-04 Matt Kraai <kraai@alumni.cmu.edu> |
44247 | ||
44248 | * misc.c (gnat_argv): Revert last change. | |
44249 | (gnat_handle_option, gnat_init_options): Copy arguments. | |
44250 | ||
b9add449 NB |
44251 | 2003-07-03 Neil Booth <neil@daikokuya.co.uk> |
44252 | ||
9c286213 | 44253 | * misc.c (gnat_argv): Make const. |
b9add449 | 44254 | |
836d77a9 NB |
44255 | 2003-07-02 Neil Booth <neil@daikokuya.co.uk> |
44256 | ||
44257 | * misc.c (save_argc, save_argv): Keep non-static! | |
44258 | ||
b86f6cd9 NB |
44259 | 2003-07-02 Neil Booth <neil@daikokuya.co.uk> |
44260 | ||
44261 | * misc.c (save_argc, save_argv): Make static. | |
44262 | (gnat_init_options): New prototype. | |
44263 | (gnat_init_options): Update. | |
44264 | ||
6344b1f1 MK |
44265 | 2003-07-01 Matt Kraai <kraai@alumni.cmu.edu> |
44266 | ||
44267 | * gnat_ug.texi: Remove unlikely characters from @vars. | |
44268 | * gnat_ug_vms.texi: Regenerate. | |
44269 | ||
2e040219 NS |
44270 | 2003-06-27 Nathan Sidwell <nathan@codesourcery.com> |
44271 | ||
44272 | * misc.c (record_code_position): Adjust emit_note call. | |
44273 | ||
9eee5e72 NB |
44274 | 2003-06-26 Neil Booth <neil@daikokuya.co.uk> |
44275 | ||
44276 | * misc.c (gnat_handle_option): Don't check for missing arguments. | |
44277 | ||
1f9cc6db NS |
44278 | 2003-06-20 Nathan Sidwell <nathan@codesourcery.com> |
44279 | ||
44280 | * utils.c (end_subprog_body): Adjust expand_function_end call. | |
44281 | ||
23d6baa3 MK |
44282 | 2003-06-16 Matt Kraai <kraai@alumni.cmu.edu> |
44283 | ||
44284 | * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test | |
44285 | Bind_Main_Program. | |
44286 | ||
be43ab4e NB |
44287 | 2003-06-15 Neil Booth <neil@daikokuya.co.uk> |
44288 | ||
44289 | * lang.opt: Declare Ada. | |
44290 | * misc.c (gnat_init_options): Update. | |
44291 | ||
ee6b0296 NS |
44292 | 2003-06-14 Nathan Sidwell <nathan@codesourcery.com> |
44293 | ||
44294 | * utils.c (begin_subprog_body): Adjust init_function_start call. | |
44295 | ||
d7b42618 NB |
44296 | 2003-06-14 Neil Booth <neil@daikokuya.co.uk> |
44297 | ||
44298 | * Make-lang.in: Update to use options.c and options.h. | |
44299 | * misc.c: Include options.h not aoptions.h. | |
44300 | (gnat_handle_option): Abort on unrecognized switch. | |
44301 | (gnat_init_options): Request Ada switches. | |
44302 | ||
57eb6503 NB |
44303 | 2003-06-14 Neil Booth <neil@daikokuya.co.uk> |
44304 | ||
44305 | * lang.opt: Add -Wall. | |
44306 | * misc.c (gnat_handle_option): Handle it. | |
44307 | ||
70fd6569 NB |
44308 | 2003-06-12 Neil Booth <neil@daikokuya.co.uk> |
44309 | ||
44310 | * misc.c (gnat_handle_option): Fix warnings. | |
44311 | ||
8cdea5a1 MK |
44312 | 2003-06-11 Matt Kraai <kraai@alumni.cmu.edu> |
44313 | ||
44314 | * Make-lang.in (gnatbind): Remove $(LIBIBERTY). | |
44315 | ||
3c900cb5 NB |
44316 | 2003-06-11 Neil Booth <neil@daikokuya.co.uk> |
44317 | ||
44318 | * Make-lang.in: Update to handle command-line options. | |
44319 | * lang.opt: New file. | |
44320 | * misc.c: Include aoptions.h. | |
44321 | (cl_options_count, cl_options): Remove. | |
44322 | (gnat_handle_option): New. | |
44323 | (gnat_decode_option): Remove. | |
44324 | (LANG_HOOKS_DECODE_OPTION): Remove. | |
44325 | (LANG_HOOKS_HANDLE_OPTION): Override. | |
44326 | ||
e8face4c NN |
44327 | 2003-06-10 Nathanael Nerode <neroden@gcc.gnu.org> |
44328 | ||
44329 | * init.c, misc.c, trans.c, utils.c: Remove dead code. | |
44330 | ||
4665e56c NN |
44331 | 2003-06-09 Nathanael Nerode <neroden@gcc.gnu.org> |
44332 | ||
44333 | * Makefile.in: Replace "host_canonical" with "host" for autoconf | |
44334 | substitution. | |
44335 | ||
a165c302 NB |
44336 | 2003-06-08 Neil Booth <neil@daikokuya.co.uk> |
44337 | ||
44338 | * Make-lang.in: Update. | |
44339 | * misc.c: Include opts.h. Define cl_options_count and cl_options. | |
44340 | ||
2772ef3e NB |
44341 | 2003-06-07 Neil Booth <neil@daikokuya.co.uk> |
44342 | ||
44343 | * misc.c (gnat_init_options): Update. | |
44344 | ||
d8277a55 MK |
44345 | 2003-06-05 Matt Kraai <kraai@alumni.cmu.edu> |
44346 | ||
44347 | * Make-lang.in (ada/b_gnatb.o-warn): Remove. | |
44348 | * bindgen.adb (Gen_Main_C): Mark ensure_reference with | |
44349 | __attribute__ ((__unused__)). | |
44350 | ||
602a82f3 | 44351 | 2003-06-05 Jan Hubicka <jh@suse.cz> |
8f231b5d JH |
44352 | |
44353 | * Make-lang.in: Add support for stageprofile and stagefeedback | |
44354 | ||
3aa07c6d MK |
44355 | 2003-06-05 Matt Kraai <kraai@alumni.cmu.edu> |
44356 | ||
44357 | * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C) | |
44358 | (Gen_Main_C, Gen_Output_File_C): Generate ISO C. | |
44359 | ||
f1093866 MK |
44360 | 2003-06-04 Matt Kraai <kraai@alumni.cmu.edu> |
44361 | ||
44362 | * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr): | |
44363 | Remove non-VMS directive. | |
44364 | (Switches for gnatlbr, Optimization Levels): Remove non-VMS | |
44365 | alternatives. | |
44366 | (Examples of gnatls Usage): Remove VMS alternative. | |
dee2df72 OH |
44367 | |
44368 | 2003-06-04 Olivier Hainque <hainque@act-europe.fr> | |
44369 | ||
6f7f72f9 | 44370 | PR ada/9953 |
2ed26f6b ZW |
44371 | * 5hsystem.ads: Remove pragma Linker_Option for pthreads library, |
44372 | and turn ZCX_By_Default back to False since the underlying support | |
44373 | is not quite there yet. | |
dee2df72 | 44374 | |
80eaf415 AJ |
44375 | 2003-06-01 Andreas Jaeger <aj@suse.de> |
44376 | ||
44377 | * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE | |
44378 | and ROUND_TYPE_SIZE_UNIT. | |
44379 | ||
9e94c78f | 44380 | 2003-05-22 Geert Bosch <bosch@gnat.com> |
36f9020c GB |
44381 | |
44382 | * gnat_rm.texi : Remove reference to Ada Core Technologies. | |
44383 | ||
e7b5f0c9 NS |
44384 | 2003-05-03 Nathan Sidwell <nathan@codesourcery.com> |
44385 | ||
44386 | * trans.c (tree_transform): Use location_t and input_location | |
44387 | directly. | |
44388 | (build_unit_elab): Likewise. | |
44389 | * utils.c (create_label_decl): Likewise. | |
44390 | ||
d479d37f NS |
44391 | 2003-05-01 Nathan Sidwell <nathan@codesourcery.com> |
44392 | ||
561712fe NS |
44393 | * trans.c (tree_transform, build_unit_elab, |
44394 | set_lineno): Rename lineno to input_line. | |
d479d37f NS |
44395 | * utils.c (pushdecl, create_label_decl, begin_subprog_body, |
44396 | end_subprog_body): Likewise. | |
44397 | * utils2.c (build_call_raise): Likewise. | |
44398 | ||
9e94c78f | 44399 | 2003-05-01 Laurent Guerby <guerby@acm.org> |
4f9335cd | 44400 | |
2ed26f6b ZW |
44401 | PR ada/10546 |
44402 | * 5iosinte.ads: Increase pthread_cond_t size to match recent | |
44403 | LinuxThread and NPTL version, merge from ACT. | |
80eaf415 | 44404 | |
0864034e ZW |
44405 | 2003-04-28 Zack Weinberg <zack@codesourcery.com> |
44406 | ||
44407 | * utils.c (convert): No need to clear TREE_CST_RTL. | |
44408 | ||
9e94c78f | 44409 | 2003-04-23 Geert Bosch <bosch@gnat.com> |
bcea76b6 GB |
44410 | |
44411 | * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb, | |
44412 | 1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads, | |
44413 | 3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads, | |
44414 | 3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, | |
44415 | 3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads, | |
44416 | 4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb, | |
44417 | 4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads, | |
44418 | 4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads, | |
44419 | 4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb, | |
44420 | 4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, | |
44421 | 4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, | |
44422 | 4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb, | |
44423 | 52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads, | |
44424 | 5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads, | |
44425 | 5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb, | |
44426 | 5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads, | |
44427 | 5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb, | |
44428 | 5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, | |
44429 | 5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb, | |
44430 | 5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads, | |
44431 | 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb, | |
44432 | 5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads, | |
44433 | 5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb, | |
44434 | 5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads, | |
44435 | 5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads, | |
44436 | 5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb, | |
44437 | 5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads, | |
44438 | 5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads, | |
44439 | 5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb, | |
44440 | 5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads, | |
44441 | 5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb, | |
44442 | 5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb, | |
44443 | 5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb, | |
44444 | 5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads, | |
44445 | 5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, | |
44446 | 5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb, | |
44447 | 5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb, | |
44448 | 5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads, | |
44449 | 5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, | |
44450 | 5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb, | |
44451 | 5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb, | |
44452 | 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads, | |
44453 | 5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads, | |
44454 | 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, | |
44455 | 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb, | |
44456 | 7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads, | |
44457 | 7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads, | |
44458 | 9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb, | |
44459 | a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb, | |
44460 | a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads, | |
44461 | a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads, | |
44462 | a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads, | |
44463 | a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads, | |
44464 | a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads, | |
44465 | a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads, | |
44466 | a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb, | |
44467 | a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads, | |
44468 | a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads, | |
44469 | a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads, | |
44470 | a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads, | |
44471 | a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads, | |
44472 | a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads, | |
44473 | a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads, | |
44474 | a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads, | |
44475 | a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads, | |
44476 | a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads, | |
44477 | a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads, | |
44478 | a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb, | |
44479 | a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads, | |
44480 | a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads, | |
44481 | a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads, | |
44482 | a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads, | |
44483 | a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb, | |
44484 | a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads, | |
44485 | a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads, | |
44486 | a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads, | |
44487 | a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads, | |
44488 | a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads, | |
44489 | a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads, | |
44490 | a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb, | |
44491 | a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb, | |
44492 | a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb, | |
44493 | a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb, | |
44494 | a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb, | |
44495 | a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb, | |
44496 | a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb, | |
44497 | a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb, | |
44498 | a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb, | |
44499 | a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb, | |
44500 | a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb, | |
44501 | a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads, | |
44502 | a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb, | |
44503 | a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb, | |
44504 | a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb, | |
44505 | a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb, | |
44506 | a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb, | |
44507 | a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb, | |
44508 | a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb, | |
44509 | a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb, | |
44510 | a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb, | |
44511 | a-wttest.ads, ada-tree.h, ada.ads, ada.h, | |
44512 | adadecode.c, adadecode.h, ali-util.adb, ali-util.ads, | |
44513 | ali.adb, ali.ads, alloc.ads, argv.c, | |
44514 | atree.adb, atree.ads, atree.h, aux-io.c, | |
44515 | back_end.adb, back_end.ads, bcheck.adb, bcheck.ads, | |
44516 | binde.adb, binde.ads, binderr.adb, binderr.ads, | |
44517 | bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads, | |
44518 | butil.adb, butil.ads, cal.c, calendar.ads, | |
44519 | casing.adb, casing.ads, ceinfo.adb, checks.adb, | |
44520 | checks.ads, cio.c, comperr.adb, comperr.ads, | |
44521 | config-lang.in, csets.adb, csets.ads, csinfo.adb, | |
44522 | cstand.adb, cstand.ads, cuintp.c, debug.adb, | |
44523 | debug.ads, debug_a.adb, debug_a.ads, dec-io.adb, | |
44524 | dec-io.ads, dec.ads, deftarg.c, directio.ads, | |
44525 | einfo.adb, einfo.ads, elists.adb, elists.ads, | |
44526 | elists.h, errno.c, errout.adb, errout.ads, | |
44527 | eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb, | |
44528 | exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads, | |
44529 | exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads, | |
44530 | exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads, | |
44531 | exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads, | |
44532 | exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads, | |
44533 | exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads, | |
44534 | exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads, | |
44535 | exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads, | |
44536 | exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads, | |
44537 | exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads, | |
44538 | exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads, | |
44539 | exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads, | |
44540 | exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads, | |
44541 | exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads, | |
44542 | fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads, | |
44543 | fname-uf.adb, fname-uf.ads, fname.adb, fname.ads, | |
44544 | freeze.adb, freeze.ads, frontend.adb, frontend.ads, | |
44545 | g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads, | |
44546 | g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads, | |
44547 | g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads, | |
44548 | g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads, | |
44549 | g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads, | |
44550 | g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb, | |
44551 | g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb, | |
44552 | g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb, | |
44553 | g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb, | |
44554 | g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads, | |
44555 | g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads, | |
44556 | g-htable.adb, g-htable.ads, g-io.adb, g-io.ads, | |
44557 | g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb, | |
44558 | g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb, | |
44559 | g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads, | |
44560 | g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb, | |
44561 | g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads, | |
44562 | g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb, | |
44563 | g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, | |
44564 | g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads, | |
44565 | g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads, | |
44566 | g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads, | |
44567 | get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads, | |
44568 | gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads, | |
44569 | gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads, | |
44570 | gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads, | |
44571 | gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb, | |
44572 | gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb, | |
44573 | gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads, | |
44574 | gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb, | |
44575 | hlo.adb, hlo.ads, hostparm.ads, i-c.adb, | |
44576 | i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads, | |
44577 | i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads, | |
44578 | i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads, | |
44579 | i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb, | |
44580 | i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb, | |
44581 | i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads, | |
44582 | inline.adb, inline.ads, interfac.ads, ioexcept.ads, | |
44583 | itypes.adb, itypes.ads, krunch.adb, krunch.ads, | |
44584 | layout.adb, layout.ads, lib-list.adb, lib-load.adb, | |
44585 | lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads, | |
44586 | lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads, | |
44587 | lib.adb, lib.ads, live.adb, live.ads, | |
44588 | machcode.ads, make.adb, make.ads, makeusg.adb, | |
44589 | makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads, | |
44590 | mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads, | |
44591 | memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb, | |
44592 | mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb, | |
44593 | mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb, | |
44594 | mlib.ads, namet.adb, namet.ads, nlists.adb, | |
44595 | nlists.ads, opt.adb, opt.ads, osint-b.adb, | |
44596 | osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb, | |
44597 | osint-l.ads, osint-m.adb, osint-m.ads, osint.adb, | |
44598 | osint.ads, output.adb, output.ads, par-ch10.adb, | |
44599 | par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, | |
44600 | par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, | |
44601 | par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb, | |
44602 | par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb, | |
44603 | par-tchk.adb, par-util.adb, par.adb, par.ads, | |
44604 | prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads, | |
44605 | prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads, | |
44606 | prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads, | |
44607 | prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, | |
44608 | prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads, | |
44609 | prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads, | |
44610 | prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads, | |
44611 | prj.adb, prj.ads, repinfo.adb, repinfo.ads, | |
44612 | restrict.adb, restrict.ads, rident.ads, rtsfind.adb, | |
44613 | rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb, | |
44614 | s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb, | |
44615 | s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb, | |
44616 | s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads, | |
44617 | s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads, | |
44618 | s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb, | |
44619 | s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads, | |
44620 | s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads, | |
44621 | s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads, | |
44622 | s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads, | |
44623 | s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads, | |
44624 | s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads, | |
44625 | s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb, | |
44626 | s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads, | |
44627 | s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads, | |
44628 | s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads, | |
44629 | s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads, | |
44630 | s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads, | |
44631 | s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads, | |
44632 | s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads, | |
44633 | s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads, | |
44634 | s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads, | |
44635 | s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads, | |
44636 | s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads, | |
44637 | s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads, | |
44638 | s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads, | |
44639 | s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb, | |
44640 | s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb, | |
44641 | s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads, | |
44642 | s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads, | |
44643 | s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads, | |
44644 | s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads, | |
44645 | s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads, | |
44646 | s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads, | |
44647 | s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads, | |
44648 | s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads, | |
44649 | s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads, | |
44650 | s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads, | |
44651 | s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads, | |
44652 | s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads, | |
44653 | s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads, | |
44654 | s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads, | |
44655 | s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads, | |
44656 | s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads, | |
44657 | s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads, | |
44658 | s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads, | |
44659 | s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads, | |
44660 | s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads, | |
44661 | s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads, | |
44662 | s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads, | |
44663 | s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads, | |
44664 | s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads, | |
44665 | s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads, | |
44666 | s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads, | |
44667 | s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads, | |
44668 | s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads, | |
44669 | s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads, | |
44670 | s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads, | |
44671 | s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads, | |
44672 | s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb, | |
44673 | s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads, | |
44674 | s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads, | |
44675 | s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads, | |
44676 | s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads, | |
44677 | s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads, | |
44678 | s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads, | |
44679 | s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb, | |
44680 | s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb, | |
44681 | s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb, | |
44682 | s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads, | |
44683 | s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads, | |
44684 | s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads, | |
44685 | s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads, | |
44686 | s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb, | |
44687 | s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb, | |
44688 | s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb, | |
44689 | s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb, | |
44690 | s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb, | |
44691 | s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads, | |
44692 | s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads, | |
44693 | s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads, | |
44694 | s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads, | |
44695 | s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads, | |
44696 | s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads, | |
44697 | s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads, | |
44698 | s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads, | |
44699 | s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads, | |
44700 | s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb, | |
44701 | s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb, | |
44702 | s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb, | |
44703 | s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb, | |
44704 | s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb, | |
44705 | s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb, | |
44706 | s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb, | |
44707 | scn-slit.adb, scn.adb, scn.ads, sdefault.ads, | |
44708 | sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads, | |
44709 | sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads, | |
44710 | sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads, | |
44711 | sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads, | |
44712 | sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads, | |
44713 | sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads, | |
44714 | sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads, | |
44715 | sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads, | |
44716 | sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads, | |
44717 | sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads, | |
44718 | sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads, | |
44719 | sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads, | |
44720 | sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads, | |
44721 | sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads, | |
44722 | sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads, | |
44723 | sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads, | |
44724 | sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb, | |
44725 | sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb, | |
44726 | sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb, | |
44727 | sinput-p.ads, sinput.adb, sinput.ads, snames.adb, | |
44728 | snames.ads, sprint.adb, sprint.ads, stand.adb, | |
44729 | stand.ads, stringt.adb, stringt.ads, style.adb, | |
44730 | style.ads, stylesw.adb, stylesw.ads, switch-b.adb, | |
44731 | switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb, | |
44732 | switch-m.ads, switch.adb, switch.ads, system.ads, | |
44733 | table.adb, table.ads, targparm.adb, targparm.ads, | |
44734 | tbuild.adb, tbuild.ads, text_io.ads, trans.c, | |
44735 | tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads, | |
44736 | tree_io.adb, tree_io.ads, treepr.adb, treepr.ads, | |
44737 | ttypef.ads, ttypes.ads, types.adb, types.ads, | |
44738 | uintp.adb, uintp.ads, uname.adb, uname.ads, | |
44739 | unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads, | |
44740 | usage.adb, usage.ads, validsw.adb, validsw.ads, | |
44741 | widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb, | |
44742 | xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads, | |
44743 | xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header, | |
44744 | formatting and other trivial changes from ACT. | |
44745 | ||
dcf92453 ZW |
44746 | 2003-04-12 Zack Weinberg <zack@codesourcery.com> |
44747 | ||
44748 | * gigi.h, utils2.c (build_constructor): | |
44749 | Rename gnat_build_constructor. Use build_constructor. | |
44750 | * decl.c (gnat_to_gnu_entity) | |
44751 | * trans.c (tree_transform, pos_to_constructor, extract_values) | |
44752 | * ada/utils.c (build_template, convert_to_fat_pointer, convert) | |
44753 | (unchecked_convert) | |
44754 | * ada/utils2.c (build_binary_op, build_call_raise, build_allocator) | |
44755 | (fill_vms_descriptor): | |
44756 | Update to match. | |
44757 | ||
d78e771d ZW |
44758 | 2003-04-06 Zack Weinberg <zack@codesourcery.com> |
44759 | ||
44760 | * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero. | |
44761 | * misc.c (gnat_tree_size): New function. | |
44762 | (LANG_HOOKS_TREE_SIZE): Override. | |
44763 | ||
78d55cc8 JM |
44764 | 2003-04-03 Jason Merrill <jason@redhat.com> |
44765 | ||
44766 | * misc.c (gnat_adjust_rli): #if 0. | |
44767 | ||
9e94c78f | 44768 | 2003-03-31 Geert Bosch <bosch@gnat.com> |
b174e2d4 GB |
44769 | |
44770 | PR ada/10020 | |
44771 | * link.c : Fix misspelled "const" keyword | |
44772 | ||
f29a2bd1 MM |
44773 | 2003-03-23 Mark Mitchell <mark@codesourcery.com> |
44774 | ||
44775 | PR c++/7086 | |
44776 | * utils2.c: Adjust calls to put_var_into_stack. | |
44777 | ||
08e247b1 NN |
44778 | 2003-03-12 Nathanael Nerode <neroden@gcc.gnu.org> |
44779 | ||
44780 | * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC. | |
44781 | ||
4bfec483 NB |
44782 | 2003-03-08 Neil Booth <neil@daikokuya.co.uk> |
44783 | ||
44784 | * misc.c (gnat_init): Update for new prototype. | |
44785 | ||
3d713bb8 GB |
44786 | 2003-03-05 Olivier Hainque <hainque@gnat.com> |
44787 | ||
44788 | ada/9961 | |
78d55cc8 JM |
44789 | * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid |
44790 | warning, and fix return type for the IN_RTS && !SJLJ case. | |
3d713bb8 | 44791 | |
8b89fcdf TT |
44792 | 2003-03-04 Tom Tromey <tromey@redhat.com> |
44793 | ||
44794 | * Make-lang.in (ada.tags): New target. | |
44795 | ||
3d713bb8 | 44796 | 2003-03-04 Olivier Hainque <hainque@act-europe.fr> |
23cae84f OH |
44797 | |
44798 | ada/9911 | |
44799 | * a-except.adb (Unwind_RaiseException): Import a GNAT specific | |
44800 | wrapper, which name remains constant whatever underlying GCC | |
44801 | scheme. | |
44802 | ||
44803 | * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing | |
44804 | the stable interface needed for a-except. | |
44805 | ||
f4ae98be AJ |
44806 | 2003-03-02 Andreas Jaeger <aj@suse.de> |
44807 | ||
44808 | * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi, | |
44809 | gnat_ug_wnt.texi: Regenerate. | |
44810 | ||
9e94c78f | 44811 | 2003-03-02 Laurent Guerby <guerby@acm.org> |
5348742b | 44812 | |
f4ae98be | 44813 | * Makefile.in (install-gnatlib): Match previous change there |
5348742b | 44814 | so it works. |
f4ae98be | 44815 | |
8c108db2 AS |
44816 | 2003-02-28 Andreas Schwab <schwab@suse.de> |
44817 | ||
44818 | * Make-lang.in (install-gnatlib): Change to ada directory before | |
44819 | running make instead of using ada/Makefile directly. | |
44820 | ||
601d71bc BE |
44821 | 2003-02-18 Ben Elliston <bje@redhat.com> |
44822 | ||
6f7f72f9 | 44823 | Part of PR ada/9406 |
601d71bc BE |
44824 | * gnat_ug.texi (Binder output file): Grammar fix. |
44825 | ||
bf7c02dd BE |
44826 | 2003-02-18 Ben Elliston <bje@redhat.com> |
44827 | ||
44828 | PR other/7350 | |
44829 | * 5qtaprop.adb (Sleep): Fix typo in comment. | |
44830 | ||
b3a8389d JM |
44831 | 2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk> |
44832 | ||
44833 | * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2. | |
44834 | * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi, | |
44835 | gnat_ug_wnt.texi: Regenerate. | |
44836 | ||
9e94c78f | 44837 | 2003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de> |
5da14cb5 CC |
44838 | |
44839 | * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir) | |
44840 | be created if necessary. | |
44841 | (ada.install-common): Let $(DESTDIR)$(bindir) be created | |
44842 | if necessary. Remove erroneous and redundant gnatchop | |
44843 | installation commands. Test for gnatdll before attempting | |
44844 | to install it. | |
44845 | (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr, | |
44846 | and gnatdll from all plausible locations. | |
44847 | ||
271bd540 RS |
44848 | 2003-02-01 Richard Sandiford <rsandifo@redhat.com> |
44849 | ||
44850 | * utils2.c (build_unary_op): Don't check flag_volatile. | |
44851 | * gnat_ug.texi: Remove -fvolatile from example. | |
44852 | * gnat_ug_vxw.texi: Likewise. | |
44853 | ||
9e94c78f | 44854 | 2003-01-29 Laurent Guerby <guerby@acm.org> |
c1cc6a51 | 44855 | |
d78e771d ZW |
44856 | PR ada/8344 |
44857 | * final.c: rename to adafinal.c to avoid file name conflicts with gcc file. | |
44858 | * Makefile.in: match previous change. | |
44859 | * Make-lang.in: match previous change. | |
c1cc6a51 | 44860 | |
9e94c78f | 44861 | 2003-01-29 Joel Sherrill <joel@OARcorp.com> |
c4039eb0 JS |
44862 | |
44863 | * 5rosinte.ads: Add SIGXCPU. | |
44864 | * 5rtpopsp.adb: New file. | |
44865 | * Make-lang.in: Do not build gnatpsta and gnatpsys when cross. | |
44866 | * Makefile.in: Recognize more RTEMS targets and add the RTEMS | |
44867 | specific file 5rtpopsp.adb. | |
44868 | * adaint.h: Add include of <stdio.h> when target is RTEMS. This | |
44869 | is likely needed for all newlib targets. | |
44870 | * init.c: Add RTEMS specific version of __gnat_initialize(). | |
44871 | ||
00d29f7d RO |
44872 | 2003-01-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
44873 | ||
44874 | * adaint.c, adaint.h, gmem.c, init.c: Update copyright year. | |
44875 | ||
437026ef RO |
44876 | 2003-01-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
44877 | ||
44878 | * init.c (__gnat_error_handler): Make msg const. | |
44879 | ||
44880 | * gmem.c (convert_addresses): Move declaration ... | |
44881 | * adaint.h: ... here. | |
44882 | * adaint.c (convert_addresses): Adapt addrs type to match | |
44883 | prototype. | |
44884 | ||
44885 | * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format. | |
44886 | ||
e12825cd AS |
44887 | 2003-01-24 Andreas Schwab <schwab@suse.de> |
44888 | ||
44889 | * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to | |
44890 | size_t to avoid warning. | |
44891 | ||
a8729406 ZW |
44892 | 2003-01-21 Zack Weinberg <zack@codesourcery.com> |
44893 | ||
b09b91b9 | 44894 | * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c. |
a8729406 | 44895 | |
17211ab5 GK |
44896 | 2003-01-09 Geoffrey Keating <geoffk@apple.com> |
44897 | ||
44898 | * gnat_rm.texi: Remove RCS version number. | |
44899 | ||
44900 | * ada-tree.h (union lang_tree_node): Add chain_next option. | |
44901 | ||
1d27195c CC |
44902 | 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de> |
44903 | ||
44904 | * Make-lang.in (ada.install-info, ada.install-common, | |
44905 | ada.uninstall): Prepend $(DESTDIR) to the destination | |
44906 | directory in all (un)installation commands. | |
44907 | * Makefile.in (install-gnatlib, install-rts): Ditto. | |
44908 | ||
bdefb2ab JM |
44909 | 2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk> |
44910 | ||
44911 | * gnat_rm.texi, gnat_ug.texi: Use @copying. | |
44912 | * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi, | |
44913 | gnat_ug_wnt.texi: Regenerate. | |
44914 | ||
46d40353 JM |
44915 | 2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk> |
44916 | ||
44917 | * gnat_rm.texi: Include gcc-common.texi. Use GCC version number | |
44918 | only. | |
44919 | * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info, | |
44920 | $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info, | |
44921 | $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info, | |
44922 | ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi, | |
44923 | ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on | |
44924 | $(srcdir)/doc/include/gcc-common.texi. | |
44925 | ||
9e94c78f | 44926 | 2002-12-15 Geert Bosch <bosch@gnat.com> |
d2f97d3e GB |
44927 | |
44928 | * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting | |
44929 | ||
9e94c78f | 44930 | 2002-12-14 Geert Bosch <bosch@gnat.com> |
93a81b02 | 44931 | |
6f7f72f9 | 44932 | PR ada/5690 |
4977bab6 ZW |
44933 | * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional |
44934 | case of a body created for a Renaming_As_Body, on which | |
6f7f72f9 | 44935 | conformance checks are not performed. |
4977bab6 ZW |
44936 | |
44937 | 2002-11-30 Zack Weinberg <zack@codesourcery.com> | |
44938 | ||
44939 | * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c, | |
44940 | utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when | |
44941 | not already included. | |
44942 | * Make-lang.in: Update dependencies. | |
93a81b02 | 44943 | |
dfc15546 NN |
44944 | 2002-11-18 Nathanael Nerode <neroden@gcc.gnu.org> |
44945 | * adaint.c (__gnat_tmp_name): Better, but good enough for now, | |
4977bab6 | 44946 | solution to buffer overflow bug on GNU/Linux. |
dfc15546 | 44947 | |
8b54424d | 44948 | 2002-11-14 Nathanael Nerode <neroden@gcc.gnu.org> |
6f7f72f9 EB |
44949 | |
44950 | PR ada/5856 | |
44951 | PR ada/6919 | |
8b54424d NN |
44952 | * bindgen.adb: Remove all references to Public_Version. |
44953 | * comperr.adb: Remove all references to Public_Version and | |
44954 | GNATPRO_Version; correct bug reporting instructions. | |
44955 | * comperr.ads: Change to match bug box. | |
44956 | * gnatvsn.ads: Remove all references to Public version and | |
44957 | GNATPRO version. | |
44958 | ||
cc41268d | 44959 | 2002-11-13 Nathanael Nerode <neroden@gcc.gnu.org> |
6f7f72f9 | 44960 | |
1a083c0e NN |
44961 | PR ada/6919 |
44962 | * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on | |
44963 | GNU/Linux. | |
44964 | ||
cc41268d NN |
44965 | PR ada/6558 |
44966 | * config-lang.in: Remove diff_excludes. | |
44967 | ||
1c7b0712 | 44968 | 2002-11-05 Graham Stott <graham.stott@btinternet.com> |
6f7f72f9 | 44969 | |
1c7b0712 GS |
44970 | PR ada/8358 |
44971 | * trans.c (gnu_pending_elaboration_lists): New GC root. | |
4977bab6 | 44972 | (build_unit_elab): Use.. |
1c7b0712 | 44973 | |
9e94c78f | 44974 | 2002-10-30 Geert Bosch <bosch@gnat.com> |
6f7f72f9 | 44975 | |
1c4048ca GB |
44976 | PR ada/6558 |
44977 | * misc.c : Include optabs.h | |
44978 | ||
44979 | * Make-lang.in (misc.o): Add dependency on optabs.h | |
44980 | ||
9e94c78f | 44981 | 2002-10-29 Geert Bosch <bosch@gnat.com> |
6f7f72f9 | 44982 | |
4977bab6 | 44983 | PR ada/6558 |
f0d96f9c GB |
44984 | * Make-lang.in (gnatbind): Depend on CONFIG_H |
44985 | ||
a7512dec | 44986 | 2002-10-29 Geert bosch <bosch@gnat.com> |
6f7f72f9 | 44987 | |
4977bab6 ZW |
44988 | PR ada/6558 |
44989 | * misc.c: Unrevert misc.c (1.13) | |
a7512dec | 44990 | |
c6362f4f NN |
44991 | 2002-10-28 Nathanael Nerode <neroden@gcc.gnu.org> |
44992 | ||
44993 | * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update | |
44994 | maintainership comments. | |
44995 | ||
44996 | 2002-09-25 Nathanael Nerode <neroden@gcc.gnu.org> | |
6f7f72f9 | 44997 | |
91ed4b19 | 44998 | PR ada/5904 |
4977bab6 ZW |
44999 | * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb |
45000 | 5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb | |
45001 | 5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb | |
45002 | 7staprop.adb: Correct statements in comments about | |
91ed4b19 NN |
45003 | maintainership of GNAT. |
45004 | ||
1f02b6af | 45005 | PR ada/5904 |
4977bab6 ZW |
45006 | * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c |
45007 | gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads | |
45008 | osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb | |
45009 | osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads | |
45010 | s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb | |
45011 | s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb | |
45012 | sinput-d.ads switch-b.adb switch-b.ads switch-c.adb | |
1f02b6af NN |
45013 | switch-c.ads switch-m.adb switch-m.ads: Correct statements in |
45014 | comments about maintainership of GNAT. | |
45015 | ||
71ff80dc | 45016 | PR ada/6919 (forward port of patch for PR ada/5904) |
4977bab6 ZW |
45017 | * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads |
45018 | 4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb | |
45019 | 4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads | |
45020 | 4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads | |
45021 | 4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb | |
45022 | 4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb | |
45023 | 4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb | |
45024 | 52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads | |
45025 | 5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads | |
45026 | 5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads | |
45027 | 5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads | |
45028 | 5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb | |
45029 | 5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads | |
45030 | 5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads | |
45031 | 5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads | |
45032 | 5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads | |
45033 | 5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads | |
45034 | 5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads | |
45035 | 5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb | |
45036 | 5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads | |
45037 | 5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads | |
45038 | 5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb | |
45039 | 5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads | |
45040 | 5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb | |
45041 | 5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb | |
45042 | 5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb | |
45043 | 5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb | |
45044 | 5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb | |
45045 | 7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb | |
45046 | a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb | |
45047 | a-chahan.ads a-colien.adb a-colien.ads a-colire.adb | |
45048 | a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads | |
45049 | a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads | |
45050 | a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads | |
45051 | a-except.adb a-except.ads a-excpol.adb a-exctra.adb | |
45052 | a-exctra.ads a-filico.adb a-filico.ads a-finali.adb | |
45053 | a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads | |
45054 | a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb | |
45055 | a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads | |
45056 | a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb | |
45057 | a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb | |
45058 | a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb | |
45059 | a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads | |
45060 | a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads | |
45061 | a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads | |
45062 | a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads | |
45063 | a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb | |
45064 | a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb | |
45065 | a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads | |
45066 | a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads | |
45067 | a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads | |
45068 | a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads | |
45069 | a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads | |
45070 | a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads | |
45071 | a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads | |
45072 | a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads | |
45073 | a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads | |
45074 | a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads | |
45075 | a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads | |
45076 | a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb | |
45077 | a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads | |
45078 | a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads | |
45079 | a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads | |
45080 | a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads | |
45081 | a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads | |
45082 | a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads | |
45083 | a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb | |
45084 | a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h | |
45085 | adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads | |
45086 | alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb | |
45087 | back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads | |
45088 | binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb | |
45089 | bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads | |
45090 | ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads | |
45091 | csets.adb csets.ads csinfo.adb cstand.adb cstand.ads | |
45092 | cstreams.c cuintp.c debug.adb debug.ads debug_a.adb | |
45093 | debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c | |
45094 | einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h | |
45095 | errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c | |
45096 | exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads | |
45097 | exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb | |
45098 | exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads | |
45099 | exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb | |
45100 | exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads | |
45101 | exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb | |
45102 | exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb | |
45103 | exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb | |
45104 | exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb | |
45105 | exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb | |
45106 | exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb | |
45107 | exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads | |
45108 | exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h | |
45109 | final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads | |
45110 | fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb | |
45111 | freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb | |
45112 | g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads | |
45113 | g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h | |
45114 | gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb | |
45115 | gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb | |
45116 | gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb | |
45117 | gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads | |
45118 | gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads | |
45119 | gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads | |
45120 | i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb | |
45121 | i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads | |
45122 | i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads | |
45123 | i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads | |
45124 | impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c | |
45125 | itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h | |
45126 | lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb | |
45127 | lib-load.ads lib-sort.adb lib-util.adb lib-util.ads | |
45128 | lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb | |
45129 | lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb | |
45130 | makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c | |
45131 | namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h | |
45132 | nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb | |
45133 | osint.ads output.adb output.ads par-ch10.adb par-ch11.adb | |
45134 | par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb | |
45135 | par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb | |
45136 | par-endh.adb par-labl.adb par-load.adb par-prag.adb | |
45137 | par-sync.adb par-tchk.adb par-util.adb par.adb par.ads | |
45138 | prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb | |
45139 | prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads | |
45140 | prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads | |
45141 | prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads | |
45142 | prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads | |
45143 | prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h | |
45144 | repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads | |
45145 | rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads | |
45146 | s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads | |
45147 | s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb | |
45148 | s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads | |
45149 | s-direio.adb s-direio.ads s-except.ads s-exctab.adb | |
45150 | s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads | |
45151 | s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads | |
45152 | s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads | |
45153 | s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads | |
45154 | s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads | |
45155 | s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads | |
45156 | s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb | |
45157 | s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads | |
45158 | s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads | |
45159 | s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads | |
45160 | s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb | |
45161 | s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb | |
45162 | s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb | |
45163 | s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb | |
45164 | s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb | |
45165 | s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb | |
45166 | s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb | |
45167 | s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb | |
45168 | s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads | |
45169 | s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb | |
45170 | s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads | |
45171 | s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads | |
45172 | s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads | |
45173 | s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads | |
45174 | s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads | |
45175 | s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads | |
45176 | s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads | |
45177 | s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads | |
45178 | s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads | |
45179 | s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads | |
45180 | s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads | |
45181 | s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads | |
45182 | s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads | |
45183 | s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads | |
45184 | s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads | |
45185 | s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads | |
45186 | s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads | |
45187 | s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads | |
45188 | s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads | |
45189 | s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads | |
45190 | s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads | |
45191 | s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads | |
45192 | s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads | |
45193 | s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads | |
45194 | s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads | |
45195 | s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads | |
45196 | s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads | |
45197 | s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads | |
45198 | s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads | |
45199 | s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads | |
45200 | s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads | |
45201 | s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads | |
45202 | s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads | |
45203 | s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb | |
45204 | s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb | |
45205 | s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb | |
45206 | s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb | |
45207 | s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb | |
45208 | s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb | |
45209 | s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads | |
45210 | s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads | |
45211 | s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads | |
45212 | s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads | |
45213 | s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads | |
45214 | s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads | |
45215 | s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads | |
45216 | s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads | |
45217 | s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads | |
45218 | s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads | |
45219 | s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads | |
45220 | s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads | |
45221 | s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb | |
45222 | s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb | |
45223 | s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb | |
45224 | s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb | |
45225 | s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb | |
45226 | s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb | |
45227 | s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads | |
45228 | scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb | |
45229 | sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads | |
45230 | sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb | |
45231 | sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb | |
45232 | sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads | |
45233 | sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb | |
45234 | sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads | |
45235 | sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb | |
45236 | sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb | |
45237 | sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb | |
45238 | sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb | |
45239 | sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb | |
45240 | sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads | |
45241 | sem_type.adb sem_type.ads sem_util.adb sem_util.ads | |
45242 | sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads | |
45243 | sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb | |
45244 | sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb | |
45245 | sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads | |
45246 | snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb | |
45247 | stringt.ads stringt.h style.adb style.ads stylesw.adb | |
45248 | stylesw.ads switch.adb switch.ads sysdep.c system.ads | |
45249 | table.adb table.ads targparm.adb targparm.ads targtyps.c | |
45250 | tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads | |
45251 | tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb | |
45252 | treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads | |
45253 | types.adb types.ads types.h uintp.adb uintp.ads uintp.h | |
45254 | uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb | |
45255 | usage.ads utils.c utils2.c validsw.adb validsw.ads | |
45256 | widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb | |
45257 | xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb | |
71ff80dc NN |
45258 | xtreeprs.adb: Correct statements in comments about maintainership |
45259 | of GNAT. | |
45260 | ||
b4f94ac1 ZW |
45261 | 2002-09-23 Zack Weinberg <zack@codesourcery.com> |
45262 | ||
45263 | * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o. | |
45264 | * Makefile.in (TOOLS_LIBS): Add ../../version.o. | |
45265 | * gnatvsn.ads: Gnat_Version_String is now a function. | |
45266 | * gnatvsn.adb: New file. When asked for Gnat_Version_String, | |
45267 | copy the C version_string into a String and return it. | |
45268 | * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb, | |
45269 | gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb: | |
45270 | Remove pragma Ident (Gnat_Version_String). If this was the | |
45271 | sole use of package Gnatvsn, remove the with statement too. | |
45272 | * gnat1drv.adb: Tweak -gnatv output. | |
45273 | ||
eaff3bf8 RH |
45274 | 2002-09-17 Richard Henderson <rth@redhat.com> |
45275 | ||
45276 | * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP. | |
45277 | * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN. | |
45278 | * config/mips/mips.md (fixuns_truncdfsi2): Likewise. | |
45279 | (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise. | |
45280 | * config/m68k/m68k.c (floating_exact_log2): Use real_exponent | |
45281 | and real_2expN instead of a loop. | |
45282 | * doc/tm.texi (REAL_VALUE_LDEXP): Remove. | |
45283 | (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove. | |
45284 | ||
9e94c78f EB |
45285 | 2002-08-25 Andre Leis <a.leis@gmx.net> |
45286 | David Billinghurst <David.Billinghurst@riotinto.com> | |
d241f75b | 45287 | |
f4ae98be | 45288 | * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin |
d241f75b | 45289 | |
4320085a RO |
45290 | 2002-08-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
45291 | ||
45292 | * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS). | |
45293 | Remove $(CONFIG_H) dependency. | |
45294 | ||
22aa533e NS |
45295 | 2002-08-08 Nathan Sidwell <nathan@codesourcery.com> |
45296 | ||
45297 | * ada/Make-lang.in (ada.mostlyclean): Remove coverage files. | |
45298 | ||
1dcd444b KG |
45299 | 2002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
45300 | ||
45301 | * adadecode.c (ada_demangle): Use xstrdup in lieu of | |
45302 | xmalloc/strcpy. | |
45303 | * misc.c (gnat_decode_option): Likewise. | |
45304 | ||
7bc7d27b FW |
45305 | 2002-07-15 Florian Weimer <fw@deneb.enyo.de> |
45306 | ||
45307 | * make.adb (Add_Switch): Make Generic_Position a procedure. The | |
45308 | function approach did not work well because of a side effect (the | |
45309 | function call could reallocate the table which was being indexed | |
45310 | using its result). Fixes ada/4851. [RESURRECTED] | |
45311 | ||
6a2dd09a RS |
45312 | 2002-07-01 Roger Sayle <roger@eyesopen.com> |
45313 | ||
45314 | * ada/utils.c (builtin_function): Accept an additional parameter. | |
45315 | ||
c168bbd7 AJ |
45316 | 2002-06-28 Andreas Jaeger <aj@suse.de> |
45317 | ||
45318 | PR ada/7144 | |
45319 | * Makefile.in: Fix typo in comment, patch by Adrian Knoth | |
45320 | <adi@thur.de>. | |
45321 | ||
b41e09a7 KG |
45322 | 2002-06-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
45323 | ||
45324 | * Makefile.in (SHELL): Set to @SHELL@. | |
45325 | ||
62c71f4b KG |
45326 | 2002-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
45327 | ||
45328 | * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit | |
45329 | array size calculation. | |
45330 | ||
94213cff AJ |
45331 | 2002-06-04 Andreas Jaeger <aj@suse.de> |
45332 | ||
45333 | * Make-lang.in (gnatbind): Readd rule that has been lost in last | |
45334 | patch. | |
45335 | ||
e2500fed GK |
45336 | 2002-06-03 Geoffrey Keating <geoffk@redhat.com> |
45337 | ||
45338 | Merge from pch-branch: | |
45339 | ||
45340 | * config-lang.in (gtfiles): Add ada-tree.h. | |
45341 | * ada-tree.h (SET_TYPE_CI_CO_LIST): New. | |
45342 | (SET_TYPE_MODULUS): New. | |
45343 | (SET_TYPE_INDEX): New. | |
45344 | (SET_TYPE_DIGITS_VALUE): New. | |
45345 | (SET_TYPE_RM_SIZE): New. | |
45346 | (SET_TYPE_UNCONSTRAINED_ARRAY): New. | |
45347 | (SET_TYPE_ADA_SIZE): New. | |
45348 | (SET_TYPE_ACTUAL_BOUNDS): New. | |
45349 | (SET_DECL_CONST_CORRESPONDING_VAR): New. | |
45350 | (SET_DECL_ORIGINAL_FIELD): New. | |
45351 | (TREE_LOOP_ID): Correct typo. | |
45352 | * decl.c: Use new macros. | |
45353 | * utils.c: Include debug.h, use new macros. | |
94213cff | 45354 | * utils2.c: Use new macros. |
e2500fed GK |
45355 | |
45356 | * ada-tree.h: Update all macros for new tree description. | |
45357 | (struct tree_loop_id): New. | |
45358 | (union lang_tree_node): New. | |
45359 | (struct lang_decl): New. | |
45360 | (struct lang_type): New. | |
45361 | * misc.c (gnat_mark_tree): Delete. | |
45362 | (LANG_HOOKS_MARK_TREE): Delete. | |
45363 | * trans.c (tree_transform): No longer any need to cast | |
45364 | for TREE_LOOP_ID. | |
45365 | ||
45366 | * utils.c (struct language_function): New dummy structure. | |
45367 | ||
45368 | * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir. | |
45369 | (misc.o): Likewise. | |
45370 | (utils.o): Likewise; also gtype-ada.h. | |
45371 | * Make-lang.in (gnat1): Add dependency on s-gtype. | |
45372 | (gnatbind): Add dependency on $(CONFIG_H). | |
45373 | * utils.c: Correct last #include. | |
45374 | (stuct e_stack): Remove unnecessary 'static'. | |
45375 | (mark_e_stack): Remove unused prototype. | |
45376 | ||
45377 | * scn-nlit.adb: Remove whitespace after version number to | |
45378 | keep lines under 80 chars. | |
45379 | * snames.adb: Likewise. | |
45380 | * treepr.ads: Likewise. | |
94213cff | 45381 | |
e2500fed GK |
45382 | * Makefile.in (decl.o): Include gt-ada-<filename>.h. |
45383 | (misc.o): Likewise. | |
45384 | (utils.o): Include gt-ada-<filename>.h and gtype-ada.h. | |
45385 | * config-lang.in (gtfiles): New. | |
45386 | * decl.c: Use gengtype for roots. | |
45387 | * gigi.h: Use gengtype for roots. | |
45388 | * trans.c: Use gengtype for roots. | |
45389 | * utils.c: Use gengtype for roots, marking. Include gtype-ada.h. | |
45390 | ||
27e511e0 GDR |
45391 | 2002-06-02 Gabriel Dos Reis <gdr@codesourcery.com> |
45392 | ||
45393 | * misc.c (gnat_init): Adjust setting of internal_error_function. | |
45394 | ||
113dc143 JM |
45395 | 2002-06-01 Joseph S. Myers <jsm28@cam.ac.uk> |
45396 | ||
45397 | * gnat_ug.texi: Use @ifnottex instead of @ifinfo. | |
45398 | * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi, | |
45399 | gnat_ug_wnt.texi: Regenerate. | |
45400 | ||
5321fb3e FW |
45401 | 2002-05-31 Florian Weimer <fw@deneb.enyo.de> |
45402 | ||
15e6136e FW |
45403 | * 5ntaprop.adb (with System.OS_Primitives): Remove. |
45404 | ||
019310ac FW |
45405 | * cstreams.c (max_path_len): Move from here ... |
45406 | * adaint.c (__gnat_max_path_len): ... to here. | |
45407 | * adaint.c (__gnat_max_path_len): Declare. | |
45408 | * g-dirope.adb (Max_Path): Adjust. | |
45409 | * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust. | |
94213cff | 45410 | * i-cstrea.ads (max_path_len): Adjust. |
019310ac FW |
45411 | * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust. |
45412 | * xr_tabls.adb (Dir_Name.Max_Path: Adjust. | |
45413 | ||
5321fb3e FW |
45414 | * Makefile.in, Make-lang.in: Documentation is now built in |
45415 | Make-lang.in. Store Info and generated Texinfo files in the | |
45416 | source directory. | |
45417 | * gnat_ug.texi: Remove CVS keywords, correct version number. | |
45418 | Set file name correctly. | |
45419 | ||
45420 | * gnat_ug_*.texi: Add. | |
45421 | * .cvsignore: Ignore generated Texinfo files. | |
45422 | ||
b1c12c4b ZW |
45423 | 2002-05-30 Zack Weinberg <zack@codesourcery.com> |
45424 | ||
45425 | * ada.h: Add MI guard macro. | |
45426 | (SUBTYPE): Define constants with an anonymous enum, not static | |
45427 | const variables. | |
45428 | (IN): Cast constants to appropriate type before use. | |
45429 | ||
ead33da9 JM |
45430 | 2002-05-26 Joseph S. Myers <jsm28@cam.ac.uk> |
45431 | ||
45432 | * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526 | |
45433 | (experimental)". | |
45434 | ||
7d600178 RO |
45435 | 2002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
45436 | ||
45437 | * Make-lang.in (CP, ECHO): Copy from Makefile.in. | |
45438 | (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise. | |
45439 | (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise. | |
45440 | (ALL_ADA_CFLAGS): Likewise. | |
45441 | (ADA_INCLUDES): Likewise. | |
45442 | Adapt for new working dir. | |
45443 | (GNATBIND): Use Makefile.in version. | |
45444 | (.SUFFIXES): Copy from Makefile.in. | |
45445 | (ada-warn): Define. | |
45446 | (.adb.o, .ads.o): Copy from Makefile.in. | |
45447 | Added $(OUTPUT_OPTION). | |
45448 | (GNAT1_C_OBJS): Moved from Makefile.in. | |
45449 | Prefix with ada subdir. | |
45450 | (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise. | |
45451 | (EXTRA_GNAT1_OBJS): Moved from Makefile.in. | |
45452 | Adapt for new working dir. | |
45453 | (EXTRA_GNATBIND_OBJS): Likewise. | |
45454 | (ADA_BACKEND): Moved from Makefile.in. | |
45455 | Renamed to avoid conflict with global BACKEND. | |
45456 | Use that one. | |
45457 | (TARGET_ADA_SRCS): Moved from Makefile.in. | |
45458 | (gnat1$(exeext)): Replaced recursive rule with Makefile.in version. | |
45459 | Use ADA_BACKEND. | |
45460 | (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version. | |
45461 | (ada_extra_files): Moved from Makefile.in. | |
45462 | Prefix with ada subdir. | |
45463 | (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise. | |
45464 | (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise. | |
45465 | (ada/nmake.ads): Likewise. | |
45466 | (update-sources): Moved from Makefile.in. | |
45467 | Prefix with ada subdir. | |
45468 | (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise. | |
45469 | (ADA_TREE_H): Likewise. | |
45470 | (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise. | |
45471 | (ada/memtrack.o): Likewise. | |
45472 | (ada/adadecode.o): Likewise. | |
45473 | Update dependencies. | |
45474 | (ada/adaint.o): New. | |
45475 | (ada/argv.o): Moved from Makefile.in. | |
45476 | Prefix with ada subdir. | |
94213cff | 45477 | Update dependencies. |
7d600178 RO |
45478 | (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise. |
45479 | (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise. | |
45480 | (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in. | |
45481 | Prefix with ada subdir. | |
45482 | (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise. | |
45483 | (GNAT DEPENDENCIES): Regenerate. | |
45484 | * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by | |
45485 | toplevel Makefile.in. | |
45486 | (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed. | |
45487 | (TARGET_ADA_SRCS): Removed. | |
45488 | (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise. | |
45489 | (GNATBIND_OBJS): Likewise. | |
45490 | (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here. | |
45491 | (BACKEND): Removed. | |
45492 | (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise. | |
45493 | (TREE_H): Likewise. | |
45494 | (ada_extra_files): Likewise. | |
45495 | (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise. | |
45496 | (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise. | |
45497 | (update-sources): Likewise. | |
45498 | (sdefault.adb, stamp-sdefault, sdefault.o): Likewise | |
45499 | (ADA_TREE_H): Likewise. | |
45500 | (adadecoce.o): Likewise. | |
45501 | (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise. | |
45502 | (GNAT DEPENDENCIES): Likewise. | |
45503 | ||
1e6347d8 RO |
45504 | 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
45505 | ||
45506 | * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd. | |
45507 | * Makefile.in: Likewise. | |
45508 | ||
db80834f RO |
45509 | 2002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
45510 | ||
45511 | * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools): | |
45512 | Restore $(CONFIG_H) and prefix.o dependencies. | |
45513 | (ada.stage[1-4]): Depend on stage?-start. | |
45514 | ||
45515 | * Makefile.in (b_gnatb.c): Depend on interfac.o. | |
45516 | ||
ac293f98 JW |
45517 | 2002-05-02 Jim Wilson <wilson@redhat.com> |
45518 | ||
45519 | * utils.c (finish_record_type): Change record_size to record_type. | |
45520 | ||
b303008e JDA |
45521 | 2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca> |
45522 | ||
45523 | * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides. | |
45524 | (ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in | |
45525 | ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC. | |
94213cff | 45526 | |
ff45c01e NB |
45527 | 2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk> |
45528 | ||
45529 | * misc.c (gnat_parse_file): Update. | |
45530 | ||
349ae713 NB |
45531 | 2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk> |
45532 | ||
45533 | * misc.c (gnat_init): Don't set lang_attribute_common. | |
45534 | ||
ace133aa JM |
45535 | 2002-04-21 Joseph S. Myers <jsm28@cam.ac.uk> |
45536 | ||
45537 | * gnat_rm.texi: Use @ifnottex instead of @ifinfo. | |
45538 | ||
5c558dd9 FW |
45539 | 2002-04-21 Florian Weimer <fw@deneb.enyo.de> |
45540 | ||
b4f94ac1 | 45541 | * gnat_ug.texi: New file. |
88e1739c | 45542 | |
5c558dd9 FW |
45543 | * gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi |
45544 | instead of gfdl.texi | |
45545 | ||
45546 | * xgnatug.adb, ug_words: New files. | |
45547 | ||
45548 | * Makefile.in (doc, dvi): New targets. Build gnat_ug_*, | |
b4f94ac1 | 45549 | gnat_rm and gnat-style manuals. |
5c558dd9 | 45550 | |
7a228918 NB |
45551 | 2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk> |
45552 | ||
45553 | * gigi.h (incomplete_type_error): Remove. | |
45554 | * utils.c (incomplete_type_error): Remove. | |
45555 | ||
b2123dc0 MM |
45556 | 2002-04-16 Mark Mitchell <mark@codesourcery.com> |
45557 | ||
45558 | * trans.c (tree_transform): Add has_scope argument to | |
45559 | expand_start_stmt_expr. | |
45560 | ||
78ef5b89 NB |
45561 | 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk> |
45562 | ||
45563 | * gigi.h (truthvalue_conversion): Rename. | |
45564 | * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine. | |
45565 | * trans.c (tree_transform): Update. | |
45566 | * utils2.c (truthvalue_conversion): Rename, update. | |
45567 | (build_binary_op, build_unary_op): Update. | |
45568 | ||
a71742a8 LG |
45569 | 2002-04-04 Laurent Guerby <guerby@acm.org> |
45570 | ||
45571 | * make.adb: Implement -margs, remove restriction about file name placement. | |
45572 | * makeusg.adb: Documentation update. | |
45573 | * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir). | |
45574 | * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line. | |
45575 | ||
82a4b025 NB |
45576 | 2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk> |
45577 | ||
45578 | * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME. | |
45579 | (builtin_function): Similarly. | |
45580 | ||
dffd7eb6 NB |
45581 | 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> |
45582 | ||
45583 | * decl.c (gnat_to_gnu_entity): Update. | |
45584 | * gigi.h (mark_addressable): Rename. | |
45585 | * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine. | |
45586 | * trans.c (tree_transform): Update. | |
45587 | * utils.c (create_var_decl): Update. | |
45588 | * util2.c (build_binary_op, build_unary_op, | |
45589 | fill_vms_descriptor): Update. | |
45590 | (mark_addressable): Rename, update. | |
45591 | ||
ceef8ce4 NB |
45592 | 2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk> |
45593 | ||
45594 | * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type): | |
45595 | Rename. | |
45596 | * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE, | |
45597 | LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New. | |
45598 | * trans.c (tree_transform, convert_with_check): Update. | |
45599 | * utils.c (unsigned_type, signed_type, signed_or_unsigned_type): | |
45600 | Rename. | |
45601 | ||
48a7a235 NB |
45602 | 2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk> |
45603 | ||
45604 | * gigi.h (finish_incomplete_decl): Rename. | |
45605 | * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine. | |
45606 | * utils.c (gnat_init_decl_processing): Don't set hook. | |
45607 | (finish_incomplete_decl): Rename. | |
45608 | ||
1d5af871 AS |
45609 | 2002-03-29 Andreas Schwab <schwab@suse.de> |
45610 | ||
45611 | * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts | |
45612 | directory. | |
45613 | ||
9e94c78f | 45614 | 2001-03-28 Robert Dewar <dewar@gnat.com> |
8cbb664e MG |
45615 | |
45616 | * checks.ads: | |
45617 | (Remove_Checks): New procedure | |
45618 | ||
45619 | * checks.adb: | |
45620 | (Remove_Checks): New procedure | |
45621 | ||
45622 | * exp_util.adb: | |
45623 | Use new Duplicate_Subexpr functions | |
45624 | (Duplicate_Subexpr_No_Checks): New procedure | |
45625 | (Duplicate_Subexpr_No_Checks_Orig): New procedure | |
45626 | (Duplicate_Subexpr): Restore original form (checks duplicated) | |
45627 | (Duplicate_Subexpr): Call Remove_Checks | |
45628 | ||
82a4b025 | 45629 | * exp_util.ads: |
8cbb664e MG |
45630 | (Duplicate_Subexpr_No_Checks): New procedure |
45631 | (Duplicate_Subexpr_No_Checks_Orig): New procedure | |
45632 | Add 2002 to copyright notice | |
45633 | ||
45634 | * sem_util.adb: Use new Duplicate_Subexpr functions | |
45635 | ||
82a4b025 | 45636 | * sem_eval.adb: |
8cbb664e MG |
45637 | (Eval_Indexed_Component): This is the place to call |
45638 | Constant_Array_Ref and to replace the value. We simply merge | |
45639 | the code of this function in here, since it is now no longer | |
45640 | used elsewhere. This fixes the problem of the back end not | |
45641 | realizing we were clever enough to see that this was | |
45642 | constant. | |
45643 | (Expr_Val): Remove call to Constant_Array_Ref | |
45644 | (Expr_Rep_Val): Remove call to Constant_Array_Ref | |
45645 | Minor reformatting | |
45646 | (Constant_Array_Ref): Deal with string literals (patch | |
45647 | suggested by Zack Weinberg on the gcc list) | |
45648 | ||
9e94c78f | 45649 | 2001-03-28 Ed Schonberg <schonber@gnat.com> |
8cbb664e | 45650 | |
82a4b025 | 45651 | * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig => |
8cbb664e MG |
45652 | Duplicate_Subexpr_Move_Checks. |
45653 | ||
82a4b025 | 45654 | * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig => |
8cbb664e MG |
45655 | Duplicate_Subexpr_Move_Checks. |
45656 | ||
82a4b025 NB |
45657 | * sem_eval.adb: (Constant_Array_Ref): Verify that constant |
45658 | value of array exists before retrieving it (it may a private | |
8cbb664e MG |
45659 | protected component in a function). |
45660 | ||
9e94c78f | 45661 | 2002-03-28 Geert Bosch <bosch@gnat.com> |
792c4e74 GB |
45662 | |
45663 | * prj-pp.adb : New file. | |
45664 | ||
45665 | * prj-pp.ads : New file. | |
45666 | ||
915e8bad AJ |
45667 | 2002-03-28 Andreas Jaeger <aj@suse.de> |
45668 | ||
45669 | * Makefile.in (stamp-sdefault): Fix path for Makefile. | |
45670 | ||
0840811c NB |
45671 | 2002-03-28 Neil Booth <neil@daikokuya.demon.co.uk> |
45672 | ||
45673 | * misc.c (gnat_expand_expr): Move prototype. | |
45674 | ||
7ffb4fd2 NB |
45675 | 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk> |
45676 | ||
45677 | * misc.c (insert_default_attributes): Remove. | |
45678 | ||
c9d892a8 NB |
45679 | 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk> |
45680 | ||
45681 | * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine. | |
45682 | (gnat_init): Don't set hook. | |
45683 | (gnat_expand_expr): Fix prototype. | |
45684 | ||
31c816cf NB |
45685 | 2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk> |
45686 | ||
45687 | * misc.c (ggc_p): Remove. | |
45688 | ||
ef83161c GB |
45689 | 2002-03-27 Geert Bosch <bosch@gnat.com> |
45690 | ||
45691 | * prj-makr.ads, prj-makr.adb : New files. | |
45692 | ||
4f0ade92 NB |
45693 | 2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk> |
45694 | ||
45695 | * misc.c (LANG_HOOKS_MARK_TREE): Redefine. | |
45696 | (lang_mark_tree): Make static, rename. | |
45697 | ||
c88770e9 NB |
45698 | 2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk> |
45699 | ||
45700 | * misc.c (maybe_build_cleanup): Remove. | |
45701 | ||
05671968 NB |
45702 | 2002-03-24 Neil Booth <neil@daikokuya.demon.co.uk> |
45703 | ||
45704 | * gigi.h (yyparse): Remove. | |
45705 | ||
ad42149c FW |
45706 | 2002-03-23 Florian Weimer <fw@deneb.enyo.de> |
45707 | ||
9e94c78f | 45708 | From Ben Brosgol <brosgol@gnat.com> |
82a4b025 | 45709 | * gnat_rm.texi: Sync with ACT version. |
ad42149c | 45710 | |
7afff7cf NB |
45711 | 2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk> |
45712 | ||
45713 | * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine. | |
45714 | (gnat_init): Remove old hook. | |
45715 | ||
52dabb6c NB |
45716 | 2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk> |
45717 | ||
45718 | * misc.c (LANG_HOOKS_PARSE_FILE): Redefine. | |
45719 | (yyparse): Rename gnat_parse_file. | |
45720 | ||
6cbcc541 GK |
45721 | 2002-03-14 Geoffrey Keating <geoffk@redhat.com> |
45722 | ||
45723 | Delete all lines containing "$Revision:". | |
45724 | * xeinfo.adb: Don't look for revision numbers. | |
45725 | * xnmake.adb: Likewise. | |
45726 | * xsinfo.adb: Likewise. | |
45727 | * xsnames.adb: Likewise. | |
45728 | * xtreeprs.adb: Likewise. | |
45729 | ||
2f9834e8 KG |
45730 | 2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
45731 | ||
45732 | * misc.c (gnat_tree_code_type, gnat_tree_code_length, | |
45733 | gnat_tree_code_name): Delete. | |
45734 | (tree_code_type, tree_code_length, tree_code_name): Define. | |
45735 | (gnat_init): Don't try to copy into the various tree_code | |
45736 | arrays. | |
45737 | ||
63adb4ff RH |
45738 | 2002-03-11 Richard Henderson <rth@redhat.com> |
45739 | ||
45740 | * Makefile.in (.NOTPARALLEL): Add fake tag. | |
45741 | ||
43ff4547 GB |
45742 | 2002-03-07 Geert Bosch <bosch@gnat.com> |
45743 | ||
82a4b025 NB |
45744 | * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads, |
45745 | s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads, | |
45746 | switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads, | |
43ff4547 GB |
45747 | switch-m.adb, switch-m.ads : New files. |
45748 | ||
07fc65c4 GB |
45749 | 2002-03-07 Geert Bosch <bosch@gnat.com> |
45750 | ||
45751 | * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads, | |
45752 | 4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads, | |
45753 | 4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads, | |
45754 | 4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads, | |
45755 | 5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb, | |
45756 | 5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads, | |
45757 | 5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, | |
45758 | 5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, | |
45759 | 5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb, | |
45760 | 5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb, | |
45761 | 5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads, | |
45762 | 5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb, | |
45763 | 5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads, | |
45764 | 5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb, | |
45765 | 5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb, | |
45766 | 5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb, | |
45767 | 5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb, | |
45768 | 5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb, | |
45769 | 5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb, | |
45770 | 5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb, | |
45771 | 7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb, | |
45772 | Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads, | |
45773 | a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb, | |
45774 | a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads, | |
45775 | a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb, | |
45776 | a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb, | |
45777 | a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb, | |
45778 | a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb, | |
45779 | a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h, | |
45780 | adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb, | |
45781 | atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb, | |
45782 | bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb, | |
45783 | csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c, | |
45784 | einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads, | |
45785 | eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb, | |
45786 | exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, | |
45787 | exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads, | |
45788 | exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads, | |
45789 | exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb, | |
45790 | exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads, | |
45791 | expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb, | |
45792 | freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb, | |
45793 | g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads, | |
45794 | g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb, | |
45795 | g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb, | |
45796 | g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb, | |
45797 | g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb, | |
45798 | g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c, | |
45799 | gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb, | |
45800 | gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads, | |
45801 | gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb, | |
45802 | i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads, | |
45803 | impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb, | |
45804 | lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb, | |
45805 | lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb, | |
45806 | memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads, | |
45807 | mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb, | |
45808 | nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads, | |
45809 | output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb, | |
45810 | par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb, | |
45811 | prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb, | |
45812 | prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb, | |
45813 | prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads, | |
45814 | rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb, | |
45815 | s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads, | |
45816 | s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb, | |
45817 | s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb, | |
45818 | s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb, | |
45819 | s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb, | |
45820 | s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb, | |
45821 | s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads, | |
45822 | s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads, | |
45823 | s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb, | |
45824 | s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads, | |
45825 | s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads, | |
45826 | s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb, | |
45827 | s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, | |
45828 | s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads, | |
45829 | s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb, | |
45830 | sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb, | |
45831 | sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, | |
45832 | sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads, | |
45833 | sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb, | |
45834 | sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb, | |
45835 | sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb, | |
45836 | sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb, | |
45837 | sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb, | |
45838 | sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb, | |
45839 | sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads, | |
45840 | snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads, | |
45841 | stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads, | |
45842 | table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb, | |
45843 | tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb, | |
45844 | treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads, | |
45845 | types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb, | |
45846 | utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb, | |
45847 | xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes. | |
45848 | ||
45849 | * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads, | |
45850 | g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads, | |
45851 | mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads, | |
45852 | osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files | |
45853 | ||
45854 | * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb, | |
45855 | 5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed | |
45856 | ||
45857 | * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed | |
45858 | to mdll-fil.ad[bs] and mdll-util.ad[bs] | |
45859 | ||
45860 | * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed | |
45861 | from mdllfile.ad[bs] and mdlltool.ad[bs] | |
45862 | ||
ca7558fc KG |
45863 | 2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
45864 | ||
45865 | * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in | |
45866 | lieu of explicit sizeof/sizeof. | |
45867 | ||
63e1b1c4 NB |
45868 | 2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk> |
45869 | ||
45870 | * misc.c (copy_lang_decl): Remove. | |
45871 | ||
f458d1d5 ZW |
45872 | 2002-02-27 Zack Weinberg <zack@codesourcery.com> |
45873 | ||
45874 | * misc.c: Delete traditional-mode-related code copied from the | |
45875 | C front end but not used, or used only to permit the compiler | |
45876 | to link. | |
45877 | ||
21e09952 RH |
45878 | 2002-02-07 Richard Henderson <rth@redhat.com> |
45879 | ||
45880 | * adaint.c (__gnat_to_gm_time): First arg is int, not time_t. | |
45881 | * adaint.h (__gnat_to_gm_time): Update prototype. | |
45882 | ||
ead39bdf | 45883 | 2002-01-30 Richard Henderson <rth@redhat.com> |
e803a64b RH |
45884 | |
45885 | * trans.c (tree_transform) [N_Loop_Statement]: Use | |
45886 | expand_exit_loop_top_cond. | |
45887 | ||
72ac12bf RH |
45888 | 2001-12-23 Richard Henderson <rth@redhat.com> |
45889 | ||
45890 | * utils.c (end_subprog_body): Push GC context around | |
45891 | rest_of_compilation for nested functions. | |
45892 | ||
14aacce7 RH |
45893 | 2001-12-23 Richard Henderson <rth@redhat.com> |
45894 | ||
45895 | * 5nosinte.ads: Get definition of "int" from Interfaces.C. | |
45896 | ||
b3d45d87 FW |
45897 | 2001-12-23 Florian Weimer <fw@deneb.enyo.de> |
45898 | ||
ece2d1b8 FW |
45899 | * gnat-style.texi (Declarations and Types): Remove ancient style |
45900 | rule which was mandated by code generation issues. | |
82a4b025 | 45901 | |
b3d45d87 FW |
45902 | * gnat-style.texi (header): Add @dircategory, @direntry. |
45903 | (title page): Remove date. | |
45904 | (general) Add @./@: where approriate, and two spaces after the | |
45905 | full stop at the end of a sentence. Use @samp markup when | |
45906 | referring concrete lexical entities (keywords, attribute names | |
45907 | etc.), and @syntax for ARM grammar elements. Use @r for English | |
45908 | text in comments. Use @emph for emphasis. Change "if-statements" | |
45909 | etc. to "if statements" (without @samp). Break long lines. Make | |
45910 | casing of section names consistent. | |
45911 | (Identifiers): Use @samp markup for variable names. | |
45912 | (Comments): Use @samp markup for comment characters. Line-end | |
45913 | comments may follow any Ada code, not just statements. Fix | |
45914 | misspelling of "Integer" as "integer". | |
45915 | (Loop statements): Do not use variable name "I", use "J". | |
45916 | (Subprogram Declarations): Document alignment. | |
45917 | (Subprogram Bodies, Block statements): Document empty line before | |
45918 | "begin". | |
45919 | ||
7a73ad55 FW |
45920 | 2001-12-22 Florian Weimer <fw@deneb.enyo.de> |
45921 | ||
45922 | * make.adb (Add_Switch): Make Generic_Position a procedure. The | |
45923 | function approach did not work well because of a side effect (the | |
45924 | function call could reallocate the table which was being indexed | |
45925 | using its result). Fixes ada/4851. | |
45926 | ||
9e94c78f | 45927 | 2001-12-19 Robert Dewar <dewar@gnat.com> |
17c5c8a5 GB |
45928 | |
45929 | * bindgen.adb: Minor reformatting | |
82a4b025 | 45930 | |
17c5c8a5 | 45931 | * cstand.adb: Minor reformatting |
82a4b025 | 45932 | |
17c5c8a5 GB |
45933 | * fmap.adb: Minor reformatting |
45934 | Change name from Add for Add_To_File_Map (Add is much too generic) | |
45935 | Change Path_Name_Of to Mapped_Path_Name | |
45936 | Change File_Name_Of to Mapped_File_Name | |
45937 | Fix copyright dates in header | |
82a4b025 | 45938 | |
17c5c8a5 GB |
45939 | * fmap.ads: |
45940 | Change name from Add for Add_To_File_Map (Add is much too generic) | |
45941 | Change Path_Name_Of to Mapped_Path_Name | |
45942 | Change File_Name_Of to Mapped_File_Name | |
45943 | Fix copyright dates in header | |
82a4b025 | 45944 | |
17c5c8a5 GB |
45945 | * fname-uf.adb: Minor reformatting. New names of stuff in Fmap. |
45946 | Add use clause for Fmap. | |
82a4b025 | 45947 | |
17c5c8a5 | 45948 | * make.adb: Minor reformatting |
82a4b025 | 45949 | |
17c5c8a5 GB |
45950 | * osint.adb: Minor reformatting. Change of names in Fmap. |
45951 | Add use clause for Fmap. | |
82a4b025 | 45952 | |
17c5c8a5 | 45953 | * prj-env.adb: Minor reformatting |
82a4b025 | 45954 | |
17c5c8a5 | 45955 | * prj-env.ads: Minor reformatting |
82a4b025 | 45956 | |
07fc65c4 GB |
45957 | * switch.adb: Minor reformatting. Do proper raise of Bad_Switch if |
45958 | error found (there were odd exceptions to this general rule in | |
17c5c8a5 | 45959 | -gnatec/-gnatem processing) |
82a4b025 | 45960 | |
9e94c78f | 45961 | 2001-12-19 Olivier Hainque <hainque@gnat.com> |
17c5c8a5 | 45962 | |
07fc65c4 GB |
45963 | * raise.c (__gnat_eh_personality): Exception handling personality |
45964 | routine for Ada. Still in rough state, inspired from the C++ version | |
17c5c8a5 | 45965 | and still containing a bunch of debugging artifacts. |
07fc65c4 | 45966 | (parse_lsda_header, get_ttype_entry): Local (static) helpers, also |
17c5c8a5 | 45967 | inspired from the C++ library. |
82a4b025 | 45968 | |
07fc65c4 | 45969 | * raise.c (eh_personality): Add comments. Part of work for the GCC 3 |
17c5c8a5 | 45970 | exception handling integration. |
82a4b025 | 45971 | |
9e94c78f | 45972 | 2001-12-19 Arnaud Charlet <charlet@gnat.com> |
17c5c8a5 GB |
45973 | |
45974 | * Makefile.in: Remove use of 5smastop.adb which is obsolete. | |
45975 | (HIE_SOURCES): Add s-secsta.ad{s,b}. | |
45976 | (HIE_OBJS): Add s-fat*.o | |
07fc65c4 | 45977 | (RAVEN_SOURCES): Remove files that are no longer required. Add |
17c5c8a5 GB |
45978 | interrupt handling files. |
45979 | (RAVEN_MOD): Removed, no longer needed. | |
82a4b025 | 45980 | |
9e94c78f | 45981 | 2001-12-19 Robert Dewar <dewar@gnat.com> |
17c5c8a5 GB |
45982 | |
45983 | * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always | |
45984 | Add 2001 to copyright date | |
82a4b025 | 45985 | |
07fc65c4 | 45986 | * g-regpat.adb: Change pragma Inline_Always to Inline. There is no |
17c5c8a5 | 45987 | need to force universal inlining for these cases. |
82a4b025 | 45988 | |
9e94c78f | 45989 | 2001-12-19 Arnaud Charlet <charlet@gnat.com> |
17c5c8a5 | 45990 | |
07fc65c4 | 45991 | * s-taprob.adb: Minor clean ups so that this unit can be used in |
17c5c8a5 | 45992 | Ravenscar HI. |
82a4b025 | 45993 | |
17c5c8a5 GB |
45994 | * exp_ch7.adb: Allow use of secondary stack in HI mode. |
45995 | Disallow it when pragma Restrictions (No_Secondary_Stack) is specified. | |
82a4b025 | 45996 | |
9e94c78f | 45997 | 2001-12-19 Vincent Celier <celier@gnat.com> |
17c5c8a5 | 45998 | |
07fc65c4 | 45999 | * prj-tree.ads (Project_Node_Record): Add comments for components |
17c5c8a5 | 46000 | Pkg_Id and Case_Insensitive. |
82a4b025 | 46001 | |
9e94c78f | 46002 | 2001-12-19 Pascal Obry <obry@gnat.com> |
17c5c8a5 GB |
46003 | |
46004 | * g-socket.adb: Minor reformatting. Found while reading code. | |
82a4b025 | 46005 | |
9e94c78f | 46006 | 2001-12-19 Robert Dewar <dewar@gnat.com> |
17c5c8a5 GB |
46007 | |
46008 | * prj-tree.ads: Minor reformatting | |
46009 | ||
38be19f6 JM |
46010 | 2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk> |
46011 | ||
46012 | * config-lang.in (diff_excludes): Remove. | |
46013 | ||
9e94c78f | 46014 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
6510f4c9 | 46015 | |
07fc65c4 GB |
46016 | * sem_res.adb (Resolve_Selected_Component): do not generate a |
46017 | discriminant check if the selected component is a component of | |
6510f4c9 GB |
46018 | the argument of an initialization procedure. |
46019 | ||
07fc65c4 GB |
46020 | * trans.c (tree_transform, case of arithmetic operators): If result |
46021 | type is private, the gnu_type is the base type of the full view, | |
6510f4c9 | 46022 | given that the full view itself may be a subtype. |
82a4b025 | 46023 | |
9e94c78f | 46024 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
6510f4c9 GB |
46025 | |
46026 | * sem_res.adb: Minor reformatting | |
82a4b025 | 46027 | |
07fc65c4 GB |
46028 | * trans.c (tree_transform, case N_Real_Literal): Add missing third |
46029 | parameter in call to Machine (unknown horrible effects from this | |
6510f4c9 | 46030 | omission). |
82a4b025 | 46031 | |
6510f4c9 GB |
46032 | * urealp.h: Add definition of Round_Even for call to Machine |
46033 | Add third parameter for Machine | |
82a4b025 | 46034 | |
9e94c78f | 46035 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
6510f4c9 | 46036 | |
07fc65c4 | 46037 | * sem_warn.adb (Check_One_Unit): Suppress warnings completely on |
6510f4c9 | 46038 | predefined units in No_Run_Time mode. |
82a4b025 | 46039 | |
9e94c78f | 46040 | 2001-12-17 Richard Kenner <kenner@gnat.com> |
6510f4c9 GB |
46041 | |
46042 | * misc.c (insn-codes.h): Now include. | |
82a4b025 | 46043 | |
9e94c78f | 46044 | 2001-12-17 Olivier Hainque <hainque@gnat.com> |
6510f4c9 | 46045 | |
07fc65c4 | 46046 | * a-except.adb: Preparation work for future integration of the GCC 3 |
6510f4c9 GB |
46047 | exception handling mechanism |
46048 | (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines | |
46049 | to factorize previous code sequences and make them externally callable, | |
46050 | e.g. for the Ada personality routine when the GCC 3 mechanism is used. | |
46051 | (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler): | |
46052 | Use the new notification routines. | |
82a4b025 | 46053 | |
9e94c78f | 46054 | 2001-12-17 Emmanuel Briot <briot@gnat.com> |
6510f4c9 GB |
46055 | |
46056 | * prj-tree.ads (First_Choice_Of): Document the when others case | |
82a4b025 | 46057 | |
9e94c78f | 46058 | 2001-12-17 Arnaud Charlet <charlet@gnat.com> |
6510f4c9 | 46059 | |
07fc65c4 | 46060 | * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in |
6510f4c9 | 46061 | HI-E mode, in order to support Ravenscar profile properly. |
82a4b025 | 46062 | |
07fc65c4 | 46063 | * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E |
6510f4c9 | 46064 | mode on 32 bits targets. |
82a4b025 | 46065 | |
9e94c78f | 46066 | 2001-12-17 Vincent Celier <celier@gnat.com> |
6510f4c9 GB |
46067 | |
46068 | * fmap.adb: Initial version. | |
82a4b025 | 46069 | |
6510f4c9 | 46070 | * fmap.ads: Initial version. |
82a4b025 | 46071 | |
6510f4c9 GB |
46072 | * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped. |
46073 | If search is successfully done, add to mapping. | |
82a4b025 | 46074 | |
6510f4c9 | 46075 | * frontend.adb: Initialize the mapping if a -gnatem switch was used. |
82a4b025 | 46076 | |
6510f4c9 GB |
46077 | * make.adb: |
46078 | (Gnatmake): Add new local variable Mapping_File_Name. | |
46079 | Create mapping file when using project file(s). | |
46080 | Delete mapping file before exiting. | |
82a4b025 | 46081 | |
6510f4c9 | 46082 | * opt.ads (Mapping_File_Name): New variable |
82a4b025 | 46083 | |
6510f4c9 | 46084 | * osint.adb (Find_File): Use path name found in mapping, if any. |
82a4b025 | 46085 | |
6510f4c9 | 46086 | * prj-env.adb (Create_Mapping_File): New procedure |
82a4b025 | 46087 | |
6510f4c9 | 46088 | * prj-env.ads (Create_Mapping_File): New procedure. |
82a4b025 | 46089 | |
07fc65c4 | 46090 | * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem |
6510f4c9 | 46091 | (Mapping_File) |
82a4b025 | 46092 | |
6510f4c9 | 46093 | * usage.adb: Add entry for new switch -gnatem. |
82a4b025 | 46094 | |
6510f4c9 | 46095 | * Makefile.in: Add dependencies for fmap.o. |
82a4b025 | 46096 | |
9e94c78f | 46097 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
6510f4c9 | 46098 | |
07fc65c4 | 46099 | * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit |
6510f4c9 GB |
46100 | is a package instantiation rewritten as a package body. |
46101 | (Install_Withed_Unit): Undo previous change, now redundant. | |
82a4b025 | 46102 | |
9e94c78f | 46103 | 2001-12-17 Gary Dismuke <dismukes@gnat.com> |
6510f4c9 GB |
46104 | |
46105 | * layout.adb: | |
46106 | (Compute_Length): Move conversion to Unsigned to callers. | |
46107 | (Get_Max_Size): Convert Len expression to Unsigned after calls to | |
46108 | Compute_Length and Determine_Range. | |
46109 | (Layout_Array_Type): Convert Len expression to Unsigned after calls to | |
46110 | Compute_Length and Determine_Range. | |
46111 | Above changes fix problem with length computation for supernull arrays | |
07fc65c4 | 46112 | where Max (Len, 0) wasn't getting applied due to the Unsigned |
6510f4c9 | 46113 | conversion used by Compute_Length. |
82a4b025 | 46114 | |
9e94c78f | 46115 | 2001-12-17 Arnaud Charlet <charlet@gnat.com> |
6510f4c9 GB |
46116 | |
46117 | * rtsfind.ads: | |
46118 | (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and | |
46119 | System.Secondary_Stack. | |
46120 | (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar | |
46121 | in HI-E mode. | |
46122 | Remove unused entity RE_Exception_Data. | |
82a4b025 | 46123 | |
6510f4c9 | 46124 | * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode. |
82a4b025 | 46125 | |
6510f4c9 GB |
46126 | * rident.ads (No_Secondary_Stack): New restriction. |
46127 | ||
9e94c78f | 46128 | 2001-12-17 Joel Brobecker <brobecke@gnat.com> |
3a77b68d | 46129 | |
07fc65c4 | 46130 | * gnat_rm.texi: Fix minor typos. Found while reading the section |
3a77b68d GB |
46131 | regarding "Bit_Order Clauses" that was sent to a customer. |
46132 | Very interesting documentation! | |
82a4b025 | 46133 | |
9e94c78f | 46134 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
3a77b68d | 46135 | |
07fc65c4 GB |
46136 | * sem_case.adb (Choice_Image): Avoid creating improper character |
46137 | literal names by using the routine Set_Character_Literal_Name. This | |
3a77b68d | 46138 | fixes bombs in certain error message cases. |
82a4b025 | 46139 | |
9e94c78f | 46140 | 2001-12-17 Arnaud Charlet <charlet@gnat.com> |
3a77b68d GB |
46141 | |
46142 | * a-reatim.adb: Minor reformatting. | |
82a4b025 | 46143 | |
9e94c78f | 46144 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
3a77b68d | 46145 | |
07fc65c4 GB |
46146 | * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the |
46147 | case where the formal is an extension of another formal in the current | |
3a77b68d | 46148 | unit or in a parent generic unit. |
82a4b025 | 46149 | |
9e94c78f | 46150 | 2001-12-17 Arnaud Charlet <charlet@gnat.com> |
3a77b68d | 46151 | |
07fc65c4 | 46152 | * s-tposen.adb: Update comments. Minor reformatting. |
3a77b68d | 46153 | Minor code clean up. |
82a4b025 | 46154 | |
3a77b68d | 46155 | * s-tarest.adb: Update comments. Minor code reorganization. |
82a4b025 | 46156 | |
9e94c78f | 46157 | 2001-12-17 Gary Dismukes <dismukes@gnat.com> |
3a77b68d | 46158 | |
07fc65c4 | 46159 | * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag |
3a77b68d | 46160 | when Java_VM. |
82a4b025 | 46161 | |
9e94c78f | 46162 | 2001-12-17 Robert Dewa <dewar@gnat.com> |
3a77b68d GB |
46163 | |
46164 | * exp_attr.adb: Minor reformatting | |
82a4b025 | 46165 | |
9e94c78f | 46166 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
3a77b68d | 46167 | |
07fc65c4 | 46168 | * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle |
3a77b68d GB |
46169 | derivations nested within a child unit: verify that the parent |
46170 | type is declared in an outer scope. | |
82a4b025 | 46171 | |
9e94c78f | 46172 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
3a77b68d GB |
46173 | |
46174 | * sem_ch12.adb: Minor reformatting | |
82a4b025 | 46175 | |
9e94c78f | 46176 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
3a77b68d | 46177 | |
07fc65c4 GB |
46178 | * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post |
46179 | warning if current unit is a predefined one, from which bodies may | |
3a77b68d | 46180 | have been deleted. |
82a4b025 | 46181 | |
9e94c78f | 46182 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
3a77b68d GB |
46183 | |
46184 | * eval_fat.ads: Add comment that Round_Even is referenced in Ada code | |
46185 | Fix header format. Add 2001 to copyright date. | |
82a4b025 | 46186 | |
07fc65c4 | 46187 | * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference, |
3a77b68d GB |
46188 | which caused CE during compilation if checks were enabled. |
46189 | ||
9e94c78f | 46190 | 2001-12-17 Vincent Celier <celier@gnat.com> |
79503fdd GB |
46191 | |
46192 | * make.adb: | |
46193 | (Switches_Of): New function | |
46194 | (Test_If_Relative_Path): New procedure | |
46195 | (Add_Switches): Use new function Switches_Of | |
46196 | (Collect_Arguments_And_Compile): Use new function Switches_Of. | |
46197 | When using a project file, test if there are any relative | |
46198 | search path. Fail if there are any. | |
07fc65c4 GB |
46199 | (Gnatmake): Only add switches for the primary directory when not using |
46200 | a project file. When using a project file, change directory to the | |
46201 | object directory of the main project file. When using a project file, | |
46202 | test if there are any relative search path. Fail if there are any. | |
46203 | When using a project file, fail if specified executable is relative | |
46204 | path with directory information, and prepend executable, if not | |
46205 | specified as an absolute path, with the exec directory. Make sure | |
79503fdd | 46206 | that only one -o switch is transmitted to the linker. |
82a4b025 | 46207 | |
79503fdd | 46208 | * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir |
82a4b025 | 46209 | |
79503fdd GB |
46210 | * prj-nmsc.adb: |
46211 | (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc, | |
46212 | when using a non standard naming scheme. | |
46213 | (Check_Ada_Naming_Scheme): Make sure that error messages | |
46214 | do not raise exceptions. | |
46215 | (Is_Illegal_Append): Return True if there is no dot in the suffix. | |
46216 | (Language_Independent_Check): Check the exec directory. | |
82a4b025 | 46217 | |
79503fdd | 46218 | * prj.adb (Project_Empty): Add new component Exec_Directory |
82a4b025 | 46219 | |
79503fdd GB |
46220 | * prj.ads: |
46221 | (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults. | |
46222 | (Project_Data): Add component Exec_Directory | |
82a4b025 | 46223 | |
79503fdd | 46224 | * snames.adb: Updated to match snames.ads revision 1.215 |
82a4b025 | 46225 | |
79503fdd | 46226 | * snames.ads: Added Exec_Dir |
82a4b025 | 46227 | |
9e94c78f | 46228 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
79503fdd GB |
46229 | |
46230 | * make.adb: Minor reformatting | |
82a4b025 | 46231 | |
79503fdd | 46232 | * prj-nmsc.adb: Minor reformatting |
82a4b025 | 46233 | |
79503fdd | 46234 | * snames.adb: Updated to match snames.ads |
82a4b025 | 46235 | |
79503fdd GB |
46236 | * snames.ads: Alphebetize entries for project file |
46237 | ||
9e94c78f | 46238 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
79503fdd | 46239 | |
07fc65c4 | 46240 | * trans.c (process_freeze_entity): Do nothing if the entity is a |
79503fdd | 46241 | subprogram that was already elaborated. |
82a4b025 | 46242 | |
9e94c78f | 46243 | 2001-12-17 Richard Kenner <kenner@gnat.com> |
82a4b025 | 46244 | |
07fc65c4 | 46245 | * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment |
79503fdd GB |
46246 | and Esize if object is referenced via pointer. |
46247 | ||
9e94c78f | 46248 | 2001-12-17 Ed Schonberg <schonber@gnat.com> |
855ff2e1 | 46249 | |
07fc65c4 | 46250 | * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant |
855ff2e1 | 46251 | is discrete before analyzing choices. |
82a4b025 | 46252 | |
9e94c78f | 46253 | 2001-12-17 Joel Brobecker <brobecke@gnat.com> |
855ff2e1 | 46254 | |
07fc65c4 GB |
46255 | * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string |
46256 | containing the name of the Ada Main Program. This string is mainly | |
855ff2e1 GB |
46257 | intended for the debugger. |
46258 | (Gen_Output_File_C): Do the equivalent change when generating a C file. | |
82a4b025 | 46259 | |
9e94c78f | 46260 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
855ff2e1 GB |
46261 | |
46262 | * ali.adb: Set new Dummy_Entry field in dependency entry | |
82a4b025 | 46263 | |
855ff2e1 | 46264 | * ali.ads: Add Dummy_Entry field to source dependency table |
82a4b025 | 46265 | |
855ff2e1 | 46266 | * bcheck.adb (Check_Consistency): Ignore dummy D lines |
82a4b025 | 46267 | |
855ff2e1 | 46268 | * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files |
82a4b025 | 46269 | |
855ff2e1 | 46270 | * lib-writ.ads: Document dummy D lines for missing files. |
82a4b025 | 46271 | |
855ff2e1 GB |
46272 | * types.ads: (Dummy_Time_Stamp): New value for non-existant files |
46273 | ||
9e94c78f | 46274 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
c1c22e7a GB |
46275 | |
46276 | * ali.adb: Type reference does not reset current file. | |
82a4b025 | 46277 | |
c1c22e7a | 46278 | * ali.adb: Recognize and scan renaming reference |
82a4b025 | 46279 | |
c1c22e7a | 46280 | * ali.ads: Add spec for storing renaming references. |
82a4b025 | 46281 | |
c1c22e7a | 46282 | * lib-xref.ads: Add documentation for handling of renaming references |
82a4b025 | 46283 | |
c1c22e7a | 46284 | * lib-xref.adb: Implement output of renaming reference. |
82a4b025 | 46285 | |
c1c22e7a GB |
46286 | * checks.adb: |
46287 | (Determine_Range): Document local variables | |
46288 | (Determine_Range): Make sure Hbound is initialized. It looks as though | |
46289 | there could be a real problem here with an uninitialized reference | |
46290 | to Hbound, but no actual example of failure has been found. | |
82a4b025 | 46291 | |
9e94c78f | 46292 | 2001-12-17 Laurent Pautet <pautet@gnat.com> |
c1c22e7a GB |
46293 | |
46294 | * g-socket.ads: | |
46295 | Fix comment of Shutdown_Socket and Close_Socket. These functions | |
46296 | should not fail silently because if they are called twice, this | |
46297 | probably means that there is a race condition in the user program. | |
46298 | Anyway, this behaviour is consistent with the rest of this unit. | |
46299 | When an error occurs, an exception is raised with the error message | |
46300 | as exception message. | |
46301 | ||
9e94c78f | 46302 | 2001-12-17 Robert Dewar <dewar@gnat.com> |
7eb7bb07 | 46303 | |
07fc65c4 | 46304 | * frontend.adb: Move call to Check_Unused_Withs from Frontend, so |
7eb7bb07 | 46305 | that it happens before modification of Sloc values for -gnatD. |
82a4b025 | 46306 | |
07fc65c4 | 46307 | * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend, |
7eb7bb07 | 46308 | so that it happens before modification of Sloc values for -gnatD. |
82a4b025 | 46309 | |
7eb7bb07 RD |
46310 | * switch.adb: Minor reformatting |
46311 | ||
b6434700 RH |
46312 | 2001-12-15 Richard Henderson <rth@redhat.com> |
46313 | ||
46314 | * sem_ch7.adb: Wrap comment. | |
46315 | ||
44d6a706 JM |
46316 | 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk> |
46317 | ||
46318 | * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb, | |
46319 | 5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb, | |
46320 | 5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb, | |
46321 | 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb, | |
46322 | 5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb, | |
46323 | 7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in, | |
46324 | a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb, | |
46325 | a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb, | |
46326 | cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb, | |
46327 | exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb, | |
46328 | exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads, | |
46329 | g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb, | |
46330 | gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c, | |
46331 | make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads, | |
46332 | par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb, | |
46333 | repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads, | |
46334 | s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb, | |
46335 | s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads, | |
46336 | s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads, | |
46337 | s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb, | |
46338 | sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb, | |
46339 | sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb, | |
46340 | sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads, | |
46341 | sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix | |
46342 | spelling errors. | |
46343 | ||
9e94c78f | 46344 | 2001-12-14 Vincent Celier <celier@gnat.com> |
226ada7a | 46345 | |
07fc65c4 | 46346 | * osint.adb(Create_Debug_File): When an object file is specified, |
226ada7a | 46347 | put the .dg file in the same directory as the object file. |
82a4b025 | 46348 | |
9e94c78f | 46349 | 2001-12-14 Robert Dewar <dewar@gnat.com> |
226ada7a GB |
46350 | |
46351 | * osint.adb: Minor reformatting | |
82a4b025 | 46352 | |
07fc65c4 | 46353 | * lib-xref.adb (Output_Instantiation): New procedure to generate |
226ada7a | 46354 | instantiation references. |
82a4b025 | 46355 | |
226ada7a | 46356 | * lib-xref.ads: Add documentation of handling of generic references. |
82a4b025 | 46357 | |
07fc65c4 | 46358 | * ali.adb (Read_Instantiation_Ref): New procedure to read |
226ada7a | 46359 | instantiation references |
82a4b025 | 46360 | |
226ada7a | 46361 | * ali.ads: Add spec for storing instantiation references |
82a4b025 | 46362 | |
226ada7a | 46363 | * bindusg.adb: Minor reformatting |
82a4b025 | 46364 | |
226ada7a | 46365 | * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5) |
82a4b025 | 46366 | |
226ada7a | 46367 | * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5) |
82a4b025 | 46368 | |
226ada7a | 46369 | * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5) |
82a4b025 | 46370 | |
226ada7a | 46371 | * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5) |
82a4b025 | 46372 | |
226ada7a GB |
46373 | * csets.ads: |
46374 | Fix header format | |
46375 | Add 2001 to copyright date | |
46376 | Add entry for Latin-5 (Cyrillic ISO-8859-5) | |
82a4b025 | 46377 | |
9e94c78f | 46378 | 2001-12-14 Matt Gingell <gingell@gnat.com> |
226ada7a | 46379 | |
07fc65c4 | 46380 | * adaint.c: mktemp is a macro on Lynx and can not be used as an |
226ada7a | 46381 | expression. |
82a4b025 | 46382 | |
9e94c78f | 46383 | 2001-12-14 Richard Kenner <kenner@gnat.com> |
226ada7a | 46384 | |
07fc65c4 | 46385 | * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR |
226ada7a | 46386 | if operand is CONSTRUCTOR. |
82a4b025 | 46387 | |
9e94c78f | 46388 | 2001-12-14 Ed Schonberg <schonber@gnat.com> |
226ada7a | 46389 | |
07fc65c4 GB |
46390 | * trans.c (tree_transform, case N_Assignment_Statement): Set lineno |
46391 | before emiting check on right-hand side, so that exception information | |
226ada7a GB |
46392 | is correct. |
46393 | ||
9e94c78f | 46394 | 2001-12-14 Richard Kenner <kenner@gnat.com> |
82a4b025 | 46395 | |
07fc65c4 | 46396 | * utils.c (create_var_decl): Throw away initializing expression |
226ada7a | 46397 | if just annotating types and non-constant. |
82a4b025 | 46398 | |
9e94c78f | 46399 | 2001-12-14 Vincent Celier <celier@gnat.com> |
226ada7a GB |
46400 | |
46401 | * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to | |
46402 | Default_Ada_... | |
82a4b025 | 46403 | |
07fc65c4 | 46404 | * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix): |
226ada7a GB |
46405 | Remove functions. |
46406 | (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec. | |
82a4b025 | 46407 | |
07fc65c4 | 46408 | * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix): |
226ada7a GB |
46409 | Remove functions. |
46410 | (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body. | |
46411 | ||
9b94bf9e JM |
46412 | 2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk> |
46413 | ||
46414 | * ChangeLog: Remove piece of diff output. | |
46415 | ||
9e94c78f | 46416 | 2001-12-14 Geert Bosch <bosch@gnat.com> |
449d2be3 GB |
46417 | |
46418 | * config-lang.in: Update copyright notice | |
46419 | ||
46420 | * layout.adb: Remove commented out code. | |
46421 | ||
46422 | * mdllfile.ads: Update copyright notice. Fix header format. | |
46423 | ||
46424 | * sem_case.ads: Likewise. | |
46425 | ||
46426 | * sem_ch3.adb: Minor reformatting. | |
46427 | ||
9e94c78f | 46428 | 2001-12-12 Geert Bosch <bosch@gnat.com> |
e5bd5cb4 GB |
46429 | |
46430 | * freeze.ads: Update copyright date. | |
46431 | ||
46432 | * g-comlin.ads: Minor reformatting. | |
46433 | ||
46434 | * gnat-style.texi: Fix typo. | |
46435 | ||
9e94c78f | 46436 | 2001-12-12 Geert Bosch <bosch@gnat.com> |
b468d8ec GB |
46437 | |
46438 | * einfo.h: Regenerate. | |
46439 | ||
9e94c78f | 46440 | 2001-12-12 Ed Schonberg <schonber@gnat.com> |
ed7da216 | 46441 | |
07fc65c4 | 46442 | * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names |
ed7da216 | 46443 | on known node types, rather than untyped fields. Further cleanups. |
82a4b025 | 46444 | |
9e94c78f | 46445 | 2001-12-12 Robert Dewar <dewar@gnat.com> |
ed7da216 GB |
46446 | |
46447 | * sem_ch12.adb: | |
46448 | (Save_Entity_Descendant): Minor comment update. | |
46449 | (Copy_Generic_Node): Deal with incorrect reference to Associated_Node | |
07fc65c4 | 46450 | of an N_Attribute_Reference node. As per note below, this does not |
ed7da216 | 46451 | eliminate need for Associated_Node in attribute ref nodes. |
07fc65c4 | 46452 | (Associated_Node): Documentation explicitly mentions attribute |
ed7da216 | 46453 | reference nodes, since this field is used in such nodes. |
82a4b025 | 46454 | |
ed7da216 GB |
46455 | * sem_ch12.adb (Associated_Node): Minor documentation cleanup. |
46456 | ||
9e94c78f | 46457 | 2001-12-12 Robert Dewar <dewar@gnat.com> |
de76a39c GB |
46458 | |
46459 | * s-stalib.adb: Add more comments on with statements being needed | |
82a4b025 | 46460 | |
de76a39c | 46461 | * par-ch12.adb: Minor reformatting |
82a4b025 | 46462 | |
de76a39c | 46463 | * prj-dect.ads: Fix copyright header |
82a4b025 | 46464 | |
07fc65c4 | 46465 | * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both |
de76a39c | 46466 | inputs fit in 32 bits, but the result still overflows. |
82a4b025 | 46467 | |
de76a39c | 46468 | * s-fatgen.ads: Minor comment improvement |
82a4b025 | 46469 | |
9e94c78f | 46470 | 2001-12-12 Ed Schonberg <schonber@gnat.com> |
de76a39c | 46471 | |
07fc65c4 GB |
46472 | * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a |
46473 | formal derived type, look for an inherited component from the full | |
de76a39c | 46474 | view of the parent, if any. |
82a4b025 | 46475 | |
9e94c78f | 46476 | 2001-12-12 Robert Dewar <dewar@gnat.com> |
de76a39c GB |
46477 | |
46478 | * checks.ads (Apply_Alignment_Check): New procedure. | |
82a4b025 | 46479 | |
07fc65c4 GB |
46480 | * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to |
46481 | ensure that the alignment of objects with address clauses is | |
de76a39c GB |
46482 | appropriate, and raise PE if not. |
46483 | ||
07fc65c4 | 46484 | * exp_util.ads (Must_Be_Aligned): Removed, replaced by |
de76a39c | 46485 | Exp_Pakd.Known_Aligned_Enough |
82a4b025 | 46486 | |
de76a39c GB |
46487 | * mdllfile.ads: Minor reformatting |
46488 | ||
46489 | * mlib-fil.ads: Minor reformatting | |
82a4b025 | 46490 | |
9e94c78f | 46491 | 2001-12-12 Ed Schonberg <schonber@gnat.com> |
de76a39c | 46492 | |
07fc65c4 GB |
46493 | * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous |
46494 | fix to any component reference if enclosing record has non-standard | |
de76a39c | 46495 | representation. |
82a4b025 | 46496 | |
9e94c78f | 46497 | 2001-12-12 Vincent Celier <celier@gnat.com> |
de76a39c | 46498 | |
07fc65c4 | 46499 | * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package |
de76a39c | 46500 | Iteration |
82a4b025 | 46501 | |
9e94c78f | 46502 | 2001-12-12 Ed Schonberg <schonber@gnat.com> |
de76a39c | 46503 | |
07fc65c4 | 46504 | * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in |
de76a39c | 46505 | sem_attr. |
82a4b025 | 46506 | |
9e94c78f | 46507 | 2001-12-12 Robert Dewar <dewar@gnat.com> |
de76a39c GB |
46508 | |
46509 | * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration | |
82a4b025 | 46510 | |
9e94c78f | 46511 | 2001-12-12 Emmanuel Briot <briot@gnat.com> |
de76a39c GB |
46512 | |
46513 | * g-regexp.adb: Remove all debug code, since it isn't required anymore, | |
46514 | and it adds dependencies to system.io. | |
82a4b025 | 46515 | |
9e94c78f | 46516 | 2001-12-12 Pascal Obry <obry@gnat.com> |
de76a39c | 46517 | |
07fc65c4 | 46518 | * g-dirope.adb (Expand_Path.Var): Correctly detect end of |
de76a39c GB |
46519 | variable name. |
46520 | ||
9e94c78f | 46521 | 2001-12-11 Ed Schonberg <schonber@gnat.com> |
0b09835f ES |
46522 | |
46523 | * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance | |
07fc65c4 GB |
46524 | that is the parent of other generics, the instance body replaces the |
46525 | instance node. Retrieve the instance of the spec, which is the one | |
0b09835f ES |
46526 | that is visible in clients and within the body. |
46527 | ||
9e94c78f | 46528 | 2001-12-11 Vincent Celier <celier@gnat.com> |
598c3446 GB |
46529 | |
46530 | * gnatmain.adb: Initial version. | |
82a4b025 | 46531 | |
598c3446 | 46532 | * gnatmain.ads: Initial version. |
82a4b025 | 46533 | |
598c3446 | 46534 | * prj-attr.adb (Initialisation_Data): Add package Gnatstub. |
82a4b025 | 46535 | |
598c3446 | 46536 | * snames.adb: Updated to match snames.ads. |
82a4b025 | 46537 | |
598c3446 | 46538 | * snames.ads: Added Gnatstub. |
82a4b025 | 46539 | |
9e94c78f | 46540 | 2001-12-11 Vincent Celier <celier@gnat.com> |
598c3446 | 46541 | |
07fc65c4 | 46542 | * prj-attr.adb (Initialization_Data): Change name from |
598c3446 | 46543 | Initialisation_Data. |
82a4b025 | 46544 | |
9e94c78f | 46545 | 2001-12-11 Emmanuel Briot <briot@gnat.com> |
598c3446 GB |
46546 | |
46547 | * g-regpat.adb (Parse_Literal): Properly handle simple operators ?, | |
46548 | + and * applied to backslashed expressions like \r. | |
82a4b025 | 46549 | |
9e94c78f | 46550 | 2001-12-11 Vasiliy Fofanov <fofanov@gnat.com> |
598c3446 | 46551 | |
07fc65c4 | 46552 | * g-os_lib.ads: String_List type added, Argument_List type is now |
598c3446 | 46553 | subtype of String_List. |
82a4b025 | 46554 | |
9e94c78f | 46555 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
598c3446 GB |
46556 | |
46557 | * g-os_lib.ads: Change copyright to FSF | |
46558 | Add comments for String_List type | |
82a4b025 | 46559 | |
9e94c78f | 46560 | 2001-12-11 Vincent Celier <celier@gnat.com> |
598c3446 | 46561 | |
07fc65c4 | 46562 | * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a |
598c3446 GB |
46563 | string to the buffer). |
46564 | ||
9e94c78f | 46565 | 2001-12-11 Ed Schonberg <schonber@gnat.com> |
7fb754a1 GB |
46566 | |
46567 | * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in | |
46568 | sem_attr. | |
82a4b025 | 46569 | |
7fb754a1 | 46570 | * sem_attr.adb: Simplify previous fix for Address. |
07fc65c4 GB |
46571 | (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now, |
46572 | to avoid anomalies where the bound of the type appears to raise | |
7fb754a1 GB |
46573 | constraint error. |
46574 | ||
9e94c78f | 46575 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
7fb754a1 | 46576 | |
07fc65c4 | 46577 | * lib-xref.adb (Output_Refs): Make sure pointers are always properly |
7fb754a1 | 46578 | handled. |
82a4b025 | 46579 | |
9e94c78f | 46580 | 2001-12-11 Ed Schonber <schonber@gnat.com> |
7fb754a1 | 46581 | |
07fc65c4 | 46582 | * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a |
7fb754a1 | 46583 | renamed unit before checking for recursive instantiations. |
82a4b025 | 46584 | |
9e94c78f | 46585 | 2001-12-11 Emmanuel Briot <briot@gnat.com> |
7fb754a1 GB |
46586 | |
46587 | * prj.ads: Add comments for some of the fields. | |
46588 | ||
9e94c78f | 46589 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
0873bafc | 46590 | |
07fc65c4 | 46591 | * lib-xref.adb (Output_Refs): Don't output type references outside |
0873bafc | 46592 | the main unit if they are not otherwise referenced. |
82a4b025 | 46593 | |
9e94c78f | 46594 | 2001-12-11 Ed Schonberg <schonber@gnat.com> |
0873bafc | 46595 | |
07fc65c4 | 46596 | * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify |
0873bafc | 46597 | code and diagnose additional illegal uses |
82a4b025 | 46598 | |
07fc65c4 | 46599 | * sem_util.adb (Is_Object_Reference): An indexed component is an |
0873bafc | 46600 | object only if the prefix is. |
82a4b025 | 46601 | |
9e94c78f | 46602 | 2001-12-11 Vincent Celier <celier@gnat.com> |
0873bafc GB |
46603 | |
46604 | * g-diopit.adb: Initial version. | |
82a4b025 | 46605 | |
0873bafc | 46606 | * g-diopit.ads: Initial version. |
82a4b025 | 46607 | |
0873bafc GB |
46608 | * g-dirope.adb: |
46609 | (Expand_Path): Avoid use of Unbounded_String | |
46610 | (Find, Wildcard_Iterator): Moved to child package Iteration | |
82a4b025 | 46611 | |
0873bafc | 46612 | * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS |
82a4b025 | 46613 | |
9e94c78f | 46614 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
0873bafc GB |
46615 | |
46616 | * sem_attr.adb: Minor reformatting | |
46617 | ||
9e94c78f | 46618 | 2001-12-11 Ed Schonberg <schonber@gnat.com> |
d087cd96 GB |
46619 | |
46620 | * sem_ch3.adb: Clarify some ???. | |
82a4b025 | 46621 | |
9e94c78f | 46622 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
d087cd96 | 46623 | |
07fc65c4 | 46624 | * exp_util.adb (Must_Be_Aligned): Removed, replaced by |
d087cd96 | 46625 | Exp_Pakd.Known_Aligned_Enough |
82a4b025 | 46626 | |
07fc65c4 | 46627 | * sem_ch13.adb (Check_Address_Alignment): Removed, extended |
d087cd96 GB |
46628 | version is moved to Exp_Ch13. |
46629 | ||
9e94c78f | 46630 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
d087cd96 GB |
46631 | |
46632 | * einfo.ads: Minor reformatting | |
82a4b025 | 46633 | |
d087cd96 | 46634 | * exp_ch5.adb: Add comment for previous.change |
82a4b025 | 46635 | |
d087cd96 | 46636 | * ali.adb: New interface for extended typeref stuff. |
82a4b025 | 46637 | |
d087cd96 | 46638 | * ali.ads: New interface for typeref stuff. |
82a4b025 | 46639 | |
d087cd96 | 46640 | * checks.adb (Apply_Alignment_Check): New procedure. |
82a4b025 | 46641 | |
d087cd96 | 46642 | * debug.adb: Add -gnatdM for modified ALI output |
82a4b025 | 46643 | |
d087cd96 | 46644 | * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough. |
82a4b025 | 46645 | |
07fc65c4 GB |
46646 | * lib-xref.adb: Extend generation of <..> notation to cover |
46647 | subtype/object types. Note that this is a complete rewrite, | |
46648 | getting rid of the very nasty quadratic algorithm previously | |
d087cd96 | 46649 | used for derived type output. |
82a4b025 | 46650 | |
07fc65c4 GB |
46651 | * lib-xref.ads: Extend description of <..> notation to cover |
46652 | subtype/object types. Uses {..} for these other cases. | |
d087cd96 | 46653 | Also use (..) for pointer types. |
82a4b025 | 46654 | |
d087cd96 | 46655 | * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup. |
82a4b025 | 46656 | |
07fc65c4 | 46657 | * exp_pakd.adb: Minor reformatting. Note that prevous RH should say: |
d087cd96 GB |
46658 | (Known_Aligned_Enough): Replaces Must_Be_Aligned. |
46659 | ||
9e94c78f | 46660 | 2001-12-11 Vincent Celier <celier@gnat.com> |
290986ed GB |
46661 | |
46662 | * gnatcmd.adb: | |
46663 | Changed /COMPILE_ONLY to /ACTIONS=COMPILE | |
46664 | Changed /BIND_ONLY to /ACTIONS=BIND | |
46665 | Changed /LINK_ONLY to /ACTIONS=LINK | |
82a4b025 | 46666 | |
290986ed GB |
46667 | 2001-12-11 Ed Schonberg <schonber@gnat.com> |
46668 | ||
46669 | * sem_ch8.adb (Find_Selected_Component): improved search for a | |
46670 | candidate package in case of error. | |
82a4b025 | 46671 | |
290986ed GB |
46672 | * sem_ch12.adb (Inline_Instance_Body): place head of use_clause |
46673 | chain back on scope stack before reinstalling use clauses. | |
82a4b025 | 46674 | |
290986ed GB |
46675 | * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings |
46676 | is enabled, do not kill the code for the condition, to preserve | |
46677 | warning. | |
46678 | ||
9e94c78f | 46679 | 2001-12-11 Robert Dewar <dewar@gnat.com> |
84157f51 | 46680 | |
07fc65c4 | 46681 | * checks.adb (Insert_Valid_Check): Apply validity check to expression |
84157f51 GB |
46682 | of conversion, not to result of conversion. |
46683 | ||
9e94c78f | 46684 | 2001-12-11 Ed Schonberg <schonber@gnat.com> |
82a4b025 | 46685 | |
07fc65c4 GB |
46686 | * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag |
46687 | before freezing parent. If the declarations are mutually recursive, | |
46688 | an access to the current record type may be frozen before the | |
84157f51 GB |
46689 | derivation is complete. |
46690 | ||
9e94c78f | 46691 | 2001-12-05 Vincent Celier <celier@gnat.com> |
7ffa903f | 46692 | |
07fc65c4 | 46693 | * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY, |
7ffa903f | 46694 | -c /COMPILE_ONLY, -l /LINK_ONLY |
82a4b025 | 46695 | |
7ffa903f VC |
46696 | * opt.ads: |
46697 | (Bind_Only): New Flag | |
46698 | (Link_Only): New flag | |
82a4b025 | 46699 | |
07fc65c4 | 46700 | * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only) |
7ffa903f | 46701 | and -l (Link_Only) |
82a4b025 | 46702 | |
7ffa903f | 46703 | * makeusg.adb: Add new switches -b and -l. Update Copyright notice. |
82a4b025 | 46704 | |
7ffa903f VC |
46705 | * make.adb: |
46706 | (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags. | |
46707 | (Gnatmake): Set the step flags. Only perform a step if the | |
46708 | corresponding step flag is True. | |
46709 | (Scan_Make_Arg): Reset the bind and link step flags when -u | |
46710 | or -gnatc has been specified. | |
46711 | ||
9e94c78f | 46712 | 2001-12-05 Ed Schonberg <schonber@gnat.com> |
f91b40db | 46713 | |
07fc65c4 | 46714 | * sem_eval.adb (Eval_Concatenation): If left operand is a null string, |
f91b40db | 46715 | get bounds from right operand. |
82a4b025 | 46716 | |
f91b40db | 46717 | * sem_eval.adb: Minor reformatting |
82a4b025 | 46718 | |
07fc65c4 | 46719 | * exp_util.adb (Make_Literal_Range): use bound of literal rather |
f91b40db | 46720 | than Index'First, its lower bound may be different from 1. |
82a4b025 | 46721 | |
07fc65c4 | 46722 | * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B |
f91b40db | 46723 | and C48009J |
82a4b025 | 46724 | |
9e94c78f | 46725 | 2001-12-05 Vincent Celier <celier@gnat.com> |
f91b40db GB |
46726 | |
46727 | * prj-nmsc.adb Minor reformatting | |
82a4b025 | 46728 | |
07fc65c4 | 46729 | * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if |
f91b40db | 46730 | set and libraries are not supported. |
82a4b025 | 46731 | |
9e94c78f | 46732 | 2001-12-05 Ed Schonberg <schonber@gnat.com> |
f91b40db | 46733 | |
07fc65c4 GB |
46734 | * sem_ch3.adb (Build_Derived_Private_Type): set Public status of |
46735 | private view explicitly, so the back-end can treat as a global | |
f91b40db GB |
46736 | when appropriate. |
46737 | ||
9e94c78f | 46738 | 2001-12-05 Ed Schonberg <schonber@gnat.com> |
45d04cbb GB |
46739 | |
46740 | * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation | |
46741 | unit, always replace instance node with new body, for ASIS use. | |
46742 | ||
9e94c78f | 46743 | 2001-12-05 Vincent Celier <celier@gnat.com> |
82a4b025 | 46744 | |
07fc65c4 GB |
46745 | * prj-nmsc.adb (Language_Independent_Check): Issue a warning if |
46746 | libraries are not supported and both attributes Library_Name and | |
45d04cbb | 46747 | Library_Dir are specified. |
82a4b025 | 46748 | |
07fc65c4 | 46749 | * prj-proc.adb (Expression): Set location of Result to location of |
45d04cbb | 46750 | first term. |
82a4b025 | 46751 | |
45d04cbb GB |
46752 | * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS. |
46753 | (prj-nmsc is now importing MLib.Tgt) | |
82a4b025 | 46754 | |
45d04cbb GB |
46755 | * prj-proc.adb: Put the change indicated above that was forgotten. |
46756 | ||
9e94c78f | 46757 | 2001-12-05 Robert Dewar <dewar@gnat.com> |
84436014 RD |
46758 | |
46759 | * Makefile.in: Add dependencies for System.IO for GNAT.Regexp | |
46760 | ||
9e94c78f | 46761 | 2001-12-05 Ed Schonberg <schonber@gnat.com> |
7ae0dcd8 ES |
46762 | |
46763 | * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a | |
46764 | constraint, introduce explicit subtype declaration and derive from it. | |
82a4b025 | 46765 | |
7ae0dcd8 ES |
46766 | * sem_ch3.adb: Minor reformatting |
46767 | ||
9e94c78f | 46768 | 2001-12-05 Robert Dewar <dewar@gnat.com> |
c9a4817d | 46769 | |
07fc65c4 | 46770 | * checks.adb (Determine_Range): Increase cache size for checks. |
c9a4817d | 46771 | Minor reformatting |
82a4b025 | 46772 | |
c9a4817d RD |
46773 | * exp_ch6.adb: Minor reformatting |
46774 | (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has | |
46775 | a parameter whose root type is System.Address, since treating such | |
46776 | subprograms as pure in the code generator is almost surely a mistake | |
46777 | that will lead to unexpected results. | |
82a4b025 | 46778 | |
07fc65c4 | 46779 | * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and |
c9a4817d | 46780 | change handling of conversions. |
82a4b025 | 46781 | |
c9a4817d RD |
46782 | * g-regexp.adb: Use System.IO instead of Ada.Text_IO. |
46783 | ||
9e94c78f | 46784 | 2001-12-05 Ed Schonberg <schonber@gnat.com> |
2514b839 | 46785 | |
07fc65c4 GB |
46786 | * sem_ch3.adb (Analyze_Object_Declaration): If expression is an |
46787 | aggregate with static wrong size, attach generated Raise node to | |
2514b839 ES |
46788 | declaration. |
46789 | ||
9e94c78f | 46790 | 2001-12-05 Robert Dewar <dewar@gnat.com> |
457b6274 | 46791 | |
07fc65c4 | 46792 | * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute. |
457b6274 RD |
46793 | Fixes compilation abandoned bomb in B24009B. |
46794 | ||
9e94c78f | 46795 | 2001-12-05 Ed Schonberg <schonber@gnat.com> |
19349925 ES |
46796 | |
46797 | * sem_ch12.adb: | |
46798 | Document use of Associated_Node on Selected_Components. | |
46799 | (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants, | |
46800 | to clarify use of untyped descendant fields. | |
46801 | ||
9e94c78f | 46802 | 2001-12-05 Robert Dewar <dewar@gnat.com> |
6663c393 RD |
46803 | |
46804 | * prj-dect.ads: Add ??? comment | |
46805 | Add 2001 to copyright notice (was not done in after all) | |
82a4b025 | 46806 | |
6663c393 | 46807 | * prj-part.adb: Minor reformatting. Reword one awkward error message. |
82a4b025 | 46808 | |
6663c393 | 46809 | * prj.ads: Minor reformatting throughout, and add some ??? comments |
82a4b025 | 46810 | |
6663c393 RD |
46811 | * snames.ads: Minor reformatting |
46812 | ||
9e94c78f | 46813 | 2001-12-05 Geert Bosch <bosch@gnat.com> |
d7b2a6af GB |
46814 | |
46815 | * snames.adb: Autoupdate | |
46816 | ||
9e94c78f | 46817 | 2001-12-05 Vincent Celier <celier@gnat.com> |
fbc9a404 VC |
46818 | |
46819 | * prj-dect.adb (Parse): Rename parameter Modifying to Extends. | |
82a4b025 | 46820 | |
fbc9a404 | 46821 | * prj-dect.ads (Parse): Rename parameter Modifying to Extends. |
82a4b025 | 46822 | |
fbc9a404 | 46823 | * prj-env.adb: Minor comment changes (modifying -> extends). |
82a4b025 | 46824 | |
fbc9a404 | 46825 | * prj-nmsc.adb: Minor comment changes (modifying -> extends). |
82a4b025 | 46826 | |
07fc65c4 | 46827 | * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to |
fbc9a404 | 46828 | Tok_Extends. |
82a4b025 | 46829 | |
fbc9a404 | 46830 | * prj.adb (Initialize): Change Modifying to Extends. |
82a4b025 | 46831 | |
fbc9a404 | 46832 | * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends. |
82a4b025 | 46833 | |
fbc9a404 | 46834 | * prj.ads: Minor comment change (Modifying -> extending). |
82a4b025 | 46835 | |
fbc9a404 VC |
46836 | * snames.ads: Change modifying to extends. |
46837 | ||
9e94c78f | 46838 | 2001-12-05 Robert Dewar <dewar@gnat.com> |
7cff0b1b | 46839 | |
07fc65c4 | 46840 | * sem_warn.adb: Remove stuff for conditionals, we are not going to |
7cff0b1b | 46841 | do this after all. |
82a4b025 | 46842 | |
07fc65c4 | 46843 | * sem_warn.ads: Remove stuff for conditionals, we are not going to |
7cff0b1b RD |
46844 | do this after all. Add 2001 to copyright notice |
46845 | ||
9e94c78f | 46846 | 2001-12-04 Geert Bosch <bosch@gnat.com> |
4f56ebb7 GB |
46847 | |
46848 | * einfo.h, sinfo.h, treeprs.ads: Regenerate. | |
46849 | ||
9e94c78f | 46850 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
053defdf | 46851 | |
07fc65c4 GB |
46852 | * errout.adb (Error_Msg): Ignore attempt to put error msg at junk |
46853 | location if we already have errors. Stops some cases of cascaded | |
053defdf | 46854 | errors. |
82a4b025 | 46855 | |
053defdf RD |
46856 | * errout.adb: Improve comment. |
46857 | ||
9e94c78f | 46858 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
f311e166 RD |
46859 | |
46860 | * sem_ch12.adb: | |
46861 | (Analyze_Formal_Type_Definition): Defend against Error. | |
46862 | (Analyze_Formal_Subprogram): Defend against Error. | |
82a4b025 | 46863 | |
07fc65c4 | 46864 | * par-ch12.adb (F_Formal_Type_Declaration): In case of error, |
f311e166 RD |
46865 | remove following semicolon if present. Removes cascaded error. |
46866 | ||
9e94c78f | 46867 | 2001-12-04 Douglas B. Rupp <rupp@gnat.com> |
d61bd65a DR |
46868 | |
46869 | * bindgen.adb: | |
46870 | (Gen_Exception_Table_Ada): Write "begin" and then return if Num | |
46871 | exceptions equals 0. | |
46872 | (Gen_Exception_Table_C): Return if Num exceptions equals 0. | |
46873 | Fixes PIWG E tests (which have to be run with -gnatL). | |
46874 | ||
9e94c78f | 46875 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
4ba603e2 RD |
46876 | |
46877 | * einfo.ads: Minor reformatting | |
46878 | ||
9e94c78f | 46879 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
57568d91 | 46880 | |
07fc65c4 GB |
46881 | * einfo.ads: Block_Node points to the identifier of the block, not to |
46882 | the block node itself, to preserve the link when the block is | |
46883 | rewritten, e.g. within an if-statement with a static condition. | |
82a4b025 | 46884 | |
07fc65c4 | 46885 | * inline.adb (Cleanup_Scopes): recover block statement from block |
57568d91 | 46886 | entity using new meaning of Block_Node. |
82a4b025 | 46887 | |
07fc65c4 | 46888 | * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to |
57568d91 ES |
46889 | identifier of block node, rather than to node itself. |
46890 | ||
9e94c78f | 46891 | 2001-12-04 Gary Dismukes <dismukes@gnat.com> |
82a4b025 | 46892 | |
0815d36a GD |
46893 | * layout.adb: |
46894 | (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size. | |
46895 | (Discrimify): Go back to setting the Etypes of the selected component | |
07fc65c4 | 46896 | because the Vname component does not exist at this point and will |
0815d36a GD |
46897 | fail name resolution. Also set Analyzed. |
46898 | Remove with and use of Sem_Res. | |
46899 | ||
9e94c78f | 46900 | 2001-12-04 Arnaud Charlet <charlet@gnat.com> |
edc0f304 AC |
46901 | |
46902 | * Makefile.in: (HIE_SOURCES): add s-fat*. | |
46903 | ||
9e94c78f | 46904 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
32213142 RD |
46905 | |
46906 | * sem_attr.adb: | |
46907 | (Compile_Time_Known_Attribute): New procedure. | |
46908 | (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure | |
46909 | proper range check. | |
46910 | ||
9e94c78f | 46911 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
c0def2ad | 46912 | |
07fc65c4 | 46913 | * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before |
c0def2ad ES |
46914 | processing discriminants to diagnose illegal default values. |
46915 | ||
9e94c78f | 46916 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
ee0a48c5 | 46917 | |
07fc65c4 GB |
46918 | * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide |
46919 | access discriminant within a type extension that constrains its | |
ee0a48c5 ES |
46920 | parent discriminants. |
46921 | ||
9e94c78f | 46922 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
dd5875a6 | 46923 | |
07fc65c4 | 46924 | * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication |
dd5875a6 | 46925 | is malformed, use instance of Any_Id to allow analysis to proceed. |
82a4b025 | 46926 | |
07fc65c4 | 46927 | * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if |
dd5875a6 ES |
46928 | type definition is illegal. |
46929 | (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is | |
46930 | misplaced. | |
46931 | ||
9e94c78f | 46932 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
c2a41e57 | 46933 | |
07fc65c4 | 46934 | * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to |
c2a41e57 ES |
46935 | constants. |
46936 | ||
9e94c78f | 46937 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
0ae84753 RD |
46938 | |
46939 | * errout.adb: Minor reformatting | |
46940 | ||
9e94c78f | 46941 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
63db260e RD |
46942 | |
46943 | * exp_util.adb: Minor reformatting from last change | |
82a4b025 | 46944 | |
07fc65c4 GB |
46945 | * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node |
46946 | which is a rewriting of an expression, traverse the original | |
63db260e RD |
46947 | expression to remove warnings that may have been posted on it. |
46948 | ||
9e94c78f | 46949 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
c6d289f4 | 46950 | |
07fc65c4 | 46951 | * exp_util.adb (Must_Be_Aligned): Return false for a component of a |
c6d289f4 ES |
46952 | record that has other packed components. |
46953 | ||
9e94c78f | 46954 | 2001-12-04 Douglass B. Rupp <rupp@gnat.com> |
5917e80d DR |
46955 | |
46956 | * adaint.c: Minor cleanups. | |
46957 | ||
9e94c78f | 46958 | 2001-12-04 Douglass B. Rupp <rupp@gnat.com> |
2c70f9dd DR |
46959 | |
46960 | * adaint.c: Do not use utime.h on vxworks. | |
46961 | ||
9e94c78f | 46962 | 2001-12-04 Arnaud Charlet <charlet@gnat.com> |
e59b3387 | 46963 | |
07fc65c4 | 46964 | * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes |
e59b3387 AC |
46965 | more confusion than it solves. |
46966 | ||
9e94c78f | 46967 | 2001-12-04 Geert bosch <bosch@gnat.com> |
e288604a GB |
46968 | |
46969 | * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate. | |
46970 | ||
5ac21013 GB |
46971 | 2001-12-04 Geert Bosch <bosch@gnat.com> |
46972 | ||
07fc65c4 | 46973 | * Makefile.in (update-sources): New target. |
5ac21013 GB |
46974 | For use by gcc_release script. |
46975 | ||
9e94c78f | 46976 | 2001-12-04 Ed Schonberg <schonber@gnat.com> |
7dd5bd5e | 46977 | |
07fc65c4 | 46978 | * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as |
7dd5bd5e ES |
46979 | a configuration pragma, it is now legal wherever a pragma can appear. |
46980 | ||
a078a589 ZW |
46981 | 2001-12-04 Zack Weinberg <zack@codesourcery.com> |
46982 | ||
46983 | * Makefile.in: Don't set ALL. Delete @cross_defines@, | |
46984 | @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS | |
46985 | is now @CROSS@ -DIN_GCC; update comment. | |
46986 | ||
9e94c78f | 46987 | 2001-12-04 Robert Dewar <dewar@gnat.com> |
0839863c GB |
46988 | |
46989 | * einfo.adb (Has_Pragma_Pure_Function): New flag. | |
46990 | Fix problem that stopped ceinfo from working | |
82a4b025 | 46991 | |
0839863c | 46992 | * einfo.ads (Has_Pragma_Pure_Function): New flag. |
82a4b025 | 46993 | |
0839863c GB |
46994 | * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function. |
46995 | ||
9e94c78f | 46996 | 2001-12-04 Douglas B. Rupp <rupp@gnat.com> |
9678de49 DR |
46997 | |
46998 | * gnatchop.adb: | |
46999 | (File_Time_Stamp): New procedure. | |
47000 | (Preserve_Mode): New boolean. | |
47001 | (Write_Unit): Pass time stamp. | |
47002 | Implement -p switch (preserve time stamps). | |
82a4b025 | 47003 | |
9678de49 | 47004 | * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE). |
82a4b025 | 47005 | |
9678de49 | 47006 | * gnatchop.adb: Do usage info for -p switch |
82a4b025 | 47007 | |
9678de49 | 47008 | * adaint.h (__gnat_set_file_time_name): New function |
82a4b025 | 47009 | |
9678de49 | 47010 | * adaint.c (__gnat_set_file_time_name): Implement |
82a4b025 | 47011 | |
9678de49 DR |
47012 | * adaint.h: Fix typo |
47013 | ||
9e94c78f | 47014 | 2001-12-03 Robert Dewar <dewar@gnat.com> |
3b9a13c4 | 47015 | |
667e5c5d | 47016 | * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not |
b4f94ac1 | 47017 | have Associated_Node. |
3b9a13c4 | 47018 | |
9e94c78f | 47019 | 2001-12-03 Robert Dewar <dewar@gnat.com> |
767b404e RD |
47020 | |
47021 | * prj-proc.adb: Minor reformatting | |
667e5c5d | 47022 | |
767b404e RD |
47023 | * make.adb: Minor reformatting |
47024 | ||
9e94c78f | 47025 | 2001-12-03 Geert Bosch <bosch@gnat.com> |
11ac71ba | 47026 | |
667e5c5d | 47027 | * make.adb: Minor reformatting. |
11ac71ba | 47028 | |
ef3d4d6e | 47029 | 2001-12-03 Robert Dewar <dewar@gnat.com> |
b1446533 RD |
47030 | |
47031 | * sem_ch12.adb: Minor reformatting | |
47032 | ||
9e94c78f | 47033 | 2001-12-03 Ed Schonberg <schonber@gnat.com> |
d6d32b24 | 47034 | |
667e5c5d AJ |
47035 | * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and |
47036 | push Standard on the stack before analyzing the instance body, | |
d6d32b24 | 47037 | in order to have a clean visibility environment. |
667e5c5d AJ |
47038 | |
47039 | * sem_ch12.adb (Inline_Instance_Body): Remove redundant code. | |
d6d32b24 | 47040 | |
9e94c78f | 47041 | 2001-12-03 Ed Schonberg <schonber@gnat.com> |
13f08f03 | 47042 | |
667e5c5d | 47043 | * sem_ch12.adb (Instantiate_Package_Body): Protect against double |
13f08f03 ES |
47044 | instantiation of a body that contains an inlined body. |
47045 | ||
9e94c78f | 47046 | 2001-12-03 Ed Schonberg <schonber@gnat.com> |
3bd6c100 ES |
47047 | |
47048 | * sem_ch12.adb: | |
47049 | (Analyze_generic_subprogram_Declaration): Set outer_generic_scope, | |
47050 | to prevent freezing within formal packages. | |
47051 | (Freeze_Subprogram_Body): If body comes from another instance that | |
47052 | appeared before its own body, place freeze node at end of current | |
47053 | declarative part, to prevent a back-end crash. | |
47054 | (Inline_Instance_Body): Handle properly a package instance within | |
47055 | a subprogram instance that is a child unit. | |
47056 | ||
58d07d8f GS |
47057 | 2001-12-01 Graham Stott <grahams@redhat.com> |
47058 | ||
47059 | * Makefile.in (misc.o): Add missing $(srcdir) prefix | |
47060 | and add optabs.h dependency. | |
47061 | ||
47062 | * misc.c: Include optabs.h | |
47063 | (gnat_tree_code_type): Make static and const. | |
47064 | (gnat_tree_code_length): Likewise. | |
47065 | (gnat_tree_code_name): Likewise. | |
47066 | (update_setjmp_buf): Obtain operands mode from insn_data. | |
47067 | ||
c87222f0 RH |
47068 | 2001-11-29 Richard Henderson <rth@redhat.com> |
47069 | ||
47070 | * init.c: Remove obsolete dwarf2 frame.h section. | |
47071 | ||
d3945f0a JM |
47072 | 2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk> |
47073 | ||
47074 | * Make-lang.in (ada.generated-manpages): New dummy target. | |
47075 | ||
9e94c78f | 47076 | 2001-11-29 Ed Schonberg <schonber@gnat.com> |
9f639397 | 47077 | |
667e5c5d AJ |
47078 | * g-os_lib.adb (Add_To_Command): use explicit loop to move string |
47079 | into Command, an array conversion is illegal here. Uncovered by | |
9f639397 ES |
47080 | ACATS B460005. |
47081 | ||
9e94c78f | 47082 | 2001-11-28 Geert Bosch <bosch@gnat.com> |
c835e5c6 GB |
47083 | |
47084 | * init.c: Minor whitespace changes. | |
47085 | ||
9e94c78f | 47086 | 2001-11-28 Doug Rupp <rupp@gnat.com> |
49bb4548 | 47087 | |
667e5c5d | 47088 | * init.c: (__gnat_install_handler,VMS): Increase size of alternate |
49bb4548 DR |
47089 | signal stack. |
47090 | ||
ea2417e5 ZW |
47091 | 2001-11-28 Zack Weinberg <zack@codesourcery.com> |
47092 | ||
47093 | * misc.c (gnat_expand_constant): Move declaration above | |
47094 | definition of lang_hooks. | |
47095 | (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant. | |
47096 | (gnat_init): lang_expand_constant no longer exists. | |
47097 | ||
47098 | (internal_error_function): Remove #ifdef HAVE_VPRINTF. We | |
47099 | always have vprintf. | |
47100 | (gnat_init): Always call set_internal_error_function. | |
47101 | ||
f8e0aa73 AJ |
47102 | 2001-11-27 Andreas Jaeger <aj@suse.de> |
47103 | ||
47104 | * Makefile.in (stamp-tool_src_dir): Use symbolic link. | |
47105 | ||
d99b0e79 LG |
47106 | 2001-11-27 Laurent Guerby <guerby@acm.org> |
47107 | ||
47108 | * Makefile.in: Regenerate Ada dependencies. | |
47109 | ||
3f0496e5 RH |
47110 | 2001-11-26 Richard Henderson <rth@redhat.com> |
47111 | ||
47112 | * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd, | |
47113 | gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys, | |
47114 | gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o. | |
47115 | ||
92fa4733 LG |
47116 | 2001-11-25 Laurent Guerby <guerby@acm.org> |
47117 | ||
47118 | * sysdep.c (rts_get_*): Fix style. | |
47119 | ||
07626501 LG |
47120 | 2001-11-19 Laurent Guerby <guerby@acm.org> |
47121 | ||
47122 | * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include | |
47123 | since it is of no apparent use and cause warnings. | |
47124 | ||
22703ccc NB |
47125 | 2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk> |
47126 | ||
47127 | * misc.c (gnat_decode_option, gnat_init_options): Make definitions | |
47128 | static too. | |
47129 | (gnat_init): Don't return NULL. | |
47130 | (finish_parse): Remove. | |
47131 | ||
b0df4321 LG |
47132 | 2001-11-17 Laurent Guerby <guerby@acm.org> |
47133 | ||
47134 | * Make-lang.in (GNATLIBFLAGS): Add -W -Wall. | |
47135 | * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing. | |
47136 | * io-aux.c: Provide K&R prototypes to all functions, reformat code. | |
47137 | * lang-spec.h: Add missing struct field to silence warnings. | |
47138 | * sysdep.c (rts_get_*): Provide K&R prototype. | |
47139 | * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype. | |
47140 | * traceback.c (Unlock_Task, Lock_Task): Likewise. | |
47141 | * tracebak.c (__gnat_backtrace): Remove unused variable. | |
47142 | * utils.c (end_subprog_body): Move to K&R style. | |
47143 | ||
d215024f RK |
47144 | Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
47145 | ||
47146 | * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference. | |
47147 | ||
f5e99456 NB |
47148 | 2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk> |
47149 | ||
47150 | * misc.c (gnat_init): Change prototype. Include the | |
47151 | functionality of the old init_parse and init_decl_processing. | |
47152 | (gnat_init_decl_processing): New prototype. | |
47153 | (init_parse): Remove. | |
47154 | * utils.c (init_decl_processing): Rename gnat_init_decl_processing. | |
47155 | ||
5d69f816 NB |
47156 | 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk> |
47157 | ||
47158 | * misc.c (gnat_print_decl, gnat_print_type): Renamed. | |
47159 | (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override. | |
47160 | (print_lang_statistics, lang_print_xnode, print_lang_identifier, | |
47161 | set_yydebug): Remove. | |
47162 | ||
3ac88239 NB |
47163 | 2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk> |
47164 | ||
47165 | * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override. | |
47166 | (struct lang_hooks): Constify. | |
47167 | (language_string, lang_identify): Remove. | |
47168 | * utils.c (init_decl_processing): Update. | |
47169 | ||
d23c55c2 NB |
47170 | 2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk> |
47171 | ||
47172 | * misc.c: Include langhooks-def.h. | |
47173 | * Makefile.in: Update. | |
47174 | ||
9e94c78f | 47175 | 2001-10-30 Robert Dewar <dewar@gnat.com> |
04a1b79c RD |
47176 | |
47177 | * style.adb: | |
47178 | (Check_Identifier): Rewrite circuit to be compatible with use of letters | |
47179 | in the upper half of ASCII. | |
47180 | (Check_Identifier): Minor reformatting | |
47181 | ||
9e94c78f | 47182 | 2001-10-30 Geert Bosch <bosch@gnat.com> |
81fa2d39 | 47183 | |
f8e0aa73 | 47184 | * (Associated_Node, Set_Associated_Node): Do not check for |
81fa2d39 GB |
47185 | Freeze_Entity. |
47186 | ||
9e94c78f | 47187 | 2001-10-30 Robert Dewar <dewar@gnat.com> |
ffc5527f RD |
47188 | |
47189 | * a-reatim.ads: Minor reformatting | |
47190 | ||
9e94c78f | 47191 | 2001-10-30 Robert Dewar <dewar@gnat.com> |
865335eb | 47192 | |
f8e0aa73 | 47193 | * gnatdll.adb: Minor reformatting throughout. Many ??? added for |
865335eb RD |
47194 | undocumented declarations. |
47195 | ||
9e94c78f | 47196 | 2001-10-30 Pascal Obry <obry@gnat.com> |
5e257178 | 47197 | |
f8e0aa73 | 47198 | * gnatdll.adb (Parse_Command_Line): handle -g option to be passed |
5e257178 PO |
47199 | to the binder and linker. |
47200 | Minor style fix. | |
f8e0aa73 | 47201 | |
5e257178 PO |
47202 | * mdll.ads: Fix layout. Update copyright notice. |
47203 | ||
47204 | * mdll.adb: Fix layout. Update copyright notice. | |
47205 | ||
9e94c78f | 47206 | 2001-10-30 Robert Dewar <dewar@gnat.com> |
1753e0ad RD |
47207 | |
47208 | * usage.adb: Minor fix to output for -gnaty. | |
47209 | ||
9e94c78f | 47210 | 2001-10-30 Ed Schonberg <schonber@gnat.com> |
84bfdde0 | 47211 | |
f8e0aa73 AJ |
47212 | * a-reatim.ads: Makes Seconds_Count into a 64-bit integer, |
47213 | to accommodate all its possible values. | |
84bfdde0 | 47214 | |
f8e0aa73 | 47215 | * a-reatim.adb (Split): Special-case handling of Time_Span_First |
84bfdde0 ES |
47216 | and of small absolute values of T. |
47217 | ||
9e94c78f | 47218 | 2001-10-30 Richard Kenner <kenner@gnat.com> |
c296e5fc | 47219 | |
f8e0aa73 AJ |
47220 | * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to |
47221 | set_mem_attributes since not needed and wrong if RESULT if a REG; | |
c296e5fc RK |
47222 | fixes ACATS failures. |
47223 | ||
9e94c78f | 47224 | 2001-10-30 Geert Bosch <bosch@gnat.com> |
07c809df GB |
47225 | |
47226 | * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads, | |
47227 | s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice. | |
47228 | ||
9e94c78f | 47229 | 2001-10-30 Robert Dewar <dewar@gnat.com> |
f8e0aa73 | 47230 | |
54d22416 | 47231 | * bindusg.adb: Undocument -f switch. |
f8e0aa73 | 47232 | |
54d22416 | 47233 | * gnatcmd.adb: Remove /FULL_ELABORATION. |
f8e0aa73 AJ |
47234 | |
47235 | * opt.ads (Force_RM_Elaboration_Order): Document that this is | |
54d22416 | 47236 | obsolescent. |
f8e0aa73 | 47237 | |
54d22416 | 47238 | * gnatbind.adb: Output new warning for use of obsolescent -f switch. |
f8e0aa73 | 47239 | |
54d22416 RD |
47240 | * gnatbind.adb: Minor update of warning msg. |
47241 | ||
9e94c78f | 47242 | 2001-10-30 Vincent Celier <celier@gnat.com> |
af5cf6f8 | 47243 | |
f8e0aa73 | 47244 | * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations |
af5cf6f8 | 47245 | for project file switches (-P (/PROJECT_FILE=), |
f8e0aa73 | 47246 | -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT |
af5cf6f8 VC |
47247 | or MEDIUM or HIGH) |
47248 | ||
9e94c78f | 47249 | 2001-10-30 Geert Bosch <bosch@gnat.com> |
984bc4c3 GB |
47250 | |
47251 | * decl.c: Minor whitespace fixes. | |
47252 | ||
9e94c78f | 47253 | 2001-10-30 Richard Kenner <kenner@gnat.com> |
5dece937 RK |
47254 | |
47255 | * utils2.c (build_allocator): Test for SIZE overflow in array case too | |
47256 | ||
9e94c78f | 47257 | 2001-10-30 Geert Bosch <bosch@gnat.com> |
de4bf6cb | 47258 | |
f8e0aa73 | 47259 | * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out. |
de4bf6cb | 47260 | Found due to GCC 3.0 warning of using uninitialized value. |
f8e0aa73 | 47261 | |
de4bf6cb GB |
47262 | * layout.adb: |
47263 | (Get_Max_Size): Use variant record for tracking value/expression. | |
47264 | Makes logic clearer and prevents warnings for uninitialized variables. | |
47265 | (Layout_Array_Type): Use variant record for tracking value/expression. | |
47266 | Makes logic clearer and prevents warnings for uninitialized variables. | |
47267 | ||
9e94c78f | 47268 | 2001-10-30 Robert Dewar <dewar@gnat.com> |
f5e44987 RD |
47269 | |
47270 | * lib.adb: Minor reformatting | |
47271 | ||
47272 | * s-taprop.ads: Minor reformatting | |
47273 | ||
45659035 | 47274 | 2001-10-29 Laurent Guerby <guerby@acm.org> |
f8e0aa73 | 47275 | |
45659035 GB |
47276 | * init.c: |
47277 | (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg | |
47278 | const. | |
47279 | (_gnat_error_handler): Make MSG const. | |
47280 | ||
9e94c78f | 47281 | 2001-10-29 Richard Kenner <kenner@gnat.com> |
45659035 GB |
47282 | |
47283 | * sysdep.c: Fix localtime_r problem on LynxOS. | |
47284 | Also remove #elif to avoid warnings. | |
f8e0aa73 AJ |
47285 | |
47286 | * misc.c (yyparse): Don't set up and register jmpbuf; remove decls | |
45659035 | 47287 | used by this. |
f8e0aa73 | 47288 | |
45659035 GB |
47289 | * decl.c (annotate_value): Make SIZE unsigned to avoid warning. |
47290 | ||
638e383e JM |
47291 | 2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk> |
47292 | ||
47293 | * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb, | |
47294 | exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb, | |
47295 | g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads, | |
47296 | g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c, | |
47297 | layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads, | |
47298 | s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads, | |
47299 | sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb, | |
47300 | sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb, | |
47301 | sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads, | |
47302 | types.ads, urealp.adb: Fix spelling errors. | |
47303 | ||
9e94c78f | 47304 | 2001-10-27 Laurent Guerby <guerby@acm.org> |
97f6baa0 LG |
47305 | |
47306 | * trans.c (gigi): Fix non determinism leading to bootstrap | |
47307 | comparison failures for debugging information. | |
47308 | ||
46b58b8c FW |
47309 | 2001-10-26 Florian Weimer <fw@deneb.enyo.de> |
47310 | ||
47311 | * gnat_rm.texi: Use @./@: where appropriate. | |
47312 | ||
9e94c78f | 47313 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
30151c7b RD |
47314 | |
47315 | * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup. | |
47316 | ||
9e94c78f | 47317 | 2001-10-26 Richard Kenner <kenner@gnat.com> |
c0b1738d RK |
47318 | |
47319 | * gmem.c (__gnat_gmem_read_next): Properly check for EOF | |
47320 | ||
9e94c78f | 47321 | 2001-10-26 Richard Kenner <kenner@gnat.com> |
5b09c153 | 47322 | |
f8e0aa73 | 47323 | * decl.c (validate_size): Modify message for bad size to avoid |
5b09c153 RK |
47324 | implication that compiler is modifying the size. |
47325 | ||
9e94c78f | 47326 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
4d553668 RD |
47327 | |
47328 | * prj-util.adb: Minor reformatting. Fix bad header format. | |
47329 | ||
9e94c78f | 47330 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
3e542a58 RD |
47331 | |
47332 | * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup. | |
f8e0aa73 | 47333 | |
3e542a58 | 47334 | * sinfo.ads: Clarify use of Associated_Node (documentation only). |
f8e0aa73 AJ |
47335 | |
47336 | * sem_ch12.adb: Change Node4 to Associated_Node. Change | |
47337 | Associated_Node to Get_Associated_Node. Put use of Unchecked_Access | |
3e542a58 RD |
47338 | much more narrowly in places where needed. These are cleanups. |
47339 | ||
9e94c78f | 47340 | 2001-10-26 Joel Brobecker <brobecke@gnat.com> |
0bf08bfe JB |
47341 | |
47342 | * 5zosinte.ads (null_pthread): new constant. | |
f8e0aa73 | 47343 | |
0bf08bfe JB |
47344 | * 5ztaprop.adb: |
47345 | (Initialize_TCB): Initialize thread ID to null, to be able to verify | |
47346 | later that this field has been set. | |
47347 | (Finalize_TCB): ditto. | |
47348 | (Suspend_Task): Verify that the thread ID is not null before using it. | |
47349 | (Resume_Task): ditto. | |
f8e0aa73 | 47350 | |
0bf08bfe JB |
47351 | * s-tasdeb.adb: |
47352 | (Resume_All_Tasks): Lock the tasks list before using it. | |
47353 | (Suspend_All_Tasks): ditto. | |
47354 | ||
9e94c78f | 47355 | 2001-10-26 Richard Kenner <kenner@gnat.com> |
7a3a8c06 | 47356 | |
f8e0aa73 | 47357 | * decl.c (gnat_to_gnu_entity, case E_General_Access_Type): |
7a3a8c06 RK |
47358 | Make constant variant of designated type for Is_Access_Constant. |
47359 | Call update_pointer_to with main variant. | |
f8e0aa73 AJ |
47360 | |
47361 | * trans.c (process_freeze_entity, process_type): | |
7a3a8c06 | 47362 | Call update_pointer_to on main variant. |
f8e0aa73 | 47363 | |
7a3a8c06 RK |
47364 | * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE. |
47365 | If main variant, update all other variants. | |
f8e0aa73 AJ |
47366 | |
47367 | * utils2.c (build_unary_op, case INDIRECT_REF): No longer set | |
7a3a8c06 RK |
47368 | TREE_STATIC. |
47369 | ||
9e94c78f | 47370 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
a160babb RD |
47371 | |
47372 | * prj-util.adb: Minor reformatting | |
47373 | ||
9e94c78f | 47374 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
b403bd17 RD |
47375 | |
47376 | * prj-util.adb: Minor reformatting | |
47377 | ||
9e94c78f | 47378 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
5fc3b4c7 RD |
47379 | |
47380 | * prj-attr.adb: Minor reformatting throughout | |
47381 | ||
9e94c78f | 47382 | 2001-10-26 Robert Dewar <dewar@gnat.com> |
8c736034 RD |
47383 | |
47384 | * prj-attr.ads: Minor reformatting | |
47385 | Add ??? comment (this whole spec has almost no comments) | |
47386 | ||
9e94c78f | 47387 | 2001-10-26 Vincent Celier <celier@gnat.com> |
47d5b6ed | 47388 | |
f8e0aa73 | 47389 | * g-os_lib.adb (Normalize_Pathname): Preserve the double slash |
b4f94ac1 | 47390 | ("//") that precede the drive letter on Interix. |
47d5b6ed | 47391 | |
9e94c78f | 47392 | 2001-10-26 Geert Bosch <bosch@gnat.com> |
41af791f GB |
47393 | |
47394 | * gnat_rm.texi: Add GNAT Reference Manual. | |
47395 | ||
9e94c78f | 47396 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
ed4a1468 | 47397 | |
f8e0aa73 | 47398 | * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name |
b4f94ac1 | 47399 | is Error. Similar change for other renaming cases. |
ed4a1468 | 47400 | |
9e94c78f | 47401 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
24377ae4 RD |
47402 | |
47403 | * s-atacco.ads: Add pragma Inline_Always for functions. | |
47404 | Fix header format. Add copyright 2001 | |
47405 | ||
9e94c78f | 47406 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
fef3204e | 47407 | |
f8e0aa73 | 47408 | * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array |
b4f94ac1 | 47409 | return Error rather than Empty so that analysis can proceed. |
fef3204e | 47410 | |
9e94c78f | 47411 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
dfc69d80 | 47412 | |
f8e0aa73 | 47413 | * sem_util.adb (Enter_Name): better handling of cascaded error |
b4f94ac1 | 47414 | messages when a unit appears in its own context. |
dfc69d80 | 47415 | |
9e94c78f | 47416 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
5a15af62 | 47417 | |
f8e0aa73 | 47418 | * sem_util.adb (Defining_Entity): in case of error, attach created |
b4f94ac1 | 47419 | entity to specification, so that semantic analysis can proceed. |
5a15af62 | 47420 | |
9e94c78f | 47421 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
2b881d53 | 47422 | |
f8e0aa73 | 47423 | * sem_util.adb |
b4f94ac1 | 47424 | (Defining_Entity): Deal with Error. |
2b881d53 RD |
47425 | (Process_End_Label): Deal with bad end label for. |
47426 | ||
9e94c78f | 47427 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
578053f2 | 47428 | |
f8e0aa73 | 47429 | * sem_elab.adb (Check_A_Call): refine message when call is in an |
578053f2 ES |
47430 | instance but callee is not declared in the generic unit. |
47431 | ||
9e94c78f | 47432 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
f8e0aa73 AJ |
47433 | |
47434 | * sem_elab.adb (Check_A_Call): check for renaming before finding the | |
0597ce0b ES |
47435 | enclosing unit, which may already be different from the calling unit. |
47436 | ||
9e94c78f | 47437 | 2001-10-25 Geert Bosch <bosch@gnat.com> |
3de6e6da GB |
47438 | |
47439 | * 4gintnam.ads: fix header format. | |
47440 | ||
9e94c78f | 47441 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
6f311316 | 47442 | |
f8e0aa73 | 47443 | * sem_res.adb (Resolve_Call): if the call is actually an indexing |
b4f94ac1 ZW |
47444 | operation on the result of a parameterless call, perform elaboration |
47445 | check after the node has been properly rewritten. | |
f8e0aa73 AJ |
47446 | |
47447 | * sem_ch12.adb (Copy_Generic_Node): after the proper body has been | |
b4f94ac1 ZW |
47448 | inlined within the generic tree, the defining identifier is not a |
47449 | compilation_unit. | |
6f311316 | 47450 | |
9e94c78f | 47451 | 2001-10-25 Ed Schonberg <schonber@gnat.com> |
17be0cdf | 47452 | |
f8e0aa73 | 47453 | * sem_res.adb (Resolve): special-case resolution of Null in an |
b4f94ac1 | 47454 | instance or an inlined body to avoid view conflicts. |
f8e0aa73 AJ |
47455 | |
47456 | * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view | |
b4f94ac1 | 47457 | compatibility by retrieving the access type of the generic copy. |
17be0cdf | 47458 | |
9e94c78f | 47459 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
ce9e9122 RD |
47460 | |
47461 | * sem_ch3.adb: | |
47462 | (Analyze_Number_Declaration): Handle error expression. | |
47463 | (Signed_Integer_Type_Declaration): Handle error bound. | |
47464 | (Analyze_Subtype_Indication): Handle error range. | |
f8e0aa73 | 47465 | |
ce9e9122 RD |
47466 | * sem_util.adb (Get_Index_Bounds): Check for Error. |
47467 | ||
9e94c78f | 47468 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
e12fbc9e | 47469 | |
f8e0aa73 | 47470 | * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default |
e12fbc9e RD |
47471 | in no run time mode. |
47472 | ||
9e94c78f | 47473 | 2001-10-25 Pascal Obry <obry@gnat.com> |
52b80488 | 47474 | |
f8e0aa73 | 47475 | * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet |
b4f94ac1 | 47476 | mode case for ALLOC case. |
f8e0aa73 AJ |
47477 | |
47478 | * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on | |
b4f94ac1 | 47479 | all platforms. Improvement of last change. |
52b80488 | 47480 | |
9e94c78f | 47481 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
316ad9c5 RD |
47482 | |
47483 | * exp_ch4.adb (Expand_N_Allocator): Minor reformatting. | |
47484 | ||
1a7e4df4 GB |
47485 | 2001-10-25 Geert Bosch <bosch@gnat.com> |
47486 | ||
47487 | * osint.adb (Is_Relative): Remove duplicate. | |
47488 | ||
9e94c78f | 47489 | 2001-10-25 Pascal Obry <obry@gnat.com> |
90a9fff2 | 47490 | |
f8e0aa73 | 47491 | * osint.adb (Read_Default_Search_Dirs): correctly detect relative |
b4f94ac1 | 47492 | pathnames in UNIX and DOS style with drive letter. |
90a9fff2 | 47493 | (Is_Relative): new routine. |
f8e0aa73 | 47494 | |
90a9fff2 | 47495 | * osint.adb: Minor reformatting |
f8e0aa73 AJ |
47496 | |
47497 | * osint.adb (Is_Relative): implementation using | |
b4f94ac1 | 47498 | GNAT.OS_Lib.Is_Absolute_Path. Better fix. |
90a9fff2 | 47499 | |
9e94c78f | 47500 | 2001-10-25 Pascal Obry <obry@gnat.com> |
5c1ba4cc | 47501 | |
f8e0aa73 | 47502 | * g-dirope.adb (Basename): correctly compute offset between the |
b4f94ac1 | 47503 | original Path and the translated one. |
f8e0aa73 | 47504 | |
5c1ba4cc PO |
47505 | * g-dirope.adb: (Base_Name): add some comments. |
47506 | ||
9e94c78f | 47507 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
a7fb206d | 47508 | |
f8e0aa73 | 47509 | * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use |
b4f94ac1 | 47510 | in HIE mode, avoids compilation abandoned message |
f8e0aa73 | 47511 | |
a7fb206d | 47512 | * exp_imgv.adb: Correct typo in previous change |
f8e0aa73 | 47513 | |
a7fb206d RD |
47514 | * exp_imgv.adb: Correct typo in previous change (not my day!) |
47515 | ||
9e94c78f | 47516 | 2001-10-25 Robert Dewar <dewar@gnat.com> |
e6a7e62e RD |
47517 | |
47518 | * s-tpinop.ads: Add 2001 to copyright notice. Fix header format. | |
47519 | ||
9e94c78f | 47520 | 2001-10-25 Pascal Obry <obry@gnat.com> |
75c09e7d | 47521 | |
f8e0aa73 | 47522 | * g-awk.ads: Move all pragma inlines next to the routine |
0d2b8e0b | 47523 | declarations. This is more uniform with other GNAT spec. |
75c09e7d | 47524 | |
0d2b8e0b | 47525 | 2001-10-22 Geert Bosch <bosch@gnat.com> |
d2740a69 GB |
47526 | |
47527 | * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem. | |
47528 | ||
0d2b8e0b | 47529 | 2001-10-19 Geert Bosch <bosch@gnat.com> |
d7ac9bdd GB |
47530 | |
47531 | * Makefile.in (tools, gnattools): Remove gnatmem. | |
47532 | ||
17ed6335 RH |
47533 | 2001-10-17 Richard Henderson <rth@redhat.com> |
47534 | ||
47535 | * Makefile.in (misc.o): Depend on langhooks.h. | |
47536 | * misc.c: Include it. | |
47537 | (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New. | |
47538 | (LANG_HOOKS_DECODE_OPTION): New. | |
47539 | (lang_hooks): Use LANG_HOOKS_INITIALIZER. | |
47540 | ||
f2436274 FW |
47541 | 2001-10-16 Florian Weimer <fw@deneb.enyo.de> |
47542 | ||
47543 | * trans.c (tree_transform): Adjust to recent change in | |
47544 | expand_asm_operands to implement named asm operands. | |
47545 | ||
b14127e6 ES |
47546 | 2001-10-11 Ed Schonberg <schonber@gnat.com> |
47547 | ||
f8e0aa73 | 47548 | * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in |
b14127e6 ES |
47549 | renaming of discriminant for mutable record type. |
47550 | ||
e70ee92a RD |
47551 | 2001-10-11 Robert Dewar <dewar@gnat.com> |
47552 | ||
47553 | * validsw.adb: Properly save -gnatVn status. | |
47554 | ||
9e94c78f | 47555 | 2001-10-11 Robert Dewar <dewar@gnat.com> |
f8e0aa73 | 47556 | |
9a5621d7 RD |
47557 | * usage.adb: Add lines for V switch. |
47558 | ||
f8e0aa73 | 47559 | * gnatcmd.adb (COMPILE): Revise translations for -gnatV |
9a5621d7 RD |
47560 | (/VALIDITY_CHECKING). |
47561 | ||
9e94c78f | 47562 | 2001-10-11 Ed Schonberg <schonber@gnat.com> |
45667f04 | 47563 | |
f8e0aa73 | 47564 | * sem_type.adb (Add_One_Interp): an operator for a type declared in |
45667f04 ES |
47565 | an extension of System is known to be visible. |
47566 | ||
9e94c78f | 47567 | 2001-10-11 Ed Schonberg <schonber@gnat.com> |
c3de5c4c | 47568 | |
f8e0aa73 | 47569 | * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal |
c3de5c4c ES |
47570 | properly. Fixes regression on ACATS C34005G. |
47571 | ||
9e94c78f | 47572 | 2001-10-11 Robert Dewar <dewar@gnat.com> |
4fa964a6 | 47573 | |
f8e0aa73 | 47574 | * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null |
4fa964a6 RD |
47575 | loop in generic instance, since this is likely not very useful. |
47576 | ||
9e94c78f | 47577 | 2001-10-11 Robert Dewar <dewar@gnat.com> |
0868e09c | 47578 | |
f8e0aa73 | 47579 | * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize |
0868e09c | 47580 | the error message for high integrity mode. |
f8e0aa73 AJ |
47581 | |
47582 | * rtsfind.adb (RTE): Give message if we try to find an entity that | |
0868e09c | 47583 | is not available in high integrity mode. |
f8e0aa73 | 47584 | |
0868e09c RD |
47585 | * rtsfind.ads: |
47586 | (OK_To_Use_In_HIE_Mode): New array. | |
47587 | (RTE): May return Empty in high integrity mode. | |
f8e0aa73 AJ |
47588 | |
47589 | * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for | |
47590 | OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx. | |
47591 | ||
47592 | * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined | |
47593 | unit if not inlined always and in no runtime mode. Fixes problem | |
0868e09c | 47594 | caused by new Rtsfind changes. |
f8e0aa73 AJ |
47595 | |
47596 | * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if | |
0868e09c | 47597 | body is deleted. |
f8e0aa73 AJ |
47598 | |
47599 | * rtsfind.adb (RTE): Make sure we do not try to load unit after | |
0868e09c RD |
47600 | giving message for entity not available in high integrity mode. |
47601 | ||
9e94c78f | 47602 | 2001-10-11 Pascal Obry <obry@gnat.com> |
f8e0aa73 | 47603 | |
934abf9c PO |
47604 | * impunit.adb: Add GNAT.CRC32. |
47605 | ||
9e94c78f | 47606 | 2001-10-11 Ed Schonberg <schonber@gnat.com> |
3c72bea4 | 47607 | |
f8e0aa73 AJ |
47608 | * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle |
47609 | properly the case where one universal operand in a non-static | |
3c72bea4 ES |
47610 | exponentiation of a real literal. |
47611 | ||
9e94c78f | 47612 | 2001-10-11 Ed Schonberg <schonber@gnat.com> |
44d8d2bb | 47613 | |
f8e0aa73 AJ |
47614 | * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type |
47615 | clause, return the gobal finalization list, for lack of anthing else. | |
44d8d2bb | 47616 | |
9e94c78f | 47617 | 2001-10-11 Ed Schonberg <schonber@gnat.com> |
9e2b9627 | 47618 | |
f8e0aa73 AJ |
47619 | * exp_ch7.adb (Make_Transient_Block): if statement is within |
47620 | exception handler, always use new transient scope to place Clean | |
9e2b9627 ES |
47621 | procedure. |
47622 | ||
9e94c78f | 47623 | 2001-10-11 Pascal Obry <obry@gnat.com> |
cfac6e9f PO |
47624 | |
47625 | * Makefile.in: | |
47626 | (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o | |
47627 | (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o | |
47628 | (GNATLS_RTL_OBJS): add g-crc32.o | |
47629 | (GNATMAKE_RTL_OBJS): add g-crc32.o | |
f8e0aa73 | 47630 | |
cfac6e9f PO |
47631 | * ali-util.adb: |
47632 | (CRC_Match): new function. | |
f8e0aa73 | 47633 | (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit |
cfac6e9f PO |
47634 | instead of the previous simple checksum algorithm. |
47635 | (Time_Stamp_Mismatch): use CRC_Match for comparison. | |
47636 | (Set_Source_Table): idem. | |
f8e0aa73 | 47637 | |
cfac6e9f | 47638 | * ali-util.ads: |
f8e0aa73 | 47639 | (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC |
cfac6e9f PO |
47640 | instead of simple checksum. |
47641 | (CRC_Match): new function. | |
47642 | (CRC_Error): new constant. | |
f8e0aa73 AJ |
47643 | |
47644 | * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling | |
47645 | a CRC now and not a simple checksum. A CRC uses lower-case hex | |
cfac6e9f | 47646 | letters, fixes ambiguity in parsing. |
f8e0aa73 AJ |
47647 | |
47648 | * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this | |
cfac6e9f | 47649 | is what this variable will store. |
f8e0aa73 | 47650 | |
cfac6e9f | 47651 | * bcheck.adb: Change reference to chechsum in comments by CRC. |
f8e0aa73 AJ |
47652 | (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC. |
47653 | rename All_Checksum_Match to All_CRC_Match. Change due to API | |
47654 | renaming since now GNAT does not use a simple checksum but a | |
cfac6e9f | 47655 | CRC using GNAT.CRC32. |
f8e0aa73 AJ |
47656 | |
47657 | * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC | |
cfac6e9f | 47658 | now and not anymore a simple checksum. |
f8e0aa73 AJ |
47659 | |
47660 | * lib-load.adb: Use Source_CRC instead of Source_Checksum in many | |
cfac6e9f | 47661 | places. |
f8e0aa73 | 47662 | |
cfac6e9f | 47663 | * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum. |
f8e0aa73 | 47664 | |
cfac6e9f PO |
47665 | * scans.adb: |
47666 | (Restore_Scan_State): rename Checksum to CRC. | |
47667 | (Save_Scan_State): idem. | |
f8e0aa73 | 47668 | |
cfac6e9f PO |
47669 | * scans.ads: |
47670 | With GNAT.CRC32. | |
47671 | (Checksum): rename to CRC. | |
47672 | (Saved_Scan_State): Save_Checksum field renamed to Save_CRC | |
f8e0aa73 AJ |
47673 | |
47674 | * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from | |
cfac6e9f | 47675 | GNAT.CRC32). Update copyright notice. |
f8e0aa73 AJ |
47676 | |
47677 | * scn-slit.adb: Rename many Accumulate_Checksum to Update (from | |
cfac6e9f | 47678 | GNAT.CRC32). Update copyright notice. |
f8e0aa73 | 47679 | |
cfac6e9f PO |
47680 | * scn.adb: |
47681 | (Accumulate_Checksum): removed. | |
47682 | (Update): new procedure. Add a wide-character into the CRC. | |
f8e0aa73 | 47683 | |
cfac6e9f PO |
47684 | * sinput-l.adb: |
47685 | (Complete_Source_File_Entry): use CRC32 instead of simple checksum. | |
f8e0aa73 | 47686 | (Load_File): fix initialization of S (change Source_Checksum to |
cfac6e9f | 47687 | Source_CRC) |
f8e0aa73 AJ |
47688 | |
47689 | * sinput-p.adb (Load_Project_File): rename Source_Checksum to | |
cfac6e9f | 47690 | Source_CRC in S initialization. |
f8e0aa73 | 47691 | |
cfac6e9f | 47692 | * sinput.adb (Source_Checksum): renamed to Source_CRC. |
f8e0aa73 | 47693 | |
cfac6e9f PO |
47694 | * sinput.ads (Source_Checksum): renamed to Source_CRC. |
47695 | Update comments for the CRC. | |
f8e0aa73 | 47696 | |
cfac6e9f | 47697 | * types.adb (Hex): Use lowercase for the letter part. |
f8e0aa73 AJ |
47698 | |
47699 | * types.ads (Get_Hex_String): Returns the hexadecimal representation | |
47700 | for a word. This is currently used only for CRC. In previous version, | |
47701 | the checksum was using a representation with all letter being | |
47702 | upper-case. With the new implementation (using CRC) we do not remove | |
47703 | the 32th bit of the CRC, so we can have an upper-case starting letter | |
47704 | in the CRC. This is not possible to parse in Scan_ALI (ali.adb). | |
47705 | It is ambigous since the CRC was optional and could be followed by | |
47706 | options like EB, EE. So now this routines uses lower-case letter for | |
47707 | the hexadecimal representation. Strange enough only lower case letters | |
cfac6e9f | 47708 | where checked in Scan_ALI (even if this was not a possible case). |
f8e0aa73 | 47709 | |
cfac6e9f | 47710 | * gnatvsn.ads (Library_Version): changed to 3.15a. |
f8e0aa73 AJ |
47711 | |
47712 | * s-crc32.ads: Initial version from GNAT.CRC32. This is the version | |
cfac6e9f | 47713 | for the compiler. |
f8e0aa73 AJ |
47714 | |
47715 | * s-crc32.adb: Initial version from GNAT.CRC32. This is the version | |
cfac6e9f | 47716 | for the compiler. |
f8e0aa73 | 47717 | |
cfac6e9f PO |
47718 | * ali-util.adb: Redo previous change to avoid using word CRC everywhere |
47719 | Add 2001 to copyright notice | |
47720 | (Accumulate_Checksum): Modify to use System.CRC32. | |
f8e0aa73 AJ |
47721 | |
47722 | * ali-util.ads: Redo changes of previous revision to continue to use | |
cfac6e9f | 47723 | the word Checksum. Add 2001 to copyright notice. |
f8e0aa73 | 47724 | |
cfac6e9f PO |
47725 | * ali.adb: Undo some of previous changes, not needed. |
47726 | Keep the change for lower case letters in the checksum. | |
f8e0aa73 | 47727 | |
cfac6e9f PO |
47728 | * ali.ads: Undo previous change not needed. |
47729 | ||
47730 | * bcheck.adb: Undo most of previous change, not needed. | |
47731 | But do use Checksums_Match for checksum comparison. | |
f8e0aa73 | 47732 | |
cfac6e9f PO |
47733 | * gnatls.adb: Undo most of previous change, not needed. |
47734 | But do use Checksums_Match for comparing checksums. | |
f8e0aa73 | 47735 | |
cfac6e9f | 47736 | * lib-load.adb: Undo previous change, not needed. |
f8e0aa73 | 47737 | |
cfac6e9f | 47738 | * lib-writ.adb: Undo previous change, not needed. |
f8e0aa73 AJ |
47739 | |
47740 | * lib-writ.ads: Document that checksums use lower case, | |
cfac6e9f | 47741 | not upper case letters. |
f8e0aa73 | 47742 | |
cfac6e9f | 47743 | * scans.adb: Undo previous change, not needed |
f8e0aa73 | 47744 | |
cfac6e9f | 47745 | * scans.ads: Undo previous change, not needed. |
f8e0aa73 | 47746 | |
cfac6e9f | 47747 | * scn-nlit.adb: Undo previous changes, not needed. |
f8e0aa73 | 47748 | |
cfac6e9f | 47749 | * scn-slit.adb: Undo previous change, not needed. Fix header format. |
f8e0aa73 | 47750 | |
cfac6e9f PO |
47751 | * scn.adb: |
47752 | (Accumulate_Checksum): Use System.CRC32. | |
47753 | (Initialize_Checksum): New procedure. | |
47754 | Remove other changes of previous revision. | |
f8e0aa73 | 47755 | |
cfac6e9f | 47756 | * sinput-p.adb: Undo previous change, not needed. |
f8e0aa73 | 47757 | |
cfac6e9f PO |
47758 | * sinput.adb: Undo previous change, not needed. |
47759 | ||
47760 | * sinput-l.adb: Undo previous change, not needed. | |
f8e0aa73 AJ |
47761 | |
47762 | * sinput.ads: Undo previous change, not needed. Keep only comment | |
cfac6e9f | 47763 | on new checksum algorithm |
f8e0aa73 | 47764 | |
cfac6e9f PO |
47765 | * Makefile.in: Add s-crc32 as needed, remove g-crc32. |
47766 | Also remove a-tags and a-stream from GNAT sources. | |
f8e0aa73 | 47767 | |
cfac6e9f | 47768 | * ali.adb (Scan_ALI): fix typo introduce in latest check-in. |
f8e0aa73 | 47769 | |
cfac6e9f PO |
47770 | * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o. |
47771 | ||
4d6d06a5 GB |
47772 | 2001-10-11 Geert Bosch <bosch@gnat.com> |
47773 | ||
47774 | * einfo.h: Regenerate. | |
47775 | ||
47776 | * nmake.ads: Regenerate. | |
47777 | ||
47778 | * nmake.adb: Regenerate. | |
47779 | ||
47780 | * sinfo.h: Regenerate. | |
47781 | ||
47782 | * treeprs.adb: Regenerate. | |
47783 | ||
c97412e2 GB |
47784 | 2001-10-10 Geert Bosch <bosch@gnat.com> |
47785 | ||
47786 | * gnat-style.texi: New file describing coding guidelines for Ada. | |
f8e0aa73 | 47787 | |
9e94c78f | 47788 | 2001-10-10 Ed Schonberg <schonber@gnat.com> |
b83018ca | 47789 | |
f8e0aa73 | 47790 | * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required |
b83018ca ES |
47791 | is Flag174. |
47792 | ||
e834fe1f GB |
47793 | 2001-10-10 Geert Bosch <bosch@gnat.com> |
47794 | ||
47795 | * snames.ads: Add new names for project facility. | |
47796 | ||
47797 | * snames.adb: Update to reflect snames.ads changes. | |
47798 | ||
47799 | * snames.h: Update to reflect snames.ads changes. | |
47800 | ||
9e94c78f | 47801 | 2001-10-10 Vincent Celier <celier@gnat.com> |
b30668b7 VC |
47802 | |
47803 | * make.adb: | |
47804 | (Add_Switches): reflect the changes for the switches attributes | |
47805 | Default_Switches indexed by the programming language, | |
47806 | Switches indexed by the file name. | |
47807 | (Collect_Arguments_And_Compile): Idem. | |
47808 | Reflect the attribute name changes. | |
f8e0aa73 | 47809 | |
b30668b7 VC |
47810 | * prj-attr.adb: |
47811 | (Initialisation_Data): Change the names of some packages and | |
47812 | attributes. | |
47813 | (Initialize): process case insensitive associative arrays. | |
f8e0aa73 | 47814 | |
b30668b7 VC |
47815 | * prj-attr.ads: |
47816 | (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array. | |
f8e0aa73 | 47817 | |
b30668b7 VC |
47818 | * prj-dect.adb: |
47819 | (Parse_Attribute_Declaration): For case insensitive associative | |
47820 | arrays, set the index string to lower case. | |
f8e0aa73 | 47821 | |
b30668b7 VC |
47822 | * prj-env.adb: |
47823 | Reflect the changes of the project attributes. | |
f8e0aa73 | 47824 | |
b30668b7 VC |
47825 | * prj-nmsc.adb: |
47826 | Replace Check_Naming_Scheme by Ada_Check and | |
47827 | Language_Independent_Check. | |
f8e0aa73 | 47828 | |
b30668b7 VC |
47829 | * prj-nmsc.ads: |
47830 | Replaced Check_Naming_Scheme by 2 procedures: | |
47831 | Ada_Check and Language_Independent_Check. | |
f8e0aa73 | 47832 | |
b30668b7 VC |
47833 | * prj-proc.adb: |
47834 | (Process_Declarative_Items): For case-insensitive associative | |
47835 | arrays, set the index string to lower case. | |
47836 | (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of | |
47837 | Prj.Nmsc.Check_Naming_Scheme. | |
f8e0aa73 | 47838 | |
b30668b7 VC |
47839 | * prj-tree.adb: |
47840 | (Case_Insensitive): New function | |
47841 | (Set_Case_Insensitive): New procedure | |
f8e0aa73 | 47842 | |
b30668b7 VC |
47843 | * prj-tree.ads: |
47844 | (Case_Insensitive): New function | |
47845 | (Set_Case_Insensitive): New procedure | |
47846 | (Project_Node_Record): New flag Case_Insensitive. | |
f8e0aa73 | 47847 | |
b30668b7 VC |
47848 | * prj-util.adb: |
47849 | (Value_Of): new function to get the string value of a single | |
47850 | string variable or attribute. | |
f8e0aa73 | 47851 | |
b30668b7 VC |
47852 | * prj-util.ads: |
47853 | (Value_Of): new function to get the string value of a single | |
47854 | string variable or attribute. | |
f8e0aa73 | 47855 | |
b30668b7 VC |
47856 | * prj.adb: |
47857 | (Ada_Default_Spec_Suffix): New function | |
47858 | (Ada_Default_Impl_Suffix): New function | |
47859 | Change definitions of several constants to reflect | |
47860 | new components of record types. | |
f8e0aa73 | 47861 | |
b30668b7 VC |
47862 | * prj.ads: |
47863 | (Naming_Data): Change several components to reflect new | |
47864 | elements of naming schemes. | |
47865 | (Project_Data): New flags Sources_Present and | |
47866 | Language_Independent_Checked. | |
47867 | (Ada_Default_Spec_Suffix): New function. | |
47868 | (Ada_Default_Impl_Suffix): New function. | |
f8e0aa73 | 47869 | |
b30668b7 VC |
47870 | * snames.ads: |
47871 | Modification of predefined names for project manager: added | |
47872 | Implementation, Specification_Exceptions, Implementation_Exceptions, | |
47873 | Specification_Suffix, Implementation_Suffix, Separate_Suffix, | |
47874 | Default_Switches, _Languages, Builder, Cross_Reference, | |
47875 | Finder. Removed Body_Part, Specification_Append, Body_Append, | |
47876 | Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind, | |
47877 | Gnatlink. | |
f8e0aa73 | 47878 | |
b30668b7 VC |
47879 | * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix): |
47880 | Add comments. | |
f8e0aa73 | 47881 | |
b30668b7 VC |
47882 | * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted, |
47883 | not that it is Nil_Variable_Value. | |
f8e0aa73 | 47884 | |
b30668b7 VC |
47885 | * prj.ads: Add ??? for uncommented declarations |
47886 | ||
9e94c78f | 47887 | 2001-10-10 Ed Schonberg <schonber@gnat.com> |
662e57b4 | 47888 | |
f8e0aa73 AJ |
47889 | * sem_prag.adb: (Analyze_Pragma, case External): If entity is a |
47890 | constant, do not indicate possible modification, so that gigi can | |
662e57b4 ES |
47891 | treat it as a bona fide constant. |
47892 | ||
9e94c78f | 47893 | 2001-10-10 Robert Dewar <dewar@gnat.com> |
72e4357f RD |
47894 | |
47895 | * sem_prag.adb: Add processing for pragma External. | |
f8e0aa73 | 47896 | |
72e4357f | 47897 | * snames.ads: Add entry for pragma External. |
f8e0aa73 | 47898 | |
72e4357f | 47899 | * par-prag.adb: Add pragma External. |
f8e0aa73 | 47900 | |
72e4357f RD |
47901 | * snames.adb: Updated to match snames.ads. |
47902 | ||
9e94c78f | 47903 | 2001-10-10 Ed Schonberg <schonber@gnat.com> |
7bc1c7df ES |
47904 | |
47905 | * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for | |
47906 | a dynamic task if the allocator appears in an indexed assignment | |
47907 | or selected component assignment. | |
f8e0aa73 AJ |
47908 | |
47909 | * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image): | |
47910 | For a dynamic task in an assignment statement, use target of | |
7bc1c7df ES |
47911 | assignment to generate meaningful name. |
47912 | ||
9e94c78f | 47913 | 2001-10-10 Ed Schonberg <schonber@gnat.com> |
c84700e7 | 47914 | |
f8e0aa73 | 47915 | * einfo.adb (Write_Field19_Name): Body_Entity is also defined for |
c84700e7 ES |
47916 | a generic package. |
47917 | ||
47918 | * einfo.ads: Body_Entity is also defined for generic package. | |
47919 | Documentation change only | |
f8e0aa73 AJ |
47920 | |
47921 | * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an | |
47922 | others_choice for a discriminated component initialization, | |
47923 | convert discriminant references into the corresponding discriminals. | |
47924 | ||
47925 | * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate | |
47926 | only if original type is private and expression has to be wrapped | |
c84700e7 | 47927 | in a conversion. |
f8e0aa73 AJ |
47928 | |
47929 | * checks.adb: | |
47930 | (Apply_Constraint_Check): Do not perform length check | |
c84700e7 | 47931 | if expression is an aggregate with only an others_choice. |
f8e0aa73 | 47932 | (Length_N_Cond): two references to the same in_parameter |
c84700e7 ES |
47933 | (typically the discriminal in an init_proc) denote the same value. |
47934 | Two useful optimization uncovered by bugfixes above. | |
47935 | ||
9e94c78f | 47936 | 2001-10-10 Robert Dewar <dewar@gnat.com> |
d8d80dcd | 47937 | |
f8e0aa73 | 47938 | * xeinfo.adb: Change int to char in translation of enumeration types. |
d8d80dcd RD |
47939 | This fixes a problem in the C representation of component alignment. |
47940 | Add 2001 to copyright notice | |
47941 | ||
9e94c78f | 47942 | 2001-10-10 Richard Kenner <kenner@gnat.com> |
a8fee948 | 47943 | |
f8e0aa73 | 47944 | * decl.c: (validate_size): Do check size of object of integral type |
a8fee948 RK |
47945 | if it is a packed array type. |
47946 | ||
9e94c78f | 47947 | 2001-10-10 Richard Kenner <kenner@gnat.com> |
c2d7fe59 | 47948 | |
f8e0aa73 | 47949 | * decl.c: (gnat_to_gnu_entity, case object): Also materialize |
c2d7fe59 RK |
47950 | VAR_DECL for constant if not Is_Public but -O0. |
47951 | ||
fb75e100 RK |
47952 | 2001-10-10 Richard Kenner <kenner@gnat.com> |
47953 | ||
47954 | * misc.c (struct lang_hooks): Add new initializer to match GCC change. | |
47955 | ||
1724557a GB |
47956 | 2001-10-10 Geert Bosch <bosch@gnat.com> |
47957 | ||
f8e0aa73 | 47958 | * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer |
1724557a GB |
47959 | use '/' as switch character, allowing for absolute file names. |
47960 | ||
9f2f9eb6 JM |
47961 | 2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk> |
47962 | ||
47963 | * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update | |
47964 | FSF address. | |
47965 | ||
8fecf41d GB |
47966 | 2001-10-08 Geert Bosch <bosch@gnat.com> |
47967 | ||
47968 | * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): | |
47969 | Automatically build utilities when files need to be regenerated. | |
47970 | ||
589f1edf GB |
47971 | 2001-10-08 Geert Bosch <bosch@gnat.com> |
47972 | ||
47973 | * xsnames.adb: New utility for updating snames.ads and snames.adb | |
47974 | ||
67f28219 ZW |
47975 | 2001-10-08 Zack Weinberg <zack@codesourcery.com> |
47976 | ||
47977 | * Make-lang.in (ADAFLAGS): Add -W -Wall. | |
47978 | (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also. | |
47979 | (gnat1): Also depend on attribs.o. | |
47980 | (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make. | |
47981 | * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New. | |
47982 | (ADAC): Set to @ADAC@ in stage1, $(CC) later. | |
47983 | (ADAFLAGS): Add -W -Wall. | |
47984 | (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS; | |
47985 | take out CFLAGS. | |
47986 | ||
47987 | (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o, | |
47988 | s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o, | |
47989 | s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o): | |
47990 | Use $(ADAC), not $(CC), as compilation command. | |
47991 | ||
47992 | (gnattools): Depend directly on tools to build, don't use | |
47993 | recursive make. | |
47994 | (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make. | |
47995 | ||
47996 | * einfo.h, sinfo.h: New files (autogenerated). | |
47997 | ||
295ef2bb RH |
47998 | 2001-10-08 Richard Henderson <rth@redhat.com> |
47999 | ||
48000 | * comperr.adb (Abort_In_Progress): New. | |
48001 | (Compiler_Abort): Use it to prevent recursion. | |
48002 | ||
9e94c78f | 48003 | 2001-10-08 Robert Dewar <dewar@gnat.com> |
5c736541 RD |
48004 | |
48005 | * atree.adb: Set Error_Posted in Error node, helps error recovery. | |
67f28219 ZW |
48006 | |
48007 | * par-endh.adb (Output_End_Expected): We should also not test | |
5c736541 | 48008 | Error_Posted on the Error node, since now it is always set. |
67f28219 ZW |
48009 | |
48010 | * cstand.adb (Create_Standard): Set Etype of Error to Any_Type | |
5c736541 | 48011 | to help error recovery. Part of general work on 9407-004. |
67f28219 | 48012 | |
5c736541 | 48013 | * par.adb: Add ??? for misuse of error |
67f28219 | 48014 | |
5c736541 RD |
48015 | * sem_res.adb: |
48016 | (Resolve): Defend against Error, fixes 9407-003. | |
48017 | (Resolve_Discrete_Subtype_Indication): Defend against Error. | |
67f28219 ZW |
48018 | |
48019 | * sinfo.ads (N_Error): Now has Etype field (which will be set | |
5c736541 RD |
48020 | to Any_Type to help error recovery). |
48021 | ||
9e94c78f | 48022 | 2001-10-08 Richard Kenner <kenner@gnat.com> |
a153ae15 RK |
48023 | |
48024 | * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR): | |
48025 | Consistently set MEM attributes from expression; fixes | |
48026 | bootstrap failure on x86. | |
48027 | ||
9e94c78f | 48028 | 2001-10-08 Geert Bosch <bosch@gnat.com> |
743f3c7b GB |
48029 | |
48030 | * 5oosinte.adb: Add 2001 to copyright notice. | |
48031 | ||
9e94c78f | 48032 | 2001-10-08 Geert Bosch <bosch@gnat.com> |
210c4ef4 GB |
48033 | |
48034 | * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs]. | |
48035 | ||
48036 | * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs]. | |
48037 | ||
cc712abf JM |
48038 | 2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk> |
48039 | ||
48040 | * 5oosinte.adb: Fix spelling error of "separate" as "seperate". | |
48041 | ||
9e94c78f | 48042 | 2001-10-05 Geert Bosch <bosch@gnat.com> |
4c4abc0f GB |
48043 | |
48044 | * adaint.h: Small formatting fix. | |
48045 | ||
7f50e2e3 GB |
48046 | 2001-10-04 Geert Bosch <bosch@gnat.com> |
48047 | ||
48048 | * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode): | |
48049 | Arg is int, not FILE *, in dummy version of functions. | |
67f28219 | 48050 | |
7f50e2e3 GB |
48051 | * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode): |
48052 | Arg is int, not FILE *. | |
48053 | ||
5d1a9698 GB |
48054 | 2001-10-04 Geert Bosch <bosch@gnat.com> |
48055 | ||
48056 | * 3lsoccon.ads: Added file, missed with initial check ins. | |
67f28219 | 48057 | |
5d1a9698 GB |
48058 | * 4lintnam.ads: Fix header format. |
48059 | Change Linux to GNU/Linux. | |
67f28219 | 48060 | |
5d1a9698 GB |
48061 | * 5iosinte.adb: Change Linux to GNU/Linux. |
48062 | ||
48063 | * 5iosinte.ads: Change Linux to GNU/Linux. | |
67f28219 | 48064 | |
5d1a9698 | 48065 | * 5itaprop.adb: Change Linux to GNU/Linux. |
67f28219 | 48066 | |
5d1a9698 GB |
48067 | * 5itaspri.ads: Change Linux to GNU/Linux. |
48068 | Update copyright notice. | |
67f28219 | 48069 | |
5d1a9698 | 48070 | * 5lintman.adb: Change Linux to GNU/Linux. |
67f28219 | 48071 | |
5d1a9698 | 48072 | * 5lml-tgt.adb: Change Linux to GNU/Linux. |
67f28219 | 48073 | |
5d1a9698 | 48074 | * 5losinte.ads: Change Linux to GNU/Linux. |
67f28219 | 48075 | |
5d1a9698 | 48076 | * 5lsystem.ads: Change Linux to GNU/Linux. |
67f28219 | 48077 | |
5d1a9698 | 48078 | * 5qosinte.adb: Change Linux to GNU/Linux. |
67f28219 | 48079 | |
5d1a9698 | 48080 | * 5qosinte.ads: Change Linux to GNU/Linux. |
67f28219 | 48081 | |
5d1a9698 | 48082 | * 5qparame.ads: Change Linux to GNU/Linux. |
67f28219 | 48083 | |
5d1a9698 | 48084 | * 5qtaprop.adb: Change Linux to GNU/Linux. |
67f28219 | 48085 | |
5d1a9698 GB |
48086 | * 5qtaspri.ads: Change Linux to GNU/Linux. |
48087 | Add 2001 to copyright notice. | |
67f28219 | 48088 | |
5d1a9698 GB |
48089 | * 5vintman.ads: Change Linux to GNU/Linux. |
48090 | Fix header format. Add 2001 to copyright notice. | |
67f28219 | 48091 | |
5d1a9698 | 48092 | * g-soccon.ads: Change Linux to GNU/Linux. |
67f28219 | 48093 | |
5d1a9698 GB |
48094 | * g-trasym.ads: Change Linux to GNU/Linux. |
48095 | Add 2001 to copyright notice. | |
67f28219 | 48096 | |
5d1a9698 | 48097 | * memtrack.adb: Change Linux to GNU/Linux. |
67f28219 | 48098 | |
5d1a9698 GB |
48099 | * s-intman.ads: Change Linux to GNU/Linux. |
48100 | Add 2001 to copyright notice. Fix header format. | |
67f28219 | 48101 | |
5d1a9698 | 48102 | * s-stache.adb: Change Linux to GNU/Linux. |
67f28219 | 48103 | |
5d1a9698 | 48104 | * adaint.c: Change Linux to GNU/Linux. |
67f28219 | 48105 | |
5d1a9698 | 48106 | * cio.c: Change Linux to GNU/Linux. |
67f28219 | 48107 | |
5d1a9698 | 48108 | * cstreams.c: Change Linux to GNU/Linux. |
67f28219 | 48109 | |
5d1a9698 | 48110 | * init.c: Change Linux to GNU/Linux. |
67f28219 | 48111 | |
5d1a9698 | 48112 | * gmem.c: Change Linux to GNU/Linux. |
67f28219 | 48113 | |
5d1a9698 GB |
48114 | * tracebak.c: Change Linux to GNU/Linux. |
48115 | ||
48116 | ||
c25ca2d7 GB |
48117 | 2001-10-02 Geert Bosch <bosch@gnat.com> |
48118 | ||
48119 | * misc.c (insert_default_attributes): Add dummy version. |