OSDN Git Service

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