OSDN Git Service

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