OSDN Git Service

* gcc-interface/utils.c (handle_vector_size_attribute): Import from
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2009-06-23  Olivier Hainque  <hainque@adacore.com>
2
3         * gcc-interface/utils.c (handle_vector_size_attribute): Import from
4         c-common.c and populate in gnat_internal_attribute_table.
5         
6 2009-06-23  Ed Schonberg  <schonberg@adacore.com>
7
8         * sem_res.adb (Valid_Conversion, Full_Designated_Type): Use
9         Available_View only when designated type of an anonymous access type
10         is  limited view.
11
12 2009-06-23  Robert Dewar  <dewar@adacore.com>
13
14         * sem_ch10.adb: Minor reformatting
15
16         * ali.ads: Mino reformatting.
17
18         * gnat1drv.adb (Adjust_Global_Switches): New procedure (take care of
19         turning off inlining if ASIS mode active).
20         
21         * switch-c.adb: Remove fiddling with Inspector_Mode and ASIS_Mode
22         This belongs in gnat1drv.adb after switches are scanned.
23
24 2009-06-23  Hristian Kirtchev  <kirtchev@adacore.com>
25
26         * sem_attr.adb: Add with and use clauses for Sem_Ch10.
27         (Check_Not_Incomplete_Type): Minor reformatting. Retrieve the root type
28         when dealing with class-wide types. Detect a legal shadow entity and
29         retrieve its non-limited view.
30
31         * sem_ch10.adb (Has_With_Clause): Move the spec and body of the
32         subprogram to top package level from Intall_Limited_Withed_Unit.
33         (Install_Limited_Withed_Unit): Remove spec and body of Has_With_Clause.
34         Add check which prevents the installation of a limited view if the
35         non-limited view is already visible through a with clause.
36         (Is_Legal_Shadow_Entity_In_Body): New routine. Detect a residual, but
37         legal shadow entity which may occur in subprogram formals of anonymous
38         access type.
39
40         * sem_ch10.ads (Is_Legal_Shadow_Entity_In_Body): New routine.
41
42         * sem_ch3.adb (Access_Definition): Remove the propagation of flag
43         From_With_Type from the designated type to the generated anonymous
44         access type. Remove associated comment.
45
46         * sem_res.adb Add with and use clauses for Sem_Ch10.
47         (Full_Designated_Type): Detect a legal shadow entity and retrieve its
48         non-limited view. Since the shadow entity may replace a regular
49         incomplete type, return the available full view.
50
51 2009-06-23  Ed Schonberg  <schonberg@adacore.com>
52
53         * sem_ch10.adb (Remove_Limited_With_Clause): Clean up code that handles
54         incomplete type declarations. Previous code was potentially quadratic
55         in the number of visible declarations in any package appearing in a
56         limited_with_clause.
57
58 2009-06-23  Robert Dewar  <dewar@adacore.com>
59
60         * prj-conf.ads, prj-part.adb, prj-proc.adb, prj-proc.ads, sem_ch8.adb,
61         xref_lib.adb: Minor reformatting
62
63 2009-06-23  Robert Dewar  <dewar@adacore.com>
64
65         * a-stzhas.adb: Provide dummy body to avoid build problems with old
66         versions which did have a body for this unit.
67
68 2009-06-23  Vincent Celier  <celier@adacore.com>
69
70         * prj-attr.adb: Attribute names Initial_Required_Switches and
71         Final_Required_Switches changed to Leading_Required_Switches and
72         Trailing_Required_Switches.
73
74         * prj-nmsc.adb (Process_Compiler): Attribute names
75         Initial_Required_Switches and Final_Required_Switches changed to
76         Leading_Required_Switches and Trailing_Required_Switches.
77
78         * prj.ads (Language_Config): Component Initial_Required_Switches and
79         Final_Required_Switches changed to Leading_Required_Switches and
80         Trailing_Required_Switches.
81
82         * snames.ads-tmpl: Remove standard names Initial_Required_Switches and
83         Final_Required_Switches; add standard names Leading_Required_Switches
84         and Trailing_Required_Switches.
85
86 2009-06-23  Thomas Quinot  <quinot@adacore.com>
87
88         * prj-conf.adb: Minor reformatting
89
90         * xref_lib.adb: Minor cleanup
91
92 2009-06-23  Emmanuel Briot  <briot@adacore.com>
93
94         * prj-proc.adb, prj-proc.ads, prj-nmsc.adb, prj-nmsc.ads, prj-conf.adb,
95         prj-conf.ads (Check_Configuration): New parameter
96         Compiler_Driver_Mandatory.
97
98 2009-06-23  Ed Schonberg  <schonberg@adacore.com>
99
100         * sem_ch10.adb (Analyze_With_Clause): If a subprogram instance in the
101         context of the current unit has an inline pragma, the instance is not
102         rewritten as the declaration of the package wrapper. Handle both
103         possibilities when retrieving the visible subprogram that renames the
104         instantiation itself.
105
106 2009-06-23  Javier Miranda  <miranda@adacore.com>
107
108         * exp_ch4.adb (Displace_Allocator_Pointer, Expand_N_Allocator): Handle
109         designated types referencing entities from the limited view.
110
111 2009-06-23  Robert Dewar  <dewar@adacore.com>
112
113         * s-strhas.adb, s-strhas.ads: Restrict to 32-bit modular types
114
115         * s-imgdec.adb (Set_Decimal_Digits): Fix error of too many digits for
116         small values
117
118         * prj-conf.ads: Minor reformatting
119
120         * prj-conf.adb: Minor reformatting
121
122 2009-06-23  Vasiliy Fofanov  <fofanov@adacore.com>
123
124         * g-debpoo.adb (Dump_Gnatmem): Output dummy timestamps for allocations
125         to correspond to the log format that gnatmem now expects.
126
127 2009-06-23  Vincent Celier  <celier@adacore.com>
128
129         * prj-attr.adb: New attributes Initial_Required_Switches,
130         Final_Required_Switches and Object_File_Switches
131         
132         * prj-nmsc.adb (Process_Compiler): Process new attributes
133         Name_Final_Required_Switches, Name_Initial_Required_Switches and
134         Name_Object_File_Switches.
135
136         * prj.ads (Language_Config): New component
137         Compiler_Initial_Required_Switches (replace Compiler_Required_Switches),
138         Compiler_Final_Required_Switches and Object_File_Switches.
139
140         * snames.ads-tmpl: New standard names Initial_Required_Switches,
141         Final_Required_Switches and Object_File_Switches
142
143 2009-06-23  Pascal Obry  <obry@adacore.com>
144
145         * s-strhas.adb, s-strhas.ads: Minor reformatting.
146
147 2009-06-23  Ed Schonberg  <schonberg@adacore.com>
148
149         * sem_ch10.adb (Install_Limited_Withed_Unit): a null procedure does
150         not indicate that the enclosing unit needs a body.
151
152 2009-06-23  Emmanuel Briot  <briot@adacore.com>
153
154         * prj-conf.ads, prj-conf.adb: New files part of the project manager.
155
156 2009-06-23  Ed Schonberg  <schonberg@adacore.com>
157
158         * sem_ch3.adb (Derive_Subprogram): If the inherited subprogram is a
159         primitive equality include it with its source name even if the
160         operation is currently invisible, to make sure that the corresponding
161         slot in the dispatch table is reserved for the internal equality
162         subsequently generated during expansion.
163
164 2009-06-23  Matthew Gingell  <gingell@adacore.com>
165
166         * Makefile.rtl, a-stwiha.adb: Add a-stwiha.adb back.
167
168 2009-06-22  Jose Ruiz  <ruiz@adacore.com>
169
170         * sysdep.c (__gnat_localtime_tzoff for RTX):
171         SystemTimeToTzSpecificLocalTime is not supported by RTX. Use
172         GetTimeZoneInformation instead.
173
174 2009-06-22  Robert Dewar  <dewar@adacore.com>
175
176         * sem_res.adb (Check_No_Direct_Boolean_Operators): New procedure
177
178 2009-06-22  Ed Schonberg  <schonberg@adacore.com>
179
180         * sem_ch12.adb (Collect_Previous_Instances): Do not collect
181         instantiations declared in a previous generic package body.
182
183 2009-06-22  Robert Dewar  <dewar@adacore.com>
184
185         * gnat_rm.texi: Add doc that X=True and X=False is allowed for the
186         restriction No_Direct_Boolean_Operators.
187
188 2009-06-22  Thomas Quinot  <quinot@adacore.com>
189
190         * bindusg.adb: Minor fixes to gnatbind usage message
191
192         * sem_eval.adb: Minor reformatting
193
194 2009-06-22  Javier Miranda  <miranda@adacore.com>
195
196         * sem_ch3.adb (Analyze_Object_Declaration, Freeze_Entity): Move to the
197         freezing point the check on the use of abstract types in object
198         declarations. Done to allow the declaration of C++ imported variables
199         or constants whose type corresponds with an imported C++ classes for
200         which the constructor is not imported.
201
202 2009-06-22  Thomas Quinot  <quinot@adacore.com>
203
204         * sem_ch6.adb: Minor reformatting
205
206 2009-06-22  Ed Schonberg  <schonberg@adacore.com>
207
208         * exp_ch3.adb (Build_Initialization_Call): If a discriminated record
209         component is constrained with an expression rather than with a
210         discriminant of the enclosing type, use that expression when building
211         the call to default-initialize the component, when the call is part of
212         an aggregate with box initialization.
213
214 2009-06-22  Ed Schonberg  <schonberg@adacore.com>
215
216         * sem_ch6.adb (Check_Overriding_Indicator): Clean up code, make warning
217         unconditional rather than a style check, because a formal name out of
218         order is suspicious.
219
220 2009-06-22  Vincent Celier  <celier@adacore.com>
221
222         * prj-nmsc.adb (Locate_Directory): Indicate the project name when
223         creating a directory automatically.
224
225 2009-06-22  Eric Botcazou  <ebotcazou@adacore.com>
226
227         * sem_ch3.adb (Create_Constrained_Components): For a subtype of an
228         untagged derived type, add a hidden component for every constrained
229         discriminant of the parent type to keep record layout consistent.
230
231 2009-06-22  Thomas Quinot  <quinot@adacore.com>
232
233         * exp_ch3.adb: Minor code reorganization (avoid an unnecessary tree
234         copy).
235
236 2009-06-22  Matthew Gingell  <gingell@adacore.com>
237
238         * a-stzhas.adb, a-stwiha.adb, impunit.adb, a-swbwha.adb, a-shcain.adb,
239         s-htable.adb, a-szuzha.adb, a-stunha.adb, a-stboha.adb, a-strhas.adb,
240         g-spitbo.adb, s-strhas.adb, a-szbzha.adb, s-strhas.ads, Makefile.rtl,
241         a-swuwha.adb: New unit System.String_Hash.  
242         Refactor redundant cut and pasted hash functions with instances of a
243         new generic hash function.
244         Implement a new string hashing algorithm which appears in testing to
245         be move effective than to previous approach.
246
247 2009-06-22  Ed Falis  <falis@adacore.com>
248
249         * sysdep.c: remove include for nfsLib.h and an NFS specific error
250         message for VxWorks 653 vThreads: not supported by the OS.
251
252         * gsocket.h: disable sockets for VxWorks 653 vThreads.
253
254 2009-06-22  Robert Dewar  <dewar@adacore.com>
255
256         * sem_ch6.adb: Add ??? comment for bad use of Style_Check
257
258 2009-06-22  Robert Dewar  <dewar@adacore.com>
259
260         * sinput.adb, sinput.ads (Expr_First_Char, Expr_Last_Char): Replaced
261         by Sloc_Range.
262
263         * freeze.adb: Minor comment updates
264
265         * s-valrea.adb (Bad_Based_Value): New procedure
266         (Scan_Real): Raise exceptions with messages
267
268 2009-06-22  Matthew Gingell  <gingell@adacore.com>
269
270         * adaint.h: Complete previous change.
271
272 2009-06-22  Thomas Quinot  <quinot@adacore.com>
273
274         * exp_ch7.ads, exp_ch3.adb: Minor reformatting
275
276 2009-06-22  Ed Schonberg  <schonberg@adacore.com>
277
278         * sem_ch6.adb (Check_Overriding_Indicator): When style checks are
279         enabled, emit warning when a non-controlling argument of the overriding
280         operation appears out of place vis-a-vis of the formal of the
281         overridden operation.
282
283 2009-06-22  Vincent Celier  <celier@adacore.com>
284
285         * gnatcmd.adb (Check_Files): Close temporary files after all file names
286         have been written into it.
287
288 2009-06-22  Matthew Gingell  <gingell@adacore.com>
289
290         * adaint.c, adaint.h, cstreams.c: Call stat64 on platforms where it is
291         available.
292
293 2009-06-22  Thomas Quinot  <quinot@adacore.com>
294
295         * sem_disp.adb (Check_Direct_Call): Handle the case where the full
296         view of the root type is visible at the point of the call.
297
298 2009-06-22  Pat Rogers  <rogers@adacore.com>
299
300         * gnat_ugn.texi: Revised a sentence to correct a minor grammar error.
301
302 2009-06-22  Jerome Lambourg  <lambourg@adacore.com>
303
304         * freeze.adb: Add comments.
305
306 2009-06-21  Thomas Quinot  <quinot@adacore.com>
307
308         * exp_ch3.adb, exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb,
309         sem_ch13.adb, sem_elab.adb (Exp_Prag.Expand_Pragma_Import_Or_Interface):
310         Factor out code to new subprogram...
311         (Exp_Util.Find_Init_Call): New shared routine to find the init proc call
312         for a default initialized variable.
313         (Freeze.Check_Address_Clause): Do not reset Has_Delayed_Freeze on an
314         entity that has an associated freeze node.
315         (Sem_Ch13.Analyze_Attribute_Definition_Clause, case Address):
316         If there is an init call for the object, defer it to the object freeze
317         point.
318         (Check_Elab_Call.Find_Init_Call): Rename to Check_Init_Call, to avoid
319         name clash with new subprogram introduced in Exp_Util.
320
321 2009-06-21  Robert Dewar  <dewar@adacore.com>
322
323         * einfo.ads: Minor reformatting
324
325 2009-06-21  Ed Falis  <falis@adacore.com>
326
327         * env.c (__gnat_environ): return NULL for vThreads - unimplemented
328
329 2009-06-21  Eric Botcazou  <ebotcazou@adacore.com>
330
331         * einfo.ads: Update comments.
332
333 2009-06-21  Hristian Kirtchev  <kirtchev@adacore.com>
334
335         * sem_disp.adb (Check_Direct_Call): New routine. Dispatching calls
336         where the controlling formal is of private class-wide type whose
337         completion is a synchronized type can be converted into direct calls.
338
339 2009-06-21  Vincent Celier  <celier@adacore.com>
340
341         * gnatcmd.adb (Check_Files): When all sources of the project are to be
342         indicated to gnatcheck, gnatpp or gnatmetric, always specify the list
343         of sources using -files=, so that the distinction can be made by the
344         tool of a call with no source (to display the usage) from a call with
345         a project file that contains no source.
346
347 2009-06-21  Jerome Lambourg  <lambourg@adacore.com>
348
349         * exp_ch3.adb (Build_Array_Init_Proc): Do not build the init proc in
350         case of VM convention arrays.
351
352 2009-06-20  Robert Dewar  <dewar@adacore.com>
353
354         * a-nudira.adb: Minor reformatting
355
356 2009-06-20  Ed Schonberg  <schonberg@adacore.com>
357
358         * exp_ch3.adb (Build_Record_Init_Proc): When copying initial
359         expressions (possibly from a parent type) indicate that the scope of
360         the new itypes is the initialization procedure being built.
361
362 2009-06-20  Robert Dewar  <dewar@adacore.com>
363
364         * a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
365         Needs_64, and now computed without anomolies for some dynamic types.
366
367 2009-06-20  Thomas Quinot  <quinot@adacore.com>
368
369         * sem_prag.adb: Minor reformatting
370
371         * exp_disp.ads: Minor reformatting
372
373 2009-06-20  Ed Schonberg  <schonberg@adacore.com>
374
375         * sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
376         function call is a legal expression to initialize a limited object.
377
378         * exp_ch3.adb: Rename various freeze operations that perform expansion
379         actions, to prevent confusion with subprograms in the freeze package.
380
381 2009-06-20  Ed Schonberg  <schonberg@adacore.com>
382
383         * sem.adb (Walk_Library_Units): Check instantiations first.
384
385         * sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
386         private primitive if it is a function with a controlling result that is
387         a type extension with progenitors.
388
389         * exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
390         a primitive operation of a synchronized tagged type that has a
391         controlling result.
392
393 2009-06-20  Thomas Quinot  <quinot@adacore.com>
394
395         * einfo.ads: Fix typo.
396
397 2009-06-20  Ed Falis  <falis@adacore.com>
398
399         * s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
400
401 2009-06-19  Eric Botcazou  <ebotcazou@adacore.com>
402
403         * gcc-interface/trans.c (emit_check): Do not wrap up the result
404         in a SAVE_EXPR.
405         (protect_multiple_eval): Always protect complex expressions.
406
407 2009-06-19  Emmanuel Briot  <briot@adacore.com>
408
409         * prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
410         make sure we always return a name ending with a path separator.
411
412 2009-06-19  Javier Miranda  <miranda@adacore.com>
413
414         * sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
415         Save and restore the visibility of the parent when installed.
416
417 2009-06-19  Jose Ruiz  <ruiz@adacore.com>
418
419         * s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
420         by Common which contains all these fields.
421
422         * s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
423         Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
424         Remove code duplication in this package by means of calling the
425         equivalent code in s-taprob.
426
427 2009-06-19  Robert Dewar  <dewar@adacore.com>
428
429         * a-einuoc.ads: Minor reformatting
430
431 2009-06-19  Ed Falis  <falis@adacore.com>
432
433         * a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
434         s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.
435
436 2009-06-19  Eric Botcazou  <ebotcazou@adacore.com>
437
438         * einfo.ads (Handling of Type'Size Values): Fix Object_Size values.
439
440 2009-06-19  Robert Dewar  <dewar@adacore.com>
441
442         * a-nudira.adb (Need_64): Handle negative ranges and also dynamic
443         ranges
444
445         * checks.adb (Determine_Range): Move the test for generic types later.
446
447         * sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
448         cases.
449         (Eval_Relational_Op): Fold more cases including string compares
450
451         * sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
452         function.
453
454 2009-06-19  Robert Dewar  <dewar@adacore.com>
455
456         * sem_type.ads, sem_ch12.adb: Minor reformatting
457
458         * s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly
459
460 2009-06-19  Ed Schonberg  <schonberg@adacore.com>
461
462         * exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
463         primitive operation of a rivate extension whose controlling argument
464         is an out parameter.
465
466         * sem.adb (Walk_Library_Units): exclude generic package declarations
467         from check.
468
469 2009-06-19  Thomas Quinot  <quinot@adacore.com>
470
471         * i-vxwoio.ads: Add comments
472
473 2009-06-19  Thomas Quinot  <quinot@adacore.com>
474
475         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
476         g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
477         g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
478         (GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
479         (GNAT.Sockets.Thin.Socket_Ioctl): Use new function
480         Thin_Common.Socket_Ioctl.
481         (GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
482         __gnat_socket_ioctl.
483         (__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
484         argument after the file descriptor and request code.
485
486 2009-06-19  Robert Dewar  <dewar@adacore.com>
487
488         * checks.adb: Minor reformatting
489
490 2009-06-19  Jose Ruiz  <ruiz@adacore.com>
491
492         * env.c (__gnat_environ): RTX does not support this functionality.
493
494 2009-06-19  Ed Schonberg  <schonberg@adacore.com>
495
496         * sem.adb (Walk_Library_Items): Include bodies in the list of units to
497         traverse, to account for front-end inlining and instantiations in a
498         spec or in the main unit.
499
500 2009-06-19  Robert Dewar  <dewar@adacore.com>
501
502         * checks.adb (Determine_Range): Do not attempt to get range of generic
503         type.
504
505 2009-06-19  Sergey Rybin  <rybin@adacore.com>
506
507         * gnat_ugn.texi, vms_data.ads: Add the documentation for the new
508         gnatmetric option for generating the schema file for gnatmetric XML
509         output. Add corresponding VMS qualifier.
510
511 2009-06-19  Robert Dewar  <dewar@adacore.com>
512
513         * g-cgi.adb: Minor reformatting
514
515 2009-06-19  Eric Botcazou  <ebotcazou@adacore.com>
516
517         * s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
518         signal code for SIGFPE and raise Program_Error for SIGILL.
519
520         * s-osinte-solaris.ads: Remove signal code constants for SIGFPE.
521
522 2009-06-19  Ed Schonberg  <schonberg@adacore.com>
523
524         * sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
525         generic package if there is a visibility candidate that is declared in
526         a regular package.
527
528 2009-06-18  Olivier Hainque  <hainque@adacore.com>
529
530         * system-aix64.ads: New file.
531         * gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
532         64bit system.ads for ppc64 multilib variants.
533
534 2009-06-16  Robert Dewar  <dewar@adacore.com>
535             Olivier Hainque  <hainque@adacore.com>
536
537         Relax constraints on Machine_Attribute argument types:
538         * sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
539         missing type.
540         (Analyze_Attribute, case Machine_Attribute): Allow any type for arg 3.
541         * gcc-interface/decl.c (prepend_attributes): Accept static
542         expressions of any type as attribute arguments, not only string
543         literals.
544         * gnat_rm.texi (pragma Machine_Attribute section): Adjust to reflect
545         the relaxation of the restriction on the Info argument type.
546         
547 2009-06-13  Aldy Hernandez  <aldyh@redhat.com>
548
549         * gcc-interface/utils.c (record_builtin_type): Pass location
550         argument to build_decl.
551         (create_type_stub_decl): Same.
552         (create_type_decl): Same.
553         (create_var_decl_1): Same.
554         (create_field_decl): Same.
555         (create_param_decl): Same.
556         (create_label_decl): Same.
557         (create_subprog_decl): Same.
558         * gcc-interface/decl.c (gnat_to_gnu_entity): Same.
559         * gcc-interface/trans.c (Case_Statement_to_gnu): Pass location
560         argument to create_artificial_label.
561         (Loop_Statement_to_gnu): Same.
562         (Subprogram_Body_to_gnu): Same.
563         (gnat_gimplify_stmt): Same.
564
565 2009-06-11  Richard Henderson  <rth@redhat.com>
566
567         * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to
568         OPT_gdwarfplus.
569
570 2009-06-11  Ed Schonberg  <schonberg@adacore.com>
571
572         * sem_attr.adb (Resolve_Attribute, case 'access): Add missing
573         accessibiliy check on access_to_subprogram in the context of an
574         anonymous access that is not an access parameter.
575
576 2009-06-11  Eric Botcazou  <ebotcazou@adacore.com>
577
578         * tracebak.c (i386 section): Define IS_BAD_PTR on Solaris.
579         
580 2009-06-11  Quentin Ochem  <ochem@adacore.com>
581
582         * sem_warn.adb, scng.adb, sfn_scan.adb, freeze.adb: Add CODEFIX
583         comments for message handled by GPS.
584
585 2009-06-11  Matthew Gingell  <gingell@adacore.com>
586
587         * adaint.c: Use fopen64 instead of fopen on platforms where we know
588         it's supported.
589
590 2009-06-11  Pascal Obry  <obry@adacore.com>
591
592         * g-cgi.ads: Fix comment typo.
593
594         * g-cgi.adb: Properly decode "+" in CGI parameters as spaces.
595
596 2009-06-10  Eric Botcazou  <ebotcazou@adacore.com>
597
598         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Use
599         a reference to the original type for the type of the field of the
600         XVS type.
601         (maybe_pad_type): Likewise.
602
603         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Factor
604         common predicate and remove redundant setting of TYPE_BY_REFERENCE_P.
605         Pass correctly typed arguments to create_field_decl.
606         <E_Record_Subtype>: Set BLKmode for tagged and limited types in the
607         case of contrained discriminants as well.  Use the padded base type
608         in the other case as well.  Rename temporary variable.  Tweak test.
609         Factor common access pattern.  Set GNU_SIZE only once.
610
611 2009-06-09  Olivier Hainque  <hainque@adacore.com>
612
613         * gcc-interface/utils2.c (build_call_alloc_dealloc_proc): New
614         helper for build_call_alloc_dealloc with arguments to be interpreted
615         identically.  Process the case where a GNAT_PROC to call is provided.
616         (maybe_wrap_malloc): New helper for build_call_alloc_dealloc, to build
617         and return an allocator for DATA_SIZE bytes aimed at containing a
618         DATA_TYPE object, using the default __gnat_malloc allocator.  Honor
619         DATA_TYPE alignments greater than what the latter offers.
620         (maybe_wrap_free): New helper for build_call_alloc_dealloc, to
621         release a DATA_TYPE object designated by DATA_PTR using the
622         __gnat_free entry point.
623         (build_call_alloc_dealloc): Expect object data type instead of naked
624         alignment constraint. Use the new helpers.
625         (build_allocator): Remove special processing for the super-aligned
626         case, now handled by build_call_alloc_dealloc.  Pass data
627         type instead of the former alignment argument, as expected by the new
628         interface.
629         * gcc-interface/gigi.h (build_call_alloc_dealloc): Adjust prototype
630         and comment.
631         * gcc-interface/trans.c (gnat_to_gnu) <case N_Free_Statement>:
632         Remove special processing for the super-aligned case, now handled
633         by build_call_alloc_dealloc.  Pass data type instead of the former
634         alignment argument, as expected by the new interface.
635         
636 2009-06-08  Alexandre Oliva  <aoliva@redhat.com>
637
638         * lib-writ.adb (flag_compare_debug): Import.
639         (Write_ALI): Skip during -fcompare-debug-second.
640
641 2009-06-03  Eric Botcazou  <ebotcazou@adacore.com>
642
643         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
644         adjusting the discriminant nodes in an extension, use the full view
645         of the parent subtype if it is of a private kind.
646
647 2009-06-03  Eric Botcazou  <ebotcazou@adacore.com>
648
649         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
650         _Parent field, if any, to the record before adding the other fields.
651         <E_Record_Subtype>: Put the _Controller field before the other fields
652         except for the _Tag or _Parent fields.
653         (components_to_record): Likewise.  Retrieve the _Parent field from the
654         record type.
655
656 2009-06-03  Eric Botcazou  <ebotcazou@adacore.com>
657
658         * gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
659         remove unused parameter and simplify.
660         (gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS.  Factor
661         common predicate.  Rewrite loop for clarity.  Use GNU_TYPE directly
662         as context for all discriminants.  Fix formatting nits.
663         <E_Record_Subtype>: Add cosmetic 'break'.  Test Has_Discriminants
664         before Discriminant_Constraint.  Adjust for above renaming.  Do not
665         set GNU_TYPE more than once.
666         (elaborate_entity): Test Has_Discriminants on the entity and use
667         Implementation_Base_Type.
668         (components_to_record): Rename component_list to gnat_component_list.
669         Retrieve the _Parent field from the list.  Fix nits in comments.
670         Clarify logic in loop.  Pass correct arguments to create_field_decl.
671
672 2009-06-02  Eric Botcazou  <ebotcazou@adacore.com>
673
674         * gcc-interface/Make-lang.in: Fix formatting.
675
676 2009-06-01  Olivier Hainque  <hainque@adacore.com>
677             Eric Botcazou  <ebotcazou@adacore.com>
678         
679         * gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
680         to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
681         on the result if at least one of the input fields couldn't be output
682         as a static constant any more.
683
684 2009-06-01  Olivier Hainque  <hainque@adacore.com>
685             Eric Botcazou  <ebotcazou@adacore.com>
686         
687         * gcc-interface/utils2.c (gnat_build_constructor): Factor
688         out code.  Use initializer_constant_valid_for_bitfield_p and
689         CONSTRUCTOR_BITFIELD_P for bit-fields.
690
691 2009-05-26  Ian Lance Taylor  <iant@google.com>
692
693         * gcc-interface/Makefile.in (COMPILER): Define.
694         (COMPILER_FLAGS, ALL_COMPILERFLAGS): Define.
695         (.c.o, cio.o, init.o, initialize.o, targext.o): Use $(COMPILER).
696         (seh_init.o, tracebak.o): Likewise.
697         * gcc-interface/Make-lang.in (ada/targext.o): Likewise.
698         (ada/cio.o, ada/init.o, ada/initialize.o, ada/raise.o): Likewise.
699         (ada/tracebak.o, ada/cuintp.o, ada/decl.o, ada/misc.o): Likewise.
700         (ada/targtyps.o, ada/trans.o, ada/utils.o): Likewise.
701         (ada/utils2.o): Likewise.
702
703 2009-05-24  Olivier Hainque  <hainque@adacore.com>
704
705         * switch.adb (Is_Internal_GCC_Switch, Switch_Last): Bodies of ...
706         * switch.ads (Is_Internal_GCC_Switch, Switch_Last): New functions.
707         Add -auxbase variants to the list of recognized internal switches.
708         * back_end.adb (Scan_Back_End_Switches): Use the new functions and
709         adjust comments.
710         * lib.ads: Make comment on internal GCC switches more general.
711         * gcc-interface/lang-specs.h (specs for Ada): Pass -auxbase variants
712         as for C.       
713         
714 2009-05-23  Eric Botcazou  <ebotcazou@adacore.com>
715
716         * gcc-interface/misc.c (gnat_get_subrange_bounds): Fix thinko.
717
718 2009-05-23  Eric Botcazou  <ebotcazou@adacore.com>
719
720         * gcc-interface/decl.c (set_rm_size): Bypass the check for packed array
721         types.
722
723 2009-05-23  Eric Botcazou  <ebotcazou@adacore.com>
724
725         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not modify the
726         original type because of the alignment when there is an address clause.
727
728 2009-05-20  Eric Botcazou  <ebotcazou@adacore.com>
729
730         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
731         discriminants affect the shape of the subtype, retrieve the GCC type
732         directly from the original field if the GNAT types for the field and
733         the original field are the same.
734
735 2009-05-15  Eric Botcazou  <ebotcazou@adacore.com>
736
737         * gcc-interface/ada-tree.h (TYPE_GCC_MIN_VALUE, TYPE_GCC_MAX_VALUE):
738         New macros.
739         (TYPE_RM_VALUES): Likewise.
740         (TYPE_RM_SIZE): Rewrite in terms of TYPE_RM_VALUES.
741         (SET_TYPE_RM_SIZE): New macro.
742         (TYPE_RM_MIN_VALUE, TYPE_RM_MAX_VALUE): Likewise.
743         (SET_TYPE_RM_SIZE, SET_TYPE_RM_MAX_VALUE): Likewise.
744         (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Redefine.
745         * gcc-interface/gigi.h (create_range_type): Declare.
746         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>
747         Use SET_TYPE_RM_MAX_VALUE to set the upper bound on the UMT type.
748         <E_Signed_Integer_Subtype>: Build a regular integer type first and
749         then set the RM bounds.  Use SET_TYPE_RM_SIZE to set the RM size.
750         <E_Floating_Point_Subtype>: Build a regular floating-point type first
751         and then set the RM bounds.
752         <E_Array_Type>: Use create_range_type instead of build_range_type.
753         <E_Array_Subtype>: Build a regular integer type first and then set
754         the RM bounds for the extra subtype.
755         <E_String_Literal_Subtype>: Use create_range_type instead of
756         build_range_type.
757         <all>: Set the RM bounds for enumeration types and the GCC bounds for
758         floating-point types.
759         (set_rm_size): Use SET_TYPE_RM_SIZE to set the RM size.
760         (make_type_from_size) <INTEGER_TYPE>: Use SET_TYPE_RM_{MIN,MAX}_VALUE
761         to set the bounds.  Use SET_TYPE_RM_SIZE to set the RM size.
762         (substitute_in_type) <INTEGER_TYPE>: Deal with GCC bounds for domain
763         types and with RM bounds for subtypes.
764         * gcc-interface/misc.c (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
765         (gnat_print_type) <REAL_TYPE>: New case.
766         <ENUMERAL_TYPE>: Fall through to above case.
767         (gnat_get_subrange_bounds): New function.
768         * gcc-interface/trans.c (add_decl_expr): Mark the trees rooted as
769         TYPE_RM_MIN_VALUE and TYPE_RM_MAX_VALUE, if any.
770         * gcc-interface/utils.c (gnat_init_decl_processing): Use precision 8
771         for booleans.  Adjust and use SET_TYPE_RM_SIZE to set the RM size.
772         (create_range_type): New function.
773         (create_param_decl): Build a regular integer type first and then set
774         the RM bounds for the extra subtype.
775         (unchecked_convert): Remove kludge for 'Valid.
776         * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Convert
777         the index to sizetype instead of TYPE_DOMAIN.
778
779 2009-05-14  Eric Botcazou  <ebotcazou@adacore.com>
780
781         * gcc-interface/decl.c (elaborate_expression_1): Remove GNAT_EXPR
782         parameter and move check for static expression to...
783         (elaborate_expression): ...here.  Adjust call to above function.
784         (gnat_to_gnu_entity): Likewise for all calls.  Use correct arguments
785         in calls to elaborate_expression.
786         (elaborate_entity): Likewise.
787         (substitution_list): Likewise.
788         (maybe_variable): Fix formatting.
789         (substitute_in_type) <REAL_TYPE>: Merge with INTEGER_TYPE case and add
790         missing guard.
791         * gcc-interface/trans.c (protect_multiple_eval): Minor cleanup.
792
793 2009-05-07  Arnaud Charlet  <charlet@adacore.com>
794
795         * gcc-interface/Make-lang.in: Update dependencies.
796
797 2009-05-06  Laurent GUERBY  <laurent@guerby.net>
798
799         * s-linux.ads, s-linux-alpha.ads, s-linux-hppa.ads, osinte-linux.ads:
800         Define sa_handler_pos.
801         * s-osinte-linux.ads: Use it.
802         * s-linux-mipsel.ads: New.
803         * system-linux-mips64el.ads: New.
804         * gcc-interface/Makefile.in: Multilib handling for mipsel-linux and
805         mips64el-linux.
806
807 2009-05-06  Arnaud Charlet  <charlet@adacore.com>
808
809         * exp_ch5.adb, exp_util.adb, exp_attr.adb, sem_util.adb, sem_res.adb,
810         targparm.adb, targparm.ads, exp_ch4.adb, exp_ch6.adb, exp_disp.adb,
811         opt.ads, exp_aggr.adb, exp_intr.adb, sem_disp.adb, exp_ch3.adb
812         (Tagged_Type_Expansion): New flag.
813         Replace use of VM_Target related to tagged types expansion by
814         Tagged_Type_Expansion, since tagged type expansion is not necessarily
815         linked to VM targets.
816
817 2009-05-06  Robert Dewar  <dewar@adacore.com>
818
819         * sem_attr.adb: Add processing for Standard'Compiler_Version
820
821         * sinput.adb (Expr_Last_Char): Fix some copy-paste errors for paren
822         skipping.
823         (Expr_First_Char): Add ??? comment that paren skipping needs work
824         (Expr_Last_Char): Add ??? comment that paren skipping needs work
825
826         * exp_attr.adb: Add processing for Compiler_Version
827
828         * sem_attr.adb: New attribute Compiler_Version
829
830         * snames.ads-tmpl: Add entries for Compiler_Version attribute
831
832         * gnat_rm.texi: Document Compiler_Version attribute
833
834 2009-05-06  Robert Dewar  <dewar@adacore.com>
835
836         * errout.adb: Minor reformatting
837
838         * scng.adb, sem_prag.adb, par-ch4.adb, sem_res.adb, par-ch6.adb,
839         sem_ch6.adb, par-prag.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
840         styleg.adb: Add stylized comments to error messages that are included
841         in the codefix circuitry of IDE's such as GPS.
842
843 2009-05-06  Sergey Rybin  <rybin@adacore.com>
844
845         * gnat_ugn.texi: For Misnamed_Identifiers rule all description of the
846         new form of the rule parameter that allows to specify the suffix for
847         access-to-access type names.
848
849 2009-05-06  Robert Dewar  <dewar@adacore.com>
850
851         * sem_warn.adb (Warn_On_Useless_Assignment): Avoid false negative for
852         out parameter assigned when exception handlers are present.
853
854         * sem_ch5.adb (Analyze_Exit_Statement): Kill current value last
855         assignments on exit.
856
857         * par-ch9.adb, sem_aggr.adb, par-endh.adb, sem_res.adb, par-ch6.adb,
858         sinput-l.adb, par-load.adb, errout.ads, sem_ch4.adb, lib-load.adb,
859         prj-dect.adb, par-ch12.adb, sem_ch8.adb, par-util.adb, par-ch3.adb,
860         par-tchk.adb, par-ch5.adb: This patch adds stylized comments to error
861         messages that are included in the codefix circuitry of IDE's such as
862         GPS.
863
864         * sinput.ads, sinput.adb (Expr_First_Char): New function
865         (Expr_Last_Char): New function
866
867 2009-05-06  Sergey Rybin  <rybin@adacore.com>
868
869         * gnat_ugn.texi: Add subsection for Exits_From_Conditional_Loops rule
870         Add formal definition for extra exit point metric
871
872 2009-05-06  Pascal Obry  <obry@adacore.com>
873
874         * adaint.c: Support for setting attributes on unicode filename on
875         Windows.
876
877 2009-05-06  Robert Dewar  <dewar@adacore.com>
878
879         * sem_warn.adb: Minor reformatting
880
881 2009-05-06  Javier Miranda  <miranda@adacore.com>
882
883         * sem_prag.adb (Process_Import_Or_Interface): Imported CPP types must
884         not have discriminants or components with default expressions.
885         (Analyze_Pragma): For pragma CPP_Class check that imported types
886         have no discriminants and components have no default expression.
887
888         * sem_aggr.adb (Resolve_Aggr_Expr): Add missing check on wrong use of
889         class-wide types in the expression of a record component association.
890
891 2009-05-06  Sergey Rybin  <rybin@adacore.com>
892
893         * vms_data.ads: Add qualifier for gnatmetric extra exit points metric
894
895         * gnat_ugn.texi: Add description for the new extra exit points metric
896         (gnatmetric section).
897
898 2009-05-06  Robert Dewar  <dewar@adacore.com>
899
900         * s-fileio.adb: Minor comment update
901
902         * sem_ch8.adb: Minor reformatting
903
904         * exp_ch3.adb: Update comments.
905
906 2009-05-06  Tristan Gingold  <gingold@adacore.com>
907
908         * init.c, s-osinte-darwin.ads: Reduce alternate stack size
909
910 2009-05-06  Arnaud Charlet  <charlet@adacore.com>
911
912         * gcc-interface/Makefile.in: Update LIBGNAT_TARGET_PAIRS for Xenomai.
913         Fix missing unit for rtp-smp runtime on both ppc and x86 vxworks
914
915         * gcc-interface/Make-lang.in: Update dependencies
916
917 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
918
919         * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Revert previous
920         change. The context clause of a generic instance declaration must be
921         preserved until the end of the compilation, because it may have to be
922         installed/removed repeatedly.
923         The latest change to sem.adb ensures that the context of both spec and
924         body of an instance is traversed before the instance itself, making
925         this patch redundant.
926
927 2009-05-06  Gary Dismukes  <dismukes@adacore.com>
928
929         * sem_aggr.adb: Fix typo.
930
931 2009-05-06  Thomas Quinot  <quinot@adacore.com>
932
933         * exp_ch3.adb (Expand_N_Object_Declaration): For a controlled object
934         declaration, do not adjust if the declaration is to be rewritten into
935         a renaming.
936
937 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
938
939         * sem_ch8.adb (Find_Type): Reject the use of a task type in its own
940         discriminant part.
941
942 2009-05-06  Bob Duff  <duff@adacore.com>
943
944         * s-fileio.adb (File_IO_Clean_Up_Type): Make this type limited, since
945         otherwise the compiler would be allowed to optimize away the cleanup
946         code.
947
948 2009-05-06  Gary Dismukes  <dismukes@adacore.com>
949
950         * gnat_ugn.texi: Fix typo.
951
952 2009-05-06  Thomas Quinot  <quinot@adacore.com>
953
954         * g-debuti.adb: Minor reformatting
955
956         * exp_attr.adb: Minor reformatting
957
958 2009-05-06  Robert Dewar  <dewar@adacore.com>
959
960         * sem_aggr.adb: Minor reformatting.
961
962         * g-socthi-vms.adb: Minor reformatting
963
964 2009-05-06  Bob Duff  <duff@adacore.com>
965
966         * g-table.ads, g-table.adb, g-dyntab.ads, g-dyntab.adb:
967         (Append_All): Add Append_All to g-table and g-dyntab, similar to table.
968
969 2009-05-06  Bob Duff  <duff@adacore.com>
970
971         * gnat_ugn.texi, gnat_rm.texi: Add missing documentation for warnings
972         flags.
973
974 2009-05-06  Javier Miranda  <miranda@adacore.com>
975
976         * sem_aggr.adb (Valid_Ancestor_Type): Add support for C++ constructors.
977         (Resolve_Extension_Aggregate): Do not reject C++ constructors in
978         extension aggregates.
979         (Resolve_Record_Aggregate): Add support for C++ constructors in
980         extension aggregates.
981
982         * exp_aggr.adb (Build_Record_Aggr_Code): Add support for C++
983         constructors in extension aggregates.
984
985 2009-05-06  Robert Dewar  <dewar@adacore.com>
986
987         * freeze.adb (Freeze_Record_Type): Improve error msg for bad size
988         clause.
989
990 2009-05-06  Thomas Quinot  <quinot@adacore.com>
991
992         * g-socthi-vms.adb (C_Recvmsg, C_Sendmsg): Convert Msg to appropriate
993         packed type, since on OpenVMS, struct msghdr is packed.
994
995 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
996
997         * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
998         call returning an unconstrained composite value, create the proper
999         subtype for it, as is done for object dclarations with unconstrained
1000         nominal subtypes. Perform this transformation regarless of whether
1001         call comes from source.
1002
1003 2009-05-06  Robert Dewar  <dewar@adacore.com>
1004
1005         * freeze.adb (Freeze_Record_Type): Implement Implicit_Packing for
1006         records
1007
1008         * gnat_rm.texi:
1009         Add documentation for pragma Implicit_Packing applied to record
1010         types.
1011
1012 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
1013
1014         * sem.adb (Walk_Library_Items): Place all with_clauses of an
1015         instantiation on the spec, because late instance bodies may generate
1016         with_clauses for the instance body but are inserted in the instance
1017         spec.
1018
1019 2009-05-06  Emmanuel Briot  <briot@adacore.com>
1020
1021         * prj-nmsc.adb (Locate_Directory): Remove unused parameters, and add
1022         support for returning the directory even if it doesn't exist. This is
1023         used for the object directory, since we are always setting it to a
1024         non-null value, and we should set it to an absolute name rather than a
1025         relative name for the sake of external tools that might depend on it.
1026         (Check_Library_Attributes): When Project.Library_Dir is known, check
1027         that the directory exists.
1028
1029 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
1030
1031         * sem_attr.adb (Check_Dereference): If the prefix of an attribute
1032         reference is an implicit dereference, do not freeze the designated type
1033         if within a default expression or when preanalyzing a pre/postcondtion.
1034
1035 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
1036
1037         * sem_ch8.adb (Analyze_Object_Renaming): If the object is a function
1038         call returning an unconstrained composite value, create the proper
1039         subtype for it, as is done for object dclarations with unconstrained
1040         nominal subtypes
1041
1042 2009-05-06  Robert Dewar  <dewar@adacore.com>
1043
1044         * sem_ch13.adb (Check_Constant_Address_Clause): Minor error message
1045         improvements
1046
1047         * freeze.adb: Minor reformatting
1048
1049 2009-05-06  Thomas Quinot  <quinot@adacore.com>
1050
1051         * sem_ch3.adb (Access_Type_Declaration): An access type whose
1052         designated type is a limited view from a limited with clause (flagged
1053         From_With_Type) is not itself such a limited view.
1054
1055 2009-05-06  Emmanuel Briot  <briot@adacore.com>
1056
1057         * prj-nmsc.adb: Remove unused variable.
1058
1059         * clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
1060         prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
1061         makeutl.ads, since not all users of prj.ads need this.
1062
1063 2009-05-06  Javier Miranda  <miranda@adacore.com>
1064
1065         * exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
1066         constructor in case of aggregates whose type is a CPP_Class type.
1067
1068 2009-05-06  Robert Dewar  <dewar@adacore.com>
1069
1070         * sem_ch13.adb: Minor comment additions
1071
1072         * osint.adb: Minor reformatting
1073
1074 2009-05-06  Pascal Obry  <obry@adacore.com>
1075
1076         * initialize.c: On Windows, keep full pathname to expanded command
1077         line patterns.
1078
1079 2009-05-06  Ed Schonberg  <schonberg@adacore.com>
1080
1081         * sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
1082         an aggregate with box default is of a discriminated private type, do
1083         not build a subaggregate for it.
1084         A proper call to the initialization procedure is generated for it.
1085
1086 2009-05-06  Thomas Quinot  <quinot@adacore.com>
1087
1088         * rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
1089         (Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
1090         Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
1091         use standard array code for Standard.String.
1092         (Exp_Dist): Bump PolyORB s-parint API version to 3.
1093         (Rtsfind): New entities TA_Std_String, Unbounded_String.
1094
1095 2009-05-06  Robert Dewar  <dewar@adacore.com>
1096
1097         * g-comlin.ads: Minor reformatting
1098
1099         * xoscons.adb: Minor reformatting
1100
1101 2009-05-06  Gary Dismukes  <dismukes@adacore.com>
1102
1103         * sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
1104         Underlying_Type before retrieving the type definition for gathering
1105         components, to account for the case where the type is private.
1106
1107 2009-05-06  Tristan Gingold  <gingold@adacore.com>
1108
1109         * g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).
1110
1111 2009-05-06  Thomas Quinot  <quinot@adacore.com>
1112
1113         * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1114         g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
1115         g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
1116         (GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
1117         Windows versions): Fix incorrect base
1118         address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
1119         (GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
1120         System.Address for the To parameter instead of a Sockaddr_In_Access, to
1121         achieve independance from AF_INET family, and also to allow this
1122         parameter to be retrieved from a Msghdr for the Windows case where
1123         these routines are used to implement C_Sendmsg and C_Recvmsg.
1124
1125 2009-05-06  Bob Duff  <duff@adacore.com>
1126
1127         * g-expect.adb, g-expect.ads: Minor reformatting
1128
1129         * sdefault.ads: Minor comment fix
1130
1131         * g-expect-vms.adb: Minor reformatting
1132
1133         * table.ads, table.adb (Append_All): New convenience procedure for
1134         appending a whole array.
1135
1136         * comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
1137         box message. Call Osint.Dump_Source_File_Names to print out the file
1138         list, instead of rummaging around in various data structures.
1139
1140         * debug.adb: New switch -gnatd.n, to print source file names as they
1141         are read.
1142
1143         * alloc.ads: Add parameters for Osint.File_Name_Chars.
1144
1145         * osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
1146         out source file names during a "bug box".
1147         (Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
1148         (Read_Source_File): Print out the file name, if requested via -gnatd.n.
1149         If it's not part of the runtimes, store it for later printing by
1150         Dump_Source_File_Names.
1151
1152 2009-05-06  Javier Miranda  <miranda@adacore.com>
1153
1154         * gnat_rm.texi (CPP_Constructor): Avoid duplication of the
1155         documentation and add reference to the GNAT user guide for further
1156         details.
1157
1158 2009-05-06  Javier Miranda  <miranda@adacore.com>
1159
1160         * gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
1161         also wrong examples that use extension aggregates.
1162
1163 2009-05-06  Albert Lee  <lee@adacore.com>
1164
1165         * s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
1166         of Msg_Iovlen_T for VMS.
1167
1168 2009-05-04   Laurent GUERBY  <laurent@guerby.net>
1169
1170         PR ada/38874
1171         * make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.
1172         
1173 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1174
1175         * sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
1176         box-defaulted operator in an instantiation, when the type of the
1177         operands is not directly visible.
1178
1179 2009-04-29  Gary Dismukes  <dismukes@adacore.com>
1180
1181         * sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
1182         (Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
1183         analysis of the ancestor part. Remove prohibition against limited
1184         interpretations of the ancestor expression in the case of Ada 2005.
1185         Revise error message in overloaded case, adding a message to cover
1186         the Ada 2005 case.
1187
1188 2009-04-29  Thomas Quinot  <quinot@adacore.com>
1189
1190         * xoscons.adb: Minor reformatting
1191
1192 2009-04-29  Bob Duff  <duff@adacore.com>
1193
1194         * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
1195         attribute_definition_clauses for the following attributes when the
1196         -gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
1197         Storage_Size, Write. Otherwise, we get spurious errors (for example,
1198         missing Read attribute on remote types).
1199
1200         * gnat_ugn.texi: Document the change, and add a stern warning.
1201
1202 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1203
1204         * sem_attr.adb (Check_Local_Access): Indicate that value tracing is
1205         disabled not just for the current scope, but for the innermost dynamic
1206         scope as well.
1207
1208 2009-04-29  Arnaud Charlet  <charlet@adacore.com>
1209
1210         * gcc-interface/Make-lang.in: Update dependencies
1211
1212 2009-04-29  Vincent Celier  <celier@adacore.com>
1213
1214         * prj-part.adb: Minor comment update
1215
1216 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1217
1218         * sem_aggr.adb (Resolve_Record_Aggregate): handle properly
1219         box-initialized records with discriminated subcomponents that are
1220         constrained by discriminants of enclosing components. New subsidiary
1221         procedures Add_Discriminant_Values, Propagate_Discriminants.
1222
1223 2009-04-29  Arnaud Charlet  <charlet@adacore.com>
1224
1225         * g-socket.adb: Code clean up.
1226
1227 2009-04-29  Gary Dismukes  <dismukes@adacore.com>
1228
1229         * sem_aggr.adb (Valid_Limited_Ancestor): Add test for the name of a
1230         function entity, to cover the case of a parameterless function call
1231         that has not been resolved.
1232
1233 2009-04-29  Robert Dewar  <dewar@adacore.com>
1234
1235         * err_vars.ads, prj-part.adb, scans.ads, exp_tss.adb: Minor
1236         reformatting and comment updates.
1237
1238 2009-04-29  Arnaud Charlet  <charlet@adacore.com>
1239
1240         * gnat_ugn.texi: Update some documentation about interfacing with C++
1241         Mention -fkeep-inline-functions.
1242
1243         * gnat_ugn.texi: Minor edits
1244
1245 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1246
1247         * sem_aggr.adb (Resolve_Record_Aggregate): When building an aggregate
1248         for a defaulted component of an enclosing aggregate, inherit the type
1249         from the component declaration of the enclosing type. 
1250
1251 2009-04-29  Albert Lee  <lee@adacore.com>
1252
1253         * g-socthi-vms.ads, g-socthi-vxworks.ads, s-oscons-tmplt.c,
1254         g-socthi-mingw.ads, g-socthi.ads, g-socket.adb, g-sothco.ads
1255         (System.OS_Constants): New type Msg_Iovlen_T which follows whether the
1256         msg_iovlen field in struct msghdr is 32 or 64 bits wide.
1257         Relocate the Msghdr record type from GNAT.Sockets.Thin to
1258         GNAT.Sockets.Common, and use System.OS_Constants.Msg_Iovlen_T as the
1259         type for the Msg_Iovlen field.
1260
1261 2009-04-29  Vincent Celier  <celier@adacore.com>
1262
1263         * sinput-l.adb (Load_File): When preprocessing, set temporarily the
1264         Source_File_Index_Table entries for the source, to avoid crash when
1265         reporting an error.
1266
1267         * gnatcmd.adb (Test_If_Relative_Path): Use
1268         Makeutl.Test_If_Relative_Path.
1269         
1270         * makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
1271         Including_RTS is True.
1272
1273         * makeutl.ads (Test_If_Relative_Path): New Boolean parameter
1274         Including_RTS defaulted to False.
1275
1276         * sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
1277         a default value.
1278
1279 2009-04-29  Javier Miranda  <miranda@adacore.com>
1280
1281         * gnat_ugn.texi: Adding documentation for non-default C++ constructors.
1282
1283 2009-04-29  Javier Miranda  <miranda@adacore.com>
1284
1285         * sem_ch3.adb (Analyze_Object_Declaration): Disable error message
1286         associated with dyamically tagged expressions if the expression
1287         initializing a tagged type corresponds with a non default CPP
1288         constructor.
1289         (OK_For_Limited_Init): CPP constructor calls are OK for initialization
1290         of limited type objects.
1291
1292         * sem_ch5.adb (Analyze_Assignment): Improve the error message reported
1293         when a CPP constructor is called in an assignment. Disable also the
1294         error message associated with dyamically tagged expressions if the
1295         exporession initializing a tagged type corresponds with a non default
1296         CPP constructor.
1297
1298         * sem_prag.adb (Analyze_Pragma): Remove code disabling the use of
1299         non-default C++ constructors.
1300
1301         * sem_util.ads, sem_util.adb (Is_CPP_Constructor_Call): New subprogram.
1302
1303         * exp_tss.ads, exp_tss.adb (Base_Init_Proc): Add support for
1304         non-default constructors.
1305         (Init_Proc): Add support for non-default constructors.
1306
1307         * exp_disp.adb (Set_Default_Constructor): Removed.
1308         (Set_CPP_Constructors): Code based in removed Set_Default_Constructor
1309         but extending its functionality to handle non-default constructors.
1310
1311         * exp_aggr.adb (Build_Record_Aggr_Code): Add support for non-default
1312         constructors. Minor code cleanup removing unrequired label and goto
1313         statement.
1314
1315         * exp_ch3.adb (Build_Initialization_Call): Add support for non-default
1316         constructors.
1317         (Build_Init_Statements): Add support for non-default constructors.
1318         (Expand_N_Object_Declaration): Add support for non-default constructors.
1319         (Freeze_Record_Type): Replace call to Set_Default_Constructor by call
1320         to Set_CPP_Constructors.
1321
1322         * exp_ch5.adb (Expand_N_Assignment_Statement): Add support for
1323         non-default constructors.
1324         Required to handle its use in build-in-place statements.
1325
1326         * gnat_rm.texi (CPP_Constructor): Document new extended use of this
1327         pragma for non-default C++ constructors and the new compiler support
1328         that allows the use of these constructors in record components, limited
1329         aggregates, and extended return statements.
1330
1331 2009-04-29  Vincent Celier  <celier@adacore.com>
1332
1333         * prj-part.adb (Parse_Single_Project): Do not attempt to find a
1334         project extending an abstract project.
1335
1336 2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>
1337
1338         * targparm.ads: Fix oversight.
1339
1340 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1341
1342         * lib-xref.adb (Output_Overridden_Op): Follow several levels of
1343         derivation when necessary, to find the user-subprogram that is actally
1344         being overridden.
1345
1346 2009-04-29  Robert Dewar  <dewar@adacore.com>
1347
1348         * sem_util.adb (May_Be_Lvalue): Fix cases involving indexed/selected
1349         components
1350
1351 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1352
1353         * exp_ch9.ads, exp_ch9.adb (Build_Wrapper_Spec): Use source line of
1354         primitive operation, rather than source line of synchronized type, when
1355         building the wrapper for a primitive operation that overrides an
1356         operation inherited from a progenitor, to improve the error message on
1357         duplicate declarations.
1358
1359         * sem_ch3.adb (Process_Full_View): Use new signature of
1360         Build_Wrapper_Spec.
1361
1362 2009-04-29  Robert Dewar  <dewar@adacore.com>
1363
1364         * prj-nmsc.ads: Minor reformatting
1365
1366 2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>
1367
1368         * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of the
1369         expression on the existing parent If statement.
1370
1371 2009-04-29  Robert Dewar  <dewar@adacore.com>
1372
1373         * prj-proc.adb, prj.ads: Minor reformatting
1374
1375 2009-04-29  Eric Botcazou  <ebotcazou@adacore.com>
1376
1377         * exp_ch4.adb (Expand_N_Conditional_Expression): Set the SLOC of an
1378         existing parent If statement on the newly created one.
1379
1380 2009-04-29  Emmanuel Briot  <briot@adacore.com>
1381
1382         * gnatcmd.adb, prj-proc.adb, prj-proc.ads, make.adb, prj-part.adb,
1383         prj-part.ads, prj.adb, prj.ads, clean.adb, prj-dect.adb, prj-dect.ads,
1384         prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-makr.adb
1385         (Set_In_Configuration, In_Configuration): Removed.
1386         Replaced by an extra parameter Is_Config_File in several parameter to
1387         avoid global variables to store the state of the parser.
1388
1389 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1390
1391         * sinfo.ads, sinfo.adb: New attribute Next_Implicit_With, to chain
1392         with_clauses generated for the same unit through rtsfind, and that
1393         appear in the context of different units.
1394
1395         * rtsfind.adb: New attribute First_Implicit_With, component of the
1396         Unit_Record that stores information about a unit loaded through rtsfind.
1397
1398 2009-04-29  Gary Dismukes  <dismukes@adacore.com>
1399
1400         * exp_ch3.adb (Stream_Operation_OK): Return True for limited interfaces
1401         (other conditions permitting), so that abstract stream subprograms will
1402         be declared for them.
1403
1404 2009-04-29  Bob Duff  <duff@adacore.com>
1405
1406         * g-expect.adb (Expect_Internal): Fix check for overfull buffer.
1407
1408         * g-expect.ads: Minor comment fixes.
1409
1410 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1411
1412         * freeze.adb, lib-xref.adb (Check_Dispatching_Operation): if the
1413         dispatching operation is a body without previous spec, update the list
1414         of primitive operations to ensure that cross-reference information is
1415         up-to-date.
1416
1417 2009-04-29  Albert Lee  <lee@adacore.com>
1418
1419         * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
1420         g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
1421         g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads
1422         (GNAT.Sockets.Thin.C_Readv,
1423         GNAT.Sockets.Thin.C_Writev): Remove unused subprograms.
1424         (GNAT.Sockets.Thin.C_Recvmsg,
1425         GNAT.Sockets.Thin.C_Sendmsg): New bindings to call recvmsg(2) and
1426         sendmsg(2).  
1427         (GNAT.Sockets.Receive_Vector, GNAT.Sockets.Send_Vector): Use
1428         C_Recvmsg/C_Sendmsg rather than Readv/C_Writev.
1429
1430 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1431
1432         * sem_disp.adb (Check_Dispatching_Operation): if the dispatching
1433         operation is a body without previous spec, update the list of
1434         primitive operations to ensure that cross-reference information is
1435         up-to-date.
1436
1437         * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): When creating a
1438         new compilation unit node for the instance declaration, keep the
1439         context items of the original unit on it, so that the context of the
1440         instance body only holds the context inherited from the generic body.
1441
1442 2009-04-29  Bob Duff  <duff@adacore.com>
1443
1444         * sem_res.adb: Minor comment fix.
1445
1446 2009-04-29  Thomas Quinot  <quinot@adacore.com>
1447
1448         * sem_elim.adb: Minor reformatting
1449
1450 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1451
1452         * exp_aggr.adb (Convert_To_Positional): if the current unit is a
1453         predefined unit, allow arbitrary number of components in static
1454         aggregate, to ensure that the same level of constant folding applies
1455         for Ada 95 and Ada 05 versions of the file.
1456
1457 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1458
1459         * sem_elim.adb (Check_Eliminated): Handle new improved eliminate
1460         information: no need for full scope check.
1461         (Eliminate_Error): Do not emit error in a generic context.
1462
1463 2009-04-29  Ed Falis  <falis@adacore.com>
1464
1465         * adaint.c (__gnat_rmdir): return error code if VTHREADS is defined.
1466         VxWorks 653 POS does not support rmdir.
1467
1468 2009-04-29  Matteo Bordin  <bordin@adacore.com>
1469
1470         * s-stausa.adb, s-stausa.ads: Get_Usage_Range: changing the way
1471         results are printed.
1472
1473 2009-04-29  Arnaud Charlet  <charlet@adacore.com>
1474
1475         * s-taskin.adb (Initialize): Remove pragma Warnings Off and remove
1476         unused assignment.
1477
1478 2009-04-29  Thomas Quinot  <quinot@adacore.com>
1479
1480         * make.adb: Minor reformatting.
1481         Minor code reorganization throughout.
1482
1483 2009-04-29  Matteo Bordin  <bordin@adacore.com>
1484
1485         * s-stausa.ads: Changed visibility of type Task_Result: moved to
1486         public part to give application visibility over it.
1487         This is for future improvement and to build a public API on top of it.
1488         Changed record components name of type Task_Result to reflect the new
1489         way of reporting. 
1490
1491         * s-stausa.adb: Actual_Size_Str changed to reflect the new way of
1492         reporting Stack usage.
1493
1494         * gnat_ugn.texi: Update doc of stack usage report.
1495
1496         * g-tastus.ads, s-stusta.ads, s-stusta.adb: New files.
1497
1498         * Makefile.rtl: Add new run-time files.
1499
1500 2009-04-29  Pascal Obry  <obry@adacore.com>
1501
1502         * initialize.c: Do not expand quoted arguments.
1503
1504 2009-04-29  Emmanuel Briot  <briot@adacore.com>
1505
1506         * prj-ext.adb, prj.adb, prj.ads: Fix memory leaks.
1507
1508         * clean.adb (Ultimate_Extension_Of): removed, since duplicate of
1509          Prj.Ultimate_Extending_Project_Of
1510
1511 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1512
1513         * exp_ch7.adb (Build_Final_List): If the designated type is a Taft
1514         Amendment type, add the with_clause for Finalization.List_Controller
1515         only if the current context is a package body.
1516
1517 2009-04-29  Thomas Quinot  <quinot@adacore.com>
1518
1519         * sem_ch12.adb: Minor reformatting
1520
1521         * sem_aggr.adb: Minor reformatting
1522
1523         * sem_ch6.adb, sem_cat.ads: Minor reformatting
1524
1525         * sem_ch10.adb, gnat1drv.adb, prj-nmsc.adb: Minor reformatting
1526
1527 2009-04-29  Quentin Ochem  <ochem@adacore.com>
1528
1529         * prj.ads (Source_Id): Now general pointer type.
1530
1531 2009-04-29  Thomas Quinot  <quinot@adacore.com>
1532
1533         * exp_ch7.adb, rtsfind.adb: Minor reformatting
1534
1535         * sem_res.adb: Minor reformatting
1536
1537 2009-04-29  Thomas Quinot  <quinot@adacore.com>
1538
1539         * sem_res.adb (Static_Concatenation): An N_Op_Concat with static
1540         operands is static only if it is a predefined concatenation operator.
1541
1542         * sem_util.adb: Minor reformatting
1543
1544         * sem_ch12.adb (Save_References): When propagating semantic information
1545         from generic copy back to generic template, for the case of an
1546         identifier that has been rewritten to an explicit dereference whose
1547         prefix is either an object name or a parameterless funcion call
1548         denoting a global object or function, properly capture the denoted
1549         global entity: perform the corresponding rewriting in the template,
1550         and point the rewritten identifier to the correct global entity (not
1551         to the associated identifier in the generic copy).
1552
1553 2009-04-29  Robert Dewar  <dewar@adacore.com>
1554
1555         * rtsfind.adb, prj-env.adb: Minor reformatting
1556         Minor code reorganization
1557
1558 2009-04-29  Emmanuel Briot  <briot@adacore.com>
1559
1560         * make.adb: Fix comment
1561
1562         * prj.adb (Ultimate_Extending_Project_Of): Fix handling when no project
1563         is given as argument, as might happen in gnatmake.
1564
1565 2009-04-29  Ed Schonberg  <schonberg@adacore.com>
1566
1567         * sem_ch3.adb (Check_Abstract_Overriding): Improve error message when
1568         an abstract operation of a progenitor is not properly overridden by an
1569         operation of a derived synchronized type.
1570
1571 2009-04-29  Robert Dewar  <dewar@adacore.com>
1572
1573         * mlib-prj.adb, mlib-tgt.adb, mlib-tgt.ads, prj-nmsc.adb,
1574         prj-proc.adb: Minor reformatting
1575         Minor code reorganization
1576
1577 2009-04-29  Bob Duff  <duff@adacore.com>
1578
1579         * exp_ch7.adb (Build_Final_List): For an access type that designates a
1580         Taft Amendment type, if the access type needs finalization, make sure
1581         the implicit with clause for List_Controller occurs on the package spec.
1582
1583         * rtsfind.adb (Text_IO_Kludge): Fine tune the creation of implicit
1584         with's created for the pseudo-children of Text_IO and friends. In
1585         particular, avoid cycles, such as Ada.Wide_Text_IO.Integer_IO and
1586         Ada.Text_IO.Integer_IO both with-ing each other.
1587
1588         * sem.adb (Walk_Library_Items): Suppress assertion failure in certain
1589         oddball cases when pragma Extend_System is used.
1590
1591         * sem_ch12.adb (Get_Associated_Node): Prevent direct 'with' cycles in
1592         the case where a package spec instantiates a generic whose body with's
1593         this package, so Walk_Library_Items won't complain about cyclic with's.
1594
1595 2009-04-29  Emmanuel Briot  <briot@adacore.com>
1596
1597         * gnatcmd.adb, prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads,
1598         prj-pp.adb, prj-pp.ads, makeutl.adb, clean.adb, prj-nmsc.adb,
1599         mlib-tgt.adb, mlib-tgt.ads, prj-util.adb, prj-env.adb, prj-env.ads
1600         (Project_Id): now a real pointer to Project_Data, instead of an index
1601         into the Projects_Table. This simplifies the API significantly, avoiding
1602         extra lookups in this table and the need to pass the Project_Tree_Ref
1603         parameter in several cases
1604
1605 2009-04-29  Nicolas Setton  <setton@adacore.com>
1606
1607         * gcc-interface/Makefile.in: Produce .dSYM files for shared libs on
1608         darwin.
1609
1610 2009-04-25  Eric Botcazou  <ebotcazou@adacore.com>
1611
1612         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Put
1613         back kludge.
1614
1615 2009-04-24  Robert Dewar  <dewar@adacore.com>
1616
1617         * mlib-prj.adb, prj-env.adb, prj-nmsc.adb, prj-proc.adb, make.adb,
1618         clean.adb: Minor reformatting.
1619         Minor code reorganization and message improvement.
1620
1621 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1622
1623         * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-nmsc.ads
1624         (Alternate_Languages): now implemented as a malloc-ed list rather
1625         than through a table.
1626
1627 2009-04-24  Thomas Quinot  <quinot@adacore.com>
1628
1629         * sem_res.adb (Static_Concatenation): Simplify predicate to make it
1630         accurately handle cases such as "lit" & "lit" and
1631         "lit" & static_string_constant
1632
1633 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1634
1635         * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, clean.adb,
1636         prj-nmsc.adb, prj-env.adb (Project_List_Table, Project_Element):
1637         removed. Lists of projects are now implemented via standard malloc
1638         rather than through the table.
1639
1640 2009-04-24  Thomas Quinot  <quinot@adacore.com>
1641
1642         * sem_ch12.adb: Minor reformatting
1643
1644         * g-trasym.adb: Minor reformatting
1645
1646         * exp_ch6.adb: Minor reformatting
1647
1648 2009-04-24  Robert Dewar  <dewar@adacore.com>
1649
1650         * layout.adb (Layout_Type): For packed array type, copy unset
1651         size/alignment fields from the referenced Packed_Array_Type.
1652
1653 2009-04-24  Bob Duff  <duff@adacore.com>
1654
1655         * lib-load.adb (Make_Instance_Unit): Revert previous change, no
1656         longer needed after sem_ch12 changes.
1657
1658         * sem.adb (Walk_Library_Items): Include with's in some debugging
1659         printouts.
1660
1661 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1662
1663         * prj.ads, prj-nmsc.adb (Unit_Project): removed, since in fact we were
1664         only ever using the Project field.
1665
1666 2009-04-24  Ed Schonberg  <schonberg@adacore.com>
1667
1668         * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Do not set
1669         Body_Required on the generated compilation node. The new node is linked
1670         to its body, but both share the same file, so we do not set this flag
1671         on the new unit so as not to create a spurious dependency on a
1672         non-existent body in the ali file for the instance.
1673
1674 2009-04-24  Robert Dewar  <dewar@adacore.com>
1675
1676         * make.adb: Minor reformatting
1677
1678 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1679
1680         * prj.adb, prj.ads, prj-nmsc.adb (Check_File, Record_Ada_Source,
1681         Add_Source): merge some code between those. In particular change where
1682         file normalization is done to avoid a few extra calls to
1683         Canonicalize_File_Name. This also removes the need for passing
1684         Current_Dir in a number of subprograms.
1685
1686 2009-04-24  Bob Duff  <duff@adacore.com>
1687
1688         * lib-load.adb (Make_Instance_Unit): In the case where In_Main is
1689         False, assign the correct unit to the Cunit field of the new table
1690         entry. We want the spec unit, not the body unit.
1691
1692         * rtsfind.adb (Make_Unit_Name, Maybe_Add_With): Simplify calling
1693         interface for these.
1694         (Maybe_Add_With): Check whether we're trying to a with on the current
1695         unit, and avoid creating such directly self-referential with clauses.
1696         (Text_IO_Kludge): Add implicit with's for the generic pseudo-children of
1697         [[Wide_]Wide_]Text_IO. These are needed for Walk_Library_Items,
1698         and matches existing comments in the spec.
1699
1700         * sem.adb (Walk_Library_Items): Add various special cases to make the
1701         assertions pass.
1702
1703         * sem_ch12.adb (Build_Instance_Compilation_Unit_Nodes): Use Body_Cunit
1704         instead of Parent (N), for uniformity.
1705
1706 2009-04-24  Robert Dewar  <dewar@adacore.com>
1707
1708         * errout.ads: Minor reformatting
1709
1710 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1711
1712         * gnat_ugn.texi (Library Projects): add documentation on gnatmake's
1713         behavior when the project includes sources from multiple languages
1714
1715 2009-04-24  Vincent Celier  <celier@adacore.com>
1716
1717         * prj.adb (Has_Foreign_Sources): Returns True in Ada_Only mode if there
1718         is a language other than Ada declared.
1719
1720         * makeutl.adb (Linker_Options_Switches): Call For_All_Projects with
1721         Imported_First set to True.
1722
1723 2009-04-24  Ed Schonberg  <schonberg@adacore.com>
1724
1725         * sem_res.adb: additional optimization to inhibit creation of
1726         redundant transient scopes.
1727
1728 2009-04-24  Bob Duff  <duff@adacore.com>
1729
1730         * rtsfind.ads: Minor comment fix
1731
1732 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1733
1734         * prj-proc.adb, prj-nmsc.adb (Find_Ada_Sources,
1735         Get_Path_Name_And_Record_Ada_Sources): merged, since these were
1736         basically doing the same work (for explicit or implicit sources).
1737         (Find_Explicit_Sources): renamed to Find_Sources to better reflect its
1738         role. Rewritten to share some code (testing that all explicit sources
1739         have been found) between ada_only and multi_language modes.
1740
1741 2009-04-24  Jerome Lambourg  <lambourg@adacore.com>
1742
1743         * sem_prag.adb (Check_Form_Of_Interface_Name): Allow space in Ext_Name
1744         for CLI imported types.
1745         (Analyze_Pragma): Allow CIL or Java imported functions returning
1746         access-to-subprogram types.
1747
1748 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1749
1750         * make.adb, prj.adb, prj.ads, makeutl.adb, makeutl.ads:
1751         (Project_Data.Dir_Path): field removed, since it can be computed
1752         directly from .Directory, and is needed only once when processing the
1753         project is buildgpr.adb or make.adb
1754
1755 2009-04-24  Robert Dewar  <dewar@adacore.com>
1756
1757         * prj-env.adb, prj-proc.adb, prj.adb, prj.ads,
1758         rtsfind.adb: Minor reformatting.
1759         Minor code reorganization
1760
1761 2009-04-24  Arnaud Charlet  <charlet@adacore.com>
1762
1763         * mlib-prj.adb: Use friendlier english identifier.
1764
1765         * gnatcmd.adb, make.adb: Use better english identifiers.
1766
1767 2009-04-24  Robert Dewar  <dewar@adacore.com>
1768
1769         * clean.adb: Minor reformatting
1770
1771 2009-04-24  Robert Dewar  <dewar@adacore.com>
1772
1773         * einfo.adb (OK_To_Rename): New flag
1774
1775         * einfo.ads (OK_To_Rename): New flag
1776
1777         * exp_ch3.adb (Expand_N_Object_Declaration): Rewrite as renames if
1778         OK_To_Rename set.
1779
1780         * exp_ch4.adb (Expand_Concatenate): Mark temp variable OK_To_Rename
1781
1782         * sem_ch7.adb (Uninstall_Declarations): Allow for renames from
1783         OK_To_Rename.
1784
1785 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1786
1787         * prj-proc.adb, make.adb, mlib-prj.adb, prj.adb, prj.ads, makeutl.adb,
1788         clean.adb, prj-nmsc.adb, prj-env.adb, prj-env.ads (Project_Data.Seen):
1789         field removed. This is not a property of the
1790         project, just a boolean used to traverse the project tree, and storing
1791         it in the structure prevents doing multiple traversal in parallel.
1792         (Project_Data.Checked): also removed, since it was playing the same role
1793         as Seen when we had two nested loops, and this is no longer necessary
1794         (For_All_Imported_Projects): removed, since in fact there was already
1795         the equivalent in For_Every_Project_Imported. The latter was rewritten
1796         to use a local hash table instead of Project_Data.Seen
1797         Various loops were rewritten to use For_Every_Project_Imported, thus
1798         removing the need for Project_Data.Seen. This avoids a lot of code
1799         duplication
1800
1801 2009-04-24  Ed Schonberg  <schonberg@adacore.com>
1802
1803         * sem_res.adb (Resolve_Actuals): Do not create blocks around code
1804         statements, even though the actual of the call is a concatenation,
1805         because the argument is static, and we want to preserve warning
1806         messages  about sequences of code statements that are not marked
1807         volatile.
1808
1809         * sem_warn.adb: remove obsolete comment about warning being obsolete
1810
1811         * s-tasren.adb (Task_Do_Or_Queue): If a timed entry call is being
1812         requeued and the delay has expired while within the accept statement
1813         that executes the requeue, do not perform the requeue and indicate that
1814         the timed call has been aborted.
1815
1816 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1817
1818         * mlib-prj.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
1819         (Has_Ada_Sources, Has_Foreign_Sources): new subprograms
1820         (Project_Data.Ada_Sources_Present, Foreign_Sources_Present): removed,
1821         since they can be computed from the above.
1822
1823 2009-04-24  Vincent Celier  <celier@adacore.com>
1824
1825         * gnatcmd.adb: Call Prj.Env.Initialize with the Project_Tree
1826
1827         * prj-env.adb: Move all global variables to the private part of the
1828         project tree data.
1829         Access these new components instead of the global variables no longer
1830         in existence.
1831         (Add_To_Path): New Project_Tree_Ref parameter, to access the new
1832         components that were previously global variables.
1833
1834         * prj-env.ads (Initialize): New Project_Tree_Ref parameter
1835         (Set_Mapping_File_Initial_State_To_Empty): New Project_Tree_Ref
1836         parameter.
1837
1838         * prj-nmsc.adb (Compute_Unit_Name): New Project_Tree_Ref parameter to
1839         be able to call Set_Mapping_File_Initial_State_To_Empty with it.
1840
1841         * prj.adb (Initialize): Do not call Prj.Env.Initialize
1842         (Reset): Do not call Prj.Env.Initialize. Instead, initialize the new
1843         components in the private part of the project tree data.
1844
1845         * prj.ads (Private_Project_Tree_Data): new components moved from
1846         Prj.Env: Current_Source_Path_File, Current_Object_Path_File,
1847         Ada_Path_Buffer, Ada_Path_Length, Ada_Prj_Include_File_Set,
1848         Ada_Prj_Objects_File_Set, Fill_Mapping_File.
1849
1850 2009-04-24  Vincent Celier  <celier@adacore.com>
1851
1852         * opt.ads (Unchecked_Shared_Lib_Imports): New Boolean flag.
1853
1854         * prj-nmsc.adb (Check_Library): No error for imports by shared library
1855         projects, when --unchecked-shared-lib-imports is used.
1856
1857 2009-04-24  Robert Dewar  <dewar@adacore.com>
1858
1859         * sem_ch7.adb: Minor reformatting
1860
1861 2009-04-24  Tristan Gingold  <gingold@adacore.com>
1862
1863         * s-osinte-darwin.adb, s-osinte-darwin.ads: lwp_self now returns the
1864         mach thread id.
1865
1866 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1867
1868         * prj-env.adb, prj-env.ads (Body_Path_Name_Of, Spec_Path_Name_Of,
1869         Path_Name_Of_Library_Unit_Body): rEmove unused subprograms.
1870         (For_All_Imported_Projects): new procedure
1871         (For_All_Source_Dirs, For_All_Object_Dirs): Rewritten based on the
1872         above rather than duplicating code.
1873
1874 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1875
1876         * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
1877         (Source_Id, Source_Data): use a real list to store sources rather than
1878         using an external table to store the elements. This makes code more
1879         efficient and more readable.
1880
1881 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1882
1883         * prj-proc.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb
1884         (Source_Iterator): new type.
1885         This removes the need for having the sources on three different
1886         lists at the project tree, project and language level. They are now
1887         on a single list.
1888
1889 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1890
1891         * gnatcmd.adb, prj.adb, prj.ads: Remove unused entities
1892
1893 2009-04-24  Ed Schonberg  <schonberg@adacore.com>
1894
1895         * sem_warn.adb: Add comment on obsolete warning
1896
1897 2009-04-24  Arnaud Charlet  <charlet@adacore.com>
1898
1899         * s-tassta.adb (Create_Task): Fix violation of locking rule.
1900
1901 2009-04-24  Emmanuel Briot  <briot@adacore.com>
1902
1903         * prj.adb, prj.ads, prj-nmsc.adb, prj-env.adb (Language_Index): renamed
1904         to Language_Ptr to better reflect its new implementation.
1905         (Project_Data.First_Languages_Processing): renamed to Languages now
1906         that the field with that name is no longer used
1907         (Project_Data.Languages): removed, no longer used, and duplicates
1908         information already available through First_Language_Processing.
1909         (Prj.Language_Index): now an actual pointer, instead of an index into
1910         a table. This makes the list somewhat more obvious, but more importantly
1911         removes the need to pass a pointer to the project_tree_data in a few
1912         places, and makes accessing the attributes of a languages more
1913         efficient.
1914
1915 2009-04-24  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1916             Thomas Quinot  <quinot@adacore.com>
1917
1918         * fe.h (Set_Identifier_Casing): Add const to second parameter.
1919         * gcc-interface/misc.c (internal_error_function): Make copy of return
1920         from pp_formatted_text before assigning BUFFER to it.
1921         (gnat_init): Likewise for main_input_filename and gnat_argv.
1922         (gnat_printable_name): Remove cast from call to Set_Identifier_Casing.
1923
1924 2009-04-24  Eric Botcazou  <ebotcazou@adacore.com>
1925
1926         * ttypes.ads (Target_Double_Float_Alignment): New variable.
1927         (Target_Double_Scalar_Alignment): Likewise.
1928         * get_targ.ads (Get_Strict_Alignment): Adjust external name.
1929         (Get_Double_Float_Alignment): New imported function.
1930         (Get_Double_Scalar_Alignment): Likewise.
1931         * layout.adb (Set_Elem_Alignment): Take into account specific caps for
1932         the alignment of "double" floating-point types and "double" or larger
1933         scalar types, as parameterized by Target_Double_Float_Alignment and
1934         Target_Double_Scalar_Alignment respectively.
1935         * gcc-interface/gigi.h (double_float_alignment): Declare.
1936         (double_scalar_alignment): Likewise.
1937         (is_double_float_or_array): Likewise.
1938         (is_double_scalar_or_array): Likewise.
1939         (get_target_double_float_alignment): Likewise.
1940         (get_target_double_scalar_alignment): Likewise.
1941         * gcc-interface/targtyps.c (get_strict_alignment): Rename into...
1942         (get_target_strict_alignment): ...this.
1943         (get_target_double_float_alignment): New function.
1944         (get_target_double_scalar_alignment): Likewise.
1945         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
1946         Test the presence of an alignment clause for under-aligned integer
1947         types.  Take into account specific caps for the alignment of "double"
1948         floating-point types and "double" or larger scalar types, as
1949         parameterized by Target_Double_Float_Alignment and
1950         Target_Double_Scalar_Alignment respectively.
1951         (validate_alignment): Likewise.
1952         * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Alignment>: Likewise.
1953         (gigi): Initialize double_float_alignment and double_scalar_alignment.
1954         * gcc-interface/utils.c (double_float_alignment): New global variable.
1955         (double_scalar_alignment): Likewise.
1956         (is_double_float_or_array): New predicate.
1957         (is_double_scalar_or_array): Likewise.
1958
1959 2009-04-24  Eric Botcazou  <ebotcazou@adacore.com>
1960
1961         * gcc-interface/utils2.c (build_cond_expr): Move SAVE_EXPR ahead of
1962         the conditional expression only if it is common to both arms.
1963
1964 2009-04-24  Eric Botcazou  <ebotcazou@adacore.com>
1965
1966         * gcc-interface/gigi.h (build_call_alloc_dealloc): Update comment.
1967         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Pass correct
1968         arguments to build_allocator.
1969         * gcc-interface/utils2.c (build_call_alloc_dealloc): Update comment.
1970         Remove code handling special allocator and assert its uselessness.
1971
1972 2009-04-24  Eric Botcazou  <ebotcazou@adacore.com>
1973
1974         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: If an
1975         alignment is specified, do not promote that of the component type
1976         beyond it.
1977         <E_Array_Subtype>: Likewise.
1978
1979 2009-04-23  Eric Botcazou  <ebotcazou@adacore.com>
1980
1981         * einfo.ads (Is_True_Constant): Lift restriction on atomic objects.
1982         * sinfo.ads (Object Declaration): Likewise.
1983         (Assignment Statement): Likewise.
1984         * freeze.adb (Expand_Atomic_Aggregate): Remove useless test.
1985         Do not force Is_True_Constant to false on the temporary.
1986         (Freeze_Entity): Do not force Is_True_Constant to false on names on
1987         the RHS of object declarations.
1988         * gcc-interface/trans.c (lvalue_required_p) <N_Object_Declaration>:
1989         New case.  Return 1 if the object is atomic.
1990         <N_Assignment_Statement>: Likewise.
1991
1992 2009-04-23  Eric Botcazou  <ebotcazou@adacore.com>
1993
1994         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
1995         For packed array types, make the original array type a parallel type
1996         for the modular type and its JM wrapper if the type is bit-packed.
1997         <E_Array_Subtype>: Likewise.  Do not generate the special XA parallel
1998         record type for packed array types.  Remove kludge.
1999
2000 2009-04-23  Eric Botcazou  <ebotcazou@adacore.com>
2001
2002         * gcc-interface/gigi.h (create_index_type): Adjust head comment.
2003         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2004         Use front-end predicates to compute signedness and precision.
2005         <E_String_Literal_Subtype>: Fold range type.
2006         Make sure to set longest_float_type_node to a scalar type.
2007         (elaborate_entity): Use consistent Constraint_Error spelling.
2008         (substitute_in_type) <INTEGER_TYPE>: Always copy the type.
2009         * gcc-interface/misc.c (gnat_print_type) <INTEGER_TYPE>: Use brief
2010         output for the modulus, if any.
2011         <ENUMERAL_TYPE>: Likewise for the RM size.
2012         * gcc-interface/trans.c (gnat_to_gnu): Use consistent Constraint_Error
2013         spelling.
2014         * gcc-interface/utils.c (finish_record_type): Really test the alignment
2015         of BLKmode bit-fields to compute their addressability.
2016         (create_index_type): Adjust comments.
2017         (create_param_decl): Create the biased subtype manually.
2018         * gcc-interface/utils2.c (build_component_ref): Use consistent
2019         Constraint_Error spelling.
2020
2021 2009-04-23  Eric Botcazou  <ebotcazou@adacore.com>
2022
2023         * gcc-interface/cuintp.c: Clean up include directives.
2024         * gcc-interface/targtyps.c: Likewise.
2025         * gcc-interface/decl.c: Likewise.
2026         * gcc-interface/misc.c: Likewise.
2027         * gcc-interface/trans.c: Likewise.
2028         * gcc-interface/utils.c: Likewise.
2029         * gcc-interface/utils2.c: Likewise.
2030         * gcc-interface/Make-lang.in: Adjust dependencies accordingly.
2031
2032 2009-04-23  Eric Botcazou  <ebotcazou@adacore.com>
2033
2034         * gcc-interface/ada-tree.h (union lang_tree_node): Use standard idiom.
2035         (SET_TYPE_LANG_SPECIFIC): Likewise.  Fix formatting.
2036         (SET_DECL_LANG_SPECIFIC): Likewise.
2037         Reorder macros.
2038         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2039         Update comment about use of build_range_type.
2040         <E_Array_Type, E_Array_Subtype>: Use consistent naming convention.
2041         <E_Array_Subtype>: Rework comments about TYPE_ACTUAL_BOUNDS and add
2042         check for other cases of overloading.
2043         * gcc-interface/trans.c (gigi): Use size_int in lieu of build_int_cst.
2044         * gcc-interface/utils2.c (build_call_raise): Fix off-by-one error.
2045         Use size_int in lieu of build_int_cst.
2046         (build_call_alloc_dealloc): Use build_index_2_type in lieu of
2047         build_range_type.
2048
2049 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
2050
2051         * gcc-interface/utils2.c (build_binary_op) <PLUS_EXPR>: If operation's
2052         type is an enumeral or a boolean type, change it to an integer type
2053         with the same mode and signedness.
2054
2055 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
2056
2057         * gcc-interface/utils.c (create_var_decl_1): Do not emit debug info
2058         for an external constant whose initializer is not absolute.
2059
2060 2009-04-22  Taras Glek  <tglek@mozilla.com>
2061
2062         * gcc-interface/ada-tree.h: Update GTY annotations to new syntax.
2063         * gcc-interface/trans.c: Likewise.
2064         * gcc-interface/utils.c: Likewise.
2065
2066 2009-04-22  Ed Schonberg  <schonberg@adacore.com>
2067
2068         * sem_res.adb: Create block around procedure call when actual is a
2069         concatenation.
2070
2071 2009-04-22  Thomas Quinot  <quinot@adacore.com>
2072
2073         * s-soflin.ads: Fix typos
2074
2075 2009-04-22  Vincent Celier  <celier@adacore.com>
2076
2077         * prj-env.adb: Minor comment change
2078
2079         * prj-nmsc.adb (Check_Common): Add guard to avoid calling
2080         Get_Name_String with No_File.
2081
2082         * tempdir.adb (Create_Temp_File): Output diagnostic when temp file
2083         cannot be created even when not in verbose mode.
2084
2085 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2086
2087         * make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
2088         prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
2089         Multi_Language modes, to avoid code duplication.
2090         (Project_Data.Include_Language): Removed.
2091
2092 2009-04-22  Vincent Celier  <celier@adacore.com>
2093
2094         * tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
2095         the temporary file cannot be created, indicating the directory when the
2096         creation was attempted.
2097
2098 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2099
2100         * prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
2101         the language names, not their indices.
2102
2103 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2104
2105         * prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
2106         (Source_Data.Language_Name): Field removed.
2107
2108 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2109
2110         * prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
2111         Two fields removed.
2112
2113 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2114
2115         * prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
2116         separate_suffix to the same value as the body_suffix.
2117
2118 2009-04-22  Robert Dewar  <dewar@adacore.com>
2119
2120         * prj.adb: Minor code reorganization
2121         Code clean up.
2122
2123         * prj-proc.adb: Minor code reorganization, clean up.
2124
2125         * prj-nmsc.adb: Minor reformatting
2126         Minor code reorganization
2127
2128         * gnat_ugn.texi: Add to doc on strict aliasing
2129
2130 2009-04-22  Pascal Obry  <obry@adacore.com>
2131
2132         * s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
2133         SpinCount.
2134
2135         * s-tasini.adb: Minor reformatting.
2136
2137         * s-tassta.adb: Minor reformatting.
2138
2139 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2140
2141         * prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
2142         smaller subprograms.
2143         Renamed to Check_File_Naming_Schemes to avoid confusion with the
2144         other Check_Naming_Schemes functions that plays a totally different
2145         role.
2146         (Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
2147         extracted from the above. These were partially rewritten to avoid
2148         unnecessary code and temporary variables.
2149         (Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
2150         and Get_Unit (which for now still exist since they contain mode-specific
2151         code)
2152
2153 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2154
2155         * prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
2156         Remove duplicated code.
2157         (Canonical_Case_File_Name): new subprogram
2158         (Check_And_Normalize_Unit_Names): new subprogram
2159         (Write_Attr): new subprogram
2160         Better sharing of code
2161         (Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
2162         split Check_Naming and help find duplicated code
2163         (Check_Common): new subprogram, sharing code between ada_only and
2164         multi_language mode.
2165         (Naming_Data.Dot_Repl_Loc): field removed
2166
2167 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2168
2169         * prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
2170         Minor refactoring to reduce the size of
2171         Process_Sources_In_Multi_Language_Mode.
2172         Avoid extra copied of Source_Data, which we found in the past could be
2173         quite slow.
2174         (Mark_Excluded_Sources): new subprogram.
2175         (Remove_Locally_Removed_Files_From_Units): merged into the above
2176         Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
2177         and allow better sharing of code between multi_lang and ada_only modes
2178         (Project_Extends): removed, since exact duplicate of Prj.Is_Extending
2179
2180 2009-04-22  Emmanuel Briot  <briot@adacore.com>
2181
2182         * prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
2183         Removed, since unused.
2184
2185 2009-04-22  Vincent Celier  <celier@adacore.com>
2186
2187         * prj-attr.adb: New single project level attribute
2188         Separate_Run_Path_Options.
2189
2190         * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
2191         attribute Seperate_Run_Path_Options.
2192
2193         * prj.ads: (Project_Configuration): New Boolean component
2194         Separate_Run_Path_Options, defaulted to False.
2195
2196         * snames.ads-tmpl: New standard name Seperate_Run_Path_Options
2197
2198 2009-04-22  Robert Dewar  <dewar@adacore.com>
2199
2200         * sem_type.adb: Minor reformatting
2201
2202         * mlib.adb: Minor reformatting
2203
2204         * sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
2205         syntax error.
2206
2207 2009-04-22  Nicolas Setton  <setton@adacore.com>
2208
2209         * link.c: Add flag __gnat_separate_run_path_options.
2210
2211         * mlib.adb (Separate_Run_Path_Options): New subprogram.
2212
2213         * mlib.ads (Separate_Run_Path_Options): Declare.
2214
2215         * gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
2216         switch per directory, rather than one "rpath" switch listing all
2217         directories.
2218
2219         * gnatlink.adb (Process_Binder_File): Likewise.
2220
2221         * make.adb (Gnatmake): Likewise.
2222
2223 2009-04-22  Hristian Kirtchev  <kirtchev@adacore.com>
2224
2225         * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
2226         Add a call to Move_Final_List when the target of the assignment is a
2227         return object that needs finalization and the expression is a
2228         controlled build-in-place function.
2229
2230 2009-04-22  Vincent Celier  <celier@adacore.com>
2231
2232         * make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
2233         Including_Libraries set to True.
2234
2235 2009-04-22  Ed Schonberg  <schonberg@adacore.com>
2236
2237         * lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
2238         create a unit table entry for the subprogram declaration created for a
2239         child suprogram body that has no separate specification.
2240
2241         * sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
2242         subprogram body, call Make_Child_Decl_Unit.
2243
2244         * lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
2245         table can only be the created specification of a child subprogram body
2246         that is the main unit, which has not been entered in the table yet.
2247
2248         * errout.adb  (Output_Messages): Ignore created specification of a
2249         child subprogram body to prevent repeated listing of error messages.
2250
2251         * gnat1drv.adb (gnat1drv): The generated specification for a child
2252         subprogram body does not generate code.
2253
2254 2009-04-22  Arnaud Charlet  <charlet@adacore.com>
2255
2256         * s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
2257         since this unit is now part of bootstrap units, so must use Ada 95
2258         syntax only.
2259
2260 2009-04-22  Thomas Quinot  <quinot@adacore.com>
2261
2262         * a-tasatt.adb: Minor reformatting
2263
2264 2009-04-22  Bob Duff  <duff@adacore.com>
2265
2266         * s-stalib.ads: Remove "with System;" since we're inside System, so
2267         it's unnecessary.
2268
2269 2009-04-22  Vincent Celier  <celier@adacore.com>
2270
2271         * prj-nmsc.adb (Add_Source): Always put the dependency file name in
2272         the source record, as there may be a dependency file even if no object
2273         file is created.
2274
2275 2009-04-22  Robert Dewar  <dewar@adacore.com>
2276
2277         * lib-load.adb: Minor reformatting
2278
2279         * lib-load.ads: Minor reformatting
2280
2281         * sinfo.ads: Minor reformatting
2282
2283 2009-04-22  Bob Duff  <duff@adacore.com>
2284
2285         * exp_pakd.adb: Minor comment fixes.
2286
2287         * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
2288         sem_ch12.adb: Change the meaning of the Library_Unit attribute to
2289         include units containing instantiations, as well as units that are
2290         generic instantiations.
2291
2292         * sem.adb: Include dependents and corresponding specs/bodies in the
2293         unit walk.
2294
2295         * gcc-interface/Make-lang.in:
2296         sem now depends on s-bitops, because of the packed array of Booleans.
2297
2298 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
2299
2300         * gcc-interface/ada-tree.def: Fix formatting nits.
2301         (REGION_STMT): Delete.
2302         (HANDLER_STMT): Likewise.
2303         * gcc-interface/ada-tree.h: Fix formatting nits.
2304         (IS_STMT): Delete.
2305         (REGION_STMT_BODY): Likewise.
2306         (REGION_STMT_HANDLE): Likewise.
2307         (REGION_STMT_BLOCK): Likewise.
2308         (HANDLER_STMT_ARG): Likewise.
2309         (HANDLER_STMT_LIST): Likewise.
2310         (HANDLER_STMT_BLOCK): Likewise.
2311         * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
2312         (fp_size_to_prec): Likewise.
2313         (largest_move_alignment): Delete.
2314         (gnat_compute_largest_alignment): Likewise.
2315         Fix minor nits.
2316         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
2317         Remove redundant code.
2318         <E_Array_Type>: Remove redundant assert.
2319         <E_Array_Subtype>: Exit early from index computation in pathological
2320         cases.
2321         Rewrite conditional assignment.
2322         (make_type_from_size): Likewise.
2323         * gcc-interface/misc.c (largest_move_alignment): Delete.
2324         (gnat_finish_incomplete_decl): Likewise.
2325         (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
2326         (asm_out_file): Likewise
2327         (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
2328         (gnat_dwarf_name): Move around.
2329         * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
2330         (gigi): Remove call to gnat_compute_largest_alignment.
2331         * utils.c (create_field_decl): Rewrite conditional assignment.
2332         Fix minor nits.
2333
2334 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
2335
2336         * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
2337         on entry.  Defer common processing for types.  Reorder and clean up.
2338         Compute the equivalent GNAT node and the default size for types only.
2339         <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
2340         <E_Access_Type>: For an unconstrained designated type, do not pretend
2341         that a dummy type is always made.
2342         <all> Fix nits in comments.
2343         (validate_size): Fix formatting nits and comments.
2344         (set_rm_size): Likewise.
2345         * gcc-interface/utils.c (create_param_decl): Replace bogus argument
2346         passed to TARGET_PROMOTE_PROTOTYPES hook.
2347
2348 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
2349
2350         * fe.h (Get_External_Name): Declare.
2351         * gcc-interface/gigi.h (concat_id_with_name): Rename to...
2352         (concat_name): ...this.
2353         * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
2354         gnu_entity_name and adjust for above renaming.
2355         <E_Access_Type>: Use create_concat_name to get the name of the various
2356         types associated with unconstrained array types.
2357         (make_aligning_type): Adjust for above renaming.
2358         (maybe_pad_type): Likewise.
2359         (components_to_record): Likewise.  Use get_identifier_with_length for
2360         the encoding of the variant.
2361         (get_entity_name): Use get_identifier_with_length.
2362         (create_concat_name): Likewise.  Use Get_External_Name if no suffix.
2363         Do not fiddle with Name_Buffer.
2364         (concat_id_with_name): Rename to...
2365         (concat_name): ...this.  Use get_identifier_with_length.  Do not fiddle
2366         with Name_Buffer.
2367         * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
2368         above renaming.
2369
2370 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
2371
2372         * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
2373         license notices.
2374
2375 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
2376
2377         * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
2378
2379 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
2380
2381         * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
2382         (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
2383         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
2384         Remove useless support code for packed array types and assert its
2385         uselessness.
2386         <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
2387         adjust for TYPE_RM_SIZE change.
2388         <all> Fix nits in comments.  Use Original_Array_Type accessor instead
2389         of Associated_Node_For_Itype accessor for packed array types.
2390         (make_packable_type): Likewise.
2391         (maybe_pad_type): Likewise.
2392         (set_rm_size): Likewise.  Rework conditional statement.  Adjust for
2393         TYPE_RM_SIZE change.
2394         (make_type_from_size): Adjust for TYPE_RM_SIZE change.
2395         (rm_size): Fix nits in comments.  Rework conditional statements.
2396         * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
2397         change.
2398         * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
2399         * gcc-interface/utils.c (gnat_init_decl_processing): Use more
2400         appropriate function to initialize the size_type_node.  Adjust for
2401         TYPE_RM_SIZE change.
2402
2403 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
2404
2405         * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
2406         for imported subprograms.
2407
2408 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
2409
2410         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
2411         constant objects covered by 13.3(19) volatile.
2412
2413 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
2414
2415         * gcc-interface/utils.c (create_type_decl): Do not pass declarations
2416         of dummy fat pointer types to the debug back-end.
2417
2418 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2419
2420         * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
2421         <E_Signed_Integer_Subtype>: Set the RM size on the integer type
2422         before wrapping it up in the record type.  Do not overwrite the
2423         Ada size of the record type with the Esize.
2424
2425 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2426
2427         * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
2428         (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
2429         if the conversion is on the LHS of an assignment and a no-op.
2430         <all> Do not convert the result to the result type if the Parent
2431         node is such a conversion.
2432
2433 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2434
2435         * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
2436         * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
2437         of types with unknown discriminants.
2438         (substitute_in_type): Rewrite and restrict to formal substitutions.
2439         * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
2440         (update_pointer_to): Update comment.
2441
2442 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2443
2444         * sem_ch8.adb (Use_One_Package): In an instance, if two
2445         potentially_use_visible and non-overloadable homonyms are available
2446         from  the actuals of distinct formal packages, retain the current one,
2447         which was visible in the generic, to prevent spurious visibility
2448         errors.
2449         (End_Use_Package): Restore use_visibility when needed.
2450
2451 2009-04-20  Sergey Rybin  <rybin@adacore.com>
2452
2453         * gnat_ugn.texi, vms_data.ads: Update doc.
2454
2455 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
2456
2457         * gcc-interface/Make-lang.in: Update dependencies
2458
2459         * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
2460         Windows.
2461
2462 2009-04-20  Robert Dewar  <dewar@adacore.com>
2463
2464         * checks.ads: Fix documentation of range check handling
2465
2466 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2467
2468         * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
2469         a redundant use_type clause.
2470
2471 2009-04-20  Robert Dewar  <dewar@adacore.com>
2472
2473         * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
2474         this attribute can be evaluated at compile time.
2475         (Eval_Attribute, case Range_Length): Same improvement
2476
2477         * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
2478
2479 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2480
2481         * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
2482         for better handling of null procedures.
2483         (Check_Overriding_Indicator): Do not emit a warning on a missing
2484         overriding indicator on an operator when the type of which the operator
2485         is a primitive is private.
2486
2487 2009-04-20  Bob Duff  <duff@adacore.com>
2488
2489         * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
2490         debugging output.
2491
2492 2009-04-20  Robert Dewar  <dewar@adacore.com>
2493
2494         * sem_attr.adb: Minor reformatting
2495
2496         * gnatcmd.adb: Minor reformatting
2497
2498 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2499
2500         * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
2501         overloaded and one interpretation matches the context, label the
2502         operand with the type of first formal.
2503
2504 2009-04-20  Bob Duff  <duff@adacore.com>
2505
2506         * debug.ads: Minor comment fix.
2507
2508         * debug.adb: Minor comment fixes.
2509
2510 2009-04-20  Javier Miranda  <miranda@adacore.com>
2511
2512         * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
2513
2514         * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
2515
2516         * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
2517         is expanded into a call to Raise_Exception, avoid passing the
2518         exception-name'identity in runtimes in which this argument
2519         is not used.
2520
2521 2009-04-20  Jerome Lambourg  <lambourg@adacore.com>
2522
2523         * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
2524         generated bindings for cil.
2525
2526 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2527
2528         * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
2529         discriminants, collect components from the Underlying_Record_View,
2530         which will be used in the expansion of the aggregate into assignments.
2531
2532         * sem_ch3.adb: Do not label derived type with unknown discriminants as
2533         having a private declaration.
2534
2535 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2536
2537         * exp_util.adb (Expand_Subtype_From_Expr): use the
2538         underlying_record_view when available, to create the proper constrained
2539         subtype for an object of a derived type with unknown discriminants.
2540
2541 2009-04-20  Javier Miranda  <miranda@adacore.com>
2542
2543         * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
2544         formals that have pragma unreferenced.
2545
2546 2009-04-20  Pascal Obry  <obry@adacore.com>
2547
2548         * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
2549         Remove all calls to To_Lower_If_Case_Insensitive to preserve
2550         the pathname original casing.
2551
2552 2009-04-20  Robert Dewar  <dewar@adacore.com>
2553
2554         * g-trasym.adb: Minor reformatting
2555
2556         * s-os_lib.adb: Minor reformatting
2557
2558         * sem.adb: Minor reformatting
2559         Minor code reorganization
2560
2561         * sem_ch3.adb: Minor reformatting
2562
2563         * sem_ch4.adb: Minor reformatting
2564
2565         * sem_ch8.adb: Minor reformatting
2566
2567         * sem_type.adb: Minor reformatting
2568
2569 2009-04-20  Javier Miranda  <miranda@adacore.com>
2570
2571         * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
2572         generated by derivations of tagged types use the aliased subprogram a
2573         reference to locate their controlling type.
2574
2575 2009-04-20  Tristan Gingold  <gingold@adacore.com>
2576
2577         * g-trasym.adb: Set size of result buffer before calling
2578         convert_address.
2579
2580 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2581
2582         * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
2583         to a function returning an array can be interpreted as a call with
2584         defaulted parameters whose result is indexed, take into account the
2585         types of all the indices of the array result type.
2586
2587 2009-04-20  Pascal Obry  <obry@adacore.com>
2588
2589         * a-direct.adb, s-os_lib.adb: Minor reformatting.
2590
2591 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2592
2593         * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
2594         null exclusion qualifiers for object renaming declarations.
2595
2596 2009-04-20  Nicolas Roche  <roche@adacore.com>
2597
2598         * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
2599         unsigned long long. So compare local_time and utc_time before computing
2600         the difference.
2601
2602 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2603
2604         * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
2605         of the Underlying_Record_View before that of the derived type.
2606
2607         * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
2608         with unknown discriminants with regard to the parent subtype.
2609
2610 2009-04-20  Bob Duff  <duff@adacore.com>
2611
2612         * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
2613         that are not included. This is necessary if the main unit is a generic
2614         instantiation.
2615
2616         * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
2617         because it doesn't work if -gnatn is used.
2618
2619 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2620
2621         * rtsfind.adb (RTE, RTE_Record_Component): In
2622         Configurable_Run_Time_Mode, do not enable front-end inlining.
2623
2624 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2625
2626         * g-socthi-vms.adb: Remove now unnecessary WITH clause on
2627         System.Address_To_Access_Conversions.
2628
2629 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2630
2631         * sem.adb: Guard against ill-formed subunits.
2632
2633 2009-04-20  Bob Duff  <duff@adacore.com>
2634
2635         * output.adb (Flush_Buffer): Do not indent blank lines.
2636         (Ignore_Output): New procedure for output suppression.
2637
2638 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
2639
2640         * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
2641         when it is positive.  This avoids a potential constraint error raised
2642         by the conversion to Natural.
2643
2644 2009-04-20  Gary Dismukes  <dismukes@adacore.com>
2645
2646         * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
2647         involves a target that has a specified address, don't set Forward_OK
2648         and Backward_OK to False if the rhs is an aggregate, since overlap
2649         can't occur.
2650
2651 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2652
2653         * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
2654         in an object renaming declaration when the expected type is an
2655         anonymous access type.
2656
2657         * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
2658         ambiguity when one interpretation is an anonymous access type and the
2659         other is a named access type, and the context itself is anonymous
2660
2661 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2662
2663         * einfo.ads: Minor comment rewording
2664
2665         * sem_aggr.adb: Minor comment rewording
2666
2667         * sem_ch3.adb, sem_ch6.adb: Minor reformatting
2668
2669 2009-04-20  Pascal Obry  <obry@adacore.com>
2670
2671         * adaint.c (__gnat_is_readable_file): Check for file existence
2672         when not using ACL (always the case on remote drives).
2673
2674 2009-04-20  Robert Dewar  <dewar@adacore.com>
2675
2676         * sinfo.ads: Minor comment fixes
2677
2678         * exp_disp.adb: Minor reformatting
2679
2680         * gnat1drv.adb: Minor reformatting
2681
2682         * output.adb: Minor reformatting
2683
2684         * s-vxwext-kernel.ads: Minor reformatting
2685
2686         * sem.ads: Minor reformatting
2687
2688         * sem.adb: Minor reformatting
2689
2690         * sem_elim.adb: Minor reformatting
2691
2692         * uname.ads: Minor reformatting
2693
2694 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2695
2696         * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
2697         a small dope of 4 words to the adjustment to the stack pointer.
2698
2699 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2700
2701         * xoscons.adb: generate C header s-oscons.h in
2702         addition to s-oscons.ads.
2703
2704         * socket.c: On VMS, use s-oscons.h.
2705
2706         * sem_ch3.adb: Minor reformatting
2707
2708         * exp_ch9.adb: Minor reformatting
2709
2710 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2711
2712         * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
2713         (Attribute_to_gnu): Do not call check_for_eliminated_entity.
2714         (call_to_gnu): Likewise.
2715
2716 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2717
2718         * gcc-interface/trans.c (gigi): Declare the name of the compilation
2719         unit as the first global name at the very beginning.
2720
2721 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2722
2723         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
2724         s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
2725         g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
2726         since HP-UX supports neither inet_aton nor inet_pton (altough the
2727         latter is part of the Single UNIX Specification!).
2728         So reorganize code, and share C implementation based on inet_addr(3)
2729         with VMS (instead of having a VMS specific Ada implementation in
2730         g-socthi-vms.adb).
2731
2732 2009-04-20  Gary Dismukes  <dismukes@adacore.com>
2733
2734         * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
2735         to return the object file name saved by Set_Object_Output_File_Name.
2736
2737 2009-04-20  Emmanuel Briot  <briot@adacore.com>
2738
2739         * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
2740         for the standard command line, when argc has been modified since the
2741         start of the application.
2742
2743 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2744
2745         * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
2746         WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
2747
2748 2009-04-20  Bob Duff  <duff@adacore.com>
2749
2750         * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
2751         pragma Debug.
2752
2753 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2754
2755         * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
2756         subprogram as Eliminated when source operation is.
2757         (Expand_N_Protected_Type_Declaration): Generate protected and
2758         unprotected specs for the internal operations, even if the source
2759         operation is eliminated.
2760
2761 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
2762
2763         * exp_ch3.adb (Make_Predefined_Primitive_Specs,
2764         Predefined_Primitive_Bodies): Do not create the declarations and bodies
2765         of the primitive subprograms associated with dispatching select
2766         statements when the runtime is in configurable mode.
2767
2768 2009-04-20  Ed Falis  <falis@adacore.com>
2769
2770         * s-vxwext-kernel.ads (tickGet): Use tick64Get.
2771
2772 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2773
2774         * s-oscons-tmplt.c: Add support for generating a dummy version of
2775         s-oscons.ads providing all possible constants.
2776
2777         * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
2778
2779         * socket.c (__gnat_inet_pton): On Windows make sure we always use the
2780         ANSI version (not the UNICODE version) of WSAStringToAddress.
2781
2782 2009-04-20  Pascal Obry  <obry@adacore.com>
2783
2784         * adaint.c (__gnat_set_OWNER_ACL): properly free memory
2785         allocated for the security descriptor and make sure all
2786         handles are closed before leaving this procedure.
2787
2788 2009-04-20  Javier Miranda  <miranda@adacore.com>
2789
2790         * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
2791         (Set_Is_Underlying_Record_View): New subprogram
2792
2793         * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
2794         private types with unknown discriminants use the underlying record view
2795         if available.
2796
2797         * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
2798         underlying record view in the full view of private types whose parent
2799         has unknown discriminants.
2800         (Build_Derived_Record_Type): Avoid generating the class-wide entity
2801         associated with an underlying record view.
2802         (Derived_Type_Declaration): Avoid deriving parent primitives in
2803         underlying record views.
2804
2805         * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
2806         records with unknown discriminants.
2807
2808         * sem_type.adb (Covers): Handle underlying record views.
2809         (Is_Ancestor): Add support for underlying record views.
2810
2811         * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
2812         dispatching call if the type of the target object is tagged and has
2813         unknown discriminants.
2814
2815         * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
2816         unknown discriminants.
2817
2818         * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
2819         tables for internally built underlying record views.
2820
2821         * sprint.adb (sprint_node_actual): Improve output of aggregates with an
2822         empty list of component associations.
2823
2824 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2825
2826         * sem_ch10.adb: Minor reformatting
2827
2828         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
2829         g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
2830         (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
2831         standard inet_pton API (and emulate it on platforms that do not
2832         support it).
2833         (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
2834         DECC$INET_ADDR, imported in Ada.
2835         (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
2836         implementation provided by GNAT runtime.
2837         (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
2838         Windows.
2839
2840 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2841
2842         * gnat_ugn.texi: Add documentation for -fno-ivopts.
2843
2844 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
2845
2846         * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
2847         with_clause if it is the main unit.
2848
2849 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2850
2851         * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
2852         (no behaviour change): Use Append instead of Increment_Last followed
2853         by assignment.
2854
2855 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
2856
2857         * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
2858         declarations of all primitives associated with dispatching asynchronous,
2859         conditional and timed selects when dispaching calls are forbidden and
2860         select statements are not allowed (such as in Ravenscar).
2861         (Predefined_Primitive_Bodies): Ditto for bodies.
2862
2863         * exp_disp.ad (Make_DT): Do not create and populate the
2864         Select_Specific_Data of the dispatch table when dispatching calls are
2865         forbidden and select statements are not allowed (such as in Ravenscar).
2866
2867 2009-04-20  Robert Dewar  <dewar@adacore.com>
2868
2869         * a-tifiio.adb: Minor reformatting
2870
2871 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2872
2873         * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
2874         other C library functions, report *failure* with a zero status, and
2875         success with a non-zero status.
2876
2877 2009-04-20  Bob Duff  <duff@adacore.com>
2878
2879         * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
2880         (Semantics): After analyzing each unit, Append it to the
2881         Comp_Unit_List, if appropriate.
2882
2883         * gnat1drv.adb (Check_Library_Items): New procedure for debugging
2884         purposes.
2885         (Gnat1drv): Correct comment regarding Back_End_Mode.
2886
2887 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
2888
2889         * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
2890
2891 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2892
2893         * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
2894         output.adb, output.ads, s-taprop-hpux-dce.adb,
2895         s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
2896         reformatting.
2897
2898 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2899
2900         * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
2901         g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
2902         (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
2903         (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
2904         except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
2905         (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
2906
2907         * debug.adb: Fix typo
2908
2909         * gnat_rm.texi: Minor doc fix.
2910
2911         * sem_ch7.adb, freeze.adb: Minor reformatting
2912
2913 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2914
2915         * g-socket.ads: Add new constants:
2916           Loopback_Inet_Addr
2917           Unspecified_Group_Inet_Addr
2918           All_Hosts_Group_Inet_Addr
2919           All_Routers_Group_Inet_Addr
2920
2921         * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
2922         ERANGE (Result too large).
2923         (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
2924         propagation of errno to caller.
2925
2926 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
2927
2928         * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
2929         to 24. Increment Leap_Seconds_Count and add an entry to aggregate
2930         Leap_Second_Times.
2931
2932 2009-04-20  Gary Dismukes  <dismukes@adacore.com>
2933
2934         * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
2935         checking for references to eliminated subprograms that should be
2936         flagged.
2937         (Eliminate_Error_Message): Update comment to say "references" rather
2938         than "calls" (since attribute cases are handled here as well).
2939
2940         * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
2941         checking for references to eliminated subprograms that should be
2942         flagged.  Add with and use of Sem and Sem_Util.
2943
2944         * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
2945         Add with and use of Sem_Elim.
2946
2947         * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
2948         applied to eliminated subprograms.
2949         (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
2950         eliminated subprograms.
2951         Add with and use of Sem_Elim.
2952
2953         * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
2954         to eliminated subprograms, now handled during Resolve_Call.
2955         Remove with and use of Sem_Elim.
2956
2957         * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
2958         testing Is_Eliminated, for proper handling of primitive derived from
2959         eliminated subprograms.
2960
2961 2009-04-20  Vincent Celier  <celier@adacore.com>
2962
2963         * mlib-prj.adb (Build_Library): Use the shared library linker, if one
2964         has been declared (Library_GCC or Linker'Driver), for the driver name.
2965
2966         * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
2967         Linker'Driver is, use Linker'Driver as the shared library linker.
2968         (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
2969         Library_GCC is declared.
2970         (Check_Library_Attributes): Set up the shared linker driver: either
2971         Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
2972         declared.
2973
2974 2009-04-20  Thomas Quinot  <quinot@adacore.com>
2975
2976         * g-socket.ads (Send_Socket): Fix misleading comment.
2977
2978 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
2979
2980         * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
2981         ASIS mode.
2982
2983 2009-04-20  Geert Bosch  <bosch@adacore.com>
2984
2985         * a-tifiio.adb (Put): Avoid generating too many digits for certain
2986         fixed types with smalls that are neither integer or the reciprocal
2987         of an integer.
2988
2989 2009-04-20  Bob Duff  <duff@adacore.com>
2990
2991         * uname.ads: Minor comment fix.
2992
2993         * types.ads: Minor comment fix.
2994
2995 2009-04-20  Pascal Obry  <obry@adacore.com>
2996
2997         * adaint.c (__gnat_get_libraries_from_registry): Fix code to
2998         avoid warning. At the same time fix a memory leak.
2999
3000         * osint.adb (Get_Libraries_From_Registry): Properly free memory
3001         returned by the above routine.
3002
3003 2009-04-20  Robert Dewar  <dewar@adacore.com>
3004
3005         * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
3006         s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
3007         s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
3008         s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
3009
3010         * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
3011
3012 2009-04-20  Pascal Obry  <obry@adacore.com>
3013
3014         * initialize.c (__gnat_initialize): Add braces to kill warning.
3015
3016         * adaint.c: Minor reformatting, remove trailing spaces.
3017
3018 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
3019
3020         * gcc-interface/Make-lang.in: Update dependencies.
3021
3022 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
3023
3024         * adaint.h (__gnat_lwp_self): Declare on Linux.
3025
3026         * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
3027
3028 2009-04-20  Robert Dewar  <dewar@adacore.com>
3029
3030         * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
3031         front-end part of -fpreserve-control-flow switch.
3032
3033 2009-04-20  Bob Duff  <duff@adacore.com>
3034
3035         * rtsfind.adb: Minor comment fix
3036
3037 2009-04-20  Robert Dewar  <dewar@adacore.com>
3038
3039         * exp_aggr.adb: Minor reformatting
3040         Minor code reorganization (use Nkind_In)
3041
3042         * g-socket.adb: Minor reformatting
3043
3044         * g-socket.ads: Minor comment fix
3045
3046         * s-auxdec.ads: Minor comment and organization update.
3047
3048         * s-auxdec-vms_64.ads: Minor comment and organization update.
3049
3050         * sem_ch10.adb: Minor addition of ??? comment
3051
3052         * sem_disp.adb: Minor reformatting
3053
3054 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
3055
3056         * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
3057         list a caller of an inlined subprogram, if the caller itself is not
3058         called.
3059
3060 2009-04-20  Pascal Obry  <obry@adacore.com>
3061
3062         * adaint.c: Disable use of ACL on network drives.
3063
3064 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
3065
3066         * gnat_ugn.texi: Add examples.
3067
3068 2009-04-20  Thomas Quinot  <quinot@adacore.com>
3069
3070         * g-socket.ads (Abort_Selector): Clarify documentation.
3071
3072 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
3073
3074         * opt.ads (Inspector_Mode): Update documentation of this flag.
3075
3076 2009-04-20  Thomas Quinot  <quinot@adacore.com>
3077
3078         * g-socket.ads: Minor reformatting
3079
3080         * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
3081         consider S_resolvLib error codes since we only use the hostLib wrappers.
3082
3083 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
3084
3085         * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
3086         of the Underlying_Record_View after that of the derived type.
3087
3088 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
3089
3090         * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
3091         in inspector mode.
3092
3093 2009-04-20  Javier Miranda  <miranda@adacore.com>
3094
3095         * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
3096
3097         * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
3098         documentation.
3099
3100         * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
3101
3102         * sem_disp.adb
3103         (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
3104         in internally built overriding subprograms.
3105
3106 2009-04-20  Doug Rupp  <rupp@adacore.com>
3107
3108         * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
3109
3110         * s-auxdec.ads: Likewise
3111
3112 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
3113
3114         * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
3115         type by an interface.
3116
3117         * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
3118         minimze difference in expanded tree when compiled as spec of the main
3119         unit, or as a spec in the context of another unit.
3120
3121 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
3122
3123         * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
3124         (localtime_tzoff): This routine no longer accepts an actual of type
3125         tm_Pointer.
3126         (UTC_Time_Offset): Remove local variable Secs_TM.
3127
3128         * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
3129         actual of type struct tm*. Add local variable of type struct tm for all
3130         targets that provide localtime_r and need to invoke it.
3131
3132 2009-04-20  Thomas Quinot  <quinot@adacore.com>
3133
3134         * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
3135         (GNAT.Sockets.Resolve_Error): Add case of EPIPE
3136         Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
3137
3138 2009-04-20  Robert Dewar  <dewar@adacore.com>
3139
3140         * sem_ch3.adb: Minor reformatting
3141
3142         * lib-load.adb: Minor reformatting
3143
3144         * sem_ch4.adb: Minor reformatting
3145
3146 2009-04-20  Robert Dewar  <dewar@adacore.com>
3147
3148         * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
3149         (equal values => False).
3150
3151 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
3152
3153         * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
3154         to null procedures can be inlined unconditionally.
3155
3156 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
3157
3158         * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
3159         non-addressable parameter passed by reference, do not convert the
3160         actual if its type is already the nominal type, unless it is of
3161         self-referential size.
3162
3163 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
3164
3165         * gnat_ugn.texi: Fix typos.
3166
3167 2009-04-20  Robert Dewar  <dewar@adacore.com>
3168
3169         * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
3170         Validate_Unchecked_Warnings to suppress warnings about size or
3171         alignment or extra bits if either type involved has pragma Warnings
3172         (Off) set for the type entity.
3173
3174 2009-04-19  Eric Botcazou  <ebotcazou@adacore.com>
3175
3176         * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
3177         a builtin type and give it a name.
3178
3179 2009-04-17  Diego Novillo  <dnovillo@google.com>
3180
3181         * gcc-interface/misc.c (gnat_expand_expr): Remove.
3182         (LANG_HOOKS_EXPAND_EXPR): Remove.
3183
3184 2009-04-17  Robert Dewar  <dewar@adacore.com>
3185
3186         * sem_ch3.adb: Minor reformatting
3187
3188 2009-04-17  Pascal Obry  <obry@adacore.com>
3189
3190         * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
3191
3192 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3193
3194         * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
3195         illegal constraints on type derived from formal discrete types.
3196
3197 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3198
3199         PR ada/35953
3200
3201         * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
3202         g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
3203         g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
3204         g-socket.ads (GNAT.Sockets.Thin.C_Send,
3205         GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
3206         Replace calls to send(2) with equivalent sendto(2) calls.
3207         (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
3208         (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
3209         report an error in that case. Factor code common to the two versions
3210         (datagram and stream) in common routine Stream_Write.
3211
3212 2009-04-17  Robert Dewar  <dewar@adacore.com>
3213
3214         * exp_disp.adb: Minor reformatting
3215         Minor code reorganization (use Nkind_In)
3216
3217         * prepcomp.adb: Minor reformatting
3218
3219         * sem_ch3.adb: Minor reformatting
3220
3221         * sem_res.adb: Minor comment addition
3222
3223         * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
3224         for address clause
3225
3226         * lib-xref.adb (Generate_Reference): Exclude recursive calls from
3227         setting Is_Referenced
3228
3229         * types.ads: Minor reformatting
3230
3231 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
3232
3233         * gnat_ugn.texi: Initial documentation on binding generator.
3234
3235 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3236
3237         * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
3238         type extensions whose parent is a type with unknown discriminants.
3239
3240         * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
3241         aggregate has unknown discriminants, use the Underlying_Record_View to
3242         obtain the discriminants of the ancestor part.
3243
3244         * exp_disp.adb (Build_Dispatch_Tables): Types that are
3245         Underlying_Record_Views share the dispatching information of the
3246         original record extension.
3247
3248         * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
3249         discriminants, propagate dispach table information to the
3250         Underlying_Record_View.
3251
3252         * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
3253         discriminants and declaration is not a completion, generate
3254         Underlying_Record_View to provide proper discriminant information to
3255         the front-end and to gigi.
3256
3257 2009-04-17  Robert Dewar  <dewar@adacore.com>
3258
3259         * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
3260         s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
3261         s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
3262         g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
3263         s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
3264         s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
3265         g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
3266         s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
3267         g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
3268         s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
3269         s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
3270         s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
3271         s-conca3.ads: Remove unneeded pragma Warnings
3272
3273 2009-04-17  Robert Dewar  <dewar@adacore.com>
3274
3275         * g-moreex.adb: Add comments.
3276
3277         * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
3278
3279         * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
3280         Warnings (Off)
3281
3282         * prepcomp.adb: Add ??? comment
3283
3284         * a-tasatt.adb: Minor reformatting
3285
3286         * g-trasym-vms-alpha.adb: Add ??? comment
3287
3288         * g-trasym-vms-ia64.adb: Add ??? comment
3289
3290         * xoscons.adb: Minor reformatting
3291
3292         * s-tassta.adb: Minor reformatting
3293
3294         * s-scaval.adb: Add ??? comment
3295
3296         * stand.ads: Minor code clean up (remove junk with of Namet)
3297
3298         * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
3299         s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
3300         s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
3301         s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
3302         s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
3303         s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
3304         s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
3305         s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
3306         Warnings off pragmas.
3307
3308 2009-04-17  Pascal Obry  <obry@adacore.com>
3309
3310         * initialize.c: Fix test for reallocating the arguments array.
3311
3312 2009-04-17  Geert Bosch  <bosch@adacore.com>
3313
3314         * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
3315         conversion truncate only for decimal fixed point types.
3316
3317 2009-04-17  Jerome Lambourg  <lambourg@adacore.com>
3318
3319         * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
3320         reinitialized.
3321
3322 2009-04-17  Robert Dewar  <dewar@adacore.com>
3323
3324         * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
3325         Backwards_OK if either operand has an address clause.
3326
3327 2009-04-17  Pascal Obry  <obry@adacore.com>
3328
3329         * initialize.c: Code clean up, use realloc.
3330
3331 2009-04-17  Pascal Obry  <obry@adacore.com>
3332
3333         * initialize.c: Do not get Unicode command line if Unicode support not
3334         activated.
3335         Add support for wildcard expansion for Unicode parameters on Win32.
3336
3337         * mingw32.h: Add missing macros when Unicode support not activated.
3338
3339 2009-04-17  Javier Miranda  <miranda@adacore.com>
3340
3341         * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
3342         avoid generating code that references the Current_Master
3343         when compiling without tasks.
3344
3345 2009-04-17  Vincent Celier  <celier@adacore.com>
3346
3347         * prj-attr.adb: New project level attribute Target
3348         
3349         * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
3350         attribute Target
3351         
3352         * prj.ads (Project_Configuration): New component Target
3353
3354 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3355
3356         * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
3357         case for the case of an aggregate component, the attach call for the
3358         result is actually needed.
3359
3360         * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
3361         an array aggregate must be disabled if the component type requires
3362         controlled actions.
3363
3364         * exp_ch3.adb: Minor reformatting
3365
3366 2009-04-17  Bob Duff  <duff@adacore.com>
3367
3368         * output.ads (Indent,Outdent): New procedures for indenting the output.
3369         (Write_Char): Correct comment -- LF _is_ allowed.
3370
3371         * output.adb (Indent,Outdent): New procedures for indenting the output.
3372         Keep track of the indentation level, and make sure it doesn't get too
3373         high.
3374         (Flush_Buffer): Insert spaces at the beginning of each line, if
3375         indentation level is nonzero.
3376         (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
3377         indentation level.
3378         (Set_Standard_Error,Set_Standard_Output): Remove superfluous
3379         "Next_Col := 1;".  Flush_Buffer does that.
3380
3381         * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
3382         controlled by the -gnatdc switch. It now occurs on entry/exit to the
3383         relevant analysis routines, and calls Indent/Outdent to make the
3384         indentation reflect the nesting level.  Add "helper" routines, since
3385         otherwise lots of "return;" statements would skip the debugging output.
3386
3387 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
3388
3389         * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
3390         s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
3391         s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
3392
3393 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3394
3395         * exp_aggr.adb: Minor code reorganization, no behaviour change.
3396
3397 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3398
3399         * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
3400         clause in a unit that is a package body or a subunit, when the previous
3401         clause appears in a spec or a parent.
3402
3403 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3404
3405         * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
3406
3407         * exp_ch7.adb: Minor reformatting
3408
3409 2009-04-17  Bob Duff  <duff@adacore.com>
3410
3411         * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
3412         allocator, check that the expression of the qualified expression obeys
3413         the constraints of the subtype of the qualified expression.
3414
3415 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3416
3417         * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
3418
3419 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3420
3421         * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
3422         aggregate, using context imposed by subtype mark in allocator.
3423
3424 2009-04-17  Pascal Obry  <obry@adacore.com>
3425
3426         * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
3427
3428 2009-04-17  Nicolas Roche  <roche@adacore.com>
3429
3430         * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
3431         argument length.
3432
3433 2009-04-17  Gary Dismukes  <dismukes@adacore.com>
3434
3435         * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
3436         cover both calls and attribute references ("call" => "reference").
3437
3438 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3439
3440         * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
3441         type for which Storage_Size is set to 0 is legal in a pure unit.
3442
3443 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3444
3445         * exp_ch7.adb: Minor reformatting
3446
3447 2009-04-17  Robert Dewar  <dewar@adacore.com>
3448
3449         * restrict.adb (Check_Restriction_No_Dependence): Don't check
3450         restriction if outside main extended source unit.
3451
3452         * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
3453         for parents of child units as well as the child unit itself.
3454
3455 2009-04-17  Bob Duff  <duff@adacore.com>
3456
3457         * checks.ads: Minor comment fix
3458
3459         * exp_aggr.ads: Minor comment fix
3460
3461 2009-04-17  Nicolas Roche  <roche@adacore.com>
3462
3463         * adaint.c: Improve cross compiler detection and handling.
3464
3465 2009-04-17  Eric Botcazou  <ebotcazou@adacore.com>
3466
3467         * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
3468
3469 2009-04-17  Pascal Obry  <obry@adacore.com>
3470
3471         * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
3472         CurrentCodePage.
3473
3474         * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
3475         value when no encoding form paramter is set on Text_IO services.
3476
3477         * adaint.c: CurrentCodePage new variable on Windows.
3478         Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
3479         ones.
3480
3481         * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
3482         ones.
3483
3484         * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
3485         environment variable value. Default is UTF-8.
3486
3487         * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
3488         fopen and freopen encoding parameter is now set to Unspecified.
3489         The default value is in this case UTF-8 (as it was before) but
3490         use the new macros that convert to/from the code page set
3491         at runtime (CurrentCodePage).
3492
3493         * s-fileio.adb: When no encoding specified use Unspecified value.
3494
3495 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3496
3497         * atree.adb, atree.ads: Remove dead code.
3498
3499 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
3500
3501         * gcc-interface/Make-lang.in: Update dependencies.
3502
3503 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3504
3505         * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
3506         illegal uses of incomplete types in formal parts and return types.
3507
3508         * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
3509         access to subprograms.
3510
3511         * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
3512         Taft-amendment types as the return type of an access_to_function type.
3513
3514         * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
3515         type for access_to_subprograms. The check is performed on package exit.
3516
3517 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3518
3519         * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
3520
3521         * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
3522         
3523         * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
3524
3525         * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
3526         semantic units, because the handling of itypes in the copied tree
3527         requires semantic information that does not belong in atree.
3528
3529 2009-04-17  Robert Dewar  <dewar@adacore.com>
3530
3531         * par-ch6.adb: Minor reformatting
3532
3533         * prj.adb: Minor reformatting
3534
3535 2009-04-17  Gary Dismukes  <dismukes@adacore.com>
3536
3537         * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
3538         on protected subprogram bodies, so exclude the case where Pf_Flags is
3539         Pf_Decl_Pbod from the error check.
3540
3541         * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
3542         indicators on subprograms in protected bodies, and proceed with parsing
3543         the subprogram.
3544
3545         * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
3546         subprograms from the check for primitiveness on subprograms with
3547         overriding indicators.
3548         (Check_Overriding_Indicator): Include protected subprograms in the
3549         style check for missing overriding indicators.
3550
3551 2009-04-17  Tristan Gingold  <gingold@adacore.com>
3552
3553         * init.c: Fix stack checking for x86 Darwin.
3554
3555 2009-04-17  Vincent Celier  <celier@adacore.com>
3556
3557         * prj-attr.adb: New project level attribute Object_File_Suffix
3558         (<language>).
3559         
3560         * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
3561         object file name
3562         (Process_Compiler): Process attribute Object_File_Suffix
3563
3564         * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
3565         platform suffix, when specified.
3566
3567         * prj.ads (Language_Config): New component Object_File_Suffix,
3568         defaulted to No_Name.
3569         (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
3570
3571         * snames.ads-tmpl: New standard name Object_File_Suffix
3572
3573 2009-04-17  Robert Dewar  <dewar@adacore.com>
3574
3575         * gnat_rm.texi: Add documentation about No_Streams restriction
3576
3577         * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
3578         attributes when checking No_Streams restriction.
3579
3580 2009-04-17  Thomas Quinot  <quinot@adacore.com>
3581
3582         * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
3583
3584         * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
3585         missing calls to RE_Request_Destroy to deallocate request objects after
3586         use.
3587
3588 2009-04-17  Nicolas Setton  <setton@adacore.com>
3589
3590         * link.c: Fix support for passing a response file under Darwin.
3591
3592 2009-04-17  Emmanuel Briot  <briot@adacore.com>
3593
3594         * prj.adb (Free): new subprogram.
3595
3596 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
3597
3598         * sem_ch3.adb: additional initialization on incomplete subtypes.
3599         
3600         * sem_ch6.adb (Process_Formals): if the subprogram is in the private
3601         part and one of the formals is an incomplete tagged type, attach to
3602         list of private dependends of the type for later validation.
3603
3604         * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
3605         primitive operations of a Taft-amendmment type.
3606
3607         * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
3608         type. The check is performed on package exit, possibly after the
3609         subprogram is frozen.
3610
3611 2009-04-17  Vincent Celier  <celier@adacore.com>
3612
3613         * prj-nmsc.adb (Get_Directories): Get the object and exec directory
3614         before looking for source directories, but make sure that there are nil
3615         if they are not explicitely declared and there is explicitely no
3616         sources in the project.
3617
3618 2009-04-17  Pascal Obry  <obry@adacore.com>
3619
3620         * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
3621
3622         * init.c: Fix minor typo and style fix.
3623
3624 2009-04-17  Robert Dewar  <dewar@adacore.com>
3625
3626         * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
3627
3628         * sem_attr.adb (Analyze_Attribute, case Address): Use
3629         PE_Address_Of_Intrinsic.
3630
3631         * types.ads: Add PE_Address_Of_Intrinsic
3632
3633         * types.h: Add PE_Address_Of_Intrinsic
3634
3635 2009-04-17  Nicolas Setton  <setton@adacore.com>
3636
3637         * gcc-interface/Makefile.in: Under darwin, build shared libraries
3638         with install_name starting with "@rpath/".
3639
3640 2009-04-17  Nicolas Setton  <setton@adacore.com>
3641
3642         * link.c: Add darwin section
3643
3644 2009-04-16  Robert Dewar  <dewar@adacore.com>
3645
3646         * g-pehage.adb: Minor reformatting
3647
3648         * sem_ch12.adb: Minor reformatting
3649
3650         * exp_dist.adb: Minor reformatting
3651
3652         * bindgen.adb: Minor style fixes.
3653
3654 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3655
3656         * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
3657         indexed components to the case where the prefix is a static string
3658         literal.
3659
3660 2009-04-16  Javier Miranda  <miranda@adacore.com>
3661
3662         * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
3663         objects avoid any further expansion of the expression initializing the
3664         object.
3665
3666 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3667
3668         * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
3669         that hides an outer homograph, make that homograph invisible when
3670         analyzing the actuals, to to prevent illegal direct visibility on it.
3671
3672 2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
3673
3674         * g-pehage.adb (Initialize): Fix off-by-one error.
3675
3676 2009-04-16  Tristan Gingold  <gingold@adacore.com>
3677
3678         * init.c: Detect real stack overflow on Darwin.
3679
3680         * system-darwin-x86.ads: Use stack probing on darwin x86.
3681
3682 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3683
3684         * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
3685         take the address of an intrinsic subprogram.
3686
3687 2009-04-16  Arnaud Charlet  <charlet@adacore.com>
3688
3689         * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
3690         for the targets where GNAT.Traceback.Symbolic is not supported.
3691
3692 2009-04-16  Vincent Celier  <celier@adacore.com>
3693
3694         * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
3695
3696         * g-trasym.ads: Update comments.
3697
3698 2009-04-16  Vasiliy Fofanov  <fofanov@adacore.com>
3699
3700         * tracebak.c (STOP_FRAME): Verify validity of the current address
3701         before dereferencing.
3702
3703 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3704
3705         * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
3706         the original location of the index expressions and the index subtypes,
3707         to prevent spurious out-of-scope references in gigi.
3708
3709 2009-04-16  Tristan Gingold  <gingold@adacore.com>
3710
3711         * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
3712         Add support for stack checking on darwin.
3713
3714 2009-04-16  Vincent Celier  <celier@adacore.com>
3715
3716         * prj-attr.adb: New attribute Runtime_Source_Dir
3717
3718         * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
3719         attribute Runtime_Source_Dir.
3720         (Check_Naming_Schemes): Give default values to out parameters to avoid
3721         invalid data.
3722
3723         * prj.ads (Language_Config): New component Runtime_Source_Dir
3724
3725         * snames.ads-tmpl: New standard name Runtime_Source_Dir
3726
3727 2009-04-16  Pascal Obry  <obry@adacore.com>
3728
3729         * adaint.h, adaint.c (__gnat_rmdir): New routine.
3730         Simple wrapper routines used to convert to proper encoding on
3731         Windows.
3732
3733         * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
3734
3735         * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
3736         twice.
3737
3738 2009-04-16  Pascal Obry  <obry@adacore.com>
3739
3740         * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
3741
3742 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3743
3744         * snames.ads-tmpl (Name_Defined): New predefined name for use by the
3745         integrated preprocessor.
3746
3747         * prep.ads, prep.adb (Setup_Hooks): New subprogram.
3748         (Initialize): Split into two subprograms, Initialize (to be called
3749         prior to compiler command line processing) and Setup_Hooks (to be called
3750         later on when the first source file is loaded).
3751
3752         * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
3753         Add call to Prep.Initialize.
3754
3755         * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
3756         to Prep.Setup_Hooks.
3757
3758 2009-04-16  Pascal Obry  <obry@adacore.com>
3759
3760         * adaint.h, adaint.c (__gnat_chdir): New routine.
3761         Simple wrapper routines used to convert to proper encoding on
3762         Windows.
3763
3764         * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
3765
3766         * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
3767
3768 2009-04-16  Quentin Ochem  <ochem@adacore.com>
3769
3770         * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
3771         of Source.Init.
3772
3773 2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
3774
3775         * a-convec.ads (Is_Empty): Mark inline.
3776
3777 2009-04-16  Nicolas Roche  <roche@adacore.com>
3778
3779         * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
3780
3781 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3782
3783         * prepcomp.adb: Minor reformatting
3784
3785 2009-04-16  Jerome Lambourg  <lambourg@adacore.com>
3786
3787         * sem_prag.adb (Process_Import_Or_Interface): With .NET,
3788         Access_Subprogram types can also be imported.
3789         (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
3790         names.
3791
3792 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3793
3794         * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
3795         preserve homonym chain when the declaration is rewritten into a
3796         renaming declaration, in order to preserve visibility structure.
3797
3798 2009-04-16  Jerome Lambourg  <lambourg@adacore.com>
3799
3800         * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
3801         taken into account for VM targets.
3802
3803 2009-04-16  Hristian Kirtchev  <kirtchev@adacore.com>
3804
3805         * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
3806         Year_Week_In_Year.
3807         (Year_Week_In_Year): New routine which contains the original code from
3808         Week_In_Year. Add the missing special case for January 1st falling on
3809         a Monday.
3810
3811 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3812
3813         * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
3814         actual type, use the base type to build the To_Any function.
3815         (Build_From_Any_Function): Remove junk, useless subtype conversion.
3816
3817 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3818
3819         * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
3820         restrict.adb: Minor code reorganization (use
3821         Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
3822
3823 2009-04-16  Bob Duff  <duff@adacore.com>
3824
3825         * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
3826         unused.
3827
3828 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3829
3830         * sem_ch4.adb: Minor reformatting
3831
3832         * adaint.c: Remove junk duplicated code.
3833
3834         * sem_ch3.adb: Minor reformatting
3835
3836         * exp_dist.adb: Minor comment rewording
3837
3838 2009-04-16  Robert Dewar  <dewar@adacore.com>
3839
3840         * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
3841         used together.
3842
3843 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3844
3845         * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
3846         usable before calling Add_One_Interp, to resolve spurious ambiguities.
3847
3848 2009-04-16  Robert Dewar  <dewar@adacore.com>
3849
3850         * Make-lang.in: Add entries for s-conca?.o
3851
3852         * Makefile.rtl: Add entries for s-conca?
3853
3854         * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
3855         of concatenation expansion
3856
3857         * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
3858         string cases instead of expanding assignments inline.
3859
3860         * opt.ads (Optimize_Size): New flag
3861
3862         * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
3863         s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
3864         s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
3865         s-conca9.adb, s-conca9.ads: New file.
3866
3867 2009-04-16  Robert Dewar  <dewar@adacore.com>
3868
3869         * exp_ch6.adb: Add comments
3870
3871         * rtsfind.ads: Add entries for s-conca? routines
3872
3873 2009-04-16  Arnaud Charlet  <charlet@adacore.com>
3874
3875         * gcc-interface/Make-lang.in: Update dependencies.
3876
3877         * gcc-interface/Makefile.in: Update translation for vms.
3878
3879 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3880
3881         * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
3882         and made global, to be used when installing parents of a child
3883         instance, to provide mappings for entities declared in formal packages
3884         of ancestor units. Now called from Install_Formal_Packages.
3885
3886 2009-04-16  Doug Rupp  <rupp@adacore.com>
3887
3888         * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
3889         notation for clarity.
3890
3891         * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
3892         s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
3893         s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
3894         (Initialize): Initialize Known_Tasks with Environment task.
3895
3896         * s-taskin.ads (Task_States): Move new states to end for the sake of
3897         GDB compatibility.
3898
3899         * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
3900
3901 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
3902
3903         * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
3904         operation has an inline pragma, propagate the flag to the internal
3905         unprotected subprogram.
3906
3907 2009-04-16  Doug Rupp  <rupp@adacore.com>
3908
3909         * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
3910         s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb, 
3911         s-taprop-hpux-dce.adb, s-taprop-posix.adb
3912         (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
3913
3914         * s-taprop-vms.adb (Enter_Task): Likewise.
3915         (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
3916
3917         * s-tassta.adb (Activate_Tasks): After task creation set state to
3918         Activating, vice Runnable. Initialize Known_Tasks, moved here from
3919         s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
3920         Set state to Runnable after above.
3921         (Task_Wrapper): Set Debug_Event_Run. In exception block set
3922         Debug_Event_Terminated.
3923
3924         * s-taskin.ads (Task_States): Add new states Activiting and
3925         Activator_Delay_Sleep.
3926         (Bit_Array, Debug_Event_Array): New types.
3927         (Global_Task_Debug_Event_Set: New flag.
3928         (Common_ATCB): New field Debug_Events.
3929
3930         * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
3931
3932         * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
3933         Activator_Sleep.
3934
3935         * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
3936         Activating and when Acceptor_Delay_Sleep.
3937
3938         * s-tasdeb.ads: Add constants for Debug_Events.
3939         (Debug_Event_Kind_Type): New subtype.
3940         (Signal_Debug_Event): New subprogram.
3941
3942         * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
3943
3944 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3945
3946         * sem_elim.adb: Minor reformatting
3947
3948         * freeze.adb: Minor reformatting
3949
3950         * exp_ch4.adb: Minor reformatting
3951
3952 2009-04-16  Emmanuel Briot  <briot@adacore.com>
3953
3954         * prj-nmsc.adb (Path_Name_Of): fix memory leak
3955
3956 2009-04-16  Robert Dewar  <dewar@adacore.com>
3957
3958         * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
3959
3960 2009-04-16  Vincent Celier  <celier@adacore.com>
3961
3962         * fmap.adb (Initialize): Show the current line when the mapping file
3963         is detected as "incorrectly formatted".
3964
3965 2009-04-16  Robert Dewar  <dewar@adacore.com>
3966
3967         * sem_ch12.adb: Minor reformatting
3968
3969         * sem_ch5.adb: Minor comment addition
3970
3971         * sem_util.adb: Minor reformatting
3972
3973         * sinput-p.adb: Minor reformatting
3974         Add missing pragma Warnings (On)
3975
3976 2009-04-16  Ed Falis  <falis@adacore.com>
3977
3978         * s-vxwext-kernel.adb: (ERROR): deleted unused constant
3979
3980 2009-04-16  Vincent Celier  <celier@adacore.com>
3981
3982         * ali-util.adb: Minor comment spelling error fix
3983
3984 2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
3985
3986         * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
3987         generate an assignment loop in case of overlap.
3988
3989 2009-04-16  Olivier Hainque  <hainque@adacore.com>
3990
3991         * gnat_ugn.texi (gnatmem description): Make it explicit that
3992         gnatmem is designed to work in association with static runtime
3993         library only.
3994
3995 2009-04-16  Thomas Quinot  <quinot@adacore.com>
3996
3997         * sem_type.adb: Minor reformatting
3998
3999 2009-04-16  Hristian Kirtchev  <kirtchev@adacore.com>
4000
4001         * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
4002         concerning return codes of gettimeofday and return value check.
4003
4004 2009-04-16  Ed Falis  <falis@adacore.com>
4005
4006         * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
4007         body can be renaming of imported routines.
4008
4009 2009-04-16  Vasiliy Fofanov  <fofanov@adacore.com>
4010
4011         * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
4012         targeted fashion.
4013
4014 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
4015
4016         * exp_ch9.adb: Comment improvements.
4017         (Build_Entry_Family_Name): Add parentheses around the index of a entry
4018         family member.
4019
4020 2009-04-15  Bob Duff  <duff@adacore.com>
4021
4022         * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
4023         "while X /= null loop" where X is unchanged inside the loop. We were
4024         not warning in this case, because of the pointers -- we feared that the
4025         loop variable could be updated via a pointer, if there are any pointers
4026         around the place. But that is impossible in this case.
4027
4028         * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
4029         the case of dereferences. In X.all, X cannot be an l-value. We now
4030         catch that case (and implicit dereferences, too).
4031
4032 2009-04-15  Vincent Celier  <celier@adacore.com>
4033
4034         * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
4035
4036 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4037
4038         * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
4039         From code reading.
4040         (Analyze_Package_Instantiation): If generic unit in child instance is
4041         the same as generic unit in parent instance, look for an outer homonym
4042         to locate the desired generic.
4043
4044 2009-04-15  Bob Duff  <duff@adacore.com>
4045
4046         * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
4047         warnings unless the loop comes from source, because checking generated
4048         loops is a waste of time, and makes it harder to debug
4049         Check_Infinite_Loop_Warning.
4050
4051         * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
4052         tested in the while loop is a renaming, do not warn. Otherwise, we get
4053         false alarms, because it's usually renaming something that we can't
4054         deal with (an indexed component, a global variable, ...).
4055
4056         * gnat_rm.texi: Fix typo
4057
4058 2009-04-15  Thomas Quinot  <quinot@adacore.com>
4059
4060         * sem_ch6.adb: Minor reformatting
4061
4062 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
4063
4064         * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
4065         immediate parent of the controlled function call is a component
4066         association.
4067
4068 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4069
4070         * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
4071         corresponding class-wide type is also in use.
4072
4073 2009-04-15  Thomas Quinot  <quinot@adacore.com>
4074
4075         * frontend.adb: Minor comment fix
4076
4077 2009-04-15  Robert Dewar  <dewar@adacore.com>
4078
4079         * gnatchop.adb (BOM_Length): New global variable
4080         (Write_Unit): Add new parameter Write_BOM
4081         (Write_Chopped_Files): Check for BOM and set Write_BOM for call
4082         to Write_Unit
4083
4084         * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
4085
4086 2009-04-15  Geert Bosch  <bosch@adacore.com>
4087
4088         * system-mingw-x86_64.ads, system-darwin-x86_64.ads
4089         (Backend_Overflow_Checks): Set to True.
4090
4091 2009-04-15  Gary Dismukes  <dismukes@adacore.com>
4092
4093         * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
4094         keyword is given in a record extension.
4095
4096 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
4097
4098         * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
4099         of a controlled function call in the context of a record aggregate.
4100         This does not apply to array aggregates since the call will be expanded
4101         into assignments.
4102
4103 2009-04-15  Ed Falis  <falis@adacore.com>
4104
4105         * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
4106         s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
4107         s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
4108         s-osinte-vxworks* and s-vxwext*.
4109
4110 2009-04-15  Arnaud Charlet  <charlet@adacore.com>
4111
4112         * gcc-interface/Make-lang.in: Update dependencies.
4113
4114         * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
4115         and s-vxwext*.
4116
4117 2009-04-15  Robert Dewar  <dewar@adacore.com>
4118
4119         * sem_ch13.adb (Unchecked_Conversions): Store source location instead
4120         of node for location for warning messages.
4121
4122         * gnatchop.adb: Minor reformatting
4123
4124 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4125
4126         * exp_ch6.adb: additional guard for renaming declarations for in
4127         parameters of an array type.
4128
4129 2009-04-15  Robert Dewar  <dewar@adacore.com>
4130
4131         * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
4132         in case they were rewritten by expander (Force_Evaluation).
4133
4134         * targparm.adb (Get_Target_Parameters): Correct check for
4135         Suppress_Exception_Locations.
4136
4137 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4138
4139         * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
4140         inlined  is of an array type that is not bit-packed, use a renaming
4141         declaration to capture its value, rather than a constant declaration.
4142
4143 2009-04-15  Robert Dewar  <dewar@adacore.com>
4144
4145         * rtsfind.adb: Minor reformatting.
4146
4147 2009-04-15  Emmanuel Briot  <briot@adacore.com>
4148
4149         * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
4150         Restore, and free the saved context.
4151
4152 2009-04-15  Gary Dismukes  <dismukes@adacore.com>
4153
4154         * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
4155         for illegal private extension from a synchronized interface parent in
4156         front of check for illegal limited extension so that limited extension
4157         from a synchronized interface will be rejected.
4158         (Check_Ifaces): Check that a private extension that has a synchronized
4159         interface as a progenitor must be explicitly declared synchronized.
4160         Also check that a record extension cannot derive from a synchronized
4161         interface.
4162
4163 2009-04-15  Pascal Obry  <obry@adacore.com>
4164
4165         * adaint.h (__gnat_unlink): Add spec.
4166         (__gnat_rename): Likewise.
4167
4168 2009-04-15  Vincent Celier  <celier@adacore.com>
4169
4170         * prj-nmsc.adb: Minor spelling error corrections in error messages
4171
4172 2009-04-15  Robert Dewar  <dewar@adacore.com>
4173
4174         * sinfo.ads: Minor comment update
4175
4176         * opt.ads: Minor comment updates
4177
4178         * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
4179         modular type.
4180
4181 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4182
4183         * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
4184         that generates the code needed to update a dispatch table when a
4185         primitive operation is declared with a subprogram body without previous
4186         spec. Insertion of the generated code is responsibility of the caller.
4187         (Make_DT): When building static tables, append the code created by
4188         Register_Primitive to update a secondary table after it has been
4189         constructed.
4190
4191         * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
4192
4193         * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
4194         on an overriding operation that implements an interface operation only
4195         if not building static dispatch tables.
4196
4197 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
4198
4199         * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
4200         does not cause overflow when converted to Duration. Use the safe value
4201         as the maximum allowable time delay..
4202
4203 2009-04-15  Jerome Lambourg  <lambourg@adacore.com>
4204
4205         * g-comlin.adb (Set_Command_Line): When adding a switch with attached
4206         parameter, specify that the delimiter is NUL, otherwise "-j2" will be
4207         translated to "-j 2".
4208
4209 2009-04-15  Bob Duff  <duff@adacore.com>
4210
4211         * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
4212         with_clauses, to avoid code duplication. Change this processing so we
4213         always add a with_clause on the main unit if needed.
4214
4215 2009-04-15  Pascal Obry  <obry@adacore.com>
4216
4217         Add support for Win32 native encoding for delete/rename routines.
4218         
4219         * adaint.c (__gnat_unlink): New routine.
4220         (__gnat_rename): New routine.
4221         Simple wrapper routines used to convert to proper encoding on
4222         Windows.
4223
4224         * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
4225         call to the C library.
4226
4227         * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
4228
4229 2009-04-15  Robert Dewar  <dewar@adacore.com>
4230
4231         * s-tassta.adb: Minor reformatting
4232
4233 2009-04-15  Robert Dewar  <dewar@adacore.com>
4234
4235         * frontend.adb (Frontend): Set proper default for
4236         Warn_On_Non_Local_Exception.
4237
4238         * opt.ads (Exception_Handler_Encountered): New flag
4239         (No_Warn_On_Non_Local_Exception): New flag
4240
4241         * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
4242
4243         * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
4244         (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
4245
4246 2009-04-15  Cyrille Comar  <comar@adacore.com>
4247
4248         * s-tassta.adb, a-exextr.adb, a-elchha.adb
4249         (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
4250         message when exception traces are active since it would generate
4251         redundant information.
4252         (Exception_Traces.Notify_Exception): put message output by a critical
4253         section to avoid unsynchronized output.
4254         (Trace_Unhandled_Exception_In_Task): put message output by a critical
4255         section to avoid unsynchronized output.
4256
4257 2009-04-15  Emmanuel Briot  <briot@adacore.com>
4258
4259         * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
4260         (Free): New subprogram.
4261
4262 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
4263
4264         * a-calend.adb: Add new constant Nanos_In_Four_Years.
4265         (Formatting_Operations.Time_Of): Change the way four year chunks of
4266         nanoseconds are added to the intermediate result.
4267
4268 2009-04-15  Nicolas Setton  <setton@adacore.com>
4269
4270         * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
4271         does not need to wait for a carriage return.
4272
4273 2009-04-15  Tristan Gingold  <gingold@adacore.com>
4274
4275         * bindgen.adb: Do not generate adafinal if No_Finalization restriction
4276         is set.
4277
4278 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4279
4280         * freeze.adb (Freeze_Entity): improve error message for improper use of
4281         incomplete types.
4282         Diagnose additional illegal uses of incomplete types in formal parts.
4283         appearing in formal parts.
4284
4285         * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
4286
4287 2009-04-15  Robert Dewar  <dewar@adacore.com>
4288
4289         * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
4290
4291 2009-04-15  Nicolas Roche  <roche@adacore.com>
4292
4293         * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
4294         current thread.
4295
4296         * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
4297
4298         * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
4299
4300 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4301
4302         * sem_ch4.adb: improve error message on exponentiation.
4303
4304 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
4305
4306         * a-calend.adb: Move constant Epoch_Offset from package
4307         Conversion_Operations to top level.
4308         (Delay_Operations.To_Duration): Define a constant which represents
4309         "end of time" and use it as a guard against very distant delay dates.
4310         Protect the code against overflow when performing the origin shift to
4311         Unix time.
4312
4313 2009-04-15  Robert Dewar  <dewar@adacore.com>
4314
4315         * sem_prag.adb: Minor reformatting.
4316
4317         * sem_type.adb: Minor reformatting
4318
4319 2009-04-15  Javier Miranda  <miranda@adacore.com>
4320
4321         * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
4322         support to check eliminated subprograms.
4323
4324         * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
4325
4326         * sem_elim.adb (Set_Eliminated): Add support for elimination of
4327         dispatching subprograms.
4328
4329         * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
4330         operations. Initialize with "null" the slots of eliminated dispaching
4331         primitives.
4332         (Write_DT): Add output for eliminated primitives.
4333
4334         * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
4335
4336 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4337
4338         * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
4339         the second is redundant, regardless of scopes.
4340
4341 2009-04-15  Vincent Celier  <celier@adacore.com>
4342
4343         * prj-nmsc.adb (Get_Directories): Check for sources before checking
4344         the object directory as when there are no sources, they may not be any
4345         object directory.
4346
4347         * make.adb (Gnatmake): Do not attempt to get the path name of the exec
4348         directory, when there are no exec directory.
4349
4350 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4351
4352         * sem_type.adb (Remove_Conversions): In order to resolve spurious
4353         ambiguities, refine removal of universal interpretations from complex
4354         expressions with literal arguments, when some numeric operators have
4355         been declared abstract.
4356
4357 2009-04-15  Ed Falis  <falis@adacore.com>
4358
4359         * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
4360         and backward compatibility for targets using probing for stack overflow
4361
4362 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4363
4364         * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
4365         after any declaration, including renaming declarations.
4366
4367 2009-04-15  Arnaud Charlet  <charlet@adacore.com>
4368
4369         * gcc-interface/Make-lang.in: Update dependencies.
4370
4371         * gcc-interface/Makefile.in: Fix VxWorks target pairs.
4372         Update xenomai target pairs.
4373
4374 2009-04-15  Javier Miranda  <miranda@adacore.com>
4375
4376         * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
4377
4378         * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
4379         functions returning anonymous access to class-wide limited types. Mark
4380         also the containing scope as a task master.
4381
4382         * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
4383         limited-withed packages. Required to restore their visibility after
4384         processing packages associated with implicit with-clauses.
4385
4386         * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
4387         associated with return statements because this work is now done by
4388         Check_Anonymous_Return.
4389         (Build_Master): Code cleanup.
4390
4391 2009-04-15  Thomas Quinot  <quinot@adacore.com>
4392
4393         * sem_warn.ads: Minor reformatting
4394
4395 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4396
4397         * sem_ch3.adb: better error message for illegal interfaces
4398
4399         * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
4400         formal is an incomplete type from a limited_with clause.
4401
4402 2009-04-15  Vincent Celier  <celier@adacore.com>
4403
4404         * prj-nmsc.adb (Locate_Directory): New Boolean parameter
4405         Externally_Built indicating if the project is externally built. If it
4406         is, and --subdirs is specified, but the subdir does not exist, look
4407         for the specified directory, without the subdir.
4408
4409 2009-04-15  Gary Dismukes  <dismukes@adacore.com>
4410
4411         * a-tasatt.adb: Fix typo, plus minor reformatting
4412
4413         * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
4414
4415         * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
4416
4417 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4418
4419         * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
4420         private extension whose parent is a synchronized interface carries an
4421         explicit synchronized keyword.
4422
4423 2009-04-15  Thomas Quinot  <quinot@adacore.com>
4424
4425         * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
4426         instantiate generic shared object package with the corresponding
4427         record type.
4428
4429 2009-04-15  Arnaud Charlet  <charlet@adacore.com>
4430
4431         * system-linux-sparc.ads: Remove obsolete entries.
4432
4433 2009-04-15  Thomas Quinot  <quinot@adacore.com>
4434
4435         * s-tasuti.ads: Add ??? comment
4436
4437 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
4438
4439         * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
4440         type even if the designated type comes from a limited_with clause, to
4441         ensure that the symbol for the finalization list of the access type is
4442         created.
4443
4444 2009-04-10  Robert Dewar  <dewar@adacore.com>
4445
4446         * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
4447         for warning suppression.
4448
4449 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4450
4451         * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
4452         identical, there is no redudancy to check.
4453
4454 2009-04-10  Gary Dismukes  <dismukes@adacore.com>
4455
4456         * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
4457         calls initializing SS_Allocator (which is initialized in following
4458         code).
4459         (Expand_Simple_Function_Return): Add comment about False value for
4460         Comes_From_Source on secondary-stack allocator.
4461
4462         * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
4463         (Build_Entry_Name): Add comment.
4464
4465 2009-04-10  Robert Dewar  <dewar@adacore.com>
4466
4467         * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
4468
4469         * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
4470         bound tested, since this is now done more generally in Sem_Res.
4471
4472         * sem_res.adb (Resolve_Comparison_Op): Add call to
4473         Check_Lower_Bound_Tested.
4474         (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
4475
4476         * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
4477         (Low_Bound_Tested): New name for Low_Bound_Known flag
4478
4479         * exp_ch5.adb: Minor reformatting
4480
4481         * exp_ch4.adb:
4482         Add comments on copying the Comes_From_Source flag for allocators
4483
4484         * sinfo.ads:
4485         Add comments on copying the Comes_From_Source flag for allocators
4486
4487         * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
4488         Comes_From_Source flag from old allocator to new one.
4489
4490 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4491
4492         * sem_ch6.ads: Address missing documentation query
4493
4494 2009-04-10  Vincent Celier  <celier@adacore.com>
4495
4496         * prj-attr.adb:
4497         Add new Linker attributes Max_Command_Line_Length, Response_File_Format
4498         and Response_File_Switches.
4499
4500         * prj-nmsc.adb (Process_Linker): Process new attributes
4501         Max_Command_Line_Length, Response_File_Format and
4502         Response_File_Switches.
4503
4504         * prj.ads (Response_File_Format): New enumeration type
4505         (Project_Configuration): New componants Max_Command_Line_Length,
4506         Resp_File_Format and Resp_File_Options.
4507
4508         * snames.ads-tmpl: Add new standard names for linking response files
4509         for gprbuild: GNU, None, Object_List, Option_List,
4510         Max_Command_Line_Length, Response_File_Format and
4511         Response_File_Switches.
4512
4513 2009-04-10  Geert Bosch  <bosch@adacore.com>
4514
4515         * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
4516         system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
4517         system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
4518         system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
4519         system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
4520         system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
4521         system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
4522         system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
4523         system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
4524         system-vxworks-arm.ads, system-vxworks-m68k.ads,
4525         system-vxworks-mips.ads, system-vxworks-ppc.ads,
4526         system-vxworks-sparcv9.ads, system-vxworks-x86.ads
4527         (Backend_Overflow_Checks): Set to True.
4528
4529 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4530
4531         * exp_attr.adb: Minor reformatting
4532
4533 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4534
4535         * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
4536         analyze the expression for a postcondition, even if the compiler mode
4537         is Generate_Code.
4538
4539 2009-04-10  Robert Dewar  <dewar@adacore.com>
4540
4541         * sem_aux.adb: Minor reformatting
4542
4543 2009-04-10  Ed Falis  <falis@adacore.com>
4544
4545         * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
4546
4547         * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
4548
4549 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4550
4551         * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
4552         undocumented formal.
4553         Minor reformatting
4554
4555         * a-direio.ads: Fix typo in comment
4556
4557         * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
4558         errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
4559         Use uniform phrasing for comment at start of subprogram body.
4560
4561         * xsnamest.adb: Add note to explain why we use specific names for the
4562         newly generated files instead of generating snames.{ads,adb,h} directly
4563
4564 2009-04-10  Sergey Rybin  <rybin@adacore.com>
4565
4566         * vms_data.ads:
4567         Add qualifier for new gnatstub option '--no-exception'
4568
4569         * gnat_ugn.texi:
4570         Add the description of the new gnatstub option '--no-exception'
4571
4572 2009-04-10  Robert Dewar  <dewar@adacore.com>
4573
4574         * rtsfind.adb: Minor reformatting
4575
4576 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4577
4578         * sem_disp.adb: Minor reformatting.
4579         Add comment pointing to RM clause for the case of warning against a
4580         (failed) attempt at declaring a primitive operation elsewhere than in a
4581         package spec.
4582
4583 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4584
4585         * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
4586         an actual for a previous formal package of the current instance.
4587
4588 2009-04-10  Bob Duff  <duff@adacore.com>
4589
4590         * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
4591         them first, rather than on the extended main unit.
4592
4593 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4594
4595         * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
4596         specification of full view carries a null exclusion indicator, create
4597         an itype for it, to check for conformance with partial view.
4598
4599 2009-04-10  Bob Duff  <duff@adacore.com>
4600
4601         * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
4602
4603         * rtsfind.adb: Minor comment changes, and remove useless code.
4604
4605         * sinfo.ads: Add ??? comment.
4606
4607 2009-04-10  Vincent Celier  <celier@adacore.com>
4608
4609         * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
4610
4611 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4612
4613         * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
4614         type is a synchronized type, retrieve tag information from the
4615         corresponding record, which has the dispatch table link.
4616
4617 2009-04-10  Jerome Lambourg  <lambourg@adacore.com>
4618
4619         * g-comlin.adb (Group_Analysis): Take care of switches that might be
4620         decomposed afterwards, but are present as-is in the command line
4621         configuration, and thus should be kept as-is.
4622
4623 2009-04-10  Robert Dewar  <dewar@adacore.com>
4624
4625         * gnat_rm.texi: Document that postconditions are tested on implicit
4626         returns.
4627
4628         * sem_aux.adb: Minor reformatting
4629
4630 2009-04-10  Gary Dismukes  <dismukes@adacore.com>
4631
4632         * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
4633         setting Etype.
4634         
4635         * par-ch3.adb (P_Access_Type_Definition): Set new attribute
4636         Null_Exclusion_In_Return_Present when an access-to-function type has a
4637         result type with an explicit not null.
4638
4639         * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
4640         given on the result type, then create a null-excluding itype for the
4641         function.
4642
4643         * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
4644         the case where a null exclusion is imposed on a named access type.
4645         (Analyze_Subprogram_Specification): Push and pop the scope of the
4646         function around the call to Analyze_Return_Type in the case of no
4647         formals, for consistency with handling when formals are present
4648         (Process_Formals does this). Ensures that any itype created for the
4649         return type will be associated with the proper scope.
4650
4651         * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
4652         exclusion is given on a generic function's result type, then create a
4653         null-excluding itype for the generic function.
4654         (Instantiate_Object): Set Null_Exclusion_Present of a constant created
4655         for an actual for a formal in object according to the setting on the
4656         formal. Ensures null exclusion checks are done when the association is
4657         elaborated.
4658
4659         * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
4660         N_Access_Function_Definition.
4661
4662         * sinfo.adb: Add Get_ and Set_ operations for
4663         Null_Exclusion_In_Return_Present.
4664
4665 2009-04-10  Bob Duff  <duff@adacore.com>
4666
4667         * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
4668         call to the _Postconditions procedure in the case of implicit returns
4669         from analysis to expansion. This eliminates some duplicated code. Use
4670         the Postcondition_Proc to find the identity of this procedure during
4671         expansion.
4672
4673 2009-04-10  Robert Dewar  <dewar@adacore.com>
4674
4675         * sem_ch6.adb: Minor code clean up.
4676
4677         * einfo.ads, sem_attr.adb: Minor comment fixes.
4678
4679 2009-04-10  Robert Dewar  <dewar@adacore.com>
4680
4681         * sem_ch8.adb: Minor reformatting
4682
4683 2009-04-10  Robert Dewar  <dewar@adacore.com>
4684
4685         * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
4686         procedures.
4687
4688         * sem_ch6.adb: Minor code clean up.
4689
4690 2009-04-10  Robert Dewar  <dewar@adacore.com>
4691
4692         * mlib-tgt-specific-xi.adb: Minor reformatting
4693
4694 2009-04-10  Bob Duff  <duff@adacore.com>
4695
4696         * einfo.ads: Minor comment fixes
4697
4698 2009-04-10  Vincent Celier  <celier@adacore.com>
4699
4700         * snames.ads-tmpl: Remove names that are no longer used in the
4701         Project Manager.
4702         Mark specifically those that are used only in gprbuild
4703
4704 2009-04-10  Eric Botcazou  <ebotcazou@adacore.com>
4705
4706         * init.c: Adjust EH support code on Alpha/Tru64.
4707
4708 2009-04-10  Bob Duff  <duff@adacore.com>
4709
4710         * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
4711         procedure on every path that could return implicitly (not via a return
4712         statement) from a procedure.
4713
4714 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4715
4716         * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
4717         valid scope for a task declarations and therefore for a master id.
4718
4719 2009-04-10  Robert Dewar  <dewar@adacore.com>
4720
4721         * sem_aux.adb: Minor reformatting
4722
4723 2009-04-10  Vincent Celier  <celier@adacore.com>
4724
4725         * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
4726         True.
4727         (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
4728         (Set_Obsolescent_Check): New procedure to change the value of
4729         Obsolescent_Check_Flag.
4730
4731         * scn.ads (Set_Obsolescent_Check): New procedure to control
4732         Obsolescent_Check.
4733
4734         * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
4735         obsolescent features while preprocessing.
4736
4737 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4738
4739         * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
4740         generated files on all platforms.
4741
4742 2009-04-10  Robert Dewar  <dewar@adacore.com>
4743
4744         * sem_aux.adb: Minor reformatting
4745
4746 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4747
4748         * sem_ch3.adb (Access_Definition): Handle properly the case of a
4749         protected function with formals that returns an anonymous access type.
4750
4751 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4752
4753         * sem_disp.adb: Minor reformatting
4754
4755 2009-04-10  Vasiliy Fofanov  <fofanov@adacore.com>
4756
4757         * seh_init.c: Do not use the 32-bit specific implementation of
4758         __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
4759         version TBD).
4760
4761 2009-04-10  Jose Ruiz  <ruiz@adacore.com>
4762
4763         * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
4764         a '/' at the end so we better use the complete target name to determine
4765         whether it is a PowerPC 55xx target.
4766
4767 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4768
4769         * sem_eval.adb: Minor reformatting
4770
4771 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4772
4773         * snames.h, snames.ads, snames.adb: Remove files, now generated from
4774         templates.
4775
4776         * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
4777         above.
4778
4779         * xsnamest.adb: New file.
4780
4781         * gcc-interface/Make-lang.in: New target for automated generation of
4782         snames.ads, snames.adb and snames.h
4783
4784 2009-04-10  Tristan Gingold  <gingold@adacore.com>
4785
4786         * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
4787         avoid compile time warnings.
4788         Do not add gcc/config in include search list while compiling the RTS.
4789         Pragma Thread_Local_Storage is available on any target.
4790
4791 2009-04-10  Bob Duff  <duff@adacore.com>
4792
4793         * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
4794
4795 2009-04-10  Tristan Gingold  <gingold@adacore.com>
4796
4797         * init.c: Install signal handler on Darwin.
4798
4799 2009-04-10  Robert Dewar  <dewar@adacore.com>
4800
4801         * sem_prag.adb: Minor reformatting
4802
4803         * exp_util.adb (Make_Non_Empty_Check): New function
4804         (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
4805         (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
4806
4807 2009-04-10  Arnaud Charlet  <charlet@adacore.com>
4808
4809         * make.adb, gnatlink.adb: Rename JGNAT toolchain.
4810
4811 2009-04-10  Jose Ruiz  <ruiz@adacore.com>
4812
4813         * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
4814         tool prefix for AVR and PowerPC 55xx targets.
4815
4816 2009-04-10  Robert Dewar  <dewar@adacore.com>
4817
4818         * sem_warn.adb (Within_Postcondition): New function
4819         (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
4820
4821 2009-04-10  Robert Dewar  <dewar@adacore.com>
4822
4823         * sem_warn.adb: Minor reformatting
4824
4825         * make.adb: Minor reformatting.
4826
4827 2009-04-10  Gary Dismukes  <dismukes@adacore.com>
4828
4829         * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
4830         entity and the scope is a subprogram, retrieve the Sloc of the
4831         subprogram's body rather than using the sloc of the spec, for better
4832         line-stepping behavior in gdb.
4833         (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
4834         controller, use the Sloc of the first declaration of the containing list
4835         rather than that of the node that triggered creation of the list
4836         controller.
4837
4838 2009-04-10  Vincent Celier  <celier@adacore.com>
4839
4840         * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
4841         to avoid gcc warning.
4842
4843 2009-04-10  Robert Dewar  <dewar@adacore.com>
4844
4845         * g-comlin.adb: Add ??? comment
4846
4847 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4848
4849         * sem_warn.adb (Check_Unused_Withs): Do not emit message about
4850         unreferenced entities for a package with no visible declarations.
4851
4852 2009-04-10  Robert Dewar  <dewar@adacore.com>
4853
4854         * exp_ch9.adb: Minor reformatting
4855
4856 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4857
4858         * sem_prag.adb: Minor reformatting
4859
4860 2009-04-10  Vincent Celier  <celier@adacore.com>
4861
4862         * prj-nmsc.adb:
4863         (Check_Library_Attributes): For a project qualified as a library project
4864         that is not a library project, indicate in the error message which
4865         attributes are missing (Library_Dir and/or Library_Name).
4866
4867 2009-04-10  Bob Duff  <duff@adacore.com>
4868
4869         * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
4870         generated nodes, because it might confuse various circuits in the FE.
4871
4872 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
4873
4874         * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
4875         of pragma. It will be recopied and analyzed when used in call to
4876         Create_Task.
4877
4878         * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
4879         initialization operations and recognize use of it in procedure calls
4880         within init_procs.
4881
4882         * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
4883         argument, because it may have side-effects.
4884
4885         * exp_ch2.adb: Remove obsolete comments on default functions
4886
4887 2009-04-10  Jose Ruiz  <ruiz@adacore.com>
4888
4889         * adaint.c (RTX section): Do for RTX the same thing as we do for
4890         Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
4891
4892 2009-04-10  Robert Dewar  <dewar@adacore.com>
4893
4894         * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
4895
4896         * sem_res.adb (Resolve_Call): Fix test for
4897         Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
4898         a non-dynamic scope).
4899
4900 2009-04-10  Robert Dewar  <dewar@adacore.com>
4901
4902         * make.adb: Add comment.
4903         Minor reformatting
4904
4905 2009-04-10  Nicolas Setton  <setton@adacore.com>
4906
4907         * s-osprim-darwin.adb: New file.
4908
4909         * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
4910
4911 2009-04-10  Thomas Quinot  <quinot@adacore.com>
4912
4913         * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
4914
4915 2009-04-09  Nick Clifton  <nickc@redhat.com>
4916
4917         * adadecode.h: Change copyright header to refer to version
4918         3 of the GNU General Public License with version 3.1 of the
4919         GCC Runtime Library Exception and to point readers at the
4920         COPYING3 and COPYING3.RUNTIME files and the FSF's license web
4921         page.
4922         * 9drpc.adb: Likewise.
4923         * a-assert.adb: Likewise.
4924         * a-astaco.adb: Likewise.
4925         * a-calari.adb: Likewise.
4926         * a-calcon.adb: Likewise.
4927         * a-calcon.ads: Likewise.
4928         * a-caldel.ads: Likewise.
4929         * a-calend-vms.adb: Likewise.
4930         * a-calend-vms.ads: Likewise.
4931         * a-calend.adb: Likewise.
4932         * a-calend.ads: Likewise.
4933         * a-calfor.adb: Likewise.
4934         * a-catizo.adb: Likewise.
4935         * a-cdlili.adb: Likewise.
4936         * a-cdlili.ads: Likewise.
4937         * a-cgaaso.adb: Likewise.
4938         * a-cgaaso.ads: Likewise.
4939         * a-cgarso.adb: Likewise.
4940         * a-cgcaso.adb: Likewise.
4941         * a-chacon.adb: Likewise.
4942         * a-chacon.ads: Likewise.
4943         * a-chahan.adb: Likewise.
4944         * a-chahan.ads: Likewise.
4945         * a-chlat9.ads: Likewise.
4946         * a-chtgke.adb: Likewise.
4947         * a-chtgke.ads: Likewise.
4948         * a-chtgop.adb: Likewise.
4949         * a-chtgop.ads: Likewise.
4950         * a-chzla1.ads: Likewise.
4951         * a-chzla9.ads: Likewise.
4952         * a-cidlli.adb: Likewise.
4953         * a-cidlli.ads: Likewise.
4954         * a-cihama.adb: Likewise.
4955         * a-cihama.ads: Likewise.
4956         * a-cihase.adb: Likewise.
4957         * a-cihase.ads: Likewise.
4958         * a-ciorma.adb: Likewise.
4959         * a-ciorma.ads: Likewise.
4960         * a-ciormu.adb: Likewise.
4961         * a-ciormu.ads: Likewise.
4962         * a-ciorse.adb: Likewise.
4963         * a-ciorse.ads: Likewise.
4964         * a-clrefi.adb: Likewise.
4965         * a-clrefi.ads: Likewise.
4966         * a-cohama.adb: Likewise.
4967         * a-cohama.ads: Likewise.
4968         * a-cohase.adb: Likewise.
4969         * a-cohase.ads: Likewise.
4970         * a-cohata.ads: Likewise.
4971         * a-coinve.adb: Likewise.
4972         * a-coinve.ads: Likewise.
4973         * a-colien.adb: Likewise.
4974         * a-colien.ads: Likewise.
4975         * a-colire.adb: Likewise.
4976         * a-colire.ads: Likewise.
4977         * a-comlin.adb: Likewise.
4978         * a-comlin.ads: Likewise.
4979         * a-convec.adb: Likewise.
4980         * a-convec.ads: Likewise.
4981         * a-coorma.adb: Likewise.
4982         * a-coorma.ads: Likewise.
4983         * a-coormu.adb: Likewise.
4984         * a-coormu.ads: Likewise.
4985         * a-coorse.adb: Likewise.
4986         * a-coorse.ads: Likewise.
4987         * a-coprnu.adb: Likewise.
4988         * a-coprnu.ads: Likewise.
4989         * a-crbltr.ads: Likewise.
4990         * a-crbtgk.adb: Likewise.
4991         * a-crbtgk.ads: Likewise.
4992         * a-crbtgo.adb: Likewise.
4993         * a-crbtgo.ads: Likewise.
4994         * a-crdlli.adb: Likewise.
4995         * a-crdlli.ads: Likewise.
4996         * a-cwila1.ads: Likewise.
4997         * a-cwila9.ads: Likewise.
4998         * a-decima.adb: Likewise.
4999         * a-decima.ads: Likewise.
5000         * a-diocst.adb: Likewise.
5001         * a-diocst.ads: Likewise.
5002         * a-direct.adb: Likewise.
5003         * a-direct.ads: Likewise.
5004         * a-direio.adb: Likewise.
5005         * a-direio.ads: Likewise.
5006         * a-dirval-mingw.adb: Likewise.
5007         * a-dirval-vms.adb: Likewise.
5008         * a-dirval.adb: Likewise.
5009         * a-dirval.ads: Likewise.
5010         * a-dynpri.adb: Likewise.
5011         * a-einuoc.adb: Likewise.
5012         * a-einuoc.ads: Likewise.
5013         * a-elchha.adb: Likewise.
5014         * a-elchha.ads: Likewise.
5015         * a-envvar.adb: Likewise.
5016         * a-excach.adb: Likewise.
5017         * a-except-2005.adb: Likewise.
5018         * a-except-2005.ads: Likewise.
5019         * a-except.adb: Likewise.
5020         * a-except.ads: Likewise.
5021         * a-excpol-abort.adb: Likewise.
5022         * a-excpol.adb: Likewise.
5023         * a-exctra.adb: Likewise.
5024         * a-exctra.ads: Likewise.
5025         * a-exetim-mingw.adb: Likewise.
5026         * a-exetim-mingw.ads: Likewise.
5027         * a-exexda.adb: Likewise.
5028         * a-exexpr-gcc.adb: Likewise.
5029         * a-exexpr.adb: Likewise.
5030         * a-exextr.adb: Likewise.
5031         * a-exstat.adb: Likewise.
5032         * a-filico.adb: Likewise.
5033         * a-filico.ads: Likewise.
5034         * a-finali.adb: Likewise.
5035         * a-finali.ads: Likewise.
5036         * a-interr.ads: Likewise.
5037         * a-intnam-aix.ads: Likewise.
5038         * a-intnam-darwin.ads: Likewise.
5039         * a-intnam-dummy.ads: Likewise.
5040         * a-intnam-freebsd.ads: Likewise.
5041         * a-intnam-hpux.ads: Likewise.
5042         * a-intnam-irix.ads: Likewise.
5043         * a-intnam-linux.ads: Likewise.
5044         * a-intnam-lynxos.ads: Likewise.
5045         * a-intnam-mingw.ads: Likewise.
5046         * a-intnam-rtems.ads: Likewise.
5047         * a-intnam-solaris.ads: Likewise.
5048         * a-intnam-tru64.ads: Likewise.
5049         * a-intnam-vms.ads: Likewise.
5050         * a-intnam-vxworks.ads: Likewise.
5051         * a-intsig.adb: Likewise.
5052         * a-intsig.ads: Likewise.
5053         * a-ngcefu.adb: Likewise.
5054         * a-ngcoar.adb: Likewise.
5055         * a-ngcoty.adb: Likewise.
5056         * a-ngcoty.ads: Likewise.
5057         * a-ngelfu.adb: Likewise.
5058         * a-ngrear.adb: Likewise.
5059         * a-ngrear.ads: Likewise.
5060         * a-nudira.adb: Likewise.
5061         * a-nudira.ads: Likewise.
5062         * a-nuflra.adb: Likewise.
5063         * a-nuflra.ads: Likewise.
5064         * a-numaux-darwin.adb: Likewise.
5065         * a-numaux-darwin.ads: Likewise.
5066         * a-numaux-libc-x86.ads: Likewise.
5067         * a-numaux-vxworks.ads: Likewise.
5068         * a-numaux-x86.adb: Likewise.
5069         * a-numaux-x86.ads: Likewise.
5070         * a-numaux.ads: Likewise.
5071         * a-rbtgso.adb: Likewise.
5072         * a-rbtgso.ads: Likewise.
5073         * a-reatim.ads: Likewise.
5074         * a-retide.adb: Likewise.
5075         * a-retide.ads: Likewise.
5076         * a-rttiev.adb: Likewise.
5077         * a-rttiev.ads: Likewise.
5078         * a-secain.adb: Likewise.
5079         * a-secain.ads: Likewise.
5080         * a-sequio.adb: Likewise.
5081         * a-sequio.ads: Likewise.
5082         * a-shcain.adb: Likewise.
5083         * a-shcain.ads: Likewise.
5084         * a-siocst.adb: Likewise.
5085         * a-siocst.ads: Likewise.
5086         * a-slcain.adb: Likewise.
5087         * a-slcain.ads: Likewise.
5088         * a-ssicst.adb: Likewise.
5089         * a-ssicst.ads: Likewise.
5090         * a-stboha.adb: Likewise.
5091         * a-stmaco.ads: Likewise.
5092         * a-storio.adb: Likewise.
5093         * a-strbou.adb: Likewise.
5094         * a-strbou.ads: Likewise.
5095         * a-stream.ads: Likewise.
5096         * a-strfix.adb: Likewise.
5097         * a-strhas.adb: Likewise.
5098         * a-strmap.adb: Likewise.
5099         * a-strmap.ads: Likewise.
5100         * a-strsea.adb: Likewise.
5101         * a-strsea.ads: Likewise.
5102         * a-strsup.adb: Likewise.
5103         * a-strsup.ads: Likewise.
5104         * a-strunb.adb: Likewise.
5105         * a-strunb.ads: Likewise.
5106         * a-ststio.adb: Likewise.
5107         * a-ststio.ads: Likewise.
5108         * a-stunau.adb: Likewise.
5109         * a-stunau.ads: Likewise.
5110         * a-stunha.adb: Likewise.
5111         * a-stwibo.adb: Likewise.
5112         * a-stwibo.ads: Likewise.
5113         * a-stwifi.adb: Likewise.
5114         * a-stwiha.adb: Likewise.
5115         * a-stwima.adb: Likewise.
5116         * a-stwima.ads: Likewise.
5117         * a-stwise.adb: Likewise.
5118         * a-stwise.ads: Likewise.
5119         * a-stwisu.adb: Likewise.
5120         * a-stwisu.ads: Likewise.
5121         * a-stwiun.adb: Likewise.
5122         * a-stwiun.ads: Likewise.
5123         * a-stzbou.adb: Likewise.
5124         * a-stzbou.ads: Likewise.
5125         * a-stzfix.adb: Likewise.
5126         * a-stzhas.adb: Likewise.
5127         * a-stzmap.adb: Likewise.
5128         * a-stzmap.ads: Likewise.
5129         * a-stzsea.adb: Likewise.
5130         * a-stzsea.ads: Likewise.
5131         * a-stzsup.adb: Likewise.
5132         * a-stzsup.ads: Likewise.
5133         * a-stzunb.adb: Likewise.
5134         * a-stzunb.ads: Likewise.
5135         * a-suteio.adb: Likewise.
5136         * a-suteio.ads: Likewise.
5137         * a-swbwha.adb: Likewise.
5138         * a-swmwco.ads: Likewise.
5139         * a-swunau.adb: Likewise.
5140         * a-swunau.ads: Likewise.
5141         * a-swuwha.adb: Likewise.
5142         * a-swuwti.adb: Likewise.
5143         * a-swuwti.ads: Likewise.
5144         * a-sytaco.adb: Likewise.
5145         * a-sytaco.ads: Likewise.
5146         * a-szbzha.adb: Likewise.
5147         * a-szmzco.ads: Likewise.
5148         * a-szunau.adb: Likewise.
5149         * a-szunau.ads: Likewise.
5150         * a-szuzha.adb: Likewise.
5151         * a-szuzti.adb: Likewise.
5152         * a-szuzti.ads: Likewise.
5153         * a-tags.adb: Likewise.
5154         * a-tags.ads: Likewise.
5155         * a-tasatt.ads: Likewise.
5156         * a-taside.adb: Likewise.
5157         * a-taside.ads: Likewise.
5158         * a-taster.adb: Likewise.
5159         * a-teioed.adb: Likewise.
5160         * a-teioed.ads: Likewise.
5161         * a-textio.adb: Likewise.
5162         * a-textio.ads: Likewise.
5163         * a-tiboio.adb: Likewise.
5164         * a-ticoau.adb: Likewise.
5165         * a-ticoau.ads: Likewise.
5166         * a-ticoio.adb: Likewise.
5167         * a-ticoio.ads: Likewise.
5168         * a-tideau.adb: Likewise.
5169         * a-tideau.ads: Likewise.
5170         * a-tideio.adb: Likewise.
5171         * a-tideio.ads: Likewise.
5172         * a-tienau.adb: Likewise.
5173         * a-tienau.ads: Likewise.
5174         * a-tienio.adb: Likewise.
5175         * a-tienio.ads: Likewise.
5176         * a-tifiio.adb: Likewise.
5177         * a-tifiio.ads: Likewise.
5178         * a-tiflau.adb: Likewise.
5179         * a-tiflau.ads: Likewise.
5180         * a-tiflio.adb: Likewise.
5181         * a-tiflio.ads: Likewise.
5182         * a-tigeau.adb: Likewise.
5183         * a-tigeau.ads: Likewise.
5184         * a-tiinau.adb: Likewise.
5185         * a-tiinau.ads: Likewise.
5186         * a-tiinio.adb: Likewise.
5187         * a-tiinio.ads: Likewise.
5188         * a-timoau.adb: Likewise.
5189         * a-timoau.ads: Likewise.
5190         * a-timoio.adb: Likewise.
5191         * a-timoio.ads: Likewise.
5192         * a-tiocst.adb: Likewise.
5193         * a-tiocst.ads: Likewise.
5194         * a-titest.adb: Likewise.
5195         * a-wichun.adb: Likewise.
5196         * a-wichun.ads: Likewise.
5197         * a-witeio.adb: Likewise.
5198         * a-witeio.ads: Likewise.
5199         * a-wtcoau.adb: Likewise.
5200         * a-wtcoau.ads: Likewise.
5201         * a-wtcoio.adb: Likewise.
5202         * a-wtcstr.adb: Likewise.
5203         * a-wtcstr.ads: Likewise.
5204         * a-wtdeau.adb: Likewise.
5205         * a-wtdeau.ads: Likewise.
5206         * a-wtdeio.adb: Likewise.
5207         * a-wtdeio.ads: Likewise.
5208         * a-wtedit.adb: Likewise.
5209         * a-wtedit.ads: Likewise.
5210         * a-wtenau.adb: Likewise.
5211         * a-wtenau.ads: Likewise.
5212         * a-wtenio.adb: Likewise.
5213         * a-wtenio.ads: Likewise.
5214         * a-wtfiio.adb: Likewise.
5215         * a-wtfiio.ads: Likewise.
5216         * a-wtflau.adb: Likewise.
5217         * a-wtflau.ads: Likewise.
5218         * a-wtflio.adb: Likewise.
5219         * a-wtflio.ads: Likewise.
5220         * a-wtgeau.adb: Likewise.
5221         * a-wtgeau.ads: Likewise.
5222         * a-wtinau.adb: Likewise.
5223         * a-wtinau.ads: Likewise.
5224         * a-wtinio.adb: Likewise.
5225         * a-wtmoau.adb: Likewise.
5226         * a-wtmoau.ads: Likewise.
5227         * a-wtmoio.adb: Likewise.
5228         * a-wtmoio.ads: Likewise.
5229         * a-wttest.adb: Likewise.
5230         * a-wwboio.adb: Likewise.
5231         * a-zchuni.adb: Likewise.
5232         * a-zchuni.ads: Likewise.
5233         * a-ztcoau.adb: Likewise.
5234         * a-ztcoau.ads: Likewise.
5235         * a-ztcoio.adb: Likewise.
5236         * a-ztcstr.adb: Likewise.
5237         * a-ztcstr.ads: Likewise.
5238         * a-ztdeau.adb: Likewise.
5239         * a-ztdeau.ads: Likewise.
5240         * a-ztdeio.adb: Likewise.
5241         * a-ztdeio.ads: Likewise.
5242         * a-ztedit.adb: Likewise.
5243         * a-ztedit.ads: Likewise.
5244         * a-ztenau.adb: Likewise.
5245         * a-ztenau.ads: Likewise.
5246         * a-ztenio.adb: Likewise.
5247         * a-ztenio.ads: Likewise.
5248         * a-ztexio.adb: Likewise.
5249         * a-ztexio.ads: Likewise.
5250         * a-ztfiio.adb: Likewise.
5251         * a-ztfiio.ads: Likewise.
5252         * a-ztflau.adb: Likewise.
5253         * a-ztflau.ads: Likewise.
5254         * a-ztflio.adb: Likewise.
5255         * a-ztflio.ads: Likewise.
5256         * a-ztgeau.adb: Likewise.
5257         * a-ztgeau.ads: Likewise.
5258         * a-ztinau.adb: Likewise.
5259         * a-ztinau.ads: Likewise.
5260         * a-ztinio.adb: Likewise.
5261         * a-ztmoau.adb: Likewise.
5262         * a-ztmoau.ads: Likewise.
5263         * a-ztmoio.adb: Likewise.
5264         * a-ztmoio.ads: Likewise.
5265         * a-zttest.adb: Likewise.
5266         * a-zzboio.adb: Likewise.
5267         * adadecode.c: Likewise.
5268         * adaint.c: Likewise.
5269         * adaint.h: Likewise.
5270         * alloc.ads: Likewise.
5271         * argv.c: Likewise.
5272         * arit64.c: Likewise.
5273         * atree.adb: Likewise.
5274         * atree.ads: Likewise.
5275         * aux-io.c: Likewise.
5276         * cal.c: Likewise.
5277         * casing.adb: Likewise.
5278         * casing.ads: Likewise.
5279         * cio.c: Likewise.
5280         * csets.adb: Likewise.
5281         * csets.ads: Likewise.
5282         * cstreams.c: Likewise.
5283         * ctrl_c.c: Likewise.
5284         * debug.adb: Likewise.
5285         * debug.ads: Likewise.
5286         * dec.ads: Likewise.
5287         * einfo.adb: Likewise.
5288         * einfo.ads: Likewise.
5289         * elists.adb: Likewise.
5290         * elists.ads: Likewise.
5291         * env.c: Likewise.
5292         * env.h: Likewise.
5293         * errno.c: Likewise.
5294         * exit.c: Likewise.
5295         * fe.h: Likewise.
5296         * final.c: Likewise.
5297         * fname.adb: Likewise.
5298         * fname.ads: Likewise.
5299         * g-allein.ads: Likewise.
5300         * g-alleve.adb: Likewise.
5301         * g-alleve.ads: Likewise.
5302         * g-altcon.adb: Likewise.
5303         * g-altcon.ads: Likewise.
5304         * g-altive.ads: Likewise.
5305         * g-alveop.adb: Likewise.
5306         * g-alveop.ads: Likewise.
5307         * g-alvety.ads: Likewise.
5308         * g-alvevi.ads: Likewise.
5309         * g-arrspl.adb: Likewise.
5310         * g-arrspl.ads: Likewise.
5311         * g-calend.ads: Likewise.
5312         * g-comlin.adb: Likewise.
5313         * g-debpoo.adb: Likewise.
5314         * g-debpoo.ads: Likewise.
5315         * g-eacodu-vms.adb: Likewise.
5316         * g-eacodu.adb: Likewise.
5317         * g-excact.adb: Likewise.
5318         * g-excact.ads: Likewise.
5319         * g-locfil.adb: Likewise.
5320         * g-os_lib.ads: Likewise.
5321         * g-rannum.adb: Likewise.
5322         * g-rannum.ads: Likewise.
5323         * g-regist.adb: Likewise.
5324         * g-regist.ads: Likewise.
5325         * g-signal.adb: Likewise.
5326         * g-signal.ads: Likewise.
5327         * g-soccon.ads: Likewise.
5328         * g-string.adb: Likewise.
5329         * g-string.ads: Likewise.
5330         * g-strspl.ads: Likewise.
5331         * g-timsta.adb: Likewise.
5332         * g-timsta.ads: Likewise.
5333         * g-trasym-vms-alpha.adb: Likewise.
5334         * g-trasym-vms-ia64.adb: Likewise.
5335         * g-utf_32.adb: Likewise.
5336         * g-utf_32.ads: Likewise.
5337         * g-wistsp.ads: Likewise.
5338         * g-zstspl.ads: Likewise.
5339         * gmem.c: Likewise.
5340         * gnatvsn.adb: Likewise.
5341         * gnatvsn.ads: Likewise.
5342         * gsocket.h: Likewise.
5343         * hostparm.ads: Likewise.
5344         * i-c.adb: Likewise.
5345         * i-cexten.ads: Likewise.
5346         * i-cobol.adb: Likewise.
5347         * i-cobol.ads: Likewise.
5348         * i-cpoint.adb: Likewise.
5349         * i-cpoint.ads: Likewise.
5350         * i-cpp.adb: Likewise.
5351         * i-cpp.ads: Likewise.
5352         * i-cstrea-vms.adb: Likewise.
5353         * i-cstrea.adb: Likewise.
5354         * i-cstrea.ads: Likewise.
5355         * i-cstrin.adb: Likewise.
5356         * i-cstrin.ads: Likewise.
5357         * i-forbla-darwin.adb: Likewise.
5358         * i-forbla-unimplemented.ads: Likewise.
5359         * i-forbla.adb: Likewise.
5360         * i-forbla.ads: Likewise.
5361         * i-forlap.ads: Likewise.
5362         * i-fortra.adb: Likewise.
5363         * i-pacdec.adb: Likewise.
5364         * i-pacdec.ads: Likewise.
5365         * i-vxwoio.adb: Likewise.
5366         * i-vxwoio.ads: Likewise.
5367         * indepsw-aix.adb: Likewise.
5368         * indepsw-gnu.adb: Likewise.
5369         * indepsw-mingw.adb: Likewise.
5370         * indepsw.adb: Likewise.
5371         * indepsw.ads: Likewise.
5372         * init.c: Likewise.
5373         * initialize.c: Likewise.
5374         * interfac.ads: Likewise.
5375         * krunch.adb: Likewise.
5376         * krunch.ads: Likewise.
5377         * lib-list.adb: Likewise.
5378         * lib-sort.adb: Likewise.
5379         * lib.adb: Likewise.
5380         * lib.ads: Likewise.
5381         * link.c: Likewise.
5382         * math_lib.adb: Likewise.
5383         * memtrack.adb: Likewise.
5384         * mingw32.h: Likewise.
5385         * mkdir.c: Likewise.
5386         * namet-sp.adb: Likewise.
5387         * namet-sp.ads: Likewise.
5388         * namet.adb: Likewise.
5389         * namet.ads: Likewise.
5390         * nlists.adb: Likewise.
5391         * nlists.ads: Likewise.
5392         * opt.adb: Likewise.
5393         * opt.ads: Likewise.
5394         * output.adb: Likewise.
5395         * output.ads: Likewise.
5396         * raise-gcc.c: Likewise.
5397         * raise.c: Likewise.
5398         * raise.h: Likewise.
5399         * repinfo.adb: Likewise.
5400         * repinfo.ads: Likewise.
5401         * repinfo.h: Likewise.
5402         * rident.ads: Likewise.
5403         * s-addima.adb: Likewise.
5404         * s-addima.ads: Likewise.
5405         * s-addope.adb: Likewise.
5406         * s-addope.ads: Likewise.
5407         * s-arit64.adb: Likewise.
5408         * s-arit64.ads: Likewise.
5409         * s-assert.adb: Likewise.
5410         * s-assert.ads: Likewise.
5411         * s-asthan-vms-alpha.adb: Likewise.
5412         * s-asthan.adb: Likewise.
5413         * s-asthan.ads: Likewise.
5414         * s-atacco.adb: Likewise.
5415         * s-atacco.ads: Likewise.
5416         * s-auxdec-empty.adb: Likewise.
5417         * s-auxdec-empty.ads: Likewise.
5418         * s-auxdec-vms_64.ads: Likewise.
5419         * s-auxdec.adb: Likewise.
5420         * s-auxdec.ads: Likewise.
5421         * s-bitops.adb: Likewise.
5422         * s-bitops.ads: Likewise.
5423         * s-boarop.ads: Likewise.
5424         * s-carsi8.adb: Likewise.
5425         * s-carsi8.ads: Likewise.
5426         * s-carun8.adb: Likewise.
5427         * s-carun8.ads: Likewise.
5428         * s-casi16.adb: Likewise.
5429         * s-casi16.ads: Likewise.
5430         * s-casi32.adb: Likewise.
5431         * s-casi32.ads: Likewise.
5432         * s-casi64.adb: Likewise.
5433         * s-casi64.ads: Likewise.
5434         * s-casuti.ads: Likewise.
5435         * s-caun16.adb: Likewise.
5436         * s-caun16.ads: Likewise.
5437         * s-caun32.adb: Likewise.
5438         * s-caun32.ads: Likewise.
5439         * s-caun64.adb: Likewise.
5440         * s-caun64.ads: Likewise.
5441         * s-chepoo.ads: Likewise.
5442         * s-crc32.adb: Likewise.
5443         * s-crc32.ads: Likewise.
5444         * s-crtl.ads: Likewise.
5445         * s-direio.adb: Likewise.
5446         * s-direio.ads: Likewise.
5447         * s-dsaser.ads: Likewise.
5448         * s-except.adb: Likewise.
5449         * s-except.ads: Likewise.
5450         * s-exctab.adb: Likewise.
5451         * s-exctab.ads: Likewise.
5452         * s-exnint.adb: Likewise.
5453         * s-exnint.ads: Likewise.
5454         * s-exnllf.adb: Likewise.
5455         * s-exnllf.ads: Likewise.
5456         * s-exnlli.adb: Likewise.
5457         * s-exnlli.ads: Likewise.
5458         * s-expint.adb: Likewise.
5459         * s-expint.ads: Likewise.
5460         * s-explli.adb: Likewise.
5461         * s-explli.ads: Likewise.
5462         * s-expllu.adb: Likewise.
5463         * s-expllu.ads: Likewise.
5464         * s-expmod.adb: Likewise.
5465         * s-expmod.ads: Likewise.
5466         * s-expuns.adb: Likewise.
5467         * s-expuns.ads: Likewise.
5468         * s-fatflt.ads: Likewise.
5469         * s-fatgen.adb: Likewise.
5470         * s-fatgen.ads: Likewise.
5471         * s-fatlfl.ads: Likewise.
5472         * s-fatllf.ads: Likewise.
5473         * s-fatsfl.ads: Likewise.
5474         * s-ficobl.ads: Likewise.
5475         * s-fileio.adb: Likewise.
5476         * s-fileio.ads: Likewise.
5477         * s-filofl.ads: Likewise.
5478         * s-finimp.adb: Likewise.
5479         * s-finimp.ads: Likewise.
5480         * s-finroo.adb: Likewise.
5481         * s-finroo.ads: Likewise.
5482         * s-fishfl.ads: Likewise.
5483         * s-fore.adb: Likewise.
5484         * s-fore.ads: Likewise.
5485         * s-fvadfl.ads: Likewise.
5486         * s-fvaffl.ads: Likewise.
5487         * s-fvagfl.ads: Likewise.
5488         * s-gearop.adb: Likewise.
5489         * s-gearop.ads: Likewise.
5490         * s-gecobl.adb: Likewise.
5491         * s-gecobl.ads: Likewise.
5492         * s-gecola.adb: Likewise.
5493         * s-gecola.ads: Likewise.
5494         * s-gerebl.adb: Likewise.
5495         * s-gerebl.ads: Likewise.
5496         * s-gerela.adb: Likewise.
5497         * s-gerela.ads: Likewise.
5498         * s-geveop.adb: Likewise.
5499         * s-geveop.ads: Likewise.
5500         * s-gloloc.adb: Likewise.
5501         * s-gloloc.ads: Likewise.
5502         * s-hibaen.ads: Likewise.
5503         * s-imenne.adb: Likewise.
5504         * s-imenne.ads: Likewise.
5505         * s-imgbiu.adb: Likewise.
5506         * s-imgbiu.ads: Likewise.
5507         * s-imgboo.adb: Likewise.
5508         * s-imgboo.ads: Likewise.
5509         * s-imgcha.adb: Likewise.
5510         * s-imgcha.ads: Likewise.
5511         * s-imgdec.adb: Likewise.
5512         * s-imgdec.ads: Likewise.
5513         * s-imgenu.adb: Likewise.
5514         * s-imgenu.ads: Likewise.
5515         * s-imgint.adb: Likewise.
5516         * s-imgint.ads: Likewise.
5517         * s-imgllb.adb: Likewise.
5518         * s-imgllb.ads: Likewise.
5519         * s-imglld.adb: Likewise.
5520         * s-imglld.ads: Likewise.
5521         * s-imglli.adb: Likewise.
5522         * s-imglli.ads: Likewise.
5523         * s-imgllu.adb: Likewise.
5524         * s-imgllu.ads: Likewise.
5525         * s-imgllw.adb: Likewise.
5526         * s-imgllw.ads: Likewise.
5527         * s-imgrea.adb: Likewise.
5528         * s-imgrea.ads: Likewise.
5529         * s-imguns.adb: Likewise.
5530         * s-imguns.ads: Likewise.
5531         * s-imgwch.adb: Likewise.
5532         * s-imgwch.ads: Likewise.
5533         * s-imgwiu.adb: Likewise.
5534         * s-imgwiu.ads: Likewise.
5535         * s-inmaop-dummy.adb: Likewise.
5536         * s-inmaop-vms.adb: Likewise.
5537         * s-inmaop.ads: Likewise.
5538         * s-interr-hwint.adb: Likewise.
5539         * s-interr-sigaction.adb: Likewise.
5540         * s-interr-vms.adb: Likewise.
5541         * s-interr.adb: Likewise.
5542         * s-interr.ads: Likewise.
5543         * s-intman-dummy.adb: Likewise.
5544         * s-intman-mingw.adb: Likewise.
5545         * s-intman-posix.adb: Likewise.
5546         * s-intman-solaris.adb: Likewise.
5547         * s-intman-vms.adb: Likewise.
5548         * s-intman-vms.ads: Likewise.
5549         * s-intman-vxworks.adb: Likewise.
5550         * s-intman-vxworks.ads: Likewise.
5551         * s-intman.ads: Likewise.
5552         * s-io.adb: Likewise.
5553         * s-io.ads: Likewise.
5554         * s-linux-alpha.ads: Likewise.
5555         * s-linux-hppa.ads: Likewise.
5556         * s-linux.ads: Likewise.
5557         * s-maccod.ads: Likewise.
5558         * s-mantis.adb: Likewise.
5559         * s-mantis.ads: Likewise.
5560         * s-mastop-irix.adb: Likewise.
5561         * s-mastop.adb: Likewise.
5562         * s-mastop.ads: Likewise.
5563         * s-memcop.ads: Likewise.
5564         * s-memory-mingw.adb: Likewise.
5565         * s-memory.adb: Likewise.
5566         * s-memory.ads: Likewise.
5567         * s-os_lib.ads: Likewise.
5568         * s-oscons-tmplt.c: Likewise.
5569         * s-osinte-aix.adb: Likewise.
5570         * s-osinte-darwin.adb: Likewise.
5571         * s-osinte-freebsd.adb: Likewise.
5572         * s-osinte-irix.adb: Likewise.
5573         * s-osinte-lynxos-3.adb: Likewise.
5574         * s-osinte-rtems.ads: Likewise.
5575         * s-osinte-tru64.adb: Likewise.
5576         * s-osinte-vxworks-kernel.adb: Likewise.
5577         * s-osinte-vxworks.adb: Likewise.
5578         * s-osprim-mingw.adb: Likewise.
5579         * s-osprim-posix.adb: Likewise.
5580         * s-osprim-solaris.adb: Likewise.
5581         * s-osprim-unix.adb: Likewise.
5582         * s-osprim-vms.adb: Likewise.
5583         * s-osprim-vms.ads: Likewise.
5584         * s-osprim-vxworks.adb: Likewise.
5585         * s-osprim.ads: Likewise.
5586         * s-pack03.adb: Likewise.
5587         * s-pack03.ads: Likewise.
5588         * s-pack05.adb: Likewise.
5589         * s-pack05.ads: Likewise.
5590         * s-pack06.adb: Likewise.
5591         * s-pack06.ads: Likewise.
5592         * s-pack07.adb: Likewise.
5593         * s-pack07.ads: Likewise.
5594         * s-pack09.adb: Likewise.
5595         * s-pack09.ads: Likewise.
5596         * s-pack10.adb: Likewise.
5597         * s-pack10.ads: Likewise.
5598         * s-pack11.adb: Likewise.
5599         * s-pack11.ads: Likewise.
5600         * s-pack12.adb: Likewise.
5601         * s-pack12.ads: Likewise.
5602         * s-pack13.adb: Likewise.
5603         * s-pack13.ads: Likewise.
5604         * s-pack14.adb: Likewise.
5605         * s-pack14.ads: Likewise.
5606         * s-pack15.adb: Likewise.
5607         * s-pack15.ads: Likewise.
5608         * s-pack17.adb: Likewise.
5609         * s-pack17.ads: Likewise.
5610         * s-pack18.adb: Likewise.
5611         * s-pack18.ads: Likewise.
5612         * s-pack19.adb: Likewise.
5613         * s-pack19.ads: Likewise.
5614         * s-pack20.adb: Likewise.
5615         * s-pack20.ads: Likewise.
5616         * s-pack21.adb: Likewise.
5617         * s-pack21.ads: Likewise.
5618         * s-pack22.adb: Likewise.
5619         * s-pack22.ads: Likewise.
5620         * s-pack23.adb: Likewise.
5621         * s-pack23.ads: Likewise.
5622         * s-pack24.adb: Likewise.
5623         * s-pack24.ads: Likewise.
5624         * s-pack25.adb: Likewise.
5625         * s-pack25.ads: Likewise.
5626         * s-pack26.adb: Likewise.
5627         * s-pack26.ads: Likewise.
5628         * s-pack27.adb: Likewise.
5629         * s-pack27.ads: Likewise.
5630         * s-pack28.adb: Likewise.
5631         * s-pack28.ads: Likewise.
5632         * s-pack29.adb: Likewise.
5633         * s-pack29.ads: Likewise.
5634         * s-pack30.adb: Likewise.
5635         * s-pack30.ads: Likewise.
5636         * s-pack31.adb: Likewise.
5637         * s-pack31.ads: Likewise.
5638         * s-pack33.adb: Likewise.
5639         * s-pack33.ads: Likewise.
5640         * s-pack34.adb: Likewise.
5641         * s-pack34.ads: Likewise.
5642         * s-pack35.adb: Likewise.
5643         * s-pack35.ads: Likewise.
5644         * s-pack36.adb: Likewise.
5645         * s-pack36.ads: Likewise.
5646         * s-pack37.adb: Likewise.
5647         * s-pack37.ads: Likewise.
5648         * s-pack38.adb: Likewise.
5649         * s-pack38.ads: Likewise.
5650         * s-pack39.adb: Likewise.
5651         * s-pack39.ads: Likewise.
5652         * s-pack40.adb: Likewise.
5653         * s-pack40.ads: Likewise.
5654         * s-pack41.adb: Likewise.
5655         * s-pack41.ads: Likewise.
5656         * s-pack42.adb: Likewise.
5657         * s-pack42.ads: Likewise.
5658         * s-pack43.adb: Likewise.
5659         * s-pack43.ads: Likewise.
5660         * s-pack44.adb: Likewise.
5661         * s-pack44.ads: Likewise.
5662         * s-pack45.adb: Likewise.
5663         * s-pack45.ads: Likewise.
5664         * s-pack46.adb: Likewise.
5665         * s-pack46.ads: Likewise.
5666         * s-pack47.adb: Likewise.
5667         * s-pack47.ads: Likewise.
5668         * s-pack48.adb: Likewise.
5669         * s-pack48.ads: Likewise.
5670         * s-pack49.adb: Likewise.
5671         * s-pack49.ads: Likewise.
5672         * s-pack50.adb: Likewise.
5673         * s-pack50.ads: Likewise.
5674         * s-pack51.adb: Likewise.
5675         * s-pack51.ads: Likewise.
5676         * s-pack52.adb: Likewise.
5677         * s-pack52.ads: Likewise.
5678         * s-pack53.adb: Likewise.
5679         * s-pack53.ads: Likewise.
5680         * s-pack54.adb: Likewise.
5681         * s-pack54.ads: Likewise.
5682         * s-pack55.adb: Likewise.
5683         * s-pack55.ads: Likewise.
5684         * s-pack56.adb: Likewise.
5685         * s-pack56.ads: Likewise.
5686         * s-pack57.adb: Likewise.
5687         * s-pack57.ads: Likewise.
5688         * s-pack58.adb: Likewise.
5689         * s-pack58.ads: Likewise.
5690         * s-pack59.adb: Likewise.
5691         * s-pack59.ads: Likewise.
5692         * s-pack60.adb: Likewise.
5693         * s-pack60.ads: Likewise.
5694         * s-pack61.adb: Likewise.
5695         * s-pack61.ads: Likewise.
5696         * s-pack62.adb: Likewise.
5697         * s-pack62.ads: Likewise.
5698         * s-pack63.adb: Likewise.
5699         * s-pack63.ads: Likewise.
5700         * s-parame-ae653.ads: Likewise.
5701         * s-parame-hpux.ads: Likewise.
5702         * s-parame-rtems.adb: Likewise.
5703         * s-parame-vms-alpha.ads: Likewise.
5704         * s-parame-vms-ia64.ads: Likewise.
5705         * s-parame-vms-restrict.ads: Likewise.
5706         * s-parame-vxworks.adb: Likewise.
5707         * s-parame-vxworks.ads: Likewise.
5708         * s-parame.adb: Likewise.
5709         * s-parame.ads: Likewise.
5710         * s-parint.adb: Likewise.
5711         * s-parint.ads: Likewise.
5712         * s-pooglo.adb: Likewise.
5713         * s-pooglo.ads: Likewise.
5714         * s-pooloc.adb: Likewise.
5715         * s-pooloc.ads: Likewise.
5716         * s-poosiz.adb: Likewise.
5717         * s-poosiz.ads: Likewise.
5718         * s-powtab.ads: Likewise.
5719         * s-proinf-irix-athread.adb: Likewise.
5720         * s-proinf-irix-athread.ads: Likewise.
5721         * s-proinf.adb: Likewise.
5722         * s-proinf.ads: Likewise.
5723         * s-purexc.ads: Likewise.
5724         * s-rannum.adb: Likewise.
5725         * s-rannum.ads: Likewise.
5726         * s-restri.adb: Likewise.
5727         * s-restri.ads: Likewise.
5728         * s-rident.ads: Likewise.
5729         * s-rpc.adb: Likewise.
5730         * s-rpc.ads: Likewise.
5731         * s-scaval.adb: Likewise.
5732         * s-scaval.ads: Likewise.
5733         * s-secsta.adb: Likewise.
5734         * s-secsta.ads: Likewise.
5735         * s-sequio.adb: Likewise.
5736         * s-sequio.ads: Likewise.
5737         * s-shasto.adb: Likewise.
5738         * s-shasto.ads: Likewise.
5739         * s-soflin.adb: Likewise.
5740         * s-soflin.ads: Likewise.
5741         * s-solita.adb: Likewise.
5742         * s-solita.ads: Likewise.
5743         * s-sopco3.adb: Likewise.
5744         * s-sopco3.ads: Likewise.
5745         * s-sopco4.adb: Likewise.
5746         * s-sopco4.ads: Likewise.
5747         * s-sopco5.adb: Likewise.
5748         * s-sopco5.ads: Likewise.
5749         * s-stache.adb: Likewise.
5750         * s-stache.ads: Likewise.
5751         * s-stalib.adb: Likewise.
5752         * s-stalib.ads: Likewise.
5753         * s-stausa.adb: Likewise.
5754         * s-stausa.ads: Likewise.
5755         * s-stchop-limit.ads: Likewise.
5756         * s-stchop-rtems.adb: Likewise.
5757         * s-stchop-vxworks.adb: Likewise.
5758         * s-stchop.adb: Likewise.
5759         * s-stchop.ads: Likewise.
5760         * s-stoele.adb: Likewise.
5761         * s-stoele.ads: Likewise.
5762         * s-stopoo.adb: Likewise.
5763         * s-stopoo.ads: Likewise.
5764         * s-stratt.adb: Likewise.
5765         * s-stratt.ads: Likewise.
5766         * s-strcom.adb: Likewise.
5767         * s-strcom.ads: Likewise.
5768         * s-string.adb: Likewise.
5769         * s-string.ads: Likewise.
5770         * s-strops.adb: Likewise.
5771         * s-strops.ads: Likewise.
5772         * s-strxdr.adb: Likewise.
5773         * s-ststop.adb: Likewise.
5774         * s-ststop.ads: Likewise.
5775         * s-taasde.adb: Likewise.
5776         * s-taasde.ads: Likewise.
5777         * s-tadeca.adb: Likewise.
5778         * s-tadeca.ads: Likewise.
5779         * s-tadert.adb: Likewise.
5780         * s-tadert.ads: Likewise.
5781         * s-taenca.adb: Likewise.
5782         * s-taenca.ads: Likewise.
5783         * s-taprob.ads: Likewise.
5784         * s-taprop-dummy.adb: Likewise.
5785         * s-taprop-hpux-dce.adb: Likewise.
5786         * s-taprop-irix.adb: Likewise.
5787         * s-taprop-linux.adb: Likewise.
5788         * s-taprop-lynxos.adb: Likewise.
5789         * s-taprop-mingw.adb: Likewise.
5790         * s-taprop-posix.adb: Likewise.
5791         * s-taprop-solaris.adb: Likewise.
5792         * s-taprop-tru64.adb: Likewise.
5793         * s-taprop-vms.adb: Likewise.
5794         * s-taprop-vxworks.adb: Likewise.
5795         * s-taprop.ads: Likewise.
5796         * s-tarest.adb: Likewise.
5797         * s-tarest.ads: Likewise.
5798         * s-tasdeb.adb: Likewise.
5799         * s-tasdeb.ads: Likewise.
5800         * s-tasinf-irix.ads: Likewise.
5801         * s-tasinf-linux.adb: Likewise.
5802         * s-tasinf-linux.ads: Likewise.
5803         * s-tasinf-mingw.adb: Likewise.
5804         * s-tasinf-mingw.ads: Likewise.
5805         * s-tasinf-solaris.adb: Likewise.
5806         * s-tasinf-solaris.ads: Likewise.
5807         * s-tasinf-tru64.ads: Likewise.
5808         * s-tasinf.adb: Likewise.
5809         * s-tasinf.ads: Likewise.
5810         * s-tasini.adb: Likewise.
5811         * s-tasini.ads: Likewise.
5812         * s-taskin.adb: Likewise.
5813         * s-taskin.ads: Likewise.
5814         * s-taspri-dummy.ads: Likewise.
5815         * s-taspri-hpux-dce.ads: Likewise.
5816         * s-taspri-mingw.ads: Likewise.
5817         * s-taspri-solaris.ads: Likewise.
5818         * s-taspri-tru64.ads: Likewise.
5819         * s-taspri-vms.ads: Likewise.
5820         * s-taspri-vxworks.ads: Likewise.
5821         * s-tasque.adb: Likewise.
5822         * s-tasque.ads: Likewise.
5823         * s-tasren.adb: Likewise.
5824         * s-tasren.ads: Likewise.
5825         * s-tasres.ads: Likewise.
5826         * s-tassta.adb: Likewise.
5827         * s-tassta.ads: Likewise.
5828         * s-tasuti.adb: Likewise.
5829         * s-tasuti.ads: Likewise.
5830         * s-tfsetr-default.adb: Likewise.
5831         * s-tfsetr-vxworks.adb: Likewise.
5832         * s-tpinop.adb: Likewise.
5833         * s-tpinop.ads: Likewise.
5834         * s-tpoben.adb: Likewise.
5835         * s-tpoben.ads: Likewise.
5836         * s-tpobop.adb: Likewise.
5837         * s-tpobop.ads: Likewise.
5838         * s-tpopde-vms.adb: Likewise.
5839         * s-tpopde-vms.ads: Likewise.
5840         * s-tpopsp-lynxos.adb: Likewise.
5841         * s-tpopsp-posix-foreign.adb: Likewise.
5842         * s-tpopsp-posix.adb: Likewise.
5843         * s-tpopsp-solaris.adb: Likewise.
5844         * s-tpopsp-vxworks.adb: Likewise.
5845         * s-tporft.adb: Likewise.
5846         * s-tposen.adb: Likewise.
5847         * s-tposen.ads: Likewise.
5848         * s-traceb.adb: Likewise.
5849         * s-traceb.ads: Likewise.
5850         * s-traces-default.adb: Likewise.
5851         * s-traces.adb: Likewise.
5852         * s-traces.ads: Likewise.
5853         * s-traent-vms.adb: Likewise.
5854         * s-traent-vms.ads: Likewise.
5855         * s-traent.adb: Likewise.
5856         * s-traent.ads: Likewise.
5857         * s-trafor-default.adb: Likewise.
5858         * s-trafor-default.ads: Likewise.
5859         * s-tratas-default.adb: Likewise.
5860         * s-tratas.adb: Likewise.
5861         * s-tratas.ads: Likewise.
5862         * s-unstyp.ads: Likewise.
5863         * s-utf_32.adb: Likewise.
5864         * s-utf_32.ads: Likewise.
5865         * s-vaflop-vms-alpha.adb: Likewise.
5866         * s-vaflop.adb: Likewise.
5867         * s-vaflop.ads: Likewise.
5868         * s-valboo.adb: Likewise.
5869         * s-valboo.ads: Likewise.
5870         * s-valcha.adb: Likewise.
5871         * s-valcha.ads: Likewise.
5872         * s-valdec.adb: Likewise.
5873         * s-valdec.ads: Likewise.
5874         * s-valenu.adb: Likewise.
5875         * s-valenu.ads: Likewise.
5876         * s-valint.adb: Likewise.
5877         * s-valint.ads: Likewise.
5878         * s-vallld.adb: Likewise.
5879         * s-vallld.ads: Likewise.
5880         * s-vallli.adb: Likewise.
5881         * s-vallli.ads: Likewise.
5882         * s-valllu.adb: Likewise.
5883         * s-valllu.ads: Likewise.
5884         * s-valrea.adb: Likewise.
5885         * s-valrea.ads: Likewise.
5886         * s-valuns.adb: Likewise.
5887         * s-valuns.ads: Likewise.
5888         * s-valuti.adb: Likewise.
5889         * s-valuti.ads: Likewise.
5890         * s-valwch.adb: Likewise.
5891         * s-valwch.ads: Likewise.
5892         * s-veboop.adb: Likewise.
5893         * s-veboop.ads: Likewise.
5894         * s-vector.ads: Likewise.
5895         * s-vercon.adb: Likewise.
5896         * s-vercon.ads: Likewise.
5897         * s-vmexta.adb: Likewise.
5898         * s-vmexta.ads: Likewise.
5899         * s-vxwext-kernel.ads: Likewise.
5900         * s-vxwext-rtp.adb: Likewise.
5901         * s-vxwext-rtp.ads: Likewise.
5902         * s-vxwext.ads: Likewise.
5903         * s-vxwork-arm.ads: Likewise.
5904         * s-vxwork-m68k.ads: Likewise.
5905         * s-vxwork-mips.ads: Likewise.
5906         * s-vxwork-ppc.ads: Likewise.
5907         * s-vxwork-sparcv9.ads: Likewise.
5908         * s-vxwork-x86.ads: Likewise.
5909         * s-wchcnv.adb: Likewise.
5910         * s-wchcnv.ads: Likewise.
5911         * s-wchcon.adb: Likewise.
5912         * s-wchcon.ads: Likewise.
5913         * s-wchjis.adb: Likewise.
5914         * s-wchjis.ads: Likewise.
5915         * s-wchstw.adb: Likewise.
5916         * s-wchstw.ads: Likewise.
5917         * s-wchwts.adb: Likewise.
5918         * s-wchwts.ads: Likewise.
5919         * s-widboo.adb: Likewise.
5920         * s-widboo.ads: Likewise.
5921         * s-widcha.adb: Likewise.
5922         * s-widcha.ads: Likewise.
5923         * s-widenu.adb: Likewise.
5924         * s-widenu.ads: Likewise.
5925         * s-widlli.adb: Likewise.
5926         * s-widlli.ads: Likewise.
5927         * s-widllu.adb: Likewise.
5928         * s-widllu.ads: Likewise.
5929         * s-widwch.adb: Likewise.
5930         * s-widwch.ads: Likewise.
5931         * s-win32.ads: Likewise.
5932         * s-winext.ads: Likewise.
5933         * s-wwdcha.adb: Likewise.
5934         * s-wwdcha.ads: Likewise.
5935         * s-wwdenu.adb: Likewise.
5936         * s-wwdenu.ads: Likewise.
5937         * s-wwdwch.adb: Likewise.
5938         * s-wwdwch.ads: Likewise.
5939         * scans.adb: Likewise.
5940         * scans.ads: Likewise.
5941         * seh_init.c: Likewise.
5942         * sfn_scan.adb: Likewise.
5943         * sinfo.adb: Likewise.
5944         * sinfo.ads: Likewise.
5945         * sinput.adb: Likewise.
5946         * sinput.ads: Likewise.
5947         * snames.adb: Likewise.
5948         * snames.ads: Likewise.
5949         * socket.c: Likewise.
5950         * stand.adb: Likewise.
5951         * stand.ads: Likewise.
5952         * stringt.adb: Likewise.
5953         * stringt.ads: Likewise.
5954         * sysdep.c: Likewise.
5955         * system-aix.ads: Likewise.
5956         * system-darwin-ppc.ads: Likewise.
5957         * system-darwin-x86.ads: Likewise.
5958         * system-darwin-x86_64.ads: Likewise.
5959         * system-freebsd-x86.ads: Likewise.
5960         * system-hpux-ia64.ads: Likewise.
5961         * system-hpux.ads: Likewise.
5962         * system-irix-n32.ads: Likewise.
5963         * system-irix-n64.ads: Likewise.
5964         * system-irix-o32.ads: Likewise.
5965         * system-linux-alpha.ads: Likewise.
5966         * system-linux-hppa.ads: Likewise.
5967         * system-linux-ia64.ads: Likewise.
5968         * system-linux-mips.ads: Likewise.
5969         * system-linux-mipsel.ads: Likewise.
5970         * system-linux-ppc.ads: Likewise.
5971         * system-linux-ppc64.ads: Likewise.
5972         * system-linux-s390.ads: Likewise.
5973         * system-linux-s390x.ads: Likewise.
5974         * system-linux-sh4.ads: Likewise.
5975         * system-linux-sparc.ads: Likewise.
5976         * system-linux-sparcv9.ads: Likewise.
5977         * system-linux-x86.ads: Likewise.
5978         * system-linux-x86_64.ads: Likewise.
5979         * system-lynxos-ppc.ads: Likewise.
5980         * system-lynxos-x86.ads: Likewise.
5981         * system-mingw-x86_64.ads: Likewise.
5982         * system-mingw.ads: Likewise.
5983         * system-rtems.ads: Likewise.
5984         * system-solaris-sparc.ads: Likewise.
5985         * system-solaris-sparcv9.ads: Likewise.
5986         * system-solaris-x86.ads: Likewise.
5987         * system-solaris-x86_64.ads: Likewise.
5988         * system-tru64.ads: Likewise.
5989         * system-vms-ia64.ads: Likewise.
5990         * system-vms-zcx.ads: Likewise.
5991         * system-vms.ads: Likewise.
5992         * system-vms_64.ads: Likewise.
5993         * system-vxworks-arm.ads: Likewise.
5994         * system-vxworks-m68k.ads: Likewise.
5995         * system-vxworks-mips.ads: Likewise.
5996         * system-vxworks-ppc.ads: Likewise.
5997         * system-vxworks-sparcv9.ads: Likewise.
5998         * system-vxworks-x86.ads: Likewise.
5999         * system.ads: Likewise.
6000         * table.adb: Likewise.
6001         * table.ads: Likewise.
6002         * targext.c: Likewise.
6003         * targparm.ads: Likewise.
6004         * tree_in.adb: Likewise.
6005         * tree_in.ads: Likewise.
6006         * tree_io.adb: Likewise.
6007         * tree_io.ads: Likewise.
6008         * types.adb: Likewise.
6009         * types.ads: Likewise.
6010         * uintp.adb: Likewise.
6011         * uintp.ads: Likewise.
6012         * uname.adb: Likewise.
6013         * uname.ads: Likewise.
6014         * urealp.adb: Likewise.
6015         * urealp.ads: Likewise.
6016         * vx_stack_info.c: Likewise.
6017         * widechar.adb: Likewise.
6018         * widechar.ads: Likewise.
6019         * exp_attr.adb: Change copyright header to refer to version
6020         3 of the GNU General Public License and to point readers at the
6021         COPYING3 file and the FSF's license web page.
6022         * sem.adb: Likewise.
6023         * sem_attr.ads: Likewise.
6024         * freeze.adb: Likewise.
6025         * freeze.ads: Likewise.
6026         * errout.ads: Likewise.
6027         * erroutc.adb: Likewise.
6028         * exp_ch11.ads: Likewise.
6029
6030 2009-04-09  Jakub Jelinek  <jakub@redhat.com>
6031
6032         * config-lang.in: Change copyright header to refer to version
6033         3 of the GNU General Public License and to point readers at the
6034         COPYING3 file and the FSF's license web page.
6035         * gcc-interface/trans.c: Likewise.
6036         * gnathtml.pl: Likewise.
6037         * gcc-interface/ada.h: Likewise.  Remove runtime exception.
6038         * gcc-interface/gigi.h: Likewise.
6039         * gcc-interface/misc.c: Likewise.
6040         * gcc-interface/targtyps.c: Likewise.
6041
6042 2009-04-09  Nicolas Setton  <setton@adacore.com>
6043
6044         * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
6045
6046         * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
6047         struct_timeval.
6048
6049 2009-04-09  Bob Duff  <duff@adacore.com>
6050
6051         * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
6052         internally-generated nodes related to select statements to avoid
6053         confusing the debugger.
6054
6055 2009-04-09  Pascal Obry  <obry@adacore.com>
6056
6057         * make.adb: Ensure that all linker arguments are duplicated.
6058
6059 2009-04-09  Robert Dewar  <dewar@adacore.com>
6060
6061         * sem_ch5.adb: Minor reformatting
6062
6063 2009-04-09  Vincent Celier  <celier@adacore.com>
6064
6065         * vms_data.ads:
6066         Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
6067         New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
6068         New qualifier /LXDEBUG=nnn for -gnatDnnn
6069         For H820-010
6070
6071         * gnat_ugn.texi:
6072         Update documentation for VMS qualifiers equivalent to -gnatGnn and
6073         -gnatDnn
6074
6075 2009-04-09  Nicolas Setton  <setton@adacore.com>
6076
6077         * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
6078         to match layout of siginfo_t in sys/signal.h.
6079
6080         * gcc-interface/Makefile.in: Add section for x86_64 darwin.
6081
6082 2009-04-09  Thomas Quinot  <quinot@adacore.com>
6083
6084         * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
6085
6086 2009-04-09  Nicolas Setton  <setton@adacore.com>
6087
6088         * s-oscons-tmplt.c: Allow long lines in the generated spec.
6089         Add generation of Darwin-specific constants needed when binding to the
6090         pthread library.
6091
6092 2009-04-09  Robert Dewar  <dewar@adacore.com>
6093
6094         * checks.adb:
6095         (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
6096         when no invalid values exist, Avoid duplicate read of atomic variable.
6097
6098         * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
6099         (Standard_Unsigned): Set Is_Known_Valid
6100
6101         * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
6102         subtype declaration if no constraint.
6103         (Set_Modular_Size): Set Is_Known_Valid if appropriate
6104         (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
6105
6106 2009-04-09  Robert Dewar  <dewar@adacore.com>
6107
6108         * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
6109         switch.ads: for numeric switches, an optional equal sign is always
6110         allowed.
6111
6112 2009-04-09  Vincent Celier  <celier@adacore.com>
6113
6114         * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
6115         the case of file names is not significant.
6116
6117 2009-04-09  Vincent Celier  <celier@adacore.com>
6118
6119         * errout.adb: Remove dependency on package Style
6120
6121         * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
6122         moved to Stylesw.
6123         
6124         * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
6125         Styleg.
6126
6127         * errutil.adb, par.adb: Import Stylesw
6128
6129 2009-04-09  Arnaud Charlet  <charlet@adacore.com>
6130
6131         * opt.ads: Fix typos.
6132
6133 2009-04-09  Robert Dewar  <dewar@adacore.com>
6134
6135         * einfo.adb: Minor reformatting
6136
6137 2009-04-09  Robert Dewar  <dewar@adacore.com>
6138
6139         * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
6140         units.
6141
6142         * styleg-c.ads, styleg-c.adb: Removed, no longer used.
6143
6144 2009-04-09  Robert Dewar  <dewar@adacore.com>
6145
6146         * g-comver.adb: Minor reformatting.
6147
6148 2009-04-09  Thomas Quinot  <quinot@adacore.com>
6149
6150         * lib-load.ads (Load_Unit): Update documentation.
6151
6152 2009-04-09  Ed Schonberg  <schonberg@adacore.com>
6153
6154         * lib-load.adb (Load_Unit): When loading the parent of a child unit
6155         named in a with_clause, retain the with_clause to preserve a
6156         limited_with indication.
6157
6158 2009-04-09  Robert Dewar  <dewar@adacore.com>
6159
6160         * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
6161         exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
6162         sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
6163         possible to replace an OR of two separate tests.
6164
6165 2009-04-09  Robert Dewar  <dewar@adacore.com>
6166
6167         * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
6168         Maximum_Messages.
6169         
6170         * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
6171         warning status as well.
6172         
6173         * opt.ads (Maximum_Messages): New name for Maximum_Errors.
6174         
6175         * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
6176         Maximum_Messages.
6177         
6178         * bindusg.adb, usage.adb: Update line for -gnatm switch
6179
6180         * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
6181         -mnn binder switch.
6182
6183 2009-04-09  Robert Dewar  <dewar@adacore.com>
6184
6185         * sem_ch10.adb: Minor reformatting.
6186
6187 2009-04-09  Bob Duff  <duff@adacore.com>
6188
6189         * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
6190         Set Sloc of generated nodes for calls to Undefer_Aborts and
6191         Save_Occurrence to No_Location, so the debugger ignores them and
6192         therefore does not jump back and forth when single stepping.
6193
6194 2009-04-09  Robert Dewar  <dewar@adacore.com>
6195
6196         * switch-b.adb: Minor reformatting.
6197
6198 2009-04-09  Robert Dewar  <dewar@adacore.com>
6199
6200         * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
6201         sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
6202         exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
6203         sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
6204         einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
6205         tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
6206         exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
6207         sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
6208         sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
6209         sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
6210         Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
6211
6212 2009-04-09  Robert Dewar  <dewar@adacore.com>
6213
6214         * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
6215
6216         * atree.h: Add Elist26
6217
6218         * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
6219         backends.
6220
6221 2009-04-09  Javier Miranda  <miranda@adacore.com>
6222
6223         * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
6224         retrieve from the Dispatch_Table_Wrappers list the external name.
6225         Addition of documentation.
6226         (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
6227         used to export secondary dispatch tables (in the previous version of
6228         the frontend only primary dispatch tables were exported). Addition of
6229         documentation.
6230         (Import_DT): New subprogram (internal of Make_Tags). Used to import a
6231         dispatch table of a given tagged type. 
6232         (Make_Tags): Modified to import secondary dispatch tables.
6233
6234         * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
6235         (Constant_Redeclaration): Code cleanup.
6236
6237         * einfo.ads (Dispatch_Table_Wrapper): Renamed to
6238         Dispatch_Table_Wrappers.  Update documentation.
6239
6240         * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
6241         Renamed to Dispatch_Table_Wrappers.
6242
6243         * sem_util.adb (Collect_Interface_Components): Improve handling of
6244         private types.
6245
6246         * atree.ads (Elist26, Set_Elist26): New subprograms
6247
6248         * atree.adb (Elist26, Set_Elist26): New subprograms
6249
6250 2009-04-09  Javier Miranda  <miranda@adacore.com>
6251
6252         * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
6253         (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
6254         tagged types.
6255
6256 2009-04-09  Robert Dewar  <dewar@adacore.com>
6257
6258         * s-direio.adb: Minor reformatting
6259
6260         * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
6261
6262 2009-04-09  Robert Dewar  <dewar@adacore.com>
6263
6264         * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
6265
6266 2009-04-09  Pascal Obry  <obry@adacore.com>
6267
6268         * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
6269         s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
6270         a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
6271         a-filico.ads: Add some missing overriding keywords.
6272
6273 2009-04-09  Pascal Obry  <obry@adacore.com>
6274
6275         * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
6276         a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
6277         a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
6278         reformatting.
6279
6280 2009-04-09  Ed Schonberg  <schonberg@adacore.com>
6281
6282         * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
6283         missing overriding indicator if the new declaration is not seen as
6284         primitive.
6285
6286 2009-04-09  Thomas Quinot  <quinot@adacore.com>
6287
6288         * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
6289         overflows in computation of bounds.
6290
6291 2009-04-09  Pascal Obry  <obry@adacore.com>
6292
6293         * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
6294         typos in comment.
6295
6296 2009-04-09  Robert Dewar  <dewar@adacore.com>
6297
6298         * sem_attr.adb (Check_Stream_Attribute): Check violation of
6299         restriction No_Streams
6300
6301         * gnat_rm.texi: Clarify No_Streams restriction
6302
6303         * g-socket.adb: Minor reformatting.
6304
6305 2009-04-09  Thomas Quinot  <quinot@adacore.com>
6306
6307         * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
6308
6309 2009-04-09  Geert Bosch  <bosch@adacore.com>
6310
6311         * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
6312         (Set_Result): Likewise.
6313         (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
6314         conversion, as required by RM 4.6(31).
6315
6316 2009-04-08  Robert Dewar  <dewar@adacore.com>
6317
6318         * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
6319         suppressed.
6320         
6321         * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
6322         resolution steps.
6323
6324 2009-04-08  Robert Dewar  <dewar@adacore.com>
6325
6326         * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
6327         No_Local_Allocators restriction preventing local instantiation.
6328
6329 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6330
6331         * sem_eval.adb: Minor comment fix
6332
6333 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6334
6335         * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
6336         New limited controlled type used to automate the initialization and
6337         finalization of the sockets implementation.
6338         (GNAT.Sockets.Initialize, Finalize): Make these no-ops
6339
6340 2009-04-08  Vincent Celier  <celier@adacore.com>
6341
6342         * prj-attr.adb: New read-only project-level attribute Project_Dir
6343
6344         * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
6345         read-only attribute of the same name.
6346         (Process_Declarative_Items): Call Add_Attributes with Project_Dir
6347         (Recursive_Process): Ditto
6348
6349         * snames.adb: Add new standard name Project_Dir
6350
6351         * snames.ads: Add new standard name Project_Dir
6352
6353 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6354
6355         * checks.adb: Minor reformatting
6356
6357 2009-04-08  Vincent Celier  <celier@adacore.com>
6358
6359         * vms_data.ads: Add documentation for new style keyword
6360         OVERRIDING_INDICATORS
6361
6362 2009-04-08  Robert Dewar  <dewar@adacore.com>
6363
6364         * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
6365         spec is in the current unit.
6366
6367 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
6368
6369         * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
6370         presence of entity.
6371
6372         * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
6373
6374 2009-04-08  Vincent Celier  <celier@adacore.com>
6375
6376         * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
6377
6378 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6379
6380         * checks.ads: Minor reformatting
6381
6382 2009-04-08  Robert Dewar  <dewar@adacore.com>
6383
6384         * gnat_rm.texi: Update documentation of pragma Obsolescent
6385         
6386         * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
6387         be omitted, and allow Entity parameter to be omitted.
6388
6389 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6390
6391         * exp_util.adb: Minor comment fix
6392
6393 2009-04-08  Robert Dewar  <dewar@adacore.com>
6394
6395         * g-socket.ads: Fix bad syntax in pragma Obsolescent
6396
6397         * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
6398         argument with no identifier following one that has an identifier. Was
6399         missed in some cases.
6400
6401         * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
6402         identifier.
6403         (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
6404
6405         * snames.adb: Add Name_Policy
6406
6407         * snames.ads: Add Name_Policy
6408
6409 2009-04-08  Robert Dewar  <dewar@adacore.com>
6410
6411         * gnat_rm.texi: Minor reformatting
6412
6413         * par-ch2.adb: Minor reformatting
6414
6415 2009-04-08  Robert Dewar  <dewar@adacore.com>
6416
6417         * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
6418
6419 2009-04-08  Robert Dewar  <dewar@adacore.com>
6420
6421         * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
6422         properly in the presence of Remote_Types or Remote_Call_Interface.
6423
6424         * sem_util.adb: Add comment.
6425
6426 2009-04-08  Robert Dewar  <dewar@adacore.com>
6427
6428         * ug_words: Add /ASSUME_VALID for -gnatB
6429
6430         * vms_data.ads: Add /ASSUME_VALID for -gnatB
6431
6432         * sem_cat.adb: Add clarifying commment
6433
6434         * a-direio.ads (Bytes): Make sure value is non-zero
6435
6436 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
6437
6438         * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
6439         that does not come from source, check for a rewritten function call in
6440         prefixed notation before other forms of rewriting.
6441
6442 2009-04-08  Robert Dewar  <dewar@adacore.com>
6443
6444         * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
6445         these are now obsolescent units used only for bootrapping with an
6446         older compiler.
6447
6448 2009-04-08  Robert Dewar  <dewar@adacore.com>
6449
6450         * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
6451
6452         * sem_ch3.adb: Minor comment updates
6453
6454 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
6455
6456         * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
6457         that come from source.
6458
6459 2009-04-08  Tristan Gingold  <gingold@adacore.com>
6460
6461         * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
6462         * gcc-interface/decl.c (prepend_attributes): New case
6463         Pragma_Thread_Local_Storage.
6464         * gcc-interface/utils.c (process_attributes): New case
6465         ATTR_THREAD_LOCAL_STORAGE.
6466
6467 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
6468
6469         * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
6470         by the back-end if it contains a call to a subprogram without a
6471         previous spec that is declared in the same unit.
6472
6473         * errout.ads: Update comments on uses of dirs
6474
6475 2009-04-08  Robert Dewar  <dewar@adacore.com>
6476
6477         * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
6478
6479 2009-04-08  Tristan Gingold  <gingold@adacore.com>
6480
6481         * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
6482         variables.
6483         Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
6484
6485 2009-04-08  Vincent Celier  <celier@adacore.com>
6486
6487         * prj-nmsc.adb:
6488         (Add_Source): Add the mapping of the unit name to source file name in
6489         the Unit_Sources_HT hash table, if the unit name is not null.
6490
6491         * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
6492
6493         * prj.ads (Unit_Sources_Htable): New hash table instantiation
6494         (Project_Tree_Data): New component Unit_Sources_HT
6495
6496 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6497
6498         * sem_ch8.adb: Minor reformatting.
6499         Minor code reorganization.
6500
6501 2009-04-08  Robert Dewar  <dewar@adacore.com>
6502
6503         * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
6504         snames.ads, freeze.adb, par-prag.adb: Add implementation of
6505         pragma Thread_Local_Storage, setting new flag
6506         Has_Pragma_Thread_Local_Storage in corresponding entities.
6507
6508 2009-04-08  Emmanuel Briot  <briot@adacore.com>
6509
6510         * prj.ads: Update comment on switches file
6511
6512         * prj-nmsc.adb: Code clean up. Use renaming clauses.
6513
6514 2009-04-08  Robert Dewar  <dewar@adacore.com>
6515
6516         * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
6517
6518 2009-04-08  Thomas Quinot  <quinot@adacore.com>
6519
6520         * ali-util.adb: Minor comment fix
6521
6522 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
6523
6524         * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
6525         appears in a context clause, and the enclosing package is mentioned in
6526         a limited_with_clause.
6527         (Use_One_Type): Reject clause if type is still incomplete.
6528
6529 2009-04-08  Emmanuel Briot  <briot@adacore.com>
6530
6531         * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
6532         avoid copies of Source_Data variables when possible, since these
6533         involve calls to memcpy() which are done too many times.
6534
6535 2009-04-08  Robert Dewar  <dewar@adacore.com>
6536
6537         * exp_ch4.adb (Expand_Concatenate): Clean up code
6538
6539 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6540
6541         * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
6542         type for the case of concatenating a constrained array indexed by an
6543         enumeration type.
6544
6545 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6546
6547         * sem_ch6.adb (Check_Conformance): when checking conformance of an
6548         operation that overrides an abstract operation inherited from an
6549         interface, return False if only one of the controlling formals is an
6550         access parameter.
6551
6552 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6553
6554         * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
6555         mandated by AI05-105.
6556
6557 2009-04-07  Vincent Celier  <celier@adacore.com>
6558
6559         * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
6560
6561 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6562
6563         * usage.adb: Minor fix in usage message.
6564
6565         * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
6566         match declaration; the correct subtype is Node_Id, not Entity_Id,
6567         because the expected node kind is an identifier, not a defining
6568         identifier.
6569
6570         * switch-c.adb: Minor reformatting.
6571
6572         * uintp.adb: Minor reformatting.
6573
6574 2009-04-07  Robert Dewar  <dewar@adacore.com>
6575
6576         * exp_ch13.adb: Minor reformatting
6577
6578 2009-04-07  Robert Dewar  <dewar@adacore.com>
6579
6580         * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
6581         against missing parent.
6582
6583 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6584
6585         * xoscons.adb: Minor reformatting
6586
6587 2009-04-07  Robert Dewar  <dewar@adacore.com>
6588
6589         * rtsfind.ads: Remove obsolete string concatenation entries
6590
6591 2009-04-07  Robert Dewar  <dewar@adacore.com>
6592
6593         * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
6594
6595 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6596
6597         * sem_ch10.adb (Check_Body_Required): Handle properly imported
6598         subprograms.
6599
6600 2009-04-07  Gary Dismukes  <dismukes@adacore.com>
6601
6602         * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
6603         Attribute_Address): When Init_Or_Norm_Scalars is True and the object
6604         is of a scalar or string type then suppress the setting of the
6605         expression to Empty.
6606
6607         * freeze.adb (Warn_Overlay): Also emit the warnings about default
6608         initialization for the cases of scalar and string objects when
6609         Init_Or_Norm_Scalars is True.
6610
6611 2009-04-07  Bob Duff  <duff@adacore.com>
6612
6613         * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
6614
6615 2009-04-07  Bob Duff  <duff@adacore.com>
6616
6617         * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
6618         Form parameter of Text_Translation=No allows binary mode for Text_IO
6619         files.
6620
6621         * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
6622
6623 2009-04-07  Javier Miranda  <miranda@adacore.com>
6624
6625         * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
6626         processing the bounds for bit packed arrays or VM target machines.
6627
6628 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6629
6630         * g-sothco.ads (Int_Access): Remove extraneous access type (use
6631         anonymous access instead).
6632         (Get_Socket_From_Set): Fix incorrectly reverted formals
6633         Last and Socket to match the underlying C routine.
6634
6635         * g-socket.adb, g-socket.ads
6636         (Get): Use named parameter associations instead of positional ones in
6637         call go Get_Socket_From_Set, since this routine has two formals of the
6638         same type.
6639         (Image): New procedure.
6640
6641         * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
6642         g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
6643         (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
6644         for type of Arg formal.
6645
6646         * sem_warn.adb: Minor reformatting
6647
6648 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6649
6650         * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
6651         over record components.
6652
6653 2009-04-07  Nicolas Roche  <roche@adacore.com>
6654
6655         * gsocket.h:
6656         Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
6657         has disappeared between VxWorks 6.4 and VxWorks 6.5
6658         In RTP mode use time.h instead of times.h
6659
6660 2009-04-07  Robert Dewar  <dewar@adacore.com>
6661
6662         * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
6663
6664 2009-04-07  Kevin Pouget  <pouget@adacore.com>
6665
6666         * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
6667         expanded code for constrained types.
6668
6669 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6670
6671         * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
6672         AI05-105: in an object renaming declaration, anonymousness is a name
6673         resolution rule.
6674
6675         * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
6676
6677 2009-04-07  Arnaud Charlet  <charlet@adacore.com>
6678
6679         * g-comlin.adb (Expansion): Fix old regression: also return directory
6680         names when matching.
6681
6682 2009-04-07  Robert Dewar  <dewar@adacore.com>
6683
6684         * exp_ch4.adb:
6685         (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
6686         (Expand_Concatenate): New name for Expand_Concatenate_String which has
6687         been rewritten to handle all types.
6688         (Expand_Concatenate_Other): Remove
6689
6690 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6691
6692         * lib-xref.adb (Generate_Reference): A default subprogram in an
6693         instance appears within the tree for the instance, but generates an
6694         implicit reference in the ALI.
6695
6696 2009-04-07  Javier Miranda  <miranda@adacore.com>
6697
6698         * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
6699         derived type that has discriminants, propagate the list of interfaces
6700         to the corresponding new base type. In addition, propagate also
6701         attribute Limited_Present (found working in this patch).
6702
6703 2009-04-07  Robert Dewar  <dewar@adacore.com>
6704
6705         * exp_ch4.adb: Rewrite concatenation expansion.
6706
6707 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6708
6709         * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
6710         relevant to packages.
6711
6712 2009-04-07  Robert Dewar  <dewar@adacore.com>
6713
6714         * sem_attr.adb: Minor reformatting
6715
6716         * sem_ch6.adb: Minor reformatting
6717
6718 2009-04-07  Tristan Gingold  <gingold@adacore.com>
6719
6720         * socket.c: Add more protections against S_resolvLib_ macros.
6721
6722 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6723
6724         * sem_attr.adb: Minor reformatting
6725
6726 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6727
6728         * sem_ch6.adb (New_Overloaded_Entity): New predicate
6729         Is_Overriding_Alias to handle properly types that inherit two homonym
6730         operations that have distinct dispatch table entries.
6731
6732 2009-04-07  Emmanuel Briot  <briot@adacore.com>
6733
6734         * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
6735         looking for the end of a parenthesis group
6736
6737 2009-04-07  Tristan Gingold  <gingold@adacore.com>
6738
6739         * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
6740
6741         * socket.c Don't use resolvLib_ macros if not defined.
6742
6743 2009-04-07  Robert Dewar  <dewar@adacore.com>
6744
6745         * g-socket.adb: Minor reformatting.
6746
6747         * g-socthi-mingw.adb: Minor reformatting
6748
6749         * g-sothco.ads: Minor reformatting
6750
6751         * exp_ch4.adb:
6752         (Expand_Concatenate_String): Complete rewrite to generate efficient code
6753         inline instead of relying on external library routines.
6754
6755         * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
6756         s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
6757         obsolescent
6758
6759 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6760
6761         * sem_attr.adb:
6762         (Eval_Attribute): for attributes of array objects that are not strings,
6763         attributes are not static if nominal subtype of object is unconstrained.
6764
6765 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
6766
6767         * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
6768         operations for a type T in an instance do not override each other,
6769         when T is derived from a formal private type, the corresponding
6770         operations inherited by a type derived from T outside
6771         of the instance do not override each other either.
6772
6773 2009-04-07  Robert Dewar  <dewar@adacore.com>
6774
6775         (Osint.Fail): Change calling sequence to have one string arg
6776         (Make.Make_Failed): Same change
6777         All callers are adjusted to use concatenation
6778
6779 2009-04-07  Robert Dewar  <dewar@adacore.com>
6780
6781         * exp_ch4.adb: Fix documentation typo
6782
6783 2009-04-07  Robert Dewar  <dewar@adacore.com>
6784
6785         * tbuild.ads: Minor reformatting
6786
6787 2009-04-07  Javier Miranda  <miranda@adacore.com>
6788
6789         * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
6790         when compiling under ZFP runtime.
6791
6792 2009-04-07  Robert Dewar  <dewar@adacore.com>
6793
6794         * g-comlin.adb: Minor reformatting
6795
6796 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6797
6798         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
6799         g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
6800         g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
6801         Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
6802
6803 2009-04-07  Robert Dewar  <dewar@adacore.com>
6804
6805         * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
6806
6807         * opt.ads (Sprint_Line_Limit): New parameter
6808         
6809         * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
6810         
6811         * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
6812         
6813         * usage.adb: Output information for -gnatGnn -gnatDnn
6814
6815 2009-04-07  Robert Dewar  <dewar@adacore.com>
6816
6817         * make.adb: Minor reformatting
6818
6819 2009-04-07  Robert Dewar  <dewar@adacore.com>
6820
6821         * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
6822
6823 2009-04-07  Robert Dewar  <dewar@adacore.com>
6824
6825         * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
6826
6827 2009-04-07  Robert Dewar  <dewar@adacore.com>
6828
6829         * checks.adb:
6830         Remove Assume_Valid parameter from In_Subrange_Of calls
6831         
6832         * sem_eval.adb:
6833         (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
6834         (Is_In_Range): Remove incorrect use of Assume_Valid
6835         (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
6836         
6837         * sem_eval.ads:
6838         (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
6839         (Is_In_Range): Documentation cleanup
6840         (Is_Out_Of_Range): Documentation cleanup
6841
6842         * gnat_rm.texi:
6843         Add documentation for Assume_No_Invalid_Values pragma
6844
6845         * sem_ch12.adb: Minor reformatting
6846
6847         * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
6848
6849         * sem_prag.adb: Improve error message.
6850
6851         * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
6852         LF/CR no longer recognized as line terminator
6853
6854         * switch.ads: Minor documentation improvement
6855
6856         * vms_data.ads: Minor reformatting
6857
6858 2009-04-07  Robert Dewar  <dewar@adacore.com>
6859
6860         * checks.adb (Determine_Range): Add Assume_Valid parameter
6861         
6862         * checks.ads (Determine_Range): Add Assume_Valid parameter
6863         
6864         * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
6865          Is_Null_Loop to suppress warnings in a loop body.
6866         
6867         * exp_ch4.adb:
6868         (Rewrite_Comparison): Major rewrite to accomodate invalid values
6869         
6870         * exp_ch5.adb:
6871         (Expand_N_Loop_Statement): Delete loop known not to execute
6872         
6873         * opt.ads:
6874         (Assume_No_Invalid_Values): Now set to False, and as documented, this
6875          fully enables the proper handling of invalid values.
6876         
6877         * sem_attr.adb:
6878         New calling sequence for Is_In_Range
6879         
6880         * sem_ch5.adb:
6881         (Analyze_Iteration_Scheme): Accomodate possible invalid values
6882          in determining if a loop range is null.
6883         
6884         * sem_eval.adb:
6885         (Is_In_Range): Add Assume_Valid parameter
6886         (Is_Out_Of_Range): Add Assume_Valid_Parameter
6887         (Compile_Time_Compare): Major rewrite to accomodate invalid values and
6888          also to do more accurate and complete range analysis, catching more
6889          cases.
6890         
6891         * sem_eval.ads:
6892         (Is_In_Range): Add Assume_Valid parameter
6893         (Is_Out_Of_Range): Add Assume_Valid_Parameter
6894         
6895         * sem_util.adb:
6896         New calling sequence for Is_In_Range
6897         
6898         * sinfo.adb:
6899         (Suppress_Loop_Warnings): New flag
6900         
6901         * sinfo.ads:
6902         (Is_Null_Loop): Update documentation
6903         (Suppress_Loop_Warnings): New flag
6904         
6905         * gnat_ugn.texi: Document -gnatB switch
6906
6907 2009-04-07  Arnaud Charlet  <charlet@adacore.com>
6908
6909         * gnatvsn.ads: Bump version number.
6910
6911 2009-04-07  Thomas Quinot  <quinot@adacore.com>
6912
6913         * exp_ch3.adb: Minor rewording (comments)
6914
6915 2009-04-07  Robert Dewar  <dewar@adacore.com>
6916
6917         * exp_disp.adb: Minor reformatting
6918
6919 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
6920
6921         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
6922         underlying type.
6923         * gcc-interface/trans.c (lvalue_required_p): Likewise.
6924
6925 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
6926
6927         * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
6928         Do not convert the result.  Remove obsolete comment.
6929
6930 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
6931
6932         * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
6933         DECL_CONTEXT.
6934         (Subprogram_Body_to_gnu): Fix pasto.
6935
6936 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
6937
6938         * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
6939         (void_type_decl_node): Remove.
6940         (init_gigi_decls): Likewise.
6941         (gnat_install_builtins): Declare.
6942         (record_builtin_type): Likewise.
6943         (create_type_stub_decl): Likewise.
6944         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
6945         (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
6946         artificial.
6947         <E_Array_Subtype>: Use the index types, not only their name, in the
6948         record giving the names of the bounds, if any.
6949         For a packed array type, make it artificial only if the base type
6950         was artificial as well.  Remove redundant statement.
6951         (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
6952         dummy types.
6953         Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
6954         (rest_of_type_decl_compilation_no_defer): Likewise.
6955         * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
6956         * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
6957         and use create_type_stub_decl to build it.
6958         (gnat_pushdecl): Rewrite condition.
6959         (gnat_install_builtins): Remove bogus declaration.
6960         (record_builtin_type): New function.
6961         (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
6962         of types.
6963         (create_type_stub_decl): New function.
6964         (create_type_decl): Assert that the type is not dummy.  If the type
6965         hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
6966         (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
6967         (build_vms_descriptor): Likewise.
6968         (init_gigi_decls): Delete and move bulk of code to...
6969         * gcc-interface/trans.c (gigi): ...here.  Use record_builtin_type.
6970         (emit_range_check): Add gnat_node parameter.
6971         (emit_index_check): Likewise.
6972         (emit_check): Likewise.
6973         (build_unary_op_trapv): Likewise.
6974         (build_binary_op_trapv): Likewise.
6975         (convert_with_check): Likewise.
6976         (Attribute_to_gnu): Adjust calls for above changes.
6977         (call_to_gnu): Likewise.
6978         (gnat_to_gnu): Likewise.
6979         (assoc_to_constructor): Likewise.
6980         (pos_to_constructor): Likewise.
6981         (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
6982         (process_type): Do not create TYPE_DECL for dummy types.
6983
6984 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
6985
6986         * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
6987         * gcc-interface/trans.c: Fix formatting throughout.  Fix comments.
6988         * gcc-interface/utils.c: Fix comments.
6989
6990 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
6991
6992         * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
6993         move around.
6994         (gnat_to_gnu_type): Move around.
6995         (get_unpadded_type): Likewise.
6996         * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
6997         Tidy comments.
6998
6999 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
7000
7001         * gcc-interface/trans.c (check_for_eliminated_entity): New function.
7002         (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
7003         (call_to_gnu): Invoke it instead of manually checking.
7004
7005 2009-04-04  Eric Botcazou  <ebotcazou@adacore.com>
7006
7007         * gcc-interface/utils.c (finish_record_type): Force structural equality
7008         checks if the record type is discriminated.
7009
7010 2009-03-31  Eric Botcazou  <ebotcazou@adacore.com>
7011
7012         * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
7013         * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
7014         * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
7015         * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
7016         * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
7017         * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
7018         * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
7019
7020 2009-03-30  Paolo Bonzini  <bonzini@gnu.org>
7021
7022         * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
7023         of TREE_CONSTANT_OVERFLOW.
7024
7025 2009-03-30  Joseph Myers  <joseph@codesourcery.com>
7026
7027         PR rtl-optimization/323
7028         * gcc-interface/misc.c (gnat_post_options): Set
7029         flag_excess_precision_cmdline.  Give an error for
7030         -fexcess-precision=standard for processors where the option is
7031         significant.
7032
7033 2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
7034
7035         PR c/39323
7036         * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
7037         on bit_align.
7038
7039 2009-03-11  Olivier Hainque  <hainque@adacore.com>
7040
7041         * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
7042         checks processing, remove unintended TREE_TYPE walk on index type.
7043
7044 2009-03-01  Eric Botcazou  <ebotcazou@adacore.com>
7045
7046         PR ada/39264
7047         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
7048         call make_packable_type on fat pointer types.
7049         <E_Array_Subtype>: Likewise.
7050         <E_Record_Subtype>: Call make_packable_type on all record types
7051         except for fat pointer types.
7052         (make_packable_type): Likewise.
7053         (gnat_to_gnu_field): Likewise.
7054
7055 2009-02-28  Eric Botcazou  <ebotcazou@adacore.com>
7056
7057         * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
7058         EH_MECHANISM change made on 2007-12-06.
7059
7060 2009-02-26  Andreas Schwab  <schwab@suse.de>
7061
7062         PR ada/39172
7063         * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
7064         * gcc-interface/Makefile.in: Change all uses of $(srcdir),
7065         $(fsrcdir) and $(fsrcpfx) to add ada subdir.
7066         (AWK): Substitute.
7067         (target_cpu_default): Substitute.
7068
7069 2009-02-25  Laurent GUERBY  <laurent@guerby.net>
7070
7071         PR ada/39221
7072         * a-teioed.adb (Expand): Fix Result overflow.
7073
7074 2009-02-25  Laurent GUERBY  <laurent@guerby.net>
7075
7076         * gcc-interface/Makefile.in: Fix multilib handling for
7077         sparc64-linux.
7078
7079 2009-02-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
7080
7081         * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
7082
7083 2009-02-18  H.J. Lu  <hongjiu.lu@intel.com>
7084
7085         * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
7086
7087 2009-02-16  Eric Botcazou  <ebotcazou@adacore.com>
7088
7089         * gcc-interface/deftarg.c: Remove.
7090
7091 2009-02-10  Olivier Hainque  <hainque@adacore.com>
7092             Eric Botcazou  <ebotcazou@adacore.com>
7093
7094         * gcc-interface/decl.c (enum alias_set_op): New enumeration.
7095         (copy_alias_set): Rename into...
7096         (relate_alias_sets): ...this.  Add third parameter OP.  Retrieve the
7097         underlying array of unconstrained arrays for the new type as well.
7098         If the old and new alias sets don't conflict, make one a subset of
7099         the other as per the OP parameter.
7100         (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
7101         <E_Record_Type>: Do not copy the alias set for derived types.
7102         For all types, make the alias set of derived types a superset of
7103         that of their parent type.
7104         (make_aligning_type): Adjust calls to copy_alias_set.
7105         (make_packable_type): Likewise.
7106         * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
7107         Check for alias set conflict instead of strict equality to issue the
7108         warning.
7109
7110 2009-02-09  Eric Botcazou  <ebotcazou@adacore.com>
7111
7112         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
7113         Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
7114         (copy_alias_set): Assert that arrays have the same aliasing settings.
7115         (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
7116
7117 2009-02-08  Eric Botcazou  <ebotcazou@adacore.com>
7118
7119         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
7120         Set TYPE_NONALIASED_COMPONENT on the array type.
7121
7122 2009-01-31  Laurent GUERBY  <laurent@guerby.net>
7123
7124         * gcc-interface/Makefile.in: Fix mipsel linux handling.
7125
7126 2009-01-16  Jakub Jelinek  <jakub@redhat.com>
7127
7128         * gcc-interface/Makefile.in: Fix multilib handling for
7129         powerpc64-linux.
7130
7131 2009-01-12  Eric Botcazou  <ebotcazou@adacore.com>
7132
7133         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
7134         only useless conversions around renamed objects.
7135
7136 2009-01-11  Eric Botcazou  <ebotcazou@adacore.com>
7137
7138         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
7139         the _Tag field before any discriminants in the field list.
7140         (components_to_record): Remove obsolete comment.
7141
7142
7143 \f
7144 Copyright (C) 2009 Free Software Foundation, Inc.
7145
7146 Copying and distribution of this file, with or without modification,
7147 are permitted in any medium without royalty provided the copyright
7148 notice and this notice are preserved.