OSDN Git Service

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