OSDN Git Service

2009-04-22 Bob Duff <duff@adacore.com>
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2009-04-22  Bob Duff  <duff@adacore.com>
2
3         * exp_pakd.adb: Minor comment fixes.
4
5         * sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
6         sem_ch12.adb: Change the meaning of the Library_Unit attribute to
7         include units containing instantiations, as well as units that are
8         generic instantiations.
9
10         * sem.adb: Include dependents and corresponding specs/bodies in the
11         unit walk.
12
13         * gcc-interface/Make-lang.in:
14         sem now depends on s-bitops, because of the packed array of Booleans.
15
16 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
17
18         * gcc-interface/ada-tree.def: Fix formatting nits.
19         (REGION_STMT): Delete.
20         (HANDLER_STMT): Likewise.
21         * gcc-interface/ada-tree.h: Fix formatting nits.
22         (IS_STMT): Delete.
23         (REGION_STMT_BODY): Likewise.
24         (REGION_STMT_HANDLE): Likewise.
25         (REGION_STMT_BLOCK): Likewise.
26         (HANDLER_STMT_ARG): Likewise.
27         (HANDLER_STMT_LIST): Likewise.
28         (HANDLER_STMT_BLOCK): Likewise.
29         * gcc-interface/gigi.h (fp_prec_to_size): Update comment.
30         (fp_size_to_prec): Likewise.
31         (largest_move_alignment): Delete.
32         (gnat_compute_largest_alignment): Likewise.
33         Fix minor nits.
34         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
35         Remove redundant code.
36         <E_Array_Type>: Remove redundant assert.
37         <E_Array_Subtype>: Exit early from index computation in pathological
38         cases.
39         Rewrite conditional assignment.
40         (make_type_from_size): Likewise.
41         * gcc-interface/misc.c (largest_move_alignment): Delete.
42         (gnat_finish_incomplete_decl): Likewise.
43         (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
44         (asm_out_file): Likewise
45         (gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
46         (gnat_dwarf_name): Move around.
47         * gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
48         (gigi): Remove call to gnat_compute_largest_alignment.
49         * utils.c (create_field_decl): Rewrite conditional assignment.
50         Fix minor nits.
51
52 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
53
54         * gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
55         on entry.  Defer common processing for types.  Reorder and clean up.
56         Compute the equivalent GNAT node and the default size for types only.
57         <E_Modular_Integer_Type>: Directly use Esize for the type's precision.
58         <E_Access_Type>: For an unconstrained designated type, do not pretend
59         that a dummy type is always made.
60         <all> Fix nits in comments.
61         (validate_size): Fix formatting nits and comments.
62         (set_rm_size): Likewise.
63         * gcc-interface/utils.c (create_param_decl): Replace bogus argument
64         passed to TARGET_PROMOTE_PROTOTYPES hook.
65
66 2009-04-22  Eric Botcazou  <ebotcazou@adacore.com>
67
68         * fe.h (Get_External_Name): Declare.
69         * gcc-interface/gigi.h (concat_id_with_name): Rename to...
70         (concat_name): ...this.
71         * gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
72         gnu_entity_name and adjust for above renaming.
73         <E_Access_Type>: Use create_concat_name to get the name of the various
74         types associated with unconstrained array types.
75         (make_aligning_type): Adjust for above renaming.
76         (maybe_pad_type): Likewise.
77         (components_to_record): Likewise.  Use get_identifier_with_length for
78         the encoding of the variant.
79         (get_entity_name): Use get_identifier_with_length.
80         (create_concat_name): Likewise.  Use Get_External_Name if no suffix.
81         Do not fiddle with Name_Buffer.
82         (concat_id_with_name): Rename to...
83         (concat_name): ...this.  Use get_identifier_with_length.  Do not fiddle
84         with Name_Buffer.
85         * gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
86         above renaming.
87
88 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
89
90         * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
91         license notices.
92
93 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
94
95         * gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.
96
97 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
98
99         * gcc-interface/ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
100         (TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
101         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>:
102         Remove useless support code for packed array types and assert its
103         uselessness.
104         <E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
105         adjust for TYPE_RM_SIZE change.
106         <all> Fix nits in comments.  Use Original_Array_Type accessor instead
107         of Associated_Node_For_Itype accessor for packed array types.
108         (make_packable_type): Likewise.
109         (maybe_pad_type): Likewise.
110         (set_rm_size): Likewise.  Rework conditional statement.  Adjust for
111         TYPE_RM_SIZE change.
112         (make_type_from_size): Adjust for TYPE_RM_SIZE change.
113         (rm_size): Fix nits in comments.  Rework conditional statements.
114         * gcc-interface/misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE
115         change.
116         * gcc-interface/trans.c (Attribute_to_gnu): Fix nits in comments.
117         * gcc-interface/utils.c (gnat_init_decl_processing): Use more
118         appropriate function to initialize the size_type_node.  Adjust for
119         TYPE_RM_SIZE change.
120
121 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
122
123         * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
124         for imported subprograms.
125
126 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
127
128         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
129         constant objects covered by 13.3(19) volatile.
130
131 2009-04-21  Eric Botcazou  <ebotcazou@adacore.com>
132
133         * gcc-interface/utils.c (create_type_decl): Do not pass declarations
134         of dummy fat pointer types to the debug back-end.
135
136 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
137
138         * gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
139         <E_Signed_Integer_Subtype>: Set the RM size on the integer type
140         before wrapping it up in the record type.  Do not overwrite the
141         Ada size of the record type with the Esize.
142
143 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
144
145         * gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
146         (gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
147         if the conversion is on the LHS of an assignment and a no-op.
148         <all> Do not convert the result to the result type if the Parent
149         node is such a conversion.
150
151 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
152
153         * gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
154         * gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
155         of types with unknown discriminants.
156         (substitute_in_type): Rewrite and restrict to formal substitutions.
157         * gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
158         (update_pointer_to): Update comment.
159
160 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
161
162         * sem_ch8.adb (Use_One_Package): In an instance, if two
163         potentially_use_visible and non-overloadable homonyms are available
164         from  the actuals of distinct formal packages, retain the current one,
165         which was visible in the generic, to prevent spurious visibility
166         errors.
167         (End_Use_Package): Restore use_visibility when needed.
168
169 2009-04-20  Sergey Rybin  <rybin@adacore.com>
170
171         * gnat_ugn.texi, vms_data.ads: Update doc.
172
173 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
174
175         * gcc-interface/Make-lang.in: Update dependencies
176
177         * gcc-interface/Makefile.in: Link run-time against winsock2 lib under
178         Windows.
179
180 2009-04-20  Robert Dewar  <dewar@adacore.com>
181
182         * checks.ads: Fix documentation of range check handling
183
184 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
185
186         * sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
187         a redundant use_type clause.
188
189 2009-04-20  Robert Dewar  <dewar@adacore.com>
190
191         * sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
192         this attribute can be evaluated at compile time.
193         (Eval_Attribute, case Range_Length): Same improvement
194
195         * sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure
196
197 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
198
199         * sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
200         for better handling of null procedures.
201         (Check_Overriding_Indicator): Do not emit a warning on a missing
202         overriding indicator on an operator when the type of which the operator
203         is a primitive is private.
204
205 2009-04-20  Bob Duff  <duff@adacore.com>
206
207         * sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
208         debugging output.
209
210 2009-04-20  Robert Dewar  <dewar@adacore.com>
211
212         * sem_attr.adb: Minor reformatting
213
214         * gnatcmd.adb: Minor reformatting
215
216 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
217
218         * sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
219         overloaded and one interpretation matches the context, label the
220         operand with the type of first formal.
221
222 2009-04-20  Bob Duff  <duff@adacore.com>
223
224         * debug.ads: Minor comment fix.
225
226         * debug.adb: Minor comment fixes.
227
228 2009-04-20  Javier Miranda  <miranda@adacore.com>
229
230         * rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions
231
232         * exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.
233
234         * exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
235         is expanded into a call to Raise_Exception, avoid passing the
236         exception-name'identity in runtimes in which this argument
237         is not used.
238
239 2009-04-20  Jerome Lambourg  <lambourg@adacore.com>
240
241         * impunit.adb: Add i-cil and i-cilobj packages, now needed by the
242         generated bindings for cil.
243
244 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
245
246         * sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
247         discriminants, collect components from the Underlying_Record_View,
248         which will be used in the expansion of the aggregate into assignments.
249
250         * sem_ch3.adb: Do not label derived type with unknown discriminants as
251         having a private declaration.
252
253 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
254
255         * exp_util.adb (Expand_Subtype_From_Expr): use the
256         underlying_record_view when available, to create the proper constrained
257         subtype for an object of a derived type with unknown discriminants.
258
259 2009-04-20  Javier Miranda  <miranda@adacore.com>
260
261         * exp_ch6.adb (Expand_Inlined_Call): Avoid generation of temporaries for
262         formals that have pragma unreferenced.
263
264 2009-04-20  Pascal Obry  <obry@adacore.com>
265
266         * a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
267         Remove all calls to To_Lower_If_Case_Insensitive to preserve
268         the pathname original casing.
269
270 2009-04-20  Robert Dewar  <dewar@adacore.com>
271
272         * g-trasym.adb: Minor reformatting
273
274         * s-os_lib.adb: Minor reformatting
275
276         * sem.adb: Minor reformatting
277         Minor code reorganization
278
279         * sem_ch3.adb: Minor reformatting
280
281         * sem_ch4.adb: Minor reformatting
282
283         * sem_ch8.adb: Minor reformatting
284
285         * sem_type.adb: Minor reformatting
286
287 2009-04-20  Javier Miranda  <miranda@adacore.com>
288
289         * sem_disp.adb (Find_Dispatching_Type): For subprograms internally
290         generated by derivations of tagged types use the aliased subprogram a
291         reference to locate their controlling type.
292
293 2009-04-20  Tristan Gingold  <gingold@adacore.com>
294
295         * g-trasym.adb: Set size of result buffer before calling
296         convert_address.
297
298 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
299
300         * sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
301         to a function returning an array can be interpreted as a call with
302         defaulted parameters whose result is indexed, take into account the
303         types of all the indices of the array result type.
304
305 2009-04-20  Pascal Obry  <obry@adacore.com>
306
307         * a-direct.adb, s-os_lib.adb: Minor reformatting.
308
309 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
310
311         * sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
312         null exclusion qualifiers for object renaming declarations.
313
314 2009-04-20  Nicolas Roche  <roche@adacore.com>
315
316         * sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
317         unsigned long long. So compare local_time and utc_time before computing
318         the difference.
319
320 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
321
322         * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
323         of the Underlying_Record_View before that of the derived type.
324
325         * exp_ch3.adb (Expand_Record_Extension): Do not special-case types
326         with unknown discriminants with regard to the parent subtype.
327
328 2009-04-20  Bob Duff  <duff@adacore.com>
329
330         * sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
331         that are not included. This is necessary if the main unit is a generic
332         instantiation.
333
334         * gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
335         because it doesn't work if -gnatn is used.
336
337 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
338
339         * rtsfind.adb (RTE, RTE_Record_Component): In
340         Configurable_Run_Time_Mode, do not enable front-end inlining.
341
342 2009-04-20  Thomas Quinot  <quinot@adacore.com>
343
344         * g-socthi-vms.adb: Remove now unnecessary WITH clause on
345         System.Address_To_Access_Conversions.
346
347 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
348
349         * sem.adb: Guard against ill-formed subunits.
350
351 2009-04-20  Bob Duff  <duff@adacore.com>
352
353         * output.adb (Flush_Buffer): Do not indent blank lines.
354         (Ignore_Output): New procedure for output suppression.
355
356 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
357
358         * a-calfor.adb (Image): Subtract 0.5 from the sub second component only
359         when it is positive.  This avoids a potential constraint error raised
360         by the conversion to Natural.
361
362 2009-04-20  Gary Dismukes  <dismukes@adacore.com>
363
364         * exp_ch5.adb (Expand_Assign_Array): For the case where the assignment
365         involves a target that has a specified address, don't set Forward_OK
366         and Backward_OK to False if the rhs is an aggregate, since overlap
367         can't occur.
368
369 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
370
371         * sem_ch8.adb (Analyze_Object_Renaming): Reject ambiguous expressions
372         in an object renaming declaration when the expected type is an
373         anonymous access type.
374
375         * sem_type.adb (Disambiguate): Use anonymousness to resolve a potential
376         ambiguity when one interpretation is an anonymous access type and the
377         other is a named access type, and the context itself is anonymous
378
379 2009-04-20  Thomas Quinot  <quinot@adacore.com>
380
381         * einfo.ads: Minor comment rewording
382
383         * sem_aggr.adb: Minor comment rewording
384
385         * sem_ch3.adb, sem_ch6.adb: Minor reformatting
386
387 2009-04-20  Pascal Obry  <obry@adacore.com>
388
389         * adaint.c (__gnat_is_readable_file): Check for file existence
390         when not using ACL (always the case on remote drives).
391
392 2009-04-20  Robert Dewar  <dewar@adacore.com>
393
394         * sinfo.ads: Minor comment fixes
395
396         * exp_disp.adb: Minor reformatting
397
398         * gnat1drv.adb: Minor reformatting
399
400         * output.adb: Minor reformatting
401
402         * s-vxwext-kernel.ads: Minor reformatting
403
404         * sem.ads: Minor reformatting
405
406         * sem.adb: Minor reformatting
407
408         * sem_elim.adb: Minor reformatting
409
410         * uname.ads: Minor reformatting
411
412 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
413
414         * init.c (__gnat_adjust_context_for_raise): On x86{-64}/Linux, add
415         a small dope of 4 words to the adjustment to the stack pointer.
416
417 2009-04-20  Thomas Quinot  <quinot@adacore.com>
418
419         * xoscons.adb: generate C header s-oscons.h in
420         addition to s-oscons.ads.
421
422         * socket.c: On VMS, use s-oscons.h.
423
424         * sem_ch3.adb: Minor reformatting
425
426         * exp_ch9.adb: Minor reformatting
427
428 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
429
430         * gcc-interface/trans.c (check_for_eliminated_entity): Remove.
431         (Attribute_to_gnu): Do not call check_for_eliminated_entity.
432         (call_to_gnu): Likewise.
433
434 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
435
436         * gcc-interface/trans.c (gigi): Declare the name of the compilation
437         unit as the first global name at the very beginning.
438
439 2009-04-20  Thomas Quinot  <quinot@adacore.com>
440
441         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
442         s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
443         g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
444         since HP-UX supports neither inet_aton nor inet_pton (altough the
445         latter is part of the Single UNIX Specification!).
446         So reorganize code, and share C implementation based on inet_addr(3)
447         with VMS (instead of having a VMS specific Ada implementation in
448         g-socthi-vms.adb).
449
450 2009-04-20  Gary Dismukes  <dismukes@adacore.com>
451
452         * osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
453         to return the object file name saved by Set_Object_Output_File_Name.
454
455 2009-04-20  Emmanuel Briot  <briot@adacore.com>
456
457         * g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
458         for the standard command line, when argc has been modified since the
459         start of the application.
460
461 2009-04-20  Thomas Quinot  <quinot@adacore.com>
462
463         * socket.c (__gnat_inet_pton, Windows case): Adjust return value.
464         WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.
465
466 2009-04-20  Bob Duff  <duff@adacore.com>
467
468         * gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
469         pragma Debug.
470
471 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
472
473         * exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
474         subprogram as Eliminated when source operation is.
475         (Expand_N_Protected_Type_Declaration): Generate protected and
476         unprotected specs for the internal operations, even if the source
477         operation is eliminated.
478
479 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
480
481         * exp_ch3.adb (Make_Predefined_Primitive_Specs,
482         Predefined_Primitive_Bodies): Do not create the declarations and bodies
483         of the primitive subprograms associated with dispatching select
484         statements when the runtime is in configurable mode.
485
486 2009-04-20  Ed Falis  <falis@adacore.com>
487
488         * s-vxwext-kernel.ads (tickGet): Use tick64Get.
489
490 2009-04-20  Thomas Quinot  <quinot@adacore.com>
491
492         * s-oscons-tmplt.c: Add support for generating a dummy version of
493         s-oscons.ads providing all possible constants.
494
495         * g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.
496
497         * socket.c (__gnat_inet_pton): On Windows make sure we always use the
498         ANSI version (not the UNICODE version) of WSAStringToAddress.
499
500 2009-04-20  Pascal Obry  <obry@adacore.com>
501
502         * adaint.c (__gnat_set_OWNER_ACL): properly free memory
503         allocated for the security descriptor and make sure all
504         handles are closed before leaving this procedure.
505
506 2009-04-20  Javier Miranda  <miranda@adacore.com>
507
508         * einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
509         (Set_Is_Underlying_Record_View): New subprogram
510
511         * sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
512         private types with unknown discriminants use the underlying record view
513         if available.
514
515         * sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
516         underlying record view in the full view of private types whose parent
517         has unknown discriminants.
518         (Build_Derived_Record_Type): Avoid generating the class-wide entity
519         associated with an underlying record view.
520         (Derived_Type_Declaration): Avoid deriving parent primitives in
521         underlying record views.
522
523         * sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
524         records with unknown discriminants.
525
526         * sem_type.adb (Covers): Handle underlying record views.
527         (Is_Ancestor): Add support for underlying record views.
528
529         * exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
530         dispatching call if the type of the target object is tagged and has
531         unknown discriminants.
532
533         * exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
534         unknown discriminants.
535
536         * exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
537         tables for internally built underlying record views.
538
539         * sprint.adb (sprint_node_actual): Improve output of aggregates with an
540         empty list of component associations.
541
542 2009-04-20  Thomas Quinot  <quinot@adacore.com>
543
544         * sem_ch10.adb: Minor reformatting
545
546         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
547         g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
548         (GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
549         standard inet_pton API (and emulate it on platforms that do not
550         support it).
551         (GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
552         DECC$INET_ADDR, imported in Ada.
553         (GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
554         implementation provided by GNAT runtime.
555         (__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
556         Windows.
557
558 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
559
560         * gnat_ugn.texi: Add documentation for -fno-ivopts.
561
562 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
563
564         * sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
565         with_clause if it is the main unit.
566
567 2009-04-20  Thomas Quinot  <quinot@adacore.com>
568
569         * sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
570         (no behaviour change): Use Append instead of Increment_Last followed
571         by assignment.
572
573 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
574
575         * exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
576         declarations of all primitives associated with dispatching asynchronous,
577         conditional and timed selects when dispaching calls are forbidden and
578         select statements are not allowed (such as in Ravenscar).
579         (Predefined_Primitive_Bodies): Ditto for bodies.
580
581         * exp_disp.ad (Make_DT): Do not create and populate the
582         Select_Specific_Data of the dispatch table when dispatching calls are
583         forbidden and select statements are not allowed (such as in Ravenscar).
584
585 2009-04-20  Robert Dewar  <dewar@adacore.com>
586
587         * a-tifiio.adb: Minor reformatting
588
589 2009-04-20  Thomas Quinot  <quinot@adacore.com>
590
591         * g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
592         other C library functions, report *failure* with a zero status, and
593         success with a non-zero status.
594
595 2009-04-20  Bob Duff  <duff@adacore.com>
596
597         * sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
598         (Semantics): After analyzing each unit, Append it to the
599         Comp_Unit_List, if appropriate.
600
601         * gnat1drv.adb (Check_Library_Items): New procedure for debugging
602         purposes.
603         (Gnat1drv): Correct comment regarding Back_End_Mode.
604
605 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
606
607         * gnat_ugn.texi: Add documentation for -fno-inline-small-functions.
608
609 2009-04-20  Thomas Quinot  <quinot@adacore.com>
610
611         * s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
612         output.adb, output.ads, s-taprop-hpux-dce.adb,
613         s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
614         reformatting.
615
616 2009-04-20  Thomas Quinot  <quinot@adacore.com>
617
618         * g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
619         g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
620         (GNAT.Sockets.Thin.C_Inet_Addr): Remove.
621         (GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
622         except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
623         (GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).
624
625         * debug.adb: Fix typo
626
627         * gnat_rm.texi: Minor doc fix.
628
629         * sem_ch7.adb, freeze.adb: Minor reformatting
630
631 2009-04-20  Thomas Quinot  <quinot@adacore.com>
632
633         * g-socket.ads: Add new constants:
634           Loopback_Inet_Addr
635           Unspecified_Group_Inet_Addr
636           All_Hosts_Group_Inet_Addr
637           All_Routers_Group_Inet_Addr
638
639         * s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
640         ERANGE (Result too large).
641         (GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
642         propagation of errno to caller.
643
644 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
645
646         * a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
647         to 24. Increment Leap_Seconds_Count and add an entry to aggregate
648         Leap_Second_Times.
649
650 2009-04-20  Gary Dismukes  <dismukes@adacore.com>
651
652         * sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
653         checking for references to eliminated subprograms that should be
654         flagged.
655         (Eliminate_Error_Message): Update comment to say "references" rather
656         than "calls" (since attribute cases are handled here as well).
657
658         * sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
659         checking for references to eliminated subprograms that should be
660         flagged.  Add with and use of Sem and Sem_Util.
661
662         * sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
663         Add with and use of Sem_Elim.
664
665         * sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
666         applied to eliminated subprograms.
667         (Analyze_Attribute): Reject 'Address and 'Code_Address applied to
668         eliminated subprograms.
669         Add with and use of Sem_Elim.
670
671         * sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
672         to eliminated subprograms, now handled during Resolve_Call.
673         Remove with and use of Sem_Elim.
674
675         * exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
676         testing Is_Eliminated, for proper handling of primitive derived from
677         eliminated subprograms.
678
679 2009-04-20  Vincent Celier  <celier@adacore.com>
680
681         * mlib-prj.adb (Build_Library): Use the shared library linker, if one
682         has been declared (Library_GCC or Linker'Driver), for the driver name.
683
684         * prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
685         Linker'Driver is, use Linker'Driver as the shared library linker.
686         (Process_Project_Level_Simple_Attributes): Issue a warning if attribute
687         Library_GCC is declared.
688         (Check_Library_Attributes): Set up the shared linker driver: either
689         Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
690         declared.
691
692 2009-04-20  Thomas Quinot  <quinot@adacore.com>
693
694         * g-socket.ads (Send_Socket): Fix misleading comment.
695
696 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
697
698         * switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
699         ASIS mode.
700
701 2009-04-20  Geert Bosch  <bosch@adacore.com>
702
703         * a-tifiio.adb (Put): Avoid generating too many digits for certain
704         fixed types with smalls that are neither integer or the reciprocal
705         of an integer.
706
707 2009-04-20  Bob Duff  <duff@adacore.com>
708
709         * uname.ads: Minor comment fix.
710
711         * types.ads: Minor comment fix.
712
713 2009-04-20  Pascal Obry  <obry@adacore.com>
714
715         * adaint.c (__gnat_get_libraries_from_registry): Fix code to
716         avoid warning. At the same time fix a memory leak.
717
718         * osint.adb (Get_Libraries_From_Registry): Properly free memory
719         returned by the above routine.
720
721 2009-04-20  Robert Dewar  <dewar@adacore.com>
722
723         * s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
724         s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
725         s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
726         s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.
727
728         * exp_ch4.adb (Expand_Concatenate): Minor code reorganization
729
730 2009-04-20  Pascal Obry  <obry@adacore.com>
731
732         * initialize.c (__gnat_initialize): Add braces to kill warning.
733
734         * adaint.c: Minor reformatting, remove trailing spaces.
735
736 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
737
738         * gcc-interface/Make-lang.in: Update dependencies.
739
740 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
741
742         * adaint.h (__gnat_lwp_self): Declare on Linux.
743
744         * adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.
745
746 2009-04-20  Robert Dewar  <dewar@adacore.com>
747
748         * exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
749         front-end part of -fpreserve-control-flow switch.
750
751 2009-04-20  Bob Duff  <duff@adacore.com>
752
753         * rtsfind.adb: Minor comment fix
754
755 2009-04-20  Robert Dewar  <dewar@adacore.com>
756
757         * exp_aggr.adb: Minor reformatting
758         Minor code reorganization (use Nkind_In)
759
760         * g-socket.adb: Minor reformatting
761
762         * g-socket.ads: Minor comment fix
763
764         * s-auxdec.ads: Minor comment and organization update.
765
766         * s-auxdec-vms_64.ads: Minor comment and organization update.
767
768         * sem_ch10.adb: Minor addition of ??? comment
769
770         * sem_disp.adb: Minor reformatting
771
772 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
773
774         * inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
775         list a caller of an inlined subprogram, if the caller itself is not
776         called.
777
778 2009-04-20  Pascal Obry  <obry@adacore.com>
779
780         * adaint.c: Disable use of ACL on network drives.
781
782 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
783
784         * gnat_ugn.texi: Add examples.
785
786 2009-04-20  Thomas Quinot  <quinot@adacore.com>
787
788         * g-socket.ads (Abort_Selector): Clarify documentation.
789
790 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
791
792         * opt.ads (Inspector_Mode): Update documentation of this flag.
793
794 2009-04-20  Thomas Quinot  <quinot@adacore.com>
795
796         * g-socket.ads: Minor reformatting
797
798         * socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
799         consider S_resolvLib error codes since we only use the hostLib wrappers.
800
801 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
802
803         * sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
804         of the Underlying_Record_View after that of the derived type.
805
806 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
807
808         * switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
809         in inspector mode.
810
811 2009-04-20  Javier Miranda  <miranda@adacore.com>
812
813         * sem_ch6.adb (New_Overloaded_Entity): Minor reformating.
814
815         * sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
816         documentation.
817
818         * exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.
819
820         * sem_disp.adb
821         (Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
822         in internally built overriding subprograms.
823
824 2009-04-20  Doug Rupp  <rupp@adacore.com>
825
826         * s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.
827
828         * s-auxdec.ads: Likewise
829
830 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
831
832         * sem_ch3.adb (Find_Type_Name): Reject the completion of a private
833         type by an interface.
834
835         * exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
836         minimze difference in expanded tree when compiled as spec of the main
837         unit, or as a spec in the context of another unit.
838
839 2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>
840
841         * a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
842         (localtime_tzoff): This routine no longer accepts an actual of type
843         tm_Pointer.
844         (UTC_Time_Offset): Remove local variable Secs_TM.
845
846         * sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
847         actual of type struct tm*. Add local variable of type struct tm for all
848         targets that provide localtime_r and need to invoke it.
849
850 2009-04-20  Thomas Quinot  <quinot@adacore.com>
851
852         * s-oscons-tmplt.c, g-socket.adb, g-socket.ads
853         (GNAT.Sockets.Resolve_Error): Add case of EPIPE
854         Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK
855
856 2009-04-20  Robert Dewar  <dewar@adacore.com>
857
858         * sem_ch3.adb: Minor reformatting
859
860         * lib-load.adb: Minor reformatting
861
862         * sem_ch4.adb: Minor reformatting
863
864 2009-04-20  Robert Dewar  <dewar@adacore.com>
865
866         * namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
867         (equal values => False).
868
869 2009-04-20  Ed Schonberg  <schonberg@adacore.com>
870
871         * exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
872         to null procedures can be inlined unconditionally.
873
874 2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>
875
876         * gcc-interface/trans.c (call_to_gnu): When creating the copy for a
877         non-addressable parameter passed by reference, do not convert the
878         actual if its type is already the nominal type, unless it is of
879         self-referential size.
880
881 2009-04-20  Arnaud Charlet  <charlet@adacore.com>
882
883         * gnat_ugn.texi: Fix typos.
884
885 2009-04-20  Robert Dewar  <dewar@adacore.com>
886
887         * debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
888         Validate_Unchecked_Warnings to suppress warnings about size or
889         alignment or extra bits if either type involved has pragma Warnings
890         (Off) set for the type entity.
891
892 2009-04-19  Eric Botcazou  <ebotcazou@adacore.com>
893
894         * gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
895         a builtin type and give it a name.
896
897 2009-04-17  Diego Novillo  <dnovillo@google.com>
898
899         * gcc-interface/misc.c (gnat_expand_expr): Remove.
900         (LANG_HOOKS_EXPAND_EXPR): Remove.
901
902 2009-04-17  Robert Dewar  <dewar@adacore.com>
903
904         * sem_ch3.adb: Minor reformatting
905
906 2009-04-17  Pascal Obry  <obry@adacore.com>
907
908         * adaint.c: Add __gnat_use_acl global variable to control use of ACL.
909
910 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
911
912         * sem_ch3.adb (Build_Derived_Enumeration_Type): Diagnose properly
913         illegal constraints on type derived from formal discrete types.
914
915 2009-04-17  Thomas Quinot  <quinot@adacore.com>
916
917         PR ada/35953
918
919         * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
920         g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
921         g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb,
922         g-socket.ads (GNAT.Sockets.Thin.C_Send,
923         GNAT.Sockets.Thin.Syscall_Send): Remove unused subprograms.
924         Replace calls to send(2) with equivalent sendto(2) calls.
925         (GNAT.Sockets.Send_Socket): Factor common code in inlined subprogram.
926         (GNAT.Sockets.Write): Account for the case of hyper-empty arrays, do not
927         report an error in that case. Factor code common to the two versions
928         (datagram and stream) in common routine Stream_Write.
929
930 2009-04-17  Robert Dewar  <dewar@adacore.com>
931
932         * exp_disp.adb: Minor reformatting
933         Minor code reorganization (use Nkind_In)
934
935         * prepcomp.adb: Minor reformatting
936
937         * sem_ch3.adb: Minor reformatting
938
939         * sem_res.adb: Minor comment addition
940
941         * exp_ch5.adb (Expand_Assign_Array): Use Has_Address_Clause to test
942         for address clause
943
944         * lib-xref.adb (Generate_Reference): Exclude recursive calls from
945         setting Is_Referenced
946
947         * types.ads: Minor reformatting
948
949 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
950
951         * gnat_ugn.texi: Initial documentation on binding generator.
952
953 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
954
955         * einfo.ads, einfo.adb: New attribute Underlying_Record_View, to handle
956         type extensions whose parent is a type with unknown discriminants.
957
958         * exp_aggr.adb (Expand_Record_Aggregate): If the type of an extension
959         aggregate has unknown discriminants, use the Underlying_Record_View to
960         obtain the discriminants of the ancestor part.
961
962         * exp_disp.adb (Build_Dispatch_Tables): Types that are
963         Underlying_Record_Views share the dispatching information of the
964         original record extension.
965
966         * exp_ch3.adb (Expand_Record_Extension): If the type inherits unknown
967         discriminants, propagate dispach table information to the
968         Underlying_Record_View.
969
970         * sem_ch3.adb (Build_Derived_Private_Type): If parent type has unknown
971         discriminants and declaration is not a completion, generate
972         Underlying_Record_View to provide proper discriminant information to
973         the front-end and to gigi.
974
975 2009-04-17  Robert Dewar  <dewar@adacore.com>
976
977         * s-conca5.adb, g-sercom.adb, s-conca5.ads, s-conca7.adb, exp_imgv.adb,
978         s-conca7.ads, s-crc32.adb, s-crc32.ads, s-conca9.adb, s-conca9.ads,
979         s-addope.adb, i-cstrin.ads, s-addope.ads, s-carun8.adb, s-carun8.ads,
980         g-htable.ads, g-hesora.adb, g-hesora.ads, s-htable.adb, s-htable.ads,
981         s-conca2.adb, s-conca2.ads, a-except.adb, s-conca4.adb, a-except.ads,
982         s-conca4.ads, s-except.adb, s-except.ads, s-conca6.adb, s-conca6.ads,
983         g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads, s-conca8.adb,
984         s-conca8.ads, g-byorma.adb, g-byorma.ads, s-memory.adb, s-memory.ads,
985         g-speche.adb, g-speche.ads, g-stsifd-sockets.adb, exp_dist.adb,
986         s-imgenu.adb, s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-exctab.adb,
987         s-exctab.ads, s-imenne.adb, s-imenne.ads, s-casuti.adb, osint.adb,
988         s-assert.adb, s-casuti.ads, s-assert.ads, s-os_lib.adb, s-conca3.adb,
989         s-conca3.ads: Remove unneeded pragma Warnings
990
991 2009-04-17  Robert Dewar  <dewar@adacore.com>
992
993         * g-moreex.adb: Add comments.
994
995         * s-auxdec.ads: Add ??? comment for uncommented pragma Warnings (Off)
996
997         * s-auxdec-vms_64.ads: Add ??? comment for uncommented pragma
998         Warnings (Off)
999
1000         * prepcomp.adb: Add ??? comment
1001
1002         * a-tasatt.adb: Minor reformatting
1003
1004         * g-trasym-vms-alpha.adb: Add ??? comment
1005
1006         * g-trasym-vms-ia64.adb: Add ??? comment
1007
1008         * xoscons.adb: Minor reformatting
1009
1010         * s-tassta.adb: Minor reformatting
1011
1012         * s-scaval.adb: Add ??? comment
1013
1014         * stand.ads: Minor code clean up (remove junk with of Namet)
1015
1016         * s-strcom.adb, s-strcom.ads, s-string.adb, s-string.ads, s-sopco3.adb,
1017         s-sopco3.ads, s-strops.adb, s-strops.ads, s-sopco5.adb, s-sopco5.ads,
1018         s-wchcnv.adb, s-wchcnv.ads, s-ststop.adb, s-ststop.ads, s-soflin.adb,
1019         s-soflin.ads, s-traceb.adb, s-traceb.ads, s-traent.adb, s-traent.ads,
1020         s-secsta.adb, s-secsta.ads, s-utf_32.adb, s-utf_32.ads, s-wchcon.adb,
1021         s-wchjis.adb, s-wchcon.ads, s-wchjis.ads, s-sopco4.adb, s-sopco4.ads,
1022         s-stache.adb, s-stache.ads, s-stoele.adb, s-stoele.ads, s-stalib.adb,
1023         s-stalib.ads, s-os_lib.ads, s-purexc.ads: Remove no longer needed
1024         Warnings off pragmas.
1025
1026 2009-04-17  Pascal Obry  <obry@adacore.com>
1027
1028         * initialize.c: Fix test for reallocating the arguments array.
1029
1030 2009-04-17  Geert Bosch  <bosch@adacore.com>
1031
1032         * exp_fixd.adb (Expand_Convert_Float_To_Fixed): Have float to fixed
1033         conversion truncate only for decimal fixed point types.
1034
1035 2009-04-17  Jerome Lambourg  <lambourg@adacore.com>
1036
1037         * g-comlin.adb (Initialize_Scan_Option): Make sure the sections are
1038         reinitialized.
1039
1040 2009-04-17  Robert Dewar  <dewar@adacore.com>
1041
1042         * exp_ch5.adb (Expand_Assign_Array): Do not set Forwards_OK and
1043         Backwards_OK if either operand has an address clause.
1044
1045 2009-04-17  Pascal Obry  <obry@adacore.com>
1046
1047         * initialize.c: Code clean up, use realloc.
1048
1049 2009-04-17  Pascal Obry  <obry@adacore.com>
1050
1051         * initialize.c: Do not get Unicode command line if Unicode support not
1052         activated.
1053         Add support for wildcard expansion for Unicode parameters on Win32.
1054
1055         * mingw32.h: Add missing macros when Unicode support not activated.
1056
1057 2009-04-17  Javier Miranda  <miranda@adacore.com>
1058
1059         * sem_ch6.adb (Check_Anonymous_Return): Add missing checks to
1060         avoid generating code that references the Current_Master
1061         when compiling without tasks.
1062
1063 2009-04-17  Vincent Celier  <celier@adacore.com>
1064
1065         * prj-attr.adb: New project level attribute Target
1066         
1067         * prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
1068         attribute Target
1069         
1070         * prj.ads (Project_Configuration): New component Target
1071
1072 2009-04-17  Thomas Quinot  <quinot@adacore.com>
1073
1074         * exp_ch7.adb (Expand_Ctrl_Function_Call): Remove incorrect special
1075         case for the case of an aggregate component, the attach call for the
1076         result is actually needed.
1077
1078         * exp_aggr.adb (Backend_Processing_Possible): Backend processing for
1079         an array aggregate must be disabled if the component type requires
1080         controlled actions.
1081
1082         * exp_ch3.adb: Minor reformatting
1083
1084 2009-04-17  Bob Duff  <duff@adacore.com>
1085
1086         * output.ads (Indent,Outdent): New procedures for indenting the output.
1087         (Write_Char): Correct comment -- LF _is_ allowed.
1088
1089         * output.adb (Indent,Outdent): New procedures for indenting the output.
1090         Keep track of the indentation level, and make sure it doesn't get too
1091         high.
1092         (Flush_Buffer): Insert spaces at the beginning of each line, if
1093         indentation level is nonzero.
1094         (Save_Output_Buffer,Restore_Output_Buffer): Save and restore the current
1095         indentation level.
1096         (Set_Standard_Error,Set_Standard_Output): Remove superfluous
1097         "Next_Col := 1;".  Flush_Buffer does that.
1098
1099         * sem_ch6.adb, sem_ch7.adb (Debug_Flag_C): Reorganize the output
1100         controlled by the -gnatdc switch. It now occurs on entry/exit to the
1101         relevant analysis routines, and calls Indent/Outdent to make the
1102         indentation reflect the nesting level.  Add "helper" routines, since
1103         otherwise lots of "return;" statements would skip the debugging output.
1104
1105 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
1106
1107         * s-taprop-tru64.adb, s-taprop-vms.adb, s-taprop-linux.adb,
1108         s-taprop-solaris.adb, s-taprop-irix.adb, s-taprop-hpux-dce.adb,
1109         s-taprop-posix.adb (Suspend_Until_True): Protect against early wakeup.
1110
1111 2009-04-17  Thomas Quinot  <quinot@adacore.com>
1112
1113         * exp_aggr.adb: Minor code reorganization, no behaviour change.
1114
1115 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1116
1117         * sem_ch8.adb (Use_One_Type): Handle properly a redundant use type
1118         clause in a unit that is a package body or a subunit, when the previous
1119         clause appears in a spec or a parent.
1120
1121 2009-04-17  Thomas Quinot  <quinot@adacore.com>
1122
1123         * sinfo.ads, exp_aggr.adb, exp_aggr.ads: Minor reformatting
1124
1125         * exp_ch7.adb: Minor reformatting
1126
1127 2009-04-17  Bob Duff  <duff@adacore.com>
1128
1129         * exp_ch4.adb (Expand_Allocator_Expression): In an initialized
1130         allocator, check that the expression of the qualified expression obeys
1131         the constraints of the subtype of the qualified expression.
1132
1133 2009-04-17  Thomas Quinot  <quinot@adacore.com>
1134
1135         * sprint.adb (Write_Itype): Add handling of enumeration subtypes.
1136
1137 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1138
1139         * exp_ch4.adb (Expand_Allocator_Expression): Apply constraint check to
1140         aggregate, using context imposed by subtype mark in allocator.
1141
1142 2009-04-17  Pascal Obry  <obry@adacore.com>
1143
1144         * gnat_rm.texi: Document GNAT_CODE_PAGE environment variable
1145
1146 2009-04-17  Nicolas Roche  <roche@adacore.com>
1147
1148         * initialize.c (__gnat_initialize): remove MAX_PATH limitation on each
1149         argument length.
1150
1151 2009-04-17  Gary Dismukes  <dismukes@adacore.com>
1152
1153         * sem_elim.adb (Eliminate_Error_Msg): Minor change to error message to
1154         cover both calls and attribute references ("call" => "reference").
1155
1156 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1157
1158         * sem_ch3.adb (Analyze_Subtype_Declaration): A subtype of an access
1159         type for which Storage_Size is set to 0 is legal in a pure unit.
1160
1161 2009-04-17  Thomas Quinot  <quinot@adacore.com>
1162
1163         * exp_ch7.adb: Minor reformatting
1164
1165 2009-04-17  Robert Dewar  <dewar@adacore.com>
1166
1167         * restrict.adb (Check_Restriction_No_Dependence): Don't check
1168         restriction if outside main extended source unit.
1169
1170         * sem_ch10.adb (Analyze_With_Clause): Check No_Dependence restriction
1171         for parents of child units as well as the child unit itself.
1172
1173 2009-04-17  Bob Duff  <duff@adacore.com>
1174
1175         * checks.ads: Minor comment fix
1176
1177         * exp_aggr.ads: Minor comment fix
1178
1179 2009-04-17  Nicolas Roche  <roche@adacore.com>
1180
1181         * adaint.c: Improve cross compiler detection and handling.
1182
1183 2009-04-17  Eric Botcazou  <ebotcazou@adacore.com>
1184
1185         * exp_ch4.adb (Expand_Concatenation): Do not use calls at -Os.
1186
1187 2009-04-17  Pascal Obry  <obry@adacore.com>
1188
1189         * mingw32.h: Add S2WSC and WS2SC macros to convert to/from
1190         CurrentCodePage.
1191
1192         * adaint.h: Encoding_Unspecified is now defined. Corresponds to the
1193         value when no encoding form paramter is set on Text_IO services.
1194
1195         * adaint.c: CurrentCodePage new variable on Windows.
1196         Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
1197         ones.
1198
1199         * mkdir.c: Use new macros S2WSC and WS2SC instead of the UTF-8 oriented
1200         ones.
1201
1202         * initialize.c: Initialize CurrentCodePage depending on GNAT_CODE_PAGE
1203         environment variable value. Default is UTF-8.
1204
1205         * s-crtl.ads: Filename_Encoding add Unspecified in the enumeration type.
1206         fopen and freopen encoding parameter is now set to Unspecified.
1207         The default value is in this case UTF-8 (as it was before) but
1208         use the new macros that convert to/from the code page set
1209         at runtime (CurrentCodePage).
1210
1211         * s-fileio.adb: When no encoding specified use Unspecified value.
1212
1213 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1214
1215         * atree.adb, atree.ads: Remove dead code.
1216
1217 2009-04-17  Arnaud Charlet  <charlet@adacore.com>
1218
1219         * gcc-interface/Make-lang.in: Update dependencies.
1220
1221 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1222
1223         * sem_ch3.adb (Access_Subprogram_Definition): Additional checks on
1224         illegal uses of incomplete types in formal parts and return types.
1225
1226         * sem_ch6.adb (Process_Formals): Taft-amendment types are legal in
1227         access to subprograms.
1228
1229         * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to use
1230         Taft-amendment types as the return type of an access_to_function type.
1231
1232         * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
1233         type for access_to_subprograms. The check is performed on package exit.
1234
1235 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1236
1237         * atree.ads, atree.adb: Move New_Copy_Tree.to sem_util.
1238
1239         * nlists.ads, nlists.adb: Move New_Copy_List to sem_util.
1240         
1241         * lib-load.adb: Use Copy_Separate_Tree rather than New_Copy_Tree
1242
1243         * sem_util.ads, sem_util.adb: New_Copy_Tree and New_Copy_List belong in
1244         semantic units, because the handling of itypes in the copied tree
1245         requires semantic information that does not belong in atree.
1246
1247 2009-04-17  Robert Dewar  <dewar@adacore.com>
1248
1249         * par-ch6.adb: Minor reformatting
1250
1251         * prj.adb: Minor reformatting
1252
1253 2009-04-17  Gary Dismukes  <dismukes@adacore.com>
1254
1255         * par-ch6.adb (P_Subprogram): Overriding indicators should be allowed
1256         on protected subprogram bodies, so exclude the case where Pf_Flags is
1257         Pf_Decl_Pbod from the error check.
1258
1259         * par-ch9.adb (P_Protected_Operation_Items): Permit overriding
1260         indicators on subprograms in protected bodies, and proceed with parsing
1261         the subprogram.
1262
1263         * sem_ch6.adb (Verify_Overriding_Indicator): Exclude protected
1264         subprograms from the check for primitiveness on subprograms with
1265         overriding indicators.
1266         (Check_Overriding_Indicator): Include protected subprograms in the
1267         style check for missing overriding indicators.
1268
1269 2009-04-17  Tristan Gingold  <gingold@adacore.com>
1270
1271         * init.c: Fix stack checking for x86 Darwin.
1272
1273 2009-04-17  Vincent Celier  <celier@adacore.com>
1274
1275         * prj-attr.adb: New project level attribute Object_File_Suffix
1276         (<language>).
1277         
1278         * prj-nmsc.adb (Add_Source): Use the object file suffix to get the
1279         object file name
1280         (Process_Compiler): Process attribute Object_File_Suffix
1281
1282         * prj.adb (Object_Name): Use suffix Object_File_Suffix instead of
1283         platform suffix, when specified.
1284
1285         * prj.ads (Language_Config): New component Object_File_Suffix,
1286         defaulted to No_Name.
1287         (Object_Name): New parameter Object_File_Suffix, defaulted to No_Name
1288
1289         * snames.ads-tmpl: New standard name Object_File_Suffix
1290
1291 2009-04-17  Robert Dewar  <dewar@adacore.com>
1292
1293         * gnat_rm.texi: Add documentation about No_Streams restriction
1294
1295         * sem_attr.adb (Check_Stream_Attribute): Exclude implicit stream
1296         attributes when checking No_Streams restriction.
1297
1298 2009-04-17  Thomas Quinot  <quinot@adacore.com>
1299
1300         * rtsfind.ads (RE_Request_Destroy): New PolyORB s-parint entity.
1301
1302         * exp_dist.adb (PolyORB_Support.Build_General_Calling_Stubs): Add
1303         missing calls to RE_Request_Destroy to deallocate request objects after
1304         use.
1305
1306 2009-04-17  Nicolas Setton  <setton@adacore.com>
1307
1308         * link.c: Fix support for passing a response file under Darwin.
1309
1310 2009-04-17  Emmanuel Briot  <briot@adacore.com>
1311
1312         * prj.adb (Free): new subprogram.
1313
1314 2009-04-17  Ed Schonberg  <schonberg@adacore.com>
1315
1316         * sem_ch3.adb: additional initialization on incomplete subtypes.
1317         
1318         * sem_ch6.adb (Process_Formals): if the subprogram is in the private
1319         part and one of the formals is an incomplete tagged type, attach to
1320         list of private dependends of the type for later validation.
1321
1322         * sem_ch7.adb (Uninstall_Declarations): diagnose attempts to declare
1323         primitive operations of a Taft-amendmment type.
1324
1325         * freeze.adb (Freeze_Entity): Remove tests on formals of an incomplete
1326         type. The check is performed on package exit, possibly after the
1327         subprogram is frozen.
1328
1329 2009-04-17  Vincent Celier  <celier@adacore.com>
1330
1331         * prj-nmsc.adb (Get_Directories): Get the object and exec directory
1332         before looking for source directories, but make sure that there are nil
1333         if they are not explicitely declared and there is explicitely no
1334         sources in the project.
1335
1336 2009-04-17  Pascal Obry  <obry@adacore.com>
1337
1338         * initialize.c: Set gnat_argv with UTF-8 encoded strings on Windows.
1339
1340         * init.c: Fix minor typo and style fix.
1341
1342 2009-04-17  Robert Dewar  <dewar@adacore.com>
1343
1344         * a-except.adb, a-except-2005.adb: Add PE_Address_Of_Intrinsic
1345
1346         * sem_attr.adb (Analyze_Attribute, case Address): Use
1347         PE_Address_Of_Intrinsic.
1348
1349         * types.ads: Add PE_Address_Of_Intrinsic
1350
1351         * types.h: Add PE_Address_Of_Intrinsic
1352
1353 2009-04-17  Nicolas Setton  <setton@adacore.com>
1354
1355         * gcc-interface/Makefile.in: Under darwin, build shared libraries
1356         with install_name starting with "@rpath/".
1357
1358 2009-04-17  Nicolas Setton  <setton@adacore.com>
1359
1360         * link.c: Add darwin section
1361
1362 2009-04-16  Robert Dewar  <dewar@adacore.com>
1363
1364         * g-pehage.adb: Minor reformatting
1365
1366         * sem_ch12.adb: Minor reformatting
1367
1368         * exp_dist.adb: Minor reformatting
1369
1370         * bindgen.adb: Minor style fixes.
1371
1372 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1373
1374         * sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
1375         indexed components to the case where the prefix is a static string
1376         literal.
1377
1378 2009-04-16  Javier Miranda  <miranda@adacore.com>
1379
1380         * exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
1381         objects avoid any further expansion of the expression initializing the
1382         object.
1383
1384 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1385
1386         * sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
1387         that hides an outer homograph, make that homograph invisible when
1388         analyzing the actuals, to to prevent illegal direct visibility on it.
1389
1390 2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
1391
1392         * g-pehage.adb (Initialize): Fix off-by-one error.
1393
1394 2009-04-16  Tristan Gingold  <gingold@adacore.com>
1395
1396         * init.c: Detect real stack overflow on Darwin.
1397
1398         * system-darwin-x86.ads: Use stack probing on darwin x86.
1399
1400 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1401
1402         * sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
1403         take the address of an intrinsic subprogram.
1404
1405 2009-04-16  Arnaud Charlet  <charlet@adacore.com>
1406
1407         * gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
1408         for the targets where GNAT.Traceback.Symbolic is not supported.
1409
1410 2009-04-16  Vincent Celier  <celier@adacore.com>
1411
1412         * g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
1413
1414         * g-trasym.ads: Update comments.
1415
1416 2009-04-16  Vasiliy Fofanov  <fofanov@adacore.com>
1417
1418         * tracebak.c (STOP_FRAME): Verify validity of the current address
1419         before dereferencing.
1420
1421 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1422
1423         * sprint.adb (Write_Itype): If the itype is an array subtype, preserve
1424         the original location of the index expressions and the index subtypes,
1425         to prevent spurious out-of-scope references in gigi.
1426
1427 2009-04-16  Tristan Gingold  <gingold@adacore.com>
1428
1429         * init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
1430         Add support for stack checking on darwin.
1431
1432 2009-04-16  Vincent Celier  <celier@adacore.com>
1433
1434         * prj-attr.adb: New attribute Runtime_Source_Dir
1435
1436         * prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
1437         attribute Runtime_Source_Dir.
1438         (Check_Naming_Schemes): Give default values to out parameters to avoid
1439         invalid data.
1440
1441         * prj.ads (Language_Config): New component Runtime_Source_Dir
1442
1443         * snames.ads-tmpl: New standard name Runtime_Source_Dir
1444
1445 2009-04-16  Pascal Obry  <obry@adacore.com>
1446
1447         * adaint.h, adaint.c (__gnat_rmdir): New routine.
1448         Simple wrapper routines used to convert to proper encoding on
1449         Windows.
1450
1451         * s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
1452
1453         * g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
1454         twice.
1455
1456 2009-04-16  Pascal Obry  <obry@adacore.com>
1457
1458         * s-crtl.ads, s-os_lib.adb: Minor code clean-up.
1459
1460 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1461
1462         * snames.ads-tmpl (Name_Defined): New predefined name for use by the
1463         integrated preprocessor.
1464
1465         * prep.ads, prep.adb (Setup_Hooks): New subprogram.
1466         (Initialize): Split into two subprograms, Initialize (to be called
1467         prior to compiler command line processing) and Setup_Hooks (to be called
1468         later on when the first source file is loaded).
1469
1470         * gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
1471         Add call to Prep.Initialize.
1472
1473         * sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
1474         to Prep.Setup_Hooks.
1475
1476 2009-04-16  Pascal Obry  <obry@adacore.com>
1477
1478         * adaint.h, adaint.c (__gnat_chdir): New routine.
1479         Simple wrapper routines used to convert to proper encoding on
1480         Windows.
1481
1482         * s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
1483
1484         * a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
1485
1486 2009-04-16  Quentin Ochem  <ochem@adacore.com>
1487
1488         * sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
1489         of Source.Init.
1490
1491 2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
1492
1493         * a-convec.ads (Is_Empty): Mark inline.
1494
1495 2009-04-16  Nicolas Roche  <roche@adacore.com>
1496
1497         * init.c (__gnat_init_float): Initialize FPU on x86_64 windows
1498
1499 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1500
1501         * prepcomp.adb: Minor reformatting
1502
1503 2009-04-16  Jerome Lambourg  <lambourg@adacore.com>
1504
1505         * sem_prag.adb (Process_Import_Or_Interface): With .NET,
1506         Access_Subprogram types can also be imported.
1507         (Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
1508         names.
1509
1510 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1511
1512         * exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
1513         preserve homonym chain when the declaration is rewritten into a
1514         renaming declaration, in order to preserve visibility structure.
1515
1516 2009-04-16  Jerome Lambourg  <lambourg@adacore.com>
1517
1518         * sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
1519         taken into account for VM targets.
1520
1521 2009-04-16  Hristian Kirtchev  <kirtchev@adacore.com>
1522
1523         * g-calend.ads, g-calend.adb (Week_In_Year): Now calls
1524         Year_Week_In_Year.
1525         (Year_Week_In_Year): New routine which contains the original code from
1526         Week_In_Year. Add the missing special case for January 1st falling on
1527         a Monday.
1528
1529 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1530
1531         * exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
1532         actual type, use the base type to build the To_Any function.
1533         (Build_From_Any_Function): Remove junk, useless subtype conversion.
1534
1535 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1536
1537         * exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
1538         restrict.adb: Minor code reorganization (use
1539         Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
1540
1541 2009-04-16  Bob Duff  <duff@adacore.com>
1542
1543         * exp_ch6.ads, exp_ch6.adb (Is_Build_In_Place_Function_Return): Remove,
1544         unused.
1545
1546 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1547
1548         * sem_ch4.adb: Minor reformatting
1549
1550         * adaint.c: Remove junk duplicated code.
1551
1552         * sem_ch3.adb: Minor reformatting
1553
1554         * exp_dist.adb: Minor comment rewording
1555
1556 2009-04-16  Robert Dewar  <dewar@adacore.com>
1557
1558         * gnat_rm.texi: Document effect of Assume_No_Invalid_Values and -gnatVa
1559         used together.
1560
1561 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1562
1563         * sem_ch4.adb (Find_Equality_Types): Filter out types that are not
1564         usable before calling Add_One_Interp, to resolve spurious ambiguities.
1565
1566 2009-04-16  Robert Dewar  <dewar@adacore.com>
1567
1568         * Make-lang.in: Add entries for s-conca?.o
1569
1570         * Makefile.rtl: Add entries for s-conca?
1571
1572         * debug.adb: Add debug flags -gnatd.c and -gnatd.C to control behavior
1573         of concatenation expansion
1574
1575         * exp_ch4.adb (Expand_Concatenation): Generate calls for certain
1576         string cases instead of expanding assignments inline.
1577
1578         * opt.ads (Optimize_Size): New flag
1579
1580         * s-conca2.ads, s-conca2.adb, s-conca3.adb, s-conca3.ads,
1581         s-conca4.adb, s-conca4.ads, s-conca5.adb, s-conca5.ads, s-conca6.adb,
1582         s-conca6.ads, s-conca7.ads, s-conca7.adb, s-conca8.adb, s-conca8.ads,
1583         s-conca9.adb, s-conca9.ads: New file.
1584
1585 2009-04-16  Robert Dewar  <dewar@adacore.com>
1586
1587         * exp_ch6.adb: Add comments
1588
1589         * rtsfind.ads: Add entries for s-conca? routines
1590
1591 2009-04-16  Arnaud Charlet  <charlet@adacore.com>
1592
1593         * gcc-interface/Make-lang.in: Update dependencies.
1594
1595         * gcc-interface/Makefile.in: Update translation for vms.
1596
1597 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1598
1599         * sem_ch12.adb (Map_Formal_Package_Entities): renamed from Map_Entities
1600         and made global, to be used when installing parents of a child
1601         instance, to provide mappings for entities declared in formal packages
1602         of ancestor units. Now called from Install_Formal_Packages.
1603
1604 2009-04-16  Doug Rupp  <rupp@adacore.com>
1605
1606         * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events with others
1607         notation for clarity.
1608
1609         * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
1610         s-taprop-mingw.adb, s-taprop-linux.adb, s-taprop-solaris.adb,
1611         s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-posix.adb
1612         (Initialize): Initialize Known_Tasks with Environment task.
1613
1614         * s-taskin.ads (Task_States): Move new states to end for the sake of
1615         GDB compatibility.
1616
1617         * s-tassta.adb (Task_Wrapper): Fix comment about Enter_Task.
1618
1619 2009-04-16  Ed Schonberg  <schonberg@adacore.com>
1620
1621         * exp_ch9.adb (Expand_N_Protected_Type_Declaration): If a protected
1622         operation has an inline pragma, propagate the flag to the internal
1623         unprotected subprogram.
1624
1625 2009-04-16  Doug Rupp  <rupp@adacore.com>
1626
1627         * s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-mingw.adb,
1628         s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-irix.adb, 
1629         s-taprop-hpux-dce.adb, s-taprop-posix.adb
1630         (Enter_Task): Move Known_Tasks initialization to s-tassta.adb
1631
1632         * s-taprop-vms.adb (Enter_Task): Likewise.
1633         (Initialize): Import DBEXT, Debug_Register. Register DBGEXT callback.
1634
1635         * s-tassta.adb (Activate_Tasks): After task creation set state to
1636         Activating, vice Runnable. Initialize Known_Tasks, moved here from
1637         s-taprop.adb (Enter_Task). Set Debug_Event_Activating for debugger.
1638         Set state to Runnable after above.
1639         (Task_Wrapper): Set Debug_Event_Run. In exception block set
1640         Debug_Event_Terminated.
1641
1642         * s-taskin.ads (Task_States): Add new states Activiting and
1643         Activator_Delay_Sleep.
1644         (Bit_Array, Debug_Event_Array): New types.
1645         (Global_Task_Debug_Event_Set: New flag.
1646         (Common_ATCB): New field Debug_Events.
1647
1648         * s-taskin.adb (Initialize_ATCB): Initialize Debug_Events.
1649
1650         * s-tasren.adb (Timed_Selective_Wait): Set Activator_Delay_Sleep vice
1651         Activator_Sleep.
1652
1653         * s-tasini.adb (Locked_Abort_To_Level): Add case alternatives for when
1654         Activating and when Acceptor_Delay_Sleep.
1655
1656         * s-tasdeb.ads: Add constants for Debug_Events.
1657         (Debug_Event_Kind_Type): New subtype.
1658         (Signal_Debug_Event): New subprogram.
1659
1660         * s-tasdeb.adb (Signal_Debug_Event): New null subprogram.
1661
1662 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1663
1664         * sem_elim.adb: Minor reformatting
1665
1666         * freeze.adb: Minor reformatting
1667
1668         * exp_ch4.adb: Minor reformatting
1669
1670 2009-04-16  Emmanuel Briot  <briot@adacore.com>
1671
1672         * prj-nmsc.adb (Path_Name_Of): fix memory leak
1673
1674 2009-04-16  Robert Dewar  <dewar@adacore.com>
1675
1676         * sinfo.ads (Backwards_OK, Forwards_OK): Clarify documentation
1677
1678 2009-04-16  Vincent Celier  <celier@adacore.com>
1679
1680         * fmap.adb (Initialize): Show the current line when the mapping file
1681         is detected as "incorrectly formatted".
1682
1683 2009-04-16  Robert Dewar  <dewar@adacore.com>
1684
1685         * sem_ch12.adb: Minor reformatting
1686
1687         * sem_ch5.adb: Minor comment addition
1688
1689         * sem_util.adb: Minor reformatting
1690
1691         * sinput-p.adb: Minor reformatting
1692         Add missing pragma Warnings (On)
1693
1694 2009-04-16  Ed Falis  <falis@adacore.com>
1695
1696         * s-vxwext-kernel.adb: (ERROR): deleted unused constant
1697
1698 2009-04-16  Vincent Celier  <celier@adacore.com>
1699
1700         * ali-util.adb: Minor comment spelling error fix
1701
1702 2009-04-16  Eric Botcazou  <ebotcazou@adacore.com>
1703
1704         * exp_ch5.adb (Expand_Assign_Array): For the GCC back-end, do not
1705         generate an assignment loop in case of overlap.
1706
1707 2009-04-16  Olivier Hainque  <hainque@adacore.com>
1708
1709         * gnat_ugn.texi (gnatmem description): Make it explicit that
1710         gnatmem is designed to work in association with static runtime
1711         library only.
1712
1713 2009-04-16  Thomas Quinot  <quinot@adacore.com>
1714
1715         * sem_type.adb: Minor reformatting
1716
1717 2009-04-16  Hristian Kirtchev  <kirtchev@adacore.com>
1718
1719         * s-osprim-darwin.adb, s-osprim-posix.adb (Clock): Add comment
1720         concerning return codes of gettimeofday and return value check.
1721
1722 2009-04-16  Ed Falis  <falis@adacore.com>
1723
1724         * s-vxwext-kernel.ads (Int_Lock, Int_Unlock): set to convention C so
1725         body can be renaming of imported routines.
1726
1727 2009-04-16  Vasiliy Fofanov  <fofanov@adacore.com>
1728
1729         * s-asthan-vms-alpha.adb: Disable warnings on alignment in a more
1730         targeted fashion.
1731
1732 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
1733
1734         * exp_ch9.adb: Comment improvements.
1735         (Build_Entry_Family_Name): Add parentheses around the index of a entry
1736         family member.
1737
1738 2009-04-15  Bob Duff  <duff@adacore.com>
1739
1740         * sem_warn.adb (Check_Infinite_Loop_Warning): Catch cases like
1741         "while X /= null loop" where X is unchanged inside the loop. We were
1742         not warning in this case, because of the pointers -- we feared that the
1743         loop variable could be updated via a pointer, if there are any pointers
1744         around the place. But that is impossible in this case.
1745
1746         * sem_util.adb (May_Be_Lvalue): This routine was overly pessimistic in
1747         the case of dereferences. In X.all, X cannot be an l-value. We now
1748         catch that case (and implicit dereferences, too).
1749
1750 2009-04-15  Vincent Celier  <celier@adacore.com>
1751
1752         * sinput-p.ads, sinput-p.adb (Clear_Source_File_Table): New procedure
1753
1754 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
1755
1756         * sem_ch12.adb (Is_Actual_Of_Previous_Formal): Make fully recursive.
1757         From code reading.
1758         (Analyze_Package_Instantiation): If generic unit in child instance is
1759         the same as generic unit in parent instance, look for an outer homonym
1760         to locate the desired generic.
1761
1762 2009-04-15  Bob Duff  <duff@adacore.com>
1763
1764         * sem_ch5.adb (Analyze_Loop_Statement): Don't check for infinite loop
1765         warnings unless the loop comes from source, because checking generated
1766         loops is a waste of time, and makes it harder to debug
1767         Check_Infinite_Loop_Warning.
1768
1769         * sem_warn.adb (Check_Infinite_Loop_Warning): If the local variable
1770         tested in the while loop is a renaming, do not warn. Otherwise, we get
1771         false alarms, because it's usually renaming something that we can't
1772         deal with (an indexed component, a global variable, ...).
1773
1774         * gnat_rm.texi: Fix typo
1775
1776 2009-04-15  Thomas Quinot  <quinot@adacore.com>
1777
1778         * sem_ch6.adb: Minor reformatting
1779
1780 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
1781
1782         * exp_ch7.adb (Expand_Ctrl_Function_Call): Check for the case where the
1783         immediate parent of the controlled function call is a component
1784         association.
1785
1786 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
1787
1788         * sem_ch8.adb (Use_One_Type): If the type is tagged, indicate that the
1789         corresponding class-wide type is also in use.
1790
1791 2009-04-15  Thomas Quinot  <quinot@adacore.com>
1792
1793         * frontend.adb: Minor comment fix
1794
1795 2009-04-15  Robert Dewar  <dewar@adacore.com>
1796
1797         * gnatchop.adb (BOM_Length): New global variable
1798         (Write_Unit): Add new parameter Write_BOM
1799         (Write_Chopped_Files): Check for BOM and set Write_BOM for call
1800         to Write_Unit
1801
1802         * gnat_ugn.texi: Add note on propagation of BOM by gnatchop
1803
1804 2009-04-15  Geert Bosch  <bosch@adacore.com>
1805
1806         * system-mingw-x86_64.ads, system-darwin-x86_64.ads
1807         (Backend_Overflow_Checks): Set to True.
1808
1809 2009-04-15  Gary Dismukes  <dismukes@adacore.com>
1810
1811         * par-ch3.adb (P_Type_Declaration): Issue an error if the synchronized
1812         keyword is given in a record extension.
1813
1814 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
1815
1816         * exp_ch7.adb (Expand_Ctrl_Function_Call): Procede with the expansion
1817         of a controlled function call in the context of a record aggregate.
1818         This does not apply to array aggregates since the call will be expanded
1819         into assignments.
1820
1821 2009-04-15  Ed Falis  <falis@adacore.com>
1822
1823         * s-osinte-vxworks-kernel.adb, s-osinte-vxworks.adb,
1824         s-osinte-vxworks.ads s-vxwext.ads, s-vxwext-kernel.adb,
1825         s-vxwext-kernel.ads, s-vxwext-rtp.ads, s-vxwext-rtp.adb: Reorganize
1826         s-osinte-vxworks* and s-vxwext*.
1827
1828 2009-04-15  Arnaud Charlet  <charlet@adacore.com>
1829
1830         * gcc-interface/Make-lang.in: Update dependencies.
1831
1832         * gcc-interface/Makefile.in: Reorganization of s-osinte-vxworks*
1833         and s-vxwext*.
1834
1835 2009-04-15  Robert Dewar  <dewar@adacore.com>
1836
1837         * sem_ch13.adb (Unchecked_Conversions): Store source location instead
1838         of node for location for warning messages.
1839
1840         * gnatchop.adb: Minor reformatting
1841
1842 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
1843
1844         * exp_ch6.adb: additional guard for renaming declarations for in
1845         parameters of an array type.
1846
1847 2009-04-15  Robert Dewar  <dewar@adacore.com>
1848
1849         * sem_eval.adb (Get_Static_Length): Go to origin node for array bounds
1850         in case they were rewritten by expander (Force_Evaluation).
1851
1852         * targparm.adb (Get_Target_Parameters): Correct check for
1853         Suppress_Exception_Locations.
1854
1855 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
1856
1857         * exp_ch6.adb (Expand_Inlined_Call): If an in-parameter in a call to be
1858         inlined  is of an array type that is not bit-packed, use a renaming
1859         declaration to capture its value, rather than a constant declaration.
1860
1861 2009-04-15  Robert Dewar  <dewar@adacore.com>
1862
1863         * rtsfind.adb: Minor reformatting.
1864
1865 2009-04-15  Emmanuel Briot  <briot@adacore.com>
1866
1867         * prj-part.adb, prj-tree.adb, prj-tree.ads (Restore_And_Free): renames
1868         Restore, and free the saved context.
1869
1870 2009-04-15  Gary Dismukes  <dismukes@adacore.com>
1871
1872         * sem_ch3.adb (Analyze_Private_Extension_Declaration): Move error check
1873         for illegal private extension from a synchronized interface parent in
1874         front of check for illegal limited extension so that limited extension
1875         from a synchronized interface will be rejected.
1876         (Check_Ifaces): Check that a private extension that has a synchronized
1877         interface as a progenitor must be explicitly declared synchronized.
1878         Also check that a record extension cannot derive from a synchronized
1879         interface.
1880
1881 2009-04-15  Pascal Obry  <obry@adacore.com>
1882
1883         * adaint.h (__gnat_unlink): Add spec.
1884         (__gnat_rename): Likewise.
1885
1886 2009-04-15  Vincent Celier  <celier@adacore.com>
1887
1888         * prj-nmsc.adb: Minor spelling error corrections in error messages
1889
1890 2009-04-15  Robert Dewar  <dewar@adacore.com>
1891
1892         * sinfo.ads: Minor comment update
1893
1894         * opt.ads: Minor comment updates
1895
1896         * checks.adb (Enable_Overflow_Check): Do not set Do_Overflow_Check for
1897         modular type.
1898
1899 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
1900
1901         * exp_disp.ads, exp_disp.adb (Register_Primitive): Is now a function
1902         that generates the code needed to update a dispatch table when a
1903         primitive operation is declared with a subprogram body without previous
1904         spec. Insertion of the generated code is responsibility of the caller.
1905         (Make_DT): When building static tables, append the code created by
1906         Register_Primitive to update a secondary table after it has been
1907         constructed.
1908
1909         * exp_ch3.adb, exp_ch6.adb: use new version of Register_Primitive.
1910
1911         * sem_disp.adb (Check_Dispatching_Operation): Call Register_Primitive
1912         on an overriding operation that implements an interface operation only
1913         if not building static dispatch tables.
1914
1915 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
1916
1917         * a-caldel-vms.adb (To_Duration): Declare a "safe" end of time which
1918         does not cause overflow when converted to Duration. Use the safe value
1919         as the maximum allowable time delay..
1920
1921 2009-04-15  Jerome Lambourg  <lambourg@adacore.com>
1922
1923         * g-comlin.adb (Set_Command_Line): When adding a switch with attached
1924         parameter, specify that the delimiter is NUL, otherwise "-j2" will be
1925         translated to "-j 2".
1926
1927 2009-04-15  Bob Duff  <duff@adacore.com>
1928
1929         * rtsfind.adb (Maybe_Add_With): Split out procedure to add implicit
1930         with_clauses, to avoid code duplication. Change this processing so we
1931         always add a with_clause on the main unit if needed.
1932
1933 2009-04-15  Pascal Obry  <obry@adacore.com>
1934
1935         Add support for Win32 native encoding for delete/rename routines.
1936         
1937         * adaint.c (__gnat_unlink): New routine.
1938         (__gnat_rename): New routine.
1939         Simple wrapper routines used to convert to proper encoding on
1940         Windows.
1941
1942         * s-os_lib.adb: Use __gnat_unlink and __gnat_rename instead of direct
1943         call to the C library.
1944
1945         * g-sercom-mingw.adb, s-win32.ads: Update Win32 binding.
1946
1947 2009-04-15  Robert Dewar  <dewar@adacore.com>
1948
1949         * s-tassta.adb: Minor reformatting
1950
1951 2009-04-15  Robert Dewar  <dewar@adacore.com>
1952
1953         * frontend.adb (Frontend): Set proper default for
1954         Warn_On_Non_Local_Exception.
1955
1956         * opt.ads (Exception_Handler_Encountered): New flag
1957         (No_Warn_On_Non_Local_Exception): New flag
1958
1959         * par-ch11.adb (P_Exception_Handler): Set Exception_Handler_Encountered
1960
1961         * sem_warn.adb (Set_Warning_Switch): Set No_Warn_On_Non_Local_Exception
1962         (Set_Dot_Warning_Switch): Set No_Warn_On_Non_Local_Exception
1963
1964 2009-04-15  Cyrille Comar  <comar@adacore.com>
1965
1966         * s-tassta.adb, a-exextr.adb, a-elchha.adb
1967         (Ada.Exception.Last_Chance_Handler): Do not print unhandled exception
1968         message when exception traces are active since it would generate
1969         redundant information.
1970         (Exception_Traces.Notify_Exception): put message output by a critical
1971         section to avoid unsynchronized output.
1972         (Trace_Unhandled_Exception_In_Task): put message output by a critical
1973         section to avoid unsynchronized output.
1974
1975 2009-04-15  Emmanuel Briot  <briot@adacore.com>
1976
1977         * g-comlin.adb, prj-tree.adb, prj-tree.ads, prj.adb, prj.ads
1978         (Free): New subprogram.
1979
1980 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
1981
1982         * a-calend.adb: Add new constant Nanos_In_Four_Years.
1983         (Formatting_Operations.Time_Of): Change the way four year chunks of
1984         nanoseconds are added to the intermediate result.
1985
1986 2009-04-15  Nicolas Setton  <setton@adacore.com>
1987
1988         * sysdep.c: Add __APPLE__ in the list of systems where get_immediate
1989         does not need to wait for a carriage return.
1990
1991 2009-04-15  Tristan Gingold  <gingold@adacore.com>
1992
1993         * bindgen.adb: Do not generate adafinal if No_Finalization restriction
1994         is set.
1995
1996 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
1997
1998         * freeze.adb (Freeze_Entity): improve error message for improper use of
1999         incomplete types.
2000         Diagnose additional illegal uses of incomplete types in formal parts.
2001         appearing in formal parts.
2002
2003         * sem_ch6.adb (Process_Formals, Analyze_Return_Type): ditto.
2004
2005 2009-04-15  Robert Dewar  <dewar@adacore.com>
2006
2007         * exp_ch4.adb (Expand_N_Allocator): Install test for object too large.
2008
2009 2009-04-15  Nicolas Roche  <roche@adacore.com>
2010
2011         * adaint.c: Add function __gnat_lwp_self that retrieves the LWP of the
2012         current thread.
2013
2014         * s-osinte-linux.ads: Import the __gnat_lwp_self function as lwp_self
2015
2016         * s-taprop-linux.adb (Enter_Task): Store the LWP in the TCB
2017
2018 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2019
2020         * sem_ch4.adb: improve error message on exponentiation.
2021
2022 2009-04-15  Hristian Kirtchev  <kirtchev@adacore.com>
2023
2024         * a-calend.adb: Move constant Epoch_Offset from package
2025         Conversion_Operations to top level.
2026         (Delay_Operations.To_Duration): Define a constant which represents
2027         "end of time" and use it as a guard against very distant delay dates.
2028         Protect the code against overflow when performing the origin shift to
2029         Unix time.
2030
2031 2009-04-15  Robert Dewar  <dewar@adacore.com>
2032
2033         * sem_prag.adb: Minor reformatting.
2034
2035         * sem_type.adb: Minor reformatting
2036
2037 2009-04-15  Javier Miranda  <miranda@adacore.com>
2038
2039         * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Add missing
2040         support to check eliminated subprograms.
2041
2042         * sem_elim.ads (Eliminate_Error_Msg): Update documentation.
2043
2044         * sem_elim.adb (Set_Eliminated): Add support for elimination of
2045         dispatching subprograms.
2046
2047         * exp_disp.adb (Make_DT): Minor code cleanup when freezing primitive
2048         operations. Initialize with "null" the slots of eliminated dispaching
2049         primitives.
2050         (Write_DT): Add output for eliminated primitives.
2051
2052         * sem_disp.adb (Check_Dispatching_Call): Check eliminated primitives.
2053
2054 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2055
2056         * sem_ch8.adb (Use_One_Type): If both clauses appear on the same unit,
2057         the second is redundant, regardless of scopes.
2058
2059 2009-04-15  Vincent Celier  <celier@adacore.com>
2060
2061         * prj-nmsc.adb (Get_Directories): Check for sources before checking
2062         the object directory as when there are no sources, they may not be any
2063         object directory.
2064
2065         * make.adb (Gnatmake): Do not attempt to get the path name of the exec
2066         directory, when there are no exec directory.
2067
2068 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2069
2070         * sem_type.adb (Remove_Conversions): In order to resolve spurious
2071         ambiguities, refine removal of universal interpretations from complex
2072         expressions with literal arguments, when some numeric operators have
2073         been declared abstract.
2074
2075 2009-04-15  Ed Falis  <falis@adacore.com>
2076
2077         * init.c: Map SIGSEGV to Storage_Error for all targets for uniformity
2078         and backward compatibility for targets using probing for stack overflow
2079
2080 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2081
2082         * sem_prag.adb (Analyze_Pragma, case 'Obsolescent): Pragma is legal
2083         after any declaration, including renaming declarations.
2084
2085 2009-04-15  Arnaud Charlet  <charlet@adacore.com>
2086
2087         * gcc-interface/Make-lang.in: Update dependencies.
2088
2089         * gcc-interface/Makefile.in: Fix VxWorks target pairs.
2090         Update xenomai target pairs.
2091
2092 2009-04-15  Javier Miranda  <miranda@adacore.com>
2093
2094         * exp_ch4.adb (Expand_N_Allocator): Code cleanup.
2095
2096         * sem_ch6.adb (Check_Anonymous_Return): Add missing support for
2097         functions returning anonymous access to class-wide limited types. Mark
2098         also the containing scope as a task master.
2099
2100         * sem_ch8.adb (Restore_Scope_Stack): Add missing management for
2101         limited-withed packages. Required to restore their visibility after
2102         processing packages associated with implicit with-clauses.
2103
2104         * exp_ch3.adb (Build_Class_Wide_Master): Avoid marking masters
2105         associated with return statements because this work is now done by
2106         Check_Anonymous_Return.
2107         (Build_Master): Code cleanup.
2108
2109 2009-04-15  Thomas Quinot  <quinot@adacore.com>
2110
2111         * sem_warn.ads: Minor reformatting
2112
2113 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2114
2115         * sem_ch3.adb: better error message for illegal interfaces
2116
2117         * sem_ch6.adb (Possible_Freeze): Delay freezing a subprogram if a
2118         formal is an incomplete type from a limited_with clause.
2119
2120 2009-04-15  Vincent Celier  <celier@adacore.com>
2121
2122         * prj-nmsc.adb (Locate_Directory): New Boolean parameter
2123         Externally_Built indicating if the project is externally built. If it
2124         is, and --subdirs is specified, but the subdir does not exist, look
2125         for the specified directory, without the subdir.
2126
2127 2009-04-15  Gary Dismukes  <dismukes@adacore.com>
2128
2129         * a-tasatt.adb: Fix typo, plus minor reformatting
2130
2131         * sem_ch3.ads: Add missing hyphen ("class wide" => "class-wide").
2132
2133         * sem_ch10.adb: Add missing hyphen ("use visible" => "use-visible").
2134
2135 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2136
2137         * sem_ch3.adb (Analyze_Private_Extension_Declaration): Verify that a
2138         private extension whose parent is a synchronized interface carries an
2139         explicit synchronized keyword.
2140
2141 2009-04-15  Thomas Quinot  <quinot@adacore.com>
2142
2143         * exp_smem.adb (Make_Shared_Var_Procs): For a protected type,
2144         instantiate generic shared object package with the corresponding
2145         record type.
2146
2147 2009-04-15  Arnaud Charlet  <charlet@adacore.com>
2148
2149         * system-linux-sparc.ads: Remove obsolete entries.
2150
2151 2009-04-15  Thomas Quinot  <quinot@adacore.com>
2152
2153         * s-tasuti.ads: Add ??? comment
2154
2155 2009-04-15  Ed Schonberg  <schonberg@adacore.com>
2156
2157         * sem_ch3.adb (Analyze_Type_Declaration): Create freeze node for access
2158         type even if the designated type comes from a limited_with clause, to
2159         ensure that the symbol for the finalization list of the access type is
2160         created.
2161
2162 2009-04-10  Robert Dewar  <dewar@adacore.com>
2163
2164         * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): Catch more cases
2165         for warning suppression.
2166
2167 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2168
2169         * sem_ch8.adb (Use_One_Type): If the two use_type clauses are
2170         identical, there is no redudancy to check.
2171
2172 2009-04-10  Gary Dismukes  <dismukes@adacore.com>
2173
2174         * exp_ch5.adb (Expand_N_Extended_Return_Statement): Delete redundant
2175         calls initializing SS_Allocator (which is initialized in following
2176         code).
2177         (Expand_Simple_Function_Return): Add comment about False value for
2178         Comes_From_Source on secondary-stack allocator.
2179
2180         * exp_ch9.adb (Build_Entry_Family_Name): Add comment.
2181         (Build_Entry_Name): Add comment.
2182
2183 2009-04-10  Robert Dewar  <dewar@adacore.com>
2184
2185         * einfo.ads, einfo.adb (Low_Bound_Tested): New name for Low_Bound_Known
2186
2187         * sem_prag.adb (Analyze_Pragma, case Check): Remove check for lower
2188         bound tested, since this is now done more generally in Sem_Res.
2189
2190         * sem_res.adb (Resolve_Comparison_Op): Add call to
2191         Check_Lower_Bound_Tested.
2192         (Resolve_Equality_Op): Add call to Check_Lower_Bound_Tested
2193
2194         * sem_warn.ads, sem_warn.adb (Check_Low_Bound_Tested): New procedure
2195         (Low_Bound_Tested): New name for Low_Bound_Known flag
2196
2197         * exp_ch5.adb: Minor reformatting
2198
2199         * exp_ch4.adb:
2200         Add comments on copying the Comes_From_Source flag for allocators
2201
2202         * sinfo.ads:
2203         Add comments on copying the Comes_From_Source flag for allocators
2204
2205         * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Copy
2206         Comes_From_Source flag from old allocator to new one.
2207
2208 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2209
2210         * sem_ch6.ads: Address missing documentation query
2211
2212 2009-04-10  Vincent Celier  <celier@adacore.com>
2213
2214         * prj-attr.adb:
2215         Add new Linker attributes Max_Command_Line_Length, Response_File_Format
2216         and Response_File_Switches.
2217
2218         * prj-nmsc.adb (Process_Linker): Process new attributes
2219         Max_Command_Line_Length, Response_File_Format and
2220         Response_File_Switches.
2221
2222         * prj.ads (Response_File_Format): New enumeration type
2223         (Project_Configuration): New componants Max_Command_Line_Length,
2224         Resp_File_Format and Resp_File_Options.
2225
2226         * snames.ads-tmpl: Add new standard names for linking response files
2227         for gprbuild: GNU, None, Object_List, Option_List,
2228         Max_Command_Line_Length, Response_File_Format and
2229         Response_File_Switches.
2230
2231 2009-04-10  Geert Bosch  <bosch@adacore.com>
2232
2233         * system-aix.ads, system-darwin-ppc.ads, system-darwin-x86.ads,
2234         system-freebsd-x86.ads, system-hpux.ads, system-hpux-ia64.ads,
2235         system-irix-n32.ads, system-irix-o32.ads, system-linux-alpha.ads,
2236         system-linux-hppa.ads, system-linux-ia64.ads, system-linux-ppc.ads,
2237         system-linux-s390.ads, system-linux-s390x.ads, system-linux-sh4.ads,
2238         system-linux-sparc.ads, system-linux-x86_64.ads, system-linux-x86.ads,
2239         system-mingw.ads, system-solaris-sparc.ads, system-solaris-sparcv9.ads,
2240         system-solaris-x86.ads, system-tru64.ads, system-vms_64.ads,
2241         system-vms.ads, system-vms-ia64.ads, system-vms-zcx.ads,
2242         system-vxworks-arm.ads, system-vxworks-m68k.ads,
2243         system-vxworks-mips.ads, system-vxworks-ppc.ads,
2244         system-vxworks-sparcv9.ads, system-vxworks-x86.ads
2245         (Backend_Overflow_Checks): Set to True.
2246
2247 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2248
2249         * exp_attr.adb: Minor reformatting
2250
2251 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2252
2253         * sem_prag.adb (Check_Precondition_Postcondition): Within a generic,
2254         analyze the expression for a postcondition, even if the compiler mode
2255         is Generate_Code.
2256
2257 2009-04-10  Robert Dewar  <dewar@adacore.com>
2258
2259         * sem_aux.adb: Minor reformatting
2260
2261 2009-04-10  Ed Falis  <falis@adacore.com>
2262
2263         * init.c: Change VxWorks 6 stack overflow checking for kernel apps.
2264
2265         * system-vxworks-ppc.ads, system-vxworks-x86.ads: Update header.
2266
2267 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2268
2269         * sem_ch6.ads (Check_Subtype_Conformant): Add ??? comment for
2270         undocumented formal.
2271         Minor reformatting
2272
2273         * a-direio.ads: Fix typo in comment
2274
2275         * sem_ch3.adb, g-dirope.adb, sem_type.adb, sem_ch12.adb, sem_case.adb,
2276         errout.adb, sem_ch4.adb, sem_ch11.adb, exp_dist.adb, sem_ch13.adb:
2277         Use uniform phrasing for comment at start of subprogram body.
2278
2279         * xsnamest.adb: Add note to explain why we use specific names for the
2280         newly generated files instead of generating snames.{ads,adb,h} directly
2281
2282 2009-04-10  Sergey Rybin  <rybin@adacore.com>
2283
2284         * vms_data.ads:
2285         Add qualifier for new gnatstub option '--no-exception'
2286
2287         * gnat_ugn.texi:
2288         Add the description of the new gnatstub option '--no-exception'
2289
2290 2009-04-10  Robert Dewar  <dewar@adacore.com>
2291
2292         * rtsfind.adb: Minor reformatting
2293
2294 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2295
2296         * sem_disp.adb: Minor reformatting.
2297         Add comment pointing to RM clause for the case of warning against a
2298         (failed) attempt at declaring a primitive operation elsewhere than in a
2299         package spec.
2300
2301 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2302
2303         * sem_ch12.adb (Denotes_Formal_Package): Check whether the package is
2304         an actual for a previous formal package of the current instance.
2305
2306 2009-04-10  Bob Duff  <duff@adacore.com>
2307
2308         * rtsfind.adb (RTE): Put implicit with_clauses on whatever unit needs
2309         them first, rather than on the extended main unit.
2310
2311 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2312
2313         * sem_ch6.adb (Check_Discriminant_Conformance): If discriminant
2314         specification of full view carries a null exclusion indicator, create
2315         an itype for it, to check for conformance with partial view.
2316
2317 2009-04-10  Bob Duff  <duff@adacore.com>
2318
2319         * rtsfind.ads: Minor code change: make RE_Unit_Table constant.
2320
2321         * rtsfind.adb: Minor comment changes, and remove useless code.
2322
2323         * sinfo.ads: Add ??? comment.
2324
2325 2009-04-10  Vincent Celier  <celier@adacore.com>
2326
2327         * vms_data.ads: Add missing GNAT SYNC VMS qualifiers -main= and -U
2328
2329 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2330
2331         * exp_attr.adb (Expand_N_Attribute_Reference, case 'Tag): If the tagged
2332         type is a synchronized type, retrieve tag information from the
2333         corresponding record, which has the dispatch table link.
2334
2335 2009-04-10  Jerome Lambourg  <lambourg@adacore.com>
2336
2337         * g-comlin.adb (Group_Analysis): Take care of switches that might be
2338         decomposed afterwards, but are present as-is in the command line
2339         configuration, and thus should be kept as-is.
2340
2341 2009-04-10  Robert Dewar  <dewar@adacore.com>
2342
2343         * gnat_rm.texi: Document that postconditions are tested on implicit
2344         returns.
2345
2346         * sem_aux.adb: Minor reformatting
2347
2348 2009-04-10  Gary Dismukes  <dismukes@adacore.com>
2349
2350         * itypes.adb (Create_Null_Excluding_Itype): Apply Base_Type when
2351         setting Etype.
2352         
2353         * par-ch3.adb (P_Access_Type_Definition): Set new attribute
2354         Null_Exclusion_In_Return_Present when an access-to-function type has a
2355         result type with an explicit not null.
2356
2357         * sem_ch3.adb (Access_Subprogram_Definition): If a null exclusion is
2358         given on the result type, then create a null-excluding itype for the
2359         function.
2360
2361         * sem_ch6.adb (Analyze_Return_Type): Create a null-excluding itype in
2362         the case where a null exclusion is imposed on a named access type.
2363         (Analyze_Subprogram_Specification): Push and pop the scope of the
2364         function around the call to Analyze_Return_Type in the case of no
2365         formals, for consistency with handling when formals are present
2366         (Process_Formals does this). Ensures that any itype created for the
2367         return type will be associated with the proper scope.
2368
2369         * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): If a null
2370         exclusion is given on a generic function's result type, then create a
2371         null-excluding itype for the generic function.
2372         (Instantiate_Object): Set Null_Exclusion_Present of a constant created
2373         for an actual for a formal in object according to the setting on the
2374         formal. Ensures null exclusion checks are done when the association is
2375         elaborated.
2376
2377         * sinfo.ads: Add new flag Null_Exclusion_In_Return_Present on
2378         N_Access_Function_Definition.
2379
2380         * sinfo.adb: Add Get_ and Set_ operations for
2381         Null_Exclusion_In_Return_Present.
2382
2383 2009-04-10  Bob Duff  <duff@adacore.com>
2384
2385         * exp_ch5.adb, exp_ch6.adb, sem_ch6.adb: Move the code that creates a
2386         call to the _Postconditions procedure in the case of implicit returns
2387         from analysis to expansion. This eliminates some duplicated code. Use
2388         the Postcondition_Proc to find the identity of this procedure during
2389         expansion.
2390
2391 2009-04-10  Robert Dewar  <dewar@adacore.com>
2392
2393         * sem_ch6.adb: Minor code clean up.
2394
2395         * einfo.ads, sem_attr.adb: Minor comment fixes.
2396
2397 2009-04-10  Robert Dewar  <dewar@adacore.com>
2398
2399         * sem_ch8.adb: Minor reformatting
2400
2401 2009-04-10  Robert Dewar  <dewar@adacore.com>
2402
2403         * einfo.ads, einfo.adb (Postcondition_Proc): New attribute for
2404         procedures.
2405
2406         * sem_ch6.adb: Minor code clean up.
2407
2408 2009-04-10  Robert Dewar  <dewar@adacore.com>
2409
2410         * mlib-tgt-specific-xi.adb: Minor reformatting
2411
2412 2009-04-10  Bob Duff  <duff@adacore.com>
2413
2414         * einfo.ads: Minor comment fixes
2415
2416 2009-04-10  Vincent Celier  <celier@adacore.com>
2417
2418         * snames.ads-tmpl: Remove names that are no longer used in the
2419         Project Manager.
2420         Mark specifically those that are used only in gprbuild
2421
2422 2009-04-10  Eric Botcazou  <ebotcazou@adacore.com>
2423
2424         * init.c: Adjust EH support code on Alpha/Tru64.
2425
2426 2009-04-10  Bob Duff  <duff@adacore.com>
2427
2428         * sem_ch6.adb (Process_PPCs): Add a call to the _Postconditions
2429         procedure on every path that could return implicitly (not via a return
2430         statement) from a procedure.
2431
2432 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2433
2434         * exp_ch9.adb (Build_Master_Entity): An extended return statement is a
2435         valid scope for a task declarations and therefore for a master id.
2436
2437 2009-04-10  Robert Dewar  <dewar@adacore.com>
2438
2439         * sem_aux.adb: Minor reformatting
2440
2441 2009-04-10  Vincent Celier  <celier@adacore.com>
2442
2443         * scn.adb (Obsolescent_Check_Flag): New Boolean flag, initialized to
2444         True.
2445         (Obsolescent_Check): Do nothing if Obsolescent_Check_Flag is False
2446         (Set_Obsolescent_Check): New procedure to change the value of
2447         Obsolescent_Check_Flag.
2448
2449         * scn.ads (Set_Obsolescent_Check): New procedure to control
2450         Obsolescent_Check.
2451
2452         * sinput-l.adb (Load_File): Do not check for pragma Restrictions on
2453         obsolescent features while preprocessing.
2454
2455 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2456
2457         * xsnamest.adb: Use XUtil to have uniform line endings (UNIX style) in
2458         generated files on all platforms.
2459
2460 2009-04-10  Robert Dewar  <dewar@adacore.com>
2461
2462         * sem_aux.adb: Minor reformatting
2463
2464 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2465
2466         * sem_ch3.adb (Access_Definition): Handle properly the case of a
2467         protected function with formals that returns an anonymous access type.
2468
2469 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2470
2471         * sem_disp.adb: Minor reformatting
2472
2473 2009-04-10  Vasiliy Fofanov  <fofanov@adacore.com>
2474
2475         * seh_init.c: Do not use the 32-bit specific implementation of
2476         __gnat_install_SEH_handler on 64-bit Windows target (64-bit specific
2477         version TBD).
2478
2479 2009-04-10  Jose Ruiz  <ruiz@adacore.com>
2480
2481         * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Target_Name may contain
2482         a '/' at the end so we better use the complete target name to determine
2483         whether it is a PowerPC 55xx target.
2484
2485 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2486
2487         * sem_eval.adb: Minor reformatting
2488
2489 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2490
2491         * snames.h, snames.ads, snames.adb: Remove files, now generated from
2492         templates.
2493
2494         * snames.h-tmpl, snames.ads-tmpl, snames.adb-tmpl: Templates for the
2495         above.
2496
2497         * xsnamest.adb: New file.
2498
2499         * gcc-interface/Make-lang.in: New target for automated generation of
2500         snames.ads, snames.adb and snames.h
2501
2502 2009-04-10  Tristan Gingold  <gingold@adacore.com>
2503
2504         * gcc-interface/Makefile.in, gcc-interface/utils.c: Include "rtl.h" to
2505         avoid compile time warnings.
2506         Do not add gcc/config in include search list while compiling the RTS.
2507         Pragma Thread_Local_Storage is available on any target.
2508
2509 2009-04-10  Bob Duff  <duff@adacore.com>
2510
2511         * sem.ads, par.adb, sem_ch6.adb, sem_ch8.adb: Minor comment fixes.
2512
2513 2009-04-10  Tristan Gingold  <gingold@adacore.com>
2514
2515         * init.c: Install signal handler on Darwin.
2516
2517 2009-04-10  Robert Dewar  <dewar@adacore.com>
2518
2519         * sem_prag.adb: Minor reformatting
2520
2521         * exp_util.adb (Make_Non_Empty_Check): New function
2522         (Silly_Boolean_Array_Not_Test): Add call to Make_Non_Empty_Check
2523         (Silly_Boolean_Array_Xor_Test): Use Make_Non_Empty_Check
2524
2525 2009-04-10  Arnaud Charlet  <charlet@adacore.com>
2526
2527         * make.adb, gnatlink.adb: Rename JGNAT toolchain.
2528
2529 2009-04-10  Jose Ruiz  <ruiz@adacore.com>
2530
2531         * mlib-tgt-specific-xi.adb (Get_Target_Prefix): Insert the appropriate
2532         tool prefix for AVR and PowerPC 55xx targets.
2533
2534 2009-04-10  Robert Dewar  <dewar@adacore.com>
2535
2536         * sem_warn.adb (Within_Postcondition): New function
2537         (Check_Unset_Reference): Use Within_Postcondition to stop bad warning
2538
2539 2009-04-10  Robert Dewar  <dewar@adacore.com>
2540
2541         * sem_warn.adb: Minor reformatting
2542
2543         * make.adb: Minor reformatting.
2544
2545 2009-04-10  Gary Dismukes  <dismukes@adacore.com>
2546
2547         * exp_ch7.adb (Find_Final_List): When creating a finalization-chain
2548         entity and the scope is a subprogram, retrieve the Sloc of the
2549         subprogram's body rather than using the sloc of the spec, for better
2550         line-stepping behavior in gdb.
2551         (Wrap_Transient_Declaration): For the Sloc of nodes created with a list
2552         controller, use the Sloc of the first declaration of the containing list
2553         rather than that of the node that triggered creation of the list
2554         controller.
2555
2556 2009-04-10  Vincent Celier  <celier@adacore.com>
2557
2558         * prj-nmsc.adb (Check_Naming_Schemes): Initialize local variable Casing
2559         to avoid gcc warning.
2560
2561 2009-04-10  Robert Dewar  <dewar@adacore.com>
2562
2563         * g-comlin.adb: Add ??? comment
2564
2565 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2566
2567         * sem_warn.adb (Check_Unused_Withs): Do not emit message about
2568         unreferenced entities for a package with no visible declarations.
2569
2570 2009-04-10  Robert Dewar  <dewar@adacore.com>
2571
2572         * exp_ch9.adb: Minor reformatting
2573
2574 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2575
2576         * sem_prag.adb: Minor reformatting
2577
2578 2009-04-10  Vincent Celier  <celier@adacore.com>
2579
2580         * prj-nmsc.adb:
2581         (Check_Library_Attributes): For a project qualified as a library project
2582         that is not a library project, indicate in the error message which
2583         attributes are missing (Library_Dir and/or Library_Name).
2584
2585 2009-04-10  Bob Duff  <duff@adacore.com>
2586
2587         * exp_ch5.adb, exp_ch9.adb: Avoid use of No_Position in Sloc of
2588         generated nodes, because it might confuse various circuits in the FE.
2589
2590 2009-04-10  Ed Schonberg  <schonberg@adacore.com>
2591
2592         * sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
2593         of pragma. It will be recopied and analyzed when used in call to
2594         Create_Task.
2595
2596         * sem_res.adb (Resolve_Call): Clarify use of secondary stack within
2597         initialization operations and recognize use of it in procedure calls
2598         within init_procs.
2599
2600         * exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
2601         argument, because it may have side-effects.
2602
2603         * exp_ch2.adb: Remove obsolete comments on default functions
2604
2605 2009-04-10  Jose Ruiz  <ruiz@adacore.com>
2606
2607         * adaint.c (RTX section): Do for RTX the same thing as we do for
2608         Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
2609
2610 2009-04-10  Robert Dewar  <dewar@adacore.com>
2611
2612         * sem_aux.ads, sem_aux.adb (Nearest_Current_Scope): New function.
2613
2614         * sem_res.adb (Resolve_Call): Fix test for
2615         Suppress_Value_Tracking_On_Call (was wrong for the case of a call from
2616         a non-dynamic scope).
2617
2618 2009-04-10  Robert Dewar  <dewar@adacore.com>
2619
2620         * make.adb: Add comment.
2621         Minor reformatting
2622
2623 2009-04-10  Nicolas Setton  <setton@adacore.com>
2624
2625         * s-osprim-darwin.adb: New file.
2626
2627         * s-osinte-darwin.adb, s-osinte-darwin.ads: Fix binding to timespec.
2628
2629 2009-04-10  Thomas Quinot  <quinot@adacore.com>
2630
2631         * g-socket.ads: Add comment clarifying alignment requirement for Fd_Set
2632
2633 2009-04-09  Nick Clifton  <nickc@redhat.com>
2634
2635         * adadecode.h: Change copyright header to refer to version
2636         3 of the GNU General Public License with version 3.1 of the
2637         GCC Runtime Library Exception and to point readers at the
2638         COPYING3 and COPYING3.RUNTIME files and the FSF's license web
2639         page.
2640         * 9drpc.adb: Likewise.
2641         * a-assert.adb: Likewise.
2642         * a-astaco.adb: Likewise.
2643         * a-calari.adb: Likewise.
2644         * a-calcon.adb: Likewise.
2645         * a-calcon.ads: Likewise.
2646         * a-caldel.ads: Likewise.
2647         * a-calend-vms.adb: Likewise.
2648         * a-calend-vms.ads: Likewise.
2649         * a-calend.adb: Likewise.
2650         * a-calend.ads: Likewise.
2651         * a-calfor.adb: Likewise.
2652         * a-catizo.adb: Likewise.
2653         * a-cdlili.adb: Likewise.
2654         * a-cdlili.ads: Likewise.
2655         * a-cgaaso.adb: Likewise.
2656         * a-cgaaso.ads: Likewise.
2657         * a-cgarso.adb: Likewise.
2658         * a-cgcaso.adb: Likewise.
2659         * a-chacon.adb: Likewise.
2660         * a-chacon.ads: Likewise.
2661         * a-chahan.adb: Likewise.
2662         * a-chahan.ads: Likewise.
2663         * a-chlat9.ads: Likewise.
2664         * a-chtgke.adb: Likewise.
2665         * a-chtgke.ads: Likewise.
2666         * a-chtgop.adb: Likewise.
2667         * a-chtgop.ads: Likewise.
2668         * a-chzla1.ads: Likewise.
2669         * a-chzla9.ads: Likewise.
2670         * a-cidlli.adb: Likewise.
2671         * a-cidlli.ads: Likewise.
2672         * a-cihama.adb: Likewise.
2673         * a-cihama.ads: Likewise.
2674         * a-cihase.adb: Likewise.
2675         * a-cihase.ads: Likewise.
2676         * a-ciorma.adb: Likewise.
2677         * a-ciorma.ads: Likewise.
2678         * a-ciormu.adb: Likewise.
2679         * a-ciormu.ads: Likewise.
2680         * a-ciorse.adb: Likewise.
2681         * a-ciorse.ads: Likewise.
2682         * a-clrefi.adb: Likewise.
2683         * a-clrefi.ads: Likewise.
2684         * a-cohama.adb: Likewise.
2685         * a-cohama.ads: Likewise.
2686         * a-cohase.adb: Likewise.
2687         * a-cohase.ads: Likewise.
2688         * a-cohata.ads: Likewise.
2689         * a-coinve.adb: Likewise.
2690         * a-coinve.ads: Likewise.
2691         * a-colien.adb: Likewise.
2692         * a-colien.ads: Likewise.
2693         * a-colire.adb: Likewise.
2694         * a-colire.ads: Likewise.
2695         * a-comlin.adb: Likewise.
2696         * a-comlin.ads: Likewise.
2697         * a-convec.adb: Likewise.
2698         * a-convec.ads: Likewise.
2699         * a-coorma.adb: Likewise.
2700         * a-coorma.ads: Likewise.
2701         * a-coormu.adb: Likewise.
2702         * a-coormu.ads: Likewise.
2703         * a-coorse.adb: Likewise.
2704         * a-coorse.ads: Likewise.
2705         * a-coprnu.adb: Likewise.
2706         * a-coprnu.ads: Likewise.
2707         * a-crbltr.ads: Likewise.
2708         * a-crbtgk.adb: Likewise.
2709         * a-crbtgk.ads: Likewise.
2710         * a-crbtgo.adb: Likewise.
2711         * a-crbtgo.ads: Likewise.
2712         * a-crdlli.adb: Likewise.
2713         * a-crdlli.ads: Likewise.
2714         * a-cwila1.ads: Likewise.
2715         * a-cwila9.ads: Likewise.
2716         * a-decima.adb: Likewise.
2717         * a-decima.ads: Likewise.
2718         * a-diocst.adb: Likewise.
2719         * a-diocst.ads: Likewise.
2720         * a-direct.adb: Likewise.
2721         * a-direct.ads: Likewise.
2722         * a-direio.adb: Likewise.
2723         * a-direio.ads: Likewise.
2724         * a-dirval-mingw.adb: Likewise.
2725         * a-dirval-vms.adb: Likewise.
2726         * a-dirval.adb: Likewise.
2727         * a-dirval.ads: Likewise.
2728         * a-dynpri.adb: Likewise.
2729         * a-einuoc.adb: Likewise.
2730         * a-einuoc.ads: Likewise.
2731         * a-elchha.adb: Likewise.
2732         * a-elchha.ads: Likewise.
2733         * a-envvar.adb: Likewise.
2734         * a-excach.adb: Likewise.
2735         * a-except-2005.adb: Likewise.
2736         * a-except-2005.ads: Likewise.
2737         * a-except.adb: Likewise.
2738         * a-except.ads: Likewise.
2739         * a-excpol-abort.adb: Likewise.
2740         * a-excpol.adb: Likewise.
2741         * a-exctra.adb: Likewise.
2742         * a-exctra.ads: Likewise.
2743         * a-exetim-mingw.adb: Likewise.
2744         * a-exetim-mingw.ads: Likewise.
2745         * a-exexda.adb: Likewise.
2746         * a-exexpr-gcc.adb: Likewise.
2747         * a-exexpr.adb: Likewise.
2748         * a-exextr.adb: Likewise.
2749         * a-exstat.adb: Likewise.
2750         * a-filico.adb: Likewise.
2751         * a-filico.ads: Likewise.
2752         * a-finali.adb: Likewise.
2753         * a-finali.ads: Likewise.
2754         * a-interr.ads: Likewise.
2755         * a-intnam-aix.ads: Likewise.
2756         * a-intnam-darwin.ads: Likewise.
2757         * a-intnam-dummy.ads: Likewise.
2758         * a-intnam-freebsd.ads: Likewise.
2759         * a-intnam-hpux.ads: Likewise.
2760         * a-intnam-irix.ads: Likewise.
2761         * a-intnam-linux.ads: Likewise.
2762         * a-intnam-lynxos.ads: Likewise.
2763         * a-intnam-mingw.ads: Likewise.
2764         * a-intnam-rtems.ads: Likewise.
2765         * a-intnam-solaris.ads: Likewise.
2766         * a-intnam-tru64.ads: Likewise.
2767         * a-intnam-vms.ads: Likewise.
2768         * a-intnam-vxworks.ads: Likewise.
2769         * a-intsig.adb: Likewise.
2770         * a-intsig.ads: Likewise.
2771         * a-ngcefu.adb: Likewise.
2772         * a-ngcoar.adb: Likewise.
2773         * a-ngcoty.adb: Likewise.
2774         * a-ngcoty.ads: Likewise.
2775         * a-ngelfu.adb: Likewise.
2776         * a-ngrear.adb: Likewise.
2777         * a-ngrear.ads: Likewise.
2778         * a-nudira.adb: Likewise.
2779         * a-nudira.ads: Likewise.
2780         * a-nuflra.adb: Likewise.
2781         * a-nuflra.ads: Likewise.
2782         * a-numaux-darwin.adb: Likewise.
2783         * a-numaux-darwin.ads: Likewise.
2784         * a-numaux-libc-x86.ads: Likewise.
2785         * a-numaux-vxworks.ads: Likewise.
2786         * a-numaux-x86.adb: Likewise.
2787         * a-numaux-x86.ads: Likewise.
2788         * a-numaux.ads: Likewise.
2789         * a-rbtgso.adb: Likewise.
2790         * a-rbtgso.ads: Likewise.
2791         * a-reatim.ads: Likewise.
2792         * a-retide.adb: Likewise.
2793         * a-retide.ads: Likewise.
2794         * a-rttiev.adb: Likewise.
2795         * a-rttiev.ads: Likewise.
2796         * a-secain.adb: Likewise.
2797         * a-secain.ads: Likewise.
2798         * a-sequio.adb: Likewise.
2799         * a-sequio.ads: Likewise.
2800         * a-shcain.adb: Likewise.
2801         * a-shcain.ads: Likewise.
2802         * a-siocst.adb: Likewise.
2803         * a-siocst.ads: Likewise.
2804         * a-slcain.adb: Likewise.
2805         * a-slcain.ads: Likewise.
2806         * a-ssicst.adb: Likewise.
2807         * a-ssicst.ads: Likewise.
2808         * a-stboha.adb: Likewise.
2809         * a-stmaco.ads: Likewise.
2810         * a-storio.adb: Likewise.
2811         * a-strbou.adb: Likewise.
2812         * a-strbou.ads: Likewise.
2813         * a-stream.ads: Likewise.
2814         * a-strfix.adb: Likewise.
2815         * a-strhas.adb: Likewise.
2816         * a-strmap.adb: Likewise.
2817         * a-strmap.ads: Likewise.
2818         * a-strsea.adb: Likewise.
2819         * a-strsea.ads: Likewise.
2820         * a-strsup.adb: Likewise.
2821         * a-strsup.ads: Likewise.
2822         * a-strunb.adb: Likewise.
2823         * a-strunb.ads: Likewise.
2824         * a-ststio.adb: Likewise.
2825         * a-ststio.ads: Likewise.
2826         * a-stunau.adb: Likewise.
2827         * a-stunau.ads: Likewise.
2828         * a-stunha.adb: Likewise.
2829         * a-stwibo.adb: Likewise.
2830         * a-stwibo.ads: Likewise.
2831         * a-stwifi.adb: Likewise.
2832         * a-stwiha.adb: Likewise.
2833         * a-stwima.adb: Likewise.
2834         * a-stwima.ads: Likewise.
2835         * a-stwise.adb: Likewise.
2836         * a-stwise.ads: Likewise.
2837         * a-stwisu.adb: Likewise.
2838         * a-stwisu.ads: Likewise.
2839         * a-stwiun.adb: Likewise.
2840         * a-stwiun.ads: Likewise.
2841         * a-stzbou.adb: Likewise.
2842         * a-stzbou.ads: Likewise.
2843         * a-stzfix.adb: Likewise.
2844         * a-stzhas.adb: Likewise.
2845         * a-stzmap.adb: Likewise.
2846         * a-stzmap.ads: Likewise.
2847         * a-stzsea.adb: Likewise.
2848         * a-stzsea.ads: Likewise.
2849         * a-stzsup.adb: Likewise.
2850         * a-stzsup.ads: Likewise.
2851         * a-stzunb.adb: Likewise.
2852         * a-stzunb.ads: Likewise.
2853         * a-suteio.adb: Likewise.
2854         * a-suteio.ads: Likewise.
2855         * a-swbwha.adb: Likewise.
2856         * a-swmwco.ads: Likewise.
2857         * a-swunau.adb: Likewise.
2858         * a-swunau.ads: Likewise.
2859         * a-swuwha.adb: Likewise.
2860         * a-swuwti.adb: Likewise.
2861         * a-swuwti.ads: Likewise.
2862         * a-sytaco.adb: Likewise.
2863         * a-sytaco.ads: Likewise.
2864         * a-szbzha.adb: Likewise.
2865         * a-szmzco.ads: Likewise.
2866         * a-szunau.adb: Likewise.
2867         * a-szunau.ads: Likewise.
2868         * a-szuzha.adb: Likewise.
2869         * a-szuzti.adb: Likewise.
2870         * a-szuzti.ads: Likewise.
2871         * a-tags.adb: Likewise.
2872         * a-tags.ads: Likewise.
2873         * a-tasatt.ads: Likewise.
2874         * a-taside.adb: Likewise.
2875         * a-taside.ads: Likewise.
2876         * a-taster.adb: Likewise.
2877         * a-teioed.adb: Likewise.
2878         * a-teioed.ads: Likewise.
2879         * a-textio.adb: Likewise.
2880         * a-textio.ads: Likewise.
2881         * a-tiboio.adb: Likewise.
2882         * a-ticoau.adb: Likewise.
2883         * a-ticoau.ads: Likewise.
2884         * a-ticoio.adb: Likewise.
2885         * a-ticoio.ads: Likewise.
2886         * a-tideau.adb: Likewise.
2887         * a-tideau.ads: Likewise.
2888         * a-tideio.adb: Likewise.
2889         * a-tideio.ads: Likewise.
2890         * a-tienau.adb: Likewise.
2891         * a-tienau.ads: Likewise.
2892         * a-tienio.adb: Likewise.
2893         * a-tienio.ads: Likewise.
2894         * a-tifiio.adb: Likewise.
2895         * a-tifiio.ads: Likewise.
2896         * a-tiflau.adb: Likewise.
2897         * a-tiflau.ads: Likewise.
2898         * a-tiflio.adb: Likewise.
2899         * a-tiflio.ads: Likewise.
2900         * a-tigeau.adb: Likewise.
2901         * a-tigeau.ads: Likewise.
2902         * a-tiinau.adb: Likewise.
2903         * a-tiinau.ads: Likewise.
2904         * a-tiinio.adb: Likewise.
2905         * a-tiinio.ads: Likewise.
2906         * a-timoau.adb: Likewise.
2907         * a-timoau.ads: Likewise.
2908         * a-timoio.adb: Likewise.
2909         * a-timoio.ads: Likewise.
2910         * a-tiocst.adb: Likewise.
2911         * a-tiocst.ads: Likewise.
2912         * a-titest.adb: Likewise.
2913         * a-wichun.adb: Likewise.
2914         * a-wichun.ads: Likewise.
2915         * a-witeio.adb: Likewise.
2916         * a-witeio.ads: Likewise.
2917         * a-wtcoau.adb: Likewise.
2918         * a-wtcoau.ads: Likewise.
2919         * a-wtcoio.adb: Likewise.
2920         * a-wtcstr.adb: Likewise.
2921         * a-wtcstr.ads: Likewise.
2922         * a-wtdeau.adb: Likewise.
2923         * a-wtdeau.ads: Likewise.
2924         * a-wtdeio.adb: Likewise.
2925         * a-wtdeio.ads: Likewise.
2926         * a-wtedit.adb: Likewise.
2927         * a-wtedit.ads: Likewise.
2928         * a-wtenau.adb: Likewise.
2929         * a-wtenau.ads: Likewise.
2930         * a-wtenio.adb: Likewise.
2931         * a-wtenio.ads: Likewise.
2932         * a-wtfiio.adb: Likewise.
2933         * a-wtfiio.ads: Likewise.
2934         * a-wtflau.adb: Likewise.
2935         * a-wtflau.ads: Likewise.
2936         * a-wtflio.adb: Likewise.
2937         * a-wtflio.ads: Likewise.
2938         * a-wtgeau.adb: Likewise.
2939         * a-wtgeau.ads: Likewise.
2940         * a-wtinau.adb: Likewise.
2941         * a-wtinau.ads: Likewise.
2942         * a-wtinio.adb: Likewise.
2943         * a-wtmoau.adb: Likewise.
2944         * a-wtmoau.ads: Likewise.
2945         * a-wtmoio.adb: Likewise.
2946         * a-wtmoio.ads: Likewise.
2947         * a-wttest.adb: Likewise.
2948         * a-wwboio.adb: Likewise.
2949         * a-zchuni.adb: Likewise.
2950         * a-zchuni.ads: Likewise.
2951         * a-ztcoau.adb: Likewise.
2952         * a-ztcoau.ads: Likewise.
2953         * a-ztcoio.adb: Likewise.
2954         * a-ztcstr.adb: Likewise.
2955         * a-ztcstr.ads: Likewise.
2956         * a-ztdeau.adb: Likewise.
2957         * a-ztdeau.ads: Likewise.
2958         * a-ztdeio.adb: Likewise.
2959         * a-ztdeio.ads: Likewise.
2960         * a-ztedit.adb: Likewise.
2961         * a-ztedit.ads: Likewise.
2962         * a-ztenau.adb: Likewise.
2963         * a-ztenau.ads: Likewise.
2964         * a-ztenio.adb: Likewise.
2965         * a-ztenio.ads: Likewise.
2966         * a-ztexio.adb: Likewise.
2967         * a-ztexio.ads: Likewise.
2968         * a-ztfiio.adb: Likewise.
2969         * a-ztfiio.ads: Likewise.
2970         * a-ztflau.adb: Likewise.
2971         * a-ztflau.ads: Likewise.
2972         * a-ztflio.adb: Likewise.
2973         * a-ztflio.ads: Likewise.
2974         * a-ztgeau.adb: Likewise.
2975         * a-ztgeau.ads: Likewise.
2976         * a-ztinau.adb: Likewise.
2977         * a-ztinau.ads: Likewise.
2978         * a-ztinio.adb: Likewise.
2979         * a-ztmoau.adb: Likewise.
2980         * a-ztmoau.ads: Likewise.
2981         * a-ztmoio.adb: Likewise.
2982         * a-ztmoio.ads: Likewise.
2983         * a-zttest.adb: Likewise.
2984         * a-zzboio.adb: Likewise.
2985         * adadecode.c: Likewise.
2986         * adaint.c: Likewise.
2987         * adaint.h: Likewise.
2988         * alloc.ads: Likewise.
2989         * argv.c: Likewise.
2990         * arit64.c: Likewise.
2991         * atree.adb: Likewise.
2992         * atree.ads: Likewise.
2993         * aux-io.c: Likewise.
2994         * cal.c: Likewise.
2995         * casing.adb: Likewise.
2996         * casing.ads: Likewise.
2997         * cio.c: Likewise.
2998         * csets.adb: Likewise.
2999         * csets.ads: Likewise.
3000         * cstreams.c: Likewise.
3001         * ctrl_c.c: Likewise.
3002         * debug.adb: Likewise.
3003         * debug.ads: Likewise.
3004         * dec.ads: Likewise.
3005         * einfo.adb: Likewise.
3006         * einfo.ads: Likewise.
3007         * elists.adb: Likewise.
3008         * elists.ads: Likewise.
3009         * env.c: Likewise.
3010         * env.h: Likewise.
3011         * errno.c: Likewise.
3012         * exit.c: Likewise.
3013         * fe.h: Likewise.
3014         * final.c: Likewise.
3015         * fname.adb: Likewise.
3016         * fname.ads: Likewise.
3017         * g-allein.ads: Likewise.
3018         * g-alleve.adb: Likewise.
3019         * g-alleve.ads: Likewise.
3020         * g-altcon.adb: Likewise.
3021         * g-altcon.ads: Likewise.
3022         * g-altive.ads: Likewise.
3023         * g-alveop.adb: Likewise.
3024         * g-alveop.ads: Likewise.
3025         * g-alvety.ads: Likewise.
3026         * g-alvevi.ads: Likewise.
3027         * g-arrspl.adb: Likewise.
3028         * g-arrspl.ads: Likewise.
3029         * g-calend.ads: Likewise.
3030         * g-comlin.adb: Likewise.
3031         * g-debpoo.adb: Likewise.
3032         * g-debpoo.ads: Likewise.
3033         * g-eacodu-vms.adb: Likewise.
3034         * g-eacodu.adb: Likewise.
3035         * g-excact.adb: Likewise.
3036         * g-excact.ads: Likewise.
3037         * g-locfil.adb: Likewise.
3038         * g-os_lib.ads: Likewise.
3039         * g-rannum.adb: Likewise.
3040         * g-rannum.ads: Likewise.
3041         * g-regist.adb: Likewise.
3042         * g-regist.ads: Likewise.
3043         * g-signal.adb: Likewise.
3044         * g-signal.ads: Likewise.
3045         * g-soccon.ads: Likewise.
3046         * g-string.adb: Likewise.
3047         * g-string.ads: Likewise.
3048         * g-strspl.ads: Likewise.
3049         * g-timsta.adb: Likewise.
3050         * g-timsta.ads: Likewise.
3051         * g-trasym-vms-alpha.adb: Likewise.
3052         * g-trasym-vms-ia64.adb: Likewise.
3053         * g-utf_32.adb: Likewise.
3054         * g-utf_32.ads: Likewise.
3055         * g-wistsp.ads: Likewise.
3056         * g-zstspl.ads: Likewise.
3057         * gmem.c: Likewise.
3058         * gnatvsn.adb: Likewise.
3059         * gnatvsn.ads: Likewise.
3060         * gsocket.h: Likewise.
3061         * hostparm.ads: Likewise.
3062         * i-c.adb: Likewise.
3063         * i-cexten.ads: Likewise.
3064         * i-cobol.adb: Likewise.
3065         * i-cobol.ads: Likewise.
3066         * i-cpoint.adb: Likewise.
3067         * i-cpoint.ads: Likewise.
3068         * i-cpp.adb: Likewise.
3069         * i-cpp.ads: Likewise.
3070         * i-cstrea-vms.adb: Likewise.
3071         * i-cstrea.adb: Likewise.
3072         * i-cstrea.ads: Likewise.
3073         * i-cstrin.adb: Likewise.
3074         * i-cstrin.ads: Likewise.
3075         * i-forbla-darwin.adb: Likewise.
3076         * i-forbla-unimplemented.ads: Likewise.
3077         * i-forbla.adb: Likewise.
3078         * i-forbla.ads: Likewise.
3079         * i-forlap.ads: Likewise.
3080         * i-fortra.adb: Likewise.
3081         * i-pacdec.adb: Likewise.
3082         * i-pacdec.ads: Likewise.
3083         * i-vxwoio.adb: Likewise.
3084         * i-vxwoio.ads: Likewise.
3085         * indepsw-aix.adb: Likewise.
3086         * indepsw-gnu.adb: Likewise.
3087         * indepsw-mingw.adb: Likewise.
3088         * indepsw.adb: Likewise.
3089         * indepsw.ads: Likewise.
3090         * init.c: Likewise.
3091         * initialize.c: Likewise.
3092         * interfac.ads: Likewise.
3093         * krunch.adb: Likewise.
3094         * krunch.ads: Likewise.
3095         * lib-list.adb: Likewise.
3096         * lib-sort.adb: Likewise.
3097         * lib.adb: Likewise.
3098         * lib.ads: Likewise.
3099         * link.c: Likewise.
3100         * math_lib.adb: Likewise.
3101         * memtrack.adb: Likewise.
3102         * mingw32.h: Likewise.
3103         * mkdir.c: Likewise.
3104         * namet-sp.adb: Likewise.
3105         * namet-sp.ads: Likewise.
3106         * namet.adb: Likewise.
3107         * namet.ads: Likewise.
3108         * nlists.adb: Likewise.
3109         * nlists.ads: Likewise.
3110         * opt.adb: Likewise.
3111         * opt.ads: Likewise.
3112         * output.adb: Likewise.
3113         * output.ads: Likewise.
3114         * raise-gcc.c: Likewise.
3115         * raise.c: Likewise.
3116         * raise.h: Likewise.
3117         * repinfo.adb: Likewise.
3118         * repinfo.ads: Likewise.
3119         * repinfo.h: Likewise.
3120         * rident.ads: Likewise.
3121         * s-addima.adb: Likewise.
3122         * s-addima.ads: Likewise.
3123         * s-addope.adb: Likewise.
3124         * s-addope.ads: Likewise.
3125         * s-arit64.adb: Likewise.
3126         * s-arit64.ads: Likewise.
3127         * s-assert.adb: Likewise.
3128         * s-assert.ads: Likewise.
3129         * s-asthan-vms-alpha.adb: Likewise.
3130         * s-asthan.adb: Likewise.
3131         * s-asthan.ads: Likewise.
3132         * s-atacco.adb: Likewise.
3133         * s-atacco.ads: Likewise.
3134         * s-auxdec-empty.adb: Likewise.
3135         * s-auxdec-empty.ads: Likewise.
3136         * s-auxdec-vms_64.ads: Likewise.
3137         * s-auxdec.adb: Likewise.
3138         * s-auxdec.ads: Likewise.
3139         * s-bitops.adb: Likewise.
3140         * s-bitops.ads: Likewise.
3141         * s-boarop.ads: Likewise.
3142         * s-carsi8.adb: Likewise.
3143         * s-carsi8.ads: Likewise.
3144         * s-carun8.adb: Likewise.
3145         * s-carun8.ads: Likewise.
3146         * s-casi16.adb: Likewise.
3147         * s-casi16.ads: Likewise.
3148         * s-casi32.adb: Likewise.
3149         * s-casi32.ads: Likewise.
3150         * s-casi64.adb: Likewise.
3151         * s-casi64.ads: Likewise.
3152         * s-casuti.ads: Likewise.
3153         * s-caun16.adb: Likewise.
3154         * s-caun16.ads: Likewise.
3155         * s-caun32.adb: Likewise.
3156         * s-caun32.ads: Likewise.
3157         * s-caun64.adb: Likewise.
3158         * s-caun64.ads: Likewise.
3159         * s-chepoo.ads: Likewise.
3160         * s-crc32.adb: Likewise.
3161         * s-crc32.ads: Likewise.
3162         * s-crtl.ads: Likewise.
3163         * s-direio.adb: Likewise.
3164         * s-direio.ads: Likewise.
3165         * s-dsaser.ads: Likewise.
3166         * s-except.adb: Likewise.
3167         * s-except.ads: Likewise.
3168         * s-exctab.adb: Likewise.
3169         * s-exctab.ads: Likewise.
3170         * s-exnint.adb: Likewise.
3171         * s-exnint.ads: Likewise.
3172         * s-exnllf.adb: Likewise.
3173         * s-exnllf.ads: Likewise.
3174         * s-exnlli.adb: Likewise.
3175         * s-exnlli.ads: Likewise.
3176         * s-expint.adb: Likewise.
3177         * s-expint.ads: Likewise.
3178         * s-explli.adb: Likewise.
3179         * s-explli.ads: Likewise.
3180         * s-expllu.adb: Likewise.
3181         * s-expllu.ads: Likewise.
3182         * s-expmod.adb: Likewise.
3183         * s-expmod.ads: Likewise.
3184         * s-expuns.adb: Likewise.
3185         * s-expuns.ads: Likewise.
3186         * s-fatflt.ads: Likewise.
3187         * s-fatgen.adb: Likewise.
3188         * s-fatgen.ads: Likewise.
3189         * s-fatlfl.ads: Likewise.
3190         * s-fatllf.ads: Likewise.
3191         * s-fatsfl.ads: Likewise.
3192         * s-ficobl.ads: Likewise.
3193         * s-fileio.adb: Likewise.
3194         * s-fileio.ads: Likewise.
3195         * s-filofl.ads: Likewise.
3196         * s-finimp.adb: Likewise.
3197         * s-finimp.ads: Likewise.
3198         * s-finroo.adb: Likewise.
3199         * s-finroo.ads: Likewise.
3200         * s-fishfl.ads: Likewise.
3201         * s-fore.adb: Likewise.
3202         * s-fore.ads: Likewise.
3203         * s-fvadfl.ads: Likewise.
3204         * s-fvaffl.ads: Likewise.
3205         * s-fvagfl.ads: Likewise.
3206         * s-gearop.adb: Likewise.
3207         * s-gearop.ads: Likewise.
3208         * s-gecobl.adb: Likewise.
3209         * s-gecobl.ads: Likewise.
3210         * s-gecola.adb: Likewise.
3211         * s-gecola.ads: Likewise.
3212         * s-gerebl.adb: Likewise.
3213         * s-gerebl.ads: Likewise.
3214         * s-gerela.adb: Likewise.
3215         * s-gerela.ads: Likewise.
3216         * s-geveop.adb: Likewise.
3217         * s-geveop.ads: Likewise.
3218         * s-gloloc.adb: Likewise.
3219         * s-gloloc.ads: Likewise.
3220         * s-hibaen.ads: Likewise.
3221         * s-imenne.adb: Likewise.
3222         * s-imenne.ads: Likewise.
3223         * s-imgbiu.adb: Likewise.
3224         * s-imgbiu.ads: Likewise.
3225         * s-imgboo.adb: Likewise.
3226         * s-imgboo.ads: Likewise.
3227         * s-imgcha.adb: Likewise.
3228         * s-imgcha.ads: Likewise.
3229         * s-imgdec.adb: Likewise.
3230         * s-imgdec.ads: Likewise.
3231         * s-imgenu.adb: Likewise.
3232         * s-imgenu.ads: Likewise.
3233         * s-imgint.adb: Likewise.
3234         * s-imgint.ads: Likewise.
3235         * s-imgllb.adb: Likewise.
3236         * s-imgllb.ads: Likewise.
3237         * s-imglld.adb: Likewise.
3238         * s-imglld.ads: Likewise.
3239         * s-imglli.adb: Likewise.
3240         * s-imglli.ads: Likewise.
3241         * s-imgllu.adb: Likewise.
3242         * s-imgllu.ads: Likewise.
3243         * s-imgllw.adb: Likewise.
3244         * s-imgllw.ads: Likewise.
3245         * s-imgrea.adb: Likewise.
3246         * s-imgrea.ads: Likewise.
3247         * s-imguns.adb: Likewise.
3248         * s-imguns.ads: Likewise.
3249         * s-imgwch.adb: Likewise.
3250         * s-imgwch.ads: Likewise.
3251         * s-imgwiu.adb: Likewise.
3252         * s-imgwiu.ads: Likewise.
3253         * s-inmaop-dummy.adb: Likewise.
3254         * s-inmaop-vms.adb: Likewise.
3255         * s-inmaop.ads: Likewise.
3256         * s-interr-hwint.adb: Likewise.
3257         * s-interr-sigaction.adb: Likewise.
3258         * s-interr-vms.adb: Likewise.
3259         * s-interr.adb: Likewise.
3260         * s-interr.ads: Likewise.
3261         * s-intman-dummy.adb: Likewise.
3262         * s-intman-mingw.adb: Likewise.
3263         * s-intman-posix.adb: Likewise.
3264         * s-intman-solaris.adb: Likewise.
3265         * s-intman-vms.adb: Likewise.
3266         * s-intman-vms.ads: Likewise.
3267         * s-intman-vxworks.adb: Likewise.
3268         * s-intman-vxworks.ads: Likewise.
3269         * s-intman.ads: Likewise.
3270         * s-io.adb: Likewise.
3271         * s-io.ads: Likewise.
3272         * s-linux-alpha.ads: Likewise.
3273         * s-linux-hppa.ads: Likewise.
3274         * s-linux.ads: Likewise.
3275         * s-maccod.ads: Likewise.
3276         * s-mantis.adb: Likewise.
3277         * s-mantis.ads: Likewise.
3278         * s-mastop-irix.adb: Likewise.
3279         * s-mastop.adb: Likewise.
3280         * s-mastop.ads: Likewise.
3281         * s-memcop.ads: Likewise.
3282         * s-memory-mingw.adb: Likewise.
3283         * s-memory.adb: Likewise.
3284         * s-memory.ads: Likewise.
3285         * s-os_lib.ads: Likewise.
3286         * s-oscons-tmplt.c: Likewise.
3287         * s-osinte-aix.adb: Likewise.
3288         * s-osinte-darwin.adb: Likewise.
3289         * s-osinte-freebsd.adb: Likewise.
3290         * s-osinte-irix.adb: Likewise.
3291         * s-osinte-lynxos-3.adb: Likewise.
3292         * s-osinte-rtems.ads: Likewise.
3293         * s-osinte-tru64.adb: Likewise.
3294         * s-osinte-vxworks-kernel.adb: Likewise.
3295         * s-osinte-vxworks.adb: Likewise.
3296         * s-osprim-mingw.adb: Likewise.
3297         * s-osprim-posix.adb: Likewise.
3298         * s-osprim-solaris.adb: Likewise.
3299         * s-osprim-unix.adb: Likewise.
3300         * s-osprim-vms.adb: Likewise.
3301         * s-osprim-vms.ads: Likewise.
3302         * s-osprim-vxworks.adb: Likewise.
3303         * s-osprim.ads: Likewise.
3304         * s-pack03.adb: Likewise.
3305         * s-pack03.ads: Likewise.
3306         * s-pack05.adb: Likewise.
3307         * s-pack05.ads: Likewise.
3308         * s-pack06.adb: Likewise.
3309         * s-pack06.ads: Likewise.
3310         * s-pack07.adb: Likewise.
3311         * s-pack07.ads: Likewise.
3312         * s-pack09.adb: Likewise.
3313         * s-pack09.ads: Likewise.
3314         * s-pack10.adb: Likewise.
3315         * s-pack10.ads: Likewise.
3316         * s-pack11.adb: Likewise.
3317         * s-pack11.ads: Likewise.
3318         * s-pack12.adb: Likewise.
3319         * s-pack12.ads: Likewise.
3320         * s-pack13.adb: Likewise.
3321         * s-pack13.ads: Likewise.
3322         * s-pack14.adb: Likewise.
3323         * s-pack14.ads: Likewise.
3324         * s-pack15.adb: Likewise.
3325         * s-pack15.ads: Likewise.
3326         * s-pack17.adb: Likewise.
3327         * s-pack17.ads: Likewise.
3328         * s-pack18.adb: Likewise.
3329         * s-pack18.ads: Likewise.
3330         * s-pack19.adb: Likewise.
3331         * s-pack19.ads: Likewise.
3332         * s-pack20.adb: Likewise.
3333         * s-pack20.ads: Likewise.
3334         * s-pack21.adb: Likewise.
3335         * s-pack21.ads: Likewise.
3336         * s-pack22.adb: Likewise.
3337         * s-pack22.ads: Likewise.
3338         * s-pack23.adb: Likewise.
3339         * s-pack23.ads: Likewise.
3340         * s-pack24.adb: Likewise.
3341         * s-pack24.ads: Likewise.
3342         * s-pack25.adb: Likewise.
3343         * s-pack25.ads: Likewise.
3344         * s-pack26.adb: Likewise.
3345         * s-pack26.ads: Likewise.
3346         * s-pack27.adb: Likewise.
3347         * s-pack27.ads: Likewise.
3348         * s-pack28.adb: Likewise.
3349         * s-pack28.ads: Likewise.
3350         * s-pack29.adb: Likewise.
3351         * s-pack29.ads: Likewise.
3352         * s-pack30.adb: Likewise.
3353         * s-pack30.ads: Likewise.
3354         * s-pack31.adb: Likewise.
3355         * s-pack31.ads: Likewise.
3356         * s-pack33.adb: Likewise.
3357         * s-pack33.ads: Likewise.
3358         * s-pack34.adb: Likewise.
3359         * s-pack34.ads: Likewise.
3360         * s-pack35.adb: Likewise.
3361         * s-pack35.ads: Likewise.
3362         * s-pack36.adb: Likewise.
3363         * s-pack36.ads: Likewise.
3364         * s-pack37.adb: Likewise.
3365         * s-pack37.ads: Likewise.
3366         * s-pack38.adb: Likewise.
3367         * s-pack38.ads: Likewise.
3368         * s-pack39.adb: Likewise.
3369         * s-pack39.ads: Likewise.
3370         * s-pack40.adb: Likewise.
3371         * s-pack40.ads: Likewise.
3372         * s-pack41.adb: Likewise.
3373         * s-pack41.ads: Likewise.
3374         * s-pack42.adb: Likewise.
3375         * s-pack42.ads: Likewise.
3376         * s-pack43.adb: Likewise.
3377         * s-pack43.ads: Likewise.
3378         * s-pack44.adb: Likewise.
3379         * s-pack44.ads: Likewise.
3380         * s-pack45.adb: Likewise.
3381         * s-pack45.ads: Likewise.
3382         * s-pack46.adb: Likewise.
3383         * s-pack46.ads: Likewise.
3384         * s-pack47.adb: Likewise.
3385         * s-pack47.ads: Likewise.
3386         * s-pack48.adb: Likewise.
3387         * s-pack48.ads: Likewise.
3388         * s-pack49.adb: Likewise.
3389         * s-pack49.ads: Likewise.
3390         * s-pack50.adb: Likewise.
3391         * s-pack50.ads: Likewise.
3392         * s-pack51.adb: Likewise.
3393         * s-pack51.ads: Likewise.
3394         * s-pack52.adb: Likewise.
3395         * s-pack52.ads: Likewise.
3396         * s-pack53.adb: Likewise.
3397         * s-pack53.ads: Likewise.
3398         * s-pack54.adb: Likewise.
3399         * s-pack54.ads: Likewise.
3400         * s-pack55.adb: Likewise.
3401         * s-pack55.ads: Likewise.
3402         * s-pack56.adb: Likewise.
3403         * s-pack56.ads: Likewise.
3404         * s-pack57.adb: Likewise.
3405         * s-pack57.ads: Likewise.
3406         * s-pack58.adb: Likewise.
3407         * s-pack58.ads: Likewise.
3408         * s-pack59.adb: Likewise.
3409         * s-pack59.ads: Likewise.
3410         * s-pack60.adb: Likewise.
3411         * s-pack60.ads: Likewise.
3412         * s-pack61.adb: Likewise.
3413         * s-pack61.ads: Likewise.
3414         * s-pack62.adb: Likewise.
3415         * s-pack62.ads: Likewise.
3416         * s-pack63.adb: Likewise.
3417         * s-pack63.ads: Likewise.
3418         * s-parame-ae653.ads: Likewise.
3419         * s-parame-hpux.ads: Likewise.
3420         * s-parame-rtems.adb: Likewise.
3421         * s-parame-vms-alpha.ads: Likewise.
3422         * s-parame-vms-ia64.ads: Likewise.
3423         * s-parame-vms-restrict.ads: Likewise.
3424         * s-parame-vxworks.adb: Likewise.
3425         * s-parame-vxworks.ads: Likewise.
3426         * s-parame.adb: Likewise.
3427         * s-parame.ads: Likewise.
3428         * s-parint.adb: Likewise.
3429         * s-parint.ads: Likewise.
3430         * s-pooglo.adb: Likewise.
3431         * s-pooglo.ads: Likewise.
3432         * s-pooloc.adb: Likewise.
3433         * s-pooloc.ads: Likewise.
3434         * s-poosiz.adb: Likewise.
3435         * s-poosiz.ads: Likewise.
3436         * s-powtab.ads: Likewise.
3437         * s-proinf-irix-athread.adb: Likewise.
3438         * s-proinf-irix-athread.ads: Likewise.
3439         * s-proinf.adb: Likewise.
3440         * s-proinf.ads: Likewise.
3441         * s-purexc.ads: Likewise.
3442         * s-rannum.adb: Likewise.
3443         * s-rannum.ads: Likewise.
3444         * s-restri.adb: Likewise.
3445         * s-restri.ads: Likewise.
3446         * s-rident.ads: Likewise.
3447         * s-rpc.adb: Likewise.
3448         * s-rpc.ads: Likewise.
3449         * s-scaval.adb: Likewise.
3450         * s-scaval.ads: Likewise.
3451         * s-secsta.adb: Likewise.
3452         * s-secsta.ads: Likewise.
3453         * s-sequio.adb: Likewise.
3454         * s-sequio.ads: Likewise.
3455         * s-shasto.adb: Likewise.
3456         * s-shasto.ads: Likewise.
3457         * s-soflin.adb: Likewise.
3458         * s-soflin.ads: Likewise.
3459         * s-solita.adb: Likewise.
3460         * s-solita.ads: Likewise.
3461         * s-sopco3.adb: Likewise.
3462         * s-sopco3.ads: Likewise.
3463         * s-sopco4.adb: Likewise.
3464         * s-sopco4.ads: Likewise.
3465         * s-sopco5.adb: Likewise.
3466         * s-sopco5.ads: Likewise.
3467         * s-stache.adb: Likewise.
3468         * s-stache.ads: Likewise.
3469         * s-stalib.adb: Likewise.
3470         * s-stalib.ads: Likewise.
3471         * s-stausa.adb: Likewise.
3472         * s-stausa.ads: Likewise.
3473         * s-stchop-limit.ads: Likewise.
3474         * s-stchop-rtems.adb: Likewise.
3475         * s-stchop-vxworks.adb: Likewise.
3476         * s-stchop.adb: Likewise.
3477         * s-stchop.ads: Likewise.
3478         * s-stoele.adb: Likewise.
3479         * s-stoele.ads: Likewise.
3480         * s-stopoo.adb: Likewise.
3481         * s-stopoo.ads: Likewise.
3482         * s-stratt.adb: Likewise.
3483         * s-stratt.ads: Likewise.
3484         * s-strcom.adb: Likewise.
3485         * s-strcom.ads: Likewise.
3486         * s-string.adb: Likewise.
3487         * s-string.ads: Likewise.
3488         * s-strops.adb: Likewise.
3489         * s-strops.ads: Likewise.
3490         * s-strxdr.adb: Likewise.
3491         * s-ststop.adb: Likewise.
3492         * s-ststop.ads: Likewise.
3493         * s-taasde.adb: Likewise.
3494         * s-taasde.ads: Likewise.
3495         * s-tadeca.adb: Likewise.
3496         * s-tadeca.ads: Likewise.
3497         * s-tadert.adb: Likewise.
3498         * s-tadert.ads: Likewise.
3499         * s-taenca.adb: Likewise.
3500         * s-taenca.ads: Likewise.
3501         * s-taprob.ads: Likewise.
3502         * s-taprop-dummy.adb: Likewise.
3503         * s-taprop-hpux-dce.adb: Likewise.
3504         * s-taprop-irix.adb: Likewise.
3505         * s-taprop-linux.adb: Likewise.
3506         * s-taprop-lynxos.adb: Likewise.
3507         * s-taprop-mingw.adb: Likewise.
3508         * s-taprop-posix.adb: Likewise.
3509         * s-taprop-solaris.adb: Likewise.
3510         * s-taprop-tru64.adb: Likewise.
3511         * s-taprop-vms.adb: Likewise.
3512         * s-taprop-vxworks.adb: Likewise.
3513         * s-taprop.ads: Likewise.
3514         * s-tarest.adb: Likewise.
3515         * s-tarest.ads: Likewise.
3516         * s-tasdeb.adb: Likewise.
3517         * s-tasdeb.ads: Likewise.
3518         * s-tasinf-irix.ads: Likewise.
3519         * s-tasinf-linux.adb: Likewise.
3520         * s-tasinf-linux.ads: Likewise.
3521         * s-tasinf-mingw.adb: Likewise.
3522         * s-tasinf-mingw.ads: Likewise.
3523         * s-tasinf-solaris.adb: Likewise.
3524         * s-tasinf-solaris.ads: Likewise.
3525         * s-tasinf-tru64.ads: Likewise.
3526         * s-tasinf.adb: Likewise.
3527         * s-tasinf.ads: Likewise.
3528         * s-tasini.adb: Likewise.
3529         * s-tasini.ads: Likewise.
3530         * s-taskin.adb: Likewise.
3531         * s-taskin.ads: Likewise.
3532         * s-taspri-dummy.ads: Likewise.
3533         * s-taspri-hpux-dce.ads: Likewise.
3534         * s-taspri-mingw.ads: Likewise.
3535         * s-taspri-solaris.ads: Likewise.
3536         * s-taspri-tru64.ads: Likewise.
3537         * s-taspri-vms.ads: Likewise.
3538         * s-taspri-vxworks.ads: Likewise.
3539         * s-tasque.adb: Likewise.
3540         * s-tasque.ads: Likewise.
3541         * s-tasren.adb: Likewise.
3542         * s-tasren.ads: Likewise.
3543         * s-tasres.ads: Likewise.
3544         * s-tassta.adb: Likewise.
3545         * s-tassta.ads: Likewise.
3546         * s-tasuti.adb: Likewise.
3547         * s-tasuti.ads: Likewise.
3548         * s-tfsetr-default.adb: Likewise.
3549         * s-tfsetr-vxworks.adb: Likewise.
3550         * s-tpinop.adb: Likewise.
3551         * s-tpinop.ads: Likewise.
3552         * s-tpoben.adb: Likewise.
3553         * s-tpoben.ads: Likewise.
3554         * s-tpobop.adb: Likewise.
3555         * s-tpobop.ads: Likewise.
3556         * s-tpopde-vms.adb: Likewise.
3557         * s-tpopde-vms.ads: Likewise.
3558         * s-tpopsp-lynxos.adb: Likewise.
3559         * s-tpopsp-posix-foreign.adb: Likewise.
3560         * s-tpopsp-posix.adb: Likewise.
3561         * s-tpopsp-solaris.adb: Likewise.
3562         * s-tpopsp-vxworks.adb: Likewise.
3563         * s-tporft.adb: Likewise.
3564         * s-tposen.adb: Likewise.
3565         * s-tposen.ads: Likewise.
3566         * s-traceb.adb: Likewise.
3567         * s-traceb.ads: Likewise.
3568         * s-traces-default.adb: Likewise.
3569         * s-traces.adb: Likewise.
3570         * s-traces.ads: Likewise.
3571         * s-traent-vms.adb: Likewise.
3572         * s-traent-vms.ads: Likewise.
3573         * s-traent.adb: Likewise.
3574         * s-traent.ads: Likewise.
3575         * s-trafor-default.adb: Likewise.
3576         * s-trafor-default.ads: Likewise.
3577         * s-tratas-default.adb: Likewise.
3578         * s-tratas.adb: Likewise.
3579         * s-tratas.ads: Likewise.
3580         * s-unstyp.ads: Likewise.
3581         * s-utf_32.adb: Likewise.
3582         * s-utf_32.ads: Likewise.
3583         * s-vaflop-vms-alpha.adb: Likewise.
3584         * s-vaflop.adb: Likewise.
3585         * s-vaflop.ads: Likewise.
3586         * s-valboo.adb: Likewise.
3587         * s-valboo.ads: Likewise.
3588         * s-valcha.adb: Likewise.
3589         * s-valcha.ads: Likewise.
3590         * s-valdec.adb: Likewise.
3591         * s-valdec.ads: Likewise.
3592         * s-valenu.adb: Likewise.
3593         * s-valenu.ads: Likewise.
3594         * s-valint.adb: Likewise.
3595         * s-valint.ads: Likewise.
3596         * s-vallld.adb: Likewise.
3597         * s-vallld.ads: Likewise.
3598         * s-vallli.adb: Likewise.
3599         * s-vallli.ads: Likewise.
3600         * s-valllu.adb: Likewise.
3601         * s-valllu.ads: Likewise.
3602         * s-valrea.adb: Likewise.
3603         * s-valrea.ads: Likewise.
3604         * s-valuns.adb: Likewise.
3605         * s-valuns.ads: Likewise.
3606         * s-valuti.adb: Likewise.
3607         * s-valuti.ads: Likewise.
3608         * s-valwch.adb: Likewise.
3609         * s-valwch.ads: Likewise.
3610         * s-veboop.adb: Likewise.
3611         * s-veboop.ads: Likewise.
3612         * s-vector.ads: Likewise.
3613         * s-vercon.adb: Likewise.
3614         * s-vercon.ads: Likewise.
3615         * s-vmexta.adb: Likewise.
3616         * s-vmexta.ads: Likewise.
3617         * s-vxwext-kernel.ads: Likewise.
3618         * s-vxwext-rtp.adb: Likewise.
3619         * s-vxwext-rtp.ads: Likewise.
3620         * s-vxwext.ads: Likewise.
3621         * s-vxwork-arm.ads: Likewise.
3622         * s-vxwork-m68k.ads: Likewise.
3623         * s-vxwork-mips.ads: Likewise.
3624         * s-vxwork-ppc.ads: Likewise.
3625         * s-vxwork-sparcv9.ads: Likewise.
3626         * s-vxwork-x86.ads: Likewise.
3627         * s-wchcnv.adb: Likewise.
3628         * s-wchcnv.ads: Likewise.
3629         * s-wchcon.adb: Likewise.
3630         * s-wchcon.ads: Likewise.
3631         * s-wchjis.adb: Likewise.
3632         * s-wchjis.ads: Likewise.
3633         * s-wchstw.adb: Likewise.
3634         * s-wchstw.ads: Likewise.
3635         * s-wchwts.adb: Likewise.
3636         * s-wchwts.ads: Likewise.
3637         * s-widboo.adb: Likewise.
3638         * s-widboo.ads: Likewise.
3639         * s-widcha.adb: Likewise.
3640         * s-widcha.ads: Likewise.
3641         * s-widenu.adb: Likewise.
3642         * s-widenu.ads: Likewise.
3643         * s-widlli.adb: Likewise.
3644         * s-widlli.ads: Likewise.
3645         * s-widllu.adb: Likewise.
3646         * s-widllu.ads: Likewise.
3647         * s-widwch.adb: Likewise.
3648         * s-widwch.ads: Likewise.
3649         * s-win32.ads: Likewise.
3650         * s-winext.ads: Likewise.
3651         * s-wwdcha.adb: Likewise.
3652         * s-wwdcha.ads: Likewise.
3653         * s-wwdenu.adb: Likewise.
3654         * s-wwdenu.ads: Likewise.
3655         * s-wwdwch.adb: Likewise.
3656         * s-wwdwch.ads: Likewise.
3657         * scans.adb: Likewise.
3658         * scans.ads: Likewise.
3659         * seh_init.c: Likewise.
3660         * sfn_scan.adb: Likewise.
3661         * sinfo.adb: Likewise.
3662         * sinfo.ads: Likewise.
3663         * sinput.adb: Likewise.
3664         * sinput.ads: Likewise.
3665         * snames.adb: Likewise.
3666         * snames.ads: Likewise.
3667         * socket.c: Likewise.
3668         * stand.adb: Likewise.
3669         * stand.ads: Likewise.
3670         * stringt.adb: Likewise.
3671         * stringt.ads: Likewise.
3672         * sysdep.c: Likewise.
3673         * system-aix.ads: Likewise.
3674         * system-darwin-ppc.ads: Likewise.
3675         * system-darwin-x86.ads: Likewise.
3676         * system-darwin-x86_64.ads: Likewise.
3677         * system-freebsd-x86.ads: Likewise.
3678         * system-hpux-ia64.ads: Likewise.
3679         * system-hpux.ads: Likewise.
3680         * system-irix-n32.ads: Likewise.
3681         * system-irix-n64.ads: Likewise.
3682         * system-irix-o32.ads: Likewise.
3683         * system-linux-alpha.ads: Likewise.
3684         * system-linux-hppa.ads: Likewise.
3685         * system-linux-ia64.ads: Likewise.
3686         * system-linux-mips.ads: Likewise.
3687         * system-linux-mipsel.ads: Likewise.
3688         * system-linux-ppc.ads: Likewise.
3689         * system-linux-ppc64.ads: Likewise.
3690         * system-linux-s390.ads: Likewise.
3691         * system-linux-s390x.ads: Likewise.
3692         * system-linux-sh4.ads: Likewise.
3693         * system-linux-sparc.ads: Likewise.
3694         * system-linux-sparcv9.ads: Likewise.
3695         * system-linux-x86.ads: Likewise.
3696         * system-linux-x86_64.ads: Likewise.
3697         * system-lynxos-ppc.ads: Likewise.
3698         * system-lynxos-x86.ads: Likewise.
3699         * system-mingw-x86_64.ads: Likewise.
3700         * system-mingw.ads: Likewise.
3701         * system-rtems.ads: Likewise.
3702         * system-solaris-sparc.ads: Likewise.
3703         * system-solaris-sparcv9.ads: Likewise.
3704         * system-solaris-x86.ads: Likewise.
3705         * system-solaris-x86_64.ads: Likewise.
3706         * system-tru64.ads: Likewise.
3707         * system-vms-ia64.ads: Likewise.
3708         * system-vms-zcx.ads: Likewise.
3709         * system-vms.ads: Likewise.
3710         * system-vms_64.ads: Likewise.
3711         * system-vxworks-arm.ads: Likewise.
3712         * system-vxworks-m68k.ads: Likewise.
3713         * system-vxworks-mips.ads: Likewise.
3714         * system-vxworks-ppc.ads: Likewise.
3715         * system-vxworks-sparcv9.ads: Likewise.
3716         * system-vxworks-x86.ads: Likewise.
3717         * system.ads: Likewise.
3718         * table.adb: Likewise.
3719         * table.ads: Likewise.
3720         * targext.c: Likewise.
3721         * targparm.ads: Likewise.
3722         * tree_in.adb: Likewise.
3723         * tree_in.ads: Likewise.
3724         * tree_io.adb: Likewise.
3725         * tree_io.ads: Likewise.
3726         * types.adb: Likewise.
3727         * types.ads: Likewise.
3728         * uintp.adb: Likewise.
3729         * uintp.ads: Likewise.
3730         * uname.adb: Likewise.
3731         * uname.ads: Likewise.
3732         * urealp.adb: Likewise.
3733         * urealp.ads: Likewise.
3734         * vx_stack_info.c: Likewise.
3735         * widechar.adb: Likewise.
3736         * widechar.ads: Likewise.
3737         * exp_attr.adb: Change copyright header to refer to version
3738         3 of the GNU General Public License and to point readers at the
3739         COPYING3 file and the FSF's license web page.
3740         * sem.adb: Likewise.
3741         * sem_attr.ads: Likewise.
3742         * freeze.adb: Likewise.
3743         * freeze.ads: Likewise.
3744         * errout.ads: Likewise.
3745         * erroutc.adb: Likewise.
3746         * exp_ch11.ads: Likewise.
3747
3748 2009-04-09  Jakub Jelinek  <jakub@redhat.com>
3749
3750         * config-lang.in: Change copyright header to refer to version
3751         3 of the GNU General Public License and to point readers at the
3752         COPYING3 file and the FSF's license web page.
3753         * gcc-interface/trans.c: Likewise.
3754         * gnathtml.pl: Likewise.
3755         * gcc-interface/ada.h: Likewise.  Remove runtime exception.
3756         * gcc-interface/gigi.h: Likewise.
3757         * gcc-interface/misc.c: Likewise.
3758         * gcc-interface/targtyps.c: Likewise.
3759
3760 2009-04-09  Nicolas Setton  <setton@adacore.com>
3761
3762         * s-osinte-darwin.ads: Fix wrong binding to struc timeval.
3763
3764         * s-osinte-darwin.adb (To_Timeval): Adapt to fixed implementation of
3765         struct_timeval.
3766
3767 2009-04-09  Bob Duff  <duff@adacore.com>
3768
3769         * exp_ch5.adb, exp_ch9.adb: Correct miscellaneous Slocs in
3770         internally-generated nodes related to select statements to avoid
3771         confusing the debugger.
3772
3773 2009-04-09  Pascal Obry  <obry@adacore.com>
3774
3775         * make.adb: Ensure that all linker arguments are duplicated.
3776
3777 2009-04-09  Robert Dewar  <dewar@adacore.com>
3778
3779         * sem_ch5.adb: Minor reformatting
3780
3781 2009-04-09  Vincent Celier  <celier@adacore.com>
3782
3783         * vms_data.ads:
3784         Change GNAT CHECK qualifier /DIAGNOSIS_LIMIT to /DIAGNOSTIC_LIMIT
3785         New qualifier /LEXPAND_SOURCE=nnn for -gnatGnnn
3786         New qualifier /LXDEBUG=nnn for -gnatDnnn
3787         For H820-010
3788
3789         * gnat_ugn.texi:
3790         Update documentation for VMS qualifiers equivalent to -gnatGnn and
3791         -gnatDnn
3792
3793 2009-04-09  Nicolas Setton  <setton@adacore.com>
3794
3795         * s-osinte-darwin.ads: (Pad_Type): Make this an array of unsigned_long,
3796         to match layout of siginfo_t in sys/signal.h.
3797
3798         * gcc-interface/Makefile.in: Add section for x86_64 darwin.
3799
3800 2009-04-09  Thomas Quinot  <quinot@adacore.com>
3801
3802         * g-socket.ads: (Fd_Set): Use Interfaces.C.long alignment.
3803
3804 2009-04-09  Nicolas Setton  <setton@adacore.com>
3805
3806         * s-oscons-tmplt.c: Allow long lines in the generated spec.
3807         Add generation of Darwin-specific constants needed when binding to the
3808         pthread library.
3809
3810 2009-04-09  Robert Dewar  <dewar@adacore.com>
3811
3812         * checks.adb:
3813         (Insert_Valid_Check): Avoid unnecessary generation of junk declaration
3814         when no invalid values exist, Avoid duplicate read of atomic variable.
3815
3816         * cstand.adb (Build_Signed_Integer_Type): Set Is_Known_Valid
3817         (Standard_Unsigned): Set Is_Known_Valid
3818
3819         * sem_ch3.adb (Analyze_Subtype_Declaration): Copy Is_Known_Valid on
3820         subtype declaration if no constraint.
3821         (Set_Modular_Size): Set Is_Known_Valid if appropriate
3822         (Build_Derived_Numeric_Type): Copy Is_Known_Valid if no constraint
3823
3824 2009-04-09  Robert Dewar  <dewar@adacore.com>
3825
3826         * switch-c.adb, gnat_ugn.texi, vms_data.ads, switch.adb,
3827         switch.ads: for numeric switches, an optional equal sign is always
3828         allowed.
3829
3830 2009-04-09  Vincent Celier  <celier@adacore.com>
3831
3832         * prj-nmsc.adb (Get_Unit): Do not consider Casing on platform where
3833         the case of file names is not significant.
3834
3835 2009-04-09  Vincent Celier  <celier@adacore.com>
3836
3837         * errout.adb: Remove dependency on package Style
3838
3839         * style.ads, styleg.adb, styleg.ads (RM_Column_Check): Remove function,
3840         moved to Stylesw.
3841         
3842         * stylesw.ads, stylesw.adb (RM_Column_Check): New function, moved from
3843         Styleg.
3844
3845         * errutil.adb, par.adb: Import Stylesw
3846
3847 2009-04-09  Arnaud Charlet  <charlet@adacore.com>
3848
3849         * opt.ads: Fix typos.
3850
3851 2009-04-09  Robert Dewar  <dewar@adacore.com>
3852
3853         * einfo.adb: Minor reformatting
3854
3855 2009-04-09  Robert Dewar  <dewar@adacore.com>
3856
3857         * gcc-interface/Make-lang.in, style.ads, style.adb: Reorganize style
3858         units.
3859
3860         * styleg-c.ads, styleg-c.adb: Removed, no longer used.
3861
3862 2009-04-09  Robert Dewar  <dewar@adacore.com>
3863
3864         * g-comver.adb: Minor reformatting.
3865
3866 2009-04-09  Thomas Quinot  <quinot@adacore.com>
3867
3868         * lib-load.ads (Load_Unit): Update documentation.
3869
3870 2009-04-09  Ed Schonberg  <schonberg@adacore.com>
3871
3872         * lib-load.adb (Load_Unit): When loading the parent of a child unit
3873         named in a with_clause, retain the with_clause to preserve a
3874         limited_with indication.
3875
3876 2009-04-09  Robert Dewar  <dewar@adacore.com>
3877
3878         * sem_ch7.adb, sem_ch10.adb, sem_prag.adb, sem_ch12.adb, sem_util.adb,
3879         exp_ch13.adb, sem_ch6.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb,
3880         sem_cat.adb: Code clean up: use Is_Package_Or_Generic_Package where
3881         possible to replace an OR of two separate tests.
3882
3883 2009-04-09  Robert Dewar  <dewar@adacore.com>
3884
3885         * binderr.adb, errout.adb, errutil.adb: New circuitry for handling
3886         Maximum_Messages.
3887         
3888         * erroutc.adb, erroutc.ads (Warnings_Suppressed): Now tests global
3889         warning status as well.
3890         
3891         * opt.ads (Maximum_Messages): New name for Maximum_Errors.
3892         
3893         * switch-b.adb, switch-c.adb: Change name Maximum_Errors to
3894         Maximum_Messages.
3895         
3896         * bindusg.adb, usage.adb: Update line for -gnatm switch
3897
3898         * gnat_ugn.texi: Update documentation for -gnatmnn compiler switch and
3899         -mnn binder switch.
3900
3901 2009-04-09  Robert Dewar  <dewar@adacore.com>
3902
3903         * sem_ch10.adb: Minor reformatting.
3904
3905 2009-04-09  Bob Duff  <duff@adacore.com>
3906
3907         * exp_ch11.adb (Expand_Exception_Handlers, Prepend_Call_To_Handler):
3908         Set Sloc of generated nodes for calls to Undefer_Aborts and
3909         Save_Occurrence to No_Location, so the debugger ignores them and
3910         therefore does not jump back and forth when single stepping.
3911
3912 2009-04-09  Robert Dewar  <dewar@adacore.com>
3913
3914         * switch-b.adb: Minor reformatting.
3915
3916 2009-04-09  Robert Dewar  <dewar@adacore.com>
3917
3918         * sem_aggr.adb, exp_ch5.adb, sem_ch3.adb, exp_atag.adb, layout.adb,
3919         sem_dist.adb, exp_ch7.adb, sem_ch5.adb, sem_type.adb, exp_imgv.adb,
3920         exp_util.adb, sem_aux.adb, sem_aux.ads, exp_attr.adb, exp_ch9.adb,
3921         sem_ch7.adb, inline.adb, fe.h, sem_ch9.adb, exp_code.adb, einfo.adb,
3922         einfo.ads, exp_pakd.adb, checks.adb, sem_ch12.adb, exp_smem.adb,
3923         tbuild.adb, freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb,
3924         exp_dbug.adb, sem_case.adb, exp_tss.adb, exp_ch4.adb, exp_ch6.adb,
3925         sem_smem.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, exp_disp.adb,
3926         sem_ch8.adb, exp_aggr.adb, sem_eval.adb, sem_cat.adb, exp_dist.adb,
3927         sem_ch13.adb, exp_strm.adb, lib-xref.adb, sem_disp.adb, exp_ch3.adb:
3928         Reorganize einfo/sem_aux, moving routines from einfo to sem_aux
3929
3930 2009-04-09  Robert Dewar  <dewar@adacore.com>
3931
3932         * exp_util.adb (Silly_Boolean_Array_Xor_Test): Simplify existing code.
3933
3934         * atree.h: Add Elist26
3935
3936         * gnat_ugn.texi: Complete documentation deprecating -gnatN for non-gcc
3937         backends.
3938
3939 2009-04-09  Javier Miranda  <miranda@adacore.com>
3940
3941         * exp_disp.adb (Export_DT): Addition of a new argument (Index); used to
3942         retrieve from the Dispatch_Table_Wrappers list the external name.
3943         Addition of documentation.
3944         (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is
3945         used to export secondary dispatch tables (in the previous version of
3946         the frontend only primary dispatch tables were exported). Addition of
3947         documentation.
3948         (Import_DT): New subprogram (internal of Make_Tags). Used to import a
3949         dispatch table of a given tagged type. 
3950         (Make_Tags): Modified to import secondary dispatch tables.
3951
3952         * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup.
3953         (Constant_Redeclaration): Code cleanup.
3954
3955         * einfo.ads (Dispatch_Table_Wrapper): Renamed to
3956         Dispatch_Table_Wrappers.  Update documentation.
3957
3958         * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper):
3959         Renamed to Dispatch_Table_Wrappers.
3960
3961         * sem_util.adb (Collect_Interface_Components): Improve handling of
3962         private types.
3963
3964         * atree.ads (Elist26, Set_Elist26): New subprograms
3965
3966         * atree.adb (Elist26, Set_Elist26): New subprograms
3967
3968 2009-04-09  Javier Miranda  <miranda@adacore.com>
3969
3970         * sem_ch3.adb (Build_Derived_Record_Type): Fix typo.
3971         (Derive_Progenitor_Subprograms): Handle interfaces in subtypes of
3972         tagged types.
3973
3974 2009-04-09  Robert Dewar  <dewar@adacore.com>
3975
3976         * s-direio.adb: Minor reformatting
3977
3978         * exp_ch4.adb (Expand_Concatenate): Avoid overflow checks for String
3979
3980 2009-04-09  Robert Dewar  <dewar@adacore.com>
3981
3982         * exp_ch4.adb (Expand_Concatenate): Improve handling of overflow cases
3983
3984 2009-04-09  Pascal Obry  <obry@adacore.com>
3985
3986         * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coinve.ads,
3987         s-tpoben.adb, s-tpoben.ads, s-finimp.adb, s-finimp.ads,
3988         a-convec.adb, a-convec.ads, a-finali.adb, a-finali.ads,
3989         a-filico.ads: Add some missing overriding keywords.
3990
3991 2009-04-09  Pascal Obry  <obry@adacore.com>
3992
3993         * a-cihama.adb, a-cihama.ads, a-coinve.adb, a-coorma.ads, a-cihase.adb,
3994         a-cihase.ads, a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads,
3995         a-coormu.adb, a-coormu.ads, a-cohase.adb, a-cohase.ads: Minor
3996         reformatting.
3997
3998 2009-04-09  Ed Schonberg  <schonberg@adacore.com>
3999
4000         * sem_ch6.adb (Check_Overriding_Indicator): Do not generate warning on
4001         missing overriding indicator if the new declaration is not seen as
4002         primitive.
4003
4004 2009-04-09  Thomas Quinot  <quinot@adacore.com>
4005
4006         * exp_ch4.adb (Expand_Concatenate): Add circuitry to properly handle
4007         overflows in computation of bounds.
4008
4009 2009-04-09  Pascal Obry  <obry@adacore.com>
4010
4011         * a-cihama.adb, a-cgcaso.adb, a-cihase.adb, a-cohase.adb: Fix some
4012         typos in comment.
4013
4014 2009-04-09  Robert Dewar  <dewar@adacore.com>
4015
4016         * sem_attr.adb (Check_Stream_Attribute): Check violation of
4017         restriction No_Streams
4018
4019         * gnat_rm.texi: Clarify No_Streams restriction
4020
4021         * g-socket.adb: Minor reformatting.
4022
4023 2009-04-09  Thomas Quinot  <quinot@adacore.com>
4024
4025         * g-socket.ads: Mark Initialize and Finalize as obsolesent interfaces.
4026
4027 2009-04-09  Geert Bosch  <bosch@adacore.com>
4028
4029         * exp_fixd.adb (Build_Conversion): Accept new optional Trunc argument.
4030         (Set_Result): Likewise.
4031         (Expand_Convert_Float_To_Fixed): Have Set_Result truncate the
4032         conversion, as required by RM 4.6(31).
4033
4034 2009-04-08  Robert Dewar  <dewar@adacore.com>
4035
4036         * checks.adb (Enable_Overflow_Check): Do not enable if overflow checks
4037         suppressed.
4038         
4039         * exp_ch4.adb (Expand_Concatenate): Make sure checks are off for all
4040         resolution steps.
4041
4042 2009-04-08  Robert Dewar  <dewar@adacore.com>
4043
4044         * sem_ch12.adb (Analyze_Package_Instantiation): Remove test for
4045         No_Local_Allocators restriction preventing local instantiation.
4046
4047 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4048
4049         * sem_eval.adb: Minor comment fix
4050
4051 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4052
4053         * g-socket.adb, g-socket.ads (GNAT.Sockets.Sockets_Library_Controller):
4054         New limited controlled type used to automate the initialization and
4055         finalization of the sockets implementation.
4056         (GNAT.Sockets.Initialize, Finalize): Make these no-ops
4057
4058 2009-04-08  Vincent Celier  <celier@adacore.com>
4059
4060         * prj-attr.adb: New read-only project-level attribute Project_Dir
4061
4062         * prj-proc.adb (Add_Attributes): New parameter Project_Dir, value of
4063         read-only attribute of the same name.
4064         (Process_Declarative_Items): Call Add_Attributes with Project_Dir
4065         (Recursive_Process): Ditto
4066
4067         * snames.adb: Add new standard name Project_Dir
4068
4069         * snames.ads: Add new standard name Project_Dir
4070
4071 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4072
4073         * checks.adb: Minor reformatting
4074
4075 2009-04-08  Vincent Celier  <celier@adacore.com>
4076
4077         * vms_data.ads: Add documentation for new style keyword
4078         OVERRIDING_INDICATORS
4079
4080 2009-04-08  Robert Dewar  <dewar@adacore.com>
4081
4082         * sem_ch3.adb (Check_Completion.Post_Error): Post error on spec if the
4083         spec is in the current unit.
4084
4085 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
4086
4087         * sem_util.adb (Is_Protected_Self_Reference): Add guard to check for
4088         presence of entity.
4089
4090         * usage.adb, gnat_ugn.texi: add info on -gnatyO: overriding indicators
4091
4092 2009-04-08  Vincent Celier  <celier@adacore.com>
4093
4094         * vms_data.ads: Add VMS equivalent for -gnatyO (OVERRIDING_INDICATORS)
4095
4096 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4097
4098         * checks.ads: Minor reformatting
4099
4100 2009-04-08  Robert Dewar  <dewar@adacore.com>
4101
4102         * gnat_rm.texi: Update documentation of pragma Obsolescent
4103         
4104         * sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow identifiers to
4105         be omitted, and allow Entity parameter to be omitted.
4106
4107 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4108
4109         * exp_util.adb: Minor comment fix
4110
4111 2009-04-08  Robert Dewar  <dewar@adacore.com>
4112
4113         * g-socket.ads: Fix bad syntax in pragma Obsolescent
4114
4115         * par-ch2.adb (Scan_Pragma_Argument_Association): Check for error of
4116         argument with no identifier following one that has an identifier. Was
4117         missed in some cases.
4118
4119         * sem_prag.adb (Analyze_Pragma, case Check_Policy): Allow Policy
4120         identifier.
4121         (Analyze_Pragma, case Obsolescent): Allow Message, Version identifiers
4122
4123         * snames.adb: Add Name_Policy
4124
4125         * snames.ads: Add Name_Policy
4126
4127 2009-04-08  Robert Dewar  <dewar@adacore.com>
4128
4129         * gnat_rm.texi: Minor reformatting
4130
4131         * par-ch2.adb: Minor reformatting
4132
4133 2009-04-08  Robert Dewar  <dewar@adacore.com>
4134
4135         * exp_attr.adb, sem_attr.adb, sem_util.adb: Code clean up.
4136
4137 2009-04-08  Robert Dewar  <dewar@adacore.com>
4138
4139         * sem_cat.adb (Check_Categorization_Dependencies): Handle Preelaborate
4140         properly in the presence of Remote_Types or Remote_Call_Interface.
4141
4142         * sem_util.adb: Add comment.
4143
4144 2009-04-08  Robert Dewar  <dewar@adacore.com>
4145
4146         * ug_words: Add /ASSUME_VALID for -gnatB
4147
4148         * vms_data.ads: Add /ASSUME_VALID for -gnatB
4149
4150         * sem_cat.adb: Add clarifying commment
4151
4152         * a-direio.ads (Bytes): Make sure value is non-zero
4153
4154 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
4155
4156         * sem_util.adb (Is_Variable): If the prefix is an explicit dereference
4157         that does not come from source, check for a rewritten function call in
4158         prefixed notation before other forms of rewriting.
4159
4160 2009-04-08  Robert Dewar  <dewar@adacore.com>
4161
4162         * Makefile.rtl: Remove s-strops and s-sopco? from the run time, since
4163         these are now obsolescent units used only for bootrapping with an
4164         older compiler.
4165
4166 2009-04-08  Robert Dewar  <dewar@adacore.com>
4167
4168         * gnat_rm.texi: Add documentation for pragma Thread_Local_Storage
4169
4170         * sem_ch3.adb: Minor comment updates
4171
4172 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
4173
4174         * inline.adb (Back_End_Cannot_Inline): restrict warning to subprograms
4175         that come from source.
4176
4177 2009-04-08  Tristan Gingold  <gingold@adacore.com>
4178
4179         * gcc-interface/gigi.h (enum attr_type): Add ATTR_THREAD_LOCAL_STORAGE.
4180         * gcc-interface/decl.c (prepend_attributes): New case
4181         Pragma_Thread_Local_Storage.
4182         * gcc-interface/utils.c (process_attributes): New case
4183         ATTR_THREAD_LOCAL_STORAGE.
4184
4185 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
4186
4187         * inline.adb (Back_End_Cannot_Inline): Do not mark a body as inlineable
4188         by the back-end if it contains a call to a subprogram without a
4189         previous spec that is declared in the same unit.
4190
4191         * errout.ads: Update comments on uses of dirs
4192
4193 2009-04-08  Robert Dewar  <dewar@adacore.com>
4194
4195         * exp_ch4.adb (Expand_Concatenate): Make sure nodes are properly typed
4196
4197 2009-04-08  Tristan Gingold  <gingold@adacore.com>
4198
4199         * sem_prag.adb: Restrict pragma Thread_Local_Storage to library level
4200         variables.
4201         Set Has_Gigi_Rep_Item flag to TLS variables (to ease gigi work).
4202
4203 2009-04-08  Vincent Celier  <celier@adacore.com>
4204
4205         * prj-nmsc.adb:
4206         (Add_Source): Add the mapping of the unit name to source file name in
4207         the Unit_Sources_HT hash table, if the unit name is not null.
4208
4209         * prj.adb (Reset): Reset hash table Tree.Unit_Sources_HT
4210
4211         * prj.ads (Unit_Sources_Htable): New hash table instantiation
4212         (Project_Tree_Data): New component Unit_Sources_HT
4213
4214 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4215
4216         * sem_ch8.adb: Minor reformatting.
4217         Minor code reorganization.
4218
4219 2009-04-08  Robert Dewar  <dewar@adacore.com>
4220
4221         * snames.h, einfo.adb, einfo.ads, sem_prag.adb, snames.adb,
4222         snames.ads, freeze.adb, par-prag.adb: Add implementation of
4223         pragma Thread_Local_Storage, setting new flag
4224         Has_Pragma_Thread_Local_Storage in corresponding entities.
4225
4226 2009-04-08  Emmanuel Briot  <briot@adacore.com>
4227
4228         * prj.ads: Update comment on switches file
4229
4230         * prj-nmsc.adb: Code clean up. Use renaming clauses.
4231
4232 2009-04-08  Robert Dewar  <dewar@adacore.com>
4233
4234         * exp_ch4.adb (Expand_Concatenate): Further fixes to bounds handling
4235
4236 2009-04-08  Thomas Quinot  <quinot@adacore.com>
4237
4238         * ali-util.adb: Minor comment fix
4239
4240 2009-04-08  Ed Schonberg  <schonberg@adacore.com>
4241
4242         * sem_ch8.adb (Analyze_Use_Type): Improve error message when clause
4243         appears in a context clause, and the enclosing package is mentioned in
4244         a limited_with_clause.
4245         (Use_One_Type): Reject clause if type is still incomplete.
4246
4247 2009-04-08  Emmanuel Briot  <briot@adacore.com>
4248
4249         * prj-nmsc.adb (Check_File, Process_Sources_In_Multi_Language_Mode):
4250         avoid copies of Source_Data variables when possible, since these
4251         involve calls to memcpy() which are done too many times.
4252
4253 2009-04-08  Robert Dewar  <dewar@adacore.com>
4254
4255         * exp_ch4.adb (Expand_Concatenate): Clean up code
4256
4257 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4258
4259         * exp_ch4.adb (Expand_Concatenate): Add missing conversion to index
4260         type for the case of concatenating a constrained array indexed by an
4261         enumeration type.
4262
4263 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4264
4265         * sem_ch6.adb (Check_Conformance): when checking conformance of an
4266         operation that overrides an abstract operation inherited from an
4267         interface, return False if only one of the controlling formals is an
4268         access parameter.
4269
4270 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4271
4272         * sem_ch8.adb (Analyze_Object_Renaming): additional error messages
4273         mandated by AI05-105.
4274
4275 2009-04-07  Vincent Celier  <celier@adacore.com>
4276
4277         * prj-nmsc.adb (Get_Mains): Warn if a main is an empty string
4278
4279 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4280
4281         * usage.adb: Minor fix in usage message.
4282
4283         * sem_ch10.adb (Remove_Homonyms): Fix subtype of formal in body to
4284         match declaration; the correct subtype is Node_Id, not Entity_Id,
4285         because the expected node kind is an identifier, not a defining
4286         identifier.
4287
4288         * switch-c.adb: Minor reformatting.
4289
4290         * uintp.adb: Minor reformatting.
4291
4292 2009-04-07  Robert Dewar  <dewar@adacore.com>
4293
4294         * exp_ch13.adb: Minor reformatting
4295
4296 2009-04-07  Robert Dewar  <dewar@adacore.com>
4297
4298         * sem_warn.adb (Check_Infinite_Loop_Warning.Test_Ref): Add defence
4299         against missing parent.
4300
4301 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4302
4303         * xoscons.adb: Minor reformatting
4304
4305 2009-04-07  Robert Dewar  <dewar@adacore.com>
4306
4307         * rtsfind.ads: Remove obsolete string concatenation entries
4308
4309 2009-04-07  Robert Dewar  <dewar@adacore.com>
4310
4311         * exp_ch4.adb (Expand_Concatenate): Redo handling of bounds
4312
4313 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4314
4315         * sem_ch10.adb (Check_Body_Required): Handle properly imported
4316         subprograms.
4317
4318 2009-04-07  Gary Dismukes  <dismukes@adacore.com>
4319
4320         * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case
4321         Attribute_Address): When Init_Or_Norm_Scalars is True and the object
4322         is of a scalar or string type then suppress the setting of the
4323         expression to Empty.
4324
4325         * freeze.adb (Warn_Overlay): Also emit the warnings about default
4326         initialization for the cases of scalar and string objects when
4327         Init_Or_Norm_Scalars is True.
4328
4329 2009-04-07  Bob Duff  <duff@adacore.com>
4330
4331         * s-secsta.ads, g-pehage.ads, s-fileio.ads: Minor comment fixes
4332
4333 2009-04-07  Bob Duff  <duff@adacore.com>
4334
4335         * gnat_rm.texi, s-fileio.adb (System.File_IO.Open): New feature: A
4336         Form parameter of Text_Translation=No allows binary mode for Text_IO
4337         files.
4338
4339         * gnat_rm.texi: Document Form parameter Text_Translation=xxx.
4340
4341 2009-04-07  Javier Miranda  <miranda@adacore.com>
4342
4343         * exp_ch5.adb (Expand_Assign_Array): Add implicit conversion when
4344         processing the bounds for bit packed arrays or VM target machines.
4345
4346 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4347
4348         * g-sothco.ads (Int_Access): Remove extraneous access type (use
4349         anonymous access instead).
4350         (Get_Socket_From_Set): Fix incorrectly reverted formals
4351         Last and Socket to match the underlying C routine.
4352
4353         * g-socket.adb, g-socket.ads
4354         (Get): Use named parameter associations instead of positional ones in
4355         call go Get_Socket_From_Set, since this routine has two formals of the
4356         same type.
4357         (Image): New procedure.
4358
4359         * g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4360         g-socthi-vxworks.ads, g-socthi-mingw.ads, g-socthi.adb, g-socthi.ads:
4361         (C_Ioctl, Syscall_Ioctl): use "access C.int" instead of "Int_Access"
4362         for type of Arg formal.
4363
4364         * sem_warn.adb: Minor reformatting
4365
4366 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4367
4368         * sem_util.adb (Has_Tagged_Component): Fix typo in loop that iterates
4369         over record components.
4370
4371 2009-04-07  Nicolas Roche  <roche@adacore.com>
4372
4373         * gsocket.h:
4374         Don't include resolvLib.h on VxWorks 6 (kernel and rtp). This library
4375         has disappeared between VxWorks 6.4 and VxWorks 6.5
4376         In RTP mode use time.h instead of times.h
4377
4378 2009-04-07  Robert Dewar  <dewar@adacore.com>
4379
4380         * exp_ch4.adb (Expand_N_Op_Concat): Improve lower bound handling
4381
4382 2009-04-07  Kevin Pouget  <pouget@adacore.com>
4383
4384         * exp_dist.adb: Modify Build_From_Any_Fonction procedure to correct
4385         expanded code for constrained types.
4386
4387 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4388
4389         * sem_ch4.adb (Analyze_Overloaded_Selected_Component): implement
4390         AI05-105: in an object renaming declaration, anonymousness is a name
4391         resolution rule.
4392
4393         * sem_ch8.adb (Analyze_Object_Renaming): Ditto.
4394
4395 2009-04-07  Arnaud Charlet  <charlet@adacore.com>
4396
4397         * g-comlin.adb (Expansion): Fix old regression: also return directory
4398         names when matching.
4399
4400 2009-04-07  Robert Dewar  <dewar@adacore.com>
4401
4402         * exp_ch4.adb:
4403         (Expand_N_Op_Concat): Call Expand_Concatenate for all cases
4404         (Expand_Concatenate): New name for Expand_Concatenate_String which has
4405         been rewritten to handle all types.
4406         (Expand_Concatenate_Other): Remove
4407
4408 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4409
4410         * lib-xref.adb (Generate_Reference): A default subprogram in an
4411         instance appears within the tree for the instance, but generates an
4412         implicit reference in the ALI.
4413
4414 2009-04-07  Javier Miranda  <miranda@adacore.com>
4415
4416         * sem_ch3.adb (Build_Derived_Record_Type): When processing a tagged
4417         derived type that has discriminants, propagate the list of interfaces
4418         to the corresponding new base type. In addition, propagate also
4419         attribute Limited_Present (found working in this patch).
4420
4421 2009-04-07  Robert Dewar  <dewar@adacore.com>
4422
4423         * exp_ch4.adb: Rewrite concatenation expansion.
4424
4425 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4426
4427         * sem_ch8.adb (Restore_Scope_Stack): First_Private_Entity is only
4428         relevant to packages.
4429
4430 2009-04-07  Robert Dewar  <dewar@adacore.com>
4431
4432         * sem_attr.adb: Minor reformatting
4433
4434         * sem_ch6.adb: Minor reformatting
4435
4436 2009-04-07  Tristan Gingold  <gingold@adacore.com>
4437
4438         * socket.c: Add more protections against S_resolvLib_ macros.
4439
4440 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4441
4442         * sem_attr.adb: Minor reformatting
4443
4444 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4445
4446         * sem_ch6.adb (New_Overloaded_Entity): New predicate
4447         Is_Overriding_Alias to handle properly types that inherit two homonym
4448         operations that have distinct dispatch table entries.
4449
4450 2009-04-07  Emmanuel Briot  <briot@adacore.com>
4451
4452         * s-regexp.adb (Create_Mapping): Ignore excaped open parenthesis when
4453         looking for the end of a parenthesis group
4454
4455 2009-04-07  Tristan Gingold  <gingold@adacore.com>
4456
4457         * gsocket.h Don't #include resolvLib.h if __RTP__ is defined.
4458
4459         * socket.c Don't use resolvLib_ macros if not defined.
4460
4461 2009-04-07  Robert Dewar  <dewar@adacore.com>
4462
4463         * g-socket.adb: Minor reformatting.
4464
4465         * g-socthi-mingw.adb: Minor reformatting
4466
4467         * g-sothco.ads: Minor reformatting
4468
4469         * exp_ch4.adb:
4470         (Expand_Concatenate_String): Complete rewrite to generate efficient code
4471         inline instead of relying on external library routines.
4472
4473         * s-strops.ads, s-sopco5.ads, s-sopco5.adb, s-sopco4.ads, s-sopco4.adb,
4474         s-sopco3.ads, s-sopco3.adb, s-strops.adb: Note that this unit is now
4475         obsolescent
4476
4477 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4478
4479         * sem_attr.adb:
4480         (Eval_Attribute): for attributes of array objects that are not strings,
4481         attributes are not static if nominal subtype of object is unconstrained.
4482
4483 2009-04-07  Ed Schonberg  <schonberg@adacore.com>
4484
4485         * sem_ch6.adb (New_Overloaded_Entity): If two implicit homonym
4486         operations for a type T in an instance do not override each other,
4487         when T is derived from a formal private type, the corresponding
4488         operations inherited by a type derived from T outside
4489         of the instance do not override each other either.
4490
4491 2009-04-07  Robert Dewar  <dewar@adacore.com>
4492
4493         (Osint.Fail): Change calling sequence to have one string arg
4494         (Make.Make_Failed): Same change
4495         All callers are adjusted to use concatenation
4496
4497 2009-04-07  Robert Dewar  <dewar@adacore.com>
4498
4499         * exp_ch4.adb: Fix documentation typo
4500
4501 2009-04-07  Robert Dewar  <dewar@adacore.com>
4502
4503         * tbuild.ads: Minor reformatting
4504
4505 2009-04-07  Javier Miranda  <miranda@adacore.com>
4506
4507         * exp_disp.adb (Make_DT): Avoid the generation of the OSD_Table
4508         when compiling under ZFP runtime.
4509
4510 2009-04-07  Robert Dewar  <dewar@adacore.com>
4511
4512         * g-comlin.adb: Minor reformatting
4513
4514 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4515
4516         * socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
4517         g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
4518         g-socthi.adb, g-socthi.ads, g-socket.adb, g-socket.ads, g-sothco.ads:
4519         Remove dynamic allocation of Fd_Set in Socket_Set_Type objects.
4520
4521 2009-04-07  Robert Dewar  <dewar@adacore.com>
4522
4523         * gnat_ugn.texi: Document -gnatDnn/-gnatGnn
4524
4525         * opt.ads (Sprint_Line_Limit): New parameter
4526         
4527         * sprint.adb: Usa Sprint_Line_Limit instead of Line_Limit throughout
4528         
4529         * switch-c.adb: Recognize -gnatDnnn and -gnatGnnn switches
4530         
4531         * usage.adb: Output information for -gnatGnn -gnatDnn
4532
4533 2009-04-07  Robert Dewar  <dewar@adacore.com>
4534
4535         * make.adb: Minor reformatting
4536
4537 2009-04-07  Robert Dewar  <dewar@adacore.com>
4538
4539         * mlib-tgt-specific-vms-alpha.adb: Minor reformatting
4540
4541 2009-04-07  Robert Dewar  <dewar@adacore.com>
4542
4543         * mlib-tgt-specific-vms-ia64.adb: Minor reformatting
4544
4545 2009-04-07  Robert Dewar  <dewar@adacore.com>
4546
4547         * checks.adb:
4548         Remove Assume_Valid parameter from In_Subrange_Of calls
4549         
4550         * sem_eval.adb:
4551         (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
4552         (Is_In_Range): Remove incorrect use of Assume_Valid
4553         (Is_Out_Of_Range): Remove incorrect use of Assume_Valid
4554         
4555         * sem_eval.ads:
4556         (Is_Subrange_Of): Remove Assume_Valid parameter, not needed
4557         (Is_In_Range): Documentation cleanup
4558         (Is_Out_Of_Range): Documentation cleanup
4559
4560         * gnat_rm.texi:
4561         Add documentation for Assume_No_Invalid_Values pragma
4562
4563         * sem_ch12.adb: Minor reformatting
4564
4565         * sem_ch6.adb: (Check_Conformance): Avoid cascaded errors
4566
4567         * sem_prag.adb: Improve error message.
4568
4569         * gnatchop.adb, osint.ads, sinput.adb, sinput.ads, styleg.adb:
4570         LF/CR no longer recognized as line terminator
4571
4572         * switch.ads: Minor documentation improvement
4573
4574         * vms_data.ads: Minor reformatting
4575
4576 2009-04-07  Robert Dewar  <dewar@adacore.com>
4577
4578         * checks.adb (Determine_Range): Add Assume_Valid parameter
4579         
4580         * checks.ads (Determine_Range): Add Assume_Valid parameter
4581         
4582         * errout.adb (Error_Msg_NEL): Use Suppress_Loop_Warnings rather than
4583          Is_Null_Loop to suppress warnings in a loop body.
4584         
4585         * exp_ch4.adb:
4586         (Rewrite_Comparison): Major rewrite to accomodate invalid values
4587         
4588         * exp_ch5.adb:
4589         (Expand_N_Loop_Statement): Delete loop known not to execute
4590         
4591         * opt.ads:
4592         (Assume_No_Invalid_Values): Now set to False, and as documented, this
4593          fully enables the proper handling of invalid values.
4594         
4595         * sem_attr.adb:
4596         New calling sequence for Is_In_Range
4597         
4598         * sem_ch5.adb:
4599         (Analyze_Iteration_Scheme): Accomodate possible invalid values
4600          in determining if a loop range is null.
4601         
4602         * sem_eval.adb:
4603         (Is_In_Range): Add Assume_Valid parameter
4604         (Is_Out_Of_Range): Add Assume_Valid_Parameter
4605         (Compile_Time_Compare): Major rewrite to accomodate invalid values and
4606          also to do more accurate and complete range analysis, catching more
4607          cases.
4608         
4609         * sem_eval.ads:
4610         (Is_In_Range): Add Assume_Valid parameter
4611         (Is_Out_Of_Range): Add Assume_Valid_Parameter
4612         
4613         * sem_util.adb:
4614         New calling sequence for Is_In_Range
4615         
4616         * sinfo.adb:
4617         (Suppress_Loop_Warnings): New flag
4618         
4619         * sinfo.ads:
4620         (Is_Null_Loop): Update documentation
4621         (Suppress_Loop_Warnings): New flag
4622         
4623         * gnat_ugn.texi: Document -gnatB switch
4624
4625 2009-04-07  Arnaud Charlet  <charlet@adacore.com>
4626
4627         * gnatvsn.ads: Bump version number.
4628
4629 2009-04-07  Thomas Quinot  <quinot@adacore.com>
4630
4631         * exp_ch3.adb: Minor rewording (comments)
4632
4633 2009-04-07  Robert Dewar  <dewar@adacore.com>
4634
4635         * exp_disp.adb: Minor reformatting
4636
4637 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4638
4639         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Test the
4640         underlying type.
4641         * gcc-interface/trans.c (lvalue_required_p): Likewise.
4642
4643 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4644
4645         * gcc-interface/trans.c (Attribute_to_gnu) <Max_Size_In_Storage_Elmts>:
4646         Do not convert the result.  Remove obsolete comment.
4647
4648 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4649
4650         * gcc-interface/trans.c (establish_gnat_vms_condition_handler): Clear
4651         DECL_CONTEXT.
4652         (Subprogram_Body_to_gnu): Fix pasto.
4653
4654 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4655
4656         * gcc-interface/gigi.h (standard_datatypes): Remove ADT_void_type_decl.
4657         (void_type_decl_node): Remove.
4658         (init_gigi_decls): Likewise.
4659         (gnat_install_builtins): Declare.
4660         (record_builtin_type): Likewise.
4661         (create_type_stub_decl): Likewise.
4662         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Void>: Use void_type.
4663         (gnat_to_gnu_entity) <E_Array_Type>: Make fat and thin pointer types
4664         artificial.
4665         <E_Array_Subtype>: Use the index types, not only their name, in the
4666         record giving the names of the bounds, if any.
4667         For a packed array type, make it artificial only if the base type
4668         was artificial as well.  Remove redundant statement.
4669         (gnat_to_gnu_entity) <E_Incomplete_Type>: Do not create TYPE_DECL for
4670         dummy types.
4671         Use create_type_stub_decl to build the TYPE_STUB_DECL of types.
4672         (rest_of_type_decl_compilation_no_defer): Likewise.
4673         * gcc-interface/misc.c (gnat_printable_name): Add missing guard.
4674         * gcc-interface/utils.c (make_dummy_type): Always create TYPE_STUB_DECL
4675         and use create_type_stub_decl to build it.
4676         (gnat_pushdecl): Rewrite condition.
4677         (gnat_install_builtins): Remove bogus declaration.
4678         (record_builtin_type): New function.
4679         (finish_record_type): Use create_type_stub_decl to build TYPE_STUB_DECL
4680         of types.
4681         (create_type_stub_decl): New function.
4682         (create_type_decl): Assert that the type is not dummy.  If the type
4683         hasn't been named yet, equate the TYPE_STUB_DECL to the created node.
4684         (build_vms_descriptor32): Do not create TYPE_DECL for the descriptor.
4685         (build_vms_descriptor): Likewise.
4686         (init_gigi_decls): Delete and move bulk of code to...
4687         * gcc-interface/trans.c (gigi): ...here.  Use record_builtin_type.
4688         (emit_range_check): Add gnat_node parameter.
4689         (emit_index_check): Likewise.
4690         (emit_check): Likewise.
4691         (build_unary_op_trapv): Likewise.
4692         (build_binary_op_trapv): Likewise.
4693         (convert_with_check): Likewise.
4694         (Attribute_to_gnu): Adjust calls for above changes.
4695         (call_to_gnu): Likewise.
4696         (gnat_to_gnu): Likewise.
4697         (assoc_to_constructor): Likewise.
4698         (pos_to_constructor): Likewise.
4699         (Sloc_to_locus): Set BUILTINS_LOCATION for Standard_Location nodes.
4700         (process_type): Do not create TYPE_DECL for dummy types.
4701
4702 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4703
4704         * gcc-interface/decl.c (gnat_to_gnu_entity): Reorder local variables.
4705         * gcc-interface/trans.c: Fix formatting throughout.  Fix comments.
4706         * gcc-interface/utils.c: Fix comments.
4707
4708 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4709
4710         * gcc-interface/decl.c (compile_time_known_address_p): Rewrite and
4711         move around.
4712         (gnat_to_gnu_type): Move around.
4713         (get_unpadded_type): Likewise.
4714         * gcc-interface/utils.c (update_pointer_to): Use synthetic macro.
4715         Tidy comments.
4716
4717 2009-04-07  Eric Botcazou  <ebotcazou@adacore.com>
4718
4719         * gcc-interface/trans.c (check_for_eliminated_entity): New function.
4720         (Attribute_to_gnu): Invoke it for Access- and Address-like attributes.
4721         (call_to_gnu): Invoke it instead of manually checking.
4722
4723 2009-04-04  Eric Botcazou  <ebotcazou@adacore.com>
4724
4725         * gcc-interface/utils.c (finish_record_type): Force structural equality
4726         checks if the record type is discriminated.
4727
4728 2009-03-31  Eric Botcazou  <ebotcazou@adacore.com>
4729
4730         * system-linux-alpha.ads (Functions_Return_By_DSP): Remove.
4731         * system-linux-mips.ads (Functions_Return_By_DSP): Likewise.
4732         * system-linux-mipsel.ads (Functions_Return_By_DSP): Likewise.
4733         * system-linux-s390.ads (Functions_Return_By_DSP): Likewise.
4734         * system-linux-s390x.ads (Functions_Return_By_DSP): Likewise.
4735         * system-linux-sparc.ads (Functions_Return_By_DSP): Likewise.
4736         * system-linux-sparcv9.ads (Functions_Return_By_DSP): Likewise.
4737
4738 2009-03-30  Paolo Bonzini  <bonzini@gnu.org>
4739
4740         * gcc-interface/decl.c (maybe_pad_type): Use TREE_OVERFLOW instead
4741         of TREE_CONSTANT_OVERFLOW.
4742
4743 2009-03-30  Joseph Myers  <joseph@codesourcery.com>
4744
4745         PR rtl-optimization/323
4746         * gcc-interface/misc.c (gnat_post_options): Set
4747         flag_excess_precision_cmdline.  Give an error for
4748         -fexcess-precision=standard for processors where the option is
4749         significant.
4750
4751 2009-03-27  H.J. Lu  <hongjiu.lu@intel.com>
4752
4753         PR c/39323
4754         * gcc-interface/utils.c (create_field_decl): Use "unsigned int"
4755         on bit_align.
4756
4757 2009-03-11  Olivier Hainque  <hainque@adacore.com>
4758
4759         * gcc-interface/trans.c (gnat_to_gnu) <case N_Slice>: In range
4760         checks processing, remove unintended TREE_TYPE walk on index type.
4761
4762 2009-03-01  Eric Botcazou  <ebotcazou@adacore.com>
4763
4764         PR ada/39264
4765         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Do no
4766         call make_packable_type on fat pointer types.
4767         <E_Array_Subtype>: Likewise.
4768         <E_Record_Subtype>: Call make_packable_type on all record types
4769         except for fat pointer types.
4770         (make_packable_type): Likewise.
4771         (gnat_to_gnu_field): Likewise.
4772
4773 2009-02-28  Eric Botcazou  <ebotcazou@adacore.com>
4774
4775         * gcc-interface/Makefile.in (cygwin/mingw): Revert accidental
4776         EH_MECHANISM change made on 2007-12-06.
4777
4778 2009-02-26  Andreas Schwab  <schwab@suse.de>
4779
4780         PR ada/39172
4781         * Makefile.in (srcdir): Set to @top_srcdir@ instead of @srcdir@.
4782         * gcc-interface/Makefile.in: Change all uses of $(srcdir),
4783         $(fsrcdir) and $(fsrcpfx) to add ada subdir.
4784         (AWK): Substitute.
4785         (target_cpu_default): Substitute.
4786
4787 2009-02-25  Laurent GUERBY  <laurent@guerby.net>
4788
4789         PR ada/39221
4790         * a-teioed.adb (Expand): Fix Result overflow.
4791
4792 2009-02-25  Laurent GUERBY <laurent@guerby.net>
4793
4794         * gcc-interface/Makefile.in: Fix multilib handling for
4795         sparc64-linux.
4796
4797 2009-02-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4798
4799         * s-oscons-tmplt.c [__osf__ && !_SS_MAXSIZE]: Undef AF_UNIX6.
4800
4801 2009-02-18  H.J. Lu  <hongjiu.lu@intel.com>
4802
4803         * gcc-interface/misc.c (gnat_post_options): Turn off warn_psabi.
4804
4805 2009-02-16  Eric Botcazou  <ebotcazou@adacore.com>
4806
4807         * gcc-interface/deftarg.c: Remove.
4808
4809 2009-02-10  Olivier Hainque  <hainque@adacore.com>
4810             Eric Botcazou  <ebotcazou@adacore.com>
4811
4812         * gcc-interface/decl.c (enum alias_set_op): New enumeration.
4813         (copy_alias_set): Rename into...
4814         (relate_alias_sets): ...this.  Add third parameter OP.  Retrieve the
4815         underlying array of unconstrained arrays for the new type as well.
4816         If the old and new alias sets don't conflict, make one a subset of
4817         the other as per the OP parameter.
4818         (gnat_to_gnu_entity): Adjust calls to copy_alias_set.
4819         <E_Record_Type>: Do not copy the alias set for derived types.
4820         For all types, make the alias set of derived types a superset of
4821         that of their parent type.
4822         (make_aligning_type): Adjust calls to copy_alias_set.
4823         (make_packable_type): Likewise.
4824         * gcc-interface/trans.c (gnat_to_gnu)<N_Validate_Unchecked_Conversion>:
4825         Check for alias set conflict instead of strict equality to issue the
4826         warning.
4827
4828 2009-02-09  Eric Botcazou  <ebotcazou@adacore.com>
4829
4830         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
4831         Set TYPE_NONALIASED_COMPONENT on the array type only if appropriate.
4832         (copy_alias_set): Assert that arrays have the same aliasing settings.
4833         (substitute_in_type) <ARRAY_TYPE>: Copy TYPE_NONALIASED_COMPONENT.
4834
4835 2009-02-08  Eric Botcazou  <ebotcazou@adacore.com>
4836
4837         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_String_Literal_Subtype>:
4838         Set TYPE_NONALIASED_COMPONENT on the array type.
4839
4840 2009-01-31  Laurent GUERBY  <laurent@guerby.net>
4841
4842         * gcc-interface/Makefile.in: Fix mipsel linux handling.
4843
4844 2009-01-16  Jakub Jelinek  <jakub@redhat.com>
4845
4846         * gcc-interface/Makefile.in: Fix multilib handling for
4847         powerpc64-linux.
4848
4849 2009-01-12  Eric Botcazou  <ebotcazou@adacore.com>
4850
4851         * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Really strip
4852         only useless conversions around renamed objects.
4853
4854 2009-01-11  Eric Botcazou  <ebotcazou@adacore.com>
4855
4856         * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Put
4857         the _Tag field before any discriminants in the field list.
4858         (components_to_record): Remove obsolete comment.
4859
4860
4861 \f
4862 Copyright (C) 2009 Free Software Foundation, Inc.
4863
4864 Copying and distribution of this file, with or without modification,
4865 are permitted in any medium without royalty provided the copyright
4866 notice and this notice are preserved.