OSDN Git Service

dd6d33f9d06328fc1027f3e933b33c338d1b1244
[pf3gnuchains/gcc-fork.git] / gcc / ada / ChangeLog
1 2004-04-28  Ulrich Weigand  <uweigand@de.ibm.com>
2
3         * Makefile.in: Add target macro definitions for s390*-linux*.
4         * system-linux-s390.ads: New file.
5         * system-linux-s390x.ads: New file.
6
7 2004-04-28  Joseph S. Myers  <jsm@polyomino.org.uk>
8
9         * gnat_ugn.texi: Correct argument to @setfilename.
10
11 2004-04-28  Ulrich Weigand  <uweigand@de.ibm.com>
12
13         * a-exexpr.adb (Unwind_Word): New data type.
14         (Unwind_Exception): Use it as type of Private1 and Private2.
15
16         * raise.c (db_action_for): Fix debug printf.
17
18 2004-04-27  Ed Schonberg  <schonberg@gnat.com>
19
20         * a-wtmoio.ads: Formal type must be a modular type, not a signed
21         integer type.
22
23 2004-04-27  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
24
25         * decl.c (gnat_to_gnu_entity, case object): Call
26         __builtin_update_setjmp_buf.
27
28         * gigi.h (update_setjmp_buf): Deleted.
29         (ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
30
31         * misc.c: (update_setjmp_buf): Deleted.
32
33         * trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
34         around block of RTL.
35
36         * utils.c (init_gigi_decls): Initialize update_setjmp_buf.
37
38 2004-04-26  Thomas Quinot  <quinot@act-europe.fr>
39
40         * sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
41         subprogram for which no pragma All_Calls_Remote applies, store the
42         address of the real subprogram in the underlying record type, so local
43         dereferences do not go through the PCS.
44
45 2004-04-26  Robert Dewar  <dewar@gnat.com>
46
47         * i-c.ads: Add some type qualifications to avoid ambiguities when
48         compiling with s-auxdec.ads and a non-private address type.
49
50 2004-04-26  Arnaud Charlet  <charlet@act-europe.fr>
51
52         * Makefile.rtl: Fix error in previous check-in:
53         Add s-addope.o to non tasking object list (rather than tasking object
54         list).
55
56 2004-04-26  Javier Miranda  <miranda@gnat.com>
57
58         * sem_aggr.adb: Fix typo in comments
59         (Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
60         Required to check the null-exclusion attribute.
61
62         * sem_attr.adb (Resolve_Attribute): Check the accessibility level in
63         case of anonymous access types in record and array components. For a
64         component definition the level is the same of the enclosing composite
65         type.
66
67         * sem_ch3.adb (Analyze_Component_Declaration): In case of components
68         that are anonymous access types the level of accessibility depends on
69         the enclosing type declaration. In order to have this information, set
70         the scope of the anonymous access type to the enclosing record type
71         declaration.
72         (Array_Type_Declaration): In case of components that are anonymous
73         access types the level of accessibility depends on the enclosing type
74         declaration. In order to have this information, set the scope of the
75         anonymous access type to the enclosing array type declaration.
76
77         * sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
78         access type.
79
80         * sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
81         renaming of anonymous access-to-constant types allowed if and only if
82         the renamed object is access-to-constant.
83
84         * sem_util.adb (Type_Access_Level): In case of anonymous access types
85         that are component_definition or discriminants of a nonlimited type,
86         the level is the same as that of the enclosing component type.
87
88 2004-04-26  Sergey Rybin  <rybin@act-europe.fr>
89
90         * sem_elim.adb: Some minor code reorganization from code reading. Fix
91         misprint in the function name (File_Name_Match).
92
93 2004-04-23  Laurent GUERBY <laurent@guerby.net>
94
95         * Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after 
96         install.
97         
98 2004-04-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
99
100         * Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
101
102 2004-04-23  Emmanuel Briot  <briot@act-europe.fr>
103
104         * adaint.c (__gnat_try_lock): No longer requires that the parent
105         directory be writable, the directory itself is enough.
106         (gnat_is_absolute_path): Change profile, so that the call from
107         GNAT.OS_Lib can be made more efficient.
108
109         * adaint.h (gnat_is_absolute_path): Change profile, so that the call
110         from GNAT.OS_Lib can be made more efficient.
111
112         * g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
113         one copy of the file name. Found by code reading.
114
115 2004-04-23  Vincent Celier  <celier@gnat.com>
116
117         * gnat_ugn.texi: Add documentation for gnatmake switch -eL
118         Correct documentation on gnatmake switches transmitted to the compiler
119
120         * ali.ads: Minor comment fix
121
122 2004-04-23  Javier Miranda  <miranda@gnat.com>
123
124         * sem_ch6.adb: (Confirming Types): Code cleanup
125
126         * decl.c (gnat_to_gnu_entity): Give support to anonymous access to
127         subprogram types: E_Anonymous_Access_Subprogram_Type and
128         E_Anonymous_Access_Protected_Subprogram_Type.
129
130 2004-04-23  Thomas Quinot  <quinot@act-europe.fr>
131
132         * sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
133         whether a pragma All_Calls_Remote applies to the subprogram on which
134         'Access is taken.
135         No functional change is introduced by this revision; the new parameter
136         will be used to allow calls to local RCI subprograms to be optimized
137         to not use the PCS in the case where no pragma All_Calls_Remote applies,
138         as is already done in the PolyORB implementation of the DSA.
139
140         * exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
141         whether a pragma All_Calls_Remote applies to the subprogram on which
142         'Access is taken.
143         No functional change is introduced by this revision; the new parameter
144         will be used to allow calls to local RCI subprograms to be optimized
145         to not use the PCS in the case where no pragma All_Calls_Remote applies,
146         as is already done in the PolyORB implementation of the DSA.
147
148 2004-04-23  Robert Dewar  <dewar@gnat.com>
149
150         * Makefile.rtl: Add entry for s-addope.o in run time library list
151         * Make-lang.in: Add entry for s-addope.o to GNAT1 objects
152         * s-addope.ads, s-addope.adb: New files.
153
154         * s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb, 
155         s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb, 
156         s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
157         System.Address to be non-private and signed.
158
159         * sem_elim.adb: Minor reformatting (fairly extensive)
160         Some minor code reorganization from code reading
161         Add a couple of ??? comments
162
163 2004-04-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
164
165         * trans.c (tree_transform, build_unit_elab): Don't call getdecls.
166         (tree_transform, case N_If_Statement): Remove non-determinism.
167
168         * utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
169
170 2004-04-23  Sergey Rybin  <rybin@act-europe.fr>
171
172         * gnat_rm.texi: Small fixes in the changes made in the 'pragma
173         Eliminate' section.
174
175         * snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
176         no longer used as a parameter name for Eliminate pragma).
177
178 2004-04-22  Laurent GUERBY <laurent@guerby.net>
179
180         PR optimization/14984
181         PR optimization/14985
182         * trans.c (gigi): Fix non determinism leading to bootstrap
183         comparison failures.
184
185 2004-04-21  Pascal Obry  <obry@gnat.com>
186
187         * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
188         passed to spawnvp() to properly handle program pathname with spaces on
189         Win32.
190
191 2004-04-21  Emmanuel Briot  <briot@act-europe.fr>
192
193         * g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
194         (Allocate, Deallocate, Free_Physically): Make sure the tasks are
195         unlocked in case of exceptions.
196
197 2004-04-21  Joel Brobecker  <brobecker@gnat.com>
198
199         * gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
200         This function does not exist anymore.
201
202 2004-04-21  Thomas Quinot  <quinot@act-europe.fr>
203
204         * gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
205
206         * link.c: Move variables to the __gnat name space.
207
208         * Makefile.in: list link.o explicitly when needed.
209
210         * mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
211
212 2004-04-21  Javier Miranda  <miranda@gnat.com>
213
214         * einfo.adb (Original_Access_Type): New subprogram
215         (Set_Original_Access_Type): New subprogram
216         (Write_Field21_Name): Write the name of the new field
217
218         * einfo.ads (Original_Access_Type): New field present in access to
219         subprogram types.
220         Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
221         E_Anonymous_Access_Protected_Subprogram_Type.
222
223         * lib-xref.adb (Output_One_Ref): Give support to anonymous access to
224         subprogram types.
225
226         * lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
227         to anonymous access to subprogram types.
228
229         * sem_attr.adb (Resolve_Attribute): Give support to anonymous access
230         to subprogram types.
231
232         * sem_ch3.adb (Access_Definition): Complete decoration of entities
233         corresponding to anonymous access to subprogram types.
234         (Analyze_Component_Declaration): Add new actual to the call to
235         subprogram replace_anonymous_access_to_protected_subprogram.
236         (Array_Type_Declaration): Add new actual to the call to subprogram
237         replace_anonymous_access_to_protected_subprogram.
238         (Process_Discriminants): Add new actual to the call to subprogram
239         replace_anonymous_access_to_protected_subprogram.
240         (Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
241
242         * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
243         formal.
244
245         * sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
246         access to subprogram types.
247
248         * sem_util.adb (Has_Declarations): Addition of package_specification
249         nodes.
250
251 2004-04-21  Ed Schonberg  <schonberg@gnat.com>
252
253         * sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
254         inlined flags to renamed entity only if in current unit.
255
256 2004-04-21  Thomas Quinot  <quinot@act-europe.fr>
257
258         * s-parint.ads: Add DSA implementation marker.
259
260         * rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
261         value of System.Partition_Interface.DSA_Implementation to determine
262         what version of the distributed systems annex is available (no
263         implementation, GLADE, or PolyORB).
264
265 2004-04-21  Joel Brobecker  <brobecker@gnat.com>
266
267         * targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
268
269 2004-04-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
270
271         * utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
272         with new type if alias sets differ.
273         Fixes ACATS c41103b.
274
275 2004-04-21  Vincent Celier  <celier@gnat.com>
276
277         * prj.ads: Remove FORTRAN as an accepted language: not tested yet.
278         Add array Lang_Args for the language specific compiling argument
279         switches.
280
281         * gnat_ugn.texi: Explain in more details when a library is rebuilt.
282
283 2004-04-21  Sergey Rybin  <rybin@act-europe.fr>
284
285         * gnat_rm.texi: Update the descripton of the Eliminate pragma
286         according to the recent changes in the format of the parameters of the
287         pragma (replacing Homonym_Number with Source_Location).
288
289 2004-04-19  Arnaud Charlet  <charlet@act-europe.fr>
290
291         * 5isystem.ads: Removed, unused.
292
293         * gnat_rm.texi: Redo 1.13 change.
294
295 2004-04-19  Robert Dewar  <dewar@gnat.com>
296
297         * s-stoele.ads: Clean up definition of Storage_Offset (the new
298         definition is cleaner, avoids the kludge of explicit Standard operator
299         references, and also is consistent with a visible System.Address with
300         no visible operations.
301
302         * s-geveop.adb: Add declarations to avoid assumption of visible
303         operations on type System.Address (since these might not be available
304         if Address is a non-private type for which the operations
305         are made abstract).
306
307         * sem_eval.adb: Minor reformatting
308
309         * s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
310         s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
311         reformatting (new function spec format).
312
313         * s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
314         s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
315         s-caun64.adb: Add declarations to avoid assumption of visible
316         operations on type System.Address (since these might not be available
317         if Address is a non-private type for which the operations are made
318         abstract).
319
320         * lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
321
322         * exp_intr.adb: Minor comment update
323
324         * exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
325
326         * 5omastop.adb: Add declarations to avoid assumption of visible
327         operations on type System.Address (since these might not be available
328         if Address is a non-private type for which the operations
329         are made abstract).
330
331 2004-04-19  Vincent Celier  <celier@gnat.com>
332
333         * switch-m.adb: (Scan_Make_Switches): Process new switch -eL
334
335         * prj-pars.ads (Parse): New Boolean parameter Process_Languages,
336         defaulted to Ada.
337
338         * prj-proc.adb (Process): New Boolean parameter Process_Languages,
339         defaulted to Ada.
340         Call Check with Process_Languages.
341         (Check): New Boolean parameter Process_Languages. Call Recursive_Check
342         with Process_Languages.
343         (Recursive_Check): New Boolean parameter Process_Languages. Call
344         Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
345         Process_Languages.
346
347         * prj-proc.ads (Process): New Boolean parameter Process_Languages,
348
349         * prj-util.ads, prj-util.adb (Executable_Of): New Boolean
350         parameter Ada_Main, defaulted to True.
351         Check for Ada specific characteristics only when Ada_Main is True.
352
353         * opt.ads: (Follow_Links): New Boolean flag for gnatmake
354
355         * prj.adb: (Project_Empty): Add new Project_Data components.
356
357         * prj.ads: New types and tables for non Ada languages.
358         (Project_Data): New components Languages, Impl_Suffixes,
359         First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
360         Include_Path, Include_Data_Set.
361
362         * prj-env.ads, prj-env.adb: Minor reformatting
363
364         * prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
365         Put subprograms in alphabetical order
366
367         * prj-pars.adb (Parse): New Boolean parameter Process_Languages,
368         defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
369         Opt.Follow_Links.
370
371         * mlib-prj.adb: Back out modification in last version, as they are
372         incorrect.
373         (Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
374
375         * make.adb: (Mains): Moved to package Makeutl
376         (Linker_Opts): Moved to package Makeutl
377         (Is_External_Assignment): Moved to package Makeutl
378         (Test_If_Relative_Path): Moved to package Makeutl
379         (Gnatmake): Move sorting of linker options to function
380         Makeutl.Linker_Options_Switches.
381
382         * makeutl.ads, makeutl.adb: New files.
383
384         * Makefile.in: Add makeutl.o to the object files for gnatmake
385
386         * makeusg.adb: Add line for new switch -eL.
387
388         * gnatls.adb (Image): New function.
389         (Output_Unit): If in verbose mode, output the list of restrictions
390         specified by pragmas Restrictions.
391
392         * 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
393         Text_IO.
394
395         * a-calend.adb (Split): Shift the date by multiple of 56 years, if
396         needed, to put it in the range 1970 (included) - 2026 (excluded).
397         (Time_Of): Do not shift Unix_Min_Year (1970).
398         Shift the date by multiple of 56 years, if needed, to put it in the
399         range 1970 (included) - 2026 (excluded).
400
401         * adaint.h, adaint.c (__gnat_set_executable): New function.
402
403 2004-04-19  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
404
405         * trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
406         and pop GC context.
407         (tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
408         (tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH.
409         (tree_transform, case N_Procedure_Call_Statement): Build a tree.
410         (tree_transform, case N_Code_Statement): Likewise.
411         (gnat_expand_stmt, case LABEL_STMT): Don't look at
412         LABEL_STMT_FIRST_IN_EH.
413         (gnat_expand_stmt, case ASM_STMT): New case.
414
415         * utils2.c (build_unary_op): Properly set TREE_READONLY of
416         UNCONSTRAINED_ARRAY_REF.
417
418         * utils.c (poplevel): Temporarily push/pop GC context around inline
419         function expansion.
420
421         * decl.c (maybe_variable): Properly set TREE_READONLY of
422         UNCONSTRAINED_ARRAY_REF.
423         (make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
424
425         * ada-tree.def: (ASM_STMT): New.
426
427         * ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
428         (ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
429         ASM_STMT_INPUT): New.
430         (ASM_STMT_CLOBBER): Likewise.
431
432 2004-04-19  Thomas Quinot  <quinot@act-europe.fr>
433
434         * a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
435         general rcheck mechanism to raise Program_Error for E.4(18), instead
436         of a custom raiser in System.Partition_Interface.
437         Part of general cleanup work before PolyORB integration.
438
439         * snames.ads, snames.adb: Add new runtime library entities and names
440         for PolyORB DSA.
441
442         * sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
443         exp_dist.
444         (Build_Subprogram_Id): New subprogram provided by exp_dist
445         Code reorganisation in preparation for PolyORB integration.
446
447         * exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
448         exp_dist.
449         (Build_Subprogram_Id): New subprogram provided by exp_dist
450
451         * sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
452         actual parameter types for call to dereference of an
453         access-to-subprogram type.
454
455         * rtsfind.ads: Add new runtime library entities and names for PolyORB
456         DSA.
457
458         * gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
459         instead, which has the same behaviour here since we never pass it a
460         NULL pointer.
461
462         * link.c (run_path_option, Solaris case): Use -Wl, as for other
463         platforms.
464
465         * Makefile.in: adjust object file lists for gnatlink and gnatmake
466         to account for new dependency upon Interfaces.C.Strings + link.o
467         For x86 FreeBSD, use 86numaux.
468
469         * make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
470         from Mlib.Tgt to Mlib.
471
472         * mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
473         target-independent.
474
475         * mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
476         target-specific versions of this subprogram, now implemented as a
477         target-independent function in Mlib.
478
479         * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
480         5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
481         (Linker_Library_Path_Option): Remove target-specific versions of this
482         subprogram, now implemented as a target-independent function in Mlib.
483
484         * atree.adb: (Allocate_Initialize_Node): New subprogram.
485         Factors out node table slots allocation.
486         (Fix_Parents): New subprogram.
487         Encapsulate the pattern of fixing up parent pointers for syntactic
488         children of a rewritten node.
489         (New_Copy_Tree): Use New_Copy to copy non-entity nodes.
490         (Rewrite): Use New_Copy when creating saved copy of original node.
491         (Replace): Use Copy_Node to copy nodes.
492
493 2004-04-19  Javier Miranda  <miranda@gnat.com>
494
495         * sprint.adb (Sprint_Node_Actual): Give support to the new
496         Access_To_Subprogram node available in Access_Definition nodes. In
497         addition, give support to the AI-231 node fields: null-exclusion,
498         all-present, constant-present.
499
500         * sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
501
502         * sinfo.ads, sinfo.adb: 
503         New field Access_To_Subprogram_Definition in Access_Definition nodes
504
505         * sem_ch6.adb (Process_Formals): Move here the code that creates and
506         decorates internal subtype declaration corresponding to the
507         null-excluding formal. This code was previously in Set_Actual_Subtypes.
508         In addition, carry out some code cleanup on this code. In case of
509         access to protected subprogram call
510         Replace_Anonymous_Access_To_Protected_Subprogram.
511         (Set_Actual_Subtypes): Code cleanup.
512
513         * sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
514         Find_Type in case of anonymous access renamings. Add warning in case of
515         null-excluding attribute used in anonymous access renaming.
516
517         * sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
518         subprogram
519
520         * sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
521         subprogram.
522         (Access_Definition): In case of anonymous access to subprograms call
523         the corresponding semantic routine to decorate the node.
524         (Access_Subprogram_Declaration): Addition of some comments indicating
525         some code that probably should be added here. Detected by comparison
526         with the access_definition subprogram.
527         (Analyze_Component_Declaration): In case of access to protected
528         subprogram call Replace_Anonymous_Access_To_Protected.
529         (Array_Type_Declaration): In case of access to protected subprogram call
530         Replace_Anonymous_Access_To_Protected_Subprogram.
531         (Process_Discriminants): In case of access to protected subprogram call
532         Replace_Anonymous_Access_To_Protected_Subprogram.
533
534         * par.adb (P_Access_Definition): New formal that indicates if the
535         null-exclusion part was present.
536         (P_Access_Type_Definition): New formal that indicates if the caller has
537         already parsed the null-excluding part.
538
539         * par-ch3.adb (P_Subtype_Declaration): Code cleanup.
540         (P_Identifier_Declarations): Code cleanup and give support to renamings
541         of anonymous access to subprogram types.
542         (P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
543         (P_Array_Type_Definition): Give support to AI-254.
544         (P_Component_Items): Give support to AI-254.
545         (P_Access_Definition): New formal that indicates if the header was
546         already parsed by the caller.
547         (P_Access_Type_Definition): New formal that indicates if the caller has
548         already parsed the null-excluding part.
549
550         * par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
551         call to P_Access_Definition.
552
553 2004-04-19  Geert Bosch  <bosch@gnat.com>
554
555         * checks.adb (Apply_Float_Conversion_Check): New procedure to implement
556         the delicate semantics of floating-point to integer conversion.
557         (Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
558
559         * eval_fat.adb (Machine_Mantissa): Moved to spec.
560         (Machine_Radix): New function.
561
562         * eval_fat.ads (Machine_Mantissa): Moved from body for use in
563         conversion checks.
564         (Machine_Radix): New function also for use in conversion checks.
565
566 2004-04-19  Ed Schonberg  <schonberg@gnat.com>
567
568         * par-prag.adb (Source_File_Name_Project): Fix typo in error message.
569
570         * exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
571         to decorate the access-to-protected subprogram and the equivalent type.
572
573         * checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
574         to anonymous access to subprogram types.
575
576         * exp_ch4.adb (Expand_N_In): Preserve Static flag before
577         constant-folding, for legality checks in contexts that require an RM
578         static expression.
579
580         * exp_ch6.adb (Expand_N_Function_Call): If call may generate large
581         temporary but stack checking is not enabled, increment serial number
582         to so that symbol generation is consistent with and without stack
583         checking.
584
585         * exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
586         independent on whether stack checking is enabled, caller must check
587         the corresponding flag.
588
589         * sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
590         range checks.
591         (Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
592         parent if it has discriminants.
593         (Build_Derived_Private_Type): Constructed full view does
594         not come from source.
595         (Process_Discriminants): Default discriminants on a tagged type are
596         legal if this is the internal completion of a private untagged
597         derivation.
598
599         * sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
600         no constraint checks, because it corresponds to an existing object.
601
602         * sem_prag.adb (Process_Convention): Pragma applies
603         only to subprograms in the same declarative part, i.e. the same unit,
604         not the same scope.
605
606         * sem_res.adb (Valid_Conversion): In an instance or inlined body,
607         ignore type mismatch on a numeric conversion if expression comes from
608         expansion.
609
610 2004-04-19  Sergey Rybin  <rybin@act-europe.fr>
611
612         * sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
613         Homonym_Number parameter, add processing for Source_Location parameter
614         corresponding.
615         (Check_Eliminated): Remove the check for homonym numbers, add the check
616         for source location traces.
617
618         * sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
619         with Arg_Source_Location corresponding to the changes in the format of
620         the pragma.
621
622         * sem_prag.adb: (Analyze_Pragma): Changes in the processing of
623         Eliminate pragma corresponding to the changes in the format of the
624         pragma: Homonym_Number is replaced with Source_Location, two ways of
625         distinguishing homonyms are mutially-exclusive.
626
627 2004-04-19  Joel Brobecker  <brobecker@gnat.com>
628
629         * get_targ.ads (Get_No_Dollar_In_Label): Remove.
630
631         * exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
632         No_Dollar_In_Label, no longer necessary, as it is always True.
633         (Strip_Suffixes): Likewise.
634
635 2004-04-19  Gary Dismukes  <dismukes@gnat.com>
636
637         * s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
638         modulus for compatibility with size clause on targets with 16-bit
639         Integer.
640
641         * layout.adb (Discrimify): In the case of private types, set Vtyp to
642         full type to fix type mismatches on calls to size functions for
643         discriminant-dependent array components.
644
645 2004-04-19  Jerome Guitton  <guitton@act-europe.fr>
646
647         * Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
648         lib.
649
650 2004-04-19  Pascal Obry  <obry@gnat.com>
651
652         * mdll-utl.adb (Locate): New version is idempotent.
653
654 2004-04-17  Laurent Guerby <laurent@guerby.net>
655
656         PR ada/14988 (partial)
657         * impunit.adb: Fix typo.
658         
659 2004-04-14  Nathanael Nerode  <neroden@gcc.gnu.org>
660
661         * Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
662         and install-rts-cert targets.  Remove all gnatlib and gnattools
663         targets and all other rts-* targets (moved to libada).  Remove (now)
664         unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
665         TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
666
667 2004-04-08  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
668
669         * trans.c (tree_transform): Shortcut returning error_mark_node for
670         statements in annotate_only_mode.
671         (tree_transform, case N_Label, case N_Return_Statement,
672         N_Goto_Statement): Make statement tree instead of generating code.
673         (tree_transform, case N_Assignment_Statement): No longer check
674         type_annotate_only.
675         (gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
676         RETURN_STMT): New.
677         (first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
678         New fcns.
679         (gnat_to_gnu): Collect any RTL generated and deal with it.
680         (tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR.
681         (tree_transform case N_If_Statement): Rewrite to make IF_STMT.
682         (gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
683
684         * ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
685
686         * ada-tree.def (EXPR_STMT): Fix typo in name.
687         (BLOCK_STMT, IF_STMT): New nodes.
688
689         * ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
690         LABEL_STMT_FIRST_IN_EH): New macros.
691         (RETURN_STMT_EXPR): Likewise.
692
693         * ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
694         IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
695
696 2004-04-08  Thomas Quinot  <quinot@act-europe.fr>
697
698         * atree.ads: Correct documentation on extended nodes.
699
700         * link.c: Set run_path_option for FreeBSD.
701
702 2004-04-08  Vincent Celier  <celier@gnat.com>
703
704         * mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
705         one of the ALI file, do not link with DEC lib.
706
707         * par.adb Remove the last two characters ("%s" or "%b") when checking
708         if a language defined unit may be recompiled.
709
710 2004-04-08  Ed Schonberg  <schonberg@gnat.com>
711
712         * sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
713         removal of abstract operation leaves no possible interpretation for
714         expression.
715
716         * sem_eval.adb (Eval_Qualified_Expression): Use
717         Set_Raises_Constraint_Error on node when needed, so that it does not
718         get optimized away by subsequent optimizations.
719
720         * sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
721         operands even when they are not wrapped in a type conversion.
722
723 2004-04-08  Olivier Hainque  <hainque@act-europe.fr>
724
725         * sem_prag.adb (Set_Exported): Warn about making static as result of
726         export only when the export is coming from source. This may be not
727         be true e.g. on VMS where we expand export pragmas for exception codes
728         together with imported or exported exceptions, and we don't want the
729         user to be warned about something he didn't write.
730
731 2004-04-08  Thomas Quinot  <quinot@act-europe.fr>
732
733         * sem_util.adb (Note_Possible_Modification): Reorganize to remove code
734         duplication between normal entities and those declared as renamings.
735         No functional change.
736
737         * s-fileio.ads (Form): Remove pragma Inline, as we cannot currently     
738         inline functions returning an unconstrained result.
739
740 2004-04-08  Eric Botcazou  <ebotcazou@act-europe.fr>
741
742         * utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
743         conform to what other front-ends do.
744
745 2004-04-08  Doug Rupp  <rupp@gnat.com>
746
747         * 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
748         libraries.
749
750 2004-04-06  Pascal Obry  <obry@gnat.com>
751
752         * adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
753
754         * osint.adb (Program_Name): Do not look past a directory separator.
755
756 2004-04-06  Thomas Quinot  <quinot@act-europe.fr>
757
758         * atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
759
760         * exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
761         requirement for preserving a copy of the original assignment node.
762
763         * sinfo.ads: Update comment (Original_Tree -> Original_Node).
764
765 2004-04-06  Olivier Hainque  <hainque@act-europe.fr>
766
767         (__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
768         when supported.
769
770 2004-04-06  Ed Schonberg  <schonberg@gnat.com>
771
772         * sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
773         operator calls in functional notation, and apply
774         Universal_Interpretation to operands, not to their type.
775
776 2004-04-06  Robert Dewar  <dewar@gnat.com>
777
778         * 5wdirval.adb: Minor reformatting
779
780 2004-04-06  Ed Falis  <falis@gnat.com>
781
782         * gnat_rm.texi: Improve a reference to the GCC manual
783
784 2004-04-05  Vincent Celier  <celier@gnat.com>
785
786         * adaint.h, adaint.c: Add function __gnat_named_file_length
787
788         * impunit.adb: Add Ada.Directories to the list
789
790         * Makefile.in: Add VMS and Windows versions of
791         Ada.Directories.Validity package body.
792
793         * Makefile.rtl: Add a-direct and a-dirval
794
795         * mlib-tgt.ads: Minor comment update.
796
797         * a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
798         a-direct.ads, a-direct.adb: New files.
799
800 2004-04-05  Vincent Celier  <celier@gnat.com>
801
802         PR ada/13620
803         * make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
804         just to the compiler.
805
806 2004-04-05  Robert Dewar  <dewar@gnat.com>
807
808         * a-except.adb (Exception_Name_Simple): Make sure lower bound of
809         returned string is 1.
810
811         * ali-util.adb: Use proper specific form for Warnings (Off, entity)
812
813         * eval_fat.ads: Minor reformatting
814
815         * g-curexc.ads: Document that lower bound of returned string values
816         is always one.
817
818         * gnatlink.adb: Add ??? comment for previous change
819         (need to document why this is VMS specific)
820
821         * s-stoele.ads: Minor reformatting
822
823         * tbuild.ads: Minor reformatting throughout (new function specs)
824
825         * par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
826         after WITH.
827
828         * scng.adb: Minor reformatting
829
830 2004-04-05  Geert Bosch  <bosch@gnat.com>
831
832         * eval_fat.adb (Machine): Remove unnecessary suppression of warning.
833         (Leading_Part): Still perform truncation to machine number if the
834         specified radix_digits is greater or equal to machine_mantissa.
835
836 2004-04-05  Javier Miranda  <miranda@gnat.com>
837
838         * par-ch3.adb: Complete documentation of previous change
839         Correct wrong syntax documentation of the OBJECT_DECLARATION rule
840         (aliased must appear before constant).
841
842         * par-ch4.adb: Complete documentation of previous change.
843
844         * par-ch6.adb: Complete documentation of previous change.
845
846         * sinfo.ads: Fix typo in commment.
847
848 2004-04-05  Ed Schonberg  <schonberg@gnat.com>
849
850         * sem_ch3.adb (Inherit_Components): If derived type is private and has
851         stored discriminants, use its discriminants to constrain parent type,
852         as is done for non-private derived record types.
853
854         * sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
855         Ada 2005 AI-310: an abstract non-dispatching operation is not a
856         candidate interpretation in an overloaded call.
857
858         * tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
859         expression is Null and target type is not an access type (e.g. a
860         non-private address type).
861
862 2004-04-05  Thomas Quinot  <quinot@act-europe.fr>
863
864         * exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
865         statement whose right-hand side is an inlined call, save a copy of the
866         original assignment subtree to preserve enough consistency for
867         Analyze_Assignment to proceed.
868
869         * sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
870         complete assignment subtree which is now unnecessary, as the expansion
871         of inlined call has been improved to preserve a consistent assignment
872         tree.  Note_Possible_Modification must be called only
873         after checks have been applied, or else unnecessary checks will
874         be generated.
875
876         * sem_util.adb (Note_Possible_Modification): Reorganise the handling
877         of explicit dereferences that do not Come_From_Source:
878          - be selective on cases where we must go back to the dereferenced
879            pointer (an assignment to an implicit dereference must not be
880            recorded as modifying the pointer);
881          - do not rely on Original_Node being present (Analyze_Assignment
882            calls Note_Possible_Modification on a copied tree).
883
884         * sem_warn.adb (Check_References): When an unset reference to a pointer
885         that is never assigned is encountered, prefer '<pointer> may be null'
886         warning over '<pointer> is never assigned a value'.
887
888 2004-04-05  Ramon Fernandez  <fernandez@gnat.com>
889
890         * tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
891         the ABI.
892
893 2004-04-05  Olivier Hainque  <hainque@act-europe.fr>
894
895         * 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
896         libexc. We currently don't reference anything in this library and
897         linking it in triggers linker warnings we don't want to see.
898
899         * init.c: Update comments.
900
901 2004-04-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
902
903         * decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
904         * utils.c (create_field_decl): Likewise.
905         * utils2.c (build_unary_op, gnat_build_constructor): Likewise.
906
907 2004-04-02  Arnaud Charlet  <charlet@act-europe.fr>
908
909         * gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
910         Replace ifinfo by ifnottex, to make makeinfo --html happy again.
911         Add info directory entry and category.
912
913 2004-04-02  Jan Hubicka  <jh@suse.cz>
914
915         * utils.c: Include function.h
916         (end_subprog_body): Clear DECL_STRUCT_FUNCTION.
917
918 2004-04-01  Arnaud Charlet  <charlet@act-europe.fr>
919
920         PR ada/14150
921         * Make-lang.in: Clean up generation of documentation
922
923         * gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
924
925         * xgnatug.adb: Removed, replaced by xgnatugn.adb
926
927         * xgnatugn.adb: Replaces xgnatug.adb
928
929         * gnat_ug.texi: Removed, replaced by gnat_ugn.texi
930
931         * gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
932
933         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
934         gnat_ug_wnt.texi: Removed.
935
936 2004-04-01  Arnaud Charlet  <charlet@act-europe.fr>
937
938         * utils2.c: Update copyright notice.
939
940 2004-04-01  Robert Dewar  <dewar@gnat.com>
941
942         * checks.adb: Minor reformatting throughout
943         Note that prev checkin added RM reference to alignment warning
944
945 2004-04-01  Ed Schonberg  <schonberg@gnat.com>
946
947         * exp_aggr.adb (Get_Component_Val): Treat a string literal as
948         non-static when building aggregate for bit-packed array.
949
950         * exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
951         function call that is itself the actual in a procedure call, build
952         temporary for it.
953
954         * exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
955         a string literal, create a temporary for it, constant folding only
956         handles scalars here.
957
958 2004-04-01  Vincent Celier  <celier@gnat.com>
959
960         * ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
961         Error_Msg_SP): New empty procedures to instantiate the Scanner.
962         (Style, Scanner): Instantiations of Styleg and Scng to be able to scan
963         tokens.
964         (Accumulate_Checksum, Initialize_Checksum): Remove procedures.
965         (Get_File_Checksum): Use the instantiated scanner to scan all the tokens
966         and get the checksum.
967
968         * make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
969         already in the Q.
970         Increase the Marking_Label at the end of the Multiple_Main_Loop,
971         instead of at the beginning.
972
973         * osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
974         directly.
975         (Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
976         on VMS.
977
978         * osint.ads (Multi_Unit_Index_Character): New Character global variable
979
980         * osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
981         not '~' directly.
982
983         * par.adb: Remove test on file name to detect language defined units.
984         Add test on unit name, after parsing, to detect language defined units
985         that are not compiled with -gnatg (except System.RPC and its children)
986
987         * par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
988         following units without style checking.
989
990         * switch-c.adb: Change -gnatC to -gnateI
991
992         * usage.adb: Document new switch -gnateInnn
993
994         * scng.adb (Accumulate_Token_Checksum): New procedure
995         (Scan): Call Accumulate_Token_Checksum after each identifier, reserved
996         word or literal number.
997         (Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
998         numbers.
999
1000 2004-04-01  Thomas Quinot  <quinot@act-europe.fr>
1001
1002         * a-tasatt.adb,
1003         g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
1004         switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
1005         5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
1006         5vtpopde.adb: Add missing 'constant' keywords.
1007
1008 2004-04-01  Javier Miranda  <miranda@gnat.com>
1009
1010         * par-ch4.adb: (P_Allocator): Code cleanup
1011
1012         * sem_ch3.adb (Access_Definition): Properly set the null-excluding
1013         attribute.
1014
1015         * sinfo.ads: Complete documentation of previous change
1016
1017 2004-04-01  Pascal Obry  <obry@gnat.com>
1018
1019         * gnatlink.adb (Process_Binder_File): Remove duplicate linker options
1020         only on VMS.  This special handling was done because an old GNU/ld bug
1021         on Windows which has been fixed.
1022
1023 2004-04-01  GNAT Script  <nobody@gnat.com>
1024
1025         * Make-lang.in: Makefile automatically updated
1026
1027 2004-03-31  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1028
1029         * decl.c (gnat_to_gnu_entity, make_type_from_size):
1030         Use TYPE_UNSIGNED, not TREE_UNSIGNED.
1031         * trans.c (tree_transform, convert_with_check): Likewise.
1032         * utils.c (gnat_signed_or_unsigned_type): Likewise.
1033         (build_vms_descriptor, unchecked_convert): Likewise.
1034         * utils2.c (nonbinary_modular_operation): Likewise.
1035
1036 2004-03-29  Javier Miranda  <miranda@gnat.com>
1037
1038         * checks.adb (Null_Exclusion_Static_Checks): New subprogram
1039         (Install_Null_Excluding_Check): Local subprogram that determines whether
1040         an access node requires a runtime access check and if so inserts the
1041         appropriate run-time check.
1042         (Apply_Access_Check): Call Install_Null_Excluding check if required
1043         (Apply_Constraint_Check): Call Install_Null_Excluding check if required
1044
1045         * checks.ads: (Null_Exclusion_Static_Checks): New subprogram
1046
1047         * einfo.ads: Fix typo in comment
1048
1049         * exp_ch3.adb (Build_Assignment): Generate conversion to the
1050         null-excluding type to force the corresponding run-time check.
1051         (Expand_N_Object_Declaration): Generate conversion to the null-excluding
1052         type to force the corresponding run-time check.
1053
1054         * exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
1055         the null-excluding type to force the corresponding run-time check.
1056
1057         * exp_ch6.adb (Expand_Call): Do not generate the run-time check in
1058         case of access types unless they have the null-excluding attribute.
1059
1060         * sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
1061         part.
1062
1063         * exp_util.ads: Fix typo in comment
1064
1065         * par.adb (P_Null_Exclusion): New subprogram
1066         (P_Subtype_Indication): New formal that indicates if the null-excluding
1067         part has been scanned-out and it was present
1068
1069         * par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
1070
1071         * sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
1072         (Aggregate_Constraint_Checks): Generate conversion to the null-excluding
1073         type to force the corresponding run-time check
1074         (Resolve_Aggregate): Propagate the null-excluding attribute to the array
1075         components
1076         (Resolve_Array_Aggregate): Carry out some static checks
1077         (Resolve_Record_Aggregate.Get_Value): Carry out some static check
1078
1079         * sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
1080         attribute must be set only if specified by means of the null-excluding
1081         part. In addition, we must also propagate the access-constant attribute
1082         if present.
1083         (Access_Subprogram_Declaration, Access_Type_Declaration,
1084         Analyze_Component_Declaration, Analyze_Object_Declaration,
1085         Array_Type_Declaration, Process_Discriminants,
1086         Analyze_Subtype_Declaration): Propagate the null-excluding attribute
1087         and carry out some static checks.
1088         (Build_Derived_Access_Type): Set the null-excluding attribute
1089         (Derived_Type_Declaration, Process_Subtype): Carry out some static
1090         checks.
1091
1092         * sem_ch4.adb (Analyze_Allocator): Carry out some static checks
1093
1094         * sem_ch5.adb (Analyze_Assignment): Carry out some static checks
1095
1096         * sem_ch6.adb (Process_Formals): Carry out some static checks.
1097         (Set_Actual_Subtypes): Generate null-excluding subtype if the
1098         null-excluding part was present; it is not required to be done here in
1099         case of anonymous access types.
1100         (Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
1101         value.
1102
1103         * sem_res.adb (Resolve_Actuals): Carry out some static check
1104         (Resolve_Null): Allow null in anonymous access
1105
1106         * sinfo.adb: New subprogram Null_Exclusion_Present
1107         All_Present and Constant_Present available on access_definition nodes
1108
1109         * sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
1110         object_declaration, derived_type_definition, component_definition,
1111         discriminant_specification, access_to_object_definition,
1112         access_function_definition, allocator, access_procedure_definition,
1113         access_definition, parameter_specification, All_Present and
1114         Constant_Present flags available on access_definition nodes.
1115
1116 2004-03-29  Robert Dewar  <dewar@gnat.com>
1117
1118         * fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
1119         gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
1120         opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
1121         par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
1122         sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
1123         sem_prag.adb: Updates to handle multiple units/file
1124
1125         * par.adb: Change test for s-rpc to s-rp for detecting rpc and children
1126
1127         * par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
1128         sem_util.adb: Minor reformatting
1129
1130         * sem_ch12.adb: Add comment for previous change
1131
1132 2004-03-29  Laurent Pautet  <pautet@act-europe.fr>
1133
1134         * osint.adb (Executable_Prefix): Set Exec_Name to the current
1135         executable name when not initialized. Otherwise, use its current value.
1136
1137         * osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
1138         initialize it to another executable name than the current one. This
1139         allows to configure paths for an executable name (gnatmake) different
1140         from the current one (gnatdist).
1141
1142 2004-03-29  Ed Schonberg  <schonberg@gnat.com>
1143
1144         * exp_ch6.adb (Expand_Call): A call to a function declared in the
1145         current unit cannot be inlined if it appears in the body of a withed
1146         unit, to avoid order of elaboration problems in gigi.
1147
1148         * exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
1149         information for protected (wrapper) operation as well, to simplify gdb
1150         use.
1151
1152         * sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
1153         protected body, indicate that the entity for the generated spec comes
1154         from source, to ensure that references are properly generated for it.
1155         (Build_Body_To_Inline): Do not inline a function that returns a
1156         controlled type.
1157
1158         * sem_prag.adb (Process_Convention): If subprogram is overloaded, only
1159         apply convention to homonyms that are declared explicitly.
1160
1161         * sem_res.adb (Make_Call_Into_Operator): If the operation is a function
1162         that renames an equality operator and the operands are overloaded,
1163         resolve them with the declared formal types, before rewriting as an
1164         operator.
1165
1166 2004-03-29  GNAT Script  <nobody@gnat.com>
1167
1168         * Make-lang.in: Makefile automatically updated
1169
1170 2004-03-25  Vasiliy Fofanov  <fofanov@act-europe.fr>
1171
1172         * memtrack.adb: Log realloc calls, which are treated as free followed
1173         by alloc.
1174
1175 2004-03-25  Vincent Celier  <celier@gnat.com>
1176
1177         * prj-makr.adb (Process_Directories): Detect when a file contains
1178         several units. Do not include such files in the config pragmas or
1179         in the naming scheme.
1180
1181         * prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
1182         Resolve links only when not in Trusted_Mode.
1183         (Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
1184         Do not resolve links for the display names.
1185
1186         * prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
1187         resolve links when computing the display names.
1188
1189 2004-03-25  Thomas Quinot  <quinot@act-europe.fr>
1190
1191         * sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
1192         attribute reference does not denote a subtype, it can be any
1193         expression that has a classwide type, potentially after an implicit
1194         dereference.  In particular, the prefix can be a view conversion for
1195         a classwide type (for which Is_Object_Reference holds), but it can
1196         also be a value conversion for an access-to-classwide type. In the
1197         latter case, there is an implicit dereference, and the original node
1198         for the prefix does not verify Is_Object_Reference.
1199
1200         * sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
1201         conversion of a discriminant-dependent component of a mutable object
1202         is one itself.
1203
1204 2004-03-25  Ed Schonberg  <schonberg@gnat.com>
1205
1206         * freeze.adb (Freeze_Entity): When an inherited subprogram is
1207         inherited, has convention C, and has unconstrained array parameters,
1208         place the corresponding warning on the derived type declaration rather
1209         than the original subprogram.
1210
1211         * sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
1212         indication on renaming declaration, if formal has a box and actual
1213         is absent.
1214
1215         * sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
1216         determine whether to generate an implicit or explicit reference to
1217         the renamed entity.
1218
1219         * sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
1220         subprogram renaming comes from a defaulted formal subprogram in an
1221         instance.
1222
1223 2004-03-25  Gary Dismukes  <dismukes@gnat.com>
1224
1225         * sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
1226         value expressions to ensure that calls within a component definition
1227         will be checked (since those are evaluated during the record type's
1228         elaboration).
1229
1230 2004-03-25  Arnaud Charlet  <charlet@act-europe.fr>
1231
1232         * s-tpobop.adb: Code clean up:
1233         (Requeue_Call): Extract from PO_Service_Entries to remove duplicated
1234         code.
1235         (PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
1236
1237 2004-03-25  Jose Ruiz  <ruiz@act-europe.fr>
1238
1239         * Makefile.in: Clean up in the ravenscar run time.
1240
1241 2004-03-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1242
1243         * decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
1244         of No_Strict_Aliasing to build_pointer_type_for_mode.
1245         * utils.c (update_pointer_to): Walk pointer and ref chains.
1246
1247 2004-03-22  Cyrille Comar  <comar@act-europe.fr>
1248
1249         * ali.ads: Fix Comment about Dynamic_Elab.
1250
1251         * gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
1252         Has_RACW, Is_Generic, etc.)
1253         (Output_Object, Gnatls): Take into account ALI files not attached to
1254         an object.
1255
1256 2004-03-22  Vincent Celier  <celier@gnat.com>
1257
1258         * gprep.adb: Change all String_Access to Name_Id
1259         (Is_ASCII_Letter): new function
1260         (Double_File_Name_Buffer): New procedure
1261         (Preprocess_Infile_Name): New procedure
1262         (Process_Files): New procedure
1263         (Gnatprep): Check if output and input are existing directories.
1264         Call Process_Files to do the real job.
1265
1266 2004-03-22  Robert Dewar  <dewar@gnat.com>
1267
1268         * prj-env.adb, prj-nmsc.ads, prj-proc.ads,
1269         s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
1270
1271 2004-03-22  Sergey Rybin  <rybin@act-europe.fr>
1272
1273         * scn.adb (Contains): Add check for EOF, is needed for a degenerated
1274         case when the source contains only comments.
1275
1276 2004-03-22  Ed Schonberg  <schonberg@gnat.com>
1277
1278         * sem_ch10.adb (Analyze_Compilation_Unit): When generating a
1279         declaration for a child subprogram body that acts as a spec, indicate
1280         that the entity in the declaration needs debugging information.
1281
1282         * sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
1283         full view if the subtype is created for a constrained record component;
1284         gigi has enough information to construct the record, and there is no
1285         place in the tree for the declaration.
1286
1287         * sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
1288         serial number for the dummy body that is built for analysis, to avoid
1289         inconsistencies in the generation of internal names when compiling
1290         with -gnatN.
1291
1292 2004-03-22  Thomas Quinot  <quinot@act-europe.fr>
1293
1294         * sem_util.adb (Is_Object_Reference): A view conversion denotes an
1295         object.
1296
1297 2004-03-22  GNAT Script  <nobody@gnat.com>
1298
1299         * Make-lang.in: Makefile automatically updated
1300
1301 2004-03-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1302
1303         * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
1304         * trans.c (tree_transform, emit_index_check): Likewise.
1305         * utils.c (build_template): Likewise.
1306         (max_size, convert): Remove handling of WITH_RECORD_EXPR.
1307         (maybe_unconstrained_array, unchecked_convert): Likewise.
1308         * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
1309         (build_unary_op): Likewise.
1310         (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
1311         (fill_vms_descriptor): Likewise.
1312         (build_call_alloc_dealloc): Likewise.
1313         ALIGN is unsigned.
1314         * gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
1315
1316 2004-03-20  Joseph S. Myers  <jsm@polyomino.org.uk>
1317
1318         PR other/14630
1319         * gnat_ug.texi: Add info directory category and entry.
1320         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
1321         gnat_ug_wnt.texi: Regenerate.
1322
1323 2004-03-19  Arnaud Charlet  <charlet@act-europe.fr>
1324
1325         * ada-tree.h: Update copyright notice.
1326         Minor reformatting.
1327
1328 2004-03-19  Olivier Hainque  <hainque@act-europe.fr>
1329
1330         * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
1331         as regular exception objects and not as mere integers representing the
1332         condition code.  The latter approach required some dynamics to mask off
1333         severity bits, which did not fit well into the GCC table based model.
1334         (gnat_to_gnu_entity, objects): Don't supply an external name for VMS
1335         exception data objects. We don't it and it would conflict with the other
1336         external symbol we have to generate for such exceptions.
1337
1338         * trans.c (tree_transform, case N_Exception_Handler): Remove part of
1339         the special code for VMS exceptions, since these are now represented
1340         as regular exceptions objects.
1341
1342 2004-03-19 Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1343
1344         * decl.c (debug_no_type_hash): Remove.
1345         (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
1346         * misc.c (LANG_HOOK_HASH_TYPE): Redefine.
1347
1348 2004-03-19  Laurent Guerby <laurent@guerby.net>
1349
1350         * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of 
1351         aggregate, allows bootstrap from 3.3 on powerpc-darwin.
1352         
1353 2004-03-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1354
1355         * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
1356         (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
1357         (TYPE_RM_SIZE_INT): Directly use type.values.
1358         (TREE_LOOP_ID): Clean up check.
1359         * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
1360         TYPE_VALUES, not TYPE_FIELDS.
1361         * trans.c (convert_with_check): Delay access of bounds of basetype
1362         until sure is numeric.
1363
1364 2004-03-18  Arnaud Charlet  <charlet@act-europe.fr>
1365
1366         * 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
1367
1368         Code clean up:
1369         * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
1370         5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
1371         Specific.Set instead of direct call to e.g pthread_setspecific.
1372
1373 2004-03-18  Thomas Quinot  <quinot@act-europe.fr>
1374
1375         * adaint.c: Update comments.
1376
1377         * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
1378         GNATLIB_SHARED for FreeBSD.
1379
1380 2004-03-18  Jose Ruiz  <ruiz@act-europe.fr>
1381
1382         * init.c [VxWorks]: Do not fix the stack size for the environment task.
1383         When needed (stack checking) the stack size is retrieved
1384         from the VxWorks kernel.
1385
1386         * Makefile.in: Flag -nostdinc is required when building the run time
1387         for avoiding looking for files in the base compiler.
1388         Add the VxWorks specific version of the package body for
1389         System.Stack_checking.Operations (5zstchop.adb).
1390
1391         * Make-lang.in: Add the object file for
1392         System.Stack_Checking.Operations.
1393
1394         * Makefile.rtl: Add object file for the package
1395         System.Stack_Checking.Operations.
1396
1397         * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
1398
1399         * s-stache.ads, s-stache.adb: Move the operations related to stack
1400         checking from this package to package System.Stack_Checking.Operations.
1401         This way, stack checking operations are only linked in the final
1402         executable when using the -fstack-check flag.
1403
1404 2004-03-18  Doug Rupp  <rupp@gnat.com>
1405
1406         * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
1407         Reorganize ifeq's.
1408
1409         * 5qsystem.ads, 5xcrtl.ads: New files.
1410
1411 2004-03-18  Vincent Celier  <celier@gnat.com>
1412
1413         * prj.adb (Reset): Reset hash table Files_Htable
1414
1415         * prj-env.adb (Source_Paths, Object_Paths): New tables.
1416         (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
1417         the procedures Add_To_Path_File.
1418         (Set_Ada_Paths): Accumulate source and object dirs in the tables,
1419         making sure that each directory is present only once and, for object
1420         dirs, when a directory already present is added, the duplicate is
1421         removed and the directory is always put as the last in the table.
1422         Write the path files at the end of these accumulations.
1423
1424         * prj-nmsc.adb (Record_Source): Add source file name in hash table
1425         Files_Htable for all sources.
1426
1427         * prj-proc.adb (Process): Remove restrictions between not directly
1428         related extending projects.
1429
1430 2004-03-18  Emmanuel Briot  <briot@act-europe.fr>
1431
1432         * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
1433         (Find_Sources): Minor speed optimization.
1434
1435         * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
1436         parameter Trusted_Mode.
1437
1438 2004-03-18  Sergey Rybin  <rybin@act-europe.fr>
1439
1440         * scn.adb (Determine_License): Take into account a degenerated case
1441         when the source contains only comments.
1442
1443 2004-03-18  Ed Schonberg  <schonberg@gnat.com>
1444
1445         * sem_warn.adb (Check_References): For a warning on a selected
1446         component that does not come from source, locate an uninitialized
1447         component of the record type to produce a more precise error message.
1448
1449 2004-03-15  Jerome Guitton  <guitton@act-europe.fr>
1450
1451         * 3zsoccon.ads: Fix multicast options.
1452
1453         * s-thread.ads: Move unchecked conversion from ATSD_Access to Address
1454         in the spec.
1455
1456 2004-03-15  Robert Dewar  <dewar@gnat.com>
1457
1458         * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
1459         pragma used for a private type.
1460
1461         * lib-xref.adb (Generate_Reference): Do not generate warning if
1462         reference is in a different unit from the pragma Unreferenced.
1463
1464         * 5vtpopde.adb: Minor reformatting
1465         Fix casing of To_Task_ID
1466
1467         * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
1468         flag if we have an unchecked conversion to an access type in the same
1469         unit.
1470
1471 2004-03-15  Geert Bosch  <bosch@gnat.com>
1472
1473         * a-ngcoty.adb (Modulus): In alternate formula for large real or
1474         imaginary parts, use Double precision throughout.
1475
1476         * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
1477         we want to be able to compile run-time with -gnata for testing, but
1478         this may also be instantiated in user code that is compiled with -gnata.
1479
1480 2004-03-15  Olivier Hainque  <hainque@act-europe.fr>
1481
1482         * s-stalib.ads (Exception_Code): New type, to represent Import/Export
1483         codes. Having a separate type for this is useful to enforce consistency
1484         throughout the various run-time units.
1485         (Exception_Data): Use Exception_Code for Import_Code.
1486
1487         * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
1488         Natural and Integer in various places.
1489         (Register_VMS_Exception): Use Base_Code_In to compute the exception code
1490         with the severity bits masked off.
1491         (Register_VMS_Exception): Handle the additional exception data pointer
1492         argument.
1493
1494         * raise.c (_GNAT_Exception structure): Remove the handled_by_others
1495         component, now reflected by an exported accessor.
1496         (is_handled_by): New routine to compute whether the propagated
1497         occurrence matches some handler choice specification. Extracted out of
1498         get_action_description_for, and expanded to take care of the VMS
1499         specifities.
1500         (get_action_description_for): Use is_handled_by instead of an explicit
1501         complex condition to decide if the current choice at hand catches the
1502         propagated occurrence.
1503
1504         * raise.h (Exception_Code): New type for C.
1505
1506         * rtsfind.ads (RE_Id, RE_Unit_Table): Add
1507         System.Standard_Library.Exception_Code, to allow references from the
1508         pragma import/export expander.
1509
1510         * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
1511         New accessors to allow easy access to GNAT exception data
1512         characteristics.
1513         (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
1514         redundant Handled_By_Others component, helper for the personality
1515         routine which will now be able to call the appropriate exception data
1516         accessor instead.
1517
1518         * cstand.adb (Create_Standard): Adjust the type of the Import_Code
1519         component of Standard_Exception_Type to be the closest possible to
1520         Exception_Code in System.Standard_Library, that we cannot get at this
1521         point. Expand a ??? comment to notify that this type node should
1522         probably be rewritten later on.
1523
1524         * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
1525         registration call to include a pointer to the exception object in the
1526         arguments.
1527
1528         * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
1529         instead of int and explicit bitmasks.
1530
1531 2004-03-15  Vincent Celier  <celier@gnat.com>
1532
1533         * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
1534         equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
1535
1536         * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
1537         longer needed now that it is in the spec of
1538         System.Tasking.Task_Attributes.
1539
1540         * adaint.h, adaint.c: (__gnat_create_output_file): New function
1541
1542         * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
1543
1544         * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
1545
1546         * make.adb (Gnatmake): Do not check the executable suffix; it is being
1547         taken care of in Scan_Make_Arg.
1548         (Scan_Make_Arg): Add the executable suffix only if the argument
1549         following -o, in canonical case, does not end with the executable
1550         suffix.  When in verbose mode and executable file name does not end
1551         with executable suffix, output the executable name, in canonical case.
1552
1553         * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
1554         to avoid warnings when instantiating Ada.Task_Attributes.
1555         Minor reformating.
1556
1557         * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
1558         in the correct order.
1559
1560         * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
1561         redirect standard output and error to a file for the invocation of the
1562         compiler, then read the file.
1563
1564         * prj-nmsc.adb (Find_Sources): Use the Display_Value for each
1565         directory, instead of the Value.
1566         (Find_Source_Dirs): Remove useless code & comments.
1567
1568 2004-03-15  Ed Schonberg  <schonberg@gnat.com>
1569
1570         * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
1571         tagged type is inherited, and the parent operation is not frozen yet,
1572         force generation of a freeze node for the inherited operation, so the
1573         corresponding dispatch entry is properly initialized.
1574         (Make_Predefined_Primitive_Specs): Check that return type is Boolean
1575         when looking for user-defined equality operation.
1576
1577         * exp_ch4.adb (Expand_Composite_Equality): Check that return type is
1578         boolean when locating primitive equality of tagged component.
1579
1580         * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
1581         bit-aligned field and the right-hand side a string literal, introduce
1582         a temporary before expanding assignment into a loop.
1583
1584         * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
1585         priority in full, to ensure that any expanded subepxressions of it are
1586         elaborated in the scope of the init_proc.
1587
1588         * exp_prag.adb (Expand_Pragma_Import): Search for initialization call
1589         after object declaration, skipping over code that may have been
1590         generated for validity checks.
1591
1592         * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
1593         discriminants, ignore the known discriminants of its full view, if
1594         any, to check legality.
1595
1596         * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
1597         component if type has unknown discriminants.
1598         (Analyze_Private_Extension_Declaration): Discriminant constraint is
1599         null if type has unknown discriminants.
1600
1601         * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
1602         for end label when present.
1603
1604         * s-fileio.adb (Open): When called with a C_Stream, use given name for
1605         temporary file, rather than an empty string.
1606
1607 2004-03-15  Ed Falis  <falis@gnat.com>
1608
1609         * s-thread.adb: Removed, no longer used.
1610
1611 2004-03-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1612
1613         * decl.c (target.h): Now include.
1614         (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
1615         in new build_pointer_from_mode calls for non-fat/non-thin pointer.
1616         (validate_size): For POINTER_TYPE, get smallest size permitted on
1617         machine.
1618
1619         * fe.h: Sort Einfo decls and add Set_Mechanism.
1620
1621         * Makefile.in: (LIBGNAT_SRCS): Remove types.h.
1622         (ada/decl.o): Depends on target.h.
1623
1624         * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
1625         FUNCTION_BOUNDARY; always use TYPE_ALIGN.
1626
1627 2004-03-15  Thomas Quinot  <quinot@act-europe.fr>
1628
1629         * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
1630
1631         * exp_ch4.adb (Expand_N_Indexed_Component): Do not call
1632         Insert_Dereference_Action when rewriting an implicit dereference into
1633         an explicit one, this will be taken care of during expansion of the
1634         explicit dereference.
1635         (Expand_N_Slice): Same. Always do the rewriting, even for the case
1636         of non-packed slices, since the dereference action generated by
1637         expansion of the explicit dereference is needed in any case.
1638         (Expand_N_Selected_Component): When rewriting an implicit dereference,
1639         analyze and resolve the rewritten explicit dereference so it is seen
1640         by the expander.
1641         (Insert_Dereference_Action): This procedure is now called only for the
1642         expansion of an N_Explcit_Dereference_Node. Do insert a check even for
1643         dereferences that do not come from source (including explicit
1644         dereferences resulting from rewriting implicit ones), but do not
1645         recursively insert a check for the dereference nodes contained within
1646         the check.
1647         (Insert_Dereference_Action): Clarify and correct comment.
1648
1649 2004-03-08  Paolo Bonzini  <bonzini@gnu.org>
1650
1651         PR ada/14131
1652         Move language detection to the top level.
1653         * config-lang.in: Build by default.
1654
1655 2004-03-05  Robert Dewar  <dewar@gnat.com>
1656
1657         * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
1658
1659         * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
1660         i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
1661         5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb, 
1662         5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
1663         unchecked conversion to spec to avoid warnings.
1664
1665         * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
1666         to Task_ID
1667
1668         * 7stpopsp.adb: Correct casing in To_Task_ID call
1669
1670         * a-strsea.ads, a-strsea.adb: Minor reformatting
1671
1672         * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
1673
1674         * errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
1675         Adjust Max_Msg_Length to be clearly large enough.
1676
1677         * fe.h: Define In_Same_Source_Unit
1678
1679         * osint.adb: Add pragma Warnings Off to suppress warnings
1680         * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
1681         aliasing warnings.
1682
1683         * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
1684
1685         * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
1686
1687         * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
1688
1689         * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
1690
1691         * sem_prag.adb: Implement pragma No_Strict_Aliasing.
1692
1693         * sinfo.ads: Remove obsolete comment on validate unchecked conversion
1694         node. We now do generate them for gcc back end.
1695
1696         * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
1697         warning.
1698
1699         * sinput-c.adb: Fix bad name in header.
1700         Add pragma Warnings Off to suppress aliasing warning.
1701
1702         * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
1703
1704         * snames.h, snames.ads, snames.adb: Add entry for pragma
1705         No_Strict_Aliasing.
1706
1707 2004-03-05  Vincent Celier  <celier@gnat.com>
1708
1709         * prj-com.ads: Add hash table Files_Htable to check when a file name
1710         is already a source of another project.
1711
1712         * prj-nmsc.adb (Record_Source): Before recording a new source, check
1713         if its file name is not already a source of another project. Report an
1714         error if it is.
1715
1716         * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
1717         source file name, call gnatpp with all the sources of the main project.
1718
1719         * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
1720         of file names.
1721
1722         * vms_data.ads: Correct documentation of new /OPTIMIZE keyword
1723         NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
1724         /RUNTIME_SYSTEM=, converted to --RTS=
1725         /NOTABS, converted to -notabs
1726
1727 2004-03-05  Pascal Obry  <obry@gnat.com>
1728
1729         * make.adb: Minor reformatting.
1730
1731 2004-03-05  Ed Schonberg  <schonberg@gnat.com>
1732
1733         Part of implemention of AI-262.
1734         * par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
1735
1736         * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
1737         procedure.
1738
1739         * sem_ch3.adb (Analyze_Component_Declaration): Improve error message
1740         when component type is a partially constrained class-wide subtype.
1741         (Constrain_Discriminated_Type): If parent type has unknown
1742         discriminants, a constraint is illegal, even if full view has
1743         discriminants.
1744         (Build_Derived_Record_Type): Inherit discriminants when deriving a type
1745         with unknown discriminants whose full view is a discriminated record.
1746
1747         * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
1748         flag, to handle properly derivations of tagged types with unknown
1749         discriminants.
1750         (Analyze_Package_Spec, Analyze_Package_Body): Install
1751         Private_With_Clauses before analyzing private part or body.
1752
1753         * einfo.ads: Indicate that both Has_Unknown_Discriminants and
1754         Has_Discriminants can be true for a given type (documentation).
1755
1756 2004-03-05  Arnaud Charlet  <charlet@act-europe.fr>
1757
1758         * s-restri.ads: Fix license (GPL->GMGPL).
1759
1760         * s-tassta.adb: Minor reformatting.
1761
1762         * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
1763         by calls to Exit_One_ATC_Level, since additional clean up is performed
1764         by this function.
1765
1766         * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
1767         by calls to Exit_One_ATC_Level, since additional clean up is performed
1768         by this function.
1769
1770 2004-03-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1771
1772         * trans.c: Reflect GCC changes to fix bootstrap problem.
1773         Add warning for suspicious aliasing unchecked conversion.
1774
1775 2004-03-05  GNAT Script  <nobody@gnat.com>
1776
1777         * Make-lang.in: Makefile automatically updated
1778
1779 2004-03-02  Emmanuel Briot  <briot@act-europe.fr>
1780
1781         * ali.adb (Read_Instantiation_Instance): Do not modify the
1782         current_file_num when reading information about instantiations, since
1783         this corrupts files in later references.
1784
1785 2004-03-02  Vincent Celier  <celier@gnat.com>
1786
1787         * bcheck.adb (Check_Consistency): Get the full path of an ALI file
1788         before checking if it is read-only.
1789
1790         * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
1791         of SRC_DIRS and eliminate duplicates.
1792
1793         * gprcmd.adb: Replace command "path" with command "path_sep" to return
1794         the path separator.
1795         (Usage): Document path_sep
1796
1797         * Makefile.generic: For Ada and GNU C++ cases, link directly with the
1798         C++ compiler. No need for a script.
1799         Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
1800         Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
1801         subst.
1802
1803         * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
1804         where there are Ada sources.
1805         (Set_Ada_Paths): Only add to the include path the source dirs of project
1806         with Ada sources.
1807         (Add_To_Path): Add the Display_Values of the directories, not their
1808         Values.
1809
1810         * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
1811         data.
1812
1813         * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
1814         is not No_Name.
1815         (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
1816         Value is canonicalized.
1817         (Language_Independent_Check): Do not copy Value to Display_Value when
1818         canonicalizing Value.
1819
1820         * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
1821         path to find limited with cycles.
1822         (Parse_Single_Project): Use canonical cased path to find the end of a
1823         with cycle.
1824
1825 2004-03-02  Ed Schonberg  <schonberg@gnat.com>
1826
1827         * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
1828         and not a child unit.
1829
1830         * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
1831         appear in a with_clause.
1832
1833         * decl.c (gnat_to_gnu_type): If entity is a generic type, which can
1834         only happen in type_annotate mode, do not try to elaborate it.
1835
1836         * exp_util.adb (Force_Evaluation): If expression is a selected
1837         component on the left of an assignment, use a renaming rather than a
1838         temporary to remove side effects.
1839
1840         * freeze.adb (Freeze_Entity): Do not freeze a global entity within an
1841         inlined instance body, which is analyzed before the end of the
1842         enclosing scope.
1843
1844 2004-03-02  Robert Dewar  <dewar@gnat.com>
1845
1846         * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
1847         sem_ch4.adb: Use new feature for substitution of keywords in VMS
1848
1849         * errout.ads, errout.adb: Implement new circuit for substitution of
1850         keywords in VMS.
1851
1852         * sem_case.adb (Analyze_Choices): Place message properly when case is
1853         a subtype reference rather than an explicit range.
1854
1855         * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
1856
1857 2004-03-02  Doug Rupp  <rupp@gnat.com>
1858
1859         * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
1860
1861 2004-03-02  Thomas Quinot  <quinot@act-europe.fr>
1862
1863         * s-tporft.adb: Add missing locking around call to Initialize_ATCB.
1864
1865 2004-03-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1866
1867         * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
1868         BLKmode bitfield.
1869
1870 2004-02-25  Robert Dewar  <dewar@gnat.com>
1871
1872         * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
1873         55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
1874         5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
1875         5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
1876         5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
1877         5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
1878         the defining instance of the type to avoid aliasing problems.
1879         Fix copyright header.  Fix bad comments in package header.
1880
1881         * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
1882
1883 2004-02-25  Ed Schonberg  <schonberg@gnat.com>
1884
1885         * exp_ch2.adb (Param_Entity): Handle properly formals that have been
1886         rewritten as references when aliased through an address clause.
1887
1888         * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
1889         whether call can be interpreted as an indirect call to the result of a
1890         parameterless function call returning an access subprogram.
1891
1892 2004-02-25  Arnaud Charlet  <charlet@act-europe.fr>
1893
1894         Code clean up:
1895         * exp_ch7.adb (Make_Clean): Remove generation of calls to
1896         Unlock[_Entries], since this is now done by Service_Entries directly.
1897
1898         * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
1899
1900         * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
1901         Requeue_Call for better code readability. Change spec and update calls:
1902         PO_Service_Entries now unlock the PO on exit.
1903         (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
1904         PO_Service_Entries.
1905
1906         * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
1907
1908         * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
1909
1910 2004-02-25  Sergey Rybin  <rybin@act-europe.fr>
1911
1912         * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
1913         protected subprogram call and analyzing the result of such expanding
1914         in case when the called protected subprogram is eliminated.
1915
1916         * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
1917         names.
1918
1919 2004-02-25  Jerome Guitton  <guitton@act-europe.fr>
1920
1921         * Makefile.in: Clean ups.
1922
1923 2004-02-23  Ed Schonberg  <schonberg@gnat.com>
1924
1925         * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
1926         protected operations if original subprogram is flagged as eliminated.
1927         (Expand_N_Subprogram_Body): For a protected operation, create
1928         discriminals for next operation before checking whether the operation
1929         is eliminated.
1930
1931         * exp_ch9.adb (Expand_N_Protected_Body,
1932         Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
1933         for internal protected operations if the original subprogram is
1934         eliminated.
1935
1936         * sem_elim.adb (Check_Eliminated): Handle properly protected operations
1937         declared in a single protected object.
1938
1939 2004-02-23  Vincent Celier  <celier@gnat.com>
1940
1941         * prj-attr.adb: Make attribute Builder'Executable an associative array,
1942         case insensitive if file names are case insensitive, instead of a
1943         standard associative array.
1944
1945         * prj-attr.adb (Initialize): For 'b' associative arrays, do not set
1946         them as case insensitive on platforms where the file names are case
1947         sensitive.
1948
1949         * prj-part.adb (Parse_Single_Project): Make sure, when checking if
1950         project file has already been parsed that canonical path are compared.
1951
1952 2004-02-23  Robert Dewar  <dewar@gnat.com>
1953
1954         * sinput-c.ads: Correct bad unit title in header
1955
1956         * freeze.adb: Minor reformatting
1957
1958 2004-02-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1959
1960         * trans.c (tree_transform, case N_Procedure_Call_Statement): For
1961         nonaddressable COMPONENT_REF that is removing padding that we are
1962         taking the address of, take the address of the padded record instead
1963         if item is variable size.
1964
1965 2004-02-20  Robert Dewar  <dewar@gnat.com>
1966
1967         * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
1968
1969 2004-02-20  Ed Schonberg  <schonberg@gnat.com>
1970
1971         * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
1972         itype references for the constrained designated type of a component
1973         whose base type is already frozen.
1974
1975 2004-02-20  Arnaud Charlet  <charlet@act-europe.fr>
1976
1977         * init.c (__gnat_error_handler [tru64]): Rewrite previous change to
1978         avoid GCC warnings.
1979
1980 2004-02-20  Sergey Rybin  <rybin@act-europe.fr>
1981
1982         * sem_ch12.adb (Analyze_Formal_Package): Create a new defining
1983         identifier for a phantom package that rewrites the formal package
1984         declaration with a box. The Add semantic decorations for the defining
1985         identifier from the original node (that represents the formal package).
1986
1987 2004-02-19  Matt Kraai  <kraai@alumni.cmu.edu>
1988
1989         * Make-lang.in (ada/stamp-sdefault): Use the top level
1990         move-if-change.
1991
1992 2004-02-19  Richard Henderson  <rth@redhat.com>
1993
1994         * misc.c (record_code_position): Add third build arg for RTL_EXPR.
1995
1996 2004-02-18  Emmanuel Briot  <briot@act-europe.fr>
1997
1998         * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
1999         Scan_ALI can be used for multiple ALI files without reinitializing
2000         between calls.
2001
2002 2004-02-18  Robert Dewar  <dewar@gnat.com>
2003
2004         * debug.adb: Minor reformatting.
2005
2006 2004-02-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2007
2008         * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
2009         to zero if there is an address clause.
2010
2011 2004-02-18  Thomas Quinot  <quinot@act-europe.fr>
2012
2013         * exp_util.adb (Side_Effect_Free): Any literal is side effects free.
2014
2015 2004-02-18  Gary Dismukes  <dismukes@gnat.com>
2016
2017         * layout.adb (Layout_Component_List): Revise generation of call to
2018         discriminant-checking function to pass selections of all of the type's
2019         discriminants rather than just the variant-controlling discriminant.
2020
2021 2004-02-18  Olivier Hainque  <hainque@act-europe.fr>
2022
2023         * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
2024         fail in the current setup and triggers spurious system error messages.
2025         Pretend it occurred and failed instead.
2026
2027 2004-02-18  Vincent Celier  <celier@gnat.com>
2028
2029         * bld.adb: Mark FLDFLAGS as saved
2030         (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
2031         it is not the root project.  Put each directory to be
2032         extended between double quotes to prevent it to be expanded on Windows.
2033         (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
2034         the project file. Set them back to their initial values if they have not
2035         been set in the project file.
2036
2037         * gprcmd.adb: (Gprdebug, Debug): New global variables
2038         (Display_Command): New procedure
2039         (Usage): Document new command "linkopts"
2040         Call Display_Command when env var GPRDEBUG has the value "TRUE"
2041         Implement new command "linkopts"
2042         Remove quotes that may be around arguments for "extend"
2043         Always call Normalize_Pathname with arguments formatted for the platform
2044
2045         * Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
2046         Change @echo to @$(display) in target clean to be able to clean silently
2047
2048         * Makefile.prolog: Save FLDFLAGS and give it an initial empty value
2049
2050         * prj-part.adb (Project_Path_Name_Of): Do not put final result in
2051         canonical case.
2052
2053         * prj-part.adb (Parse_Single_Project): Always call with From_Extended
2054         = Extending_All when current project is an extending all project.
2055
2056         * vms_conv.adb (Output_File_Expected): New Boolean global variable,
2057         set to True only for LINK command, after Unix switch -o.
2058         (Process_Arguments): Set Output_File_Expected to True for LINK command
2059         after Unix switch -o. When Output_File_Expected is True, never add an
2060         extension to a file name.
2061
2062         * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
2063         option file name, only to the --for-linker= switch.
2064         (Option_File_Name): If option file name do not end with ".opt", append
2065         "/OPTIONS".
2066
2067 2004-02-18  GNAT Script  <nobody@gnat.com>
2068
2069         * Make-lang.in: Makefile automatically updated
2070
2071 2004-02-17  Matt Kraai  <kraai@alumni.cmu.edu>
2072
2073         * Make-lang.in (stamp-sdefault): Do not depend on
2074         move-if-change.
2075
2076 2004-02-12  Zack Weinberg  <zack@codesourcery.com>
2077
2078         * config-lang.in: Disable Ada by default until probe logic for
2079         a bootstrap Ada compiler can be moved to the top level configure
2080         script.
2081
2082 2004-02-12  Olivier Hainque  <hainque@act-europe.fr>
2083
2084         * decl.c (components_to_record): Don't claim that the internal fields
2085         we make to hold the variant parts are semantically addressable, because
2086         they are not.
2087
2088         * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
2089         adjust the comment describing the modular type form when we can use it.
2090         (Install_PAT): Account for the Esiz renaming.
2091
2092         * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
2093         sc_onstack context indication before raising the exception to which
2094         the signal is mapped. Allows better handling of later signals possibly
2095         triggered by the resumed user code if the exception is handled.
2096
2097 2004-02-12  Arnaud Charlet  <charlet@act-europe.fr>
2098
2099         * 5zinit.adb: Removed, no longer used.
2100
2101 2004-02-12  Robert Dewar  <dewar@gnat.com>
2102
2103         * ali.adb: Remove separating space between parameters on R line. Makes
2104         format consistent with format used by the binder for Set_Globals call.
2105
2106         * atree.ads, atree.adb: Minor reformatting (new function header format)
2107
2108         * bindgen.adb: Add Run-Time Globals documentation section containing
2109         detailed documentation of the globals passed from the binder file to
2110         the run time.
2111
2112         * gnatls.adb: Minor reformatting
2113
2114         * init.c (__gnat_set_globals): Add note pointing to documentation in
2115         bindgen.
2116
2117         * lib-writ.ads, lib-writ.adb: Remove separating space between
2118         parameters on R line.
2119         Makes format consistent with format used by the binder for Set_Globals
2120         call.
2121
2122         * osint.ads: Add 2004 to copyright notice
2123         Minor reformatting
2124
2125         * snames.ads: Correct capitalization of FIFO_Within_Priorities
2126         Noticed during code reading, documentation issue only
2127
2128         * usage.adb: Remove junk line for obsolete C switch
2129         Noticed during code reading
2130
2131 2004-02-12  Vincent Celier  <celier@gnat.com>
2132
2133         * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
2134         extend for each directory, so that multiple /** directories are
2135         extended individually.
2136         (Recursive_Process): Set the default for LANGUAGES to ada
2137
2138         * gprcmd.adb: Define new command "ignore", to do nothing.
2139         Implement new comment "path".
2140
2141         * Makefile.generic: Suppress output when SILENT is set
2142         Make sure that when compiler for C/C++ is gcc, the correct -x switch is
2143         used, so that the correct compiler is invoked.
2144         When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
2145         CXX_INCLUDE_PATH, to avoid failure with too long command lines.
2146
2147 2004-02-12  Jerome Guitton  <guitton@act-europe.fr>
2148
2149         * Makefile.in: Clean ups and remove obsolete targets.
2150
2151 2004-02-12  Ed Schonberg  <schonberg@gnat.com>
2152
2153         * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
2154         predicate declared in exp_util.
2155
2156         * exp_util.adb: Add comments.
2157
2158         * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
2159         visibility before compiling context of the subunit.
2160
2161         * sem_res.adb (Check_Parameterless_Call): If the context expects a
2162         value but the name is a procedure, do not attempt to analyze as a call,
2163         in order to obtain more telling diagnostics.
2164
2165         * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
2166         'Access on parameterless function calls.
2167         (Normalize_Actuals): For a parameterless function call with missing
2168         actuals, defer diagnostic until resolution of enclosing call.
2169
2170         * sem_util.adb (Wrong_Type): If the context type is an access to
2171         subprogram and the expression is a procedure name, suggest a missing
2172         'attribute.
2173
2174 2004-02-10  Arnaud Charlet  <charlet@act-europe.fr>,
2175             Nathanael Nerode  <neroden@gcc.gnu.org>
2176
2177         PR ada/6637, PR ada/5911
2178         Merge with libada-branch:
2179         * config-lang.in: Build libada only when ada is built.
2180
2181 2004-02-09  Ed Schonberg  <schonberg@gnat.com>
2182
2183         * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
2184         for a tagged type, verify that both formals have the same type.
2185
2186         * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
2187         temporary when the formal is an in-parameter and the actual a possibly
2188         unaligned slice.
2189
2190         * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
2191         when expansion is disabled, to ensure proper name capture with
2192         overloaded literals.  Condition can be of any boolean type, resolve
2193         accordingly.
2194
2195         * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
2196         renaming is for a formal subprogram with a default operator name, and
2197         there is a usable operator that is visible at the point of
2198         instantiation.
2199
2200 2004-02-09  Robert Dewar  <dewar@gnat.com>
2201
2202         * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
2203         rewrite to ignore errors in ali files, intended to allow tools downward
2204         compatibility with new versions of ali files.
2205
2206         * ali.ads: Add new parameter Ignore_Errors
2207
2208         * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
2209         duplicating the error message giving the file with restrictions.
2210
2211         * debug.adb: Add debug flag I for gnatbind
2212
2213         * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
2214         operators for the case where the operator is a defining operator.
2215
2216         * exp_ch3.adb: Minor reformatting (new function spec format).
2217
2218         * exp_ch4.adb: Add comment for previous change, and make minor
2219         adjustment to loop to always check for improper loop termination.
2220         Minor reformatting throughout (new function spec format).
2221
2222         * gnatbind.adb: Implement -di debug flag for gnatbind
2223
2224         * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
2225
2226         * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
2227
2228         * lib-load.adb: Fix bad assertion.
2229         Found by testing and code reading.
2230         Minor reformatting.
2231
2232         * lib-load.ads: Minor reformatting.
2233
2234         * lib-writ.adb: There is only one R line now.
2235
2236         * lib-writ.ads: Add documentation on making downward compatible changes
2237         to ali files so old tools work with new ali files.
2238         There is only one R line now.
2239         Add documentation on format incompatibilities (with special GPS note)
2240
2241         * namet.ads, namet.adb: (Is_Operator_Name): New procedure
2242
2243         * par-load.adb: Minor reformatting
2244
2245         * sem_ch8.adb: Fix to error message from last update
2246         Minor reformatting and restructuring of code from last update
2247
2248         * par-prag.adb, snames.adb, snames.ads, snames.h,
2249         sem_prag.adb: Implement pragma Profile.
2250
2251         * stylesw.adb: Implement -gnatyN switch to turn off all style check
2252         options.
2253
2254         * usage.adb: Add line for -gnatyN switch
2255
2256         * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
2257
2258 2004-02-09  Albert Lee  <lee@gnat.com>
2259
2260         * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
2261
2262 2004-02-09  Ed Schonberg  <schonberg@gnat.com>
2263
2264         * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
2265         slices.
2266
2267         * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
2268         is nested in an instance that is not frozen yet, to avoid
2269         order-of-elaboration problems in gigi.
2270
2271         * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
2272         body the attribute is legal.
2273
2274 2004-02-09  Robert Dewar  <dewar@gnat.com>
2275
2276         * s-rident.ads: Minor comment correction
2277
2278         * targparm.adb: Remove dependence on uintp completely. There was
2279         always a bug in Make in that it called Targparm before initializing
2280         the Uint package. The old code appeared to get away with this, but
2281         the new code did not! This caused an assertion error in gnatmake.
2282
2283         * targparm.ads: Fix bad comment, restriction pragmas with parameters
2284         are indeed fully supported.
2285
2286 2004-02-06  Alan Modra  <amodra@bigpond.net.au>
2287
2288         * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
2289
2290 2004-02-05  Kazu Hirata  <kazu@cs.umass.edu>
2291
2292         * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
2293         with targetm.calls.promote_prototypes.
2294
2295 2004-02-04  Robert Dewar  <dewar@gnat.com>
2296
2297         * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
2298         ali.ads, gprcmd.adb: Minor reformatting
2299
2300         * bindgen.adb: Output restrictions string for new style restrictions
2301         handling
2302
2303         * impunit.adb: Add s-rident.ads (System.Rident) and
2304         s-restri (System.Restrictions)
2305
2306         * lib-writ.adb: Fix bug in writing restrictions string (last few
2307         entries wrong)
2308
2309         * s-restri.ads, s-restri.adb: Change name Restrictions to
2310         Run_Time_Restrictions to avoid conflict with package name.
2311         Add circuit to read and acquire run time restrictions.
2312
2313 2004-02-04  Jose Ruiz  <ruiz@act-europe.fr>
2314
2315         * restrict.ads, restrict.adb: Use the new restriction
2316         No_Task_Attributes_Package instead of the old No_Task_Attributes.
2317
2318         * sem_prag.adb: No_Task_Attributes is a synonym of
2319         No_Task_Attributes_Package.
2320
2321         * snames.ads, snames.adb: New entry for proper handling of
2322         No_Task_Attributes.
2323
2324         * s-rident.ads: Adding restriction No_Task_Attributes_Package
2325         (AI-00249) that supersedes the GNAT specific restriction
2326         No_Task_Attributes.
2327
2328 2004-02-04  Ed Schonberg  <schonberg@gnat.com>
2329
2330         * sem_prag.adb: 
2331         (Analyze_Pragma, case Warnings): In an inlined body, as in an instance
2332          body, an identifier may be wrapped in an unchecked conversion.
2333
2334 2004-02-04  Vincent Celier  <celier@gnat.com>
2335
2336         * lib-writ.ads: Comment update for the W lines
2337
2338         * bld.adb: (Expression): An empty string list is static
2339
2340         * fname-uf.adb: Minor comment update
2341
2342         * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
2343
2344         * gnatbind.adb: Initialize Cumulative_Restrictions with the
2345         restrictions on the target.
2346
2347 2004-02-03  Kazu Hirata  <kazu@cs.umass.edu>
2348
2349         * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
2350         gen_rtx.
2351
2352 2004-02-02  Arnaud Charlet  <charlet@gnat.com>
2353
2354         * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
2355
2356 2004-02-02  Vincent Celier  <celier@gnat.com>
2357
2358         * gprcmd.adb (Check_Args): If condition is false, print the invoked
2359         comment before the usage.
2360         Gprcmd: Fail when command is not recognized.
2361         (Usage): Document command "prefix"
2362
2363         * g-md5.adb (Digest): Process last block.
2364         (Update): Do not process last block. Store remaining characters and
2365         length in Context.
2366
2367         * g-md5.ads (Update): Document that several call to update are
2368         equivalent to one call with the concatenated string.
2369         (Context): Add fields to allow new Update behaviour.
2370
2371         * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
2372         defaulted to False.
2373         When May_Fail is True and no existing file can be found, return No_File.
2374
2375         * 6vcstrea.adb: Inlined functions are now wrappers to implementation
2376         functions.
2377
2378         * lib-writ.adb (Write_With_Lines): When body file does not exist, use
2379         spec file name instead on the W line.
2380
2381 2004-02-02  Robert Dewar  <dewar@gnat.com>
2382
2383         * ali.adb: Read and acquire info from new format restrictions lines
2384
2385         * bcheck.adb: Add circuits for checking restrictions with parameters
2386
2387         * bindgen.adb: Output dummy restrictions data
2388         To be changed later
2389
2390         * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
2391         exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
2392         freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
2393         sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
2394         sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
2395
2396         * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
2397         the warning message on access to possibly uninitialized variable S)
2398         Minor changes for new restrictions handling.
2399
2400         * gnatbind.adb: Minor reformatting
2401         Minor changes for new restrictions handling
2402         Move circuit for -r processing here from bcheck (cleaner)
2403
2404         * gnatcmd.adb, gnatlink.adb: Minor reformatting
2405
2406         * lib-writ.adb: Output new format restrictions lines
2407
2408         * lib-writ.ads: Document new R format lines for new restrictions
2409         handling.
2410
2411         * s-restri.ads/adb: New files
2412
2413         * Makefile.rtl: Add entry for s-restri.ads/adb
2414
2415         * par-ch3.adb: Fix bad error messages starting with upper case letter
2416         Minor reformatting
2417
2418         * restrict.adb: Major rewrite throughout for new restrictions handling
2419         Major point is to handle restrictions with parameters
2420
2421         * restrict.ads: Major changes in interface to handle restrictions with
2422         parameters. Also generally simplifies setting of restrictions.
2423
2424         * snames.ads/adb: New entry for proper handling of No_Requeue
2425
2426         * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
2427         restriction counting.
2428         Other minor changes for new restrictions handling
2429
2430         * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
2431         Restriction_Warnings now allows full parameter notation
2432         Major rewrite of Restrictions for new restrictions handling
2433
2434 2004-02-02  Javier Miranda  <miranda@gnat.com>
2435
2436         * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
2437         syntax rule for object renaming declarations.
2438         (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
2439         component definitions.
2440
2441         * sem_ch3.adb (Analyze_Component_Declaration): Give support to access
2442         components.
2443         (Array_Type_Declaration): Give support to access components. In addition
2444         it was also modified to reflect the name of the object in anonymous
2445         array types. The old code did not take into account that it is possible
2446         to have an unconstrained anonymous array with an initial value.
2447         (Check_Or_Process_Discriminants): Allow access discriminant in
2448         non-limited types.
2449         (Process_Discriminants): Allow access discriminant in non-limited types
2450         Initialize the new Access_Definition field in N_Object_Renaming_Decl
2451         node.  Change Ada0Y to Ada 0Y in comments
2452
2453         * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
2454         equality operators.
2455         Change Ada0Y to Ada 0Y in comments
2456
2457         * sem_ch8.adb (Analyze_Object_Renaming): Give support to access
2458         renamings Change Ada0Y to Ada 0Y in comments
2459
2460         * sem_type.adb (Find_Unique_Type): Give support to the equality
2461         operators for universal access types
2462         Change Ada0Y to Ada 0Y in comments
2463
2464         * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
2465
2466         * sinfo.ads (N_Component_Definition): Addition of Access_Definition
2467         field.
2468         (N_Object_Renaming_Declaration): Addition of Access_Definition field
2469         Change Ada0Y to Ada 0Y in comments
2470
2471         * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
2472         component definition and object renaming nodes
2473         Change Ada0Y to Ada 0Y in comments
2474
2475 2004-02-02  Jose Ruiz  <ruiz@act-europe.fr>
2476
2477         * restrict.adb: Use the new restriction identifier
2478         No_Requeue_Statements instead of the old No_Requeue for defining the
2479         restricted profile.
2480
2481         * sem_ch9.adb (Analyze_Requeue): Check the new restriction
2482         No_Requeue_Statements.
2483
2484         * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
2485         that supersedes the GNAT specific restriction No_Requeue. The later is
2486         kept for backward compatibility.
2487
2488 2004-02-02  Ed Schonberg  <schonberg@gnat.com>
2489
2490         * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
2491         5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
2492         pragma and fix incorrect ones.
2493
2494         * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
2495         warning if the pragma is redundant.
2496
2497 2004-02-02  Thomas Quinot  <quinot@act-europe.fr>
2498
2499         * 5staprop.adb: Add missing 'constant' keywords.
2500
2501         * Makefile.in: use consistent value for SYMLIB on
2502         platforms where libaddr2line is supported.
2503
2504 2004-02-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2505
2506         * utils.c (end_subprog_body): Do not call rest_of_compilation if just
2507         annotating types.
2508
2509 2004-02-02  Olivier Hainque  <hainque@act-europe.fr>
2510
2511         * init.c (__gnat_install_handler): Setup an alternate stack for signal
2512         handlers in the environment thread. This allows proper propagation of
2513         an exception on stack overflows in this thread even when the builtin
2514         ABI stack-checking scheme is used without support for a stack reserve
2515         region.
2516
2517         * utils.c (create_field_decl): Augment the head comment about bitfield
2518         creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
2519         here, because the former is not accurate enough at this point.
2520         Let finish_record_type decide instead.
2521         Don't make a bitfield if the field is to be addressable.
2522         Always set a size for the field if the record is packed, to ensure the
2523         checks for bitfield creation are triggered.
2524         (finish_record_type): During last pass over the fields, clear
2525         DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
2526         not covered by the calls to layout_decl.  Adjust DECL_NONADDRESSABLE_P
2527         from DECL_BIT_FIELD.
2528
2529 2004-01-30  Kelley Cook  <kcook@gcc.gnu.org>
2530
2531         * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir). 
2532         (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
2533         (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
2534
2535 2004-01-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2536
2537         * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
2538
2539         * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
2540         (ZCX_By_Default): Likewise.
2541         (Front_End_ZCX_Support): Likewise.
2542
2543         * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
2544         (Initialize_Lock): Mark Level unreferenced.
2545         (Sleep): Mark Reason unreferenced.
2546         (Timed_Sleep): Likewise.
2547         (Wakeup): Likewise.
2548         (Exit_Task): Use Result.
2549         (Check_No_Locks): Mark Self_ID unreferenced.
2550         
2551         * 5gtasinf.adb (New_Sproc): Make Attr constant.
2552         (Bound_Thread_Attributes): Make Sproc constant.
2553         (New_Bound_Thread_Attributes): Likewise.
2554
2555 2004-01-26  Ed Schonberg  <schonberg@gnat.com>
2556
2557         * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
2558         one-dimensional array an slice assignments, when component type is
2559         controlled.
2560
2561         * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
2562         component type is controlled, and control_actions are in effect, use
2563         TSS procedure rather than generating inline code.
2564
2565         * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
2566         arrays with controlled components.
2567
2568 2004-01-26  Vincent Celier  <celier@gnat.com>
2569
2570         * gnatcmd.adb (GNATCmd): Add specification of argument file on the
2571         command line for the non VMS case.
2572
2573         * gnatlink.adb (Process_Binder_File): When building object file, if
2574         GNU linker is used, put all object paths between quotes, to prevent ld
2575         error when there are unusual characters (such as '!') in the paths.
2576
2577         * Makefile.generic: When there are sources in Ada and the main is in
2578         C/C++, invoke gnatmake with -B, instead of -z.
2579
2580         * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
2581         from VMS_Conversion.
2582         (Process_Argument): New procedure, extracted from VMS_Conversion. Add
2583         specification of argument file on the command line.
2584
2585 2004-01-26  Bernard Banner  <banner@gnat.com>
2586
2587         * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
2588
2589 2004-01-26  Ed Schonberg  <schonberg@gnat.com>
2590
2591         * snames.adb: Update copyright notice.
2592         Add info on slice assignment for controlled arrays.
2593
2594 2004-01-23  Robert Dewar  <dewar@gnat.com>
2595
2596         * exp_aggr.adb: Minor reformatting
2597
2598         * exp_ch9.adb: Minor code clean up
2599         Minor reformatting
2600         Fix bad character in comment
2601
2602         PR ada/13471
2603         * targparm.adb (Get_Target_Parameters): Give clean abort error on
2604         unexpected end of file, along with more detailed message.
2605
2606 2004-01-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2607
2608         * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
2609         PAT.
2610
2611         * decl.c (copy_alias_set): New function.
2612         (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
2613
2614 2004-01-23  Doug Rupp  <rupp@gnat.com>
2615
2616         * Makefile.in (install-gnatlib): Change occurrences of lib$$file to
2617         lib$${file} in case subsequent character is not a separator.
2618
2619 2004-01-23  Vincent Celier  <celier@gnat.com>
2620
2621         * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
2622         when the GCC version is at least 3.
2623
2624         * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
2625         Remove all "Opt.", to prepare for opt split
2626
2627         * prj-part.adb (Parse_Single_Project): New Boolean out parameter
2628         Extends_All. Set to True when the project parsed is an extending all
2629         project. Fails for importing an extending all project only when the
2630         imported project is an extending all project.
2631         (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
2632         depending on the value of Extends_All returned.
2633
2634         * prj-proc.adb (Process): Check that no project shares its object
2635         directory with a project that extends it, directly or indirectly,
2636         including a virtual project.
2637         Check that no project extended by another project shares its object
2638         directory with another also extended project.
2639
2640         * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
2641         Kind = N_With_Clause
2642
2643         * prj-tree.ads: Minor reformatting
2644         Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
2645
2646 2004-01-23  Ed Schonberg  <schonberg@gnat.com>
2647
2648         * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
2649         applies to a type with an incomplete view, use full view in Name of
2650         clause, for consistency with uses of Get_Attribute_Definition_Clause.
2651
2652 2004-01-23  Arnaud Charlet  <charlet@act-europe.fr>
2653
2654         * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
2655         SCHED_RR, since other values are not supported by this policy.
2656         (Initialize): Move initialization of mutex attribute to package
2657         elaboration, to prevent early access to this variable.
2658
2659         * Makefile.in: Remove mention of Makefile.adalib, unused.
2660
2661         * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
2662         1ssecsta.ads: Removed, unused.
2663
2664 2004-01-21  Javier Miranda  <miranda@gnat.com>
2665
2666         * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
2667         entity if already built in the current scope.
2668
2669         * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
2670         reminder in internal scopes. Required for nested limited aggregates.
2671
2672 2004-01-21  Doug Rupp  <rupp@gnat.com>
2673
2674         * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
2675         VMS. Replace all occurences of libgnat- and libgnarl- with
2676         libgnat$(hyphen) and libgnarl$(hyphen).
2677         Fixed shared library build problem on VMS.
2678
2679 2004-01-21  Robert Dewar  <dewar@gnat.com>
2680
2681         * mlib-prj.adb: Minor reformatting
2682
2683 2004-01-21  Thomas Quinot  <quinot@act-europe.fr>
2684
2685         * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
2686         'constant' keywords for declaration of pointers that are not modified.
2687
2688         * exp_pakd.adb: Fix English in comment.
2689
2690 2004-01-21  Ed Schonberg  <schonberg@gnat.com>
2691
2692         PR ada/10889
2693         * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
2694         copy all attributes of the parent, including the foreign language
2695         convention.
2696
2697 2004-01-21  Sergey Rybin  <rybin@act-europe.fr>
2698
2699         PR ada/10565
2700         * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
2701         for 'delay until' statement.
2702
2703 2004-01-20  Kelley Cook  <kcook@gcc.gnu.org>
2704
2705         * Make-lang.in: Replace $(docdir) with doc.
2706         (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
2707         doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
2708         to use consistent MAKEINFO rule.
2709         (ada.man, ada.srcman): Dummy entry.
2710         (ADA_INFOFILES): Define.
2711         (ada.info, ada.srcinfo): New rules.
2712
2713 2004-01-19  Arnaud Charlet  <charlet@act-europe.fr>
2714
2715         * utils.c: Update copyright notice, missed in previous change.
2716
2717 2004-01-19  Vincent Celier  <celier@gnat.com>
2718
2719         * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
2720         args if Bind is True. Set First_ALI, if not already done.
2721         (Build_Library): For Stand Alone Libraries, extract from one ALI file
2722         an eventual --RTS switch, for gnatbind, and all backend switches +
2723         --RTS, for linking.
2724
2725 2004-01-19  Robert Dewar  <dewar@gnat.com>
2726
2727         * sem_attr.adb, memtrack.adb: Minor reformatting
2728
2729 2004-01-19  Ed Schonberg  <schonberg@gnat.com>
2730
2731         * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
2732         that rename enumeration literals. This is properly done in sem_eval.
2733
2734         * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
2735         to functions that rename enumeration literals.
2736
2737         * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
2738         functions that rename enumeration literals.
2739
2740 2004-01-16  Kazu Hirata  <kazu@cs.umass.edu>
2741
2742         * Make-lang.in (utils.o): Depend on target.h.
2743         * utils.c: Include target.h.
2744         (process_attributes): Use targetm.have_named_sections instead
2745         of ASM_OUTPUT_SECTION_NAME.
2746
2747 2004-01-16  Andreas Jaeger  <aj@suse.de>
2748
2749         * Makefile.in: Add $(DESTDIR).
2750
2751 2004-01-15  Olivier Hainque  <hainque@act-europe.fr>
2752
2753         * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
2754         also when not defining if a Size clause applies. That information is
2755         not to be ignored.
2756
2757 2004-01-15  Arnaud Charlet  <charlet@act-europe.fr>
2758
2759         * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
2760         symbolic links for the shared gnat run time when needed.
2761
2762 2004-01-15  Vasiliy Fofanov  <fofanov@act-europe.fr>
2763
2764         * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
2765         for writing, and terminate with an error message if not.
2766
2767 2004-01-15  Ed Schonberg  <schonberg@gnat.com>
2768
2769         * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
2770         warning on an access to subprogram in an instance, when the target
2771         type is declared in the same generic unit.
2772         (Eval_Attribute): If 'access is known to fail accessibility check,
2773         rewrite as a raise statement.
2774
2775 2004-01-15  GNAT Script  <nobody@gnat.com>
2776
2777         * Make-lang.in: Makefile automatically updated
2778
2779 2004-01-15  Kelley Cook  <kcook@gcc.gnu.org>
2780
2781         * Make-lang.in (ada.srcextra): Dummy entry.
2782
2783 2004-01-14  Kelley Cook  <kcook@gcc.gnu.org>
2784
2785         * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
2786
2787 2004-01-13  Ed Schonberg  <schonberg@gnat.com>
2788
2789         * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
2790         components that are initialized with aggregates.
2791
2792 2004-01-13  Vincent Celier  <celier@gnat.com>
2793
2794         * gnatlink.adb (Process_Binder_File): To find directory of shared
2795         libgcc, if "gcc-lib" is not a subdirectory, look for the last
2796         subdirectory "lib" in the path of the shared libgnat or libgnarl.
2797
2798         * make.adb (Gnatmake): If GCC version is at least 3, link with
2799         -shared-libgcc, when there is at least one shared library project.
2800
2801         * opt.ads (GCC_Version): New integer constant.
2802
2803         * adaint.c (get_gcc_version): New function.
2804
2805 2004-01-13  Robert Dewar  <dewar@gnat.com>
2806
2807         * sem_dist.adb, sem_res.adb, sem_util.adb,
2808         sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
2809         exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
2810
2811 2004-01-13  Thomas Quinot  <quinot@act-europe.fr>
2812
2813         * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
2814         g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
2815         declarations.
2816
2817 2004-01-12  Arnaud Charlet  <charlet@act-europe.fr>
2818
2819         * misc.c: Remove trailing spaces.
2820         Update copyright notice missed in previous change.
2821
2822         PR ada/13572
2823         * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
2824         prefix/share/make
2825
2826         * Makefile.generic: Update copyright.
2827         Add license notice.
2828
2829         * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
2830         of prefix/share/make.
2831
2832         * Makefile.prolog: Update copyright.
2833         Add license notice.
2834
2835 2004-01-12  Laurent Pautet  <pautet@act-europe.fr>
2836
2837         * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
2838         3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
2839         g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
2840         instead of String.
2841
2842         * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
2843         signature.
2844
2845 2004-01-12  Javier Miranda  <miranda@gnat.com>
2846
2847         * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
2848         exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
2849         sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
2850         sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
2851         Component_Definition node.
2852
2853 2004-01-12  Ed Falis  <falis@gnat.com>
2854
2855         * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
2856
2857 2004-01-12  Thomas Quinot  <quinot@act-europe.fr>
2858
2859         * link.c: Change default libgnat kind to STATIC for FreeBSD.
2860
2861 2004-01-12  Bernard Banner  <banner@gnat.com>
2862
2863         * Makefile.in: map 86numaux to a-numaux for x86_64
2864
2865 2004-01-12  Ed Schonberg  <schonberg@gnat.com>
2866
2867         * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
2868         generated to rename a generic actual, go to the actual itself, the
2869         subtype is not a user-visible entity.
2870
2871         * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
2872         part is a private subtype, reset the visibility of its full view, if
2873         any, to be consistent.
2874
2875         PR ada/13417
2876         * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
2877         to use a generic package G as a formal package for another generic
2878         declared within G.
2879
2880 2004-01-12  Robert Dewar  <dewar@gnat.com>
2881
2882         * trans.c (Eliminate_Error_Msg): New procedure called to generate msg
2883
2884         * usage.adb: Remove mention of obsolete -gnatwb switch
2885         Noticed during code reading
2886
2887 2004-01-12  Jerome Guitton  <guitton@act-europe.fr>
2888
2889         * 1ssecsta.adb: Minor changes for -gnatwa warnings
2890
2891 2004-01-12  GNAT Script  <nobody@gnat.com>
2892
2893         * Make-lang.in: Makefile automatically updated
2894
2895 2004-01-09  Mark Mitchell  <mark@codesourcery.com>
2896
2897         * misc.c (gnat_expand_expr): Add alt_rtl parameter.
2898
2899 2004-01-07  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2900
2901         * link.c [sgi] (shared_libgnat_default): Change to STATIC.
2902
2903 2004-01-05  Kelley Cook  <kcook@gcc.gnu.org>
2904
2905         * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
2906         Update comment and copyright date.
2907         * stamp-xgnatug: Delete.
2908
2909 2004-01-05  Robert Dewar  <dewar@gnat.com>
2910
2911         * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
2912         be modified by the binder generated main program if the -D switch is
2913         used.
2914
2915         * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
2916         imported functions (since now we expect this to be done for imported
2917         functions)
2918
2919         * 5vtaprop.adb: Add several ??? for sections requiring more comments
2920         Minor reformatting throughout
2921
2922         * 5zinit.adb: Minor reformatting
2923         Add 2004 to copyright date
2924         Minor changes to avoid -gnatwa warnings
2925         Correct some instances of using OR instead of OR ELSE (noted while
2926         doing reformatting)
2927
2928         * sprint.adb: Minor updates to avoid -gnatwa warnings
2929
2930         * s-secsta.ads, s-secsta.adb:
2931         (SS_Get_Max): New function to obtain high water mark for ss stack
2932         Default_Secondary_Stack is not a constant since it may be modified by
2933         the binder generated main program if the -D switch is used.
2934
2935         * switch-b.adb: New -Dnnn switch for binder
2936
2937         * switch-c.adb:
2938         Make -gnatg imply all warnings currently in -gnatwa
2939
2940         * vms_conv.adb: Minor reformatting
2941         Add 2004 to copyright notice
2942         Add 2004 to printed copyright notice
2943
2944         * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
2945         3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
2946         5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
2947         5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
2948         5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
2949         5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
2950         5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
2951         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
2952         5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
2953         5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
2954         6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
2955         vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
2956         xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
2957         sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
2958         checks.adb, clean.adb, cstand.adb, einfo.ads,
2959         einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
2960         exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
2961         prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
2962         sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
2963         g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
2964         lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
2965         Minor reformatting and code clean ups.
2966         Minor changes to prevent -gnatwa warnings
2967
2968         * ali.adb: Minor reformatting and cleanup of code
2969         Acquire new SS indication of secondary stack use from ali files
2970
2971         * a-numaux.ads: Add Pure_Function pragmas for all imported functions
2972         (since now we expect this to be done for imported functions)
2973
2974         * bindgen.adb: Generate call to modify default secondary stack size if
2975         -Dnnn switch given
2976
2977         * bindusg.adb: Add line for new -D switch
2978
2979         * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
2980         replacement name for Type_May_Have_Non_Bit_Aligned_Components!
2981         Add circuitry for both records and arrays to avoid gigi
2982         processing if the type involved has non-bit-aligned components
2983
2984         * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
2985         N_String_Literal node always references an E_String_Literal_Subtype
2986         entity. This may not be true in the future.
2987         (Possible_Bit_Aligned_Component): Move processing of
2988         Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
2989
2990         * exp_ch6.adb (Expand_Thread_Body): Pick up
2991         Default_Secondary_Stack_Size as variable so that we get value modified
2992         by possible -Dnnn binder parameter.
2993
2994         * exp_util.adb (Component_May_Be_Bit_Aligned): New function.
2995         (Type_May_Have_Bit_Aligned_Components): New function.
2996
2997         * exp_util.ads (Component_May_Be_Bit_Aligned): New function.
2998         (Type_May_Have_Bit_Aligned_Components): New function.
2999
3000         * fe.h: (Set_Identifier_Casing): Fix prototype.
3001         Add declaration for Sem_Elim.Eliminate_Error_Msg.
3002         Minor reformatting.
3003
3004         * freeze.adb (Freeze_Entity): Add RM reference to error message about
3005         importing constant atomic/volatile objects.
3006         (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
3007         unless explicit Pure_Function pragma given, to avoid insidious bug of
3008         call to non-pure imported function getting eliminated.
3009
3010         * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
3011         gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
3012         gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
3013         Add 2004 to printed copyright notice
3014
3015         * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
3016         stack used.
3017
3018         * Makefile.rtl: Add entry for g-sestin.o
3019         g-sestin.ads: New file.
3020
3021         * mdll.adb: Minor changes to avoid -gnatwa warnings
3022
3023         * mlib-tgt.adb: Minor reformatting
3024
3025         * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
3026         New switch Sec_Stack_Used (GNAT, GNATBIND)
3027         Make Default_Secondary_Stack_Size a variable instead of a constant,
3028         so that it can be modified by the new -Dnnn bind switch.
3029
3030         * rtsfind.adb (Load_Fail): Give full error message in configurable
3031         run-time mode if all_errors mode is set. This was not done in the case
3032         of a file not found, which was an oversight.
3033         Note if secondary stack unit is used by compiler.
3034
3035         * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
3036         ineffective elaborate all pragmas on non-visible packages (this
3037         happened when a renamed subprogram was called). Now the elaborate all
3038         always goes on the package containing the renaming rather than the one
3039         containing the renamed subprogram.
3040
3041         * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
3042         (Process_Eliminate_Pragma): Add parameter to capture pragma location.
3043
3044         * sem_eval.adb (Eval_String_Literal): Do not assume that string literal
3045         has an Etype that references an E_String_Literal.
3046         (Eval_String_Literal): Avoid assumption that N_String_Literal node
3047         always references an E_String_Literal_Subtype entity. This may not
3048         be true in the future.
3049
3050         * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
3051         pragma location.
3052
3053         * sem_res.adb (Resolve): Specialize msg for function name used in proc
3054         call.
3055
3056 2004-01-05  Ed Falis  <falis@gnat.com>
3057
3058         * g-debuti.adb: Replaced direct boolean operator with short-circuit
3059         form.
3060
3061 2004-01-05  Vincent Celier  <celier@gnat.com>
3062
3063         * bld.adb: Minor comment updates
3064         (Process_Declarative_Items): Correct incorrect name (Index_Name instead
3065         of Item_Name).
3066
3067         * make.adb (Gnatmake): Special process for files to compile/check when
3068         -B is specified. Fail when there are only foreign mains in attribute
3069         Main of the project file and -B is not specified. Do not skip bind/link
3070         steps when -B is specified.
3071
3072         * makeusg.adb: Document new switch -B
3073
3074         * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
3075
3076         * switch-m.adb: (Scan_Make_Switches): Process -B switch
3077
3078         * vms_data.ads: Add new GNAT PRETTY qualifier
3079         /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
3080
3081 2004-01-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3082
3083         * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
3084         case.
3085
3086         * misc.c (gnat_printable_name): If VERBOSITY is 2, call
3087         Set_Identifier_Casing.
3088
3089         * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
3090         has size that overflows.
3091
3092 2004-01-05  Gary Dismukes  <dismukes@gnat.com>
3093
3094         * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
3095         -gnatwa warning on static condition.
3096
3097 2004-01-05  Doug Rupp  <rupp@gnat.com>
3098
3099         * link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
3100
3101 2004-01-05  Arnaud Charlet  <charlet@act-europe.fr>
3102
3103         * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
3104         all attributes, including read-only attribute.
3105
3106 2004-01-05  Pascal Obry  <obry@gnat.com>
3107
3108         * bindgen.adb (Gen_Object_Files_Options): Generate the new shared
3109         library naming scheme.
3110
3111         * mlib-prj.adb (Build_Library): Generate different names for the static
3112         or dynamic version of the GNAT runtime. This is needed to support the
3113         new shared library naming scheme.
3114         (Process_Binder_File): Add detection of shared library in binder file
3115         based on the new naming scheme.
3116
3117         * gnatlink.adb (Process_Binder_File): Properly detect the new naming
3118         scheme for the shared runtime libraries.
3119
3120         * Makefile.in:
3121         (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
3122         scheme.
3123         (install-gnatlib): Do not create symlinks for shared libraries.
3124         (gnatlib-shared-default): Idem.
3125         (gnatlib-shared-dual-win32): New target. Not used for now as the
3126         auto-import feature does not support arrays/records.
3127         (gnatlib-shared-win32): Do not create copy for the shared libraries.
3128         (gnatlib-shared-vms): Fix shared runtime libraries names.
3129
3130         * osint.ads, osint.adb (Shared_Lib): New routine, returns the target
3131         dependent runtime shared library name.
3132
3133 2004-01-05  Vasiliy Fofanov  <fofanov@act-europe.fr>
3134
3135         * osint.adb (Read_Library_Info): Remove bogus check if ALI is older
3136         than the object.
3137
3138 2004-01-05  Ed Schonberg  <schonberg@gnat.com>
3139
3140         * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
3141         protected objects when allocator has a subtype indication, not a
3142         qualified expression. Note that qualified expressions may have to be
3143         checked when limited aggregates are implemented.
3144
3145         * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
3146         pure, emit warning.
3147         (Analyze_Pragma, case Pure_Function): If enclosing package is pure and
3148         subprogram is imported, remove warning.
3149
3150 2004-01-05  Geert Bosch  <bosch@gnat.com>
3151
3152         * s-poosiz.adb: Update copyright notice.
3153         (Allocate): Use Task_Lock to protect against concurrent access.
3154         (Deallocate): Likewise.
3155
3156 2004-01-05  Joel Brobecker  <brobecker@gnat.com>
3157
3158         * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
3159         comment.
3160
3161 2003-12-23  Kelley Cook  <kcook@gcc.gnu.org>
3162
3163         * gnat_ug.texi: Force a CVS commit by updating copyright.
3164         * gnat_ug_vxw.texi: Regenerate.
3165         * gnat_ug_wnt.texi: Regenerate.
3166         * gnat_ug_vms.texi: Regenerate.
3167         * gnat_ug_unx.texi: Regenerate.
3168
3169 2003-12-20  Kazu Hirata  <kazu@cs.umass.edu>
3170
3171         * trans.c: Remove uses of "register" specifier in
3172         declarations of local variables.
3173
3174 2003-12-18  Kelley Cook  <kcook@gcc.gnu.org>
3175
3176         * stamp-xgnatug: New stamp file.
3177         * Make-lang.in (stamp-xgnatug):  New stamp file and comment.
3178         (ada/doctools/xgnatug): Add $(build_exeext).
3179         (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
3180         ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
3181
3182 2003-12-17  Ed Falis  <falis@gnat.com>
3183
3184         * a-elchha.adb (Tailored_Exception_Information): made Info constant to
3185         eliminate warning.
3186
3187         * a-exextr.adb: Add context clause for
3188         Ada.Exceptions.Last_Chance_Handler.
3189
3190 2003-12-17  Sergey Rybin  <rybin@act-europe.fr>
3191
3192         * cstand.adb (Create_Standard): Change the way how the declaration of
3193         the Duration type is created (making it the same way as it is for all
3194         the other standard types).
3195
3196 2003-12-17  Robert Dewar  <dewar@gnat.com>
3197
3198         * s-crtl.ads: Fix header format
3199         Change Pure to Preelaborate
3200
3201 2003-12-17  Ed Schonberg  <schonberg@gnat.com>
3202
3203         * checks.adb (Selected_Length_Checks): Generate an Itype reference for
3204         the expression type only if it is declared in the current unit.
3205
3206         * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
3207         are universal and already analyzed, as can occur in constrained
3208         subcomponents that depend on discriminants, when one constraint is a
3209         subtype mark.
3210
3211         * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
3212         type Any_Fixed is legal as the argument of a conversion, if only one
3213         fixed-point type is in context.
3214
3215 2003-12-17  GNAT Script  <nobody@gnat.com>
3216
3217         * Make-lang.in: Makefile automatically updated
3218
3219 2003-12-15  Robert Dewar  <dewar@gnat.com>
3220
3221         * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
3222         sec stack size.
3223
3224 2003-12-15  Vincent Celier  <celier@gnat.com>
3225
3226         * gnatchop.adb: (Error_Msg): Do not exit on error for a warning
3227         (Gnatchop): Do not set failure status when reporting the number of
3228         warnings.
3229
3230 2003-12-15  Doug Rupp  <rupp@gnat.com>
3231
3232         * s-ctrl.ads: New file.
3233
3234         * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
3235
3236         * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
3237         (GNATBIND_OBJS): Add ada/s-crtl.o.
3238
3239         * Makefile.in [VMS]: Clean up ifeq rules.
3240
3241         * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
3242         a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
3243         g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
3244         s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
3245         s-tasdeb.adb: Update copyright.
3246         Import System.CRTL.
3247         Make minor modifications to use System.CRTL declared functions instead
3248         of importing locally.
3249
3250 2003-12-15  GNAT Script  <nobody@gnat.com>
3251
3252         * Make-lang.in: Makefile automatically updated
3253
3254 2003-12-11  Ed Falis  <falis@gnat.com>
3255
3256         * 5zinit.adb: Clean up.
3257
3258         * 5zintman.adb (Notify_Exception): replaced case statement with a call
3259         to __gnat_map_signal, imported from init.c to support
3260         signal -> exception mappings that depend on the vxWorks version.
3261
3262         * init.c:
3263         Created and exported __gnat_map_signal to support signal -> exception
3264         mapping that is dependent on the VxWorks version.
3265         Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
3266
3267 2003-12-11  Vasiliy Fofanv  <fofanov@act-europe.fr>
3268
3269         * 5wosinte.ads: Link with -mthreads switch.
3270
3271 2003-12-11  Arnaud Charlet  <charlet@act-europe.fr>
3272
3273         * init.c (__gnat_install_handler [NetBSD]): Set
3274         __gnat_handler_installed, as done on all other platforms.
3275         Remove duplicated code.
3276
3277 2003-12-11  Jerome Guitton  <guitton@act-europe.fr>
3278
3279         * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
3280
3281 2003-12-11  Thomas Quinot  <quinot@act-europe.fr>
3282
3283         * sinfo.ads: Fix inconsistent example code in comment.
3284
3285 2003-12-11  Robert Dewar  <dewar@gnat.com>
3286
3287         * a-tiinau.adb: Add a couple of comments
3288
3289         * sem_ch3.adb: Minor reformatting
3290
3291         * sem_prag.adb:
3292         Fix bad prototype of Same_Base_Type in body (code reading cleanup)
3293         Minor reformatting throughout
3294
3295 2003-12-11  Ed Schonberg  <schonberg@gnat.com>
3296
3297         * exp_ch7.adb (Establish_Transient_Scope): If the call is within the
3298         bounds of a loop, create a separate block in order to generate proper
3299         cleanup actions to prevent memory leaks.
3300
3301         * sem_res.adb (Resolve_Call): After a call to
3302         Establish_Transient_Scope, the call may be rewritten and relocated, in
3303         which case no further processing is needed.
3304
3305         * sem_util.adb: (Wrong_Type): Refine previous fix.
3306          Fixes ACATS regressions.
3307
3308         PR ada/13353
3309
3310         * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
3311         be inlined.
3312
3313 2003-12-08  Jerome Guitton  <guitton@act-europe.fr>
3314
3315         * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
3316         i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
3317         obsolete files.
3318
3319         * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
3320         (rts-zfp): Ditto.
3321
3322 2003-12-08  Robert Dewar  <dewar@gnat.com>
3323
3324         * 7sintman.adb: Minor reformatting
3325
3326         * bindgen.adb: Configurable_Run_Time mode no longer suppresses the
3327         standard linker options to get standard libraries linked. We now plan
3328         to provide dummy versions of these libraries to match the appropriate
3329         configurable run-time (e.g. if a library is not needed at all, provide
3330         a dummy empty library).
3331
3332         * targparm.ads: Configurable_Run_Time mode no longer affects linker
3333         options (-L parameters and standard libraries). What we plan to do is
3334         to provide dummy libraries where the libraries are not required.
3335
3336         * gnatbind.adb: Minor comment improvement
3337
3338 2003-12-08  Javier Miranda  <miranda@gnat.com>
3339
3340         * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
3341         aggregate in the parent. Otherwise constants with limited aggregates
3342         are not supported. Add new formal to pass the component type (Ctype).
3343         It is required to call the corresponding IP subprogram in case of
3344         default initialized components.
3345         (Gen_Assign): In case of default-initialized component, generate a
3346         call to the IP subprogram associated with the component.
3347         (Build_Record_Aggr_Code): Remove the aggregate from the parent in case
3348         of aggregate with default initialized components.
3349         (Has_Default_Init_Comps): Improve implementation to recursively check
3350         all the present expressions.
3351
3352         * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
3353         to indicate that the initialization call corresponds to a
3354         default-initialized component of an aggregate.
3355         In case of default initialized aggregate with tasks this parameter is
3356         used to generate a null string (this is just a workaround that must be
3357         improved later). In case of discriminants, this parameter is used to
3358         generate a selected component node that gives access to the discriminant
3359         value.
3360
3361         * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
3362         subprogram, based on Build_Task_Allocate_Block, but adapted to expand
3363         allocated aggregates with default-initialized components.
3364
3365         * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
3366         the box notation is used in positional aggregates.
3367
3368 2003-12-08  Samuel Tardieu  <tardieu@act-europe.fr>
3369
3370         * lib.ads: Fix typo in comment
3371
3372 2003-12-08  Vincent Celier  <celier@gnat.com>
3373
3374         * prj.adb (Project_Empty): New component Unkept_Comments
3375         (Scan): Remove procedure; moved to Prj.Err.
3376
3377         * prj.ads (Project_Data): New Boolean component Unkept_Comments
3378         (Scan): Remove procedure; moved to Prj.Err.
3379
3380         * prj-dect.adb: Manage comments for the different declarations.
3381
3382         * prj-part.adb (With_Record): New component Node
3383         (Parse): New Boolean parameter Store_Comments, defaulted to False.
3384         Set the scanner to return ends of line and comments as tokens, if
3385         Store_Comments is True.
3386         (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
3387         comments are associated with these nodes. Store the node IDs in the
3388         With_Records.
3389         (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
3390         With_Records.
3391         (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
3392         the N_Project node. Call Tree.Save and Tree.Reset before scanning the
3393         current project. Call Tree.Restore afterwards. Set the various nodes
3394         for comment storage (Next_End, End_Of_Line, Previous_Line,
3395         Previous_End).
3396
3397         * prj-part.ads (Parse): New Boolean parameter Store_Comments,
3398         defaulted to False.
3399
3400         * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
3401         to False. When Truncated is True, truncate the string, never go to the
3402         next line.
3403         (Write_End_Of_Line_Comment): New procedure
3404         (Print): Process comments for nodes N_With_Clause,
3405         N_Package_Declaration, N_String_Type_Declaration,
3406         N_Attribute_Declaration, N_Typed_Variable_Declaration,
3407         N_Variable_Declaration, N_Case_Construction, N_Case_Item.
3408         Process nodes N_Comment.
3409
3410         * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
3411         without comments and there are some comments, set the flag
3412         Unkept_Comments to True.
3413         (Scan): If there are comments, set the flag Unkept_Comments to True and
3414         clear the comments.
3415         (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
3416         (Next_End_Nodes: New table
3417         (Comment_Zones_Of): New function
3418         (Scan): New procedure; moved from Prj. Accumulate comments in the
3419         Comments table and set end of line comments, comments after, after end
3420         and before end.
3421         (Add_Comments): New procedure
3422         (Save, Restore, Seset_State): New procedures
3423         (There_Are_Unkept_Comments): New function
3424         (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
3425         (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
3426         procedures.
3427         (First_Comment_After, First_Comment_After_End): New functions
3428         (First_Comment_Before, First_Comment_Before_End): New functions
3429         (Next_Comment): New function
3430         (End_Of_Line_Comment, Follows_Empty_Line,
3431         Is_Followed_By_Empty_Line): New functions
3432         (Set_First_Comment_After, Set_First_Comment_After_End): New procedures
3433         (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
3434         (Set_Next_Comment): New procedure
3435         (Default_Project_Node): Associate comment before if the node can store
3436         comments.
3437
3438         * scans.ads (Token_Type): New enumeration value Tok_Comment
3439         (Comment_Id): New global variable
3440
3441         * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
3442         defaulted to False.
3443         (Scan): Store position of start of comment. If comments are tokens, set
3444         Comment_Id and set Token to Tok_Comment when scanning a comment.
3445         (Set_Comment_As_Token): New procedure
3446
3447         * sinput-p.adb: Update Copyright notice
3448         (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
3449         that no longer exists.
3450
3451 2003-12-08  Javier Miranda  <miranda@gnat.com>
3452
3453         * sem_aggr.adb: Add dependence on Exp_Tss package
3454         Correct typo in comment
3455         (Resolve_Aggregate): In case of array aggregates set the estimated
3456         type of the aggregate before calling resolve. This is needed to know
3457         the name of the corresponding IP in case of limited array aggregates.
3458         (Resolve_Array_Aggregate): Delay the resolution to the expansion phase
3459         in case of default initialized array components.
3460
3461         * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
3462         types. Required to give support to limited aggregates in generic
3463         formals.
3464
3465 2003-12-08  Ed Schonberg  <schonberg@gnat.com>
3466
3467         * sem_ch3.adb (Check_Initialization): For legality purposes, an
3468         inlined body functions like an instantiation.
3469         (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
3470         until bounds are analyzed, to diagnose premature use of type.
3471
3472         * sem_util.adb (Wrong_Type): Improve error message when the type of
3473         the expression is used prematurely.
3474
3475 2003-12-08  GNAT Script  <nobody@gnat.com>
3476
3477         * Make-lang.in: Makefile automatically updated
3478
3479 2003-12-08  Arnaud Charlet  <charlet@act-europe.fr>
3480
3481         * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
3482         they are automatically generated by Make-lang.in and cause nothing but
3483         maintenance troubles.
3484
3485 2003-12-05  Thomas Quinot  <quinot@act-europe.fr>
3486
3487         * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
3488         version of this unit).
3489
3490 2003-12-05  Olivier Hainque  <hainque@act-europe.fr>
3491
3492         * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
3493         5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
3494         5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
3495         the body of System.Interrupt_Management common to several targets.
3496         Update copyright notice when appropriate.
3497
3498         * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
3499         constant.
3500
3501         * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
3502         to ensure that the kernel fills in the interrupted context structure
3503         before calling a signal handler, which is necessary to be able to
3504         unwind past it. Update the copyright notice.
3505
3506 2003-12-05  Jerome Guitton  <guitton@act-europe.fr>
3507
3508         * a-elchha.ads: New file.
3509
3510         * a-elchha.adb: New default last chance handler. Contents taken from
3511         Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
3512
3513         * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
3514         is moved to a-elchha.adb to provide a target-independent default last
3515         chance handler.
3516
3517         * Makefile.rtl: Add a-elchha.o
3518
3519         * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
3520
3521 2003-12-05  Ed Schonberg  <schonberg@gnat.com>
3522
3523         * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
3524         declared in an instance, do not inline the call if the instance is not
3525         frozen yet, to prevent order of elaboration problems.
3526
3527         * sem_prag.adb: Add comments for previous fix.
3528
3529 2003-12-05  Samuel Tardieu  <tardieu@act-europe.fr>
3530
3531         * g-table.adb: Use the right variable in Set_Item.
3532         Update copyright notice.
3533
3534 2003-12-05  Arnaud Charlet  <charlet@act-europe.fr>
3535
3536         * Makefile.in: Remove unused rules.
3537
3538 2003-12-05  Vincent Celier  <celier@gnat.com>
3539
3540         * switch-c.adb (Scan_Front_End_Switches): Remove processing of
3541         -nostdlib. Not needed here after all.
3542
3543 2003-12-03  Thomas Quinot  <quinot@act-europe.fr>
3544
3545         PR ada/11724
3546
3547         * adaint.h, adaint.c, g-os_lib.ads:
3548         Do not assume that the offset argument to lseek(2) is a 32 bit integer,
3549         on some platforms (including FreeBSD), it is a 64 bit value.
3550         Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
3551
3552 2003-12-03  Arnaud Charlet  <charlet@act-europe.fr>
3553
3554         * gnatvsn.ads (Library_Version): Now contain only the relevant
3555         version info.
3556         (Verbose_Library_Version): New constant.
3557
3558         * g-spipat.adb, g-awk.adb, g-debpoo.adb,
3559         g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
3560         s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
3561
3562         * gnatlbr.adb: Clean up: replace Library_Version by
3563         Verbose_Library_Version.
3564
3565         * make.adb, lib-writ.adb, exp_attr.adb:
3566         Clean up: replace Library_Version by Verbose_Library_Version.
3567
3568         * 5lintman.adb: Removed.
3569
3570         * Makefile.in:
3571         Update and simplify computation of LIBRARY_VERSION.
3572         Fix computation of GSMATCH_VERSION.
3573         5lintman.adb is no longer used: replaced by 7sintman.adb.
3574
3575 2003-12-03  Robert Dewar  <dewar@gnat.com>
3576
3577         * exp_ch5.adb:
3578         (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
3579         name. Modified to consider small non-bit-packed arrays as troublesome
3580         and in need of component-by-component assigment expansion.
3581
3582 2003-12-03  Vincent Celier  <celier@gnat.com>
3583
3584         * lang-specs.h: Process nostdlib as nostdinc
3585
3586         * back_end.adb: Update Copyright notice
3587         (Scan_Compiler_Arguments): Process -nostdlib directly.
3588
3589 2003-12-03  Jose Ruiz  <ruiz@act-europe.fr>
3590
3591         * Makefile.in:
3592         When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
3593         redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
3594         included in HIE_NONE_TARGET_PAIRS.
3595
3596 2003-12-03  Ed Schonberg  <schonberg@gnat.com>
3597
3598         * sem_attr.adb:
3599         (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
3600         is legal in an instance, because legality is cheched in the template.
3601
3602         * sem_prag.adb:
3603         (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
3604         appplied to an unchecked conversion of a formal parameter.
3605
3606         * sem_warn.adb:
3607         (Output_Unreferenced_Messages): Suppress "not read" warnings on imported
3608         variables.
3609
3610 2003-12-03  Olivier Hainque  <hainque@act-europe.fr>
3611
3612         * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
3613         routines. The second one is new functionality to deal with backtracing
3614         through signal handlers.
3615         (unwind): Split into the two separate subroutines above.
3616         Update the documentation, and deal properly with sizeof (REG) different
3617         from sizeof (void*).
3618
3619 2003-12-01  Nicolas Setton  <setton@act-europe.fr>
3620
3621         * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
3622         so that the debugger can reliably access the value of the parameter,
3623         and therefore is able to display the exception name when an exception
3624         breakpoint is reached.
3625
3626 2003-12-01  Thomas Quinot  <quinot@act-europe.fr>
3627
3628         * fmap.adb: Fix typo in warning message.
3629
3630         * g-socket.ads, g-socket.adb: Make Free a visible instance of
3631         Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
3632
3633 2003-12-01  Vincent Celier  <celier@gnat.com>
3634
3635         * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
3636         ther is no Afile.
3637         (Build_Library): Get the switches only if Default_Switches is declared
3638         in package Binder.
3639
3640 2003-12-01  Ed Schonberg  <schonberg@gnat.com>
3641
3642         * exp_ch6.adb (Expand_Actuals): When applying validity checks to
3643         actuals that are indexed components, reanalyze actual to ensure that
3644         packed array references are properly expanded.
3645
3646         * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
3647         attempted assignment to a discriminant.
3648
3649 2003-12-01  Robert Dewar  <dewar@gnat.com>
3650
3651         * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
3652         reformatting.
3653
3654         * switch-c.adb: Minor reformatting of comments
3655
3656 2003-12-01  Arnaud Charlet  <charlet@act-europe.fr>
3657
3658         * Makefile.in: Clean ups.
3659
3660 2003-12-01  GNAT Script  <nobody@gnat.com>
3661
3662         * Make-lang.in: Makefile automatically updated
3663
3664 2003-12-01  Arnaud Charlet  <charlet@act-europe.fr>
3665
3666         * 5wsystem.ads: Disable zero cost exception, not ready yet.
3667
3668 2003-11-29  Ulrich Weigand  <uweigand@de.ibm.com>
3669
3670         * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
3671         to force serialization.
3672
3673 2003-11-26  Thomas Quinot  <quinot@act-europe.fr>
3674
3675         * g-socket.ads, g-socket.adb:
3676         Clarify documentation of function Stream. Introduce a Free procedure
3677         to release the returned Stream once it becomes unused.
3678
3679         * 5asystem.ads: For Alpha Tru64, enable ZCX by default.
3680
3681 2003-11-26  Arnaud Charlet  <charlet@act-europe.fr>
3682
3683         (Cond_Timed_Wait): Introduce new constant Time_Out_Max,
3684         since NT 4 cannot handle timeout values that are too large,
3685         e.g. DWORD'Last - 1.
3686
3687 2003-11-26  Ed Schonberg  <schonberg@gnat.com>
3688
3689         * exp_ch4.adb:
3690         (Expand_N_Slice): Recognize all cases of slices that appear as actuals
3691         in procedure calls and whose expansion must be deferred.
3692
3693         * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
3694         is in exp_ch4.
3695
3696         * sem_ch3.adb:
3697         (Build_Derived_Array_Type): Create operator for unconstrained type
3698         if ancestor is unconstrained.
3699
3700 2003-11-26  Vincent Celier  <celier@gnat.com>
3701
3702         * make.adb (Project_Object_Directory): New global variable
3703         (Change_To_Object_Directory): New procedure
3704         (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
3705         of Change_Dir directly. Do not change working directory to object
3706         directory of main project after each compilation.
3707         (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
3708         directly.
3709         Change to object directory of main project before binding step.
3710         (Initialize): Initialize Project_Object_Directory to No_Project
3711
3712         * mlib-prj.adb:
3713         (Build_Library): Take into account Builder'Default_Switches ("Ada") when
3714         binding a Stand-Alone Library.
3715
3716         * output.adb: Update Copyright notice
3717         (Write_Char): Output buffer when full
3718
3719 2003-11-26  Robert Dewar  <dewar@gnat.com>
3720
3721         * sem_ch13.adb: (Check_Size): Reset size if size is too small
3722
3723         * sem_ch13.ads:
3724         (Check_Size): Fix documentation to include bit-packed array case
3725
3726         * sem_res.adb: Implement restriction No_Direct_Boolean_Operators
3727
3728         * s-rident.ads: Put No_Direct_Boolean_Operators in proper order
3729
3730         * s-rident.ads: Add new restriction No_Direct_Boolean_Operators
3731
3732 2003-11-24  Arnaud Charlet <charlet@act-europe.fr>
3733
3734         PR ada/13142
3735         * utils.c (init_gigi_decls): Change name of built-in setjmp to
3736         __builtin_setjmp, since this is apparently needed by recent
3737         non Ada changes.
3738
3739 2003-11-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3740
3741         * adadecode.c: Only include ctype.h if not IN_GCC.
3742         (__gnat_decode): Use ISDIGIT from safe-ctype.h.
3743
3744 2003-11-24  Jose Ruiz  <ruiz@act-europe.fr>
3745
3746         * Makefile.in:
3747         Use 5zintman.ads for VxWorks targets. This file avoid confusion between
3748         signals and interrupts.
3749
3750         * 5zintman.ads: New File.
3751
3752         * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
3753         add exception signals to the set of unmasked signals.
3754
3755         * 5ztaprop.adb:
3756         Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
3757         between signals and interrupts.
3758         Add to Unblocked_Signal_Mask the set of signals that are in
3759         Keep_Unmasked.
3760
3761         * 7sinmaop.adb:
3762         Adding a check to see whether the Interrupt_ID we want to unmask is in
3763         the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
3764         reason is that the index type of the Keep_Unmasked array is not always
3765         Interrupt_ID; it may be a subtype of Interrupt_ID.
3766
3767 2003-11-24  Gary Dismukes  <dismukes@gnat.com>
3768
3769         * exp_util.adb:
3770         (Remove_Side_Effects): Condition constantness of object created for a
3771          an unchecked type conversion on the constantness of the expression
3772          to ensure the correct value for 'Constrained when passing components
3773          of view-converted class-wide objects.
3774
3775 2003-11-24  Robert Dewar  <dewar@gnat.com>
3776
3777         * par-load.adb (Load): Improve handling of misspelled and missing units
3778         Removes several cases of compilation abandoned messages
3779
3780         * lib.adb: (Remove_Unit): New procedure
3781
3782         * lib.ads: (Remove_Unit): New procedure
3783
3784         * lib-load.adb: Minor reformatting
3785
3786 2003-11-24  Vincent Celier  <celier@gnat.com>
3787
3788         * make.adb:
3789         (Gnatmake, Initialize): Call Usage instead of Makeusg directly
3790         (Marking_Label): Label to mark processed source files. Incremented for
3791         each executable.
3792         (Gnatmake): Increase Marking_Labet for each executable
3793         (Is_Marked): Compare against marking label
3794         (Mark): Mark with marking label
3795
3796 2003-11-24  Jerome Guitton  <guitton@act-europe.fr>
3797
3798         * s-thread.ads:
3799         Move the declaration of the TSD for System.Threads to System.Soft_Links.
3800         Add some comments.
3801
3802         * Makefile.in: Added target pair for s-thread.adb for cert runtime.
3803         (rts-cert): build a single relocatable object for the run-time lib.
3804         Fix perms.
3805
3806 2003-11-24  Vasiliy Fofanov  <fofanov@act-europe.fr>
3807
3808         * Make-lang.in:
3809         Use gnatls rather than gcc to obtain the location of GNAT RTL for
3810         crosstools build.
3811
3812 2003-11-24  Sergey Rybin  <rybin@act-europe.fr>
3813
3814         * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
3815         can not use it as before (that is, as a variable) when dumping it into
3816         the tree file. Add a local variable to store the result of this
3817         function and to be used as the string to be written into the tree.
3818
3819         * scn.adb (Initialize_Scanner): Add comments explaining the recent
3820         changes.
3821
3822         * sinput.adb (Source_First, Source_Last): In case of
3823         Internal_Source_File, replace returning attributes of
3824         Internal_Source_Ptr (which is wrong) with returning attributes of
3825         Internal_Source.
3826
3827 2003-11-24  Ed Schonberg  <schonberg@gnat.com>
3828
3829         * sem_ch3.adb:
3830         (New_Concatenation_Op): Proper name for New_Binary_Operator, only
3831         used for implicit concatenation operators.
3832         Code cleanup.
3833
3834         * sem_elab.adb:
3835         (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
3836         task bodies that are in the scope of a Suppress pragma.
3837         (Check_A Call): Use the flag to prevent spurious elaboration checks.
3838
3839         * sinfo.ads, sinfo.adb:
3840         New flag No_Elaboration_Check on function/procedure calls, to properly
3841         suppress checks on calls in task bodies that are within a local suppress
3842         pragma.
3843
3844         * exp_ch4.adb:
3845         (Expand_Concatenate_Other): Use the proper integer type for the
3846         expression for the upper bound, to avoid universal_integer computations
3847         when possible.
3848
3849 2003-11-21  Kelley Cook  <kcook@gcc.gnu.org>
3850
3851         * .cvsignore: Delete.
3852
3853 2003-11-21  Andreas Schwab  <schwab@suse.de>
3854
3855         * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
3856
3857 2003-11-21  Vasiliy Fofanov  <fofanov@act-europe.fr>
3858
3859         * 5wsystem.ads: Enable zero cost exception.
3860
3861 2003-11-21  Jerome Guitton  <guitton@act-europe.fr>
3862
3863         * 5ztiitho.adb: Remove an unreferenced variable.
3864
3865 2003-11-21  Thomas Quinot  <quinot@act-europe.fr>
3866
3867         * adaint.c: For FreeBSD, use mkstemp.
3868
3869 2003-11-21  Arnaud Charlet  <charlet@act-europe.fr>
3870
3871         * gnatlbr.adb: Now reference Gnat_Static_Version_String.
3872
3873 2003-11-21  Robert Dewar  <dewar@gnat.com>
3874
3875         * bld.adb: Remove useless USE of gnatvsn
3876
3877         * gnatchop.adb: Minor reformatting
3878         Clean up version handling to be more consistent
3879
3880         * gnatxref.adb: Minor reformatting
3881
3882         * gprcmd.adb: Minor reformatting
3883         Fix output of copyright to be more consistent with other tools
3884
3885 2003-11-21  Vincent Celier  <celier@gnat.com>
3886
3887         * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
3888
3889 2003-11-21  Sergey Rybin  <rybin@act-europe.fr>
3890
3891         * atree.adb (Initialize): Add initializations for global variables
3892         used in New_Copy_Tree.
3893
3894         * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
3895         Internal_Source_File as the actual).
3896         Put the set of statements creating Any_Character before the set of
3897         statements creating Any_Array to have Any_Character fully initialized
3898         when it is used in creating Any_Array.
3899
3900         * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
3901         not call Scan in case if the actual is Internal_Source_File
3902         Add 2003 to copyright note.
3903
3904         * sinput.adb (Source_First, Source_Last, Source_Text): Add code for
3905         processing Internal_Source_File.
3906
3907         * types.ads: Add the constant Internal_Source_File representing the
3908         source buffer for artificial source-code-like strings created within
3909         the compiler (the definition of Source_File_Index is changed).
3910
3911 2003-11-20  Arnaud Charlet  <charlet@act-europe.fr>
3912
3913         * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
3914         56system.ads: New file, FreeBSD version.
3915
3916 2003-11-20  Joseph S. Myers  <jsm@polyomino.org.uk>
3917
3918         * Make-lang.in (ada.extraclean): Delete.
3919
3920 2003-11-19  Arnaud Charlet  <charlet@act-europe.fr>
3921
3922         * gnatmem.adb: Clean up verbose output.
3923
3924         * gprcmd.adb: Change copyright to FSF.
3925
3926 2003-11-19  Vincent Celier  <celier@gnat.com>
3927
3928         * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
3929         and Version (ignored).
3930
3931         * symbols.ads: (Policy): New type
3932         (Initialize): New parameter Reference, Symbol_Policy and
3933         Library_Version.
3934         Remove parameter Force.
3935         Minor reformatting.
3936
3937         * snames.ads, snames.adbadb: New standard names
3938         Library_Reference_Symbol_File and Library_Symbol_Policy
3939
3940         * mlib-prj.adb:
3941         (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
3942         project.
3943
3944         * mlib-tgt.adb:
3945         (Build_Dynamic_Library): New parameter Symbol_Data (ignored)
3946
3947         * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
3948
3949         * prj.adb: (Project_Empty): New component Symbol_Data
3950
3951         * prj.ads: (Policy, Symbol_Record): New types
3952         (Project_Data): New component Symbol_Data
3953
3954         * prj-attr.adb:
3955         New attributes Library_Symbol_File, Library_Symbol_Policy and
3956         Library_Reference_Symbol_File.
3957
3958         * prj-nmsc.adb:
3959         (Ada_Check): When project is a Stand-Alone library project, process
3960         attribute Library_Symbol_File, Library_Symbol_Policy and
3961         Library_Reference_Symbol_File.
3962
3963         * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
3964         5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
3965         5sml-tgt.adb (Build_Dynamic_Library): New parameter
3966         Symbol_Data (ignored).
3967
3968         * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
3969         (Build_Dynamic_Library): New parameter Symbol_Data. New internal
3970         functions Option_File_Name and Version_String. Set new options of
3971         gnatsym related to symbol file, symbol policy and reference symbol
3972         file.
3973
3974         * 5vsymbol.adb:
3975         Extensive modifications to take into account the reference symbol file,
3976         the symbol policy, the library version and to put in the symbol file the
3977         minor and major IDs.
3978
3979         * bld.adb (Process_Declarative_Items): Put second argument of
3980         gprcmd to_absolute between single quotes, to avoid problems with
3981         Windows.
3982
3983         * bld-io.adb: Update Copyright notice.
3984         (Flush): Remove last character of a line, if it is a back slash, to
3985         avoid make problems.
3986
3987         * gnatsym.adb:
3988         Implement new scheme with reference symbol file and symbol policy.
3989
3990         * g-os_lib.ads: (Is_Directory): Clarify comment
3991
3992 2003-11-19  Robert Dewar  <dewar@gnat.com>
3993
3994         * atree.adb: Move New_Copy_Tree global variables to head of package
3995
3996         * errout.adb: Minor reformatting
3997
3998 2003-11-19  Javier Miranda  <miranda@gnat.com>
3999
4000         * sem_ch4.adb: (Diagnose_Call): Improve error message.
4001         Add reference to Ada0Y (AI-50217)
4002
4003         * sem_ch6.adb, sem_ch8.adb, sem_type.adb,
4004         sem_util.adb: Add reference to AI-50217
4005
4006         * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
4007
4008         * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
4009
4010         * sem_aggr.adb: Complete documentation of AI-287 changes
4011
4012         * par-ch4.adb: Document previous changes.
4013
4014         * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
4015         sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
4016         Ada0Y (AI-50217)
4017
4018         * exp_aggr.adb: Add references to AI-287 in previous changes
4019
4020 2003-11-19  Ed Schonberg  <schonberg@gnat.com>
4021
4022         * exp_ch6.adb:
4023         (Add_Call_By_Copy_Node): Do not original node of rewritten expression
4024         in the rewriting is the result of an inlined call.
4025
4026         * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
4027         parameter is a type conversion, use original node to construct the
4028         post-call assignment, because expression may have been rewritten, e.g.
4029         if it is a packed array.
4030
4031         * sem_attr.adb:
4032         (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
4033         body, just as it is in an instance.
4034         Categorization routines
4035
4036         * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
4037         Instantiate_Object): Set proper sloc reference for message on missing
4038         actual.
4039
4040 2003-11-19  Thomas Quinot  <quinot@act-europe.fr>
4041
4042         * Makefile.in: Add FreeBSD libgnat pairs.
4043
4044         * usage.adb: Fix typo in usage message.
4045
4046 2003-11-19  Jerome Guitton  <guitton@act-europe.fr>
4047
4048         * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
4049         s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
4050         pragma Thread_Body.
4051         Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
4052
4053         * s-thread.adb: This file is now a dummy implementation of
4054         System.Thread.
4055
4056 2003-11-19  Sergey Rybin  <rybin@act-europe.fr>
4057
4058         * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
4059
4060 2003-11-19  Emmanuel Briot  <briot@act-europe.fr>
4061
4062         * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
4063         instanciation references in the parent type description.
4064
4065 2003-11-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4066
4067         * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
4068
4069         * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
4070         TYPE_PRECISION directly from esize.
4071
4072 2003-11-18  Thomas Quinot  <quinot@act-europe.fr>
4073
4074         * cstreams.c:
4075         Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
4076
4077         * init.c: Initialization routines for FreeBSD
4078
4079         * link.c: Link info for FreeBSD
4080
4081         * sysdep.c: Add the case of FreeBSD
4082
4083 2003-11-17  Jerome Guitton  <guitton@act-europe.fr>
4084
4085         * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
4086         already called in System.Threads.
4087
4088         * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
4089         environment task, as it has been moved to System.Threads.Initialization.
4090
4091 2003-11-17  Arnaud Charlet  <charlet@act-europe.fr>
4092
4093         * adaint.c (__gnatlib_install_locks): Only reference
4094         __gnat_install_locks on VMS, since other platforms can avoid using
4095         --enable-threads=gnat
4096
4097 2003-11-17  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4098
4099         * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
4100
4101         * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
4102         TYPE_PACKED_ARRAY_TYPE_P.
4103         (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
4104
4105         Part of PR ada/12806
4106         * utils.c (float_type_for_precision): Renamed from float_type_for_size.
4107         Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
4108
4109 2003-11-17  Vincent Celier  <celier@gnat.com>
4110
4111         * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
4112         to False.
4113         Do not set exit status to Failure when Warning is True.
4114         (Gnatchop): Make errors "no compilation units found" and
4115         "no source files written" warnings only.
4116
4117         * make.adb (Gnatmake): When using a project file, set
4118         Look_In_Primary_Dir to False.
4119         (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
4120         and Local_Configuration_Pragmas in the project where they are declared
4121         not an extending project which might have inherited them.
4122
4123         * osint.adb (Locate_File): If Name is already an absolute path, do not
4124         look for a directory.
4125
4126         * par-ch10.adb (P_Compilation_Unit): If source contains no token, and
4127         -gnats (Check_Syntax) is used, issue only a warning, not an error.
4128
4129         * prj.adb (Register_Default_Naming_Scheme): Add new component Project
4130         in objects of type Variable_Value.
4131
4132         * prj.ads: (Variable_Value): New component Project
4133
4134         * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
4135         is in a project extended by Project.
4136
4137         * prj-proc.adb (Add_Attributes): New parameter Project. Set component
4138         Project of Variable_Values to this new parameter value.
4139         (Expression): Set component Project of Variable_Values.
4140         (Process_Declarative_Items): Call Add_Attributes with parameter Project.
4141         Set the component Project in array elements.
4142
4143 2003-11-17  Sergey Rybin  <rybin@act-europe.fr>
4144
4145         * errout.adb: (Initialize): Add initialization for error nodes.
4146
4147         * sem_ch12.adb (Initialize): Add missing initializations for
4148         Exchanged_Views and Hidden_Entities.
4149
4150 2003-11-17  Ed Schonberg  <schonberg@gnat.com>
4151
4152         * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
4153         already instantiated tree for use in subsequent inlining.
4154         (Analyze_Associations, Instantiate_Formal_Subprogram,
4155         Instantiate_Object): improve error message for mismatch in
4156         instantiations.
4157
4158         * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
4159         instantiations of subprograms declared in instances.
4160
4161 2003-11-17  Javier Miranda  <miranda@gnat.com>
4162
4163         * sem_ch4.adb (Analyze_Allocator): Previous modification must be
4164         executed only under the Extensions_Allowed flag.
4165
4166 2003-11-17  Robert Dewar  <dewar@gnat.com>
4167
4168         * a-exexda.adb (Address_Image): Fix documentation to indicate leading
4169         zeroes suppressed.
4170         (Address_Image): Fix bug of returning 0x instead of 0x0
4171         Minor reformatting (function specs).
4172
4173         * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
4174         (missed case of 33-63)
4175
4176         * freeze.adb, sem_ch13.adb: Properly check size of packed bit array
4177
4178         * s-thread.adb: Add comments for pragma Restriction
4179
4180         * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
4181         sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
4182
4183 2003-11-17  Ed Falis  <falis@gnat.com>
4184
4185         * s-thread.adb: Added No_Tasking restriction for this implementation.
4186
4187 2003-11-17  Emmanuel Briot  <briot@act-europe.fr>
4188
4189         * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
4190         instanciation references in the parent type description.
4191
4192 2003-11-17  GNAT Script  <nobody@gnat.com>
4193
4194         * Make-lang.in: Makefile automatically updated
4195
4196 2003-11-16  Jason Merrill  <jason@redhat.com>
4197
4198         * Make-lang.in (ada.tags): Create TAGS.sub files in each directory
4199         and TAGS files that include them for each front end.
4200
4201 2003-11-14  Andreas Jaeger  <aj@suse.de>
4202
4203         * lang.opt: Change -Wno-long-long to -Wlong-long since the latter
4204         is the canonical version.
4205         * misc.c (gnat_handle_option): Likewise.
4206
4207         * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
4208
4209         * 5nsystem.ads: New file for x86_64-linux-gnu.
4210
4211 2003-11-14  Arnaud Charlet  <charlet@act-europe.fr>
4212
4213         * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
4214
4215         * comperr.adb: Fix logic in previous change.
4216
4217 2003-11-13  Vincent Celier  <celier@gnat.com>
4218
4219         * 5bml-tgt.adb (Build_Dynamic_Library): Use
4220         Osint.Include_Dir_Default_Prefix instead of
4221         Sdefault.Include_Dir_Default_Name.
4222
4223         * gnatlbr.adb: Update Copyright notice
4224         (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
4225         Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
4226         instead of Sdefault.Object_Dir_Default_Name
4227
4228         * gnatlink.adb:
4229         (Process_Binder_File): Never suppress the option following -Xlinker
4230
4231         * mdll-utl.adb:
4232         (Gcc): Use Osint.Object_Dir_Default_Prefix instead of
4233         Sdefault.Object_Dir_Default_Name.
4234
4235         * osint.ads, osint.adb:
4236         (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
4237         Minor reformatting.
4238
4239         * vms_conv.ads: Minor reformating
4240         Remove GNAT STANDARD and GNAT PSTA
4241
4242         * vms_conv.adb:
4243         Allow GNAT MAKE to have several files on the command line.
4244         (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
4245         Sdefault.Object_Dir_Default_Name.
4246         Minor Reformating
4247         Remove data for GNAT STANDARD
4248
4249         * vms_data.ads:
4250         Add new compiler qualifier /PRINT_STANDARD (-gnatS)
4251         Remove data for GNAT STANDARD
4252         Remove options and documentation for -gnatwb/-gnatwB: these warning
4253         options no longer exist.
4254
4255 2003-11-13  Ed Falis  <falis@gnat.com>
4256
4257         * 5zthrini.adb: (Init_RTS): Made visible
4258
4259         * 5zthrini.adb:
4260         (Register): Removed unnecessary call to taskVarGet that checked whether
4261          an ATSD was already set as a task var for the argument thread.
4262
4263         * s-thread.adb:
4264         Updated comment to reflect that this is a VxWorks version
4265         Added context clause for System.Threads.Initialization
4266         Added call to System.Threads.Initialization.Init_RTS
4267
4268 2003-11-13  Jerome Guitton  <guitton@act-europe.fr>
4269
4270         * 5zthrini.adb:
4271         (Init_RTS): New procedure, for the initialization of the run-time lib.
4272
4273         * s-thread.adb:
4274         Remove dependancy on System.Init, so that this file can be used in the
4275         AE653 sequential run-time lib.
4276
4277 2003-11-13  Robert Dewar  <dewar@gnat.com>
4278
4279         * bindgen.adb: Minor reformatting
4280
4281 2003-11-13  Ed Schonberg  <schonberg@gnat.com>
4282
4283         * checks.adb:
4284         (Apply_Discriminant_Check): Do no apply check if target type is derived
4285         from source type with no applicable constraint.
4286
4287         * lib-writ.adb:
4288         (Ensure_System_Dependency): Do not apply the style checks that may have
4289         been specified for the main unit.
4290
4291         * sem_ch8.adb:
4292         (Find_Selected_Component): Further improvement in error message, with
4293         RM reference.
4294
4295         * sem_res.adb:
4296         (Resolve): Handle properly the case of an illegal overloaded protected
4297         procedure.
4298
4299 2003-11-13  Javier Miranda  <miranda@gnat.com>
4300
4301         * exp_aggr.adb:
4302         (Has_Default_Init_Comps): New function to check the presence of
4303         default initialization in an aggregate.
4304         (Build_Record_Aggr_Code): Recursively expand the ancestor in case of
4305         extension aggregate of a limited record. In addition, a new formal
4306         was added to do not initialize the record controller (if any) during
4307         this recursive expansion of ancestors.
4308         (Init_Controller): Add support for limited record components.
4309         (Expand_Record_Aggregate): In case of default initialized components
4310         convert the aggregate into a set of assignments.
4311
4312         * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
4313         describing the new syntax.
4314         Nothing else needed to be done because this subprogram delegates part of
4315         its work to P_Precord_Or_Array_Component_Association.
4316         (P_Record_Or_Array_Component_Association): Give support to the new
4317         syntax for default initialization of components.
4318
4319         * sem_aggr.adb:
4320         (Resolve_Aggregate): Relax the strictness of the frontend in case of
4321         limited aggregates.
4322         (Resolve_Record_Aggregate): Give support to default initialized
4323         components.
4324         (Get_Value): In case of default initialized components, duplicate
4325         the corresponding default expression (from the record type
4326         declaration). In case of default initialization in the *others*
4327         choice, do not check that all components have the same type.
4328         (Resolve_Extension_Aggregate): Give support to limited extension
4329         aggregates.
4330
4331         * sem_ch3.adb:
4332         (Check_Initialization): Relax the strictness of the front-end in case
4333         of aggregate and extension aggregates. This test is now done in
4334         Get_Value in a per-component manner.
4335
4336         * sem_ch4.adb (Analyze_Allocator): Don't post an error if the
4337         expression corresponds to a limited aggregate. This test is now done
4338         in Get_Value.
4339
4340         * sinfo.ads, sinfo.adb (N_Component_Association): Addition of
4341         Box_Present flag.
4342
4343         * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
4344         present in an N_Component_Association node
4345
4346 2003-11-13  Thomas Quinot  <quinot@act-europe.fr>
4347
4348         * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
4349         type-conformant entry only if they are homographs.
4350
4351 2003-11-13  GNAT Script  <nobody@gnat.com>
4352
4353         * Make-lang.in: Makefile automatically updated
4354
4355 2003-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4356
4357         * adadecode.c: Use <> form of include for ctype.h.
4358         * sysdep.c [IN_RTS]: Use <> form of include for time.h.
4359
4360 2003-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4361
4362         * 5gsystem.ads (Functions_Return_By_DSP): Set to False.
4363         Works around PR middle-end/6552.
4364
4365 2003-11-10  Ed Falis  <falis@gnat.com>
4366
4367         * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
4368
4369         * 5zinit.adb: (Install_Handler): Moved back to spec
4370         (Install_Signal_Handlers): Deleted
4371
4372         * 5zthrini.adb: Added context clause for System.Storage_Elements
4373         (Register): Only handles creation of taskVar; initialization moved to
4374         Thread_Body_Enter.
4375         (Reset_TSD): Deleted; replaced by Thread_Body_Enter
4376         Added declaration of environment task secondary stack and
4377         initialization.
4378
4379         * s-thread.adb: Implement bodies for thread body processing
4380
4381         * s-thread.ads:
4382         Added comment identifying supported targets for pragma Thread_Body.
4383
4384 2003-11-10  Pascal Obry  <obry@gnat.com>
4385
4386         * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
4387         GNAT_MAX_PATH_LEN.
4388
4389         * s-fileio.adb:
4390         (Open): Properly check for string length before copying into the buffer.
4391         Raises Name_Error if buffer is too small. Note that this was a potential
4392         buffer overflow.
4393
4394 2003-11-10  Romain Berrendonner  <berrendo@act-europe.fr>
4395
4396         * bindgen.adb, comperr.adb: Code clean ups.
4397         * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
4398
4399 2003-11-10  Sergey Rybin  <rybin@act-europe.fr>
4400
4401         * gnat1drv.adb: Add call to Sem_Elim.Initialize.
4402
4403 2003-11-10  Vincent Celier  <celier@gnat.com>
4404
4405         * gprcmd.adb:
4406         (Gprcmd): Add new command "prefix" to get the prefix of the GNAT
4407         installation.
4408
4409         * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
4410
4411         * prj.adb: (Project_Empty): Add new boolean component Virtual
4412
4413         * prj.ads: (Virtual_Prefix): New constant string
4414         (Project_Data): New boolean component Virtual
4415
4416         * prj-nmsc.adb (Language_Independent_Check): Adjust error message when
4417         a library project is extended by a virtual extending project.
4418
4419         * prj-part.adb:
4420         Modifications throughout to implement extending-all project, including:
4421         (Virtual_Hash, Processed_Hash): New hash tables
4422         (Create_Virtual_Extending_Project): New procedure
4423         (Look_For_Virtual_Projects_For): New procedure
4424
4425         * prj-proc.adb:
4426         (Process): After checking the projects, if main project is an
4427         extending-all project, set the object directory of all virtual extending
4428         project to the object directory of the main project.
4429         Adjust error message when a virtual extending project has the same
4430         object directory as an project being extended.
4431         (Recursive_Process): If name starts with the virtual prefix, set Virtual
4432         to True in the project data.
4433
4434         * prj-tree.adb:
4435         (Default_Project_Node): Add new boolean component Extending_All
4436         (Is_Extending_All): New function
4437         (Set_Is_Extending_All): New procedure
4438
4439         * prj-tree.ads: (Is_Extending_All): New function
4440         (Set_Is_Extending_All): New procedure
4441         (Project_Node_Record): New boolean component Extending_All
4442
4443         * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
4444
4445         * vms_data.ads:
4446         Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
4447
4448         * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
4449         "gprcmd prefix" to define it.
4450
4451 2003-11-10  Thomas Quinot  <quinot@act-europe.fr>
4452
4453         * einfo.ads: Fix a typo and remove an extraneous word in comments.
4454
4455         * lib-load.adb:
4456         (Create_Dummy_Package_Unit): Set the scope of the entity for the
4457         created dummy package to Standard_Standard, not to itself, to
4458         defend other parts of the front-end against encoutering a cycle in
4459         the scope chain.
4460
4461         * sem_ch10.adb:
4462         (Analyze_With_Clause): When setting the entities for the successive
4463         N_Expanded_Names that constitute the name of a child unit, do not
4464         attempt to go further than Standard_Standard in the chain of scopes.
4465         This case arises from the placeholder units created by
4466         Create_Dummy_Package_Unit in the case of a with_clause for a
4467         nonexistent child unit.
4468
4469 2003-11-10  Ed Schonberg  <schonberg@gnat.com>
4470
4471         * exp_ch6.adb:
4472         (Expand_Thread_Body): Place subprogram on scope stack, so that new
4473         declarations are given the proper scope.
4474
4475         * sem_ch13.adb:
4476         (Check_Expr_Constants): Reject an expression that contains a constant
4477         created during expansion, and that appears after the object to which
4478         the address clause applies.
4479
4480         * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
4481         Analyze_Iteration_Scheme, to rewrite a loop parameter specification
4482         that uses 'Range of a function call with controlled components, so
4483         that the function result can be finalized before starting the loop.
4484
4485         * sem_ch8.adb:
4486         (Find_Selected_Component): Improve error message when prefix is
4487         an implicit dereference of an incomplete type.
4488
4489 2003-11-10  Robert Dewar  <dewar@gnat.com>
4490
4491         * opt.ads: New Print_Standard flag for -gnatS switch
4492
4493         * sem_ch13.adb: Remove some additional checks for unaligned arrays
4494
4495         * cstand.adb (Create_Standard): Print out package standard if -gnatS
4496         switch set
4497
4498         * debug.adb: Update doc for -gnatds to discuss relationship with new
4499         -gnatS flag
4500
4501         * sinfo.adb: Add new field Entity_Or_Associated_Node
4502
4503         * sinfo.ads: Add new field Entity_Or_Associated_Node
4504         Update documentation for Associated_Node and Entity fields to clarify
4505         relationship and usage.
4506
4507         * sprint.adb:
4508         (Write_Id): Properly process Associated_Node field in generic template
4509
4510         * switch-c.adb:
4511         Recognize new -gnatS switch for printing package Standard
4512         This replaces gnatpsta
4513
4514         * usage.adb:
4515         Add line for  new -gnatS switch for printing package Standard
4516         This replaces gnatpsta
4517
4518 2003-11-10  Andreas Jaeger  <aj@suse.de>
4519
4520         * 7sosprim.adb: tv_usec of struct_timeval and time_t are long
4521         integer.
4522
4523 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
4524
4525         * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
4526         by gnat1.
4527
4528 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
4529
4530         * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
4531         no longer needed.
4532
4533         * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
4534
4535         * sysdep.c: Add handling of cygwin.
4536
4537 2003-11-10  GNAT Script  <nobody@gnat.com>
4538
4539         * Make-lang.in: Makefile automatically updated
4540
4541 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
4542
4543         PR 12950
4544         * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
4545         functions. Used to handle dynamic prefix relocation, via set_std_prefix.
4546         Replace GNAT_ROOT by GCC_ROOT.
4547
4548         * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
4549
4550 2003-11-06  Zack Weinberg  <zack@codesourcery.com>
4551
4552         * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
4553         and update for changed meaning of GET_MODE_BITSIZE.
4554
4555 2003-11-04  Doug Rupp  <rupp@gnat.com>
4556
4557         * sysdep.c: Problem discovered during IA64 VMS port.
4558         [VMS] #include <unixio.h> to get proper prototypes.
4559
4560         * adaint.c:
4561         Issues discovered/problems fixed during IA64 VMS port.
4562         [VMS] #define _POSIX_EXIT for proper semantics.
4563         [VMS] #include <unixio.h> for proper prototypes.
4564         [VMS] (fork): #define IA64 version.
4565         (__gnat_os_exit): Remove unnecessary VMS specific code.
4566
4567 2003-11-04  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4568
4569         Part of PR ada/12806
4570
4571         * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
4572         tree, not integer.
4573
4574         * decl.c:
4575         (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
4576         not integer.
4577
4578         * targtyps.c, decl.c, misc.c,
4579         gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
4580         routines to work around change in FP sizing semantics in GCC.
4581
4582         * utils.c:
4583         (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
4584
4585         * gigi.h: (enumerate_modes): New function.
4586
4587         * Make-lang.in: (ada/misc.o): Add real.h.
4588
4589         * misc.c: (enumerate_modes): New function.
4590
4591 2003-11-04  Robert Dewar  <dewar@gnat.com>
4592
4593         * 3vtrasym.adb: Minor reformatting
4594         Use terminology encoded/decoded name, rather than C++ specific notion
4595         of mangling (this is the terminology used throughout GNAT).
4596
4597         * einfo.h: Regenerated
4598
4599         * einfo.ads, einfo.adb: Add new flag Is_Thread_Body
4600
4601         * exp_ch6.adb:
4602         (Expand_N_Subprogram_Body): Handle expansion of thread body procedure
4603
4604         * par-prag.adb: Add dummy entry for Thread_Body pragma
4605
4606         * rtsfind.ads:
4607         Add entries for System.Threads entities for thread body processing
4608
4609         * sem_attr.adb:
4610         (Analyze_Pragma, Access attributes): Check these are not applied to a
4611         thread body, since this is not permitted
4612
4613         * sem_prag.adb: Add processing for Thread_Body pragma.
4614         Minor comment fix.
4615
4616         * sem_res.adb:
4617         (Resolve_Call): Check for incorrect attempt to call a thread body
4618          procedure with a direct call.
4619
4620         * snames.ads, snames.adb: Add entry for Thread_Body pragma
4621         Add names associated with thread body expansion
4622
4623         * snames.h: Add entry for Thread_Body pragma
4624
4625         * s-thread.adb: Add entries for thread body processing
4626         These are dummy bodies so far
4627
4628         * s-thread.ads: Add documentation on thread body handling.
4629         Add entries for thread body processing.
4630
4631 2003-11-04  Javier Miranda  <miranda@gnat.com>
4632
4633         * sem_ch10.adb:
4634         (Build_Limited_Views): Return after posting an error in case of limited
4635         with_clause on subprograms, generics, instances or generic renamings
4636         (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
4637         on subprograms, generics, instances or generic renamings
4638
4639 2003-11-04  Arnaud Charlet  <charlet@act-europe.fr>
4640
4641         * raise.c (setup_to_install): Correct mistake in last revision; two
4642         arguments out of order.
4643
4644         * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
4645         gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
4646         notice, missed in previous change.
4647         Remove trailing blanks and other style errors introduced in previous
4648         change.
4649
4650 2003-11-04  Olivier Hainque  <hainque@act-europe.fr>
4651
4652         * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
4653         rid of the wrapper for a LJM type, ensuring we don't do that if the
4654         field is addressable.  This avoids potential low level type view
4655         mismatches later on, for instance in a by-reference argument passing
4656         process.
4657
4658 2003-11-04  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4659
4660         * decl.c (gnat_to_gnu_field): No longer check for BLKmode being
4661         aligned at byte boundary.
4662
4663 2003-11-04  Joel Brobecker  <brobecker@gnat.com>
4664
4665         * decl.c (components_to_record): Do not delete the empty variants from
4666         the end of the union type.
4667
4668 2003-11-04  Ed Schonberg  <schonberg@gnat.com>
4669
4670         * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
4671         operation for a derived type, an explicit declaration may use a local
4672         subtype of Boolean.
4673
4674 2003-11-04  Vincent Celier  <celier@gnat.com>
4675
4676         * make.adb (Gnatmake): Allow main sources on the command line with a
4677         library project when it is only for compilation (no binding or
4678         linking).
4679
4680 2003-11-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4681
4682         * Makefile.in: Remove many duplicate variables.
4683
4684 2003-11-03  Kelley Cook  <kcook@gcc.gnu.org>
4685
4686         * Make-lang.in (dvi): Move targets to $(docobjdir).
4687         (gnat_ug_vms.dvi): Simplify rule and adjust target.
4688         (gnat_ug_wnt.dvi): Likewise.
4689         (gnat_ug_unx.dvi): Likewise.
4690         (gnat_ug_vxw.dvi): Likewise.
4691         (gnat_rm.dvi): Likewise.
4692         (gnat-style.dvi): Likewise.
4693
4694 2003-10-31  Kelley Cook  <kcook@gcc.gnu.org>
4695
4696         * gigi.h: Missed commit from update for C90.
4697
4698 2003-10-31  Kelley Cook  <kcook@gcc.gnu.org>
4699
4700         * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
4701
4702 2003-10-31  Andreas Schwab  <schwab@suse.de>
4703
4704         * raise.c (get_action_description_for): Fix typo in last change.
4705
4706 2003-10-31  Nathanael Nerode  <neroden@gcc.gnu.org>
4707
4708         PR ada/12761
4709         * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
4710         T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
4711
4712 2003-10-30  Kelley Cook  <kcook@gcc.gnu.org>
4713
4714         * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
4715         ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
4716         gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
4717         sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
4718         trans.c, utils.c, utils2.c: Convert function prototypes to C90.
4719
4720 2003-10-30  Vasiliy Fofanov  <fofanov@act-europe.fr>
4721
4722         * 3vtrasym.adb:
4723         Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
4724         numbers when symbol name is too long.
4725
4726 2003-10-30  Ed Falis  <falis@gnat.com>
4727
4728         * g-signal.ads, g-signal.adb: New files
4729
4730         * impunit.adb: (Non_Imp_File_Names): Added "g-signal"
4731
4732         * Makefile.rtl: Introduce GNAT.Signals
4733
4734 2003-10-30  Robert Dewar  <dewar@gnat.com>
4735
4736         * freeze.adb: Minor reformatting
4737
4738         * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
4739
4740         * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
4741         par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
4742         New handling of Id_Check parameter to improve recognition of keywords
4743         used as identifiers.
4744         Update copyright notice to include 2003
4745
4746 2003-10-29  Robert Dewar  <dewar@gnat.com>
4747
4748         * 3vtrasym.adb, 5vtraent.ads, sprint.adb,
4749         sem_ch10.adb: Minor reformatting
4750
4751         * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
4752         (Expand_Assign_Record): Test right hand side for bit unaligned as well
4753
4754 2003-10-29  Vasiliy Fofanov  <fofanov@act-europe.fr>
4755
4756         * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
4757         Support for TBK$SYMBOLIZE-based symbolic traceback.
4758
4759 2003-10-29  Jose Ruiz  <ruiz@act-europe.fr>
4760
4761         * exp_disp.adb:
4762         Revert previous change, that did not work well when pragma No_Run_Time
4763         was used in conjunction with a run-time other than ZFP.
4764
4765 2003-10-29  Vincent Celier  <celier@gnat.com>
4766
4767         * make.adb:
4768         (Gnatmake): When there are no Ada mains in attribute Main, disable the
4769          bind and link steps only is switch -z is not used.
4770
4771 2003-10-29  Arnaud Charlet  <charlet@act-europe.fr>
4772
4773         * Makefile.generic: Remove duplicated setting of CC.
4774
4775         * Makefile.prolog: Set CC to gcc by default, to override make's
4776         default (cc).
4777
4778         * einfo.h: Regenerated.
4779
4780 2003-10-29  Ed Schonberg  <schonberg@gnat.com>
4781
4782         * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
4783         current body, after compiling subunit.
4784
4785         * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
4786         when in deleted code, because gigi needs properly ordered freeze
4787         actions to annotate types.
4788
4789         * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
4790         prevent the premature freezing of record type that contains
4791         subcomponents with a private type that does not yet have a completion.
4792
4793 2003-10-29  Javier Miranda  <miranda@gnat.com>
4794
4795         * sem_ch12.adb:
4796         (Analyze_Package_Instantiation): Check that instances can not be used in
4797         limited with_clauses.
4798
4799         * sem_ch8.adb:
4800         (Analyze_Package_Renaming): Check that limited withed packages cannot
4801         be renamed. Improve text on error messages related to limited
4802         with_clauses.
4803
4804         * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
4805
4806         * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
4807         Update copyright notice.
4808
4809         * sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
4810         (Install_Limited_Context_Clauses): New subprogram that isolates all the
4811         checks required for limited context_clauses and installs the limited
4812         view.
4813         (Install_Limited_Withed_Unit): Complete its documentation.
4814         (Analyze_Context): Check that limited with_clauses are only allowed in
4815         package specs.
4816         (Install_Context): Call Install_Limited_Context_Clauses after the
4817         parents have been installed.
4818         (Install_Limited_Withed_Unit): Add documentation. Mark the installed
4819         package as 'From_With_Type'; this mark indicates that the limited view
4820         is installed. Used to check bad usages of limited with_clauses.
4821         (Build_Limited_Views): Do not add shadow entities to the scope's list
4822         of entities. Do not add real entities to the Non_Limited_Views chain.
4823         Improve error notification.
4824         (Remove_Context_Clauses): Remove context clauses in two phases:
4825         limited views first and regular views later (to maintain the
4826         stack model).
4827         (Remove_Limited_With_Clause): If the package is analyzed then reinstall
4828         its visible entities.
4829
4830 2003-10-29  Thomas Quinot  <quinot@act-europe.fr>
4831
4832         * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
4833         with any type that Is_Fixed_Point_Type.
4834
4835         * sinfo.ads: Fix documentation for Associated_Node attribute.
4836
4837 2003-10-29  Sergey Rybin  <rybin@act-europe.fr>
4838
4839         * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
4840         both '-gnatc' and '-gnatt' are specified.
4841
4842         * atree.adb (Initialize): Add initialization for Node_Count (set to
4843         zero).
4844
4845 2003-10-29  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4846
4847         * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
4848         do not consider as Pure.
4849
4850         Part of implementation of function-at-a-time:
4851
4852         * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
4853         (tree_transform): Add new argument to build_component_ref.
4854         (tree_transform, case N_Assignment_Statement): Make and return an
4855         EXPR_STMT.
4856         (tree_transform): If result IS_STMT, set flags and return it.
4857         (gnat_expand_stmt, set_lineno_from_sloc): New functions.
4858
4859         * utils2.c (build_simple_component_ref, build_component_ref): Add new
4860         arg, NO_FOLD_P.
4861         (build_binary_op, case EQ_EXPR): Pass additional arg to it.
4862         (build_allocator): Likewise.
4863
4864         * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
4865         Add new arg to build_component_ref.
4866         (maybe_unconstrained_array, unchecked_convert): Likewise.
4867
4868         * ada-tree.def (EXPR_STMT): New code.
4869
4870         * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
4871
4872         * decl.c (gnat_to_gnu_entity, case object): Add extra arg to
4873         build_component_ref calls.
4874
4875         * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
4876
4877         * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
4878         (build_component_ref): Add new argument, NO_FOLD_P.
4879
4880 2003-10-27  Arnaud Charlet  <charlet@act-europe.fr>
4881
4882         * Makefile.generic: Add missing substitution on object_deps handling.
4883
4884         PR ada/5909:
4885         * Make-lang.in (check-ada): Enable ACATS test suite.
4886
4887 2003-10-27  Robert Dewar  <dewar@gnat.com>
4888
4889         * exp_ch3.adb:
4890         (Freeze_Array_Type): We do not need an initialization routine for types
4891         derived from String or Wide_String. They should be treated the same
4892         as String and Wide_String themselves. This caused problems with the
4893         use of Initialize_Scalars.
4894
4895         * exp_ch5.adb:
4896         (Expand_Assign_Record): Do component-wise assignment of non-byte aligned
4897         composites. This allows use of component clauses that are not byte
4898         aligned.
4899
4900         * sem_prag.adb:
4901         (Analyze_Pragma, case Pack): Generate warning and ignore pack if there
4902         is an attempt to pack an array of atomic objects.
4903
4904         * make.adb, prj-env.adb, prj-env.ads: Minor reformatting
4905
4906 2003-10-27  Pascal Obry  <obry@gnat.com>
4907
4908         * g-dirope.adb:
4909         (Basename): Check for drive letters in a pathname only on DOS based OS.
4910
4911 2003-10-27  Vincent Celier  <celier@gnat.com>
4912
4913         * make.adb:
4914         (Gnatmake): When unable to change dir to the object dir, display the
4915         content of the parent dir of the obj dir, to try to understand why this
4916         happens.
4917
4918 2003-10-27  GNAT Script  <nobody@gnat.com>
4919
4920         * Make-lang.in: Makefile automatically updated
4921
4922 2003-10-27  Ed Schonberg  <schonberg@gnat.com>
4923
4924         * sem_ch12.adb:
4925         (Inline_Instance_Body): Indicate that the save/restore of use_clauses
4926         should not be done in Save/Restore_Scope_Stack, because it is performed
4927         locally.
4928
4929         * sem_ch8.adb:
4930         (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
4931         whether use clauses should be removed/restored.
4932
4933         * sem_ch8.ads:
4934         (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
4935         whether use clauses should be removed/restored.
4936
4937 2003-10-26  Andreas Jaeger  <aj@suse.de>
4938
4939         * Makefile.in: Remove duplicated lines.
4940
4941 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
4942
4943         * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
4944         minimize the differences with ACT tree.
4945
4946         * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
4947         gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
4948         Gnatvsn.Gnat_Static_Version_String to reduce differences between
4949         ACT and FSF trees.
4950
4951 2003-10-24  Pascal Obry  <obry@gnat.com>
4952
4953         * adadecode.c (ostrcpy): New function.
4954         (__gnat_decode): Use ostrcpy of strcpy.
4955         (has_prefix): Set first parameter a const.
4956         (has_suffix): Set first parameter a const.
4957         Update copyright notice. Fix source name in header.
4958         Removes a trailing space.
4959         PR ada/12014.
4960
4961 2003-10-24  Jose Ruiz  <ruiz@act-europe.fr>
4962
4963         * exp_disp.adb:
4964         Remove the test against being in No_Run_Time_Mode before generating a
4965         call to Register_Tag. It is redundant with the test against the
4966         availability of the function Register_Tag.
4967
4968 2003-10-24  Vincent Celier  <celier@gnat.com>
4969
4970         * g-catiio.adb: (Month_Name): Correct spelling of February
4971
4972         * make.adb: (Mains): New package
4973         (Initialize): Call Mains.Delete
4974         (Gnatmake): Check that each main on the command line is a source of a
4975         project file and, if there are several mains, each of them is a source
4976         of the same project file.
4977         (Gnatmake): When a foreign language is specified in attribute Languages,
4978         no main is specified on the command line and attribute Mains is not
4979         empty, only build the Ada main. If there is no Ada main, just compile
4980         the Ada sources and their closure.
4981         (Gnatmake): If a main is specified on the command line with directory
4982         information, check that the source exists and, if it does, that the path
4983         is the actual path of a source of a project.
4984
4985         * prj-env.adb:
4986         (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
4987         Full_Path is True, return the full path instead of the simple file name.
4988         (Project_Of): New function
4989
4990         * prj-env.ads:
4991         (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
4992         defaulted to False.
4993         (Project_Of): New function
4994
4995 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
4996
4997         * Makefile.generic:
4998         Ensure objects of main project are always checked and rebuilt if needed.
4999         Set CC to gcc by default.
5000         Prepare new handling of link by creating a global archive (not activated
5001         yet).
5002
5003         * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
5004         stringt.h: Update copyright notice. Remove trailing blanks.
5005         Fix source name in header.
5006
5007 2003-10-24  Robert Dewar  <dewar@gnat.com>
5008
5009         * sem_ch12.adb: Minor reformatting
5010
5011         * sem_ch3.adb:
5012         Minor reformatting (including new function return style throughout)
5013
5014         * sem_ch3.ads:
5015         Minor reformatting (including new function return style throughout)
5016
5017 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
5018
5019         * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
5020         stringt.h: Update copyright notice. Remove trailing blanks.
5021         Fix source name in header.
5022
5023 2003-10-24  GNAT Script  <nobody@gnat.com>
5024
5025         * Make-lang.in: Makefile automatically updated
5026
5027 2003-10-23  Nathanael Nerode  <neroden@gcc.gnu.org>
5028
5029         * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
5030         stringt.h: Convert to ISO C90 declarations and definitions.
5031
5032 2003-10-23  Thomas Quinot  <quinot@act-europe.fr>
5033
5034         PR ada/11978:
5035         * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
5036         External_Tag attribute definition clauses.
5037
5038 2003-10-23  Ed Schonberg  <schonberg@gnat.com>
5039
5040         PR ada/7613:
5041         * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
5042         child unit, generate a fully qualified name to avoid spurious errors
5043         when the context contains renamings of different child units with
5044         the same simple name.
5045
5046         * exp_dbug.ads: Add documentation on name qualification for renamings
5047         of child units.
5048
5049 2003-10-23  Robert Dewar  <dewar@gnat.com>
5050
5051         * g-regpat.ads, g-regpat.adb: Minor reformatting
5052
5053 2003-10-23  Jose Ruiz  <ruiz@act-europe.fr>
5054
5055         * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
5056
5057 2003-10-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5058
5059         * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
5060         Machine call.
5061
5062         * urealp.h: (Machine): Update to proper definition.
5063
5064 2003-10-23  Arnaud Charlet  <charlet@act-europe.fr>
5065
5066         * init.c, adaint.c: Minor reformatting.
5067
5068 2003-10-23  Danny Smith  <dannysmith@users.sourceforge.net>
5069
5070         * adaint.c (w32_epoch_offset): Define static const at file level.
5071         (win32_filetime): Replace offset with w32_epoch_offset. Use NULL
5072         rather than t_create, t_access in call to GetFileTime. Use union
5073         to convert between FILETIME and  unsigned long long.
5074         (__gnat_file_time_name): Test for invalid file handle.
5075         (__gnat_set_filetime_name): Support win32 targets using
5076         w32api SetFileTime.
5077
5078 2003-10-22  Danny Smith  <dannysmith@users.sourceforge.net>
5079
5080         * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
5081
5082         * ctrl_c.c (__gnat_int_handler): Remove declaration.
5083
5084         * decl.c (creat_concat_name):  Const-ify prefix.
5085
5086         * adaint.c: Include ctype.h if __MINGW32__.
5087         (__gnat_readlink): Mark arguments as possibly unused.
5088         (__gnat_symlink): Likewise.
5089         (__gnat_is_symbolic_link): Likewise.
5090         (__gnat_portable_spawn): Likewise.  Cast last arg of spawnvp to match
5091         declaration
5092         (__gnat_file_time_name): Don't declare struct stat statbuf when
5093         not needed.
5094         (__gnat_is_absolute_path): Add parenthesis around condition of
5095         'if' statement to avoid warning.
5096         (__gnat_plist_init): Specify void as parameter.
5097         (plist_enter): Likewise.
5098         (plist_leave): Likewise.
5099         (remove_handle): Make static. Initialize prev.
5100
5101 2003-10-22  Arnaud Charlet  <charlet@act-europe.fr>
5102
5103         * Makefile.in: Disable build of gnatpsta. PR ada/10110.
5104         * cstreams.c (__gnat_full_name): Minor improvements and clean up
5105         of previous change.
5106
5107 2003-10-22  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5108
5109         * tracebak.c (MAX): Avoid redefinition warning.
5110
5111         * init.c [sgi] (__gnat_error_handler): Remove i, unused.
5112         Change msg to const char *.
5113         (__gnat_install_handler): Remove ss, unused.
5114         [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
5115         to const char *.
5116         * cstreams.c (__gnat_full_name): Declare p only when used.
5117         (__gnat_full_name) [sgi] Return buffer.
5118
5119 2003-10-22  Arnaud Charlet  <charlet@act-europe.fr>
5120
5121         * mingw32.h: New file.
5122         * gnat_wrapper.adb: New file.
5123
5124 2003-10-22  Jerome Roussel  <roussel@act-europe.fr>
5125
5126         * g-regpat.ads, g-regpat.adb (Match): new function, to know if a
5127         string match a pre compiled regular expression (the corresponding
5128         version of the function working on a raw regular expression)
5129         Fix typos in various comments
5130         Update copyright notice in spec
5131
5132 2003-10-21  Gary Dismukes  <dismukes@gnat.com>
5133
5134         * exp_ch3.adb:
5135         (Component_Needs_Simple_Initialization): Return False when the type is a
5136         packed bit array. Revise spec comments to document this case.
5137
5138         * exp_prag.adb:
5139         (Expand_Pragma_Import): Set any expression on the imported object to
5140         empty to avoid initializing imported objects (in particular this
5141         covers the case of zero-initialization of bit arrays).
5142         Update copyright notice.
5143
5144 2003-10-21  Ed Schonberg  <schonberg@gnat.com>
5145
5146         * sem_ch12.adb:
5147         (Load_Parent_Of_Generic): If parent is compilation unit, stop search,
5148         a subunit is missing.
5149         (Instantiate_Subprogram_Body): If body of function is missing, set type
5150         of return expression explicitly in dummy body, to prevent cascaded
5151         errors when a subunit is missing.
5152         Fixes PR 5677.
5153
5154         * sem_ch3.adb:
5155         (Access_Subprogram_Declaration): Verify that return type is valid.
5156         Fixes PR 8693.
5157
5158         * sem_elab.adb:
5159         (Check_Elab_Calls): Do not apply elaboration checks if the main unit is
5160         generic.
5161         Fixes PR 12318.
5162
5163         * sem_util.adb:
5164         (Corresponding_Discriminant): If the scope of the discriminant is a
5165         private type without discriminant, use its full view.
5166         Fixes PR 8247.
5167
5168 2003-10-21  Arnaud Charlet  <charlet@act-europe.fr>
5169
5170         * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
5171         3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
5172         3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
5173         55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
5174         56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
5175         59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
5176         5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
5177         5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
5178         5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
5179         5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
5180         5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
5181         5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
5182         5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
5183         5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
5184         7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
5185         a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
5186         a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
5187         a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
5188         bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
5189         erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
5190         err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
5191         g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
5192         g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
5193         g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
5194         g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
5195         g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
5196         g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
5197         gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
5198         g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
5199         g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
5200         i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
5201         prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
5202         prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
5203         s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
5204         s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
5205         s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
5206         s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
5207         s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
5208         s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
5209         s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
5210         s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
5211         socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
5212         s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
5213         s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
5214         s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
5215         styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
5216         s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
5217         tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
5218         vms_conv.ads, vms_conv.adb, vms_data.ads,
5219         vxaddr2line.adb: Files added. Merge with ACT tree.
5220
5221         * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
5222         5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
5223         5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
5224         5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
5225         g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
5226         s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
5227         s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
5228         s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
5229         s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
5230         s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
5231
5232         * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
5233         3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
5234         3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
5235         3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
5236         4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
5237         4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
5238         4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
5239         4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
5240         51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
5241         53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
5242         5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
5243         5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
5244         5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
5245         5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
5246         5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
5247         5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
5248         5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
5249         5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
5250         5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
5251         5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
5252         5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
5253         5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
5254         5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
5255         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
5256         5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
5257         5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
5258         5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
5259         5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
5260         5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
5261         5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
5262         5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
5263         5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
5264         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
5265         5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
5266         6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
5267         7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
5268         7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
5269         a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
5270         a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
5271         a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
5272         a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
5273         a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
5274         ali.adb, ali.ads, ali-util.adb, ali-util.ads,
5275         a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
5276         a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
5277         a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
5278         a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
5279         a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
5280         a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
5281         a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
5282         a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
5283         a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
5284         a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
5285         a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
5286         a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
5287         atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
5288         a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
5289         a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
5290         bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
5291         checks.adb, checks.ads, cio.c, comperr.adb,
5292         comperr.ads, csets.adb, cstand.adb, cstreams.c,
5293         debug_a.adb, debug_a.ads, debug.adb, decl.c,
5294         einfo.adb, einfo.ads, errout.adb, errout.ads,
5295         eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
5296         expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
5297         exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
5298         exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
5299         exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
5300         exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
5301         exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
5302         exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
5303         exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
5304         fe.h, fmap.adb, fmap.ads, fname.adb,
5305         fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
5306         freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
5307         g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
5308         g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
5309         g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
5310         g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
5311         g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
5312         g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
5313         g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
5314         g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
5315         g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
5316         g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
5317         g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
5318         g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
5319         gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
5320         gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
5321         gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
5322         gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
5323         gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
5324         g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
5325         g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
5326         g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
5327         g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
5328         g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
5329         g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
5330         g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
5331         g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
5332         i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
5333         i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
5334         inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
5335         itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
5336         layout.adb, lib.adb, lib.ads, lib-list.adb,
5337         lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
5338         lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
5339         link.c, live.adb, make.adb, make.ads,
5340         Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
5341         mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
5342         mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
5343         misc.c, mkdir.c, mlib.adb, mlib.ads,
5344         mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
5345         mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
5346         namet.adb, namet.ads, namet.h, nlists.ads,
5347         nlists.h, nmake.adt, opt.adb, opt.ads,
5348         osint.adb, osint.ads, osint-b.adb, osint-c.adb,
5349         par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
5350         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
5351         par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
5352         par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
5353         prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
5354         prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
5355         prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
5356         prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
5357         prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
5358         prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
5359         prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
5360         prj-util.adb, prj-util.ads, raise.c, raise.h,
5361         repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
5362         rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
5363         s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
5364         s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
5365         scans.ads, scn.adb, scn.ads, s-crc32.adb,
5366         s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
5367         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
5368         sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
5369         sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
5370         sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
5371         sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
5372         sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
5373         sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
5374         sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
5375         sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
5376         sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
5377         sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
5378         s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
5379         s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
5380         s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
5381         s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
5382         s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
5383         s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
5384         s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
5385         sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
5386         sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
5387         sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
5388         s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
5389         s-memory.adb, s-memory.ads, snames.adb, snames.ads,
5390         snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
5391         s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
5392         s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
5393         s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
5394         s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
5395         s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
5396         s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
5397         s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
5398         s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
5399         s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
5400         s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
5401         s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
5402         s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
5403         s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
5404         s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
5405         s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
5406         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
5407         stringt.adb, stringt.ads, stringt.h, style.ads,
5408         stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
5409         s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
5410         s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
5411         switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
5412         s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
5413         table.adb, table.ads, targparm.adb, targparm.ads,
5414         targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
5415         trans.c, tree_io.adb, treepr.adb, treeprs.adt,
5416         ttypes.ads, types.ads, types.h, uintp.adb,
5417         uintp.ads, uintp.h, uname.adb, urealp.adb,
5418         urealp.ads, urealp.h, usage.adb, utils2.c,
5419         utils.c, validsw.adb, validsw.ads, widechar.adb,
5420         xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
5421         xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
5422         einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
5423         gnatvsn.ads: Merge with ACT tree.
5424
5425         * gnatvsn.adb: Rewritten in a simpler and more efficient way.
5426
5427 2003-10-20  Mark Mitchell  <mark@codesourcery.com>
5428
5429         * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
5430         (gnat_ug_vmx.info): Likewise.
5431         (gnat_ug_vxw.info): Likewise.
5432         (gnat_ug_wnt.info): Likewise.
5433         (gnat_rm.info): Likewise.
5434         (gnat-style.info): Likewise.
5435
5436         * Make-lang.in (ada.install-info): Remove target.
5437         (info): New target.
5438         (install-info): Likewise.
5439         (gnat_ug_unx.info): Simplify rule.
5440         (gnat_ug_vmx.info): Likewise.
5441         (gnat_ug_vxw.info): Likewise.
5442         (gnat_ug_wnt.info): Likewise.
5443         (gnat_rm.info): Likewise.
5444         (gnat-style.info): Likewise.
5445
5446 2003-10-14  Nathanael Nerode  <neroden@gcc.gnu.org>
5447
5448         * Make-lang.in: Replace uses of $(target_alias) with
5449         $(target_noncanonical).
5450         * ada/Makefile.in: Remove unused mention of $(target_alias).
5451
5452 2003-10-06  Mark Mitchell  <mark@codesourcery.com>
5453
5454         * Make-lang.in (ada.info): Replace with ...
5455         (info): ... this.
5456         (ada.dvi): Replace with ...
5457         (dvi): ... this.
5458
5459 2003-09-29  Zack Weinberg  <zack@codesourcery.com>
5460
5461         * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
5462         initialize dconstp5 and dconstmp5.
5463
5464 2003-09-28  Richard Henderson  <rth@redhat.com>
5465
5466         * trans.c (tree_transform): Update call to expand_asm_operands.
5467
5468 2003-09-21  Richard Henderson  <rth@redhat.com>
5469
5470         * trans.c, utils.c: Revert.
5471
5472 2003-09-21  Richard Henderson  <rth@redhat.com>
5473
5474         * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
5475         change to const.
5476
5477 2003-09-04  Michael Matz  <matz@suse.de>
5478
5479         * misc.c: Include "target.h".
5480         * Make-lang.in (misc.o): Add dependency on target.h.
5481
5482 2003-09-03  DJ Delorie  <dj@redhat.com>
5483
5484         * misc.c (default_pass_by_ref): Convert to calls.return_in_memory
5485         hook.
5486
5487 2003-08-30  Zack Weinberg  <zack@codesourcery.com>
5488
5489         * Makefile.in: Update substitutions to match changes to
5490         configure.  Use include directives instead of @-insertions
5491         to read in host and target fragments.  Add a rule to
5492         regenerate ada/Makefile.
5493
5494 2003-07-18  Neil Booth  <neil@daikokuya.co.uk>
5495
5496         * lang-options.h: Remove.
5497         * lang.opt: Add help text.
5498
5499 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
5500
5501         * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
5502         calls.
5503
5504 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
5505
5506         * misc.c (gnat_handle_option): Don't handle filenames.
5507
5508 2003-07-04  H.J. Lu <hongjiu.lu@intel.com>
5509
5510         * Make-lang.in: Replace PWD with PWD_COMMAND.
5511         * Makefile.adalib: Likewise.
5512         * Makefile.in: Likewise.
5513
5514 2003-07-04  Matt Kraai  <kraai@alumni.cmu.edu>
5515
5516         * misc.c (gnat_argv): Revert last change.
5517         (gnat_handle_option, gnat_init_options): Copy arguments.
5518
5519 2003-07-03  Neil Booth  <neil@daikokuya.co.uk>
5520
5521         * misc.c (gnat_argv): Make const.
5522
5523 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
5524
5525         * misc.c (save_argc, save_argv): Keep non-static!
5526
5527 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
5528
5529         * misc.c (save_argc, save_argv): Make static.
5530         (gnat_init_options): New prototype.
5531         (gnat_init_options): Update.
5532
5533 2003-07-01  Matt Kraai  <kraai@alumni.cmu.edu>
5534
5535         * gnat_ug.texi: Remove unlikely characters from @vars.
5536         * gnat_ug_vms.texi: Regenerate.
5537
5538 2003-06-27  Nathan Sidwell  <nathan@codesourcery.com>
5539
5540         * misc.c (record_code_position): Adjust emit_note call.
5541
5542 2003-06-26  Neil Booth  <neil@daikokuya.co.uk>
5543
5544         * misc.c (gnat_handle_option): Don't check for missing arguments.
5545
5546 2003-06-20  Nathan Sidwell  <nathan@codesourcery.com>
5547
5548         * utils.c (end_subprog_body): Adjust expand_function_end call.
5549
5550 2003-06-16  Matt Kraai  <kraai@alumni.cmu.edu>
5551
5552         * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
5553         Bind_Main_Program.
5554
5555 2003-06-15  Neil Booth  <neil@daikokuya.co.uk>
5556
5557         * lang.opt: Declare Ada.
5558         * misc.c (gnat_init_options): Update.
5559
5560 2003-06-14  Nathan Sidwell  <nathan@codesourcery.com>
5561
5562         * utils.c (begin_subprog_body): Adjust init_function_start call.
5563
5564 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
5565
5566         * Make-lang.in: Update to use options.c and options.h.
5567         * misc.c: Include options.h not aoptions.h.
5568         (gnat_handle_option): Abort on unrecognized switch.
5569         (gnat_init_options): Request Ada switches.
5570
5571 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
5572
5573         * lang.opt: Add -Wall.
5574         * misc.c (gnat_handle_option): Handle it.
5575
5576 2003-06-12  Neil Booth  <neil@daikokuya.co.uk>
5577
5578         * misc.c (gnat_handle_option): Fix warnings.
5579
5580 2003-06-11  Matt Kraai  <kraai@alumni.cmu.edu>
5581
5582         * Make-lang.in (gnatbind): Remove $(LIBIBERTY).
5583
5584 2003-06-11  Neil Booth  <neil@daikokuya.co.uk>
5585
5586         * Make-lang.in: Update to handle command-line options.
5587         * lang.opt: New file.
5588         * misc.c: Include aoptions.h.
5589         (cl_options_count, cl_options): Remove.
5590         (gnat_handle_option): New.
5591         (gnat_decode_option): Remove.
5592         (LANG_HOOKS_DECODE_OPTION): Remove.
5593         (LANG_HOOKS_HANDLE_OPTION): Override.
5594
5595 2003-06-10  Nathanael Nerode  <neroden@gcc.gnu.org>
5596
5597         * init.c, misc.c, trans.c, utils.c: Remove dead code.
5598
5599 2003-06-09  Nathanael Nerode  <neroden@gcc.gnu.org>
5600
5601         * Makefile.in: Replace "host_canonical" with "host" for autoconf
5602         substitution.
5603
5604 2003-06-08  Neil Booth  <neil@daikokuya.co.uk>
5605
5606         * Make-lang.in: Update.
5607         * misc.c: Include opts.h. Define cl_options_count and cl_options.
5608
5609 2003-06-07  Neil Booth  <neil@daikokuya.co.uk>
5610
5611         * misc.c (gnat_init_options): Update.
5612
5613 2003-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
5614
5615         * Make-lang.in (ada/b_gnatb.o-warn): Remove.
5616         * bindgen.adb (Gen_Main_C): Mark ensure_reference with
5617         __attribute__ ((__unused__)).
5618
5619 2003-06-05  Jan Hubicka  <jh@suse.cz>
5620
5621         * Make-lang.in:  Add support for stageprofile and stagefeedback
5622
5623 2003-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
5624
5625         * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
5626         (Gen_Main_C, Gen_Output_File_C): Generate ISO C.
5627
5628 2003-06-04  Matt Kraai  <kraai@alumni.cmu.edu>
5629
5630         * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
5631         Remove non-VMS directive.
5632         (Switches for gnatlbr, Optimization Levels): Remove non-VMS
5633         alternatives.
5634         (Examples of gnatls Usage): Remove VMS alternative.
5635
5636 2003-06-04  Olivier Hainque  <hainque@act-europe.fr>
5637
5638         PR ada/9953:
5639         * 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
5640         and turn ZCX_By_Default back to False since the underlying support
5641         is not quite there yet.
5642
5643 2003-06-01  Andreas Jaeger  <aj@suse.de>
5644
5645         * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
5646         and ROUND_TYPE_SIZE_UNIT.
5647
5648 2003-05-22   Geert Bosch <bosch@gnat.com>
5649
5650         * gnat_rm.texi : Remove reference to Ada Core Technologies.
5651
5652 2003-05-03  Nathan Sidwell  <nathan@codesourcery.com>
5653
5654         * trans.c (tree_transform): Use location_t and input_location
5655         directly.
5656         (build_unit_elab): Likewise.
5657         * utils.c (create_label_decl): Likewise.
5658
5659 2003-05-01  Nathan Sidwell  <nathan@codesourcery.com>
5660
5661         * trans.c (tree_transform, build_unit_elab,
5662         set_lineno): Rename lineno to input_line.
5663         * utils.c (pushdecl, create_label_decl, begin_subprog_body,
5664         end_subprog_body): Likewise.
5665         * utils2.c (build_call_raise): Likewise.
5666
5667 2003-05-01  Laurent Guerby <guerby@acm.org>
5668
5669         PR ada/10546
5670         * 5iosinte.ads: Increase pthread_cond_t size to match recent
5671         LinuxThread and NPTL version, merge from ACT.
5672
5673 2003-04-28  Zack Weinberg  <zack@codesourcery.com>
5674
5675         * utils.c (convert): No need to clear TREE_CST_RTL.
5676
5677 2003-04-23   Geert Bosch <bosch@gnat.com>
5678
5679         * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
5680         1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
5681         3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
5682         3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
5683         3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
5684         4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
5685         4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
5686         4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
5687         4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
5688         4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
5689         4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
5690         4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
5691         52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
5692         5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
5693         5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
5694         5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
5695         5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
5696         5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
5697         5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
5698         5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
5699         5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
5700         5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
5701         5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
5702         5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
5703         5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
5704         5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
5705         5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
5706         5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
5707         5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
5708         5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
5709         5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
5710         5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
5711         5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
5712         5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
5713         5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
5714         5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
5715         5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
5716         5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
5717         5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
5718         5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
5719         5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
5720         5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
5721         5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
5722         5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
5723         6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
5724         7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
5725         7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
5726         9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
5727         a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
5728         a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
5729         a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
5730         a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
5731         a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
5732         a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
5733         a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
5734         a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
5735         a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
5736         a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
5737         a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
5738         a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
5739         a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
5740         a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
5741         a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
5742         a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
5743         a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
5744         a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
5745         a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
5746         a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
5747         a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
5748         a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
5749         a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
5750         a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
5751         a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
5752         a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
5753         a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
5754         a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
5755         a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
5756         a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
5757         a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
5758         a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
5759         a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
5760         a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
5761         a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
5762         a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
5763         a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
5764         a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
5765         a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
5766         a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
5767         a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
5768         a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
5769         a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
5770         a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
5771         a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
5772         a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
5773         a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
5774         a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
5775         a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
5776         a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
5777         a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
5778         a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
5779         a-wttest.ads, ada-tree.h, ada.ads, ada.h,
5780         adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
5781         ali.adb, ali.ads, alloc.ads, argv.c,
5782         atree.adb, atree.ads, atree.h, aux-io.c,
5783         back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
5784         binde.adb, binde.ads, binderr.adb, binderr.ads,
5785         bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
5786         butil.adb, butil.ads, cal.c, calendar.ads,
5787         casing.adb, casing.ads, ceinfo.adb, checks.adb,
5788         checks.ads, cio.c, comperr.adb, comperr.ads,
5789         config-lang.in, csets.adb, csets.ads, csinfo.adb,
5790         cstand.adb, cstand.ads, cuintp.c, debug.adb,
5791         debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
5792         dec-io.ads, dec.ads, deftarg.c, directio.ads,
5793         einfo.adb, einfo.ads, elists.adb, elists.ads,
5794         elists.h, errno.c, errout.adb, errout.ads,
5795         eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
5796         exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
5797         exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
5798         exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
5799         exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
5800         exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
5801         exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
5802         exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
5803         exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
5804         exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
5805         exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
5806         exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
5807         exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
5808         exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
5809         exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
5810         fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
5811         fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
5812         freeze.adb, freeze.ads, frontend.adb, frontend.ads,
5813         g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
5814         g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
5815         g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
5816         g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
5817         g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
5818         g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
5819         g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
5820         g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
5821         g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
5822         g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
5823         g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
5824         g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
5825         g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
5826         g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
5827         g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
5828         g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
5829         g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
5830         g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
5831         g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
5832         g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
5833         g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
5834         g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
5835         get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
5836         gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
5837         gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
5838         gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
5839         gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
5840         gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
5841         gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
5842         gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
5843         hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
5844         i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
5845         i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
5846         i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
5847         i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
5848         i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
5849         i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
5850         inline.adb, inline.ads, interfac.ads, ioexcept.ads,
5851         itypes.adb, itypes.ads, krunch.adb, krunch.ads,
5852         layout.adb, layout.ads, lib-list.adb, lib-load.adb,
5853         lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
5854         lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
5855         lib.adb, lib.ads, live.adb, live.ads,
5856         machcode.ads, make.adb, make.ads, makeusg.adb,
5857         makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
5858         mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
5859         memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
5860         mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
5861         mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
5862         mlib.ads, namet.adb, namet.ads, nlists.adb,
5863         nlists.ads, opt.adb, opt.ads, osint-b.adb,
5864         osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
5865         osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
5866         osint.ads, output.adb, output.ads, par-ch10.adb,
5867         par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
5868         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
5869         par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
5870         par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
5871         par-tchk.adb, par-util.adb, par.adb, par.ads,
5872         prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
5873         prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
5874         prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
5875         prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
5876         prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
5877         prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
5878         prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
5879         prj.adb, prj.ads, repinfo.adb, repinfo.ads,
5880         restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
5881         rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
5882         s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
5883         s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
5884         s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
5885         s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
5886         s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
5887         s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
5888         s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
5889         s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
5890         s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
5891         s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
5892         s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
5893         s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
5894         s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
5895         s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
5896         s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
5897         s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
5898         s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
5899         s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
5900         s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
5901         s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
5902         s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
5903         s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
5904         s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
5905         s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
5906         s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
5907         s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
5908         s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
5909         s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
5910         s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
5911         s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
5912         s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
5913         s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
5914         s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
5915         s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
5916         s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
5917         s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
5918         s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
5919         s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
5920         s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
5921         s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
5922         s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
5923         s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
5924         s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
5925         s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
5926         s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
5927         s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
5928         s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
5929         s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
5930         s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
5931         s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
5932         s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
5933         s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
5934         s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
5935         s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
5936         s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
5937         s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
5938         s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
5939         s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
5940         s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
5941         s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
5942         s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
5943         s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
5944         s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
5945         s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
5946         s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
5947         s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
5948         s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
5949         s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
5950         s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
5951         s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
5952         s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
5953         s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
5954         s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
5955         s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
5956         s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
5957         s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
5958         s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
5959         s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
5960         s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
5961         s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
5962         s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
5963         s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
5964         s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
5965         s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
5966         s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
5967         s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
5968         s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
5969         s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
5970         s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
5971         s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
5972         s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
5973         s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
5974         s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
5975         scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
5976         sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
5977         sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
5978         sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
5979         sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
5980         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
5981         sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
5982         sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
5983         sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
5984         sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
5985         sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
5986         sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
5987         sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
5988         sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
5989         sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
5990         sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
5991         sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
5992         sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
5993         sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
5994         sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
5995         sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
5996         snames.ads, sprint.adb, sprint.ads, stand.adb,
5997         stand.ads, stringt.adb, stringt.ads, style.adb,
5998         style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
5999         switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
6000         switch-m.ads, switch.adb, switch.ads, system.ads,
6001         table.adb, table.ads, targparm.adb, targparm.ads,
6002         tbuild.adb, tbuild.ads, text_io.ads, trans.c,
6003         tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
6004         tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
6005         ttypef.ads, ttypes.ads, types.adb, types.ads,
6006         uintp.adb, uintp.ads, uname.adb, uname.ads,
6007         unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
6008         usage.adb, usage.ads, validsw.adb, validsw.ads,
6009         widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
6010         xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
6011         xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
6012         formatting and other trivial changes from ACT.
6013
6014 2003-04-12  Zack Weinberg  <zack@codesourcery.com>
6015
6016         * gigi.h, utils2.c (build_constructor):
6017         Rename gnat_build_constructor. Use build_constructor.
6018         * decl.c (gnat_to_gnu_entity)
6019         * trans.c (tree_transform, pos_to_constructor, extract_values)
6020         * ada/utils.c (build_template, convert_to_fat_pointer, convert)
6021         (unchecked_convert)
6022         * ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
6023         (fill_vms_descriptor):
6024         Update to match.
6025
6026 2003-04-06  Zack Weinberg  <zack@codesourcery.com>
6027
6028         * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
6029         * misc.c (gnat_tree_size): New function.
6030         (LANG_HOOKS_TREE_SIZE): Override.
6031
6032 2003-04-03  Jason Merrill  <jason@redhat.com>
6033
6034         * misc.c (gnat_adjust_rli): #if 0.
6035
6036 2003-03-31   Geert Bosch <bosch@gnat.com>
6037
6038         PR ada/10020
6039         * link.c : Fix misspelled "const" keyword
6040
6041 2003-03-23  Mark Mitchell  <mark@codesourcery.com>
6042
6043         PR c++/7086
6044         * utils2.c: Adjust calls to put_var_into_stack.
6045
6046 2003-03-12  Nathanael Nerode  <neroden@gcc.gnu.org>
6047
6048         * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
6049
6050 2003-03-08  Neil Booth  <neil@daikokuya.co.uk>
6051
6052         * misc.c (gnat_init): Update for new prototype.
6053
6054 2003-03-05  Olivier Hainque  <hainque@gnat.com>
6055
6056         ada/9961
6057         * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
6058         warning, and fix return type for the IN_RTS && !SJLJ case.
6059
6060 2003-03-04  Tom Tromey  <tromey@redhat.com>
6061
6062         * Make-lang.in (ada.tags): New target.
6063
6064 2003-03-04  Olivier Hainque  <hainque@act-europe.fr>
6065
6066         ada/9911
6067         * a-except.adb (Unwind_RaiseException): Import a GNAT specific
6068         wrapper, which name remains constant whatever underlying GCC
6069         scheme.
6070
6071         * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
6072         the stable interface needed for a-except.
6073
6074 2003-03-02  Andreas Jaeger  <aj@suse.de>
6075
6076         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6077         gnat_ug_wnt.texi: Regenerate.
6078
6079 2003-03-02  Laurent Guerby <guerby@acm.org>
6080
6081         * Makefile.in (install-gnatlib): Match previous change there
6082         so it works.
6083
6084 2003-02-28  Andreas Schwab  <schwab@suse.de>
6085
6086         * Make-lang.in (install-gnatlib): Change to ada directory before
6087         running make instead of using ada/Makefile directly.
6088
6089 2003-02-18  Ben Elliston  <bje@redhat.com>
6090
6091         Part of fix for PR ada/9406
6092         * gnat_ug.texi (Binder output file): Grammar fix.
6093
6094 2003-02-18  Ben Elliston  <bje@redhat.com>
6095
6096         PR other/7350
6097         * 5qtaprop.adb (Sleep): Fix typo in comment.
6098
6099 2003-02-04  Joseph S. Myers  <jsm@polyomino.org.uk>
6100
6101         * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
6102         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6103         gnat_ug_wnt.texi: Regenerate.
6104
6105 2003-02-03  Christian Cornelssen <ccorn@cs.tu-berlin.de>
6106
6107         * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
6108         be created if necessary.
6109         (ada.install-common): Let $(DESTDIR)$(bindir) be created
6110         if necessary.  Remove erroneous and redundant gnatchop
6111         installation commands.  Test for gnatdll before attempting
6112         to install it.
6113         (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
6114         and gnatdll from all plausible locations.
6115
6116 2003-02-01  Richard Sandiford  <rsandifo@redhat.com>
6117
6118         * utils2.c (build_unary_op): Don't check flag_volatile.
6119         * gnat_ug.texi: Remove -fvolatile from example.
6120         * gnat_ug_vxw.texi: Likewise.
6121
6122 2003-01-29  Laurent Guerby <guerby@acm.org>
6123
6124         PR ada/8344
6125         * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
6126         * Makefile.in: match previous change.
6127         * Make-lang.in: match previous change.
6128
6129 2003-01-29      Joel Sherrill <joel@OARcorp.com>
6130
6131         * 5rosinte.ads: Add SIGXCPU.
6132         * 5rtpopsp.adb: New file.
6133         * Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
6134         * Makefile.in: Recognize more RTEMS targets and add the RTEMS
6135         specific file 5rtpopsp.adb.
6136         * adaint.h: Add include of <stdio.h> when target is RTEMS.  This
6137         is likely needed for all newlib targets.
6138         * init.c: Add RTEMS specific version of __gnat_initialize().
6139
6140 2003-01-28  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6141
6142         * adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
6143
6144 2003-01-27  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6145
6146         * init.c (__gnat_error_handler): Make msg const.
6147
6148         * gmem.c (convert_addresses): Move declaration ...
6149         * adaint.h: ... here.
6150         * adaint.c (convert_addresses): Adapt addrs type to match
6151         prototype.
6152
6153         * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
6154
6155 2003-01-24  Andreas Schwab  <schwab@suse.de>
6156
6157         * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
6158         size_t to avoid warning.
6159
6160 2003-01-21  Zack Weinberg  <zack@codesourcery.com>
6161
6162         * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
6163
6164 2003-01-09  Geoffrey Keating  <geoffk@apple.com>
6165
6166         * gnat_rm.texi: Remove RCS version number.
6167
6168         * ada-tree.h (union lang_tree_node): Add chain_next option.
6169
6170 2003-01-09  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
6171
6172         * Make-lang.in (ada.install-info, ada.install-common,
6173         ada.uninstall): Prepend $(DESTDIR) to the destination
6174         directory in all (un)installation commands.
6175         * Makefile.in (install-gnatlib, install-rts): Ditto.
6176
6177 2002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
6178
6179         * gnat_rm.texi, gnat_ug.texi: Use @copying.
6180         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6181         gnat_ug_wnt.texi: Regenerate.
6182
6183 2002-12-23  Joseph S. Myers  <jsm@polyomino.org.uk>
6184
6185         * gnat_rm.texi: Include gcc-common.texi.  Use GCC version number
6186         only.
6187         * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
6188         $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
6189         $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
6190         ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
6191         ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
6192         $(srcdir)/doc/include/gcc-common.texi.
6193
6194 2002-12-15   Geert Bosch <bosch@gnat.com>
6195
6196         * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
6197
6198 2002-12-14   Geert Bosch <bosch@gnat.com>
6199
6200         * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
6201         case of a body created for a Renaming_As_Body, on which
6202         conformance checks are not performed. Fixes PR ada/5690.
6203
6204 2002-11-30  Zack Weinberg  <zack@codesourcery.com>
6205
6206         * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
6207         utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
6208         not already included.
6209         * Make-lang.in: Update dependencies.
6210
6211 2002-11-18  Nathanael Nerode  <neroden@gcc.gnu.org>
6212         * adaint.c (__gnat_tmp_name): Better, but good enough for now,
6213         solution to buffer overflow bug on GNU/Linux.
6214
6215 2002-11-14  Nathanael Nerode  <neroden@gcc.gnu.org>
6216         Closes PR ada/5856 and PR ada/6919 !
6217         * bindgen.adb: Remove all references to Public_Version.
6218         * comperr.adb: Remove all references to Public_Version and
6219         GNATPRO_Version; correct bug reporting instructions.
6220         * comperr.ads: Change to match bug box.
6221         * gnatvsn.ads: Remove all references to Public version and
6222         GNATPRO version.
6223
6224 2002-11-13  Nathanael Nerode  <neroden@gcc.gnu.org>
6225         PR ada/6919
6226         * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
6227         GNU/Linux.
6228
6229         PR ada/6558
6230         * config-lang.in: Remove diff_excludes.
6231
6232 2002-11-05  Graham Stott  <graham.stott@btinternet.com>
6233         PR ada/8358
6234         * trans.c (gnu_pending_elaboration_lists): New GC root.
6235         (build_unit_elab): Use..
6236
6237 2002-10-30   Geert Bosch <bosch@gnat.com>
6238         PR ada/6558
6239         * misc.c : Include optabs.h
6240
6241         * Make-lang.in (misc.o): Add dependency on optabs.h
6242
6243 2002-10-29   Geert Bosch <bosch@gnat.com>
6244         PR ada/6558
6245         * Make-lang.in (gnatbind): Depend on CONFIG_H
6246
6247 2002-10-29  Geert bosch  <bosch@gnat.com>
6248         PR ada/6558
6249         * misc.c: Unrevert misc.c (1.13)
6250
6251 2002-10-28  Nathanael Nerode  <neroden@gcc.gnu.org>
6252
6253         * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
6254         maintainership comments.
6255
6256 2002-09-25  Nathanael Nerode  <neroden@gcc.gnu.org>
6257         PR ada/5904
6258         * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
6259         5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
6260         5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
6261         7staprop.adb: Correct statements in comments about
6262         maintainership of GNAT.
6263
6264         PR ada/5904
6265         * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
6266         gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
6267         osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
6268         osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
6269         s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
6270         s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
6271         sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
6272         switch-c.ads switch-m.adb switch-m.ads: Correct statements in
6273         comments about maintainership of GNAT.
6274
6275         PR ada/6919 (forward port of patch for PR ada/5904)
6276         * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
6277         4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
6278         4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
6279         4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
6280         4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
6281         4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
6282         4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
6283         52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
6284         5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
6285         5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
6286         5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
6287         5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
6288         5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
6289         5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
6290         5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
6291         5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
6292         5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
6293         5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
6294         5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
6295         5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
6296         5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
6297         5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
6298         5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
6299         5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
6300         5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
6301         5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
6302         5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
6303         5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
6304         7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
6305         a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
6306         a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
6307         a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
6308         a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
6309         a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
6310         a-except.adb a-except.ads a-excpol.adb a-exctra.adb
6311         a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
6312         a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
6313         a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
6314         a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
6315         a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
6316         a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
6317         a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
6318         a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
6319         a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
6320         a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
6321         a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
6322         a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
6323         a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
6324         a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
6325         a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
6326         a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
6327         a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
6328         a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
6329         a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
6330         a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
6331         a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
6332         a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
6333         a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
6334         a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
6335         a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
6336         a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
6337         a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
6338         a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
6339         a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
6340         a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
6341         a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
6342         a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
6343         a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
6344         adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
6345         alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
6346         back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
6347         binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
6348         bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
6349         ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
6350         csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
6351         cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
6352         debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
6353         einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
6354         errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
6355         exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
6356         exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
6357         exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
6358         exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
6359         exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
6360         exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
6361         exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
6362         exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
6363         exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
6364         exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
6365         exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
6366         exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
6367         exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
6368         final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
6369         fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
6370         freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
6371         g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
6372         g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
6373         gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
6374         gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
6375         gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
6376         gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
6377         gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
6378         gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
6379         i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
6380         i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
6381         i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
6382         i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
6383         impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
6384         itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
6385         lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
6386         lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
6387         lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
6388         lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
6389         makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
6390         namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
6391         nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
6392         osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
6393         par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
6394         par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
6395         par-endh.adb par-labl.adb par-load.adb par-prag.adb
6396         par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
6397         prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
6398         prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
6399         prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
6400         prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
6401         prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
6402         prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
6403         repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
6404         rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
6405         s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
6406         s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
6407         s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
6408         s-direio.adb s-direio.ads s-except.ads s-exctab.adb
6409         s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
6410         s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
6411         s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
6412         s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
6413         s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
6414         s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
6415         s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
6416         s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
6417         s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
6418         s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
6419         s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
6420         s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
6421         s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
6422         s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
6423         s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
6424         s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
6425         s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
6426         s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
6427         s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
6428         s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
6429         s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
6430         s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
6431         s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
6432         s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
6433         s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
6434         s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
6435         s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
6436         s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
6437         s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
6438         s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
6439         s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
6440         s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
6441         s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
6442         s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
6443         s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
6444         s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
6445         s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
6446         s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
6447         s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
6448         s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
6449         s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
6450         s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
6451         s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
6452         s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
6453         s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
6454         s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
6455         s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
6456         s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
6457         s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
6458         s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
6459         s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
6460         s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
6461         s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
6462         s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
6463         s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
6464         s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
6465         s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
6466         s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
6467         s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
6468         s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
6469         s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
6470         s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
6471         s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
6472         s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
6473         s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
6474         s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
6475         s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
6476         s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
6477         s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
6478         s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
6479         s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
6480         s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
6481         s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
6482         s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
6483         s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
6484         s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
6485         s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
6486         s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
6487         scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
6488         sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
6489         sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
6490         sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
6491         sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
6492         sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
6493         sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
6494         sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
6495         sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
6496         sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
6497         sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
6498         sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
6499         sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
6500         sem_type.adb sem_type.ads sem_util.adb sem_util.ads
6501         sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
6502         sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
6503         sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
6504         sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
6505         snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
6506         stringt.ads stringt.h style.adb style.ads stylesw.adb
6507         stylesw.ads switch.adb switch.ads sysdep.c system.ads
6508         table.adb table.ads targparm.adb targparm.ads targtyps.c
6509         tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
6510         tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
6511         treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
6512         types.adb types.ads types.h uintp.adb uintp.ads uintp.h
6513         uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
6514         usage.ads utils.c utils2.c validsw.adb validsw.ads
6515         widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
6516         xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
6517         xtreeprs.adb: Correct statements in comments about maintainership
6518         of GNAT.
6519
6520 2002-09-23  Zack Weinberg  <zack@codesourcery.com>
6521
6522         * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
6523         * Makefile.in (TOOLS_LIBS): Add ../../version.o.
6524         * gnatvsn.ads: Gnat_Version_String is now a function.
6525         * gnatvsn.adb: New file.  When asked for Gnat_Version_String,
6526         copy the C version_string into a String and return it.
6527         * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
6528         gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
6529         Remove pragma Ident (Gnat_Version_String).  If this was the
6530         sole use of package Gnatvsn, remove the with statement too.
6531         * gnat1drv.adb: Tweak -gnatv output.
6532
6533 2002-09-17  Richard Henderson  <rth@redhat.com>
6534
6535         * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
6536         * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
6537         * config/mips/mips.md (fixuns_truncdfsi2): Likewise.
6538         (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
6539         * config/m68k/m68k.c (floating_exact_log2): Use real_exponent
6540         and real_2expN instead of a loop.
6541         * doc/tm.texi (REAL_VALUE_LDEXP): Remove.
6542         (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
6543
6544 2002-08-25  Andre Leis <a.leis@gmx.net>
6545             David Billinghurst (David.Billinghurst@riotinto.com>
6546
6547         * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
6548
6549 2002-08-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6550
6551         * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
6552         Remove $(CONFIG_H) dependency.
6553
6554 2002-08-08  Nathan Sidwell  <nathan@codesourcery.com>
6555
6556         * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
6557
6558 2002-07-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6559
6560         * adadecode.c (ada_demangle): Use xstrdup in lieu of
6561         xmalloc/strcpy.
6562         * misc.c (gnat_decode_option): Likewise.
6563
6564 2002-07-15  Florian Weimer  <fw@deneb.enyo.de>
6565
6566         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
6567         function approach did not work well because of a side effect (the
6568         function call could reallocate the table which was being indexed
6569         using its result). Fixes ada/4851. [RESURRECTED]
6570
6571 2002-07-01  Roger Sayle  <roger@eyesopen.com>
6572
6573         * ada/utils.c (builtin_function): Accept an additional parameter.
6574
6575 2002-06-28  Andreas Jaeger  <aj@suse.de>
6576
6577         PR ada/7144
6578         * Makefile.in: Fix typo in comment, patch by Adrian Knoth
6579         <adi@thur.de>.
6580
6581 2002-06-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6582
6583         * Makefile.in (SHELL): Set to @SHELL@.
6584
6585 2002-06-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6586
6587         * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
6588         array size calculation.
6589
6590 2002-06-04  Andreas Jaeger  <aj@suse.de>
6591
6592         * Make-lang.in (gnatbind): Readd rule that has been lost in last
6593         patch.
6594
6595 2002-06-03  Geoffrey Keating  <geoffk@redhat.com>
6596
6597         Merge from pch-branch:
6598
6599         * config-lang.in (gtfiles): Add ada-tree.h.
6600         * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
6601         (SET_TYPE_MODULUS): New.
6602         (SET_TYPE_INDEX): New.
6603         (SET_TYPE_DIGITS_VALUE): New.
6604         (SET_TYPE_RM_SIZE): New.
6605         (SET_TYPE_UNCONSTRAINED_ARRAY): New.
6606         (SET_TYPE_ADA_SIZE): New.
6607         (SET_TYPE_ACTUAL_BOUNDS): New.
6608         (SET_DECL_CONST_CORRESPONDING_VAR): New.
6609         (SET_DECL_ORIGINAL_FIELD): New.
6610         (TREE_LOOP_ID): Correct typo.
6611         * decl.c: Use new macros.
6612         * utils.c: Include debug.h, use new macros.
6613         * utils2.c: Use new macros.
6614
6615         * ada-tree.h: Update all macros for new tree description.
6616         (struct tree_loop_id): New.
6617         (union lang_tree_node): New.
6618         (struct lang_decl): New.
6619         (struct lang_type): New.
6620         * misc.c (gnat_mark_tree): Delete.
6621         (LANG_HOOKS_MARK_TREE): Delete.
6622         * trans.c (tree_transform): No longer any need to cast
6623         for TREE_LOOP_ID.
6624
6625         * utils.c (struct language_function): New dummy structure.
6626
6627         * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
6628         (misc.o): Likewise.
6629         (utils.o): Likewise; also gtype-ada.h.
6630         * Make-lang.in (gnat1): Add dependency on s-gtype.
6631         (gnatbind): Add dependency on $(CONFIG_H).
6632         * utils.c: Correct last #include.
6633         (stuct e_stack): Remove unnecessary 'static'.
6634         (mark_e_stack): Remove unused prototype.
6635
6636         * scn-nlit.adb: Remove whitespace after version number to
6637         keep lines under 80 chars.
6638         * snames.adb: Likewise.
6639         * treepr.ads: Likewise.
6640
6641         * Makefile.in (decl.o): Include gt-ada-<filename>.h.
6642         (misc.o): Likewise.
6643         (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
6644         * config-lang.in (gtfiles): New.
6645         * decl.c: Use gengtype for roots.
6646         * gigi.h: Use gengtype for roots.
6647         * trans.c: Use gengtype for roots.
6648         * utils.c: Use gengtype for roots, marking.  Include gtype-ada.h.
6649
6650 2002-06-02  Gabriel Dos Reis  <gdr@codesourcery.com>
6651
6652         * misc.c (gnat_init): Adjust setting of internal_error_function.
6653
6654 2002-06-01  Joseph S. Myers  <jsm28@cam.ac.uk>
6655
6656         * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
6657         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
6658         gnat_ug_wnt.texi: Regenerate.
6659
6660 2002-05-31  Florian Weimer  <fw@deneb.enyo.de>
6661
6662         * 5ntaprop.adb (with System.OS_Primitives): Remove.
6663
6664         * cstreams.c (max_path_len): Move from here ...
6665         * adaint.c (__gnat_max_path_len): ... to here.
6666         * adaint.c (__gnat_max_path_len): Declare.
6667         * g-dirope.adb (Max_Path): Adjust.
6668         * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
6669         * i-cstrea.ads (max_path_len): Adjust.
6670         * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
6671         * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
6672
6673         * Makefile.in, Make-lang.in: Documentation is now built in
6674         Make-lang.in.  Store Info and generated Texinfo files in the
6675         source directory.
6676         * gnat_ug.texi: Remove CVS keywords, correct version number.
6677         Set file name correctly.
6678
6679         * gnat_ug_*.texi: Add.
6680         * .cvsignore: Ignore generated Texinfo files.
6681
6682 2002-05-30  Zack Weinberg  <zack@codesourcery.com>
6683
6684         * ada.h: Add MI guard macro.
6685         (SUBTYPE): Define constants with an anonymous enum, not static
6686         const variables.
6687         (IN): Cast constants to appropriate type before use.
6688
6689 2002-05-26  Joseph S. Myers  <jsm28@cam.ac.uk>
6690
6691         * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
6692         (experimental)".
6693
6694 2002-05-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6695
6696         * Make-lang.in (CP, ECHO): Copy from Makefile.in.
6697         (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
6698         (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
6699         (ALL_ADA_CFLAGS): Likewise.
6700         (ADA_INCLUDES): Likewise.
6701         Adapt for new working dir.
6702         (GNATBIND): Use Makefile.in version.
6703         (.SUFFIXES): Copy from Makefile.in.
6704         (ada-warn): Define.
6705         (.adb.o, .ads.o): Copy from Makefile.in.
6706         Added $(OUTPUT_OPTION).
6707         (GNAT1_C_OBJS): Moved from Makefile.in.
6708         Prefix with ada subdir.
6709         (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
6710         (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
6711         Adapt for new working dir.
6712         (EXTRA_GNATBIND_OBJS): Likewise.
6713         (ADA_BACKEND): Moved from Makefile.in.
6714         Renamed to avoid conflict with global BACKEND.
6715         Use that one.
6716         (TARGET_ADA_SRCS): Moved from Makefile.in.
6717         (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
6718         Use ADA_BACKEND.
6719         (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
6720         (ada_extra_files): Moved from Makefile.in.
6721         Prefix with ada subdir.
6722         (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
6723         (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
6724         (ada/nmake.ads): Likewise.
6725         (update-sources): Moved from Makefile.in.
6726         Prefix with ada subdir.
6727         (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
6728         (ADA_TREE_H): Likewise.
6729         (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
6730         (ada/memtrack.o): Likewise.
6731         (ada/adadecode.o): Likewise.
6732         Update dependencies.
6733         (ada/adaint.o): New.
6734         (ada/argv.o): Moved from Makefile.in.
6735         Prefix with ada subdir.
6736         Update dependencies.
6737         (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
6738         (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
6739         (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
6740         Prefix with ada subdir.
6741         (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
6742         (GNAT DEPENDENCIES): Regenerate.
6743         * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
6744         toplevel Makefile.in.
6745         (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
6746         (TARGET_ADA_SRCS): Removed.
6747         (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
6748         (GNATBIND_OBJS): Likewise.
6749         (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
6750         (BACKEND): Removed.
6751         (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
6752         (TREE_H): Likewise.
6753         (ada_extra_files): Likewise.
6754         (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
6755         (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
6756         (update-sources): Likewise.
6757         (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
6758         (ADA_TREE_H): Likewise.
6759         (adadecoce.o): Likewise.
6760         (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
6761         (GNAT DEPENDENCIES): Likewise.
6762
6763 2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6764
6765         * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
6766         * Makefile.in: Likewise.
6767
6768 2002-05-14  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
6769
6770         * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
6771         Restore $(CONFIG_H) and prefix.o dependencies.
6772         (ada.stage[1-4]): Depend on stage?-start.
6773
6774         * Makefile.in (b_gnatb.c): Depend on interfac.o.
6775
6776 2002-05-02  Jim Wilson  <wilson@redhat.com>
6777
6778         * utils.c (finish_record_type): Change record_size to record_type.
6779
6780 2001-05-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
6781
6782         * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
6783         (ALL_ADA_CFLAGS): Define.  Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
6784         ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
6785
6786 2002-04-25  Neil Booth  <neil@daikokuya.demon.co.uk>
6787
6788         * misc.c (gnat_parse_file): Update.
6789
6790 2002-04-24  Neil Booth  <neil@daikokuya.demon.co.uk>
6791
6792         * misc.c (gnat_init): Don't set lang_attribute_common.
6793
6794 2002-04-21  Joseph S. Myers  <jsm28@cam.ac.uk>
6795
6796         * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
6797
6798 2002-04-21  Florian Weimer  <fw@deneb.enyo.de>
6799
6800         * gnat_ug.texi: New file.
6801
6802         * gnat_rm.texi: Do not include texiplus.texi.  Include fdl.texi
6803         instead of gfdl.texi
6804
6805         * xgnatug.adb, ug_words: New files.
6806
6807         * Makefile.in (doc, dvi): New targets.  Build gnat_ug_*,
6808         gnat_rm and gnat-style manuals.
6809
6810 2002-04-18  Neil Booth  <neil@daikokuya.demon.co.uk>
6811
6812         * gigi.h (incomplete_type_error): Remove.
6813         * utils.c (incomplete_type_error): Remove.
6814
6815 2002-04-16  Mark Mitchell  <mark@codesourcery.com>
6816
6817         * trans.c (tree_transform): Add has_scope argument to
6818         expand_start_stmt_expr.
6819
6820 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
6821
6822         * gigi.h (truthvalue_conversion): Rename.
6823         * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
6824         * trans.c (tree_transform): Update.
6825         * utils2.c (truthvalue_conversion): Rename, update.
6826         (build_binary_op, build_unary_op): Update.
6827
6828 2002-04-04  Laurent Guerby  <guerby@acm.org>
6829
6830         * make.adb: Implement -margs, remove restriction about file name placement.
6831         * makeusg.adb: Documentation update.
6832         * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
6833         * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
6834
6835 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
6836
6837         * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
6838         (builtin_function): Similarly.
6839
6840 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
6841
6842         * decl.c (gnat_to_gnu_entity): Update.
6843         * gigi.h (mark_addressable): Rename.
6844         * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
6845         * trans.c (tree_transform): Update.
6846         * utils.c (create_var_decl): Update.
6847         * util2.c (build_binary_op, build_unary_op,
6848         fill_vms_descriptor): Update.
6849         (mark_addressable): Rename, update.
6850
6851 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
6852
6853         * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
6854         Rename.
6855         * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
6856         LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
6857         * trans.c (tree_transform, convert_with_check): Update.
6858         * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
6859         Rename.
6860
6861 2002-03-31  Neil Booth  <neil@daikokuya.demon.co.uk>
6862
6863         * gigi.h (finish_incomplete_decl): Rename.
6864         * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
6865         * utils.c (gnat_init_decl_processing): Don't set hook.
6866         (finish_incomplete_decl): Rename.
6867
6868 2002-03-29  Andreas Schwab  <schwab@suse.de>
6869
6870         * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
6871         directory.
6872
6873 2001-03-28  Robert Dewar <dewar@gnat.com>
6874
6875         * checks.ads:
6876         (Remove_Checks): New procedure
6877
6878         * checks.adb:
6879         (Remove_Checks): New procedure
6880
6881         * exp_util.adb:
6882         Use new Duplicate_Subexpr functions
6883         (Duplicate_Subexpr_No_Checks): New procedure
6884         (Duplicate_Subexpr_No_Checks_Orig): New procedure
6885         (Duplicate_Subexpr): Restore original form (checks duplicated)
6886         (Duplicate_Subexpr): Call Remove_Checks
6887
6888         * exp_util.ads:
6889         (Duplicate_Subexpr_No_Checks): New procedure
6890         (Duplicate_Subexpr_No_Checks_Orig): New procedure
6891         Add 2002 to copyright notice
6892
6893         * sem_util.adb: Use new Duplicate_Subexpr functions
6894
6895         * sem_eval.adb:
6896         (Eval_Indexed_Component): This is the place to call
6897         Constant_Array_Ref and to replace the value. We simply merge
6898         the code of this function in here, since it is now no longer
6899         used elsewhere. This fixes the problem of the back end not
6900         realizing we were clever enough to see that this was
6901         constant.
6902         (Expr_Val): Remove call to Constant_Array_Ref
6903         (Expr_Rep_Val): Remove call to Constant_Array_Ref
6904         Minor reformatting
6905         (Constant_Array_Ref): Deal with string literals (patch
6906         suggested by Zack Weinberg on the gcc list)
6907
6908 2001-03-28  Ed Schonberg <schonber@gnat.com>
6909
6910         * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
6911         Duplicate_Subexpr_Move_Checks.
6912
6913         * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
6914         Duplicate_Subexpr_Move_Checks.
6915
6916         * sem_eval.adb: (Constant_Array_Ref): Verify that constant
6917         value of array exists before retrieving it (it may a private
6918         protected component in a function).
6919
6920 2002-03-28   Geert Bosch <bosch@gnat.com>
6921
6922         * prj-pp.adb : New file.
6923
6924         * prj-pp.ads : New file.
6925
6926 2002-03-28  Andreas Jaeger  <aj@suse.de>
6927
6928         * Makefile.in (stamp-sdefault): Fix path for Makefile.
6929
6930 2002-03-28  Neil Booth  <neil@daikokuya.demon.co.uk>
6931
6932         * misc.c (gnat_expand_expr): Move prototype.
6933
6934 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
6935
6936         * misc.c (insert_default_attributes): Remove.
6937
6938 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
6939
6940         * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
6941         (gnat_init): Don't set hook.
6942         (gnat_expand_expr): Fix prototype.
6943
6944 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
6945
6946         * misc.c (ggc_p): Remove.
6947
6948 2002-03-27  Geert Bosch  <bosch@gnat.com>
6949
6950         * prj-makr.ads, prj-makr.adb : New files.
6951
6952 2002-03-26  Neil Booth  <neil@daikokuya.demon.co.uk>
6953
6954         * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
6955         (lang_mark_tree): Make static, rename.
6956
6957 2002-03-25  Neil Booth  <neil@daikokuya.demon.co.uk>
6958
6959         * misc.c (maybe_build_cleanup): Remove.
6960
6961 2002-03-24  Neil Booth  <neil@daikokuya.demon.co.uk>
6962
6963         * gigi.h (yyparse): Remove.
6964
6965 2002-03-23  Florian Weimer  <fw@deneb.enyo.de>
6966
6967         * gnat_rm.texi: Sync with ACT version.
6968           (From Ben Brosgol <brosgol@gnat.com>)
6969
6970 2002-03-20  Neil Booth  <neil@daikokuya.demon.co.uk>
6971
6972         * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
6973         (gnat_init): Remove old hook.
6974
6975 2002-03-17  Neil Booth  <neil@daikokuya.demon.co.uk>
6976
6977         * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
6978         (yyparse): Rename gnat_parse_file.
6979
6980 2002-03-14  Geoffrey Keating  <geoffk@redhat.com>
6981
6982         Delete all lines containing "$Revision:".
6983         * xeinfo.adb: Don't look for revision numbers.
6984         * xnmake.adb: Likewise.
6985         * xsinfo.adb: Likewise.
6986         * xsnames.adb: Likewise.
6987         * xtreeprs.adb: Likewise.
6988
6989 2002-03-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
6990
6991         * misc.c (gnat_tree_code_type, gnat_tree_code_length,
6992         gnat_tree_code_name): Delete.
6993         (tree_code_type, tree_code_length, tree_code_name): Define.
6994         (gnat_init): Don't try to copy into the various tree_code
6995         arrays.
6996
6997 2002-03-11  Richard Henderson  <rth@redhat.com>
6998
6999         * Makefile.in (.NOTPARALLEL): Add fake tag.
7000
7001 2002-03-07  Geert Bosch  <bosch@gnat.com>
7002
7003         * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
7004         s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
7005         switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
7006         switch-m.adb, switch-m.ads : New files.
7007
7008 2002-03-07  Geert Bosch  <bosch@gnat.com>
7009
7010         * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
7011         4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
7012         4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
7013         4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
7014         5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
7015         5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
7016         5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
7017         5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
7018         5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
7019         5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
7020         5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
7021         5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
7022         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
7023         5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
7024         5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
7025         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
7026         5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
7027         5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
7028         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
7029         5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
7030         7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
7031         Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
7032         a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
7033         a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
7034         a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
7035         a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
7036         a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
7037         a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
7038         a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
7039         adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
7040         atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
7041         bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
7042         csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
7043         einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
7044         eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
7045         exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
7046         exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
7047         exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
7048         exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
7049         exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
7050         expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
7051         freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
7052         g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
7053         g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
7054         g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
7055         g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
7056         g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
7057         g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
7058         gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
7059         gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
7060         gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
7061         i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
7062         impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
7063         lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
7064         lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
7065         memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
7066         mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
7067         nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
7068         output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
7069         par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
7070         prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
7071         prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
7072         prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
7073         rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
7074         s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
7075         s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
7076         s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
7077         s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
7078         s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
7079         s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
7080         s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
7081         s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
7082         s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
7083         s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
7084         s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
7085         s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
7086         s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
7087         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
7088         s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
7089         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
7090         sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
7091         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
7092         sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
7093         sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
7094         sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
7095         sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
7096         sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
7097         sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
7098         sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
7099         snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
7100         stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
7101         table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
7102         tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
7103         treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
7104         types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
7105         utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
7106         xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
7107
7108         * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
7109         g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
7110         mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
7111         osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
7112
7113         * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
7114         5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
7115
7116         * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
7117         to mdll-fil.ad[bs] and mdll-util.ad[bs]
7118
7119         * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
7120         from mdllfile.ad[bs] and mdlltool.ad[bs]
7121
7122 2002-03-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7123
7124         * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
7125         lieu of explicit sizeof/sizeof.
7126
7127 2002-02-28  Neil Booth  <neil@daikokuya.demon.co.uk>
7128
7129         * misc.c (copy_lang_decl): Remove.
7130
7131 2002-02-27  Zack Weinberg  <zack@codesourcery.com>
7132
7133         * misc.c: Delete traditional-mode-related code copied from the
7134         C front end but not used, or used only to permit the compiler
7135         to link.
7136
7137 2002-02-07  Richard Henderson  <rth@redhat.com>
7138
7139         * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
7140         * adaint.h (__gnat_to_gm_time): Update prototype.
7141
7142 2002-01-30  Richard Henderson  <rth@redhat.com>
7143
7144         * trans.c (tree_transform) [N_Loop_Statement]: Use
7145         expand_exit_loop_top_cond.
7146
7147 2001-12-23  Richard Henderson  <rth@redhat.com>
7148
7149         * utils.c (end_subprog_body): Push GC context around
7150         rest_of_compilation for nested functions.
7151
7152 2001-12-23  Richard Henderson  <rth@redhat.com>
7153
7154         * 5nosinte.ads: Get definition of "int" from Interfaces.C.
7155
7156 2001-12-23  Florian Weimer  <fw@deneb.enyo.de>
7157
7158         * gnat-style.texi (Declarations and Types): Remove ancient style
7159         rule which was mandated by code generation issues.
7160
7161         * gnat-style.texi (header): Add @dircategory, @direntry.
7162         (title page): Remove date.
7163         (general) Add @./@: where approriate, and two spaces after the
7164         full stop at the end of a sentence.  Use @samp markup when
7165         referring concrete lexical entities (keywords, attribute names
7166         etc.), and @syntax for ARM grammar elements. Use @r for English
7167         text in comments.  Use @emph for emphasis.  Change "if-statements"
7168         etc. to "if statements" (without @samp). Break long lines.  Make
7169         casing of section names consistent.
7170         (Identifiers): Use @samp markup for variable names.
7171         (Comments): Use @samp markup for comment characters. Line-end
7172         comments may follow any Ada code, not just statements.  Fix
7173         misspelling of "Integer" as "integer".
7174         (Loop statements): Do not use variable name "I", use "J".
7175         (Subprogram Declarations): Document alignment.
7176         (Subprogram Bodies, Block statements): Document empty line before
7177         "begin".
7178
7179 2001-12-22  Florian Weimer  <fw@deneb.enyo.de>
7180
7181         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
7182         function approach did not work well because of a side effect (the
7183         function call could reallocate the table which was being indexed
7184         using its result). Fixes ada/4851.
7185
7186 2001-12-19  Robert Dewar <dewar@gnat.com>
7187
7188         * bindgen.adb: Minor reformatting
7189
7190         * cstand.adb: Minor reformatting
7191
7192         * fmap.adb: Minor reformatting
7193         Change name from Add for Add_To_File_Map (Add is much too generic)
7194         Change Path_Name_Of to Mapped_Path_Name
7195         Change File_Name_Of to Mapped_File_Name
7196         Fix copyright dates in header
7197
7198         * fmap.ads:
7199         Change name from Add for Add_To_File_Map (Add is much too generic)
7200         Change Path_Name_Of to Mapped_Path_Name
7201         Change File_Name_Of to Mapped_File_Name
7202         Fix copyright dates in header
7203
7204         * fname-uf.adb: Minor reformatting.  New names of stuff in Fmap.
7205         Add use clause for Fmap.
7206
7207         * make.adb: Minor reformatting
7208
7209         * osint.adb: Minor reformatting.  Change of names in Fmap.
7210         Add use clause for Fmap.
7211
7212         * prj-env.adb: Minor reformatting
7213
7214         * prj-env.ads: Minor reformatting
7215
7216         * switch.adb: Minor reformatting.  Do proper raise of Bad_Switch if
7217         error found (there were odd exceptions to this general rule in
7218         -gnatec/-gnatem processing)
7219
7220 2001-12-19  Olivier Hainque <hainque@gnat.com>
7221
7222         * raise.c (__gnat_eh_personality): Exception handling personality
7223         routine for Ada.  Still in rough state, inspired from the C++ version
7224         and still containing a bunch of debugging artifacts.
7225         (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
7226         inspired from the C++ library.
7227
7228         * raise.c (eh_personality): Add comments. Part of work for the GCC 3
7229         exception handling integration.
7230
7231 2001-12-19  Arnaud Charlet <charlet@gnat.com>
7232
7233         * Makefile.in: Remove use of 5smastop.adb which is obsolete.
7234         (HIE_SOURCES): Add s-secsta.ad{s,b}.
7235         (HIE_OBJS): Add s-fat*.o
7236         (RAVEN_SOURCES): Remove files that are no longer required. Add
7237         interrupt handling files.
7238         (RAVEN_MOD): Removed, no longer needed.
7239
7240 2001-12-19  Robert Dewar <dewar@gnat.com>
7241
7242         * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
7243         Add 2001 to copyright date
7244
7245         * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
7246         need to force universal inlining for these cases.
7247
7248 2001-12-19  Arnaud Charlet <charlet@gnat.com>
7249
7250         * s-taprob.adb: Minor clean ups so that this unit can be used in
7251         Ravenscar HI.
7252
7253         * exp_ch7.adb: Allow use of secondary stack in HI mode.
7254         Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
7255
7256 2001-12-19  Vincent Celier <celier@gnat.com>
7257
7258         * prj-tree.ads (Project_Node_Record): Add comments for components
7259         Pkg_Id and Case_Insensitive.
7260
7261 2001-12-19  Pascal Obry <obry@gnat.com>
7262
7263         * g-socket.adb: Minor reformatting. Found while reading code.
7264
7265 2001-12-19  Robert Dewar <dewar@gnat.com>
7266
7267         * prj-tree.ads: Minor reformatting
7268
7269 2001-12-20  Joseph S. Myers  <jsm28@cam.ac.uk>
7270
7271         * config-lang.in (diff_excludes): Remove.
7272
7273 2001-12-17  Ed Schonberg <schonber@gnat.com>
7274
7275         * sem_res.adb (Resolve_Selected_Component): do not generate a
7276         discriminant check if the selected component is a component of
7277         the argument of an initialization procedure.
7278
7279         * trans.c (tree_transform, case of arithmetic operators): If result
7280         type is private, the gnu_type is the base type of the full view,
7281         given that the full view itself may be a subtype.
7282
7283 2001-12-17  Robert Dewar <dewar@gnat.com>
7284
7285         * sem_res.adb: Minor reformatting
7286
7287         * trans.c (tree_transform, case N_Real_Literal): Add missing third
7288         parameter in call to Machine (unknown horrible effects from this
7289         omission).
7290
7291         * urealp.h: Add definition of Round_Even for call to Machine
7292         Add third parameter for Machine
7293
7294 2001-12-17  Ed Schonberg <schonber@gnat.com>
7295
7296         * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
7297         predefined units in No_Run_Time mode.
7298
7299 2001-12-17  Richard Kenner <kenner@gnat.com>
7300
7301         * misc.c (insn-codes.h): Now include.
7302
7303 2001-12-17  Olivier Hainque <hainque@gnat.com>
7304
7305         * a-except.adb: Preparation work for future integration of the GCC 3
7306         exception handling mechanism
7307         (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
7308         to factorize previous code sequences and make them externally callable,
7309         e.g. for the Ada personality routine when the GCC 3 mechanism is used.
7310         (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
7311         Use the new notification routines.
7312
7313 2001-12-17  Emmanuel Briot <briot@gnat.com>
7314
7315         * prj-tree.ads (First_Choice_Of): Document the when others case
7316
7317 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7318
7319         * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
7320         HI-E mode, in order to support Ravenscar profile properly.
7321
7322         * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
7323         mode on 32 bits targets.
7324
7325 2001-12-17  Vincent Celier <celier@gnat.com>
7326
7327         * fmap.adb: Initial version.
7328
7329         * fmap.ads: Initial version.
7330
7331         * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
7332         If search is successfully done, add to mapping.
7333
7334         * frontend.adb: Initialize the mapping if a -gnatem switch was used.
7335
7336         * make.adb:
7337         (Gnatmake): Add new local variable Mapping_File_Name.
7338          Create mapping file when using project file(s).
7339          Delete mapping file before exiting.
7340
7341         * opt.ads (Mapping_File_Name): New variable
7342
7343         * osint.adb (Find_File): Use path name found in mapping, if any.
7344
7345         * prj-env.adb (Create_Mapping_File): New procedure
7346
7347         * prj-env.ads (Create_Mapping_File): New procedure.
7348
7349         * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
7350         (Mapping_File)
7351
7352         * usage.adb: Add entry for new switch -gnatem.
7353
7354         * Makefile.in: Add dependencies for fmap.o.
7355
7356 2001-12-17  Ed Schonberg <schonber@gnat.com>
7357
7358         * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
7359         is a package instantiation rewritten as a package body.
7360         (Install_Withed_Unit): Undo previous change, now redundant.
7361
7362 2001-12-17  Gary Dismukes <dismukes@gnat.com>
7363
7364         * layout.adb:
7365         (Compute_Length): Move conversion to Unsigned to callers.
7366         (Get_Max_Size): Convert Len expression to Unsigned after calls to
7367         Compute_Length and Determine_Range.
7368         (Layout_Array_Type): Convert Len expression to Unsigned after calls to
7369         Compute_Length and Determine_Range.
7370         Above changes fix problem with length computation for supernull arrays
7371         where Max (Len, 0) wasn't getting applied due to the Unsigned
7372         conversion used by Compute_Length.
7373
7374 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7375
7376         * rtsfind.ads:
7377         (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
7378          System.Secondary_Stack.
7379         (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
7380          in HI-E mode.
7381         Remove unused entity RE_Exception_Data.
7382
7383         * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
7384
7385         * rident.ads (No_Secondary_Stack): New restriction.
7386
7387 2001-12-17  Joel Brobecker <brobecke@gnat.com>
7388
7389         * gnat_rm.texi: Fix minor typos. Found while reading the section
7390         regarding "Bit_Order Clauses" that was sent to a customer.
7391         Very interesting documentation!
7392
7393 2001-12-17  Robert Dewar <dewar@gnat.com>
7394
7395         * sem_case.adb (Choice_Image): Avoid creating improper character
7396         literal names by using the routine Set_Character_Literal_Name. This
7397         fixes bombs in certain error message cases.
7398
7399 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7400
7401         * a-reatim.adb: Minor reformatting.
7402
7403 2001-12-17  Ed Schonberg <schonber@gnat.com>
7404
7405         * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
7406         case where the formal is an extension of another formal in the current
7407         unit or in a parent generic unit.
7408
7409 2001-12-17  Arnaud Charlet <charlet@gnat.com>
7410
7411         * s-tposen.adb: Update comments.  Minor reformatting.
7412         Minor code clean up.
7413
7414         * s-tarest.adb: Update comments.  Minor code reorganization.
7415
7416 2001-12-17  Gary Dismukes <dismukes@gnat.com>
7417
7418         * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
7419         when Java_VM.
7420
7421 2001-12-17  Robert Dewar <dewar@gnat.com>
7422
7423         * exp_attr.adb: Minor reformatting
7424
7425 2001-12-17  Ed Schonberg <schonber@gnat.com>
7426
7427         * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
7428         derivations nested within a child unit: verify that the parent
7429         type is declared in an outer scope.
7430
7431 2001-12-17  Robert Dewar <dewar@gnat.com>
7432
7433         * sem_ch12.adb: Minor reformatting
7434
7435 2001-12-17  Ed Schonberg <schonber@gnat.com>
7436
7437         * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
7438         warning if current unit is a predefined one, from which bodies may
7439         have been deleted.
7440
7441 2001-12-17  Robert Dewar <dewar@gnat.com>
7442
7443         * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
7444         Fix header format. Add 2001 to copyright date.
7445
7446         * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
7447         which caused CE during compilation if checks were enabled.
7448
7449 2001-12-17  Vincent Celier <celier@gnat.com>
7450
7451         * make.adb:
7452         (Switches_Of): New function
7453         (Test_If_Relative_Path): New procedure
7454         (Add_Switches): Use new function Switches_Of
7455         (Collect_Arguments_And_Compile): Use new function Switches_Of.
7456         When using a project file, test if there are any relative
7457         search path. Fail if there are any.
7458         (Gnatmake): Only add switches for the primary directory when not using
7459         a project file. When using a project file, change directory to the
7460         object directory of the main project file. When using a project file,
7461         test if there are any relative search path. Fail if there are any.
7462         When using a project file, fail if specified executable is relative
7463         path with directory information, and prepend executable, if not
7464         specified as an absolute path, with the exec directory.  Make sure
7465         that only one -o switch is transmitted to the linker.
7466
7467         * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
7468
7469         * prj-nmsc.adb:
7470         (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
7471         when using a non standard naming scheme.
7472         (Check_Ada_Naming_Scheme): Make sure that error messages
7473         do not raise exceptions.
7474         (Is_Illegal_Append): Return True if there is no dot in the suffix.
7475         (Language_Independent_Check): Check the exec directory.
7476
7477         * prj.adb (Project_Empty): Add new component Exec_Directory
7478
7479         * prj.ads:
7480         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
7481         (Project_Data): Add component Exec_Directory
7482
7483         * snames.adb: Updated to match snames.ads revision 1.215
7484
7485         * snames.ads: Added Exec_Dir
7486
7487 2001-12-17  Robert Dewar <dewar@gnat.com>
7488
7489         * make.adb: Minor reformatting
7490
7491         * prj-nmsc.adb: Minor reformatting
7492
7493         * snames.adb: Updated to match snames.ads
7494
7495         * snames.ads: Alphebetize entries for project file
7496
7497 2001-12-17  Ed Schonberg <schonber@gnat.com>
7498
7499         * trans.c (process_freeze_entity): Do nothing if the entity is a
7500         subprogram that was already elaborated.
7501
7502 2001-12-17  Richard Kenner <kenner@gnat.com>
7503
7504         * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
7505         and Esize if object is referenced via pointer.
7506
7507 2001-12-17  Ed Schonberg <schonber@gnat.com>
7508
7509         * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
7510         is discrete before analyzing choices.
7511
7512 2001-12-17  Joel Brobecker <brobecke@gnat.com>
7513
7514         * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
7515         containing the name of the Ada Main Program. This string is mainly
7516         intended for the debugger.
7517         (Gen_Output_File_C): Do the equivalent change when generating a C file.
7518
7519 2001-12-17  Robert Dewar <dewar@gnat.com>
7520
7521         * ali.adb: Set new Dummy_Entry field in dependency entry
7522
7523         * ali.ads: Add Dummy_Entry field to source dependency table
7524
7525         * bcheck.adb (Check_Consistency): Ignore dummy D lines
7526
7527         * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
7528
7529         * lib-writ.ads: Document dummy D lines for missing files.
7530
7531         * types.ads: (Dummy_Time_Stamp): New value for non-existant files
7532
7533 2001-12-17  Robert Dewar <dewar@gnat.com>
7534
7535         * ali.adb: Type reference does not reset current file.
7536
7537         * ali.adb: Recognize and scan renaming reference
7538
7539         * ali.ads: Add spec for storing renaming references.
7540
7541         * lib-xref.ads: Add documentation for handling of renaming references
7542
7543         * lib-xref.adb: Implement output of renaming reference.
7544
7545         * checks.adb:
7546         (Determine_Range): Document local variables
7547         (Determine_Range): Make sure Hbound is initialized. It looks as though
7548          there could be a real problem here with an uninitialized reference
7549          to Hbound, but no actual example of failure has been found.
7550
7551 2001-12-17  Laurent Pautet <pautet@gnat.com>
7552
7553         * g-socket.ads:
7554         Fix comment of Shutdown_Socket and Close_Socket. These functions
7555         should not fail silently because if they are called twice, this
7556         probably means that there is a race condition in the user program.
7557         Anyway, this behaviour is consistent with the rest of this unit.
7558         When an error occurs, an exception is raised with the error message
7559         as exception message.
7560
7561 2001-12-17  Robert Dewar <dewar@gnat.com>
7562
7563         * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
7564         that it happens before modification of Sloc values for -gnatD.
7565
7566         * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
7567         so that it happens before modification of Sloc values for -gnatD.
7568
7569         * switch.adb: Minor reformatting
7570
7571 2001-12-15  Richard Henderson  <rth@redhat.com>
7572
7573         * sem_ch7.adb: Wrap comment.
7574
7575 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
7576
7577         * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
7578         5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
7579         5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
7580         5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
7581         5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
7582         7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
7583         a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
7584         a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
7585         cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
7586         exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
7587         exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
7588         g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
7589         gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
7590         make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
7591         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
7592         repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
7593         s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
7594         s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
7595         s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
7596         s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
7597         sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
7598         sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
7599         sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
7600         sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
7601         spelling errors.
7602
7603 2001-12-14  Vincent Celier <celier@gnat.com>
7604
7605         * osint.adb(Create_Debug_File): When an object file is specified,
7606         put the .dg file in the same directory as the object file.
7607
7608 2001-12-14  Robert Dewar <dewar@gnat.com>
7609
7610         * osint.adb: Minor reformatting
7611
7612         * lib-xref.adb (Output_Instantiation): New procedure to generate
7613         instantiation references.
7614
7615         * lib-xref.ads: Add documentation of handling of generic references.
7616
7617         * ali.adb (Read_Instantiation_Ref): New procedure to read
7618         instantiation references
7619
7620         * ali.ads: Add spec for storing instantiation references
7621
7622         * bindusg.adb: Minor reformatting
7623
7624         * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
7625
7626         * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
7627
7628         * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
7629
7630         * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
7631
7632         * csets.ads:
7633         Fix header format
7634         Add 2001 to copyright date
7635         Add entry for Latin-5 (Cyrillic ISO-8859-5)
7636
7637 2001-12-14  Matt Gingell <gingell@gnat.com>
7638
7639         * adaint.c: mktemp is a macro on Lynx and can not be used as an
7640         expression.
7641
7642 2001-12-14  Richard Kenner <kenner@gnat.com>
7643
7644         * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
7645         if operand is CONSTRUCTOR.
7646
7647 2001-12-14  Ed Schonberg <schonber@gnat.com>
7648
7649         * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
7650         before emiting check on right-hand side, so that exception information
7651         is correct.
7652
7653 2001-12-14  Richard Kenner <kenner@gnat.com>
7654
7655         * utils.c (create_var_decl): Throw away initializing expression
7656         if just annotating types and non-constant.
7657
7658 2001-12-14  Vincent Celier <celier@gnat.com>
7659
7660         * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
7661         Default_Ada_...
7662
7663         * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
7664         Remove functions.
7665         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
7666
7667         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
7668         Remove functions.
7669         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
7670
7671 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
7672
7673         * ChangeLog: Remove piece of diff output.
7674
7675 2001-12-14  Geert Bosch <bosch@gnat.com>
7676
7677         * config-lang.in: Update copyright notice
7678
7679         * layout.adb: Remove commented out code.
7680
7681         * mdllfile.ads: Update copyright notice. Fix header format.
7682
7683         * sem_case.ads: Likewise.
7684
7685         * sem_ch3.adb: Minor reformatting.
7686
7687 2001-12-12  Geert Bosch <bosch@gnat.com>
7688
7689         * freeze.ads: Update copyright date.
7690
7691         * g-comlin.ads: Minor reformatting.
7692
7693         * gnat-style.texi: Fix typo.
7694
7695 2001-12-12  Geert Bosch <bosch@gnat.com>
7696
7697         *  einfo.h: Regenerate.
7698
7699 2001-12-12  Ed Schonberg <schonber@gnat.com>
7700
7701         * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
7702         on known node types, rather than untyped fields. Further cleanups.
7703
7704 2001-12-12  Robert Dewar <dewar@gnat.com>
7705
7706         * sem_ch12.adb:
7707         (Save_Entity_Descendant): Minor comment update.
7708         (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
7709          of an N_Attribute_Reference node. As per note below, this does not
7710         eliminate need for Associated_Node in attribute ref nodes.
7711         (Associated_Node): Documentation explicitly mentions attribute
7712         reference nodes, since this field is used in such nodes.
7713
7714         * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
7715
7716 2001-12-12  Robert Dewar <dewar@gnat.com>
7717
7718         * s-stalib.adb: Add more comments on with statements being needed
7719
7720         * par-ch12.adb: Minor reformatting
7721
7722         * prj-dect.ads: Fix copyright header
7723
7724         * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
7725         inputs fit in 32 bits, but the result still overflows.
7726
7727         * s-fatgen.ads: Minor comment improvement
7728
7729 2001-12-12  Ed Schonberg <schonber@gnat.com>
7730
7731         * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
7732         formal derived type, look for an inherited component from the full
7733         view of the parent, if any.
7734
7735 2001-12-12  Robert Dewar <dewar@gnat.com>
7736
7737         * checks.ads (Apply_Alignment_Check): New procedure.
7738
7739         * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
7740         ensure that the alignment of objects with address clauses is
7741         appropriate, and raise PE if not.
7742
7743         * exp_util.ads (Must_Be_Aligned): Removed, replaced by
7744         Exp_Pakd.Known_Aligned_Enough
7745
7746         * mdllfile.ads: Minor reformatting
7747
7748         * mlib-fil.ads: Minor reformatting
7749
7750 2001-12-12  Ed Schonberg <schonber@gnat.com>
7751
7752         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
7753         fix to any component reference if enclosing record has non-standard
7754         representation.
7755
7756 2001-12-12  Vincent Celier <celier@gnat.com>
7757
7758         * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
7759         Iteration
7760
7761 2001-12-12  Ed Schonberg <schonber@gnat.com>
7762
7763         * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
7764         sem_attr.
7765
7766 2001-12-12  Robert Dewar <dewar@gnat.com>
7767
7768         * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
7769
7770 2001-12-12  Emmanuel Briot <briot@gnat.com>
7771
7772         * g-regexp.adb: Remove all debug code, since it isn't required anymore,
7773         and it adds dependencies to system.io.
7774
7775 2001-12-12  Pascal Obry <obry@gnat.com>
7776
7777         * g-dirope.adb (Expand_Path.Var): Correctly detect end of
7778         variable name.
7779
7780 2001-12-11  Ed Schonberg <schonber@gnat.com>
7781
7782         * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
7783         that is the parent of other generics, the instance body replaces the
7784         instance node.  Retrieve the instance of the spec, which is the one
7785         that is visible in clients and within the body.
7786
7787 2001-12-11  Vincent Celier <celier@gnat.com>
7788
7789         * gnatmain.adb: Initial version.
7790
7791         * gnatmain.ads: Initial version.
7792
7793         * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
7794
7795         * snames.adb: Updated to match snames.ads.
7796
7797         * snames.ads: Added Gnatstub.
7798
7799 2001-12-11  Vincent Celier <celier@gnat.com>
7800
7801         * prj-attr.adb (Initialization_Data): Change name from
7802         Initialisation_Data.
7803
7804 2001-12-11  Emmanuel Briot <briot@gnat.com>
7805
7806         * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
7807         + and * applied to backslashed expressions like \r.
7808
7809 2001-12-11  Vasiliy Fofanov <fofanov@gnat.com>
7810
7811         * g-os_lib.ads: String_List type added, Argument_List type is now
7812         subtype of String_List.
7813
7814 2001-12-11  Robert Dewar <dewar@gnat.com>
7815
7816         * g-os_lib.ads: Change copyright to FSF
7817         Add comments for String_List type
7818
7819 2001-12-11  Vincent Celier <celier@gnat.com>
7820
7821         * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
7822         string to the buffer).
7823
7824 2001-12-11  Ed Schonberg <schonber@gnat.com>
7825
7826         * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
7827         sem_attr.
7828
7829         * sem_attr.adb: Simplify previous fix for Address.
7830         (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
7831         to avoid anomalies where the bound of the type appears to raise
7832         constraint error.
7833
7834 2001-12-11  Robert Dewar <dewar@gnat.com>
7835
7836         * lib-xref.adb (Output_Refs): Make sure pointers are always properly
7837         handled.
7838
7839 2001-12-11  Ed Schonberg <schonber@gnat.com>
7840
7841         * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
7842         renamed unit before checking for recursive instantiations.
7843
7844 2001-12-11  Emmanuel Briot <briot@gnat.com>
7845
7846         * prj.ads: Add comments for some of the fields.
7847
7848 2001-12-11  Robert Dewar <dewar@gnat.com>
7849
7850         * lib-xref.adb (Output_Refs): Don't output type references outside
7851         the main unit if they are not otherwise referenced.
7852
7853 2001-12-11  Ed Schonberg <schonber@gnat.com>
7854
7855         * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
7856         code and diagnose additional illegal uses
7857
7858         * sem_util.adb (Is_Object_Reference): An indexed component is an
7859         object only if the prefix is.
7860
7861 2001-12-11  Vincent Celier <celier@gnat.com>
7862
7863         * g-diopit.adb: Initial version.
7864
7865         * g-diopit.ads: Initial version.
7866
7867         * g-dirope.adb:
7868         (Expand_Path): Avoid use of Unbounded_String
7869         (Find, Wildcard_Iterator): Moved to child package Iteration
7870
7871         * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
7872
7873 2001-12-11  Robert Dewar <dewar@gnat.com>
7874
7875         * sem_attr.adb: Minor reformatting
7876
7877 2001-12-11  Ed Schonberg <schonber@gnat.com>
7878
7879         * sem_ch3.adb: Clarify some ???.
7880
7881 2001-12-11  Robert Dewar <dewar@gnat.com>
7882
7883         * exp_util.adb (Must_Be_Aligned): Removed, replaced by
7884         Exp_Pakd.Known_Aligned_Enough
7885
7886         * sem_ch13.adb (Check_Address_Alignment): Removed, extended
7887         version is moved to Exp_Ch13.
7888
7889 2001-12-11  Robert Dewar <dewar@gnat.com>
7890
7891         * einfo.ads: Minor reformatting
7892
7893         * exp_ch5.adb: Add comment for previous.change
7894
7895         * ali.adb: New interface for extended typeref stuff.
7896
7897         * ali.ads: New interface for typeref stuff.
7898
7899         * checks.adb (Apply_Alignment_Check): New procedure.
7900
7901         * debug.adb: Add -gnatdM for modified ALI output
7902
7903         * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
7904
7905         * lib-xref.adb: Extend generation of <..> notation to cover
7906         subtype/object types. Note that this is a complete rewrite,
7907         getting rid of the very nasty quadratic algorithm previously
7908         used for derived type output.
7909
7910         * lib-xref.ads: Extend description of <..> notation to cover
7911         subtype/object types. Uses {..} for these other cases.
7912         Also use (..) for pointer types.
7913
7914         * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
7915
7916         * exp_pakd.adb: Minor reformatting.  Note that prevous RH should say:
7917         (Known_Aligned_Enough): Replaces Must_Be_Aligned.
7918
7919 2001-12-11  Vincent Celier <celier@gnat.com>
7920
7921         * gnatcmd.adb:
7922         Changed /COMPILE_ONLY to /ACTIONS=COMPILE
7923         Changed /BIND_ONLY to /ACTIONS=BIND
7924         Changed /LINK_ONLY to /ACTIONS=LINK
7925
7926 2001-12-11  Ed Schonberg  <schonber@gnat.com>
7927
7928         * sem_ch8.adb (Find_Selected_Component): improved search for a
7929         candidate package in case of error.
7930
7931         * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
7932         chain back on scope stack before reinstalling use clauses.
7933
7934         * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
7935         is enabled, do not kill the code for the condition, to preserve
7936         warning.
7937
7938 2001-12-11  Robert Dewar <dewar@gnat.com>
7939
7940         * checks.adb (Insert_Valid_Check): Apply validity check to expression
7941         of conversion, not to result of conversion.
7942
7943 2001-12-11  Ed Schonberg <schonber@gnat.com>
7944
7945         * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
7946         before freezing parent. If the declarations are mutually recursive,
7947         an access to the current record type may be frozen before the
7948         derivation is complete.
7949
7950 2001-12-05  Vincent Celier <celier@gnat.com>
7951
7952         * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
7953         -c /COMPILE_ONLY, -l /LINK_ONLY
7954
7955         * opt.ads:
7956         (Bind_Only): New Flag
7957         (Link_Only): New flag
7958
7959         * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
7960         and -l (Link_Only)
7961
7962         * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
7963
7964         * make.adb:
7965         (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
7966         (Gnatmake): Set the step flags. Only perform a step if the
7967         corresponding step flag is True.
7968         (Scan_Make_Arg): Reset the bind and link step flags when -u
7969         or -gnatc has been specified.
7970
7971 2001-12-05  Ed Schonberg <schonber@gnat.com>
7972
7973         * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
7974         get bounds from right operand.
7975
7976         * sem_eval.adb: Minor reformatting
7977
7978         * exp_util.adb (Make_Literal_Range): use bound of literal rather
7979         than Index'First, its lower bound may be different from 1.
7980
7981         * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
7982         and C48009J
7983
7984 2001-12-05  Vincent Celier <celier@gnat.com>
7985
7986         * prj-nmsc.adb Minor reformatting
7987
7988         * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
7989         set and libraries are not supported.
7990
7991 2001-12-05  Ed Schonberg <schonber@gnat.com>
7992
7993         * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
7994         private view explicitly, so the back-end can treat as a global
7995         when appropriate.
7996
7997 2001-12-05  Ed Schonberg <schonber@gnat.com>
7998
7999         * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
8000          unit, always replace instance node with new body, for ASIS use.
8001
8002 2001-12-05  Vincent Celier <celier@gnat.com>
8003
8004         * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
8005         libraries are not supported and both attributes Library_Name and
8006         Library_Dir are specified.
8007
8008         * prj-proc.adb (Expression): Set location of Result to location of
8009         first term.
8010
8011         * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
8012         (prj-nmsc is now importing MLib.Tgt)
8013
8014         * prj-proc.adb: Put the change indicated above that was forgotten.
8015
8016 2001-12-05  Robert Dewar <dewar@gnat.com>
8017
8018         * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
8019
8020 2001-12-05  Ed Schonberg <schonber@gnat.com>
8021
8022         * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
8023         constraint, introduce explicit subtype declaration and derive from it.
8024
8025         * sem_ch3.adb: Minor reformatting
8026
8027 2001-12-05  Robert Dewar <dewar@gnat.com>
8028
8029         * checks.adb (Determine_Range): Increase cache size for checks.
8030         Minor reformatting
8031
8032         * exp_ch6.adb: Minor reformatting
8033         (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
8034         a parameter whose root type is System.Address, since treating such
8035         subprograms as pure in the code generator is almost surely a mistake
8036         that will lead to unexpected results.
8037
8038         * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
8039         change handling of conversions.
8040
8041         * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
8042
8043 2001-12-05  Ed Schonberg <schonber@gnat.com>
8044
8045         * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
8046         aggregate with static wrong size, attach generated Raise node to
8047         declaration.
8048
8049 2001-12-05  Robert Dewar <dewar@gnat.com>
8050
8051         * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
8052         Fixes compilation abandoned bomb in B24009B.
8053
8054 2001-12-05  Ed Schonberg <schonber@gnat.com>
8055
8056         * sem_ch12.adb:
8057         Document use of Associated_Node on Selected_Components.
8058         (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
8059         to clarify use of untyped descendant fields.
8060
8061 2001-12-05  Robert Dewar <dewar@gnat.com>
8062
8063         * prj-dect.ads: Add ??? comment
8064         Add 2001 to copyright notice (was not done in after all)
8065
8066         * prj-part.adb: Minor reformatting. Reword one awkward error message.
8067
8068         * prj.ads: Minor reformatting throughout, and add some ??? comments
8069
8070         * snames.ads: Minor reformatting
8071
8072 2001-12-05  Geert Bosch <bosch@gnat.com>
8073
8074         * snames.adb: Autoupdate
8075
8076 2001-12-05  Vincent Celier <celier@gnat.com>
8077
8078         * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
8079
8080         * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
8081
8082         * prj-env.adb: Minor comment changes (modifying -> extends).
8083
8084         * prj-nmsc.adb: Minor comment changes (modifying -> extends).
8085
8086         * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
8087         Tok_Extends.
8088
8089         * prj.adb (Initialize): Change Modifying to Extends.
8090
8091         * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
8092
8093         * prj.ads: Minor comment change (Modifying -> extending).
8094
8095         * snames.ads: Change modifying to extends.
8096
8097 2001-12-05  Robert Dewar <dewar@gnat.com>
8098
8099         * sem_warn.adb: Remove stuff for conditionals, we are not going to
8100         do this after all.
8101
8102         * sem_warn.ads: Remove stuff for conditionals, we are not going to
8103         do this after all.  Add 2001 to copyright notice
8104
8105 2001-12-04  Geert Bosch <bosch@gnat.com>
8106
8107         *  einfo.h, sinfo.h, treeprs.ads: Regenerate.
8108
8109 2001-12-04  Robert Dewar <dewar@gnat.com>
8110
8111         * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
8112         location if we already have errors. Stops some cases of cascaded
8113         errors.
8114
8115         * errout.adb: Improve comment.
8116
8117 2001-12-04  Robert Dewar <dewar@gnat.com>
8118
8119         * sem_ch12.adb:
8120         (Analyze_Formal_Type_Definition): Defend against Error.
8121         (Analyze_Formal_Subprogram): Defend against Error.
8122
8123         * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
8124         remove following semicolon if present. Removes cascaded error.
8125
8126 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
8127
8128         * bindgen.adb:
8129         (Gen_Exception_Table_Ada): Write "begin" and then return if Num
8130          exceptions equals 0.
8131         (Gen_Exception_Table_C): Return if Num exceptions equals 0.
8132         Fixes PIWG E tests (which have to be run with -gnatL).
8133
8134 2001-12-04  Robert Dewar <dewar@gnat.com>
8135
8136         * einfo.ads: Minor reformatting
8137
8138 2001-12-04  Ed Schonberg <schonber@gnat.com>
8139
8140         * einfo.ads: Block_Node points to the identifier of the block, not to
8141         the block node itself, to preserve the link when the block is
8142         rewritten, e.g. within an if-statement with a static condition.
8143
8144         * inline.adb (Cleanup_Scopes): recover block statement from block
8145         entity using new meaning of Block_Node.
8146
8147         * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
8148         identifier of block node, rather than to node itself.
8149
8150 2001-12-04  Gary Dismukes <dismukes@gnat.com>
8151
8152         * layout.adb:
8153         (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
8154         (Discrimify): Go back to setting the Etypes of the selected component
8155         because the Vname component does not exist at this point and will
8156         fail name resolution. Also set Analyzed.
8157         Remove with and use of Sem_Res.
8158
8159 2001-12-04  Arnaud Charlet <charlet@gnat.com>
8160
8161         * Makefile.in: (HIE_SOURCES): add s-fat*.
8162
8163 2001-12-04  Robert Dewar <dewar@gnat.com>
8164
8165         * sem_attr.adb:
8166         (Compile_Time_Known_Attribute): New procedure.
8167         (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
8168          proper range check.
8169
8170 2001-12-04  Ed Schonberg <schonber@gnat.com>
8171
8172         * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
8173         processing discriminants to diagnose illegal default values.
8174
8175 2001-12-04  Ed Schonberg <schonber@gnat.com>
8176
8177         * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
8178         access discriminant within a type extension that constrains its
8179         parent discriminants.
8180
8181 2001-12-04  Ed Schonberg <schonber@gnat.com>
8182
8183         * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
8184         is malformed, use instance of Any_Id to allow analysis to proceed.
8185
8186         * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
8187         type definition is illegal.
8188         (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
8189         misplaced.
8190
8191 2001-12-04  Ed Schonberg <schonber@gnat.com>
8192
8193         * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
8194         constants.
8195
8196 2001-12-04  Robert Dewar <dewar@gnat.com>
8197
8198         * errout.adb: Minor reformatting
8199
8200 2001-12-04  Robert Dewar <dewar@gnat.com>
8201
8202         * exp_util.adb: Minor reformatting from last change
8203
8204         * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
8205         which is a rewriting of an expression, traverse the original
8206         expression to remove warnings that may have been posted on it.
8207
8208 2001-12-04  Ed Schonberg <schonber@gnat.com>
8209
8210         * exp_util.adb (Must_Be_Aligned): Return false for a component of a
8211         record that has other packed components.
8212
8213 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
8214
8215         * adaint.c: Minor cleanups.
8216
8217 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
8218
8219         * adaint.c: Do not use utime.h on vxworks.
8220
8221 2001-12-04  Arnaud Charlet <charlet@gnat.com>
8222
8223         * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
8224         more confusion than it solves.
8225
8226 2001-12-04  Geert bosch <bosch@gnat.com>
8227
8228         * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
8229
8230 2001-12-04  Geert Bosch  <bosch@gnat.com>
8231
8232         * Makefile.in (update-sources): New target.
8233         For use by gcc_release script.
8234
8235 2001-12-04  Ed Schonberg <schonber@gnat.com>
8236
8237         * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
8238         a configuration pragma, it is now legal wherever a pragma can appear.
8239
8240 2001-12-04  Zack Weinberg  <zack@codesourcery.com>
8241
8242         * Makefile.in: Don't set ALL.  Delete @cross_defines@,
8243         @cross_overrides@, @build_overrides@ stanzas.  INTERNAL_CFLAGS
8244         is now @CROSS@ -DIN_GCC; update comment.
8245
8246 2001-12-04  Robert Dewar <dewar@gnat.com>
8247
8248         * einfo.adb (Has_Pragma_Pure_Function): New flag.
8249         Fix problem that stopped ceinfo from working
8250
8251         * einfo.ads (Has_Pragma_Pure_Function): New flag.
8252
8253         * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
8254
8255 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
8256
8257         * gnatchop.adb:
8258         (File_Time_Stamp): New procedure.
8259         (Preserve_Mode): New boolean.
8260         (Write_Unit): Pass time stamp.
8261         Implement -p switch (preserve time stamps).
8262
8263         * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
8264
8265         * gnatchop.adb: Do usage info for -p switch
8266
8267         * adaint.h (__gnat_set_file_time_name): New function
8268
8269         * adaint.c (__gnat_set_file_time_name): Implement
8270
8271         * adaint.h: Fix typo
8272
8273 2001-12-03  Robert Dewar <dewar@gnat.com>
8274
8275         * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
8276         have Associated_Node.
8277
8278 2001-12-03  Robert Dewar <dewar@gnat.com>
8279
8280         * prj-proc.adb: Minor reformatting
8281
8282         * make.adb: Minor reformatting
8283
8284 2001-12-03  Geert Bosch <bosch@gnat.com>
8285
8286         * make.adb: Minor reformatting.
8287
8288 2001-12-03 Robert Dewar  <dewar@gnat.com>
8289
8290         * sem_ch12.adb: Minor reformatting
8291
8292 2001-12-03  Ed Schonberg <schonber@gnat.com>
8293
8294         * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
8295         push Standard on the stack before analyzing the instance body,
8296         in order to have a clean visibility environment.
8297
8298         * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
8299
8300 2001-12-03  Ed Schonberg <schonber@gnat.com>
8301
8302         * sem_ch12.adb (Instantiate_Package_Body): Protect against double
8303         instantiation of a body that contains an inlined body.
8304
8305 2001-12-03  Ed Schonberg <schonber@gnat.com>
8306
8307         * sem_ch12.adb:
8308         (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
8309         to prevent freezing within formal packages.
8310         (Freeze_Subprogram_Body): If body comes from another instance that
8311         appeared before its own body, place freeze node at end of current
8312         declarative part, to prevent a back-end crash.
8313         (Inline_Instance_Body): Handle properly a package instance within
8314         a subprogram instance that is a child unit.
8315
8316 2001-12-01  Graham Stott  <grahams@redhat.com>
8317
8318         * Makefile.in (misc.o): Add missing $(srcdir) prefix
8319         and add optabs.h dependency.
8320
8321         * misc.c: Include optabs.h
8322         (gnat_tree_code_type): Make static and const.
8323         (gnat_tree_code_length): Likewise.
8324         (gnat_tree_code_name): Likewise.
8325         (update_setjmp_buf): Obtain operands mode from insn_data.
8326
8327 2001-11-29  Richard Henderson  <rth@redhat.com>
8328
8329         * init.c: Remove obsolete dwarf2 frame.h section.
8330
8331 2001-11-29  Joseph S. Myers  <jsm28@cam.ac.uk>
8332
8333         * Make-lang.in (ada.generated-manpages): New dummy target.
8334
8335 2001-11-29  Ed Schonberg <schonber@gnat.com>
8336
8337         * g-os_lib.adb (Add_To_Command): use explicit loop to move string
8338         into Command, an array conversion is illegal here. Uncovered by
8339         ACATS B460005.
8340
8341 2001/11/28  Geert Bosch <bosch@gnat.com>
8342
8343         * init.c: Minor whitespace changes.
8344
8345 2001-11-28  Doug Rupp <rupp@gnat.com>
8346
8347         * init.c: (__gnat_install_handler,VMS): Increase size of alternate
8348         signal stack.
8349
8350 2001-11-28  Zack Weinberg  <zack@codesourcery.com>
8351
8352         * misc.c (gnat_expand_constant): Move declaration above
8353         definition of lang_hooks.
8354         (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
8355         (gnat_init): lang_expand_constant no longer exists.
8356
8357         (internal_error_function): Remove #ifdef HAVE_VPRINTF.  We
8358         always have vprintf.
8359         (gnat_init): Always call set_internal_error_function.
8360
8361 2001-11-27  Andreas Jaeger  <aj@suse.de>
8362
8363         * Makefile.in (stamp-tool_src_dir): Use symbolic link.
8364
8365 2001-11-27  Laurent Guerby  <guerby@acm.org>
8366
8367         * Makefile.in: Regenerate Ada dependencies.
8368
8369 2001-11-26  Richard Henderson  <rth@redhat.com>
8370
8371         * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
8372         gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
8373         gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
8374
8375 2001-11-25  Laurent Guerby  <guerby@acm.org>
8376
8377         * sysdep.c (rts_get_*): Fix style.
8378
8379 2001-11-19  Laurent Guerby  <guerby@acm.org>
8380
8381         * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
8382         since it is of no apparent use and cause warnings.
8383
8384 2001-11-18  Neil Booth  <neil@daikokuya.demon.co.uk>
8385
8386         * misc.c (gnat_decode_option, gnat_init_options): Make definitions
8387         static too.
8388         (gnat_init): Don't return NULL.
8389         (finish_parse): Remove.
8390
8391 2001-11-17  Laurent Guerby  <guerby@acm.org>
8392
8393         * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
8394         * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
8395         * io-aux.c: Provide K&R prototypes to all functions, reformat code.
8396         * lang-spec.h: Add missing struct field to silence warnings.
8397         * sysdep.c (rts_get_*): Provide K&R prototype.
8398         * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
8399         * traceback.c (Unlock_Task, Lock_Task): Likewise.
8400         * tracebak.c (__gnat_backtrace): Remove unused variable.
8401         * utils.c (end_subprog_body): Move to K&R style.
8402
8403 Thu Nov 15 18:16:17 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
8404
8405         * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
8406
8407 2001-11-15  Neil Booth  <neil@daikokuya.demon.co.uk>
8408
8409         * misc.c (gnat_init): Change prototype.  Include the
8410         functionality of the old init_parse and init_decl_processing.
8411         (gnat_init_decl_processing): New prototype.
8412         (init_parse): Remove.
8413         * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
8414
8415 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
8416
8417         * misc.c (gnat_print_decl, gnat_print_type): Renamed.
8418         (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
8419         (print_lang_statistics, lang_print_xnode, print_lang_identifier,
8420         set_yydebug): Remove.
8421
8422 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
8423
8424         * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
8425         (struct lang_hooks): Constify.
8426         (language_string, lang_identify): Remove.
8427         * utils.c (init_decl_processing): Update.
8428
8429 2001-11-06  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
8430
8431         * misc.c: Include langhooks-def.h.
8432         * Makefile.in: Update.
8433
8434 2001-10-30  Robert Dewar <dewar@gnat.com>
8435
8436         * style.adb:
8437         (Check_Identifier): Rewrite circuit to be compatible with use of letters
8438         in the upper half of ASCII.
8439         (Check_Identifier): Minor reformatting
8440
8441 2001-10-30  Geert Bosch <bosch@gnat.com>
8442
8443         * (Associated_Node, Set_Associated_Node): Do not check for
8444         Freeze_Entity.
8445
8446 2001-10-30  Robert Dewar <dewar@gnat.com>
8447
8448         * a-reatim.ads: Minor reformatting
8449
8450 2001-10-30  Robert Dewar <dewar@gnat.com>
8451
8452         * gnatdll.adb: Minor reformatting throughout. Many ??? added for
8453         undocumented declarations.
8454
8455 2001-10-30  Pascal Obry <obry@gnat.com>
8456
8457         * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
8458         to the binder and linker.
8459         Minor style fix.
8460
8461         * mdll.ads: Fix layout.  Update copyright notice.
8462
8463         * mdll.adb: Fix layout.  Update copyright notice.
8464
8465 2001-10-30  Robert Dewar <dewar@gnat.com>
8466
8467         * usage.adb: Minor fix to output for -gnaty.
8468
8469 2001-10-30  Ed Schonberg <schonber@gnat.com>
8470
8471         * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
8472         to accommodate all its possible values.
8473
8474         * a-reatim.adb (Split): Special-case handling of Time_Span_First
8475         and of small absolute values of T.
8476
8477 2001-10-30  Richard Kenner <kenner@gnat.com>
8478
8479         * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
8480         set_mem_attributes since not needed and wrong if RESULT if a REG;
8481         fixes ACATS failures.
8482
8483 2001-10-30  Geert Bosch <bosch@gnat.com>
8484
8485         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
8486         s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
8487
8488 2001-10-30  Robert Dewar <dewar@gnat.com>
8489
8490         * bindusg.adb: Undocument -f switch.
8491
8492         * gnatcmd.adb: Remove /FULL_ELABORATION.
8493
8494         * opt.ads (Force_RM_Elaboration_Order): Document that this is
8495         obsolescent.
8496
8497         * gnatbind.adb: Output new warning for use of obsolescent -f switch.
8498
8499         * gnatbind.adb: Minor update of warning msg.
8500
8501 2001-10-30  Vincent Celier <celier@gnat.com>
8502
8503         * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
8504         for project file switches (-P (/PROJECT_FILE=),
8505          -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
8506         or MEDIUM or HIGH)
8507
8508 2001-10-30  Geert Bosch <bosch@gnat.com>
8509
8510         * decl.c: Minor whitespace fixes.
8511
8512 2001-10-30  Richard Kenner <kenner@gnat.com>
8513
8514         * utils2.c (build_allocator): Test for SIZE overflow in array case too
8515
8516 2001-10-30  Geert Bosch <bosch@gnat.com>
8517
8518         * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
8519         Found due to GCC 3.0 warning of using uninitialized value.
8520
8521         * layout.adb:
8522         (Get_Max_Size): Use variant record for tracking value/expression.
8523          Makes logic clearer and prevents warnings for uninitialized variables.
8524         (Layout_Array_Type): Use variant record for tracking value/expression.
8525          Makes logic clearer and prevents warnings for uninitialized variables.
8526
8527 2001-10-30  Robert Dewar <dewar@gnat.com>
8528
8529         * lib.adb: Minor reformatting
8530
8531         * s-taprop.ads: Minor reformatting
8532
8533 2001-10-29  Laurent Guerby  <guerby@acm.org>
8534
8535         * init.c:
8536         (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
8537         const.
8538         (_gnat_error_handler): Make MSG const.
8539
8540 2001-10-29  Richard Kenner <kenner@gnat.com>
8541
8542         * sysdep.c: Fix localtime_r problem on LynxOS.
8543         Also remove #elif to avoid warnings.
8544
8545         * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
8546         used by this.
8547
8548         * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
8549
8550 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
8551
8552         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
8553         exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
8554         g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
8555         g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
8556         layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
8557         s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
8558         sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
8559         sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
8560         sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
8561         types.ads, urealp.adb: Fix spelling errors.
8562
8563 2001-10-27  Laurent Guerby <guerby@acm.org>
8564
8565         * trans.c (gigi): Fix non determinism leading to bootstrap
8566         comparison failures for debugging information.
8567
8568 2001-10-26  Florian Weimer  <fw@deneb.enyo.de>
8569
8570         * gnat_rm.texi: Use @./@: where appropriate.
8571
8572 2001-10-26  Robert Dewar <dewar@gnat.com>
8573
8574         * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
8575
8576 2001-10-26  Richard Kenner <kenner@gnat.com>
8577
8578         * gmem.c (__gnat_gmem_read_next): Properly check for EOF
8579
8580 2001-10-26  Richard Kenner <kenner@gnat.com>
8581
8582         * decl.c (validate_size): Modify message for bad size to avoid
8583         implication that compiler is modifying the size.
8584
8585 2001-10-26  Robert Dewar <dewar@gnat.com>
8586
8587         * prj-util.adb: Minor reformatting. Fix bad header format.
8588
8589 2001-10-26  Robert Dewar <dewar@gnat.com>
8590
8591         * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
8592
8593         * sinfo.ads: Clarify use of Associated_Node (documentation only).
8594
8595         * sem_ch12.adb: Change Node4 to Associated_Node. Change
8596         Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
8597         much more narrowly in places where needed. These are cleanups.
8598
8599 2001-10-26  Joel Brobecker <brobecke@gnat.com>
8600
8601         * 5zosinte.ads (null_pthread): new constant.
8602
8603         * 5ztaprop.adb:
8604         (Initialize_TCB): Initialize thread ID to null, to be able to verify
8605          later that this field has been set.
8606         (Finalize_TCB): ditto.
8607         (Suspend_Task): Verify that the thread ID is not null before using it.
8608         (Resume_Task): ditto.
8609
8610         * s-tasdeb.adb:
8611         (Resume_All_Tasks): Lock the tasks list before using it.
8612         (Suspend_All_Tasks): ditto.
8613
8614 2001-10-26  Richard Kenner <kenner@gnat.com>
8615
8616         * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
8617         Make constant variant of designated type for Is_Access_Constant.
8618         Call update_pointer_to with main variant.
8619
8620         * trans.c (process_freeze_entity, process_type):
8621         Call update_pointer_to on main variant.
8622
8623         * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
8624         If main variant, update all other variants.
8625
8626         * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
8627         TREE_STATIC.
8628
8629 2001-10-26  Robert Dewar <dewar@gnat.com>
8630
8631         * prj-util.adb: Minor reformatting
8632
8633 2001-10-26  Robert Dewar <dewar@gnat.com>
8634
8635         * prj-util.adb: Minor reformatting
8636
8637 2001-10-26  Robert Dewar <dewar@gnat.com>
8638
8639         * prj-attr.adb: Minor reformatting throughout
8640
8641 2001-10-26  Robert Dewar <dewar@gnat.com>
8642
8643         * prj-attr.ads: Minor reformatting
8644         Add ??? comment (this whole spec has almost no comments)
8645
8646 2001-10-26  Vincent Celier <celier@gnat.com>
8647
8648         * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
8649         ("//") that precede the drive letter on Interix.
8650
8651 2001-10-26  Geert Bosch <bosch@gnat.com>
8652
8653         * gnat_rm.texi: Add GNAT Reference Manual.
8654
8655 2001-10-25  Robert Dewar <dewar@gnat.com>
8656
8657         * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
8658         is Error. Similar change for other renaming cases.
8659
8660 2001-10-25  Robert Dewar <dewar@gnat.com>
8661
8662         * s-atacco.ads: Add pragma Inline_Always for functions.
8663         Fix header format. Add copyright 2001
8664
8665 2001-10-25  Ed Schonberg <schonber@gnat.com>
8666
8667         * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
8668         return Error rather than Empty so that analysis can proceed.
8669
8670 2001-10-25  Ed Schonberg <schonber@gnat.com>
8671
8672         * sem_util.adb (Enter_Name): better handling of cascaded error
8673         messages when a unit appears in its own context.
8674
8675 2001-10-25  Ed Schonberg <schonber@gnat.com>
8676
8677         * sem_util.adb (Defining_Entity): in case of error, attach created
8678         entity to specification, so that semantic analysis can proceed.
8679
8680 2001-10-25  Robert Dewar <dewar@gnat.com>
8681
8682         * sem_util.adb
8683         (Defining_Entity): Deal with Error.
8684         (Process_End_Label): Deal with bad end label for.
8685
8686 2001-10-25  Ed Schonberg <schonber@gnat.com>
8687
8688         * sem_elab.adb (Check_A_Call): refine message when call is in an
8689         instance but callee is not declared in the generic unit.
8690
8691 2001-10-25  Ed Schonberg <schonber@gnat.com>
8692
8693         * sem_elab.adb (Check_A_Call): check for renaming before finding the
8694         enclosing unit, which may already be different from the calling unit.
8695
8696 2001-10-25  Geert Bosch <bosch@gnat.com>
8697
8698         * 4gintnam.ads: fix header format.
8699
8700 2001-10-25  Ed Schonberg <schonber@gnat.com>
8701
8702         * sem_res.adb (Resolve_Call): if the call is actually an indexing
8703         operation on the result of a parameterless call, perform elaboration
8704         check after the node has been properly rewritten.
8705
8706         * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
8707         inlined within the generic tree, the defining identifier is not a
8708         compilation_unit.
8709
8710 2001-10-25  Ed Schonberg <schonber@gnat.com>
8711
8712         * sem_res.adb (Resolve): special-case resolution of Null in an
8713          instance or an inlined body to avoid view conflicts.
8714
8715         * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
8716          compatibility by retrieving the access type of the generic copy.
8717
8718 2001-10-25  Robert Dewar <dewar@gnat.com>
8719
8720         * sem_ch3.adb:
8721         (Analyze_Number_Declaration): Handle error expression.
8722         (Signed_Integer_Type_Declaration): Handle error bound.
8723         (Analyze_Subtype_Indication): Handle error range.
8724
8725         * sem_util.adb (Get_Index_Bounds): Check for Error.
8726
8727 2001-10-25  Robert Dewar <dewar@gnat.com>
8728
8729         * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
8730         in no run time mode.
8731
8732 2001-10-25  Pascal Obry <obry@gnat.com>
8733
8734         * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
8735         mode case for ALLOC case.
8736
8737         * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
8738         all platforms. Improvement of last change.
8739
8740 2001-10-25  Robert Dewar <dewar@gnat.com>
8741
8742         * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
8743
8744 2001-10-25  Geert Bosch  <bosch@gnat.com>
8745
8746         * osint.adb (Is_Relative): Remove duplicate.
8747
8748 2001-10-25  Pascal Obry <obry@gnat.com>
8749
8750         * osint.adb (Read_Default_Search_Dirs): correctly detect relative
8751         pathnames in UNIX and DOS style with drive letter.
8752         (Is_Relative): new routine.
8753
8754         * osint.adb: Minor reformatting
8755
8756         * osint.adb (Is_Relative): implementation using
8757         GNAT.OS_Lib.Is_Absolute_Path. Better fix.
8758
8759 2001-10-25  Pascal Obry <obry@gnat.com>
8760
8761         * g-dirope.adb (Basename): correctly compute offset between the
8762         original Path and the translated one.
8763
8764         * g-dirope.adb: (Base_Name): add some comments.
8765
8766 2001-10-25  Robert Dewar <dewar@gnat.com>
8767
8768         * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
8769         in HIE mode, avoids compilation abandoned message
8770
8771         * exp_imgv.adb: Correct typo in previous change
8772
8773         * exp_imgv.adb: Correct typo in previous change (not my day!)
8774
8775 2001-10-25  Robert Dewar <dewar@gnat.com>
8776
8777         * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
8778
8779 2001-10-25  Pascal Obry <obry@gnat.com>
8780
8781         * g-awk.ads: Move all pragma inlines next to the routine
8782          declarations. This is more uniform with other GNAT spec.
8783
8784 2001-10-22  Geert Bosch  <bosch@gnat.com>
8785
8786         * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
8787
8788 2001-10-19  Geert Bosch  <bosch@gnat.com>
8789
8790         * Makefile.in (tools, gnattools): Remove gnatmem.
8791
8792 2001-10-17  Richard Henderson  <rth@redhat.com>
8793
8794         * Makefile.in (misc.o): Depend on langhooks.h.
8795         * misc.c: Include it.
8796         (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
8797         (LANG_HOOKS_DECODE_OPTION): New.
8798         (lang_hooks): Use LANG_HOOKS_INITIALIZER.
8799
8800 2001-10-16  Florian Weimer  <fw@deneb.enyo.de>
8801
8802         * trans.c (tree_transform): Adjust to recent change in
8803         expand_asm_operands to implement named asm operands.
8804
8805 2001-10-11  Ed Schonberg  <schonber@gnat.com>
8806
8807         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
8808         renaming of discriminant for mutable record type.
8809
8810 2001-10-11  Robert Dewar  <dewar@gnat.com>
8811
8812         * validsw.adb: Properly save -gnatVn status.
8813
8814 2001-10-11  Robert Dewar <dewar@gnat.com>
8815
8816         * usage.adb: Add lines for V switch.
8817
8818         * gnatcmd.adb (COMPILE): Revise translations for -gnatV
8819         (/VALIDITY_CHECKING).
8820
8821 2001-10-11  Ed Schonberg <schonber@gnat.com>
8822
8823         * sem_type.adb (Add_One_Interp): an operator for a type declared in
8824         an extension of System is known to be visible.
8825
8826 2001-10-11  Ed Schonberg <schonber@gnat.com>
8827
8828         * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
8829         properly. Fixes regression on ACATS C34005G.
8830
8831 2001-10-11  Robert Dewar <dewar@gnat.com>
8832
8833         * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
8834         loop in generic instance, since this is likely not very useful.
8835
8836 2001-10-11  Robert Dewar <dewar@gnat.com>
8837
8838         * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
8839         the error message for high integrity mode.
8840
8841         * rtsfind.adb (RTE): Give message if we try to find an entity that
8842         is not available in high integrity mode.
8843
8844         * rtsfind.ads:
8845         (OK_To_Use_In_HIE_Mode): New array.
8846         (RTE): May return Empty in high integrity mode.
8847
8848         * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
8849         OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
8850
8851         * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
8852         unit if not inlined always and in no runtime mode. Fixes problem
8853         caused by new Rtsfind changes.
8854
8855         * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
8856         body is deleted.
8857
8858         * rtsfind.adb (RTE): Make sure we do not try to load unit after
8859         giving message for entity not available in high integrity mode.
8860
8861 2001-10-11  Pascal Obry <obry@gnat.com>
8862
8863         * impunit.adb: Add GNAT.CRC32.
8864
8865 2001-10-11  Ed Schonberg <schonber@gnat.com>
8866
8867         * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
8868         properly the case where one universal operand in a non-static
8869         exponentiation of a real literal.
8870
8871 2001-10-11  Ed Schonberg <schonber@gnat.com>
8872
8873         * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
8874         clause, return the gobal finalization list, for lack of anthing else.
8875
8876 2001-10-11  Ed Schonberg <schonber@gnat.com>
8877
8878         * exp_ch7.adb (Make_Transient_Block): if statement is within
8879         exception handler, always use new transient scope to place Clean
8880         procedure.
8881
8882 2001-10-11  Pascal Obry <obry@gnat.com>
8883
8884         * Makefile.in:
8885         (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
8886         (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
8887         (GNATLS_RTL_OBJS): add g-crc32.o
8888         (GNATMAKE_RTL_OBJS): add g-crc32.o
8889
8890         * ali-util.adb:
8891         (CRC_Match): new function.
8892         (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
8893         instead of the previous simple checksum algorithm.
8894         (Time_Stamp_Mismatch): use CRC_Match for comparison.
8895         (Set_Source_Table): idem.
8896
8897         * ali-util.ads:
8898         (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
8899         instead of simple checksum.
8900         (CRC_Match): new function.
8901         (CRC_Error): new constant.
8902
8903         * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
8904         a CRC now and not a simple checksum. A CRC uses lower-case hex
8905         letters, fixes ambiguity in parsing.
8906
8907         * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
8908         is what this variable will store.
8909
8910         * bcheck.adb: Change reference to chechsum in comments by CRC.
8911         (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
8912         rename All_Checksum_Match to All_CRC_Match. Change due to API
8913         renaming since now GNAT does not use a simple checksum but a
8914         CRC using GNAT.CRC32.
8915
8916         * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
8917         now and not anymore a simple checksum.
8918
8919         * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
8920         places.
8921
8922         * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
8923
8924         * scans.adb:
8925         (Restore_Scan_State): rename Checksum to CRC.
8926         (Save_Scan_State): idem.
8927
8928         * scans.ads:
8929         With GNAT.CRC32.
8930         (Checksum): rename to CRC.
8931         (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
8932
8933         * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
8934         GNAT.CRC32).  Update copyright notice.
8935
8936         * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
8937         GNAT.CRC32).  Update copyright notice.
8938
8939         * scn.adb:
8940         (Accumulate_Checksum): removed.
8941         (Update): new procedure. Add a wide-character into the CRC.
8942
8943         * sinput-l.adb:
8944         (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
8945         (Load_File): fix initialization of S (change Source_Checksum to
8946         Source_CRC)
8947
8948         * sinput-p.adb (Load_Project_File): rename Source_Checksum to
8949         Source_CRC in S initialization.
8950
8951         * sinput.adb (Source_Checksum): renamed to Source_CRC.
8952
8953         * sinput.ads (Source_Checksum): renamed to Source_CRC.
8954         Update comments for the CRC.
8955
8956         * types.adb (Hex): Use lowercase for the letter part.
8957
8958         * types.ads (Get_Hex_String): Returns the hexadecimal representation
8959         for a word. This is currently used only for CRC. In previous version,
8960         the checksum was using a representation with all letter being
8961         upper-case. With the new implementation (using CRC) we do not remove
8962         the 32th bit of the CRC, so we can have an upper-case starting letter
8963         in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
8964         It is ambigous since the CRC was optional and could be followed by
8965         options like EB, EE. So now this routines uses lower-case letter for
8966         the hexadecimal representation. Strange enough only lower case letters
8967         where checked in Scan_ALI (even if this was not a possible case).
8968
8969         * gnatvsn.ads (Library_Version): changed to 3.15a.
8970
8971         * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
8972         for the compiler.
8973
8974         * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
8975         for the compiler.
8976
8977         * ali-util.adb: Redo previous change to avoid using word CRC everywhere
8978         Add 2001 to copyright notice
8979         (Accumulate_Checksum): Modify to use System.CRC32.
8980
8981         * ali-util.ads: Redo changes of previous revision to continue to use
8982         the word Checksum. Add 2001 to copyright notice.
8983
8984         * ali.adb: Undo some of previous changes, not needed.
8985         Keep the change for lower case letters in the checksum.
8986
8987         * ali.ads: Undo previous change not needed.
8988
8989         * bcheck.adb: Undo most of previous change, not needed.
8990         But do use Checksums_Match for checksum comparison.
8991
8992         * gnatls.adb: Undo most of previous change, not needed.
8993         But do use Checksums_Match for comparing checksums.
8994
8995         * lib-load.adb: Undo previous change, not needed.
8996
8997         * lib-writ.adb: Undo previous change, not needed.
8998
8999         * lib-writ.ads: Document that checksums use lower case,
9000         not upper case letters.
9001
9002         * scans.adb: Undo previous change, not needed
9003
9004         * scans.ads: Undo previous change, not needed.
9005
9006         * scn-nlit.adb: Undo previous changes, not needed.
9007
9008         * scn-slit.adb: Undo previous change, not needed.  Fix header format.
9009
9010         * scn.adb:
9011         (Accumulate_Checksum): Use System.CRC32.
9012         (Initialize_Checksum): New procedure.
9013         Remove other changes of previous revision.
9014
9015         * sinput-p.adb: Undo previous change, not needed.
9016
9017         * sinput.adb: Undo previous change, not needed.
9018
9019         * sinput-l.adb: Undo previous change, not needed.
9020
9021         * sinput.ads: Undo previous change, not needed.  Keep only comment
9022         on new checksum algorithm
9023
9024         * Makefile.in: Add s-crc32 as needed, remove g-crc32.
9025         Also remove a-tags and a-stream from GNAT sources.
9026
9027         * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
9028
9029         * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
9030
9031 2001-10-11  Geert Bosch  <bosch@gnat.com>
9032
9033         * einfo.h: Regenerate.
9034
9035         * nmake.ads: Regenerate.
9036
9037         * nmake.adb: Regenerate.
9038
9039         * sinfo.h: Regenerate.
9040
9041         * treeprs.adb: Regenerate.
9042
9043 2001-10-10  Geert Bosch  <bosch@gnat.com>
9044
9045         * gnat-style.texi: New file describing coding guidelines for Ada.
9046
9047 2001-10-10  Ed Schonberg <schonber@gnat.com>
9048
9049         * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
9050         is Flag174.
9051
9052 2001-10-10  Geert Bosch  <bosch@gnat.com>
9053
9054         * snames.ads: Add new names for project facility.
9055
9056         * snames.adb: Update to reflect snames.ads changes.
9057
9058         * snames.h: Update to reflect snames.ads changes.
9059
9060 2001-10-10  Vincent Celier <celier@gnat.com>
9061
9062         * make.adb:
9063         (Add_Switches): reflect the changes for the switches attributes
9064         Default_Switches indexed by the programming language,
9065         Switches indexed by the file name.
9066         (Collect_Arguments_And_Compile): Idem.
9067         Reflect the attribute name changes.
9068
9069         * prj-attr.adb:
9070         (Initialisation_Data): Change the names of some packages and
9071         attributes.
9072         (Initialize): process case insensitive associative arrays.
9073
9074         * prj-attr.ads:
9075         (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
9076
9077         * prj-dect.adb:
9078         (Parse_Attribute_Declaration): For case insensitive associative
9079          arrays, set the index string to lower case.
9080
9081         * prj-env.adb:
9082         Reflect the changes of the project attributes.
9083
9084         * prj-nmsc.adb:
9085         Replace Check_Naming_Scheme by Ada_Check and
9086         Language_Independent_Check.
9087
9088         * prj-nmsc.ads:
9089         Replaced Check_Naming_Scheme by 2 procedures:
9090         Ada_Check and Language_Independent_Check.
9091
9092         * prj-proc.adb:
9093         (Process_Declarative_Items): For case-insensitive associative
9094         arrays, set the index string to lower case.
9095         (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
9096         Prj.Nmsc.Check_Naming_Scheme.
9097
9098         * prj-tree.adb:
9099         (Case_Insensitive): New function
9100         (Set_Case_Insensitive): New procedure
9101
9102         * prj-tree.ads:
9103         (Case_Insensitive): New function
9104         (Set_Case_Insensitive): New procedure
9105         (Project_Node_Record): New flag Case_Insensitive.
9106
9107         * prj-util.adb:
9108         (Value_Of): new function to get the string value of a single
9109         string variable or attribute.
9110
9111         * prj-util.ads:
9112         (Value_Of): new function to get the string value of a single
9113         string variable or attribute.
9114
9115         * prj.adb:
9116         (Ada_Default_Spec_Suffix): New function
9117         (Ada_Default_Impl_Suffix): New function
9118         Change definitions of several constants to reflect
9119         new components of record types.
9120
9121         * prj.ads:
9122         (Naming_Data): Change several components to reflect new
9123         elements of naming schemes.
9124         (Project_Data): New flags Sources_Present and
9125         Language_Independent_Checked.
9126         (Ada_Default_Spec_Suffix): New function.
9127         (Ada_Default_Impl_Suffix): New function.
9128
9129         * snames.ads:
9130         Modification of predefined names for project manager: added
9131         Implementation, Specification_Exceptions, Implementation_Exceptions,
9132         Specification_Suffix, Implementation_Suffix, Separate_Suffix,
9133         Default_Switches, _Languages, Builder, Cross_Reference,
9134         Finder. Removed Body_Part, Specification_Append, Body_Append,
9135         Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
9136         Gnatlink.
9137
9138         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
9139         Add comments.
9140
9141         * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
9142         not that it is Nil_Variable_Value.
9143
9144         * prj.ads: Add ??? for uncommented declarations
9145
9146 2001-10-10  Ed Schonberg <schonber@gnat.com>
9147
9148         * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
9149         constant, do not indicate possible modification, so that gigi can
9150         treat it as a bona fide constant.
9151
9152 2001-10-10  Robert Dewar <dewar@gnat.com>
9153
9154         * sem_prag.adb: Add processing for pragma External.
9155
9156         * snames.ads: Add entry for pragma External.
9157
9158         * par-prag.adb: Add pragma External.
9159
9160         * snames.adb: Updated to match snames.ads.
9161
9162 2001-10-10  Ed Schonberg <schonber@gnat.com>
9163
9164         * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
9165         a dynamic task if the allocator appears in an indexed assignment
9166         or selected component assignment.
9167
9168         * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
9169         For a dynamic task in an assignment statement, use target of
9170         assignment to generate meaningful name.
9171
9172 2001-10-10  Ed Schonberg <schonber@gnat.com>
9173
9174         * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
9175         a generic package.
9176
9177         * einfo.ads: Body_Entity is also defined for generic package.
9178         Documentation change only
9179
9180         * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
9181         others_choice for a discriminated component initialization,
9182         convert discriminant references into the corresponding discriminals.
9183
9184         * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
9185         only if original type is private and expression has to be wrapped
9186         in a conversion.
9187
9188         * checks.adb:
9189         (Apply_Constraint_Check): Do not perform length check
9190         if expression is an aggregate with only an others_choice.
9191         (Length_N_Cond): two references to the same in_parameter
9192         (typically the discriminal in an init_proc) denote the same value.
9193         Two useful optimization uncovered by bugfixes above.
9194
9195 2001-10-10  Robert Dewar <dewar@gnat.com>
9196
9197         * xeinfo.adb: Change int to char in translation of enumeration types.
9198         This fixes a problem in the C representation of component alignment.
9199         Add 2001 to copyright notice
9200
9201 2001-10-10  Richard Kenner <kenner@gnat.com>
9202
9203         * decl.c: (validate_size): Do check size of object of integral type
9204         if it is a packed array type.
9205
9206 2001-10-10  Richard Kenner <kenner@gnat.com>
9207
9208         * decl.c: (gnat_to_gnu_entity, case object): Also materialize
9209         VAR_DECL for constant if not Is_Public but -O0.
9210
9211 2001-10-10  Richard Kenner  <kenner@gnat.com>
9212
9213         * misc.c (struct lang_hooks): Add new initializer to match GCC change.
9214
9215 2001-10-10  Geert Bosch  <bosch@gnat.com>
9216
9217         * xnmake.adb (XNmake): Fix handling of -s/-b options.  No longer
9218         use '/' as switch character, allowing for absolute file names.
9219
9220 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
9221
9222         * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
9223         FSF address.
9224
9225 2001-10-08  Geert Bosch  <bosch@gnat.com>
9226
9227         * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
9228         Automatically build utilities when files need to be regenerated.
9229
9230 2001-10-08  Geert Bosch  <bosch@gnat.com>
9231
9232         * xsnames.adb: New utility for updating snames.ads and snames.adb
9233
9234 2001-10-08  Zack Weinberg  <zack@codesourcery.com>
9235
9236         * Make-lang.in (ADAFLAGS): Add -W -Wall.
9237         (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
9238         (gnat1): Also depend on attribs.o.
9239         (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
9240         * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
9241         (ADAC): Set to @ADAC@ in stage1, $(CC) later.
9242         (ADAFLAGS): Add -W -Wall.
9243         (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
9244         take out CFLAGS.
9245
9246         (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
9247         s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
9248         s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
9249         Use $(ADAC), not $(CC), as compilation command.
9250
9251         (gnattools): Depend directly on tools to build, don't use
9252         recursive make.
9253         (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
9254
9255         * einfo.h, sinfo.h: New files (autogenerated).
9256
9257 2001-10-08  Richard Henderson  <rth@redhat.com>
9258
9259         * comperr.adb (Abort_In_Progress): New.
9260         (Compiler_Abort): Use it to prevent recursion.
9261
9262 2001-10-08  Robert Dewar <dewar@gnat.com>
9263
9264         * atree.adb: Set Error_Posted in Error node, helps error recovery.
9265
9266         * par-endh.adb (Output_End_Expected): We should also not test
9267         Error_Posted on the Error node, since now it is always set.
9268
9269         * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
9270         to help error recovery. Part of general work on 9407-004.
9271
9272         * par.adb: Add ??? for misuse of error
9273
9274         * sem_res.adb:
9275         (Resolve): Defend against Error, fixes 9407-003.
9276         (Resolve_Discrete_Subtype_Indication): Defend against Error.
9277
9278         * sinfo.ads (N_Error): Now has Etype field (which will be set
9279         to Any_Type to help error recovery).
9280
9281 2001-10-08  Richard Kenner (kenner@gnat.com)
9282
9283         * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
9284         Consistently set MEM attributes from expression; fixes
9285         bootstrap failure on x86.
9286
9287 2001-10-08  Geert Bosch  (bosch@gnat.com)
9288
9289         * 5oosinte.adb: Add 2001 to copyright notice.
9290
9291 2001-10-08  Geert Bosch  (bosch@gnat.com)
9292
9293         * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
9294
9295         * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
9296
9297 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
9298
9299         * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
9300
9301 2001-10-05  Geert Bosch  (bosch@gnat.com)
9302
9303         * adaint.h: Small formatting fix.
9304
9305 2001-10-04  Geert Bosch  <bosch@gnat.com>
9306
9307         * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
9308         Arg is int, not FILE *, in dummy version of functions.
9309
9310         * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
9311         Arg is int, not FILE *.
9312
9313 2001-10-04  Geert Bosch  <bosch@gnat.com>
9314
9315         * 3lsoccon.ads: Added file, missed with initial check ins.
9316
9317         * 4lintnam.ads: Fix header format.
9318         Change Linux to GNU/Linux.
9319
9320         * 5iosinte.adb: Change Linux to GNU/Linux.
9321
9322         * 5iosinte.ads: Change Linux to GNU/Linux.
9323
9324         * 5itaprop.adb: Change Linux to GNU/Linux.
9325
9326         * 5itaspri.ads: Change Linux to GNU/Linux.
9327         Update copyright notice.
9328
9329         * 5lintman.adb: Change Linux to GNU/Linux.
9330
9331         * 5lml-tgt.adb: Change Linux to GNU/Linux.
9332
9333         * 5losinte.ads: Change Linux to GNU/Linux.
9334
9335         * 5lsystem.ads: Change Linux to GNU/Linux.
9336
9337         * 5qosinte.adb: Change Linux to GNU/Linux.
9338
9339         * 5qosinte.ads: Change Linux to GNU/Linux.
9340
9341         * 5qparame.ads: Change Linux to GNU/Linux.
9342
9343         * 5qtaprop.adb: Change Linux to GNU/Linux.
9344
9345         * 5qtaspri.ads: Change Linux to GNU/Linux.
9346         Add 2001 to copyright notice.
9347
9348         * 5vintman.ads: Change Linux to GNU/Linux.
9349         Fix header format.  Add 2001 to copyright notice.
9350
9351         * g-soccon.ads: Change Linux to GNU/Linux.
9352
9353         * g-trasym.ads: Change Linux to GNU/Linux.
9354         Add 2001 to copyright notice.
9355
9356         * memtrack.adb: Change Linux to GNU/Linux.
9357
9358         * s-intman.ads: Change Linux to GNU/Linux.
9359         Add 2001 to copyright notice.  Fix header format.
9360
9361         * s-stache.adb: Change Linux to GNU/Linux.
9362
9363         * adaint.c: Change Linux to GNU/Linux.
9364
9365         * cio.c: Change Linux to GNU/Linux.
9366
9367         * cstreams.c: Change Linux to GNU/Linux.
9368
9369         * init.c: Change Linux to GNU/Linux.
9370
9371         * gmem.c: Change Linux to GNU/Linux.
9372
9373         * tracebak.c: Change Linux to GNU/Linux.
9374
9375
9376 2001-10-02  Geert Bosch  <bosch@gnat.com>
9377
9378         * misc.c (insert_default_attributes): Add dummy version.