OSDN Git Service

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