]> gcc.gnu.org Git - gcc.git/blame - gcc/ada/ChangeLog
boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT type.
[gcc.git] / gcc / ada / ChangeLog
CommitLineData
437926c0
JJ
12009-09-01 Jakub Jelinek <jakub@redhat.com>
2
3 * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast
4 POINTER_SIZE to HOST_WIDE_INT.
5
58f986ca
RG
62009-09-01 Richard Guenther <rguenther@suse.de>
7
8 * gcc-interface/misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove.
9
f76d6e6f
EB
102009-08-25 Eric Botcazou <ebotcazou@adacore.com>
11
12 * gcc-interface/trans.c (call_to_gnu): Tidy.
13 (gnat_to_gnu) <N_Slice>: Set TYPE_ARRAY_MAX_SIZE if the slice has
14 non-constant size but the array itself has constant size.
15 * gcc-interface/utils.c (convert_vms_descriptor64): Fix type
16 consistency error.
17 (convert_vms_descriptor32): Likewise.
18
92532234
AJ
192009-08-22 Aurelien Jarno <aurelien@aurel32.net>
20
21 * gcc-interface/Makefile.in: Add Ada support for
22 GNU/kFreeBSD x86_64.
23 * system-freebsd-x86_64.ads: New file based on
24 system-freebsd-x86.ads.
25
f88facfe
EB
262009-08-20 Eric Botcazou <ebotcazou@adacore.com>
27
28 * gcc-interface/utils.c (convert): In the padded case, do the final
29 conversion as an unchecked conversion if the underlying types are
30 array types with variable size.
31
456976d8
EB
322009-08-20 Eric Botcazou <ebotcazou@adacore.com>
33
34 * gcc-interface/ada-tree.h (SET_TYPE_RM_VALUE): Mark the expression
35 as visited.
f88facfe 36 * gcc-interface/misc.c (gnat_get_subrange_bounds): Always return the
456976d8
EB
37 bounds.
38 * gcc-interface/trans.c (add_decl_expr): Do not mark gigi-specific
39 fields.
40 (gnat_gimplify_expr) <DECL_EXPR>: New case.
41
dee28509
AJ
422009-08-17 Aurelien Jarno <aurelien@aurel32.net>
43
44 * s-osinte-kfreebsd-gnu.ads (SA_ONSTACK): New constant.
45 (stack_t): New record type.
46 (sigaltstack): New imported function.
47 (Alternate_Stack): New imported variable.
48 (Alternate_Stack_Size): New constant.
49
241bea26
AC
502009-08-17 Vasiliy Fofanov <fofanov@adacore.com>
51
52 * a-calend-vms.adb: Fix typo.
53
542009-08-17 Tristan Gingold <gingold@adacore.com>
55
56 * s-taprop-posix.adb: Round up the stack size to avoid failure on
57 Darwin.
58
592009-08-17 Gary Dismukes <dismukes@adacore.com>
60
61 * sem_cat.adb (Validate_Static_Object_Name): Update comment.
62
632009-08-17 Vincent Celier <celier@adacore.com>
64
65 * make.adb (Arguments_Collected): Unneeded, removed
66 (Change_To_Object_Directory): Use Project directly. Add pragma Assert to
67 ensure caller does not pass in No_Project.
68 (Compile): Add new parameter Project. Let procedure
69 Collect_Arguments_And_Compile provide the proper value.
70
71 * switch-c.adb: Add documentation for -gnatea and -gnatez
72
732009-08-17 Ben Brosgol <brosgol@adacore.com>
74
75 * gnat_ugn.texi: Changed name of package in SAL example, to avoid
76 clash with Ada 2005 reserved word (interface).
77
1d5a85bd
RD
782009-08-17 Robert Dewar <dewar@adacore.com>
79
5f2d216d
RD
80 * a-crbtgk.adb, a-crdlli.adb, a-direct.adb, a-caldel-vms.adb,
81 a-calend-vms.adb, a-calfor.adb, a-cdlili.adb, a-chahan.adb,
82 a-cidlli.adb, a-coinve.adb, a-comlin.adb: Minor code reorganization
83 (use conditional expressions).
1d5a85bd 84
b01bf852
AC
852009-08-17 Robert Dewar <dewar@adacore.com>
86
87 * make.adb: Add ??? comment
88 * tbuild.adb: Minor reformatting
89
902009-08-17 Thomas Quinot <quinot@adacore.com>
91
92 * exp_ch4.adb (Exp_Ch4.Expand_N_Slice.Make_Temporary): Rename to
93 Make_Temporary_For_Slice to avoid confusion with Tbuild.Make_Temporary.
94 Use Tbuild.Make_Temporary to create entity for the temporary.
95
1def9494
AC
962009-08-17 Arnaud Charlet <charlet@adacore.com>
97
98 * make.adb (Process_Multilib, Scan_Make_Arg): Refine previous change
99 and ignore -mieee switch to avoid spawning an extra gcc in this case.
100
1012009-08-17 Thomas Quinot <quinot@adacore.com>
102
103 * tbuild.adb: Minor reformatting
104
5568b57c
AC
1052009-08-17 Ed Schonberg <schonberg@adacore.com>
106
107 * exp_ch3.adb (Build_Discriminant_Formals): If the discriminals already
108 exist, as is the case for synchronized types, use the type of the
109 discriminal in the parameter specification, to prevent a spurious
110 subtype mismatch in gigi.
111
1122009-08-17 Robert Dewar <dewar@adacore.com>
113
114 * prj-env.adb: Minor reformatting
115 * make.adb: Minor reformatting
116 Comment updates
117
1182009-08-17 Javier Miranda <miranda@adacore.com>
119
120 * exp_ch7.adb (Wrap_Transient_Expression): Update comments.
121
1222009-08-17 Emmanuel Briot <briot@adacore.com>
123
124 * prj-part.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-conf.adb
125 (Processing_Flags.Require_Obj_Dirs): new field, which controls whether
126 object directories must be present. In the case of gprclean at least,
127 these are optional (if they do not exist there is nothing to clean)
128
88eb6e62
AC
1292009-08-17 Robert Dewar <dewar@adacore.com>
130
131 * prj-env.adb: Minor reformatting
132 * sem_ch3.adb: Minor reformatting
133
1342009-08-17 Hristian Kirtchev <kirtchev@adacore.com>
135
136 * sysdep.c (__gnat_localtime_tzoff): VxWorks case - Flip the sign of
137 the time zone since VxWorks chose positive values to represent west
138 time zones and negative for east zones.
139
89c273b4
AC
1402009-08-17 Ed Schonberg <schonberg@adacore.com>
141
142 * sem_ch3.adb (Access_Definition): Do not create an Itype reference for
143 an anonymous access type whose designated type is generic.
144
1452009-08-17 Arnaud Charlet <charlet@adacore.com>
146
147 * comperr.adb (Compiler_Abort): Do not generate a bug box when in
148 codepeer mode, friendlier.
149
305418c8
LG
1502009-08-10 Laurent GUERBY <laurent@guerby.net>
151
152 * make.adb: Handle multilib
153
477eca00
AC
1542009-08-10 Vincent Celier <celier@adacore.com>
155
156 * prj-env.adb (Create_Config_Pragmas_File.Write_Temp_File): Do not use
157 the temporary file name in the error message when the temporary file
158 cannot be created.
159
1602009-08-10 Yannick Moy <moy@adacore.com>
161
162 * gnat_ugn.texi: Fix typo
163
68716ad5
AC
1642009-08-10 Robert Dewar <dewar@adacore.com>
165
166 * exp_ch7.adb: Add ??? comment for last change
167
1682009-08-10 Vincent Celier <celier@adacore.com>
169
170 * prj-env.adb (Add_To_Buffer): New procedure
171 (Create_Config_Pragmas_File): Write to temporary file in one shot
172 (Create_Mapping_File): Ditto
173 (Set_Ada_Paths): Ditto
174
6d93ae14
VC
1752009-08-10 Vincent Celier <celier@adacore.com>
176
177 PR ada/17566
178 * xref_lib.adb (Print_Xref): Make sure that there is at least one space
179 between a declaration name and its type.
180
1c939d81
JM
1812009-08-07 Javier Miranda <miranda@adacore.com>
182
183 * exp_ch7.adb (Wrap_Transient_Expression): Add missing adjustment of
184 SCIL node.
185
005ae225
AC
1862009-08-07 Robert Dewar <dewar@adacore.com>
187
188 * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix obvious typo.
189
1902009-08-07 Vincent Celier <celier@adacore.com>
191
192 * gnatcmd.adb (GNATCmd): If -U is not used, one and only one main is
193 specified on the command line and there are switches in the Compiler
194 package of the project file, use these compilation switches to invoke
195 the tool.
196
1972009-08-07 Ben Brosgol <brosgol@adacore.com>
198
199 * gnat_ugn.texi: Wordsmithing edits at beginning of gnatcheck chapter.
200
2012009-08-07 Ed Schonberg <schonberg@adacore.com>
202
203 * sem_ch10.adb (Analyze_Proper_Body): Indicate name of missing subunit
204 even if not in main unit, to simplify debugging.
205
2062009-08-07 Arnaud Charlet <charlet@adacore.com>
207
208 * gcc-interface/Makefile.in: Fix handling of GCC_FOR_TARGET.
209 * gcc-interface/Make-lang.in: Update dependencies.
210
fb25a60d
AC
2112009-08-07 Robert Dewar <dewar@adacore.com>
212
213 * types.ads: Minor reformatting
214 * sem_ch12.ads (Check_Generic_Child_Unit): Add missing documentation.
215 * frontend.adb, sem_warn.adb, sem_warn.ads: Fix spelling of
216 Output_Non_Modified_In_Out_Warnings.
217 * sem_ch13.adb: Remove ??? comment.
218
2192009-08-07 Vincent Celier <celier@adacore.com>
220
221 * mlib-prj.adb (Build_Library): Include binder generate object file
222 for SAL when library name is only one character.
223
0a69df7c
AC
2242009-08-07 Thomas Quinot <quinot@adacore.com>
225
226 * targparm.adb: Minor reformatting
227 * sem.adb: Minor reformatting
228 * exp_ch4.adb (Expand_N_Conditional_Expression): Add comment.
229
2302009-08-07 Emmanuel Briot <briot@adacore.com>
231
232 * prj-conf.adb: Remove duplicate directory separator in the output when
233 an object directory does not exist.
234
2352009-08-07 Robert Dewar <dewar@adacore.com>
236
237 * exp_util.adb: Minor reformatting
238
2392009-08-07 Vincent Celier <celier@adacore.com>
240
241 * mlib-prj.adb (Build_Library): Fixed bug in name of ALI file (wrong
242 length used).
243
2442009-08-07 Ed Schonberg <schonberg@adacore.com>
245
246 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): In Ravenscar mode,
247 detect non-static private components that will violate restriction
248 No_Implicit_Heap_Allocation.
249
2502009-08-07 Ben Brosgol <brosgol@adacore.com>
251
252 * gnat_ugn.texi: Edited Rule Exemption section of gnatcheck chapter.
253
2fa03086
EB
2542009-08-02 Eric Botcazou <ebotcazou@adacore.com>
255
256 * gcc-interface/gigi.h (end_subprog_body): Tweak comment.
257 * gcc-interface/utils.c (end_subprog_body): Likewise.
258 * gcc-interface/trans.c (gigi): Likewise.
259 (gnat_to_gnu): Likewise.
260
3f5bb1b8
AC
2612009-07-30 Ben Brosgol <brosgol@adacore.com>
262
263 * gnat_ugn.texi: Correct minor texi glitch.
264
2652009-07-30 Ed Schonberg <schonberg@adacore.com>
266
267 * exp_util.adb (Expand_Subtype_From_Expr): If the type of the
268 expression has an underlying representation that is an unchecked union,
269 there is no subtype to build.
270
16c5f1c6
RD
2712009-07-30 Robert Dewar <dewar@adacore.com>
272
273 * a-teioed.adb, exp_disp.adb, s-linux-hppa.ads, s-linux.ads,
274 s-tasini.adb, sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch6.adb,
3f5bb1b8 275 sem_ch7.adb, adaint.c: Minor reformatting
16c5f1c6 276
3ff38f33
JM
2772009-07-29 Javier Miranda <miranda@adacore.com>
278
279 * sem_ch3.ads, sem_ch3.adb (Add_Internal_Interface_Entities): Routine
280 moved from the expander to the semantic analyzer to allow the
281 generation of these internal entities when compiling with no code
282 generation. Required by ASIS.
283 * sem.adb (Analyze): Add processing for N_Freeze_Entity nodes.
284 * sem_ch13.ads, sem_ch13.adb (Analyze_Freeze_Entity): New subprogram.
285 * exp_ch3.adb (Add_Internal_Interface_Entities): Moved to sem_ch3
286 (Expand_Freeze_Record_Type): Remove call to
287 Add_Internal_Interface_Entities because this routine is now called at
288 early stage --when the freezing node is analyzed.
289
a73734f5
AC
2902009-07-29 Robert Dewar <dewar@adacore.com>
291
292 * exp_atag.ads, exp_atag.adb, s-tasini.adb, s-soflin.ads,
293 exp_disp.adb, g-socket.adb: Minor reformatting
294
2952009-07-29 Ed Schonberg <schonberg@adacore.com>
296
297 * sem_ch7.adb (New_Private_Type): Create class-wide type after other
298 attributes have been established, so that they are all inherited by the
299 class-wide type.
300 * sem_cat.adb (Validate_Remote_Access_Object_Type_Declaration): Handle
301 properly named subtypes of class-wide types.
302
53b10ce9
AC
3032009-07-29 Ed Schonberg <schonberg@adacore.com>
304
305 * sem_ch6.adb (Check_Overriding_Indicator): Handle properly overriding
306 indicators on user-defined operators.
307
3082009-07-29 Vadim Godunko <godunko@adacore.com>
309
310 * g-socket.adb (Receive_Vector): Add comment.
311
d06b3b1d
JM
3122009-07-29 Javier Miranda <miranda@adacore.com>
313
314 * frontend.adb (Frontend): Code cleanup.
315 * exp_atag.ads, exp_atag.adb (Build_Get_Predefined_Prim_Op_Address):
316 Rewriten as a procedure because it a new out-mode parameters to
317 keep up-to-date the controlling tag node in the caller.
318 (Build_Get_Prim_Op_Address): Rewriten as a procedure because it has a
319 new out-mode parameter to keep up-to-date the controlling tag node in
320 the caller.
321 * exp_ch7.adb, sem_ch5.adb, exp_util.adb, sem_util.adb, exp_ch4.adb,
322 exp_ch6.adb, sem_ch4.adb, exp_ch3.adb: Add new dependency on new
323 package Sem_SCIL.
324 * sem_aux.ads, sem_aux.adb (First_Non_SCIL_Node): Removed. Routine
325 available in new package Sem_SCIL.
326 (Next_Non_SCIL_Node): Ditto.
327 * exp_disp.adb (Adjust_SCIL_Node): Removed. Routine available in new
328 package Sem_SCIL.
329 (Expand_Dispatching_Call): Update call to modified Exp_Atags routines
330 plus complete decoration of SCIL dispatching node.
331 (Find_SCIL_Node): Removed. Routine available in new package Sem_SCIL.
332 * exp_disp.ads (Adjust_SCIL_Node): Removed. Routine available in new
333 package Sem_SCIL.
334 (Find_SCIL_Node): Removed. Routine available in new package Sem_SCIL.
335 * exp_ch3.adb (Build_Init_Procedure): Fix comment.
336 * sem_scil.ads, sem_scil.adb: New files.
337 * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Addition of sem_scil.o.
338 Update dependencies.
339
8d12c865
RD
3402009-07-28 Robert Dewar <dewar@adacore.com>
341
342 * adaint.h, einfo.ads, prj.adb, sem_util.adb, makeutl.ads,
343 makeutl.adb: Minor reformatting & code reorganization
344 * sem_ch3.adb: Minor reformatting.
345 Fix spelling error (constraint for constrain) in error msg.
346
38990220
EB
3472009-07-28 Emmanuel Briot <briot@adacore.com>
348
349 * make.adb, makeutl.adb, makeutl.ads (Project_Tree): Duplicates the
350 global variable that also exists in makeutl.ads, and that some routines
351 in that package use already.
352 (Check): Moved part of the code to makeutl.adb for better sharing with
353 gprbuild.
354
fe8b685c
AC
3552009-07-28 Arnaud Charlet <charlet@adacore.com>
356
357 * gcc-interface/Make-lang.in: Update dependencies.
358
f7e71125
AC
3592009-07-28 Emmanuel Briot <briot@adacore.com>
360
361 * prj.adb, prj.ads (Compute_All_Imported_Projects): Make sure the
362 importing project does not end up in the list, in the case of extending
363 projects.
364 * make.adb, makeutl.adb, makeutl.ads (File_Not_A_Source_Of): Moved to
365 makeutl.ads, for better sharing with gprbuild.
366
3672009-07-28 Arnaud Charlet <charlet@adacore.com>
368
369 * gnat_ugn.texi: Fix typo.
370
3712009-07-28 Ed Schonberg <schonberg@adacore.com>
372
373 * sem_ch3.adb (Build_Derived_Concurrent_Type): Handle properly a
374 derivation that renames some discriminants and constrain others.
375 * exp_ch9.adb (Build_Protected_Subprogram_Call): If the type of the
376 prefix is a derived untagged type, convert to the root type to conform
377 to the signature of the protected operations.
378
3792009-07-28 Robert Dewar <dewar@adacore.com>
380
381 * sinfo.ads: Update comments.
382 * exp_attr.adb: Minor reformatting
383
55603e5e
AC
3842009-07-28 Ed Schonberg <schonberg@adacore.com>
385
386 * sem_aggr.adb (Get_Value): A named association in a record aggregate
387 should be treated as a modification of the named component, not as a
388 reference.
389
3902009-07-28 Quentin Ochem <ochem@adacore.com>
391
392 * prj-tree.ads, prj-tree.adb (Free): Minor editing.
393 * prj.ads, prj.adb (Image): Ditto.
394
e657b693
AC
3952009-07-28 Arnaud Charlet <charlet@adacore.com>
396
397 * frontend.adb: Minor reformatting.
398 (Frontend): Only call Check_SCIL_Nodes if assertions are enabled,
399 for efficiency.
400
4012009-07-28 Bob Duff <duff@adacore.com>
402
403 * exp_attr.adb (Expand_Access_To_Protected_Op): Use 'Access instead of
404 'Address to get a pointer to the protected body wrapper.
405
327503f1
JM
4062009-07-28 Javier Miranda <miranda@adacore.com>
407
408 * gnat1drv.adb (Adjust_Global_Switches): Disable generation of SCIL
409 nodes if we are not generating code.
410 * frontend.adb (Check_SCIL_Node): New subprogram. Used to check
411 attribute SCIL_Related_Node of SCIL dispatching nodes.
412 (Check_SCIL_Nodes): New instantiation of Traverse_Proc.
413 * sinfo.ads (Is_SCIL_Node,Set_Is_SCIL_Node): Removed
414 (SCIL_Nkind,Set_SCIL_Nkind): Removed.
415 (SCIL_Entity): Update documentation.
416 (SCIL_Related_Node): Update documentation.
417 (SCIL_Controlling_Tag): New attribute.
418 (SCIL_Target_Prim): Update documentation.
419 (N_Null_Statement): Remove attributes associated with SCIL nodes.
420 (N_SCIL_Dispatch_Table_Object_Init): New node.
421 (N_SCIL_Dispatch_Table_Tag_Init): New node.
422 (N_SCIL_Dispatching_Call): New node.
423 (N_SCIL_Tag_Init): New node.
424 * sinfo.adb (Is_SCIL_Node,Set_Is_SCIL_Node): Removed
425 (SCIL_Nkind,Set_SCIL_Nkind): Removed.
426 (SCIL_Controlling_Tag/Set_SCIL_Controlling_Tag): New subprogram.
427 (SCIL_Entity,Set_SCIL_Entity): Applicable only to SCIL nodes.
428 (SCIL_Related_Node,Set_SCIL_Related_Node): Applicable only to SCIL nodes
429 (SCIL_Target_Prim,Set_SCIL_Target_Prim): Applicable only to
430 N_SCIL_Dispatching_Call nodes.
431 * sem.adb (Analyze): No need to analyze SCIL nodes.
432 * sem_aux.ads, sem_aux.adb (First_Non_SCIL_Node): New subprogram
433 (Next_Non_SCIL_Node): New subprogram
434 * sem_ch4.adb (Analyze_Type_Conversion): Adjust relocated SCIL
435 dispatching nodes.
436 * sem_ch5.adb (Analyze_Iteration_Scheme): Adjust relocated SCIL
437 dispatching node.
438 * sem_util.adb (Insert_Explicit_Dereference): Adjust relocated SCIL
439 dispatching node.
440 * exp_ch3.adb (Build_Array_Init_Proc): Skip SCIL nodes when processing
441 null statement nodes.
442 (Build_Init_Procedure): Generate new SCIL node.
443 * exp_ch4.adb (Expand_N_And_Then): Adjust relocated SCIL dispatching
444 node.
445 * exp_ch6.adb (Is_Null_Procedure): Skip SCIL nodes. Required because
446 they are currently implemented as special N_Null_Statement nodes.
447 * exp_ch7.adb (Wrap_Transient_Statement): If the relocated node is a
448 procedure call then check if some SCIL node references it and needs
449 readjustment.
450 * exp_disp.ads (SCIL_Node_Kind): Removed.
451 (Adjust_SCIL_Node): New subprogram.
452 (Find_SCIL_Node): New subprogram.
453 (Get_SCIL_Node_Kind): Removed.
454 (New_SCIL_Node): Removed.
455 * exp_disp.adb (Adjust_SCIL_Node): New subprogram
456 (Expand_Dispatching_Call): Generate new SCIL dispatching node including
457 decoration of its new controlling_tag attribute.
458 (Get_SCIL_Node_Kind): Removed.
459 (Find_SCIL_Node): New subprogram.
460 (Make_Secondary_DT): Generate new SCIL nodes.
461 (Make_Tags): Generate new SCIL nodes.
462 (New_SCIL_Node): Removed.
463 * exp_util.adb (Insert_Actions): Handle SCIL nodes.
464 (Remove_Side_Effects): Check if relocated nodes require readjustment
465 of some SCIL dispatching node.
466 * gcc-interface/trans.c (gnat_to_gnu): Do nothing with new SCIL nodes.
467
b125fe15
RD
4682009-07-28 Robert Dewar <dewar@adacore.com>
469
470 * prj-nmsc.adb, g-expect.adb, prj.ads: Minor reformatting
471
056b0f6f
AC
4722009-07-28 Sergey Rybin <rybin@adacore.com>
473
474 * gnat_ugn.texi: Add section about gnatcheck rule exemption.
475
4762009-07-28 Vadim Godunko <godunko@adacore.com>
477
478 * s-oscons-tmplt.c: Define _XOPEN_SOURCE on Linux, otherwise IOV_MAX is
479 not defined by limits.h.
480
481 * g-socket.adb (Receive_Vector): Use minimum length from user's vector
482 length and maximum supported length of data vector.
483
4842009-07-28 Gary Dismukes <dismukes@adacore.com>
485
486 * usage.adb: Inhibit printing gcc-specific switches for AAMP target.
487 * make.adb: Call Get_Target_Parameters before calling Usage so that
488 VM_Target and AAMP_On_Target will be set.
489
5391897d
AC
4902009-07-28 Olivier Hainque <hainque@adacore.com>
491
492 * g-ssinty.ads: Remove, pointless and just confusing at this stage.
493 * gnat_rm.texi: Remove documentation.
494 * g-sse.ads: Minor reorg along the way.
495 * gcc-interface/Makefile.in: Remove processing for g-ssinty.
496 * g-ssvety.ads: Minor comment updates.
497
4982009-07-28 Sergey Rybin <rybin@adacore.com>
499
500 * gnat_ugn.texi: gnatcheck 'Format of the Report File' section - update
501 for the new format of the report file.
502
ecb955bc
AC
5032009-07-28 Sergey Rybin <rybin@adacore.com>
504
505 * gnat_ugn.texi: gnatcheck Deeply_Nested_Inlining rule: Update doc.
506
5072009-07-28 Pascal Obry <obry@adacore.com>
508
509 * g-expect.adb: Record standard handles only on Windows.
510
e7f10ba9
EB
5112009-07-27 Emmanuel Briot <briot@adacore.com>
512
513 * prj.ads, prj-nmsc.adb (Override_Kind): add debug trace
514 Add comments.
515
fc53fe76
AC
5162009-07-27 Sergey Rybin <rybin@adacore.com>
517
518 * gnat_ugn.texi: gnatcheck Unconstrained_Array_Returns rule: Add to the
519 rule definition the paragraph that explains that generic functions and
520 functions from generic packages are not checked.
521
5222009-07-27 Gary Dismukes <dismukes@adacore.com>
523
524 * sem_ch6.adb (New_Overloaded_Entity): Add test for an expanded null
525 procedure when determining whether to set the Overridden_Operation
526 field of a subprogram overriding an inherited subprogram.
527
5282009-07-27 Robert Dewar <dewar@adacore.com>
529
530 * a-except.adb, a-except-2005.ads: Minor reformatting
531
cff7cd9b
AC
5322009-07-27 Robert Dewar <dewar@adacore.com>
533
534 * sem_util.adb, sem_util.ads (Kill_Current_Values): Reset Is_Known_Valid
535
5362009-07-27 Javier Miranda <miranda@adacore.com>
537
538 * exp_disp.adb (Expand_Dispatching_Call): Reverse previous patch and
539 add some documentation explaining why the SCIL nodes must be generated
540 at that point.
541
5422009-07-27 Olivier Hainque <hainque@adacore.com>
543
544 * a-except.adb: Bind to __builtin_longjmp directly.
545 * a-except-2005.ads: Provide direct binding to __builtin_longjmp
546 for sjlj variants.
547 * a-exexpr.adb: Use it.
548 * a-except-xi.adb: Likewise.
549 * raise.c (_gnat_builtin_longjmp): Remove and update comments.
550 * raise.h (_gnat_builtin_longjmp): Remove declaration.
551
57036dcc
ES
5522009-07-27 Ed Schonberg <schonberg@adacore.com>
553
554 * sem_eval.adb (Compile_Time_Compare): More precise handling of
555 Known_Valid flag, to prevent spurious range deductions when scalar
556 variables may be uninitialized. New predicate Is_Known_Valid_Operand.
557
d33744e4
RD
5582009-07-27 Robert Dewar <dewar@adacore.com>
559
560 * gnatfind.adb, osint.ads, sem.adb, xr_tabls.adb: Minor reformatting
561 and code clean up.
562
df7c3f62
ES
5632009-07-27 Ed Schonberg <schonberg@adacore.com>
564
565 * exp_ch9.adb (Expand_N_Timed_Entry_Call): Do not attempt expansion in
566 Ravenscar mode. Error has already been posted on specification.
567
568 * sem.adb: Further code clean ups.
569
0e47ff5c
AC
5702009-07-27 Robert Dewar <dewar@adacore.com>
571
572 * g-sse.ads: Minor reformatting
573
5742009-07-27 Arnaud Charlet <charlet@adacore.com>
575
576 * xref_lib.adb (Add_Xref_File_Internal, Find_ALI_Files): Add support for
577 alternate ali extension.
578 * xr_tabls.adb (ALI_File_Name, Get_File, Set_Unvisited): Take into
579 account Osint.ALI_Suffix.
580 * osint.ads (ALI_Suffix): Make visible.
581 * gnatfind.adb (Gnatfind): Add support for --ext= switch.
582 * gnat_ugn.texi: Document new gnatfind --ext= switch.
583
5842009-07-27 Ed Schonberg <schonberg@adacore.com>
585
586 * sem.adb (Walk_Library_Items): If main unit is an instance body, do
587 its spec first.
588
5892009-07-27 Javier Miranda <miranda@adacore.com>
590
591 * exp_disp.adb (Expand_Dispatching_Call): Generate the SCIL node after
592 the dispatching call has is expanded.
593
dbf04430
AC
5942009-07-27 Ed Schonberg <schonberg@adacore.com>
595
596 * exp_attr.adb (Expand_Attribute_Reference, case 'Valid): Reset the
597 Is_Known_Valid flag on the temporary created for the value whose
598 validity is being checked.
599
600 * sem.adb (Do_Unit_And_Dependents): Further code reorganization to
601 handle properly main units that are package specifications.
602
6032009-07-27 Geert Bosch <bosch@adacore.com>
604
605 * einfo.ads (Checks_May_Be_Suppressed): Fix typo in comment
606 * sem_aux.ads: Fix typo in comment
607 * sem_util.ads (Is_LHS): Adjust comment to match body
608
6092009-07-27 Sergey Rybin <rybin@adacore.com>
610
611 * gnat_ugn.texi (gnatcheck Complex_Inlined_Subprograms rule): Update
612 rule definition.
613
6142009-07-27 Olivier Hainque <hainque@adacore.com>
615
616 * g-sse.ads, g-ssvety.ads: Update comments.
617
4524c32c
AC
6182009-07-27 Sergey Rybin <rybin@adacore.com>
619
620 * gnat_ugn.texi: Update gnatcheck doc.
621
6222009-07-27 Arnaud Charlet <charlet@adacore.com>
623
624 * lib-xref.ads: Allocate/document 'o' char for use by references to
625 spark 'own' variables.
626
9337aa0a
AC
6272009-07-27 Gary Dismukes <dismukes@adacore.com>
628
629 * sem_ch6.adb (Analyze_Function_Return): Set Referenced on return
630 objects, since these are implicitly referenced by the return statement.
631 * sem_warn.adb (Warn_On_Unreferenced_Entity): No longer a need to test
632 Is_Return_Object in this procedure, as return objects will never make
633 it here since they're now marked as Referenced.
634
6352009-07-27 Robert Dewar <dewar@adacore.com>
636
637 * exp_ch2.adb, sem_util.adb, sem_util.ads: Minor reformnatting
638
75ba322d
AC
6392009-07-27 Robert Dewar <dewar@adacore.com>
640
641 * exp_ch6.adb (Expand_Call): Reset Is_Known_Valid after call
642
643 * sem_ch3.adb, sem_eval.adb, sem_aux.adb: Minor comment reformatting
644
6452009-07-27 Geert Bosch <bosch@adacore.com>
646
647 * checks.adb (Find_Check): Minor streamlining of logic.
648 * gnat1drv.adb(Gnat1drv): Put Check_Rep_Info in its alphabetical order.
649 * debug.adb: Document -gnatdX debug flag
650 * exp_ch2.adb(Expand_Entity_Reference): Implement new -gnatdX flag to
651 list information about reads from scalar entities.
652 Also slightly simplify condition for Expand_Current_Value.
653 * sem_util.ads, sem_util.adb (Is_LHS, Is_Actual_Out_Parameter): New
654 functions.
655
6562009-07-26 Dave Korn <dave.korn.cygwin@gmail.com>
f6c7fcc0
DK
657
658 PR bootstrap/40578
659 * adaint.h (FOPEN, STAT, FSTAT, LSTAT, STRUCT_STAT): Rename from these
660 (GNAT_FOPEN, GNAT_STAT, GNAT_FSTAT, GNAT_LSTAT, GNAT_STRUCT_STAT): ...
661 to these.
662 (__gnat_stat): Adjust reference to STAT in prototype.
663 * adaint.c (__gnat_try_lock, __gnat_fopen, __gnat_file_length,
664 __gnat_named_file_length, __gnat_file_time_name, __gnat_file_time_fd,
665 __gnat_get_libraries_from_registry, __gnat_stat, __gnat_file_exists,
666 __gnat_is_regular_file, __gnat_is_directory, __gnat_is_readable_file,
667 __gnat_is_writable_file, __gnat_is_executable_file,
668 __gnat_set_writable, __gnat_set_executable, __gnat_set_non_writable,
669 __gnat_set_readable, __gnat_set_non_readable, __gnat_is_symbolic_link,
670 __gnat_copy_attribs): Adjust all references to the above.
671 * cstreams.c (__gnat_is_regular_file_fd): Likewise.
672
e27b834b
AC
6732009-07-23 Ed Schonberg <schonberg@adacore.com>
674
675 * sem.adb (Do_Unit_And_Dependents): Now that specs and bodies are not
676 done at the same time, guard against listing a body more than once.
677
6782009-07-23 Robert Dewar <dewar@adacore.com>
679
680 * exp_ch6.adb: Minor reformatting
681
6822009-07-23 Ed Schonberg <schonberg@adacore.com>
683
684 * sem_ch3.adb (Analyze_Object_Declaration): A scalar constant with a
685 static expression is known valid.
686 * sem_eval.adb (Compile_Time_Compare): Handle properly non-static
687 operands of a subtype with a single value.
688
5c20b5e2
ES
6892009-07-23 Ed Schonberg <schonberg@adacore.com>
690
691 * sem.adb (Do_Units_And_Dependents): Process bodies only for units that
692 are in the context of the main unit body.
693
ce14c577
AC
6942009-07-23 Sergey Rybin <rybin@adacore.com>
695
696 * gnat_ugn.texi (Misnamed_Controlling_Parameters gnatcheck rule): Fix
697 misprint in rule description.
698
6992009-07-23 Gary Dismukes <dismukes@adacore.com>
700
701 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration): Replace
702 test that the object declaration is within an extended return statement
703 with direct test of whether the declared object associated with the
704 build-in-place call is a return object, since the enclosing function
705 might not even be a build-in-place function.
706
7072009-07-23 Robert Dewar <dewar@adacore.com>
708
709 * freeze.adb, prj-nmsc.adb, errout.adb: Minor reformatting
710 Minor code reorganization
711
7122009-07-23 Arnaud Charlet <charlet@adacore.com>
713
714 * sem_prag.adb (Analyze_Pragma): Do not ignore pragma Pack on records
715 for static analysis, only packed arrays are causing troubles.
716
c37845f8
AC
7172009-07-23 Gary Dismukes <dismukes@adacore.com>
718
719 * sem_aggr.adb (Resolve_Extension_Aggregate): Report an error when the
720 ancestor part is a call to a limited function with an unconstrained
721 result subtype unless the aggregate has a null extension type.
722 * sem_ch3.adb (Is_Null_Extension): Use the base type when retrieving
723 the parent type declaration to avoid blowups on subtype cases.
724
7252009-07-23 Robert Dewar <dewar@adacore.com>
726
727 * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Better message for missing
728 comma.
729
730 * sem_util.adb (Wrong_Type): Special message for cases like A and B = 0
731
732 * s-regexp.adb: Minor reformatting
733 * scos.ads: Minor reformatting.
734
7352009-07-23 Arnaud Charlet <charlet@adacore.com>
736
737 * freeze.adb (Set_Small_Size): Remove extra space for consistency with
738 other similar messages.
739 * sem_prag.adb (Freeze_Record_Type, Freeze_Entity): Disable error
740 messages/implicit packing in CodePeer mode.
741 (Analyze_Pragma [case pragma Pack]): Ignore pragma in CodePeer mode.
742 * errout.adb (Special_Msg_Delete): Suppress 'size too small' message in
743 CodePeer mode.
744
7452009-07-23 Pascal Obry <obry@adacore.com>
746
747 * prj-nmsc.adb: Fix spec/body naming extension on case insensitive
748 systems.
749
d994a6e2
RD
7502009-07-23 Robert Dewar <dewar@adacore.com>
751
752 * einfo.ads, g-ssvety.ads, s-regexp.adb, g-sse.ads: Update comment.
753 Minor reformatting.
754
19f21e11
AC
7552009-07-23 Yannick Moy <moy@adacore.com>
756
757 * s-regexp.adb (Check_Well_Formed_Pattern): Called before compiling the
758 pattern.
759 (Raise_Exception_If_No_More_Chars): Remove extra blank in exception
760 string.
761 (Raise_Exception): Ditto.
762
7632009-07-23 Olivier Hainque <hainque@adacore.com>
764
765 * g-sse.ads: Simplify comment.
766
4b956d8b
AC
7672009-07-23 Olivier Hainque <hainque@adacore.com>
768
769 * g-ssinty.ads: New unit. GNAT.SSE.Internal_Types. Factorize
770 low level internal type definitions for distinct higher level
771 binding development activities (user type definitions and
772 operations).
773 * gnat_rm.texi: Document it.
774 * g-ssvety.ads: Use it.
775 * gcc-interface/Makefile.in: (x86 32/64 linux, cygwin32 sections): Add
776 g-ssinty.o to EXTRA_GNATRTL_NONTASKING_OBJS.
777 * gcc-interface/utils.c (gnat_internal_attribute_table): Add entry
778 for the "may_alias" attribute.
779
7802009-07-23 Thomas Quinot <quinot@adacore.com>
781
782 * scos.ads: Minor typo fix
f698757b 783
4b956d8b
AC
784 * gcc-interface/decl.c (validate_alignment): For the case of an
785 implicit array base type, look for alignment clause on first subtype.
f698757b
EB
786
7872009-07-23 Robert Dewar <dewar@adacore.com>
788
789 * gcc-interface/decl.c (gnat_to_gnu_field): Don't check for overlap
790 with tagged parent if tagged parent is fully repped.
4b956d8b
AC
791
7922009-07-23 Ed Schonberg <schonberg@adacore.com>
793
794 * sem.adb (Walk_Library_Units): Handle properly the case where a unit
795 in the context depends on the spec of the main unit, by delaying
796 processing of the main unit body until all other units have been
797 processed.
798
f8c6086b
AC
7992009-07-23 Arnaud Charlet <charlet@adacore.com>
800
801 * a-convec.adb: Add comments about suspicious/subtle code.
802
8032009-07-23 Ed Schonberg <schonberg@adacore.com>
804
805 * einfo.ads: Document use of Alias in private overriding
806
8072009-07-23 Thomas Quinot <quinot@adacore.com>
808
809 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): For the case of
810 an array type, propagate alignment from first subtype to implicit base
811 type so that other subtypes (such as the itypes for aggregates of the
812 type) also receive the expected alignment.
813
814 * g-comlin.ads: Minor documentation clarification/rewording.
815 * scos.ads: Minor comments update.
816 * lib-writ.ads: Minor reformatting
817
dfcfdc0a
AC
8182009-07-23 Gary Dismukes <dismukes@adacore.com>
819
820 * exp_ch3.adb (Expand_N_Object_Declaration): For an initialized object
821 of a class-wide interface type that is a return object of a
822 build-in-place function, bypass the interface-related expansions into
823 renamings with displacement conversions, etc.
824 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Add an assertion
825 for the case where a renaming occurs in a build-in-place context, to
826 assert that the bypassing of the build-in-place treatment only occurs
827 in the case of a renaming that is an expansion of a return expression
828 that is itself a build-in-place function call.
829
8302009-07-23 Ed Schonberg <schonberg@adacore.com>
831
832 * sem_ch4.adb (Try_Primitive_Operation): A primitive operation is a
833 valid candidate interpretation in a prefixed view if it is hidden, but
834 overrides an inherited operation declared in the visible part.
835
8362009-07-23 Robert Dewar <dewar@adacore.com>
837
838 * exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer
839 division operands to 64-bit at all in any circumstances.
840
5d5e9775
AC
8412009-07-23 Robert Dewar <dewar@adacore.com>
842
843 * exp_ch4.adb (Analyze_N_Op_Rem): Assume operands are valid when
844 checking ranges for mod/rem to see if conditional jump will be
845 generated.
846 (Analyze_N_Op_Rem): Don't try to check actual lower bounds for
847 generating special -1 test for rem, generate it whenever both
848 operands can be negative (match circuit in Sem_Res).
849 (Analyze_N_Op_Rem): Don't go to base type, no longer needed and
850 destroys memory of positive range.
851 * sem_res.adb (Resolve_Arithmetic_Op): Assume operands are valid when
852 checking ranges for mod/rem to see if conditional jump will be generated
853
8542009-07-23 Ed Schonberg <schonberg@adacore.com>
855
856 * exp_ch3.adb (Build_Equivalent_Record_Aggregate): If the type of a
857 scalar components has non-static bounds, the equivalent aggregate
858 cannot be built, even if the expression is static, because range checks
859 will be generated.
860
27f55f3c
RD
8612009-07-23 Robert Dewar <dewar@adacore.com>
862
863 * exp_ch4.adb (Expand_N_Type_Conversion): Don't promote integer
864 division operands to 64-bit inside a conversion if 64-bit division not
865 available.
866
1c5c721a
AC
8672009-07-23 Sergey Rybin <rybin@adacore.com>
868
869 * gnat_ugn.texi: Update doc on Misnamed_Identifiers rule.
870
8712009-07-23 Javier Miranda <miranda@adacore.com>
872
873 * sinfo.ads, sinfo.adb (SCIL_Entity/Set_SCIL_Entity): new subprograms
874 (Entity/Set_Entity): not available in N_Null_Statement nodes
875 (Is_Scil_Node): renamed as Is_SCIL_Node
876 (Scil_Nkind): renamed as SCIL_Nkind
877 (Scil_Related_Node): renamed as SCIL_Related_Node
878 (Scil_Target_Prim): renamed as SCIL_Target_Prim
879 (Set_Is_Scil_Node): Renamed as Set_Is_SCIL_Node
880 (Set_Scil_Related_Node): Renamed as Set_SCIL_Related_Node
881 (Set_Scil_Target_Prim): Renamed as Set_SCIL_Target_Prim
882 Update documentation
883 * exp_disp.ads (Scil_Node_Kind): Renamed as SCIL_Node_Kind
884 (Get_Scil_Node_Kind): Renamed as Get_SCIL_Node_Kind
885 (New_Scil_Node): Renamed as New_SCIL_Node
886 * exp_disp.adb Update all occurrences of New_Scil_Node to New_SCIL_Node.
887 (Get_Scil_Node_Kind): Renamed as Get_SCIL_Node_Kind
888 (New_Scil_Node): Renamed as New_SCIL_Node
889 * exp_ch3.adb Update occurrence of New_Scil_Node to New_SCIL_Node.
890
8912009-07-23 Robert Dewar <dewar@adacore.com>
892
893 * sem_prag.adb: No_Return is an Ada 2005 pragma, not a GNAT pragma
894 * snames.ads-tmpl: No_Return is an Ada 2005 pragma, not a GNAT pragma
895 * einfo.adb: Minor reformatting
896
eaa826f8
RD
8972009-07-23 Robert Dewar <dewar@adacore.com>
898
899 * checks.adb (Apply_Arithmetic_Overflow_Check): Add comments
900 cross-referencing the new related code in
901 Exp_Ch4.Expand_N_Type_Conversion.
902 * exp_ch4.adb (Expand_N_Type_Conversion): Avoid unnecessary overflows
903
904 * exp_disp.adb, exp_disp.ads, sinfo.ads: Minor reformatting.
905 Add comment.
906
a50790d1
JM
9072009-07-23 Javier Miranda <miranda@adacore.com>
908
909 * sinfo.ads (Is_Scil_Node, Scil_Nkind, Scil_Related_Node,
910 Scil_Target_Prim, N_Has_Entity): Add missing documentation.
911 * exp_disp.ads (Scil_Node_Kind): Ditto.
912 * exp_disp.adb (Make_DT, Make_Tags): Ditto.
913 * exp_ch3.adb (Build_Init_Procedure): Ditto.
914
7205254b
JM
9152009-07-23 Javier Miranda <miranda@adacore.com>
916
917 * einfo.adb (Component_Type): Add missing assertion.
918 * sem_res.adb (Resolve_Call): Ensure proper kind of entity before
919 reading attribute Component_Size.
920 * exp_ch4.adb (Is_Safe_In_Place_Array_Op): Ensure proper kind of entity
921 before reading attributes Component_Size and Component_Type.
922 * exp_ch3.adb (Build_Initialization_Call): Ensure proper kind of entity
923 before reading attribute Component_Type.
924
212863c0
AC
9252009-07-23 Olivier Hainque <hainque@adacore.com>
926
927 * gnat_rm.texi: Document the GNAT.SSE units.
928
9292009-07-23 Ed Schonberg <schonberg@adacore.com>
930
931 * sem_ch6.adb (Analyze_Return_Type): Do not create itype reference for
932 not null return if it appears on a subunit.
933
97cb64f0
RD
9342009-07-23 Robert Dewar <dewar@adacore.com>
935
936 * exp_ch5.adb (Expand_N_Assignment_Statement): Do left-side validity
937 check right away so it does not get skipped for early returns, e.g.
938 array assignments.
939 (Expand_N_Assignment_Statement): Don't propagate Is_Known_Valid to
940 left-side unless we really know the value is valid.
941
942 * errout.adb, exp_ch3.adb, exp_disp.ads, sinfo.ads, exp_disp.adb: Minor
943 reformatting. Minor code reorganization. Add comments.
944
839de535
RD
9452009-07-23 Robert Dewar <dewar@adacore.com>
946
947 * get_scos.adb (Skip_EOL): Fix error of mishandling end of line after
948 complex condition.
949
81d93365
AC
9502009-07-23 Gary Dismukes <dismukes@adacore.com>
951
952 * sem_ch6.adb (Check_Return_Subtype_Indication): Replace type equality
953 with test of coverage, to allow specific type objects in extended
954 returns of class-wide functions. Remove now-unnecessary special-case
955 tests that allowed this in certain cases of expanded extended returns.
956
9572009-07-23 Javier Miranda <miranda@adacore.com>
958
959 * sinfo.ads,sinfo.adb (Entity/Set_Entity): Attribute available in
960 N_Null_Statements (for SCIL nodes).
961 (Is_Scil_Node/Set_Is_Scil_Node): New attribute (for SCIL nodes).
962 (Scil_Nkind/Set_Scil_Nkind): New attribute (for SCIL nodes).
963 (Scil_Related_Node/Set_Scil_Related_Node): New attribute (for SCIL
964 nodes).
965 (Scil_Target_Prim/Set_Scil_Target_Prim): New attribute (for SCIL nodes).
966 * exp_disp.adb (Expand_Dispatching_Call): Add generation of SCIL node
967 associated with dispatching call.
968 (Get_Scil_Node_Kind): New function that returns the kind of SCIL node.
969 (Make_DT, Make_Tags): Add generation of SCIL nodes associated with
970 initialization of dispatch tables and initialization of tags.
971 (New_Scil_Node): New function that creates a new SCIL node.
972 (Build_Init_Procedure): Add generation of SCIL node associated with the
973 initialization of tags done in the IP subprogram.
974
9752009-07-23 Ed Schonberg <schonberg@adacore.com>
976
977 * errout.adb (Error_Msg_NEL): If the entity in the initial message has
978 Warnings_Off, do not emit continuation messages.
979
980 * sem_ch10.adb: Set Is_Compilation_Unit on generated child subprogram
981 spec.
982
9832009-07-23 Emmanuel Briot <briot@adacore.com>
984
985 * ali.adb: Minor comment update
986
9872009-07-23 Vasiliy Fofanov <fofanov@adacore.com>
988
989 * s-win32.ads (HANDLE): Define to be the same size as address type.
990 Fix copyright.
991
9922009-07-23 Olivier Hainque <hainque@adacore.com>
993
994 * g-sse.ads: New file. Root of the SSE facilities trees, with
995 general description and common declarations.
996 * g-ssvety.ads: New file. Expose user level SSE vector types.
997 * impunit.adb (Non_Imp_File_Names_95): Register new units.
998 * gcc-interface/Makefile.in (x86 32/64 linux, win32): Add
999 EXTRA_GNATRTL_NONTASKING_OBJS entries for SSE units.
1000
10012009-07-23 Ben Brosgol <brosgol@adacore.com>
1002
1003 * gnat_ugn.texi: Wordsmithing.
1004
8b17c58e
AC
10052009-07-23 Arnaud Charlet <charlet@adacore.com>
1006
1007 * prj-conf.ads, prj-conf.adb: Switch to GPLv3.
1008
240fe2a4
AC
10092009-07-22 Eric Botcazou <ebotcazou@adacore.com>
1010
1011 * exp_aggr.adb (Gen_Loop): Do not qualify the bounds of the range if
1012 they are already of the base type of the index.
1013
10142009-07-22 Brett Porter <porter@adacore.com>
1015
1016 * sysdep.c, init.c: Fix typo: _SPE_ should have been __SPE__.
1017
10182009-07-22 Robert Dewar <dewar@adacore.com>
1019
1020 * vms_data.ads: Add entry for SCO_OUTPUT (-gnateS)
1021 * gnat_ugn.texi: Add documentation for -gnateS switch
1022 * ug_words: Add entry for -gnateS /SCO_OUTPUT
fe8b685c 1023 * gcc-interface/Make-lang.in: Update dependencies.
240fe2a4
AC
1024
1025 * get_scos.adb, get_scos.ads, gnat1drv.adb, par_sco.adb,
1026 par_sco.ads, put_scos.adb, put_scos.ads, scos.adb, scos.ads: Initial
1027 complete information for SCO input/output.
1028
f7f0159d
AC
10292009-07-22 Sergey Rybin <rybin@adacore.com>
1030
1031 * gnat_ugn.texi: Update doc for some gnatcheck rules.
1032
10332009-07-22 Robert Dewar <dewar@adacore.com>
1034
1035 * par_sco.adb, par_sco.ads (pscos): New debug routine to output
1036 contents of SCO tables.
1037 * put_scos.adb, put_scos.ads, get_scos.adb, get_scos.ads,
1038 scos.adb, scos.ads: New files.
1039 * gcc-interface/Make-lang.in: Update dependencies.
1040
1041 * lib-util.ads, gnatbind.ads, ali.ads, binderr.ads: Minor comment
1042 fixes and reformatting.
1043
fa031669
AC
10442009-07-22 Robert Dewar <dewar@adacore.com>
1045
1046 * g-socket.ads: Minor reformatting
1047
10482009-07-22 Gary Dismukes <dismukes@adacore.com>
1049
1050 * sem_warn.adb (Warn_On_Unreferenced_Entity): Add warning messages that
1051 include the entity kind for following cases of unreferenced entities:
1052 E_Label, E_Discriminant, E_Package, E_Exception, and Formal_Object_Kind.
1053
e1aca343
AC
10542009-07-22 Ed Falis <falis@adacore.com>
1055
1056 * s-vxwext-kernel.adb, s-vxwext-kernel.ads: Replace use of taskStop
1057 with taskSuspend.
1058
10592009-07-22 Arnaud Charlet <charlet@adacore.com>
1060
1061 * adadecode.c: Make this file compilable outside of GCC.
1062
10632009-07-22 Thomas Quinot <quinot@adacore.com>
1064
1065 * g-socket.adb, g-socket.ads (Check_Selector): Make sure that
1066 (partially) default-initialized socket sets are handled properly by
1067 clearing their Set component.
1068
10692009-07-22 Bob Duff <duff@adacore.com>
1070
1071 * gnat_ugn.texi: Clarify the -gnatVx (validity checking) switches.
1072
74462a6a
AC
10732009-07-22 Robert Dewar <dewar@adacore.com>
1074
1075 * gnat_ugn.texi: Minor reformatting
1076
10772009-07-22 Ed Schonberg <schonberg@adacore.com>
1078
1079 * errout.adb (Error_Msg): A style message within an instantiation
1080 should not be labelled as an error.
1081
2f4f3f3f
AC
10822009-07-22 Ed Schonberg <schonberg@adacore.com>
1083
1084 * freeze.adb (Freeze_Entity): Do not generate extra formal for function
1085 in initialization expression if function does not have convention Ada.
1086
10872009-07-22 Sergey Rybin <rybin@adacore.com>
1088
1089 * gnat_ugn.texi, vms_data.ads: Add qualifier for new gnatpp option
1090 '--separate-label' to control label layout.
1091
1d1bd8ad
AC
10922009-07-22 Robert Dewar <dewar@adacore.com>
1093
1094 * exp_tss.ads, sem_eval.adb: Minor reformatting
1095
10962009-07-22 Bob Duff <duff@adacore.com>
1097
1098 * exp_dist.adb, exp_dist.ads: Update comments.
1099
09494c32
AC
11002009-07-22 Brett Porter <porter@adacore.com>
1101
1102 * init.c (__gnat_init_float): For SPE, set bits in SPEFSCR instead of
1103 FPSCR.
1104 * sysdep.c (__gnat_get_task_options): Set task option enabling SPE.
1105
11062009-07-22 Gary Dismukes <dismukes@adacore.com>
1107
1108 * exp_ch5.adb, sem_util.adb, sem_attr.adb, exp_dbug.ads, exp_ch2.adb,
1109 exp_tss.ads, exp_ch4.adb, sem_ch4.adb: Correct spelling error.
1110 Minor reformatting.
1111 * sem_res.adb (Resolve_Explicit_Dereference): Reword one comment that
1112 used poor terminology.
1113
11142009-07-22 Robert Dewar <dewar@adacore.com>
1115
1116 * freeze.adb, sem_ch3.adb, sem_prag.adb: Minor reformatting
1117 * sem_eval.adb, exp_tss.adb: Minor comment update.
1118 * stylesw.adb: Code clean up.
1119
5a989c6b
AC
11202009-07-22 Ed Schonberg <schonberg@adacore.com>
1121
1122 * freeze.adb (Freeze_Entity): If Implicit_Packing is enabled, and the
1123 component size is an exact number of bytes, an array type can have a
1124 size clause that forces packing even though the array type itself is
1125 not bit-packed.
1126
11272009-07-22 Thomas Quinot <quinot@adacore.com>
1128
1129 * sem_ch3.adb (Analyze_Object_Declaration): For a constant declaration,
1130 if there is a previous entity with the same name in the scope, ignore
1131 it if it is the renaming declaration for a generic package introduced
1132 in instances.
1133
11342009-07-22 Nicolas Roche <roche@adacore.com>
1135
1136 * seh_init.c: use RtlAddFunctionTable to register our SEH exception
1137 handler on x86_64 windows.
1138
11392009-07-22 Arnaud Charlet <charlet@adacore.com>
1140
1141 * sem_prag.adb (Analyze_Pragma): Initialize/Normalize_Scalars create
1142 false positives in CodePeer, so ignore this pragma in this mode.
1143
9d0c3761
AC
11442009-07-22 Thomas Quinot <quinot@adacore.com>
1145
1146 * sem_util.adb, sem_ch10.adb: Minor reformatting
1147
1148 * g-socket.adb (Receive_Socket, recvfrom(2) variant): Apply required
1149 special handling for the case of no data received and Item'First =
1150 Stream_Element_Offset'First.
1151 (Last_Index): New subprogram factoring the above special handling
1152 over the various locations where it is required.
1153
11542009-07-22 Arnaud Charlet <charlet@adacore.com>
1155
1156 * gnat1drv.adb (Gnat1drv): Also disable division by zero and alignment
1157 checks in CodePeer_Mode.
1158 * gcc-interface/Make-lang.in: Update dependencies.
1159
11602009-07-22 Ed Schonberg <schonberg@adacore.com>
1161
1162 * sem_aggr.adb: Improve error message.
1163
1164 * sem_ch13.adb: If Ignore_Rep_Clauses is enabled, do a minimal analysis
1165 of an address representation clause.
1166 * freeze.adb (Freeze_Static_Object): An local imported object is legal
1167 if it has an address clause.
1168
f6256631
AC
11692009-07-22 Thomas Quinot <quinot@adacore.com>
1170
1171 * sem_elab.adb (Insert_Elab_Check): When relocating an overloaded
1172 expression to insert an elab check using a conditional expression, be
1173 sure to carry the original list of interpretations to the new location.
1174
11752009-07-22 Gary Dismukes <dismukes@adacore.com>
1176
1177 * gnat1drv.adb: Fix spelling error.
1178
11792009-07-22 Javier Miranda <miranda@adacore.com>
1180
1181 * sem_type.ads, sem_type.adb (In_Generic_Actual): Leave this subprogram
1182 at the library level and fix a hidden bug in its implementation: its
1183 functionality for renaming objects was broken because
1184 N_Object_Renaming_Declarations nodes are not a subclass of
1185 N_Declaration nodes (as documented in sinfo.ads).
1186 * sem_util.adb (Check_Dynamically_Tagged_Expression): Include in this
1187 check nodes that are actuals of generic instantiations.
1188
11892009-07-22 Ed Schonberg <schonberg@adacore.com>
1190
1191 * sinfo.ads, sinfo.adb (Pending_Context): New flag to indicate that the
1192 context of a compilation unit is being analyzed. Used to detect
1193 circularities created by with_clauses that are not detected by the
1194 loading machinery.
1195 * sem_ch10.adb (Analyze_Compilation_Unit): Set Pending_Context before
1196 analyzing the context of the current compilation unit, to detect
1197 possible circularities created by with_clauses.
1198
4eb317cc
TQ
11992009-07-22 Thomas Quinot <quinot@adacore.com>
1200
1201 * sem_type.adb (Get_First_Interp): Fix wrong loop exit condition.
1202
a36c1c3e
RD
12032009-07-22 Robert Dewar <dewar@adacore.com>
1204
1205 * sem_res.adb (Check_No_Direct_Boolean_Operators): Add check for -gnatyB
1206 * style.ads, styleg.adb, styleg.ads (Check_Boolean_Operator): New
1207 procedure.
1208 * usage.adb, stylesw.ads, stylesw.adb: Add handling of -gnatyB switch
1209 * gnat_ugn.texi: Add documentation of -gnatyB
1210 * vms_data.ads: Add entry for -gnatyB (STYLE=BOOLEAN_OPERATORS)
1211
d1ced162
RD
12122009-07-22 Robert Dewar <dewar@adacore.com>
1213
1214 * s-stchop.adb, a-direct.adb, a-ztexio.adb, gnatchop.adb, prj-proc.adb,
1215 make.adb, s-regpat.adb, ali-util.adb, a-ngcefu.adb, prep.adb,
1216 s-tassta.adb, a-tifiio.adb, a-textio.adb, prj.adb, uintp.adb,
1217 s-valrea.adb, a-ngelfu.adb, prepcomp.adb, sinput-l.adb, vms_conv.adb,
1218 errout.adb, g-alleve.adb, repinfo.adb, a-wtedit.adb, ali.adb,
1219 a-witeio.adb, prj-dect.adb, prj-nmsc.adb, sinput-c.adb, binde.adb,
1220 s-regexp.adb, s-imgrea.adb, a-teioed.adb, errutil.adb, prj-util.adb,
1221 a-ztedit.adb, gnatls.adb, prj-conf.adb, bcheck.adb, s-scaval.adb,
1222 erroutc.adb, osint.adb, a-strfix.adb, s-fileio.adb: Make sure sources
1223 obey short-circuit style rule.
1224
5a1ccfb1
AC
12252009-07-20 Bob Duff <duff@adacore.com>
1226
1227 * sem_ch13.adb (Analyze_Record_Representation_Clause): Use "and then"
1228 instead of "and", because otherwise Parent_Last_Bit is read
1229 uninitialized in the case where it's not a tagged type, or the tagged
1230 parent does not have a complete rep clause.
1231
12322009-07-20 Robert Dewar <dewar@adacore.com>
1233
1234 * stylesw.ads: Minor documentation change.
1235
1236 * types.ads: Minor reformatting
1237
12382009-07-20 Javier Miranda <miranda@adacore.com>
1239
1240 * exp_disp.ads (Apply_Access_Checks): New subprogram that takes care of
1241 generating the tag checks associated with dispatching calls.
1242 * exp_disp.adb (Apply_Access_Checks): New subprogram.
1243 (New_Value): This routine was previously local to expand dispatching
1244 calls but it is now used also by Apply_Access_Checks.
1245 (Expand_Dispatching_Calls): Cleanup code because the functionality of
1246 tag checks is now provided by Apply_Access_Checks.
1247 * exp_ch6.adb (Expand_Call): Incorporate generation of tag checks in
1248 case of dispatching calls.
1249
12502009-07-20 Arnaud Charlet <charlet@adacore.com>
1251
1252 * gnat1drv.adb (Gnat1drv): Also disable Elaboration_Check in
1253 CodePeer_Mode.
1254
1be9633f
AC
12552009-07-20 Gary Dismukes <dismukes@adacore.com>
1256
1257 * exp_prag.adb (Expand_Pragma_Import_Export_Exception): When compiling
1258 for VMS, only rewrite the first component of the associated exception's
1259 aggregate init (as 'V'), and eliminate the bogus rewrites of the second
1260 and third components that were being replaced with 'M' and 'S'.
1261
12622009-07-20 Arnaud Charlet <charlet@adacore.com>
1263
1264 * gnat1drv.adb (Gnat1drv): Suppress access checks in CodePeer mode.
1265 Also do not generate error when parsing a spec in CodePeer mode.
1266
12672009-07-20 Javier Miranda <miranda@adacore.com>
1268
1269 * checks.adb (Apply_Access_Check): Avoid checks on availability of
1270 runtime function Offset_To_Top_Ptr when compiling with no tagged
1271 types expansion.
1272 * exp_ch3.adb (Build_Init_Procedure): Leave open the possibility of
1273 adding code to the init proc when compiling for VM backends.
1274
12752009-07-20 Vincent Celier <celier@adacore.com>
1276
151293b5
VC
1277 * switch-m.ads, switch-m.adb (Normalize_Compiler_Switches): Take into
1278 account switches -gnatw.?
1be9633f
AC
1279
12802009-07-20 Thomas Quinot <quinot@adacore.com>
1281
1282 * sem_dist.adb, exp_dist.adb: Minor reformatting
1283
1284 * Make-generated.in: New file.
1285
1286 * gcc-interface/Make-lang.in: Use Make-generated.in fragment.
1287
4755cce9
JM
12882009-07-20 Javier Miranda <miranda@adacore.com>
1289
1290 * sem_util.ads, sem_util.adb (Check_Dynamically_Tagged_Expression): New
1291 subprogram.
1292 * sem_aggr.adb (Resolve_Array_Aggregate): Check incorrect use of
1293 dynamically tagged expression.
1294 * sem_ch3.adb (Analyze_Object_Declaration): Call new routine that
1295 factorizes code.
1296 * sem_ch6.adb (Analyze_Function_Return, Process_Formals): Ditto.
1297 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
1298
46fe0142
AC
12992009-07-20 Arnaud Charlet <charlet@adacore.com>
1300
1301 * gnat1drv.adb (Gnat1drv): Set operating mode to Generate_Code when
1302 CodePeer_Mode is set, to benefit from full front-end expansion
1303 (e.g. generics).
1304
13052009-07-20 Ed Schonberg <schonberg@adacore.com>
1306
1307 * sem_res.adb: Add guard.
1308
1309 * exp_disp.adb, sem_disp.adb (Make_DT): Check underlying view of type
1310 for possible attribute definition of External_Tag, in case clause
1311 appears in the private part of a package.
1312
f043707f
JG
13132009-07-20 Jerome Guitton <guitton@adacore.com>
1314
1315 * gcc-interface/Makefile.in: cleanup powerpc linux target pairs.
1316
ff7139c3
AC
13172009-07-20 Vadim Godunko <godunko@adacore.com>
1318
1319 * a-coorma.adb: Minor reformatting.
1320
13212009-07-20 Ed Schonberg <schonberg@adacore.com>
1322
1323 * sem_ch3 (Build_Itype_Reference): Make public, for use on non-null
1324 access return types.
1325 * sem_ch6.adb (Analyze_Return_Type): If return is a not null subtype,
1326 provide an itype reference to gigi to force elaboration of the subtype
1327 at the proper point.
1328
13292009-07-20 Tristan Gingold <gingold@adacore.com>
1330
1331 * g-expect.adb: Avoid closeing already closed handle.
1332
13332009-07-20 Robert Dewar <dewar@adacore.com>
1334
1335 * sprint.adb (Write_Subprogram_Name): New procedure to output
1336 subprogram name with possible preceding $ (replaces
1337 Note_Implicit_Run_Time_Call).
1338
6fb4cdde
AC
13392009-07-20 Robert Dewar <dewar@adacore.com>
1340
1341 * vms_data.ads: Minor reformatting
1342
1343 * einfo.ads, einfo.adb (Parent_Subtype): Now allowed on record subtype,
1344 applies to base type.
1345 (Parent_Subtype): Now allowed on record subtype, applies to base type
1346 * exp_ch5.adb (Expand_Assign_Record): Handle Componentwise_Assignment
1347 for case of fully repped tagged type.
1348 (Make_Tag_Ctrl_Assignment): Set Componentwise_Assignment and avoid
1349 tag save/restore for fully repped tagged type case.
1350 * exp_util.ads, exp_util.adb (Is_Fully_Repped_Tagged_Type): New function
1351 * fe.h (Is_Fully_Repped_Tagged_Type): New function
1352 * sem_ch13.adb (Analyze_Recorrd_Representation_Clause): Check for
1353 overlap of tagged type components with parent type if parent type is
1354 fully repped.
1355 * sinfo.ads, sinfo.adb (Componentwise_Assignment): New flag
1356
1357 * sem_res.adb (Check_No_Direct_Boolean_Operators): Remove handling of
1358 comparisons.
1359 (Resolve_Comparison_Operators): Remove No_Direct_Boolean_Operators check
1360 (Resolve_Equality_Op): Remove No_Direct_Boolean_Operators check
1361
1362 * gnat_rm.texi: Restriction No_Direct_Boolean_Operators includes only
1363 logical operators (AND/OR/XOR), not comparison operators.
1364
1365 * sprint.ads: Minor reformatting
1366
13672009-07-20 Ed Schonberg <schonberg@adacore.com>
1368
1369 * sem_intr.adb (Check_Intrinsic_Call): For Import_Value and related
1370 intrinsics, check that argument is a string literal, rather than
1371 checking for staticness.
1372
ae65d635
AC
13732009-07-20 Robert Dewar <dewar@adacore.com>
1374
1375 * sem_ch13.adb: Minor reformatting
1376
1377 * einfo.ads: Minor reformatting
1378 Component_Bit_Offset is no longer considered obsolescent
1379
13802009-07-20 Nicolas Roche <roche@adacore.com>
1381
1382 * a-calend.adb: Redefine time_t as signed integer with same size as
1383 Address type.
1384 * s-os_lib.ads: Redefine OS_Time as signed integer with same size as
1385 Address type
1386 * adaint.h: On Windows 64bits declare OS_Time as long long instead of
1387 long
1388
13892009-07-20 Javier Miranda <miranda@adacore.com>
1390
1391 * exp_tss.adb (Init_Proc): Add missing support for non-default C++
1392 constructors that have anonymous access type formals.
1393
1394 * sem_res.adb (Resolve_Actuals): Disable checks associated with Ada
1395 class-wide arguments in case of imported C++ subprograms.
1396
1397 * exp_ch3.adb (Build_Initialization_Call): Add assertion.
1398
13992009-07-20 Sergey Rybin <rybin@adacore.com>
1400
1401 * vms_data.ads: Update qualifiers.
1402
5132708f
RD
14032009-07-20 Robert Dewar <dewar@adacore.com>
1404
1405 * einfo.ads, switch.adb, gnatls.adb, inline.adb, sem_ch13.adb: Minor
1406 reformatting
1407
a406865a
RG
14082009-07-17 Richard Guenther <rguenther@suse.de>
1409
1410 PR c/40401
1f55686a
AC
1411 * gcc-interface/utils.c (end_subprog_body): Revert to pre-tuples
1412 state. Remove unused parameter.
a406865a
RG
1413 (gnat_gimplify_function): Do not gimplify here.
1414 Fold into its only caller and remove.
1415 (gnat_builtin_function): Adjust for end_subprog_body signature change.
1416 (gnat_write_global_declarations): Also finalize the CU.
1f55686a
AC
1417 * gcc-interface/misc.c (gnat_parse_file): Do not finalize the CU here.
1418 * gcc-interface/trans.c (gigi): Revert to pre-tuples state.
a406865a
RG
1419 (Subprogram_Body_to_gnu): Adjust for end_subprog_body signature
1420 change.
1f55686a 1421 * gcc-interface/gigi.h (end_subprog_body): Remove unused parameter.
a406865a 1422
fde4b6f5
AC
14232009-07-15 Arnaud Charlet <charlet@adacore.com>
1424
1425 * gcc-interface/Make-lang.in: Update dependencies
1426
1427 * gcc-interface/Makefile.in: Add target pairs for PPC/Xenomai
1428
9cd33a66
AC
14292009-07-15 Robert Dewar <dewar@adacore.com>
1430
1431 * par_sco.adb (Traverse_Declarations_Or_Statements): Add processing for
1432 N_Label. Remove SCO table entry for entry point (not used).
1433
1434 * par_sco.ads: Remove SCO entry point type (not used)
1435
1436 * switch.adb: Minor code clean up.
1437
14382009-07-15 Eric Botcazou <ebotcazou@adacore.com>
1439
1440 * exp_dbug.ads (Base Record Types): Document enhanced encoding.
1441
14422009-07-15 Thomas Quinot <quinot@adacore.com>
1443
1444 * gnatls.adb: Minor reformatting
1445
1446 * gnatcmd.adb: Minor code reorganization
1447
14482009-07-15 Ed Schonberg <schonberg@adacore.com>
1449
1450 * exp_util.adb (Component_May_Be_Bit_Aligned): Use underlying type to
1451 determine whether a component of a private type has a composite type.
1452
6eab5a95
AC
14532009-07-15 Robert Dewar <dewar@adacore.com>
1454
1455 * sem_ch10.adb: Minor reformatting throughout
1456 Minor code reorganization (put nested subprograms in alpha order)
1457
14582009-07-15 Ed Schonberg <schonberg@adacore.com>
1459
1460 * exp_ch6.adb (Expand_Call): Prevent double attachment of the result
1461 when compiling a call to a protected function that returns a controlled
1462 object.
1463
14642009-07-15 Hristian Kirtchev <kirtchev@adacore.com>
1465
1466 * sysdep.c (__gnat_localtime_tzoff): Consolidate the Lynx cases into
1467 one. Add task locking and unlocking around the critical region which
1468 mentions localtime_r and global variable timezone for various targets.
1469 Comment reformatting.
1470
3eb532e6
RD
14712009-07-15 Robert Dewar <dewar@adacore.com>
1472
1473 * gnat_rm.texi: Document s-ststop.ads
1474
1475 * impunit.ad: (Map_Array): New table of alternative names
1476 (Get_Kind_Of_Unit): Return possible suggested alternative name
1477
1478 * impunit.ads (Get_Kind_Of_Unit): Return possible suggested
1479 alternative name.
1480
1481 * sem_ch10.adb (Analalyze_With_Clause): Add name of possible
1482 alternative unit if an implementation unit is with'ed.
1483
4cd029c7
RD
14842009-07-15 Robert Dewar <dewar@adacore.com>
1485
1486 * gnat_ugn.texi: Minor updates.
1487
1488 * snames.ads-tmpl: Minor comment updates for Ada 2005 fully implemented
1489
892125cd
AC
14902009-07-15 Ed Schonberg <schonberg@adacore.com>
1491
1492 * sem_warn.adb (Warn_On_Constant_Condition): Handle properly constant
1493 conditions of a derived boolean type.
1494 Minor reformatting
1495
14962009-07-15 Robert Dewar <dewar@adacore.com>
1497
1498 * gnat1drv.adb: Initialize SCO tables
1499
1500 * par-load.adb: Call SCO_Record for main unit spec
1501
1502 * par.adb: Make call to SCO_Record for main unit
1503
1504 * par_sco.adb (Unit_Table): Change format to facilitate sort
1505 (Process_Decisions): New procedure with list argument
1506 (Traverse_Generic_Package_Declaration): New procedure
1507 (Initialize): New procedure, replaces Init
1508 (SCO_Output): Sort unit table before output
1509 (SCO_Record): Avoid duplications
1510 (SCO_Record): Handle remaining cases of units
1511 (Traverse_Declarations_Or_Statements): Handle generics
1512
1513 * par_sco.ads (Initialize): New peocedure (replaces Init)
1514
1515 * sem_ch10.adb (Analyze_Proper_Body): Make call to SCO_Record for
1516 subunit.
1517
15182009-07-15 Arnaud Charlet <charlet@adacore.com>
1519
1520 * debug.adb: Add -gnatd.J switch for now to support scil generation in
1521 parallel. Add missing doc for -gnatd.I and -gnatd.O
1522
671eb586
RD
15232009-07-15 Robert Dewar <dewar@adacore.com>
1524
1525 * lib-load.adb: Minor reformatting
1526
1527 * lib-writ.adb (Write_ALI): Fix handling of SCO_Output wrt Generate_SCO.
1528
8aaeba8f
RD
15292009-07-15 Robert Dewar <dewar@adacore.com>
1530
1531 * par.adb: Minor reformatting
1532 Add ??? comment for possible bad comment
1533
1534 * par-ch10.adb: Minor reformatting
1535
00838d9a
AC
15362009-07-15 Ed Schonberg <schonberg@adacore.com>
1537
1538 * sem_warn.adb (Warn_On_Constant_Condition): if the constant condition
1539 is a literal of a derived boolean type, it appears as an unchecked
1540 conversion. Retrieve actual value from expression of conversion.
1541
15422009-07-15 Robert Dewar <dewar@adacore.com>
1543
1544 * sem_ch3.adb: Minor reformatting
1545
1546 * lib-xref.ads, lib-xref.adb, lib.ads, par_sco.ads, par_sco.adb,
1547 lib-writ.ads, lib-writ.adb: Minor reformatting.
1548 Fix problem with SCO format in ALI files
1549
faf387e1
AC
15502009-07-15 Robert Dewar <dewar@adacore.com>
1551
1552 * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
1553 exp_aggr.adb: Minor code reorganization (better calling sequence for
1554 Make_Temporary).
1555
15562009-07-15 Thomas Quinot <quinot@adacore.com>
1557
1558 * opt.ads: Minor comment edits
1559
ece6940b
TG
15602009-07-15 Tristan Gingold <gingold@adacore.com>
1561
1562 * gcc-interface/Makefile.in: Special rule for seh_init.o no longer
1563 needed.
1564
6f12117a
RD
15652009-07-15 Robert Dewar <dewar@adacore.com>
1566
6f12117a
RD
1567 * lib-writ.adb (Write_Unit_Information): Use SCO_Output to output SCO
1568 information.
1569
1570 * lib-writ.ads: Document addition of SCO lines to ALI file
1571
1572 * par_sco.ads, par_sco.adb: New files.
1573
1574 * opt.ads (Generate_SCO): New switch
1575
1576 * par.adb (Par): Call SCO_Record to record SCO information
1577
1578 * sem_warn.adb (Warn_On_Constant_Condition): Adjust SCO condition
1579
1580 * switch-c.adb: Recognize -gnateS to generate SCO information
1581
1582 * usage.adb: Add line for -gnateS
1583
1584 * gcc-interface/Make-lang.in: Add dependency on par_sco.o for gnat1
1585
3a336262
AC
15862009-07-15 Robert Dewar <dewar@adacore.com>
1587
1588 * sinfo.ads, make.adb, par.ads, par.adb, sem_warn.adb: Minor
1589 reformatting.
1590
15912009-07-15 Thomas Quinot <quinot@adacore.com>
1592
1593 * g-socthi-mingw.adb: Minor comment addition
1594
1595 * g-socthi-mingw.ads (WSAStartup): First argument is a WORD not an int.
1596
1b73fbc4
RD
15972009-07-15 Robert Dewar <dewar@adacore.com>
1598
1599 * g-htable.ads, s-htable.ads: Minor reformatting
1600
6b3fc735
RD
16012009-07-15 Robert Dewar <dewar@adacore.com>
1602
1603 * switch-c.adb, sem_ch10.adb, sem_warn.adb, sem_warn.ads: Implement
1604 new switch -gnatw.g.
1605 (Set_GNAT_Mode_Warnings): New procedure.
1606
1607 * lib-xref.adb: Minor reformatting
1608
124e3829
RD
16092009-07-15 Robert Dewar <dewar@adacore.com>
1610
1611 * exp_aggr.adb, tbuild.ads, tbuild.adb: Minor reformatting
1612 Minor code reorganization
1613
2a4c0366
TG
16142009-07-14 Taras Glek <tglek@mozilla.com>
1615 Rafael Espindola <espindola@google.com>
1616
1617 * gcc-interface/Make-lang.in (ada.install-plugin): New target for
1618 installing plugin headers.
1619
ae525aa8
ES
16202009-07-13 Ed Schonberg <schonberg@adacore.com>
1621
1622 * exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
1623 exp_aggr.adb (Make_Temporary): Utility to create a defining identifier
1624 and link it to the expression whose value it captures.
1625
a7209434
AC
16262009-07-13 Robert Dewar <dewar@adacore.com>
1627
1628 * output.adb: Minor comment addition for last change
1629
1630 * sinfo.ads: Minor reformatting
1631
16322009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
1633
1634 * adaint.c (__gnat_portable_no_block_spawn): on Windows, return -1 when
1635 spawn failed like on all other targets.
1636
16372009-07-13 Ed Schonberg <schonberg@adacore.com>
1638
1639 * exp_ch7.adb: Indicate origin of temporary for transient expression.
1640
ef76538f
AC
16412009-07-13 Thomas Quinot <quinot@adacore.com>
1642
1643 * s-oscons-tmplt.c: Add comment.
1644
16452009-07-13 Robert Dewar <dewar@adacore.com>
1646
1647 * sinfo.adb, sinfo.ads, sem_util.adb, atree.adb, atree.ads: Minor
1648 reformatting. Minor code reorganization (add 9 argument version of
1649 Nkind_In).
1650
1651 * impunit.adb: Remove s-os_lib from list of system extensions.
1652
1653 * sem_util.ads: Minor reformatting
1654
1655 * output.adb: Add warnings off/on around System.OS_Lib.
1656
690001a2
BD
16572009-07-13 Bob Duff <duff@adacore.com>
1658
1659 * exp_dist.adb: Minor comment updates.
1660
a712aa03
AC
16612009-07-13 Gary Dismukes <dismukes@adacore.com>
1662
1663 * sem_ch10.adb, sem_ch12.adb, gnat1drv.adb, exp_ch4.adb: Fix casing of
1664 several references to CodePeer.
1665
16662009-07-13 Bob Duff <duff@adacore.com>
1667
1668 * exp_dist.adb (Build_From_Any_Function,Build_To_Any_Function,
1669 Build_TypeCode_Function_All): Do not recurse if the type is the base
1670 type.
1671
76efd572
AC
16722009-07-13 Robert Dewar <dewar@adacore.com>
1673
1674 * exp_ch4.adb: Minor comment change
1675
16762009-07-13 Ed Schonberg <schonberg@adacore.com>
1677
1678 * sem_ch5.adb (Analyze_Iteration_Scheme): Generate dummy reference for
1679 type of iteration, to prevent spurious warnings.
1680
16812009-07-13 Nicolas Roche <roche@adacore.com>
1682
1683 * s-oscons-tmplt.c: On VxWorks target ensure that vxWorks.h is always
1684 included.
1685
16862009-07-13 Arnaud Charlet <charlet@adacore.com>
1687
1688 * switch-c.adb, usage.adb, sem_ch9.adb, gnat_ugn.texi, rtsfind.adb,
1689 gnat1drv.adb, opt.ads, sem_ch13.adb (Inspector_Mode): Renamed to
1690 Generate_SCIL.
1691 (CodePeer_Mode): New -gnatC switch.
1692 (Adjust_Global_Switches): Adjust settings for Generate_SCIL and
1693 CodePeer_Mode.
1694
10475800
EB
16952009-07-13 Eric Botcazou <ebotcazou@adacore.com>
1696
1697 * checks.adb (Selected_Range_Checks): Do not consider that a non-static
1698 integer bound forces the check if it is compared to its subtype range.
1699
7b00e31d
AC
17002009-07-13 Robert Dewar <dewar@adacore.com>
1701
1702 * prj.ads, prj-dect.adb, prj-err.ads, prj-err.adb, prj-nmsc.adb,
1703 prj-strt.ads: Minor reformatting
1704
17052009-07-13 Thomas Quinot <quinot@adacore.com>
1706
1707 * exp_dist.adb (Build_From_Any_Call): For the case of a generic type,
1708 set the type of the From_Any call to the base type.
1709
17102009-07-13 Doug Rupp <rupp@adacore.com>
1711
1712 * symbols-processing-vms-ia64.adb (Process): Add variables and
1713 constants to retrieve and check for symbol visibility.
1714
17152009-07-13 Javier Miranda <miranda@adacore.com>
1716
1717 * exp_ch4.adb (Expand_N_Unchecked_Type_Conversion): If conversion is to
1718 the identical type we remove the conversion completely because
1719 it is useless.
1720
0e41a941
AC
17212009-07-13 Emmanuel Briot <briot@adacore.com>
1722
1723 * prj-err.adb (Error_Msg): One more case where a message should be
1724 considered as a warning.
1725
1726 * gnatcmd.adb (GNATCmd): Fix previous change, which negated a test.
1727
17282009-07-13 Thomas Quinot <quinot@adacore.com>
1729
1730 * exp_dist.adb (Expand_All_Calls_Remote_Subprogram_Call): Analyze
1731 calling stubs in the (library level) scope of the RCI locator, where it
1732 is attached, not in the caller's scope.
1733
17342009-07-13 Javier Miranda <miranda@adacore.com>
1735
1736 * sem_ch3.adb (Analyze_Object_Declaration): In case of class-wide
1737 interface object declarations we delay the generation of the equivalent
1738 record type declarations until its expansion because there are cases in
1739 which they are not required.
1740
1741 * sem_util.adb (Implements_Interface): Add missing support for subtypes.
1742
1743 * sem_disp.adb (Check_Controlling_Formals): Minor code cleanup plus
1744 addition of assertion.
1745
1746 * exp_util.adb (Expand_Subtype_From_Expr): Renamings of class-wide
1747 interface types require no equivalent constrained type declarations
1748 because the expanded code only references the tag component associated
1749 with the interface.
1750 (Find_Interface_Tag): Improve management of interfaces that are
1751 ancestors of tagged types.
1752
1753 * exp_ch3.adb (Expand_N_Object_Declaration): Improve the expansion of
1754 class-wide object declarations to add missing support to statically
1755 displace the pointer to the object to reference the tag component
1756 associated with the interface.
1757
1758 * exp_disp.adb (Make_Tags) Avoid generation of internally generated
1759 auxiliary types associated with user-defined dispatching calls if the
1760 type has no user-defined primitives.
1761
75069667
VF
17622009-07-13 Vasiliy Fofanov <fofanov@adacore.com>
1763
1764 * mingw32.h: Make it explicit that we need XP or later.
1765
1766 * initialize.c: Remove useless extern symbol declaration.
1767
1768 * adaint.h: Ditto, also expose __gnat_win32_remove_handle to allow
1769 code reuse in expect.c.
1770
1771 * adaint.c: Changes throughout the Windows section to redesign storage
1772 of the child process list and the process identification.
1773
1774 * expect.c (__gnat_kill, __gnat_waitpid): Simplify, cleanup, use pids
1775 for interfacing, fix errors.
1776 (__gnat_expect_portable_execvp): use function in adaint.c
1777
e2d9085b
EB
17782009-07-13 Emmanuel Briot <briot@adacore.com>
1779
1780 * prj-proc.adb, prj-part.adb, prj-part.ads, prj-strt.adb,
1781 prj-strt.ads, prj.adb, prj.ads, prj-makr.adb, prj-makr.ads,
1782 prj-dect.adb, prj-dect.ads, prj-nmsc.adb, prj-pars.adb, errutil.adb,
1783 errutil.ads, prj-conf.adb, gnatname.adb, prj-err.adb, prj-err.ads
1784 (Prj.Nmsc.Report_Error): Removed, no longer needed.
1785 Always use Prj.Err.Report_Message.
1786
442c0581
RD
17872009-07-13 Robert Dewar <dewar@adacore.com>
1788
1789 * prj.adb, sem_ch4.adb, sem_res.adb, prj-nmsc.adb: Minor reformatting
1790 & comment edits.
1791
3c2815d8
RD
17922009-07-13 Robert Dewar <dewar@adacore.com>
1793
1794 * opt.ads, prj-conf.adb, prj-env.adb, prj-ext.adb, prj-nmsc.adb,
1795 prj-proc.adb, prj-tree.adb, prj-tree.ads: Minor reformatting
1796
197e4514
AC
17972009-07-13 Emmanuel Briot <briot@adacore.com>
1798
1799 * prj.adb, prj.ads, prj-env.adb, prj-conf.adb, prj-tree.adb,
1800 mlib-prj.adb (Private_Part.Ada_Prj_Objects_File_Set,
1801 Ada_Prj_Include_File_Set): Removed, since not needed
1802 Code clean up.
1803
18042009-07-13 Ed Schonberg <schonberg@adacore.com>
1805
1806 * sem_ch4.adb (Analyze_Set_Membership): New procedure, subsidiary of
1807 Analyze_Membership_Op.
1808
1809 * sem_res.adb (Resolve_Set_Membership): New procedure, subsidiary of
1810 Resolve_Membership_Op.
1811
1812 * exp_ch4.adb (Expand_Set_Membership): New procedure, subsidiary of
1813 Expand_N_In.
1814
18152009-07-13 Robert Dewar <dewar@adacore.com>
1816
1817 * clean.adb: Minor reformattting
1818
7bccff24
EB
18192009-07-13 Emmanuel Briot <briot@adacore.com>
1820
1821 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj-ext.adb,
1822 gnat_ugn.texi, prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-util.adb,
1823 prj-conf.adb, gnatname.adb, prj-env.adb, prj-env.ads, prj-tree.adb,
1824 prj-tree.ads (Prj.Tree.Create*): New subprograms to create new packages
1825 and attributes in a project tree.
1826 (Add_Default_GNAT_Naming_Scheme): Provide real implementation.
1827 Remove last remaining mode-specific code (ada_only or
1828 multi_language). This was duplicating code
1829 (Get_Mode, Set_Mode): removed, no longer used.
1830 (Initialize_Project_Path): all tools will now take into account both
1831 GPR_PROJECT_PATH and ADA_PROJECT_PATH (in that order).
1832 Remove some global variables and subprograms no longer used
1833 Make temporary files tree-specific, to avoid interferences between
1834 trees loaded in memory at the same time.
1835 (Prj.Delete_Temporary_File): new subprogram
1836 (Object_Paths, Source_Paths): fields no longer stored in the project
1837 tree, since they are only needed locally in Set_Ada_Paths.
1838 (Set_Mapping_File_Initial_State_To_Empty): removed, since had no
1839 effect in practice.
1840 (Project_Tree_Data.Ada_Path_Buffer): removed, since it can be replaced
1841 by local variables in the appropriate subprograms
1842 (Has_Foreign_Sources): removed.
1843
1844 * gcc-interface/Makefile.in: prj-pp.o is now needed to build gnatmake
1845
5a64837c
AC
18462009-07-13 Arnaud Charlet <charlet@adacore.com>
1847
1848 * gnat1drv.adb (Adjust_Global_Switches): No longer set
1849 Back_Annotate_Rep_Info in inspector mode.
1850 (Gnat1Drv): Need to call the back-end in inspector mode to generate SCIL
1851
1852 * opt.ads: Update comment.
1853
2c011ce1
RD
18542009-07-13 Robert Dewar <dewar@adacore.com>
1855
1856 * lib.adb, prj-nmsc.adb, prj-proc.adb, prj-proc.ads, prj.adb,
1857 prj.ads: Minor reformatting and code reorganization.
1858
1859 * par-ch3.adb (Check_Restricted_Expression): New procedure
1860
99269cf5
ES
18612009-07-13 Ed Schonberg <schonberg@adacore.com>
1862
1863 * exp_attr.adb (Rewrite_Stream_Proc_Call): When rewriting a stream
1864 attribute into a call of the corresponding suprogram, create extra
1865 formals for the subprogram, because it may be a renaming whose
1866 analysis does not create extra formals.
1867
32404665
EB
18682009-07-13 Emmanuel Briot <briot@adacore.com>
1869
1870 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
1871 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
1872 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-env.adb, prj-tree.adb,
1873 prj-tree.ads: Minor reformatting.
1874 (Processing_Flags): new record to encapsulate the set of common
1875 parameters to several subprograms in the project manager.
1876 (Prj.Nmsc.Process_Naming_Scheme): renames Check, and moved to body
1877 Remove the need for the Current_Dir parameter in subprograms.
1878 (Look_For_Sources): minor refactoring, now that we no longer need to
1879 share subprograms between the two Ada_Only and Multi_Language modes
1880 (Processing_Flags): New field Error_On_Unknown_Language.
1881 Merge tests for library project between gnatmake and gprbuild.
1882
959dd7d8
AC
18832009-07-13 Arnaud Charlet <charlet@adacore.com>
1884
1885 * lib.adb, make.adb, mlib.adb, exp_dist.adb: Update comments.
1886 Minor reformatting.
1887
23c4ff9b
AC
18882009-07-13 Emmanuel Briot <briot@adacore.com>
1889
1890 * prj-env.adb (Create_Config_Pragmas_File): Iterate on sources rather
1891 than units.
1892
18932009-07-13 Thomas Quinot <quinot@adacore.com>
1894
1895 * sem_ch3.adb (Process_Full_View): Propagate Has_Specified_Stream_{Read,
1896 Write,Input,Output} from private view to full view.
1897
1898 * sem_type.adb, sem_type.ads: Minor reformatting
1899
19002009-07-13 Nicolas Setton <setton@adacore.com>
1901
1902 * exp_dbug.ads: Add documentation note on the utility of
1903 DW_AT_GNAT_encoding for IDEs.
1904
19052009-07-13 Robert Dewar <dewar@adacore.com>
1906
1907 * g-socthi-vxworks.adb: Minor reformatting
1908
1909 * gnatcmd.adb: Minor reformatting
1910
72a3d7c7
AC
19112009-07-13 Thomas Quinot <quinot@adacore.com>
1912
1913 * rtsfind.ads, exp_dist.adb (RE_Allocate_Buffer): Runtime entry
1914 removed, not used anymore.
1915 (Exp_Dist.PolyORB_Support.Helpers.Assign_Opaque_From_Any):
1916 New subprogram, implements copy of an Any value into a limited object.
1917 (Exp_Dist.PolyORB_Support.Build_General_Calling_Stubs,
1918 Exp_Dist.PolyORB_Support.Build_Subprogram_Receiving_Stubs,
1919 Exp_Dist.PolyORB_Support.Helpers.Build_From_Any_Function): For the case
1920 of parameters of a limited type, use the above new subprogram.
1921
19222009-07-13 Emmanuel Briot <briot@adacore.com>
1923
1924 * prj-nmsc.adb, prj-proc.adb, mlib.adb (Add_Source): new parameter
1925 Location.
1926 (Copy_ALI_Files): Avoid calls to read when pointing outside of the
1927 allocated space.
1928 (Error_Report): Remove global variable, replaced by parameters.
1929
223eab97
AC
19302009-07-13 Thomas Quinot <quinot@adacore.com>
1931
1932 * g-socthi-vxworks.adb (C_Sendto): VxWorks does not support the
1933 standard sendto(2) interface for connected sockets (passing a null
1934 destination address). Use send(2) instead for that case.
1935
19362009-07-13 Pascal Obry <obry@adacore.com>
1937
1938 * adaint.c: Fix __gnat_stat() with Win32 UNC paths.
1939
fdd7e7bb
EB
19402009-07-13 Emmanuel Briot <briot@adacore.com>
1941
1942 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
1943 prj-pars.adb, prj-conf.adb, prj-conf.ads: Remove all remaining global
1944 variables and tables in prj-nmsc.adb.
1945 (Tree_Processing_Data): Renames Processing_Data, some new fields added
1946 (Project_Processing_Data): New record
1947 Simplify/unify check for missing sources.
1948
fc2c32e2
EB
19492009-07-13 Emmanuel Briot <briot@adacore.com>
1950
1951 * gnatcmd.adb, make.adb, mlib-prj.adb, prj-part.adb, mlib.adb,
1952 prj.adb, prj.ads, clean.adb, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb,
1953 prj-pars.ads, prj-conf.adb, prj-conf.ads, prj-tree.adb,
1954 prj-tree.ads (Immediate_Directory_Of): Removed.
1955 (Prj.Pars): Now parse the project simulating a default config file.
1956 (Add_Default_GNAT_Naming_Scheme): New subprogram
1957 (Check_Naming_Multi_Lang): Fix default value for Dot_Replacement.
1958 Remove gnatmake-specific parsing of source files.
1959 (Check_Illegal_Suffix): Renames Is_Illegal_Suffix, since it now raises
1960 the error itself to provide more precise diagnostics.
1961 (Process_Exceptions_Unit_Based): Avoid duplicate error message when
1962 a unit belongs to several projects.
1963 (Copy_Interface_Sources): Search the full path of files to copy in the
1964 list of sources of the application rather than in the list of units.
1965 (Parse_Project_And_Apply_Config): Do not reset the name of the main
1966 project file.
1967 (Check_File): Use htables to find out whether a source is duplicated.
1968 (Add_Source): check whether the source or unit were already seen earlier
1969
1970 * gcc-interface/Makefile.in: Update gnatmake dependencies.
1971
1629f700
RD
19722009-07-13 Robert Dewar <dewar@adacore.com>
1973
1974 * par-ch3.adb (P_Discrete_Choice_List): Choice can only be simple
1975 expression if extensions permitted.
1976
1977 * par-ch4.adb (P_Membership_Test): New procedure (implement membership
1978 set tests).
1979 (P_Relation): Use P_Membership_Test
1980
1981 * par.adb (P_Membership_Test): New procedure (implement membership set
1982 tests).
1983
1984 * sinfo.ads, sinfo.adb (N_In, N_Not_In) Add Alternatives field for sets.
1985
1986 * sprint.adb (Sprint_Node): Handle set form for membership tests.
1987
c6f39437
AC
19882009-07-13 Thomas Quinot <quinot@adacore.com>
1989
1990 * exp_dist.adb (Add_RACW_Primitive_Declarations_And_Bodies):
1991 Do not attempt to generate stubs for predefined primitives of
1992 synchronized interfaces.
1993 (Add_Stub_Type): Factor some code from the PCS-specific variants of
1994 Build_Stub_Type.
1995
19962009-07-13 Ed Schonberg <schonberg@adacore.com>
1997
1998 * sem_disp.adb (Override_Dispatching_Operation): Functions inherit the
1999 Controlling_Result flag from the operation they override.
2000
d97a04d0
AC
20012009-07-13 Arnaud Charlet <charlet@adacore.com>
2002
2003 * gcc-interface/Make-lang.in: Update dependencies
2004
01957849
AC
20052009-07-13 Robert Dewar <dewar@adacore.com>
2006
2007 * gnat_ugn.texi: The gnatf switch no longer is needed to get full
2008 details on unsupported constructs.
2009
2010 * rtsfind.adb: Remove references to All_Errors_Mode, give errors
2011 unconditionally.
2012
2013 * s-trafor-default.adb: Correct some warnings
2014
2015 * s-valwch.adb, a-calend.adb, freeze.adb, prj.ads, s-vmexta.adb,
2016 sem.adb, sem_ch10.adb, sem_ch6.adb, sem_disp.adb, vxaddr2line.adb:
2017 Minor reformatting.
2018
2019 * par-ch4.adb (Conditional_Expression): Capture proper location for
2020 conditional expression, should point to IF.
2021
2022 * s-tassta.adb, a-wtdeau.adb, s-tasren.adb, s-arit64.adb, s-imgdec.adb,
2023 s-direio.adb, s-tpobop.adb, g-socket.adb, s-tposen.adb, s-taskin.adb,
2024 g-calend.adb, s-regpat.adb, s-scaval.adb, g-catiio.adb: Minor code
2025 reorganization (use conditional expressions).
2026
20272009-07-13 Ed Schonberg <schonberg@adacore.com>
2028
2029 * exp_util.adb (Remove_Side_Effects): If the expression is a call to a
2030 build-in-place function that returns an inherently limited type (not
2031 just a task type) create proper object declaration so that extra
2032 build-in-place actuals are properly added to the call.
2033
79afa047
AC
20342009-07-13 Robert Dewar <dewar@adacore.com>
2035
2036 * freeze.adb (Freeze_Entity): Implement Warn_On_Suspicious_Modulus_Value
2037
2038 * gnat_ugn.texi: Add documentation for -gnatw.m/.M
2039
2040 * opt.ads (Warn_On_Suspicious_Modulus_Value): New flag
2041
2042 * sem_warn.adb (Set_Dot_Warning_Flag): Set/reset
2043 Warn_On_Suspicious_Modulus_Value.
2044
2045 * ug_words: Add entries for -gnatw.m/-gnatw.M.
2046
2047 * usage.adb: Add lines for -gnatw.m/.M switches.
2048
2049 * vms_data.ads: Add [NO]SUSPICIOUS_MODULUS for -gnatw.m/w.M
2050
20512009-07-13 Javier Miranda <miranda@adacore.com>
2052
2053 * sem_ch6.adb (Check_Synchronized_Overriding): Add missing check before
2054 reading the Is_Interface attribute of the dispatching type.
2055
20562009-07-13 Robert Dewar <dewar@adacore.com>
2057
2058 * a-convec.adb: Minor code reorganization (use conditional expressions)
2059
67b3acf8
RD
20602009-07-13 Robert Dewar <dewar@adacore.com>
2061
2062 * freeze.adb (Check_Suspicious_Modulus): New procedure.
2063
cfb120b5
AC
20642009-07-13 Robert Dewar <dewar@adacore.com>
2065
2066 * i-cobol.ads: Minor code fix (2**4 instead of 16 as modulus to avoid
2067 warning).
2068
2069 * par-ch4.adb: Minor reformatting
2070
20712009-07-13 Ed Schonberg <schonberg@adacore.com>
2072
2073 * freeze.adb, freeze.ads, exp_aggr.adb: Rename Expand_Atomic_Aggregate
2074 => Is_Atomic_Aggregate
2075
fb2e11ee
AC
20762009-07-13 Emmanuel Briot <briot@adacore.com>
2077
2078 * prj-nmsc.adb: Avoid traversing the list of source files if
2079 we have already processed all locally removed files.
2080
20812009-07-13 Jose Ruiz <ruiz@adacore.com>
2082
2083 * gnat_ugn.texi: Fix typo.
2084
20852009-07-13 Robert Dewar <dewar@adacore.com>
2086
2087 * freeze.adb: Minor reformatting
2088 Minor code reorganization (use Nkind_In)
2089
01e17342 2090 * exp_ch6.adb, prj.adb, sem_res.adb: Minor reformatting
fb2e11ee 2091
f4cd2542
EB
20922009-07-11 Eric Botcazou <ebotcazou@adacore.com>
2093
2094 * checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output
2095 local variable and do not test it in Compile_Time_Bad_Alignment.
2096 Do not issue size or alignment warnings for the X'Address form.
2097 * sem_util.ads (Find_Overlaid_Object): Delete.
2098 (Find_Overlaid_Entity): New procedure.
2099 * sem_util.adb (Find_Overlaid_Object): Rename to...
2100 (Find_Overlaid_Entity): ...this and turn into a procedure. Report
2101 whether the address is offseted within the overlaid entity.
2102 (Has_Compatible_Alignment): Track the offset globally instead of
2103 passing it to Check_Offset. For an indexed component, compute the
2104 full offset when possible. If the resulting offset is zero, only
2105 check the prefix.
2106 (Check_Offset): Delete.
2107 * sem_ch13.adb (Address_Clause_Check_Record): Add Off field.
2108 (Address_Aliased_Entity): Delete.
2109 (Analyze_Attribute_Definition_Clause) <Attribute_Address>: Call
2110 Find_Overlaid_Entity to find the overlaid entity and the offset.
2111 Adjust throughout for above change.
2112 (Validate_Address_Clauses): Always use attributes of entities, not of
2113 their type. Tweak message for warning. Call Has_Compatible_Alignment
2114 if the address is offseted to warn about incompatible alignments.
2115 * gcc-interface/gigi.h (annotate_object): Declare.
2116 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Annotate renaming
2117 entity. Call annotate_object instead of annotating manually objects.
2118 (annotate_object): New function.
2119 * gcc-interface/trans.c (Subprogram_Body_to_gnu): Annotate parameters
2120 at the end.
2121
7635b357
EB
21222009-07-11 Eric Botcazou <ebotcazou@adacore.com>
2123
2124 * gcc-interface/ada-tree.h: Minor reorganization.
2125 * gcc-interface/misc.c (gnat_print_decl): Minor tweaks.
2126 (gnat_print_type): Likewise.
2127
b0159fbe
AC
21282009-07-11 Thomas Quinot <quinot@adacore.com>
2129
2130 * sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing:
2131 Lvalue -> lvalue
2132
2133 * exp_ch6.adb: Minor reformatting
2134
21352009-07-11 Ed Schonberg <schonberg@adacore.com>
2136
2137 * freeze.adb (Expand_Atomic_Aggregate): Clean up code, take into
2138 account possible type qualification to determine whether aggregate
2139 needs a target temporary to respect atomic type or object.
2140
2141 * exp_aggr.adb (Expand_Record_Aggregate): Use new version of
2142 Expand_Atomic_Aggregate.
2143
21442009-07-11 Emmanuel Briot <briot@adacore.com>
2145
2146 * prj.adb, prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Speed up
2147 algorithm.
2148 (Excluded_Sources_Htable): No longer a global table.
2149 Change error message to indicate which files are illegal in the list
2150 of excluded files, as opposed to only the location in the project
2151 file.
2152 (Find_Source): New subprogram.
2153
811c6a85
AC
21542009-07-10 Thomas Quinot <quinot@adacore.com>
2155
2156 * exp_ch7.adb: Update comments.
2157
21582009-07-10 Arnaud Charlet <charlet@adacore.com>
2159
2160 * exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod
2161 clause if -gnatI is set instead of crashing.
2162
21632009-07-10 Ed Schonberg <schonberg@adacore.com>
2164
2165 * sem_ch11.adb (Same_Expression): Null is always equal to itself.
2166 Additional work to remove redundant successive raise statements, in
2167 this case access checks.
2168
21692009-07-10 Vincent Celier <celier@adacore.com>
2170
2171 * make.adb (Compile): Always create a deep copy of the mapping file
2172 argument (-gnatem=...) as it may be deallocate/reallocate by
2173 Normalize_Arguments.
2174
21752009-07-10 Javier Miranda <miranda@adacore.com>
2176
2177 * einfo.adb (Directly_Designated_Type): Add assertion.
2178
2179 * sem_res.adb (Check_Fully_Declared_Prefix): Add missing check on
2180 access types before using attribute Directly_Designated_Type.
2181
21822009-07-10 Emmanuel Briot <briot@adacore.com>
2183
2184 * prj.ads: Minor typo fix
2185
21862009-07-10 Ed Schonberg <schonberg@adacore.com>
2187
2188 * sem_ch6.adb (Add_Extra_Formal): Protected operations do no need
2189 special treatment.
2190
2191 * exp_ch6.adb (Expand_Protected_Subprogram_Call): If rewritten
2192 subprogram is a function call, resolve properly, to ensure that extra
2193 actuals are added as needed.
2194
2be0bff8
TQ
21952009-07-10 Thomas Quinot <quinot@adacore.com>
2196
2197 * sem_aggr.adb: Minor comments editing
2198
2199 * exp_tss.adb, exp_ch3.adb: Minor reformatting
2200
ac7120ce
RD
22012009-07-10 Robert Dewar <dewar@adacore.com>
2202
2203 * exp_util.adb: Minor code reorganization (use N_Short_Circuit)
2204
2205 * exp_ch4.adb: Add ??? comment for conditional expressions on limited
2206 types.
2207
2208 * checks.adb (In_Declarative_Region_Of_Subprogram_Body): New procedure,
2209 replaces Safe_To_Capture_In_Parameter_Value, and properly handles the
2210 case of conditional expressions that may not be elaborated.
2211
2212 * sem_util.adb (Safe_To_Capture_Value): Properly handle case of
2213 conditional expression where we may not execute then then or else
2214 branches.
2215
514d0fc5
AC
22162009-07-10 Arnaud Charlet <charlet@adacore.com>
2217
2218 * i-cexten.ads (bool): New type.
2219
22202009-07-10 Robert Dewar <dewar@adacore.com>
2221
2222 * sinfo.ads (N_Short_Circuit): New definition
2223
2224 * sem_ch13.adb, sem_ch6.adb, sem_eval.adb, sem_res.adb,
2225 treepr.adb: Minor code reorganization (use N_Short_Circuit)
2226
7b4db06c
JM
22272009-07-10 Javier Miranda <miranda@adacore.com>
2228
2229 * exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of
2230 non-tagged record types.
2231
2232 * sem_prag.adb
2233 (Process_Import_Or_Interface): Allow the use of "pragma Import (CPP,..)"
2234 with non-tagged types. Required to import C++ classes that have no
2235 virtual primitives.
2236 (Analyze_Pragma): For pragma CPP_Constructor. Allow the use of functions
2237 returning non-tagged types. For backward compatibility, if the
2238 constructor returns a class wide type we internally change the
2239 returned type to the corresponding non class-wide type.
2240
2241 * sem_aggr.adb
2242 (Valid_Ancestor_Type): CPP_Constructors code cleanup.
2243 (Resolve_Extension_Aggregate): CPP_Constructors code cleanup.
2244 (Resolve_Aggr_Expr): CPP_Constructors code cleanup.
2245 (Resolve_Record_Aggregate): CPP_Constructors code cleanup.
2246
2247 * sem_ch3.adb
2248 (Analyze_Object_Declaration): CPP_Constructors code cleanup.
2249
2250 * sem_ch5.adb (Analyze_Assignment): CPP_Constructors code cleanup.
2251
2252 * sem_util.adb (Is_CPP_Constructor_Call): Code cleanup.
2253
2254 * sem_res.adb (Resolve_Allocator): CPP_Constructors code cleanup.
2255
2256 * exp_ch4.adb (Expand_Allocator_Expression): CPP_Constructors code
2257 cleanup.
2258
2259 * exp_aggr.adb (Build_Record_Aggr_Code): CPP_Constructors code clean up.
2260
2261 * gnat_rm.texi
2262 (pragma CPP_Class): Document that it can be used now with non-tagged
2263 record types.
2264 (pragma CPP_Constructor): Document that it can be used now with
2265 functions returning specific types. For backward compatibility
2266 we also support functions returning class-wide types.
2267
2268 * gnat_ugn.texi
2269 (Interfacing with C++ constructors): Update the examples to incorporate
2270 the new syntax in which the functions used to import C++ constructors
2271 return specific types.
2272 (Interfacing with C++ at the Class Level): Update the examples to
2273 incorporate the new syntax in which the functions used to import
2274 C++ constructors return specific types.
2275
f2abc637
AC
22762009-07-10 Thomas Quinot <quinot@adacore.com>
2277
2278 * exp_disp.adb (Make_Disp_Asynchronous_Select_Body,
2279 Make_Disp_Conditional_Select_Body,
2280 Make_Disp_Timed_Select_Body): For the case of a type that is neither an
2281 interface nor a concurrent type, the primitive body is empty. Generate
2282 a null statement so that it remains well formed.
2283
22842009-07-10 Ed Schonberg <schonberg@adacore.com>
2285
2286 * exp_aggr.adb (Build_Record_Aggr_Code): If the type has discriminants,
2287 replace references to them in defaulted component expressions with
2288 references to the values of the discriminants of the target object.
2289
b603e37b
AC
22902009-07-10 Ed Schonberg <schonberg@adacore.com>
2291
2292 * sem_prag.adb (Analyze pragma, case Task_Name): Analyze argument of
2293 pragma, to capture global references if the context is generic.
2294
2295 * exp_ch2.adb (Expand_Discriminant): If a task type discriminant
2296 appears within the initialization procedure for the corresponding
2297 record, replace it with the proper discriminal.
2298
22992009-07-10 Vincent Celier <celier@adacore.com>
2300
2301 * make.adb: Do not include object directories or library ALI
2302 directories of library projects in the object path.
2303
23042009-07-10 Javier Miranda <miranda@adacore.com>
2305
2306 * exp_util.adb (Find_Interface_Tag): Reorder processing of incoming
2307 Typ argument to ensure proper management of access types.
2308
23092009-07-10 Ed Schonberg <schonberg@adacore.com>
2310
2311 * exp_ch7.adb (Build_Final_List): If the list is being built for a
2312 Taft-Amendment type, place the finalization list in the package body,
2313 to ensure that the tree for the spec is identical whenever it is
2314 compiled.
2315
23162009-07-10 Javier Miranda <miranda@adacore.com>
2317
2318 * sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when
2319 inheriting attributes from a private Parent_Base.
2320
23212009-07-10 Ed Schonberg <schonberg@adacore.com>
2322
2323 * sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise
2324 statements with the same condition.
2325
23262009-07-10 Robert Dewar <dewar@adacore.com>
2327
2328 * exp_ch4.adb (Raise_Accessibility_Error): New procedure
2329
a80b0574
TT
23302009-07-09 Tom Tromey <tromey@redhat.com>
2331
2332 * raise-gcc.c: Include dwarf2h (unconditionally).
2333
24da37f2
AC
23342009-07-09 Ed Schonberg <schonberg@adacore.com>
2335
2336 * sem_ch10.adb (Install_Context): If the unit is a package body,
2337 install the private with_clauses of the corresponding package
2338 declaration.
2339
23402009-07-09 Robert Dewar <dewar@adacore.com>
2341
2342 * checks.adb: Minor reformatting
2343
23442009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
2345
2346 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
2347 into ug_words.
2348
23492009-07-09 Thomas Quinot <quinot@adacore.com>
2350
2351 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
2352 Do not warn for a constant overlaying any constant object
2353
23542009-07-09 Ed Schonberg <schonberg@adacore.com>
2355
2356 * sem_ch10.adb (Install_Context): If the unit is a package body,
2357 install the private with_clauses of the corresponding package
2358 declaration.
2359
23602009-07-09 Robert Dewar <dewar@adacore.com>
2361
2362 * checks.adb: Minor reformatting
2363
23642009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
2365
2366 * ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
2367 into ug_words.
2368
23692009-07-09 Thomas Quinot <quinot@adacore.com>
2370
2371 * sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
2372 Do not warn for a constant overlaying any constant object
2373
d97a04d0 23742009-07-09 Arnaud Charlet <charlet@adacore.com>
24da37f2
AC
2375
2376 * gcc-interface/Make-lang.in: Update dependencies
2377
7a5debc9
AC
23782009-07-09 Thomas Quinot <quinot@adacore.com>
2379
2380 * g-socket.adb (Check_Selector): Do not create local copies of the
2381 socket sets on the stack.
2382
23832009-07-09 Vasiliy Fofanov <fofanov@adacore.com>
2384
2385 * gnat_ugn.texi: Add missing VMS translations.
2386
3f92c93b
AC
23872009-07-09 Ed Schonberg <schonberg@adacore.com>
2388
2389 * sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the
2390 condition, to prevent generation of visible code during expansion,
2391 when Check is not enabled.
2392
23932009-07-09 Gary Dismukes <dismukes@adacore.com>
2394
2395 * checks.adb (Install_Static_Check): Call Possible_Local_Raise so that
2396 the check gets registered for any available local handler
2397 (Set_Local_Raise).
2398
2399 * sem_util.adb: Add with and use of Exp_Ch11.
2400 (Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so
2401 that the check gets registered for any available local handler.
2402
2403 * exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check
2404 on slice ranges.
2405
24062009-07-09 Steve Baird <baird@adacore.com>
2407
2408 * exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New
2409 function.
2410 (Expand_N_Exception_Declaration): Fix handling of exceptions
2411 declared in a subprogram.
2412
f6cf5b85
AC
24132009-07-09 Emmanuel Briot <briot@adacore.com>
2414
2415 * prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
2416 multi-unit files.
2417
24182009-07-09 Thomas Quinot <quinot@adacore.com>
2419
2420 * freeze.adb: Minor reformatting
2421
2422 * exp_ch3.adb: Minor comment fix.
2423
2424 * sinfo.ads: Minor comment fix
2425
24262009-07-09 Ed Schonberg <schonberg@adacore.com>
2427
2428 * exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.
2429
7aedb36a
AC
24302009-07-09 Ed Schonberg <schonberg@adacore.com>
2431
2432 * freeze.adb (Freeze_Expression): If the expression is the name of a
2433 function in a call, and the function has not been frozen yet, create
2434 extra formals for it to ensure that the proper actuals are created
2435 when expanding the call.
2436
24372009-07-09 Emmanuel Briot <briot@adacore.com>
2438
2439 * prj-pp.adb (Print): Fix handling of source index when set on a
2440 declaration node.
2441
a4941eec
ES
24422009-07-09 Ed Schonberg <schonberg@adacore.com>
2443
2444 * einfo.ads, einfo.adb: New attribute Related_Expression, used to link
2445 a temporary to the source expression whose value it captures.
2446
2447 * exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed.
2448
5e278028
MLI
24492009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
2450
a729ce28 2451 * gcc-interface/trans.c (gnat_gimplify_expr): Replace EXPR_LOCUS by
5e278028
MLI
2452 EXPR_LOCATION.
2453
c2369146
AC
24542009-07-07 Gary Dismukes <dismukes@adacore.com>
2455
2456 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out
2457 parameters when the subtype of the actual is not known to be a subrange
2458 of the formal's subtype.
2459 (Expand_Call): Generate a range check only in the E_In_parameter case
2460 (in out parameter range checks are now handled in Expand_Actuals).
2461
2462 * exp_ch4.adb (Expand_N_Slice): Restore code that calls
2463 Enable_Range_Check.
2464
24652009-07-07 Robert Dewar <dewar@adacore.com>
2466
2467 * a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments
2468
24692009-07-07 Javier Miranda <miranda@adacore.com>
2470
2471 * exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
2472 designated type comes from a limited views.
2473
24742009-07-07 Emmanuel Briot <briot@adacore.com>
2475
2476 * prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of
2477 locally removed files that are later made visible again in an importing
2478 project.
2479
24802009-07-07 Robert Dewar <dewar@adacore.com>
2481
2482 * gnat_rm.texi: Clarify documentation of Stream_Convert pragma
2483
24842009-07-07 Sergey Rybin <rybin@adacore.com>
2485
2486 * gnat_ugn.texi: Add an example to the description of gnatcheck
2487 'Style_Checks' rule option.
2488
24892009-07-07 Tristan Gingold <gingold@adacore.com>
2490
2491 * seh_init.c: Fix inline assembly statement in seh_init.c
2492
24932009-07-07 Ed Schonberg <schonberg@adacore.com>
2494
2495 * sem_warn.adb (Check_References): Do not emit warnings on formals of
2496 an entry body. Only the formals of the entry declaration are traced.
2497
75a5a487
RD
24982009-07-07 Robert Dewar <dewar@adacore.com>
2499
a729ce28 2500 * s-osprim-mingw.adb: Minor code reorganization
75a5a487 2501
85686ad9
AC
25022009-07-07 Robert Dewar <dewar@adacore.com>
2503
2504 * prj-nmsc.adb: Minor reformatting
2505
25062009-07-07 Pascal Obry <obry@adacore.com>
2507
2508 * a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
2509 cases where Pattern is longer than Source.
2510
25112009-07-07 Pascal Obry <obry@adacore.com>
2512
2513 * s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.
2514
54ecb428
AC
25152009-07-07 Emmanuel Briot <briot@adacore.com>
2516
2517 * prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
2518 project file.
2519
25202009-07-07 Ed Schonberg <schonberg@adacore.com>
2521
2522 * exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to
2523 primitive operations, in case one of them is called in the
2524 initialization procedure for the type.
2525
84157c9a
RD
25262009-07-07 Robert Dewar <dewar@adacore.com>
2527
2528 * a-calend.adb: Minor code reorganization (use conditional expressions)
2529
2530 * s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads,
2531 prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb,
2532 s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb,
2533 s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb,
2534 s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads,
2535 g-comlin.adb, exp_ch11.adb: Minor reformatting.
2536
d79e621a
GD
25372009-07-07 Gary Dismukes <dismukes@adacore.com>
2538
2539 * checks.adb (Generate_Range_Check): Replace type conversions with
2540 unchecked conversions to support the case of performing range checks
2541 on Enum'Val (permits integer values to be converted to enumeration).
2542
2543 * exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred,
2544 Attribute_Succ): Set Do_Range_Check to False before calling
2545 Expand_Pred_Succ, to prevent gigi from generating any range checks.
2546 (Expand_N_Attribute_Reference, case Attribute_Val):
2547 Generate a range check when needed (and set Do_Range_Check to False).
2548
2549 * exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on
2550 scalar object initialization if needed.
2551
2552 * exp_ch4.adb (Expand_Allocator_Expression): Generate range checks
2553 when needed on scalar allocators.
2554 (Expand_N_Qualified_Expression): Generate range check when needed.
2555 (Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges.
2556 Checks on slice ranges handled in Resolve_Slice.
2557
2558 * exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check,
2559 when needed, for all scalar assignments, not just discrete.
2560 (Expand_Simple_Function_Return): Resolve the conversion created for a
2561 scalar function return so that the conversion will get expanded to
2562 generate a possible constraint check.
2563
2564 * exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and
2565 in out scalar actuals when subtypes don't match, to ensure generation
2566 of return checks (and set Do_Range_Check to False).
2567 (Expand_Call): Uncomment code to perform range checks, but make it apply
2568 only to in and in out parameters (checks on parameter returns are
2569 handled in Expand_Actuals). If a scalar actual for a call to a derived
2570 subprogram is marked as needing a range check, peform it here (and set
2571 Do_Range_Check to False).
2572
2573 * sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a
2574 range check on scalar component associations when needed.
2575
2576 * sem_eval.adb (In_Subrange_Of): Return False when the first type has
2577 infinities but the second type does not, as these aren't compatible
2578 floating-point types.
2579
2580 * sem_res.adb (Resolve_Slice): In the case where the prefix of the
2581 slice is itself a slice, pick up the Etype of the prefix. This handles
2582 the case where the prefix was an Image attribute expanded to a slice,
2583 and ensures that we get the subtype with the slice constraint rather
2584 than the unconstrained subbtype of the 'Image.
2585
e0ba1bfd
ES
25862009-07-07 Ed Schonberg <schonberg@adacore.com>
2587
2588 * sem_ch4.adb (Analyze_Conditional_Expression): handle properly
2589 overloaded expressions in a conditional expressions.
2590
2591 * sem_res.adb (Resolve): Handle properly overloaded conditional
2592 expressions.
2593
b46be8a2
RD
25942009-07-07 Robert Dewar <dewar@adacore.com>
2595
2596 * scng.adb: Minor reformattting
2597
2598 * par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument
2599 association allows conditional expression without parens.
2600
2601 * par-ch4.adb (P_Name): Attribute arguments can be conditional
2602 expressions without enclosing parentheses, and also as parameters,
2603 indexing expressions etc.
2604 (P_Conditional_Expression): New procedure
2605 (P_Expression_If_OK): New procedure
2606
2607 * par.adb (P_Conditional_Expression): New procedure
2608 (P_Expression_If_OK): New procedure
2609
2610 * sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument
2611 form of conditional expression.
2612
2613 * sem_res.adb (Resolve_Conditional_Expression): Deal with supplying
2614 missing True argument if ELSE argument missing.
2615
2616 * sinfo.adb (Is_Elsif): New flag
2617
2618 * sinfo.ads (N_Conditional_Expression): This node is now a syntactic
2619 part of the language, and the documentation is modified accordingly.
2620 (Is_Elsif): New flag
2621
4fd263a6
OH
26222009-07-06 Olivier Hainque <hainque@adacore.com>
2623
2624 * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu,
2625 setjmp_longjmp): Attach the exception propagation reraise fallback
2626 to the sequence end label location when we have it.
2627
d5b7dccd
FXC
26282009-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
2629
2630 PR ada/40608
2631 * init.c (APPLE): Include <mach/mach_init.h>.
27778058 2632 (__gnat_error_handler, APPLE): Add ATTRIBUTE_UNUSED marker.
d5b7dccd 2633
9ce8e057
EB
26342009-07-04 Eric Botcazou <ebotcazou@adacore.com>
2635
2636 * ada-tree.h (SET_TYPE_LANG_SPECIFIC): Rewrite.
2637 (SET_DECL_LANG_SPECIFIC): Likewise.
2638 (TYPE_RM_VALUE): New macro.
2639 (SET_TYPE_RM_VALUE): Likewise.
2640 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUE.
2641 (TYPE_RM_MIN_VALUE): Likewise.
2642 (TYPE_RM_MAX_VALUE): Likewise.
2643 (SET_TYPE_RM_SIZE): Rewrite in terms of SET_TYPE_RM_VALUE.
2644 (SET_TYPE_RM_MIN_VALUE): Likewise.
2645 (SET_TYPE_RM_MAX_VALUE): Likewise.
2646 * decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Remove kludge.
2647
d8bf0ab8
LG
26482009-07-04 Laurent GUERBY <laurent@guerby.net>
2649
2650 PR ada/40631
2651 * tracebak.c (__gnat_backtrace): Fix old-style definition.
27778058 2652
74c9e852
RO
26532009-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2654
2655 * tracebak.c [i386 && sun] (IS_BAD_PTR): Use -1UL in comparison.
2656
882e35a6
JDA
26572009-07-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2658
2659 PR ada/40609
bf92f919
EB
2660 * init.c (__gnat_error_handler, HP-UX): Add ATTRIBUTE_UNUSED marker to
2661 ucontext argument.
882e35a6 2662
c29fe0c8
EB
26632009-07-01 Eric Botcazou <ebotcazou@adacore.com>
2664
2665 * init.c (__gnat_error_handler, Solaris): Add ATTRIBUTE_UNUSED marker.
2666
342f368c
EB
26672009-06-30 Eric Botcazou <ebotcazou@adacore.com>
2668
2669 * gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Do not use
2670 the type of the left operand if it pads a self-referential type when
2671 the right operand is a constructor.
2672
2673 * gcc-interface/lang-specs.h: Fix copyright date.
2674
f82a627c
EB
26752009-06-30 Eric Botcazou <ebotcazou@adacore.com>
2676
2677 * gcc-interface/decl.c: Include tree-inline.h.
2678 (annotate_value) <CALL_EXPR>: Try to inline the call in the expression.
2679 * gcc-interface/utils.c (max_size) <CALL_EXPR>: Likewise.
2680 * gcc-interface/utils2.c: Include tree-inline.
2681 (known_alignment) <CALL_EXPR>: Likewise.
2682
a2350322
EB
26832009-06-30 Eric Botcazou <ebotcazou@adacore.com>
2684
b6a1a144 2685 * raise-gcc.c: Include dwarf2.h conditionally.
a2350322 2686
bbf531f0
TT
26872009-06-29 Tom Tromey <tromey@redhat.com>
2688
2689 * raise-gcc.c: Include elf/dwarf2.h.
2690
6ccbcf32
LG
26912009-06-27 Laurent GUERBY <laurent@guerby.net>
2692
2693 * tb-gcc.c (trace_callback): Add casts to silence warning.
2694
463d9ac4
EB
26952009-06-27 Eric Botcazou <ebotcazou@adacore.com>
2696
2697 * tb-gcc.c: Fix copyright notice.
2698
c6bd4220
EB
26992009-06-27 Eric Botcazou <ebotcazou@adacore.com>
2700
2701 * init.c (__gnat_set_globals): Add prototype.
2702 * adaint.c (__gnat_binder_supports_auto_init): Likewise.
2703 (__gnat_sals_init_using_constructors): Likewise.
2704 * gcc-interface/utils.c (gnat_pushlevel): Likewise.
2705 (get_block_jmpbuf_decl): Likewise.
2706 (gnat_poplevel): Likewise.
2707 (merge_sizes): Rename local variable.
2708 (copy_type): Likewise.
2709 (build_vms_descriptor32): Likewise.
2710 (build_vms_descriptor): Likewise.
2711 (convert_vms_descriptor64): Likewise.
2712 (convert_vms_descriptor32): Likewise.
2713 (convert_to_fat_pointer): Likewise.
2714 (maybe_unconstrained_array): Likewise.
2715 (def_fn_type): Use promoted type with va_arg.
2716 * gcc-interface/decl.c (gnat_to_gnu_entity): Add declaration.
2717 (substitute_in_type): Rename local variable.
2718 * gcc-interface/Make-lang.in (ada-warn): Use STRICT_WARN.
2719
6bf68a93
LG
27202009-06-26 Laurent GUERBY <laurent@guerby.net>
2721
2722 * tb-gcc.c (trace_callback): Use char* instead of void*.
91dc2352
EB
2723 * gcc-interface/misc.c (enumerate_modes): Make loop C++ compatible.
2724 * gcc-interface/trans.c (parm_attr): Rename to parm_attr_d.
2725 (Attribute_to_gnu): Adjust for above change.
2726 (Subprogram_Body_to_gnu): Likewise.
2727 * gcc-interface/utils.c (merge_sizes): Rename local variable.
2728 (copy_type): Likewise.
2729 (build_vms_descriptor32): Likewise.
2730 (build_vms_descriptor): Likewise.
2731 (convert_vms_descriptor64): Likewise.
2732 (convert_vms_descriptor32): Likewise.
2733 (convert_to_fat_pointer): Likewise.
2734 (maybe_unconstrained_array): Likewise.
2735 * gcc-interface/decl.c (substitute_in_type): Likewise.
2736
f45f9664
EB
27372009-06-26 Eric Botcazou <ebotcazou@adacore.com>
2738
2739 * gcc-interface/decl.c (cannot_be_superflat_p): New predicate.
2740 (gnat_to_gnu_entity) <E_Array_Subtype>: Use it to build the expression
2741 of the upper bound of the index types.
2742
c0e1e108
EB
27432009-06-26 Eric Botcazou <ebotcazou@adacore.com>
2744
2745 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Factor
2746 out common predicate. Use the maximum to compute the upper bound of
2747 the index type only when it is not wider than sizetype. Perform the
2748 comparison in the index type for the generic expression. Use real
2749 precision to decide whether to generate special types for debugging
2750 information.
2751
ffa5876f
AC
27522009-06-26 Matthew Gingell <gingell@adacore.com>
2753
2754 * adaint.c: Do not use the dummy version of convert_addresses on LynxOS
2755
27562009-06-26 Vincent Celier <celier@adacore.com>
2757
2758 * prj.ads (No_Language_Config): Value of Dependency_Kind is None by
2759 default.
2760
27612009-06-26 Robert Dewar <dewar@adacore.com>
2762
2763 * exp_ch4.adb, gnatcmd.adb, make.adb: Minor reformatting
2764
4e6602a8
EB
27652009-06-26 Eric Botcazou <ebotcazou@adacore.com>
2766
2767 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Pass
2768 correct arguments to create_field_decl. Remove redundant iteration.
2769 Rewrite computation of the maximum size.
2770 <E_Array_Subtype>: Reorder and simplify handling of special cases.
2771 Rewrite computation of the maximum size. Use consistent naming.
2772 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Length>: Swap
2773 comparison order for consistency. Use generic integer node to
2774 build the operator and fold the result.
2775
2a31c32b
AC
27762009-06-25 Vincent Celier <celier@adacore.com>
2777
2778 * vms_data.ads: Minor comment change
2779
27802009-06-25 Gary Dismukes <dismukes@adacore.com>
2781
2782 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Don't build an
2783 assignment statement to targeting a caller-provided object when the
2784 result type is an interface type.
2785
2786 * exp_ch6.adb (Expand_Call): Remove redundant test of
2787 Is_Limited_Interface (Is_Inherently_Limited is sufficient).
2788 (Is_Build_In_Place_Function): Remove test for Is_Limited_Interface.
2789
2790 * sem_aggr.adb (Check_Expr_OK_In_Limited_Aggregate): Add type in call
2791 to OK_For_Limited_Init.
2792
2793 * sem_aux.adb (Is_Inherently_Limited_Type): Revise limited type
2794 condition so that True is returned for all limited interfaces, not
2795 just synchronized ones. Ignore components of an interface type when
2796 checking for limited components (such a component can be a parent
2797 component).
2798
2799 * sem_ch3.ads (OK_For_Limited_Init_In_05): Add type parameter.
2800 (OK_For_Limited_Init): Add type parameter.
2801
2802 * sem_ch3.adb (Check_Initialization): Add type in call to
2803 OK_For_Limited_Init.
2804 (OK_For_Limited_Init): Add new type param in call to
2805 OK_For_Limited_Init_In_05.
2806 (OK_For_Limited_Init_In_05): Permit arbitrary expressions of a
2807 nonlimited type when the context type is a limited interface. Add type
2808 on recursive calls.
2809
2810 * sem_ch4.adb (Analyze_Allocator): Add type in call to
2811 OK_For_Limited_Init.
2812
2813 * sem_ch6.adb (Check_Limited_Return): Add type in call to
2814 OK_For_Limited_Init.
2815
2816 * sem_ch12.adb (Analyze_Formal_Object_Declaration): Add type in call to
2817 OK_For_Limited_Init.
2818 (Instantiate_Object): Add type in call to OK_For_Limited_Init.
2819
2820 * sem_type.adb (Interface_Present_In_Ancestor): In the case of a
2821 class-wide interface, get the base type before applying Etype, in order
2822 to account for class-wide subtypes.
2823
fadcf313
AC
28242009-06-25 Emmanuel Briot <briot@adacore.com>
2825
2826 * gnatcmd.adb, prj-proc.adb, make.adb, prj.adb, prj.ads, prj-nmsc.adb,
2827 prj-util.adb, prj-env.adb, prj-env.ads: Merge handling of naming_data
2828 between gnatmake and gprbuild.
2829 (Naming_Data): Removed, no longer used
2830 (Naming_Table, Project_Tree_Ref.Namings): Removed, since this is only
2831 needed locally in one subprogram, no need to store forever in the
2832 structure.
2833 (Check_Naming_Scheme, Check_Package_Naming): Merged, since they play
2834 a similar role.
2835 (Body_Suffix_Of, Body_Suffix_Id_Of, Register_Default_Naming_Scheme,
2836 Same_Naming_Scheme, Set_Body_Suffix, Set_Spec_Suffix, Spec_Suffix_Of,
2837 Spec_Suffix_Id_Of): removed, no longer used.
2838
28392009-06-25 Javier Miranda <miranda@adacore.com>
2840
2841 * sem_res.adb (Resolve_Allocator): Skip test requiring exact match of
2842 types on qualified expression in calls to imported C++ constructors.
2843
2844 * exp_ch4.adb (Expand_Allocator_Expression): Add missing support for
2845 imported C++ constructors.
2846
28472009-06-25 Sergey Rybin <rybin@adacore.com>
2848
2849 * vms_data.ads: Add qualifier for new gnatcheck '-t' option.
2850
5b900a45
AC
28512009-06-25 Vincent Celier <celier@adacore.com>
2852
2853 * s-os_lib.adb (Normalize_Pathname.Get_Directory): If directory
2854 provided, on Windows change all '/' to '\'.
2855
2856 * fmap.ads, fmap.adb (Remove_Forbidden_File_Name): Remove, no longer
2857 used. Minor comment changes
2858
2859 * prj-nmsc.adb: Do not call Fmap.Add_Forbidden_File_Name or
2860 Remove_Forbidden_File_Name.
2861
28622009-06-25 Quentin Ochem <ochem@adacore.com>
2863
2864 * prj.ads (Unit_Index): Now general access type.
fadcf313 2865
a2b62f99
PO
28662009-06-25 Pascal Obry <obry@adacore.com>
2867
2868 * a-stwise.adb, a-stzsea.adb: Fix confusion between 'Length and 'Last.
2869
1d24fc5e
EB
28702009-06-25 Emmanuel Briot <briot@adacore.com>
2871
2872 * fmap.ads, make.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb,
2873 prj-env.ads (Source_Data.Get_Object): Field removed, since it can be
2874 computed efficiently from the other fields.
2875 (Object_To_Global_Archive): New subprogram
2876 (Create_Mapping): Remove unneeded call to Remove_Forbidden_File_Name.
2877 (Override_Kind): Fix handling of separates in Ada.
2878 (Create_Mapping_File): Remove duplicate code
2879 (Naming_Data.Implementation_Exception, Specification_Exception):
2880 field removed, since never used.
2881 (Naming_Data.Specs, .Bodies): field removed, since this is only
2882 used while processing the project and is not needed once the tree
2883 is in memory. This brings Naming_Data and Lang_Naming_Data
2884 closer (same content now, but different use still).
2885
8f2eeab7
PO
28862009-06-25 Pascal Obry <obry@adacore.com>
2887
2888 * sem_ch4.adb: Minor reformatting.
2889
2890 * a-strsea.adb: Fix confusion between 'Length and 'Last.
2891
bea993f9
AC
28922009-06-25 Ed Schonberg <schonberg@adacore.com>
2893
2894 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Access and
2895 Unchecked_Access): If the context is an interface type, and the prefix
2896 is of the corresponding class-wide type, do not insert a conversion
2897 because the pointer displacement has already taken place, and we must
2898 retain the class-wide type in a dispatching context.
2899
29002009-06-25 Emmanuel Briot <briot@adacore.com>
2901
2902 * prj-nmsc.adb, prj-env.adb (Override_Kind): Unset the unit field of
2903 the previous source file.
2904 (Create_Mapping): Iterate on sources rather than on units.
2905
cabadd1c
AC
29062009-06-25 Emmanuel Briot <briot@adacore.com>
2907
2908 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb,
2909 prj-env.adb, prj-env.ads (Slash): removed, no longer used
2910 (Source_Data): no longer use Path.Name to point to a locally removed
2911 file. Instead we use the field Locally_Removed which is clearer
2912
29132009-06-25 Arnaud Charlet <charlet@adacore.com>
2914
2915 * gcc-interface/Make-lang.in: Remove references to sem_maps.o
2916
2917 * sem_maps.adb, sem_maps.ads: Removed, not used.
2918
9763f8c8
AC
29192009-06-25 Ed Falis <falis@adacore.com>
2920
2921 * s-vxwext-rtp.ads: Add missing declaration
2922
29232009-06-25 Matthew Gingell <gingell@adacore.com>
2924
2925 * a-stwise.adb, a-stzsea.adb (Count, Index): Avoid local copy on stack,
2926 speed up unmapped case.
2927
29282009-06-25 Vincent Celier <celier@adacore.com>
2929
2930 * prj-nmsc.adb (Check): Change error message for illegal abstract
2931 projects.
2932
29332009-06-25 Robert Dewar <dewar@adacore.com>
2934
2935 * gnat_ugn.texi: Add note on use of -gnatct for ASIS
2936
29372009-06-25 Emmanuel Briot <briot@adacore.com>
2938
2939 * fmap.ads: Add documentation on mapping files
2940
d6533e74
RD
29412009-06-25 Robert Dewar <dewar@adacore.com>
2942
2943 * exp_ch6.adb, g-socket.ads, g-socket.adb, sem_ch3.adb: Minor
2944 reformatting
2945
e1f3cb58
AC
29462009-06-24 Robert Dewar <dewar@adacore.com>
2947
2948 * prj-nmsc.adb, prj-nmsc.ads, prj-proc.adb, prj.adb: Minor reformatting
2949
2950 * a-strsea.adb (Count): Avoid local copy on stack, speed up unmapped
2951 case.
2952 (Index): Ditto.
2953
29542009-06-24 Ed Schonberg <schonberg@adacore.com>
2955
2956 * sem_ch4.adb (Analyze_One_Call): Check that at least one actual is
2957 present when checking whether a call may be interpreted as an indexing
2958 of the result of a call.
2959
2960 * exp_ch9.adb (Expand_N_Subprogram_Declaration): Place the generated
2961 body for a null procedure on the freeze actions for the procedure, so
2962 that it will be analyzed at the proper place without premature freezing
2963 of actuals.
2964
2965 * sem_ch3.adb (Check_Completion): Code cleanup.
2966 Do not diagnose a null procedure without a body, if previous errors
2967 have disabled expansion.
2968
29692009-06-24 Doug Rupp <rupp@adacore.com>
2970
2971 * init.c [VMS] Resignal C$_SIGKILL
2972
29732009-06-24 Ed Falis <falis@adacore.com>
2974
2975 * s-vxwext.adb, s-vxwext-kernel.adb: Add s-vxwext body for VxWorks 5
2976 Define ERROR in body for VxWorks 6 kernel
2977
29782009-06-24 Pascal Obry <obry@adacore.com>
2979
2980 * g-socket.adb, g-socket.ads: Fix possible unexpected constraint error
2981 in [Send/Receive]_Socket.
2982
c9287857
EB
29832009-06-24 Emmanuel Briot <briot@adacore.com>
2984
2985 * prj-proc.adb, prj-proc.ads, prj.ads, prj-nmsc.adb, prj-nmsc.ads,
2986 prj-conf.adb, prj-conf.ads (Allow_Duplicate_Basenames): New parameter
2987 to several subprograms.
2988 (Source_Data.Other_Part): Removed, since can be computed from the
2989 language.
2990 (Other_Part): New subprogram.
2991
2b426674
EB
29922009-06-24 Emmanuel Briot <briot@adacore.com>
2993
2994 * gnat_ugn.texi, prj-nmsc.adb (Suffix_Matches): A suffix can also match
2995 the full base name of the file when the suffix doesn't start with a '.'.
2996
95cd3246
AC
29972009-06-24 Vincent Celier <celier@adacore.com>
2998
2999 * prj-nmsc.adb (Check): A project declared abstract is legal if no
3000 attribute Source_Dirs, Source_Files, Source_List_File or Languages is
3001 declared.
3002
30032009-06-24 Robert Dewar <dewar@adacore.com>
3004
3005 * clean.adb, gnatcmd.adb, make.adb, mlib-prj.adb,
3006 prj-env.adb: Minor reformatting
3007
30082009-06-24 Ed Falis <falis@adacore.com>
3009
3010 * s-taprop-vxworks.adb, s-osinte-vxworks.ads, s-vxwext.ads,
3011 s-vxwext-kernel.adb, s-vxwext-kernel.ads, s-vxwext-rtp.adb,
3012 s-tasinf-vxworks.ads, gcc-interface/Makefile.in: Add processor affinity
3013 support for VxWorks SMP.
3014
3015 * gcc-interface/Make-lang.in: Update dependencies
3016
5a66a766
EB
30172009-06-24 Emmanuel Briot <briot@adacore.com>
3018
3019 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
3020 prj-nmsc.adb, prj-env.adb, prj-proc.adb (Units_Table): Removed, since
3021 no longer useful.
3022 (Source_Data.Lang_Kind): Removed, since it duplicates information
3023 already available through Language.Config.
3024 (Source_Data.Compile): Removed, since information is already available
3025 through the language.
3026 (Is_Compilable): New subprogram.
3027 (Source_Data.Dependency): Removed, since already available through
3028 the language.
3029 (Source_Data.Object_Exist, Object_Linked): Removed since available
3030 through the language already.
3031 (Unit_Data.File_Names): Is now also set in multi_language mode, to
3032 bring the two modes closer in the resulting data structures.
3033 (Source_Data.Unit): Now a direct pointer to the unit data, rather than
3034 just the name that would point into a hash table.
3035 (Get_Language_From_Name): New subprogram.
3036
852dba80
AC
30372009-06-24 Javier Miranda <miranda@adacore.com>
3038
3039 * exp_ch4.adb (Expand_N_Type_Conversion): Handle entities that are
3040 visible through limited-with context clauses. In addition, avoid an
3041 extra tag check that is not required when the class-wide
3042 designated types of the operand and target types are
3043 the same entity.
3044 (Tagged_Membership): Handle entities from the limited view.
3045
30462009-06-24 Emmanuel Briot <briot@adacore.com>
3047
3048 * gnatcmd.adb, make.adb, mlib-prj.adb, prj.ads, clean.adb,
3049 prj-nmsc.adb, prj-env.adb (File_Name_Data): removed
3050 (Spec_Or_Body): now a subtype of Source_Kind, to avoid using two
3051 different vocabularies for similar concepts (Impl/Body_Part and
3052 Spec/Specification).
3053 (Unit_Data): now points directly to a Source_Id, rather than duplicating
3054 some of the information in File_Name_Data. This also saves a bit of
3055 memory. However, since we are now using a pointer we need to test
3056 for null explicitly in several places of the code
3057
950d217a
AC
30582009-06-24 Javier Miranda <miranda@adacore.com>
3059
3060 * exp_ch4.adb (Expand_N_Type_Conversion): return immediately
3061 from processing the type conversion when the node is
3062 replaced by an N_Raise_Program_Error node.
3063
30642009-06-24 Hristian Kirtchev <kirtchev@adacore.com>
3065
3066 * sem_ch6.adb (Designates_From_With_Type): New routine.
3067 (Process_Formals): Since anonymous access types are no longer flagged
3068 as from with types, traverse the designated type to determine whether
3069 it is coming from a limited view.
3070
3071 * sem_res.adb: Remove with and use clauses for Sem_Ch10.
3072 (Full_Designated_Type): Use Available_View to extract the non-limited /
3073 full view of a type.
3074
dd3e1ff5
AC
30752009-06-24 Robert Dewar <dewar@adacore.com>
3076
3077 * exp_ch6.adb: Minor reformatting
3078
3079 * layout.adb: Minor reformatting
3080
3081 * make.adb: Minor reformatting
3082
30832009-06-24 Thomas Quinot <quinot@adacore.com>
3084
3085 * sem_ch10.adb: Minor code reorganization.
3086
0386aad1
AC
30872009-06-24 Eric Botcazou <ebotcazou@adacore.com>
3088
3089 * ttypes.ads: Minor editing.
3090
30912009-06-24 Robert Dewar <dewar@adacore.com>
3092
3093 * exp_ch6.adb (Expand_Actuals): Use Is_Volatile, not Treat_As_Volatile
3094 in deciding to do call-by-copy code.
3095
30962009-06-24 Vincent Celier <celier@adacore.com>
3097
3098 * make.adb (Gnatmake): To decide if an executable should be rebuilt,
3099 check if an externally built library file is more current than the
3100 executable.
3101
2724e58f
OH
31022009-06-23 Olivier Hainque <hainque@adacore.com>
3103
3104 * gcc-interface/utils.c (handle_vector_size_attribute): Import from
3105 c-common.c and populate in gnat_internal_attribute_table.
3106
14e33999
AC
31072009-06-23 Ed Schonberg <schonberg@adacore.com>
3108
3109 * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
3110 Available_View only when designated type of an anonymous access type
3111 is limited view.
3112
31132009-06-23 Robert Dewar <dewar@adacore.com>
3114
3115 * sem_ch10.adb: Minor reformatting
3116
792569a9
RD
3117 * ali.ads: Mino reformatting.
3118
14e33999
AC
3119 * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
3120 turning off inlining if ASIS mode active).
3121
3122 * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
3123 This belongs in gnat1drv.adb after switches are scanned.
3124
c0985d4e
HK
31252009-06-23 Hristian Kirtchev <kirtchev@adacore.com>
3126
3127 * sem_attr.adb: Add with and use clauses for Sem_Ch10.
3128 (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
3129 when dealing with class-wide types. Detect a legal shadow entity and
3130 retrieve its non-limited view.
3131
3132 * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
3133 subprogram to top package level from Intall_Limited_Withed_Unit.
3134 (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
3135 Add check which prevents the installation of a limited view if the
3136 non-limited view is already visible through a with clause.
3137 (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
3138 legal shadow entity which may occur in subprogram formals of anonymous
3139 access type.
3140
3141 * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
3142
3143 * sem_ch3.adb (Access_Definition): Remove the propagation of flag
3144 From_With_Type from the designated type to the generated anonymous
3145 access type. Remove associated comment.
3146
3147 * sem_res.adb Add with and use clauses for Sem_Ch10.
3148 (Full_Designated_Type): Detect a legal shadow entity and retrieve its
3149 non-limited view. Since the shadow entity may replace a regular
3150 incomplete type, return the available full view.
3151
0d354370
AC
31522009-06-23 Ed Schonberg <schonberg@adacore.com>
3153
3154 * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
3155 incomplete type declarations. Previous code was potentially quadratic
3156 in the number of visible declarations in any package appearing in a
3157 limited_with_clause.
3158
31592009-06-23 Robert Dewar <dewar@adacore.com>
3160
3161 * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
3162 xref_lib.adb: Minor reformatting
3163
85b7d482
RD
31642009-06-23 Robert Dewar <dewar@adacore.com>
3165
3166 * a-stzhas.adb: Provide dummy body to avoid build problems with old
3167 versions which did have a body for this unit.
3168
efc81a89
AC
31692009-06-23 Vincent Celier <celier@adacore.com>
3170
3171 * prj-attr.adb: Attribute names Initial_Required_Switches and
3172 Final_Required_Switches changed to Leading_Required_Switches and
3173 Trailing_Required_Switches.
3174
3175 * prj-nmsc.adb (Process_Compiler): Attribute names
3176 Initial_Required_Switches and Final_Required_Switches changed to
3177 Leading_Required_Switches and Trailing_Required_Switches.
3178
3179 * prj.ads (Language_Config): Component Initial_Required_Switches and
3180 Final_Required_Switches changed to Leading_Required_Switches and
3181 Trailing_Required_Switches.
3182
3183 * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
3184 Final_Required_Switches; add standard names Leading_Required_Switches
3185 and Trailing_Required_Switches.
3186
31872009-06-23 Thomas Quinot <quinot@adacore.com>
3188
3189 * prj-conf.adb: Minor reformatting
3190
3191 * xref_lib.adb: Minor cleanup
3192
1290ef14
AC
31932009-06-23 Emmanuel Briot <briot@adacore.com>
3194
3195 * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
3196 prj-conf.ads (Check_Configuration): New parameter
3197 Compiler_Driver_Mandatory.
3198
31992009-06-23 Ed Schonberg <schonberg@adacore.com>
3200
3201 * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
3202 context of the current unit has an inline pragma, the instance is not
3203 rewritten as the declaration of the package wrapper. Handle both
3204 possibilities when retrieving the visible subprogram that renames the
3205 instantiation itself.
3206
d6a24cdb
AC
32072009-06-23 Javier Miranda <miranda@adacore.com>
3208
3209 * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
3210 designated types referencing entities from the limited view.
3211
f91c36dc
AC
32122009-06-23 Robert Dewar <dewar@adacore.com>
3213
3214 * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
3215
3216 * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
3217 small values
3218
3219 * prj-conf.ads: Minor reformatting
3220
3221 * prj-conf.adb: Minor reformatting
3222
32232009-06-23 Vasiliy Fofanov <fofanov@adacore.com>
3224
3225 * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
3226 to correspond to the log format that gnatmem now expects.
3227
32282009-06-23 Vincent Celier <celier@adacore.com>
3229
3230 * prj-attr.adb: New attributes Initial_Required_Switches,
3231 Final_Required_Switches and Object_File_Switches
3232
3233 * prj-nmsc.adb (Process_Compiler): Process new attributes
3234 Name_Final_Required_Switches, Name_Initial_Required_Switches and
3235 Name_Object_File_Switches.
3236
3237 * prj.ads (Language_Config): New component
3238 Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
3239 Compiler_Final_Required_Switches and Object_File_Switches.
3240
3241 * snames.ads-tmpl: New standard names Initial_Required_Switches,
3242 Final_Required_Switches and Object_File_Switches
3243
35262047
AC
32442009-06-23 Pascal Obry <obry@adacore.com>
3245
3246 * s-strhas.adb, s-strhas.ads: Minor reformatting.
3247
32482009-06-23 Ed Schonberg <schonberg@adacore.com>
3249
3250 * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
3251 not indicate that the enclosing unit needs a body.
3252
abe19d88
EB
32532009-06-23 Emmanuel Briot <briot@adacore.com>
3254
3255 * prj-conf.ads, prj-conf.adb: New files part of the project manager.
3256
af268547
ES
32572009-06-23 Ed Schonberg <schonberg@adacore.com>
3258
3259 * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
3260 primitive equality include it with its source name even if the
3261 operation is currently invisible, to make sure that the corresponding
3262 slot in the dispatch table is reserved for the internal equality
3263 subsequently generated during expansion.
3264
a3e3b8da
MG
32652009-06-23 Matthew Gingell <gingell@adacore.com>
3266
3267 * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
3268
f61580d4
AC
32692009-06-22 Jose Ruiz <ruiz@adacore.com>
3270
3271 * sysdep.c (__gnat_localtime_tzoff for RTX):
3272 SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
3273 GetTimeZoneInformation instead.
3274
32752009-06-22 Robert Dewar <dewar@adacore.com>
3276
3277 * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
3278
32792009-06-22 Ed Schonberg <schonberg@adacore.com>
3280
3281 * sem_ch12.adb (Collect_Previous_Instances): Do not collect
3282 instantiations declared in a previous generic package body.
3283
32842009-06-22 Robert Dewar <dewar@adacore.com>
3285
3286 * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
3287 restriction No_Direct_Boolean_Operators.
3288
32892009-06-22 Thomas Quinot <quinot@adacore.com>
3290
3291 * bindusg.adb: Minor fixes to gnatbind usage message
3292
3293 * sem_eval.adb: Minor reformatting
3294
6823270c
AC
32952009-06-22 Javier Miranda <miranda@adacore.com>
3296
3297 * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
3298 freezing point the check on the use of abstract types in object
3299 declarations. Done to allow the declaration of C++ imported variables
3300 or constants whose type corresponds with an imported C++ classes for
3301 which the constructor is not imported.
3302
33032009-06-22 Thomas Quinot <quinot@adacore.com>
3304
3305 * sem_ch6.adb: Minor reformatting
3306
33072009-06-22 Ed Schonberg <schonberg@adacore.com>
3308
3309 * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
3310 component is constrained with an expression rather than with a
3311 discriminant of the enclosing type, use that expression when building
3312 the call to default-initialize the component, when the call is part of
3313 an aggregate with box initialization.
3314
c9e7bd8e
AC
33152009-06-22 Ed Schonberg <schonberg@adacore.com>
3316
3317 * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
3318 unconditional rather than a style check, because a formal name out of
3319 order is suspicious.
3320
33212009-06-22 Vincent Celier <celier@adacore.com>
3322
3323 * prj-nmsc.adb (Locate_Directory): Indicate the project name when
3324 creating a directory automatically.
3325
33262009-06-22 Eric Botcazou <ebotcazou@adacore.com>
3327
3328 * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
3329 untagged derived type, add a hidden component for every constrained
3330 discriminant of the parent type to keep record layout consistent.
3331
d88a51b1
AC
33322009-06-22 Thomas Quinot <quinot@adacore.com>
3333
3334 * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
3335 copy).
3336
33372009-06-22 Matthew Gingell <gingell@adacore.com>
3338
3339 * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
3340 s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
3341 g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
3342 a-swuwha.adb: New unit System.String_Hash.
3343 Refactor redundant cut and pasted hash functions with instances of a
3344 new generic hash function.
3345 Implement a new string hashing algorithm which appears in testing to
3346 be move effective than to previous approach.
3347
33482009-06-22 Ed Falis <falis@adacore.com>
3349
3350 * sysdep.c: remove include for nfsLib.h and an NFS specific error
3351 message for VxWorks 653 vThreads: not supported by the OS.
3352
3353 * gsocket.h: disable sockets for VxWorks 653 vThreads.
3354
33552009-06-22 Robert Dewar <dewar@adacore.com>
3356
3357 * sem_ch6.adb: Add ??? comment for bad use of Style_Check
3358
e7d72fb9
AC
33592009-06-22 Robert Dewar <dewar@adacore.com>
3360
3361 * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
3362 by Sloc_Range.
3363
3364 * freeze.adb: Minor comment updates
3365
3366 * s-valrea.adb (Bad_Based_Value): New procedure
3367 (Scan_Real): Raise exceptions with messages
3368
33692009-06-22 Matthew Gingell <gingell@adacore.com>
3370
3371 * adaint.h: Complete previous change.
3372
33732009-06-22 Thomas Quinot <quinot@adacore.com>
3374
3375 * exp_ch7.ads, exp_ch3.adb: Minor reformatting
3376
33772009-06-22 Ed Schonberg <schonberg@adacore.com>
3378
3379 * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
3380 enabled, emit warning when a non-controlling argument of the overriding
3381 operation appears out of place vis-a-vis of the formal of the
3382 overridden operation.
3383
03456e44
AC
33842009-06-22 Vincent Celier <celier@adacore.com>
3385
3386 * gnatcmd.adb (Check_Files): Close temporary files after all file names
3387 have been written into it.
3388
33892009-06-22 Matthew Gingell <gingell@adacore.com>
3390
3391 * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
3392 available.
3393
33942009-06-22 Thomas Quinot <quinot@adacore.com>
3395
3396 * sem_disp.adb (Check_Direct_Call): Handle the case where the full
3397 view of the root type is visible at the point of the call.
3398
33992009-06-22 Pat Rogers <rogers@adacore.com>
3400
3401 * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
3402
59366db6
JL
34032009-06-22 Jerome Lambourg <lambourg@adacore.com>
3404
3405 * freeze.adb: Add comments.
3406
f3b57ab0
AC
34072009-06-21 Thomas Quinot <quinot@adacore.com>
3408
3409 * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
3410 sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
3411 Factor out code to new subprogram...
3412 (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
3413 for a default initialized variable.
3414 (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
3415 entity that has an associated freeze node.
3416 (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
3417 If there is an init call for the object, defer it to the object freeze
3418 point.
3419 (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
3420 name clash with new subprogram introduced in Exp_Util.
3421
34222009-06-21 Robert Dewar <dewar@adacore.com>
3423
3424 * einfo.ads: Minor reformatting
3425
4f91a255
AC
34262009-06-21 Ed Falis <falis@adacore.com>
3427
3428 * env.c (__gnat_environ): return NULL for vThreads - unimplemented
3429
34302009-06-21 Eric Botcazou <ebotcazou@adacore.com>
3431
3432 * einfo.ads: Update comments.
3433
34342009-06-21 Hristian Kirtchev <kirtchev@adacore.com>
3435
3436 * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
3437 where the controlling formal is of private class-wide type whose
3438 completion is a synchronized type can be converted into direct calls.
3439
34402009-06-21 Vincent Celier <celier@adacore.com>
3441
3442 * gnatcmd.adb (Check_Files): When all sources of the project are to be
3443 indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
3444 of sources using -files=, so that the distinction can be made by the
3445 tool of a call with no source (to display the usage) from a call with
3446 a project file that contains no source.
3447
34482009-06-21 Jerome Lambourg <lambourg@adacore.com>
3449
3450 * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
3451 case of VM convention arrays.
3452
8a45323c
RD
34532009-06-20 Robert Dewar <dewar@adacore.com>
3454
3455 * a-nudira.adb: Minor reformatting
3456
5afaf827
AC
34572009-06-20 Ed Schonberg <schonberg@adacore.com>
3458
3459 * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
3460 expressions (possibly from a parent type) indicate that the scope of
3461 the new itypes is the initialization procedure being built.
3462
34632009-06-20 Robert Dewar <dewar@adacore.com>
3464
3465 * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
3466 Needs_64, and now computed without anomolies for some dynamic types.
3467
34682009-06-20 Thomas Quinot <quinot@adacore.com>
3469
3470 * sem_prag.adb: Minor reformatting
3471
3472 * exp_disp.ads: Minor reformatting
3473
e80d72ea
ES
34742009-06-20 Ed Schonberg <schonberg@adacore.com>
3475
3476 * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
3477 function call is a legal expression to initialize a limited object.
3478
3479 * exp_ch3.adb: Rename various freeze operations that perform expansion
3480 actions, to prevent confusion with subprograms in the freeze package.
3481
6ca063eb
AC
34822009-06-20 Ed Schonberg <schonberg@adacore.com>
3483
3484 * sem.adb (Walk_Library_Units): Check instantiations first.
3485
3486 * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
3487 private primitive if it is a function with a controlling result that is
3488 a type extension with progenitors.
3489
3490 * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
3491 a primitive operation of a synchronized tagged type that has a
3492 controlling result.
3493
34942009-06-20 Thomas Quinot <quinot@adacore.com>
3495
3496 * einfo.ads: Fix typo.
3497
34982009-06-20 Ed Falis <falis@adacore.com>
3499
3500 * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
3501
502c4bb9
EB
35022009-06-19 Eric Botcazou <ebotcazou@adacore.com>
3503
3504 * gcc-interface/trans.c (emit_check): Do not wrap up the result
3505 in a SAVE_EXPR.
3506 (protect_multiple_eval): Always protect complex expressions.
3507
659819b9
AC
35082009-06-19 Emmanuel Briot <briot@adacore.com>
3509
3510 * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
3511 make sure we always return a name ending with a path separator.
3512
35132009-06-19 Javier Miranda <miranda@adacore.com>
3514
3515 * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
3516 Save and restore the visibility of the parent when installed.
3517
35182009-06-19 Jose Ruiz <ruiz@adacore.com>
3519
3520 * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
3521 by Common which contains all these fields.
3522
3523 * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
3524 Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
3525 Remove code duplication in this package by means of calling the
3526 equivalent code in s-taprob.
3527
35282009-06-19 Robert Dewar <dewar@adacore.com>
3529
3530 * a-einuoc.ads: Minor reformatting
3531
0eed21bd
EF
35322009-06-19 Ed Falis <falis@adacore.com>
3533
3534 * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
3535 s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
3536
93c3fca7
AC
35372009-06-19 Eric Botcazou <ebotcazou@adacore.com>
3538
3539 * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
3540
35412009-06-19 Robert Dewar <dewar@adacore.com>
3542
3543 * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
3544 ranges
3545
3546 * checks.adb (Determine_Range): Move the test for generic types later.
3547
3548 * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
3549 cases.
3550 (Eval_Relational_Op): Fold more cases including string compares
3551
3552 * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
3553 function.
3554
e29e2483
AC
35552009-06-19 Robert Dewar <dewar@adacore.com>
3556
3557 * sem_type.ads, sem_ch12.adb: Minor reformatting
3558
3559 * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
3560
35612009-06-19 Ed Schonberg <schonberg@adacore.com>
3562
3563 * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
3564 primitive operation of a rivate extension whose controlling argument
3565 is an out parameter.
3566
3567 * sem.adb (Walk_Library_Units): exclude generic package declarations
3568 from check.
3569
f26d5cd3
AC
35702009-06-19 Thomas Quinot <quinot@adacore.com>
3571
3572 * i-vxwoio.ads: Add comments
3573
35742009-06-19 Thomas Quinot <quinot@adacore.com>
3575
3576 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
3577 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
3578 g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
3579 (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
3580 (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
3581 Thin_Common.Socket_Ioctl.
3582 (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
3583 __gnat_socket_ioctl.
3584 (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
3585 argument after the file descriptor and request code.
3586
35872009-06-19 Robert Dewar <dewar@adacore.com>
3588
3589 * checks.adb: Minor reformatting
3590
1abad480
AC
35912009-06-19 Jose Ruiz <ruiz@adacore.com>
3592
3593 * env.c (__gnat_environ): RTX does not support this functionality.
3594
35952009-06-19 Ed Schonberg <schonberg@adacore.com>
3596
3597 * sem.adb (Walk_Library_Items): Include bodies in the list of units to
3598 traverse, to account for front-end inlining and instantiations in a
3599 spec or in the main unit.
3600
36012009-06-19 Robert Dewar <dewar@adacore.com>
3602
3603 * checks.adb (Determine_Range): Do not attempt to get range of generic
3604 type.
3605
c38e990f
SR
36062009-06-19 Sergey Rybin <rybin@adacore.com>
3607
3608 * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
3609 gnatmetric option for generating the schema file for gnatmetric XML
3610 output. Add corresponding VMS qualifier.
3611
1175f0b6
AC
36122009-06-19 Robert Dewar <dewar@adacore.com>
3613
3614 * g-cgi.adb: Minor reformatting
3615
36162009-06-19 Eric Botcazou <ebotcazou@adacore.com>
3617
3618 * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
3619 signal code for SIGFPE and raise Program_Error for SIGILL.
3620
3621 * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
3622
36232009-06-19 Ed Schonberg <schonberg@adacore.com>
3624
3625 * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
3626 generic package if there is a visibility candidate that is declared in
3627 a regular package.
3628
4c1a9016
OH
36292009-06-18 Olivier Hainque <hainque@adacore.com>
3630
3631 * system-aix64.ads: New file.
3632 * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
3633 64bit system.ads for ppc64 multilib variants.
3634
d81b4c61
RD
36352009-06-16 Robert Dewar <dewar@adacore.com>
3636 Olivier Hainque <hainque@adacore.com>
3637
3638 Relax constraints on Machine_Attribute argument types:
3639 * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
3640 missing type.
3641 (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
3642 * gcc-interface/decl.c (prepend_attributes): Accept static
3643 expressions of any type as attribute arguments, not only string
3644 literals.
3645 * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
3646 the relaxation of the restriction on the Info argument type.
3647
c172df28
AH
36482009-06-13 Aldy Hernandez <aldyh@redhat.com>
3649
3650 * gcc-interface/utils.c (record_builtin_type): Pass location
3651 argument to build_decl.
3652 (create_type_stub_decl): Same.
3653 (create_type_decl): Same.
3654 (create_var_decl_1): Same.
3655 (create_field_decl): Same.
3656 (create_param_decl): Same.
3657 (create_label_decl): Same.
c172df28
AH
3658 (create_subprog_decl): Same.
3659 * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
3660 * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
3661 argument to create_artificial_label.
c172df28
AH
3662 (Loop_Statement_to_gnu): Same.
3663 (Subprogram_Body_to_gnu): Same.
3664 (gnat_gimplify_stmt): Same.
3665
53b2323e
RH
36662009-06-11 Richard Henderson <rth@redhat.com>
3667
cd19075f
EB
3668 * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
3669 OPT_gdwarfplus.
53b2323e 3670
2995ebee
AC
36712009-06-11 Ed Schonberg <schonberg@adacore.com>
3672
3673 * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
3674 accessibiliy check on access_to_subprogram in the context of an
3675 anonymous access that is not an access parameter.
3676
36772009-06-11 Eric Botcazou <ebotcazou@adacore.com>
3678
3679 * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
3680
36812009-06-11 Quentin Ochem <ochem@adacore.com>
3682
3683 * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
3684 comments for message handled by GPS.
3685
36862009-06-11 Matthew Gingell <gingell@adacore.com>
3687
3688 * adaint.c: Use fopen64 instead of fopen on platforms where we know
3689 it's supported.
3690
36912009-06-11 Pascal Obry <obry@adacore.com>
3692
3693 * g-cgi.ads: Fix comment typo.
3694
3695 * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
3696
c244bf8f
EB
36972009-06-10 Eric Botcazou <ebotcazou@adacore.com>
3698
3699 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
3700 a reference to the original type for the type of the field of the
3701 XVS type.
3702 (maybe_pad_type): Likewise.
3703
3704 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
3705 common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
3706 Pass correctly typed arguments to create_field_decl.
3707 <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
3708 case of contrained discriminants as well. Use the padded base type
3709 in the other case as well. Rename temporary variable. Tweak test.
3710 Factor common access pattern. Set GNU_SIZE only once.
3711
ff346f70
OH
37122009-06-09 Olivier Hainque <hainque@adacore.com>
3713
3714 * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
3715 helper for build_call_alloc_dealloc with arguments to be interpreted
3716 identically. Process the case where a GNAT_PROC to call is provided.
3717 (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
3718 and return an allocator for DATA_SIZE bytes aimed at containing a
3719 DATA_TYPE object, using the default __gnat_malloc allocator. Honor
3720 DATA_TYPE alignments greater than what the latter offers.
3721 (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
3722 release a DATA_TYPE object designated by DATA_PTR using the
3723 __gnat_free entry point.
3724 (build_call_alloc_dealloc): Expect object data type instead of naked
3725 alignment constraint. Use the new helpers.
3726 (build_allocator): Remove special processing for the super-aligned
3727 case, now handled by build_call_alloc_dealloc. Pass data
3728 type instead of the former alignment argument, as expected by the new
3729 interface.
3730 * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
3731 and comment.
3732 * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
3733 Remove special processing for the super-aligned case, now handled
3734 by build_call_alloc_dealloc. Pass data type instead of the former
3735 alignment argument, as expected by the new interface.
3736
2153915d
AO
37372009-06-08 Alexandre Oliva <aoliva@redhat.com>
3738
3739 * lib-writ.adb (flag_compare_debug): Import.
3740 (Write_ALI): Skip during -fcompare-debug-second.
3741
cdaa0e0b
EB
37422009-06-03 Eric Botcazou <ebotcazou@adacore.com>
3743
3744 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
3745 adjusting the discriminant nodes in an extension, use the full view
3746 of the parent subtype if it is of a private kind.
3747
a6a29d0c
EB
37482009-06-03 Eric Botcazou <ebotcazou@adacore.com>
3749
3750 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
3751 _Parent field, if any, to the record before adding the other fields.
3752 <E_Record_Subtype>: Put the _Controller field before the other fields
3753 except for the _Tag or _Parent fields.
3754 (components_to_record): Likewise. Retrieve the _Parent field from the
3755 record type.
3756
8cd28148
EB
37572009-06-03 Eric Botcazou <ebotcazou@adacore.com>
3758
3759 * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
3760 remove unused parameter and simplify.
3761 (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS. Factor
3762 common predicate. Rewrite loop for clarity. Use GNU_TYPE directly
3763 as context for all discriminants. Fix formatting nits.
3764 <E_Record_Subtype>: Add cosmetic 'break'. Test Has_Discriminants
3765 before Discriminant_Constraint. Adjust for above renaming. Do not
3766 set GNU_TYPE more than once.
3767 (elaborate_entity): Test Has_Discriminants on the entity and use
3768 Implementation_Base_Type.
3769 (components_to_record): Rename component_list to gnat_component_list.
3770 Retrieve the _Parent field from the list. Fix nits in comments.
3771 Clarify logic in loop. Pass correct arguments to create_field_decl.
3772
beb7e030
EB
37732009-06-02 Eric Botcazou <ebotcazou@adacore.com>
3774
3775 * gcc-interface/Make-lang.in: Fix formatting.
3776
db868e1e 37772009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 3778 Eric Botcazou <ebotcazou@adacore.com>
db868e1e
OH
3779
3780 * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
3781 to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
3782 on the result if at least one of the input fields couldn't be output
3783 as a static constant any more.
3784
324c9b02 37852009-06-01 Olivier Hainque <hainque@adacore.com>
53b2323e 3786 Eric Botcazou <ebotcazou@adacore.com>
324c9b02
OH
3787
3788 * gcc-interface/utils2.c (gnat_build_constructor): Factor
18d6353c 3789 out code. Use initializer_constant_valid_for_bitfield_p and
324c9b02
OH
3790 CONSTRUCTOR_BITFIELD_P for bit-fields.
3791
7980bfb8
ILT
37922009-05-26 Ian Lance Taylor <iant@google.com>
3793
3794 * gcc-interface/Makefile.in (COMPILER): Define.
3795 (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
3796 (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
3797 (seh_init.o, tracebak.o): Likewise.
3798 * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
3799 (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
3800 (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
3801 (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
3802 (ada/utils2.o): Likewise.
3803
6e00e546
OH
38042009-05-24 Olivier Hainque <hainque@adacore.com>
3805
3806 * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
3807 * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
3808 Add -auxbase variants to the list of recognized internal switches.
3809 * back_end.adb (Scan_Back_End_Switches): Use the new functions and
3810 adjust comments.
3811 * lib.ads: Make comment on internal GCC switches more general.
3812 * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
3813 as for C.
3814
22702f93
EB
38152009-05-23 Eric Botcazou <ebotcazou@adacore.com>
3816
3817 * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
3818
03049a4e
EB
38192009-05-23 Eric Botcazou <ebotcazou@adacore.com>
3820
3821 * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
3822 types.
3823
aae8570a
EB
38242009-05-23 Eric Botcazou <ebotcazou@adacore.com>
3825
3826 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
3827 original type because of the alignment when there is an address clause.
3828
3f6f0eb2
EB
38292009-05-20 Eric Botcazou <ebotcazou@adacore.com>
3830
3831 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
3832 discriminants affect the shape of the subtype, retrieve the GCC type
3833 directly from the original field if the GNAT types for the field and
3834 the original field are the same.
3835
84fb43a1
EB
38362009-05-15 Eric Botcazou <ebotcazou@adacore.com>
3837
3838 * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
3839 New macros.
3840 (TYPE_RM_VALUES): Likewise.
3841 (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
3842 (SET_TYPE_RM_SIZE): New macro.
3843 (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
3844 (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
3845 (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
3846 * gcc-interface/gigi.h (create_range_type): Declare.
3847 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
3848 Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
3849 <E_Signed_Integer_Subtype>: Build a regular integer type first and
3850 then set the RM bounds. Use SET_TYPE_RM_SIZE to set the RM size.
3851 <E_Floating_Point_Subtype>: Build a regular floating-point type first
3852 and then set the RM bounds.
3853 <E_Array_Type>: Use create_range_type instead of build_range_type.
3854 <E_Array_Subtype>: Build a regular integer type first and then set
3855 the RM bounds for the extra subtype.
3856 <E_String_Literal_Subtype>: Use create_range_type instead of
3857 build_range_type.
3858 <all>: Set the RM bounds for enumeration types and the GCC bounds for
3859 floating-point types.
3860 (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
3861 (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
3862 to set the bounds. Use SET_TYPE_RM_SIZE to set the RM size.
3863 (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
3864 types and with RM bounds for subtypes.
3865 * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
3866 (gnat_print_type) <REAL_TYPE>: New case.
3867 <ENUMERAL_TYPE>: Fall through to above case.
3868 (gnat_get_subrange_bounds): New function.
3869 * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
3870 TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
3871 * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
3872 for booleans. Adjust and use SET_TYPE_RM_SIZE to set the RM size.
3873 (create_range_type): New function.
3874 (create_param_decl): Build a regular integer type first and then set
3875 the RM bounds for the extra subtype.
3876 (unchecked_convert): Remove kludge for 'Valid.
3877 * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
3878 the index to sizetype instead of TYPE_DOMAIN.
3879
a531043b
EB
38802009-05-14 Eric Botcazou <ebotcazou@adacore.com>
3881
3882 * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
3883 parameter and move check for static expression to...
3884 (elaborate_expression): ...here. Adjust call to above function.
3885 (gnat_to_gnu_entity): Likewise for all calls. Use correct arguments
3886 in calls to elaborate_expression.
3887 (elaborate_entity): Likewise.
3888 (substitution_list): Likewise.
3889 (maybe_variable): Fix formatting.
3890 (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
3891 missing guard.
3892 * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
3893
59141a28
AC
38942009-05-07 Arnaud Charlet <charlet@adacore.com>
3895
c608b4d2 3896 * gcc-interface/Make-lang.in: Update dependencies.
59141a28 3897
c608b4d2
EB
38982009-05-06 Laurent GUERBY <laurent@guerby.net>
3899
3900 * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
3901 Define sa_handler_pos.
3902 * s-osinte-linux.ads: Use it.
3903 * s-linux-mipsel.ads: New.
3904 * system-linux-mips64el.ads: New.
3905 * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
3906 mips64el-linux.
e84efdce 3907
1f110335
AC
39082009-05-06 Arnaud Charlet <charlet@adacore.com>
3909
3910 * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
3911 targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
3912 opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
3913 (Tagged_Type_Expansion): New flag.
3914 Replace use of VM_Target related to tagged types expansion by
3915 Tagged_Type_Expansion, since tagged type expansion is not necessarily
3916 linked to VM targets.
3917
e0bf7d65
RD
39182009-05-06 Robert Dewar <dewar@adacore.com>
3919
1f110335
AC
3920 * sem_attr.adb: Add processing for Standard'Compiler_Version
3921
e0bf7d65
RD
3922 * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
3923 skipping.
3924 (Expr_First_Char): Add ??? comment that paren skipping needs work
3925 (Expr_Last_Char): Add ??? comment that paren skipping needs work
3926
3927 * exp_attr.adb: Add processing for Compiler_Version
3928
3929 * sem_attr.adb: New attribute Compiler_Version
3930
3931 * snames.ads-tmpl: Add entries for Compiler_Version attribute
3932
3933 * gnat_rm.texi: Document Compiler_Version attribute
3934
483c78cb
RD
39352009-05-06 Robert Dewar <dewar@adacore.com>
3936
3937 * errout.adb: Minor reformatting
3938
3939 * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
3940 sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
3941 styleg.adb: Add stylized comments to error messages that are included
3942 in the codefix circuitry of IDE's such as GPS.
3943
4e7a4f6e
AC
39442009-05-06 Sergey Rybin <rybin@adacore.com>
3945
3946 * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
3947 new form of the rule parameter that allows to specify the suffix for
3948 access-to-access type names.
3949
39502009-05-06 Robert Dewar <dewar@adacore.com>
3951
3952 * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
3953 out parameter assigned when exception handlers are present.
3954
3955 * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
3956 assignments on exit.
3957
3958 * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
3959 sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
3960 prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
3961 par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
3962 messages that are included in the codefix circuitry of IDE's such as
3963 GPS.
3964
3965 * sinput.ads, sinput.adb (Expr_First_Char): New function
53b2323e 3966 (Expr_Last_Char): New function
4e7a4f6e 3967
35117aa8
AC
39682009-05-06 Sergey Rybin <rybin@adacore.com>
3969
3970 * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
3971 Add formal definition for extra exit point metric
3972
39732009-05-06 Pascal Obry <obry@adacore.com>
3974
3975 * adaint.c: Support for setting attributes on unicode filename on
3976 Windows.
3977
0c020dde
AC
39782009-05-06 Robert Dewar <dewar@adacore.com>
3979
3980 * sem_warn.adb: Minor reformatting
3981
39822009-05-06 Javier Miranda <miranda@adacore.com>
3983
3984 * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
3985 not have discriminants or components with default expressions.
3986 (Analyze_Pragma): For pragma CPP_Class check that imported types
3987 have no discriminants and components have no default expression.
3988
3989 * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
3990 class-wide types in the expression of a record component association.
3991
39922009-05-06 Sergey Rybin <rybin@adacore.com>
3993
3994 * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
3995
3996 * gnat_ugn.texi: Add description for the new extra exit points metric
3997 (gnatmetric section).
3998
deef4289
AC
39992009-05-06 Robert Dewar <dewar@adacore.com>
4000
4001 * s-fileio.adb: Minor comment update
4002
4003 * sem_ch8.adb: Minor reformatting
4004
4005 * exp_ch3.adb: Update comments.
4006
40072009-05-06 Tristan Gingold <gingold@adacore.com>
4008
4009 * init.c, s-osinte-darwin.ads: Reduce alternate stack size
4010
89522556
AC
40112009-05-06 Arnaud Charlet <charlet@adacore.com>
4012
4013 * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
4014 Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
4015
4016 * gcc-interface/Make-lang.in: Update dependencies
4017
a693f55e
AC
40182009-05-06 Ed Schonberg <schonberg@adacore.com>
4019
4020 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
4021 change. The context clause of a generic instance declaration must be
4022 preserved until the end of the compilation, because it may have to be
4023 installed/removed repeatedly.
4024 The latest change to sem.adb ensures that the context of both spec and
4025 body of an instance is traversed before the instance itself, making
4026 this patch redundant.
4027
e264efcc
AC
40282009-05-06 Gary Dismukes <dismukes@adacore.com>
4029
4030 * sem_aggr.adb: Fix typo.
4031
40322009-05-06 Thomas Quinot <quinot@adacore.com>
4033
4034 * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
4035 declaration, do not adjust if the declaration is to be rewritten into
4036 a renaming.
4037
40382009-05-06 Ed Schonberg <schonberg@adacore.com>
4039
4040 * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
4041 discriminant part.
4042
40432009-05-06 Bob Duff <duff@adacore.com>
4044
4045 * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
4046 otherwise the compiler would be allowed to optimize away the cleanup
4047 code.
4048
69a0c174
AC
40492009-05-06 Gary Dismukes <dismukes@adacore.com>
4050
4051 * gnat_ugn.texi: Fix typo.
4052
40532009-05-06 Thomas Quinot <quinot@adacore.com>
4054
4055 * g-debuti.adb: Minor reformatting
4056
4057 * exp_attr.adb: Minor reformatting
4058
40592009-05-06 Robert Dewar <dewar@adacore.com>
4060
4061 * sem_aggr.adb: Minor reformatting.
4062
4063 * g-socthi-vms.adb: Minor reformatting
4064
40652009-05-06 Bob Duff <duff@adacore.com>
4066
4067 * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
4068 (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
4069
4e0d20ca
BD
40702009-05-06 Bob Duff <duff@adacore.com>
4071
4072 * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
4073 flags.
4074
11795185
JM
40752009-05-06 Javier Miranda <miranda@adacore.com>
4076
4077 * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
4078 (Resolve_Extension_Aggregate): Do not reject C++ constructors in
4079 extension aggregates.
4080 (Resolve_Record_Aggregate): Add support for C++ constructors in
4081 extension aggregates.
4082
4083 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
4084 constructors in extension aggregates.
4085
426d2717
AC
40862009-05-06 Robert Dewar <dewar@adacore.com>
4087
4088 * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
4089 clause.
4090
40912009-05-06 Thomas Quinot <quinot@adacore.com>
4092
4093 * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
4094 packed type, since on OpenVMS, struct msghdr is packed.
4095
40962009-05-06 Ed Schonberg <schonberg@adacore.com>
4097
4098 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
4099 call returning an unconstrained composite value, create the proper
4100 subtype for it, as is done for object dclarations with unconstrained
4101 nominal subtypes. Perform this transformation regarless of whether
4102 call comes from source.
4103
8dc10d38
AC
41042009-05-06 Robert Dewar <dewar@adacore.com>
4105
4106 * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
4107 records
4108
4109 * gnat_rm.texi:
4110 Add documentation for pragma Implicit_Packing applied to record
4111 types.
4112
41132009-05-06 Ed Schonberg <schonberg@adacore.com>
4114
4115 * sem.adb (Walk_Library_Items): Place all with_clauses of an
4116 instantiation on the spec, because late instance bodies may generate
4117 with_clauses for the instance body but are inserted in the instance
4118 spec.
4119
3249690d
AC
41202009-05-06 Emmanuel Briot <briot@adacore.com>
4121
4122 * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
4123 support for returning the directory even if it doesn't exist. This is
4124 used for the object directory, since we are always setting it to a
4125 non-null value, and we should set it to an absolute name rather than a
4126 relative name for the sake of external tools that might depend on it.
4127 (Check_Library_Attributes): When Project.Library_Dir is known, check
4128 that the directory exists.
4129
41302009-05-06 Ed Schonberg <schonberg@adacore.com>
4131
4132 * sem_attr.adb (Check_Dereference): If the prefix of an attribute
4133 reference is an implicit dereference, do not freeze the designated type
4134 if within a default expression or when preanalyzing a pre/postcondtion.
4135
fd366a46
AC
41362009-05-06 Ed Schonberg <schonberg@adacore.com>
4137
4138 * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
4139 call returning an unconstrained composite value, create the proper
4140 subtype for it, as is done for object dclarations with unconstrained
4141 nominal subtypes
4142
41432009-05-06 Robert Dewar <dewar@adacore.com>
4144
4145 * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
4146 improvements
4147
4148 * freeze.adb: Minor reformatting
4149
7dd1ab84
AC
41502009-05-06 Thomas Quinot <quinot@adacore.com>
4151
4152 * sem_ch3.adb (Access_Type_Declaration): An access type whose
4153 designated type is a limited view from a limited with clause (flagged
4154 From_With_Type) is not itself such a limited view.
4155
41562009-05-06 Emmanuel Briot <briot@adacore.com>
4157
4158 * prj-nmsc.adb: Remove unused variable.
4159
4160 * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
4161 prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
4162 makeutl.ads, since not all users of prj.ads need this.
4163
28541488
JM
41642009-05-06 Javier Miranda <miranda@adacore.com>
4165
4166 * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
4167 constructor in case of aggregates whose type is a CPP_Class type.
4168
55c078ac
AC
41692009-05-06 Robert Dewar <dewar@adacore.com>
4170
4171 * sem_ch13.adb: Minor comment additions
4172
4173 * osint.adb: Minor reformatting
4174
41752009-05-06 Pascal Obry <obry@adacore.com>
4176
4177 * initialize.c: On Windows, keep full pathname to expanded command
4178 line patterns.
4179
6bde3eb5
AC
41802009-05-06 Ed Schonberg <schonberg@adacore.com>
4181
4182 * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
4183 an aggregate with box default is of a discriminated private type, do
4184 not build a subaggregate for it.
4185 A proper call to the initialization procedure is generated for it.
4186
41872009-05-06 Thomas Quinot <quinot@adacore.com>
4188
4189 * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
4190 (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
4191 Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
4192 use standard array code for Standard.String.
4193 (Exp_Dist): Bump PolyORB s-parint API version to 3.
4194 (Rtsfind): New entities TA_Std_String, Unbounded_String.
4195
41962009-05-06 Robert Dewar <dewar@adacore.com>
4197
4198 * g-comlin.ads: Minor reformatting
4199
4200 * xoscons.adb: Minor reformatting
4201
3743d5bd
AC
42022009-05-06 Gary Dismukes <dismukes@adacore.com>
4203
4204 * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
4205 Underlying_Type before retrieving the type definition for gathering
4206 components, to account for the case where the type is private.
4207
42082009-05-06 Tristan Gingold <gingold@adacore.com>
4209
4210 * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
4211
42122009-05-06 Thomas Quinot <quinot@adacore.com>
4213
4214 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4215 g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
4216 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
4217 (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
4218 Windows versions): Fix incorrect base
4219 address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
4220 (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
4221 System.Address for the To parameter instead of a Sockaddr_In_Access, to
4222 achieve independance from AF_INET family, and also to allow this
4223 parameter to be retrieved from a Msghdr for the Windows case where
4224 these routines are used to implement C_Sendmsg and C_Recvmsg.
4225
42262009-05-06 Bob Duff <duff@adacore.com>
4227
4228 * g-expect.adb, g-expect.ads: Minor reformatting
4229
4230 * sdefault.ads: Minor comment fix
4231
4232 * g-expect-vms.adb: Minor reformatting
4233
4234 * table.ads, table.adb (Append_All): New convenience procedure for
4235 appending a whole array.
4236
4237 * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
4238 box message. Call Osint.Dump_Source_File_Names to print out the file
4239 list, instead of rummaging around in various data structures.
4240
4241 * debug.adb: New switch -gnatd.n, to print source file names as they
4242 are read.
4243
4244 * alloc.ads: Add parameters for Osint.File_Name_Chars.
4245
4246 * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
4247 out source file names during a "bug box".
4248 (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
4249 (Read_Source_File): Print out the file name, if requested via -gnatd.n.
4250 If it's not part of the runtimes, store it for later printing by
4251 Dump_Source_File_Names.
4252
42532009-05-06 Javier Miranda <miranda@adacore.com>
4254
4255 * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
4256 documentation and add reference to the GNAT user guide for further
4257 details.
4258
42592009-05-06 Javier Miranda <miranda@adacore.com>
4260
4261 * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
4262 also wrong examples that use extension aggregates.
4263
42642009-05-06 Albert Lee <lee@adacore.com>
4265
4266 * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
4267 of Msg_Iovlen_T for VMS.
4268
ffef1219
LG
42692009-05-04 Laurent GUERBY <laurent@guerby.net>
4270
4271 PR ada/38874
4272 * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
4273
70b70ce8
AC
42742009-04-29 Ed Schonberg <schonberg@adacore.com>
4275
4276 * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
4277 box-defaulted operator in an instantiation, when the type of the
4278 operands is not directly visible.
4279
42802009-04-29 Gary Dismukes <dismukes@adacore.com>
4281
4282 * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
4283 (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
4284 analysis of the ancestor part. Remove prohibition against limited
4285 interpretations of the ancestor expression in the case of Ada 2005.
4286 Revise error message in overloaded case, adding a message to cover
4287 the Ada 2005 case.
4288
42892009-04-29 Thomas Quinot <quinot@adacore.com>
4290
4291 * xoscons.adb: Minor reformatting
4292
42932009-04-29 Bob Duff <duff@adacore.com>
4294
4295 * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
4296 attribute_definition_clauses for the following attributes when the
4297 -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
4298 Storage_Size, Write. Otherwise, we get spurious errors (for example,
4299 missing Read attribute on remote types).
4300
4301 * gnat_ugn.texi: Document the change, and add a stern warning.
4302
43032009-04-29 Ed Schonberg <schonberg@adacore.com>
4304
4305 * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
4306 disabled not just for the current scope, but for the innermost dynamic
4307 scope as well.
4308
4cc51f5e
AC
43092009-04-29 Arnaud Charlet <charlet@adacore.com>
4310
4311 * gcc-interface/Make-lang.in: Update dependencies
4312
107b023c
AC
43132009-04-29 Vincent Celier <celier@adacore.com>
4314
4315 * prj-part.adb: Minor comment update
4316
43172009-04-29 Ed Schonberg <schonberg@adacore.com>
4318
4319 * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
4320 box-initialized records with discriminated subcomponents that are
4321 constrained by discriminants of enclosing components. New subsidiary
4322 procedures Add_Discriminant_Values, Propagate_Discriminants.
4323
43242009-04-29 Arnaud Charlet <charlet@adacore.com>
4325
4326 * g-socket.adb: Code clean up.
4327
1933c497
AC
43282009-04-29 Gary Dismukes <dismukes@adacore.com>
4329
4330 * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
4331 function entity, to cover the case of a parameterless function call
4332 that has not been resolved.
4333
43342009-04-29 Robert Dewar <dewar@adacore.com>
4335
4336 * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
4337 reformatting and comment updates.
4338
51ec70b8
AC
43392009-04-29 Arnaud Charlet <charlet@adacore.com>
4340
4341 * gnat_ugn.texi: Update some documentation about interfacing with C++
4342 Mention -fkeep-inline-functions.
4343
4344 * gnat_ugn.texi: Minor edits
4345
43462009-04-29 Ed Schonberg <schonberg@adacore.com>
4347
4348 * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
4349 for a defaulted component of an enclosing aggregate, inherit the type
4350 from the component declaration of the enclosing type.
4351
43522009-04-29 Albert Lee <lee@adacore.com>
4353
4354 * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
4355 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
4356 (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
4357 msg_iovlen field in struct msghdr is 32 or 64 bits wide.
4358 Relocate the Msghdr record type from GNAT.Sockets.Thin to
4359 GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
4360 type for the Msg_Iovlen field.
4361
9e895ab5
AC
43622009-04-29 Vincent Celier <celier@adacore.com>
4363
4364 * sinput-l.adb (Load_File): When preprocessing, set temporarily the
4365 Source_File_Index_Table entries for the source, to avoid crash when
4366 reporting an error.
4367
4368 * gnatcmd.adb (Test_If_Relative_Path): Use
4369 Makeutl.Test_If_Relative_Path.
4370
4371 * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
4372 Including_RTS is True.
4373
4374 * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
4375 Including_RTS defaulted to False.
4376
4377 * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
4378 a default value.
4379
43802009-04-29 Javier Miranda <miranda@adacore.com>
4381
4382 * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
4383
236fecbf
JM
43842009-04-29 Javier Miranda <miranda@adacore.com>
4385
4386 * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
4387 associated with dyamically tagged expressions if the expression
4388 initializing a tagged type corresponds with a non default CPP
4389 constructor.
4390 (OK_For_Limited_Init): CPP constructor calls are OK for initialization
4391 of limited type objects.
4392
4393 * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
4394 when a CPP constructor is called in an assignment. Disable also the
4395 error message associated with dyamically tagged expressions if the
4396 exporession initializing a tagged type corresponds with a non default
4397 CPP constructor.
4398
4399 * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
4400 non-default C++ constructors.
4401
4402 * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
4403
4404 * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
4405 non-default constructors.
4406 (Init_Proc): Add support for non-default constructors.
4407
4408 * exp_disp.adb (Set_Default_Constructor): Removed.
4409 (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
4410 but extending its functionality to handle non-default constructors.
4411
4412 * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
4413 constructors. Minor code cleanup removing unrequired label and goto
4414 statement.
4415
4416 * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
4417 constructors.
4418 (Build_Init_Statements): Add support for non-default constructors.
4419 (Expand_N_Object_Declaration): Add support for non-default constructors.
4420 (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
4421 to Set_CPP_Constructors.
4422
4423 * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
4424 non-default constructors.
4425 Required to handle its use in build-in-place statements.
4426
4427 * gnat_rm.texi (CPP_Constructor): Document new extended use of this
4428 pragma for non-default C++ constructors and the new compiler support
4429 that allows the use of these constructors in record components, limited
4430 aggregates, and extended return statements.
4431
0ec21a5b
AC
44322009-04-29 Vincent Celier <celier@adacore.com>
4433
4434 * prj-part.adb (Parse_Single_Project): Do not attempt to find a
4435 project extending an abstract project.
4436
44372009-04-29 Eric Botcazou <ebotcazou@adacore.com>
4438
4439 * targparm.ads: Fix oversight.
4440
96b20738
ES
44412009-04-29 Ed Schonberg <schonberg@adacore.com>
4442
4443 * lib-xref.adb (Output_Overridden_Op): Follow several levels of
4444 derivation when necessary, to find the user-subprogram that is actally
4445 being overridden.
4446
3b4ebfc3
RD
44472009-04-29 Robert Dewar <dewar@adacore.com>
4448
4449 * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
4450 components
4451
eb9cb0fc
ES
44522009-04-29 Ed Schonberg <schonberg@adacore.com>
4453
4454 * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
4455 primitive operation, rather than source line of synchronized type, when
4456 building the wrapper for a primitive operation that overrides an
4457 operation inherited from a progenitor, to improve the error message on
4458 duplicate declarations.
4459
4460 * sem_ch3.adb (Process_Full_View): Use new signature of
4461 Build_Wrapper_Spec.
4462
7f7d37cb
AC
44632009-04-29 Robert Dewar <dewar@adacore.com>
4464
4465 * prj-nmsc.ads: Minor reformatting
4466
44672009-04-29 Eric Botcazou <ebotcazou@adacore.com>
4468
4469 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
4470 expression on the existing parent If statement.
4471
3c638456
RD
44722009-04-29 Robert Dewar <dewar@adacore.com>
4473
4474 * prj-proc.adb, prj.ads: Minor reformatting
4475
fb1949a0
EB
44762009-04-29 Eric Botcazou <ebotcazou@adacore.com>
4477
4478 * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
4479 existing parent If statement on the newly created one.
4480
bd0a4cab
EB
44812009-04-29 Emmanuel Briot <briot@adacore.com>
4482
4483 * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
4484 prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
4485 prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
4486 (Set_In_Configuration, In_Configuration): Removed.
4487 Replaced by an extra parameter Is_Config_File in several parameter to
4488 avoid global variables to store the state of the parser.
4489
9af094a1
ES
44902009-04-29 Ed Schonberg <schonberg@adacore.com>
4491
4492 * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
4493 with_clauses generated for the same unit through rtsfind, and that
4494 appear in the context of different units.
4495
4496 * rtsfind.adb: New attribute First_Implicit_With, component of the
4497 Unit_Record that stores information about a unit loaded through rtsfind.
4498
ac72c9c5
AC
44992009-04-29 Gary Dismukes <dismukes@adacore.com>
4500
4501 * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
4502 (other conditions permitting), so that abstract stream subprograms will
4503 be declared for them.
4504
45052009-04-29 Bob Duff <duff@adacore.com>
4506
4507 * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
4508
4509 * g-expect.ads: Minor comment fixes.
4510
45112009-04-29 Ed Schonberg <schonberg@adacore.com>
4512
4513 * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
4514 dispatching operation is a body without previous spec, update the list
4515 of primitive operations to ensure that cross-reference information is
4516 up-to-date.
4517
45182009-04-29 Albert Lee <lee@adacore.com>
4519
4520 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4521 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
4522 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
4523 (GNAT.Sockets.Thin.C_Readv,
4524 GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
4525 (GNAT.Sockets.Thin.C_Recvmsg,
4526 GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
4527 sendmsg(2).
4528 (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
4529 C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
4530
4fc26524
AC
45312009-04-29 Ed Schonberg <schonberg@adacore.com>
4532
4533 * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
4534 operation is a body without previous spec, update the list of
4535 primitive operations to ensure that cross-reference information is
4536 up-to-date.
4537
4538 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
4539 new compilation unit node for the instance declaration, keep the
4540 context items of the original unit on it, so that the context of the
4541 instance body only holds the context inherited from the generic body.
4542
45432009-04-29 Bob Duff <duff@adacore.com>
4544
4545 * sem_res.adb: Minor comment fix.
4546
7f4c1903
AC
45472009-04-29 Thomas Quinot <quinot@adacore.com>
4548
4549 * sem_elim.adb: Minor reformatting
4550
45512009-04-29 Ed Schonberg <schonberg@adacore.com>
4552
4553 * exp_aggr.adb (Convert_To_Positional): if the current unit is a
4554 predefined unit, allow arbitrary number of components in static
4555 aggregate, to ensure that the same level of constant folding applies
4556 for Ada 95 and Ada 05 versions of the file.
4557
33374829
AC
45582009-04-29 Ed Schonberg <schonberg@adacore.com>
4559
4560 * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
4561 information: no need for full scope check.
4562 (Eliminate_Error): Do not emit error in a generic context.
4563
45642009-04-29 Ed Falis <falis@adacore.com>
4565
4566 * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
4567 VxWorks 653 POS does not support rmdir.
4568
45692009-04-29 Matteo Bordin <bordin@adacore.com>
4570
4571 * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
4572 results are printed.
4573
91c2cbdb
AC
45742009-04-29 Arnaud Charlet <charlet@adacore.com>
4575
4576 * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
4577 unused assignment.
4578
45792009-04-29 Thomas Quinot <quinot@adacore.com>
4580
4581 * make.adb: Minor reformatting.
4582 Minor code reorganization throughout.
4583
45842009-04-29 Matteo Bordin <bordin@adacore.com>
4585
4586 * s-stausa.ads: Changed visibility of type Task_Result: moved to
4587 public part to give application visibility over it.
4588 This is for future improvement and to build a public API on top of it.
4589 Changed record components name of type Task_Result to reflect the new
4590 way of reporting.
4591
4592 * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
4593 reporting Stack usage.
4594
4595 * gnat_ugn.texi: Update doc of stack usage report.
4596
4597 * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
4598
4599 * Makefile.rtl: Add new run-time files.
4600
6d47b1e3
PO
46012009-04-29 Pascal Obry <obry@adacore.com>
4602
4603 * initialize.c: Do not expand quoted arguments.
4604
d45871da
EB
46052009-04-29 Emmanuel Briot <briot@adacore.com>
4606
4607 * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
4608
4609 * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
4610 Prj.Ultimate_Extending_Project_Of
4611
4f87ded3
ES
46122009-04-29 Ed Schonberg <schonberg@adacore.com>
4613
4614 * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
4615 Amendment type, add the with_clause for Finalization.List_Controller
4616 only if the current context is a package body.
4617
349ff68f
AC
46182009-04-29 Thomas Quinot <quinot@adacore.com>
4619
4620 * sem_ch12.adb: Minor reformatting
4621
4622 * sem_aggr.adb: Minor reformatting
4623
4624 * sem_ch6.adb, sem_cat.ads: Minor reformatting
4625
4626 * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
4627
46282009-04-29 Quentin Ochem <ochem@adacore.com>
4629
4630 * prj.ads (Source_Id): Now general pointer type.
4631
d81b4bfe
TQ
46322009-04-29 Thomas Quinot <quinot@adacore.com>
4633
4634 * exp_ch7.adb, rtsfind.adb: Minor reformatting
4635
4636 * sem_res.adb: Minor reformatting
4637
4342eda9
TQ
46382009-04-29 Thomas Quinot <quinot@adacore.com>
4639
4640 * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
4641 operands is static only if it is a predefined concatenation operator.
4642
4643 * sem_util.adb: Minor reformatting
4644
4645 * sem_ch12.adb (Save_References): When propagating semantic information
4646 from generic copy back to generic template, for the case of an
4647 identifier that has been rewritten to an explicit dereference whose
4648 prefix is either an object name or a parameterless funcion call
4649 denoting a global object or function, properly capture the denoted
4650 global entity: perform the corresponding rewriting in the template,
4651 and point the rewritten identifier to the correct global entity (not
4652 to the associated identifier in the generic copy).
4653
0b8074ed
AC
46542009-04-29 Robert Dewar <dewar@adacore.com>
4655
4656 * rtsfind.adb, prj-env.adb: Minor reformatting
4657 Minor code reorganization
4658
46592009-04-29 Emmanuel Briot <briot@adacore.com>
4660
4661 * make.adb: Fix comment
4662
4663 * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
4664 is given as argument, as might happen in gnatmake.
4665
8f983e64
ES
46662009-04-29 Ed Schonberg <schonberg@adacore.com>
4667
4668 * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
4669 an abstract operation of a progenitor is not properly overridden by an
4670 operation of a derived synchronized type.
4671
132410cb
RD
46722009-04-29 Robert Dewar <dewar@adacore.com>
4673
4674 * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
4675 prj-proc.adb: Minor reformatting
4676 Minor code reorganization
4677
66713d62
AC
46782009-04-29 Bob Duff <duff@adacore.com>
4679
4680 * exp_ch7.adb (Build_Final_List): For an access type that designates a
4681 Taft Amendment type, if the access type needs finalization, make sure
4682 the implicit with clause for List_Controller occurs on the package spec.
4683
4684 * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
4685 with's created for the pseudo-children of Text_IO and friends. In
4686 particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
4687 Ada.Text_IO.Integer_IO both with-ing each other.
4688
4689 * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
4690 oddball cases when pragma Extend_System is used.
4691
4692 * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
4693 the case where a package spec instantiates a generic whose body with's
4694 this package, so Walk_Library_Items won't complain about cyclic with's.
4695
46962009-04-29 Emmanuel Briot <briot@adacore.com>
4697
4698 * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
4699 prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
4700 mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
4701 (Project_Id): now a real pointer to Project_Data, instead of an index
4702 into the Projects_Table. This simplifies the API significantly, avoiding
4703 extra lookups in this table and the need to pass the Project_Tree_Ref
4704 parameter in several cases
4705
059caa3e
NS
47062009-04-29 Nicolas Setton <setton@adacore.com>
4707
4708 * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
4709 darwin.
4710
19440588
EB
47112009-04-25 Eric Botcazou <ebotcazou@adacore.com>
4712
4713 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
4714 back kludge.
4715
b178461a
RD
47162009-04-24 Robert Dewar <dewar@adacore.com>
4717
4718 * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
4719 clean.adb: Minor reformatting.
4720 Minor code reorganization and message improvement.
4721
e1c9f239
EB
47222009-04-24 Emmanuel Briot <briot@adacore.com>
4723
4724 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
4725 (Alternate_Languages): now implemented as a malloc-ed list rather
4726 than through a table.
4727
c72a85f2
TQ
47282009-04-24 Thomas Quinot <quinot@adacore.com>
4729
4730 * sem_res.adb (Static_Concatenation): Simplify predicate to make it
4731 accurately handle cases such as "lit" & "lit" and
4732 "lit" & static_string_constant
4733
3563739b
AC
47342009-04-24 Emmanuel Briot <briot@adacore.com>
4735
4736 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
4737 prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
4738 removed. Lists of projects are now implemented via standard malloc
4739 rather than through the table.
4740
47412009-04-24 Thomas Quinot <quinot@adacore.com>
4742
4743 * sem_ch12.adb: Minor reformatting
4744
4745 * g-trasym.adb: Minor reformatting
4746
4747 * exp_ch6.adb: Minor reformatting
4748
47492009-04-24 Robert Dewar <dewar@adacore.com>
4750
4751 * layout.adb (Layout_Type): For packed array type, copy unset
4752 size/alignment fields from the referenced Packed_Array_Type.
4753
47542009-04-24 Bob Duff <duff@adacore.com>
4755
4756 * lib-load.adb (Make_Instance_Unit): Revert previous change, no
4757 longer needed after sem_ch12 changes.
4758
4759 * sem.adb (Walk_Library_Items): Include with's in some debugging
4760 printouts.
4761
757240b3
AC
47622009-04-24 Emmanuel Briot <briot@adacore.com>
4763
4764 * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
4765 only ever using the Project field.
4766
47672009-04-24 Ed Schonberg <schonberg@adacore.com>
4768
4769 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
4770 Body_Required on the generated compilation node. The new node is linked
4771 to its body, but both share the same file, so we do not set this flag
4772 on the new unit so as not to create a spurious dependency on a
4773 non-existent body in the ali file for the instance.
4774
47752009-04-24 Robert Dewar <dewar@adacore.com>
4776
4777 * make.adb: Minor reformatting
4778
aca53298
AC
47792009-04-24 Emmanuel Briot <briot@adacore.com>
4780
4781 * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
4782 Add_Source): merge some code between those. In particular change where
4783 file normalization is done to avoid a few extra calls to
4784 Canonicalize_File_Name. This also removes the need for passing
4785 Current_Dir in a number of subprograms.
4786
47872009-04-24 Bob Duff <duff@adacore.com>
4788
4789 * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
4790 False, assign the correct unit to the Cunit field of the new table
4791 entry. We want the spec unit, not the body unit.
4792
4793 * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
4794 interface for these.
4795 (Maybe_Add_With): Check whether we're trying to a with on the current
4796 unit, and avoid creating such directly self-referential with clauses.
4797 (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
4798 [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
4799 and matches existing comments in the spec.
4800
4801 * sem.adb (Walk_Library_Items): Add various special cases to make the
4802 assertions pass.
4803
4804 * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
4805 instead of Parent (N), for uniformity.
4806
6db828c3
AC
48072009-04-24 Robert Dewar <dewar@adacore.com>
4808
4809 * errout.ads: Minor reformatting
4810
48112009-04-24 Emmanuel Briot <briot@adacore.com>
4812
4813 * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
4814 behavior when the project includes sources from multiple languages
4815
48162009-04-24 Vincent Celier <celier@adacore.com>
4817
4818 * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
4819 is a language other than Ada declared.
4820
4821 * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
4822 Imported_First set to True.
4823
a7a3cf5c
AC
48242009-04-24 Ed Schonberg <schonberg@adacore.com>
4825
4826 * sem_res.adb: additional optimization to inhibit creation of
4827 redundant transient scopes.
4828
48292009-04-24 Bob Duff <duff@adacore.com>
4830
4831 * rtsfind.ads: Minor comment fix
4832
48332009-04-24 Emmanuel Briot <briot@adacore.com>
4834
4835 * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
4836 Get_Path_Name_And_Record_Ada_Sources): merged, since these were
4837 basically doing the same work (for explicit or implicit sources).
4838 (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
4839 role. Rewritten to share some code (testing that all explicit sources
4840 have been found) between ada_only and multi_language modes.
4841
48422009-04-24 Jerome Lambourg <lambourg@adacore.com>
4843
4844 * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
4845 for CLI imported types.
4846 (Analyze_Pragma): Allow CIL or Java imported functions returning
4847 access-to-subprogram types.
4848
2324b3fd
EB
48492009-04-24 Emmanuel Briot <briot@adacore.com>
4850
4851 * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
4852 (Project_Data.Dir_Path): field removed, since it can be computed
4853 directly from .Directory, and is needed only once when processing the
4854 project is buildgpr.adb or make.adb
4855
8eaf1723
RD
48562009-04-24 Robert Dewar <dewar@adacore.com>
4857
4858 * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
4859 rtsfind.adb: Minor reformatting.
4860 Minor code reorganization
4861
04f33e7b
AC
48622009-04-24 Arnaud Charlet <charlet@adacore.com>
4863
4864 * mlib-prj.adb: Use friendlier english identifier.
4865
4866 * gnatcmd.adb, make.adb: Use better english identifiers.
4867
48682009-04-24 Robert Dewar <dewar@adacore.com>
4869
4870 * clean.adb: Minor reformatting
4871
d1f453b7
RD
48722009-04-24 Robert Dewar <dewar@adacore.com>
4873
4874 * einfo.adb (OK_To_Rename): New flag
4875
4876 * einfo.ads (OK_To_Rename): New flag
4877
4878 * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
4879 OK_To_Rename set.
4880
4881 * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
4882
4883 * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
4884 OK_To_Rename.
4885
8b9890fa
EB
48862009-04-24 Emmanuel Briot <briot@adacore.com>
4887
4888 * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
4889 clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
4890 field removed. This is not a property of the
4891 project, just a boolean used to traverse the project tree, and storing
4892 it in the structure prevents doing multiple traversal in parallel.
4893 (Project_Data.Checked): also removed, since it was playing the same role
4894 as Seen when we had two nested loops, and this is no longer necessary
4895 (For_All_Imported_Projects): removed, since in fact there was already
4896 the equivalent in For_Every_Project_Imported. The latter was rewritten
4897 to use a local hash table instead of Project_Data.Seen
4898 Various loops were rewritten to use For_Every_Project_Imported, thus
4899 removing the need for Project_Data.Seen. This avoids a lot of code
4900 duplication
4901
76e776e5
AC
49022009-04-24 Ed Schonberg <schonberg@adacore.com>
4903
4904 * sem_res.adb (Resolve_Actuals): Do not create blocks around code
4905 statements, even though the actual of the call is a concatenation,
4906 because the argument is static, and we want to preserve warning
4907 messages about sequences of code statements that are not marked
4908 volatile.
4909
4910 * sem_warn.adb: remove obsolete comment about warning being obsolete
4911
4912 * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
4913 requeued and the delay has expired while within the accept statement
4914 that executes the requeue, do not perform the requeue and indicate that
4915 the timed call has been aborted.
4916
49172009-04-24 Emmanuel Briot <briot@adacore.com>
4918
4919 * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
4920 (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
4921 (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
4922 since they can be computed from the above.
4923
481f29eb
VC
49242009-04-24 Vincent Celier <celier@adacore.com>
4925
4926 * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
4927
4928 * prj-env.adb: Move all global variables to the private part of the
4929 project tree data.
4930 Access these new components instead of the global variables no longer
4931 in existence.
4932 (Add_To_Path): New Project_Tree_Ref parameter, to access the new
4933 components that were previously global variables.
4934
4935 * prj-env.ads (Initialize): New Project_Tree_Ref parameter
4936 (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
4937 parameter.
4938
4939 * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
4940 be able to call Set_Mapping_File_Initial_State_To_Empty with it.
4941
4942 * prj.adb (Initialize): Do not call Prj.Env.Initialize
4943 (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
4944 components in the private part of the project tree data.
4945
4946 * prj.ads (Private_Project_Tree_Data): new components moved from
4947 Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
4948 Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
4949 Ada_Prj_Objects_File_Set, Fill_Mapping_File.
4950
c54ab0b5
AC
49512009-04-24 Vincent Celier <celier@adacore.com>
4952
4953 * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
4954
4955 * prj-nmsc.adb (Check_Library): No error for imports by shared library
4956 projects, when --unchecked-shared-lib-imports is used.
4957
49582009-04-24 Robert Dewar <dewar@adacore.com>
4959
4960 * sem_ch7.adb: Minor reformatting
4961
b3520ca0
AC
49622009-04-24 Tristan Gingold <gingold@adacore.com>
4963
4964 * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
4965 mach thread id.
4966
49672009-04-24 Emmanuel Briot <briot@adacore.com>
4968
4969 * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
4970 Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
4971 (For_All_Imported_Projects): new procedure
4972 (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
4973 above rather than duplicating code.
4974
5d07d0cf
EB
49752009-04-24 Emmanuel Briot <briot@adacore.com>
4976
4977 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
4978 (Source_Id, Source_Data): use a real list to store sources rather than
4979 using an external table to store the elements. This makes code more
4980 efficient and more readable.
4981
5eed512d
EB
49822009-04-24 Emmanuel Briot <briot@adacore.com>
4983
4984 * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
4985 (Source_Iterator): new type.
53b2323e
RH
4986 This removes the need for having the sources on three different
4987 lists at the project tree, project and language level. They are now
4988 on a single list.
5eed512d 4989
5876578b
EB
49902009-04-24 Emmanuel Briot <briot@adacore.com>
4991
4992 * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
4993
a9d17e32
ES
49942009-04-24 Ed Schonberg <schonberg@adacore.com>
4995
4996 * sem_warn.adb: Add comment on obsolete warning
4997
144c034d
AC
49982009-04-24 Arnaud Charlet <charlet@adacore.com>
4999
5000 * s-tassta.adb (Create_Task): Fix violation of locking rule.
5001
e0697153
EB
50022009-04-24 Emmanuel Briot <briot@adacore.com>
5003
5004 * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
5005 to Language_Ptr to better reflect its new implementation.
5006 (Project_Data.First_Languages_Processing): renamed to Languages now
5007 that the field with that name is no longer used
5008 (Project_Data.Languages): removed, no longer used, and duplicates
5009 information already available through First_Language_Processing.
5010 (Prj.Language_Index): now an actual pointer, instead of an index into
5011 a table. This makes the list somewhat more obvious, but more importantly
5012 removes the need to pass a pointer to the project_tree_data in a few
5013 places, and makes accessing the attributes of a languages more
5014 efficient.
5015
18e6d56a 50162009-04-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
53b2323e 5017 Thomas Quinot <quinot@adacore.com>
18e6d56a
RK
5018
5019 * fe.h (Set_Identifier_Casing): Add const to second parameter.
c91f9cd4 5020 * gcc-interface/misc.c (internal_error_function): Make copy of return
18e6d56a
RK
5021 from pp_formatted_text before assigning BUFFER to it.
5022 (gnat_init): Likewise for main_input_filename and gnat_argv.
5023 (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
5024
caa9d12a
EB
50252009-04-24 Eric Botcazou <ebotcazou@adacore.com>
5026
5027 * ttypes.ads (Target_Double_Float_Alignment): New variable.
5028 (Target_Double_Scalar_Alignment): Likewise.
5029 * get_targ.ads (Get_Strict_Alignment): Adjust external name.
5030 (Get_Double_Float_Alignment): New imported function.
5031 (Get_Double_Scalar_Alignment): Likewise.
5032 * layout.adb (Set_Elem_Alignment): Take into account specific caps for
5033 the alignment of "double" floating-point types and "double" or larger
5034 scalar types, as parameterized by Target_Double_Float_Alignment and
5035 Target_Double_Scalar_Alignment respectively.
5036 * gcc-interface/gigi.h (double_float_alignment): Declare.
5037 (double_scalar_alignment): Likewise.
5038 (is_double_float_or_array): Likewise.
5039 (is_double_scalar_or_array): Likewise.
5040 (get_target_double_float_alignment): Likewise.
5041 (get_target_double_scalar_alignment): Likewise.
5042 * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
5043 (get_target_strict_alignment): ...this.
5044 (get_target_double_float_alignment): New function.
5045 (get_target_double_scalar_alignment): Likewise.
5046 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
5047 Test the presence of an alignment clause for under-aligned integer
5048 types. Take into account specific caps for the alignment of "double"
5049 floating-point types and "double" or larger scalar types, as
5050 parameterized by Target_Double_Float_Alignment and
5051 Target_Double_Scalar_Alignment respectively.
5052 (validate_alignment): Likewise.
5053 * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
5054 (gigi): Initialize double_float_alignment and double_scalar_alignment.
5055 * gcc-interface/utils.c (double_float_alignment): New global variable.
5056 (double_scalar_alignment): Likewise.
5057 (is_double_float_or_array): New predicate.
5058 (is_double_scalar_or_array): Likewise.
5059
1275de7d
EB
50602009-04-24 Eric Botcazou <ebotcazou@adacore.com>
5061
5062 * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
5063 the conditional expression only if it is common to both arms.
5064
6f61bd41
EB
50652009-04-24 Eric Botcazou <ebotcazou@adacore.com>
5066
5067 * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
5068 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
5069 arguments to build_allocator.
5070 * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
5071 Remove code handling special allocator and assert its uselessness.
5072
0d858698
EB
50732009-04-24 Eric Botcazou <ebotcazou@adacore.com>
5074
5075 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
5076 alignment is specified, do not promote that of the component type
5077 beyond it.
5078 <E_Array_Subtype>: Likewise.
5079
bbaba73f
EB
50802009-04-23 Eric Botcazou <ebotcazou@adacore.com>
5081
5082 * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
5083 * sinfo.ads (Object Declaration): Likewise.
5084 (Assignment Statement): Likewise.
5085 * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
5086 Do not force Is_True_Constant to false on the temporary.
5087 (Freeze_Entity): Do not force Is_True_Constant to false on names on
5088 the RHS of object declarations.
5089 * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
5090 New case. Return 1 if the object is atomic.
5091 <N_Assignment_Statement>: Likewise.
5092
4fd78fe6
EB
50932009-04-23 Eric Botcazou <ebotcazou@adacore.com>
5094
5095 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
5096 For packed array types, make the original array type a parallel type
5097 for the modular type and its JM wrapper if the type is bit-packed.
5098 <E_Array_Subtype>: Likewise. Do not generate the special XA parallel
5099 record type for packed array types. Remove kludge.
5100
c1abd261
EB
51012009-04-23 Eric Botcazou <ebotcazou@adacore.com>
5102
5103 * gcc-interface/gigi.h (create_index_type): Adjust head comment.
5104 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
5105 Use front-end predicates to compute signedness and precision.
5106 <E_String_Literal_Subtype>: Fold range type.
5107 Make sure to set longest_float_type_node to a scalar type.
5108 (elaborate_entity): Use consistent Constraint_Error spelling.
5109 (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
5110 * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
5111 output for the modulus, if any.
5112 <ENUMERAL_TYPE>: Likewise for the RM size.
5113 * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
5114 spelling.
5115 * gcc-interface/utils.c (finish_record_type): Really test the alignment
5116 of BLKmode bit-fields to compute their addressability.
5117 (create_index_type): Adjust comments.
5118 (create_param_decl): Create the biased subtype manually.
5119 * gcc-interface/utils2.c (build_component_ref): Use consistent
5120 Constraint_Error spelling.
5121
8713b7e4
EB
51222009-04-23 Eric Botcazou <ebotcazou@adacore.com>
5123
5124 * gcc-interface/cuintp.c: Clean up include directives.
5125 * gcc-interface/targtyps.c: Likewise.
5126 * gcc-interface/decl.c: Likewise.
5127 * gcc-interface/misc.c: Likewise.
5128 * gcc-interface/trans.c: Likewise.
5129 * gcc-interface/utils.c: Likewise.
5130 * gcc-interface/utils2.c: Likewise.
5131 * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
5132
26383c64
EB
51332009-04-23 Eric Botcazou <ebotcazou@adacore.com>
5134
5135 * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
5136 (SET_TYPE_LANG_SPECIFIC): Likewise. Fix formatting.
5137 (SET_DECL_LANG_SPECIFIC): Likewise.
5138 Reorder macros.
5139 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
5140 Update comment about use of build_range_type.
5141 <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
5142 <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
5143 check for other cases of overloading.
5144 * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
5145 * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
5146 Use size_int in lieu of build_int_cst.
5147 (build_call_alloc_dealloc): Use build_index_2_type in lieu of
5148 build_range_type.
5149
b7babd5d
EB
51502009-04-22 Eric Botcazou <ebotcazou@adacore.com>
5151
5152 * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
5153 type is an enumeral or a boolean type, change it to an integer type
5154 with the same mode and signedness.
5155
5225a138
EB
51562009-04-22 Eric Botcazou <ebotcazou@adacore.com>
5157
5158 * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
5159 for an external constant whose initializer is not absolute.
5160
51612009-04-22 Taras Glek <tglek@mozilla.com>
d1b38208
TG
5162
5163 * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
5164 * gcc-interface/trans.c: Likewise.
5165 * gcc-interface/utils.c: Likewise.
5166
a52fefe6
AC
51672009-04-22 Ed Schonberg <schonberg@adacore.com>
5168
5169 * sem_res.adb: Create block around procedure call when actual is a
5170 concatenation.
5171
51722009-04-22 Thomas Quinot <quinot@adacore.com>
5173
5174 * s-soflin.ads: Fix typos
5175
51762009-04-22 Vincent Celier <celier@adacore.com>
5177
5178 * prj-env.adb: Minor comment change
5179
5180 * prj-nmsc.adb (Check_Common): Add guard to avoid calling
5181 Get_Name_String with No_File.
5182
5183 * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
5184 cannot be created even when not in verbose mode.
5185
2f1e0b61
EB
51862009-04-22 Emmanuel Briot <briot@adacore.com>
5187
5188 * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
5189 prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
5190 Multi_Language modes, to avoid code duplication.
5191 (Project_Data.Include_Language): Removed.
5192
35afb012
AC
51932009-04-22 Vincent Celier <celier@adacore.com>
5194
5195 * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
5196 the temporary file cannot be created, indicating the directory when the
5197 creation was attempted.
5198
51992009-04-22 Emmanuel Briot <briot@adacore.com>
5200
5201 * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
5202 the language names, not their indices.
5203
10d2a6f7
EB
52042009-04-22 Emmanuel Briot <briot@adacore.com>
5205
5206 * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
5207 (Source_Data.Language_Name): Field removed.
5208
39d4e04a
EB
52092009-04-22 Emmanuel Briot <briot@adacore.com>
5210
5211 * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
5212 Two fields removed.
5213
f1eea135
EB
52142009-04-22 Emmanuel Briot <briot@adacore.com>
5215
5216 * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
5217 separate_suffix to the same value as the body_suffix.
5218
d9c0e057
AC
52192009-04-22 Robert Dewar <dewar@adacore.com>
5220
5221 * prj.adb: Minor code reorganization
5222 Code clean up.
5223
5224 * prj-proc.adb: Minor code reorganization, clean up.
5225
5226 * prj-nmsc.adb: Minor reformatting
5227 Minor code reorganization
5228
5229 * gnat_ugn.texi: Add to doc on strict aliasing
5230
52312009-04-22 Pascal Obry <obry@adacore.com>
5232
5233 * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
5234 SpinCount.
5235
5236 * s-tasini.adb: Minor reformatting.
5237
5238 * s-tassta.adb: Minor reformatting.
5239
ce30eccb
EB
52402009-04-22 Emmanuel Briot <briot@adacore.com>
5241
5242 * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
5243 smaller subprograms.
5244 Renamed to Check_File_Naming_Schemes to avoid confusion with the
5245 other Check_Naming_Schemes functions that plays a totally different
5246 role.
5247 (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
5248 extracted from the above. These were partially rewritten to avoid
5249 unnecessary code and temporary variables.
5250 (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
5251 and Get_Unit (which for now still exist since they contain mode-specific
5252 code)
5253
347ab254
EB
52542009-04-22 Emmanuel Briot <briot@adacore.com>
5255
5256 * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
5257 Remove duplicated code.
5258 (Canonical_Case_File_Name): new subprogram
5259 (Check_And_Normalize_Unit_Names): new subprogram
5260 (Write_Attr): new subprogram
5261 Better sharing of code
5262 (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
5263 split Check_Naming and help find duplicated code
5264 (Check_Common): new subprogram, sharing code between ada_only and
5265 multi_language mode.
5266 (Naming_Data.Dot_Repl_Loc): field removed
5267
aa903780
EB
52682009-04-22 Emmanuel Briot <briot@adacore.com>
5269
5270 * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
5271 Minor refactoring to reduce the size of
5272 Process_Sources_In_Multi_Language_Mode.
5273 Avoid extra copied of Source_Data, which we found in the past could be
5274 quite slow.
5275 (Mark_Excluded_Sources): new subprogram.
5276 (Remove_Locally_Removed_Files_From_Units): merged into the above
5277 Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
5278 and allow better sharing of code between multi_lang and ada_only modes
5279 (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
5280
95c05c62
EB
52812009-04-22 Emmanuel Briot <briot@adacore.com>
5282
5283 * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
5284 Removed, since unused.
5285
c9a1acdc
AC
52862009-04-22 Vincent Celier <celier@adacore.com>
5287
5288 * prj-attr.adb: New single project level attribute
5289 Separate_Run_Path_Options.
5290
5291 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
5292 attribute Seperate_Run_Path_Options.
5293
5294 * prj.ads: (Project_Configuration): New Boolean component
5295 Separate_Run_Path_Options, defaulted to False.
5296
5297 * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
5298
6d2a1120
RD
52992009-04-22 Robert Dewar <dewar@adacore.com>
5300
c9a1acdc
AC
5301 * sem_type.adb: Minor reformatting
5302
6d2a1120
RD
5303 * mlib.adb: Minor reformatting
5304
5305 * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
5306 syntax error.
5307
3b81743f
NS
53082009-04-22 Nicolas Setton <setton@adacore.com>
5309
5310 * link.c: Add flag __gnat_separate_run_path_options.
5311
5312 * mlib.adb (Separate_Run_Path_Options): New subprogram.
5313
5314 * mlib.ads (Separate_Run_Path_Options): Declare.
5315
5316 * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
5317 switch per directory, rather than one "rpath" switch listing all
5318 directories.
5319
5320 * gnatlink.adb (Process_Binder_File): Likewise.
5321
5322 * make.adb (Gnatmake): Likewise.
5323
3a69b5ff
AC
53242009-04-22 Hristian Kirtchev <kirtchev@adacore.com>
5325
5326 * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
5327 Add a call to Move_Final_List when the target of the assignment is a
5328 return object that needs finalization and the expression is a
5329 controlled build-in-place function.
5330
53312009-04-22 Vincent Celier <celier@adacore.com>
5332
5333 * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
5334 Including_Libraries set to True.
5335
f3a67cfc
ES
53362009-04-22 Ed Schonberg <schonberg@adacore.com>
5337
5338 * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
5339 create a unit table entry for the subprogram declaration created for a
5340 child suprogram body that has no separate specification.
5341
5342 * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
5343 subprogram body, call Make_Child_Decl_Unit.
5344
5345 * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
5346 table can only be the created specification of a child subprogram body
5347 that is the main unit, which has not been entered in the table yet.
5348
5349 * errout.adb (Output_Messages): Ignore created specification of a
5350 child subprogram body to prevent repeated listing of error messages.
5351
5352 * gnat1drv.adb (gnat1drv): The generated specification for a child
5353 subprogram body does not generate code.
5354
1ef4d0a8
AC
53552009-04-22 Arnaud Charlet <charlet@adacore.com>
5356
5357 * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
5358 since this unit is now part of bootstrap units, so must use Ada 95
5359 syntax only.
5360
53612009-04-22 Thomas Quinot <quinot@adacore.com>
5362
5363 * a-tasatt.adb: Minor reformatting
5364
53652009-04-22 Bob Duff <duff@adacore.com>
5366
5367 * s-stalib.ads: Remove "with System;" since we're inside System, so
5368 it's unnecessary.
5369
53702009-04-22 Vincent Celier <celier@adacore.com>
5371
5372 * prj-nmsc.adb (Add_Source): Always put the dependency file name in
5373 the source record, as there may be a dependency file even if no object
5374 file is created.
5375
1cb46af0
RD
53762009-04-22 Robert Dewar <dewar@adacore.com>
5377
1ef4d0a8 5378 * lib-load.adb: Minor reformatting
1cb46af0
RD
5379
5380 * lib-load.ads: Minor reformatting
5381
5382 * sinfo.ads: Minor reformatting
5383
218e53ff
BD
53842009-04-22 Bob Duff <duff@adacore.com>
5385
5386 * exp_pakd.adb: Minor comment fixes.
5387
5388 * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
5389 sem_ch12.adb: Change the meaning of the Library_Unit attribute to
5390 include units containing instantiations, as well as units that are
5391 generic instantiations.
5392
5393 * sem.adb: Include dependents and corresponding specs/bodies in the
5394 unit walk.
5395
5396 * gcc-interface/Make-lang.in:
5397 sem now depends on s-bitops, because of the packed array of Booleans.
5398
feec4372
EB
53992009-04-22 Eric Botcazou <ebotcazou@adacore.com>
5400
5401 * gcc-interface/ada-tree.def: Fix formatting nits.
5402 (REGION_STMT): Delete.
5403 (HANDLER_STMT): Likewise.
5404 * gcc-interface/ada-tree.h: Fix formatting nits.
5405 (IS_STMT): Delete.
5406 (REGION_STMT_BODY): Likewise.
5407 (REGION_STMT_HANDLE): Likewise.
5408 (REGION_STMT_BLOCK): Likewise.
5409 (HANDLER_STMT_ARG): Likewise.
5410 (HANDLER_STMT_LIST): Likewise.
5411 (HANDLER_STMT_BLOCK): Likewise.
5412 * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
5413 (fp_size_to_prec): Likewise.
5414 (largest_move_alignment): Delete.
5415 (gnat_compute_largest_alignment): Likewise.
5416 Fix minor nits.
5417 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
5418 Remove redundant code.
5419 <E_Array_Type>: Remove redundant assert.
5420 <E_Array_Subtype>: Exit early from index computation in pathological
5421 cases.
5422 Rewrite conditional assignment.
5423 (make_type_from_size): Likewise.
5424 * gcc-interface/misc.c (largest_move_alignment): Delete.
5425 (gnat_finish_incomplete_decl): Likewise.
5426 (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
5427 (asm_out_file): Likewise
5428 (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
5429 (gnat_dwarf_name): Move around.
5430 * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
5431 (gigi): Remove call to gnat_compute_largest_alignment.
5432 * utils.c (create_field_decl): Rewrite conditional assignment.
5433 Fix minor nits.
5434
a8e05f92
EB
54352009-04-22 Eric Botcazou <ebotcazou@adacore.com>
5436
5437 * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
5438 on entry. Defer common processing for types. Reorder and clean up.
5439 Compute the equivalent GNAT node and the default size for types only.
5440 <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
5441 <E_Access_Type>: For an unconstrained designated type, do not pretend
5442 that a dummy type is always made.
5443 <all> Fix nits in comments.
5444 (validate_size): Fix formatting nits and comments.
5445 (set_rm_size): Likewise.
5446 * gcc-interface/utils.c (create_param_decl): Replace bogus argument
5447 passed to TARGET_PROMOTE_PROTOTYPES hook.
5448
0fb2335d
EB
54492009-04-22 Eric Botcazou <ebotcazou@adacore.com>
5450
5451 * fe.h (Get_External_Name): Declare.
5452 * gcc-interface/gigi.h (concat_id_with_name): Rename to...
5453 (concat_name): ...this.
5454 * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
5455 gnu_entity_name and adjust for above renaming.
5456 <E_Access_Type>: Use create_concat_name to get the name of the various
5457 types associated with unconstrained array types.
5458 (make_aligning_type): Adjust for above renaming.
5459 (maybe_pad_type): Likewise.
a8e05f92 5460 (components_to_record): Likewise. Use get_identifier_with_length for
0fb2335d
EB
5461 the encoding of the variant.
5462 (get_entity_name): Use get_identifier_with_length.
a8e05f92 5463 (create_concat_name): Likewise. Use Get_External_Name if no suffix.
0fb2335d
EB
5464 Do not fiddle with Name_Buffer.
5465 (concat_id_with_name): Rename to...
a8e05f92 5466 (concat_name): ...this. Use get_identifier_with_length. Do not fiddle
0fb2335d
EB
5467 with Name_Buffer.
5468 * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
5469 above renaming.
5470
ad41bd84
JM
54712009-04-21 Joseph Myers <joseph@codesourcery.com>
5472
5473 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
5474 license notices.
5475
ca80e52b
EB
54762009-04-21 Eric Botcazou <ebotcazou@adacore.com>
5477
5478 * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
5479
b4680ca1
EB
54802009-04-21 Eric Botcazou <ebotcazou@adacore.com>
5481
71b495a2 5482 * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
b4680ca1 5483 (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
71b495a2
EB
5484 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
5485 Remove useless support code for packed array types and assert its
5486 uselessness.
b4680ca1
EB
5487 <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
5488 adjust for TYPE_RM_SIZE change.
5489 <all> Fix nits in comments. Use Original_Array_Type accessor instead
5490 of Associated_Node_For_Itype accessor for packed array types.
5491 (make_packable_type): Likewise.
5492 (maybe_pad_type): Likewise.
5493 (set_rm_size): Likewise. Rework conditional statement. Adjust for
5494 TYPE_RM_SIZE change.
5495 (make_type_from_size): Adjust for TYPE_RM_SIZE change.
5496 (rm_size): Fix nits in comments. Rework conditional statements.
71b495a2
EB
5497 * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
5498 change.
5499 * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
5500 * gcc-interface/utils.c (gnat_init_decl_processing): Use more
5501 appropriate function to initialize the size_type_node. Adjust for
5502 TYPE_RM_SIZE change.
b4680ca1 5503
a962b0a1
EB
55042009-04-21 Eric Botcazou <ebotcazou@adacore.com>
5505
5506 * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
5507 for imported subprograms.
5508
2f283818
EB
55092009-04-21 Eric Botcazou <ebotcazou@adacore.com>
5510
5511 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
5512 constant objects covered by 13.3(19) volatile.
5513
ac53d5f2
EB
55142009-04-21 Eric Botcazou <ebotcazou@adacore.com>
5515
5516 * gcc-interface/utils.c (create_type_decl): Do not pass declarations
5517 of dummy fat pointer types to the debug back-end.
5518
6e0f0975
EB
55192009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5520
5521 * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
5522 <E_Signed_Integer_Subtype>: Set the RM size on the integer type
5523 before wrapping it up in the record type. Do not overwrite the
5524 Ada size of the record type with the Esize.
5525
c2efda0d
EB
55262009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5527
5528 * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
5529 (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
5530 if the conversion is on the LHS of an assignment and a no-op.
5531 <all> Do not convert the result to the result type if the Parent
5532 node is such a conversion.
5533
77022fa8
EB
55342009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5535
5536 * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
5537 * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
5538 of types with unknown discriminants.
5539 (substitute_in_type): Rewrite and restrict to formal substitutions.
5540 * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
5541 (update_pointer_to): Update comment.
5542
e69614ad
AC
55432009-04-20 Ed Schonberg <schonberg@adacore.com>
5544
5545 * sem_ch8.adb (Use_One_Package): In an instance, if two
5546 potentially_use_visible and non-overloadable homonyms are available
5547 from the actuals of distinct formal packages, retain the current one,
5548 which was visible in the generic, to prevent spurious visibility
5549 errors.
5550 (End_Use_Package): Restore use_visibility when needed.
5551
55522009-04-20 Sergey Rybin <rybin@adacore.com>
5553
5554 * gnat_ugn.texi, vms_data.ads: Update doc.
5555
32838704
AC
55562009-04-20 Arnaud Charlet <charlet@adacore.com>
5557
5558 * gcc-interface/Make-lang.in: Update dependencies
5559
5560 * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
5561 Windows.
5562
37951d8e
AC
55632009-04-20 Robert Dewar <dewar@adacore.com>
5564
5565 * checks.ads: Fix documentation of range check handling
5566
55672009-04-20 Ed Schonberg <schonberg@adacore.com>
5568
5569 * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
5570 a redundant use_type clause.
5571
5d5832bc
AC
55722009-04-20 Robert Dewar <dewar@adacore.com>
5573
5574 * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
5575 this attribute can be evaluated at compile time.
5576 (Eval_Attribute, case Range_Length): Same improvement
5577
5578 * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
5579
55802009-04-20 Ed Schonberg <schonberg@adacore.com>
5581
5582 * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
5583 for better handling of null procedures.
5584 (Check_Overriding_Indicator): Do not emit a warning on a missing
5585 overriding indicator on an operator when the type of which the operator
5586 is a primitive is private.
5587
97a8fb16
AC
55882009-04-20 Bob Duff <duff@adacore.com>
5589
5590 * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
5591 debugging output.
5592
55932009-04-20 Robert Dewar <dewar@adacore.com>
5594
5595 * sem_attr.adb: Minor reformatting
5596
5597 * gnatcmd.adb: Minor reformatting
5598
7340e432
AC
55992009-04-20 Ed Schonberg <schonberg@adacore.com>
5600
5601 * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
5602 overloaded and one interpretation matches the context, label the
5603 operand with the type of first formal.
5604
56052009-04-20 Bob Duff <duff@adacore.com>
5606
5607 * debug.ads: Minor comment fix.
5608
5609 * debug.adb: Minor comment fixes.
5610
56112009-04-20 Javier Miranda <miranda@adacore.com>
5612
5613 * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
5614
5615 * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
5616
5617 * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
5618 is expanded into a call to Raise_Exception, avoid passing the
5619 exception-name'identity in runtimes in which this argument
5620 is not used.
5621
bf06d37f
AC
56222009-04-20 Jerome Lambourg <lambourg@adacore.com>
5623
5624 * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
5625 generated bindings for cil.
5626
56272009-04-20 Ed Schonberg <schonberg@adacore.com>
5628
5629 * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
5630 discriminants, collect components from the Underlying_Record_View,
5631 which will be used in the expansion of the aggregate into assignments.
5632
5633 * sem_ch3.adb: Do not label derived type with unknown discriminants as
5634 having a private declaration.
5635
58a9d876
AC
56362009-04-20 Ed Schonberg <schonberg@adacore.com>
5637
5638 * exp_util.adb (Expand_Subtype_From_Expr): use the
5639 underlying_record_view when available, to create the proper constrained
5640 subtype for an object of a derived type with unknown discriminants.
5641
56422009-04-20 Javier Miranda <miranda@adacore.com>
5643
5644 * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
5645 formals that have pragma unreferenced.
5646
e34ca162
AC
56472009-04-20 Pascal Obry <obry@adacore.com>
5648
5649 * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
5650 Remove all calls to To_Lower_If_Case_Insensitive to preserve
5651 the pathname original casing.
5652
56532009-04-20 Robert Dewar <dewar@adacore.com>
5654
5655 * g-trasym.adb: Minor reformatting
5656
5657 * s-os_lib.adb: Minor reformatting
5658
5659 * sem.adb: Minor reformatting
5660 Minor code reorganization
5661
5662 * sem_ch3.adb: Minor reformatting
5663
5664 * sem_ch4.adb: Minor reformatting
5665
5666 * sem_ch8.adb: Minor reformatting
5667
5668 * sem_type.adb: Minor reformatting
5669
ee9aa7b6
AC
56702009-04-20 Javier Miranda <miranda@adacore.com>
5671
5672 * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
5673 generated by derivations of tagged types use the aliased subprogram a
5674 reference to locate their controlling type.
5675
56762009-04-20 Tristan Gingold <gingold@adacore.com>
5677
5678 * g-trasym.adb: Set size of result buffer before calling
5679 convert_address.
5680
56812009-04-20 Ed Schonberg <schonberg@adacore.com>
5682
5683 * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
5684 to a function returning an array can be interpreted as a call with
5685 defaulted parameters whose result is indexed, take into account the
5686 types of all the indices of the array result type.
5687
56882009-04-20 Pascal Obry <obry@adacore.com>
5689
5690 * a-direct.adb, s-os_lib.adb: Minor reformatting.
5691
bddd6058
AC
56922009-04-20 Ed Schonberg <schonberg@adacore.com>
5693
5694 * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
5695 null exclusion qualifiers for object renaming declarations.
5696
56972009-04-20 Nicolas Roche <roche@adacore.com>
5698
5699 * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
5700 unsigned long long. So compare local_time and utc_time before computing
5701 the difference.
5702
57032009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5704
5705 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
5706 of the Underlying_Record_View before that of the derived type.
5707
5708 * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
5709 with unknown discriminants with regard to the parent subtype.
5710
4f18d860
BD
57112009-04-20 Bob Duff <duff@adacore.com>
5712
5713 * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
5714 that are not included. This is necessary if the main unit is a generic
5715 instantiation.
5716
5717 * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
5718 because it doesn't work if -gnatn is used.
5719
5987e59c
AC
57202009-04-20 Ed Schonberg <schonberg@adacore.com>
5721
5722 * rtsfind.adb (RTE, RTE_Record_Component): In
5723 Configurable_Run_Time_Mode, do not enable front-end inlining.
5724
57252009-04-20 Thomas Quinot <quinot@adacore.com>
5726
5727 * g-socthi-vms.adb: Remove now unnecessary WITH clause on
5728 System.Address_To_Access_Conversions.
5729
57302009-04-20 Ed Schonberg <schonberg@adacore.com>
5731
5732 * sem.adb: Guard against ill-formed subunits.
5733
57342009-04-20 Bob Duff <duff@adacore.com>
5735
5736 * output.adb (Flush_Buffer): Do not indent blank lines.
5737 (Ignore_Output): New procedure for output suppression.
5738
57392009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
5740
5741 * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
5742 when it is positive. This avoids a potential constraint error raised
5743 by the conversion to Natural.
5744
57452009-04-20 Gary Dismukes <dismukes@adacore.com>
5746
5747 * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
5748 involves a target that has a specified address, don't set Forward_OK
5749 and Backward_OK to False if the rhs is an aggregate, since overlap
5750 can't occur.
5751
57522009-04-20 Ed Schonberg <schonberg@adacore.com>
5753
451800a0 5754 * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
5987e59c
AC
5755 in an object renaming declaration when the expected type is an
5756 anonymous access type.
5757
5758 * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
5759 ambiguity when one interpretation is an anonymous access type and the
5760 other is a named access type, and the context itself is anonymous
5761
57622009-04-20 Thomas Quinot <quinot@adacore.com>
5763
5764 * einfo.ads: Minor comment rewording
5765
5766 * sem_aggr.adb: Minor comment rewording
5767
5768 * sem_ch3.adb, sem_ch6.adb: Minor reformatting
5769
57702009-04-20 Pascal Obry <obry@adacore.com>
5771
5772 * adaint.c (__gnat_is_readable_file): Check for file existence
5773 when not using ACL (always the case on remote drives).
5774
8737a29a
AC
57752009-04-20 Robert Dewar <dewar@adacore.com>
5776
5777 * sinfo.ads: Minor comment fixes
5778
5779 * exp_disp.adb: Minor reformatting
5780
5781 * gnat1drv.adb: Minor reformatting
5782
5783 * output.adb: Minor reformatting
5784
5785 * s-vxwext-kernel.ads: Minor reformatting
5786
5787 * sem.ads: Minor reformatting
5788
5789 * sem.adb: Minor reformatting
5790
5791 * sem_elim.adb: Minor reformatting
5792
5793 * uname.ads: Minor reformatting
5794
57952009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5796
5797 * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
5798 a small dope of 4 words to the adjustment to the stack pointer.
5799
58002009-04-20 Thomas Quinot <quinot@adacore.com>
5801
5802 * xoscons.adb: generate C header s-oscons.h in
5803 addition to s-oscons.ads.
5804
5805 * socket.c: On VMS, use s-oscons.h.
5806
5807 * sem_ch3.adb: Minor reformatting
5808
5809 * exp_ch9.adb: Minor reformatting
5810
85087bcb
EB
58112009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5812
5813 * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
5814 (Attribute_to_gnu): Do not call check_for_eliminated_entity.
5815 (call_to_gnu): Likewise.
5816
ecc3905a
EB
58172009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5818
5819 * gcc-interface/trans.c (gigi): Declare the name of the compilation
5820 unit as the first global name at the very beginning.
5821
2907036d
TQ
58222009-04-20 Thomas Quinot <quinot@adacore.com>
5823
5824 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
5825 s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
5826 g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
5827 since HP-UX supports neither inet_aton nor inet_pton (altough the
5828 latter is part of the Single UNIX Specification!).
5829 So reorganize code, and share C implementation based on inet_addr(3)
5830 with VMS (instead of having a VMS specific Ada implementation in
5831 g-socthi-vms.adb).
5832
d5063351
AC
58332009-04-20 Gary Dismukes <dismukes@adacore.com>
5834
5835 * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
5836 to return the object file name saved by Set_Object_Output_File_Name.
5837
58382009-04-20 Emmanuel Briot <briot@adacore.com>
5839
5840 * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
5841 for the standard command line, when argc has been modified since the
5842 start of the application.
5843
58442009-04-20 Thomas Quinot <quinot@adacore.com>
5845
5846 * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
5847 WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
5848
3edf2f76
AC
58492009-04-20 Bob Duff <duff@adacore.com>
5850
5851 * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
5852 pragma Debug.
5853
58542009-04-20 Ed Schonberg <schonberg@adacore.com>
5855
5856 * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
5857 subprogram as Eliminated when source operation is.
5858 (Expand_N_Protected_Type_Declaration): Generate protected and
5859 unprotected specs for the internal operations, even if the source
5860 operation is eliminated.
5861
58622009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
5863
5864 * exp_ch3.adb (Make_Predefined_Primitive_Specs,
5865 Predefined_Primitive_Bodies): Do not create the declarations and bodies
5866 of the primitive subprograms associated with dispatching select
5867 statements when the runtime is in configurable mode.
5868
58692009-04-20 Ed Falis <falis@adacore.com>
5870
5871 * s-vxwext-kernel.ads (tickGet): Use tick64Get.
5872
4fd1e8b0
AC
58732009-04-20 Thomas Quinot <quinot@adacore.com>
5874
5875 * s-oscons-tmplt.c: Add support for generating a dummy version of
5876 s-oscons.ads providing all possible constants.
5877
5878 * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
5879
5880 * socket.c (__gnat_inet_pton): On Windows make sure we always use the
5881 ANSI version (not the UNICODE version) of WSAStringToAddress.
5882
58832009-04-20 Pascal Obry <obry@adacore.com>
5884
5885 * adaint.c (__gnat_set_OWNER_ACL): properly free memory
5886 allocated for the security descriptor and make sure all
5887 handles are closed before leaving this procedure.
5888
9013065b
AC
58892009-04-20 Javier Miranda <miranda@adacore.com>
5890
5891 * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
5892 (Set_Is_Underlying_Record_View): New subprogram
5893
5894 * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
5895 private types with unknown discriminants use the underlying record view
5896 if available.
5897
5898 * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
5899 underlying record view in the full view of private types whose parent
5900 has unknown discriminants.
5901 (Build_Derived_Record_Type): Avoid generating the class-wide entity
5902 associated with an underlying record view.
5903 (Derived_Type_Declaration): Avoid deriving parent primitives in
5904 underlying record views.
5905
5906 * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
5907 records with unknown discriminants.
5908
5909 * sem_type.adb (Covers): Handle underlying record views.
5910 (Is_Ancestor): Add support for underlying record views.
5911
5912 * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
5913 dispatching call if the type of the target object is tagged and has
5914 unknown discriminants.
5915
5916 * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
5917 unknown discriminants.
5918
5919 * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
5920 tables for internally built underlying record views.
5921
5922 * sprint.adb (sprint_node_actual): Improve output of aggregates with an
5923 empty list of component associations.
5924
59252009-04-20 Thomas Quinot <quinot@adacore.com>
5926
5927 * sem_ch10.adb: Minor reformatting
5928
5929 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
5930 g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
5931 (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
5932 standard inet_pton API (and emulate it on platforms that do not
5933 support it).
5934 (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
5935 DECC$INET_ADDR, imported in Ada.
5936 (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
5937 implementation provided by GNAT runtime.
5938 (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
5939 Windows.
5940
7289b80c
AC
59412009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5942
5943 * gnat_ugn.texi: Add documentation for -fno-ivopts.
5944
59452009-04-20 Ed Schonberg <schonberg@adacore.com>
5946
5947 * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
5948 with_clause if it is the main unit.
5949
c09a557e
AC
59502009-04-20 Thomas Quinot <quinot@adacore.com>
5951
5952 * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
5953 (no behaviour change): Use Append instead of Increment_Last followed
5954 by assignment.
5955
59562009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
5957
5958 * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
5959 declarations of all primitives associated with dispatching asynchronous,
5960 conditional and timed selects when dispaching calls are forbidden and
5961 select statements are not allowed (such as in Ravenscar).
5962 (Predefined_Primitive_Bodies): Ditto for bodies.
5963
5964 * exp_disp.ad (Make_DT): Do not create and populate the
5965 Select_Specific_Data of the dispatch table when dispatching calls are
5966 forbidden and select statements are not allowed (such as in Ravenscar).
5967
59682009-04-20 Robert Dewar <dewar@adacore.com>
5969
5970 * a-tifiio.adb: Minor reformatting
5971
59722009-04-20 Thomas Quinot <quinot@adacore.com>
5973
5974 * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
5975 other C library functions, report *failure* with a zero status, and
5976 success with a non-zero status.
5977
59782009-04-20 Bob Duff <duff@adacore.com>
5979
5980 * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
5981 (Semantics): After analyzing each unit, Append it to the
5982 Comp_Unit_List, if appropriate.
5983
5984 * gnat1drv.adb (Check_Library_Items): New procedure for debugging
5985 purposes.
5986 (Gnat1drv): Correct comment regarding Back_End_Mode.
5987
59882009-04-20 Eric Botcazou <ebotcazou@adacore.com>
5989
5990 * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
5991
7e728b0f
TQ
59922009-04-20 Thomas Quinot <quinot@adacore.com>
5993
5994 * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
5995 output.adb, output.ads, s-taprop-hpux-dce.adb,
5996 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
5997 reformatting.
5998
5e39baa6
TQ
59992009-04-20 Thomas Quinot <quinot@adacore.com>
6000
6001 * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
6002 g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
6003 (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
6004 (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
6005 except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
6006 (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
6007
6008 * debug.adb: Fix typo
6009
6010 * gnat_rm.texi: Minor doc fix.
6011
6012 * sem_ch7.adb, freeze.adb: Minor reformatting
6013
3568b271
AC
60142009-04-20 Thomas Quinot <quinot@adacore.com>
6015
6016 * g-socket.ads: Add new constants:
6017 Loopback_Inet_Addr
6018 Unspecified_Group_Inet_Addr
6019 All_Hosts_Group_Inet_Addr
6020 All_Routers_Group_Inet_Addr
6021
6022 * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
6023 ERANGE (Result too large).
6024 (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
6025 propagation of errno to caller.
6026
60272009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
6028
6029 * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
6030 to 24. Increment Leap_Seconds_Count and add an entry to aggregate
6031 Leap_Second_Times.
6032
60332009-04-20 Gary Dismukes <dismukes@adacore.com>
6034
6035 * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
6036 checking for references to eliminated subprograms that should be
6037 flagged.
6038 (Eliminate_Error_Message): Update comment to say "references" rather
6039 than "calls" (since attribute cases are handled here as well).
6040
6041 * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
6042 checking for references to eliminated subprograms that should be
6043 flagged. Add with and use of Sem and Sem_Util.
6044
6045 * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
6046 Add with and use of Sem_Elim.
6047
6048 * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
6049 applied to eliminated subprograms.
6050 (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
6051 eliminated subprograms.
6052 Add with and use of Sem_Elim.
6053
6054 * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
6055 to eliminated subprograms, now handled during Resolve_Call.
6056 Remove with and use of Sem_Elim.
6057
6058 * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
6059 testing Is_Eliminated, for proper handling of primitive derived from
6060 eliminated subprograms.
6061
60622009-04-20 Vincent Celier <celier@adacore.com>
6063
6064 * mlib-prj.adb (Build_Library): Use the shared library linker, if one
6065 has been declared (Library_GCC or Linker'Driver), for the driver name.
6066
6067 * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
6068 Linker'Driver is, use Linker'Driver as the shared library linker.
6069 (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
6070 Library_GCC is declared.
6071 (Check_Library_Attributes): Set up the shared linker driver: either
6072 Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
6073 declared.
6074
6e55ac7a
TQ
60752009-04-20 Thomas Quinot <quinot@adacore.com>
6076
6077 * g-socket.ads (Send_Socket): Fix misleading comment.
6078
68218f7c
AC
60792009-04-20 Arnaud Charlet <charlet@adacore.com>
6080
6081 * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
6082 ASIS mode.
6083
60842009-04-20 Geert Bosch <bosch@adacore.com>
6085
6086 * a-tifiio.adb (Put): Avoid generating too many digits for certain
6087 fixed types with smalls that are neither integer or the reciprocal
6088 of an integer.
6089
60902009-04-20 Bob Duff <duff@adacore.com>
6091
6092 * uname.ads: Minor comment fix.
6093
6094 * types.ads: Minor comment fix.
6095
262991d8
PO
60962009-04-20 Pascal Obry <obry@adacore.com>
6097
6098 * adaint.c (__gnat_get_libraries_from_registry): Fix code to
6099 avoid warning. At the same time fix a memory leak.
6100
6101 * osint.adb (Get_Libraries_From_Registry): Properly free memory
6102 returned by the above routine.
6103
d0f8d157
AC
61042009-04-20 Robert Dewar <dewar@adacore.com>
6105
6106 * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
6107 s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
6108 s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
6109 s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
6110
6111 * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
6112
61132009-04-20 Pascal Obry <obry@adacore.com>
6114
6115 * initialize.c (__gnat_initialize): Add braces to kill warning.
6116
262991d8 6117 * adaint.c: Minor reformatting, remove trailing spaces.
d0f8d157 6118
34c25b32
AC
61192009-04-17 Arnaud Charlet <charlet@adacore.com>
6120
6121 * gcc-interface/Make-lang.in: Update dependencies.
6122
9549767b
AC
61232009-04-20 Eric Botcazou <ebotcazou@adacore.com>
6124
6125 * adaint.h (__gnat_lwp_self): Declare on Linux.
6126
6127 * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
6128
61292009-04-20 Robert Dewar <dewar@adacore.com>
6130
6131 * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
6132 front-end part of -fpreserve-control-flow switch.
6133
d7f94401
AC
61342009-04-20 Bob Duff <duff@adacore.com>
6135
6136 * rtsfind.adb: Minor comment fix
6137
61382009-04-20 Robert Dewar <dewar@adacore.com>
6139
6140 * exp_aggr.adb: Minor reformatting
6141 Minor code reorganization (use Nkind_In)
6142
6143 * g-socket.adb: Minor reformatting
6144
6145 * g-socket.ads: Minor comment fix
6146
6147 * s-auxdec.ads: Minor comment and organization update.
6148
6149 * s-auxdec-vms_64.ads: Minor comment and organization update.
6150
6151 * sem_ch10.adb: Minor addition of ??? comment
6152
6153 * sem_disp.adb: Minor reformatting
6154
f8b86c2d
AC
61552009-04-20 Ed Schonberg <schonberg@adacore.com>
6156
6157 * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
6158 list a caller of an inlined subprogram, if the caller itself is not
6159 called.
6160
61612009-04-20 Pascal Obry <obry@adacore.com>
6162
6163 * adaint.c: Disable use of ACL on network drives.
6164
61652009-04-20 Arnaud Charlet <charlet@adacore.com>
6166
6167 * gnat_ugn.texi: Add examples.
6168
efec4f2a
TQ
61692009-04-20 Thomas Quinot <quinot@adacore.com>
6170
6171 * g-socket.ads (Abort_Selector): Clarify documentation.
6172
ff2e7c1e
AC
61732009-04-20 Arnaud Charlet <charlet@adacore.com>
6174
6175 * opt.ads (Inspector_Mode): Update documentation of this flag.
6176
61772009-04-20 Thomas Quinot <quinot@adacore.com>
6178
6179 * g-socket.ads: Minor reformatting
6180
6181 * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
6182 consider S_resolvLib error codes since we only use the hostLib wrappers.
6183
61842009-04-20 Eric Botcazou <ebotcazou@adacore.com>
6185
6186 * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
6187 of the Underlying_Record_View after that of the derived type.
6188
26a43556
AC
61892009-04-20 Arnaud Charlet <charlet@adacore.com>
6190
6191 * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
6192 in inspector mode.
6193
61942009-04-20 Javier Miranda <miranda@adacore.com>
6195
6196 * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
6197
6198 * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
6199 documentation.
6200
6201 * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
6202
6203 * sem_disp.adb
6204 (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
6205 in internally built overriding subprograms.
6206
62072009-04-20 Doug Rupp <rupp@adacore.com>
6208
6209 * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
6210
6211 * s-auxdec.ads: Likewise
6212
62132009-04-20 Ed Schonberg <schonberg@adacore.com>
6214
6215 * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
6216 type by an interface.
6217
6218 * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
6219 minimze difference in expanded tree when compiled as spec of the main
6220 unit, or as a spec in the context of another unit.
6221
3f25c54d
AC
62222009-04-20 Hristian Kirtchev <kirtchev@adacore.com>
6223
6224 * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
6225 (localtime_tzoff): This routine no longer accepts an actual of type
6226 tm_Pointer.
6227 (UTC_Time_Offset): Remove local variable Secs_TM.
6228
6229 * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
6230 actual of type struct tm*. Add local variable of type struct tm for all
6231 targets that provide localtime_r and need to invoke it.
6232
62332009-04-20 Thomas Quinot <quinot@adacore.com>
6234
6235 * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
6236 (GNAT.Sockets.Resolve_Error): Add case of EPIPE
6237 Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
6238
8dbf3473
AC
62392009-04-20 Robert Dewar <dewar@adacore.com>
6240
6241 * sem_ch3.adb: Minor reformatting
6242
6243 * lib-load.adb: Minor reformatting
6244
6245 * sem_ch4.adb: Minor reformatting
6246
62472009-04-20 Robert Dewar <dewar@adacore.com>
6248
6249 * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
6250 (equal values => False).
6251
62522009-04-20 Ed Schonberg <schonberg@adacore.com>
6253
6254 * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
6255 to null procedures can be inlined unconditionally.
6256
56fe7b05
EB
62572009-04-20 Eric Botcazou <ebotcazou@adacore.com>
6258
6259 * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
6260 non-addressable parameter passed by reference, do not convert the
6261 actual if its type is already the nominal type, unless it is of
6262 self-referential size.
6263
9fcf2a0b
AC
62642009-04-20 Arnaud Charlet <charlet@adacore.com>
6265
6266 * gnat_ugn.texi: Fix typos.
6267
62682009-04-20 Robert Dewar <dewar@adacore.com>
6269
6270 * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
6271 Validate_Unchecked_Warnings to suppress warnings about size or
6272 alignment or extra bits if either type involved has pragma Warnings
6273 (Off) set for the type entity.
6274
f7ebc6a8
EB
62752009-04-19 Eric Botcazou <ebotcazou@adacore.com>
6276
6277 * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
6278 a builtin type and give it a name.
6279
105ab5db
DN
62802009-04-17 Diego Novillo <dnovillo@google.com>
6281
6282 * gcc-interface/misc.c (gnat_expand_expr): Remove.
6283 (LANG_HOOKS_EXPAND_EXPR): Remove.
6284
03b64787
AC
62852009-04-17 Robert Dewar <dewar@adacore.com>
6286
6287 * sem_ch3.adb: Minor reformatting
6288
62892009-04-17 Pascal Obry <obry@adacore.com>
6290
6291 * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
6292
054275e4
ES
62932009-04-17 Ed Schonberg <schonberg@adacore.com>
6294
6295 * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
6296 illegal constraints on type derived from formal discrete types.
6297
aed6fda8
TQ
62982009-04-17 Thomas Quinot <quinot@adacore.com>
6299
6300 PR ada/35953
6301
6302 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
6303 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
6304 g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
6305 g-socket.ads (GNAT.Sockets.Thin.C_Send,
6306 GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
6307 Replace calls to send(2) with equivalent sendto(2) calls.
6308 (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
6309 (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
6310 report an error in that case. Factor code common to the two versions
6311 (datagram and stream) in common routine Stream_Write.
6312
c5d91669
AC
63132009-04-17 Robert Dewar <dewar@adacore.com>
6314
6315 * exp_disp.adb: Minor reformatting
6316 Minor code reorganization (use Nkind_In)
6317
6318 * prepcomp.adb: Minor reformatting
6319
6320 * sem_ch3.adb: Minor reformatting
6321
6322 * sem_res.adb: Minor comment addition
6323
6324 * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
6325 for address clause
6326
6327 * lib-xref.adb (Generate_Reference): Exclude recursive calls from
6328 setting Is_Referenced
6329
6330 * types.ads: Minor reformatting
6331
63322009-04-17 Arnaud Charlet <charlet@adacore.com>
6333
6334 * gnat_ugn.texi: Initial documentation on binding generator.
6335
39f346aa
ES
63362009-04-17 Ed Schonberg <schonberg@adacore.com>
6337
6338 * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
6339 type extensions whose parent is a type with unknown discriminants.
6340
6341 * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
6342 aggregate has unknown discriminants, use the Underlying_Record_View to
6343 obtain the discriminants of the ancestor part.
6344
6345 * exp_disp.adb (Build_Dispatch_Tables): Types that are
6346 Underlying_Record_Views share the dispatching information of the
6347 original record extension.
6348
6349 * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
6350 discriminants, propagate dispach table information to the
6351 Underlying_Record_View.
6352
6353 * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
6354 discriminants and declaration is not a completion, generate
6355 Underlying_Record_View to provide proper discriminant information to
6356 the front-end and to gigi.
6357
8c64de1e
RD
63582009-04-17 Robert Dewar <dewar@adacore.com>
6359
6360 * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
6361 s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
6362 s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
6363 g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
6364 s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
6365 s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
6366 g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
6367 s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
6368 g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
6369 s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
6370 s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
6371 s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
6372 s-conca3.ads: Remove unneeded pragma Warnings
6373
74e63df1
RD
63742009-04-17 Robert Dewar <dewar@adacore.com>
6375
6376 * g-moreex.adb: Add comments.
6377
6378 * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
6379
6380 * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
6381 Warnings (Off)
6382
6383 * prepcomp.adb: Add ??? comment
6384
6385 * a-tasatt.adb: Minor reformatting
6386
6387 * g-trasym-vms-alpha.adb: Add ??? comment
6388
6389 * g-trasym-vms-ia64.adb: Add ??? comment
6390
6391 * xoscons.adb: Minor reformatting
6392
6393 * s-tassta.adb: Minor reformatting
6394
6395 * s-scaval.adb: Add ??? comment
6396
6397 * stand.ads: Minor code clean up (remove junk with of Namet)
6398
6399 * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
6400 s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
6401 s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
6402 s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
6403 s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
6404 s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
6405 s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
6406 s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
6407 Warnings off pragmas.
6408
df416fb0
AC
64092009-04-17 Pascal Obry <obry@adacore.com>
6410
6411 * initialize.c: Fix test for reallocating the arguments array.
6412
64132009-04-17 Geert Bosch <bosch@adacore.com>
6414
6415 * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
6416 conversion truncate only for decimal fixed point types.
6417
64182009-04-17 Jerome Lambourg <lambourg@adacore.com>
6419
6420 * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
6421 reinitialized.
6422
01cd0938
AC
64232009-04-17 Robert Dewar <dewar@adacore.com>
6424
6425 * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
6426 Backwards_OK if either operand has an address clause.
6427
64282009-04-17 Pascal Obry <obry@adacore.com>
6429
6430 * initialize.c: Code clean up, use realloc.
6431
46e26fe3
PO
64322009-04-17 Pascal Obry <obry@adacore.com>
6433
6434 * initialize.c: Do not get Unicode command line if Unicode support not
6435 activated.
6436 Add support for wildcard expansion for Unicode parameters on Win32.
6437
6438 * mingw32.h: Add missing macros when Unicode support not activated.
6439
b20de9b9
AC
64402009-04-17 Javier Miranda <miranda@adacore.com>
6441
6442 * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
6443 avoid generating code that references the Current_Master
6444 when compiling without tasks.
6445
64462009-04-17 Vincent Celier <celier@adacore.com>
6447
6448 * prj-attr.adb: New project level attribute Target
6449
6450 * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
6451 attribute Target
6452
6453 * prj.ads (Project_Configuration): New component Target
6454
a8f59a33
AC
64552009-04-17 Thomas Quinot <quinot@adacore.com>
6456
6457 * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
6458 case for the case of an aggregate component, the attach call for the
6459 result is actually needed.
6460
6461 * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
6462 an array aggregate must be disabled if the component type requires
6463 controlled actions.
6464
6465 * exp_ch3.adb: Minor reformatting
6466
64672009-04-17 Bob Duff <duff@adacore.com>
6468
6469 * output.ads (Indent,Outdent): New procedures for indenting the output.
6470 (Write_Char): Correct comment -- LF _is_ allowed.
6471
6472 * output.adb (Indent,Outdent): New procedures for indenting the output.
6473 Keep track of the indentation level, and make sure it doesn't get too
6474 high.
6475 (Flush_Buffer): Insert spaces at the beginning of each line, if
6476 indentation level is nonzero.
6477 (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
6478 indentation level.
6479 (Set_Standard_Error,Set_Standard_Output): Remove superfluous
6480 "Next_Col := 1;". Flush_Buffer does that.
6481
6482 * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
6483 controlled by the -gnatdc switch. It now occurs on entry/exit to the
6484 relevant analysis routines, and calls Indent/Outdent to make the
6485 indentation reflect the nesting level. Add "helper" routines, since
6486 otherwise lots of "return;" statements would skip the debugging output.
6487
64882009-04-17 Arnaud Charlet <charlet@adacore.com>
6489
6490 * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
6491 s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
6492 s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
6493
32beb1f3
AC
64942009-04-17 Thomas Quinot <quinot@adacore.com>
6495
6496 * exp_aggr.adb: Minor code reorganization, no behaviour change.
6497
64982009-04-17 Ed Schonberg <schonberg@adacore.com>
6499
6500 * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
6501 clause in a unit that is a package body or a subunit, when the previous
6502 clause appears in a spec or a parent.
6503
36c73552
AC
65042009-04-17 Thomas Quinot <quinot@adacore.com>
6505
6506 * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
6507
6508 * exp_ch7.adb: Minor reformatting
6509
65102009-04-17 Bob Duff <duff@adacore.com>
6511
6512 * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
6513 allocator, check that the expression of the qualified expression obeys
6514 the constraints of the subtype of the qualified expression.
6515
65162009-04-17 Thomas Quinot <quinot@adacore.com>
6517
6518 * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
6519
cac5a801
AC
65202009-04-17 Ed Schonberg <schonberg@adacore.com>
6521
6522 * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
6523 aggregate, using context imposed by subtype mark in allocator.
6524
65252009-04-17 Pascal Obry <obry@adacore.com>
6526
6527 * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
6528
03f050b6
AC
65292009-04-17 Nicolas Roche <roche@adacore.com>
6530
6531 * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
6532 argument length.
6533
65342009-04-17 Gary Dismukes <dismukes@adacore.com>
6535
6536 * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
6537 cover both calls and attribute references ("call" => "reference").
6538
65392009-04-17 Ed Schonberg <schonberg@adacore.com>
6540
6541 * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
6542 type for which Storage_Size is set to 0 is legal in a pure unit.
6543
bf327c92
AC
65442009-04-17 Thomas Quinot <quinot@adacore.com>
6545
6546 * exp_ch7.adb: Minor reformatting
6547
65482009-04-17 Robert Dewar <dewar@adacore.com>
6549
6550 * restrict.adb (Check_Restriction_No_Dependence): Don't check
6551 restriction if outside main extended source unit.
6552
6553 * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
6554 for parents of child units as well as the child unit itself.
6555
65562009-04-17 Bob Duff <duff@adacore.com>
6557
6558 * checks.ads: Minor comment fix
6559
6560 * exp_aggr.ads: Minor comment fix
6561
65622009-04-17 Nicolas Roche <roche@adacore.com>
6563
6564 * adaint.c: Improve cross compiler detection and handling.
6565
ffec8e81
AC
65662009-04-17 Eric Botcazou <ebotcazou@adacore.com>
6567
6568 * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
6569
65702009-04-17 Pascal Obry <obry@adacore.com>
6571
6572 * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
6573 CurrentCodePage.
6574
6575 * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
6576 value when no encoding form paramter is set on Text_IO services.
6577
6578 * adaint.c: CurrentCodePage new variable on Windows.
6579 Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
6580 ones.
6581
6582 * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
6583 ones.
6584
6585 * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
6586 environment variable value. Default is UTF-8.
6587
6588 * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
6589 fopen and freopen encoding parameter is now set to Unspecified.
6590 The default value is in this case UTF-8 (as it was before) but
6591 use the new macros that convert to/from the code page set
6592 at runtime (CurrentCodePage).
6593
6594 * s-fileio.adb: When no encoding specified use Unspecified value.
6595
65962009-04-17 Ed Schonberg <schonberg@adacore.com>
6597
6598 * atree.adb, atree.ads: Remove dead code.
6599
432e3422
AC
66002009-04-17 Arnaud Charlet <charlet@adacore.com>
6601
6602 * gcc-interface/Make-lang.in: Update dependencies.
6603
f3b01cd9
AC
66042009-04-17 Ed Schonberg <schonberg@adacore.com>
6605
6606 * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
6607 illegal uses of incomplete types in formal parts and return types.
6608
6609 * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
6610 access to subprograms.
6611
6612 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
6613 Taft-amendment types as the return type of an access_to_function type.
6614
6615 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
6616 type for access_to_subprograms. The check is performed on package exit.
6617
66182009-04-17 Ed Schonberg <schonberg@adacore.com>
6619
6620 * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
6621
6622 * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
6623
6624 * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
6625
6626 * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
6627 semantic units, because the handling of itypes in the copied tree
6628 requires semantic information that does not belong in atree.
6629
66302009-04-17 Robert Dewar <dewar@adacore.com>
6631
6632 * par-ch6.adb: Minor reformatting
6633
6634 * prj.adb: Minor reformatting
6635
618fb570
AC
66362009-04-17 Gary Dismukes <dismukes@adacore.com>
6637
6638 * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
6639 on protected subprogram bodies, so exclude the case where Pf_Flags is
6640 Pf_Decl_Pbod from the error check.
6641
6642 * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
6643 indicators on subprograms in protected bodies, and proceed with parsing
6644 the subprogram.
6645
6646 * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
6647 subprograms from the check for primitiveness on subprograms with
6648 overriding indicators.
6649 (Check_Overriding_Indicator): Include protected subprograms in the
6650 style check for missing overriding indicators.
6651
66522009-04-17 Tristan Gingold <gingold@adacore.com>
6653
6654 * init.c: Fix stack checking for x86 Darwin.
6655
66562009-04-17 Vincent Celier <celier@adacore.com>
6657
6658 * prj-attr.adb: New project level attribute Object_File_Suffix
6659 (<language>).
6660
6661 * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
6662 object file name
6663 (Process_Compiler): Process attribute Object_File_Suffix
6664
6665 * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
6666 platform suffix, when specified.
6667
6668 * prj.ads (Language_Config): New component Object_File_Suffix,
6669 defaulted to No_Name.
6670 (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
6671
6672 * snames.ads-tmpl: New standard name Object_File_Suffix
6673
93bcda23
AC
66742009-04-17 Robert Dewar <dewar@adacore.com>
6675
6676 * gnat_rm.texi: Add documentation about No_Streams restriction
6677
6678 * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
6679 attributes when checking No_Streams restriction.
6680
66812009-04-17 Thomas Quinot <quinot@adacore.com>
6682
6683 * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
6684
6685 * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
6686 missing calls to RE_Request_Destroy to deallocate request objects after
6687 use.
6688
66892009-04-17 Nicolas Setton <setton@adacore.com>
6690
6691 * link.c: Fix support for passing a response file under Darwin.
6692
66932009-04-17 Emmanuel Briot <briot@adacore.com>
6694
6695 * prj.adb (Free): new subprogram.
6696
66972009-04-17 Ed Schonberg <schonberg@adacore.com>
6698
6699 * sem_ch3.adb: additional initialization on incomplete subtypes.
6700
6701 * sem_ch6.adb (Process_Formals): if the subprogram is in the private
6702 part and one of the formals is an incomplete tagged type, attach to
6703 list of private dependends of the type for later validation.
6704
6705 * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
6706 primitive operations of a Taft-amendmment type.
6707
6708 * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
6709 type. The check is performed on package exit, possibly after the
6710 subprogram is frozen.
6711
67122009-04-17 Vincent Celier <celier@adacore.com>
6713
6714 * prj-nmsc.adb (Get_Directories): Get the object and exec directory
6715 before looking for source directories, but make sure that there are nil
6716 if they are not explicitely declared and there is explicitely no
6717 sources in the project.
6718
ba4a2f78 67192009-04-17 Pascal Obry <obry@adacore.com>
78246a6e 6720
ba4a2f78 6721 * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
78246a6e 6722
ba4a2f78 6723 * init.c: Fix minor typo and style fix.
ee00428a 6724
ba4a2f78 67252009-04-17 Robert Dewar <dewar@adacore.com>
ee00428a 6726
ba4a2f78 6727 * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
ee00428a 6728
ba4a2f78
AC
6729 * sem_attr.adb (Analyze_Attribute, case Address): Use
6730 PE_Address_Of_Intrinsic.
6731
6732 * types.ads: Add PE_Address_Of_Intrinsic
6733
6734 * types.h: Add PE_Address_Of_Intrinsic
6735
67362009-04-17 Nicolas Setton <setton@adacore.com>
6737
6738 * gcc-interface/Makefile.in: Under darwin, build shared libraries
6739 with install_name starting with "@rpath/".
ee00428a
AC
6740
67412009-04-17 Nicolas Setton <setton@adacore.com>
6742
6743 * link.c: Add darwin section
6744
9fbb3ae6
AC
67452009-04-16 Robert Dewar <dewar@adacore.com>
6746
6747 * g-pehage.adb: Minor reformatting
6748
6749 * sem_ch12.adb: Minor reformatting
6750
6751 * exp_dist.adb: Minor reformatting
6752
6753 * bindgen.adb: Minor style fixes.
6754
67552009-04-16 Ed Schonberg <schonberg@adacore.com>
6756
6757 * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
6758 indexed components to the case where the prefix is a static string
6759 literal.
6760
67612009-04-16 Javier Miranda <miranda@adacore.com>
6762
6763 * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
6764 objects avoid any further expansion of the expression initializing the
6765 object.
6766
c1c5e0fa
AC
67672009-04-16 Ed Schonberg <schonberg@adacore.com>
6768
6769 * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
6770 that hides an outer homograph, make that homograph invisible when
6771 analyzing the actuals, to to prevent illegal direct visibility on it.
6772
67732009-04-16 Eric Botcazou <ebotcazou@adacore.com>
6774
6775 * g-pehage.adb (Initialize): Fix off-by-one error.
6776
d15d61c6
AC
67772009-04-16 Tristan Gingold <gingold@adacore.com>
6778
6779 * init.c: Detect real stack overflow on Darwin.
6780
6781 * system-darwin-x86.ads: Use stack probing on darwin x86.
6782
67832009-04-16 Ed Schonberg <schonberg@adacore.com>
6784
6785 * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
6786 take the address of an intrinsic subprogram.
6787
0a0a18c3
AC
67882009-04-16 Arnaud Charlet <charlet@adacore.com>
6789
6790 * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
6791 for the targets where GNAT.Traceback.Symbolic is not supported.
6792
d15d61c6
AC
67932009-04-16 Vincent Celier <celier@adacore.com>
6794
6795 * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
6796
6797 * g-trasym.ads: Update comments.
6798
67992009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
6800
6801 * tracebak.c (STOP_FRAME): Verify validity of the current address
6802 before dereferencing.
6803
b61ebe4f
AC
68042009-04-16 Ed Schonberg <schonberg@adacore.com>
6805
6806 * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
6807 the original location of the index expressions and the index subtypes,
6808 to prevent spurious out-of-scope references in gigi.
6809
68102009-04-16 Tristan Gingold <gingold@adacore.com>
6811
6812 * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
6813 Add support for stack checking on darwin.
6814
68152009-04-16 Vincent Celier <celier@adacore.com>
6816
6817 * prj-attr.adb: New attribute Runtime_Source_Dir
6818
6819 * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
6820 attribute Runtime_Source_Dir.
6821 (Check_Naming_Schemes): Give default values to out parameters to avoid
6822 invalid data.
6823
6824 * prj.ads (Language_Config): New component Runtime_Source_Dir
6825
6826 * snames.ads-tmpl: New standard name Runtime_Source_Dir
6827
468ee337
PO
68282009-04-16 Pascal Obry <obry@adacore.com>
6829
6830 * adaint.h, adaint.c (__gnat_rmdir): New routine.
6831 Simple wrapper routines used to convert to proper encoding on
6832 Windows.
6833
6834 * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
6835
6836 * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
6837 twice.
6838
bca17d51
PO
68392009-04-16 Pascal Obry <obry@adacore.com>
6840
6841 * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
6842
4e0079cc
AC
68432009-04-16 Thomas Quinot <quinot@adacore.com>
6844
6845 * snames.ads-tmpl (Name_Defined): New predefined name for use by the
6846 integrated preprocessor.
6847
6848 * prep.ads, prep.adb (Setup_Hooks): New subprogram.
6849 (Initialize): Split into two subprograms, Initialize (to be called
6850 prior to compiler command line processing) and Setup_Hooks (to be called
6851 later on when the first source file is loaded).
6852
6853 * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
6854 Add call to Prep.Initialize.
6855
6856 * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
6857 to Prep.Setup_Hooks.
6858
68592009-04-16 Pascal Obry <obry@adacore.com>
6860
6861 * adaint.h, adaint.c (__gnat_chdir): New routine.
6862 Simple wrapper routines used to convert to proper encoding on
6863 Windows.
6864
6865 * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
6866
6867 * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
6868
cbbdee52
AC
68692009-04-16 Quentin Ochem <ochem@adacore.com>
6870
6871 * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
6872 of Source.Init.
6873
68742009-04-16 Eric Botcazou <ebotcazou@adacore.com>
6875
6876 * a-convec.ads (Is_Empty): Mark inline.
6877
68782009-04-16 Nicolas Roche <roche@adacore.com>
6879
6880 * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
6881
68822009-04-16 Thomas Quinot <quinot@adacore.com>
6883
6884 * prepcomp.adb: Minor reformatting
6885
7e8ed0a6
AC
68862009-04-16 Jerome Lambourg <lambourg@adacore.com>
6887
6888 * sem_prag.adb (Process_Import_Or_Interface): With .NET,
6889 Access_Subprogram types can also be imported.
6890 (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
6891 names.
6892
68932009-04-16 Ed Schonberg <schonberg@adacore.com>
6894
6895 * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
6896 preserve homonym chain when the declaration is rewritten into a
6897 renaming declaration, in order to preserve visibility structure.
6898
540b5d9c
AC
68992009-04-16 Jerome Lambourg <lambourg@adacore.com>
6900
6901 * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
6902 taken into account for VM targets.
6903
69042009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
6905
6906 * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
6907 Year_Week_In_Year.
6908 (Year_Week_In_Year): New routine which contains the original code from
6909 Week_In_Year. Add the missing special case for January 1st falling on
6910 a Monday.
6911
dae4faf2
TQ
69122009-04-16 Thomas Quinot <quinot@adacore.com>
6913
6914 * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
6915 actual type, use the base type to build the To_Any function.
6916 (Build_From_Any_Function): Remove junk, useless subtype conversion.
6917
69182009-04-16 Thomas Quinot <quinot@adacore.com>
6919
6920 * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
6921 restrict.adb: Minor code reorganization (use
6922 Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
6923
2794f022
AC
69242009-04-16 Bob Duff <duff@adacore.com>
6925
6926 * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
6927 unused.
6928
69292009-04-16 Thomas Quinot <quinot@adacore.com>
6930
6931 * sem_ch4.adb: Minor reformatting
6932
6933 * adaint.c: Remove junk duplicated code.
6934
6935 * sem_ch3.adb: Minor reformatting
6936
6937 * exp_dist.adb: Minor comment rewording
6938
a8e65aa5
AC
69392009-04-16 Robert Dewar <dewar@adacore.com>
6940
6941 * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
6942 used together.
6943
69442009-04-16 Ed Schonberg <schonberg@adacore.com>
6945
6946 * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
6947 usable before calling Add_One_Interp, to resolve spurious ambiguities.
6948
bded454f
RD
69492009-04-16 Robert Dewar <dewar@adacore.com>
6950
b0fbf3c0
RD
6951 * Make-lang.in: Add entries for s-conca?.o
6952
bded454f
RD
6953 * Makefile.rtl: Add entries for s-conca?
6954
6955 * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
6956 of concatenation expansion
6957
6958 * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
6959 string cases instead of expanding assignments inline.
6960
6961 * opt.ads (Optimize_Size): New flag
6962
6963 * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
6964 s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
6965 s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
6966 s-conca9.adb, s-conca9.ads: New file.
6967
4a3b249c
RD
69682009-04-16 Robert Dewar <dewar@adacore.com>
6969
6970 * exp_ch6.adb: Add comments
6971
6972 * rtsfind.ads: Add entries for s-conca? routines
6973
e8e028cb 69742009-04-16 Arnaud Charlet <charlet@adacore.com>
14814170
AC
6975
6976 * gcc-interface/Make-lang.in: Update dependencies.
6977
6978 * gcc-interface/Makefile.in: Update translation for vms.
6979
3204b9cd
AC
69802009-04-16 Ed Schonberg <schonberg@adacore.com>
6981
6982 * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
6983 and made global, to be used when installing parents of a child
6984 instance, to provide mappings for entities declared in formal packages
6985 of ancestor units. Now called from Install_Formal_Packages.
6986
69872009-04-16 Doug Rupp <rupp@adacore.com>
6988
6989 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
6990 notation for clarity.
6991
6992 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
6993 s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
6994 s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
6995 (Initialize): Initialize Known_Tasks with Environment task.
6996
6997 * s-taskin.ads (Task_States): Move new states to end for the sake of
6998 GDB compatibility.
6999
7000 * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
7001
f17f3601
ES
70022009-04-16 Ed Schonberg <schonberg@adacore.com>
7003
7004 * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
7005 operation has an inline pragma, propagate the flag to the internal
7006 unprotected subprogram.
7007
5e44c5ea
DR
70082009-04-16 Doug Rupp <rupp@adacore.com>
7009
7010 * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
7011 s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb,
7012 s-taprop-hpux-dce.adb, s-taprop-posix.adb
7013 (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
7014
7015 * s-taprop-vms.adb (Enter_Task): Likewise.
7016 (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
7017
7018 * s-tassta.adb (Activate_Tasks): After task creation set state to
7019 Activating, vice Runnable. Initialize Known_Tasks, moved here from
7020 s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
7021 Set state to Runnable after above.
7022 (Task_Wrapper): Set Debug_Event_Run. In exception block set
7023 Debug_Event_Terminated.
7024
7025 * s-taskin.ads (Task_States): Add new states Activiting and
7026 Activator_Delay_Sleep.
7027 (Bit_Array, Debug_Event_Array): New types.
7028 (Global_Task_Debug_Event_Set: New flag.
7029 (Common_ATCB): New field Debug_Events.
7030
7031 * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
7032
7033 * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
7034 Activator_Sleep.
7035
7036 * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
7037 Activating and when Acceptor_Delay_Sleep.
7038
7039 * s-tasdeb.ads: Add constants for Debug_Events.
7040 (Debug_Event_Kind_Type): New subtype.
7041 (Signal_Debug_Event): New subprogram.
7042
7043 * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
7044
205c14b0
TQ
70452009-04-16 Thomas Quinot <quinot@adacore.com>
7046
7047 * sem_elim.adb: Minor reformatting
7048
7049 * freeze.adb: Minor reformatting
7050
7051 * exp_ch4.adb: Minor reformatting
7052
b4763f5c
AC
70532009-04-16 Emmanuel Briot <briot@adacore.com>
7054
7055 * prj-nmsc.adb (Path_Name_Of): fix memory leak
7056
70572009-04-16 Robert Dewar <dewar@adacore.com>
7058
7059 * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
7060
70612009-04-16 Vincent Celier <celier@adacore.com>
7062
7063 * fmap.adb (Initialize): Show the current line when the mapping file
7064 is detected as "incorrectly formatted".
7065
70662009-04-16 Robert Dewar <dewar@adacore.com>
7067
7068 * sem_ch12.adb: Minor reformatting
7069
7070 * sem_ch5.adb: Minor comment addition
7071
7072 * sem_util.adb: Minor reformatting
7073
7074 * sinput-p.adb: Minor reformatting
7075 Add missing pragma Warnings (On)
7076
0c72247e
AC
70772009-04-16 Ed Falis <falis@adacore.com>
7078
7079 * s-vxwext-kernel.adb: (ERROR): deleted unused constant
7080
70812009-04-16 Vincent Celier <celier@adacore.com>
7082
7083 * ali-util.adb: Minor comment spelling error fix
7084
014caddb
EB
70852009-04-16 Eric Botcazou <ebotcazou@adacore.com>
7086
7087 * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
7088 generate an assignment loop in case of overlap.
7089
b2ed7a03
AC
70902009-04-16 Olivier Hainque <hainque@adacore.com>
7091
7092 * gnat_ugn.texi (gnatmem description): Make it explicit that
7093 gnatmem is designed to work in association with static runtime
7094 library only.
7095
70962009-04-16 Thomas Quinot <quinot@adacore.com>
7097
7098 * sem_type.adb: Minor reformatting
7099
71002009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
7101
7102 * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
7103 concerning return codes of gettimeofday and return value check.
7104
71052009-04-16 Ed Falis <falis@adacore.com>
7106
7107 * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
7108 body can be renaming of imported routines.
7109
71102009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
7111
7112 * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
7113 targeted fashion.
7114
8a912a6e
AC
71152009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
7116
7117 * exp_ch9.adb: Comment improvements.
7118 (Build_Entry_Family_Name): Add parentheses around the index of a entry
7119 family member.
7120
71212009-04-15 Bob Duff <duff@adacore.com>
7122
7123 * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
7124 "while X /= null loop" where X is unchanged inside the loop. We were
7125 not warning in this case, because of the pointers -- we feared that the
7126 loop variable could be updated via a pointer, if there are any pointers
7127 around the place. But that is impossible in this case.
7128
7129 * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
7130 the case of dereferences. In X.all, X cannot be an l-value. We now
7131 catch that case (and implicit dereferences, too).
7132
71332009-04-15 Vincent Celier <celier@adacore.com>
7134
7135 * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
7136
71372009-04-15 Ed Schonberg <schonberg@adacore.com>
7138
7139 * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
7140 From code reading.
7141 (Analyze_Package_Instantiation): If generic unit in child instance is
7142 the same as generic unit in parent instance, look for an outer homonym
7143 to locate the desired generic.
7144
4a13695c
AC
71452009-04-15 Bob Duff <duff@adacore.com>
7146
7147 * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
7148 warnings unless the loop comes from source, because checking generated
7149 loops is a waste of time, and makes it harder to debug
7150 Check_Infinite_Loop_Warning.
7151
7152 * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
7153 tested in the while loop is a renaming, do not warn. Otherwise, we get
7154 false alarms, because it's usually renaming something that we can't
7155 deal with (an indexed component, a global variable, ...).
7156
7157 * gnat_rm.texi: Fix typo
7158
71592009-04-15 Thomas Quinot <quinot@adacore.com>
7160
7161 * sem_ch6.adb: Minor reformatting
7162
c3b36d48
AC
71632009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
7164
7165 * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
7166 immediate parent of the controlled function call is a component
7167 association.
7168
71692009-04-15 Ed Schonberg <schonberg@adacore.com>
7170
7171 * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
7172 corresponding class-wide type is also in use.
7173
71742009-04-15 Thomas Quinot <quinot@adacore.com>
7175
7176 * frontend.adb: Minor comment fix
7177
1f07382d
AC
71782009-04-15 Robert Dewar <dewar@adacore.com>
7179
7180 * gnatchop.adb (BOM_Length): New global variable
7181 (Write_Unit): Add new parameter Write_BOM
7182 (Write_Chopped_Files): Check for BOM and set Write_BOM for call
7183 to Write_Unit
7184
7185 * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
7186
71872009-04-15 Geert Bosch <bosch@adacore.com>
7188
7189 * system-mingw-x86_64.ads, system-darwin-x86_64.ads
7190 (Backend_Overflow_Checks): Set to True.
7191
71922009-04-15 Gary Dismukes <dismukes@adacore.com>
7193
7194 * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
7195 keyword is given in a record extension.
7196
71972009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
7198
7199 * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
7200 of a controlled function call in the context of a record aggregate.
7201 This does not apply to array aggregates since the call will be expanded
7202 into assignments.
7203
72042009-04-15 Ed Falis <falis@adacore.com>
7205
7206 * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
7207 s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
3405870d
EF
7208 s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
7209 s-osinte-vxworks* and s-vxwext*.
1f07382d 7210
6cc60200
AC
72112009-04-15 Arnaud Charlet <charlet@adacore.com>
7212
7213 * gcc-interface/Make-lang.in: Update dependencies.
7214
7215 * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
7216 and s-vxwext*.
7217
f66d46ec
AC
72182009-04-15 Robert Dewar <dewar@adacore.com>
7219
7220 * sem_ch13.adb (Unchecked_Conversions): Store source location instead
7221 of node for location for warning messages.
7222
7223 * gnatchop.adb: Minor reformatting
7224
72252009-04-15 Ed Schonberg <schonberg@adacore.com>
7226
7227 * exp_ch6.adb: additional guard for renaming declarations for in
7228 parameters of an array type.
7229
bafc9e1d
AC
72302009-04-15 Robert Dewar <dewar@adacore.com>
7231
7232 * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
7233 in case they were rewritten by expander (Force_Evaluation).
7234
7235 * targparm.adb (Get_Target_Parameters): Correct check for
7236 Suppress_Exception_Locations.
7237
72382009-04-15 Ed Schonberg <schonberg@adacore.com>
7239
7240 * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
7241 inlined is of an array type that is not bit-packed, use a renaming
7242 declaration to capture its value, rather than a constant declaration.
7243
443614e3
AC
72442009-04-15 Robert Dewar <dewar@adacore.com>
7245
7246 * rtsfind.adb: Minor reformatting.
7247
72482009-04-15 Emmanuel Briot <briot@adacore.com>
7249
7250 * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
7251 Restore, and free the saved context.
7252
72532009-04-15 Gary Dismukes <dismukes@adacore.com>
7254
7255 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
7256 for illegal private extension from a synchronized interface parent in
7257 front of check for illegal limited extension so that limited extension
7258 from a synchronized interface will be rejected.
7259 (Check_Ifaces): Check that a private extension that has a synchronized
7260 interface as a progenitor must be explicitly declared synchronized.
7261 Also check that a record extension cannot derive from a synchronized
7262 interface.
7263
991395ab
AC
72642009-04-15 Pascal Obry <obry@adacore.com>
7265
7266 * adaint.h (__gnat_unlink): Add spec.
7267 (__gnat_rename): Likewise.
7268
72692009-04-15 Vincent Celier <celier@adacore.com>
7270
7271 * prj-nmsc.adb: Minor spelling error corrections in error messages
7272
72732009-04-15 Robert Dewar <dewar@adacore.com>
7274
7275 * sinfo.ads: Minor comment update
7276
7277 * opt.ads: Minor comment updates
7278
7279 * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
7280 modular type.
7281
72822009-04-15 Ed Schonberg <schonberg@adacore.com>
7283
7284 * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
7285 that generates the code needed to update a dispatch table when a
7286 primitive operation is declared with a subprogram body without previous
7287 spec. Insertion of the generated code is responsibility of the caller.
7288 (Make_DT): When building static tables, append the code created by
7289 Register_Primitive to update a secondary table after it has been
7290 constructed.
7291
7292 * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
7293
7294 * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
7295 on an overriding operation that implements an interface operation only
7296 if not building static dispatch tables.
7297
72982009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
7299
7300 * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
7301 does not cause overflow when converted to Duration. Use the safe value
7302 as the maximum allowable time delay..
7303
73042009-04-15 Jerome Lambourg <lambourg@adacore.com>
7305
7306 * g-comlin.adb (Set_Command_Line): When adding a switch with attached
7307 parameter, specify that the delimiter is NUL, otherwise "-j2" will be
7308 translated to "-j 2".
7309
73102009-04-15 Bob Duff <duff@adacore.com>
7311
7312 * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
7313 with_clauses, to avoid code duplication. Change this processing so we
7314 always add a with_clause on the main unit if needed.
7315
55cc1a05
AC
73162009-04-15 Pascal Obry <obry@adacore.com>
7317
7318 Add support for Win32 native encoding for delete/rename routines.
7319
7320 * adaint.c (__gnat_unlink): New routine.
7321 (__gnat_rename): New routine.
7322 Simple wrapper routines used to convert to proper encoding on
7323 Windows.
7324
7325 * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
7326 call to the C library.
7327
7328 * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
7329
73302009-04-15 Robert Dewar <dewar@adacore.com>
7331
7332 * s-tassta.adb: Minor reformatting
7333
1f6821b4
AC
73342009-04-15 Robert Dewar <dewar@adacore.com>
7335
7336 * frontend.adb (Frontend): Set proper default for
7337 Warn_On_Non_Local_Exception.
7338
7339 * opt.ads (Exception_Handler_Encountered): New flag
7340 (No_Warn_On_Non_Local_Exception): New flag
7341
7342 * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
7343
7344 * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
7345 (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
7346
73472009-04-15 Cyrille Comar <comar@adacore.com>
7348
7349 * s-tassta.adb, a-exextr.adb, a-elchha.adb
7350 (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
7351 message when exception traces are active since it would generate
7352 redundant information.
7353 (Exception_Traces.Notify_Exception): put message output by a critical
7354 section to avoid unsynchronized output.
7355 (Trace_Unhandled_Exception_In_Task): put message output by a critical
7356 section to avoid unsynchronized output.
7357
73582009-04-15 Emmanuel Briot <briot@adacore.com>
7359
7360 * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
7361 (Free): New subprogram.
7362
8aec446b
AC
73632009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
7364
7365 * a-calend.adb: Add new constant Nanos_In_Four_Years.
7366 (Formatting_Operations.Time_Of): Change the way four year chunks of
7367 nanoseconds are added to the intermediate result.
7368
73692009-04-15 Nicolas Setton <setton@adacore.com>
7370
7371 * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
7372 does not need to wait for a carriage return.
7373
73742009-04-15 Tristan Gingold <gingold@adacore.com>
7375
7376 * bindgen.adb: Do not generate adafinal if No_Finalization restriction
7377 is set.
7378
73792009-04-15 Ed Schonberg <schonberg@adacore.com>
7380
7381 * freeze.adb (Freeze_Entity): improve error message for improper use of
7382 incomplete types.
7383 Diagnose additional illegal uses of incomplete types in formal parts.
7384 appearing in formal parts.
7385
7386 * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
7387
73882009-04-15 Robert Dewar <dewar@adacore.com>
7389
7390 * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
7391
442dd5fb
NR
73922009-04-15 Nicolas Roche <roche@adacore.com>
7393
7394 * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
7395 current thread.
7396
7397 * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
7398
7399 * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
7400
61bee0e3
AC
74012009-04-15 Ed Schonberg <schonberg@adacore.com>
7402
7403 * sem_ch4.adb: improve error message on exponentiation.
7404
74052009-04-15 Hristian Kirtchev <kirtchev@adacore.com>
7406
7407 * a-calend.adb: Move constant Epoch_Offset from package
7408 Conversion_Operations to top level.
7409 (Delay_Operations.To_Duration): Define a constant which represents
7410 "end of time" and use it as a guard against very distant delay dates.
7411 Protect the code against overflow when performing the origin shift to
7412 Unix time.
7413
361effb1
AC
74142009-04-15 Robert Dewar <dewar@adacore.com>
7415
7416 * sem_prag.adb: Minor reformatting.
7417
7418 * sem_type.adb: Minor reformatting
7419
74202009-04-15 Javier Miranda <miranda@adacore.com>
7421
7422 * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
7423 support to check eliminated subprograms.
7424
7425 * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
7426
7427 * sem_elim.adb (Set_Eliminated): Add support for elimination of
7428 dispatching subprograms.
7429
7430 * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
7431 operations. Initialize with "null" the slots of eliminated dispaching
7432 primitives.
7433 (Write_DT): Add output for eliminated primitives.
7434
7435 * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
7436
f7ca1d04
AC
74372009-04-15 Ed Schonberg <schonberg@adacore.com>
7438
7439 * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
7440 the second is redundant, regardless of scopes.
7441
74422009-04-15 Vincent Celier <celier@adacore.com>
7443
7444 * prj-nmsc.adb (Get_Directories): Check for sources before checking
7445 the object directory as when there are no sources, they may not be any
7446 object directory.
7447
7448 * make.adb (Gnatmake): Do not attempt to get the path name of the exec
7449 directory, when there are no exec directory.
7450
74512009-04-15 Ed Schonberg <schonberg@adacore.com>
7452
7453 * sem_type.adb (Remove_Conversions): In order to resolve spurious
7454 ambiguities, refine removal of universal interpretations from complex
7455 expressions with literal arguments, when some numeric operators have
7456 been declared abstract.
7457
74582009-04-15 Ed Falis <falis@adacore.com>
7459
7460 * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
7461 and backward compatibility for targets using probing for stack overflow
7462
74632009-04-15 Ed Schonberg <schonberg@adacore.com>
7464
7465 * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
7466 after any declaration, including renaming declarations.
7467
4bffd4e0
AC
74682009-04-15 Arnaud Charlet <charlet@adacore.com>
7469
7470 * gcc-interface/Make-lang.in: Update dependencies.
7471
7472 * gcc-interface/Makefile.in: Fix VxWorks target pairs.
cbd8be94 7473 Update xenomai target pairs.
4bffd4e0 7474
a523b302
JM
74752009-04-15 Javier Miranda <miranda@adacore.com>
7476
7477 * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
7478
7479 * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
7480 functions returning anonymous access to class-wide limited types. Mark
7481 also the containing scope as a task master.
7482
7483 * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
7484 limited-withed packages. Required to restore their visibility after
7485 processing packages associated with implicit with-clauses.
7486
7487 * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
7488 associated with return statements because this work is now done by
7489 Check_Anonymous_Return.
7490 (Build_Master): Code cleanup.
7491
e358346d
AC
74922009-04-15 Thomas Quinot <quinot@adacore.com>
7493
7494 * sem_warn.ads: Minor reformatting
7495
74962009-04-15 Ed Schonberg <schonberg@adacore.com>
7497
7498 * sem_ch3.adb: better error message for illegal interfaces
7499
7500 * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
7501 formal is an incomplete type from a limited_with clause.
7502
a9872a59
VC
75032009-04-15 Vincent Celier <celier@adacore.com>
7504
7505 * prj-nmsc.adb (Locate_Directory): New Boolean parameter
7506 Externally_Built indicating if the project is externally built. If it
7507 is, and --subdirs is specified, but the subdir does not exist, look
7508 for the specified directory, without the subdir.
7509
b8aadf01
AC
75102009-04-15 Gary Dismukes <dismukes@adacore.com>
7511
7512 * a-tasatt.adb: Fix typo, plus minor reformatting
7513
7514 * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
7515
7516 * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
7517
75182009-04-15 Ed Schonberg <schonberg@adacore.com>
7519
7520 * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
7521 private extension whose parent is a synchronized interface carries an
7522 explicit synchronized keyword.
7523
a808ba1b
TQ
75242009-04-15 Thomas Quinot <quinot@adacore.com>
7525
7526 * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
7527 instantiate generic shared object package with the corresponding
7528 record type.
7529
e0568eec
AC
75302009-04-15 Arnaud Charlet <charlet@adacore.com>
7531
7532 * system-linux-sparc.ads: Remove obsolete entries.
7533
75342009-04-15 Thomas Quinot <quinot@adacore.com>
7535
7536 * s-tasuti.ads: Add ??? comment
7537
28450a75
ES
75382009-04-15 Ed Schonberg <schonberg@adacore.com>
7539
7540 * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
7541 type even if the designated type comes from a limited_with clause, to
7542 ensure that the symbol for the finalization list of the access type is
7543 created.
7544
b0d3b11d
AC
75452009-04-10 Robert Dewar <dewar@adacore.com>
7546
7547 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
7548 for warning suppression.
7549
75502009-04-10 Ed Schonberg <schonberg@adacore.com>
7551
7552 * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
7553 identical, there is no redudancy to check.
7554
75552009-04-10 Gary Dismukes <dismukes@adacore.com>
7556
7557 * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
7558 calls initializing SS_Allocator (which is initialized in following
7559 code).
7560 (Expand_Simple_Function_Return): Add comment about False value for
7561 Comes_From_Source on secondary-stack allocator.
7562
7563 * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
7564 (Build_Entry_Name): Add comment.
7565
fad0600d
AC
75662009-04-10 Robert Dewar <dewar@adacore.com>
7567
7568 * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
7569
7570 * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
7571 bound tested, since this is now done more generally in Sem_Res.
7572
7573 * sem_res.adb (Resolve_Comparison_Op): Add call to
7574 Check_Lower_Bound_Tested.
7575 (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
7576
7577 * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
7578 (Low_Bound_Tested): New name for Low_Bound_Known flag
7579
7580 * exp_ch5.adb: Minor reformatting
7581
7582 * exp_ch4.adb:
7583 Add comments on copying the Comes_From_Source flag for allocators
7584
7585 * sinfo.ads:
7586 Add comments on copying the Comes_From_Source flag for allocators
7587
7588 * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
7589 Comes_From_Source flag from old allocator to new one.
7590
75912009-04-10 Ed Schonberg <schonberg@adacore.com>
7592
7593 * sem_ch6.ads: Address missing documentation query
7594
75952009-04-10 Vincent Celier <celier@adacore.com>
7596
7597 * prj-attr.adb:
7598 Add new Linker attributes Max_Command_Line_Length, Response_File_Format
7599 and Response_File_Switches.
7600
7601 * prj-nmsc.adb (Process_Linker): Process new attributes
7602 Max_Command_Line_Length, Response_File_Format and
7603 Response_File_Switches.
7604
7605 * prj.ads (Response_File_Format): New enumeration type
7606 (Project_Configuration): New componants Max_Command_Line_Length,
7607 Resp_File_Format and Resp_File_Options.
7608
7609 * snames.ads-tmpl: Add new standard names for linking response files
7610 for gprbuild: GNU, None, Object_List, Option_List,
7611 Max_Command_Line_Length, Response_File_Format and
7612 Response_File_Switches.
7613
76142009-04-10 Geert Bosch <bosch@adacore.com>
7615
7616 * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
7617 system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
7618 system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
7619 system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
7620 system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
7621 system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
7622 system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
7623 system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
7624 system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
7625 system-vxworks-arm.ads, system-vxworks-m68k.ads,
7626 system-vxworks-mips.ads, system-vxworks-ppc.ads,
7627 system-vxworks-sparcv9.ads, system-vxworks-x86.ads
7628 (Backend_Overflow_Checks): Set to True.
7629
934a3a25
AC
76302009-04-10 Thomas Quinot <quinot@adacore.com>
7631
7632 * exp_attr.adb: Minor reformatting
7633
76342009-04-10 Ed Schonberg <schonberg@adacore.com>
7635
7636 * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
7637 analyze the expression for a postcondition, even if the compiler mode
7638 is Generate_Code.
7639
ab8e1b35
RD
76402009-04-10 Robert Dewar <dewar@adacore.com>
7641
7642 * sem_aux.adb: Minor reformatting
7643
2c880bdf
EF
76442009-04-10 Ed Falis <falis@adacore.com>
7645
7646 * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
7647
7648 * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
7649
d8221f45
TQ
76502009-04-10 Thomas Quinot <quinot@adacore.com>
7651
7652 * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
7653 undocumented formal.
7654 Minor reformatting
7655
7656 * a-direio.ads: Fix typo in comment
7657
7658 * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
7659 errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
7660 Use uniform phrasing for comment at start of subprogram body.
7661
7662 * xsnamest.adb: Add note to explain why we use specific names for the
7663 newly generated files instead of generating snames.{ads,adb,h} directly
7664
f559e62f
AC
76652009-04-10 Sergey Rybin <rybin@adacore.com>
7666
7667 * vms_data.ads:
7668 Add qualifier for new gnatstub option '--no-exception'
7669
7670 * gnat_ugn.texi:
7671 Add the description of the new gnatstub option '--no-exception'
7672
76732009-04-10 Robert Dewar <dewar@adacore.com>
7674
7675 * rtsfind.adb: Minor reformatting
7676
76772009-04-10 Thomas Quinot <quinot@adacore.com>
7678
7679 * sem_disp.adb: Minor reformatting.
7680 Add comment pointing to RM clause for the case of warning against a
7681 (failed) attempt at declaring a primitive operation elsewhere than in a
7682 package spec.
7683
76842009-04-10 Ed Schonberg <schonberg@adacore.com>
7685
7686 * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
7687 an actual for a previous formal package of the current instance.
7688
e50e1c5e
AC
76892009-04-10 Bob Duff <duff@adacore.com>
7690
7691 * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
7692 them first, rather than on the extended main unit.
7693
76942009-04-10 Ed Schonberg <schonberg@adacore.com>
7695
7696 * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
7697 specification of full view carries a null exclusion indicator, create
7698 an itype for it, to check for conformance with partial view.
7699
cb736868
AC
77002009-04-10 Bob Duff <duff@adacore.com>
7701
7702 * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
7703
7704 * rtsfind.adb: Minor comment changes, and remove useless code.
7705
7706 * sinfo.ads: Add ??? comment.
7707
77082009-04-10 Vincent Celier <celier@adacore.com>
7709
7710 * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
7711
8a78c50d
AC
77122009-04-10 Ed Schonberg <schonberg@adacore.com>
7713
7714 * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
7715 type is a synchronized type, retrieve tag information from the
7716 corresponding record, which has the dispatch table link.
7717
77182009-04-10 Jerome Lambourg <lambourg@adacore.com>
7719
7720 * g-comlin.adb (Group_Analysis): Take care of switches that might be
7721 decomposed afterwards, but are present as-is in the command line
7722 configuration, and thus should be kept as-is.
7723
b66c3ff4
AC
77242009-04-10 Robert Dewar <dewar@adacore.com>
7725
7726 * gnat_rm.texi: Document that postconditions are tested on implicit
7727 returns.
7728
7729 * sem_aux.adb: Minor reformatting
7730
77312009-04-10 Gary Dismukes <dismukes@adacore.com>
7732
7733 * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
7734 setting Etype.
7735
7736 * par-ch3.adb (P_Access_Type_Definition): Set new attribute
7737 Null_Exclusion_In_Return_Present when an access-to-function type has a
7738 result type with an explicit not null.
7739
7740 * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
7741 given on the result type, then create a null-excluding itype for the
7742 function.
7743
7744 * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
7745 the case where a null exclusion is imposed on a named access type.
7746 (Analyze_Subprogram_Specification): Push and pop the scope of the
7747 function around the call to Analyze_Return_Type in the case of no
7748 formals, for consistency with handling when formals are present
7749 (Process_Formals does this). Ensures that any itype created for the
7750 return type will be associated with the proper scope.
7751
7752 * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
7753 exclusion is given on a generic function's result type, then create a
7754 null-excluding itype for the generic function.
7755 (Instantiate_Object): Set Null_Exclusion_Present of a constant created
7756 for an actual for a formal in object according to the setting on the
7757 formal. Ensures null exclusion checks are done when the association is
7758 elaborated.
7759
7760 * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
7761 N_Access_Function_Definition.
7762
7763 * sinfo.adb: Add Get_ and Set_ operations for
7764 Null_Exclusion_In_Return_Present.
7765
5334d18f
BD
77662009-04-10 Bob Duff <duff@adacore.com>
7767
7768 * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
7769 call to the _Postconditions procedure in the case of implicit returns
7770 from analysis to expansion. This eliminates some duplicated code. Use
7771 the Postcondition_Proc to find the identity of this procedure during
7772 expansion.
7773
701b7fbb
RD
77742009-04-10 Robert Dewar <dewar@adacore.com>
7775
7776 * sem_ch6.adb: Minor code clean up.
7777
7778 * einfo.ads, sem_attr.adb: Minor comment fixes.
7779
77802009-04-10 Robert Dewar <dewar@adacore.com>
7781
7782 * sem_ch8.adb: Minor reformatting
7783
7ca78bba
RD
77842009-04-10 Robert Dewar <dewar@adacore.com>
7785
7786 * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
7787 procedures.
7788
7789 * sem_ch6.adb: Minor code clean up.
7790
043ce308
AC
77912009-04-10 Robert Dewar <dewar@adacore.com>
7792
7793 * mlib-tgt-specific-xi.adb: Minor reformatting
7794
77952009-04-10 Bob Duff <duff@adacore.com>
7796
7797 * einfo.ads: Minor comment fixes
7798
77992009-04-10 Vincent Celier <celier@adacore.com>
7800
7801 * snames.ads-tmpl: Remove names that are no longer used in the
7802 Project Manager.
7803 Mark specifically those that are used only in gprbuild
7804
78052009-04-10 Eric Botcazou <ebotcazou@adacore.com>
7806
7807 * init.c: Adjust EH support code on Alpha/Tru64.
7808
78092009-04-10 Bob Duff <duff@adacore.com>
7810
7811 * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
7812 procedure on every path that could return implicitly (not via a return
7813 statement) from a procedure.
7814
78152009-04-10 Ed Schonberg <schonberg@adacore.com>
7816
7817 * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
7818 valid scope for a task declarations and therefore for a master id.
7819
78202009-04-10 Robert Dewar <dewar@adacore.com>
7821
7822 * sem_aux.adb: Minor reformatting
7823
78242009-04-10 Vincent Celier <celier@adacore.com>
7825
7826 * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
7827 True.
7828 (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
7829 (Set_Obsolescent_Check): New procedure to change the value of
7830 Obsolescent_Check_Flag.
7831
7832 * scn.ads (Set_Obsolescent_Check): New procedure to control
7833 Obsolescent_Check.
7834
7835 * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
7836 obsolescent features while preprocessing.
7837
550f4135
AC
78382009-04-10 Thomas Quinot <quinot@adacore.com>
7839
7840 * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
7841 generated files on all platforms.
7842
78432009-04-10 Robert Dewar <dewar@adacore.com>
7844
7845 * sem_aux.adb: Minor reformatting
7846
78472009-04-10 Ed Schonberg <schonberg@adacore.com>
7848
7849 * sem_ch3.adb (Access_Definition): Handle properly the case of a
7850 protected function with formals that returns an anonymous access type.
7851
78522009-04-10 Thomas Quinot <quinot@adacore.com>
7853
7854 * sem_disp.adb: Minor reformatting
7855
78562009-04-10 Vasiliy Fofanov <fofanov@adacore.com>
7857
7858 * seh_init.c: Do not use the 32-bit specific implementation of
7859 __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
7860 version TBD).
7861
78622009-04-10 Jose Ruiz <ruiz@adacore.com>
7863
7864 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
7865 a '/' at the end so we better use the complete target name to determine
7866 whether it is a PowerPC 55xx target.
7867
3996951a
TQ
78682009-04-10 Thomas Quinot <quinot@adacore.com>
7869
7870 * sem_eval.adb: Minor reformatting
7871
b62a90f2
AC
78722009-04-10 Thomas Quinot <quinot@adacore.com>
7873
7874 * snames.h, snames.ads, snames.adb: Remove files, now generated from
7875 templates.
7876
7877 * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
7878 above.
7879
7880 * xsnamest.adb: New file.
7881
7882 * gcc-interface/Make-lang.in: New target for automated generation of
7883 snames.ads, snames.adb and snames.h
7884
62298c61
TG
78852009-04-10 Tristan Gingold <gingold@adacore.com>
7886
7887 * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
7888 avoid compile time warnings.
7889 Do not add gcc/config in include search list while compiling the RTS.
7890 Pragma Thread_Local_Storage is available on any target.
7891
3764bb00
BD
78922009-04-10 Bob Duff <duff@adacore.com>
7893
7894 * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
7895
b3b9865d
AC
78962009-04-10 Tristan Gingold <gingold@adacore.com>
7897
7898 * init.c: Install signal handler on Darwin.
7899
79002009-04-10 Robert Dewar <dewar@adacore.com>
7901
7902 * sem_prag.adb: Minor reformatting
7903
7904 * exp_util.adb (Make_Non_Empty_Check): New function
7905 (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
7906 (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
7907
79082009-04-10 Arnaud Charlet <charlet@adacore.com>
7909
7910 * make.adb, gnatlink.adb: Rename JGNAT toolchain.
7911
79122009-04-10 Jose Ruiz <ruiz@adacore.com>
7913
7914 * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
7915 tool prefix for AVR and PowerPC 55xx targets.
7916
79172009-04-10 Robert Dewar <dewar@adacore.com>
7918
7919 * sem_warn.adb (Within_Postcondition): New function
7920 (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
7921
c5288c90
AC
79222009-04-10 Robert Dewar <dewar@adacore.com>
7923
7924 * sem_warn.adb: Minor reformatting
7925
7926 * make.adb: Minor reformatting.
7927
79282009-04-10 Gary Dismukes <dismukes@adacore.com>
7929
7930 * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
7931 entity and the scope is a subprogram, retrieve the Sloc of the
7932 subprogram's body rather than using the sloc of the spec, for better
7933 line-stepping behavior in gdb.
7934 (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
7935 controller, use the Sloc of the first declaration of the containing list
7936 rather than that of the node that triggered creation of the list
7937 controller.
7938
2844b330
AC
79392009-04-10 Vincent Celier <celier@adacore.com>
7940
7941 * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
7942 to avoid gcc warning.
7943
79442009-04-10 Robert Dewar <dewar@adacore.com>
7945
7946 * g-comlin.adb: Add ??? comment
7947
79482009-04-10 Ed Schonberg <schonberg@adacore.com>
7949
7950 * sem_warn.adb (Check_Unused_Withs): Do not emit message about
7951 unreferenced entities for a package with no visible declarations.
7952
79532009-04-10 Robert Dewar <dewar@adacore.com>
7954
7955 * exp_ch9.adb: Minor reformatting
7956
be21e9d8
AC
79572009-04-10 Thomas Quinot <quinot@adacore.com>
7958
7959 * sem_prag.adb: Minor reformatting
7960
79612009-04-10 Vincent Celier <celier@adacore.com>
7962
7963 * prj-nmsc.adb:
7964 (Check_Library_Attributes): For a project qualified as a library project
7965 that is not a library project, indicate in the error message which
7966 attributes are missing (Library_Dir and/or Library_Name).
7967
4a7dedcb
BD
79682009-04-10 Bob Duff <duff@adacore.com>
7969
7970 * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
7971 generated nodes, because it might confuse various circuits in the FE.
7972
4017021b
AC
79732009-04-10 Ed Schonberg <schonberg@adacore.com>
7974
7975 * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
7976 of pragma. It will be recopied and analyzed when used in call to
7977 Create_Task.
7978
7979 * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
7980 initialization operations and recognize use of it in procedure calls
7981 within init_procs.
7982
7983 * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
7984 argument, because it may have side-effects.
7985
7986 * exp_ch2.adb: Remove obsolete comments on default functions
7987
79882009-04-10 Jose Ruiz <ruiz@adacore.com>
7989
7990 * adaint.c (RTX section): Do for RTX the same thing as we do for
7991 Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
7992
24357840
RD
79932009-04-10 Robert Dewar <dewar@adacore.com>
7994
7995 * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
7996
7997 * sem_res.adb (Resolve_Call): Fix test for
7998 Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
7999 a non-dynamic scope).
8000
4f64abad
AC
80012009-04-10 Robert Dewar <dewar@adacore.com>
8002
8003 * make.adb: Add comment.
8004 Minor reformatting
8005
80062009-04-10 Nicolas Setton <setton@adacore.com>
8007
8008 * s-osprim-darwin.adb: New file.
8009
8010 * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
8011
80122009-04-10 Thomas Quinot <quinot@adacore.com>
8013
8014 * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
8015
748086b7
JJ
80162009-04-09 Nick Clifton <nickc@redhat.com>
8017
8018 * adadecode.h: Change copyright header to refer to version
8019 3 of the GNU General Public License with version 3.1 of the
8020 GCC Runtime Library Exception and to point readers at the
8021 COPYING3 and COPYING3.RUNTIME files and the FSF's license web
8022 page.
8023 * 9drpc.adb: Likewise.
8024 * a-assert.adb: Likewise.
8025 * a-astaco.adb: Likewise.
8026 * a-calari.adb: Likewise.
8027 * a-calcon.adb: Likewise.
8028 * a-calcon.ads: Likewise.
8029 * a-caldel.ads: Likewise.
8030 * a-calend-vms.adb: Likewise.
8031 * a-calend-vms.ads: Likewise.
8032 * a-calend.adb: Likewise.
8033 * a-calend.ads: Likewise.
8034 * a-calfor.adb: Likewise.
8035 * a-catizo.adb: Likewise.
8036 * a-cdlili.adb: Likewise.
8037 * a-cdlili.ads: Likewise.
8038 * a-cgaaso.adb: Likewise.
8039 * a-cgaaso.ads: Likewise.
8040 * a-cgarso.adb: Likewise.
8041 * a-cgcaso.adb: Likewise.
8042 * a-chacon.adb: Likewise.
8043 * a-chacon.ads: Likewise.
8044 * a-chahan.adb: Likewise.
8045 * a-chahan.ads: Likewise.
8046 * a-chlat9.ads: Likewise.
8047 * a-chtgke.adb: Likewise.
8048 * a-chtgke.ads: Likewise.
8049 * a-chtgop.adb: Likewise.
8050 * a-chtgop.ads: Likewise.
8051 * a-chzla1.ads: Likewise.
8052 * a-chzla9.ads: Likewise.
8053 * a-cidlli.adb: Likewise.
8054 * a-cidlli.ads: Likewise.
8055 * a-cihama.adb: Likewise.
8056 * a-cihama.ads: Likewise.
8057 * a-cihase.adb: Likewise.
8058 * a-cihase.ads: Likewise.
8059 * a-ciorma.adb: Likewise.
8060 * a-ciorma.ads: Likewise.
8061 * a-ciormu.adb: Likewise.
8062 * a-ciormu.ads: Likewise.
8063 * a-ciorse.adb: Likewise.
8064 * a-ciorse.ads: Likewise.
8065 * a-clrefi.adb: Likewise.
8066 * a-clrefi.ads: Likewise.
8067 * a-cohama.adb: Likewise.
8068 * a-cohama.ads: Likewise.
8069 * a-cohase.adb: Likewise.
8070 * a-cohase.ads: Likewise.
8071 * a-cohata.ads: Likewise.
8072 * a-coinve.adb: Likewise.
8073 * a-coinve.ads: Likewise.
8074 * a-colien.adb: Likewise.
8075 * a-colien.ads: Likewise.
8076 * a-colire.adb: Likewise.
8077 * a-colire.ads: Likewise.
8078 * a-comlin.adb: Likewise.
8079 * a-comlin.ads: Likewise.
8080 * a-convec.adb: Likewise.
8081 * a-convec.ads: Likewise.
8082 * a-coorma.adb: Likewise.
8083 * a-coorma.ads: Likewise.
8084 * a-coormu.adb: Likewise.
8085 * a-coormu.ads: Likewise.
8086 * a-coorse.adb: Likewise.
8087 * a-coorse.ads: Likewise.
8088 * a-coprnu.adb: Likewise.
8089 * a-coprnu.ads: Likewise.
8090 * a-crbltr.ads: Likewise.
8091 * a-crbtgk.adb: Likewise.
8092 * a-crbtgk.ads: Likewise.
8093 * a-crbtgo.adb: Likewise.
8094 * a-crbtgo.ads: Likewise.
8095 * a-crdlli.adb: Likewise.
8096 * a-crdlli.ads: Likewise.
8097 * a-cwila1.ads: Likewise.
8098 * a-cwila9.ads: Likewise.
8099 * a-decima.adb: Likewise.
8100 * a-decima.ads: Likewise.
8101 * a-diocst.adb: Likewise.
8102 * a-diocst.ads: Likewise.
8103 * a-direct.adb: Likewise.
8104 * a-direct.ads: Likewise.
8105 * a-direio.adb: Likewise.
8106 * a-direio.ads: Likewise.
8107 * a-dirval-mingw.adb: Likewise.
8108 * a-dirval-vms.adb: Likewise.
8109 * a-dirval.adb: Likewise.
8110 * a-dirval.ads: Likewise.
8111 * a-dynpri.adb: Likewise.
8112 * a-einuoc.adb: Likewise.
8113 * a-einuoc.ads: Likewise.
8114 * a-elchha.adb: Likewise.
8115 * a-elchha.ads: Likewise.
8116 * a-envvar.adb: Likewise.
8117 * a-excach.adb: Likewise.
8118 * a-except-2005.adb: Likewise.
8119 * a-except-2005.ads: Likewise.
8120 * a-except.adb: Likewise.
8121 * a-except.ads: Likewise.
8122 * a-excpol-abort.adb: Likewise.
8123 * a-excpol.adb: Likewise.
8124 * a-exctra.adb: Likewise.
8125 * a-exctra.ads: Likewise.
8126 * a-exetim-mingw.adb: Likewise.
8127 * a-exetim-mingw.ads: Likewise.
8128 * a-exexda.adb: Likewise.
8129 * a-exexpr-gcc.adb: Likewise.
8130 * a-exexpr.adb: Likewise.
8131 * a-exextr.adb: Likewise.
8132 * a-exstat.adb: Likewise.
8133 * a-filico.adb: Likewise.
8134 * a-filico.ads: Likewise.
8135 * a-finali.adb: Likewise.
8136 * a-finali.ads: Likewise.
8137 * a-interr.ads: Likewise.
8138 * a-intnam-aix.ads: Likewise.
8139 * a-intnam-darwin.ads: Likewise.
8140 * a-intnam-dummy.ads: Likewise.
8141 * a-intnam-freebsd.ads: Likewise.
8142 * a-intnam-hpux.ads: Likewise.
8143 * a-intnam-irix.ads: Likewise.
8144 * a-intnam-linux.ads: Likewise.
8145 * a-intnam-lynxos.ads: Likewise.
8146 * a-intnam-mingw.ads: Likewise.
8147 * a-intnam-rtems.ads: Likewise.
8148 * a-intnam-solaris.ads: Likewise.
8149 * a-intnam-tru64.ads: Likewise.
8150 * a-intnam-vms.ads: Likewise.
8151 * a-intnam-vxworks.ads: Likewise.
8152 * a-intsig.adb: Likewise.
8153 * a-intsig.ads: Likewise.
8154 * a-ngcefu.adb: Likewise.
8155 * a-ngcoar.adb: Likewise.
8156 * a-ngcoty.adb: Likewise.
8157 * a-ngcoty.ads: Likewise.
8158 * a-ngelfu.adb: Likewise.
8159 * a-ngrear.adb: Likewise.
8160 * a-ngrear.ads: Likewise.
8161 * a-nudira.adb: Likewise.
8162 * a-nudira.ads: Likewise.
8163 * a-nuflra.adb: Likewise.
8164 * a-nuflra.ads: Likewise.
8165 * a-numaux-darwin.adb: Likewise.
8166 * a-numaux-darwin.ads: Likewise.
8167 * a-numaux-libc-x86.ads: Likewise.
8168 * a-numaux-vxworks.ads: Likewise.
8169 * a-numaux-x86.adb: Likewise.
8170 * a-numaux-x86.ads: Likewise.
8171 * a-numaux.ads: Likewise.
8172 * a-rbtgso.adb: Likewise.
8173 * a-rbtgso.ads: Likewise.
8174 * a-reatim.ads: Likewise.
8175 * a-retide.adb: Likewise.
8176 * a-retide.ads: Likewise.
8177 * a-rttiev.adb: Likewise.
8178 * a-rttiev.ads: Likewise.
8179 * a-secain.adb: Likewise.
8180 * a-secain.ads: Likewise.
8181 * a-sequio.adb: Likewise.
8182 * a-sequio.ads: Likewise.
8183 * a-shcain.adb: Likewise.
8184 * a-shcain.ads: Likewise.
8185 * a-siocst.adb: Likewise.
8186 * a-siocst.ads: Likewise.
8187 * a-slcain.adb: Likewise.
8188 * a-slcain.ads: Likewise.
8189 * a-ssicst.adb: Likewise.
8190 * a-ssicst.ads: Likewise.
8191 * a-stboha.adb: Likewise.
8192 * a-stmaco.ads: Likewise.
8193 * a-storio.adb: Likewise.
8194 * a-strbou.adb: Likewise.
8195 * a-strbou.ads: Likewise.
8196 * a-stream.ads: Likewise.
8197 * a-strfix.adb: Likewise.
8198 * a-strhas.adb: Likewise.
8199 * a-strmap.adb: Likewise.
8200 * a-strmap.ads: Likewise.
8201 * a-strsea.adb: Likewise.
8202 * a-strsea.ads: Likewise.
8203 * a-strsup.adb: Likewise.
8204 * a-strsup.ads: Likewise.
8205 * a-strunb.adb: Likewise.
8206 * a-strunb.ads: Likewise.
8207 * a-ststio.adb: Likewise.
8208 * a-ststio.ads: Likewise.
8209 * a-stunau.adb: Likewise.
8210 * a-stunau.ads: Likewise.
8211 * a-stunha.adb: Likewise.
8212 * a-stwibo.adb: Likewise.
8213 * a-stwibo.ads: Likewise.
8214 * a-stwifi.adb: Likewise.
8215 * a-stwiha.adb: Likewise.
8216 * a-stwima.adb: Likewise.
8217 * a-stwima.ads: Likewise.
8218 * a-stwise.adb: Likewise.
8219 * a-stwise.ads: Likewise.
8220 * a-stwisu.adb: Likewise.
8221 * a-stwisu.ads: Likewise.
8222 * a-stwiun.adb: Likewise.
8223 * a-stwiun.ads: Likewise.
8224 * a-stzbou.adb: Likewise.
8225 * a-stzbou.ads: Likewise.
8226 * a-stzfix.adb: Likewise.
8227 * a-stzhas.adb: Likewise.
8228 * a-stzmap.adb: Likewise.
8229 * a-stzmap.ads: Likewise.
8230 * a-stzsea.adb: Likewise.
8231 * a-stzsea.ads: Likewise.
8232 * a-stzsup.adb: Likewise.
8233 * a-stzsup.ads: Likewise.
8234 * a-stzunb.adb: Likewise.
8235 * a-stzunb.ads: Likewise.
8236 * a-suteio.adb: Likewise.
8237 * a-suteio.ads: Likewise.
8238 * a-swbwha.adb: Likewise.
8239 * a-swmwco.ads: Likewise.
8240 * a-swunau.adb: Likewise.
8241 * a-swunau.ads: Likewise.
8242 * a-swuwha.adb: Likewise.
8243 * a-swuwti.adb: Likewise.
8244 * a-swuwti.ads: Likewise.
8245 * a-sytaco.adb: Likewise.
8246 * a-sytaco.ads: Likewise.
8247 * a-szbzha.adb: Likewise.
8248 * a-szmzco.ads: Likewise.
8249 * a-szunau.adb: Likewise.
8250 * a-szunau.ads: Likewise.
8251 * a-szuzha.adb: Likewise.
8252 * a-szuzti.adb: Likewise.
8253 * a-szuzti.ads: Likewise.
8254 * a-tags.adb: Likewise.
8255 * a-tags.ads: Likewise.
8256 * a-tasatt.ads: Likewise.
8257 * a-taside.adb: Likewise.
8258 * a-taside.ads: Likewise.
8259 * a-taster.adb: Likewise.
8260 * a-teioed.adb: Likewise.
8261 * a-teioed.ads: Likewise.
8262 * a-textio.adb: Likewise.
8263 * a-textio.ads: Likewise.
8264 * a-tiboio.adb: Likewise.
8265 * a-ticoau.adb: Likewise.
8266 * a-ticoau.ads: Likewise.
8267 * a-ticoio.adb: Likewise.
8268 * a-ticoio.ads: Likewise.
8269 * a-tideau.adb: Likewise.
8270 * a-tideau.ads: Likewise.
8271 * a-tideio.adb: Likewise.
8272 * a-tideio.ads: Likewise.
8273 * a-tienau.adb: Likewise.
8274 * a-tienau.ads: Likewise.
8275 * a-tienio.adb: Likewise.
8276 * a-tienio.ads: Likewise.
8277 * a-tifiio.adb: Likewise.
8278 * a-tifiio.ads: Likewise.
8279 * a-tiflau.adb: Likewise.
8280 * a-tiflau.ads: Likewise.
8281 * a-tiflio.adb: Likewise.
8282 * a-tiflio.ads: Likewise.
8283 * a-tigeau.adb: Likewise.
8284 * a-tigeau.ads: Likewise.
8285 * a-tiinau.adb: Likewise.
8286 * a-tiinau.ads: Likewise.
8287 * a-tiinio.adb: Likewise.
8288 * a-tiinio.ads: Likewise.
8289 * a-timoau.adb: Likewise.
8290 * a-timoau.ads: Likewise.
8291 * a-timoio.adb: Likewise.
8292 * a-timoio.ads: Likewise.
8293 * a-tiocst.adb: Likewise.
8294 * a-tiocst.ads: Likewise.
8295 * a-titest.adb: Likewise.
8296 * a-wichun.adb: Likewise.
8297 * a-wichun.ads: Likewise.
8298 * a-witeio.adb: Likewise.
8299 * a-witeio.ads: Likewise.
8300 * a-wtcoau.adb: Likewise.
8301 * a-wtcoau.ads: Likewise.
8302 * a-wtcoio.adb: Likewise.
8303 * a-wtcstr.adb: Likewise.
8304 * a-wtcstr.ads: Likewise.
8305 * a-wtdeau.adb: Likewise.
8306 * a-wtdeau.ads: Likewise.
8307 * a-wtdeio.adb: Likewise.
8308 * a-wtdeio.ads: Likewise.
8309 * a-wtedit.adb: Likewise.
8310 * a-wtedit.ads: Likewise.
8311 * a-wtenau.adb: Likewise.
8312 * a-wtenau.ads: Likewise.
8313 * a-wtenio.adb: Likewise.
8314 * a-wtenio.ads: Likewise.
8315 * a-wtfiio.adb: Likewise.
8316 * a-wtfiio.ads: Likewise.
8317 * a-wtflau.adb: Likewise.
8318 * a-wtflau.ads: Likewise.
8319 * a-wtflio.adb: Likewise.
8320 * a-wtflio.ads: Likewise.
8321 * a-wtgeau.adb: Likewise.
8322 * a-wtgeau.ads: Likewise.
8323 * a-wtinau.adb: Likewise.
8324 * a-wtinau.ads: Likewise.
8325 * a-wtinio.adb: Likewise.
8326 * a-wtmoau.adb: Likewise.
8327 * a-wtmoau.ads: Likewise.
8328 * a-wtmoio.adb: Likewise.
8329 * a-wtmoio.ads: Likewise.
8330 * a-wttest.adb: Likewise.
8331 * a-wwboio.adb: Likewise.
8332 * a-zchuni.adb: Likewise.
8333 * a-zchuni.ads: Likewise.
8334 * a-ztcoau.adb: Likewise.
8335 * a-ztcoau.ads: Likewise.
8336 * a-ztcoio.adb: Likewise.
8337 * a-ztcstr.adb: Likewise.
8338 * a-ztcstr.ads: Likewise.
8339 * a-ztdeau.adb: Likewise.
8340 * a-ztdeau.ads: Likewise.
8341 * a-ztdeio.adb: Likewise.
8342 * a-ztdeio.ads: Likewise.
8343 * a-ztedit.adb: Likewise.
8344 * a-ztedit.ads: Likewise.
8345 * a-ztenau.adb: Likewise.
8346 * a-ztenau.ads: Likewise.
8347 * a-ztenio.adb: Likewise.
8348 * a-ztenio.ads: Likewise.
8349 * a-ztexio.adb: Likewise.
8350 * a-ztexio.ads: Likewise.
8351 * a-ztfiio.adb: Likewise.
8352 * a-ztfiio.ads: Likewise.
8353 * a-ztflau.adb: Likewise.
8354 * a-ztflau.ads: Likewise.
8355 * a-ztflio.adb: Likewise.
8356 * a-ztflio.ads: Likewise.
8357 * a-ztgeau.adb: Likewise.
8358 * a-ztgeau.ads: Likewise.
8359 * a-ztinau.adb: Likewise.
8360 * a-ztinau.ads: Likewise.
8361 * a-ztinio.adb: Likewise.
8362 * a-ztmoau.adb: Likewise.
8363 * a-ztmoau.ads: Likewise.
8364 * a-ztmoio.adb: Likewise.
8365 * a-ztmoio.ads: Likewise.
8366 * a-zttest.adb: Likewise.
8367 * a-zzboio.adb: Likewise.
8368 * adadecode.c: Likewise.
8369 * adaint.c: Likewise.
8370 * adaint.h: Likewise.
8371 * alloc.ads: Likewise.
8372 * argv.c: Likewise.
8373 * arit64.c: Likewise.
8374 * atree.adb: Likewise.
8375 * atree.ads: Likewise.
8376 * aux-io.c: Likewise.
8377 * cal.c: Likewise.
8378 * casing.adb: Likewise.
8379 * casing.ads: Likewise.
8380 * cio.c: Likewise.
8381 * csets.adb: Likewise.
8382 * csets.ads: Likewise.
8383 * cstreams.c: Likewise.
8384 * ctrl_c.c: Likewise.
8385 * debug.adb: Likewise.
8386 * debug.ads: Likewise.
8387 * dec.ads: Likewise.
8388 * einfo.adb: Likewise.
8389 * einfo.ads: Likewise.
8390 * elists.adb: Likewise.
8391 * elists.ads: Likewise.
8392 * env.c: Likewise.
8393 * env.h: Likewise.
8394 * errno.c: Likewise.
8395 * exit.c: Likewise.
8396 * fe.h: Likewise.
8397 * final.c: Likewise.
8398 * fname.adb: Likewise.
8399 * fname.ads: Likewise.
8400 * g-allein.ads: Likewise.
8401 * g-alleve.adb: Likewise.
8402 * g-alleve.ads: Likewise.
8403 * g-altcon.adb: Likewise.
8404 * g-altcon.ads: Likewise.
8405 * g-altive.ads: Likewise.
8406 * g-alveop.adb: Likewise.
8407 * g-alveop.ads: Likewise.
8408 * g-alvety.ads: Likewise.
8409 * g-alvevi.ads: Likewise.
8410 * g-arrspl.adb: Likewise.
8411 * g-arrspl.ads: Likewise.
8412 * g-calend.ads: Likewise.
8413 * g-comlin.adb: Likewise.
8414 * g-debpoo.adb: Likewise.
8415 * g-debpoo.ads: Likewise.
8416 * g-eacodu-vms.adb: Likewise.
8417 * g-eacodu.adb: Likewise.
8418 * g-excact.adb: Likewise.
8419 * g-excact.ads: Likewise.
8420 * g-locfil.adb: Likewise.
8421 * g-os_lib.ads: Likewise.
8422 * g-rannum.adb: Likewise.
8423 * g-rannum.ads: Likewise.
8424 * g-regist.adb: Likewise.
8425 * g-regist.ads: Likewise.
8426 * g-signal.adb: Likewise.
8427 * g-signal.ads: Likewise.
8428 * g-soccon.ads: Likewise.
8429 * g-string.adb: Likewise.
8430 * g-string.ads: Likewise.
8431 * g-strspl.ads: Likewise.
8432 * g-timsta.adb: Likewise.
8433 * g-timsta.ads: Likewise.
8434 * g-trasym-vms-alpha.adb: Likewise.
8435 * g-trasym-vms-ia64.adb: Likewise.
8436 * g-utf_32.adb: Likewise.
8437 * g-utf_32.ads: Likewise.
8438 * g-wistsp.ads: Likewise.
8439 * g-zstspl.ads: Likewise.
8440 * gmem.c: Likewise.
8441 * gnatvsn.adb: Likewise.
8442 * gnatvsn.ads: Likewise.
8443 * gsocket.h: Likewise.
8444 * hostparm.ads: Likewise.
8445 * i-c.adb: Likewise.
8446 * i-cexten.ads: Likewise.
8447 * i-cobol.adb: Likewise.
8448 * i-cobol.ads: Likewise.
8449 * i-cpoint.adb: Likewise.
8450 * i-cpoint.ads: Likewise.
8451 * i-cpp.adb: Likewise.
8452 * i-cpp.ads: Likewise.
8453 * i-cstrea-vms.adb: Likewise.
8454 * i-cstrea.adb: Likewise.
8455 * i-cstrea.ads: Likewise.
8456 * i-cstrin.adb: Likewise.
8457 * i-cstrin.ads: Likewise.
8458 * i-forbla-darwin.adb: Likewise.
8459 * i-forbla-unimplemented.ads: Likewise.
8460 * i-forbla.adb: Likewise.
8461 * i-forbla.ads: Likewise.
8462 * i-forlap.ads: Likewise.
8463 * i-fortra.adb: Likewise.
8464 * i-pacdec.adb: Likewise.
8465 * i-pacdec.ads: Likewise.
8466 * i-vxwoio.adb: Likewise.
8467 * i-vxwoio.ads: Likewise.
8468 * indepsw-aix.adb: Likewise.
8469 * indepsw-gnu.adb: Likewise.
8470 * indepsw-mingw.adb: Likewise.
8471 * indepsw.adb: Likewise.
8472 * indepsw.ads: Likewise.
8473 * init.c: Likewise.
8474 * initialize.c: Likewise.
8475 * interfac.ads: Likewise.
8476 * krunch.adb: Likewise.
8477 * krunch.ads: Likewise.
8478 * lib-list.adb: Likewise.
8479 * lib-sort.adb: Likewise.
8480 * lib.adb: Likewise.
8481 * lib.ads: Likewise.
8482 * link.c: Likewise.
8483 * math_lib.adb: Likewise.
8484 * memtrack.adb: Likewise.
8485 * mingw32.h: Likewise.
8486 * mkdir.c: Likewise.
8487 * namet-sp.adb: Likewise.
8488 * namet-sp.ads: Likewise.
8489 * namet.adb: Likewise.
8490 * namet.ads: Likewise.
8491 * nlists.adb: Likewise.
8492 * nlists.ads: Likewise.
8493 * opt.adb: Likewise.
8494 * opt.ads: Likewise.
8495 * output.adb: Likewise.
8496 * output.ads: Likewise.
8497 * raise-gcc.c: Likewise.
8498 * raise.c: Likewise.
8499 * raise.h: Likewise.
8500 * repinfo.adb: Likewise.
8501 * repinfo.ads: Likewise.
8502 * repinfo.h: Likewise.
8503 * rident.ads: Likewise.
8504 * s-addima.adb: Likewise.
8505 * s-addima.ads: Likewise.
8506 * s-addope.adb: Likewise.
8507 * s-addope.ads: Likewise.
8508 * s-arit64.adb: Likewise.
8509 * s-arit64.ads: Likewise.
8510 * s-assert.adb: Likewise.
8511 * s-assert.ads: Likewise.
8512 * s-asthan-vms-alpha.adb: Likewise.
8513 * s-asthan.adb: Likewise.
8514 * s-asthan.ads: Likewise.
8515 * s-atacco.adb: Likewise.
8516 * s-atacco.ads: Likewise.
8517 * s-auxdec-empty.adb: Likewise.
8518 * s-auxdec-empty.ads: Likewise.
8519 * s-auxdec-vms_64.ads: Likewise.
8520 * s-auxdec.adb: Likewise.
8521 * s-auxdec.ads: Likewise.
8522 * s-bitops.adb: Likewise.
8523 * s-bitops.ads: Likewise.
8524 * s-boarop.ads: Likewise.
8525 * s-carsi8.adb: Likewise.
8526 * s-carsi8.ads: Likewise.
8527 * s-carun8.adb: Likewise.
8528 * s-carun8.ads: Likewise.
8529 * s-casi16.adb: Likewise.
8530 * s-casi16.ads: Likewise.
8531 * s-casi32.adb: Likewise.
8532 * s-casi32.ads: Likewise.
8533 * s-casi64.adb: Likewise.
8534 * s-casi64.ads: Likewise.
8535 * s-casuti.ads: Likewise.
8536 * s-caun16.adb: Likewise.
8537 * s-caun16.ads: Likewise.
8538 * s-caun32.adb: Likewise.
8539 * s-caun32.ads: Likewise.
8540 * s-caun64.adb: Likewise.
8541 * s-caun64.ads: Likewise.
8542 * s-chepoo.ads: Likewise.
8543 * s-crc32.adb: Likewise.
8544 * s-crc32.ads: Likewise.
8545 * s-crtl.ads: Likewise.
8546 * s-direio.adb: Likewise.
8547 * s-direio.ads: Likewise.
8548 * s-dsaser.ads: Likewise.
8549 * s-except.adb: Likewise.
8550 * s-except.ads: Likewise.
8551 * s-exctab.adb: Likewise.
8552 * s-exctab.ads: Likewise.
8553 * s-exnint.adb: Likewise.
8554 * s-exnint.ads: Likewise.
8555 * s-exnllf.adb: Likewise.
8556 * s-exnllf.ads: Likewise.
8557 * s-exnlli.adb: Likewise.
8558 * s-exnlli.ads: Likewise.
8559 * s-expint.adb: Likewise.
8560 * s-expint.ads: Likewise.
8561 * s-explli.adb: Likewise.
8562 * s-explli.ads: Likewise.
8563 * s-expllu.adb: Likewise.
8564 * s-expllu.ads: Likewise.
8565 * s-expmod.adb: Likewise.
8566 * s-expmod.ads: Likewise.
8567 * s-expuns.adb: Likewise.
8568 * s-expuns.ads: Likewise.
8569 * s-fatflt.ads: Likewise.
8570 * s-fatgen.adb: Likewise.
8571 * s-fatgen.ads: Likewise.
8572 * s-fatlfl.ads: Likewise.
8573 * s-fatllf.ads: Likewise.
8574 * s-fatsfl.ads: Likewise.
8575 * s-ficobl.ads: Likewise.
8576 * s-fileio.adb: Likewise.
8577 * s-fileio.ads: Likewise.
8578 * s-filofl.ads: Likewise.
8579 * s-finimp.adb: Likewise.
8580 * s-finimp.ads: Likewise.
8581 * s-finroo.adb: Likewise.
8582 * s-finroo.ads: Likewise.
8583 * s-fishfl.ads: Likewise.
8584 * s-fore.adb: Likewise.
8585 * s-fore.ads: Likewise.
8586 * s-fvadfl.ads: Likewise.
8587 * s-fvaffl.ads: Likewise.
8588 * s-fvagfl.ads: Likewise.
8589 * s-gearop.adb: Likewise.
8590 * s-gearop.ads: Likewise.
8591 * s-gecobl.adb: Likewise.
8592 * s-gecobl.ads: Likewise.
8593 * s-gecola.adb: Likewise.
8594 * s-gecola.ads: Likewise.
8595 * s-gerebl.adb: Likewise.
8596 * s-gerebl.ads: Likewise.
8597 * s-gerela.adb: Likewise.
8598 * s-gerela.ads: Likewise.
8599 * s-geveop.adb: Likewise.
8600 * s-geveop.ads: Likewise.
8601 * s-gloloc.adb: Likewise.
8602 * s-gloloc.ads: Likewise.
8603 * s-hibaen.ads: Likewise.
8604 * s-imenne.adb: Likewise.
8605 * s-imenne.ads: Likewise.
8606 * s-imgbiu.adb: Likewise.
8607 * s-imgbiu.ads: Likewise.
8608 * s-imgboo.adb: Likewise.
8609 * s-imgboo.ads: Likewise.
8610 * s-imgcha.adb: Likewise.
8611 * s-imgcha.ads: Likewise.
8612 * s-imgdec.adb: Likewise.
8613 * s-imgdec.ads: Likewise.
8614 * s-imgenu.adb: Likewise.
8615 * s-imgenu.ads: Likewise.
8616 * s-imgint.adb: Likewise.
8617 * s-imgint.ads: Likewise.
8618 * s-imgllb.adb: Likewise.
8619 * s-imgllb.ads: Likewise.
8620 * s-imglld.adb: Likewise.
8621 * s-imglld.ads: Likewise.
8622 * s-imglli.adb: Likewise.
8623 * s-imglli.ads: Likewise.
8624 * s-imgllu.adb: Likewise.
8625 * s-imgllu.ads: Likewise.
8626 * s-imgllw.adb: Likewise.
8627 * s-imgllw.ads: Likewise.
8628 * s-imgrea.adb: Likewise.
8629 * s-imgrea.ads: Likewise.
8630 * s-imguns.adb: Likewise.
8631 * s-imguns.ads: Likewise.
8632 * s-imgwch.adb: Likewise.
8633 * s-imgwch.ads: Likewise.
8634 * s-imgwiu.adb: Likewise.
8635 * s-imgwiu.ads: Likewise.
8636 * s-inmaop-dummy.adb: Likewise.
8637 * s-inmaop-vms.adb: Likewise.
8638 * s-inmaop.ads: Likewise.
8639 * s-interr-hwint.adb: Likewise.
8640 * s-interr-sigaction.adb: Likewise.
8641 * s-interr-vms.adb: Likewise.
8642 * s-interr.adb: Likewise.
8643 * s-interr.ads: Likewise.
8644 * s-intman-dummy.adb: Likewise.
8645 * s-intman-mingw.adb: Likewise.
8646 * s-intman-posix.adb: Likewise.
8647 * s-intman-solaris.adb: Likewise.
8648 * s-intman-vms.adb: Likewise.
8649 * s-intman-vms.ads: Likewise.
8650 * s-intman-vxworks.adb: Likewise.
8651 * s-intman-vxworks.ads: Likewise.
8652 * s-intman.ads: Likewise.
8653 * s-io.adb: Likewise.
8654 * s-io.ads: Likewise.
8655 * s-linux-alpha.ads: Likewise.
8656 * s-linux-hppa.ads: Likewise.
8657 * s-linux.ads: Likewise.
8658 * s-maccod.ads: Likewise.
8659 * s-mantis.adb: Likewise.
8660 * s-mantis.ads: Likewise.
8661 * s-mastop-irix.adb: Likewise.
8662 * s-mastop.adb: Likewise.
8663 * s-mastop.ads: Likewise.
8664 * s-memcop.ads: Likewise.
8665 * s-memory-mingw.adb: Likewise.
8666 * s-memory.adb: Likewise.
8667 * s-memory.ads: Likewise.
8668 * s-os_lib.ads: Likewise.
8669 * s-oscons-tmplt.c: Likewise.
8670 * s-osinte-aix.adb: Likewise.
8671 * s-osinte-darwin.adb: Likewise.
8672 * s-osinte-freebsd.adb: Likewise.
8673 * s-osinte-irix.adb: Likewise.
8674 * s-osinte-lynxos-3.adb: Likewise.
8675 * s-osinte-rtems.ads: Likewise.
8676 * s-osinte-tru64.adb: Likewise.
8677 * s-osinte-vxworks-kernel.adb: Likewise.
8678 * s-osinte-vxworks.adb: Likewise.
8679 * s-osprim-mingw.adb: Likewise.
8680 * s-osprim-posix.adb: Likewise.
8681 * s-osprim-solaris.adb: Likewise.
8682 * s-osprim-unix.adb: Likewise.
8683 * s-osprim-vms.adb: Likewise.
8684 * s-osprim-vms.ads: Likewise.
8685 * s-osprim-vxworks.adb: Likewise.
8686 * s-osprim.ads: Likewise.
8687 * s-pack03.adb: Likewise.
8688 * s-pack03.ads: Likewise.
8689 * s-pack05.adb: Likewise.
8690 * s-pack05.ads: Likewise.
8691 * s-pack06.adb: Likewise.
8692 * s-pack06.ads: Likewise.
8693 * s-pack07.adb: Likewise.
8694 * s-pack07.ads: Likewise.
8695 * s-pack09.adb: Likewise.
8696 * s-pack09.ads: Likewise.
8697 * s-pack10.adb: Likewise.
8698 * s-pack10.ads: Likewise.
8699 * s-pack11.adb: Likewise.
8700 * s-pack11.ads: Likewise.
8701 * s-pack12.adb: Likewise.
8702 * s-pack12.ads: Likewise.
8703 * s-pack13.adb: Likewise.
8704 * s-pack13.ads: Likewise.
8705 * s-pack14.adb: Likewise.
8706 * s-pack14.ads: Likewise.
8707 * s-pack15.adb: Likewise.
8708 * s-pack15.ads: Likewise.
8709 * s-pack17.adb: Likewise.
8710 * s-pack17.ads: Likewise.
8711 * s-pack18.adb: Likewise.
8712 * s-pack18.ads: Likewise.
8713 * s-pack19.adb: Likewise.
8714 * s-pack19.ads: Likewise.
8715 * s-pack20.adb: Likewise.
8716 * s-pack20.ads: Likewise.
8717 * s-pack21.adb: Likewise.
8718 * s-pack21.ads: Likewise.
8719 * s-pack22.adb: Likewise.
8720 * s-pack22.ads: Likewise.
8721 * s-pack23.adb: Likewise.
8722 * s-pack23.ads: Likewise.
8723 * s-pack24.adb: Likewise.
8724 * s-pack24.ads: Likewise.
8725 * s-pack25.adb: Likewise.
8726 * s-pack25.ads: Likewise.
8727 * s-pack26.adb: Likewise.
8728 * s-pack26.ads: Likewise.
8729 * s-pack27.adb: Likewise.
8730 * s-pack27.ads: Likewise.
8731 * s-pack28.adb: Likewise.
8732 * s-pack28.ads: Likewise.
8733 * s-pack29.adb: Likewise.
8734 * s-pack29.ads: Likewise.
8735 * s-pack30.adb: Likewise.
8736 * s-pack30.ads: Likewise.
8737 * s-pack31.adb: Likewise.
8738 * s-pack31.ads: Likewise.
8739 * s-pack33.adb: Likewise.
8740 * s-pack33.ads: Likewise.
8741 * s-pack34.adb: Likewise.
8742 * s-pack34.ads: Likewise.
8743 * s-pack35.adb: Likewise.
8744 * s-pack35.ads: Likewise.
8745 * s-pack36.adb: Likewise.
8746 * s-pack36.ads: Likewise.
8747 * s-pack37.adb: Likewise.
8748 * s-pack37.ads: Likewise.
8749 * s-pack38.adb: Likewise.
8750 * s-pack38.ads: Likewise.
8751 * s-pack39.adb: Likewise.
8752 * s-pack39.ads: Likewise.
8753 * s-pack40.adb: Likewise.
8754 * s-pack40.ads: Likewise.
8755 * s-pack41.adb: Likewise.
8756 * s-pack41.ads: Likewise.
8757 * s-pack42.adb: Likewise.
8758 * s-pack42.ads: Likewise.
8759 * s-pack43.adb: Likewise.
8760 * s-pack43.ads: Likewise.
8761 * s-pack44.adb: Likewise.
8762 * s-pack44.ads: Likewise.
8763 * s-pack45.adb: Likewise.
8764 * s-pack45.ads: Likewise.
8765 * s-pack46.adb: Likewise.
8766 * s-pack46.ads: Likewise.
8767 * s-pack47.adb: Likewise.
8768 * s-pack47.ads: Likewise.
8769 * s-pack48.adb: Likewise.
8770 * s-pack48.ads: Likewise.
8771 * s-pack49.adb: Likewise.
8772 * s-pack49.ads: Likewise.
8773 * s-pack50.adb: Likewise.
8774 * s-pack50.ads: Likewise.
8775 * s-pack51.adb: Likewise.
8776 * s-pack51.ads: Likewise.
8777 * s-pack52.adb: Likewise.
8778 * s-pack52.ads: Likewise.
8779 * s-pack53.adb: Likewise.
8780 * s-pack53.ads: Likewise.
8781 * s-pack54.adb: Likewise.
8782 * s-pack54.ads: Likewise.
8783 * s-pack55.adb: Likewise.
8784 * s-pack55.ads: Likewise.
8785 * s-pack56.adb: Likewise.
8786 * s-pack56.ads: Likewise.
8787 * s-pack57.adb: Likewise.
8788 * s-pack57.ads: Likewise.
8789 * s-pack58.adb: Likewise.
8790 * s-pack58.ads: Likewise.
8791 * s-pack59.adb: Likewise.
8792 * s-pack59.ads: Likewise.
8793 * s-pack60.adb: Likewise.
8794 * s-pack60.ads: Likewise.
8795 * s-pack61.adb: Likewise.
8796 * s-pack61.ads: Likewise.
8797 * s-pack62.adb: Likewise.
8798 * s-pack62.ads: Likewise.
8799 * s-pack63.adb: Likewise.
8800 * s-pack63.ads: Likewise.
8801 * s-parame-ae653.ads: Likewise.
8802 * s-parame-hpux.ads: Likewise.
8803 * s-parame-rtems.adb: Likewise.
8804 * s-parame-vms-alpha.ads: Likewise.
8805 * s-parame-vms-ia64.ads: Likewise.
8806 * s-parame-vms-restrict.ads: Likewise.
8807 * s-parame-vxworks.adb: Likewise.
8808 * s-parame-vxworks.ads: Likewise.
8809 * s-parame.adb: Likewise.
8810 * s-parame.ads: Likewise.
8811 * s-parint.adb: Likewise.
8812 * s-parint.ads: Likewise.
8813 * s-pooglo.adb: Likewise.
8814 * s-pooglo.ads: Likewise.
8815 * s-pooloc.adb: Likewise.
8816 * s-pooloc.ads: Likewise.
8817 * s-poosiz.adb: Likewise.
8818 * s-poosiz.ads: Likewise.
8819 * s-powtab.ads: Likewise.
8820 * s-proinf-irix-athread.adb: Likewise.
8821 * s-proinf-irix-athread.ads: Likewise.
8822 * s-proinf.adb: Likewise.
8823 * s-proinf.ads: Likewise.
8824 * s-purexc.ads: Likewise.
8825 * s-rannum.adb: Likewise.
8826 * s-rannum.ads: Likewise.
8827 * s-restri.adb: Likewise.
8828 * s-restri.ads: Likewise.
8829 * s-rident.ads: Likewise.
8830 * s-rpc.adb: Likewise.
8831 * s-rpc.ads: Likewise.
8832 * s-scaval.adb: Likewise.
8833 * s-scaval.ads: Likewise.
8834 * s-secsta.adb: Likewise.
8835 * s-secsta.ads: Likewise.
8836 * s-sequio.adb: Likewise.
8837 * s-sequio.ads: Likewise.
8838 * s-shasto.adb: Likewise.
8839 * s-shasto.ads: Likewise.
8840 * s-soflin.adb: Likewise.
8841 * s-soflin.ads: Likewise.
8842 * s-solita.adb: Likewise.
8843 * s-solita.ads: Likewise.
8844 * s-sopco3.adb: Likewise.
8845 * s-sopco3.ads: Likewise.
8846 * s-sopco4.adb: Likewise.
8847 * s-sopco4.ads: Likewise.
8848 * s-sopco5.adb: Likewise.
8849 * s-sopco5.ads: Likewise.
8850 * s-stache.adb: Likewise.
8851 * s-stache.ads: Likewise.
8852 * s-stalib.adb: Likewise.
8853 * s-stalib.ads: Likewise.
8854 * s-stausa.adb: Likewise.
8855 * s-stausa.ads: Likewise.
8856 * s-stchop-limit.ads: Likewise.
8857 * s-stchop-rtems.adb: Likewise.
8858 * s-stchop-vxworks.adb: Likewise.
8859 * s-stchop.adb: Likewise.
8860 * s-stchop.ads: Likewise.
8861 * s-stoele.adb: Likewise.
8862 * s-stoele.ads: Likewise.
8863 * s-stopoo.adb: Likewise.
8864 * s-stopoo.ads: Likewise.
8865 * s-stratt.adb: Likewise.
8866 * s-stratt.ads: Likewise.
8867 * s-strcom.adb: Likewise.
8868 * s-strcom.ads: Likewise.
8869 * s-string.adb: Likewise.
8870 * s-string.ads: Likewise.
8871 * s-strops.adb: Likewise.
8872 * s-strops.ads: Likewise.
8873 * s-strxdr.adb: Likewise.
8874 * s-ststop.adb: Likewise.
8875 * s-ststop.ads: Likewise.
8876 * s-taasde.adb: Likewise.
8877 * s-taasde.ads: Likewise.
8878 * s-tadeca.adb: Likewise.
8879 * s-tadeca.ads: Likewise.
8880 * s-tadert.adb: Likewise.
8881 * s-tadert.ads: Likewise.
8882 * s-taenca.adb: Likewise.
8883 * s-taenca.ads: Likewise.
8884 * s-taprob.ads: Likewise.
8885 * s-taprop-dummy.adb: Likewise.
8886 * s-taprop-hpux-dce.adb: Likewise.
8887 * s-taprop-irix.adb: Likewise.
8888 * s-taprop-linux.adb: Likewise.
8889 * s-taprop-lynxos.adb: Likewise.
8890 * s-taprop-mingw.adb: Likewise.
8891 * s-taprop-posix.adb: Likewise.
8892 * s-taprop-solaris.adb: Likewise.
8893 * s-taprop-tru64.adb: Likewise.
8894 * s-taprop-vms.adb: Likewise.
8895 * s-taprop-vxworks.adb: Likewise.
8896 * s-taprop.ads: Likewise.
8897 * s-tarest.adb: Likewise.
8898 * s-tarest.ads: Likewise.
8899 * s-tasdeb.adb: Likewise.
8900 * s-tasdeb.ads: Likewise.
8901 * s-tasinf-irix.ads: Likewise.
8902 * s-tasinf-linux.adb: Likewise.
8903 * s-tasinf-linux.ads: Likewise.
8904 * s-tasinf-mingw.adb: Likewise.
8905 * s-tasinf-mingw.ads: Likewise.
8906 * s-tasinf-solaris.adb: Likewise.
8907 * s-tasinf-solaris.ads: Likewise.
8908 * s-tasinf-tru64.ads: Likewise.
8909 * s-tasinf.adb: Likewise.
8910 * s-tasinf.ads: Likewise.
8911 * s-tasini.adb: Likewise.
8912 * s-tasini.ads: Likewise.
8913 * s-taskin.adb: Likewise.
8914 * s-taskin.ads: Likewise.
8915 * s-taspri-dummy.ads: Likewise.
8916 * s-taspri-hpux-dce.ads: Likewise.
8917 * s-taspri-mingw.ads: Likewise.
8918 * s-taspri-solaris.ads: Likewise.
8919 * s-taspri-tru64.ads: Likewise.
8920 * s-taspri-vms.ads: Likewise.
8921 * s-taspri-vxworks.ads: Likewise.
8922 * s-tasque.adb: Likewise.
8923 * s-tasque.ads: Likewise.
8924 * s-tasren.adb: Likewise.
8925 * s-tasren.ads: Likewise.
8926 * s-tasres.ads: Likewise.
8927 * s-tassta.adb: Likewise.
8928 * s-tassta.ads: Likewise.
8929 * s-tasuti.adb: Likewise.
8930 * s-tasuti.ads: Likewise.
8931 * s-tfsetr-default.adb: Likewise.
8932 * s-tfsetr-vxworks.adb: Likewise.
8933 * s-tpinop.adb: Likewise.
8934 * s-tpinop.ads: Likewise.
8935 * s-tpoben.adb: Likewise.
8936 * s-tpoben.ads: Likewise.
8937 * s-tpobop.adb: Likewise.
8938 * s-tpobop.ads: Likewise.
8939 * s-tpopde-vms.adb: Likewise.
8940 * s-tpopde-vms.ads: Likewise.
8941 * s-tpopsp-lynxos.adb: Likewise.
8942 * s-tpopsp-posix-foreign.adb: Likewise.
8943 * s-tpopsp-posix.adb: Likewise.
8944 * s-tpopsp-solaris.adb: Likewise.
8945 * s-tpopsp-vxworks.adb: Likewise.
8946 * s-tporft.adb: Likewise.
8947 * s-tposen.adb: Likewise.
8948 * s-tposen.ads: Likewise.
8949 * s-traceb.adb: Likewise.
8950 * s-traceb.ads: Likewise.
8951 * s-traces-default.adb: Likewise.
8952 * s-traces.adb: Likewise.
8953 * s-traces.ads: Likewise.
8954 * s-traent-vms.adb: Likewise.
8955 * s-traent-vms.ads: Likewise.
8956 * s-traent.adb: Likewise.
8957 * s-traent.ads: Likewise.
8958 * s-trafor-default.adb: Likewise.
8959 * s-trafor-default.ads: Likewise.
8960 * s-tratas-default.adb: Likewise.
8961 * s-tratas.adb: Likewise.
8962 * s-tratas.ads: Likewise.
8963 * s-unstyp.ads: Likewise.
8964 * s-utf_32.adb: Likewise.
8965 * s-utf_32.ads: Likewise.
8966 * s-vaflop-vms-alpha.adb: Likewise.
8967 * s-vaflop.adb: Likewise.
8968 * s-vaflop.ads: Likewise.
8969 * s-valboo.adb: Likewise.
8970 * s-valboo.ads: Likewise.
8971 * s-valcha.adb: Likewise.
8972 * s-valcha.ads: Likewise.
8973 * s-valdec.adb: Likewise.
8974 * s-valdec.ads: Likewise.
8975 * s-valenu.adb: Likewise.
8976 * s-valenu.ads: Likewise.
8977 * s-valint.adb: Likewise.
8978 * s-valint.ads: Likewise.
8979 * s-vallld.adb: Likewise.
8980 * s-vallld.ads: Likewise.
8981 * s-vallli.adb: Likewise.
8982 * s-vallli.ads: Likewise.
8983 * s-valllu.adb: Likewise.
8984 * s-valllu.ads: Likewise.
8985 * s-valrea.adb: Likewise.
8986 * s-valrea.ads: Likewise.
8987 * s-valuns.adb: Likewise.
8988 * s-valuns.ads: Likewise.
8989 * s-valuti.adb: Likewise.
8990 * s-valuti.ads: Likewise.
8991 * s-valwch.adb: Likewise.
8992 * s-valwch.ads: Likewise.
8993 * s-veboop.adb: Likewise.
8994 * s-veboop.ads: Likewise.
8995 * s-vector.ads: Likewise.
8996 * s-vercon.adb: Likewise.
8997 * s-vercon.ads: Likewise.
8998 * s-vmexta.adb: Likewise.
8999 * s-vmexta.ads: Likewise.
9000 * s-vxwext-kernel.ads: Likewise.
9001 * s-vxwext-rtp.adb: Likewise.
9002 * s-vxwext-rtp.ads: Likewise.
9003 * s-vxwext.ads: Likewise.
9004 * s-vxwork-arm.ads: Likewise.
9005 * s-vxwork-m68k.ads: Likewise.
9006 * s-vxwork-mips.ads: Likewise.
9007 * s-vxwork-ppc.ads: Likewise.
9008 * s-vxwork-sparcv9.ads: Likewise.
9009 * s-vxwork-x86.ads: Likewise.
9010 * s-wchcnv.adb: Likewise.
9011 * s-wchcnv.ads: Likewise.
9012 * s-wchcon.adb: Likewise.
9013 * s-wchcon.ads: Likewise.
9014 * s-wchjis.adb: Likewise.
9015 * s-wchjis.ads: Likewise.
9016 * s-wchstw.adb: Likewise.
9017 * s-wchstw.ads: Likewise.
9018 * s-wchwts.adb: Likewise.
9019 * s-wchwts.ads: Likewise.
9020 * s-widboo.adb: Likewise.
9021 * s-widboo.ads: Likewise.
9022 * s-widcha.adb: Likewise.
9023 * s-widcha.ads: Likewise.
9024 * s-widenu.adb: Likewise.
9025 * s-widenu.ads: Likewise.
9026 * s-widlli.adb: Likewise.
9027 * s-widlli.ads: Likewise.
9028 * s-widllu.adb: Likewise.
9029 * s-widllu.ads: Likewise.
9030 * s-widwch.adb: Likewise.
9031 * s-widwch.ads: Likewise.
9032 * s-win32.ads: Likewise.
9033 * s-winext.ads: Likewise.
9034 * s-wwdcha.adb: Likewise.
9035 * s-wwdcha.ads: Likewise.
9036 * s-wwdenu.adb: Likewise.
9037 * s-wwdenu.ads: Likewise.
9038 * s-wwdwch.adb: Likewise.
9039 * s-wwdwch.ads: Likewise.
9040 * scans.adb: Likewise.
9041 * scans.ads: Likewise.
9042 * seh_init.c: Likewise.
9043 * sfn_scan.adb: Likewise.
9044 * sinfo.adb: Likewise.
9045 * sinfo.ads: Likewise.
9046 * sinput.adb: Likewise.
9047 * sinput.ads: Likewise.
9048 * snames.adb: Likewise.
9049 * snames.ads: Likewise.
9050 * socket.c: Likewise.
9051 * stand.adb: Likewise.
9052 * stand.ads: Likewise.
9053 * stringt.adb: Likewise.
9054 * stringt.ads: Likewise.
9055 * sysdep.c: Likewise.
9056 * system-aix.ads: Likewise.
9057 * system-darwin-ppc.ads: Likewise.
9058 * system-darwin-x86.ads: Likewise.
9059 * system-darwin-x86_64.ads: Likewise.
9060 * system-freebsd-x86.ads: Likewise.
9061 * system-hpux-ia64.ads: Likewise.
9062 * system-hpux.ads: Likewise.
9063 * system-irix-n32.ads: Likewise.
9064 * system-irix-n64.ads: Likewise.
9065 * system-irix-o32.ads: Likewise.
9066 * system-linux-alpha.ads: Likewise.
9067 * system-linux-hppa.ads: Likewise.
9068 * system-linux-ia64.ads: Likewise.
9069 * system-linux-mips.ads: Likewise.
9070 * system-linux-mipsel.ads: Likewise.
9071 * system-linux-ppc.ads: Likewise.
9072 * system-linux-ppc64.ads: Likewise.
9073 * system-linux-s390.ads: Likewise.
9074 * system-linux-s390x.ads: Likewise.
9075 * system-linux-sh4.ads: Likewise.
9076 * system-linux-sparc.ads: Likewise.
9077 * system-linux-sparcv9.ads: Likewise.
9078 * system-linux-x86.ads: Likewise.
9079 * system-linux-x86_64.ads: Likewise.
9080 * system-lynxos-ppc.ads: Likewise.
9081 * system-lynxos-x86.ads: Likewise.
9082 * system-mingw-x86_64.ads: Likewise.
9083 * system-mingw.ads: Likewise.
9084 * system-rtems.ads: Likewise.
9085 * system-solaris-sparc.ads: Likewise.
9086 * system-solaris-sparcv9.ads: Likewise.
9087 * system-solaris-x86.ads: Likewise.
9088 * system-solaris-x86_64.ads: Likewise.
9089 * system-tru64.ads: Likewise.
9090 * system-vms-ia64.ads: Likewise.
9091 * system-vms-zcx.ads: Likewise.
9092 * system-vms.ads: Likewise.
9093 * system-vms_64.ads: Likewise.
9094 * system-vxworks-arm.ads: Likewise.
9095 * system-vxworks-m68k.ads: Likewise.
9096 * system-vxworks-mips.ads: Likewise.
9097 * system-vxworks-ppc.ads: Likewise.
9098 * system-vxworks-sparcv9.ads: Likewise.
9099 * system-vxworks-x86.ads: Likewise.
9100 * system.ads: Likewise.
9101 * table.adb: Likewise.
9102 * table.ads: Likewise.
9103 * targext.c: Likewise.
9104 * targparm.ads: Likewise.
9105 * tree_in.adb: Likewise.
9106 * tree_in.ads: Likewise.
9107 * tree_io.adb: Likewise.
9108 * tree_io.ads: Likewise.
9109 * types.adb: Likewise.
9110 * types.ads: Likewise.
9111 * uintp.adb: Likewise.
9112 * uintp.ads: Likewise.
9113 * uname.adb: Likewise.
9114 * uname.ads: Likewise.
9115 * urealp.adb: Likewise.
9116 * urealp.ads: Likewise.
9117 * vx_stack_info.c: Likewise.
9118 * widechar.adb: Likewise.
9119 * widechar.ads: Likewise.
9120 * exp_attr.adb: Change copyright header to refer to version
9121 3 of the GNU General Public License and to point readers at the
9122 COPYING3 file and the FSF's license web page.
9123 * sem.adb: Likewise.
9124 * sem_attr.ads: Likewise.
9125 * freeze.adb: Likewise.
9126 * freeze.ads: Likewise.
9127 * errout.ads: Likewise.
9128 * erroutc.adb: Likewise.
9129 * exp_ch11.ads: Likewise.
9130
91312009-04-09 Jakub Jelinek <jakub@redhat.com>
9132
9133 * config-lang.in: Change copyright header to refer to version
9134 3 of the GNU General Public License and to point readers at the
9135 COPYING3 file and the FSF's license web page.
9136 * gcc-interface/trans.c: Likewise.
9137 * gnathtml.pl: Likewise.
9138 * gcc-interface/ada.h: Likewise. Remove runtime exception.
9139 * gcc-interface/gigi.h: Likewise.
9140 * gcc-interface/misc.c: Likewise.
9141 * gcc-interface/targtyps.c: Likewise.
9142
dd8cfe3a
AC
91432009-04-09 Nicolas Setton <setton@adacore.com>
9144
9145 * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
9146
9147 * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
9148 struct_timeval.
9149
91502009-04-09 Bob Duff <duff@adacore.com>
9151
9152 * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
9153 internally-generated nodes related to select statements to avoid
9154 confusing the debugger.
9155
91562009-04-09 Pascal Obry <obry@adacore.com>
9157
9158 * make.adb: Ensure that all linker arguments are duplicated.
9159
59f3dd0a
AC
91602009-04-09 Robert Dewar <dewar@adacore.com>
9161
9162 * sem_ch5.adb: Minor reformatting
9163
91642009-04-09 Vincent Celier <celier@adacore.com>
9165
9166 * vms_data.ads:
9167 Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
9168 New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
9169 New qualifier /LXDEBUG=nnn for -gnatDnnn
9170 For H820-010
9171
9172 * gnat_ugn.texi:
9173 Update documentation for VMS qualifiers equivalent to -gnatGnn and
9174 -gnatDnn
9175
91762009-04-09 Nicolas Setton <setton@adacore.com>
9177
9178 * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
9179 to match layout of siginfo_t in sys/signal.h.
9180
9181 * gcc-interface/Makefile.in: Add section for x86_64 darwin.
9182
91832009-04-09 Thomas Quinot <quinot@adacore.com>
9184
9185 * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
9186
91872009-04-09 Nicolas Setton <setton@adacore.com>
9188
9189 * s-oscons-tmplt.c: Allow long lines in the generated spec.
9190 Add generation of Darwin-specific constants needed when binding to the
9191 pthread library.
9192
91932009-04-09 Robert Dewar <dewar@adacore.com>
9194
53b2323e
RH
9195 * checks.adb:
9196 (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
9197 when no invalid values exist, Avoid duplicate read of atomic variable.
59f3dd0a 9198
53b2323e
RH
9199 * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
9200 (Standard_Unsigned): Set Is_Known_Valid
59f3dd0a 9201
53b2323e 9202 * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
59f3dd0a 9203 subtype declaration if no constraint.
53b2323e
RH
9204 (Set_Modular_Size): Set Is_Known_Valid if appropriate
9205 (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
59f3dd0a 9206
f7d7bb51
AC
92072009-04-09 Robert Dewar <dewar@adacore.com>
9208
9209 * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
9210 switch.ads: for numeric switches, an optional equal sign is always
9211 allowed.
9212
92132009-04-09 Vincent Celier <celier@adacore.com>
9214
9215 * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
9216 the case of file names is not significant.
9217
c75c4293
AC
92182009-04-09 Vincent Celier <celier@adacore.com>
9219
9220 * errout.adb: Remove dependency on package Style
9221
9222 * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
9223 moved to Stylesw.
9224
9225 * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
9226 Styleg.
9227
9228 * errutil.adb, par.adb: Import Stylesw
9229
92302009-04-09 Arnaud Charlet <charlet@adacore.com>
9231
9232 * opt.ads: Fix typos.
9233
92342009-04-09 Robert Dewar <dewar@adacore.com>
9235
9236 * einfo.adb: Minor reformatting
9237
e7aea0fa
RD
92382009-04-09 Robert Dewar <dewar@adacore.com>
9239
9240 * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
9241 units.
9242
9243 * styleg-c.ads, styleg-c.adb: Removed, no longer used.
9244
1c383b4c
AC
92452009-04-09 Robert Dewar <dewar@adacore.com>
9246
9247 * g-comver.adb: Minor reformatting.
9248
92492009-04-09 Thomas Quinot <quinot@adacore.com>
9250
9251 * lib-load.ads (Load_Unit): Update documentation.
9252
92532009-04-09 Ed Schonberg <schonberg@adacore.com>
9254
9255 * lib-load.adb (Load_Unit): When loading the parent of a child unit
9256 named in a with_clause, retain the with_clause to preserve a
9257 limited_with indication.
9258
d7ba4df4
RD
92592009-04-09 Robert Dewar <dewar@adacore.com>
9260
9261 * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
9262 exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
9263 sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
9264 possible to replace an OR of two separate tests.
9265
923e6ff3
RD
92662009-04-09 Robert Dewar <dewar@adacore.com>
9267
9268 * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
9269 Maximum_Messages.
9270
9271 * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
9272 warning status as well.
9273
9274 * opt.ads (Maximum_Messages): New name for Maximum_Errors.
9275
9276 * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
9277 Maximum_Messages.
9278
9279 * bindusg.adb, usage.adb: Update line for -gnatm switch
9280
9281 * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
9282 -mnn binder switch.
9283
92842009-04-09 Robert Dewar <dewar@adacore.com>
9285
9286 * sem_ch10.adb: Minor reformatting.
9287
beb50807
AC
92882009-04-09 Bob Duff <duff@adacore.com>
9289
9290 * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
9291 Set Sloc of generated nodes for calls to Undefer_Aborts and
9292 Save_Occurrence to No_Location, so the debugger ignores them and
9293 therefore does not jump back and forth when single stepping.
9294
92952009-04-09 Robert Dewar <dewar@adacore.com>
9296
9297 * switch-b.adb: Minor reformatting.
9298
a4100e55
RD
92992009-04-09 Robert Dewar <dewar@adacore.com>
9300
9301 * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
9302 sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
9303 exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
9304 sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
9305 einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
9306 tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
9307 exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
9308 sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
9309 sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
9310 sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
9311 Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
9312
f17889b3
RD
93132009-04-09 Robert Dewar <dewar@adacore.com>
9314
9315 * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
9316
9317 * atree.h: Add Elist26
9318
9319 * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
9320 backends.
9321
b16d9747
JM
93222009-04-09 Javier Miranda <miranda@adacore.com>
9323
9324 * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
9325 retrieve from the Dispatch_Table_Wrappers list the external name.
9326 Addition of documentation.
9327 (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
9328 used to export secondary dispatch tables (in the previous version of
9329 the frontend only primary dispatch tables were exported). Addition of
9330 documentation.
9331 (Import_DT): New subprogram (internal of Make_Tags). Used to import a
9332 dispatch table of a given tagged type.
9333 (Make_Tags): Modified to import secondary dispatch tables.
9334
9335 * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
9336 (Constant_Redeclaration): Code cleanup.
9337
9338 * einfo.ads (Dispatch_Table_Wrapper): Renamed to
9339 Dispatch_Table_Wrappers. Update documentation.
9340
9341 * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
9342 Renamed to Dispatch_Table_Wrappers.
9343
9344 * sem_util.adb (Collect_Interface_Components): Improve handling of
9345 private types.
9346
9347 * atree.ads (Elist26, Set_Elist26): New subprograms
9348
9349 * atree.adb (Elist26, Set_Elist26): New subprograms
9350
59262ebb
AC
93512009-04-09 Javier Miranda <miranda@adacore.com>
9352
9353 * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
9354 (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
9355 tagged types.
9356
93572009-04-09 Robert Dewar <dewar@adacore.com>
9358
9359 * s-direio.adb: Minor reformatting
9360
9361 * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
9362
fa969310
AC
93632009-04-09 Robert Dewar <dewar@adacore.com>
9364
9365 * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
9366
93672009-04-09 Pascal Obry <obry@adacore.com>
9368
9369 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
9370 s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
9371 a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
9372 a-filico.ads: Add some missing overriding keywords.
9373
3c25856a
AC
93742009-04-09 Pascal Obry <obry@adacore.com>
9375
9376 * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
9377 a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
9378 a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
9379 reformatting.
9380
93812009-04-09 Ed Schonberg <schonberg@adacore.com>
9382
9383 * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
9384 missing overriding indicator if the new declaration is not seen as
9385 primitive.
9386
76c597a1
AC
93872009-04-09 Thomas Quinot <quinot@adacore.com>
9388
9389 * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
9390 overflows in computation of bounds.
9391
93922009-04-09 Pascal Obry <obry@adacore.com>
9393
9394 * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
9395 typos in comment.
9396
95b89f1b
AC
93972009-04-09 Robert Dewar <dewar@adacore.com>
9398
9399 * sem_attr.adb (Check_Stream_Attribute): Check violation of
9400 restriction No_Streams
9401
9402 * gnat_rm.texi: Clarify No_Streams restriction
9403
9404 * g-socket.adb: Minor reformatting.
9405
94062009-04-09 Thomas Quinot <quinot@adacore.com>
9407
9408 * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
9409
94102009-04-09 Geert Bosch <bosch@adacore.com>
9411
9412 * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
9413 (Set_Result): Likewise.
9414 (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
9415 conversion, as required by RM 4.6(31).
9416
3d5952be
AC
94172009-04-08 Robert Dewar <dewar@adacore.com>
9418
9419 * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
9420 suppressed.
9421
9422 * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
9423 resolution steps.
9424
94252009-04-08 Robert Dewar <dewar@adacore.com>
9426
9427 * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
9428 No_Local_Allocators restriction preventing local instantiation.
9429
94302009-04-08 Thomas Quinot <quinot@adacore.com>
9431
9432 * sem_eval.adb: Minor comment fix
9433
94342009-04-08 Thomas Quinot <quinot@adacore.com>
9435
9436 * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
9437 New limited controlled type used to automate the initialization and
9438 finalization of the sockets implementation.
9439 (GNAT.Sockets.Initialize, Finalize): Make these no-ops
9440
94412009-04-08 Vincent Celier <celier@adacore.com>
9442
9443 * prj-attr.adb: New read-only project-level attribute Project_Dir
9444
9445 * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
9446 read-only attribute of the same name.
9447 (Process_Declarative_Items): Call Add_Attributes with Project_Dir
9448 (Recursive_Process): Ditto
9449
9450 * snames.adb: Add new standard name Project_Dir
9451
9452 * snames.ads: Add new standard name Project_Dir
9453
b568955d
AC
94542009-04-08 Thomas Quinot <quinot@adacore.com>
9455
9456 * checks.adb: Minor reformatting
9457
94582009-04-08 Vincent Celier <celier@adacore.com>
9459
9460 * vms_data.ads: Add documentation for new style keyword
9461 OVERRIDING_INDICATORS
9462
94632009-04-08 Robert Dewar <dewar@adacore.com>
9464
9465 * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
9466 spec is in the current unit.
9467
ed57136d
AC
94682009-04-08 Ed Schonberg <schonberg@adacore.com>
9469
9470 * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
9471 presence of entity.
9472
9473 * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
9474
94752009-04-08 Vincent Celier <celier@adacore.com>
9476
9477 * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
9478
94792009-04-08 Thomas Quinot <quinot@adacore.com>
9480
9481 * checks.ads: Minor reformatting
9482
94832009-04-08 Robert Dewar <dewar@adacore.com>
9484
9485 * gnat_rm.texi: Update documentation of pragma Obsolescent
9486
9487 * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
9488 be omitted, and allow Entity parameter to be omitted.
9489
ef7c5692
AC
94902009-04-08 Thomas Quinot <quinot@adacore.com>
9491
9492 * exp_util.adb: Minor comment fix
9493
94942009-04-08 Robert Dewar <dewar@adacore.com>
9495
9496 * g-socket.ads: Fix bad syntax in pragma Obsolescent
9497
9498 * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
9499 argument with no identifier following one that has an identifier. Was
9500 missed in some cases.
9501
9502 * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
9503 identifier.
9504 (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
9505
9506 * snames.adb: Add Name_Policy
9507
9508 * snames.ads: Add Name_Policy
9509
0c7f5241
RD
95102009-04-08 Robert Dewar <dewar@adacore.com>
9511
9512 * gnat_rm.texi: Minor reformatting
9513
9514 * par-ch2.adb: Minor reformatting
9515
ae8c7d87
RD
95162009-04-08 Robert Dewar <dewar@adacore.com>
9517
9518 * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
9519
ff69f95a
RD
95202009-04-08 Robert Dewar <dewar@adacore.com>
9521
9522 * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
9523 properly in the presence of Remote_Types or Remote_Call_Interface.
9524
9525 * sem_util.adb: Add comment.
9526
2db15b1d
AC
95272009-04-08 Robert Dewar <dewar@adacore.com>
9528
9529 * ug_words: Add /ASSUME_VALID for -gnatB
9530
9531 * vms_data.ads: Add /ASSUME_VALID for -gnatB
9532
9533 * sem_cat.adb: Add clarifying commment
9534
9535 * a-direio.ads (Bytes): Make sure value is non-zero
9536
95372009-04-08 Ed Schonberg <schonberg@adacore.com>
9538
9539 * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
9540 that does not come from source, check for a rewritten function call in
9541 prefixed notation before other forms of rewriting.
9542
95432009-04-08 Robert Dewar <dewar@adacore.com>
9544
9545 * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
9546 these are now obsolescent units used only for bootrapping with an
9547 older compiler.
9548
94fd3dc6
AC
95492009-04-08 Robert Dewar <dewar@adacore.com>
9550
9551 * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
9552
9553 * sem_ch3.adb: Minor comment updates
9554
95552009-04-08 Ed Schonberg <schonberg@adacore.com>
9556
9557 * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
9558 that come from source.
9559
40a14772
TG
95602009-04-08 Tristan Gingold <gingold@adacore.com>
9561
cac9d8d6
EB
9562 * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
9563 * gcc-interface/decl.c (prepend_attributes): New case
9564 Pragma_Thread_Local_Storage.
9565 * gcc-interface/utils.c (process_attributes): New case
9566 ATTR_THREAD_LOCAL_STORAGE.
9567
46ff89f3
AC
95682009-04-08 Ed Schonberg <schonberg@adacore.com>
9569
9570 * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
9571 by the back-end if it contains a call to a subprogram without a
9572 previous spec that is declared in the same unit.
9573
9574 * errout.ads: Update comments on uses of dirs
9575
95762009-04-08 Robert Dewar <dewar@adacore.com>
9577
9578 * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
9579
812f574f
AC
95802009-04-08 Tristan Gingold <gingold@adacore.com>
9581
9582 * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
9583 variables.
9584 Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
9585
95862009-04-08 Vincent Celier <celier@adacore.com>
9587
9588 * prj-nmsc.adb:
9589 (Add_Source): Add the mapping of the unit name to source file name in
9590 the Unit_Sources_HT hash table, if the unit name is not null.
9591
9592 * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
9593
9594 * prj.ads (Unit_Sources_Htable): New hash table instantiation
9595 (Project_Tree_Data): New component Unit_Sources_HT
9596
4c8a5bb8
AC
95972009-04-08 Thomas Quinot <quinot@adacore.com>
9598
9599 * sem_ch8.adb: Minor reformatting.
9600 Minor code reorganization.
9601
96022009-04-08 Robert Dewar <dewar@adacore.com>
9603
9604 * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
9605 snames.ads, freeze.adb, par-prag.adb: Add implementation of
9606 pragma Thread_Local_Storage, setting new flag
9607 Has_Pragma_Thread_Local_Storage in corresponding entities.
9608
ecc4ddde
AC
96092009-04-08 Emmanuel Briot <briot@adacore.com>
9610
9611 * prj.ads: Update comment on switches file
9612
9613 * prj-nmsc.adb: Code clean up. Use renaming clauses.
9614
96152009-04-08 Robert Dewar <dewar@adacore.com>
9616
9617 * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
9618
96192009-04-08 Thomas Quinot <quinot@adacore.com>
9620
9621 * ali-util.adb: Minor comment fix
9622
96232009-04-08 Ed Schonberg <schonberg@adacore.com>
9624
9625 * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
9626 appears in a context clause, and the enclosing package is mentioned in
9627 a limited_with_clause.
9628 (Use_One_Type): Reject clause if type is still incomplete.
9629
a29262fd
AC
96302009-04-08 Emmanuel Briot <briot@adacore.com>
9631
9632 * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
9633 avoid copies of Source_Data variables when possible, since these
9634 involve calls to memcpy() which are done too many times.
9635
96362009-04-08 Robert Dewar <dewar@adacore.com>
9637
9638 * exp_ch4.adb (Expand_Concatenate): Clean up code
9639
a2dc5812
AC
96402009-04-07 Thomas Quinot <quinot@adacore.com>
9641
9642 * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
9643 type for the case of concatenating a constrained array indexed by an
9644 enumeration type.
9645
96462009-04-07 Ed Schonberg <schonberg@adacore.com>
9647
9648 * sem_ch6.adb (Check_Conformance): when checking conformance of an
9649 operation that overrides an abstract operation inherited from an
9650 interface, return False if only one of the controlling formals is an
9651 access parameter.
9652
96532009-04-07 Ed Schonberg <schonberg@adacore.com>
9654
9655 * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
9656 mandated by AI05-105.
9657
96582009-04-07 Vincent Celier <celier@adacore.com>
9659
9660 * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
9661
96622009-04-07 Thomas Quinot <quinot@adacore.com>
9663
9664 * usage.adb: Minor fix in usage message.
9665
9666 * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
9667 match declaration; the correct subtype is Node_Id, not Entity_Id,
9668 because the expected node kind is an identifier, not a defining
9669 identifier.
9670
9671 * switch-c.adb: Minor reformatting.
9672
9673 * uintp.adb: Minor reformatting.
9674
96752009-04-07 Robert Dewar <dewar@adacore.com>
9676
9677 * exp_ch13.adb: Minor reformatting
9678
0ac73189
AC
96792009-04-07 Robert Dewar <dewar@adacore.com>
9680
9681 * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
9682 against missing parent.
9683
96842009-04-07 Thomas Quinot <quinot@adacore.com>
9685
9686 * xoscons.adb: Minor reformatting
9687
96882009-04-07 Robert Dewar <dewar@adacore.com>
9689
9690 * rtsfind.ads: Remove obsolete string concatenation entries
9691
96922009-04-07 Robert Dewar <dewar@adacore.com>
9693
9694 * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
9695
96962009-04-07 Ed Schonberg <schonberg@adacore.com>
9697
9698 * sem_ch10.adb (Check_Body_Required): Handle properly imported
9699 subprograms.
9700
97012009-04-07 Gary Dismukes <dismukes@adacore.com>
9702
9703 * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
9704 Attribute_Address): When Init_Or_Norm_Scalars is True and the object
9705 is of a scalar or string type then suppress the setting of the
9706 expression to Empty.
9707
9708 * freeze.adb (Warn_Overlay): Also emit the warnings about default
9709 initialization for the cases of scalar and string objects when
9710 Init_Or_Norm_Scalars is True.
9711
1732c156
AC
97122009-04-07 Bob Duff <duff@adacore.com>
9713
9714 * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
9715
97162009-04-07 Bob Duff <duff@adacore.com>
9717
9718 * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
9719 Form parameter of Text_Translation=No allows binary mode for Text_IO
9720 files.
9721
9722 * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
9723
97242009-04-07 Javier Miranda <miranda@adacore.com>
9725
9726 * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
9727 processing the bounds for bit packed arrays or VM target machines.
9728
f16d05d9
AC
97292009-04-07 Thomas Quinot <quinot@adacore.com>
9730
9731 * g-sothco.ads (Int_Access): Remove extraneous access type (use
9732 anonymous access instead).
9733 (Get_Socket_From_Set): Fix incorrectly reverted formals
9734 Last and Socket to match the underlying C routine.
9735
ad1536a1 9736 * g-socket.adb, g-socket.ads
f16d05d9
AC
9737 (Get): Use named parameter associations instead of positional ones in
9738 call go Get_Socket_From_Set, since this routine has two formals of the
9739 same type.
ad1536a1 9740 (Image): New procedure.
f16d05d9
AC
9741
9742 * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
9743 g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
9744 (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
9745 for type of Arg formal.
9746
9747 * sem_warn.adb: Minor reformatting
9748
97492009-04-07 Ed Schonberg <schonberg@adacore.com>
9750
9751 * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
9752 over record components.
9753
97542009-04-07 Nicolas Roche <roche@adacore.com>
9755
9756 * gsocket.h:
9757 Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
9758 has disappeared between VxWorks 6.4 and VxWorks 6.5
9759 In RTP mode use time.h instead of times.h
9760
97612009-04-07 Robert Dewar <dewar@adacore.com>
9762
9763 * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
9764
97652009-04-07 Kevin Pouget <pouget@adacore.com>
9766
9767 * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
9768 expanded code for constrained types.
9769
97702009-04-07 Ed Schonberg <schonberg@adacore.com>
9771
9772 * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
9773 AI05-105: in an object renaming declaration, anonymousness is a name
9774 resolution rule.
9775
9776 * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
9777
97782009-04-07 Arnaud Charlet <charlet@adacore.com>
9779
9780 * g-comlin.adb (Expansion): Fix old regression: also return directory
9781 names when matching.
9782
2fc05e3d
AC
97832009-04-07 Robert Dewar <dewar@adacore.com>
9784
9785 * exp_ch4.adb:
9786 (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
9787 (Expand_Concatenate): New name for Expand_Concatenate_String which has
9788 been rewritten to handle all types.
9789 (Expand_Concatenate_Other): Remove
9790
97912009-04-07 Ed Schonberg <schonberg@adacore.com>
9792
9793 * lib-xref.adb (Generate_Reference): A default subprogram in an
9794 instance appears within the tree for the instance, but generates an
9795 implicit reference in the ALI.
9796
fdac1f80
AC
97972009-04-07 Javier Miranda <miranda@adacore.com>
9798
9799 * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
9800 derived type that has discriminants, propagate the list of interfaces
9801 to the corresponding new base type. In addition, propagate also
9802 attribute Limited_Present (found working in this patch).
9803
98042009-04-07 Robert Dewar <dewar@adacore.com>
9805
9806 * exp_ch4.adb: Rewrite concatenation expansion.
9807
8dbd1460
AC
98082009-04-07 Ed Schonberg <schonberg@adacore.com>
9809
9810 * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
9811 relevant to packages.
9812
98132009-04-07 Robert Dewar <dewar@adacore.com>
9814
9815 * sem_attr.adb: Minor reformatting
9816
9817 * sem_ch6.adb: Minor reformatting
9818
2ddc2000
AC
98192009-04-07 Tristan Gingold <gingold@adacore.com>
9820
9821 * socket.c: Add more protections against S_resolvLib_ macros.
9822
98232009-04-07 Thomas Quinot <quinot@adacore.com>
9824
9825 * sem_attr.adb: Minor reformatting
9826
98272009-04-07 Ed Schonberg <schonberg@adacore.com>
9828
9829 * sem_ch6.adb (New_Overloaded_Entity): New predicate
9830 Is_Overriding_Alias to handle properly types that inherit two homonym
9831 operations that have distinct dispatch table entries.
9832
06a16f58
AC
98332009-04-07 Emmanuel Briot <briot@adacore.com>
9834
9835 * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
9836 looking for the end of a parenthesis group
9837
98382009-04-07 Tristan Gingold <gingold@adacore.com>
9839
9840 * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
9841
9842 * socket.c Don't use resolvLib_ macros if not defined.
9843
df46b832
AC
98442009-04-07 Robert Dewar <dewar@adacore.com>
9845
9846 * g-socket.adb: Minor reformatting.
9847
9848 * g-socthi-mingw.adb: Minor reformatting
9849
9850 * g-sothco.ads: Minor reformatting
9851
9852 * exp_ch4.adb:
9853 (Expand_Concatenate_String): Complete rewrite to generate efficient code
9854 inline instead of relying on external library routines.
9855
9856 * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
9857 s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
9858 obsolescent
9859
98602009-04-07 Ed Schonberg <schonberg@adacore.com>
9861
9862 * sem_attr.adb:
9863 (Eval_Attribute): for attributes of array objects that are not strings,
9864 attributes are not static if nominal subtype of object is unconstrained.
9865
98662009-04-07 Ed Schonberg <schonberg@adacore.com>
9867
9868 * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
9869 operations for a type T in an instance do not override each other,
9870 when T is derived from a formal private type, the corresponding
9871 operations inherited by a type derived from T outside
9872 of the instance do not override each other either.
9873
3dd9959c
AC
98742009-04-07 Robert Dewar <dewar@adacore.com>
9875
9876 (Osint.Fail): Change calling sequence to have one string arg
9877 (Make.Make_Failed): Same change
9878 All callers are adjusted to use concatenation
9879
98802009-04-07 Robert Dewar <dewar@adacore.com>
9881
9882 * exp_ch4.adb: Fix documentation typo
9883
98842009-04-07 Robert Dewar <dewar@adacore.com>
9885
9886 * tbuild.ads: Minor reformatting
9887
98882009-04-07 Javier Miranda <miranda@adacore.com>
9889
9890 * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
9891 when compiling under ZFP runtime.
9892
98932009-04-07 Robert Dewar <dewar@adacore.com>
9894
9895 * g-comlin.adb: Minor reformatting
9896
98972009-04-07 Thomas Quinot <quinot@adacore.com>
9898
9899 * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
9900 g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
9901 g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
9902 Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
9903
dcd8728b
RD
99042009-04-07 Robert Dewar <dewar@adacore.com>
9905
9906 * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
9907
9908 * opt.ads (Sprint_Line_Limit): New parameter
9909
9910 * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
9911
9912 * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
9913
9914 * usage.adb: Output information for -gnatGnn -gnatDnn
9915
99162009-04-07 Robert Dewar <dewar@adacore.com>
9917
9918 * make.adb: Minor reformatting
9919
99202009-04-07 Robert Dewar <dewar@adacore.com>
9921
9922 * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
9923
99242009-04-07 Robert Dewar <dewar@adacore.com>
9925
9926 * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
9927
c27f2f15
RD
99282009-04-07 Robert Dewar <dewar@adacore.com>
9929
9930 * checks.adb:
9931 Remove Assume_Valid parameter from In_Subrange_Of calls
9932
9933 * sem_eval.adb:
9934 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
9935 (Is_In_Range): Remove incorrect use of Assume_Valid
9936 (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
9937
9938 * sem_eval.ads:
9939 (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
9940 (Is_In_Range): Documentation cleanup
9941 (Is_Out_Of_Range): Documentation cleanup
9942
9943 * gnat_rm.texi:
9944 Add documentation for Assume_No_Invalid_Values pragma
9945
9946 * sem_ch12.adb: Minor reformatting
9947
9948 * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
9949
9950 * sem_prag.adb: Improve error message.
9951
9952 * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
9953 LF/CR no longer recognized as line terminator
9954
9955 * switch.ads: Minor documentation improvement
9956
9957 * vms_data.ads: Minor reformatting
9958
c800f862
RD
99592009-04-07 Robert Dewar <dewar@adacore.com>
9960
9961 * checks.adb (Determine_Range): Add Assume_Valid parameter
9962
9963 * checks.ads (Determine_Range): Add Assume_Valid parameter
9964
9965 * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
9966 Is_Null_Loop to suppress warnings in a loop body.
9967
9968 * exp_ch4.adb:
9969 (Rewrite_Comparison): Major rewrite to accomodate invalid values
9970
9971 * exp_ch5.adb:
9972 (Expand_N_Loop_Statement): Delete loop known not to execute
9973
9974 * opt.ads:
9975 (Assume_No_Invalid_Values): Now set to False, and as documented, this
9976 fully enables the proper handling of invalid values.
9977
9978 * sem_attr.adb:
9979 New calling sequence for Is_In_Range
9980
9981 * sem_ch5.adb:
9982 (Analyze_Iteration_Scheme): Accomodate possible invalid values
9983 in determining if a loop range is null.
9984
9985 * sem_eval.adb:
9986 (Is_In_Range): Add Assume_Valid parameter
9987 (Is_Out_Of_Range): Add Assume_Valid_Parameter
9988 (Compile_Time_Compare): Major rewrite to accomodate invalid values and
9989 also to do more accurate and complete range analysis, catching more
9990 cases.
9991
9992 * sem_eval.ads:
9993 (Is_In_Range): Add Assume_Valid parameter
9994 (Is_Out_Of_Range): Add Assume_Valid_Parameter
9995
9996 * sem_util.adb:
9997 New calling sequence for Is_In_Range
9998
9999 * sinfo.adb:
10000 (Suppress_Loop_Warnings): New flag
10001
10002 * sinfo.ads:
10003 (Is_Null_Loop): Update documentation
10004 (Suppress_Loop_Warnings): New flag
10005
10006 * gnat_ugn.texi: Document -gnatB switch
10007
9d00840d
AC
100082009-04-07 Arnaud Charlet <charlet@adacore.com>
10009
10010 * gnatvsn.ads: Bump version number.
10011
5f143024
AC
100122009-04-07 Thomas Quinot <quinot@adacore.com>
10013
10014 * exp_ch3.adb: Minor rewording (comments)
10015
100162009-04-07 Robert Dewar <dewar@adacore.com>
10017
10018 * exp_disp.adb: Minor reformatting
10019
d5859bf4
EB
100202009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10021
10022 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
10023 underlying type.
10024 * gcc-interface/trans.c (lvalue_required_p): Likewise.
10025
c86f07f6
EB
100262009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10027
10028 * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
10029 Do not convert the result. Remove obsolete comment.
10030
2d5be6c1
EB
100312009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10032
10033 * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
10034 DECL_CONTEXT.
10035 (Subprogram_Body_to_gnu): Fix pasto.
10036
10069d53
EB
100372009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10038
10039 * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
10040 (void_type_decl_node): Remove.
10041 (init_gigi_decls): Likewise.
10042 (gnat_install_builtins): Declare.
10043 (record_builtin_type): Likewise.
10044 (create_type_stub_decl): Likewise.
10045 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
10046 (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
10047 artificial.
10048 <E_Array_Subtype>: Use the index types, not only their name, in the
10049 record giving the names of the bounds, if any.
10050 For a packed array type, make it artificial only if the base type
10051 was artificial as well. Remove redundant statement.
10052 (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
10053 dummy types.
10054 Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
10055 (rest_of_type_decl_compilation_no_defer): Likewise.
10056 * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
10057 * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
10058 and use create_type_stub_decl to build it.
10059 (gnat_pushdecl): Rewrite condition.
10060 (gnat_install_builtins): Remove bogus declaration.
10061 (record_builtin_type): New function.
10062 (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
10063 of types.
10064 (create_type_stub_decl): New function.
10065 (create_type_decl): Assert that the type is not dummy. If the type
10066 hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
10067 (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
10068 (build_vms_descriptor): Likewise.
10069 (init_gigi_decls): Delete and move bulk of code to...
10070 * gcc-interface/trans.c (gigi): ...here. Use record_builtin_type.
10071 (emit_range_check): Add gnat_node parameter.
10072 (emit_index_check): Likewise.
10073 (emit_check): Likewise.
10074 (build_unary_op_trapv): Likewise.
10075 (build_binary_op_trapv): Likewise.
10076 (convert_with_check): Likewise.
10077 (Attribute_to_gnu): Adjust calls for above changes.
10078 (call_to_gnu): Likewise.
10079 (gnat_to_gnu): Likewise.
10080 (assoc_to_constructor): Likewise.
10081 (pos_to_constructor): Likewise.
10082 (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
10083 (process_type): Do not create TYPE_DECL for dummy types.
10084
229077b0
EB
100852009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10086
1e17ef87
EB
10087 * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
10088 * gcc-interface/trans.c: Fix formatting throughout. Fix comments.
10089 * gcc-interface/utils.c: Fix comments.
10090
100912009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10092
10093 * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
10094 move around.
229077b0
EB
10095 (gnat_to_gnu_type): Move around.
10096 (get_unpadded_type): Likewise.
1e17ef87
EB
10097 * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
10098 Tidy comments.
229077b0 10099
aa1aa786
EB
101002009-04-07 Eric Botcazou <ebotcazou@adacore.com>
10101
10102 * gcc-interface/trans.c (check_for_eliminated_entity): New function.
10103 (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
10104 (call_to_gnu): Invoke it instead of manually checking.
10105
63787194
EB
101062009-04-04 Eric Botcazou <ebotcazou@adacore.com>
10107
10108 * gcc-interface/utils.c (finish_record_type): Force structural equality
10109 checks if the record type is discriminated.
10110
d236ace7
EB
101112009-03-31 Eric Botcazou <ebotcazou@adacore.com>
10112
10113 * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
10114 * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
10115 * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
10116 * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
10117 * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
10118 * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
10119 * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
10120
bd9f68e0
PB
101212009-03-30 Paolo Bonzini <bonzini@gnu.org>
10122
d7be99f1
EB
10123 * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
10124 of TREE_CONSTANT_OVERFLOW.
bd9f68e0 10125
8ce94e44
JM
101262009-03-30 Joseph Myers <joseph@codesourcery.com>
10127
10128 PR rtl-optimization/323
10129 * gcc-interface/misc.c (gnat_post_options): Set
10130 flag_excess_precision_cmdline. Give an error for
10131 -fexcess-precision=standard for processors where the option is
10132 significant.
10133
d9223014
L
101342009-03-27 H.J. Lu <hongjiu.lu@intel.com>
10135
10136 PR c/39323
10137 * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
10138 on bit_align.
10139
76761bbd
OH
101402009-03-11 Olivier Hainque <hainque@adacore.com>
10141
10142 * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
10143 checks processing, remove unintended TREE_TYPE walk on index type.
10144
39ae51e0
EB
101452009-03-01 Eric Botcazou <ebotcazou@adacore.com>
10146
10147 PR ada/39264
10148 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
10149 call make_packable_type on fat pointer types.
10150 <E_Array_Subtype>: Likewise.
10151 <E_Record_Subtype>: Call make_packable_type on all record types
10152 except for fat pointer types.
10153 (make_packable_type): Likewise.
10154 (gnat_to_gnu_field): Likewise.
10155
7d01864f
EB
101562009-02-28 Eric Botcazou <ebotcazou@adacore.com>
10157
10158 * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
67901d32 10159 EH_MECHANISM change made on 2007-12-06.
7d01864f 10160
a760c977
AS
101612009-02-26 Andreas Schwab <schwab@suse.de>
10162
4c354194 10163 PR ada/39172
a760c977 10164 * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
a760c977
AS
10165 * gcc-interface/Makefile.in: Change all uses of $(srcdir),
10166 $(fsrcdir) and $(fsrcpfx) to add ada subdir.
10167 (AWK): Substitute.
10168 (target_cpu_default): Substitute.
10169
054efbba
LG
101702009-02-25 Laurent GUERBY <laurent@guerby.net>
10171
975a4fd6 10172 PR ada/39221
a760c977
AS
10173 * a-teioed.adb (Expand): Fix Result overflow.
10174
c608b4d2 101752009-02-25 Laurent GUERBY <laurent@guerby.net>
2692d7f5 10176
a760c977
AS
10177 * gcc-interface/Makefile.in: Fix multilib handling for
10178 sparc64-linux.
10179
ea675ec3
RO
101802009-02-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
10181
10182 * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
10183
e98c0739
L
101842009-02-18 H.J. Lu <hongjiu.lu@intel.com>
10185
10186 * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
10187
70f5fc7c
EB
101882009-02-16 Eric Botcazou <ebotcazou@adacore.com>
10189
10190 * gcc-interface/deftarg.c: Remove.
10191
794511d2 101922009-02-10 Olivier Hainque <hainque@adacore.com>
e98c0739 10193 Eric Botcazou <ebotcazou@adacore.com>
794511d2
EB
10194
10195 * gcc-interface/decl.c (enum alias_set_op): New enumeration.
10196 (copy_alias_set): Rename into...
10197 (relate_alias_sets): ...this. Add third parameter OP. Retrieve the
10198 underlying array of unconstrained arrays for the new type as well.
10199 If the old and new alias sets don't conflict, make one a subset of
10200 the other as per the OP parameter.
10201 (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
10202 <E_Record_Type>: Do not copy the alias set for derived types.
10203 For all types, make the alias set of derived types a superset of
10204 that of their parent type.
10205 (make_aligning_type): Adjust calls to copy_alias_set.
10206 (make_packable_type): Likewise.
10207 * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
10208 Check for alias set conflict instead of strict equality to issue the
10209 warning.
10210
c3734896
EB
102112009-02-09 Eric Botcazou <ebotcazou@adacore.com>
10212
10213 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
10214 Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
10215 (copy_alias_set): Assert that arrays have the same aliasing settings.
10216 (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
10217
9a58d4d2
EB
102182009-02-08 Eric Botcazou <ebotcazou@adacore.com>
10219
10220 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
10221 Set TYPE_NONALIASED_COMPONENT on the array type.
10222
d0ec4c99
LG
102232009-01-31 Laurent GUERBY <laurent@guerby.net>
10224
10225 * gcc-interface/Makefile.in: Fix mipsel linux handling.
a760c977 10226
4dcb8fd1
JJ
102272009-01-16 Jakub Jelinek <jakub@redhat.com>
10228
10229 * gcc-interface/Makefile.in: Fix multilib handling for
10230 powerpc64-linux.
10231
3b9c1abd
EB
102322009-01-12 Eric Botcazou <ebotcazou@adacore.com>
10233
10234 * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
10235 only useless conversions around renamed objects.
10236
13318d2f
EB
102372009-01-11 Eric Botcazou <ebotcazou@adacore.com>
10238
10239 * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
10240 the _Tag field before any discriminants in the field list.
10241 (components_to_record): Remove obsolete comment.
10242
ad41bd84
JM
10243
10244\f
8ff1dd83 10245Copyright (C) 2009 Free Software Foundation, Inc.
ad41bd84
JM
10246
10247Copying and distribution of this file, with or without modification,
10248are permitted in any medium without royalty provided the copyright
10249notice and this notice are preserved.
This page took 1.638878 seconds and 5 git commands to generate.