OSDN Git Service

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